return bfd_reloc_continue;
}
-#define TARGET_UNDERSCORE '_'
+/* #define TARGET_UNDERSCORE '_' */
+#define TARGET_UNDERSCORE '\0'
#ifndef PCRELOFFSET
#define PCRELOFFSET true
/* The set of global variables that mark the total size of each kind
of glue required. */
-long int global_thumb_glue_size = 0;
-long int global_arm_glue_size = 0;
+static long int global_thumb_glue_size = 0;
+static long int global_arm_glue_size = 0;
-bfd* bfd_of_glue_owner = 0;
+static bfd * bfd_of_glue_owner = 0;
/* some typedefs for holding instructions */
typedef unsigned long int insn32;
return true;
}
+#ifndef COFF_WITH_PE
boolean
arm_allocate_interworking_sections (info)
struct bfd_link_info *info;
return true;
}
+#endif /* not COFF_WITH_PE */
#define coff_relocate_section coff_arm_relocate_section
return true;
}
+#ifndef COFF_WITH_PE
/* Called when merging the private data areas of two BFDs.
This is important as it allows us to detect if we are
if (ibfd == obfd)
return true;
- /* If the two formats are different we cannot merge anything. */
+ /* If the two formats are different we cannot merge anything.
+ This is not an error, since it is permissable to change the
+ input and output formats. */
if (ibfd->xvec != obfd->xvec)
- {
- bfd_set_error (bfd_error_wrong_format);
- return false;
- }
-
+ return true;
+
/* Verify that the APCS is the same for the two BFDs */
if (APCS_SET (ibfd))
{
BFD_ASSERT (abfd != NULL && ptr != NULL)
- fprintf (file, "private flags = %x", coff_data( abfd )->flags);
+ fprintf (file, "private flags = %x", coff_data (abfd)->flags);
if (APCS_SET (abfd))
fprintf (file, ": [APCS-%d] [floats passed in %s registers] [%s]",
return true;
}
+#endif /* not COFF_WITH_PE */
/* Note: the definitions here of LOCAL_LABEL_PREFIX and USER_LABEL_PREIFX
*must* match the definitions on gcc/config/arm/semi.h. */
#define LOCAL_LABEL_PREFIX "."
-#define USER_LABEL_PREFIX "_"
+#define USER_LABEL_PREFIX ""
static boolean
coff_arm_is_local_label_name (abfd, name)
#define coff_bfd_is_local_label_name coff_arm_is_local_label_name
#define coff_adjust_symndx coff_arm_adjust_symndx
+#ifndef COFF_WITH_PE
#define coff_bfd_final_link coff_arm_bfd_final_link
#define coff_bfd_merge_private_bfd_data coff_arm_bfd_merge_private_bfd_data
#define coff_bfd_print_private_bfd_data coff_arm_bfd_print_private_bfd_data
#define coff_bfd_set_private_flags coff_arm_bfd_set_private_flags
#define coff_bfd_copy_private_bfd_data coff_arm_bfd_copy_private_bfd_data
+#endif
#include "coffcode.h"
#define ARM_HACKS
-
/* Do the final link step. */
-boolean
+static boolean
coff_arm_bfd_final_link (abfd, info)
bfd *abfd;
struct bfd_link_info *info;
{
if (! _bfd_coff_link_input_bfd (&finfo, last_one))
goto error_return;
+ last_one->output_has_begun = true;
}
- last_one->output_has_begun = true;
}
#endif