diff options
author | Sergey Belyashov <sergey.belyashov@gmail.com> | 2020-01-02 14:10:40 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2020-01-02 14:14:59 +0000 |
commit | 6655dba246bd164d953fe220a0e3d4eed85bb268 (patch) | |
tree | 423258b5dadb447dc649e71c6ce48aaeed8ba385 /gas | |
parent | 0db131fb835e4c4f6a024e86743467e7e01c965e (diff) | |
download | gdb-6655dba246bd164d953fe220a0e3d4eed85bb268.zip gdb-6655dba246bd164d953fe220a0e3d4eed85bb268.tar.gz gdb-6655dba246bd164d953fe220a0e3d4eed85bb268.tar.bz2 |
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.
Diffstat (limited to 'gas')
69 files changed, 15547 insertions, 3430 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index 198f787..86134cb 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,62 @@ +2020-01-02 Sergey Belyashov <sergey.belyashov@gmail.com> + + * 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". + * NEWS: Mention the new support. + * testsuite/gas/all/fwdexp.d: Fix failure due to symbol conflict. + * testsuite/gas/all/fwdexp.s: Likewise. + * testsuite/gas/all/cond.l: Likewise. + * testsuite/gas/all/cond.s: Likewise. + * testsuite/gas/all/fwdexp.d: Likewise. + * testsuite/gas/all/fwdexp.s: Likewise. + * testsuite/gas/elf/section2.e-mips: Likewise. + * testsuite/gas/elf/section2.l: Likewise. + * testsuite/gas/elf/section2.s: Likewise. + * testsuite/gas/macros/app1.d: Likewise. + * testsuite/gas/macros/app1.s: Likewise. + * testsuite/gas/macros/app2.d: Likewise. + * testsuite/gas/macros/app2.s: Likewise. + * testsuite/gas/macros/app3.d: Likewise. + * testsuite/gas/macros/app3.s: Likewise. + * testsuite/gas/macros/app4.d: Likewise. + * testsuite/gas/macros/app4.s: Likewise. + * testsuite/gas/macros/app4b.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. + 2020-01-02 Szabolcs Nagy <szabolcs.nagy@arm.com> * config/tc-arm.c (parse_reg_list): Use REG_TYPE_RN instead of @@ -1,5 +1,15 @@ -*- text -*- +* Add support for Zilog eZ80 and Zilog Z180 CPUs. + +* Add support for z80-elf target. + +* Add support for relocation of each byte or word of multibyte value to Z80 + targets (just use right shift to 0, 8, 16, or 24 bits or AND operation + with 0xff/0xffff mask): ld a, label >> 16 \ ld hl, label & 0xffff + +* Add SDCC support for Z80 targets. + Changes in 2.33: * Add support for the Arm Scalable Vector Extension version 2 (SVE2) diff --git a/gas/config/tc-z80.c b/gas/config/tc-z80.c index f2f7b1d..a93b579 100644 --- a/gas/config/tc-z80.c +++ b/gas/config/tc-z80.c @@ -1,4 +1,4 @@ -/* tc-z80.c -- Assemble code for the Zilog Z80 and ASCII R800 +/* tc-z80.c -- Assemble code for the Zilog Z80, Z180, EZ80 and ASCII R800 Copyright (C) 2005-2020 Free Software Foundation, Inc. Contributed by Arnold Metselaar <arnold_m@operamail.com> @@ -22,6 +22,7 @@ #include "as.h" #include "safe-ctype.h" #include "subsegs.h" +#include "elf/z80.h" /* Exported constants. */ const char comment_chars[] = ";\0"; @@ -37,23 +38,63 @@ enum options { OPTION_MACH_Z80 = OPTION_MD_BASE, OPTION_MACH_R800, + OPTION_MACH_Z180, + OPTION_MACH_EZ80_Z80, + OPTION_MACH_EZ80_ADL, + OPTION_MACH_GBZ80, + OPTION_MACH_INST, + OPTION_MACH_NO_INST, OPTION_MACH_IUD, OPTION_MACH_WUD, OPTION_MACH_FUD, OPTION_MACH_IUP, OPTION_MACH_WUP, - OPTION_MACH_FUP + OPTION_MACH_FUP, + OPTION_FLOAT_FORMAT, + OPTION_DOUBLE_FORMAT, + OPTION_COMPAT_LL_PREFIX, + OPTION_COMPAT_COLONLESS, + OPTION_COMPAT_SDCC }; -#define INS_Z80 1 -#define INS_UNDOC 2 -#define INS_UNPORT 4 -#define INS_R800 8 +#define INS_Z80 (1 << 0) +#define INS_R800 (1 << 1) +#define INS_GBZ80 (1 << 2) +#define INS_Z180 (1 << 3) +#define INS_EZ80 (1 << 4) +#define INS_MARCH_MASK 0xffff + +#define INS_IDX_HALF (1 << 16) +#define INS_IN_F_C (1 << 17) +#define INS_OUT_C_0 (1 << 18) +#define INS_SLI (1 << 19) +#define INS_ROT_II_LD (1 << 20) /* instructions like SLA (ii+d),r; which is: LD r,(ii+d); SLA r; LD (ii+d),r */ +#define INS_TUNE_MASK 0xffff0000 + +#define INS_NOT_GBZ80 (INS_Z80 | INS_Z180 | INS_R800 | INS_EZ80) + +#define INS_ALL 0 +#define INS_UNDOC (INS_IDX_HALF | INS_IN_F_C) +#define INS_UNPORT (INS_OUT_C_0 | INS_SLI | INS_ROT_II_LD) struct option md_longopts[] = { { "z80", no_argument, NULL, OPTION_MACH_Z80}, { "r800", no_argument, NULL, OPTION_MACH_R800}, + { "z180", no_argument, NULL, OPTION_MACH_Z180}, + { "ez80", no_argument, NULL, OPTION_MACH_EZ80_Z80}, + { "ez80-adl", no_argument, NULL, OPTION_MACH_EZ80_ADL}, + { "float", required_argument, NULL, OPTION_FLOAT_FORMAT}, + { "double", required_argument, NULL, OPTION_DOUBLE_FORMAT}, + { "strict", no_argument, NULL, OPTION_MACH_FUD}, + { "full", no_argument, NULL, OPTION_MACH_IUP}, + { "with-inst", required_argument, NULL, OPTION_MACH_INST}, + { "Wnins", required_argument, NULL, OPTION_MACH_INST}, + { "without-inst", required_argument, NULL, OPTION_MACH_NO_INST}, + { "local-prefix", required_argument, NULL, OPTION_COMPAT_LL_PREFIX}, + { "colonless", no_argument, NULL, OPTION_COMPAT_COLONLESS}, + { "sdcc", no_argument, NULL, OPTION_COMPAT_SDCC}, + { "Fins", required_argument, NULL, OPTION_MACH_NO_INST}, { "ignore-undocumented-instructions", no_argument, NULL, OPTION_MACH_IUD }, { "Wnud", no_argument, NULL, OPTION_MACH_IUD }, { "warn-undocumented-instructions", no_argument, NULL, OPTION_MACH_WUD }, @@ -76,46 +117,169 @@ extern int coff_flags; /* Instruction classes that silently assembled. */ static int ins_ok = INS_Z80 | INS_UNDOC; /* Instruction classes that generate errors. */ -static int ins_err = INS_R800; -/* Instruction classes actually used, determines machine type. */ -static int ins_used = INS_Z80; +static int ins_err = ~(INS_Z80 | INS_UNDOC); +/* eZ80 CPU mode (ADL or Z80) */ +static int cpu_mode = 0; /* 0 - Z80, 1 - ADL */ +/* accept SDCC specific instruction encoding */ +static int sdcc_compat = 0; +/* accept colonless labels */ +static int colonless_labels = 0; +/* local label prefix (NULL - default) */ +static const char *local_label_prefix = NULL; +/* floating point support */ +typedef const char *(*str_to_float_t)(char *litP, int *sizeP); +static str_to_float_t str_to_float; +static str_to_float_t str_to_double; + +/* mode of current instruction */ +#define INST_MODE_S 0 /* short data mode */ +#define INST_MODE_IS 0 /* short instruction mode */ +#define INST_MODE_L 2 /* long data mode */ +#define INST_MODE_IL 1 /* long instruction mode */ +#define INST_MODE_FORCED 4 /* CPU mode changed by instruction suffix*/ +static char inst_mode; + +static int +setup_instruction (const char *inst, int *add, int *sub) +{ + int n; + if (!strcmp (inst, "idx-reg-halves")) + n = INS_IDX_HALF; + else if (!strcmp (inst, "sli")) + n = INS_SLI; + else if (!strcmp (inst, "op-ii-ld")) + n = INS_ROT_II_LD; + else if (!strcmp (inst, "in-f-c")) + n = INS_IN_F_C; + else if (!strcmp (inst, "out-c-0")) + n = INS_OUT_C_0; + else + return 0; + *add |= n; + *sub &= ~n; + return 1; +} + +static const char * +str_to_zeda32 (char *litP, int *sizeP); +static const char * +str_to_float48 (char *litP, int *sizeP); + +static str_to_float_t +get_str_to_float (const char *arg) +{ + if (strcasecmp(arg, "zeda32") == 0) + return str_to_zeda32; + + if (strcasecmp(arg, "math48") == 0) + return str_to_float48; + + if (strcasecmp(arg, "ieee754") != 0) + as_fatal (_("invalid floating point numbers type `%s'"), arg); + return NULL; +} + +static int +setup_instruction_list (const char *list, int *add, int *sub) +{ + char buf[16]; + const char *b; + const char *e; + int sz; + int res = 0; + for (b = list; *b != '\0';) + { + e = strchr (b, ','); + if (e == NULL) + sz = strlen (b); + else + sz = e - b; + if (sz == 0 || sz >= (int)sizeof (buf)) + { + as_bad (_("invalid INST in command line: %s"), b); + return 0; + } + memcpy (buf, b, sz); + buf[sz] = '\0'; + if (setup_instruction (buf, add, sub)) + res++; + else + { + as_bad (_("invalid INST in command line: %s"), buf); + return 0; + } + b = &b[sz]; + if (*b == ',') + ++b; + } + return res; +} int -md_parse_option (int c, const char* arg ATTRIBUTE_UNUSED) +md_parse_option (int c, const char* arg) { switch (c) { default: return 0; case OPTION_MACH_Z80: - ins_ok &= ~INS_R800; - ins_err |= INS_R800; + ins_ok = (ins_ok & INS_TUNE_MASK) | INS_Z80; + ins_err = (ins_err & INS_MARCH_MASK) | (~INS_Z80 & INS_MARCH_MASK); break; case OPTION_MACH_R800: - ins_ok = INS_Z80 | INS_UNDOC | INS_R800; + ins_ok = INS_R800 | INS_IDX_HALF; ins_err = INS_UNPORT; break; - case OPTION_MACH_IUD: - ins_ok |= INS_UNDOC; - ins_err &= ~INS_UNDOC; + case OPTION_MACH_Z180: + ins_ok = INS_Z180; + ins_err = INS_UNDOC | INS_UNPORT; break; - case OPTION_MACH_IUP: - ins_ok |= INS_UNDOC | INS_UNPORT; - ins_err &= ~(INS_UNDOC | INS_UNPORT); + case OPTION_MACH_EZ80_Z80: + ins_ok = INS_EZ80; + ins_err = (INS_UNDOC | INS_UNPORT) & ~INS_IDX_HALF; + cpu_mode = 0; + break; + case OPTION_MACH_EZ80_ADL: + ins_ok = INS_EZ80; + ins_err = (INS_UNDOC | INS_UNPORT) & ~INS_IDX_HALF; + cpu_mode = 1; + break; + case OPTION_MACH_GBZ80: + ins_ok = INS_GBZ80; + ins_err = INS_UNDOC | INS_UNPORT; + break; + case OPTION_FLOAT_FORMAT: + str_to_float = get_str_to_float (arg); + break; + case OPTION_DOUBLE_FORMAT: + str_to_double = get_str_to_float (arg); + break; + case OPTION_MACH_INST: + if ((ins_ok & INS_GBZ80) == 0) + return setup_instruction_list(arg, & ins_ok, & ins_err); + break; + case OPTION_MACH_NO_INST: + if ((ins_ok & INS_GBZ80) == 0) + return setup_instruction_list(arg, & ins_err, & ins_ok); break; case OPTION_MACH_WUD: - if ((ins_ok & INS_R800) == 0) - { - ins_ok &= ~(INS_UNDOC|INS_UNPORT); - ins_err &= ~INS_UNDOC; - } + case OPTION_MACH_IUD: + if ((ins_ok & INS_GBZ80) == 0) + { + ins_ok |= INS_UNDOC; + ins_err &= ~INS_UNDOC; + } break; case OPTION_MACH_WUP: - ins_ok &= ~INS_UNPORT; - ins_err &= ~(INS_UNDOC|INS_UNPORT); + case OPTION_MACH_IUP: + if ((ins_ok & INS_GBZ80) == 0) + { + ins_ok |= INS_UNDOC | INS_UNPORT; + ins_err &= ~(INS_UNDOC | INS_UNPORT); + } break; case OPTION_MACH_FUD: - if ((ins_ok & INS_R800) == 0) + if ((ins_ok & (INS_R800 | INS_GBZ80)) == 0) { ins_ok &= (INS_UNDOC | INS_UNPORT); ins_err |= INS_UNDOC | INS_UNPORT; @@ -125,6 +289,16 @@ md_parse_option (int c, const char* arg ATTRIBUTE_UNUSED) ins_ok &= ~INS_UNPORT; ins_err |= INS_UNPORT; break; + case OPTION_COMPAT_LL_PREFIX: + local_label_prefix = (arg && *arg) ? arg : NULL; + break; + case OPTION_COMPAT_SDCC: + sdcc_compat = 1; + local_label_prefix = "_"; + break; + case OPTION_COMPAT_COLONLESS: + colonless_labels = 1; + break; } return 1; @@ -134,28 +308,52 @@ void md_show_usage (FILE * f) { fprintf (f, "\n\ -CPU model/instruction set options:\n\ +CPU model options:\n\ + -z80\t\t\t assemble for Z80\n\ + -r800\t\t\t assemble for R800\n\ + -z180\t\t\t assemble for Z180\n\ + -ez80\t\t\t assemble for eZ80 in Z80 mode by default\n\ + -ez80-adl\t\t assemble for eZ80 in ADL mode by default\n\ +\n\ +Compatibility options:\n\ + -local-prefix=TEXT\t treat labels prefixed by TEXT as local\n\ + -colonless\t\t permit colonless labels\n\ + -sdcc\t\t\t accept SDCC specific instruction syntax\n\ + -float=FORMAT\t\t set floating point numbers format\n\ + -double=FORMAT\t\t set floating point numbers format\n\ +Where FORMAT one of:\n\ + ieee754\t\t IEEE754 compatible\n\ + zeda32\t\t\t Zeda z80float library 32 bit format\n\ + math48\t\t 48 bit format from Math48 library\n\ +\n\ +Support for known undocumented instructions:\n\ + -strict\t\t assemble only documented instructions\n\ + -full\t\t\t assemble all undocumented instructions\n\ + -with-inst=INST[,...]\n\ + -Wnins INST[,...]\t assemble specified instruction(s)\n\ + -without-inst=INST[,...]\n\ + -Fins INST[,...]\t do not assemble specified instruction(s)\n\ +Where INST is one of:\n\ + idx-reg-halves\t instructions with halves of index registers\n\ + sli\t\t\t instruction SLI/SLL\n\ + op-ii-ld\t\t instructions like SLA (II+dd),R (opcodes DD/FD CB dd xx)\n\ + in-f-c\t\t instruction IN F,(C)\n\ + out-c-0\t\t instruction OUT (C),0\n\ \n\ - -z80\t\t assemble for Z80\n\ +Obsolete options:\n\ -ignore-undocumented-instructions\n\ - -Wnud\n\ -\tsilently assemble undocumented Z80-instructions that work on R800\n\ + -Wnud\t\t\t silently assemble undocumented Z80-instructions that work on R800\n\ -ignore-unportable-instructions\n\ - -Wnup\n\ -\tsilently assemble all undocumented Z80-instructions\n\ + -Wnup\t\t\t silently assemble all undocumented Z80-instructions\n\ -warn-undocumented-instructions\n\ - -Wud\n\ -\tissue warnings for undocumented Z80-instructions that work on R800\n\ + -Wud\t\t\t issue warnings for undocumented Z80-instructions that work on R800\n\ -warn-unportable-instructions\n\ - -Wup\n\ -\tissue warnings for other undocumented Z80-instructions\n\ + -Wup\t\t\t issue warnings for other undocumented Z80-instructions\n\ -forbid-undocumented-instructions\n\ - -Fud\n\ -\ttreat all undocumented z80-instructions as errors\n\ + -Fud\t\t\t treat all undocumented Z80-instructions as errors\n\ -forbid-unportable-instructions\n\ - -Fup\n\ -\ttreat undocumented z80-instructions that do not work on R800 as errors\n\ - -r800\t assemble for R800\n\n\ + -Fup\t\t\t treat undocumented Z80-instructions that do not work on R800 as errors\n\ +\n\ Default: -z80 -ignore-undocumented-instructions -warn-unportable-instructions.\n"); } @@ -182,6 +380,7 @@ struct reg_entry #define REG_F (6 | 8) #define REG_I (9) #define REG_R (10) +#define REG_MB (11) #define REG_AF (3 | R_STACKABLE) #define REG_BC (0 | R_STACKABLE | R_ARITH) @@ -212,6 +411,7 @@ static const struct reg_entry regtable[] = {"iyh",REG_H | R_IY }, {"iyl",REG_L | R_IY }, {"l", REG_L }, + {"mb", REG_MB }, {"r", REG_R }, {"sp", REG_SP }, } ; @@ -226,6 +426,9 @@ md_begin (void) unsigned int i, j, k; char buf[BUFLEN]; + if (ins_ok & INS_EZ80) /* if select EZ80 cpu then */ + listing_lhs_width = 6; /* use 6 bytes per line in the listing */ + reg.X_op = O_register; reg.X_md = 0; reg.X_add_symbol = reg.X_op_symbol = 0; @@ -263,22 +466,27 @@ z80_md_end (void) { int mach_type; - if (ins_used & (INS_UNPORT | INS_R800)) - ins_used |= INS_UNDOC; - - switch (ins_used) + switch (ins_ok & INS_MARCH_MASK) { case INS_Z80: - mach_type = bfd_mach_z80strict; + if (ins_ok & INS_UNPORT) + mach_type = bfd_mach_z80full; + else if (ins_ok & INS_UNDOC) + mach_type = bfd_mach_z80; + else + mach_type = bfd_mach_z80strict; break; - case INS_Z80|INS_UNDOC: - mach_type = bfd_mach_z80; + case INS_R800: + mach_type = bfd_mach_r800; break; - case INS_Z80|INS_UNDOC|INS_UNPORT: - mach_type = bfd_mach_z80full; + case INS_Z180: + mach_type = bfd_mach_z180; break; - case INS_Z80|INS_UNDOC|INS_R800: - mach_type = bfd_mach_r800; + case INS_GBZ80: + mach_type = bfd_mach_gbz80; + break; + case INS_EZ80: + mach_type = cpu_mode ? bfd_mach_ez80_adl : bfd_mach_ez80_z80; break; default: mach_type = 0; @@ -287,6 +495,36 @@ z80_md_end (void) bfd_set_arch_mach (stdoutput, TARGET_ARCH, mach_type); } +#if defined (OBJ_ELF) || defined (OBJ_MAYBE_ELF) +void +z80_elf_final_processing (void) +{ + unsigned elf_flags; + switch (ins_ok & INS_MARCH_MASK) + { + case INS_Z80: + elf_flags = EF_Z80_MACH_Z80; + break; + case INS_R800: + elf_flags = EF_Z80_MACH_R800; + break; + case INS_Z180: + elf_flags = EF_Z80_MACH_Z180; + break; + case INS_GBZ80: + elf_flags = EF_Z80_MACH_GBZ80; + break; + case INS_EZ80: + elf_flags = cpu_mode ? EF_Z80_MACH_EZ80_ADL : EF_Z80_MACH_EZ80_Z80; + break; + default: + elf_flags = 0; + } + + elf_elfheader (stdoutput)->e_flags = elf_flags; +} +#endif + static const char * skip_space (const char *s) { @@ -328,6 +566,10 @@ z80_start_line_hook (void) return 1; } break; + case '#': + if (sdcc_compat) + *p = (*skip_space (p + 1) == '(') ? '+' : ' '; + break; } } /* Check for <label>[:] [.](EQU|DEFL) <value>. */ @@ -344,10 +586,25 @@ z80_start_line_hook (void) c = get_symbol_name (&name); rest = input_line_pointer + 1; + if (ISSPACE(c) && colonless_labels) + { + if (c == '\n') + { + bump_line_counters (); + LISTING_NEWLINE (); + } + c = ':'; + } + if (c == ':' && sdcc_compat && rest[-2] != '$') + dollar_label_clear (); if (*rest == ':') - ++rest; - if (*rest == ' ' || *rest == '\t') - ++rest; + { + /* remove second colon if SDCC compatibility enabled */ + if (sdcc_compat) + *rest = ' '; + ++rest; + } + rest = (char*)skip_space (rest); if (*rest == '.') ++rest; if (strncasecmp (rest, "EQU", 3) == 0) @@ -386,10 +643,22 @@ md_undefined_symbol (char *name ATTRIBUTE_UNUSED) } const char * -md_atof (int type ATTRIBUTE_UNUSED, char *litP ATTRIBUTE_UNUSED, - int *sizeP ATTRIBUTE_UNUSED) +md_atof (int type, char *litP, int *sizeP) { - return _("floating point numbers are not implemented"); + switch (type) + { + case 'f': + case 'F': + if (str_to_float) + return str_to_float (litP, sizeP); + break; + case 'd': + case 'D': + if (str_to_double) + return str_to_double (litP, sizeP); + break; + } + return ieee_md_atof (type, litP, sizeP, FALSE); } valueT @@ -401,8 +670,7 @@ md_section_align (segT seg ATTRIBUTE_UNUSED, valueT size) long md_pcrel_from (fixS * fixp) { - return fixp->fx_where + - fixp->fx_frag->fr_address + 1; + return fixp->fx_where + fixp->fx_frag->fr_address; } typedef const char * (asfunc)(char, char, const char*); @@ -413,6 +681,7 @@ typedef struct _table_t unsigned char prefix; unsigned char opcode; asfunc * fp; + unsigned inss; /*0 - all CPU types or list of supported INS_* */ } table_t; /* Compares the key for structs that start with a char * to the key. */ @@ -436,6 +705,9 @@ static char err_flag; static void error (const char * message) { + if (err_flag) + return; + as_bad ("%s", message); err_flag = 1; } @@ -449,27 +721,10 @@ ill_op (void) static void wrong_mach (int ins_type) { - const char *p; - - switch (ins_type) - { - case INS_UNDOC: - p = "undocumented instruction"; - break; - case INS_UNPORT: - p = "instruction does not work on R800"; - break; - case INS_R800: - p = "instruction only works R800"; - break; - default: - p = 0; /* Not reachable. */ - } - if (ins_type & ins_err) - error (_(p)); + ill_op(); else - as_warn ("%s", _(p)); + as_warn (_("undocumented instruction")); } static void @@ -477,7 +732,6 @@ check_mach (int ins_type) { if ((ins_type & ins_ok) == 0) wrong_mach (ins_type); - ins_used |= ins_type; } /* Check whether an expression is indirect. */ @@ -546,8 +800,24 @@ parse_exp_not_indexed (const char *s, expressionS *op) { const char *p; int indir; + int make_shift = -1; p = skip_space (s); + if (sdcc_compat && (*p == '<' || *p == '>')) + { + switch (*p) + { + case '<': /* LSB request */ + make_shift = 0; + break; + case '>': /* MSB request */ + make_shift = cpu_mode ? 16 : 8; + break; + } + s = ++p; + p = skip_space (p); + } + op->X_md = indir = is_indir (p); input_line_pointer = (char*) s ; expression (op); @@ -562,9 +832,65 @@ parse_exp_not_indexed (const char *s, expressionS *op) default: break; } + + if (make_shift >= 0) + { + /* replace [op] by [op >> shift] */ + expressionS data; + op->X_add_symbol = make_expr_symbol (op); + op->X_add_number = 0; + op->X_op = O_right_shift; + memset (&data, 0, sizeof (data)); + data.X_op = O_constant; + data.X_add_number = make_shift; + op->X_op_symbol = make_expr_symbol (&data); + } return input_line_pointer; } +static int +unify_indexed (expressionS *op) +{ + if (O_register != symbol_get_value_expression(op->X_add_symbol)->X_op) + return 0; + + int rnum = symbol_get_value_expression(op->X_add_symbol)->X_add_number; + if ( ((REG_IX != rnum) && (REG_IY != rnum)) || contains_register(op->X_op_symbol) ) + { + ill_op(); + return 0; + } + + /* convert subtraction to addition of negative value */ + if (O_subtract == op->X_op) + { + expressionS minus; + minus.X_op = O_uminus; + minus.X_add_number = 0; + minus.X_add_symbol = op->X_op_symbol; + minus.X_op_symbol = 0; + op->X_op_symbol = make_expr_symbol(&minus); + op->X_op = O_add; + } + /* clear X_add_number of the expression */ + if (op->X_add_number != 0) + { + expressionS add; + memset (&add, 0, sizeof (add)); + add.X_op = O_symbol; + add.X_add_number = op->X_add_number; + add.X_add_symbol = op->X_op_symbol; + add.X_op_symbol = 0; + op->X_add_symbol = make_expr_symbol(&add); + } + else + op->X_add_symbol = op->X_op_symbol; + + op->X_add_number = rnum; + op->X_op_symbol = 0; + return 1; +} + /* Parse expression, change operator to O_md1 for indexed addressing*/ static const char * parse_exp (const char *s, expressionS *op) @@ -574,32 +900,8 @@ parse_exp (const char *s, expressionS *op) { case O_add: case O_subtract: - if (op->X_md && (O_register == symbol_get_value_expression(op->X_add_symbol)->X_op)) - { - int rnum = symbol_get_value_expression(op->X_add_symbol)->X_add_number; - if ( ((REG_IX != rnum) && (REG_IY != rnum)) || contains_register(op->X_op_symbol) ) - { - ill_op(); - } - else - { - if (O_subtract == op->X_op) - { - expressionS minus; - minus.X_op = O_uminus; - minus.X_add_number = 0; - minus.X_add_symbol = op->X_op_symbol; - minus.X_op_symbol = 0; - op->X_op_symbol = make_expr_symbol(&minus); - op->X_op = O_add; - } - symbol_get_value_expression(op->X_op_symbol)->X_add_number += op->X_add_number; - op->X_add_number = rnum; - op->X_add_symbol = op->X_op_symbol; - op->X_op_symbol = 0; - op->X_op = O_md1; - } - } + if (unify_indexed(op) && op->X_md) + op->X_op = O_md1; break; case O_register: if ( op->X_md && ((REG_IX == op->X_add_number)||(REG_IY == op->X_add_number)) ) @@ -608,6 +910,19 @@ parse_exp (const char *s, expressionS *op) op->X_op = O_md1; } break; + case O_constant: + /* parse SDCC syntax where index register offset placed before parentheses */ + if (sdcc_compat && is_indir (res)) + { + expressionS off; + off = *op; + res = parse_exp (res, op); + if (op->X_op != O_md1 || op->X_add_symbol != zero) + ill_op (); + else + op->X_add_symbol = make_expr_symbol (&off); + } + break; default: break; } @@ -706,11 +1021,89 @@ void z80_cons_fix_new (fragS *frag_p, int offset, int nbytes, expressionS *exp) } static void +emit_data_val (expressionS * val, int size) +{ + char *p; + bfd_reloc_code_real_type r_type; + + p = frag_more (size); + if (val->X_op == O_constant) + { + int i; + for (i = 0; i < size; ++i) + p[i] = (char)(val->X_add_number >> (i*8)); + return; + } + + switch (size) + { + case 1: r_type = BFD_RELOC_8; break; + case 2: r_type = BFD_RELOC_16; break; + case 3: r_type = BFD_RELOC_24; break; + case 4: r_type = BFD_RELOC_32; break; + case 8: r_type = BFD_RELOC_64; break; + default: + as_fatal (_("invalid data size %d"), size); + } + + if ( (val->X_op == O_register) + || (val->X_op == O_md1) + || contains_register(val->X_add_symbol) + || contains_register(val->X_op_symbol) ) + ill_op (); + + if (size <= 2 && val->X_op_symbol) + { + bfd_boolean simplify = TRUE; + int shift = symbol_get_value_expression(val->X_op_symbol)->X_add_number; + if (val->X_op == O_bit_and && shift == (1 << (size*8))-1) + shift = 0; + else if (val->X_op != O_right_shift) + shift = -1; + + if (size == 1) + { + switch (shift) + { + case 0: r_type = BFD_RELOC_Z80_BYTE0; break; + case 8: r_type = BFD_RELOC_Z80_BYTE1; break; + case 16: r_type = BFD_RELOC_Z80_BYTE2; break; + case 24: r_type = BFD_RELOC_Z80_BYTE3; break; + default: simplify = FALSE; + } + } + else /* if (size == 2) */ + { + switch (shift) + { + case 0: r_type = BFD_RELOC_Z80_WORD0; break; + case 16: r_type = BFD_RELOC_Z80_WORD1; break; + default: simplify = FALSE; + } + } + + if (simplify) + { + val->X_op = O_symbol; + val->X_op_symbol = NULL; + val->X_add_number = 0; + } + } + + fix_new_exp (frag_now, p - frag_now->fr_literal, size, val, FALSE, r_type); +} + +static void emit_byte (expressionS * val, bfd_reloc_code_real_type r_type) { char *p; int lo, hi; + if (r_type == BFD_RELOC_8) + { + emit_data_val (val, 1); + return; + } p = frag_more (1); *p = val->X_add_number; if ( contains_register(val->X_add_symbol) || contains_register(val->X_op_symbol) ) @@ -736,31 +1129,16 @@ emit_byte (expressionS * val, bfd_reloc_code_real_type r_type) } else { + /* For symbols only, constants are stored at begin of function */ fix_new_exp (frag_now, p - frag_now->fr_literal, 1, val, (r_type == BFD_RELOC_8_PCREL) ? TRUE : FALSE, r_type); - /* FIXME : Process constant offsets immediately. */ } } static void emit_word (expressionS * val) { - char *p; - - p = frag_more (2); - if ( (val->X_op == O_register) - || (val->X_op == O_md1) - || contains_register(val->X_add_symbol) - || contains_register(val->X_op_symbol) ) - ill_op (); - else - { - *p = val->X_add_number; - p[1] = (val->X_add_number>>8); - if (val->X_op != O_constant) - fix_new_exp (frag_now, p - frag_now->fr_literal, 2, - val, FALSE, BFD_RELOC_16); - } + emit_data_val (val, (inst_mode & INST_MODE_IL) ? 3 : 2); } static void @@ -790,7 +1168,8 @@ emit_mx (char prefix, char opcode, int shift, expressionS * arg) if ((prefix == 0) && (rnum & R_INDEX)) { prefix = (rnum & R_IX) ? 0xDD : 0xFD; - check_mach (INS_UNDOC); + if (!(ins_ok & INS_EZ80)) + check_mach (INS_IDX_HALF); rnum &= ~R_INDEX; } if (rnum > 7) @@ -805,6 +1184,11 @@ emit_mx (char prefix, char opcode, int shift, expressionS * arg) * q ++ = opcode + (rnum << shift); break; case O_md1: + if (ins_ok & INS_GBZ80) + { + ill_op (); + break; + } q = frag_more (2); *q++ = (rnum & R_IX) ? 0xDD : 0xFD; *q = (prefix) ? prefix : (opcode + (6 << shift)); @@ -851,7 +1235,7 @@ emit_m (char prefix, char opcode, const char *args) are allowed). */ static const char * -emit_mr (char prefix, char opcode, const char *args, bfd_boolean unportable) +emit_mr (char prefix, char opcode, const char *args) { expressionS arg_m, arg_r; const char *p; @@ -874,13 +1258,10 @@ emit_mr (char prefix, char opcode, const char *args, bfd_boolean unportable) ill_op (); break; } - check_mach (INS_UNPORT); - unportable = TRUE; + check_mach (INS_ROT_II_LD); } /* Fall through. */ case O_register: - if (unportable) - check_mach (INS_UNPORT); emit_mx (prefix, opcode, 0, & arg_m); break; default: @@ -889,18 +1270,6 @@ emit_mr (char prefix, char opcode, const char *args, bfd_boolean unportable) return p; } -static const char * -emit_mr_z80 (char prefix, char opcode, const char *args) -{ - return emit_mr (prefix, opcode, args, FALSE); -} - -static const char * -emit_mr_unport (char prefix, char opcode, const char *args) -{ - return emit_mr (prefix, opcode, args, TRUE); -} - static void emit_sx (char prefix, char opcode, expressionS * arg_p) { @@ -934,6 +1303,13 @@ emit_s (char prefix, char opcode, const char *args) const char *p; p = parse_exp (args, & arg_s); + if (*p == ',' && arg_s.X_md == 0 && arg_s.X_op == O_register && arg_s.X_add_number == REG_A) + { /* possible instruction in generic format op A,x */ + if (!(ins_ok & INS_EZ80) && !sdcc_compat) + ill_op(); + ++p; + p = parse_exp (p, & arg_s); + } emit_sx (prefix, opcode, & arg_s); return p; } @@ -999,6 +1375,7 @@ emit_jr (char prefix ATTRIBUTE_UNUSED, char opcode, const char * args) { q = frag_more (1); *q = opcode; + addr.X_add_number--; /* pcrel computes after offset code */ emit_byte (&addr, BFD_RELOC_8_PCREL); } return p; @@ -1219,7 +1596,7 @@ emit_bit (char prefix, char opcode, const char * args) p = emit_m (prefix, opcode + (bn << 3), p); else /* Set, res : resulting byte can be copied to register. */ - p = emit_mr (prefix, opcode + (bn << 3), p, FALSE); + p = emit_mr (prefix, opcode + (bn << 3), p); } else ill_op (); @@ -1349,16 +1726,15 @@ emit_in (char prefix ATTRIBUTE_UNUSED, char opcode ATTRIBUTE_UNUSED, } else { - if (port.X_add_number == REG_C) + if (port.X_add_number == REG_C || port.X_add_number == REG_BC) { - if (reg.X_add_number == REG_F) - check_mach (INS_UNDOC); - else - { - q = frag_more (2); - *q++ = 0xED; - *q = 0x40|((reg.X_add_number&7)<<3); - } + if (port.X_add_number == REG_BC && !(ins_ok & INS_EZ80)) + ill_op (); + else if (reg.X_add_number == REG_F && !(ins_ok & INS_R800)) + check_mach (INS_IN_F_C); + q = frag_more (2); + *q++ = 0xED; + *q = 0x40|((reg.X_add_number&7)<<3); } else ill_op (); @@ -1370,6 +1746,39 @@ emit_in (char prefix ATTRIBUTE_UNUSED, char opcode ATTRIBUTE_UNUSED, } static const char * +emit_in0 (char prefix ATTRIBUTE_UNUSED, char opcode ATTRIBUTE_UNUSED, + const char * args) +{ + expressionS reg, port; + const char *p; + char *q; + + p = parse_exp (args, ®); + if (*p++ != ',') + { + error (_("bad instruction syntax")); + return p; + } + + p = parse_exp (p, &port); + if (reg.X_md == 0 + && reg.X_op == O_register + && reg.X_add_number <= 7 + && port.X_md + && port.X_op != O_md1 + && port.X_op != O_register) + { + q = frag_more (2); + *q++ = 0xED; + *q = 0x00|(reg.X_add_number << 3); + emit_byte (&port, BFD_RELOC_8); + } + else + ill_op (); + return p; +} + +static const char * emit_out (char prefix ATTRIBUTE_UNUSED, char opcode ATTRIBUTE_UNUSED, const char * args) { @@ -1389,7 +1798,7 @@ emit_out (char prefix ATTRIBUTE_UNUSED, char opcode ATTRIBUTE_UNUSED, /* Allow "out (c), 0" as unportable instruction. */ if (reg.X_op == O_constant && reg.X_add_number == 0) { - check_mach (INS_UNPORT); + check_mach (INS_OUT_C_0); reg.X_op = O_register; reg.X_add_number = 6; } @@ -1411,8 +1820,10 @@ emit_out (char prefix ATTRIBUTE_UNUSED, char opcode ATTRIBUTE_UNUSED, } else { - if (REG_C == port.X_add_number) + if (REG_C == port.X_add_number || port.X_add_number == REG_BC) { + if (port.X_add_number == REG_BC && !(ins_ok & INS_EZ80)) + ill_op (); q = frag_more (2); *q++ = 0xED; *q = 0x41 | (reg.X_add_number << 3); @@ -1424,6 +1835,38 @@ emit_out (char prefix ATTRIBUTE_UNUSED, char opcode ATTRIBUTE_UNUSED, } static const char * +emit_out0 (char prefix ATTRIBUTE_UNUSED, char opcode ATTRIBUTE_UNUSED, + const char * args) +{ + expressionS reg, port; + const char *p; + char *q; + + p = parse_exp (args, & port); + if (*p++ != ',') + { + error (_("bad instruction syntax")); + return p; + } + p = parse_exp (p, ®); + if (port.X_md != 0 + && port.X_op != O_register + && port.X_op != O_md1 + && reg.X_md == 0 + && reg.X_op == O_register + && reg.X_add_number <= 7) + { + q = frag_more (2); + *q++ = 0xED; + *q = 0x01 | (reg.X_add_number << 3); + emit_byte (&port, BFD_RELOC_8); + } + else + ill_op (); + return p; +} + +static const char * emit_rst (char prefix ATTRIBUTE_UNUSED, char opcode, const char * args) { expressionS addr; @@ -1448,194 +1891,548 @@ emit_rst (char prefix ATTRIBUTE_UNUSED, char opcode, const char * args) } static void -emit_ldxhl (char prefix, char opcode, expressionS *src, expressionS *d) -{ +emit_ld_m_n(expressionS *dst, expressionS *src) +{ /* for 8-bit indirect load to memory instructions like: LD (HL),n or LD (ii+d),n */ char *q; + char prefix; + expressionS dst_offset; - if (src->X_md) + switch (dst->X_add_number) + { + case REG_HL: prefix = 0x00; break; + case REG_IX: prefix = 0xDD; break; + case REG_IY: prefix = 0xFD; break; + default: + ill_op (); + return; + } + + q = frag_more (prefix ? 2 : 1); + if (prefix) + *q++ = prefix; + *q = 0x36; + if (prefix) + { + dst_offset = *dst; + dst_offset.X_op = O_symbol; + dst_offset.X_add_number = 0; + emit_byte (& dst_offset, BFD_RELOC_Z80_DISP8); + } + emit_byte (src, BFD_RELOC_8); +} + +static void +emit_ld_m_r(expressionS *dst, expressionS *src) +{ /* for 8-bit load register to memory instructions: LD (<expression>),r */ + char *q; + char prefix = 0; + expressionS dst_offset; + + switch (dst->X_op) + { + case O_md1: + prefix = (dst->X_add_number == REG_IX) ? 0xDD : 0xFD; + /* Fall through. */ + case O_register: + switch (dst->X_add_number) + { + case REG_BC: /* LD (BC),A */ + case REG_DE: /* LD (DE),A */ + if (src->X_add_number == REG_A) + { + q = frag_more (1); + *q = 0x02 | ((dst->X_add_number & 3) << 4); + return; + } + break; + case REG_IX: + case REG_IY: + case REG_HL: /* LD (HL),r or LD (ii+d),r */ + if (src->X_add_number <= 7) + { + q = frag_more (prefix ? 2 : 1); + if (prefix) + *q++ = prefix; + *q = 0x70 | src->X_add_number; + if (prefix) + { + dst_offset = *dst; + dst_offset.X_op = O_symbol; + dst_offset.X_add_number = 0; + emit_byte (& dst_offset, BFD_RELOC_Z80_DISP8); + } + return; + } + break; + default:; + } + break; + default: /* LD (nn),A */ + if (src->X_add_number == REG_A) + { + q = frag_more (1); + *q = 0x32; + emit_word (dst); + return; + } + break; + } ill_op (); - else +} + +static void +emit_ld_m_rr(expressionS *dst, expressionS *src) +{ /* for 16-bit load register to memory instructions: LD (<expression>),rr */ + char *q; + char prefix = 0; + char opcode = 0; + expressionS dst_offset; + + switch (dst->X_op) { - if (src->X_op == O_register) - { - if (src->X_add_number>7) - ill_op (); - if (prefix) - { - q = frag_more (2); - *q++ = prefix; - } - else - q = frag_more (1); - *q = opcode + src->X_add_number; - if (d) - emit_byte (d, BFD_RELOC_Z80_DISP8); - } + case O_md1: /* eZ80 instructions LD (ii+d),rr */ + case O_register: /* eZ80 instructions LD (HL),rr */ + if (!(ins_ok & INS_EZ80)) /* 16-bit indirect load group is supported by eZ80 only */ + ill_op (); + switch (dst->X_add_number) + { + case REG_IX: prefix = 0xDD; break; + case REG_IY: prefix = 0xFD; break; + case REG_HL: prefix = 0xED; break; + default: + ill_op (); + } + switch (src->X_add_number) + { + case REG_BC: opcode = 0x0F; break; + case REG_DE: opcode = 0x1F; break; + case REG_HL: opcode = 0x2F; break; + case REG_IX: opcode = (prefix != '\xfd') ? 0x3F : 0x3E; break; + case REG_IY: opcode = (prefix != '\xfd') ? 0x3E : 0x3F; break; + default: + ill_op (); + } + q = frag_more (prefix ? 2 : 1); + *q++ = prefix; + *q = opcode; + if (prefix == '\xfd' || prefix == '\xdd') + { + dst_offset = *dst; + dst_offset.X_op = O_symbol; + dst_offset.X_add_number = 0; + emit_byte (& dst_offset, BFD_RELOC_Z80_DISP8); + } + break; + default: /* LD (nn),rr */ + if (ins_ok & INS_GBZ80) + { + /* GBZ80 supports only LD (nn),SP */ + if (src->X_add_number == REG_SP) + { + prefix = 0x00; + opcode = 0x08; + } + else + ill_op (); + } else - { - if (prefix) - { - q = frag_more (2); - *q++ = prefix; - } - else - q = frag_more (1); - *q = opcode^0x46; - if (d) - emit_byte (d, BFD_RELOC_Z80_DISP8); - emit_byte (src, BFD_RELOC_8); - } + { + switch (src->X_add_number) + { + case REG_BC: prefix = 0xED; opcode = 0x43; break; + case REG_DE: prefix = 0xED; opcode = 0x53; break; + case REG_HL: prefix = 0x00; opcode = 0x22; break; + case REG_IX: prefix = 0xDD; opcode = 0x22; break; + case REG_IY: prefix = 0xFD; opcode = 0x22; break; + case REG_SP: prefix = 0xED; opcode = 0x73; break; + default: + ill_op (); + } + } + q = frag_more (prefix ? 2 : 1); + if (prefix) + *q++ = prefix; + *q = opcode; + emit_word (dst); } } static void -emit_ldreg (int dest, expressionS * src) -{ +emit_ld_r_m (expressionS *dst, expressionS *src) +{ /* for 8-bit memory load to register: LD r,(xxx) */ char *q; - int rnum; + char prefix = 0; + char opcode = 0; + expressionS src_offset; - switch (dest) + if (dst->X_add_number == REG_A && src->X_op == O_register) + { /* LD A,(BC) or LD A,(DE) */ + switch (src->X_add_number) + { + case REG_BC: opcode = 0x0A; break; + case REG_DE: opcode = 0x1A; break; + default: break; + } + if (opcode != 0) + { + q = frag_more (1); + *q = opcode; + return; + } + } + + switch (src->X_op) { - /* 8 Bit ld group: */ - case REG_I: - case REG_R: - if (src->X_md == 0 && src->X_op == O_register && src->X_add_number == REG_A) - { - q = frag_more (2); - *q++ = 0xED; - *q = (dest == REG_I) ? 0x47 : 0x4F; - } - else - ill_op (); + case O_md1: + case O_register: + if (dst->X_add_number > 7) + ill_op (); + opcode = 0x46; /* LD B,(HL) */ + switch (src->X_add_number) + { + case REG_HL: prefix = 0x00; break; + case REG_IX: prefix = 0xDD; break; + case REG_IY: prefix = 0xFD; break; + default: + ill_op (); + } + q = frag_more (prefix ? 2 : 1); + if (prefix) + *q++ = prefix; + *q = opcode | ((dst->X_add_number & 7) << 3); + if (prefix) + { + src_offset = *src; + src_offset.X_op = O_symbol; + src_offset.X_add_number = 0; + emit_byte (& src_offset, BFD_RELOC_Z80_DISP8); + } break; + default: /* LD A,(nn) */ + if (dst->X_add_number == REG_A) + { + q = frag_more (1); + *q = 0x3A; + emit_word (src); + } + } +} - case REG_A: - if ((src->X_md) && src->X_op != O_register && src->X_op != O_md1) - { - q = frag_more (1); - *q = 0x3A; - emit_word (src); - break; - } - - if ((src->X_md) - && src->X_op == O_register - && (src->X_add_number == REG_BC || src->X_add_number == REG_DE)) - { - q = frag_more (1); - *q = 0x0A + ((src->X_add_number & 1) << 4); - break; - } +static void +emit_ld_r_n (expressionS *dst, expressionS *src) +{ /* for 8-bit immediate value load to register: LD r,n */ + char *q; + char prefix = 0; - if ((!src->X_md) - && src->X_op == O_register - && (src->X_add_number == REG_R || src->X_add_number == REG_I)) - { - q = frag_more (2); - *q++ = 0xED; - *q = (src->X_add_number == REG_I) ? 0x57 : 0x5F; - break; - } - /* Fall through. */ + switch (dst->X_add_number) + { + case REG_H|R_IX: + case REG_L|R_IX: + prefix = 0xDD; + break; + case REG_H|R_IY: + case REG_L|R_IY: + prefix = 0xFD; + break; + case REG_A: case REG_B: case REG_C: case REG_D: case REG_E: - emit_sx (0, 0x40 + (dest << 3), src); - break; - case REG_H: case REG_L: - if ((src->X_md == 0) - && (src->X_op == O_register) - && (src->X_add_number & R_INDEX)) - ill_op (); - else - emit_sx (0, 0x40 + (dest << 3), src); break; + default: + ill_op (); +// return; + } - case R_IX | REG_H: - case R_IX | REG_L: - case R_IY | REG_H: - case R_IY | REG_L: - if (src->X_md) - { - ill_op (); - break; - } - check_mach (INS_UNDOC); - if (src-> X_op == O_register) - { - rnum = src->X_add_number; - if ((rnum & ~R_INDEX) < 8 - && ((rnum & R_INDEX) == (dest & R_INDEX) - || ( (rnum & ~R_INDEX) != REG_H - && (rnum & ~R_INDEX) != REG_L))) - { - q = frag_more (2); - *q++ = (dest & R_IX) ? 0xDD : 0xFD; - *q = 0x40 + ((dest & 0x07) << 3) + (rnum & 7); - } - else - ill_op (); - } + q = frag_more (prefix ? 2 : 1); + if (prefix) + { + if (ins_ok & INS_GBZ80) + ill_op (); + else if (!(ins_ok & INS_EZ80)) + check_mach (INS_IDX_HALF); + *q++ = prefix; + } + *q = 0x06 | ((dst->X_add_number & 7) << 3); + emit_byte (src, BFD_RELOC_8); +} + +static void +emit_ld_r_r (expressionS *dst, expressionS *src) +{ /* mostly 8-bit load register from register instructions: LD r,r */ + /* there are some exceptions: LD SP,HL/IX/IY; LD I,HL and LD HL,I */ + char *q; + char prefix = 0; + char opcode = 0; + int ii_halves = 0; + + switch (dst->X_add_number) + { + case REG_SP: + switch (src->X_add_number) + { + case REG_HL: prefix = 0x00; break; + case REG_IX: prefix = 0xDD; break; + case REG_IY: prefix = 0xFD; break; + default: + ill_op (); + } + if (ins_ok & INS_GBZ80) + ill_op (); + opcode = 0xF9; + break; + case REG_HL: + if (!(ins_ok & INS_EZ80)) + ill_op (); + if (src->X_add_number != REG_I) + ill_op (); + if (cpu_mode < 1) + error (_("ADL mode instruction")); + /* LD HL,I */ + prefix = 0xED; + opcode = 0xD7; + break; + case REG_I: + if (src->X_add_number == REG_HL) + { + if (!(ins_ok & INS_EZ80)) + ill_op (); + if (cpu_mode < 1) + error (_("ADL mode instruction")); + prefix = 0xED; + opcode = 0xC7; + } + else if (src->X_add_number == REG_A) + { + prefix = 0xED; + opcode = 0x47; + } else - { - q = frag_more (2); - *q++ = (dest & R_IX) ? 0xDD : 0xFD; - *q = 0x06 + ((dest & 0x07) << 3); - emit_byte (src, BFD_RELOC_8); - } + ill_op (); + break; + case REG_MB: + if (!(ins_ok & INS_EZ80) || (src->X_add_number != REG_A)) + ill_op (); + if (cpu_mode < 1) + error (_("ADL mode instruction")); + prefix = 0xED; + opcode = 0x6D; break; + case REG_R: + if (src->X_add_number == REG_A) /* LD R,A */ + { + prefix = 0xED; + opcode = 0x4F; + } + else + ill_op (); + break; + case REG_A: + if (src->X_add_number == REG_I) /* LD A,I */ + { + prefix = 0xED; + opcode = 0x57; + break; + } + else if (src->X_add_number == REG_R) /* LD A,R */ + { + prefix = 0xED; + opcode = 0x5F; + break; + } + else if (src->X_add_number == REG_MB) /* LD A,MB */ + { + if (!(ins_ok & INS_EZ80)) + ill_op (); + else + { + if (cpu_mode < 1) + error (_("ADL mode instruction")); + prefix = 0xED; + opcode = 0x6E; + } + break; + } + /* Fall through. */ + case REG_B: + case REG_C: + case REG_D: + case REG_E: + case REG_H: + case REG_L: + prefix = 0x00; + break; + case REG_H|R_IX: + case REG_L|R_IX: + prefix = 0xDD; + ii_halves = 1; + break; + case REG_H|R_IY: + case REG_L|R_IY: + prefix = 0xFD; + ii_halves = 1; + break; + default: + ill_op (); + } - /* 16 Bit ld group: */ - case REG_SP: - if (src->X_md == 0 - && src->X_op == O_register - && REG_HL == (src->X_add_number &~ R_INDEX)) - { - q = frag_more ((src->X_add_number & R_INDEX) ? 2 : 1); - if (src->X_add_number & R_INDEX) - *q++ = (src->X_add_number & R_IX) ? 0xDD : 0xFD; - *q = 0xF9; - break; - } + if (opcode == 0) + { + switch (src->X_add_number) + { + case REG_A: + case REG_B: + case REG_C: + case REG_D: + case REG_E: + break; + case REG_H: + case REG_L: + if (prefix != 0) + ill_op (); /* LD iiH/L,H/L are not permitted */ + break; + case REG_H|R_IX: + case REG_L|R_IX: + if (prefix == '\xfd' || dst->X_add_number == REG_H || dst->X_add_number == REG_L) + ill_op (); /* LD IYL,IXL and LD H,IXH are not permitted */ + prefix = 0xDD; + ii_halves = 1; + break; + case REG_H|R_IY: + case REG_L|R_IY: + if (prefix == '\xdd' || dst->X_add_number == REG_H || dst->X_add_number == REG_L) + ill_op (); /* LD IXH,IYH and LD L,IYL are not permitted */ + prefix = 0xFD; + ii_halves = 1; + break; + default: + ill_op (); + } + opcode = 0x40 + ((dst->X_add_number & 7) << 3) + (src->X_add_number & 7); + } + if ((ins_ok & INS_GBZ80) && prefix != 0) + ill_op (); + if (ii_halves && !(ins_ok & INS_EZ80)) + check_mach (INS_IDX_HALF); + if (prefix == 0 && (ins_ok & INS_EZ80)) + { + switch (opcode) + { + case 0x40: /* SIS prefix, in Z80 it is LD B,B */ + case 0x49: /* LIS prefix, in Z80 it is LD C,C */ + case 0x52: /* SIL prefix, in Z80 it is LD D,D */ + case 0x5B: /* LIL prefix, in Z80 it is LD E,E */ + as_warn(_("unsupported instruction, assembled as NOP")); + opcode = 0x00; + break; + default:; + } + } + q = frag_more (prefix ? 2 : 1); + if (prefix) + *q++ = prefix; + *q = opcode; +} + +static void +emit_ld_rr_m (expressionS *dst, expressionS *src) +{ /* for 16-bit indirect load from memory to register: LD rr,(xxx) */ + char *q; + char prefix = 0; + char opcode = 0; + expressionS src_offset; + + /* GBZ80 has no support for 16-bit load from memory instructions */ + if (ins_ok & INS_GBZ80) + ill_op (); + + prefix = 0xED; + switch (src->X_op) + { + case O_md1: /* LD rr,(ii+d) */ + prefix = (src->X_add_number == REG_IX) ? 0xDD : 0xFD; /* Fall through. */ - case REG_BC: - case REG_DE: - if (src->X_op == O_register || src->X_op == O_md1) - ill_op (); - q = frag_more (src->X_md ? 2 : 1); - if (src->X_md) - { - *q++ = 0xED; - *q = 0x4B + ((dest & 3) << 4); - } - else - *q = 0x01 + ((dest & 3) << 4); - emit_word (src); + case O_register: /* LD rr,(HL) */ + /* currently only EZ80 has support for 16bit indirect memory load instructions */ + if (!(ins_ok & INS_EZ80)) + ill_op (); + switch (dst->X_add_number) + { + case REG_BC: opcode = 0x07; break; + case REG_DE: opcode = 0x17; break; + case REG_HL: opcode = 0x27; break; + case REG_IX: opcode = (!prefix || prefix == '\xdd') ? 0x37 : 0x31; break; + case REG_IY: opcode = prefix ? ((prefix == '\xdd') ? 0x31 : 0x37) : 0x36; break; + default: + ill_op (); + } + q = frag_more (2); + *q++ = prefix; + *q = opcode; + if (prefix != '\xed') + { + src_offset = *src; + src_offset.X_op = O_symbol; + src_offset.X_add_number = 0; + emit_byte (& src_offset, BFD_RELOC_Z80_DISP8); + } break; + default: /* LD rr,(nn) */ + switch (dst->X_add_number) + { + case REG_BC: prefix = 0xED; opcode = 0x4B; break; + case REG_DE: prefix = 0xED; opcode = 0x5B; break; + case REG_HL: prefix = 0x00; opcode = 0x2A; break; + case REG_SP: prefix = 0xED; opcode = 0x7B; break; + case REG_IX: prefix = 0xDD; opcode = 0x2A; break; + case REG_IY: prefix = 0xFD; opcode = 0x2A; break; + default: + ill_op (); + } + q = frag_more (prefix ? 2 : 1); + if (prefix) + *q++ = prefix; + *q = opcode; + emit_word (src); + } + return; +} +static void +emit_ld_rr_nn (expressionS *dst, expressionS *src) +{ /* mostly load imediate value to multibyte register instructions: LD rr,nn */ + char *q; + char prefix = 0x00; + char opcode = 0x21; /* LD HL,nn */ + switch (dst->X_add_number) + { + case REG_IX: + prefix = 0xDD; + break; + case REG_IY: + prefix = 0xFD; + break; case REG_HL: - case REG_HL | R_IX: - case REG_HL | R_IY: - if (src->X_op == O_register || src->X_op == O_md1) - ill_op (); - q = frag_more ((dest & R_INDEX) ? 2 : 1); - if (dest & R_INDEX) - * q ++ = (dest & R_IX) ? 0xDD : 0xFD; - *q = (src->X_md) ? 0x2A : 0x21; - emit_word (src); break; - - case REG_AF: - case REG_F: - ill_op (); + case REG_BC: + case REG_DE: + case REG_SP: + opcode = 0x01 + ((dst->X_add_number & 3) << 4); break; - default: - abort (); + ill_op (); + return; } + if (prefix && (ins_ok & INS_GBZ80)) + ill_op (); + q = frag_more (prefix ? 2 : 1); + if (prefix) + *q++ = prefix; + *q = opcode; + emit_word (src); } static const char * @@ -1644,80 +2441,343 @@ emit_ld (char prefix_in ATTRIBUTE_UNUSED, char opcode_in ATTRIBUTE_UNUSED, { expressionS dst, src; const char *p; + + p = parse_exp (args, & dst); + if (*p++ != ',') + error (_("bad instruction syntax")); + p = parse_exp (p, & src); + + if (dst.X_md) + { + if (src.X_op == O_register) + { + if (src.X_add_number <= 7) + emit_ld_m_r (& dst, & src); /* LD (xxx),r */ + else + emit_ld_m_rr (& dst, & src); /* LD (xxx),rr */ + } + else + emit_ld_m_n (& dst, & src); /* LD (hl),n or LD (ix/y+r),n */ + } + else if (dst.X_op == O_register) + { + if (src.X_md) + { + if (dst.X_add_number <= 7) + emit_ld_r_m (& dst, & src); + else + emit_ld_rr_m (& dst, & src); + } + else if (src.X_op == O_register) + emit_ld_r_r (& dst, & src); + else if ((dst.X_add_number & ~R_INDEX) <= 7) + emit_ld_r_n (& dst, & src); + else + emit_ld_rr_nn (& dst, & src); + } + else + ill_op (); + + return p; +} + +static const char * +emit_lddldi (char prefix, char opcode, const char * args) +{ + expressionS dst, src; + const char *p; char *q; - char prefix, opcode; - p = parse_exp (args, &dst); + if (!(ins_ok & INS_GBZ80)) + return emit_insn(prefix, opcode, args); + + p = parse_exp (args, & dst); if (*p++ != ',') error (_("bad instruction syntax")); - p = parse_exp (p, &src); + p = parse_exp (args, & src); + + if (dst.X_op != O_register || src.X_op != O_register) + ill_op (); + + /* convert opcode 0xA0 . 0x22, 0xA8 . 0x32 */ + opcode = (opcode & 0x08) * 2 + 0x22; + + if (dst.X_md != 0 + && dst.X_add_number == REG_HL + && src.X_md == 0 + && src.X_add_number == REG_A) + opcode |= 0x00; /* LDx (HL),A */ + else if (dst.X_md == 0 + && dst.X_add_number == REG_A + && src.X_md != 0 + && src.X_add_number == REG_HL) + opcode |= 0x08; /* LDx A,(HL) */ + else + ill_op (); - switch (dst.X_op) + q = frag_more (1); + *q = opcode; + return p; +} + +static const char * +emit_ldh (char prefix ATTRIBUTE_UNUSED, char opcode ATTRIBUTE_UNUSED, + const char * args) +{ + expressionS dst, src; + const char *p; + char *q; + + p = parse_exp (args, & dst); + if (*p++ != ',') { - case O_md1: - { - expressionS dst_offset = dst; - dst_offset.X_op = O_symbol; - dst_offset.X_add_number = 0; - emit_ldxhl ((dst.X_add_number & R_IX) ? 0xDD : 0xFD, 0x70, - &src, &dst_offset); - } - break; + error (_("bad instruction syntax")); + return p; + } - case O_register: - if (dst.X_md) - { - switch (dst.X_add_number) - { - case REG_BC: - case REG_DE: - if (src.X_md == 0 && src.X_op == O_register && src.X_add_number == REG_A) - { - q = frag_more (1); - *q = 0x02 + ( (dst.X_add_number & 1) << 4); - } - else - ill_op (); - break; - case REG_HL: - emit_ldxhl (0, 0x70, &src, NULL); - break; - default: - ill_op (); - } - } + p = parse_exp (p, & src); + if (dst.X_md == 0 + && dst.X_op == O_register + && dst.X_add_number == REG_A + && src.X_md != 0 + && src.X_op != O_md1 + && src.X_op != O_register) + { + q = frag_more (1); + *q = 0xF0; + emit_byte (& src, BFD_RELOC_8); + } + else if (dst.X_md != 0 + && dst.X_op != O_md1 + && src.X_md == 0 + && src.X_op == O_register + && src.X_add_number == REG_A) + { + if (dst.X_op == O_register) + { + if (dst.X_add_number == REG_C) + { + q = frag_more (1); + *q = 0xE2; + } + else + ill_op(); + } else - emit_ldreg (dst.X_add_number, &src); + { + q = frag_more (1); + *q = 0xE0; + emit_byte (& dst, BFD_RELOC_8); + } + } + else + ill_op (); + + return p; +} + +static const char * +parse_lea_pea_args (const char * args, expressionS *op) +{ + const char *p; + p = parse_exp (args, op); + if (sdcc_compat && *p == ',' && op->X_op == O_register) + { + expressionS off; + p = parse_exp (p + 1, &off); + op->X_op = O_add; + op->X_add_symbol = make_expr_symbol (&off); + } + return p; +} + +static const char * +emit_lea (char prefix, char opcode, const char * args) +{ + expressionS dst, src; + const char *p; + char *q; + int rnum; + + p = parse_exp (args, & dst); + if (dst.X_md != 0 || dst.X_op != O_register) + ill_op (); + + rnum = dst.X_add_number; + switch (rnum) + { + case REG_BC: + case REG_DE: + case REG_HL: + opcode = 0x02 | ((rnum & 0x03) << 4); + break; + case REG_IX: + opcode = 0x32; /* lea ix,ix+d has opcode 0x32; lea ix,iy+d has opcode 0x54 */ break; + case REG_IY: + opcode = 0x33; /* lea iy,iy+d has opcode 0x33; lea iy,ix+d has opcode 0x55 */ + break; + default: + ill_op (); + } + if (*p++ != ',') + error (_("bad instruction syntax")); + + p = parse_lea_pea_args (p, & src); + if (src.X_md != 0 || src.X_op != O_add /*&& src.X_op != O_register*/) + ill_op (); + + rnum = src.X_add_number; + switch (src.X_op) + { + case O_add: + break; + case O_register: /* permit instructions like LEA rr,IX without displacement specified */ + src.X_add_symbol = zero; + break; default: - if (src.X_md != 0 || src.X_op != O_register) - ill_op (); - prefix = opcode = 0; - switch (src.X_add_number) - { - case REG_A: - opcode = 0x32; break; - case REG_BC: case REG_DE: case REG_SP: - prefix = 0xED; opcode = 0x43 + ((src.X_add_number&3)<<4); break; - case REG_HL: - opcode = 0x22; break; - case REG_HL|R_IX: - prefix = 0xDD; opcode = 0x22; break; - case REG_HL|R_IY: - prefix = 0xFD; opcode = 0x22; break; - } - if (opcode) - { - q = frag_more (prefix?2:1); - if (prefix) - *q++ = prefix; - *q = opcode; - emit_word (&dst); - } - else - ill_op (); + ill_op (); + } + + switch (rnum) + { + case REG_IX: + opcode = (opcode == 0x33) ? 0x55 : (opcode|0x00); + break; + case REG_IY: + opcode = (opcode == 0x32) ? 0x54 : (opcode|0x01); } + + q = frag_more (2); + *q++ = prefix; + *q = opcode; + + src.X_op = O_symbol; + src.X_add_number = 0; + emit_byte (& src, BFD_RELOC_Z80_DISP8); + + return p; +} + +static const char * +emit_mlt (char prefix, char opcode, const char * args) +{ + expressionS arg; + const char *p; + char *q; + + p = parse_exp (args, & arg); + if (arg.X_md != 0 || arg.X_op != O_register || !(arg.X_add_number & R_ARITH)) + ill_op (); + + q = frag_more (2); + *q++ = prefix; + *q = opcode | ((arg.X_add_number & 3) << 4); + + return p; +} + +static const char * +emit_pea (char prefix, char opcode, const char * args) +{ + expressionS arg; + const char *p; + char *q; + + p = parse_lea_pea_args (args, & arg); + if (arg.X_md != 0 + || (/*arg.X_op != O_register &&*/ arg.X_op != O_add) + || !(arg.X_add_number & R_INDEX)) + ill_op (); + /* PEA ii without displacement is mostly typo, + because there is PUSH instruction which is shorter and faster */ + /*if (arg.X_op == O_register) + as_warn(_("PEA is used without displacement, use PUSH instead"));*/ + + q = frag_more (2); + *q++ = prefix; + *q = opcode + (arg.X_add_number == REG_IY ? 1 : 0); + + arg.X_op = O_symbol; + arg.X_add_number = 0; + emit_byte (& arg, BFD_RELOC_Z80_DISP8); + + return p; +} + +static const char * +emit_reti (char prefix, char opcode, const char * args) +{ + if (ins_ok & INS_GBZ80) + return emit_insn(0x00, 0xD9, args); + + return emit_insn(prefix, opcode, args); +} + +static const char * +emit_tst (char prefix, char opcode, const char *args) +{ + expressionS arg_s; + const char *p; + char *q; + int rnum; + + p = parse_exp (args, & arg_s); + if (*p == ',' && arg_s.X_md == 0 && arg_s.X_op == O_register && arg_s.X_add_number == REG_A) + { + if (!(ins_ok & INS_EZ80)) + ill_op(); + ++p; + p = parse_exp (p, & arg_s); + } + + rnum = arg_s.X_add_number; + switch (arg_s.X_op) + { + case O_md1: + ill_op (); + break; + case O_register: + rnum = arg_s.X_add_number; + if (arg_s.X_md != 0) + { + if (rnum != REG_HL) + ill_op (); + else + rnum = 6; + } + q = frag_more (2); + *q++ = prefix; + *q = opcode | (rnum << 3); + break; + default: + if (arg_s.X_md) + ill_op (); + q = frag_more (2); + *q++ = prefix; + *q = opcode | 0x60; + emit_byte (& arg_s, BFD_RELOC_8); + } + return p; +} + +static const char * +emit_tstio (char prefix, char opcode, const char *args) +{ + expressionS arg; + const char *p; + char *q; + + p = parse_exp (args, & arg); + if (arg.X_md || arg.X_op == O_register || arg.X_op == O_md1) + ill_op (); + + q = frag_more (2); + *q++ = prefix; + *q = opcode; + emit_byte(& arg, BFD_RELOC_8); + return p; } @@ -1767,6 +2827,76 @@ emit_data (int size ATTRIBUTE_UNUSED) input_line_pointer = (char *)(p-1); } +static void +z80_cons (int size) +{ + const char *p; + expressionS exp; + + if (is_it_end_of_statement ()) + { + demand_empty_rest_of_line (); + return; + } + p = skip_space (input_line_pointer); + + do + { + p = parse_exp (p, &exp); + if (exp.X_op == O_md1 || exp.X_op == O_register) + { + ill_op (); + break; + } + if (exp.X_md) + as_warn (_("parentheses ignored")); + emit_data_val (&exp, size); + p = skip_space (p); + } while (*p++ == ',') ; + input_line_pointer = (char *)(p-1); +} + +/* next functions were commented out because it is difficult to mix + both ADL and Z80 mode instructions within one COFF file: + objdump cannot recognize point of mode switching. +*/ +static void +set_cpu_mode (int mode) +{ + if (ins_ok & INS_EZ80) + cpu_mode = mode; + else + error (_("CPU mode is unsupported by target")); +} + +static void +assume (int arg ATTRIBUTE_UNUSED) +{ + char *name; + char c; + int n; + + input_line_pointer = (char*)skip_space (input_line_pointer); + c = get_symbol_name (& name); + if (strncasecmp(name, "ADL", 4) != 0) + { + ill_op (); + return; + } + + restore_line_pointer (c); + input_line_pointer = (char*)skip_space (input_line_pointer); + if (*input_line_pointer++ != '=') + { + error (_("assignment expected")); + return; + } + input_line_pointer = (char*)skip_space (input_line_pointer); + n = get_single_number (); + + set_cpu_mode (n); +} + static const char * emit_mulub (char prefix ATTRIBUTE_UNUSED, char opcode, const char * args) { @@ -1834,97 +2964,267 @@ emit_muluw (char prefix ATTRIBUTE_UNUSED, char opcode, const char * args) return p; } +static int +assemble_suffix (const char **suffix) +{ + static + const char sf[8][4] = + { + "il", + "is", + "l", + "lil", + "lis", + "s", + "sil", + "sis" + }; + const char *p; + const char (*t)[4]; + char sbuf[4]; + int i; + + p = *suffix; + if (*p++ != '.') + return 0; + + for (i = 0; (i < 3) && (ISALPHA (*p)); i++) + sbuf[i] = TOLOWER (*p++); + if (*p && !ISSPACE(*p)) + return 0; + *suffix = p; + sbuf[i] = 0; + + t = bsearch(sbuf, sf, ARRAY_SIZE (sf), sizeof(sf[0]), (int(*)(const void*, const void*))strcmp); + if (t == NULL) + return 0; + i = t - sf; + switch (i) + { + case 0: /* IL */ + i = cpu_mode ? 0x5B : 0x52; + break; + case 1: /* IS */ + i = cpu_mode ? 0x49 : 0x40; + break; + case 2: /* L */ + i = cpu_mode ? 0x5B : 0x49; + break; + case 3: /* LIL */ + i = 0x5B; + break; + case 4: /* LIS */ + i = 0x49; + break; + case 5: /* S */ + i = cpu_mode ? 0x52 : 0x40; + break; + case 6: /* SIL */ + i = 0x52; + break; + case 7: /* SIS */ + i = 0x40; + break; + } + *frag_more(1) = (char)i; + switch (i) + { + case 0x40: inst_mode = INST_MODE_FORCED | INST_MODE_S | INST_MODE_IS; break; + case 0x49: inst_mode = INST_MODE_FORCED | INST_MODE_L | INST_MODE_IS; break; + case 0x52: inst_mode = INST_MODE_FORCED | INST_MODE_S | INST_MODE_IL; break; + case 0x5B: inst_mode = INST_MODE_FORCED | INST_MODE_L | INST_MODE_IL; break; + } + return 1; +} + +static void +psect (int arg) +{ +#if defined(OBJ_ELF) + return obj_elf_section (arg); +#elif defined(OBJ_COFF) + return obj_coff_section (arg); +#else +#error Unknown object format +#endif +} + +static void +set_inss (int inss) +{ + int old_ins; + + if (!sdcc_compat) + as_fatal (_("Invalid directive")); + + old_ins = ins_ok; + ins_ok &= INS_MARCH_MASK; + ins_ok |= inss; + if (old_ins != ins_ok) + cpu_mode = 0; +} + +static void +ignore (int arg ATTRIBUTE_UNUSED) +{ + ignore_rest_of_line (); +} + +static void +area (int arg) +{ + char *p; + if (!sdcc_compat) + as_fatal (_("Invalid directive")); + for (p = input_line_pointer; *p && *p != '(' && *p != '\n'; p++) + ; + if (*p == '(') + { + *p = '\n'; + psect (arg); + *p++ = '('; + ignore_rest_of_line (); + } + else + psect (arg); +} + /* Port specific pseudo ops. */ const pseudo_typeS md_pseudo_table[] = { + { ".area", area, 0}, + { ".assume", assume, 0}, + { ".ez80", set_inss, INS_EZ80}, + { ".gbz80", set_inss, INS_GBZ80}, + { ".module", ignore, 0}, + { ".optsdcc", ignore, 0}, + { ".r800", set_inss, INS_R800}, + { ".set", s_set, 0}, + { ".z180", set_inss, INS_Z180}, + { ".z80", set_inss, INS_Z80}, { "db" , emit_data, 1}, - { "d24", cons, 3}, - { "d32", cons, 4}, - { "def24", cons, 3}, - { "def32", cons, 4}, + { "d24", z80_cons, 3}, + { "d32", z80_cons, 4}, + { "def24", z80_cons, 3}, + { "def32", z80_cons, 4}, { "defb", emit_data, 1}, + { "defm", emit_data, 1}, { "defs", s_space, 1}, /* Synonym for ds on some assemblers. */ - { "defw", cons, 2}, + { "defw", z80_cons, 2}, { "ds", s_space, 1}, /* Fill with bytes rather than words. */ - { "dw", cons, 2}, - { "psect", obj_coff_section, 0}, /* TODO: Translate attributes. */ + { "dw", z80_cons, 2}, + { "psect", psect, 0}, /* TODO: Translate attributes. */ { "set", 0, 0}, /* Real instruction on z80. */ { NULL, 0, 0 } } ; static table_t instab[] = { - { "adc", 0x88, 0x4A, emit_adc }, - { "add", 0x80, 0x09, emit_add }, - { "and", 0x00, 0xA0, emit_s }, - { "bit", 0xCB, 0x40, emit_bit }, - { "call", 0xCD, 0xC4, emit_jpcc }, - { "ccf", 0x00, 0x3F, emit_insn }, - { "cp", 0x00, 0xB8, emit_s }, - { "cpd", 0xED, 0xA9, emit_insn }, - { "cpdr", 0xED, 0xB9, emit_insn }, - { "cpi", 0xED, 0xA1, emit_insn }, - { "cpir", 0xED, 0xB1, emit_insn }, - { "cpl", 0x00, 0x2F, emit_insn }, - { "daa", 0x00, 0x27, emit_insn }, - { "dec", 0x0B, 0x05, emit_incdec }, - { "di", 0x00, 0xF3, emit_insn }, - { "djnz", 0x00, 0x10, emit_jr }, - { "ei", 0x00, 0xFB, emit_insn }, - { "ex", 0x00, 0x00, emit_ex}, - { "exx", 0x00, 0xD9, emit_insn }, - { "halt", 0x00, 0x76, emit_insn }, - { "im", 0xED, 0x46, emit_im }, - { "in", 0x00, 0x00, emit_in }, - { "inc", 0x03, 0x04, emit_incdec }, - { "ind", 0xED, 0xAA, emit_insn }, - { "indr", 0xED, 0xBA, emit_insn }, - { "ini", 0xED, 0xA2, emit_insn }, - { "inir", 0xED, 0xB2, emit_insn }, - { "jp", 0xC3, 0xC2, emit_jpcc }, - { "jr", 0x18, 0x20, emit_jrcc }, - { "ld", 0x00, 0x00, emit_ld }, - { "ldd", 0xED, 0xA8, emit_insn }, - { "lddr", 0xED, 0xB8, emit_insn }, - { "ldi", 0xED, 0xA0, emit_insn }, - { "ldir", 0xED, 0xB0, emit_insn }, - { "mulub", 0xED, 0xC5, emit_mulub }, /* R800 only. */ - { "muluw", 0xED, 0xC3, emit_muluw }, /* R800 only. */ - { "neg", 0xed, 0x44, emit_insn }, - { "nop", 0x00, 0x00, emit_insn }, - { "or", 0x00, 0xB0, emit_s }, - { "otdr", 0xED, 0xBB, emit_insn }, - { "otir", 0xED, 0xB3, emit_insn }, - { "out", 0x00, 0x00, emit_out }, - { "outd", 0xED, 0xAB, emit_insn }, - { "outi", 0xED, 0xA3, emit_insn }, - { "pop", 0x00, 0xC1, emit_pop }, - { "push", 0x00, 0xC5, emit_pop }, - { "res", 0xCB, 0x80, emit_bit }, - { "ret", 0xC9, 0xC0, emit_retcc }, - { "reti", 0xED, 0x4D, emit_insn }, - { "retn", 0xED, 0x45, emit_insn }, - { "rl", 0xCB, 0x10, emit_mr_z80 }, - { "rla", 0x00, 0x17, emit_insn }, - { "rlc", 0xCB, 0x00, emit_mr_z80 }, - { "rlca", 0x00, 0x07, emit_insn }, - { "rld", 0xED, 0x6F, emit_insn }, - { "rr", 0xCB, 0x18, emit_mr_z80 }, - { "rra", 0x00, 0x1F, emit_insn }, - { "rrc", 0xCB, 0x08, emit_mr_z80 }, - { "rrca", 0x00, 0x0F, emit_insn }, - { "rrd", 0xED, 0x67, emit_insn }, - { "rst", 0x00, 0xC7, emit_rst}, - { "sbc", 0x98, 0x42, emit_adc }, - { "scf", 0x00, 0x37, emit_insn }, - { "set", 0xCB, 0xC0, emit_bit }, - { "sla", 0xCB, 0x20, emit_mr_z80 }, - { "sli", 0xCB, 0x30, emit_mr_unport }, - { "sll", 0xCB, 0x30, emit_mr_unport }, - { "sra", 0xCB, 0x28, emit_mr_z80 }, - { "srl", 0xCB, 0x38, emit_mr_z80 }, - { "sub", 0x00, 0x90, emit_s }, - { "xor", 0x00, 0xA8, emit_s }, + { "adc", 0x88, 0x4A, emit_adc, INS_ALL }, + { "add", 0x80, 0x09, emit_add, INS_ALL }, + { "and", 0x00, 0xA0, emit_s, INS_ALL }, + { "bit", 0xCB, 0x40, emit_bit, INS_ALL }, + { "call", 0xCD, 0xC4, emit_jpcc, INS_ALL }, + { "ccf", 0x00, 0x3F, emit_insn, INS_ALL }, + { "cp", 0x00, 0xB8, emit_s, INS_ALL }, + { "cpd", 0xED, 0xA9, emit_insn, INS_NOT_GBZ80 }, + { "cpdr", 0xED, 0xB9, emit_insn, INS_NOT_GBZ80 }, + { "cpi", 0xED, 0xA1, emit_insn, INS_NOT_GBZ80 }, + { "cpir", 0xED, 0xB1, emit_insn, INS_NOT_GBZ80 }, + { "cpl", 0x00, 0x2F, emit_insn, INS_ALL }, + { "daa", 0x00, 0x27, emit_insn, INS_ALL }, + { "dec", 0x0B, 0x05, emit_incdec,INS_ALL }, + { "di", 0x00, 0xF3, emit_insn, INS_ALL }, + { "djnz", 0x00, 0x10, emit_jr, INS_NOT_GBZ80 }, + { "ei", 0x00, 0xFB, emit_insn, INS_ALL }, + { "ex", 0x00, 0x00, emit_ex, INS_NOT_GBZ80 }, + { "exx", 0x00, 0xD9, emit_insn, INS_NOT_GBZ80 }, + { "halt", 0x00, 0x76, emit_insn, INS_ALL }, + { "im", 0xED, 0x46, emit_im, INS_NOT_GBZ80 }, + { "in", 0x00, 0x00, emit_in, INS_NOT_GBZ80 }, + { "in0", 0xED, 0x00, emit_in0, INS_Z180|INS_EZ80 }, + { "inc", 0x03, 0x04, emit_incdec,INS_ALL }, + { "ind", 0xED, 0xAA, emit_insn, INS_NOT_GBZ80 }, + { "ind2", 0xED, 0x8C, emit_insn, INS_EZ80 }, + { "ind2r",0xED, 0x9C, emit_insn, INS_EZ80 }, + { "indm", 0xED, 0x8A, emit_insn, INS_EZ80 }, + { "indmr",0xED, 0x9A, emit_insn, INS_EZ80 }, + { "indr", 0xED, 0xBA, emit_insn, INS_NOT_GBZ80 }, + { "indrx",0xED, 0xCA, emit_insn, INS_EZ80 }, + { "ini", 0xED, 0xA2, emit_insn, INS_NOT_GBZ80 }, + { "ini2", 0xED, 0x84, emit_insn, INS_EZ80 }, + { "ini2r",0xED, 0x94, emit_insn, INS_EZ80 }, + { "inim", 0xED, 0x82, emit_insn, INS_EZ80 }, + { "inimr",0xED, 0x92, emit_insn, INS_EZ80 }, + { "inir", 0xED, 0xB2, emit_insn, INS_NOT_GBZ80 }, + { "inirx",0xED, 0xC2, emit_insn, INS_EZ80 }, + { "jp", 0xC3, 0xC2, emit_jpcc, INS_ALL }, + { "jr", 0x18, 0x20, emit_jrcc, INS_ALL }, + { "ld", 0x00, 0x00, emit_ld, INS_ALL }, + { "ldd", 0xED, 0xA8, emit_lddldi,INS_ALL }, /* GBZ80 has special meaning */ + { "lddr", 0xED, 0xB8, emit_insn, INS_NOT_GBZ80 }, + { "ldh", 0xE0, 0x00, emit_ldh, INS_GBZ80 }, + { "ldhl", 0xE0, 0x00, emit_ldh, INS_GBZ80 }, + { "ldi", 0xED, 0xA0, emit_lddldi,INS_ALL }, /* GBZ80 has special meaning */ + { "ldir", 0xED, 0xB0, emit_insn, INS_NOT_GBZ80 }, + { "lea", 0xED, 0x02, emit_lea, INS_EZ80 }, + { "mlt", 0xED, 0x4C, emit_mlt, INS_Z180|INS_EZ80 }, + { "mulub",0xED, 0xC5, emit_mulub,INS_R800 }, + { "muluw",0xED, 0xC3, emit_muluw,INS_R800 }, + { "neg", 0xed, 0x44, emit_insn, INS_NOT_GBZ80 }, + { "nop", 0x00, 0x00, emit_insn, INS_ALL }, + { "or", 0x00, 0xB0, emit_s, INS_ALL }, + { "otd2r",0xED, 0xBC, emit_insn, INS_EZ80 }, + { "otdm", 0xED, 0x8B, emit_insn, INS_Z180|INS_EZ80 }, + { "otdmr",0xED, 0x9B, emit_insn, INS_Z180|INS_EZ80 }, + { "otdr", 0xED, 0xBB, emit_insn, INS_NOT_GBZ80 }, + { "otdrx",0xED, 0xCB, emit_insn, INS_EZ80 }, + { "oti2r",0xED, 0xB4, emit_insn, INS_EZ80 }, + { "otim", 0xED, 0x83, emit_insn, INS_Z180|INS_EZ80 }, + { "otimr",0xED, 0x93, emit_insn, INS_Z180|INS_EZ80 }, + { "otir", 0xED, 0xB3, emit_insn, INS_NOT_GBZ80 }, + { "otirx",0xED, 0xC3, emit_insn, INS_EZ80 }, + { "out", 0x00, 0x00, emit_out, INS_NOT_GBZ80 }, + { "out0", 0xED, 0x01, emit_out0, INS_Z180|INS_EZ80 }, + { "outd", 0xED, 0xAB, emit_insn, INS_NOT_GBZ80 }, + { "outd2",0xED, 0xAC, emit_insn, INS_EZ80 }, + { "outi", 0xED, 0xA3, emit_insn, INS_NOT_GBZ80 }, + { "outi2",0xED, 0xA4, emit_insn, INS_EZ80 }, + { "pea", 0xED, 0x65, emit_pea, INS_EZ80 }, + { "pop", 0x00, 0xC1, emit_pop, INS_ALL }, + { "push", 0x00, 0xC5, emit_pop, INS_ALL }, + { "res", 0xCB, 0x80, emit_bit, INS_ALL }, + { "ret", 0xC9, 0xC0, emit_retcc,INS_ALL }, + { "reti", 0xED, 0x4D, emit_reti, INS_ALL }, /*GBZ80 has its own opcode for it*/ + { "retn", 0xED, 0x45, emit_insn, INS_NOT_GBZ80 }, + { "rl", 0xCB, 0x10, emit_mr, INS_ALL }, + { "rla", 0x00, 0x17, emit_insn, INS_ALL }, + { "rlc", 0xCB, 0x00, emit_mr, INS_ALL }, + { "rlca", 0x00, 0x07, emit_insn, INS_ALL }, + { "rld", 0xED, 0x6F, emit_insn, INS_NOT_GBZ80 }, + { "rr", 0xCB, 0x18, emit_mr, INS_ALL }, + { "rra", 0x00, 0x1F, emit_insn, INS_ALL }, + { "rrc", 0xCB, 0x08, emit_mr, INS_ALL }, + { "rrca", 0x00, 0x0F, emit_insn, INS_ALL }, + { "rrd", 0xED, 0x67, emit_insn, INS_NOT_GBZ80 }, + { "rsmix",0xED, 0x7E, emit_insn, INS_EZ80 }, + { "rst", 0x00, 0xC7, emit_rst, INS_ALL }, + { "sbc", 0x98, 0x42, emit_adc, INS_ALL }, + { "scf", 0x00, 0x37, emit_insn, INS_ALL }, + { "set", 0xCB, 0xC0, emit_bit, INS_ALL }, + { "sla", 0xCB, 0x20, emit_mr, INS_ALL }, + { "sli", 0xCB, 0x30, emit_mr, INS_SLI }, + { "sll", 0xCB, 0x30, emit_mr, INS_SLI }, + { "slp", 0xED, 0x76, emit_insn, INS_Z180|INS_EZ80 }, + { "sra", 0xCB, 0x28, emit_mr, INS_ALL }, + { "srl", 0xCB, 0x38, emit_mr, INS_ALL }, + { "stmix",0xED, 0x7D, emit_insn, INS_EZ80 }, + { "stop", 0x00, 0x10, emit_insn, INS_GBZ80 }, + { "sub", 0x00, 0x90, emit_s, INS_ALL }, + { "swap", 0xCB, 0x30, emit_mr, INS_GBZ80 }, + { "tst", 0xED, 0x04, emit_tst, INS_Z180|INS_EZ80 }, + { "tstio",0xED, 0x74, emit_tstio,INS_Z180|INS_EZ80 }, + { "xor", 0x00, 0xA8, emit_s, INS_ALL }, } ; void @@ -1936,9 +3236,10 @@ md_assemble (char *str) table_t *insp; err_flag = 0; + inst_mode = cpu_mode ? (INST_MODE_L | INST_MODE_IL) : (INST_MODE_S | INST_MODE_IS); old_ptr = input_line_pointer; p = skip_space (str); - for (i = 0; (i < BUFLEN) && (ISALPHA (*p));) + for (i = 0; (i < BUFLEN) && (ISALPHA (*p) || ISDIGIT (*p));) buf[i++] = TOLOWER (*p++); if (i == BUFLEN) @@ -1947,18 +3248,27 @@ md_assemble (char *str) buf[BUFLEN-1] = 0; as_bad (_("Unknown instruction '%s'"), buf); } - else if ((*p) && (!ISSPACE (*p))) - as_bad (_("syntax error")); else { + if ((*p) && (!ISSPACE (*p))) + { + if (*p != '.' || !(ins_ok & INS_EZ80) || !assemble_suffix(&p)) + { + as_bad (_("syntax error")); + goto end; + } + } buf[i] = 0; p = skip_space (p); key = buf; insp = bsearch (&key, instab, ARRAY_SIZE (instab), sizeof (instab[0]), key_cmp); - if (!insp) - as_bad (_("Unknown instruction '%s'"), buf); + if (!insp || (insp->inss && !(insp->inss & ins_ok))) + { + as_bad (_("Unknown instruction '%s'"), buf); + *frag_more(1) = 0; + } else { p = insp->fp (insp->prefix, insp->opcode, p); @@ -1968,6 +3278,7 @@ md_assemble (char *str) *p); } } +end: input_line_pointer = old_ptr; } @@ -2013,6 +3324,34 @@ md_apply_fix (fixS * fixP, valueT* valP, segT seg ATTRIBUTE_UNUSED) } break; + case BFD_RELOC_Z80_BYTE0: + *p_lit++ = val; + fixP->fx_no_overflow = 1; + if (fixP->fx_addsy == NULL) + fixP->fx_done = 1; + break; + + case BFD_RELOC_Z80_BYTE1: + *p_lit++ = (val >> 8); + fixP->fx_no_overflow = 1; + if (fixP->fx_addsy == NULL) + fixP->fx_done = 1; + break; + + case BFD_RELOC_Z80_BYTE2: + *p_lit++ = (val >> 16); + fixP->fx_no_overflow = 1; + if (fixP->fx_addsy == NULL) + fixP->fx_done = 1; + break; + + case BFD_RELOC_Z80_BYTE3: + *p_lit++ = (val >> 24); + fixP->fx_no_overflow = 1; + if (fixP->fx_addsy == NULL) + fixP->fx_done = 1; + break; + case BFD_RELOC_8: if (val > 255 || val < -128) as_warn_where (fixP->fx_file, fixP->fx_line, _("overflow")); @@ -2022,6 +3361,15 @@ md_apply_fix (fixS * fixP, valueT* valP, segT seg ATTRIBUTE_UNUSED) fixP->fx_done = 1; break; + case BFD_RELOC_Z80_WORD1: + *p_lit++ = (val >> 16); + *p_lit++ = (val >> 24); + fixP->fx_no_overflow = 1; + if (fixP->fx_addsy == NULL) + fixP->fx_done = 1; + break; + + case BFD_RELOC_Z80_WORD0: case BFD_RELOC_16: *p_lit++ = val; *p_lit++ = (val >> 8); @@ -2086,3 +3434,236 @@ tc_gen_reloc (asection *seg ATTRIBUTE_UNUSED , fixS *fixp) return reloc; } + +int +z80_tc_label_is_local (const char *name) +{ + const char *n; + const char *p; + if (local_label_prefix == NULL) + return 0; + for (p = local_label_prefix, n = name; *p && *n && *n == *p; p++, n++) + ; + return *p == '\0'; +} + +/* Parse floating point number from string and compute mantissa and + exponent. Mantissa is normalized. +*/ +#define EXP_MIN -0x10000 +#define EXP_MAX 0x10000 +static int +str_to_broken_float (bfd_boolean *signP, bfd_uint64_t *mantissaP, int *expP) +{ + char *p; + bfd_boolean sign; + bfd_uint64_t mantissa = 0; + int exponent = 0; + int i; + + p = (char*)skip_space (input_line_pointer); + sign = (*p == '-'); + *signP = sign; + if (sign || *p == '+') + ++p; + if (strncasecmp(p, "NaN", 3) == 0) + { + *mantissaP = 0; + *expP = 0; + input_line_pointer = p + 3; + return 1; + } + if (strncasecmp(p, "inf", 3) == 0) + { + *mantissaP = 1ull << 63; + *expP = EXP_MAX; + input_line_pointer = p + 3; + return 1; + } + for (; ISDIGIT(*p); ++p) + { + if (mantissa >> 60) + { + if (*p >= '5') + mantissa++; + break; + } + mantissa = mantissa * 10 + (*p - '0'); + } + /* skip non-significant digits */ + for (; ISDIGIT(*p); ++p) + exponent++; + + if (*p == '.') + { + p++; + if (!exponent) /* if no precission overflow */ + { + for (; ISDIGIT(*p); ++p, --exponent) + { + if (mantissa >> 60) + { + if (*p >= '5') + mantissa++; + break; + } + mantissa = mantissa * 10 + (*p - '0'); + } + } + for (; ISDIGIT(*p); ++p) + ; + } + if (*p == 'e' || *p == 'E') + { + int es; + int t = 0; + ++p; + es = (*p == '-'); + if (es || *p == '+') + p++; + for (; ISDIGIT(*p); ++p) + { + if (t < 100) + t = t * 10 + (*p - '0'); + } + exponent += (es) ? -t : t; + } + if (ISALNUM(*p) || *p == '.') + return 0; + input_line_pointer = p; + if (mantissa == 0) + { + *mantissaP = 1ull << 63; + *expP = EXP_MIN; + return 1; /* result is 0 */ + } + /* normalization */ + for (; mantissa <= ~0ull/10; --exponent) + mantissa *= 10; + /* + now we have sign, mantissa, and signed decimal exponent + need to recompute to binary exponent + */ + for (i = 64; exponent > 0; --exponent) + { + /* be sure that no integer overflow */ + while (mantissa > ~0ull/10) + { + mantissa >>= 1; + i += 1; + } + mantissa *= 10; + } + for (; exponent < 0; ++exponent) + { + while (!(mantissa >> 63)) + { + mantissa <<= 1; + i -= 1; + } + mantissa /= 10; + } + /* normalization */ + for (; !(mantissa >> 63); --i) + mantissa <<= 1; + *mantissaP = mantissa; + *expP = i; + return 1; +} + +static const char * +str_to_zeda32(char *litP, int *sizeP) +{ + bfd_uint64_t mantissa; + bfd_boolean sign; + int exponent; + unsigned i; + + *sizeP = 4; + if (!str_to_broken_float (&sign, &mantissa, &exponent)) + return _("invalid syntax"); + /* I do not know why decrement is needed */ + --exponent; + /* shift by 39 bits right keeping 25 bit mantissa for rounding */ + mantissa >>= 39; + /* do rounding */ + ++mantissa; + /* make 24 bit mantissa */ + mantissa >>= 1; + /* check for overflow */ + if (mantissa >> 24) + { + mantissa >>= 1; + ++exponent; + } + /* check for 0 */ + if (exponent < -127) + { + exponent = -128; + mantissa = 0; + } + else if (exponent > 127) + { + exponent = -128; + mantissa = sign ? 0xc00000 : 0x400000; + } + else if (mantissa == 0) + { + exponent = -128; + mantissa = 0x200000; + } + else if (!sign) + mantissa &= (1ull << 23) - 1; + for (i = 0; i < 24; i += 8) + *litP++ = (char)(mantissa >> i); + *litP = (char)(0x80 + exponent); + return NULL; +} + +/* + Math48 by Anders Hejlsberg support. + Mantissa is 39 bits wide, exponent 8 bit wide. + Format is: + bit 47: sign + bit 46-8: normalized mantissa (bits 38-0, bit39 assumed to be 1) + bit 7-0: exponent+128 (0 - value is null) + MIN: 2.938735877e-39 + MAX: 1.701411835e+38 +*/ +static const char * +str_to_float48(char *litP, int *sizeP) +{ + bfd_uint64_t mantissa; + bfd_boolean sign; + int exponent; + unsigned i; + + *sizeP = 6; + if (!str_to_broken_float (&sign, &mantissa, &exponent)) + return _("invalid syntax"); + /* shift by 23 bits right keeping 41 bit mantissa for rounding */ + mantissa >>= 23; + /* do rounding */ + ++mantissa; + /* make 40 bit mantissa */ + mantissa >>= 1; + /* check for overflow */ + if (mantissa >> 40) + { + mantissa >>= 1; + ++exponent; + } + if (exponent < -127) + { + memset (litP, 0, 6); + return NULL; + } + if (exponent > 127) + return _("overflow"); + if (!sign) + mantissa &= (1ull << 39) - 1; + *litP++ = (char)(0x80 + exponent); + for (i = 0; i < 40; i += 8) + *litP++ = (char)(mantissa >> i); + return NULL; +} diff --git a/gas/config/tc-z80.h b/gas/config/tc-z80.h index 83b09af..5749027 100644 --- a/gas/config/tc-z80.h +++ b/gas/config/tc-z80.h @@ -24,6 +24,9 @@ #define TC_Z80 #define TARGET_ARCH bfd_arch_z80 +#ifndef OBJ_COFF +#define TARGET_FORMAT "elf32-z80" +#endif #define BFD_ARCH TARGET_ARCH #define COFF_MAGIC 0x5A80 #define TARGET_MACH 0 @@ -76,7 +79,7 @@ extern void z80_cons_fix_new (fragS *, int, int, expressionS *); /* Values passed to md_apply_fix3 don't include the symbol value. */ #define MD_APPLY_SYM_VALUE(FIX) 0 -#define LISTING_WORD_SIZE 2 +#define LISTING_WORD_SIZE 1 /* A single '=' is accepted as a comparison operator. */ #define O_SINGLE_EQ O_eq @@ -84,14 +87,15 @@ extern void z80_cons_fix_new (fragS *, int, int, expressionS *); /* A '$' is used to refer to the current location or as a hex. prefix. */ #define DOLLAR_DOT #define DOLLAR_AMBIGU 1 +#define LOCAL_LABEL_PREFIX '.' #define LOCAL_LABELS_FB 1 +#define LOCAL_LABELS_DOLLAR 1 #define LITERAL_PREFIXPERCENT_BIN #define NUMBERS_WITH_SUFFIX 1 #define NO_PSEUDO_DOT 1 /* We allow single quotes to delimit character constants as well, but it is cleaner to handle that in tc-z80.c. */ #define SINGLE_QUOTE_STRINGS -#define NO_STRING_ESCAPES /* An `.lcomm' directive with no explicit alignment parameter will use this macro to set P2VAR to the alignment that a request for @@ -106,4 +110,10 @@ extern void z80_cons_fix_new (fragS *, int, int, expressionS *); we use to identify registers. */ #define md_register_arithmetic 0 +#define TC_LABEL_IS_LOCAL z80_tc_label_is_local +extern int z80_tc_label_is_local (const char *name); + +#define elf_tc_final_processing z80_elf_final_processing +extern void z80_elf_final_processing (void); + #endif diff --git a/gas/doc/as.texi b/gas/doc/as.texi index 8957f20..15b33fd 100644 --- a/gas/doc/as.texi +++ b/gas/doc/as.texi @@ -630,7 +630,10 @@ gcc(1), ld(1), and the Info entries for @file{binutils} and @file{ld}. @ifset Z80 @emph{Target Z80 options:} - [@b{-z80}] [@b{-r800}] + [@b{-z80}]|[@b{-z180}]|[@b{-r800}]|[@b{-ez80}]|[@b{-ez80-adl}] + [@b{-strict}]|[@b{-full}] + [@b{-with-inst=@var{INST}[,...]}] [@b{-Wnins @var{INST}[,...]}] + [@b{-without-inst=@var{INST}[,...]}] [@b{-Fins @var{INST}[,...]}] [@b{ -ignore-undocumented-instructions}] [@b{-Wnud}] [@b{ -ignore-unportable-instructions}] [@b{-Wnup}] [@b{ -warn-undocumented-instructions}] [@b{-Wud}] @@ -1943,10 +1946,34 @@ Xtensa processor. The following options are available when @value{AS} is configured for a Z80 family processor. @table @gcctabopt + @item -z80 Assemble for Z80 processor. @item -r800 Assemble for R800 processor. +@item -z180 +Assemble for Z180 processor. +@item -ez80 +Assemble for eZ80 processor in Z80 memory mode by default. +@item -ez80-adl +Assemble for eZ80 processor in ADL memory mode by default. + +@item @code{-colonless} +Accept colonless labels. All names at line begin are treated as labels. +@item @code{-sdcc} +Accept assembler code produces by SDCC. + +@item @code{-strict} +Accept documented instructions only. +@item @code{-full} +Accept all known Z80 instructions. +@item @code{-with-inst=INST[,...]} +@itemx @code{-Wnins INST[,...]} +Enable specified undocumented instruction(s). +@item @code{-without-inst=INST[,...]} +@itemx @code{-Fins INST[,...]} +Disable specified undocumented instruction(s). + @item -ignore-undocumented-instructions @itemx -Wnud Assemble undocumented Z80 instructions that also work on R800 without warning. @@ -1966,6 +1993,22 @@ Treat all undocumented instructions as errors. @itemx -Fup Treat undocumented Z80 instructions that do not work on R800 as errors. @end table + +Folowing undocumented instructions may be enabled/disabled by +@code{-with-inst}/@code{-without-inst}: +@table @gcctabopt +@item @code{idx-reg-halves} +All operations with halves of index registers (IXL, IXH, IYL, IYH). +@item @code{sli} +SLI or SLL instruction. +@item @code{op-ii-ld} +Istructions like @code{<op> (<ii>+<d>),<r>}, where @code{<op>} +is shift or bit manipulation instruction (RLC, SLA, SET, RES...). +@item @code{in-f-c} +Instruction @code{IN F,(C)}. +@item @code{out-c-0} +Instruction @code{OUT (C),0} +@end table @end ifset @c man end @@ -6770,7 +6813,7 @@ If you @code{.set} a global symbol, the value stored in the object file is the last value stored into it. @ifset Z80 -On Z80 @code{set} is a real instruction, use +On Z80 @code{set} is a real instruction, use @code{.set} or @samp{@var{symbol} defl @var{expression}} instead. @end ifset diff --git a/gas/doc/c-z80.texi b/gas/doc/c-z80.texi index b3d3030..a436646 100644 --- a/gas/doc/c-z80.texi +++ b/gas/doc/c-z80.texi @@ -27,41 +27,90 @@ @section Options @cindex Z80 options @cindex options for Z80 -The Zilog Z80 and Ascii R800 version of @code{@value{AS}} have a few machine -dependent options. @table @option @cindex @code{-z80} command-line option, Z80 @item -z80 -Produce code for the Z80 processor. There are additional options to -request warnings and error messages for undocumented instructions. -@item -ignore-undocumented-instructions -@itemx -Wnud +Produce code for the Z80 processor. By default accepted undocumented +operations with halves of index registers (IXL, IXH, IYL, IYH) and +instuction IN F,(C). Other useful undocumented instructions produces +warnings. Undocumented instructions may not work on some CPUs, use +them on your own risk. + +@cindex @code{-r800} command-line option, R800 +@item -r800 +Produce code for the R800 processor. + +@cindex @code{-z180} command-line option, Z180 +@item -z180 +Produce code for the Z180 processor. + +@cindex @code{-ez80} command-line option, eZ80 +@item -ez80 +Produce code for the eZ80 processor in Z80 memory mode by default. + +@cindex @code{-ez80-adl} command-line option, eZ80 +@item -ez80-adl +Produce code for the eZ80 processor in ADL memory mode by default. + +@cindex Compatibility options +@item @code{-colonless} +Accept colonless labels. All names at line begin are treated as labels. + +@item @code{-sdcc} +Accept assembler code produces by SDCC. + +@cindex Undocumented instruction control +@item @code{-strict} +Accept documented instructions only. + +@item @code{-full} +Accept all known Z80 instructions. + +@item @code{-with-inst=INST[,...]} +@itemx @code{-Wnins INST[,...]} +Enable specified undocumented instruction(s). + +@item @code{-without-inst=INST[,...]} +@itemx @code{-Fins INST[,...]} +Disable specified undocumented instruction(s). + +@cindex Obsolete options +@item @code{-ignore-undocumented-instructions} +@itemx @code{-Wnud} Silently assemble undocumented Z80-instructions that have been adopted -as documented R800-instructions. -@item -ignore-unportable-instructions -@itemx -Wnup +as documented R800-instructions . +@item @code{-ignore-unportable-instructions} +@itemx @code{-Wnup} Silently assemble all undocumented Z80-instructions. -@item -warn-undocumented-instructions -@itemx -Wud +@item @code{-warn-undocumented-instructions} +@itemx @code{-Wud} Issue warnings for undocumented Z80-instructions that work on R800, do not assemble other undocumented instructions without warning. -@item -warn-unportable-instructions -@itemx -Wup +@item @code{-warn-unportable-instructions} +@itemx @code{-Wup} Issue warnings for other undocumented Z80-instructions, do not treat any undocumented instructions as errors. -@item -forbid-undocumented-instructions -@itemx -Fud +@item @code{-forbid-undocumented-instructions} +@itemx @code{-Fud} Treat all undocumented z80-instructions as errors. @item -forbid-unportable-instructions -@itemx -Fup +@itemx @code{-Fup} Treat undocumented z80-instructions that do not work on R800 as errors. +@end table -@cindex @code{-r800} command-line option, Z80 -@item -r800 -Produce code for the R800 processor. The assembler does not support -undocumented instructions for the R800. -In line with common practice, @code{@value{AS}} uses Z80 instruction names -for the R800 processor, as far as they exist. +Known undocumented instructions. +@table @option +@cindex Known undocumented instructions +@item @code{idx-reg-halves} +All operations with halves of index registers (IXL, IXH, IYL, IYH). +@item @code{sli} +SLI or SLL instruction. Same as @code{SLA r; INC r}. +@item @code{op-ii-ld} +Istructions like @code{<op> (<ii>+<d>),<r>}. For example: @code{RL (IX+5),C} +@item @code{in-f-c} +Instruction @code{IN F,(C)}. +@item @code{out-c-0} +Instruction @code{OUT (C),0} @end table @cindex Z80 Syntax @@ -158,6 +207,11 @@ compatibility with other assemblers. These are the additional directives in @code{@value{AS}} for the Z80: @table @code +@item assume @var{ADL}@samp{=}@var{expression} +Set ADL status for eZ80. Non-null value enable compilation ADL mode else +used Z80 mode. ADL and Z80 mode produces incompatible object code. Mixing +both of them within one binary may lead problems with disassembler. + @item db @var{expression}|@var{string}[,@var{expression}|@var{string}...] @itemx defb @var{expression}|@var{string}[,@var{expression}|@var{string}...] For each @var{string} the characters are copied to the object file, for @@ -192,9 +246,6 @@ These directives set the value of @var{symbol} to @var{expression}. If @code{equ} is used, it is an error if @var{symbol} is already defined. Symbols defined with @code{equ} are not protected from redefinition. -@item set -This is a normal instruction on Z80, and not an assembler directive. - @item psect @var{name} A synonym for @xref{Section}, no second argument should be given. @ignore @@ -223,18 +274,19 @@ The section is marked as read only. @node Z80 Opcodes @section Opcodes -In line with common practice, Z80 mnemonics are used for both the Z80 and -the R800. +In line with common practice, Z80 mnemonics are used for the Z80, +the Z180, eZ80 and the R800. In many instructions it is possible to use one of the half index registers (@samp{ixl},@samp{ixh},@samp{iyl},@samp{iyh}) in stead of an 8-bit general purpose register. This yields instructions that are -documented on the R800 and undocumented on the Z80. -Similarly @code{in f,(c)} is documented on the R800 and undocumented on -the Z80. +documented on the eZ80 and the R800, undocumented on the Z80 and +unsupported on the Z180. +Similarly @code{in f,(c)} is documented on the R800, undocumented on +the Z80 and unsupported on the Z180 and the eZ80. The assembler also supports the following undocumented Z80-instructions, -that have not been adopted in the R800 instruction set: +that have not been adopted in any other instruction set: @table @code @item out (c),0 Sends zero to the port pointed to by register c. @@ -266,3 +318,6 @@ As above, but with @samp{iy} instead of @samp{ix}. The web site at @uref{http://www.z80.info} is a good starting place to find more information on programming the Z80. +You may enable or disable any of these instructions for any target CPU +even this instruction is not supported by any real CPU of this type. +Useful for custom CPU cores. diff --git a/gas/po/gas.pot b/gas/po/gas.pot index 6a2a45d..21dc23c 100644 --- a/gas/po/gas.pot +++ b/gas/po/gas.pot @@ -3,13 +3,13 @@ # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. # -#: config/tc-arm.c:676 +#: config/tc-arm.c:708 #, fuzzy msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: bug-binutils@gnu.org\n" -"POT-Creation-Date: 2019-01-19 16:31+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 <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -57,26 +57,26 @@ msgstr "" msgid "end of file in comment; newline inserted" msgstr "" -#: as.c:163 +#: as.c:170 msgid "missing emulation mode name" msgstr "" -#: as.c:178 +#: as.c:185 #, c-format msgid "unrecognized emulation name `%s'" msgstr "" -#: as.c:225 +#: as.c:232 #, c-format msgid "GNU assembler version %s (%s) using BFD version %s\n" msgstr "" -#: as.c:237 +#: as.c:244 #, c-format msgid "Usage: %s [option...] [asmfile...]\n" msgstr "" -#: as.c:239 +#: as.c:246 #, c-format msgid "" "Options:\n" @@ -93,12 +93,12 @@ msgid "" " \t =FILE list to FILE (must be last sub-option)\n" msgstr "" -#: as.c:253 +#: as.c:260 #, c-format msgid " --alternate initially turn on alternate macro syntax\n" msgstr "" -#: as.c:256 +#: as.c:263 #, c-format msgid "" " --compress-debug-sections[={none|zlib|zlib-gnu|zlib-gabi}]\n" @@ -106,213 +106,213 @@ msgid "" "[default]\n" msgstr "" -#: as.c:259 +#: as.c:266 #, c-format msgid "" " --nocompress-debug-sections\n" " don't compress DWARF debug sections\n" msgstr "" -#: as.c:263 +#: as.c:270 #, c-format msgid "" " --compress-debug-sections[={none|zlib|zlib-gnu|zlib-gabi}]\n" " compress DWARF debug sections using zlib\n" msgstr "" -#: as.c:266 +#: as.c:273 #, c-format msgid "" " --nocompress-debug-sections\n" " don't compress DWARF debug sections [default]\n" msgstr "" -#: as.c:270 +#: as.c:277 #, c-format msgid " -D produce assembler debugging messages\n" msgstr "" -#: as.c:272 +#: as.c:279 #, c-format msgid "" " --debug-prefix-map OLD=NEW\n" " map OLD to NEW in debug information\n" msgstr "" -#: as.c:275 +#: as.c:282 #, c-format msgid " --defsym SYM=VAL define symbol SYM to given value\n" msgstr "" -#: as.c:291 +#: as.c:298 #, c-format msgid " emulate output (default %s)\n" msgstr "" -#: as.c:296 +#: as.c:303 #, c-format msgid " --execstack require executable stack for this object\n" msgstr "" -#: as.c:298 +#: as.c:305 #, c-format msgid "" " --noexecstack don't require executable stack for this object\n" msgstr "" -#: as.c:300 +#: as.c:307 #, c-format msgid "" " --size-check=[error|warning]\n" "\t\t\t ELF .size directive check (default --size-check=error)\n" msgstr "" -#: as.c:303 +#: as.c:310 #, c-format msgid " --elf-stt-common=[no|yes] " msgstr "" -#: as.c:306 as.c:317 config/tc-i386.c:11548 config/tc-i386.c:11568 +#: as.c:313 as.c:324 config/tc-i386.c:12775 config/tc-i386.c:12795 #, c-format msgid "(default: yes)\n" msgstr "" -#: as.c:308 as.c:319 config/tc-i386.c:11550 config/tc-i386.c:11570 +#: as.c:315 as.c:326 config/tc-i386.c:12777 config/tc-i386.c:12797 #, c-format msgid "(default: no)\n" msgstr "" -#: as.c:309 +#: as.c:316 #, c-format msgid "" " generate ELF common symbols with STT_COMMON type\n" msgstr "" -#: as.c:311 +#: as.c:318 #, c-format msgid " --sectname-subst enable section name substitution sequences\n" msgstr "" -#: as.c:314 +#: as.c:321 #, c-format msgid " --generate-missing-build-notes=[no|yes] " msgstr "" -#: as.c:321 +#: as.c:328 #, c-format msgid "" " generate GNU Build notes if none are present in " "the input\n" msgstr "" -#: as.c:325 +#: as.c:332 #, c-format msgid " -f skip whitespace and comment preprocessing\n" msgstr "" -#: as.c:327 +#: as.c:334 #, c-format msgid " -g --gen-debug generate debugging information\n" msgstr "" -#: as.c:329 +#: as.c:336 #, c-format msgid " --gstabs generate STABS debugging information\n" msgstr "" -#: as.c:331 +#: as.c:338 #, c-format msgid "" " --gstabs+ generate STABS debug info with GNU extensions\n" msgstr "" -#: as.c:333 +#: as.c:340 #, c-format msgid " --gdwarf-2 generate DWARF2 debugging information\n" msgstr "" -#: as.c:335 +#: as.c:342 #, c-format msgid "" " --gdwarf-sections generate per-function section names for DWARF line " "information\n" msgstr "" -#: as.c:337 +#: as.c:344 #, c-format msgid " --hash-size=<value> set the hash table size close to <value>\n" msgstr "" -#: as.c:339 +#: as.c:346 #, c-format msgid " --help show this message and exit\n" msgstr "" -#: as.c:341 +#: as.c:348 #, c-format msgid " --target-help show target specific options\n" msgstr "" -#: as.c:343 +#: as.c:350 #, c-format msgid "" " -I DIR add DIR to search list for .include directives\n" msgstr "" -#: as.c:345 +#: as.c:352 #, c-format msgid " -J don't warn about signed overflow\n" msgstr "" -#: as.c:347 +#: as.c:354 #, c-format msgid "" " -K warn when differences altered for long " "displacements\n" msgstr "" -#: as.c:349 +#: as.c:356 #, c-format msgid " -L,--keep-locals keep local symbols (e.g. starting with `L')\n" msgstr "" -#: as.c:351 +#: as.c:358 #, c-format msgid " -M,--mri assemble in MRI compatibility mode\n" msgstr "" -#: as.c:353 +#: as.c:360 #, c-format msgid "" " --MD FILE write dependency information in FILE (default " "none)\n" msgstr "" -#: as.c:355 +#: as.c:362 #, c-format msgid " -nocpp ignored\n" msgstr "" -#: as.c:357 +#: as.c:364 #, c-format msgid "" " -no-pad-sections do not pad the end of sections to alignment " "boundaries\n" msgstr "" -#: as.c:359 +#: as.c:366 #, c-format msgid "" " -o OBJFILE name the object-file output OBJFILE (default a." "out)\n" msgstr "" -#: as.c:361 +#: as.c:368 #, c-format msgid " -R fold data section into text section\n" msgstr "" -#: as.c:363 +#: as.c:370 #, c-format msgid "" " --reduce-memory-overheads \n" @@ -320,44 +320,44 @@ msgid "" " assembly times\n" msgstr "" -#: as.c:367 +#: as.c:374 #, c-format msgid "" " --statistics print various measured statistics from execution\n" msgstr "" -#: as.c:369 +#: as.c:376 #, c-format msgid " --strip-local-absolute strip local absolute symbols\n" msgstr "" -#: as.c:371 +#: as.c:378 #, c-format msgid "" " --traditional-format Use same format as native assembler when possible\n" msgstr "" -#: as.c:373 +#: as.c:380 #, c-format msgid " --version print assembler version number and exit\n" msgstr "" -#: as.c:375 +#: as.c:382 #, c-format msgid " -W --no-warn suppress warnings\n" msgstr "" -#: as.c:377 +#: as.c:384 #, c-format msgid " --warn don't suppress warnings\n" msgstr "" -#: as.c:379 +#: as.c:386 #, c-format msgid " --fatal-warnings treat warnings as errors\n" msgstr "" -#: as.c:382 +#: as.c:389 #, c-format msgid "" " --itbl INSTTBL extend instruction set to include instructions\n" @@ -365,22 +365,22 @@ msgid "" "INSTTBL\n" msgstr "" -#: as.c:386 +#: as.c:393 #, c-format msgid " -w ignored\n" msgstr "" -#: as.c:388 +#: as.c:395 #, c-format msgid " -X ignored\n" msgstr "" -#: as.c:390 +#: as.c:397 #, c-format msgid " -Z generate object file even after errors\n" msgstr "" -#: as.c:392 +#: as.c:399 #, c-format msgid "" " --listing-lhs-width set the width in words of the output data column " @@ -388,7 +388,7 @@ msgid "" " the listing\n" msgstr "" -#: as.c:395 +#: as.c:402 #, c-format msgid "" " --listing-lhs-width2 set the width in words of the continuation lines\n" @@ -397,47 +397,47 @@ msgid "" " the width of the first line\n" msgstr "" -#: as.c:399 +#: as.c:406 #, c-format msgid "" " --listing-rhs-width set the max width in characters of the lines from\n" " the source file\n" msgstr "" -#: as.c:402 +#: as.c:409 #, c-format msgid "" " --listing-cont-lines set the maximum number of continuation lines used\n" " for the output data column of the listing\n" msgstr "" -#: as.c:405 +#: as.c:412 #, c-format msgid " @FILE read options from FILE\n" msgstr "" -#: as.c:413 +#: as.c:420 #, c-format msgid "Report bugs to %s\n" msgstr "" -#: as.c:635 +#: as.c:644 #, c-format msgid "unrecognized option -%c%s" msgstr "" #. This output is intended to follow the GNU standards document. -#: as.c:677 +#: as.c:686 #, c-format msgid "GNU assembler %s\n" msgstr "" -#: as.c:678 +#: as.c:687 #, c-format -msgid "Copyright (C) 2019 Free Software Foundation, Inc.\n" +msgid "Copyright (C) 2020 Free Software Foundation, Inc.\n" msgstr "" -#: as.c:679 +#: as.c:688 #, c-format msgid "" "This program is free software; you may redistribute it under the terms of\n" @@ -445,132 +445,137 @@ msgid "" "This program has absolutely no warranty.\n" msgstr "" -#: as.c:684 +#: as.c:693 #, c-format msgid "" "This assembler was configured for a target of `%s' and default,\n" "cpu type `%s'.\n" msgstr "" -#: as.c:688 +#: as.c:697 #, c-format msgid "This assembler was configured for a target of `%s'.\n" msgstr "" -#: as.c:696 +#: as.c:705 msgid "multiple emulation names specified" msgstr "" -#: as.c:698 +#: as.c:707 msgid "emulations not handled in this configuration" msgstr "" -#: as.c:703 +#: as.c:712 #, c-format msgid "alias = %s\n" msgstr "" -#: as.c:704 +#: as.c:713 #, c-format msgid "canonical = %s\n" msgstr "" -#: as.c:705 +#: as.c:714 #, c-format msgid "cpu-type = %s\n" msgstr "" -#: as.c:707 +#: as.c:716 #, c-format msgid "format = %s\n" msgstr "" -#: as.c:710 +#: as.c:719 #, c-format msgid "bfd-target = %s\n" msgstr "" -#: as.c:727 +#: as.c:736 #, c-format msgid "Invalid --compress-debug-sections option: `%s'" msgstr "" -#: as.c:730 +#: as.c:739 #, c-format msgid "--compress-debug-sections=%s is unsupported" msgstr "" -#: as.c:755 +#: as.c:764 msgid "bad defsym; format is --defsym name=value" msgstr "" -#: as.c:775 +#: as.c:784 msgid "no file name following -t option" msgstr "" -#: as.c:790 +#: as.c:799 #, c-format msgid "failed to read instruction table %s\n" msgstr "" -#: as.c:906 +#: as.c:847 +#, c-format +msgid "Invalid --gdwarf-cie-version `%s'" +msgstr "" + +#: as.c:925 #, c-format msgid "Invalid --size-check= option: `%s'" msgstr "" -#: as.c:915 +#: as.c:934 #, c-format msgid "Invalid --elf-stt-common= option: `%s'" msgstr "" -#: as.c:929 +#: as.c:948 #, c-format msgid "Invalid --generate-missing-build-notes option: `%s'" msgstr "" -#: as.c:1000 +#: as.c:1019 #, c-format msgid "invalid listing option `%c'" msgstr "" -#: as.c:1053 +#: as.c:1072 msgid "--hash-size needs a numeric argument" msgstr "" -#: as.c:1075 +#: as.c:1094 #, c-format msgid "%s: total time in assembly: %ld.%06ld\n" msgstr "" -#: as.c:1243 +#: as.c:1260 msgid "libbfd ABI mismatch" msgstr "" -#: as.c:1282 +#: as.c:1299 #, c-format msgid "The input '%s' and output '%s' files are the same" msgstr "" -#: as.c:1392 +#: as.c:1409 #, c-format msgid "%d warning" msgid_plural "%d warnings" msgstr[0] "" msgstr[1] "" -#: as.c:1394 +#: as.c:1411 #, c-format msgid "%d error" msgid_plural "%d errors" msgstr[0] "" msgstr[1] "" -#: as.c:1398 +#: as.c:1415 #, c-format msgid "%s, treating warnings as errors" msgstr "" -#: as.c:1409 +#: as.c:1426 #, c-format msgid "%s, %s, generating bad object file\n" msgstr "" @@ -584,34 +589,34 @@ msgstr "" #. * We have a GROSS internal error. #. * This should never happen. #. -#: atof-generic.c:418 config/tc-m68k.c:3501 +#: atof-generic.c:444 config/tc-m68k.c:3501 msgid "failed sanity check" msgstr "" -#: cgen.c:106 config/tc-alpha.c:2098 config/tc-alpha.c:2122 -#: config/tc-arc.c:4034 config/tc-arc.c:4108 config/tc-d10v.c:550 +#: cgen.c:106 config/tc-alpha.c:2097 config/tc-alpha.c:2121 +#: config/tc-arc.c:4031 config/tc-arc.c:4105 config/tc-d10v.c:550 #: config/tc-d30v.c:537 config/tc-mn10200.c:1098 config/tc-mn10300.c:1752 -#: config/tc-ppc.c:3237 config/tc-ppc.c:3423 config/tc-ppc.c:3710 -#: config/tc-s390.c:1340 config/tc-s390.c:1463 config/tc-s390.c:1597 -#: config/tc-v850.c:2538 config/tc-v850.c:2609 config/tc-v850.c:2656 -#: config/tc-v850.c:2693 config/tc-v850.c:2730 config/tc-v850.c:2993 +#: config/tc-ppc.c:3518 config/tc-ppc.c:4020 config/tc-s390.c:1342 +#: config/tc-s390.c:1465 config/tc-s390.c:1599 config/tc-v850.c:2538 +#: config/tc-v850.c:2609 config/tc-v850.c:2656 config/tc-v850.c:2693 +#: config/tc-v850.c:2730 config/tc-v850.c:2993 msgid "too many fixups" msgstr "" #: cgen.c:371 cgen.c:391 config/tc-d10v.c:461 config/tc-d30v.c:453 -#: config/tc-mn10200.c:1040 config/tc-mn10300.c:1677 config/tc-ppc.c:3279 -#: config/tc-s390.c:1324 config/tc-v850.c:2647 config/tc-v850.c:2681 -#: config/tc-v850.c:2721 config/tc-v850.c:2966 config/tc-z80.c:446 +#: config/tc-mn10200.c:1040 config/tc-mn10300.c:1677 config/tc-ppc.c:3560 +#: config/tc-s390.c:1326 config/tc-v850.c:2647 config/tc-v850.c:2681 +#: config/tc-v850.c:2721 config/tc-v850.c:2966 config/tc-z80.c:718 msgid "illegal operand" msgstr "" #: cgen.c:395 config/tc-avr.c:898 config/tc-d10v.c:463 config/tc-d30v.c:455 #: config/tc-h8300.c:497 config/tc-mcore.c:661 config/tc-microblaze.c:613 #: config/tc-mmix.c:495 config/tc-mn10200.c:1043 config/tc-mn10300.c:1680 -#: config/tc-msp430.c:417 config/tc-ppc.c:3281 config/tc-s390.c:1329 +#: config/tc-msp430.c:417 config/tc-ppc.c:3562 config/tc-s390.c:1331 #: config/tc-sh.c:988 config/tc-v850.c:2651 config/tc-v850.c:2685 #: config/tc-v850.c:2725 config/tc-v850.c:2969 config/tc-xgate.c:895 -#: config/tc-z80.c:557 config/tc-z8k.c:349 +#: config/tc-z80.c:827 config/tc-z8k.c:349 msgid "missing operand" msgstr "" @@ -624,22 +629,22 @@ msgid "operand mask overflow" msgstr "" #. We can't actually support subtracting a symbol. -#: cgen.c:857 config/tc-arm.c:1793 config/tc-arm.c:10365 config/tc-arm.c:10417 -#: config/tc-arm.c:10675 config/tc-arm.c:11512 config/tc-arm.c:12649 -#: config/tc-arm.c:12689 config/tc-arm.c:13032 config/tc-arm.c:13073 -#: config/tc-arm.c:17567 config/tc-arm.c:17608 config/tc-avr.c:1549 -#: config/tc-avr.c:1561 config/tc-avr.c:1825 config/tc-cris.c:4067 +#: cgen.c:857 config/tc-arm.c:2048 config/tc-arm.c:11269 config/tc-arm.c:11321 +#: config/tc-arm.c:11603 config/tc-arm.c:12499 config/tc-arm.c:13639 +#: config/tc-arm.c:13679 config/tc-arm.c:14052 config/tc-arm.c:14094 +#: config/tc-arm.c:21317 config/tc-arm.c:21377 config/tc-avr.c:1549 +#: config/tc-avr.c:1561 config/tc-avr.c:1825 config/tc-cris.c:4060 #: config/tc-d10v.c:1507 config/tc-d30v.c:1912 config/tc-ft32.c:574 -#: config/tc-ft32.c:587 config/tc-mips.c:9533 config/tc-mips.c:10838 -#: config/tc-mips.c:12094 config/tc-mips.c:12753 config/tc-nds32.c:7830 -#: config/tc-pru.c:747 config/tc-pru.c:757 config/tc-spu.c:972 -#: config/tc-spu.c:996 config/tc-tilegx.c:1486 config/tc-tilepro.c:1347 +#: config/tc-ft32.c:587 config/tc-mips.c:9681 config/tc-mips.c:10991 +#: config/tc-mips.c:12288 config/tc-mips.c:12971 config/tc-nds32.c:7827 +#: config/tc-pru.c:746 config/tc-pru.c:756 config/tc-spu.c:972 +#: config/tc-spu.c:996 config/tc-tilegx.c:1483 config/tc-tilepro.c:1344 #: config/tc-v850.c:3451 config/tc-vax.c:282 config/tc-xstormy16.c:482 -#: config/tc-xtensa.c:5979 config/tc-xtensa.c:13163 +#: config/tc-xtensa.c:5967 config/tc-xtensa.c:13044 msgid "expression too complex" msgstr "" -#: cgen.c:956 config/tc-ppc.c:7309 config/tc-s390.c:2378 config/tc-v850.c:3503 +#: cgen.c:956 config/tc-ppc.c:7722 config/tc-s390.c:2380 config/tc-v850.c:3503 #: config/tc-xstormy16.c:539 msgid "unresolved expression that must be resolved" msgstr "" @@ -649,7 +654,7 @@ msgstr "" msgid "internal error: can't install fix for reloc type %d (`%s')" msgstr "" -#: cgen.c:1032 config/tc-nios2.c:1360 config/tc-pru.c:788 +#: cgen.c:1032 config/tc-nios2.c:1360 config/tc-pru.c:787 msgid "relocation is not supported" msgstr "" @@ -717,20 +722,20 @@ msgstr "" msgid "here is the \"else\" of the unterminated conditional" msgstr "" -#: config/atof-ieee.c:139 +#: config/atof-ieee.c:140 msgid "cannot create floating-point number" msgstr "" -#: config/atof-ieee.c:286 -msgid "NaNs are not supported by this target\n" +#: config/atof-ieee.c:318 +msgid "NaNs are not supported by this target" msgstr "" -#: config/atof-ieee.c:325 config/atof-ieee.c:366 -msgid "Infinities are not supported by this target\n" +#: config/atof-ieee.c:362 config/atof-ieee.c:407 +msgid "Infinities are not supported by this target" msgstr "" -#: config/atof-ieee.c:781 config/atof-vax.c:449 config/tc-arm.c:1169 -#: config/tc-ia64.c:11608 config/tc-tic30.c:1263 config/tc-tic4x.c:2585 +#: config/atof-ieee.c:829 config/atof-vax.c:449 config/tc-arm.c:1294 +#: config/tc-ia64.c:11603 config/tc-tic30.c:1263 config/tc-tic4x.c:2583 msgid "Unrecognized or unsupported floating point constant" msgstr "" @@ -744,7 +749,7 @@ msgstr "" msgid "Attempt to put an undefined symbol into set %s" msgstr "" -#: config/obj-aout.c:112 config/obj-coff.c:1378 +#: config/obj-aout.c:112 config/obj-coff.c:1376 #, c-format msgid "Symbol `%s' can not be both weak and common" msgstr "" @@ -754,94 +759,94 @@ msgstr "" msgid "Inserting \"%s\" into structure table failed: %s" msgstr "" -#: config/obj-coff.c:213 config/obj-coff.c:1677 config/tc-ppc.c:5916 -#: config/tc-tic54x.c:3979 read.c:2961 +#: config/obj-coff.c:212 config/obj-coff.c:1675 config/tc-ppc.c:6259 +#: config/tc-tic54x.c:3984 read.c:2961 #, c-format msgid "error setting flags for \"%s\": %s" msgstr "" #. Zero is used as an end marker in the file. -#: config/obj-coff.c:431 +#: config/obj-coff.c:430 msgid "Line numbers must be positive integers\n" msgstr "" -#: config/obj-coff.c:463 +#: config/obj-coff.c:462 msgid ".ln pseudo-op inside .def/.endef: ignored." msgstr "" -#: config/obj-coff.c:505 ecoff.c:3245 +#: config/obj-coff.c:504 ecoff.c:3245 msgid ".loc outside of .text" msgstr "" -#: config/obj-coff.c:512 +#: config/obj-coff.c:511 msgid ".loc pseudo-op inside .def/.endef: ignored." msgstr "" -#: config/obj-coff.c:592 +#: config/obj-coff.c:591 msgid ".def pseudo-op used inside of .def/.endef: ignored." msgstr "" -#: config/obj-coff.c:625 +#: config/obj-coff.c:624 msgid ".endef pseudo-op used outside of .def/.endef: ignored." msgstr "" -#: config/obj-coff.c:664 +#: config/obj-coff.c:663 #, c-format msgid "`%s' symbol without preceding function" msgstr "" -#: config/obj-coff.c:751 +#: config/obj-coff.c:750 #, c-format msgid "unexpected storage class %d" msgstr "" -#: config/obj-coff.c:859 +#: config/obj-coff.c:857 msgid ".dim pseudo-op used outside of .def/.endef: ignored." msgstr "" -#: config/obj-coff.c:879 +#: config/obj-coff.c:877 msgid "badly formed .dim directive ignored" msgstr "" -#: config/obj-coff.c:928 +#: config/obj-coff.c:926 msgid ".size pseudo-op used outside of .def/.endef: ignored." msgstr "" -#: config/obj-coff.c:943 +#: config/obj-coff.c:941 msgid ".scl pseudo-op used outside of .def/.endef: ignored." msgstr "" -#: config/obj-coff.c:960 +#: config/obj-coff.c:958 msgid ".tag pseudo-op used outside of .def/.endef: ignored." msgstr "" -#: config/obj-coff.c:977 +#: config/obj-coff.c:975 #, c-format msgid "tag not found for .tag %s" msgstr "" -#: config/obj-coff.c:990 +#: config/obj-coff.c:988 msgid ".type pseudo-op used outside of .def/.endef: ignored." msgstr "" -#: config/obj-coff.c:1009 +#: config/obj-coff.c:1007 msgid ".val pseudo-op used outside of .def/.endef: ignored." msgstr "" -#: config/obj-coff.c:1156 +#: config/obj-coff.c:1154 msgid "badly formed .weak directive ignored" msgstr "" -#: config/obj-coff.c:1334 +#: config/obj-coff.c:1332 msgid "mismatched .eb" msgstr "" -#: config/obj-coff.c:1357 +#: config/obj-coff.c:1355 #, c-format msgid "C_EFCN symbol for %s out of scope" msgstr "" -#: config/obj-coff.c:1411 +#: config/obj-coff.c:1409 #, c-format msgid "Warning: internal error: forgetting to set endndx of %s" msgstr "" @@ -849,259 +854,273 @@ msgstr "" #. STYP_INFO #. STYP_LIB #. STYP_OVER -#: config/obj-coff.c:1642 +#: config/obj-coff.c:1640 #, c-format msgid "unsupported section attribute '%c'" msgstr "" -#: config/obj-coff.c:1646 config/tc-ppc.c:5898 +#: config/obj-coff.c:1644 config/tc-ppc.c:6241 #, c-format msgid "unknown section attribute '%c'" msgstr "" -#: config/obj-coff.c:1689 config/obj-macho.c:269 +#: config/obj-coff.c:1687 config/obj-macho.c:269 #, c-format msgid "Ignoring changed section attributes for %s" msgstr "" -#: config/obj-coff.c:1827 +#: config/obj-coff.c:1825 #, c-format msgid "0x%lx: \"%s\" type = %ld, class = %d, segment = %d\n" msgstr "" -#: config/obj-ecoff.c:124 +#: config/obj-ecoff.c:125 msgid "Can't set GP value" msgstr "" -#: config/obj-ecoff.c:131 +#: config/obj-ecoff.c:132 msgid "Can't set register masks" msgstr "" -#: config/obj-elf.c:345 config/tc-sparc.c:4389 config/tc-v850.c:511 +#: config/obj-elf.c:346 config/tc-sparc.c:4389 config/tc-v850.c:511 #, c-format msgid "bad .common segment %s" msgstr "" -#: config/obj-elf.c:421 +#: config/obj-elf.c:422 config/tc-aarch64.c:2000 msgid "Missing symbol name in directive" msgstr "" -#: config/obj-elf.c:643 +#: config/obj-elf.c:644 #, c-format msgid "setting incorrect section type for %s" msgstr "" -#: config/obj-elf.c:648 +#: config/obj-elf.c:649 #, c-format msgid "ignoring incorrect section type for %s" msgstr "" -#: config/obj-elf.c:699 +#: config/obj-elf.c:700 #, c-format msgid "setting incorrect section attributes for %s" msgstr "" -#: config/obj-elf.c:710 -#, c-format -msgid "SHF_ALLOC isn't set for GNU_MBIND section: %s" -msgstr "" - -#: config/obj-elf.c:759 +#: config/obj-elf.c:757 #, c-format msgid "ignoring changed section type for %s" msgstr "" -#: config/obj-elf.c:771 +#: config/obj-elf.c:769 #, c-format msgid "ignoring changed section attributes for %s" msgstr "" -#: config/obj-elf.c:778 +#: config/obj-elf.c:776 #, c-format msgid "ignoring changed section entity size for %s" msgstr "" -#: config/obj-elf.c:842 +#: config/obj-elf.c:841 msgid "unrecognized .section attribute: want a,e,w,x,M,S,G,T or number" msgstr "" -#: config/obj-elf.c:902 +#: config/obj-elf.c:901 msgid "extraneous characters at end of numeric section type" msgstr "" -#: config/obj-elf.c:908 read.c:2945 +#: config/obj-elf.c:907 read.c:2945 msgid "unrecognized section type" msgstr "" -#: config/obj-elf.c:940 +#: config/obj-elf.c:939 msgid "unrecognized section attribute" msgstr "" -#: config/obj-elf.c:971 config/tc-alpha.c:4209 +#: config/obj-elf.c:970 config/tc-alpha.c:4208 msgid "missing name" msgstr "" -#: config/obj-elf.c:1129 +#: config/obj-elf.c:1131 msgid "invalid merge entity size" msgstr "" -#: config/obj-elf.c:1136 +#: config/obj-elf.c:1138 msgid "entity size for SHF_MERGE not specified" msgstr "" -#: config/obj-elf.c:1142 +#: config/obj-elf.c:1144 msgid "? section flag ignored with G present" msgstr "" -#: config/obj-elf.c:1166 +#: config/obj-elf.c:1168 msgid "group name for SHF_GROUP not specified" msgstr "" -#: config/obj-elf.c:1191 +#: config/obj-elf.c:1193 #, c-format msgid "unsupported mbind section info: %s" msgstr "" -#: config/obj-elf.c:1206 +#: config/obj-elf.c:1208 msgid "character following name is not '#'" msgstr "" -#: config/obj-elf.c:1326 +#: config/obj-elf.c:1237 +#, c-format +msgid "SHF_ALLOC isn't set for GNU_MBIND section: %s" +msgstr "" + +#: config/obj-elf.c:1244 +msgid "GNU_MBIND section is supported only by GNU and FreeBSD targets" +msgstr "" + +#: config/obj-elf.c:1347 msgid ".previous without corresponding .section; ignored" msgstr "" -#: config/obj-elf.c:1352 +#: config/obj-elf.c:1373 msgid ".popsection without corresponding .pushsection; ignored" msgstr "" -#: config/obj-elf.c:1398 +#: config/obj-elf.c:1419 msgid "expected comma after name in .symver" msgstr "" -#: config/obj-elf.c:1414 config/obj-elf.c:2304 +#: config/obj-elf.c:1435 config/obj-elf.c:2353 #, c-format msgid "`%s' can't be versioned to common symbol '%s'" msgstr "" -#: config/obj-elf.c:1429 +#: config/obj-elf.c:1450 #, c-format msgid "missing version name in `%s' for symbol `%s'" msgstr "" -#: config/obj-elf.c:1440 +#: config/obj-elf.c:1461 #, c-format msgid "multiple versions [`%s'|`%s'] for symbol `%s'" msgstr "" -#: config/obj-elf.c:1476 +#: config/obj-elf.c:1497 #, c-format msgid "expected `%s' to have already been set for .vtable_inherit" msgstr "" -#: config/obj-elf.c:1486 +#: config/obj-elf.c:1507 msgid "expected comma after name in .vtable_inherit" msgstr "" -#: config/obj-elf.c:1547 +#: config/obj-elf.c:1568 msgid "expected comma after name in .vtable_entry" msgstr "" -#: config/obj-elf.c:1686 +#: config/obj-elf.c:1707 #, c-format msgid "Attribute name not recognised: %s" msgstr "" -#: config/obj-elf.c:1703 +#: config/obj-elf.c:1724 msgid "expected numeric constant" msgstr "" -#: config/obj-elf.c:1712 config/tc-arm.c:6489 +#: config/obj-elf.c:1733 config/tc-arm.c:7015 msgid "expected comma" msgstr "" -#: config/obj-elf.c:1745 +#: config/obj-elf.c:1766 msgid "bad string constant" msgstr "" -#: config/obj-elf.c:1749 +#: config/obj-elf.c:1770 msgid "expected <tag> , <value>" msgstr "" -#: config/obj-elf.c:1869 +#: config/obj-elf.c:1888 msgid "expected quoted string" msgstr "" -#: config/obj-elf.c:1889 +#: config/obj-elf.c:1908 #, c-format msgid "expected comma after name `%s' in .size directive" msgstr "" -#: config/obj-elf.c:1898 +#: config/obj-elf.c:1917 msgid "missing expression in .size directive" msgstr "" -#: config/obj-elf.c:2021 +#: config/obj-elf.c:2040 #, c-format msgid "symbol '%s' is already defined" msgstr "" -#: config/obj-elf.c:2042 +#: config/obj-elf.c:2061 #, c-format msgid "symbol type \"%s\" is supported only by GNU and FreeBSD targets" msgstr "" -#: config/obj-elf.c:2054 +#: config/obj-elf.c:2074 #, c-format msgid "symbol type \"%s\" is supported only by GNU targets" msgstr "" -#: config/obj-elf.c:2065 +#: config/obj-elf.c:2084 #, c-format msgid "unrecognized symbol type \"%s\"" msgstr "" -#: config/obj-elf.c:2232 config/obj-elf.c:2235 +#: config/obj-elf.c:2105 +#, c-format +msgid "cannot change type of common symbol '%s'" +msgstr "" + +#: config/obj-elf.c:2117 +#, c-format +msgid "symbol '%s' already has its type set" +msgstr "" + +#: config/obj-elf.c:2281 config/obj-elf.c:2284 #, c-format msgid ".size expression for %s does not evaluate to a constant" msgstr "" -#: config/obj-elf.c:2269 +#: config/obj-elf.c:2318 #, c-format msgid "" "invalid attempt to declare external version name as default in symbol `%s'" msgstr "" -#: config/obj-elf.c:2338 ecoff.c:3600 +#: config/obj-elf.c:2387 ecoff.c:3600 #, c-format msgid "symbol `%s' can not be both weak and common" msgstr "" -#: config/obj-elf.c:2450 +#: config/obj-elf.c:2482 #, c-format msgid "assuming all members of group `%s' are COMDAT" msgstr "" -#: config/obj-elf.c:2462 +#: config/obj-elf.c:2494 #, c-format msgid "can't create group: %s" msgstr "" -#: config/obj-elf.c:2613 +#: config/obj-elf.c:2645 #, c-format msgid "failed to set up debugging information: %s" msgstr "" -#: config/obj-elf.c:2633 +#: config/obj-elf.c:2665 #, c-format msgid "can't start writing .mdebug section: %s" msgstr "" -#: config/obj-elf.c:2641 +#: config/obj-elf.c:2673 #, c-format msgid "could not write .mdebug section: %s" msgstr "" -#: config/obj-evax.c:126 +#: config/obj-evax.c:122 #, c-format msgid "no entry symbol for global function '%s'" msgstr "" @@ -1145,8 +1164,8 @@ msgstr "" msgid "missing sizeof_stub expression" msgstr "" -#: config/obj-macho.c:478 config/tc-ia64.c:1083 config/tc-ia64.c:11770 -#: config/tc-score.c:6100 expr.c:1172 read.c:1716 +#: config/obj-macho.c:478 config/tc-ia64.c:1083 config/tc-ia64.c:11765 +#: config/tc-score.c:6099 expr.c:1179 read.c:1716 msgid "expected symbol name" msgstr "" @@ -1154,7 +1173,7 @@ msgstr "" msgid "bad or irreducible absolute expression" msgstr "" -#: config/obj-macho.c:497 config/tc-score.c:6117 read.c:1754 +#: config/obj-macho.c:497 config/tc-score.c:6116 read.c:1754 msgid "missing size expression" msgstr "" @@ -1163,7 +1182,7 @@ msgstr "" msgid "size (%ld) out of range, ignored" msgstr "" -#: config/obj-macho.c:516 config/tc-score.c:6260 dwarf2dbg.c:969 ecoff.c:3359 +#: config/obj-macho.c:516 config/tc-score.c:6260 dwarf2dbg.c:997 ecoff.c:3359 #: read.c:1772 read.c:1877 read.c:2628 read.c:3201 read.c:3632 symbols.c:474 #: symbols.c:569 #, c-format @@ -1324,836 +1343,843 @@ msgstr "" msgid "attaching copyright header %s: %s" msgstr "" -#: config/tc-aarch64.c:383 +#: config/tc-aarch64.c:380 msgid "integer 32-bit register expected" msgstr "" -#: config/tc-aarch64.c:386 +#: config/tc-aarch64.c:383 msgid "integer 64-bit register expected" msgstr "" -#: config/tc-aarch64.c:389 +#: config/tc-aarch64.c:386 msgid "integer register expected" msgstr "" -#: config/tc-aarch64.c:392 +#: config/tc-aarch64.c:389 msgid "64-bit integer or SP register expected" msgstr "" -#: config/tc-aarch64.c:395 config/tc-mcore.c:839 config/tc-mcore.c:1355 +#: config/tc-aarch64.c:392 config/tc-mcore.c:839 config/tc-mcore.c:1355 #: config/tc-mcore.c:1409 msgid "base register expected" msgstr "" -#: config/tc-aarch64.c:398 +#: config/tc-aarch64.c:395 msgid "integer or zero register expected" msgstr "" -#: config/tc-aarch64.c:401 +#: config/tc-aarch64.c:398 msgid "offset register expected" msgstr "" -#: config/tc-aarch64.c:404 +#: config/tc-aarch64.c:401 msgid "integer or SP register expected" msgstr "" -#: config/tc-aarch64.c:407 +#: config/tc-aarch64.c:404 msgid "integer, zero or SP register expected" msgstr "" -#: config/tc-aarch64.c:410 +#: config/tc-aarch64.c:407 msgid "8-bit SIMD scalar register expected" msgstr "" -#: config/tc-aarch64.c:413 +#: config/tc-aarch64.c:410 msgid "16-bit SIMD scalar or floating-point half precision register expected" msgstr "" -#: config/tc-aarch64.c:417 +#: config/tc-aarch64.c:414 msgid "32-bit SIMD scalar or floating-point single precision register expected" msgstr "" -#: config/tc-aarch64.c:421 +#: config/tc-aarch64.c:418 msgid "64-bit SIMD scalar or floating-point double precision register expected" msgstr "" -#: config/tc-aarch64.c:425 +#: config/tc-aarch64.c:422 msgid "128-bit SIMD scalar or floating-point quad precision register expected" msgstr "" -#: config/tc-aarch64.c:430 config/tc-arm.c:4418 +#: config/tc-aarch64.c:427 config/tc-arm.c:4722 msgid "register expected" msgstr "" #. any [BHSDQ]P FP -#: config/tc-aarch64.c:433 +#: config/tc-aarch64.c:430 msgid "SIMD scalar or floating-point register expected" msgstr "" #. any V reg -#: config/tc-aarch64.c:436 +#: config/tc-aarch64.c:433 msgid "vector register expected" msgstr "" -#: config/tc-aarch64.c:439 +#: config/tc-aarch64.c:436 msgid "SVE vector register expected" msgstr "" -#: config/tc-aarch64.c:442 +#: config/tc-aarch64.c:439 msgid "SVE predicate register expected" msgstr "" -#: config/tc-aarch64.c:445 +#: config/tc-aarch64.c:442 #, c-format msgid "invalid register type %d" msgstr "" -#: config/tc-aarch64.c:606 config/tc-aarch64.c:608 config/tc-arm.c:1094 -#: config/tc-score.c:6510 expr.c:1343 read.c:2610 +#: config/tc-aarch64.c:604 config/tc-aarch64.c:606 config/tc-arm.c:1168 +#: config/tc-score.c:6510 expr.c:1350 read.c:2610 msgid "bad expression" msgstr "" -#: config/tc-aarch64.c:618 config/tc-sparc.c:3385 +#: config/tc-aarch64.c:616 config/tc-sparc.c:3385 msgid "bad segment" msgstr "" -#: config/tc-aarch64.c:836 +#: config/tc-aarch64.c:651 config/tc-arm.c:1234 +msgid "invalid floating point number" +msgstr "" + +#: config/tc-aarch64.c:882 #, c-format msgid "bad size %d in vector width specifier" msgstr "" -#: config/tc-aarch64.c:869 +#: config/tc-aarch64.c:915 #, c-format msgid "unexpected character `%c' in element size" msgstr "" -#: config/tc-aarch64.c:871 +#: config/tc-aarch64.c:917 msgid "missing element size" msgstr "" -#: config/tc-aarch64.c:880 +#: config/tc-aarch64.c:926 #, c-format msgid "invalid element size %d and vector size combination %c" msgstr "" -#: config/tc-aarch64.c:915 +#: config/tc-aarch64.c:961 #, c-format msgid "unexpected character `%c' in predication type" msgstr "" -#: config/tc-aarch64.c:918 +#: config/tc-aarch64.c:964 msgid "missing predication type" msgstr "" -#: config/tc-aarch64.c:1013 +#: config/tc-aarch64.c:1059 msgid "this type of register can't be indexed" msgstr "" -#: config/tc-aarch64.c:1019 +#: config/tc-aarch64.c:1065 msgid "index not allowed inside register list" msgstr "" -#: config/tc-aarch64.c:1029 config/tc-aarch64.c:1977 config/tc-aarch64.c:2175 -#: config/tc-arm.c:1586 config/tc-arm.c:3698 config/tc-arm.c:4815 +#: config/tc-aarch64.c:1075 config/tc-aarch64.c:2045 config/tc-aarch64.c:2246 +#: config/tc-arm.c:1788 config/tc-arm.c:3998 config/tc-arm.c:5172 +#: config/tc-arm.c:7294 msgid "constant expression required" msgstr "" #. Indexed vector register expected. -#: config/tc-aarch64.c:1041 +#: config/tc-aarch64.c:1087 msgid "indexed vector register expected" msgstr "" -#: config/tc-aarch64.c:1048 +#: config/tc-aarch64.c:1094 msgid "invalid use of vector register" msgstr "" -#: config/tc-aarch64.c:1140 config/tc-arm.c:1854 +#: config/tc-aarch64.c:1186 config/tc-arm.c:2104 msgid "expecting {" msgstr "" -#: config/tc-aarch64.c:1165 +#: config/tc-aarch64.c:1211 msgid "invalid vector register in list" msgstr "" -#: config/tc-aarch64.c:1172 +#: config/tc-aarch64.c:1218 msgid "invalid scalar register in list" msgstr "" -#: config/tc-aarch64.c:1185 +#: config/tc-aarch64.c:1231 msgid "invalid range in vector register list" msgstr "" -#: config/tc-aarch64.c:1198 +#: config/tc-aarch64.c:1244 msgid "type mismatch in vector register list" msgstr "" -#: config/tc-aarch64.c:1215 +#: config/tc-aarch64.c:1261 msgid "end of vector register list not found" msgstr "" -#: config/tc-aarch64.c:1231 +#: config/tc-aarch64.c:1277 msgid "constant expression required." msgstr "" -#: config/tc-aarch64.c:1241 +#: config/tc-aarch64.c:1287 msgid "expected index" msgstr "" -#: config/tc-aarch64.c:1248 +#: config/tc-aarch64.c:1294 msgid "too many registers in vector register list" msgstr "" -#: config/tc-aarch64.c:1253 +#: config/tc-aarch64.c:1299 msgid "empty vector register list" msgstr "" -#: config/tc-aarch64.c:1275 config/tc-arm.c:2240 +#: config/tc-aarch64.c:1321 config/tc-arm.c:2540 #, c-format msgid "ignoring attempt to redefine built-in register '%s'" msgstr "" -#: config/tc-aarch64.c:1281 config/tc-arm.c:2245 +#: config/tc-aarch64.c:1327 config/tc-arm.c:2545 #, c-format msgid "ignoring redefinition of register alias '%s'" msgstr "" -#: config/tc-aarch64.c:1327 config/tc-arm.c:2311 +#: config/tc-aarch64.c:1373 config/tc-arm.c:2611 #, c-format msgid "unknown register '%s' -- .req ignored" msgstr "" -#: config/tc-aarch64.c:1385 config/tc-arm.c:2519 +#: config/tc-aarch64.c:1431 config/tc-arm.c:2819 msgid "invalid syntax for .req directive" msgstr "" -#: config/tc-aarch64.c:1410 config/tc-arm.c:2557 +#: config/tc-aarch64.c:1456 config/tc-arm.c:2857 msgid "invalid syntax for .unreq directive" msgstr "" -#: config/tc-aarch64.c:1416 config/tc-arm.c:2564 +#: config/tc-aarch64.c:1462 config/tc-arm.c:2864 #, c-format msgid "unknown register alias '%s'" msgstr "" -#: config/tc-aarch64.c:1418 +#: config/tc-aarch64.c:1464 #, c-format msgid "ignoring attempt to undefine built-in register '%s'" msgstr "" -#: config/tc-aarch64.c:1742 config/tc-arm.c:3310 config/tc-arm.c:3337 -#: config/tc-arm.c:3350 +#: config/tc-aarch64.c:1788 config/tc-arm.c:3610 config/tc-arm.c:3637 +#: config/tc-arm.c:3650 msgid "literal pool overflow" msgstr "" -#: config/tc-aarch64.c:1924 config/tc-aarch64.c:6102 config/tc-arm.c:3571 -#: config/tc-arm.c:7012 +#: config/tc-aarch64.c:1970 config/tc-aarch64.c:6223 config/tc-arm.c:3871 +#: config/tc-arm.c:7711 msgid "unrecognized relocation suffix" msgstr "" -#: config/tc-aarch64.c:1926 +#: config/tc-aarch64.c:1972 msgid "unimplemented relocation suffix" msgstr "" -#: config/tc-aarch64.c:2143 config/tc-aarch64.c:2333 config/tc-aarch64.c:2377 +#: config/tc-aarch64.c:2214 config/tc-aarch64.c:2404 config/tc-aarch64.c:2448 #: config/tc-csky.c:1798 msgid "immediate operand required" msgstr "" -#: config/tc-aarch64.c:2151 +#: config/tc-aarch64.c:2222 msgid "missing immediate expression" msgstr "" -#: config/tc-aarch64.c:2357 config/tc-aarch64.c:5926 config/tc-aarch64.c:5946 +#: config/tc-aarch64.c:2428 config/tc-aarch64.c:6047 config/tc-aarch64.c:6067 msgid "invalid floating-point constant" msgstr "" -#: config/tc-aarch64.c:3050 config/tc-arm.c:5154 config/tc-arm.c:5163 +#: config/tc-aarch64.c:3121 config/tc-arm.c:5512 config/tc-arm.c:5521 msgid "shift expression expected" msgstr "" -#: config/tc-aarch64.c:3058 +#: config/tc-aarch64.c:3129 msgid "shift operator expected" msgstr "" -#: config/tc-aarch64.c:3066 +#: config/tc-aarch64.c:3137 msgid "invalid use of 'MSL'" msgstr "" -#: config/tc-aarch64.c:3074 +#: config/tc-aarch64.c:3145 msgid "invalid use of 'MUL'" msgstr "" -#: config/tc-aarch64.c:3083 +#: config/tc-aarch64.c:3154 msgid "extending shift is not permitted" msgstr "" -#: config/tc-aarch64.c:3091 +#: config/tc-aarch64.c:3162 msgid "'ROR' shift is not permitted" msgstr "" -#: config/tc-aarch64.c:3099 +#: config/tc-aarch64.c:3170 msgid "only 'LSL' shift is permitted" msgstr "" -#: config/tc-aarch64.c:3107 +#: config/tc-aarch64.c:3178 msgid "only 'MUL' is permitted" msgstr "" -#: config/tc-aarch64.c:3125 +#: config/tc-aarch64.c:3196 msgid "only 'MUL VL' is permitted" msgstr "" -#: config/tc-aarch64.c:3133 +#: config/tc-aarch64.c:3204 msgid "invalid shift for the register offset addressing mode" msgstr "" -#: config/tc-aarch64.c:3141 +#: config/tc-aarch64.c:3212 msgid "invalid shift operator" msgstr "" -#: config/tc-aarch64.c:3174 +#: config/tc-aarch64.c:3245 msgid "missing shift amount" msgstr "" -#: config/tc-aarch64.c:3181 +#: config/tc-aarch64.c:3252 msgid "constant shift amount required" msgstr "" -#: config/tc-aarch64.c:3190 +#: config/tc-aarch64.c:3261 msgid "shift amount out of range 0 to 63" msgstr "" -#: config/tc-aarch64.c:3239 +#: config/tc-aarch64.c:3310 msgid "unexpected shift operator" msgstr "" -#: config/tc-aarch64.c:3275 +#: config/tc-aarch64.c:3346 msgid "unexpected register in the immediate operand" msgstr "" -#: config/tc-aarch64.c:3300 +#: config/tc-aarch64.c:3371 msgid "integer register expected in the extended/shifted operand register" msgstr "" -#: config/tc-aarch64.c:3335 config/tc-aarch64.c:3470 config/tc-aarch64.c:3599 -#: config/tc-aarch64.c:3756 config/tc-aarch64.c:3797 +#: config/tc-aarch64.c:3406 config/tc-aarch64.c:3542 config/tc-aarch64.c:3675 +#: config/tc-aarch64.c:3855 config/tc-aarch64.c:3896 msgid "unknown relocation modifier" msgstr "" -#: config/tc-aarch64.c:3342 config/tc-aarch64.c:3489 config/tc-aarch64.c:3606 -#: config/tc-aarch64.c:3763 config/tc-aarch64.c:3804 +#: config/tc-aarch64.c:3413 config/tc-aarch64.c:3561 config/tc-aarch64.c:3682 +#: config/tc-aarch64.c:3862 config/tc-aarch64.c:3903 msgid "this relocation modifier is not allowed on this instruction" msgstr "" -#: config/tc-aarch64.c:3497 config/tc-aarch64.c:3617 +#: config/tc-aarch64.c:3569 config/tc-aarch64.c:3693 msgid "invalid relocation expression" msgstr "" -#: config/tc-aarch64.c:3515 +#: config/tc-aarch64.c:3587 msgid "invalid address" msgstr "" -#: config/tc-aarch64.c:3571 +#: config/tc-aarch64.c:3644 msgid "invalid use of 32-bit register offset" msgstr "" -#: config/tc-aarch64.c:3577 +#: config/tc-aarch64.c:3653 msgid "offset has different size from base" msgstr "" -#: config/tc-aarch64.c:3583 +#: config/tc-aarch64.c:3659 msgid "invalid use of 64-bit register offset" msgstr "" #. [Xn],#expr -#: config/tc-aarch64.c:3630 config/tc-aarch64.c:3687 +#: config/tc-aarch64.c:3706 config/tc-aarch64.c:3763 msgid "invalid expression in the address" msgstr "" -#: config/tc-aarch64.c:3644 config/tc-arm.c:5690 config/tc-arm.c:6267 +#: config/tc-aarch64.c:3720 config/tc-arm.c:6102 config/tc-arm.c:6695 msgid "']' expected" msgstr "" -#: config/tc-aarch64.c:3652 +#: config/tc-aarch64.c:3728 msgid "register offset not allowed in pre-indexed addressing mode" msgstr "" -#: config/tc-aarch64.c:3667 config/tc-arm.c:5726 +#: config/tc-aarch64.c:3743 config/tc-arm.c:6138 msgid "cannot combine pre- and post-indexing" msgstr "" #. Reject [Rn]! -#: config/tc-aarch64.c:3700 +#: config/tc-aarch64.c:3787 msgid "missing offset in the pre-indexed address" msgstr "" -#: config/tc-aarch64.c:3930 +#: config/tc-aarch64.c:4029 msgid "unknown or missing option to PSB" msgstr "" -#: config/tc-aarch64.c:3938 +#: config/tc-aarch64.c:4037 msgid "the specified option is not accepted for PSB" msgstr "" -#: config/tc-aarch64.c:3965 config/tc-aarch64.c:3979 +#: config/tc-aarch64.c:4064 config/tc-aarch64.c:4078 msgid "unknown option to BTI" msgstr "" -#: config/tc-aarch64.c:4039 +#: config/tc-aarch64.c:4138 #, c-format msgid "selected processor does not support PSTATE field name '%s'" msgstr "" -#: config/tc-aarch64.c:4042 config/tc-aarch64.c:4077 +#: config/tc-aarch64.c:4141 config/tc-aarch64.c:4176 #, c-format msgid "selected processor does not support system register name '%s'" msgstr "" -#: config/tc-aarch64.c:4045 +#: config/tc-aarch64.c:4144 #, c-format msgid "" "system register name '%s' is deprecated and may be removed in a future " "release" msgstr "" -#: config/tc-aarch64.c:4119 +#: config/tc-aarch64.c:4218 msgid "immediate value out of range " msgstr "" -#: config/tc-aarch64.c:4630 +#: config/tc-aarch64.c:4729 #, c-format msgid "Info: " msgstr "" -#: config/tc-aarch64.c:4665 config/tc-score.c:2750 config/tc-score.c:6499 +#: config/tc-aarch64.c:4764 config/tc-score.c:2749 config/tc-score.c:6499 #, c-format msgid "%s -- `%s'" msgstr "" -#: config/tc-aarch64.c:4667 +#: config/tc-aarch64.c:4766 #, c-format msgid "%s at operand %d -- `%s'" msgstr "" -#: config/tc-aarch64.c:4673 +#: config/tc-aarch64.c:4772 #, c-format msgid "operand %d must be %s -- `%s'" msgstr "" -#: config/tc-aarch64.c:4679 +#: config/tc-aarch64.c:4778 #, c-format msgid "operand mismatch -- `%s'" msgstr "" #. Print the hint. -#: config/tc-aarch64.c:4739 +#: config/tc-aarch64.c:4838 msgid " did you mean this?" msgstr "" -#: config/tc-aarch64.c:4742 config/tc-aarch64.c:4769 +#: config/tc-aarch64.c:4841 config/tc-aarch64.c:4868 #, c-format msgid " %s" msgstr "" -#: config/tc-aarch64.c:4747 +#: config/tc-aarch64.c:4846 msgid " other valid variant(s):" msgstr "" -#: config/tc-aarch64.c:4776 +#: config/tc-aarch64.c:4875 #, c-format msgid "operand %d must be the same register as operand 1 -- `%s'" msgstr "" -#: config/tc-aarch64.c:4782 +#: config/tc-aarch64.c:4881 #, c-format msgid "%s out of range %d to %d at operand %d -- `%s'" msgstr "" -#: config/tc-aarch64.c:4783 config/tc-aarch64.c:4787 config/tc-aarch64.c:6680 +#: config/tc-aarch64.c:4882 config/tc-aarch64.c:4886 config/tc-aarch64.c:6825 msgid "immediate value" msgstr "" -#: config/tc-aarch64.c:4786 +#: config/tc-aarch64.c:4885 #, c-format msgid "%s must be %d at operand %d -- `%s'" msgstr "" -#: config/tc-aarch64.c:4793 +#: config/tc-aarch64.c:4892 #, c-format msgid "" "invalid number of registers in the list; only 1 register is expected at " "operand %d -- `%s'" msgstr "" -#: config/tc-aarch64.c:4797 +#: config/tc-aarch64.c:4896 #, c-format msgid "" "invalid number of registers in the list; %d registers are expected at " "operand %d -- `%s'" msgstr "" -#: config/tc-aarch64.c:4803 +#: config/tc-aarch64.c:4902 #, c-format msgid "immediate value must be a multiple of %d at operand %d -- `%s'" msgstr "" -#: config/tc-aarch64.c:5116 +#: config/tc-aarch64.c:5220 msgid "bad vector arrangement type" msgstr "" -#: config/tc-aarch64.c:5243 +#: config/tc-aarch64.c:5348 msgid "the specified relocation type is not allowed for MOVK" msgstr "" -#: config/tc-aarch64.c:5291 config/tc-aarch64.c:5302 +#: config/tc-aarch64.c:5396 config/tc-aarch64.c:5407 msgid "the specified relocation type is not allowed for 32-bit register" msgstr "" -#: config/tc-aarch64.c:5493 +#: config/tc-aarch64.c:5598 msgid "comma expected between operands" msgstr "" -#: config/tc-aarch64.c:5627 +#: config/tc-aarch64.c:5733 msgid "the top half of a 128-bit FP/SIMD register is expected" msgstr "" -#: config/tc-aarch64.c:5699 config/tc-arm.c:1923 config/tc-arm.c:1968 +#: config/tc-aarch64.c:5808 config/tc-arm.c:2213 config/tc-arm.c:2258 #: config/tc-h8300.c:1043 msgid "invalid register list" msgstr "" -#: config/tc-aarch64.c:5719 +#: config/tc-aarch64.c:5815 +msgid "expected element type rather than vector type" +msgstr "" + +#: config/tc-aarch64.c:5836 msgid "missing type suffix" msgstr "" -#: config/tc-aarch64.c:5738 +#: config/tc-aarch64.c:5855 msgid "C0 - C15 expected" msgstr "" -#: config/tc-aarch64.c:5841 config/tc-aarch64.c:5865 +#: config/tc-aarch64.c:5962 config/tc-aarch64.c:5986 msgid "immediate zero expected" msgstr "" -#: config/tc-aarch64.c:5961 +#: config/tc-aarch64.c:6082 msgid "shift not allowed for bitmask immediate" msgstr "" -#: config/tc-aarch64.c:6015 +#: config/tc-aarch64.c:6136 msgid "can't mix relocation modifier with explicit shift" msgstr "" -#: config/tc-aarch64.c:6063 +#: config/tc-aarch64.c:6184 config/tc-arm.c:15831 config/tc-arm.c:15856 +#: config/tc-arm.c:15867 config/tc-arm.c:15874 msgid "invalid condition" msgstr "" -#: config/tc-aarch64.c:6089 +#: config/tc-aarch64.c:6210 msgid "invalid pc-relative address" msgstr "" #. Only permit "=value" in the literal load instructions. #. The literal will be generated by programmer_friendly_fixup. -#: config/tc-aarch64.c:6097 +#: config/tc-aarch64.c:6218 msgid "invalid use of \"=immediate\"" msgstr "" -#: config/tc-aarch64.c:6164 config/tc-aarch64.c:6198 config/tc-aarch64.c:6216 -#: config/tc-aarch64.c:6240 config/tc-aarch64.c:6260 config/tc-aarch64.c:6279 -#: config/tc-aarch64.c:6302 config/tc-aarch64.c:6337 config/tc-aarch64.c:6344 -#: config/tc-aarch64.c:6372 config/tc-aarch64.c:6392 config/tc-aarch64.c:6417 -#: config/tc-aarch64.c:6433 config/tc-aarch64.c:6457 +#: config/tc-aarch64.c:6283 config/tc-aarch64.c:6315 config/tc-aarch64.c:6333 +#: config/tc-aarch64.c:6357 config/tc-aarch64.c:6377 config/tc-aarch64.c:6396 +#: config/tc-aarch64.c:6419 config/tc-aarch64.c:6455 config/tc-aarch64.c:6462 +#: config/tc-aarch64.c:6490 config/tc-aarch64.c:6510 config/tc-aarch64.c:6535 +#: config/tc-aarch64.c:6553 config/tc-aarch64.c:6561 config/tc-aarch64.c:6578 +#: config/tc-aarch64.c:6602 msgid "invalid addressing mode" msgstr "" -#: config/tc-aarch64.c:6180 +#: config/tc-aarch64.c:6299 msgid "the optional immediate offset can only be 0" msgstr "" -#: config/tc-aarch64.c:6221 config/tc-aarch64.c:6245 config/tc-aarch64.c:6265 +#: config/tc-aarch64.c:6338 config/tc-aarch64.c:6362 config/tc-aarch64.c:6382 msgid "relocation not allowed" msgstr "" -#: config/tc-aarch64.c:6312 +#: config/tc-aarch64.c:6429 msgid "writeback value must be an immediate constant" msgstr "" #. Make sure this has priority over #. "invalid addressing mode". -#: config/tc-aarch64.c:6352 +#: config/tc-aarch64.c:6470 msgid "constant offset required" msgstr "" -#: config/tc-aarch64.c:6469 +#: config/tc-aarch64.c:6614 msgid "unknown or missing system register name" msgstr "" -#: config/tc-aarch64.c:6481 +#: config/tc-aarch64.c:6626 msgid "unknown or missing PSTATE field name" msgstr "" -#: config/tc-aarch64.c:6513 +#: config/tc-aarch64.c:6658 msgid "unknown or missing operation name" msgstr "" -#: config/tc-aarch64.c:6526 +#: config/tc-aarch64.c:6671 msgid "the specified option is not accepted in ISB" msgstr "" -#: config/tc-aarch64.c:6558 config/tc-aarch64.c:7744 config/tc-arm.c:7227 +#: config/tc-aarch64.c:6703 config/tc-aarch64.c:7884 config/tc-arm.c:7993 #, c-format msgid "unhandled operand code %d" msgstr "" -#: config/tc-aarch64.c:6600 +#: config/tc-aarch64.c:6745 msgid "unexpected comma before the omitted optional operand" msgstr "" -#: config/tc-aarch64.c:6628 +#: config/tc-aarch64.c:6773 msgid "unexpected characters following instruction" msgstr "" -#: config/tc-aarch64.c:6706 config/tc-arm.c:5265 config/tc-arm.c:5826 -#: config/tc-arm.c:7989 +#: config/tc-aarch64.c:6851 config/tc-arm.c:5636 config/tc-arm.c:6246 +#: config/tc-arm.c:8797 msgid "constant expression expected" msgstr "" -#: config/tc-aarch64.c:6713 +#: config/tc-aarch64.c:6858 msgid "literal pool insertion failed" msgstr "" -#: config/tc-aarch64.c:6782 config/tc-aarch64.c:6804 +#: config/tc-aarch64.c:6929 config/tc-aarch64.c:6944 #, c-format msgid "unpredictable transfer with writeback -- `%s'" msgstr "" -#: config/tc-aarch64.c:6789 -#, c-format -msgid "unpredictable load of register -- `%s'" -msgstr "" - -#: config/tc-aarch64.c:6808 +#: config/tc-aarch64.c:6948 #, c-format msgid "unpredictable load of register pair -- `%s'" msgstr "" -#: config/tc-aarch64.c:6820 +#: config/tc-aarch64.c:6960 #, c-format msgid "unpredictable: identical transfer and status registers --`%s'" msgstr "" -#: config/tc-aarch64.c:6836 +#: config/tc-aarch64.c:6976 #, c-format msgid "previous `%s' sequence has not been closed" msgstr "" -#: config/tc-aarch64.c:6915 +#: config/tc-aarch64.c:7055 #, c-format msgid "unknown mnemonic `%s' -- `%s'" msgstr "" -#: config/tc-aarch64.c:6923 +#: config/tc-aarch64.c:7063 #, c-format msgid "unexpected comma after the mnemonic name `%s' -- `%s'" msgstr "" -#: config/tc-aarch64.c:6981 +#: config/tc-aarch64.c:7121 #, c-format msgid "selected processor does not support `%s'" msgstr "" -#: config/tc-aarch64.c:7404 config/tc-arm.c:22929 +#: config/tc-aarch64.c:7544 config/tc-arm.c:27479 msgid "GOT already in the symbol table" msgstr "" -#: config/tc-aarch64.c:7567 +#: config/tc-aarch64.c:7707 msgid "immediate cannot be moved by a single instruction" msgstr "" -#: config/tc-aarch64.c:7610 config/tc-aarch64.c:7655 config/tc-aarch64.c:7681 -#: config/tc-arm.c:15430 config/tc-arm.c:15457 config/tc-arm.c:16101 -#: config/tc-arm.c:16734 config/tc-arm.c:17570 config/tc-arm.c:17610 -#: config/tc-metag.c:2444 config/tc-metag.c:2453 config/tc-metag.c:2492 -#: config/tc-metag.c:2501 config/tc-metag.c:3021 config/tc-metag.c:3030 +#: config/tc-aarch64.c:7750 config/tc-aarch64.c:7795 config/tc-aarch64.c:7821 +#: config/tc-arm.c:16375 config/tc-arm.c:18072 config/tc-arm.c:18658 +#: config/tc-arm.c:18685 config/tc-arm.c:19471 config/tc-arm.c:20305 +#: config/tc-arm.c:21320 config/tc-arm.c:21380 config/tc-metag.c:2444 +#: config/tc-metag.c:2453 config/tc-metag.c:2492 config/tc-metag.c:2501 +#: config/tc-metag.c:3021 config/tc-metag.c:3030 msgid "immediate out of range" msgstr "" -#: config/tc-aarch64.c:7674 config/tc-metag.c:4656 config/tc-xtensa.c:4213 +#: config/tc-aarch64.c:7814 config/tc-metag.c:4656 config/tc-xtensa.c:4203 msgid "invalid immediate" msgstr "" -#: config/tc-aarch64.c:7739 config/tc-tic6x.c:3861 config/tc-tic6x.c:3926 +#: config/tc-aarch64.c:7879 config/tc-tic6x.c:3861 config/tc-tic6x.c:3926 #: config/tc-tic6x.c:3953 config/tc-tic6x.c:3981 msgid "immediate offset out of range" msgstr "" -#: config/tc-aarch64.c:7813 config/tc-arm.c:23267 config/tc-arm.c:23335 -#: config/tc-arm.c:23617 +#: config/tc-aarch64.c:7953 config/tc-arm.c:27817 config/tc-arm.c:27885 +#: config/tc-arm.c:28167 #, c-format msgid "undefined symbol %s used as an immediate value" msgstr "" -#: config/tc-aarch64.c:7825 +#: config/tc-aarch64.c:7965 msgid "pc-relative load offset not word aligned" msgstr "" -#: config/tc-aarch64.c:7828 +#: config/tc-aarch64.c:7968 msgid "pc-relative load offset out of range" msgstr "" -#: config/tc-aarch64.c:7840 +#: config/tc-aarch64.c:7980 msgid "pc-relative address offset out of range" msgstr "" -#: config/tc-aarch64.c:7852 config/tc-aarch64.c:7867 +#: config/tc-aarch64.c:7992 config/tc-aarch64.c:8007 msgid "conditional branch target not word aligned" msgstr "" -#: config/tc-aarch64.c:7855 config/tc-aarch64.c:7870 config/tc-arm.c:23910 +#: config/tc-aarch64.c:7995 config/tc-aarch64.c:8010 config/tc-arm.c:28462 msgid "conditional branch out of range" msgstr "" -#: config/tc-aarch64.c:7883 +#: config/tc-aarch64.c:8023 msgid "branch target not word aligned" msgstr "" -#: config/tc-aarch64.c:7886 config/tc-arm.c:856 config/tc-mips.c:15792 -#: config/tc-mips.c:15808 config/tc-mips.c:15898 +#: config/tc-aarch64.c:8026 config/tc-arm.c:899 config/tc-arm.c:29265 +#: config/tc-mips.c:16047 config/tc-mips.c:16063 config/tc-mips.c:16153 msgid "branch out of range" msgstr "" -#: config/tc-aarch64.c:7945 config/tc-arm.c:23508 config/tc-arm.c:23523 -#: config/tc-arm.c:23538 config/tc-arm.c:23549 config/tc-arm.c:23572 -#: config/tc-arm.c:24403 config/tc-moxie.c:716 config/tc-pj.c:452 -#: config/tc-sh.c:3733 +#: config/tc-aarch64.c:8085 config/tc-arm.c:28058 config/tc-arm.c:28073 +#: config/tc-arm.c:28088 config/tc-arm.c:28099 config/tc-arm.c:28122 +#: config/tc-arm.c:28969 config/tc-moxie.c:716 config/tc-pj.c:452 +#: config/tc-sh.c:3727 msgid "offset out of range" msgstr "" -#: config/tc-aarch64.c:7960 +#: config/tc-aarch64.c:8100 msgid "unsigned value out of range" msgstr "" -#: config/tc-aarch64.c:7971 +#: config/tc-aarch64.c:8111 msgid "signed value out of range" msgstr "" -#: config/tc-aarch64.c:8121 +#: config/tc-aarch64.c:8261 #, c-format msgid "unexpected %s fixup" msgstr "" -#: config/tc-aarch64.c:8187 config/tc-arm.c:24918 config/tc-arm.c:24939 -#: config/tc-mips.c:18147 config/tc-or1k.c:348 config/tc-score.c:7468 +#: config/tc-aarch64.c:8327 config/tc-arm.c:29685 config/tc-arm.c:29706 +#: config/tc-mips.c:18414 config/tc-or1k.c:345 config/tc-score.c:7468 #, c-format msgid "cannot represent %s relocation in this object file format" msgstr "" -#: config/tc-aarch64.c:8220 +#: config/tc-aarch64.c:8360 #, c-format msgid "cannot do %u-byte relocation" msgstr "" -#: config/tc-aarch64.c:8540 config/tc-arm.c:25412 config/tc-score.c:6293 +#: config/tc-aarch64.c:8683 config/tc-arm.c:30180 config/tc-score.c:6293 #: config/tc-score.c:6523 config/tc-score.c:6528 msgid "virtual memory exhausted" msgstr "" -#: config/tc-aarch64.c:8703 config/tc-arm.c:25754 +#: config/tc-aarch64.c:8849 config/tc-arm.c:30523 msgid "assemble for big-endian" msgstr "" -#: config/tc-aarch64.c:8704 config/tc-arm.c:25755 +#: config/tc-aarch64.c:8850 config/tc-arm.c:30524 msgid "assemble for little-endian" msgstr "" -#: config/tc-aarch64.c:8707 +#: config/tc-aarch64.c:8853 msgid "temporary switch for dumping" msgstr "" -#: config/tc-aarch64.c:8709 +#: config/tc-aarch64.c:8855 msgid "output verbose error messages" msgstr "" -#: config/tc-aarch64.c:8711 +#: config/tc-aarch64.c:8857 msgid "do not output verbose error messages" msgstr "" -#: config/tc-aarch64.c:8938 config/tc-arm.c:26583 +#: config/tc-aarch64.c:9137 config/tc-arm.c:31608 msgid "invalid architectural extension" msgstr "" -#: config/tc-aarch64.c:8963 config/tc-arm.c:26615 +#: config/tc-aarch64.c:9162 config/tc-arm.c:31640 msgid "must specify extensions to add before specifying those to remove" msgstr "" -#: config/tc-aarch64.c:8971 config/tc-arm.c:26623 +#: config/tc-aarch64.c:9170 config/tc-arm.c:31648 msgid "missing architectural extension" msgstr "" -#: config/tc-aarch64.c:8998 config/tc-arm.c:26674 +#: config/tc-aarch64.c:9197 config/tc-arm.c:31734 #, c-format msgid "unknown architectural extension `%s'" msgstr "" -#: config/tc-aarch64.c:9022 config/tc-arm.c:26708 config/tc-metag.c:5834 +#: config/tc-aarch64.c:9221 config/tc-arm.c:31784 config/tc-metag.c:5834 #, c-format msgid "missing cpu name `%s'" msgstr "" -#: config/tc-aarch64.c:9036 config/tc-aarch64.c:9253 config/tc-arm.c:26743 -#: config/tc-arm.c:27524 config/tc-csky.c:896 config/tc-metag.c:5845 +#: config/tc-aarch64.c:9235 config/tc-aarch64.c:9452 config/tc-arm.c:31819 +#: config/tc-arm.c:32618 config/tc-csky.c:896 config/tc-metag.c:5845 #, c-format msgid "unknown cpu `%s'" msgstr "" -#: config/tc-aarch64.c:9054 config/tc-arm.c:26761 +#: config/tc-aarch64.c:9253 config/tc-arm.c:31837 #, c-format msgid "missing architecture name `%s'" msgstr "" -#: config/tc-aarch64.c:9068 config/tc-aarch64.c:9300 config/tc-arm.c:26781 -#: config/tc-arm.c:27558 config/tc-arm.c:27588 config/tc-score.c:7703 +#: config/tc-aarch64.c:9267 config/tc-aarch64.c:9499 config/tc-arm.c:31859 +#: config/tc-arm.c:32653 config/tc-arm.c:32683 config/tc-score.c:7703 #, c-format msgid "unknown architecture `%s'\n" msgstr "" -#: config/tc-aarch64.c:9091 +#: config/tc-aarch64.c:9290 #, c-format msgid "missing abi name `%s'" msgstr "" -#: config/tc-aarch64.c:9102 +#: config/tc-aarch64.c:9301 #, c-format msgid "unknown abi `%s'\n" msgstr "" -#: config/tc-aarch64.c:9108 +#: config/tc-aarch64.c:9307 msgid "<abi name>\t specify for ABI <abi name>" msgstr "" -#: config/tc-aarch64.c:9111 config/tc-arm.c:26868 config/tc-metag.c:5911 +#: config/tc-aarch64.c:9310 config/tc-arm.c:31946 config/tc-metag.c:5911 msgid "<cpu name>\t assemble for CPU <cpu name>" msgstr "" -#: config/tc-aarch64.c:9113 config/tc-arm.c:26870 +#: config/tc-aarch64.c:9312 config/tc-arm.c:31948 msgid "<arch name>\t assemble for architecture <arch name>" msgstr "" -#: config/tc-aarch64.c:9152 config/tc-aarch64.c:9172 config/tc-arm.c:26932 -#: config/tc-arm.c:26950 config/tc-arm.c:26970 config/tc-metag.c:5936 +#: config/tc-aarch64.c:9351 config/tc-aarch64.c:9371 config/tc-arm.c:32016 +#: config/tc-arm.c:32034 config/tc-arm.c:32054 config/tc-metag.c:5936 #, c-format msgid "option `-%c%s' is deprecated: %s" msgstr "" -#: config/tc-aarch64.c:9192 +#: config/tc-aarch64.c:9391 #, c-format msgid " AArch64-specific assembler options:\n" msgstr "" -#: config/tc-aarch64.c:9203 config/tc-arc.c:3557 config/tc-arm.c:27001 +#: config/tc-aarch64.c:9402 config/tc-arc.c:3554 config/tc-arm.c:32085 #, c-format msgid " -EB assemble code for a big-endian cpu\n" msgstr "" -#: config/tc-aarch64.c:9208 config/tc-arc.c:3559 config/tc-arm.c:27006 +#: config/tc-aarch64.c:9407 config/tc-arc.c:3556 config/tc-arm.c:32090 #, c-format msgid " -EL assemble code for a little-endian cpu\n" msgstr "" @@ -2193,7 +2219,7 @@ msgstr "" msgid "More than one relocation op per insn" msgstr "" -#: config/tc-alpha.c:929 config/tc-arc.c:1199 +#: config/tc-alpha.c:929 config/tc-arc.c:1196 msgid "No relocation operand" msgstr "" @@ -2217,344 +2243,344 @@ msgstr "" msgid "Bad sequence number: !%s!%s" msgstr "" -#: config/tc-alpha.c:1185 config/tc-alpha.c:3359 +#: config/tc-alpha.c:1185 config/tc-alpha.c:3358 #, c-format msgid "inappropriate arguments for opcode `%s'" msgstr "" -#: config/tc-alpha.c:1187 config/tc-alpha.c:3361 +#: config/tc-alpha.c:1187 config/tc-alpha.c:3360 #, c-format msgid "opcode `%s' not supported for target %s" msgstr "" -#: config/tc-alpha.c:1191 config/tc-alpha.c:3365 config/tc-avr.c:1903 -#: config/tc-msp430.c:4163 config/tc-wasm32.c:753 +#: config/tc-alpha.c:1191 config/tc-alpha.c:3364 config/tc-avr.c:1903 +#: config/tc-msp430.c:4349 config/tc-wasm32.c:753 #, c-format msgid "unknown opcode `%s'" msgstr "" -#: config/tc-alpha.c:1272 config/tc-alpha.c:1531 +#: config/tc-alpha.c:1271 config/tc-alpha.c:1530 msgid "overflow in literal (.lita) table" msgstr "" -#: config/tc-alpha.c:1279 config/tc-alpha.c:1303 config/tc-alpha.c:1544 -#: config/tc-alpha.c:2231 config/tc-alpha.c:2276 config/tc-alpha.c:2345 -#: config/tc-alpha.c:2428 config/tc-alpha.c:2653 config/tc-alpha.c:2751 +#: config/tc-alpha.c:1278 config/tc-alpha.c:1302 config/tc-alpha.c:1543 +#: config/tc-alpha.c:2230 config/tc-alpha.c:2275 config/tc-alpha.c:2344 +#: config/tc-alpha.c:2427 config/tc-alpha.c:2652 config/tc-alpha.c:2750 msgid "macro requires $at register while noat in effect" msgstr "" -#: config/tc-alpha.c:1281 config/tc-alpha.c:1305 config/tc-alpha.c:1546 +#: config/tc-alpha.c:1280 config/tc-alpha.c:1304 config/tc-alpha.c:1545 msgid "macro requires $at while $at in use" msgstr "" -#: config/tc-alpha.c:1490 +#: config/tc-alpha.c:1489 msgid "bignum invalid; zero assumed" msgstr "" -#: config/tc-alpha.c:1492 +#: config/tc-alpha.c:1491 msgid "floating point number invalid; zero assumed" msgstr "" -#: config/tc-alpha.c:1497 +#: config/tc-alpha.c:1496 msgid "can't handle expression" msgstr "" -#: config/tc-alpha.c:1537 +#: config/tc-alpha.c:1536 msgid "overflow in literal (.lit8) table" msgstr "" -#: config/tc-alpha.c:1834 +#: config/tc-alpha.c:1833 #, c-format msgid "too many ldah insns for !gpdisp!%ld" msgstr "" -#: config/tc-alpha.c:1836 config/tc-alpha.c:1848 +#: config/tc-alpha.c:1835 config/tc-alpha.c:1847 #, c-format msgid "both insns for !gpdisp!%ld must be in the same section" msgstr "" -#: config/tc-alpha.c:1846 +#: config/tc-alpha.c:1845 #, c-format msgid "too many lda insns for !gpdisp!%ld" msgstr "" -#: config/tc-alpha.c:1902 +#: config/tc-alpha.c:1901 #, c-format msgid "too many lituse insns for !lituse_tlsgd!%ld" msgstr "" -#: config/tc-alpha.c:1905 +#: config/tc-alpha.c:1904 #, c-format msgid "too many lituse insns for !lituse_tlsldm!%ld" msgstr "" -#: config/tc-alpha.c:1922 +#: config/tc-alpha.c:1921 #, c-format msgid "duplicate !tlsgd!%ld" msgstr "" -#: config/tc-alpha.c:1924 +#: config/tc-alpha.c:1923 #, c-format msgid "sequence number in use for !tlsldm!%ld" msgstr "" -#: config/tc-alpha.c:1938 +#: config/tc-alpha.c:1937 #, c-format msgid "duplicate !tlsldm!%ld" msgstr "" -#: config/tc-alpha.c:1940 +#: config/tc-alpha.c:1939 #, c-format msgid "sequence number in use for !tlsgd!%ld" msgstr "" -#: config/tc-alpha.c:1995 config/tc-arc.c:2827 config/tc-mn10200.c:854 -#: config/tc-mn10300.c:1150 config/tc-ppc.c:1964 config/tc-s390.c:674 +#: config/tc-alpha.c:1994 config/tc-arc.c:2824 config/tc-mn10200.c:854 +#: config/tc-mn10300.c:1150 config/tc-ppc.c:2079 config/tc-s390.c:676 #: config/tc-tilegx.c:426 config/tc-tilegx.c:476 config/tc-tilepro.c:382 msgid "operand" msgstr "" -#: config/tc-alpha.c:2134 +#: config/tc-alpha.c:2133 msgid "invalid relocation for instruction" msgstr "" -#: config/tc-alpha.c:2148 +#: config/tc-alpha.c:2147 msgid "invalid relocation for field" msgstr "" -#: config/tc-alpha.c:2980 +#: config/tc-alpha.c:2979 msgid "can not resolve expression" msgstr "" -#: config/tc-alpha.c:3515 config/tc-microblaze.c:204 config/tc-ppc.c:2287 -#: config/tc-ppc.c:5663 +#: config/tc-alpha.c:3514 config/tc-microblaze.c:204 config/tc-ppc.c:2414 +#: config/tc-ppc.c:6006 #, c-format msgid ".COMMon length (%ld.) <0! Ignored." msgstr "" -#: config/tc-alpha.c:3526 config/tc-ia64.c:1094 config/tc-sparc.c:4279 +#: config/tc-alpha.c:3525 config/tc-ia64.c:1094 config/tc-sparc.c:4279 #: config/tc-v850.c:306 msgid "Ignoring attempt to re-define symbol" msgstr "" -#: config/tc-alpha.c:3618 config/tc-sparc.c:4287 +#: config/tc-alpha.c:3617 config/tc-sparc.c:4287 #, c-format msgid "Length of .comm \"%s\" is already %ld. Not changed to %ld." msgstr "" -#: config/tc-alpha.c:3725 +#: config/tc-alpha.c:3724 msgid ".ent directive has no name" msgstr "" -#: config/tc-alpha.c:3733 +#: config/tc-alpha.c:3732 msgid "nested .ent directives" msgstr "" -#: config/tc-alpha.c:3777 ecoff.c:3008 +#: config/tc-alpha.c:3776 ecoff.c:3008 msgid ".end directive has no name" msgstr "" -#: config/tc-alpha.c:3785 +#: config/tc-alpha.c:3784 msgid ".end directive without matching .ent" msgstr "" -#: config/tc-alpha.c:3787 +#: config/tc-alpha.c:3786 msgid ".end directive names different symbol than .ent" msgstr "" -#: config/tc-alpha.c:3830 ecoff.c:3145 +#: config/tc-alpha.c:3829 ecoff.c:3145 msgid ".fmask outside of .ent" msgstr "" -#: config/tc-alpha.c:3832 config/tc-score.c:5595 ecoff.c:3209 +#: config/tc-alpha.c:3831 config/tc-score.c:5594 ecoff.c:3209 msgid ".mask outside of .ent" msgstr "" -#: config/tc-alpha.c:3840 ecoff.c:3152 +#: config/tc-alpha.c:3839 ecoff.c:3152 msgid "bad .fmask directive" msgstr "" -#: config/tc-alpha.c:3842 ecoff.c:3216 +#: config/tc-alpha.c:3841 ecoff.c:3216 msgid "bad .mask directive" msgstr "" -#: config/tc-alpha.c:3875 config/tc-mips.c:19628 config/tc-score.c:5736 +#: config/tc-alpha.c:3874 config/tc-mips.c:19896 config/tc-score.c:5735 #: ecoff.c:3173 msgid ".frame outside of .ent" msgstr "" -#: config/tc-alpha.c:3886 config/tc-mips.c:19639 ecoff.c:3184 +#: config/tc-alpha.c:3885 config/tc-mips.c:19907 ecoff.c:3184 msgid "bad .frame directive" msgstr "" -#: config/tc-alpha.c:3920 +#: config/tc-alpha.c:3919 msgid ".prologue directive without a preceding .ent directive" msgstr "" -#: config/tc-alpha.c:3938 +#: config/tc-alpha.c:3937 #, c-format msgid "Invalid argument %d to .prologue." msgstr "" -#: config/tc-alpha.c:4027 +#: config/tc-alpha.c:4026 msgid "ECOFF debugging is disabled." msgstr "" -#: config/tc-alpha.c:4041 +#: config/tc-alpha.c:4040 msgid ".ent directive without matching .end" msgstr "" -#: config/tc-alpha.c:4134 +#: config/tc-alpha.c:4133 msgid ".usepv directive has no name" msgstr "" -#: config/tc-alpha.c:4147 +#: config/tc-alpha.c:4146 msgid ".usepv directive has no type" msgstr "" -#: config/tc-alpha.c:4162 +#: config/tc-alpha.c:4161 msgid "unknown argument for .usepv" msgstr "" -#: config/tc-alpha.c:4275 +#: config/tc-alpha.c:4274 #, c-format msgid "unknown section attribute %s" msgstr "" -#: config/tc-alpha.c:4370 +#: config/tc-alpha.c:4369 msgid "previous .ent not closed by a .end" msgstr "" -#: config/tc-alpha.c:4391 +#: config/tc-alpha.c:4390 msgid ".ent directive has no symbol" msgstr "" -#: config/tc-alpha.c:4416 +#: config/tc-alpha.c:4415 msgid ".handler directive has no name" msgstr "" -#: config/tc-alpha.c:4447 +#: config/tc-alpha.c:4446 msgid "Bad .frame directive 1./2. param" msgstr "" -#: config/tc-alpha.c:4457 +#: config/tc-alpha.c:4456 #, c-format msgid "Bad RA (%d) register for .frame" msgstr "" -#: config/tc-alpha.c:4462 +#: config/tc-alpha.c:4461 msgid "Bad .frame directive 3./4. param" msgstr "" -#: config/tc-alpha.c:4498 +#: config/tc-alpha.c:4497 msgid ".pdesc directive not in link (.link) section" msgstr "" -#: config/tc-alpha.c:4505 +#: config/tc-alpha.c:4504 msgid ".pdesc directive has no entry symbol" msgstr "" -#: config/tc-alpha.c:4516 +#: config/tc-alpha.c:4515 msgid ".pdesc has a bad entry symbol" msgstr "" -#: config/tc-alpha.c:4527 +#: config/tc-alpha.c:4526 msgid ".pdesc doesn't match with last .ent" msgstr "" -#: config/tc-alpha.c:4542 +#: config/tc-alpha.c:4541 msgid "No comma after .pdesc <entryname>" msgstr "" -#: config/tc-alpha.c:4562 +#: config/tc-alpha.c:4561 msgid "unknown procedure kind" msgstr "" -#: config/tc-alpha.c:4657 +#: config/tc-alpha.c:4656 msgid ".name directive not in link (.link) section" msgstr "" -#: config/tc-alpha.c:4665 +#: config/tc-alpha.c:4664 msgid ".name directive has no symbol" msgstr "" -#: config/tc-alpha.c:4699 +#: config/tc-alpha.c:4698 msgid "No symbol after .linkage" msgstr "" -#: config/tc-alpha.c:4746 +#: config/tc-alpha.c:4745 msgid "No symbol after .code_address" msgstr "" -#: config/tc-alpha.c:4772 config/tc-score.c:5601 +#: config/tc-alpha.c:4771 config/tc-score.c:5600 msgid "Bad .mask directive" msgstr "" -#: config/tc-alpha.c:4790 +#: config/tc-alpha.c:4789 msgid "Bad .fmask directive" msgstr "" -#: config/tc-alpha.c:4947 +#: config/tc-alpha.c:4946 #, c-format msgid "Expected comma after name \"%s\"" msgstr "" -#: config/tc-alpha.c:4959 +#: config/tc-alpha.c:4958 #, c-format msgid "unhandled: .proc %s,%d" msgstr "" -#: config/tc-alpha.c:4992 +#: config/tc-alpha.c:4991 #, c-format msgid "Tried to .set unrecognized mode `%s'" msgstr "" -#: config/tc-alpha.c:5018 +#: config/tc-alpha.c:5017 #, c-format msgid "Bad base register, using $%d." msgstr "" -#: config/tc-alpha.c:5039 config/tc-nios2.c:351 config/tc-nios2.c:476 +#: config/tc-alpha.c:5038 config/tc-nios2.c:351 config/tc-nios2.c:476 #, c-format msgid "Alignment too large: %d. assumed" msgstr "" -#: config/tc-alpha.c:5043 config/tc-d30v.c:2057 config/tc-nios2.c:355 +#: config/tc-alpha.c:5042 config/tc-d30v.c:2037 config/tc-nios2.c:355 #: config/tc-nios2.c:480 config/tc-pru.c:220 config/tc-pru.c:336 msgid "Alignment negative: 0 assumed" msgstr "" -#: config/tc-alpha.c:5138 config/tc-alpha.c:5631 +#: config/tc-alpha.c:5137 config/tc-alpha.c:5630 #, c-format msgid "Unknown CPU identifier `%s'" msgstr "" -#: config/tc-alpha.c:5329 +#: config/tc-alpha.c:5328 #, c-format msgid "Chose GP value of %lx\n" msgstr "" -#: config/tc-alpha.c:5343 +#: config/tc-alpha.c:5342 msgid "bad .section directive: want a,s,w,x,M,S,G,T in string" msgstr "" -#: config/tc-alpha.c:5432 +#: config/tc-alpha.c:5431 #, c-format msgid "internal error: can't hash opcode `%s': %s" msgstr "" -#: config/tc-alpha.c:5468 +#: config/tc-alpha.c:5467 #, c-format msgid "internal error: can't hash macro `%s': %s" msgstr "" -#: config/tc-alpha.c:5552 config/tc-arc.c:2480 config/tc-arc.c:2494 -#: config/tc-arm.c:7304 config/tc-arm.c:7316 config/tc-xtensa.c:5462 -#: config/tc-xtensa.c:5538 config/tc-xtensa.c:5655 config/tc-z80.c:1951 +#: config/tc-alpha.c:5551 config/tc-arc.c:2477 config/tc-arc.c:2491 +#: config/tc-arm.c:872 config/tc-xtensa.c:5445 config/tc-xtensa.c:5521 +#: config/tc-xtensa.c:5638 config/tc-z80.c:3257 msgid "syntax error" msgstr "" -#: config/tc-alpha.c:5682 +#: config/tc-alpha.c:5681 msgid "" "Alpha options:\n" "-32addr\t\t\ttreat addresses as 32-bit values\n" @@ -2566,7 +2592,7 @@ msgid "" "\t\t\tthese variants include PALcode opcodes\n" msgstr "" -#: config/tc-alpha.c:5692 +#: config/tc-alpha.c:5691 msgid "" "VMS options:\n" "-+\t\t\tencode (don't truncate) names longer than 64 characters\n" @@ -2574,204 +2600,204 @@ msgid "" "-replace/-noreplace\tenable or disable the optimization of procedure calls\n" msgstr "" -#: config/tc-alpha.c:5949 config/tc-arc.c:3107 +#: config/tc-alpha.c:5948 config/tc-arc.c:3104 #, c-format msgid "unhandled relocation type %s" msgstr "" -#: config/tc-alpha.c:5962 config/tc-arc.c:3115 +#: config/tc-alpha.c:5961 config/tc-arc.c:3112 msgid "non-absolute expression in constant field" msgstr "" -#: config/tc-alpha.c:5976 +#: config/tc-alpha.c:5975 #, c-format msgid "type %d reloc done?\n" msgstr "" -#: config/tc-alpha.c:6023 config/tc-alpha.c:6030 +#: config/tc-alpha.c:6022 config/tc-alpha.c:6029 msgid "Used $at without \".set noat\"" msgstr "" -#: config/tc-alpha.c:6199 +#: config/tc-alpha.c:6198 #, c-format msgid "!samegp reloc against symbol without .prologue: %s" msgstr "" -#: config/tc-alpha.c:6243 config/tc-arc.c:3238 config/tc-csky.c:5149 -#: config/tc-tilegx.c:1752 config/tc-tilepro.c:1532 config/tc-wasm32.c:813 -#: config/tc-xtensa.c:6148 +#: config/tc-alpha.c:6242 config/tc-arc.c:3235 config/tc-csky.c:5152 +#: config/tc-tilegx.c:1749 config/tc-tilepro.c:1529 config/tc-wasm32.c:813 +#: config/tc-xtensa.c:6142 #, c-format msgid "cannot represent `%s' relocation in object file" msgstr "" -#: config/tc-alpha.c:6249 config/tc-arc.c:3244 +#: config/tc-alpha.c:6248 config/tc-arc.c:3241 #, c-format msgid "internal error? cannot generate `%s' relocation" msgstr "" -#: config/tc-alpha.c:6345 +#: config/tc-alpha.c:6344 #, c-format msgid "frame reg expected, using $%d." msgstr "" -#: config/tc-arc.c:773 +#: config/tc-arc.c:770 #, c-format msgid "internal error: can't hash opcode '%s': %s" msgstr "" -#: config/tc-arc.c:781 config/tc-arc.c:2577 config/tc-arc.c:2595 -#: config/tc-arc.c:2648 config/tc-arc.c:2672 config/tc-arc.c:4875 -#: config/tc-arc.c:4942 config/tc-cr16.c:805 config/tc-cr16.c:828 +#: config/tc-arc.c:778 config/tc-arc.c:2574 config/tc-arc.c:2592 +#: config/tc-arc.c:2645 config/tc-arc.c:2669 config/tc-arc.c:4871 +#: config/tc-arc.c:4938 config/tc-cr16.c:805 config/tc-cr16.c:828 #: config/tc-cris.c:1195 config/tc-crx.c:535 config/tc-crx.c:562 #: config/tc-crx.c:580 config/tc-pdp11.c:193 msgid "Virtual memory exhausted" msgstr "" -#: config/tc-arc.c:831 +#: config/tc-arc.c:828 #, c-format msgid "invalid %s option for %s cpu" msgstr "" -#: config/tc-arc.c:836 +#: config/tc-arc.c:833 msgid "conflicting ISA extension attributes." msgstr "" -#: config/tc-arc.c:855 +#: config/tc-arc.c:852 msgid "Multiple .cpu directives found" msgstr "" -#: config/tc-arc.c:873 +#: config/tc-arc.c:870 msgid "Command-line value overrides \".cpu\" directive" msgstr "" -#: config/tc-arc.c:890 +#: config/tc-arc.c:887 #, c-format msgid "unknown architecture: %s\n" msgstr "" -#: config/tc-arc.c:1189 +#: config/tc-arc.c:1186 msgid "No valid label relocation operand" msgstr "" -#: config/tc-arc.c:1211 +#: config/tc-arc.c:1208 #, c-format msgid "Unknown relocation operand: @%s" msgstr "" -#: config/tc-arc.c:1224 +#: config/tc-arc.c:1221 #, c-format msgid "Unable to parse TLS base: %s" msgstr "" -#: config/tc-arc.c:1248 +#: config/tc-arc.c:1245 #, c-format msgid "@%s is not a complex relocation." msgstr "" -#: config/tc-arc.c:1254 +#: config/tc-arc.c:1251 #, c-format msgid "Bad expression: @%s + %s." msgstr "" -#: config/tc-arc.c:1315 +#: config/tc-arc.c:1312 msgid "Brackets in operand field incorrect" msgstr "" -#: config/tc-arc.c:1317 config/tc-xtensa.c:2068 +#: config/tc-arc.c:1314 config/tc-xtensa.c:2058 msgid "extra comma" msgstr "" -#: config/tc-arc.c:1319 config/tc-pru.c:1449 config/tc-pru.c:1718 -#: config/tc-xtensa.c:2072 +#: config/tc-arc.c:1316 config/tc-pru.c:1450 config/tc-pru.c:1719 +#: config/tc-xtensa.c:2062 msgid "missing argument" msgstr "" -#: config/tc-arc.c:1321 config/tc-xtensa.c:2074 +#: config/tc-arc.c:1318 config/tc-xtensa.c:2064 msgid "missing comma or colon" msgstr "" -#: config/tc-arc.c:1390 +#: config/tc-arc.c:1387 msgid "extra dot" msgstr "" -#: config/tc-arc.c:1392 +#: config/tc-arc.c:1389 msgid "unrecognized flag" msgstr "" -#: config/tc-arc.c:1394 +#: config/tc-arc.c:1391 msgid "failed to parse flags" msgstr "" -#: config/tc-arc.c:1420 +#: config/tc-arc.c:1417 msgid "Unhandled reloc type" msgstr "" -#: config/tc-arc.c:2448 +#: config/tc-arc.c:2445 #, c-format msgid "%s for instruction '%s'" msgstr "" -#: config/tc-arc.c:2450 +#: config/tc-arc.c:2447 #, c-format msgid "inappropriate arguments for opcode '%s'" msgstr "" -#: config/tc-arc.c:2452 +#: config/tc-arc.c:2449 #, c-format msgid "opcode '%s' not supported for target %s" msgstr "" -#: config/tc-arc.c:2456 config/tc-tic6x.c:3195 +#: config/tc-arc.c:2453 config/tc-tic6x.c:3195 #, c-format msgid "unknown opcode '%s'" msgstr "" -#: config/tc-arc.c:2514 +#: config/tc-arc.c:2511 #, c-format msgid "Inserting \"%s\" into register table failed: %s" msgstr "" -#: config/tc-arc.c:2550 +#: config/tc-arc.c:2547 #, c-format msgid "Inserting \"%s\" into address type table failed: %s" msgstr "" -#: config/tc-arc.c:2569 config/tc-arc.c:5054 config/tc-h8300.c:78 +#: config/tc-arc.c:2566 config/tc-arc.c:5050 config/tc-h8300.c:78 #: config/tc-h8300.c:87 config/tc-h8300.c:97 config/tc-h8300.c:107 #: config/tc-h8300.c:117 config/tc-h8300.c:128 config/tc-h8300.c:243 -#: config/tc-hppa.c:6822 config/tc-hppa.c:6828 config/tc-hppa.c:6834 -#: config/tc-hppa.c:6840 config/tc-hppa.c:8229 config/tc-lm32.c:197 -#: config/tc-mips.c:3652 config/tc-mips.c:4161 config/tc-mn10300.c:935 +#: config/tc-hppa.c:6821 config/tc-hppa.c:6827 config/tc-hppa.c:6833 +#: config/tc-hppa.c:6839 config/tc-hppa.c:8227 config/tc-lm32.c:197 +#: config/tc-mips.c:3691 config/tc-mips.c:4199 config/tc-mn10300.c:935 #: config/tc-mn10300.c:940 config/tc-mn10300.c:2440 config/tc-xc16x.c:79 #: config/tc-xc16x.c:86 config/tc-xc16x.c:93 msgid "could not set architecture and machine" msgstr "" -#: config/tc-arc.c:2665 config/tc-arc.c:4862 +#: config/tc-arc.c:2662 config/tc-arc.c:4858 #, c-format msgid "internal error: can't hash aux register '%s': %s" msgstr "" -#: config/tc-arc.c:2772 +#: config/tc-arc.c:2769 #, c-format msgid "unhandled reloc %s in md_pcrel_from_section" msgstr "" -#: config/tc-arc.c:2837 +#: config/tc-arc.c:2834 msgid "Unaligned operand. Needs to be 32bit aligned" msgstr "" -#: config/tc-arc.c:2842 +#: config/tc-arc.c:2839 msgid "Unaligned operand. Needs to be 16bit aligned" msgstr "" -#: config/tc-arc.c:2919 config/tc-cr16.c:573 config/tc-crx.c:345 -#: config/tc-mn10200.c:766 write.c:1029 +#: config/tc-arc.c:2916 config/tc-cr16.c:573 config/tc-crx.c:345 +#: config/tc-mn10200.c:766 write.c:1027 #, c-format msgid "can't resolve `%s' {%s section} - `%s' {%s section}" msgstr "" -#: config/tc-arc.c:2978 +#: config/tc-arc.c:2975 #, c-format msgid "PC relative relocation not allowed for (internal) type %d" msgstr "" @@ -2780,35 +2806,35 @@ msgstr "" #. the insn. #. FIXME! Check for the conditionality of #. the insn. -#: config/tc-arc.c:3023 config/tc-arc.c:4001 +#: config/tc-arc.c:3020 config/tc-arc.c:3998 msgid "TLS_*_S9 relocs are not supported yet" msgstr "" #. I cannot fix an GOTPC relocation because I need to relax it #. from ld rx,[pcl,@sym@gotpc] to add rx,pcl,@sym@gotpc. -#: config/tc-arc.c:3059 +#: config/tc-arc.c:3056 msgid "Unsupported operation on reloc" msgstr "" -#: config/tc-arc.c:3135 config/tc-arc.c:3151 +#: config/tc-arc.c:3132 config/tc-arc.c:3148 msgid "unknown fixup size" msgstr "" -#: config/tc-arc.c:3285 +#: config/tc-arc.c:3282 msgid "no relaxation found for this instruction." msgstr "" -#: config/tc-arc.c:3535 +#: config/tc-arc.c:3532 #, c-format msgid "ARC-specific assembler options:\n" msgstr "" -#: config/tc-arc.c:3561 +#: config/tc-arc.c:3558 #, c-format msgid " -mrelax enable relaxation\n" msgstr "" -#: config/tc-arc.c:3564 +#: config/tc-arc.c:3561 #, c-format msgid "" "The following ARC-specific assembler options are deprecated and are " @@ -2816,7 +2842,7 @@ msgid "" "for compatibility only:\n" msgstr "" -#: config/tc-arc.c:3567 +#: config/tc-arc.c:3564 #, c-format msgid "" " -mEA\n" @@ -2846,934 +2872,1074 @@ msgid "" " -mxy\n" msgstr "" -#: config/tc-arc.c:3657 +#: config/tc-arc.c:3654 #, c-format msgid "Unable to find %s relocation for instruction %s" msgstr "" -#: config/tc-arc.c:3952 +#: config/tc-arc.c:3949 #, c-format msgid "Unable to use @plt relocation for insn %s" msgstr "" -#: config/tc-arc.c:3971 +#: config/tc-arc.c:3968 #, c-format msgid "Unable to use @pcl relocation for insn %s" msgstr "" -#: config/tc-arc.c:4027 +#: config/tc-arc.c:4024 #, c-format msgid "invalid relocation %s for field" msgstr "" -#: config/tc-arc.c:4138 +#: config/tc-arc.c:4135 #, c-format msgid "Insn %s has a jump/branch instruction %s in its delay slot." msgstr "" -#: config/tc-arc.c:4143 +#: config/tc-arc.c:4140 #, c-format msgid "Insn %s has an instruction %s with limm in its delay slot." msgstr "" -#: config/tc-arc.c:4253 config/tc-microblaze.c:2558 config/tc-mn10300.c:1069 -#: config/tc-sh.c:418 config/tc-z80.c:700 read.c:4576 +#: config/tc-arc.c:4250 config/tc-microblaze.c:2554 config/tc-mn10300.c:1069 +#: config/tc-sh.c:418 config/tc-z80.c:1015 read.c:4577 #, c-format msgid "unsupported BFD relocation size %u" msgstr "" -#: config/tc-arc.c:4273 +#: config/tc-arc.c:4270 #, c-format msgid "Jump/Branch instruction detected at the end of the ZOL label @%s" msgstr "" -#: config/tc-arc.c:4280 +#: config/tc-arc.c:4277 #, c-format msgid "Kernel instruction detected at the end of the ZOL label @%s" msgstr "" -#: config/tc-arc.c:4285 +#: config/tc-arc.c:4282 #, c-format msgid "" "A jump instruction with long immediate detected at the end of the ZOL label @" "%s" msgstr "" -#: config/tc-arc.c:4291 +#: config/tc-arc.c:4288 #, c-format msgid "An illegal use of delay slot detected at the end of the ZOL label @%s" msgstr "" -#: config/tc-arc.c:4400 +#: config/tc-arc.c:4397 msgid "expected comma after instruction name" msgstr "" -#: config/tc-arc.c:4412 +#: config/tc-arc.c:4409 msgid "expected comma after major opcode" msgstr "" -#: config/tc-arc.c:4598 +#: config/tc-arc.c:4594 #, c-format msgid "Pseudocode already used %s" msgstr "" -#: config/tc-arc.c:4606 +#: config/tc-arc.c:4602 #, c-format msgid "major opcode not in range [0x%02x - 0x%02x]" msgstr "" -#: config/tc-arc.c:4610 +#: config/tc-arc.c:4606 msgid "minor opcode not in range [0x00 - 0x3f]" msgstr "" -#: config/tc-arc.c:4616 +#: config/tc-arc.c:4612 msgid "Improper use of OP1_IMM_IMPLIED" msgstr "" -#: config/tc-arc.c:4622 +#: config/tc-arc.c:4618 msgid "Improper use of OP1_MUST_BE_IMM" msgstr "" -#: config/tc-arc.c:4634 +#: config/tc-arc.c:4630 msgid "Couldn't generate extension instruction opcodes" msgstr "" -#: config/tc-arc.c:4670 +#: config/tc-arc.c:4666 msgid "expected comma after name" msgstr "" -#: config/tc-arc.c:4681 +#: config/tc-arc.c:4677 #, c-format msgid "%s second argument cannot be a negative number %d" msgstr "" -#: config/tc-arc.c:4696 +#: config/tc-arc.c:4692 msgid "expected comma after register number" msgstr "" -#: config/tc-arc.c:4717 +#: config/tc-arc.c:4713 msgid "invalid mode" msgstr "" -#: config/tc-arc.c:4735 +#: config/tc-arc.c:4731 msgid "expected comma after register mode" msgstr "" -#: config/tc-arc.c:4750 +#: config/tc-arc.c:4746 msgid "shortcut designator invalid" msgstr "" -#: config/tc-arc.c:4849 +#: config/tc-arc.c:4845 #, c-format msgid "core register %s value (%d) too large" msgstr "" -#: config/tc-arc.c:4868 +#: config/tc-arc.c:4864 #, c-format msgid "condition code %s value (%d) too large" msgstr "" -#: config/tc-arc.c:4887 +#: config/tc-arc.c:4883 msgid "Unknown extension" msgstr "" -#: config/tc-arc.c:4992 +#: config/tc-arc.c:4988 msgid "Overwrite explicitly set Tag_ARC_CPU_base" msgstr "" -#: config/tc-arc.c:5040 +#: config/tc-arc.c:5036 msgid "Overwrite explicitly set Tag_ARC_ABI_rf16 to full register file" msgstr "" -#: config/tc-arm.c:653 +#: config/tc-arm.c:684 msgid "ARM register expected" msgstr "" -#: config/tc-arm.c:654 +#: config/tc-arm.c:685 msgid "bad or missing co-processor number" msgstr "" -#: config/tc-arm.c:655 +#: config/tc-arm.c:686 msgid "co-processor register expected" msgstr "" -#: config/tc-arm.c:656 +#: config/tc-arm.c:687 msgid "FPA register expected" msgstr "" -#: config/tc-arm.c:657 +#: config/tc-arm.c:688 msgid "VFP single precision register expected" msgstr "" -#: config/tc-arm.c:658 +#: config/tc-arm.c:689 msgid "VFP/Neon double precision register expected" msgstr "" -#: config/tc-arm.c:659 +#: config/tc-arm.c:690 msgid "Neon quad precision register expected" msgstr "" -#: config/tc-arm.c:660 +#: config/tc-arm.c:691 msgid "VFP single or double precision register expected" msgstr "" -#: config/tc-arm.c:661 +#: config/tc-arm.c:692 msgid "Neon double or quad precision register expected" msgstr "" -#: config/tc-arm.c:662 +#: config/tc-arm.c:693 msgid "Neon single or double precision register expected" msgstr "" -#: config/tc-arm.c:663 +#: config/tc-arm.c:694 msgid "VFP single, double or Neon quad precision register expected" msgstr "" -#: config/tc-arm.c:665 +#: config/tc-arm.c:696 msgid "VFP system register expected" msgstr "" -#: config/tc-arm.c:666 +#: config/tc-arm.c:697 msgid "Maverick MVF register expected" msgstr "" -#: config/tc-arm.c:667 +#: config/tc-arm.c:698 msgid "Maverick MVD register expected" msgstr "" -#: config/tc-arm.c:668 +#: config/tc-arm.c:699 msgid "Maverick MVFX register expected" msgstr "" -#: config/tc-arm.c:669 +#: config/tc-arm.c:700 msgid "Maverick MVDX register expected" msgstr "" -#: config/tc-arm.c:670 +#: config/tc-arm.c:701 msgid "Maverick MVAX register expected" msgstr "" -#: config/tc-arm.c:671 +#: config/tc-arm.c:702 msgid "Maverick DSPSC register expected" msgstr "" -#: config/tc-arm.c:672 +#: config/tc-arm.c:703 msgid "iWMMXt data register expected" msgstr "" -#: config/tc-arm.c:673 config/tc-arm.c:7077 +#: config/tc-arm.c:704 config/tc-arm.c:7793 msgid "iWMMXt control register expected" msgstr "" -#: config/tc-arm.c:674 +#: config/tc-arm.c:705 msgid "iWMMXt scalar register expected" msgstr "" -#: config/tc-arm.c:675 +#: config/tc-arm.c:706 msgid "XScale accumulator register expected" msgstr "" +#: config/tc-arm.c:707 +msgid "MVE vector register expected" +msgstr "" + #. For score5u : div/mul will pop warning message, mmu/alw/asw will pop error message. -#: config/tc-arm.c:837 config/tc-score.c:259 +#: config/tc-arm.c:873 config/tc-score.c:259 msgid "bad arguments to instruction" msgstr "" -#: config/tc-arm.c:838 +#: config/tc-arm.c:874 msgid "r13 not allowed here" msgstr "" -#: config/tc-arm.c:839 +#: config/tc-arm.c:875 msgid "r15 not allowed here" msgstr "" -#: config/tc-arm.c:840 +#: config/tc-arm.c:876 +msgid "Odd register not allowed here" +msgstr "" + +#: config/tc-arm.c:877 +msgid "Even register not allowed here" +msgstr "" + +#: config/tc-arm.c:878 msgid "instruction cannot be conditional" msgstr "" -#: config/tc-arm.c:841 +#: config/tc-arm.c:879 msgid "registers may not be the same" msgstr "" -#: config/tc-arm.c:842 +#: config/tc-arm.c:880 msgid "lo register required" msgstr "" -#: config/tc-arm.c:843 +#: config/tc-arm.c:881 msgid "instruction not supported in Thumb16 mode" msgstr "" -#: config/tc-arm.c:844 +#: config/tc-arm.c:882 msgid "instruction does not accept this addressing mode" msgstr "" -#: config/tc-arm.c:845 +#: config/tc-arm.c:883 msgid "branch must be last instruction in IT block" msgstr "" -#: config/tc-arm.c:846 +#: config/tc-arm.c:884 +msgid "branch out of range or not a multiple of 2" +msgstr "" + +#: config/tc-arm.c:885 msgid "instruction not allowed in IT block" msgstr "" -#: config/tc-arm.c:847 +#: config/tc-arm.c:886 +msgid "instruction missing MVE vector predication code" +msgstr "" + +#: config/tc-arm.c:887 msgid "selected FPU does not support instruction" msgstr "" -#: config/tc-arm.c:848 +#: config/tc-arm.c:888 msgid "thumb conditional instruction should be in IT block" msgstr "" -#: config/tc-arm.c:849 +#: config/tc-arm.c:890 +msgid "vector predicated instruction should be in VPT/VPST block" +msgstr "" + +#: config/tc-arm.c:891 msgid "incorrect condition in IT block" msgstr "" -#: config/tc-arm.c:850 +#: config/tc-arm.c:892 +msgid "incorrect condition in VPT/VPST block" +msgstr "" + +#: config/tc-arm.c:893 msgid "IT falling in the range of a previous IT block" msgstr "" -#: config/tc-arm.c:851 +#: config/tc-arm.c:894 msgid "missing .fnstart before unwinding directive" msgstr "" -#: config/tc-arm.c:853 +#: config/tc-arm.c:896 msgid "cannot use register index with PC-relative addressing" msgstr "" -#: config/tc-arm.c:855 +#: config/tc-arm.c:898 msgid "cannot use writeback with PC-relative addressing" msgstr "" -#: config/tc-arm.c:857 +#: config/tc-arm.c:900 msgid "selected processor does not support fp16 instruction" msgstr "" -#: config/tc-arm.c:858 +#: config/tc-arm.c:901 +msgid "selected processor does not support bf16 instruction" +msgstr "" + +#: config/tc-arm.c:902 msgid "using " msgstr "" -#: config/tc-arm.c:859 +#: config/tc-arm.c:903 msgid "relocation valid in thumb1 code only" msgstr "" -#: config/tc-arm.c:1065 +#: config/tc-arm.c:904 +msgid "Warning: instruction is UNPREDICTABLE in an IT block" +msgstr "" + +#: config/tc-arm.c:906 +msgid "Warning: instruction is UNPREDICTABLE in a VPT block" +msgstr "" + +#: config/tc-arm.c:908 +msgid "Warning: instruction is UNPREDICTABLE with PC operand" +msgstr "" + +#: config/tc-arm.c:910 +msgid "Warning: instruction is UNPREDICTABLE with SP operand" +msgstr "" + +#: config/tc-arm.c:912 +msgid "bad type in SIMD instruction" +msgstr "" + +#: config/tc-arm.c:914 +msgid "" +"GAS auto-detection mode and -march=all is deprecated for MVE, please use a " +"valid -march or -mcpu option." +msgstr "" + +#: config/tc-arm.c:916 +msgid "" +"Warning: 32-bit element size and same destination and source operands makes " +"instruction UNPREDICTABLE" +msgstr "" + +#: config/tc-arm.c:918 +msgid "bad element type for instruction" +msgstr "" + +#: config/tc-arm.c:919 +msgid "MVE vector register Q[0..7] expected" +msgstr "" + +#: config/tc-arm.c:1139 msgid "immediate expression requires a # prefix" msgstr "" -#: config/tc-arm.c:1094 read.c:3799 +#: config/tc-arm.c:1168 read.c:3800 msgid "missing expression" msgstr "" -#: config/tc-arm.c:1108 config/tc-arm.c:5277 config/tc-score.c:1210 +#: config/tc-arm.c:1182 config/tc-arm.c:5649 config/tc-score.c:1209 msgid "invalid constant" msgstr "" -#: config/tc-arm.c:1240 +#: config/tc-arm.c:1360 msgid "expected #constant" msgstr "" -#: config/tc-arm.c:1404 +#: config/tc-arm.c:1532 config/tc-arm.c:1563 #, c-format -msgid "unexpected character `%c' in type specifier" +msgid "bad size %d in type specifier" +msgstr "" + +#: config/tc-arm.c:1539 +msgid "unexpected type character `b' -- did you mean `bf'?" msgstr "" -#: config/tc-arm.c:1421 +#: config/tc-arm.c:1546 #, c-format -msgid "bad size %d in type specifier" +msgid "unexpected character `%c' in type specifier" msgstr "" -#: config/tc-arm.c:1471 +#: config/tc-arm.c:1613 msgid "only one type should be specified for operand" msgstr "" -#: config/tc-arm.c:1477 +#: config/tc-arm.c:1619 msgid "vector type expected" msgstr "" -#: config/tc-arm.c:1551 +#: config/tc-arm.c:1728 +msgid "expected MVE register [q0..q7]" +msgstr "" + +#: config/tc-arm.c:1748 msgid "can't redefine type for operand" msgstr "" -#: config/tc-arm.c:1564 +#: config/tc-arm.c:1764 +msgid "only D and Q registers may be indexed" +msgstr "" + +#: config/tc-arm.c:1766 msgid "only D registers may be indexed" msgstr "" -#: config/tc-arm.c:1570 +#: config/tc-arm.c:1772 msgid "can't change index for operand" msgstr "" -#: config/tc-arm.c:1633 +#: config/tc-arm.c:1835 msgid "register operand expected, but got scalar" msgstr "" -#: config/tc-arm.c:1670 +#: config/tc-arm.c:1886 msgid "scalar must have an index" msgstr "" -#: config/tc-arm.c:1675 config/tc-arm.c:16604 config/tc-arm.c:16664 -#: config/tc-arm.c:17151 +#: config/tc-arm.c:1891 config/tc-arm.c:20150 config/tc-arm.c:20233 +#: config/tc-arm.c:20898 msgid "scalar index out of range" msgstr "" -#: config/tc-arm.c:1725 +#: config/tc-arm.c:1961 +msgid "r0-r12, lr or APSR expected" +msgstr "" + +#: config/tc-arm.c:1980 msgid "bad range in register list" msgstr "" -#: config/tc-arm.c:1733 config/tc-arm.c:1742 config/tc-arm.c:1783 +#: config/tc-arm.c:1988 config/tc-arm.c:1997 config/tc-arm.c:2038 #, c-format msgid "Warning: duplicated register (r%d) in register list" msgstr "" -#: config/tc-arm.c:1745 +#: config/tc-arm.c:2000 msgid "Warning: register range not in ascending order" msgstr "" -#: config/tc-arm.c:1756 +#: config/tc-arm.c:2011 msgid "missing `}'" msgstr "" -#: config/tc-arm.c:1772 +#: config/tc-arm.c:2027 msgid "invalid register mask" msgstr "" -#: config/tc-arm.c:1907 config/tc-arm.c:1951 +#: config/tc-arm.c:2171 config/tc-arm.c:2279 +msgid "VPR expected last" +msgstr "" + +#: config/tc-arm.c:2177 +msgid "VFP single precision register or VPR expected" +msgstr "" + +#. regtype == REG_TYPE_VFD. +#: config/tc-arm.c:2180 +msgid "VFP/Neon double precision register or VPR expected" +msgstr "" + +#: config/tc-arm.c:2197 config/tc-arm.c:2241 msgid "register out of range in list" msgstr "" -#: config/tc-arm.c:1929 config/tc-arm.c:4214 config/tc-arm.c:4348 +#: config/tc-arm.c:2219 config/tc-arm.c:4518 config/tc-arm.c:4652 msgid "register list not in ascending order" msgstr "" -#: config/tc-arm.c:1960 +#: config/tc-arm.c:2250 msgid "register range not in ascending order" msgstr "" -#: config/tc-arm.c:1993 +#: config/tc-arm.c:2289 msgid "non-contiguous register range" msgstr "" -#: config/tc-arm.c:2052 +#: config/tc-arm.c:2349 +msgid "register stride must be 1" +msgstr "" + +#: config/tc-arm.c:2350 msgid "register stride must be 1 or 2" msgstr "" -#: config/tc-arm.c:2053 +#: config/tc-arm.c:2351 msgid "mismatched element/structure types in list" msgstr "" -#: config/tc-arm.c:2121 +#: config/tc-arm.c:2421 msgid "don't use Rn-Rm syntax with non-unit stride" msgstr "" -#: config/tc-arm.c:2176 +#: config/tc-arm.c:2476 msgid "error parsing element/structure list" msgstr "" -#: config/tc-arm.c:2182 +#: config/tc-arm.c:2482 msgid "expected }" msgstr "" -#: config/tc-arm.c:2273 +#: config/tc-arm.c:2573 msgid "attempt to redefine typed alias" msgstr "" -#: config/tc-arm.c:2408 +#: config/tc-arm.c:2708 msgid "bad type for register" msgstr "" -#: config/tc-arm.c:2419 config/tc-nios2.c:1804 +#: config/tc-arm.c:2719 config/tc-nios2.c:1802 msgid "expression must be constant" msgstr "" -#: config/tc-arm.c:2436 +#: config/tc-arm.c:2736 msgid "can't redefine the type of a register alias" msgstr "" -#: config/tc-arm.c:2443 +#: config/tc-arm.c:2743 msgid "you must specify a single type only" msgstr "" -#: config/tc-arm.c:2456 +#: config/tc-arm.c:2756 msgid "can't redefine the index of a scalar alias" msgstr "" -#: config/tc-arm.c:2464 +#: config/tc-arm.c:2764 msgid "scalar index must be constant" msgstr "" -#: config/tc-arm.c:2473 +#: config/tc-arm.c:2773 msgid "expecting ]" msgstr "" -#: config/tc-arm.c:2525 +#: config/tc-arm.c:2825 msgid "invalid syntax for .dn directive" msgstr "" -#: config/tc-arm.c:2531 +#: config/tc-arm.c:2831 msgid "invalid syntax for .qn directive" msgstr "" -#: config/tc-arm.c:2566 +#: config/tc-arm.c:2866 #, c-format msgid "ignoring attempt to use .unreq on fixed register name: '%s'" msgstr "" -#: config/tc-arm.c:2831 +#: config/tc-arm.c:3131 #, c-format msgid "Failed to find real start of function: %s\n" msgstr "" -#: config/tc-arm.c:2848 +#: config/tc-arm.c:3148 msgid "selected processor does not support THUMB opcodes" msgstr "" -#: config/tc-arm.c:2861 +#: config/tc-arm.c:3161 msgid "selected processor does not support ARM opcodes" msgstr "" -#: config/tc-arm.c:2873 +#: config/tc-arm.c:3173 #, c-format msgid "invalid instruction size selected (%d)" msgstr "" -#: config/tc-arm.c:2905 +#: config/tc-arm.c:3205 #, c-format msgid "invalid operand to .code directive (%d) (expecting 16 or 32)" msgstr "" -#: config/tc-arm.c:2960 +#: config/tc-arm.c:3260 #, c-format msgid "expected comma after name \"%s\"" msgstr "" -#: config/tc-arm.c:3010 config/tc-m32r.c:584 +#: config/tc-arm.c:3310 config/tc-m32r.c:584 #, c-format msgid "symbol `%s' already defined" msgstr "" -#: config/tc-arm.c:3043 +#: config/tc-arm.c:3343 #, c-format msgid "unrecognized syntax mode \"%s\"" msgstr "" -#: config/tc-arm.c:3086 +#: config/tc-arm.c:3386 msgid ".ref pseudo-op only available with -mccs flag." msgstr "" -#: config/tc-arm.c:3127 +#: config/tc-arm.c:3427 msgid ".asmfunc repeated." msgstr "" -#: config/tc-arm.c:3131 +#: config/tc-arm.c:3431 msgid ".asmfunc without function." msgstr "" -#: config/tc-arm.c:3137 +#: config/tc-arm.c:3437 msgid ".asmfunc pseudo-op only available with -mccs flag." msgstr "" -#: config/tc-arm.c:3148 +#: config/tc-arm.c:3448 msgid ".endasmfunc without a .asmfunc." msgstr "" -#: config/tc-arm.c:3152 +#: config/tc-arm.c:3452 msgid ".endasmfunc without function." msgstr "" -#: config/tc-arm.c:3163 +#: config/tc-arm.c:3463 msgid ".endasmfunc pseudo-op only available with -mccs flag." msgstr "" -#: config/tc-arm.c:3172 +#: config/tc-arm.c:3472 msgid ".def pseudo-op only available with -mccs flag." msgstr "" -#: config/tc-arm.c:3330 +#: config/tc-arm.c:3630 msgid "invalid type for literal pool" msgstr "" -#: config/tc-arm.c:3410 config/tc-tic54x.c:5353 +#: config/tc-arm.c:3710 config/tc-tic54x.c:5354 #, c-format msgid "Invalid label '%s'" msgstr "" -#: config/tc-arm.c:3586 +#: config/tc-arm.c:3886 msgid "(plt) is only valid on branch targets" msgstr "" -#: config/tc-arm.c:3592 config/tc-csky.c:6989 config/tc-s390.c:1208 -#: config/tc-s390.c:1878 config/tc-xtensa.c:1694 +#: config/tc-arm.c:3892 config/tc-csky.c:6992 config/tc-s390.c:1210 +#: config/tc-s390.c:1880 config/tc-xtensa.c:1684 #, c-format msgid "%s relocations do not fit in %d byte" msgid_plural "%s relocations do not fit in %d bytes" msgstr[0] "" msgstr[1] "" -#: config/tc-arm.c:3674 +#: config/tc-arm.c:3974 msgid ".inst.n operand too big. Use .inst.w instead" msgstr "" -#: config/tc-arm.c:3694 +#: config/tc-arm.c:3994 msgid "cannot determine Thumb instruction size. Use .inst.n/.inst.w instead" msgstr "" -#: config/tc-arm.c:3724 +#: config/tc-arm.c:4024 msgid "width suffixes are invalid in ARM mode" msgstr "" -#: config/tc-arm.c:3766 dwarf2dbg.c:1005 +#: config/tc-arm.c:4066 dwarf2dbg.c:1033 msgid "expected 0 or 1" msgstr "" -#: config/tc-arm.c:3770 +#: config/tc-arm.c:4070 msgid "missing comma" msgstr "" -#: config/tc-arm.c:3803 +#: config/tc-arm.c:4103 msgid "duplicate .fnstart directive" msgstr "" -#: config/tc-arm.c:3834 config/tc-tic6x.c:412 +#: config/tc-arm.c:4134 config/tc-tic6x.c:412 msgid "duplicate .handlerdata directive" msgstr "" -#: config/tc-arm.c:3853 +#: config/tc-arm.c:4153 msgid ".fnend directive without .fnstart" msgstr "" -#: config/tc-arm.c:3920 config/tc-tic6x.c:393 +#: config/tc-arm.c:4220 config/tc-tic6x.c:393 msgid "personality routine specified for cantunwind frame" msgstr "" -#: config/tc-arm.c:3937 config/tc-tic6x.c:454 +#: config/tc-arm.c:4237 config/tc-tic6x.c:454 msgid "duplicate .personalityindex directive" msgstr "" -#: config/tc-arm.c:3944 config/tc-tic6x.c:461 +#: config/tc-arm.c:4244 config/tc-tic6x.c:461 msgid "bad personality routine number" msgstr "" -#: config/tc-arm.c:3966 config/tc-tic6x.c:478 +#: config/tc-arm.c:4266 config/tc-tic6x.c:478 msgid "duplicate .personality directive" msgstr "" -#: config/tc-arm.c:3990 config/tc-arm.c:4118 config/tc-arm.c:4166 +#: config/tc-arm.c:4290 config/tc-arm.c:4420 config/tc-arm.c:4470 msgid "expected register list" msgstr "" -#: config/tc-arm.c:4072 +#: config/tc-arm.c:4372 msgid "expected , <constant>" msgstr "" -#: config/tc-arm.c:4081 +#: config/tc-arm.c:4381 msgid "number of registers must be in the range [1:4]" msgstr "" -#: config/tc-arm.c:4228 config/tc-arm.c:4362 +#: config/tc-arm.c:4532 config/tc-arm.c:4666 msgid "bad register range" msgstr "" -#: config/tc-arm.c:4428 +#: config/tc-arm.c:4732 msgid "FPA .unwind_save does not take a register list" msgstr "" -#: config/tc-arm.c:4456 +#: config/tc-arm.c:4760 msgid ".unwind_save does not support this kind of register" msgstr "" -#: config/tc-arm.c:4495 +#: config/tc-arm.c:4799 msgid "SP and PC not permitted in .unwind_movsp directive" msgstr "" -#: config/tc-arm.c:4500 +#: config/tc-arm.c:4804 msgid "unexpected .unwind_movsp directive" msgstr "" -#: config/tc-arm.c:4527 +#: config/tc-arm.c:4831 msgid "stack increment must be multiple of 4" msgstr "" -#: config/tc-arm.c:4559 +#: config/tc-arm.c:4863 msgid "expected <reg>, <reg>" msgstr "" -#: config/tc-arm.c:4577 +#: config/tc-arm.c:4881 msgid "register must be either sp or set by a previousunwind_movsp directive" msgstr "" -#: config/tc-arm.c:4616 +#: config/tc-arm.c:4920 msgid "expected <offset>, <opcode>" msgstr "" -#: config/tc-arm.c:4628 +#: config/tc-arm.c:4932 msgid "unwind opcode too long" msgstr "" -#: config/tc-arm.c:4633 +#: config/tc-arm.c:4937 msgid "invalid unwind opcode" msgstr "" -#: config/tc-arm.c:4821 config/tc-arm.c:5832 config/tc-arm.c:10678 -#: config/tc-arm.c:11211 config/tc-arm.c:13238 config/tc-arm.c:14820 -#: config/tc-arm.c:24280 config/tc-arm.c:24344 config/tc-arm.c:24352 +#: config/tc-arm.c:5052 config/tc-arm.c:31763 +#, c-format +msgid "unrecognised float16 format \"%s\"" +msgstr "" + +#: config/tc-arm.c:5063 +msgid "float16 format cannot be set more than once, ignoring." +msgstr "" + +#: config/tc-arm.c:5178 config/tc-arm.c:6252 config/tc-arm.c:11606 +#: config/tc-arm.c:12139 config/tc-arm.c:14259 config/tc-arm.c:16192 +#: config/tc-arm.c:16227 config/tc-arm.c:17155 config/tc-arm.c:19082 +#: config/tc-arm.c:19090 config/tc-arm.c:19097 config/tc-arm.c:20739 +#: config/tc-arm.c:28846 config/tc-arm.c:28910 config/tc-arm.c:28918 #: config/tc-metag.c:5176 config/tc-z8k.c:1151 config/tc-z8k.c:1161 msgid "immediate value out of range" msgstr "" -#: config/tc-arm.c:4991 +#: config/tc-arm.c:5348 msgid "invalid FPA immediate expression" msgstr "" -#: config/tc-arm.c:5177 +#: config/tc-arm.c:5533 +msgid "'UXTW' not allowed here" +msgstr "" + +#: config/tc-arm.c:5541 msgid "'LSL' or 'ASR' required" msgstr "" -#: config/tc-arm.c:5185 +#: config/tc-arm.c:5549 msgid "'LSL' required" msgstr "" -#: config/tc-arm.c:5193 +#: config/tc-arm.c:5557 msgid "'ASR' required" msgstr "" -#: config/tc-arm.c:5272 +#: config/tc-arm.c:5564 +msgid "'UXTW' required" +msgstr "" + +#: config/tc-arm.c:5643 msgid "invalid rotation" msgstr "" -#: config/tc-arm.c:5452 config/tc-arm.c:5621 +#: config/tc-arm.c:5825 config/tc-arm.c:6030 msgid "unknown group relocation" msgstr "" -#: config/tc-arm.c:5488 +#: config/tc-arm.c:5861 msgid "alignment must be constant" msgstr "" -#: config/tc-arm.c:5652 +#: config/tc-arm.c:6064 msgid "this group relocation is not allowed on this instruction" msgstr "" -#: config/tc-arm.c:5708 +#: config/tc-arm.c:6120 msgid "'}' expected at end of 'option' field" msgstr "" -#: config/tc-arm.c:5713 +#: config/tc-arm.c:6125 msgid "cannot combine index with option" msgstr "" -#: config/tc-arm.c:5970 +#: config/tc-arm.c:6390 msgid "unexpected bit specified after APSR" msgstr "" -#: config/tc-arm.c:5982 +#: config/tc-arm.c:6402 msgid "selected processor does not support DSP extension" msgstr "" -#: config/tc-arm.c:5994 +#: config/tc-arm.c:6414 msgid "bad bitmask specified after APSR" msgstr "" -#: config/tc-arm.c:6018 +#: config/tc-arm.c:6438 msgid "writing to APSR without specifying a bitmask is deprecated" msgstr "" -#: config/tc-arm.c:6030 config/tc-arm.c:12372 config/tc-arm.c:12417 -#: config/tc-arm.c:12421 +#: config/tc-arm.c:6450 config/tc-arm.c:13362 config/tc-arm.c:13407 +#: config/tc-arm.c:13411 msgid "selected processor does not support requested special purpose register" msgstr "" -#: config/tc-arm.c:6035 +#: config/tc-arm.c:6455 msgid "flag for {c}psr instruction expected" msgstr "" -#: config/tc-arm.c:6060 +#: config/tc-arm.c:6513 msgid "unrecognized CPS flag" msgstr "" -#: config/tc-arm.c:6067 +#: config/tc-arm.c:6520 msgid "missing CPS flags" msgstr "" -#: config/tc-arm.c:6090 config/tc-arm.c:6096 +#: config/tc-arm.c:6543 config/tc-arm.c:6549 msgid "valid endian specifiers are be or le" msgstr "" -#: config/tc-arm.c:6118 +#: config/tc-arm.c:6571 msgid "missing rotation field after comma" msgstr "" -#: config/tc-arm.c:6133 +#: config/tc-arm.c:6586 msgid "rotation can only be 0, 8, 16, or 24" msgstr "" -#: config/tc-arm.c:6162 +#: config/tc-arm.c:6615 msgid "condition required" msgstr "" -#: config/tc-arm.c:6229 config/tc-arm.c:8962 +#: config/tc-arm.c:6657 config/tc-arm.c:9775 msgid "'[' expected" msgstr "" -#: config/tc-arm.c:6242 +#: config/tc-arm.c:6670 msgid "',' expected" msgstr "" -#: config/tc-arm.c:6259 +#: config/tc-arm.c:6687 msgid "invalid shift" msgstr "" -#: config/tc-arm.c:6332 +#: config/tc-arm.c:6767 +msgid "expected ARM or MVE vector register" +msgstr "" + +#: config/tc-arm.c:6816 msgid "can't use Neon quad register here" msgstr "" -#: config/tc-arm.c:6399 +#: config/tc-arm.c:6885 msgid "expected <Rm> or <Dm> or <Qm> operand" msgstr "" -#: config/tc-arm.c:6479 +#: config/tc-arm.c:6985 +msgid "VFP single, double or MVE vector register expected" +msgstr "" + +#: config/tc-arm.c:7005 msgid "parse error" msgstr "" +#: config/tc-arm.c:7299 +msgid "immediate value 48 or 64 expected" +msgstr "" + #. ISB can only take SY as an option. -#: config/tc-arm.c:6748 +#: config/tc-arm.c:7348 msgid "invalid barrier type" msgstr "" -#: config/tc-arm.c:6845 +#: config/tc-arm.c:7511 msgid "only floating point zero is allowed as immediate value" msgstr "" -#: config/tc-arm.c:6915 +#: config/tc-arm.c:7606 msgid "immediate value is out of range" msgstr "" -#: config/tc-arm.c:7062 +#: config/tc-arm.c:7778 msgid "iWMMXt data or control register expected" msgstr "" -#: config/tc-arm.c:7102 +#: config/tc-arm.c:7819 msgid "Banked registers are not available with this architecture." msgstr "" -#: config/tc-arm.c:7330 config/tc-score.c:264 +#: config/tc-arm.c:8067 +msgid "operand must be LR register" +msgstr "" + +#: config/tc-arm.c:8138 config/tc-score.c:264 msgid "garbage following instruction" msgstr "" #. If REG is R13 (the stack pointer), warn that its use is #. deprecated. -#: config/tc-arm.c:7380 +#: config/tc-arm.c:8188 msgid "use of r13 is deprecated" msgstr "" -#: config/tc-arm.c:7398 config/tc-arm.c:16819 +#: config/tc-arm.c:8206 config/tc-arm.c:20447 msgid "" "ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is " "UNPREDICTABLE" msgstr "" -#: config/tc-arm.c:7473 +#: config/tc-arm.c:8281 msgid "D register out of range for selected VFP version" msgstr "" -#: config/tc-arm.c:7570 config/tc-arm.c:10397 +#: config/tc-arm.c:8378 config/tc-arm.c:11301 msgid "Instruction does not support =N addresses" msgstr "" -#: config/tc-arm.c:7578 +#: config/tc-arm.c:8386 msgid "instruction does not accept preindexed addressing" msgstr "" #. unindexed - only for coprocessor -#: config/tc-arm.c:7594 config/tc-arm.c:10460 +#: config/tc-arm.c:8402 config/tc-arm.c:11364 msgid "instruction does not accept unindexed addressing" msgstr "" -#: config/tc-arm.c:7602 +#: config/tc-arm.c:8410 msgid "destination register same as write-back base" msgstr "" -#: config/tc-arm.c:7603 +#: config/tc-arm.c:8411 msgid "source register same as write-back base" msgstr "" -#: config/tc-arm.c:7653 +#: config/tc-arm.c:8461 msgid "use of PC in this instruction is deprecated" msgstr "" -#: config/tc-arm.c:7676 +#: config/tc-arm.c:8484 msgid "instruction does not accept scaled register index" msgstr "" -#: config/tc-arm.c:7981 +#: config/tc-arm.c:8789 msgid "invalid pseudo operation" msgstr "" -#: config/tc-arm.c:8219 +#: config/tc-arm.c:9032 msgid "invalid co-processor operand" msgstr "" -#: config/tc-arm.c:8235 +#: config/tc-arm.c:9048 msgid "instruction does not support unindexed addressing" msgstr "" -#: config/tc-arm.c:8250 +#: config/tc-arm.c:9063 msgid "pc may not be used with write-back" msgstr "" -#: config/tc-arm.c:8255 +#: config/tc-arm.c:9068 msgid "instruction does not support writeback" msgstr "" -#: config/tc-arm.c:8361 +#: config/tc-arm.c:9174 msgid "Rn must not overlap other operands" msgstr "" -#: config/tc-arm.c:8366 +#: config/tc-arm.c:9179 msgid "swp{b} use is obsoleted for ARMv8 and later" msgstr "" -#: config/tc-arm.c:8369 +#: config/tc-arm.c:9182 msgid "swp{b} use is deprecated for ARMv6 and ARMv7" msgstr "" -#: config/tc-arm.c:8488 config/tc-arm.c:8507 config/tc-arm.c:8520 -#: config/tc-arm.c:11048 config/tc-arm.c:11079 config/tc-arm.c:11101 +#: config/tc-arm.c:9301 config/tc-arm.c:9320 config/tc-arm.c:9333 +#: config/tc-arm.c:11976 config/tc-arm.c:12007 config/tc-arm.c:12029 msgid "bit-field extends past end of register" msgstr "" -#: config/tc-arm.c:8550 +#: config/tc-arm.c:9363 msgid "the only valid suffixes here are '(plt)' and '(tlscall)'" msgstr "" -#: config/tc-arm.c:8603 +#: config/tc-arm.c:9416 msgid "use of r15 in blx in ARM mode is not really useful" msgstr "" -#: config/tc-arm.c:8625 +#: config/tc-arm.c:9438 msgid "use of r15 in bx in ARM mode is not really useful" msgstr "" -#: config/tc-arm.c:8651 +#: config/tc-arm.c:9464 msgid "use of r15 in bxj is not really useful" msgstr "" -#: config/tc-arm.c:8699 +#: config/tc-arm.c:9512 msgid "This coprocessor register access is deprecated in ARMv8" msgstr "" -#: config/tc-arm.c:8907 config/tc-arm.c:8916 +#: config/tc-arm.c:9720 config/tc-arm.c:9729 msgid "writeback of base register is UNPREDICTABLE" msgstr "" -#: config/tc-arm.c:8910 +#: config/tc-arm.c:9723 msgid "writeback of base register when in register list is UNPREDICTABLE" msgstr "" -#: config/tc-arm.c:8920 +#: config/tc-arm.c:9733 msgid "if writeback register is in list, it must be the lowest reg in the list" msgstr "" -#: config/tc-arm.c:8957 +#: config/tc-arm.c:9770 msgid "first transfer register must be even" msgstr "" -#: config/tc-arm.c:8960 +#: config/tc-arm.c:9773 msgid "can only transfer two consecutive registers" msgstr "" @@ -3781,1248 +3947,1392 @@ msgstr "" #. have been called in the first place. #. If op 2 were present and equal to PC, this function wouldn't #. have been called in the first place. -#: config/tc-arm.c:8961 config/tc-arm.c:9031 config/tc-arm.c:9695 -#: config/tc-arm.c:11863 +#: config/tc-arm.c:9774 config/tc-arm.c:9844 config/tc-arm.c:10575 +#: config/tc-arm.c:12851 msgid "r14 not allowed here" msgstr "" -#: config/tc-arm.c:8973 +#: config/tc-arm.c:9786 msgid "base register written back, and overlaps second transfer register" msgstr "" -#: config/tc-arm.c:8983 +#: config/tc-arm.c:9796 msgid "index register overlaps transfer register" msgstr "" -#: config/tc-arm.c:9012 config/tc-arm.c:9662 +#: config/tc-arm.c:9825 config/tc-arm.c:10542 msgid "offset must be zero in ARM encoding" msgstr "" -#: config/tc-arm.c:9025 config/tc-arm.c:9689 +#: config/tc-arm.c:9838 config/tc-arm.c:10569 msgid "even register required" msgstr "" -#: config/tc-arm.c:9028 +#: config/tc-arm.c:9841 msgid "can only load two consecutive registers" msgstr "" -#: config/tc-arm.c:9046 +#: config/tc-arm.c:9859 msgid "ldr to register 15 must be 4-byte aligned" msgstr "" -#: config/tc-arm.c:9069 config/tc-arm.c:9101 +#: config/tc-arm.c:9882 config/tc-arm.c:9914 msgid "this instruction requires a post-indexed address" msgstr "" -#: config/tc-arm.c:9128 +#: config/tc-arm.c:9941 msgid "Rd and Rm should be different in mla" msgstr "" -#: config/tc-arm.c:9155 config/tc-arm.c:12236 +#: config/tc-arm.c:9968 config/tc-arm.c:13226 msgid ":lower16: not allowed in this instruction" msgstr "" -#: config/tc-arm.c:9157 config/tc-arm.c:12241 +#: config/tc-arm.c:9970 config/tc-arm.c:13231 msgid ":upper16: not allowed in this instruction" msgstr "" -#: config/tc-arm.c:9174 +#: config/tc-arm.c:9987 msgid "operand 1 must be FPSCR" msgstr "" -#: config/tc-arm.c:9266 config/tc-arm.c:12355 +#: config/tc-arm.c:10040 config/tc-arm.c:10049 config/tc-arm.c:10103 +#: config/tc-arm.c:10112 +msgid "selected processor does not support instruction" +msgstr "" + +#: config/tc-arm.c:10052 config/tc-arm.c:10115 +msgid "accessing MVE system register without MVE is UNPREDICTABLE" +msgstr "" + +#: config/tc-arm.c:10143 config/tc-arm.c:13345 msgid "bad register for mrs" msgstr "" -#: config/tc-arm.c:9273 config/tc-arm.c:12379 +#: config/tc-arm.c:10150 config/tc-arm.c:13369 msgid "'APSR', 'CPSR' or 'SPSR' expected" msgstr "" -#: config/tc-arm.c:9314 +#: config/tc-arm.c:10191 msgid "Rd and Rm should be different in mul" msgstr "" -#: config/tc-arm.c:9333 config/tc-arm.c:9607 config/tc-arm.c:12518 +#: config/tc-arm.c:10210 config/tc-arm.c:10487 config/tc-arm.c:13508 msgid "rdhi and rdlo must be different" msgstr "" -#: config/tc-arm.c:9339 +#: config/tc-arm.c:10216 msgid "rdhi, rdlo and rm must all be different" msgstr "" -#: config/tc-arm.c:9405 +#: config/tc-arm.c:10282 msgid "'[' expected after PLD mnemonic" msgstr "" -#: config/tc-arm.c:9407 config/tc-arm.c:9422 +#: config/tc-arm.c:10284 config/tc-arm.c:10299 msgid "post-indexed expression used in preload instruction" msgstr "" -#: config/tc-arm.c:9409 config/tc-arm.c:9424 +#: config/tc-arm.c:10286 config/tc-arm.c:10301 msgid "writeback used in preload instruction" msgstr "" -#: config/tc-arm.c:9411 config/tc-arm.c:9426 +#: config/tc-arm.c:10288 config/tc-arm.c:10303 msgid "unindexed addressing used in preload instruction" msgstr "" -#: config/tc-arm.c:9420 +#: config/tc-arm.c:10297 msgid "'[' expected after PLI mnemonic" msgstr "" -#: config/tc-arm.c:9435 config/tc-arm.c:12687 +#: config/tc-arm.c:10312 config/tc-arm.c:13677 msgid "push/pop do not support {reglist}^" msgstr "" -#: config/tc-arm.c:9513 config/tc-arm.c:12834 +#: config/tc-arm.c:10390 config/tc-arm.c:13854 msgid "setend use is deprecated for ARMv8" msgstr "" -#: config/tc-arm.c:9534 config/tc-arm.c:12895 config/tc-arm.c:12927 -#: config/tc-arm.c:12970 +#: config/tc-arm.c:10411 config/tc-arm.c:13915 config/tc-arm.c:13947 +#: config/tc-arm.c:13990 msgid "extraneous shift as part of operand to shift insn" msgstr "" -#: config/tc-arm.c:9565 config/tc-arm.c:9574 +#: config/tc-arm.c:10421 config/tc-arm.c:14053 +msgid "immediate too large (bigger than 0xF)" +msgstr "" + +#: config/tc-arm.c:10445 config/tc-arm.c:10454 msgid "selected processor does not support SETPAN instruction" msgstr "" -#: config/tc-arm.c:9633 +#: config/tc-arm.c:10513 msgid "SRS base register must be r13" msgstr "" -#: config/tc-arm.c:9692 +#: config/tc-arm.c:10572 msgid "can only store two consecutive registers" msgstr "" -#: config/tc-arm.c:9806 config/tc-arm.c:9823 +#: config/tc-arm.c:10694 config/tc-arm.c:10715 msgid "only two consecutive VFP SP registers allowed here" msgstr "" -#: config/tc-arm.c:9851 config/tc-arm.c:9866 +#: config/tc-arm.c:10743 config/tc-arm.c:10758 msgid "this addressing mode requires base-register writeback" msgstr "" #. If srcsize is 16, inst.operands[1].imm must be in the range 0-16. #. i.e. immbits must be in range 0 - 16. -#: config/tc-arm.c:9983 +#: config/tc-arm.c:10887 msgid "immediate value out of range, expected range [0, 16]" msgstr "" #. If srcsize is 32, inst.operands[1].imm must be in the range 1-32. #. i.e. immbits must be in range 0 - 31. -#: config/tc-arm.c:9990 +#: config/tc-arm.c:10894 msgid "immediate value out of range, expected range [1, 32]" msgstr "" -#: config/tc-arm.c:10056 +#: config/tc-arm.c:10960 msgid "this instruction does not support indexing" msgstr "" -#: config/tc-arm.c:10079 +#: config/tc-arm.c:10983 msgid "only r15 allowed here" msgstr "" -#: config/tc-arm.c:10214 +#: config/tc-arm.c:11118 msgid "immediate operand requires iWMMXt2" msgstr "" -#: config/tc-arm.c:10358 +#: config/tc-arm.c:11262 msgid "shift by register not allowed in thumb mode" msgstr "" -#: config/tc-arm.c:10370 config/tc-arm.c:13078 config/tc-arm.c:23590 +#: config/tc-arm.c:11274 config/tc-arm.c:14099 config/tc-arm.c:28140 msgid "shift expression is too large" msgstr "" -#: config/tc-arm.c:10403 +#: config/tc-arm.c:11307 msgid "cannot use register index with this instruction" msgstr "" -#: config/tc-arm.c:10405 +#: config/tc-arm.c:11309 msgid "Thumb does not support negative register indexing" msgstr "" -#: config/tc-arm.c:10407 +#: config/tc-arm.c:11311 msgid "Thumb does not support register post-indexing" msgstr "" -#: config/tc-arm.c:10409 +#: config/tc-arm.c:11313 msgid "Thumb does not support register indexing with writeback" msgstr "" -#: config/tc-arm.c:10411 +#: config/tc-arm.c:11315 msgid "Thumb supports only LSL in shifted register indexing" msgstr "" -#: config/tc-arm.c:10420 config/tc-arm.c:16395 +#: config/tc-arm.c:11324 config/tc-arm.c:19815 msgid "shift out of range" msgstr "" -#: config/tc-arm.c:10429 +#: config/tc-arm.c:11333 msgid "cannot use writeback with this instruction" msgstr "" -#: config/tc-arm.c:10450 +#: config/tc-arm.c:11354 msgid "cannot use post-indexing with PC-relative addressing" msgstr "" -#: config/tc-arm.c:10451 +#: config/tc-arm.c:11355 msgid "cannot use post-indexing with this instruction" msgstr "" -#: config/tc-arm.c:10673 +#: config/tc-arm.c:11601 msgid "only SUBS PC, LR, #const allowed" msgstr "" -#: config/tc-arm.c:10756 config/tc-arm.c:10916 config/tc-arm.c:11013 -#: config/tc-arm.c:12316 config/tc-arm.c:12624 +#: config/tc-arm.c:11684 config/tc-arm.c:11844 config/tc-arm.c:11941 +#: config/tc-arm.c:13306 config/tc-arm.c:13614 msgid "shift must be constant" msgstr "" -#: config/tc-arm.c:10761 +#: config/tc-arm.c:11689 msgid "shift value over 3 not allowed in thumb mode" msgstr "" -#: config/tc-arm.c:10763 +#: config/tc-arm.c:11691 msgid "only LSL shift allowed in thumb mode" msgstr "" -#: config/tc-arm.c:10787 config/tc-arm.c:10931 config/tc-arm.c:11028 -#: config/tc-arm.c:12329 +#: config/tc-arm.c:11715 config/tc-arm.c:11859 config/tc-arm.c:11956 +#: config/tc-arm.c:13319 msgid "unshifted register required" msgstr "" -#: config/tc-arm.c:10802 config/tc-arm.c:11039 config/tc-arm.c:12479 +#: config/tc-arm.c:11730 config/tc-arm.c:11967 config/tc-arm.c:13469 msgid "dest must overlap one source register" msgstr "" -#: config/tc-arm.c:10934 config/tc-csky.c:5507 +#: config/tc-arm.c:11862 config/tc-csky.c:5510 msgid "dest and source1 must be the same register" msgstr "" -#: config/tc-arm.c:11174 +#: config/tc-arm.c:12102 msgid "" "selected architecture does not support wide conditional branch instruction" msgstr "" -#: config/tc-arm.c:11207 +#: config/tc-arm.c:12135 msgid "instruction is always unconditional" msgstr "" -#: config/tc-arm.c:11328 +#: config/tc-arm.c:12310 msgid "selected processor does not support 'A' form of this instruction" msgstr "" -#: config/tc-arm.c:11331 +#: config/tc-arm.c:12313 msgid "Thumb does not support the 2-argument form of this instruction" msgstr "" -#: config/tc-arm.c:11452 +#: config/tc-arm.c:12438 msgid "SP not allowed in register list" msgstr "" -#: config/tc-arm.c:11456 config/tc-arm.c:11562 +#: config/tc-arm.c:12442 config/tc-arm.c:12549 msgid "" "having the base register in the register list when using write back is " "UNPREDICTABLE" msgstr "" -#: config/tc-arm.c:11464 +#: config/tc-arm.c:12450 msgid "LR and PC should not both be in register list" msgstr "" -#: config/tc-arm.c:11472 +#: config/tc-arm.c:12458 msgid "PC not allowed in register list" msgstr "" -#: config/tc-arm.c:11514 +#: config/tc-arm.c:12501 msgid "Thumb load/store multiple does not support {reglist}^" msgstr "" -#: config/tc-arm.c:11539 config/tc-arm.c:11616 +#: config/tc-arm.c:12526 config/tc-arm.c:12604 #, c-format msgid "value stored for r%d is UNKNOWN" msgstr "" -#: config/tc-arm.c:11609 +#: config/tc-arm.c:12597 msgid "Thumb-2 instruction only valid in unified syntax" msgstr "" -#: config/tc-arm.c:11613 config/tc-arm.c:11623 +#: config/tc-arm.c:12601 config/tc-arm.c:12611 msgid "this instruction will write back the base register" msgstr "" -#: config/tc-arm.c:11626 +#: config/tc-arm.c:12614 msgid "this instruction will not write back the base register" msgstr "" -#: config/tc-arm.c:11657 +#: config/tc-arm.c:12645 msgid "r14 not allowed as first register when second register is omitted" msgstr "" -#: config/tc-arm.c:11757 +#: config/tc-arm.c:12745 msgid "" "This instruction may be unpredictable if executed on M-profile cores with " "interrupts enabled." msgstr "" -#: config/tc-arm.c:11786 config/tc-arm.c:11799 config/tc-arm.c:11835 +#: config/tc-arm.c:12774 config/tc-arm.c:12787 config/tc-arm.c:12823 msgid "Thumb does not support this addressing mode" msgstr "" -#: config/tc-arm.c:11803 +#: config/tc-arm.c:12791 msgid "byte or halfword not valid for base register" msgstr "" -#: config/tc-arm.c:11806 +#: config/tc-arm.c:12794 msgid "r15 based store not allowed" msgstr "" -#: config/tc-arm.c:11808 +#: config/tc-arm.c:12796 msgid "invalid base register for register offset" msgstr "" -#: config/tc-arm.c:11865 +#: config/tc-arm.c:12853 msgid "r12 not allowed here" msgstr "" -#: config/tc-arm.c:11871 +#: config/tc-arm.c:12859 msgid "base register written back, and overlaps one of transfer registers" msgstr "" -#: config/tc-arm.c:11999 +#: config/tc-arm.c:12987 #, c-format msgid "" "Use of r%u as a source register is deprecated when r%u is the destination " "register." msgstr "" -#: config/tc-arm.c:12192 +#: config/tc-arm.c:13182 msgid "shifts in CMP/MOV instructions are only supported in unified syntax" msgstr "" -#: config/tc-arm.c:12220 +#: config/tc-arm.c:13210 msgid "only lo regs allowed with immediate" msgstr "" -#: config/tc-arm.c:12397 +#: config/tc-arm.c:13387 msgid "Thumb encoding does not support an immediate here" msgstr "" -#: config/tc-arm.c:12484 +#: config/tc-arm.c:13474 msgid "Thumb-2 MUL must not set flags" msgstr "" -#: config/tc-arm.c:12549 +#: config/tc-arm.c:13539 msgid "Thumb does not support NOP with hints" msgstr "" -#: config/tc-arm.c:12709 +#: config/tc-arm.c:13699 config/tc-arm.c:13711 msgid "invalid register list to push/pop instruction" msgstr "" -#: config/tc-arm.c:12954 +#: config/tc-arm.c:13974 msgid "source1 and dest must be same register" msgstr "" -#: config/tc-arm.c:12979 +#: config/tc-arm.c:13999 msgid "ror #imm not supported" msgstr "" -#: config/tc-arm.c:13030 +#: config/tc-arm.c:14050 msgid "SMC is not permitted on this architecture" msgstr "" -#: config/tc-arm.c:13195 +#: config/tc-arm.c:14216 msgid "Thumb encoding does not support rotation" msgstr "" -#: config/tc-arm.c:13215 +#: config/tc-arm.c:14236 msgid "instruction requires register index" msgstr "" -#: config/tc-arm.c:13225 +#: config/tc-arm.c:14246 msgid "instruction does not allow shifted index" msgstr "" -#: config/tc-arm.c:13411 +#: config/tc-arm.c:14402 config/tc-arm.c:29281 +msgid "out of range label-relative fixup value" +msgstr "" + +#: config/tc-arm.c:14726 msgid "invalid neon suffix for non neon instruction" msgstr "" -#: config/tc-arm.c:13773 config/tc-arm.c:14119 config/tc-arm.c:15736 -#: config/tc-arm.c:17396 +#: config/tc-arm.c:15105 config/tc-arm.c:15458 config/tc-arm.c:16941 +#: config/tc-arm.c:17021 config/tc-arm.c:17078 config/tc-arm.c:18965 +#: config/tc-arm.c:21143 config/tc-arm.c:21330 msgid "invalid instruction shape" msgstr "" -#: config/tc-arm.c:14018 +#: config/tc-arm.c:15357 msgid "types specified in both the mnemonic and operands" msgstr "" -#: config/tc-arm.c:14055 +#: config/tc-arm.c:15394 msgid "operand types can't be inferred" msgstr "" -#: config/tc-arm.c:14061 +#: config/tc-arm.c:15400 msgid "type specifier has the wrong number of parts" msgstr "" -#: config/tc-arm.c:14147 config/tc-arm.c:15926 config/tc-arm.c:15933 +#: config/tc-arm.c:15486 config/tc-arm.c:19234 config/tc-arm.c:19241 msgid "operand size must match register width" msgstr "" -#: config/tc-arm.c:14158 -msgid "bad type in Neon instruction" +#: config/tc-arm.c:15508 +msgid "inconsistent types in Neon instruction" msgstr "" -#: config/tc-arm.c:14169 -msgid "inconsistent types in Neon instruction" +#: config/tc-arm.c:15927 +msgid "Type is not allowed for this instruction" msgstr "" -#: config/tc-arm.c:14540 config/tc-arm.c:14555 config/tc-arm.c:16975 -msgid "register list must contain at least 1 and at most 16 registers" +#: config/tc-arm.c:16002 +msgid "MVE vector or ARM register expected" msgstr "" -#: config/tc-arm.c:14698 config/tc-arm.c:14734 config/tc-arm.c:15373 -#: config/tc-arm.c:16801 +#: config/tc-arm.c:16119 +msgid "immediate must be either 1, 2, 4 or 8" +msgstr "" + +#: config/tc-arm.c:16276 +msgid "immediate operand expected in the range [1,8]" +msgstr "" + +#: config/tc-arm.c:16277 +msgid "immediate operand expected in the range [1,16]" +msgstr "" + +#: config/tc-arm.c:16419 +msgid "expected LR" +msgstr "" + +#: config/tc-arm.c:16918 config/tc-arm.c:16998 config/tc-arm.c:18601 +#: config/tc-arm.c:20432 msgid "immediate out of range for shift" msgstr "" -#: config/tc-arm.c:14854 +#: config/tc-arm.c:17212 msgid "first and second operands shall be the same register" msgstr "" -#: config/tc-arm.c:15139 config/tc-arm.c:16231 +#: config/tc-arm.c:17326 config/tc-arm.c:17388 +msgid "destination register and offset register may not be the same" +msgstr "" + +#: config/tc-arm.c:17338 config/tc-arm.c:17457 +msgid "immediate must be a multiple of 4 in the range of +/-[0,508]" +msgstr "" + +#: config/tc-arm.c:17340 +msgid "immediate must be a multiple of 8 in the range of +/-[0,1016]" +msgstr "" + +#: config/tc-arm.c:17361 +msgid "can not shift offsets when accessing less than half-word" +msgstr "" + +#: config/tc-arm.c:17363 +msgid "" +"shift immediate must be 1, 2 or 3 for half-word, word or double-word " +"accesses respectively" +msgstr "" + +#: config/tc-arm.c:17450 +msgid "immediate must be in the range of +/-[0,127]" +msgstr "" + +#: config/tc-arm.c:17453 +msgid "immediate must be a multiple of 2 in the range of +/-[0,254]" +msgstr "" + +#: config/tc-arm.c:17467 config/tc-arm.c:18299 +msgid "MVE vector register in the range [Q0..Q7] expected" +msgstr "" + +#: config/tc-arm.c:17783 config/tc-arm.c:19652 msgid "scalar out of range for multiply instruction" msgstr "" -#: config/tc-arm.c:15263 +#: config/tc-arm.c:17871 +msgid "index must be in the range 0 to 3" +msgstr "" + +#: config/tc-arm.c:17874 +msgid "indexed register must be less than 8" +msgstr "" + +#: config/tc-arm.c:18075 config/tc-arm.c:21394 +msgid "" +"Warning: 32-bit element size and same first and third operand makes " +"instruction UNPREDICTABLE" +msgstr "" + +#: config/tc-arm.c:18440 msgid "instruction form not available on this architecture." msgstr "" -#: config/tc-arm.c:15266 +#: config/tc-arm.c:18443 msgid "this instruction implies use of ARMv8.1 AdvSIMD." msgstr "" -#: config/tc-arm.c:15349 config/tc-arm.c:15361 +#: config/tc-arm.c:18550 config/tc-arm.c:18575 msgid "immediate out of range for insert" msgstr "" -#: config/tc-arm.c:15494 +#: config/tc-arm.c:18722 msgid "immediate out of range for narrowing operation" msgstr "" -#: config/tc-arm.c:15640 +#: config/tc-arm.c:18869 msgid "operands 0 and 1 must be the same register" msgstr "" -#: config/tc-arm.c:15746 config/tc-arm.c:17494 +#: config/tc-arm.c:18975 config/tc-arm.c:21242 msgid "invalid rounding mode" msgstr "" -#: config/tc-arm.c:16075 +#: config/tc-arm.c:19445 msgid "operand size must be specified for immediate VMOV" msgstr "" -#: config/tc-arm.c:16085 +#: config/tc-arm.c:19455 msgid "immediate has bits set outside the operand size" msgstr "" -#: config/tc-arm.c:16247 +#: config/tc-arm.c:19687 msgid "" "vfmal/vfmsl with FP16 type cannot be conditional, the behaviour is " "UNPREDICTABLE" msgstr "" -#: config/tc-arm.c:16377 +#: config/tc-arm.c:19797 msgid "Instruction form not available on this architecture." msgstr "" -#: config/tc-arm.c:16421 +#: config/tc-arm.c:19851 +msgid "" +"Warning: 64-bit element size and same destination and source operands makes " +"instruction UNPREDICTABLE" +msgstr "" + +#: config/tc-arm.c:19856 msgid "elements must be smaller than reversal region" msgstr "" -#: config/tc-arm.c:16603 config/tc-arm.c:16663 +#: config/tc-arm.c:19948 +msgid "Index one must be [2,3] and index two must be two less than index one." +msgstr "" + +#: config/tc-arm.c:19951 +msgid "General purpose registers may not be the same" +msgstr "" + +#: config/tc-arm.c:20149 config/tc-arm.c:20232 msgid "bad type for scalar" msgstr "" -#: config/tc-arm.c:16717 +#: config/tc-arm.c:20288 msgid "" "immediate constant is valid both as a bit-pattern and a floating point value " "(using the fp value)" msgstr "" -#: config/tc-arm.c:16759 config/tc-arm.c:16767 +#: config/tc-arm.c:20340 config/tc-arm.c:20351 msgid "VFP registers must be adjacent" msgstr "" -#: config/tc-arm.c:16810 +#: config/tc-arm.c:20441 msgid "invalid suffix" msgstr "" -#: config/tc-arm.c:16942 +#: config/tc-arm.c:20593 msgid "bad list length for table lookup" msgstr "" -#: config/tc-arm.c:16972 +#: config/tc-arm.c:20626 msgid "writeback (!) must be used for VLDMDB and VSTMDB" msgstr "" -#: config/tc-arm.c:17000 +#: config/tc-arm.c:20629 config/tc-arm.c:20654 config/tc-arm.c:20675 +msgid "register list must contain at least 1 and at most 16 registers" +msgstr "" + +#: config/tc-arm.c:20697 config/tc-arm.c:20730 msgid "Use of PC here is UNPREDICTABLE" msgstr "" -#: config/tc-arm.c:17002 +#: config/tc-arm.c:20699 msgid "Use of PC here is deprecated" msgstr "" -#: config/tc-arm.c:17069 -msgid "bad alignment" +#: config/tc-arm.c:20733 +msgid "instruction does not accept register index" msgstr "" -#: config/tc-arm.c:17086 -msgid "bad list type for instruction" +#: config/tc-arm.c:20736 +msgid "instruction does not accept PC-relative addressing" msgstr "" -#: config/tc-arm.c:17088 -msgid "bad element type for instruction" +#: config/tc-arm.c:20758 config/tc-arm.c:20767 +msgid "Instruction not permitted on this architecture" +msgstr "" + +#: config/tc-arm.c:20816 +msgid "bad alignment" +msgstr "" + +#: config/tc-arm.c:20833 +msgid "bad list type for instruction" msgstr "" -#: config/tc-arm.c:17130 +#: config/tc-arm.c:20877 msgid "unsupported alignment for instruction" msgstr "" -#: config/tc-arm.c:17149 config/tc-arm.c:17243 config/tc-arm.c:17255 -#: config/tc-arm.c:17265 config/tc-arm.c:17279 +#: config/tc-arm.c:20896 config/tc-arm.c:20990 config/tc-arm.c:21002 +#: config/tc-arm.c:21012 config/tc-arm.c:21026 msgid "bad list length" msgstr "" -#: config/tc-arm.c:17154 +#: config/tc-arm.c:20901 msgid "stride of 2 unavailable when element size is 8" msgstr "" -#: config/tc-arm.c:17187 config/tc-arm.c:17263 +#: config/tc-arm.c:20934 config/tc-arm.c:21010 msgid "can't use alignment with this instruction" msgstr "" -#: config/tc-arm.c:17335 +#: config/tc-arm.c:21082 msgid "post-index must be a register" msgstr "" -#: config/tc-arm.c:17337 +#: config/tc-arm.c:21084 msgid "bad register for post-index" msgstr "" -#: config/tc-arm.c:17558 +#: config/tc-arm.c:21306 msgid "scalar out of range" msgstr "" -#: config/tc-arm.c:17631 +#: config/tc-arm.c:21439 msgid "" "Dot Product instructions cannot be conditional, the behaviour is " "UNPREDICTABLE" msgstr "" -#: config/tc-arm.c:18204 config/tc-arm.c:18290 +#: config/tc-arm.c:21514 config/tc-arm.c:21542 config/tc-arm.c:21777 +msgid "index must be 0 or 1" +msgstr "" + +#: config/tc-arm.c:21517 config/tc-arm.c:21545 config/tc-arm.c:21780 +msgid "indexed register must be less than 16" +msgstr "" + +#: config/tc-arm.c:22130 config/tc-arm.c:22234 msgid "conditional infixes are deprecated in unified syntax" msgstr "" -#: config/tc-arm.c:18441 +#: config/tc-arm.c:22445 msgid "Warning: conditional outside an IT block for Thumb." msgstr "" -#: config/tc-arm.c:18593 +#: config/tc-arm.c:22771 msgid "Short branches, Undefined, SVC, LDM/STM" msgstr "" -#: config/tc-arm.c:18594 +#: config/tc-arm.c:22772 msgid "Miscellaneous 16-bit instructions" msgstr "" -#: config/tc-arm.c:18595 +#: config/tc-arm.c:22773 msgid "ADR" msgstr "" -#: config/tc-arm.c:18596 +#: config/tc-arm.c:22774 msgid "Literal loads" msgstr "" -#: config/tc-arm.c:18597 +#: config/tc-arm.c:22775 msgid "Hi-register ADD, MOV, CMP, BX, BLX using pc" msgstr "" -#: config/tc-arm.c:18598 +#: config/tc-arm.c:22776 msgid "Hi-register ADD, MOV, CMP using pc" msgstr "" #. NOTE: 0x00dd is not the real encoding, instead, it is the 'tvalue' #. field in asm_opcode. 'tvalue' is used at the stage this check happen. -#: config/tc-arm.c:18601 +#: config/tc-arm.c:22779 msgid "ADD/SUB sp, sp #imm" msgstr "" -#: config/tc-arm.c:18621 +#: config/tc-arm.c:22800 msgid "" "IT blocks containing 32-bit Thumb instructions are performance deprecated in " "ARMv8-A and ARMv8-R" msgstr "" -#: config/tc-arm.c:18633 +#: config/tc-arm.c:22812 #, c-format msgid "" "IT blocks containing 16-bit Thumb instructions of the following class are " "performance deprecated in ARMv8-A and ARMv8-R: %s" msgstr "" -#: config/tc-arm.c:18647 +#: config/tc-arm.c:22826 msgid "" "IT blocks containing more than one conditional instruction are performance " "deprecated in ARMv8-A and ARMv8-R" msgstr "" -#: config/tc-arm.c:18763 +#: config/tc-arm.c:22944 #, c-format msgid "bad instruction `%s'" msgstr "" -#: config/tc-arm.c:18769 +#: config/tc-arm.c:22950 msgid "s suffix on comparison instruction is deprecated" msgstr "" -#: config/tc-arm.c:18789 +#: config/tc-arm.c:22970 msgid "SVC is not permitted on this architecture" msgstr "" -#: config/tc-arm.c:18791 +#: config/tc-arm.c:22972 #, c-format msgid "selected processor does not support `%s' in Thumb mode" msgstr "" -#: config/tc-arm.c:18797 +#: config/tc-arm.c:22978 msgid "Thumb does not support conditional execution" msgstr "" -#: config/tc-arm.c:18817 +#: config/tc-arm.c:22998 #, c-format msgid "" "selected processor does not support 32bit wide variant of instruction `%s'" msgstr "" -#: config/tc-arm.c:18820 +#: config/tc-arm.c:23001 #, c-format msgid "selected processor does not support `%s' in Thumb-2 mode" msgstr "" -#: config/tc-arm.c:18845 +#: config/tc-arm.c:23026 #, c-format msgid "cannot honor width suffix -- `%s'" msgstr "" -#: config/tc-arm.c:18887 +#: config/tc-arm.c:23068 #, c-format msgid "selected processor does not support `%s' in ARM mode" msgstr "" -#: config/tc-arm.c:18892 +#: config/tc-arm.c:23073 #, c-format msgid "width suffixes are invalid in ARM mode -- `%s'" msgstr "" -#: config/tc-arm.c:18925 +#: config/tc-arm.c:23106 #, c-format msgid "attempt to use an ARM instruction on a Thumb-only processor -- `%s'" msgstr "" -#: config/tc-arm.c:18942 +#: config/tc-arm.c:23124 #, c-format msgid "section '%s' finished with an open IT block." msgstr "" -#: config/tc-arm.c:18947 +#: config/tc-arm.c:23127 +#, c-format +msgid "section '%s' finished with an open VPT/VPST block." +msgstr "" + +#: config/tc-arm.c:23134 msgid "file finished with an open IT block." msgstr "" -#: config/tc-arm.c:22243 +#: config/tc-arm.c:23136 +msgid "file finished with an open VPT/VPST block." +msgstr "" + +#: config/tc-arm.c:26787 #, c-format msgid "alignments greater than %d bytes not supported in .text sections." msgstr "" -#: config/tc-arm.c:22510 config/tc-ia64.c:3594 +#: config/tc-arm.c:27054 config/tc-ia64.c:3594 #, c-format msgid "Group section `%s' has no group signature" msgstr "" -#: config/tc-arm.c:22556 +#: config/tc-arm.c:27100 msgid "handlerdata in cantunwind frame" msgstr "" -#: config/tc-arm.c:22573 +#: config/tc-arm.c:27117 msgid "too many unwind opcodes for personality routine 0" msgstr "" -#: config/tc-arm.c:22604 +#: config/tc-arm.c:27148 msgid "attempt to recreate an unwind entry" msgstr "" -#: config/tc-arm.c:22614 +#: config/tc-arm.c:27158 msgid "too many unwind opcodes" msgstr "" -#: config/tc-arm.c:22907 +#: config/tc-arm.c:27457 #, c-format msgid "[-mwarn-syms]: Assignment makes a symbol match an ARM instruction: %s" msgstr "" -#: config/tc-arm.c:23269 config/tc-arm.c:23337 +#: config/tc-arm.c:27819 config/tc-arm.c:27887 #, c-format msgid "symbol %s is in a different section" msgstr "" -#: config/tc-arm.c:23271 config/tc-arm.c:23339 +#: config/tc-arm.c:27821 config/tc-arm.c:27889 #, c-format msgid "symbol %s is weak and may be overridden later" msgstr "" -#: config/tc-arm.c:23316 config/tc-arm.c:23688 +#: config/tc-arm.c:27866 config/tc-arm.c:28238 #, c-format msgid "invalid constant (%lx) after fixup" msgstr "" -#: config/tc-arm.c:23372 +#: config/tc-arm.c:27922 #, c-format msgid "unable to compute ADRL instructions for PC offset of 0x%lx" msgstr "" -#: config/tc-arm.c:23408 config/tc-arm.c:23438 +#: config/tc-arm.c:27958 config/tc-arm.c:27988 msgid "invalid literal constant: pool needs to be closer" msgstr "" -#: config/tc-arm.c:23411 config/tc-arm.c:23460 +#: config/tc-arm.c:27961 config/tc-arm.c:28010 #, c-format msgid "bad immediate value for offset (%ld)" msgstr "" -#: config/tc-arm.c:23441 +#: config/tc-arm.c:27991 #, c-format msgid "bad immediate value for 8-bit offset (%ld)" msgstr "" -#: config/tc-arm.c:23501 +#: config/tc-arm.c:28051 msgid "offset not a multiple of 4" msgstr "" -#: config/tc-arm.c:23704 +#: config/tc-arm.c:28254 msgid "invalid smc expression" msgstr "" -#: config/tc-arm.c:23713 +#: config/tc-arm.c:28264 msgid "invalid hvc expression" msgstr "" -#: config/tc-arm.c:23724 config/tc-arm.c:23733 +#: config/tc-arm.c:28275 config/tc-arm.c:28284 msgid "invalid swi expression" msgstr "" -#: config/tc-arm.c:23743 +#: config/tc-arm.c:28294 msgid "invalid expression in load/store multiple" msgstr "" -#: config/tc-arm.c:23805 +#: config/tc-arm.c:28356 #, c-format msgid "blx to '%s' an ARM ISA state function changed to bl" msgstr "" -#: config/tc-arm.c:23824 +#: config/tc-arm.c:28375 msgid "misaligned branch destination" msgstr "" -#: config/tc-arm.c:23944 +#: config/tc-arm.c:28496 #, c-format msgid "blx to Thumb func '%s' from Thumb ISA state changed to bl" msgstr "" -#: config/tc-arm.c:23994 +#: config/tc-arm.c:28545 msgid "Thumb2 branch out of range" msgstr "" -#: config/tc-arm.c:24046 config/tc-arm.c:24079 +#: config/tc-arm.c:28597 config/tc-arm.c:28630 msgid "Relocation supported only in FDPIC mode" msgstr "" -#: config/tc-arm.c:24109 +#: config/tc-arm.c:28660 msgid "rel31 relocation overflow" msgstr "" -#: config/tc-arm.c:24130 config/tc-arm.c:24134 config/tc-arm.c:24173 +#: config/tc-arm.c:28682 config/tc-arm.c:28688 config/tc-arm.c:28692 +#: config/tc-arm.c:28739 msgid "co-processor offset out of range" msgstr "" -#: config/tc-arm.c:24190 +#: config/tc-arm.c:28756 #, c-format msgid "invalid offset, target not word aligned (0x%08lX)" msgstr "" -#: config/tc-arm.c:24197 config/tc-arm.c:24206 config/tc-arm.c:24214 -#: config/tc-arm.c:24222 config/tc-arm.c:24230 +#: config/tc-arm.c:28763 config/tc-arm.c:28772 config/tc-arm.c:28780 +#: config/tc-arm.c:28788 config/tc-arm.c:28796 #, c-format msgid "invalid offset, value too big (0x%08lX)" msgstr "" -#: config/tc-arm.c:24271 +#: config/tc-arm.c:28837 msgid "invalid Hi register with immediate" msgstr "" -#: config/tc-arm.c:24287 +#: config/tc-arm.c:28853 msgid "invalid immediate for stack address calculation" msgstr "" -#: config/tc-arm.c:24306 +#: config/tc-arm.c:28872 msgid "address calculation needs a strongly defined nearby symbol" msgstr "" -#: config/tc-arm.c:24322 +#: config/tc-arm.c:28888 msgid "symbol too far away" msgstr "" -#: config/tc-arm.c:24334 +#: config/tc-arm.c:28900 #, c-format msgid "invalid immediate for address calculation (value = 0x%08lX)" msgstr "" -#: config/tc-arm.c:24364 +#: config/tc-arm.c:28930 #, c-format msgid "invalid immediate: %ld is out of range" msgstr "" -#: config/tc-arm.c:24376 +#: config/tc-arm.c:28942 #, c-format msgid "invalid shift value: %ld" msgstr "" -#: config/tc-arm.c:24446 config/tc-arm.c:24517 +#: config/tc-arm.c:29012 config/tc-arm.c:29083 #, c-format msgid "the offset 0x%08lX is not representable" msgstr "" -#: config/tc-arm.c:24478 +#: config/tc-arm.c:29044 #, c-format msgid "Unable to process relocation for thumb opcode: %lx" msgstr "" -#: config/tc-arm.c:24557 +#: config/tc-arm.c:29123 #, c-format msgid "bad offset 0x%08lX (only 12 bits available for the magnitude)" msgstr "" -#: config/tc-arm.c:24596 +#: config/tc-arm.c:29162 #, c-format msgid "bad offset 0x%08lX (only 8 bits available for the magnitude)" msgstr "" -#: config/tc-arm.c:24636 +#: config/tc-arm.c:29202 #, c-format msgid "bad offset 0x%08lX (must be word-aligned)" msgstr "" -#: config/tc-arm.c:24641 +#: config/tc-arm.c:29207 #, c-format msgid "bad offset 0x%08lX (must be an 8-bit number of words)" msgstr "" -#: config/tc-arm.c:24672 config/tc-score.c:7379 +#: config/tc-arm.c:29428 config/tc-score.c:7379 #, c-format msgid "bad relocation fixup type (%d)" msgstr "" -#: config/tc-arm.c:24790 +#: config/tc-arm.c:29546 msgid "literal referenced across section boundary" msgstr "" -#: config/tc-arm.c:24867 +#: config/tc-arm.c:29626 msgid "internal relocation (type: IMMEDIATE) not fixed up" msgstr "" -#: config/tc-arm.c:24872 +#: config/tc-arm.c:29631 msgid "ADRL used for a symbol not defined in the same file" msgstr "" -#: config/tc-arm.c:24887 +#: config/tc-arm.c:29638 +#, c-format +msgid "%s used for a symbol not defined in the same file" +msgstr "" + +#: config/tc-arm.c:29654 #, c-format msgid "undefined local label `%s'" msgstr "" -#: config/tc-arm.c:24893 +#: config/tc-arm.c:29660 msgid "internal_relocation (type: OFFSET_IMM) not fixed up" msgstr "" -#: config/tc-arm.c:24915 config/tc-cris.c:4006 config/tc-csky.c:877 -#: config/tc-ft32.c:709 config/tc-mcore.c:1928 config/tc-microblaze.c:1998 -#: config/tc-mmix.c:2895 config/tc-moxie.c:825 config/tc-ns32k.c:2248 +#: config/tc-arm.c:29682 config/tc-cris.c:4006 config/tc-csky.c:877 +#: config/tc-ft32.c:709 config/tc-mcore.c:1928 config/tc-microblaze.c:1995 +#: config/tc-mmix.c:2894 config/tc-moxie.c:825 config/tc-ns32k.c:2248 #: config/tc-score.c:7466 msgid "<unknown>" msgstr "" -#: config/tc-arm.c:25317 +#: config/tc-arm.c:30084 #, c-format msgid "%s: unexpected function type: %d" msgstr "" -#: config/tc-arm.c:25454 +#: config/tc-arm.c:30224 msgid "use of old and new-style options to set CPU type" msgstr "" -#: config/tc-arm.c:25473 +#: config/tc-arm.c:30243 msgid "use of old and new-style options to set FPU type" msgstr "" -#: config/tc-arm.c:25552 +#: config/tc-arm.c:30322 msgid "hard-float conflicts with specified fpu" msgstr "" -#: config/tc-arm.c:25744 +#: config/tc-arm.c:30513 msgid "generate PIC code" msgstr "" -#: config/tc-arm.c:25745 +#: config/tc-arm.c:30514 msgid "assemble Thumb code" msgstr "" -#: config/tc-arm.c:25746 +#: config/tc-arm.c:30515 msgid "support ARM/Thumb interworking" msgstr "" -#: config/tc-arm.c:25748 +#: config/tc-arm.c:30517 msgid "code uses 32-bit program counter" msgstr "" -#: config/tc-arm.c:25749 +#: config/tc-arm.c:30518 msgid "code uses 26-bit program counter" msgstr "" -#: config/tc-arm.c:25750 +#: config/tc-arm.c:30519 msgid "floating point args are in fp regs" msgstr "" -#: config/tc-arm.c:25752 +#: config/tc-arm.c:30521 msgid "re-entrant code" msgstr "" -#: config/tc-arm.c:25753 +#: config/tc-arm.c:30522 msgid "code is ATPCS conformant" msgstr "" #. These are recognized by the assembler, but have no affect on code. -#: config/tc-arm.c:25759 +#: config/tc-arm.c:30528 msgid "use frame pointer" msgstr "" -#: config/tc-arm.c:25760 +#: config/tc-arm.c:30529 msgid "use stack size checking" msgstr "" -#: config/tc-arm.c:25763 +#: config/tc-arm.c:30532 msgid "do not warn on use of deprecated feature" msgstr "" -#: config/tc-arm.c:25765 +#: config/tc-arm.c:30535 +msgid "" +"warn about performance deprecated IT instructions in ARMv8-A and ARMv8-R" +msgstr "" + +#: config/tc-arm.c:30539 msgid "warn about symbols that match instruction names [default]" msgstr "" -#: config/tc-arm.c:25766 +#: config/tc-arm.c:30540 msgid "disable warnings about symobls that match instructions" msgstr "" #. DON'T add any new processors to this list -- we want the whole list #. to go away... Add them to the processors table instead. -#: config/tc-arm.c:25782 config/tc-arm.c:25783 +#: config/tc-arm.c:30556 config/tc-arm.c:30557 msgid "use -mcpu=arm1" msgstr "" -#: config/tc-arm.c:25784 config/tc-arm.c:25785 +#: config/tc-arm.c:30558 config/tc-arm.c:30559 msgid "use -mcpu=arm2" msgstr "" -#: config/tc-arm.c:25786 config/tc-arm.c:25787 +#: config/tc-arm.c:30560 config/tc-arm.c:30561 msgid "use -mcpu=arm250" msgstr "" -#: config/tc-arm.c:25788 config/tc-arm.c:25789 +#: config/tc-arm.c:30562 config/tc-arm.c:30563 msgid "use -mcpu=arm3" msgstr "" -#: config/tc-arm.c:25790 config/tc-arm.c:25791 +#: config/tc-arm.c:30564 config/tc-arm.c:30565 msgid "use -mcpu=arm6" msgstr "" -#: config/tc-arm.c:25792 config/tc-arm.c:25793 +#: config/tc-arm.c:30566 config/tc-arm.c:30567 msgid "use -mcpu=arm600" msgstr "" -#: config/tc-arm.c:25794 config/tc-arm.c:25795 +#: config/tc-arm.c:30568 config/tc-arm.c:30569 msgid "use -mcpu=arm610" msgstr "" -#: config/tc-arm.c:25796 config/tc-arm.c:25797 +#: config/tc-arm.c:30570 config/tc-arm.c:30571 msgid "use -mcpu=arm620" msgstr "" -#: config/tc-arm.c:25798 config/tc-arm.c:25799 +#: config/tc-arm.c:30572 config/tc-arm.c:30573 msgid "use -mcpu=arm7" msgstr "" -#: config/tc-arm.c:25800 config/tc-arm.c:25801 +#: config/tc-arm.c:30574 config/tc-arm.c:30575 msgid "use -mcpu=arm70" msgstr "" -#: config/tc-arm.c:25802 config/tc-arm.c:25803 +#: config/tc-arm.c:30576 config/tc-arm.c:30577 msgid "use -mcpu=arm700" msgstr "" -#: config/tc-arm.c:25804 config/tc-arm.c:25805 +#: config/tc-arm.c:30578 config/tc-arm.c:30579 msgid "use -mcpu=arm700i" msgstr "" -#: config/tc-arm.c:25806 config/tc-arm.c:25807 +#: config/tc-arm.c:30580 config/tc-arm.c:30581 msgid "use -mcpu=arm710" msgstr "" -#: config/tc-arm.c:25808 config/tc-arm.c:25809 +#: config/tc-arm.c:30582 config/tc-arm.c:30583 msgid "use -mcpu=arm710c" msgstr "" -#: config/tc-arm.c:25810 config/tc-arm.c:25811 +#: config/tc-arm.c:30584 config/tc-arm.c:30585 msgid "use -mcpu=arm720" msgstr "" -#: config/tc-arm.c:25812 config/tc-arm.c:25813 +#: config/tc-arm.c:30586 config/tc-arm.c:30587 msgid "use -mcpu=arm7d" msgstr "" -#: config/tc-arm.c:25814 config/tc-arm.c:25815 +#: config/tc-arm.c:30588 config/tc-arm.c:30589 msgid "use -mcpu=arm7di" msgstr "" -#: config/tc-arm.c:25816 config/tc-arm.c:25817 +#: config/tc-arm.c:30590 config/tc-arm.c:30591 msgid "use -mcpu=arm7m" msgstr "" -#: config/tc-arm.c:25818 config/tc-arm.c:25819 +#: config/tc-arm.c:30592 config/tc-arm.c:30593 msgid "use -mcpu=arm7dm" msgstr "" -#: config/tc-arm.c:25820 config/tc-arm.c:25821 +#: config/tc-arm.c:30594 config/tc-arm.c:30595 msgid "use -mcpu=arm7dmi" msgstr "" -#: config/tc-arm.c:25822 config/tc-arm.c:25823 +#: config/tc-arm.c:30596 config/tc-arm.c:30597 msgid "use -mcpu=arm7100" msgstr "" -#: config/tc-arm.c:25824 config/tc-arm.c:25825 +#: config/tc-arm.c:30598 config/tc-arm.c:30599 msgid "use -mcpu=arm7500" msgstr "" -#: config/tc-arm.c:25826 config/tc-arm.c:25827 +#: config/tc-arm.c:30600 config/tc-arm.c:30601 msgid "use -mcpu=arm7500fe" msgstr "" -#: config/tc-arm.c:25828 config/tc-arm.c:25829 config/tc-arm.c:25830 -#: config/tc-arm.c:25831 +#: config/tc-arm.c:30602 config/tc-arm.c:30603 config/tc-arm.c:30604 +#: config/tc-arm.c:30605 msgid "use -mcpu=arm7tdmi" msgstr "" -#: config/tc-arm.c:25832 config/tc-arm.c:25833 +#: config/tc-arm.c:30606 config/tc-arm.c:30607 msgid "use -mcpu=arm710t" msgstr "" -#: config/tc-arm.c:25834 config/tc-arm.c:25835 +#: config/tc-arm.c:30608 config/tc-arm.c:30609 msgid "use -mcpu=arm720t" msgstr "" -#: config/tc-arm.c:25836 config/tc-arm.c:25837 +#: config/tc-arm.c:30610 config/tc-arm.c:30611 msgid "use -mcpu=arm740t" msgstr "" -#: config/tc-arm.c:25838 config/tc-arm.c:25839 +#: config/tc-arm.c:30612 config/tc-arm.c:30613 msgid "use -mcpu=arm8" msgstr "" -#: config/tc-arm.c:25840 config/tc-arm.c:25841 +#: config/tc-arm.c:30614 config/tc-arm.c:30615 msgid "use -mcpu=arm810" msgstr "" -#: config/tc-arm.c:25842 config/tc-arm.c:25843 +#: config/tc-arm.c:30616 config/tc-arm.c:30617 msgid "use -mcpu=arm9" msgstr "" -#: config/tc-arm.c:25844 config/tc-arm.c:25845 +#: config/tc-arm.c:30618 config/tc-arm.c:30619 msgid "use -mcpu=arm9tdmi" msgstr "" -#: config/tc-arm.c:25846 config/tc-arm.c:25847 +#: config/tc-arm.c:30620 config/tc-arm.c:30621 msgid "use -mcpu=arm920" msgstr "" -#: config/tc-arm.c:25848 config/tc-arm.c:25849 +#: config/tc-arm.c:30622 config/tc-arm.c:30623 msgid "use -mcpu=arm940" msgstr "" -#: config/tc-arm.c:25850 +#: config/tc-arm.c:30624 msgid "use -mcpu=strongarm" msgstr "" -#: config/tc-arm.c:25852 +#: config/tc-arm.c:30626 msgid "use -mcpu=strongarm110" msgstr "" -#: config/tc-arm.c:25854 +#: config/tc-arm.c:30628 msgid "use -mcpu=strongarm1100" msgstr "" -#: config/tc-arm.c:25856 +#: config/tc-arm.c:30630 msgid "use -mcpu=strongarm1110" msgstr "" -#: config/tc-arm.c:25857 +#: config/tc-arm.c:30631 msgid "use -mcpu=xscale" msgstr "" -#: config/tc-arm.c:25858 +#: config/tc-arm.c:30632 msgid "use -mcpu=iwmmxt" msgstr "" -#: config/tc-arm.c:25859 +#: config/tc-arm.c:30633 msgid "use -mcpu=all" msgstr "" #. Architecture variants -- don't add any more to this list either. -#: config/tc-arm.c:25862 config/tc-arm.c:25863 +#: config/tc-arm.c:30636 config/tc-arm.c:30637 msgid "use -march=armv2" msgstr "" -#: config/tc-arm.c:25864 config/tc-arm.c:25865 +#: config/tc-arm.c:30638 config/tc-arm.c:30639 msgid "use -march=armv2a" msgstr "" -#: config/tc-arm.c:25866 config/tc-arm.c:25867 +#: config/tc-arm.c:30640 config/tc-arm.c:30641 msgid "use -march=armv3" msgstr "" -#: config/tc-arm.c:25868 config/tc-arm.c:25869 +#: config/tc-arm.c:30642 config/tc-arm.c:30643 msgid "use -march=armv3m" msgstr "" -#: config/tc-arm.c:25870 config/tc-arm.c:25871 +#: config/tc-arm.c:30644 config/tc-arm.c:30645 msgid "use -march=armv4" msgstr "" -#: config/tc-arm.c:25872 config/tc-arm.c:25873 +#: config/tc-arm.c:30646 config/tc-arm.c:30647 msgid "use -march=armv4t" msgstr "" -#: config/tc-arm.c:25874 config/tc-arm.c:25875 +#: config/tc-arm.c:30648 config/tc-arm.c:30649 msgid "use -march=armv5" msgstr "" -#: config/tc-arm.c:25876 config/tc-arm.c:25877 +#: config/tc-arm.c:30650 config/tc-arm.c:30651 msgid "use -march=armv5t" msgstr "" -#: config/tc-arm.c:25878 config/tc-arm.c:25879 +#: config/tc-arm.c:30652 config/tc-arm.c:30653 msgid "use -march=armv5te" msgstr "" #. Floating point variants -- don't add any more to this list either. -#: config/tc-arm.c:25882 +#: config/tc-arm.c:30656 msgid "use -mfpu=fpe" msgstr "" -#: config/tc-arm.c:25883 +#: config/tc-arm.c:30657 msgid "use -mfpu=fpa10" msgstr "" -#: config/tc-arm.c:25884 +#: config/tc-arm.c:30658 msgid "use -mfpu=fpa11" msgstr "" -#: config/tc-arm.c:25886 +#: config/tc-arm.c:30660 msgid "use either -mfpu=softfpa or -mfpu=softvfp" msgstr "" -#: config/tc-arm.c:26647 +#: config/tc-arm.c:31707 msgid "extension does not apply to the base architecture" msgstr "" -#: config/tc-arm.c:26676 +#: config/tc-arm.c:31736 msgid "architectural extensions must be specified in alphabetical order" msgstr "" -#: config/tc-arm.c:26797 config/tc-arm.c:27691 +#: config/tc-arm.c:31875 config/tc-arm.c:32816 #, c-format msgid "unknown floating point format `%s'\n" msgstr "" -#: config/tc-arm.c:26813 +#: config/tc-arm.c:31891 #, c-format msgid "unknown floating point abi `%s'\n" msgstr "" -#: config/tc-arm.c:26829 +#: config/tc-arm.c:31907 #, c-format msgid "unknown EABI `%s'\n" msgstr "" -#: config/tc-arm.c:26849 +#: config/tc-arm.c:31927 #, c-format msgid "unknown implicit IT mode `%s', should be arm, thumb, always, or never." msgstr "" -#: config/tc-arm.c:26872 config/tc-metag.c:5913 +#: config/tc-arm.c:31950 config/tc-metag.c:5913 msgid "<fpu name>\t assemble for FPU architecture <fpu name>" msgstr "" -#: config/tc-arm.c:26874 +#: config/tc-arm.c:31952 msgid "<abi>\t assemble for floating point ABI <abi>" msgstr "" -#: config/tc-arm.c:26877 +#: config/tc-arm.c:31955 msgid "<ver>\t\t assemble for eabi version <ver>" msgstr "" -#: config/tc-arm.c:26880 +#: config/tc-arm.c:31958 msgid "<mode>\t controls implicit insertion of IT instructions" msgstr "" -#: config/tc-arm.c:26882 +#: config/tc-arm.c:31960 msgid "\t\t\t TI CodeComposer Studio syntax compatibility mode" msgstr "" -#: config/tc-arm.c:26990 +#: config/tc-arm.c:31963 +msgid "" +"[ieee|alternative]\n" +" set the encoding for half precision floating point " +"numbers to IEEE\n" +" or Arm alternative format." +msgstr "" + +#: config/tc-arm.c:32074 #, c-format msgid " ARM-specific assembler options:\n" msgstr "" -#: config/tc-arm.c:27010 +#: config/tc-arm.c:32094 #, c-format msgid " --fix-v4bx Allow BX in ARMv4 code\n" msgstr "" -#: config/tc-arm.c:27014 +#: config/tc-arm.c:32098 #, c-format msgid " --fdpic generate an FDPIC object file\n" msgstr "" -#: config/tc-arm.c:27318 +#: config/tc-arm.c:32404 msgid "no architecture contains all the instructions used\n" msgstr "" -#: config/tc-arm.c:27632 +#: config/tc-arm.c:32756 #, c-format msgid "" "architectural extension `%s' is not allowed for the current base architecture" msgstr "" -#: config/tc-arm.c:27655 +#: config/tc-arm.c:32779 #, c-format msgid "unknown architecture extension `%s'\n" msgstr "" @@ -5098,11 +5408,11 @@ msgstr "" msgid "constant out of 8-bit range: %d" msgstr "" -#: config/tc-avr.c:954 config/tc-score.c:1199 read.c:3797 +#: config/tc-avr.c:954 config/tc-score.c:1198 read.c:3798 msgid "illegal expression" msgstr "" -#: config/tc-avr.c:983 config/tc-avr.c:1993 config/tc-pru.c:1882 +#: config/tc-avr.c:983 config/tc-avr.c:1993 config/tc-pru.c:1883 msgid "`)' required" msgstr "" @@ -5122,7 +5432,7 @@ msgstr "" msgid "register number above 15 required" msgstr "" -#: config/tc-avr.c:1119 config/tc-csky.c:5882 config/tc-csky.c:5916 +#: config/tc-avr.c:1119 config/tc-csky.c:5885 config/tc-csky.c:5919 msgid "even register number required" msgstr "" @@ -5176,7 +5486,7 @@ msgid "skipping two-word instruction" msgstr "" #: config/tc-avr.c:1602 config/tc-avr.c:1618 config/tc-avr.c:1749 -#: config/tc-msp430.c:4300 config/tc-msp430.c:4319 +#: config/tc-msp430.c:4486 config/tc-msp430.c:4505 #, c-format msgid "odd address operand: %ld" msgstr "" @@ -5184,7 +5494,7 @@ msgstr "" #: config/tc-avr.c:1610 config/tc-avr.c:1629 config/tc-avr.c:1647 #: config/tc-avr.c:1658 config/tc-avr.c:1674 config/tc-avr.c:1682 #: config/tc-avr.c:1777 config/tc-avr.c:1784 config/tc-d10v.c:503 -#: config/tc-d30v.c:553 config/tc-msp430.c:4308 config/tc-msp430.c:4326 +#: config/tc-d30v.c:553 config/tc-msp430.c:4494 config/tc-msp430.c:4512 #, c-format msgid "operand out of range: %ld" msgstr "" @@ -5194,8 +5504,8 @@ msgstr "" msgid "operand out of range: 0x%lx" msgstr "" -#: config/tc-avr.c:1770 config/tc-d10v.c:1590 config/tc-d30v.c:2034 -#: config/tc-msp430.c:4397 +#: config/tc-avr.c:1770 config/tc-d10v.c:1593 config/tc-d30v.c:2014 +#: config/tc-msp430.c:4583 #, c-format msgid "line %d: unknown relocation type: 0x%x" msgstr "" @@ -5206,10 +5516,10 @@ msgstr "" #. xgettext:c-format. #: config/tc-avr.c:1853 config/tc-bfin.c:824 config/tc-d10v.c:1462 -#: config/tc-d30v.c:1771 config/tc-metag.c:7022 config/tc-mn10200.c:779 -#: config/tc-mn10300.c:2177 config/tc-msp430.c:4445 config/tc-ppc.c:7533 +#: config/tc-d30v.c:1771 config/tc-metag.c:7019 config/tc-mn10200.c:779 +#: config/tc-mn10300.c:2177 config/tc-msp430.c:4631 config/tc-ppc.c:7949 #: config/tc-spu.c:894 config/tc-spu.c:1105 config/tc-v850.c:3367 -#: config/tc-z80.c:2075 +#: config/tc-z80.c:3423 #, c-format msgid "reloc %d not supported by object file format" msgstr "" @@ -5235,7 +5545,7 @@ msgstr "" msgid "garbage at end of line" msgstr "" -#: config/tc-avr.c:2042 config/tc-pru.c:1914 +#: config/tc-avr.c:2042 config/tc-pru.c:1915 #, c-format msgid "illegal %s relocation size: %d" msgstr "" @@ -5334,6 +5644,28 @@ msgstr "" msgid "rel too far BFD_RELOC_16" msgstr "" +#: config/tc-bpf.c:143 +#, c-format +msgid "" +"\n" +"BPF options:\n" +msgstr "" + +#: config/tc-bpf.c:144 +#, c-format +msgid "" +" --EL\t\t\tgenerate code for a little endian machine\n" +" --EB\t\t\tgenerate code for a big endian machine\n" +msgstr "" + +#: config/tc-bpf.c:279 +msgid "convert_frag called" +msgstr "" + +#: config/tc-bpf.c:286 config/tc-sparc.h:68 config/tc-z80.h:56 +msgid "estimate_size_before_relax called" +msgstr "" + #: config/tc-cr16.c:164 msgid "using a bit field width of zero" msgstr "" @@ -5365,7 +5697,7 @@ msgstr "" msgid "internal error: reloc %d (`%s') not supported by object file format" msgstr "" -#: config/tc-cr16.c:696 config/tc-i386.c:11722 config/tc-s390.c:2119 +#: config/tc-cr16.c:696 config/tc-i386.c:12972 config/tc-s390.c:2121 msgid "GOT already in symbol table" msgstr "" @@ -5568,7 +5900,7 @@ msgstr "" msgid "internal inconsistency problem in %s: fr_symbol %lx" msgstr "" -#: config/tc-cris.c:554 config/tc-m68hc11.c:3897 config/tc-msp430.c:4795 +#: config/tc-cris.c:554 config/tc-m68hc11.c:3897 config/tc-msp430.c:4981 #, c-format msgid "internal inconsistency problem in %s: resolved symbol" msgstr "" @@ -5832,51 +6164,47 @@ msgid "" "\t\t\t\tare v0_v10, v10, v32 and common_v10_v32.\n" msgstr "" -#: config/tc-cris.c:4059 -msgid "Invalid relocation" -msgstr "" - -#: config/tc-cris.c:4096 +#: config/tc-cris.c:4088 msgid "Invalid pc-relative relocation" msgstr "" -#: config/tc-cris.c:4141 +#: config/tc-cris.c:4133 #, c-format msgid "Adjusted signed .word (%ld) overflows: `switch'-statement too large." msgstr "" -#: config/tc-cris.c:4171 +#: config/tc-cris.c:4163 #, c-format msgid ".syntax %s requires command-line option `--underscore'" msgstr "" -#: config/tc-cris.c:4180 +#: config/tc-cris.c:4172 #, c-format msgid ".syntax %s requires command-line option `--no-underscore'" msgstr "" -#: config/tc-cris.c:4217 +#: config/tc-cris.c:4209 msgid "Unknown .syntax operand" msgstr "" -#: config/tc-cris.c:4227 +#: config/tc-cris.c:4219 msgid "Pseudodirective .file is only valid when generating ELF" msgstr "" -#: config/tc-cris.c:4239 +#: config/tc-cris.c:4231 msgid "Pseudodirective .loc is only valid when generating ELF" msgstr "" -#: config/tc-cris.c:4254 +#: config/tc-cris.c:4246 #, c-format msgid "internal inconsistency problem: %s called for %d bytes" msgstr "" -#: config/tc-cris.c:4406 +#: config/tc-cris.c:4398 msgid "unknown operand to .arch" msgstr "" -#: config/tc-cris.c:4415 +#: config/tc-cris.c:4407 msgid ".arch <arch> requires a matching --march=... option" msgstr "" @@ -5976,8 +6304,8 @@ msgstr "" #. Variable not in small data read only segment accessed #. using small data read only anchor. -#: config/tc-csky.c:874 config/tc-mcore.c:1923 config/tc-microblaze.c:1990 -#: config/tc-microblaze.c:2292 config/tc-microblaze.c:2315 +#: config/tc-csky.c:874 config/tc-mcore.c:1923 config/tc-microblaze.c:1987 +#: config/tc-microblaze.c:2288 config/tc-microblaze.c:2311 msgid "unknown" msgstr "" @@ -6188,58 +6516,58 @@ msgstr "" msgid "more than 65K literal pools" msgstr "" -#: config/tc-csky.c:1804 read.c:3558 read.c:4866 +#: config/tc-csky.c:1804 read.c:3558 read.c:4867 #, c-format msgid "bad floating literal: %s" msgstr "" -#: config/tc-csky.c:1931 config/tc-mcore.c:742 +#: config/tc-csky.c:1932 config/tc-mcore.c:742 msgid "missing ']'" msgstr "" -#: config/tc-csky.c:1950 config/tc-mips.c:14106 config/tc-mips.c:14170 -#: config/tc-mips.c:14181 config/tc-score.c:2691 config/tc-score.c:2737 +#: config/tc-csky.c:1951 config/tc-mips.c:14328 config/tc-mips.c:14392 +#: config/tc-mips.c:14403 config/tc-score.c:2690 config/tc-score.c:2736 msgid "unrecognized opcode" msgstr "" -#: config/tc-csky.c:3192 config/tc-mcore.c:1163 +#: config/tc-csky.c:3193 config/tc-mcore.c:1163 msgid "translating mgeni to movi" msgstr "" -#: config/tc-csky.c:4785 config/tc-tilegx.c:1458 config/tc-tilepro.c:1320 +#: config/tc-csky.c:4788 config/tc-tilegx.c:1455 config/tc-tilepro.c:1317 #, c-format msgid "unsupported BFD relocation size %d" msgstr "" -#: config/tc-csky.c:5405 +#: config/tc-csky.c:5408 msgid "second operand must be 4" msgstr "" -#: config/tc-csky.c:5429 config/tc-mcore.c:1526 +#: config/tc-csky.c:5432 config/tc-mcore.c:1526 msgid "second operand must be 1" msgstr "" -#: config/tc-csky.c:5502 config/tc-xtensa.c:1984 +#: config/tc-csky.c:5505 config/tc-xtensa.c:1974 msgid "register number out of range" msgstr "" -#: config/tc-csky.c:5512 +#: config/tc-csky.c:5515 msgid "64-bit operator src/dst register must be less than 15" msgstr "" -#: config/tc-csky.c:7175 +#: config/tc-csky.c:7178 msgid "the first operand must be a symbol" msgstr "" -#: config/tc-csky.c:7184 +#: config/tc-csky.c:7187 msgid "missing stack size" msgstr "" -#: config/tc-csky.c:7197 config/tc-score.c:4242 +#: config/tc-csky.c:7200 config/tc-score.c:4241 msgid "value not in range [0, 0xffffffff]" msgstr "" -#: config/tc-csky.c:7207 config/tc-mcore.c:781 +#: config/tc-csky.c:7210 config/tc-mcore.c:781 msgid "operand must be a constant" msgstr "" @@ -6367,16 +6695,16 @@ msgstr "" msgid "line %d: rep or repi must include at least 4 instructions" msgstr "" -#: config/tc-d10v.c:1759 +#: config/tc-d10v.c:1762 msgid "can't find previous opcode " msgstr "" -#: config/tc-d10v.c:1771 +#: config/tc-d10v.c:1774 #, c-format msgid "could not assemble: %s" msgstr "" -#: config/tc-d10v.c:1786 config/tc-d10v.c:1808 config/tc-d30v.c:1744 +#: config/tc-d10v.c:1789 config/tc-d10v.c:1811 config/tc-d30v.c:1744 msgid "Unable to mix instructions as specified" msgstr "" @@ -6498,32 +6826,7 @@ msgstr "" msgid "value too large to fit in %d bits" msgstr "" -#: config/tc-d30v.c:1923 -#, c-format -msgid "line %d: unable to place address of symbol '%s' into a byte" -msgstr "" - -#: config/tc-d30v.c:1926 -#, c-format -msgid "line %d: unable to place value %lx into a byte" -msgstr "" - -#: config/tc-d30v.c:1934 -#, c-format -msgid "line %d: unable to place address of symbol '%s' into a short" -msgstr "" - -#: config/tc-d30v.c:1937 -#, c-format -msgid "line %d: unable to place value %lx into a short" -msgstr "" - -#: config/tc-d30v.c:1945 -#, c-format -msgid "line %d: unable to place address of symbol '%s' into a quad" -msgstr "" - -#: config/tc-d30v.c:2053 config/tc-pru.c:216 config/tc-pru.c:332 +#: config/tc-d30v.c:2033 config/tc-pru.c:216 config/tc-pru.c:332 #, c-format msgid "Alignment too large: %d assumed" msgstr "" @@ -6536,18 +6839,18 @@ msgstr "" msgid ".endfunc missing for previous .proc" msgstr "" -#: config/tc-dlx.c:295 config/tc-mips.c:3664 config/tc-nios2.c:3639 -#: config/tc-nios2.c:3653 config/tc-nios2.c:3668 config/tc-pru.c:1573 -#: config/tc-pru.c:1587 config/tc-riscv.c:718 +#: config/tc-dlx.c:295 config/tc-mips.c:3703 config/tc-nios2.c:3637 +#: config/tc-nios2.c:3651 config/tc-nios2.c:3666 config/tc-pru.c:1574 +#: config/tc-pru.c:1588 config/tc-riscv.c:726 #, c-format msgid "internal error: can't hash `%s': %s\n" msgstr "" #. Probably a memory allocation problem? Give up now. -#: config/tc-dlx.c:302 config/tc-hppa.c:8271 config/tc-nios2.c:1440 -#: config/tc-nios2.c:3642 config/tc-nios2.c:3656 config/tc-nios2.c:3671 -#: config/tc-pru.c:1576 config/tc-pru.c:1590 config/tc-riscv.c:721 -#: config/tc-riscv.c:733 config/tc-sparc.c:1008 +#: config/tc-dlx.c:302 config/tc-hppa.c:8269 config/tc-nios2.c:1438 +#: config/tc-nios2.c:3640 config/tc-nios2.c:3654 config/tc-nios2.c:3669 +#: config/tc-pru.c:1577 config/tc-pru.c:1591 config/tc-riscv.c:729 +#: config/tc-riscv.c:741 config/tc-sparc.c:1008 msgid "Broken assembler. No assembly attempted." msgstr "" @@ -6571,7 +6874,7 @@ msgstr "" msgid "Invalid expression after %%%%\n" msgstr "" -#: config/tc-dlx.c:703 config/tc-tic4x.c:2473 +#: config/tc-dlx.c:703 config/tc-tic4x.c:2470 #, c-format msgid "Unknown opcode `%s'." msgstr "" @@ -6608,16 +6911,16 @@ msgstr "" msgid "Invalid operands" msgstr "" -#: config/tc-dlx.c:1118 +#: config/tc-dlx.c:1108 #, c-format msgid "label \"$%d\" redefined" msgstr "" -#: config/tc-dlx.c:1156 +#: config/tc-dlx.c:1146 msgid "Invalid expression after # number\n" msgstr "" -#: config/tc-dlx.c:1199 config/tc-m32r.c:2276 config/tc-nds32.c:7882 +#: config/tc-dlx.c:1189 config/tc-m32r.c:2273 config/tc-nds32.c:7879 #: config/tc-sparc.c:4020 #, c-format msgid "internal error: can't export reloc type %d (`%s')" @@ -6628,32 +6931,32 @@ msgstr "" msgid "EPIPHANY specific command line options:\n" msgstr "" -#: config/tc-epiphany.c:365 +#: config/tc-epiphany.c:367 msgid "register number too large for push/pop" msgstr "" -#: config/tc-epiphany.c:369 +#: config/tc-epiphany.c:371 msgid "register is out of order" msgstr "" -#: config/tc-epiphany.c:380 config/tc-m68k.c:5906 config/tc-m68k.c:5935 +#: config/tc-epiphany.c:382 config/tc-m68k.c:5906 config/tc-m68k.c:5935 msgid "bad register list" msgstr "" -#: config/tc-epiphany.c:383 +#: config/tc-epiphany.c:385 msgid "malformed reglist in push/pop" msgstr "" #. Checks for behavioral restrictions on LD/ST instructions. -#: config/tc-epiphany.c:429 +#: config/tc-epiphany.c:431 msgid "destination register modified by displacement-post-modified address" msgstr "" -#: config/tc-epiphany.c:430 +#: config/tc-epiphany.c:432 msgid "ldrd/strd requires even:odd register pair" msgstr "" -#: config/tc-epiphany.c:813 config/tc-m32r.c:1784 +#: config/tc-epiphany.c:820 config/tc-m32r.c:1784 msgid "Addend to unresolved symbol not on word boundary." msgstr "" @@ -7001,9 +7304,9 @@ msgstr "" #. This seems more sane than saying "too many operands". We'll #. get here only if the trailing trash starts with a comma. -#: config/tc-h8300.c:1816 config/tc-mips.c:14122 config/tc-mips.c:14190 -#: config/tc-mmix.c:479 config/tc-mmix.c:491 config/tc-mmix.c:2533 -#: config/tc-mmix.c:2557 config/tc-mmix.c:2830 +#: config/tc-h8300.c:1816 config/tc-mips.c:14344 config/tc-mips.c:14412 +#: config/tc-mmix.c:479 config/tc-mmix.c:491 config/tc-mmix.c:2532 +#: config/tc-mmix.c:2556 config/tc-mmix.c:2829 msgid "invalid operands" msgstr "" @@ -7011,7 +7314,7 @@ msgstr "" msgid "operand/size mis-match" msgstr "" -#: config/tc-h8300.c:1947 config/tc-sh.c:2557 config/tc-z8k.c:1233 +#: config/tc-h8300.c:1947 config/tc-sh.c:2551 config/tc-z8k.c:1233 msgid "unknown opcode" msgstr "" @@ -7069,8 +7372,8 @@ msgstr "" msgid "Difference of symbols in different sections is not supported" msgstr "" -#: config/tc-h8300.c:2325 config/tc-mcore.c:2204 config/tc-microblaze.c:2485 -#: config/tc-pj.c:491 config/tc-sh.c:3906 config/tc-tic6x.c:4520 +#: config/tc-h8300.c:2325 config/tc-mcore.c:2204 config/tc-microblaze.c:2481 +#: config/tc-pj.c:491 config/tc-sh.c:3900 config/tc-tic6x.c:4520 #: config/tc-xc16x.c:315 #, c-format msgid "Cannot represent relocation type %s" @@ -7284,11 +7587,11 @@ msgstr "" msgid "Immediates %d and %d will give undefined behavior." msgstr "" -#: config/tc-hppa.c:5771 config/tc-hppa.c:6955 config/tc-hppa.c:7010 +#: config/tc-hppa.c:5771 config/tc-hppa.c:6954 config/tc-hppa.c:7009 msgid "Missing function name for .PROC (corrupted label chain)" msgstr "" -#: config/tc-hppa.c:5774 config/tc-hppa.c:7013 +#: config/tc-hppa.c:5774 config/tc-hppa.c:7012 msgid "Missing function name for .PROC" msgstr "" @@ -7301,985 +7604,1037 @@ msgstr "" msgid "Invalid .CALL argument: %s" msgstr "" -#: config/tc-hppa.c:6070 +#: config/tc-hppa.c:6069 msgid ".callinfo is not within a procedure definition" msgstr "" -#: config/tc-hppa.c:6088 +#: config/tc-hppa.c:6087 #, c-format msgid "FRAME parameter must be a multiple of 8: %d\n" msgstr "" -#: config/tc-hppa.c:6105 +#: config/tc-hppa.c:6104 msgid "Value for ENTRY_GR must be in the range 3..18\n" msgstr "" -#: config/tc-hppa.c:6116 +#: config/tc-hppa.c:6115 msgid "Value for ENTRY_FR must be in the range 12..21\n" msgstr "" -#: config/tc-hppa.c:6125 +#: config/tc-hppa.c:6124 msgid "Value for ENTRY_SR must be 3\n" msgstr "" -#: config/tc-hppa.c:6174 +#: config/tc-hppa.c:6173 #, c-format msgid "Invalid .CALLINFO argument: %s" msgstr "" -#: config/tc-hppa.c:6285 +#: config/tc-hppa.c:6284 msgid "The .ENTER pseudo-op is not supported" msgstr "" -#: config/tc-hppa.c:6301 +#: config/tc-hppa.c:6300 msgid "Misplaced .entry. Ignored." msgstr "" -#: config/tc-hppa.c:6305 +#: config/tc-hppa.c:6304 msgid "Missing .callinfo." msgstr "" -#: config/tc-hppa.c:6369 +#: config/tc-hppa.c:6368 msgid ".REG expression must be a register" msgstr "" -#: config/tc-hppa.c:6385 +#: config/tc-hppa.c:6384 msgid "bad or irreducible absolute expression; zero assumed" msgstr "" -#: config/tc-hppa.c:6396 +#: config/tc-hppa.c:6395 msgid ".REG must use a label" msgstr "" -#: config/tc-hppa.c:6398 +#: config/tc-hppa.c:6397 msgid ".EQU must use a label" msgstr "" -#: config/tc-hppa.c:6454 +#: config/tc-hppa.c:6453 #, c-format msgid "Symbol '%s' could not be created." msgstr "" -#: config/tc-hppa.c:6504 +#: config/tc-hppa.c:6503 msgid ".EXIT must appear within a procedure" msgstr "" -#: config/tc-hppa.c:6508 +#: config/tc-hppa.c:6507 msgid "Missing .callinfo" msgstr "" -#: config/tc-hppa.c:6512 +#: config/tc-hppa.c:6511 msgid "No .ENTRY for this .EXIT" msgstr "" -#: config/tc-hppa.c:6552 +#: config/tc-hppa.c:6551 #, c-format msgid "Using ENTRY rather than CODE in export directive for %s" msgstr "" -#: config/tc-hppa.c:6671 +#: config/tc-hppa.c:6670 #, c-format msgid "Undefined .EXPORT/.IMPORT argument (ignored): %s" msgstr "" -#: config/tc-hppa.c:6694 +#: config/tc-hppa.c:6693 #, c-format msgid "Cannot define export symbol: %s\n" msgstr "" -#: config/tc-hppa.c:6785 +#: config/tc-hppa.c:6784 msgid "Missing label name on .LABEL" msgstr "" -#: config/tc-hppa.c:6790 +#: config/tc-hppa.c:6789 msgid "extra .LABEL arguments ignored." msgstr "" -#: config/tc-hppa.c:6806 +#: config/tc-hppa.c:6805 msgid "The .LEAVE pseudo-op is not supported" msgstr "" -#: config/tc-hppa.c:6844 +#: config/tc-hppa.c:6843 msgid "Unrecognized .LEVEL argument\n" msgstr "" -#: config/tc-hppa.c:6877 +#: config/tc-hppa.c:6876 #, c-format msgid "Cannot define static symbol: %s\n" msgstr "" -#: config/tc-hppa.c:6909 +#: config/tc-hppa.c:6908 msgid "Nested procedures" msgstr "" -#: config/tc-hppa.c:6919 +#: config/tc-hppa.c:6918 msgid "Cannot allocate unwind descriptor\n" msgstr "" -#: config/tc-hppa.c:7017 +#: config/tc-hppa.c:7016 msgid "misplaced .procend" msgstr "" -#: config/tc-hppa.c:7020 +#: config/tc-hppa.c:7019 msgid "Missing .callinfo for this procedure" msgstr "" -#: config/tc-hppa.c:7023 +#: config/tc-hppa.c:7022 msgid "Missing .EXIT for a .ENTRY" msgstr "" -#: config/tc-hppa.c:7060 +#: config/tc-hppa.c:7059 msgid "Not in a space.\n" msgstr "" -#: config/tc-hppa.c:7063 +#: config/tc-hppa.c:7062 msgid "Not in a subspace.\n" msgstr "" -#: config/tc-hppa.c:7151 +#: config/tc-hppa.c:7150 msgid "Invalid .SPACE argument" msgstr "" -#: config/tc-hppa.c:7197 +#: config/tc-hppa.c:7196 msgid "Can't change spaces within a procedure definition. Ignored" msgstr "" -#: config/tc-hppa.c:7322 +#: config/tc-hppa.c:7321 #, c-format msgid "Undefined space: '%s' Assuming space number = 0." msgstr "" -#: config/tc-hppa.c:7345 +#: config/tc-hppa.c:7344 msgid "Must be in a space before changing or declaring subspaces.\n" msgstr "" -#: config/tc-hppa.c:7349 +#: config/tc-hppa.c:7348 msgid "Can't change subspaces within a procedure definition. Ignored" msgstr "" -#: config/tc-hppa.c:7383 +#: config/tc-hppa.c:7382 msgid "Parameters of an existing subspace can't be modified" msgstr "" -#: config/tc-hppa.c:7434 +#: config/tc-hppa.c:7433 msgid "Alignment must be a power of 2" msgstr "" -#: config/tc-hppa.c:7481 +#: config/tc-hppa.c:7480 msgid "FIRST not supported as a .SUBSPACE argument" msgstr "" -#: config/tc-hppa.c:7483 +#: config/tc-hppa.c:7482 msgid "Invalid .SUBSPACE argument" msgstr "" -#: config/tc-hppa.c:7673 +#: config/tc-hppa.c:7671 #, c-format msgid "Internal error: Unable to find containing space for %s." msgstr "" -#: config/tc-hppa.c:8235 +#: config/tc-hppa.c:8233 msgid "-R option not supported on this target." msgstr "" -#: config/tc-hppa.c:8252 config/tc-sparc.c:963 config/tc-sparc.c:1000 +#: config/tc-hppa.c:8250 config/tc-sparc.c:963 config/tc-sparc.c:1000 #, c-format msgid "Internal error: can't hash `%s': %s\n" msgstr "" -#: config/tc-hppa.c:8261 +#: config/tc-hppa.c:8259 #, c-format msgid "internal error: losing opcode: `%s' \"%s\"\n" msgstr "" -#: config/tc-i386.c:1486 +#: config/tc-i386.c:1388 +#, c-format +msgid "i386_output_nops called to generate nops of at most %d bytes!" +msgstr "" + +#: config/tc-i386.c:1597 #, c-format msgid "invalid single nop size: %d (expect within [0, %d])" msgstr "" -#: config/tc-i386.c:1527 +#: config/tc-i386.c:1638 msgid "jump over nop padding out of range" msgstr "" -#: config/tc-i386.c:2346 +#: config/tc-i386.c:2472 #, c-format msgid "%s shortened to %s" msgstr "" -#: config/tc-i386.c:2437 +#: config/tc-i386.c:2563 msgid "same type of prefix used twice" msgstr "" -#: config/tc-i386.c:2464 +#: config/tc-i386.c:2590 #, c-format msgid "64bit mode not supported on `%s'." msgstr "" -#: config/tc-i386.c:2473 +#: config/tc-i386.c:2599 #, c-format msgid "32bit mode not supported on `%s'." msgstr "" -#: config/tc-i386.c:2513 +#: config/tc-i386.c:2639 msgid "bad argument to syntax directive." msgstr "" -#: config/tc-i386.c:2576 +#: config/tc-i386.c:2702 #, c-format msgid "bad argument to %s_check directive." msgstr "" -#: config/tc-i386.c:2580 +#: config/tc-i386.c:2706 #, c-format msgid "missing argument for %s_check directive" msgstr "" -#: config/tc-i386.c:2620 +#: config/tc-i386.c:2746 #, c-format msgid "`%s' is not supported on `%s'" msgstr "" -#: config/tc-i386.c:2726 +#: config/tc-i386.c:2852 #, c-format msgid "no such architecture: `%s'" msgstr "" -#: config/tc-i386.c:2731 +#: config/tc-i386.c:2857 msgid "missing cpu architecture" msgstr "" -#: config/tc-i386.c:2748 +#: config/tc-i386.c:2874 #, c-format msgid "no such architecture modifier: `%s'" msgstr "" -#: config/tc-i386.c:2763 config/tc-i386.c:2793 +#: config/tc-i386.c:2889 config/tc-i386.c:2919 msgid "Intel L1OM is 64bit ELF only" msgstr "" -#: config/tc-i386.c:2770 config/tc-i386.c:2800 +#: config/tc-i386.c:2896 config/tc-i386.c:2926 msgid "Intel K1OM is 64bit ELF only" msgstr "" -#: config/tc-i386.c:2777 config/tc-i386.c:2814 +#: config/tc-i386.c:2903 config/tc-i386.c:2940 msgid "Intel MCU is 32bit ELF only" msgstr "" -#: config/tc-i386.c:2821 config/tc-i386.c:11620 +#: config/tc-i386.c:2947 config/tc-i386.c:12861 msgid "unknown architecture" msgstr "" -#: config/tc-i386.c:2858 config/tc-i386.c:2880 +#: config/tc-i386.c:2984 config/tc-i386.c:3006 #, c-format msgid "can't hash %s: %s" msgstr "" -#: config/tc-i386.c:3173 +#: config/tc-i386.c:3303 msgid "there are no pc-relative size relocations" msgstr "" -#: config/tc-i386.c:3185 +#: config/tc-i386.c:3315 #, c-format msgid "unknown relocation (%u)" msgstr "" -#: config/tc-i386.c:3187 +#: config/tc-i386.c:3317 #, c-format msgid "%u-byte relocation cannot be applied to %u-byte field" msgstr "" -#: config/tc-i386.c:3191 +#: config/tc-i386.c:3321 msgid "non-pc-relative relocation for pc-relative field" msgstr "" -#: config/tc-i386.c:3196 +#: config/tc-i386.c:3326 msgid "relocated field and relocation type differ in signedness" msgstr "" -#: config/tc-i386.c:3205 +#: config/tc-i386.c:3335 msgid "there are no unsigned pc-relative relocations" msgstr "" -#: config/tc-i386.c:3213 +#: config/tc-i386.c:3343 #, c-format msgid "cannot do %u byte pc-relative relocation" msgstr "" -#: config/tc-i386.c:3230 +#: config/tc-i386.c:3360 #, c-format msgid "cannot do %s %u byte relocation" msgstr "" -#: config/tc-i386.c:3771 config/tc-i386.c:3798 -#, c-format -msgid "can't use register '%s%s' as operand %d in '%s'." -msgstr "" - -#: config/tc-i386.c:3837 config/tc-i386.c:4177 +#: config/tc-i386.c:3958 config/tc-i386.c:4406 #, c-format msgid "invalid instruction `%s' after `%s'" msgstr "" -#: config/tc-i386.c:3843 +#: config/tc-i386.c:3964 #, c-format msgid "missing `lock' with `%s'" msgstr "" -#: config/tc-i386.c:3850 +#: config/tc-i386.c:3971 #, c-format msgid "instruction `%s' after `xacquire' not allowed" msgstr "" -#: config/tc-i386.c:3857 +#: config/tc-i386.c:3977 #, c-format msgid "memory destination needed for instruction `%s' after `xrelease'" msgstr "" -#: config/tc-i386.c:4151 +#: config/tc-i386.c:4380 #, c-format msgid "SSE instruction `%s' is used" msgstr "" -#: config/tc-i386.c:4165 config/tc-i386.c:6222 +#: config/tc-i386.c:4394 config/tc-i386.c:6488 #, c-format msgid "ambiguous operand size for `%s'" msgstr "" -#: config/tc-i386.c:4190 +#: config/tc-i386.c:4419 msgid "expecting lockable instruction after `lock'" msgstr "" -#: config/tc-i386.c:4197 +#: config/tc-i386.c:4426 #, c-format msgid "data size prefix invalid with `%s'" msgstr "" -#: config/tc-i386.c:4207 +#: config/tc-i386.c:4436 msgid "expecting valid branch instruction after `bnd'" msgstr "" -#: config/tc-i386.c:4211 +#: config/tc-i386.c:4440 msgid "expecting indirect branch instruction after `notrack'" msgstr "" -#: config/tc-i386.c:4216 +#: config/tc-i386.c:4445 msgid "32-bit address isn't allowed in 64-bit MPX instructions." msgstr "" -#: config/tc-i386.c:4220 +#: config/tc-i386.c:4449 msgid "16-bit address isn't allowed in MPX instructions" msgstr "" -#: config/tc-i386.c:4230 +#: config/tc-i386.c:4459 msgid "replacing `rep'/`repe' prefix by `bnd'" msgstr "" #. UnixWare fsub no args is alias for fsubp, fadd -> faddp, etc. -#: config/tc-i386.c:4284 +#: config/tc-i386.c:4513 #, c-format msgid "translating to `%sp'" msgstr "" -#: config/tc-i386.c:4291 +#: config/tc-i386.c:4520 #, c-format -msgid "instruction `%s' isn't supported in 16-bit mode." +msgid "instruction `%s' isn't supported outside of protected mode." msgstr "" -#: config/tc-i386.c:4351 +#: config/tc-i386.c:4580 #, c-format msgid "can't encode register '%s%s' in an instruction requiring REX prefix." msgstr "" -#: config/tc-i386.c:4411 config/tc-i386.c:4606 +#: config/tc-i386.c:4651 config/tc-i386.c:4850 #, c-format msgid "no such instruction: `%s'" msgstr "" -#: config/tc-i386.c:4422 config/tc-i386.c:4639 +#: config/tc-i386.c:4662 config/tc-i386.c:4883 #, c-format msgid "invalid character %s in mnemonic" msgstr "" -#: config/tc-i386.c:4429 +#: config/tc-i386.c:4669 msgid "expecting prefix; got nothing" msgstr "" -#: config/tc-i386.c:4431 +#: config/tc-i386.c:4671 msgid "expecting mnemonic; got nothing" msgstr "" -#: config/tc-i386.c:4446 config/tc-i386.c:4661 +#: config/tc-i386.c:4686 config/tc-i386.c:4905 #, c-format msgid "`%s' is only supported in 64-bit mode" msgstr "" -#: config/tc-i386.c:4447 config/tc-i386.c:4660 +#: config/tc-i386.c:4687 config/tc-i386.c:4904 #, c-format msgid "`%s' is not supported in 64-bit mode" msgstr "" -#: config/tc-i386.c:4459 +#: config/tc-i386.c:4699 #, c-format msgid "redundant %s prefix" msgstr "" -#: config/tc-i386.c:4652 +#: config/tc-i386.c:4896 msgid "use .code16 to ensure correct addressing mode" msgstr "" -#: config/tc-i386.c:4664 +#: config/tc-i386.c:4908 #, c-format msgid "`%s' is not supported on `%s%s'" msgstr "" -#: config/tc-i386.c:4690 +#: config/tc-i386.c:4934 #, c-format msgid "invalid character %s before operand %d" msgstr "" -#: config/tc-i386.c:4704 +#: config/tc-i386.c:4948 #, c-format msgid "unbalanced parenthesis in operand %d." msgstr "" -#: config/tc-i386.c:4707 +#: config/tc-i386.c:4951 #, c-format msgid "unbalanced brackets in operand %d." msgstr "" -#: config/tc-i386.c:4716 +#: config/tc-i386.c:4960 #, c-format msgid "invalid character %s in operand %d" msgstr "" -#: config/tc-i386.c:4743 +#: config/tc-i386.c:4987 #, c-format msgid "spurious operands; (%d operands/instruction max)" msgstr "" -#: config/tc-i386.c:4753 config/tc-i386.c:9962 +#: config/tc-i386.c:4997 config/tc-i386.c:10630 #, c-format msgid "too many memory references for `%s'" msgstr "" -#: config/tc-i386.c:4774 +#: config/tc-i386.c:5018 msgid "expecting operand after ','; got nothing" msgstr "" -#: config/tc-i386.c:4779 +#: config/tc-i386.c:5023 msgid "expecting operand before ','; got nothing" msgstr "" -#: config/tc-i386.c:5205 +#: config/tc-i386.c:5453 msgid "mask, index, and destination registers should be distinct" msgstr "" -#: config/tc-i386.c:5222 +#: config/tc-i386.c:5470 msgid "index and destination registers should be distinct" msgstr "" -#: config/tc-i386.c:5900 +#: config/tc-i386.c:6150 msgid "operand size mismatch" msgstr "" -#: config/tc-i386.c:5903 +#: config/tc-i386.c:6153 msgid "operand type mismatch" msgstr "" -#: config/tc-i386.c:5906 +#: config/tc-i386.c:6156 msgid "register type mismatch" msgstr "" -#: config/tc-i386.c:5909 +#: config/tc-i386.c:6159 msgid "number of operands mismatch" msgstr "" -#: config/tc-i386.c:5912 +#: config/tc-i386.c:6162 msgid "invalid instruction suffix" msgstr "" -#: config/tc-i386.c:5915 +#: config/tc-i386.c:6165 msgid "constant doesn't fit in 4 bits" msgstr "" -#: config/tc-i386.c:5918 +#: config/tc-i386.c:6168 msgid "unsupported with Intel mnemonic" msgstr "" -#: config/tc-i386.c:5921 +#: config/tc-i386.c:6171 msgid "unsupported syntax" msgstr "" -#: config/tc-i386.c:5924 +#: config/tc-i386.c:6174 #, c-format msgid "unsupported instruction `%s'" msgstr "" -#: config/tc-i386.c:5928 +#: config/tc-i386.c:6178 msgid "invalid VSIB address" msgstr "" -#: config/tc-i386.c:5931 +#: config/tc-i386.c:6181 msgid "mask, index, and destination registers must be distinct" msgstr "" -#: config/tc-i386.c:5934 +#: config/tc-i386.c:6184 msgid "unsupported vector index register" msgstr "" -#: config/tc-i386.c:5937 +#: config/tc-i386.c:6187 msgid "unsupported broadcast" msgstr "" -#: config/tc-i386.c:5940 +#: config/tc-i386.c:6190 msgid "broadcast is needed for operand of such type" msgstr "" -#: config/tc-i386.c:5943 +#: config/tc-i386.c:6193 msgid "unsupported masking" msgstr "" -#: config/tc-i386.c:5946 +#: config/tc-i386.c:6196 msgid "mask not on destination operand" msgstr "" -#: config/tc-i386.c:5949 +#: config/tc-i386.c:6199 msgid "default mask isn't allowed" msgstr "" -#: config/tc-i386.c:5952 +#: config/tc-i386.c:6202 msgid "unsupported static rounding/sae" msgstr "" -#: config/tc-i386.c:5956 +#: config/tc-i386.c:6206 msgid "RC/SAE operand must precede immediate operands" msgstr "" -#: config/tc-i386.c:5958 +#: config/tc-i386.c:6208 msgid "RC/SAE operand must follow immediate operands" msgstr "" -#: config/tc-i386.c:5961 config/tc-metag.c:4789 config/tc-metag.c:5530 +#: config/tc-i386.c:6211 config/tc-metag.c:4789 config/tc-metag.c:5530 #: config/tc-metag.c:5552 msgid "invalid register operand" msgstr "" -#: config/tc-i386.c:5964 +#: config/tc-i386.c:6214 #, c-format msgid "%s for `%s'" msgstr "" -#: config/tc-i386.c:5975 +#: config/tc-i386.c:6223 #, c-format msgid "indirect %s without `*'" msgstr "" #. Warn them that a data or address size prefix doesn't #. affect assembly of the next line of code. -#: config/tc-i386.c:5983 +#: config/tc-i386.c:6230 #, c-format msgid "stand-alone `%s' prefix" msgstr "" -#: config/tc-i386.c:6017 config/tc-i386.c:6033 +#: config/tc-i386.c:6272 #, c-format -msgid "`%s' operand %d must use `%ses' segment" +msgid "`%s' operand %u must use `%ses' segment" msgstr "" #. We have to know the operand size for crc32. -#: config/tc-i386.c:6083 +#: config/tc-i386.c:6330 #, c-format msgid "ambiguous memory operand size for `%s`" msgstr "" -#: config/tc-i386.c:6195 +#: config/tc-i386.c:6419 +msgid "generating 16-bit `iret' for .code16gcc directive" +msgstr "" + +#: config/tc-i386.c:6423 +#, c-format +msgid "generating 32-bit `%s', unlike earlier gas versions" +msgstr "" + +#: config/tc-i386.c:6461 msgid "" "no instruction mnemonic suffix given and no register operands; can't size " "instruction" msgstr "" -#: config/tc-i386.c:6333 +#: config/tc-i386.c:6599 #, c-format msgid "invalid register operand size for `%s'" msgstr "" -#: config/tc-i386.c:6377 config/tc-i386.c:6450 config/tc-i386.c:6572 +#: config/tc-i386.c:6644 config/tc-i386.c:6716 config/tc-i386.c:6838 #, c-format msgid "using `%s%s' instead of `%s%s' due to `%c' suffix" msgstr "" -#: config/tc-i386.c:6398 config/tc-i386.c:6426 config/tc-i386.c:6497 -#: config/tc-i386.c:6547 +#: config/tc-i386.c:6664 config/tc-i386.c:6692 config/tc-i386.c:6763 +#: config/tc-i386.c:6813 #, c-format msgid "`%s%s' not allowed with `%s%c'" msgstr "" -#: config/tc-i386.c:6444 config/tc-i386.c:6471 config/tc-i386.c:6522 -#: config/tc-i386.c:6566 +#: config/tc-i386.c:6710 config/tc-i386.c:6737 config/tc-i386.c:6788 +#: config/tc-i386.c:6832 #, c-format msgid "incorrect register `%s%s' used with `%c' suffix" msgstr "" -#: config/tc-i386.c:6635 +#: config/tc-i386.c:6901 msgid "no instruction mnemonic suffix given; can't determine immediate size" msgstr "" -#: config/tc-i386.c:6781 +#: config/tc-i386.c:7053 #, c-format msgid "" "source register `%s%s' implicitly denotes `%s%.3s%u' to `%s%.3s%u' source " "group in `%s'" msgstr "" -#: config/tc-i386.c:6817 +#: config/tc-i386.c:7097 #, c-format -msgid "you can't `pop %scs'" +msgid "you can't `%s %s%s'" msgstr "" #. Reversed arguments on faddp, fsubp, etc. -#: config/tc-i386.c:6846 +#: config/tc-i386.c:7135 #, c-format msgid "translating to `%s %s%s,%s%s'" msgstr "" #. Extraneous `l' suffix on fp insn. -#: config/tc-i386.c:6853 +#: config/tc-i386.c:7142 #, c-format msgid "translating to `%s %s%s'" msgstr "" -#: config/tc-i386.c:6881 +#: config/tc-i386.c:7151 #, c-format msgid "segment override on `%s' is ineffectual" msgstr "" -#: config/tc-i386.c:7650 config/tc-i386.c:7785 config/tc-i386.c:7849 -msgid "skipping prefixes on this instruction" +#: config/tc-i386.c:7918 config/tc-i386.c:8061 config/tc-i386.c:8122 +#, c-format +msgid "skipping prefixes on `%s'" msgstr "" -#: config/tc-i386.c:7869 +#: config/tc-i386.c:8142 msgid "16-bit jump out of range" msgstr "" -#: config/tc-i386.c:7878 +#: config/tc-i386.c:8151 #, c-format msgid "can't handle non absolute segment in `%s'" msgstr "" -#: config/tc-i386.c:8173 +#: config/tc-i386.c:8363 config/tc-i386.c:8395 config/tc-i386.c:8481 +#, c-format +msgid "`%s` skips -malign-branch-boundary on `%s`" +msgstr "" + +#: config/tc-i386.c:8713 msgid "pseudo prefix without instruction" msgstr "" -#: config/tc-i386.c:8766 config/tc-i386.c:8868 +#: config/tc-i386.c:8829 +#, c-format +msgid "instruction length of %u bytes exceeds the limit of 15" +msgstr "" + +#: config/tc-i386.c:9410 config/tc-i386.c:9512 #, c-format msgid "@%s reloc is not supported with %d-bit output format" msgstr "" -#: config/tc-i386.c:8919 +#: config/tc-i386.c:9563 #, c-format msgid "missing or invalid expression `%s'" msgstr "" -#: config/tc-i386.c:8928 +#: config/tc-i386.c:9572 #, c-format msgid "invalid PLT expression `%s'" msgstr "" -#: config/tc-i386.c:9014 +#: config/tc-i386.c:9658 #, c-format msgid "Unsupported broadcast: `%s'" msgstr "" -#: config/tc-i386.c:9030 +#: config/tc-i386.c:9674 #, c-format msgid "`%s%s' can't be used for write mask" msgstr "" -#: config/tc-i386.c:9053 +#: config/tc-i386.c:9697 #, c-format msgid "invalid write mask `%s'" msgstr "" -#: config/tc-i386.c:9075 config/tc-i386.c:9739 +#: config/tc-i386.c:9719 config/tc-i386.c:10409 #, c-format msgid "duplicated `%s'" msgstr "" -#: config/tc-i386.c:9085 +#: config/tc-i386.c:9729 #, c-format msgid "invalid zeroing-masking `%s'" msgstr "" -#: config/tc-i386.c:9098 +#: config/tc-i386.c:9742 #, c-format msgid "missing `}' in `%s'" msgstr "" #. We don't know this one. -#: config/tc-i386.c:9112 +#: config/tc-i386.c:9756 #, c-format msgid "unknown vector operation: `%s'" msgstr "" -#: config/tc-i386.c:9118 +#: config/tc-i386.c:9762 msgid "zeroing-masking only allowed with write mask" msgstr "" -#: config/tc-i386.c:9138 +#: config/tc-i386.c:9782 #, c-format msgid "at most %d immediate operands are allowed" msgstr "" -#: config/tc-i386.c:9170 config/tc-i386.c:9417 +#: config/tc-i386.c:9814 config/tc-i386.c:10082 #, c-format msgid "junk `%s' after expression" msgstr "" -#: config/tc-i386.c:9191 +#: config/tc-i386.c:9835 #, c-format msgid "missing or invalid immediate expression `%s'" msgstr "" -#: config/tc-i386.c:9214 config/tc-i386.c:9507 +#: config/tc-i386.c:9858 config/tc-i386.c:10172 #, c-format msgid "unimplemented segment %s in operand" msgstr "" -#: config/tc-i386.c:9221 +#: config/tc-i386.c:9865 #, c-format msgid "illegal immediate register operand %s" msgstr "" -#: config/tc-i386.c:9269 +#: config/tc-i386.c:9913 #, c-format msgid "expecting scale factor of 1, 2, 4, or 8: got `%s'" msgstr "" -#: config/tc-i386.c:9278 +#: config/tc-i386.c:9922 #, c-format msgid "scale factor of %d without an index register" msgstr "" -#: config/tc-i386.c:9300 +#: config/tc-i386.c:9944 #, c-format msgid "at most %d displacement operands are allowed" msgstr "" -#: config/tc-i386.c:9473 +#: config/tc-i386.c:10138 #, c-format msgid "missing or invalid displacement expression `%s'" msgstr "" -#: config/tc-i386.c:9490 +#: config/tc-i386.c:10155 #, c-format msgid "0x%lx out range of signed 32bit displacement" msgstr "" -#: config/tc-i386.c:9640 +#: config/tc-i386.c:10310 #, c-format msgid "`%s' is not valid here (expected `%c%s%s%c')" msgstr "" -#: config/tc-i386.c:9652 +#: config/tc-i386.c:10322 #, c-format msgid "`%s' is not a valid %s expression" msgstr "" -#: config/tc-i386.c:9684 +#: config/tc-i386.c:10354 #, c-format msgid "`%s' cannot be used here" msgstr "" -#: config/tc-i386.c:9691 +#: config/tc-i386.c:10361 msgid "register scaling is being ignored here" msgstr "" -#: config/tc-i386.c:9752 +#: config/tc-i386.c:10422 #, c-format msgid "Missing '}': '%s'" msgstr "" -#: config/tc-i386.c:9758 +#: config/tc-i386.c:10428 #, c-format msgid "Junk after '}': '%s'" msgstr "" -#: config/tc-i386.c:9886 +#: config/tc-i386.c:10554 #, c-format msgid "bad memory operand `%s'" msgstr "" -#: config/tc-i386.c:9910 +#: config/tc-i386.c:10578 #, c-format msgid "junk `%s' after register" msgstr "" -#: config/tc-i386.c:9923 config/tc-i386.c:10060 config/tc-i386.c:10104 +#: config/tc-i386.c:10591 config/tc-i386.c:10728 config/tc-i386.c:10772 #, c-format msgid "bad register name `%s'" msgstr "" -#: config/tc-i386.c:9931 +#: config/tc-i386.c:10599 msgid "immediate operand illegal with absolute jump" msgstr "" -#: config/tc-i386.c:10049 +#: config/tc-i386.c:10717 #, c-format msgid "expecting `,' or `)' after index register in `%s'" msgstr "" -#: config/tc-i386.c:10077 +#: config/tc-i386.c:10745 #, c-format msgid "expecting `)' after scale factor in `%s'" msgstr "" -#: config/tc-i386.c:10085 +#: config/tc-i386.c:10753 #, c-format msgid "expecting index register or scale factor after `,'; got '%c'" msgstr "" -#: config/tc-i386.c:10093 +#: config/tc-i386.c:10761 #, c-format msgid "expecting `,' or `)' after base register in `%s'" msgstr "" #. It's not a memory operand; argh! -#: config/tc-i386.c:10141 +#: config/tc-i386.c:10810 #, c-format msgid "invalid char %s beginning operand %d `%s'" msgstr "" -#: config/tc-i386.c:10367 +#: config/tc-i386.c:11424 +#, c-format +msgid "%s:%u: add %d%s at 0x%llx to align %s within %d-byte boundary\n" +msgstr "" + +#: config/tc-i386.c:11427 +#, c-format +msgid "" +"%s:%u: add additional %d%s at 0x%llx to align %s within %d-byte boundary\n" +msgstr "" + +#: config/tc-i386.c:11433 +#, c-format +msgid "" +"%s:%u: add %d%s-byte nop at 0x%llx to align %s within %d-byte boundary\n" +msgstr "" + +#: config/tc-i386.c:11500 msgid "long jump required" msgstr "" -#: config/tc-i386.c:10422 +#: config/tc-i386.c:11555 msgid "jump target out of range" msgstr "" -#: config/tc-i386.c:10988 +#: config/tc-i386.c:12133 #, c-format msgid "invalid -mx86-used-note= option: `%s'" msgstr "" -#: config/tc-i386.c:11011 +#: config/tc-i386.c:12156 msgid "no compiled in support for x86_64" msgstr "" -#: config/tc-i386.c:11031 +#: config/tc-i386.c:12176 msgid "no compiled in support for 32bit x86_64" msgstr "" -#: config/tc-i386.c:11035 +#: config/tc-i386.c:12180 msgid "32bit x86_64 is only supported for ELF" msgstr "" -#: config/tc-i386.c:11069 config/tc-i386.c:11157 +#: config/tc-i386.c:12214 config/tc-i386.c:12302 #, c-format msgid "invalid -march= option: `%s'" msgstr "" -#: config/tc-i386.c:11167 config/tc-i386.c:11179 +#: config/tc-i386.c:12312 config/tc-i386.c:12324 #, c-format msgid "invalid -mtune= option: `%s'" msgstr "" -#: config/tc-i386.c:11188 +#: config/tc-i386.c:12333 #, c-format msgid "invalid -mmnemonic= option: `%s'" msgstr "" -#: config/tc-i386.c:11197 +#: config/tc-i386.c:12342 #, c-format msgid "invalid -msyntax= option: `%s'" msgstr "" -#: config/tc-i386.c:11220 +#: config/tc-i386.c:12365 #, c-format msgid "invalid -msse-check= option: `%s'" msgstr "" -#: config/tc-i386.c:11231 +#: config/tc-i386.c:12376 #, c-format msgid "invalid -moperand-check= option: `%s'" msgstr "" -#: config/tc-i386.c:11240 +#: config/tc-i386.c:12385 #, c-format msgid "invalid -mavxscalar= option: `%s'" msgstr "" -#: config/tc-i386.c:11249 +#: config/tc-i386.c:12394 #, c-format msgid "invalid -mvexwig= option: `%s'" msgstr "" -#: config/tc-i386.c:11264 +#: config/tc-i386.c:12409 #, c-format msgid "invalid -mevexlig= option: `%s'" msgstr "" -#: config/tc-i386.c:11277 +#: config/tc-i386.c:12422 #, c-format msgid "invalid -mevexrcig= option: `%s'" msgstr "" -#: config/tc-i386.c:11286 +#: config/tc-i386.c:12431 #, c-format msgid "invalid -mevexwig= option: `%s'" msgstr "" -#: config/tc-i386.c:11301 +#: config/tc-i386.c:12446 #, c-format msgid "invalid -momit-lock-prefix= option: `%s'" msgstr "" -#: config/tc-i386.c:11310 +#: config/tc-i386.c:12455 #, c-format msgid "invalid -mfence-as-lock-add= option: `%s'" msgstr "" -#: config/tc-i386.c:11319 +#: config/tc-i386.c:12464 #, c-format msgid "invalid -mrelax-relocations= option: `%s'" msgstr "" -#: config/tc-i386.c:11463 +#: config/tc-i386.c:12493 +#, c-format +msgid "invalid -malign-branch-boundary= value: %s" +msgstr "" + +#: config/tc-i386.c:12507 +#, c-format +msgid "invalid -malign-branch-prefix-size= value: %s" +msgstr "" + +#: config/tc-i386.c:12534 +#, c-format +msgid "invalid -malign-branch= option: `%s'" +msgstr "" + +#: config/tc-i386.c:12690 #, c-format msgid "" -" -Q ignored\n" +" -Qy, -Qn ignored\n" " -V print assembler version number\n" " -k ignored\n" msgstr "" -#: config/tc-i386.c:11468 +#: config/tc-i386.c:12695 #, c-format msgid "" " -n Do not optimize code alignment\n" " -q quieten some warnings\n" msgstr "" -#: config/tc-i386.c:11472 +#: config/tc-i386.c:12699 #, c-format msgid " -s ignored\n" msgstr "" -#: config/tc-i386.c:11477 +#: config/tc-i386.c:12704 #, c-format msgid " --32/--64/--x32 generate 32bit/64bit/x32 code\n" msgstr "" -#: config/tc-i386.c:11481 +#: config/tc-i386.c:12708 #, c-format msgid " --divide do not treat `/' as a comment character\n" msgstr "" -#: config/tc-i386.c:11484 +#: config/tc-i386.c:12711 #, c-format msgid " --divide ignored\n" msgstr "" -#: config/tc-i386.c:11487 +#: config/tc-i386.c:12714 #, c-format msgid "" " -march=CPU[,+EXTENSION...]\n" @@ -8287,36 +8642,36 @@ msgid "" "of:\n" msgstr "" -#: config/tc-i386.c:11491 +#: config/tc-i386.c:12718 #, c-format msgid " EXTENSION is combination of:\n" msgstr "" -#: config/tc-i386.c:11494 +#: config/tc-i386.c:12721 #, c-format msgid " -mtune=CPU optimize for CPU, CPU is one of:\n" msgstr "" -#: config/tc-i386.c:11497 +#: config/tc-i386.c:12724 #, c-format msgid " -msse2avx encode SSE instructions with VEX prefix\n" msgstr "" -#: config/tc-i386.c:11499 +#: config/tc-i386.c:12726 #, c-format msgid "" " -msse-check=[none|error|warning] (default: warning)\n" " check SSE instructions\n" msgstr "" -#: config/tc-i386.c:11502 +#: config/tc-i386.c:12729 #, c-format msgid "" " -moperand-check=[none|error|warning] (default: warning)\n" " check operand combinations for validity\n" msgstr "" -#: config/tc-i386.c:11505 +#: config/tc-i386.c:12732 #, c-format msgid "" " -mavxscalar=[128|256] (default: 128)\n" @@ -8325,7 +8680,7 @@ msgid "" " length\n" msgstr "" -#: config/tc-i386.c:11509 +#: config/tc-i386.c:12736 #, c-format msgid "" " -mvexwig=[0|1] (default: 0)\n" @@ -8333,7 +8688,7 @@ msgid "" " for VEX.W bit ignored instructions\n" msgstr "" -#: config/tc-i386.c:11513 +#: config/tc-i386.c:12740 #, c-format msgid "" " -mevexlig=[128|256|512] (default: 128)\n" @@ -8342,7 +8697,7 @@ msgid "" " length\n" msgstr "" -#: config/tc-i386.c:11517 +#: config/tc-i386.c:12744 #, c-format msgid "" " -mevexwig=[0|1] (default: 0)\n" @@ -8351,7 +8706,7 @@ msgid "" " for EVEX.W bit ignored instructions\n" msgstr "" -#: config/tc-i386.c:11521 +#: config/tc-i386.c:12748 #, c-format msgid "" " -mevexrcig=[rne|rd|ru|rz] (default: rne)\n" @@ -8360,77 +8715,77 @@ msgid "" " for SAE-only ignored instructions\n" msgstr "" -#: config/tc-i386.c:11525 +#: config/tc-i386.c:12752 #, c-format msgid " -mmnemonic=[att|intel] " msgstr "" -#: config/tc-i386.c:11528 +#: config/tc-i386.c:12755 #, c-format msgid "(default: att)\n" msgstr "" -#: config/tc-i386.c:11530 +#: config/tc-i386.c:12757 #, c-format msgid "(default: intel)\n" msgstr "" -#: config/tc-i386.c:11531 +#: config/tc-i386.c:12758 #, c-format msgid " use AT&T/Intel mnemonic\n" msgstr "" -#: config/tc-i386.c:11533 +#: config/tc-i386.c:12760 #, c-format msgid "" " -msyntax=[att|intel] (default: att)\n" " use AT&T/Intel syntax\n" msgstr "" -#: config/tc-i386.c:11536 +#: config/tc-i386.c:12763 #, c-format msgid " -mindex-reg support pseudo index registers\n" msgstr "" -#: config/tc-i386.c:11538 +#: config/tc-i386.c:12765 #, c-format msgid " -mnaked-reg don't require `%%' prefix for registers\n" msgstr "" -#: config/tc-i386.c:11540 +#: config/tc-i386.c:12767 #, c-format msgid " -madd-bnd-prefix add BND prefix for all valid branches\n" msgstr "" -#: config/tc-i386.c:11543 +#: config/tc-i386.c:12770 #, c-format msgid " -mshared disable branch optimization for shared code\n" msgstr "" -#: config/tc-i386.c:11545 +#: config/tc-i386.c:12772 #, c-format msgid " -mx86-used-note=[no|yes] " msgstr "" -#: config/tc-i386.c:11551 +#: config/tc-i386.c:12778 #, c-format msgid "" " generate x86 used ISA and feature properties\n" msgstr "" -#: config/tc-i386.c:11555 +#: config/tc-i386.c:12782 #, c-format msgid " -mbig-obj generate big object files\n" msgstr "" -#: config/tc-i386.c:11558 +#: config/tc-i386.c:12785 #, c-format msgid "" " -momit-lock-prefix=[no|yes] (default: no)\n" " strip all lock prefixes\n" msgstr "" -#: config/tc-i386.c:11561 +#: config/tc-i386.c:12788 #, c-format msgid "" " -mfence-as-lock-add=[no|yes] (default: no)\n" @@ -8438,76 +8793,107 @@ msgid "" " lock addl $0x0, (%%{re}sp)\n" msgstr "" -#: config/tc-i386.c:11565 +#: config/tc-i386.c:12792 #, c-format msgid " -mrelax-relocations=[no|yes] " msgstr "" -#: config/tc-i386.c:11571 +#: config/tc-i386.c:12798 #, c-format msgid " generate relax relocations\n" msgstr "" -#: config/tc-i386.c:11573 +#: config/tc-i386.c:12800 +#, c-format +msgid "" +" -malign-branch-boundary=NUM (default: 0)\n" +" align branches within NUM byte boundary\n" +msgstr "" + +#: config/tc-i386.c:12803 +#, c-format +msgid "" +" -malign-branch=TYPE[+TYPE...] (default: jcc+fused+jmp)\n" +" TYPE is combination of jcc, fused, jmp, call, " +"ret,\n" +" indirect\n" +" specify types of branches to align\n" +msgstr "" + +#: config/tc-i386.c:12808 +#, c-format +msgid "" +" -malign-branch-prefix-size=NUM (default: 5)\n" +" align branches with NUM prefixes per instruction\n" +msgstr "" + +#: config/tc-i386.c:12811 +#, c-format +msgid "" +" -mbranches-within-32B-boundaries\n" +" align branches within 32 byte boundary\n" +msgstr "" + +#: config/tc-i386.c:12814 #, c-format msgid " -mamd64 accept only AMD64 ISA [default]\n" msgstr "" -#: config/tc-i386.c:11575 +#: config/tc-i386.c:12816 #, c-format msgid " -mintel64 accept only Intel64 ISA\n" msgstr "" -#: config/tc-i386.c:11616 +#: config/tc-i386.c:12857 #, c-format msgid "Intel MCU doesn't support `%s' architecture" msgstr "" -#: config/tc-i386.c:11673 +#: config/tc-i386.c:12923 msgid "Intel L1OM is 64bit only" msgstr "" -#: config/tc-i386.c:11679 +#: config/tc-i386.c:12929 msgid "Intel K1OM is 64bit only" msgstr "" -#: config/tc-i386.c:11685 +#: config/tc-i386.c:12935 msgid "Intel MCU is 32bit only" msgstr "" -#: config/tc-i386.c:11842 +#: config/tc-i386.c:13107 msgid "symbol size computation overflow" msgstr "" -#: config/tc-i386.c:11910 config/tc-sparc.c:3861 +#: config/tc-i386.c:13175 config/tc-sparc.c:3861 #, c-format msgid "can not do %d byte pc-relative relocation" msgstr "" -#: config/tc-i386.c:11928 +#: config/tc-i386.c:13193 #, c-format msgid "can not do %d byte relocation" msgstr "" -#: config/tc-i386.c:11996 +#: config/tc-i386.c:13261 #, c-format msgid "cannot represent relocation type %s in x32 mode" msgstr "" -#: config/tc-i386.c:12033 config/tc-s390.c:2611 +#: config/tc-i386.c:13298 config/tc-s390.c:2613 #, c-format msgid "cannot represent relocation type %s" msgstr "" -#: config/tc-i386.c:12150 +#: config/tc-i386.c:13415 msgid "bad .section directive: want a,l,w,x,M,S,G,T in string" msgstr "" -#: config/tc-i386.c:12153 +#: config/tc-i386.c:13418 msgid "bad .section directive: want a,w,x,M,S,G,T in string" msgstr "" -#: config/tc-i386.c:12172 +#: config/tc-i386.c:13437 msgid ".largecomm supported only in 64bit mode, producing .comm" msgstr "" @@ -8527,7 +8913,7 @@ msgstr "" msgid "Unwind directive not followed by an instruction." msgstr "" -#: config/tc-ia64.c:1025 config/tc-ia64.c:7610 +#: config/tc-ia64.c:1025 config/tc-ia64.c:7607 msgid "qualifying predicate not followed by instruction" msgstr "" @@ -8711,408 +9097,408 @@ msgstr "" msgid "Illegal section name `%s' (causes unwind section name clash)" msgstr "" -#: config/tc-ia64.c:3742 +#: config/tc-ia64.c:3741 msgid "First operand to .altrp not a valid branch register" msgstr "" -#: config/tc-ia64.c:3771 +#: config/tc-ia64.c:3770 #, c-format msgid "First operand to .%s not a register" msgstr "" -#: config/tc-ia64.c:3776 +#: config/tc-ia64.c:3775 #, c-format msgid "Second operand to .%s not a constant" msgstr "" -#: config/tc-ia64.c:3843 +#: config/tc-ia64.c:3842 #, c-format msgid "First operand to .%s not a valid register" msgstr "" -#: config/tc-ia64.c:3866 +#: config/tc-ia64.c:3865 msgid "First operand to .save.g must be a positive 4-bit constant" msgstr "" -#: config/tc-ia64.c:3879 +#: config/tc-ia64.c:3878 msgid "Second operand to .save.g must be a general register" msgstr "" -#: config/tc-ia64.c:3884 +#: config/tc-ia64.c:3883 #, c-format msgid "Second operand to .save.g must be the first of %d general registers" msgstr "" -#: config/tc-ia64.c:3907 +#: config/tc-ia64.c:3906 msgid "Operand to .save.f must be a positive 20-bit constant" msgstr "" -#: config/tc-ia64.c:3930 +#: config/tc-ia64.c:3929 msgid "First operand to .save.b must be a positive 5-bit constant" msgstr "" -#: config/tc-ia64.c:3943 +#: config/tc-ia64.c:3942 msgid "Second operand to .save.b must be a general register" msgstr "" -#: config/tc-ia64.c:3948 +#: config/tc-ia64.c:3947 #, c-format msgid "Second operand to .save.b must be the first of %d general registers" msgstr "" -#: config/tc-ia64.c:3974 +#: config/tc-ia64.c:3973 msgid "First operand to .save.gf must be a non-negative 4-bit constant" msgstr "" -#: config/tc-ia64.c:3982 +#: config/tc-ia64.c:3981 msgid "Second operand to .save.gf must be a non-negative 20-bit constant" msgstr "" -#: config/tc-ia64.c:3990 +#: config/tc-ia64.c:3989 msgid "Operands to .save.gf may not be both zero" msgstr "" -#: config/tc-ia64.c:4007 +#: config/tc-ia64.c:4006 msgid "Operand to .spill must be a constant" msgstr "" -#: config/tc-ia64.c:4076 +#: config/tc-ia64.c:4075 #, c-format msgid "Operand %d to .%s must be a constant" msgstr "" -#: config/tc-ia64.c:4097 +#: config/tc-ia64.c:4096 #, c-format msgid "Missing .label_state %ld" msgstr "" -#: config/tc-ia64.c:4151 +#: config/tc-ia64.c:4150 msgid "Operand to .label_state must be a constant" msgstr "" -#: config/tc-ia64.c:4170 +#: config/tc-ia64.c:4169 msgid "Operand to .copy_state must be a constant" msgstr "" -#: config/tc-ia64.c:4193 +#: config/tc-ia64.c:4192 msgid "First operand to .unwabi must be a constant" msgstr "" -#: config/tc-ia64.c:4199 +#: config/tc-ia64.c:4198 msgid "Second operand to .unwabi must be a constant" msgstr "" -#: config/tc-ia64.c:4234 +#: config/tc-ia64.c:4233 msgid "Missing .endp after previous .proc" msgstr "" -#: config/tc-ia64.c:4252 +#: config/tc-ia64.c:4251 msgid "Empty argument of .proc" msgstr "" -#: config/tc-ia64.c:4257 +#: config/tc-ia64.c:4256 #, c-format msgid "`%s' was already defined" msgstr "" -#: config/tc-ia64.c:4300 +#: config/tc-ia64.c:4299 msgid "Initial .body should precede any instructions" msgstr "" -#: config/tc-ia64.c:4319 +#: config/tc-ia64.c:4318 msgid ".prologue within prologue" msgstr "" -#: config/tc-ia64.c:4324 +#: config/tc-ia64.c:4323 msgid "Initial .prologue should precede any instructions" msgstr "" -#: config/tc-ia64.c:4334 +#: config/tc-ia64.c:4333 msgid "First operand to .prologue must be a positive 4-bit constant" msgstr "" -#: config/tc-ia64.c:4336 +#: config/tc-ia64.c:4335 msgid "Pointless use of zero first operand to .prologue" msgstr "" -#: config/tc-ia64.c:4352 +#: config/tc-ia64.c:4351 msgid "Using a constant as second operand to .prologue is deprecated" msgstr "" -#: config/tc-ia64.c:4358 +#: config/tc-ia64.c:4357 msgid "Second operand to .prologue must be a general register" msgstr "" -#: config/tc-ia64.c:4363 +#: config/tc-ia64.c:4362 #, c-format msgid "Second operand to .prologue must be the first of %d general registers" msgstr "" -#: config/tc-ia64.c:4475 +#: config/tc-ia64.c:4474 #, c-format msgid "`%s' was not defined within procedure" msgstr "" -#: config/tc-ia64.c:4511 +#: config/tc-ia64.c:4510 msgid "Empty argument of .endp" msgstr "" -#: config/tc-ia64.c:4525 +#: config/tc-ia64.c:4524 #, c-format msgid "`%s' was not specified with previous .proc" msgstr "" -#: config/tc-ia64.c:4540 +#: config/tc-ia64.c:4539 #, c-format msgid "`%s' should be an operand to this .endp" msgstr "" -#: config/tc-ia64.c:4581 config/tc-ia64.c:4902 config/tc-ia64.c:5211 +#: config/tc-ia64.c:4580 config/tc-ia64.c:4901 config/tc-ia64.c:5210 msgid "Comma expected" msgstr "" -#: config/tc-ia64.c:4621 +#: config/tc-ia64.c:4620 msgid "Expected '['" msgstr "" -#: config/tc-ia64.c:4630 config/tc-ia64.c:7744 +#: config/tc-ia64.c:4629 config/tc-ia64.c:7741 msgid "Expected ']'" msgstr "" -#: config/tc-ia64.c:4635 +#: config/tc-ia64.c:4634 msgid "Number of elements must be positive" msgstr "" -#: config/tc-ia64.c:4646 +#: config/tc-ia64.c:4645 #, c-format msgid "Used more than the declared %d rotating registers" msgstr "" -#: config/tc-ia64.c:4654 +#: config/tc-ia64.c:4653 msgid "Used more than the available 96 rotating registers" msgstr "" -#: config/tc-ia64.c:4661 +#: config/tc-ia64.c:4660 msgid "Used more than the available 48 rotating registers" msgstr "" -#: config/tc-ia64.c:4689 +#: config/tc-ia64.c:4688 #, c-format msgid "Attempt to redefine register set `%s'" msgstr "" -#: config/tc-ia64.c:4754 +#: config/tc-ia64.c:4753 #, c-format msgid "Unknown psr option `%s'" msgstr "" -#: config/tc-ia64.c:4788 +#: config/tc-ia64.c:4787 msgid "Missing section name" msgstr "" -#: config/tc-ia64.c:4797 +#: config/tc-ia64.c:4796 msgid "Comma expected after section name" msgstr "" -#: config/tc-ia64.c:4808 +#: config/tc-ia64.c:4807 msgid "Creating sections with .xdataN/.xrealN/.xstringZ is deprecated." msgstr "" -#: config/tc-ia64.c:4897 +#: config/tc-ia64.c:4896 msgid "Register name expected" msgstr "" -#: config/tc-ia64.c:4910 +#: config/tc-ia64.c:4909 msgid "Register value annotation ignored" msgstr "" -#: config/tc-ia64.c:4949 +#: config/tc-ia64.c:4948 msgid "Directive invalid within a bundle" msgstr "" -#: config/tc-ia64.c:5043 +#: config/tc-ia64.c:5042 msgid "Missing predicate relation type" msgstr "" -#: config/tc-ia64.c:5049 +#: config/tc-ia64.c:5048 msgid "Unrecognized predicate relation type" msgstr "" -#: config/tc-ia64.c:5095 +#: config/tc-ia64.c:5094 msgid "Bad register range" msgstr "" -#: config/tc-ia64.c:5104 config/tc-ia64.c:7690 +#: config/tc-ia64.c:5103 config/tc-ia64.c:7687 msgid "Predicate register expected" msgstr "" -#: config/tc-ia64.c:5109 +#: config/tc-ia64.c:5108 msgid "Duplicate predicate register ignored" msgstr "" -#: config/tc-ia64.c:5125 +#: config/tc-ia64.c:5124 msgid "Predicate source and target required" msgstr "" -#: config/tc-ia64.c:5127 config/tc-ia64.c:5139 +#: config/tc-ia64.c:5126 config/tc-ia64.c:5138 msgid "Use of p0 is not valid in this context" msgstr "" -#: config/tc-ia64.c:5134 +#: config/tc-ia64.c:5133 msgid "At least two PR arguments expected" msgstr "" -#: config/tc-ia64.c:5148 +#: config/tc-ia64.c:5147 msgid "At least one PR argument expected" msgstr "" -#: config/tc-ia64.c:5182 +#: config/tc-ia64.c:5181 #, c-format msgid "Inserting \"%s\" into entry hint table failed: %s" msgstr "" #. FIXME -- need 62-bit relocation type -#: config/tc-ia64.c:5662 +#: config/tc-ia64.c:5661 msgid "62-bit relocation not yet implemented" msgstr "" #. XXX technically, this is wrong: we should not be issuing warning #. messages until we're sure this instruction pattern is going to #. be used! -#: config/tc-ia64.c:5748 +#: config/tc-ia64.c:5747 msgid "lower 16 bits of mask ignored" msgstr "" -#: config/tc-ia64.c:5979 +#: config/tc-ia64.c:5976 msgid "stride must be a multiple of 64; lower 6 bits ignored" msgstr "" -#: config/tc-ia64.c:6097 +#: config/tc-ia64.c:6094 msgid "Expected separator `='" msgstr "" -#: config/tc-ia64.c:6131 +#: config/tc-ia64.c:6128 msgid "Duplicate equal sign (=) in instruction" msgstr "" -#: config/tc-ia64.c:6138 +#: config/tc-ia64.c:6135 #, c-format msgid "Illegal operand separator `%c'" msgstr "" -#: config/tc-ia64.c:6253 +#: config/tc-ia64.c:6250 #, c-format msgid "Operand %u of `%s' should be %s" msgstr "" -#: config/tc-ia64.c:6257 +#: config/tc-ia64.c:6254 msgid "Wrong number of output operands" msgstr "" -#: config/tc-ia64.c:6259 +#: config/tc-ia64.c:6256 msgid "Wrong number of input operands" msgstr "" -#: config/tc-ia64.c:6261 +#: config/tc-ia64.c:6258 msgid "Operand mismatch" msgstr "" -#: config/tc-ia64.c:6343 +#: config/tc-ia64.c:6340 #, c-format msgid "Invalid use of `%c%d' as output operand" msgstr "" -#: config/tc-ia64.c:6346 +#: config/tc-ia64.c:6343 #, c-format msgid "Invalid use of `r%d' as base update address operand" msgstr "" -#: config/tc-ia64.c:6370 +#: config/tc-ia64.c:6367 #, c-format msgid "Invalid duplicate use of `%c%d'" msgstr "" -#: config/tc-ia64.c:6377 +#: config/tc-ia64.c:6374 #, c-format msgid "Invalid simultaneous use of `f%d' and `f%d'" msgstr "" -#: config/tc-ia64.c:6383 +#: config/tc-ia64.c:6380 #, c-format msgid "Dangerous simultaneous use of `f%d' and `f%d'" msgstr "" -#: config/tc-ia64.c:6427 +#: config/tc-ia64.c:6424 msgid "Value truncated to 62 bits" msgstr "" -#: config/tc-ia64.c:6495 +#: config/tc-ia64.c:6492 #, c-format msgid "Bad operand value: %s" msgstr "" #. Give an error if a frag containing code is not aligned to a 16 byte #. boundary. -#: config/tc-ia64.c:6570 config/tc-ia64.h:177 +#: config/tc-ia64.c:6567 config/tc-ia64.h:177 msgid "instruction address is not a multiple of 16" msgstr "" -#: config/tc-ia64.c:6638 +#: config/tc-ia64.c:6635 #, c-format msgid "`%s' must be last in bundle" msgstr "" -#: config/tc-ia64.c:6670 +#: config/tc-ia64.c:6667 #, c-format msgid "Internal error: don't know how to force %s to end of instruction group" msgstr "" -#: config/tc-ia64.c:6683 +#: config/tc-ia64.c:6680 #, c-format msgid "`%s' must be last in instruction group" msgstr "" -#: config/tc-ia64.c:6713 +#: config/tc-ia64.c:6710 msgid "Label must be first in a bundle" msgstr "" -#: config/tc-ia64.c:6790 +#: config/tc-ia64.c:6787 msgid "hint in B unit may be treated as nop" msgstr "" -#: config/tc-ia64.c:6801 +#: config/tc-ia64.c:6798 msgid "hint in B unit can't be used" msgstr "" -#: config/tc-ia64.c:6815 +#: config/tc-ia64.c:6812 msgid "emit_one_bundle: unexpected dynamic op" msgstr "" -#: config/tc-ia64.c:6940 +#: config/tc-ia64.c:6937 #, c-format msgid "`%s' does not fit into %s template" msgstr "" -#: config/tc-ia64.c:6955 +#: config/tc-ia64.c:6952 #, c-format msgid "`%s' does not fit into bundle" msgstr "" -#: config/tc-ia64.c:6967 +#: config/tc-ia64.c:6964 #, c-format msgid "`%s' can't go in %s of %s template" msgstr "" -#: config/tc-ia64.c:6973 +#: config/tc-ia64.c:6970 msgid "Missing '}' at end of file" msgstr "" -#: config/tc-ia64.c:7120 +#: config/tc-ia64.c:7117 #, c-format msgid "Unrecognized option '-x%s'" msgstr "" -#: config/tc-ia64.c:7147 +#: config/tc-ia64.c:7144 msgid "" "IA-64 options:\n" " --mconstant-gp\t mark output file as using the constant-GP model\n" @@ -9132,7 +9518,7 @@ msgid "" msgstr "" #. Note for translators: "automagically" can be translated as "automatically" here. -#: config/tc-ia64.c:7164 +#: config/tc-ia64.c:7161 msgid "" " -xauto\t\t automagically remove dependency violations (default)\n" " -xnone\t\t turn off dependency violation checking\n" @@ -9143,235 +9529,235 @@ msgid "" "\t\t\t dependency violation checking\n" msgstr "" -#: config/tc-ia64.c:7179 +#: config/tc-ia64.c:7176 msgid "--gstabs is not supported for ia64" msgstr "" -#: config/tc-ia64.c:7417 +#: config/tc-ia64.c:7414 #, c-format msgid "ia64.md_begin: can't hash `%s': %s" msgstr "" -#: config/tc-ia64.c:7481 +#: config/tc-ia64.c:7478 #, c-format msgid "Inserting \"%s\" into constant hash table failed: %s" msgstr "" -#: config/tc-ia64.c:7493 config/tc-riscv.c:754 config/tc-riscv.c:3155 +#: config/tc-ia64.c:7490 config/tc-riscv.c:762 config/tc-riscv.c:3205 #: config/tc-tilegx.c:262 msgid "Could not set architecture and machine" msgstr "" -#: config/tc-ia64.c:7625 +#: config/tc-ia64.c:7622 msgid "Explicit stops are ignored in auto mode" msgstr "" -#: config/tc-ia64.c:7634 +#: config/tc-ia64.c:7631 msgid "Found '{' when manual bundling is already turned on" msgstr "" -#: config/tc-ia64.c:7647 +#: config/tc-ia64.c:7644 msgid "Found '{' after explicit switch to automatic mode" msgstr "" -#: config/tc-ia64.c:7653 +#: config/tc-ia64.c:7650 msgid "Found '}' when manual bundling is off" msgstr "" -#: config/tc-ia64.c:7680 +#: config/tc-ia64.c:7677 msgid "Expected ')'" msgstr "" -#: config/tc-ia64.c:7685 +#: config/tc-ia64.c:7682 msgid "Qualifying predicate expected" msgstr "" -#: config/tc-ia64.c:7704 +#: config/tc-ia64.c:7701 msgid "Tag must come before qualifying predicate." msgstr "" -#: config/tc-ia64.c:7733 +#: config/tc-ia64.c:7730 msgid "Expected ':'" msgstr "" -#: config/tc-ia64.c:7749 +#: config/tc-ia64.c:7746 msgid "Tag name expected" msgstr "" -#: config/tc-ia64.c:7850 +#: config/tc-ia64.c:7847 msgid "Rotating register index must be a non-negative constant" msgstr "" -#: config/tc-ia64.c:7855 +#: config/tc-ia64.c:7852 #, c-format msgid "Index out of range 0..%u" msgstr "" -#: config/tc-ia64.c:7867 +#: config/tc-ia64.c:7864 msgid "Indirect register index must be a general register" msgstr "" -#: config/tc-ia64.c:7876 +#: config/tc-ia64.c:7873 msgid "Index can only be applied to rotating or indirect registers" msgstr "" -#: config/tc-ia64.c:7912 config/tc-xstormy16.c:145 +#: config/tc-ia64.c:7909 config/tc-xstormy16.c:145 msgid "Expected '('" msgstr "" -#: config/tc-ia64.c:7920 config/tc-pdp11.c:442 config/tc-pdp11.c:506 -#: config/tc-pdp11.c:540 config/tc-tilegx.c:1048 config/tc-tilepro.c:939 +#: config/tc-ia64.c:7917 config/tc-pdp11.c:446 config/tc-pdp11.c:510 +#: config/tc-pdp11.c:544 config/tc-tilegx.c:1048 config/tc-tilepro.c:939 #: config/tc-xstormy16.c:154 msgid "Missing ')'" msgstr "" -#: config/tc-ia64.c:7938 config/tc-xstormy16.c:161 +#: config/tc-ia64.c:7935 config/tc-xstormy16.c:161 msgid "Not a symbolic expression" msgstr "" -#: config/tc-ia64.c:7943 config/tc-ia64.c:7957 +#: config/tc-ia64.c:7940 config/tc-ia64.c:7954 msgid "Illegal combination of relocation functions" msgstr "" -#: config/tc-ia64.c:8046 +#: config/tc-ia64.c:8043 msgid "No current frame" msgstr "" -#: config/tc-ia64.c:8048 +#: config/tc-ia64.c:8045 #, c-format msgid "Register number out of range 0..%u" msgstr "" -#: config/tc-ia64.c:8087 +#: config/tc-ia64.c:8084 msgid "Standalone `#' is illegal" msgstr "" -#: config/tc-ia64.c:8090 +#: config/tc-ia64.c:8087 msgid "Redundant `#' suffix operators" msgstr "" -#: config/tc-ia64.c:8248 +#: config/tc-ia64.c:8245 #, c-format msgid "Unhandled dependency %s for %s (%s), note %d" msgstr "" -#: config/tc-ia64.c:9561 +#: config/tc-ia64.c:9558 #, c-format msgid "Unrecognized dependency specifier %d\n" msgstr "" -#: config/tc-ia64.c:10431 +#: config/tc-ia64.c:10428 msgid "Only the first path encountering the conflict is reported" msgstr "" -#: config/tc-ia64.c:10433 +#: config/tc-ia64.c:10430 msgid "This is the location of the conflicting usage" msgstr "" -#: config/tc-ia64.c:10695 +#: config/tc-ia64.c:10692 #, c-format msgid "Unknown opcode `%s'" msgstr "" -#: config/tc-ia64.c:10773 +#: config/tc-ia64.c:10770 #, c-format msgid "AR %d can only be accessed by %c-unit" msgstr "" -#: config/tc-ia64.c:10785 +#: config/tc-ia64.c:10782 msgid "hint.b may be treated as nop" msgstr "" -#: config/tc-ia64.c:10788 +#: config/tc-ia64.c:10785 msgid "hint.b shouldn't be used" msgstr "" -#: config/tc-ia64.c:10827 +#: config/tc-ia64.c:10824 #, c-format msgid "`%s' cannot be predicated" msgstr "" -#: config/tc-ia64.c:10899 +#: config/tc-ia64.c:10896 msgid "Closing bracket missing" msgstr "" -#: config/tc-ia64.c:10908 +#: config/tc-ia64.c:10905 msgid "Index must be a general register" msgstr "" -#: config/tc-ia64.c:11073 +#: config/tc-ia64.c:11070 #, c-format msgid "Unsupported fixup size %d" msgstr "" #. This should be an error, but since previously there wasn't any #. diagnostic here, don't make it fail because of this for now. -#: config/tc-ia64.c:11345 +#: config/tc-ia64.c:11342 #, c-format msgid "Cannot express %s%d%s relocation" msgstr "" -#: config/tc-ia64.c:11364 +#: config/tc-ia64.c:11361 msgid "No addend allowed in @fptr() relocation" msgstr "" -#: config/tc-ia64.c:11403 +#: config/tc-ia64.c:11400 msgid "integer operand out of range" msgstr "" -#: config/tc-ia64.c:11470 +#: config/tc-ia64.c:11467 #, c-format msgid "%s must have a constant value" msgstr "" -#: config/tc-ia64.c:11490 +#: config/tc-ia64.c:11487 msgid "cannot resolve @slotcount parameter" msgstr "" -#: config/tc-ia64.c:11523 +#: config/tc-ia64.c:11520 msgid "invalid @slotcount value" msgstr "" -#: config/tc-ia64.c:11560 config/tc-z8k.c:1378 +#: config/tc-ia64.c:11557 config/tc-z8k.c:1378 #, c-format msgid "Cannot represent %s relocation in object file" msgstr "" -#: config/tc-ia64.c:11671 +#: config/tc-ia64.c:11666 msgid "Can't add stop bit to mark end of instruction group" msgstr "" -#: config/tc-ia64.c:11780 read.c:2600 read.c:3239 read.c:3643 stabs.c:469 +#: config/tc-ia64.c:11775 read.c:2600 read.c:3239 read.c:3643 stabs.c:469 #, c-format msgid "expected comma after \"%s\"" msgstr "" -#: config/tc-ia64.c:11822 +#: config/tc-ia64.c:11817 #, c-format msgid "`%s' is already the alias of %s `%s'" msgstr "" -#: config/tc-ia64.c:11832 +#: config/tc-ia64.c:11827 #, c-format msgid "%s `%s' already has an alias `%s'" msgstr "" -#: config/tc-ia64.c:11843 +#: config/tc-ia64.c:11838 #, c-format msgid "inserting \"%s\" into %s alias hash table failed: %s" msgstr "" -#: config/tc-ia64.c:11851 +#: config/tc-ia64.c:11846 #, c-format msgid "inserting \"%s\" into %s name hash table failed: %s" msgstr "" -#: config/tc-ia64.c:11877 +#: config/tc-ia64.c:11872 #, c-format msgid "symbol `%s' aliased to `%s' is not used" msgstr "" -#: config/tc-ia64.c:11900 +#: config/tc-ia64.c:11895 #, c-format msgid "section `%s' aliased to `%s' is not used" msgstr "" @@ -9391,7 +9777,7 @@ msgstr "" msgid " -mip2022ext permit extended IP2022 insn\n" msgstr "" -#: config/tc-ip2k.c:230 +#: config/tc-ip2k.c:232 msgid "relaxation not supported\n" msgstr "" @@ -9406,7 +9792,7 @@ msgid "Register number (R%ld) for double word access must be even." msgstr "" #: config/tc-iq2000.c:379 config/tc-iq2000.c:384 config/tc-iq2000.c:389 -#: config/tc-iq2000.c:406 config/tc-mt.c:244 config/tc-mt.c:249 +#: config/tc-iq2000.c:406 config/tc-mt.c:246 config/tc-mt.c:251 #, c-format msgid "operand references R%ld of previous load." msgstr "" @@ -9419,19 +9805,19 @@ msgstr "" msgid "Unmatched high relocation" msgstr "" -#: config/tc-iq2000.c:826 config/tc-mips.c:19493 config/tc-score.c:5811 +#: config/tc-iq2000.c:826 config/tc-mips.c:19761 config/tc-score.c:5810 msgid ".end not in text section" msgstr "" -#: config/tc-iq2000.c:830 config/tc-score.c:5814 +#: config/tc-iq2000.c:830 config/tc-score.c:5813 msgid ".end directive without a preceding .ent directive." msgstr "" -#: config/tc-iq2000.c:839 config/tc-score.c:5822 +#: config/tc-iq2000.c:839 config/tc-score.c:5821 msgid ".end symbol does not match .ent symbol." msgstr "" -#: config/tc-iq2000.c:842 config/tc-mips.c:19513 config/tc-score.c:5827 +#: config/tc-iq2000.c:842 config/tc-mips.c:19781 config/tc-score.c:5826 msgid ".end directive missing or unknown symbol" msgstr "" @@ -9439,7 +9825,7 @@ msgstr "" msgid "Expected simple number." msgstr "" -#: config/tc-iq2000.c:889 config/tc-mips.c:19418 config/tc-score.c:5663 +#: config/tc-iq2000.c:889 config/tc-mips.c:19686 config/tc-score.c:5662 #, c-format msgid " *input_line_pointer == '%c' 0x%02x\n" msgstr "" @@ -9448,7 +9834,7 @@ msgstr "" msgid "Invalid number" msgstr "" -#: config/tc-iq2000.c:925 config/tc-score.c:5701 +#: config/tc-iq2000.c:925 config/tc-score.c:5700 msgid ".ent or .aent not in text section." msgstr "" @@ -9456,7 +9842,7 @@ msgstr "" msgid "missing `.end'" msgstr "" -#: config/tc-m32c.c:142 +#: config/tc-m32c.c:141 #, c-format msgid " M32C specific command line options:\n" msgstr "" @@ -9686,8 +10072,8 @@ msgstr "" msgid ".SCOMMon length (%ld.) <0! Ignored." msgstr "" -#: config/tc-m32r.c:1512 config/tc-microblaze.c:218 config/tc-ppc.c:2301 -#: config/tc-ppc.c:4077 config/tc-ppc.c:4119 config/tc-ppc.c:5679 +#: config/tc-m32r.c:1512 config/tc-microblaze.c:218 config/tc-ppc.c:2428 +#: config/tc-ppc.c:4423 config/tc-ppc.c:4465 config/tc-ppc.c:6022 msgid "ignoring bad alignment" msgstr "" @@ -10003,7 +10389,7 @@ msgstr "" msgid "Invalid indexed register, expecting register Y." msgstr "" -#: config/tc-m68hc11.c:2844 config/tc-s12z.c:3676 +#: config/tc-m68hc11.c:2844 config/tc-s12z.c:3814 msgid "No instruction or missing opcode." msgstr "" @@ -10036,7 +10422,7 @@ msgstr "" msgid "bad .relax format" msgstr "" -#: config/tc-m68hc11.c:3843 config/tc-s12z.c:3767 config/tc-xgate.c:630 +#: config/tc-m68hc11.c:3843 config/tc-s12z.c:3905 config/tc-xgate.c:630 #, c-format msgid "Relocation %d is not supported by object file format." msgstr "" @@ -10050,11 +10436,11 @@ msgstr "" msgid "Subtype %d is not recognized." msgstr "" -#: config/tc-m68hc11.c:4336 config/tc-s12z.c:3808 config/tc-xgate.c:663 +#: config/tc-m68hc11.c:4336 config/tc-s12z.c:3946 config/tc-xgate.c:663 msgid "Expression too complex." msgstr "" -#: config/tc-m68hc11.c:4367 config/tc-s12z.c:3834 config/tc-xgate.c:708 +#: config/tc-m68hc11.c:4367 config/tc-s12z.c:3986 config/tc-xgate.c:708 #: config/tc-xgate.c:717 msgid "Value out of 16-bit range." msgstr "" @@ -10094,12 +10480,12 @@ msgstr "" msgid "Offset out of 16-bit range for movw/movb insn: %ld" msgstr "" -#: config/tc-m68hc11.c:4469 config/tc-s12z.c:3840 config/tc-xgate.c:752 +#: config/tc-m68hc11.c:4469 config/tc-s12z.c:3992 config/tc-xgate.c:752 #, c-format msgid "Line %d: unknown relocation type: 0x%x." msgstr "" -#: config/tc-m68hc11.c:4494 +#: config/tc-m68hc11.c:4494 config/tc-z80.c:3058 config/tc-z80.c:3078 msgid "Invalid directive" msgstr "" @@ -10158,7 +10544,7 @@ msgid "operands mismatch" msgstr "" #: config/tc-m68k.c:2447 config/tc-m68k.c:2453 config/tc-m68k.c:2459 -#: config/tc-mmix.c:2495 config/tc-mmix.c:2519 +#: config/tc-mmix.c:2494 config/tc-mmix.c:2518 msgid "operand out of range" msgstr "" @@ -10516,7 +10902,7 @@ msgstr "" msgid "Processor variants are: " msgstr "" -#: config/tc-m68k.c:7638 config/tc-xtensa.c:6386 +#: config/tc-m68k.c:7638 config/tc-xtensa.c:6380 #, c-format msgid "\n" msgstr "" @@ -10535,7 +10921,7 @@ msgstr "" msgid "Not a defined coldfire architecture" msgstr "" -#: config/tc-m68k.c:7927 read.c:4548 +#: config/tc-m68k.c:7927 read.c:4549 #, c-format msgid "%s relocations do not fit in %u byte" msgid_plural "%s relocations do not fit in %u bytes" @@ -10578,7 +10964,7 @@ msgstr "" #: config/tc-mcore.c:887 config/tc-microblaze.c:948 config/tc-microblaze.c:1080 #: config/tc-microblaze.c:1112 config/tc-microblaze.c:1565 #: config/tc-microblaze.c:1631 config/tc-microblaze.c:1704 -#: config/tc-microblaze.c:2129 config/tc-microblaze.c:2177 +#: config/tc-microblaze.c:2125 config/tc-microblaze.c:2173 #, c-format msgid "unknown opcode \"%s\"" msgstr "" @@ -10691,11 +11077,11 @@ msgid "" " -EL assemble for a little endian system\n" msgstr "" -#: config/tc-mcore.c:1705 config/tc-microblaze.c:1862 +#: config/tc-mcore.c:1705 config/tc-microblaze.c:1859 msgid "failed sanity check: short_jump" msgstr "" -#: config/tc-mcore.c:1715 config/tc-microblaze.c:1872 +#: config/tc-mcore.c:1715 config/tc-microblaze.c:1869 msgid "failed sanity check: long_jump" msgstr "" @@ -10726,12 +11112,12 @@ msgstr "" msgid "pcrel for loopt too far (0x%lx)" msgstr "" -#: config/tc-mcore.c:2185 config/tc-microblaze.c:2462 config/tc-tic30.c:1386 +#: config/tc-mcore.c:2185 config/tc-microblaze.c:2458 config/tc-tic30.c:1386 #, c-format msgid "Can not do %d byte %srelocation" msgstr "" -#: config/tc-mcore.c:2187 config/tc-microblaze.c:2464 config/tc-tic30.c:1387 +#: config/tc-mcore.c:2187 config/tc-microblaze.c:2460 config/tc-tic30.c:1387 msgid "pc-relative " msgstr "" @@ -11227,7 +11613,7 @@ msgstr "" msgid "cannot assemble FPU instruction, FPU option not set: %s" msgstr "" -#: config/tc-metag.c:6739 config/tc-nds32.c:7349 +#: config/tc-metag.c:6736 config/tc-nds32.c:7346 msgid "Bad call to md_atof()" msgstr "" @@ -11325,765 +11711,765 @@ msgstr "" msgid "Immediate value for mbar > 32. using <value %% 32>" msgstr "" -#: config/tc-microblaze.c:1812 +#: config/tc-microblaze.c:1809 msgid "Bad call to MD_NTOF()" msgstr "" -#: config/tc-microblaze.c:2081 +#: config/tc-microblaze.c:2077 #, c-format msgid "pcrel for branch to %s too far (0x%x)" msgstr "" #. We know the abs value: Should never happen. -#: config/tc-microblaze.c:2238 +#: config/tc-microblaze.c:2234 msgid "Absolute PC-relative value in relaxation code. Assembler error....." msgstr "" #. Cannot have a PC-relative branch to a diff segment. -#: config/tc-microblaze.c:2252 +#: config/tc-microblaze.c:2248 #, c-format msgid "PC relative branch to label %s which is not in the instruction space" msgstr "" -#: config/tc-microblaze.c:2295 +#: config/tc-microblaze.c:2291 msgid "" "Variable is accessed using small data read only anchor, but it is not in the " "small data read only section" msgstr "" -#: config/tc-microblaze.c:2318 +#: config/tc-microblaze.c:2314 msgid "" "Variable is accessed using small data read write anchor, but it is not in " "the small data read write section" msgstr "" -#: config/tc-microblaze.c:2327 +#: config/tc-microblaze.c:2323 msgid "Incorrect fr_opcode value in frag. Internal error....." msgstr "" #. We know the abs value: Should never happen. -#: config/tc-microblaze.c:2334 +#: config/tc-microblaze.c:2330 msgid "Absolute value in relaxation code. Assembler error....." msgstr "" -#: config/tc-mips.c:2145 +#: config/tc-mips.c:2175 #, c-format msgid "the %d-bit %s architecture does not support the `%s' extension" msgstr "" -#: config/tc-mips.c:2148 +#: config/tc-mips.c:2178 #, c-format msgid "the `%s' extension requires %s%d revision %d or greater" msgstr "" -#: config/tc-mips.c:2157 +#: config/tc-mips.c:2187 #, c-format msgid "the `%s' extension was removed in %s%d revision %d" msgstr "" -#: config/tc-mips.c:2166 +#: config/tc-mips.c:2196 #, c-format msgid "the `%s' extension requires 64-bit FPRs" msgstr "" -#: config/tc-mips.c:3009 config/tc-mips.c:16354 +#: config/tc-mips.c:3048 config/tc-mips.c:16618 #, c-format msgid "unrecognized register name `%s'" msgstr "" -#: config/tc-mips.c:3236 +#: config/tc-mips.c:3275 msgid "invalid register range" msgstr "" -#: config/tc-mips.c:3264 +#: config/tc-mips.c:3303 msgid "vector element must be constant" msgstr "" -#: config/tc-mips.c:3274 +#: config/tc-mips.c:3313 msgid "missing `]'" msgstr "" -#: config/tc-mips.c:3497 +#: config/tc-mips.c:3536 #, c-format msgid "internal: bad mips opcode (mask error): %s %s" msgstr "" -#: config/tc-mips.c:3524 +#: config/tc-mips.c:3563 #, c-format msgid "internal: unknown operand type: %s %s" msgstr "" -#: config/tc-mips.c:3557 +#: config/tc-mips.c:3596 #, c-format msgid "internal: bad mips opcode (bits 0x%08lx doubly defined): %s %s" msgstr "" -#: config/tc-mips.c:3565 +#: config/tc-mips.c:3604 #, c-format msgid "internal: bad mips opcode (bits 0x%08lx undefined): %s %s" msgstr "" -#: config/tc-mips.c:3572 +#: config/tc-mips.c:3611 #, c-format msgid "internal: bad mips opcode (bits 0x%08lx defined): %s %s" msgstr "" -#: config/tc-mips.c:3607 +#: config/tc-mips.c:3646 #, c-format msgid "internal error: bad microMIPS opcode (incorrect length: %u): %s %s" msgstr "" -#: config/tc-mips.c:3615 +#: config/tc-mips.c:3654 #, c-format msgid "internal error: bad microMIPS opcode (opcode/length mismatch): %s %s" msgstr "" -#: config/tc-mips.c:3641 +#: config/tc-mips.c:3680 msgid "-G may not be used in position-independent code" msgstr "" -#: config/tc-mips.c:3647 +#: config/tc-mips.c:3686 msgid "-G may not be used with abicalls" msgstr "" #. Probably a memory allocation problem? Give up now. -#: config/tc-mips.c:3667 config/tc-mips.c:3758 +#: config/tc-mips.c:3706 config/tc-mips.c:3802 msgid "broken assembler, no assembly attempted" msgstr "" -#: config/tc-mips.c:3697 config/tc-mips.c:3726 +#: config/tc-mips.c:3741 config/tc-mips.c:3770 #, c-format msgid "internal: can't hash `%s': %s" msgstr "" -#: config/tc-mips.c:3908 +#: config/tc-mips.c:3950 #, c-format msgid ".gnu_attribute %d,%d is incompatible with `%s'" msgstr "" -#: config/tc-mips.c:3915 +#: config/tc-mips.c:3957 #, c-format msgid ".gnu_attribute %d,%d requires `%s'" msgstr "" -#: config/tc-mips.c:3976 +#: config/tc-mips.c:4018 #, c-format msgid ".gnu_attribute %d,%d is no longer supported" msgstr "" -#: config/tc-mips.c:3985 +#: config/tc-mips.c:4027 #, c-format msgid ".gnu_attribute %d,%d is not a recognized floating-point ABI" msgstr "" -#: config/tc-mips.c:3998 +#: config/tc-mips.c:4040 msgid "`gp=64' used with a 32-bit processor" msgstr "" -#: config/tc-mips.c:4001 +#: config/tc-mips.c:4043 msgid "`gp=32' used with a 64-bit ABI" msgstr "" -#: config/tc-mips.c:4004 +#: config/tc-mips.c:4046 msgid "`gp=64' used with a 32-bit ABI" msgstr "" -#: config/tc-mips.c:4011 +#: config/tc-mips.c:4053 msgid "`fp=xx' used with a cpu lacking ldc1/sdc1 instructions" msgstr "" -#: config/tc-mips.c:4013 +#: config/tc-mips.c:4055 msgid "`fp=xx' cannot be used with `singlefloat'" msgstr "" -#: config/tc-mips.c:4017 +#: config/tc-mips.c:4059 msgid "`fp=64' used with a 32-bit fpu" msgstr "" -#: config/tc-mips.c:4021 +#: config/tc-mips.c:4063 msgid "`fp=64' used with a 32-bit ABI" msgstr "" -#: config/tc-mips.c:4026 +#: config/tc-mips.c:4068 msgid "`fp=32' used with a 64-bit ABI" msgstr "" -#: config/tc-mips.c:4028 +#: config/tc-mips.c:4070 msgid "`fp=32' used with a MIPS R6 cpu" msgstr "" -#: config/tc-mips.c:4031 +#: config/tc-mips.c:4073 msgid "Unknown size of floating point registers" msgstr "" -#: config/tc-mips.c:4036 +#: config/tc-mips.c:4078 msgid "`nooddspreg` cannot be used with a 64-bit ABI" msgstr "" -#: config/tc-mips.c:4039 config/tc-mips.c:4043 +#: config/tc-mips.c:4081 config/tc-mips.c:4085 #, c-format msgid "`%s' cannot be used with `%s'" msgstr "" -#: config/tc-mips.c:4048 +#: config/tc-mips.c:4090 #, c-format msgid "branch relaxation is not supported in `%s'" msgstr "" -#: config/tc-mips.c:4128 +#: config/tc-mips.c:4166 msgid "trap exception not supported at ISA 1" msgstr "" -#: config/tc-mips.c:4141 config/tc-mips.c:17234 +#: config/tc-mips.c:4179 config/tc-mips.c:17501 #, c-format msgid "`%s' does not support legacy NaN" msgstr "" -#: config/tc-mips.c:4188 +#: config/tc-mips.c:4226 #, c-format msgid "returned from mips_ip(%s) insn_opcode = 0x%x\n" msgstr "" -#: config/tc-mips.c:4893 +#: config/tc-mips.c:4932 #, c-format msgid "operand %d out of range" msgstr "" -#: config/tc-mips.c:4901 +#: config/tc-mips.c:4940 #, c-format msgid "operand %d must be constant" msgstr "" -#: config/tc-mips.c:4945 read.c:4316 read.c:5162 write.c:265 write.c:1026 +#: config/tc-mips.c:4984 read.c:4317 read.c:5163 write.c:263 write.c:1024 msgid "register value used as expression" msgstr "" -#: config/tc-mips.c:4958 +#: config/tc-mips.c:4997 #, c-format msgid "operand %d must be an immediate expression" msgstr "" -#: config/tc-mips.c:5079 config/tc-mips.c:5081 +#: config/tc-mips.c:5118 config/tc-mips.c:5120 #, c-format msgid "float register should be even, was %d" msgstr "" -#: config/tc-mips.c:5094 +#: config/tc-mips.c:5133 #, c-format msgid "condition code register should be even for %s, was %d" msgstr "" -#: config/tc-mips.c:5099 +#: config/tc-mips.c:5138 #, c-format msgid "condition code register should be 0 or 4 for %s, was %d" msgstr "" -#: config/tc-mips.c:5420 +#: config/tc-mips.c:5459 msgid "invalid performance register" msgstr "" -#: config/tc-mips.c:5516 +#: config/tc-mips.c:5555 config/tc-mips.c:6026 msgid "the source register must not be $0" msgstr "" -#: config/tc-mips.c:5792 +#: config/tc-mips.c:5831 msgid "missing frame size" msgstr "" -#: config/tc-mips.c:5797 +#: config/tc-mips.c:5836 msgid "frame size specified twice" msgstr "" -#: config/tc-mips.c:5802 +#: config/tc-mips.c:5841 msgid "invalid frame size" msgstr "" -#: config/tc-mips.c:5842 +#: config/tc-mips.c:5881 #, c-format msgid "operand %d must be an immediate" msgstr "" -#: config/tc-mips.c:5857 +#: config/tc-mips.c:5896 msgid "invalid element selector" msgstr "" -#: config/tc-mips.c:5870 +#: config/tc-mips.c:5909 #, c-format msgid "operand %d must be scalar" msgstr "" -#: config/tc-mips.c:6047 +#: config/tc-mips.c:6089 msgid "floating-point expression required" msgstr "" -#: config/tc-mips.c:6147 +#: config/tc-mips.c:6189 #, c-format msgid "cannot use `%s' in this section" msgstr "" -#: config/tc-mips.c:6294 +#: config/tc-mips.c:6336 msgid "used $at without \".set noat\"" msgstr "" -#: config/tc-mips.c:6296 +#: config/tc-mips.c:6338 #, c-format msgid "used $%u with \".set at=$%u\"" msgstr "" -#: config/tc-mips.c:7337 +#: config/tc-mips.c:7485 #, c-format msgid "wrong size instruction in a %u-bit branch delay slot" msgstr "" -#: config/tc-mips.c:7357 config/tc-mips.c:7367 config/tc-mips.c:15660 +#: config/tc-mips.c:7505 config/tc-mips.c:7515 config/tc-mips.c:15916 #, c-format msgid "jump to misaligned address (0x%lx)" msgstr "" -#: config/tc-mips.c:7382 config/tc-mips.c:7402 config/tc-mips.c:7419 -#: config/tc-mips.c:8969 config/tc-mips.c:15514 config/tc-mips.c:15521 -#: config/tc-mips.c:15915 config/tc-mips.c:18749 +#: config/tc-mips.c:7530 config/tc-mips.c:7550 config/tc-mips.c:7567 +#: config/tc-mips.c:9117 config/tc-mips.c:15770 config/tc-mips.c:15777 +#: config/tc-mips.c:16170 config/tc-mips.c:19016 #, c-format msgid "branch to misaligned address (0x%lx)" msgstr "" -#: config/tc-mips.c:7388 config/tc-mips.c:7406 config/tc-mips.c:7423 -#: config/tc-mips.c:8972 +#: config/tc-mips.c:7536 config/tc-mips.c:7554 config/tc-mips.c:7571 +#: config/tc-mips.c:9120 #, c-format msgid "branch address range overflow (0x%lx)" msgstr "" -#: config/tc-mips.c:7668 +#: config/tc-mips.c:7816 msgid "extended instruction in delay slot" msgstr "" -#: config/tc-mips.c:8132 +#: config/tc-mips.c:8280 msgid "source and destination must be different" msgstr "" -#: config/tc-mips.c:8135 +#: config/tc-mips.c:8283 msgid "a destination register must be supplied" msgstr "" -#: config/tc-mips.c:8140 +#: config/tc-mips.c:8288 msgid "the source register must not be $31" msgstr "" -#: config/tc-mips.c:8388 config/tc-mips.c:14284 config/tc-mips.c:18895 +#: config/tc-mips.c:8536 config/tc-mips.c:14506 config/tc-mips.c:19163 msgid "invalid unextended operand value" msgstr "" -#: config/tc-mips.c:8506 +#: config/tc-mips.c:8654 #, c-format msgid "opcode not supported on this processor: %s (%s)" msgstr "" -#: config/tc-mips.c:8585 +#: config/tc-mips.c:8733 msgid "opcode not supported in the `insn32' mode" msgstr "" -#: config/tc-mips.c:8588 +#: config/tc-mips.c:8736 #, c-format msgid "unrecognized %d-bit version of microMIPS opcode" msgstr "" -#: config/tc-mips.c:8644 +#: config/tc-mips.c:8792 msgid "unrecognized unextended version of MIPS16 opcode" msgstr "" -#: config/tc-mips.c:8647 +#: config/tc-mips.c:8795 msgid "unrecognized extended version of MIPS16 opcode" msgstr "" -#: config/tc-mips.c:8697 config/tc-mips.c:18766 +#: config/tc-mips.c:8845 config/tc-mips.c:19034 msgid "" "macro instruction expanded into multiple instructions in a branch delay slot" msgstr "" -#: config/tc-mips.c:8700 config/tc-mips.c:18774 +#: config/tc-mips.c:8848 config/tc-mips.c:19042 msgid "macro instruction expanded into multiple instructions" msgstr "" -#: config/tc-mips.c:8704 +#: config/tc-mips.c:8852 msgid "" "macro instruction expanded into a wrong size instruction in a 16-bit branch " "delay slot" msgstr "" -#: config/tc-mips.c:8706 +#: config/tc-mips.c:8854 msgid "" "macro instruction expanded into a wrong size instruction in a 32-bit branch " "delay slot" msgstr "" -#: config/tc-mips.c:9169 +#: config/tc-mips.c:9317 msgid "operand overflow" msgstr "" -#: config/tc-mips.c:9188 config/tc-mips.c:9772 config/tc-mips.c:13765 +#: config/tc-mips.c:9336 config/tc-mips.c:9920 config/tc-mips.c:13987 msgid "macro used $at after \".set noat\"" msgstr "" -#: config/tc-mips.c:9336 config/tc-mips.c:12104 config/tc-mips.c:12763 +#: config/tc-mips.c:9484 config/tc-mips.c:12298 config/tc-mips.c:12981 #, c-format msgid "number (0x%s) larger than 32 bits" msgstr "" -#: config/tc-mips.c:9356 +#: config/tc-mips.c:9504 msgid "number larger than 64 bits" msgstr "" -#: config/tc-mips.c:9650 config/tc-mips.c:9678 config/tc-mips.c:9716 -#: config/tc-mips.c:9761 config/tc-mips.c:12339 config/tc-mips.c:12378 -#: config/tc-mips.c:12417 config/tc-mips.c:12859 config/tc-mips.c:12911 +#: config/tc-mips.c:9798 config/tc-mips.c:9826 config/tc-mips.c:9864 +#: config/tc-mips.c:9909 config/tc-mips.c:12541 config/tc-mips.c:12580 +#: config/tc-mips.c:12619 config/tc-mips.c:13077 config/tc-mips.c:13129 msgid "PIC code offset overflow (max 16 signed bits)" msgstr "" -#: config/tc-mips.c:10289 +#: config/tc-mips.c:10442 #, c-format msgid "BALIGN immediate not 0, 1, 2 or 3 (%lu)" msgstr "" -#. result is always true -#: config/tc-mips.c:10385 +#. Result is always true. +#: config/tc-mips.c:10538 #, c-format msgid "branch %s is always true" msgstr "" -#: config/tc-mips.c:10613 config/tc-mips.c:10723 +#: config/tc-mips.c:10766 config/tc-mips.c:10876 msgid "divide by zero" msgstr "" -#: config/tc-mips.c:10813 +#: config/tc-mips.c:10966 msgid "dla used to load 32-bit register; recommend using la instead" msgstr "" -#: config/tc-mips.c:10817 +#: config/tc-mips.c:10970 msgid "la used to load 64-bit address; recommend using dla instead" msgstr "" -#: config/tc-mips.c:10926 config/tc-riscv.c:1075 config/tc-z80.c:732 +#: config/tc-mips.c:11079 config/tc-riscv.c:1111 config/tc-z80.c:1125 msgid "offset too large" msgstr "" -#: config/tc-mips.c:11100 config/tc-mips.c:11378 +#: config/tc-mips.c:11253 config/tc-mips.c:11531 msgid "PIC code offset overflow (max 32 signed bits)" msgstr "" -#: config/tc-mips.c:11448 config/tc-mips.c:11524 +#: config/tc-mips.c:11601 config/tc-mips.c:11677 #, c-format msgid "opcode not supported in the `insn32' mode `%s'" msgstr "" -#: config/tc-mips.c:11476 +#: config/tc-mips.c:11629 msgid "MIPS PIC call to register other than $25" msgstr "" -#: config/tc-mips.c:11492 config/tc-mips.c:11503 config/tc-mips.c:11636 -#: config/tc-mips.c:11647 +#: config/tc-mips.c:11645 config/tc-mips.c:11656 config/tc-mips.c:11789 +#: config/tc-mips.c:11800 msgid "no .cprestore pseudo-op used in PIC code" msgstr "" -#: config/tc-mips.c:11497 config/tc-mips.c:11641 +#: config/tc-mips.c:11650 config/tc-mips.c:11794 msgid "no .frame pseudo-op used in PIC code" msgstr "" -#: config/tc-mips.c:11662 +#: config/tc-mips.c:11815 msgid "non-PIC jump used in PIC library" msgstr "" -#: config/tc-mips.c:12589 +#: config/tc-mips.c:12798 #, c-format msgid "Unable to generate `%s' compliant code without mthc1" msgstr "" -#: config/tc-mips.c:13323 +#: config/tc-mips.c:13541 #, c-format msgid "instruction %s: result is always false" msgstr "" -#: config/tc-mips.c:13476 +#: config/tc-mips.c:13694 #, c-format msgid "instruction %s: result is always true" msgstr "" #. FIXME: Check if this is one of the itbl macros, since they #. are added dynamically. -#: config/tc-mips.c:13761 +#: config/tc-mips.c:13983 #, c-format msgid "macro %s not implemented yet" msgstr "" -#: config/tc-mips.c:14294 +#: config/tc-mips.c:14516 msgid "extended operand requested but not required" msgstr "" -#: config/tc-mips.c:14303 +#: config/tc-mips.c:14525 msgid "operand value out of range for instruction" msgstr "" -#: config/tc-mips.c:14402 +#: config/tc-mips.c:14624 #, c-format msgid "relocation %s isn't supported by the current ABI" msgstr "" -#: config/tc-mips.c:14458 +#: config/tc-mips.c:14680 msgid "unclosed '('" msgstr "" -#: config/tc-mips.c:14524 +#: config/tc-mips.c:14746 #, c-format msgid "a different %s was already specified, is now %s" msgstr "" -#: config/tc-mips.c:14691 +#: config/tc-mips.c:14913 msgid "-mmicromips cannot be used with -mips16" msgstr "" -#: config/tc-mips.c:14706 +#: config/tc-mips.c:14928 msgid "-mips16 cannot be used with -micromips" msgstr "" -#: config/tc-mips.c:14867 config/tc-mips.c:14925 +#: config/tc-mips.c:15097 config/tc-mips.c:15155 msgid "no compiled in support for 64 bit object file format" msgstr "" -#: config/tc-mips.c:14932 +#: config/tc-mips.c:15162 #, c-format msgid "invalid abi -mabi=%s" msgstr "" -#: config/tc-mips.c:14972 +#: config/tc-mips.c:15202 #, c-format msgid "invalid NaN setting -mnan=%s" msgstr "" -#: config/tc-mips.c:15006 +#: config/tc-mips.c:15236 msgid "-G not supported in this configuration" msgstr "" -#: config/tc-mips.c:15032 +#: config/tc-mips.c:15262 #, c-format msgid "-%s conflicts with the other architecture options, which imply -%s" msgstr "" -#: config/tc-mips.c:15048 +#: config/tc-mips.c:15278 #, c-format msgid "-march=%s is not compatible with the selected ABI" msgstr "" -#: config/tc-mips.c:15518 config/tc-mips.c:15909 config/tc-mips.c:18746 +#: config/tc-mips.c:15774 config/tc-mips.c:16164 config/tc-mips.c:19013 msgid "branch to a symbol in another ISA mode" msgstr "" -#: config/tc-mips.c:15525 config/tc-mips.c:15666 config/tc-mips.c:15919 +#: config/tc-mips.c:15781 config/tc-mips.c:15921 config/tc-mips.c:16174 #, c-format msgid "cannot encode misaligned addend in the relocatable field (0x%lx)" msgstr "" -#: config/tc-mips.c:15562 +#: config/tc-mips.c:15818 msgid "PC-relative reference to a different section" msgstr "" -#: config/tc-mips.c:15634 config/tc-riscv.c:2366 +#: config/tc-mips.c:15890 config/tc-riscv.c:2412 msgid "TLS relocation against a constant" msgstr "" -#: config/tc-mips.c:15654 +#: config/tc-mips.c:15910 msgid "jump to a symbol in another ISA mode" msgstr "" -#: config/tc-mips.c:15657 +#: config/tc-mips.c:15913 msgid "JALX to a symbol in the same ISA mode" msgstr "" -#: config/tc-mips.c:15742 +#: config/tc-mips.c:15997 msgid "unsupported constant in relocation" msgstr "" -#: config/tc-mips.c:15814 +#: config/tc-mips.c:16069 #, c-format msgid "PC-relative access using misaligned symbol (%lx)" msgstr "" -#: config/tc-mips.c:15818 +#: config/tc-mips.c:16073 #, c-format msgid "PC-relative access using misaligned offset (%lx)" msgstr "" -#: config/tc-mips.c:15831 config/tc-mips.c:15850 +#: config/tc-mips.c:16086 config/tc-mips.c:16105 msgid "PC-relative access out of range" msgstr "" -#: config/tc-mips.c:15837 +#: config/tc-mips.c:16092 #, c-format msgid "PC-relative access to misaligned address (%lx)" msgstr "" -#: config/tc-mips.c:16004 +#: config/tc-mips.c:16259 #, c-format msgid "alignment too large, %d assumed" msgstr "" -#: config/tc-mips.c:16007 +#: config/tc-mips.c:16262 msgid "alignment negative, 0 assumed" msgstr "" -#: config/tc-mips.c:16249 +#: config/tc-mips.c:16498 #, c-format msgid "%s: no such section" msgstr "" -#: config/tc-mips.c:16290 +#: config/tc-mips.c:16554 #, c-format msgid ".option pic%d not supported" msgstr "" -#: config/tc-mips.c:16292 +#: config/tc-mips.c:16556 #, c-format msgid ".option pic%d not supported in VxWorks PIC mode" msgstr "" -#: config/tc-mips.c:16304 config/tc-mips.c:16641 +#: config/tc-mips.c:16568 config/tc-mips.c:16908 msgid "-G may not be used with SVR4 PIC code" msgstr "" -#: config/tc-mips.c:16310 +#: config/tc-mips.c:16574 #, c-format msgid "unrecognized option \"%s\"" msgstr "" -#: config/tc-mips.c:16416 +#: config/tc-mips.c:16680 #, c-format msgid "unknown architecture %s" msgstr "" -#: config/tc-mips.c:16430 config/tc-mips.c:16592 +#: config/tc-mips.c:16695 config/tc-mips.c:16859 #, c-format msgid "unknown ISA level %s" msgstr "" -#: config/tc-mips.c:16439 +#: config/tc-mips.c:16705 #, c-format msgid "unknown ISA or architecture %s" msgstr "" -#: config/tc-mips.c:16498 +#: config/tc-mips.c:16764 msgid "`noreorder' must be set before `nomacro'" msgstr "" -#: config/tc-mips.c:16527 +#: config/tc-mips.c:16794 msgid ".set pop with no .set push" msgstr "" -#: config/tc-mips.c:16546 +#: config/tc-mips.c:16813 #, c-format msgid "tried to set unrecognized symbol: %s\n" msgstr "" -#: config/tc-mips.c:16619 +#: config/tc-mips.c:16886 #, c-format msgid ".module used with unrecognized symbol: %s\n" msgstr "" -#: config/tc-mips.c:16625 +#: config/tc-mips.c:16892 msgid ".module is not permitted after generating code" msgstr "" -#: config/tc-mips.c:16685 config/tc-mips.c:16764 config/tc-mips.c:16868 -#: config/tc-mips.c:16898 config/tc-mips.c:16947 +#: config/tc-mips.c:16952 config/tc-mips.c:17031 config/tc-mips.c:17135 +#: config/tc-mips.c:17165 config/tc-mips.c:17214 #, c-format msgid "%s not supported in MIPS16 mode" msgstr "" -#: config/tc-mips.c:16692 +#: config/tc-mips.c:16959 msgid ".cpload not in noreorder section" msgstr "" -#: config/tc-mips.c:16773 config/tc-mips.c:16792 +#: config/tc-mips.c:17040 config/tc-mips.c:17059 msgid "missing argument separator ',' for .cpsetup" msgstr "" -#: config/tc-mips.c:16990 +#: config/tc-mips.c:17257 #, c-format msgid "unsupported use of %s" msgstr "" -#: config/tc-mips.c:17081 +#: config/tc-mips.c:17348 msgid "unsupported use of .gpword" msgstr "" -#: config/tc-mips.c:17119 +#: config/tc-mips.c:17386 msgid "unsupported use of .gpdword" msgstr "" -#: config/tc-mips.c:17151 +#: config/tc-mips.c:17418 msgid "unsupported use of .ehword" msgstr "" -#: config/tc-mips.c:17238 +#: config/tc-mips.c:17505 msgid "bad .nan directive" msgstr "" -#: config/tc-mips.c:17287 +#: config/tc-mips.c:17554 #, c-format msgid "ignoring attempt to redefine symbol %s" msgstr "" -#: config/tc-mips.c:17302 ecoff.c:3372 +#: config/tc-mips.c:17569 ecoff.c:3372 msgid "bad .weakext directive" msgstr "" -#: config/tc-mips.c:18271 config/tc-mips.c:18548 +#: config/tc-mips.c:18538 config/tc-mips.c:18815 msgid "relaxed out-of-range branch into a jump" msgstr "" -#: config/tc-mips.c:18770 +#: config/tc-mips.c:19038 msgid "extended instruction in a branch delay slot" msgstr "" -#: config/tc-mips.c:18884 config/tc-xtensa.c:1686 config/tc-xtensa.c:1964 +#: config/tc-mips.c:19152 config/tc-xtensa.c:1676 config/tc-xtensa.c:1954 msgid "unsupported relocation" msgstr "" -#: config/tc-mips.c:19392 config/tc-score.c:5637 +#: config/tc-mips.c:19660 config/tc-score.c:5636 msgid "expected simple number" msgstr "" -#: config/tc-mips.c:19420 config/tc-score.c:5664 +#: config/tc-mips.c:19688 config/tc-score.c:5663 msgid "invalid number" msgstr "" -#: config/tc-mips.c:19497 ecoff.c:2999 +#: config/tc-mips.c:19765 ecoff.c:2999 msgid ".end directive without a preceding .ent directive" msgstr "" -#: config/tc-mips.c:19506 +#: config/tc-mips.c:19774 msgid ".end symbol does not match .ent symbol" msgstr "" -#: config/tc-mips.c:19583 +#: config/tc-mips.c:19851 msgid ".ent or .aent not in text section" msgstr "" -#: config/tc-mips.c:19586 config/tc-score.c:5703 +#: config/tc-mips.c:19854 config/tc-score.c:5702 msgid "missing .end" msgstr "" -#: config/tc-mips.c:19669 +#: config/tc-mips.c:19937 msgid ".mask/.fmask outside of .ent" msgstr "" -#: config/tc-mips.c:19676 +#: config/tc-mips.c:19944 msgid "bad .mask/.fmask directive" msgstr "" -#: config/tc-mips.c:19977 +#: config/tc-mips.c:20247 #, c-format msgid "bad value (%s) for %s" msgstr "" -#: config/tc-mips.c:20041 +#: config/tc-mips.c:20311 #, c-format msgid "" "MIPS options:\n" @@ -12094,7 +12480,7 @@ msgid "" "\t\t\timplicitly with the gp register [default 8]\n" msgstr "" -#: config/tc-mips.c:20048 +#: config/tc-mips.c:20318 #, c-format msgid "" "-mips1\t\t\tgenerate MIPS ISA I instructions\n" @@ -12115,7 +12501,7 @@ msgid "" "-march=CPU/-mtune=CPU\tgenerate code/schedule for CPU, where CPU is one of:\n" msgstr "" -#: config/tc-mips.c:20073 +#: config/tc-mips.c:20343 #, c-format msgid "" "-mCPU\t\t\tequivalent to -march=CPU -mtune=CPU. Deprecated.\n" @@ -12123,105 +12509,105 @@ msgid "" "\t\t\tFor -mCPU and -no-mCPU, CPU must be one of:\n" msgstr "" -#: config/tc-mips.c:20086 +#: config/tc-mips.c:20356 #, c-format msgid "" "-mips16\t\t\tgenerate mips16 instructions\n" "-no-mips16\t\tdo not generate mips16 instructions\n" msgstr "" -#: config/tc-mips.c:20089 +#: config/tc-mips.c:20359 #, c-format msgid "" "-mmips16e2\t\tgenerate MIPS16e2 instructions\n" "-mno-mips16e2\t\tdo not generate MIPS16e2 instructions\n" msgstr "" -#: config/tc-mips.c:20092 +#: config/tc-mips.c:20362 #, c-format msgid "" "-mmicromips\t\tgenerate microMIPS instructions\n" "-mno-micromips\t\tdo not generate microMIPS instructions\n" msgstr "" -#: config/tc-mips.c:20095 +#: config/tc-mips.c:20365 #, c-format msgid "" "-msmartmips\t\tgenerate smartmips instructions\n" "-mno-smartmips\t\tdo not generate smartmips instructions\n" msgstr "" -#: config/tc-mips.c:20098 +#: config/tc-mips.c:20368 #, c-format msgid "" "-mdsp\t\t\tgenerate DSP instructions\n" "-mno-dsp\t\tdo not generate DSP instructions\n" msgstr "" -#: config/tc-mips.c:20101 +#: config/tc-mips.c:20371 #, c-format msgid "" "-mdspr2\t\t\tgenerate DSP R2 instructions\n" "-mno-dspr2\t\tdo not generate DSP R2 instructions\n" msgstr "" -#: config/tc-mips.c:20104 +#: config/tc-mips.c:20374 #, c-format msgid "" "-mdspr3\t\t\tgenerate DSP R3 instructions\n" "-mno-dspr3\t\tdo not generate DSP R3 instructions\n" msgstr "" -#: config/tc-mips.c:20107 +#: config/tc-mips.c:20377 #, c-format msgid "" "-mmt\t\t\tgenerate MT instructions\n" "-mno-mt\t\t\tdo not generate MT instructions\n" msgstr "" -#: config/tc-mips.c:20110 +#: config/tc-mips.c:20380 #, c-format msgid "" "-mmcu\t\t\tgenerate MCU instructions\n" "-mno-mcu\t\tdo not generate MCU instructions\n" msgstr "" -#: config/tc-mips.c:20113 +#: config/tc-mips.c:20383 #, c-format msgid "" "-mmsa\t\t\tgenerate MSA instructions\n" "-mno-msa\t\tdo not generate MSA instructions\n" msgstr "" -#: config/tc-mips.c:20116 +#: config/tc-mips.c:20386 #, c-format msgid "" "-mxpa\t\t\tgenerate eXtended Physical Address (XPA) instructions\n" "-mno-xpa\t\tdo not generate eXtended Physical Address (XPA) instructions\n" msgstr "" -#: config/tc-mips.c:20119 +#: config/tc-mips.c:20389 #, c-format msgid "" "-mvirt\t\t\tgenerate Virtualization instructions\n" "-mno-virt\t\tdo not generate Virtualization instructions\n" msgstr "" -#: config/tc-mips.c:20122 +#: config/tc-mips.c:20392 #, c-format msgid "" "-mcrc\t\t\tgenerate CRC instructions\n" "-mno-crc\t\tdo not generate CRC instructions\n" msgstr "" -#: config/tc-mips.c:20125 +#: config/tc-mips.c:20395 #, c-format msgid "" "-mginv\t\t\tgenerate Global INValidate (GINV) instructions\n" "-mno-ginv\t\tdo not generate Global INValidate instructions\n" msgstr "" -#: config/tc-mips.c:20128 +#: config/tc-mips.c:20398 #, c-format msgid "" "-mloongson-mmi\t\tgenerate Loongson MultiMedia extensions Instructions (MMI) " @@ -12230,7 +12616,7 @@ msgid "" "Instructions\n" msgstr "" -#: config/tc-mips.c:20131 +#: config/tc-mips.c:20401 #, c-format msgid "" "-mloongson-cam\t\tgenerate Loongson Content Address Memory (CAM) " @@ -12239,32 +12625,49 @@ msgid "" "Instructions\n" msgstr "" -#: config/tc-mips.c:20134 +#: config/tc-mips.c:20404 #, c-format msgid "" "-mloongson-ext\t\tgenerate Loongson EXTensions (EXT) instructions\n" "-mno-loongson-ext\tdo not generate Loongson EXTensions Instructions\n" msgstr "" -#: config/tc-mips.c:20137 +#: config/tc-mips.c:20407 #, c-format msgid "" "-mloongson-ext2\t\tgenerate Loongson EXTensions R2 (EXT2) instructions\n" "-mno-loongson-ext2\tdo not generate Loongson EXTensions R2 Instructions\n" msgstr "" -#: config/tc-mips.c:20140 +#: config/tc-mips.c:20410 #, c-format msgid "" "-minsn32\t\tonly generate 32-bit microMIPS instructions\n" "-mno-insn32\t\tgenerate all microMIPS instructions\n" msgstr "" -#: config/tc-mips.c:20143 +#: config/tc-mips.c:20414 +#, c-format +msgid "" +"-mfix-loongson3-llsc\twork around Loongson3 LL/SC errata, default\n" +"-mno-fix-loongson3-llsc\tdisable work around Loongson3 LL/SC errata\n" +msgstr "" + +#: config/tc-mips.c:20418 +#, c-format +msgid "" +"-mfix-loongson3-llsc\twork around Loongson3 LL/SC errata\n" +"-mno-fix-loongson3-llsc\tdisable work around Loongson3 LL/SC errata, " +"default\n" +msgstr "" + +#: config/tc-mips.c:20422 #, c-format msgid "" "-mfix-loongson2f-jump\twork around Loongson2F JUMP instructions\n" "-mfix-loongson2f-nop\twork around Loongson2F NOP errata\n" +"-mfix-loongson3-llsc\twork around Loongson3 LL/SC errata\n" +"-mno-fix-loongson3-llsc\tdisable work around Loongson3 LL/SC errata\n" "-mfix-vr4120\t\twork around certain VR4120 errata\n" "-mfix-vr4130\t\twork around VR4130 mflo/mfhi errata\n" "-mfix-24k\t\tinsert a nop after ERET and DERET instructions\n" @@ -12280,7 +12683,7 @@ msgid "" "--break, --no-trap\tbreak exception on div by 0 and mult overflow\n" msgstr "" -#: config/tc-mips.c:20159 +#: config/tc-mips.c:20440 #, c-format msgid "" "-mhard-float\t\tallow floating-point instructions\n" @@ -12295,7 +12698,7 @@ msgid "" "-mnan=ENCODING\t\tselect an IEEE 754 NaN encoding convention, either of:\n" msgstr "" -#: config/tc-mips.c:20177 +#: config/tc-mips.c:20458 #, c-format msgid "" "-KPIC, -call_shared\tgenerate SVR4 position independent code\n" @@ -12309,26 +12712,26 @@ msgid "" "-mabi=ABI\t\tcreate ABI conformant object file for:\n" msgstr "" -#: config/tc-mips.c:20198 +#: config/tc-mips.c:20479 #, c-format msgid "-32\t\t\tcreate o32 ABI object file%s\n" msgstr "" -#: config/tc-mips.c:20200 config/tc-mips.c:20203 config/tc-mips.c:20206 +#: config/tc-mips.c:20481 config/tc-mips.c:20484 config/tc-mips.c:20487 msgid " (default)" msgstr "" -#: config/tc-mips.c:20201 +#: config/tc-mips.c:20482 #, c-format msgid "-n32\t\t\tcreate n32 ABI object file%s\n" msgstr "" -#: config/tc-mips.c:20204 +#: config/tc-mips.c:20485 #, c-format msgid "-64\t\t\tcreate 64 ABI object file%s\n" msgstr "" -#: config/tc-mips.c:20286 +#: config/tc-mips.c:20567 msgid "missing .end at end of assembly" msgstr "" @@ -12405,8 +12808,8 @@ msgstr "" msgid "specified location wasn't TETRA-aligned" msgstr "" -#: config/tc-mmix.c:973 config/tc-mmix.c:988 config/tc-mmix.c:4214 -#: config/tc-mmix.c:4230 +#: config/tc-mmix.c:973 config/tc-mmix.c:988 config/tc-mmix.c:4213 +#: config/tc-mmix.c:4229 msgid "unaligned data at an absolute location is not supported" msgstr "" @@ -12450,130 +12853,130 @@ msgstr "" msgid "can't create section %s" msgstr "" -#: config/tc-mmix.c:2136 +#: config/tc-mmix.c:2135 #, c-format msgid "can't set section flags for section %s" msgstr "" -#: config/tc-mmix.c:2157 +#: config/tc-mmix.c:2156 msgid "ESPEC without preceding BSPEC" msgstr "" -#: config/tc-mmix.c:2186 +#: config/tc-mmix.c:2185 msgid "missing local expression" msgstr "" -#: config/tc-mmix.c:2396 +#: config/tc-mmix.c:2395 msgid "operand out of range, instruction expanded" msgstr "" #. The BFD_RELOC_MMIX_LOCAL-specific message is supposed to be #. user-friendly, though a little bit non-substantial. -#: config/tc-mmix.c:2647 +#: config/tc-mmix.c:2646 msgid "directive LOCAL must be placed in code or data" msgstr "" -#: config/tc-mmix.c:2648 +#: config/tc-mmix.c:2647 msgid "internal confusion: relocation in a section without contents" msgstr "" -#: config/tc-mmix.c:2762 +#: config/tc-mmix.c:2761 msgid "internal: BFD_RELOC_MMIX_BASE_PLUS_OFFSET not resolved to section" msgstr "" -#: config/tc-mmix.c:2810 +#: config/tc-mmix.c:2809 msgid "no suitable GREG definition for operands" msgstr "" -#: config/tc-mmix.c:2869 +#: config/tc-mmix.c:2868 msgid "operands were not reducible at assembly-time" msgstr "" -#: config/tc-mmix.c:2896 +#: config/tc-mmix.c:2895 #, c-format msgid "cannot generate relocation type for symbol %s, code %s" msgstr "" -#: config/tc-mmix.c:2916 +#: config/tc-mmix.c:2915 #, c-format msgid "internal: unhandled label %s" msgstr "" -#: config/tc-mmix.c:2945 +#: config/tc-mmix.c:2944 msgid "[0-9]H labels may not appear alone on a line" msgstr "" -#: config/tc-mmix.c:2953 +#: config/tc-mmix.c:2952 msgid "[0-9]H labels do not mix with dot-pseudos" msgstr "" -#: config/tc-mmix.c:3041 +#: config/tc-mmix.c:3040 msgid "invalid characters in input" msgstr "" -#: config/tc-mmix.c:3147 +#: config/tc-mmix.c:3146 msgid "empty label field for IS" msgstr "" -#: config/tc-mmix.c:3473 +#: config/tc-mmix.c:3472 #, c-format msgid "internal: unexpected relax type %d:%d" msgstr "" -#: config/tc-mmix.c:3497 +#: config/tc-mmix.c:3496 msgid "BSPEC without ESPEC." msgstr "" -#: config/tc-mmix.c:3562 +#: config/tc-mmix.c:3561 msgid "LOC to section unknown or indeterminable at first pass" msgstr "" -#: config/tc-mmix.c:3734 +#: config/tc-mmix.c:3733 msgid "GREG expression too complicated" msgstr "" -#: config/tc-mmix.c:3749 +#: config/tc-mmix.c:3748 msgid "internal: GREG expression not resolved to section" msgstr "" -#: config/tc-mmix.c:3798 +#: config/tc-mmix.c:3797 msgid "register section has contents\n" msgstr "" -#: config/tc-mmix.c:3925 +#: config/tc-mmix.c:3924 msgid "section change from within a BSPEC/ESPEC pair is not supported" msgstr "" -#: config/tc-mmix.c:3946 +#: config/tc-mmix.c:3945 msgid "directive LOC from within a BSPEC/ESPEC pair is not supported" msgstr "" -#: config/tc-mmix.c:3956 +#: config/tc-mmix.c:3955 msgid "invalid LOC expression" msgstr "" -#: config/tc-mmix.c:4001 config/tc-mmix.c:4028 +#: config/tc-mmix.c:4000 config/tc-mmix.c:4027 msgid "LOC expression stepping backwards is not supported" msgstr "" #. We will only get here in rare cases involving #NO_APP, #. where the unterminated string is not recognized by the #. preformatting pass. -#: config/tc-mmix.c:4137 config/tc-mmix.c:4295 config/tc-z80.c:1748 +#: config/tc-mmix.c:4136 config/tc-mmix.c:4294 config/tc-z80.c:2808 msgid "unterminated string" msgstr "" -#: config/tc-mmix.c:4154 +#: config/tc-mmix.c:4153 msgid "BYTE expression not a pure number" msgstr "" #. Note that mmixal does not allow negative numbers in #. BYTE sequences, so neither should we. -#: config/tc-mmix.c:4163 +#: config/tc-mmix.c:4162 msgid "BYTE expression not in the range 0..255" msgstr "" -#: config/tc-mmix.c:4212 config/tc-mmix.c:4228 +#: config/tc-mmix.c:4211 config/tc-mmix.c:4227 msgid "data item with alignment larger than location" msgstr "" @@ -12590,15 +12993,15 @@ msgid "" "none yet\n" msgstr "" -#: config/tc-mn10200.c:896 config/tc-mn10300.c:1253 config/tc-s390.c:1697 +#: config/tc-mn10200.c:896 config/tc-mn10300.c:1253 config/tc-s390.c:1699 #: config/tc-v850.c:2328 #, c-format msgid "Unrecognized opcode: `%s'" msgstr "" #. xgettext:c-format. -#: config/tc-mn10200.c:1139 config/tc-mn10300.c:1821 config/tc-ppc.c:3759 -#: config/tc-s390.c:1610 config/tc-v850.c:3043 +#: config/tc-mn10200.c:1139 config/tc-mn10300.c:1821 config/tc-ppc.c:4069 +#: config/tc-s390.c:1612 config/tc-v850.c:3043 #, c-format msgid "junk at end of line: `%s'" msgstr "" @@ -12661,42 +13064,111 @@ msgstr "" msgid "pcrel too far BFD_RELOC_MOXIE_10" msgstr "" -#: config/tc-msp430.c:519 +#: config/tc-msp430.c:520 msgid ".profiler pseudo requires at least two operands." msgstr "" -#: config/tc-msp430.c:578 +#: config/tc-msp430.c:579 msgid "unknown profiling flag - ignored." msgstr "" -#: config/tc-msp430.c:594 +#: config/tc-msp430.c:595 msgid "ambiguous flags combination - '.profiler' directive ignored." msgstr "" -#: config/tc-msp430.c:604 +#: config/tc-msp430.c:605 msgid "profiling in absolute section?" msgstr "" -#: config/tc-msp430.c:1374 +#: config/tc-msp430.c:1380 #, c-format msgid "Unrecognised CPU errata name starting here: %s" msgstr "" -#: config/tc-msp430.c:1380 +#: config/tc-msp430.c:1386 #, c-format msgid "Expecting comma after CPU errata name, not: %s" msgstr "" -#: config/tc-msp430.c:1390 +#: config/tc-msp430.c:1396 msgid "MCU option requires a name\n" msgstr "" -#: config/tc-msp430.c:1428 +#: config/tc-msp430.c:1434 #, c-format msgid "unrecognised argument to -mcpu option '%s'" msgstr "" -#: config/tc-msp430.c:1603 +#: config/tc-msp430.c:1631 +#, c-format +msgid "bad arguments \"%s\" and/or \"%s\" in %s directive" +msgstr "" + +#: config/tc-msp430.c:1643 +#, c-format +msgid "file was compiled for the 430 ISA but the %s ISA is selected" +msgstr "" + +#: config/tc-msp430.c:1648 +msgid "file was compiled for the 430X ISA but the 430 ISA is selected" +msgstr "" + +#: config/tc-msp430.c:1652 +#, c-format +msgid "" +"unknown MSPABI build attribute value '%d' for OFBA_MSPABI_Tag_ISA(%d) in ." +"mspabi_attribute directive" +msgstr "" + +#: config/tc-msp430.c:1667 +msgid "" +"file was compiled for the small memory model, but the large memory model is " +"selected" +msgstr "" + +#: config/tc-msp430.c:1672 +msgid "" +"file was compiled for the large memory model, but the small memory model is " +"selected" +msgstr "" + +#: config/tc-msp430.c:1676 +#, c-format +msgid "" +"unknown MSPABI build attribute value '%d' for %s(%d) in .mspabi_attribute " +"directive" +msgstr "" + +#: config/tc-msp430.c:1688 +#, c-format +msgid "unknown MSPABI build attribute tag '%d' in .mspabi_attribute directive" +msgstr "" + +#: config/tc-msp430.c:1704 +msgid "" +"file was compiled assuming all data will be in the lower memory region, but " +"the upper region is in use" +msgstr "" + +#: config/tc-msp430.c:1709 +msgid "" +"file was compiled assuming data could be in the upper memory region, but the " +"lower data region is exclusively in use" +msgstr "" + +#: config/tc-msp430.c:1714 +#, c-format +msgid "" +"unknown GNU build attribute value '%d' for Tag_GNU_MSP430_Data_Region(%d) " +"in .gnu_attribute directive" +msgstr "" + +#: config/tc-msp430.c:1720 +#, c-format +msgid "internal: unexpected argument '%d' to msp430_object_attribute" +msgstr "" + +#: config/tc-msp430.c:1770 #, c-format msgid "" "MSP430 options:\n" @@ -12704,7 +13176,7 @@ msgid "" " -mcpu={430|430x|430xv2} - select microcontroller architecture\n" msgstr "" -#: config/tc-msp430.c:1607 +#: config/tc-msp430.c:1774 #, c-format msgid "" " -msilicon-errata=<name>[,<name>...] - enable fixups for silicon errata\n" @@ -12713,373 +13185,390 @@ msgid "" " supported errata names: cpu4, cpu8, cpu11, cpu12, cpu13, cpu19\n" msgstr "" -#: config/tc-msp430.c:1611 +#: config/tc-msp430.c:1778 #, c-format msgid "" " -mQ - enable relaxation at assembly time. DANGEROUS!\n" " -mP - enable polymorph instructions\n" msgstr "" -#: config/tc-msp430.c:1614 +#: config/tc-msp430.c:1781 #, c-format msgid " -ml - enable large code model\n" msgstr "" -#: config/tc-msp430.c:1616 +#: config/tc-msp430.c:1783 #, c-format msgid " -mN - do not insert NOPs after changing interrupts (default)\n" msgstr "" -#: config/tc-msp430.c:1618 +#: config/tc-msp430.c:1785 #, c-format msgid " -mn - insert a NOP after changing interrupts\n" msgstr "" -#: config/tc-msp430.c:1620 +#: config/tc-msp430.c:1787 #, c-format msgid " -mY - do not warn about missing NOPs after changing interrupts\n" msgstr "" -#: config/tc-msp430.c:1622 +#: config/tc-msp430.c:1789 #, c-format msgid " -my - warn about missing NOPs after changing interrupts (default)\n" msgstr "" -#: config/tc-msp430.c:1624 +#: config/tc-msp430.c:1791 +#, c-format +msgid "" +" -mU - for an instruction which changes interrupt state, but where it is " +"not\n" +" known how the state is changed, do not warn/insert NOPs\n" +msgstr "" + +#: config/tc-msp430.c:1794 +#, c-format +msgid "" +" -mu - for an instruction which changes interrupt state, but where it is " +"not\n" +" known how the state is changed, warn/insert NOPs (default)\n" +" -mn and/or -my are required for this to have any effect\n" +msgstr "" + +#: config/tc-msp430.c:1798 #, c-format msgid " -md - Force copying of data from ROM to RAM at startup\n" msgstr "" -#: config/tc-msp430.c:1626 +#: config/tc-msp430.c:1800 #, c-format msgid "" " -mdata-region={none|lower|upper|either} - select region data will be\n" " placed in.\n" msgstr "" -#: config/tc-msp430.c:1789 +#: config/tc-msp430.c:1963 #, c-format msgid "extra characters '%s' at end of immediate expression '%s'" msgstr "" -#: config/tc-msp430.c:1821 config/tc-msp430.c:2004 config/tc-msp430.c:2118 +#: config/tc-msp430.c:1995 config/tc-msp430.c:2178 config/tc-msp430.c:2292 #, c-format msgid "value 0x%x out of extended range." msgstr "" -#: config/tc-msp430.c:1827 +#: config/tc-msp430.c:2001 #, c-format msgid "value %d out of range. Use #lo() or #hi()" msgstr "" -#: config/tc-msp430.c:1873 +#: config/tc-msp430.c:2047 msgid "cpu4: not converting PUSH #4 to shorter form" msgstr "" -#: config/tc-msp430.c:1890 +#: config/tc-msp430.c:2064 msgid "cpu4: not converting PUSH #8 to shorter form" msgstr "" -#: config/tc-msp430.c:1904 +#: config/tc-msp430.c:2078 msgid "error: unsupported #foo() directive used on symbol" msgstr "" -#: config/tc-msp430.c:1921 +#: config/tc-msp430.c:2095 #, c-format msgid "unknown expression in operand %s. Use #llo(), #lhi(), #hlo() or #hhi()" msgstr "" -#: config/tc-msp430.c:1972 +#: config/tc-msp430.c:2146 #, c-format msgid "Registers cannot be used within immediate expression [%s]" msgstr "" -#: config/tc-msp430.c:1974 +#: config/tc-msp430.c:2148 #, c-format msgid "unknown operand %s" msgstr "" -#: config/tc-msp430.c:1991 +#: config/tc-msp430.c:2165 #, c-format msgid "extra characters '%s' at the end of absolute operand '%s'" msgstr "" -#: config/tc-msp430.c:2010 config/tc-msp430.c:2124 +#: config/tc-msp430.c:2184 config/tc-msp430.c:2298 #, c-format msgid "value out of range: 0x%x" msgstr "" -#: config/tc-msp430.c:2021 +#: config/tc-msp430.c:2195 #, c-format msgid "Registers cannot be used within absolute expression [%s]" msgstr "" -#: config/tc-msp430.c:2023 config/tc-msp430.c:2153 +#: config/tc-msp430.c:2197 config/tc-msp430.c:2327 #, c-format msgid "unknown expression in operand %s" msgstr "" -#: config/tc-msp430.c:2037 +#: config/tc-msp430.c:2211 #, c-format msgid "unknown addressing mode %s" msgstr "" -#: config/tc-msp430.c:2045 +#: config/tc-msp430.c:2219 #, c-format msgid "Bad register name %s" msgstr "" -#: config/tc-msp430.c:2056 +#: config/tc-msp430.c:2230 msgid "cannot use indirect addressing with the PC" msgstr "" -#: config/tc-msp430.c:2076 +#: config/tc-msp430.c:2250 msgid "')' required" msgstr "" -#: config/tc-msp430.c:2088 +#: config/tc-msp430.c:2262 #, c-format msgid "unknown operator %s. Did you mean X(Rn) or #[hl][hl][oi](CONST) ?" msgstr "" -#: config/tc-msp430.c:2095 +#: config/tc-msp430.c:2269 msgid "r2 should not be used in indexed addressing mode" msgstr "" -#: config/tc-msp430.c:2107 config/tc-msp430.c:2181 config/tc-msp430.c:3314 -#: config/tc-msp430.c:3382 config/tc-msp430.c:3499 config/tc-msp430.c:3921 -#: config/tc-msp430.c:4020 config/tc-msp430.c:4071 +#: config/tc-msp430.c:2281 config/tc-msp430.c:2355 config/tc-msp430.c:3500 +#: config/tc-msp430.c:3568 config/tc-msp430.c:3685 config/tc-msp430.c:4107 +#: config/tc-msp430.c:4206 config/tc-msp430.c:4257 #, c-format msgid "extra characters '%s' at end of operand '%s'" msgstr "" -#: config/tc-msp430.c:2139 config/tc-msp430.c:2141 +#: config/tc-msp430.c:2313 config/tc-msp430.c:2315 msgid "CPU8: Stack pointer accessed with an odd offset" msgstr "" -#: config/tc-msp430.c:2151 +#: config/tc-msp430.c:2325 #, c-format msgid "Registers cannot be used as a prefix of indexed expression [%s]" msgstr "" -#: config/tc-msp430.c:2215 +#: config/tc-msp430.c:2389 #, c-format msgid "Internal bug. Try to use 0(r%d) instead of @r%d" msgstr "" -#: config/tc-msp430.c:2225 +#: config/tc-msp430.c:2399 msgid "this addressing mode is not applicable for destination operand" msgstr "" -#: config/tc-msp430.c:2256 config/tc-msp430.c:2391 config/tc-msp430.c:2428 -#: config/tc-msp430.c:2458 config/tc-msp430.c:3250 config/tc-msp430.c:3333 -#: config/tc-msp430.c:3421 +#: config/tc-msp430.c:2430 config/tc-msp430.c:2565 config/tc-msp430.c:2602 +#: config/tc-msp430.c:2632 config/tc-msp430.c:3436 config/tc-msp430.c:3519 +#: config/tc-msp430.c:3607 #, c-format msgid "expected register as second argument of %s" msgstr "" -#: config/tc-msp430.c:2295 config/tc-msp430.c:2361 +#: config/tc-msp430.c:2469 config/tc-msp430.c:2535 #, c-format msgid "index value too big for %s" msgstr "" -#: config/tc-msp430.c:2312 config/tc-msp430.c:2378 config/tc-msp430.c:2485 +#: config/tc-msp430.c:2486 config/tc-msp430.c:2552 config/tc-msp430.c:2659 #, c-format msgid "unexpected addressing mode for %s" msgstr "" -#: config/tc-msp430.c:2398 config/tc-msp430.c:2435 config/tc-msp430.c:2465 +#: config/tc-msp430.c:2572 config/tc-msp430.c:2609 config/tc-msp430.c:2639 #, c-format msgid "constant generator destination register found in %s" msgstr "" -#: config/tc-msp430.c:2442 config/tc-msp430.c:2472 +#: config/tc-msp430.c:2616 config/tc-msp430.c:2646 #, c-format msgid "constant generator source register found in %s" msgstr "" -#: config/tc-msp430.c:2641 +#: config/tc-msp430.c:2826 msgid "no size modifier after period, .w assumed" msgstr "" -#: config/tc-msp430.c:2645 +#: config/tc-msp430.c:2830 #, c-format msgid "unrecognised instruction size modifier .%c" msgstr "" -#: config/tc-msp430.c:2659 +#: config/tc-msp430.c:2844 #, c-format msgid "junk found after instruction: %s.%s" msgstr "" -#: config/tc-msp430.c:2679 +#: config/tc-msp430.c:2864 #, c-format msgid "instruction %s.a does not exist" msgstr "" -#: config/tc-msp430.c:2693 +#: config/tc-msp430.c:2878 #, c-format msgid "instruction %s requires %d operand" msgid_plural "instruction %s requires %d operands" msgstr[0] "" msgstr[1] "" -#: config/tc-msp430.c:2711 +#: config/tc-msp430.c:2896 #, c-format msgid "instruction %s requires MSP430X mcu" msgstr "" -#: config/tc-msp430.c:2731 +#: config/tc-msp430.c:2916 #, c-format msgid "unable to repeat %s insn" msgstr "" -#: config/tc-msp430.c:2803 +#: config/tc-msp430.c:2988 msgid "CPU12: CMP/BIT with PC destination ignores next instruction" msgstr "" -#: config/tc-msp430.c:2811 +#: config/tc-msp430.c:2996 msgid "CPU19: Instruction setting CPUOFF must be followed by a NOP" msgstr "" -#: config/tc-msp430.c:2818 +#: config/tc-msp430.c:3003 msgid "internal error: unknown nop check state" msgstr "" -#: config/tc-msp430.c:2871 config/tc-msp430.c:2873 config/tc-msp430.c:3582 -#: config/tc-msp430.c:3584 +#: config/tc-msp430.c:3057 config/tc-msp430.c:3059 config/tc-msp430.c:3768 +#: config/tc-msp430.c:3770 msgid "CPU11: PC is destination of SR altering instruction" msgstr "" -#: config/tc-msp430.c:2888 config/tc-msp430.c:2890 config/tc-msp430.c:2995 -#: config/tc-msp430.c:2997 config/tc-msp430.c:3599 config/tc-msp430.c:3601 -#: config/tc-msp430.c:3820 config/tc-msp430.c:3822 +#: config/tc-msp430.c:3074 config/tc-msp430.c:3076 config/tc-msp430.c:3181 +#: config/tc-msp430.c:3183 config/tc-msp430.c:3785 config/tc-msp430.c:3787 +#: config/tc-msp430.c:4006 config/tc-msp430.c:4008 msgid "CPU13: SR is destination of SR altering instruction" msgstr "" -#: config/tc-msp430.c:2906 config/tc-msp430.c:3007 config/tc-msp430.c:3685 -#: config/tc-msp430.c:3854 +#: config/tc-msp430.c:3092 config/tc-msp430.c:3193 config/tc-msp430.c:3871 +#: config/tc-msp430.c:4040 msgid "repeat instruction used with non-register mode instruction" msgstr "" -#: config/tc-msp430.c:2981 config/tc-msp430.c:3340 config/tc-msp430.c:3810 +#: config/tc-msp430.c:3167 config/tc-msp430.c:3526 config/tc-msp430.c:3996 #, c-format msgid "%s: attempt to rotate the PC register" msgstr "" -#: config/tc-msp430.c:3232 config/tc-msp430.c:3308 +#: config/tc-msp430.c:3418 config/tc-msp430.c:3494 #, c-format msgid "expected #n as first argument of %s" msgstr "" -#: config/tc-msp430.c:3238 +#: config/tc-msp430.c:3424 #, c-format msgid "extra characters '%s' at end of constant expression '%s'" msgstr "" -#: config/tc-msp430.c:3243 config/tc-msp430.c:3319 +#: config/tc-msp430.c:3429 config/tc-msp430.c:3505 #, c-format msgid "expected constant expression as first argument of %s" msgstr "" -#: config/tc-msp430.c:3269 +#: config/tc-msp430.c:3455 msgid "Too many registers popped" msgstr "" -#: config/tc-msp430.c:3279 +#: config/tc-msp430.c:3465 msgid "Cannot use POPM to restore the SR register" msgstr "" -#: config/tc-msp430.c:3299 config/tc-msp430.c:3368 +#: config/tc-msp430.c:3485 config/tc-msp430.c:3554 #, c-format msgid "repeat count cannot be used with %s" msgstr "" -#: config/tc-msp430.c:3326 +#: config/tc-msp430.c:3512 #, c-format msgid "expected first argument of %s to be in the range 1-4" msgstr "" -#: config/tc-msp430.c:3391 +#: config/tc-msp430.c:3577 #, c-format msgid "expected value of first argument of %s to fit into 20-bits" msgstr "" -#: config/tc-msp430.c:3410 +#: config/tc-msp430.c:3596 #, c-format msgid "expected register name or constant as first argument of %s" msgstr "" -#: config/tc-msp430.c:3504 +#: config/tc-msp430.c:3690 msgid "expected constant value as argument to RPT" msgstr "" -#: config/tc-msp430.c:3510 +#: config/tc-msp430.c:3696 msgid "expected constant in the range 2..16" msgstr "" -#: config/tc-msp430.c:3525 +#: config/tc-msp430.c:3711 msgid "PC used as an argument to RPT" msgstr "" -#: config/tc-msp430.c:3531 +#: config/tc-msp430.c:3717 msgid "expected constant or register name as argument to RPT insn" msgstr "" -#: config/tc-msp430.c:3538 +#: config/tc-msp430.c:3724 msgid "Illegal emulated instruction" msgstr "" -#: config/tc-msp430.c:3839 +#: config/tc-msp430.c:4025 #, c-format msgid "%s instruction does not accept a .b suffix" msgstr "" -#: config/tc-msp430.c:3952 +#: config/tc-msp430.c:4138 #, c-format msgid "Even number required. Rounded to %d" msgstr "" -#: config/tc-msp430.c:3963 +#: config/tc-msp430.c:4149 #, c-format msgid "Wrong displacement %d" msgstr "" -#: config/tc-msp430.c:3985 +#: config/tc-msp430.c:4171 msgid "instruction requires label sans '$'" msgstr "" -#: config/tc-msp430.c:3989 +#: config/tc-msp430.c:4175 msgid "instruction requires label or value in range -511:512" msgstr "" -#: config/tc-msp430.c:3995 config/tc-msp430.c:4049 config/tc-msp430.c:4097 +#: config/tc-msp430.c:4181 config/tc-msp430.c:4235 config/tc-msp430.c:4283 msgid "instruction requires label" msgstr "" -#: config/tc-msp430.c:4003 config/tc-msp430.c:4055 +#: config/tc-msp430.c:4189 config/tc-msp430.c:4241 msgid "polymorphs are not enabled. Use -mP option to enable." msgstr "" -#: config/tc-msp430.c:4101 +#: config/tc-msp430.c:4287 msgid "Illegal instruction or not implemented opcode." msgstr "" -#: config/tc-msp430.c:4155 +#: config/tc-msp430.c:4341 msgid "can't find opcode" msgstr "" -#: config/tc-msp430.c:4672 +#: config/tc-msp430.c:4858 #, c-format msgid "internal inconsistency problem in %s: insn %04lx" msgstr "" -#: config/tc-msp430.c:4714 config/tc-msp430.c:4746 +#: config/tc-msp430.c:4900 config/tc-msp430.c:4932 #, c-format msgid "internal inconsistency problem in %s: ext. insn %04lx" msgstr "" -#: config/tc-msp430.c:4758 +#: config/tc-msp430.c:4944 #, c-format msgid "internal inconsistency problem in %s: %lx" msgstr "" @@ -13114,39 +13603,39 @@ msgstr "" msgid " -nosched disable scheduling restrictions\n" msgstr "" -#: config/tc-mt.c:224 +#: config/tc-mt.c:226 #, c-format msgid "instruction %s may not follow another memory access instruction." msgstr "" -#: config/tc-mt.c:230 +#: config/tc-mt.c:232 #, c-format msgid "instruction %s may not follow another I/O instruction." msgstr "" -#: config/tc-mt.c:236 +#: config/tc-mt.c:238 #, c-format msgid "%s may not occupy the delay slot of another branch insn." msgstr "" -#: config/tc-mt.c:261 +#: config/tc-mt.c:263 #, c-format msgid "operand references R%ld of previous instruction." msgstr "" -#: config/tc-mt.c:267 +#: config/tc-mt.c:269 #, c-format msgid "operand references R%ld of instruction before previous." msgstr "" -#: config/tc-mt.c:281 config/tc-mt.c:286 +#: config/tc-mt.c:283 config/tc-mt.c:288 #, c-format msgid "" "conditional branch or jal insn's operand references R%ld of previous " "arithmetic or logic insn." msgstr "" -#: config/tc-mt.c:349 +#: config/tc-mt.c:351 msgid "md_estimate_size_before_relax\n" msgstr "" @@ -13491,11 +13980,11 @@ msgid "Addend to unresolved symbol is not on word boundary." msgstr "" #. Should never here. -#: config/tc-nds32.c:7657 +#: config/tc-nds32.c:7654 msgid "Used FPU instructions requires enabling FPU extension" msgstr "" -#: config/tc-nds32.c:7854 +#: config/tc-nds32.c:7851 #, c-format msgid "Internal error: Unknown fixup type %d (`%s')" msgstr "" @@ -13571,135 +14060,135 @@ msgstr "" msgid "overflow in immediate argument" msgstr "" -#: config/tc-nios2.c:1310 config/tc-pru.c:669 +#: config/tc-nios2.c:1310 config/tc-pru.c:668 msgid "cannot create 64-bit relocation" msgstr "" -#: config/tc-nios2.c:1438 +#: config/tc-nios2.c:1436 #, c-format msgid "internal error: broken opcode descriptor for `%s %s'\n" msgstr "" -#: config/tc-nios2.c:1487 config/tc-pru.c:862 +#: config/tc-nios2.c:1485 config/tc-pru.c:863 msgid "can't create relocation" msgstr "" -#: config/tc-nios2.c:1518 config/tc-pru.c:996 config/tc-pru.c:1016 -#: config/tc-pru.c:1043 config/tc-pru.c:1062 config/tc-pru.c:1076 +#: config/tc-nios2.c:1516 config/tc-pru.c:997 config/tc-pru.c:1017 +#: config/tc-pru.c:1044 config/tc-pru.c:1063 config/tc-pru.c:1077 #, c-format msgid "unknown register %s" msgstr "" -#: config/tc-nios2.c:1526 +#: config/tc-nios2.c:1524 msgid "expecting control register" msgstr "" -#: config/tc-nios2.c:1528 +#: config/tc-nios2.c:1526 msgid "illegal use of control register" msgstr "" -#: config/tc-nios2.c:1530 +#: config/tc-nios2.c:1528 msgid "illegal use of coprocessor register" msgstr "" #. Should never get here if we passed validation. -#: config/tc-nios2.c:1532 config/tc-nios2.c:1846 config/tc-nios2.c:1988 -#: config/tc-nios2.c:2056 +#: config/tc-nios2.c:1530 config/tc-nios2.c:1844 config/tc-nios2.c:1986 +#: config/tc-nios2.c:2054 #, c-format msgid "invalid register %s" msgstr "" -#: config/tc-nios2.c:1540 +#: config/tc-nios2.c:1538 msgid "" "Register at (r1) can sometimes be corrupted by assembler optimizations.\n" "Use .set noat to turn off those optimizations (and this warning)." msgstr "" -#: config/tc-nios2.c:1545 +#: config/tc-nios2.c:1543 msgid "" "The debugger will corrupt bt (r25).\n" "If you don't need to debug this code use .set nobreak to turn off this " "warning." msgstr "" -#: config/tc-nios2.c:1549 +#: config/tc-nios2.c:1547 msgid "" "The debugger will corrupt sstatus/ba (r30).\n" "If you don't need to debug this code use .set nobreak to turn off this " "warning." msgstr "" -#: config/tc-nios2.c:1939 config/tc-nios2.c:1967 +#: config/tc-nios2.c:1937 config/tc-nios2.c:1965 msgid "r31 cannot be used with jmp; use ret instead" msgstr "" -#: config/tc-nios2.c:1982 +#: config/tc-nios2.c:1980 msgid "r31 cannot be used with jmpr.n; use ret.n instead" msgstr "" -#: config/tc-nios2.c:2595 config/tc-nios2.c:2622 config/tc-nios2.c:2649 -#: config/tc-nios2.c:2680 +#: config/tc-nios2.c:2593 config/tc-nios2.c:2620 config/tc-nios2.c:2647 +#: config/tc-nios2.c:2678 #, c-format msgid "Invalid constant operand %s" msgstr "" -#: config/tc-nios2.c:2997 config/tc-nios2.c:3021 config/tc-pru.c:1318 -#: config/tc-pru.c:1343 config/tc-pru.c:1363 +#: config/tc-nios2.c:2995 config/tc-nios2.c:3019 config/tc-pru.c:1319 +#: config/tc-pru.c:1344 config/tc-pru.c:1364 #, c-format msgid "badly formed expression near %s" msgstr "" -#: config/tc-nios2.c:3110 config/tc-nios2.c:3137 config/tc-pru.c:1412 -#: config/tc-pru.c:1437 config/tc-xtensa.c:2138 +#: config/tc-nios2.c:3108 config/tc-nios2.c:3135 config/tc-pru.c:1413 +#: config/tc-pru.c:1438 config/tc-xtensa.c:2128 msgid "too many arguments" msgstr "" -#: config/tc-nios2.c:3126 config/tc-pru.c:1389 +#: config/tc-nios2.c:3124 config/tc-pru.c:1390 #, c-format msgid "expecting %c near %s" msgstr "" #. we cannot recover from this. -#: config/tc-nios2.c:3277 +#: config/tc-nios2.c:3275 #, c-format msgid "unrecognized pseudo-instruction %s" msgstr "" -#: config/tc-nios2.c:3540 config/tc-tic6x.c:232 +#: config/tc-nios2.c:3538 config/tc-tic6x.c:232 #, c-format msgid "unknown architecture '%s'" msgstr "" -#: config/tc-nios2.c:3621 +#: config/tc-nios2.c:3619 msgid "Big-endian R2 is not supported." msgstr "" #. Unrecognised instruction - error. -#: config/tc-nios2.c:3789 config/tc-pru.c:1737 +#: config/tc-nios2.c:3787 config/tc-pru.c:1738 #, c-format msgid "unrecognised instruction %s" msgstr "" -#: config/tc-nios2.c:3909 config/tc-pru.c:1793 +#: config/tc-nios2.c:3907 config/tc-pru.c:1794 #, c-format msgid "can't represent relocation type %s" msgstr "" -#: config/tc-nios2.c:4002 +#: config/tc-nios2.c:4000 msgid "Bad .section directive: want a,s,w,x,M,S,G,T in string" msgstr "" -#: config/tc-nios2.c:4028 +#: config/tc-nios2.c:4026 #, c-format msgid "Illegal operands: %%tls_ldo in %d-byte data field" msgstr "" -#: config/tc-nios2.c:4040 config/tc-nios2.c:4058 config/tc-nios2.c:4065 +#: config/tc-nios2.c:4038 config/tc-nios2.c:4056 config/tc-nios2.c:4063 #, c-format msgid "Illegal operands: %%tls_ldo requires arguments in ()" msgstr "" -#: config/tc-nios2.c:4072 +#: config/tc-nios2.c:4070 #, c-format msgid "Illegal operands: garbage after %%tls_ldo()" msgstr "" @@ -13882,81 +14371,81 @@ msgstr "" msgid "Cannot find relocation type for symbol %s, code %d" msgstr "" -#: config/tc-pdp11.c:336 config/tc-pdp11.c:353 config/tc-pdp11.c:376 -#: config/tc-pdp11.c:382 config/tc-pdp11.c:395 +#: config/tc-pdp11.c:340 config/tc-pdp11.c:357 config/tc-pdp11.c:380 +#: config/tc-pdp11.c:386 config/tc-pdp11.c:399 msgid "Bad register name" msgstr "" -#: config/tc-pdp11.c:414 config/tc-pdp11.c:478 config/tc-pdp11.c:489 +#: config/tc-pdp11.c:418 config/tc-pdp11.c:482 config/tc-pdp11.c:493 msgid "Error in expression" msgstr "" -#: config/tc-pdp11.c:486 +#: config/tc-pdp11.c:490 msgid "Low order bits truncated in immediate float operand" msgstr "" -#: config/tc-pdp11.c:630 +#: config/tc-pdp11.c:634 msgid "Float AC not legal as integer operand" msgstr "" -#: config/tc-pdp11.c:650 +#: config/tc-pdp11.c:654 msgid "General register not legal as float operand" msgstr "" -#: config/tc-pdp11.c:683 +#: config/tc-pdp11.c:687 msgid "No instruction found" msgstr "" -#: config/tc-pdp11.c:693 config/tc-z80.c:1948 config/tc-z80.c:1961 +#: config/tc-pdp11.c:697 config/tc-z80.c:3249 config/tc-z80.c:3269 #, c-format msgid "Unknown instruction '%s'" msgstr "" -#: config/tc-pdp11.c:699 +#: config/tc-pdp11.c:703 #, c-format msgid "Unsupported instruction set extension: %s" msgstr "" -#: config/tc-pdp11.c:733 +#: config/tc-pdp11.c:737 msgid "operand is not an absolute constant" msgstr "" -#: config/tc-pdp11.c:741 +#: config/tc-pdp11.c:745 msgid "3-bit immediate out of range" msgstr "" -#: config/tc-pdp11.c:748 +#: config/tc-pdp11.c:752 msgid "6-bit immediate out of range" msgstr "" -#: config/tc-pdp11.c:755 +#: config/tc-pdp11.c:759 msgid "8-bit immediate out of range" msgstr "" -#: config/tc-pdp11.c:772 config/tc-pdp11.c:965 +#: config/tc-pdp11.c:776 config/tc-pdp11.c:969 msgid "Symbol expected" msgstr "" -#: config/tc-pdp11.c:777 +#: config/tc-pdp11.c:781 msgid "8-bit displacement out of range" msgstr "" -#: config/tc-pdp11.c:819 config/tc-pdp11.c:840 config/tc-pdp11.c:857 -#: config/tc-pdp11.c:878 config/tc-pdp11.c:895 config/tc-pdp11.c:916 -#: config/tc-pdp11.c:935 config/tc-pdp11.c:956 +#: config/tc-pdp11.c:823 config/tc-pdp11.c:844 config/tc-pdp11.c:861 +#: config/tc-pdp11.c:882 config/tc-pdp11.c:899 config/tc-pdp11.c:920 +#: config/tc-pdp11.c:939 config/tc-pdp11.c:960 msgid "Missing ','" msgstr "" -#: config/tc-pdp11.c:970 +#: config/tc-pdp11.c:974 msgid "6-bit displacement out of range" msgstr "" -#: config/tc-pdp11.c:991 config/tc-tilegx.c:1216 config/tc-tilepro.c:1102 +#: config/tc-pdp11.c:995 config/tc-tilegx.c:1216 config/tc-tilepro.c:1102 #: config/tc-vax.c:1950 msgid "Too many operands" msgstr "" -#: config/tc-pdp11.c:1441 +#: config/tc-pdp11.c:1445 #, c-format msgid "Can not represent %s relocation in this object file format" msgstr "" @@ -13981,12 +14470,12 @@ msgid "" "-big\t\t\tgenerate big endian code\n" msgstr "" -#: config/tc-pj.c:380 config/tc-sh.c:3600 config/tc-sh.c:3607 -#: config/tc-sh.c:3614 config/tc-sh.c:3621 +#: config/tc-pj.c:380 config/tc-sh.c:3594 config/tc-sh.c:3601 +#: config/tc-sh.c:3608 config/tc-sh.c:3615 msgid "pcrel too far" msgstr "" -#: config/tc-ppc.c:977 config/tc-ppc.c:985 config/tc-ppc.c:3292 +#: config/tc-ppc.c:977 config/tc-ppc.c:985 config/tc-ppc.c:3573 msgid "invalid register expression" msgstr "" @@ -14003,7 +14492,7 @@ msgstr "" msgid "%s unsupported" msgstr "" -#: config/tc-ppc.c:1278 config/tc-s390.c:431 config/tc-s390.c:438 +#: config/tc-ppc.c:1278 config/tc-s390.c:433 config/tc-s390.c:440 #, c-format msgid "invalid switch -m%s" msgstr "" @@ -14012,456 +14501,673 @@ msgstr "" msgid "--nops needs a numeric argument" msgstr "" -#: config/tc-ppc.c:1326 +#: config/tc-ppc.c:1345 +#, c-format +msgid "PowerPC options:\n" +msgstr "" + +#: config/tc-ppc.c:1347 +#, c-format +msgid "-a32 generate ELF32/XCOFF32\n" +msgstr "" + +#: config/tc-ppc.c:1350 +#, c-format +msgid "-a64 generate ELF64/XCOFF64\n" +msgstr "" + +#: config/tc-ppc.c:1352 +#, c-format +msgid "-u ignored\n" +msgstr "" + +#: config/tc-ppc.c:1354 +#, c-format +msgid "-mpwrx, -mpwr2 generate code for POWER/2 (RIOS2)\n" +msgstr "" + +#: config/tc-ppc.c:1356 +#, c-format +msgid "-mpwr generate code for POWER (RIOS1)\n" +msgstr "" + +#: config/tc-ppc.c:1358 +#, c-format +msgid "-m601 generate code for PowerPC 601\n" +msgstr "" + +#: config/tc-ppc.c:1360 #, c-format msgid "" -"PowerPC options:\n" -"-a32 generate ELF32/XCOFF32\n" -"-a64 generate ELF64/XCOFF64\n" -"-u ignored\n" -"-mpwrx, -mpwr2 generate code for POWER/2 (RIOS2)\n" -"-mpwr generate code for POWER (RIOS1)\n" -"-m601 generate code for PowerPC 601\n" "-mppc, -mppc32, -m603, -m604\n" " generate code for PowerPC 603/604\n" -"-m403 generate code for PowerPC 403\n" -"-m405 generate code for PowerPC 405\n" -"-m440 generate code for PowerPC 440\n" -"-m464 generate code for PowerPC 464\n" -"-m476 generate code for PowerPC 476\n" +msgstr "" + +#: config/tc-ppc.c:1363 +#, c-format +msgid "-m403 generate code for PowerPC 403\n" +msgstr "" + +#: config/tc-ppc.c:1365 +#, c-format +msgid "-m405 generate code for PowerPC 405\n" +msgstr "" + +#: config/tc-ppc.c:1367 +#, c-format +msgid "-m440 generate code for PowerPC 440\n" +msgstr "" + +#: config/tc-ppc.c:1369 +#, c-format +msgid "-m464 generate code for PowerPC 464\n" +msgstr "" + +#: config/tc-ppc.c:1371 +#, c-format +msgid "-m476 generate code for PowerPC 476\n" +msgstr "" + +#: config/tc-ppc.c:1373 +#, c-format +msgid "" "-m7400, -m7410, -m7450, -m7455\n" " generate code for PowerPC 7400/7410/7450/7455\n" +msgstr "" + +#: config/tc-ppc.c:1376 +#, c-format +msgid "" "-m750cl, -mgekko, -mbroadway\n" " generate code for PowerPC 750cl/Gekko/Broadway\n" -"-m821, -m850, -m860 generate code for PowerPC 821/850/860\n" msgstr "" -#: config/tc-ppc.c:1346 +#: config/tc-ppc.c:1379 +#, c-format +msgid "-m821, -m850, -m860 generate code for PowerPC 821/850/860\n" +msgstr "" + +#: config/tc-ppc.c:1381 +#, c-format +msgid "-mppc64, -m620 generate code for PowerPC 620/625/630\n" +msgstr "" + +#: config/tc-ppc.c:1383 #, c-format msgid "" -"-mppc64, -m620 generate code for PowerPC 620/625/630\n" "-mppc64bridge generate code for PowerPC 64, including bridge " "insns\n" -"-mbooke generate code for 32-bit PowerPC BookE\n" -"-ma2 generate code for A2 architecture\n" -"-mpower4, -mpwr4 generate code for Power4 architecture\n" +msgstr "" + +#: config/tc-ppc.c:1385 +#, c-format +msgid "-mbooke generate code for 32-bit PowerPC BookE\n" +msgstr "" + +#: config/tc-ppc.c:1387 +#, c-format +msgid "-ma2 generate code for A2 architecture\n" +msgstr "" + +#: config/tc-ppc.c:1389 +#, c-format +msgid "-mpower4, -mpwr4 generate code for Power4 architecture\n" +msgstr "" + +#: config/tc-ppc.c:1391 +#, c-format +msgid "" "-mpower5, -mpwr5, -mpwr5x\n" " generate code for Power5 architecture\n" -"-mpower6, -mpwr6 generate code for Power6 architecture\n" -"-mpower7, -mpwr7 generate code for Power7 architecture\n" -"-mpower8, -mpwr8 generate code for Power8 architecture\n" -"-mpower9, -mpwr9 generate code for Power9 architecture\n" +msgstr "" + +#: config/tc-ppc.c:1394 +#, c-format +msgid "-mpower6, -mpwr6 generate code for Power6 architecture\n" +msgstr "" + +#: config/tc-ppc.c:1396 +#, c-format +msgid "-mpower7, -mpwr7 generate code for Power7 architecture\n" +msgstr "" + +#: config/tc-ppc.c:1398 +#, c-format +msgid "-mpower8, -mpwr8 generate code for Power8 architecture\n" +msgstr "" + +#: config/tc-ppc.c:1400 +#, c-format +msgid "-mpower9, -mpwr9 generate code for Power9 architecture\n" +msgstr "" + +#: config/tc-ppc.c:1402 +#, c-format +msgid "" "-mcell generate code for Cell Broadband Engine " "architecture\n" +msgstr "" + +#: config/tc-ppc.c:1404 +#, c-format +msgid "" "-mcom generate code for Power/PowerPC common instructions\n" +msgstr "" + +#: config/tc-ppc.c:1406 +#, c-format +msgid "" "-many generate code for any architecture (PWR/PWRX/PPC)\n" msgstr "" -#: config/tc-ppc.c:1361 +#: config/tc-ppc.c:1408 +#, c-format +msgid "-maltivec generate code for AltiVec\n" +msgstr "" + +#: config/tc-ppc.c:1410 #, c-format msgid "" -"-maltivec generate code for AltiVec\n" "-mvsx generate code for Vector-Scalar (VSX) instructions\n" -"-me300 generate code for PowerPC e300 family\n" -"-me500, -me500x2 generate code for Motorola e500 core complex\n" +msgstr "" + +#: config/tc-ppc.c:1412 +#, c-format +msgid "-me300 generate code for PowerPC e300 family\n" +msgstr "" + +#: config/tc-ppc.c:1414 +#, c-format +msgid "-me500, -me500x2 generate code for Motorola e500 core complex\n" +msgstr "" + +#: config/tc-ppc.c:1416 +#, c-format +msgid "" "-me500mc, generate code for Freescale e500mc core complex\n" +msgstr "" + +#: config/tc-ppc.c:1418 +#, c-format +msgid "" "-me500mc64, generate code for Freescale e500mc64 core complex\n" +msgstr "" + +#: config/tc-ppc.c:1420 +#, c-format +msgid "" "-me5500, generate code for Freescale e5500 core complex\n" +msgstr "" + +#: config/tc-ppc.c:1422 +#, c-format +msgid "" "-me6500, generate code for Freescale e6500 core complex\n" -"-mspe generate code for Motorola SPE instructions\n" -"-mspe2 generate code for Freescale SPE2 instructions\n" -"-mvle generate code for Freescale VLE instructions\n" +msgstr "" + +#: config/tc-ppc.c:1424 +#, c-format +msgid "-mspe generate code for Motorola SPE instructions\n" +msgstr "" + +#: config/tc-ppc.c:1426 +#, c-format +msgid "-mspe2 generate code for Freescale SPE2 instructions\n" +msgstr "" + +#: config/tc-ppc.c:1428 +#, c-format +msgid "-mvle generate code for Freescale VLE instructions\n" +msgstr "" + +#: config/tc-ppc.c:1430 +#, c-format +msgid "" "-mtitan generate code for AppliedMicro Titan core complex\n" -"-mregnames Allow symbolic names for registers\n" -"-mno-regnames Do not allow symbolic names for registers\n" msgstr "" -#: config/tc-ppc.c:1377 +#: config/tc-ppc.c:1432 +#, c-format +msgid "-mregnames Allow symbolic names for registers\n" +msgstr "" + +#: config/tc-ppc.c:1434 +#, c-format +msgid "-mno-regnames Do not allow symbolic names for registers\n" +msgstr "" + +#: config/tc-ppc.c:1437 +#, c-format +msgid "-mrelocatable support for GCC's -mrelocatble option\n" +msgstr "" + +#: config/tc-ppc.c:1439 +#, c-format +msgid "-mrelocatable-lib support for GCC's -mrelocatble-lib option\n" +msgstr "" + +#: config/tc-ppc.c:1441 +#, c-format +msgid "-memb set PPC_EMB bit in ELF flags\n" +msgstr "" + +#: config/tc-ppc.c:1443 #, c-format msgid "" -"-mrelocatable support for GCC's -mrelocatble option\n" -"-mrelocatable-lib support for GCC's -mrelocatble-lib option\n" -"-memb set PPC_EMB bit in ELF flags\n" "-mlittle, -mlittle-endian, -le\n" " generate code for a little endian machine\n" +msgstr "" + +#: config/tc-ppc.c:1446 +#, c-format +msgid "" "-mbig, -mbig-endian, -be\n" " generate code for a big endian machine\n" -"-msolaris generate code for Solaris\n" -"-mno-solaris do not generate code for Solaris\n" -"-K PIC set EF_PPC_RELOCATABLE_LIB in ELF flags\n" -"-V print assembler version number\n" -"-Qy, -Qn ignored\n" msgstr "" -#: config/tc-ppc.c:1391 +#: config/tc-ppc.c:1449 +#, c-format +msgid "-msolaris generate code for Solaris\n" +msgstr "" + +#: config/tc-ppc.c:1451 +#, c-format +msgid "-mno-solaris do not generate code for Solaris\n" +msgstr "" + +#: config/tc-ppc.c:1453 +#, c-format +msgid "-K PIC set EF_PPC_RELOCATABLE_LIB in ELF flags\n" +msgstr "" + +#: config/tc-ppc.c:1455 +#, c-format +msgid "-V print assembler version number\n" +msgstr "" + +#: config/tc-ppc.c:1457 +#, c-format +msgid "-Qy, -Qn ignored\n" +msgstr "" + +#: config/tc-ppc.c:1460 #, c-format msgid "" "-nops=count when aligning, more than COUNT nops uses a branch\n" -"-ppc476-workaround warn if emitting data to code sections\n" msgstr "" -#: config/tc-ppc.c:1422 +#: config/tc-ppc.c:1462 +#, c-format +msgid "-ppc476-workaround warn if emitting data to code sections\n" +msgstr "" + +#: config/tc-ppc.c:1492 #, c-format msgid "unknown default cpu = %s, os = %s" msgstr "" -#: config/tc-ppc.c:1450 +#: config/tc-ppc.c:1520 msgid "neither Power nor PowerPC opcodes were selected." msgstr "" -#: config/tc-ppc.c:1510 +#: config/tc-ppc.c:1580 #, c-format msgid "mask trims opcode bits for %s" msgstr "" -#: config/tc-ppc.c:1520 +#: config/tc-ppc.c:1590 #, c-format msgid "operand index error for %s" msgstr "" -#: config/tc-ppc.c:1546 +#: config/tc-ppc.c:1616 #, c-format msgid "operand %d overlap in %s" msgstr "" -#: config/tc-ppc.c:1555 +#: config/tc-ppc.c:1625 #, c-format msgid "non-optional operand %d follows optional operand in %s" msgstr "" -#: config/tc-ppc.c:1605 +#: config/tc-ppc.c:1675 #, c-format msgid "powerpc_operands[%d].bitm invalid" msgstr "" -#: config/tc-ppc.c:1612 +#: config/tc-ppc.c:1682 #, c-format msgid "powerpc_operands[%d] duplicates powerpc_operands[%d]" msgstr "" -#: config/tc-ppc.c:1638 config/tc-ppc.c:1695 config/tc-ppc.c:1739 +#: config/tc-ppc.c:1708 config/tc-ppc.c:1765 config/tc-ppc.c:1809 +#: config/tc-ppc.c:1853 #, c-format msgid "major opcode is not sorted for %s" msgstr "" -#: config/tc-ppc.c:1644 +#: config/tc-ppc.c:1714 #, c-format msgid "%s is enabled by vle flag" msgstr "" -#: config/tc-ppc.c:1651 +#: config/tc-ppc.c:1721 #, c-format msgid "%s not disabled by vle flag" msgstr "" -#: config/tc-ppc.c:1665 config/tc-ppc.c:1710 config/tc-ppc.c:1754 +#: config/tc-ppc.c:1735 config/tc-ppc.c:1779 config/tc-ppc.c:1824 +#: config/tc-ppc.c:1868 #, c-format msgid "duplicate instruction %s" msgstr "" -#: config/tc-ppc.c:1778 +#: config/tc-ppc.c:1892 #, c-format msgid "duplicate macro %s" msgstr "" -#: config/tc-ppc.c:2141 -msgid "identifier+constant@got means identifier@got+constant" +#: config/tc-ppc.c:2268 +#, c-format +msgid "symbol+offset@%s means symbol@%s+offset" msgstr "" -#: config/tc-ppc.c:2161 -msgid "symbol+offset not supported for got tls" +#: config/tc-ppc.c:2288 +#, c-format +msgid "symbol+offset@%s not supported" msgstr "" -#: config/tc-ppc.c:2238 config/tc-ppc.c:4015 config/tc-ppc.c:7474 +#: config/tc-ppc.c:2365 config/tc-ppc.c:4361 config/tc-ppc.c:7888 msgid "data in executable section" msgstr "" -#: config/tc-ppc.c:2279 config/tc-ppc.c:5655 +#: config/tc-ppc.c:2406 config/tc-ppc.c:5998 msgid "expected comma after symbol-name: rest of line ignored." msgstr "" -#: config/tc-ppc.c:2312 config/tc-ppc.c:5691 +#: config/tc-ppc.c:2439 config/tc-ppc.c:6034 #, c-format msgid "ignoring attempt to re-define symbol `%s'." msgstr "" -#: config/tc-ppc.c:2320 +#: config/tc-ppc.c:2447 #, c-format msgid "length of .lcomm \"%s\" is already %ld. Not changed to %ld." msgstr "" -#: config/tc-ppc.c:2338 +#: config/tc-ppc.c:2465 msgid "common alignment not a power of 2" msgstr "" -#: config/tc-ppc.c:2380 +#: config/tc-ppc.c:2507 #, c-format msgid "expected comma after name `%s' in .localentry directive" msgstr "" -#: config/tc-ppc.c:2390 +#: config/tc-ppc.c:2517 msgid "missing expression in .localentry directive" msgstr "" -#: config/tc-ppc.c:2411 +#: config/tc-ppc.c:2538 #, c-format msgid ".localentry expression for `%s' is not a valid power of 2" msgstr "" -#: config/tc-ppc.c:2428 +#: config/tc-ppc.c:2555 #, c-format msgid ".localentry expression for `%s' does not evaluate to a constant" msgstr "" -#: config/tc-ppc.c:2443 +#: config/tc-ppc.c:2570 msgid "missing expression in .abiversion directive" msgstr "" -#: config/tc-ppc.c:2452 +#: config/tc-ppc.c:2579 msgid ".abiversion expression does not evaluate to a constant" msgstr "" -#: config/tc-ppc.c:2474 +#: config/tc-ppc.c:2601 msgid "unknown .gnu_attribute value" msgstr "" -#: config/tc-ppc.c:2526 +#: config/tc-ppc.c:2659 msgid "relocation cannot be done when using -mrelocatable" msgstr "" -#: config/tc-ppc.c:2572 +#: config/tc-ppc.c:2705 msgid "TOC section size exceeds 64k" msgstr "" -#: config/tc-ppc.c:2667 +#: config/tc-ppc.c:2800 #, c-format msgid "syntax error: invalid toc specifier `%s'" msgstr "" -#: config/tc-ppc.c:2681 +#: config/tc-ppc.c:2814 #, c-format msgid "syntax error: expected `]', found `%c'" msgstr "" -#: config/tc-ppc.c:2993 +#: config/tc-ppc.c:3234 #, c-format msgid "%s howto doesn't match size/pcrel in gas" msgstr "" -#: config/tc-ppc.c:3034 +#: config/tc-ppc.c:3314 #, c-format msgid "unrecognized opcode: `%s'" msgstr "" -#: config/tc-ppc.c:3209 +#: config/tc-ppc.c:3490 msgid "[tocv] symbol is not a toc symbol" msgstr "" -#: config/tc-ppc.c:3220 +#: config/tc-ppc.c:3501 msgid "unimplemented toc32 expression modifier" msgstr "" -#: config/tc-ppc.c:3225 +#: config/tc-ppc.c:3506 msgid "unimplemented toc64 expression modifier" msgstr "" -#: config/tc-ppc.c:3229 +#: config/tc-ppc.c:3510 #, c-format msgid "Unexpected return value [%d] from parse_toc_entry!\n" msgstr "" -#: config/tc-ppc.c:3512 +#: config/tc-ppc.c:3759 #, c-format msgid "@tls may not be used with \"%s\" operands" msgstr "" -#: config/tc-ppc.c:3515 +#: config/tc-ppc.c:3762 msgid "@tls may only be used in last operand" msgstr "" -#: config/tc-ppc.c:3536 config/tc-ppc.c:3543 config/tc-ppc.c:3555 +#: config/tc-ppc.c:3800 config/tc-ppc.c:3810 config/tc-ppc.c:3820 +#: config/tc-ppc.c:3835 #, c-format msgid "%s unsupported on this instruction" msgstr "" -#: config/tc-ppc.c:3599 +#: config/tc-ppc.c:3879 #, c-format msgid "assuming %s on symbol" msgstr "" -#: config/tc-ppc.c:3702 +#: config/tc-ppc.c:4002 msgid "unsupported relocation for DS offset field" msgstr "" -#: config/tc-ppc.c:3745 +#: config/tc-ppc.c:4055 #, c-format msgid "syntax error; found `%c', expected `%c'" msgstr "" -#: config/tc-ppc.c:3750 +#: config/tc-ppc.c:4060 #, c-format msgid "syntax error; end of line, expected `%c'" msgstr "" -#: config/tc-ppc.c:3815 config/tc-ppc.c:6767 +#: config/tc-ppc.c:4125 config/tc-ppc.c:7097 #, c-format msgid "instruction address is not a multiple of %d" msgstr "" -#: config/tc-ppc.c:3899 +#: config/tc-ppc.c:4245 msgid "wrong number of operands" msgstr "" -#: config/tc-ppc.c:3972 +#: config/tc-ppc.c:4318 msgid "bad .section directive: want a,e,v,w,x,M,S,G,T in string" msgstr "" -#: config/tc-ppc.c:4052 +#: config/tc-ppc.c:4398 msgid "missing size" msgstr "" -#: config/tc-ppc.c:4061 +#: config/tc-ppc.c:4407 msgid "negative size" msgstr "" -#: config/tc-ppc.c:4093 +#: config/tc-ppc.c:4439 msgid "missing real symbol name" msgstr "" -#: config/tc-ppc.c:4132 +#: config/tc-ppc.c:4478 msgid "attempt to redefine symbol" msgstr "" -#: config/tc-ppc.c:4395 +#: config/tc-ppc.c:4741 #, c-format msgid "no known dwarf XCOFF section for flag 0x%08x\n" msgstr "" -#: config/tc-ppc.c:4408 +#: config/tc-ppc.c:4754 #, c-format msgid "label %s was not defined in this dwarf section" msgstr "" -#: config/tc-ppc.c:4522 +#: config/tc-ppc.c:4868 msgid "the XCOFF file format does not support arbitrary sections" msgstr "" -#: config/tc-ppc.c:4593 +#: config/tc-ppc.c:4939 msgid ".ref outside .csect" msgstr "" -#: config/tc-ppc.c:4614 config/tc-ppc.c:4814 +#: config/tc-ppc.c:4960 config/tc-ppc.c:5160 msgid "missing symbol name" msgstr "" -#: config/tc-ppc.c:4644 +#: config/tc-ppc.c:4990 msgid "missing rename string" msgstr "" -#: config/tc-ppc.c:4674 config/tc-ppc.c:5213 read.c:3519 +#: config/tc-ppc.c:5020 config/tc-ppc.c:5559 read.c:3519 msgid "missing value" msgstr "" -#: config/tc-ppc.c:4692 +#: config/tc-ppc.c:5038 msgid "illegal .stabx expression; zero assumed" msgstr "" -#: config/tc-ppc.c:4724 +#: config/tc-ppc.c:5070 msgid "missing class" msgstr "" -#: config/tc-ppc.c:4733 +#: config/tc-ppc.c:5079 msgid "missing type" msgstr "" -#: config/tc-ppc.c:4760 +#: config/tc-ppc.c:5106 msgid ".stabx of storage class stsym must be within .bs/.es" msgstr "" -#: config/tc-ppc.c:5001 +#: config/tc-ppc.c:5347 msgid "nested .bs blocks" msgstr "" -#: config/tc-ppc.c:5032 +#: config/tc-ppc.c:5378 msgid ".es without preceding .bs" msgstr "" -#: config/tc-ppc.c:5205 +#: config/tc-ppc.c:5551 msgid "non-constant byte count" msgstr "" -#: config/tc-ppc.c:5279 +#: config/tc-ppc.c:5626 msgid ".tc not in .toc section" msgstr "" -#: config/tc-ppc.c:5297 +#: config/tc-ppc.c:5644 msgid ".tc with no label" msgstr "" -#: config/tc-ppc.c:5381 config/tc-s390.c:1966 +#: config/tc-ppc.c:5728 config/tc-s390.c:1968 msgid ".machine stack overflow" msgstr "" -#: config/tc-ppc.c:5388 config/tc-s390.c:1977 +#: config/tc-ppc.c:5735 config/tc-s390.c:1979 msgid ".machine stack underflow" msgstr "" -#: config/tc-ppc.c:5395 config/tc-s390.c:1989 +#: config/tc-ppc.c:5742 config/tc-s390.c:1991 #, c-format msgid "invalid machine `%s'" msgstr "" -#: config/tc-ppc.c:5427 +#: config/tc-ppc.c:5774 msgid "no previous section to return to, ignored." msgstr "" -#: config/tc-ppc.c:5700 +#: config/tc-ppc.c:6043 #, c-format msgid "length of .comm \"%s\" is already %ld. Not changed to %ld." msgstr "" #. Section Contents #. unknown -#: config/tc-ppc.c:5828 +#: config/tc-ppc.c:6171 msgid "unsupported section attribute -- 'a'" msgstr "" -#: config/tc-ppc.c:6011 +#: config/tc-ppc.c:6353 msgid "bad symbol suffix" msgstr "" -#: config/tc-ppc.c:6104 +#: config/tc-ppc.c:6446 msgid "unrecognized symbol suffix" msgstr "" -#: config/tc-ppc.c:6191 +#: config/tc-ppc.c:6509 msgid "two .function pseudo-ops with no intervening .ef" msgstr "" -#: config/tc-ppc.c:6204 +#: config/tc-ppc.c:6522 msgid ".ef with no preceding .function" msgstr "" -#: config/tc-ppc.c:6333 +#: config/tc-ppc.c:6649 #, c-format msgid "warning: symbol %s has no csect" msgstr "" -#: config/tc-ppc.c:6595 +#: config/tc-ppc.c:6911 msgid "symbol in .toc does not match any .tc" msgstr "" -#: config/tc-ppc.c:7238 +#: config/tc-ppc.c:7626 #, c-format msgid "%s unsupported as instruction fixup" msgstr "" -#: config/tc-ppc.c:7312 +#: config/tc-ppc.c:7725 #, c-format msgid "unsupported relocation against %s" msgstr "" -#: config/tc-ppc.c:7457 +#: config/tc-ppc.c:7871 #, c-format msgid "Gas failure, reloc value %d\n" msgstr "" @@ -14476,81 +15182,81 @@ msgstr "" msgid "immediate value %llu out of range %u to %lu" msgstr "" -#: config/tc-pru.c:698 +#: config/tc-pru.c:697 msgid "unexpected PC relative expression" msgstr "" -#: config/tc-pru.c:735 config/tc-pru.c:742 +#: config/tc-pru.c:734 config/tc-pru.c:741 msgid "residual low bits in pmem diff relocation" msgstr "" -#: config/tc-pru.c:938 config/tc-pru.c:971 +#: config/tc-pru.c:939 config/tc-pru.c:972 #, c-format msgid "trailing garbage after expression: %s" msgstr "" -#: config/tc-pru.c:943 +#: config/tc-pru.c:944 #, c-format msgid "expected expression, got %s" msgstr "" -#: config/tc-pru.c:976 +#: config/tc-pru.c:977 #, c-format msgid "expected constant expression, got %s" msgstr "" -#: config/tc-pru.c:1029 +#: config/tc-pru.c:1030 msgid "data transfer register cannot be halfword" msgstr "" -#: config/tc-pru.c:1048 +#: config/tc-pru.c:1049 msgid "destination register must be full-word" msgstr "" -#: config/tc-pru.c:1080 +#: config/tc-pru.c:1081 #, c-format msgid "cannot use partial register %s for addressing" msgstr "" -#: config/tc-pru.c:1093 +#: config/tc-pru.c:1094 #, c-format msgid "value %lu is too large for a byte operand" msgstr "" -#: config/tc-pru.c:1115 +#: config/tc-pru.c:1116 #, c-format msgid "loop count constant %ld is out of range [1..%d]" msgstr "" -#: config/tc-pru.c:1215 config/tc-pru.c:1241 +#: config/tc-pru.c:1216 config/tc-pru.c:1242 #, c-format msgid "byte count constant %ld is out of range [1..%d]" msgstr "" -#: config/tc-pru.c:1222 config/tc-pru.c:1248 +#: config/tc-pru.c:1223 config/tc-pru.c:1249 msgid "only r0 can be used as byte count register" msgstr "" -#: config/tc-pru.c:1224 config/tc-pru.c:1250 +#: config/tc-pru.c:1225 config/tc-pru.c:1251 msgid "only r0.bX byte fields of r0 can be used as byte count" msgstr "" -#: config/tc-pru.c:1263 +#: config/tc-pru.c:1264 #, c-format msgid "invalid constant table offset %ld" msgstr "" -#: config/tc-pru.c:1274 +#: config/tc-pru.c:1275 #, c-format msgid "invalid WakeOnStatus %ld" msgstr "" -#: config/tc-pru.c:1285 +#: config/tc-pru.c:1286 #, c-format msgid "invalid XFR WideBus Address %ld" msgstr "" -#: config/tc-pru.c:1545 +#: config/tc-pru.c:1546 #, c-format msgid "" "PRU options:\n" @@ -14558,186 +15264,190 @@ msgid "" " -mno-link-relax don't generate relocations for linker relaxation.\n" msgstr "" -#: config/tc-pru.c:1839 +#: config/tc-pru.c:1840 #, c-format msgid "Label \"%s\" matches a CPU register name" msgstr "" -#: config/tc-riscv.c:399 config/tc-riscv.c:464 +#: config/tc-riscv.c:412 config/tc-riscv.c:471 #, c-format msgid "internal error: can't hash `%s': %s" msgstr "" -#: config/tc-riscv.c:561 +#: config/tc-riscv.c:568 #, c-format msgid "internal: bad RISC-V opcode (mask error): %s %s" msgstr "" -#: config/tc-riscv.c:609 +#: config/tc-riscv.c:617 #, c-format msgid "internal: bad RISC-V opcode (unknown operand type `CF%c'): %s %s" msgstr "" -#: config/tc-riscv.c:616 +#: config/tc-riscv.c:624 #, c-format msgid "internal: bad RISC-V opcode (unknown operand type `C%c'): %s %s" msgstr "" -#: config/tc-riscv.c:660 config/tc-riscv.c:672 +#: config/tc-riscv.c:668 config/tc-riscv.c:680 #, c-format msgid "internal: bad RISC-V opcode (unknown operand type `F%c'): %s %s" msgstr "" -#: config/tc-riscv.c:679 +#: config/tc-riscv.c:687 #, c-format msgid "internal: bad RISC-V opcode (unknown operand type `%c'): %s %s" msgstr "" -#: config/tc-riscv.c:687 +#: config/tc-riscv.c:695 #, c-format msgid "internal: bad RISC-V opcode (bits 0x%lx undefined): %s %s" msgstr "" -#: config/tc-riscv.c:833 +#: config/tc-riscv.c:841 #, c-format msgid "Unsupported RISC-V relocation number %d" msgstr "" -#: config/tc-riscv.c:920 +#: config/tc-riscv.c:928 msgid "internal error: invalid macro" msgstr "" -#: config/tc-riscv.c:951 config/tc-riscv.c:1021 +#: config/tc-riscv.c:953 +msgid "internal error: vasprintf failed" +msgstr "" + +#: config/tc-riscv.c:982 config/tc-riscv.c:1053 msgid "unsupported large constant" msgstr "" -#: config/tc-riscv.c:953 +#: config/tc-riscv.c:984 #, c-format msgid "unknown CSR `%s'" msgstr "" -#: config/tc-riscv.c:956 +#: config/tc-riscv.c:987 #, c-format msgid "Instruction %s requires absolute expression" msgstr "" -#: config/tc-riscv.c:1177 +#: config/tc-riscv.c:1213 #, c-format msgid "Macro %s not implemented" msgstr "" -#: config/tc-riscv.c:1659 +#: config/tc-riscv.c:1700 msgid "bad value for funct6 field, value must be 0...64" msgstr "" -#: config/tc-riscv.c:1674 +#: config/tc-riscv.c:1715 msgid "bad value for funct4 field, value must be 0...15" msgstr "" -#: config/tc-riscv.c:1689 config/tc-riscv.c:2047 +#: config/tc-riscv.c:1730 config/tc-riscv.c:2087 msgid "bad value for funct3 field, value must be 0...7" msgstr "" -#: config/tc-riscv.c:1703 config/tc-riscv.c:2062 +#: config/tc-riscv.c:1744 config/tc-riscv.c:2102 msgid "bad value for funct2 field, value must be 0...3" msgstr "" -#: config/tc-riscv.c:1712 +#: config/tc-riscv.c:1753 #, c-format msgid "bad compressed FUNCT field specifier 'CF%c'\n" msgstr "" -#: config/tc-riscv.c:1719 +#: config/tc-riscv.c:1760 #, c-format msgid "bad RVC field specifier 'C%c'\n" msgstr "" -#: config/tc-riscv.c:1742 config/tc-riscv.c:1753 +#: config/tc-riscv.c:1783 config/tc-riscv.c:1794 #, c-format msgid "Improper shift amount (%lu)" msgstr "" -#: config/tc-riscv.c:1764 +#: config/tc-riscv.c:1805 #, c-format msgid "Improper CSRxI immediate (%lu)" msgstr "" -#: config/tc-riscv.c:1779 +#: config/tc-riscv.c:1820 #, c-format msgid "Improper CSR address (%lu)" msgstr "" -#: config/tc-riscv.c:1954 +#: config/tc-riscv.c:1997 msgid "lui expression not in range 0..1048575" msgstr "" -#: config/tc-riscv.c:1993 +#: config/tc-riscv.c:2033 msgid "" "bad value for opcode field, value must be 0...127 and lower 2 bits must be " "0x3" msgstr "" -#: config/tc-riscv.c:2009 +#: config/tc-riscv.c:2049 msgid "bad value for opcode field, value must be 0...2" msgstr "" -#: config/tc-riscv.c:2019 +#: config/tc-riscv.c:2059 #, c-format msgid "bad Opcode field specifier 'O%c'\n" msgstr "" -#: config/tc-riscv.c:2032 +#: config/tc-riscv.c:2072 msgid "bad value for funct7 field, value must be 0...127" msgstr "" -#: config/tc-riscv.c:2073 +#: config/tc-riscv.c:2113 #, c-format msgid "bad FUNCT field specifier 'F%c'\n" msgstr "" -#: config/tc-riscv.c:2087 +#: config/tc-riscv.c:2127 #, c-format msgid "internal error: bad argument type %c" msgstr "" -#: config/tc-riscv.c:2092 +#: config/tc-riscv.c:2132 msgid "illegal operands" msgstr "" -#: config/tc-riscv.c:2462 +#: config/tc-riscv.c:2508 #, c-format msgid "internal error: bad CFA value #%d" msgstr "" -#: config/tc-riscv.c:2543 +#: config/tc-riscv.c:2589 #, c-format msgid "internal error: bad relocation #%d" msgstr "" -#: config/tc-riscv.c:2548 +#: config/tc-riscv.c:2594 msgid "unsupported symbol subtraction" msgstr "" -#: config/tc-riscv.c:2643 +#: config/tc-riscv.c:2689 msgid ".option pop with no .option push" msgstr "" -#: config/tc-riscv.c:2653 +#: config/tc-riscv.c:2699 #, c-format msgid "Unrecognized .option directive: %s\n" msgstr "" -#: config/tc-riscv.c:2673 +#: config/tc-riscv.c:2719 #, c-format msgid "Unsupported use of %s" msgstr "" -#: config/tc-riscv.c:2828 +#: config/tc-riscv.c:2874 #, c-format msgid "cannot represent %s relocation in object file" msgstr "" -#: config/tc-riscv.c:2969 +#: config/tc-riscv.c:3015 #, c-format msgid "" "RISC-V options:\n" @@ -14751,17 +15461,17 @@ msgid "" " -mno-arch-attr don't generate RISC-V arch attribute\n" msgstr "" -#: config/tc-riscv.c:3000 +#: config/tc-riscv.c:3050 #, c-format msgid "unknown register `%s'" msgstr "" -#: config/tc-riscv.c:3021 +#: config/tc-riscv.c:3071 #, c-format msgid "non-constant .%cleb128 is not supported" msgstr "" -#: config/tc-riscv.c:3146 +#: config/tc-riscv.c:3196 msgid ".attribute arch must set before any instructions" msgstr "" @@ -14828,7 +15538,7 @@ msgstr "" msgid "%%%s() must be outermost term in expression" msgstr "" -#: config/tc-rl78.c:678 config/tc-rx.c:2250 +#: config/tc-rl78.c:678 config/tc-rx.c:2256 #, c-format msgid "unsupported constant size %d\n" msgstr "" @@ -14843,26 +15553,26 @@ msgstr "" msgid "%%hi8 only applies to .byte" msgstr "" -#: config/tc-rl78.c:716 config/tc-rx.c:2257 +#: config/tc-rl78.c:716 config/tc-rx.c:2263 msgid "difference of two symbols only supported with .long, .short, or .byte" msgstr "" -#: config/tc-rl78.c:1238 config/tc-rx.c:2184 +#: config/tc-rl78.c:1237 config/tc-rx.c:2190 #, c-format msgid "bad frag at %p : fix %ld addr %ld %ld \n" msgstr "" -#: config/tc-rl78.c:1454 +#: config/tc-rl78.c:1453 #, c-format msgid "value of %ld too large for 8-bit branch" msgstr "" -#: config/tc-rl78.c:1465 +#: config/tc-rl78.c:1464 #, c-format msgid "value of %ld too large for 16-bit branch" msgstr "" -#: config/tc-rl78.c:1514 config/tc-rx.c:2449 +#: config/tc-rl78.c:1513 config/tc-rx.c:2455 #, c-format msgid "Unknown reloc in md_apply_fix: %s" msgstr "" @@ -14982,115 +15692,145 @@ msgstr "" msgid "The .BTEQU pseudo-op is not implemented." msgstr "" -#: config/tc-rx.c:2114 +#: config/tc-rx.c:2121 msgid "invalid immediate size" msgstr "" -#: config/tc-rx.c:2133 +#: config/tc-rx.c:2140 msgid "invalid immediate field position" msgstr "" -#: config/tc-rx.c:2301 +#: config/tc-rx.c:2307 #, c-format msgid "jump not 3..10 bytes away (is %d)" msgstr "" -#: config/tc-rx.c:2692 +#: config/tc-rx.c:2698 msgid "" "Use of an RX string instruction detected in a file being assembled without " "string instruction support" msgstr "" -#: config/tc-s12z.c:342 +#: config/tc-s12z.c:148 +msgid "" +"\n" +"s12z options:\n" +msgstr "" + +#: config/tc-s12z.c:149 +msgid "" +" -mreg-prefix=PREFIX set a prefix used to indicate register names " +"(default none)\n" +msgstr "" + +#: config/tc-s12z.c:150 +msgid "" +" -mdollar-hex the prefix '$' instead of '0x' is used to indicate " +"literal hexadecimal constants\n" +msgstr "" + +#: config/tc-s12z.c:317 +msgid "A non-constant expression is not permitted here" +msgstr "" + +#: config/tc-s12z.c:434 #, c-format msgid "Expecting '%c'" msgstr "" -#: config/tc-s12z.c:408 config/tc-s12z.c:509 +#: config/tc-s12z.c:457 +msgid "An immediate value in a source operand is inappropriate" +msgstr "" + +#: config/tc-s12z.c:506 config/tc-s12z.c:607 msgid "Bad operand for constant offset" msgstr "" -#: config/tc-s12z.c:436 config/tc-s12z.c:527 +#: config/tc-s12z.c:534 config/tc-s12z.c:625 msgid "Invalid operand for register offset" msgstr "" -#: config/tc-s12z.c:542 +#: config/tc-s12z.c:640 msgid "Invalid register for postdecrement operation" msgstr "" -#: config/tc-s12z.c:578 +#: config/tc-s12z.c:676 msgid "Invalid register for preincrement operation" msgstr "" -#: config/tc-s12z.c:596 +#: config/tc-s12z.c:694 msgid "Invalid register for predecrement operation" msgstr "" -#: config/tc-s12z.c:715 +#: config/tc-s12z.c:813 msgid "Garbage at end of instruction" msgstr "" -#: config/tc-s12z.c:835 +#: config/tc-s12z.c:942 msgid "Offset is outside of 15 bit range" msgstr "" -#: config/tc-s12z.c:951 +#: config/tc-s12z.c:1058 msgid "Bad size" msgstr "" -#: config/tc-s12z.c:996 config/tc-s12z.c:1056 config/tc-s12z.c:1118 -#: config/tc-s12z.c:1183 +#: config/tc-s12z.c:1103 config/tc-s12z.c:1163 config/tc-s12z.c:1225 +#: config/tc-s12z.c:1290 msgid "BAD MUL" msgstr "" -#: config/tc-s12z.c:1323 +#: config/tc-s12z.c:1430 #, c-format msgid "Source register for %s is no larger than the destination register" msgstr "" -#: config/tc-s12z.c:1348 +#: config/tc-s12z.c:1433 +msgid "The destination and source registers are identical" +msgstr "" + +#: config/tc-s12z.c:1457 #, c-format msgid "Immediate value %ld is out of range for instruction %s" msgstr "" -#: config/tc-s12z.c:1419 +#: config/tc-s12z.c:1528 #, c-format msgid "trap value %ld is not valid" msgstr "" -#: config/tc-s12z.c:1830 +#: config/tc-s12z.c:1968 msgid "Shift value should be in the range [0,31]" msgstr "" -#: config/tc-s12z.c:1877 +#: config/tc-s12z.c:2015 msgid "Bad shift mode" msgstr "" -#: config/tc-s12z.c:1890 +#: config/tc-s12z.c:2028 msgid "Bad shift *direction" msgstr "" -#: config/tc-s12z.c:2148 +#: config/tc-s12z.c:2286 #, c-format msgid "Immediate operand %ld is inappropriate for size of instruction" msgstr "" -#: config/tc-s12z.c:2239 config/tc-s12z.c:2308 config/tc-s12z.c:2376 +#: config/tc-s12z.c:2377 config/tc-s12z.c:2446 config/tc-s12z.c:2514 #, c-format msgid "Invalid width value for %s" msgstr "" -#: config/tc-s12z.c:2252 config/tc-s12z.c:2321 config/tc-s12z.c:2389 +#: config/tc-s12z.c:2390 config/tc-s12z.c:2459 config/tc-s12z.c:2527 #, c-format msgid "Invalid offset value for %s" msgstr "" -#: config/tc-s12z.c:3694 +#: config/tc-s12z.c:3832 #, c-format msgid "Invalid instruction: \"%s\"" msgstr "" -#: config/tc-s12z.c:3695 +#: config/tc-s12z.c:3833 #, c-format msgid "First invalid token: \"%s\"" msgstr "" @@ -15099,22 +15839,22 @@ msgstr "" msgid "Invalid default architecture, broken assembler." msgstr "" -#: config/tc-s390.c:372 +#: config/tc-s390.c:374 #, c-format msgid "no such machine extension `%s'" msgstr "" -#: config/tc-s390.c:383 +#: config/tc-s390.c:385 #, c-format msgid "junk at end of machine string, first unrecognized character is `%c'" msgstr "" -#: config/tc-s390.c:450 config/tc-sparc.c:489 +#: config/tc-s390.c:452 config/tc-sparc.c:489 #, c-format msgid "invalid architecture -A%s" msgstr "" -#: config/tc-s390.c:473 +#: config/tc-s390.c:475 #, c-format msgid "" " S390 options:\n" @@ -15125,150 +15865,150 @@ msgid "" " -m64 Set file format to 64 bit format\n" msgstr "" -#: config/tc-s390.c:480 +#: config/tc-s390.c:482 #, c-format msgid "" " -V print assembler version number\n" " -Qy, -Qn ignored\n" msgstr "" -#: config/tc-s390.c:537 +#: config/tc-s390.c:539 #, c-format msgid "Internal assembler error for instruction %s" msgstr "" -#: config/tc-s390.c:564 +#: config/tc-s390.c:566 msgid "The 64 bit file format is used without esame instructions." msgstr "" -#: config/tc-s390.c:580 +#: config/tc-s390.c:582 #, c-format msgid "Internal assembler error for instruction format %s" msgstr "" -#: config/tc-s390.c:626 +#: config/tc-s390.c:628 #, c-format msgid "operand out of range (%s not between %ld and %ld)" msgstr "" -#: config/tc-s390.c:851 +#: config/tc-s390.c:853 #, c-format msgid "identifier+constant@%s means identifier@%s+constant" msgstr "" -#: config/tc-s390.c:932 +#: config/tc-s390.c:934 msgid "Can't handle O_big in s390_exp_compare" msgstr "" -#: config/tc-s390.c:1014 +#: config/tc-s390.c:1016 msgid "Invalid suffix for literal pool entry" msgstr "" -#: config/tc-s390.c:1071 +#: config/tc-s390.c:1073 msgid "Big number is too big" msgstr "" -#: config/tc-s390.c:1220 +#: config/tc-s390.c:1222 msgid "relocation not applicable" msgstr "" -#: config/tc-s390.c:1350 +#: config/tc-s390.c:1352 msgid "invalid length field specified" msgstr "" -#: config/tc-s390.c:1354 +#: config/tc-s390.c:1356 msgid "index register specified but zero" msgstr "" -#: config/tc-s390.c:1358 +#: config/tc-s390.c:1360 msgid "base register specified but zero" msgstr "" -#: config/tc-s390.c:1362 +#: config/tc-s390.c:1364 msgid "odd numbered general purpose register specified as register pair" msgstr "" -#: config/tc-s390.c:1370 +#: config/tc-s390.c:1372 msgid "" "invalid floating point register pair. Valid fp register pair operands are " "0, 1, 4, 5, 8, 9, 12 or 13." msgstr "" -#: config/tc-s390.c:1459 +#: config/tc-s390.c:1461 msgid "invalid operand suffix" msgstr "" -#: config/tc-s390.c:1482 +#: config/tc-s390.c:1484 msgid "syntax error; missing '(' after displacement" msgstr "" -#: config/tc-s390.c:1499 config/tc-s390.c:1545 config/tc-s390.c:1577 +#: config/tc-s390.c:1501 config/tc-s390.c:1547 config/tc-s390.c:1579 msgid "syntax error; expected ','" msgstr "" -#: config/tc-s390.c:1531 +#: config/tc-s390.c:1533 msgid "syntax error; missing ')' after base register" msgstr "" -#: config/tc-s390.c:1562 +#: config/tc-s390.c:1564 msgid "syntax error; ')' not allowed here" msgstr "" -#: config/tc-s390.c:1702 +#: config/tc-s390.c:1704 #, c-format msgid "Opcode %s not available in this mode" msgstr "" -#: config/tc-s390.c:1757 config/tc-s390.c:1780 config/tc-s390.c:1793 +#: config/tc-s390.c:1759 config/tc-s390.c:1782 config/tc-s390.c:1795 msgid "Invalid .insn format\n" msgstr "" -#: config/tc-s390.c:1765 +#: config/tc-s390.c:1767 #, c-format msgid "Unrecognized opcode format: `%s'" msgstr "" -#: config/tc-s390.c:1796 +#: config/tc-s390.c:1798 msgid "second operand of .insn not a constant\n" msgstr "" -#: config/tc-s390.c:1799 +#: config/tc-s390.c:1801 msgid "missing comma after insn constant\n" msgstr "" -#: config/tc-s390.c:2038 +#: config/tc-s390.c:2040 msgid ".machinemode stack overflow" msgstr "" -#: config/tc-s390.c:2045 +#: config/tc-s390.c:2047 msgid ".machinemode stack underflow" msgstr "" -#: config/tc-s390.c:2062 +#: config/tc-s390.c:2064 #, c-format msgid "invalid machine mode `%s'" msgstr "" -#: config/tc-s390.c:2264 +#: config/tc-s390.c:2266 #, c-format msgid "cannot emit relocation %s against subsy symbol %s" msgstr "" -#: config/tc-s390.c:2381 +#: config/tc-s390.c:2383 msgid "unsupported relocation type" msgstr "" -#: config/tc-s390.c:2436 +#: config/tc-s390.c:2438 #, c-format msgid "cannot emit PC relative %s relocation%s%s" msgstr "" -#: config/tc-s390.c:2575 +#: config/tc-s390.c:2577 #, c-format msgid "Gas failure, reloc type %s\n" msgstr "" -#: config/tc-s390.c:2577 +#: config/tc-s390.c:2579 #, c-format msgid "Gas failure, reloc type #%i\n" msgstr "" @@ -15285,217 +16025,217 @@ msgstr "" msgid "This architecture doesn't support atomic instruction" msgstr "" -#: config/tc-score.c:469 +#: config/tc-score.c:468 msgid "S+core register expected" msgstr "" -#: config/tc-score.c:470 +#: config/tc-score.c:469 msgid "S+core special-register expected" msgstr "" -#: config/tc-score.c:471 +#: config/tc-score.c:470 msgid "S+core co-processor register expected" msgstr "" -#: config/tc-score.c:1074 +#: config/tc-score.c:1073 msgid "Using temp register (r1)" msgstr "" -#: config/tc-score.c:1093 +#: config/tc-score.c:1092 #, c-format msgid "register expected, not '%.100s'" msgstr "" -#: config/tc-score.c:1149 config/tc-score.c:5482 +#: config/tc-score.c:1148 config/tc-score.c:5481 msgid "rd must be even number." msgstr "" -#: config/tc-score.c:1513 config/tc-score.c:1520 +#: config/tc-score.c:1512 config/tc-score.c:1519 #, c-format msgid "invalid constant: %d bit expression not in range %u..%u" msgstr "" -#: config/tc-score.c:1526 config/tc-score.c:1533 config/tc-score.c:2895 -#: config/tc-score.c:2900 config/tc-score.c:3165 config/tc-score.c:3170 -#: config/tc-score.c:3462 +#: config/tc-score.c:1525 config/tc-score.c:1532 config/tc-score.c:2894 +#: config/tc-score.c:2899 config/tc-score.c:3164 config/tc-score.c:3169 +#: config/tc-score.c:3461 #, c-format msgid "invalid constant: %d bit expression not in range %d..%d" msgstr "" -#: config/tc-score.c:1558 +#: config/tc-score.c:1557 msgid "invalid constant: bit expression not defined" msgstr "" -#: config/tc-score.c:2068 +#: config/tc-score.c:2067 msgid "Using temp register(r1)" msgstr "" -#: config/tc-score.c:2082 +#: config/tc-score.c:2081 #, c-format msgid "low register (r0-r15) expected, not '%.100s'" msgstr "" -#: config/tc-score.c:2144 config/tc-score.c:3482 config/tc-score.c:3650 -#: config/tc-score.c:3695 +#: config/tc-score.c:2143 config/tc-score.c:3481 config/tc-score.c:3649 +#: config/tc-score.c:3694 #, c-format msgid "missing [" msgstr "" -#: config/tc-score.c:2158 config/tc-score.c:3103 config/tc-score.c:3305 -#: config/tc-score.c:3321 config/tc-score.c:3392 config/tc-score.c:3447 -#: config/tc-score.c:3671 config/tc-score.c:3716 config/tc-score.c:3865 -#: config/tc-score.c:3919 config/tc-score.c:3965 +#: config/tc-score.c:2157 config/tc-score.c:3102 config/tc-score.c:3304 +#: config/tc-score.c:3320 config/tc-score.c:3391 config/tc-score.c:3446 +#: config/tc-score.c:3670 config/tc-score.c:3715 config/tc-score.c:3864 +#: config/tc-score.c:3918 config/tc-score.c:3964 #, c-format msgid "missing ]" msgstr "" -#: config/tc-score.c:2347 +#: config/tc-score.c:2346 #, c-format msgid "Fix data dependency: %s %s -- %s %s (insert %d nop!/%d)" msgstr "" -#: config/tc-score.c:2366 +#: config/tc-score.c:2365 #, c-format msgid "Fix data dependency: %s %s -- %s %s (insert 1 pflush/%d)" msgstr "" -#: config/tc-score.c:2382 config/tc-score.c:2389 +#: config/tc-score.c:2381 config/tc-score.c:2388 #, c-format msgid "data dependency: %s %s -- %s %s (%d/%d bubble)" msgstr "" -#: config/tc-score.c:2838 +#: config/tc-score.c:2837 msgid "address offset must be half word alignment" msgstr "" -#: config/tc-score.c:2846 +#: config/tc-score.c:2845 msgid "address offset must be word alignment" msgstr "" -#: config/tc-score.c:2986 config/tc-score.c:3123 +#: config/tc-score.c:2985 config/tc-score.c:3122 msgid "register same as write-back base" msgstr "" -#: config/tc-score.c:3093 +#: config/tc-score.c:3092 msgid "pre-indexed expression expected" msgstr "" -#: config/tc-score.c:3422 +#: config/tc-score.c:3421 #, c-format msgid "invalid register number: %d is not in [r0--r7]" msgstr "" -#: config/tc-score.c:3439 +#: config/tc-score.c:3438 msgid "comma is expected" msgstr "" -#: config/tc-score.c:3470 +#: config/tc-score.c:3469 #, c-format msgid "invalid constant: %d is not word align integer" msgstr "" -#: config/tc-score.c:3509 config/tc-score.c:3552 +#: config/tc-score.c:3508 config/tc-score.c:3551 msgid "invalid constant: 32 bit expression not word align" msgstr "" -#: config/tc-score.c:3518 config/tc-score.c:3561 +#: config/tc-score.c:3517 config/tc-score.c:3560 msgid "invalid constant: 32 bit expression not in range [0, 0xffffffff]" msgstr "" -#: config/tc-score.c:3594 +#: config/tc-score.c:3593 msgid "" "invalid constant: 32 bit expression not in range [-0x80000000, 0x7fffffff]" msgstr "" -#: config/tc-score.c:3783 config/tc-score.c:3811 +#: config/tc-score.c:3782 config/tc-score.c:3810 msgid "imm5 should >= 2" msgstr "" -#: config/tc-score.c:3788 config/tc-score.c:3817 +#: config/tc-score.c:3787 config/tc-score.c:3816 msgid "reg should <= 31" msgstr "" -#: config/tc-score.c:3859 config/tc-score.c:3910 +#: config/tc-score.c:3858 config/tc-score.c:3909 msgid "missing +" msgstr "" -#: config/tc-score.c:3903 +#: config/tc-score.c:3902 #, c-format msgid "%s register same as write-back base" msgstr "" -#: config/tc-score.c:3905 +#: config/tc-score.c:3904 msgid "destination" msgstr "" -#: config/tc-score.c:3905 +#: config/tc-score.c:3904 msgid "source" msgstr "" -#: config/tc-score.c:4236 config/tc-score.c:4312 config/tc-score.c:4943 +#: config/tc-score.c:4235 config/tc-score.c:4311 config/tc-score.c:4942 msgid "expression error" msgstr "" -#: config/tc-score.c:4318 +#: config/tc-score.c:4317 msgid "value not in range [-0xffffffff, 0xffffffff]" msgstr "" -#: config/tc-score.c:4346 +#: config/tc-score.c:4345 msgid "li rd label isn't correct instruction form" msgstr "" -#: config/tc-score.c:4513 config/tc-score.c:4665 config/tc-score.c:5194 -#: config/tc-score.c:5222 +#: config/tc-score.c:4512 config/tc-score.c:4664 config/tc-score.c:5193 +#: config/tc-score.c:5221 msgid "lacking label " msgstr "" -#: config/tc-score.c:4893 +#: config/tc-score.c:4892 msgid "s3_PIC code offset overflow (max 16 signed bits)" msgstr "" -#: config/tc-score.c:4949 +#: config/tc-score.c:4948 msgid "value not in range [0, 0x7fffffff]" msgstr "" -#: config/tc-score.c:4954 +#: config/tc-score.c:4953 msgid "end on line error" msgstr "" -#: config/tc-score.c:5201 +#: config/tc-score.c:5200 msgid "invalid constant: 25 bit expression not in range [-16777216, 16777215]" msgstr "" -#: config/tc-score.c:5228 +#: config/tc-score.c:5227 msgid "invalid constant: 20 bit expression not in range -2^19..2^19-1" msgstr "" -#: config/tc-score.c:5261 +#: config/tc-score.c:5260 msgid "lacking label" msgstr "" -#: config/tc-score.c:5266 +#: config/tc-score.c:5265 msgid "invalid constant: 10 bit expression not in range [-2^9, 2^9-1]" msgstr "" -#: config/tc-score.c:5362 +#: config/tc-score.c:5361 msgid "pce instruction error (16 bit || 16 bit)." msgstr "" -#: config/tc-score.c:5380 config/tc-score.c:5404 config/tc-score.c:5431 -#: config/tc-score.c:5460 config/tc-score.c:5509 +#: config/tc-score.c:5379 config/tc-score.c:5403 config/tc-score.c:5430 +#: config/tc-score.c:5459 config/tc-score.c:5508 msgid "score3d instruction." msgstr "" -#: config/tc-score.c:6027 +#: config/tc-score.c:6026 msgid "Unsupported use of .gpword" msgstr "" -#: config/tc-score.c:6123 +#: config/tc-score.c:6122 #, c-format msgid "BSS length (%d) < 0 ignored" msgstr "" -#: config/tc-score.c:6138 read.c:2468 +#: config/tc-score.c:6137 read.c:2468 #, c-format msgid "error setting flags for \".sbss\": %s" msgstr "" @@ -15695,7 +16435,7 @@ msgstr "" msgid "misplaced PIC operand" msgstr "" -#: config/tc-sh.c:2237 config/tc-sh.c:2616 +#: config/tc-sh.c:2237 config/tc-sh.c:2610 msgid "invalid operands for opcode" msgstr "" @@ -15775,33 +16515,33 @@ msgstr "" msgid "unrecognized characters at end of parallel processing insn" msgstr "" -#: config/tc-sh.c:2553 +#: config/tc-sh.c:2549 msgid "opcode not valid for this cpu variant" msgstr "" -#: config/tc-sh.c:2586 +#: config/tc-sh.c:2580 msgid "Delayed branches not available on SH1" msgstr "" -#: config/tc-sh.c:2621 +#: config/tc-sh.c:2615 #, c-format msgid "excess operands: '%s'" msgstr "" -#: config/tc-sh.c:2698 +#: config/tc-sh.c:2692 msgid ".uses pseudo-op seen when not relaxing" msgstr "" -#: config/tc-sh.c:2704 +#: config/tc-sh.c:2698 msgid "bad .uses format" msgstr "" -#: config/tc-sh.c:2822 +#: config/tc-sh.c:2816 #, c-format msgid "Invalid argument to --isa option: %s" msgstr "" -#: config/tc-sh.c:2846 +#: config/tc-sh.c:2840 #, c-format msgid "" "SH options:\n" @@ -15818,70 +16558,70 @@ msgid "" " | fp" msgstr "" -#: config/tc-sh.c:2871 +#: config/tc-sh.c:2865 #, c-format msgid "--fdpic\t\t\tgenerate an FDPIC object file\n" msgstr "" -#: config/tc-sh.c:2947 +#: config/tc-sh.c:2941 msgid ".uses does not refer to a local symbol in the same section" msgstr "" -#: config/tc-sh.c:2966 +#: config/tc-sh.c:2960 msgid "can't find fixup pointed to by .uses" msgstr "" -#: config/tc-sh.c:2986 +#: config/tc-sh.c:2980 msgid ".uses target does not refer to a local symbol in the same section" msgstr "" -#: config/tc-sh.c:3059 +#: config/tc-sh.c:3053 msgid "displacement overflows 12-bit field" msgstr "" -#: config/tc-sh.c:3062 +#: config/tc-sh.c:3056 #, c-format msgid "displacement to defined symbol %s overflows 12-bit field" msgstr "" -#: config/tc-sh.c:3066 +#: config/tc-sh.c:3060 #, c-format msgid "displacement to undefined symbol %s overflows 12-bit field" msgstr "" -#: config/tc-sh.c:3139 +#: config/tc-sh.c:3133 msgid "displacement overflows 8-bit field" msgstr "" -#: config/tc-sh.c:3142 +#: config/tc-sh.c:3136 #, c-format msgid "displacement to defined symbol %s overflows 8-bit field" msgstr "" -#: config/tc-sh.c:3146 +#: config/tc-sh.c:3140 #, c-format msgid "displacement to undefined symbol %s overflows 8-bit field " msgstr "" -#: config/tc-sh.c:3159 +#: config/tc-sh.c:3153 #, c-format msgid "overflow in branch to %s; converted into longer instruction sequence" msgstr "" -#: config/tc-sh.c:3224 config/tc-sh.c:3271 config/tc-sparc.c:4634 +#: config/tc-sh.c:3218 config/tc-sh.c:3265 config/tc-sparc.c:4634 #: config/tc-sparc.c:4658 msgid "misaligned data" msgstr "" -#: config/tc-sh.c:3577 +#: config/tc-sh.c:3571 msgid "offset to unaligned destination" msgstr "" -#: config/tc-sh.c:3582 +#: config/tc-sh.c:3576 msgid "negative offset" msgstr "" -#: config/tc-sh.c:3722 +#: config/tc-sh.c:3716 msgid "misaligned offset" msgstr "" @@ -16209,7 +16949,7 @@ msgstr "" #: config/tc-sparc.c:3655 config/tc-sparc.c:3662 config/tc-sparc.c:3669 #: config/tc-sparc.c:3676 config/tc-sparc.c:3683 config/tc-sparc.c:3692 #: config/tc-sparc.c:3704 config/tc-sparc.c:3715 config/tc-sparc.c:3737 -#: config/tc-sparc.c:3761 write.c:1181 +#: config/tc-sparc.c:3761 write.c:1179 msgid "relocation overflow" msgstr "" @@ -16305,10 +17045,6 @@ msgstr "" msgid "sparc convert_frag\n" msgstr "" -#: config/tc-sparc.h:68 config/tc-z80.h:53 -msgid "estimate_size_before_relax called" -msgstr "" - #: config/tc-spu.c:130 #, c-format msgid "Can't hash instruction '%s':%s" @@ -16564,231 +17300,231 @@ msgstr "" msgid "first operand is too large for a 24-bit displacement" msgstr "" -#: config/tc-tic4x.c:392 +#: config/tc-tic4x.c:389 msgid "Nan, using zero." msgstr "" -#: config/tc-tic4x.c:514 +#: config/tc-tic4x.c:511 #, c-format msgid "Cannot represent exponent in %d bits" msgstr "" -#: config/tc-tic4x.c:597 config/tc-tic4x.c:607 +#: config/tc-tic4x.c:594 config/tc-tic4x.c:604 msgid "Invalid floating point number" msgstr "" -#: config/tc-tic4x.c:726 +#: config/tc-tic4x.c:723 msgid "Comma expected\n" msgstr "" -#: config/tc-tic4x.c:762 config/tc-tic54x.c:470 +#: config/tc-tic4x.c:759 config/tc-tic54x.c:471 msgid ".bss size argument missing\n" msgstr "" -#: config/tc-tic4x.c:770 +#: config/tc-tic4x.c:767 #, c-format msgid ".bss size %ld < 0!" msgstr "" -#: config/tc-tic4x.c:903 +#: config/tc-tic4x.c:900 msgid "Non-constant symbols not allowed\n" msgstr "" -#: config/tc-tic4x.c:934 +#: config/tc-tic4x.c:931 msgid "Symbol missing\n" msgstr "" #. Skip null symbol terminator. -#: config/tc-tic4x.c:982 +#: config/tc-tic4x.c:979 msgid ".sect: subsection name ignored" msgstr "" -#: config/tc-tic4x.c:1010 config/tc-tic4x.c:1111 config/tc-tic54x.c:1423 +#: config/tc-tic4x.c:1007 config/tc-tic4x.c:1108 config/tc-tic54x.c:1424 #, c-format msgid "Error setting flags for \"%s\": %s" msgstr "" -#: config/tc-tic4x.c:1042 +#: config/tc-tic4x.c:1039 msgid ".set syntax invalid\n" msgstr "" -#: config/tc-tic4x.c:1100 +#: config/tc-tic4x.c:1097 msgid ".usect: non-zero alignment flag ignored" msgstr "" -#: config/tc-tic4x.c:1131 +#: config/tc-tic4x.c:1128 #, c-format msgid "This assembler does not support processor generation %ld" msgstr "" -#: config/tc-tic4x.c:1135 +#: config/tc-tic4x.c:1132 msgid "Changing processor generation on fly not supported..." msgstr "" -#: config/tc-tic4x.c:1433 +#: config/tc-tic4x.c:1430 msgid "Auxiliary register AR0--AR7 required for indirect" msgstr "" -#: config/tc-tic4x.c:1447 +#: config/tc-tic4x.c:1444 #, c-format msgid "Bad displacement %d (require 0--255)\n" msgstr "" -#: config/tc-tic4x.c:1465 +#: config/tc-tic4x.c:1462 msgid "Index register IR0,IR1 required for displacement" msgstr "" -#: config/tc-tic4x.c:1533 +#: config/tc-tic4x.c:1530 msgid "Expecting a register name" msgstr "" -#: config/tc-tic4x.c:1545 config/tc-tic4x.c:1568 config/tc-tic4x.c:1634 +#: config/tc-tic4x.c:1542 config/tc-tic4x.c:1565 config/tc-tic4x.c:1631 msgid "Number too large" msgstr "" -#: config/tc-tic4x.c:1558 config/tc-tic4x.c:1581 +#: config/tc-tic4x.c:1555 config/tc-tic4x.c:1578 msgid "Expecting a constant value" msgstr "" -#: config/tc-tic4x.c:1589 +#: config/tc-tic4x.c:1586 #, c-format msgid "Bad direct addressing construct %s" msgstr "" -#: config/tc-tic4x.c:1593 +#: config/tc-tic4x.c:1590 #, c-format msgid "Direct value of %ld is not suitable" msgstr "" -#: config/tc-tic4x.c:1617 +#: config/tc-tic4x.c:1614 msgid "Unknown indirect addressing mode" msgstr "" -#: config/tc-tic4x.c:1714 +#: config/tc-tic4x.c:1711 #, c-format msgid "Immediate value of %ld is too large for ldf" msgstr "" -#: config/tc-tic4x.c:1754 +#: config/tc-tic4x.c:1751 msgid "Destination register must be ARn" msgstr "" -#: config/tc-tic4x.c:1773 config/tc-tic4x.c:2146 config/tc-tic4x.c:2205 +#: config/tc-tic4x.c:1770 config/tc-tic4x.c:2143 config/tc-tic4x.c:2202 #, c-format msgid "Immediate value of %ld is too large" msgstr "" -#: config/tc-tic4x.c:1802 config/tc-tic4x.c:2007 +#: config/tc-tic4x.c:1799 config/tc-tic4x.c:2004 msgid "Invalid indirect addressing mode" msgstr "" -#: config/tc-tic4x.c:1826 config/tc-tic4x.c:1866 config/tc-tic4x.c:2057 -#: config/tc-tic4x.c:2079 +#: config/tc-tic4x.c:1823 config/tc-tic4x.c:1863 config/tc-tic4x.c:2054 +#: config/tc-tic4x.c:2076 msgid "Register must be Rn" msgstr "" -#: config/tc-tic4x.c:1880 config/tc-tic4x.c:1950 config/tc-tic4x.c:1964 +#: config/tc-tic4x.c:1877 config/tc-tic4x.c:1947 config/tc-tic4x.c:1961 msgid "Register must be R0--R7" msgstr "" -#: config/tc-tic4x.c:1904 config/tc-tic4x.c:1932 +#: config/tc-tic4x.c:1901 config/tc-tic4x.c:1929 #, c-format msgid "Invalid indirect addressing mode displacement %d" msgstr "" -#: config/tc-tic4x.c:1978 +#: config/tc-tic4x.c:1975 msgid "Destination register must be R2 or R3" msgstr "" -#: config/tc-tic4x.c:1992 +#: config/tc-tic4x.c:1989 msgid "Destination register must be R0 or R1" msgstr "" -#: config/tc-tic4x.c:2029 +#: config/tc-tic4x.c:2026 #, c-format msgid "Displacement value of %ld is too large" msgstr "" -#: config/tc-tic4x.c:2090 config/tc-tic4x.c:2221 +#: config/tc-tic4x.c:2087 config/tc-tic4x.c:2218 msgid "Floating point number not valid in expression" msgstr "" -#: config/tc-tic4x.c:2104 +#: config/tc-tic4x.c:2101 #, c-format msgid "Signed immediate value %ld too large" msgstr "" -#: config/tc-tic4x.c:2167 +#: config/tc-tic4x.c:2164 #, c-format msgid "Unsigned immediate value %ld too large" msgstr "" -#: config/tc-tic4x.c:2235 +#: config/tc-tic4x.c:2232 #, c-format msgid "Immediate value %ld too large" msgstr "" -#: config/tc-tic4x.c:2254 config/tc-tic4x.c:2282 +#: config/tc-tic4x.c:2251 config/tc-tic4x.c:2279 msgid "Register must be ivtp or tvtp" msgstr "" -#: config/tc-tic4x.c:2268 +#: config/tc-tic4x.c:2265 msgid "Register must be address register" msgstr "" -#: config/tc-tic4x.c:2341 +#: config/tc-tic4x.c:2338 msgid "Source and destination register should not be equal" msgstr "" -#: config/tc-tic4x.c:2356 +#: config/tc-tic4x.c:2353 msgid "Equal parallel destination registers, one result will be discarded" msgstr "" -#: config/tc-tic4x.c:2397 +#: config/tc-tic4x.c:2394 msgid "Too many operands scanned" msgstr "" -#: config/tc-tic4x.c:2428 +#: config/tc-tic4x.c:2425 msgid "Parallel opcode cannot contain more than two instructions" msgstr "" -#: config/tc-tic4x.c:2501 +#: config/tc-tic4x.c:2499 #, c-format msgid "Invalid operands for %s" msgstr "" -#: config/tc-tic4x.c:2504 +#: config/tc-tic4x.c:2502 #, c-format msgid "Invalid instruction %s" msgstr "" -#: config/tc-tic4x.c:2656 +#: config/tc-tic4x.c:2654 #, c-format msgid "Bad relocation type: 0x%02x" msgstr "" -#: config/tc-tic4x.c:2714 +#: config/tc-tic4x.c:2712 #, c-format msgid "Unsupported processor generation %d" msgstr "" -#: config/tc-tic4x.c:2722 +#: config/tc-tic4x.c:2720 msgid "Option -b is depreciated, please use -mbig" msgstr "" -#: config/tc-tic4x.c:2729 +#: config/tc-tic4x.c:2727 msgid "Option -p is depreciated, please use -mmemparm" msgstr "" -#: config/tc-tic4x.c:2736 +#: config/tc-tic4x.c:2734 msgid "Option -r is depreciated, please use -mregparm" msgstr "" -#: config/tc-tic4x.c:2743 +#: config/tc-tic4x.c:2741 msgid "Option -s is depreciated, please use -msmall" msgstr "" -#: config/tc-tic4x.c:2772 +#: config/tc-tic4x.c:2770 #, c-format msgid "" "\n" @@ -16814,439 +17550,443 @@ msgid "" " -menhanced enable enhanced opcode support\n" msgstr "" -#: config/tc-tic4x.c:2817 +#: config/tc-tic4x.c:2815 #, c-format msgid "Label \"$%d\" redefined" msgstr "" -#: config/tc-tic4x.c:3027 +#: config/tc-tic4x.c:3025 #, c-format msgid "Reloc %d not supported by object file format" msgstr "" #. Only word (et al.), align, or conditionals are allowed within #. .struct/.union. -#: config/tc-tic54x.c:218 +#: config/tc-tic54x.c:219 msgid "pseudo-op illegal within .struct/.union" msgstr "" -#: config/tc-tic54x.c:232 +#: config/tc-tic54x.c:233 #, c-format msgid "C54x-specific command line options:\n" msgstr "" -#: config/tc-tic54x.c:233 +#: config/tc-tic54x.c:234 #, c-format msgid "-mfar-mode | -mf Use extended addressing\n" msgstr "" -#: config/tc-tic54x.c:234 +#: config/tc-tic54x.c:235 #, c-format msgid "-mcpu=<CPU version> Specify the CPU version\n" msgstr "" -#: config/tc-tic54x.c:235 +#: config/tc-tic54x.c:236 #, c-format msgid "-merrors-to-file <filename>\n" msgstr "" -#: config/tc-tic54x.c:236 +#: config/tc-tic54x.c:237 #, c-format msgid "-me <filename> Redirect errors to a file\n" msgstr "" -#: config/tc-tic54x.c:347 +#: config/tc-tic54x.c:348 msgid "Comma and symbol expected for '.asg STRING, SYMBOL'" msgstr "" -#: config/tc-tic54x.c:356 +#: config/tc-tic54x.c:357 msgid "symbols assigned with .asg must begin with a letter" msgstr "" -#: config/tc-tic54x.c:396 +#: config/tc-tic54x.c:397 msgid "Unterminated string after absolute expression" msgstr "" -#: config/tc-tic54x.c:404 +#: config/tc-tic54x.c:405 msgid "Comma and symbol expected for '.eval EXPR, SYMBOL'" msgstr "" -#: config/tc-tic54x.c:414 +#: config/tc-tic54x.c:415 msgid "symbols assigned with .eval must begin with a letter" msgstr "" -#: config/tc-tic54x.c:479 +#: config/tc-tic54x.c:480 #, c-format msgid ".bss size %d < 0!" msgstr "" -#: config/tc-tic54x.c:661 +#: config/tc-tic54x.c:662 msgid "Offset on nested structures is ignored" msgstr "" -#: config/tc-tic54x.c:711 +#: config/tc-tic54x.c:712 #, c-format msgid ".end%s without preceding .%s" msgstr "" -#: config/tc-tic54x.c:777 +#: config/tc-tic54x.c:778 #, c-format msgid "Unrecognized struct/union tag '%s'" msgstr "" -#: config/tc-tic54x.c:779 +#: config/tc-tic54x.c:780 msgid ".tag requires a structure tag" msgstr "" -#: config/tc-tic54x.c:785 +#: config/tc-tic54x.c:786 msgid "Label required for .tag" msgstr "" -#: config/tc-tic54x.c:804 +#: config/tc-tic54x.c:805 #, c-format msgid ".tag target '%s' undefined" msgstr "" -#: config/tc-tic54x.c:868 +#: config/tc-tic54x.c:869 #, c-format msgid ".field count '%d' out of range (1 <= X <= 32)" msgstr "" -#: config/tc-tic54x.c:896 +#: config/tc-tic54x.c:897 #, c-format msgid "Unrecognized field type '%c'" msgstr "" -#: config/tc-tic54x.c:1020 +#: config/tc-tic54x.c:1021 msgid "Overflow in expression, truncated to 8 bits" msgstr "" -#: config/tc-tic54x.c:1025 +#: config/tc-tic54x.c:1026 msgid "Overflow in expression, truncated to 16 bits" msgstr "" #. Disallow .byte with a non constant expression that will #. require relocation. -#: config/tc-tic54x.c:1033 +#: config/tc-tic54x.c:1034 msgid "Relocatable values require at least WORD storage" msgstr "" -#: config/tc-tic54x.c:1094 +#: config/tc-tic54x.c:1095 msgid "Use of .def/.ref is deprecated. Use .global instead" msgstr "" -#: config/tc-tic54x.c:1286 +#: config/tc-tic54x.c:1287 msgid ".space/.bes repeat count is negative, ignored" msgstr "" -#: config/tc-tic54x.c:1291 +#: config/tc-tic54x.c:1292 msgid ".space/.bes repeat count is zero, ignored" msgstr "" -#: config/tc-tic54x.c:1364 +#: config/tc-tic54x.c:1365 msgid "Missing size argument" msgstr "" -#: config/tc-tic54x.c:1498 +#: config/tc-tic54x.c:1499 msgid "CPU version has already been set" msgstr "" -#: config/tc-tic54x.c:1502 +#: config/tc-tic54x.c:1503 #, c-format msgid "Unrecognized version '%s'" msgstr "" -#: config/tc-tic54x.c:1508 +#: config/tc-tic54x.c:1509 msgid "Changing of CPU version on the fly not supported" msgstr "" -#: config/tc-tic54x.c:1639 +#: config/tc-tic54x.c:1640 msgid "p2align not supported on this target" msgstr "" -#: config/tc-tic54x.c:1651 +#: config/tc-tic54x.c:1652 msgid "Argument to .even ignored" msgstr "" -#: config/tc-tic54x.c:1697 +#: config/tc-tic54x.c:1698 msgid "Invalid field size, must be from 1 to 32" msgstr "" -#: config/tc-tic54x.c:1710 +#: config/tc-tic54x.c:1711 msgid "field size must be 16 when value is relocatable" msgstr "" -#: config/tc-tic54x.c:1725 +#: config/tc-tic54x.c:1726 msgid "field value truncated" msgstr "" -#: config/tc-tic54x.c:1831 config/tc-tic54x.c:2130 +#: config/tc-tic54x.c:1832 config/tc-tic54x.c:2131 #, c-format msgid "Unrecognized section '%s'" msgstr "" -#: config/tc-tic54x.c:1840 +#: config/tc-tic54x.c:1841 msgid "Current section is uninitialized, section name required for .clink" msgstr "" -#: config/tc-tic54x.c:2041 +#: config/tc-tic54x.c:2042 msgid "ENDLOOP without corresponding LOOP" msgstr "" -#: config/tc-tic54x.c:2082 +#: config/tc-tic54x.c:2083 msgid "Mixing of normal and extended addressing not supported" msgstr "" -#: config/tc-tic54x.c:2088 +#: config/tc-tic54x.c:2089 msgid "Extended addressing not supported on the specified CPU" msgstr "" -#: config/tc-tic54x.c:2136 +#: config/tc-tic54x.c:2137 msgid ".sblock may be used for initialized sections only" msgstr "" -#: config/tc-tic54x.c:2166 +#: config/tc-tic54x.c:2167 msgid "Symbol missing for .set/.equ" msgstr "" -#: config/tc-tic54x.c:2222 +#: config/tc-tic54x.c:2223 msgid ".var may only be used within a macro definition" msgstr "" -#: config/tc-tic54x.c:2230 +#: config/tc-tic54x.c:2231 msgid "Substitution symbols must begin with a letter" msgstr "" -#: config/tc-tic54x.c:2322 +#: config/tc-tic54x.c:2323 #, c-format msgid "can't open macro library file '%s' for reading: %s" msgstr "" -#: config/tc-tic54x.c:2329 +#: config/tc-tic54x.c:2330 #, c-format msgid "File '%s' not in macro archive format" msgstr "" -#: config/tc-tic54x.c:2459 +#: config/tc-tic54x.c:2460 #, c-format msgid "Bad COFF version '%s'" msgstr "" -#: config/tc-tic54x.c:2468 +#: config/tc-tic54x.c:2469 #, c-format msgid "Bad CPU version '%s'" msgstr "" -#: config/tc-tic54x.c:2481 config/tc-tic54x.c:2484 +#: config/tc-tic54x.c:2482 config/tc-tic54x.c:2485 #, c-format msgid "Can't redirect stderr to the file '%s'" msgstr "" -#: config/tc-tic54x.c:2597 +#: config/tc-tic54x.c:2503 +msgid "Macro nesting is too deep" +msgstr "" + +#: config/tc-tic54x.c:2602 #, c-format msgid "Undefined substitution symbol '%s'" msgstr "" -#: config/tc-tic54x.c:3098 +#: config/tc-tic54x.c:3103 #, c-format msgid "Unbalanced parenthesis in operand %d" msgstr "" -#: config/tc-tic54x.c:3129 config/tc-tic54x.c:3137 +#: config/tc-tic54x.c:3134 config/tc-tic54x.c:3142 msgid "Expecting operand after ','" msgstr "" -#: config/tc-tic54x.c:3148 +#: config/tc-tic54x.c:3153 msgid "Extra junk on line" msgstr "" -#: config/tc-tic54x.c:3185 +#: config/tc-tic54x.c:3190 msgid "Badly formed address expression" msgstr "" -#: config/tc-tic54x.c:3438 +#: config/tc-tic54x.c:3443 #, c-format msgid "Invalid dmad syntax '%s'" msgstr "" -#: config/tc-tic54x.c:3502 +#: config/tc-tic54x.c:3507 #, c-format msgid "" "Use the .mmregs directive to use memory-mapped register names such as '%s'" msgstr "" -#: config/tc-tic54x.c:3553 +#: config/tc-tic54x.c:3558 msgid "Address mode *+ARx is write-only. Results of reading are undefined." msgstr "" -#: config/tc-tic54x.c:3573 +#: config/tc-tic54x.c:3578 #, c-format msgid "Unrecognized indirect address format \"%s\"" msgstr "" -#: config/tc-tic54x.c:3611 +#: config/tc-tic54x.c:3616 #, c-format msgid "Operand '%s' out of range (%d <= x <= %d)" msgstr "" -#: config/tc-tic54x.c:3631 +#: config/tc-tic54x.c:3636 msgid "Error in relocation handling" msgstr "" -#: config/tc-tic54x.c:3650 config/tc-tic54x.c:3712 config/tc-tic54x.c:3740 +#: config/tc-tic54x.c:3655 config/tc-tic54x.c:3717 config/tc-tic54x.c:3745 #, c-format msgid "Unrecognized condition code \"%s\"" msgstr "" -#: config/tc-tic54x.c:3667 +#: config/tc-tic54x.c:3672 #, c-format msgid "Condition \"%s\" does not match preceding group" msgstr "" -#: config/tc-tic54x.c:3675 +#: config/tc-tic54x.c:3680 #, c-format msgid "" "Condition \"%s\" uses a different accumulator from a preceding condition" msgstr "" -#: config/tc-tic54x.c:3682 +#: config/tc-tic54x.c:3687 msgid "Only one comparison conditional allowed" msgstr "" -#: config/tc-tic54x.c:3687 +#: config/tc-tic54x.c:3692 msgid "Only one overflow conditional allowed" msgstr "" -#: config/tc-tic54x.c:3695 +#: config/tc-tic54x.c:3700 #, c-format msgid "Duplicate %s conditional" msgstr "" -#: config/tc-tic54x.c:3726 +#: config/tc-tic54x.c:3731 msgid "Invalid auxiliary register (use AR0-AR7)" msgstr "" -#: config/tc-tic54x.c:3757 +#: config/tc-tic54x.c:3762 msgid "lk addressing modes are invalid for memory-mapped register addressing" msgstr "" -#: config/tc-tic54x.c:3765 +#: config/tc-tic54x.c:3770 msgid "" "Address mode *+ARx is not allowed in memory-mapped register addressing. " "Resulting behavior is undefined." msgstr "" -#: config/tc-tic54x.c:3791 +#: config/tc-tic54x.c:3796 msgid "" "Destination accumulator for each part of this parallel instruction must be " "different" msgstr "" -#: config/tc-tic54x.c:3840 +#: config/tc-tic54x.c:3845 #, c-format msgid "Memory mapped register \"%s\" out of range" msgstr "" -#: config/tc-tic54x.c:3879 +#: config/tc-tic54x.c:3884 msgid "Invalid operand (use 1, 2, or 3)" msgstr "" -#: config/tc-tic54x.c:3905 +#: config/tc-tic54x.c:3910 msgid "A status register or status bit name is required" msgstr "" -#: config/tc-tic54x.c:3915 +#: config/tc-tic54x.c:3920 #, c-format msgid "Unrecognized status bit \"%s\"" msgstr "" -#: config/tc-tic54x.c:3938 +#: config/tc-tic54x.c:3943 #, c-format msgid "Invalid status register \"%s\"" msgstr "" -#: config/tc-tic54x.c:3950 +#: config/tc-tic54x.c:3955 #, c-format msgid "Operand \"%s\" out of range (use 1 or 2)" msgstr "" -#: config/tc-tic54x.c:4153 +#: config/tc-tic54x.c:4158 #, c-format msgid "Unrecognized instruction \"%s\"" msgstr "" -#: config/tc-tic54x.c:4182 +#: config/tc-tic54x.c:4187 #, c-format msgid "Unrecognized operand list '%s' for instruction '%s'" msgstr "" -#: config/tc-tic54x.c:4211 +#: config/tc-tic54x.c:4216 #, c-format msgid "Unrecognized parallel instruction \"%s\"" msgstr "" -#: config/tc-tic54x.c:4260 +#: config/tc-tic54x.c:4265 #, c-format msgid "Invalid operand (s) for parallel instruction \"%s\"" msgstr "" -#: config/tc-tic54x.c:4263 +#: config/tc-tic54x.c:4268 #, c-format msgid "Unrecognized parallel instruction combination \"%s || %s\"" msgstr "" -#: config/tc-tic54x.c:4484 +#: config/tc-tic54x.c:4488 #, c-format msgid "%s symbol recursion stopped at second appearance of '%s'" msgstr "" -#: config/tc-tic54x.c:4524 +#: config/tc-tic54x.c:4528 msgid "Unrecognized substitution symbol function" msgstr "" -#: config/tc-tic54x.c:4529 +#: config/tc-tic54x.c:4533 msgid "Missing '(' after substitution symbol function" msgstr "" -#: config/tc-tic54x.c:4543 +#: config/tc-tic54x.c:4547 msgid "Expecting second argument" msgstr "" -#: config/tc-tic54x.c:4556 config/tc-tic54x.c:4606 +#: config/tc-tic54x.c:4560 config/tc-tic54x.c:4610 msgid "Extra junk in function call, expecting ')'" msgstr "" -#: config/tc-tic54x.c:4582 +#: config/tc-tic54x.c:4586 msgid "Function expects two arguments" msgstr "" -#: config/tc-tic54x.c:4595 +#: config/tc-tic54x.c:4599 msgid "Expecting character constant argument" msgstr "" -#: config/tc-tic54x.c:4601 +#: config/tc-tic54x.c:4605 msgid "Both arguments must be substitution symbols" msgstr "" -#: config/tc-tic54x.c:4653 +#: config/tc-tic54x.c:4657 #, c-format msgid "Invalid subscript (use 1 to %d)" msgstr "" -#: config/tc-tic54x.c:4663 +#: config/tc-tic54x.c:4667 #, c-format msgid "Invalid length (use 0 to %d)" msgstr "" -#: config/tc-tic54x.c:4673 +#: config/tc-tic54x.c:4677 msgid "Missing ')' in subscripted substitution symbol expression" msgstr "" -#: config/tc-tic54x.c:4693 +#: config/tc-tic54x.c:4697 msgid "Missing forced substitution terminator ':'" msgstr "" -#: config/tc-tic54x.c:4845 +#: config/tc-tic54x.c:4850 #, c-format msgid "" "Instruction does not fit in available delay slots (%d-word insn, %d slot " @@ -17257,22 +17997,22 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: config/tc-tic54x.c:4889 +#: config/tc-tic54x.c:4894 #, c-format msgid "Unrecognized parallel instruction '%s'" msgstr "" -#: config/tc-tic54x.c:4901 +#: config/tc-tic54x.c:4906 #, c-format msgid "Instruction '%s' requires an LP cpu version" msgstr "" -#: config/tc-tic54x.c:4908 +#: config/tc-tic54x.c:4913 #, c-format msgid "Instruction '%s' requires far mode addressing" msgstr "" -#: config/tc-tic54x.c:4920 +#: config/tc-tic54x.c:4925 #, c-format msgid "" "Instruction does not fit in available delay slots (%d-word insn, %d slot " @@ -17283,38 +18023,38 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: config/tc-tic54x.c:4934 +#: config/tc-tic54x.c:4939 msgid "" "Instructions which cause PC discontinuity are not allowed in a delay slot. " "Resulting behavior is undefined." msgstr "" -#: config/tc-tic54x.c:4945 +#: config/tc-tic54x.c:4950 #, c-format msgid "'%s' is not repeatable. Resulting behavior is undefined." msgstr "" -#: config/tc-tic54x.c:4949 +#: config/tc-tic54x.c:4954 msgid "" "Instructions using long offset modifiers or absolute addresses are not " "repeatable. Resulting behavior is undefined." msgstr "" -#: config/tc-tic54x.c:5099 +#: config/tc-tic54x.c:5104 #, c-format msgid "Unsupported relocation size %d" msgstr "" -#: config/tc-tic54x.c:5230 +#: config/tc-tic54x.c:5235 msgid "non-absolute value used with .space/.bes" msgstr "" -#: config/tc-tic54x.c:5234 +#: config/tc-tic54x.c:5239 #, c-format msgid "negative value ignored in %s" msgstr "" -#: config/tc-tic54x.c:5322 +#: config/tc-tic54x.c:5327 #, c-format msgid "attempt to .space/.bes backwards? (%ld)" msgstr "" @@ -17856,8 +18596,8 @@ msgstr "" msgid "Expected immediate expression" msgstr "" -#: config/tc-tilegx.c:1209 config/tc-tilegx.c:1814 config/tc-tilepro.c:1095 -#: config/tc-tilepro.c:1594 +#: config/tc-tilegx.c:1209 config/tc-tilegx.c:1811 config/tc-tilepro.c:1095 +#: config/tc-tilepro.c:1591 msgid "Found '}' when not bundling." msgstr "" @@ -17870,20 +18610,20 @@ msgstr "" msgid "Too many instructions for bundle." msgstr "" -#: config/tc-tilegx.c:1356 config/tc-tilepro.c:1231 +#: config/tc-tilegx.c:1353 config/tc-tilepro.c:1228 msgid "Bad call to md_atof ()" msgstr "" -#: config/tc-tilegx.c:1432 config/tc-tilepro.c:1294 +#: config/tc-tilegx.c:1429 config/tc-tilepro.c:1291 msgid "This operator only produces two byte values." msgstr "" -#: config/tc-tilegx.c:1759 config/tc-tilepro.c:1539 +#: config/tc-tilegx.c:1756 config/tc-tilepro.c:1536 #, c-format msgid "internal error? cannot generate `%s' relocation (%d, %d)" msgstr "" -#: config/tc-tilegx.c:1802 config/tc-tilepro.c:1582 +#: config/tc-tilegx.c:1799 config/tc-tilepro.c:1579 msgid "Found '{' when already bundling." msgstr "" @@ -18218,7 +18958,7 @@ msgstr "" msgid "displacement is too large" msgstr "" -#: config/tc-v850.c:2975 config/tc-xtensa.c:13149 +#: config/tc-v850.c:2975 config/tc-xtensa.c:13030 msgid "invalid operand" msgstr "" @@ -18459,7 +19199,7 @@ msgstr "" msgid "VIP_BEGIN error:%s" msgstr "" -#: config/tc-visium.c:862 +#: config/tc-visium.c:859 msgid "Bad call to MD_ATOF()" msgstr "" @@ -18537,7 +19277,7 @@ msgstr "" msgid "missing table index" msgstr "" -#: config/tc-wasm32.c:726 config/tc-z80.c:1967 read.c:3738 +#: config/tc-wasm32.c:726 config/tc-z80.c:3277 read.c:3738 #, c-format msgid "junk at end of line, first unrecognized character is `%c'" msgstr "" @@ -18656,564 +19396,555 @@ msgstr "" msgid "unsupported fptr fixup" msgstr "" -#: config/tc-xtensa.c:647 +#: config/tc-xtensa.c:649 msgid "illegal range of target hardware versions" msgstr "" -#: config/tc-xtensa.c:823 +#: config/tc-xtensa.c:825 msgid "--density option is ignored" msgstr "" -#: config/tc-xtensa.c:826 +#: config/tc-xtensa.c:828 msgid "--no-density option is ignored" msgstr "" -#: config/tc-xtensa.c:844 +#: config/tc-xtensa.c:846 msgid "--generics is deprecated; use --transform instead" msgstr "" -#: config/tc-xtensa.c:847 +#: config/tc-xtensa.c:849 msgid "--no-generics is deprecated; use --no-transform instead" msgstr "" -#: config/tc-xtensa.c:850 +#: config/tc-xtensa.c:852 msgid "--relax is deprecated; use --transform instead" msgstr "" -#: config/tc-xtensa.c:853 +#: config/tc-xtensa.c:855 msgid "--no-relax is deprecated; use --no-transform instead" msgstr "" -#: config/tc-xtensa.c:870 +#: config/tc-xtensa.c:872 msgid "--absolute-literals option not supported in this Xtensa configuration" msgstr "" -#: config/tc-xtensa.c:943 +#: config/tc-xtensa.c:945 msgid "prefer-l32r conflicts with prefer-const16" msgstr "" -#: config/tc-xtensa.c:949 +#: config/tc-xtensa.c:951 msgid "prefer-const16 conflicts with prefer-l32r" msgstr "" -#: config/tc-xtensa.c:958 config/tc-xtensa.c:967 config/tc-xtensa.c:971 +#: config/tc-xtensa.c:960 config/tc-xtensa.c:969 config/tc-xtensa.c:973 msgid "invalid target hardware version" msgstr "" -#: config/tc-xtensa.c:1017 +#: config/tc-xtensa.c:1019 msgid "no-auto-litpools is incompatible with auto-litpool-limit" msgstr "" -#: config/tc-xtensa.c:1019 config/tc-xtensa.c:1022 +#: config/tc-xtensa.c:1021 config/tc-xtensa.c:1024 msgid "invalid auto-litpool-limit argument" msgstr "" -#: config/tc-xtensa.c:1024 +#: config/tc-xtensa.c:1026 msgid "invalid auto-litpool-limit argument (range is 100-10000)" msgstr "" -#: config/tc-xtensa.c:1213 +#: config/tc-xtensa.c:1215 msgid "unmatched .end directive" msgstr "" -#: config/tc-xtensa.c:1242 +#: config/tc-xtensa.c:1244 msgid ".begin directive with no matching .end directive" msgstr "" -#: config/tc-xtensa.c:1283 +#: config/tc-xtensa.c:1285 msgid "[no-]generics is deprecated; use [no-]transform instead" msgstr "" -#: config/tc-xtensa.c:1288 +#: config/tc-xtensa.c:1290 msgid "[no-]relax is deprecated; use [no-]transform instead" msgstr "" -#: config/tc-xtensa.c:1301 +#: config/tc-xtensa.c:1303 #, c-format msgid "directive %s cannot be negated" msgstr "" -#: config/tc-xtensa.c:1307 +#: config/tc-xtensa.c:1309 msgid "unknown directive" msgstr "" -#: config/tc-xtensa.c:1328 config/tc-xtensa.c:1424 config/tc-xtensa.c:1666 -#: config/tc-xtensa.c:5920 +#: config/tc-xtensa.c:1330 config/tc-xtensa.c:1426 config/tc-xtensa.c:1656 +#: config/tc-xtensa.c:5903 msgid "directives are not valid inside bundles" msgstr "" -#: config/tc-xtensa.c:1340 +#: config/tc-xtensa.c:1342 msgid ".begin literal is deprecated; use .literal instead" msgstr "" -#: config/tc-xtensa.c:1354 +#: config/tc-xtensa.c:1356 msgid "cannot set literal_prefix inside literal fragment" msgstr "" -#: config/tc-xtensa.c:1387 +#: config/tc-xtensa.c:1389 msgid ".begin [no-]density is ignored" msgstr "" -#: config/tc-xtensa.c:1394 config/tc-xtensa.c:1444 +#: config/tc-xtensa.c:1396 config/tc-xtensa.c:1446 msgid "Xtensa absolute literals option not supported; ignored" msgstr "" -#: config/tc-xtensa.c:1437 +#: config/tc-xtensa.c:1439 msgid ".end [no-]density is ignored" msgstr "" -#: config/tc-xtensa.c:1462 +#: config/tc-xtensa.c:1464 #, c-format msgid "does not match begin %s%s at %s:%d" msgstr "" -#: config/tc-xtensa.c:1517 +#: config/tc-xtensa.c:1519 msgid ".literal_position inside literal directive; ignoring" msgstr "" -#: config/tc-xtensa.c:1537 +#: config/tc-xtensa.c:1538 msgid ".literal not allowed inside .begin literal region" msgstr "" -#: config/tc-xtensa.c:1576 +#: config/tc-xtensa.c:1566 msgid "expected comma or colon after symbol name; rest of line ignored" msgstr "" -#: config/tc-xtensa.c:1635 +#: config/tc-xtensa.c:1625 msgid "fall through frequency must be greater than 0" msgstr "" -#: config/tc-xtensa.c:1643 +#: config/tc-xtensa.c:1633 msgid "branch target frequency must be greater than 0" msgstr "" -#: config/tc-xtensa.c:1691 +#: config/tc-xtensa.c:1681 #, c-format msgid "opcode-specific %s relocation used outside an instruction" msgstr "" -#: config/tc-xtensa.c:1701 +#: config/tc-xtensa.c:1691 #, c-format msgid "invalid use of %s relocation" msgstr "" -#: config/tc-xtensa.c:1897 config/tc-xtensa.c:1914 +#: config/tc-xtensa.c:1887 config/tc-xtensa.c:1904 #, c-format msgid "bad register name: %s" msgstr "" -#: config/tc-xtensa.c:1903 +#: config/tc-xtensa.c:1893 #, c-format msgid "bad register number: %s" msgstr "" -#: config/tc-xtensa.c:1967 +#: config/tc-xtensa.c:1957 msgid "pcrel relocation not allowed in an instruction" msgstr "" -#: config/tc-xtensa.c:2070 +#: config/tc-xtensa.c:2060 msgid "extra colon" msgstr "" -#: config/tc-xtensa.c:2131 +#: config/tc-xtensa.c:2121 msgid "incorrect register number, ignoring" msgstr "" -#: config/tc-xtensa.c:2212 +#: config/tc-xtensa.c:2202 #, c-format msgid "cannot encode opcode \"%s\"" msgstr "" -#: config/tc-xtensa.c:2304 +#: config/tc-xtensa.c:2294 #, c-format msgid "not enough operands (%d) for '%s'; expected %d" msgstr "" -#: config/tc-xtensa.c:2311 +#: config/tc-xtensa.c:2301 #, c-format msgid "too many operands (%d) for '%s'; expected %d" msgstr "" -#: config/tc-xtensa.c:2362 +#: config/tc-xtensa.c:2352 #, c-format msgid "invalid register '%s' for '%s' instruction" msgstr "" -#: config/tc-xtensa.c:2369 +#: config/tc-xtensa.c:2359 #, c-format msgid "invalid register number (%ld) for '%s' instruction" msgstr "" -#: config/tc-xtensa.c:2436 +#: config/tc-xtensa.c:2426 #, c-format msgid "invalid register number (%ld) for '%s'" msgstr "" -#: config/tc-xtensa.c:2823 +#: config/tc-xtensa.c:2813 #, c-format msgid "operand %d of '%s' has out of range value '%u'" msgstr "" -#: config/tc-xtensa.c:2829 +#: config/tc-xtensa.c:2819 #, c-format msgid "operand %d of '%s' has invalid value '%u'" msgstr "" -#: config/tc-xtensa.c:2876 +#: config/tc-xtensa.c:2866 #, c-format msgid "internal error: unknown option name '%s'" msgstr "" -#: config/tc-xtensa.c:3985 +#: config/tc-xtensa.c:3975 msgid "can't handle generation of literal/labels yet" msgstr "" -#: config/tc-xtensa.c:3989 +#: config/tc-xtensa.c:3979 msgid "can't handle undefined OP TYPE" msgstr "" -#: config/tc-xtensa.c:4050 config/tc-xtensa.c:4059 +#: config/tc-xtensa.c:4040 config/tc-xtensa.c:4049 #, c-format msgid "found %d operand for '%s': Expected %d" msgid_plural "found %d operands for '%s': Expected %d" msgstr[0] "" msgstr[1] "" -#: config/tc-xtensa.c:4082 +#: config/tc-xtensa.c:4072 msgid "immediate operands sum to greater than 32" msgstr "" -#: config/tc-xtensa.c:4334 +#: config/tc-xtensa.c:4324 #, c-format msgid "invalid relocation for operand %i of '%s'" msgstr "" -#: config/tc-xtensa.c:4344 +#: config/tc-xtensa.c:4334 #, c-format msgid "invalid expression for operand %i of '%s'" msgstr "" -#: config/tc-xtensa.c:4354 +#: config/tc-xtensa.c:4344 #, c-format msgid "invalid relocation in instruction slot %i" msgstr "" -#: config/tc-xtensa.c:4361 +#: config/tc-xtensa.c:4351 #, c-format msgid "undefined symbol for opcode \"%s\"" msgstr "" -#: config/tc-xtensa.c:4849 +#: config/tc-xtensa.c:4826 msgid "opcode 'NOP.N' unavailable in this configuration" msgstr "" -#: config/tc-xtensa.c:4909 +#: config/tc-xtensa.c:4886 msgid "get_expanded_loop_offset: invalid opcode" msgstr "" -#: config/tc-xtensa.c:5067 +#: config/tc-xtensa.c:5047 #, c-format msgid "assembly state not set for first frag in section %s" msgstr "" -#: config/tc-xtensa.c:5120 +#: config/tc-xtensa.c:5100 #, c-format msgid "unaligned branch target: %d bytes at 0x%lx" msgstr "" -#: config/tc-xtensa.c:5164 +#: config/tc-xtensa.c:5144 #, c-format msgid "unaligned loop: %d bytes at 0x%lx" msgstr "" -#: config/tc-xtensa.c:5189 +#: config/tc-xtensa.c:5169 msgid "unexpected fix" msgstr "" -#: config/tc-xtensa.c:5200 config/tc-xtensa.c:5204 +#: config/tc-xtensa.c:5180 config/tc-xtensa.c:5184 msgid "undecodable fix" msgstr "" -#: config/tc-xtensa.c:5360 +#: config/tc-xtensa.c:5343 msgid "labels are not valid inside bundles" msgstr "" -#: config/tc-xtensa.c:5380 +#: config/tc-xtensa.c:5363 msgid "invalid last instruction for a zero-overhead loop" msgstr "" -#: config/tc-xtensa.c:5447 +#: config/tc-xtensa.c:5430 msgid "extra opening brace" msgstr "" -#: config/tc-xtensa.c:5457 +#: config/tc-xtensa.c:5440 msgid "extra closing brace" msgstr "" -#: config/tc-xtensa.c:5484 +#: config/tc-xtensa.c:5467 msgid "missing closing brace" msgstr "" -#: config/tc-xtensa.c:5582 config/tc-xtensa.c:5611 +#: config/tc-xtensa.c:5565 config/tc-xtensa.c:5594 #, c-format msgid "wrong number of operands for '%s'" msgstr "" -#: config/tc-xtensa.c:5598 +#: config/tc-xtensa.c:5581 #, c-format msgid "bad relocation expression for '%s'" msgstr "" -#: config/tc-xtensa.c:5633 +#: config/tc-xtensa.c:5616 #, c-format msgid "unknown opcode or format name '%s'" msgstr "" -#: config/tc-xtensa.c:5639 +#: config/tc-xtensa.c:5622 msgid "format names only valid inside bundles" msgstr "" -#: config/tc-xtensa.c:5644 +#: config/tc-xtensa.c:5627 #, c-format msgid "multiple formats specified for one bundle; using '%s'" msgstr "" -#: config/tc-xtensa.c:5694 +#: config/tc-xtensa.c:5677 msgid "entry instruction with stack decrement < 16" msgstr "" -#: config/tc-xtensa.c:5748 +#: config/tc-xtensa.c:5731 msgid "unaligned entry instruction" msgstr "" -#: config/tc-xtensa.c:5813 +#: config/tc-xtensa.c:5796 msgid "bad instruction format" msgstr "" -#: config/tc-xtensa.c:5816 +#: config/tc-xtensa.c:5799 msgid "invalid relocation" msgstr "" -#: config/tc-xtensa.c:5827 +#: config/tc-xtensa.c:5810 #, c-format msgid "invalid relocation for '%s' instruction" msgstr "" -#: config/tc-xtensa.c:5839 +#: config/tc-xtensa.c:5822 #, c-format msgid "invalid relocation for operand %d of '%s'" msgstr "" -#: config/tc-xtensa.c:6105 +#: config/tc-xtensa.c:6099 #, c-format msgid "unhandled local relocation fix %s" msgstr "" -#: config/tc-xtensa.c:6156 +#: config/tc-xtensa.c:6150 #, c-format msgid "internal error; cannot generate `%s' relocation" msgstr "" -#: config/tc-xtensa.c:6373 +#: config/tc-xtensa.c:6367 msgid "The option \"--no-allow-flix\" prohibits multi-slot flix." msgstr "" -#: config/tc-xtensa.c:6380 +#: config/tc-xtensa.c:6374 msgid "couldn't find a valid instruction format" msgstr "" -#: config/tc-xtensa.c:6381 +#: config/tc-xtensa.c:6375 #, c-format msgid " ops were: " msgstr "" -#: config/tc-xtensa.c:6383 +#: config/tc-xtensa.c:6377 #, c-format msgid " %s;" msgstr "" -#: config/tc-xtensa.c:6393 +#: config/tc-xtensa.c:6387 #, c-format msgid "mismatch for format '%s': #slots = %d, #opcodes = %d" msgstr "" -#: config/tc-xtensa.c:6402 config/tc-xtensa.c:6499 +#: config/tc-xtensa.c:6396 config/tc-xtensa.c:6493 msgid "illegal resource usage in bundle" msgstr "" -#: config/tc-xtensa.c:6588 +#: config/tc-xtensa.c:6582 #, c-format msgid "opcodes '%s' (slot %d) and '%s' (slot %d) write the same register" msgstr "" -#: config/tc-xtensa.c:6593 +#: config/tc-xtensa.c:6587 #, c-format msgid "opcodes '%s' (slot %d) and '%s' (slot %d) write the same state" msgstr "" -#: config/tc-xtensa.c:6598 +#: config/tc-xtensa.c:6592 #, c-format msgid "opcodes '%s' (slot %d) and '%s' (slot %d) write the same port" msgstr "" -#: config/tc-xtensa.c:6603 +#: config/tc-xtensa.c:6597 #, c-format msgid "" "opcodes '%s' (slot %d) and '%s' (slot %d) both have volatile port accesses" msgstr "" -#: config/tc-xtensa.c:6619 +#: config/tc-xtensa.c:6613 msgid "multiple branches or jumps in the same bundle" msgstr "" -#: config/tc-xtensa.c:7071 +#: config/tc-xtensa.c:7065 msgid "cannot assemble into a literal fragment" msgstr "" -#: config/tc-xtensa.c:7073 +#: config/tc-xtensa.c:7067 msgid "..." msgstr "" -#: config/tc-xtensa.c:8285 +#: config/tc-xtensa.c:8283 msgid "" "instruction sequence (write a0, branch, retw) may trigger hardware errata" msgstr "" -#: config/tc-xtensa.c:8397 +#: config/tc-xtensa.c:8395 msgid "branching or jumping to a loop end may trigger hardware errata" msgstr "" -#: config/tc-xtensa.c:8479 +#: config/tc-xtensa.c:8477 msgid "loop end too close to another loop end may trigger hardware errata" msgstr "" -#: config/tc-xtensa.c:8488 +#: config/tc-xtensa.c:8486 #, c-format msgid "fr_var %lu < length %d" msgstr "" -#: config/tc-xtensa.c:8645 +#: config/tc-xtensa.c:8643 msgid "" "loop containing less than three instructions may trigger hardware errata" msgstr "" -#: config/tc-xtensa.c:8717 +#: config/tc-xtensa.c:8715 msgid "undecodable instruction in instruction frag" msgstr "" -#: config/tc-xtensa.c:8827 +#: config/tc-xtensa.c:8825 msgid "invalid empty loop" msgstr "" -#: config/tc-xtensa.c:8832 +#: config/tc-xtensa.c:8830 msgid "loop target does not follow loop instruction in section" msgstr "" -#: config/tc-xtensa.c:9403 +#: config/tc-xtensa.c:9401 msgid "cannot find suitable trampoline" msgstr "" -#: config/tc-xtensa.c:9658 +#: config/tc-xtensa.c:9656 msgid "bad relaxation state" msgstr "" -#: config/tc-xtensa.c:9716 +#: config/tc-xtensa.c:9714 #, c-format msgid "fr_var (%ld) < length (%d)" msgstr "" -#: config/tc-xtensa.c:10416 +#: config/tc-xtensa.c:10414 msgid "jump target out of range; no usable trampoline found" msgstr "" -#: config/tc-xtensa.c:10540 +#: config/tc-xtensa.c:10538 msgid "invalid relaxation fragment result" msgstr "" -#: config/tc-xtensa.c:10622 +#: config/tc-xtensa.c:10620 msgid "unable to widen instruction" msgstr "" -#: config/tc-xtensa.c:10761 +#: config/tc-xtensa.c:10758 msgid "multiple literals in expansion" msgstr "" -#: config/tc-xtensa.c:10765 +#: config/tc-xtensa.c:10762 msgid "no registered fragment for literal" msgstr "" -#: config/tc-xtensa.c:10767 +#: config/tc-xtensa.c:10764 msgid "number of literal tokens != 1" msgstr "" -#: config/tc-xtensa.c:10896 config/tc-xtensa.c:10902 +#: config/tc-xtensa.c:10893 config/tc-xtensa.c:10899 #, c-format msgid "unresolved loop target symbol: %s" msgstr "" -#: config/tc-xtensa.c:11008 +#: config/tc-xtensa.c:11388 #, c-format -msgid "invalid expression evaluation type %d" -msgstr "" - -#: config/tc-xtensa.c:11025 -msgid "loop too long for LOOP instruction" +msgid "fixes not all moved from %s" msgstr "" -#: config/tc-xtensa.c:11398 config/tc-xtensa.c:11635 +#: config/tc-xtensa.c:11516 msgid "" "literal pool location required for text-section-literals; specify with ." "literal_position" msgstr "" -#: config/tc-xtensa.c:11507 -#, c-format -msgid "fixes not all moved from %s" -msgstr "" - -#: config/tc-xtensa.c:12463 +#: config/tc-xtensa.c:12344 msgid "too many operands in instruction" msgstr "" -#: config/tc-xtensa.c:12673 +#: config/tc-xtensa.c:12554 msgid "invalid symbolic operand" msgstr "" -#: config/tc-xtensa.c:12734 +#: config/tc-xtensa.c:12615 msgid "operand number mismatch" msgstr "" -#: config/tc-xtensa.c:12738 +#: config/tc-xtensa.c:12619 #, c-format msgid "cannot encode opcode \"%s\" in the given format \"%s\"" msgstr "" -#: config/tc-xtensa.c:12763 +#: config/tc-xtensa.c:12644 #, c-format msgid "xtensa-isa failure: %s" msgstr "" -#: config/tc-xtensa.c:12840 +#: config/tc-xtensa.c:12721 msgid "invalid opcode" msgstr "" -#: config/tc-xtensa.c:12846 +#: config/tc-xtensa.c:12727 msgid "too few operands" msgstr "" -#: config/tc-xtensa.c:12852 +#: config/tc-xtensa.c:12733 msgid "too many operands" msgstr "" -#: config/tc-xtensa.c:12896 +#: config/tc-xtensa.c:12777 msgid "multiple writes to the same register" msgstr "" -#: config/tc-xtensa.c:13010 config/tc-xtensa.c:13016 +#: config/tc-xtensa.c:12891 config/tc-xtensa.c:12897 msgid "out of memory" msgstr "" -#: config/tc-xtensa.c:13105 +#: config/tc-xtensa.c:12986 msgid "TLS relocation not allowed in FLIX bundle" msgstr "" @@ -19221,88 +19952,129 @@ msgstr "" #. relaxed in the front-end. If "record_fixup" is set, then this #. function is being called during back-end relaxation, so flag #. the unexpected behavior as an error. -#: config/tc-xtensa.c:13111 +#: config/tc-xtensa.c:12992 msgid "unexpected TLS relocation" msgstr "" -#: config/tc-xtensa.c:13155 +#: config/tc-xtensa.c:13036 msgid "symbolic operand not allowed" msgstr "" -#: config/tc-xtensa.c:13192 +#: config/tc-xtensa.c:13073 msgid "cannot decode instruction format" msgstr "" -#: config/tc-xtensa.c:13336 +#: config/tc-xtensa.c:13217 msgid "ignoring extra '-rename-section' delimiter ':'" msgstr "" -#: config/tc-xtensa.c:13341 +#: config/tc-xtensa.c:13222 #, c-format msgid "ignoring invalid '-rename-section' specification: '%s'" msgstr "" -#: config/tc-xtensa.c:13352 +#: config/tc-xtensa.c:13233 #, c-format msgid "section %s renamed multiple times" msgstr "" -#: config/tc-xtensa.c:13354 +#: config/tc-xtensa.c:13235 #, c-format msgid "multiple sections remapped to output section %s" msgstr "" -#: config/tc-z80.c:326 +#: config/tc-z80.c:178 +#, c-format +msgid "invalid floating point numbers type `%s'" +msgstr "" + +#: config/tc-z80.c:199 config/tc-z80.c:208 +#, c-format +msgid "invalid INST in command line: %s" +msgstr "" + +#: config/tc-z80.c:564 msgid "-- unterminated string" msgstr "" -#: config/tc-z80.c:392 -msgid "floating point numbers are not implemented" +#: config/tc-z80.c:727 +msgid "undocumented instruction" msgstr "" -#: config/tc-z80.c:517 config/tc-z80.c:523 +#: config/tc-z80.c:771 config/tc-z80.c:777 msgid "mismatched parentheses" msgstr "" -#: config/tc-z80.c:560 +#: config/tc-z80.c:830 msgid "bad expression syntax" msgstr "" -#: config/tc-z80.c:722 +#: config/tc-z80.c:1046 +#, c-format +msgid "invalid data size %d" +msgstr "" + +#: config/tc-z80.c:1115 msgid "cannot make a relative jump to an absolute location" msgstr "" -#: config/tc-z80.c:734 config/tc-z80.c:2018 +#: config/tc-z80.c:1127 config/tc-z80.c:3357 config/tc-z80.c:3662 msgid "overflow" msgstr "" -#: config/tc-z80.c:1122 config/tc-z80.c:1165 config/tc-z80.c:1209 -#: config/tc-z80.c:1277 config/tc-z80.c:1329 config/tc-z80.c:1383 -#: config/tc-z80.c:1652 +#: config/tc-z80.c:1499 config/tc-z80.c:1542 config/tc-z80.c:1586 +#: config/tc-z80.c:1654 config/tc-z80.c:1706 config/tc-z80.c:1759 +#: config/tc-z80.c:1792 config/tc-z80.c:1848 config/tc-z80.c:2447 +#: config/tc-z80.c:2496 config/tc-z80.c:2534 config/tc-z80.c:2625 msgid "bad instruction syntax" msgstr "" -#: config/tc-z80.c:1255 +#: config/tc-z80.c:1632 msgid "condition code invalid for jr" msgstr "" -#: config/tc-z80.c:1761 +#: config/tc-z80.c:2193 config/tc-z80.c:2204 config/tc-z80.c:2220 +#: config/tc-z80.c:2253 +msgid "ADL mode instruction" +msgstr "" + +#. SIS prefix, in Z80 it is LD B,B +#. LIS prefix, in Z80 it is LD C,C +#. SIL prefix, in Z80 it is LD D,D +#. LIL prefix, in Z80 it is LD E,E +#: config/tc-z80.c:2328 +msgid "unsupported instruction, assembled as NOP" +msgstr "" + +#: config/tc-z80.c:2821 config/tc-z80.c:2852 msgid "parentheses ignored" msgstr "" -#: config/tc-z80.c:1993 config/tc-z8k.c:1467 config/tc-z8k.c:1530 +#: config/tc-z80.c:2869 +msgid "CPU mode is unsupported by target" +msgstr "" + +#: config/tc-z80.c:2891 +msgid "assignment expected" +msgstr "" + +#: config/tc-z80.c:3304 config/tc-z8k.c:1467 config/tc-z8k.c:1530 msgid "relative jump out of range" msgstr "" -#: config/tc-z80.c:2010 +#: config/tc-z80.c:3321 msgid "index offset out of range" msgstr "" -#: config/tc-z80.c:2052 config/tc-z8k.c:1538 +#: config/tc-z80.c:3400 config/tc-z8k.c:1538 #, c-format msgid "md_apply_fix: unknown r_type 0x%x\n" msgstr "" +#: config/tc-z80.c:3584 config/tc-z80.c:3643 +msgid "invalid syntax" +msgstr "" + #: config/tc-z8k.c:281 #, c-format msgid "register rr%d out of range" @@ -19437,72 +20209,72 @@ msgstr "" msgid "call to md_estimate_size_before_relax\n" msgstr "" -#: config/xtensa-relax.c:1550 +#: config/xtensa-relax.c:1583 #, c-format msgid "invalid configuration option '%s' in transition rule '%s'" msgstr "" -#: config/xtensa-relax.c:1675 config/xtensa-relax.c:1685 +#: config/xtensa-relax.c:1708 config/xtensa-relax.c:1718 #, c-format msgid "opcode '%s': no bound opname '%s' for precondition in '%s'" msgstr "" -#: config/xtensa-relax.c:1692 +#: config/xtensa-relax.c:1725 #, c-format msgid "opcode '%s': precondition only contains constants in '%s'" msgstr "" -#: config/xtensa-relax.c:1739 +#: config/xtensa-relax.c:1772 msgid "expected one operand for generated literal" msgstr "" -#: config/xtensa-relax.c:1746 +#: config/xtensa-relax.c:1779 msgid "expected 0 operands for generated label" msgstr "" -#: config/xtensa-relax.c:1759 +#: config/xtensa-relax.c:1792 #, c-format msgid "invalid opcode '%s' in transition rule '%s'" msgstr "" -#: config/xtensa-relax.c:1767 +#: config/xtensa-relax.c:1800 #, c-format msgid "opcode '%s': replacement does not have %d op" msgid_plural "opcode '%s': replacement does not have %d ops" msgstr[0] "" msgstr[1] "" -#: config/xtensa-relax.c:1783 +#: config/xtensa-relax.c:1816 #, c-format msgid "opcode '%s': cannot find literal definition" msgstr "" -#: config/xtensa-relax.c:1799 config/xtensa-relax.c:1829 +#: config/xtensa-relax.c:1832 config/xtensa-relax.c:1862 #, c-format msgid "opcode '%s': unidentified operand '%s' in '%s'" msgstr "" -#: config/xtensa-relax.c:1824 +#: config/xtensa-relax.c:1857 #, c-format msgid "unknown user-defined function %s" msgstr "" -#: config/xtensa-relax.c:1835 +#: config/xtensa-relax.c:1868 #, c-format msgid "opcode '%s': could not parse operand '%s' in '%s'" msgstr "" -#: config/xtensa-relax.c:1875 +#: config/xtensa-relax.c:1908 #, c-format msgid "could not parse INSN_PATTERN '%s'" msgstr "" -#: config/xtensa-relax.c:1879 +#: config/xtensa-relax.c:1912 #, c-format msgid "could not parse INSN_REPL '%s'" msgstr "" -#: config/xtensa-relax.c:1890 +#: config/xtensa-relax.c:1923 #, c-format msgid "could not build transition for %s => %s" msgstr "" @@ -19531,148 +20303,158 @@ msgstr "" msgid "CFI state restore without previous remember" msgstr "" -#: dw2gencfi.c:748 +#: dw2gencfi.c:749 msgid "missing separator" msgstr "" -#: dw2gencfi.c:797 +#: dw2gencfi.c:798 msgid "bad register expression" msgstr "" -#: dw2gencfi.c:818 dw2gencfi.c:948 dw2gencfi.c:986 dw2gencfi.c:1057 -#: dw2gencfi.c:1130 dw2gencfi.c:1195 dw2gencfi.c:1376 +#: dw2gencfi.c:819 dw2gencfi.c:949 dw2gencfi.c:987 dw2gencfi.c:1058 +#: dw2gencfi.c:1131 dw2gencfi.c:1196 dw2gencfi.c:1377 msgid "CFI instruction used without previous .cfi_startproc" msgstr "" -#: dw2gencfi.c:1011 +#: dw2gencfi.c:1012 msgid "invalid or unsupported encoding in .cfi_personality" msgstr "" -#: dw2gencfi.c:1018 +#: dw2gencfi.c:1019 msgid ".cfi_personality requires encoding and symbol arguments" msgstr "" -#: dw2gencfi.c:1041 +#: dw2gencfi.c:1042 msgid "wrong second argument to .cfi_personality" msgstr "" -#: dw2gencfi.c:1082 dw2gencfi.c:1158 +#: dw2gencfi.c:1083 dw2gencfi.c:1159 msgid "invalid or unsupported encoding in .cfi_lsda" msgstr "" -#: dw2gencfi.c:1089 +#: dw2gencfi.c:1090 msgid ".cfi_lsda requires encoding and symbol arguments" msgstr "" -#: dw2gencfi.c:1114 +#: dw2gencfi.c:1115 msgid "wrong second argument to .cfi_lsda" msgstr "" -#: dw2gencfi.c:1180 +#: dw2gencfi.c:1181 msgid "wrong third argument to .cfi_val_encoded_addr" msgstr "" -#: dw2gencfi.c:1278 +#: dw2gencfi.c:1279 msgid "inconsistent uses of .cfi_sections" msgstr "" -#: dw2gencfi.c:1289 +#: dw2gencfi.c:1290 msgid "previous CFI entry not closed (missing .cfi_endproc)" msgstr "" -#: dw2gencfi.c:1330 +#: dw2gencfi.c:1331 msgid ".cfi_endproc without corresponding .cfi_startproc" msgstr "" -#: dw2gencfi.c:1387 +#: dw2gencfi.c:1388 msgid "wrong argument to .cfi_personality_id" msgstr "" -#: dw2gencfi.c:1397 +#: dw2gencfi.c:1398 msgid ".cfi_fde_data without corresponding .cfi_startproc" msgstr "" -#: dw2gencfi.c:1506 +#: dw2gencfi.c:1507 msgid "unexpected .cfi_inline_lsda" msgstr "" -#: dw2gencfi.c:1513 +#: dw2gencfi.c:1514 msgid ".cfi_inline_lsda not valid for this frame" msgstr "" -#: dw2gencfi.c:1521 +#: dw2gencfi.c:1522 msgid ".cfi_inline_lsda seen for frame without .cfi_lsda" msgstr "" -#: dw2gencfi.c:1534 +#: dw2gencfi.c:1535 #, c-format msgid "Alignment too large: %d. assumed." msgstr "" -#: dw2gencfi.c:1538 +#: dw2gencfi.c:1539 msgid "Alignment negative: 0 assumed." msgstr "" -#: dw2gencfi.c:1564 +#: dw2gencfi.c:1565 msgid ".cfi_inline_lsda is not supported for this target" msgstr "" -#: dw2gencfi.c:1571 +#: dw2gencfi.c:1572 msgid ".cfi_fde_data is not supported for this target" msgstr "" -#: dw2gencfi.c:1578 +#: dw2gencfi.c:1579 msgid ".cfi_personality_id is not supported for this target" msgstr "" -#: dw2gencfi.c:2364 dw2gencfi.c:2520 +#: dw2gencfi.c:1893 +#, c-format +msgid "return column number %d overflows in CIE version 1" +msgstr "" + +#: dw2gencfi.c:2385 dw2gencfi.c:2541 msgid "open CFI at the end of file; missing .cfi_endproc directive" msgstr "" -#: dw2gencfi.c:2547 +#: dw2gencfi.c:2568 msgid "CFI is not supported for this target" msgstr "" -#: dwarf2dbg.c:372 dwarf2dbg.c:2290 +#: dwarf2dbg.c:372 dwarf2dbg.c:2340 msgid "view number mismatch" msgstr "" -#: dwarf2dbg.c:782 dwarf2dbg.c:826 +#: dwarf2dbg.c:757 dwarf2dbg.c:815 +#, c-format +msgid "file number %lu is too big" +msgstr "" + +#: dwarf2dbg.c:804 dwarf2dbg.c:854 msgid "file number less than one" msgstr "" -#: dwarf2dbg.c:792 +#: dwarf2dbg.c:820 #, c-format -msgid "file number %ld already allocated" +msgid "file number %u already allocated" msgstr "" -#: dwarf2dbg.c:831 dwarf2dbg.c:1699 +#: dwarf2dbg.c:859 dwarf2dbg.c:1727 #, c-format msgid "unassigned file number %ld" msgstr "" -#: dwarf2dbg.c:900 +#: dwarf2dbg.c:928 msgid "is_stmt value not 0 or 1" msgstr "" -#: dwarf2dbg.c:912 +#: dwarf2dbg.c:940 msgid "isa number less than zero" msgstr "" -#: dwarf2dbg.c:924 +#: dwarf2dbg.c:952 msgid "discriminator less than zero" msgstr "" -#: dwarf2dbg.c:943 +#: dwarf2dbg.c:971 msgid "numeric view can only be asserted to zero" msgstr "" -#: dwarf2dbg.c:981 +#: dwarf2dbg.c:1009 #, c-format msgid "unknown .loc sub-directive `%s'" msgstr "" -#: dwarf2dbg.c:1776 +#: dwarf2dbg.c:1804 msgid "internal error: unknown dwarf2 format" msgstr "" @@ -19851,117 +20633,117 @@ msgstr "" msgid "illegal .stab%c directive, bad character" msgstr "" -#: ecoff.c:3977 ecoff.c:4166 ecoff.c:4191 +#: ecoff.c:3976 ecoff.c:4164 ecoff.c:4189 msgid ".begin/.bend in different segments" msgstr "" -#: ecoff.c:4687 +#: ecoff.c:4684 msgid "missing .end or .bend at end of file" msgstr "" -#: ecoff.c:5172 +#: ecoff.c:5169 msgid "GP prologue size exceeds field size, using 0 instead" msgstr "" -#: expr.c:82 read.c:3803 +#: expr.c:84 read.c:3804 msgid "bignum invalid" msgstr "" -#: expr.c:84 read.c:3805 read.c:4310 read.c:5156 +#: expr.c:86 read.c:3806 read.c:4311 read.c:5157 msgid "floating point number invalid" msgstr "" -#: expr.c:207 +#: expr.c:209 msgid "bad floating-point constant: exponent overflow" msgstr "" -#: expr.c:211 +#: expr.c:213 #, c-format msgid "bad floating-point constant: unknown error code=%d" msgstr "" -#: expr.c:396 +#: expr.c:398 msgid "" "a bignum with underscores may not have more than 8 hex digits in any word" msgstr "" -#: expr.c:419 +#: expr.c:421 msgid "a bignum with underscores must have exactly 4 words" msgstr "" #. Either not seen or not defined. #. @@ Should print out the original string instead of #. the parsed number. -#: expr.c:557 +#: expr.c:559 #, c-format msgid "backward ref to unknown label \"%d:\"" msgstr "" -#: expr.c:675 +#: expr.c:677 msgid "character constant too large" msgstr "" -#: expr.c:970 +#: expr.c:963 #, c-format msgid "found '%c', expected: '%c'" msgstr "" -#: expr.c:973 +#: expr.c:966 #, c-format msgid "missing '%c'" msgstr "" -#: expr.c:985 read.c:4607 +#: expr.c:978 read.c:4608 msgid "EBCDIC constants are not supported" msgstr "" -#: expr.c:1112 +#: expr.c:1105 #, c-format msgid "Unary operator %c ignored because bad operand follows" msgstr "" -#: expr.c:1162 expr.c:1193 +#: expr.c:1169 expr.c:1200 msgid "syntax error in .startof. or .sizeof." msgstr "" -#: expr.c:1274 expr.c:1598 +#: expr.c:1281 expr.c:1605 #, c-format msgid "invalid use of operator \"%s\"" msgstr "" -#: expr.c:1782 +#: expr.c:1789 msgid "missing operand; zero assumed" msgstr "" -#: expr.c:1821 +#: expr.c:1828 msgid "left operand is a bignum; integer 0 assumed" msgstr "" -#: expr.c:1823 +#: expr.c:1830 msgid "left operand is a float; integer 0 assumed" msgstr "" -#: expr.c:1832 +#: expr.c:1839 msgid "right operand is a bignum; integer 0 assumed" msgstr "" -#: expr.c:1834 +#: expr.c:1841 msgid "right operand is a float; integer 0 assumed" msgstr "" -#: expr.c:1912 symbols.c:1558 +#: expr.c:1919 symbols.c:1561 msgid "division by zero" msgstr "" -#: expr.c:1918 +#: expr.c:1925 msgid "shift count" msgstr "" -#: expr.c:2039 +#: expr.c:2046 msgid "operation combines symbols in different segments" msgstr "" -#: expr.c:2361 +#: expr.c:2371 msgid "missing closing '\"'" msgstr "" @@ -20101,106 +20883,106 @@ msgid "new line in title" msgstr "" #. Turns the next expression into a string. -#: macro.c:382 +#: macro.c:381 #, no-c-format msgid "% operator needs absolute expression" msgstr "" -#: macro.c:536 +#: macro.c:535 #, c-format msgid "Missing parameter qualifier for `%s' in macro `%s'" msgstr "" -#: macro.c:546 +#: macro.c:545 #, c-format msgid "`%s' is not a valid parameter qualifier for `%s' in macro `%s'" msgstr "" -#: macro.c:563 +#: macro.c:562 #, c-format msgid "Pointless default value for required parameter `%s' in macro `%s'" msgstr "" -#: macro.c:575 +#: macro.c:574 #, c-format msgid "A parameter named `%s' already exists for macro `%s'" msgstr "" -#: macro.c:612 +#: macro.c:611 #, c-format msgid "Reserved word `%s' used as parameter in macro `%s'" msgstr "" -#: macro.c:670 +#: macro.c:669 #, c-format msgid "unexpected end of file in macro `%s' definition" msgstr "" -#: macro.c:682 +#: macro.c:681 #, c-format msgid "missing `)' after formals in macro definition `%s'" msgstr "" -#: macro.c:697 +#: macro.c:696 msgid "Missing macro name" msgstr "" -#: macro.c:706 +#: macro.c:705 #, c-format msgid "Bad parameter list for macro `%s'" msgstr "" -#: macro.c:712 +#: macro.c:711 #, c-format msgid "Macro `%s' was already defined" msgstr "" -#: macro.c:837 macro.c:839 +#: macro.c:836 macro.c:838 msgid "missing `)'" msgstr "" -#: macro.c:936 +#: macro.c:935 #, c-format msgid "`%s' was already used as parameter (or another local) name" msgstr "" -#: macro.c:1094 +#: macro.c:1093 msgid "confusion in formal parameters" msgstr "" -#: macro.c:1102 +#: macro.c:1101 #, c-format msgid "Parameter named `%s' does not exist for macro `%s'" msgstr "" -#: macro.c:1113 +#: macro.c:1112 #, c-format msgid "Value for parameter `%s' of macro `%s' was already specified" msgstr "" -#: macro.c:1127 +#: macro.c:1126 msgid "can't mix positional and keyword arguments" msgstr "" -#: macro.c:1138 +#: macro.c:1137 msgid "too many positional arguments" msgstr "" -#: macro.c:1186 +#: macro.c:1185 #, c-format msgid "Missing value for required parameter `%s' of macro `%s'" msgstr "" -#: macro.c:1304 +#: macro.c:1303 #, c-format msgid "Attempt to purge non-existing macro `%s'" msgstr "" -#: macro.c:1324 +#: macro.c:1323 msgid "unexpected end of file in irp or irpc" msgstr "" -#: macro.c:1332 +#: macro.c:1331 msgid "missing model parameter" msgstr "" @@ -20236,16 +21018,16 @@ msgstr "" #: messages.c:400 #, c-format -msgid "%s out of domain (%d is not a multiple of %d)" +msgid "%s out of domain (%" msgstr "" -#: messages.c:418 +#: messages.c:417 #, c-format -msgid "%s out of range (%d is not between %d and %d)" +msgid "%s out of range (%" msgstr "" #. xgettext:c-format. -#: messages.c:441 +#: messages.c:439 #, c-format msgid "%s out of range (0x%s is not between 0x%s and 0x%s)" msgstr "" @@ -20504,200 +21286,200 @@ msgstr "" msgid "junk at end of line, first unrecognized character valued 0x%x" msgstr "" -#: read.c:3869 write.c:2353 +#: read.c:3870 write.c:2354 #, c-format msgid "`%s' can't be equated to common symbol `%s'" msgstr "" -#: read.c:3999 +#: read.c:4000 msgid "unexpected `\"' in expression" msgstr "" -#: read.c:4012 +#: read.c:4013 msgid "rva without symbol" msgstr "" -#: read.c:4081 +#: read.c:4082 msgid "missing or bad offset expression" msgstr "" -#: read.c:4102 +#: read.c:4103 msgid "missing reloc type" msgstr "" -#: read.c:4126 +#: read.c:4127 msgid "unrecognized reloc type" msgstr "" -#: read.c:4142 +#: read.c:4143 msgid "bad reloc expression" msgstr "" -#: read.c:4304 read.c:5150 +#: read.c:4305 read.c:5151 msgid "zero assumed for missing expression" msgstr "" -#: read.c:4324 read.c:5179 +#: read.c:4325 read.c:5180 msgid "attempt to store value in absolute section" msgstr "" -#: read.c:4331 read.c:5185 +#: read.c:4332 read.c:5186 #, c-format msgid "attempt to store non-zero value in section `%s'" msgstr "" -#: read.c:4417 +#: read.c:4418 #, c-format msgid "value 0x%llx truncated to 0x%llx" msgstr "" -#: read.c:4420 +#: read.c:4421 msgid "value 0x%I64x truncated to 0x%I64x" msgstr "" -#: read.c:4424 +#: read.c:4425 #, c-format msgid "value 0x%lx truncated to 0x%lx" msgstr "" -#: read.c:4469 +#: read.c:4470 #, c-format msgid "bignum truncated to %d byte" msgid_plural "bignum truncated to %d bytes" msgstr[0] "" msgstr[1] "" -#: read.c:4678 read.c:4888 +#: read.c:4679 read.c:4889 msgid "unresolvable or nonpositive repeat count; using 1" msgstr "" -#: read.c:4727 +#: read.c:4728 #, c-format msgid "unknown floating type type '%c'" msgstr "" -#: read.c:4749 +#: read.c:4750 msgid "floating point constant too large" msgstr "" -#: read.c:4813 +#: read.c:4814 msgid "attempt to store float in absolute section" msgstr "" -#: read.c:4820 +#: read.c:4821 #, c-format msgid "attempt to store float in section `%s'" msgstr "" -#: read.c:5268 +#: read.c:5269 #, c-format msgid "attempt to store non-empty string in section `%s'" msgstr "" -#: read.c:5330 +#: read.c:5331 msgid "strings must be placed into a section" msgstr "" -#: read.c:5394 +#: read.c:5393 msgid "expected <nn>" msgstr "" #. To be compatible with BSD 4.2 as: give the luser a linefeed!! -#: read.c:5435 read.c:5521 +#: read.c:5434 read.c:5520 msgid "unterminated string; newline inserted" msgstr "" -#: read.c:5535 +#: read.c:5534 msgid "bad escaped character in string" msgstr "" -#: read.c:5560 +#: read.c:5559 msgid "expected address expression" msgstr "" -#: read.c:5579 +#: read.c:5578 #, c-format msgid "symbol \"%s\" undefined; zero assumed" msgstr "" -#: read.c:5582 +#: read.c:5581 msgid "some symbol undefined; zero assumed" msgstr "" -#: read.c:5617 +#: read.c:5616 msgid "this string may not contain '\\0'" msgstr "" -#: read.c:5653 +#: read.c:5652 msgid "missing string" msgstr "" -#: read.c:5744 +#: read.c:5743 #, c-format msgid ".incbin count zero, ignoring `%s'" msgstr "" -#: read.c:5770 +#: read.c:5769 #, c-format msgid "file not found: %s" msgstr "" -#: read.c:5784 +#: read.c:5783 #, c-format msgid "seek to end of .incbin file failed `%s'" msgstr "" -#: read.c:5795 +#: read.c:5794 #, c-format msgid "skip (%ld) or count (%ld) invalid for file size (%ld)" msgstr "" -#: read.c:5802 +#: read.c:5801 #, c-format msgid "could not skip to %ld in file `%s'" msgstr "" -#: read.c:5811 +#: read.c:5810 #, c-format msgid "truncated file `%s', %ld of %ld bytes read" msgstr "" -#: read.c:5969 +#: read.c:5968 msgid "missing .func" msgstr "" -#: read.c:5986 +#: read.c:5985 msgid ".endfunc missing for previous .func" msgstr "" -#: read.c:6045 +#: read.c:6044 #, c-format msgid ".bundle_align_mode alignment too large (maximum %u)" msgstr "" -#: read.c:6050 +#: read.c:6049 msgid "cannot change .bundle_align_mode inside .bundle_lock" msgstr "" -#: read.c:6064 +#: read.c:6063 msgid ".bundle_lock is meaningless without .bundle_align_mode" msgstr "" -#: read.c:6085 +#: read.c:6084 msgid ".bundle_unlock without preceding .bundle_lock" msgstr "" -#: read.c:6098 +#: read.c:6097 #, c-format msgid ".bundle_lock sequence is %u bytes, but bundle size is only %u bytes" msgstr "" -#: read.c:6197 +#: read.c:6196 #, c-format msgid "missing closing `%c'" msgstr "" -#: read.c:6199 +#: read.c:6198 msgid "stray `\\'" msgstr "" @@ -20743,125 +21525,125 @@ msgstr "" msgid "inserting \"%s\" into symbol table failed: %s" msgstr "" -#: symbols.c:1184 +#: symbols.c:1181 #, c-format msgid "invalid operands (%s and %s sections) for `%s'" msgstr "" -#: symbols.c:1188 +#: symbols.c:1185 #, c-format msgid "invalid operand (%s section) for `%s'" msgstr "" -#: symbols.c:1196 +#: symbols.c:1193 #, c-format msgid "invalid operands (%s and %s sections) for `%s' when setting `%s'" msgstr "" -#: symbols.c:1199 +#: symbols.c:1196 #, c-format msgid "invalid operand (%s section) for `%s' when setting `%s'" msgstr "" -#: symbols.c:1248 +#: symbols.c:1259 #, c-format msgid "symbol definition loop encountered at `%s'" msgstr "" -#: symbols.c:1275 +#: symbols.c:1286 #, c-format msgid "cannot convert expression symbol %s to complex relocation" msgstr "" -#: symbols.c:1560 +#: symbols.c:1563 #, c-format msgid "division by zero when setting `%s'" msgstr "" #. See PR 20895 for a reproducer. -#: symbols.c:1600 +#: symbols.c:1603 msgid "Invalid operation on symbol" msgstr "" -#: symbols.c:1650 write.c:2402 +#: symbols.c:1653 write.c:2403 #, c-format msgid "can't resolve value for symbol `%s'" msgstr "" -#: symbols.c:2109 +#: symbols.c:2112 #, c-format msgid "\"%d\" (instance number %d of a %s label)" msgstr "" -#: symbols.c:2138 +#: symbols.c:2141 #, c-format msgid "attempt to get value of unresolved symbol `%s'" msgstr "" #. Do not reassign section symbols. -#: symbols.c:2426 +#: symbols.c:2429 msgid "section symbols are already global" msgstr "" -#: symbols.c:2539 +#: symbols.c:2542 #, c-format msgid "Accessing function `%s' as thread-local object" msgstr "" -#: symbols.c:2543 +#: symbols.c:2546 #, c-format msgid "Accessing `%s' as thread-local object" msgstr "" #: write.c:167 #, c-format -msgid "field fx_size too small to hold %d" +msgid "field fx_size too small to hold %lu" msgstr "" -#: write.c:456 +#: write.c:454 #, c-format msgid "attempt to .org/.space/.nops backwards? (%ld)" msgstr "" -#: write.c:478 +#: write.c:476 #, c-format msgid "leb128 operand is an undefined symbol: %s" msgstr "" -#: write.c:709 +#: write.c:707 msgid "invalid offset expression" msgstr "" -#: write.c:731 +#: write.c:729 msgid "invalid reloc expression" msgstr "" -#: write.c:1114 +#: write.c:1112 #, c-format msgid "value of %s too large for field of %d byte at %s" msgid_plural "value of %s too large for field of %d bytes at %s" msgstr[0] "" msgstr[1] "" -#: write.c:1130 +#: write.c:1128 #, c-format msgid "signed .word overflow; switch may be too large; %ld at 0x%lx" msgstr "" -#: write.c:1171 +#: write.c:1169 msgid "redefined symbol cannot be used on reloc" msgstr "" -#: write.c:1184 +#: write.c:1182 msgid "relocation out of range" msgstr "" -#: write.c:1187 +#: write.c:1185 #, c-format msgid "%s:%u: bad return from bfd_install_relocation: %x" msgstr "" -#: write.c:1215 +#: write.c:1213 msgid "reloc not within (fixed part of) section" msgstr "" @@ -20891,58 +21673,58 @@ msgid_plural "can't fill %ld bytes in section %s of %s: '%s'" msgstr[0] "" msgstr[1] "" -#: write.c:1913 +#: write.c:1914 msgid "unable to create reloc for build note" msgstr "" -#: write.c:1917 +#: write.c:1918 msgid "<gnu build note>" msgstr "" -#: write.c:2318 +#: write.c:2319 #, c-format msgid "%s: global symbols not supported in common sections" msgstr "" -#: write.c:2332 +#: write.c:2333 #, c-format msgid "local label `%s' is not defined" msgstr "" -#: write.c:2360 +#: write.c:2361 #, c-format msgid "can't make global register symbol `%s'" msgstr "" -#: write.c:2665 +#: write.c:2670 #, c-format msgid "alignment padding (%lu byte) not a multiple of %ld" msgid_plural "alignment padding (%lu bytes) not a multiple of %ld" msgstr[0] "" msgstr[1] "" -#: write.c:2832 +#: write.c:2837 #, c-format msgid ".word %s-%s+%s didn't fit" msgstr "" -#: write.c:2926 +#: write.c:2931 msgid "padding added" msgstr "" -#: write.c:2977 +#: write.c:2982 msgid "attempt to move .org backwards" msgstr "" -#: write.c:3002 +#: write.c:3007 msgid ".space specifies non-absolute value" msgstr "" -#: write.c:3017 +#: write.c:3022 msgid ".space, .nops or .fill with negative value, ignored" msgstr "" -#: write.c:3088 +#: write.c:3094 #, c-format msgid "" "Infinite loop encountered whilst attempting to compute the addresses of " diff --git a/gas/testsuite/gas/all/cond.l b/gas/testsuite/gas/all/cond.l index af80a10..dfd5eee 100644 --- a/gas/testsuite/gas/all/cond.l +++ b/gas/testsuite/gas/all/cond.l @@ -24,8 +24,8 @@ 29[ ]+.else 31[ ]+.endif [ ]*[1-9][0-9]*[ ]+ -[ ]*[1-9][0-9]*[ ]+\.comm[ ]+c,[ ]*1[ ]* -[ ]*[1-9][0-9]*[ ]+\.ifndef[ ]+c[ ]* +[ ]*[1-9][0-9]*[ ]+\.comm[ ]+v_c,[ ]*1[ ]* +[ ]*[1-9][0-9]*[ ]+\.ifndef[ ]+v_c[ ]* [ ]*[1-9][0-9]*[ ]+\.endif[ ]* [ ]*[1-9][0-9]*[ ]* [ ]*[1-9][0-9]*[ ]+\.if[ ]+x[ ]*<>[ ]*x[ ]* @@ -39,15 +39,15 @@ [ ]*[1-9][0-9]*[ ]+\.if[ ]+y[ ]*<>[ ]*z[ ]* [ ]*[1-9][0-9]*[ ]+\.endif[ ]* [ ]*[1-9][0-9]*[ ]* -[ ]*[1-9][0-9]*[ ]+\.equiv[ ]+a,[ ]*y[ ]*\+[ ]*1[ ]* -[ ]*[1-9][0-9]*[ ]+\.equiv[ ]+b,[ ]*z[ ]*-[ ]*1[ ]* -[ ]*[1-9][0-9]*[ ]+\.if[ ]+a[ ]*==[ ]*x[ ]* +[ ]*[1-9][0-9]*[ ]+\.equiv[ ]+v_a,[ ]*y[ ]*\+[ ]*1[ ]* +[ ]*[1-9][0-9]*[ ]+\.equiv[ ]+v_b,[ ]*z[ ]*-[ ]*1[ ]* +[ ]*[1-9][0-9]*[ ]+\.if[ ]+v_a[ ]*==[ ]*x[ ]* [ ]*[1-9][0-9]*[ ]+\.endif[ ]* -[ ]*[1-9][0-9]*[ ]+\.if[ ]+a[ ]*-[ ]*1[ ]*<>[ ]*x[ ]* +[ ]*[1-9][0-9]*[ ]+\.if[ ]+v_a[ ]*-[ ]*1[ ]*<>[ ]*x[ ]* [ ]*[1-9][0-9]*[ ]+\.endif[ ]* -[ ]*[1-9][0-9]*[ ]+\.if[ ]+a[ ]*<>[ ]*b[ ]*\+[ ]*2[ ]* +[ ]*[1-9][0-9]*[ ]+\.if[ ]+v_a[ ]*<>[ ]*v_b[ ]*\+[ ]*2[ ]* [ ]*[1-9][0-9]*[ ]+\.endif[ ]* -[ ]*[1-9][0-9]*[ ]+\.if[ ]+a[ ]*-[ ]*b[ ]*<>[ ]*2[ ]* +[ ]*[1-9][0-9]*[ ]+\.if[ ]+v_a[ ]*-[ ]*v_b[ ]*<>[ ]*2[ ]* [ ]*[1-9][0-9]*[ ]+\.endif[ ]* [ ]*[1-9][0-9]*[ ]* [ ]*[1-9][0-9]*[ ]+\.equiv[ ]+x,[ ]*0[ ]* diff --git a/gas/testsuite/gas/all/cond.s b/gas/testsuite/gas/all/cond.s index f0bf67a..9a7c6e3 100644 --- a/gas/testsuite/gas/all/cond.s +++ b/gas/testsuite/gas/all/cond.s @@ -30,8 +30,8 @@ .long 9 .endif - .comm c, 1 - .ifndef c + .comm v_c, 1 + .ifndef v_c .err .endif @@ -50,18 +50,18 @@ .err .endif - .equiv a, y + 1 - .equiv b, z - 1 - .if a == x + .equiv v_a, y + 1 + .equiv v_b, z - 1 + .if v_a == x .err .endif - .if a - 1 <> x + .if v_a - 1 <> x .err .endif - .if a <> b + 2 + .if v_a <> v_b + 2 .err .endif - .if a - b <> 2 + .if v_a - v_b <> 2 .err .endif diff --git a/gas/testsuite/gas/all/fwdexp.d b/gas/testsuite/gas/all/fwdexp.d index eee91c0..211ab9f 100644 --- a/gas/testsuite/gas/all/fwdexp.d +++ b/gas/testsuite/gas/all/fwdexp.d @@ -5,7 +5,7 @@ RELOCATION RECORDS FOR .* OFFSET +TYPE +VALUE -0+ .*(\.data|i)(|\+0xf+e|\+0xf+c|\+0xf+8|-0x0*2|-0x0*4|-0x0*8) +0+ .*(\.data|label_i)(|\+0xf+e|\+0xf+c|\+0xf+8|-0x0*2|-0x0*4|-0x0*8) Contents of section .* 0+ (0+|feff|fffe|fcffffff|fffffffc|f8ffffff|f8ffffff ffffffff|ffffffff fffffff8|0+4) .* diff --git a/gas/testsuite/gas/all/fwdexp.s b/gas/testsuite/gas/all/fwdexp.s index e103099..ecc7c4e 100644 --- a/gas/testsuite/gas/all/fwdexp.s +++ b/gas/testsuite/gas/all/fwdexp.s @@ -1,6 +1,6 @@ .data -i: +label_i: .text - .dc.a i + (. - .L1) + .dc.a label_i + (. - .L1) .L1: diff --git a/gas/testsuite/gas/elf/section2.e-mips b/gas/testsuite/gas/elf/section2.e-mips index e7588cf..f6eed4a 100644 --- a/gas/testsuite/gas/elf/section2.e-mips +++ b/gas/testsuite/gas/elf/section2.e-mips @@ -5,7 +5,7 @@ Symbol table '.symtab' contains 9 entries: +1: 0+0 +0 +SECTION +LOCAL +DEFAULT +1 (|\.text) +2: 0+0 +0 +SECTION +LOCAL +DEFAULT +2 (|\.data) +3: 0+0 +0 +SECTION +LOCAL +DEFAULT +3 (|\.bss) - +4: 0+0 +0 +SECTION +LOCAL +DEFAULT +7 (|A) + +4: 0+0 +0 +SECTION +LOCAL +DEFAULT +7 (|AAA) +5: 0+0 +0 +SECTION +LOCAL +DEFAULT +4 (|\.reginfo) +6: 0+0 +0 +SECTION +LOCAL +DEFAULT +5 (|\.MIPS\.abiflags) +7: 0+0 +0 +SECTION +LOCAL +DEFAULT +6 (|\.pdr) diff --git a/gas/testsuite/gas/elf/section2.l b/gas/testsuite/gas/elf/section2.l index 9d20eebd0..c311ff9 100644 --- a/gas/testsuite/gas/elf/section2.l +++ b/gas/testsuite/gas/elf/section2.l @@ -3,6 +3,6 @@ .*GAS.* -[ ]+1[ ]+.section A -[ ]+2[ ]+.global A +[ ]+1[ ]+.section AAA +[ ]+2[ ]+.global AAA [ ]+3 0000 31[ ]+.byte 49 diff --git a/gas/testsuite/gas/elf/section2.s b/gas/testsuite/gas/elf/section2.s index 02239e7..2c181e5 100644 --- a/gas/testsuite/gas/elf/section2.s +++ b/gas/testsuite/gas/elf/section2.s @@ -1,3 +1,3 @@ - .section A - .global A + .section AAA + .global AAA .byte 49 diff --git a/gas/testsuite/gas/macros/app1.d b/gas/testsuite/gas/macros/app1.d index e7f7e1e..871dbec 100644 --- a/gas/testsuite/gas/macros/app1.d +++ b/gas/testsuite/gas/macros/app1.d @@ -1,7 +1,7 @@ #nm: -n #name: APP with macro without NO_APP #... -0+ T a +0+ T label_a #... -0+[1-f] T b +0+[1-f] T label_b #pass diff --git a/gas/testsuite/gas/macros/app1.s b/gas/testsuite/gas/macros/app1.s index 5cc7a07..0d1aeac 100644 --- a/gas/testsuite/gas/macros/app1.s +++ b/gas/testsuite/gas/macros/app1.s @@ -1,12 +1,12 @@ #NO_APP .text .macro foo - .globl a -a: + .globl label_a +label_a: .long 42 .endm #APP foo - .globl b -b: + .globl label_b +label_b: .long 56 diff --git a/gas/testsuite/gas/macros/app2.d b/gas/testsuite/gas/macros/app2.d index ef62e3a..7f71df3 100644 --- a/gas/testsuite/gas/macros/app2.d +++ b/gas/testsuite/gas/macros/app2.d @@ -1,7 +1,7 @@ #nm: -n #name: APP with macro then NO_APP #... -0+ T a +0+ T label_a #... -0+[1-f] T b +0+[1-f] T label_b #pass diff --git a/gas/testsuite/gas/macros/app2.s b/gas/testsuite/gas/macros/app2.s index 8f9222b..843ed8e 100644 --- a/gas/testsuite/gas/macros/app2.s +++ b/gas/testsuite/gas/macros/app2.s @@ -1,13 +1,13 @@ #NO_APP .text .macro foo - .globl a -a: + .globl label_a +label_a: .long 42 .endm #APP foo - .globl b -b: + .globl label_b +label_b: .long 56 #NO_APP diff --git a/gas/testsuite/gas/macros/app3.d b/gas/testsuite/gas/macros/app3.d index 4be449c..6e4f568 100644 --- a/gas/testsuite/gas/macros/app3.d +++ b/gas/testsuite/gas/macros/app3.d @@ -1,9 +1,9 @@ #nm: -n #name: APP with macro then NO_APP then more code #... -0+ T a +0+ T label_a #... -0+[1-f] T b +0+[1-f] T label_b #... -0+[2-f] T c +0+[2-f] T label_c #pass diff --git a/gas/testsuite/gas/macros/app3.s b/gas/testsuite/gas/macros/app3.s index 7d950c5..3547aab 100644 --- a/gas/testsuite/gas/macros/app3.s +++ b/gas/testsuite/gas/macros/app3.s @@ -1,16 +1,16 @@ #NO_APP .text .macro foo - .globl a -a: + .globl label_a +label_a: .long 42 .endm #APP foo - .globl b -b: + .globl label_b +label_b: .long 56 #NO_APP - .globl c -c: + .globl label_c +label_c: .long 78 diff --git a/gas/testsuite/gas/macros/app4.d b/gas/testsuite/gas/macros/app4.d index 537a03b..9797e19 100644 --- a/gas/testsuite/gas/macros/app4.d +++ b/gas/testsuite/gas/macros/app4.d @@ -2,9 +2,9 @@ #nm: -n #name: included file with .if 0 wrapped in APP/NO_APP, no final NO_APP, macro in main file #... -0+ T d +0+ T label_d #... -0+[1-f] T a +0+[1-f] T label_a #... -0+[2-f] T b +0+[2-f] T label_b #pass diff --git a/gas/testsuite/gas/macros/app4.s b/gas/testsuite/gas/macros/app4.s index 1966514..a4ed822 100644 --- a/gas/testsuite/gas/macros/app4.s +++ b/gas/testsuite/gas/macros/app4.s @@ -1,11 +1,11 @@ .text .macro foo - .globl a -a: + .globl label_a +label_a: .long 42 .endm .include "app4b.s" foo - .globl b -b: + .globl label_b +label_b: .long 56 diff --git a/gas/testsuite/gas/macros/app4b.s b/gas/testsuite/gas/macros/app4b.s index 45e6c4c..626546b 100644 --- a/gas/testsuite/gas/macros/app4b.s +++ b/gas/testsuite/gas/macros/app4b.s @@ -1,12 +1,12 @@ #NO_APP - .globl d -d: + .globl label_d +label_d: .long 21 #APP .if 0 #NO_APP .err - .globl x -x: + .globl label_x +label_x: #APP .endif diff --git a/gas/testsuite/gas/z80/colonless.d b/gas/testsuite/gas/z80/colonless.d new file mode 100644 index 0000000..a8af8ca --- /dev/null +++ b/gas/testsuite/gas/z80/colonless.d @@ -0,0 +1,21 @@ +#name: colonless labels +#source: colonless.s -colonless +#objdump: -d + +.*:[ ]+file format (coff)|(elf32)\-z80 + + +Disassembly of section \.text: + +00000000 <start>: +[ ]+0:[ ]+3e 00[ ]+ld a,0x00 +[ ]+2:[ ]+28 0c[ ]+jr z,0x0010 +[ ]+4:[ ]+3e 01[ ]+ld a,0x01 +[ ]+6:[ ]+3e 02[ ]+ld a,0x02 +[ ]+8:[ ]+3e 03[ ]+ld a,0x03 +[ ]+a:[ ]+18 f4[ ]+jr 0x0000 +[ ]+c:[ ]+18 f4[ ]+jr 0x0002 +[ ]+e:[ ]+18 f6[ ]+jr 0x0006 + +00000010 <finish>: +[ ]+10:[ ]+c9[ ]+ret diff --git a/gas/testsuite/gas/z80/colonless.s b/gas/testsuite/gas/z80/colonless.s new file mode 100644 index 0000000..55410f8 --- /dev/null +++ b/gas/testsuite/gas/z80/colonless.s @@ -0,0 +1,14 @@ + .text + ;; colon less labels test +start + ld a,0 +.L_next + jr z,finish + ld a,1 +.L_xx ld a,2 + ld a,3 + jr start + jr .L_next + jr .L_xx +finish ret + .end diff --git a/gas/testsuite/gas/z80/data.d b/gas/testsuite/gas/z80/data.d new file mode 100644 index 0000000..f96cd40 --- /dev/null +++ b/gas/testsuite/gas/z80/data.d @@ -0,0 +1,16 @@ +#name: data definition +#objdump: -s -j .data + +.*:[ ]+file format (coff)|(elf32)\-z80 + +Contents of section \.data: + 0000 007fff80 6d657373 61676500 0000ffff.* + 0010 7fffffff 00008056 34120000 0000ffff.* + 0020 ff7fffff ffff0000 00807856 34120000.* + 0030 00ffff7f ffffff00 00805634 12000000.* + 0040 00ffffff 7fffffff ff000000 80785634.* + 0050 12007fff 80746578 746d6573 73616765.* + 0060 00000000 00000000 000000ff 7f0080ff.* + 0070 ff008034 12000000 00000000 000000ff.* + 0080 7f0080ff ff008034 12.* +#pass diff --git a/gas/testsuite/gas/z80/data.s b/gas/testsuite/gas/z80/data.s new file mode 100644 index 0000000..ccbb557 --- /dev/null +++ b/gas/testsuite/gas/z80/data.s @@ -0,0 +1,13 @@ + .data + .db 0, 127, -1, 0x80, "message" + .d24 0, 8388607, -1, 0x800000, 0x123456 + .d32 0, 2147483647, -1, 0x80000000, 0x12345678 + def24 0, 8388607, -1, 0x800000, 0x123456 + def32 0, 2147483647, -1, 0x80000000, 0x12345678 + defb 0, 127, -1, 0x80 + defm "text", "message", 0 + defs 8 + defw 0, 32767, 32768, -1, 0x8000, 0x1234 + .ds 8 + .dw 0, 32767, 32768, -1, 0x8000, 0x1234 + .end diff --git a/gas/testsuite/gas/z80/dollar.d b/gas/testsuite/gas/z80/dollar.d new file mode 100644 index 0000000..24ad8a6 --- /dev/null +++ b/gas/testsuite/gas/z80/dollar.d @@ -0,0 +1,8 @@ +#objdump: -s -j .data +#name: dollar labels + +.*:[ ]+file format (coff)|(elf32)\-z80 + +Contents of section .data: + 0000 00000000 00000000 00000000 00000000[ ]+.* + 0010 12001200 18001600 18001600 1800[ ]+.* diff --git a/gas/testsuite/gas/z80/dollar.s b/gas/testsuite/gas/z80/dollar.s new file mode 100644 index 0000000..ffcb044 --- /dev/null +++ b/gas/testsuite/gas/z80/dollar.s @@ -0,0 +1,17 @@ + .data + .org 0x10 +_label1: + .dw 100$ +100$: + .dw 100$ +_label2: + .dw 110$ +100$: + .dw 100$ +110$: + .dw 110$ +.L_label3: + .dw 100$ + .dw 110$ + .end + diff --git a/gas/testsuite/gas/z80/ez80_adl_all.d b/gas/testsuite/gas/z80/ez80_adl_all.d new file mode 100644 index 0000000..8d715c6 --- /dev/null +++ b/gas/testsuite/gas/z80/ez80_adl_all.d @@ -0,0 +1,961 @@ +#as: -ez80-adl +#objdump: -d +#name: All eZ80 instructions in ADL cpu mode + +.*:.* + +Disassembly of section .text: + +0+ <.text>: +\s+0:\s+a7\s+and a,a +\s+1:\s+a0\s+and a,b +\s+2:\s+a1\s+and a,c +\s+3:\s+a2\s+and a,d +\s+4:\s+a3\s+and a,e +\s+5:\s+a4\s+and a,h +\s+6:\s+a5\s+and a,l +\s+7:\s+a6\s+and a,\(hl\) +\s+8:\s+e6 aa\s+and a,0xaa +\s+a:\s+dd a6 05\s+and a,\(ix\+5\) +\s+d:\s+fd a6 fb\s+and a,\(iy\-5\) +\s+10:\s+bf\s+cp a,a +\s+11:\s+b8\s+cp a,b +\s+12:\s+b9\s+cp a,c +\s+13:\s+ba\s+cp a,d +\s+14:\s+bb\s+cp a,e +\s+15:\s+bc\s+cp a,h +\s+16:\s+bd\s+cp a,l +\s+17:\s+be\s+cp a,\(hl\) +\s+18:\s+fe aa\s+cp a,0xaa +\s+1a:\s+dd be 05\s+cp a,\(ix\+5\) +\s+1d:\s+fd be fb\s+cp a,\(iy\-5\) +\s+20:\s+b7\s+or a,a +\s+21:\s+b0\s+or a,b +\s+22:\s+b1\s+or a,c +\s+23:\s+b2\s+or a,d +\s+24:\s+b3\s+or a,e +\s+25:\s+b4\s+or a,h +\s+26:\s+b5\s+or a,l +\s+27:\s+b6\s+or a,\(hl\) +\s+28:\s+f6 aa\s+or a,0xaa +\s+2a:\s+dd b6 05\s+or a,\(ix\+5\) +\s+2d:\s+fd b6 fb\s+or a,\(iy\-5\) +\s+30:\s+97\s+sub a,a +\s+31:\s+90\s+sub a,b +\s+32:\s+91\s+sub a,c +\s+33:\s+92\s+sub a,d +\s+34:\s+93\s+sub a,e +\s+35:\s+94\s+sub a,h +\s+36:\s+95\s+sub a,l +\s+37:\s+96\s+sub a,\(hl\) +\s+38:\s+d6 aa\s+sub a,0xaa +\s+3a:\s+dd 96 05\s+sub a,\(ix\+5\) +\s+3d:\s+fd 96 fb\s+sub a,\(iy\-5\) +\s+40:\s+ed 3c\s+tst a,a +\s+42:\s+ed 04\s+tst a,b +\s+44:\s+ed 0c\s+tst a,c +\s+46:\s+ed 14\s+tst a,d +\s+48:\s+ed 1c\s+tst a,e +\s+4a:\s+ed 24\s+tst a,h +\s+4c:\s+ed 2c\s+tst a,l +\s+4e:\s+ed 34\s+tst a,\(hl\) +\s+50:\s+ed 64 0f\s+tst a,0x0f +\s+53:\s+af\s+xor a,a +\s+54:\s+a8\s+xor a,b +\s+55:\s+a9\s+xor a,c +\s+56:\s+aa\s+xor a,d +\s+57:\s+ab\s+xor a,e +\s+58:\s+ac\s+xor a,h +\s+59:\s+ad\s+xor a,l +\s+5a:\s+ae\s+xor a,\(hl\) +\s+5b:\s+ee aa\s+xor a,0xaa +\s+5d:\s+dd ae 05\s+xor a,\(ix\+5\) +\s+60:\s+fd ae fb\s+xor a,\(iy\-5\) +\s+63:\s+ed 78\s+in a,\(bc\) +\s+65:\s+ed 40\s+in b,\(bc\) +\s+67:\s+ed 48\s+in c,\(bc\) +\s+69:\s+ed 50\s+in d,\(bc\) +\s+6b:\s+ed 58\s+in e,\(bc\) +\s+6d:\s+ed 60\s+in h,\(bc\) +\s+6f:\s+ed 68\s+in l,\(bc\) +\s+71:\s+ed 79\s+out \(bc\),a +\s+73:\s+ed 41\s+out \(bc\),b +\s+75:\s+ed 49\s+out \(bc\),c +\s+77:\s+ed 51\s+out \(bc\),d +\s+79:\s+ed 59\s+out \(bc\),e +\s+7b:\s+ed 61\s+out \(bc\),h +\s+7d:\s+ed 69\s+out \(bc\),l +\s+7f:\s+dd 07 f9\s+ld bc,\(ix\-7\) +\s+82:\s+dd 17 f9\s+ld de,\(ix\-7\) +\s+85:\s+dd 27 f9\s+ld hl,\(ix\-7\) +\s+88:\s+dd 37 f9\s+ld ix,\(ix\-7\) +\s+8b:\s+dd 31 f9\s+ld iy,\(ix\-7\) +\s+8e:\s+fd 07 26\s+ld bc,\(iy\+38\) +\s+91:\s+fd 17 26\s+ld de,\(iy\+38\) +\s+94:\s+fd 27 26\s+ld hl,\(iy\+38\) +\s+97:\s+fd 31 26\s+ld ix,\(iy\+38\) +\s+9a:\s+fd 37 26\s+ld iy,\(iy\+38\) +\s+9d:\s+dd 0f 7e\s+ld \(ix\+126\),bc +\s+a0:\s+dd 1f 7e\s+ld \(ix\+126\),de +\s+a3:\s+dd 2f 7e\s+ld \(ix\+126\),hl +\s+a6:\s+dd 3f 7e\s+ld \(ix\+126\),ix +\s+a9:\s+dd 3e 7e\s+ld \(ix\+126\),iy +\s+ac:\s+fd 0f 9e\s+ld \(iy\-98\),bc +\s+af:\s+fd 1f 9e\s+ld \(iy\-98\),de +\s+b2:\s+fd 2f 9e\s+ld \(iy\-98\),hl +\s+b5:\s+fd 3e 9e\s+ld \(iy\-98\),ix +\s+b8:\s+fd 3f 9e\s+ld \(iy\-98\),iy +\s+bb:\s+ed 02 e5\s+lea bc,ix\-27 +\s+be:\s+ed 12 e5\s+lea de,ix\-27 +\s+c1:\s+ed 22 e5\s+lea hl,ix\-27 +\s+c4:\s+ed 32 e5\s+lea ix,ix\-27 +\s+c7:\s+ed 55 e5\s+lea iy,ix\-27 +\s+ca:\s+ed 03 0c\s+lea bc,iy\+12 +\s+cd:\s+ed 13 0c\s+lea de,iy\+12 +\s+d0:\s+ed 23 0c\s+lea hl,iy\+12 +\s+d3:\s+ed 54 0c\s+lea ix,iy\+12 +\s+d6:\s+ed 33 0c\s+lea iy,iy\+12 +\s+d9:\s+ed 65 7f\s+pea ix\+127 +\s+dc:\s+ed 66 80\s+pea iy\-128 +\s+df:\s+ed 38 05\s+in0 a,\(0x05\) +\s+e2:\s+ed 00 05\s+in0 b,\(0x05\) +\s+e5:\s+ed 08 05\s+in0 c,\(0x05\) +\s+e8:\s+ed 10 05\s+in0 d,\(0x05\) +\s+eb:\s+ed 18 05\s+in0 e,\(0x05\) +\s+ee:\s+ed 20 05\s+in0 h,\(0x05\) +\s+f1:\s+ed 28 05\s+in0 l,\(0x05\) +\s+f4:\s+ed 39 05\s+out0 \(0x05\),a +\s+f7:\s+ed 01 05\s+out0 \(0x05\),b +\s+fa:\s+ed 09 05\s+out0 \(0x05\),c +\s+fd:\s+ed 11 05\s+out0 \(0x05\),d +\s+100:\s+ed 19 05\s+out0 \(0x05\),e +\s+103:\s+ed 21 05\s+out0 \(0x05\),h +\s+106:\s+ed 29 05\s+out0 \(0x05\),l +\s+109:\s+ed 4c\s+mlt bc +\s+10b:\s+ed 5c\s+mlt de +\s+10d:\s+ed 6c\s+mlt hl +\s+10f:\s+ed 7c\s+mlt sp +\s+111:\s+ed 74 f0\s+tstio 0xf0 +\s+114:\s+ed 76\s+slp +\s+116:\s+ed 7d\s+stmix +\s+118:\s+ed 7e\s+rsmix +\s+11a:\s+ed 82\s+inim +\s+11c:\s+ed 83\s+otim +\s+11e:\s+ed 84\s+ini2 +\s+120:\s+ed 8a\s+indm +\s+122:\s+ed 8b\s+otdm +\s+124:\s+ed 8c\s+ind2 +\s+126:\s+ed 92\s+inimr +\s+128:\s+ed 93\s+otimr +\s+12a:\s+ed 94\s+oti2r +\s+12c:\s+ed 9a\s+indmr +\s+12e:\s+ed 9b\s+otdmr +\s+130:\s+ed 9c\s+otd2r +\s+132:\s+ed a4\s+ini2 +\s+134:\s+ed ac\s+ind2 +\s+136:\s+ed b4\s+oti2r +\s+138:\s+ed bc\s+otd2r +\s+13a:\s+ed c2\s+inirx +\s+13c:\s+ed c3\s+otirx +\s+13e:\s+ed ca\s+indrx +\s+140:\s+ed cb\s+otdrx +\s+142:\s+dd 7c\s+ld a,ixh +\s+144:\s+dd 44\s+ld b,ixh +\s+146:\s+dd 4c\s+ld c,ixh +\s+148:\s+dd 54\s+ld d,ixh +\s+14a:\s+dd 5c\s+ld e,ixh +\s+14c:\s+dd 64\s+ld ixh,ixh +\s+14e:\s+dd 6c\s+ld ixl,ixh +\s+150:\s+dd 7d\s+ld a,ixl +\s+152:\s+dd 45\s+ld b,ixl +\s+154:\s+dd 4d\s+ld c,ixl +\s+156:\s+dd 55\s+ld d,ixl +\s+158:\s+dd 5d\s+ld e,ixl +\s+15a:\s+dd 65\s+ld ixh,ixl +\s+15c:\s+dd 6d\s+ld ixl,ixl +\s+15e:\s+fd 7c\s+ld a,iyh +\s+160:\s+fd 44\s+ld b,iyh +\s+162:\s+fd 4c\s+ld c,iyh +\s+164:\s+fd 54\s+ld d,iyh +\s+166:\s+fd 5c\s+ld e,iyh +\s+168:\s+fd 64\s+ld iyh,iyh +\s+16a:\s+fd 6c\s+ld iyl,iyh +\s+16c:\s+fd 7d\s+ld a,iyl +\s+16e:\s+fd 45\s+ld b,iyl +\s+170:\s+fd 4d\s+ld c,iyl +\s+172:\s+fd 55\s+ld d,iyl +\s+174:\s+fd 5d\s+ld e,iyl +\s+176:\s+fd 65\s+ld iyh,iyl +\s+178:\s+fd 6d\s+ld iyl,iyl +\s+17a:\s+dd 67\s+ld ixh,a +\s+17c:\s+dd 60\s+ld ixh,b +\s+17e:\s+dd 61\s+ld ixh,c +\s+180:\s+dd 62\s+ld ixh,d +\s+182:\s+dd 63\s+ld ixh,e +\s+184:\s+dd 64\s+ld ixh,ixh +\s+186:\s+dd 65\s+ld ixh,ixl +\s+188:\s+dd 26 19\s+ld ixh,0x19 +\s+18b:\s+dd 6f\s+ld ixl,a +\s+18d:\s+dd 68\s+ld ixl,b +\s+18f:\s+dd 69\s+ld ixl,c +\s+191:\s+dd 6a\s+ld ixl,d +\s+193:\s+dd 6b\s+ld ixl,e +\s+195:\s+dd 6c\s+ld ixl,ixh +\s+197:\s+dd 6d\s+ld ixl,ixl +\s+199:\s+dd 2e 19\s+ld ixl,0x19 +\s+19c:\s+fd 67\s+ld iyh,a +\s+19e:\s+fd 60\s+ld iyh,b +\s+1a0:\s+fd 61\s+ld iyh,c +\s+1a2:\s+fd 62\s+ld iyh,d +\s+1a4:\s+fd 63\s+ld iyh,e +\s+1a6:\s+fd 64\s+ld iyh,iyh +\s+1a8:\s+fd 65\s+ld iyh,iyl +\s+1aa:\s+fd 26 19\s+ld iyh,0x19 +\s+1ad:\s+fd 6f\s+ld iyl,a +\s+1af:\s+fd 68\s+ld iyl,b +\s+1b1:\s+fd 69\s+ld iyl,c +\s+1b3:\s+fd 6a\s+ld iyl,d +\s+1b5:\s+fd 6b\s+ld iyl,e +\s+1b7:\s+fd 6c\s+ld iyl,iyh +\s+1b9:\s+fd 6d\s+ld iyl,iyl +\s+1bb:\s+fd 2e 19\s+ld iyl,0x19 +\s+1be:\s+dd 84\s+add a,ixh +\s+1c0:\s+dd 85\s+add a,ixl +\s+1c2:\s+fd 84\s+add a,iyh +\s+1c4:\s+fd 85\s+add a,iyl +\s+1c6:\s+dd 8c\s+adc a,ixh +\s+1c8:\s+dd 8d\s+adc a,ixl +\s+1ca:\s+fd 8c\s+adc a,iyh +\s+1cc:\s+fd 8d\s+adc a,iyl +\s+1ce:\s+dd bc\s+cp a,ixh +\s+1d0:\s+dd bd\s+cp a,ixl +\s+1d2:\s+fd bc\s+cp a,iyh +\s+1d4:\s+fd bd\s+cp a,iyl +\s+1d6:\s+dd 25\s+dec ixh +\s+1d8:\s+dd 2d\s+dec ixl +\s+1da:\s+fd 25\s+dec iyh +\s+1dc:\s+fd 2d\s+dec iyl +\s+1de:\s+dd 24\s+inc ixh +\s+1e0:\s+dd 2c\s+inc ixl +\s+1e2:\s+fd 24\s+inc iyh +\s+1e4:\s+fd 2c\s+inc iyl +\s+1e6:\s+dd 9c\s+sbc a,ixh +\s+1e8:\s+dd 9d\s+sbc a,ixl +\s+1ea:\s+fd 9c\s+sbc a,iyh +\s+1ec:\s+fd 9d\s+sbc a,iyl +\s+1ee:\s+dd 94\s+sub a,ixh +\s+1f0:\s+dd 95\s+sub a,ixl +\s+1f2:\s+fd 94\s+sub a,iyh +\s+1f4:\s+fd 95\s+sub a,iyl +\s+1f6:\s+dd a4\s+and a,ixh +\s+1f8:\s+dd a5\s+and a,ixl +\s+1fa:\s+fd a4\s+and a,iyh +\s+1fc:\s+fd a5\s+and a,iyl +\s+1fe:\s+dd b4\s+or a,ixh +\s+200:\s+dd b5\s+or a,ixl +\s+202:\s+fd b4\s+or a,iyh +\s+204:\s+fd b5\s+or a,iyl +\s+206:\s+dd ac\s+xor a,ixh +\s+208:\s+dd ad\s+xor a,ixl +\s+20a:\s+fd ac\s+xor a,iyh +\s+20c:\s+fd ad\s+xor a,iyl +\s+20e:\s+ed c7\s+ld i,hl +\s+210:\s+ed d7\s+ld hl,i +\s+212:\s+ed 6d\s+ld mb,a +\s+214:\s+ed 6e\s+ld a,mb +\s+216:\s+8e\s+adc a,\(hl\) +\s+217:\s+dd 8e 09\s+adc a,\(ix\+9\) +\s+21a:\s+fd 8e 09\s+adc a,\(iy\+9\) +\s+21d:\s+ce 03\s+adc a,0x03 +\s+21f:\s+8f\s+adc a,a +\s+220:\s+88\s+adc a,b +\s+221:\s+89\s+adc a,c +\s+222:\s+8a\s+adc a,d +\s+223:\s+8b\s+adc a,e +\s+224:\s+8c\s+adc a,h +\s+225:\s+8d\s+adc a,l +\s+226:\s+ed 4a\s+adc hl,bc +\s+228:\s+ed 5a\s+adc hl,de +\s+22a:\s+ed 6a\s+adc hl,hl +\s+22c:\s+ed 7a\s+adc hl,sp +\s+22e:\s+86\s+add a,\(hl\) +\s+22f:\s+dd 86 09\s+add a,\(ix\+9\) +\s+232:\s+fd 86 09\s+add a,\(iy\+9\) +\s+235:\s+c6 03\s+add a,0x03 +\s+237:\s+87\s+add a,a +\s+238:\s+80\s+add a,b +\s+239:\s+81\s+add a,c +\s+23a:\s+82\s+add a,d +\s+23b:\s+83\s+add a,e +\s+23c:\s+84\s+add a,h +\s+23d:\s+85\s+add a,l +\s+23e:\s+09\s+add hl,bc +\s+23f:\s+19\s+add hl,de +\s+240:\s+29\s+add hl,hl +\s+241:\s+39\s+add hl,sp +\s+242:\s+dd 09\s+add ix,bc +\s+244:\s+dd 19\s+add ix,de +\s+246:\s+dd 29\s+add ix,ix +\s+248:\s+dd 39\s+add ix,sp +\s+24a:\s+fd 09\s+add iy,bc +\s+24c:\s+fd 19\s+add iy,de +\s+24e:\s+fd 29\s+add iy,iy +\s+250:\s+fd 39\s+add iy,sp +\s+252:\s+a6\s+and a,\(hl\) +\s+253:\s+dd a6 09\s+and a,\(ix\+9\) +\s+256:\s+fd a6 09\s+and a,\(iy\+9\) +\s+259:\s+e6 03\s+and a,0x03 +\s+25b:\s+a7\s+and a,a +\s+25c:\s+a0\s+and a,b +\s+25d:\s+a1\s+and a,c +\s+25e:\s+a2\s+and a,d +\s+25f:\s+a3\s+and a,e +\s+260:\s+a4\s+and a,h +\s+261:\s+a5\s+and a,l +\s+262:\s+cb 46\s+bit 0,\(hl\) +\s+264:\s+dd cb 09 46\s+bit 0,\(ix\+9\) +\s+268:\s+fd cb 09 46\s+bit 0,\(iy\+9\) +\s+26c:\s+cb 47\s+bit 0,a +\s+26e:\s+cb 40\s+bit 0,b +\s+270:\s+cb 41\s+bit 0,c +\s+272:\s+cb 42\s+bit 0,d +\s+274:\s+cb 43\s+bit 0,e +\s+276:\s+cb 44\s+bit 0,h +\s+278:\s+cb 45\s+bit 0,l +\s+27a:\s+cb 4e\s+bit 1,\(hl\) +\s+27c:\s+dd cb 09 4e\s+bit 1,\(ix\+9\) +\s+280:\s+fd cb 09 4e\s+bit 1,\(iy\+9\) +\s+284:\s+cb 4f\s+bit 1,a +\s+286:\s+cb 48\s+bit 1,b +\s+288:\s+cb 49\s+bit 1,c +\s+28a:\s+cb 4a\s+bit 1,d +\s+28c:\s+cb 4b\s+bit 1,e +\s+28e:\s+cb 4c\s+bit 1,h +\s+290:\s+cb 4d\s+bit 1,l +\s+292:\s+cb 56\s+bit 2,\(hl\) +\s+294:\s+dd cb 09 56\s+bit 2,\(ix\+9\) +\s+298:\s+fd cb 09 56\s+bit 2,\(iy\+9\) +\s+29c:\s+cb 57\s+bit 2,a +\s+29e:\s+cb 50\s+bit 2,b +\s+2a0:\s+cb 51\s+bit 2,c +\s+2a2:\s+cb 52\s+bit 2,d +\s+2a4:\s+cb 53\s+bit 2,e +\s+2a6:\s+cb 54\s+bit 2,h +\s+2a8:\s+cb 55\s+bit 2,l +\s+2aa:\s+cb 5e\s+bit 3,\(hl\) +\s+2ac:\s+dd cb 09 5e\s+bit 3,\(ix\+9\) +\s+2b0:\s+fd cb 09 5e\s+bit 3,\(iy\+9\) +\s+2b4:\s+cb 5f\s+bit 3,a +\s+2b6:\s+cb 58\s+bit 3,b +\s+2b8:\s+cb 59\s+bit 3,c +\s+2ba:\s+cb 5a\s+bit 3,d +\s+2bc:\s+cb 5b\s+bit 3,e +\s+2be:\s+cb 5c\s+bit 3,h +\s+2c0:\s+cb 5d\s+bit 3,l +\s+2c2:\s+cb 66\s+bit 4,\(hl\) +\s+2c4:\s+dd cb 09 66\s+bit 4,\(ix\+9\) +\s+2c8:\s+fd cb 09 66\s+bit 4,\(iy\+9\) +\s+2cc:\s+cb 67\s+bit 4,a +\s+2ce:\s+cb 60\s+bit 4,b +\s+2d0:\s+cb 61\s+bit 4,c +\s+2d2:\s+cb 62\s+bit 4,d +\s+2d4:\s+cb 63\s+bit 4,e +\s+2d6:\s+cb 64\s+bit 4,h +\s+2d8:\s+cb 65\s+bit 4,l +\s+2da:\s+cb 6e\s+bit 5,\(hl\) +\s+2dc:\s+dd cb 09 6e\s+bit 5,\(ix\+9\) +\s+2e0:\s+fd cb 09 6e\s+bit 5,\(iy\+9\) +\s+2e4:\s+cb 6f\s+bit 5,a +\s+2e6:\s+cb 68\s+bit 5,b +\s+2e8:\s+cb 69\s+bit 5,c +\s+2ea:\s+cb 6a\s+bit 5,d +\s+2ec:\s+cb 6b\s+bit 5,e +\s+2ee:\s+cb 6c\s+bit 5,h +\s+2f0:\s+cb 6d\s+bit 5,l +\s+2f2:\s+cb 76\s+bit 6,\(hl\) +\s+2f4:\s+dd cb 09 76\s+bit 6,\(ix\+9\) +\s+2f8:\s+fd cb 09 76\s+bit 6,\(iy\+9\) +\s+2fc:\s+cb 77\s+bit 6,a +\s+2fe:\s+cb 70\s+bit 6,b +\s+300:\s+cb 71\s+bit 6,c +\s+302:\s+cb 72\s+bit 6,d +\s+304:\s+cb 73\s+bit 6,e +\s+306:\s+cb 74\s+bit 6,h +\s+308:\s+cb 75\s+bit 6,l +\s+30a:\s+cb 7e\s+bit 7,\(hl\) +\s+30c:\s+dd cb 09 7e\s+bit 7,\(ix\+9\) +\s+310:\s+fd cb 09 7e\s+bit 7,\(iy\+9\) +\s+314:\s+cb 7f\s+bit 7,a +\s+316:\s+cb 78\s+bit 7,b +\s+318:\s+cb 79\s+bit 7,c +\s+31a:\s+cb 7a\s+bit 7,d +\s+31c:\s+cb 7b\s+bit 7,e +\s+31e:\s+cb 7c\s+bit 7,h +\s+320:\s+cb 7d\s+bit 7,l +\s+322:\s+cd 56 34 12\s+call 0x123456 +\s+326:\s+dc 56 34 12\s+call c,0x123456 +\s+32a:\s+fc 56 34 12\s+call m,0x123456 +\s+32e:\s+d4 56 34 12\s+call nc,0x123456 +\s+332:\s+c4 56 34 12\s+call nz,0x123456 +\s+336:\s+f4 56 34 12\s+call p,0x123456 +\s+33a:\s+ec 56 34 12\s+call pe,0x123456 +\s+33e:\s+e4 56 34 12\s+call po,0x123456 +\s+342:\s+cc 56 34 12\s+call z,0x123456 +\s+346:\s+3f\s+ccf +\s+347:\s+be\s+cp a,\(hl\) +\s+348:\s+dd be 09\s+cp a,\(ix\+9\) +\s+34b:\s+fd be 09\s+cp a,\(iy\+9\) +\s+34e:\s+fe 03\s+cp a,0x03 +\s+350:\s+bf\s+cp a,a +\s+351:\s+b8\s+cp a,b +\s+352:\s+b9\s+cp a,c +\s+353:\s+ba\s+cp a,d +\s+354:\s+bb\s+cp a,e +\s+355:\s+bc\s+cp a,h +\s+356:\s+bd\s+cp a,l +\s+357:\s+ed a9\s+cpd +\s+359:\s+ed b9\s+cpdr +\s+35b:\s+ed a1\s+cpi +\s+35d:\s+ed b1\s+cpir +\s+35f:\s+2f\s+cpl +\s+360:\s+27\s+daa +\s+361:\s+35\s+dec \(hl\) +\s+362:\s+dd 35 09\s+dec \(ix\+9\) +\s+365:\s+fd 35 09\s+dec \(iy\+9\) +\s+368:\s+3d\s+dec a +\s+369:\s+05\s+dec b +\s+36a:\s+0b\s+dec bc +\s+36b:\s+0d\s+dec c +\s+36c:\s+15\s+dec d +\s+36d:\s+1b\s+dec de +\s+36e:\s+1d\s+dec e +\s+36f:\s+25\s+dec h +\s+370:\s+2b\s+dec hl +\s+371:\s+dd 2b\s+dec ix +\s+373:\s+fd 2b\s+dec iy +\s+375:\s+2d\s+dec l +\s+376:\s+3b\s+dec sp +\s+377:\s+f3\s+di +\s+378:\s+10 05\s+djnz 0x037f +\s+37a:\s+fb\s+ei +\s+37b:\s+e3\s+ex \(sp\),hl +\s+37c:\s+dd e3\s+ex \(sp\),ix +\s+37e:\s+fd e3\s+ex \(sp\),iy +\s+380:\s+08\s+ex af,af' +\s+381:\s+eb\s+ex de,hl +\s+382:\s+d9\s+exx +\s+383:\s+76\s+halt +\s+384:\s+ed 46\s+im 0 +\s+386:\s+ed 56\s+im 1 +\s+388:\s+ed 5e\s+im 2 +\s+38a:\s+ed 78\s+in a,\(bc\) +\s+38c:\s+db 03\s+in a,\(0x03\) +\s+38e:\s+ed 40\s+in b,\(bc\) +\s+390:\s+ed 48\s+in c,\(bc\) +\s+392:\s+ed 50\s+in d,\(bc\) +\s+394:\s+ed 58\s+in e,\(bc\) +\s+396:\s+ed 60\s+in h,\(bc\) +\s+398:\s+ed 68\s+in l,\(bc\) +\s+39a:\s+34\s+inc \(hl\) +\s+39b:\s+dd 34 09\s+inc \(ix\+9\) +\s+39e:\s+fd 34 09\s+inc \(iy\+9\) +\s+3a1:\s+3c\s+inc a +\s+3a2:\s+04\s+inc b +\s+3a3:\s+03\s+inc bc +\s+3a4:\s+0c\s+inc c +\s+3a5:\s+14\s+inc d +\s+3a6:\s+13\s+inc de +\s+3a7:\s+1c\s+inc e +\s+3a8:\s+24\s+inc h +\s+3a9:\s+23\s+inc hl +\s+3aa:\s+dd 23\s+inc ix +\s+3ac:\s+fd 23\s+inc iy +\s+3ae:\s+2c\s+inc l +\s+3af:\s+33\s+inc sp +\s+3b0:\s+ed aa\s+ind +\s+3b2:\s+ed ba\s+indr +\s+3b4:\s+ed a2\s+ini +\s+3b6:\s+ed b2\s+inir +\s+3b8:\s+e9\s+jp \(hl\) +\s+3b9:\s+dd e9\s+jp \(ix\) +\s+3bb:\s+fd e9\s+jp \(iy\) +\s+3bd:\s+c3 56 34 12\s+jp 0x123456 +\s+3c1:\s+da 56 34 12\s+jp c,0x123456 +\s+3c5:\s+fa 56 34 12\s+jp m,0x123456 +\s+3c9:\s+d2 56 34 12\s+jp nc,0x123456 +\s+3cd:\s+c2 56 34 12\s+jp nz,0x123456 +\s+3d1:\s+f2 56 34 12\s+jp p,0x123456 +\s+3d5:\s+ea 56 34 12\s+jp pe,0x123456 +\s+3d9:\s+e2 56 34 12\s+jp po,0x123456 +\s+3dd:\s+ca 56 34 12\s+jp z,0x123456 +\s+3e1:\s+18 05\s+jr 0x03e8 +\s+3e3:\s+38 05\s+jr c,0x03ea +\s+3e5:\s+30 05\s+jr nc,0x03ec +\s+3e7:\s+20 05\s+jr nz,0x03ee +\s+3e9:\s+28 05\s+jr z,0x03f0 +\s+3eb:\s+32 56 34 12\s+ld \(0x123456\),a +\s+3ef:\s+ed 43 56 34 12\s+ld \(0x123456\),bc +\s+3f4:\s+ed 53 56 34 12\s+ld \(0x123456\),de +\s+3f9:\s+22 56 34 12\s+ld \(0x123456\),hl +\s+3fd:\s+dd 22 56 34 12\s+ld \(0x123456\),ix +\s+402:\s+fd 22 56 34 12\s+ld \(0x123456\),iy +\s+407:\s+ed 73 56 34 12\s+ld \(0x123456\),sp +\s+40c:\s+02\s+ld \(bc\),a +\s+40d:\s+12\s+ld \(de\),a +\s+40e:\s+36 03\s+ld \(hl\),0x03 +\s+410:\s+77\s+ld \(hl\),a +\s+411:\s+70\s+ld \(hl\),b +\s+412:\s+71\s+ld \(hl\),c +\s+413:\s+72\s+ld \(hl\),d +\s+414:\s+73\s+ld \(hl\),e +\s+415:\s+74\s+ld \(hl\),h +\s+416:\s+75\s+ld \(hl\),l +\s+417:\s+dd 36 09 03\s+ld \(ix\+9\),0x03 +\s+41b:\s+dd 77 09\s+ld \(ix\+9\),a +\s+41e:\s+dd 70 09\s+ld \(ix\+9\),b +\s+421:\s+dd 71 09\s+ld \(ix\+9\),c +\s+424:\s+dd 72 09\s+ld \(ix\+9\),d +\s+427:\s+dd 73 09\s+ld \(ix\+9\),e +\s+42a:\s+dd 74 09\s+ld \(ix\+9\),h +\s+42d:\s+dd 75 09\s+ld \(ix\+9\),l +\s+430:\s+fd 36 09 03\s+ld \(iy\+9\),0x03 +\s+434:\s+fd 77 09\s+ld \(iy\+9\),a +\s+437:\s+fd 70 09\s+ld \(iy\+9\),b +\s+43a:\s+fd 71 09\s+ld \(iy\+9\),c +\s+43d:\s+fd 72 09\s+ld \(iy\+9\),d +\s+440:\s+fd 73 09\s+ld \(iy\+9\),e +\s+443:\s+fd 74 09\s+ld \(iy\+9\),h +\s+446:\s+fd 75 09\s+ld \(iy\+9\),l +\s+449:\s+3a 56 34 12\s+ld a,\(0x123456\) +\s+44d:\s+0a\s+ld a,\(bc\) +\s+44e:\s+1a\s+ld a,\(de\) +\s+44f:\s+7e\s+ld a,\(hl\) +\s+450:\s+dd 7e 09\s+ld a,\(ix\+9\) +\s+453:\s+fd 7e 09\s+ld a,\(iy\+9\) +\s+456:\s+3e 03\s+ld a,0x03 +\s+458:\s+7f\s+ld a,a +\s+459:\s+78\s+ld a,b +\s+45a:\s+79\s+ld a,c +\s+45b:\s+7a\s+ld a,d +\s+45c:\s+7b\s+ld a,e +\s+45d:\s+7c\s+ld a,h +\s+45e:\s+ed 57\s+ld a,i +\s+460:\s+7d\s+ld a,l +\s+461:\s+ed 5f\s+ld a,r +\s+463:\s+46\s+ld b,\(hl\) +\s+464:\s+dd 46 09\s+ld b,\(ix\+9\) +\s+467:\s+fd 46 09\s+ld b,\(iy\+9\) +\s+46a:\s+06 03\s+ld b,0x03 +\s+46c:\s+47\s+ld b,a +\s+46d:\s+00\s+nop +\s+46e:\s+41\s+ld b,c +\s+46f:\s+42\s+ld b,d +\s+470:\s+43\s+ld b,e +\s+471:\s+44\s+ld b,h +\s+472:\s+45\s+ld b,l +\s+473:\s+ed 4b 56 34 12\s+ld bc,\(0x123456\) +\s+478:\s+01 56 34 12\s+ld bc,0x123456 +\s+47c:\s+4e\s+ld c,\(hl\) +\s+47d:\s+dd 4e 09\s+ld c,\(ix\+9\) +\s+480:\s+fd 4e 09\s+ld c,\(iy\+9\) +\s+483:\s+0e 03\s+ld c,0x03 +\s+485:\s+4f\s+ld c,a +\s+486:\s+48\s+ld c,b +\s+487:\s+00\s+nop +\s+488:\s+4a\s+ld c,d +\s+489:\s+4b\s+ld c,e +\s+48a:\s+4c\s+ld c,h +\s+48b:\s+4d\s+ld c,l +\s+48c:\s+56\s+ld d,\(hl\) +\s+48d:\s+dd 56 09\s+ld d,\(ix\+9\) +\s+490:\s+fd 56 09\s+ld d,\(iy\+9\) +\s+493:\s+16 03\s+ld d,0x03 +\s+495:\s+57\s+ld d,a +\s+496:\s+50\s+ld d,b +\s+497:\s+51\s+ld d,c +\s+498:\s+00\s+nop +\s+499:\s+53\s+ld d,e +\s+49a:\s+54\s+ld d,h +\s+49b:\s+55\s+ld d,l +\s+49c:\s+ed 5b 56 34 12\s+ld de,\(0x123456\) +\s+4a1:\s+11 56 34 12\s+ld de,0x123456 +\s+4a5:\s+5e\s+ld e,\(hl\) +\s+4a6:\s+dd 5e 09\s+ld e,\(ix\+9\) +\s+4a9:\s+fd 5e 09\s+ld e,\(iy\+9\) +\s+4ac:\s+1e 03\s+ld e,0x03 +\s+4ae:\s+5f\s+ld e,a +\s+4af:\s+58\s+ld e,b +\s+4b0:\s+59\s+ld e,c +\s+4b1:\s+5a\s+ld e,d +\s+4b2:\s+00\s+nop +\s+4b3:\s+5c\s+ld e,h +\s+4b4:\s+5d\s+ld e,l +\s+4b5:\s+66\s+ld h,\(hl\) +\s+4b6:\s+dd 66 09\s+ld h,\(ix\+9\) +\s+4b9:\s+fd 66 09\s+ld h,\(iy\+9\) +\s+4bc:\s+26 03\s+ld h,0x03 +\s+4be:\s+67\s+ld h,a +\s+4bf:\s+60\s+ld h,b +\s+4c0:\s+61\s+ld h,c +\s+4c1:\s+62\s+ld h,d +\s+4c2:\s+63\s+ld h,e +\s+4c3:\s+64\s+ld h,h +\s+4c4:\s+65\s+ld h,l +\s+4c5:\s+2a 56 34 12\s+ld hl,\(0x123456\) +\s+4c9:\s+21 56 34 12\s+ld hl,0x123456 +\s+4cd:\s+ed 47\s+ld i,a +\s+4cf:\s+dd 2a 56 34 12\s+ld ix,\(0x123456\) +\s+4d4:\s+dd 21 56 34 12\s+ld ix,0x123456 +\s+4d9:\s+fd 2a 56 34 12\s+ld iy,\(0x123456\) +\s+4de:\s+fd 21 56 34 12\s+ld iy,0x123456 +\s+4e3:\s+6e\s+ld l,\(hl\) +\s+4e4:\s+dd 6e 09\s+ld l,\(ix\+9\) +\s+4e7:\s+fd 6e 09\s+ld l,\(iy\+9\) +\s+4ea:\s+2e 03\s+ld l,0x03 +\s+4ec:\s+6f\s+ld l,a +\s+4ed:\s+68\s+ld l,b +\s+4ee:\s+69\s+ld l,c +\s+4ef:\s+6a\s+ld l,d +\s+4f0:\s+6b\s+ld l,e +\s+4f1:\s+6c\s+ld l,h +\s+4f2:\s+6d\s+ld l,l +\s+4f3:\s+ed 4f\s+ld r,a +\s+4f5:\s+ed 7b 56 34 12\s+ld sp,\(0x123456\) +\s+4fa:\s+31 56 34 12\s+ld sp,0x123456 +\s+4fe:\s+f9\s+ld sp,hl +\s+4ff:\s+dd f9\s+ld sp,ix +\s+501:\s+fd f9\s+ld sp,iy +\s+503:\s+ed a8\s+ldd +\s+505:\s+ed b8\s+lddr +\s+507:\s+ed a0\s+ldi +\s+509:\s+ed b0\s+ldir +\s+50b:\s+ed 44\s+neg +\s+50d:\s+00\s+nop +\s+50e:\s+b6\s+or a,\(hl\) +\s+50f:\s+dd b6 09\s+or a,\(ix\+9\) +\s+512:\s+fd b6 09\s+or a,\(iy\+9\) +\s+515:\s+f6 03\s+or a,0x03 +\s+517:\s+b7\s+or a,a +\s+518:\s+b0\s+or a,b +\s+519:\s+b1\s+or a,c +\s+51a:\s+b2\s+or a,d +\s+51b:\s+b3\s+or a,e +\s+51c:\s+b4\s+or a,h +\s+51d:\s+b5\s+or a,l +\s+51e:\s+ed bb\s+otdr +\s+520:\s+ed b3\s+otir +\s+522:\s+ed 79\s+out \(bc\),a +\s+524:\s+ed 41\s+out \(bc\),b +\s+526:\s+ed 49\s+out \(bc\),c +\s+528:\s+ed 51\s+out \(bc\),d +\s+52a:\s+ed 59\s+out \(bc\),e +\s+52c:\s+ed 61\s+out \(bc\),h +\s+52e:\s+ed 69\s+out \(bc\),l +\s+530:\s+d3 03\s+out \(0x03\),a +\s+532:\s+ed ab\s+outd +\s+534:\s+ed a3\s+outi +\s+536:\s+f1\s+pop af +\s+537:\s+c1\s+pop bc +\s+538:\s+d1\s+pop de +\s+539:\s+e1\s+pop hl +\s+53a:\s+dd e1\s+pop ix +\s+53c:\s+fd e1\s+pop iy +\s+53e:\s+f5\s+push af +\s+53f:\s+c5\s+push bc +\s+540:\s+d5\s+push de +\s+541:\s+e5\s+push hl +\s+542:\s+dd e5\s+push ix +\s+544:\s+fd e5\s+push iy +\s+546:\s+cb 86\s+res 0,\(hl\) +\s+548:\s+dd cb 09 86\s+res 0,\(ix\+9\) +\s+54c:\s+fd cb 09 86\s+res 0,\(iy\+9\) +\s+550:\s+cb 87\s+res 0,a +\s+552:\s+cb 80\s+res 0,b +\s+554:\s+cb 81\s+res 0,c +\s+556:\s+cb 82\s+res 0,d +\s+558:\s+cb 83\s+res 0,e +\s+55a:\s+cb 84\s+res 0,h +\s+55c:\s+cb 85\s+res 0,l +\s+55e:\s+cb 8e\s+res 1,\(hl\) +\s+560:\s+dd cb 09 8e\s+res 1,\(ix\+9\) +\s+564:\s+fd cb 09 8e\s+res 1,\(iy\+9\) +\s+568:\s+cb 8f\s+res 1,a +\s+56a:\s+cb 88\s+res 1,b +\s+56c:\s+cb 89\s+res 1,c +\s+56e:\s+cb 8a\s+res 1,d +\s+570:\s+cb 8b\s+res 1,e +\s+572:\s+cb 8c\s+res 1,h +\s+574:\s+cb 8d\s+res 1,l +\s+576:\s+cb 96\s+res 2,\(hl\) +\s+578:\s+dd cb 09 96\s+res 2,\(ix\+9\) +\s+57c:\s+fd cb 09 96\s+res 2,\(iy\+9\) +\s+580:\s+cb 97\s+res 2,a +\s+582:\s+cb 90\s+res 2,b +\s+584:\s+cb 91\s+res 2,c +\s+586:\s+cb 92\s+res 2,d +\s+588:\s+cb 93\s+res 2,e +\s+58a:\s+cb 94\s+res 2,h +\s+58c:\s+cb 95\s+res 2,l +\s+58e:\s+cb 9e\s+res 3,\(hl\) +\s+590:\s+dd cb 09 9e\s+res 3,\(ix\+9\) +\s+594:\s+fd cb 09 9e\s+res 3,\(iy\+9\) +\s+598:\s+cb 9f\s+res 3,a +\s+59a:\s+cb 98\s+res 3,b +\s+59c:\s+cb 99\s+res 3,c +\s+59e:\s+cb 9a\s+res 3,d +\s+5a0:\s+cb 9b\s+res 3,e +\s+5a2:\s+cb 9c\s+res 3,h +\s+5a4:\s+cb 9d\s+res 3,l +\s+5a6:\s+cb a6\s+res 4,\(hl\) +\s+5a8:\s+dd cb 09 a6\s+res 4,\(ix\+9\) +\s+5ac:\s+fd cb 09 a6\s+res 4,\(iy\+9\) +\s+5b0:\s+cb a7\s+res 4,a +\s+5b2:\s+cb a0\s+res 4,b +\s+5b4:\s+cb a1\s+res 4,c +\s+5b6:\s+cb a2\s+res 4,d +\s+5b8:\s+cb a3\s+res 4,e +\s+5ba:\s+cb a4\s+res 4,h +\s+5bc:\s+cb a5\s+res 4,l +\s+5be:\s+cb ae\s+res 5,\(hl\) +\s+5c0:\s+dd cb 09 ae\s+res 5,\(ix\+9\) +\s+5c4:\s+fd cb 09 ae\s+res 5,\(iy\+9\) +\s+5c8:\s+cb af\s+res 5,a +\s+5ca:\s+cb a8\s+res 5,b +\s+5cc:\s+cb a9\s+res 5,c +\s+5ce:\s+cb aa\s+res 5,d +\s+5d0:\s+cb ab\s+res 5,e +\s+5d2:\s+cb ac\s+res 5,h +\s+5d4:\s+cb ad\s+res 5,l +\s+5d6:\s+cb b6\s+res 6,\(hl\) +\s+5d8:\s+dd cb 09 b6\s+res 6,\(ix\+9\) +\s+5dc:\s+fd cb 09 b6\s+res 6,\(iy\+9\) +\s+5e0:\s+cb b7\s+res 6,a +\s+5e2:\s+cb b0\s+res 6,b +\s+5e4:\s+cb b1\s+res 6,c +\s+5e6:\s+cb b2\s+res 6,d +\s+5e8:\s+cb b3\s+res 6,e +\s+5ea:\s+cb b4\s+res 6,h +\s+5ec:\s+cb b5\s+res 6,l +\s+5ee:\s+cb be\s+res 7,\(hl\) +\s+5f0:\s+dd cb 09 be\s+res 7,\(ix\+9\) +\s+5f4:\s+fd cb 09 be\s+res 7,\(iy\+9\) +\s+5f8:\s+cb bf\s+res 7,a +\s+5fa:\s+cb b8\s+res 7,b +\s+5fc:\s+cb b9\s+res 7,c +\s+5fe:\s+cb ba\s+res 7,d +\s+600:\s+cb bb\s+res 7,e +\s+602:\s+cb bc\s+res 7,h +\s+604:\s+cb bd\s+res 7,l +\s+606:\s+c9\s+ret +\s+607:\s+d8\s+ret c +\s+608:\s+f8\s+ret m +\s+609:\s+d0\s+ret nc +\s+60a:\s+c0\s+ret nz +\s+60b:\s+f0\s+ret p +\s+60c:\s+e8\s+ret pe +\s+60d:\s+e0\s+ret po +\s+60e:\s+c8\s+ret z +\s+60f:\s+ed 4d\s+reti +\s+611:\s+ed 45\s+retn +\s+613:\s+cb 16\s+rl \(hl\) +\s+615:\s+dd cb 09 16\s+rl \(ix\+9\) +\s+619:\s+fd cb 09 16\s+rl \(iy\+9\) +\s+61d:\s+cb 17\s+rl a +\s+61f:\s+cb 10\s+rl b +\s+621:\s+cb 11\s+rl c +\s+623:\s+cb 12\s+rl d +\s+625:\s+cb 13\s+rl e +\s+627:\s+cb 14\s+rl h +\s+629:\s+cb 15\s+rl l +\s+62b:\s+17\s+rla +\s+62c:\s+cb 06\s+rlc \(hl\) +\s+62e:\s+dd cb 09 06\s+rlc \(ix\+9\) +\s+632:\s+fd cb 09 06\s+rlc \(iy\+9\) +\s+636:\s+cb 07\s+rlc a +\s+638:\s+cb 00\s+rlc b +\s+63a:\s+cb 01\s+rlc c +\s+63c:\s+cb 02\s+rlc d +\s+63e:\s+cb 03\s+rlc e +\s+640:\s+cb 04\s+rlc h +\s+642:\s+cb 05\s+rlc l +\s+644:\s+07\s+rlca +\s+645:\s+ed 6f\s+rld +\s+647:\s+cb 1e\s+rr \(hl\) +\s+649:\s+dd cb 09 1e\s+rr \(ix\+9\) +\s+64d:\s+fd cb 09 1e\s+rr \(iy\+9\) +\s+651:\s+cb 1f\s+rr a +\s+653:\s+cb 18\s+rr b +\s+655:\s+cb 19\s+rr c +\s+657:\s+cb 1a\s+rr d +\s+659:\s+cb 1b\s+rr e +\s+65b:\s+cb 1c\s+rr h +\s+65d:\s+cb 1d\s+rr l +\s+65f:\s+1f\s+rra +\s+660:\s+cb 0e\s+rrc \(hl\) +\s+662:\s+dd cb 09 0e\s+rrc \(ix\+9\) +\s+666:\s+fd cb 09 0e\s+rrc \(iy\+9\) +\s+66a:\s+cb 0f\s+rrc a +\s+66c:\s+cb 08\s+rrc b +\s+66e:\s+cb 09\s+rrc c +\s+670:\s+cb 0a\s+rrc d +\s+672:\s+cb 0b\s+rrc e +\s+674:\s+cb 0c\s+rrc h +\s+676:\s+cb 0d\s+rrc l +\s+678:\s+0f\s+rrca +\s+679:\s+ed 67\s+rrd +\s+67b:\s+c7\s+rst 0x00 +\s+67c:\s+cf\s+rst 0x08 +\s+67d:\s+d7\s+rst 0x10 +\s+67e:\s+df\s+rst 0x18 +\s+67f:\s+e7\s+rst 0x20 +\s+680:\s+ef\s+rst 0x28 +\s+681:\s+f7\s+rst 0x30 +\s+682:\s+ff\s+rst 0x38 +\s+683:\s+9e\s+sbc a,\(hl\) +\s+684:\s+dd 9e 09\s+sbc a,\(ix\+9\) +\s+687:\s+fd 9e 09\s+sbc a,\(iy\+9\) +\s+68a:\s+de 03\s+sbc a,0x03 +\s+68c:\s+9f\s+sbc a,a +\s+68d:\s+98\s+sbc a,b +\s+68e:\s+99\s+sbc a,c +\s+68f:\s+9a\s+sbc a,d +\s+690:\s+9b\s+sbc a,e +\s+691:\s+9c\s+sbc a,h +\s+692:\s+9d\s+sbc a,l +\s+693:\s+ed 42\s+sbc hl,bc +\s+695:\s+ed 52\s+sbc hl,de +\s+697:\s+ed 62\s+sbc hl,hl +\s+699:\s+ed 72\s+sbc hl,sp +\s+69b:\s+37\s+scf +\s+69c:\s+cb c6\s+set 0,\(hl\) +\s+69e:\s+dd cb 09 c6\s+set 0,\(ix\+9\) +\s+6a2:\s+fd cb 09 c6\s+set 0,\(iy\+9\) +\s+6a6:\s+cb c7\s+set 0,a +\s+6a8:\s+cb c0\s+set 0,b +\s+6aa:\s+cb c1\s+set 0,c +\s+6ac:\s+cb c2\s+set 0,d +\s+6ae:\s+cb c3\s+set 0,e +\s+6b0:\s+cb c4\s+set 0,h +\s+6b2:\s+cb c5\s+set 0,l +\s+6b4:\s+cb ce\s+set 1,\(hl\) +\s+6b6:\s+dd cb 09 ce\s+set 1,\(ix\+9\) +\s+6ba:\s+fd cb 09 ce\s+set 1,\(iy\+9\) +\s+6be:\s+cb cf\s+set 1,a +\s+6c0:\s+cb c8\s+set 1,b +\s+6c2:\s+cb c9\s+set 1,c +\s+6c4:\s+cb ca\s+set 1,d +\s+6c6:\s+cb cb\s+set 1,e +\s+6c8:\s+cb cc\s+set 1,h +\s+6ca:\s+cb cd\s+set 1,l +\s+6cc:\s+cb d6\s+set 2,\(hl\) +\s+6ce:\s+dd cb 09 d6\s+set 2,\(ix\+9\) +\s+6d2:\s+fd cb 09 d6\s+set 2,\(iy\+9\) +\s+6d6:\s+cb d7\s+set 2,a +\s+6d8:\s+cb d0\s+set 2,b +\s+6da:\s+cb d1\s+set 2,c +\s+6dc:\s+cb d2\s+set 2,d +\s+6de:\s+cb d3\s+set 2,e +\s+6e0:\s+cb d4\s+set 2,h +\s+6e2:\s+cb d5\s+set 2,l +\s+6e4:\s+cb de\s+set 3,\(hl\) +\s+6e6:\s+dd cb 09 de\s+set 3,\(ix\+9\) +\s+6ea:\s+fd cb 09 de\s+set 3,\(iy\+9\) +\s+6ee:\s+cb df\s+set 3,a +\s+6f0:\s+cb d8\s+set 3,b +\s+6f2:\s+cb d9\s+set 3,c +\s+6f4:\s+cb da\s+set 3,d +\s+6f6:\s+cb db\s+set 3,e +\s+6f8:\s+cb dc\s+set 3,h +\s+6fa:\s+cb dd\s+set 3,l +\s+6fc:\s+cb e6\s+set 4,\(hl\) +\s+6fe:\s+dd cb 09 e6\s+set 4,\(ix\+9\) +\s+702:\s+fd cb 09 e6\s+set 4,\(iy\+9\) +\s+706:\s+cb e7\s+set 4,a +\s+708:\s+cb e0\s+set 4,b +\s+70a:\s+cb e1\s+set 4,c +\s+70c:\s+cb e2\s+set 4,d +\s+70e:\s+cb e3\s+set 4,e +\s+710:\s+cb e4\s+set 4,h +\s+712:\s+cb e5\s+set 4,l +\s+714:\s+cb ee\s+set 5,\(hl\) +\s+716:\s+dd cb 09 ee\s+set 5,\(ix\+9\) +\s+71a:\s+fd cb 09 ee\s+set 5,\(iy\+9\) +\s+71e:\s+cb ef\s+set 5,a +\s+720:\s+cb e8\s+set 5,b +\s+722:\s+cb e9\s+set 5,c +\s+724:\s+cb ea\s+set 5,d +\s+726:\s+cb eb\s+set 5,e +\s+728:\s+cb ec\s+set 5,h +\s+72a:\s+cb ed\s+set 5,l +\s+72c:\s+cb f6\s+set 6,\(hl\) +\s+72e:\s+dd cb 09 f6\s+set 6,\(ix\+9\) +\s+732:\s+fd cb 09 f6\s+set 6,\(iy\+9\) +\s+736:\s+cb f7\s+set 6,a +\s+738:\s+cb f0\s+set 6,b +\s+73a:\s+cb f1\s+set 6,c +\s+73c:\s+cb f2\s+set 6,d +\s+73e:\s+cb f3\s+set 6,e +\s+740:\s+cb f4\s+set 6,h +\s+742:\s+cb f5\s+set 6,l +\s+744:\s+cb fe\s+set 7,\(hl\) +\s+746:\s+dd cb 09 fe\s+set 7,\(ix\+9\) +\s+74a:\s+fd cb 09 fe\s+set 7,\(iy\+9\) +\s+74e:\s+cb ff\s+set 7,a +\s+750:\s+cb f8\s+set 7,b +\s+752:\s+cb f9\s+set 7,c +\s+754:\s+cb fa\s+set 7,d +\s+756:\s+cb fb\s+set 7,e +\s+758:\s+cb fc\s+set 7,h +\s+75a:\s+cb fd\s+set 7,l +\s+75c:\s+cb 26\s+sla \(hl\) +\s+75e:\s+dd cb 09 26\s+sla \(ix\+9\) +\s+762:\s+fd cb 09 26\s+sla \(iy\+9\) +\s+766:\s+cb 27\s+sla a +\s+768:\s+cb 20\s+sla b +\s+76a:\s+cb 21\s+sla c +\s+76c:\s+cb 22\s+sla d +\s+76e:\s+cb 23\s+sla e +\s+770:\s+cb 24\s+sla h +\s+772:\s+cb 25\s+sla l +\s+774:\s+cb 2e\s+sra \(hl\) +\s+776:\s+dd cb 09 2e\s+sra \(ix\+9\) +\s+77a:\s+fd cb 09 2e\s+sra \(iy\+9\) +\s+77e:\s+cb 2f\s+sra a +\s+780:\s+cb 28\s+sra b +\s+782:\s+cb 29\s+sra c +\s+784:\s+cb 2a\s+sra d +\s+786:\s+cb 2b\s+sra e +\s+788:\s+cb 2c\s+sra h +\s+78a:\s+cb 2d\s+sra l +\s+78c:\s+cb 3e\s+srl \(hl\) +\s+78e:\s+dd cb 09 3e\s+srl \(ix\+9\) +\s+792:\s+fd cb 09 3e\s+srl \(iy\+9\) +\s+796:\s+cb 3f\s+srl a +\s+798:\s+cb 38\s+srl b +\s+79a:\s+cb 39\s+srl c +\s+79c:\s+cb 3a\s+srl d +\s+79e:\s+cb 3b\s+srl e +\s+7a0:\s+cb 3c\s+srl h +\s+7a2:\s+cb 3d\s+srl l +\s+7a4:\s+96\s+sub a,\(hl\) +\s+7a5:\s+dd 96 09\s+sub a,\(ix\+9\) +\s+7a8:\s+fd 96 09\s+sub a,\(iy\+9\) +\s+7ab:\s+d6 03\s+sub a,0x03 +\s+7ad:\s+97\s+sub a,a +\s+7ae:\s+90\s+sub a,b +\s+7af:\s+91\s+sub a,c +\s+7b0:\s+92\s+sub a,d +\s+7b1:\s+93\s+sub a,e +\s+7b2:\s+94\s+sub a,h +\s+7b3:\s+95\s+sub a,l +\s+7b4:\s+ae\s+xor a,\(hl\) +\s+7b5:\s+dd ae 09\s+xor a,\(ix\+9\) +\s+7b8:\s+fd ae 09\s+xor a,\(iy\+9\) +\s+7bb:\s+ee 03\s+xor a,0x03 +\s+7bd:\s+af\s+xor a,a +\s+7be:\s+a8\s+xor a,b +\s+7bf:\s+a9\s+xor a,c +\s+7c0:\s+aa\s+xor a,d +\s+7c1:\s+ab\s+xor a,e +\s+7c2:\s+ac\s+xor a,h +\s+7c3:\s+ad\s+xor a,l diff --git a/gas/testsuite/gas/z80/ez80_adl_all.s b/gas/testsuite/gas/z80/ez80_adl_all.s new file mode 100644 index 0000000..2a895b1 --- /dev/null +++ b/gas/testsuite/gas/z80/ez80_adl_all.s @@ -0,0 +1,1000 @@ + .text + .org 0 + ;; eZ80 instructions + +; AND A,x group + and a,a + and a,b + and a,c + and a,d + and a,e + and a,h + and a,l + and a,(hl) + and a,0xaa + and a,(ix+5) + and a,(iy-5) +; CP A,x group + cp a,a + cp a,b + cp a,c + cp a,d + cp a,e + cp a,h + cp a,l + cp a,(hl) + cp a,0xaa + cp a,(ix+5) + cp a,(iy-5) + +; OR A,x group + or a,a + or a,b + or a,c + or a,d + or a,e + or a,h + or a,l + or a,(hl) + or a,0xaa + or a,(ix+5) + or a,(iy-5) + +; SUB A,x group + sub a,a + sub a,b + sub a,c + sub a,d + sub a,e + sub a,h + sub a,l + sub a,(hl) + sub a,0xaa + sub a,(ix+5) + sub a,(iy-5) + +; TST A,x group + tst a,a + tst a,b + tst a,c + tst a,d + tst a,e + tst a,h + tst a,l + tst a,(hl) + tst a,0x0f + +; XOR A,x group + xor a,a + xor a,b + xor a,c + xor a,d + xor a,e + xor a,h + xor a,l + xor a,(hl) + xor a,0xaa + xor a,(ix+5) + xor a,(iy-5) + +; IN r,(BC) group (new naming) + in a,(bc) + in b,(bc) + in c,(bc) + in d,(bc) + in e,(bc) + in h,(bc) + in l,(bc) + +; OUT (BC),r group (new naming) + out (bc),a + out (bc),b + out (bc),c + out (bc),d + out (bc),e + out (bc),h + out (bc),l + +; LD rr,(ii+d) group + ld bc,(ix-7) + ld de,(ix-7) + ld hl,(ix-7) + ld ix,(ix-7) + ld iy,(ix-7) + + ld bc,(iy+38) + ld de,(iy+38) + ld hl,(iy+38) + ld ix,(iy+38) + ld iy,(iy+38) + +; LD (ii+d),rr group + ld (ix+126),bc + ld (ix+126),de + ld (ix+126),hl + ld (ix+126),ix + ld (ix+126),iy + ld (iy-98),bc + ld (iy-98),de + ld (iy-98),hl + ld (iy-98),ix + ld (iy-98),iy + +; LEA rr,ii+d group + lea bc,ix-27 + lea de,ix-27 + lea hl,ix-27 + lea ix,ix-27 + lea iy,ix-27 + lea bc,iy+12 + lea de,iy+12 + lea hl,iy+12 + lea ix,iy+12 + lea iy,iy+12 + +; PEA ii+d group + pea ix+127 + pea iy-128 + +; IN0 group + in0 a,(0x5) + in0 b,(0x5) + in0 c,(0x5) + in0 d,(0x5) + in0 e,(0x5) + in0 h,(0x5) + in0 l,(0x5) + +; OUT0 group + out0 (0x5),a + out0 (0x5),b + out0 (0x5),c + out0 (0x5),d + out0 (0x5),e + out0 (0x5),h + out0 (0x5),l + +; MLT group + mlt bc + mlt de + mlt hl + mlt sp + +; TSTIO instruction + tstio 0f0h + +; SLP instruction + slp + +; ADLMIX flag manipulation instructions + stmix + rsmix + +; Additional block I/O instructions + inim + otim + ini2 + indm + otdm + ind2 + inimr + otimr + ini2r + indmr + otdmr + ind2r + outi2 + outd2 + oti2r + otd2r + inirx + otirx + indrx + otdrx + +; Index registers halves + ld a,ixh + ld b,ixh + ld c,ixh + ld d,ixh + ld e,ixh + ld ixh,ixh + ld ixl,ixh + ld a,ixl + ld b,ixl + ld c,ixl + ld d,ixl + ld e,ixl + ld ixh,ixl + ld ixl,ixl + ld a,iyh + ld b,iyh + ld c,iyh + ld d,iyh + ld e,iyh + ld iyh,iyh + ld iyl,iyh + ld a,iyl + ld b,iyl + ld c,iyl + ld d,iyl + ld e,iyl + ld iyh,iyl + ld iyl,iyl + ld ixh,a + ld ixh,b + ld ixh,c + ld ixh,d + ld ixh,e + ld ixh,ixh + ld ixh,ixl + ld ixh,25 + ld ixl,a + ld ixl,b + ld ixl,c + ld ixl,d + ld ixl,e + ld ixl,ixh + ld ixl,ixl + ld ixl,25 + ld iyh,a + ld iyh,b + ld iyh,c + ld iyh,d + ld iyh,e + ld iyh,iyh + ld iyh,iyl + ld iyh,25 + ld iyl,a + ld iyl,b + ld iyl,c + ld iyl,d + ld iyl,e + ld iyl,iyh + ld iyl,iyl + ld iyl,25 + add a,ixh + add a,ixl + add a,iyh + add a,iyl + adc a,ixh + adc a,ixl + adc a,iyh + adc a,iyl + cp a,ixh + cp a,ixl + cp a,iyh + cp a,iyl + dec ixh + dec ixl + dec iyh + dec iyl + inc ixh + inc ixl + inc iyh + inc iyl + sbc a,ixh + sbc a,ixl + sbc a,iyh + sbc a,iyl + sub a,ixh + sub a,ixl + sub a,iyh + sub a,iyl + and a,ixh + and a,ixl + and a,iyh + and a,iyl + or a,ixh + or a,ixl + or a,iyh + or a,iyl + xor a,ixh + xor a,ixl + xor a,iyh + xor a,iyl + +; Special ADL mode only instructions + ld i,hl + ld hl,i + ld mb,a + ld a,mb + +; Standard Z80 instructions + + adc a,(hl) + adc a,(ix+9) + adc a,(iy+9) + adc a,3 + adc a,a + adc a,b + adc a,c + adc a,d + adc a,e + adc a,h + adc a,l + adc hl,bc + adc hl,de + adc hl,hl + adc hl,sp + add a,(hl) + add a,(ix+9) + add a,(iy+9) + add a,3 + add a,a + add a,b + add a,c + add a,d + add a,e + add a,h + add a,l + add hl,bc + add hl,de + add hl,hl + add hl,sp + add ix,bc + add ix,de + add ix,ix + add ix,sp + add iy,bc + add iy,de + add iy,iy + add iy,sp + and (hl) + and (ix+9) + and (iy+9) + and 3 + and a + and b + and c + and d + and e + and h + and l + bit 0,(hl) + bit 0,(ix+9) + bit 0,(iy+9) + bit 0,a + bit 0,b + bit 0,c + bit 0,d + bit 0,e + bit 0,h + bit 0,l + bit 1,(hl) + bit 1,(ix+9) + bit 1,(iy+9) + bit 1,a + bit 1,b + bit 1,c + bit 1,d + bit 1,e + bit 1,h + bit 1,l + bit 2,(hl) + bit 2,(ix+9) + bit 2,(iy+9) + bit 2,a + bit 2,b + bit 2,c + bit 2,d + bit 2,e + bit 2,h + bit 2,l + bit 3,(hl) + bit 3,(ix+9) + bit 3,(iy+9) + bit 3,a + bit 3,b + bit 3,c + bit 3,d + bit 3,e + bit 3,h + bit 3,l + bit 4,(hl) + bit 4,(ix+9) + bit 4,(iy+9) + bit 4,a + bit 4,b + bit 4,c + bit 4,d + bit 4,e + bit 4,h + bit 4,l + bit 5,(hl) + bit 5,(ix+9) + bit 5,(iy+9) + bit 5,a + bit 5,b + bit 5,c + bit 5,d + bit 5,e + bit 5,h + bit 5,l + bit 6,(hl) + bit 6,(ix+9) + bit 6,(iy+9) + bit 6,a + bit 6,b + bit 6,c + bit 6,d + bit 6,e + bit 6,h + bit 6,l + bit 7,(hl) + bit 7,(ix+9) + bit 7,(iy+9) + bit 7,a + bit 7,b + bit 7,c + bit 7,d + bit 7,e + bit 7,h + bit 7,l + call 0x123456 + call c,0x123456 + call m,0x123456 + call nc,0x123456 + call nz,0x123456 + call p,0x123456 + call pe,0x123456 + call po,0x123456 + call z,0x123456 + ccf + cp (hl) + cp (ix+9) + cp (iy+9) + cp 03 + cp a + cp b + cp c + cp d + cp e + cp h + cp l + cpd + cpdr + cpi + cpir + cpl + daa + dec (hl) + dec (ix+9) + dec (iy+9) + dec a + dec b + dec bc + dec c + dec d + dec de + dec e + dec h + dec hl + dec ix + dec iy + dec l + dec sp + di + djnz .+7 + ei + ex (sp),hl + ex (sp),ix + ex (sp),iy + ex af,af' + ex de,hl + exx + halt + im 0 + im 1 + im 2 + in a,(c) + in a,(3) + in b,(c) + in c,(c) + in d,(c) + in e,(c) + in h,(c) + in l,(c) + inc (hl) + inc (ix+9) + inc (iy+9) + inc a + inc b + inc bc + inc c + inc d + inc de + inc e + inc h + inc hl + inc ix + inc iy + inc l + inc sp + ind + indr + ini + inir + jp (hl) + jp (ix) + jp (iy) + jp 0x123456 + jp c,0x123456 + jp m,0x123456 + jp nc,0x123456 + jp nz,0x123456 + jp p,0x123456 + jp pe,0x123456 + jp po,0x123456 + jp z,0x123456 + jr .+7 + jr c,.+7 + jr nc,.+7 + jr nz,.+7 + jr z,.+7 + ld (0x123456),a + ld (0x123456),bc + ld (0x123456),de + ld (0x123456),hl + ld (0x123456),ix + ld (0x123456),iy + ld (0x123456),sp + ld (bc),a + ld (de),a + ld (hl),3 + ld (hl),a + ld (hl),b + ld (hl),c + ld (hl),d + ld (hl),e + ld (hl),h + ld (hl),l + ld (ix+9),3 + ld (ix+9),a + ld (ix+9),b + ld (ix+9),c + ld (ix+9),d + ld (ix+9),e + ld (ix+9),h + ld (ix+9),l + ld (iy+9),3 + ld (iy+9),a + ld (iy+9),b + ld (iy+9),c + ld (iy+9),d + ld (iy+9),e + ld (iy+9),h + ld (iy+9),l + ld a,(0x123456) + ld a,(bc) + ld a,(de) + ld a,(hl) + ld a,(ix+9) + ld a,(iy+9) + ld a,3 + ld a,a + ld a,b + ld a,c + ld a,d + ld a,e + ld a,h + ld a,i + ld a,l + ld a,r + ld b,(hl) + ld b,(ix+9) + ld b,(iy+9) + ld b,3 + ld b,a + nop ;ld b,b + ld b,c + ld b,d + ld b,e + ld b,h + ld b,l + ld bc,(0x123456) + ld bc,0x123456 + ld c,(hl) + ld c,(ix+9) + ld c,(iy+9) + ld c,3 + ld c,a + ld c,b + nop ;ld c,c + ld c,d + ld c,e + ld c,h + ld c,l + ld d,(hl) + ld d,(ix+9) + ld d,(iy+9) + ld d,3 + ld d,a + ld d,b + ld d,c + nop ;ld d,d + ld d,e + ld d,h + ld d,l + ld de,(0x123456) + ld de,0x123456 + ld e,(hl) + ld e,(ix+9) + ld e,(iy+9) + ld e,3 + ld e,a + ld e,b + ld e,c + ld e,d + nop ;ld e,e + ld e,h + ld e,l + ld h,(hl) + ld h,(ix+9) + ld h,(iy+9) + ld h,3 + ld h,a + ld h,b + ld h,c + ld h,d + ld h,e + ld h,h + ld h,l + ld hl,(0x123456) + ld hl,0x123456 + ld i,a + ld ix,(0x123456) + ld ix,0x123456 + ld iy,(0x123456) + ld iy,0x123456 + ld l,(hl) + ld l,(ix+9) + ld l,(iy+9) + ld l,3 + ld l,a + ld l,b + ld l,c + ld l,d + ld l,e + ld l,h + ld l,l + ld r,a + ld sp,(0x123456) + ld sp,0x123456 + ld sp,hl + ld sp,ix + ld sp,iy + ldd + lddr + ldi + ldir + neg + nop + or (hl) + or (ix+9) + or (iy+9) + or 3 + or a + or b + or c + or d + or e + or h + or l + otdr + otir + out (c),a + out (c),b + out (c),c + out (c),d + out (c),e + out (c),h + out (c),l + out (3),a + outd + outi + pop af + pop bc + pop de + pop hl + pop ix + pop iy + push af + push bc + push de + push hl + push ix + push iy + res 0,(hl) + res 0,(ix+9) + res 0,(iy+9) + res 0,a + res 0,b + res 0,c + res 0,d + res 0,e + res 0,h + res 0,l + res 1,(hl) + res 1,(ix+9) + res 1,(iy+9) + res 1,a + res 1,b + res 1,c + res 1,d + res 1,e + res 1,h + res 1,l + res 2,(hl) + res 2,(ix+9) + res 2,(iy+9) + res 2,a + res 2,b + res 2,c + res 2,d + res 2,e + res 2,h + res 2,l + res 3,(hl) + res 3,(ix+9) + res 3,(iy+9) + res 3,a + res 3,b + res 3,c + res 3,d + res 3,e + res 3,h + res 3,l + res 4,(hl) + res 4,(ix+9) + res 4,(iy+9) + res 4,a + res 4,b + res 4,c + res 4,d + res 4,e + res 4,h + res 4,l + res 5,(hl) + res 5,(ix+9) + res 5,(iy+9) + res 5,a + res 5,b + res 5,c + res 5,d + res 5,e + res 5,h + res 5,l + res 6,(hl) + res 6,(ix+9) + res 6,(iy+9) + res 6,a + res 6,b + res 6,c + res 6,d + res 6,e + res 6,h + res 6,l + res 7,(hl) + res 7,(ix+9) + res 7,(iy+9) + res 7,a + res 7,b + res 7,c + res 7,d + res 7,e + res 7,h + res 7,l + ret + ret c + ret m + ret nc + ret nz + ret p + ret pe + ret po + ret z + reti + retn + rl (hl) + rl (ix+9) + rl (iy+9) + rl a + rl b + rl c + rl d + rl e + rl h + rl l + rla + rlc (hl) + rlc (ix+9) + rlc (iy+9) + rlc a + rlc b + rlc c + rlc d + rlc e + rlc h + rlc l + rlca + rld + rr (hl) + rr (ix+9) + rr (iy+9) + rr a + rr b + rr c + rr d + rr e + rr h + rr l + rra + rrc (hl) + rrc (ix+9) + rrc (iy+9) + rrc a + rrc b + rrc c + rrc d + rrc e + rrc h + rrc l + rrca + rrd + rst 0x00 + rst 0x08 + rst 0x10 + rst 0x18 + rst 0x20 + rst 0x28 + rst 0x30 + rst 0x38 + sbc a,(hl) + sbc a,(ix+9) + sbc a,(iy+9) + sbc a,3 + sbc a,a + sbc a,b + sbc a,c + sbc a,d + sbc a,e + sbc a,h + sbc a,l + sbc hl,bc + sbc hl,de + sbc hl,hl + sbc hl,sp + scf + set 0,(hl) + set 0,(ix+9) + set 0,(iy+9) + set 0,a + set 0,b + set 0,c + set 0,d + set 0,e + set 0,h + set 0,l + set 1,(hl) + set 1,(ix+9) + set 1,(iy+9) + set 1,a + set 1,b + set 1,c + set 1,d + set 1,e + set 1,h + set 1,l + set 2,(hl) + set 2,(ix+9) + set 2,(iy+9) + set 2,a + set 2,b + set 2,c + set 2,d + set 2,e + set 2,h + set 2,l + set 3,(hl) + set 3,(ix+9) + set 3,(iy+9) + set 3,a + set 3,b + set 3,c + set 3,d + set 3,e + set 3,h + set 3,l + set 4,(hl) + set 4,(ix+9) + set 4,(iy+9) + set 4,a + set 4,b + set 4,c + set 4,d + set 4,e + set 4,h + set 4,l + set 5,(hl) + set 5,(ix+9) + set 5,(iy+9) + set 5,a + set 5,b + set 5,c + set 5,d + set 5,e + set 5,h + set 5,l + set 6,(hl) + set 6,(ix+9) + set 6,(iy+9) + set 6,a + set 6,b + set 6,c + set 6,d + set 6,e + set 6,h + set 6,l + set 7,(hl) + set 7,(ix+9) + set 7,(iy+9) + set 7,a + set 7,b + set 7,c + set 7,d + set 7,e + set 7,h + set 7,l + sla (hl) + sla (ix+9) + sla (iy+9) + sla a + sla b + sla c + sla d + sla e + sla h + sla l + sra (hl) + sra (ix+9) + sra (iy+9) + sra a + sra b + sra c + sra d + sra e + sra h + sra l + srl (hl) + srl (ix+9) + srl (iy+9) + srl a + srl b + srl c + srl d + srl e + srl h + srl l + sub (hl) + sub (ix+9) + sub (iy+9) + sub 3 + sub a + sub b + sub c + sub d + sub e + sub h + sub l + xor (hl) + xor (ix+9) + xor (iy+9) + xor 3 + xor a + xor b + xor c + xor d + xor e + xor h + xor l diff --git a/gas/testsuite/gas/z80/ez80_adl_suf.d b/gas/testsuite/gas/z80/ez80_adl_suf.d new file mode 100644 index 0000000..e6d9d34 --- /dev/null +++ b/gas/testsuite/gas/z80/ez80_adl_suf.d @@ -0,0 +1,314 @@ +#as: -ez80-adl +#objdump: -d +#name: eZ80 instructions with sufficies in ADL cpu mode +#source: ez80_isuf.s + +.*:.* + +Disassembly of section .text: + +0+ <.text>: +\s+[0-9a-f]+:[ ]52 cd 56 34 12[ ]+call\.sil 0x123456 +\s+[0-9a-f]+:[ ]52 dc 56 34 12[ ]+call\.sil c,0x123456 +\s+[0-9a-f]+:[ ]52 fc 56 34 12[ ]+call\.sil m,0x123456 +\s+[0-9a-f]+:[ ]52 d4 56 34 12[ ]+call\.sil nc,0x123456 +\s+[0-9a-f]+:[ ]52 c4 56 34 12[ ]+call\.sil nz,0x123456 +\s+[0-9a-f]+:[ ]52 f4 56 34 12[ ]+call\.sil p,0x123456 +\s+[0-9a-f]+:[ ]52 ec 56 34 12[ ]+call\.sil pe,0x123456 +\s+[0-9a-f]+:[ ]52 e4 56 34 12[ ]+call\.sil po,0x123456 +\s+[0-9a-f]+:[ ]52 cc 56 34 12[ ]+call\.sil z,0x123456 +\s+[0-9a-f]+:[ ]52 c3 56 34 12[ ]+jp\.sil 0x123456 +\s+[0-9a-f]+:[ ]52 da 56 34 12[ ]+jp\.sil c,0x123456 +\s+[0-9a-f]+:[ ]52 fa 56 34 12[ ]+jp\.sil m,0x123456 +\s+[0-9a-f]+:[ ]52 d2 56 34 12[ ]+jp\.sil nc,0x123456 +\s+[0-9a-f]+:[ ]52 c2 56 34 12[ ]+jp\.sil nz,0x123456 +\s+[0-9a-f]+:[ ]52 f2 56 34 12[ ]+jp\.sil p,0x123456 +\s+[0-9a-f]+:[ ]52 ea 56 34 12[ ]+jp\.sil pe,0x123456 +\s+[0-9a-f]+:[ ]52 e2 56 34 12[ ]+jp\.sil po,0x123456 +\s+[0-9a-f]+:[ ]52 ca 56 34 12[ ]+jp\.sil z,0x123456 +\s+[0-9a-f]+:[ ]52 32 56 34 12[ ]+ld\.sil \(0x123456\),a +\s+[0-9a-f]+:[ ]52 ed 43 56 34 12[ ]+ld\.sil \(0x123456\),bc +\s+[0-9a-f]+:[ ]52 ed 53 56 34 12[ ]+ld\.sil \(0x123456\),de +\s+[0-9a-f]+:[ ]52 22 56 34 12[ ]+ld\.sil \(0x123456\),hl +\s+[0-9a-f]+:[ ]52 dd 22 56 34 12[ ]+ld\.sil \(0x123456\),ix +\s+[0-9a-f]+:[ ]52 fd 22 56 34 12[ ]+ld\.sil \(0x123456\),iy +\s+[0-9a-f]+:[ ]52 ed 73 56 34 12[ ]+ld\.sil \(0x123456\),sp +\s+[0-9a-f]+:[ ]52 3a 56 34 12[ ]+ld\.sil a,\(0x123456\) +\s+[0-9a-f]+:[ ]52 ed 4b 56 34 12[ ]+ld\.sil bc,\(0x123456\) +\s+[0-9a-f]+:[ ]52 01 56 34 12[ ]+ld\.sil bc,0x123456 +\s+[0-9a-f]+:[ ]52 ed 5b 56 34 12[ ]+ld\.sil de,\(0x123456\) +\s+[0-9a-f]+:[ ]52 11 56 34 12[ ]+ld\.sil de,0x123456 +\s+[0-9a-f]+:[ ]52 2a 56 34 12[ ]+ld\.sil hl,\(0x123456\) +\s+[0-9a-f]+:[ ]52 21 56 34 12[ ]+ld\.sil hl,0x123456 +\s+[0-9a-f]+:[ ]52 dd 2a 56 34 12[ ]+ld\.sil ix,\(0x123456\) +\s+[0-9a-f]+:[ ]52 dd 21 56 34 12[ ]+ld\.sil ix,0x123456 +\s+[0-9a-f]+:[ ]52 fd 2a 56 34 12[ ]+ld\.sil iy,\(0x123456\) +\s+[0-9a-f]+:[ ]52 fd 21 56 34 12[ ]+ld\.sil iy,0x123456 +\s+[0-9a-f]+:[ ]52 ed 7b 56 34 12[ ]+ld\.sil sp,\(0x123456\) +\s+[0-9a-f]+:[ ]52 31 56 34 12[ ]+ld\.sil sp,0x123456 +\s+[0-9a-f]+:[ ]5b cd 56 34 12[ ]+call\.lil 0x123456 +\s+[0-9a-f]+:[ ]5b dc 56 34 12[ ]+call\.lil c,0x123456 +\s+[0-9a-f]+:[ ]5b fc 56 34 12[ ]+call\.lil m,0x123456 +\s+[0-9a-f]+:[ ]5b d4 56 34 12[ ]+call\.lil nc,0x123456 +\s+[0-9a-f]+:[ ]5b c4 56 34 12[ ]+call\.lil nz,0x123456 +\s+[0-9a-f]+:[ ]5b f4 56 34 12[ ]+call\.lil p,0x123456 +\s+[0-9a-f]+:[ ]5b ec 56 34 12[ ]+call\.lil pe,0x123456 +\s+[0-9a-f]+:[ ]5b e4 56 34 12[ ]+call\.lil po,0x123456 +\s+[0-9a-f]+:[ ]5b cc 56 34 12[ ]+call\.lil z,0x123456 +\s+[0-9a-f]+:[ ]5b c3 56 34 12[ ]+jp\.lil 0x123456 +\s+[0-9a-f]+:[ ]5b da 56 34 12[ ]+jp\.lil c,0x123456 +\s+[0-9a-f]+:[ ]5b fa 56 34 12[ ]+jp\.lil m,0x123456 +\s+[0-9a-f]+:[ ]5b d2 56 34 12[ ]+jp\.lil nc,0x123456 +\s+[0-9a-f]+:[ ]5b c2 56 34 12[ ]+jp\.lil nz,0x123456 +\s+[0-9a-f]+:[ ]5b f2 56 34 12[ ]+jp\.lil p,0x123456 +\s+[0-9a-f]+:[ ]5b ea 56 34 12[ ]+jp\.lil pe,0x123456 +\s+[0-9a-f]+:[ ]5b e2 56 34 12[ ]+jp\.lil po,0x123456 +\s+[0-9a-f]+:[ ]5b ca 56 34 12[ ]+jp\.lil z,0x123456 +\s+[0-9a-f]+:[ ]5b 32 56 34 12[ ]+ld\.lil \(0x123456\),a +\s+[0-9a-f]+:[ ]5b ed 43 56 34 12[ ]+ld\.lil \(0x123456\),bc +\s+[0-9a-f]+:[ ]5b ed 53 56 34 12[ ]+ld\.lil \(0x123456\),de +\s+[0-9a-f]+:[ ]5b 22 56 34 12[ ]+ld\.lil \(0x123456\),hl +\s+[0-9a-f]+:[ ]5b dd 22 56 34 12[ ]+ld\.lil \(0x123456\),ix +\s+[0-9a-f]+:[ ]5b fd 22 56 34 12[ ]+ld\.lil \(0x123456\),iy +\s+[0-9a-f]+:[ ]5b ed 73 56 34 12[ ]+ld\.lil \(0x123456\),sp +\s+[0-9a-f]+:[ ]5b 3a 56 34 12[ ]+ld\.lil a,\(0x123456\) +\s+[0-9a-f]+:[ ]5b ed 4b 56 34 12[ ]+ld\.lil bc,\(0x123456\) +\s+[0-9a-f]+:[ ]5b 01 56 34 12[ ]+ld\.lil bc,0x123456 +\s+[0-9a-f]+:[ ]5b ed 5b 56 34 12[ ]+ld\.lil de,\(0x123456\) +\s+[0-9a-f]+:[ ]5b 11 56 34 12[ ]+ld\.lil de,0x123456 +\s+[0-9a-f]+:[ ]5b 2a 56 34 12[ ]+ld\.lil hl,\(0x123456\) +\s+[0-9a-f]+:[ ]5b 21 56 34 12[ ]+ld\.lil hl,0x123456 +\s+[0-9a-f]+:[ ]5b dd 2a 56 34 12[ ]+ld\.lil ix,\(0x123456\) +\s+[0-9a-f]+:[ ]5b dd 21 56 34 12[ ]+ld\.lil ix,0x123456 +\s+[0-9a-f]+:[ ]5b fd 2a 56 34 12[ ]+ld\.lil iy,\(0x123456\) +\s+[0-9a-f]+:[ ]5b fd 21 56 34 12[ ]+ld\.lil iy,0x123456 +\s+[0-9a-f]+:[ ]5b ed 7b 56 34 12[ ]+ld\.lil sp,\(0x123456\) +\s+[0-9a-f]+:[ ]5b 31 56 34 12[ ]+ld\.lil sp,0x123456 +\s+[0-9a-f]+:[ ]49 cd 56 34[ ]+call\.lis 0x3456 +\s+[0-9a-f]+:[ ]49 dc 56 34[ ]+call\.lis c,0x3456 +\s+[0-9a-f]+:[ ]49 fc 56 34[ ]+call\.lis m,0x3456 +\s+[0-9a-f]+:[ ]49 d4 56 34[ ]+call\.lis nc,0x3456 +\s+[0-9a-f]+:[ ]49 c4 56 34[ ]+call\.lis nz,0x3456 +\s+[0-9a-f]+:[ ]49 f4 56 34[ ]+call\.lis p,0x3456 +\s+[0-9a-f]+:[ ]49 ec 56 34[ ]+call\.lis pe,0x3456 +\s+[0-9a-f]+:[ ]49 e4 56 34[ ]+call\.lis po,0x3456 +\s+[0-9a-f]+:[ ]49 cc 56 34[ ]+call\.lis z,0x3456 +\s+[0-9a-f]+:[ ]49 c3 56 34[ ]+jp\.lis 0x3456 +\s+[0-9a-f]+:[ ]49 da 56 34[ ]+jp\.lis c,0x3456 +\s+[0-9a-f]+:[ ]49 fa 56 34[ ]+jp\.lis m,0x3456 +\s+[0-9a-f]+:[ ]49 d2 56 34[ ]+jp\.lis nc,0x3456 +\s+[0-9a-f]+:[ ]49 c2 56 34[ ]+jp\.lis nz,0x3456 +\s+[0-9a-f]+:[ ]49 f2 56 34[ ]+jp\.lis p,0x3456 +\s+[0-9a-f]+:[ ]49 ea 56 34[ ]+jp\.lis pe,0x3456 +\s+[0-9a-f]+:[ ]49 e2 56 34[ ]+jp\.lis po,0x3456 +\s+[0-9a-f]+:[ ]49 ca 56 34[ ]+jp\.lis z,0x3456 +\s+[0-9a-f]+:[ ]49 32 56 34[ ]+ld\.lis \(0x3456\),a +\s+[0-9a-f]+:[ ]49 ed 43 56 34[ ]+ld\.lis \(0x3456\),bc +\s+[0-9a-f]+:[ ]49 ed 53 56 34[ ]+ld\.lis \(0x3456\),de +\s+[0-9a-f]+:[ ]49 22 56 34[ ]+ld\.lis \(0x3456\),hl +\s+[0-9a-f]+:[ ]49 dd 22 56 34[ ]+ld\.lis \(0x3456\),ix +\s+[0-9a-f]+:[ ]49 fd 22 56 34[ ]+ld\.lis \(0x3456\),iy +\s+[0-9a-f]+:[ ]49 ed 73 56 34[ ]+ld\.lis \(0x3456\),sp +\s+[0-9a-f]+:[ ]49 3a 56 34[ ]+ld\.lis a,\(0x3456\) +\s+[0-9a-f]+:[ ]49 ed 4b 56 34[ ]+ld\.lis bc,\(0x3456\) +\s+[0-9a-f]+:[ ]49 01 56 34[ ]+ld\.lis bc,0x3456 +\s+[0-9a-f]+:[ ]49 ed 5b 56 34[ ]+ld\.lis de,\(0x3456\) +\s+[0-9a-f]+:[ ]49 11 56 34[ ]+ld\.lis de,0x3456 +\s+[0-9a-f]+:[ ]49 2a 56 34[ ]+ld\.lis hl,\(0x3456\) +\s+[0-9a-f]+:[ ]49 21 56 34[ ]+ld\.lis hl,0x3456 +\s+[0-9a-f]+:[ ]49 dd 2a 56 34[ ]+ld\.lis ix,\(0x3456\) +\s+[0-9a-f]+:[ ]49 dd 21 56 34[ ]+ld\.lis ix,0x3456 +\s+[0-9a-f]+:[ ]49 fd 2a 56 34[ ]+ld\.lis iy,\(0x3456\) +\s+[0-9a-f]+:[ ]49 fd 21 56 34[ ]+ld\.lis iy,0x3456 +\s+[0-9a-f]+:[ ]49 ed 7b 56 34[ ]+ld\.lis sp,\(0x3456\) +\s+[0-9a-f]+:[ ]49 31 56 34[ ]+ld\.lis sp,0x3456 +\s+[0-9a-f]+:[ ]5b cd 56 34 12[ ]+call\.lil 0x123456 +\s+[0-9a-f]+:[ ]5b dc 56 34 12[ ]+call\.lil c,0x123456 +\s+[0-9a-f]+:[ ]5b fc 56 34 12[ ]+call\.lil m,0x123456 +\s+[0-9a-f]+:[ ]5b d4 56 34 12[ ]+call\.lil nc,0x123456 +\s+[0-9a-f]+:[ ]5b c4 56 34 12[ ]+call\.lil nz,0x123456 +\s+[0-9a-f]+:[ ]5b f4 56 34 12[ ]+call\.lil p,0x123456 +\s+[0-9a-f]+:[ ]5b ec 56 34 12[ ]+call\.lil pe,0x123456 +\s+[0-9a-f]+:[ ]5b e4 56 34 12[ ]+call\.lil po,0x123456 +\s+[0-9a-f]+:[ ]5b cc 56 34 12[ ]+call\.lil z,0x123456 +\s+[0-9a-f]+:[ ]5b c3 56 34 12[ ]+jp\.lil 0x123456 +\s+[0-9a-f]+:[ ]5b da 56 34 12[ ]+jp\.lil c,0x123456 +\s+[0-9a-f]+:[ ]5b fa 56 34 12[ ]+jp\.lil m,0x123456 +\s+[0-9a-f]+:[ ]5b d2 56 34 12[ ]+jp\.lil nc,0x123456 +\s+[0-9a-f]+:[ ]5b c2 56 34 12[ ]+jp\.lil nz,0x123456 +\s+[0-9a-f]+:[ ]5b f2 56 34 12[ ]+jp\.lil p,0x123456 +\s+[0-9a-f]+:[ ]5b ea 56 34 12[ ]+jp\.lil pe,0x123456 +\s+[0-9a-f]+:[ ]5b e2 56 34 12[ ]+jp\.lil po,0x123456 +\s+[0-9a-f]+:[ ]5b ca 56 34 12[ ]+jp\.lil z,0x123456 +\s+[0-9a-f]+:[ ]5b 32 56 34 12[ ]+ld\.lil \(0x123456\),a +\s+[0-9a-f]+:[ ]5b ed 43 56 34 12[ ]+ld\.lil \(0x123456\),bc +\s+[0-9a-f]+:[ ]5b ed 53 56 34 12[ ]+ld\.lil \(0x123456\),de +\s+[0-9a-f]+:[ ]5b 22 56 34 12[ ]+ld\.lil \(0x123456\),hl +\s+[0-9a-f]+:[ ]5b dd 22 56 34 12[ ]+ld\.lil \(0x123456\),ix +\s+[0-9a-f]+:[ ]5b fd 22 56 34 12[ ]+ld\.lil \(0x123456\),iy +\s+[0-9a-f]+:[ ]5b ed 73 56 34 12[ ]+ld\.lil \(0x123456\),sp +\s+[0-9a-f]+:[ ]5b 3a 56 34 12[ ]+ld\.lil a,\(0x123456\) +\s+[0-9a-f]+:[ ]5b ed 4b 56 34 12[ ]+ld\.lil bc,\(0x123456\) +\s+[0-9a-f]+:[ ]5b 01 56 34 12[ ]+ld\.lil bc,0x123456 +\s+[0-9a-f]+:[ ]5b ed 5b 56 34 12[ ]+ld\.lil de,\(0x123456\) +\s+[0-9a-f]+:[ ]5b 11 56 34 12[ ]+ld\.lil de,0x123456 +\s+[0-9a-f]+:[ ]5b 2a 56 34 12[ ]+ld\.lil hl,\(0x123456\) +\s+[0-9a-f]+:[ ]5b 21 56 34 12[ ]+ld\.lil hl,0x123456 +\s+[0-9a-f]+:[ ]5b dd 2a 56 34 12[ ]+ld\.lil ix,\(0x123456\) +\s+[0-9a-f]+:[ ]5b dd 21 56 34 12[ ]+ld\.lil ix,0x123456 +\s+[0-9a-f]+:[ ]5b fd 2a 56 34 12[ ]+ld\.lil iy,\(0x123456\) +\s+[0-9a-f]+:[ ]5b fd 21 56 34 12[ ]+ld\.lil iy,0x123456 +\s+[0-9a-f]+:[ ]5b ed 7b 56 34 12[ ]+ld\.lil sp,\(0x123456\) +\s+[0-9a-f]+:[ ]5b 31 56 34 12[ ]+ld\.lil sp,0x123456 +\s+[0-9a-f]+:[ ]40 cd 56 34[ ]+call\.sis 0x3456 +\s+[0-9a-f]+:[ ]40 dc 56 34[ ]+call\.sis c,0x3456 +\s+[0-9a-f]+:[ ]40 fc 56 34[ ]+call\.sis m,0x3456 +\s+[0-9a-f]+:[ ]40 d4 56 34[ ]+call\.sis nc,0x3456 +\s+[0-9a-f]+:[ ]40 c4 56 34[ ]+call\.sis nz,0x3456 +\s+[0-9a-f]+:[ ]40 f4 56 34[ ]+call\.sis p,0x3456 +\s+[0-9a-f]+:[ ]40 ec 56 34[ ]+call\.sis pe,0x3456 +\s+[0-9a-f]+:[ ]40 e4 56 34[ ]+call\.sis po,0x3456 +\s+[0-9a-f]+:[ ]40 cc 56 34[ ]+call\.sis z,0x3456 +\s+[0-9a-f]+:[ ]40 c3 56 34[ ]+jp\.sis 0x3456 +\s+[0-9a-f]+:[ ]40 da 56 34[ ]+jp\.sis c,0x3456 +\s+[0-9a-f]+:[ ]40 fa 56 34[ ]+jp\.sis m,0x3456 +\s+[0-9a-f]+:[ ]40 d2 56 34[ ]+jp\.sis nc,0x3456 +\s+[0-9a-f]+:[ ]40 c2 56 34[ ]+jp\.sis nz,0x3456 +\s+[0-9a-f]+:[ ]40 f2 56 34[ ]+jp\.sis p,0x3456 +\s+[0-9a-f]+:[ ]40 ea 56 34[ ]+jp\.sis pe,0x3456 +\s+[0-9a-f]+:[ ]40 e2 56 34[ ]+jp\.sis po,0x3456 +\s+[0-9a-f]+:[ ]40 ca 56 34[ ]+jp\.sis z,0x3456 +\s+[0-9a-f]+:[ ]40 32 56 34[ ]+ld\.sis \(0x3456\),a +\s+[0-9a-f]+:[ ]40 ed 43 56 34[ ]+ld\.sis \(0x3456\),bc +\s+[0-9a-f]+:[ ]40 ed 53 56 34[ ]+ld\.sis \(0x3456\),de +\s+[0-9a-f]+:[ ]40 22 56 34[ ]+ld\.sis \(0x3456\),hl +\s+[0-9a-f]+:[ ]40 dd 22 56 34[ ]+ld\.sis \(0x3456\),ix +\s+[0-9a-f]+:[ ]40 fd 22 56 34[ ]+ld\.sis \(0x3456\),iy +\s+[0-9a-f]+:[ ]40 ed 73 56 34[ ]+ld\.sis \(0x3456\),sp +\s+[0-9a-f]+:[ ]40 3a 56 34[ ]+ld\.sis a,\(0x3456\) +\s+[0-9a-f]+:[ ]40 ed 4b 56 34[ ]+ld\.sis bc,\(0x3456\) +\s+[0-9a-f]+:[ ]40 01 56 34[ ]+ld\.sis bc,0x3456 +\s+[0-9a-f]+:[ ]40 ed 5b 56 34[ ]+ld\.sis de,\(0x3456\) +\s+[0-9a-f]+:[ ]40 11 56 34[ ]+ld\.sis de,0x3456 +\s+[0-9a-f]+:[ ]40 2a 56 34[ ]+ld\.sis hl,\(0x3456\) +\s+[0-9a-f]+:[ ]40 21 56 34[ ]+ld\.sis hl,0x3456 +\s+[0-9a-f]+:[ ]40 dd 2a 56 34[ ]+ld\.sis ix,\(0x3456\) +\s+[0-9a-f]+:[ ]40 dd 21 56 34[ ]+ld\.sis ix,0x3456 +\s+[0-9a-f]+:[ ]40 fd 2a 56 34[ ]+ld\.sis iy,\(0x3456\) +\s+[0-9a-f]+:[ ]40 fd 21 56 34[ ]+ld\.sis iy,0x3456 +\s+[0-9a-f]+:[ ]40 ed 7b 56 34[ ]+ld\.sis sp,\(0x3456\) +\s+[0-9a-f]+:[ ]40 31 56 34[ ]+ld\.sis sp,0x3456 +\s+[0-9a-f]+:[ ]49 cd 56 34[ ]+call\.lis 0x3456 +\s+[0-9a-f]+:[ ]49 dc 56 34[ ]+call\.lis c,0x3456 +\s+[0-9a-f]+:[ ]49 fc 56 34[ ]+call\.lis m,0x3456 +\s+[0-9a-f]+:[ ]49 d4 56 34[ ]+call\.lis nc,0x3456 +\s+[0-9a-f]+:[ ]49 c4 56 34[ ]+call\.lis nz,0x3456 +\s+[0-9a-f]+:[ ]49 f4 56 34[ ]+call\.lis p,0x3456 +\s+[0-9a-f]+:[ ]49 ec 56 34[ ]+call\.lis pe,0x3456 +\s+[0-9a-f]+:[ ]49 e4 56 34[ ]+call\.lis po,0x3456 +\s+[0-9a-f]+:[ ]49 cc 56 34[ ]+call\.lis z,0x3456 +\s+[0-9a-f]+:[ ]49 c3 56 34[ ]+jp\.lis 0x3456 +\s+[0-9a-f]+:[ ]49 da 56 34[ ]+jp\.lis c,0x3456 +\s+[0-9a-f]+:[ ]49 fa 56 34[ ]+jp\.lis m,0x3456 +\s+[0-9a-f]+:[ ]49 d2 56 34[ ]+jp\.lis nc,0x3456 +\s+[0-9a-f]+:[ ]49 c2 56 34[ ]+jp\.lis nz,0x3456 +\s+[0-9a-f]+:[ ]49 f2 56 34[ ]+jp\.lis p,0x3456 +\s+[0-9a-f]+:[ ]49 ea 56 34[ ]+jp\.lis pe,0x3456 +\s+[0-9a-f]+:[ ]49 e2 56 34[ ]+jp\.lis po,0x3456 +\s+[0-9a-f]+:[ ]49 ca 56 34[ ]+jp\.lis z,0x3456 +\s+[0-9a-f]+:[ ]49 32 56 34[ ]+ld\.lis \(0x3456\),a +\s+[0-9a-f]+:[ ]49 ed 43 56 34[ ]+ld\.lis \(0x3456\),bc +\s+[0-9a-f]+:[ ]49 ed 53 56 34[ ]+ld\.lis \(0x3456\),de +\s+[0-9a-f]+:[ ]49 22 56 34[ ]+ld\.lis \(0x3456\),hl +\s+[0-9a-f]+:[ ]49 dd 22 56 34[ ]+ld\.lis \(0x3456\),ix +\s+[0-9a-f]+:[ ]49 fd 22 56 34[ ]+ld\.lis \(0x3456\),iy +\s+[0-9a-f]+:[ ]49 ed 73 56 34[ ]+ld\.lis \(0x3456\),sp +\s+[0-9a-f]+:[ ]49 3a 56 34[ ]+ld\.lis a,\(0x3456\) +\s+[0-9a-f]+:[ ]49 ed 4b 56 34[ ]+ld\.lis bc,\(0x3456\) +\s+[0-9a-f]+:[ ]49 01 56 34[ ]+ld\.lis bc,0x3456 +\s+[0-9a-f]+:[ ]49 ed 5b 56 34[ ]+ld\.lis de,\(0x3456\) +\s+[0-9a-f]+:[ ]49 11 56 34[ ]+ld\.lis de,0x3456 +\s+[0-9a-f]+:[ ]49 2a 56 34[ ]+ld\.lis hl,\(0x3456\) +\s+[0-9a-f]+:[ ]49 21 56 34[ ]+ld\.lis hl,0x3456 +\s+[0-9a-f]+:[ ]49 dd 2a 56 34[ ]+ld\.lis ix,\(0x3456\) +\s+[0-9a-f]+:[ ]49 dd 21 56 34[ ]+ld\.lis ix,0x3456 +\s+[0-9a-f]+:[ ]49 fd 2a 56 34[ ]+ld\.lis iy,\(0x3456\) +\s+[0-9a-f]+:[ ]49 fd 21 56 34[ ]+ld\.lis iy,0x3456 +\s+[0-9a-f]+:[ ]49 ed 7b 56 34[ ]+ld\.lis sp,\(0x3456\) +\s+[0-9a-f]+:[ ]49 31 56 34[ ]+ld\.lis sp,0x3456 +\s+[0-9a-f]+:[ ]52 cd 56 34 12[ ]+call\.sil 0x123456 +\s+[0-9a-f]+:[ ]52 dc 56 34 12[ ]+call\.sil c,0x123456 +\s+[0-9a-f]+:[ ]52 fc 56 34 12[ ]+call\.sil m,0x123456 +\s+[0-9a-f]+:[ ]52 d4 56 34 12[ ]+call\.sil nc,0x123456 +\s+[0-9a-f]+:[ ]52 c4 56 34 12[ ]+call\.sil nz,0x123456 +\s+[0-9a-f]+:[ ]52 f4 56 34 12[ ]+call\.sil p,0x123456 +\s+[0-9a-f]+:[ ]52 ec 56 34 12[ ]+call\.sil pe,0x123456 +\s+[0-9a-f]+:[ ]52 e4 56 34 12[ ]+call\.sil po,0x123456 +\s+[0-9a-f]+:[ ]52 cc 56 34 12[ ]+call\.sil z,0x123456 +\s+[0-9a-f]+:[ ]52 c3 56 34 12[ ]+jp\.sil 0x123456 +\s+[0-9a-f]+:[ ]52 da 56 34 12[ ]+jp\.sil c,0x123456 +\s+[0-9a-f]+:[ ]52 fa 56 34 12[ ]+jp\.sil m,0x123456 +\s+[0-9a-f]+:[ ]52 d2 56 34 12[ ]+jp\.sil nc,0x123456 +\s+[0-9a-f]+:[ ]52 c2 56 34 12[ ]+jp\.sil nz,0x123456 +\s+[0-9a-f]+:[ ]52 f2 56 34 12[ ]+jp\.sil p,0x123456 +\s+[0-9a-f]+:[ ]52 ea 56 34 12[ ]+jp\.sil pe,0x123456 +\s+[0-9a-f]+:[ ]52 e2 56 34 12[ ]+jp\.sil po,0x123456 +\s+[0-9a-f]+:[ ]52 ca 56 34 12[ ]+jp\.sil z,0x123456 +\s+[0-9a-f]+:[ ]52 32 56 34 12[ ]+ld\.sil \(0x123456\),a +\s+[0-9a-f]+:[ ]52 ed 43 56 34 12[ ]+ld\.sil \(0x123456\),bc +\s+[0-9a-f]+:[ ]52 ed 53 56 34 12[ ]+ld\.sil \(0x123456\),de +\s+[0-9a-f]+:[ ]52 22 56 34 12[ ]+ld\.sil \(0x123456\),hl +\s+[0-9a-f]+:[ ]52 dd 22 56 34 12[ ]+ld\.sil \(0x123456\),ix +\s+[0-9a-f]+:[ ]52 fd 22 56 34 12[ ]+ld\.sil \(0x123456\),iy +\s+[0-9a-f]+:[ ]52 ed 73 56 34 12[ ]+ld\.sil \(0x123456\),sp +\s+[0-9a-f]+:[ ]52 3a 56 34 12[ ]+ld\.sil a,\(0x123456\) +\s+[0-9a-f]+:[ ]52 ed 4b 56 34 12[ ]+ld\.sil bc,\(0x123456\) +\s+[0-9a-f]+:[ ]52 01 56 34 12[ ]+ld\.sil bc,0x123456 +\s+[0-9a-f]+:[ ]52 ed 5b 56 34 12[ ]+ld\.sil de,\(0x123456\) +\s+[0-9a-f]+:[ ]52 11 56 34 12[ ]+ld\.sil de,0x123456 +\s+[0-9a-f]+:[ ]52 2a 56 34 12[ ]+ld\.sil hl,\(0x123456\) +\s+[0-9a-f]+:[ ]52 21 56 34 12[ ]+ld\.sil hl,0x123456 +\s+[0-9a-f]+:[ ]52 dd 2a 56 34 12[ ]+ld\.sil ix,\(0x123456\) +\s+[0-9a-f]+:[ ]52 dd 21 56 34 12[ ]+ld\.sil ix,0x123456 +\s+[0-9a-f]+:[ ]52 fd 2a 56 34 12[ ]+ld\.sil iy,\(0x123456\) +\s+[0-9a-f]+:[ ]52 fd 21 56 34 12[ ]+ld\.sil iy,0x123456 +\s+[0-9a-f]+:[ ]52 ed 7b 56 34 12[ ]+ld\.sil sp,\(0x123456\) +\s+[0-9a-f]+:[ ]52 31 56 34 12[ ]+ld\.sil sp,0x123456 +\s+[0-9a-f]+:[ ]5b cd 56 34 12[ ]+call\.lil 0x123456 +\s+[0-9a-f]+:[ ]5b dc 56 34 12[ ]+call\.lil c,0x123456 +\s+[0-9a-f]+:[ ]5b fc 56 34 12[ ]+call\.lil m,0x123456 +\s+[0-9a-f]+:[ ]5b d4 56 34 12[ ]+call\.lil nc,0x123456 +\s+[0-9a-f]+:[ ]5b c4 56 34 12[ ]+call\.lil nz,0x123456 +\s+[0-9a-f]+:[ ]5b f4 56 34 12[ ]+call\.lil p,0x123456 +\s+[0-9a-f]+:[ ]5b ec 56 34 12[ ]+call\.lil pe,0x123456 +\s+[0-9a-f]+:[ ]5b e4 56 34 12[ ]+call\.lil po,0x123456 +\s+[0-9a-f]+:[ ]5b cc 56 34 12[ ]+call\.lil z,0x123456 +\s+[0-9a-f]+:[ ]5b c3 56 34 12[ ]+jp\.lil 0x123456 +\s+[0-9a-f]+:[ ]5b da 56 34 12[ ]+jp\.lil c,0x123456 +\s+[0-9a-f]+:[ ]5b fa 56 34 12[ ]+jp\.lil m,0x123456 +\s+[0-9a-f]+:[ ]5b d2 56 34 12[ ]+jp\.lil nc,0x123456 +\s+[0-9a-f]+:[ ]5b c2 56 34 12[ ]+jp\.lil nz,0x123456 +\s+[0-9a-f]+:[ ]5b f2 56 34 12[ ]+jp\.lil p,0x123456 +\s+[0-9a-f]+:[ ]5b ea 56 34 12[ ]+jp\.lil pe,0x123456 +\s+[0-9a-f]+:[ ]5b e2 56 34 12[ ]+jp\.lil po,0x123456 +\s+[0-9a-f]+:[ ]5b ca 56 34 12[ ]+jp\.lil z,0x123456 +\s+[0-9a-f]+:[ ]5b 32 56 34 12[ ]+ld\.lil \(0x123456\),a +\s+[0-9a-f]+:[ ]5b ed 43 56 34 12[ ]+ld\.lil \(0x123456\),bc +\s+[0-9a-f]+:[ ]5b ed 53 56 34 12[ ]+ld\.lil \(0x123456\),de +\s+[0-9a-f]+:[ ]5b 22 56 34 12[ ]+ld\.lil \(0x123456\),hl +\s+[0-9a-f]+:[ ]5b dd 22 56 34 12[ ]+ld\.lil \(0x123456\),ix +\s+[0-9a-f]+:[ ]5b fd 22 56 34 12[ ]+ld\.lil \(0x123456\),iy +\s+[0-9a-f]+:[ ]5b ed 73 56 34 12[ ]+ld\.lil \(0x123456\),sp +\s+[0-9a-f]+:[ ]5b 3a 56 34 12[ ]+ld\.lil a,\(0x123456\) +\s+[0-9a-f]+:[ ]5b ed 4b 56 34 12[ ]+ld\.lil bc,\(0x123456\) +\s+[0-9a-f]+:[ ]5b 01 56 34 12[ ]+ld\.lil bc,0x123456 +\s+[0-9a-f]+:[ ]5b ed 5b 56 34 12[ ]+ld\.lil de,\(0x123456\) +\s+[0-9a-f]+:[ ]5b 11 56 34 12[ ]+ld\.lil de,0x123456 +\s+[0-9a-f]+:[ ]5b 2a 56 34 12[ ]+ld\.lil hl,\(0x123456\) +\s+[0-9a-f]+:[ ]5b 21 56 34 12[ ]+ld\.lil hl,0x123456 +\s+[0-9a-f]+:[ ]5b dd 2a 56 34 12[ ]+ld\.lil ix,\(0x123456\) +\s+[0-9a-f]+:[ ]5b dd 21 56 34 12[ ]+ld\.lil ix,0x123456 +\s+[0-9a-f]+:[ ]5b fd 2a 56 34 12[ ]+ld\.lil iy,\(0x123456\) +\s+[0-9a-f]+:[ ]5b fd 21 56 34 12[ ]+ld\.lil iy,0x123456 +\s+[0-9a-f]+:[ ]5b ed 7b 56 34 12[ ]+ld\.lil sp,\(0x123456\) +\s+[0-9a-f]+:[ ]5b 31 56 34 12[ ]+ld\.lil sp,0x123456 diff --git a/gas/testsuite/gas/z80/ez80_isuf.s b/gas/testsuite/gas/z80/ez80_isuf.s new file mode 100644 index 0000000..8b20852 --- /dev/null +++ b/gas/testsuite/gas/z80/ez80_isuf.s @@ -0,0 +1,318 @@ + call.s 0x123456 + call.s c,0x123456 + call.s m,0x123456 + call.s nc,0x123456 + call.s nz,0x123456 + call.s p,0x123456 + call.s pe,0x123456 + call.s po,0x123456 + call.s z,0x123456 + jp.s 0x123456 + jp.s c,0x123456 + jp.s m,0x123456 + jp.s nc,0x123456 + jp.s nz,0x123456 + jp.s p,0x123456 + jp.s pe,0x123456 + jp.s po,0x123456 + jp.s z,0x123456 + ld.s (0x123456),a + ld.s (0x123456),bc + ld.s (0x123456),de + ld.s (0x123456),hl + ld.s (0x123456),ix + ld.s (0x123456),iy + ld.s (0x123456),sp + ld.s a,(0x123456) + ld.s bc,(0x123456) + ld.s bc,0x123456 + ld.s de,(0x123456) + ld.s de,0x123456 + ld.s hl,(0x123456) + ld.s hl,0x123456 + ld.s ix,(0x123456) + ld.s ix,0x123456 + ld.s iy,(0x123456) + ld.s iy,0x123456 + ld.s sp,(0x123456) + ld.s sp,0x123456 + + .page + call.l 0x123456 + call.l c,0x123456 + call.l m,0x123456 + call.l nc,0x123456 + call.l nz,0x123456 + call.l p,0x123456 + call.l pe,0x123456 + call.l po,0x123456 + call.l z,0x123456 + jp.l 0x123456 + jp.l c,0x123456 + jp.l m,0x123456 + jp.l nc,0x123456 + jp.l nz,0x123456 + jp.l p,0x123456 + jp.l pe,0x123456 + jp.l po,0x123456 + jp.l z,0x123456 + ld.l (0x123456),a + ld.l (0x123456),bc + ld.l (0x123456),de + ld.l (0x123456),hl + ld.l (0x123456),ix + ld.l (0x123456),iy + ld.l (0x123456),sp + ld.l a,(0x123456) + ld.l bc,(0x123456) + ld.l bc,0x123456 + ld.l de,(0x123456) + ld.l de,0x123456 + ld.l hl,(0x123456) + ld.l hl,0x123456 + ld.l ix,(0x123456) + ld.l ix,0x123456 + ld.l iy,(0x123456) + ld.l iy,0x123456 + ld.l sp,(0x123456) + ld.l sp,0x123456 + + .page + call.is 0x123456 + call.is c,0x123456 + call.is m,0x123456 + call.is nc,0x123456 + call.is nz,0x123456 + call.is p,0x123456 + call.is pe,0x123456 + call.is po,0x123456 + call.is z,0x123456 + jp.is 0x123456 + jp.is c,0x123456 + jp.is m,0x123456 + jp.is nc,0x123456 + jp.is nz,0x123456 + jp.is p,0x123456 + jp.is pe,0x123456 + jp.is po,0x123456 + jp.is z,0x123456 + ld.is (0x123456),a + ld.is (0x123456),bc + ld.is (0x123456),de + ld.is (0x123456),hl + ld.is (0x123456),ix + ld.is (0x123456),iy + ld.is (0x123456),sp + ld.is a,(0x123456) + ld.is bc,(0x123456) + ld.is bc,0x123456 + ld.is de,(0x123456) + ld.is de,0x123456 + ld.is hl,(0x123456) + ld.is hl,0x123456 + ld.is ix,(0x123456) + ld.is ix,0x123456 + ld.is iy,(0x123456) + ld.is iy,0x123456 + ld.is sp,(0x123456) + ld.is sp,0x123456 + + .page + call.il 0x123456 + call.il c,0x123456 + call.il m,0x123456 + call.il nc,0x123456 + call.il nz,0x123456 + call.il p,0x123456 + call.il pe,0x123456 + call.il po,0x123456 + call.il z,0x123456 + jp.il 0x123456 + jp.il c,0x123456 + jp.il m,0x123456 + jp.il nc,0x123456 + jp.il nz,0x123456 + jp.il p,0x123456 + jp.il pe,0x123456 + jp.il po,0x123456 + jp.il z,0x123456 + ld.il (0x123456),a + ld.il (0x123456),bc + ld.il (0x123456),de + ld.il (0x123456),hl + ld.il (0x123456),ix + ld.il (0x123456),iy + ld.il (0x123456),sp + ld.il a,(0x123456) + ld.il bc,(0x123456) + ld.il bc,0x123456 + ld.il de,(0x123456) + ld.il de,0x123456 + ld.il hl,(0x123456) + ld.il hl,0x123456 + ld.il ix,(0x123456) + ld.il ix,0x123456 + ld.il iy,(0x123456) + ld.il iy,0x123456 + ld.il sp,(0x123456) + ld.il sp,0x123456 + + .page + call.sis 0x123456 + call.sis c,0x123456 + call.sis m,0x123456 + call.sis nc,0x123456 + call.sis nz,0x123456 + call.sis p,0x123456 + call.sis pe,0x123456 + call.sis po,0x123456 + call.sis z,0x123456 + jp.sis 0x123456 + jp.sis c,0x123456 + jp.sis m,0x123456 + jp.sis nc,0x123456 + jp.sis nz,0x123456 + jp.sis p,0x123456 + jp.sis pe,0x123456 + jp.sis po,0x123456 + jp.sis z,0x123456 + ld.sis (0x123456),a + ld.sis (0x123456),bc + ld.sis (0x123456),de + ld.sis (0x123456),hl + ld.sis (0x123456),ix + ld.sis (0x123456),iy + ld.sis (0x123456),sp + ld.sis a,(0x123456) + ld.sis bc,(0x123456) + ld.sis bc,0x123456 + ld.sis de,(0x123456) + ld.sis de,0x123456 + ld.sis hl,(0x123456) + ld.sis hl,0x123456 + ld.sis ix,(0x123456) + ld.sis ix,0x123456 + ld.sis iy,(0x123456) + ld.sis iy,0x123456 + ld.sis sp,(0x123456) + ld.sis sp,0x123456 + + .page + call.lis 0x123456 + call.lis c,0x123456 + call.lis m,0x123456 + call.lis nc,0x123456 + call.lis nz,0x123456 + call.lis p,0x123456 + call.lis pe,0x123456 + call.lis po,0x123456 + call.lis z,0x123456 + jp.lis 0x123456 + jp.lis c,0x123456 + jp.lis m,0x123456 + jp.lis nc,0x123456 + jp.lis nz,0x123456 + jp.lis p,0x123456 + jp.lis pe,0x123456 + jp.lis po,0x123456 + jp.lis z,0x123456 + ld.lis (0x123456),a + ld.lis (0x123456),bc + ld.lis (0x123456),de + ld.lis (0x123456),hl + ld.lis (0x123456),ix + ld.lis (0x123456),iy + ld.lis (0x123456),sp + ld.lis a,(0x123456) + ld.lis bc,(0x123456) + ld.lis bc,0x123456 + ld.lis de,(0x123456) + ld.lis de,0x123456 + ld.lis hl,(0x123456) + ld.lis hl,0x123456 + ld.lis ix,(0x123456) + ld.lis ix,0x123456 + ld.lis iy,(0x123456) + ld.lis iy,0x123456 + ld.lis sp,(0x123456) + ld.lis sp,0x123456 + + .page + call.sil 0x123456 + call.sil c,0x123456 + call.sil m,0x123456 + call.sil nc,0x123456 + call.sil nz,0x123456 + call.sil p,0x123456 + call.sil pe,0x123456 + call.sil po,0x123456 + call.sil z,0x123456 + jp.sil 0x123456 + jp.sil c,0x123456 + jp.sil m,0x123456 + jp.sil nc,0x123456 + jp.sil nz,0x123456 + jp.sil p,0x123456 + jp.sil pe,0x123456 + jp.sil po,0x123456 + jp.sil z,0x123456 + ld.sil (0x123456),a + ld.sil (0x123456),bc + ld.sil (0x123456),de + ld.sil (0x123456),hl + ld.sil (0x123456),ix + ld.sil (0x123456),iy + ld.sil (0x123456),sp + ld.sil a,(0x123456) + ld.sil bc,(0x123456) + ld.sil bc,0x123456 + ld.sil de,(0x123456) + ld.sil de,0x123456 + ld.sil hl,(0x123456) + ld.sil hl,0x123456 + ld.sil ix,(0x123456) + ld.sil ix,0x123456 + ld.sil iy,(0x123456) + ld.sil iy,0x123456 + ld.sil sp,(0x123456) + ld.sil sp,0x123456 + + .page + call.lil 0x123456 + call.lil c,0x123456 + call.lil m,0x123456 + call.lil nc,0x123456 + call.lil nz,0x123456 + call.lil p,0x123456 + call.lil pe,0x123456 + call.lil po,0x123456 + call.lil z,0x123456 + jp.lil 0x123456 + jp.lil c,0x123456 + jp.lil m,0x123456 + jp.lil nc,0x123456 + jp.lil nz,0x123456 + jp.lil p,0x123456 + jp.lil pe,0x123456 + jp.lil po,0x123456 + jp.lil z,0x123456 + ld.lil (0x123456),a + ld.lil (0x123456),bc + ld.lil (0x123456),de + ld.lil (0x123456),hl + ld.lil (0x123456),ix + ld.lil (0x123456),iy + ld.lil (0x123456),sp + ld.lil a,(0x123456) + ld.lil bc,(0x123456) + ld.lil bc,0x123456 + ld.lil de,(0x123456) + ld.lil de,0x123456 + ld.lil hl,(0x123456) + ld.lil hl,0x123456 + ld.lil ix,(0x123456) + ld.lil ix,0x123456 + ld.lil iy,(0x123456) + ld.lil iy,0x123456 + ld.lil sp,(0x123456) + ld.lil sp,0x123456 diff --git a/gas/testsuite/gas/z80/ez80_z80_all.d b/gas/testsuite/gas/z80/ez80_z80_all.d new file mode 100644 index 0000000..0cf7f9a --- /dev/null +++ b/gas/testsuite/gas/z80/ez80_z80_all.d @@ -0,0 +1,957 @@ +#as: -ez80 +#objdump: -d +#name: All eZ80 instructions in Z80 cpu mode + +.*:.* + +Disassembly of section .text: + +0+ <.text>: +\s+0:\s+a7\s+and a,a +\s+1:\s+a0\s+and a,b +\s+2:\s+a1\s+and a,c +\s+3:\s+a2\s+and a,d +\s+4:\s+a3\s+and a,e +\s+5:\s+a4\s+and a,h +\s+6:\s+a5\s+and a,l +\s+7:\s+a6\s+and a,\(hl\) +\s+8:\s+e6 aa\s+and a,0xaa +\s+a:\s+dd a6 05\s+and a,\(ix\+5\) +\s+d:\s+fd a6 fb\s+and a,\(iy-5\) +\s+10:\s+bf\s+cp a,a +\s+11:\s+b8\s+cp a,b +\s+12:\s+b9\s+cp a,c +\s+13:\s+ba\s+cp a,d +\s+14:\s+bb\s+cp a,e +\s+15:\s+bc\s+cp a,h +\s+16:\s+bd\s+cp a,l +\s+17:\s+be\s+cp a,\(hl\) +\s+18:\s+fe aa\s+cp a,0xaa +\s+1a:\s+dd be 05\s+cp a,\(ix\+5\) +\s+1d:\s+fd be fb\s+cp a,\(iy-5\) +\s+20:\s+b7\s+or a,a +\s+21:\s+b0\s+or a,b +\s+22:\s+b1\s+or a,c +\s+23:\s+b2\s+or a,d +\s+24:\s+b3\s+or a,e +\s+25:\s+b4\s+or a,h +\s+26:\s+b5\s+or a,l +\s+27:\s+b6\s+or a,\(hl\) +\s+28:\s+f6 aa\s+or a,0xaa +\s+2a:\s+dd b6 05\s+or a,\(ix\+5\) +\s+2d:\s+fd b6 fb\s+or a,\(iy-5\) +\s+30:\s+97\s+sub a,a +\s+31:\s+90\s+sub a,b +\s+32:\s+91\s+sub a,c +\s+33:\s+92\s+sub a,d +\s+34:\s+93\s+sub a,e +\s+35:\s+94\s+sub a,h +\s+36:\s+95\s+sub a,l +\s+37:\s+96\s+sub a,\(hl\) +\s+38:\s+d6 aa\s+sub a,0xaa +\s+3a:\s+dd 96 05\s+sub a,\(ix\+5\) +\s+3d:\s+fd 96 fb\s+sub a,\(iy-5\) +\s+40:\s+ed 3c\s+tst a,a +\s+42:\s+ed 04\s+tst a,b +\s+44:\s+ed 0c\s+tst a,c +\s+46:\s+ed 14\s+tst a,d +\s+48:\s+ed 1c\s+tst a,e +\s+4a:\s+ed 24\s+tst a,h +\s+4c:\s+ed 2c\s+tst a,l +\s+4e:\s+ed 34\s+tst a,\(hl\) +\s+50:\s+ed 64 0f\s+tst a,0x0f +\s+53:\s+af\s+xor a,a +\s+54:\s+a8\s+xor a,b +\s+55:\s+a9\s+xor a,c +\s+56:\s+aa\s+xor a,d +\s+57:\s+ab\s+xor a,e +\s+58:\s+ac\s+xor a,h +\s+59:\s+ad\s+xor a,l +\s+5a:\s+ae\s+xor a,\(hl\) +\s+5b:\s+ee aa\s+xor a,0xaa +\s+5d:\s+dd ae 05\s+xor a,\(ix\+5\) +\s+60:\s+fd ae fb\s+xor a,\(iy-5\) +\s+63:\s+ed 78\s+in a,\(bc\) +\s+65:\s+ed 40\s+in b,\(bc\) +\s+67:\s+ed 48\s+in c,\(bc\) +\s+69:\s+ed 50\s+in d,\(bc\) +\s+6b:\s+ed 58\s+in e,\(bc\) +\s+6d:\s+ed 60\s+in h,\(bc\) +\s+6f:\s+ed 68\s+in l,\(bc\) +\s+71:\s+ed 79\s+out \(bc\),a +\s+73:\s+ed 41\s+out \(bc\),b +\s+75:\s+ed 49\s+out \(bc\),c +\s+77:\s+ed 51\s+out \(bc\),d +\s+79:\s+ed 59\s+out \(bc\),e +\s+7b:\s+ed 61\s+out \(bc\),h +\s+7d:\s+ed 69\s+out \(bc\),l +\s+7f:\s+dd 07 f9\s+ld bc,\(ix-7\) +\s+82:\s+dd 17 f9\s+ld de,\(ix-7\) +\s+85:\s+dd 27 f9\s+ld hl,\(ix-7\) +\s+88:\s+dd 37 f9\s+ld ix,\(ix-7\) +\s+8b:\s+dd 31 f9\s+ld iy,\(ix-7\) +\s+8e:\s+fd 07 26\s+ld bc,\(iy\+38\) +\s+91:\s+fd 17 26\s+ld de,\(iy\+38\) +\s+94:\s+fd 27 26\s+ld hl,\(iy\+38\) +\s+97:\s+fd 31 26\s+ld ix,\(iy\+38\) +\s+9a:\s+fd 37 26\s+ld iy,\(iy\+38\) +\s+9d:\s+dd 0f 7e\s+ld \(ix\+126\),bc +\s+a0:\s+dd 1f 7e\s+ld \(ix\+126\),de +\s+a3:\s+dd 2f 7e\s+ld \(ix\+126\),hl +\s+a6:\s+dd 3f 7e\s+ld \(ix\+126\),ix +\s+a9:\s+dd 3e 7e\s+ld \(ix\+126\),iy +\s+ac:\s+fd 0f 9e\s+ld \(iy-98\),bc +\s+af:\s+fd 1f 9e\s+ld \(iy-98\),de +\s+b2:\s+fd 2f 9e\s+ld \(iy-98\),hl +\s+b5:\s+fd 3e 9e\s+ld \(iy-98\),ix +\s+b8:\s+fd 3f 9e\s+ld \(iy-98\),iy +\s+bb:\s+ed 02 e5\s+lea bc,ix-27 +\s+be:\s+ed 12 e5\s+lea de,ix-27 +\s+c1:\s+ed 22 e5\s+lea hl,ix-27 +\s+c4:\s+ed 32 e5\s+lea ix,ix-27 +\s+c7:\s+ed 55 e5\s+lea iy,ix-27 +\s+ca:\s+ed 03 0c\s+lea bc,iy\+12 +\s+cd:\s+ed 13 0c\s+lea de,iy\+12 +\s+d0:\s+ed 23 0c\s+lea hl,iy\+12 +\s+d3:\s+ed 54 0c\s+lea ix,iy\+12 +\s+d6:\s+ed 33 0c\s+lea iy,iy\+12 +\s+d9:\s+ed 65 7f\s+pea ix\+127 +\s+dc:\s+ed 66 80\s+pea iy-128 +\s+df:\s+ed 38 05\s+in0 a,\(0x05\) +\s+e2:\s+ed 00 05\s+in0 b,\(0x05\) +\s+e5:\s+ed 08 05\s+in0 c,\(0x05\) +\s+e8:\s+ed 10 05\s+in0 d,\(0x05\) +\s+eb:\s+ed 18 05\s+in0 e,\(0x05\) +\s+ee:\s+ed 20 05\s+in0 h,\(0x05\) +\s+f1:\s+ed 28 05\s+in0 l,\(0x05\) +\s+f4:\s+ed 39 05\s+out0 \(0x05\),a +\s+f7:\s+ed 01 05\s+out0 \(0x05\),b +\s+fa:\s+ed 09 05\s+out0 \(0x05\),c +\s+fd:\s+ed 11 05\s+out0 \(0x05\),d +\s+100:\s+ed 19 05\s+out0 \(0x05\),e +\s+103:\s+ed 21 05\s+out0 \(0x05\),h +\s+106:\s+ed 29 05\s+out0 \(0x05\),l +\s+109:\s+ed 4c\s+mlt bc +\s+10b:\s+ed 5c\s+mlt de +\s+10d:\s+ed 6c\s+mlt hl +\s+10f:\s+ed 7c\s+mlt sp +\s+111:\s+ed 74 f0\s+tstio 0xf0 +\s+114:\s+ed 76\s+slp +\s+116:\s+ed 7d\s+stmix +\s+118:\s+ed 7e\s+rsmix +\s+11a:\s+ed 82\s+inim +\s+11c:\s+ed 83\s+otim +\s+11e:\s+ed 84\s+ini2 +\s+120:\s+ed 8a\s+indm +\s+122:\s+ed 8b\s+otdm +\s+124:\s+ed 8c\s+ind2 +\s+126:\s+ed 92\s+inimr +\s+128:\s+ed 93\s+otimr +\s+12a:\s+ed 94\s+oti2r +\s+12c:\s+ed 9a\s+indmr +\s+12e:\s+ed 9b\s+otdmr +\s+130:\s+ed 9c\s+otd2r +\s+132:\s+ed a4\s+ini2 +\s+134:\s+ed ac\s+ind2 +\s+136:\s+ed b4\s+oti2r +\s+138:\s+ed bc\s+otd2r +\s+13a:\s+ed c2\s+inirx +\s+13c:\s+ed c3\s+otirx +\s+13e:\s+ed ca\s+indrx +\s+140:\s+ed cb\s+otdrx +\s+142:\s+dd 7c\s+ld a,ixh +\s+144:\s+dd 44\s+ld b,ixh +\s+146:\s+dd 4c\s+ld c,ixh +\s+148:\s+dd 54\s+ld d,ixh +\s+14a:\s+dd 5c\s+ld e,ixh +\s+14c:\s+dd 64\s+ld ixh,ixh +\s+14e:\s+dd 6c\s+ld ixl,ixh +\s+150:\s+dd 7d\s+ld a,ixl +\s+152:\s+dd 45\s+ld b,ixl +\s+154:\s+dd 4d\s+ld c,ixl +\s+156:\s+dd 55\s+ld d,ixl +\s+158:\s+dd 5d\s+ld e,ixl +\s+15a:\s+dd 65\s+ld ixh,ixl +\s+15c:\s+dd 6d\s+ld ixl,ixl +\s+15e:\s+fd 7c\s+ld a,iyh +\s+160:\s+fd 44\s+ld b,iyh +\s+162:\s+fd 4c\s+ld c,iyh +\s+164:\s+fd 54\s+ld d,iyh +\s+166:\s+fd 5c\s+ld e,iyh +\s+168:\s+fd 64\s+ld iyh,iyh +\s+16a:\s+fd 6c\s+ld iyl,iyh +\s+16c:\s+fd 7d\s+ld a,iyl +\s+16e:\s+fd 45\s+ld b,iyl +\s+170:\s+fd 4d\s+ld c,iyl +\s+172:\s+fd 55\s+ld d,iyl +\s+174:\s+fd 5d\s+ld e,iyl +\s+176:\s+fd 65\s+ld iyh,iyl +\s+178:\s+fd 6d\s+ld iyl,iyl +\s+17a:\s+dd 67\s+ld ixh,a +\s+17c:\s+dd 60\s+ld ixh,b +\s+17e:\s+dd 61\s+ld ixh,c +\s+180:\s+dd 62\s+ld ixh,d +\s+182:\s+dd 63\s+ld ixh,e +\s+184:\s+dd 64\s+ld ixh,ixh +\s+186:\s+dd 65\s+ld ixh,ixl +\s+188:\s+dd 26 19\s+ld ixh,0x19 +\s+18b:\s+dd 6f\s+ld ixl,a +\s+18d:\s+dd 68\s+ld ixl,b +\s+18f:\s+dd 69\s+ld ixl,c +\s+191:\s+dd 6a\s+ld ixl,d +\s+193:\s+dd 6b\s+ld ixl,e +\s+195:\s+dd 6c\s+ld ixl,ixh +\s+197:\s+dd 6d\s+ld ixl,ixl +\s+199:\s+dd 2e 19\s+ld ixl,0x19 +\s+19c:\s+fd 67\s+ld iyh,a +\s+19e:\s+fd 60\s+ld iyh,b +\s+1a0:\s+fd 61\s+ld iyh,c +\s+1a2:\s+fd 62\s+ld iyh,d +\s+1a4:\s+fd 63\s+ld iyh,e +\s+1a6:\s+fd 64\s+ld iyh,iyh +\s+1a8:\s+fd 65\s+ld iyh,iyl +\s+1aa:\s+fd 26 19\s+ld iyh,0x19 +\s+1ad:\s+fd 6f\s+ld iyl,a +\s+1af:\s+fd 68\s+ld iyl,b +\s+1b1:\s+fd 69\s+ld iyl,c +\s+1b3:\s+fd 6a\s+ld iyl,d +\s+1b5:\s+fd 6b\s+ld iyl,e +\s+1b7:\s+fd 6c\s+ld iyl,iyh +\s+1b9:\s+fd 6d\s+ld iyl,iyl +\s+1bb:\s+fd 2e 19\s+ld iyl,0x19 +\s+1be:\s+dd 84\s+add a,ixh +\s+1c0:\s+dd 85\s+add a,ixl +\s+1c2:\s+fd 84\s+add a,iyh +\s+1c4:\s+fd 85\s+add a,iyl +\s+1c6:\s+dd 8c\s+adc a,ixh +\s+1c8:\s+dd 8d\s+adc a,ixl +\s+1ca:\s+fd 8c\s+adc a,iyh +\s+1cc:\s+fd 8d\s+adc a,iyl +\s+1ce:\s+dd bc\s+cp a,ixh +\s+1d0:\s+dd bd\s+cp a,ixl +\s+1d2:\s+fd bc\s+cp a,iyh +\s+1d4:\s+fd bd\s+cp a,iyl +\s+1d6:\s+dd 25\s+dec ixh +\s+1d8:\s+dd 2d\s+dec ixl +\s+1da:\s+fd 25\s+dec iyh +\s+1dc:\s+fd 2d\s+dec iyl +\s+1de:\s+dd 24\s+inc ixh +\s+1e0:\s+dd 2c\s+inc ixl +\s+1e2:\s+fd 24\s+inc iyh +\s+1e4:\s+fd 2c\s+inc iyl +\s+1e6:\s+dd 9c\s+sbc a,ixh +\s+1e8:\s+dd 9d\s+sbc a,ixl +\s+1ea:\s+fd 9c\s+sbc a,iyh +\s+1ec:\s+fd 9d\s+sbc a,iyl +\s+1ee:\s+dd 94\s+sub a,ixh +\s+1f0:\s+dd 95\s+sub a,ixl +\s+1f2:\s+fd 94\s+sub a,iyh +\s+1f4:\s+fd 95\s+sub a,iyl +\s+1f6:\s+dd a4\s+and a,ixh +\s+1f8:\s+dd a5\s+and a,ixl +\s+1fa:\s+fd a4\s+and a,iyh +\s+1fc:\s+fd a5\s+and a,iyl +\s+1fe:\s+dd b4\s+or a,ixh +\s+200:\s+dd b5\s+or a,ixl +\s+202:\s+fd b4\s+or a,iyh +\s+204:\s+fd b5\s+or a,iyl +\s+206:\s+dd ac\s+xor a,ixh +\s+208:\s+dd ad\s+xor a,ixl +\s+20a:\s+fd ac\s+xor a,iyh +\s+20c:\s+fd ad\s+xor a,iyl +\s+20e:\s+8e\s+adc a,\(hl\) +\s+20f:\s+dd 8e 09\s+adc a,\(ix\+9\) +\s+212:\s+fd 8e 09\s+adc a,\(iy\+9\) +\s+215:\s+ce 03\s+adc a,0x03 +\s+217:\s+8f\s+adc a,a +\s+218:\s+88\s+adc a,b +\s+219:\s+89\s+adc a,c +\s+21a:\s+8a\s+adc a,d +\s+21b:\s+8b\s+adc a,e +\s+21c:\s+8c\s+adc a,h +\s+21d:\s+8d\s+adc a,l +\s+21e:\s+ed 4a\s+adc hl,bc +\s+220:\s+ed 5a\s+adc hl,de +\s+222:\s+ed 6a\s+adc hl,hl +\s+224:\s+ed 7a\s+adc hl,sp +\s+226:\s+86\s+add a,\(hl\) +\s+227:\s+dd 86 09\s+add a,\(ix\+9\) +\s+22a:\s+fd 86 09\s+add a,\(iy\+9\) +\s+22d:\s+c6 03\s+add a,0x03 +\s+22f:\s+87\s+add a,a +\s+230:\s+80\s+add a,b +\s+231:\s+81\s+add a,c +\s+232:\s+82\s+add a,d +\s+233:\s+83\s+add a,e +\s+234:\s+84\s+add a,h +\s+235:\s+85\s+add a,l +\s+236:\s+09\s+add hl,bc +\s+237:\s+19\s+add hl,de +\s+238:\s+29\s+add hl,hl +\s+239:\s+39\s+add hl,sp +\s+23a:\s+dd 09\s+add ix,bc +\s+23c:\s+dd 19\s+add ix,de +\s+23e:\s+dd 29\s+add ix,ix +\s+240:\s+dd 39\s+add ix,sp +\s+242:\s+fd 09\s+add iy,bc +\s+244:\s+fd 19\s+add iy,de +\s+246:\s+fd 29\s+add iy,iy +\s+248:\s+fd 39\s+add iy,sp +\s+24a:\s+a6\s+and a,\(hl\) +\s+24b:\s+dd a6 09\s+and a,\(ix\+9\) +\s+24e:\s+fd a6 09\s+and a,\(iy\+9\) +\s+251:\s+e6 03\s+and a,0x03 +\s+253:\s+a7\s+and a,a +\s+254:\s+a0\s+and a,b +\s+255:\s+a1\s+and a,c +\s+256:\s+a2\s+and a,d +\s+257:\s+a3\s+and a,e +\s+258:\s+a4\s+and a,h +\s+259:\s+a5\s+and a,l +\s+25a:\s+cb 46\s+bit 0,\(hl\) +\s+25c:\s+dd cb 09 46\s+bit 0,\(ix\+9\) +\s+260:\s+fd cb 09 46\s+bit 0,\(iy\+9\) +\s+264:\s+cb 47\s+bit 0,a +\s+266:\s+cb 40\s+bit 0,b +\s+268:\s+cb 41\s+bit 0,c +\s+26a:\s+cb 42\s+bit 0,d +\s+26c:\s+cb 43\s+bit 0,e +\s+26e:\s+cb 44\s+bit 0,h +\s+270:\s+cb 45\s+bit 0,l +\s+272:\s+cb 4e\s+bit 1,\(hl\) +\s+274:\s+dd cb 09 4e\s+bit 1,\(ix\+9\) +\s+278:\s+fd cb 09 4e\s+bit 1,\(iy\+9\) +\s+27c:\s+cb 4f\s+bit 1,a +\s+27e:\s+cb 48\s+bit 1,b +\s+280:\s+cb 49\s+bit 1,c +\s+282:\s+cb 4a\s+bit 1,d +\s+284:\s+cb 4b\s+bit 1,e +\s+286:\s+cb 4c\s+bit 1,h +\s+288:\s+cb 4d\s+bit 1,l +\s+28a:\s+cb 56\s+bit 2,\(hl\) +\s+28c:\s+dd cb 09 56\s+bit 2,\(ix\+9\) +\s+290:\s+fd cb 09 56\s+bit 2,\(iy\+9\) +\s+294:\s+cb 57\s+bit 2,a +\s+296:\s+cb 50\s+bit 2,b +\s+298:\s+cb 51\s+bit 2,c +\s+29a:\s+cb 52\s+bit 2,d +\s+29c:\s+cb 53\s+bit 2,e +\s+29e:\s+cb 54\s+bit 2,h +\s+2a0:\s+cb 55\s+bit 2,l +\s+2a2:\s+cb 5e\s+bit 3,\(hl\) +\s+2a4:\s+dd cb 09 5e\s+bit 3,\(ix\+9\) +\s+2a8:\s+fd cb 09 5e\s+bit 3,\(iy\+9\) +\s+2ac:\s+cb 5f\s+bit 3,a +\s+2ae:\s+cb 58\s+bit 3,b +\s+2b0:\s+cb 59\s+bit 3,c +\s+2b2:\s+cb 5a\s+bit 3,d +\s+2b4:\s+cb 5b\s+bit 3,e +\s+2b6:\s+cb 5c\s+bit 3,h +\s+2b8:\s+cb 5d\s+bit 3,l +\s+2ba:\s+cb 66\s+bit 4,\(hl\) +\s+2bc:\s+dd cb 09 66\s+bit 4,\(ix\+9\) +\s+2c0:\s+fd cb 09 66\s+bit 4,\(iy\+9\) +\s+2c4:\s+cb 67\s+bit 4,a +\s+2c6:\s+cb 60\s+bit 4,b +\s+2c8:\s+cb 61\s+bit 4,c +\s+2ca:\s+cb 62\s+bit 4,d +\s+2cc:\s+cb 63\s+bit 4,e +\s+2ce:\s+cb 64\s+bit 4,h +\s+2d0:\s+cb 65\s+bit 4,l +\s+2d2:\s+cb 6e\s+bit 5,\(hl\) +\s+2d4:\s+dd cb 09 6e\s+bit 5,\(ix\+9\) +\s+2d8:\s+fd cb 09 6e\s+bit 5,\(iy\+9\) +\s+2dc:\s+cb 6f\s+bit 5,a +\s+2de:\s+cb 68\s+bit 5,b +\s+2e0:\s+cb 69\s+bit 5,c +\s+2e2:\s+cb 6a\s+bit 5,d +\s+2e4:\s+cb 6b\s+bit 5,e +\s+2e6:\s+cb 6c\s+bit 5,h +\s+2e8:\s+cb 6d\s+bit 5,l +\s+2ea:\s+cb 76\s+bit 6,\(hl\) +\s+2ec:\s+dd cb 09 76\s+bit 6,\(ix\+9\) +\s+2f0:\s+fd cb 09 76\s+bit 6,\(iy\+9\) +\s+2f4:\s+cb 77\s+bit 6,a +\s+2f6:\s+cb 70\s+bit 6,b +\s+2f8:\s+cb 71\s+bit 6,c +\s+2fa:\s+cb 72\s+bit 6,d +\s+2fc:\s+cb 73\s+bit 6,e +\s+2fe:\s+cb 74\s+bit 6,h +\s+300:\s+cb 75\s+bit 6,l +\s+302:\s+cb 7e\s+bit 7,\(hl\) +\s+304:\s+dd cb 09 7e\s+bit 7,\(ix\+9\) +\s+308:\s+fd cb 09 7e\s+bit 7,\(iy\+9\) +\s+30c:\s+cb 7f\s+bit 7,a +\s+30e:\s+cb 78\s+bit 7,b +\s+310:\s+cb 79\s+bit 7,c +\s+312:\s+cb 7a\s+bit 7,d +\s+314:\s+cb 7b\s+bit 7,e +\s+316:\s+cb 7c\s+bit 7,h +\s+318:\s+cb 7d\s+bit 7,l +\s+31a:\s+cd 34 12\s+call 0x1234 +\s+31d:\s+dc 34 12\s+call c,0x1234 +\s+320:\s+fc 34 12\s+call m,0x1234 +\s+323:\s+d4 34 12\s+call nc,0x1234 +\s+326:\s+c4 34 12\s+call nz,0x1234 +\s+329:\s+f4 34 12\s+call p,0x1234 +\s+32c:\s+ec 34 12\s+call pe,0x1234 +\s+32f:\s+e4 34 12\s+call po,0x1234 +\s+332:\s+cc 34 12\s+call z,0x1234 +\s+335:\s+3f\s+ccf +\s+336:\s+be\s+cp a,\(hl\) +\s+337:\s+dd be 09\s+cp a,\(ix\+9\) +\s+33a:\s+fd be 09\s+cp a,\(iy\+9\) +\s+33d:\s+fe 03\s+cp a,0x03 +\s+33f:\s+bf\s+cp a,a +\s+340:\s+b8\s+cp a,b +\s+341:\s+b9\s+cp a,c +\s+342:\s+ba\s+cp a,d +\s+343:\s+bb\s+cp a,e +\s+344:\s+bc\s+cp a,h +\s+345:\s+bd\s+cp a,l +\s+346:\s+ed a9\s+cpd +\s+348:\s+ed b9\s+cpdr +\s+34a:\s+ed a1\s+cpi +\s+34c:\s+ed b1\s+cpir +\s+34e:\s+2f\s+cpl +\s+34f:\s+27\s+daa +\s+350:\s+35\s+dec \(hl\) +\s+351:\s+dd 35 09\s+dec \(ix\+9\) +\s+354:\s+fd 35 09\s+dec \(iy\+9\) +\s+357:\s+3d\s+dec a +\s+358:\s+05\s+dec b +\s+359:\s+0b\s+dec bc +\s+35a:\s+0d\s+dec c +\s+35b:\s+15\s+dec d +\s+35c:\s+1b\s+dec de +\s+35d:\s+1d\s+dec e +\s+35e:\s+25\s+dec h +\s+35f:\s+2b\s+dec hl +\s+360:\s+dd 2b\s+dec ix +\s+362:\s+fd 2b\s+dec iy +\s+364:\s+2d\s+dec l +\s+365:\s+3b\s+dec sp +\s+366:\s+f3\s+di +\s+367:\s+10 05\s+djnz 0x036e +\s+369:\s+fb\s+ei +\s+36a:\s+e3\s+ex \(sp\),hl +\s+36b:\s+dd e3\s+ex \(sp\),ix +\s+36d:\s+fd e3\s+ex \(sp\),iy +\s+36f:\s+08\s+ex af,af' +\s+370:\s+eb\s+ex de,hl +\s+371:\s+d9\s+exx +\s+372:\s+76\s+halt +\s+373:\s+ed 46\s+im 0 +\s+375:\s+ed 56\s+im 1 +\s+377:\s+ed 5e\s+im 2 +\s+379:\s+ed 78\s+in a,\(bc\) +\s+37b:\s+db 03\s+in a,\(0x03\) +\s+37d:\s+ed 40\s+in b,\(bc\) +\s+37f:\s+ed 48\s+in c,\(bc\) +\s+381:\s+ed 50\s+in d,\(bc\) +\s+383:\s+ed 58\s+in e,\(bc\) +\s+385:\s+ed 60\s+in h,\(bc\) +\s+387:\s+ed 68\s+in l,\(bc\) +\s+389:\s+34\s+inc \(hl\) +\s+38a:\s+dd 34 09\s+inc \(ix\+9\) +\s+38d:\s+fd 34 09\s+inc \(iy\+9\) +\s+390:\s+3c\s+inc a +\s+391:\s+04\s+inc b +\s+392:\s+03\s+inc bc +\s+393:\s+0c\s+inc c +\s+394:\s+14\s+inc d +\s+395:\s+13\s+inc de +\s+396:\s+1c\s+inc e +\s+397:\s+24\s+inc h +\s+398:\s+23\s+inc hl +\s+399:\s+dd 23\s+inc ix +\s+39b:\s+fd 23\s+inc iy +\s+39d:\s+2c\s+inc l +\s+39e:\s+33\s+inc sp +\s+39f:\s+ed aa\s+ind +\s+3a1:\s+ed ba\s+indr +\s+3a3:\s+ed a2\s+ini +\s+3a5:\s+ed b2\s+inir +\s+3a7:\s+e9\s+jp \(hl\) +\s+3a8:\s+dd e9\s+jp \(ix\) +\s+3aa:\s+fd e9\s+jp \(iy\) +\s+3ac:\s+c3 34 12\s+jp 0x1234 +\s+3af:\s+da 34 12\s+jp c,0x1234 +\s+3b2:\s+fa 34 12\s+jp m,0x1234 +\s+3b5:\s+d2 34 12\s+jp nc,0x1234 +\s+3b8:\s+c2 34 12\s+jp nz,0x1234 +\s+3bb:\s+f2 34 12\s+jp p,0x1234 +\s+3be:\s+ea 34 12\s+jp pe,0x1234 +\s+3c1:\s+e2 34 12\s+jp po,0x1234 +\s+3c4:\s+ca 34 12\s+jp z,0x1234 +\s+3c7:\s+18 05\s+jr 0x03ce +\s+3c9:\s+38 05\s+jr c,0x03d0 +\s+3cb:\s+30 05\s+jr nc,0x03d2 +\s+3cd:\s+20 05\s+jr nz,0x03d4 +\s+3cf:\s+28 05\s+jr z,0x03d6 +\s+3d1:\s+32 34 12\s+ld \(0x1234\),a +\s+3d4:\s+ed 43 34 12\s+ld \(0x1234\),bc +\s+3d8:\s+ed 53 34 12\s+ld \(0x1234\),de +\s+3dc:\s+22 34 12\s+ld \(0x1234\),hl +\s+3df:\s+dd 22 34 12\s+ld \(0x1234\),ix +\s+3e3:\s+fd 22 34 12\s+ld \(0x1234\),iy +\s+3e7:\s+ed 73 34 12\s+ld \(0x1234\),sp +\s+3eb:\s+02\s+ld \(bc\),a +\s+3ec:\s+12\s+ld \(de\),a +\s+3ed:\s+36 03\s+ld \(hl\),0x03 +\s+3ef:\s+77\s+ld \(hl\),a +\s+3f0:\s+70\s+ld \(hl\),b +\s+3f1:\s+71\s+ld \(hl\),c +\s+3f2:\s+72\s+ld \(hl\),d +\s+3f3:\s+73\s+ld \(hl\),e +\s+3f4:\s+74\s+ld \(hl\),h +\s+3f5:\s+75\s+ld \(hl\),l +\s+3f6:\s+dd 36 09 03\s+ld \(ix\+9\),0x03 +\s+3fa:\s+dd 77 09\s+ld \(ix\+9\),a +\s+3fd:\s+dd 70 09\s+ld \(ix\+9\),b +\s+400:\s+dd 71 09\s+ld \(ix\+9\),c +\s+403:\s+dd 72 09\s+ld \(ix\+9\),d +\s+406:\s+dd 73 09\s+ld \(ix\+9\),e +\s+409:\s+dd 74 09\s+ld \(ix\+9\),h +\s+40c:\s+dd 75 09\s+ld \(ix\+9\),l +\s+40f:\s+fd 36 09 03\s+ld \(iy\+9\),0x03 +\s+413:\s+fd 77 09\s+ld \(iy\+9\),a +\s+416:\s+fd 70 09\s+ld \(iy\+9\),b +\s+419:\s+fd 71 09\s+ld \(iy\+9\),c +\s+41c:\s+fd 72 09\s+ld \(iy\+9\),d +\s+41f:\s+fd 73 09\s+ld \(iy\+9\),e +\s+422:\s+fd 74 09\s+ld \(iy\+9\),h +\s+425:\s+fd 75 09\s+ld \(iy\+9\),l +\s+428:\s+3a 34 12\s+ld a,\(0x1234\) +\s+42b:\s+0a\s+ld a,\(bc\) +\s+42c:\s+1a\s+ld a,\(de\) +\s+42d:\s+7e\s+ld a,\(hl\) +\s+42e:\s+dd 7e 09\s+ld a,\(ix\+9\) +\s+431:\s+fd 7e 09\s+ld a,\(iy\+9\) +\s+434:\s+3e 03\s+ld a,0x03 +\s+436:\s+7f\s+ld a,a +\s+437:\s+78\s+ld a,b +\s+438:\s+79\s+ld a,c +\s+439:\s+7a\s+ld a,d +\s+43a:\s+7b\s+ld a,e +\s+43b:\s+7c\s+ld a,h +\s+43c:\s+ed 57\s+ld a,i +\s+43e:\s+7d\s+ld a,l +\s+43f:\s+ed 5f\s+ld a,r +\s+441:\s+46\s+ld b,\(hl\) +\s+442:\s+dd 46 09\s+ld b,\(ix\+9\) +\s+445:\s+fd 46 09\s+ld b,\(iy\+9\) +\s+448:\s+06 03\s+ld b,0x03 +\s+44a:\s+47\s+ld b,a +\s+44b:\s+00\s+nop +\s+44c:\s+41\s+ld b,c +\s+44d:\s+42\s+ld b,d +\s+44e:\s+43\s+ld b,e +\s+44f:\s+44\s+ld b,h +\s+450:\s+45\s+ld b,l +\s+451:\s+ed 4b 34 12\s+ld bc,\(0x1234\) +\s+455:\s+01 34 12\s+ld bc,0x1234 +\s+458:\s+4e\s+ld c,\(hl\) +\s+459:\s+dd 4e 09\s+ld c,\(ix\+9\) +\s+45c:\s+fd 4e 09\s+ld c,\(iy\+9\) +\s+45f:\s+0e 03\s+ld c,0x03 +\s+461:\s+4f\s+ld c,a +\s+462:\s+48\s+ld c,b +\s+463:\s+00\s+nop +\s+464:\s+4a\s+ld c,d +\s+465:\s+4b\s+ld c,e +\s+466:\s+4c\s+ld c,h +\s+467:\s+4d\s+ld c,l +\s+468:\s+56\s+ld d,\(hl\) +\s+469:\s+dd 56 09\s+ld d,\(ix\+9\) +\s+46c:\s+fd 56 09\s+ld d,\(iy\+9\) +\s+46f:\s+16 03\s+ld d,0x03 +\s+471:\s+57\s+ld d,a +\s+472:\s+50\s+ld d,b +\s+473:\s+51\s+ld d,c +\s+474:\s+00\s+nop +\s+475:\s+53\s+ld d,e +\s+476:\s+54\s+ld d,h +\s+477:\s+55\s+ld d,l +\s+478:\s+ed 5b 34 12\s+ld de,\(0x1234\) +\s+47c:\s+11 34 12\s+ld de,0x1234 +\s+47f:\s+5e\s+ld e,\(hl\) +\s+480:\s+dd 5e 09\s+ld e,\(ix\+9\) +\s+483:\s+fd 5e 09\s+ld e,\(iy\+9\) +\s+486:\s+1e 03\s+ld e,0x03 +\s+488:\s+5f\s+ld e,a +\s+489:\s+58\s+ld e,b +\s+48a:\s+59\s+ld e,c +\s+48b:\s+5a\s+ld e,d +\s+48c:\s+00\s+nop +\s+48d:\s+5c\s+ld e,h +\s+48e:\s+5d\s+ld e,l +\s+48f:\s+66\s+ld h,\(hl\) +\s+490:\s+dd 66 09\s+ld h,\(ix\+9\) +\s+493:\s+fd 66 09\s+ld h,\(iy\+9\) +\s+496:\s+26 03\s+ld h,0x03 +\s+498:\s+67\s+ld h,a +\s+499:\s+60\s+ld h,b +\s+49a:\s+61\s+ld h,c +\s+49b:\s+62\s+ld h,d +\s+49c:\s+63\s+ld h,e +\s+49d:\s+64\s+ld h,h +\s+49e:\s+65\s+ld h,l +\s+49f:\s+2a 34 12\s+ld hl,\(0x1234\) +\s+4a2:\s+21 34 12\s+ld hl,0x1234 +\s+4a5:\s+ed 47\s+ld i,a +\s+4a7:\s+dd 2a 34 12\s+ld ix,\(0x1234\) +\s+4ab:\s+dd 21 34 12\s+ld ix,0x1234 +\s+4af:\s+fd 2a 34 12\s+ld iy,\(0x1234\) +\s+4b3:\s+fd 21 34 12\s+ld iy,0x1234 +\s+4b7:\s+6e\s+ld l,\(hl\) +\s+4b8:\s+dd 6e 09\s+ld l,\(ix\+9\) +\s+4bb:\s+fd 6e 09\s+ld l,\(iy\+9\) +\s+4be:\s+2e 03\s+ld l,0x03 +\s+4c0:\s+6f\s+ld l,a +\s+4c1:\s+68\s+ld l,b +\s+4c2:\s+69\s+ld l,c +\s+4c3:\s+6a\s+ld l,d +\s+4c4:\s+6b\s+ld l,e +\s+4c5:\s+6c\s+ld l,h +\s+4c6:\s+6d\s+ld l,l +\s+4c7:\s+ed 4f\s+ld r,a +\s+4c9:\s+ed 7b 34 12\s+ld sp,\(0x1234\) +\s+4cd:\s+31 34 12\s+ld sp,0x1234 +\s+4d0:\s+f9\s+ld sp,hl +\s+4d1:\s+dd f9\s+ld sp,ix +\s+4d3:\s+fd f9\s+ld sp,iy +\s+4d5:\s+ed a8\s+ldd +\s+4d7:\s+ed b8\s+lddr +\s+4d9:\s+ed a0\s+ldi +\s+4db:\s+ed b0\s+ldir +\s+4dd:\s+ed 44\s+neg +\s+4df:\s+00\s+nop +\s+4e0:\s+b6\s+or a,\(hl\) +\s+4e1:\s+dd b6 09\s+or a,\(ix\+9\) +\s+4e4:\s+fd b6 09\s+or a,\(iy\+9\) +\s+4e7:\s+f6 03\s+or a,0x03 +\s+4e9:\s+b7\s+or a,a +\s+4ea:\s+b0\s+or a,b +\s+4eb:\s+b1\s+or a,c +\s+4ec:\s+b2\s+or a,d +\s+4ed:\s+b3\s+or a,e +\s+4ee:\s+b4\s+or a,h +\s+4ef:\s+b5\s+or a,l +\s+4f0:\s+ed bb\s+otdr +\s+4f2:\s+ed b3\s+otir +\s+4f4:\s+ed 79\s+out \(bc\),a +\s+4f6:\s+ed 41\s+out \(bc\),b +\s+4f8:\s+ed 49\s+out \(bc\),c +\s+4fa:\s+ed 51\s+out \(bc\),d +\s+4fc:\s+ed 59\s+out \(bc\),e +\s+4fe:\s+ed 61\s+out \(bc\),h +\s+500:\s+ed 69\s+out \(bc\),l +\s+502:\s+d3 03\s+out \(0x03\),a +\s+504:\s+ed ab\s+outd +\s+506:\s+ed a3\s+outi +\s+508:\s+f1\s+pop af +\s+509:\s+c1\s+pop bc +\s+50a:\s+d1\s+pop de +\s+50b:\s+e1\s+pop hl +\s+50c:\s+dd e1\s+pop ix +\s+50e:\s+fd e1\s+pop iy +\s+510:\s+f5\s+push af +\s+511:\s+c5\s+push bc +\s+512:\s+d5\s+push de +\s+513:\s+e5\s+push hl +\s+514:\s+dd e5\s+push ix +\s+516:\s+fd e5\s+push iy +\s+518:\s+cb 86\s+res 0,\(hl\) +\s+51a:\s+dd cb 09 86\s+res 0,\(ix\+9\) +\s+51e:\s+fd cb 09 86\s+res 0,\(iy\+9\) +\s+522:\s+cb 87\s+res 0,a +\s+524:\s+cb 80\s+res 0,b +\s+526:\s+cb 81\s+res 0,c +\s+528:\s+cb 82\s+res 0,d +\s+52a:\s+cb 83\s+res 0,e +\s+52c:\s+cb 84\s+res 0,h +\s+52e:\s+cb 85\s+res 0,l +\s+530:\s+cb 8e\s+res 1,\(hl\) +\s+532:\s+dd cb 09 8e\s+res 1,\(ix\+9\) +\s+536:\s+fd cb 09 8e\s+res 1,\(iy\+9\) +\s+53a:\s+cb 8f\s+res 1,a +\s+53c:\s+cb 88\s+res 1,b +\s+53e:\s+cb 89\s+res 1,c +\s+540:\s+cb 8a\s+res 1,d +\s+542:\s+cb 8b\s+res 1,e +\s+544:\s+cb 8c\s+res 1,h +\s+546:\s+cb 8d\s+res 1,l +\s+548:\s+cb 96\s+res 2,\(hl\) +\s+54a:\s+dd cb 09 96\s+res 2,\(ix\+9\) +\s+54e:\s+fd cb 09 96\s+res 2,\(iy\+9\) +\s+552:\s+cb 97\s+res 2,a +\s+554:\s+cb 90\s+res 2,b +\s+556:\s+cb 91\s+res 2,c +\s+558:\s+cb 92\s+res 2,d +\s+55a:\s+cb 93\s+res 2,e +\s+55c:\s+cb 94\s+res 2,h +\s+55e:\s+cb 95\s+res 2,l +\s+560:\s+cb 9e\s+res 3,\(hl\) +\s+562:\s+dd cb 09 9e\s+res 3,\(ix\+9\) +\s+566:\s+fd cb 09 9e\s+res 3,\(iy\+9\) +\s+56a:\s+cb 9f\s+res 3,a +\s+56c:\s+cb 98\s+res 3,b +\s+56e:\s+cb 99\s+res 3,c +\s+570:\s+cb 9a\s+res 3,d +\s+572:\s+cb 9b\s+res 3,e +\s+574:\s+cb 9c\s+res 3,h +\s+576:\s+cb 9d\s+res 3,l +\s+578:\s+cb a6\s+res 4,\(hl\) +\s+57a:\s+dd cb 09 a6\s+res 4,\(ix\+9\) +\s+57e:\s+fd cb 09 a6\s+res 4,\(iy\+9\) +\s+582:\s+cb a7\s+res 4,a +\s+584:\s+cb a0\s+res 4,b +\s+586:\s+cb a1\s+res 4,c +\s+588:\s+cb a2\s+res 4,d +\s+58a:\s+cb a3\s+res 4,e +\s+58c:\s+cb a4\s+res 4,h +\s+58e:\s+cb a5\s+res 4,l +\s+590:\s+cb ae\s+res 5,\(hl\) +\s+592:\s+dd cb 09 ae\s+res 5,\(ix\+9\) +\s+596:\s+fd cb 09 ae\s+res 5,\(iy\+9\) +\s+59a:\s+cb af\s+res 5,a +\s+59c:\s+cb a8\s+res 5,b +\s+59e:\s+cb a9\s+res 5,c +\s+5a0:\s+cb aa\s+res 5,d +\s+5a2:\s+cb ab\s+res 5,e +\s+5a4:\s+cb ac\s+res 5,h +\s+5a6:\s+cb ad\s+res 5,l +\s+5a8:\s+cb b6\s+res 6,\(hl\) +\s+5aa:\s+dd cb 09 b6\s+res 6,\(ix\+9\) +\s+5ae:\s+fd cb 09 b6\s+res 6,\(iy\+9\) +\s+5b2:\s+cb b7\s+res 6,a +\s+5b4:\s+cb b0\s+res 6,b +\s+5b6:\s+cb b1\s+res 6,c +\s+5b8:\s+cb b2\s+res 6,d +\s+5ba:\s+cb b3\s+res 6,e +\s+5bc:\s+cb b4\s+res 6,h +\s+5be:\s+cb b5\s+res 6,l +\s+5c0:\s+cb be\s+res 7,\(hl\) +\s+5c2:\s+dd cb 09 be\s+res 7,\(ix\+9\) +\s+5c6:\s+fd cb 09 be\s+res 7,\(iy\+9\) +\s+5ca:\s+cb bf\s+res 7,a +\s+5cc:\s+cb b8\s+res 7,b +\s+5ce:\s+cb b9\s+res 7,c +\s+5d0:\s+cb ba\s+res 7,d +\s+5d2:\s+cb bb\s+res 7,e +\s+5d4:\s+cb bc\s+res 7,h +\s+5d6:\s+cb bd\s+res 7,l +\s+5d8:\s+c9\s+ret +\s+5d9:\s+d8\s+ret c +\s+5da:\s+f8\s+ret m +\s+5db:\s+d0\s+ret nc +\s+5dc:\s+c0\s+ret nz +\s+5dd:\s+f0\s+ret p +\s+5de:\s+e8\s+ret pe +\s+5df:\s+e0\s+ret po +\s+5e0:\s+c8\s+ret z +\s+5e1:\s+ed 4d\s+reti +\s+5e3:\s+ed 45\s+retn +\s+5e5:\s+cb 16\s+rl \(hl\) +\s+5e7:\s+dd cb 09 16\s+rl \(ix\+9\) +\s+5eb:\s+fd cb 09 16\s+rl \(iy\+9\) +\s+5ef:\s+cb 17\s+rl a +\s+5f1:\s+cb 10\s+rl b +\s+5f3:\s+cb 11\s+rl c +\s+5f5:\s+cb 12\s+rl d +\s+5f7:\s+cb 13\s+rl e +\s+5f9:\s+cb 14\s+rl h +\s+5fb:\s+cb 15\s+rl l +\s+5fd:\s+17\s+rla +\s+5fe:\s+cb 06\s+rlc \(hl\) +\s+600:\s+dd cb 09 06\s+rlc \(ix\+9\) +\s+604:\s+fd cb 09 06\s+rlc \(iy\+9\) +\s+608:\s+cb 07\s+rlc a +\s+60a:\s+cb 00\s+rlc b +\s+60c:\s+cb 01\s+rlc c +\s+60e:\s+cb 02\s+rlc d +\s+610:\s+cb 03\s+rlc e +\s+612:\s+cb 04\s+rlc h +\s+614:\s+cb 05\s+rlc l +\s+616:\s+07\s+rlca +\s+617:\s+ed 6f\s+rld +\s+619:\s+cb 1e\s+rr \(hl\) +\s+61b:\s+dd cb 09 1e\s+rr \(ix\+9\) +\s+61f:\s+fd cb 09 1e\s+rr \(iy\+9\) +\s+623:\s+cb 1f\s+rr a +\s+625:\s+cb 18\s+rr b +\s+627:\s+cb 19\s+rr c +\s+629:\s+cb 1a\s+rr d +\s+62b:\s+cb 1b\s+rr e +\s+62d:\s+cb 1c\s+rr h +\s+62f:\s+cb 1d\s+rr l +\s+631:\s+1f\s+rra +\s+632:\s+cb 0e\s+rrc \(hl\) +\s+634:\s+dd cb 09 0e\s+rrc \(ix\+9\) +\s+638:\s+fd cb 09 0e\s+rrc \(iy\+9\) +\s+63c:\s+cb 0f\s+rrc a +\s+63e:\s+cb 08\s+rrc b +\s+640:\s+cb 09\s+rrc c +\s+642:\s+cb 0a\s+rrc d +\s+644:\s+cb 0b\s+rrc e +\s+646:\s+cb 0c\s+rrc h +\s+648:\s+cb 0d\s+rrc l +\s+64a:\s+0f\s+rrca +\s+64b:\s+ed 67\s+rrd +\s+64d:\s+c7\s+rst 0x00 +\s+64e:\s+cf\s+rst 0x08 +\s+64f:\s+d7\s+rst 0x10 +\s+650:\s+df\s+rst 0x18 +\s+651:\s+e7\s+rst 0x20 +\s+652:\s+ef\s+rst 0x28 +\s+653:\s+f7\s+rst 0x30 +\s+654:\s+ff\s+rst 0x38 +\s+655:\s+9e\s+sbc a,\(hl\) +\s+656:\s+dd 9e 09\s+sbc a,\(ix\+9\) +\s+659:\s+fd 9e 09\s+sbc a,\(iy\+9\) +\s+65c:\s+de 03\s+sbc a,0x03 +\s+65e:\s+9f\s+sbc a,a +\s+65f:\s+98\s+sbc a,b +\s+660:\s+99\s+sbc a,c +\s+661:\s+9a\s+sbc a,d +\s+662:\s+9b\s+sbc a,e +\s+663:\s+9c\s+sbc a,h +\s+664:\s+9d\s+sbc a,l +\s+665:\s+ed 42\s+sbc hl,bc +\s+667:\s+ed 52\s+sbc hl,de +\s+669:\s+ed 62\s+sbc hl,hl +\s+66b:\s+ed 72\s+sbc hl,sp +\s+66d:\s+37\s+scf +\s+66e:\s+cb c6\s+set 0,\(hl\) +\s+670:\s+dd cb 09 c6\s+set 0,\(ix\+9\) +\s+674:\s+fd cb 09 c6\s+set 0,\(iy\+9\) +\s+678:\s+cb c7\s+set 0,a +\s+67a:\s+cb c0\s+set 0,b +\s+67c:\s+cb c1\s+set 0,c +\s+67e:\s+cb c2\s+set 0,d +\s+680:\s+cb c3\s+set 0,e +\s+682:\s+cb c4\s+set 0,h +\s+684:\s+cb c5\s+set 0,l +\s+686:\s+cb ce\s+set 1,\(hl\) +\s+688:\s+dd cb 09 ce\s+set 1,\(ix\+9\) +\s+68c:\s+fd cb 09 ce\s+set 1,\(iy\+9\) +\s+690:\s+cb cf\s+set 1,a +\s+692:\s+cb c8\s+set 1,b +\s+694:\s+cb c9\s+set 1,c +\s+696:\s+cb ca\s+set 1,d +\s+698:\s+cb cb\s+set 1,e +\s+69a:\s+cb cc\s+set 1,h +\s+69c:\s+cb cd\s+set 1,l +\s+69e:\s+cb d6\s+set 2,\(hl\) +\s+6a0:\s+dd cb 09 d6\s+set 2,\(ix\+9\) +\s+6a4:\s+fd cb 09 d6\s+set 2,\(iy\+9\) +\s+6a8:\s+cb d7\s+set 2,a +\s+6aa:\s+cb d0\s+set 2,b +\s+6ac:\s+cb d1\s+set 2,c +\s+6ae:\s+cb d2\s+set 2,d +\s+6b0:\s+cb d3\s+set 2,e +\s+6b2:\s+cb d4\s+set 2,h +\s+6b4:\s+cb d5\s+set 2,l +\s+6b6:\s+cb de\s+set 3,\(hl\) +\s+6b8:\s+dd cb 09 de\s+set 3,\(ix\+9\) +\s+6bc:\s+fd cb 09 de\s+set 3,\(iy\+9\) +\s+6c0:\s+cb df\s+set 3,a +\s+6c2:\s+cb d8\s+set 3,b +\s+6c4:\s+cb d9\s+set 3,c +\s+6c6:\s+cb da\s+set 3,d +\s+6c8:\s+cb db\s+set 3,e +\s+6ca:\s+cb dc\s+set 3,h +\s+6cc:\s+cb dd\s+set 3,l +\s+6ce:\s+cb e6\s+set 4,\(hl\) +\s+6d0:\s+dd cb 09 e6\s+set 4,\(ix\+9\) +\s+6d4:\s+fd cb 09 e6\s+set 4,\(iy\+9\) +\s+6d8:\s+cb e7\s+set 4,a +\s+6da:\s+cb e0\s+set 4,b +\s+6dc:\s+cb e1\s+set 4,c +\s+6de:\s+cb e2\s+set 4,d +\s+6e0:\s+cb e3\s+set 4,e +\s+6e2:\s+cb e4\s+set 4,h +\s+6e4:\s+cb e5\s+set 4,l +\s+6e6:\s+cb ee\s+set 5,\(hl\) +\s+6e8:\s+dd cb 09 ee\s+set 5,\(ix\+9\) +\s+6ec:\s+fd cb 09 ee\s+set 5,\(iy\+9\) +\s+6f0:\s+cb ef\s+set 5,a +\s+6f2:\s+cb e8\s+set 5,b +\s+6f4:\s+cb e9\s+set 5,c +\s+6f6:\s+cb ea\s+set 5,d +\s+6f8:\s+cb eb\s+set 5,e +\s+6fa:\s+cb ec\s+set 5,h +\s+6fc:\s+cb ed\s+set 5,l +\s+6fe:\s+cb f6\s+set 6,\(hl\) +\s+700:\s+dd cb 09 f6\s+set 6,\(ix\+9\) +\s+704:\s+fd cb 09 f6\s+set 6,\(iy\+9\) +\s+708:\s+cb f7\s+set 6,a +\s+70a:\s+cb f0\s+set 6,b +\s+70c:\s+cb f1\s+set 6,c +\s+70e:\s+cb f2\s+set 6,d +\s+710:\s+cb f3\s+set 6,e +\s+712:\s+cb f4\s+set 6,h +\s+714:\s+cb f5\s+set 6,l +\s+716:\s+cb fe\s+set 7,\(hl\) +\s+718:\s+dd cb 09 fe\s+set 7,\(ix\+9\) +\s+71c:\s+fd cb 09 fe\s+set 7,\(iy\+9\) +\s+720:\s+cb ff\s+set 7,a +\s+722:\s+cb f8\s+set 7,b +\s+724:\s+cb f9\s+set 7,c +\s+726:\s+cb fa\s+set 7,d +\s+728:\s+cb fb\s+set 7,e +\s+72a:\s+cb fc\s+set 7,h +\s+72c:\s+cb fd\s+set 7,l +\s+72e:\s+cb 26\s+sla \(hl\) +\s+730:\s+dd cb 09 26\s+sla \(ix\+9\) +\s+734:\s+fd cb 09 26\s+sla \(iy\+9\) +\s+738:\s+cb 27\s+sla a +\s+73a:\s+cb 20\s+sla b +\s+73c:\s+cb 21\s+sla c +\s+73e:\s+cb 22\s+sla d +\s+740:\s+cb 23\s+sla e +\s+742:\s+cb 24\s+sla h +\s+744:\s+cb 25\s+sla l +\s+746:\s+cb 2e\s+sra \(hl\) +\s+748:\s+dd cb 09 2e\s+sra \(ix\+9\) +\s+74c:\s+fd cb 09 2e\s+sra \(iy\+9\) +\s+750:\s+cb 2f\s+sra a +\s+752:\s+cb 28\s+sra b +\s+754:\s+cb 29\s+sra c +\s+756:\s+cb 2a\s+sra d +\s+758:\s+cb 2b\s+sra e +\s+75a:\s+cb 2c\s+sra h +\s+75c:\s+cb 2d\s+sra l +\s+75e:\s+cb 3e\s+srl \(hl\) +\s+760:\s+dd cb 09 3e\s+srl \(ix\+9\) +\s+764:\s+fd cb 09 3e\s+srl \(iy\+9\) +\s+768:\s+cb 3f\s+srl a +\s+76a:\s+cb 38\s+srl b +\s+76c:\s+cb 39\s+srl c +\s+76e:\s+cb 3a\s+srl d +\s+770:\s+cb 3b\s+srl e +\s+772:\s+cb 3c\s+srl h +\s+774:\s+cb 3d\s+srl l +\s+776:\s+96\s+sub a,\(hl\) +\s+777:\s+dd 96 09\s+sub a,\(ix\+9\) +\s+77a:\s+fd 96 09\s+sub a,\(iy\+9\) +\s+77d:\s+d6 03\s+sub a,0x03 +\s+77f:\s+97\s+sub a,a +\s+780:\s+90\s+sub a,b +\s+781:\s+91\s+sub a,c +\s+782:\s+92\s+sub a,d +\s+783:\s+93\s+sub a,e +\s+784:\s+94\s+sub a,h +\s+785:\s+95\s+sub a,l +\s+786:\s+ae\s+xor a,\(hl\) +\s+787:\s+dd ae 09\s+xor a,\(ix\+9\) +\s+78a:\s+fd ae 09\s+xor a,\(iy\+9\) +\s+78d:\s+ee 03\s+xor a,0x03 +\s+78f:\s+af\s+xor a,a +\s+790:\s+a8\s+xor a,b +\s+791:\s+a9\s+xor a,c +\s+792:\s+aa\s+xor a,d +\s+793:\s+ab\s+xor a,e +\s+794:\s+ac\s+xor a,h +\s+795:\s+ad\s+xor a,l diff --git a/gas/testsuite/gas/z80/ez80_z80_all.s b/gas/testsuite/gas/z80/ez80_z80_all.s new file mode 100644 index 0000000..76992c7 --- /dev/null +++ b/gas/testsuite/gas/z80/ez80_z80_all.s @@ -0,0 +1,994 @@ + .text + .org 0 + ;; eZ80 instructions + +; AND A,x group + and a,a + and a,b + and a,c + and a,d + and a,e + and a,h + and a,l + and a,(hl) + and a,0xaa + and a,(ix+5) + and a,(iy-5) +; CP A,x group + cp a,a + cp a,b + cp a,c + cp a,d + cp a,e + cp a,h + cp a,l + cp a,(hl) + cp a,0xaa + cp a,(ix+5) + cp a,(iy-5) + +; OR A,x group + or a,a + or a,b + or a,c + or a,d + or a,e + or a,h + or a,l + or a,(hl) + or a,0xaa + or a,(ix+5) + or a,(iy-5) + +; SUB A,x group + sub a,a + sub a,b + sub a,c + sub a,d + sub a,e + sub a,h + sub a,l + sub a,(hl) + sub a,0xaa + sub a,(ix+5) + sub a,(iy-5) + +; TST A,x group + tst a,a + tst a,b + tst a,c + tst a,d + tst a,e + tst a,h + tst a,l + tst a,(hl) + tst a,0x0f + +; XOR A,x group + xor a,a + xor a,b + xor a,c + xor a,d + xor a,e + xor a,h + xor a,l + xor a,(hl) + xor a,0xaa + xor a,(ix+5) + xor a,(iy-5) + +; IN r,(BC) group (new naming) + in a,(bc) + in b,(bc) + in c,(bc) + in d,(bc) + in e,(bc) + in h,(bc) + in l,(bc) + +; OUT (BC),r group (new naming) + out (bc),a + out (bc),b + out (bc),c + out (bc),d + out (bc),e + out (bc),h + out (bc),l + +; LD rr,(ii+d) group + ld bc,(ix-7) + ld de,(ix-7) + ld hl,(ix-7) + ld ix,(ix-7) + ld iy,(ix-7) + + ld bc,(iy+38) + ld de,(iy+38) + ld hl,(iy+38) + ld ix,(iy+38) + ld iy,(iy+38) + +; LD (ii+d),rr group + ld (ix+126),bc + ld (ix+126),de + ld (ix+126),hl + ld (ix+126),ix + ld (ix+126),iy + ld (iy-98),bc + ld (iy-98),de + ld (iy-98),hl + ld (iy-98),ix + ld (iy-98),iy + +; LEA rr,ii+d group + lea bc,ix-27 + lea de,ix-27 + lea hl,ix-27 + lea ix,ix-27 + lea iy,ix-27 + lea bc,iy+12 + lea de,iy+12 + lea hl,iy+12 + lea ix,iy+12 + lea iy,iy+12 + +; PEA ii+d group + pea ix+127 + pea iy-128 + +; IN0 group + in0 a,(0x5) + in0 b,(0x5) + in0 c,(0x5) + in0 d,(0x5) + in0 e,(0x5) + in0 h,(0x5) + in0 l,(0x5) + +; OUT0 group + out0 (0x5),a + out0 (0x5),b + out0 (0x5),c + out0 (0x5),d + out0 (0x5),e + out0 (0x5),h + out0 (0x5),l + +; MLT group + mlt bc + mlt de + mlt hl + mlt sp + +; TSTIO instruction + tstio 0f0h + +; SLP instruction + slp + +; ADLMIX flag manipulation instructions + stmix + rsmix + +; Additional block I/O instructions + inim + otim + ini2 + indm + otdm + ind2 + inimr + otimr + ini2r + indmr + otdmr + ind2r + outi2 + outd2 + oti2r + otd2r + inirx + otirx + indrx + otdrx + +; Index registers halves + ld a,ixh + ld b,ixh + ld c,ixh + ld d,ixh + ld e,ixh + ld ixh,ixh + ld ixl,ixh + ld a,ixl + ld b,ixl + ld c,ixl + ld d,ixl + ld e,ixl + ld ixh,ixl + ld ixl,ixl + ld a,iyh + ld b,iyh + ld c,iyh + ld d,iyh + ld e,iyh + ld iyh,iyh + ld iyl,iyh + ld a,iyl + ld b,iyl + ld c,iyl + ld d,iyl + ld e,iyl + ld iyh,iyl + ld iyl,iyl + ld ixh,a + ld ixh,b + ld ixh,c + ld ixh,d + ld ixh,e + ld ixh,ixh + ld ixh,ixl + ld ixh,25 + ld ixl,a + ld ixl,b + ld ixl,c + ld ixl,d + ld ixl,e + ld ixl,ixh + ld ixl,ixl + ld ixl,25 + ld iyh,a + ld iyh,b + ld iyh,c + ld iyh,d + ld iyh,e + ld iyh,iyh + ld iyh,iyl + ld iyh,25 + ld iyl,a + ld iyl,b + ld iyl,c + ld iyl,d + ld iyl,e + ld iyl,iyh + ld iyl,iyl + ld iyl,25 + add a,ixh + add a,ixl + add a,iyh + add a,iyl + adc a,ixh + adc a,ixl + adc a,iyh + adc a,iyl + cp a,ixh + cp a,ixl + cp a,iyh + cp a,iyl + dec ixh + dec ixl + dec iyh + dec iyl + inc ixh + inc ixl + inc iyh + inc iyl + sbc a,ixh + sbc a,ixl + sbc a,iyh + sbc a,iyl + sub a,ixh + sub a,ixl + sub a,iyh + sub a,iyl + and a,ixh + and a,ixl + and a,iyh + and a,iyl + or a,ixh + or a,ixl + or a,iyh + or a,iyl + xor a,ixh + xor a,ixl + xor a,iyh + xor a,iyl + +; Standard Z80 instructions + + adc a,(hl) + adc a,(ix+9) + adc a,(iy+9) + adc a,3 + adc a,a + adc a,b + adc a,c + adc a,d + adc a,e + adc a,h + adc a,l + adc hl,bc + adc hl,de + adc hl,hl + adc hl,sp + add a,(hl) + add a,(ix+9) + add a,(iy+9) + add a,3 + add a,a + add a,b + add a,c + add a,d + add a,e + add a,h + add a,l + add hl,bc + add hl,de + add hl,hl + add hl,sp + add ix,bc + add ix,de + add ix,ix + add ix,sp + add iy,bc + add iy,de + add iy,iy + add iy,sp + and (hl) + and (ix+9) + and (iy+9) + and 3 + and a + and b + and c + and d + and e + and h + and l + bit 0,(hl) + bit 0,(ix+9) + bit 0,(iy+9) + bit 0,a + bit 0,b + bit 0,c + bit 0,d + bit 0,e + bit 0,h + bit 0,l + bit 1,(hl) + bit 1,(ix+9) + bit 1,(iy+9) + bit 1,a + bit 1,b + bit 1,c + bit 1,d + bit 1,e + bit 1,h + bit 1,l + bit 2,(hl) + bit 2,(ix+9) + bit 2,(iy+9) + bit 2,a + bit 2,b + bit 2,c + bit 2,d + bit 2,e + bit 2,h + bit 2,l + bit 3,(hl) + bit 3,(ix+9) + bit 3,(iy+9) + bit 3,a + bit 3,b + bit 3,c + bit 3,d + bit 3,e + bit 3,h + bit 3,l + bit 4,(hl) + bit 4,(ix+9) + bit 4,(iy+9) + bit 4,a + bit 4,b + bit 4,c + bit 4,d + bit 4,e + bit 4,h + bit 4,l + bit 5,(hl) + bit 5,(ix+9) + bit 5,(iy+9) + bit 5,a + bit 5,b + bit 5,c + bit 5,d + bit 5,e + bit 5,h + bit 5,l + bit 6,(hl) + bit 6,(ix+9) + bit 6,(iy+9) + bit 6,a + bit 6,b + bit 6,c + bit 6,d + bit 6,e + bit 6,h + bit 6,l + bit 7,(hl) + bit 7,(ix+9) + bit 7,(iy+9) + bit 7,a + bit 7,b + bit 7,c + bit 7,d + bit 7,e + bit 7,h + bit 7,l + call 0x1234 + call c,0x1234 + call m,0x1234 + call nc,0x1234 + call nz,0x1234 + call p,0x1234 + call pe,0x1234 + call po,0x1234 + call z,0x1234 + ccf + cp (hl) + cp (ix+9) + cp (iy+9) + cp 03 + cp a + cp b + cp c + cp d + cp e + cp h + cp l + cpd + cpdr + cpi + cpir + cpl + daa + dec (hl) + dec (ix+9) + dec (iy+9) + dec a + dec b + dec bc + dec c + dec d + dec de + dec e + dec h + dec hl + dec ix + dec iy + dec l + dec sp + di + djnz .+7 + ei + ex (sp),hl + ex (sp),ix + ex (sp),iy + ex af,af' + ex de,hl + exx + halt + im 0 + im 1 + im 2 + in a,(c) + in a,(3) + in b,(c) + in c,(c) + in d,(c) + in e,(c) + in h,(c) + in l,(c) + inc (hl) + inc (ix+9) + inc (iy+9) + inc a + inc b + inc bc + inc c + inc d + inc de + inc e + inc h + inc hl + inc ix + inc iy + inc l + inc sp + ind + indr + ini + inir + jp (hl) + jp (ix) + jp (iy) + jp 0x1234 + jp c,0x1234 + jp m,0x1234 + jp nc,0x1234 + jp nz,0x1234 + jp p,0x1234 + jp pe,0x1234 + jp po,0x1234 + jp z,0x1234 + jr .+7 + jr c,.+7 + jr nc,.+7 + jr nz,.+7 + jr z,.+7 + ld (0x1234),a + ld (0x1234),bc + ld (0x1234),de + ld (0x1234),hl + ld (0x1234),ix + ld (0x1234),iy + ld (0x1234),sp + ld (bc),a + ld (de),a + ld (hl),3 + ld (hl),a + ld (hl),b + ld (hl),c + ld (hl),d + ld (hl),e + ld (hl),h + ld (hl),l + ld (ix+9),3 + ld (ix+9),a + ld (ix+9),b + ld (ix+9),c + ld (ix+9),d + ld (ix+9),e + ld (ix+9),h + ld (ix+9),l + ld (iy+9),3 + ld (iy+9),a + ld (iy+9),b + ld (iy+9),c + ld (iy+9),d + ld (iy+9),e + ld (iy+9),h + ld (iy+9),l + ld a,(0x1234) + ld a,(bc) + ld a,(de) + ld a,(hl) + ld a,(ix+9) + ld a,(iy+9) + ld a,3 + ld a,a + ld a,b + ld a,c + ld a,d + ld a,e + ld a,h + ld a,i + ld a,l + ld a,r + ld b,(hl) + ld b,(ix+9) + ld b,(iy+9) + ld b,3 + ld b,a + nop ;ld b,b + ld b,c + ld b,d + ld b,e + ld b,h + ld b,l + ld bc,(0x1234) + ld bc,0x1234 + ld c,(hl) + ld c,(ix+9) + ld c,(iy+9) + ld c,3 + ld c,a + ld c,b + nop ;ld c,c + ld c,d + ld c,e + ld c,h + ld c,l + ld d,(hl) + ld d,(ix+9) + ld d,(iy+9) + ld d,3 + ld d,a + ld d,b + ld d,c + nop ;ld d,d + ld d,e + ld d,h + ld d,l + ld de,(0x1234) + ld de,0x1234 + ld e,(hl) + ld e,(ix+9) + ld e,(iy+9) + ld e,3 + ld e,a + ld e,b + ld e,c + ld e,d + nop ;ld e,e + ld e,h + ld e,l + ld h,(hl) + ld h,(ix+9) + ld h,(iy+9) + ld h,3 + ld h,a + ld h,b + ld h,c + ld h,d + ld h,e + ld h,h + ld h,l + ld hl,(0x1234) + ld hl,0x1234 + ld i,a + ld ix,(0x1234) + ld ix,0x1234 + ld iy,(0x1234) + ld iy,0x1234 + ld l,(hl) + ld l,(ix+9) + ld l,(iy+9) + ld l,3 + ld l,a + ld l,b + ld l,c + ld l,d + ld l,e + ld l,h + ld l,l + ld r,a + ld sp,(0x1234) + ld sp,0x1234 + ld sp,hl + ld sp,ix + ld sp,iy + ldd + lddr + ldi + ldir + neg + nop + or (hl) + or (ix+9) + or (iy+9) + or 3 + or a + or b + or c + or d + or e + or h + or l + otdr + otir + out (c),a + out (c),b + out (c),c + out (c),d + out (c),e + out (c),h + out (c),l + out (3),a + outd + outi + pop af + pop bc + pop de + pop hl + pop ix + pop iy + push af + push bc + push de + push hl + push ix + push iy + res 0,(hl) + res 0,(ix+9) + res 0,(iy+9) + res 0,a + res 0,b + res 0,c + res 0,d + res 0,e + res 0,h + res 0,l + res 1,(hl) + res 1,(ix+9) + res 1,(iy+9) + res 1,a + res 1,b + res 1,c + res 1,d + res 1,e + res 1,h + res 1,l + res 2,(hl) + res 2,(ix+9) + res 2,(iy+9) + res 2,a + res 2,b + res 2,c + res 2,d + res 2,e + res 2,h + res 2,l + res 3,(hl) + res 3,(ix+9) + res 3,(iy+9) + res 3,a + res 3,b + res 3,c + res 3,d + res 3,e + res 3,h + res 3,l + res 4,(hl) + res 4,(ix+9) + res 4,(iy+9) + res 4,a + res 4,b + res 4,c + res 4,d + res 4,e + res 4,h + res 4,l + res 5,(hl) + res 5,(ix+9) + res 5,(iy+9) + res 5,a + res 5,b + res 5,c + res 5,d + res 5,e + res 5,h + res 5,l + res 6,(hl) + res 6,(ix+9) + res 6,(iy+9) + res 6,a + res 6,b + res 6,c + res 6,d + res 6,e + res 6,h + res 6,l + res 7,(hl) + res 7,(ix+9) + res 7,(iy+9) + res 7,a + res 7,b + res 7,c + res 7,d + res 7,e + res 7,h + res 7,l + ret + ret c + ret m + ret nc + ret nz + ret p + ret pe + ret po + ret z + reti + retn + rl (hl) + rl (ix+9) + rl (iy+9) + rl a + rl b + rl c + rl d + rl e + rl h + rl l + rla + rlc (hl) + rlc (ix+9) + rlc (iy+9) + rlc a + rlc b + rlc c + rlc d + rlc e + rlc h + rlc l + rlca + rld + rr (hl) + rr (ix+9) + rr (iy+9) + rr a + rr b + rr c + rr d + rr e + rr h + rr l + rra + rrc (hl) + rrc (ix+9) + rrc (iy+9) + rrc a + rrc b + rrc c + rrc d + rrc e + rrc h + rrc l + rrca + rrd + rst 0x00 + rst 0x08 + rst 0x10 + rst 0x18 + rst 0x20 + rst 0x28 + rst 0x30 + rst 0x38 + sbc a,(hl) + sbc a,(ix+9) + sbc a,(iy+9) + sbc a,3 + sbc a,a + sbc a,b + sbc a,c + sbc a,d + sbc a,e + sbc a,h + sbc a,l + sbc hl,bc + sbc hl,de + sbc hl,hl + sbc hl,sp + scf + set 0,(hl) + set 0,(ix+9) + set 0,(iy+9) + set 0,a + set 0,b + set 0,c + set 0,d + set 0,e + set 0,h + set 0,l + set 1,(hl) + set 1,(ix+9) + set 1,(iy+9) + set 1,a + set 1,b + set 1,c + set 1,d + set 1,e + set 1,h + set 1,l + set 2,(hl) + set 2,(ix+9) + set 2,(iy+9) + set 2,a + set 2,b + set 2,c + set 2,d + set 2,e + set 2,h + set 2,l + set 3,(hl) + set 3,(ix+9) + set 3,(iy+9) + set 3,a + set 3,b + set 3,c + set 3,d + set 3,e + set 3,h + set 3,l + set 4,(hl) + set 4,(ix+9) + set 4,(iy+9) + set 4,a + set 4,b + set 4,c + set 4,d + set 4,e + set 4,h + set 4,l + set 5,(hl) + set 5,(ix+9) + set 5,(iy+9) + set 5,a + set 5,b + set 5,c + set 5,d + set 5,e + set 5,h + set 5,l + set 6,(hl) + set 6,(ix+9) + set 6,(iy+9) + set 6,a + set 6,b + set 6,c + set 6,d + set 6,e + set 6,h + set 6,l + set 7,(hl) + set 7,(ix+9) + set 7,(iy+9) + set 7,a + set 7,b + set 7,c + set 7,d + set 7,e + set 7,h + set 7,l + sla (hl) + sla (ix+9) + sla (iy+9) + sla a + sla b + sla c + sla d + sla e + sla h + sla l + sra (hl) + sra (ix+9) + sra (iy+9) + sra a + sra b + sra c + sra d + sra e + sra h + sra l + srl (hl) + srl (ix+9) + srl (iy+9) + srl a + srl b + srl c + srl d + srl e + srl h + srl l + sub (hl) + sub (ix+9) + sub (iy+9) + sub 3 + sub a + sub b + sub c + sub d + sub e + sub h + sub l + xor (hl) + xor (ix+9) + xor (iy+9) + xor 3 + xor a + xor b + xor c + xor d + xor e + xor h + xor l diff --git a/gas/testsuite/gas/z80/ez80_z80_suf.d b/gas/testsuite/gas/z80/ez80_z80_suf.d new file mode 100644 index 0000000..af35f0b --- /dev/null +++ b/gas/testsuite/gas/z80/ez80_z80_suf.d @@ -0,0 +1,314 @@ +#as: -ez80 +#objdump: -d +#name: eZ80 instructions with sufficies in Z80 cpu mode +#source: ez80_isuf.s + +.*:.* + +Disassembly of section .text: + +0+ <.text>: +\s+[0-9a-f]+:[ ]40 cd 56 34[ ]+call\.sis 0x3456 +\s+[0-9a-f]+:[ ]40 dc 56 34[ ]+call\.sis c,0x3456 +\s+[0-9a-f]+:[ ]40 fc 56 34[ ]+call\.sis m,0x3456 +\s+[0-9a-f]+:[ ]40 d4 56 34[ ]+call\.sis nc,0x3456 +\s+[0-9a-f]+:[ ]40 c4 56 34[ ]+call\.sis nz,0x3456 +\s+[0-9a-f]+:[ ]40 f4 56 34[ ]+call\.sis p,0x3456 +\s+[0-9a-f]+:[ ]40 ec 56 34[ ]+call\.sis pe,0x3456 +\s+[0-9a-f]+:[ ]40 e4 56 34[ ]+call\.sis po,0x3456 +\s+[0-9a-f]+:[ ]40 cc 56 34[ ]+call\.sis z,0x3456 +\s+[0-9a-f]+:[ ]40 c3 56 34[ ]+jp\.sis 0x3456 +\s+[0-9a-f]+:[ ]40 da 56 34[ ]+jp\.sis c,0x3456 +\s+[0-9a-f]+:[ ]40 fa 56 34[ ]+jp\.sis m,0x3456 +\s+[0-9a-f]+:[ ]40 d2 56 34[ ]+jp\.sis nc,0x3456 +\s+[0-9a-f]+:[ ]40 c2 56 34[ ]+jp\.sis nz,0x3456 +\s+[0-9a-f]+:[ ]40 f2 56 34[ ]+jp\.sis p,0x3456 +\s+[0-9a-f]+:[ ]40 ea 56 34[ ]+jp\.sis pe,0x3456 +\s+[0-9a-f]+:[ ]40 e2 56 34[ ]+jp\.sis po,0x3456 +\s+[0-9a-f]+:[ ]40 ca 56 34[ ]+jp\.sis z,0x3456 +\s+[0-9a-f]+:[ ]40 32 56 34[ ]+ld\.sis \(0x3456\),a +\s+[0-9a-f]+:[ ]40 ed 43 56 34[ ]+ld\.sis \(0x3456\),bc +\s+[0-9a-f]+:[ ]40 ed 53 56 34[ ]+ld\.sis \(0x3456\),de +\s+[0-9a-f]+:[ ]40 22 56 34[ ]+ld\.sis \(0x3456\),hl +\s+[0-9a-f]+:[ ]40 dd 22 56 34[ ]+ld\.sis \(0x3456\),ix +\s+[0-9a-f]+:[ ]40 fd 22 56 34[ ]+ld\.sis \(0x3456\),iy +\s+[0-9a-f]+:[ ]40 ed 73 56 34[ ]+ld\.sis \(0x3456\),sp +\s+[0-9a-f]+:[ ]40 3a 56 34[ ]+ld\.sis a,\(0x3456\) +\s+[0-9a-f]+:[ ]40 ed 4b 56 34[ ]+ld\.sis bc,\(0x3456\) +\s+[0-9a-f]+:[ ]40 01 56 34[ ]+ld\.sis bc,0x3456 +\s+[0-9a-f]+:[ ]40 ed 5b 56 34[ ]+ld\.sis de,\(0x3456\) +\s+[0-9a-f]+:[ ]40 11 56 34[ ]+ld\.sis de,0x3456 +\s+[0-9a-f]+:[ ]40 2a 56 34[ ]+ld\.sis hl,\(0x3456\) +\s+[0-9a-f]+:[ ]40 21 56 34[ ]+ld\.sis hl,0x3456 +\s+[0-9a-f]+:[ ]40 dd 2a 56 34[ ]+ld\.sis ix,\(0x3456\) +\s+[0-9a-f]+:[ ]40 dd 21 56 34[ ]+ld\.sis ix,0x3456 +\s+[0-9a-f]+:[ ]40 fd 2a 56 34[ ]+ld\.sis iy,\(0x3456\) +\s+[0-9a-f]+:[ ]40 fd 21 56 34[ ]+ld\.sis iy,0x3456 +\s+[0-9a-f]+:[ ]40 ed 7b 56 34[ ]+ld\.sis sp,\(0x3456\) +\s+[0-9a-f]+:[ ]40 31 56 34[ ]+ld\.sis sp,0x3456 +\s+[0-9a-f]+:[ ]49 cd 56 34[ ]+call\.lis 0x3456 +\s+[0-9a-f]+:[ ]49 dc 56 34[ ]+call\.lis c,0x3456 +\s+[0-9a-f]+:[ ]49 fc 56 34[ ]+call\.lis m,0x3456 +\s+[0-9a-f]+:[ ]49 d4 56 34[ ]+call\.lis nc,0x3456 +\s+[0-9a-f]+:[ ]49 c4 56 34[ ]+call\.lis nz,0x3456 +\s+[0-9a-f]+:[ ]49 f4 56 34[ ]+call\.lis p,0x3456 +\s+[0-9a-f]+:[ ]49 ec 56 34[ ]+call\.lis pe,0x3456 +\s+[0-9a-f]+:[ ]49 e4 56 34[ ]+call\.lis po,0x3456 +\s+[0-9a-f]+:[ ]49 cc 56 34[ ]+call\.lis z,0x3456 +\s+[0-9a-f]+:[ ]49 c3 56 34[ ]+jp\.lis 0x3456 +\s+[0-9a-f]+:[ ]49 da 56 34[ ]+jp\.lis c,0x3456 +\s+[0-9a-f]+:[ ]49 fa 56 34[ ]+jp\.lis m,0x3456 +\s+[0-9a-f]+:[ ]49 d2 56 34[ ]+jp\.lis nc,0x3456 +\s+[0-9a-f]+:[ ]49 c2 56 34[ ]+jp\.lis nz,0x3456 +\s+[0-9a-f]+:[ ]49 f2 56 34[ ]+jp\.lis p,0x3456 +\s+[0-9a-f]+:[ ]49 ea 56 34[ ]+jp\.lis pe,0x3456 +\s+[0-9a-f]+:[ ]49 e2 56 34[ ]+jp\.lis po,0x3456 +\s+[0-9a-f]+:[ ]49 ca 56 34[ ]+jp\.lis z,0x3456 +\s+[0-9a-f]+:[ ]49 32 56 34[ ]+ld\.lis \(0x3456\),a +\s+[0-9a-f]+:[ ]49 ed 43 56 34[ ]+ld\.lis \(0x3456\),bc +\s+[0-9a-f]+:[ ]49 ed 53 56 34[ ]+ld\.lis \(0x3456\),de +\s+[0-9a-f]+:[ ]49 22 56 34[ ]+ld\.lis \(0x3456\),hl +\s+[0-9a-f]+:[ ]49 dd 22 56 34[ ]+ld\.lis \(0x3456\),ix +\s+[0-9a-f]+:[ ]49 fd 22 56 34[ ]+ld\.lis \(0x3456\),iy +\s+[0-9a-f]+:[ ]49 ed 73 56 34[ ]+ld\.lis \(0x3456\),sp +\s+[0-9a-f]+:[ ]49 3a 56 34[ ]+ld\.lis a,\(0x3456\) +\s+[0-9a-f]+:[ ]49 ed 4b 56 34[ ]+ld\.lis bc,\(0x3456\) +\s+[0-9a-f]+:[ ]49 01 56 34[ ]+ld\.lis bc,0x3456 +\s+[0-9a-f]+:[ ]49 ed 5b 56 34[ ]+ld\.lis de,\(0x3456\) +\s+[0-9a-f]+:[ ]49 11 56 34[ ]+ld\.lis de,0x3456 +\s+[0-9a-f]+:[ ]49 2a 56 34[ ]+ld\.lis hl,\(0x3456\) +\s+[0-9a-f]+:[ ]49 21 56 34[ ]+ld\.lis hl,0x3456 +\s+[0-9a-f]+:[ ]49 dd 2a 56 34[ ]+ld\.lis ix,\(0x3456\) +\s+[0-9a-f]+:[ ]49 dd 21 56 34[ ]+ld\.lis ix,0x3456 +\s+[0-9a-f]+:[ ]49 fd 2a 56 34[ ]+ld\.lis iy,\(0x3456\) +\s+[0-9a-f]+:[ ]49 fd 21 56 34[ ]+ld\.lis iy,0x3456 +\s+[0-9a-f]+:[ ]49 ed 7b 56 34[ ]+ld\.lis sp,\(0x3456\) +\s+[0-9a-f]+:[ ]49 31 56 34[ ]+ld\.lis sp,0x3456 +\s+[0-9a-f]+:[ ]40 cd 56 34[ ]+call\.sis 0x3456 +\s+[0-9a-f]+:[ ]40 dc 56 34[ ]+call\.sis c,0x3456 +\s+[0-9a-f]+:[ ]40 fc 56 34[ ]+call\.sis m,0x3456 +\s+[0-9a-f]+:[ ]40 d4 56 34[ ]+call\.sis nc,0x3456 +\s+[0-9a-f]+:[ ]40 c4 56 34[ ]+call\.sis nz,0x3456 +\s+[0-9a-f]+:[ ]40 f4 56 34[ ]+call\.sis p,0x3456 +\s+[0-9a-f]+:[ ]40 ec 56 34[ ]+call\.sis pe,0x3456 +\s+[0-9a-f]+:[ ]40 e4 56 34[ ]+call\.sis po,0x3456 +\s+[0-9a-f]+:[ ]40 cc 56 34[ ]+call\.sis z,0x3456 +\s+[0-9a-f]+:[ ]40 c3 56 34[ ]+jp\.sis 0x3456 +\s+[0-9a-f]+:[ ]40 da 56 34[ ]+jp\.sis c,0x3456 +\s+[0-9a-f]+:[ ]40 fa 56 34[ ]+jp\.sis m,0x3456 +\s+[0-9a-f]+:[ ]40 d2 56 34[ ]+jp\.sis nc,0x3456 +\s+[0-9a-f]+:[ ]40 c2 56 34[ ]+jp\.sis nz,0x3456 +\s+[0-9a-f]+:[ ]40 f2 56 34[ ]+jp\.sis p,0x3456 +\s+[0-9a-f]+:[ ]40 ea 56 34[ ]+jp\.sis pe,0x3456 +\s+[0-9a-f]+:[ ]40 e2 56 34[ ]+jp\.sis po,0x3456 +\s+[0-9a-f]+:[ ]40 ca 56 34[ ]+jp\.sis z,0x3456 +\s+[0-9a-f]+:[ ]40 32 56 34[ ]+ld\.sis \(0x3456\),a +\s+[0-9a-f]+:[ ]40 ed 43 56 34[ ]+ld\.sis \(0x3456\),bc +\s+[0-9a-f]+:[ ]40 ed 53 56 34[ ]+ld\.sis \(0x3456\),de +\s+[0-9a-f]+:[ ]40 22 56 34[ ]+ld\.sis \(0x3456\),hl +\s+[0-9a-f]+:[ ]40 dd 22 56 34[ ]+ld\.sis \(0x3456\),ix +\s+[0-9a-f]+:[ ]40 fd 22 56 34[ ]+ld\.sis \(0x3456\),iy +\s+[0-9a-f]+:[ ]40 ed 73 56 34[ ]+ld\.sis \(0x3456\),sp +\s+[0-9a-f]+:[ ]40 3a 56 34[ ]+ld\.sis a,\(0x3456\) +\s+[0-9a-f]+:[ ]40 ed 4b 56 34[ ]+ld\.sis bc,\(0x3456\) +\s+[0-9a-f]+:[ ]40 01 56 34[ ]+ld\.sis bc,0x3456 +\s+[0-9a-f]+:[ ]40 ed 5b 56 34[ ]+ld\.sis de,\(0x3456\) +\s+[0-9a-f]+:[ ]40 11 56 34[ ]+ld\.sis de,0x3456 +\s+[0-9a-f]+:[ ]40 2a 56 34[ ]+ld\.sis hl,\(0x3456\) +\s+[0-9a-f]+:[ ]40 21 56 34[ ]+ld\.sis hl,0x3456 +\s+[0-9a-f]+:[ ]40 dd 2a 56 34[ ]+ld\.sis ix,\(0x3456\) +\s+[0-9a-f]+:[ ]40 dd 21 56 34[ ]+ld\.sis ix,0x3456 +\s+[0-9a-f]+:[ ]40 fd 2a 56 34[ ]+ld\.sis iy,\(0x3456\) +\s+[0-9a-f]+:[ ]40 fd 21 56 34[ ]+ld\.sis iy,0x3456 +\s+[0-9a-f]+:[ ]40 ed 7b 56 34[ ]+ld\.sis sp,\(0x3456\) +\s+[0-9a-f]+:[ ]40 31 56 34[ ]+ld\.sis sp,0x3456 +\s+[0-9a-f]+:[ ]52 cd 56 34 12[ ]+call\.sil 0x123456 +\s+[0-9a-f]+:[ ]52 dc 56 34 12[ ]+call\.sil c,0x123456 +\s+[0-9a-f]+:[ ]52 fc 56 34 12[ ]+call\.sil m,0x123456 +\s+[0-9a-f]+:[ ]52 d4 56 34 12[ ]+call\.sil nc,0x123456 +\s+[0-9a-f]+:[ ]52 c4 56 34 12[ ]+call\.sil nz,0x123456 +\s+[0-9a-f]+:[ ]52 f4 56 34 12[ ]+call\.sil p,0x123456 +\s+[0-9a-f]+:[ ]52 ec 56 34 12[ ]+call\.sil pe,0x123456 +\s+[0-9a-f]+:[ ]52 e4 56 34 12[ ]+call\.sil po,0x123456 +\s+[0-9a-f]+:[ ]52 cc 56 34 12[ ]+call\.sil z,0x123456 +\s+[0-9a-f]+:[ ]52 c3 56 34 12[ ]+jp\.sil 0x123456 +\s+[0-9a-f]+:[ ]52 da 56 34 12[ ]+jp\.sil c,0x123456 +\s+[0-9a-f]+:[ ]52 fa 56 34 12[ ]+jp\.sil m,0x123456 +\s+[0-9a-f]+:[ ]52 d2 56 34 12[ ]+jp\.sil nc,0x123456 +\s+[0-9a-f]+:[ ]52 c2 56 34 12[ ]+jp\.sil nz,0x123456 +\s+[0-9a-f]+:[ ]52 f2 56 34 12[ ]+jp\.sil p,0x123456 +\s+[0-9a-f]+:[ ]52 ea 56 34 12[ ]+jp\.sil pe,0x123456 +\s+[0-9a-f]+:[ ]52 e2 56 34 12[ ]+jp\.sil po,0x123456 +\s+[0-9a-f]+:[ ]52 ca 56 34 12[ ]+jp\.sil z,0x123456 +\s+[0-9a-f]+:[ ]52 32 56 34 12[ ]+ld\.sil \(0x123456\),a +\s+[0-9a-f]+:[ ]52 ed 43 56 34 12[ ]+ld\.sil \(0x123456\),bc +\s+[0-9a-f]+:[ ]52 ed 53 56 34 12[ ]+ld\.sil \(0x123456\),de +\s+[0-9a-f]+:[ ]52 22 56 34 12[ ]+ld\.sil \(0x123456\),hl +\s+[0-9a-f]+:[ ]52 dd 22 56 34 12[ ]+ld\.sil \(0x123456\),ix +\s+[0-9a-f]+:[ ]52 fd 22 56 34 12[ ]+ld\.sil \(0x123456\),iy +\s+[0-9a-f]+:[ ]52 ed 73 56 34 12[ ]+ld\.sil \(0x123456\),sp +\s+[0-9a-f]+:[ ]52 3a 56 34 12[ ]+ld\.sil a,\(0x123456\) +\s+[0-9a-f]+:[ ]52 ed 4b 56 34 12[ ]+ld\.sil bc,\(0x123456\) +\s+[0-9a-f]+:[ ]52 01 56 34 12[ ]+ld\.sil bc,0x123456 +\s+[0-9a-f]+:[ ]52 ed 5b 56 34 12[ ]+ld\.sil de,\(0x123456\) +\s+[0-9a-f]+:[ ]52 11 56 34 12[ ]+ld\.sil de,0x123456 +\s+[0-9a-f]+:[ ]52 2a 56 34 12[ ]+ld\.sil hl,\(0x123456\) +\s+[0-9a-f]+:[ ]52 21 56 34 12[ ]+ld\.sil hl,0x123456 +\s+[0-9a-f]+:[ ]52 dd 2a 56 34 12[ ]+ld\.sil ix,\(0x123456\) +\s+[0-9a-f]+:[ ]52 dd 21 56 34 12[ ]+ld\.sil ix,0x123456 +\s+[0-9a-f]+:[ ]52 fd 2a 56 34 12[ ]+ld\.sil iy,\(0x123456\) +\s+[0-9a-f]+:[ ]52 fd 21 56 34 12[ ]+ld\.sil iy,0x123456 +\s+[0-9a-f]+:[ ]52 ed 7b 56 34 12[ ]+ld\.sil sp,\(0x123456\) +\s+[0-9a-f]+:[ ]52 31 56 34 12[ ]+ld\.sil sp,0x123456 +\s+[0-9a-f]+:[ ]40 cd 56 34[ ]+call\.sis 0x3456 +\s+[0-9a-f]+:[ ]40 dc 56 34[ ]+call\.sis c,0x3456 +\s+[0-9a-f]+:[ ]40 fc 56 34[ ]+call\.sis m,0x3456 +\s+[0-9a-f]+:[ ]40 d4 56 34[ ]+call\.sis nc,0x3456 +\s+[0-9a-f]+:[ ]40 c4 56 34[ ]+call\.sis nz,0x3456 +\s+[0-9a-f]+:[ ]40 f4 56 34[ ]+call\.sis p,0x3456 +\s+[0-9a-f]+:[ ]40 ec 56 34[ ]+call\.sis pe,0x3456 +\s+[0-9a-f]+:[ ]40 e4 56 34[ ]+call\.sis po,0x3456 +\s+[0-9a-f]+:[ ]40 cc 56 34[ ]+call\.sis z,0x3456 +\s+[0-9a-f]+:[ ]40 c3 56 34[ ]+jp\.sis 0x3456 +\s+[0-9a-f]+:[ ]40 da 56 34[ ]+jp\.sis c,0x3456 +\s+[0-9a-f]+:[ ]40 fa 56 34[ ]+jp\.sis m,0x3456 +\s+[0-9a-f]+:[ ]40 d2 56 34[ ]+jp\.sis nc,0x3456 +\s+[0-9a-f]+:[ ]40 c2 56 34[ ]+jp\.sis nz,0x3456 +\s+[0-9a-f]+:[ ]40 f2 56 34[ ]+jp\.sis p,0x3456 +\s+[0-9a-f]+:[ ]40 ea 56 34[ ]+jp\.sis pe,0x3456 +\s+[0-9a-f]+:[ ]40 e2 56 34[ ]+jp\.sis po,0x3456 +\s+[0-9a-f]+:[ ]40 ca 56 34[ ]+jp\.sis z,0x3456 +\s+[0-9a-f]+:[ ]40 32 56 34[ ]+ld\.sis \(0x3456\),a +\s+[0-9a-f]+:[ ]40 ed 43 56 34[ ]+ld\.sis \(0x3456\),bc +\s+[0-9a-f]+:[ ]40 ed 53 56 34[ ]+ld\.sis \(0x3456\),de +\s+[0-9a-f]+:[ ]40 22 56 34[ ]+ld\.sis \(0x3456\),hl +\s+[0-9a-f]+:[ ]40 dd 22 56 34[ ]+ld\.sis \(0x3456\),ix +\s+[0-9a-f]+:[ ]40 fd 22 56 34[ ]+ld\.sis \(0x3456\),iy +\s+[0-9a-f]+:[ ]40 ed 73 56 34[ ]+ld\.sis \(0x3456\),sp +\s+[0-9a-f]+:[ ]40 3a 56 34[ ]+ld\.sis a,\(0x3456\) +\s+[0-9a-f]+:[ ]40 ed 4b 56 34[ ]+ld\.sis bc,\(0x3456\) +\s+[0-9a-f]+:[ ]40 01 56 34[ ]+ld\.sis bc,0x3456 +\s+[0-9a-f]+:[ ]40 ed 5b 56 34[ ]+ld\.sis de,\(0x3456\) +\s+[0-9a-f]+:[ ]40 11 56 34[ ]+ld\.sis de,0x3456 +\s+[0-9a-f]+:[ ]40 2a 56 34[ ]+ld\.sis hl,\(0x3456\) +\s+[0-9a-f]+:[ ]40 21 56 34[ ]+ld\.sis hl,0x3456 +\s+[0-9a-f]+:[ ]40 dd 2a 56 34[ ]+ld\.sis ix,\(0x3456\) +\s+[0-9a-f]+:[ ]40 dd 21 56 34[ ]+ld\.sis ix,0x3456 +\s+[0-9a-f]+:[ ]40 fd 2a 56 34[ ]+ld\.sis iy,\(0x3456\) +\s+[0-9a-f]+:[ ]40 fd 21 56 34[ ]+ld\.sis iy,0x3456 +\s+[0-9a-f]+:[ ]40 ed 7b 56 34[ ]+ld\.sis sp,\(0x3456\) +\s+[0-9a-f]+:[ ]40 31 56 34[ ]+ld\.sis sp,0x3456 +\s+[0-9a-f]+:[ ]49 cd 56 34[ ]+call\.lis 0x3456 +\s+[0-9a-f]+:[ ]49 dc 56 34[ ]+call\.lis c,0x3456 +\s+[0-9a-f]+:[ ]49 fc 56 34[ ]+call\.lis m,0x3456 +\s+[0-9a-f]+:[ ]49 d4 56 34[ ]+call\.lis nc,0x3456 +\s+[0-9a-f]+:[ ]49 c4 56 34[ ]+call\.lis nz,0x3456 +\s+[0-9a-f]+:[ ]49 f4 56 34[ ]+call\.lis p,0x3456 +\s+[0-9a-f]+:[ ]49 ec 56 34[ ]+call\.lis pe,0x3456 +\s+[0-9a-f]+:[ ]49 e4 56 34[ ]+call\.lis po,0x3456 +\s+[0-9a-f]+:[ ]49 cc 56 34[ ]+call\.lis z,0x3456 +\s+[0-9a-f]+:[ ]49 c3 56 34[ ]+jp\.lis 0x3456 +\s+[0-9a-f]+:[ ]49 da 56 34[ ]+jp\.lis c,0x3456 +\s+[0-9a-f]+:[ ]49 fa 56 34[ ]+jp\.lis m,0x3456 +\s+[0-9a-f]+:[ ]49 d2 56 34[ ]+jp\.lis nc,0x3456 +\s+[0-9a-f]+:[ ]49 c2 56 34[ ]+jp\.lis nz,0x3456 +\s+[0-9a-f]+:[ ]49 f2 56 34[ ]+jp\.lis p,0x3456 +\s+[0-9a-f]+:[ ]49 ea 56 34[ ]+jp\.lis pe,0x3456 +\s+[0-9a-f]+:[ ]49 e2 56 34[ ]+jp\.lis po,0x3456 +\s+[0-9a-f]+:[ ]49 ca 56 34[ ]+jp\.lis z,0x3456 +\s+[0-9a-f]+:[ ]49 32 56 34[ ]+ld\.lis \(0x3456\),a +\s+[0-9a-f]+:[ ]49 ed 43 56 34[ ]+ld\.lis \(0x3456\),bc +\s+[0-9a-f]+:[ ]49 ed 53 56 34[ ]+ld\.lis \(0x3456\),de +\s+[0-9a-f]+:[ ]49 22 56 34[ ]+ld\.lis \(0x3456\),hl +\s+[0-9a-f]+:[ ]49 dd 22 56 34[ ]+ld\.lis \(0x3456\),ix +\s+[0-9a-f]+:[ ]49 fd 22 56 34[ ]+ld\.lis \(0x3456\),iy +\s+[0-9a-f]+:[ ]49 ed 73 56 34[ ]+ld\.lis \(0x3456\),sp +\s+[0-9a-f]+:[ ]49 3a 56 34[ ]+ld\.lis a,\(0x3456\) +\s+[0-9a-f]+:[ ]49 ed 4b 56 34[ ]+ld\.lis bc,\(0x3456\) +\s+[0-9a-f]+:[ ]49 01 56 34[ ]+ld\.lis bc,0x3456 +\s+[0-9a-f]+:[ ]49 ed 5b 56 34[ ]+ld\.lis de,\(0x3456\) +\s+[0-9a-f]+:[ ]49 11 56 34[ ]+ld\.lis de,0x3456 +\s+[0-9a-f]+:[ ]49 2a 56 34[ ]+ld\.lis hl,\(0x3456\) +\s+[0-9a-f]+:[ ]49 21 56 34[ ]+ld\.lis hl,0x3456 +\s+[0-9a-f]+:[ ]49 dd 2a 56 34[ ]+ld\.lis ix,\(0x3456\) +\s+[0-9a-f]+:[ ]49 dd 21 56 34[ ]+ld\.lis ix,0x3456 +\s+[0-9a-f]+:[ ]49 fd 2a 56 34[ ]+ld\.lis iy,\(0x3456\) +\s+[0-9a-f]+:[ ]49 fd 21 56 34[ ]+ld\.lis iy,0x3456 +\s+[0-9a-f]+:[ ]49 ed 7b 56 34[ ]+ld\.lis sp,\(0x3456\) +\s+[0-9a-f]+:[ ]49 31 56 34[ ]+ld\.lis sp,0x3456 +\s+[0-9a-f]+:[ ]52 cd 56 34 12[ ]+call\.sil 0x123456 +\s+[0-9a-f]+:[ ]52 dc 56 34 12[ ]+call\.sil c,0x123456 +\s+[0-9a-f]+:[ ]52 fc 56 34 12[ ]+call\.sil m,0x123456 +\s+[0-9a-f]+:[ ]52 d4 56 34 12[ ]+call\.sil nc,0x123456 +\s+[0-9a-f]+:[ ]52 c4 56 34 12[ ]+call\.sil nz,0x123456 +\s+[0-9a-f]+:[ ]52 f4 56 34 12[ ]+call\.sil p,0x123456 +\s+[0-9a-f]+:[ ]52 ec 56 34 12[ ]+call\.sil pe,0x123456 +\s+[0-9a-f]+:[ ]52 e4 56 34 12[ ]+call\.sil po,0x123456 +\s+[0-9a-f]+:[ ]52 cc 56 34 12[ ]+call\.sil z,0x123456 +\s+[0-9a-f]+:[ ]52 c3 56 34 12[ ]+jp\.sil 0x123456 +\s+[0-9a-f]+:[ ]52 da 56 34 12[ ]+jp\.sil c,0x123456 +\s+[0-9a-f]+:[ ]52 fa 56 34 12[ ]+jp\.sil m,0x123456 +\s+[0-9a-f]+:[ ]52 d2 56 34 12[ ]+jp\.sil nc,0x123456 +\s+[0-9a-f]+:[ ]52 c2 56 34 12[ ]+jp\.sil nz,0x123456 +\s+[0-9a-f]+:[ ]52 f2 56 34 12[ ]+jp\.sil p,0x123456 +\s+[0-9a-f]+:[ ]52 ea 56 34 12[ ]+jp\.sil pe,0x123456 +\s+[0-9a-f]+:[ ]52 e2 56 34 12[ ]+jp\.sil po,0x123456 +\s+[0-9a-f]+:[ ]52 ca 56 34 12[ ]+jp\.sil z,0x123456 +\s+[0-9a-f]+:[ ]52 32 56 34 12[ ]+ld\.sil \(0x123456\),a +\s+[0-9a-f]+:[ ]52 ed 43 56 34 12[ ]+ld\.sil \(0x123456\),bc +\s+[0-9a-f]+:[ ]52 ed 53 56 34 12[ ]+ld\.sil \(0x123456\),de +\s+[0-9a-f]+:[ ]52 22 56 34 12[ ]+ld\.sil \(0x123456\),hl +\s+[0-9a-f]+:[ ]52 dd 22 56 34 12[ ]+ld\.sil \(0x123456\),ix +\s+[0-9a-f]+:[ ]52 fd 22 56 34 12[ ]+ld\.sil \(0x123456\),iy +\s+[0-9a-f]+:[ ]52 ed 73 56 34 12[ ]+ld\.sil \(0x123456\),sp +\s+[0-9a-f]+:[ ]52 3a 56 34 12[ ]+ld\.sil a,\(0x123456\) +\s+[0-9a-f]+:[ ]52 ed 4b 56 34 12[ ]+ld\.sil bc,\(0x123456\) +\s+[0-9a-f]+:[ ]52 01 56 34 12[ ]+ld\.sil bc,0x123456 +\s+[0-9a-f]+:[ ]52 ed 5b 56 34 12[ ]+ld\.sil de,\(0x123456\) +\s+[0-9a-f]+:[ ]52 11 56 34 12[ ]+ld\.sil de,0x123456 +\s+[0-9a-f]+:[ ]52 2a 56 34 12[ ]+ld\.sil hl,\(0x123456\) +\s+[0-9a-f]+:[ ]52 21 56 34 12[ ]+ld\.sil hl,0x123456 +\s+[0-9a-f]+:[ ]52 dd 2a 56 34 12[ ]+ld\.sil ix,\(0x123456\) +\s+[0-9a-f]+:[ ]52 dd 21 56 34 12[ ]+ld\.sil ix,0x123456 +\s+[0-9a-f]+:[ ]52 fd 2a 56 34 12[ ]+ld\.sil iy,\(0x123456\) +\s+[0-9a-f]+:[ ]52 fd 21 56 34 12[ ]+ld\.sil iy,0x123456 +\s+[0-9a-f]+:[ ]52 ed 7b 56 34 12[ ]+ld\.sil sp,\(0x123456\) +\s+[0-9a-f]+:[ ]52 31 56 34 12[ ]+ld\.sil sp,0x123456 +\s+[0-9a-f]+:[ ]5b cd 56 34 12[ ]+call\.lil 0x123456 +\s+[0-9a-f]+:[ ]5b dc 56 34 12[ ]+call\.lil c,0x123456 +\s+[0-9a-f]+:[ ]5b fc 56 34 12[ ]+call\.lil m,0x123456 +\s+[0-9a-f]+:[ ]5b d4 56 34 12[ ]+call\.lil nc,0x123456 +\s+[0-9a-f]+:[ ]5b c4 56 34 12[ ]+call\.lil nz,0x123456 +\s+[0-9a-f]+:[ ]5b f4 56 34 12[ ]+call\.lil p,0x123456 +\s+[0-9a-f]+:[ ]5b ec 56 34 12[ ]+call\.lil pe,0x123456 +\s+[0-9a-f]+:[ ]5b e4 56 34 12[ ]+call\.lil po,0x123456 +\s+[0-9a-f]+:[ ]5b cc 56 34 12[ ]+call\.lil z,0x123456 +\s+[0-9a-f]+:[ ]5b c3 56 34 12[ ]+jp\.lil 0x123456 +\s+[0-9a-f]+:[ ]5b da 56 34 12[ ]+jp\.lil c,0x123456 +\s+[0-9a-f]+:[ ]5b fa 56 34 12[ ]+jp\.lil m,0x123456 +\s+[0-9a-f]+:[ ]5b d2 56 34 12[ ]+jp\.lil nc,0x123456 +\s+[0-9a-f]+:[ ]5b c2 56 34 12[ ]+jp\.lil nz,0x123456 +\s+[0-9a-f]+:[ ]5b f2 56 34 12[ ]+jp\.lil p,0x123456 +\s+[0-9a-f]+:[ ]5b ea 56 34 12[ ]+jp\.lil pe,0x123456 +\s+[0-9a-f]+:[ ]5b e2 56 34 12[ ]+jp\.lil po,0x123456 +\s+[0-9a-f]+:[ ]5b ca 56 34 12[ ]+jp\.lil z,0x123456 +\s+[0-9a-f]+:[ ]5b 32 56 34 12[ ]+ld\.lil \(0x123456\),a +\s+[0-9a-f]+:[ ]5b ed 43 56 34 12[ ]+ld\.lil \(0x123456\),bc +\s+[0-9a-f]+:[ ]5b ed 53 56 34 12[ ]+ld\.lil \(0x123456\),de +\s+[0-9a-f]+:[ ]5b 22 56 34 12[ ]+ld\.lil \(0x123456\),hl +\s+[0-9a-f]+:[ ]5b dd 22 56 34 12[ ]+ld\.lil \(0x123456\),ix +\s+[0-9a-f]+:[ ]5b fd 22 56 34 12[ ]+ld\.lil \(0x123456\),iy +\s+[0-9a-f]+:[ ]5b ed 73 56 34 12[ ]+ld\.lil \(0x123456\),sp +\s+[0-9a-f]+:[ ]5b 3a 56 34 12[ ]+ld\.lil a,\(0x123456\) +\s+[0-9a-f]+:[ ]5b ed 4b 56 34 12[ ]+ld\.lil bc,\(0x123456\) +\s+[0-9a-f]+:[ ]5b 01 56 34 12[ ]+ld\.lil bc,0x123456 +\s+[0-9a-f]+:[ ]5b ed 5b 56 34 12[ ]+ld\.lil de,\(0x123456\) +\s+[0-9a-f]+:[ ]5b 11 56 34 12[ ]+ld\.lil de,0x123456 +\s+[0-9a-f]+:[ ]5b 2a 56 34 12[ ]+ld\.lil hl,\(0x123456\) +\s+[0-9a-f]+:[ ]5b 21 56 34 12[ ]+ld\.lil hl,0x123456 +\s+[0-9a-f]+:[ ]5b dd 2a 56 34 12[ ]+ld\.lil ix,\(0x123456\) +\s+[0-9a-f]+:[ ]5b dd 21 56 34 12[ ]+ld\.lil ix,0x123456 +\s+[0-9a-f]+:[ ]5b fd 2a 56 34 12[ ]+ld\.lil iy,\(0x123456\) +\s+[0-9a-f]+:[ ]5b fd 21 56 34 12[ ]+ld\.lil iy,0x123456 +\s+[0-9a-f]+:[ ]5b ed 7b 56 34 12[ ]+ld\.lil sp,\(0x123456\) +\s+[0-9a-f]+:[ ]5b 31 56 34 12[ ]+ld\.lil sp,0x123456 diff --git a/gas/testsuite/gas/z80/fp_math48.d b/gas/testsuite/gas/z80/fp_math48.d new file mode 100644 index 0000000..afd8927 --- /dev/null +++ b/gas/testsuite/gas/z80/fp_math48.d @@ -0,0 +1,23 @@ +#name: Math48 floating point numbers +#objdump: -s -j .data +#as: -float=math48 + +.*:[ ]+file format (coff)|(elf32)\-z80 + +Contents of section \.data: + 0000 00000000 00000000 00000000 81000000[ ]+.* + 0010 00008100 00000080 82000000 00008200[ ]+.* + 0020 00000080 84000000 00708400 000000f0[ ]+.* + 0030 87000000 00488700 000000c8 7dcdcccc[ ]+.* + 0040 cc4c7dcd cccccccc 01000000 0000ffff[ ]+.* + 0050 ffffff7f 01000000 0080ffff ffffffff[ ]+.* + 0060 7b951235 fa0e8400 00000020 89000000[ ]+.* + 0070 00347faa aaaaaa2a 87000000 00dc8d00[ ]+.* + 0080 00008077 93000000 6ca29700 0000074b[ ]+.* + 0090 9a000040 45987f37 a9d85b5e 80fa33f3[ ]+.* + 00a0 04357e4c 8ee9cf06 8321a2da 0f4980d2[ ]+.* + 00b0 f7177231 81000000 00008e00 0000401c[ ]+.* + 00c0 9b000020 bc3ea800 10a5d468 b604bfc9[ ]+.* + 00d0 1b0ec3ac c5eb782d d0cdce1b c253def9[ ]+.* + 00e0 78393f01 eb2ba8ad c51df8c9 7bce9740[ ]+.* +#pass diff --git a/gas/testsuite/gas/z80/fp_math48.s b/gas/testsuite/gas/z80/fp_math48.s new file mode 100644 index 0000000..d415697 --- /dev/null +++ b/gas/testsuite/gas/z80/fp_math48.s @@ -0,0 +1,39 @@ + .data + .float 0, -0 + .float 1, -1 + .float 2, -2 + .float 15, -15 + .float 100, -100 + .float 0.1, -0.1 + .float 2.938735877056E-39 ;smallest positive number + .float 1.701411834603E+38 ;largest positive number + .float -2.938735877056E-39 ;largest negative number + .float -1.701411834603E+38 ;smallest negative number +; constants present as binaries in Math48 library + .float 0.0174532925199433 ;7b 95 12 35 fa 0e - PI/180 + .float 10 ;84 00 00 00 00 20 + .float 360 ;89 00 00 00 00 34 + .float 0.333333333333 ;7f aa aa aa aa 2a + .float -110 ;87 00 00 00 00 dc + .float 7920 ;8d 00 00 00 80 77 + .float -332640 ;93 00 00 00 6c a2 + .float 6652800 ;97 00 00 00 07 4b + .float -39916800 ;9a 00 00 40 45 98 + .float 0.4342944819033 ;7f 36 a9 d8 5b 5e - 1/ln(10) + .float 0.7071067811865 ;80 fb 33 f3 04 35 - sqrt(2)/2 + .float 0.1316524975874 ;7e 4a 8e e9 cf 06 - TAN(PI/24) + .float 6.2831853071796 ;82 21 a2 da 0f 49 - 2*PI + .float 0.69314718056 ;80 d2 f7 17 72 31 - ln(2) + .float 1e+0 ;81 00 00 00 00 00 + .float 1e+4 ;8e 00 00 00 40 1c + .float 1e+8 ;9b 00 00 20 bc 3e + .float 1e+12 ;a8 00 10 a5 4d 68 + .float 1e+16 ;b6 04 bf c9 1b 0e + .float 1e+20 ;c3 ac c5 eb 78 2d + .float 1e+24 ;d0 cd ce 1b c2 53 + .float 1e+28 ;de f9 78 39 3f 01 + .float 1e+32 ;eb 2b a8 ad c5 1d + .float 1e+36 ;f8 c9 7b ce 97 40 + .float 1.2 + .float 1337 + .end diff --git a/gas/testsuite/gas/z80/fp_zeda32.d b/gas/testsuite/gas/z80/fp_zeda32.d new file mode 100644 index 0000000..38f568c --- /dev/null +++ b/gas/testsuite/gas/z80/fp_zeda32.d @@ -0,0 +1,13 @@ +#name: Zeda32 floating point numbers +#as: -float=zeda32 +#objdump: -s -j .data + +.*:[ ]+file format (coff)|(elf32)\-z80 + +Contents of section \.data: + 0000 db0f4981 54f82d81 3baa3880 1872317f[ ]+.* + 0010 9b201a7e 789a5481 00000000 00000080[ ]+.* + 0020 00004000 0000c000 00002000 d95b5e7e[ ]+.* + 0030 db0f4982 83f9227d 0000007e 0000007f[ ]+.* + 0040 00000001 00008001 ffff7fff ffffffff[ ]+.* +#pass diff --git a/gas/testsuite/gas/z80/fp_zeda32.s b/gas/testsuite/gas/z80/fp_zeda32.s new file mode 100644 index 0000000..d1c1ba6 --- /dev/null +++ b/gas/testsuite/gas/z80/fp_zeda32.s @@ -0,0 +1,26 @@ + .data + .float 3.14159265358979 ;PI + .float 2.71828182845904 ;e + .float 1.44269504088896 ;log2(e) + .float 0.693147180559945 ;ln(2) + .float 0.301029995663981 ;log10(2) + .float 3.32192809488736 ;log2(10) + .float 0 + .float 1 + .float +inf + .float -inf + .float NaN + .float 0.434294481903252 ;1/ln(10) = log10(e) + .float 6.28318530717958 ;2*PI + .float 0.159154943091896 ;1/(2*PI) + .float 0.25 + .float 0.5 + .float 5.87747175411144E-39 ;min positive number + .float -5.87747175411144E-39 ;max negative number + .float 3.4028235e+38 ;max positive number + .float -3.4028235e+38 ;min negative number + .end + + + + diff --git a/gas/testsuite/gas/z80/r800_extra.d b/gas/testsuite/gas/z80/r800_extra.d new file mode 100644 index 0000000..c700c1f --- /dev/null +++ b/gas/testsuite/gas/z80/r800_extra.d @@ -0,0 +1,16 @@ +#as: -r800 +#objdump: -d +#name: R800 specific instructions + +.*:.* + +Disassembly of section .text: + +0+ <.text>: +\s+[0-9a-f]+:[ ]ed 70[ ]+in f,\(c\) +\s+[0-9a-f]+:[ ]ed c5[ ]+mulub a,b +\s+[0-9a-f]+:[ ]ed cd[ ]+mulub a,c +\s+[0-9a-f]+:[ ]ed d5[ ]+mulub a,d +\s+[0-9a-f]+:[ ]ed dd[ ]+mulub a,e +\s+[0-9a-f]+:[ ]ed c3[ ]+muluw hl,bc +\s+[0-9a-f]+:[ ]ed f3[ ]+muluw hl,sp diff --git a/gas/testsuite/gas/z80/r800_extra.s b/gas/testsuite/gas/z80/r800_extra.s new file mode 100644 index 0000000..e280523 --- /dev/null +++ b/gas/testsuite/gas/z80/r800_extra.s @@ -0,0 +1,13 @@ + .text + .org 0 + ;; R800 extra instructions + + in f,(c) + + mulub a,b + mulub a,c + mulub a,d + mulub a,e + + muluw hl,bc + muluw hl,sp diff --git a/gas/testsuite/gas/z80/r800_ii8.d b/gas/testsuite/gas/z80/r800_ii8.d new file mode 100644 index 0000000..c4b6ca2 --- /dev/null +++ b/gas/testsuite/gas/z80/r800_ii8.d @@ -0,0 +1,110 @@ +#as: -r800 +#objdump: -d +#name: halves of index register for R800 +#source: z80_ii8.s + +.*:.* + +Disassembly of section .text: + +0+ <.text>: +[ ]+0:[ ]+dd 7c[ ]+ld a,ixh +[ ]+2:[ ]+dd 44[ ]+ld b,ixh +[ ]+4:[ ]+dd 4c[ ]+ld c,ixh +[ ]+6:[ ]+dd 54[ ]+ld d,ixh +[ ]+8:[ ]+dd 5c[ ]+ld e,ixh +[ ]+a:[ ]+dd 64[ ]+ld ixh,ixh +[ ]+c:[ ]+dd 6c[ ]+ld ixl,ixh +[ ]+e:[ ]+dd 7d[ ]+ld a,ixl +[ ]+10:[ ]+dd 45[ ]+ld b,ixl +[ ]+12:[ ]+dd 4d[ ]+ld c,ixl +[ ]+14:[ ]+dd 55[ ]+ld d,ixl +[ ]+16:[ ]+dd 5d[ ]+ld e,ixl +[ ]+18:[ ]+dd 65[ ]+ld ixh,ixl +[ ]+1a:[ ]+dd 6d[ ]+ld ixl,ixl +[ ]+1c:[ ]+fd 7c[ ]+ld a,iyh +[ ]+1e:[ ]+fd 44[ ]+ld b,iyh +[ ]+20:[ ]+fd 4c[ ]+ld c,iyh +[ ]+22:[ ]+fd 54[ ]+ld d,iyh +[ ]+24:[ ]+fd 5c[ ]+ld e,iyh +[ ]+26:[ ]+fd 64[ ]+ld iyh,iyh +[ ]+28:[ ]+fd 6c[ ]+ld iyl,iyh +[ ]+2a:[ ]+fd 7d[ ]+ld a,iyl +[ ]+2c:[ ]+fd 45[ ]+ld b,iyl +[ ]+2e:[ ]+fd 4d[ ]+ld c,iyl +[ ]+30:[ ]+fd 55[ ]+ld d,iyl +[ ]+32:[ ]+fd 5d[ ]+ld e,iyl +[ ]+34:[ ]+fd 65[ ]+ld iyh,iyl +[ ]+36:[ ]+fd 6d[ ]+ld iyl,iyl +[ ]+38:[ ]+dd 67[ ]+ld ixh,a +[ ]+3a:[ ]+dd 60[ ]+ld ixh,b +[ ]+3c:[ ]+dd 61[ ]+ld ixh,c +[ ]+3e:[ ]+dd 62[ ]+ld ixh,d +[ ]+40:[ ]+dd 63[ ]+ld ixh,e +[ ]+42:[ ]+dd 64[ ]+ld ixh,ixh +[ ]+44:[ ]+dd 65[ ]+ld ixh,ixl +[ ]+46:[ ]+dd 26 19[ ]+ld ixh,0x19 +[ ]+49:[ ]+dd 6f[ ]+ld ixl,a +[ ]+4b:[ ]+dd 68[ ]+ld ixl,b +[ ]+4d:[ ]+dd 69[ ]+ld ixl,c +[ ]+4f:[ ]+dd 6a[ ]+ld ixl,d +[ ]+51:[ ]+dd 6b[ ]+ld ixl,e +[ ]+53:[ ]+dd 6c[ ]+ld ixl,ixh +[ ]+55:[ ]+dd 6d[ ]+ld ixl,ixl +[ ]+57:[ ]+dd 2e 19[ ]+ld ixl,0x19 +[ ]+5a:[ ]+fd 67[ ]+ld iyh,a +[ ]+5c:[ ]+fd 60[ ]+ld iyh,b +[ ]+5e:[ ]+fd 61[ ]+ld iyh,c +[ ]+60:[ ]+fd 62[ ]+ld iyh,d +[ ]+62:[ ]+fd 63[ ]+ld iyh,e +[ ]+64:[ ]+fd 64[ ]+ld iyh,iyh +[ ]+66:[ ]+fd 65[ ]+ld iyh,iyl +[ ]+68:[ ]+fd 26 19[ ]+ld iyh,0x19 +[ ]+6b:[ ]+fd 6f[ ]+ld iyl,a +[ ]+6d:[ ]+fd 68[ ]+ld iyl,b +[ ]+6f:[ ]+fd 69[ ]+ld iyl,c +[ ]+71:[ ]+fd 6a[ ]+ld iyl,d +[ ]+73:[ ]+fd 6b[ ]+ld iyl,e +[ ]+75:[ ]+fd 6c[ ]+ld iyl,iyh +[ ]+77:[ ]+fd 6d[ ]+ld iyl,iyl +[ ]+79:[ ]+fd 2e 19[ ]+ld iyl,0x19 +[ ]+7c:[ ]+dd 84[ ]+add a,ixh +[ ]+7e:[ ]+dd 85[ ]+add a,ixl +[ ]+80:[ ]+fd 84[ ]+add a,iyh +[ ]+82:[ ]+fd 85[ ]+add a,iyl +[ ]+84:[ ]+dd 8c[ ]+adc a,ixh +[ ]+86:[ ]+dd 8d[ ]+adc a,ixl +[ ]+88:[ ]+fd 8c[ ]+adc a,iyh +[ ]+8a:[ ]+fd 8d[ ]+adc a,iyl +[ ]+8c:[ ]+dd bc[ ]+cp ixh +[ ]+8e:[ ]+dd bd[ ]+cp ixl +[ ]+90:[ ]+fd bc[ ]+cp iyh +[ ]+92:[ ]+fd bd[ ]+cp iyl +[ ]+94:[ ]+dd 25[ ]+dec ixh +[ ]+96:[ ]+dd 2d[ ]+dec ixl +[ ]+98:[ ]+fd 25[ ]+dec iyh +[ ]+9a:[ ]+fd 2d[ ]+dec iyl +[ ]+9c:[ ]+dd 24[ ]+inc ixh +[ ]+9e:[ ]+dd 2c[ ]+inc ixl +[ ]+a0:[ ]+fd 24[ ]+inc iyh +[ ]+a2:[ ]+fd 2c[ ]+inc iyl +[ ]+a4:[ ]+dd 9c[ ]+sbc a,ixh +[ ]+a6:[ ]+dd 9d[ ]+sbc a,ixl +[ ]+a8:[ ]+fd 9c[ ]+sbc a,iyh +[ ]+aa:[ ]+fd 9d[ ]+sbc a,iyl +[ ]+ac:[ ]+dd 94[ ]+sub ixh +[ ]+ae:[ ]+dd 95[ ]+sub ixl +[ ]+b0:[ ]+fd 94[ ]+sub iyh +[ ]+b2:[ ]+fd 95[ ]+sub iyl +[ ]+b4:[ ]+dd a4[ ]+and ixh +[ ]+b6:[ ]+dd a5[ ]+and ixl +[ ]+b8:[ ]+fd a4[ ]+and iyh +[ ]+ba:[ ]+fd a5[ ]+and iyl +[ ]+bc:[ ]+dd b4[ ]+or ixh +[ ]+be:[ ]+dd b5[ ]+or ixl +[ ]+c0:[ ]+fd b4[ ]+or iyh +[ ]+c2:[ ]+fd b5[ ]+or iyl +[ ]+c4:[ ]+dd ac[ ]+xor ixh +[ ]+c6:[ ]+dd ad[ ]+xor ixl +[ ]+c8:[ ]+fd ac[ ]+xor iyh +[ ]+ca:[ ]+fd ad[ ]+xor iyl diff --git a/gas/testsuite/gas/z80/r800_z80_doc.d b/gas/testsuite/gas/z80/r800_z80_doc.d new file mode 100644 index 0000000..3a1d434 --- /dev/null +++ b/gas/testsuite/gas/z80/r800_z80_doc.d @@ -0,0 +1,706 @@ +#as: -r800 +#objdump: -d +#name: All Z80 documented instructions for R800 +#source: z80_doc.s + +.*: .* + +Disassembly of section .text: + +0+ <.text>: +\s+0:\s+8e\s+adc a,\(hl\) +\s+1:\s+dd 8e 09\s+adc a,\(ix\+9\) +\s+4:\s+fd 8e 09\s+adc a,\(iy\+9\) +\s+7:\s+ce 03\s+adc a,0x03 +\s+9:\s+8f\s+adc a,a +\s+a:\s+88\s+adc a,b +\s+b:\s+89\s+adc a,c +\s+c:\s+8a\s+adc a,d +\s+d:\s+8b\s+adc a,e +\s+e:\s+8c\s+adc a,h +\s+f:\s+8d\s+adc a,l +\s+10:\s+ed 4a\s+adc hl,bc +\s+12:\s+ed 5a\s+adc hl,de +\s+14:\s+ed 6a\s+adc hl,hl +\s+16:\s+ed 7a\s+adc hl,sp +\s+18:\s+86\s+add a,\(hl\) +\s+19:\s+dd 86 09\s+add a,\(ix\+9\) +\s+1c:\s+fd 86 09\s+add a,\(iy\+9\) +\s+1f:\s+c6 03\s+add a,0x03 +\s+21:\s+87\s+add a,a +\s+22:\s+80\s+add a,b +\s+23:\s+81\s+add a,c +\s+24:\s+82\s+add a,d +\s+25:\s+83\s+add a,e +\s+26:\s+84\s+add a,h +\s+27:\s+85\s+add a,l +\s+28:\s+09\s+add hl,bc +\s+29:\s+19\s+add hl,de +\s+2a:\s+29\s+add hl,hl +\s+2b:\s+39\s+add hl,sp +\s+2c:\s+dd 09\s+add ix,bc +\s+2e:\s+dd 19\s+add ix,de +\s+30:\s+dd 29\s+add ix,ix +\s+32:\s+dd 39\s+add ix,sp +\s+34:\s+fd 09\s+add iy,bc +\s+36:\s+fd 19\s+add iy,de +\s+38:\s+fd 29\s+add iy,iy +\s+3a:\s+fd 39\s+add iy,sp +\s+3c:\s+a6\s+and \(hl\) +\s+3d:\s+dd a6 09\s+and \(ix\+9\) +\s+40:\s+fd a6 09\s+and \(iy\+9\) +\s+43:\s+e6 03\s+and 0x03 +\s+45:\s+a7\s+and a +\s+46:\s+a0\s+and b +\s+47:\s+a1\s+and c +\s+48:\s+a2\s+and d +\s+49:\s+a3\s+and e +\s+4a:\s+a4\s+and h +\s+4b:\s+a5\s+and l +\s+4c:\s+cb 46\s+bit 0,\(hl\) +\s+4e:\s+dd cb 09 46\s+bit 0,\(ix\+9\) +\s+52:\s+fd cb 09 46\s+bit 0,\(iy\+9\) +\s+56:\s+cb 47\s+bit 0,a +\s+58:\s+cb 40\s+bit 0,b +\s+5a:\s+cb 41\s+bit 0,c +\s+5c:\s+cb 42\s+bit 0,d +\s+5e:\s+cb 43\s+bit 0,e +\s+60:\s+cb 44\s+bit 0,h +\s+62:\s+cb 45\s+bit 0,l +\s+64:\s+cb 4e\s+bit 1,\(hl\) +\s+66:\s+dd cb 09 4e\s+bit 1,\(ix\+9\) +\s+6a:\s+fd cb 09 4e\s+bit 1,\(iy\+9\) +\s+6e:\s+cb 4f\s+bit 1,a +\s+70:\s+cb 48\s+bit 1,b +\s+72:\s+cb 49\s+bit 1,c +\s+74:\s+cb 4a\s+bit 1,d +\s+76:\s+cb 4b\s+bit 1,e +\s+78:\s+cb 4c\s+bit 1,h +\s+7a:\s+cb 4d\s+bit 1,l +\s+7c:\s+cb 56\s+bit 2,\(hl\) +\s+7e:\s+dd cb 09 56\s+bit 2,\(ix\+9\) +\s+82:\s+fd cb 09 56\s+bit 2,\(iy\+9\) +\s+86:\s+cb 57\s+bit 2,a +\s+88:\s+cb 50\s+bit 2,b +\s+8a:\s+cb 51\s+bit 2,c +\s+8c:\s+cb 52\s+bit 2,d +\s+8e:\s+cb 53\s+bit 2,e +\s+90:\s+cb 54\s+bit 2,h +\s+92:\s+cb 55\s+bit 2,l +\s+94:\s+cb 5e\s+bit 3,\(hl\) +\s+96:\s+dd cb 09 5e\s+bit 3,\(ix\+9\) +\s+9a:\s+fd cb 09 5e\s+bit 3,\(iy\+9\) +\s+9e:\s+cb 5f\s+bit 3,a +\s+a0:\s+cb 58\s+bit 3,b +\s+a2:\s+cb 59\s+bit 3,c +\s+a4:\s+cb 5a\s+bit 3,d +\s+a6:\s+cb 5b\s+bit 3,e +\s+a8:\s+cb 5c\s+bit 3,h +\s+aa:\s+cb 5d\s+bit 3,l +\s+ac:\s+cb 66\s+bit 4,\(hl\) +\s+ae:\s+dd cb 09 66\s+bit 4,\(ix\+9\) +\s+b2:\s+fd cb 09 66\s+bit 4,\(iy\+9\) +\s+b6:\s+cb 67\s+bit 4,a +\s+b8:\s+cb 60\s+bit 4,b +\s+ba:\s+cb 61\s+bit 4,c +\s+bc:\s+cb 62\s+bit 4,d +\s+be:\s+cb 63\s+bit 4,e +\s+c0:\s+cb 64\s+bit 4,h +\s+c2:\s+cb 65\s+bit 4,l +\s+c4:\s+cb 6e\s+bit 5,\(hl\) +\s+c6:\s+dd cb 09 6e\s+bit 5,\(ix\+9\) +\s+ca:\s+fd cb 09 6e\s+bit 5,\(iy\+9\) +\s+ce:\s+cb 6f\s+bit 5,a +\s+d0:\s+cb 68\s+bit 5,b +\s+d2:\s+cb 69\s+bit 5,c +\s+d4:\s+cb 6a\s+bit 5,d +\s+d6:\s+cb 6b\s+bit 5,e +\s+d8:\s+cb 6c\s+bit 5,h +\s+da:\s+cb 6d\s+bit 5,l +\s+dc:\s+cb 76\s+bit 6,\(hl\) +\s+de:\s+dd cb 09 76\s+bit 6,\(ix\+9\) +\s+e2:\s+fd cb 09 76\s+bit 6,\(iy\+9\) +\s+e6:\s+cb 77\s+bit 6,a +\s+e8:\s+cb 70\s+bit 6,b +\s+ea:\s+cb 71\s+bit 6,c +\s+ec:\s+cb 72\s+bit 6,d +\s+ee:\s+cb 73\s+bit 6,e +\s+f0:\s+cb 74\s+bit 6,h +\s+f2:\s+cb 75\s+bit 6,l +\s+f4:\s+cb 7e\s+bit 7,\(hl\) +\s+f6:\s+dd cb 09 7e\s+bit 7,\(ix\+9\) +\s+fa:\s+fd cb 09 7e\s+bit 7,\(iy\+9\) +\s+fe:\s+cb 7f\s+bit 7,a +\s+100:\s+cb 78\s+bit 7,b +\s+102:\s+cb 79\s+bit 7,c +\s+104:\s+cb 7a\s+bit 7,d +\s+106:\s+cb 7b\s+bit 7,e +\s+108:\s+cb 7c\s+bit 7,h +\s+10a:\s+cb 7d\s+bit 7,l +\s+10c:\s+cd 34 12\s+call 0x1234 +\s+10f:\s+dc 34 12\s+call c,0x1234 +\s+112:\s+fc 34 12\s+call m,0x1234 +\s+115:\s+d4 34 12\s+call nc,0x1234 +\s+118:\s+c4 34 12\s+call nz,0x1234 +\s+11b:\s+f4 34 12\s+call p,0x1234 +\s+11e:\s+ec 34 12\s+call pe,0x1234 +\s+121:\s+e4 34 12\s+call po,0x1234 +\s+124:\s+cc 34 12\s+call z,0x1234 +\s+127:\s+3f\s+ccf +\s+128:\s+be\s+cp \(hl\) +\s+129:\s+dd be 09\s+cp \(ix\+9\) +\s+12c:\s+fd be 09\s+cp \(iy\+9\) +\s+12f:\s+fe 03\s+cp 0x03 +\s+131:\s+bf\s+cp a +\s+132:\s+b8\s+cp b +\s+133:\s+b9\s+cp c +\s+134:\s+ba\s+cp d +\s+135:\s+bb\s+cp e +\s+136:\s+bc\s+cp h +\s+137:\s+bd\s+cp l +\s+138:\s+ed a9\s+cpd +\s+13a:\s+ed b9\s+cpdr +\s+13c:\s+ed a1\s+cpi +\s+13e:\s+ed b1\s+cpir +\s+140:\s+2f\s+cpl +\s+141:\s+27\s+daa +\s+142:\s+35\s+dec \(hl\) +\s+143:\s+dd 35 09\s+dec \(ix\+9\) +\s+146:\s+fd 35 09\s+dec \(iy\+9\) +\s+149:\s+3d\s+dec a +\s+14a:\s+05\s+dec b +\s+14b:\s+0b\s+dec bc +\s+14c:\s+0d\s+dec c +\s+14d:\s+15\s+dec d +\s+14e:\s+1b\s+dec de +\s+14f:\s+1d\s+dec e +\s+150:\s+25\s+dec h +\s+151:\s+2b\s+dec hl +\s+152:\s+dd 2b\s+dec ix +\s+154:\s+fd 2b\s+dec iy +\s+156:\s+2d\s+dec l +\s+157:\s+3b\s+dec sp +\s+158:\s+f3\s+di +\s+159:\s+10 05\s+djnz 0x0160 +\s+15b:\s+fb\s+ei +\s+15c:\s+e3\s+ex \(sp\),hl +\s+15d:\s+dd e3\s+ex \(sp\),ix +\s+15f:\s+fd e3\s+ex \(sp\),iy +\s+161:\s+08\s+ex af,af' +\s+162:\s+eb\s+ex de,hl +\s+163:\s+d9\s+exx +\s+164:\s+76\s+halt +\s+165:\s+ed 46\s+im 0 +\s+167:\s+ed 56\s+im 1 +\s+169:\s+ed 5e\s+im 2 +\s+16b:\s+ed 78\s+in a,\(c\) +\s+16d:\s+db 03\s+in a,\(0x03\) +\s+16f:\s+ed 40\s+in b,\(c\) +\s+171:\s+ed 48\s+in c,\(c\) +\s+173:\s+ed 50\s+in d,\(c\) +\s+175:\s+ed 58\s+in e,\(c\) +\s+177:\s+ed 60\s+in h,\(c\) +\s+179:\s+ed 68\s+in l,\(c\) +\s+17b:\s+34\s+inc \(hl\) +\s+17c:\s+dd 34 09\s+inc \(ix\+9\) +\s+17f:\s+fd 34 09\s+inc \(iy\+9\) +\s+182:\s+3c\s+inc a +\s+183:\s+04\s+inc b +\s+184:\s+03\s+inc bc +\s+185:\s+0c\s+inc c +\s+186:\s+14\s+inc d +\s+187:\s+13\s+inc de +\s+188:\s+1c\s+inc e +\s+189:\s+24\s+inc h +\s+18a:\s+23\s+inc hl +\s+18b:\s+dd 23\s+inc ix +\s+18d:\s+fd 23\s+inc iy +\s+18f:\s+2c\s+inc l +\s+190:\s+33\s+inc sp +\s+191:\s+ed aa\s+ind +\s+193:\s+ed ba\s+indr +\s+195:\s+ed a2\s+ini +\s+197:\s+ed b2\s+inir +\s+199:\s+e9\s+jp \(hl\) +\s+19a:\s+dd e9\s+jp \(ix\) +\s+19c:\s+fd e9\s+jp \(iy\) +\s+19e:\s+c3 34 12\s+jp 0x1234 +\s+1a1:\s+da 34 12\s+jp c,0x1234 +\s+1a4:\s+fa 34 12\s+jp m,0x1234 +\s+1a7:\s+d2 34 12\s+jp nc,0x1234 +\s+1aa:\s+c2 34 12\s+jp nz,0x1234 +\s+1ad:\s+f2 34 12\s+jp p,0x1234 +\s+1b0:\s+ea 34 12\s+jp pe,0x1234 +\s+1b3:\s+e2 34 12\s+jp po,0x1234 +\s+1b6:\s+ca 34 12\s+jp z,0x1234 +\s+1b9:\s+18 05\s+jr 0x01c0 +\s+1bb:\s+38 05\s+jr c,0x01c2 +\s+1bd:\s+30 05\s+jr nc,0x01c4 +\s+1bf:\s+20 05\s+jr nz,0x01c6 +\s+1c1:\s+28 05\s+jr z,0x01c8 +\s+1c3:\s+32 34 12\s+ld \(0x1234\),a +\s+1c6:\s+ed 43 34 12\s+ld \(0x1234\),bc +\s+1ca:\s+ed 53 34 12\s+ld \(0x1234\),de +\s+1ce:\s+22 34 12\s+ld \(0x1234\),hl +\s+1d1:\s+dd 22 34 12\s+ld \(0x1234\),ix +\s+1d5:\s+fd 22 34 12\s+ld \(0x1234\),iy +\s+1d9:\s+ed 73 34 12\s+ld \(0x1234\),sp +\s+1dd:\s+02\s+ld \(bc\),a +\s+1de:\s+12\s+ld \(de\),a +\s+1df:\s+36 03\s+ld \(hl\),0x03 +\s+1e1:\s+77\s+ld \(hl\),a +\s+1e2:\s+70\s+ld \(hl\),b +\s+1e3:\s+71\s+ld \(hl\),c +\s+1e4:\s+72\s+ld \(hl\),d +\s+1e5:\s+73\s+ld \(hl\),e +\s+1e6:\s+74\s+ld \(hl\),h +\s+1e7:\s+75\s+ld \(hl\),l +\s+1e8:\s+dd 36 09 03\s+ld \(ix\+9\),0x03 +\s+1ec:\s+dd 77 09\s+ld \(ix\+9\),a +\s+1ef:\s+dd 70 09\s+ld \(ix\+9\),b +\s+1f2:\s+dd 71 09\s+ld \(ix\+9\),c +\s+1f5:\s+dd 72 09\s+ld \(ix\+9\),d +\s+1f8:\s+dd 73 09\s+ld \(ix\+9\),e +\s+1fb:\s+dd 74 09\s+ld \(ix\+9\),h +\s+1fe:\s+dd 75 09\s+ld \(ix\+9\),l +\s+201:\s+fd 36 09 03\s+ld \(iy\+9\),0x03 +\s+205:\s+fd 77 09\s+ld \(iy\+9\),a +\s+208:\s+fd 70 09\s+ld \(iy\+9\),b +\s+20b:\s+fd 71 09\s+ld \(iy\+9\),c +\s+20e:\s+fd 72 09\s+ld \(iy\+9\),d +\s+211:\s+fd 73 09\s+ld \(iy\+9\),e +\s+214:\s+fd 74 09\s+ld \(iy\+9\),h +\s+217:\s+fd 75 09\s+ld \(iy\+9\),l +\s+21a:\s+3a 34 12\s+ld a,\(0x1234\) +\s+21d:\s+0a\s+ld a,\(bc\) +\s+21e:\s+1a\s+ld a,\(de\) +\s+21f:\s+7e\s+ld a,\(hl\) +\s+220:\s+dd 7e 09\s+ld a,\(ix\+9\) +\s+223:\s+fd 7e 09\s+ld a,\(iy\+9\) +\s+226:\s+3e 03\s+ld a,0x03 +\s+228:\s+7f\s+ld a,a +\s+229:\s+78\s+ld a,b +\s+22a:\s+79\s+ld a,c +\s+22b:\s+7a\s+ld a,d +\s+22c:\s+7b\s+ld a,e +\s+22d:\s+7c\s+ld a,h +\s+22e:\s+ed 57\s+ld a,i +\s+230:\s+7d\s+ld a,l +\s+231:\s+ed 5f\s+ld a,r +\s+233:\s+46\s+ld b,\(hl\) +\s+234:\s+dd 46 09\s+ld b,\(ix\+9\) +\s+237:\s+fd 46 09\s+ld b,\(iy\+9\) +\s+23a:\s+06 03\s+ld b,0x03 +\s+23c:\s+47\s+ld b,a +\s+23d:\s+40\s+ld b,b +\s+23e:\s+41\s+ld b,c +\s+23f:\s+42\s+ld b,d +\s+240:\s+43\s+ld b,e +\s+241:\s+44\s+ld b,h +\s+242:\s+45\s+ld b,l +\s+243:\s+ed 4b 34 12\s+ld bc,\(0x1234\) +\s+247:\s+01 34 12\s+ld bc,0x1234 +\s+24a:\s+4e\s+ld c,\(hl\) +\s+24b:\s+dd 4e 09\s+ld c,\(ix\+9\) +\s+24e:\s+fd 4e 09\s+ld c,\(iy\+9\) +\s+251:\s+0e 03\s+ld c,0x03 +\s+253:\s+4f\s+ld c,a +\s+254:\s+48\s+ld c,b +\s+255:\s+49\s+ld c,c +\s+256:\s+4a\s+ld c,d +\s+257:\s+4b\s+ld c,e +\s+258:\s+4c\s+ld c,h +\s+259:\s+4d\s+ld c,l +\s+25a:\s+56\s+ld d,\(hl\) +\s+25b:\s+dd 56 09\s+ld d,\(ix\+9\) +\s+25e:\s+fd 56 09\s+ld d,\(iy\+9\) +\s+261:\s+16 03\s+ld d,0x03 +\s+263:\s+57\s+ld d,a +\s+264:\s+50\s+ld d,b +\s+265:\s+51\s+ld d,c +\s+266:\s+52\s+ld d,d +\s+267:\s+53\s+ld d,e +\s+268:\s+54\s+ld d,h +\s+269:\s+55\s+ld d,l +\s+26a:\s+ed 5b 34 12\s+ld de,\(0x1234\) +\s+26e:\s+11 34 12\s+ld de,0x1234 +\s+271:\s+5e\s+ld e,\(hl\) +\s+272:\s+dd 5e 09\s+ld e,\(ix\+9\) +\s+275:\s+fd 5e 09\s+ld e,\(iy\+9\) +\s+278:\s+1e 03\s+ld e,0x03 +\s+27a:\s+5f\s+ld e,a +\s+27b:\s+58\s+ld e,b +\s+27c:\s+59\s+ld e,c +\s+27d:\s+5a\s+ld e,d +\s+27e:\s+5b\s+ld e,e +\s+27f:\s+5c\s+ld e,h +\s+280:\s+5d\s+ld e,l +\s+281:\s+66\s+ld h,\(hl\) +\s+282:\s+dd 66 09\s+ld h,\(ix\+9\) +\s+285:\s+fd 66 09\s+ld h,\(iy\+9\) +\s+288:\s+26 03\s+ld h,0x03 +\s+28a:\s+67\s+ld h,a +\s+28b:\s+60\s+ld h,b +\s+28c:\s+61\s+ld h,c +\s+28d:\s+62\s+ld h,d +\s+28e:\s+63\s+ld h,e +\s+28f:\s+64\s+ld h,h +\s+290:\s+65\s+ld h,l +\s+291:\s+2a 34 12\s+ld hl,\(0x1234\) +\s+294:\s+21 34 12\s+ld hl,0x1234 +\s+297:\s+ed 47\s+ld i,a +\s+299:\s+dd 2a 34 12\s+ld ix,\(0x1234\) +\s+29d:\s+dd 21 34 12\s+ld ix,0x1234 +\s+2a1:\s+fd 2a 34 12\s+ld iy,\(0x1234\) +\s+2a5:\s+fd 21 34 12\s+ld iy,0x1234 +\s+2a9:\s+6e\s+ld l,\(hl\) +\s+2aa:\s+dd 6e 09\s+ld l,\(ix\+9\) +\s+2ad:\s+fd 6e 09\s+ld l,\(iy\+9\) +\s+2b0:\s+2e 03\s+ld l,0x03 +\s+2b2:\s+6f\s+ld l,a +\s+2b3:\s+68\s+ld l,b +\s+2b4:\s+69\s+ld l,c +\s+2b5:\s+6a\s+ld l,d +\s+2b6:\s+6b\s+ld l,e +\s+2b7:\s+6c\s+ld l,h +\s+2b8:\s+6d\s+ld l,l +\s+2b9:\s+ed 4f\s+ld r,a +\s+2bb:\s+ed 7b 34 12\s+ld sp,\(0x1234\) +\s+2bf:\s+31 34 12\s+ld sp,0x1234 +\s+2c2:\s+f9\s+ld sp,hl +\s+2c3:\s+dd f9\s+ld sp,ix +\s+2c5:\s+fd f9\s+ld sp,iy +\s+2c7:\s+ed a8\s+ldd +\s+2c9:\s+ed b8\s+lddr +\s+2cb:\s+ed a0\s+ldi +\s+2cd:\s+ed b0\s+ldir +\s+2cf:\s+ed 44\s+neg +\s+2d1:\s+00\s+nop +\s+2d2:\s+b6\s+or \(hl\) +\s+2d3:\s+dd b6 09\s+or \(ix\+9\) +\s+2d6:\s+fd b6 09\s+or \(iy\+9\) +\s+2d9:\s+f6 03\s+or 0x03 +\s+2db:\s+b7\s+or a +\s+2dc:\s+b0\s+or b +\s+2dd:\s+b1\s+or c +\s+2de:\s+b2\s+or d +\s+2df:\s+b3\s+or e +\s+2e0:\s+b4\s+or h +\s+2e1:\s+b5\s+or l +\s+2e2:\s+ed bb\s+otdr +\s+2e4:\s+ed b3\s+otir +\s+2e6:\s+ed 79\s+out \(c\),a +\s+2e8:\s+ed 41\s+out \(c\),b +\s+2ea:\s+ed 49\s+out \(c\),c +\s+2ec:\s+ed 51\s+out \(c\),d +\s+2ee:\s+ed 59\s+out \(c\),e +\s+2f0:\s+ed 61\s+out \(c\),h +\s+2f2:\s+ed 69\s+out \(c\),l +\s+2f4:\s+d3 03\s+out \(0x03\),a +\s+2f6:\s+ed ab\s+outd +\s+2f8:\s+ed a3\s+outi +\s+2fa:\s+f1\s+pop af +\s+2fb:\s+c1\s+pop bc +\s+2fc:\s+d1\s+pop de +\s+2fd:\s+e1\s+pop hl +\s+2fe:\s+dd e1\s+pop ix +\s+300:\s+fd e1\s+pop iy +\s+302:\s+f5\s+push af +\s+303:\s+c5\s+push bc +\s+304:\s+d5\s+push de +\s+305:\s+e5\s+push hl +\s+306:\s+dd e5\s+push ix +\s+308:\s+fd e5\s+push iy +\s+30a:\s+cb 86\s+res 0,\(hl\) +\s+30c:\s+dd cb 09 86\s+res 0,\(ix\+9\) +\s+310:\s+fd cb 09 86\s+res 0,\(iy\+9\) +\s+314:\s+cb 87\s+res 0,a +\s+316:\s+cb 80\s+res 0,b +\s+318:\s+cb 81\s+res 0,c +\s+31a:\s+cb 82\s+res 0,d +\s+31c:\s+cb 83\s+res 0,e +\s+31e:\s+cb 84\s+res 0,h +\s+320:\s+cb 85\s+res 0,l +\s+322:\s+cb 8e\s+res 1,\(hl\) +\s+324:\s+dd cb 09 8e\s+res 1,\(ix\+9\) +\s+328:\s+fd cb 09 8e\s+res 1,\(iy\+9\) +\s+32c:\s+cb 8f\s+res 1,a +\s+32e:\s+cb 88\s+res 1,b +\s+330:\s+cb 89\s+res 1,c +\s+332:\s+cb 8a\s+res 1,d +\s+334:\s+cb 8b\s+res 1,e +\s+336:\s+cb 8c\s+res 1,h +\s+338:\s+cb 8d\s+res 1,l +\s+33a:\s+cb 96\s+res 2,\(hl\) +\s+33c:\s+dd cb 09 96\s+res 2,\(ix\+9\) +\s+340:\s+fd cb 09 96\s+res 2,\(iy\+9\) +\s+344:\s+cb 97\s+res 2,a +\s+346:\s+cb 90\s+res 2,b +\s+348:\s+cb 91\s+res 2,c +\s+34a:\s+cb 92\s+res 2,d +\s+34c:\s+cb 93\s+res 2,e +\s+34e:\s+cb 94\s+res 2,h +\s+350:\s+cb 95\s+res 2,l +\s+352:\s+cb 9e\s+res 3,\(hl\) +\s+354:\s+dd cb 09 9e\s+res 3,\(ix\+9\) +\s+358:\s+fd cb 09 9e\s+res 3,\(iy\+9\) +\s+35c:\s+cb 9f\s+res 3,a +\s+35e:\s+cb 98\s+res 3,b +\s+360:\s+cb 99\s+res 3,c +\s+362:\s+cb 9a\s+res 3,d +\s+364:\s+cb 9b\s+res 3,e +\s+366:\s+cb 9c\s+res 3,h +\s+368:\s+cb 9d\s+res 3,l +\s+36a:\s+cb a6\s+res 4,\(hl\) +\s+36c:\s+dd cb 09 a6\s+res 4,\(ix\+9\) +\s+370:\s+fd cb 09 a6\s+res 4,\(iy\+9\) +\s+374:\s+cb a7\s+res 4,a +\s+376:\s+cb a0\s+res 4,b +\s+378:\s+cb a1\s+res 4,c +\s+37a:\s+cb a2\s+res 4,d +\s+37c:\s+cb a3\s+res 4,e +\s+37e:\s+cb a4\s+res 4,h +\s+380:\s+cb a5\s+res 4,l +\s+382:\s+cb ae\s+res 5,\(hl\) +\s+384:\s+dd cb 09 ae\s+res 5,\(ix\+9\) +\s+388:\s+fd cb 09 ae\s+res 5,\(iy\+9\) +\s+38c:\s+cb af\s+res 5,a +\s+38e:\s+cb a8\s+res 5,b +\s+390:\s+cb a9\s+res 5,c +\s+392:\s+cb aa\s+res 5,d +\s+394:\s+cb ab\s+res 5,e +\s+396:\s+cb ac\s+res 5,h +\s+398:\s+cb ad\s+res 5,l +\s+39a:\s+cb b6\s+res 6,\(hl\) +\s+39c:\s+dd cb 09 b6\s+res 6,\(ix\+9\) +\s+3a0:\s+fd cb 09 b6\s+res 6,\(iy\+9\) +\s+3a4:\s+cb b7\s+res 6,a +\s+3a6:\s+cb b0\s+res 6,b +\s+3a8:\s+cb b1\s+res 6,c +\s+3aa:\s+cb b2\s+res 6,d +\s+3ac:\s+cb b3\s+res 6,e +\s+3ae:\s+cb b4\s+res 6,h +\s+3b0:\s+cb b5\s+res 6,l +\s+3b2:\s+cb be\s+res 7,\(hl\) +\s+3b4:\s+dd cb 09 be\s+res 7,\(ix\+9\) +\s+3b8:\s+fd cb 09 be\s+res 7,\(iy\+9\) +\s+3bc:\s+cb bf\s+res 7,a +\s+3be:\s+cb b8\s+res 7,b +\s+3c0:\s+cb b9\s+res 7,c +\s+3c2:\s+cb ba\s+res 7,d +\s+3c4:\s+cb bb\s+res 7,e +\s+3c6:\s+cb bc\s+res 7,h +\s+3c8:\s+cb bd\s+res 7,l +\s+3ca:\s+c9\s+ret +\s+3cb:\s+d8\s+ret c +\s+3cc:\s+f8\s+ret m +\s+3cd:\s+d0\s+ret nc +\s+3ce:\s+c0\s+ret nz +\s+3cf:\s+f0\s+ret p +\s+3d0:\s+e8\s+ret pe +\s+3d1:\s+e0\s+ret po +\s+3d2:\s+c8\s+ret z +\s+3d3:\s+ed 4d\s+reti +\s+3d5:\s+ed 45\s+retn +\s+3d7:\s+cb 16\s+rl \(hl\) +\s+3d9:\s+dd cb 09 16\s+rl \(ix\+9\) +\s+3dd:\s+fd cb 09 16\s+rl \(iy\+9\) +\s+3e1:\s+cb 17\s+rl a +\s+3e3:\s+cb 10\s+rl b +\s+3e5:\s+cb 11\s+rl c +\s+3e7:\s+cb 12\s+rl d +\s+3e9:\s+cb 13\s+rl e +\s+3eb:\s+cb 14\s+rl h +\s+3ed:\s+cb 15\s+rl l +\s+3ef:\s+17\s+rla +\s+3f0:\s+cb 06\s+rlc \(hl\) +\s+3f2:\s+dd cb 09 06\s+rlc \(ix\+9\) +\s+3f6:\s+fd cb 09 06\s+rlc \(iy\+9\) +\s+3fa:\s+cb 07\s+rlc a +\s+3fc:\s+cb 00\s+rlc b +\s+3fe:\s+cb 01\s+rlc c +\s+400:\s+cb 02\s+rlc d +\s+402:\s+cb 03\s+rlc e +\s+404:\s+cb 04\s+rlc h +\s+406:\s+cb 05\s+rlc l +\s+408:\s+07\s+rlca +\s+409:\s+ed 6f\s+rld +\s+40b:\s+cb 1e\s+rr \(hl\) +\s+40d:\s+dd cb 09 1e\s+rr \(ix\+9\) +\s+411:\s+fd cb 09 1e\s+rr \(iy\+9\) +\s+415:\s+cb 1f\s+rr a +\s+417:\s+cb 18\s+rr b +\s+419:\s+cb 19\s+rr c +\s+41b:\s+cb 1a\s+rr d +\s+41d:\s+cb 1b\s+rr e +\s+41f:\s+cb 1c\s+rr h +\s+421:\s+cb 1d\s+rr l +\s+423:\s+1f\s+rra +\s+424:\s+cb 0e\s+rrc \(hl\) +\s+426:\s+dd cb 09 0e\s+rrc \(ix\+9\) +\s+42a:\s+fd cb 09 0e\s+rrc \(iy\+9\) +\s+42e:\s+cb 0f\s+rrc a +\s+430:\s+cb 08\s+rrc b +\s+432:\s+cb 09\s+rrc c +\s+434:\s+cb 0a\s+rrc d +\s+436:\s+cb 0b\s+rrc e +\s+438:\s+cb 0c\s+rrc h +\s+43a:\s+cb 0d\s+rrc l +\s+43c:\s+0f\s+rrca +\s+43d:\s+ed 67\s+rrd +\s+43f:\s+c7\s+rst 0x00 +\s+440:\s+cf\s+rst 0x08 +\s+441:\s+d7\s+rst 0x10 +\s+442:\s+df\s+rst 0x18 +\s+443:\s+e7\s+rst 0x20 +\s+444:\s+ef\s+rst 0x28 +\s+445:\s+f7\s+rst 0x30 +\s+446:\s+ff\s+rst 0x38 +\s+447:\s+9e\s+sbc a,\(hl\) +\s+448:\s+dd 9e 09\s+sbc a,\(ix\+9\) +\s+44b:\s+fd 9e 09\s+sbc a,\(iy\+9\) +\s+44e:\s+de 03\s+sbc a,0x03 +\s+450:\s+9f\s+sbc a,a +\s+451:\s+98\s+sbc a,b +\s+452:\s+99\s+sbc a,c +\s+453:\s+9a\s+sbc a,d +\s+454:\s+9b\s+sbc a,e +\s+455:\s+9c\s+sbc a,h +\s+456:\s+9d\s+sbc a,l +\s+457:\s+ed 42\s+sbc hl,bc +\s+459:\s+ed 52\s+sbc hl,de +\s+45b:\s+ed 62\s+sbc hl,hl +\s+45d:\s+ed 72\s+sbc hl,sp +\s+45f:\s+37\s+scf +\s+460:\s+cb c6\s+set 0,\(hl\) +\s+462:\s+dd cb 09 c6\s+set 0,\(ix\+9\) +\s+466:\s+fd cb 09 c6\s+set 0,\(iy\+9\) +\s+46a:\s+cb c7\s+set 0,a +\s+46c:\s+cb c0\s+set 0,b +\s+46e:\s+cb c1\s+set 0,c +\s+470:\s+cb c2\s+set 0,d +\s+472:\s+cb c3\s+set 0,e +\s+474:\s+cb c4\s+set 0,h +\s+476:\s+cb c5\s+set 0,l +\s+478:\s+cb ce\s+set 1,\(hl\) +\s+47a:\s+dd cb 09 ce\s+set 1,\(ix\+9\) +\s+47e:\s+fd cb 09 ce\s+set 1,\(iy\+9\) +\s+482:\s+cb cf\s+set 1,a +\s+484:\s+cb c8\s+set 1,b +\s+486:\s+cb c9\s+set 1,c +\s+488:\s+cb ca\s+set 1,d +\s+48a:\s+cb cb\s+set 1,e +\s+48c:\s+cb cc\s+set 1,h +\s+48e:\s+cb cd\s+set 1,l +\s+490:\s+cb d6\s+set 2,\(hl\) +\s+492:\s+dd cb 09 d6\s+set 2,\(ix\+9\) +\s+496:\s+fd cb 09 d6\s+set 2,\(iy\+9\) +\s+49a:\s+cb d7\s+set 2,a +\s+49c:\s+cb d0\s+set 2,b +\s+49e:\s+cb d1\s+set 2,c +\s+4a0:\s+cb d2\s+set 2,d +\s+4a2:\s+cb d3\s+set 2,e +\s+4a4:\s+cb d4\s+set 2,h +\s+4a6:\s+cb d5\s+set 2,l +\s+4a8:\s+cb de\s+set 3,\(hl\) +\s+4aa:\s+dd cb 09 de\s+set 3,\(ix\+9\) +\s+4ae:\s+fd cb 09 de\s+set 3,\(iy\+9\) +\s+4b2:\s+cb df\s+set 3,a +\s+4b4:\s+cb d8\s+set 3,b +\s+4b6:\s+cb d9\s+set 3,c +\s+4b8:\s+cb da\s+set 3,d +\s+4ba:\s+cb db\s+set 3,e +\s+4bc:\s+cb dc\s+set 3,h +\s+4be:\s+cb dd\s+set 3,l +\s+4c0:\s+cb e6\s+set 4,\(hl\) +\s+4c2:\s+dd cb 09 e6\s+set 4,\(ix\+9\) +\s+4c6:\s+fd cb 09 e6\s+set 4,\(iy\+9\) +\s+4ca:\s+cb e7\s+set 4,a +\s+4cc:\s+cb e0\s+set 4,b +\s+4ce:\s+cb e1\s+set 4,c +\s+4d0:\s+cb e2\s+set 4,d +\s+4d2:\s+cb e3\s+set 4,e +\s+4d4:\s+cb e4\s+set 4,h +\s+4d6:\s+cb e5\s+set 4,l +\s+4d8:\s+cb ee\s+set 5,\(hl\) +\s+4da:\s+dd cb 09 ee\s+set 5,\(ix\+9\) +\s+4de:\s+fd cb 09 ee\s+set 5,\(iy\+9\) +\s+4e2:\s+cb ef\s+set 5,a +\s+4e4:\s+cb e8\s+set 5,b +\s+4e6:\s+cb e9\s+set 5,c +\s+4e8:\s+cb ea\s+set 5,d +\s+4ea:\s+cb eb\s+set 5,e +\s+4ec:\s+cb ec\s+set 5,h +\s+4ee:\s+cb ed\s+set 5,l +\s+4f0:\s+cb f6\s+set 6,\(hl\) +\s+4f2:\s+dd cb 09 f6\s+set 6,\(ix\+9\) +\s+4f6:\s+fd cb 09 f6\s+set 6,\(iy\+9\) +\s+4fa:\s+cb f7\s+set 6,a +\s+4fc:\s+cb f0\s+set 6,b +\s+4fe:\s+cb f1\s+set 6,c +\s+500:\s+cb f2\s+set 6,d +\s+502:\s+cb f3\s+set 6,e +\s+504:\s+cb f4\s+set 6,h +\s+506:\s+cb f5\s+set 6,l +\s+508:\s+cb fe\s+set 7,\(hl\) +\s+50a:\s+dd cb 09 fe\s+set 7,\(ix\+9\) +\s+50e:\s+fd cb 09 fe\s+set 7,\(iy\+9\) +\s+512:\s+cb ff\s+set 7,a +\s+514:\s+cb f8\s+set 7,b +\s+516:\s+cb f9\s+set 7,c +\s+518:\s+cb fa\s+set 7,d +\s+51a:\s+cb fb\s+set 7,e +\s+51c:\s+cb fc\s+set 7,h +\s+51e:\s+cb fd\s+set 7,l +\s+520:\s+cb 26\s+sla \(hl\) +\s+522:\s+dd cb 09 26\s+sla \(ix\+9\) +\s+526:\s+fd cb 09 26\s+sla \(iy\+9\) +\s+52a:\s+cb 27\s+sla a +\s+52c:\s+cb 20\s+sla b +\s+52e:\s+cb 21\s+sla c +\s+530:\s+cb 22\s+sla d +\s+532:\s+cb 23\s+sla e +\s+534:\s+cb 24\s+sla h +\s+536:\s+cb 25\s+sla l +\s+538:\s+cb 2e\s+sra \(hl\) +\s+53a:\s+dd cb 09 2e\s+sra \(ix\+9\) +\s+53e:\s+fd cb 09 2e\s+sra \(iy\+9\) +\s+542:\s+cb 2f\s+sra a +\s+544:\s+cb 28\s+sra b +\s+546:\s+cb 29\s+sra c +\s+548:\s+cb 2a\s+sra d +\s+54a:\s+cb 2b\s+sra e +\s+54c:\s+cb 2c\s+sra h +\s+54e:\s+cb 2d\s+sra l +\s+550:\s+cb 3e\s+srl \(hl\) +\s+552:\s+dd cb 09 3e\s+srl \(ix\+9\) +\s+556:\s+fd cb 09 3e\s+srl \(iy\+9\) +\s+55a:\s+cb 3f\s+srl a +\s+55c:\s+cb 38\s+srl b +\s+55e:\s+cb 39\s+srl c +\s+560:\s+cb 3a\s+srl d +\s+562:\s+cb 3b\s+srl e +\s+564:\s+cb 3c\s+srl h +\s+566:\s+cb 3d\s+srl l +\s+568:\s+96\s+sub \(hl\) +\s+569:\s+dd 96 09\s+sub \(ix\+9\) +\s+56c:\s+fd 96 09\s+sub \(iy\+9\) +\s+56f:\s+d6 03\s+sub 0x03 +\s+571:\s+97\s+sub a +\s+572:\s+90\s+sub b +\s+573:\s+91\s+sub c +\s+574:\s+92\s+sub d +\s+575:\s+93\s+sub e +\s+576:\s+94\s+sub h +\s+577:\s+95\s+sub l +\s+578:\s+ae\s+xor \(hl\) +\s+579:\s+dd ae 09\s+xor \(ix\+9\) +\s+57c:\s+fd ae 09\s+xor \(iy\+9\) +\s+57f:\s+ee 03\s+xor 0x03 +\s+581:\s+af\s+xor a +\s+582:\s+a8\s+xor b +\s+583:\s+a9\s+xor c +\s+584:\s+aa\s+xor d +\s+585:\s+ab\s+xor e +\s+586:\s+ac\s+xor h +\s+587:\s+ad\s+xor l diff --git a/gas/testsuite/gas/z80/sdcc.d b/gas/testsuite/gas/z80/sdcc.d new file mode 100644 index 0000000..53c630b --- /dev/null +++ b/gas/testsuite/gas/z80/sdcc.d @@ -0,0 +1,152 @@ +#name: SDCC compatibility mode +#source: sdcc.s -z80 -sdcc +#objdump: -d -j _CODE + +.*:[ ]+file format (coff)|(elf32)\-z80 + +Disassembly of section _CODE: + +00000000 <_start>: +[ ]+0:[ ]+21 04 00[ ]+ld hl,0x0004 +[ ]+3:[ ]+8f[ ]+adc a,a +[ ]+4:[ ]+88[ ]+adc a,b +[ ]+5:[ ]+89[ ]+adc a,c +[ ]+6:[ ]+8a[ ]+adc a,d +[ ]+7:[ ]+8b[ ]+adc a,e +[ ]+8:[ ]+8c[ ]+adc a,h +[ ]+9:[ ]+8d[ ]+adc a,l +[ ]+a:[ ]+dd 8c[ ]+adc a,ixh +[ ]+c:[ ]+dd 8d[ ]+adc a,ixl +[ ]+e:[ ]+fd 8c[ ]+adc a,iyh +[ ]+10:[ ]+fd 8d[ ]+adc a,iyl +[ ]+12:[ ]+ce a5[ ]+adc a,0xa5 +[ ]+14:[ ]+8e[ ]+adc a,\(hl\) +[ ]+15:[ ]+dd 8e 05[ ]+adc a,\(ix\+5\) +[ ]+18:[ ]+fd 8e fe[ ]+adc a,\(iy\-2\) +[ ]+1b:[ ]+87[ ]+add a,a +[ ]+1c:[ ]+80[ ]+add a,b +[ ]+1d:[ ]+81[ ]+add a,c +[ ]+1e:[ ]+82[ ]+add a,d +[ ]+1f:[ ]+83[ ]+add a,e +[ ]+20:[ ]+84[ ]+add a,h +[ ]+21:[ ]+85[ ]+add a,l +[ ]+22:[ ]+dd 84[ ]+add a,ixh +[ ]+24:[ ]+dd 85[ ]+add a,ixl +[ ]+26:[ ]+fd 84[ ]+add a,iyh +[ ]+28:[ ]+fd 85[ ]+add a,iyl +[ ]+2a:[ ]+c6 a5[ ]+add a,0xa5 +[ ]+2c:[ ]+86[ ]+add a,\(hl\) +[ ]+2d:[ ]+dd 86 05[ ]+add a,\(ix\+5\) +[ ]+30:[ ]+fd 86 fe[ ]+add a,\(iy\-2\) +[ ]+33:[ ]+a7[ ]+and a +[ ]+34:[ ]+a0[ ]+and b +[ ]+35:[ ]+a1[ ]+and c +[ ]+36:[ ]+a2[ ]+and d +[ ]+37:[ ]+a3[ ]+and e +[ ]+38:[ ]+a4[ ]+and h +[ ]+39:[ ]+a5[ ]+and l +[ ]+3a:[ ]+dd a4[ ]+and ixh +[ ]+3c:[ ]+dd a5[ ]+and ixl +[ ]+3e:[ ]+fd a4[ ]+and iyh +[ ]+40:[ ]+fd a5[ ]+and iyl +[ ]+42:[ ]+e6 a5[ ]+and 0xa5 +[ ]+44:[ ]+a6[ ]+and \(hl\) +[ ]+45:[ ]+dd a6 05[ ]+and \(ix\+5\) +[ ]+48:[ ]+fd a6 fe[ ]+and \(iy\-2\) +[ ]+4b:[ ]+bf[ ]+cp a +[ ]+4c:[ ]+b8[ ]+cp b +[ ]+4d:[ ]+b9[ ]+cp c +[ ]+4e:[ ]+ba[ ]+cp d +[ ]+4f:[ ]+bb[ ]+cp e +[ ]+50:[ ]+bc[ ]+cp h +[ ]+51:[ ]+bd[ ]+cp l +[ ]+52:[ ]+dd bc[ ]+cp ixh +[ ]+54:[ ]+dd bd[ ]+cp ixl +[ ]+56:[ ]+fd bc[ ]+cp iyh +[ ]+58:[ ]+fd bd[ ]+cp iyl +[ ]+5a:[ ]+fe a5[ ]+cp 0xa5 +[ ]+5c:[ ]+be[ ]+cp \(hl\) +[ ]+5d:[ ]+dd be 05[ ]+cp \(ix\+5\) +[ ]+60:[ ]+fd be fe[ ]+cp \(iy\-2\) +[ ]+63:[ ]+b7[ ]+or a +[ ]+64:[ ]+b0[ ]+or b +[ ]+65:[ ]+b1[ ]+or c +[ ]+66:[ ]+b2[ ]+or d +[ ]+67:[ ]+b3[ ]+or e +[ ]+68:[ ]+b4[ ]+or h +[ ]+69:[ ]+b5[ ]+or l +[ ]+6a:[ ]+dd b4[ ]+or ixh +[ ]+6c:[ ]+dd b5[ ]+or ixl +[ ]+6e:[ ]+fd b4[ ]+or iyh +[ ]+70:[ ]+fd b5[ ]+or iyl +[ ]+72:[ ]+f6 a5[ ]+or 0xa5 +[ ]+74:[ ]+b6[ ]+or \(hl\) +[ ]+75:[ ]+dd b6 05[ ]+or \(ix\+5\) +[ ]+78:[ ]+fd b6 fe[ ]+or \(iy\-2\) +[ ]+7b:[ ]+9f[ ]+sbc a,a +[ ]+7c:[ ]+98[ ]+sbc a,b +[ ]+7d:[ ]+99[ ]+sbc a,c +[ ]+7e:[ ]+9a[ ]+sbc a,d +[ ]+7f:[ ]+9b[ ]+sbc a,e +[ ]+80:[ ]+9c[ ]+sbc a,h +[ ]+81:[ ]+9d[ ]+sbc a,l +[ ]+82:[ ]+dd 9c[ ]+sbc a,ixh +[ ]+84:[ ]+dd 9d[ ]+sbc a,ixl +[ ]+86:[ ]+fd 9c[ ]+sbc a,iyh +[ ]+88:[ ]+fd 9d[ ]+sbc a,iyl +[ ]+8a:[ ]+de a5[ ]+sbc a,0xa5 +[ ]+8c:[ ]+9e[ ]+sbc a,\(hl\) +[ ]+8d:[ ]+dd 9e 05[ ]+sbc a,\(ix\+5\) +[ ]+90:[ ]+fd 9e fe[ ]+sbc a,\(iy\-2\) +[ ]+93:[ ]+97[ ]+sub a +[ ]+94:[ ]+90[ ]+sub b +[ ]+95:[ ]+91[ ]+sub c +[ ]+96:[ ]+92[ ]+sub d +[ ]+97:[ ]+93[ ]+sub e +[ ]+98:[ ]+94[ ]+sub h +[ ]+99:[ ]+95[ ]+sub l +[ ]+9a:[ ]+dd 94[ ]+sub ixh +[ ]+9c:[ ]+dd 95[ ]+sub ixl +[ ]+9e:[ ]+fd 94[ ]+sub iyh +[ ]+a0:[ ]+fd 95[ ]+sub iyl +[ ]+a2:[ ]+d6 a5[ ]+sub 0xa5 +[ ]+a4:[ ]+96[ ]+sub \(hl\) +[ ]+a5:[ ]+dd 96 05[ ]+sub \(ix\+5\) +[ ]+a8:[ ]+fd 96 fe[ ]+sub \(iy\-2\) +[ ]+ab:[ ]+af[ ]+xor a +[ ]+ac:[ ]+a8[ ]+xor b +[ ]+ad:[ ]+a9[ ]+xor c +[ ]+ae:[ ]+aa[ ]+xor d +[ ]+af:[ ]+ab[ ]+xor e +[ ]+b0:[ ]+ac[ ]+xor h +[ ]+b1:[ ]+ad[ ]+xor l +[ ]+b2:[ ]+dd ac[ ]+xor ixh +[ ]+b4:[ ]+dd ad[ ]+xor ixl +[ ]+b6:[ ]+fd ac[ ]+xor iyh +[ ]+b8:[ ]+fd ad[ ]+xor iyl +[ ]+ba:[ ]+ee a5[ ]+xor 0xa5 +[ ]+bc:[ ]+ae[ ]+xor \(hl\) +[ ]+bd:[ ]+dd ae 05[ ]+xor \(ix\+5\) +[ ]+c0:[ ]+fd ae fe[ ]+xor \(iy\-2\) +[ ]+c3:[ ]+c3 03 00[ ]+jp 0x0003 +[ ]+c6:[ ]+c3 1b 00[ ]+jp 0x001b +[ ]+c9:[ ]+c3 33 00[ ]+jp 0x0033 +[ ]+cc:[ ]+c3 4b 00[ ]+jp 0x004b +[ ]+cf:[ ]+c3 7b 00[ ]+jp 0x007b +[ ]+d2:[ ]+c3 93 00[ ]+jp 0x0093 +[ ]+d5:[ ]+c3 ab 00[ ]+jp 0x00ab +[ ]+d8:[ ]+21 00 00[ ]+ld hl,0x0000 +[ ]+db:[ ]+36 00[ ]+ld \(hl\),0x00 +[ ]+dd:[ ]+23[ ]+inc hl +[ ]+de:[ ]+36 00[ ]+ld \(hl\),0x00 +[ ]+e0:[ ]+18 fb[ ]+jr 0x00dd + +000000e2 <_finish>: +[ ]+e2:[ ]+fd 7e 02[ ]+ld a,\(iy\+2\) +[ ]+e5:[ ]+dd 77 ff[ ]+ld \(ix\-1\),a +[ ]+e8:[ ]+3a 34 12[ ]+ld a,\(0x1234\) + +[ ]+eb:[ ]+c9[ ]+ret +[ ]+ec:[ ]+27[ ]+daa +[ ]+ed:[ ]+1f[ ]+rra +[ ]+ee:[ ]+2f[ ]+cpl diff --git a/gas/testsuite/gas/z80/sdcc.s b/gas/testsuite/gas/z80/sdcc.s new file mode 100644 index 0000000..dae75c5 --- /dev/null +++ b/gas/testsuite/gas/z80/sdcc.s @@ -0,0 +1,167 @@ + .module longpolls + .optsdcc -mz80 + +valueadr = 0x1234 + + .globl function + .globl _start + .globl _finish + + .area _DABS (ABS) + .area _HOME + .area _CODE +_start:: +;comment + ld hl, #4+0 +00000$: + adc a, a + adc a, b + adc a, c + adc a, d + adc a, e + adc a, h + adc a, l + adc a, ixh + adc a, ixl + adc a, iyh + adc a, iyl + adc a, #0xa5 + adc a, (hl) + adc a, 5 (ix) + adc a, -2 (iy) +00100$: + add a, a + add a, b + add a, c + add a, d + add a, e + add a, h + add a, l + add a, ixh + add a, ixl + add a, iyh + add a, iyl + add a, #0xa5 + add a, (hl) + add a, 5 (ix) + add a, -2 (iy) +00200$: + and a, a + and a, b + and a, c + and a, d + and a, e + and a, h + and a, l + and a, ixh + and a, ixl + and a, iyh + and a, iyl + and a, #0xa5 + and a, (hl) + and a, 5 (ix) + and a, -2 (iy) +00300$: + cp a, a + cp a, b + cp a, c + cp a, d + cp a, e + cp a, h + cp a, l + cp a, ixh + cp a, ixl + cp a, iyh + cp a, iyl + cp a, #0xa5 + cp a, (hl) + cp a, 5 (ix) + cp a, -2 (iy) +00400$: + or a, a + or a, b + or a, c + or a, d + or a, e + or a, h + or a, l + or a, ixh + or a, ixl + or a, iyh + or a, iyl + or a, #0xa5 + or a, (hl) + or a, 5 (ix) + or a, -2 (iy) +00500$: + sbc a, a + sbc a, b + sbc a, c + sbc a, d + sbc a, e + sbc a, h + sbc a, l + sbc a, ixh + sbc a, ixl + sbc a, iyh + sbc a, iyl + sbc a, #0xa5 + sbc a, (hl) + sbc a, 5 (ix) + sbc a, -2 (iy) +00600$: + sub a, a + sub a, b + sub a, c + sub a, d + sub a, e + sub a, h + sub a, l + sub a, ixh + sub a, ixl + sub a, iyh + sub a, iyl + sub a, #0xa5 + sub a, (hl) + sub a, 5 (ix) + sub a, -2 (iy) +00700$: + xor a, a + xor a, b + xor a, c + xor a, d + xor a, e + xor a, h + xor a, l + xor a, ixh + xor a, ixl + xor a, iyh + xor a, iyl + xor a, #0xa5 + xor a, (hl) + xor a, 5 (ix) + xor a, -2 (iy) + + jp 0$ + jp 100$ + jp 200$ + jp 300$ + jp 500$ + jp 600$ + jp 700$ +.L_func: + ld hl,0 + ld (hl),#<function +00100$: + inc hl + ld (hl),#>function +00600$: + jr 100$ +_finish:: + ld a, 2 (iy) + ld -1 (ix), a + ld a, (#valueadr+#0) + ret + .dw #0x1f27 + .db #0x2f + .end diff --git a/gas/testsuite/gas/z80/set.d b/gas/testsuite/gas/z80/set.d new file mode 100644 index 0000000..c83197c --- /dev/null +++ b/gas/testsuite/gas/z80/set.d @@ -0,0 +1,8 @@ +#objdump: -s -j .data +#name: .set redefinitions + +.*: .* + +Contents of section .data: + 0000 00000000 04000000 08000000 0c000000[ ]+................[ ]* +#pass diff --git a/gas/testsuite/gas/z80/set.s b/gas/testsuite/gas/z80/set.s new file mode 100644 index 0000000..75fddc5 --- /dev/null +++ b/gas/testsuite/gas/z80/set.s @@ -0,0 +1,11 @@ + .data +_start: +.set x, .-_start +.long x +.balign 4 + .set x, .-_start + .long x +.L_xx: .set x, .-_start + .long x +.L_yy:.set x, .-_start + .long x diff --git a/gas/testsuite/gas/z80/strings.d b/gas/testsuite/gas/z80/strings.d new file mode 100644 index 0000000..cd42230 --- /dev/null +++ b/gas/testsuite/gas/z80/strings.d @@ -0,0 +1,14 @@ +#name: strings test +#objdump: -s -j .data + +.*:[ ]+file format (coff)|(elf32)\-z80 + +Contents of section \.data: + 0000 2e646220 74657874 5c6e3833 37343830.* + 0010 44454642 20746578 745c6e64 38373833.* + 0020 4445464d 20746578 745c6e33 37383537.* + 0030 44422074 6578745c 6e333837 39383337.* + 0040 2e617363 69692074 6578743a bf0c0a00.* + 0050 2e617363 697a2074 6578740a 39393900.* + 0060 2e737472 696e6720 74657874 0a090000.* +#pass diff --git a/gas/testsuite/gas/z80/strings.s b/gas/testsuite/gas/z80/strings.s new file mode 100644 index 0000000..3859de2 --- /dev/null +++ b/gas/testsuite/gas/z80/strings.s @@ -0,0 +1,9 @@ + .data + .db ".db text\n837480" + DEFB "DEFB text\nd8783" + DEFM "DEFM text\n37857" + DB "DB text\n3879837" + .ascii ".ascii text\72\277\f\n\0" + .asciz ".asciz text\n999" + .string ".string text\n\t\0" + .end diff --git a/gas/testsuite/gas/z80/suffix.d b/gas/testsuite/gas/z80/suffix.d index c356275..5c2182a 100644 --- a/gas/testsuite/gas/z80/suffix.d +++ b/gas/testsuite/gas/z80/suffix.d @@ -6,7 +6,7 @@ RELOCATION RECORDS FOR \[.data\]: OFFSET[ ]+TYPE[ ]+VALUE[ ]* 00000002[ ]+r_imm16[ ]+.data[ ]* -00000014[ ]+r_imm16[ ]+.data[ ]* +00000014[ ]+r_imm16[ ]+.data(\+0x00000016)?[ ]* Contents of section .data: diff --git a/gas/testsuite/gas/z80/z180.d b/gas/testsuite/gas/z80/z180.d new file mode 100644 index 0000000..6f3f8f9 --- /dev/null +++ b/gas/testsuite/gas/z80/z180.d @@ -0,0 +1,42 @@ +#as: -z180 +#objdump: -d +#name: Z180 specific instructions + +.*: .* + +Disassembly of section .text: + +0+ <.text>: +\s+0:\s+ed 38 05\s+in0 a,\(0x05\) +\s+3:\s+ed 00 05\s+in0 b,\(0x05\) +\s+6:\s+ed 08 05\s+in0 c,\(0x05\) +\s+9:\s+ed 10 05\s+in0 d,\(0x05\) +\s+c:\s+ed 18 05\s+in0 e,\(0x05\) +\s+f:\s+ed 20 05\s+in0 h,\(0x05\) +\s+12:\s+ed 28 05\s+in0 l,\(0x05\) +\s+15:\s+ed 39 05\s+out0 \(0x05\),a +\s+18:\s+ed 01 05\s+out0 \(0x05\),b +\s+1b:\s+ed 09 05\s+out0 \(0x05\),c +\s+1e:\s+ed 11 05\s+out0 \(0x05\),d +\s+21:\s+ed 19 05\s+out0 \(0x05\),e +\s+24:\s+ed 21 05\s+out0 \(0x05\),h +\s+27:\s+ed 29 05\s+out0 \(0x05\),l +\s+2a:\s+ed 4c\s+mlt bc +\s+2c:\s+ed 5c\s+mlt de +\s+2e:\s+ed 6c\s+mlt hl +\s+30:\s+ed 7c\s+mlt sp +\s+32:\s+ed 3c\s+tst a +\s+34:\s+ed 04\s+tst b +\s+36:\s+ed 0c\s+tst c +\s+38:\s+ed 14\s+tst d +\s+3a:\s+ed 1c\s+tst e +\s+3c:\s+ed 24\s+tst h +\s+3e:\s+ed 2c\s+tst l +\s+40:\s+ed 34\s+tst \(hl\) +\s+42:\s+ed 64 0f\s+tst 0x0f +\s+45:\s+ed 74 f0\s+tstio 0xf0 +\s+48:\s+ed 76\s+slp +\s+4a:\s+ed 83\s+otim +\s+4c:\s+ed 8b\s+otdm +\s+4e:\s+ed 93\s+otimr +\s+50:\s+ed 9b\s+otdmr diff --git a/gas/testsuite/gas/z80/z180.s b/gas/testsuite/gas/z80/z180.s new file mode 100644 index 0000000..e4ef13a --- /dev/null +++ b/gas/testsuite/gas/z80/z180.s @@ -0,0 +1,50 @@ + .text + .org 0 + ;; Zylog Z180 instructions + +; IN0 group + in0 a,(0x5) + in0 b,(0x5) + in0 c,(0x5) + in0 d,(0x5) + in0 e,(0x5) + in0 h,(0x5) + in0 l,(0x5) + +; OUT0 group + out0 (0x5),a + out0 (0x5),b + out0 (0x5),c + out0 (0x5),d + out0 (0x5),e + out0 (0x5),h + out0 (0x5),l + +; MLT group + mlt bc + mlt de + mlt hl + mlt sp + +; TST group + tst a + tst b + tst c + tst d + tst e + tst h + tst l + tst (hl) + tst 0fh + +; TSTIO instruction + tstio 0f0h + +; SLP instruction + slp + +; Additional block I/O instructions + OTIM + OTDM + OTIMR + OTDMR diff --git a/gas/testsuite/gas/z80/z180_z80_doc.d b/gas/testsuite/gas/z80/z180_z80_doc.d new file mode 100644 index 0000000..e6211b6 --- /dev/null +++ b/gas/testsuite/gas/z80/z180_z80_doc.d @@ -0,0 +1,707 @@ +#as: -z180 +#objdump: -d +#name: All Z80 documented instructions for Z180 +#source: z80_doc.s +#source: z180.s + +.*: .* + +Disassembly of section .text: + +0+ <.text>: +\s+0:\s+8e\s+adc a,\(hl\) +\s+1:\s+dd 8e 09\s+adc a,\(ix\+9\) +\s+4:\s+fd 8e 09\s+adc a,\(iy\+9\) +\s+7:\s+ce 03\s+adc a,0x03 +\s+9:\s+8f\s+adc a,a +\s+a:\s+88\s+adc a,b +\s+b:\s+89\s+adc a,c +\s+c:\s+8a\s+adc a,d +\s+d:\s+8b\s+adc a,e +\s+e:\s+8c\s+adc a,h +\s+f:\s+8d\s+adc a,l +\s+10:\s+ed 4a\s+adc hl,bc +\s+12:\s+ed 5a\s+adc hl,de +\s+14:\s+ed 6a\s+adc hl,hl +\s+16:\s+ed 7a\s+adc hl,sp +\s+18:\s+86\s+add a,\(hl\) +\s+19:\s+dd 86 09\s+add a,\(ix\+9\) +\s+1c:\s+fd 86 09\s+add a,\(iy\+9\) +\s+1f:\s+c6 03\s+add a,0x03 +\s+21:\s+87\s+add a,a +\s+22:\s+80\s+add a,b +\s+23:\s+81\s+add a,c +\s+24:\s+82\s+add a,d +\s+25:\s+83\s+add a,e +\s+26:\s+84\s+add a,h +\s+27:\s+85\s+add a,l +\s+28:\s+09\s+add hl,bc +\s+29:\s+19\s+add hl,de +\s+2a:\s+29\s+add hl,hl +\s+2b:\s+39\s+add hl,sp +\s+2c:\s+dd 09\s+add ix,bc +\s+2e:\s+dd 19\s+add ix,de +\s+30:\s+dd 29\s+add ix,ix +\s+32:\s+dd 39\s+add ix,sp +\s+34:\s+fd 09\s+add iy,bc +\s+36:\s+fd 19\s+add iy,de +\s+38:\s+fd 29\s+add iy,iy +\s+3a:\s+fd 39\s+add iy,sp +\s+3c:\s+a6\s+and \(hl\) +\s+3d:\s+dd a6 09\s+and \(ix\+9\) +\s+40:\s+fd a6 09\s+and \(iy\+9\) +\s+43:\s+e6 03\s+and 0x03 +\s+45:\s+a7\s+and a +\s+46:\s+a0\s+and b +\s+47:\s+a1\s+and c +\s+48:\s+a2\s+and d +\s+49:\s+a3\s+and e +\s+4a:\s+a4\s+and h +\s+4b:\s+a5\s+and l +\s+4c:\s+cb 46\s+bit 0,\(hl\) +\s+4e:\s+dd cb 09 46\s+bit 0,\(ix\+9\) +\s+52:\s+fd cb 09 46\s+bit 0,\(iy\+9\) +\s+56:\s+cb 47\s+bit 0,a +\s+58:\s+cb 40\s+bit 0,b +\s+5a:\s+cb 41\s+bit 0,c +\s+5c:\s+cb 42\s+bit 0,d +\s+5e:\s+cb 43\s+bit 0,e +\s+60:\s+cb 44\s+bit 0,h +\s+62:\s+cb 45\s+bit 0,l +\s+64:\s+cb 4e\s+bit 1,\(hl\) +\s+66:\s+dd cb 09 4e\s+bit 1,\(ix\+9\) +\s+6a:\s+fd cb 09 4e\s+bit 1,\(iy\+9\) +\s+6e:\s+cb 4f\s+bit 1,a +\s+70:\s+cb 48\s+bit 1,b +\s+72:\s+cb 49\s+bit 1,c +\s+74:\s+cb 4a\s+bit 1,d +\s+76:\s+cb 4b\s+bit 1,e +\s+78:\s+cb 4c\s+bit 1,h +\s+7a:\s+cb 4d\s+bit 1,l +\s+7c:\s+cb 56\s+bit 2,\(hl\) +\s+7e:\s+dd cb 09 56\s+bit 2,\(ix\+9\) +\s+82:\s+fd cb 09 56\s+bit 2,\(iy\+9\) +\s+86:\s+cb 57\s+bit 2,a +\s+88:\s+cb 50\s+bit 2,b +\s+8a:\s+cb 51\s+bit 2,c +\s+8c:\s+cb 52\s+bit 2,d +\s+8e:\s+cb 53\s+bit 2,e +\s+90:\s+cb 54\s+bit 2,h +\s+92:\s+cb 55\s+bit 2,l +\s+94:\s+cb 5e\s+bit 3,\(hl\) +\s+96:\s+dd cb 09 5e\s+bit 3,\(ix\+9\) +\s+9a:\s+fd cb 09 5e\s+bit 3,\(iy\+9\) +\s+9e:\s+cb 5f\s+bit 3,a +\s+a0:\s+cb 58\s+bit 3,b +\s+a2:\s+cb 59\s+bit 3,c +\s+a4:\s+cb 5a\s+bit 3,d +\s+a6:\s+cb 5b\s+bit 3,e +\s+a8:\s+cb 5c\s+bit 3,h +\s+aa:\s+cb 5d\s+bit 3,l +\s+ac:\s+cb 66\s+bit 4,\(hl\) +\s+ae:\s+dd cb 09 66\s+bit 4,\(ix\+9\) +\s+b2:\s+fd cb 09 66\s+bit 4,\(iy\+9\) +\s+b6:\s+cb 67\s+bit 4,a +\s+b8:\s+cb 60\s+bit 4,b +\s+ba:\s+cb 61\s+bit 4,c +\s+bc:\s+cb 62\s+bit 4,d +\s+be:\s+cb 63\s+bit 4,e +\s+c0:\s+cb 64\s+bit 4,h +\s+c2:\s+cb 65\s+bit 4,l +\s+c4:\s+cb 6e\s+bit 5,\(hl\) +\s+c6:\s+dd cb 09 6e\s+bit 5,\(ix\+9\) +\s+ca:\s+fd cb 09 6e\s+bit 5,\(iy\+9\) +\s+ce:\s+cb 6f\s+bit 5,a +\s+d0:\s+cb 68\s+bit 5,b +\s+d2:\s+cb 69\s+bit 5,c +\s+d4:\s+cb 6a\s+bit 5,d +\s+d6:\s+cb 6b\s+bit 5,e +\s+d8:\s+cb 6c\s+bit 5,h +\s+da:\s+cb 6d\s+bit 5,l +\s+dc:\s+cb 76\s+bit 6,\(hl\) +\s+de:\s+dd cb 09 76\s+bit 6,\(ix\+9\) +\s+e2:\s+fd cb 09 76\s+bit 6,\(iy\+9\) +\s+e6:\s+cb 77\s+bit 6,a +\s+e8:\s+cb 70\s+bit 6,b +\s+ea:\s+cb 71\s+bit 6,c +\s+ec:\s+cb 72\s+bit 6,d +\s+ee:\s+cb 73\s+bit 6,e +\s+f0:\s+cb 74\s+bit 6,h +\s+f2:\s+cb 75\s+bit 6,l +\s+f4:\s+cb 7e\s+bit 7,\(hl\) +\s+f6:\s+dd cb 09 7e\s+bit 7,\(ix\+9\) +\s+fa:\s+fd cb 09 7e\s+bit 7,\(iy\+9\) +\s+fe:\s+cb 7f\s+bit 7,a +\s+100:\s+cb 78\s+bit 7,b +\s+102:\s+cb 79\s+bit 7,c +\s+104:\s+cb 7a\s+bit 7,d +\s+106:\s+cb 7b\s+bit 7,e +\s+108:\s+cb 7c\s+bit 7,h +\s+10a:\s+cb 7d\s+bit 7,l +\s+10c:\s+cd 34 12\s+call 0x1234 +\s+10f:\s+dc 34 12\s+call c,0x1234 +\s+112:\s+fc 34 12\s+call m,0x1234 +\s+115:\s+d4 34 12\s+call nc,0x1234 +\s+118:\s+c4 34 12\s+call nz,0x1234 +\s+11b:\s+f4 34 12\s+call p,0x1234 +\s+11e:\s+ec 34 12\s+call pe,0x1234 +\s+121:\s+e4 34 12\s+call po,0x1234 +\s+124:\s+cc 34 12\s+call z,0x1234 +\s+127:\s+3f\s+ccf +\s+128:\s+be\s+cp \(hl\) +\s+129:\s+dd be 09\s+cp \(ix\+9\) +\s+12c:\s+fd be 09\s+cp \(iy\+9\) +\s+12f:\s+fe 03\s+cp 0x03 +\s+131:\s+bf\s+cp a +\s+132:\s+b8\s+cp b +\s+133:\s+b9\s+cp c +\s+134:\s+ba\s+cp d +\s+135:\s+bb\s+cp e +\s+136:\s+bc\s+cp h +\s+137:\s+bd\s+cp l +\s+138:\s+ed a9\s+cpd +\s+13a:\s+ed b9\s+cpdr +\s+13c:\s+ed a1\s+cpi +\s+13e:\s+ed b1\s+cpir +\s+140:\s+2f\s+cpl +\s+141:\s+27\s+daa +\s+142:\s+35\s+dec \(hl\) +\s+143:\s+dd 35 09\s+dec \(ix\+9\) +\s+146:\s+fd 35 09\s+dec \(iy\+9\) +\s+149:\s+3d\s+dec a +\s+14a:\s+05\s+dec b +\s+14b:\s+0b\s+dec bc +\s+14c:\s+0d\s+dec c +\s+14d:\s+15\s+dec d +\s+14e:\s+1b\s+dec de +\s+14f:\s+1d\s+dec e +\s+150:\s+25\s+dec h +\s+151:\s+2b\s+dec hl +\s+152:\s+dd 2b\s+dec ix +\s+154:\s+fd 2b\s+dec iy +\s+156:\s+2d\s+dec l +\s+157:\s+3b\s+dec sp +\s+158:\s+f3\s+di +\s+159:\s+10 05\s+djnz 0x0160 +\s+15b:\s+fb\s+ei +\s+15c:\s+e3\s+ex \(sp\),hl +\s+15d:\s+dd e3\s+ex \(sp\),ix +\s+15f:\s+fd e3\s+ex \(sp\),iy +\s+161:\s+08\s+ex af,af' +\s+162:\s+eb\s+ex de,hl +\s+163:\s+d9\s+exx +\s+164:\s+76\s+halt +\s+165:\s+ed 46\s+im 0 +\s+167:\s+ed 56\s+im 1 +\s+169:\s+ed 5e\s+im 2 +\s+16b:\s+ed 78\s+in a,\(c\) +\s+16d:\s+db 03\s+in a,\(0x03\) +\s+16f:\s+ed 40\s+in b,\(c\) +\s+171:\s+ed 48\s+in c,\(c\) +\s+173:\s+ed 50\s+in d,\(c\) +\s+175:\s+ed 58\s+in e,\(c\) +\s+177:\s+ed 60\s+in h,\(c\) +\s+179:\s+ed 68\s+in l,\(c\) +\s+17b:\s+34\s+inc \(hl\) +\s+17c:\s+dd 34 09\s+inc \(ix\+9\) +\s+17f:\s+fd 34 09\s+inc \(iy\+9\) +\s+182:\s+3c\s+inc a +\s+183:\s+04\s+inc b +\s+184:\s+03\s+inc bc +\s+185:\s+0c\s+inc c +\s+186:\s+14\s+inc d +\s+187:\s+13\s+inc de +\s+188:\s+1c\s+inc e +\s+189:\s+24\s+inc h +\s+18a:\s+23\s+inc hl +\s+18b:\s+dd 23\s+inc ix +\s+18d:\s+fd 23\s+inc iy +\s+18f:\s+2c\s+inc l +\s+190:\s+33\s+inc sp +\s+191:\s+ed aa\s+ind +\s+193:\s+ed ba\s+indr +\s+195:\s+ed a2\s+ini +\s+197:\s+ed b2\s+inir +\s+199:\s+e9\s+jp \(hl\) +\s+19a:\s+dd e9\s+jp \(ix\) +\s+19c:\s+fd e9\s+jp \(iy\) +\s+19e:\s+c3 34 12\s+jp 0x1234 +\s+1a1:\s+da 34 12\s+jp c,0x1234 +\s+1a4:\s+fa 34 12\s+jp m,0x1234 +\s+1a7:\s+d2 34 12\s+jp nc,0x1234 +\s+1aa:\s+c2 34 12\s+jp nz,0x1234 +\s+1ad:\s+f2 34 12\s+jp p,0x1234 +\s+1b0:\s+ea 34 12\s+jp pe,0x1234 +\s+1b3:\s+e2 34 12\s+jp po,0x1234 +\s+1b6:\s+ca 34 12\s+jp z,0x1234 +\s+1b9:\s+18 05\s+jr 0x01c0 +\s+1bb:\s+38 05\s+jr c,0x01c2 +\s+1bd:\s+30 05\s+jr nc,0x01c4 +\s+1bf:\s+20 05\s+jr nz,0x01c6 +\s+1c1:\s+28 05\s+jr z,0x01c8 +\s+1c3:\s+32 34 12\s+ld \(0x1234\),a +\s+1c6:\s+ed 43 34 12\s+ld \(0x1234\),bc +\s+1ca:\s+ed 53 34 12\s+ld \(0x1234\),de +\s+1ce:\s+22 34 12\s+ld \(0x1234\),hl +\s+1d1:\s+dd 22 34 12\s+ld \(0x1234\),ix +\s+1d5:\s+fd 22 34 12\s+ld \(0x1234\),iy +\s+1d9:\s+ed 73 34 12\s+ld \(0x1234\),sp +\s+1dd:\s+02\s+ld \(bc\),a +\s+1de:\s+12\s+ld \(de\),a +\s+1df:\s+36 03\s+ld \(hl\),0x03 +\s+1e1:\s+77\s+ld \(hl\),a +\s+1e2:\s+70\s+ld \(hl\),b +\s+1e3:\s+71\s+ld \(hl\),c +\s+1e4:\s+72\s+ld \(hl\),d +\s+1e5:\s+73\s+ld \(hl\),e +\s+1e6:\s+74\s+ld \(hl\),h +\s+1e7:\s+75\s+ld \(hl\),l +\s+1e8:\s+dd 36 09 03\s+ld \(ix\+9\),0x03 +\s+1ec:\s+dd 77 09\s+ld \(ix\+9\),a +\s+1ef:\s+dd 70 09\s+ld \(ix\+9\),b +\s+1f2:\s+dd 71 09\s+ld \(ix\+9\),c +\s+1f5:\s+dd 72 09\s+ld \(ix\+9\),d +\s+1f8:\s+dd 73 09\s+ld \(ix\+9\),e +\s+1fb:\s+dd 74 09\s+ld \(ix\+9\),h +\s+1fe:\s+dd 75 09\s+ld \(ix\+9\),l +\s+201:\s+fd 36 09 03\s+ld \(iy\+9\),0x03 +\s+205:\s+fd 77 09\s+ld \(iy\+9\),a +\s+208:\s+fd 70 09\s+ld \(iy\+9\),b +\s+20b:\s+fd 71 09\s+ld \(iy\+9\),c +\s+20e:\s+fd 72 09\s+ld \(iy\+9\),d +\s+211:\s+fd 73 09\s+ld \(iy\+9\),e +\s+214:\s+fd 74 09\s+ld \(iy\+9\),h +\s+217:\s+fd 75 09\s+ld \(iy\+9\),l +\s+21a:\s+3a 34 12\s+ld a,\(0x1234\) +\s+21d:\s+0a\s+ld a,\(bc\) +\s+21e:\s+1a\s+ld a,\(de\) +\s+21f:\s+7e\s+ld a,\(hl\) +\s+220:\s+dd 7e 09\s+ld a,\(ix\+9\) +\s+223:\s+fd 7e 09\s+ld a,\(iy\+9\) +\s+226:\s+3e 03\s+ld a,0x03 +\s+228:\s+7f\s+ld a,a +\s+229:\s+78\s+ld a,b +\s+22a:\s+79\s+ld a,c +\s+22b:\s+7a\s+ld a,d +\s+22c:\s+7b\s+ld a,e +\s+22d:\s+7c\s+ld a,h +\s+22e:\s+ed 57\s+ld a,i +\s+230:\s+7d\s+ld a,l +\s+231:\s+ed 5f\s+ld a,r +\s+233:\s+46\s+ld b,\(hl\) +\s+234:\s+dd 46 09\s+ld b,\(ix\+9\) +\s+237:\s+fd 46 09\s+ld b,\(iy\+9\) +\s+23a:\s+06 03\s+ld b,0x03 +\s+23c:\s+47\s+ld b,a +\s+23d:\s+40\s+ld b,b +\s+23e:\s+41\s+ld b,c +\s+23f:\s+42\s+ld b,d +\s+240:\s+43\s+ld b,e +\s+241:\s+44\s+ld b,h +\s+242:\s+45\s+ld b,l +\s+243:\s+ed 4b 34 12\s+ld bc,\(0x1234\) +\s+247:\s+01 34 12\s+ld bc,0x1234 +\s+24a:\s+4e\s+ld c,\(hl\) +\s+24b:\s+dd 4e 09\s+ld c,\(ix\+9\) +\s+24e:\s+fd 4e 09\s+ld c,\(iy\+9\) +\s+251:\s+0e 03\s+ld c,0x03 +\s+253:\s+4f\s+ld c,a +\s+254:\s+48\s+ld c,b +\s+255:\s+49\s+ld c,c +\s+256:\s+4a\s+ld c,d +\s+257:\s+4b\s+ld c,e +\s+258:\s+4c\s+ld c,h +\s+259:\s+4d\s+ld c,l +\s+25a:\s+56\s+ld d,\(hl\) +\s+25b:\s+dd 56 09\s+ld d,\(ix\+9\) +\s+25e:\s+fd 56 09\s+ld d,\(iy\+9\) +\s+261:\s+16 03\s+ld d,0x03 +\s+263:\s+57\s+ld d,a +\s+264:\s+50\s+ld d,b +\s+265:\s+51\s+ld d,c +\s+266:\s+52\s+ld d,d +\s+267:\s+53\s+ld d,e +\s+268:\s+54\s+ld d,h +\s+269:\s+55\s+ld d,l +\s+26a:\s+ed 5b 34 12\s+ld de,\(0x1234\) +\s+26e:\s+11 34 12\s+ld de,0x1234 +\s+271:\s+5e\s+ld e,\(hl\) +\s+272:\s+dd 5e 09\s+ld e,\(ix\+9\) +\s+275:\s+fd 5e 09\s+ld e,\(iy\+9\) +\s+278:\s+1e 03\s+ld e,0x03 +\s+27a:\s+5f\s+ld e,a +\s+27b:\s+58\s+ld e,b +\s+27c:\s+59\s+ld e,c +\s+27d:\s+5a\s+ld e,d +\s+27e:\s+5b\s+ld e,e +\s+27f:\s+5c\s+ld e,h +\s+280:\s+5d\s+ld e,l +\s+281:\s+66\s+ld h,\(hl\) +\s+282:\s+dd 66 09\s+ld h,\(ix\+9\) +\s+285:\s+fd 66 09\s+ld h,\(iy\+9\) +\s+288:\s+26 03\s+ld h,0x03 +\s+28a:\s+67\s+ld h,a +\s+28b:\s+60\s+ld h,b +\s+28c:\s+61\s+ld h,c +\s+28d:\s+62\s+ld h,d +\s+28e:\s+63\s+ld h,e +\s+28f:\s+64\s+ld h,h +\s+290:\s+65\s+ld h,l +\s+291:\s+2a 34 12\s+ld hl,\(0x1234\) +\s+294:\s+21 34 12\s+ld hl,0x1234 +\s+297:\s+ed 47\s+ld i,a +\s+299:\s+dd 2a 34 12\s+ld ix,\(0x1234\) +\s+29d:\s+dd 21 34 12\s+ld ix,0x1234 +\s+2a1:\s+fd 2a 34 12\s+ld iy,\(0x1234\) +\s+2a5:\s+fd 21 34 12\s+ld iy,0x1234 +\s+2a9:\s+6e\s+ld l,\(hl\) +\s+2aa:\s+dd 6e 09\s+ld l,\(ix\+9\) +\s+2ad:\s+fd 6e 09\s+ld l,\(iy\+9\) +\s+2b0:\s+2e 03\s+ld l,0x03 +\s+2b2:\s+6f\s+ld l,a +\s+2b3:\s+68\s+ld l,b +\s+2b4:\s+69\s+ld l,c +\s+2b5:\s+6a\s+ld l,d +\s+2b6:\s+6b\s+ld l,e +\s+2b7:\s+6c\s+ld l,h +\s+2b8:\s+6d\s+ld l,l +\s+2b9:\s+ed 4f\s+ld r,a +\s+2bb:\s+ed 7b 34 12\s+ld sp,\(0x1234\) +\s+2bf:\s+31 34 12\s+ld sp,0x1234 +\s+2c2:\s+f9\s+ld sp,hl +\s+2c3:\s+dd f9\s+ld sp,ix +\s+2c5:\s+fd f9\s+ld sp,iy +\s+2c7:\s+ed a8\s+ldd +\s+2c9:\s+ed b8\s+lddr +\s+2cb:\s+ed a0\s+ldi +\s+2cd:\s+ed b0\s+ldir +\s+2cf:\s+ed 44\s+neg +\s+2d1:\s+00\s+nop +\s+2d2:\s+b6\s+or \(hl\) +\s+2d3:\s+dd b6 09\s+or \(ix\+9\) +\s+2d6:\s+fd b6 09\s+or \(iy\+9\) +\s+2d9:\s+f6 03\s+or 0x03 +\s+2db:\s+b7\s+or a +\s+2dc:\s+b0\s+or b +\s+2dd:\s+b1\s+or c +\s+2de:\s+b2\s+or d +\s+2df:\s+b3\s+or e +\s+2e0:\s+b4\s+or h +\s+2e1:\s+b5\s+or l +\s+2e2:\s+ed bb\s+otdr +\s+2e4:\s+ed b3\s+otir +\s+2e6:\s+ed 79\s+out \(c\),a +\s+2e8:\s+ed 41\s+out \(c\),b +\s+2ea:\s+ed 49\s+out \(c\),c +\s+2ec:\s+ed 51\s+out \(c\),d +\s+2ee:\s+ed 59\s+out \(c\),e +\s+2f0:\s+ed 61\s+out \(c\),h +\s+2f2:\s+ed 69\s+out \(c\),l +\s+2f4:\s+d3 03\s+out \(0x03\),a +\s+2f6:\s+ed ab\s+outd +\s+2f8:\s+ed a3\s+outi +\s+2fa:\s+f1\s+pop af +\s+2fb:\s+c1\s+pop bc +\s+2fc:\s+d1\s+pop de +\s+2fd:\s+e1\s+pop hl +\s+2fe:\s+dd e1\s+pop ix +\s+300:\s+fd e1\s+pop iy +\s+302:\s+f5\s+push af +\s+303:\s+c5\s+push bc +\s+304:\s+d5\s+push de +\s+305:\s+e5\s+push hl +\s+306:\s+dd e5\s+push ix +\s+308:\s+fd e5\s+push iy +\s+30a:\s+cb 86\s+res 0,\(hl\) +\s+30c:\s+dd cb 09 86\s+res 0,\(ix\+9\) +\s+310:\s+fd cb 09 86\s+res 0,\(iy\+9\) +\s+314:\s+cb 87\s+res 0,a +\s+316:\s+cb 80\s+res 0,b +\s+318:\s+cb 81\s+res 0,c +\s+31a:\s+cb 82\s+res 0,d +\s+31c:\s+cb 83\s+res 0,e +\s+31e:\s+cb 84\s+res 0,h +\s+320:\s+cb 85\s+res 0,l +\s+322:\s+cb 8e\s+res 1,\(hl\) +\s+324:\s+dd cb 09 8e\s+res 1,\(ix\+9\) +\s+328:\s+fd cb 09 8e\s+res 1,\(iy\+9\) +\s+32c:\s+cb 8f\s+res 1,a +\s+32e:\s+cb 88\s+res 1,b +\s+330:\s+cb 89\s+res 1,c +\s+332:\s+cb 8a\s+res 1,d +\s+334:\s+cb 8b\s+res 1,e +\s+336:\s+cb 8c\s+res 1,h +\s+338:\s+cb 8d\s+res 1,l +\s+33a:\s+cb 96\s+res 2,\(hl\) +\s+33c:\s+dd cb 09 96\s+res 2,\(ix\+9\) +\s+340:\s+fd cb 09 96\s+res 2,\(iy\+9\) +\s+344:\s+cb 97\s+res 2,a +\s+346:\s+cb 90\s+res 2,b +\s+348:\s+cb 91\s+res 2,c +\s+34a:\s+cb 92\s+res 2,d +\s+34c:\s+cb 93\s+res 2,e +\s+34e:\s+cb 94\s+res 2,h +\s+350:\s+cb 95\s+res 2,l +\s+352:\s+cb 9e\s+res 3,\(hl\) +\s+354:\s+dd cb 09 9e\s+res 3,\(ix\+9\) +\s+358:\s+fd cb 09 9e\s+res 3,\(iy\+9\) +\s+35c:\s+cb 9f\s+res 3,a +\s+35e:\s+cb 98\s+res 3,b +\s+360:\s+cb 99\s+res 3,c +\s+362:\s+cb 9a\s+res 3,d +\s+364:\s+cb 9b\s+res 3,e +\s+366:\s+cb 9c\s+res 3,h +\s+368:\s+cb 9d\s+res 3,l +\s+36a:\s+cb a6\s+res 4,\(hl\) +\s+36c:\s+dd cb 09 a6\s+res 4,\(ix\+9\) +\s+370:\s+fd cb 09 a6\s+res 4,\(iy\+9\) +\s+374:\s+cb a7\s+res 4,a +\s+376:\s+cb a0\s+res 4,b +\s+378:\s+cb a1\s+res 4,c +\s+37a:\s+cb a2\s+res 4,d +\s+37c:\s+cb a3\s+res 4,e +\s+37e:\s+cb a4\s+res 4,h +\s+380:\s+cb a5\s+res 4,l +\s+382:\s+cb ae\s+res 5,\(hl\) +\s+384:\s+dd cb 09 ae\s+res 5,\(ix\+9\) +\s+388:\s+fd cb 09 ae\s+res 5,\(iy\+9\) +\s+38c:\s+cb af\s+res 5,a +\s+38e:\s+cb a8\s+res 5,b +\s+390:\s+cb a9\s+res 5,c +\s+392:\s+cb aa\s+res 5,d +\s+394:\s+cb ab\s+res 5,e +\s+396:\s+cb ac\s+res 5,h +\s+398:\s+cb ad\s+res 5,l +\s+39a:\s+cb b6\s+res 6,\(hl\) +\s+39c:\s+dd cb 09 b6\s+res 6,\(ix\+9\) +\s+3a0:\s+fd cb 09 b6\s+res 6,\(iy\+9\) +\s+3a4:\s+cb b7\s+res 6,a +\s+3a6:\s+cb b0\s+res 6,b +\s+3a8:\s+cb b1\s+res 6,c +\s+3aa:\s+cb b2\s+res 6,d +\s+3ac:\s+cb b3\s+res 6,e +\s+3ae:\s+cb b4\s+res 6,h +\s+3b0:\s+cb b5\s+res 6,l +\s+3b2:\s+cb be\s+res 7,\(hl\) +\s+3b4:\s+dd cb 09 be\s+res 7,\(ix\+9\) +\s+3b8:\s+fd cb 09 be\s+res 7,\(iy\+9\) +\s+3bc:\s+cb bf\s+res 7,a +\s+3be:\s+cb b8\s+res 7,b +\s+3c0:\s+cb b9\s+res 7,c +\s+3c2:\s+cb ba\s+res 7,d +\s+3c4:\s+cb bb\s+res 7,e +\s+3c6:\s+cb bc\s+res 7,h +\s+3c8:\s+cb bd\s+res 7,l +\s+3ca:\s+c9\s+ret +\s+3cb:\s+d8\s+ret c +\s+3cc:\s+f8\s+ret m +\s+3cd:\s+d0\s+ret nc +\s+3ce:\s+c0\s+ret nz +\s+3cf:\s+f0\s+ret p +\s+3d0:\s+e8\s+ret pe +\s+3d1:\s+e0\s+ret po +\s+3d2:\s+c8\s+ret z +\s+3d3:\s+ed 4d\s+reti +\s+3d5:\s+ed 45\s+retn +\s+3d7:\s+cb 16\s+rl \(hl\) +\s+3d9:\s+dd cb 09 16\s+rl \(ix\+9\) +\s+3dd:\s+fd cb 09 16\s+rl \(iy\+9\) +\s+3e1:\s+cb 17\s+rl a +\s+3e3:\s+cb 10\s+rl b +\s+3e5:\s+cb 11\s+rl c +\s+3e7:\s+cb 12\s+rl d +\s+3e9:\s+cb 13\s+rl e +\s+3eb:\s+cb 14\s+rl h +\s+3ed:\s+cb 15\s+rl l +\s+3ef:\s+17\s+rla +\s+3f0:\s+cb 06\s+rlc \(hl\) +\s+3f2:\s+dd cb 09 06\s+rlc \(ix\+9\) +\s+3f6:\s+fd cb 09 06\s+rlc \(iy\+9\) +\s+3fa:\s+cb 07\s+rlc a +\s+3fc:\s+cb 00\s+rlc b +\s+3fe:\s+cb 01\s+rlc c +\s+400:\s+cb 02\s+rlc d +\s+402:\s+cb 03\s+rlc e +\s+404:\s+cb 04\s+rlc h +\s+406:\s+cb 05\s+rlc l +\s+408:\s+07\s+rlca +\s+409:\s+ed 6f\s+rld +\s+40b:\s+cb 1e\s+rr \(hl\) +\s+40d:\s+dd cb 09 1e\s+rr \(ix\+9\) +\s+411:\s+fd cb 09 1e\s+rr \(iy\+9\) +\s+415:\s+cb 1f\s+rr a +\s+417:\s+cb 18\s+rr b +\s+419:\s+cb 19\s+rr c +\s+41b:\s+cb 1a\s+rr d +\s+41d:\s+cb 1b\s+rr e +\s+41f:\s+cb 1c\s+rr h +\s+421:\s+cb 1d\s+rr l +\s+423:\s+1f\s+rra +\s+424:\s+cb 0e\s+rrc \(hl\) +\s+426:\s+dd cb 09 0e\s+rrc \(ix\+9\) +\s+42a:\s+fd cb 09 0e\s+rrc \(iy\+9\) +\s+42e:\s+cb 0f\s+rrc a +\s+430:\s+cb 08\s+rrc b +\s+432:\s+cb 09\s+rrc c +\s+434:\s+cb 0a\s+rrc d +\s+436:\s+cb 0b\s+rrc e +\s+438:\s+cb 0c\s+rrc h +\s+43a:\s+cb 0d\s+rrc l +\s+43c:\s+0f\s+rrca +\s+43d:\s+ed 67\s+rrd +\s+43f:\s+c7\s+rst 0x00 +\s+440:\s+cf\s+rst 0x08 +\s+441:\s+d7\s+rst 0x10 +\s+442:\s+df\s+rst 0x18 +\s+443:\s+e7\s+rst 0x20 +\s+444:\s+ef\s+rst 0x28 +\s+445:\s+f7\s+rst 0x30 +\s+446:\s+ff\s+rst 0x38 +\s+447:\s+9e\s+sbc a,\(hl\) +\s+448:\s+dd 9e 09\s+sbc a,\(ix\+9\) +\s+44b:\s+fd 9e 09\s+sbc a,\(iy\+9\) +\s+44e:\s+de 03\s+sbc a,0x03 +\s+450:\s+9f\s+sbc a,a +\s+451:\s+98\s+sbc a,b +\s+452:\s+99\s+sbc a,c +\s+453:\s+9a\s+sbc a,d +\s+454:\s+9b\s+sbc a,e +\s+455:\s+9c\s+sbc a,h +\s+456:\s+9d\s+sbc a,l +\s+457:\s+ed 42\s+sbc hl,bc +\s+459:\s+ed 52\s+sbc hl,de +\s+45b:\s+ed 62\s+sbc hl,hl +\s+45d:\s+ed 72\s+sbc hl,sp +\s+45f:\s+37\s+scf +\s+460:\s+cb c6\s+set 0,\(hl\) +\s+462:\s+dd cb 09 c6\s+set 0,\(ix\+9\) +\s+466:\s+fd cb 09 c6\s+set 0,\(iy\+9\) +\s+46a:\s+cb c7\s+set 0,a +\s+46c:\s+cb c0\s+set 0,b +\s+46e:\s+cb c1\s+set 0,c +\s+470:\s+cb c2\s+set 0,d +\s+472:\s+cb c3\s+set 0,e +\s+474:\s+cb c4\s+set 0,h +\s+476:\s+cb c5\s+set 0,l +\s+478:\s+cb ce\s+set 1,\(hl\) +\s+47a:\s+dd cb 09 ce\s+set 1,\(ix\+9\) +\s+47e:\s+fd cb 09 ce\s+set 1,\(iy\+9\) +\s+482:\s+cb cf\s+set 1,a +\s+484:\s+cb c8\s+set 1,b +\s+486:\s+cb c9\s+set 1,c +\s+488:\s+cb ca\s+set 1,d +\s+48a:\s+cb cb\s+set 1,e +\s+48c:\s+cb cc\s+set 1,h +\s+48e:\s+cb cd\s+set 1,l +\s+490:\s+cb d6\s+set 2,\(hl\) +\s+492:\s+dd cb 09 d6\s+set 2,\(ix\+9\) +\s+496:\s+fd cb 09 d6\s+set 2,\(iy\+9\) +\s+49a:\s+cb d7\s+set 2,a +\s+49c:\s+cb d0\s+set 2,b +\s+49e:\s+cb d1\s+set 2,c +\s+4a0:\s+cb d2\s+set 2,d +\s+4a2:\s+cb d3\s+set 2,e +\s+4a4:\s+cb d4\s+set 2,h +\s+4a6:\s+cb d5\s+set 2,l +\s+4a8:\s+cb de\s+set 3,\(hl\) +\s+4aa:\s+dd cb 09 de\s+set 3,\(ix\+9\) +\s+4ae:\s+fd cb 09 de\s+set 3,\(iy\+9\) +\s+4b2:\s+cb df\s+set 3,a +\s+4b4:\s+cb d8\s+set 3,b +\s+4b6:\s+cb d9\s+set 3,c +\s+4b8:\s+cb da\s+set 3,d +\s+4ba:\s+cb db\s+set 3,e +\s+4bc:\s+cb dc\s+set 3,h +\s+4be:\s+cb dd\s+set 3,l +\s+4c0:\s+cb e6\s+set 4,\(hl\) +\s+4c2:\s+dd cb 09 e6\s+set 4,\(ix\+9\) +\s+4c6:\s+fd cb 09 e6\s+set 4,\(iy\+9\) +\s+4ca:\s+cb e7\s+set 4,a +\s+4cc:\s+cb e0\s+set 4,b +\s+4ce:\s+cb e1\s+set 4,c +\s+4d0:\s+cb e2\s+set 4,d +\s+4d2:\s+cb e3\s+set 4,e +\s+4d4:\s+cb e4\s+set 4,h +\s+4d6:\s+cb e5\s+set 4,l +\s+4d8:\s+cb ee\s+set 5,\(hl\) +\s+4da:\s+dd cb 09 ee\s+set 5,\(ix\+9\) +\s+4de:\s+fd cb 09 ee\s+set 5,\(iy\+9\) +\s+4e2:\s+cb ef\s+set 5,a +\s+4e4:\s+cb e8\s+set 5,b +\s+4e6:\s+cb e9\s+set 5,c +\s+4e8:\s+cb ea\s+set 5,d +\s+4ea:\s+cb eb\s+set 5,e +\s+4ec:\s+cb ec\s+set 5,h +\s+4ee:\s+cb ed\s+set 5,l +\s+4f0:\s+cb f6\s+set 6,\(hl\) +\s+4f2:\s+dd cb 09 f6\s+set 6,\(ix\+9\) +\s+4f6:\s+fd cb 09 f6\s+set 6,\(iy\+9\) +\s+4fa:\s+cb f7\s+set 6,a +\s+4fc:\s+cb f0\s+set 6,b +\s+4fe:\s+cb f1\s+set 6,c +\s+500:\s+cb f2\s+set 6,d +\s+502:\s+cb f3\s+set 6,e +\s+504:\s+cb f4\s+set 6,h +\s+506:\s+cb f5\s+set 6,l +\s+508:\s+cb fe\s+set 7,\(hl\) +\s+50a:\s+dd cb 09 fe\s+set 7,\(ix\+9\) +\s+50e:\s+fd cb 09 fe\s+set 7,\(iy\+9\) +\s+512:\s+cb ff\s+set 7,a +\s+514:\s+cb f8\s+set 7,b +\s+516:\s+cb f9\s+set 7,c +\s+518:\s+cb fa\s+set 7,d +\s+51a:\s+cb fb\s+set 7,e +\s+51c:\s+cb fc\s+set 7,h +\s+51e:\s+cb fd\s+set 7,l +\s+520:\s+cb 26\s+sla \(hl\) +\s+522:\s+dd cb 09 26\s+sla \(ix\+9\) +\s+526:\s+fd cb 09 26\s+sla \(iy\+9\) +\s+52a:\s+cb 27\s+sla a +\s+52c:\s+cb 20\s+sla b +\s+52e:\s+cb 21\s+sla c +\s+530:\s+cb 22\s+sla d +\s+532:\s+cb 23\s+sla e +\s+534:\s+cb 24\s+sla h +\s+536:\s+cb 25\s+sla l +\s+538:\s+cb 2e\s+sra \(hl\) +\s+53a:\s+dd cb 09 2e\s+sra \(ix\+9\) +\s+53e:\s+fd cb 09 2e\s+sra \(iy\+9\) +\s+542:\s+cb 2f\s+sra a +\s+544:\s+cb 28\s+sra b +\s+546:\s+cb 29\s+sra c +\s+548:\s+cb 2a\s+sra d +\s+54a:\s+cb 2b\s+sra e +\s+54c:\s+cb 2c\s+sra h +\s+54e:\s+cb 2d\s+sra l +\s+550:\s+cb 3e\s+srl \(hl\) +\s+552:\s+dd cb 09 3e\s+srl \(ix\+9\) +\s+556:\s+fd cb 09 3e\s+srl \(iy\+9\) +\s+55a:\s+cb 3f\s+srl a +\s+55c:\s+cb 38\s+srl b +\s+55e:\s+cb 39\s+srl c +\s+560:\s+cb 3a\s+srl d +\s+562:\s+cb 3b\s+srl e +\s+564:\s+cb 3c\s+srl h +\s+566:\s+cb 3d\s+srl l +\s+568:\s+96\s+sub \(hl\) +\s+569:\s+dd 96 09\s+sub \(ix\+9\) +\s+56c:\s+fd 96 09\s+sub \(iy\+9\) +\s+56f:\s+d6 03\s+sub 0x03 +\s+571:\s+97\s+sub a +\s+572:\s+90\s+sub b +\s+573:\s+91\s+sub c +\s+574:\s+92\s+sub d +\s+575:\s+93\s+sub e +\s+576:\s+94\s+sub h +\s+577:\s+95\s+sub l +\s+578:\s+ae\s+xor \(hl\) +\s+579:\s+dd ae 09\s+xor \(ix\+9\) +\s+57c:\s+fd ae 09\s+xor \(iy\+9\) +\s+57f:\s+ee 03\s+xor 0x03 +\s+581:\s+af\s+xor a +\s+582:\s+a8\s+xor b +\s+583:\s+a9\s+xor c +\s+584:\s+aa\s+xor d +\s+585:\s+ab\s+xor e +\s+586:\s+ac\s+xor h +\s+587:\s+ad\s+xor l diff --git a/gas/testsuite/gas/z80/z80.exp b/gas/testsuite/gas/z80/z80.exp index 3ed7348..334d7f9e 100644 --- a/gas/testsuite/gas/z80/z80.exp +++ b/gas/testsuite/gas/z80/z80.exp @@ -19,10 +19,14 @@ if [istarget z80-*-*] then { # test redefinitions run_dump_test "redef" +# test .set redefinitions + run_dump_test "set" # test parsing of equ definitions run_dump_test "equ" # test parsing of " and ' run_dump_test "quotes" +# test data definition directives + run_dump_test "data" # test suffixes run_dump_test "suffix" # test assembling and disassembling instructions involving offsets @@ -47,7 +51,51 @@ if [istarget z80-*-*] then { run_dump_test "branch" # test for input and output instructions run_dump_test "inout" +# test for strings + run_dump_test "strings" +# test for dollar labels + run_dump_test "dollar" +# test for relocations + run_dump_test "z80_reloc" +# test for absolutely all documented instructions of Z80 + run_dump_test "z80_doc" +# test for undocumented instructions like RLC (IX+3),A + run_dump_test "z80_op_ii_ld" +# test for undocumented instructions SLI/SLL + run_dump_test "z80_sli" +# test for undocumented instruction IN F,(C) + run_dump_test "z80_in_f_c" +# test for undocumented instruction OUT (C),0 + run_dump_test "z80_out_c_0" +# test for instructions with index register halves + run_dump_test "z80_ii8" #test for other instructions run_dump_test "misc" gas_test_error "ill_op.s" "" "Illegal operand: ld hl,(sp+0)" +# test for all Z80 documented instructions for R800 + run_dump_test "r800_z80_doc" +# test for R800 instructions with index register halves + run_dump_test "r800_ii8" +# test for R800 extra instructions + run_dump_test "r800_extra" +#test for Z180 instructions + run_dump_test "z180" +#test for Z80 instructions while compiling for Z180 + run_dump_test "z180_z80_doc" +#test for eZ80 instructions in Z80 mode + run_dump_test "ez80_z80_all" +#test for eZ80 instructions with sufficies in Z80 mode + run_dump_test "ez80_z80_suf" +#test for eZ80 instructions in ADL mode + run_dump_test "ez80_adl_all" +#test for eZ80 instructions with sufficies in ADL mode + run_dump_test "ez80_adl_suf" +# test for SDCC compatibility mode + run_dump_test "sdcc" +# test for colonless labels + run_dump_test "colonless" +# test for FP math48 + run_dump_test "fp_math48" +# test for FP zeda32 + run_dump_test "fp_zeda32" } diff --git a/gas/testsuite/gas/z80/z80_doc.d b/gas/testsuite/gas/z80/z80_doc.d new file mode 100644 index 0000000..935f68e --- /dev/null +++ b/gas/testsuite/gas/z80/z80_doc.d @@ -0,0 +1,705 @@ +#as: -z80 -without-inst=sli,op-ii-ld,idx-reg-halves,in-f-c,out-c-0 +#objdump: -d +#name: All Z80 documented instructions + +.*: .* + +Disassembly of section .text: + +0+ <.text>: +\s+0:\s+8e\s+adc a,\(hl\) +\s+1:\s+dd 8e 09\s+adc a,\(ix\+9\) +\s+4:\s+fd 8e 09\s+adc a,\(iy\+9\) +\s+7:\s+ce 03\s+adc a,0x03 +\s+9:\s+8f\s+adc a,a +\s+a:\s+88\s+adc a,b +\s+b:\s+89\s+adc a,c +\s+c:\s+8a\s+adc a,d +\s+d:\s+8b\s+adc a,e +\s+e:\s+8c\s+adc a,h +\s+f:\s+8d\s+adc a,l +\s+10:\s+ed 4a\s+adc hl,bc +\s+12:\s+ed 5a\s+adc hl,de +\s+14:\s+ed 6a\s+adc hl,hl +\s+16:\s+ed 7a\s+adc hl,sp +\s+18:\s+86\s+add a,\(hl\) +\s+19:\s+dd 86 09\s+add a,\(ix\+9\) +\s+1c:\s+fd 86 09\s+add a,\(iy\+9\) +\s+1f:\s+c6 03\s+add a,0x03 +\s+21:\s+87\s+add a,a +\s+22:\s+80\s+add a,b +\s+23:\s+81\s+add a,c +\s+24:\s+82\s+add a,d +\s+25:\s+83\s+add a,e +\s+26:\s+84\s+add a,h +\s+27:\s+85\s+add a,l +\s+28:\s+09\s+add hl,bc +\s+29:\s+19\s+add hl,de +\s+2a:\s+29\s+add hl,hl +\s+2b:\s+39\s+add hl,sp +\s+2c:\s+dd 09\s+add ix,bc +\s+2e:\s+dd 19\s+add ix,de +\s+30:\s+dd 29\s+add ix,ix +\s+32:\s+dd 39\s+add ix,sp +\s+34:\s+fd 09\s+add iy,bc +\s+36:\s+fd 19\s+add iy,de +\s+38:\s+fd 29\s+add iy,iy +\s+3a:\s+fd 39\s+add iy,sp +\s+3c:\s+a6\s+and \(hl\) +\s+3d:\s+dd a6 09\s+and \(ix\+9\) +\s+40:\s+fd a6 09\s+and \(iy\+9\) +\s+43:\s+e6 03\s+and 0x03 +\s+45:\s+a7\s+and a +\s+46:\s+a0\s+and b +\s+47:\s+a1\s+and c +\s+48:\s+a2\s+and d +\s+49:\s+a3\s+and e +\s+4a:\s+a4\s+and h +\s+4b:\s+a5\s+and l +\s+4c:\s+cb 46\s+bit 0,\(hl\) +\s+4e:\s+dd cb 09 46\s+bit 0,\(ix\+9\) +\s+52:\s+fd cb 09 46\s+bit 0,\(iy\+9\) +\s+56:\s+cb 47\s+bit 0,a +\s+58:\s+cb 40\s+bit 0,b +\s+5a:\s+cb 41\s+bit 0,c +\s+5c:\s+cb 42\s+bit 0,d +\s+5e:\s+cb 43\s+bit 0,e +\s+60:\s+cb 44\s+bit 0,h +\s+62:\s+cb 45\s+bit 0,l +\s+64:\s+cb 4e\s+bit 1,\(hl\) +\s+66:\s+dd cb 09 4e\s+bit 1,\(ix\+9\) +\s+6a:\s+fd cb 09 4e\s+bit 1,\(iy\+9\) +\s+6e:\s+cb 4f\s+bit 1,a +\s+70:\s+cb 48\s+bit 1,b +\s+72:\s+cb 49\s+bit 1,c +\s+74:\s+cb 4a\s+bit 1,d +\s+76:\s+cb 4b\s+bit 1,e +\s+78:\s+cb 4c\s+bit 1,h +\s+7a:\s+cb 4d\s+bit 1,l +\s+7c:\s+cb 56\s+bit 2,\(hl\) +\s+7e:\s+dd cb 09 56\s+bit 2,\(ix\+9\) +\s+82:\s+fd cb 09 56\s+bit 2,\(iy\+9\) +\s+86:\s+cb 57\s+bit 2,a +\s+88:\s+cb 50\s+bit 2,b +\s+8a:\s+cb 51\s+bit 2,c +\s+8c:\s+cb 52\s+bit 2,d +\s+8e:\s+cb 53\s+bit 2,e +\s+90:\s+cb 54\s+bit 2,h +\s+92:\s+cb 55\s+bit 2,l +\s+94:\s+cb 5e\s+bit 3,\(hl\) +\s+96:\s+dd cb 09 5e\s+bit 3,\(ix\+9\) +\s+9a:\s+fd cb 09 5e\s+bit 3,\(iy\+9\) +\s+9e:\s+cb 5f\s+bit 3,a +\s+a0:\s+cb 58\s+bit 3,b +\s+a2:\s+cb 59\s+bit 3,c +\s+a4:\s+cb 5a\s+bit 3,d +\s+a6:\s+cb 5b\s+bit 3,e +\s+a8:\s+cb 5c\s+bit 3,h +\s+aa:\s+cb 5d\s+bit 3,l +\s+ac:\s+cb 66\s+bit 4,\(hl\) +\s+ae:\s+dd cb 09 66\s+bit 4,\(ix\+9\) +\s+b2:\s+fd cb 09 66\s+bit 4,\(iy\+9\) +\s+b6:\s+cb 67\s+bit 4,a +\s+b8:\s+cb 60\s+bit 4,b +\s+ba:\s+cb 61\s+bit 4,c +\s+bc:\s+cb 62\s+bit 4,d +\s+be:\s+cb 63\s+bit 4,e +\s+c0:\s+cb 64\s+bit 4,h +\s+c2:\s+cb 65\s+bit 4,l +\s+c4:\s+cb 6e\s+bit 5,\(hl\) +\s+c6:\s+dd cb 09 6e\s+bit 5,\(ix\+9\) +\s+ca:\s+fd cb 09 6e\s+bit 5,\(iy\+9\) +\s+ce:\s+cb 6f\s+bit 5,a +\s+d0:\s+cb 68\s+bit 5,b +\s+d2:\s+cb 69\s+bit 5,c +\s+d4:\s+cb 6a\s+bit 5,d +\s+d6:\s+cb 6b\s+bit 5,e +\s+d8:\s+cb 6c\s+bit 5,h +\s+da:\s+cb 6d\s+bit 5,l +\s+dc:\s+cb 76\s+bit 6,\(hl\) +\s+de:\s+dd cb 09 76\s+bit 6,\(ix\+9\) +\s+e2:\s+fd cb 09 76\s+bit 6,\(iy\+9\) +\s+e6:\s+cb 77\s+bit 6,a +\s+e8:\s+cb 70\s+bit 6,b +\s+ea:\s+cb 71\s+bit 6,c +\s+ec:\s+cb 72\s+bit 6,d +\s+ee:\s+cb 73\s+bit 6,e +\s+f0:\s+cb 74\s+bit 6,h +\s+f2:\s+cb 75\s+bit 6,l +\s+f4:\s+cb 7e\s+bit 7,\(hl\) +\s+f6:\s+dd cb 09 7e\s+bit 7,\(ix\+9\) +\s+fa:\s+fd cb 09 7e\s+bit 7,\(iy\+9\) +\s+fe:\s+cb 7f\s+bit 7,a +\s+100:\s+cb 78\s+bit 7,b +\s+102:\s+cb 79\s+bit 7,c +\s+104:\s+cb 7a\s+bit 7,d +\s+106:\s+cb 7b\s+bit 7,e +\s+108:\s+cb 7c\s+bit 7,h +\s+10a:\s+cb 7d\s+bit 7,l +\s+10c:\s+cd 34 12\s+call 0x1234 +\s+10f:\s+dc 34 12\s+call c,0x1234 +\s+112:\s+fc 34 12\s+call m,0x1234 +\s+115:\s+d4 34 12\s+call nc,0x1234 +\s+118:\s+c4 34 12\s+call nz,0x1234 +\s+11b:\s+f4 34 12\s+call p,0x1234 +\s+11e:\s+ec 34 12\s+call pe,0x1234 +\s+121:\s+e4 34 12\s+call po,0x1234 +\s+124:\s+cc 34 12\s+call z,0x1234 +\s+127:\s+3f\s+ccf +\s+128:\s+be\s+cp \(hl\) +\s+129:\s+dd be 09\s+cp \(ix\+9\) +\s+12c:\s+fd be 09\s+cp \(iy\+9\) +\s+12f:\s+fe 03\s+cp 0x03 +\s+131:\s+bf\s+cp a +\s+132:\s+b8\s+cp b +\s+133:\s+b9\s+cp c +\s+134:\s+ba\s+cp d +\s+135:\s+bb\s+cp e +\s+136:\s+bc\s+cp h +\s+137:\s+bd\s+cp l +\s+138:\s+ed a9\s+cpd +\s+13a:\s+ed b9\s+cpdr +\s+13c:\s+ed a1\s+cpi +\s+13e:\s+ed b1\s+cpir +\s+140:\s+2f\s+cpl +\s+141:\s+27\s+daa +\s+142:\s+35\s+dec \(hl\) +\s+143:\s+dd 35 09\s+dec \(ix\+9\) +\s+146:\s+fd 35 09\s+dec \(iy\+9\) +\s+149:\s+3d\s+dec a +\s+14a:\s+05\s+dec b +\s+14b:\s+0b\s+dec bc +\s+14c:\s+0d\s+dec c +\s+14d:\s+15\s+dec d +\s+14e:\s+1b\s+dec de +\s+14f:\s+1d\s+dec e +\s+150:\s+25\s+dec h +\s+151:\s+2b\s+dec hl +\s+152:\s+dd 2b\s+dec ix +\s+154:\s+fd 2b\s+dec iy +\s+156:\s+2d\s+dec l +\s+157:\s+3b\s+dec sp +\s+158:\s+f3\s+di +\s+159:\s+10 05\s+djnz 0x0160 +\s+15b:\s+fb\s+ei +\s+15c:\s+e3\s+ex \(sp\),hl +\s+15d:\s+dd e3\s+ex \(sp\),ix +\s+15f:\s+fd e3\s+ex \(sp\),iy +\s+161:\s+08\s+ex af,af' +\s+162:\s+eb\s+ex de,hl +\s+163:\s+d9\s+exx +\s+164:\s+76\s+halt +\s+165:\s+ed 46\s+im 0 +\s+167:\s+ed 56\s+im 1 +\s+169:\s+ed 5e\s+im 2 +\s+16b:\s+ed 78\s+in a,\(c\) +\s+16d:\s+db 03\s+in a,\(0x03\) +\s+16f:\s+ed 40\s+in b,\(c\) +\s+171:\s+ed 48\s+in c,\(c\) +\s+173:\s+ed 50\s+in d,\(c\) +\s+175:\s+ed 58\s+in e,\(c\) +\s+177:\s+ed 60\s+in h,\(c\) +\s+179:\s+ed 68\s+in l,\(c\) +\s+17b:\s+34\s+inc \(hl\) +\s+17c:\s+dd 34 09\s+inc \(ix\+9\) +\s+17f:\s+fd 34 09\s+inc \(iy\+9\) +\s+182:\s+3c\s+inc a +\s+183:\s+04\s+inc b +\s+184:\s+03\s+inc bc +\s+185:\s+0c\s+inc c +\s+186:\s+14\s+inc d +\s+187:\s+13\s+inc de +\s+188:\s+1c\s+inc e +\s+189:\s+24\s+inc h +\s+18a:\s+23\s+inc hl +\s+18b:\s+dd 23\s+inc ix +\s+18d:\s+fd 23\s+inc iy +\s+18f:\s+2c\s+inc l +\s+190:\s+33\s+inc sp +\s+191:\s+ed aa\s+ind +\s+193:\s+ed ba\s+indr +\s+195:\s+ed a2\s+ini +\s+197:\s+ed b2\s+inir +\s+199:\s+e9\s+jp \(hl\) +\s+19a:\s+dd e9\s+jp \(ix\) +\s+19c:\s+fd e9\s+jp \(iy\) +\s+19e:\s+c3 34 12\s+jp 0x1234 +\s+1a1:\s+da 34 12\s+jp c,0x1234 +\s+1a4:\s+fa 34 12\s+jp m,0x1234 +\s+1a7:\s+d2 34 12\s+jp nc,0x1234 +\s+1aa:\s+c2 34 12\s+jp nz,0x1234 +\s+1ad:\s+f2 34 12\s+jp p,0x1234 +\s+1b0:\s+ea 34 12\s+jp pe,0x1234 +\s+1b3:\s+e2 34 12\s+jp po,0x1234 +\s+1b6:\s+ca 34 12\s+jp z,0x1234 +\s+1b9:\s+18 05\s+jr 0x01c0 +\s+1bb:\s+38 05\s+jr c,0x01c2 +\s+1bd:\s+30 05\s+jr nc,0x01c4 +\s+1bf:\s+20 05\s+jr nz,0x01c6 +\s+1c1:\s+28 05\s+jr z,0x01c8 +\s+1c3:\s+32 34 12\s+ld \(0x1234\),a +\s+1c6:\s+ed 43 34 12\s+ld \(0x1234\),bc +\s+1ca:\s+ed 53 34 12\s+ld \(0x1234\),de +\s+1ce:\s+22 34 12\s+ld \(0x1234\),hl +\s+1d1:\s+dd 22 34 12\s+ld \(0x1234\),ix +\s+1d5:\s+fd 22 34 12\s+ld \(0x1234\),iy +\s+1d9:\s+ed 73 34 12\s+ld \(0x1234\),sp +\s+1dd:\s+02\s+ld \(bc\),a +\s+1de:\s+12\s+ld \(de\),a +\s+1df:\s+36 03\s+ld \(hl\),0x03 +\s+1e1:\s+77\s+ld \(hl\),a +\s+1e2:\s+70\s+ld \(hl\),b +\s+1e3:\s+71\s+ld \(hl\),c +\s+1e4:\s+72\s+ld \(hl\),d +\s+1e5:\s+73\s+ld \(hl\),e +\s+1e6:\s+74\s+ld \(hl\),h +\s+1e7:\s+75\s+ld \(hl\),l +\s+1e8:\s+dd 36 09 03\s+ld \(ix\+9\),0x03 +\s+1ec:\s+dd 77 09\s+ld \(ix\+9\),a +\s+1ef:\s+dd 70 09\s+ld \(ix\+9\),b +\s+1f2:\s+dd 71 09\s+ld \(ix\+9\),c +\s+1f5:\s+dd 72 09\s+ld \(ix\+9\),d +\s+1f8:\s+dd 73 09\s+ld \(ix\+9\),e +\s+1fb:\s+dd 74 09\s+ld \(ix\+9\),h +\s+1fe:\s+dd 75 09\s+ld \(ix\+9\),l +\s+201:\s+fd 36 09 03\s+ld \(iy\+9\),0x03 +\s+205:\s+fd 77 09\s+ld \(iy\+9\),a +\s+208:\s+fd 70 09\s+ld \(iy\+9\),b +\s+20b:\s+fd 71 09\s+ld \(iy\+9\),c +\s+20e:\s+fd 72 09\s+ld \(iy\+9\),d +\s+211:\s+fd 73 09\s+ld \(iy\+9\),e +\s+214:\s+fd 74 09\s+ld \(iy\+9\),h +\s+217:\s+fd 75 09\s+ld \(iy\+9\),l +\s+21a:\s+3a 34 12\s+ld a,\(0x1234\) +\s+21d:\s+0a\s+ld a,\(bc\) +\s+21e:\s+1a\s+ld a,\(de\) +\s+21f:\s+7e\s+ld a,\(hl\) +\s+220:\s+dd 7e 09\s+ld a,\(ix\+9\) +\s+223:\s+fd 7e 09\s+ld a,\(iy\+9\) +\s+226:\s+3e 03\s+ld a,0x03 +\s+228:\s+7f\s+ld a,a +\s+229:\s+78\s+ld a,b +\s+22a:\s+79\s+ld a,c +\s+22b:\s+7a\s+ld a,d +\s+22c:\s+7b\s+ld a,e +\s+22d:\s+7c\s+ld a,h +\s+22e:\s+ed 57\s+ld a,i +\s+230:\s+7d\s+ld a,l +\s+231:\s+ed 5f\s+ld a,r +\s+233:\s+46\s+ld b,\(hl\) +\s+234:\s+dd 46 09\s+ld b,\(ix\+9\) +\s+237:\s+fd 46 09\s+ld b,\(iy\+9\) +\s+23a:\s+06 03\s+ld b,0x03 +\s+23c:\s+47\s+ld b,a +\s+23d:\s+40\s+ld b,b +\s+23e:\s+41\s+ld b,c +\s+23f:\s+42\s+ld b,d +\s+240:\s+43\s+ld b,e +\s+241:\s+44\s+ld b,h +\s+242:\s+45\s+ld b,l +\s+243:\s+ed 4b 34 12\s+ld bc,\(0x1234\) +\s+247:\s+01 34 12\s+ld bc,0x1234 +\s+24a:\s+4e\s+ld c,\(hl\) +\s+24b:\s+dd 4e 09\s+ld c,\(ix\+9\) +\s+24e:\s+fd 4e 09\s+ld c,\(iy\+9\) +\s+251:\s+0e 03\s+ld c,0x03 +\s+253:\s+4f\s+ld c,a +\s+254:\s+48\s+ld c,b +\s+255:\s+49\s+ld c,c +\s+256:\s+4a\s+ld c,d +\s+257:\s+4b\s+ld c,e +\s+258:\s+4c\s+ld c,h +\s+259:\s+4d\s+ld c,l +\s+25a:\s+56\s+ld d,\(hl\) +\s+25b:\s+dd 56 09\s+ld d,\(ix\+9\) +\s+25e:\s+fd 56 09\s+ld d,\(iy\+9\) +\s+261:\s+16 03\s+ld d,0x03 +\s+263:\s+57\s+ld d,a +\s+264:\s+50\s+ld d,b +\s+265:\s+51\s+ld d,c +\s+266:\s+52\s+ld d,d +\s+267:\s+53\s+ld d,e +\s+268:\s+54\s+ld d,h +\s+269:\s+55\s+ld d,l +\s+26a:\s+ed 5b 34 12\s+ld de,\(0x1234\) +\s+26e:\s+11 34 12\s+ld de,0x1234 +\s+271:\s+5e\s+ld e,\(hl\) +\s+272:\s+dd 5e 09\s+ld e,\(ix\+9\) +\s+275:\s+fd 5e 09\s+ld e,\(iy\+9\) +\s+278:\s+1e 03\s+ld e,0x03 +\s+27a:\s+5f\s+ld e,a +\s+27b:\s+58\s+ld e,b +\s+27c:\s+59\s+ld e,c +\s+27d:\s+5a\s+ld e,d +\s+27e:\s+5b\s+ld e,e +\s+27f:\s+5c\s+ld e,h +\s+280:\s+5d\s+ld e,l +\s+281:\s+66\s+ld h,\(hl\) +\s+282:\s+dd 66 09\s+ld h,\(ix\+9\) +\s+285:\s+fd 66 09\s+ld h,\(iy\+9\) +\s+288:\s+26 03\s+ld h,0x03 +\s+28a:\s+67\s+ld h,a +\s+28b:\s+60\s+ld h,b +\s+28c:\s+61\s+ld h,c +\s+28d:\s+62\s+ld h,d +\s+28e:\s+63\s+ld h,e +\s+28f:\s+64\s+ld h,h +\s+290:\s+65\s+ld h,l +\s+291:\s+2a 34 12\s+ld hl,\(0x1234\) +\s+294:\s+21 34 12\s+ld hl,0x1234 +\s+297:\s+ed 47\s+ld i,a +\s+299:\s+dd 2a 34 12\s+ld ix,\(0x1234\) +\s+29d:\s+dd 21 34 12\s+ld ix,0x1234 +\s+2a1:\s+fd 2a 34 12\s+ld iy,\(0x1234\) +\s+2a5:\s+fd 21 34 12\s+ld iy,0x1234 +\s+2a9:\s+6e\s+ld l,\(hl\) +\s+2aa:\s+dd 6e 09\s+ld l,\(ix\+9\) +\s+2ad:\s+fd 6e 09\s+ld l,\(iy\+9\) +\s+2b0:\s+2e 03\s+ld l,0x03 +\s+2b2:\s+6f\s+ld l,a +\s+2b3:\s+68\s+ld l,b +\s+2b4:\s+69\s+ld l,c +\s+2b5:\s+6a\s+ld l,d +\s+2b6:\s+6b\s+ld l,e +\s+2b7:\s+6c\s+ld l,h +\s+2b8:\s+6d\s+ld l,l +\s+2b9:\s+ed 4f\s+ld r,a +\s+2bb:\s+ed 7b 34 12\s+ld sp,\(0x1234\) +\s+2bf:\s+31 34 12\s+ld sp,0x1234 +\s+2c2:\s+f9\s+ld sp,hl +\s+2c3:\s+dd f9\s+ld sp,ix +\s+2c5:\s+fd f9\s+ld sp,iy +\s+2c7:\s+ed a8\s+ldd +\s+2c9:\s+ed b8\s+lddr +\s+2cb:\s+ed a0\s+ldi +\s+2cd:\s+ed b0\s+ldir +\s+2cf:\s+ed 44\s+neg +\s+2d1:\s+00\s+nop +\s+2d2:\s+b6\s+or \(hl\) +\s+2d3:\s+dd b6 09\s+or \(ix\+9\) +\s+2d6:\s+fd b6 09\s+or \(iy\+9\) +\s+2d9:\s+f6 03\s+or 0x03 +\s+2db:\s+b7\s+or a +\s+2dc:\s+b0\s+or b +\s+2dd:\s+b1\s+or c +\s+2de:\s+b2\s+or d +\s+2df:\s+b3\s+or e +\s+2e0:\s+b4\s+or h +\s+2e1:\s+b5\s+or l +\s+2e2:\s+ed bb\s+otdr +\s+2e4:\s+ed b3\s+otir +\s+2e6:\s+ed 79\s+out \(c\),a +\s+2e8:\s+ed 41\s+out \(c\),b +\s+2ea:\s+ed 49\s+out \(c\),c +\s+2ec:\s+ed 51\s+out \(c\),d +\s+2ee:\s+ed 59\s+out \(c\),e +\s+2f0:\s+ed 61\s+out \(c\),h +\s+2f2:\s+ed 69\s+out \(c\),l +\s+2f4:\s+d3 03\s+out \(0x03\),a +\s+2f6:\s+ed ab\s+outd +\s+2f8:\s+ed a3\s+outi +\s+2fa:\s+f1\s+pop af +\s+2fb:\s+c1\s+pop bc +\s+2fc:\s+d1\s+pop de +\s+2fd:\s+e1\s+pop hl +\s+2fe:\s+dd e1\s+pop ix +\s+300:\s+fd e1\s+pop iy +\s+302:\s+f5\s+push af +\s+303:\s+c5\s+push bc +\s+304:\s+d5\s+push de +\s+305:\s+e5\s+push hl +\s+306:\s+dd e5\s+push ix +\s+308:\s+fd e5\s+push iy +\s+30a:\s+cb 86\s+res 0,\(hl\) +\s+30c:\s+dd cb 09 86\s+res 0,\(ix\+9\) +\s+310:\s+fd cb 09 86\s+res 0,\(iy\+9\) +\s+314:\s+cb 87\s+res 0,a +\s+316:\s+cb 80\s+res 0,b +\s+318:\s+cb 81\s+res 0,c +\s+31a:\s+cb 82\s+res 0,d +\s+31c:\s+cb 83\s+res 0,e +\s+31e:\s+cb 84\s+res 0,h +\s+320:\s+cb 85\s+res 0,l +\s+322:\s+cb 8e\s+res 1,\(hl\) +\s+324:\s+dd cb 09 8e\s+res 1,\(ix\+9\) +\s+328:\s+fd cb 09 8e\s+res 1,\(iy\+9\) +\s+32c:\s+cb 8f\s+res 1,a +\s+32e:\s+cb 88\s+res 1,b +\s+330:\s+cb 89\s+res 1,c +\s+332:\s+cb 8a\s+res 1,d +\s+334:\s+cb 8b\s+res 1,e +\s+336:\s+cb 8c\s+res 1,h +\s+338:\s+cb 8d\s+res 1,l +\s+33a:\s+cb 96\s+res 2,\(hl\) +\s+33c:\s+dd cb 09 96\s+res 2,\(ix\+9\) +\s+340:\s+fd cb 09 96\s+res 2,\(iy\+9\) +\s+344:\s+cb 97\s+res 2,a +\s+346:\s+cb 90\s+res 2,b +\s+348:\s+cb 91\s+res 2,c +\s+34a:\s+cb 92\s+res 2,d +\s+34c:\s+cb 93\s+res 2,e +\s+34e:\s+cb 94\s+res 2,h +\s+350:\s+cb 95\s+res 2,l +\s+352:\s+cb 9e\s+res 3,\(hl\) +\s+354:\s+dd cb 09 9e\s+res 3,\(ix\+9\) +\s+358:\s+fd cb 09 9e\s+res 3,\(iy\+9\) +\s+35c:\s+cb 9f\s+res 3,a +\s+35e:\s+cb 98\s+res 3,b +\s+360:\s+cb 99\s+res 3,c +\s+362:\s+cb 9a\s+res 3,d +\s+364:\s+cb 9b\s+res 3,e +\s+366:\s+cb 9c\s+res 3,h +\s+368:\s+cb 9d\s+res 3,l +\s+36a:\s+cb a6\s+res 4,\(hl\) +\s+36c:\s+dd cb 09 a6\s+res 4,\(ix\+9\) +\s+370:\s+fd cb 09 a6\s+res 4,\(iy\+9\) +\s+374:\s+cb a7\s+res 4,a +\s+376:\s+cb a0\s+res 4,b +\s+378:\s+cb a1\s+res 4,c +\s+37a:\s+cb a2\s+res 4,d +\s+37c:\s+cb a3\s+res 4,e +\s+37e:\s+cb a4\s+res 4,h +\s+380:\s+cb a5\s+res 4,l +\s+382:\s+cb ae\s+res 5,\(hl\) +\s+384:\s+dd cb 09 ae\s+res 5,\(ix\+9\) +\s+388:\s+fd cb 09 ae\s+res 5,\(iy\+9\) +\s+38c:\s+cb af\s+res 5,a +\s+38e:\s+cb a8\s+res 5,b +\s+390:\s+cb a9\s+res 5,c +\s+392:\s+cb aa\s+res 5,d +\s+394:\s+cb ab\s+res 5,e +\s+396:\s+cb ac\s+res 5,h +\s+398:\s+cb ad\s+res 5,l +\s+39a:\s+cb b6\s+res 6,\(hl\) +\s+39c:\s+dd cb 09 b6\s+res 6,\(ix\+9\) +\s+3a0:\s+fd cb 09 b6\s+res 6,\(iy\+9\) +\s+3a4:\s+cb b7\s+res 6,a +\s+3a6:\s+cb b0\s+res 6,b +\s+3a8:\s+cb b1\s+res 6,c +\s+3aa:\s+cb b2\s+res 6,d +\s+3ac:\s+cb b3\s+res 6,e +\s+3ae:\s+cb b4\s+res 6,h +\s+3b0:\s+cb b5\s+res 6,l +\s+3b2:\s+cb be\s+res 7,\(hl\) +\s+3b4:\s+dd cb 09 be\s+res 7,\(ix\+9\) +\s+3b8:\s+fd cb 09 be\s+res 7,\(iy\+9\) +\s+3bc:\s+cb bf\s+res 7,a +\s+3be:\s+cb b8\s+res 7,b +\s+3c0:\s+cb b9\s+res 7,c +\s+3c2:\s+cb ba\s+res 7,d +\s+3c4:\s+cb bb\s+res 7,e +\s+3c6:\s+cb bc\s+res 7,h +\s+3c8:\s+cb bd\s+res 7,l +\s+3ca:\s+c9\s+ret +\s+3cb:\s+d8\s+ret c +\s+3cc:\s+f8\s+ret m +\s+3cd:\s+d0\s+ret nc +\s+3ce:\s+c0\s+ret nz +\s+3cf:\s+f0\s+ret p +\s+3d0:\s+e8\s+ret pe +\s+3d1:\s+e0\s+ret po +\s+3d2:\s+c8\s+ret z +\s+3d3:\s+ed 4d\s+reti +\s+3d5:\s+ed 45\s+retn +\s+3d7:\s+cb 16\s+rl \(hl\) +\s+3d9:\s+dd cb 09 16\s+rl \(ix\+9\) +\s+3dd:\s+fd cb 09 16\s+rl \(iy\+9\) +\s+3e1:\s+cb 17\s+rl a +\s+3e3:\s+cb 10\s+rl b +\s+3e5:\s+cb 11\s+rl c +\s+3e7:\s+cb 12\s+rl d +\s+3e9:\s+cb 13\s+rl e +\s+3eb:\s+cb 14\s+rl h +\s+3ed:\s+cb 15\s+rl l +\s+3ef:\s+17\s+rla +\s+3f0:\s+cb 06\s+rlc \(hl\) +\s+3f2:\s+dd cb 09 06\s+rlc \(ix\+9\) +\s+3f6:\s+fd cb 09 06\s+rlc \(iy\+9\) +\s+3fa:\s+cb 07\s+rlc a +\s+3fc:\s+cb 00\s+rlc b +\s+3fe:\s+cb 01\s+rlc c +\s+400:\s+cb 02\s+rlc d +\s+402:\s+cb 03\s+rlc e +\s+404:\s+cb 04\s+rlc h +\s+406:\s+cb 05\s+rlc l +\s+408:\s+07\s+rlca +\s+409:\s+ed 6f\s+rld +\s+40b:\s+cb 1e\s+rr \(hl\) +\s+40d:\s+dd cb 09 1e\s+rr \(ix\+9\) +\s+411:\s+fd cb 09 1e\s+rr \(iy\+9\) +\s+415:\s+cb 1f\s+rr a +\s+417:\s+cb 18\s+rr b +\s+419:\s+cb 19\s+rr c +\s+41b:\s+cb 1a\s+rr d +\s+41d:\s+cb 1b\s+rr e +\s+41f:\s+cb 1c\s+rr h +\s+421:\s+cb 1d\s+rr l +\s+423:\s+1f\s+rra +\s+424:\s+cb 0e\s+rrc \(hl\) +\s+426:\s+dd cb 09 0e\s+rrc \(ix\+9\) +\s+42a:\s+fd cb 09 0e\s+rrc \(iy\+9\) +\s+42e:\s+cb 0f\s+rrc a +\s+430:\s+cb 08\s+rrc b +\s+432:\s+cb 09\s+rrc c +\s+434:\s+cb 0a\s+rrc d +\s+436:\s+cb 0b\s+rrc e +\s+438:\s+cb 0c\s+rrc h +\s+43a:\s+cb 0d\s+rrc l +\s+43c:\s+0f\s+rrca +\s+43d:\s+ed 67\s+rrd +\s+43f:\s+c7\s+rst 0x00 +\s+440:\s+cf\s+rst 0x08 +\s+441:\s+d7\s+rst 0x10 +\s+442:\s+df\s+rst 0x18 +\s+443:\s+e7\s+rst 0x20 +\s+444:\s+ef\s+rst 0x28 +\s+445:\s+f7\s+rst 0x30 +\s+446:\s+ff\s+rst 0x38 +\s+447:\s+9e\s+sbc a,\(hl\) +\s+448:\s+dd 9e 09\s+sbc a,\(ix\+9\) +\s+44b:\s+fd 9e 09\s+sbc a,\(iy\+9\) +\s+44e:\s+de 03\s+sbc a,0x03 +\s+450:\s+9f\s+sbc a,a +\s+451:\s+98\s+sbc a,b +\s+452:\s+99\s+sbc a,c +\s+453:\s+9a\s+sbc a,d +\s+454:\s+9b\s+sbc a,e +\s+455:\s+9c\s+sbc a,h +\s+456:\s+9d\s+sbc a,l +\s+457:\s+ed 42\s+sbc hl,bc +\s+459:\s+ed 52\s+sbc hl,de +\s+45b:\s+ed 62\s+sbc hl,hl +\s+45d:\s+ed 72\s+sbc hl,sp +\s+45f:\s+37\s+scf +\s+460:\s+cb c6\s+set 0,\(hl\) +\s+462:\s+dd cb 09 c6\s+set 0,\(ix\+9\) +\s+466:\s+fd cb 09 c6\s+set 0,\(iy\+9\) +\s+46a:\s+cb c7\s+set 0,a +\s+46c:\s+cb c0\s+set 0,b +\s+46e:\s+cb c1\s+set 0,c +\s+470:\s+cb c2\s+set 0,d +\s+472:\s+cb c3\s+set 0,e +\s+474:\s+cb c4\s+set 0,h +\s+476:\s+cb c5\s+set 0,l +\s+478:\s+cb ce\s+set 1,\(hl\) +\s+47a:\s+dd cb 09 ce\s+set 1,\(ix\+9\) +\s+47e:\s+fd cb 09 ce\s+set 1,\(iy\+9\) +\s+482:\s+cb cf\s+set 1,a +\s+484:\s+cb c8\s+set 1,b +\s+486:\s+cb c9\s+set 1,c +\s+488:\s+cb ca\s+set 1,d +\s+48a:\s+cb cb\s+set 1,e +\s+48c:\s+cb cc\s+set 1,h +\s+48e:\s+cb cd\s+set 1,l +\s+490:\s+cb d6\s+set 2,\(hl\) +\s+492:\s+dd cb 09 d6\s+set 2,\(ix\+9\) +\s+496:\s+fd cb 09 d6\s+set 2,\(iy\+9\) +\s+49a:\s+cb d7\s+set 2,a +\s+49c:\s+cb d0\s+set 2,b +\s+49e:\s+cb d1\s+set 2,c +\s+4a0:\s+cb d2\s+set 2,d +\s+4a2:\s+cb d3\s+set 2,e +\s+4a4:\s+cb d4\s+set 2,h +\s+4a6:\s+cb d5\s+set 2,l +\s+4a8:\s+cb de\s+set 3,\(hl\) +\s+4aa:\s+dd cb 09 de\s+set 3,\(ix\+9\) +\s+4ae:\s+fd cb 09 de\s+set 3,\(iy\+9\) +\s+4b2:\s+cb df\s+set 3,a +\s+4b4:\s+cb d8\s+set 3,b +\s+4b6:\s+cb d9\s+set 3,c +\s+4b8:\s+cb da\s+set 3,d +\s+4ba:\s+cb db\s+set 3,e +\s+4bc:\s+cb dc\s+set 3,h +\s+4be:\s+cb dd\s+set 3,l +\s+4c0:\s+cb e6\s+set 4,\(hl\) +\s+4c2:\s+dd cb 09 e6\s+set 4,\(ix\+9\) +\s+4c6:\s+fd cb 09 e6\s+set 4,\(iy\+9\) +\s+4ca:\s+cb e7\s+set 4,a +\s+4cc:\s+cb e0\s+set 4,b +\s+4ce:\s+cb e1\s+set 4,c +\s+4d0:\s+cb e2\s+set 4,d +\s+4d2:\s+cb e3\s+set 4,e +\s+4d4:\s+cb e4\s+set 4,h +\s+4d6:\s+cb e5\s+set 4,l +\s+4d8:\s+cb ee\s+set 5,\(hl\) +\s+4da:\s+dd cb 09 ee\s+set 5,\(ix\+9\) +\s+4de:\s+fd cb 09 ee\s+set 5,\(iy\+9\) +\s+4e2:\s+cb ef\s+set 5,a +\s+4e4:\s+cb e8\s+set 5,b +\s+4e6:\s+cb e9\s+set 5,c +\s+4e8:\s+cb ea\s+set 5,d +\s+4ea:\s+cb eb\s+set 5,e +\s+4ec:\s+cb ec\s+set 5,h +\s+4ee:\s+cb ed\s+set 5,l +\s+4f0:\s+cb f6\s+set 6,\(hl\) +\s+4f2:\s+dd cb 09 f6\s+set 6,\(ix\+9\) +\s+4f6:\s+fd cb 09 f6\s+set 6,\(iy\+9\) +\s+4fa:\s+cb f7\s+set 6,a +\s+4fc:\s+cb f0\s+set 6,b +\s+4fe:\s+cb f1\s+set 6,c +\s+500:\s+cb f2\s+set 6,d +\s+502:\s+cb f3\s+set 6,e +\s+504:\s+cb f4\s+set 6,h +\s+506:\s+cb f5\s+set 6,l +\s+508:\s+cb fe\s+set 7,\(hl\) +\s+50a:\s+dd cb 09 fe\s+set 7,\(ix\+9\) +\s+50e:\s+fd cb 09 fe\s+set 7,\(iy\+9\) +\s+512:\s+cb ff\s+set 7,a +\s+514:\s+cb f8\s+set 7,b +\s+516:\s+cb f9\s+set 7,c +\s+518:\s+cb fa\s+set 7,d +\s+51a:\s+cb fb\s+set 7,e +\s+51c:\s+cb fc\s+set 7,h +\s+51e:\s+cb fd\s+set 7,l +\s+520:\s+cb 26\s+sla \(hl\) +\s+522:\s+dd cb 09 26\s+sla \(ix\+9\) +\s+526:\s+fd cb 09 26\s+sla \(iy\+9\) +\s+52a:\s+cb 27\s+sla a +\s+52c:\s+cb 20\s+sla b +\s+52e:\s+cb 21\s+sla c +\s+530:\s+cb 22\s+sla d +\s+532:\s+cb 23\s+sla e +\s+534:\s+cb 24\s+sla h +\s+536:\s+cb 25\s+sla l +\s+538:\s+cb 2e\s+sra \(hl\) +\s+53a:\s+dd cb 09 2e\s+sra \(ix\+9\) +\s+53e:\s+fd cb 09 2e\s+sra \(iy\+9\) +\s+542:\s+cb 2f\s+sra a +\s+544:\s+cb 28\s+sra b +\s+546:\s+cb 29\s+sra c +\s+548:\s+cb 2a\s+sra d +\s+54a:\s+cb 2b\s+sra e +\s+54c:\s+cb 2c\s+sra h +\s+54e:\s+cb 2d\s+sra l +\s+550:\s+cb 3e\s+srl \(hl\) +\s+552:\s+dd cb 09 3e\s+srl \(ix\+9\) +\s+556:\s+fd cb 09 3e\s+srl \(iy\+9\) +\s+55a:\s+cb 3f\s+srl a +\s+55c:\s+cb 38\s+srl b +\s+55e:\s+cb 39\s+srl c +\s+560:\s+cb 3a\s+srl d +\s+562:\s+cb 3b\s+srl e +\s+564:\s+cb 3c\s+srl h +\s+566:\s+cb 3d\s+srl l +\s+568:\s+96\s+sub \(hl\) +\s+569:\s+dd 96 09\s+sub \(ix\+9\) +\s+56c:\s+fd 96 09\s+sub \(iy\+9\) +\s+56f:\s+d6 03\s+sub 0x03 +\s+571:\s+97\s+sub a +\s+572:\s+90\s+sub b +\s+573:\s+91\s+sub c +\s+574:\s+92\s+sub d +\s+575:\s+93\s+sub e +\s+576:\s+94\s+sub h +\s+577:\s+95\s+sub l +\s+578:\s+ae\s+xor \(hl\) +\s+579:\s+dd ae 09\s+xor \(ix\+9\) +\s+57c:\s+fd ae 09\s+xor \(iy\+9\) +\s+57f:\s+ee 03\s+xor 0x03 +\s+581:\s+af\s+xor a +\s+582:\s+a8\s+xor b +\s+583:\s+a9\s+xor c +\s+584:\s+aa\s+xor d +\s+585:\s+ab\s+xor e +\s+586:\s+ac\s+xor h +\s+587:\s+ad\s+xor l diff --git a/gas/testsuite/gas/z80/z80_doc.s b/gas/testsuite/gas/z80/z80_doc.s new file mode 100644 index 0000000..5f0a159 --- /dev/null +++ b/gas/testsuite/gas/z80/z80_doc.s @@ -0,0 +1,699 @@ + .text + .org 0 + + adc a,(hl) + adc a,(ix+9) + adc a,(iy+9) + adc a,3 + adc a,a + adc a,b + adc a,c + adc a,d + adc a,e + adc a,h + adc a,l + adc hl,bc + adc hl,de + adc hl,hl + adc hl,sp + add a,(hl) + add a,(ix+9) + add a,(iy+9) + add a,3 + add a,a + add a,b + add a,c + add a,d + add a,e + add a,h + add a,l + add hl,bc + add hl,de + add hl,hl + add hl,sp + add ix,bc + add ix,de + add ix,ix + add ix,sp + add iy,bc + add iy,de + add iy,iy + add iy,sp + and (hl) + and (ix+9) + and (iy+9) + and 3 + and a + and b + and c + and d + and e + and h + and l + bit 0,(hl) + bit 0,(ix+9) + bit 0,(iy+9) + bit 0,a + bit 0,b + bit 0,c + bit 0,d + bit 0,e + bit 0,h + bit 0,l + bit 1,(hl) + bit 1,(ix+9) + bit 1,(iy+9) + bit 1,a + bit 1,b + bit 1,c + bit 1,d + bit 1,e + bit 1,h + bit 1,l + bit 2,(hl) + bit 2,(ix+9) + bit 2,(iy+9) + bit 2,a + bit 2,b + bit 2,c + bit 2,d + bit 2,e + bit 2,h + bit 2,l + bit 3,(hl) + bit 3,(ix+9) + bit 3,(iy+9) + bit 3,a + bit 3,b + bit 3,c + bit 3,d + bit 3,e + bit 3,h + bit 3,l + bit 4,(hl) + bit 4,(ix+9) + bit 4,(iy+9) + bit 4,a + bit 4,b + bit 4,c + bit 4,d + bit 4,e + bit 4,h + bit 4,l + bit 5,(hl) + bit 5,(ix+9) + bit 5,(iy+9) + bit 5,a + bit 5,b + bit 5,c + bit 5,d + bit 5,e + bit 5,h + bit 5,l + bit 6,(hl) + bit 6,(ix+9) + bit 6,(iy+9) + bit 6,a + bit 6,b + bit 6,c + bit 6,d + bit 6,e + bit 6,h + bit 6,l + bit 7,(hl) + bit 7,(ix+9) + bit 7,(iy+9) + bit 7,a + bit 7,b + bit 7,c + bit 7,d + bit 7,e + bit 7,h + bit 7,l + call 0x1234 + call c,0x1234 + call m,0x1234 + call nc,0x1234 + call nz,0x1234 + call p,0x1234 + call pe,0x1234 + call po,0x1234 + call z,0x1234 + ccf + cp (hl) + cp (ix+9) + cp (iy+9) + cp 03 + cp a + cp b + cp c + cp d + cp e + cp h + cp l + cpd + cpdr + cpi + cpir + cpl + daa + dec (hl) + dec (ix+9) + dec (iy+9) + dec a + dec b + dec bc + dec c + dec d + dec de + dec e + dec h + dec hl + dec ix + dec iy + dec l + dec sp + di + djnz .+7 + ei + ex (sp),hl + ex (sp),ix + ex (sp),iy + ex af,af' + ex de,hl + exx + halt + im 0 + im 1 + im 2 + in a,(c) + in a,(3) + in b,(c) + in c,(c) + in d,(c) + in e,(c) + in h,(c) + in l,(c) + inc (hl) + inc (ix+9) + inc (iy+9) + inc a + inc b + inc bc + inc c + inc d + inc de + inc e + inc h + inc hl + inc ix + inc iy + inc l + inc sp + ind + indr + ini + inir + jp (hl) + jp (ix) + jp (iy) + jp 0x1234 + jp c,0x1234 + jp m,0x1234 + jp nc,0x1234 + jp nz,0x1234 + jp p,0x1234 + jp pe,0x1234 + jp po,0x1234 + jp z,0x1234 + jr .+7 + jr c,.+7 + jr nc,.+7 + jr nz,.+7 + jr z,.+7 + ld (0x1234),a + ld (0x1234),bc + ld (0x1234),de + ld (0x1234),hl + ld (0x1234),ix + ld (0x1234),iy + ld (0x1234),sp + ld (bc),a + ld (de),a + ld (hl),3 + ld (hl),a + ld (hl),b + ld (hl),c + ld (hl),d + ld (hl),e + ld (hl),h + ld (hl),l + ld (ix+9),3 + ld (ix+9),a + ld (ix+9),b + ld (ix+9),c + ld (ix+9),d + ld (ix+9),e + ld (ix+9),h + ld (ix+9),l + ld (iy+9),3 + ld (iy+9),a + ld (iy+9),b + ld (iy+9),c + ld (iy+9),d + ld (iy+9),e + ld (iy+9),h + ld (iy+9),l + ld a,(0x1234) + ld a,(bc) + ld a,(de) + ld a,(hl) + ld a,(ix+9) + ld a,(iy+9) + ld a,3 + ld a,a + ld a,b + ld a,c + ld a,d + ld a,e + ld a,h + ld a,i + ld a,l + ld a,r + ld b,(hl) + ld b,(ix+9) + ld b,(iy+9) + ld b,3 + ld b,a + ld b,b + ld b,c + ld b,d + ld b,e + ld b,h + ld b,l + ld bc,(0x1234) + ld bc,0x1234 + ld c,(hl) + ld c,(ix+9) + ld c,(iy+9) + ld c,3 + ld c,a + ld c,b + ld c,c + ld c,d + ld c,e + ld c,h + ld c,l + ld d,(hl) + ld d,(ix+9) + ld d,(iy+9) + ld d,3 + ld d,a + ld d,b + ld d,c + ld d,d + ld d,e + ld d,h + ld d,l + ld de,(0x1234) + ld de,0x1234 + ld e,(hl) + ld e,(ix+9) + ld e,(iy+9) + ld e,3 + ld e,a + ld e,b + ld e,c + ld e,d + ld e,e + ld e,h + ld e,l + ld h,(hl) + ld h,(ix+9) + ld h,(iy+9) + ld h,3 + ld h,a + ld h,b + ld h,c + ld h,d + ld h,e + ld h,h + ld h,l + ld hl,(0x1234) + ld hl,0x1234 + ld i,a + ld ix,(0x1234) + ld ix,0x1234 + ld iy,(0x1234) + ld iy,0x1234 + ld l,(hl) + ld l,(ix+9) + ld l,(iy+9) + ld l,3 + ld l,a + ld l,b + ld l,c + ld l,d + ld l,e + ld l,h + ld l,l + ld r,a + ld sp,(0x1234) + ld sp,0x1234 + ld sp,hl + ld sp,ix + ld sp,iy + ldd + lddr + ldi + ldir + neg + nop + or (hl) + or (ix+9) + or (iy+9) + or 3 + or a + or b + or c + or d + or e + or h + or l + otdr + otir + out (c),a + out (c),b + out (c),c + out (c),d + out (c),e + out (c),h + out (c),l + out (3),a + outd + outi + pop af + pop bc + pop de + pop hl + pop ix + pop iy + push af + push bc + push de + push hl + push ix + push iy + res 0,(hl) + res 0,(ix+9) + res 0,(iy+9) + res 0,a + res 0,b + res 0,c + res 0,d + res 0,e + res 0,h + res 0,l + res 1,(hl) + res 1,(ix+9) + res 1,(iy+9) + res 1,a + res 1,b + res 1,c + res 1,d + res 1,e + res 1,h + res 1,l + res 2,(hl) + res 2,(ix+9) + res 2,(iy+9) + res 2,a + res 2,b + res 2,c + res 2,d + res 2,e + res 2,h + res 2,l + res 3,(hl) + res 3,(ix+9) + res 3,(iy+9) + res 3,a + res 3,b + res 3,c + res 3,d + res 3,e + res 3,h + res 3,l + res 4,(hl) + res 4,(ix+9) + res 4,(iy+9) + res 4,a + res 4,b + res 4,c + res 4,d + res 4,e + res 4,h + res 4,l + res 5,(hl) + res 5,(ix+9) + res 5,(iy+9) + res 5,a + res 5,b + res 5,c + res 5,d + res 5,e + res 5,h + res 5,l + res 6,(hl) + res 6,(ix+9) + res 6,(iy+9) + res 6,a + res 6,b + res 6,c + res 6,d + res 6,e + res 6,h + res 6,l + res 7,(hl) + res 7,(ix+9) + res 7,(iy+9) + res 7,a + res 7,b + res 7,c + res 7,d + res 7,e + res 7,h + res 7,l + ret + ret c + ret m + ret nc + ret nz + ret p + ret pe + ret po + ret z + reti + retn + rl (hl) + rl (ix+9) + rl (iy+9) + rl a + rl b + rl c + rl d + rl e + rl h + rl l + rla + rlc (hl) + rlc (ix+9) + rlc (iy+9) + rlc a + rlc b + rlc c + rlc d + rlc e + rlc h + rlc l + rlca + rld + rr (hl) + rr (ix+9) + rr (iy+9) + rr a + rr b + rr c + rr d + rr e + rr h + rr l + rra + rrc (hl) + rrc (ix+9) + rrc (iy+9) + rrc a + rrc b + rrc c + rrc d + rrc e + rrc h + rrc l + rrca + rrd + rst 0x00 + rst 0x08 + rst 0x10 + rst 0x18 + rst 0x20 + rst 0x28 + rst 0x30 + rst 0x38 + sbc a,(hl) + sbc a,(ix+9) + sbc a,(iy+9) + sbc a,3 + sbc a,a + sbc a,b + sbc a,c + sbc a,d + sbc a,e + sbc a,h + sbc a,l + sbc hl,bc + sbc hl,de + sbc hl,hl + sbc hl,sp + scf + set 0,(hl) + set 0,(ix+9) + set 0,(iy+9) + set 0,a + set 0,b + set 0,c + set 0,d + set 0,e + set 0,h + set 0,l + set 1,(hl) + set 1,(ix+9) + set 1,(iy+9) + set 1,a + set 1,b + set 1,c + set 1,d + set 1,e + set 1,h + set 1,l + set 2,(hl) + set 2,(ix+9) + set 2,(iy+9) + set 2,a + set 2,b + set 2,c + set 2,d + set 2,e + set 2,h + set 2,l + set 3,(hl) + set 3,(ix+9) + set 3,(iy+9) + set 3,a + set 3,b + set 3,c + set 3,d + set 3,e + set 3,h + set 3,l + set 4,(hl) + set 4,(ix+9) + set 4,(iy+9) + set 4,a + set 4,b + set 4,c + set 4,d + set 4,e + set 4,h + set 4,l + set 5,(hl) + set 5,(ix+9) + set 5,(iy+9) + set 5,a + set 5,b + set 5,c + set 5,d + set 5,e + set 5,h + set 5,l + set 6,(hl) + set 6,(ix+9) + set 6,(iy+9) + set 6,a + set 6,b + set 6,c + set 6,d + set 6,e + set 6,h + set 6,l + set 7,(hl) + set 7,(ix+9) + set 7,(iy+9) + set 7,a + set 7,b + set 7,c + set 7,d + set 7,e + set 7,h + set 7,l + sla (hl) + sla (ix+9) + sla (iy+9) + sla a + sla b + sla c + sla d + sla e + sla h + sla l + sra (hl) + sra (ix+9) + sra (iy+9) + sra a + sra b + sra c + sra d + sra e + sra h + sra l + srl (hl) + srl (ix+9) + srl (iy+9) + srl a + srl b + srl c + srl d + srl e + srl h + srl l + sub (hl) + sub (ix+9) + sub (iy+9) + sub 3 + sub a + sub b + sub c + sub d + sub e + sub h + sub l + xor (hl) + xor (ix+9) + xor (iy+9) + xor 3 + xor a + xor b + xor c + xor d + xor e + xor h + xor l diff --git a/gas/testsuite/gas/z80/z80_ii8.d b/gas/testsuite/gas/z80/z80_ii8.d new file mode 100644 index 0000000..db668b6 --- /dev/null +++ b/gas/testsuite/gas/z80/z80_ii8.d @@ -0,0 +1,109 @@ +#as: --with-inst=idx-reg-halves +#objdump: -d +#name: halves of index register + +.*:.* + +Disassembly of section .text: + +0+ <.text>: +[ ]+0:[ ]+dd 7c[ ]+ld a,ixh +[ ]+2:[ ]+dd 44[ ]+ld b,ixh +[ ]+4:[ ]+dd 4c[ ]+ld c,ixh +[ ]+6:[ ]+dd 54[ ]+ld d,ixh +[ ]+8:[ ]+dd 5c[ ]+ld e,ixh +[ ]+a:[ ]+dd 64[ ]+ld ixh,ixh +[ ]+c:[ ]+dd 6c[ ]+ld ixl,ixh +[ ]+e:[ ]+dd 7d[ ]+ld a,ixl +[ ]+10:[ ]+dd 45[ ]+ld b,ixl +[ ]+12:[ ]+dd 4d[ ]+ld c,ixl +[ ]+14:[ ]+dd 55[ ]+ld d,ixl +[ ]+16:[ ]+dd 5d[ ]+ld e,ixl +[ ]+18:[ ]+dd 65[ ]+ld ixh,ixl +[ ]+1a:[ ]+dd 6d[ ]+ld ixl,ixl +[ ]+1c:[ ]+fd 7c[ ]+ld a,iyh +[ ]+1e:[ ]+fd 44[ ]+ld b,iyh +[ ]+20:[ ]+fd 4c[ ]+ld c,iyh +[ ]+22:[ ]+fd 54[ ]+ld d,iyh +[ ]+24:[ ]+fd 5c[ ]+ld e,iyh +[ ]+26:[ ]+fd 64[ ]+ld iyh,iyh +[ ]+28:[ ]+fd 6c[ ]+ld iyl,iyh +[ ]+2a:[ ]+fd 7d[ ]+ld a,iyl +[ ]+2c:[ ]+fd 45[ ]+ld b,iyl +[ ]+2e:[ ]+fd 4d[ ]+ld c,iyl +[ ]+30:[ ]+fd 55[ ]+ld d,iyl +[ ]+32:[ ]+fd 5d[ ]+ld e,iyl +[ ]+34:[ ]+fd 65[ ]+ld iyh,iyl +[ ]+36:[ ]+fd 6d[ ]+ld iyl,iyl +[ ]+38:[ ]+dd 67[ ]+ld ixh,a +[ ]+3a:[ ]+dd 60[ ]+ld ixh,b +[ ]+3c:[ ]+dd 61[ ]+ld ixh,c +[ ]+3e:[ ]+dd 62[ ]+ld ixh,d +[ ]+40:[ ]+dd 63[ ]+ld ixh,e +[ ]+42:[ ]+dd 64[ ]+ld ixh,ixh +[ ]+44:[ ]+dd 65[ ]+ld ixh,ixl +[ ]+46:[ ]+dd 26 19[ ]+ld ixh,0x19 +[ ]+49:[ ]+dd 6f[ ]+ld ixl,a +[ ]+4b:[ ]+dd 68[ ]+ld ixl,b +[ ]+4d:[ ]+dd 69[ ]+ld ixl,c +[ ]+4f:[ ]+dd 6a[ ]+ld ixl,d +[ ]+51:[ ]+dd 6b[ ]+ld ixl,e +[ ]+53:[ ]+dd 6c[ ]+ld ixl,ixh +[ ]+55:[ ]+dd 6d[ ]+ld ixl,ixl +[ ]+57:[ ]+dd 2e 19[ ]+ld ixl,0x19 +[ ]+5a:[ ]+fd 67[ ]+ld iyh,a +[ ]+5c:[ ]+fd 60[ ]+ld iyh,b +[ ]+5e:[ ]+fd 61[ ]+ld iyh,c +[ ]+60:[ ]+fd 62[ ]+ld iyh,d +[ ]+62:[ ]+fd 63[ ]+ld iyh,e +[ ]+64:[ ]+fd 64[ ]+ld iyh,iyh +[ ]+66:[ ]+fd 65[ ]+ld iyh,iyl +[ ]+68:[ ]+fd 26 19[ ]+ld iyh,0x19 +[ ]+6b:[ ]+fd 6f[ ]+ld iyl,a +[ ]+6d:[ ]+fd 68[ ]+ld iyl,b +[ ]+6f:[ ]+fd 69[ ]+ld iyl,c +[ ]+71:[ ]+fd 6a[ ]+ld iyl,d +[ ]+73:[ ]+fd 6b[ ]+ld iyl,e +[ ]+75:[ ]+fd 6c[ ]+ld iyl,iyh +[ ]+77:[ ]+fd 6d[ ]+ld iyl,iyl +[ ]+79:[ ]+fd 2e 19[ ]+ld iyl,0x19 +[ ]+7c:[ ]+dd 84[ ]+add a,ixh +[ ]+7e:[ ]+dd 85[ ]+add a,ixl +[ ]+80:[ ]+fd 84[ ]+add a,iyh +[ ]+82:[ ]+fd 85[ ]+add a,iyl +[ ]+84:[ ]+dd 8c[ ]+adc a,ixh +[ ]+86:[ ]+dd 8d[ ]+adc a,ixl +[ ]+88:[ ]+fd 8c[ ]+adc a,iyh +[ ]+8a:[ ]+fd 8d[ ]+adc a,iyl +[ ]+8c:[ ]+dd bc[ ]+cp ixh +[ ]+8e:[ ]+dd bd[ ]+cp ixl +[ ]+90:[ ]+fd bc[ ]+cp iyh +[ ]+92:[ ]+fd bd[ ]+cp iyl +[ ]+94:[ ]+dd 25[ ]+dec ixh +[ ]+96:[ ]+dd 2d[ ]+dec ixl +[ ]+98:[ ]+fd 25[ ]+dec iyh +[ ]+9a:[ ]+fd 2d[ ]+dec iyl +[ ]+9c:[ ]+dd 24[ ]+inc ixh +[ ]+9e:[ ]+dd 2c[ ]+inc ixl +[ ]+a0:[ ]+fd 24[ ]+inc iyh +[ ]+a2:[ ]+fd 2c[ ]+inc iyl +[ ]+a4:[ ]+dd 9c[ ]+sbc a,ixh +[ ]+a6:[ ]+dd 9d[ ]+sbc a,ixl +[ ]+a8:[ ]+fd 9c[ ]+sbc a,iyh +[ ]+aa:[ ]+fd 9d[ ]+sbc a,iyl +[ ]+ac:[ ]+dd 94[ ]+sub ixh +[ ]+ae:[ ]+dd 95[ ]+sub ixl +[ ]+b0:[ ]+fd 94[ ]+sub iyh +[ ]+b2:[ ]+fd 95[ ]+sub iyl +[ ]+b4:[ ]+dd a4[ ]+and ixh +[ ]+b6:[ ]+dd a5[ ]+and ixl +[ ]+b8:[ ]+fd a4[ ]+and iyh +[ ]+ba:[ ]+fd a5[ ]+and iyl +[ ]+bc:[ ]+dd b4[ ]+or ixh +[ ]+be:[ ]+dd b5[ ]+or ixl +[ ]+c0:[ ]+fd b4[ ]+or iyh +[ ]+c2:[ ]+fd b5[ ]+or iyl +[ ]+c4:[ ]+dd ac[ ]+xor ixh +[ ]+c6:[ ]+dd ad[ ]+xor ixl +[ ]+c8:[ ]+fd ac[ ]+xor iyh +[ ]+ca:[ ]+fd ad[ ]+xor iyl diff --git a/gas/testsuite/gas/z80/z80_ii8.s b/gas/testsuite/gas/z80/z80_ii8.s new file mode 100644 index 0000000..c043b40 --- /dev/null +++ b/gas/testsuite/gas/z80/z80_ii8.s @@ -0,0 +1,123 @@ + .text + .org 0 + +; load group + ld a,ixh + ld b,ixh + ld c,ixh + ld d,ixh + ld e,ixh + ld ixh,ixh + ld ixl,ixh + + ld a,ixl + ld b,ixl + ld c,ixl + ld d,ixl + ld e,ixl + ld ixh,ixl + ld ixl,ixl + + ld a,iyh + ld b,iyh + ld c,iyh + ld d,iyh + ld e,iyh + ld iyh,iyh + ld iyl,iyh + + ld a,iyl + ld b,iyl + ld c,iyl + ld d,iyl + ld e,iyl + ld iyh,iyl + ld iyl,iyl + + ld ixh,a + ld ixh,b + ld ixh,c + ld ixh,d + ld ixh,e + ld ixh,ixh + ld ixh,ixl + ld ixh,25 + + ld ixl,a + ld ixl,b + ld ixl,c + ld ixl,d + ld ixl,e + ld ixl,ixh + ld ixl,ixl + ld ixl,25 + + ld iyh,a + ld iyh,b + ld iyh,c + ld iyh,d + ld iyh,e + ld iyh,iyh + ld iyh,iyl + ld iyh,25 + + ld iyl,a + ld iyl,b + ld iyl,c + ld iyl,d + ld iyl,e + ld iyl,iyh + ld iyl,iyl + ld iyl,25 + +; arithmetic group + add a,ixh + add a,ixl + add a,iyh + add a,iyl + + adc a,ixh + adc a,ixl + adc a,iyh + adc a,iyl + + cp ixh + cp ixl + cp iyh + cp iyl + + dec ixh + dec ixl + dec iyh + dec iyl + + inc ixh + inc ixl + inc iyh + inc iyl + + sbc a,ixh + sbc a,ixl + sbc a,iyh + sbc a,iyl + + sub ixh + sub ixl + sub iyh + sub iyl + +; logic group + and ixh + and ixl + and iyh + and iyl + + or ixh + or ixl + or iyh + or iyl + + xor ixh + xor ixl + xor iyh + xor iyl diff --git a/gas/testsuite/gas/z80/z80_in_f_c.d b/gas/testsuite/gas/z80/z80_in_f_c.d new file mode 100644 index 0000000..e9c2d91 --- /dev/null +++ b/gas/testsuite/gas/z80/z80_in_f_c.d @@ -0,0 +1,10 @@ +#as: --with-inst=in-f-c +#objdump: -d +#name: Z80 undocumented instruction IN F,(C) + +.*:.* + +Disassembly of section .text: + +0+ <.text>: +\s+0:\s+ed 70\s+in f,\(c\) diff --git a/gas/testsuite/gas/z80/z80_in_f_c.s b/gas/testsuite/gas/z80/z80_in_f_c.s new file mode 100644 index 0000000..f048096 --- /dev/null +++ b/gas/testsuite/gas/z80/z80_in_f_c.s @@ -0,0 +1,4 @@ + .text + .org 0 + + in f,(c) diff --git a/gas/testsuite/gas/z80/z80_op_ii_ld.d b/gas/testsuite/gas/z80/z80_op_ii_ld.d new file mode 100644 index 0000000..42d917a --- /dev/null +++ b/gas/testsuite/gas/z80/z80_op_ii_ld.d @@ -0,0 +1,345 @@ +#as: -z80 -with-inst=sli,op-ii-ld +#objdump: -d +#name: Z80 undocumented instructions DD/FD CB dis op + +.*: .* + +Disassembly of section .text: + +0+ <.text>: +\s+0:\s+dd cb 08 07\s+rlc \(ix\+8\),a +\s+4:\s+dd cb 08 00\s+rlc \(ix\+8\),b +\s+8:\s+dd cb 08 01\s+rlc \(ix\+8\),c +\s+c:\s+dd cb 08 02\s+rlc \(ix\+8\),d +\s+10:\s+dd cb 08 03\s+rlc \(ix\+8\),e +\s+14:\s+dd cb 08 04\s+rlc \(ix\+8\),h +\s+18:\s+dd cb 08 05\s+rlc \(ix\+8\),l +\s+1c:\s+fd cb 08 07\s+rlc \(iy\+8\),a +\s+20:\s+fd cb 08 00\s+rlc \(iy\+8\),b +\s+24:\s+fd cb 08 01\s+rlc \(iy\+8\),c +\s+28:\s+fd cb 08 02\s+rlc \(iy\+8\),d +\s+2c:\s+fd cb 08 03\s+rlc \(iy\+8\),e +\s+30:\s+fd cb 08 04\s+rlc \(iy\+8\),h +\s+34:\s+fd cb 08 05\s+rlc \(iy\+8\),l +\s+38:\s+dd cb 08 0f\s+rrc \(ix\+8\),a +\s+3c:\s+dd cb 08 08\s+rrc \(ix\+8\),b +\s+40:\s+dd cb 08 09\s+rrc \(ix\+8\),c +\s+44:\s+dd cb 08 0a\s+rrc \(ix\+8\),d +\s+48:\s+dd cb 08 0b\s+rrc \(ix\+8\),e +\s+4c:\s+dd cb 08 0c\s+rrc \(ix\+8\),h +\s+50:\s+dd cb 08 0d\s+rrc \(ix\+8\),l +\s+54:\s+fd cb 08 0f\s+rrc \(iy\+8\),a +\s+58:\s+fd cb 08 08\s+rrc \(iy\+8\),b +\s+5c:\s+fd cb 08 09\s+rrc \(iy\+8\),c +\s+60:\s+fd cb 08 0a\s+rrc \(iy\+8\),d +\s+64:\s+fd cb 08 0b\s+rrc \(iy\+8\),e +\s+68:\s+fd cb 08 0c\s+rrc \(iy\+8\),h +\s+6c:\s+fd cb 08 0d\s+rrc \(iy\+8\),l +\s+70:\s+dd cb 08 17\s+rl \(ix\+8\),a +\s+74:\s+dd cb 08 10\s+rl \(ix\+8\),b +\s+78:\s+dd cb 08 11\s+rl \(ix\+8\),c +\s+7c:\s+dd cb 08 12\s+rl \(ix\+8\),d +\s+80:\s+dd cb 08 13\s+rl \(ix\+8\),e +\s+84:\s+dd cb 08 14\s+rl \(ix\+8\),h +\s+88:\s+dd cb 08 15\s+rl \(ix\+8\),l +\s+8c:\s+fd cb 08 17\s+rl \(iy\+8\),a +\s+90:\s+fd cb 08 10\s+rl \(iy\+8\),b +\s+94:\s+fd cb 08 11\s+rl \(iy\+8\),c +\s+98:\s+fd cb 08 12\s+rl \(iy\+8\),d +\s+9c:\s+fd cb 08 13\s+rl \(iy\+8\),e +\s+a0:\s+fd cb 08 14\s+rl \(iy\+8\),h +\s+a4:\s+fd cb 08 15\s+rl \(iy\+8\),l +\s+a8:\s+dd cb 08 1f\s+rr \(ix\+8\),a +\s+ac:\s+dd cb 08 18\s+rr \(ix\+8\),b +\s+b0:\s+dd cb 08 19\s+rr \(ix\+8\),c +\s+b4:\s+dd cb 08 1a\s+rr \(ix\+8\),d +\s+b8:\s+dd cb 08 1b\s+rr \(ix\+8\),e +\s+bc:\s+dd cb 08 1c\s+rr \(ix\+8\),h +\s+c0:\s+dd cb 08 1d\s+rr \(ix\+8\),l +\s+c4:\s+fd cb 08 1f\s+rr \(iy\+8\),a +\s+c8:\s+fd cb 08 18\s+rr \(iy\+8\),b +\s+cc:\s+fd cb 08 19\s+rr \(iy\+8\),c +\s+d0:\s+fd cb 08 1a\s+rr \(iy\+8\),d +\s+d4:\s+fd cb 08 1b\s+rr \(iy\+8\),e +\s+d8:\s+fd cb 08 1c\s+rr \(iy\+8\),h +\s+dc:\s+fd cb 08 1d\s+rr \(iy\+8\),l +\s+e0:\s+dd cb 08 27\s+sla \(ix\+8\),a +\s+e4:\s+dd cb 08 20\s+sla \(ix\+8\),b +\s+e8:\s+dd cb 08 21\s+sla \(ix\+8\),c +\s+ec:\s+dd cb 08 22\s+sla \(ix\+8\),d +\s+f0:\s+dd cb 08 23\s+sla \(ix\+8\),e +\s+f4:\s+dd cb 08 24\s+sla \(ix\+8\),h +\s+f8:\s+dd cb 08 25\s+sla \(ix\+8\),l +\s+fc:\s+fd cb 08 27\s+sla \(iy\+8\),a +\s+100:\s+fd cb 08 20\s+sla \(iy\+8\),b +\s+104:\s+fd cb 08 21\s+sla \(iy\+8\),c +\s+108:\s+fd cb 08 22\s+sla \(iy\+8\),d +\s+10c:\s+fd cb 08 23\s+sla \(iy\+8\),e +\s+110:\s+fd cb 08 24\s+sla \(iy\+8\),h +\s+114:\s+fd cb 08 25\s+sla \(iy\+8\),l +\s+118:\s+dd cb 08 2f\s+sra \(ix\+8\),a +\s+11c:\s+dd cb 08 28\s+sra \(ix\+8\),b +\s+120:\s+dd cb 08 29\s+sra \(ix\+8\),c +\s+124:\s+dd cb 08 2a\s+sra \(ix\+8\),d +\s+128:\s+dd cb 08 2b\s+sra \(ix\+8\),e +\s+12c:\s+dd cb 08 2c\s+sra \(ix\+8\),h +\s+130:\s+dd cb 08 2d\s+sra \(ix\+8\),l +\s+134:\s+fd cb 08 2f\s+sra \(iy\+8\),a +\s+138:\s+fd cb 08 28\s+sra \(iy\+8\),b +\s+13c:\s+fd cb 08 29\s+sra \(iy\+8\),c +\s+140:\s+fd cb 08 2a\s+sra \(iy\+8\),d +\s+144:\s+fd cb 08 2b\s+sra \(iy\+8\),e +\s+148:\s+fd cb 08 2c\s+sra \(iy\+8\),h +\s+14c:\s+fd cb 08 2d\s+sra \(iy\+8\),l +\s+150:\s+dd cb 08 37\s+sli \(ix\+8\),a +\s+154:\s+dd cb 08 30\s+sli \(ix\+8\),b +\s+158:\s+dd cb 08 31\s+sli \(ix\+8\),c +\s+15c:\s+dd cb 08 32\s+sli \(ix\+8\),d +\s+160:\s+dd cb 08 33\s+sli \(ix\+8\),e +\s+164:\s+dd cb 08 34\s+sli \(ix\+8\),h +\s+168:\s+dd cb 08 35\s+sli \(ix\+8\),l +\s+16c:\s+fd cb 08 37\s+sli \(iy\+8\),a +\s+170:\s+fd cb 08 30\s+sli \(iy\+8\),b +\s+174:\s+fd cb 08 31\s+sli \(iy\+8\),c +\s+178:\s+fd cb 08 32\s+sli \(iy\+8\),d +\s+17c:\s+fd cb 08 33\s+sli \(iy\+8\),e +\s+180:\s+fd cb 08 34\s+sli \(iy\+8\),h +\s+184:\s+fd cb 08 35\s+sli \(iy\+8\),l +\s+188:\s+dd cb 08 3f\s+srl \(ix\+8\),a +\s+18c:\s+dd cb 08 38\s+srl \(ix\+8\),b +\s+190:\s+dd cb 08 39\s+srl \(ix\+8\),c +\s+194:\s+dd cb 08 3a\s+srl \(ix\+8\),d +\s+198:\s+dd cb 08 3b\s+srl \(ix\+8\),e +\s+19c:\s+dd cb 08 3c\s+srl \(ix\+8\),h +\s+1a0:\s+dd cb 08 3d\s+srl \(ix\+8\),l +\s+1a4:\s+fd cb 08 3f\s+srl \(iy\+8\),a +\s+1a8:\s+fd cb 08 38\s+srl \(iy\+8\),b +\s+1ac:\s+fd cb 08 39\s+srl \(iy\+8\),c +\s+1b0:\s+fd cb 08 3a\s+srl \(iy\+8\),d +\s+1b4:\s+fd cb 08 3b\s+srl \(iy\+8\),e +\s+1b8:\s+fd cb 08 3c\s+srl \(iy\+8\),h +\s+1bc:\s+fd cb 08 3d\s+srl \(iy\+8\),l +\s+1c0:\s+dd cb 08 87\s+res 0,\(ix\+8\),a +\s+1c4:\s+dd cb 08 80\s+res 0,\(ix\+8\),b +\s+1c8:\s+dd cb 08 81\s+res 0,\(ix\+8\),c +\s+1cc:\s+dd cb 08 82\s+res 0,\(ix\+8\),d +\s+1d0:\s+dd cb 08 83\s+res 0,\(ix\+8\),e +\s+1d4:\s+dd cb 08 84\s+res 0,\(ix\+8\),h +\s+1d8:\s+dd cb 08 85\s+res 0,\(ix\+8\),l +\s+1dc:\s+fd cb 08 87\s+res 0,\(iy\+8\),a +\s+1e0:\s+fd cb 08 80\s+res 0,\(iy\+8\),b +\s+1e4:\s+fd cb 08 81\s+res 0,\(iy\+8\),c +\s+1e8:\s+fd cb 08 82\s+res 0,\(iy\+8\),d +\s+1ec:\s+fd cb 08 83\s+res 0,\(iy\+8\),e +\s+1f0:\s+fd cb 08 84\s+res 0,\(iy\+8\),h +\s+1f4:\s+fd cb 08 85\s+res 0,\(iy\+8\),l +\s+1f8:\s+dd cb 08 8f\s+res 1,\(ix\+8\),a +\s+1fc:\s+dd cb 08 88\s+res 1,\(ix\+8\),b +\s+200:\s+dd cb 08 89\s+res 1,\(ix\+8\),c +\s+204:\s+dd cb 08 8a\s+res 1,\(ix\+8\),d +\s+208:\s+dd cb 08 8b\s+res 1,\(ix\+8\),e +\s+20c:\s+dd cb 08 8c\s+res 1,\(ix\+8\),h +\s+210:\s+dd cb 08 8d\s+res 1,\(ix\+8\),l +\s+214:\s+fd cb 08 8f\s+res 1,\(iy\+8\),a +\s+218:\s+fd cb 08 88\s+res 1,\(iy\+8\),b +\s+21c:\s+fd cb 08 89\s+res 1,\(iy\+8\),c +\s+220:\s+fd cb 08 8a\s+res 1,\(iy\+8\),d +\s+224:\s+fd cb 08 8b\s+res 1,\(iy\+8\),e +\s+228:\s+fd cb 08 8c\s+res 1,\(iy\+8\),h +\s+22c:\s+fd cb 08 8d\s+res 1,\(iy\+8\),l +\s+230:\s+dd cb 08 97\s+res 2,\(ix\+8\),a +\s+234:\s+dd cb 08 90\s+res 2,\(ix\+8\),b +\s+238:\s+dd cb 08 91\s+res 2,\(ix\+8\),c +\s+23c:\s+dd cb 08 92\s+res 2,\(ix\+8\),d +\s+240:\s+dd cb 08 93\s+res 2,\(ix\+8\),e +\s+244:\s+dd cb 08 94\s+res 2,\(ix\+8\),h +\s+248:\s+dd cb 08 95\s+res 2,\(ix\+8\),l +\s+24c:\s+fd cb 08 97\s+res 2,\(iy\+8\),a +\s+250:\s+fd cb 08 90\s+res 2,\(iy\+8\),b +\s+254:\s+fd cb 08 91\s+res 2,\(iy\+8\),c +\s+258:\s+fd cb 08 92\s+res 2,\(iy\+8\),d +\s+25c:\s+fd cb 08 93\s+res 2,\(iy\+8\),e +\s+260:\s+fd cb 08 94\s+res 2,\(iy\+8\),h +\s+264:\s+fd cb 08 95\s+res 2,\(iy\+8\),l +\s+268:\s+dd cb 08 9f\s+res 3,\(ix\+8\),a +\s+26c:\s+dd cb 08 98\s+res 3,\(ix\+8\),b +\s+270:\s+dd cb 08 99\s+res 3,\(ix\+8\),c +\s+274:\s+dd cb 08 9a\s+res 3,\(ix\+8\),d +\s+278:\s+dd cb 08 9b\s+res 3,\(ix\+8\),e +\s+27c:\s+dd cb 08 9c\s+res 3,\(ix\+8\),h +\s+280:\s+dd cb 08 9d\s+res 3,\(ix\+8\),l +\s+284:\s+fd cb 08 9f\s+res 3,\(iy\+8\),a +\s+288:\s+fd cb 08 98\s+res 3,\(iy\+8\),b +\s+28c:\s+fd cb 08 99\s+res 3,\(iy\+8\),c +\s+290:\s+fd cb 08 9a\s+res 3,\(iy\+8\),d +\s+294:\s+fd cb 08 9b\s+res 3,\(iy\+8\),e +\s+298:\s+fd cb 08 9c\s+res 3,\(iy\+8\),h +\s+29c:\s+fd cb 08 9d\s+res 3,\(iy\+8\),l +\s+2a0:\s+dd cb 08 a7\s+res 4,\(ix\+8\),a +\s+2a4:\s+dd cb 08 a0\s+res 4,\(ix\+8\),b +\s+2a8:\s+dd cb 08 a1\s+res 4,\(ix\+8\),c +\s+2ac:\s+dd cb 08 a2\s+res 4,\(ix\+8\),d +\s+2b0:\s+dd cb 08 a3\s+res 4,\(ix\+8\),e +\s+2b4:\s+dd cb 08 a4\s+res 4,\(ix\+8\),h +\s+2b8:\s+dd cb 08 a5\s+res 4,\(ix\+8\),l +\s+2bc:\s+fd cb 08 a7\s+res 4,\(iy\+8\),a +\s+2c0:\s+fd cb 08 a0\s+res 4,\(iy\+8\),b +\s+2c4:\s+fd cb 08 a1\s+res 4,\(iy\+8\),c +\s+2c8:\s+fd cb 08 a2\s+res 4,\(iy\+8\),d +\s+2cc:\s+fd cb 08 a3\s+res 4,\(iy\+8\),e +\s+2d0:\s+fd cb 08 a4\s+res 4,\(iy\+8\),h +\s+2d4:\s+fd cb 08 a5\s+res 4,\(iy\+8\),l +\s+2d8:\s+dd cb 08 af\s+res 5,\(ix\+8\),a +\s+2dc:\s+dd cb 08 a8\s+res 5,\(ix\+8\),b +\s+2e0:\s+dd cb 08 a9\s+res 5,\(ix\+8\),c +\s+2e4:\s+dd cb 08 aa\s+res 5,\(ix\+8\),d +\s+2e8:\s+dd cb 08 ab\s+res 5,\(ix\+8\),e +\s+2ec:\s+dd cb 08 ac\s+res 5,\(ix\+8\),h +\s+2f0:\s+dd cb 08 ad\s+res 5,\(ix\+8\),l +\s+2f4:\s+fd cb 08 af\s+res 5,\(iy\+8\),a +\s+2f8:\s+fd cb 08 a8\s+res 5,\(iy\+8\),b +\s+2fc:\s+fd cb 08 a9\s+res 5,\(iy\+8\),c +\s+300:\s+fd cb 08 aa\s+res 5,\(iy\+8\),d +\s+304:\s+fd cb 08 ab\s+res 5,\(iy\+8\),e +\s+308:\s+fd cb 08 ac\s+res 5,\(iy\+8\),h +\s+30c:\s+fd cb 08 ad\s+res 5,\(iy\+8\),l +\s+310:\s+dd cb 08 b7\s+res 6,\(ix\+8\),a +\s+314:\s+dd cb 08 b0\s+res 6,\(ix\+8\),b +\s+318:\s+dd cb 08 b1\s+res 6,\(ix\+8\),c +\s+31c:\s+dd cb 08 b2\s+res 6,\(ix\+8\),d +\s+320:\s+dd cb 08 b3\s+res 6,\(ix\+8\),e +\s+324:\s+dd cb 08 b4\s+res 6,\(ix\+8\),h +\s+328:\s+dd cb 08 b5\s+res 6,\(ix\+8\),l +\s+32c:\s+fd cb 08 b7\s+res 6,\(iy\+8\),a +\s+330:\s+fd cb 08 b0\s+res 6,\(iy\+8\),b +\s+334:\s+fd cb 08 b1\s+res 6,\(iy\+8\),c +\s+338:\s+fd cb 08 b2\s+res 6,\(iy\+8\),d +\s+33c:\s+fd cb 08 b3\s+res 6,\(iy\+8\),e +\s+340:\s+fd cb 08 b4\s+res 6,\(iy\+8\),h +\s+344:\s+fd cb 08 b5\s+res 6,\(iy\+8\),l +\s+348:\s+dd cb 08 bf\s+res 7,\(ix\+8\),a +\s+34c:\s+dd cb 08 b8\s+res 7,\(ix\+8\),b +\s+350:\s+dd cb 08 b9\s+res 7,\(ix\+8\),c +\s+354:\s+dd cb 08 ba\s+res 7,\(ix\+8\),d +\s+358:\s+dd cb 08 bb\s+res 7,\(ix\+8\),e +\s+35c:\s+dd cb 08 bc\s+res 7,\(ix\+8\),h +\s+360:\s+dd cb 08 bd\s+res 7,\(ix\+8\),l +\s+364:\s+fd cb 08 bf\s+res 7,\(iy\+8\),a +\s+368:\s+fd cb 08 b8\s+res 7,\(iy\+8\),b +\s+36c:\s+fd cb 08 b9\s+res 7,\(iy\+8\),c +\s+370:\s+fd cb 08 ba\s+res 7,\(iy\+8\),d +\s+374:\s+fd cb 08 bb\s+res 7,\(iy\+8\),e +\s+378:\s+fd cb 08 bc\s+res 7,\(iy\+8\),h +\s+37c:\s+fd cb 08 bd\s+res 7,\(iy\+8\),l +\s+380:\s+dd cb 08 c7\s+set 0,\(ix\+8\),a +\s+384:\s+dd cb 08 c0\s+set 0,\(ix\+8\),b +\s+388:\s+dd cb 08 c1\s+set 0,\(ix\+8\),c +\s+38c:\s+dd cb 08 c2\s+set 0,\(ix\+8\),d +\s+390:\s+dd cb 08 c3\s+set 0,\(ix\+8\),e +\s+394:\s+dd cb 08 c4\s+set 0,\(ix\+8\),h +\s+398:\s+dd cb 08 c5\s+set 0,\(ix\+8\),l +\s+39c:\s+fd cb 08 c7\s+set 0,\(iy\+8\),a +\s+3a0:\s+fd cb 08 c0\s+set 0,\(iy\+8\),b +\s+3a4:\s+fd cb 08 c1\s+set 0,\(iy\+8\),c +\s+3a8:\s+fd cb 08 c2\s+set 0,\(iy\+8\),d +\s+3ac:\s+fd cb 08 c3\s+set 0,\(iy\+8\),e +\s+3b0:\s+fd cb 08 c4\s+set 0,\(iy\+8\),h +\s+3b4:\s+fd cb 08 c5\s+set 0,\(iy\+8\),l +\s+3b8:\s+dd cb 08 cf\s+set 1,\(ix\+8\),a +\s+3bc:\s+dd cb 08 c8\s+set 1,\(ix\+8\),b +\s+3c0:\s+dd cb 08 c9\s+set 1,\(ix\+8\),c +\s+3c4:\s+dd cb 08 ca\s+set 1,\(ix\+8\),d +\s+3c8:\s+dd cb 08 cb\s+set 1,\(ix\+8\),e +\s+3cc:\s+dd cb 08 cc\s+set 1,\(ix\+8\),h +\s+3d0:\s+dd cb 08 cd\s+set 1,\(ix\+8\),l +\s+3d4:\s+fd cb 08 cf\s+set 1,\(iy\+8\),a +\s+3d8:\s+fd cb 08 c8\s+set 1,\(iy\+8\),b +\s+3dc:\s+fd cb 08 c9\s+set 1,\(iy\+8\),c +\s+3e0:\s+fd cb 08 ca\s+set 1,\(iy\+8\),d +\s+3e4:\s+fd cb 08 cb\s+set 1,\(iy\+8\),e +\s+3e8:\s+fd cb 08 cc\s+set 1,\(iy\+8\),h +\s+3ec:\s+fd cb 08 cd\s+set 1,\(iy\+8\),l +\s+3f0:\s+dd cb 08 d7\s+set 2,\(ix\+8\),a +\s+3f4:\s+dd cb 08 d0\s+set 2,\(ix\+8\),b +\s+3f8:\s+dd cb 08 d1\s+set 2,\(ix\+8\),c +\s+3fc:\s+dd cb 08 d2\s+set 2,\(ix\+8\),d +\s+400:\s+dd cb 08 d3\s+set 2,\(ix\+8\),e +\s+404:\s+dd cb 08 d4\s+set 2,\(ix\+8\),h +\s+408:\s+dd cb 08 d5\s+set 2,\(ix\+8\),l +\s+40c:\s+fd cb 08 d7\s+set 2,\(iy\+8\),a +\s+410:\s+fd cb 08 d0\s+set 2,\(iy\+8\),b +\s+414:\s+fd cb 08 d1\s+set 2,\(iy\+8\),c +\s+418:\s+fd cb 08 d2\s+set 2,\(iy\+8\),d +\s+41c:\s+fd cb 08 d3\s+set 2,\(iy\+8\),e +\s+420:\s+fd cb 08 d4\s+set 2,\(iy\+8\),h +\s+424:\s+fd cb 08 d5\s+set 2,\(iy\+8\),l +\s+428:\s+dd cb 08 df\s+set 3,\(ix\+8\),a +\s+42c:\s+dd cb 08 d8\s+set 3,\(ix\+8\),b +\s+430:\s+dd cb 08 d9\s+set 3,\(ix\+8\),c +\s+434:\s+dd cb 08 da\s+set 3,\(ix\+8\),d +\s+438:\s+dd cb 08 db\s+set 3,\(ix\+8\),e +\s+43c:\s+dd cb 08 dc\s+set 3,\(ix\+8\),h +\s+440:\s+dd cb 08 dd\s+set 3,\(ix\+8\),l +\s+444:\s+fd cb 08 df\s+set 3,\(iy\+8\),a +\s+448:\s+fd cb 08 d8\s+set 3,\(iy\+8\),b +\s+44c:\s+fd cb 08 d9\s+set 3,\(iy\+8\),c +\s+450:\s+fd cb 08 da\s+set 3,\(iy\+8\),d +\s+454:\s+fd cb 08 db\s+set 3,\(iy\+8\),e +\s+458:\s+fd cb 08 dc\s+set 3,\(iy\+8\),h +\s+45c:\s+fd cb 08 dd\s+set 3,\(iy\+8\),l +\s+460:\s+dd cb 08 e7\s+set 4,\(ix\+8\),a +\s+464:\s+dd cb 08 e0\s+set 4,\(ix\+8\),b +\s+468:\s+dd cb 08 e1\s+set 4,\(ix\+8\),c +\s+46c:\s+dd cb 08 e2\s+set 4,\(ix\+8\),d +\s+470:\s+dd cb 08 e3\s+set 4,\(ix\+8\),e +\s+474:\s+dd cb 08 e4\s+set 4,\(ix\+8\),h +\s+478:\s+dd cb 08 e5\s+set 4,\(ix\+8\),l +\s+47c:\s+fd cb 08 e7\s+set 4,\(iy\+8\),a +\s+480:\s+fd cb 08 e0\s+set 4,\(iy\+8\),b +\s+484:\s+fd cb 08 e1\s+set 4,\(iy\+8\),c +\s+488:\s+fd cb 08 e2\s+set 4,\(iy\+8\),d +\s+48c:\s+fd cb 08 e3\s+set 4,\(iy\+8\),e +\s+490:\s+fd cb 08 e4\s+set 4,\(iy\+8\),h +\s+494:\s+fd cb 08 e5\s+set 4,\(iy\+8\),l +\s+498:\s+dd cb 08 ef\s+set 5,\(ix\+8\),a +\s+49c:\s+dd cb 08 e8\s+set 5,\(ix\+8\),b +\s+4a0:\s+dd cb 08 e9\s+set 5,\(ix\+8\),c +\s+4a4:\s+dd cb 08 ea\s+set 5,\(ix\+8\),d +\s+4a8:\s+dd cb 08 eb\s+set 5,\(ix\+8\),e +\s+4ac:\s+dd cb 08 ec\s+set 5,\(ix\+8\),h +\s+4b0:\s+dd cb 08 ed\s+set 5,\(ix\+8\),l +\s+4b4:\s+fd cb 08 ef\s+set 5,\(iy\+8\),a +\s+4b8:\s+fd cb 08 e8\s+set 5,\(iy\+8\),b +\s+4bc:\s+fd cb 08 e9\s+set 5,\(iy\+8\),c +\s+4c0:\s+fd cb 08 ea\s+set 5,\(iy\+8\),d +\s+4c4:\s+fd cb 08 eb\s+set 5,\(iy\+8\),e +\s+4c8:\s+fd cb 08 ec\s+set 5,\(iy\+8\),h +\s+4cc:\s+fd cb 08 ed\s+set 5,\(iy\+8\),l +\s+4d0:\s+dd cb 08 f7\s+set 6,\(ix\+8\),a +\s+4d4:\s+dd cb 08 f0\s+set 6,\(ix\+8\),b +\s+4d8:\s+dd cb 08 f1\s+set 6,\(ix\+8\),c +\s+4dc:\s+dd cb 08 f2\s+set 6,\(ix\+8\),d +\s+4e0:\s+dd cb 08 f3\s+set 6,\(ix\+8\),e +\s+4e4:\s+dd cb 08 f4\s+set 6,\(ix\+8\),h +\s+4e8:\s+dd cb 08 f5\s+set 6,\(ix\+8\),l +\s+4ec:\s+fd cb 08 f7\s+set 6,\(iy\+8\),a +\s+4f0:\s+fd cb 08 f0\s+set 6,\(iy\+8\),b +\s+4f4:\s+fd cb 08 f1\s+set 6,\(iy\+8\),c +\s+4f8:\s+fd cb 08 f2\s+set 6,\(iy\+8\),d +\s+4fc:\s+fd cb 08 f3\s+set 6,\(iy\+8\),e +\s+500:\s+fd cb 08 f4\s+set 6,\(iy\+8\),h +\s+504:\s+fd cb 08 f5\s+set 6,\(iy\+8\),l +\s+508:\s+dd cb 08 ff\s+set 7,\(ix\+8\),a +\s+50c:\s+dd cb 08 f8\s+set 7,\(ix\+8\),b +\s+510:\s+dd cb 08 f9\s+set 7,\(ix\+8\),c +\s+514:\s+dd cb 08 fa\s+set 7,\(ix\+8\),d +\s+518:\s+dd cb 08 fb\s+set 7,\(ix\+8\),e +\s+51c:\s+dd cb 08 fc\s+set 7,\(ix\+8\),h +\s+520:\s+dd cb 08 fd\s+set 7,\(ix\+8\),l +\s+524:\s+fd cb 08 ff\s+set 7,\(iy\+8\),a +\s+528:\s+fd cb 08 f8\s+set 7,\(iy\+8\),b +\s+52c:\s+fd cb 08 f9\s+set 7,\(iy\+8\),c +\s+530:\s+fd cb 08 fa\s+set 7,\(iy\+8\),d +\s+534:\s+fd cb 08 fb\s+set 7,\(iy\+8\),e +\s+538:\s+fd cb 08 fc\s+set 7,\(iy\+8\),h +\s+53c:\s+fd cb 08 fd\s+set 7,\(iy\+8\),l diff --git a/gas/testsuite/gas/z80/z80_op_ii_ld.s b/gas/testsuite/gas/z80/z80_op_ii_ld.s new file mode 100644 index 0000000..7ae83ec --- /dev/null +++ b/gas/testsuite/gas/z80/z80_op_ii_ld.s @@ -0,0 +1,350 @@ + .text + .org 0 + + ;; rare unportable instructions which do operation on memory byte + ;; changing this byte and copying result to specified register + RLC (ix+8),a + RLC (ix+8),b + RLC (ix+8),c + RLC (ix+8),d + RLC (ix+8),e + RLC (ix+8),h + RLC (ix+8),l + RLC (iy+8),a + RLC (iy+8),b + RLC (iy+8),c + RLC (iy+8),d + RLC (iy+8),e + RLC (iy+8),h + RLC (iy+8),l + + RRC (ix+8),a + RRC (ix+8),b + RRC (ix+8),c + RRC (ix+8),d + RRC (ix+8),e + RRC (ix+8),h + RRC (ix+8),l + RRC (iy+8),a + RRC (iy+8),b + RRC (iy+8),c + RRC (iy+8),d + RRC (iy+8),e + RRC (iy+8),h + RRC (iy+8),l + + RL (ix+8),a + RL (ix+8),b + RL (ix+8),c + RL (ix+8),d + RL (ix+8),e + RL (ix+8),h + RL (ix+8),l + RL (iy+8),a + RL (iy+8),b + RL (iy+8),c + RL (iy+8),d + RL (iy+8),e + RL (iy+8),h + RL (iy+8),l + + RR (ix+8),a + RR (ix+8),b + RR (ix+8),c + RR (ix+8),d + RR (ix+8),e + RR (ix+8),h + RR (ix+8),l + RR (iy+8),a + RR (iy+8),b + RR (iy+8),c + RR (iy+8),d + RR (iy+8),e + RR (iy+8),h + RR (iy+8),l + + SLA (ix+8),a + SLA (ix+8),b + SLA (ix+8),c + SLA (ix+8),d + SLA (ix+8),e + SLA (ix+8),h + SLA (ix+8),l + SLA (iy+8),a + SLA (iy+8),b + SLA (iy+8),c + SLA (iy+8),d + SLA (iy+8),e + SLA (iy+8),h + SLA (iy+8),l + + SRA (ix+8),a + SRA (ix+8),b + SRA (ix+8),c + SRA (ix+8),d + SRA (ix+8),e + SRA (ix+8),h + SRA (ix+8),l + SRA (iy+8),a + SRA (iy+8),b + SRA (iy+8),c + SRA (iy+8),d + SRA (iy+8),e + SRA (iy+8),h + SRA (iy+8),l + + SLI (ix+8),a + SLI (ix+8),b + SLI (ix+8),c + SLI (ix+8),d + SLI (ix+8),e + SLI (ix+8),h + SLI (ix+8),l + SLI (iy+8),a + SLI (iy+8),b + SLI (iy+8),c + SLI (iy+8),d + SLI (iy+8),e + SLI (iy+8),h + SLI (iy+8),l + + SRL (ix+8),a + SRL (ix+8),b + SRL (ix+8),c + SRL (ix+8),d + SRL (ix+8),e + SRL (ix+8),h + SRL (ix+8),l + SRL (iy+8),a + SRL (iy+8),b + SRL (iy+8),c + SRL (iy+8),d + SRL (iy+8),e + SRL (iy+8),h + SRL (iy+8),l + + RES 0,(ix+8),a + RES 0,(ix+8),b + RES 0,(ix+8),c + RES 0,(ix+8),d + RES 0,(ix+8),e + RES 0,(ix+8),h + RES 0,(ix+8),l + RES 0,(iy+8),a + RES 0,(iy+8),b + RES 0,(iy+8),c + RES 0,(iy+8),d + RES 0,(iy+8),e + RES 0,(iy+8),h + RES 0,(iy+8),l + RES 1,(ix+8),a + RES 1,(ix+8),b + RES 1,(ix+8),c + RES 1,(ix+8),d + RES 1,(ix+8),e + RES 1,(ix+8),h + RES 1,(ix+8),l + RES 1,(iy+8),a + RES 1,(iy+8),b + RES 1,(iy+8),c + RES 1,(iy+8),d + RES 1,(iy+8),e + RES 1,(iy+8),h + RES 1,(iy+8),l + RES 2,(ix+8),a + RES 2,(ix+8),b + RES 2,(ix+8),c + RES 2,(ix+8),d + RES 2,(ix+8),e + RES 2,(ix+8),h + RES 2,(ix+8),l + RES 2,(iy+8),a + RES 2,(iy+8),b + RES 2,(iy+8),c + RES 2,(iy+8),d + RES 2,(iy+8),e + RES 2,(iy+8),h + RES 2,(iy+8),l + RES 3,(ix+8),a + RES 3,(ix+8),b + RES 3,(ix+8),c + RES 3,(ix+8),d + RES 3,(ix+8),e + RES 3,(ix+8),h + RES 3,(ix+8),l + RES 3,(iy+8),a + RES 3,(iy+8),b + RES 3,(iy+8),c + RES 3,(iy+8),d + RES 3,(iy+8),e + RES 3,(iy+8),h + RES 3,(iy+8),l + RES 4,(ix+8),a + RES 4,(ix+8),b + RES 4,(ix+8),c + RES 4,(ix+8),d + RES 4,(ix+8),e + RES 4,(ix+8),h + RES 4,(ix+8),l + RES 4,(iy+8),a + RES 4,(iy+8),b + RES 4,(iy+8),c + RES 4,(iy+8),d + RES 4,(iy+8),e + RES 4,(iy+8),h + RES 4,(iy+8),l + RES 5,(ix+8),a + RES 5,(ix+8),b + RES 5,(ix+8),c + RES 5,(ix+8),d + RES 5,(ix+8),e + RES 5,(ix+8),h + RES 5,(ix+8),l + RES 5,(iy+8),a + RES 5,(iy+8),b + RES 5,(iy+8),c + RES 5,(iy+8),d + RES 5,(iy+8),e + RES 5,(iy+8),h + RES 5,(iy+8),l + RES 6,(ix+8),a + RES 6,(ix+8),b + RES 6,(ix+8),c + RES 6,(ix+8),d + RES 6,(ix+8),e + RES 6,(ix+8),h + RES 6,(ix+8),l + RES 6,(iy+8),a + RES 6,(iy+8),b + RES 6,(iy+8),c + RES 6,(iy+8),d + RES 6,(iy+8),e + RES 6,(iy+8),h + RES 6,(iy+8),l + RES 7,(ix+8),a + RES 7,(ix+8),b + RES 7,(ix+8),c + RES 7,(ix+8),d + RES 7,(ix+8),e + RES 7,(ix+8),h + RES 7,(ix+8),l + RES 7,(iy+8),a + RES 7,(iy+8),b + RES 7,(iy+8),c + RES 7,(iy+8),d + RES 7,(iy+8),e + RES 7,(iy+8),h + RES 7,(iy+8),l + + SET 0,(ix+8),a + SET 0,(ix+8),b + SET 0,(ix+8),c + SET 0,(ix+8),d + SET 0,(ix+8),e + SET 0,(ix+8),h + SET 0,(ix+8),l + SET 0,(iy+8),a + SET 0,(iy+8),b + SET 0,(iy+8),c + SET 0,(iy+8),d + SET 0,(iy+8),e + SET 0,(iy+8),h + SET 0,(iy+8),l + SET 1,(ix+8),a + SET 1,(ix+8),b + SET 1,(ix+8),c + SET 1,(ix+8),d + SET 1,(ix+8),e + SET 1,(ix+8),h + SET 1,(ix+8),l + SET 1,(iy+8),a + SET 1,(iy+8),b + SET 1,(iy+8),c + SET 1,(iy+8),d + SET 1,(iy+8),e + SET 1,(iy+8),h + SET 1,(iy+8),l + SET 2,(ix+8),a + SET 2,(ix+8),b + SET 2,(ix+8),c + SET 2,(ix+8),d + SET 2,(ix+8),e + SET 2,(ix+8),h + SET 2,(ix+8),l + SET 2,(iy+8),a + SET 2,(iy+8),b + SET 2,(iy+8),c + SET 2,(iy+8),d + SET 2,(iy+8),e + SET 2,(iy+8),h + SET 2,(iy+8),l + SET 3,(ix+8),a + SET 3,(ix+8),b + SET 3,(ix+8),c + SET 3,(ix+8),d + SET 3,(ix+8),e + SET 3,(ix+8),h + SET 3,(ix+8),l + SET 3,(iy+8),a + SET 3,(iy+8),b + SET 3,(iy+8),c + SET 3,(iy+8),d + SET 3,(iy+8),e + SET 3,(iy+8),h + SET 3,(iy+8),l + SET 4,(ix+8),a + SET 4,(ix+8),b + SET 4,(ix+8),c + SET 4,(ix+8),d + SET 4,(ix+8),e + SET 4,(ix+8),h + SET 4,(ix+8),l + SET 4,(iy+8),a + SET 4,(iy+8),b + SET 4,(iy+8),c + SET 4,(iy+8),d + SET 4,(iy+8),e + SET 4,(iy+8),h + SET 4,(iy+8),l + SET 5,(ix+8),a + SET 5,(ix+8),b + SET 5,(ix+8),c + SET 5,(ix+8),d + SET 5,(ix+8),e + SET 5,(ix+8),h + SET 5,(ix+8),l + SET 5,(iy+8),a + SET 5,(iy+8),b + SET 5,(iy+8),c + SET 5,(iy+8),d + SET 5,(iy+8),e + SET 5,(iy+8),h + SET 5,(iy+8),l + SET 6,(ix+8),a + SET 6,(ix+8),b + SET 6,(ix+8),c + SET 6,(ix+8),d + SET 6,(ix+8),e + SET 6,(ix+8),h + SET 6,(ix+8),l + SET 6,(iy+8),a + SET 6,(iy+8),b + SET 6,(iy+8),c + SET 6,(iy+8),d + SET 6,(iy+8),e + SET 6,(iy+8),h + SET 6,(iy+8),l + SET 7,(ix+8),a + SET 7,(ix+8),b + SET 7,(ix+8),c + SET 7,(ix+8),d + SET 7,(ix+8),e + SET 7,(ix+8),h + SET 7,(ix+8),l + SET 7,(iy+8),a + SET 7,(iy+8),b + SET 7,(iy+8),c + SET 7,(iy+8),d + SET 7,(iy+8),e + SET 7,(iy+8),h + SET 7,(iy+8),l diff --git a/gas/testsuite/gas/z80/z80_out_c_0.d b/gas/testsuite/gas/z80/z80_out_c_0.d new file mode 100644 index 0000000..b600229 --- /dev/null +++ b/gas/testsuite/gas/z80/z80_out_c_0.d @@ -0,0 +1,10 @@ +#as: --with-inst=out-c-0 +#objdump: -d +#name: Z80 undocumented instruction OUT (C),0 + +.*:.* + +Disassembly of section .text: + +0+ <.text>: +\s+0:\s+ed 71\s+out \(c\),0 diff --git a/gas/testsuite/gas/z80/z80_out_c_0.s b/gas/testsuite/gas/z80/z80_out_c_0.s new file mode 100644 index 0000000..da62ae8 --- /dev/null +++ b/gas/testsuite/gas/z80/z80_out_c_0.s @@ -0,0 +1,3 @@ + .text + .org 0 + out (c),0 diff --git a/gas/testsuite/gas/z80/z80_reloc.d b/gas/testsuite/gas/z80/z80_reloc.d new file mode 100644 index 0000000..7a17617 --- /dev/null +++ b/gas/testsuite/gas/z80/z80_reloc.d @@ -0,0 +1,27 @@ +#objdump: -r +#name: Z80 relocations + +.*:[ ]+file format (coff)|(elf32)\-z80 + +RELOCATION RECORDS FOR \[\.text\]: +OFFSET[ ]+TYPE[ ]+VALUE\s* +00000001[ ]+r_byte0[ ]+\.text +00000004[ ]+r_byte1[ ]+\.text +00000007[ ]+r_byte0[ ]+glb_proc +0000000a[ ]+r_byte1[ ]+glb_proc +0000000d[ ]+r_byte2[ ]+glb_proc +00000010[ ]+r_byte3[ ]+glb_proc +00000012[ ]+r_imm16[ ]+\.text(\+0x0000001f)? +00000015[ ]+r_word0[ ]+glb_proc +00000018[ ]+r_word1[ ]+glb_proc +0000001b[ ]+r_jr[ ]+start(\+0xffffffff)|(\-0x00000001) +0000001d[ ]+r_imm8[ ]+data8 +0000001f[ ]+r_imm8[ ]+data8 +00000020[ ]+r_imm16[ ]+data16 +00000022[ ]+r_imm24[ ]+data24 +00000025[ ]+r_imm32[ ]+data32 +00000029[ ]+r_byte0[ ]+data16 +0000002a[ ]+r_byte1[ ]+data16 +0000002b[ ]+r_word0[ ]+data32 +0000002d[ ]+r_word1[ ]+data32 +#pass diff --git a/gas/testsuite/gas/z80/z80_reloc.s b/gas/testsuite/gas/z80/z80_reloc.s new file mode 100644 index 0000000..52d0335 --- /dev/null +++ b/gas/testsuite/gas/z80/z80_reloc.s @@ -0,0 +1,34 @@ + .text + .globl glb_proc + .globl data8 + .globl data16 + .globl data24 + .globl data32 +.L_proc: + ld (hl),.L_proc >> 0 + inc hl + ld (hl),.L_proc >> 8 + inc hl + ld (hl),(glb_proc) & 0xff + inc hl + ld (hl),glb_proc >> 8 + inc hl + ld (hl),glb_proc >> 16 + inc hl + ld (hl),glb_proc >> 24 + ld bc,.L_label + ld de,glb_proc >> 0 + ld hl,glb_proc >> 16 + djnz start + ld a,data8 + ret +.L_label: + .db data8 + .dw data16 + .d24 data24 + .d32 data32 + .db data16 & 0xff + .db data16 >> 8 + .dw data32 & 0xffff + .dw data32 >> 16 + .end diff --git a/gas/testsuite/gas/z80/z80_sli.d b/gas/testsuite/gas/z80/z80_sli.d new file mode 100644 index 0000000..af5cd96 --- /dev/null +++ b/gas/testsuite/gas/z80/z80_sli.d @@ -0,0 +1,29 @@ +#as: --with-inst=sli +#objdump: -d +#name: Z80 instruction SLI/SLL + +.*:.* + +Disassembly of section .text: + +0+ <.text>: +\s+0:\s+cb 37\s+sli a +\s+2:\s+cb 30\s+sli b +\s+4:\s+cb 31\s+sli c +\s+6:\s+cb 32\s+sli d +\s+8:\s+cb 33\s+sli e +\s+a:\s+cb 34\s+sli h +\s+c:\s+cb 35\s+sli l +\s+e:\s+cb 36\s+sli \(hl\) +\s+10:\s+dd cb 07 36\s+sli \(ix\+7\) +\s+14:\s+fd cb f7 36\s+sli \(iy\-9\) +\s+18:\s+cb 37\s+sli a +\s+1a:\s+cb 30\s+sli b +\s+1c:\s+cb 31\s+sli c +\s+1e:\s+cb 32\s+sli d +\s+20:\s+cb 33\s+sli e +\s+22:\s+cb 34\s+sli h +\s+24:\s+cb 35\s+sli l +\s+26:\s+cb 36\s+sli \(hl\) +\s+28:\s+dd cb 07 36\s+sli \(ix\+7\) +\s+2c:\s+fd cb f7 36\s+sli \(iy\-9\) diff --git a/gas/testsuite/gas/z80/z80_sli.s b/gas/testsuite/gas/z80/z80_sli.s new file mode 100644 index 0000000..8d0f39f --- /dev/null +++ b/gas/testsuite/gas/z80/z80_sli.s @@ -0,0 +1,28 @@ + .text + .org 0 + + ;; SLI/SLL instruction test + +;SLI + sli a + sli b + sli c + sli d + sli e + sli h + sli l + sli (hl) + sli (ix+7) + sli (iy-9) + +;SLL is alias for SLI + sll a + sll b + sll c + sll d + sll e + sll h + sll l + sll (hl) + sll (ix+7) + sll (iy-9) |