From 6655dba246bd164d953fe220a0e3d4eed85bb268 Mon Sep 17 00:00:00 2001 From: Sergey Belyashov Date: Thu, 2 Jan 2020 14:10:40 +0000 Subject: Add support for the GBZ80, Z180, and eZ80 variants of the Z80 architecure. Add an ELF based target for these as well. PR 25224 bfd * Makefile.am: Add z80-elf target support. * configure.ac: Likewise. * targets.c: Likewise. * config.bfd: Add z80-elf target support and new arches: ez80 and z180. * elf32-z80.c: New file. * archures.c: Add new z80 architectures: eZ80 and Z180. * coffcode.h: Likewise. * cpu-z80.c: Likewise. * bfd-in2.h: Likewise plus additional Z80 relocations. * coff-z80.c: Add new relocations for Z80 target and local label check. gas * config/tc-z80.c: Add new architectures: Z180 and eZ80. Add support for assembler code generated by SDCC. Add new relocation types. Add z80-elf target support. * config/tc-z80.h: Add z80-elf target support. Enable dollar local labels. Local labels starts from ".L". * testsuite/gas/all/fwdexp.d: Fix failure due to symbol conflict. * testsuite/gas/all/fwdexp.s: Likewise. * testsuite/gas/z80/suffix.d: Fix failure on ELF target. * testsuite/gas/z80/z80.exp: Add new tests * testsuite/gas/z80/dollar.d: New file. * testsuite/gas/z80/dollar.s: New file. * testsuite/gas/z80/ez80_adl_all.d: New file. * testsuite/gas/z80/ez80_adl_all.s: New file. * testsuite/gas/z80/ez80_adl_suf.d: New file. * testsuite/gas/z80/ez80_isuf.s: New file. * testsuite/gas/z80/ez80_z80_all.d: New file. * testsuite/gas/z80/ez80_z80_all.s: New file. * testsuite/gas/z80/ez80_z80_suf.d: New file. * testsuite/gas/z80/r800_extra.d: New file. * testsuite/gas/z80/r800_extra.s: New file. * testsuite/gas/z80/r800_ii8.d: New file. * testsuite/gas/z80/r800_z80_doc.d: New file. * testsuite/gas/z80/z180.d: New file. * testsuite/gas/z80/z180.s: New file. * testsuite/gas/z80/z180_z80_doc.d: New file. * testsuite/gas/z80/z80_doc.d: New file. * testsuite/gas/z80/z80_doc.s: New file. * testsuite/gas/z80/z80_ii8.d: New file. * testsuite/gas/z80/z80_ii8.s: New file. * testsuite/gas/z80/z80_in_f_c.d: New file. * testsuite/gas/z80/z80_in_f_c.s: New file. * testsuite/gas/z80/z80_op_ii_ld.d: New file. * testsuite/gas/z80/z80_op_ii_ld.s: New file. * testsuite/gas/z80/z80_out_c_0.d: New file. * testsuite/gas/z80/z80_out_c_0.s: New file. * testsuite/gas/z80/z80_reloc.d: New file. * testsuite/gas/z80/z80_reloc.s: New file. * testsuite/gas/z80/z80_sli.d: New file. * testsuite/gas/z80/z80_sli.s: New file. ld * Makefile.am: Add new target z80-elf * configure.tgt: Likewise. * emultempl/z80.em: Add support for eZ80 and Z180 architectures. * emulparams/elf32z80.sh: New file. * emultempl/z80elf.em: Likewise. * testsuite/ld-z80/arch_ez80_adl.d: Likewise. * testsuite/ld-z80/arch_ez80_z80.d: Likewise. * testsuite/ld-z80/arch_r800.d: Likewise. * testsuite/ld-z80/arch_z180.d: Likewise. * testsuite/ld-z80/arch_z80.d: Likewise. * testsuite/ld-z80/comb_arch_ez80_z80.d: Likewise. * testsuite/ld-z80/comb_arch_z180.d: Likewise. * testsuite/ld-z80/labels.s: Likewise. * testsuite/ld-z80/relocs.s: Likewise. * testsuite/ld-z80/relocs_b_ez80.d: Likewise. * testsuite/ld-z80/relocs_b_z80.d: Likewise. * testsuite/ld-z80/relocs_f_z80.d: Likewise. * testsuite/ld-z80/z80.exp: Likewise. opcodes * z80-dis.c: Add support for eZ80 and Z80 instructions. --- binutils/ChangeLog | 5 + binutils/po/binutils.pot | 3861 +++++++++++++++++++++++++--------------------- binutils/readelf.c | 29 + 3 files changed, 2110 insertions(+), 1785 deletions(-) (limited to 'binutils') diff --git a/binutils/ChangeLog b/binutils/ChangeLog index c78b42b..ecc4e1a 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,8 @@ +2020-01-02 Sergey Belyashov + + * readelf.c: Add support for new Z*) relocations and machine + types. + 2020-01-01 Alan Modra Update year range in copyright notice of all files. diff --git a/binutils/po/binutils.pot b/binutils/po/binutils.pot index 855ab8d..7f8c633 100644 --- a/binutils/po/binutils.pot +++ b/binutils/po/binutils.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: bug-binutils@gnu.org\n" -"POT-Creation-Date: 2019-01-19 16:39+0000\n" +"POT-Creation-Date: 2020-01-02 11:10+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -57,9 +57,9 @@ msgid "" "\n" msgstr "" -#: addr2line.c:109 ar.c:340 ar.c:377 coffdump.c:473 dlltool.c:3990 -#: dllwrap.c:518 elfedit.c:906 objcopy.c:666 objcopy.c:719 readelf.c:4474 -#: size.c:97 srconv.c:1706 strings.c:727 sysdump.c:648 windmc.c:227 +#: addr2line.c:109 ar.c:349 ar.c:386 coffdump.c:473 dlltool.c:3989 +#: dllwrap.c:518 elfedit.c:909 objcopy.c:691 objcopy.c:745 readelf.c:4554 +#: size.c:109 srconv.c:1706 strings.c:727 sysdump.c:648 windmc.c:227 #: windres.c:688 #, c-format msgid "Report bugs to %s\n" @@ -96,245 +96,251 @@ msgstr "" msgid "%s: cannot find section %s" msgstr "" -#: addr2line.c:448 ar.c:722 dlltool.c:3508 nm.c:1668 objcopy.c:5670 -#: objdump.c:4036 size.c:141 strings.c:291 windmc.c:960 windres.c:816 +#: addr2line.c:448 ar.c:747 dlltool.c:3507 nm.c:1710 objcopy.c:5944 +#: objdump.c:4318 size.c:153 strings.c:291 windmc.c:960 windres.c:816 msgid "fatal error: libbfd ABI mismatch" msgstr "" -#: addr2line.c:475 nm.c:1694 objdump.c:4083 +#: addr2line.c:475 nm.c:1736 objdump.c:4365 #, c-format msgid "unknown demangling style `%s'" msgstr "" -#: ar.c:260 +#: ar.c:268 #, c-format msgid "no entry %s in archive\n" msgstr "" -#: ar.c:274 +#: ar.c:282 #, c-format msgid "" "Usage: %s [emulation options] [-]{dmpqrstx}[abcDfilMNoOPsSTuvV] [--plugin " "] [member-name] [count] archive-file file...\n" msgstr "" -#: ar.c:280 +#: ar.c:288 #, c-format msgid "" "Usage: %s [emulation options] [-]{dmpqrstx}[abcDfilMNoOPsSTuvV] [member-" "name] [count] archive-file file...\n" msgstr "" -#: ar.c:288 +#: ar.c:296 #, c-format msgid " %s -M [ - read options from \n" msgstr "" -#: ar.c:329 +#: ar.c:337 #, c-format msgid " --target=BFDNAME - specify the target object format as BFDNAME\n" msgstr "" -#: ar.c:331 +#: ar.c:338 +#, c-format +msgid "" +" --output=DIRNAME - specify the output directory for extraction operations\n" +msgstr "" + +#: ar.c:340 #, c-format msgid " optional:\n" msgstr "" -#: ar.c:332 +#: ar.c:341 #, c-format msgid " --plugin

- load the specified plugin\n" msgstr "" -#: ar.c:353 +#: ar.c:362 #, c-format msgid "Usage: %s [options] archive\n" msgstr "" -#: ar.c:354 +#: ar.c:363 #, c-format msgid " Generate an index to speed access to archives\n" msgstr "" -#: ar.c:355 +#: ar.c:364 #, c-format msgid "" " The options are:\n" " @ Read options from \n" msgstr "" -#: ar.c:358 +#: ar.c:367 #, c-format msgid " --plugin Load the specified plugin\n" msgstr "" -#: ar.c:362 +#: ar.c:371 #, c-format msgid "" " -D Use zero for symbol map timestamp (default)\n" " -U Use an actual symbol map timestamp\n" msgstr "" -#: ar.c:366 +#: ar.c:375 #, c-format msgid "" " -D Use zero for symbol map timestamp\n" " -U Use actual symbol map timestamp (default)\n" msgstr "" -#: ar.c:369 +#: ar.c:378 #, c-format msgid "" " -t Update the archive's symbol map timestamp\n" @@ -342,101 +348,101 @@ msgid "" " -v --version Print version information\n" msgstr "" -#: ar.c:493 +#: ar.c:503 msgid "two different operation options specified" msgstr "" -#: ar.c:587 ar.c:647 nm.c:1781 +#: ar.c:597 ar.c:672 nm.c:1823 #, c-format msgid "sorry - this program has been built without plugin support\n" msgstr "" -#: ar.c:778 +#: ar.c:803 msgid "no operation specified" msgstr "" -#: ar.c:781 +#: ar.c:806 msgid "`u' is only meaningful with the `r' option." msgstr "" -#: ar.c:784 +#: ar.c:809 msgid "`u' is not meaningful with the `D' option." msgstr "" -#: ar.c:787 +#: ar.c:812 msgid "`u' modifier ignored since `D' is the default (see `U')" msgstr "" -#: ar.c:796 +#: ar.c:821 msgid "missing position arg." msgstr "" -#: ar.c:802 +#: ar.c:827 msgid "`N' is only meaningful with the `x' and `d' options." msgstr "" -#: ar.c:804 +#: ar.c:829 msgid "`N' missing value." msgstr "" -#: ar.c:807 +#: ar.c:832 msgid "Value for `N' must be positive." msgstr "" -#: ar.c:823 +#: ar.c:848 msgid "`x' cannot be used on thin archives." msgstr "" -#: ar.c:870 +#: ar.c:895 #, c-format msgid "internal error -- this option not implemented" msgstr "" -#: ar.c:939 +#: ar.c:964 #, c-format msgid "creating %s" msgstr "" -#: ar.c:970 +#: ar.c:995 #, c-format msgid "Cannot convert existing library %s to thin format" msgstr "" -#: ar.c:976 +#: ar.c:1001 #, c-format msgid "Cannot convert existing thin library %s to normal format" msgstr "" -#: ar.c:1008 ar.c:1072 ar.c:1402 objcopy.c:3357 +#: ar.c:1033 ar.c:1130 ar.c:1446 objcopy.c:3544 #, c-format msgid "internal stat error on %s" msgstr "" -#: ar.c:1027 ar.c:1105 +#: ar.c:1052 ar.c:1156 #, c-format msgid "%s is not a valid archive" msgstr "" -#: ar.c:1064 objcopy.c:3319 +#: ar.c:1080 #, c-format -msgid "illegal pathname found in archive member: %s" +msgid "illegal output pathname for archive member: %s, using '%s' instead" msgstr "" -#: ar.c:1163 +#: ar.c:1204 msgid "could not create temporary file whilst writing archive" msgstr "" -#: ar.c:1307 +#: ar.c:1351 #, c-format msgid "No member named `%s'\n" msgstr "" -#: ar.c:1357 +#: ar.c:1401 #, c-format msgid "no entry %s in archive %s!" msgstr "" -#: ar.c:1496 +#: ar.c:1540 #, c-format msgid "%s: no archive map to update" msgstr "" @@ -451,47 +457,52 @@ msgstr "" msgid "Can't open file %s\n" msgstr "" -#: arsup.c:164 +#: arsup.c:160 +#, c-format +msgid "%s: Can't allocate memory for temp name (%s)\n" +msgstr "" + +#: arsup.c:171 #, c-format msgid "%s: Can't open output archive %s\n" msgstr "" -#: arsup.c:181 +#: arsup.c:188 #, c-format msgid "%s: Can't open input archive %s\n" msgstr "" -#: arsup.c:190 +#: arsup.c:197 #, c-format msgid "%s: file %s is not an archive\n" msgstr "" -#: arsup.c:230 +#: arsup.c:237 #, c-format msgid "%s: no output archive specified yet\n" msgstr "" -#: arsup.c:250 arsup.c:293 arsup.c:335 arsup.c:358 arsup.c:424 +#: arsup.c:257 arsup.c:300 arsup.c:342 arsup.c:365 arsup.c:431 #, c-format msgid "%s: no open output archive\n" msgstr "" -#: arsup.c:266 arsup.c:379 arsup.c:405 +#: arsup.c:273 arsup.c:386 arsup.c:412 #, c-format msgid "%s: can't open file %s\n" msgstr "" -#: arsup.c:320 arsup.c:401 arsup.c:482 +#: arsup.c:327 arsup.c:408 arsup.c:489 #, c-format msgid "%s: can't find module file %s\n" msgstr "" -#: arsup.c:433 +#: arsup.c:440 #, c-format msgid "Current open archive is %s\n" msgstr "" -#: arsup.c:457 +#: arsup.c:464 #, c-format msgid "%s: no open archive\n" msgstr "" @@ -507,91 +518,95 @@ msgstr "" msgid " emulation options: \n" msgstr "" -#: bucomm.c:156 +#: bucomm.c:50 bucomm.c:84 +msgid "cause of error unknown" +msgstr "" + +#: bucomm.c:164 #, c-format msgid "can't set BFD default target to `%s': %s" msgstr "" -#: bucomm.c:168 +#: bucomm.c:176 #, c-format msgid "%s: Matching formats:" msgstr "" -#: bucomm.c:183 +#: bucomm.c:191 #, c-format msgid "Supported targets:" msgstr "" -#: bucomm.c:185 +#: bucomm.c:193 #, c-format msgid "%s: supported targets:" msgstr "" -#: bucomm.c:203 +#: bucomm.c:211 #, c-format msgid "Supported architectures:" msgstr "" -#: bucomm.c:205 +#: bucomm.c:213 #, c-format msgid "%s: supported architectures:" msgstr "" -#: bucomm.c:218 +#: bucomm.c:226 msgid "big endian" msgstr "" -#: bucomm.c:219 +#: bucomm.c:227 msgid "little endian" msgstr "" -#: bucomm.c:220 +#: bucomm.c:228 msgid "endianness unknown" msgstr "" -#: bucomm.c:267 +#: bucomm.c:275 #, c-format msgid "" "%s\n" " (header %s, data %s)\n" msgstr "" -#: bucomm.c:416 +#: bucomm.c:424 #, c-format msgid "BFD header file version %s\n" msgstr "" -#: bucomm.c:446 +#: bucomm.c:454 #, c-format msgid "