diff options
author | Nick Clifton <nickc@redhat.com> | 2001-04-27 17:12:18 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2001-04-27 17:12:18 +0000 |
commit | 87748b32271dca951c949543fc14cb1ef2b5c992 (patch) | |
tree | 47bd23066af753d8b9e6e46d28f2eb9917386f7a /bfd | |
parent | cc3f9cbbf767f6d2e07cf46508fc510f07042bc9 (diff) | |
download | binutils-gdb-87748b32271dca951c949543fc14cb1ef2b5c992.tar.gz |
Add support for arm-vxworks target
Diffstat (limited to 'bfd')
-rw-r--r-- | bfd/ChangeLog | 6 | ||||
-rw-r--r-- | bfd/coff-arm.c | 18 | ||||
-rw-r--r-- | bfd/config.bfd | 6 | ||||
-rw-r--r-- | bfd/po/bfd.pot | 64 |
4 files changed, 61 insertions, 33 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 37ffb671e34..4e3860d5692 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,9 @@ +2001-04-27 Sean McNeil <sean@mcneil.com> + + * config.bfd: Add arm-vxworks target. + * coff-arm (coff_arm_relocate_section): Add in symbol value to + addend (fro VXworks targets). + 2001-04-26 H.J. Lu <hjl@gnu.org> * elf32-i386.c (elf_i386_check_relocs): Verify if r_symndx is diff --git a/bfd/coff-arm.c b/bfd/coff-arm.c index ae7ee75a56d..8bb4e6c4940 100644 --- a/bfd/coff-arm.c +++ b/bfd/coff-arm.c @@ -1244,12 +1244,18 @@ coff_arm_relocate_section (output_bfd, info, input_bfd, input_section, { if (info->relocateable) continue; -#if 0 /* We must not ignore the symbol value. If the symbol is - within the same section, the relocation should have already - been fixed, but if it is not, we'll be handed a reloc into - the beginning of the symbol's section, so we must not cancel - out the symbol's value, otherwise we'll be adding it in - twice. */ + /* FIXME - it is not clear which targets need this next test + and which do not. It is known that it is needed for the + VXworks target (hence the #ifdef), but it is also known + that it was supressed for other (arm) targets. This ought + to be sorted out one day. */ +#ifdef VXWORKS + /* We must not ignore the symbol value. If the symbol is + within the same section, the relocation should have already + been fixed, but if it is not, we'll be handed a reloc into + the beginning of the symbol's section, so we must not cancel + out the symbol's value, otherwise we'll be adding it in + twice. */ if (sym != NULL && sym->n_scnum != 0) addend += sym->n_value; #endif diff --git a/bfd/config.bfd b/bfd/config.bfd index 168b8392ca4..70fd06c6470 100644 --- a/bfd/config.bfd +++ b/bfd/config.bfd @@ -140,6 +140,12 @@ case "${targ}" in targ_defvec=aout_arm_big_vec targ_selvecs=aout_arm_little_vec ;; + arm-*-vxworks*) + targ_defvec=armcoff_little_vec + targ_selvecs=armcoff_big_vec + targ_underscore=yes + targ_cflags=-DVXWORKS + ;; arm-*-coff) targ_defvec=armcoff_little_vec targ_selvecs=armcoff_big_vec diff --git a/bfd/po/bfd.pot b/bfd/po/bfd.pot index 6bacc5ce700..8a8680a97a7 100644 --- a/bfd/po/bfd.pot +++ b/bfd/po/bfd.pot @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" -"POT-Creation-Date: 2001-04-25 20:38+0100\n" +"POT-Creation-Date: 2001-04-27 18:06+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -209,119 +209,119 @@ msgstr "" msgid "%s: unable to find ARM glue '%s' for `%s'" msgstr "" -#: coff-arm.c:1336 coff-arm.c:1431 elf32-arm.h:841 elf32-arm.h:946 +#: coff-arm.c:1342 coff-arm.c:1437 elf32-arm.h:841 elf32-arm.h:946 #, c-format msgid "%s(%s): warning: interworking not enabled." msgstr "" -#: coff-arm.c:1340 elf32-arm.h:949 +#: coff-arm.c:1346 elf32-arm.h:949 #, c-format msgid " first occurrence: %s: arm call to thumb" msgstr "" -#: coff-arm.c:1435 elf32-arm.h:844 +#: coff-arm.c:1441 elf32-arm.h:844 #, c-format msgid " first occurrence: %s: thumb call to arm" msgstr "" -#: coff-arm.c:1438 +#: coff-arm.c:1444 msgid " consider relinking with --support-old-code enabled" msgstr "" -#: coff-arm.c:1726 coff-tic80.c:682 cofflink.c:2992 +#: coff-arm.c:1732 coff-tic80.c:682 cofflink.c:2992 #, c-format msgid "%s: bad reloc address 0x%lx in section `%s'" msgstr "" -#: coff-arm.c:2063 +#: coff-arm.c:2069 #, c-format msgid "%s: illegal symbol index in reloc: %d" msgstr "" -#: coff-arm.c:2191 +#: coff-arm.c:2197 #, c-format msgid "%s: ERROR: compiled for APCS-%d whereas target %s uses APCS-%d" msgstr "" -#: coff-arm.c:2206 +#: coff-arm.c:2212 #, c-format msgid "" "%s: ERROR: passes floats in float registers whereas target %s uses integer " "registers" msgstr "" -#: coff-arm.c:2209 +#: coff-arm.c:2215 #, c-format msgid "" "%s: ERROR: passes floats in integer registers whereas target %s uses float " "registers" msgstr "" -#: coff-arm.c:2224 +#: coff-arm.c:2230 #, c-format msgid "" "%s: ERROR: compiled as position independent code, whereas target %s is " "absolute position" msgstr "" -#: coff-arm.c:2227 +#: coff-arm.c:2233 #, c-format msgid "" "%s: ERROR: compiled as absolute position code, whereas target %s is position " "independent" msgstr "" -#: coff-arm.c:2256 +#: coff-arm.c:2262 #, c-format msgid "Warning: input file %s supports interworking, whereas %s does not." msgstr "" -#: coff-arm.c:2259 +#: coff-arm.c:2265 #, c-format msgid "Warning: input file %s does not support interworking, whereas %s does." msgstr "" -#: coff-arm.c:2286 +#: coff-arm.c:2292 #, c-format msgid "private flags = %x:" msgstr "" -#: coff-arm.c:2294 elf32-arm.h:2222 +#: coff-arm.c:2300 elf32-arm.h:2222 msgid " [floats passed in float registers]" msgstr "" -#: coff-arm.c:2296 +#: coff-arm.c:2302 msgid " [floats passed in integer registers]" msgstr "" -#: coff-arm.c:2299 elf32-arm.h:2225 +#: coff-arm.c:2305 elf32-arm.h:2225 msgid " [position independent]" msgstr "" -#: coff-arm.c:2301 +#: coff-arm.c:2307 msgid " [absolute position]" msgstr "" -#: coff-arm.c:2305 +#: coff-arm.c:2311 msgid " [interworking flag not initialised]" msgstr "" -#: coff-arm.c:2307 +#: coff-arm.c:2313 msgid " [interworking supported]" msgstr "" -#: coff-arm.c:2309 +#: coff-arm.c:2315 msgid " [interworking not supported]" msgstr "" -#: coff-arm.c:2357 +#: coff-arm.c:2363 #, c-format msgid "" "Warning: Not setting interworking flag of %s, since it has already been " "specified as non-interworking" msgstr "" -#: coff-arm.c:2361 +#: coff-arm.c:2367 #, c-format msgid "Warning: Clearing the interworking flag of %s due to outside request" msgstr "" @@ -554,7 +554,7 @@ msgstr "" msgid "%s: Warning: Thumb BLX instruction targets thumb function '%s'." msgstr "" -#: elf-hppa.h:1369 elf-hppa.h:1402 elf32-arm.h:1865 elf32-i386.c:1442 +#: elf-hppa.h:1369 elf-hppa.h:1402 elf32-arm.h:1865 elf32-i386.c:1456 #: elf32-ppc.c:3093 elf32-s390.c:1442 elf32-sh.c:2997 elf64-s390.c:1431 #: elf64-x86-64.c:1290 #, c-format @@ -885,12 +885,22 @@ msgstr "" msgid "%s: invalid relocation type %d" msgstr "" -#: elf32-i386.c:681 elf32-i386.c:1649 +#: elf32-i386.c:507 +#, c-format +msgid "%s(%s): bad symbol index: %d" +msgstr "" + +#: elf32-i386.c:512 +#, c-format +msgid "%s: bad symbol index: %d" +msgstr "" + +#: elf32-i386.c:695 elf32-i386.c:1663 #, c-format msgid "%s(%s): bad relocation section name `%s'" msgstr "" -#: elf32-i386.c:686 elf32-i386.c:1654 +#: elf32-i386.c:700 elf32-i386.c:1668 #, c-format msgid "%s: bad relocation section name `%s'" msgstr "" |