diff options
Diffstat (limited to 'gas')
405 files changed, 32738 insertions, 14053 deletions
@@ -8,11 +8,17 @@ to have the same ISA as elf architecture attribute. Once used .option arch directives, the file need to be rebuilt since 2.45. +* Add support for RISC-V privileged version 1.13, profiles 20/22/23, and + .bfloat16 directive. + * Add support for RISC-V standard extensions: - ssqosid v1.0, ssnpm v1.0, smnpm v1.0, smmpm v1.0, sspm v1.0, supm v1.0. + ssqosid v1.0, ssnpm v1.0, smnpm v1.0, smmpm v1.0, sspm v1.0, supm v1.0, + sha v1.0, zce v1.0, smcdeleg v1.0, ssccfg v1.0, svvptc v1.0, zilsd v1.0, + zclsd v1.0, smrnmi v1.0 instruction. * Add support for RISC-V vendor extensions: T-Head: xtheadvdot v1.0. + MIPS: xmipscbop v1.0, xmipscmov v1.0, xmipsexectl v1.0, xmipslsp v1.0. * Add support for the x86 Zhaoxin PadLock XMODX instructions. @@ -930,7 +930,7 @@ This program has absolutely no warranty.\n")); break; case OPTION_LISTING_LHS_WIDTH2: { - int tmp = atoi (optarg); + unsigned int tmp = atoi (optarg); if (tmp > listing_lhs_width) listing_lhs_width_second = tmp; @@ -247,9 +247,7 @@ enum _relax_state 1 constant byte: no-op fill control byte. */ rs_space_nop, - /* Similar to rs_fill. It is used to implement .nops directive. - When listings are enabled, fr_opcode gets the buffer assigned, once - that's available. */ + /* Similar to rs_fill. It is used to implement .nops directive. */ rs_fill_nop, /* A DWARF leb128 value; only ELF uses this. The subtype is 0 for diff --git a/gas/config/kvx-parse.c b/gas/config/kvx-parse.c index 942eab3..5995d62 100644 --- a/gas/config/kvx-parse.c +++ b/gas/config/kvx-parse.c @@ -409,7 +409,7 @@ promote_token (struct token_s tok) : tok.class_id; case CAT_IMMEDIATE: { - expressionS exp = { 0 }; + expressionS exp; char *ilp_save = input_line_pointer; input_line_pointer = tok.insn + tok.begin; expression (&exp); @@ -462,7 +462,7 @@ get_token_class (struct token_s *token, struct token_classes *classes, int insn_ int found = 0; int tok_sz = token->end - token->begin; char *tok = token->insn + token->begin; - expressionS exp = {0}; + expressionS exp; token->val = 0; int token_val_p = 0; diff --git a/gas/config/loongarch-parse.y b/gas/config/loongarch-parse.y index 97055fe..d575748 100644 --- a/gas/config/loongarch-parse.y +++ b/gas/config/loongarch-parse.y @@ -42,7 +42,7 @@ is_const (struct reloc_info *info) } int -loongarch_parse_expr (const char *expr, +loongarch_parse_expr (const char *exp, struct reloc_info *reloc_stack_top, size_t max_reloc_num, size_t *reloc_num, @@ -52,7 +52,7 @@ loongarch_parse_expr (const char *expr, struct yy_buffer_state *buffstate; top = reloc_stack_top; end = top + max_reloc_num; - buffstate = yy_scan_string (expr); + buffstate = yy_scan_string (exp); ret = yyparse (); if (ret == 0) @@ -207,29 +207,41 @@ emit_bin (int op) switch (op) { case '*': - opr1 = opr1 * opr2; + opr1 = (valueT) opr1 * (valueT) opr2; break; case '/': - opr1 = opr1 / opr2; + if (opr2 == 0) + { + as_warn (_("Divide by zero!")); + opr1 = 0; + } + else + opr1 = opr1 / opr2; break; case '%': - opr1 = opr1 % opr2; + if (opr2 == 0) + { + as_warn (_("Divide by zero!")); + opr1 = 0; + } + else + opr1 = opr1 % opr2; break; case '+': - opr1 = opr1 + opr2; + opr1 = (valueT) opr1 + (valueT) opr2; break; case '-': - opr1 = opr1 - opr2; + opr1 = (valueT) opr1 - (valueT) opr2; break; case LEFT_OP: - opr1 = opr1 << opr2; + opr1 = (valueT) opr1 << opr2; break; case RIGHT_OP: if (opr1 < 0) - as_warn(_("Right shift of negative numbers may be changed " - "from arithmetic right shift to logical right shift!")); - /* Algorithm right shift. */ - opr1 = (offsetT)opr1 >> (offsetT)opr2; + as_warn (_("Right shift of negative numbers may be changed " + "from arithmetic right shift to logical right shift!")); + /* Arithmetic right shift. */ + opr1 = opr1 >> opr2; break; case '<': opr1 = opr1 < opr2; diff --git a/gas/config/obj-coff-seh.c b/gas/config/obj-coff-seh.c index 70cb4e4..becf7a9 100644 --- a/gas/config/obj-coff-seh.c +++ b/gas/config/obj-coff-seh.c @@ -121,7 +121,7 @@ seh_hash_insert (const char *name, struct seh_seg_list *item) static struct seh_seg_list * seh_hash_find (char *name) { - return (struct seh_seg_list *) str_hash_find (seh_hash, name); + return str_hash_find (seh_hash, name); } static struct seh_seg_list * diff --git a/gas/config/obj-coff.c b/gas/config/obj-coff.c index eb5784e..1f9eaa3 100644 --- a/gas/config/obj-coff.c +++ b/gas/config/obj-coff.c @@ -133,7 +133,7 @@ tag_insert (const char *name, symbolS *symbolP) static symbolS * tag_find (char *name) { - return (symbolS *) str_hash_find (tag_hash, name); + return str_hash_find (tag_hash, name); } static symbolS * @@ -569,7 +569,7 @@ obj_coff_ident (int ignore ATTRIBUTE_UNUSED) #define SKIP_WHITESPACES() while (is_whitespace (*input_line_pointer)) \ input_line_pointer++; -static void +void obj_coff_def (int what ATTRIBUTE_UNUSED) { if (def_symbol_in_progress != NULL) @@ -1187,7 +1187,6 @@ coff_assign_symbol (symbolS *symp ATTRIBUTE_UNUSED) #endif } -symbolS *coff_last_function; #ifndef OBJ_XCOFF static symbolS *coff_last_bf; #endif @@ -1195,6 +1194,7 @@ static symbolS *coff_last_bf; void coff_frob_symbol (symbolS *symp, int *punt) { + static symbolS *last_functionP; static symbolS *last_tagP; static stack *block_stack; static symbolS *set_end; @@ -1338,30 +1338,26 @@ coff_frob_symbol (symbolS *symp, int *punt) } } - if (coff_last_function == 0 && SF_GET_FUNCTION (symp) - && S_IS_DEFINED (symp)) + if (SF_GET_FUNCTION (symp) && S_IS_DEFINED (symp)) { union internal_auxent *auxp; - coff_last_function = symp; if (S_GET_NUMBER_AUXILIARY (symp) < 1) S_SET_NUMBER_AUXILIARY (symp, 1); auxp = SYM_AUXENT (symp); - memset (auxp->x_sym.x_fcnary.x_ary.x_dimen, 0, - sizeof (auxp->x_sym.x_fcnary.x_ary.x_dimen)); + memset (&auxp->x_sym.x_fcnary.x_fcn, 0, + sizeof (auxp->x_sym.x_fcnary.x_fcn)); } if (S_GET_STORAGE_CLASS (symp) == C_EFCN && S_IS_DEFINED (symp)) { - if (coff_last_function == 0) + if (!last_functionP) as_fatal (_("C_EFCN symbol for %s out of scope"), S_GET_NAME (symp)); - SA_SET_SYM_FSIZE (coff_last_function, + SA_SET_SYM_FSIZE (last_functionP, (long) (S_GET_VALUE (symp) - - S_GET_VALUE (coff_last_function))); - next_set_end = coff_last_function; - coff_last_function = 0; + - S_GET_VALUE (last_functionP))); } } @@ -1415,6 +1411,13 @@ coff_frob_symbol (symbolS *symp, int *punt) set_end = next_set_end; } + if (SF_GET_FUNCTION (symp) && S_IS_DEFINED (symp) && !*punt) + { + if (last_functionP) + SA_SET_SYM_ENDNDX (last_functionP, symp); + last_functionP = symp; + } + #ifndef OBJ_XCOFF if (! *punt && S_GET_STORAGE_CLASS (symp) == C_FCN diff --git a/gas/config/obj-coff.h b/gas/config/obj-coff.h index c083ad2..51dfd56 100644 --- a/gas/config/obj-coff.h +++ b/gas/config/obj-coff.h @@ -242,7 +242,6 @@ extern int text_lineno_number; extern int coff_line_base; extern int coff_n_line_nos; -extern symbolS *coff_last_function; #define obj_emit_lineno(WHERE, LINE, FILE_START) abort () #define obj_app_file(name) c_dot_file_symbol (name) @@ -330,7 +329,7 @@ extern void pecoff_obj_clear_weak_hook (symbolS *); #endif extern void obj_coff_section (int); extern segT obj_coff_add_segment (const char *); -extern void obj_coff_section (int); +extern void obj_coff_def (int); extern segT s_get_segment (symbolS *); #ifndef tc_coff_symbol_emit_hook extern void tc_coff_symbol_emit_hook (symbolS *); diff --git a/gas/config/obj-elf.c b/gas/config/obj-elf.c index d37d0fd..368594d 100644 --- a/gas/config/obj-elf.c +++ b/gas/config/obj-elf.c @@ -492,13 +492,6 @@ get_section_by_match (bfd *abfd ATTRIBUTE_UNUSED, asection *sec, void *inf) && match_section (sec, match)); } -static void -free_section_idx (void *ent) -{ - string_tuple_t *tuple = ent; - free ((char *) tuple->value); -} - /* Go look in section lists kept per group for SEC_NAME with properties given by MATCH. If info for the group named by MATCH->GROUP_NAME has been initialised, set GROUP_IDX. */ @@ -506,24 +499,24 @@ free_section_idx (void *ent) static asection * group_section_find (const struct elf_section_match *match, const char *sec_name, - unsigned int **group_idx) + unsigned int *group_idx) { if (!groups.indexes) { groups.num_group = 0; groups.head = NULL; groups.indexes = htab_create_alloc (16, hash_string_tuple, eq_string_tuple, - free_section_idx, notes_calloc, NULL); - *group_idx = NULL; + NULL, notes_calloc, NULL); + *group_idx = ~0u; return NULL; } - *group_idx = str_hash_find (groups.indexes, match->group_name); - if (*group_idx == NULL) + *group_idx = str_hash_find_int (groups.indexes, match->group_name); + if (*group_idx == ~0u) return NULL; asection *s; - for (s = groups.head[**group_idx]; s != NULL; s = elf_next_in_group (s)) + for (s = groups.head[*group_idx]; s != NULL; s = elf_next_in_group (s)) if ((s->name == sec_name || strcmp (s->name, sec_name) == 0) && match_section (s, match)) @@ -537,12 +530,12 @@ group_section_find (const struct elf_section_match *match, static void group_section_insert (const struct elf_section_match *match, asection *sec, - unsigned int **group_idx) + unsigned int *group_idx) { - if (*group_idx != NULL) + if (*group_idx != ~0u) { - elf_next_in_group (sec) = groups.head[**group_idx]; - groups.head[**group_idx] = sec; + elf_next_in_group (sec) = groups.head[*group_idx]; + groups.head[*group_idx] = sec; return; } @@ -553,14 +546,8 @@ group_section_insert (const struct elf_section_match *match, groups.num_group += 1; /* We keep the index into groups.head rather than the entry address - because groups.head may be realloc'd, and because str_hash values - are a void* we make a copy of the index. Strictly speaking there - is no guarantee that void* can represent any int value, so doing - without the indirection by casting an int or even uintptr_t may - for example lose lsbs of the value. */ - unsigned int *idx_ptr = XNEW (unsigned int); - *idx_ptr = i; - str_hash_insert (groups.indexes, match->group_name, idx_ptr, 0); + because groups.head may be realloc'd. */ + str_hash_insert_int (groups.indexes, match->group_name, i, 0); } /* Handle the .section pseudo-op. This code supports two different @@ -622,7 +609,7 @@ change_section (const char *name, obj_elf_section_change_hook (); - unsigned int *group_idx = NULL; + unsigned int group_idx = ~0u; if (match_p->group_name) old_sec = group_section_find (match_p, name, &group_idx); else @@ -781,7 +768,7 @@ change_section (const char *name, || startswith (name, ".note.gnu")) flags |= SEC_ELF_OCTETS; } - + if (old_sec == NULL) { symbolS *secsym; @@ -1151,7 +1138,7 @@ elf_set_group_name (asection *sec, const char *gname) & SEC_ASSEMBLER_SHF_MASK); match.flags = bfd_section_flags (sec) & SEC_ASSEMBLER_SECTION_ID; - unsigned int *group_idx; + unsigned int group_idx; if (!group_section_find (&match, sec->name, &group_idx)) group_section_insert (&match, sec, &group_idx); } @@ -2273,39 +2260,25 @@ elf_obj_symbol_new_hook (symbolS *symbolP) #endif } -/* Deduplicate size expressions. We might get into trouble with - multiple freeing or use after free if we leave them pointing to the - same expressionS. */ - +/* If size is unset, copy size from src. Because we don't track whether + .size has been used, we can't differentiate .size dest, 0 from the case + where dest's size is unset. */ void -elf_obj_symbol_clone_hook (symbolS *newsym, symbolS *orgsym ATTRIBUTE_UNUSED) +elf_copy_symbol_size (symbolS *dest, symbolS *src) { - struct elf_obj_sy *newelf = symbol_get_obj (newsym); - if (newelf->size) + struct elf_obj_sy *srcelf = symbol_get_obj (src); + struct elf_obj_sy *destelf = symbol_get_obj (dest); + if (!destelf->size && S_GET_SIZE (dest) == 0) { - expressionS *exp = XNEW (expressionS); - *exp = *newelf->size; - newelf->size = exp; + destelf->size = srcelf->size; + S_SET_SIZE (dest, S_GET_SIZE (src)); } } void elf_copy_symbol_attributes (symbolS *dest, symbolS *src) { - struct elf_obj_sy *srcelf = symbol_get_obj (src); - struct elf_obj_sy *destelf = symbol_get_obj (dest); - /* If size is unset, copy size from src. Because we don't track whether - .size has been used, we can't differentiate .size dest, 0 from the case - where dest's size is unset. */ - if (!destelf->size && S_GET_SIZE (dest) == 0) - { - if (srcelf->size) - { - destelf->size = XNEW (expressionS); - *destelf->size = *srcelf->size; - } - S_SET_SIZE (dest, S_GET_SIZE (src)); - } + elf_copy_symbol_size (dest, src); /* Don't copy visibility. */ S_SET_OTHER (dest, (ELF_ST_VISIBILITY (S_GET_OTHER (dest)) | (S_GET_OTHER (src) & ~ELF_ST_VISIBILITY (-1)))); @@ -2404,12 +2377,11 @@ obj_elf_size (int ignore ATTRIBUTE_UNUSED) if (exp.X_op == O_constant) { S_SET_SIZE (sym, exp.X_add_number); - xfree (symbol_get_obj (sym)->size); symbol_get_obj (sym)->size = NULL; } else { - symbol_get_obj (sym)->size = XNEW (expressionS); + symbol_get_obj (sym)->size = notes_alloc (sizeof (exp)); *symbol_get_obj (sym)->size = exp; } @@ -2805,7 +2777,6 @@ elf_frob_symbol (symbolS *symp, int *puntp) as_warn (_(".size expression for %s " "does not evaluate to a constant"), S_GET_NAME (symp)); } - free (sy_obj->size); sy_obj->size = NULL; } @@ -3336,7 +3307,7 @@ const struct format_ops elf_format_ops = #endif elf_obj_read_begin_hook, elf_obj_symbol_new_hook, - elf_obj_symbol_clone_hook, + 0, elf_adjust_symtab }; diff --git a/gas/config/obj-elf.h b/gas/config/obj-elf.h index c8b5740..1e0ac58 100644 --- a/gas/config/obj-elf.h +++ b/gas/config/obj-elf.h @@ -224,11 +224,7 @@ void elf_obj_symbol_new_hook (symbolS *); #define obj_symbol_new_hook elf_obj_symbol_new_hook #endif -void elf_obj_symbol_clone_hook (symbolS *, symbolS *); -#ifndef obj_symbol_clone_hook -#define obj_symbol_clone_hook elf_obj_symbol_clone_hook -#endif - +void elf_copy_symbol_size (symbolS *, symbolS *); void elf_copy_symbol_attributes (symbolS *, symbolS *); #ifndef OBJ_COPY_SYMBOL_ATTRIBUTES #define OBJ_COPY_SYMBOL_ATTRIBUTES(DEST, SRC) \ diff --git a/gas/config/tc-aarch64.c b/gas/config/tc-aarch64.c index e071ad1..13649e8 100644 --- a/gas/config/tc-aarch64.c +++ b/gas/config/tc-aarch64.c @@ -907,7 +907,7 @@ parse_reg (char **ccp) p++; while (ISALPHA (*p) || ISDIGIT (*p) || *p == '_'); - reg = (reg_entry *) str_hash_find_n (aarch64_reg_hsh, start, p - start); + reg = str_hash_find_n (aarch64_reg_hsh, start, p - start); if (!reg) return NULL; @@ -5175,6 +5175,13 @@ encode_branch_ofs_26 (uint32_t ofs) return ofs & ((1 << 26) - 1); } +/* encode the 9-bit offset of FEAT_CMPBR compare and branch */ +static inline uint32_t +encode_cond_branch_ofs_9 (uint32_t ofs) +{ + return (ofs & ((1 << 9) - 1)) << 5; +} + /* encode the 19-bit offset of conditional branch and compare & branch */ static inline uint32_t encode_cond_branch_ofs_19 (uint32_t ofs) @@ -6254,10 +6261,7 @@ typedef struct templates templates; static templates * lookup_mnemonic (const char *start, int len) { - templates *templ = NULL; - - templ = str_hash_find_n (aarch64_ops_hsh, start, len); - return templ; + return str_hash_find_n (aarch64_ops_hsh, start, len); } /* Subroutine of md_assemble, responsible for looking up the primary @@ -6388,6 +6392,8 @@ process_omitted_operand (enum aarch64_opnd type, const aarch64_opcode *opcode, case AARCH64_OPND_UIMM3_OP2: case AARCH64_OPND_IMM: case AARCH64_OPND_IMM_2: + case AARCH64_OPND_IMMP1_2: + case AARCH64_OPND_IMMS1_2: case AARCH64_OPND_WIDTH: case AARCH64_OPND_UIMM7: case AARCH64_OPND_NZCV: @@ -6823,6 +6829,7 @@ parse_operands (char *str, const aarch64_opcode *opcode) case AARCH64_OPND_SVE_Zn: case AARCH64_OPND_SVE_Zt: case AARCH64_OPND_SME_Zm: + case AARCH64_OPND_SME_Zm_17: reg_type = REG_TYPE_Z; goto vector_reg; @@ -7154,6 +7161,16 @@ parse_operands (char *str, const aarch64_opcode *opcode) info->imm.value = val; break; + case AARCH64_OPND_IMMP1_2: + po_imm_or_fail (1, 64); + info->imm.value = val - 1; + break; + + case AARCH64_OPND_IMMS1_2: + po_imm_or_fail (-1, 62); + info->imm.value = val + 1; + break; + case AARCH64_OPND_SVE_AIMM: case AARCH64_OPND_SVE_ASIMM: po_imm_nc_or_fail (); @@ -7450,6 +7467,7 @@ parse_operands (char *str, const aarch64_opcode *opcode) info->imm.value = 0; break; + case AARCH64_OPND_ADDR_PCREL9: case AARCH64_OPND_ADDR_PCREL14: case AARCH64_OPND_ADDR_PCREL19: case AARCH64_OPND_ADDR_PCREL21: @@ -7487,8 +7505,11 @@ parse_operands (char *str, const aarch64_opcode *opcode) case compbranch: case condbranch: /* e.g. CBZ or B.COND */ - gas_assert (operands[i] == AARCH64_OPND_ADDR_PCREL19); - inst.reloc.type = BFD_RELOC_AARCH64_BRANCH19; + gas_assert (operands[i] == AARCH64_OPND_ADDR_PCREL9 + || operands[i] == AARCH64_OPND_ADDR_PCREL19); + inst.reloc.type = (operands[i] == AARCH64_OPND_ADDR_PCREL9) + ? BFD_RELOC_AARCH64_BRANCH9 + : BFD_RELOC_AARCH64_BRANCH19; break; case testbranch: /* e.g. TBZ */ @@ -7806,8 +7827,12 @@ parse_operands (char *str, const aarch64_opcode *opcode) info->addr.offset.imm = inst.reloc.exp.X_add_number; break; - case AARCH64_OPND_SVE_ADDR_R: - /* [<Xn|SP>{, <R><m>}] + case AARCH64_OPND_SVE_ADDR_RR: + case AARCH64_OPND_SVE_ADDR_RR_LSL1: + case AARCH64_OPND_SVE_ADDR_RR_LSL2: + case AARCH64_OPND_SVE_ADDR_RR_LSL3: + case AARCH64_OPND_SVE_ADDR_RR_LSL4: + /* [<Xn|SP>{, <R><m>{, lsl #<amount>}}] but recognizing SVE registers. */ po_misc_or_fail (parse_sve_address (&str, info, &base_qualifier, &offset_qualifier)); @@ -7816,8 +7841,21 @@ parse_operands (char *str, const aarch64_opcode *opcode) offset_qualifier = AARCH64_OPND_QLF_X; info->addr.offset.is_reg = 1; info->addr.offset.regno = 31; + + /* We set the shifter amount here, but let regoff_addr assign the + shifter kind. */ + if (operands[i] == AARCH64_OPND_SVE_ADDR_RR) + info->shifter.amount = 0; + else if (operands[i] == AARCH64_OPND_SVE_ADDR_RR_LSL1) + info->shifter.amount = 1; + else if (operands[i] == AARCH64_OPND_SVE_ADDR_RR_LSL2) + info->shifter.amount = 2; + else if (operands[i] == AARCH64_OPND_SVE_ADDR_RR_LSL3) + info->shifter.amount = 3; + else + info->shifter.amount = 4; } - else if (base_qualifier != AARCH64_OPND_QLF_X + if (base_qualifier != AARCH64_OPND_QLF_X || offset_qualifier != AARCH64_OPND_QLF_X) { set_syntax_error (_("invalid addressing mode")); @@ -7825,11 +7863,11 @@ parse_operands (char *str, const aarch64_opcode *opcode) } goto regoff_addr; - case AARCH64_OPND_SVE_ADDR_RR: - case AARCH64_OPND_SVE_ADDR_RR_LSL1: - case AARCH64_OPND_SVE_ADDR_RR_LSL2: - case AARCH64_OPND_SVE_ADDR_RR_LSL3: - case AARCH64_OPND_SVE_ADDR_RR_LSL4: + case AARCH64_OPND_SVE_ADDR_RM: + case AARCH64_OPND_SVE_ADDR_RM_LSL1: + case AARCH64_OPND_SVE_ADDR_RM_LSL2: + case AARCH64_OPND_SVE_ADDR_RM_LSL3: + case AARCH64_OPND_SVE_ADDR_RM_LSL4: case AARCH64_OPND_SVE_ADDR_RX: case AARCH64_OPND_SVE_ADDR_RX_LSL1: case AARCH64_OPND_SVE_ADDR_RX_LSL2: @@ -9041,12 +9079,15 @@ aarch64_handle_align (fragS * fragP) #endif memset (p, 0, fix); p += fix; + bytes -= fix; fragP->fr_fix += fix; } - if (noop_size) - memcpy (p, aarch64_noop, noop_size); - fragP->fr_var = noop_size; + if (bytes != 0) + { + fragP->fr_var = noop_size; + memcpy (p, aarch64_noop, noop_size); + } } /* Perform target specific initialisation of a frag. @@ -9121,7 +9162,7 @@ aarch64_sframe_cfa_ra_offset (void) return (offsetT) SFRAME_CFA_FIXED_RA_INVALID; } -/* Get the abi/arch indentifier for SFrame. */ +/* Get the abi/arch identifier for SFrame. */ unsigned char aarch64_sframe_get_abi_arch (void) @@ -9670,6 +9711,20 @@ md_apply_fix (fixS * fixP, valueT * valP, segT seg) } break; + case BFD_RELOC_AARCH64_BRANCH9: + if (fixP->fx_done || !seg->use_rela_p) + { + if (value & 3) + as_bad_where (fixP->fx_file, fixP->fx_line, + _("conditional branch target not word aligned")); + if (signed_overflow (value, 11)) + as_bad_where (fixP->fx_file, fixP->fx_line, + _("conditional branch out of range")); + insn = get_aarch64_insn (buf); + insn |= encode_cond_branch_ofs_9 (value >> 2); + put_aarch64_insn (buf, insn); + } + break; case BFD_RELOC_AARCH64_BRANCH19: if (fixP->fx_done || !seg->use_rela_p) { @@ -10221,13 +10276,13 @@ aarch64_adjust_symtab (void) } static void -checked_hash_insert (htab_t table, const char *key, void *value) +checked_hash_insert (htab_t table, const char *key, const void *value) { str_hash_insert (table, key, value, 0); } static void -sysreg_hash_insert (htab_t table, const char *key, void *value) +sysreg_hash_insert (htab_t table, const char *key, const void *value) { gas_assert (strlen (key) < AARCH64_MAX_SYSREG_NAME_LEN); checked_hash_insert (table, key, value); @@ -10248,7 +10303,7 @@ fill_instruction_hash_table (void) new_templ->next = NULL; if (!templ) - checked_hash_insert (aarch64_ops_hsh, opcode->name, (void *) new_templ); + checked_hash_insert (aarch64_ops_hsh, opcode->name, new_templ); else { new_templ->next = templ->next; @@ -10307,54 +10362,54 @@ md_begin (void) for (i = 0; aarch64_sys_regs[i].name != NULL; ++i) sysreg_hash_insert (aarch64_sys_regs_hsh, aarch64_sys_regs[i].name, - (void *) (aarch64_sys_regs + i)); + aarch64_sys_regs + i); for (i = 0; aarch64_pstatefields[i].name != NULL; ++i) sysreg_hash_insert (aarch64_pstatefield_hsh, - aarch64_pstatefields[i].name, - (void *) (aarch64_pstatefields + i)); + aarch64_pstatefields[i].name, + aarch64_pstatefields + i); for (i = 0; aarch64_sys_regs_ic[i].name != NULL; i++) sysreg_hash_insert (aarch64_sys_regs_ic_hsh, - aarch64_sys_regs_ic[i].name, - (void *) (aarch64_sys_regs_ic + i)); + aarch64_sys_regs_ic[i].name, + aarch64_sys_regs_ic + i); for (i = 0; aarch64_sys_regs_dc[i].name != NULL; i++) sysreg_hash_insert (aarch64_sys_regs_dc_hsh, - aarch64_sys_regs_dc[i].name, - (void *) (aarch64_sys_regs_dc + i)); + aarch64_sys_regs_dc[i].name, + aarch64_sys_regs_dc + i); for (i = 0; aarch64_sys_regs_at[i].name != NULL; i++) sysreg_hash_insert (aarch64_sys_regs_at_hsh, - aarch64_sys_regs_at[i].name, - (void *) (aarch64_sys_regs_at + i)); + aarch64_sys_regs_at[i].name, + aarch64_sys_regs_at + i); for (i = 0; aarch64_sys_regs_tlbi[i].name != NULL; i++) sysreg_hash_insert (aarch64_sys_regs_tlbi_hsh, - aarch64_sys_regs_tlbi[i].name, - (void *) (aarch64_sys_regs_tlbi + i)); + aarch64_sys_regs_tlbi[i].name, + aarch64_sys_regs_tlbi + i); for (i = 0; aarch64_sys_regs_sr[i].name != NULL; i++) sysreg_hash_insert (aarch64_sys_regs_sr_hsh, - aarch64_sys_regs_sr[i].name, - (void *) (aarch64_sys_regs_sr + i)); + aarch64_sys_regs_sr[i].name, + aarch64_sys_regs_sr + i); for (i = 0; i < ARRAY_SIZE (reg_names); i++) checked_hash_insert (aarch64_reg_hsh, reg_names[i].name, - (void *) (reg_names + i)); + reg_names + i); for (i = 0; i < ARRAY_SIZE (nzcv_names); i++) checked_hash_insert (aarch64_nzcv_hsh, nzcv_names[i].template, - (void *) (nzcv_names + i)); + nzcv_names + i); for (i = 0; aarch64_operand_modifiers[i].name != NULL; i++) { const char *name = aarch64_operand_modifiers[i].name; checked_hash_insert (aarch64_shift_hsh, name, - (void *) (aarch64_operand_modifiers + i)); + aarch64_operand_modifiers + i); /* Also hash the name in the upper case. */ checked_hash_insert (aarch64_shift_hsh, get_upper_str (name), - (void *) (aarch64_operand_modifiers + i)); + aarch64_operand_modifiers + i); } for (i = 0; i < ARRAY_SIZE (aarch64_conds); i++) @@ -10368,10 +10423,10 @@ md_begin (void) if (name == NULL) break; checked_hash_insert (aarch64_cond_hsh, name, - (void *) (aarch64_conds + i)); + aarch64_conds + i); /* Also hash the name in the upper case. */ checked_hash_insert (aarch64_cond_hsh, get_upper_str (name), - (void *) (aarch64_conds + i)); + aarch64_conds + i); } } @@ -10382,20 +10437,20 @@ md_begin (void) if ((i & 0x3) == 0) continue; checked_hash_insert (aarch64_barrier_opt_hsh, name, - (void *) (aarch64_barrier_options + i)); + aarch64_barrier_options + i); /* Also hash the name in the upper case. */ checked_hash_insert (aarch64_barrier_opt_hsh, get_upper_str (name), - (void *) (aarch64_barrier_options + i)); + aarch64_barrier_options + i); } for (i = 0; i < ARRAY_SIZE (aarch64_barrier_dsb_nxs_options); i++) { const char *name = aarch64_barrier_dsb_nxs_options[i].name; checked_hash_insert (aarch64_barrier_opt_hsh, name, - (void *) (aarch64_barrier_dsb_nxs_options + i)); + aarch64_barrier_dsb_nxs_options + i); /* Also hash the name in the upper case. */ checked_hash_insert (aarch64_barrier_opt_hsh, get_upper_str (name), - (void *) (aarch64_barrier_dsb_nxs_options + i)); + aarch64_barrier_dsb_nxs_options + i); } for (i = 0; i < ARRAY_SIZE (aarch64_prfops); i++) @@ -10405,10 +10460,10 @@ md_begin (void) if (name == NULL) continue; checked_hash_insert (aarch64_pldop_hsh, name, - (void *) (aarch64_prfops + i)); + aarch64_prfops + i); /* Also hash the name in the upper case. */ checked_hash_insert (aarch64_pldop_hsh, get_upper_str (name), - (void *) (aarch64_prfops + i)); + aarch64_prfops + i); } for (i = 0; aarch64_hint_options[i].name != NULL; i++) @@ -10417,12 +10472,12 @@ md_begin (void) const char* upper_name = get_upper_str(name); checked_hash_insert (aarch64_hint_opt_hsh, name, - (void *) (aarch64_hint_options + i)); + aarch64_hint_options + i); /* Also hash the name in the upper case if not the same. */ if (strcmp (name, upper_name) != 0) checked_hash_insert (aarch64_hint_opt_hsh, upper_name, - (void *) (aarch64_hint_options + i)); + aarch64_hint_options + i); } /* Set the cpu variant based on the command-line options. */ @@ -10641,6 +10696,7 @@ static const struct aarch64_option_cpu_value_table aarch64_features[] = { AARCH64_FEATURE (SIMD)}, {"fp", AARCH64_FEATURE (FP), AARCH64_NO_FEATURES}, {"lse", AARCH64_FEATURE (LSE), AARCH64_NO_FEATURES}, + {"lsfe", AARCH64_FEATURE (LSFE), AARCH64_FEATURE (FP)}, {"lse128", AARCH64_FEATURE (LSE128), AARCH64_FEATURE (LSE)}, {"simd", AARCH64_FEATURE (SIMD), AARCH64_FEATURE (FP)}, {"pan", AARCH64_FEATURE (PAN), AARCH64_NO_FEATURES}, @@ -10650,6 +10706,7 @@ static const struct aarch64_option_cpu_value_table aarch64_features[] = { {"rdm", AARCH64_FEATURE (RDMA), AARCH64_FEATURE (SIMD)}, {"fp16", AARCH64_FEATURE (F16), AARCH64_FEATURE (FP)}, {"fp16fml", AARCH64_FEATURE (F16_FML), AARCH64_FEATURE (F16)}, + {"fprcvt", AARCH64_FEATURE (FPRCVT), AARCH64_FEATURE (FP)}, {"profile", AARCH64_FEATURE (PROFILE), AARCH64_NO_FEATURES}, {"sve", AARCH64_FEATURE (SVE), AARCH64_FEATURE (COMPNUM)}, {"tme", AARCH64_FEATURE (TME), AARCH64_NO_FEATURES}, @@ -10672,6 +10729,8 @@ static const struct aarch64_option_cpu_value_table aarch64_features[] = { {"rng", AARCH64_FEATURE (RNG), AARCH64_NO_FEATURES}, {"ssbs", AARCH64_FEATURE (SSBS), AARCH64_NO_FEATURES}, {"memtag", AARCH64_FEATURE (MEMTAG), AARCH64_NO_FEATURES}, + {"occmo", AARCH64_FEATURE (OCCMO), AARCH64_NO_FEATURES}, + {"cmpbr", AARCH64_FEATURE (CMPBR), AARCH64_NO_FEATURES}, {"sve2", AARCH64_FEATURE (SVE2), AARCH64_FEATURE (SVE)}, {"sve2-sm4", AARCH64_FEATURE (SVE2_SM4), AARCH64_FEATURES (2, SVE2, SM4)}, @@ -10708,8 +10767,12 @@ static const struct aarch64_option_cpu_value_table aarch64_features[] = { {"ite", AARCH64_FEATURE (ITE), AARCH64_NO_FEATURES}, {"d128", AARCH64_FEATURE (D128), D128_FEATURE_DEPS}, {"sve-b16b16", AARCH64_FEATURE (SVE_B16B16), AARCH64_NO_FEATURES}, + {"sve-bfscale", AARCH64_FEATURE (SVE_BFSCALE), AARCH64_NO_FEATURES}, {"sme2p1", AARCH64_FEATURE (SME2p1), AARCH64_FEATURE (SME2)}, {"sve2p1", AARCH64_FEATURE (SVE2p1), AARCH64_FEATURE (SVE2)}, + {"sve-f16f32mm", AARCH64_FEATURE (SVE_F16F32MM), AARCH64_FEATURE (SVE)}, + {"f8f32mm", AARCH64_FEATURE (F8F32MM), AARCH64_FEATURES (2, SIMD, FP8)}, + {"f8f16mm", AARCH64_FEATURE (F8F16MM), AARCH64_FEATURES (2, SIMD, FP8)}, {"rcpc3", AARCH64_FEATURE (RCPC3), AARCH64_FEATURE (RCPC2)}, {"cpa", AARCH64_FEATURE (CPA), AARCH64_NO_FEATURES}, {"faminmax", AARCH64_FEATURE (FAMINMAX), AARCH64_FEATURE (SIMD)}, @@ -10733,6 +10796,7 @@ static const struct aarch64_option_cpu_value_table aarch64_features[] = { {"sme-f16f16", AARCH64_FEATURE (SME_F16F16), AARCH64_FEATURE (SME2)}, {"sme-b16b16", AARCH64_FEATURE (SME_B16B16), AARCH64_FEATURES (2, SVE_B16B16, SME2)}, + {"pops", AARCH64_FEATURE (PoPS), AARCH64_NO_FEATURES}, {NULL, AARCH64_NO_FEATURES, AARCH64_NO_FEATURES}, }; @@ -10757,6 +10821,8 @@ static const struct aarch64_virtual_dependency_table aarch64_dependencies[] = { SVE2p1_SME2p1)}, {AARCH64_FEATURE (SME), AARCH64_FEATURE (SVE2p1_SME)}, {AARCH64_FEATURE (SME2), AARCH64_FEATURE (SVE2p1_SME2)}, + {AARCH64_FEATURE (SVE2), AARCH64_FEATURE (SVE2_SME2)}, + {AARCH64_FEATURE (SME2), AARCH64_FEATURE (SVE2_SME2)}, {AARCH64_FEATURE (SME2p1), AARCH64_FEATURE (SVE2p1_SME2p1)}, }; @@ -10987,7 +11053,7 @@ aarch64_parse_arch (const char *str) return aarch64_parse_features (ext, &march_cpu_opt, false); } - as_bad (_("unknown architecture `%s'\n"), str); + as_bad (_("unknown architecture `%s'"), str); return 0; } @@ -11025,7 +11091,7 @@ aarch64_parse_abi (const char *str) return 1; } - as_bad (_("unknown abi `%s'\n"), str); + as_bad (_("unknown abi `%s'"), str); return 0; } @@ -11224,7 +11290,7 @@ s_aarch64_arch (int ignored ATTRIBUTE_UNUSED) return; } - as_bad (_("unknown architecture `%s'\n"), name); + as_bad (_("unknown architecture `%s'"), name); *input_line_pointer = saved_char; ignore_rest_of_line (); } @@ -11257,34 +11323,3 @@ aarch64_copy_symbol_attributes (symbolS * dest, symbolS * src) { AARCH64_GET_FLAG (dest) = AARCH64_GET_FLAG (src); } - -#ifdef OBJ_ELF -/* Same as elf_copy_symbol_attributes, but without copying st_other. - This is needed so AArch64 specific st_other values can be independently - specified for an IFUNC resolver (that is called by the dynamic linker) - and the symbol it resolves (aliased to the resolver). In particular, - if a function symbol has special st_other value set via directives, - then attaching an IFUNC resolver to that symbol should not override - the st_other setting. Requiring the directive on the IFUNC resolver - symbol would be unexpected and problematic in C code, where the two - symbols appear as two independent function declarations. */ - -void -aarch64_elf_copy_symbol_attributes (symbolS *dest, symbolS *src) -{ - struct elf_obj_sy *srcelf = symbol_get_obj (src); - struct elf_obj_sy *destelf = symbol_get_obj (dest); - /* If size is unset, copy size from src. Because we don't track whether - .size has been used, we can't differentiate .size dest, 0 from the case - where dest's size is unset. */ - if (!destelf->size && S_GET_SIZE (dest) == 0) - { - if (srcelf->size) - { - destelf->size = XNEW (expressionS); - *destelf->size = *srcelf->size; - } - S_SET_SIZE (dest, S_GET_SIZE (src)); - } -} -#endif diff --git a/gas/config/tc-aarch64.h b/gas/config/tc-aarch64.h index acf1ce4..0d8066c 100644 --- a/gas/config/tc-aarch64.h +++ b/gas/config/tc-aarch64.h @@ -133,9 +133,17 @@ void aarch64_copy_symbol_attributes (symbolS *, symbolS *); #endif #ifdef OBJ_ELF -void aarch64_elf_copy_symbol_attributes (symbolS *, symbolS *); +/* Don't copy st_other. + This is needed so AArch64 specific st_other values can be independently + specified for an IFUNC resolver (that is called by the dynamic linker) + and the symbol it resolves (aliased to the resolver). In particular, + if a function symbol has special st_other value set via directives, + then attaching an IFUNC resolver to that symbol should not override + the st_other setting. Requiring the directive on the IFUNC resolver + symbol would be unexpected and problematic in C code, where the two + symbols appear as two independent function declarations. */ #define OBJ_COPY_SYMBOL_ATTRIBUTES(DEST, SRC) \ - aarch64_elf_copy_symbol_attributes (DEST, SRC) + elf_copy_symbol_size (DEST, SRC) #endif #define TC_START_LABEL(STR, NUL_CHAR, NEXT_CHAR) \ @@ -162,10 +170,6 @@ void aarch64_elf_copy_symbol_attributes (symbolS *, symbolS *); #define TC_CONS_FIX_NEW(f,w,s,e,r) cons_fix_new_aarch64 ((f), (w), (s), (e)) -/* Max space for a rs_align_code fragment is 3 unaligned bytes - (fr_fix) plus 4 bytes to contain the repeating NOP (fr_var). */ -#define MAX_MEM_FOR_RS_ALIGN_CODE 7 - /* For frags in code sections we need to record whether they contain code or data. */ struct aarch64_frag_type @@ -183,6 +187,9 @@ struct aarch64_frag_type #define TC_FRAG_TYPE struct aarch64_frag_type #define TC_FRAG_INIT(fragp, max_bytes) aarch64_init_frag (fragp, max_bytes) #define HANDLE_ALIGN(sec, fragp) aarch64_handle_align (fragp) +/* Max space for a rs_align_code fragment is 3 unaligned bytes + (fr_fix) plus 4 bytes to contain the repeating NOP (fr_var). */ +#define MAX_MEM_FOR_RS_ALIGN_CODE(p2align, max) (3 + 4) #define md_do_align(N, FILL, LEN, MAX, LABEL) \ if (FILL == NULL && (N) != 0 && ! need_pass_2 && subseg_text_p (now_seg)) \ @@ -309,7 +316,7 @@ extern bool aarch64_sframe_ra_tracking_p (void); extern offsetT aarch64_sframe_cfa_ra_offset (void); #define sframe_cfa_ra_offset aarch64_sframe_cfa_ra_offset -/* The abi/arch indentifier for SFrame. */ +/* The abi/arch identifier for SFrame. */ unsigned char aarch64_sframe_get_abi_arch (void); #define sframe_get_abi_arch aarch64_sframe_get_abi_arch diff --git a/gas/config/tc-alpha.c b/gas/config/tc-alpha.c index a90ceb4..f9ca351 100644 --- a/gas/config/tc-alpha.c +++ b/gas/config/tc-alpha.c @@ -589,7 +589,7 @@ get_alpha_reloc_tag (long sequence) sprintf (buffer, "!%ld", sequence); - info = (struct alpha_reloc_tag *) str_hash_find (alpha_literal_hash, buffer); + info = str_hash_find (alpha_literal_hash, buffer); if (! info) { size_t len = strlen (buffer); @@ -1170,8 +1170,7 @@ assemble_tokens_to_insn (const char *opname, const struct alpha_opcode *opcode; /* Search opcodes. */ - opcode = (const struct alpha_opcode *) str_hash_find (alpha_opcode_hash, - opname); + opcode = str_hash_find (alpha_opcode_hash, opname); if (opcode) { int cpumatch; @@ -3318,8 +3317,7 @@ assemble_tokens (const char *opname, #endif if (local_macros_on) { - macro = (const struct alpha_macro *) str_hash_find (alpha_macro_hash, - opname); + macro = str_hash_find (alpha_macro_hash, opname); if (macro) { found_something = 1; @@ -3333,8 +3331,7 @@ assemble_tokens (const char *opname, } /* Search opcodes. */ - opcode = (const struct alpha_opcode *) str_hash_find (alpha_opcode_hash, - opname); + opcode = str_hash_find (alpha_opcode_hash, opname); if (opcode) { found_something = 1; @@ -3789,7 +3786,7 @@ s_alpha_end (int dummy ATTRIBUTE_UNUSED) if (sym && cur_frame_data) { OBJ_SYMFIELD_TYPE *obj = symbol_get_obj (sym); - expressionS *exp = XNEW (expressionS); + expressionS *exp = notes_alloc (sizeof (*exp)); obj->size = exp; exp->X_op = O_subtract; @@ -5368,7 +5365,7 @@ alpha_handle_align (fragS *fragp) 0x00, 0x00, 0xfe, 0x2f }; - int bytes, fix; + size_t bytes, fix; char *p; if (fragp->fr_type != rs_align_code) @@ -5376,16 +5373,14 @@ alpha_handle_align (fragS *fragp) bytes = fragp->fr_next->fr_address - fragp->fr_address - fragp->fr_fix; p = fragp->fr_literal + fragp->fr_fix; - fix = 0; - if (bytes & 3) + fix = bytes & 3; + if (fix) { - fix = bytes & 3; memset (p, 0, fix); p += fix; bytes -= fix; } - if (bytes & 4) { memcpy (p, unop, 4); @@ -5393,11 +5388,13 @@ alpha_handle_align (fragS *fragp) bytes -= 4; fix += 4; } - - memcpy (p, nopunop, 8); - fragp->fr_fix += fix; - fragp->fr_var = 8; + + if (bytes) + { + memcpy (p, nopunop, 8); + fragp->fr_var = 8; + } } /* Public interface functions. */ diff --git a/gas/config/tc-alpha.h b/gas/config/tc-alpha.h index 466a7a0..a5144e5 100644 --- a/gas/config/tc-alpha.h +++ b/gas/config/tc-alpha.h @@ -111,7 +111,7 @@ extern void alpha_cons_align (int); #define HANDLE_ALIGN(sec, fragp) alpha_handle_align (fragp) extern void alpha_handle_align (struct frag *); -#define MAX_MEM_FOR_RS_ALIGN_CODE (3 + 4 + 8) +#define MAX_MEM_FOR_RS_ALIGN_CODE(p2align, max) (3 + 4 + 8) #ifdef OBJ_ECOFF #define tc_frob_file_before_adjust() alpha_frob_file_before_adjust () diff --git a/gas/config/tc-arc.h b/gas/config/tc-arc.h index 727041a..145d955 100644 --- a/gas/config/tc-arc.h +++ b/gas/config/tc-arc.h @@ -106,7 +106,7 @@ extern const char *arc_target_format; /* [ ] is index operator. */ #define NEED_INDEX_OPERATOR -#define MAX_MEM_FOR_RS_ALIGN_CODE (1+2) +#define MAX_MEM_FOR_RS_ALIGN_CODE(p2align, max) (1 + 2) /* HANDLE_ALIGN called after all the assembly has been done, so we can fill in all the rs_align_code type frags with diff --git a/gas/config/tc-arm.c b/gas/config/tc-arm.c index 822fd3d..13afe8d 100644 --- a/gas/config/tc-arm.c +++ b/gas/config/tc-arm.c @@ -1377,7 +1377,7 @@ arm_reg_parse_multi (char **ccp) p++; while (ISALPHA (*p) || ISDIGIT (*p) || *p == '_'); - reg = (struct reg_entry *) str_hash_find_n (arm_reg_hsh, start, p - start); + reg = str_hash_find_n (arm_reg_hsh, start, p - start); if (!reg) return NULL; @@ -2505,8 +2505,7 @@ parse_reloc (char **str) if (*q != ')') return -1; - if ((r = (struct reloc_entry *) - str_hash_find_n (arm_reloc_hsh, p, q - p)) == NULL) + if ((r = str_hash_find_n (arm_reloc_hsh, p, q - p)) == NULL) return -1; *str = q + 1; @@ -2521,7 +2520,7 @@ insert_reg_alias (char *str, unsigned number, int type) struct reg_entry *new_reg; const char *name; - if ((new_reg = (struct reg_entry *) str_hash_find (arm_reg_hsh, str)) != 0) + if ((new_reg = str_hash_find (arm_reg_hsh, str)) != 0) { if (new_reg->builtin) as_warn (_("ignoring attempt to redefine built-in register '%s'"), str); @@ -2591,7 +2590,7 @@ create_register_alias (char * newname, char *p) if (*oldname == '\0') return false; - old = (struct reg_entry *) str_hash_find (arm_reg_hsh, oldname); + old = str_hash_find (arm_reg_hsh, oldname); if (!old) { as_warn (_("unknown register '%s' -- .req ignored"), oldname); @@ -2838,8 +2837,7 @@ s_unreq (int a ATTRIBUTE_UNUSED) as_bad (_("invalid syntax for .unreq directive")); else { - struct reg_entry *reg - = (struct reg_entry *) str_hash_find (arm_reg_hsh, name); + struct reg_entry *reg = str_hash_find (arm_reg_hsh, name); if (!reg) as_bad (_("unknown register alias '%s'"), name); @@ -2863,7 +2861,7 @@ s_unreq (int a ATTRIBUTE_UNUSED) nbuf = strdup (name); for (p = nbuf; *p; p++) *p = TOUPPER (*p); - reg = (struct reg_entry *) str_hash_find (arm_reg_hsh, nbuf); + reg = str_hash_find (arm_reg_hsh, nbuf); if (reg) { str_hash_delete (arm_reg_hsh, nbuf); @@ -2874,7 +2872,7 @@ s_unreq (int a ATTRIBUTE_UNUSED) for (p = nbuf; *p; p++) *p = TOLOWER (*p); - reg = (struct reg_entry *) str_hash_find (arm_reg_hsh, nbuf); + reg = str_hash_find (arm_reg_hsh, nbuf); if (reg) { str_hash_delete (arm_reg_hsh, nbuf); @@ -3106,7 +3104,7 @@ find_real_start (symbolS * symbolP) if (new_target == NULL) { - as_warn (_("Failed to find real start of function: %s\n"), name); + as_warn (_("Failed to find real start of function: %s"), name); new_target = symbolP; } @@ -3434,7 +3432,11 @@ s_ccs_def (int name) if (codecomposer_syntax) s_globl (name); else +#ifdef OBJ_COFF + obj_coff_def (name); +#else as_bad (_(".def pseudo-op only available with -mccs flag.")); +#endif } /* Directives: Literal pools. */ @@ -4256,7 +4258,7 @@ s_arm_unwind_save_pseudo (int regno) add_unwind_opcode (op, 1); break; default: - as_bad (_("Unknown register no. encountered: %d\n"), regno); + as_bad (_("Unknown register no. encountered: %d"), regno); } } @@ -5446,9 +5448,7 @@ parse_shift (char **str, int i, enum parse_shift_mode mode) return FAIL; } - shift_name - = (const struct asm_shift_name *) str_hash_find_n (arm_shift_hsh, *str, - p - *str); + shift_name = str_hash_find_n (arm_shift_hsh, *str, p - *str); if (shift_name == NULL) { @@ -6256,8 +6256,7 @@ parse_psr (char **str, bool lhs) || strncasecmp (start, "psr", 3) == 0) p = start + strcspn (start, "rR") + 1; - psr = (const struct asm_psr *) str_hash_find_n (arm_v7m_psr_hsh, start, - p - start); + psr = str_hash_find_n (arm_v7m_psr_hsh, start, p - start); if (!psr) return FAIL; @@ -6359,8 +6358,7 @@ parse_psr (char **str, bool lhs) } else { - psr = (const struct asm_psr *) str_hash_find_n (arm_psr_hsh, start, - p - start); + psr = str_hash_find_n (arm_psr_hsh, start, p - start); if (!psr) goto error; @@ -6557,7 +6555,7 @@ parse_cond (char **str) n++; } - c = (const struct asm_cond *) str_hash_find_n (arm_cond_hsh, cond, n); + c = str_hash_find_n (arm_cond_hsh, cond, n); if (!c) { inst.error = _("condition required"); @@ -6580,8 +6578,7 @@ parse_barrier (char **str) while (ISALPHA (*q)) q++; - o = (const struct asm_barrier_opt *) str_hash_find_n (arm_barrier_opt_hsh, p, - q - p); + o = str_hash_find_n (arm_barrier_opt_hsh, p, q - p); if (!o) return FAIL; @@ -15427,7 +15424,7 @@ do_vfp_nsyn_opcode (const char *opname) { const struct asm_opcode *opcode; - opcode = (const struct asm_opcode *) str_hash_find (arm_ops_hsh, opname); + opcode = str_hash_find (arm_ops_hsh, opname); if (!opcode) abort (); @@ -22481,8 +22478,7 @@ opcode_lookup (char **str) *str = end; /* Look for unaffixed or special-case affixed mnemonic. */ - opcode = (const struct asm_opcode *) str_hash_find_n (arm_ops_hsh, base, - end - base); + opcode = str_hash_find_n (arm_ops_hsh, base, end - base); cond = NULL; if (opcode) { @@ -22496,7 +22492,7 @@ opcode_lookup (char **str) if (warn_on_deprecated && unified_syntax) as_tsktsk (_("conditional infixes are deprecated in unified syntax")); affix = base + (opcode->tag - OT_odd_infix_0); - cond = (const struct asm_cond *) str_hash_find_n (arm_cond_hsh, affix, 2); + cond = str_hash_find_n (arm_cond_hsh, affix, 2); gas_assert (cond); inst.cond = cond->value; @@ -22509,9 +22505,8 @@ opcode_lookup (char **str) if (end - base < 2) return NULL; affix = end - 1; - cond = (const struct asm_cond *) str_hash_find_n (arm_vcond_hsh, affix, 1); - opcode = (const struct asm_opcode *) str_hash_find_n (arm_ops_hsh, base, - affix - base); + cond = str_hash_find_n (arm_vcond_hsh, affix, 1); + opcode = str_hash_find_n (arm_ops_hsh, base, affix - base); /* A known edge case is a conflict between an 'e' as a suffix for an Else of a VPT predication block and an 'ne' suffix for an IT block. @@ -22543,9 +22538,8 @@ opcode_lookup (char **str) /* Look for suffixed mnemonic. */ affix = end - 2; - cond = (const struct asm_cond *) str_hash_find_n (arm_cond_hsh, affix, 2); - opcode = (const struct asm_opcode *) str_hash_find_n (arm_ops_hsh, base, - affix - base); + cond = str_hash_find_n (arm_cond_hsh, affix, 2); + opcode = str_hash_find_n (arm_ops_hsh, base, affix - base); } if (opcode && cond) @@ -22594,14 +22588,13 @@ opcode_lookup (char **str) /* Look for infixed mnemonic in the usual position. */ affix = base + 3; - cond = (const struct asm_cond *) str_hash_find_n (arm_cond_hsh, affix, 2); + cond = str_hash_find_n (arm_cond_hsh, affix, 2); if (!cond) return NULL; memcpy (save, affix, 2); memmove (affix, affix + 2, (end - affix) - 2); - opcode = (const struct asm_opcode *) str_hash_find_n (arm_ops_hsh, base, - (end - base) - 2); + opcode = str_hash_find_n (arm_ops_hsh, base, (end - base) - 2); memmove (affix + 2, affix, (end - affix) - 2); memcpy (affix, save, 2); @@ -26598,10 +26591,6 @@ arm_handle_align (fragS * fragP) bytes = fragP->fr_next->fr_address - fragP->fr_address - fragP->fr_fix; p = fragP->fr_literal + fragP->fr_fix; - fix = 0; - - if (bytes > MAX_MEM_FOR_RS_ALIGN_CODE) - bytes &= MAX_MEM_FOR_RS_ALIGN_CODE; gas_assert ((fragP->tc_frag_data.thumb_mode & MODE_RECORDED) != 0); @@ -26632,11 +26621,9 @@ arm_handle_align (fragS * fragP) #endif } - fragP->fr_var = noop_size; - - if (bytes & (noop_size - 1)) + fix = bytes & (noop_size - 1); + if (fix != 0) { - fix = bytes & (noop_size - 1); #ifdef OBJ_ELF insert_data_mapping_symbol (state, fragP->fr_fix, fragP, fix); #endif @@ -26660,45 +26647,12 @@ arm_handle_align (fragS * fragP) noop_size = 4; } - while (bytes >= noop_size) - { - memcpy (p, noop, noop_size); - p += noop_size; - bytes -= noop_size; - fix += noop_size; - } - fragP->fr_fix += fix; -} - -/* Called from md_do_align. Used to create an alignment - frag in a code section. */ - -void -arm_frag_align_code (int n, int max) -{ - char * p; - - /* We assume that there will never be a requirement - to support alignments greater than MAX_MEM_FOR_RS_ALIGN_CODE bytes. */ - if (max > MAX_MEM_FOR_RS_ALIGN_CODE) + if (bytes != 0) { - char err_msg[128]; - - sprintf (err_msg, - _("alignments greater than %d bytes not supported in .text sections."), - MAX_MEM_FOR_RS_ALIGN_CODE + 1); - as_fatal ("%s", err_msg); + fragP->fr_var = noop_size; + memcpy (p, noop, noop_size); } - - p = frag_var (rs_align_code, - MAX_MEM_FOR_RS_ALIGN_CODE, - 1, - (relax_substateT) max, - (symbolS *) NULL, - (offsetT) n, - (char *) NULL); - *p = 0; } /* Perform target specific initialisation of a frag. @@ -31855,7 +31809,7 @@ arm_parse_arch (const char *str) return true; } - as_bad (_("unknown architecture `%s'\n"), str); + as_bad (_("unknown architecture `%s'"), str); return false; } @@ -31871,7 +31825,7 @@ arm_parse_fpu (const char * str) return true; } - as_bad (_("unknown floating point format `%s'\n"), str); + as_bad (_("unknown floating point format `%s'"), str); return false; } @@ -31887,7 +31841,7 @@ arm_parse_float_abi (const char * str) return true; } - as_bad (_("unknown floating point abi `%s'\n"), str); + as_bad (_("unknown floating point abi `%s'"), str); return false; } @@ -31903,7 +31857,7 @@ arm_parse_eabi (const char * str) meabi_flags = opt->value; return true; } - as_bad (_("unknown EABI `%s'\n"), str); + as_bad (_("unknown EABI `%s'"), str); return false; } #endif @@ -32415,7 +32369,7 @@ aeabi_set_public_attributes (void) if (arch == -1) arch = get_aeabi_cpu_arch_from_fset (&flags_arch, &flags_ext, &profile, 0); if (arch == -1) - as_bad (_("no architecture contains all the instructions used\n")); + as_bad (_("no architecture contains all the instructions used")); /* Tag_CPU_name. */ if (selected_cpu_name[0]) @@ -32675,7 +32629,7 @@ s_arm_arch (int ignored ATTRIBUTE_UNUSED) return; } - as_bad (_("unknown architecture `%s'\n"), name); + as_bad (_("unknown architecture `%s'"), name); *input_line_pointer = saved_char; ignore_rest_of_line (); } @@ -32711,7 +32665,7 @@ s_arm_object_arch (int ignored ATTRIBUTE_UNUSED) return; } - as_bad (_("unknown architecture `%s'\n"), name); + as_bad (_("unknown architecture `%s'"), name); *input_line_pointer = saved_char; ignore_rest_of_line (); } @@ -32790,8 +32744,12 @@ s_arm_arch_extension (int ignored ATTRIBUTE_UNUSED) if (i == nb_allowed_archs) { - as_bad (_("architectural extension `%s' is not allowed for the " - "current base architecture"), name); + if (adding_value) + as_bad (_("architectural extension `%s' is not allowed for the " + "current base architecture"), name); + else + as_tsktsk (_("disabling feature `%s' has no effect on the " + "current base architecture"), name); break; } @@ -32813,7 +32771,7 @@ s_arm_arch_extension (int ignored ATTRIBUTE_UNUSED) } if (opt->name == NULL) - as_bad (_("unknown architecture extension `%s'\n"), name); + as_bad (_("unknown architecture extension `%s'"), name); *input_line_pointer = saved_char; } @@ -32854,7 +32812,7 @@ s_arm_fpu (int ignored ATTRIBUTE_UNUSED) return; } - as_bad (_("unknown floating point format `%s'\n"), name); + as_bad (_("unknown floating point format `%s'"), name); *input_line_pointer = saved_char; ignore_rest_of_line (); } diff --git a/gas/config/tc-arm.h b/gas/config/tc-arm.h index 24e2197..aa5f117 100644 --- a/gas/config/tc-arm.h +++ b/gas/config/tc-arm.h @@ -203,9 +203,6 @@ void arm_copy_symbol_attributes (symbolS *, symbolS *); #define TC_CONS_FIX_NEW cons_fix_new_arm -#define MAX_MEM_ALIGNMENT_BYTES 6 -#define MAX_MEM_FOR_RS_ALIGN_CODE ((1 << MAX_MEM_ALIGNMENT_BYTES) - 1) - /* For frags in code sections we need to record whether they contain ARM code or THUMB code. This is that if they have to be aligned, they can contain the correct type of no-op instruction. */ @@ -231,6 +228,7 @@ arm_min (int am_p1, int am_p2) #define TC_FRAG_INIT(fragp, max_bytes) arm_init_frag (fragp, max_bytes) #define TC_ALIGN_ZERO_IS_DEFAULT 1 #define HANDLE_ALIGN(sec, fragp) arm_handle_align (fragp) +#define MAX_MEM_FOR_RS_ALIGN_CODE(p2align, max) (3 + 4) /* PR gas/19276: COFF/PE segment alignment is already handled in coff_frob_section(). */ #ifndef TE_PE #define SUB_SEGMENT_ALIGN(SEG, FRCHAIN) \ @@ -238,13 +236,6 @@ arm_min (int am_p1, int am_p2) ? arm_min (2, get_recorded_alignment (SEG)) : 0) #endif -#define md_do_align(N, FILL, LEN, MAX, LABEL) \ - if (FILL == NULL && (N) != 0 && ! need_pass_2 && subseg_text_p (now_seg)) \ - { \ - arm_frag_align_code (N, MAX); \ - goto LABEL; \ - } - #define DWARF2_LINE_MIN_INSN_LENGTH 2 /* The lr register is r14. */ @@ -339,7 +330,6 @@ struct arm_segment_info_type #define MD_PCREL_FROM_SECTION(F,S) md_pcrel_from_section(F,S) -extern void arm_frag_align_code (int, int); extern void arm_validate_fix (struct fix *); extern const char * elf32_arm_target_format (void); extern void arm_elf_change_section (void); diff --git a/gas/config/tc-avr.c b/gas/config/tc-avr.c index a7678e2..650b736 100644 --- a/gas/config/tc-avr.c +++ b/gas/config/tc-avr.c @@ -841,12 +841,10 @@ md_begin (void) for (i = 0; i < ARRAY_SIZE (avr_no_sreg); ++i) { gas_assert (str_hash_find (avr_hash, avr_no_sreg[i])); - str_hash_insert (avr_no_sreg_hash, avr_no_sreg[i], - (void *) 4 /* dummy */, 0); + str_hash_insert_int (avr_no_sreg_hash, avr_no_sreg[i], 0 /* dummy */, 0); } - avr_gccisr_opcode = (struct avr_opcodes_s*) str_hash_find (avr_hash, - "__gcc_isr"); + avr_gccisr_opcode = str_hash_find (avr_hash, "__gcc_isr"); gas_assert (avr_gccisr_opcode); bfd_set_arch_mach (stdoutput, TARGET_ARCH, avr_mcu->mach); @@ -1885,7 +1883,7 @@ md_assemble (char *str) if (!op[0]) as_bad (_("can't find opcode ")); - opcode = (struct avr_opcodes_s *) str_hash_find (avr_hash, op); + opcode = str_hash_find (avr_hash, op); if (opcode && !avr_opt.all_opcodes) { @@ -2464,7 +2462,7 @@ avr_update_gccisr (struct avr_opcodes_s *opcode, int reg1, int reg2) /* SREG: Look up instructions that don't clobber SREG. */ if (!avr_isr.need_sreg - && !str_hash_find (avr_no_sreg_hash, opcode->name)) + && str_hash_find_int (avr_no_sreg_hash, opcode->name) < 0) { avr_isr.need_sreg = 1; } @@ -2507,8 +2505,7 @@ avr_emit_insn (const char *insn, int reg, char **pwhere) { const int sreg = 0x3f; unsigned bin = 0; - const struct avr_opcodes_s *op - = (struct avr_opcodes_s*) str_hash_find (avr_hash, insn); + const struct avr_opcodes_s *op = str_hash_find (avr_hash, insn); /* We only have to deal with: IN, OUT, PUSH, POP, CLR, LDI 0, MOV R1. All of these deal with at least one Reg and are 1-word instructions. */ diff --git a/gas/config/tc-cr16.c b/gas/config/tc-cr16.c index 751a861..62a7deb 100644 --- a/gas/config/tc-cr16.c +++ b/gas/config/tc-cr16.c @@ -329,7 +329,7 @@ get_register (char *reg_name) { const reg_entry *rreg; - rreg = (const reg_entry *) str_hash_find (reg_hash, reg_name); + rreg = str_hash_find (reg_hash, reg_name); if (rreg != NULL) return rreg->value.reg_val; @@ -350,10 +350,10 @@ get_register_pair (char *reg_name) tmp_rp[0] = '('; strcat (tmp_rp, reg_name); strcat (tmp_rp,")"); - rreg = (const reg_entry *) str_hash_find (regp_hash, tmp_rp); + rreg = str_hash_find (regp_hash, tmp_rp); } else - rreg = (const reg_entry *) str_hash_find (regp_hash, reg_name); + rreg = str_hash_find (regp_hash, reg_name); if (rreg != NULL) return rreg->value.reg_val; @@ -368,7 +368,7 @@ get_index_register (char *reg_name) { const reg_entry *rreg; - rreg = (const reg_entry *) str_hash_find (reg_hash, reg_name); + rreg = str_hash_find (reg_hash, reg_name); if ((rreg != NULL) && ((rreg->value.reg_val == 12) || (rreg->value.reg_val == 13))) @@ -383,7 +383,7 @@ get_index_register_pair (char *reg_name) { const reg_entry *rreg; - rreg = (const reg_entry *) str_hash_find (regp_hash, reg_name); + rreg = str_hash_find (regp_hash, reg_name); if (rreg != NULL) { @@ -404,7 +404,7 @@ get_pregister (char *preg_name) { const reg_entry *prreg; - prreg = (const reg_entry *) str_hash_find (preg_hash, preg_name); + prreg = str_hash_find (preg_hash, preg_name); if (prreg != NULL) return prreg->value.preg_val; @@ -419,7 +419,7 @@ get_pregisterp (char *preg_name) { const reg_entry *prreg; - prreg = (const reg_entry *) str_hash_find (pregp_hash, preg_name); + prreg = str_hash_find (pregp_hash, preg_name); if (prreg != NULL) return prreg->value.preg_val; @@ -2469,7 +2469,7 @@ cr16_assemble (const char *op, char *param) ins cr16_ins; /* Find the instruction. */ - instruction = (const inst *) str_hash_find (cr16_inst_hash, op); + instruction = str_hash_find (cr16_inst_hash, op); if (instruction == NULL) { as_bad (_("Unknown opcode: `%s'"), op); @@ -2539,7 +2539,7 @@ md_assemble (char *op) { strcpy (param1, param); /* Find the instruction. */ - instruction = (const inst *) str_hash_find (cr16_inst_hash, op); + instruction = str_hash_find (cr16_inst_hash, op); parse_operands (&cr16_ins, param1); if (((&cr16_ins)->arg[0].type == arg_ic) && ((&cr16_ins)->arg[0].constant >= 0)) diff --git a/gas/config/tc-cris.c b/gas/config/tc-cris.c index 2204869..5780386 100644 --- a/gas/config/tc-cris.c +++ b/gas/config/tc-cris.c @@ -1552,7 +1552,7 @@ cris_process_instruction (char *insn_text, struct cris_instruction *out_insnp, } /* Find the instruction. */ - instruction = (struct cris_opcode *) str_hash_find (op_hash, insn_text); + instruction = str_hash_find (op_hash, insn_text); if (instruction == NULL) { as_bad (_("Unknown opcode: `%s'"), insn_text); @@ -4039,9 +4039,8 @@ void md_apply_fix (fixS *fixP, valueT *valP, segT seg) { /* This assignment truncates upper bits if valueT is 64 bits (as with - --enable-64-bit-bfd), which is fine here, though we cast to avoid - any compiler warnings. */ - long val = (long) *valP; + --enable-64-bit-bfd), which is fine here. */ + long val = *valP; char *buf = fixP->fx_where + fixP->fx_frag->fr_literal; if (fixP->fx_addsy == 0 && !fixP->fx_pcrel) diff --git a/gas/config/tc-crx.c b/gas/config/tc-crx.c index f62424b..fffd3f1 100644 --- a/gas/config/tc-crx.c +++ b/gas/config/tc-crx.c @@ -184,7 +184,7 @@ get_register (char *reg_name) { const reg_entry *rreg; - rreg = (const reg_entry *) str_hash_find (reg_hash, reg_name); + rreg = str_hash_find (reg_hash, reg_name); if (rreg != NULL) return rreg->value.reg_val; @@ -199,7 +199,7 @@ get_copregister (char *copreg_name) { const reg_entry *coreg; - coreg = (const reg_entry *) str_hash_find (copreg_hash, copreg_name); + coreg = str_hash_find (copreg_hash, copreg_name); if (coreg != NULL) return coreg->value.copreg_val; @@ -1933,7 +1933,7 @@ md_assemble (char *op) *param++ = '\0'; /* Find the instruction. */ - instruction = (const inst *) str_hash_find (crx_inst_hash, op); + instruction = str_hash_find (crx_inst_hash, op); if (instruction == NULL) { as_bad (_("Unknown opcode: `%s'"), op); diff --git a/gas/config/tc-csky.c b/gas/config/tc-csky.c index 81f1b75..beb46fa 100644 --- a/gas/config/tc-csky.c +++ b/gas/config/tc-csky.c @@ -632,102 +632,120 @@ struct csky_cpu_info #define CSKY_FEATURES_DEF_NULL() \ - {{0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}} + {{0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}, \ + {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}} #define CSKY_FEATURES_DEF_e(isa_e) \ {FEATURE_DSP_EXT(isa_e), \ - {0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}} + {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}, \ + {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}} #define CSKY_FEATURES_DEF_t(isa_t) \ {FEATURE_TRUST(isa_t), \ - {0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}} + {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}, \ + {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}} #define CSKY_FEATURES_DEF_f(isa_f) \ {FEATURE_FLOAT(isa_f), \ - {0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}} + {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}, \ + {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}} #define CSKY_FEATURES_DEF_v(isa_v) \ {FEATURE_VDSP(isa_v), \ - {0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}} + {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}, \ + {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}} #define CSKY_FEATURES_DEF_ef(isa_e, isa_f) \ {FEATURE_DSP_EXT(isa_e), \ FEATURE_FLOAT(isa_f), \ - {0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}} + {0,0,0}, {0,0,0}, {0,0,0}, \ + {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}} #define CSKY_FEATURES_DEF_jt(isa_j, isa_t) \ {FEATURE_JAVA(isa_j), \ FEATURE_TRUST(isa_t), \ - {0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}} + {0,0,0}, {0,0,0}, {0,0,0}, \ + {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}} #define CSKY_FEATURES_DEF_efht(isa_e, isa_f, isa_h, isa_t) \ {FEATURE_DSP_EXT(isa_e), \ FEATURE_FLOAT(isa_f), \ FEATURE_SHIELD(isa_h), \ FEATURE_TRUST(isa_t), \ - {0}, {0}, {0}, {0}, {0}, {0}} + {0,0,0}, \ + {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}} #define CSKY_FEATURES_DEF_efv(isa_e, isa_f, isa_v) \ {FEATURE_DSP_EXT(isa_e), \ FEATURE_FLOAT(isa_f), \ FEATURE_VDSP(isa_v), \ - {0}, {0}, {0}, {0}, {0}, {0}, {0}} + {0,0,0}, {0,0,0}, \ + {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}} #define CSKY_FEATURES_DEF_eft(isa_e, isa_f, isa_t) \ {FEATURE_DSP_EXT(isa_e), \ FEATURE_FLOAT(isa_f), \ FEATURE_TRUST(isa_t), \ - {0}, {0}, {0}, {0}, {0}, {0}, {0}} + {0,0,0}, {0,0,0}, \ + {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}} #define CSKY_FEATURES_DEF_d(isa_d) \ - {FEATURE_DSP(isa_d), \ - {0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}} + {FEATURE_DSP(isa_d), \ + {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}, \ + {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}} #define CSKY_FEATURES_DEF_df(isa_d, isa_f) \ - {FEATURE_DSP(isa_d), \ - FEATURE_FLOAT(isa_f), \ - {0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}} + {FEATURE_DSP(isa_d), \ + FEATURE_FLOAT(isa_f), \ + {0,0,0}, {0,0,0}, {0,0,0}, \ + {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}} #define CSKY_FEATURES_DEF_ft(isa_f, isa_t) \ {FEATURE_FLOAT(isa_f), \ FEATURE_TRUST(isa_t), \ - {0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}} + {0,0,0}, {0,0,0}, {0,0,0}, \ + {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}} #define CSKY_FEATURES_DEF_tv(isa_t, isa_v) \ {FEATURE_TRUST(isa_t), \ FEATURE_VDSP(isa_v), \ - {0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}} + {0,0,0}, {0,0,0}, {0,0,0}, \ + {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}} #define CSKY_FEATURES_DEF_fv(isa_f, isa_v) \ {FEATURE_FLOAT(isa_f), \ FEATURE_VDSP(isa_v), \ - {0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}} - + {0,0,0}, {0,0,0}, {0,0,0}, \ + {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}} #define CSKY_FEATURES_DEF_dft(isa_d, isa_f, isa_t) \ {FEATURE_DSP(isa_d), \ FEATURE_FLOAT(isa_f), \ FEATURE_TRUST(isa_t), \ - {0}, {0}, {0}, {0}, {0}, {0}, {0}} + {0,0,0}, {0,0,0}, \ + {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}} #define CSKY_FEATURES_DEF_dfv(isa_d, isa_f, isa_v) \ {FEATURE_DSP(isa_d), \ FEATURE_FLOAT(isa_f), \ FEATURE_VDSP(isa_v), \ - {0}, {0}, {0}, {0}, {0}, {0}, {0}} + {0,0,0}, {0,0,0}, \ + {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}} #define CSKY_FEATURES_DEF_ftv(isa_f, isa_t, isa_v) \ {FEATURE_FLOAT(isa_f), \ FEATURE_TRUST(isa_t), \ FEATURE_VDSP(isa_v), \ - {0}, {0}, {0}, {0}, {0}, {0}, {0}} + {0,0,0}, {0,0,0}, \ + {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}} #define CSKY_FEATURES_DEF_eftv(isa_e, isa_f, isa_t, isa_v) \ {FEATURE_DSP_EXT(isa_e), \ FEATURE_FLOAT(isa_f), \ FEATURE_TRUST(isa_t), \ FEATURE_VDSP(isa_v), \ - {0}, {0}, {0}, {0}, {0}, {0}} + {0,0,0}, \ + {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}} #define CSKY_CPU_REVERISON_r0p0(isa) \ @@ -740,13 +758,15 @@ struct csky_cpu_info {3, 0, isa} #define CSKY_CPU_REVERISON_RESERVED() \ -{{0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}, {0}} + {{0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}, \ + {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}} #define CSKY_CPU_REVERISON_R3(isa1, isa2, isa3) \ {CSKY_CPU_REVERISON_r1p0(isa1), \ CSKY_CPU_REVERISON_r2p0(isa2), \ CSKY_CPU_REVERISON_r3p0(isa3), \ - {0}, {0}, {0}, {0}, {0}, {0}, {0}} + {0,0,0}, {0,0,0}, \ + {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}, {0,0,0}} /* CSKY cpus table. */ const struct csky_cpu_info csky_cpus[] = @@ -936,7 +956,11 @@ const struct csky_cpu_info csky_cpus[] = /* Start of private CPUs. */ /* End of private CPUs. */ - {NULL}, + {NULL, + 0, + 0, + CSKY_FEATURES_DEF_NULL(), + CSKY_CPU_REVERISON_RESERVED()} }; int md_short_jump_size = 2; @@ -3386,10 +3410,8 @@ parse_opcode (char *str) csky_insn.number = csky_count_operands (opcode_end); /* Find hash by name in csky_macros_hash and csky_opcodes_hash. */ - csky_insn.macro = (struct csky_macro_info *) str_hash_find (csky_macros_hash, - macro_name); - csky_insn.opcode = (struct csky_opcode *) str_hash_find (csky_opcodes_hash, - name); + csky_insn.macro = str_hash_find (csky_macros_hash, macro_name); + csky_insn.opcode = str_hash_find (csky_opcodes_hash, name); if (csky_insn.macro == NULL && csky_insn.opcode == NULL) return false; @@ -3614,8 +3636,7 @@ get_operand_value (struct csky_opcode_info *op, if (val <= 6) { const char *name = "movi"; - csky_insn.opcode = (struct csky_opcode *) - str_hash_find (csky_opcodes_hash, name); + csky_insn.opcode = str_hash_find (csky_opcodes_hash, name); csky_insn.val[csky_insn.idx - 1] = 1 << val; } return true; @@ -3648,8 +3669,7 @@ get_operand_value (struct csky_opcode_info *op, if (log <= 6) { const char *name = "movi"; - csky_insn.opcode = (struct csky_opcode *) - str_hash_find (csky_opcodes_hash, name); + csky_insn.opcode = str_hash_find (csky_opcodes_hash, name); as_warn (_("translating mgeni to movi")); } else @@ -3686,8 +3706,7 @@ get_operand_value (struct csky_opcode_info *op, if (mask_val > 0 && mask_val < 8) { const char *op_movi = "movi"; - csky_insn.opcode = (struct csky_opcode *) - str_hash_find (csky_opcodes_hash, op_movi); + csky_insn.opcode = str_hash_find (csky_opcodes_hash, op_movi); if (csky_insn.opcode == NULL) return false; csky_insn.val[csky_insn.idx - 1] = (1 << mask_val) - 1; @@ -3747,8 +3766,7 @@ get_operand_value (struct csky_opcode_info *op, if (mask_val > 0 && mask_val < 16) { const char *op_movi = "movi"; - csky_insn.opcode = (struct csky_opcode *) - str_hash_find (csky_opcodes_hash, op_movi); + csky_insn.opcode = str_hash_find (csky_opcodes_hash, op_movi); if (csky_insn.opcode == NULL) return false; csky_insn.val[csky_insn.idx - 1] = (1 << (mask_val + 1)) - 1; @@ -6475,8 +6493,7 @@ v1_work_jbsr (void) { /* Using jsri instruction. */ const char *name = "jsri"; - csky_insn.opcode = (struct csky_opcode *) - str_hash_find (csky_opcodes_hash, name); + csky_insn.opcode = str_hash_find (csky_opcodes_hash, name); csky_insn.opcode_idx = 0; csky_insn.isize = 2; @@ -6823,8 +6840,7 @@ bool v2_work_rotlc (void) { const char *name = "addc"; - csky_insn.opcode - = (struct csky_opcode *) str_hash_find (csky_opcodes_hash, name); + csky_insn.opcode = str_hash_find (csky_opcodes_hash, name); csky_insn.opcode_idx = 0; if (csky_insn.isize == 2) { @@ -6861,8 +6877,7 @@ v2_work_bgeni (void) name = "movih"; val >>= 16; } - csky_insn.opcode - = (struct csky_opcode *) str_hash_find (csky_opcodes_hash, name); + csky_insn.opcode = str_hash_find (csky_opcodes_hash, name); csky_insn.opcode_idx = 0; csky_insn.val[1] = val; @@ -6879,8 +6894,7 @@ bool v2_work_not (void) { const char *name = "nor"; - csky_insn.opcode - = (struct csky_opcode *) str_hash_find (csky_opcodes_hash, name); + csky_insn.opcode = str_hash_find (csky_opcodes_hash, name); csky_insn.opcode_idx = 0; if (csky_insn.number == 1) { diff --git a/gas/config/tc-d10v.c b/gas/config/tc-d10v.c index dd0292a..b10cdff 100644 --- a/gas/config/tc-d10v.c +++ b/gas/config/tc-d10v.c @@ -1428,7 +1428,7 @@ do_assemble (char *str, struct d10v_opcode **opcode) return -1; /* Find the first opcode with the proper name. */ - *opcode = (struct d10v_opcode *) str_hash_find (d10v_hash, name); + *opcode = str_hash_find (d10v_hash, name); if (*opcode == NULL) return -1; @@ -1556,8 +1556,8 @@ md_apply_fix (fixS *fixP, valueT *valP, segT seg ATTRIBUTE_UNUSED) { struct d10v_opcode *rep, *repi; - rep = (struct d10v_opcode *) str_hash_find (d10v_hash, "rep"); - repi = (struct d10v_opcode *) str_hash_find (d10v_hash, "repi"); + rep = str_hash_find (d10v_hash, "rep"); + repi = str_hash_find (d10v_hash, "repi"); if ((insn & FM11) == FM11 && ((repi != NULL && (insn & repi->mask) == (unsigned) repi->opcode) diff --git a/gas/config/tc-d30v.c b/gas/config/tc-d30v.c index c3c58d1..76827d5 100644 --- a/gas/config/tc-d30v.c +++ b/gas/config/tc-d30v.c @@ -1387,7 +1387,7 @@ do_assemble (char *str, } /* Find the first opcode with the proper name. */ - opcode->op = (struct d30v_opcode *) str_hash_find (d30v_hash, name); + opcode->op = str_hash_find (d30v_hash, name); if (opcode->op == NULL) { as_bad (_("unknown opcode: %s"), name); diff --git a/gas/config/tc-dlx.c b/gas/config/tc-dlx.c index 8d830fe..abb283d 100644 --- a/gas/config/tc-dlx.c +++ b/gas/config/tc-dlx.c @@ -683,7 +683,7 @@ machine_ip (char *str) } /* Hash the opcode, insn will have the string from opcode table. */ - if ((insn = (struct machine_opcode *) str_hash_find (op_hash, str)) == NULL) + if ((insn = str_hash_find (op_hash, str)) == NULL) { /* Handle the ret and return macro here. */ if ((strcmp (str, "ret") == 0) || (strcmp (str, "return") == 0)) diff --git a/gas/config/tc-epiphany.c b/gas/config/tc-epiphany.c index c8947c8..4a027e9 100644 --- a/gas/config/tc-epiphany.c +++ b/gas/config/tc-epiphany.c @@ -314,7 +314,7 @@ static const unsigned char nop_pattern[] = { 0xa2, 0x01 }; void epiphany_handle_align (fragS *fragp) { - int bytes, fix; + int bytes; char *p; if (fragp->fr_type != rs_align_code) @@ -322,23 +322,19 @@ epiphany_handle_align (fragS *fragp) bytes = fragp->fr_next->fr_address - fragp->fr_address - fragp->fr_fix; p = fragp->fr_literal + fragp->fr_fix; - fix = 0; if (bytes & 1) { - fix = 1; *p++ = 0; bytes--; + fragp->fr_fix++; } - if (bytes & 2) + if (bytes != 0) { + fragp->fr_var = 2; memcpy (p, nop_pattern, 2); - p += 2; - bytes -= 2; - fix += 2; } - fragp->fr_fix += fix; } /* Read a comma separated incrementing list of register names diff --git a/gas/config/tc-epiphany.h b/gas/config/tc-epiphany.h index dde6733..78adcd6 100644 --- a/gas/config/tc-epiphany.h +++ b/gas/config/tc-epiphany.h @@ -74,6 +74,7 @@ extern int epiphany_cgen_parse_fix_exp (int, expressionS *); #define HANDLE_ALIGN(s, f) epiphany_handle_align (f) extern void epiphany_handle_align (fragS *); +#define MAX_MEM_FOR_RS_ALIGN_CODE(p2align, max) (1 + 2) #define TARGET_FORMAT "elf32-epiphany" diff --git a/gas/config/tc-frv.h b/gas/config/tc-frv.h index 21e3bac..609ed6f 100644 --- a/gas/config/tc-frv.h +++ b/gas/config/tc-frv.h @@ -98,7 +98,7 @@ extern void frv_frob_file (void); code actually happens to run, but this is probably too much effort for little gain. This code is not meant to be run anyway, so just emit nops. */ -#define MAX_MEM_FOR_RS_ALIGN_CODE (3 + 4) +#define MAX_MEM_FOR_RS_ALIGN_CODE(p2align, max) (3 + 4) #define HANDLE_ALIGN(SEC, FRAGP) do \ if ((FRAGP)->fr_type == rs_align_code) \ { \ diff --git a/gas/config/tc-ft32.c b/gas/config/tc-ft32.c index 50958d5..83d3e1f 100644 --- a/gas/config/tc-ft32.c +++ b/gas/config/tc-ft32.c @@ -230,7 +230,7 @@ md_assemble (char *str) if (nlen == 0) as_bad (_("can't find opcode ")); - opcode = (ft32_opc_info_t *) str_hash_find (opcode_hash_control, op_start); + opcode = str_hash_find (opcode_hash_control, op_start); *op_end = pend; if (opcode == NULL) diff --git a/gas/config/tc-h8300.c b/gas/config/tc-h8300.c index eeee4c8..12456b2 100644 --- a/gas/config/tc-h8300.c +++ b/gas/config/tc-h8300.c @@ -1937,8 +1937,7 @@ md_assemble (char *str) while (*++slash) *slash = TOLOWER (*slash); - instruction = (const struct h8_instruction *) - str_hash_find (opcode_hash_control, op_start); + instruction = str_hash_find (opcode_hash_control, op_start); if (instruction == NULL) { diff --git a/gas/config/tc-hppa.c b/gas/config/tc-hppa.c index c2a981e..5018dfc 100644 --- a/gas/config/tc-hppa.c +++ b/gas/config/tc-hppa.c @@ -3210,7 +3210,7 @@ pa_ip (char *str) } /* Look up the opcode in the hash table. */ - if ((insn = (struct pa_opcode *) str_hash_find (op_hash, str)) == NULL) + if ((insn = str_hash_find (op_hash, str)) == NULL) { as_bad (_("Unknown opcode: `%s'"), str); return; diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c index 2c61353..b0a22bb 100644 --- a/gas/config/tc-i386.c +++ b/gas/config/tc-i386.c @@ -678,9 +678,13 @@ static int use_big_obj = 0; /* 1 if generating code for a shared library. */ static int shared = 0; -unsigned int x86_sframe_cfa_sp_reg; +const unsigned int x86_sframe_cfa_sp_reg = REG_SP; /* The other CFA base register for SFrame stack trace info. */ -unsigned int x86_sframe_cfa_fp_reg; +const unsigned int x86_sframe_cfa_fp_reg = REG_FP; +/* The return address register for SFrame stack trace info. For AMD64, RA + tracking is not needed, but some directives like .cfi_undefined may use + RA to indicate the outermost frame. */ +const unsigned int x86_sframe_cfa_ra_reg = REG_RA; static ginsnS *x86_ginsn_new (const symbolS *, enum ginsn_gen_mode); #endif @@ -1544,40 +1548,6 @@ static const unsigned char *const alt64_patt[] = { alt64_9, alt64_10, alt64_11,alt64_12, alt64_13, alt64_14, alt64_15 }; -/* Genenerate COUNT bytes of NOPs to WHERE from PATT with the maximum - size of a single NOP instruction MAX_SINGLE_NOP_SIZE. */ - -static void -i386_output_nops (char *where, const unsigned char *const *patt, - int count, int max_single_nop_size) - -{ - /* Place the longer NOP first. */ - int last; - int offset; - const unsigned char *nops; - - if (max_single_nop_size < 1) - { - as_fatal (_("i386_output_nops called to generate nops of at most %d bytes!"), - max_single_nop_size); - return; - } - - nops = patt[max_single_nop_size - 1]; - last = count % max_single_nop_size; - - count -= last; - for (offset = 0; offset < count; offset += max_single_nop_size) - memcpy (where + offset, nops, max_single_nop_size); - - if (last) - { - nops = patt[last - 1]; - memcpy (where + offset, nops, last); - } -} - static INLINE int fits_in_imm7 (offsetT num) { @@ -1733,20 +1703,14 @@ i386_generate_nops (fragS *fragP, char *where, offsetT count, int limit) if (limit == 0) limit = max_single_nop_size; - if (fragP->fr_type == rs_fill_nop) + if (limit > max_single_nop_size || limit < 1) { - /* Output NOPs for .nop directive. */ - if (limit > max_single_nop_size) - { - as_bad_where (fragP->fr_file, fragP->fr_line, - _("invalid single nop size: %d " - "(expect within [0, %d])"), - limit, max_single_nop_size); - return; - } + as_bad_where (fragP->fr_file, fragP->fr_line, + _("invalid single nop size: %d " + "(expect within [0, %d])"), + limit, max_single_nop_size); + return; } - else if (fragP->fr_type != rs_machine_dependent) - fragP->fr_var = count; /* Emit a plain NOP first when the last thing we saw may not have been a proper instruction (e.g. a stand-alone prefix or .byte). */ @@ -1797,8 +1761,34 @@ i386_generate_nops (fragS *fragP, char *where, offsetT count, int limit) } } - /* Generate multiple NOPs. */ - i386_output_nops (where, patt, count, limit); + int non_repeat = count % limit; + if (non_repeat) + { + memcpy (where, patt[non_repeat - 1], non_repeat); + where += non_repeat; + count -= non_repeat; + } + + if (fragP->fr_type != rs_machine_dependent) + { + /* Set up the frag so that everything we have emitted so far is + included in fr_fix. The repeating larger nop only needs to + be written once to the frag memory. */ + fragP->fr_fix = where - fragP->fr_literal; + if (count != 0) + { + fragP->fr_var = limit; + count = limit; + } + } + + const unsigned char *nops = patt[limit - 1]; + while (count) + { + memcpy (where, nops, limit); + where += limit; + count -= limit; + } } static INLINE int @@ -2497,8 +2487,8 @@ operand_type_check (i386_operand_type t, enum operand_type c) return 0; } -/* Return 1 if there is no conflict in 8bit/16bit/32bit/64bit/80bit size - between operand GIVEN and opeand WANTED for instruction template T. */ +/* Return 1 if there is no conflict in 8bit/16bit/32bit/64bit size + between operand GIVEN and operand WANTED for instruction template T. */ static INLINE int match_operand_size (const insn_template *t, unsigned int wanted, @@ -2518,14 +2508,22 @@ match_operand_size (const insn_template *t, unsigned int wanted, || (intel_syntax && flag_code != CODE_64BIT && (t->operand_types[wanted].bitfield.class == Reg - || t->operand_types[wanted].bitfield.class == Accum - || t->opcode_modifier.isstring)))) - || (i.types[given].bitfield.tbyte - && !t->operand_types[wanted].bitfield.tbyte)); + || t->opcode_modifier.isstring))))); +} + +/* Return 1 if there is no conflict in 80bit size + between operand GIVEN and operand WANTED for instruction template T. */ + +static INLINE int +match_fp_size (const insn_template *t, unsigned int wanted, + unsigned int given) +{ + return !i.types[given].bitfield.tbyte + || t->operand_types[wanted].bitfield.tbyte; } /* Return 1 if there is no conflict in SIMD register between operand - GIVEN and opeand WANTED for instruction template T. */ + GIVEN and operand WANTED for instruction template T. */ static INLINE int match_simd_size (const insn_template *t, unsigned int wanted, @@ -2542,13 +2540,15 @@ match_simd_size (const insn_template *t, unsigned int wanted, } /* Return 1 if there is no conflict in any size between operand GIVEN - and opeand WANTED for instruction template T. */ + and operand WANTED for instruction template T. */ static INLINE int match_mem_size (const insn_template *t, unsigned int wanted, unsigned int given) { return (match_operand_size (t, wanted, given) + && (!i.types[given].bitfield.tbyte + || t->operand_types[wanted].bitfield.tbyte) && !((i.types[given].bitfield.unspecified && !i.broadcast.type && !i.broadcast.bytes @@ -2589,49 +2589,61 @@ operand_size_match (const insn_template *t) && t->opcode_modifier.jump != JUMP_ABSOLUTE) return match; - /* Check memory and accumulator operand size. */ - for (j = 0; j < i.operands; j++) - { - /* Instruction templates with only sign-extended 8-bit immediate - operand also have a second template with full-operand-size - immediate operand under a different opcode. Don't match the - first template if sign-extended 8-bit immediate operand should - be excluded. */ - if (pp.no_imm8s - && !t->operand_types[j].bitfield.imm8 - && t->operand_types[j].bitfield.imm8s) - { - match = 0; - break; - } - - if (i.types[j].bitfield.class != Reg - && i.types[j].bitfield.class != RegSIMD - && t->opcode_modifier.operandconstraint == ANY_SIZE) - continue; + for (j = 0; j < i.imm_operands; j++) + /* Instruction templates with only sign-extended 8-bit immediate + operand also have a second template with full-operand-size + immediate operand under a different opcode. Don't match the + first template if sign-extended 8-bit immediate operand should + be excluded. */ + if (pp.no_imm8s + && !t->operand_types[j].bitfield.imm8 + && t->operand_types[j].bitfield.imm8s) + { + gas_assert (!t->opcode_modifier.d); + return 0; + } - if (t->operand_types[j].bitfield.class == Reg + /* Check memory and accumulator operand size. */ + for (; j < i.operands; j++) + { + if (i.types[j].bitfield.class == Reg + && (t->operand_types[j].bitfield.class == Reg + || (t->operand_types[j].bitfield.instance == Accum + && (t->operand_types[j].bitfield.byte + || t->operand_types[j].bitfield.word + || t->operand_types[j].bitfield.dword + || t->operand_types[j].bitfield.qword))) && !match_operand_size (t, j, j)) { match = 0; break; } - if (t->operand_types[j].bitfield.class == RegSIMD - && !match_simd_size (t, j, j)) + if (i.types[j].bitfield.class == RegFP + && (t->operand_types[j].bitfield.class == RegFP + || (t->operand_types[j].bitfield.instance == Accum + && t->operand_types[j].bitfield.tbyte)) + && !match_fp_size (t, j, j)) { match = 0; break; } - if (t->operand_types[j].bitfield.instance == Accum - && (!match_operand_size (t, j, j) || !match_simd_size (t, j, j))) + if (i.types[j].bitfield.class == RegSIMD + && (t->operand_types[j].bitfield.class == RegSIMD + || (t->operand_types[j].bitfield.instance == Accum + /* Note: %ymm0, %zmm0, and %tmm0 aren't marked Accum. */ + && t->operand_types[j].bitfield.xmmword)) + && !match_simd_size (t, j, j)) { match = 0; break; } - if ((i.flags[j] & Operand_Mem) && !match_mem_size (t, j, j)) + if ((i.flags[j] & Operand_Mem) + && operand_type_check (t->operand_types[j], anymem) + && t->opcode_modifier.operandconstraint != ANY_SIZE + && !match_mem_size (t, j, j)) { match = 0; break; @@ -2644,7 +2656,7 @@ operand_size_match (const insn_template *t) /* Check reverse. */ gas_assert (i.operands >= 2); - for (j = 0; j < i.operands; j++) + for (j = i.imm_operands; j < i.operands; j++) { unsigned int given = i.operands - j - 1; @@ -2655,20 +2667,34 @@ operand_size_match (const insn_template *t) || is_cpu (t, CpuAPX_F)) given = j < 2 ? 1 - j : j; - if (t->operand_types[j].bitfield.class == Reg + if (i.types[given].bitfield.class == Reg + && (t->operand_types[j].bitfield.class == Reg + || (t->operand_types[j].bitfield.instance == Accum + && (t->operand_types[j].bitfield.byte + || t->operand_types[j].bitfield.word + || t->operand_types[j].bitfield.dword + || t->operand_types[j].bitfield.qword + || t->operand_types[j].bitfield.tbyte))) && !match_operand_size (t, j, given)) return match; - if (t->operand_types[j].bitfield.class == RegSIMD - && !match_simd_size (t, j, given)) + if (i.types[given].bitfield.class == RegFP + && (t->operand_types[j].bitfield.class == RegFP + || (t->operand_types[j].bitfield.instance == Accum + && t->operand_types[j].bitfield.tbyte)) + && !match_fp_size (t, j, given)) return match; - if (t->operand_types[j].bitfield.instance == Accum - && (!match_operand_size (t, j, given) - || !match_simd_size (t, j, given))) + /* No need to check for Accum here: There are no such templates with D + set. */ + if (i.types[given].bitfield.class == RegSIMD + && t->operand_types[j].bitfield.class == RegSIMD + && !match_simd_size (t, j, given)) return match; - if ((i.flags[given] & Operand_Mem) && !match_mem_size (t, j, given)) + if ((i.flags[given] & Operand_Mem) + && operand_type_check (t->operand_types[j], anymem) + && !match_mem_size (t, j, given)) return match; } @@ -2695,6 +2721,23 @@ operand_type_match (i386_operand_type overlap, if (operand_type_all_zero (&temp)) goto mismatch; + /* When a (register) instance is expected, operand size needs checking + to disambiguate. */ + if (overlap.bitfield.instance != InstanceNone + && !overlap.bitfield.byte + && !overlap.bitfield.word + && !overlap.bitfield.dword + && !overlap.bitfield.qword + && !overlap.bitfield.tbyte + && !overlap.bitfield.xmmword + && !overlap.bitfield.ymmword + && !overlap.bitfield.zmmword + && !overlap.bitfield.tmmword) + { + gas_assert (overlap.bitfield.class == ClassNone); + goto mismatch; + } + if (given.bitfield.baseindex == overlap.bitfield.baseindex) return 1; @@ -2934,7 +2977,7 @@ offset_in_range (offsetT val, int size) default: abort (); } - if ((val & ~mask) != 0 && (-val & ~mask) != 0) + if ((val & ~mask) != 0 && (-(addressT) val & ~mask) != 0) as_warn (_("0x%" PRIx64 " shortened to 0x%" PRIx64), (uint64_t) val, (uint64_t) (val & mask)); @@ -3577,14 +3620,14 @@ md_begin (void) if (regtab->reg_type.bitfield.instance == Accum) reg_eax = regtab; } - else if (regtab->reg_type.bitfield.tbyte) - { - /* There's no point inserting st(<N>) in the hash table, as - parentheses aren't included in register_chars[] anyway. */ - if (regtab->reg_type.bitfield.instance != Accum) - continue; - reg_st0 = regtab; - } + break; + + case RegFP: + /* There's no point inserting st(<N>) in the hash table, as + parentheses aren't included in register_chars[] anyway. */ + if (regtab->reg_type.bitfield.instance != Accum) + continue; + reg_st0 = regtab; break; case SReg: @@ -3650,13 +3693,9 @@ md_begin (void) #if defined (OBJ_COFF) && defined (TE_PE) x86_dwarf2_return_column = 32; #else - x86_dwarf2_return_column = 16; + x86_dwarf2_return_column = REG_RA; #endif x86_cie_data_alignment = -8; -#ifdef OBJ_ELF - x86_sframe_cfa_sp_reg = REG_SP; - x86_sframe_cfa_fp_reg = REG_FP; -#endif } else { @@ -3719,6 +3758,7 @@ pi (const char *line, i386_insn *x) pt (x->types[j]); fprintf (stdout, "\n"); if (x->types[j].bitfield.class == Reg + || x->types[j].bitfield.class == RegFP || x->types[j].bitfield.class == RegMMX || x->types[j].bitfield.class == RegSIMD || x->types[j].bitfield.class == RegMask @@ -3827,7 +3867,7 @@ const type_names[] = { { .bitfield = { .class = RegCR } }, "control reg" }, { { .bitfield = { .class = RegTR } }, "test reg" }, { { .bitfield = { .class = RegDR } }, "debug reg" }, - { { .bitfield = { .class = Reg, .tbyte = 1 } }, "FReg" }, + { { .bitfield = { .class = RegFP, .tbyte = 1 } }, "FReg" }, { { .bitfield = { .instance = Accum, .tbyte = 1 } }, "FAcc" }, { { .bitfield = { .class = SReg } }, "SReg" }, { { .bitfield = { .class = RegMMX } }, "rMMX" }, @@ -7090,12 +7130,14 @@ i386_assemble (char *line) swap_operands (); /* The order of the immediates should be reversed for 2-immediates EXTRQ - and INSERTQ instructions. Also UWRMSR wants its immediate to be in the - "canonical" place (first), despite it appearing last (in AT&T syntax, or - because of the swapping above) in the incoming set of operands. */ + and INSERTQ instructions. Also OUT, UWRMSR, and WRMSRNS want their + immediate to be in the "canonical" place (first), despite it appearing + last (in AT&T syntax, or because of the swapping above) in the incoming + set of operands. */ if ((i.imm_operands == 2 && (t->mnem_off == MN_extrq || t->mnem_off == MN_insertq)) - || ((t->mnem_off == MN_uwrmsr || t->mnem_off == MN_wrmsrns) + || ((t->mnem_off == MN_out || t->mnem_off == MN_uwrmsr + || t->mnem_off == MN_wrmsrns) && i.imm_operands && i.operands > i.imm_operands)) swap_2_operands (0, 1); @@ -7110,11 +7152,8 @@ i386_assemble (char *line) || t->mnem_off == MN_rdmsr || t->mnem_off == MN_wrmsrns) { - for (j = 0; j < i.operands; j++) - { - if (operand_type_check(i.types[j], imm)) - i.types[j] = smallest_imm_type (i.op[j].imms->X_add_number); - } + for (j = 0; j < i.imm_operands; j++) + i.types[j] = smallest_imm_type (i.op[j].imms->X_add_number); } else optimize_imm (); @@ -7454,6 +7493,8 @@ i386_assemble (char *line) /* Update operand types and check extended states. */ for (j = 0; j < i.operands; j++) { + enum operand_class class = i.types[j].bitfield.class; + i.types[j] = operand_type_and (i.types[j], i.tm.operand_types[j]); switch (i.tm.operand_types[j].bitfield.class) { @@ -7478,6 +7519,9 @@ i386_assemble (char *line) else if (i.tm.operand_types[j].bitfield.xmmword) i.xstate |= xstate_xmm; break; + case ClassNone: + i.types[j].bitfield.class = class; + break; } } @@ -8428,7 +8472,7 @@ optimize_disp (const insn_template *t) && (!t->opcode_modifier.jump || i.jumpabsolute || i.types[0].bitfield.baseindex)) { - for (op = 0; op < i.operands; ++op) + for (op = i.imm_operands; op < i.operands; ++op) { const expressionS *exp = i.op[op].disps; @@ -8769,7 +8813,7 @@ check_VecOperands (const insn_template *t) unsigned int j; type.bitfield.baseindex = 1; - for (j = 0; j < i.operands; ++j) + for (j = i.imm_operands; j < i.operands; ++j) { if (j != op && !operand_type_register_match(i.types[j], @@ -8785,7 +8829,7 @@ check_VecOperands (const insn_template *t) else if (t->opcode_modifier.broadcast && i.mem_operands) { /* Find memory operand. */ - for (op = 0; op < i.operands; op++) + for (op = i.imm_operands; op < i.operands; op++) if (i.flags[op] & Operand_Mem) break; gas_assert (op < i.operands); @@ -8894,7 +8938,7 @@ check_VecOperands (const insn_template *t) const i386_operand_type *type = NULL, *fallback = NULL; i.memshift = 0; - for (op = 0; op < i.operands; op++) + for (op = i.imm_operands; op < i.operands; op++) if (i.flags[op] & Operand_Mem) { if (t->opcode_modifier.evex == EVEXLIG) @@ -8936,7 +8980,7 @@ check_VecOperands (const insn_template *t) i.memshift = -1; } - for (op = 0; op < i.operands; op++) + for (op = i.imm_operands; op < i.operands; op++) if (operand_type_check (i.types[op], disp) && i.op[op].disps->X_op == O_constant) { @@ -9030,7 +9074,7 @@ check_EgprOperands (const insn_template *t) if (!t->opcode_modifier.noegpr) return false; - for (unsigned int op = 0; op < i.operands; op++) + for (unsigned int op = i.imm_operands; op < i.operands; op++) { if (i.types[op].bitfield.class != Reg) continue; @@ -9092,7 +9136,7 @@ check_APX_operands (const insn_template *t) static bool check_Rex_required (void) { - for (unsigned int op = 0; op < i.operands; op++) + for (unsigned int op = i.imm_operands; op < i.operands; op++) { if (i.types[op].bitfield.class != Reg) continue; @@ -9364,7 +9408,10 @@ match_template (char mnem_suffix) { case 1: if (!operand_type_match (overlap0, i.types[0])) - continue; + { + specific_error = progress (i.error); + continue; + } /* Allow the ModR/M encoding to be requested by using the {load} or {store} pseudo prefix on an applicable insn. */ @@ -10402,7 +10449,7 @@ process_suffix (const insn_template *t) else need = flag_code == CODE_64BIT ? need_qword : need_word; - for (op = 0; op < i.operands; op++) + for (op = i.imm_operands; op < i.operands; op++) { if (i.types[op].bitfield.class != Reg) continue; @@ -10734,7 +10781,7 @@ process_operands (void) unnecessary segment overrides. */ const reg_entry *default_seg = NULL; - for (unsigned int j = 0; j < i.operands; j++) + for (unsigned int j = i.imm_operands; j < i.operands; j++) if (i.types[j].bitfield.instance != InstanceNone) i.reg_operands--; @@ -10797,8 +10844,7 @@ process_operands (void) and 3 sources. */ for (j = i.operands; j > 0; j--) copy_operand (j, j - 1); - i.op[0].regs - = (const reg_entry *) str_hash_find (reg_hash, "xmm0"); + i.op[0].regs = str_hash_find (reg_hash, "xmm0"); i.types[0] = regxmm; i.tm.operand_types[0] = regxmm; @@ -11968,7 +12014,7 @@ x86_sframe_cfa_ra_offset (void) return (offsetT) -8; } -/* The abi/arch indentifier for SFrame. */ +/* The abi/arch identifier for SFrame. */ unsigned char x86_sframe_get_abi_arch (void) { @@ -15065,9 +15111,8 @@ i386_index_check (const char *operand_string) || ((!i.mem_operands != !intel_syntax) && t->operand_types[1].bitfield.baseindex)) op = 1; - expected_reg - = (const reg_entry *) str_hash_find (reg_hash, - di_si[addr_mode][op == es_op]); + expected_reg = str_hash_find (reg_hash, + di_si[addr_mode][op == es_op]); } else { @@ -16789,7 +16834,7 @@ parse_real_register (const char *reg_string, char **end_op) *end_op = (char *) s; - r = (const reg_entry *) str_hash_find (reg_hash, reg_name_given); + r = str_hash_find (reg_hash, reg_name_given); /* Handle floating point regs, allowing spaces in the (i) part. */ if (r == reg_st0) diff --git a/gas/config/tc-i386.h b/gas/config/tc-i386.h index 3fb7920..641596d 100644 --- a/gas/config/tc-i386.h +++ b/gas/config/tc-i386.h @@ -230,9 +230,6 @@ if ((n) \ goto around; \ } -#define MAX_MEM_FOR_RS_ALIGN_CODE \ - (alignment ? ((size_t) 1 << alignment) - 1 : (size_t) 1) - extern void i386_cons_align (int); #define md_cons_align(nbytes) i386_cons_align (nbytes) @@ -379,17 +376,43 @@ extern void i386_generate_nops (fragS *, char *, offsetT, int); #define md_generate_nops(frag, where, amount, control) \ i386_generate_nops ((frag), (where), (amount), (control)) -#define HANDLE_ALIGN(sec, fragP) \ +#define HANDLE_ALIGN(sec, fragP) \ if (fragP->fr_type == rs_align_code) \ { \ offsetT __count = (fragP->fr_next->fr_address \ - fragP->fr_address \ - fragP->fr_fix); \ - if (__count > 0 \ - && (unsigned int) __count <= fragP->tc_frag_data.max_bytes) \ - md_generate_nops (fragP, fragP->fr_literal + fragP->fr_fix, \ - __count, 0); \ + if (__count > 0) \ + { \ + know (fragP->tc_frag_data.max_bytes >= (valueT) __count \ + || (fragP->tc_frag_data.max_bytes \ + >= MAX_MEM_FOR_RS_ALIGN_CODE (fragP->fr_offset, \ + fragP->fr_subtype))); \ + md_generate_nops (fragP, fragP->fr_literal + fragP->fr_fix, \ + __count, 0); \ + } \ } +/* Possible plain nop, branch, twice largest nop less 1. + Yes, the branch might be one byte longer in CODE_16BIT but then the + largest nop is smaller. */ +#define MAX_MEM_FOR_RS_SPACE_NOP (1 + 5 + 2 * 15 - 1) + +static inline unsigned int +max_mem_for_rs_align_code (unsigned int p2align, unsigned int max) +{ + unsigned int bytes = 1; + if (p2align != 0) + { + bytes = MAX_MEM_FOR_RS_SPACE_NOP; + if (bytes > (1ull << p2align) - 1) + bytes = (1ull << p2align) - 1; + if (max != 0 && bytes > max) + bytes = max; + } + return bytes; +} +#define MAX_MEM_FOR_RS_ALIGN_CODE(p2align, max) \ + max_mem_for_rs_align_code (p2align, max) /* We want .cfi_* pseudo-ops for generating unwind info. */ #define TARGET_USE_CFIPOP 1 @@ -413,6 +436,9 @@ extern void tc_x86_frame_initial_instructions (void); #define REG_FP 6 /* DWARF register number of the stack-pointer register in 64-bit mode. */ #define REG_SP 7 +/* DWARF register number of the (pseudo) return address register in 64-bit + mode. This is the same as reg RIP in i386-reg.tbl. */ +#define REG_RA 16 #define md_elf_section_type(str,len) i386_elf_section_type (str, len) extern int i386_elf_section_type (const char *, size_t); @@ -455,13 +481,19 @@ extern bool x86_support_sframe_p (void); #define support_sframe_p x86_support_sframe_p /* The stack pointer DWARF register number for SFrame CFA tracking. */ -extern unsigned int x86_sframe_cfa_sp_reg; +extern const unsigned int x86_sframe_cfa_sp_reg; #define SFRAME_CFA_SP_REG x86_sframe_cfa_sp_reg /* The frame pointer DWARF register number for SFrame CFA and FP tracking. */ -extern unsigned int x86_sframe_cfa_fp_reg; +extern const unsigned int x86_sframe_cfa_fp_reg; #define SFRAME_CFA_FP_REG x86_sframe_cfa_fp_reg +/* The return address DWARF register number for SFrame purposes. Although for + AMD64, RA tracking is disabled, specific constructs, like for indicating + the _start function, may use it. */ +extern const unsigned int x86_sframe_cfa_ra_reg; +#define SFRAME_CFA_RA_REG x86_sframe_cfa_ra_reg + /* Whether SFrame return address tracking is needed. */ extern bool x86_sframe_ra_tracking_p (void); #define sframe_ra_tracking_p x86_sframe_ra_tracking_p @@ -471,7 +503,7 @@ extern bool x86_sframe_ra_tracking_p (void); extern offsetT x86_sframe_cfa_ra_offset (void); #define sframe_cfa_ra_offset x86_sframe_cfa_ra_offset -/* The abi/arch indentifier for SFrame. */ +/* The abi/arch identifier for SFrame. */ extern unsigned char x86_sframe_get_abi_arch (void); #define sframe_get_abi_arch x86_sframe_get_abi_arch diff --git a/gas/config/tc-ia64.c b/gas/config/tc-ia64.c index b508232..192c093 100644 --- a/gas/config/tc-ia64.c +++ b/gas/config/tc-ia64.c @@ -4476,13 +4476,14 @@ dot_endp (int dummy ATTRIBUTE_UNUSED) S_SET_SIZE (sym, frag_now_fix () - S_GET_VALUE (sym)); else { - symbol_get_obj (sym)->size = XNEW (expressionS); - symbol_get_obj (sym)->size->X_op = O_subtract; - symbol_get_obj (sym)->size->X_add_symbol + OBJ_SYMFIELD_TYPE *obj = symbol_get_obj (sym); + obj->size = notes_alloc (sizeof (*obj->size)); + obj->size->X_op = O_subtract; + obj->size->X_add_symbol = symbol_new (FAKE_LABEL_NAME, now_seg, frag_now, frag_now_fix ()); - symbol_get_obj (sym)->size->X_op_symbol = sym; - symbol_get_obj (sym)->size->X_add_number = 0; + obj->size->X_op_symbol = sym; + obj->size->X_add_number = 0; } } } @@ -10645,7 +10646,7 @@ md_assemble (char *str) ch = get_symbol_name (&temp); mnemonic = temp; - pdesc = (struct pseudo_opcode *) str_hash_find (md.pseudo_hash, mnemonic); + pdesc = str_hash_find (md.pseudo_hash, mnemonic); if (pdesc) { (void) restore_line_pointer (ch); @@ -11778,7 +11779,7 @@ dot_alias (int section) /* Check if alias has been used before. */ - h = (struct alias *) str_hash_find (ahash, alias); + h = str_hash_find (ahash, alias); if (h) { if (strcmp (h->name, name)) @@ -11789,7 +11790,7 @@ dot_alias (int section) } /* Check if name already has an alias. */ - a = (const char *) str_hash_find (nhash, name); + a = str_hash_find (nhash, name); if (a) { if (strcmp (a, alias)) diff --git a/gas/config/tc-ia64.h b/gas/config/tc-ia64.h index 0f9810d..62d288d 100644 --- a/gas/config/tc-ia64.h +++ b/gas/config/tc-ia64.h @@ -176,7 +176,7 @@ void ia64_vms_note (void); as_bad_where ((FRAGP)->fr_file, (FRAGP)->fr_line, \ _("instruction address is not a multiple of 16")); -#define MAX_MEM_FOR_RS_ALIGN_CODE (15 + 16) +#define MAX_MEM_FOR_RS_ALIGN_CODE(p2align, max) (15 + 16) #define WORKING_DOT_WORD /* don't do broken word processing for now */ diff --git a/gas/config/tc-kvx.c b/gas/config/tc-kvx.c index 942b1ab..5582650 100644 --- a/gas/config/tc-kvx.c +++ b/gas/config/tc-kvx.c @@ -509,7 +509,7 @@ insert_operand (struct kvxinsn *insn, struct kvx_operand *opdef, { char *ilp_save = input_line_pointer; input_line_pointer = tok->tok; - expressionS exp = { 0 }; + expressionS exp; expression (&exp); input_line_pointer = ilp_save; @@ -2355,16 +2355,11 @@ kvx_endp (int start ATTRIBUTE_UNUSED) if (exp.X_op == O_constant) { S_SET_SIZE (last_proc_sym, exp.X_add_number); - if (symbol_get_obj (last_proc_sym)->size) - { - xfree (symbol_get_obj (last_proc_sym)->size); - symbol_get_obj (last_proc_sym)->size = NULL; - } + symbol_get_obj (last_proc_sym)->size = NULL; } else { - symbol_get_obj (last_proc_sym)->size = - (expressionS *) xmalloc (sizeof (expressionS)); + symbol_get_obj (last_proc_sym)->size = notes_alloc (sizeof (exp)); *symbol_get_obj (last_proc_sym)->size = exp; } @@ -2518,20 +2513,18 @@ kvx_force_reloc_sub_same (fixS * fixP, segT sec) return 1; } -/* Implement HANDLE_ALIGN. */ +/* Pads code section with bundle of nops when possible, 0 if not. */ -static void -kvx_make_nops (char *buf, bfd_vma bytes) +void +kvx_handle_align (fragS *fragP) { - bfd_vma i = 0; - unsigned int j; + if (fragP->fr_type != rs_align_code) + return; static unsigned int nop_single = 0; - if (!nop_single) { - const struct kvxopc *opcode = - (struct kvxopc *) str_hash_find (env.opcode_hash, "nop"); + const struct kvxopc *opcode = str_hash_find (env.opcode_hash, "nop"); if (opcode == NULL) as_fatal @@ -2540,52 +2533,49 @@ kvx_make_nops (char *buf, bfd_vma bytes) nop_single = opcode->codewords[0].opcode; } - /* KVX instructions are always 4-bytes aligned. If we are at a position */ - /* that is not 4 bytes aligned, it means this is not part of an instruction, */ - /* so it is safe to use a zero byte for padding. */ + bfd_signed_vma bytes = (fragP->fr_next->fr_address + - fragP->fr_address - fragP->fr_fix); + if (bytes <= 0) + return; - for (j = bytes % 4; j > 0; j--) - buf[i++] = 0; + char *p = fragP->fr_literal + fragP->fr_fix; - for (j = 0; j < (bytes - i); j += 4) + /* KVX instructions are always 4-bytes aligned. If we are at a + position that is not 4 bytes aligned, it means this is not part + of an instruction, so it is safe to use a zero byte for padding. */ + int fix = bytes & 3; + if (fix != 0) { - unsigned nop = nop_single; - - // nop has bundle end only if #4 nop or last padding nop. - // Sets the parallel bit when neither conditions are matched. - // 4*4 = biggest nop bundle we can get - // 12 = offset when writting the last nop possible in a 4 nops bundle - // bytes-i-4 = offset for the last 4-words in the padding - if (j % (4 * 4) != 12 && j != (bytes - i - 4)) - nop |= PARALLEL_BIT; - - memcpy (buf + i + j, &nop, sizeof (nop)); + memset (p, 0, fix); + p += fix; + bytes -= fix; } -} -/* Pads code section with bundle of nops when possible, 0 if not. */ -void -kvx_handle_align (fragS *fragP) -{ - switch (fragP->fr_type) + /* Output any nops that don't make a full bundle. */ + while (bytes & 15) { - case rs_align_code: - { - bfd_signed_vma bytes = (fragP->fr_next->fr_address - - fragP->fr_address - fragP->fr_fix); - char *p = fragP->fr_literal + fragP->fr_fix; - - if (bytes <= 0) - break; - - /* Insert zeros or nops to get 4 byte alignment. */ - kvx_make_nops (p, bytes); - fragP->fr_fix += bytes; - } - break; + unsigned int nop = nop_single; + bytes -= 4; + if (bytes & 15) + nop |= PARALLEL_BIT; + memcpy (p, &nop, 4); + p += 4; + fix += 4; + } + fragP->fr_fix += fix; - default: - break; + /* Any more are repeated copies of this full bundle of nops. */ + if (bytes) + { + unsigned int nop = nop_single | PARALLEL_BIT; + memcpy (p, &nop, 4); + p += 4; + memcpy (p, &nop, 4); + p += 4; + memcpy (p, &nop, 4); + p += 4; + memcpy (p, &nop_single, 4); + fragP->fr_var = 16; } } /* diff --git a/gas/config/tc-kvx.h b/gas/config/tc-kvx.h index a4d0e2d..50c124f 100644 --- a/gas/config/tc-kvx.h +++ b/gas/config/tc-kvx.h @@ -297,6 +297,7 @@ extern void kvx_cons_fix_new (fragS *f, int where, int nbytes, /* Enable special handling for the alignment directive. */ extern void kvx_handle_align (fragS *); #define HANDLE_ALIGN(s, f) kvx_handle_align (f) +#define MAX_MEM_FOR_RS_ALIGN_CODE(p2align, max) (3 + 12 + 16) #ifdef OBJ_ELF diff --git a/gas/config/tc-loongarch.c b/gas/config/tc-loongarch.c index 7841144..06fb601 100644 --- a/gas/config/tc-loongarch.c +++ b/gas/config/tc-loongarch.c @@ -320,115 +320,98 @@ loongarch_after_parse_args () /* Init ilp32/lp64 registers names. */ if (!r_htab) - r_htab = str_htab_create (), str_hash_insert (r_htab, "", 0, 0); + r_htab = str_htab_create (); if (!r_deprecated_htab) - r_deprecated_htab = str_htab_create (), - str_hash_insert (r_deprecated_htab, "", 0, 0); + r_deprecated_htab = str_htab_create (); /* Init cfi registers alias. */ if (!cfi_r_htab) - cfi_r_htab = str_htab_create (), str_hash_insert (cfi_r_htab, "", 0, 0); + cfi_r_htab = str_htab_create (); r_abi_names = loongarch_r_normal_name; for (i = 0; i < ARRAY_SIZE (loongarch_r_normal_name); i++) { - str_hash_insert (r_htab, loongarch_r_normal_name[i], - (void *) (i + 1), 0); - str_hash_insert (cfi_r_htab, loongarch_r_normal_name[i], - (void *) (i + 1), 0); + str_hash_insert_int (r_htab, loongarch_r_normal_name[i], i, 0); + str_hash_insert_int (cfi_r_htab, loongarch_r_normal_name[i], i, 0); } /* Init ilp32/lp64 registers alias. */ r_abi_names = loongarch_r_alias; for (i = 0; i < ARRAY_SIZE (loongarch_r_alias); i++) { - str_hash_insert (r_htab, loongarch_r_alias[i], - (void *) (i + 1), 0); - str_hash_insert (cfi_r_htab, loongarch_r_alias[i], - (void *) (i + 1), 0); + str_hash_insert_int (r_htab, loongarch_r_alias[i], i, 0); + str_hash_insert_int (cfi_r_htab, loongarch_r_alias[i], i, 0); } for (i = 0; i < ARRAY_SIZE (loongarch_r_alias_1); i++) - str_hash_insert (r_htab, loongarch_r_alias_1[i], (void *) (i + 1), 0); + str_hash_insert_int (r_htab, loongarch_r_alias_1[i], i, 0); for (i = 0; i < ARRAY_SIZE (loongarch_r_alias_deprecated); i++) - str_hash_insert (r_deprecated_htab, loongarch_r_alias_deprecated[i], - (void *) (i + 1), 0); + str_hash_insert_int (r_deprecated_htab, loongarch_r_alias_deprecated[i], + i, 0); /* The .cfi directive supports register aliases without the "$" prefix. */ for (i = 0; i < ARRAY_SIZE (loongarch_r_cfi_name); i++) { - str_hash_insert (cfi_r_htab, loongarch_r_cfi_name[i], - (void *)(i + 1), 0); - str_hash_insert (cfi_r_htab, loongarch_r_cfi_name_alias[i], - (void *)(i + 1), 0); + str_hash_insert_int (cfi_r_htab, loongarch_r_cfi_name[i], i, 0); + str_hash_insert_int (cfi_r_htab, loongarch_r_cfi_name_alias[i], i, 0); } if (!cr_htab) - cr_htab = str_htab_create (), str_hash_insert (cr_htab, "", 0, 0); + cr_htab = str_htab_create (); for (i = 0; i < ARRAY_SIZE (loongarch_cr_normal_name); i++) - str_hash_insert (cr_htab, loongarch_cr_normal_name[i], (void *) (i + 1), 0); + str_hash_insert_int (cr_htab, loongarch_cr_normal_name[i], i, 0); /* Init single/double float registers names. */ if (LARCH_opts.ase_sf || LARCH_opts.ase_df) { if (!f_htab) - f_htab = str_htab_create (), str_hash_insert (f_htab, "", 0, 0); + f_htab = str_htab_create (); if (!f_deprecated_htab) - f_deprecated_htab = str_htab_create (), - str_hash_insert (f_deprecated_htab, "", 0, 0); + f_deprecated_htab = str_htab_create (); if (!cfi_f_htab) - cfi_f_htab = str_htab_create (), str_hash_insert (cfi_f_htab, "", 0, 0); + cfi_f_htab = str_htab_create (); f_abi_names = loongarch_f_normal_name; for (i = 0; i < ARRAY_SIZE (loongarch_f_normal_name); i++) { - str_hash_insert (f_htab, loongarch_f_normal_name[i], - (void *) (i + 1), 0); - str_hash_insert (cfi_f_htab, loongarch_f_normal_name[i], - (void *) (i + 1), 0); + str_hash_insert_int (f_htab, loongarch_f_normal_name[i], i, 0); + str_hash_insert_int (cfi_f_htab, loongarch_f_normal_name[i], i, 0); } /* Init float-ilp32/lp64 registers alias. */ f_abi_names = loongarch_f_alias; for (i = 0; i < ARRAY_SIZE (loongarch_f_alias); i++) { - str_hash_insert (f_htab, loongarch_f_alias[i], - (void *) (i + 1), 0); - str_hash_insert (cfi_f_htab, loongarch_f_alias[i], - (void *) (i + 1), 0); + str_hash_insert_int (f_htab, loongarch_f_alias[i], i, 0); + str_hash_insert_int (cfi_f_htab, loongarch_f_alias[i], i, 0); } for (i = 0; i < ARRAY_SIZE (loongarch_f_alias_deprecated); i++) - str_hash_insert (f_deprecated_htab, loongarch_f_alias_deprecated[i], - (void *) (i + 1), 0); + str_hash_insert_int (f_deprecated_htab, loongarch_f_alias_deprecated[i], + i, 0); /* The .cfi directive supports register aliases without the "$" prefix. */ for (i = 0; i < ARRAY_SIZE (loongarch_f_cfi_name); i++) { - str_hash_insert (cfi_f_htab, loongarch_f_cfi_name[i], - (void *)(i + 1), 0); - str_hash_insert (cfi_f_htab, loongarch_f_cfi_name_alias[i], - (void *)(i + 1), 0); + str_hash_insert_int (cfi_f_htab, loongarch_f_cfi_name[i], i, 0); + str_hash_insert_int (cfi_f_htab, loongarch_f_cfi_name_alias[i], i, 0); } if (!fc_htab) - fc_htab = str_htab_create (), str_hash_insert (fc_htab, "", 0, 0); + fc_htab = str_htab_create (); for (i = 0; i < ARRAY_SIZE (loongarch_fc_normal_name); i++) - str_hash_insert (fc_htab, loongarch_fc_normal_name[i], (void *) (i + 1), - 0); + str_hash_insert_int (fc_htab, loongarch_fc_normal_name[i], i, 0); if (!fcn_htab) - fcn_htab = str_htab_create (), str_hash_insert (fcn_htab, "", 0, 0); + fcn_htab = str_htab_create (); for (i = 0; i < ARRAY_SIZE (loongarch_fc_numeric_name); i++) - str_hash_insert (fcn_htab, loongarch_fc_numeric_name[i], (void *) (i + 1), - 0); + str_hash_insert_int (fcn_htab, loongarch_fc_numeric_name[i], i, 0); if (!c_htab) - c_htab = str_htab_create (), str_hash_insert (c_htab, "", 0, 0); + c_htab = str_htab_create (); for (i = 0; i < ARRAY_SIZE (loongarch_c_normal_name); i++) - str_hash_insert (c_htab, loongarch_c_normal_name[i], (void *) (i + 1), - 0); + str_hash_insert_int (c_htab, loongarch_c_normal_name[i], i, 0); } @@ -436,20 +419,18 @@ loongarch_after_parse_args () if (LARCH_opts.ase_lsx) { if (!v_htab) - v_htab = str_htab_create (), str_hash_insert (v_htab, "", 0, 0); + v_htab = str_htab_create (); for (i = 0; i < ARRAY_SIZE (loongarch_v_normal_name); i++) - str_hash_insert (v_htab, loongarch_v_normal_name[i], (void *) (i + 1), - 0); + str_hash_insert_int (v_htab, loongarch_v_normal_name[i], i, 0); } /* Init lasx registers names. */ if (LARCH_opts.ase_lasx) { if (!x_htab) - x_htab = str_htab_create (), str_hash_insert (x_htab, "", 0, 0); + x_htab = str_htab_create (); for (i = 0; i < ARRAY_SIZE (loongarch_x_normal_name); i++) - str_hash_insert (x_htab, loongarch_x_normal_name[i], (void *) (i + 1), - 0); + str_hash_insert_int (x_htab, loongarch_x_normal_name[i], i, 0); } } @@ -934,15 +915,15 @@ loongarch_args_parser_can_match_arg_helper (char esc_ch1, char esc_ch2, } break; case 'r': - imm = (intptr_t) str_hash_find (r_htab, arg); - ip->match_now = 0 < imm; - ret = imm - 1; + imm = str_hash_find_int (r_htab, arg); + ip->match_now = 0 <= imm; + ret = imm; if (ip->match_now) break; /* Handle potential usage of deprecated register aliases. */ - imm = (intptr_t) str_hash_find (r_deprecated_htab, arg); - ip->match_now = 0 < imm; - ret = imm - 1; + imm = str_hash_find_int (r_deprecated_htab, arg); + ip->match_now = 0 <= imm; + ret = imm; /* !ip->expand_from_macro: avoiding duplicate output warnings, only the first macro output warning. */ if (ip->match_now && !ip->expand_from_macro) @@ -953,23 +934,21 @@ loongarch_args_parser_can_match_arg_helper (char esc_ch1, char esc_ch2, switch (esc_ch2) { case 'c': - imm = (intptr_t) str_hash_find (fc_htab, arg); - if (0 >= imm) - { - imm = (intptr_t) str_hash_find (fcn_htab, arg); - } + imm = str_hash_find_int (fc_htab, arg); + if (0 > imm) + imm = str_hash_find_int (fcn_htab, arg); break; default: - imm = (intptr_t) str_hash_find (f_htab, arg); + imm = str_hash_find_int (f_htab, arg); } - ip->match_now = 0 < imm; - ret = imm - 1; + ip->match_now = 0 <= imm; + ret = imm; if (ip->match_now && !ip->expand_from_macro) break; /* Handle potential usage of deprecated register aliases. */ - imm = (intptr_t) str_hash_find (f_deprecated_htab, arg); - ip->match_now = 0 < imm; - ret = imm - 1; + imm = str_hash_find_int (f_deprecated_htab, arg); + ip->match_now = 0 <= imm; + ret = imm; if (ip->match_now) as_warn (_("register alias %s is deprecated, use %s instead"), arg, f_abi_names[ret]); @@ -978,23 +957,23 @@ loongarch_args_parser_can_match_arg_helper (char esc_ch1, char esc_ch2, switch (esc_ch2) { case 'r': - imm = (intptr_t) str_hash_find (cr_htab, arg); + imm = str_hash_find_int (cr_htab, arg); break; default: - imm = (intptr_t) str_hash_find (c_htab, arg); + imm = str_hash_find_int (c_htab, arg); } - ip->match_now = 0 < imm; - ret = imm - 1; + ip->match_now = 0 <= imm; + ret = imm; break; case 'v': - imm = (intptr_t) str_hash_find (v_htab, arg); - ip->match_now = 0 < imm; - ret = imm - 1; + imm = str_hash_find_int (v_htab, arg); + ip->match_now = 0 <= imm; + ret = imm; break; case 'x': - imm = (intptr_t) str_hash_find (x_htab, arg); - ip->match_now = 0 < imm; - ret = imm - 1; + imm = str_hash_find_int (x_htab, arg); + ip->match_now = 0 <= imm; + ret = imm; break; case '\0': ip->all_match = ip->match_now; @@ -1077,8 +1056,7 @@ get_loongarch_opcode (struct loongarch_cl_insn *insn) if ((!it->include || (it->include && *it->include)) && (!it->exclude || (it->exclude && !(*it->exclude))) && !(it->pinfo & INSN_DIS_ALIAS)) - str_hash_insert (ase->name_hash_entry, it->name, - (void *) it, 0); + str_hash_insert (ase->name_hash_entry, it->name, it, 0); } } @@ -1420,7 +1398,8 @@ loongarch_assemble_INSNs (char *str, unsigned int expand_from_macro) if (*str == '\0') break; - struct loongarch_cl_insn the_one = { 0 }; + struct loongarch_cl_insn the_one; + memset (&the_one, 0, sizeof (the_one)); the_one.name = str; the_one.expand_from_macro = expand_from_macro; @@ -1521,6 +1500,29 @@ loongarch_force_relocation (struct fix *fixp) return generic_force_reloc (fixp); } +/* If subsy of BFD_RELOC32/64 and PC in same segment, and without relax + or PC at start of subsy or with relax but sub_symbol_segment not in + SEC_CODE, we generate 32/64_PCREL. */ +bool +loongarch_force_relocation_sub_local (fixS *fixp, segT sec ATTRIBUTE_UNUSED) +{ + return !(LARCH_opts.thin_add_sub + && (fixp->fx_r_type == BFD_RELOC_32 + || fixp->fx_r_type == BFD_RELOC_64) + && (!LARCH_opts.relax + || (S_GET_VALUE (fixp->fx_subsy) + == fixp->fx_frag->fr_address + fixp->fx_where) + || (S_GET_SEGMENT (fixp->fx_subsy)->flags & SEC_CODE) == 0)); +} + +/* Postpone text-section label subtraction calculation until linking, since + linker relaxations might change the deltas. */ +bool +loongarch_force_relocation_sub_same(fixS *fixp ATTRIBUTE_UNUSED, segT sec) +{ + return LARCH_opts.relax && (sec->flags & SEC_CODE) != 0; +} + static void fix_reloc_insn (fixS *fixP, bfd_vma reloc_val, char *buf) { reloc_howto_type *howto; @@ -1913,12 +1915,12 @@ tc_loongarch_regname_to_dw2regnum (char *regname) int reg; /* Look up in the general purpose register table. */ - if ((reg = (intptr_t) str_hash_find (cfi_r_htab, regname)) > 0) - return reg - 1; + if ((reg = str_hash_find_int (cfi_r_htab, regname)) >= 0) + return reg; /* Look up in the floating point register table. */ - if ((reg = (intptr_t) str_hash_find (cfi_f_htab, regname)) > 0) - return reg + 31; + if ((reg = str_hash_find_int (cfi_f_htab, regname)) >= 0) + return reg + 32; as_bad (_("unknown register `%s`"), regname); return -1; diff --git a/gas/config/tc-loongarch.h b/gas/config/tc-loongarch.h index ebed8e0..38ecd03 100644 --- a/gas/config/tc-loongarch.h +++ b/gas/config/tc-loongarch.h @@ -21,8 +21,6 @@ #ifndef TC_LOONGARCH #define TC_LOONGARCH -#include "opcode/loongarch.h" - #define TARGET_BYTES_BIG_ENDIAN 0 #define TARGET_ARCH bfd_arch_loongarch @@ -80,26 +78,19 @@ extern int loongarch_force_relocation (struct fix *); /* If subsy of BFD_RELOC32/64 and PC in same segment, and without relax or PC at start of subsy or with relax but sub_symbol_segment not in SEC_CODE, we generate 32/64_PCREL. */ -#define TC_FORCE_RELOCATION_SUB_LOCAL(FIX, SEG) \ - (!(LARCH_opts.thin_add_sub \ - && ((FIX)->fx_r_type == BFD_RELOC_32 \ - ||(FIX)->fx_r_type == BFD_RELOC_64) \ - && (!LARCH_opts.relax \ - || S_GET_VALUE (FIX->fx_subsy) \ - == FIX->fx_frag->fr_address + FIX->fx_where \ - || (LARCH_opts.relax \ - && ((S_GET_SEGMENT (FIX->fx_subsy)->flags & SEC_CODE) == 0))))) +extern bool loongarch_force_relocation_sub_local (struct fix *, asection *); +#define TC_FORCE_RELOCATION_SUB_LOCAL(FIX, SEC) \ + loongarch_force_relocation_sub_local (FIX, SEC) #define TC_VALIDATE_FIX_SUB(FIX, SEG) 1 #define DIFF_EXPR_OK 1 /* Postpone text-section label subtraction calculation until linking, since linker relaxations might change the deltas. */ +extern bool loongarch_force_relocation_sub_same(struct fix *, asection *); #define TC_FORCE_RELOCATION_SUB_SAME(FIX, SEC) \ - (LARCH_opts.relax ? \ - (GENERIC_FORCE_RELOCATION_SUB_SAME (FIX, SEC) \ - || ((SEC)->flags & SEC_CODE) != 0) \ - : (GENERIC_FORCE_RELOCATION_SUB_SAME (FIX, SEC))) \ + (loongarch_force_relocation_sub_same (FIX, SEC) \ + || GENERIC_FORCE_RELOCATION_SUB_SAME (FIX, SEC)) #define TC_LINKRELAX_FIXUP(seg) ((seg->flags & SEC_CODE) \ || (seg->flags & SEC_DEBUGGING)) @@ -141,7 +132,7 @@ extern void loongarch_pre_output_hook (void); #define HANDLE_ALIGN(sec, fragp) loongarch_handle_align (fragp) extern void loongarch_handle_align (struct frag *); -#define MAX_MEM_FOR_RS_ALIGN_CODE (3 + 4) +#define MAX_MEM_FOR_RS_ALIGN_CODE(p2align, max) (3 + 4) #define elf_tc_final_processing loongarch_elf_final_processing extern void loongarch_elf_final_processing (void); diff --git a/gas/config/tc-m32c.h b/gas/config/tc-m32c.h index bcdca98..c8e03ed 100644 --- a/gas/config/tc-m32c.h +++ b/gas/config/tc-m32c.h @@ -79,5 +79,3 @@ extern int m32c_is_colon_insn (char *, char *); #define H_TICK_HEX 1 #define NOP_OPCODE (bfd_get_mach (stdoutput) == bfd_mach_m32c ? 0xde : 0x04) -#define HANDLE_ALIGN(sec, fragP) -#define MAX_MEM_FOR_RS_ALIGN_CODE 1 diff --git a/gas/config/tc-m32r.h b/gas/config/tc-m32r.h index 6be96bb..47b7158 100644 --- a/gas/config/tc-m32r.h +++ b/gas/config/tc-m32r.h @@ -65,7 +65,7 @@ extern long m32r_relax_frag (segT, fragS *, long); extern void m32r_handle_align (fragS *); #define HANDLE_ALIGN(s, f) m32r_handle_align (f) -#define MAX_MEM_FOR_RS_ALIGN_CODE (1 + 2 + 4) +#define MAX_MEM_FOR_RS_ALIGN_CODE(p2align, max) (1 + 2 + 4) /* Values passed to md_apply_fix don't include the symbol value. */ #define MD_APPLY_SYM_VALUE(FIX) 0 diff --git a/gas/config/tc-m68hc11.c b/gas/config/tc-m68hc11.c index d3e2f8b..6950c57 100644 --- a/gas/config/tc-m68hc11.c +++ b/gas/config/tc-m68hc11.c @@ -189,7 +189,6 @@ struct m9s12xg_opcode_def /* Local functions. */ static register_id reg_name_search (char *); static register_id register_name (void); -static int cmp_opcode (struct m68hc11_opcode *, struct m68hc11_opcode *); static char *print_opcode_format (struct m68hc11_opcode *, int); static char *skip_whites (char *); static int check_range (long, int); @@ -588,8 +587,10 @@ md_section_align (asection *seg, valueT addr) } static int -cmp_opcode (struct m68hc11_opcode *op1, struct m68hc11_opcode *op2) +cmp_opcode (const void *p1, const void *p2) { + const struct m68hc11_opcode *op1 = p1; + const struct m68hc11_opcode *op2 = p2; return strcmp (op1->name, op2->name); } @@ -639,8 +640,7 @@ md_begin (void) } } } - qsort (opcodes, num_opcodes, sizeof (struct m68hc11_opcode), - (int (*) (const void*, const void*)) cmp_opcode); + qsort (opcodes, num_opcodes, sizeof (struct m68hc11_opcode), cmp_opcode); opc = XNEWVEC (struct m68hc11_opcode_def, num_opcodes); m68hc11_opcode_defs = opc; @@ -1008,7 +1008,7 @@ print_insn_format (char *name) struct m68hc11_opcode *opcode; char buf[128]; - opc = (struct m68hc11_opcode_def *) str_hash_find (m68hc11_hash, name); + opc = str_hash_find (m68hc11_hash, name); if (opc == NULL) { as_bad (_("Instruction `%s' is not recognized."), name); @@ -2848,7 +2848,7 @@ md_assemble (char *str) if (current_architecture == cpuxgate) { /* Find the opcode definition given its name. */ - opc = (struct m68hc11_opcode_def *) str_hash_find (m68hc11_hash, name); + opc = str_hash_find (m68hc11_hash, name); if (opc == NULL) { as_bad (_("Opcode `%s' is not recognized."), name); @@ -3469,7 +3469,7 @@ md_assemble (char *str) } /* Find the opcode definition given its name. */ - opc = (struct m68hc11_opcode_def *) str_hash_find (m68hc11_hash, name); + opc = str_hash_find (m68hc11_hash, name); /* If it's not recognized, look for 'jbsr' and 'jbxx'. These are pseudo insns for relative branch. For these branches, we always @@ -3477,8 +3477,7 @@ md_assemble (char *str) is given. */ if (opc == NULL && name[0] == 'j' && name[1] == 'b') { - opc = (struct m68hc11_opcode_def *) str_hash_find (m68hc11_hash, - &name[1]); + opc = str_hash_find (m68hc11_hash, &name[1]); if (opc && (!(opc->format & M6811_OP_JUMP_REL) || (opc->format & M6811_OP_BITMASK))) @@ -3509,8 +3508,7 @@ md_assemble (char *str) { name[nlen++] = TOLOWER (*op_end++); name[nlen] = 0; - opc = (struct m68hc11_opcode_def *) str_hash_find (m68hc11_hash, - name); + opc = str_hash_find (m68hc11_hash, name); } } } diff --git a/gas/config/tc-m68k.c b/gas/config/tc-m68k.c index 0f36741..510a1bc 100644 --- a/gas/config/tc-m68k.c +++ b/gas/config/tc-m68k.c @@ -1357,7 +1357,7 @@ m68k_ip (char *instring) c = *p; *p = '\0'; - opcode = (const struct m68k_incant *) str_hash_find (op_hash, instring); + opcode = str_hash_find (op_hash, instring); *p = c; if (pdot != NULL) @@ -4560,7 +4560,7 @@ md_begin (void) { const char *name = m68k_opcode_aliases[i].primary; const char *alias = m68k_opcode_aliases[i].alias; - void *val = (void *) str_hash_find (op_hash, name); + void *val = str_hash_find (op_hash, name); if (!val) as_fatal (_("Internal Error: Can't find %s in hash table"), name); @@ -4598,7 +4598,7 @@ md_begin (void) { const char *name = mri_aliases[i].primary; const char *alias = mri_aliases[i].alias; - void *val = (void *) str_hash_find (op_hash, name); + void *val = str_hash_find (op_hash, name); if (!val) as_fatal (_("Internal Error: Can't find %s in hash table"), name); @@ -6754,7 +6754,6 @@ s_mri_for (int qual) struct mri_control_info *n; char *buf; char *s; - char ex[2]; /* The syntax is FOR.q var = init { TO | DOWNTO } end [ BY by ] DO.e @@ -6935,12 +6934,14 @@ s_mri_for (int qual) mri_assemble (buf); /* bcc bottom. */ - ex[0] = TOLOWER (extent); - ex[1] = '\0'; - if (up) - sprintf (buf, "blt%s %s", ex, n->bottom); - else - sprintf (buf, "bgt%s %s", ex, n->bottom); + s = buf; + *s++ = 'b'; + *s++ = up ? 'l' : 'g'; + *s++ = 't'; + if (extent != '\0') + *s++ = TOLOWER (extent); + *s++ = ' '; + strcpy (s, n->bottom); mri_assemble (buf); /* Put together the add or sub instruction used by ENDF. */ diff --git a/gas/config/tc-mcore.c b/gas/config/tc-mcore.c index 38e6637..8688bfa 100644 --- a/gas/config/tc-mcore.c +++ b/gas/config/tc-mcore.c @@ -882,7 +882,7 @@ md_assemble (char * str) return; } - opcode = (mcore_opcode_info *) str_hash_find (opcode_hash_control, name); + opcode = str_hash_find (opcode_hash_control, name); if (opcode == NULL) { as_bad (_("unknown opcode \"%s\""), name); diff --git a/gas/config/tc-metag.c b/gas/config/tc-metag.c index 3a36d6a..bb8e897 100644 --- a/gas/config/tc-metag.c +++ b/gas/config/tc-metag.c @@ -4380,11 +4380,10 @@ parse_dsp_addr (const char *line, metag_addr *addr, unsigned int size, l = parse_dsp_regs_list (l, regs, 1, ®s_read, true, true, load, false); - if (l == NULL) + if (l == NULL || regs_read == 0) return NULL; - if (!is_addr_unit (regs[0]->unit) && - !is_dspram_reg (regs[0])) + if (!is_addr_unit (regs[0]->unit) && !is_dspram_reg (regs[0])) { as_bad (_("invalid register for memory access")); return NULL; @@ -4434,7 +4433,7 @@ parse_dsp_addr (const char *line, metag_addr *addr, unsigned int size, l = parse_dsp_regs_list (l, regs, 1, ®s_read, true, true, load, false); - if (l == NULL) + if (l == NULL || regs_read == 0) return NULL; if (regs[0]->unit != addr->base_reg->unit) @@ -4522,7 +4521,7 @@ parse_dget_set (const char *line, metag_insn *insn, false, false); } - if (l == NULL) + if (l == NULL || regs_read == 0) return NULL; /* The first register dictates the unit. */ @@ -6842,34 +6841,26 @@ void metag_handle_align (fragS * fragP) { static unsigned char const noop[4] = { 0xfe, 0xff, 0xff, 0xa0 }; - int bytes, fix; - char *p; if (fragP->fr_type != rs_align_code) return; - bytes = fragP->fr_next->fr_address - fragP->fr_address - fragP->fr_fix; - p = fragP->fr_literal + fragP->fr_fix; - fix = 0; - - if (bytes & 3) + int bytes = fragP->fr_next->fr_address - fragP->fr_address - fragP->fr_fix; + char *p = fragP->fr_literal + fragP->fr_fix; + int fix = bytes & 3; + if (fix != 0) { - fix = bytes & 3; memset (p, 0, fix); p += fix; bytes -= fix; + fragP->fr_fix += fix; } - while (bytes >= 4) + if (bytes != 0) { + fragP->fr_var = 4; memcpy (p, noop, 4); - p += 4; - bytes -= 4; - fix += 4; } - - fragP->fr_fix += fix; - fragP->fr_var = 4; } static char * @@ -7038,7 +7029,7 @@ void md_apply_fix (fixS *fixP, valueT *valP, segT seg ATTRIBUTE_UNUSED) { char *buf = fixP->fx_where + fixP->fx_frag->fr_literal; - int value = (int)*valP; + int value = *valP; switch (fixP->fx_r_type) { diff --git a/gas/config/tc-metag.h b/gas/config/tc-metag.h index 9d112c4..92cb0b4 100644 --- a/gas/config/tc-metag.h +++ b/gas/config/tc-metag.h @@ -52,6 +52,7 @@ extern int metag_force_relocation (struct fix *); /* Call md_pcrel_from_section(), not md_pcrel_from(). */ #define MD_PCREL_FROM_SECTION(FIX, SEC) md_pcrel_from_section (FIX, SEC) +#define MAX_MEM_FOR_RS_ALIGN_CODE(p2align, max) (3 + 4) #define HANDLE_ALIGN(sec, fragp) metag_handle_align (fragp) extern void metag_handle_align (struct frag *); diff --git a/gas/config/tc-microblaze.c b/gas/config/tc-microblaze.c index 035a867..917b8f6 100644 --- a/gas/config/tc-microblaze.c +++ b/gas/config/tc-microblaze.c @@ -914,7 +914,7 @@ md_assemble (char * str) return; } - opcode = (struct op_code_struct *) str_hash_find (opcode_hash_control, name); + opcode = str_hash_find (opcode_hash_control, name); if (opcode == NULL) { as_bad (_("unknown opcode \"%s\""), name); @@ -1044,13 +1044,9 @@ md_assemble (char * str) count = 32 - reg1; if (streq (name, "lmi")) - opcode - = (struct op_code_struct *) str_hash_find (opcode_hash_control, - "lwi"); + opcode = str_hash_find (opcode_hash_control, "lwi"); else - opcode - = (struct op_code_struct *) str_hash_find (opcode_hash_control, - "swi"); + opcode = str_hash_find (opcode_hash_control, "swi"); if (opcode == NULL) { as_bad (_("unknown opcode \"%s\""), "lwi"); @@ -1082,9 +1078,7 @@ md_assemble (char * str) if ((temp != 0) && (temp != 0xFFFF8000)) { /* Needs an immediate inst. */ - opcode1 - = (struct op_code_struct *) str_hash_find (opcode_hash_control, - "imm"); + opcode1 = str_hash_find (opcode_hash_control, "imm"); if (opcode1 == NULL) { as_bad (_("unknown opcode \"%s\""), "imm"); @@ -1618,9 +1612,7 @@ md_assemble (char * str) if ((temp != 0) && (temp != 0xFFFF8000)) { /* Needs an immediate inst. */ - opcode1 - = (struct op_code_struct *) str_hash_find (opcode_hash_control, - "imm"); + opcode1 = str_hash_find (opcode_hash_control, "imm"); if (opcode1 == NULL) { as_bad (_("unknown opcode \"%s\""), "imm"); @@ -1686,9 +1678,7 @@ md_assemble (char * str) if ((temp != 0) && (temp != 0xFFFF8000)) { /* Needs an immediate inst. */ - opcode1 - = (struct op_code_struct *) str_hash_find (opcode_hash_control, - "imm"); + opcode1 = str_hash_find (opcode_hash_control, "imm"); if (opcode1 == NULL) { as_bad (_("unknown opcode \"%s\""), "imm"); @@ -1761,9 +1751,7 @@ md_assemble (char * str) if ((temp != 0) && (temp != 0xFFFF8000)) { /* Needs an immediate inst. */ - opcode1 - = (struct op_code_struct *) str_hash_find (opcode_hash_control, - "imm"); + opcode1 = str_hash_find (opcode_hash_control, "imm"); if (opcode1 == NULL) { as_bad (_("unknown opcode \"%s\""), "imm"); @@ -2054,7 +2042,7 @@ md_apply_fix (fixS * fixP, const char * file = fixP->fx_file ? fixP->fx_file : _("unknown"); const char * symname; /* Note: use offsetT because it is signed, valueT is unsigned. */ - offsetT val = (offsetT) * valp; + offsetT val = *valp; int i; struct op_code_struct * opcode1; unsigned long inst1; @@ -2185,8 +2173,7 @@ md_apply_fix (fixS * fixP, buf[i + INST_WORD_SIZE] = buf[i]; /* Generate the imm instruction. */ - opcode1 - = (struct op_code_struct *) str_hash_find (opcode_hash_control, "imm"); + opcode1 = str_hash_find (opcode_hash_control, "imm"); if (opcode1 == NULL) { as_bad (_("unknown opcode \"%s\""), "imm"); @@ -2234,8 +2221,7 @@ md_apply_fix (fixS * fixP, buf[i + INST_WORD_SIZE] = buf[i]; /* Generate the imm instruction. */ - opcode1 - = (struct op_code_struct *) str_hash_find (opcode_hash_control, "imm"); + opcode1 = str_hash_find (opcode_hash_control, "imm"); if (opcode1 == NULL) { as_bad (_("unknown opcode \"%s\""), "imm"); diff --git a/gas/config/tc-mips.c b/gas/config/tc-mips.c index eeb34ef..5e602a4 100644 --- a/gas/config/tc-mips.c +++ b/gas/config/tc-mips.c @@ -9031,7 +9031,7 @@ macro_build (expressionS *ep, const char *name, const char *fmt, ...) r[1] = BFD_RELOC_UNUSED; r[2] = BFD_RELOC_UNUSED; hash = mips_opts.micromips ? micromips_op_hash : op_hash; - amo = (struct mips_opcode *) str_hash_find (hash, name); + amo = str_hash_find (hash, name); gas_assert (amo); gas_assert (strcmp (name, amo->name) == 0); @@ -9189,7 +9189,7 @@ mips16_macro_build (expressionS *ep, const char *name, const char *fmt, bfd_reloc_code_real_type r[3] = {BFD_RELOC_UNUSED, BFD_RELOC_UNUSED, BFD_RELOC_UNUSED}; - mo = (struct mips_opcode *) str_hash_find (mips16_op_hash, name); + mo = str_hash_find (mips16_op_hash, name); gas_assert (mo); gas_assert (strcmp (name, mo->name) == 0); @@ -14266,7 +14266,7 @@ mips_lookup_insn (htab_t hash, const char *start, name = xstrndup (start, length); /* Look up the instruction as-is. */ - insn = (struct mips_opcode *) str_hash_find (hash, name); + insn = str_hash_find (hash, name); if (insn) goto end; @@ -14278,7 +14278,7 @@ mips_lookup_insn (htab_t hash, const char *start, if (*p == 0 && mask != 0) { *dot = 0; - insn = (struct mips_opcode *) str_hash_find (hash, name); + insn = str_hash_find (hash, name); *dot = '.'; if (insn && (insn->pinfo2 & INSN2_VU0_CHANNEL_SUFFIX) != 0) { @@ -14304,7 +14304,7 @@ mips_lookup_insn (htab_t hash, const char *start, if (suffix) { memmove (name + opend - 2, name + opend, length - opend + 1); - insn = (struct mips_opcode *) str_hash_find (hash, name); + insn = str_hash_find (hash, name); if (insn) { forced_insn_length = suffix; @@ -14418,7 +14418,7 @@ mips16_ip (char *str, struct mips_cl_insn *insn) forced_insn_length = l; *end = 0; - first = (struct mips_opcode *) str_hash_find (mips16_op_hash, str); + first = str_hash_find (mips16_op_hash, str); *end = c; if (!first) @@ -19809,7 +19809,7 @@ s_mips_end (int x ATTRIBUTE_UNUSED) if (p && cur_proc_ptr) { OBJ_SYMFIELD_TYPE *obj = symbol_get_obj (p); - expressionS *exp = XNEW (expressionS); + expressionS *exp = notes_alloc (sizeof (*exp)); obj->size = exp; exp->X_op = O_subtract; diff --git a/gas/config/tc-mips.h b/gas/config/tc-mips.h index 38a0e39..dff86c6 100644 --- a/gas/config/tc-mips.h +++ b/gas/config/tc-mips.h @@ -61,7 +61,7 @@ extern char mips_nop_opcode (void); extern void mips_handle_align (struct frag *); #define HANDLE_ALIGN(sec, fragp) mips_handle_align (fragp) -#define MAX_MEM_FOR_RS_ALIGN_CODE (3 + 4) +#define MAX_MEM_FOR_RS_ALIGN_CODE(p2align, max) (3 + 4) struct insn_label_list; struct mips_segment_info { diff --git a/gas/config/tc-mmix.c b/gas/config/tc-mmix.c index 76a0618..dea9181 100644 --- a/gas/config/tc-mmix.c +++ b/gas/config/tc-mmix.c @@ -835,7 +835,7 @@ md_assemble (char *str) *operands++ = '\0'; } - instruction = (struct mmix_opcode *) str_hash_find (mmix_opcode_hash, str); + instruction = str_hash_find (mmix_opcode_hash, str); if (instruction == NULL) { as_bad (_("unknown opcode: `%s'"), str); @@ -2426,12 +2426,11 @@ md_convert_frag (bfd *abfd ATTRIBUTE_UNUSED, segT sec ATTRIBUTE_UNUSED, void md_apply_fix (fixS *fixP, valueT *valP, segT segment) { - char *buf = fixP->fx_where + fixP->fx_frag->fr_literal; + char *buf = fixP->fx_where + fixP->fx_frag->fr_literal; /* Note: use offsetT because it is signed, valueT is unsigned. */ - offsetT val = (offsetT) * valP; - segT symsec - = (fixP->fx_addsy == NULL - ? absolute_section : S_GET_SEGMENT (fixP->fx_addsy)); + offsetT val = *valP; + segT symsec = (fixP->fx_addsy == NULL + ? absolute_section : S_GET_SEGMENT (fixP->fx_addsy)); /* If the fix is relative to a symbol which is not defined, or, (if pcrel), not in the same segment as the fix, we cannot resolve it diff --git a/gas/config/tc-mn10200.c b/gas/config/tc-mn10200.c index 657f591..db66e20 100644 --- a/gas/config/tc-mn10200.c +++ b/gas/config/tc-mn10200.c @@ -884,7 +884,7 @@ md_assemble (char *str) *s++ = '\0'; /* Find the first opcode with the proper name. */ - opcode = (struct mn10200_opcode *) str_hash_find (mn10200_hash, str); + opcode = str_hash_find (mn10200_hash, str); if (opcode == NULL) { as_bad (_("Unrecognized opcode: `%s'"), str); diff --git a/gas/config/tc-mn10300.c b/gas/config/tc-mn10300.c index 2167f40..c4cf804 100644 --- a/gas/config/tc-mn10300.c +++ b/gas/config/tc-mn10300.c @@ -1247,7 +1247,7 @@ md_assemble (char *str) *s++ = '\0'; /* Find the first opcode with the proper name. */ - opcode = (struct mn10300_opcode *) str_hash_find (mn10300_hash, str); + opcode = str_hash_find (mn10300_hash, str); if (opcode == NULL) { as_bad (_("Unrecognized opcode: `%s'"), str); @@ -2325,7 +2325,7 @@ md_apply_fix (fixS * fixP, valueT * valP, segT seg) { char * fixpos = fixP->fx_where + fixP->fx_frag->fr_literal; int size = 0; - int value = (int) * valP; + int value = *valP; gas_assert (fixP->fx_r_type < BFD_RELOC_UNUSED); diff --git a/gas/config/tc-moxie.c b/gas/config/tc-moxie.c index fec6a6f..3c47699 100644 --- a/gas/config/tc-moxie.c +++ b/gas/config/tc-moxie.c @@ -178,7 +178,7 @@ md_assemble (char *str) if (nlen == 0) as_bad (_("can't find opcode ")); - opcode = (moxie_opc_info_t *) str_hash_find (opcode_hash_control, op_start); + opcode = str_hash_find (opcode_hash_control, op_start); *op_end = pend; if (opcode == NULL) diff --git a/gas/config/tc-msp430.c b/gas/config/tc-msp430.c index 7ce061b..563365f 100644 --- a/gas/config/tc-msp430.c +++ b/gas/config/tc-msp430.c @@ -4360,7 +4360,7 @@ md_assemble (char * str) return; } - opcode = (struct msp430_opcode_s *) str_hash_find (msp430_hash, cmd); + opcode = str_hash_find (msp430_hash, cmd); if (opcode == NULL) { diff --git a/gas/config/tc-nds32.c b/gas/config/tc-nds32.c index 2e0b8e5..a159ddb 100644 --- a/gas/config/tc-nds32.c +++ b/gas/config/tc-nds32.c @@ -4633,16 +4633,15 @@ nds32_handle_align (fragS *fragp) { static const unsigned char nop16[] = { 0x92, 0x00 }; static const unsigned char nop32[] = { 0x40, 0x00, 0x00, 0x09 }; - int bytes; - char *p; if (fragp->fr_type != rs_align_code) return; - bytes = fragp->fr_next->fr_address - fragp->fr_address - fragp->fr_fix; - p = fragp->fr_literal + fragp->fr_fix; + int bytes = fragp->fr_next->fr_address - fragp->fr_address - fragp->fr_fix; + char *p = fragp->fr_literal + fragp->fr_fix; + int fix = bytes & 1; - if (bytes & 1) + if (fix != 0) { *p++ = 0; bytes--; @@ -4659,17 +4658,15 @@ nds32_handle_align (fragS *fragp) memcpy (p, nop16, 2); p += 2; bytes -= 2; + fix += 2; } + fragp->fr_fix += fix; - while (bytes >= 4) + if (bytes != 0) { + fragp->fr_var = 4; memcpy (p, nop32, 4); - p += 4; - bytes -= 4; } - - bytes = fragp->fr_next->fr_address - fragp->fr_address - fragp->fr_fix; - fragp->fr_fix += bytes; } /* md_flush_pending_output */ @@ -6268,7 +6265,7 @@ static int nds32_elf_append_relax_relocs_traverse (void **slot, void *arg ATTRIBUTE_UNUSED) { string_tuple_t *tuple = *((string_tuple_t **) slot); - nds32_elf_append_relax_relocs (tuple->key, tuple->value); + nds32_elf_append_relax_relocs (tuple->key, (void *) tuple->value); return 1; } diff --git a/gas/config/tc-nds32.h b/gas/config/tc-nds32.h index 14109f0..f8966c5 100644 --- a/gas/config/tc-nds32.h +++ b/gas/config/tc-nds32.h @@ -112,6 +112,7 @@ extern void tc_nds32_frame_initial_instructions (void); #define GAS_SORT_RELOCS 1 /* Values passed to md_apply_fix don't include the symbol value. */ #define MD_APPLY_SYM_VALUE(FIX) 0 +#define MAX_MEM_FOR_RS_ALIGN_CODE(p2align, max) (1 + 2 + 4) #define HANDLE_ALIGN(s, f) nds32_handle_align (f) #undef DIFF_EXPR_OK /* They should be fixed in linker. */ #define md_relax_frag(segment, fragP, stretch) nds32_relax_frag (segment, fragP, stretch) diff --git a/gas/config/tc-ns32k.c b/gas/config/tc-ns32k.c index cf23c9b..13907f2 100644 --- a/gas/config/tc-ns32k.c +++ b/gas/config/tc-ns32k.c @@ -1105,7 +1105,7 @@ parse (const char *line, int recursive_level) c = *lineptr; *(char *) lineptr = '\0'; - desc = (struct ns32k_opcode *) str_hash_find (inst_hash_handle, line); + desc = str_hash_find (inst_hash_handle, line); if (!desc) as_fatal (_("No such opcode")); @@ -1966,7 +1966,7 @@ md_fix_pcrel_adjust (fixS *fixP) void md_apply_fix (fixS *fixP, valueT * valP, segT seg ATTRIBUTE_UNUSED) { - long val = * (long *) valP; + long val = *valP; char *buf = fixP->fx_where + fixP->fx_frag->fr_literal; if (fix_bit_fixP (fixP)) diff --git a/gas/config/tc-pdp11.c b/gas/config/tc-pdp11.c index 2c3722c..2c8a1b8 100644 --- a/gas/config/tc-pdp11.c +++ b/gas/config/tc-pdp11.c @@ -239,12 +239,12 @@ md_number_to_chars (char con[], valueT value, int nbytes) void md_apply_fix (fixS *fixP, - valueT * valP, - segT seg ATTRIBUTE_UNUSED) + valueT *valP, + segT seg ATTRIBUTE_UNUSED) { valueT code; valueT mask; - valueT val = * valP; + valueT val = *valP; char *buf; int shift; int size; @@ -710,7 +710,7 @@ md_assemble (char *instruction_string) c = *p; *p = '\0'; - op = (struct pdp11_opcode *)str_hash_find (insn_hash, str); + op = str_hash_find (insn_hash, str); *p = c; if (op == 0) { diff --git a/gas/config/tc-pj.c b/gas/config/tc-pj.c index 849f905..61fada7 100644 --- a/gas/config/tc-pj.c +++ b/gas/config/tc-pj.c @@ -252,7 +252,7 @@ md_assemble (char *str) if (nlen == 0) as_bad (_("can't find opcode ")); - opcode = (pj_opc_info_t *) str_hash_find (opcode_hash_control, op_start); + opcode = str_hash_find (opcode_hash_control, op_start); *op_end = pend; if (opcode == NULL) diff --git a/gas/config/tc-ppc.c b/gas/config/tc-ppc.c index 33f3a4c..714dfca 100644 --- a/gas/config/tc-ppc.c +++ b/gas/config/tc-ppc.c @@ -3331,8 +3331,8 @@ md_assemble (char *str) *s++ = '\0'; /* Look up the opcode in the hash table. */ - opcode = (const struct powerpc_opcode *) str_hash_find (ppc_hash, str); - if (opcode == (const struct powerpc_opcode *) NULL) + opcode = str_hash_find (ppc_hash, str); + if (opcode == NULL) { as_bad (_("unrecognized opcode: `%s'"), str); ppc_clear_labels (); @@ -6140,9 +6140,6 @@ ppc_frob_symbol (symbolS *sym) if (SF_GET_FUNCTION (sym)) { - /* Make sure coff_last_function is reset. Otherwise, we won't create - the auxent for the next function. */ - coff_last_function = 0; ppc_last_function = sym; if (symbol_get_tc (sym)->u.size != (symbolS *) NULL) { @@ -6170,10 +6167,6 @@ ppc_frob_symbol (symbolS *sym) { set_end = ppc_last_function; ppc_last_function = NULL; - - /* We don't have a C_EFCN symbol, but we need to force the - COFF backend to believe that it has seen one. */ - coff_last_function = NULL; } } @@ -6894,6 +6887,9 @@ ppc_handle_align (segT sec, struct frag *fragP) { valueT count = (fragP->fr_next->fr_address - (fragP->fr_address + fragP->fr_fix)); + if (count == 0) + return; + char *dest = fragP->fr_literal + fragP->fr_fix; enum ppc_nop_encoding_for_rs_align_code nop_select = *dest & 0xff; @@ -6901,8 +6897,7 @@ ppc_handle_align (segT sec, struct frag *fragP) We could pad with zeros up to an instruction boundary then follow with nops but odd counts indicate data in an executable section so padding with zeros is most appropriate. */ - if (count == 0 - || (nop_select == PPC_NOP_VLE ? (count & 1) != 0 : (count & 3) != 0)) + if (nop_select == PPC_NOP_VLE ? (count & 1) != 0 : (count & 3) != 0) { *dest = 0; return; @@ -6920,28 +6915,13 @@ ppc_handle_align (segT sec, struct frag *fragP) if (count > 4 * nop_limit && count < 0x2000000) { - struct frag *rest; - - /* Make a branch, then follow with nops. Insert another - frag to handle the nops. */ + /* Make a branch, then follow with nops. */ md_number_to_chars (dest, 0x48000000 + count, 4); + dest += 4; + fragP->fr_fix += 4; count -= 4; if (count == 0) return; - - segment_info_type *seginfo = seg_info (sec); - struct obstack *ob = &seginfo->frchainP->frch_obstack; - rest = frag_alloc (ob, 4); - memcpy (rest, fragP, SIZEOF_STRUCT_FRAG); - fragP->fr_next = rest; - fragP = rest; - rest->fr_address += rest->fr_fix + 4; - rest->fr_fix = 0; - /* If we leave the next frag as rs_align_code we'll come here - again, resulting in a bunch of branches rather than a - branch followed by nops. */ - rest->fr_type = rs_align; - dest = rest->fr_literal; } md_number_to_chars (dest, 0x60000000, 4); @@ -6984,7 +6964,7 @@ ppc_handle_align (segT sec, struct frag *fragP) void md_apply_fix (fixS *fixP, valueT *valP, segT seg) { - valueT value = * valP; + valueT value = *valP; offsetT fieldval; const struct powerpc_operand *operand; diff --git a/gas/config/tc-ppc.h b/gas/config/tc-ppc.h index f6b37f8..97e2f4e 100644 --- a/gas/config/tc-ppc.h +++ b/gas/config/tc-ppc.h @@ -72,7 +72,7 @@ extern const char *ppc_target_format (void); /* We don't need to handle .word strangely. */ #define WORKING_DOT_WORD -#define MAX_MEM_FOR_RS_ALIGN_CODE 4 +#define MAX_MEM_FOR_RS_ALIGN_CODE(p2align, max) 8 #define HANDLE_ALIGN(SEC, FRAGP) \ if ((FRAGP)->fr_type == rs_align_code) \ ppc_handle_align (SEC, FRAGP); diff --git a/gas/config/tc-pru.c b/gas/config/tc-pru.c index 70a4e76..00208e4 100644 --- a/gas/config/tc-pru.c +++ b/gas/config/tc-pru.c @@ -134,12 +134,12 @@ typedef struct pru_insn_info /* Opcode hash table. */ static htab_t pru_opcode_hash = NULL; #define pru_opcode_lookup(NAME) \ - ((struct pru_opcode *) str_hash_find (pru_opcode_hash, (NAME))) + (str_hash_find (pru_opcode_hash, (NAME))) /* Register hash table. */ static htab_t pru_reg_hash = NULL; #define pru_reg_lookup(NAME) \ - ((struct pru_reg *) str_hash_find (pru_reg_hash, (NAME))) + (str_hash_find (pru_reg_hash, (NAME))) /* The known current alignment of the current section. */ static int pru_current_align; diff --git a/gas/config/tc-riscv.c b/gas/config/tc-riscv.c index 8485ad4..d0030de 100644 --- a/gas/config/tc-riscv.c +++ b/gas/config/tc-riscv.c @@ -93,6 +93,7 @@ enum riscv_csr_class CSR_CLASS_SSAIA_AND_H_32, /* Ssaia with H, rv32 only */ CSR_CLASS_SSAIA_OR_SSCSRIND, /* Ssaia/Smcsrind */ CSR_CLASS_SSAIA_OR_SSCSRIND_AND_H, /* Ssaia/Smcsrind with H */ + CSR_CLASS_SSCCFG, /* Ssccfg */ CSR_CLASS_SSCSRIND, /* Sscsrind */ CSR_CLASS_SSCSRIND_AND_H, /* Sscsrind with H */ CSR_CLASS_SSSTATEEN, /* S[ms]stateen only */ @@ -932,7 +933,7 @@ opcode_name_lookup (char **s) save_c = *e; *e = '\0'; - o = (struct opcode_name_t *) str_hash_find (opcode_names_hash, *s); + o = str_hash_find (opcode_names_hash, *s); /* Advance to next token if one was recognized. */ if (o) @@ -960,15 +961,15 @@ static htab_t reg_names_hash = NULL; static htab_t csr_extra_hash = NULL; #define ENCODE_REG_HASH(cls, n) \ - ((void *)(uintptr_t)((n) * RCLASS_MAX + (cls) + 1)) -#define DECODE_REG_CLASS(hash) (((uintptr_t)(hash) - 1) % RCLASS_MAX) -#define DECODE_REG_NUM(hash) (((uintptr_t)(hash) - 1) / RCLASS_MAX) + ((n) * RCLASS_MAX + (cls) + 1) +#define DECODE_REG_CLASS(hash) (((hash) - 1) % RCLASS_MAX) +#define DECODE_REG_NUM(hash) (((hash) - 1) / RCLASS_MAX) static void hash_reg_name (enum reg_class class, const char *name, unsigned n) { - void *hash = ENCODE_REG_HASH (class, n); - if (str_hash_insert (reg_names_hash, name, hash, 0) != NULL) + uintptr_t hash = ENCODE_REG_HASH (class, n); + if (str_hash_insert_int (reg_names_hash, name, hash, 0) != NULL) as_fatal (_("internal: duplicate %s"), name); } @@ -994,7 +995,7 @@ riscv_init_csr_hash (const char *name, bool need_enrty = true; pre_entry = NULL; - entry = (struct riscv_csr_extra *) str_hash_find (csr_extra_hash, name); + entry = str_hash_find (csr_extra_hash, name); while (need_enrty && entry != NULL) { if (entry->csr_class == class @@ -1118,6 +1119,9 @@ riscv_csr_address (const char *csr_name, is_h_required = (csr_class == CSR_CLASS_SSAIA_OR_SSCSRIND_AND_H); extension = "ssaia or sscsrind"; break; + case CSR_CLASS_SSCCFG: + extension = "ssccfg"; + break; case CSR_CLASS_SSCSRIND: case CSR_CLASS_SSCSRIND_AND_H: is_h_required = (csr_class == CSR_CLASS_SSCSRIND_AND_H); @@ -1206,8 +1210,7 @@ riscv_csr_address (const char *csr_name, static unsigned int reg_csr_lookup_internal (const char *s) { - struct riscv_csr_extra *r = - (struct riscv_csr_extra *) str_hash_find (csr_extra_hash, s); + struct riscv_csr_extra *r = str_hash_find (csr_extra_hash, s); if (r == NULL) return -1U; @@ -1218,13 +1221,13 @@ reg_csr_lookup_internal (const char *s) static unsigned int reg_lookup_internal (const char *s, enum reg_class class) { - void *r; + uintptr_t r; if (class == RCLASS_CSR) return reg_csr_lookup_internal (s); - r = str_hash_find (reg_names_hash, s); - if (r == NULL || DECODE_REG_CLASS (r) != class) + r = str_hash_find_int (reg_names_hash, s); + if (r == (uintptr_t) -1 || DECODE_REG_CLASS (r) != class) return -1; if (riscv_subset_supports (&riscv_rps_as, "e") @@ -1752,6 +1755,21 @@ validate_riscv_insn (const struct riscv_opcode *opc, int length) goto unknown_validate_operand; } break; + case 'm': /* Vendor-specific (MIPS) operands. */ + switch (*++oparg) + { + case '@': USE_BITS (OP_MASK_MIPS_HINT, OP_SH_MIPS_HINT); + break; + case '#': USE_BITS (OP_MASK_MIPS_IMM9, OP_SH_MIPS_IMM9); + break; + case '$': used_bits |= ENCODE_MIPS_LDP_IMM (-1U); break; + case '%': used_bits |= ENCODE_MIPS_LWP_IMM (-1U); break; + case '^': used_bits |= ENCODE_MIPS_SDP_IMM (-1U); break; + case '&': used_bits |= ENCODE_MIPS_SWP_IMM (-1U); break; + default: + goto unknown_validate_operand; + } + break; default: goto unknown_validate_operand; } @@ -2029,7 +2047,7 @@ macro_build (expressionS *ep, const char *name, const char *fmt, ...) va_start (args, fmt); r = BFD_RELOC_UNUSED; - mo = (struct riscv_opcode *) str_hash_find (op_hash, name); + mo = str_hash_find (op_hash, name); gas_assert (mo); /* Find a non-RVC variant of the instruction. append_insn will compress @@ -2845,7 +2863,7 @@ riscv_ip (char *str, struct riscv_cl_insn *ip, expressionS *imm_expr, break; } - insn = (struct riscv_opcode *) str_hash_find (hash, str); + insn = str_hash_find (hash, str); probing_insn_operands = true; @@ -4173,6 +4191,92 @@ riscv_ip (char *str, struct riscv_cl_insn *ip, expressionS *imm_expr, #undef ENCODE_UIMM_BIT_FIELD break; + case 'm': /* Vendor-specific (MIPS) operands. */ + switch (*++oparg) + { + case '@': /* hint 0 - 31. */ + my_getExpression (imm_expr, asarg); + check_absolute_expr (ip, imm_expr, FALSE); + if ((unsigned long)imm_expr->X_add_number > 31) + as_bad(_("Improper hint amount (%lu)"), + (unsigned long)imm_expr->X_add_number); + INSERT_OPERAND(MIPS_HINT, *ip, imm_expr->X_add_number); + imm_expr->X_op = O_absent; + asarg = expr_parse_end; + continue; + + case '#': /* immediate 0 - 511. */ + my_getExpression (imm_expr, asarg); + check_absolute_expr (ip, imm_expr, FALSE); + if ((unsigned long)imm_expr->X_add_number > 511) + as_bad(_("Improper immediate amount (%lu)"), + (unsigned long)imm_expr->X_add_number); + INSERT_OPERAND(MIPS_IMM9, *ip, imm_expr->X_add_number); + imm_expr->X_op = O_absent; + asarg = expr_parse_end; + continue; + + case '$': /* LDP offset 0 to (1<<7)-8. */ + my_getExpression (imm_expr, asarg); + check_absolute_expr (ip, imm_expr, FALSE); + if ((unsigned long)imm_expr->X_add_number >= (1 << 7) + || ((unsigned long)imm_expr->X_add_number & 0x7) != 0) + as_bad(_("Improper LDP offset amount (%lu)"), + (unsigned long)imm_expr->X_add_number); + INSERT_OPERAND(MIPS_LDP_OFFSET, *ip, + (imm_expr->X_add_number >> 3)); + imm_expr->X_op = O_absent; + asarg = expr_parse_end; + continue; + + case '%': /* LWP offset 0 to (1<<7)-4. */ + my_getExpression (imm_expr, asarg); + check_absolute_expr (ip, imm_expr, FALSE); + if ((unsigned long)imm_expr->X_add_number >= (1 << 7) + || ((unsigned long)imm_expr->X_add_number & 0x3) != 0) + as_bad(_("Improper LWP offset amount (%lu)"), + (unsigned long)imm_expr->X_add_number); + INSERT_OPERAND(MIPS_LWP_OFFSET, *ip, + (imm_expr->X_add_number >> 2)); + imm_expr->X_op = O_absent; + asarg = expr_parse_end; + continue; + + case '^': /* SDP offset 0 to (1<<7)-8. */ + my_getExpression (imm_expr, asarg); + check_absolute_expr (ip, imm_expr, FALSE); + if ((unsigned long)imm_expr->X_add_number >= (1 << 7) + || ((unsigned long)imm_expr->X_add_number & 0x7) != 0) + as_bad(_("Improper SDP offset amount (%lu)"), + (unsigned long)imm_expr->X_add_number); + INSERT_OPERAND(MIPS_SDP_OFFSET10, *ip, + (imm_expr->X_add_number >> 3)); + INSERT_OPERAND(MIPS_SDP_OFFSET25, *ip, + (imm_expr->X_add_number >> 5)); + imm_expr->X_op = O_absent; + asarg = expr_parse_end; + continue; + + case '&': /* SWP offset 0 to (1<<7)-4. */ + my_getExpression (imm_expr, asarg); + check_absolute_expr (ip, imm_expr, FALSE); + if ((unsigned long)imm_expr->X_add_number >= (1 << 7) + || ((unsigned long)imm_expr->X_add_number & 0x3) != 0) + as_bad(_("Improper SWP offset amount (%lu)"), + (unsigned long)imm_expr->X_add_number); + INSERT_OPERAND(MIPS_SWP_OFFSET9, *ip, + (imm_expr->X_add_number >> 2)); + INSERT_OPERAND(MIPS_SWP_OFFSET25, *ip, + (imm_expr->X_add_number >> 5)); + imm_expr->X_op = O_absent; + asarg = expr_parse_end; + continue; + + default: + goto unknown_riscv_ip_operand; + } + break; + default: goto unknown_riscv_ip_operand; } @@ -4747,7 +4851,13 @@ md_apply_fix (fixS *fixP, valueT *valP, segT seg) bfd_vma delta = target - md_pcrel_from (fixP); bfd_putl32 (bfd_getl32 (buf) | ENCODE_JTYPE_IMM (delta), buf); if (!riscv_opts.relax && S_IS_LOCAL (fixP->fx_addsy)) - fixP->fx_done = 1; + { + if (!VALID_JTYPE_IMM (delta)) + as_bad_where (fixP->fx_file, fixP->fx_line, + _("invalid J-type offset (%+lld)"), + (long long) delta); + fixP->fx_done = 1; + } } break; @@ -4759,7 +4869,13 @@ md_apply_fix (fixS *fixP, valueT *valP, segT seg) bfd_vma delta = target - md_pcrel_from (fixP); bfd_putl32 (bfd_getl32 (buf) | ENCODE_BTYPE_IMM (delta), buf); if (!riscv_opts.relax && S_IS_LOCAL (fixP->fx_addsy)) - fixP->fx_done = 1; + { + if (!VALID_BTYPE_IMM (delta)) + as_bad_where (fixP->fx_file, fixP->fx_line, + _("invalid B-type offset (%+lld)"), + (long long) delta); + fixP->fx_done = 1; + } } break; @@ -4771,7 +4887,13 @@ md_apply_fix (fixS *fixP, valueT *valP, segT seg) bfd_vma delta = target - md_pcrel_from (fixP); bfd_putl16 (bfd_getl16 (buf) | ENCODE_CBTYPE_IMM (delta), buf); if (!riscv_opts.relax && S_IS_LOCAL (fixP->fx_addsy)) - fixP->fx_done = 1; + { + if (!VALID_CBTYPE_IMM (delta)) + as_bad_where (fixP->fx_file, fixP->fx_line, + _("invalid CB-type offset (%+lld)"), + (long long) delta); + fixP->fx_done = 1; + } } break; @@ -4783,7 +4905,13 @@ md_apply_fix (fixS *fixP, valueT *valP, segT seg) bfd_vma delta = target - md_pcrel_from (fixP); bfd_putl16 (bfd_getl16 (buf) | ENCODE_CJTYPE_IMM (delta), buf); if (!riscv_opts.relax && S_IS_LOCAL (fixP->fx_addsy)) - fixP->fx_done = 1; + { + if (!VALID_CJTYPE_IMM (delta)) + as_bad_where (fixP->fx_file, fixP->fx_line, + _("invalid CJ-type offset (%+lld)"), + (long long) delta); + fixP->fx_done = 1; + } } break; @@ -4818,7 +4946,14 @@ md_apply_fix (fixS *fixP, valueT *valP, segT seg) | ENCODE_UTYPE_IMM (RISCV_CONST_HIGH_PART (value)), buf); if (!riscv_opts.relax) - fixP->fx_done = 1; + { + if (xlen > 32 + && !VALID_UTYPE_IMM (RISCV_CONST_HIGH_PART (value))) + as_bad_where (fixP->fx_file, fixP->fx_line, + _("invalid pcrel_hi offset (%+lld)"), + (long long) value); + fixP->fx_done = 1; + } } relaxable = true; break; @@ -4844,7 +4979,8 @@ md_apply_fix (fixS *fixP, valueT *valP, segT seg) bfd_putl32 (bfd_getl32 (buf) | ENCODE_STYPE_IMM (value), buf); else bfd_putl32 (bfd_getl32 (buf) | ENCODE_ITYPE_IMM (value), buf); - /* Relaxations should never be enabled by `.option relax'. */ + /* Relaxations should never be enabled by `.option relax'. + The offset is checked by corresponding %pcrel_hi entry. */ if (!riscv_opts.relax) fixP->fx_done = 1; } @@ -5367,7 +5503,7 @@ RISC-V options:\n\ -fno-pic don't generate position-independent code (default)\n\ -march=ISA set the RISC-V architecture\n\ -misa-spec=ISAspec set the RISC-V ISA spec (2.2, 20190608, 20191213)\n\ - -mpriv-spec=PRIVspec set the RISC-V privilege spec (1.10, 1.11, 1.12)\n\ + -mpriv-spec=PRIVspec set the RISC-V privilege spec (1.10, 1.11, 1.12, 1.13)\n\ -mabi=ABI set the RISC-V ABI\n\ -mrelax enable relax (default)\n\ -mno-relax disable relax\n\ @@ -5752,35 +5888,6 @@ s_variant_cc (int ignored ATTRIBUTE_UNUSED) elfsym->internal_elf_sym.st_other |= STO_RISCV_VARIANT_CC; } -/* Same as elf_copy_symbol_attributes, but without copying st_other. - This is needed so RISC-V specific st_other values can be independently - specified for an IFUNC resolver (that is called by the dynamic linker) - and the symbol it resolves (aliased to the resolver). In particular, - if a function symbol has special st_other value set via directives, - then attaching an IFUNC resolver to that symbol should not override - the st_other setting. Requiring the directive on the IFUNC resolver - symbol would be unexpected and problematic in C code, where the two - symbols appear as two independent function declarations. */ - -void -riscv_elf_copy_symbol_attributes (symbolS *dest, symbolS *src) -{ - struct elf_obj_sy *srcelf = symbol_get_obj (src); - struct elf_obj_sy *destelf = symbol_get_obj (dest); - /* If size is unset, copy size from src. Because we don't track whether - .size has been used, we can't differentiate .size dest, 0 from the case - where dest's size is unset. */ - if (!destelf->size && S_GET_SIZE (dest) == 0) - { - if (srcelf->size) - { - destelf->size = XNEW (expressionS); - *destelf->size = *srcelf->size; - } - S_SET_SIZE (dest, S_GET_SIZE (src)); - } -} - /* RISC-V pseudo-ops table. */ static const pseudo_typeS riscv_pseudo_table[] = { diff --git a/gas/config/tc-riscv.h b/gas/config/tc-riscv.h index e2e8e7a..853f349 100644 --- a/gas/config/tc-riscv.h +++ b/gas/config/tc-riscv.h @@ -64,7 +64,7 @@ extern bool riscv_frag_align_code (int); extern void riscv_handle_align (fragS *); #define HANDLE_ALIGN(s, f) riscv_handle_align (f) -#define MAX_MEM_FOR_RS_ALIGN_CODE (3 + 4) +#define MAX_MEM_FOR_RS_ALIGN_CODE(p2align, max) (3 + 4) /* The ISA of the target may change based on command-line arguments. */ #define TARGET_FORMAT riscv_target_format () @@ -175,8 +175,16 @@ extern void riscv_init_frag (struct frag *, int); #define obj_adjust_symtab() riscv_adjust_symtab () extern void riscv_adjust_symtab (void); -void riscv_elf_copy_symbol_attributes (symbolS *, symbolS *); +/* Don't copy st_other. + This is needed so RISC-V specific st_other values can be independently + specified for an IFUNC resolver (that is called by the dynamic linker) + and the symbol it resolves (aliased to the resolver). In particular, + if a function symbol has special st_other value set via directives, + then attaching an IFUNC resolver to that symbol should not override + the st_other setting. Requiring the directive on the IFUNC resolver + symbol would be unexpected and problematic in C code, where the two + symbols appear as two independent function declarations. */ #define OBJ_COPY_SYMBOL_ATTRIBUTES(DEST, SRC) \ - riscv_elf_copy_symbol_attributes (DEST, SRC) + elf_copy_symbol_size (DEST, SRC) #endif /* TC_RISCV */ diff --git a/gas/config/tc-rl78.c b/gas/config/tc-rl78.c index 6d24bc3..3593b00 100644 --- a/gas/config/tc-rl78.c +++ b/gas/config/tc-rl78.c @@ -1420,7 +1420,7 @@ md_apply_fix (struct fix * f ATTRIBUTE_UNUSED, return; op = f->fx_frag->fr_literal + f->fx_where; - val = (unsigned long) * t; + val = *t; if (f->fx_addsy == NULL) f->fx_done = 1; diff --git a/gas/config/tc-rl78.h b/gas/config/tc-rl78.h index 4a51325..09d9987 100644 --- a/gas/config/tc-rl78.h +++ b/gas/config/tc-rl78.h @@ -75,7 +75,7 @@ extern void rl78_cons_fix_new (fragS *, int, int, expressionS *); #define RELOC_EXPANSION_POSSIBLE 1 #define MAX_RELOC_EXPANSION 8 -#define MAX_MEM_FOR_RS_ALIGN_CODE 8 +#define MAX_MEM_FOR_RS_ALIGN_CODE(p2align, max) 8 #define HANDLE_ALIGN(SEC, FRAG) rl78_handle_align (FRAG) extern void rl78_handle_align (fragS *); diff --git a/gas/config/tc-rx.c b/gas/config/tc-rx.c index bd45c53..0ecda64 100644 --- a/gas/config/tc-rx.c +++ b/gas/config/tc-rx.c @@ -2256,9 +2256,9 @@ rx_cons_fix_new (fragS * frag, } void -md_apply_fix (struct fix * f ATTRIBUTE_UNUSED, - valueT * t ATTRIBUTE_UNUSED, - segT s ATTRIBUTE_UNUSED) +md_apply_fix (struct fix *f, + valueT *t, + segT s ATTRIBUTE_UNUSED) { /* Instruction bytes are always little endian. */ char * op; @@ -2274,7 +2274,7 @@ md_apply_fix (struct fix * f ATTRIBUTE_UNUSED, #define OP4(x) op[target_big_endian ? 3-x : x] op = f->fx_frag->fr_literal + f->fx_where; - val = (unsigned long) * t; + val = *t; /* Opcode words are always the same endian. Data words are either big or little endian. */ diff --git a/gas/config/tc-rx.h b/gas/config/tc-rx.h index 3c4524f..29c4382 100644 --- a/gas/config/tc-rx.h +++ b/gas/config/tc-rx.h @@ -96,7 +96,7 @@ extern void rx_cons_fix_new (fragS *, int, int, expressionS *, goto around; \ } -#define MAX_MEM_FOR_RS_ALIGN_CODE 8 +#define MAX_MEM_FOR_RS_ALIGN_CODE(p2align, max) 8 #define HANDLE_ALIGN(SEC, FRAG) rx_handle_align (FRAG) extern void rx_handle_align (fragS *); diff --git a/gas/config/tc-s390.c b/gas/config/tc-s390.c index b846134..6e9dca0 100644 --- a/gas/config/tc-s390.c +++ b/gas/config/tc-s390.c @@ -1931,8 +1931,8 @@ md_assemble (char *str) *s++ = '\0'; /* Look up the opcode in the hash table. */ - opcode = (struct s390_opcode *) str_hash_find (s390_opcode_hash, str); - if (opcode == (const struct s390_opcode *) NULL) + opcode = str_hash_find (s390_opcode_hash, str); + if (opcode == NULL) { as_bad (_("Unrecognized opcode: `%s'"), str); return; @@ -1988,9 +1988,8 @@ s390_insn (int ignore ATTRIBUTE_UNUSED) *s++ = '\0'; /* Look up the opcode in the hash table. */ - opformat = (struct s390_opcode *) - str_hash_find (s390_opformat_hash, input_line_pointer); - if (opformat == (const struct s390_opcode *) NULL) + opformat = str_hash_find (s390_opformat_hash, input_line_pointer); + if (opformat == NULL) { as_bad (_("Unrecognized opcode format: `%s'"), input_line_pointer); return; diff --git a/gas/config/tc-score.c b/gas/config/tc-score.c index ab49875..79dcf77 100644 --- a/gas/config/tc-score.c +++ b/gas/config/tc-score.c @@ -1040,7 +1040,7 @@ s3_score_reg_parse (char **ccp, htab_t htab) c = *p++; *--p = 0; - reg = (struct s3_reg_entry *) str_hash_find (htab, start); + reg = str_hash_find (htab, start); *p = c; if (reg) @@ -2199,8 +2199,7 @@ s3_dependency_type_from_insn (char *insn_name) const struct s3_insn_to_dependency *tmp; strcpy (name, insn_name); - tmp = (const struct s3_insn_to_dependency *) - str_hash_find (s3_dependency_insn_hsh, name); + tmp = str_hash_find (s3_dependency_insn_hsh, name); if (tmp) return tmp->type; @@ -2659,8 +2658,7 @@ s3_parse_16_32_inst (char *insnstr, bool gen_frag_p) c = *p; *p = '\0'; - opcode = (const struct s3_asm_opcode *) str_hash_find (s3_score_ops_hsh, - operator); + opcode = str_hash_find (s3_score_ops_hsh, operator); *p = c; memset (&s3_inst, '\0', sizeof (s3_inst)); @@ -2706,8 +2704,7 @@ s3_parse_48_inst (char *insnstr, bool gen_frag_p) c = *p; *p = '\0'; - opcode = (const struct s3_asm_opcode *) str_hash_find (s3_score_ops_hsh, - operator); + opcode = str_hash_find (s3_score_ops_hsh, operator); *p = c; memset (&s3_inst, '\0', sizeof (s3_inst)); diff --git a/gas/config/tc-score.h b/gas/config/tc-score.h index 92776c8..e02ff8f 100644 --- a/gas/config/tc-score.h +++ b/gas/config/tc-score.h @@ -30,7 +30,7 @@ #define DIFF_EXPR_OK #define RELOC_EXPANSION_POSSIBLE #define MAX_RELOC_EXPANSION 2 -#define MAX_MEM_FOR_RS_ALIGN_CODE (3 + 4) +#define MAX_MEM_FOR_RS_ALIGN_CODE(p2align, max) (3 + 4) #define md_undefined_symbol(name) NULL diff --git a/gas/config/tc-score7.c b/gas/config/tc-score7.c index c822144..b11f69f 100644 --- a/gas/config/tc-score7.c +++ b/gas/config/tc-score7.c @@ -1129,7 +1129,7 @@ s7_score_reg_parse (char **ccp, htab_t htab) c = *p++; *--p = 0; - reg = (struct s7_reg_entry *) str_hash_find (htab, start); + reg = str_hash_find (htab, start); *p = c; if (reg) @@ -2321,8 +2321,7 @@ s7_dependency_type_from_insn (char *insn_name) const struct s7_insn_to_dependency *tmp; strcpy (name, insn_name); - tmp = (const struct s7_insn_to_dependency *) - str_hash_find (s7_dependency_insn_hsh, name); + tmp = str_hash_find (s7_dependency_insn_hsh, name); if (tmp) return tmp->type; @@ -2790,8 +2789,7 @@ s7_parse_16_32_inst (char *insnstr, bool gen_frag_p) c = *p; *p = '\0'; - opcode = (const struct s7_asm_opcode *) str_hash_find (s7_score_ops_hsh, - operator); + opcode = str_hash_find (s7_score_ops_hsh, operator); *p = c; memset (&s7_inst, '\0', sizeof (s7_inst)); diff --git a/gas/config/tc-sh.c b/gas/config/tc-sh.c index db11939..c37306f 100644 --- a/gas/config/tc-sh.c +++ b/gas/config/tc-sh.c @@ -544,6 +544,7 @@ sh_optimize_expr (expressionS *l, operatorT op, expressionS *r) add_to_result (l, symval_diff, symval_diff < 0); l->X_op = O_constant; l->X_add_symbol = 0; + l->X_unsigned = 0; return 1; } return 0; @@ -2180,7 +2181,7 @@ find_cooked_opcode (char **str_p) if (nlen == 0) as_bad (_("can't find opcode ")); - return (sh_opcode_info *) str_hash_find (opcode_hash_control, name); + return str_hash_find (opcode_hash_control, name); } /* Assemble a parallel processing insn. */ @@ -3396,7 +3397,7 @@ md_apply_fix (fixS *fixP, valueT *valP, segT seg ATTRIBUTE_UNUSED) char *buf = fixP->fx_where + fixP->fx_frag->fr_literal; int lowbyte = target_big_endian ? 1 : 0; int highbyte = target_big_endian ? 0 : 1; - long val = (long) *valP; + long val = *valP; long max, min; int shift; diff --git a/gas/config/tc-sh.h b/gas/config/tc-sh.h index fb1e4b8..1ed0f5e 100644 --- a/gas/config/tc-sh.h +++ b/gas/config/tc-sh.h @@ -56,7 +56,7 @@ extern int sh_optimize_expr (expressionS *, operatorT, expressionS *); #define HANDLE_ALIGN(sec, frag) sh_handle_align (frag) extern void sh_handle_align (fragS *); -#define MAX_MEM_FOR_RS_ALIGN_CODE (1 + 2) +#define MAX_MEM_FOR_RS_ALIGN_CODE(p2align, max) (1 + 2) /* We need to force out some relocations when relaxing. */ #define TC_FORCE_RELOCATION(fix) sh_force_relocation (fix) diff --git a/gas/config/tc-sparc.c b/gas/config/tc-sparc.c index e303169..6db8481 100644 --- a/gas/config/tc-sparc.c +++ b/gas/config/tc-sparc.c @@ -979,9 +979,9 @@ md_begin (void) { const struct sparc_opcode *insn; const char *name = ((sparc_arch_size == 32) - ? native_op_table[i].name32 - : native_op_table[i].name64); - insn = (struct sparc_opcode *) str_hash_find (op_hash, name); + ? native_op_table[i].name32 + : native_op_table[i].name64); + insn = str_hash_find (op_hash, name); if (insn == NULL) { as_bad (_("Internal error: can't find opcode `%s' for `%s'\n"), @@ -1756,7 +1756,7 @@ sparc_ip (char *str, const struct sparc_opcode **pinsn) *pinsn = NULL; return special_case; } - insn = (struct sparc_opcode *) str_hash_find (op_hash, str); + insn = str_hash_find (op_hash, str); *pinsn = insn; if (insn == NULL) { @@ -3460,7 +3460,7 @@ void md_apply_fix (fixS *fixP, valueT *valP, segT segment ATTRIBUTE_UNUSED) { char *buf = fixP->fx_where + fixP->fx_frag->fr_literal; - offsetT val = * (offsetT *) valP; + offsetT val = *valP; long insn; gas_assert (fixP->fx_r_type < BFD_RELOC_UNUSED); diff --git a/gas/config/tc-sparc.h b/gas/config/tc-sparc.h index b87212f..d569fe7 100644 --- a/gas/config/tc-sparc.h +++ b/gas/config/tc-sparc.h @@ -78,7 +78,7 @@ extern void sparc_cons_align (int); #define HANDLE_ALIGN(sec, fragp) sparc_handle_align (fragp) extern void sparc_handle_align (struct frag *); -#define MAX_MEM_FOR_RS_ALIGN_CODE (3 + 4 + 4) +#define MAX_MEM_FOR_RS_ALIGN_CODE(p2align, max) (3 + 4 + 4) #define DIFF_EXPR_OK /* foo-. gets turned into PC relative relocs */ diff --git a/gas/config/tc-spu.c b/gas/config/tc-spu.c index 335fffc..1c8f7c5 100644 --- a/gas/config/tc-spu.c +++ b/gas/config/tc-spu.c @@ -273,7 +273,7 @@ md_assemble (char *op) /* try to find the instruction in the hash table */ - if ((format = (struct spu_opcode *) str_hash_find (op_hash, op)) == NULL) + if ((format = str_hash_find (op_hash, op)) == NULL) { as_bad (_("Invalid mnemonic '%s'"), op); return; diff --git a/gas/config/tc-spu.h b/gas/config/tc-spu.h index 4c16485..7089615 100644 --- a/gas/config/tc-spu.h +++ b/gas/config/tc-spu.h @@ -104,6 +104,6 @@ extern symbolS *section_symbol (asection *); extern void spu_handle_align (fragS *); #define HANDLE_ALIGN(sec, frag) spu_handle_align (frag) -#define MAX_MEM_FOR_RS_ALIGN_CODE (7 + 8) +#define MAX_MEM_FOR_RS_ALIGN_CODE(p2align, max) (7 + 8) #endif /* TC_SPU */ diff --git a/gas/config/tc-tic30.c b/gas/config/tc-tic30.c index 1da1618..87cf09a 100644 --- a/gas/config/tc-tic30.c +++ b/gas/config/tc-tic30.c @@ -516,7 +516,7 @@ tic30_operand (char *token) return NULL; } - ind_addr_op = (ind_addr_type *) str_hash_find (ind_hash, ind_buffer); + ind_addr_op = str_hash_find (ind_hash, ind_buffer); if (ind_addr_op) { debug ("Found indirect reference: %s\n", ind_addr_op->syntax); @@ -555,7 +555,7 @@ tic30_operand (char *token) } else { - reg *regop = (reg *) str_hash_find (reg_hash, token); + reg *regop = str_hash_find (reg_hash, token); if (regop) { @@ -652,7 +652,7 @@ tic30_parallel_insn (char *token) /* Find instruction. */ save_char = *current_posn; *current_posn = '\0'; - p_opcode = (partemplate *) str_hash_find (parop_hash, token); + p_opcode = str_hash_find (parop_hash, token); if (p_opcode) { debug ("Found instruction %s\n", p_opcode->name); @@ -697,7 +697,7 @@ tic30_parallel_insn (char *token) debug ("first_opcode = %s\n", first_opcode); debug ("second_opcode = %s\n", second_opcode); sprintf (token, "q_%s_%s", second_opcode, first_opcode); - p_opcode = (partemplate *) str_hash_find (parop_hash, token); + p_opcode = str_hash_find (parop_hash, token); if (p_opcode) { @@ -1443,7 +1443,7 @@ md_assemble (char *line) /* Find instruction. */ save_char = *current_posn; *current_posn = '\0'; - op = (insn_template *) str_hash_find (op_hash, token_start); + op = str_hash_find (op_hash, token_start); if (op) { debug ("Found instruction %s\n", op->name); diff --git a/gas/config/tc-tic4x.c b/gas/config/tc-tic4x.c index 97a088c..167a94f 100644 --- a/gas/config/tc-tic4x.c +++ b/gas/config/tc-tic4x.c @@ -2450,8 +2450,7 @@ md_assemble (char *str) if (insn->in_use) { - if ((insn->inst = (struct tic4x_inst *) - str_hash_find (tic4x_op_hash, insn->name)) == NULL) + if ((insn->inst = str_hash_find (tic4x_op_hash, insn->name)) == NULL) { as_bad (_("Unknown opcode `%s'."), insn->name); insn->parallel = 0; diff --git a/gas/config/tc-tic54x.c b/gas/config/tc-tic54x.c index cda4f49..db3def4 100644 --- a/gas/config/tc-tic54x.c +++ b/gas/config/tc-tic54x.c @@ -801,7 +801,7 @@ tic54x_tag (int ignore ATTRIBUTE_UNUSED) { char *name; int c = get_symbol_name (&name); - struct stag *stag = (struct stag *) str_hash_find (stag_hash, name); + struct stag *stag = str_hash_find (stag_hash, name); if (!stag) { @@ -2733,7 +2733,7 @@ subsym_isreg (char *a, char *ignore ATTRIBUTE_UNUSED) static int subsym_structsz (char *name, char *ignore ATTRIBUTE_UNUSED) { - struct stag *stag = (struct stag *) str_hash_find (stag_hash, name); + struct stag *stag = str_hash_find (stag_hash, name); if (stag) return stag->size; @@ -3667,7 +3667,7 @@ encode_integer (tic54x_insn *insn, static int encode_condition (tic54x_insn *insn, struct opstruct *operand) { - tic54x_symbol *cc = (tic54x_symbol *) str_hash_find (cc_hash, operand->buf); + tic54x_symbol *cc = str_hash_find (cc_hash, operand->buf); if (!cc) { as_bad (_("Unrecognized condition code \"%s\""), operand->buf); @@ -3727,7 +3727,7 @@ encode_condition (tic54x_insn *insn, struct opstruct *operand) static int encode_cc3 (tic54x_insn *insn, struct opstruct *operand) { - tic54x_symbol *cc3 = (tic54x_symbol *) str_hash_find (cc3_hash, operand->buf); + tic54x_symbol *cc3 = str_hash_find (cc3_hash, operand->buf); int value = cc3 ? cc3->value : operand->exp.X_add_number << 8; if ((value & 0x0300) != value) @@ -3756,7 +3756,7 @@ encode_arx (tic54x_insn *insn, struct opstruct *operand) static int encode_cc2 (tic54x_insn *insn, struct opstruct *operand) { - tic54x_symbol *cc2 = (tic54x_symbol *) str_hash_find (cc2_hash, operand->buf); + tic54x_symbol *cc2 = str_hash_find (cc2_hash, operand->buf); if (!cc2) { @@ -3915,8 +3915,7 @@ encode_operand (tic54x_insn *insn, enum optype type, struct opstruct *operand) 0, 65535, 0xFFFF); case OP_SBIT: { - tic54x_symbol *sbit = (tic54x_symbol *) - str_hash_find (sbit_hash, operand->buf); + tic54x_symbol *sbit = str_hash_find (sbit_hash, operand->buf); int value = is_absolute (operand) ? operand->exp.X_add_number : (sbit ? sbit->value : -1); int reg = 0; @@ -4170,7 +4169,7 @@ optimize_insn (tic54x_insn *insn) static int tic54x_parse_insn (tic54x_insn *insn, char *line) { - insn->tm = (insn_template *) str_hash_find (op_hash, insn->mnemonic); + insn->tm = str_hash_find (op_hash, insn->mnemonic); if (!insn->tm) { as_bad (_("Unrecognized instruction \"%s\""), insn->mnemonic); @@ -4193,8 +4192,7 @@ tic54x_parse_insn (tic54x_insn *insn, char *line) /* SUCCESS! now try some optimizations. */ if (optimize_insn (insn)) { - insn->tm = (insn_template *) str_hash_find (op_hash, - insn->mnemonic); + insn->tm = str_hash_find (op_hash, insn->mnemonic); continue; } @@ -4229,7 +4227,7 @@ next_line_shows_parallel (char *next_line) static int tic54x_parse_parallel_insn_firstline (tic54x_insn *insn, char *line) { - insn->tm = (insn_template *) str_hash_find (parop_hash, insn->mnemonic); + insn->tm = str_hash_find (parop_hash, insn->mnemonic); if (!insn->tm) { as_bad (_("Unrecognized parallel instruction \"%s\""), @@ -5054,13 +5052,13 @@ tic54x_undefined_symbol (char *name) tic54x_symbol *sym; /* Not sure how to handle predefined symbols. */ - if ((sym = (tic54x_symbol *) str_hash_find (cc_hash, name)) != NULL - || (sym = (tic54x_symbol *) str_hash_find (cc2_hash, name)) != NULL - || (sym = (tic54x_symbol *) str_hash_find (cc3_hash, name)) != NULL + if ((sym = str_hash_find (cc_hash, name)) != NULL + || (sym = str_hash_find (cc2_hash, name)) != NULL + || (sym = str_hash_find (cc3_hash, name)) != NULL || str_hash_find (misc_symbol_hash, name) != NULL - || (sym = (tic54x_symbol *) str_hash_find (sbit_hash, name)) != NULL - || (sym = (tic54x_symbol *) str_hash_find (reg_hash, name)) != NULL - || (sym = (tic54x_symbol *) str_hash_find (mmreg_hash, name)) != NULL + || (sym = str_hash_find (sbit_hash, name)) != NULL + || (sym = str_hash_find (reg_hash, name)) != NULL + || (sym = str_hash_find (mmreg_hash, name)) != NULL || !strcasecmp (name, "a") || !strcasecmp (name, "b")) { diff --git a/gas/config/tc-tilegx.c b/gas/config/tc-tilegx.c index 26612ac..f70388c 100644 --- a/gas/config/tc-tilegx.c +++ b/gas/config/tc-tilegx.c @@ -275,7 +275,7 @@ md_begin (void) /* Initialize special operator hash table. */ special_operator_hash = str_htab_create (); #define INSERT_SPECIAL_OP(name) \ - str_hash_insert (special_operator_hash, #name, (void *) O_##name, 0) + str_hash_insert_int (special_operator_hash, #name, O_##name, 0) INSERT_SPECIAL_OP (hw0); INSERT_SPECIAL_OP (hw1); @@ -285,7 +285,7 @@ md_begin (void) INSERT_SPECIAL_OP (hw1_last); INSERT_SPECIAL_OP (hw2_last); /* hw3_last is a convenience alias for the equivalent hw3. */ - str_hash_insert (special_operator_hash, "hw3_last", (void *) O_hw3, 0); + str_hash_insert_int (special_operator_hash, "hw3_last", O_hw3, 0); INSERT_SPECIAL_OP (hw0_got); INSERT_SPECIAL_OP (hw0_last_got); INSERT_SPECIAL_OP (hw1_last_got); @@ -329,14 +329,14 @@ md_begin (void) { char buf[64]; - str_hash_insert (main_reg_hash, tilegx_register_names[i], - (void *) (long) (i | CANONICAL_REG_NAME_FLAG), 0); + str_hash_insert_int (main_reg_hash, tilegx_register_names[i], + i | CANONICAL_REG_NAME_FLAG, 0); /* See if we should insert a noncanonical alias, like r63. */ sprintf (buf, "r%d", i); if (strcmp (buf, tilegx_register_names[i]) != 0) - str_hash_insert (main_reg_hash, xstrdup (buf), - (void *) (long) (i | NONCANONICAL_REG_NAME_FLAG), 0); + str_hash_insert_int (main_reg_hash, xstrdup (buf), + i | NONCANONICAL_REG_NAME_FLAG, 0); } } @@ -1027,10 +1027,10 @@ tilegx_parse_name (char *name, expressionS *e, char *nextcharP) else { /* Look up the operator in our table. */ - void* val = str_hash_find (special_operator_hash, name); - if (val == 0) + int opint = str_hash_find_int (special_operator_hash, name); + if (opint < 0) return 0; - op = (operatorT)(long)val; + op = opint; } /* Restore old '(' and skip it. */ @@ -1083,23 +1083,17 @@ tilegx_parse_name (char *name, expressionS *e, char *nextcharP) static void parse_reg_expression (expressionS* expression) { - char *regname; - char terminating_char; - void *pval; - int regno_and_flags; - int regno; - /* Zero everything to make sure we don't miss any flags. */ memset (expression, 0, sizeof *expression); - terminating_char = get_symbol_name (®name); + char *regname; + char terminating_char = get_symbol_name (®name); - pval = str_hash_find (main_reg_hash, regname); - if (pval == NULL) + int regno_and_flags = str_hash_find_int (main_reg_hash, regname); + if (regno_and_flags < 0) as_bad (_("Expected register, got '%s'."), regname); - regno_and_flags = (int)(size_t)pval; - regno = EXTRACT_REGNO(regno_and_flags); + int regno = EXTRACT_REGNO(regno_and_flags); if ((regno_and_flags & NONCANONICAL_REG_NAME_FLAG) && require_canonical_reg_names) diff --git a/gas/config/tc-tilegx.h b/gas/config/tc-tilegx.h index 06db441..e3789e4 100644 --- a/gas/config/tc-tilegx.h +++ b/gas/config/tc-tilegx.h @@ -42,7 +42,7 @@ extern const char * tilegx_target_format (void); #define HANDLE_ALIGN(sec, fragp) tilegx_handle_align (fragp) extern void tilegx_handle_align (struct frag *); -#define MAX_MEM_FOR_RS_ALIGN_CODE (7 + 8) +#define MAX_MEM_FOR_RS_ALIGN_CODE(p2align, max) (7 + 8) struct tilegx_operand; #define TC_FIX_TYPE const struct tilegx_operand * diff --git a/gas/config/tc-tilepro.c b/gas/config/tc-tilepro.c index a7c599d..738b24a 100644 --- a/gas/config/tc-tilepro.c +++ b/gas/config/tc-tilepro.c @@ -218,7 +218,7 @@ md_begin (void) /* Initialize special operator hash table. */ special_operator_hash = str_htab_create (); #define INSERT_SPECIAL_OP(name) \ - str_hash_insert (special_operator_hash, #name, (void *) O_##name, 0) + str_hash_insert_int (special_operator_hash, #name, O_##name, 0) INSERT_SPECIAL_OP(lo16); INSERT_SPECIAL_OP(hi16); @@ -265,29 +265,29 @@ md_begin (void) { char buf[64]; - str_hash_insert (main_reg_hash, tilepro_register_names[i], - (void *) (long) (i | CANONICAL_REG_NAME_FLAG), 0); + str_hash_insert_int (main_reg_hash, tilepro_register_names[i], + i | CANONICAL_REG_NAME_FLAG, 0); /* See if we should insert a noncanonical alias, like r63. */ sprintf (buf, "r%d", i); if (strcmp (buf, tilepro_register_names[i]) != 0) - str_hash_insert (main_reg_hash, xstrdup (buf), - (void *) (long) (i | NONCANONICAL_REG_NAME_FLAG), 0); + str_hash_insert_int (main_reg_hash, xstrdup (buf), + i | NONCANONICAL_REG_NAME_FLAG, 0); } /* Insert obsolete backwards-compatibility register names. */ - str_hash_insert (main_reg_hash, "io0", - (void *) (long) (TREG_IDN0 | CANONICAL_REG_NAME_FLAG), 0); - str_hash_insert (main_reg_hash, "io1", - (void *) (long) (TREG_IDN1 | CANONICAL_REG_NAME_FLAG), 0); - str_hash_insert (main_reg_hash, "us0", - (void *) (long) (TREG_UDN0 | CANONICAL_REG_NAME_FLAG), 0); - str_hash_insert (main_reg_hash, "us1", - (void *) (long) (TREG_UDN1 | CANONICAL_REG_NAME_FLAG), 0); - str_hash_insert (main_reg_hash, "us2", - (void *) (long) (TREG_UDN2 | CANONICAL_REG_NAME_FLAG), 0); - str_hash_insert (main_reg_hash, "us3", - (void *) (long) (TREG_UDN3 | CANONICAL_REG_NAME_FLAG), 0); + str_hash_insert_int (main_reg_hash, "io0", + TREG_IDN0 | CANONICAL_REG_NAME_FLAG, 0); + str_hash_insert_int (main_reg_hash, "io1", + TREG_IDN1 | CANONICAL_REG_NAME_FLAG, 0); + str_hash_insert_int (main_reg_hash, "us0", + TREG_UDN0 | CANONICAL_REG_NAME_FLAG, 0); + str_hash_insert_int (main_reg_hash, "us1", + TREG_UDN1 | CANONICAL_REG_NAME_FLAG, 0); + str_hash_insert_int (main_reg_hash, "us2", + TREG_UDN2 | CANONICAL_REG_NAME_FLAG, 0); + str_hash_insert_int (main_reg_hash, "us3", + TREG_UDN3 | CANONICAL_REG_NAME_FLAG, 0); } @@ -915,10 +915,10 @@ tilepro_parse_name (char *name, expressionS *e, char *nextcharP) else { /* Look up the operator in our table. */ - void *val = str_hash_find (special_operator_hash, name); - if (val == 0) + int opint = str_hash_find_int (special_operator_hash, name); + if (opint < 0) return 0; - op = (operatorT)(long)val; + op = opint; } /* Restore old '(' and skip it. */ @@ -977,12 +977,10 @@ parse_reg_expression (expressionS* expression) char *regname; char terminating_char = get_symbol_name (®name); - void* pval = str_hash_find (main_reg_hash, regname); - - if (pval == NULL) + int regno_and_flags = str_hash_find_int (main_reg_hash, regname); + if (regno_and_flags < 0) as_bad (_("Expected register, got '%s'."), regname); - int regno_and_flags = (int)(size_t)pval; int regno = EXTRACT_REGNO(regno_and_flags); if ((regno_and_flags & NONCANONICAL_REG_NAME_FLAG) diff --git a/gas/config/tc-tilepro.h b/gas/config/tc-tilepro.h index 945d1ca..f985053 100644 --- a/gas/config/tc-tilepro.h +++ b/gas/config/tc-tilepro.h @@ -42,7 +42,7 @@ #define HANDLE_ALIGN(sec, fragp) tilepro_handle_align (fragp) extern void tilepro_handle_align (struct frag *); -#define MAX_MEM_FOR_RS_ALIGN_CODE (7 + 8) +#define MAX_MEM_FOR_RS_ALIGN_CODE(p2align, max) (7 + 8) struct tilepro_operand; #define TC_FIX_TYPE const struct tilepro_operand * diff --git a/gas/config/tc-v850.c b/gas/config/tc-v850.c index 0a48343..b344005 100644 --- a/gas/config/tc-v850.c +++ b/gas/config/tc-v850.c @@ -2312,7 +2312,7 @@ md_assemble (char *str) *s++ = '\0'; /* Find the first opcode with the proper name. */ - opcode = (struct v850_opcode *) str_hash_find (v850_hash, str); + opcode = str_hash_find (v850_hash, str); if (opcode == NULL) { /* xgettext:c-format */ diff --git a/gas/config/tc-vax.c b/gas/config/tc-vax.c index 0b39d98..e256d08 100644 --- a/gas/config/tc-vax.c +++ b/gas/config/tc-vax.c @@ -1882,7 +1882,7 @@ vip (struct vit *vitP, /* We build an exploded instruction here. */ /* Here with instring pointing to what better be an op-name, and p pointing to character just past that. We trust instring points to an op-name, with no whitespace. */ - vwP = (struct vot_wot *) str_hash_find (op_hash, instring); + vwP = str_hash_find (op_hash, instring); /* Restore char after op-code. */ *p = c; if (vwP == 0) diff --git a/gas/config/tc-visium.c b/gas/config/tc-visium.c index c00db12..93c108f 100644 --- a/gas/config/tc-visium.c +++ b/gas/config/tc-visium.c @@ -555,30 +555,16 @@ visium_handle_align (fragS *fragP) if (count == 0) return; - fragP->fr_var = 4; - if (count > 4 * nop_limit && count <= 131068) { - struct frag *rest; - - /* Make a branch, then follow with nops. Insert another - frag to handle the nops. */ + /* Make a branch, then follow with nops. */ md_number_to_chars (p, 0x78000000 + (count >> 2), 4); visium_update_parity_bit (p); - - rest = xmalloc (SIZEOF_STRUCT_FRAG + 4); - memcpy (rest, fragP, SIZEOF_STRUCT_FRAG); - fragP->fr_next = rest; - rest->fr_address += rest->fr_fix + 4; - rest->fr_fix = 0; - /* If we leave the next frag as rs_align_code we'll come here - again, resulting in a bunch of branches rather than a - branch followed by nops. */ - rest->fr_type = rs_align; - p = rest->fr_literal; + p += 4; + fragP->fr_fix += 4; } - memset (p, 0, 4); + *p = 0; } /* Apply a fixS to the frags, now that we know the value it ought to diff --git a/gas/config/tc-visium.h b/gas/config/tc-visium.h index 01f8628..8be7f77 100644 --- a/gas/config/tc-visium.h +++ b/gas/config/tc-visium.h @@ -45,6 +45,7 @@ #define tc_fix_adjustable(FIXP) visium_fix_adjustable (FIXP) extern bool visium_fix_adjustable (struct fix *); +#define MAX_MEM_FOR_RS_ALIGN_CODE(p2align, max) (4 + 1) #define HANDLE_ALIGN(SEC, FRAGP) \ if ((FRAGP)->fr_type == rs_align_code) \ visium_handle_align (FRAGP); diff --git a/gas/config/tc-wasm32.c b/gas/config/tc-wasm32.c index c9b0787..066255f 100644 --- a/gas/config/tc-wasm32.c +++ b/gas/config/tc-wasm32.c @@ -204,7 +204,7 @@ void md_apply_fix (fixS * fixP, valueT * valP, segT seg ATTRIBUTE_UNUSED) { char *buf = fixP->fx_where + fixP->fx_frag->fr_literal; - long val = (long) *valP; + valueT val = *valP; if (fixP->fx_pcrel) { @@ -746,7 +746,7 @@ md_assemble (char *str) if (!op[0]) as_bad (_("can't find opcode ")); - opcode = (struct wasm32_opcode_s *) str_hash_find (wasm32_hash, op); + opcode = str_hash_find (wasm32_hash, op); if (opcode == NULL) { diff --git a/gas/config/tc-wasm32.h b/gas/config/tc-wasm32.h index b2ccf1c..2a84a97 100644 --- a/gas/config/tc-wasm32.h +++ b/gas/config/tc-wasm32.h @@ -75,7 +75,6 @@ extern int wasm32_force_relocation (struct fix *); #define elf_tc_final_processing() #define md_post_relax_hook #define md_start_line_hook() -#define HANDLE_ALIGN(sec, fragP) extern bool wasm32_fix_adjustable (struct fix *); diff --git a/gas/config/tc-xgate.c b/gas/config/tc-xgate.c index 5e09ee5..239310d 100644 --- a/gas/config/tc-xgate.c +++ b/gas/config/tc-xgate.c @@ -491,8 +491,7 @@ md_assemble (char *input_line) if (!op_name[0]) as_bad (_("opcode missing or not found on input line")); - opcode_handle = (struct xgate_opcode_handle *) str_hash_find (xgate_hash, - op_name); + opcode_handle = str_hash_find (xgate_hash, op_name); if (!opcode_handle) as_bad (_("opcode %s not found in opcode hash table"), op_name); else @@ -541,9 +540,7 @@ md_assemble (char *input_line) input_line = macro_inline; /* Rewind. */ p = extract_word (p, op_name, 10); - opcode_handle - = (struct xgate_opcode_handle *) str_hash_find (xgate_hash, - op_name); + opcode_handle = str_hash_find (xgate_hash, op_name); if (!opcode_handle) { as_bad (_(": processing macro, real opcode handle" diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c index ed53b6d..1889608 100644 --- a/gas/config/tc-xtensa.c +++ b/gas/config/tc-xtensa.c @@ -7660,6 +7660,12 @@ static size_t xg_find_chain_entry (struct trampoline_chain *tc, return a; } +static valueT +vma_abs (offsetT v) +{ + return v < 0 ? -(valueT) v : (valueT) v; +} + /* Find the best jump target for the source in the given trampoline chain. The best jump target is the one that results in the shortest path to the final target, it's the location of the jump closest to the final target, @@ -7686,7 +7692,7 @@ xg_get_best_chain_entry (struct trampoline_chain *tc, addressT source) chained_target = S_GET_VALUE(next->sym) + next->offset; off = source - chained_target; - if (labs (off) >= J_RANGE - J_MARGIN) + if (vma_abs (off) >= J_RANGE - J_MARGIN) break; i += step; @@ -7696,8 +7702,8 @@ xg_get_best_chain_entry (struct trampoline_chain *tc, addressT source) chained_target = S_GET_VALUE(e->sym) + e->offset; off = source - chained_target; - if (labs (off) < J_MARGIN || - labs (off) >= J_RANGE - J_MARGIN) + if (vma_abs (off) < J_MARGIN + || vma_abs (off) >= J_RANGE - J_MARGIN) return &tc->target; return tc->entry + i; } @@ -9359,7 +9365,7 @@ static addressT xg_get_fulcrum (addressT source, addressT target) offsetT delta = target - source; int n; - n = (labs (delta) + J_RANGE - J_MARGIN - 1) / (J_RANGE - J_MARGIN); + n = (vma_abs (delta) + J_RANGE - J_MARGIN - 1) / (J_RANGE - J_MARGIN); return source + delta / n; } @@ -9410,11 +9416,11 @@ static size_t xg_find_best_trampoline (struct trampoline_index *idx, /* Stop if some trampoline is found and the search is more than J_RANGE / 4 from the projected fulcrum. A trampoline w/o jump around is nice, but it shouldn't have much overhead. */ - if (best < idx->n_entries && labs (off) > J_RANGE / 4) + if (best < idx->n_entries && vma_abs (off) > J_RANGE / 4) return best; off = trampoline_frag->fr_address - source; - if (labs (off) < J_RANGE - J_MARGIN) + if (vma_abs (off) < J_RANGE - J_MARGIN) { ++checked; /* Stop if a trampoline w/o jump around is found or initialized @@ -9480,7 +9486,7 @@ static bool xg_is_relaxable_fixup (fixS *fixP) target = S_GET_VALUE (s) + fixP->fx_offset; delta = target - addr; - if (labs (delta) < J_RANGE - J_MARGIN) + if (vma_abs (delta) < J_RANGE - J_MARGIN) return false; xtensa_insnbuf_from_chars (isa, trampoline_buf, diff --git a/gas/config/tc-xtensa.h b/gas/config/tc-xtensa.h index 3d757e8..41218d7 100644 --- a/gas/config/tc-xtensa.h +++ b/gas/config/tc-xtensa.h @@ -379,7 +379,7 @@ extern void xtensa_init (int, char **); #define DATA_SECTION_NAME xtensa_section_rename (".data") #define BSS_SECTION_NAME xtensa_section_rename (".bss") #define HANDLE_ALIGN(sec, fragP) xtensa_handle_align (fragP) -#define MAX_MEM_FOR_RS_ALIGN_CODE 1 +#define MAX_MEM_FOR_RS_ALIGN_CODE(p2align, max) 1 /* The renumber_section function must be mapped over all the sections diff --git a/gas/config/tc-z8k.c b/gas/config/tc-z8k.c index 4cfb302..9947fe1 100644 --- a/gas/config/tc-z8k.c +++ b/gas/config/tc-z8k.c @@ -1236,7 +1236,7 @@ md_assemble (char *str) *op_end = 0; /* Zero-terminate op code string for str_hash_find() call. */ - opcode = (opcode_entry_type *) str_hash_find (opcode_hash_control, op_start); + opcode = str_hash_find (opcode_hash_control, op_start); if (opcode == NULL) { @@ -1407,7 +1407,7 @@ md_section_align (segT seg, valueT size) void md_apply_fix (fixS *fixP, valueT *valP, segT segment ATTRIBUTE_UNUSED) { - long val = * (long *) valP; + offsetT val = *valP; char *buf = fixP->fx_where + fixP->fx_frag->fr_literal; switch (fixP->fx_r_type) diff --git a/gas/configure b/gas/configure index 16a8937..e39c965 100755 --- a/gas/configure +++ b/gas/configure @@ -12609,7 +12609,7 @@ _ACEOF { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_isa_spec" >&5 $as_echo "$with_isa_spec" >&6; } - # --with-priv-spec=[1.9.1|1.10|1.11|1.12]. + # --with-priv-spec=[1.9.1|1.10|1.11|1.12|1.13]. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for default configuration of --with-priv-spec" >&5 $as_echo_n "checking for default configuration of --with-priv-spec... " >&6; } if test "x${with_priv_spec}" != x; then diff --git a/gas/configure.ac b/gas/configure.ac index e97ec59..e1d32c3 100644 --- a/gas/configure.ac +++ b/gas/configure.ac @@ -653,7 +653,7 @@ changequote([,])dnl fi AC_MSG_RESULT($with_isa_spec) - # --with-priv-spec=[1.9.1|1.10|1.11|1.12]. + # --with-priv-spec=[1.9.1|1.10|1.11|1.12|1.13]. AC_MSG_CHECKING(for default configuration of --with-priv-spec) if test "x${with_priv_spec}" != x; then AC_DEFINE_UNQUOTED(DEFAULT_RISCV_PRIV_SPEC, "$with_priv_spec", diff --git a/gas/doc/as.texi b/gas/doc/as.texi index 40d45f7..7d6cdcb 100644 --- a/gas/doc/as.texi +++ b/gas/doc/as.texi @@ -260,7 +260,8 @@ gcc(1), ld(1), and the Info entries for @file{binutils} and @file{ld}. [@b{--sectname-subst}] [@b{--size-check=[error|warning]}] [@b{--statistics}] - [@b{-v}] [@b{-version}] [@b{--version}] + [@b{-v}] [@b{--verbose}] + [@b{-version}] [@b{--version}] [@b{-W}] [@b{--no-warn}] [@b{--warn}] [@b{--fatal-warnings}] [@b{-w}] [@b{-x}] [@b{-Z}] [@b{@@@var{FILE}}] @@ -552,7 +553,7 @@ gcc(1), ld(1), and the Info entries for @file{binutils} and @file{ld}. @emph{Target RISC-V options:} [@b{-fpic}|@b{-fPIC}|@b{-fno-pic}] - [@b{-march}=@var{ISA}] + [@b{-march}=@var{ISA}|@var{Profiles}|@var{Profiles_ISA}] [@b{-mabi}=@var{ABI}] [@b{-mlittle-endian}|@b{-mbig-endian}] @end ifset @@ -975,10 +976,11 @@ assembly. Remove local absolute symbols from the outgoing symbol table. @item -v -@itemx -version +@itemx --verbose Print the @command{as} version. @item --version +@itemx -version Print the @command{as} version and exit. @item -W diff --git a/gas/doc/c-aarch64.texi b/gas/doc/c-aarch64.texi index 10888d1..d7e9c95 100644 --- a/gas/doc/c-aarch64.texi +++ b/gas/doc/c-aarch64.texi @@ -167,6 +167,8 @@ automatically cause those extensions to be disabled. @tab Enable the Branch Record Buffer extension. @item @code{chk} @tab @tab Enable the Check Feature Status Extension. +@item @code{cmpbr} @tab + @tab Enable Compare and Branch instructions. @item @code{compnum} @tab @code{simd} @tab Enable the complex number SIMD extensions. An alias of @code{fcma}. @item @code{cpa} @tab @@ -185,6 +187,10 @@ automatically cause those extensions to be disabled. @tab Enable the F32 Matrix Multiply extension @item @code{f64mm} @tab @code{sve} @tab Enable the F64 Matrix Multiply extension. +@item @code{f8f16mm} @tab @code{simd} @code{fp8} + @tab Enable 8-bit floating-point matrix multiply-accumulate to half-precision instructions. +@item @code{f8f32mm} @tab @code{simd} @code{fp} + @tab Enable 8-bit floating-point matrix multiply-accumulate to single-precision instructions. @item @code{fcma} @tab @code{fp16}, @code{simd} @tab Enable the complex number SIMD extensions. @item @code{flagm} @tab @@ -205,6 +211,8 @@ automatically cause those extensions to be disabled. @tab Enable Armv8.2 16-bit floating-point multiplication variant support. @item @code{fp16} @tab @code{fp} @tab Enable Armv8.2 16-bit floating-point support. +@item @code{fprcvt} @tab @code{fp} + @tab Enable Armv9.6 fprcvt instructions. @item @code{frintts} @tab @code{fp} @tab Enable floating-point round to integral value instructions. @item @code{gcs} @tab @@ -225,16 +233,22 @@ automatically cause those extensions to be disabled. @tab Enable Large System extensions. @item @code{lse128} @tab @code{lse} @tab Enable the 128-bit Atomic Instructions extension. +@item @code{lsfe} @tab @code{fp} + @tab Enable Large System Float Extension. @item @code{lut} @tab @tab Enable the Lookup Table (LUT) extension. @item @code{memtag} @tab @tab Enable Armv8.5-A Memory Tagging Extensions. @item @code{mops} @tab @tab Enable Armv8.8-A memcpy and memset acceleration instructions +@item @code{occmo} @tab + @tab Enable Outer Cacheable Cache Maintenance Operations. @item @code{pan} @tab @tab Enable Privileged Access Never support. @item @code{pauth} @tab @tab Enable Pointer Authentication. +@item @code{pops} @tab + @tab Enable Point of Physical Storage. @item @code{predres} @tab @tab Enable the Execution and Data and Prediction instructions. @item @code{predres2} @tab @code{predres} @@ -297,6 +311,10 @@ automatically cause those extensions to be disabled. @tab Enable the Scalable Vector Extension. @item @code{sve-b16b16} @tab @tab Enable the SVE B16B16 extension. These instructions also require either @code{+sve2} or @code{+sme2}. +@item @code{sve-bfscale} @tab +@tab Enable the SVE BFSCALE extension. These instructions also require either @code{+sve2} or @code{+sme2}. +@item @code{sve-f16f32mm} @tab @code{sve} +@tab Enable the SVE_F16F32MM extension. @item @code{sve2} @tab @code{sve} @tab Enable SVE2. @item @code{sve2-aes} @tab @code{sve2}, @code{aes} diff --git a/gas/doc/c-riscv.texi b/gas/doc/c-riscv.texi index 0a92e78..a4c819e 100644 --- a/gas/doc/c-riscv.texi +++ b/gas/doc/c-riscv.texi @@ -41,9 +41,11 @@ Generate position-independent code @item -fno-pic Don't generate position-independent code (default) -@cindex @samp{-march=ISA} option, RISC-V -@item -march=ISA -Select the base isa, as specified by ISA. For example -march=rv32ima. +@cindex @samp{-march=ISA|Profiles|Profiles_ISA} option, RISC-V +@item -march=ISA|Profiles|Profiles_ISA +Select the base isa, as specified by ISA or Profiles or Profies_ISA. +For example @samp{-march=rv32ima} @samp{-march=RVI20U64} +@samp{-march=RVI20U64_d}. If this option and the architecture attributes aren't set, then assembler will check the default configure setting --with-arch=ISA. @@ -737,7 +739,12 @@ to be recorded in the attribute as @code{RV32I2P0} in which @code{2P0} stands for the default version of its base ISA. On the other hand, the architecture @code{RV32G} has to be presented as @code{RV32I2P0_M2P0_A2P0_F2P0_D2P0} in which the abbreviation @code{G} is expanded to the @code{IMAFD} combination -with default versions of the standard extensions. +with default versions of the standard extensions. All Profiles are expanded + to the mandatory extensions it includes then processing. For example, +@code{RVI20U32} is expanded to @code{RV32I2P0} for processing, which contains +the mandatory extensions @code{I} as it defined. And you can also combine +Profiles with ISA use underline, like @code{RVI20U32_D} is expanded to the +@code{RV32I2P0_F2P0_D2P0}. @item Tag_RISCV_unaligned_access (6) Tag_RISCV_unaligned_access is 0 for files that do not allow any unaligned @@ -892,4 +899,25 @@ XSfCease provides an instruction to instigates power-down sequence. It is documented in @url{https://sifive.cdn.prismic.io/sifive/767804da-53b2-4893-97d5-b7c030ae0a94_s76mc_core_complex_manual_21G3.pdf}. +@item XMipsCbop +The XMipsCbop extension provides instruction mips.pref. + +It is documented in @url{https://mips.com/wp-content/uploads/2025/03/P8700-F_Programmers_Reference_Manual_Rev1.82_3-19-2025.pdf}. + +@item XMipsCmov +The XMipsCmov extension provides instruction mips.ccmov. + +It is documented in @url{https://mips.com/wp-content/uploads/2025/03/P8700-F_Programmers_Reference_Manual_Rev1.82_3-19-2025.pdf}. + +@item XMipsExectl +The XMipsExectl extension provides instructions mips.ehb, mips.ihb and mips.pause. + +It is documented in @url{https://mips.com/wp-content/uploads/2025/03/P8700-F_Programmers_Reference_Manual_Rev1.82_3-19-2025.pdf}. + +@item XMipsSlsp + +The XMipsSlsp extension provides instructions mips.ldp, mips.lwp, mips.sdp and mips.swp. + +It is documented in @url{https://mips.com/wp-content/uploads/2025/03/P8700-F_Programmers_Reference_Manual_Rev1.82_3-19-2025.pdf}. + @end table diff --git a/gas/dwarf2dbg.c b/gas/dwarf2dbg.c index 2963e52..84c9661 100644 --- a/gas/dwarf2dbg.c +++ b/gas/dwarf2dbg.c @@ -171,10 +171,18 @@ struct line_entry struct dwarf2_line_info loc; }; -/* Don't change the offset of next in line_entry. set_or_check_view - calls in dwarf2_gen_line_info_1 depend on it. */ -static char unused[offsetof(struct line_entry, next) ? -1 : 1] -ATTRIBUTE_UNUSED; +/* Given line_entry list HEAD and PTAIL pointers, return a pointer to + the last line_entry on the list. */ +static inline struct line_entry * +line_entry_at_tail (void *head, struct line_entry **ptail) +{ + /* If the list is empty ptail points at head. */ + if (head == NULL) + return NULL; + /* Otherwise ptail points to line_entry.next of the last entry. */ + void *p = (char *) ptail - offsetof (struct line_entry, next); + return p; +} struct line_subseg { @@ -528,7 +536,8 @@ dwarf2_gen_line_info_1 (symbolS *label, struct dwarf2_line_info *loc) /* Subseg heads are chained to previous subsegs in dwarf2_finish. */ if (loc->filenum != -1u && loc->u.view && lss->head) - set_or_check_view (e, (struct line_entry *) lss->ptail, lss->head); + set_or_check_view (e, line_entry_at_tail (lss->head, lss->ptail), + lss->head); *lss->ptail = e; lss->ptail = &e->next; @@ -650,9 +659,8 @@ get_directory_table_entry (const char *dirname, is set to the current build directory). Since we are about to create a directory entry that is not the same, allocate the current directory first. */ - (void) get_directory_table_entry (pwd, file0_dirname, - strlen (pwd), true); - d = 1; + (void) get_directory_table_entry (pwd, pwd, strlen (pwd), true); + d = dirs_in_use; } else d = 0; @@ -678,18 +686,17 @@ get_directory_table_entry (const char *dirname, } static bool -assign_file_to_slot (unsigned int i, const char *file, unsigned int dir) +assign_file_to_slot (valueT i, const char *file, unsigned int dir) { if (i >= files_allocated) { unsigned int want = i + 32; - /* Catch wraparound. */ - if (want < files_allocated - || want < i - || want > UINT_MAX / sizeof (struct file_entry)) + /* If this array is taking 1G or more, someone is using silly + file numbers. */ + if (want < i || want > UINT_MAX / 4 / sizeof (struct file_entry)) { - as_bad (_("file number %u is too big"), i); + as_bad (_("file number %" PRIu64 " is too big"), (uint64_t) i); return false; } @@ -843,7 +850,7 @@ purge_generated_debug (bool thelot) static bool allocate_filename_to_slot (const char *dirname, const char *filename, - unsigned int num, + valueT num, bool with_md5) { const char *file; @@ -921,8 +928,9 @@ allocate_filename_to_slot (const char *dirname, } fail: - as_bad (_("file table slot %u is already occupied by a different file (%s%s%s vs %s%s%s)"), - num, + as_bad (_("file table slot %u is already occupied by a different file" + " (%s%s%s vs %s%s%s)"), + (unsigned int) num, dir == NULL ? "" : dir, dir == NULL ? "" : "/", files[num].filename, @@ -968,7 +976,7 @@ allocate_filename_to_slot (const char *dirname, d = get_directory_table_entry (dirname, file0_dirname, dirlen, num == 0); i = num; - if (! assign_file_to_slot (i, file, d)) + if (!assign_file_to_slot (num, file, d)) return false; if (with_md5) @@ -1228,15 +1236,7 @@ dwarf2_directive_filename (void) purge_generated_debug (false); debug_type = DEBUG_NONE; - if (num != (unsigned int) num - || num >= (size_t) -1 / sizeof (struct file_entry) - 32) - { - as_bad (_("file number %lu is too big"), (unsigned long) num); - return NULL; - } - - if (! allocate_filename_to_slot (dirname, filename, (unsigned int) num, - with_md5)) + if (!allocate_filename_to_slot (dirname, filename, num, with_md5)) return NULL; return filename; @@ -1632,7 +1632,7 @@ size_inc_line_addr (int line_delta, addressT addr_delta) } /* Bias the line delta by the base. */ - tmp = line_delta - DWARF2_LINE_BASE; + tmp = (unsigned) line_delta - DWARF2_LINE_BASE; /* If the line increment is out of range of a special opcode, we must encode it with DW_LNS_advance_line. */ @@ -1703,7 +1703,7 @@ emit_inc_line_addr (int line_delta, addressT addr_delta, char *p, int len) } /* Bias the line delta by the base. */ - tmp = line_delta - DWARF2_LINE_BASE; + tmp = (unsigned) line_delta - DWARF2_LINE_BASE; /* If the line increment is out of range of a special opcode, we must encode it with DW_LNS_advance_line. */ @@ -3028,6 +3028,11 @@ out_debug_str (segT str_seg, symbolS **name_sym, symbolS **comp_dir_sym, int len; int first_file = DWARF2_LINE_VERSION > 4 ? 0 : 1; + if (files_in_use == 0) + abort (); + if (first_file == 0 && files[first_file].filename == NULL) + first_file = 1; + subseg_set (str_seg, 0); /* DW_AT_name. We don't have the actual file name that was present @@ -3035,8 +3040,7 @@ out_debug_str (segT str_seg, symbolS **name_sym, symbolS **comp_dir_sym, We're not supposed to get called unless at least one line number entry was emitted, so this should always be defined. */ *name_sym = symbol_temp_new_now_octets (); - if (files_in_use == 0) - abort (); + if (files[first_file].dir) { char *dirname = remap_debug_filename (dirs[files[first_file].dir]); @@ -3199,8 +3203,7 @@ dwarf2_finish (void) /* Link the first view of subsequent subsections to the previous view. */ if (lss->head && lss->head->loc.u.view) - set_or_check_view (lss->head, - !s->head ? NULL : (struct line_entry *)ptail, + set_or_check_view (lss->head, line_entry_at_tail (s->head, ptail), s->head ? s->head->head : NULL); *ptail = lss->head; lss->head = NULL; diff --git a/gas/ecoff.c b/gas/ecoff.c index 756aa92..b5d811c 100644 --- a/gas/ecoff.c +++ b/gas/ecoff.c @@ -1559,8 +1559,8 @@ add_string (varray_t *vp, /* string obstack */ if (len >= PAGE_USIZE) as_fatal (_("string too big (%lu bytes)"), len); - hash_ptr = (shash_t *) str_hash_find (hash_tbl, str); - if (hash_ptr == (shash_t *) NULL) + hash_ptr = str_hash_find (hash_tbl, str); + if (hash_ptr == NULL) { if (vp->objects_last_page + len >= PAGE_USIZE) { @@ -2010,7 +2010,7 @@ get_tag (const char *tag, /* tag name */ if (cur_file_ptr == (efdr_t *) NULL) as_fatal (_("no current file pointer")); - hash_ptr = (shash_t *) str_hash_find (tag_hash, tag); + hash_ptr = str_hash_find (tag_hash, tag); if (hash_ptr != (shash_t *) NULL && hash_ptr->tag_ptr != (tag_t *) NULL) diff --git a/gas/ehopt.c b/gas/ehopt.c index 3e15fc9..ab976ba 100644 --- a/gas/ehopt.c +++ b/gas/ehopt.c @@ -90,17 +90,17 @@ __FRAME_BEGIN__: struct cie_info { + fragS *f; unsigned code_alignment; int z_augmentation; }; /* Extract information from the CIE. */ -static int +static bool get_cie_info (struct cie_info *info) { fragS *f; - fixS *fix; unsigned int offset; char CIE_id; char augmentation[10]; @@ -110,9 +110,10 @@ get_cie_info (struct cie_info *info) /* We should find the CIE at the start of the section. */ f = seg_info (now_seg)->frchainP->frch_root; - fix = seg_info (now_seg)->frchainP->fix_root; - - /* Look through the frags of the section to find the code alignment. */ + while (f != NULL && f->fr_fix == 0) + f = f->fr_next; + if (f != info->f) + return false; /* First make sure that the CIE Identifier Tag is 0/-1. */ @@ -133,7 +134,7 @@ get_cie_info (struct cie_info *info) || f->fr_literal[offset + 1] != CIE_id || f->fr_literal[offset + 2] != CIE_id || f->fr_literal[offset + 3] != CIE_id) - return 0; + return false; /* Next make sure the CIE version number is 1. */ @@ -146,7 +147,7 @@ get_cie_info (struct cie_info *info) if (f == NULL || f->fr_fix - offset < 1 || f->fr_literal[offset] != 1) - return 0; + return false; /* Skip the augmentation (a null terminated string). */ @@ -160,7 +161,7 @@ get_cie_info (struct cie_info *info) f = f->fr_next; } if (f == NULL) - return 0; + return false; while (offset < f->fr_fix && f->fr_literal[offset] != '\0') { @@ -181,7 +182,7 @@ get_cie_info (struct cie_info *info) f = f->fr_next; } if (f == NULL) - return 0; + return false; augmentation[iaug] = '\0'; if (augmentation[0] == '\0') @@ -192,6 +193,7 @@ get_cie_info (struct cie_info *info) { /* We have to skip a pointer. Unfortunately, we don't know how large it is. We find out by looking for a matching fixup. */ + fixS *fix = seg_info (now_seg)->frchainP->fix_root; while (fix != NULL && (fix->fx_frag != f || fix->fx_where != offset)) fix = fix->fx_next; @@ -205,10 +207,10 @@ get_cie_info (struct cie_info *info) f = f->fr_next; } if (f == NULL) - return 0; + return false; } else if (augmentation[0] != 'z') - return 0; + return false; /* We're now at the code alignment factor, which is a ULEB128. If it isn't a single byte, forget it. */ @@ -220,7 +222,7 @@ get_cie_info (struct cie_info *info) info->code_alignment = code_alignment; info->z_augmentation = (augmentation[0] == 'z'); - return 1; + return true; } enum frame_state @@ -240,7 +242,7 @@ struct frame_data { enum frame_state state; - int cie_info_ok; + bool cie_info_ok; struct cie_info cie_info; symbolS *size_end_sym; @@ -320,20 +322,27 @@ check_eh_frame (expressionS *exp, unsigned int *pnbytes) { d->state = state_saw_size; d->size_end_sym = exp->X_add_symbol; + if (!d->cie_info.f) + d->cie_info.f = frag_now; } } break; case state_saw_size: case state_saw_cie_offset: - /* Assume whatever form it appears in, it appears atomically. */ - d->state = (enum frame_state) (d->state + 1); + if (!(*pnbytes == 4 || *pnbytes == 8)) + /* Stop scanning if we don't see the expected FDE fields. */ + d->state = state_error; + else + d->state = (enum frame_state) (d->state + 1); break; case state_saw_pc_begin: /* Decide whether we should see an augmentation. */ - if (! d->cie_info_ok - && ! (d->cie_info_ok = get_cie_info (&d->cie_info))) + if (!(*pnbytes == 4 || *pnbytes == 8)) + d->state = state_error; + else if (!d->cie_info_ok + && !(d->cie_info_ok = get_cie_info (&d->cie_info))) d->state = state_error; else if (d->cie_info.z_augmentation) { @@ -347,7 +356,7 @@ check_eh_frame (expressionS *exp, unsigned int *pnbytes) case state_seeing_aug_size: /* Bytes == -1 means this comes from an leb128 directive. */ - if ((int)*pnbytes == -1 && exp->X_op == O_constant) + if ((int) *pnbytes == -1 && exp->X_op == O_constant) { d->aug_size = exp->X_add_number; d->state = state_skipping_aug; @@ -367,7 +376,7 @@ check_eh_frame (expressionS *exp, unsigned int *pnbytes) break; case state_skipping_aug: - if ((int)*pnbytes < 0) + if ((int) *pnbytes < 0) d->state = state_error; else { @@ -632,6 +632,7 @@ integer_constant (int radix, expressionS *expressionP) /* Not a small number. */ expressionP->X_op = O_big; expressionP->X_add_number = number; /* Number of littlenums. */ + expressionP->X_unsigned = 1; input_line_pointer--; /* -> char following number. */ } } @@ -707,6 +708,7 @@ mri_char_constant (expressionS *expressionP) { expressionP->X_op = O_big; expressionP->X_add_number = i; + expressionP->X_unsigned = 1; } else { @@ -1164,6 +1166,8 @@ operand (expressionS *expressionP, enum expr_mode mode) if (generic_bignum[i]) break; } + + expressionP->X_unsigned = 0; } else if (op == O_logical_not) { @@ -131,10 +131,12 @@ typedef struct expressionS unsigned char X_op; #endif - /* Non-zero if X_add_number should be regarded as unsigned. This is - only valid for O_constant expressions. It is only used when an - O_constant must be extended into a bignum (i.e., it is not used - when performing arithmetic on these values). + /* Non-zero if the expression value should be regarded as unsigned. This is + only valid for + - O_constant expressions, where it is only used when an O_constant must be + extended into a bignum (i.e., it is not used when performing arithmetic + on these values), + - O_big integer expressions, i.e. when X_add_number is positive. FIXME: This field is not set very reliably. */ unsigned int X_unsigned : 1; /* This is used to implement "word size + 1 bit" arithmetic, so that e.g. diff --git a/gas/frags.c b/gas/frags.c index 6684e27..129c27f 100644 --- a/gas/frags.c +++ b/gas/frags.c @@ -355,18 +355,11 @@ frag_align_pattern (int alignment, const char *fill_pattern, #define NOP_OPCODE 0x00 #endif -/* Use this to restrict the amount of memory allocated for representing - the alignment code. Needs to be large enough to hold any fixed sized +/* Use this to specify the amount of memory allocated for representing + the alignment code. Needs to be large enough to hold any fixed size prologue plus the replicating portion. */ #ifndef MAX_MEM_FOR_RS_ALIGN_CODE - /* Assume that if HANDLE_ALIGN is not defined then no special action - is required to code fill, which means that we get just repeat the - one NOP_OPCODE byte. */ -# ifndef HANDLE_ALIGN -# define MAX_MEM_FOR_RS_ALIGN_CODE 1 -# else -# define MAX_MEM_FOR_RS_ALIGN_CODE (((size_t) 1 << alignment) - 1) -# endif +# define MAX_MEM_FOR_RS_ALIGN_CODE(p2align, max) 1 #endif void @@ -374,7 +367,7 @@ frag_align_code (int alignment, int max) { char *p; - p = frag_var (rs_align_code, MAX_MEM_FOR_RS_ALIGN_CODE, 1, + p = frag_var (rs_align_code, MAX_MEM_FOR_RS_ALIGN_CODE (alignment, max), 1, (relax_substateT) max, (symbolS *) 0, (offsetT) alignment, (char *) 0); *p = NOP_OPCODE; diff --git a/gas/frags.h b/gas/frags.h index 695277d..c2fea09 100644 --- a/gas/frags.h +++ b/gas/frags.h @@ -44,8 +44,7 @@ struct frag { /* (Fixed) number of octets we know we have. May be 0. */ valueT fr_fix; - /* May be used for (Variable) number of octets after above. - The generic frag handling code no longer makes any use of fr_var. */ + /* May be used for (Variable) number of octets after above. */ offsetT fr_var; /* For variable-length tail. */ offsetT fr_offset; diff --git a/gas/gen-sframe.c b/gas/gen-sframe.c index 5b5e7b1..2d1c196 100644 --- a/gas/gen-sframe.c +++ b/gas/gen-sframe.c @@ -30,18 +30,6 @@ # define sizeof_member(type, member) (sizeof (((type *)0)->member)) #endif -/* Whether frame row entries track RA. - - A target may not need return address tracking for stack tracing. If it - does need the same, SFRAME_CFA_RA_REG must be defined with the return - address register number. */ - -#if defined (sframe_ra_tracking_p) && defined (SFRAME_CFA_RA_REG) -# ifndef SFRAME_FRE_RA_TRACKING -# define SFRAME_FRE_RA_TRACKING 1 -# endif -#endif - /* SFrame FRE type selection optimization is an optimization for size. There are three flavors of SFrame FRE representation in the binary format: @@ -154,7 +142,6 @@ sframe_fre_set_cfa_offset (struct sframe_row_entry *fre, fre->merge_candidate = false; } -#ifdef SFRAME_FRE_RA_TRACKING static void sframe_fre_set_ra_track (struct sframe_row_entry *fre, offsetT ra_offset) { @@ -162,7 +149,6 @@ sframe_fre_set_ra_track (struct sframe_row_entry *fre, offsetT ra_offset) fre->ra_offset = ra_offset; fre->merge_candidate = false; } -#endif static void sframe_fre_set_bp_track (struct sframe_row_entry *fre, offsetT bp_offset) @@ -352,11 +338,9 @@ get_fre_num_offsets (struct sframe_row_entry *sframe_fre) if (sframe_fre->bp_loc == SFRAME_FRE_ELEM_LOC_STACK) fre_num_offsets++; -#ifdef SFRAME_FRE_RA_TRACKING if (sframe_ra_tracking_p () && sframe_fre->ra_loc == SFRAME_FRE_ELEM_LOC_STACK) fre_num_offsets++; -#endif return fre_num_offsets; } @@ -377,11 +361,9 @@ sframe_get_fre_offset_size (struct sframe_row_entry *sframe_fre) cfa_offset_size = get_offset_size_in_bytes (sframe_fre->cfa_offset); if (sframe_fre->bp_loc == SFRAME_FRE_ELEM_LOC_STACK) bp_offset_size = get_offset_size_in_bytes (sframe_fre->bp_offset); -#ifdef SFRAME_FRE_RA_TRACKING if (sframe_ra_tracking_p () && sframe_fre->ra_loc == SFRAME_FRE_ELEM_LOC_STACK) ra_offset_size = get_offset_size_in_bytes (sframe_fre->ra_offset); -#endif /* Get the maximum size needed to represent the offsets. */ max_offset_size = cfa_offset_size; @@ -587,14 +569,12 @@ output_sframe_row_entry (symbolS *fde_start_addr, fre_offset_func_map[idx].out_func (sframe_fre->cfa_offset); fre_write_offsets++; -#ifdef SFRAME_FRE_RA_TRACKING if (sframe_ra_tracking_p () && sframe_fre->ra_loc == SFRAME_FRE_ELEM_LOC_STACK) { fre_offset_func_map[idx].out_func (sframe_fre->ra_offset); fre_write_offsets++; } -#endif if (sframe_fre->bp_loc == SFRAME_FRE_ELEM_LOC_STACK) { fre_offset_func_map[idx].out_func (sframe_fre->bp_offset); @@ -688,9 +668,9 @@ output_sframe_internal (void) unsigned int num_fdes = get_num_sframe_fdes (); unsigned int num_fres = get_num_sframe_fres (); - symbolS **fre_symbols = XNEWVEC (symbolS *, num_fres); - for (i = 0; i < num_fres; i++) - fre_symbols[i] = symbol_temp_make (); + symbolS **fde_fre_symbols = XNEWVEC (symbolS *, num_fdes); + for (i = 0; i < num_fdes; i++) + fde_fre_symbols[i] = symbol_temp_make (); end_of_frame_hdr = symbol_temp_make (); start_of_fre_section = symbol_temp_make (); @@ -764,8 +744,8 @@ output_sframe_internal (void) for (sframe_fde = all_sframe_fdes; sframe_fde; sframe_fde = sframe_fde->next) { output_sframe_funcdesc (start_of_fre_section, - fre_symbols[i], sframe_fde); - i += sframe_fde->num_fres; + fde_fre_symbols[i], sframe_fde); + i++; } symbol_set_value_now (start_of_fre_section); @@ -776,16 +756,16 @@ output_sframe_internal (void) for (sframe_fde = all_sframe_fdes; sframe_fde; sframe_fde = sframe_fde_next) { + symbol_set_value_now (fde_fre_symbols[i]); for (sframe_fre = sframe_fde->sframe_fres; sframe_fre; sframe_fre = sframe_fre->next) { - symbol_set_value_now (fre_symbols[i]); output_sframe_row_entry (get_dw_fde_start_addrS (sframe_fde->dw_fde), get_dw_fde_end_addrS (sframe_fde->dw_fde), sframe_fre); - i++; } + i++; sframe_fde_next = sframe_fde->next; sframe_fde_free (sframe_fde); } @@ -794,10 +774,10 @@ output_sframe_internal (void) symbol_set_value_now (end_of_frame_section); - gas_assert (i == num_fres); + gas_assert (i == num_fdes); - free (fre_symbols); - fre_symbols = NULL; + free (fde_fre_symbols); + fde_fre_symbols = NULL; } static unsigned int @@ -926,10 +906,8 @@ sframe_register_name (unsigned int reg) return "SP"; else if (reg == SFRAME_CFA_FP_REG) return "FP"; -#ifdef SFRAME_FRE_RA_TRACKING else if (reg == SFRAME_CFA_RA_REG) return "RA"; -#endif else return NULL; } @@ -1003,7 +981,8 @@ sframe_xlate_do_def_cfa (struct sframe_xlate_ctx *xlate_ctx, if (cfi_insn->u.ri.reg != SFRAME_CFA_SP_REG && cfi_insn->u.ri.reg != SFRAME_CFA_FP_REG) { - as_warn (_("skipping SFrame FDE; non-SP/FP register %u in .cfi_def_cfa"), + as_warn (_("no SFrame FDE emitted; " + "non-SP/FP register %u in .cfi_def_cfa"), cfi_insn->u.ri.reg); return SFRAME_XLATE_ERR_NOTREPRESENTED; /* Not represented. */ } @@ -1032,13 +1011,15 @@ sframe_xlate_do_def_cfa_register (struct sframe_xlate_ctx *xlate_ctx, if (cfi_insn->u.r != SFRAME_CFA_SP_REG && cfi_insn->u.r != SFRAME_CFA_FP_REG) { - as_warn (_("skipping SFrame FDE; " + as_warn (_("no SFrame FDE emitted; " "non-SP/FP register %u in .cfi_def_cfa_register"), cfi_insn->u.r); return SFRAME_XLATE_ERR_NOTREPRESENTED; /* Not represented. */ } sframe_fre_set_cfa_base_reg (cur_fre, cfi_insn->u.r); - sframe_fre_set_cfa_offset (cur_fre, last_fre->cfa_offset); + if (last_fre) + sframe_fre_set_cfa_offset (cur_fre, last_fre->cfa_offset); + cur_fre->merge_candidate = false; return SFRAME_XLATE_OK; @@ -1070,7 +1051,7 @@ sframe_xlate_do_def_cfa_offset (struct sframe_xlate_ctx *xlate_ctx, { /* No CFA base register in effect. Non-SP/FP CFA base register should not occur, as sframe_xlate_do_def_cfa[_register] would detect this. */ - as_warn (_("skipping SFrame FDE; " + as_warn (_("no SFrame FDE emitted; " ".cfi_def_cfa_offset without CFA base register in effect")); return SFRAME_XLATE_ERR_NOTREPRESENTED; } @@ -1100,14 +1081,12 @@ sframe_xlate_do_offset (struct sframe_xlate_ctx *xlate_ctx, sframe_fre_set_bp_track (cur_fre, cfi_insn->u.ri.offset); cur_fre->merge_candidate = false; } -#ifdef SFRAME_FRE_RA_TRACKING else if (sframe_ra_tracking_p () && cfi_insn->u.ri.reg == SFRAME_CFA_RA_REG) { sframe_fre_set_ra_track (cur_fre, cfi_insn->u.ri.offset); cur_fre->merge_candidate = false; } -#endif /* This is used to track changes to non-rsp registers, skip all others except FP / RA for now. */ return SFRAME_XLATE_OK; @@ -1129,13 +1108,11 @@ sframe_xlate_do_val_offset (const struct sframe_xlate_ctx *xlate_ctx ATTRIBUTE_U DW_CFA_val_offset instruction can be safely skipped without sacrificing the asynchronicity of stack trace information. */ if (cfi_insn->u.ri.reg == SFRAME_CFA_FP_REG -#ifdef SFRAME_FRE_RA_TRACKING || (sframe_ra_tracking_p () && cfi_insn->u.ri.reg == SFRAME_CFA_RA_REG) -#endif /* Ignore SP reg, if offset matches assumed default rule. */ || (cfi_insn->u.ri.reg == SFRAME_CFA_SP_REG && cfi_insn->u.ri.offset != 0)) { - as_warn (_("skipping SFrame FDE; %s with %s reg %u"), + as_warn (_("no SFrame FDE emitted; %s with %s reg %u"), cfi_esc_p ? ".cfi_escape DW_CFA_val_offset" : ".cfi_val_offset", sframe_register_name (cfi_insn->u.ri.reg), cfi_insn->u.ri.reg); return SFRAME_XLATE_ERR_NOTREPRESENTED; /* Not represented. */ @@ -1157,13 +1134,11 @@ sframe_xlate_do_register (struct sframe_xlate_ctx *xlate_ctx ATTRIBUTE_UNUSED, instruction can be safely skipped without sacrificing the asynchronicity of stack trace information. */ if (cfi_insn->u.rr.reg1 == SFRAME_CFA_FP_REG -#ifdef SFRAME_FRE_RA_TRACKING || (sframe_ra_tracking_p () && cfi_insn->u.rr.reg1 == SFRAME_CFA_RA_REG) -#endif /* Ignore SP reg, as it can be recovered from the CFA tracking info. */ ) { - as_warn (_("skipping SFrame FDE; %s register %u in .cfi_register"), + as_warn (_("no SFrame FDE emitted; %s register %u in .cfi_register"), sframe_register_name (cfi_insn->u.rr.reg1), cfi_insn->u.rr.reg1); return SFRAME_XLATE_ERR_NOTREPRESENTED; /* Not represented. */ } @@ -1185,7 +1160,7 @@ sframe_xlate_do_remember_state (struct sframe_xlate_ctx *xlate_ctx) info for the function involved. */ if (!last_fre) { - as_warn (_("skipping SFrame FDE; " + as_warn (_("no SFrame FDE emitted; " ".cfi_remember_state without prior SFrame FRE state")); return SFRAME_XLATE_ERR_INVAL; } @@ -1244,7 +1219,6 @@ sframe_xlate_do_restore (struct sframe_xlate_ctx *xlate_ctx, cur_fre->bp_offset = cie_fre->bp_offset; cur_fre->merge_candidate = false; } -#ifdef SFRAME_FRE_RA_TRACKING else if (sframe_ra_tracking_p () && cfi_insn->u.r == SFRAME_CFA_RA_REG) { @@ -1253,7 +1227,6 @@ sframe_xlate_do_restore (struct sframe_xlate_ctx *xlate_ctx, cur_fre->ra_offset = cie_fre->ra_offset; cur_fre->merge_candidate = false; } -#endif return SFRAME_XLATE_OK; } @@ -1281,7 +1254,7 @@ static int sframe_xlate_do_aarch64_negate_ra_state_with_pc (struct sframe_xlate_ctx *xlate_ctx ATTRIBUTE_UNUSED, struct cfi_insn_data *cfi_insn ATTRIBUTE_UNUSED) { - as_warn (_("skipping SFrame FDE; .cfi_negate_ra_state_with_pc")); + as_warn (_("no SFrame FDE emitted; .cfi_negate_ra_state_with_pc")); /* The used signing method should be encoded inside the FDE in SFrame v3. For now, PAuth_LR extension is not supported with SFrame. */ return SFRAME_XLATE_ERR_NOTREPRESENTED; /* Not represented. */ @@ -1308,7 +1281,7 @@ sframe_xlate_do_gnu_window_save (struct sframe_xlate_ctx *xlate_ctx, || abi_arch == SFRAME_ABI_AARCH64_ENDIAN_LITTLE) return sframe_xlate_do_aarch64_negate_ra_state (xlate_ctx, cfi_insn); - as_warn (_("skipping SFrame FDE; .cfi_window_save")); + as_warn (_("no SFrame FDE emitted; .cfi_window_save")); return SFRAME_XLATE_ERR_NOTREPRESENTED; /* Not represented. */ } @@ -1363,12 +1336,10 @@ sframe_xlate_do_escape_expr (const struct sframe_xlate_ctx *xlate_ctx, #undef CFI_ESC_NUM_EXP if (reg == SFRAME_CFA_SP_REG || reg == SFRAME_CFA_FP_REG -#ifdef SFRAME_FRE_RA_TRACKING || (sframe_ra_tracking_p () && reg == SFRAME_CFA_RA_REG) -#endif || reg == xlate_ctx->cur_fre->cfa_base_reg) { - as_warn (_("skipping SFrame FDE; " + as_warn (_("no SFrame FDE emitted; " ".cfi_escape DW_CFA_expression with %s reg %u"), sframe_register_name (reg), reg); err = SFRAME_XLATE_ERR_NOTREPRESENTED; @@ -1529,7 +1500,7 @@ sframe_xlate_do_cfi_escape (const struct sframe_xlate_ctx *xlate_ctx, OS-specific CFI opcodes), skip inspecting the DWARF expression. This may impact the asynchronicity due to loss of coverage. Continue to warn the user and bail out. */ - as_warn (_("skipping SFrame FDE; .cfi_escape with op (%#lx)"), + as_warn (_("no SFrame FDE emitted; .cfi_escape with op (%#lx)"), (unsigned long)firstop); err = SFRAME_XLATE_ERR_NOTREPRESENTED; } @@ -1537,6 +1508,89 @@ sframe_xlate_do_cfi_escape (const struct sframe_xlate_ctx *xlate_ctx, return err; } +/* Translate DW_CFA_undefined into SFrame context. + + DW_CFA_undefined op indicates that from now on, the previous value of + register can’t be restored anymore. In SFrame stack trace, we cannot + represent such a semantic. So, we skip generating an SFrame FDE for this, + when a register of interest is used with DW_CFA_undefined. + + Return SFRAME_XLATE_OK if success. */ + +static int +sframe_xlate_do_cfi_undefined (const struct sframe_xlate_ctx *xlate_ctx ATTRIBUTE_UNUSED, + const struct cfi_insn_data *cfi_insn) +{ + if (cfi_insn->u.r == SFRAME_CFA_FP_REG + || cfi_insn->u.r == SFRAME_CFA_RA_REG + || cfi_insn->u.r == SFRAME_CFA_SP_REG) + { + as_warn (_("no SFrame FDE emitted; %s reg %u in .cfi_undefined"), + sframe_register_name (cfi_insn->u.r), cfi_insn->u.r); + return SFRAME_XLATE_ERR_NOTREPRESENTED; /* Not represented. */ + } + + /* Safe to skip. */ + return SFRAME_XLATE_OK; +} + +/* Translate DW_CFA_same_value into SFrame context. + + DW_CFA_same_value op indicates that current value of register is the same as + in the previous frame, i.e. no restoration needed. In SFrame stack trace + format, the handling is done similar to DW_CFA_restore. + + For SFRAME_CFA_RA_REG, if RA-tracking is enabled, reset the SFrame FRE state + for REG_RA to indicate that register does not need restoration. P.S.: Even + though resetting just REG_RA may be contradicting the AArch64 ABI (as Frame + Record contains for FP and LR), sframe_xlate_do_same_value () does not + detect the case and assumes the users' DW_CFA_same_value SFRAME_CFA_RA_REG + has a sound reason. For ABIs, where RA-tracking is disabled, handle it + similar to DW_CFA_restore: ignore the directive, it is safe to skip. The + reasoning is similar to that for DW_CFA_restore: if such a restoration was + meant to be of any consequence, there must have been the necessary CFI + directives for updating the CFA rule too such that the recovered RA from + stack is valid. + + SFrame based stacktracers will implement CFA-based SP recovery for all ABIs: + SP for previous frame is based on the applicable CFA-rule. There is no + representation in SFrame to indicate "no restoration needed" for REG_SP, + when going to the previous frame. That said, if DW_CFA_same_value is seen + for SFRAME_CFA_SP_REG, handle it similar to DW_CFA_restore: ignore the + directive, it is safe to skip. The reasoning is similar to that for + DW_CFA_restore: if such a restoration was meant to be of any consequence, + there must have been the necessary CFI directives for updating the CFA rule + too. The latter will be duly processed by the SFrame generation code, as + expected. + + For SFRAME_CFA_FP_REG, reset the state of the current FRE to indicate that + the value is the same as previous frame. + + Return SFRAME_XLATE_OK if success. */ + +static int +sframe_xlate_do_same_value (const struct sframe_xlate_ctx *xlate_ctx, + const struct cfi_insn_data *cfi_insn) +{ + struct sframe_row_entry *cur_fre = xlate_ctx->cur_fre; + + if (sframe_ra_tracking_p () && cfi_insn->u.r == SFRAME_CFA_RA_REG) + { + cur_fre->ra_loc = SFRAME_FRE_ELEM_LOC_REG; + cur_fre->ra_offset = 0; + cur_fre->merge_candidate = false; + } + else if (cfi_insn->u.r == SFRAME_CFA_FP_REG) + { + cur_fre->bp_loc = SFRAME_FRE_ELEM_LOC_REG; + cur_fre->bp_offset = 0; + cur_fre->merge_candidate = false; + } + + /* Safe to skip. */ + return SFRAME_XLATE_OK; +} + /* Returns the DWARF call frame instruction name or fake CFI name for the specified CFI opcode, or NULL if the value is not recognized. */ @@ -1636,11 +1690,11 @@ sframe_do_cfi_insn (struct sframe_xlate_ctx *xlate_ctx, case CFI_escape: err = sframe_xlate_do_cfi_escape (xlate_ctx, cfi_insn); break; - /* Following CFI opcodes are not processed at this time. - These do not impact the coverage of the basic stack tracing - information as conveyed in the SFrame format. */ case DW_CFA_undefined: + err = sframe_xlate_do_cfi_undefined (xlate_ctx, cfi_insn); + break; case DW_CFA_same_value: + err = sframe_xlate_do_same_value (xlate_ctx, cfi_insn); break; default: /* Other skipped operations may, however, impact the asynchronicity. */ @@ -1649,7 +1703,7 @@ sframe_do_cfi_insn (struct sframe_xlate_ctx *xlate_ctx, if (!cfi_name) cfi_name = _("(unknown)"); - as_warn (_("skipping SFrame FDE; CFI insn %s (%#x)"), + as_warn (_("no SFrame FDE emitted; CFI insn %s (%#x)"), cfi_name, op); err = SFRAME_XLATE_ERR_NOTREPRESENTED; } @@ -1673,7 +1727,7 @@ sframe_do_fde (struct sframe_xlate_ctx *xlate_ctx, /* SFrame format cannot represent a non-default DWARF return column reg. */ if (xlate_ctx->dw_fde->return_column != DWARF2_DEFAULT_RETURN_COLUMN) { - as_warn (_("skipping SFrame FDE; non-default RA register %u"), + as_warn (_("no SFrame FDE emitted; non-default RA register %u"), xlate_ctx->dw_fde->return_column); return SFRAME_XLATE_ERR_NOTREPRESENTED; } @@ -1705,7 +1759,6 @@ sframe_do_fde (struct sframe_xlate_ctx *xlate_ctx, = get_dw_fde_end_addrS (xlate_ctx->dw_fde); } -#ifdef SFRAME_FRE_RA_TRACKING if (sframe_ra_tracking_p ()) { struct sframe_row_entry *fre; @@ -1717,12 +1770,11 @@ sframe_do_fde (struct sframe_xlate_ctx *xlate_ctx, if (fre->ra_loc != SFRAME_FRE_ELEM_LOC_STACK && fre->bp_loc == SFRAME_FRE_ELEM_LOC_STACK) { - as_warn (_("skipping SFrame FDE; FP without RA on stack")); + as_warn (_("no SFrame FDE emitted; FP without RA on stack")); return SFRAME_XLATE_ERR_NOTREPRESENTED; } } } -#endif /* SFRAME_FRE_RA_TRACKING */ return SFRAME_XLATE_OK; } diff --git a/gas/ginsn.c b/gas/ginsn.c index e74196d..91b0350 100644 --- a/gas/ginsn.c +++ b/gas/ginsn.c @@ -179,9 +179,8 @@ ginsnS * label_ginsn_map_find (const symbolS *label) { const char *name = S_GET_NAME (label); - ginsnS *ginsn - = (ginsnS *) str_hash_find (frchain_now->frch_ginsn_data->label_ginsn_map, - name); + ginsnS *ginsn = str_hash_find (frchain_now->frch_ginsn_data->label_ginsn_map, + name); return ginsn; } @@ -25,7 +25,7 @@ hashval_t hash_string_tuple (const void *e) { - string_tuple_t *tuple = (string_tuple_t *) e; + const string_tuple_t *tuple = e; return htab_hash_string (tuple->key); } @@ -34,8 +34,8 @@ hash_string_tuple (const void *e) int eq_string_tuple (const void *a, const void *b) { - const string_tuple_t *ea = (const string_tuple_t *) a; - const string_tuple_t *eb = (const string_tuple_t *) b; + const string_tuple_t *ea = a; + const string_tuple_t *eb = b; return strcmp (ea->key, eb->key) == 0; } @@ -24,7 +24,7 @@ struct string_tuple { const char *key; - const void *value; + intptr_t value; }; typedef struct string_tuple string_tuple_t; @@ -50,7 +50,7 @@ extern void htab_print_statistics (FILE *f, const char *name, htab_t table); /* Inline string hash table functions. */ static inline string_tuple_t * -string_tuple_alloc (htab_t table, const char *key, const void *value) +string_tuple_alloc (htab_t table, const char *key, intptr_t value) { string_tuple_t *tuple = table->alloc_f (1, sizeof (*tuple)); tuple->key = key; @@ -61,18 +61,26 @@ string_tuple_alloc (htab_t table, const char *key, const void *value) static inline void * str_hash_find (htab_t table, const char *key) { - string_tuple_t needle = { key, NULL }; + string_tuple_t needle = { key, 0 }; string_tuple_t *tuple = htab_find (table, &needle); return tuple != NULL ? (void *) tuple->value : NULL; } +static inline intptr_t +str_hash_find_int (htab_t table, const char *key) +{ + string_tuple_t needle = { key, 0 }; + string_tuple_t *tuple = htab_find (table, &needle); + return tuple != NULL ? tuple->value : -1; +} + static inline void * str_hash_find_n (htab_t table, const char *key, size_t n) { char *tmp = XNEWVEC (char, n + 1); memcpy (tmp, key, n); tmp[n] = '\0'; - string_tuple_t needle = { tmp, NULL }; + string_tuple_t needle = { tmp, 0 }; string_tuple_t *tuple = htab_find (table, &needle); free (tmp); return tuple != NULL ? (void *) tuple->value : NULL; @@ -81,12 +89,12 @@ str_hash_find_n (htab_t table, const char *key, size_t n) static inline void str_hash_delete (htab_t table, const char *key) { - string_tuple_t needle = { key, NULL }; + string_tuple_t needle = { key, 0 }; htab_remove_elt (table, &needle); } static inline void ** -str_hash_insert (htab_t table, const char *key, const void *value, int replace) +str_hash_insert_int (htab_t table, const char *key, intptr_t value, int replace) { string_tuple_t *elt = string_tuple_alloc (table, key, value); void **slot = htab_insert (table, elt, replace); @@ -95,6 +103,12 @@ str_hash_insert (htab_t table, const char *key, const void *value, int replace) return slot; } +static inline void ** +str_hash_insert (htab_t table, const char *key, const void *value, int replace) +{ + return str_hash_insert_int (table, key, (intptr_t) value, replace); +} + static inline htab_t str_htab_create (void) { diff --git a/gas/input-scrub.c b/gas/input-scrub.c index 2e0ce83..93d1e8e 100644 --- a/gas/input-scrub.c +++ b/gas/input-scrub.c @@ -150,6 +150,21 @@ input_scrub_reinit (void) memcpy (buffer_start, BEFORE_STRING, (int) BEFORE_SIZE); } +/* Finish off old buffers. */ + +static void +input_scrub_free (void) +{ + if (sb_index != (size_t) -1) + { + sb_kill (&from_sb); + sb_index = -1; + } + free (buffer_start); + buffer_start = NULL; + input_file_end (); +} + /* Push the state of input reading and scrubbing so that we can #include. The return value is a 'void *' (fudged for old compilers) to a save area, which can be restored by passing it to input_scrub_pop(). */ @@ -188,7 +203,7 @@ input_scrub_pop (struct input_save *saved) { char *saved_position; - input_scrub_end (); /* Finish off old buffer */ + input_scrub_free (); input_file_pop (saved->input_file_save); saved_position = saved->saved_position; @@ -241,12 +256,9 @@ input_scrub_begin (void) void input_scrub_end (void) { - if (buffer_start) - { - free (buffer_start); - buffer_start = 0; - input_file_end (); - } + while (next_saved_file != NULL) + input_scrub_pop (next_saved_file); + input_scrub_free (); } /* Start reading input from a new file. @@ -341,7 +353,6 @@ input_scrub_next_buffer (char **bufp) { if (sb_index >= from_sb.len) { - sb_kill (&from_sb); if (from_sb_expansion == expanding_macro) { cond_finish_check (macro_nest); diff --git a/gas/listing.c b/gas/listing.c index c47a43d..d611179 100644 --- a/gas/listing.c +++ b/gas/listing.c @@ -190,10 +190,10 @@ struct list_info_struct typedef struct list_info_struct list_info_type; -int listing_lhs_width = LISTING_LHS_WIDTH; -int listing_lhs_width_second = LISTING_LHS_WIDTH_SECOND; -int listing_lhs_cont_lines = LISTING_LHS_CONT_LINES; -int listing_rhs_width = LISTING_RHS_WIDTH; +unsigned int listing_lhs_width = LISTING_LHS_WIDTH; +unsigned int listing_lhs_width_second = LISTING_LHS_WIDTH_SECOND; +unsigned int listing_lhs_cont_lines = LISTING_LHS_CONT_LINES; +unsigned int listing_rhs_width = LISTING_RHS_WIDTH; struct list_info_struct * listing_tail; @@ -201,8 +201,8 @@ static file_info_type * file_info_head; static file_info_type * last_open_file_info; static FILE * last_open_file; static struct list_info_struct * head; -static int paper_width = 200; -static int paper_height = 60; +static unsigned int paper_width = 200; +static unsigned int paper_height = 60; extern int listing; @@ -735,7 +735,7 @@ listing_page (list_info_type *list) { /* Grope around, see if we can see a title or subtitle edict coming up soon. (we look down 10 lines of the page and see if it's there) */ - if ((eject || (on_page >= (unsigned int) paper_height)) + if ((eject || (on_page >= paper_height)) && paper_height != 0) { unsigned int c = 10; @@ -793,7 +793,7 @@ emit_line (list_info_type * list, const char * format, ...) static unsigned int calc_hex (list_info_type *list) { - int data_buffer_size; + size_t data_buffer_size; list_info_type *first = list; unsigned int address = ~(unsigned int) 0; fragS *frag; @@ -826,7 +826,7 @@ calc_hex (list_info_type *list) data_buffer_size += 2; octet_in_frag++; } - if (frag_ptr->fr_type == rs_fill) + if (frag_ptr->fr_type == rs_fill || frag_ptr->fr_type == rs_fill_nop) { unsigned int var_rep_max = octet_in_frag; unsigned int var_rep_idx = octet_in_frag; @@ -851,27 +851,6 @@ calc_hex (list_info_type *list) var_rep_idx = var_rep_max; } } - else if (frag_ptr->fr_type == rs_fill_nop && frag_ptr->fr_opcode) - { - /* Print as many bytes from fr_opcode as is sensible. */ - octet_in_frag = 0; - while (octet_in_frag < (unsigned int) frag_ptr->fr_offset - && data_buffer_size < MAX_BYTES - 3) - { - if (address == ~(unsigned int) 0) - address = frag_ptr->fr_address / OCTETS_PER_BYTE; - - sprintf (data_buffer + data_buffer_size, - "%02X", - frag_ptr->fr_opcode[octet_in_frag] & 0xff); - data_buffer_size += 2; - - octet_in_frag++; - } - - free (frag_ptr->fr_opcode); - frag_ptr->fr_opcode = NULL; - } frag_ptr = frag_ptr->fr_next; } @@ -941,7 +920,7 @@ print_lines (list_info_type *list, unsigned int lineno, emit_line (list, "**** %s\n", msg->message); for (lines = 0; - lines < (unsigned int) listing_lhs_cont_lines + lines < listing_lhs_cont_lines && src[cur]; lines++) { @@ -1377,7 +1356,7 @@ print_timestamp (void) static void print_single_option (char * opt, int *pos) { - int opt_len = strlen (opt); + size_t opt_len = strlen (opt); if ((*pos + opt_len) < paper_width) { @@ -1546,7 +1525,7 @@ listing_psize (int width_only) { paper_height = get_absolute_expression (); - if (paper_height < 0 || paper_height > 1000) + if (paper_height > 1000) { paper_height = 0; as_warn (_("strange paper height, set to no form")); diff --git a/gas/listing.h b/gas/listing.h index a9822c3..2abc70c 100644 --- a/gas/listing.h +++ b/gas/listing.h @@ -70,10 +70,10 @@ void listing_width (unsigned int x); #define listing_source_line(line) ((void)(line)) #endif -extern int listing_lhs_width; -extern int listing_lhs_width_second; -extern int listing_lhs_cont_lines; -extern int listing_rhs_width; +extern unsigned int listing_lhs_width; +extern unsigned int listing_lhs_width_second; +extern unsigned int listing_lhs_cont_lines; +extern unsigned int listing_rhs_width; extern struct list_info_struct *listing_tail; diff --git a/gas/po/es.po b/gas/po/es.po index f974b45..e6a5cb12 100644 --- a/gas/po/es.po +++ b/gas/po/es.po @@ -3,14 +3,14 @@ # This file is distributed under the same license as the binutils package. # Cristian Othón Martínez Vera <cfuga@cfuga.mx>, 2002 - 2012. # Francisco Javier Serrador <fserrador@gmail.com>, 2018. -#: config/tc-arm.c:642 +# Antonio Ceballos <aceballos@gmail.com>, 2025 msgid "" msgstr "" -"Project-Id-Version: gas 2.30.0\n" -"Report-Msgid-Bugs-To: bug-binutils@gnu.org\n" -"POT-Creation-Date: 2018-01-13 13:44+0000\n" -"PO-Revision-Date: 2018-04-29 15:57+0200\n" -"Last-Translator: Francisco Javier Serrador <fserrador@gmail.com>\n" +"Project-Id-Version: gas 2.43.90\n" +"Report-Msgid-Bugs-To: https://sourceware.org/bugzilla/\n" +"POT-Creation-Date: 2025-01-19 12:20+0000\n" +"PO-Revision-Date: 2025-06-22 10:10+0200\n" +"Last-Translator: Antonio Ceballos <aceballos@gmail.com>\n" "Language-Team: Spanish <es@tp.org.es>\n" "Language: es\n" "MIME-Version: 1.0\n" @@ -20,64 +20,79 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: Poedit 2.0.4\n" -#: app.c:490 app.c:504 -msgid "end of file in comment" -msgstr "final de fichero en el comentario" +#: app.c:446 +#, c-format +msgid "multibyte character (%#x) encountered in input" +msgstr "carácter multibyte (%#x) encontrado en la entrada" + +#: app.c:448 +#, c-format +msgid "multibyte character (%#x) encountered in %s" +msgstr "carácter multibyte (%#x) encontrado en %s" + +#: app.c:450 +#, c-format +msgid "multibyte character (%#x) encountered in %s at or near line %u" +msgstr "carácter multibyte (%#x) encontrado en %s hacia la línea %u" + +#: app.c:454 +msgid "further multibyte character warnings suppressed" +msgstr "avisos de carácter multibyte adicionales suprimidos" -#: app.c:582 app.c:629 +#: app.c:665 app.c:710 #, c-format msgid "end of file in string; '%c' inserted" -msgstr "final de fichero dentro de cadena; '%c' insertado" +msgstr "final de fichero en cadena; '%c' insertado" -#: app.c:655 +#: app.c:741 #, c-format msgid "unknown escape '\\%c' in string; ignored" -msgstr "escape '\\%c' desconocido en la cadena; se descarta" +msgstr "escape '\\%c' desconocida en la cadena; se descarta" -#: app.c:829 input-scrub.c:363 +#: app.c:953 input-scrub.c:389 msgid "end of file not at end of a line; newline inserted" -msgstr "final de fichero no está al final de una línea: se insertó línea nueva" +msgstr "final de fichero no situado en final de línea: se inserta una nueva línea" -#: app.c:992 +#: app.c:1131 msgid "end of file in multiline comment" -msgstr "final de fichero en comentario multilíneas" +msgstr "final de fichero en comentario multilínea" -#: app.c:1067 +#: app.c:1207 msgid "end of file after a one-character quote; \\0 inserted" -msgstr "final de fichero tras una comilla de un carácter; se insertó \\0" +msgstr "final de fichero tras una comilla de un carácter; se inserta \\0" -#: app.c:1075 +#: app.c:1215 msgid "end of file in escape character" msgstr "final de fichero en carácter de escape" -#: app.c:1087 +#: app.c:1227 msgid "missing close quote; (assumed)" -msgstr "ausente la comilla que cierra; (se asume)" +msgstr "falta comilla de cierre; (se asume)" -#: app.c:1156 app.c:1211 app.c:1223 app.c:1303 +#: app.c:1295 app.c:1344 app.c:1356 app.c:1430 msgid "end of file in comment; newline inserted" -msgstr "final de fichero en comentario; línea nueva insertada" +msgstr "final de fichero en comentario; nueva línea insertada" -#: as.c:162 +#: as.c:157 msgid "missing emulation mode name" -msgstr "ausente el nombre del modo de emulación" +msgstr "falta el nombre del modo de emulación" -#: as.c:177 +#: as.c:172 #, c-format msgid "unrecognized emulation name `%s'" -msgstr "no reconocido el nombre de emulación «%s»" +msgstr "nombre de emulación no reconocido «%s»" -#: as.c:224 +#: as.c:212 #, c-format msgid "GNU assembler version %s (%s) using BFD version %s\n" -msgstr "GNU ensamblador versión %s (%s) utilizando BFD versión %s\n" +msgstr "versión de ensamblador GNU %s (%s) utilizando versión de BFD %s\n" -#: as.c:236 +#: as.c:228 #, c-format msgid "Usage: %s [option...] [asmfile...]\n" msgstr "Modo de empleo: %s [opción...] [ficheroasm...]\n" -#: as.c:238 +#: as.c:230 #, c-format msgid "" "Options:\n" @@ -87,6 +102,7 @@ msgid "" " \t d omit debugging directives\n" " \t g include general info\n" " \t h include high-level source\n" +" \t i include ginsn and synthesized CFI info\n" " \t l include assembly\n" " \t m include macro expansions\n" " \t n omit forms processing\n" @@ -95,93 +111,86 @@ msgid "" msgstr "" "Opciones:\n" " -a[sub-opción...]\t activa listados\n" -" \t Sub-casillas [por defecto hls]:\n" +" \t Subopciones [por defecto hls]:\n" " \t c omite condicionales falsos\n" " \t d omite directivas de depuración\n" -" \t g incluye informe general\n" -" \t h incluye código de alto nivel\n" +" \t g incluye información general\n" +" \t h incluye fuente de alto nivel\n" +" \t i incluye ginsn e información de CFI sintetizada\n" " \t l incluye ensamblador\n" " \t m incluye expansiones de macros\n" " \t n omite el procesamiento de formas\n" " \t s incluye símbolos\n" -" \t =FICH lista a FICHero (debe ser la última subcasilla)\n" +" \t =FICH lista a FICHero (ha de ser la última subopción)\n" -#: as.c:252 +#: as.c:245 #, c-format msgid " --alternate initially turn on alternate macro syntax\n" -msgstr " --alternate activa inicialmente la sintaxis alternativa de macros\n" - -#: as.c:255 -#, c-format -msgid "" -" --compress-debug-sections[={none|zlib|zlib-gnu|zlib-gabi}]\n" -" compress DWARF debug sections using zlib [default]\n" -msgstr "" -" --compress-debug-sections=[none|zlib|zlib-gnu|zlib-gabi]\n" -" comprime secciones depurables DWARF empleando zlib [predef.]\n" +msgstr " --alternate activa inicialmente la sintaxis de macros alternativa\n" -#: as.c:258 +#: as.c:247 #, c-format msgid "" -" --nocompress-debug-sections\n" -" don't compress DWARF debug sections\n" +" --compress-debug-sections[={none|zlib|zlib-gnu|zlib-gabi|zstd}]\n" +" compress DWARF debug sections\n" msgstr "" -" --nocompress-debug-sections\n" -" no comprime las secciones de depuración DWARF\n" +" --compress-debug-sections[={none|zlib|zlib-gnu|zlib-gabi|zstd}]\n" +" comprime las secciones de depuración DWARF\n" -#: as.c:262 +#: as.c:250 #, c-format -msgid "" -" --compress-debug-sections[={none|zlib|zlib-gnu|zlib-gabi}]\n" -" compress DWARF debug sections using zlib\n" -msgstr "" -" --compress-debug-sections=[none|zlib|zlib-gnu|zlib-gabi]\n" -" comprime secciones de depuración DWARF empleando zlib\n" +msgid "\t\t Default: %s\n" +msgstr "\t\t Por defecto: %s\n" -#: as.c:265 +#: as.c:255 #, c-format msgid "" " --nocompress-debug-sections\n" -" don't compress DWARF debug sections [default]\n" +" don't compress DWARF debug sections\n" msgstr "" " --nocompress-debug-sections\n" -" no comprime las secciones de depuración DWARF [predet.]\n" +" no comprime las secciones de depuración DWARF\n" -#: as.c:269 +#: as.c:258 #, c-format msgid " -D produce assembler debugging messages\n" msgstr " -D produce mensajes de depuración de ensamblador\n" -#: as.c:271 +#: as.c:260 +#, c-format +msgid " --dump-config display how the assembler is configured and then exit\n" +msgstr " --dump-config muestra cómo está configurado el ensamblador y termina\n" + +#: as.c:262 #, c-format msgid "" " --debug-prefix-map OLD=NEW\n" " map OLD to NEW in debug information\n" msgstr "" " --debug-prefix-map ANT=NUEVO\n" -" mapea ANT en NUEVO en la información de depuración\n" +" asocia ANT a NUEVO en la información de depuración\n" -#: as.c:274 +#: as.c:265 #, c-format msgid " --defsym SYM=VAL define symbol SYM to given value\n" msgstr " --defsym SIM=VAL define el símbolo SIM al valor dado\n" -#: as.c:290 +#: as.c:281 #, c-format msgid " emulate output (default %s)\n" msgstr " emula la salida (por defecto %s)\n" -#: as.c:295 +#: as.c:286 #, c-format msgid " --execstack require executable stack for this object\n" msgstr " --execstack requiere pila ejecutable para este objeto\n" -#: as.c:297 +#: as.c:288 #, c-format msgid " --noexecstack don't require executable stack for this object\n" msgstr " --noexecstack no requiere pila ejecutable para este objeto\n" -#: as.c:299 +#: as.c:290 #, c-format msgid "" " --size-check=[error|warning]\n" @@ -190,164 +199,226 @@ msgstr "" " --size-check=[error|warning]\n" "\t\t\t revisar directiva .size de ELF (--size-check=error por defecto)\n" -#: as.c:302 +#: as.c:293 #, c-format -msgid "" -" --elf-stt-common=[no|yes]\n" -" generate ELF common symbols with STT_COMMON type\n" -msgstr "" -" --elf-stt-common=[no|yes]\n" -" genera símbolos comunes ELF con tipo STT_COMMON\n" +msgid " --elf-stt-common=[no|yes] " +msgstr " --elf-stt-common=[no|yes] " + +#: as.c:296 as.c:307 config/tc-i386.c:17662 config/tc-i386.c:17682 +#: config/tc-i386.c:17691 +#, c-format +msgid "(default: yes)\n" +msgstr "(por defecto: yes)\n" + +#: as.c:298 as.c:309 config/tc-i386.c:17664 config/tc-i386.c:17684 +#: config/tc-i386.c:17693 +#, c-format +msgid "(default: no)\n" +msgstr "(por defecto: no)\n" + +#: as.c:299 +#, c-format +msgid " generate ELF common symbols with STT_COMMON type\n" +msgstr " genera símbolos comunes ELF con tipo STT_COMMON\n" -#: as.c:305 +#: as.c:301 #, c-format msgid " --sectname-subst enable section name substitution sequences\n" -msgstr " --sectname-subst activa secuencias sustitutivas de nombre seccional\n" +msgstr " --sectname-subst activa secuencias de sustitución de nombre de sección\n" -#: as.c:308 +#: as.c:304 +#, c-format +msgid " --generate-missing-build-notes=[no|yes] " +msgstr " --generate-missing-build-notes=[no|yes] " + +#: as.c:311 +#, c-format +msgid " generate GNU Build notes if none are present in the input\n" +msgstr " genera notas de GNU Build si no las hay en la entrada\n" + +#: as.c:313 +#, c-format +msgid " --gsframe generate SFrame stack trace information\n" +msgstr " --gsframe genera información de traza de pila SFrame\n" + +#: as.c:316 +#, c-format +msgid "" +" --scfi=experimental Synthesize DWARF CFI for hand-written asm\n" +" (experimental support)\n" +msgstr "" +" --scfi=experimental Sintetiza CFI DWARF asm hecho a mano\n" +" (soporte experimental)\n" + +#: as.c:322 #, c-format msgid " -f skip whitespace and comment preprocessing\n" -msgstr " -f omite espacios en blanco y comentarios de preprocesamiento\n" +msgstr "" +" -f se salta el procesamiento de espacios en blanco y\n" +" comentarios\n" -#: as.c:310 +#: as.c:324 #, c-format -msgid " -g --gen-debug generate debugging information\n" -msgstr " -g --gen-debug genera información de depuración\n" +msgid " -g, --gen-debug generate debugging information\n" +msgstr " -g, --gen-debug genera información de depuración\n" -#: as.c:312 +#: as.c:326 #, c-format msgid " --gstabs generate STABS debugging information\n" msgstr " --gstabs genera información de depuración de STABS\n" -#: as.c:314 +#: as.c:328 #, c-format msgid " --gstabs+ generate STABS debug info with GNU extensions\n" msgstr " --gstabs+ genera informe de depuración de STABS con extensiones GNU\n" -#: as.c:316 +#: as.c:330 #, c-format -msgid " --gdwarf-2 generate DWARF2 debugging information\n" -msgstr " --genana-2 genera información de depuración DWARF2\n" +msgid " --gdwarf-<N> generate DWARF<N> debugging information. 2 <= <N> <= 5\n" +msgstr " --gdwarf-<N> genera información de depuración DWARF<N>. 2 <= <N> <= 5\n" -#: as.c:318 +#: as.c:332 +#, c-format +msgid " --gdwarf-cie-version=<N> generate version 1, 3 or 4 DWARF CIEs\n" +msgstr " --gdwarf-cie-version=<N> genera CIEs DWARF versión 1, 3 o 4\n" + +#: as.c:334 #, c-format msgid " --gdwarf-sections generate per-function section names for DWARF line information\n" msgstr "" -" --genana-sections genera información de línea DWARF para nombre de sección por\n" -" función\n" +" --gdwarf-sections genera nombres de sección por función para la\n" +" información de línea DWARF\n" -#: as.c:320 +#: as.c:337 #, c-format -msgid " --hash-size=<value> set the hash table size close to <value>\n" -msgstr " --hash-size=<valor> establece el tamaño de la distribución de dispersión cerca a <valor>\n" +msgid " --gcodeview generate CodeView debugging information\n" +msgstr " --gcodeview genera información de depuración de CodeView\n" -#: as.c:322 +#: as.c:340 #, c-format -msgid " --help show this message and exit\n" -msgstr " --help muestra este mensaje y termina\n" +msgid " --hash-size=<N> ignored\n" +msgstr " --hash-size=<N> se descarta\n" -#: as.c:324 +#: as.c:342 +#, c-format +msgid " --help show all assembler options\n" +msgstr " --help muestra todas las opciones del ensamblador\n" + +#: as.c:344 #, c-format msgid " --target-help show target specific options\n" -msgstr " --target-help muestra las casillas específicas del objetivo\n" +msgstr " --target-help muestra las opciones específicas del objetivo\n" -#: as.c:326 +#: as.c:346 #, c-format msgid " -I DIR add DIR to search list for .include directives\n" msgstr " -I DIR añade DIR a la lista de búsqueda para directivas .include\n" -#: as.c:328 +#: as.c:348 #, c-format msgid " -J don't warn about signed overflow\n" msgstr " -J no avisa sobre desbordamiento con signo\n" -#: as.c:330 +#: as.c:350 #, c-format msgid " -K warn when differences altered for long displacements\n" -msgstr " -K avisa cuando hay diferencias alteradas por desubicaciones largas\n" +msgstr " -K avisa cuando hay diferencias alteradas por desplazamientos largos\n" -#: as.c:332 +#: as.c:352 #, c-format -msgid " -L,--keep-locals keep local symbols (e.g. starting with `L')\n" -msgstr " -L,--keep-locals conserva los símbolos locales (p.e. si inician con `L')\n" +msgid " -L, --keep-locals keep local symbols (e.g. starting with `L')\n" +msgstr " -L, --keep-locals conserva los símbolos locales (p.e. los que empeizan con `L')\n" -#: as.c:334 +#: as.c:354 #, c-format -msgid " -M,--mri assemble in MRI compatibility mode\n" -msgstr " -M,--mri ensambla en modo de compatibilidad MRI\n" +msgid " -M, --mri assemble in MRI compatibility mode\n" +msgstr " -M, --mri ensambla en modo de compatibilidad con MRI\n" -#: as.c:336 +#: as.c:356 #, c-format msgid " --MD FILE write dependency information in FILE (default none)\n" -msgstr " --MD FICHERO escribe la información de dependencias en el FICHERO (por defecto ninguno)\n" +msgstr " --MD FICHERO escribe la información de dependencias en FICHERO (por defecto ninguno)\n" -#: as.c:338 +#: as.c:358 +#, c-format +msgid "" +" --multibyte-handling=<method>\n" +" what to do with multibyte characters encountered in the input\n" +msgstr "" +" --multibyte-handling=<método>\n" +" qué hacer con los caracteres multibyte que aparezcan en la entrada\n" + +#: as.c:361 #, c-format msgid " -nocpp ignored\n" msgstr " -nocpp se descarta\n" -#: as.c:340 +#: as.c:363 #, c-format msgid " -no-pad-sections do not pad the end of sections to alignment boundaries\n" -msgstr " -no-pad-sections no concadena el final de secciones a bordes alineados\n" +msgstr " -no-pad-sections no rellena los finales de sección hasta los bordes de alineamiento\n" -#: as.c:342 +#: as.c:365 #, c-format msgid " -o OBJFILE name the object-file output OBJFILE (default a.out)\n" -msgstr " -o FICHOBJ nombra la salida del objeto fichero FICHOBJ (por defecto a.out)\n" +msgstr " -o FICHOBJ nombre del fichero objeto de salida FICHOBJ (por defecto a.out)\n" -#: as.c:344 +#: as.c:367 #, c-format msgid " -R fold data section into text section\n" -msgstr " -R encarpeta sección de datos dentro de la sección textual\n" +msgstr " -R junta la sección de datos con la de texto\n" -#: as.c:346 +#: as.c:369 #, c-format -msgid "" -" --reduce-memory-overheads \n" -" prefer smaller memory use at the cost of longer\n" -" assembly times\n" -msgstr "" -" --reduce-memory-overheads \n" -" prefiere un menor uso de memoria al costo de\n" -" tiempos de ensamblado más largos\n" +msgid " --reduce-memory-overheads ignored\n" +msgstr " --reduce-memory-overheads se descarta\n" -#: as.c:350 +#: as.c:371 #, c-format msgid " --statistics print various measured statistics from execution\n" -msgstr " --statistics escribe varias estadísticas medidas de la ejecución\n" +msgstr " --statistics imprime varias estadísticas medidas de la ejecución\n" -#: as.c:352 +#: as.c:373 #, c-format msgid " --strip-local-absolute strip local absolute symbols\n" -msgstr " --strip-local-absolute descubrir símbolos locales absolutos\n" +msgstr " --strip-local-absolute elimina símbolos locales absolutos\n" -#: as.c:354 +#: as.c:375 #, c-format msgid " --traditional-format Use same format as native assembler when possible\n" msgstr " --traditional-format Usa el mismo formato que el ensamblador nativo en lo posible\n" -#: as.c:356 +#: as.c:377 #, c-format msgid " --version print assembler version number and exit\n" -msgstr " --version escribe el número de versión del ensamblador y termina\n" +msgstr " --version imprime el número de versión del ensamblador y termina\n" -#: as.c:358 +#: as.c:379 #, c-format -msgid " -W --no-warn suppress warnings\n" -msgstr " -W --no-warn suprime avisos\n" +msgid " -W, --no-warn suppress warnings\n" +msgstr " -W, --no-warn suprime avisos\n" -#: as.c:360 +#: as.c:381 #, c-format msgid " --warn don't suppress warnings\n" msgstr " --warn no suprime avisos\n" -#: as.c:362 +#: as.c:383 #, c-format msgid " --fatal-warnings treat warnings as errors\n" msgstr " --fatal-warnings trata los avisos como errores\n" -#: as.c:365 +#: as.c:385 +#, c-format +msgid " --no-info suppress information messages\n" +msgstr " --no-info suprime mensajes de información\n" + +#: as.c:387 +#, c-format +msgid " --info don't suppress information messages\n" +msgstr " --info no suprime mensajes de información\n" + +#: as.c:390 #, c-format msgid "" " --itbl INSTTBL extend instruction set to include instructions\n" @@ -357,22 +428,22 @@ msgstr "" " instrucciones que coincidan con las especificaciones\n" " definidas en el fichero INSTTBL\n" -#: as.c:369 +#: as.c:394 #, c-format msgid " -w ignored\n" msgstr " -w se descarta\n" -#: as.c:371 +#: as.c:396 #, c-format msgid " -X ignored\n" msgstr " -X se descarta\n" -#: as.c:373 +#: as.c:398 #, c-format msgid " -Z generate object file even after errors\n" -msgstr " -Z generar fichero objeto par tras errores\n" +msgstr " -Z genera fichero objeto incluso si hay errores\n" -#: as.c:375 +#: as.c:400 #, c-format msgid "" " --listing-lhs-width set the width in words of the output data column of\n" @@ -381,7 +452,7 @@ msgstr "" " --listing-lhs-width establece la anchura en palabras de la columna de\n" " datos de salida en el listado\n" -#: as.c:378 +#: as.c:403 #, c-format msgid "" " --listing-lhs-width2 set the width in words of the continuation lines\n" @@ -393,7 +464,7 @@ msgstr "" " descarta si es más pequeño que la anchura de la\n" " primera línea\n" -#: as.c:382 +#: as.c:407 #, c-format msgid "" " --listing-rhs-width set the max width in characters of the lines from\n" @@ -402,7 +473,7 @@ msgstr "" " --listing-rhs-width establece la anchura máxima en caracteres de las\n" " líneas del fichero fuente\n" -#: as.c:385 +#: as.c:410 #, c-format msgid "" " --listing-cont-lines set the maximum number of continuation lines used\n" @@ -412,33 +483,48 @@ msgstr "" " utilizadas para la columna de datos de salida del\n" " listado\n" -#: as.c:388 +#: as.c:413 #, c-format msgid " @FILE read options from FILE\n" -msgstr " @FICHERO lee casillas del FICHERO\n" +msgstr " @FICHERO lee las opciones de FICHERO\n" -#: as.c:396 +#: as.c:421 #, c-format msgid "Report bugs to %s\n" msgstr "Comunica defectos a %s\n" -#: as.c:616 +#: as.c:647 +#, c-format +msgid "unrecognized option `-%c%s'" +msgstr "opción no reconocida `-%c%s'" + +#: as.c:649 +#, c-format +msgid "unrecognized option `--%s=%s'" +msgstr "opción no reconocida `--%s=%s'" + +#: as.c:651 #, c-format -msgid "unrecognized option -%c%s" -msgstr "opción no reconocida -%c%s" +msgid "unrecognized option `--%s'" +msgstr "opción no reconocida `--%s'" + +#: as.c:701 +#, c-format +msgid "unexpected argument to --multibyte-input-option: '%s'" +msgstr "argumento inesperado para --multibyte-input-option: '%s'" #. This output is intended to follow the GNU standards document. -#: as.c:658 +#: as.c:706 #, c-format msgid "GNU assembler %s\n" -msgstr "Ensamblador %s de GNU\n" +msgstr "Ensamblador GNU %s\n" -#: as.c:659 +#: as.c:707 #, c-format -msgid "Copyright (C) 2018 Free Software Foundation, Inc.\n" -msgstr "© 2018 Free Software Foundation, Inc.\n" +msgid "Copyright (C) 2025 Free Software Foundation, Inc.\n" +msgstr "Copyright (C) 2025 Free Software Foundation, Inc.\n" -#: as.c:660 +#: as.c:708 #, c-format msgid "" "This program is free software; you may redistribute it under the terms of\n" @@ -449,7 +535,7 @@ msgstr "" "la Licencia Pública General de GNU versión 3 o posterior.\n" "Este programa no tiene ninguna garantía.\n" -#: as.c:665 +#: as.c:713 #, c-format msgid "" "This assembler was configured for a target of `%s' and default,\n" @@ -458,116 +544,150 @@ msgstr "" "Este ensamblador fue configurado para un objetivo de «%s» y por omisión,\n" "tipo «%s» de cpu.\n" -#: as.c:669 +#: as.c:717 #, c-format msgid "This assembler was configured for a target of `%s'.\n" msgstr "Este ensamblador se configuró para un objetivo «%s».\n" -#: as.c:677 +#: as.c:725 msgid "multiple emulation names specified" msgstr "se especificaron múltiples nombres de emulación" -#: as.c:679 +#: as.c:727 msgid "emulations not handled in this configuration" msgstr "las emulaciones no se manejan en esta configuración" -#: as.c:684 +#: as.c:732 #, c-format msgid "alias = %s\n" msgstr "alias = %s\n" -#: as.c:685 +#: as.c:733 #, c-format msgid "canonical = %s\n" msgstr "canónico = %s\n" -#: as.c:686 +#: as.c:734 #, c-format msgid "cpu-type = %s\n" msgstr "tipo-cpu = %s\n" -#: as.c:688 +#: as.c:736 #, c-format msgid "format = %s\n" msgstr "formato = %s\n" -#: as.c:691 +#: as.c:739 #, c-format msgid "bfd-target = %s\n" msgstr "objetivo-bfd = %s\n" -#: as.c:708 +#: as.c:750 +msgid "--compress-debug-sections=zstd: gas is not built with zstd support" +msgstr "--compress-debug-sections=zstd: gas no está construido con soporte zstd" + +#: as.c:754 #, c-format msgid "Invalid --compress-debug-sections option: `%s'" -msgstr "Opción invalida --compress-debug-sections: «%s»" +msgstr "Opción no valida de --compress-debug-sections: «%s»" -#: as.c:711 +#: as.c:757 #, c-format msgid "--compress-debug-sections=%s is unsupported" -msgstr "--compress-debug-sections=%s no es compatible" +msgstr "--compress-debug-sections=%s no está disponible" -#: as.c:736 +#: as.c:782 msgid "bad defsym; format is --defsym name=value" -msgstr "defsym equivocado; el formato es --defsym nombre=valor" +msgstr "defsym incorrecto; el formato es --defsym nombre=valor" -#: as.c:756 +#: as.c:800 msgid "no file name following -t option" msgstr "no hay un nombre de fichero a continuación de la opción -t" -#: as.c:771 +#: as.c:809 #, c-format msgid "failed to read instruction table %s\n" -msgstr "falló al leer la distribución de instrucciones %s\n" +msgstr "fallo al leer la table de instrucciones %s\n" -#: as.c:887 +#: as.c:831 +#, c-format +msgid "unknown DWARF option %s\n" +msgstr "Opción DWARF desconocida %s\n" + +#: as.c:833 +#, c-format +msgid "unknown option `%s'" +msgstr "opción desconocida «%s»" + +#: as.c:890 +#, c-format +msgid "Invalid --gdwarf-cie-version `%s'" +msgstr "Opción no válida de --gdwarf-cie-version «%s»" + +#: as.c:990 +#, c-format +msgid "Invalid --scfi= option: `%s'; suggested option: experimental" +msgstr "Opción no válida de --scfi= : «%s»; se sugiere esta opción: xperimental" + +#: as.c:1001 #, c-format msgid "Invalid --size-check= option: `%s'" -msgstr "Invalida opción --size-check=: «%s»" +msgstr "Opción no válida de --size-check=: «%s»" -#: as.c:896 +#: as.c:1010 #, c-format msgid "Invalid --elf-stt-common= option: `%s'" -msgstr "Invalida opción no reconocida --elf-stt-common «%s»" +msgstr "Opción no válida de --elf-stt-common=: «%s»" -#: as.c:969 +#: as.c:1024 #, c-format -msgid "invalid listing option `%c'" -msgstr "invalida listado de opción `%c'" +msgid "Invalid --generate-missing-build-notes option: `%s'" +msgstr "Opción no valida de --generate-missing-build-notes: «%s»" -#: as.c:1022 -msgid "--hash-size needs a numeric argument" -msgstr "--hash-size necesita un argumento numérico" +#: as.c:1102 +#, c-format +msgid "invalid listing option `%c'" +msgstr "opción de listado no válida `%c'" -#: as.c:1044 +#: as.c:1165 #, c-format msgid "%s: total time in assembly: %ld.%06ld\n" msgstr "%s: tiempo total en ensamblado: %ld.%06ld\n" -#: as.c:1325 +#: as.c:1263 +msgid "libbfd ABI mismatch" +msgstr "ABI de libbfd no coincidente" + +#: as.c:1427 +#, c-format +msgid "The input '%s' and output '%s' files are the same" +msgstr "Los ficheros de entrada «%s» y de salida «%s» son el mismo" + +#: as.c:1480 #, c-format msgid "%d warning" msgid_plural "%d warnings" msgstr[0] "%d aviso" msgstr[1] "%d avisos" -#: as.c:1327 +#: as.c:1482 #, c-format msgid "%d error" msgid_plural "%d errors" msgstr[0] "%d error" msgstr[1] "%d errores" -#: as.c:1331 +#: as.c:1486 #, c-format msgid "%s, treating warnings as errors" -msgstr "%s , tratando avisos como errores" +msgstr "%s , se tratan los avisos como errores" -#: as.c:1342 +#: as.c:1497 #, c-format msgid "%s, %s, generating bad object file\n" -msgstr "%s, %s, generando fichero objeto equivocado\n" +msgstr "%s, %s, generando fichero objeto incorrecto\n" -#: as.h:173 +#: as.h:134 #, c-format msgid "Case value %ld unexpected at line %d of file \"%s\"\n" msgstr "Valor de case %ld inesperado en la línea %d del fichero «%s»\n" @@ -576,528 +696,622 @@ msgstr "Valor de case %ld inesperado en la línea %d del fichero «%s»\n" #. * We have a GROSS internal error. #. * This should never happen. #. -#: atof-generic.c:418 config/tc-m68k.c:3582 +#: atof-generic.c:456 config/tc-m68k.c:3485 msgid "failed sanity check" -msgstr "falló la prueba de sanidad" - -#: cgen.c:107 config/tc-alpha.c:2099 config/tc-alpha.c:2123 -#: config/tc-arc.c:4013 config/tc-arc.c:4087 config/tc-d10v.c:550 -#: config/tc-d30v.c:537 config/tc-mn10200.c:1098 config/tc-mn10300.c:1752 -#: config/tc-ppc.c:2987 config/tc-ppc.c:3173 config/tc-ppc.c:3438 -#: config/tc-s390.c:1323 config/tc-s390.c:1446 config/tc-s390.c:1584 -#: 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 +msgstr "la inspección sanitaria ha fallado" + +#: cgen.c:106 config/tc-alpha.c:2097 config/tc-alpha.c:2121 +#: config/tc-arc.c:4075 config/tc-arc.c:4148 config/tc-d10v.c:550 +#: config/tc-d30v.c:534 config/tc-mn10200.c:1093 config/tc-mn10300.c:1753 +#: config/tc-ppc.c:3954 config/tc-s390.c:1824 config/tc-v850.c:2530 +#: config/tc-v850.c:2601 config/tc-v850.c:2648 config/tc-v850.c:2685 +#: config/tc-v850.c:2722 config/tc-v850.c:2986 msgid "too many fixups" -msgstr "demasiadas composturas" +msgstr "demasiadas reparaciones" -#: cgen.c:372 cgen.c:392 config/tc-d10v.c:461 config/tc-d30v.c:453 -#: config/tc-i370.c:2127 config/tc-mn10200.c:1040 config/tc-mn10300.c:1677 -#: config/tc-ppc.c:3029 config/tc-s390.c:1307 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 +#: cgen.c:371 cgen.c:393 config/tc-d10v.c:461 config/tc-d30v.c:450 +#: config/tc-mn10200.c:1035 config/tc-mn10300.c:1678 config/tc-ppc.c:3483 +#: config/tc-v850.c:2639 config/tc-v850.c:2673 config/tc-v850.c:2713 +#: config/tc-v850.c:2959 config/tc-z80.c:785 msgid "illegal operand" msgstr "operando ilegal" -#: cgen.c:396 config/tc-avr.c:899 config/tc-d10v.c:463 config/tc-d30v.c:455 -#: config/tc-h8300.c:502 config/tc-i370.c:2129 config/tc-mcore.c:661 -#: config/tc-microblaze.c:609 config/tc-mmix.c:495 config/tc-mn10200.c:1043 -#: config/tc-mn10300.c:1680 config/tc-msp430.c:417 config/tc-ppc.c:3031 -#: config/tc-s390.c:1312 config/tc-sh.c:1385 config/tc-sh64.c:2214 -#: 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 +#: cgen.c:397 config/tc-avr.c:910 config/tc-d10v.c:463 config/tc-d30v.c:452 +#: config/tc-h8300.c:495 config/tc-mcore.c:662 config/tc-microblaze.c:585 +#: config/tc-mmix.c:485 config/tc-mn10200.c:1038 config/tc-mn10300.c:1681 +#: config/tc-msp430.c:417 config/tc-ppc.c:3485 config/tc-sh.c:988 +#: config/tc-v850.c:2643 config/tc-v850.c:2677 config/tc-v850.c:2717 +#: config/tc-v850.c:2962 config/tc-xgate.c:895 config/tc-z80.c:933 #: config/tc-z8k.c:349 msgid "missing operand" -msgstr "ausente operando" +msgstr "falta operando" -#: cgen.c:767 +#: cgen.c:774 msgid "a reloc on this operand implies an overflow" -msgstr "una reubicación en este operando implica un desbordamiento" +msgstr "la reubicación de este operando implica desbordamiento" -#: cgen.c:790 +#: cgen.c:797 msgid "operand mask overflow" msgstr "desbordamiento de máscara de operando" -#. We can't actually support subtracting a symbol. -#: cgen.c:851 config/tc-arm.c:1776 config/tc-arm.c:10346 config/tc-arm.c:10398 -#: config/tc-arm.c:10656 config/tc-arm.c:11493 config/tc-arm.c:12630 -#: config/tc-arm.c:12670 config/tc-arm.c:13013 config/tc-arm.c:13054 -#: config/tc-arm.c:17513 config/tc-arm.c:17554 config/tc-avr.c:1550 -#: config/tc-avr.c:1562 config/tc-avr.c:1826 config/tc-cris.c:4067 -#: config/tc-d10v.c:1507 config/tc-d30v.c:1912 config/tc-ft32.c:574 -#: config/tc-ft32.c:587 config/tc-mips.c:9438 config/tc-mips.c:10743 -#: config/tc-mips.c:11999 config/tc-mips.c:12658 config/tc-nds32.c:6587 -#: config/tc-pru.c:747 config/tc-pru.c:757 config/tc-spu.c:957 -#: config/tc-spu.c:981 config/tc-tilegx.c:1485 config/tc-tilepro.c:1346 -#: config/tc-v850.c:3451 config/tc-vax.c:282 config/tc-xstormy16.c:482 -#: config/tc-xtensa.c:5949 config/tc-xtensa.c:13095 +#: cgen.c:860 config/tc-arm.c:2042 config/tc-arm.c:11126 config/tc-arm.c:11178 +#: config/tc-arm.c:11466 config/tc-arm.c:12364 config/tc-arm.c:13513 +#: config/tc-arm.c:13553 config/tc-arm.c:13926 config/tc-arm.c:13968 +#: config/tc-arm.c:21213 config/tc-arm.c:21273 config/tc-mips.c:9707 +#: config/tc-mips.c:11025 config/tc-mips.c:12322 config/tc-mips.c:13003 +#: config/tc-spu.c:980 config/tc-xtensa.c:13107 msgid "expression too complex" msgstr "expresión demasiado compleja" -#: cgen.c:950 config/tc-ppc.c:7027 config/tc-s390.c:2365 config/tc-v850.c:3503 -#: config/tc-xstormy16.c:539 +#: cgen.c:961 config/tc-ppc.c:7491 config/tc-s390.c:2602 config/tc-v850.c:3492 +#: config/tc-xstormy16.c:541 msgid "unresolved expression that must be resolved" msgstr "expresión sin resolver que se debe resolver" -#: cgen.c:975 config/tc-xstormy16.c:564 +#: cgen.c:986 config/tc-bpf.c:884 config/tc-xstormy16.c:566 #, c-format msgid "internal error: can't install fix for reloc type %d (`%s')" -msgstr "error interno: no se puede instalar la compostura para el tipo reubicado %d («%s»)" +msgstr "error interno: no se puede instalar la reparación para el tipo reubicado %d («%s»)" -#: cgen.c:1026 config/tc-nios2.c:1360 config/tc-pru.c:788 +#: cgen.c:1039 config/tc-bpf.c:368 config/tc-pru.c:786 msgid "relocation is not supported" msgstr "no se admite la reubicación" -#: cond.c:82 +#: codeview.c:435 +#, c-format +msgid "could not open %s for reading" +msgstr "no se ha podido abrir %s para lectura" + +#: codeview.c:440 +msgid "md5_stream failed" +msgstr "md5_stream ha fallado" + +#: codeview.c:548 +msgid "value cannot be expressed as a .cv_scomp" +msgstr "el valor no puede expresarse como un .cv_scomp" + +#: codeview.c:556 +msgid "value cannot be expressed as a .cv_ucomp" +msgstr "el valor no puede expresarse como un .cv_ucomp" + +#: cond.c:84 msgid "invalid identifier for \".ifdef\"" msgstr "identificador inválido para \".ifdef\"" -#: cond.c:149 +#: cond.c:151 msgid "non-constant expression in \".if\" statement" -msgstr "expresión en declaración \".if\" no constante" +msgstr "expresión no constante en sentencia \".if\"" -#: cond.c:276 +#: cond.c:279 msgid "bad format for ifc or ifnc" -msgstr "formato equivocado para ifc ó ifnc" +msgstr "formato incorrecto para ifc ó ifnc" -#: cond.c:306 +#: cond.c:310 msgid "\".elseif\" without matching \".if\"" -msgstr "\".elseif\" sin coincidir con \".if\"" +msgstr "\".elseif\" sin su correspondiente \".if\"" -#: cond.c:310 +#: cond.c:314 msgid "\".elseif\" after \".else\"" -msgstr "\".elseif\" tras \".else\"" +msgstr "\".elseif\" después de \".else\"" -#: cond.c:313 cond.c:419 +#: cond.c:317 cond.c:423 msgid "here is the previous \".else\"" msgstr "aquí está el anterior \".else\"" -#: cond.c:316 cond.c:422 +#: cond.c:320 cond.c:426 msgid "here is the previous \".if\"" msgstr "aquí está el anterior \".if\"" -#: cond.c:345 +#: cond.c:349 msgid "non-constant expression in \".elseif\" statement" -msgstr "expresión no constante en \".elseif\" declarado" +msgstr "expresión no constante en sentencia \".elseif\"" -#: cond.c:383 +#: cond.c:387 msgid "\".endif\" without \".if\"" msgstr "\".endif\" sin \".if\"" -#: cond.c:412 +#: cond.c:416 msgid "\".else\" without matching \".if\"" -msgstr "\".else\" sin coincidir un \".if\"" +msgstr "\".else\" sin su correspondiente \".if\"" -#: cond.c:416 +#: cond.c:420 msgid "duplicate \".else\"" -msgstr "duplica \".else\"" +msgstr "\".else\" duplicado" -#: cond.c:467 +#: cond.c:471 msgid ".ifeqs syntax error" -msgstr "error sintáctico en .ifeqs" +msgstr "error de sintaxis en .ifeqs" -#: cond.c:548 +#: cond.c:559 msgid "end of macro inside conditional" msgstr "fin de macro dentro de un condicional" -#: cond.c:550 +#: cond.c:561 msgid "end of file inside conditional" msgstr "final de fichero dentro de un condicional" -#: cond.c:553 +#: cond.c:565 msgid "here is the start of the unterminated conditional" -msgstr "aquí es el inicio del condicional sin terminar" +msgstr "aquí está el comienzo del condicional sin terminar" -#: cond.c:557 +#: cond.c:569 msgid "here is the \"else\" of the unterminated conditional" msgstr "aquí está el \"else\" del condicional sin terminar" -#: config/atof-ieee.c:139 +#: config/atof-ieee.c:148 msgid "cannot create floating-point number" msgstr "no se puede crear el número de coma flotante" -#: config/atof-ieee.c:286 -msgid "NaNs are not supported by this target\n" -msgstr "No se admiten NaNs en este objetivo\n" +#: config/atof-ieee.c:335 +msgid "NaNs are not supported by this target" +msgstr "No se admiten NaNs en este objetivo" + +#: config/atof-ieee.c:354 +msgid "NaN flavors are not supported by this target" +msgstr "No se admiten variantes de NaNs en este objetivo" -#: config/atof-ieee.c:325 config/atof-ieee.c:366 -msgid "Infinities are not supported by this target\n" -msgstr "No se admiten infinitos en este objetivo\n" +#: config/atof-ieee.c:392 +msgid "Infinities are not supported by this target" +msgstr "No se admiten infinitos en este objetivo" -#: config/atof-ieee.c:781 config/atof-vax.c:449 config/tc-arm.c:1152 -#: config/tc-ia64.c:11608 config/tc-tic30.c:1263 config/tc-tic4x.c:2585 +#: config/atof-ieee.c:825 config/atof-vax.c:449 config/tc-arm.c:1271 +#: config/tc-ia64.c:11573 config/tc-tic30.c:1241 config/tc-tic4x.c:2569 msgid "Unrecognized or unsupported floating point constant" msgstr "No reconoce o no admite constante de coma flotante" #: config/obj-aout.c:81 #, c-format msgid "Attempt to put a common symbol into set %s" -msgstr "Intentaba poner un símbolo común en el conjunto %s" +msgstr "Intento de poner un símbolo común en el conjunto %s" #: config/obj-aout.c:85 #, c-format msgid "Attempt to put an undefined symbol into set %s" -msgstr "Intentaba poner un símbolo indefinido en el conjunto %s" +msgstr "Intento de poner un símbolo indefinido en el conjunto %s" -#: config/obj-aout.c:112 config/obj-coff.c:1382 +#: config/obj-aout.c:112 config/obj-coff.c:1378 #, c-format msgid "Symbol `%s' can not be both weak and common" msgstr "El símbolo «%s» no puede ser débil y común al mismo tiempo" -#: config/obj-coff.c:135 dw2gencfi.c:334 -#, c-format -msgid "Inserting \"%s\" into structure table failed: %s" -msgstr "Falló la inserción de «%s» en la distribución de estructuras: %s" - -#: config/obj-coff.c:214 config/obj-coff.c:1681 config/tc-ppc.c:5647 -#: config/tc-tic54x.c:3980 read.c:2960 +#: config/obj-coff.c:206 config/obj-coff.c:1693 config/tc-tic54x.c:4002 +#: read.c:3047 #, c-format msgid "error setting flags for \"%s\": %s" -msgstr "error al establecer las casillas para «%s»: %s" +msgstr "error al establecer las opciones para «%s»: %s" #. Zero is used as an end marker in the file. -#: config/obj-coff.c:435 +#: config/obj-coff.c:424 msgid "Line numbers must be positive integers\n" msgstr "Los números de línea deben ser enteros positivos\n" -#: config/obj-coff.c:467 +#: config/obj-coff.c:456 msgid ".ln pseudo-op inside .def/.endef: ignored." -msgstr ".ln como pseudo-operador dentro de .def/.endef: se descarta." +msgstr "pseudo-operador .ln dentro de .def/.endef: se descarta." -#: config/obj-coff.c:509 ecoff.c:3245 +#: config/obj-coff.c:497 ecoff.c:3232 msgid ".loc outside of .text" msgstr ".loc fuera de .text" -#: config/obj-coff.c:516 +#: config/obj-coff.c:504 msgid ".loc pseudo-op inside .def/.endef: ignored." msgstr "pseudo-operador .loc dentro de .def/.endef: se descarta." -#: config/obj-coff.c:596 +#: config/obj-coff.c:584 msgid ".def pseudo-op used inside of .def/.endef: ignored." msgstr "se usó el pseudo-operador .def dentro de .def/.endef: se descarta." -#: config/obj-coff.c:629 +#: config/obj-coff.c:617 msgid ".endef pseudo-op used outside of .def/.endef: ignored." msgstr "se usó el pseudo-operador .endef fuera de .def/.endef: se descarta." -#: config/obj-coff.c:668 +#: config/obj-coff.c:656 #, c-format msgid "`%s' symbol without preceding function" -msgstr "símbolo «%s» sin una función precedente" +msgstr "símbolo «%s» sin función que lo preceda" -#: config/obj-coff.c:755 +#: config/obj-coff.c:743 #, c-format msgid "unexpected storage class %d" msgstr "clase de almacenamiento %d inesperada" -#: config/obj-coff.c:863 +#: config/obj-coff.c:850 msgid ".dim pseudo-op used outside of .def/.endef: ignored." msgstr "se usó el pseudo-operador .dim fuera de .def/.endef: se descarta." -#: config/obj-coff.c:883 +#: config/obj-coff.c:870 msgid "badly formed .dim directive ignored" -msgstr "se descarta la directiva .dim formada equivocadamente" +msgstr "se descarta la directiva .dim formada incorrectamente" -#: config/obj-coff.c:932 +#: config/obj-coff.c:919 msgid ".size pseudo-op used outside of .def/.endef: ignored." -msgstr "se utiliza el pseudo-operador .size fuera de .def/.endef: descartado." +msgstr "pseudo-operador .size utilizado fuera de .def/.endef: descartado." -#: config/obj-coff.c:947 +#: config/obj-coff.c:934 msgid ".scl pseudo-op used outside of .def/.endef: ignored." -msgstr "se utiliza el pseudo-operador .scl fuera de .def/.endef: descartado." +msgstr "pseudo-operador .scl utilizado fuera de .def/.endef: descartado." -#: config/obj-coff.c:964 +#: config/obj-coff.c:951 msgid ".tag pseudo-op used outside of .def/.endef: ignored." -msgstr "se utiliza el pseudo-operador .tag fuera de .def/.endef; descartado." +msgstr "pseudo-operador .tag utilizado fuera de .def/.endef; descartado." -#: config/obj-coff.c:981 +#: config/obj-coff.c:968 #, c-format msgid "tag not found for .tag %s" -msgstr "no se encontró una marca para .tag %s" +msgstr "no se encontró etiqueta para .tag %s" -#: config/obj-coff.c:994 +#: config/obj-coff.c:981 msgid ".type pseudo-op used outside of .def/.endef: ignored." -msgstr "se utiliza el pseudo-operador .type fuera de .def/.endef; descartado." +msgstr "pseudo-operador .type utilizado fuera de .def/.endef; descartado." -#: config/obj-coff.c:1013 +#: config/obj-coff.c:1000 msgid ".val pseudo-op used outside of .def/.endef: ignored." -msgstr "se utiliza el pseudo-operador .val fuera de .def/.endef; descartado." +msgstr "pseudo-operador .val utilizado fuera de .def/.endef; descartado." -#: config/obj-coff.c:1160 +#: config/obj-coff.c:1147 msgid "badly formed .weak directive ignored" -msgstr "se descarta la directiva .weak formada equivocadamente" +msgstr "se descarta la directiva .weak formada incorrectamente" -#: config/obj-coff.c:1338 +#: config/obj-coff.c:1334 msgid "mismatched .eb" msgstr ".eb sin coincidencia" -#: config/obj-coff.c:1361 +#: config/obj-coff.c:1357 #, c-format msgid "C_EFCN symbol for %s out of scope" -msgstr "C_EFCN comoo símbolo para %s fuera de ámbito" +msgstr "símbolo C_EFCN para %s fuera de ámbito" -#: config/obj-coff.c:1415 +#: config/obj-coff.c:1412 #, c-format msgid "Warning: internal error: forgetting to set endndx of %s" -msgstr "Aviso: error interno: se olvida definir endndx de %s" +msgstr "Aviso: error interno: se olvida establecer el endndx de %s" #. STYP_INFO #. STYP_LIB #. STYP_OVER -#: config/obj-coff.c:1646 +#: config/obj-coff.c:1655 #, c-format msgid "unsupported section attribute '%c'" -msgstr "no se admite el atributo seccional '%c'" +msgstr "no se admite el atributo de sección '%c'" -#: config/obj-coff.c:1650 config/tc-ppc.c:5629 +#: config/obj-coff.c:1659 #, c-format msgid "unknown section attribute '%c'" -msgstr "desconoce atributo seccional '%c'" +msgstr "atributo de sección desconocido '%c'" -#: config/obj-coff.c:1693 config/obj-macho.c:267 +#: config/obj-coff.c:1705 config/obj-macho.c:269 #, c-format msgid "Ignoring changed section attributes for %s" -msgstr "Se descartan los atributos seccional cambiados para %s" +msgstr "Se descartan los atributos sección cambiados para %s" -#: config/obj-coff.c:1831 +#: config/obj-coff.c:1849 #, c-format msgid "0x%lx: \"%s\" type = %ld, class = %d, segment = %d\n" msgstr "0x%lx: «%s» tipo = %ld, clase = %d, segmento = %d\n" -#: config/obj-ecoff.c:124 +#: config/obj-ecoff.c:125 msgid "Can't set GP value" msgstr "No se puede establecer el valor GP" -#: config/obj-ecoff.c:131 +#: config/obj-ecoff.c:132 msgid "Can't set register masks" msgstr "No se pueden establecer las máscaras de registro" -#: config/obj-elf.c:348 config/tc-sparc.c:4564 config/tc-v850.c:511 +#: config/obj-elf.c:272 config/tc-sparc.c:4383 config/tc-v850.c:508 #, c-format msgid "bad .common segment %s" -msgstr "segmento .common %s equivocado" +msgstr "segmento .common %s incorrecto" -#: config/obj-elf.c:424 +#: config/obj-elf.c:348 config/tc-aarch64.c:2278 config/tc-kvx.c:2235 msgid "Missing symbol name in directive" -msgstr "Ausente nombre simbólico en la directiva" +msgstr "Falta el nombre de símbolo en la directiva" -#: config/obj-elf.c:646 +#: config/obj-elf.c:678 #, c-format msgid "setting incorrect section type for %s" -msgstr "se establece un tipo seccional incorrecto para %s" +msgstr "se establece un tipo de sección incorrecto para %s" -#: config/obj-elf.c:651 +#: config/obj-elf.c:683 #, c-format msgid "ignoring incorrect section type for %s" -msgstr "se descarta el tipo seccional incorrecto para %s" +msgstr "se descarta el tipo de sección incorrecto para %s" -#: config/obj-elf.c:702 +#: config/obj-elf.c:742 #, c-format msgid "setting incorrect section attributes for %s" -msgstr "se establecen atributos seccional incorrectos para %s" +msgstr "se establecen atributos de sección incorrectos para %s" -#: config/obj-elf.c:713 +#. This is a special section with known type. User +#. assembly might get the section type wrong; Even high +#. profile projects like glibc have done so in the past. +#. So don't error in this case. +#: config/obj-elf.c:836 #, c-format -msgid "SHF_ALLOC isn't set for GNU_MBIND section: %s" -msgstr "SHF_ALLOC no está establecido para sección GNU_MBIND: %s" +msgid "ignoring changed section type for %s" +msgstr "se descarta el tipo de sección cambiado para %s" -#: config/obj-elf.c:762 +#. Do error when assembly isn't self-consistent. +#: config/obj-elf.c:839 #, c-format -msgid "ignoring changed section type for %s" -msgstr "se descarta el tipo seccional cambiado para %s" +msgid "changed section type for %s" +msgstr "tipo de sección cambiado para %s" -#: config/obj-elf.c:774 +#: config/obj-elf.c:854 #, c-format msgid "ignoring changed section attributes for %s" -msgstr "se descartan los atributos seccional cambiados para %s" +msgstr "se descartan los atributos de sección cambiados para %s" + +#: config/obj-elf.c:856 +#, c-format +msgid "changed section attributes for %s" +msgstr "atributos de sección cambiados para %s" -#: config/obj-elf.c:781 +#: config/obj-elf.c:865 #, c-format -msgid "ignoring changed section entity size for %s" -msgstr "se descarta el tamaño de entidad seccional cambiado para %s" +msgid "changed section entity size for %s" +msgstr "tamaño de entidad de sección cambiado para %s" -#: config/obj-elf.c:845 -msgid "unrecognized .section attribute: want a,e,w,x,M,S,G,T or number" -msgstr "no reconocido atributo .section: requiere a,e,w,x,M,S,G,T o número" +#: config/obj-elf.c:947 +msgid "unrecognized .section attribute: want a,e,o,w,x,M,S,G,T or number" +msgstr "atributo de .section no reconocido: se desea a,e,o,w,x,M,S,G,T o número" -#: config/obj-elf.c:905 +#: config/obj-elf.c:1033 msgid "extraneous characters at end of numeric section type" -msgstr "extraños caracteres al final de tipo seccional numérico" +msgstr "caracteres extraños al final de tipo de sección numérico" -#: config/obj-elf.c:911 read.c:2944 +#: config/obj-elf.c:1039 read.c:3031 msgid "unrecognized section type" -msgstr "no reconocido el tipo seccional" +msgstr "tipo de sección no reconocido" -#: config/obj-elf.c:943 +#: config/obj-elf.c:1064 msgid "unrecognized section attribute" -msgstr "no reconocido el atributo seccional" +msgstr "atributo de sección no reconocido" -#: config/obj-elf.c:974 config/tc-alpha.c:4208 +#: config/obj-elf.c:1096 config/tc-alpha.c:4208 msgid "missing name" -msgstr "ausente nombre" +msgstr "falta el nombre" + +#: config/obj-elf.c:1166 +msgid "group name not parseable" +msgstr "nombre de grupo no analizable" + +#: config/obj-elf.c:1173 +#, c-format +msgid "section %s already has a group (%s)" +msgstr "la sección %s ya tiene un grupo (%s)" + +#: config/obj-elf.c:1226 +#, c-format +msgid "section name '%s' already defined as another symbol" +msgstr "el nombre de sección «%s» ya está definido como otro símbolo" + +#: config/obj-elf.c:1331 +msgid "invalid merge / string entity size" +msgstr "mezcla / tamaño de entidad de cadena no válido(s)" -#: config/obj-elf.c:1134 -msgid "invalid merge entity size" -msgstr "tamaño de entidad de mezcla inválido" +#: config/obj-elf.c:1345 +msgid "entity size for SHF_MERGE / SHF_STRINGS not specified" +msgstr "no se especificó el tamaño de entidad para SHF_MERGE / SHF_STRINGS" -#: config/obj-elf.c:1141 -msgid "entity size for SHF_MERGE not specified" -msgstr "no se especificó el tamaño de entidad para SHF_MERGE" +#: config/obj-elf.c:1350 +msgid "bogus SHF_MERGE / SHF_STRINGS for SHT_NOBITS section" +msgstr "SHF_MERGE / SHF_STRINGS falso para sección SHT_NOBITS" -#: config/obj-elf.c:1147 +#: config/obj-elf.c:1391 msgid "? section flag ignored with G present" -msgstr "se descarta la opción seccional ? con G presente" +msgstr "se descarta la opción de sección ? con G presente" -#: config/obj-elf.c:1171 +#: config/obj-elf.c:1428 msgid "group name for SHF_GROUP not specified" -msgstr "no se especificó el tamaño de entidad para SHF_GROUP" +msgstr "no se especificó el nombre de grupo para SHF_GROUP" -#: config/obj-elf.c:1196 +#: config/obj-elf.c:1454 #, c-format msgid "unsupported mbind section info: %s" -msgstr "informe seccional mbind no admitido: %s" +msgstr "información de sección mbind no admitida: %s" + +#: config/obj-elf.c:1507 +#, c-format +msgid "unsupported section id: %s" +msgstr "id de sección: %s" -#: config/obj-elf.c:1211 +#: config/obj-elf.c:1533 msgid "character following name is not '#'" -msgstr "el carácter a continuación del nombre no es '#'" +msgstr "el carácter que sigue al nombre no es '#'" -#: config/obj-elf.c:1331 +#: config/obj-elf.c:1561 +#, c-format +msgid "SHF_ALLOC isn't set for GNU_MBIND section: %s" +msgstr "SHF_ALLOC no está establecido para sección GNU_MBIND: %s" + +#: config/obj-elf.c:1568 +#, c-format +msgid "%s section is supported only by GNU and FreeBSD targets" +msgstr "la sección %s solo se admite en objetivos GNU y FreeBSD" + +#: config/obj-elf.c:1706 msgid ".previous without corresponding .section; ignored" msgstr ".previous sin .section correspondiente; se descarta" -#: config/obj-elf.c:1357 +#: config/obj-elf.c:1732 msgid ".popsection without corresponding .pushsection; ignored" msgstr ".popsection sin .pushsection correspondiente; se descarta" -#: config/obj-elf.c:1403 -msgid "expected comma after name in .symver" -msgstr "se esperaba una coma tras nombre en .symver" +#: config/obj-elf.c:1776 config/obj-elf.c:1870 +#, c-format +msgid "missing version name in `%s' for symbol `%s'" +msgstr "falta el nombre de versión en «%s» para el símbolo «%s»" -#: config/obj-elf.c:1419 config/obj-elf.c:2291 +#: config/obj-elf.c:1795 #, c-format -msgid "`%s' can't be versioned to common symbol '%s'" -msgstr "«%s» no puede ser versionado al símbolo común «%s»" +msgid "only one version name with `@@@' is allowed for symbol `%s'" +msgstr "solo se permite un nombre de versión con «@@@» para el símbolo «%s»" -#: config/obj-elf.c:1434 +#: config/obj-elf.c:1803 #, c-format -msgid "missing version name in `%s' for symbol `%s'" -msgstr "ausente el nombre de versión en «%s» para el símbolo «%s»" +msgid "invalid version name '%s' for symbol `%s'" +msgstr "nombre de versión «%s» no válido para el símbolo «%s»" -#: config/obj-elf.c:1445 +#: config/obj-elf.c:1844 +msgid "expected comma after name in .symver" +msgstr "se esperaba una coma tras el nombre en .symver" + +#: config/obj-elf.c:1861 config/obj-elf.c:2805 #, c-format -msgid "multiple versions [`%s'|`%s'] for symbol `%s'" -msgstr "versiones múltiples [«%s»|«%s»] para el símbolo «%s»" +msgid "`%s' can't be versioned to common symbol '%s'" +msgstr "«%s» no puede ser versionado al símbolo común «%s»" -#: config/obj-elf.c:1481 +#: config/obj-elf.c:1938 #, c-format msgid "expected `%s' to have already been set for .vtable_inherit" msgstr "se esperaba que «%s» ya estuviera definido para .vtable_inherit" -#: config/obj-elf.c:1491 +#: config/obj-elf.c:1948 msgid "expected comma after name in .vtable_inherit" -msgstr "se esperaba una coma tras nombre en .vtable_inherit" +msgstr "se esperaba una coma tras el nombre en .vtable_inherit" -#: config/obj-elf.c:1543 +#: config/obj-elf.c:2009 msgid "expected comma after name in .vtable_entry" -msgstr "se esperaba una coma tras nombre en .vtable_entry" +msgstr "se esperaba una coma tras el nombre en .vtable_entry" -#: config/obj-elf.c:1673 +#: config/obj-elf.c:2148 #, c-format msgid "Attribute name not recognised: %s" -msgstr "No reconocido el nombre del atributo: %s" +msgstr "Nombre de atributo no reconocido: %s" -#: config/obj-elf.c:1690 +#: config/obj-elf.c:2165 msgid "expected numeric constant" msgstr "se esperaba una constante numérica" -#: config/obj-elf.c:1699 config/tc-arm.c:6473 +#: config/obj-elf.c:2174 config/tc-arm.c:6970 msgid "expected comma" msgstr "se esperaba una coma" -#: config/obj-elf.c:1732 +#: config/obj-elf.c:2205 config/tc-arc.c:4946 config/tc-arc.c:4957 +#: config/tc-arc.c:5029 config/tc-arc.c:5080 config/tc-arm.c:32197 +#: config/tc-arm.c:32208 config/tc-csky.c:1697 config/tc-csky.c:1709 +#: config/tc-csky.c:1880 config/tc-mips.c:20645 config/tc-msp430.c:5148 +#: config/tc-riscv.c:5523 config/tc-riscv.c:5566 config/tc-sparc.c:1134 +#: config/tc-tic6x.c:4384 +#, c-format +msgid "error adding attribute: %s" +msgstr "error al añadir atributo: %s" + +#: config/obj-elf.c:2211 msgid "bad string constant" -msgstr "constante de cadena equivocada" +msgstr "constante de cadena incorrecta" -#: config/obj-elf.c:1736 +#: config/obj-elf.c:2215 msgid "expected <tag> , <value>" -msgstr "se esperaba <etiq> , <valor>" +msgstr "se esperaba <etiqueta> , <valor>" -#: config/obj-elf.c:1856 +#: config/obj-elf.c:2344 msgid "expected quoted string" msgstr "se esperaba una cadena entre comillas" -#: config/obj-elf.c:1876 +#: config/obj-elf.c:2364 #, c-format msgid "expected comma after name `%s' in .size directive" -msgstr "se esperaba una coma tras nombre «%s» en la directiva .size" +msgstr "se esperaba una coma tras el nombre «%s» en la directiva .size" -#: config/obj-elf.c:1885 +#: config/obj-elf.c:2373 msgid "missing expression in .size directive" -msgstr "ausentea expresión en la directiva .size" +msgstr "falta expresión en la directiva .size" -#: config/obj-elf.c:2008 +#: config/obj-elf.c:2500 #, c-format msgid "symbol '%s' is already defined" msgstr "el símbolo «%s» ya está definido" -#: config/obj-elf.c:2029 +#: config/obj-elf.c:2520 #, c-format msgid "symbol type \"%s\" is supported only by GNU and FreeBSD targets" -msgstr "el tipo simbólico «%s» sólo se admite en objetivos GNU y FreeBSD" +msgstr "el tipo de símbolo «%s» solo se admite en objetivos GNU y FreeBSD" -#: config/obj-elf.c:2041 +#: config/obj-elf.c:2524 +#, c-format +msgid "symbol type \"%s\" is not supported by MIPS targets" +msgstr "el tipo de símbolo «%s» no está disponible en objetivos MIPS" + +#: config/obj-elf.c:2536 #, c-format msgid "symbol type \"%s\" is supported only by GNU targets" -msgstr "el tipo simbólico «%s» sólo se admite en objetivos GNU" +msgstr "el tipo de símbolo «%s» solo se admite en objetivos GNU" -#: config/obj-elf.c:2052 +#: config/obj-elf.c:2546 config/tc-kvx.c:2279 #, c-format msgid "unrecognized symbol type \"%s\"" -msgstr "no reconocido el tipo simbólico «%s»" +msgstr "tipo de símbolo no reconocido «%s»" + +#: config/obj-elf.c:2567 +#, c-format +msgid "cannot change type of common symbol '%s'" +msgstr "no puede cambiersa el tipo del símbolo común «%s»" -#: config/obj-elf.c:2219 config/obj-elf.c:2222 +#: config/obj-elf.c:2579 +#, c-format +msgid "symbol '%s' already has its type set" +msgstr "el símbolo «%s» ya tiene su tipo establecido" + +#: config/obj-elf.c:2681 +#, c-format +msgid "undefined linked-to symbol `%s' on section `%s'" +msgstr "símbolo enlazado-a `%s' en la sección `%s'" + +#: config/obj-elf.c:2778 config/obj-elf.c:2781 #, c-format msgid ".size expression for %s does not evaluate to a constant" msgstr "la expresión .size para %s no evalúa a una constante" -#: config/obj-elf.c:2256 +#: config/obj-elf.c:2870 #, c-format -msgid "invalid attempt to declare external version name as default in symbol `%s'" -msgstr "intento inválido de declarar un nombre de versión externo como valor por defecto en el símbolo «%s»" +msgid "symbol '%s' with multiple versions cannot be used in relocation" +msgstr "el símbolo «%s» con varias versiones no puede utilizarse en una reubicación" -#: config/obj-elf.c:2325 ecoff.c:3600 +#: config/obj-elf.c:2888 ecoff.c:3576 #, c-format msgid "symbol `%s' can not be both weak and common" msgstr "el símbolo «%s» no puede ser débil y común al mismo tiempo" -#: config/obj-elf.c:2437 +#: config/obj-elf.c:2932 #, c-format msgid "assuming all members of group `%s' are COMDAT" msgstr "se asume que todos los miembros del grupo «%s» son COMDAT" -#: config/obj-elf.c:2449 +#: config/obj-elf.c:2944 #, c-format msgid "can't create group: %s" -msgstr "no se puede crear un grupo: %s" +msgstr "no se puede crear el grupo: %s" + +#: config/obj-elf.c:3021 +#, c-format +msgid "invalid attempt to declare external version name as default in symbol `%s'" +msgstr "intento no válido de declarar un nombre de versión externo como predeterminado en el símbolo «%s»" -#: config/obj-elf.c:2603 +#: config/obj-elf.c:3031 +#, c-format +msgid "multiple versions [`%s'|`%s'] for symbol `%s'" +msgstr "varias versiones [«%s»|«%s»] para el símbolo «%s»" + +#: config/obj-elf.c:3120 #, c-format msgid "failed to set up debugging information: %s" msgstr "falló al establecer la información de depuración: %s" -#: config/obj-elf.c:2623 +#: config/obj-elf.c:3140 #, c-format msgid "can't start writing .mdebug section: %s" msgstr "no se puede iniciar la escritura de la sección .mdebug: %s" -#: config/obj-elf.c:2631 +#: config/obj-elf.c:3148 #, c-format msgid "could not write .mdebug section: %s" msgstr "no se puede escribir la sección .mdebug: %s" -#: config/obj-evax.c:127 +#: config/obj-evax.c:122 #, c-format msgid "no entry symbol for global function '%s'" -msgstr "no hay símbolo entrante para función global «%s»" +msgstr "no hay símbolo de entrada para la función global «%s»" #. make a temp string. #: config/obj-macho.c:119 @@ -1108,7 +1322,15 @@ msgstr "el nombre %s «%s» es demasiado largo (máximo 16 caracteres)" #: config/obj-macho.c:130 #, c-format msgid "expected a %s name followed by a `,'" -msgstr "esperaba una nombre %s seguido por una `,'" +msgstr "se esperaba un nombre de %s seguido por una `,'" + +#: config/obj-macho.c:144 +msgid "segment" +msgstr "segmento" + +#: config/obj-macho.c:153 +msgid "section" +msgstr "sección" #: config/obj-macho.c:195 #, c-format @@ -1118,159 +1340,159 @@ msgstr "no se puede invalidar tipo de sección rellenado a cero para `%s,%s'" #: config/obj-macho.c:249 #, c-format msgid "failed to set flags for \"%s\": %s" -msgstr "fallaba al establecer marcas para «%s»: %s" +msgstr "no se han podido establecer las opciones para «%s»: %s" -#: config/obj-macho.c:340 +#: config/obj-macho.c:342 #, c-format msgid "unknown or invalid section type '%s'" -msgstr "tipo seccional inválido o desconocido '%s'" +msgstr "tipo de sección inválido o desconocido '%s'" -#: config/obj-macho.c:379 +#: config/obj-macho.c:381 #, c-format msgid "unknown or invalid section attribute '%s'" -msgstr "desconoce o invalida atributo seccional «%s»" +msgstr "atributo de sección desconocido o no válido «%s»" -#: config/obj-macho.c:400 +#: config/obj-macho.c:402 msgid "unexpected section size information" -msgstr "información inesperada de tamaño seccional" +msgstr "información inesperada de tamaño de sección" -#: config/obj-macho.c:412 +#: config/obj-macho.c:414 msgid "missing sizeof_stub expression" -msgstr "ausentea expresión sizeof_stub" +msgstr "falta expresión sizeof_stub" -#: config/obj-macho.c:476 config/tc-ia64.c:1083 config/tc-ia64.c:11770 -#: config/tc-score.c:6103 expr.c:1172 expr.c:1325 read.c:1715 +#: config/obj-macho.c:478 config/tc-ia64.c:1080 config/tc-ia64.c:11734 +#: config/tc-score.c:6073 expr.c:1260 read.c:1784 msgid "expected symbol name" -msgstr "se esperaba un nombre simbólico" +msgstr "se esperaba un nombre de símbolo" -#: config/obj-macho.c:489 read.c:494 +#: config/obj-macho.c:491 read.c:558 msgid "bad or irreducible absolute expression" -msgstr "expresión absoluta equivocada o irreducible" +msgstr "expresión absoluta incorrecta o irreducible" -#: config/obj-macho.c:495 config/tc-score.c:6120 read.c:1753 +#: config/obj-macho.c:497 config/tc-score.c:6090 read.c:1823 msgid "missing size expression" -msgstr "ausentea expresión de tamaño" +msgstr "falta expresión de tamaño" -#: config/obj-macho.c:504 config/tc-ia64.c:1118 read.c:1759 +#: config/obj-macho.c:506 config/tc-ia64.c:1115 read.c:1829 #, c-format msgid "size (%ld) out of range, ignored" -msgstr "tamaño (%ld) fuera de límite, se descarta" +msgstr "tamaño (%ld) fuera de rango, se descarta" -#: config/obj-macho.c:514 config/tc-score.c:6264 dwarf2dbg.c:954 ecoff.c:3359 -#: read.c:1771 read.c:1876 read.c:2627 read.c:3270 read.c:3649 symbols.c:340 -#: symbols.c:436 +#: config/obj-macho.c:516 config/tc-score.c:6216 dwarf2dbg.c:1431 ecoff.c:3345 +#: read.c:1841 read.c:1944 read.c:2718 read.c:3311 read.c:3906 symbols.c:579 +#: symbols.c:674 #, c-format msgid "symbol `%s' is already defined" msgstr "el símbolo «%s» ya está definido" -#: config/obj-macho.c:524 read.c:1786 +#: config/obj-macho.c:526 read.c:1856 #, c-format msgid "size of \"%s\" is already %ld; not changing to %ld" -msgstr "la longitud de «%s» ya es %ld; no se cambia a %ld" +msgstr "El tamaño de «%s» ya es %ld; no se va a cambiar a %ld" -#: config/obj-macho.c:535 +#: config/obj-macho.c:537 msgid "align value not recognized, using size" -msgstr "alineamiento valorada no reconocida, empleando tamaño" +msgstr "valor de alineamiento no reconocido; se usará el tamaño" -#: config/obj-macho.c:540 config/obj-macho.c:903 +#: config/obj-macho.c:542 config/obj-macho.c:905 #, c-format msgid "Alignment (%lu) too large: 15 assumed." -msgstr "Alineación (%lu) demasiado grande: asumido 15." +msgstr "Alineación (%lu) demasiado grande: se asume 15." -#: config/obj-macho.c:606 +#: config/obj-macho.c:608 #, c-format msgid "BFD is out of sync with GAS, unhandled well-known section type `%s'" -msgstr "BFD está fuera de sincronización con GAS, tipo seccional inmanipulado bien conocido `%s'" +msgstr "BFD está fuera de sincronización con GAS, tipo de sección conocido no manejado `%s'" -#: config/obj-macho.c:808 +#: config/obj-macho.c:810 #, c-format msgid "%s is not used for the selected target" -msgstr "%s no está utilizado para el objetivo seleccionado" +msgstr "%s no utilizado para el objetivo seleccionado" -#: config/obj-macho.c:873 +#: config/obj-macho.c:875 msgid "internal error: base section index out of range" -msgstr "error inteno: sección base indizado fuera de límite" +msgstr "error interno: índice de sección base fuera de rango" -#: config/obj-macho.c:959 +#: config/obj-macho.c:961 #, c-format msgid "internal error: bad file property ID %d" -msgstr "error interno: equivocación del ID propietaria de fichero %d" +msgstr "error interno: ID %d de propiedad de fichero incorrecto" -#: config/obj-macho.c:967 +#: config/obj-macho.c:969 msgid "failed to set subsections by symbols" -msgstr "fallado al obtener subsecciones por símbolos" +msgstr "no se han podido establecer subsecciones por símbolos" -#: config/obj-macho.c:1030 +#: config/obj-macho.c:1032 #, c-format msgid "'%s' previously declared as '%s'." -msgstr "«%s» previamente definido como «%s»." +msgstr "«%s» previamente declarado como «%s»." -#: config/obj-macho.c:1082 config/obj-macho.c:1402 config/obj-macho.c:1486 +#: config/obj-macho.c:1084 config/obj-macho.c:1404 config/obj-macho.c:1488 #, c-format msgid "'%s' can't be a weak_definition (currently only supported in sections of type coalesced)" -msgstr "" +msgstr "«%s» no puede ser una weak_definition (actualmente solo disponible en secciones de tipo fusionado)" -#: config/obj-macho.c:1167 +#: config/obj-macho.c:1169 msgid "use of .indirect_symbols requires `-dynamic'" -msgstr "utilice símbolos indirectos requiere `-dinamic'" +msgstr "el empleo de .indirect_symbols requiere `-dinamic'" -#: config/obj-macho.c:1184 +#: config/obj-macho.c:1186 #, c-format msgid "attempt to add an indirect_symbol to a stub or reference section with a zero-sized element at %s" -msgstr "trata añadir un símbolo indirecto (indirect_symbol) a un reguardo o sección referenciado con un elemento de tamaño cero en %s" +msgstr "intento de añadir un indirect_symbol a un «stub» o sección de referencia con un elemento de tamaño cero en %s" -#: config/obj-macho.c:1214 +#: config/obj-macho.c:1216 msgid "an .indirect_symbol must be in a symbol pointer or stub section." -msgstr "" +msgstr "los .indirect_symbol tienen que estar en punteros de símbolo o secciones «stub»." -#: config/obj-macho.c:1483 +#: config/obj-macho.c:1485 #, c-format msgid "'%s' can't be a weak_definition (since it is undefined)" -msgstr "" +msgstr "«%s» no puede ser una weak_definition (pues está indefinido)" -#: config/obj-macho.c:1489 +#: config/obj-macho.c:1491 #, c-format msgid "Non-global symbol: '%s' can't be a weak_definition." -msgstr "" +msgstr "Símbolo no global: «%s» no puede ser una weak_definition" -#: config/obj-macho.c:1495 +#: config/obj-macho.c:1497 #, c-format msgid "internal error: [%s] unexpected code [%lx] in frob symbol" -msgstr "" +msgstr "error interno: [%s] código inesperado [%lx] en símbolo «frob»" -#: config/obj-macho.c:1536 +#: config/obj-macho.c:1538 #, c-format msgid "unrecognized stab type '%c'" -msgstr "no reconoció un tipo estadístico '%c'" +msgstr "tipo de «stab» no reconocido '%c'" -#: config/obj-macho.c:1587 +#: config/obj-macho.c:1589 #, c-format msgid "`%s' can't be undefined in `%s' - `%s' {%s section}" -msgstr "«%s» no puede ser indefinido en «%s» - «%s» {%s sección}" +msgstr "«%s» no puede estar indefinido en «%s» - «%s» {sección %s}" -#: config/obj-macho.c:1595 +#: config/obj-macho.c:1597 #, c-format msgid "`%s' can't be undefined in `%s' {%s section} - `%s'" -msgstr "«%s» no puede ser indefinido en «%s» {%s sección} - «%s»" +msgstr "«%s» no puede estar indefinido en «%s» {sección %s} - «%s»" -#: config/obj-macho.c:1602 +#: config/obj-macho.c:1604 #, c-format msgid "`%s' and `%s' can't be undefined in `%s' - `%s'" msgstr "«%s» y «%s» no pueden estar indefinidos en «%s» - «%s»" -#: config/obj-macho.c:1804 +#: config/obj-macho.c:1806 #, c-format msgid "the number of .indirect_symbols defined in section %s does not match the number expected (%d defined, %d expected)" -msgstr "el número de símbolos indirectos definidos en la sección %s no coincide con el número esperado (%d definido, %d esperado)" +msgstr "el número de .indirect_symbols definidos en la sección %s no coincide con el número esperado (%d definido, %d esperado)" -#: config/obj-macho.c:1824 +#: config/obj-macho.c:1826 #, c-format msgid "internal error: failed to allocate %d indirectsymbol pointers" -msgstr "error interno: fallado al asignar %d punteros simbólicos directos" +msgstr "error interno: no se ha podido asignar %d punteros de símbolo indirectos" -#: config/obj-macho.c:1838 config/obj-macho.c:1861 +#: config/obj-macho.c:1840 config/obj-macho.c:1863 msgid "internal error: more indirect mach-o symbols than expected" -msgstr "error interno: más símbolos indirectos mach-o que los esperados" +msgstr "error interno: más símbolos «mach-o» indirectos que los esperados" #: config/obj-som.c:56 msgid "Only one .compiler pseudo-op per file!" @@ -1282,16 +1504,16 @@ msgstr "Se esperaba una cadena entrecomillada" #: config/obj-som.c:86 msgid ".compiler directive missing language and version" -msgstr "ausente el lenguaje y la versión en la directiva .compiler" +msgstr "faltan el lenguaje y la versión en la directiva .compiler" #: config/obj-som.c:96 msgid ".compiler directive missing version" -msgstr "ausente la versión en la directiva .compiler" +msgstr "falta la versión en la directiva .compiler" #: config/obj-som.c:112 #, c-format msgid "FATAL: Attaching compiler header %s" -msgstr "FATAL: Al adjuntar el encabezado de compilador %s" +msgstr "FATAL: Adjuntando el encabezado de compilador %s" #: config/obj-som.c:127 msgid "Only one .version pseudo-op per file!" @@ -1300,7 +1522,7 @@ msgstr "¡Sólo un pseudo-operador .version por fichero!" #: config/obj-som.c:151 #, c-format msgid "attaching version header %s: %s" -msgstr "al adjuntar el encabezado de versión %s: %s" +msgstr "adjuntando el encabezado de versión %s: %s" #: config/obj-som.c:169 msgid "Only one .copyright pseudo-op per file!" @@ -1311,995 +1533,1310 @@ msgstr "¡Sólo un pseudo-operador .copyright por fichero!" msgid "attaching copyright header %s: %s" msgstr "adjuntando encabezado de copyright %s: %s" -#: config/tc-aarch64.c:373 -msgid "integer 32-bit register expected" -msgstr "esperado registro 32-bit entero" +#: config/tc-aarch64.c:427 +#, c-format +msgid "expected an unsuffixed ZA tile at operand %d" +msgstr "se esperaba una matriz ZA sin sufijo en el operando %d" -#: config/tc-aarch64.c:376 -msgid "integer 64-bit register expected" -msgstr "esperado registro 64-bit entero" +#: config/tc-aarch64.c:431 +#, c-format +msgid "missing horizontal or vertical suffix at operand %d" +msgstr "falta el sufijo horizontal o vertical en el operando %d" -#: config/tc-aarch64.c:379 -msgid "integer register expected" -msgstr "esperado registro entero" +#: config/tc-aarch64.c:436 +#, c-format +msgid "expected 'za' rather than a ZA tile at operand %d" +msgstr "se esperaba 'za' en lugar de una matriz ZA en el operando %d" -#: config/tc-aarch64.c:382 -msgid "64-bit integer or SP register expected" -msgstr "esperado PS o registro 64-bit entero" +#: config/tc-aarch64.c:440 +#, c-format +msgid "expected a predicate-as-counter rather than predicate-as-mask register at operand %d" +msgstr "se esperaba un registro de predicado-como-contador en vez de un predicado-como-máscara en el operando %d" -#: config/tc-aarch64.c:385 config/tc-mcore.c:839 config/tc-mcore.c:1355 -#: config/tc-mcore.c:1409 -msgid "base register expected" -msgstr "se esperaba un registro base" +#: config/tc-aarch64.c:445 +#, c-format +msgid "expected a predicate-as-mask rather than predicate-as-counter register at operand %d" +msgstr "se esperaba un registro de predicado-como-máscara en vez de un predicado-como-contador en el operando %d" -#: config/tc-aarch64.c:388 -msgid "integer or zero register expected" -msgstr "esperado registro entero o cero" +#: config/tc-aarch64.c:450 +#, c-format +msgid "expected a 64-bit integer register at operand %d" +msgstr "se esperaba un registro entero de 64 bits para el operando %d" -#: config/tc-aarch64.c:391 -msgid "offset register expected" -msgstr "esperaba registro desplazamiento" +#: config/tc-aarch64.c:452 +#, c-format +msgid "expected an integer or zero register at operand %d" +msgstr "se esperaba un registro entero o cero para el operando %d" -#: config/tc-aarch64.c:394 -msgid "integer or SP register expected" -msgstr "esperado registro entero o PS" +#: config/tc-aarch64.c:454 +#, c-format +msgid "expected an integer or stack pointer register at operand %d" +msgstr "se esperaba un registro entero o de puntero a pila para el operando %d" -#: config/tc-aarch64.c:397 -msgid "integer, zero or SP register expected" -msgstr "esperado entero, cero o registro PS" +#: config/tc-aarch64.c:458 +#, c-format +msgid "expected a scalar SIMD or floating-point register at operand %d" +msgstr "se esperaba un registro de escalar SIMD o de coma flotante para el operando %d" -#: config/tc-aarch64.c:400 -msgid "8-bit SIMD scalar register expected" -msgstr "esperado registro SIMD de 8-bit escalar" +#: config/tc-aarch64.c:461 +#, c-format +msgid "expected an Advanced SIMD vector register at operand %d" +msgstr "se esperaba un registro de vector SIMD avanzado para el operando %d" -#: config/tc-aarch64.c:403 -msgid "16-bit SIMD scalar or floating-point half precision register expected" -msgstr "esperado registro SIMD de 16-bit escalar o coma flotante a precisión media" +#: config/tc-aarch64.c:463 +#, c-format +msgid "expected an SVE vector register at operand %d" +msgstr "se esperaba un registro de vector SVE para el operando %d" -#: config/tc-aarch64.c:407 -msgid "32-bit SIMD scalar or floating-point single precision register expected" -msgstr "esperado registro SIMD de 32 bit escalar o coma flotante a precisión simple" +#. Use this error for "predicate-as-mask only" and "either kind of +#. predicate". We report a more specific error if P is used where +#. PN is expected, and vice versa, so the issue at this point is +#. "predicate-like" vs. "not predicate-like". +#: config/tc-aarch64.c:470 +#, c-format +msgid "expected an SVE predicate register at operand %d" +msgstr "se esperaba un registro de predicado SVE para el operando %d" -#: config/tc-aarch64.c:411 -msgid "64-bit SIMD scalar or floating-point double precision register expected" -msgstr "esperado registro SIMD de 64-bit escalar o coma flotante a precisión doble" +#: config/tc-aarch64.c:472 +#, c-format +msgid "expected an SVE predicate-as-counter register at operand %d" +msgstr "se esperaba un registro de predicado-como-contador SVE para el operando %d" -#: config/tc-aarch64.c:415 -msgid "128-bit SIMD scalar or floating-point quad precision register expected" -msgstr "esperado registro SIMD de 128-bit escalar o coma flotante a precisión cuadruple" +#: config/tc-aarch64.c:474 +#, c-format +msgid "expected a vector register at operand %d" +msgstr "se esperaba un registro de vector para el operando %d" -#: config/tc-aarch64.c:420 config/tc-arm.c:4401 -msgid "register expected" -msgstr "se esperaba un registro" +#: config/tc-aarch64.c:476 +#, c-format +msgid "expected an SVE vector or predicate register at operand %d" +msgstr "se esperaba un registro de vector SVE para el operando %d" -#. any [BHSDQ]P FP -#: config/tc-aarch64.c:423 -msgid "SIMD scalar or floating-point register expected" -msgstr "SIMD escalar de coma flotante registrada esperada" +#: config/tc-aarch64.c:478 +#, c-format +msgid "expected a vector or predicate register at operand %d" +msgstr "se esperaba un registro de vector o de predicado para el operando %d" -#. any V reg -#: config/tc-aarch64.c:426 -msgid "vector register expected" -msgstr "vector registrador esperado" +#: config/tc-aarch64.c:482 +#, c-format +msgid "expected a ZA array vector at operand %d" +msgstr "se esperaba un registro de matriz ZA para el operando %d" -#: config/tc-aarch64.c:429 -msgid "SVE vector register expected" -msgstr "SVE como vector esperaba registro" +#: config/tc-aarch64.c:484 +#, c-format +msgid "expected ZT0 or a ZA mask at operand %d" +msgstr "se esperaba una mścara ZT0 o ZA para el operando %d" + +#: config/tc-aarch64.c:486 +#, c-format +msgid "expected a ZA tile at operand %d" +msgstr "se esperaba una matriz ZA para el operando %d" + +#: config/tc-aarch64.c:488 +#, c-format +msgid "expected a ZA tile slice at operand %d" +msgstr "se esperaba una rodaja de registro de matriz ZA para el operando %d" + +#: config/tc-aarch64.c:492 +#, c-format +msgid "expected an integer register or Advanced SIMD vector register at operand %d" +msgstr "se esperaba un registro entero o un registro de vector SIMD avanzado para el operando %d" -#: config/tc-aarch64.c:432 -msgid "SVE predicate register expected" -msgstr "SVE predicado registrado esperado" +#: config/tc-aarch64.c:495 +#, c-format +msgid "expected an integer register or SVE vector register at operand %d" +msgstr "se esperaba un registro entero o un registro de vector SVE para el operando %d" + +#: config/tc-aarch64.c:498 +#, c-format +msgid "expected an integer or vector register at operand %d" +msgstr "se esperaba un registro entero o un registro de vector para el operando %d" + +#: config/tc-aarch64.c:500 +#, c-format +msgid "expected an integer or predicate register at operand %d" +msgstr "se esperaba un registro entero o un registro de predicado para el operando %d" + +#: config/tc-aarch64.c:502 +#, c-format +msgid "expected an integer, vector or predicate register at operand %d" +msgstr "se esperaba un registro entero de vector o de predicado para el operando %d" -#: config/tc-aarch64.c:435 +#: config/tc-aarch64.c:507 #, c-format -msgid "invalid register type %d" -msgstr "registro inválido de tipo %d" +msgid "expected an SVE vector register or ZA tile slice at operand %d" +msgstr "se esperaba un registro de vector SVE o una rodaja de matriz ZA para el operando %d" -#: config/tc-aarch64.c:595 config/tc-aarch64.c:597 config/tc-arm.c:1061 -#: config/tc-score.c:6514 expr.c:1385 read.c:2609 +#: config/tc-aarch64.c:715 config/tc-aarch64.c:717 config/tc-arm.c:1188 +#: config/tc-score.c:6435 expr.c:1423 read.c:2700 msgid "bad expression" -msgstr "expresión equivocada" +msgstr "expresión incorrecta" -#: config/tc-aarch64.c:607 config/tc-arm.c:1072 config/tc-i860.c:1003 -#: config/tc-sparc.c:3440 +#: config/tc-aarch64.c:728 config/tc-sparc.c:3380 msgid "bad segment" -msgstr "segmento equivocado" +msgstr "segmento incorrecto" -#: config/tc-aarch64.c:825 +#: config/tc-aarch64.c:876 +msgid "bad vector arrangement type" +msgstr "tipo de disposición de vector incorrecto" + +#: config/tc-aarch64.c:1048 #, c-format msgid "bad size %d in vector width specifier" -msgstr "tamaño equivocado %d en el especificador de anchura vectorial" +msgstr "tamaño incorrecto %d en el especificador de anchura del vector" -#: config/tc-aarch64.c:858 +#: config/tc-aarch64.c:1081 #, c-format msgid "unexpected character `%c' in element size" -msgstr "carácter inesperado `%c' dentro del tamaño elemental" +msgstr "carácter inesperado `%c' en el tamaño del elemento" -#: config/tc-aarch64.c:860 +#: config/tc-aarch64.c:1083 msgid "missing element size" -msgstr "ausencia de tamaño de elemento" +msgstr "falta el tamaño del elemento" -#: config/tc-aarch64.c:869 +#: config/tc-aarch64.c:1093 #, c-format msgid "invalid element size %d and vector size combination %c" -msgstr "no válida tamaño de elemento %d y combinación de tamaño vectorial %c" +msgstr "combinación no válida del tamaño del elemento %d y del tamaño del vector %c" -#: config/tc-aarch64.c:904 +#: config/tc-aarch64.c:1129 #, c-format msgid "unexpected character `%c' in predication type" -msgstr "carácter inesperado `%c' en tipo de predicado" +msgstr "carácter inesperado `%c' en tipo de predicación" -#: config/tc-aarch64.c:907 +#: config/tc-aarch64.c:1132 msgid "missing predication type" -msgstr "ausente tipo predicativo" +msgstr "falta el tipo de predicación" + +#: config/tc-aarch64.c:1176 config/tc-aarch64.c:2324 config/tc-aarch64.c:2585 +#: config/tc-arm.c:1765 config/tc-arm.c:3972 config/tc-arm.c:5205 +#: config/tc-arm.c:7251 +msgid "constant expression required" +msgstr "se requiere una expresión constante" + +#: config/tc-aarch64.c:1230 +msgid "syntax error in register list" +msgstr "error de sintaxis en la lista de registros" -#: config/tc-aarch64.c:1002 +#: config/tc-aarch64.c:1260 +msgid "ZA tile number out of range" +msgstr "número de matriz ZA fuera de rango" + +#: config/tc-aarch64.c:1304 msgid "this type of register can't be indexed" -msgstr "este tipo de registro no puede ser indizado" +msgstr "este tipo de registro no se puede indexar" -#: config/tc-aarch64.c:1008 +#: config/tc-aarch64.c:1310 msgid "index not allowed inside register list" -msgstr "índice no permitido dentro de listado de registro" - -#: config/tc-aarch64.c:1018 config/tc-aarch64.c:1966 config/tc-aarch64.c:2155 -#: config/tc-arm.c:1569 config/tc-arm.c:3681 config/tc-arm.c:4798 -msgid "constant expression required" -msgstr "se requiere una expresión constante" +msgstr "índice no permitido dentro del listado de registros" #. Indexed vector register expected. -#: config/tc-aarch64.c:1030 +#: config/tc-aarch64.c:1325 msgid "indexed vector register expected" -msgstr "esperado registro vectorial indizado" +msgstr "se esperaba un registro de vector indexado" -#: config/tc-aarch64.c:1037 +#: config/tc-aarch64.c:1332 msgid "invalid use of vector register" -msgstr "utolización no válida de registro vectorial" +msgstr "utilización no válida de registro de vector" -#: config/tc-aarch64.c:1129 config/tc-arm.c:1837 -msgid "expecting {" -msgstr "esperando {" - -#: config/tc-aarch64.c:1154 +#: config/tc-aarch64.c:1454 msgid "invalid vector register in list" -msgstr "registro vectorial inválido en listado" +msgstr "registro de vector inválido en listado" -#: config/tc-aarch64.c:1161 +#: config/tc-aarch64.c:1462 msgid "invalid scalar register in list" -msgstr "registrador escalar inválido en lista" +msgstr "registro escalar inválido en listado" -#: config/tc-aarch64.c:1174 +#: config/tc-aarch64.c:1475 msgid "invalid range in vector register list" -msgstr "límite inválido en listado de registro vectorial" +msgstr "rango no válido en listado de registros de vector" -#: config/tc-aarch64.c:1187 +#: config/tc-aarch64.c:1488 msgid "type mismatch in vector register list" -msgstr "tipo incoincidente dentro de listado registrado vectorial" +msgstr "discordancia de tipos en listado de registros de vector" -#: config/tc-aarch64.c:1204 +#: config/tc-aarch64.c:1509 msgid "end of vector register list not found" -msgstr "final de listado de registro vectorial no encontrado" - -#: config/tc-aarch64.c:1220 -msgid "constant expression required." -msgstr "requerida expresión constante." +msgstr "final del listado de registros de vector no encontrado" -#: config/tc-aarch64.c:1230 +#: config/tc-aarch64.c:1527 msgid "expected index" -msgstr "índice esperado" +msgstr "se esperaba índice" -#: config/tc-aarch64.c:1237 +#: config/tc-aarch64.c:1534 msgid "too many registers in vector register list" -msgstr "muchos registros internos a listado de registro vectorial" +msgstr "demasiados registros en el listado de registros de vector" -#: config/tc-aarch64.c:1242 +#: config/tc-aarch64.c:1539 msgid "empty vector register list" -msgstr "listado de registro vectorial vacío" +msgstr "listado de registros de vector vacío" -#: config/tc-aarch64.c:1264 config/tc-arm.c:2223 +#: config/tc-aarch64.c:1609 config/tc-arm.c:2534 #, c-format msgid "ignoring attempt to redefine built-in register '%s'" -msgstr "se descarta el intento de redefinir el símbolo interno «%s»" +msgstr "se descarta el intento de redefinir el registro interno «%s»" -#: config/tc-aarch64.c:1270 config/tc-arm.c:2228 +#: config/tc-aarch64.c:1615 config/tc-arm.c:2539 #, c-format msgid "ignoring redefinition of register alias '%s'" msgstr "se descarta la redefinición del alias de registro «%s»" -#: config/tc-aarch64.c:1316 config/tc-arm.c:2294 +#: config/tc-aarch64.c:1660 config/tc-arm.c:2604 #, c-format msgid "unknown register '%s' -- .req ignored" msgstr "registro «%s» desconocido -- se descarta .req" -#: config/tc-aarch64.c:1374 config/tc-arm.c:2502 +#: config/tc-aarch64.c:1718 config/tc-arm.c:2812 msgid "invalid syntax for .req directive" -msgstr "sintaxis no válida .reg para directiva" +msgstr "sintaxis no válida para directiva .reg" -#: config/tc-aarch64.c:1399 config/tc-arm.c:2540 +#: config/tc-aarch64.c:1739 config/tc-arm.c:2845 msgid "invalid syntax for .unreq directive" -msgstr "sintaxis no válida .unreq para directiva" +msgstr "sintaxis no válida para directiva .unreq" -#: config/tc-aarch64.c:1405 config/tc-arm.c:2547 +#: config/tc-aarch64.c:1745 config/tc-arm.c:2852 #, c-format msgid "unknown register alias '%s'" -msgstr "desconoce alias de registro «%s»" +msgstr "alias de registro desconocido «%s»" -#: config/tc-aarch64.c:1407 +#: config/tc-aarch64.c:1747 #, c-format msgid "ignoring attempt to undefine built-in register '%s'" -msgstr "trata ignorando a registro interno indefinido «%s»" +msgstr "se descarta el intento de suprimir la definición del registro interno «%s»" -#: config/tc-aarch64.c:1731 config/tc-arm.c:3293 config/tc-arm.c:3320 -#: config/tc-arm.c:3333 +#: config/tc-aarch64.c:2061 config/tc-arm.c:3583 config/tc-arm.c:3610 +#: config/tc-arm.c:3623 msgid "literal pool overflow" msgstr "desbordamiento en el conjunto de literales" -#: config/tc-aarch64.c:1913 config/tc-aarch64.c:5916 config/tc-arm.c:3554 -#: config/tc-arm.c:6996 +#: config/tc-aarch64.c:2242 config/tc-aarch64.c:7473 config/tc-arm.c:3845 +#: config/tc-arm.c:7677 msgid "unrecognized relocation suffix" -msgstr "no reconocido el sufijo de reubicación" +msgstr "sufijo de reubicación no reconocido" -#: config/tc-aarch64.c:1915 +#: config/tc-aarch64.c:2244 msgid "unimplemented relocation suffix" -msgstr "sufijo reubicable implementable" +msgstr "sufijo de reubicación no implementado" -#: config/tc-aarch64.c:2123 config/tc-aarch64.c:2316 config/tc-aarch64.c:2374 +#: config/tc-aarch64.c:2552 config/tc-aarch64.c:2743 config/tc-aarch64.c:2787 +#: config/tc-csky.c:2336 msgid "immediate operand required" msgstr "operando inmediato requerido" -#: config/tc-aarch64.c:2131 +#: config/tc-aarch64.c:2561 msgid "missing immediate expression" -msgstr "expresión inmediata ausente" +msgstr "falta expresión inmediata" -#: config/tc-aarch64.c:2354 config/tc-aarch64.c:5740 config/tc-aarch64.c:5760 +#: config/tc-aarch64.c:2767 config/tc-aarch64.c:7296 config/tc-aarch64.c:7316 msgid "invalid floating-point constant" -msgstr "constante de coma flotante inválido" +msgstr "constante de coma flotante no válida" -#: config/tc-aarch64.c:2984 config/tc-arm.c:5137 config/tc-arm.c:5146 +#: config/tc-aarch64.c:3575 config/tc-arm.c:5452 config/tc-arm.c:5462 msgid "shift expression expected" -msgstr "esperado desplazamiento expresional" +msgstr "se esperaba expresión de desplazamiento" -#: config/tc-aarch64.c:2992 +#: config/tc-aarch64.c:3583 msgid "shift operator expected" -msgstr "esperado desplazamiento operador" +msgstr "se esperaba operador de desplazamiento" -#: config/tc-aarch64.c:3000 +#: config/tc-aarch64.c:3591 msgid "invalid use of 'MSL'" -msgstr "utilización no válido de 'MSL'" +msgstr "utilización no válida de 'MSL'" -#: config/tc-aarch64.c:3008 +#: config/tc-aarch64.c:3599 msgid "invalid use of 'MUL'" msgstr "utilización no válida de 'MUL'" -#: config/tc-aarch64.c:3017 +#: config/tc-aarch64.c:3608 msgid "extending shift is not permitted" -msgstr "desplazamiento extendido no está permitido" +msgstr "no está permitido extender el desplazamiento" -#: config/tc-aarch64.c:3025 +#: config/tc-aarch64.c:3616 msgid "'ROR' shift is not permitted" -msgstr "espaciado 'ROR' no está permitido" +msgstr "el desplazamiento 'ROR' no está permitido" -#: config/tc-aarch64.c:3033 +#: config/tc-aarch64.c:3624 msgid "only 'LSL' shift is permitted" -msgstr "sólo está permitido el desplazamiento LSL" +msgstr "solo está permitido el desplazamiento 'LSL'" -#: config/tc-aarch64.c:3041 +#: config/tc-aarch64.c:3632 msgid "only 'MUL' is permitted" -msgstr "sólo 'MUL' está permitido" +msgstr "solo 'MUL' está permitido" -#: config/tc-aarch64.c:3059 +#: config/tc-aarch64.c:3650 msgid "only 'MUL VL' is permitted" -msgstr "sólo 'MUL VL' está permitido" +msgstr "solo 'MUL VL' está permitido" -#: config/tc-aarch64.c:3067 +#: config/tc-aarch64.c:3658 msgid "invalid shift for the register offset addressing mode" -msgstr "desplazamiento inválido para el modo direccional de desplazamiento de registro" +msgstr "desplazamiento inválido para el modo de direccionamiento de desplazamiento de registro" -#: config/tc-aarch64.c:3075 +#: config/tc-aarch64.c:3666 msgid "invalid shift operator" -msgstr "invalida operador desplazado" +msgstr "operador de desplazamiento no válido" -#: config/tc-aarch64.c:3108 +#: config/tc-aarch64.c:3700 msgid "missing shift amount" -msgstr "ausente cantidad abandonada" +msgstr "falta la cantidad de desplazamiento" -#: config/tc-aarch64.c:3115 +#: config/tc-aarch64.c:3707 msgid "constant shift amount required" msgstr "cantidad de desplazamiento constante requerida" -#: config/tc-aarch64.c:3124 +#: config/tc-aarch64.c:3716 msgid "shift amount out of range 0 to 63" -msgstr "cantidad desplazada fuera de rango 0 a 63" +msgstr "cantidad de desplazamiento fuera del rango 0 a 63" -#: config/tc-aarch64.c:3173 +#: config/tc-aarch64.c:3766 msgid "unexpected shift operator" -msgstr "desplazamiento operador inesperado" +msgstr "operador de desplazamiento inesperado" -#: config/tc-aarch64.c:3209 +#: config/tc-aarch64.c:3802 msgid "unexpected register in the immediate operand" -msgstr "registro no esperado dentro del operando inmediato" +msgstr "registro no esperado en el operando inmediato" -#: config/tc-aarch64.c:3234 +#: config/tc-aarch64.c:3827 msgid "integer register expected in the extended/shifted operand register" -msgstr "registro entero esperado dentro del registro operando extendido/desplazado" +msgstr "se esperaba registro entero en el registro de operando extendido/desplazado" + +#: config/tc-aarch64.c:3865 +msgid "integer register expected in the shifted operand register" +msgstr "se esperaba registro entero en el registro de operando desplazado" -#: config/tc-aarch64.c:3269 config/tc-aarch64.c:3403 config/tc-aarch64.c:3532 -#: config/tc-aarch64.c:3687 config/tc-aarch64.c:3728 +#: config/tc-aarch64.c:3897 config/tc-aarch64.c:4084 config/tc-aarch64.c:4225 +#: config/tc-aarch64.c:4425 config/tc-aarch64.c:4467 msgid "unknown relocation modifier" msgstr "modificador de reubicación desconocido" -#: config/tc-aarch64.c:3276 config/tc-aarch64.c:3422 config/tc-aarch64.c:3539 -#: config/tc-aarch64.c:3694 config/tc-aarch64.c:3735 +#: config/tc-aarch64.c:3904 config/tc-aarch64.c:4103 config/tc-aarch64.c:4232 +#: config/tc-aarch64.c:4432 config/tc-aarch64.c:4474 msgid "this relocation modifier is not allowed on this instruction" -msgstr "esta modificador de reubicación no está permitido en esta instrucción" +msgstr "este modificador de reubicación no está permitido en esta instrucción" -#: config/tc-aarch64.c:3430 config/tc-aarch64.c:3550 +#: config/tc-aarch64.c:4112 config/tc-aarch64.c:4244 msgid "invalid relocation expression" msgstr "expresión de reubicación no válida" -#: config/tc-aarch64.c:3448 +#: config/tc-aarch64.c:4129 msgid "invalid address" msgstr "dirección no válida" -#: config/tc-aarch64.c:3504 +#: config/tc-aarch64.c:4147 +msgid "expected a 64-bit base register" +msgstr "se esperaba un registro de base de 64 bits" + +#: config/tc-aarch64.c:4149 +msgid "invalid base register" +msgstr "registro de base no válido" + +#: config/tc-aarch64.c:4151 +msgid "expected a base register" +msgstr "se esperaba un registro de base" + +#: config/tc-aarch64.c:4167 config/tc-aarch64.c:4305 +msgid "invalid offset register" +msgstr "registro de desplazamiento no válido" + +#: config/tc-aarch64.c:4194 msgid "invalid use of 32-bit register offset" -msgstr "utilización no válida de desplazamiento registrado de 32-bit" +msgstr "utilización no válida de desplazamiento de registro de 32 bits" -#: config/tc-aarch64.c:3510 +#: config/tc-aarch64.c:4203 msgid "offset has different size from base" -msgstr "desplazamiento tiene distinto tamaño desde base" +msgstr "el desplazamiento tiene distinto tamaño que la base" -#: config/tc-aarch64.c:3516 +#: config/tc-aarch64.c:4209 msgid "invalid use of 64-bit register offset" -msgstr "utilización no válida de desplazamiento registrado de 64-bit" +msgstr "utilización no válida de desplazamiento de registro de 64 bits" #. [Xn],#expr -#: config/tc-aarch64.c:3563 config/tc-aarch64.c:3620 +#: config/tc-aarch64.c:4258 config/tc-aarch64.c:4316 msgid "invalid expression in the address" msgstr "expresión no válida en la dirección" -#: config/tc-aarch64.c:3577 config/tc-arm.c:5673 config/tc-arm.c:6251 +#: config/tc-aarch64.c:4272 config/tc-arm.c:6051 config/tc-arm.c:6650 msgid "']' expected" -msgstr "']' esperado" +msgstr "se esperaba ']'" -#: config/tc-aarch64.c:3585 +#: config/tc-aarch64.c:4280 msgid "register offset not allowed in pre-indexed addressing mode" -msgstr "desplazamiento registrado no permitido en modo direccionado pre-indizado" +msgstr "desplazamiento de registro no permitido en modo direccionamiento pre-indexado" -#: config/tc-aarch64.c:3600 config/tc-arm.c:5709 +#: config/tc-aarch64.c:4295 config/tc-arm.c:6087 msgid "cannot combine pre- and post-indexing" -msgstr "no se puede combinar pre y post-indizado" +msgstr "no se puede combinar pre y post-indexación" #. Reject [Rn]! -#: config/tc-aarch64.c:3632 +#: config/tc-aarch64.c:4340 msgid "missing offset in the pre-indexed address" -msgstr "desplazamiento ausente dentro de dirección pre-indizada" +msgstr "falta el desplazamiento en dirección pre-indexada" + +#: config/tc-aarch64.c:4683 +msgid "expected '['" +msgstr "se esperaba '['" + +#: config/tc-aarch64.c:4691 +msgid "expected a 32-bit selection register" +msgstr "se esperaba un registro de selección de 32 bits" + +#: config/tc-aarch64.c:4698 +msgid "missing immediate offset" +msgstr "falta desplazamiento inmediato" + +#: config/tc-aarch64.c:4704 config/tc-aarch64.c:4713 +msgid "expected a constant immediate offset" +msgstr "se esperaba un desplazamiento inmediato constante" + +#: config/tc-aarch64.c:4718 +msgid "the last offset is less than the first offset" +msgstr "el último desplazamiento es menor que el primer desplazamiento" + +#: config/tc-aarch64.c:4724 +msgid "the last offset is equal to the first offset" +msgstr "el último desplazamiento es igual que el primer desplazamiento" -#: config/tc-aarch64.c:3861 -msgid "unknown or missing option to PSB" -msgstr "desconocido o ausente opción a PSB" +#: config/tc-aarch64.c:4746 +msgid "invalid vector group size" +msgstr "tamaño de grupo de vectores no válido" -#: config/tc-aarch64.c:3869 -msgid "the specified option is not accepted for PSB" -msgstr "la opción especificada no está aceptada para PSB" +#: config/tc-aarch64.c:4753 +msgid "expected ']'" +msgstr "se esperaba ']'" -#: config/tc-aarch64.c:3926 +#: config/tc-aarch64.c:4813 config/tc-aarch64.c:4921 +msgid "expected '}'" +msgstr "se esperaba '}'" + +#: config/tc-aarch64.c:4872 +msgid "ZA tile masks do not operate at .Q granularity" +msgstr "las máscaras de matriz ZA no operan con granularidad .Q" + +#: config/tc-aarch64.c:4878 +msgid "missing ZA tile size" +msgstr "falta el tamaño de la matriz ZA" + +#: config/tc-aarch64.c:4883 +msgid "invalid ZA tile" +msgstr "matriz ZA no válida" + +#: config/tc-aarch64.c:4908 +msgid "expected '{'" +msgstr "se esperaba '{'" + +#: config/tc-aarch64.c:4949 +msgid "expected SM or ZA operand" +msgstr "se esperaba un operando SM o ZA" + +#: config/tc-aarch64.c:5012 #, c-format msgid "selected processor does not support PSTATE field name '%s'" -msgstr "procesador seleccionado no admite el nombre de campo PSTATE '%s'" +msgstr "el procesador seleccionado no admite el nombre de campo PSTATE '%s'" -#: config/tc-aarch64.c:3929 config/tc-aarch64.c:3962 +#: config/tc-aarch64.c:5017 config/tc-aarch64.c:5062 #, c-format msgid "selected processor does not support system register name '%s'" -msgstr "procesador seleccionado no admite el nombre registrado del sistema «%s»" +msgstr "el procesador seleccionado no admite el nombre de registro del sistema «%s»" + +#: config/tc-aarch64.c:5020 +#, c-format +msgid "128-bit-wide accsess not allowed on selected system register '%s'" +msgstr "el acceso de ancho de 128 bits no está permitido en el registro del sistema seleccionado «%s»" -#: config/tc-aarch64.c:3932 +#: config/tc-aarch64.c:5023 config/tc-aarch64.c:5065 #, c-format msgid "system register name '%s' is deprecated and may be removed in a future release" -msgstr "" +msgstr "el nombre de registro del sistema «%s» está obsoleto y puede desaparecer en futuras versiones" -#: config/tc-aarch64.c:4004 +#: config/tc-aarch64.c:5104 msgid "immediate value out of range " -msgstr "valor inmediato fuera de límite " +msgstr "valor inmediato fuera de rango " -#: config/tc-aarch64.c:4512 +#: config/tc-aarch64.c:5707 messages.c:151 #, c-format msgid "Info: " -msgstr "Informe: " +msgstr "Info: " + +#: config/tc-aarch64.c:5725 +#, c-format +msgid "missing braces at operand %d" +msgstr "faltan las llaves para el operando %d" + +#: config/tc-aarch64.c:5736 +#, c-format +msgid "unexpected register type at operand %d" +msgstr "tipo de registro no esperado para el operando %d" + +#: config/tc-aarch64.c:5747 +#, c-format +msgid "invalid register list at operand %d" +msgstr "lista de registros no válida para el operando %d" -#: config/tc-aarch64.c:4545 config/tc-score.c:2750 config/tc-score.c:6503 +#: config/tc-aarch64.c:5760 +#, c-format +msgid "expected a register at operand %d" +msgstr "se esperaba un registro para el operando %d" + +#: config/tc-aarch64.c:5767 +#, c-format +msgid "expected '{' at operand %d" +msgstr "se esperaba '{' para el operando %d" + +#: config/tc-aarch64.c:5769 +#, c-format +msgid "expected a register or register list at operand %d" +msgstr "se esperaba un registro o una lista de registros para el operando %d" + +#: config/tc-aarch64.c:5794 +#, c-format +msgid "this `%s' should have an immediately preceding `%s' -- `%s'" +msgstr "este «%s» debería ir inmediatamente precedido de «%s» -- «%s»" + +#: config/tc-aarch64.c:5800 +#, c-format +msgid "the preceding `%s' should be followed by `%s` rather than `%s` -- `%s'" +msgstr "el «%s» precedente debería ir seguido de «%s» en lugar de «%s» -- «%s»" + +#: config/tc-aarch64.c:5812 config/tc-aarch64.c:5827 config/tc-score.c:2748 +#: config/tc-score.c:6424 #, c-format msgid "%s -- `%s'" msgstr "%s -- «%s»" -#: config/tc-aarch64.c:4547 +#: config/tc-aarch64.c:5829 #, c-format msgid "%s at operand %d -- `%s'" -msgstr "%s en operando %d -- «%s»" +msgstr "%s en el operando %d -- «%s»" -#: config/tc-aarch64.c:4553 +#: config/tc-aarch64.c:5835 #, c-format msgid "operand %d must be %s -- `%s'" -msgstr "operando %d debe ser %s -- `%s'" +msgstr "el operando %d debe ser %s -- `%s'" -#: config/tc-aarch64.c:4559 +#: config/tc-aarch64.c:5841 #, c-format msgid "operand mismatch -- `%s'" -msgstr "operando no coincide -- «%s»" +msgstr "el operando no coincide -- «%s»" #. Print the hint. -#: config/tc-aarch64.c:4619 +#: config/tc-aarch64.c:5901 msgid " did you mean this?" -msgstr " ¿significó ésto?" +msgstr " ¿quiso decir ésto?" -#: config/tc-aarch64.c:4622 config/tc-aarch64.c:4649 +#: config/tc-aarch64.c:5904 config/tc-aarch64.c:5931 #, c-format msgid " %s" msgstr " %s" -#: config/tc-aarch64.c:4627 +#: config/tc-aarch64.c:5909 msgid " other valid variant(s):" msgstr " otra(s) variante(s) válida(s):" -#: config/tc-aarch64.c:4656 +#: config/tc-aarch64.c:5938 +#, fuzzy, c-format +#| msgid "operand %d must be the same register as operand 1 -- `%s'" +msgid "operand %d must have the same immediate value as operand 1 -- `%s'" +msgstr "operando %d debe ser el mismo registro que operando 1 -- «%s»" + +#: config/tc-aarch64.c:5944 #, c-format msgid "operand %d must be the same register as operand 1 -- `%s'" msgstr "operando %d debe ser el mismo registro que operando 1 -- «%s»" -#: config/tc-aarch64.c:4662 +#: config/tc-aarch64.c:5949 +#, fuzzy, c-format +#| msgid "%s at operand %d -- `%s'" +msgid "%s%d-%s%d expected at operand %d -- `%s'" +msgstr "%s en operando %d -- «%s»" + +#: config/tc-aarch64.c:5956 #, c-format msgid "%s out of range %d to %d at operand %d -- `%s'" -msgstr "%s fuera de límite %d a %d en operando %d -- «%s»" +msgstr "%s fuera de rango %d a %d en operando %d -- «%s»" -#: config/tc-aarch64.c:4663 config/tc-aarch64.c:4667 config/tc-aarch64.c:6447 +#: config/tc-aarch64.c:5957 config/tc-aarch64.c:5961 config/tc-aarch64.c:8372 msgid "immediate value" msgstr "valor inmediato" -#: config/tc-aarch64.c:4666 +#: config/tc-aarch64.c:5960 #, c-format msgid "%s must be %d at operand %d -- `%s'" msgstr "%s debe ser %d al operando %d -- «%s»" -#: config/tc-aarch64.c:4673 -#, c-format -msgid "invalid number of registers in the list; only 1 register is expected at operand %d -- `%s'" -msgstr "número inválido de registros listados; solo 1 registro está esperado al operando %d -- `%s'" +#: config/tc-aarch64.c:5967 +#, fuzzy, c-format +#| msgid "Unexpected character '%c' after operand %d to %s." +msgid "unexpected vector group size at operand %d -- `%s'" +msgstr "Carácter inesperado '%c' antes de operando %d para %s." -#: config/tc-aarch64.c:4677 -#, c-format -msgid "invalid number of registers in the list; %d registers are expected at operand %d -- `%s'" +#: config/tc-aarch64.c:5970 +#, fuzzy, c-format +#| msgid "operand %d must be the same register as operand 1 -- `%s'" +msgid "operand %d must have a vector group size of %d -- `%s'" +msgstr "operando %d debe ser el mismo registro que operando 1 -- «%s»" + +#: config/tc-aarch64.c:5976 +#, fuzzy, c-format +#| msgid "expecting a register for operand %d" +msgid "expected a single-register list at operand %d -- `%s'" +msgstr "se esperaba un registro para el operando %d" + +#: config/tc-aarch64.c:5979 +#, fuzzy, c-format +#| msgid "operand %d must be the same register as operand 1 -- `%s'" +msgid "expected a list of %d registers at operand %d -- `%s'" +msgstr "operando %d debe ser el mismo registro que operando 1 -- «%s»" + +#: config/tc-aarch64.c:5982 +#, fuzzy, c-format +#| msgid "%s out of range %d to %d at operand %d -- `%s'" +msgid "expected a list of %d or %d registers at operand %d -- `%s'" +msgstr "%s fuera de rango %d a %d en operando %d -- «%s»" + +#: config/tc-aarch64.c:5986 +#, fuzzy, c-format +#| msgid "invalid number of registers in the list; %d registers are expected at operand %d -- `%s'" +msgid "invalid number of registers in the list at operand %d -- `%s'" msgstr "número inválido de registros listados; %d registros están esperados en operando %d -- `%s'" -#: config/tc-aarch64.c:4683 +#: config/tc-aarch64.c:5992 +#, fuzzy, c-format +#| msgid "%s must be %d at operand %d -- `%s'" +msgid "the register list must have a stride of %d at operand %d -- `%s'" +msgstr "%s debe ser %d al operando %d -- «%s»" + +#: config/tc-aarch64.c:5995 +#, fuzzy, c-format +#| msgid "%s out of range %d to %d at operand %d -- `%s'" +msgid "the register list must have a stride of %d or %d at operand %d -- `%s`" +msgstr "%s fuera de rango %d a %d en operando %d -- «%s»" + +#: config/tc-aarch64.c:5999 +#, fuzzy, c-format +#| msgid "invalid register operand: %s" +msgid "invalid register stride at operand %d -- `%s'" +msgstr "operando registrado inválido: %s" + +#: config/tc-aarch64.c:6004 #, c-format msgid "immediate value must be a multiple of %d at operand %d -- `%s'" msgstr "" -#: config/tc-aarch64.c:4970 -msgid "bad vector arrangement type" -msgstr "tipo alineamiento vectorial equivocado" - -#: config/tc-aarch64.c:5087 +#: config/tc-aarch64.c:6448 msgid "the specified relocation type is not allowed for MOVK" msgstr "el tipo reubicante especificado no está permitido para MOVK" -#: config/tc-aarch64.c:5129 config/tc-aarch64.c:5139 +#: config/tc-aarch64.c:6496 config/tc-aarch64.c:6507 msgid "the specified relocation type is not allowed for 32-bit register" msgstr "el tipo reubicante especificado no está asignado para registro de 32-bit" -#: config/tc-aarch64.c:5310 +#: config/tc-aarch64.c:6602 +#, fuzzy +#| msgid "TLS relocation size does not match operand size" +msgid "relocation qualifier does not match instruction size" +msgstr "TLS para tamaño de la reubicación no coincide con el tamaño de operando" + +#: config/tc-aarch64.c:6703 msgid "comma expected between operands" msgstr "coma esperaba entre operandos" -#: config/tc-aarch64.c:5444 +#: config/tc-aarch64.c:6739 +#, fuzzy +#| msgid "invalid base register in load/store" +msgid "invalid Rt register number in 64-byte load/store" +msgstr "registro base inválido en carga/almacenamiento" + +#: config/tc-aarch64.c:6876 msgid "the top half of a 128-bit FP/SIMD register is expected" msgstr "" -#: config/tc-aarch64.c:5515 config/tc-arm.c:1906 config/tc-arm.c:1951 -#: config/tc-h8300.c:1048 +#: config/tc-aarch64.c:6989 config/tc-aarch64.c:7039 config/tc-arm.c:2207 +#: config/tc-arm.c:2252 config/tc-h8300.c:1041 msgid "invalid register list" msgstr "lista de registros no válida" -#: config/tc-aarch64.c:5535 +#: config/tc-aarch64.c:7046 +msgid "expected element type rather than vector type" +msgstr "" + +#: config/tc-aarch64.c:7064 msgid "missing type suffix" msgstr "sufijo ausente de tipo" -#: config/tc-aarch64.c:5554 +#: config/tc-aarch64.c:7086 +#, fuzzy +#| msgid "C0 - C15 expected" +msgid "C8 - C9 expected" +msgstr "C0 - C15 se esperaban" + +#: config/tc-aarch64.c:7092 +#, fuzzy +#| msgid "C0 - C15 expected" +msgid "C0 - C7 expected" +msgstr "C0 - C15 se esperaban" + +#: config/tc-aarch64.c:7098 msgid "C0 - C15 expected" msgstr "C0 - C15 se esperaban" -#: config/tc-aarch64.c:5655 config/tc-aarch64.c:5679 +#: config/tc-aarch64.c:7210 config/tc-aarch64.c:7234 msgid "immediate zero expected" -msgstr "esperado cero inmediaro" +msgstr "se esperaba cero inmediaro" -#: config/tc-aarch64.c:5775 +#: config/tc-aarch64.c:7331 msgid "shift not allowed for bitmask immediate" msgstr "desplazamiento no permitido para mascarada bit inmediato" -#: config/tc-aarch64.c:5829 +#: config/tc-aarch64.c:7385 msgid "can't mix relocation modifier with explicit shift" msgstr "no se puede entremezclar reubicación modificado con desplazamiento explícito" -#: config/tc-aarch64.c:5877 +#: config/tc-aarch64.c:7434 config/tc-arm.c:15723 config/tc-arm.c:15748 +#: config/tc-arm.c:15759 config/tc-arm.c:15766 msgid "invalid condition" msgstr "condición no válida" -#: config/tc-aarch64.c:5903 +#: config/tc-aarch64.c:7460 msgid "invalid pc-relative address" msgstr "dirección relativa a pc no válida" #. Only permit "=value" in the literal load instructions. #. The literal will be generated by programmer_friendly_fixup. -#: config/tc-aarch64.c:5911 +#: config/tc-aarch64.c:7468 msgid "invalid use of \"=immediate\"" msgstr "empleo no válido de \"=immediate\"" -#: config/tc-aarch64.c:5976 config/tc-aarch64.c:6008 config/tc-aarch64.c:6026 -#: config/tc-aarch64.c:6048 config/tc-aarch64.c:6068 config/tc-aarch64.c:6087 -#: config/tc-aarch64.c:6106 config/tc-aarch64.c:6141 config/tc-aarch64.c:6148 -#: config/tc-aarch64.c:6177 config/tc-aarch64.c:6202 config/tc-aarch64.c:6218 -#: config/tc-aarch64.c:6242 +#: config/tc-aarch64.c:7531 config/tc-aarch64.c:7556 config/tc-aarch64.c:7578 +#: config/tc-aarch64.c:7610 config/tc-aarch64.c:7628 config/tc-aarch64.c:7652 +#: config/tc-aarch64.c:7672 config/tc-aarch64.c:7692 config/tc-aarch64.c:7711 +#: config/tc-aarch64.c:7734 config/tc-aarch64.c:7788 config/tc-aarch64.c:7795 +#: config/tc-aarch64.c:7823 config/tc-aarch64.c:7845 config/tc-aarch64.c:7870 +#: config/tc-aarch64.c:7888 config/tc-aarch64.c:7896 config/tc-aarch64.c:7913 +#: config/tc-aarch64.c:7937 msgid "invalid addressing mode" msgstr "modo de direccionamiento inválido" -#: config/tc-aarch64.c:5992 +#: config/tc-aarch64.c:7594 msgid "the optional immediate offset can only be 0" msgstr "el desplazamiento opcional inmediato puede solo ser 0 " -#: config/tc-aarch64.c:6031 config/tc-aarch64.c:6053 config/tc-aarch64.c:6073 +#: config/tc-aarch64.c:7633 config/tc-aarch64.c:7657 config/tc-aarch64.c:7677 +#: config/tc-aarch64.c:7697 msgid "relocation not allowed" msgstr "reubicación no permitida" -#: config/tc-aarch64.c:6116 +#: config/tc-aarch64.c:7744 msgid "writeback value must be an immediate constant" msgstr "valor retroescritura debe ser una contante inmediata" +#: config/tc-aarch64.c:7755 config/tc-aarch64.c:7965 +msgid "unknown or missing PSTATE field name" +msgstr "nombre de campo PSTATE desconocido o ausante" + #. Make sure this has priority over #. "invalid addressing mode". -#: config/tc-aarch64.c:6156 +#: config/tc-aarch64.c:7803 msgid "constant offset required" msgstr "desplazamiento constante requerido" -#: config/tc-aarch64.c:6252 +#: config/tc-aarch64.c:7951 msgid "unknown or missing system register name" msgstr "nombre de registro de sistema ausente o desconocido" -#: config/tc-aarch64.c:6262 -msgid "unknown or missing PSTATE field name" -msgstr "nombre de campo PSTATE desconocido o ausante" - -#: config/tc-aarch64.c:6286 +#: config/tc-aarch64.c:8004 msgid "unknown or missing operation name" msgstr "operación nombrada desconocida o ausente" -#: config/tc-aarch64.c:6299 +#: config/tc-aarch64.c:8017 msgid "the specified option is not accepted in ISB" msgstr "la opción especifica ninguna opción" -#: config/tc-aarch64.c:6325 config/tc-aarch64.c:7458 config/tc-arm.c:7211 +#: config/tc-aarch64.c:8029 config/tc-aarch64.c:8046 +#, fuzzy +#| msgid "the specified option is not accepted in ISB" +msgid "the specified option is not accepted in DSB" +msgstr "la opción especifica ninguna opción" + +#: config/tc-aarch64.c:8060 +#, fuzzy +#| msgid "immediate must be 1 or 2" +msgid "immediate value must be 16, 20, 24, 28" +msgstr "el inmediato debe ser 1 o 2" + +#: config/tc-aarch64.c:8097 config/tc-aarch64.c:8132 +#, fuzzy +#| msgid "missing table index" +msgid "missing register index" +msgstr "distribución indizada ausente" + +#: config/tc-aarch64.c:8119 +#, fuzzy +#| msgid "expected ',' after symbol name" +msgid "expected '}' after ZT0" +msgstr "se esperaba ',' tras nombre simbólico" + +#: config/tc-aarch64.c:8246 config/tc-aarch64.c:9603 config/tc-arm.c:7945 #, c-format msgid "unhandled operand code %d" msgstr "código de operando %d sin manipular" -#: config/tc-aarch64.c:6367 +#: config/tc-aarch64.c:8292 msgid "unexpected comma before the omitted optional operand" msgstr "punto inesperado antes de operando opcional omitido" -#: config/tc-aarch64.c:6395 +#: config/tc-aarch64.c:8320 msgid "unexpected characters following instruction" msgstr "caracteres inesperados continuando instrucción" -#: config/tc-aarch64.c:6473 config/tc-arm.c:5248 config/tc-arm.c:5809 -#: config/tc-arm.c:7973 +#: config/tc-aarch64.c:8398 config/tc-arm.c:5577 config/tc-arm.c:6195 +#: config/tc-arm.c:8757 msgid "constant expression expected" msgstr "se esperaba una expresión constante" -#: config/tc-aarch64.c:6480 +#: config/tc-aarch64.c:8405 msgid "literal pool insertion failed" msgstr "falló la inserción en el conjunto de literales" -#: config/tc-aarch64.c:6549 config/tc-aarch64.c:6561 +#: config/tc-aarch64.c:8476 config/tc-aarch64.c:8529 #, c-format msgid "unpredictable transfer with writeback -- `%s'" msgstr "transferencia impredecible con retroescritura -- «%s»" -#: config/tc-aarch64.c:6565 +#. ldiapp, stilp +#: config/tc-aarch64.c:8488 +#, fuzzy, c-format +#| msgid "unpredictable transfer with writeback -- `%s'" +msgid "unpredictable load pair transfer with register overlap -- `%s'" +msgstr "transferencia impredecible con retroescritura -- «%s»" + +#: config/tc-aarch64.c:8506 +#, fuzzy, c-format +#| msgid "unpredictable transfer with writeback -- `%s'" +msgid "unpredictable transfer with writeback (load) -- `%s'" +msgstr "transferencia impredecible con retroescritura -- «%s»" + +#: config/tc-aarch64.c:8510 +#, fuzzy, c-format +#| msgid "unpredictable transfer with writeback -- `%s'" +msgid "unpredictable transfer with writeback (store) -- `%s'" +msgstr "transferencia impredecible con retroescritura -- «%s»" + +#: config/tc-aarch64.c:8533 config/tc-aarch64.c:8547 #, c-format msgid "unpredictable load of register pair -- `%s'" msgstr "carga impredicible de par registrado -- «%s»" -#: config/tc-aarch64.c:6642 +#: config/tc-aarch64.c:8554 config/tc-aarch64.c:8567 +#, fuzzy, c-format +#| msgid "unpredictable transfer with writeback -- `%s'" +msgid "unpredictable: identical transfer and status registers --`%s'" +msgstr "transferencia impredecible con retroescritura -- «%s»" + +#: config/tc-aarch64.c:8562 config/tc-aarch64.c:8576 +#, fuzzy, c-format +#| msgid "unpredictable load of register pair -- `%s'" +msgid "unpredictable: identical base and status registers --`%s'" +msgstr "carga impredicible de par registrado -- «%s»" + +#: config/tc-aarch64.c:8596 +#, c-format +msgid "previous `%s' sequence has not been closed" +msgstr "" + +#: config/tc-aarch64.c:8685 +#, fuzzy, c-format +#| msgid "unknown mnemonic `%s' -- `%s'" +msgid "unknown mnemonic -- `%s'" +msgstr "mnemónico inválido `%s' -- `%s'" + +#: config/tc-aarch64.c:8695 #, c-format msgid "unknown mnemonic `%s' -- `%s'" msgstr "mnemónico inválido `%s' -- `%s'" -#: config/tc-aarch64.c:6650 +#: config/tc-aarch64.c:8703 #, c-format msgid "unexpected comma after the mnemonic name `%s' -- `%s'" msgstr "coma inesperada tras el nombre nemónico «%s» -- «%s»" -#: config/tc-aarch64.c:6708 +#: config/tc-aarch64.c:8760 #, c-format msgid "selected processor does not support `%s'" msgstr "procesador seleccionado no admite «%s»" -#: config/tc-aarch64.c:7121 config/tc-arm.c:22852 +#: config/tc-aarch64.c:9262 config/tc-arm.c:27396 msgid "GOT already in the symbol table" msgstr "GOT ya está en la distribución simbólicos" -#: config/tc-aarch64.c:7283 +#: config/tc-aarch64.c:9425 msgid "immediate cannot be moved by a single instruction" msgstr "inmediato no puede ser trasadado por una instrucción simple" -#: config/tc-aarch64.c:7326 config/tc-aarch64.c:7371 config/tc-aarch64.c:7397 -#: config/tc-arm.c:15411 config/tc-arm.c:15438 config/tc-arm.c:16080 -#: config/tc-arm.c:16694 config/tc-arm.c:17516 config/tc-arm.c:17556 -#: 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:9469 config/tc-aarch64.c:9514 config/tc-aarch64.c:9540 +#: config/tc-arm.c:16267 config/tc-arm.c:17964 config/tc-arm.c:18544 +#: config/tc-arm.c:18571 config/tc-arm.c:19358 config/tc-arm.c:20193 +#: config/tc-arm.c:21216 config/tc-arm.c:21276 config/tc-metag.c:2443 +#: config/tc-metag.c:2452 config/tc-metag.c:2491 config/tc-metag.c:2500 +#: config/tc-metag.c:3019 config/tc-metag.c:3028 msgid "immediate out of range" -msgstr "inmediato fuera de límite" +msgstr "inmediato fuera de rango" -#: config/tc-aarch64.c:7390 config/tc-metag.c:4656 config/tc-xtensa.c:4183 +#: config/tc-aarch64.c:9533 config/tc-metag.c:4654 config/tc-xtensa.c:4229 msgid "invalid immediate" msgstr "inmediato inválido" -#: config/tc-aarch64.c:7453 config/tc-tic6x.c:3861 config/tc-tic6x.c:3926 -#: config/tc-tic6x.c:3953 config/tc-tic6x.c:3981 +#: config/tc-aarch64.c:9598 config/tc-tic6x.c:3854 config/tc-tic6x.c:3919 +#: config/tc-tic6x.c:3946 config/tc-tic6x.c:3974 msgid "immediate offset out of range" -msgstr "el desplazamiento inmediato está fuera de límite" +msgstr "el desplazamiento inmediato está fuera de rango" -#: config/tc-aarch64.c:7527 config/tc-arm.c:23190 config/tc-arm.c:23258 -#: config/tc-arm.c:23540 +#: config/tc-aarch64.c:9672 config/tc-arm.c:27734 config/tc-arm.c:27802 +#: config/tc-arm.c:28084 #, c-format msgid "undefined symbol %s used as an immediate value" msgstr "símbolo indefinido %s utilizado como un valor inmediato" -#: config/tc-aarch64.c:7539 +#: config/tc-aarch64.c:9684 msgid "pc-relative load offset not word aligned" msgstr "el desplazamiento de carga relativa a pc sin word alineado" -#: config/tc-aarch64.c:7542 +#: config/tc-aarch64.c:9687 msgid "pc-relative load offset out of range" msgstr "el desplazamiento de carga pc-relativa fuera de rango" -#: config/tc-aarch64.c:7554 +#: config/tc-aarch64.c:9699 msgid "pc-relative address offset out of range" msgstr "la dirección pc-relativa desplazada fuera del rango" -#: config/tc-aarch64.c:7566 config/tc-aarch64.c:7581 +#: config/tc-aarch64.c:9711 config/tc-aarch64.c:9726 msgid "conditional branch target not word aligned" msgstr "destino condicional ramificado no alineado con palabra" -#: config/tc-aarch64.c:7569 config/tc-aarch64.c:7584 config/tc-arm.c:23831 +#: config/tc-aarch64.c:9714 config/tc-aarch64.c:9729 config/tc-arm.c:28379 msgid "conditional branch out of range" -msgstr "ramificación condicional fuera de límite" +msgstr "ramificación condicional fuera de rango" -#: config/tc-aarch64.c:7597 +#: config/tc-aarch64.c:9742 msgid "branch target not word aligned" msgstr "ramificación destino no alineado con palabra" -#: config/tc-aarch64.c:7600 config/tc-arm.c:822 config/tc-mips.c:15683 -#: config/tc-mips.c:15699 config/tc-mips.c:15789 +#: config/tc-aarch64.c:9745 config/tc-arm.c:916 config/tc-arm.c:29185 +#: config/tc-kvx.c:1725 config/tc-kvx.c:1731 config/tc-mips.c:16075 +#: config/tc-mips.c:16091 config/tc-mips.c:16181 msgid "branch out of range" -msgstr "ramificación fuera de límite" +msgstr "ramificación fuera de rango" -#: config/tc-aarch64.c:7652 config/tc-arm.c:23431 config/tc-arm.c:23446 -#: config/tc-arm.c:23461 config/tc-arm.c:23472 config/tc-arm.c:23495 -#: config/tc-arm.c:24293 config/tc-moxie.c:716 config/tc-pj.c:452 -#: config/tc-sh.c:4293 +#: config/tc-aarch64.c:9804 config/tc-arm.c:27975 config/tc-arm.c:27990 +#: config/tc-arm.c:28005 config/tc-arm.c:28016 config/tc-arm.c:28039 +#: config/tc-arm.c:28889 config/tc-moxie.c:714 config/tc-pj.c:449 +#: config/tc-sh.c:3713 msgid "offset out of range" -msgstr "desplazamiento fuera de límite" +msgstr "desplazamiento fuera de rango" -#: config/tc-aarch64.c:7667 +#: config/tc-aarch64.c:9819 msgid "unsigned value out of range" msgstr "valor sin signo fuera del límite" -#: config/tc-aarch64.c:7675 +#: config/tc-aarch64.c:9830 msgid "signed value out of range" -msgstr "valor firmado fuera de límite" +msgstr "valor firmado fuera de rango" -#: config/tc-aarch64.c:7817 +#: config/tc-aarch64.c:9985 #, c-format msgid "unexpected %s fixup" msgstr "corrección inesperada %s" -#: config/tc-aarch64.c:7883 config/tc-arm.c:24802 config/tc-arm.c:24823 -#: config/tc-mips.c:18038 config/tc-or1k.c:348 config/tc-score.c:7480 +#: config/tc-aarch64.c:10049 config/tc-arm.c:29604 config/tc-arm.c:29625 +#: config/tc-mips.c:18444 config/tc-or1k.c:342 config/tc-score.c:7391 #, c-format msgid "cannot represent %s relocation in this object file format" msgstr "no se puede representar la reubicación %s en este formato de fichero objeto" -#: config/tc-aarch64.c:7916 +#: config/tc-aarch64.c:10096 #, c-format msgid "cannot do %u-byte relocation" msgstr "no puede hacer reubicación %u-bytes" -#: config/tc-aarch64.c:8227 config/tc-arm.c:25283 config/tc-score.c:6297 -#: config/tc-score.c:6527 config/tc-score.c:6532 -msgid "virtual memory exhausted" -msgstr "memoria agotada" - -#: config/tc-aarch64.c:8385 config/tc-arm.c:25622 +#: config/tc-aarch64.c:10524 config/tc-arm.c:30425 msgid "assemble for big-endian" msgstr "ensamblar para big-endian" -#: config/tc-aarch64.c:8386 config/tc-arm.c:25623 +#: config/tc-aarch64.c:10525 config/tc-arm.c:30426 msgid "assemble for little-endian" msgstr "ensamblar para little-endian" -#: config/tc-aarch64.c:8389 +#: config/tc-aarch64.c:10528 msgid "temporary switch for dumping" msgstr "intercambiado temporal para volcado" -#: config/tc-aarch64.c:8391 +#: config/tc-aarch64.c:10530 msgid "output verbose error messages" msgstr "mensajes de error detallado saliente" -#: config/tc-aarch64.c:8393 +#: config/tc-aarch64.c:10532 msgid "do not output verbose error messages" msgstr "no sacar mensajes de error detallados" -#: config/tc-aarch64.c:8601 config/tc-arm.c:26444 +#: config/tc-aarch64.c:10876 config/tc-arm.c:31614 msgid "invalid architectural extension" msgstr "extensión de arquitectura no válida" -#: config/tc-aarch64.c:8626 config/tc-arm.c:26476 +#: config/tc-aarch64.c:10901 config/tc-arm.c:31646 msgid "must specify extensions to add before specifying those to remove" msgstr "se deben especificar extensiones para agregar antes de especificar las que se borrarán" -#: config/tc-aarch64.c:8634 config/tc-arm.c:26484 +#: config/tc-aarch64.c:10909 config/tc-arm.c:31654 msgid "missing architectural extension" msgstr "ausente la extensión de la arquitectura" -#: config/tc-aarch64.c:8661 config/tc-arm.c:26536 +#: config/tc-aarch64.c:10937 config/tc-arm.c:31740 #, c-format msgid "unknown architectural extension `%s'" msgstr "desconoce extensión arquitectural «%s»" -#: config/tc-aarch64.c:8685 config/tc-arm.c:26570 config/tc-metag.c:5834 +#: config/tc-aarch64.c:10962 config/tc-arm.c:31790 config/tc-metag.c:5832 #, c-format msgid "missing cpu name `%s'" msgstr "ausente el nombre de cpu «%s»" -#: config/tc-aarch64.c:8699 config/tc-aarch64.c:8916 config/tc-arm.c:26605 -#: config/tc-arm.c:27369 config/tc-metag.c:5845 +#: config/tc-aarch64.c:10973 config/tc-aarch64.c:11194 config/tc-arm.c:31825 +#: config/tc-arm.c:32645 config/tc-csky.c:1218 config/tc-metag.c:5843 #, c-format msgid "unknown cpu `%s'" msgstr "desconoce cpu `%s'" -#: config/tc-aarch64.c:8717 config/tc-arm.c:26623 +#: config/tc-aarch64.c:10991 config/tc-arm.c:31843 #, c-format msgid "missing architecture name `%s'" msgstr "ausente el nombre de arquitectura «%s»" -#: config/tc-aarch64.c:8731 config/tc-aarch64.c:8963 config/tc-arm.c:26640 -#: config/tc-arm.c:27404 config/tc-arm.c:27434 config/tc-score.c:7715 +#: config/tc-aarch64.c:11002 config/tc-aarch64.c:11239 config/tc-arm.c:31865 +#: config/tc-arm.c:32685 config/tc-arm.c:32721 config/tc-score.c:7626 #, c-format msgid "unknown architecture `%s'\n" msgstr "desconoce arquitectura «%s» \n" -#: config/tc-aarch64.c:8754 +#: config/tc-aarch64.c:11029 #, c-format msgid "missing abi name `%s'" msgstr "ausentando nombre abi «%s»" -#: config/tc-aarch64.c:8765 +#: config/tc-aarch64.c:11040 #, c-format msgid "unknown abi `%s'\n" msgstr "desconoce abi «%s»\n" -#: config/tc-aarch64.c:8771 +#: config/tc-aarch64.c:11053 msgid "<abi name>\t specify for ABI <abi name>" msgstr "<nombre abi>\t\t específicamente para ABI <nombre abi>" -#: config/tc-aarch64.c:8774 config/tc-arm.c:26727 config/tc-metag.c:5911 +#: config/tc-aarch64.c:11055 config/tc-arm.c:31952 config/tc-metag.c:5909 msgid "<cpu name>\t assemble for CPU <cpu name>" msgstr "<nombre cpu>\t ensambla para el CPU <nombre cpu>" -#: config/tc-aarch64.c:8776 config/tc-arm.c:26729 +#: config/tc-aarch64.c:11057 config/tc-arm.c:31954 msgid "<arch name>\t assemble for architecture <arch name>" msgstr "<nombre arq>\t ensambla para la arquitectura <nombre arq>" -#: config/tc-aarch64.c:8815 config/tc-aarch64.c:8835 config/tc-arm.c:26785 -#: config/tc-arm.c:26803 config/tc-arm.c:26823 config/tc-metag.c:5936 +#: config/tc-aarch64.c:11096 config/tc-aarch64.c:11115 config/tc-arm.c:32022 +#: config/tc-arm.c:32040 config/tc-arm.c:32060 config/tc-metag.c:5933 #, c-format msgid "option `-%c%s' is deprecated: %s" msgstr "la opción `-%c%s' es obsoleta: %s" -#: config/tc-aarch64.c:8855 +#: config/tc-aarch64.c:11135 #, c-format msgid " AArch64-specific assembler options:\n" msgstr " Opciones de ensamblador específicas de AArch64:\n" -#: config/tc-aarch64.c:8866 config/tc-arc.c:3536 config/tc-arm.c:26854 +#: config/tc-aarch64.c:11146 config/tc-arc.c:3598 config/tc-arm.c:32091 #, c-format msgid " -EB assemble code for a big-endian cpu\n" msgstr " -EB ensambla código para un cpu big-endian\n" -#: config/tc-aarch64.c:8871 config/tc-arc.c:3538 config/tc-arm.c:26859 +#: config/tc-aarch64.c:11151 config/tc-arc.c:3600 config/tc-arm.c:32096 #, c-format msgid " -EL assemble code for a little-endian cpu\n" msgstr " -EL ensambla código para un cpu little-endian\n" -#: config/tc-alpha.c:653 +#: config/tc-alpha.c:648 #, c-format msgid "No !literal!%ld was found" msgstr "Ningún !literal!%ld fue encontrado" -#: config/tc-alpha.c:660 +#: config/tc-alpha.c:655 #, c-format msgid "No !tlsgd!%ld was found" msgstr "Ningún !tlsgd!%ld fue encontrado" -#: config/tc-alpha.c:667 +#: config/tc-alpha.c:662 #, c-format msgid "No !tlsldm!%ld was found" msgstr "Ningún !tlsldm!%ld fue encontrado" -#: config/tc-alpha.c:676 +#: config/tc-alpha.c:671 #, c-format msgid "No ldah !gpdisp!%ld was found" msgstr "Ningún ldah !gpdisp!%ld fue encontrado" -#: config/tc-alpha.c:726 +#: config/tc-alpha.c:721 #, c-format msgid "too many !literal!%ld for %s" msgstr "demasiados !literal!%ld para %s" -#: config/tc-alpha.c:756 +#: config/tc-alpha.c:751 #, c-format msgid "No lda !gpdisp!%ld was found" msgstr "No se encontró un lda !gpdisp!%ld" #. Only support one relocation op per insn. -#: config/tc-alpha.c:915 +#: config/tc-alpha.c:910 msgid "More than one relocation op per insn" msgstr "Más de un operador de reubicación por insn" -#: config/tc-alpha.c:930 config/tc-arc.c:1197 +#: config/tc-alpha.c:925 config/tc-arc.c:1137 msgid "No relocation operand" msgstr "No hay un operando de reubicación" -#: config/tc-alpha.c:940 +#: config/tc-alpha.c:935 #, c-format msgid "Unknown relocation operand: !%s" msgstr "Operando de reubicación desconocido: !%s" -#: config/tc-alpha.c:950 +#: config/tc-alpha.c:945 #, c-format msgid "no sequence number after !%s" msgstr "no hay un número de secuencia tras !%s" -#: config/tc-alpha.c:960 +#: config/tc-alpha.c:955 #, c-format msgid "!%s does not use a sequence number" msgstr "!%s no utiliza un número de secuencia" -#: config/tc-alpha.c:970 +#: config/tc-alpha.c:965 #, c-format msgid "Bad sequence number: !%s!%s" -msgstr "Secuencia de números equivocada: !%s!%s" +msgstr "Secuencia de números incorrecta: !%s!%s" -#: config/tc-alpha.c:1186 config/tc-alpha.c:3360 +#: config/tc-alpha.c:1185 config/tc-alpha.c:3359 #, c-format msgid "inappropriate arguments for opcode `%s'" msgstr "argumentos inapropiados para el código operacional «%s»" -#: config/tc-alpha.c:1188 config/tc-alpha.c:3362 +#: config/tc-alpha.c:1187 config/tc-alpha.c:3361 #, c-format msgid "opcode `%s' not supported for target %s" msgstr "no se admite el código operacional «%s» para el objetivo %s" -#: config/tc-alpha.c:1192 config/tc-alpha.c:3366 config/tc-avr.c:1904 -#: config/tc-msp430.c:3988 config/tc-wasm32.c:753 +#: config/tc-alpha.c:1191 config/tc-alpha.c:3365 config/tc-avr.c:1914 +#: config/tc-msp430.c:4363 config/tc-wasm32.c:753 #, c-format msgid "unknown opcode `%s'" msgstr "código operacional desconocido «%s»" -#: config/tc-alpha.c:1273 config/tc-alpha.c:1532 +#: config/tc-alpha.c:1271 config/tc-alpha.c:1530 msgid "overflow in literal (.lita) table" msgstr "desbordamiento en la distribución (.lita) literal" -#: config/tc-alpha.c:1280 config/tc-alpha.c:1304 config/tc-alpha.c:1545 -#: config/tc-alpha.c:2232 config/tc-alpha.c:2277 config/tc-alpha.c:2346 -#: config/tc-alpha.c:2429 config/tc-alpha.c:2654 config/tc-alpha.c:2752 +#: 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 "la macro requiere el registro $at mientras noat está en efecto" -#: config/tc-alpha.c:1282 config/tc-alpha.c:1306 config/tc-alpha.c:1547 +#: config/tc-alpha.c:1280 config/tc-alpha.c:1304 config/tc-alpha.c:1545 msgid "macro requires $at while $at in use" msgstr "la macro requiere $at mientras $at está en uso" -#: config/tc-alpha.c:1491 +#: config/tc-alpha.c:1489 msgid "bignum invalid; zero assumed" msgstr "bignum inválido; se asume cero" -#: config/tc-alpha.c:1493 +#: config/tc-alpha.c:1491 msgid "floating point number invalid; zero assumed" msgstr "número de coma flotante inválido; se asume cero" -#: config/tc-alpha.c:1498 +#: config/tc-alpha.c:1496 msgid "can't handle expression" msgstr "no se puede manipular la expresión" -#: config/tc-alpha.c:1538 +#: config/tc-alpha.c:1536 msgid "overflow in literal (.lit8) table" msgstr "desbordamiento en la distribución (.lit8) literal" -#: config/tc-alpha.c:1835 +#: config/tc-alpha.c:1833 #, c-format msgid "too many ldah insns for !gpdisp!%ld" msgstr "demasiadas insns ldah para !gpdisp!%ld" -#: config/tc-alpha.c:1837 config/tc-alpha.c:1849 +#: 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 "ambas insns para !gpdisp!%ld deben estar en la misma sección" -#: config/tc-alpha.c:1847 +#: config/tc-alpha.c:1845 #, c-format msgid "too many lda insns for !gpdisp!%ld" msgstr "demasiadas insns lda para !gpdisp!%ld" -#: config/tc-alpha.c:1903 +#: config/tc-alpha.c:1901 #, c-format msgid "too many lituse insns for !lituse_tlsgd!%ld" msgstr "demasiadas insns lituse para !lituse_tlsgd!%ld" -#: config/tc-alpha.c:1906 +#: config/tc-alpha.c:1904 #, c-format msgid "too many lituse insns for !lituse_tlsldm!%ld" msgstr "demasiadas insns lituse para !lituse_tlsldm!%ld" -#: config/tc-alpha.c:1923 +#: config/tc-alpha.c:1921 #, c-format msgid "duplicate !tlsgd!%ld" msgstr "!tlsgd!%ld duplicado" -#: config/tc-alpha.c:1925 +#: config/tc-alpha.c:1923 #, c-format msgid "sequence number in use for !tlsldm!%ld" msgstr "número de secuencia en uso para !tlsldm!%ld" -#: config/tc-alpha.c:1939 +#: config/tc-alpha.c:1937 #, c-format msgid "duplicate !tlsldm!%ld" msgstr "duplica !tlsldm!%ld" -#: config/tc-alpha.c:1941 +#: config/tc-alpha.c:1939 #, c-format msgid "sequence number in use for !tlsgd!%ld" msgstr "número de secuencia en uso para !tlsgd!%ld" -#: config/tc-alpha.c:1996 config/tc-arc.c:2806 config/tc-mn10200.c:854 -#: config/tc-mn10300.c:1150 config/tc-ppc.c:1953 config/tc-s390.c:675 -#: config/tc-tilegx.c:427 config/tc-tilegx.c:477 config/tc-tilepro.c:383 +#: config/tc-alpha.c:1994 config/tc-arc.c:2870 config/tc-mn10200.c:848 +#: config/tc-mn10300.c:1150 config/tc-ppc.c:2065 config/tc-tilegx.c:422 +#: config/tc-tilegx.c:472 config/tc-tilepro.c:375 msgid "operand" msgstr "operando" -#: config/tc-alpha.c:2135 +#: config/tc-alpha.c:2133 msgid "invalid relocation for instruction" msgstr "reubicación no válida para la instrucción" -#: config/tc-alpha.c:2149 +#: config/tc-alpha.c:2147 msgid "invalid relocation for field" msgstr "reubicación no válida para el campo" -#: config/tc-alpha.c:2981 +#: config/tc-alpha.c:2979 msgid "can not resolve expression" msgstr "no se puede resolver la expresión" -#: config/tc-alpha.c:3514 config/tc-i370.c:1056 config/tc-microblaze.c:200 -#: config/tc-ppc.c:2275 config/tc-ppc.c:5394 +#: config/tc-alpha.c:3514 config/tc-microblaze.c:183 config/tc-ppc.c:2407 #, c-format msgid ".COMMon length (%ld.) <0! Ignored." msgstr "¡Longitud de .COMM (%ld.) <0! Se descarta." -#: config/tc-alpha.c:3525 config/tc-ia64.c:1094 config/tc-sparc.c:4435 -#: config/tc-v850.c:306 +#: config/tc-alpha.c:3525 config/tc-ia64.c:1091 config/tc-sparc.c:4273 +#: config/tc-v850.c:303 msgid "Ignoring attempt to re-define symbol" msgstr "Se descarta el intento de redefinir el símbolo" -#: config/tc-alpha.c:3617 config/tc-sparc.c:4443 +#: config/tc-alpha.c:3617 config/tc-sparc.c:4281 #, c-format msgid "Length of .comm \"%s\" is already %ld. Not changed to %ld." msgstr "La longitud de .comm «%s» ya es %ld. No se cambia a %ld." @@ -2312,7 +2849,7 @@ msgstr "la directiva .ent no tiene nombre" msgid "nested .ent directives" msgstr "directivas .ent anidadas" -#: config/tc-alpha.c:3776 ecoff.c:3008 +#: config/tc-alpha.c:3776 ecoff.c:2996 msgid ".end directive has no name" msgstr "la directiva .end no tiene nombre" @@ -2324,30 +2861,30 @@ msgstr "directiva .end sin una directiva .ent coincidente" msgid ".end directive names different symbol than .ent" msgstr "la directiva .end nombra un símbolo diferente de .ent" -#: config/tc-alpha.c:3829 ecoff.c:3145 +#: config/tc-alpha.c:3829 ecoff.c:3132 msgid ".fmask outside of .ent" msgstr ".fmask fuera de .ent" -#: config/tc-alpha.c:3831 config/tc-score.c:5598 ecoff.c:3209 +#: config/tc-alpha.c:3831 config/tc-score.c:5582 ecoff.c:3196 msgid ".mask outside of .ent" msgstr ".mask fuera de .ent" -#: config/tc-alpha.c:3839 ecoff.c:3152 +#: config/tc-alpha.c:3839 ecoff.c:3139 msgid "bad .fmask directive" -msgstr "directiva .fmask equivocada" +msgstr "directiva .fmask incorrecta" -#: config/tc-alpha.c:3841 ecoff.c:3216 +#: config/tc-alpha.c:3841 ecoff.c:3203 msgid "bad .mask directive" -msgstr "directiva .mask equivocada" +msgstr "directiva .mask incorrecta" -#: config/tc-alpha.c:3874 config/tc-mips.c:19507 config/tc-score.c:5739 -#: ecoff.c:3173 +#: config/tc-alpha.c:3874 config/tc-mips.c:19926 config/tc-score.c:5716 +#: ecoff.c:3160 msgid ".frame outside of .ent" msgstr ".frame fuera de .ent" -#: config/tc-alpha.c:3885 config/tc-mips.c:19518 ecoff.c:3184 +#: config/tc-alpha.c:3885 config/tc-mips.c:19937 ecoff.c:3171 msgid "bad .frame directive" -msgstr "directiva .frame equivocada" +msgstr "directiva .frame incorrecta" #: config/tc-alpha.c:3919 msgid ".prologue directive without a preceding .ent directive" @@ -2381,7 +2918,7 @@ msgstr "desconoce argumento para .usepv" #: config/tc-alpha.c:4274 #, c-format msgid "unknown section attribute %s" -msgstr "atributo seccional %s desconocido" +msgstr "atributo de sección %s desconocido" #: config/tc-alpha.c:4369 msgid "previous .ent not closed by a .end" @@ -2397,16 +2934,16 @@ msgstr "la directiva .handler no tiene nombre" #: config/tc-alpha.c:4446 msgid "Bad .frame directive 1./2. param" -msgstr "Parámetro 1./2. de directiva .frame equivocado" +msgstr "Parámetro 1./2. de directiva .frame incorrecto" #: config/tc-alpha.c:4456 #, c-format msgid "Bad RA (%d) register for .frame" -msgstr "RA equivocado (%d) registrador para marco .frame" +msgstr "RA incorrecto (%d) registrador para marco .frame" #: config/tc-alpha.c:4461 msgid "Bad .frame directive 3./4. param" -msgstr "Parámetro 3./4. de directiva .frame equivocado" +msgstr "Parámetro 3./4. de directiva .frame incorrecto" #: config/tc-alpha.c:4497 msgid ".pdesc directive not in link (.link) section" @@ -2418,7 +2955,7 @@ msgstr "la directiva .pdesc no tiene un símbolo de entrada" #: config/tc-alpha.c:4515 msgid ".pdesc has a bad entry symbol" -msgstr ".pdesc tiene un símbolo de entrada equivocado" +msgstr ".pdesc tiene un símbolo de entrada incorrecto" #: config/tc-alpha.c:4526 msgid ".pdesc doesn't match with last .ent" @@ -2448,13 +2985,13 @@ msgstr "No hay un símbolo tras .linkage" msgid "No symbol after .code_address" msgstr "No hay un símbolo tras .code_address" -#: config/tc-alpha.c:4771 config/tc-score.c:5604 +#: config/tc-alpha.c:4771 config/tc-score.c:5588 msgid "Bad .mask directive" -msgstr "Directiva .mask equivocada" +msgstr "Directiva .mask incorrecta" #: config/tc-alpha.c:4789 msgid "Bad .fmask directive" -msgstr "Directiva .fmask equivocada" +msgstr "Directiva .fmask incorrecta" #: config/tc-alpha.c:4946 #, c-format @@ -2474,19 +3011,19 @@ msgstr "Intentó establecer .set al modo no reconocido «%s»" #: config/tc-alpha.c:5017 #, c-format msgid "Bad base register, using $%d." -msgstr "Registro base equivocado, se usa $%d." +msgstr "Registro base incorrecto, se usa $%d." -#: config/tc-alpha.c:5038 config/tc-nios2.c:351 config/tc-nios2.c:476 +#: config/tc-alpha.c:5038 #, c-format msgid "Alignment too large: %d. assumed" msgstr "Alineación demasiado grande: %d asumido" -#: config/tc-alpha.c:5042 config/tc-d30v.c:2057 config/tc-nios2.c:355 -#: config/tc-nios2.c:480 config/tc-pru.c:220 config/tc-pru.c:336 +#: config/tc-alpha.c:5042 config/tc-d30v.c:2034 config/tc-pru.c:220 +#: config/tc-pru.c:336 msgid "Alignment negative: 0 assumed" msgstr "Alineación negativa: se asume 0" -#: config/tc-alpha.c:5137 config/tc-alpha.c:5630 +#: config/tc-alpha.c:5137 config/tc-alpha.c:5628 #, c-format msgid "Unknown CPU identifier `%s'" msgstr "Desconoce identificador de CPU «%s»" @@ -2498,26 +3035,35 @@ msgstr "Escoja el valor GP de %lx\n" #: config/tc-alpha.c:5342 msgid "bad .section directive: want a,s,w,x,M,S,G,T in string" -msgstr "directiva .section equivocada: se quiere a,s,w,x,M,S,G,T en la cadena" - -#: config/tc-alpha.c:5431 -#, c-format -msgid "internal error: can't hash opcode `%s': %s" -msgstr "error interno: no se puede dispersar el código operacional «%s»: %s" - -#: config/tc-alpha.c:5467 -#, c-format -msgid "internal error: can't hash macro `%s': %s" -msgstr "error interno: no se puede dispersar la macro «%s»: %s" +msgstr "directiva .section incorrecta: se quiere a,s,w,x,M,S,G,T en la cadena" + +#: config/tc-alpha.c:5430 config/tc-alpha.c:5466 config/tc-arc.c:768 +#: config/tc-arc.c:2564 config/tc-arc.c:2596 config/tc-arc.c:2702 +#: config/tc-cr16.c:807 config/tc-cr16.c:826 config/tc-cris.c:1223 +#: config/tc-crx.c:510 config/tc-crx.c:532 config/tc-crx.c:543 +#: config/tc-dlx.c:289 config/tc-hppa.c:8252 config/tc-i386.c:3490 +#: config/tc-i386.c:3535 config/tc-ia64.c:5360 config/tc-ia64.c:7399 +#: config/tc-ia64.c:7458 config/tc-kvx.c:1478 config/tc-m68k.c:4556 +#: config/tc-m68k.c:4568 config/tc-mips.c:3709 config/tc-mips.c:3742 +#: config/tc-mips.c:3768 config/tc-nds32.c:3440 config/tc-ns32k.c:1906 +#: config/tc-ppc.c:1745 config/tc-ppc.c:1785 config/tc-pru.c:1576 +#: config/tc-pru.c:1580 config/tc-s390.c:611 config/tc-s390.c:649 +#: config/tc-sparc.c:961 config/tc-sparc.c:993 config/tc-tic30.c:121 +#: config/tc-tic30.c:131 config/tc-tic30.c:141 config/tc-tic30.c:151 +#: config/tc-tic4x.c:1219 config/tc-tilegx.c:316 config/tc-tilepro.c:252 +#: config/tc-vax.c:965 config/tc-vax.c:970 ecoff.c:1582 +#, fuzzy, c-format +#| msgid "duplicated `%s'" +msgid "duplicate %s" +msgstr "duplicado «%s»" -#: config/tc-alpha.c:5551 config/tc-arc.c:2459 config/tc-arc.c:2473 -#: config/tc-arm.c:7288 config/tc-arm.c:7300 config/tc-i960.c:706 -#: config/tc-xtensa.c:5432 config/tc-xtensa.c:5508 config/tc-xtensa.c:5625 -#: config/tc-z80.c:1935 +#: config/tc-alpha.c:5549 config/tc-arc.c:2532 config/tc-arc.c:2546 +#: config/tc-arm.c:888 config/tc-xtensa.c:5473 config/tc-xtensa.c:5549 +#: config/tc-xtensa.c:5666 config/tc-z80.c:3677 msgid "syntax error" -msgstr "error sintáctico" +msgstr "error de sintaxis" -#: config/tc-alpha.c:5681 +#: config/tc-alpha.c:5679 msgid "" "Alpha options:\n" "-32addr\t\t\ttreat addresses as 32-bit values\n" @@ -2535,7 +3081,7 @@ msgstr "" "-m21064 | -m21066 | -m21164 | -m21164a | -m21164pc | -m21264 | -m21264a | -m21264b\n" "\t\t\testas variantes incluyen códigos operacionales PALcode\n" -#: config/tc-alpha.c:5691 +#: config/tc-alpha.c:5689 msgid "" "VMS options:\n" "-+\t\t\tencode (don't truncate) names longer than 64 characters\n" @@ -2547,203 +3093,209 @@ msgstr "" "-H\t\t\tmuestra el símbolo nuevo tras truncado por dispersión\n" "-replace/-noreplace\tactiva o desactiva la optimización de llamadas a procedimiento\n" -#: config/tc-alpha.c:5942 config/tc-arc.c:3086 +#: config/tc-alpha.c:5946 config/tc-arc.c:3145 #, c-format msgid "unhandled relocation type %s" msgstr "tipo reubicado %s sin manipular" -#: config/tc-alpha.c:5955 config/tc-arc.c:3094 +#: config/tc-alpha.c:5959 config/tc-arc.c:3153 msgid "non-absolute expression in constant field" msgstr "expresión no absoluta en campo constante" -#: config/tc-alpha.c:5969 +#: config/tc-alpha.c:5973 #, c-format msgid "type %d reloc done?\n" msgstr "¿tipo %d de reubicación hecha?\n" -#: config/tc-alpha.c:6016 config/tc-alpha.c:6023 +#: config/tc-alpha.c:6020 config/tc-alpha.c:6027 msgid "Used $at without \".set noat\"" msgstr "Se utilizó $at sin \".set noat\"" -#: config/tc-alpha.c:6192 +#: config/tc-alpha.c:6196 #, c-format msgid "!samegp reloc against symbol without .prologue: %s" msgstr "reubicación !samegp contra un símbolo sin .prologue: %s" -#: config/tc-alpha.c:6236 config/tc-arc.c:3217 config/tc-tilegx.c:1751 -#: config/tc-tilepro.c:1531 config/tc-wasm32.c:813 config/tc-xtensa.c:6118 +#: config/tc-alpha.c:6240 config/tc-arc.c:3276 config/tc-csky.c:5668 +#: config/tc-tilegx.c:1745 config/tc-tilepro.c:1522 config/tc-wasm32.c:813 +#: config/tc-xtensa.c:6176 #, c-format msgid "cannot represent `%s' relocation in object file" msgstr "no se puede representar la reubicación «%s» en el fichero objeto" -#: config/tc-alpha.c:6242 config/tc-arc.c:3223 +#: config/tc-alpha.c:6246 config/tc-arc.c:3282 #, c-format msgid "internal error? cannot generate `%s' relocation" msgstr "error interno? incapaz de generar «%s» reubicado" -#: config/tc-alpha.c:6338 +#: config/tc-alpha.c:6342 #, c-format msgid "frame reg expected, using $%d." msgstr "se esperaba un registro de marco, se usa $%d." -#: config/tc-arc.c:771 -#, c-format -msgid "internal error: can't hash opcode '%s': %s" -msgstr "error interno: no se puede dispersar el código operacional «%s»: %s" - -#: config/tc-arc.c:779 config/tc-arc.c:2556 config/tc-arc.c:2574 -#: config/tc-arc.c:2627 config/tc-arc.c:2651 config/tc-arc.c:4850 -#: config/tc-arc.c:4917 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 "Memoria agotada" - -#: config/tc-arc.c:829 +#: config/tc-arc.c:831 #, c-format msgid "invalid %s option for %s cpu" msgstr "opción %s no válida para %s cpu" -#: config/tc-arc.c:834 +#: config/tc-arc.c:836 msgid "conflicting ISA extension attributes." msgstr "extensión ISA en conflicto de atributos." -#: config/tc-arc.c:853 +#: config/tc-arc.c:856 msgid "Multiple .cpu directives found" msgstr "Encontradas directivas .cpu múltiples" -#: config/tc-arc.c:871 +#: config/tc-arc.c:874 msgid "Command-line value overrides \".cpu\" directive" msgstr "" -#: config/tc-arc.c:888 +#: config/tc-arc.c:890 #, c-format msgid "unknown architecture: %s\n" msgstr "desconoce arquitectura: %s\n" -#: config/tc-arc.c:1187 +#: config/tc-arc.c:901 config/tc-ia64.c:7468 config/tc-tilegx.c:262 +msgid "Could not set architecture and machine" +msgstr "No se pueden establecer la arquitectura y la máquina" + +#: config/tc-arc.c:1126 msgid "No valid label relocation operand" msgstr "Operando etiquetado reubicado no válido" -#: config/tc-arc.c:1209 +#: config/tc-arc.c:1150 #, c-format msgid "Unknown relocation operand: @%s" msgstr "Operando de reubicación desconocido: @%s" -#: config/tc-arc.c:1222 +#: config/tc-arc.c:1163 #, c-format msgid "Unable to parse TLS base: %s" msgstr "Imposible interpretar base TLS: %s" -#: config/tc-arc.c:1246 +#: config/tc-arc.c:1186 #, c-format msgid "@%s is not a complex relocation." msgstr "@%s no es una reubicación compleja." -#: config/tc-arc.c:1252 +#: config/tc-arc.c:1193 #, c-format msgid "Bad expression: @%s + %s." -msgstr "Expresión equivocada: @%s + %s." +msgstr "Expresión incorrecta: @%s + %s." -#: config/tc-arc.c:1313 +#: config/tc-arc.c:1343 msgid "Brackets in operand field incorrect" msgstr "Corchetes en campo operativo incorrecto" -#: config/tc-arc.c:1315 config/tc-xtensa.c:2038 +#: config/tc-arc.c:1345 config/tc-xtensa.c:2072 msgid "extra comma" msgstr "coma extra" -#: config/tc-arc.c:1317 config/tc-pru.c:1443 config/tc-pru.c:1710 -#: config/tc-xtensa.c:2042 +#: config/tc-arc.c:1347 config/tc-pru.c:1457 config/tc-pru.c:1705 +#: config/tc-xtensa.c:2076 msgid "missing argument" msgstr "ausente el argumento" -#: config/tc-arc.c:1319 config/tc-xtensa.c:2044 +#: config/tc-arc.c:1349 config/tc-xtensa.c:2078 msgid "missing comma or colon" msgstr "ausentea coma o punto y coma" -#: config/tc-arc.c:1388 +#: config/tc-arc.c:1418 msgid "extra dot" msgstr "punto adicional" -#: config/tc-arc.c:1390 +#: config/tc-arc.c:1420 msgid "unrecognized flag" msgstr "marca no reconocida" -#: config/tc-arc.c:1392 +#: config/tc-arc.c:1422 msgid "failed to parse flags" msgstr "fallaba interpretar marcas" -#: config/tc-arc.c:1418 +#: config/tc-arc.c:1448 msgid "Unhandled reloc type" msgstr "Tipo reubicado no manipulado" -#: config/tc-arc.c:2427 +#: config/tc-arc.c:1967 +#, fuzzy +#| msgid "immediate out of range" +msgid "immediate is out of bounds" +msgstr "inmediato fuera de rango" + +#: config/tc-arc.c:1975 +#, fuzzy +#| msgid "immediate offset not 2-byte-aligned" +msgid "immediate is not 32bit aligned" +msgstr "el desplazamiento inmediato no está alineado a 2 bytes" + +#: config/tc-arc.c:1982 +#, fuzzy +#| msgid "immediate offset not 2-byte-aligned" +msgid "immediate is not 16bit aligned" +msgstr "el desplazamiento inmediato no está alineado a 2 bytes" + +#: config/tc-arc.c:2063 +#, fuzzy +#| msgid "operand is not an absolute constant" +msgid "operand is not duplicate of the previous one" +msgstr "operando no es una constante absoluta" + +#: config/tc-arc.c:2083 +#, fuzzy +#| msgid "Operand mismatch" +msgid "flag mismatch" +msgstr "No coinciden los operandos" + +#: config/tc-arc.c:2095 config/tc-pru.c:1413 config/tc-pru.c:1438 +#: config/tc-xtensa.c:2142 +msgid "too many arguments" +msgstr "demasiados argumentos" + +#: config/tc-arc.c:2500 #, c-format msgid "%s for instruction '%s'" msgstr "%s para instrucción «%s»" -#: config/tc-arc.c:2429 +#: config/tc-arc.c:2502 #, c-format msgid "inappropriate arguments for opcode '%s'" msgstr "argumentos inapropiados para código operacional «%s»" -#: config/tc-arc.c:2431 +#: config/tc-arc.c:2504 #, c-format msgid "opcode '%s' not supported for target %s" msgstr "no se admite el código operacional «%s» para el destino %s" -#: config/tc-arc.c:2435 config/tc-tic6x.c:3195 +#: config/tc-arc.c:2508 config/tc-tic6x.c:3188 #, c-format msgid "unknown opcode '%s'" msgstr "desconoce código operacional «%s»" -#: config/tc-arc.c:2493 -#, c-format -msgid "Inserting \"%s\" into register table failed: %s" -msgstr "Insertando «%s» dentro de tabla de registro fallada: %s" - -#: config/tc-arc.c:2529 -#, c-format -msgid "Inserting \"%s\" into address type table failed: %s" -msgstr "Insertando «%s» dentro de distribución de tipo direccional fallada: %s" - -#: config/tc-arc.c:2548 config/tc-arc.c:5015 config/tc-h8300.c:81 -#: config/tc-h8300.c:90 config/tc-h8300.c:100 config/tc-h8300.c:110 -#: config/tc-h8300.c:120 config/tc-h8300.c:131 config/tc-h8300.c:248 -#: config/tc-hppa.c:6821 config/tc-hppa.c:6827 config/tc-hppa.c:6833 -#: config/tc-hppa.c:6839 config/tc-hppa.c:8228 config/tc-lm32.c:197 -#: config/tc-mips.c:3588 config/tc-mips.c:4097 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 +#: config/tc-arc.c:2614 config/tc-arc.c:5093 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:6826 config/tc-hppa.c:6832 config/tc-hppa.c:6838 +#: config/tc-hppa.c:6844 config/tc-hppa.c:8231 config/tc-kvx.c:1438 +#: config/tc-lm32.c:197 config/tc-mips.c:3699 config/tc-mips.c:4193 +#: config/tc-mn10300.c:935 config/tc-mn10300.c:940 config/tc-mn10300.c:2438 +#: config/tc-riscv.c:1897 config/tc-riscv.c:5716 msgid "could not set architecture and machine" msgstr "no se pueden establecer la arquitectura y la máquina" -#: config/tc-arc.c:2644 config/tc-arc.c:4837 -#, c-format -msgid "internal error: can't hash aux register '%s': %s" -msgstr "error interno: no se puede dispersar registro aux «%s»: %s" - -#: config/tc-arc.c:2751 +#: config/tc-arc.c:2815 #, c-format msgid "unhandled reloc %s in md_pcrel_from_section" msgstr "compostura de reubicación %s en md_pcrel_from_section" -#: config/tc-arc.c:2816 +#: config/tc-arc.c:2880 msgid "Unaligned operand. Needs to be 32bit aligned" msgstr "Operando no alineado. Requiere ser alineado a 32bit" -#: config/tc-arc.c:2821 +#: config/tc-arc.c:2885 msgid "Unaligned operand. Needs to be 16bit aligned" msgstr "Operando no alineado. Requiere ser alineado a 16-bit" -#: config/tc-arc.c:2898 config/tc-cr16.c:573 config/tc-crx.c:345 -#: config/tc-mn10200.c:766 write.c:1024 -#, c-format -msgid "can't resolve `%s' {%s section} - `%s' {%s section}" -msgstr "no se puede resolver «%s» {sección %s} - «%s» {sección %s}" - -#: config/tc-arc.c:2957 +#: config/tc-arc.c:3016 #, c-format msgid "PC relative relocation not allowed for (internal) type %d" msgstr "PC relativo reubicadado no asumido para tipo (interno) %d" @@ -2752,44 +3304,44 @@ msgstr "PC relativo reubicadado no asumido para tipo (interno) %d" #. the insn. #. FIXME! Check for the conditionality of #. the insn. -#: config/tc-arc.c:3002 config/tc-arc.c:3980 +#: config/tc-arc.c:3061 config/tc-arc.c:4042 msgid "TLS_*_S9 relocs are not supported yet" msgstr "TLS_*_S9 como reubicaciones no son aún admitidas" #. 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:3038 +#: config/tc-arc.c:3097 msgid "Unsupported operation on reloc" msgstr "Operación no soportado en reubicación" -#: config/tc-arc.c:3114 config/tc-arc.c:3130 +#: config/tc-arc.c:3173 config/tc-arc.c:3189 msgid "unknown fixup size" msgstr "desconoce tamaño arreglado" -#: config/tc-arc.c:3264 +#: config/tc-arc.c:3323 msgid "no relaxation found for this instruction." msgstr "ninguna relajación encontrada para esta instrucción." -#: config/tc-arc.c:3514 +#: config/tc-arc.c:3576 #, c-format msgid "ARC-specific assembler options:\n" msgstr "" "Opciones ensambladoras específicas ARC:\n" "\n" -#: config/tc-arc.c:3540 +#: config/tc-arc.c:3602 #, c-format msgid " -mrelax enable relaxation\n" msgstr " -mrelax activa relajación\n" -#: config/tc-arc.c:3543 +#: config/tc-arc.c:3605 #, c-format msgid "" "The following ARC-specific assembler options are deprecated and are accepted\n" "for compatibility only:\n" msgstr "" -#: config/tc-arc.c:3546 +#: config/tc-arc.c:3608 #, c-format msgid "" " -mEA\n" @@ -2844,927 +3396,1180 @@ msgstr "" " -muser-mode-only\n" " -mxy\n" -#: config/tc-arc.c:3636 +#: config/tc-arc.c:3698 #, c-format msgid "Unable to find %s relocation for instruction %s" msgstr "Incapaz encontrar %s reubicacion para instrucción %s" -#: config/tc-arc.c:3931 +#: config/tc-arc.c:3993 #, c-format msgid "Unable to use @plt relocation for insn %s" msgstr "Incapaz de utilizar @plt para reubicación para insn %s" -#: config/tc-arc.c:3950 +#: config/tc-arc.c:4012 #, c-format msgid "Unable to use @pcl relocation for insn %s" msgstr "Incapaz de emplear reubicación @pcl para insn %s" -#: config/tc-arc.c:4006 +#: config/tc-arc.c:4068 #, c-format msgid "invalid relocation %s for field" msgstr "reubicación no válida %s para campo" -#: config/tc-arc.c:4117 +#: config/tc-arc.c:4178 #, c-format msgid "Insn %s has a jump/branch instruction %s in its delay slot." msgstr "Insn %s tiene una instrucción omitida/rama %s dentro de su ranura de retardo." -#: config/tc-arc.c:4122 +#: config/tc-arc.c:4183 #, c-format msgid "Insn %s has an instruction %s with limm in its delay slot." msgstr "Insn %s tiene una instrucción %s con limm en ranura de retardo." -#: config/tc-arc.c:4232 config/tc-microblaze.c:2531 config/tc-mn10300.c:1069 -#: config/tc-sh.c:801 config/tc-z80.c:700 read.c:4600 +#: config/tc-arc.c:4293 config/tc-microblaze.c:2628 config/tc-mn10300.c:1069 +#: config/tc-sh.c:418 config/tc-z80.c:1120 read.c:4837 #, c-format msgid "unsupported BFD relocation size %u" msgstr "no se admite el tamaño de reubicación BFD %u" -#: config/tc-arc.c:4252 +#: config/tc-arc.c:4313 #, c-format msgid "Jump/Branch instruction detected at the end of the ZOL label @%s" msgstr "Omisión/Rama de instrucción detectada al final de la etiqueta ZOL @%s" -#: config/tc-arc.c:4259 +#: config/tc-arc.c:4320 #, c-format msgid "Kernel instruction detected at the end of the ZOL label @%s" msgstr "Instrucción núcleo detectada el final de la etiqueta ZOL @%s" -#: config/tc-arc.c:4264 +#: config/tc-arc.c:4325 #, c-format msgid "A jump instruction with long immediate detected at the end of the ZOL label @%s" msgstr "Una instrucción omitida con longitud inmediata detectada al final de la etiqueta ZOL @%s" -#: config/tc-arc.c:4270 +#: config/tc-arc.c:4331 #, c-format msgid "An illegal use of delay slot detected at the end of the ZOL label @%s" msgstr "" -#: config/tc-arc.c:4375 +#: config/tc-arc.c:4440 msgid "expected comma after instruction name" msgstr "esperaba coma después del nombre de instrucción" -#: config/tc-arc.c:4387 +#: config/tc-arc.c:4452 msgid "expected comma after major opcode" msgstr "esperaba coma tras operación de código mayor" -#: config/tc-arc.c:4573 +#: config/tc-arc.c:4637 #, c-format msgid "Pseudocode already used %s" msgstr "Pseudocódigo ya utilizado %s" -#: config/tc-arc.c:4581 +#: config/tc-arc.c:4645 #, c-format msgid "major opcode not in range [0x%02x - 0x%02x]" msgstr "" -#: config/tc-arc.c:4585 +#: config/tc-arc.c:4649 msgid "minor opcode not in range [0x00 - 0x3f]" msgstr "código operacional menor no dentro del rango [0x00 - 0x3f]" -#: config/tc-arc.c:4591 +#: config/tc-arc.c:4655 msgid "Improper use of OP1_IMM_IMPLIED" msgstr "Utilización impropia de OP1_IMM_IMPLIED" -#: config/tc-arc.c:4597 +#: config/tc-arc.c:4661 msgid "Improper use of OP1_MUST_BE_IMM" msgstr "Utilización impropia de OP1_MUST_BE_IMM" -#: config/tc-arc.c:4609 +#: config/tc-arc.c:4673 msgid "Couldn't generate extension instruction opcodes" msgstr "No pudo generar instrucciones extensas de códigos de operación" -#: config/tc-arc.c:4645 +#: config/tc-arc.c:4708 msgid "expected comma after name" msgstr "esperaba una coma tras el nombre" -#: config/tc-arc.c:4656 +#: config/tc-arc.c:4719 #, c-format msgid "%s second argument cannot be a negative number %d" msgstr "segundo argumento %s no puede ser un número %d negativo" -#: config/tc-arc.c:4671 +#: config/tc-arc.c:4734 msgid "expected comma after register number" msgstr "esperaba coma tras número del registro" -#: config/tc-arc.c:4692 +#: config/tc-arc.c:4755 msgid "invalid mode" msgstr "modo inválido" -#: config/tc-arc.c:4710 +#: config/tc-arc.c:4773 msgid "expected comma after register mode" msgstr "esperaba coma tras modo registro" -#: config/tc-arc.c:4725 +#: config/tc-arc.c:4788 msgid "shortcut designator invalid" msgstr "designador de atajo inválido" -#: config/tc-arc.c:4824 +#: config/tc-arc.c:4886 #, c-format msgid "core register %s value (%d) too large" msgstr "registro %s core con valor (%d) es demasiado grande" -#: config/tc-arc.c:4843 +#: config/tc-arc.c:4898 +#, fuzzy, c-format +#| msgid "duplicate macro %s" +msgid "duplicate aux register %s" +msgstr "macro duplicado %s" + +#: config/tc-arc.c:4903 #, c-format msgid "condition code %s value (%d) too large" msgstr "código %s condicional con valor (%d) es demasiado grande" -#: config/tc-arc.c:4862 +#: config/tc-arc.c:4920 msgid "Unknown extension" msgstr "Desconoce extensión" -#: config/tc-arc.c:4967 +#: config/tc-arc.c:5027 msgid "Overwrite explicitly set Tag_ARC_CPU_base" msgstr "" -#: config/tc-arm.c:619 +#: config/tc-arc.c:5077 +msgid "Overwrite explicitly set Tag_ARC_ABI_rf16 to full register file" +msgstr "" + +#: config/tc-arm.c:702 msgid "ARM register expected" msgstr "ARM como registro esperado" -#: config/tc-arm.c:620 +#: config/tc-arm.c:703 msgid "bad or missing co-processor number" -msgstr "número de co-procesador equivocado o ausentente" +msgstr "número de co-procesador incorrecto o ausentente" -#: config/tc-arm.c:621 +#: config/tc-arm.c:704 msgid "co-processor register expected" msgstr "se esperaba un registro de co-procesador" -#: config/tc-arm.c:622 -msgid "FPA register expected" -msgstr "FPA como registros esperado" - -#: config/tc-arm.c:623 +#: config/tc-arm.c:705 msgid "VFP single precision register expected" msgstr "Se esperaba un registro de precisión simple VFP" -#: config/tc-arm.c:624 +#: config/tc-arm.c:706 msgid "VFP/Neon double precision register expected" msgstr "Se esperaba un registro de precisión doble VFP/Neon" -#: config/tc-arm.c:625 +#: config/tc-arm.c:707 msgid "Neon quad precision register expected" msgstr "Se esperaba un registro de precisión cuádruple Neon" -#: config/tc-arm.c:626 +#: config/tc-arm.c:708 msgid "VFP single or double precision register expected" msgstr "Se esperaba un registro de precisión simple o doble VFP" -#: config/tc-arm.c:627 +#: config/tc-arm.c:709 msgid "Neon double or quad precision register expected" msgstr "Se esperaba un registro de precisión doble o cuádruple Neon" -#: config/tc-arm.c:628 +#: config/tc-arm.c:710 msgid "Neon single or double precision register expected" msgstr "Se esperaba un registro de precisión simple o doble Neon" -#: config/tc-arm.c:629 +#: config/tc-arm.c:711 msgid "VFP single, double or Neon quad precision register expected" msgstr "Se esperaba un registro de precisión simple o doble VFP, o cuádruple Neon" -#: config/tc-arm.c:631 +#: config/tc-arm.c:713 msgid "VFP system register expected" msgstr "VFP como registro esperado" -#: config/tc-arm.c:632 -msgid "Maverick MVF register expected" -msgstr "Maverick MVF como registro esperado" - -#: config/tc-arm.c:633 -msgid "Maverick MVD register expected" -msgstr "Maverick MVD como registro esperado" - -#: config/tc-arm.c:634 -msgid "Maverick MVFX register expected" -msgstr "Maverick MVFX como registro esperado" - -#: config/tc-arm.c:635 -msgid "Maverick MVDX register expected" -msgstr "Maverick MVDX como registro esperado" - -#: config/tc-arm.c:636 -msgid "Maverick MVAX register expected" -msgstr "Maverick MVAX como registro esperado" - -#: config/tc-arm.c:637 -msgid "Maverick DSPSC register expected" -msgstr "Maverick DSPSC como registro esperado" - -#: config/tc-arm.c:638 +#: config/tc-arm.c:714 msgid "iWMMXt data register expected" msgstr "se esperaba un registro de datos iWMMXt" -#: config/tc-arm.c:639 config/tc-arm.c:7061 +#: config/tc-arm.c:715 config/tc-arm.c:7745 msgid "iWMMXt control register expected" msgstr "se esperaba un registro de control iWMMXt" -#: config/tc-arm.c:640 +#: config/tc-arm.c:716 msgid "iWMMXt scalar register expected" msgstr "se esperaba un registro escalar iWMMXt" -#: config/tc-arm.c:641 +#: config/tc-arm.c:717 msgid "XScale accumulator register expected" msgstr "XScale como registro acumulado esperado" +#: config/tc-arm.c:718 +#, fuzzy +#| msgid "SVE vector register expected" +msgid "MVE vector register expected" +msgstr "SVE como vector esperaba registro" + +#: config/tc-arm.c:720 +#, fuzzy +#| msgid "ARM register expected" +msgid "ZR register expected" +msgstr "ARM como registro esperado" + +#: config/tc-arm.c:721 +#, fuzzy +#| msgid "base register expected" +msgid "Pseudo register expected" +msgstr "se esperaba un registro base" + #. For score5u : div/mul will pop warning message, mmu/alw/asw will pop error message. -#: config/tc-arm.c:803 config/tc-score.c:259 +#: config/tc-arm.c:889 config/tc-score.c:255 msgid "bad arguments to instruction" -msgstr "argumentos equivocados para la instrucción" +msgstr "argumentos incorrectos para la instrucción" -#: config/tc-arm.c:804 +#: config/tc-arm.c:890 msgid "r13 not allowed here" msgstr "no se permite r13 aquí" -#: config/tc-arm.c:805 +#: config/tc-arm.c:891 msgid "r15 not allowed here" msgstr "no se permite r15 aquí" -#: config/tc-arm.c:806 +#: config/tc-arm.c:892 +#, fuzzy +#| msgid "odd register cannot be used here" +msgid "Odd register not allowed here" +msgstr "no se puede usar aquí un registro impar" + +#: config/tc-arm.c:893 +#, fuzzy +#| msgid "r13 not allowed here" +msgid "Even register not allowed here" +msgstr "no se permite r13 aquí" + +#: config/tc-arm.c:894 msgid "instruction cannot be conditional" msgstr "la instrucción no puede ser condicional" -#: config/tc-arm.c:807 +#: config/tc-arm.c:895 msgid "registers may not be the same" msgstr "los registros quizá no son el mismo" -#: config/tc-arm.c:808 +#: config/tc-arm.c:896 msgid "lo register required" msgstr "se requiere el registro lo" -#: config/tc-arm.c:809 +#: config/tc-arm.c:897 msgid "instruction not supported in Thumb16 mode" msgstr "la instrucción no se admite en modo Thumb16" -#: config/tc-arm.c:810 +#: config/tc-arm.c:898 msgid "instruction does not accept this addressing mode" msgstr "la instrucción no acepta este modo de direccionamiento" -#: config/tc-arm.c:811 +#: config/tc-arm.c:899 msgid "branch must be last instruction in IT block" msgstr "branch debe ser la última instrucción en el bloque IT" -#: config/tc-arm.c:812 +#: config/tc-arm.c:900 +#, fuzzy +#| msgid "must branch to an address a multiple of 4" +msgid "branch out of range or not a multiple of 2" +msgstr "se debe ramificar a una dirección que sea múltiplo de 4" + +#: config/tc-arm.c:901 +#, fuzzy +#| msgid "instruction not allowed in IT block" +msgid "instruction not allowed in VPT block" +msgstr "no se permite la instrucción en el bloque IT" + +#: config/tc-arm.c:902 msgid "instruction not allowed in IT block" msgstr "no se permite la instrucción en el bloque IT" -#: config/tc-arm.c:813 +#: config/tc-arm.c:903 +#, fuzzy +#| msgid "No instruction or missing opcode." +msgid "instruction missing MVE vector predication code" +msgstr "No hay instrucción o ausente el código operacional." + +#: config/tc-arm.c:904 msgid "selected FPU does not support instruction" msgstr "la FPU seleccionada no admite la instrucción" -#: config/tc-arm.c:814 +#: config/tc-arm.c:905 msgid "thumb conditional instruction should be in IT block" msgstr "instrucción condicional pulgar debería estar en el bloque IT" -#: config/tc-arm.c:815 +#: config/tc-arm.c:907 +#, fuzzy +#| msgid "thumb conditional instruction should be in IT block" +msgid "vector predicated instruction should be in VPT/VPST block" +msgstr "instrucción condicional pulgar debería estar en el bloque IT" + +#: config/tc-arm.c:908 msgid "incorrect condition in IT block" msgstr "condición incorrecta en el bloque IT" -#: config/tc-arm.c:816 +#: config/tc-arm.c:909 +#, fuzzy +#| msgid "incorrect condition in IT block" +msgid "incorrect condition in VPT/VPST block" +msgstr "condición incorrecta en el bloque IT" + +#: config/tc-arm.c:910 msgid "IT falling in the range of a previous IT block" msgstr "IT cayendo dentro de límite de un bloque IT anterior" -#: config/tc-arm.c:817 +#: config/tc-arm.c:911 msgid "missing .fnstart before unwinding directive" msgstr "ausente .fnstart antes de directiva unwinding" -#: config/tc-arm.c:819 +#: config/tc-arm.c:913 msgid "cannot use register index with PC-relative addressing" msgstr "no se puede usar el índice de registro con direccionamiento relativo al PC" -#: config/tc-arm.c:821 +#: config/tc-arm.c:915 msgid "cannot use writeback with PC-relative addressing" msgstr "no se puede usar retroescritura con el direccionamiento relativo al PC" -#: config/tc-arm.c:823 +#: config/tc-arm.c:917 msgid "selected processor does not support fp16 instruction" msgstr "procesador seleccionado no admite instrucción fp16" -#: config/tc-arm.c:824 +#: config/tc-arm.c:918 +#, fuzzy +#| msgid "selected processor does not support fp16 instruction" +msgid "selected processor does not support bf16 instruction" +msgstr "procesador seleccionado no admite instrucción fp16" + +#: config/tc-arm.c:919 +#, fuzzy +#| msgid "selected processor does not support fp16 instruction" +msgid "selected processor does not support cde instruction" +msgstr "procesador seleccionado no admite instrucción fp16" + +#: config/tc-arm.c:920 +msgid "coprocessor for insn is not enabled for cde" +msgstr "" + +#: config/tc-arm.c:921 msgid "using " msgstr "empleando " -#: config/tc-arm.c:825 +#: config/tc-arm.c:922 msgid "relocation valid in thumb1 code only" msgstr "validación de reubicación en código thumb1 único" -#: config/tc-arm.c:1032 +#: config/tc-arm.c:923 +msgid "Warning: instruction is UNPREDICTABLE in an IT block" +msgstr "" + +#: config/tc-arm.c:925 +msgid "Warning: instruction is UNPREDICTABLE in a VPT block" +msgstr "" + +#: config/tc-arm.c:927 +msgid "Warning: instruction is UNPREDICTABLE with PC operand" +msgstr "" + +#: config/tc-arm.c:929 +msgid "Warning: instruction is UNPREDICTABLE with SP operand" +msgstr "" + +#: config/tc-arm.c:931 +#, fuzzy +#| msgid "bad type in Neon instruction" +msgid "bad type in SIMD instruction" +msgstr "equivocación de tipo en instrucción Neon" + +#: config/tc-arm.c:933 +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:935 +msgid "Warning: 32-bit element size and same destination and source operands makes instruction UNPREDICTABLE" +msgstr "" + +#: config/tc-arm.c:937 +msgid "bad element type for instruction" +msgstr "tipo elemental incorrecto para instrucción" + +#: config/tc-arm.c:938 +#, fuzzy +#| msgid "SVE vector register expected" +msgid "MVE vector register Q[0..7] expected" +msgstr "SVE como vector esperaba registro" + +#: config/tc-arm.c:939 +#, fuzzy +#| msgid "selected processor does not support DSP extension" +msgid "selected processor does not support PACBTI extention" +msgstr "procesador seleccionado no admite la extensión DSP" + +#: config/tc-arm.c:1159 msgid "immediate expression requires a # prefix" msgstr "expresión inmediata requiere un # prefijado" -#: config/tc-arm.c:1061 read.c:3816 +#: config/tc-arm.c:1188 read.c:4077 msgid "missing expression" msgstr "ausentea expresión" -#: config/tc-arm.c:1091 config/tc-arm.c:5260 config/tc-i960.c:1298 -#: config/tc-score.c:1210 +#: config/tc-arm.c:1202 config/tc-arm.c:5590 config/tc-score.c:1205 msgid "invalid constant" msgstr "constante no válida" -#: config/tc-arm.c:1223 +#: config/tc-arm.c:1337 msgid "expected #constant" msgstr "se esperaba #constant" -#: config/tc-arm.c:1387 +#: config/tc-arm.c:1509 config/tc-arm.c:1540 #, c-format -msgid "unexpected character `%c' in type specifier" -msgstr "carácter inesperado `%c' en el especificador de tipo" +msgid "bad size %d in type specifier" +msgstr "tamaño incorrecto %d en el especificador de tipo" -#: config/tc-arm.c:1404 +#: config/tc-arm.c:1516 +#, fuzzy +#| msgid "unexpected character `%c' in element size" +msgid "unexpected type character `b' -- did you mean `bf'?" +msgstr "carácter inesperado `%c' dentro del tamaño elemental" + +#: config/tc-arm.c:1523 #, c-format -msgid "bad size %d in type specifier" -msgstr "tamaño equivocado %d en el especificador de tipo" +msgid "unexpected character `%c' in type specifier" +msgstr "carácter inesperado `%c' en el especificador de tipo" -#: config/tc-arm.c:1454 +#: config/tc-arm.c:1590 msgid "only one type should be specified for operand" -msgstr "sólo se debe especificar un tipo para operando" +msgstr "solo se debe especificar un tipo para operando" -#: config/tc-arm.c:1460 +#: config/tc-arm.c:1596 msgid "vector type expected" msgstr "se esperaba un tipo vector" -#: config/tc-arm.c:1534 +#: config/tc-arm.c:1705 +#, fuzzy +#| msgid "expected EP register" +msgid "expected MVE register [q0..q7]" +msgstr "se esperaba el registro EP" + +#: config/tc-arm.c:1725 msgid "can't redefine type for operand" msgstr "no se puede redefinir el tipo para operando" -#: config/tc-arm.c:1547 +#: config/tc-arm.c:1741 +#, fuzzy +#| msgid "only D registers may be indexed" +msgid "only D and Q registers may be indexed" +msgstr "solo se pueden indizar los registros D" + +#: config/tc-arm.c:1743 msgid "only D registers may be indexed" -msgstr "sólo se pueden indizar los registros D" +msgstr "solo se pueden indizar los registros D" -#: config/tc-arm.c:1553 +#: config/tc-arm.c:1749 msgid "can't change index for operand" -msgstr "no se puede modificar el índice para operando" +msgstr "no se puede modificar el índice para el operando" -#: config/tc-arm.c:1616 +#: config/tc-arm.c:1812 msgid "register operand expected, but got scalar" msgstr "se esperaba un operando de registro, pero se recibió un escalar" -#: config/tc-arm.c:1653 +#: config/tc-arm.c:1863 msgid "scalar must have an index" msgstr "el escalar debe tener un índice" -#: config/tc-arm.c:1658 config/tc-arm.c:16583 config/tc-arm.c:16643 -#: config/tc-arm.c:17097 +#: config/tc-arm.c:1868 config/tc-arm.c:20038 config/tc-arm.c:20121 +#: config/tc-arm.c:20794 msgid "scalar index out of range" -msgstr "índice escalar fuera de límite" +msgstr "índice escalar fuera de rango" -#: config/tc-arm.c:1708 +#: config/tc-arm.c:1947 +#, fuzzy +#| msgid "'APSR', 'CPSR' or 'SPSR' expected" +msgid "r0-r12, lr or APSR expected" +msgstr "'APSR', 'CPSR' o 'SPSR' esperado" + +#: config/tc-arm.c:1974 config/tc-arm.c:4376 msgid "bad range in register list" -msgstr "límite equivocado en la lista de registros" +msgstr "límite incorrecto en la lista de registros" -#: config/tc-arm.c:1716 config/tc-arm.c:1725 config/tc-arm.c:1766 +#: config/tc-arm.c:1982 config/tc-arm.c:1991 config/tc-arm.c:2032 +#: config/tc-arm.c:4360 config/tc-arm.c:4380 #, c-format msgid "Warning: duplicated register (r%d) in register list" msgstr "Aviso: registro duplicado (r%d) en la lista de registros" -#: config/tc-arm.c:1728 +#: config/tc-arm.c:1994 msgid "Warning: register range not in ascending order" msgstr "Aviso: el límite de registros no está en orden ascendente" -#: config/tc-arm.c:1739 +#: config/tc-arm.c:2005 msgid "missing `}'" msgstr "ausente `}'" -#: config/tc-arm.c:1755 +#: config/tc-arm.c:2021 msgid "invalid register mask" msgstr "máscara de registro no válida" -#: config/tc-arm.c:1890 config/tc-arm.c:1934 +#: config/tc-arm.c:2098 +msgid "expecting {" +msgstr "esperando {" + +#: config/tc-arm.c:2165 config/tc-arm.c:2273 +#, fuzzy +#| msgid "expected }" +msgid "VPR expected last" +msgstr "se esperaba }" + +#: config/tc-arm.c:2171 +#, fuzzy +#| msgid "VFP single precision register expected" +msgid "VFP single precision register or VPR expected" +msgstr "Se esperaba un registro de precisión simple VFP" + +#. regtype == REG_TYPE_VFD. +#: config/tc-arm.c:2174 +#, fuzzy +#| msgid "VFP/Neon double precision register expected" +msgid "VFP/Neon double precision register or VPR expected" +msgstr "Se esperaba un registro de precisión doble VFP/Neon" + +#: config/tc-arm.c:2191 config/tc-arm.c:2235 msgid "register out of range in list" -msgstr "registro fuera de límite en la lista" +msgstr "registro fuera de rango en la lista" -#: config/tc-arm.c:1912 config/tc-arm.c:4197 config/tc-arm.c:4331 +#: config/tc-arm.c:2213 config/tc-arm.c:4526 config/tc-arm.c:4660 msgid "register list not in ascending order" msgstr "la lista de registros no está en orden ascendente" -#: config/tc-arm.c:1943 +#: config/tc-arm.c:2244 msgid "register range not in ascending order" msgstr "el límite de registros no está en orden ascendente" -#: config/tc-arm.c:1976 +#: config/tc-arm.c:2283 msgid "non-contiguous register range" msgstr "el límite de registros no es contiguo" -#: config/tc-arm.c:2035 +#: config/tc-arm.c:2343 +#, fuzzy +#| msgid "register stride must be 1 or 2" +msgid "register stride must be 1" +msgstr "el registro estribo debe ser 1 o 2" + +#: config/tc-arm.c:2344 msgid "register stride must be 1 or 2" msgstr "el registro estribo debe ser 1 o 2" -#: config/tc-arm.c:2036 +#: config/tc-arm.c:2345 msgid "mismatched element/structure types in list" msgstr "los tipos de elementos/estructura no coinciden en la lista" -#: config/tc-arm.c:2104 +#: config/tc-arm.c:2415 msgid "don't use Rn-Rm syntax with non-unit stride" msgstr "no use la sintaxis Rn-Rm sin un estribo que no sea unidad" -#: config/tc-arm.c:2159 +#: config/tc-arm.c:2470 msgid "error parsing element/structure list" msgstr "error al decodificar la lista de elementos/estructura" -#: config/tc-arm.c:2165 +#: config/tc-arm.c:2476 msgid "expected }" msgstr "se esperaba }" -#: config/tc-arm.c:2256 +#: config/tc-arm.c:2566 msgid "attempt to redefine typed alias" msgstr "se intentó redefinir el alias con tipo" -#: config/tc-arm.c:2391 +#: config/tc-arm.c:2701 msgid "bad type for register" -msgstr "tipo equivocado para el registro" +msgstr "tipo incorrecto para el registro" -#: config/tc-arm.c:2402 config/tc-nios2.c:1804 +#: config/tc-arm.c:2712 msgid "expression must be constant" msgstr "la expresión debe ser constante" -#: config/tc-arm.c:2419 +#: config/tc-arm.c:2729 msgid "can't redefine the type of a register alias" msgstr "no se redefinir el tipo de un alias de registro" -#: config/tc-arm.c:2426 +#: config/tc-arm.c:2736 msgid "you must specify a single type only" -msgstr "sólo debe especificar un tipo único" +msgstr "solo debe especificar un tipo único" -#: config/tc-arm.c:2439 +#: config/tc-arm.c:2749 msgid "can't redefine the index of a scalar alias" msgstr "no se puede redefinir el índice de un alias escalar" -#: config/tc-arm.c:2447 +#: config/tc-arm.c:2757 msgid "scalar index must be constant" msgstr "el índice escalar debe ser constante" -#: config/tc-arm.c:2456 +#: config/tc-arm.c:2766 msgid "expecting ]" msgstr "se esperaba ]" -#: config/tc-arm.c:2508 +#: config/tc-arm.c:2818 msgid "invalid syntax for .dn directive" msgstr "sintaxis no válida para la directiva .dn" -#: config/tc-arm.c:2514 +#: config/tc-arm.c:2824 msgid "invalid syntax for .qn directive" msgstr "sintaxis no válida para la directiva .qn" -#: config/tc-arm.c:2549 +#: config/tc-arm.c:2854 #, c-format msgid "ignoring attempt to use .unreq on fixed register name: '%s'" msgstr "se descarta el intento de usar .unreq en un nombre de registro interno fijo: «%s»" -#: config/tc-arm.c:2814 +#: config/tc-arm.c:3116 #, c-format msgid "Failed to find real start of function: %s\n" msgstr "Falló al buscar el inicio real de la función: %s\n" -#: config/tc-arm.c:2831 +#: config/tc-arm.c:3133 msgid "selected processor does not support THUMB opcodes" msgstr "procesador seleccionado no admite códigos operacionales THUMB" -#: config/tc-arm.c:2844 +#: config/tc-arm.c:3146 msgid "selected processor does not support ARM opcodes" msgstr "procesador seleccionado no admite códigos operacionales ARM" -#: config/tc-arm.c:2856 +#: config/tc-arm.c:3158 #, c-format msgid "invalid instruction size selected (%d)" msgstr "tamaño de instrucción seleccionado inválido (%d)" -#: config/tc-arm.c:2888 +#: config/tc-arm.c:3190 #, c-format msgid "invalid operand to .code directive (%d) (expecting 16 or 32)" msgstr "operando inválido para la directiva .code (%d) (se esperaba 16 o 32)" -#: config/tc-arm.c:2943 +#: config/tc-arm.c:3246 #, c-format msgid "expected comma after name \"%s\"" msgstr "se esperaba una coma tras nombre «%s»" -#: config/tc-arm.c:2993 config/tc-m32r.c:584 +#: config/tc-arm.c:3296 config/tc-m32r.c:584 #, c-format msgid "symbol `%s' already defined" msgstr "el símbolo «%s» ya está definido" -#: config/tc-arm.c:3026 +#: config/tc-arm.c:3329 #, c-format msgid "unrecognized syntax mode \"%s\"" msgstr "no reconocido el modo de sintaxis «%s»" -#: config/tc-arm.c:3069 +#: config/tc-arm.c:3359 msgid ".ref pseudo-op only available with -mccs flag." msgstr "" -#: config/tc-arm.c:3110 +#: config/tc-arm.c:3400 msgid ".asmfunc repeated." msgstr ".asmfunc repetido." -#: config/tc-arm.c:3114 +#: config/tc-arm.c:3404 msgid ".asmfunc without function." msgstr "símbolo .asmfunc función." -#: config/tc-arm.c:3120 +#: config/tc-arm.c:3410 msgid ".asmfunc pseudo-op only available with -mccs flag." msgstr ".asmfunc pseudo-op solo disponible con marca -mccs." -#: config/tc-arm.c:3131 +#: config/tc-arm.c:3421 msgid ".endasmfunc without a .asmfunc." msgstr ".endasmfunc sin un .asmfunc." -#: config/tc-arm.c:3135 +#: config/tc-arm.c:3425 msgid ".endasmfunc without function." msgstr ".endasmfunc sin función." -#: config/tc-arm.c:3146 +#: config/tc-arm.c:3436 msgid ".endasmfunc pseudo-op only available with -mccs flag." msgstr "" -#: config/tc-arm.c:3155 +#: config/tc-arm.c:3445 msgid ".def pseudo-op only available with -mccs flag." msgstr "" -#: config/tc-arm.c:3313 +#: config/tc-arm.c:3603 msgid "invalid type for literal pool" msgstr "tipo inválido para de conjunto de literales" -#: config/tc-arm.c:3393 config/tc-tic54x.c:5354 +#: config/tc-arm.c:3683 config/tc-tic54x.c:5379 #, c-format msgid "Invalid label '%s'" msgstr "Etiqueta no válida «%s»" -#: config/tc-arm.c:3569 +#: config/tc-arm.c:3860 msgid "(plt) is only valid on branch targets" -msgstr "(plt) sólo es válido en objetivos ramas" +msgstr "(plt) solo es válido en objetivos ramas" -#: config/tc-arm.c:3575 config/tc-s390.c:1209 config/tc-s390.c:1865 -#: config/tc-xtensa.c:1664 +#: config/tc-arm.c:3866 config/tc-csky.c:7672 config/tc-s390.c:1304 +#: config/tc-s390.c:2099 config/tc-xtensa.c:1698 #, c-format msgid "%s relocations do not fit in %d byte" msgid_plural "%s relocations do not fit in %d bytes" msgstr[0] "%s reubicaciones no caben en %d byte" msgstr[1] "%s reubicaciones no caben en %d bytes" -#: config/tc-arm.c:3657 +#: config/tc-arm.c:3948 msgid ".inst.n operand too big. Use .inst.w instead" msgstr "operando de .inst.n es demasiado grande. Use en su lugar .inst.w" -#: config/tc-arm.c:3677 +#: config/tc-arm.c:3968 msgid "cannot determine Thumb instruction size. Use .inst.n/.inst.w instead" msgstr "no se puede determinar el tamaño de la instrucción Thumb. Use en su lugar .inst.n/.inst.w" -#: config/tc-arm.c:3707 +#: config/tc-arm.c:3998 msgid "width suffixes are invalid in ARM mode" msgstr "los sufijos de anchura son inválidos en modo ARM" -#: config/tc-arm.c:3749 dwarf2dbg.c:990 +#: config/tc-arm.c:4042 dwarf2dbg.c:1467 msgid "expected 0 or 1" msgstr "se esperaba 0 ó 1" -#: config/tc-arm.c:3753 +#: config/tc-arm.c:4046 msgid "missing comma" msgstr "ausentea coma" -#: config/tc-arm.c:3786 +#: config/tc-arm.c:4079 msgid "duplicate .fnstart directive" msgstr "directiva .fnstart duplicada" -#: config/tc-arm.c:3817 config/tc-tic6x.c:412 +#: config/tc-arm.c:4109 config/tc-tic6x.c:410 msgid "duplicate .handlerdata directive" msgstr "directiva .handlerdata duplicada" -#: config/tc-arm.c:3836 +#: config/tc-arm.c:4128 msgid ".fnend directive without .fnstart" msgstr "directiva .fnend sin .fnstart" -#: config/tc-arm.c:3903 config/tc-tic6x.c:393 +#: config/tc-arm.c:4195 config/tc-tic6x.c:391 msgid "personality routine specified for cantunwind frame" msgstr "se especificó una rutina personality para el marco cantunwind" -#: config/tc-arm.c:3920 config/tc-tic6x.c:454 +#: config/tc-arm.c:4212 config/tc-tic6x.c:452 msgid "duplicate .personalityindex directive" msgstr "directiva .personalityindex duplicada" -#: config/tc-arm.c:3927 config/tc-tic6x.c:461 +#: config/tc-arm.c:4219 config/tc-tic6x.c:459 msgid "bad personality routine number" -msgstr "número de rutina personality equivocado" +msgstr "número de rutina personality incorrecto" -#: config/tc-arm.c:3949 config/tc-tic6x.c:478 +#: config/tc-arm.c:4241 config/tc-tic6x.c:476 msgid "duplicate .personality directive" msgstr "directiva .personality duplicada" -#: config/tc-arm.c:3973 config/tc-arm.c:4101 config/tc-arm.c:4149 -msgid "expected register list" -msgstr "se esperaba una lista de registros" +#: config/tc-arm.c:4267 +#, fuzzy, c-format +#| msgid "Unknown register pair: `%d'" +msgid "Unknown register no. encountered: %d\n" +msgstr "Par de registro desconocido: '%d'" -#: config/tc-arm.c:4055 -msgid "expected , <constant>" -msgstr "se esperaba , <constante>" +#: config/tc-arm.c:4363 +#, fuzzy +#| msgid "Warning: register range not in ascending order" +msgid "Warning: register list not in ascending order" +msgstr "Aviso: el límite de registros no está en orden ascendente" -#: config/tc-arm.c:4064 -msgid "number of registers must be in the range [1:4]" -msgstr "el número de registros debe estar en el límite [1:4]" +#: config/tc-arm.c:4370 config/tc-epiphany.c:382 config/tc-m68k.c:5866 +#: config/tc-m68k.c:5895 +msgid "bad register list" +msgstr "lista de registros incorrecta" -#: config/tc-arm.c:4211 config/tc-arm.c:4345 +#: config/tc-arm.c:4428 config/tc-arm.c:4478 +msgid "expected register list" +msgstr "se esperaba una lista de registros" + +#: config/tc-arm.c:4540 config/tc-arm.c:4674 msgid "bad register range" -msgstr "límite de registro equivocado" +msgstr "límite de registro incorrecto" -#: config/tc-arm.c:4411 -msgid "FPA .unwind_save does not take a register list" -msgstr ".unwind_save de FPA no toma una lista de registros" +#: config/tc-arm.c:4729 +msgid "register expected" +msgstr "se esperaba un registro" -#: config/tc-arm.c:4439 +#: config/tc-arm.c:4762 msgid ".unwind_save does not support this kind of register" msgstr ".unwind_save no admite este tipo de registro" -#: config/tc-arm.c:4478 +#: config/tc-arm.c:4801 msgid "SP and PC not permitted in .unwind_movsp directive" msgstr "PS y PC no se permiten .unwind_movsp como directiva" -#: config/tc-arm.c:4483 +#: config/tc-arm.c:4806 msgid "unexpected .unwind_movsp directive" msgstr "directiva inesperada .unwind_movsp" -#: config/tc-arm.c:4510 +#: config/tc-arm.c:4833 msgid "stack increment must be multiple of 4" msgstr "operando de pila debe ser un múltiplo de 4" -#: config/tc-arm.c:4542 +#: config/tc-arm.c:4881 msgid "expected <reg>, <reg>" msgstr "se esperaba <reg>, <reg>" -#: config/tc-arm.c:4560 +#: config/tc-arm.c:4899 msgid "register must be either sp or set by a previousunwind_movsp directive" msgstr "el registro debe ser sp o establecido por una directiva previousunwind_movsp" -#: config/tc-arm.c:4599 +#: config/tc-arm.c:4938 msgid "expected <offset>, <opcode>" msgstr "se esperaba <desplazamiento>, <códigoop>" -#: config/tc-arm.c:4611 +#: config/tc-arm.c:4950 msgid "unwind opcode too long" msgstr "código operacional de desenredo demasiado largo" -#: config/tc-arm.c:4616 +#: config/tc-arm.c:4955 msgid "invalid unwind opcode" msgstr "código operacional de desenredo inválido" -#: config/tc-arm.c:4804 config/tc-arm.c:5815 config/tc-arm.c:10659 -#: config/tc-arm.c:11192 config/tc-arm.c:13219 config/tc-arm.c:14801 -#: config/tc-arm.c:24170 config/tc-arm.c:24234 config/tc-arm.c:24242 -#: config/tc-metag.c:5176 config/tc-z8k.c:1151 config/tc-z8k.c:1161 +#: config/tc-arm.c:5070 config/tc-arm.c:31769 +#, fuzzy, c-format +#| msgid "unrecognized option \"%s\"" +msgid "unrecognised float16 format \"%s\"" +msgstr "opción no reconocida «%s»" + +#: config/tc-arm.c:5081 +msgid "float16 format cannot be set more than once, ignoring." +msgstr "" + +#: config/tc-arm.c:5094 +msgid "the floating-point format has not been set (or has been disabled)" +msgstr "" + +#: config/tc-arm.c:5211 config/tc-arm.c:6201 config/tc-arm.c:11469 +#: config/tc-arm.c:12002 config/tc-arm.c:14133 config/tc-arm.c:16084 +#: config/tc-arm.c:16119 config/tc-arm.c:17047 config/tc-arm.c:18960 +#: config/tc-arm.c:18968 config/tc-arm.c:18975 config/tc-arm.c:20635 +#: config/tc-arm.c:28766 config/tc-arm.c:28830 config/tc-arm.c:28838 +#: config/tc-metag.c:5174 config/tc-z8k.c:1161 config/tc-z8k.c:1171 msgid "immediate value out of range" -msgstr "valor inmediato fuera de límite" +msgstr "valor inmediato fuera de rango" -#: config/tc-arm.c:4974 -msgid "invalid FPA immediate expression" -msgstr "expresión inmediata FPA no válida" +#: config/tc-arm.c:5474 +#, fuzzy +#| msgid "r13 not allowed here" +msgid "'UXTW' not allowed here" +msgstr "no se permite r13 aquí" -#: config/tc-arm.c:5160 +#: config/tc-arm.c:5482 msgid "'LSL' or 'ASR' required" msgstr "'LSL' o 'ASR' requerido" -#: config/tc-arm.c:5168 +#: config/tc-arm.c:5490 msgid "'LSL' required" msgstr "'LSL' requerido" -#: config/tc-arm.c:5176 +#: config/tc-arm.c:5498 msgid "'ASR' required" msgstr "'ASR' requerido" -#: config/tc-arm.c:5255 +#: config/tc-arm.c:5505 +#, fuzzy +#| msgid "')' required" +msgid "'UXTW' required" +msgstr "')' requerido" + +#: config/tc-arm.c:5584 msgid "invalid rotation" msgstr "rotación no válida" -#: config/tc-arm.c:5435 config/tc-arm.c:5604 +#: config/tc-arm.c:5766 config/tc-arm.c:5979 msgid "unknown group relocation" msgstr "desconoce reubicación de grupo" -#: config/tc-arm.c:5471 +#: config/tc-arm.c:5802 msgid "alignment must be constant" msgstr "el alineamiento debe ser constante" -#: config/tc-arm.c:5635 +#: config/tc-arm.c:6013 msgid "this group relocation is not allowed on this instruction" msgstr "esta reubicación de grupo no se permite en esta instrucción" -#: config/tc-arm.c:5691 +#: config/tc-arm.c:6069 msgid "'}' expected at end of 'option' field" msgstr "'}' esperado al final 'option' del campo" -#: config/tc-arm.c:5696 +#: config/tc-arm.c:6074 msgid "cannot combine index with option" msgstr "no se puede combinar index con option" -#: config/tc-arm.c:5953 +#: config/tc-arm.c:6339 msgid "unexpected bit specified after APSR" msgstr "se especificó un bit inesperado tras APSR" -#: config/tc-arm.c:5965 +#: config/tc-arm.c:6351 msgid "selected processor does not support DSP extension" msgstr "procesador seleccionado no admite la extensión DSP" -#: config/tc-arm.c:5977 +#: config/tc-arm.c:6363 msgid "bad bitmask specified after APSR" -msgstr "se especificó una máscara de bit equivocada tras APSR" +msgstr "se especificó una máscara de bit incorrecta tras APSR" -#: config/tc-arm.c:6001 +#: config/tc-arm.c:6387 msgid "writing to APSR without specifying a bitmask is deprecated" msgstr "escribir a APSR sin especificar una máscara de bit es obsoleto" -#: config/tc-arm.c:6013 config/tc-arm.c:12353 config/tc-arm.c:12398 -#: config/tc-arm.c:12402 +#: config/tc-arm.c:6399 config/tc-arm.c:13236 config/tc-arm.c:13281 +#: config/tc-arm.c:13285 msgid "selected processor does not support requested special purpose register" msgstr "procesador seleccionado no admite registro de propósito especial solicitado" -#: config/tc-arm.c:6018 +#: config/tc-arm.c:6404 msgid "flag for {c}psr instruction expected" msgstr "se esperaba una opción para la instrucción {c}psr" -#: config/tc-arm.c:6043 +#: config/tc-arm.c:6468 msgid "unrecognized CPS flag" msgstr "no se reconoce la opción CPS" -#: config/tc-arm.c:6050 +#: config/tc-arm.c:6475 msgid "missing CPS flags" msgstr "ausenten las casillas CPS" -#: config/tc-arm.c:6073 config/tc-arm.c:6079 +#: config/tc-arm.c:6498 config/tc-arm.c:6504 msgid "valid endian specifiers are be or le" msgstr "los especificadores endian válidos son be o le" -#: config/tc-arm.c:6101 +#: config/tc-arm.c:6526 msgid "missing rotation field after comma" msgstr "ausente el campo rotation tras la coma" -#: config/tc-arm.c:6116 +#: config/tc-arm.c:6541 msgid "rotation can only be 0, 8, 16, or 24" -msgstr "la rotación sólo puede ser 0, 8 , 16 o 24" +msgstr "la rotación solo puede ser 0, 8 , 16 o 24" -#: config/tc-arm.c:6145 +#: config/tc-arm.c:6570 msgid "condition required" msgstr "se requiere una condición" -#: config/tc-arm.c:6213 config/tc-arm.c:8943 +#: config/tc-arm.c:6612 config/tc-arm.c:9731 msgid "'[' expected" msgstr "'[' esperado" -#: config/tc-arm.c:6226 +#: config/tc-arm.c:6625 msgid "',' expected" msgstr "',' esperada" -#: config/tc-arm.c:6243 +#: config/tc-arm.c:6642 msgid "invalid shift" msgstr "desplazamiento inválido" -#: config/tc-arm.c:6316 +#: config/tc-arm.c:6722 +#, fuzzy +#| msgid "expected EP register" +msgid "expected ARM or MVE vector register" +msgstr "se esperaba el registro EP" + +#: config/tc-arm.c:6771 msgid "can't use Neon quad register here" msgstr "no se puede usar un registro Neon cuádruple aquí" -#: config/tc-arm.c:6383 +#: config/tc-arm.c:6840 msgid "expected <Rm> or <Dm> or <Qm> operand" msgstr "se esperaba un operando <Rm> o <Dm> o <Qm>" -#: config/tc-arm.c:6463 +#: config/tc-arm.c:6940 +#, fuzzy +#| msgid "VFP single or double precision register expected" +msgid "VFP single, double or MVE vector register expected" +msgstr "Se esperaba un registro de precisión simple o doble VFP" + +#: config/tc-arm.c:6960 msgid "parse error" msgstr "error de decodificación" +#: config/tc-arm.c:7256 +#, fuzzy +#| msgid "immediate 1 or 2 expected" +msgid "immediate value 48 or 64 expected" +msgstr "se esperaba un inmediato 1 o 2" + #. ISB can only take SY as an option. -#: config/tc-arm.c:6732 +#: config/tc-arm.c:7305 msgid "invalid barrier type" -msgstr "tipo de barrera equivocado" +msgstr "tipo de barrera incorrecto" -#: config/tc-arm.c:6829 +#: config/tc-arm.c:7474 msgid "only floating point zero is allowed as immediate value" msgstr "solo utiliza punto flotante cero permitido como valor inmediato" -#: config/tc-arm.c:6899 +#: config/tc-arm.c:7569 msgid "immediate value is out of range" -msgstr "el valor inmediato está fuera de límite" +msgstr "el valor inmediato está fuera de rango" -#: config/tc-arm.c:7046 +#: config/tc-arm.c:7730 msgid "iWMMXt data or control register expected" msgstr "se esperaba un registro de datos o control iWMMXt" -#: config/tc-arm.c:7086 +#: config/tc-arm.c:7771 msgid "Banked registers are not available with this architecture." msgstr "Los registros en bancos no están disponibles para esta arquitectura." -#: config/tc-arm.c:7314 config/tc-score.c:264 +#: config/tc-arm.c:8019 +#, fuzzy +#| msgid "source operand must be 8 bit register" +msgid "operand must be LR register" +msgstr "operando de origen debe ser un registro de 8 bit" + +#: config/tc-arm.c:8024 +#, fuzzy +#| msgid "source operand must be 8 bit register" +msgid "operand must be SP register" +msgstr "operando de origen debe ser un registro de 8 bit" + +#: config/tc-arm.c:8029 +#, fuzzy +#| msgid "second operand must be 1" +msgid "operand must be r12" +msgstr "el segundo operando debe ser 1" + +#: config/tc-arm.c:8100 config/tc-score.c:260 msgid "garbage following instruction" msgstr "basura a continuación de la instrucción" #. If REG is R13 (the stack pointer), warn that its use is #. deprecated. -#: config/tc-arm.c:7364 +#: config/tc-arm.c:8150 msgid "use of r13 is deprecated" msgstr "el uso de r13 es obsoleto" -#: config/tc-arm.c:7382 -msgid "ARMv8.2 scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE" -msgstr "" +#: config/tc-arm.c:8168 config/tc-arm.c:20335 +#, fuzzy +#| msgid "Dot Product instructions cannot be conditional, the behaviour is UNPREDICTABLE" +msgid "scalar fp16 instruction cannot be conditional, the behaviour is UNPREDICTABLE" +msgstr "Instrucciones Dot Product no puede ser condicional, el comportamiento es IMPREDECIBLE" -#: config/tc-arm.c:7457 +#: config/tc-arm.c:8243 msgid "D register out of range for selected VFP version" -msgstr "D como registro fuera de límite para versión VFP seleccionada" +msgstr "D como registro fuera de rango para versión VFP seleccionada" -#: config/tc-arm.c:7554 config/tc-arm.c:10378 +#: config/tc-arm.c:8340 config/tc-arm.c:11158 msgid "Instruction does not support =N addresses" msgstr "La instrucción no admite las direcciones =N" -#: config/tc-arm.c:7562 +#: config/tc-arm.c:8348 msgid "instruction does not accept preindexed addressing" -msgstr "instrucción no acepta el direccionamiento preindizado" +msgstr "instrucción no acepta el direccionamiento preindexado" #. unindexed - only for coprocessor -#: config/tc-arm.c:7578 config/tc-arm.c:10441 +#: config/tc-arm.c:8364 config/tc-arm.c:11221 msgid "instruction does not accept unindexed addressing" msgstr "instrucción no acepta el direccionamiento sin indizar" -#: config/tc-arm.c:7586 +#: config/tc-arm.c:8372 msgid "destination register same as write-back base" msgstr "registro destino es el mismo que la base de retroescritura" -#: config/tc-arm.c:7587 +#: config/tc-arm.c:8373 msgid "source register same as write-back base" msgstr "registro origen es el mismo que la base de retroescritura" -#: config/tc-arm.c:7637 +#: config/tc-arm.c:8423 msgid "use of PC in this instruction is deprecated" msgstr "uso de PC en esta instrucción está obsoleto" -#: config/tc-arm.c:7660 +#: config/tc-arm.c:8446 msgid "instruction does not accept scaled register index" msgstr "instrucción no acepta el índice de registro escalado" -#: config/tc-arm.c:7965 +#: config/tc-arm.c:8749 msgid "invalid pseudo operation" msgstr "pseudo operación no válida" -#: config/tc-arm.c:8203 +#. FIXME: The code that was here previously could not +#. work. Firstly, it tried to convert a floating point +#. number into an extended precision format, but only +#. provided a buffer of 5 littlenums, which was too +#. small. Secondly, it then didn't deal with the value +#. converted correctly, just reading out the first 4 +#. littlenum fields and assuming that could be used +#. directly. +#. +#. I think the code was intended to handle expressions +#. such as: +#. +#. LDR r0, =1.0 +#. VLDR d0, =55.3 +#. +#. but the parsers currently don't permit floating-point +#. literal values to be written this way, so this code +#. is probably unreachable. To be safe, we simply +#. return an error here. +#: config/tc-arm.c:8791 +#, fuzzy +#| msgid "Complex expression not supported" +msgid "constant expression not supported" +msgstr "No se admiten las expresiones complejas" + +#: config/tc-arm.c:8995 msgid "invalid co-processor operand" msgstr "operando co-procesador inválido" -#: config/tc-arm.c:8219 +#: config/tc-arm.c:9011 msgid "instruction does not support unindexed addressing" msgstr "instrucción no admite el direccionamiento sin indizar" -#: config/tc-arm.c:8234 +#: config/tc-arm.c:9026 msgid "pc may not be used with write-back" msgstr "quizá un pc no está siendo utilizado con retroescritura" -#: config/tc-arm.c:8239 +#: config/tc-arm.c:9031 msgid "instruction does not support writeback" msgstr "instrucción no admite retroescritura" -#: config/tc-arm.c:8345 +#: config/tc-arm.c:9137 msgid "Rn must not overlap other operands" msgstr "Rn no debe sobreescribir otros operandos" -#: config/tc-arm.c:8350 +#: config/tc-arm.c:9142 msgid "swp{b} use is obsoleted for ARMv8 and later" msgstr "utilización swp{b} es obsoleta para ARMv8 y posterior" -#: config/tc-arm.c:8353 +#: config/tc-arm.c:9145 msgid "swp{b} use is deprecated for ARMv6 and ARMv7" msgstr "utilización de swp{b} es obsoleto para ARMv6 y ARMv7" -#: config/tc-arm.c:8470 config/tc-arm.c:8489 config/tc-arm.c:8502 -#: config/tc-arm.c:11029 config/tc-arm.c:11060 config/tc-arm.c:11082 +#: config/tc-arm.c:9257 config/tc-arm.c:9276 config/tc-arm.c:9289 +#: config/tc-arm.c:11839 config/tc-arm.c:11870 config/tc-arm.c:11892 msgid "bit-field extends past end of register" msgstr "el campo de bits se extiende más allá del final del registro" -#: config/tc-arm.c:8532 +#: config/tc-arm.c:9319 msgid "the only valid suffixes here are '(plt)' and '(tlscall)'" msgstr "los únicos sufijos válidos aquí son '(plt)' y '(tlscall)'" -#: config/tc-arm.c:8585 +#: config/tc-arm.c:9372 msgid "use of r15 in blx in ARM mode is not really useful" msgstr "el uso de r15 en blx en modo ARM no es realmente útil" -#: config/tc-arm.c:8607 +#: config/tc-arm.c:9394 msgid "use of r15 in bx in ARM mode is not really useful" msgstr "el uso de r15 en bx en modo ARM no es realmente útil" -#: config/tc-arm.c:8632 +#: config/tc-arm.c:9420 msgid "use of r15 in bxj is not really useful" msgstr "el uso de r15 en bxj no es realmente útil" -#: config/tc-arm.c:8680 +#: config/tc-arm.c:9468 msgid "This coprocessor register access is deprecated in ARMv8" msgstr "Este acceso a registro del coprocesador es obsoleto en ARMv8" -#: config/tc-arm.c:8888 config/tc-arm.c:8897 +#: config/tc-arm.c:9676 config/tc-arm.c:9685 msgid "writeback of base register is UNPREDICTABLE" msgstr "retroescritura del registro base es IMPREDECIBLE" -#: config/tc-arm.c:8891 +#: config/tc-arm.c:9679 msgid "writeback of base register when in register list is UNPREDICTABLE" msgstr "retroescritura del registro base cuando está en la lista de registros es IMPREDECIBLE" -#: config/tc-arm.c:8901 +#: config/tc-arm.c:9689 msgid "if writeback register is in list, it must be the lowest reg in the list" msgstr "si el registro de retroescritura está en la lista, debe ser el registro más bajo en la lista" -#: config/tc-arm.c:8938 +#: config/tc-arm.c:9726 msgid "first transfer register must be even" msgstr "primer registro de transferencia debe ser par" -#: config/tc-arm.c:8941 +#: config/tc-arm.c:9729 msgid "can only transfer two consecutive registers" msgstr "solamente se pueden transferir dos registros consecutivos" @@ -3772,1223 +4577,1531 @@ msgstr "solamente se pueden transferir dos registros consecutivos" #. 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:8942 config/tc-arm.c:9012 config/tc-arm.c:9676 -#: config/tc-arm.c:11844 +#: config/tc-arm.c:9730 config/tc-arm.c:9800 config/tc-arm.c:10531 +#: config/tc-arm.c:12725 msgid "r14 not allowed here" msgstr "no se permite r14 aquí" -#: config/tc-arm.c:8954 +#: config/tc-arm.c:9742 msgid "base register written back, and overlaps second transfer register" msgstr "registro base se escribió hacia atrás, y sobrescribe el segundo registro transferencial" -#: config/tc-arm.c:8964 +#: config/tc-arm.c:9752 msgid "index register overlaps transfer register" msgstr "registro índice sobrescribe el registro de transferencia" -#: config/tc-arm.c:8993 config/tc-arm.c:9643 +#: config/tc-arm.c:9781 config/tc-arm.c:10498 msgid "offset must be zero in ARM encoding" msgstr "desplazamiento debe ser cero en codificación ARM" -#: config/tc-arm.c:9006 config/tc-arm.c:9670 +#: config/tc-arm.c:9794 config/tc-arm.c:10525 msgid "even register required" msgstr "requerido registro par" -#: config/tc-arm.c:9009 +#: config/tc-arm.c:9797 msgid "can only load two consecutive registers" msgstr "solamente se pueden cargar dos registros consecutivos" -#: config/tc-arm.c:9027 +#: config/tc-arm.c:9815 msgid "ldr to register 15 must be 4-byte aligned" msgstr "ldr al registro 15 debe ser alineado a 4-bytes" -#: config/tc-arm.c:9050 config/tc-arm.c:9082 +#: config/tc-arm.c:9838 config/tc-arm.c:9870 msgid "this instruction requires a post-indexed address" msgstr "esta instrucción requiere una dirección post-indizada" -#: config/tc-arm.c:9109 +#: config/tc-arm.c:9897 msgid "Rd and Rm should be different in mla" msgstr "Rd y Rm deben ser diferentes en mla" -#: config/tc-arm.c:9136 config/tc-arm.c:12217 +#: config/tc-arm.c:9924 config/tc-arm.c:13100 msgid ":lower16: not allowed in this instruction" msgstr ":lower16: no permitido dentro de esta instrucción" -#: config/tc-arm.c:9138 config/tc-arm.c:12222 +#: config/tc-arm.c:9926 config/tc-arm.c:13105 msgid ":upper16: not allowed in this instruction" msgstr ":upper16: no permitido dentro de esta instrucción" -#: config/tc-arm.c:9155 +#: config/tc-arm.c:9943 msgid "operand 1 must be FPSCR" msgstr "operando 1 debe ser FPSCR" -#: config/tc-arm.c:9247 config/tc-arm.c:12336 +#: config/tc-arm.c:9996 config/tc-arm.c:10005 config/tc-arm.c:10059 +#: config/tc-arm.c:10068 +#, fuzzy +#| msgid "selected processor does not support fp16 instruction" +msgid "selected processor does not support instruction" +msgstr "procesador seleccionado no admite instrucción fp16" + +#: config/tc-arm.c:10008 config/tc-arm.c:10071 +#, fuzzy +#| msgid "writeback of base register is UNPREDICTABLE" +msgid "accessing MVE system register without MVE is UNPREDICTABLE" +msgstr "retroescritura del registro base es IMPREDECIBLE" + +#: config/tc-arm.c:10099 config/tc-arm.c:13219 msgid "bad register for mrs" -msgstr "registro equivocado para mrs" +msgstr "registro incorrecto para mrs" -#: config/tc-arm.c:9254 config/tc-arm.c:12360 +#: config/tc-arm.c:10106 config/tc-arm.c:13243 msgid "'APSR', 'CPSR' or 'SPSR' expected" msgstr "'APSR', 'CPSR' o 'SPSR' esperado" -#: config/tc-arm.c:9295 +#: config/tc-arm.c:10147 msgid "Rd and Rm should be different in mul" msgstr "Rd y Rm deben ser diferentes en mul" -#: config/tc-arm.c:9314 config/tc-arm.c:9588 config/tc-arm.c:12499 +#: config/tc-arm.c:10166 config/tc-arm.c:10443 config/tc-arm.c:13382 msgid "rdhi and rdlo must be different" msgstr "rdhi y rdlo deben ser diferentes" -#: config/tc-arm.c:9320 +#: config/tc-arm.c:10172 msgid "rdhi, rdlo and rm must all be different" msgstr "rdhi, rdlo y rm deben ser todos diferentes" -#: config/tc-arm.c:9386 +#: config/tc-arm.c:10238 msgid "'[' expected after PLD mnemonic" msgstr "'[' esperado tras mnemónico PLD" -#: config/tc-arm.c:9388 config/tc-arm.c:9403 +#: config/tc-arm.c:10240 config/tc-arm.c:10255 msgid "post-indexed expression used in preload instruction" msgstr "se utilizó una expresión post-indizada en la instrucción de precarga" -#: config/tc-arm.c:9390 config/tc-arm.c:9405 +#: config/tc-arm.c:10242 config/tc-arm.c:10257 msgid "writeback used in preload instruction" msgstr "se utilicó retroescritura en la instrucción de precarga" -#: config/tc-arm.c:9392 config/tc-arm.c:9407 +#: config/tc-arm.c:10244 config/tc-arm.c:10259 msgid "unindexed addressing used in preload instruction" msgstr "se utilizó un direccionamiento sin indizar en la instrucción de precarga" -#: config/tc-arm.c:9401 +#: config/tc-arm.c:10253 msgid "'[' expected after PLI mnemonic" msgstr "'[' esperado tras mnemónico PLI" -#: config/tc-arm.c:9416 config/tc-arm.c:12668 +#: config/tc-arm.c:10268 config/tc-arm.c:13551 msgid "push/pop do not support {reglist}^" msgstr "push/pop no admiten {reglist}^" -#: config/tc-arm.c:9494 config/tc-arm.c:12815 +#: config/tc-arm.c:10346 config/tc-arm.c:13728 msgid "setend use is deprecated for ARMv8" msgstr "utilice setend está obsoleto para ARMv8" -#: config/tc-arm.c:9515 config/tc-arm.c:12876 config/tc-arm.c:12908 -#: config/tc-arm.c:12951 +#: config/tc-arm.c:10367 config/tc-arm.c:13789 config/tc-arm.c:13821 +#: config/tc-arm.c:13864 msgid "extraneous shift as part of operand to shift insn" msgstr "desplazamiento extraño como parte de operando para la insn desplazamiento" -#: config/tc-arm.c:9546 config/tc-arm.c:9555 +#: config/tc-arm.c:10377 config/tc-arm.c:13927 +#, fuzzy +#| msgid "5-bit immediate too large" +msgid "immediate too large (bigger than 0xF)" +msgstr "5-bit inmediato demasiado grande" + +#: config/tc-arm.c:10401 config/tc-arm.c:10410 msgid "selected processor does not support SETPAN instruction" msgstr "procesador seleccionado no admite instrucción SETPAN" -#: config/tc-arm.c:9614 +#: config/tc-arm.c:10469 msgid "SRS base register must be r13" msgstr "SRS al registro base debe ser r13" -#: config/tc-arm.c:9673 +#: config/tc-arm.c:10528 msgid "can only store two consecutive registers" msgstr "solamente se pueden almacenar dos registros consecutivos" -#: config/tc-arm.c:9787 config/tc-arm.c:9804 +#: config/tc-arm.c:10650 config/tc-arm.c:10671 msgid "only two consecutive VFP SP registers allowed here" msgstr "solamente se permiten dos registros PS VFP consecutivos aquí" -#: config/tc-arm.c:9832 config/tc-arm.c:9847 +#: config/tc-arm.c:10699 config/tc-arm.c:10714 msgid "this addressing mode requires base-register writeback" msgstr "este modo de direccionamiento requiere retroescritura del registro-base" #. 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:9964 +#: config/tc-arm.c:10843 msgid "immediate value out of range, expected range [0, 16]" -msgstr "valor inmediato fuera de límite, se esperaba el límite [0, 16]" +msgstr "valor inmediato fuera de rango, se esperaba el límite [0, 16]" #. 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:9971 +#: config/tc-arm.c:10850 msgid "immediate value out of range, expected range [1, 32]" -msgstr "valor inmediato fuera de límite, se esperaba el límite [1, 32]" - -#: config/tc-arm.c:10037 -msgid "this instruction does not support indexing" -msgstr "esta instrucción no admite indizado" +msgstr "valor inmediato fuera de rango, se esperaba el límite [1, 32]" -#: config/tc-arm.c:10060 +#: config/tc-arm.c:10891 msgid "only r15 allowed here" -msgstr "sólo se permite r15 aquí" +msgstr "solo se permite r15 aquí" -#: config/tc-arm.c:10195 +#: config/tc-arm.c:11026 msgid "immediate operand requires iWMMXt2" msgstr "operando inmediato requiere iWMMXt2" -#: config/tc-arm.c:10339 +#: config/tc-arm.c:11119 msgid "shift by register not allowed in thumb mode" msgstr "no se permite desplazar por registro en modo pulgar" -#: config/tc-arm.c:10351 config/tc-arm.c:13059 config/tc-arm.c:23513 +#: config/tc-arm.c:11131 config/tc-arm.c:13973 config/tc-arm.c:28057 msgid "shift expression is too large" msgstr "la expresión de desplazamiento es demasiado grande" -#: config/tc-arm.c:10384 +#: config/tc-arm.c:11164 msgid "cannot use register index with this instruction" -msgstr "no se puede utilizar registro indizado con esta instrucción" +msgstr "no se puede utilizar registro indexado con esta instrucción" -#: config/tc-arm.c:10386 +#: config/tc-arm.c:11166 msgid "Thumb does not support negative register indexing" -msgstr "Thumb no admite el indizado negativo de registro" +msgstr "Thumb no admite el indexado negativo de registro" -#: config/tc-arm.c:10388 +#: config/tc-arm.c:11168 msgid "Thumb does not support register post-indexing" -msgstr "Thumb no admite el post-indizado de registro" +msgstr "Thumb no admite el post-indexado de registro" -#: config/tc-arm.c:10390 +#: config/tc-arm.c:11170 msgid "Thumb does not support register indexing with writeback" -msgstr "Thumb no admite el indizado de registro con retroescritura" +msgstr "Thumb no admite el indexado de registro con retroescritura" -#: config/tc-arm.c:10392 +#: config/tc-arm.c:11172 msgid "Thumb supports only LSL in shifted register indexing" -msgstr "Thumb sólo admite LSL en el indizado desplazado de registro" +msgstr "Thumb solo admite LSL en el indexado desplazado de registro" -#: config/tc-arm.c:10401 config/tc-arm.c:16374 +#: config/tc-arm.c:11181 config/tc-arm.c:19703 msgid "shift out of range" -msgstr "desplazamiento fuera de límite" +msgstr "desplazamiento fuera de rango" -#: config/tc-arm.c:10410 +#: config/tc-arm.c:11190 msgid "cannot use writeback with this instruction" msgstr "no se puede usar retroescritura con esta instrucción" -#: config/tc-arm.c:10431 +#: config/tc-arm.c:11211 msgid "cannot use post-indexing with PC-relative addressing" -msgstr "no se puede usar post-indizado con el direccionamiento relativo al PC" +msgstr "no se puede usar post-indexado con el direccionamiento relativo al PC" -#: config/tc-arm.c:10432 +#: config/tc-arm.c:11212 msgid "cannot use post-indexing with this instruction" -msgstr "no se puede usar post-indizado con esta instrucción" +msgstr "no se puede usar post-indexado con esta instrucción" + +#: config/tc-arm.c:11450 +#, fuzzy +#| msgid "cannot honor width suffix -- `%s'" +msgid "cannot honor width suffix" +msgstr "no se puede honrar el sufijo de anchura -- «%s»" -#: config/tc-arm.c:10654 +#: config/tc-arm.c:11464 msgid "only SUBS PC, LR, #const allowed" -msgstr "sólo se permiten SUBS PC, LR, #const" +msgstr "solo se permiten SUBS PC, LR, #const" -#: config/tc-arm.c:10737 config/tc-arm.c:10897 config/tc-arm.c:10994 -#: config/tc-arm.c:12297 config/tc-arm.c:12605 +#: config/tc-arm.c:11547 config/tc-arm.c:11707 config/tc-arm.c:11804 +#: config/tc-arm.c:13180 config/tc-arm.c:13488 msgid "shift must be constant" msgstr "el desplazamiento debe ser constante" -#: config/tc-arm.c:10742 +#: config/tc-arm.c:11552 msgid "shift value over 3 not allowed in thumb mode" msgstr "no se permite el valor de desplazamiento sobre 3 en modo pulgar" -#: config/tc-arm.c:10744 +#: config/tc-arm.c:11554 msgid "only LSL shift allowed in thumb mode" msgstr "solamente se permite el desplazamiento LSL en modo pulgar" -#: config/tc-arm.c:10768 config/tc-arm.c:10912 config/tc-arm.c:11009 -#: config/tc-arm.c:12310 +#: config/tc-arm.c:11578 config/tc-arm.c:11722 config/tc-arm.c:11819 +#: config/tc-arm.c:13193 msgid "unshifted register required" msgstr "se requiere un registro sin desplazar" -#: config/tc-arm.c:10783 config/tc-arm.c:11020 config/tc-arm.c:12460 +#: config/tc-arm.c:11593 config/tc-arm.c:11830 config/tc-arm.c:13343 msgid "dest must overlap one source register" msgstr "dest debe sobreescribir un registro fuente" -#: config/tc-arm.c:10915 +#: config/tc-arm.c:11725 config/tc-csky.c:6026 msgid "dest and source1 must be the same register" msgstr "dest y source1 deben ser el mismo registro" -#: config/tc-arm.c:11155 +#: config/tc-arm.c:11965 msgid "selected architecture does not support wide conditional branch instruction" msgstr "arquitectura seleccionada no admite la rama de instrucción condicional instrucción ancha" -#: config/tc-arm.c:11188 +#: config/tc-arm.c:11998 msgid "instruction is always unconditional" msgstr "la instrucción es siempre incondicional" -#: config/tc-arm.c:11309 +#: config/tc-arm.c:12173 msgid "selected processor does not support 'A' form of this instruction" msgstr "procesador seleccionado no admite la forma 'A' de esta instrucción" -#: config/tc-arm.c:11312 +#: config/tc-arm.c:12176 msgid "Thumb does not support the 2-argument form of this instruction" msgstr "Thumb no admite la forma con 2 argumentos de esta instrucción" -#: config/tc-arm.c:11433 +#: config/tc-arm.c:12301 msgid "SP not allowed in register list" msgstr "PS no admitido dentro de listado de registro" -#: config/tc-arm.c:11437 config/tc-arm.c:11543 +#: config/tc-arm.c:12305 msgid "having the base register in the register list when using write back is UNPREDICTABLE" msgstr "teniendo el registro base en la lista de registros al usar retroescritura se vuelve IMPREDECIBLE" -#: config/tc-arm.c:11445 +#: config/tc-arm.c:12313 msgid "LR and PC should not both be in register list" msgstr "LR y PC no deberían estar ambos dentro de registros listados" -#: config/tc-arm.c:11453 +#: config/tc-arm.c:12321 msgid "PC not allowed in register list" msgstr "PC no admitido dentro del listado de registro" -#: config/tc-arm.c:11495 +#: config/tc-arm.c:12366 msgid "Thumb load/store multiple does not support {reglist}^" msgstr "Thumb carga/almacenaje múltiples no compatible {reglist}^" -#: config/tc-arm.c:11520 config/tc-arm.c:11597 +#: config/tc-arm.c:12444 config/tc-arm.c:12478 #, c-format msgid "value stored for r%d is UNKNOWN" msgstr "valor almacenado para r%d es DESCONOCIDO" -#: config/tc-arm.c:11590 +#: config/tc-arm.c:12471 msgid "Thumb-2 instruction only valid in unified syntax" -msgstr "Thumb-2 como instrucción sólo válida en sintaxis unificada" +msgstr "Thumb-2 como instrucción solo válida en sintaxis unificada" -#: config/tc-arm.c:11594 config/tc-arm.c:11604 +#: config/tc-arm.c:12475 config/tc-arm.c:12485 msgid "this instruction will write back the base register" msgstr "esta instrucción escribirá hacia atrás el registro base" -#: config/tc-arm.c:11607 +#: config/tc-arm.c:12488 msgid "this instruction will not write back the base register" msgstr "esta instrucción no escribirá hacia atrás el registro base" -#: config/tc-arm.c:11638 +#: config/tc-arm.c:12519 msgid "r14 not allowed as first register when second register is omitted" msgstr "no se permite r14 como primer registro cuando se omite el segundo registro" -#: config/tc-arm.c:11738 +#: config/tc-arm.c:12619 msgid "This instruction may be unpredictable if executed on M-profile cores with interrupts enabled." msgstr "Esta instrucción puede ser impredecible si se ejecuta en núcleos M-profile con interrupciones activadas." -#: config/tc-arm.c:11767 config/tc-arm.c:11780 config/tc-arm.c:11816 +#: config/tc-arm.c:12648 config/tc-arm.c:12661 config/tc-arm.c:12697 msgid "Thumb does not support this addressing mode" msgstr "Thumb no admite este modo de direccionamiento" -#: config/tc-arm.c:11784 +#: config/tc-arm.c:12665 msgid "byte or halfword not valid for base register" msgstr "byte o media palabra no válido para registro base" -#: config/tc-arm.c:11787 +#: config/tc-arm.c:12668 msgid "r15 based store not allowed" msgstr "no se permite el almacenamiento basado en r15" -#: config/tc-arm.c:11789 +#: config/tc-arm.c:12670 msgid "invalid base register for register offset" msgstr "registro base inválido para el desplazamiento del registro" -#: config/tc-arm.c:11846 +#: config/tc-arm.c:12727 msgid "r12 not allowed here" msgstr "r12 no permitido aquí" -#: config/tc-arm.c:11852 +#: config/tc-arm.c:12733 msgid "base register written back, and overlaps one of transfer registers" msgstr "registro base escrito atrás, y cubre uno de registros transferenciales" -#: config/tc-arm.c:11980 +#: config/tc-arm.c:12861 #, c-format msgid "Use of r%u as a source register is deprecated when r%u is the destination register." msgstr "Utilización de r%u como registro origen es obsoleto cuando r%u es el registro destino." -#: config/tc-arm.c:12173 +#: config/tc-arm.c:13056 msgid "shifts in CMP/MOV instructions are only supported in unified syntax" -msgstr "los desplazamientos en las instrucciones CMP/MOV sólo se admiten en la sintaxis unificada" +msgstr "los desplazamientos en las instrucciones CMP/MOV solo se admiten en la sintaxis unificada" -#: config/tc-arm.c:12201 +#: config/tc-arm.c:13084 msgid "only lo regs allowed with immediate" -msgstr "sólo se permiten registros lo con inmediatos" +msgstr "solo se permiten registros lo con inmediatos" -#: config/tc-arm.c:12378 +#: config/tc-arm.c:13261 msgid "Thumb encoding does not support an immediate here" msgstr "Thumb como codificación no admite un inmediato aquí" -#: config/tc-arm.c:12465 +#: config/tc-arm.c:13348 msgid "Thumb-2 MUL must not set flags" msgstr "MUL de Thumb-2 no debe establecer casillas" -#: config/tc-arm.c:12530 +#: config/tc-arm.c:13413 msgid "Thumb does not support NOP with hints" msgstr "Thumb no admite NOP con pistas" -#: config/tc-arm.c:12690 +#: config/tc-arm.c:13573 config/tc-arm.c:13585 msgid "invalid register list to push/pop instruction" msgstr "lista de registros no válida para la instrucción push/pop" -#: config/tc-arm.c:12935 +#: config/tc-arm.c:13848 msgid "source1 and dest must be same register" msgstr "source1 y dest deben ser el mismo registro" -#: config/tc-arm.c:12960 +#: config/tc-arm.c:13873 msgid "ror #imm not supported" msgstr "no se admite ror #imm" -#: config/tc-arm.c:13011 +#: config/tc-arm.c:13924 msgid "SMC is not permitted on this architecture" msgstr "No se admite SMC en esta arquitectura" -#: config/tc-arm.c:13176 +#: config/tc-arm.c:14090 msgid "Thumb encoding does not support rotation" msgstr "Thumb como codificación no admite rotación" -#: config/tc-arm.c:13196 +#: config/tc-arm.c:14110 msgid "instruction requires register index" msgstr "la instrucción requiere un índice de registro" -#: config/tc-arm.c:13206 +#: config/tc-arm.c:14120 msgid "instruction does not allow shifted index" msgstr "la instrucción no permite un índice desplazado" -#: config/tc-arm.c:13392 +#: config/tc-arm.c:14276 config/tc-arm.c:29201 +msgid "out of range label-relative fixup value" +msgstr "" + +#: config/tc-arm.c:14600 msgid "invalid neon suffix for non neon instruction" msgstr "sufijo neón inválido para la instrucción que no es neon" -#: config/tc-arm.c:13754 config/tc-arm.c:14100 config/tc-arm.c:15717 -#: config/tc-arm.c:17342 +#: config/tc-arm.c:14995 config/tc-arm.c:15348 config/tc-arm.c:16833 +#: config/tc-arm.c:16913 config/tc-arm.c:16970 config/tc-arm.c:18851 +#: config/tc-arm.c:21039 config/tc-arm.c:21226 msgid "invalid instruction shape" msgstr "instrucción shape no válida" -#: config/tc-arm.c:13999 +#: config/tc-arm.c:15247 msgid "types specified in both the mnemonic and operands" msgstr "tipo especificado en ambos mnemónico y operandos" -#: config/tc-arm.c:14036 +#: config/tc-arm.c:15284 msgid "operand types can't be inferred" msgstr "no se pueden inferir los tipos de operando" -#: config/tc-arm.c:14042 +#: config/tc-arm.c:15290 msgid "type specifier has the wrong number of parts" -msgstr "tipo especificador tiene el número equivocado de partes" +msgstr "tipo especificador tiene el número incorrecto de partes" -#: config/tc-arm.c:14128 config/tc-arm.c:15905 config/tc-arm.c:15912 +#: config/tc-arm.c:15376 config/tc-arm.c:19112 config/tc-arm.c:19119 msgid "operand size must match register width" msgstr "el tamaño del operador debe coincidir con la anchura del registro" -#: config/tc-arm.c:14139 -msgid "bad type in Neon instruction" -msgstr "equivocación de tipo en instrucción Neon" - -#: config/tc-arm.c:14150 +#: config/tc-arm.c:15398 msgid "inconsistent types in Neon instruction" msgstr "tipos inconsistentes en la instrucción Neon" -#: config/tc-arm.c:14521 config/tc-arm.c:14536 config/tc-arm.c:16921 -msgid "register list must contain at least 1 and at most 16 registers" -msgstr "la lista de registros debe contener por lo menos 1 y cuando mucho 16 registros" +#: config/tc-arm.c:15819 +#, fuzzy +#| msgid "zero flag is not valid for this instruction" +msgid "Type is not allowed for this instruction" +msgstr "marca cero no es válida para esta instrucción" + +#: config/tc-arm.c:15894 +#, fuzzy +#| msgid "SVE vector register expected" +msgid "MVE vector or ARM register expected" +msgstr "SVE como vector esperaba registro" + +#: config/tc-arm.c:16011 +#, fuzzy +#| msgid "immediate must be 1 or 2" +msgid "immediate must be either 1, 2, 4 or 8" +msgstr "el inmediato debe ser 1 o 2" -#: config/tc-arm.c:14679 config/tc-arm.c:14715 config/tc-arm.c:15354 -#: config/tc-arm.c:16761 +#: config/tc-arm.c:16168 +#, fuzzy +#| msgid "immediate value out of range, expected range [1, 32]" +msgid "immediate operand expected in the range [1,8]" +msgstr "valor inmediato fuera de rango, se esperaba el límite [1, 32]" + +#: config/tc-arm.c:16169 +#, fuzzy +#| msgid "immediate value out of range, expected range [0, 16]" +msgid "immediate operand expected in the range [1,16]" +msgstr "valor inmediato fuera de rango, se esperaba el límite [0, 16]" + +#: config/tc-arm.c:16311 +#, fuzzy +#| msgid "expected }" +msgid "expected LR" +msgstr "se esperaba }" + +#: config/tc-arm.c:16810 config/tc-arm.c:16890 config/tc-arm.c:18487 +#: config/tc-arm.c:20320 msgid "immediate out of range for shift" -msgstr "inmediato fuera de límite para desplazamiento" +msgstr "inmediato fuera de rango para desplazamiento" -#: config/tc-arm.c:14835 +#: config/tc-arm.c:17104 msgid "first and second operands shall be the same register" msgstr "el primer y segundo operandos deben ser el mismo registro" -#: config/tc-arm.c:15120 config/tc-arm.c:16210 +#: config/tc-arm.c:17218 config/tc-arm.c:17280 +#, fuzzy +#| msgid "destination register same as write-back base" +msgid "destination register and offset register may not be the same" +msgstr "registro destino es el mismo que la base de retroescritura" + +#: config/tc-arm.c:17230 config/tc-arm.c:17349 +#, fuzzy +#| msgid "immediate value out of range, expected range [0, 16]" +msgid "immediate must be a multiple of 4 in the range of +/-[0,508]" +msgstr "valor inmediato fuera de rango, se esperaba el límite [0, 16]" + +#: config/tc-arm.c:17232 +#, fuzzy +#| msgid "immediate value out of range, expected range [0, 16]" +msgid "immediate must be a multiple of 8 in the range of +/-[0,1016]" +msgstr "valor inmediato fuera de rango, se esperaba el límite [0, 16]" + +#: config/tc-arm.c:17253 +msgid "can not shift offsets when accessing less than half-word" +msgstr "" + +#: config/tc-arm.c:17255 +msgid "shift immediate must be 1, 2 or 3 for half-word, word or double-word accesses respectively" +msgstr "" + +#: config/tc-arm.c:17342 +#, fuzzy +#| msgid "number of registers must be in the range [1:4]" +msgid "immediate must be in the range of +/-[0,127]" +msgstr "el número de registros debe estar en el límite [1:4]" + +#: config/tc-arm.c:17345 +#, fuzzy +#| msgid "immediate value out of range, expected range [0, 16]" +msgid "immediate must be a multiple of 2 in the range of +/-[0,254]" +msgstr "valor inmediato fuera de rango, se esperaba el límite [0, 16]" + +#: config/tc-arm.c:17359 config/tc-arm.c:18185 +#, fuzzy +#| msgid "SVE vector register expected" +msgid "MVE vector register in the range [Q0..Q7] expected" +msgstr "SVE como vector esperaba registro" + +#: config/tc-arm.c:17675 config/tc-arm.c:19542 msgid "scalar out of range for multiply instruction" -msgstr "escalar fuera de límite para la instrucción multiply" +msgstr "escalar fuera de rango para la instrucción multiply" + +#: config/tc-arm.c:17763 +#, fuzzy +#| msgid "scalar index must be constant" +msgid "index must be in the range 0 to 3" +msgstr "el índice escalar debe ser constante" + +#: config/tc-arm.c:17766 +#, fuzzy +#| msgid "first transfer register must be even" +msgid "indexed register must be less than 8" +msgstr "primer registro de transferencia debe ser par" + +#: config/tc-arm.c:17967 config/tc-arm.c:21290 +msgid "Warning: 32-bit element size and same first and third operand makes instruction UNPREDICTABLE" +msgstr "" -#: config/tc-arm.c:15244 +#: config/tc-arm.c:18326 msgid "instruction form not available on this architecture." msgstr "relleno de instrucción no disponible en esta arquitectura." -#: config/tc-arm.c:15247 +#: config/tc-arm.c:18329 msgid "this instruction implies use of ARMv8.1 AdvSIMD." msgstr "" -#: config/tc-arm.c:15330 config/tc-arm.c:15342 +#: config/tc-arm.c:18436 config/tc-arm.c:18461 msgid "immediate out of range for insert" -msgstr "inmediato fuera de límite para insert" +msgstr "inmediato fuera de rango para insert" -#: config/tc-arm.c:15475 +#: config/tc-arm.c:18608 msgid "immediate out of range for narrowing operation" -msgstr "inmediato fuera de límite para la operación de estrechamiento" +msgstr "inmediato fuera de rango para la operación de estrechamiento" -#: config/tc-arm.c:15621 +#: config/tc-arm.c:18755 msgid "operands 0 and 1 must be the same register" msgstr "los operandos 0 y 1 debe ser el mismo registro" -#: config/tc-arm.c:15727 config/tc-arm.c:17440 +#: config/tc-arm.c:18861 config/tc-arm.c:21138 msgid "invalid rounding mode" msgstr "modo entorno inválido" -#: config/tc-arm.c:16054 +#: config/tc-arm.c:19332 msgid "operand size must be specified for immediate VMOV" msgstr "el tamaño de operando se debe especificar para el inmediato VMOV" -#: config/tc-arm.c:16064 +#: config/tc-arm.c:19342 msgid "immediate has bits set outside the operand size" msgstr "el inmediato tiene bits definidos fuera del tamaño de operando" -#: config/tc-arm.c:16226 +#: config/tc-arm.c:19577 msgid "vfmal/vfmsl with FP16 type cannot be conditional, the behaviour is UNPREDICTABLE" msgstr "" -#: config/tc-arm.c:16356 +#: config/tc-arm.c:19685 msgid "Instruction form not available on this architecture." msgstr "Relleno de instrucción no disponible en esta arquitectura." -#: config/tc-arm.c:16400 +#: config/tc-arm.c:19739 +msgid "Warning: 64-bit element size and same destination and source operands makes instruction UNPREDICTABLE" +msgstr "" + +#: config/tc-arm.c:19744 msgid "elements must be smaller than reversal region" msgstr "los elementos deben ser menores que la región de reversa" -#: config/tc-arm.c:16582 config/tc-arm.c:16642 +#: config/tc-arm.c:19836 +msgid "Index one must be [2,3] and index two must be two less than index one." +msgstr "" + +#: config/tc-arm.c:19839 +#, fuzzy +#| msgid "registers may not be the same" +msgid "Destination registers may not be the same" +msgstr "los registros quizá no son el mismo" + +#: config/tc-arm.c:20037 config/tc-arm.c:20120 msgid "bad type for scalar" -msgstr "tipo equivocado para el escalar" +msgstr "tipo incorrecto para el escalar" + +#: config/tc-arm.c:20176 +msgid "immediate constant is valid both as a bit-pattern and a floating point value (using the fp value)" +msgstr "" -#: config/tc-arm.c:16719 config/tc-arm.c:16727 +#: config/tc-arm.c:20228 config/tc-arm.c:20239 msgid "VFP registers must be adjacent" msgstr "VFP como registros deben ser adyacentes" -#: config/tc-arm.c:16770 +#: config/tc-arm.c:20329 msgid "invalid suffix" msgstr "sufijo inválido" -#: config/tc-arm.c:16888 +#: config/tc-arm.c:20483 msgid "bad list length for table lookup" -msgstr "longitud de lista equivocada para la búsqueda de tabla" +msgstr "longitud de lista incorrecta para la búsqueda de tabla" -#: config/tc-arm.c:16918 +#: config/tc-arm.c:20516 msgid "writeback (!) must be used for VLDMDB and VSTMDB" msgstr "se debe usar retroescritura (!) para VLDMDB y VSTMDB" -#: config/tc-arm.c:16946 +#: config/tc-arm.c:20519 config/tc-arm.c:20545 +msgid "register list must contain at least 1 and at most 16 registers" +msgstr "la lista de registros debe contener por lo menos 1 y cuando mucho 16 registros" + +#: config/tc-arm.c:20540 +#, fuzzy +#| msgid "register list must contain at least 1 and at most 16 registers" +msgid "register list must contain at least 1 and at most 32 registers" +msgstr "la lista de registros debe contener por lo menos 1 y cuando mucho 16 registros" + +#: config/tc-arm.c:20593 config/tc-arm.c:20626 msgid "Use of PC here is UNPREDICTABLE" msgstr "El uso de PC aquí es IMPREDECIBLE" -#: config/tc-arm.c:16948 +#: config/tc-arm.c:20595 msgid "Use of PC here is deprecated" msgstr "El uso de PC aquí es obsoleto" -#: config/tc-arm.c:17015 +#: config/tc-arm.c:20629 +#, fuzzy +#| msgid "instruction does not accept scaled register index" +msgid "instruction does not accept register index" +msgstr "instrucción no acepta el índice de registro escalado" + +#: config/tc-arm.c:20632 +#, fuzzy +#| msgid "instruction does not accept preindexed addressing" +msgid "instruction does not accept PC-relative addressing" +msgstr "instrucción no acepta el direccionamiento preindexado" + +#: config/tc-arm.c:20654 config/tc-arm.c:20663 +#, fuzzy +#| msgid "Instruction not supported by this architecture" +msgid "Instruction not permitted on this architecture" +msgstr "La instrucción no se admite en esta arquitectura" + +#: config/tc-arm.c:20712 msgid "bad alignment" -msgstr "alineamiento equivocada" +msgstr "alineamiento incorrecta" -#: config/tc-arm.c:17032 +#: config/tc-arm.c:20729 msgid "bad list type for instruction" -msgstr "tipo de lista equivocado para la instrucción" +msgstr "tipo de lista incorrecto para la instrucción" -#: config/tc-arm.c:17034 -msgid "bad element type for instruction" -msgstr "tipo elemental equivocado para instrucción" - -#: config/tc-arm.c:17076 +#: config/tc-arm.c:20773 msgid "unsupported alignment for instruction" msgstr "no se admite la alineamiento para la instrucción" -#: config/tc-arm.c:17095 config/tc-arm.c:17189 config/tc-arm.c:17201 -#: config/tc-arm.c:17211 config/tc-arm.c:17225 +#: config/tc-arm.c:20792 config/tc-arm.c:20886 config/tc-arm.c:20898 +#: config/tc-arm.c:20908 config/tc-arm.c:20922 msgid "bad list length" -msgstr "longitud de lista equivocada" +msgstr "longitud de lista incorrecta" -#: config/tc-arm.c:17100 +#: config/tc-arm.c:20797 msgid "stride of 2 unavailable when element size is 8" msgstr "no está disponible el estribo de 2 cuando el tamaño del elemento es 8" -#: config/tc-arm.c:17133 config/tc-arm.c:17209 +#: config/tc-arm.c:20830 config/tc-arm.c:20906 msgid "can't use alignment with this instruction" msgstr "no se puede usar la alineamiento con esta instrucción" -#: config/tc-arm.c:17281 +#: config/tc-arm.c:20978 msgid "post-index must be a register" msgstr "el post-índice debe ser un registro" -#: config/tc-arm.c:17283 +#: config/tc-arm.c:20980 msgid "bad register for post-index" -msgstr "registro equivocado para el post-índice" +msgstr "registro incorrecto para el post-índice" -#: config/tc-arm.c:17504 +#: config/tc-arm.c:21202 msgid "scalar out of range" -msgstr "escalar fuera de límite" +msgstr "escalar fuera de rango" -#: config/tc-arm.c:17577 +#: config/tc-arm.c:21335 msgid "Dot Product instructions cannot be conditional, the behaviour is UNPREDICTABLE" msgstr "Instrucciones Dot Product no puede ser condicional, el comportamiento es IMPREDECIBLE" -#: config/tc-arm.c:18150 config/tc-arm.c:18236 +#: config/tc-arm.c:21410 config/tc-arm.c:21438 config/tc-arm.c:22120 +#, fuzzy +#| msgid "immediate must be 1 or 2" +msgid "index must be 0 or 1" +msgstr "el inmediato debe ser 1 o 2" + +#: config/tc-arm.c:21413 config/tc-arm.c:21441 config/tc-arm.c:22123 +#, fuzzy +#| msgid "ending register must be r15" +msgid "indexed register must be less than 16" +msgstr "el registro final debe ser r15" + +#: config/tc-arm.c:21479 +msgid "Register must be r0-r14 except r13, or APSR_nzcv." +msgstr "" + +#: config/tc-arm.c:21482 +#, fuzzy +#| msgid "Register must be address register" +msgid "Register must be an even register between r0-r10." +msgstr "El registro debe ser un registro direccional" + +#: config/tc-arm.c:21507 +#, fuzzy +#| msgid "co-processor offset out of range" +msgid "CDE Coprocessor must be in range 0-7" +msgstr "desplazamiento de coprocesador fuera de rango" + +#: config/tc-arm.c:21541 +#, fuzzy +#| msgid "invalid destination register" +msgid "cx1d requires consecutive destination registers." +msgstr "invalida registro destino" + +#: config/tc-arm.c:21571 +#, fuzzy +#| msgid "invalid destination register" +msgid "cx2d requires consecutive destination registers." +msgstr "invalida registro destino" + +#: config/tc-arm.c:21610 +#, fuzzy +#| msgid "invalid destination register" +msgid "cx3d requires consecutive destination registers." +msgstr "invalida registro destino" + +#: config/tc-arm.c:21802 +#, fuzzy +#| msgid "last register must be r7" +msgid "'q' register must be in range 0-7" +msgstr "el último registro debe ser r7" + +#: config/tc-arm.c:21805 +#, fuzzy +#| msgid "ending register must be r15" +msgid "'d' register must be in range 0-15" +msgstr "el registro final debe ser r15" + +#: config/tc-arm.c:21807 +#, fuzzy +#| msgid "number of registers must be in the range [1:4]" +msgid "'s' register must be in range 0-31" +msgstr "el número de registros debe estar en el límite [1:4]" + +#: config/tc-arm.c:21862 +#, fuzzy +#| msgid "instruction requires register index" +msgid "vcx instructions with Q registers require MVE" +msgstr "la instrucción requiere un índice de registro" + +#: config/tc-arm.c:21867 +msgid "vcx instructions with S or D registers require either MVE or Armv8-M floating point extension." +msgstr "" + +#: config/tc-arm.c:21883 +msgid "vcx1 with S or D registers takes immediate within 0-2047" +msgstr "" + +#: config/tc-arm.c:21899 +msgid "vcx2 with S or D registers takes immediate within 0-63" +msgstr "" + +#: config/tc-arm.c:21914 +msgid "vcx2 with S or D registers takes immediate within 0-7" +msgstr "" + +#: config/tc-arm.c:22504 config/tc-arm.c:22625 msgid "conditional infixes are deprecated in unified syntax" msgstr "los infijos condicionales son obsoletos en la sintaxis unificada" -#: config/tc-arm.c:18387 +#: config/tc-arm.c:22836 msgid "Warning: conditional outside an IT block for Thumb." msgstr "Aviso: condicional fuera de un bloque IT para Thumb." -#: config/tc-arm.c:18539 +#: config/tc-arm.c:23164 msgid "Short branches, Undefined, SVC, LDM/STM" msgstr "" -#: config/tc-arm.c:18540 +#: config/tc-arm.c:23165 msgid "Miscellaneous 16-bit instructions" msgstr "Instrucciones 16-bit miscelánea" -#: config/tc-arm.c:18541 +#: config/tc-arm.c:23166 msgid "ADR" msgstr "DIR" -#: config/tc-arm.c:18542 +#: config/tc-arm.c:23167 msgid "Literal loads" msgstr "Cargas literales" -#: config/tc-arm.c:18543 +#: config/tc-arm.c:23168 msgid "Hi-register ADD, MOV, CMP, BX, BLX using pc" msgstr "Registro-Superior ADD, MOV, CMP, BX, BLX utilizando pc" -#: config/tc-arm.c:18544 +#: config/tc-arm.c:23169 msgid "Hi-register ADD, MOV, CMP using pc" msgstr "Registro-Superior ADD, MOV, CMP utilizando pc" #. 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:18547 +#: config/tc-arm.c:23172 msgid "ADD/SUB sp, sp #imm" msgstr "ADD/SUB sp, sp #imm" -#: config/tc-arm.c:18566 -msgid "IT blocks containing 32-bit Thumb instructions are deprecated in ARMv8" +#: config/tc-arm.c:23194 +msgid "IT blocks containing 32-bit Thumb instructions are performance deprecated in ARMv8-A and ARMv8-R" msgstr "" -#: config/tc-arm.c:18578 +#: config/tc-arm.c:23206 #, c-format -msgid "IT blocks containing 16-bit Thumb instructions of the following class are deprecated in ARMv8: %s" +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:18591 -msgid "IT blocks containing more than one conditional instruction are deprecated in ARMv8" +#: config/tc-arm.c:23220 +msgid "IT blocks containing more than one conditional instruction are performance deprecated in ARMv8-A and ARMv8-R" msgstr "" -#: config/tc-arm.c:18706 +#: config/tc-arm.c:23338 #, c-format msgid "bad instruction `%s'" -msgstr "instrucción equivocada «%s»" +msgstr "instrucción incorrecta «%s»" -#: config/tc-arm.c:18712 +#: config/tc-arm.c:23344 msgid "s suffix on comparison instruction is deprecated" msgstr "sufijo s sobre comparación de instrucción es obsoleto" -#: config/tc-arm.c:18732 +#: config/tc-arm.c:23364 msgid "SVC is not permitted on this architecture" msgstr "No se admite SVC en esta arquitectura" -#: config/tc-arm.c:18734 +#: config/tc-arm.c:23366 #, c-format msgid "selected processor does not support `%s' in Thumb mode" msgstr "procesador seleccionado no admite «%s» dentro de modo Thumb" -#: config/tc-arm.c:18740 +#: config/tc-arm.c:23372 msgid "Thumb does not support conditional execution" msgstr "Thumb no admite la ejecución condicional" -#: config/tc-arm.c:18760 +#: config/tc-arm.c:23392 #, c-format msgid "selected processor does not support 32bit wide variant of instruction `%s'" msgstr "procesador seleccionado no admite variante de 32 bit de instrucción «%s»" -#: config/tc-arm.c:18763 +#: config/tc-arm.c:23395 #, c-format msgid "selected processor does not support `%s' in Thumb-2 mode" msgstr "procesador seleccionado no admite «%s» modo Thumb-2" -#: config/tc-arm.c:18788 +#: config/tc-arm.c:23420 #, c-format msgid "cannot honor width suffix -- `%s'" msgstr "no se puede honrar el sufijo de anchura -- «%s»" -#: config/tc-arm.c:18830 +#: config/tc-arm.c:23462 #, c-format msgid "selected processor does not support `%s' in ARM mode" msgstr "procesador seleccionado no admite «%s» en modo ARM" -#: config/tc-arm.c:18835 +#: config/tc-arm.c:23467 #, c-format msgid "width suffixes are invalid in ARM mode -- `%s'" msgstr "los sufijos de anchura son inválidos en modo ARM -- «%s»" -#: config/tc-arm.c:18868 +#: config/tc-arm.c:23500 #, c-format msgid "attempt to use an ARM instruction on a Thumb-only processor -- `%s'" -msgstr "se intentó usar una instrucción ARM en un procesador que sólo es Thumb -- «%s»" +msgstr "se intentó usar una instrucción ARM en un procesador que solo es Thumb -- «%s»" -#: config/tc-arm.c:18885 +#: config/tc-arm.c:23518 #, c-format msgid "section '%s' finished with an open IT block." msgstr "la sección «%s» terminó con un bloque IT abierto." -#: config/tc-arm.c:18890 +#: config/tc-arm.c:23521 +#, fuzzy, c-format +#| msgid "section '%s' finished with an open IT block." +msgid "section '%s' finished with an open VPT/VPST block." +msgstr "la sección «%s» terminó con un bloque IT abierto." + +#: config/tc-arm.c:23528 msgid "file finished with an open IT block." msgstr "el fichero terminó con un bloque IT abierto." -#: config/tc-arm.c:22166 +#: config/tc-arm.c:23530 +#, fuzzy +#| msgid "file finished with an open IT block." +msgid "file finished with an open VPT/VPST block." +msgstr "el fichero terminó con un bloque IT abierto." + +#: config/tc-arm.c:26696 #, c-format msgid "alignments greater than %d bytes not supported in .text sections." msgstr "no se admiten las alineaciones más grandes que %d bytes en las secciones .text." -#: config/tc-arm.c:22433 config/tc-ia64.c:3594 +#: config/tc-arm.c:26962 config/tc-ia64.c:3588 #, c-format msgid "Group section `%s' has no group signature" msgstr "Sección de grupo «%s» no tiene firma de grupo" -#: config/tc-arm.c:22479 +#: config/tc-arm.c:27008 msgid "handlerdata in cantunwind frame" msgstr "handlerdata en un marco cantunwind" -#: config/tc-arm.c:22496 +#: config/tc-arm.c:27026 msgid "too many unwind opcodes for personality routine 0" msgstr "demasiados códigos operacionales de desenredo para la rutina personality 0" -#: config/tc-arm.c:22527 +#: config/tc-arm.c:27059 msgid "attempt to recreate an unwind entry" msgstr "trata recrear una entrada relajada" -#: config/tc-arm.c:22537 +#: config/tc-arm.c:27070 msgid "too many unwind opcodes" msgstr "demasiados códigos operacionales de desenredo" -#: config/tc-arm.c:22830 +#: config/tc-arm.c:27374 #, c-format msgid "[-mwarn-syms]: Assignment makes a symbol match an ARM instruction: %s" msgstr "" -#: config/tc-arm.c:23192 config/tc-arm.c:23260 +#: config/tc-arm.c:27736 config/tc-arm.c:27804 #, c-format msgid "symbol %s is in a different section" msgstr "el símbolo %s está en una sección diferente" -#: config/tc-arm.c:23194 config/tc-arm.c:23262 +#: config/tc-arm.c:27738 config/tc-arm.c:27806 #, c-format msgid "symbol %s is weak and may be overridden later" msgstr "el símbolo %s es débil y se puede sobreescribir tras" -#: config/tc-arm.c:23239 config/tc-arm.c:23609 +#: config/tc-arm.c:27783 config/tc-arm.c:28155 #, c-format msgid "invalid constant (%lx) after fixup" msgstr "constante no válida (%lx) tras la compostura" -#: config/tc-arm.c:23295 +#: config/tc-arm.c:27839 #, c-format msgid "unable to compute ADRL instructions for PC offset of 0x%lx" msgstr "incapaz de calcular las instrucciones ADRL para el desplazamiento de PC de 0x%lx" -#: config/tc-arm.c:23331 config/tc-arm.c:23361 +#: config/tc-arm.c:27875 config/tc-arm.c:27905 msgid "invalid literal constant: pool needs to be closer" msgstr "constante literal no válida: el conjunto necesita estar más cerca" -#: config/tc-arm.c:23334 config/tc-arm.c:23383 +#: config/tc-arm.c:27878 config/tc-arm.c:27927 #, c-format msgid "bad immediate value for offset (%ld)" -msgstr "valor inmediato equivocado para el desplazamiento (%ld)" +msgstr "valor inmediato incorrecto para el desplazamiento (%ld)" -#: config/tc-arm.c:23364 +#: config/tc-arm.c:27908 #, c-format msgid "bad immediate value for 8-bit offset (%ld)" -msgstr "valor inmediato equivocado para el desplazamiento de 8-bit (%ld)" +msgstr "valor inmediato incorrecto para el desplazamiento de 8-bit (%ld)" -#: config/tc-arm.c:23424 +#: config/tc-arm.c:27968 msgid "offset not a multiple of 4" msgstr "desplazamiento no un múltiplo de 4" -#: config/tc-arm.c:23625 +#: config/tc-arm.c:28171 msgid "invalid smc expression" msgstr "expresión smc no válida" -#: config/tc-arm.c:23634 +#: config/tc-arm.c:28181 msgid "invalid hvc expression" msgstr "expresión hvc no válida" -#: config/tc-arm.c:23645 config/tc-arm.c:23654 +#: config/tc-arm.c:28192 config/tc-arm.c:28201 msgid "invalid swi expression" msgstr "expresión swi no válida" -#: config/tc-arm.c:23664 +#: config/tc-arm.c:28211 msgid "invalid expression in load/store multiple" msgstr "expresión no válida en load/store múltiples" -#: config/tc-arm.c:23726 +#: config/tc-arm.c:28273 #, c-format msgid "blx to '%s' an ARM ISA state function changed to bl" msgstr "blx a «%s» cambió una función estatal ISA de ARM a bl" -#: config/tc-arm.c:23745 +#: config/tc-arm.c:28292 msgid "misaligned branch destination" msgstr "destinaciones ramificadas desalineadas" -#: config/tc-arm.c:23865 +#: config/tc-arm.c:28413 #, c-format msgid "blx to Thumb func '%s' from Thumb ISA state changed to bl" msgstr "blx a la función Thumb «%s» cambió del estado ISA Thumb a bl" -#: config/tc-arm.c:23915 +#: config/tc-arm.c:28462 msgid "Thumb2 branch out of range" -msgstr "Thumb2 ramificado fuera de límite" +msgstr "Thumb2 ramificado fuera de rango" + +#: config/tc-arm.c:28514 config/tc-arm.c:28547 +#, fuzzy +#| msgid "%s not supported in MIPS16 mode" +msgid "Relocation supported only in FDPIC mode" +msgstr "%s no admitido dentro del modo MIPS16" -#: config/tc-arm.c:23999 +#: config/tc-arm.c:28577 msgid "rel31 relocation overflow" msgstr "desbordamiento de reubicación rel31" -#: config/tc-arm.c:24020 config/tc-arm.c:24024 config/tc-arm.c:24063 +#: config/tc-arm.c:28599 config/tc-arm.c:28605 config/tc-arm.c:28609 +#: config/tc-arm.c:28656 msgid "co-processor offset out of range" -msgstr "desplazamiento de coprocesador fuera de límite" +msgstr "desplazamiento de coprocesador fuera de rango" -#: config/tc-arm.c:24080 +#: config/tc-arm.c:28673 #, c-format msgid "invalid offset, target not word aligned (0x%08lX)" msgstr "desplazamiento inválido, el objetivo no está alineado a word (0x%08lX)" -#: config/tc-arm.c:24087 config/tc-arm.c:24096 config/tc-arm.c:24104 -#: config/tc-arm.c:24112 config/tc-arm.c:24120 +#: config/tc-arm.c:28679 +msgid "section does not have enough alignment to ensure safe PC-relative loads" +msgstr "" + +#: config/tc-arm.c:28683 config/tc-arm.c:28692 config/tc-arm.c:28700 +#: config/tc-arm.c:28708 config/tc-arm.c:28716 #, c-format msgid "invalid offset, value too big (0x%08lX)" msgstr "desplazamiento inválido, valor demasiado grande (0x%08lX)" -#: config/tc-arm.c:24161 +#: config/tc-arm.c:28757 msgid "invalid Hi register with immediate" msgstr "registro Hi inválido con el inmediato" -#: config/tc-arm.c:24177 +#: config/tc-arm.c:28773 msgid "invalid immediate for stack address calculation" msgstr "inmediato inválido para el cálculo de la dirección de la pila" -#: config/tc-arm.c:24196 +#: config/tc-arm.c:28792 msgid "address calculation needs a strongly defined nearby symbol" msgstr "" -#: config/tc-arm.c:24212 +#: config/tc-arm.c:28808 msgid "symbol too far away" msgstr "símbolo fuera muy lejos" -#: config/tc-arm.c:24224 +#: config/tc-arm.c:28820 #, c-format msgid "invalid immediate for address calculation (value = 0x%08lX)" msgstr "inmediato inválido para el cálculo de la dirección (valor = 0x%08lX)" -#: config/tc-arm.c:24254 +#: config/tc-arm.c:28850 #, c-format msgid "invalid immediate: %ld is out of range" -msgstr "inmediato inválido: %ld está fuera de límite" +msgstr "inmediato inválido: %ld está fuera de rango" -#: config/tc-arm.c:24266 +#: config/tc-arm.c:28862 #, c-format msgid "invalid shift value: %ld" msgstr "valor de desplazamiento inválido: %ld" -#: config/tc-arm.c:24336 config/tc-arm.c:24407 +#: config/tc-arm.c:28932 config/tc-arm.c:29003 #, c-format msgid "the offset 0x%08lX is not representable" msgstr "el desplazamiento 0x%08lX no es representable" -#: config/tc-arm.c:24368 +#: config/tc-arm.c:28964 #, c-format msgid "Unable to process relocation for thumb opcode: %lx" msgstr "Incapaz de procesar reubicación para código operacional pulgar: %lx" -#: config/tc-arm.c:24447 +#: config/tc-arm.c:29043 #, c-format msgid "bad offset 0x%08lX (only 12 bits available for the magnitude)" -msgstr "desplazamiento equivocado 0x%08lX (sólo hay 12 bits disponibles para esta magnitud)" +msgstr "desplazamiento incorrecto 0x%08lX (solo hay 12 bits disponibles para esta magnitud)" -#: config/tc-arm.c:24486 +#: config/tc-arm.c:29082 #, c-format msgid "bad offset 0x%08lX (only 8 bits available for the magnitude)" -msgstr "desplazamiento equivocado 0x%08lX (sólo hay 8 bits disponibles para esta magnitud)" +msgstr "desplazamiento incorrecto 0x%08lX (solo hay 8 bits disponibles para esta magnitud)" -#: config/tc-arm.c:24526 +#: config/tc-arm.c:29122 #, c-format msgid "bad offset 0x%08lX (must be word-aligned)" -msgstr "desplazamiento equivocado 0x%08lX (debe ser alineado a word)" +msgstr "desplazamiento incorrecto 0x%08lX (debe ser alineado a word)" -#: config/tc-arm.c:24531 +#: config/tc-arm.c:29127 #, c-format msgid "bad offset 0x%08lX (must be an 8-bit number of words)" -msgstr "desplazamiento equivocado 0x%08lX (debe ser un número de 8-bit de words)" +msgstr "desplazamiento incorrecto 0x%08lX (debe ser un número de 8-bit de words)" -#: config/tc-arm.c:24562 config/tc-score.c:7391 +#: config/tc-arm.c:29348 config/tc-score.c:7302 #, c-format msgid "bad relocation fixup type (%d)" msgstr "tipo de compostura de reubicación inválido (%d)" -#: config/tc-arm.c:24680 +#: config/tc-arm.c:29465 msgid "literal referenced across section boundary" -msgstr "se referencía una literal a través de un límite seccional" +msgstr "se referencía una literal a través de un límite de sección" -#: config/tc-arm.c:24751 +#: config/tc-arm.c:29545 msgid "internal relocation (type: IMMEDIATE) not fixed up" msgstr "reubicación interna (tipo: IMMEDIATE) no compuesta" -#: config/tc-arm.c:24756 +#: config/tc-arm.c:29550 msgid "ADRL used for a symbol not defined in the same file" msgstr "ADRL utilizado para un símbolo que no está definido en el mismo fichero" -#: config/tc-arm.c:24771 +#: config/tc-arm.c:29557 +#, fuzzy, c-format +#| msgid "ADRL used for a symbol not defined in the same file" +msgid "%s used for a symbol not defined in the same file" +msgstr "ADRL utilizado para un símbolo que no está definido en el mismo fichero" + +#: config/tc-arm.c:29573 #, c-format msgid "undefined local label `%s'" msgstr "etiqueta local indefinida «%s»" -#: config/tc-arm.c:24777 +#: config/tc-arm.c:29579 msgid "internal_relocation (type: OFFSET_IMM) not fixed up" msgstr "reubicación_interna (tipo OFFSET_IMM) no compuesta" -#: config/tc-arm.c:24799 config/tc-cris.c:4006 config/tc-ft32.c:709 -#: config/tc-mcore.c:1928 config/tc-microblaze.c:1978 config/tc-mmix.c:2895 -#: config/tc-moxie.c:825 config/tc-ns32k.c:2248 config/tc-score.c:7478 +#: config/tc-arm.c:29601 config/tc-cris.c:3999 config/tc-csky.c:1152 +#: config/tc-ft32.c:707 config/tc-mcore.c:1932 config/tc-microblaze.c:2062 +#: config/tc-mmix.c:2898 config/tc-moxie.c:823 config/tc-ns32k.c:2245 +#: config/tc-score.c:7389 msgid "<unknown>" msgstr "<desconocido>" -#: config/tc-arm.c:25188 +#: config/tc-arm.c:30000 #, c-format msgid "%s: unexpected function type: %d" msgstr "%s: tipo de función inesperado: %d" -#: config/tc-arm.c:25325 +#: config/tc-arm.c:30140 msgid "use of old and new-style options to set CPU type" msgstr "se utilizan casillas de estilo antiguo y nuevo para establecer el tipo de CPU" -#: config/tc-arm.c:25340 +#: config/tc-arm.c:30159 msgid "use of old and new-style options to set FPU type" msgstr "se utilizan casillas de estilo antiguo y nuevo para establecer el tipo de FPU" -#: config/tc-arm.c:25424 +#: config/tc-arm.c:30232 msgid "hard-float conflicts with specified fpu" msgstr "hard-float tiene conflictos con la unidad de coma flotante (fpu) especificada" -#: config/tc-arm.c:25612 +#: config/tc-arm.c:30415 msgid "generate PIC code" msgstr "genera código PIC" -#: config/tc-arm.c:25613 +#: config/tc-arm.c:30416 msgid "assemble Thumb code" msgstr "ensambla código Thumb" -#: config/tc-arm.c:25614 +#: config/tc-arm.c:30417 msgid "support ARM/Thumb interworking" msgstr "admite la interoperación ARM/Thumb" -#: config/tc-arm.c:25616 +#: config/tc-arm.c:30419 msgid "code uses 32-bit program counter" msgstr "el código utiliza un contador de programa de 32-bit" -#: config/tc-arm.c:25617 +#: config/tc-arm.c:30420 msgid "code uses 26-bit program counter" msgstr "el código utiliza un contador de programa de 26-bit" -#: config/tc-arm.c:25618 +#: config/tc-arm.c:30421 msgid "floating point args are in fp regs" msgstr "los argumentos de coma flotante están en los registros de coma flotante" -#: config/tc-arm.c:25620 +#: config/tc-arm.c:30423 msgid "re-entrant code" msgstr "código reentrante" -#: config/tc-arm.c:25621 +#: config/tc-arm.c:30424 msgid "code is ATPCS conformant" msgstr "el código es conforme a ATPCS" #. These are recognized by the assembler, but have no affect on code. -#: config/tc-arm.c:25627 +#: config/tc-arm.c:30430 msgid "use frame pointer" msgstr "usa puntero de marco" -#: config/tc-arm.c:25628 +#: config/tc-arm.c:30431 msgid "use stack size checking" msgstr "usa revisión del tamaño de la pila" -#: config/tc-arm.c:25631 +#: config/tc-arm.c:30434 msgid "do not warn on use of deprecated feature" msgstr "no avisa del uso de una opción obsoleta" -#: config/tc-arm.c:25633 +#: config/tc-arm.c:30437 +msgid "warn about performance deprecated IT instructions in ARMv8-A and ARMv8-R" +msgstr "" + +#: config/tc-arm.c:30441 msgid "warn about symbols that match instruction names [default]" msgstr "" -#: config/tc-arm.c:25634 +#: config/tc-arm.c:30442 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:25650 config/tc-arm.c:25651 +#: config/tc-arm.c:30458 config/tc-arm.c:30459 msgid "use -mcpu=arm1" msgstr "emplea -mcpu=arm1" -#: config/tc-arm.c:25652 config/tc-arm.c:25653 +#: config/tc-arm.c:30460 config/tc-arm.c:30461 msgid "use -mcpu=arm2" msgstr "emplea -mcpu=arm2" -#: config/tc-arm.c:25654 config/tc-arm.c:25655 +#: config/tc-arm.c:30462 config/tc-arm.c:30463 msgid "use -mcpu=arm250" msgstr "emplea -mcpu=arm250" -#: config/tc-arm.c:25656 config/tc-arm.c:25657 +#: config/tc-arm.c:30464 config/tc-arm.c:30465 msgid "use -mcpu=arm3" msgstr "emplea -mcpu=arm3" -#: config/tc-arm.c:25658 config/tc-arm.c:25659 +#: config/tc-arm.c:30466 config/tc-arm.c:30467 msgid "use -mcpu=arm6" msgstr "emplea -mcpu=arm6" -#: config/tc-arm.c:25660 config/tc-arm.c:25661 +#: config/tc-arm.c:30468 config/tc-arm.c:30469 msgid "use -mcpu=arm600" msgstr "emplea -mcpu=arm600" -#: config/tc-arm.c:25662 config/tc-arm.c:25663 +#: config/tc-arm.c:30470 config/tc-arm.c:30471 msgid "use -mcpu=arm610" msgstr "emplea -mcpu=arm610" -#: config/tc-arm.c:25664 config/tc-arm.c:25665 +#: config/tc-arm.c:30472 config/tc-arm.c:30473 msgid "use -mcpu=arm620" msgstr "emplea -mcpu=arm620" -#: config/tc-arm.c:25666 config/tc-arm.c:25667 +#: config/tc-arm.c:30474 config/tc-arm.c:30475 msgid "use -mcpu=arm7" msgstr "emplea -mcpu=arm7" -#: config/tc-arm.c:25668 config/tc-arm.c:25669 +#: config/tc-arm.c:30476 config/tc-arm.c:30477 msgid "use -mcpu=arm70" msgstr "emplea -mcpu=arm70" -#: config/tc-arm.c:25670 config/tc-arm.c:25671 +#: config/tc-arm.c:30478 config/tc-arm.c:30479 msgid "use -mcpu=arm700" msgstr "emplea -mcpu=arm700" -#: config/tc-arm.c:25672 config/tc-arm.c:25673 +#: config/tc-arm.c:30480 config/tc-arm.c:30481 msgid "use -mcpu=arm700i" msgstr "emplea -mcpu=arm700i" -#: config/tc-arm.c:25674 config/tc-arm.c:25675 +#: config/tc-arm.c:30482 config/tc-arm.c:30483 msgid "use -mcpu=arm710" msgstr "emplea -mcpu=arm710" -#: config/tc-arm.c:25676 config/tc-arm.c:25677 +#: config/tc-arm.c:30484 config/tc-arm.c:30485 msgid "use -mcpu=arm710c" msgstr "emplea -mcpu=arm710c" -#: config/tc-arm.c:25678 config/tc-arm.c:25679 +#: config/tc-arm.c:30486 config/tc-arm.c:30487 msgid "use -mcpu=arm720" msgstr "emplea -mcpu=arm720" -#: config/tc-arm.c:25680 config/tc-arm.c:25681 +#: config/tc-arm.c:30488 config/tc-arm.c:30489 msgid "use -mcpu=arm7d" msgstr "emplea -mcpu=arm7d" -#: config/tc-arm.c:25682 config/tc-arm.c:25683 +#: config/tc-arm.c:30490 config/tc-arm.c:30491 msgid "use -mcpu=arm7di" msgstr "emplea -mcpu=arm7di" -#: config/tc-arm.c:25684 config/tc-arm.c:25685 +#: config/tc-arm.c:30492 config/tc-arm.c:30493 msgid "use -mcpu=arm7m" msgstr "emplea -mcpu=arm7m" -#: config/tc-arm.c:25686 config/tc-arm.c:25687 +#: config/tc-arm.c:30494 config/tc-arm.c:30495 msgid "use -mcpu=arm7dm" msgstr "emplea -mcpu=arm7dm" -#: config/tc-arm.c:25688 config/tc-arm.c:25689 +#: config/tc-arm.c:30496 config/tc-arm.c:30497 msgid "use -mcpu=arm7dmi" msgstr "emplea -mcpu=arm7dmi" -#: config/tc-arm.c:25690 config/tc-arm.c:25691 +#: config/tc-arm.c:30498 config/tc-arm.c:30499 msgid "use -mcpu=arm7100" msgstr "emplea -mcpu=arm7100" -#: config/tc-arm.c:25692 config/tc-arm.c:25693 +#: config/tc-arm.c:30500 config/tc-arm.c:30501 msgid "use -mcpu=arm7500" msgstr "emplea -mcpu=arm7500" -#: config/tc-arm.c:25694 config/tc-arm.c:25695 +#: config/tc-arm.c:30502 config/tc-arm.c:30503 msgid "use -mcpu=arm7500fe" msgstr "emplea -mcpu=arm7500fe" -#: config/tc-arm.c:25696 config/tc-arm.c:25697 config/tc-arm.c:25698 -#: config/tc-arm.c:25699 +#: config/tc-arm.c:30504 config/tc-arm.c:30505 config/tc-arm.c:30506 +#: config/tc-arm.c:30507 msgid "use -mcpu=arm7tdmi" msgstr "emplea -mcpu=arm7tdmi" -#: config/tc-arm.c:25700 config/tc-arm.c:25701 +#: config/tc-arm.c:30508 config/tc-arm.c:30509 msgid "use -mcpu=arm710t" msgstr "emplea -mcpu=arm710t" -#: config/tc-arm.c:25702 config/tc-arm.c:25703 +#: config/tc-arm.c:30510 config/tc-arm.c:30511 msgid "use -mcpu=arm720t" msgstr "emplea -mcpu=arm720t" -#: config/tc-arm.c:25704 config/tc-arm.c:25705 +#: config/tc-arm.c:30512 config/tc-arm.c:30513 msgid "use -mcpu=arm740t" msgstr "emplea -mcpu=arm740t" -#: config/tc-arm.c:25706 config/tc-arm.c:25707 +#: config/tc-arm.c:30514 config/tc-arm.c:30515 msgid "use -mcpu=arm8" msgstr "emplea -mcpu=arm8" -#: config/tc-arm.c:25708 config/tc-arm.c:25709 +#: config/tc-arm.c:30516 config/tc-arm.c:30517 msgid "use -mcpu=arm810" msgstr "emplea -mcpu=arm810" -#: config/tc-arm.c:25710 config/tc-arm.c:25711 +#: config/tc-arm.c:30518 config/tc-arm.c:30519 msgid "use -mcpu=arm9" msgstr "emplea -mcpu=arm9" -#: config/tc-arm.c:25712 config/tc-arm.c:25713 +#: config/tc-arm.c:30520 config/tc-arm.c:30521 msgid "use -mcpu=arm9tdmi" msgstr "emplea -mcpu=arm9tdmi" -#: config/tc-arm.c:25714 config/tc-arm.c:25715 +#: config/tc-arm.c:30522 config/tc-arm.c:30523 msgid "use -mcpu=arm920" msgstr "emplea -mcpu=arm920" -#: config/tc-arm.c:25716 config/tc-arm.c:25717 +#: config/tc-arm.c:30524 config/tc-arm.c:30525 msgid "use -mcpu=arm940" msgstr "emplea -mcpu=arm940" -#: config/tc-arm.c:25718 +#: config/tc-arm.c:30526 msgid "use -mcpu=strongarm" msgstr "emplea -mcpu=strongarm" -#: config/tc-arm.c:25720 +#: config/tc-arm.c:30528 msgid "use -mcpu=strongarm110" msgstr "emplea -mcpu=strongarm110" -#: config/tc-arm.c:25722 +#: config/tc-arm.c:30530 msgid "use -mcpu=strongarm1100" msgstr "emplea -mcpu=strongarm1100" -#: config/tc-arm.c:25724 +#: config/tc-arm.c:30532 msgid "use -mcpu=strongarm1110" msgstr "emplea -mcpu=strongarm1110" -#: config/tc-arm.c:25725 +#: config/tc-arm.c:30533 msgid "use -mcpu=xscale" msgstr "emplea -mcpu=xscale" -#: config/tc-arm.c:25726 +#: config/tc-arm.c:30534 msgid "use -mcpu=iwmmxt" msgstr "emplea -mcpu=iwmmxt" -#: config/tc-arm.c:25727 +#: config/tc-arm.c:30535 msgid "use -mcpu=all" msgstr "emplea -mcpu=all" #. Architecture variants -- don't add any more to this list either. -#: config/tc-arm.c:25730 config/tc-arm.c:25731 +#: config/tc-arm.c:30538 config/tc-arm.c:30539 msgid "use -march=armv2" msgstr "emplea -march=armv2" -#: config/tc-arm.c:25732 config/tc-arm.c:25733 +#: config/tc-arm.c:30540 config/tc-arm.c:30541 msgid "use -march=armv2a" msgstr "emplea -march=armv2a" -#: config/tc-arm.c:25734 config/tc-arm.c:25735 +#: config/tc-arm.c:30542 config/tc-arm.c:30543 msgid "use -march=armv3" msgstr "emplea -march=armv3" -#: config/tc-arm.c:25736 config/tc-arm.c:25737 +#: config/tc-arm.c:30544 config/tc-arm.c:30545 msgid "use -march=armv3m" msgstr "emplea -march=armv3m" -#: config/tc-arm.c:25738 config/tc-arm.c:25739 +#: config/tc-arm.c:30546 config/tc-arm.c:30547 msgid "use -march=armv4" msgstr "emplea -march=armv4" -#: config/tc-arm.c:25740 config/tc-arm.c:25741 +#: config/tc-arm.c:30548 config/tc-arm.c:30549 msgid "use -march=armv4t" msgstr "emplea -march=armv4t" -#: config/tc-arm.c:25742 config/tc-arm.c:25743 +#: config/tc-arm.c:30550 config/tc-arm.c:30551 msgid "use -march=armv5" msgstr "emplea -march=armv5" -#: config/tc-arm.c:25744 config/tc-arm.c:25745 +#: config/tc-arm.c:30552 config/tc-arm.c:30553 msgid "use -march=armv5t" msgstr "emplea -march=armv5t" -#: config/tc-arm.c:25746 config/tc-arm.c:25747 +#: config/tc-arm.c:30554 config/tc-arm.c:30555 msgid "use -march=armv5te" msgstr "emplea -march=armv5te" -#. Floating point variants -- don't add any more to this list either. -#: config/tc-arm.c:25750 -msgid "use -mfpu=fpe" +#: config/tc-arm.c:30556 +#, fuzzy +#| msgid "use -mfpu=fpe" +msgid "use -mfpu=softvfp" msgstr "emplea -mfpu=fpe" -#: config/tc-arm.c:25751 -msgid "use -mfpu=fpa10" -msgstr "emplea -mfpu=fpa10" - -#: config/tc-arm.c:25752 -msgid "use -mfpu=fpa11" -msgstr "emplea -mfpu=fpa11" - -#: config/tc-arm.c:25754 -msgid "use either -mfpu=softfpa or -mfpu=softvfp" -msgstr "emplea -mfpu=softfpa ó -mfpu=softvfp" - -#: config/tc-arm.c:26508 +#: config/tc-arm.c:31713 msgid "extension does not apply to the base architecture" msgstr "extensión no se aplica a la arquitectura base" -#: config/tc-arm.c:26538 +#: config/tc-arm.c:31742 msgid "architectural extensions must be specified in alphabetical order" msgstr "extensiones de arquitectura deben ser especificadas en orden alfabético" -#: config/tc-arm.c:26656 config/tc-arm.c:27541 +#: config/tc-arm.c:31881 config/tc-arm.c:32864 #, c-format msgid "unknown floating point format `%s'\n" msgstr "desconoce formato de coma flotante «%s»\n" -#: config/tc-arm.c:26672 +#: config/tc-arm.c:31897 config/tc-csky.c:1264 #, c-format msgid "unknown floating point abi `%s'\n" msgstr "desconoce abi de coma flotante «%s» desconocida\n" -#: config/tc-arm.c:26688 +#: config/tc-arm.c:31913 #, c-format msgid "unknown EABI `%s'\n" msgstr "desconoce EABI «%s»\n" -#: config/tc-arm.c:26708 +#: config/tc-arm.c:31933 #, c-format msgid "unknown implicit IT mode `%s', should be arm, thumb, always, or never." msgstr "desconoce modo IT implícito «%s» , debe ser brazo, pulgar, siempre o nunca." -#: config/tc-arm.c:26731 config/tc-metag.c:5913 +#: config/tc-arm.c:31956 config/tc-metag.c:5911 msgid "<fpu name>\t assemble for FPU architecture <fpu name>" msgstr "<nombre fpu>\t ensambla para la arquitectura de Unidad de Coma Flotante <nombre fpu>" -#: config/tc-arm.c:26733 +#: config/tc-arm.c:31958 msgid "<abi>\t assemble for floating point ABI <abi>" msgstr "<abi>\t ensambla para la ABI de coma flotante <abi>" -#: config/tc-arm.c:26736 +#: config/tc-arm.c:31961 msgid "<ver>\t\t assemble for eabi version <ver>" msgstr "<ver>\t\t ensambla para la eabi versión <ver>" -#: config/tc-arm.c:26739 +#: config/tc-arm.c:31964 msgid "<mode>\t controls implicit insertion of IT instructions" msgstr "<modo>\t controla la inserción implícita de instrucciones IT" -#: config/tc-arm.c:26741 +#: config/tc-arm.c:31966 msgid "\t\t\t TI CodeComposer Studio syntax compatibility mode" msgstr "\t\t\t modo compatible de sintaxis TI CodeComposer Studio" -#: config/tc-arm.c:26843 +#: config/tc-arm.c:31969 +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:32080 #, c-format msgid " ARM-specific assembler options:\n" msgstr " Opciones de ensamblador específicas de ARM:\n" -#: config/tc-arm.c:26863 +#: config/tc-arm.c:32100 #, c-format msgid " --fix-v4bx Allow BX in ARMv4 code\n" msgstr " --fix-v4bx Permite BX en código ARMv4\n" -#: config/tc-arm.c:27160 +#: config/tc-arm.c:32104 +#, fuzzy, c-format +#| msgid "--fdpic\t\t\tgenerate an FDPIC object file\n" +msgid " --fdpic generate an FDPIC object file\n" +msgstr "--fdpic\t\t\tgenera un fichero objeto FDPIC\n" + +#: config/tc-arm.c:32425 msgid "no architecture contains all the instructions used\n" msgstr "ninguna arquitectura contiene todas las instrucciones utilizadas\n" -#: config/tc-arm.c:27479 +#: config/tc-arm.c:32617 +#, fuzzy +#| msgid "missing cpu name `%s'" +msgid ".cpu: missing cpu name" +msgstr "ausente el nombre de cpu «%s»" + +#: config/tc-arm.c:32665 +#, fuzzy +#| msgid "missing architecture name `%s'" +msgid ".arch: missing architecture name" +msgstr "ausente el nombre de arquitectura «%s»" + +#: config/tc-arm.c:32706 +#, fuzzy +#| msgid "missing architecture name `%s'" +msgid ".object_arch: missing architecture name" +msgstr "ausente el nombre de arquitectura «%s»" + +#: config/tc-arm.c:32743 +#, fuzzy +#| msgid "missing architectural extension" +msgid ".arch_extension: missing architecture extension" +msgstr "ausente la extensión de la arquitectura" + +#: config/tc-arm.c:32800 #, c-format msgid "architectural extension `%s' is not allowed for the current base architecture" msgstr "no se permite la extensión de arquitectura «%s» para la arquitectura base actual" -#: config/tc-arm.c:27508 +#: config/tc-arm.c:32823 #, c-format msgid "unknown architecture extension `%s'\n" msgstr "desconoce extensión de arquitectura «%s»\n" -#: config/tc-avr.c:594 +#: config/tc-arm.c:32844 +#, fuzzy +#| msgid "missing fpu name `%s'" +msgid ".fpu: missing fpu name" +msgstr "ausente el nombre fpu «%s»" + +#: config/tc-avr.c:597 #, c-format msgid "Known MCU names:" msgstr "Nombres MCU conocidos:" -#: config/tc-avr.c:659 +#: config/tc-avr.c:662 #, c-format msgid "" "AVR Assembler options:\n" @@ -5036,8 +6149,18 @@ msgstr "" " avrxmega7 - XMEGA, > 128K, ≤ 256K FLASH, > 64K RAM\n" " avrtinyo Núcleo -AVR Tiny con registros 16 gp\n" -#: config/tc-avr.c:682 -#, c-format +#: config/tc-avr.c:685 +#, fuzzy, c-format +#| msgid "" +#| " -mall-opcodes accept all AVR opcodes, even if not supported by MCU\n" +#| " -mno-skip-bug disable warnings for skipping two-word instructions\n" +#| " (default for avr4, avr5)\n" +#| " -mno-wrap reject rjmp/rcall instructions with 8K wrap-around\n" +#| " (default for avr3, avr5)\n" +#| " -mrmw accept Read-Modify-Write instructions\n" +#| " -mlink-relax generate relocations for linker relaxation (default)\n" +#| " -mno-link-relax don't generate relocations for linker relaxation.\n" +#| " -mgcc-isr accept the __gcc_isr pseudo-instruction.\n" msgid "" " -mall-opcodes accept all AVR opcodes, even if not supported by MCU\n" " -mno-skip-bug disable warnings for skipping two-word instructions\n" @@ -5048,6 +6171,8 @@ msgid "" " -mlink-relax generate relocations for linker relaxation (default)\n" " -mno-link-relax don't generate relocations for linker relaxation.\n" " -mgcc-isr accept the __gcc_isr pseudo-instruction.\n" +" -mno-dollar-line-separator\n" +" do not treat the $ character as a line separator.\n" msgstr "" " -mall-opcodes acepta todos los códigos operacionales AVR, aún si\n" " no lo admite el MCU\n" @@ -5060,507 +6185,560 @@ msgstr "" " -mno-link-relax no genera reubicación para relajación de enlazador.\n" " -mgcc-isr acepta la __gcc_isr pseudo-instrucción.\n" -#: config/tc-avr.c:721 +#: config/tc-avr.c:726 #, c-format msgid "unknown MCU: %s\n" msgstr "desconoce MCU: %s\n" -#: config/tc-avr.c:735 +#: config/tc-avr.c:740 #, c-format msgid "redefinition of mcu type `%s' to `%s'" msgstr "redefinición del tipo de mcu «%s» a «%s»" -#: config/tc-avr.c:858 +#: config/tc-avr.c:869 msgid "constant value required" msgstr "se requiere un valor constante" -#: config/tc-avr.c:861 +#: config/tc-avr.c:872 #, c-format msgid "number must be positive and less than %d" msgstr "el número debe ser positivo y menor que %d" -#: config/tc-avr.c:887 config/tc-avr.c:1024 +#: config/tc-avr.c:898 config/tc-avr.c:1035 #, c-format msgid "constant out of 8-bit range: %d" msgstr "constante fuera del límite de 8-bit: %d" -#: config/tc-avr.c:955 config/tc-score.c:1199 read.c:3814 +#: config/tc-avr.c:966 config/tc-score.c:1194 read.c:4075 msgid "illegal expression" msgstr "expresión ilegal" -#: config/tc-avr.c:984 config/tc-avr.c:1994 config/tc-pru.c:1874 +#: config/tc-avr.c:995 config/tc-avr.c:2004 config/tc-pru.c:1870 msgid "`)' required" msgstr "`)' requerido" -#: config/tc-avr.c:1094 +#: config/tc-avr.c:1105 msgid "register name or number from 16 to 31 required" msgstr "requerido nombre o número de registro desde 16 a 32" -#: config/tc-avr.c:1100 +#: config/tc-avr.c:1111 msgid "register name or number from 0 to 31 required" msgstr "requerido nombre o número de registro desde 0 a 31" -#: config/tc-avr.c:1108 +#: config/tc-avr.c:1119 msgid "register r16-r23 required" msgstr "se requiere los registros r16-r23" -#: config/tc-avr.c:1114 +#: config/tc-avr.c:1125 msgid "register number above 15 required" msgstr "se requiere un número de registro superior a 15" -#: config/tc-avr.c:1120 +#: config/tc-avr.c:1131 config/tc-csky.c:6417 config/tc-csky.c:6446 msgid "even register number required" msgstr "requerido número de registro par" -#: config/tc-avr.c:1126 +#: config/tc-avr.c:1137 msgid "register r24, r26, r28 or r30 required" msgstr "se requieren los registros r24, r26, r28 o r30" -#: config/tc-avr.c:1147 +#: config/tc-avr.c:1158 msgid "pointer register (X, Y or Z) required" msgstr "registro puntero (X, Y o Z) requerido" -#: config/tc-avr.c:1154 +#: config/tc-avr.c:1165 msgid "cannot both predecrement and postincrement" msgstr "no se puede predecrementar y postincrementar" -#: config/tc-avr.c:1162 +#: config/tc-avr.c:1173 msgid "addressing mode not supported" msgstr "no se admite el modo de direccionamiento" -#: config/tc-avr.c:1168 +#: config/tc-avr.c:1179 msgid "can't predecrement" msgstr "no se puede predecrementar" -#: config/tc-avr.c:1171 +#: config/tc-avr.c:1182 msgid "pointer register Z required" msgstr "se requiere el registro puntero Z" -#: config/tc-avr.c:1190 +#: config/tc-avr.c:1201 msgid "postincrement not supported" msgstr "no se admite el postincremento" -#: config/tc-avr.c:1200 +#: config/tc-avr.c:1211 msgid "pointer register (Y or Z) required" msgstr "se requiere un registro puntero (Y o Z)" -#: config/tc-avr.c:1322 config/tc-xgate.c:1352 +#: config/tc-avr.c:1333 config/tc-xgate.c:1354 #, c-format msgid "unknown constraint `%c'" msgstr "desconoce constante `%c'" -#: config/tc-avr.c:1385 config/tc-avr.c:2677 +#: config/tc-avr.c:1396 config/tc-avr.c:2686 msgid "`,' required" msgstr "`,' requerido" -#: config/tc-avr.c:1406 +#: config/tc-avr.c:1417 msgid "undefined combination of operands" msgstr "combinación indefinida de operandos" -#: config/tc-avr.c:1415 +#: config/tc-avr.c:1426 msgid "skipping two-word instruction" msgstr "se omite la instrucción de dos word" -#: config/tc-avr.c:1603 config/tc-avr.c:1619 config/tc-avr.c:1750 -#: config/tc-msp430.c:4125 config/tc-msp430.c:4144 +#: config/tc-avr.c:1614 config/tc-avr.c:1630 config/tc-avr.c:1761 +#: config/tc-msp430.c:4500 config/tc-msp430.c:4519 #, c-format msgid "odd address operand: %ld" msgstr "operando de direccón impar: %ld" -#: config/tc-avr.c:1611 config/tc-avr.c:1630 config/tc-avr.c:1648 -#: config/tc-avr.c:1659 config/tc-avr.c:1675 config/tc-avr.c:1683 -#: config/tc-avr.c:1778 config/tc-avr.c:1785 config/tc-d10v.c:503 -#: config/tc-d30v.c:553 config/tc-msp430.c:4133 config/tc-msp430.c:4151 +#: config/tc-avr.c:1622 config/tc-avr.c:1641 config/tc-avr.c:1659 +#: config/tc-avr.c:1670 config/tc-avr.c:1686 config/tc-avr.c:1694 +#: config/tc-avr.c:1789 config/tc-avr.c:1796 config/tc-d10v.c:503 +#: config/tc-d30v.c:550 config/tc-msp430.c:4508 config/tc-msp430.c:4526 #, c-format msgid "operand out of range: %ld" -msgstr "operando fuera de límite: %ld" +msgstr "operando fuera de rango: %ld" -#: config/tc-avr.c:1666 +#: config/tc-avr.c:1677 #, c-format msgid "operand out of range: 0x%lx" -msgstr "operando fuera de límite: 0x%lx" +msgstr "operando fuera de rango: 0x%lx" -#: config/tc-avr.c:1771 config/tc-d10v.c:1590 config/tc-d30v.c:2034 -#: config/tc-msp430.c:4222 +#: config/tc-avr.c:1782 config/tc-d10v.c:1592 config/tc-d30v.c:2011 +#: config/tc-msp430.c:4597 #, c-format msgid "line %d: unknown relocation type: 0x%x" msgstr "línea %d: tipo reubicado desconocida: 0x%x" -#: config/tc-avr.c:1799 +#: config/tc-avr.c:1810 msgid "only constant expression allowed" -msgstr "sólo se permite una expresión constante" +msgstr "solo se permite una expresión constante" #. xgettext:c-format. -#: config/tc-avr.c:1854 config/tc-bfin.c:825 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:4270 config/tc-ppc.c:7251 -#: config/tc-spu.c:879 config/tc-spu.c:1090 config/tc-v850.c:3367 -#: config/tc-z80.c:2059 +#: config/tc-avr.c:1864 config/tc-bfin.c:813 config/tc-d10v.c:1461 +#: config/tc-d30v.c:1768 config/tc-metag.c:7016 config/tc-mn10200.c:775 +#: config/tc-mn10300.c:2178 config/tc-msp430.c:4645 config/tc-ppc.c:7770 +#: config/tc-spu.c:878 config/tc-spu.c:1089 config/tc-v850.c:3360 +#: config/tc-z80.c:3871 #, c-format msgid "reloc %d not supported by object file format" msgstr "el formato del fichero objeto no admite la reubicación %d" -#: config/tc-avr.c:1876 config/tc-ft32.c:232 config/tc-h8300.c:1960 -#: config/tc-mcore.c:880 config/tc-microblaze.c:933 config/tc-moxie.c:182 -#: config/tc-pj.c:253 config/tc-sh.c:2591 config/tc-wasm32.c:747 -#: config/tc-z8k.c:1223 +#: config/tc-avr.c:1886 config/tc-ft32.c:232 config/tc-h8300.c:1928 +#: config/tc-mcore.c:881 config/tc-microblaze.c:913 config/tc-moxie.c:180 +#: config/tc-pj.c:253 config/tc-sh.c:2182 config/tc-wasm32.c:747 +#: config/tc-z8k.c:1233 msgid "can't find opcode " msgstr "no se puede encontrar el código operacional " -#: config/tc-avr.c:1895 +#: config/tc-avr.c:1905 #, c-format msgid "illegal opcode %s for mcu %s" msgstr "código operacional %s ilegal para el mcu %s" -#: config/tc-avr.c:1911 +#: config/tc-avr.c:1921 #, c-format msgid "pseudo instruction `%s' not supported" msgstr "pseudo instrucción «%s» no admitida" -#: config/tc-avr.c:1933 +#: config/tc-avr.c:1943 msgid "garbage at end of line" msgstr "basura al final de la línea" -#: config/tc-avr.c:2043 config/tc-pru.c:1906 +#: config/tc-avr.c:2053 config/tc-pru.c:1902 #, c-format msgid "illegal %s relocation size: %d" msgstr "reubicación de tamaño %s ilegal: %d" -#: config/tc-avr.c:2156 config/tc-avr.c:2211 +#: config/tc-avr.c:2166 config/tc-avr.c:2221 #, c-format msgid "unknown record type %d (in %s)" msgstr "tipo de registro desconociodo %d (en %s)" -#: config/tc-avr.c:2232 +#: config/tc-avr.c:2242 #, c-format msgid "Failed to create property section `%s'\n" msgstr "Fallado para crear secciones propietarias `%s'\n" -#: config/tc-avr.c:2669 +#: config/tc-avr.c:2678 #, c-format msgid "%s requires value 0-2 as operand 1" msgstr "" -#: config/tc-avr.c:2694 +#: config/tc-avr.c:2703 #, c-format msgid "`%s %d' after `%s %d' from %s:%u" msgstr "`%s %d' tras `%s %d' desde %s:%u" -#: config/tc-avr.c:2697 +#: config/tc-avr.c:2706 #, c-format msgid "`%s %d' but no chunk open yet" msgstr "«%s %d» pero no recorta abierto aún" -#: config/tc-avr.c:2785 +#: config/tc-avr.c:2794 #, c-format msgid "dangling `__gcc_isr %d'" msgstr "`__gcc_isr colgado %d'" -#: config/tc-avr.c:2787 +#: config/tc-avr.c:2796 msgid "dangling `__gcc_isr'" msgstr "colgado `__gcc_isr'" -#: config/tc-bfin.c:94 config/tc-frv.c:1603 config/tc-frv.c:1613 +#: config/tc-bfin.c:93 config/tc-frv.c:1603 config/tc-frv.c:1613 msgid "missing ')'" msgstr "ausente ')'" -#: config/tc-bfin.c:440 +#: config/tc-bfin.c:428 #, c-format msgid " Blackfin specific assembler options:\n" msgstr " Opciones de ensamblador específicas de Blackfin:\n" -#: config/tc-bfin.c:441 +#: config/tc-bfin.c:429 #, c-format msgid " -mcpu=<cpu[-sirevision]> specify the name of the target CPU\n" msgstr " -mcpu=<cpu[-sirevision]> especifica el nombre del CPU objetivo\n" -#: config/tc-bfin.c:442 +#: config/tc-bfin.c:430 #, c-format msgid " -mfdpic assemble for the FDPIC ABI\n" msgstr " -mfdpic ensambla para la ABI de FDPIC\n" -#: config/tc-bfin.c:443 +#: config/tc-bfin.c:431 #, c-format msgid " -mno-fdpic/-mnopic disable -mfdpic\n" msgstr " -mno-fdpic/-mnopic desactiva -mfdpic\n" -#: config/tc-bfin.c:456 +#: config/tc-bfin.c:444 msgid "Could not set architecture and machine." msgstr "No se pueden establecer la arquitectura y la máquina." -#: config/tc-bfin.c:603 +#: config/tc-bfin.c:591 msgid "Parse failed." msgstr "Falló la decodificación." -#: config/tc-bfin.c:678 +#: config/tc-bfin.c:666 msgid "pcrel too far BFD_RELOC_BFIN_10" msgstr "pcrel demasiado lejos de BFD_RELOC_BFIN_10" -#: config/tc-bfin.c:694 +#: config/tc-bfin.c:682 msgid "pcrel too far BFD_RELOC_BFIN_12" msgstr "pcrel demasiado lejos de BFD_RELOC_BFIN_12" -#: config/tc-bfin.c:714 +#: config/tc-bfin.c:702 msgid "pcrel too far BFD_RELOC_BFIN_24" msgstr "pcrel demasiado lejos de BFD_RELOC_BFIN_24" -#: config/tc-bfin.c:729 +#: config/tc-bfin.c:717 msgid "pcrel too far BFD_RELOC_BFIN_5" msgstr "pcrel demasiado lejos de BFD_RELOC_BFIN_5" -#: config/tc-bfin.c:741 +#: config/tc-bfin.c:729 msgid "pcrel too far BFD_RELOC_BFIN_11_PCREL" msgstr "pcrel demasiado lejos de BFD_RELOC_BFIN_11_PCREL" -#: config/tc-bfin.c:751 +#: config/tc-bfin.c:739 msgid "rel too far BFD_RELOC_8" msgstr "rel demasiado lejos de BFD_RELOC_8" -#: config/tc-bfin.c:758 +#: config/tc-bfin.c:746 msgid "rel too far BFD_RELOC_16" msgstr "rel demasiado lejos de BFD_RELOC_16" -#: config/tc-cr16.c:164 read.c:4667 +#: config/tc-bpf.c:194 +#, c-format +msgid "-mdialect=%s is not valid. Expected normal or pseudoc" +msgstr "" + +#: config/tc-bpf.c:209 +#, c-format +msgid "-misa-spec=%s is not valid. Expected v1, v2, v3, v4 o xbpf" +msgstr "" + +#: config/tc-bpf.c:229 +#, fuzzy, c-format +#| msgid "FT32 options:\n" +msgid "" +"\n" +"BPF options:\n" +msgstr "Opciones FT32:\n" + +#: config/tc-bpf.c:230 +#, c-format +msgid "" +"BPF options:\n" +" -EL generate code for a little endian machine\n" +" -EB generate code for a big endian machine\n" +" -mdialect=DIALECT set the assembly dialect (normal, pseudoc)\n" +" -misa-spec set the BPF ISA spec (v1, v2, v3, v4, xbpf)\n" +" -mxbpf alias for -misa-spec=xbpf\n" +msgstr "" + +#: config/tc-bpf.c:588 +msgid "signed instruction operand out of range, shall fit in 32 bits" +msgstr "" + +#: config/tc-bpf.c:962 +#, fuzzy +#| msgid "immediate out of range for insert" +msgid "immediate out of range, shall fit in 32 bits" +msgstr "inmediato fuera de rango para insert" + +#: config/tc-bpf.c:972 +#, fuzzy +#| msgid "pc-relative load offset out of range" +msgid "pc-relative offset out of range, shall fit in 32 bits" +msgstr "el desplazamiento de carga pc-relativa fuera de rango" + +#: config/tc-bpf.c:982 config/tc-bpf.c:992 +#, fuzzy +#| msgid "pc-relative load offset out of range" +msgid "pc-relative offset out of range, shall fit in 16 bits" +msgstr "el desplazamiento de carga pc-relativa fuera de rango" + +#: config/tc-bpf.c:1375 +#, fuzzy, c-format +#| msgid "unexpected `\"' in expression" +msgid "unexpected register name `%s' in expression" +msgstr "`«' o `»' inesperada dentro de expresión" + +#: config/tc-bpf.c:1706 +#, fuzzy, c-format +#| msgid "invalid condition code '%s'" +msgid "invalid %%-tag in BPF opcode '%s'\n" +msgstr "código condicional inválido «%s»" + +#: config/tc-bpf.c:1753 +#, fuzzy, c-format +#| msgid "unrecognised instruction %s" +msgid "unrecognized instruction `%s'" +msgstr "instrucción %s no reconocida" + +#: config/tc-cr16.c:168 msgid "using a bit field width of zero" msgstr "empleando una anchura de campo de bit de cero" -#: config/tc-cr16.c:172 read.c:4675 +#: config/tc-cr16.c:176 #, c-format msgid "field width \"%s\" too complex for a bitfield" msgstr "anchura de campo «%s» es demasiado compleja para un campo de bits" -#: config/tc-cr16.c:181 read.c:4683 +#: config/tc-cr16.c:186 #, c-format msgid "field width %lu too big to fit in %d byte: truncated to %d bits" msgid_plural "field width %lu too big to fit in %d bytes: truncated to %d bits" msgstr[0] "anchura de campo %lu es muy grande para caber en %d byte: se truncó a %d bits" msgstr[1] "anchura de campo %lu es muy grande para caber en %d bytes: se truncó a %d bits" -#: config/tc-cr16.c:208 read.c:4709 +#: config/tc-cr16.c:212 #, c-format msgid "field value \"%s\" too complex for a bitfield" msgstr "valor del campo «%s» es demasiado complejo para un campo de bits" -#: config/tc-cr16.c:389 +#: config/tc-cr16.c:394 #, c-format msgid "Unknown register pair - index relative mode: `%d'" -msgstr "Registros modo relativo par - indizado desconocido: '%d'" +msgstr "Registros modo relativo par - indexado desconocido: '%d'" -#: config/tc-cr16.c:603 config/tc-crx.c:361 +#: config/tc-cr16.c:601 config/tc-crx.c:331 #, c-format msgid "internal error: reloc %d (`%s') not supported by object file format" msgstr "error interno: reubicación %d («%s») no admitidó por formato del fichero objeto" -#: config/tc-cr16.c:696 config/tc-i386.c:10718 config/tc-s390.c:2106 +#: config/tc-cr16.c:694 config/tc-i386.c:17857 config/tc-s390.c:2340 msgid "GOT already in symbol table" msgstr "GOT ya está en la distribución simbólicos" -#: config/tc-cr16.c:813 config/tc-m68k.c:4657 config/tc-tilegx.c:319 -#: config/tc-tilepro.c:256 -#, c-format -msgid "Internal Error: Can't hash %s: %s" -msgstr "Error Interno: No se puede dispersar %s: %s" - -#: config/tc-cr16.c:839 config/tc-cris.c:1229 config/tc-crx.c:545 -#, c-format -msgid "Can't hash `%s': %s\n" -msgstr "No se puede dispersar «%s»: %s\n" - -#: config/tc-cr16.c:840 config/tc-cris.c:1230 config/tc-crx.c:546 -msgid "(unknown reason)" -msgstr "(razón desconocida)" - #. Missing or bad expr becomes absolute 0. -#: config/tc-cr16.c:892 config/tc-crx.c:619 +#: config/tc-cr16.c:878 config/tc-crx.c:568 #, c-format msgid "missing or invalid displacement expression `%s' taken as 0" msgstr "la expresión de desubicación ausentente o no válida «%s» se toma como 0" -#: config/tc-cr16.c:942 +#: config/tc-cr16.c:928 #, c-format msgid "GOT bad expression with %s." -msgstr "GOT como expresión equivocada con %s." +msgstr "GOT como expresión incorrecta con %s." -#: config/tc-cr16.c:1053 +#: config/tc-cr16.c:1039 #, c-format msgid "operand %d: illegal use expression: `%s`" msgstr "operando %d: expresión de uso ilegal: `%s`" -#: config/tc-cr16.c:1118 config/tc-crx.c:1129 +#: config/tc-cr16.c:1104 config/tc-crx.c:1078 #, c-format msgid "Unknown register: `%d'" msgstr "Registro desconocido: '%d'" #. Issue a error message when register is illegal. -#: config/tc-cr16.c:1126 +#: config/tc-cr16.c:1112 #, c-format msgid "Illegal register (`%s') in Instruction: `%s'" msgstr "Registro ilegal («%s») en Instruction: «%s»" -#: config/tc-cr16.c:1199 config/tc-cr16.c:1274 +#: config/tc-cr16.c:1186 config/tc-cr16.c:1261 #, c-format msgid "Illegal register `%s' in Instruction `%s'" msgstr "Registro ilegal «%s» en la Instruction «%s»" -#: config/tc-cr16.c:1227 config/tc-cr16.c:1238 +#: config/tc-cr16.c:1214 config/tc-cr16.c:1225 #, c-format msgid "Illegal register pair `%s' in Instruction `%s'" msgstr "Par de registro ilegal «%s» en la Instrucción «%s»" -#: config/tc-cr16.c:1263 config/tc-i960.c:833 +#: config/tc-cr16.c:1250 msgid "unmatched '['" msgstr "desemparejado '['" -#: config/tc-cr16.c:1269 config/tc-i960.c:840 +#: config/tc-cr16.c:1256 msgid "garbage after index spec ignored" msgstr "se descarta la basura tras la especificación del índice" -#: config/tc-cr16.c:1417 config/tc-crx.c:938 +#: config/tc-cr16.c:1404 config/tc-crx.c:887 #, c-format msgid "Illegal operands (whitespace): `%s'" msgstr "Operandos ilegales (espacios en blanco): «%s»" -#: config/tc-cr16.c:1429 config/tc-cr16.c:1436 config/tc-cr16.c:1453 -#: config/tc-crx.c:950 config/tc-crx.c:957 config/tc-crx.c:974 -#: config/tc-crx.c:1767 +#: config/tc-cr16.c:1416 config/tc-cr16.c:1423 config/tc-cr16.c:1440 +#: config/tc-crx.c:899 config/tc-crx.c:906 config/tc-crx.c:923 +#: config/tc-crx.c:1714 #, c-format msgid "Missing matching brackets : `%s'" msgstr "Ausenten las llaves coincidentes : «%s»" -#: config/tc-cr16.c:1485 config/tc-crx.c:1000 +#: config/tc-cr16.c:1472 config/tc-crx.c:949 #, c-format msgid "Unknown exception: `%s'" msgstr "Excepción desconocida: «%s»" -#: config/tc-cr16.c:1570 config/tc-crx.c:1096 +#: config/tc-cr16.c:1554 config/tc-crx.c:1045 #, c-format msgid "Illegal `cinv' parameter: `%c'" msgstr "Parámetro `cinv' ilegal: `%c'" -#: config/tc-cr16.c:1591 config/tc-cr16.c:1630 +#: config/tc-cr16.c:1575 config/tc-cr16.c:1614 #, c-format msgid "Unknown register pair: `%d'" msgstr "Par de registro desconocido: '%d'" #. Issue a error message when register pair is illegal. -#: config/tc-cr16.c:1599 +#: config/tc-cr16.c:1583 #, c-format msgid "Illegal register pair (`%s') in Instruction: `%s'" msgstr "Par de registro ilegal («%s») en la Instrucción: «%s»" #. Issue a error message when register pair is illegal. -#: config/tc-cr16.c:1638 +#: config/tc-cr16.c:1622 #, c-format msgid "Illegal index register pair (`%s') in Instruction: `%s'" msgstr "Par de registro de índice ilegal («%s») en la Instrucción: «%s»" -#: config/tc-cr16.c:1677 +#: config/tc-cr16.c:1661 #, c-format msgid "Unknown processor register : `%d'" msgstr "Registro de procesador desconocido: '%d'" #. Issue a error message when register pair is illegal. -#: config/tc-cr16.c:1685 +#: config/tc-cr16.c:1669 #, c-format msgid "Illegal processor register (`%s') in Instruction: `%s'" msgstr "Registro de procesador ilegal («%s») en la Instrucción: «%s»" -#: config/tc-cr16.c:1733 +#: config/tc-cr16.c:1717 #, c-format msgid "Unknown processor register (32 bit) : `%d'" msgstr "Registro de procesador desconocido (32 bit) : '%d'" #. Issue a error message when register pair is illegal. -#: config/tc-cr16.c:1741 +#: config/tc-cr16.c:1725 #, c-format msgid "Illegal 32 bit - processor register (`%s') in Instruction: `%s'" msgstr "Registro de procesador de 32 bit ilegal («%s») en la Instruction: «%s»" -#: config/tc-cr16.c:2107 config/tc-crx.c:1665 config/tc-crx.c:1682 +#: config/tc-cr16.c:2070 config/tc-crx.c:1612 config/tc-crx.c:1629 #, c-format msgid "Same src/dest register is used (`r%d'), result is undefined" msgstr "Se usa el mismo registro fuente/destino (`r%d'), el resultado es indefinido" -#: config/tc-cr16.c:2128 +#: config/tc-cr16.c:2092 msgid "RA register is saved twice." msgstr "El registro RA se guarda dos veces." -#: config/tc-cr16.c:2132 +#: config/tc-cr16.c:2096 #, c-format msgid "`%s' Illegal use of registers." msgstr "«%s» Uso inválido de registros." -#: config/tc-cr16.c:2146 +#: config/tc-cr16.c:2110 #, c-format msgid "`%s' Illegal count-register combination." msgstr "«%s» Combinación de registros-cuenta ilegal." -#: config/tc-cr16.c:2152 +#: config/tc-cr16.c:2116 #, c-format msgid "`%s' Illegal use of register." msgstr "«%s» Uso inválido de registro." -#: config/tc-cr16.c:2161 config/tc-crx.c:1674 +#: config/tc-cr16.c:2125 config/tc-crx.c:1621 #, c-format msgid "`%s' has undefined result" msgstr "«%s» tiene un resultado indefinido" -#: config/tc-cr16.c:2169 +#: config/tc-cr16.c:2133 #, c-format msgid "Same src/dest register is used (`r%d'),result is undefined" msgstr "Se usa el mismo registro fuente/destino (`r%d'), el resultado es indefinido" -#: config/tc-cr16.c:2340 config/tc-crx.c:1579 +#: config/tc-cr16.c:2304 config/tc-crx.c:1527 msgid "Incorrect number of operands" msgstr "Número incorrecto de operandos" -#: config/tc-cr16.c:2342 config/tc-crx.c:1581 +#: config/tc-cr16.c:2306 config/tc-crx.c:1529 #, c-format msgid "Illegal type of operand (arg %d)" msgstr "Tipo de operando ilegal (arg %d)" -#: config/tc-cr16.c:2348 config/tc-crx.c:1587 +#: config/tc-cr16.c:2312 config/tc-crx.c:1535 #, c-format msgid "Operand out of range (arg %d)" -msgstr "Operando fuera de límite (arg %d)" +msgstr "Operando fuera de rango (arg %d)" -#: config/tc-cr16.c:2351 config/tc-crx.c:1590 +#: config/tc-cr16.c:2315 config/tc-crx.c:1538 #, c-format msgid "Operand has odd displacement (arg %d)" msgstr "Operando tiene un desplazamiento impar (arg %d)" -#: config/tc-cr16.c:2354 config/tc-cr16.c:2385 config/tc-crx.c:1603 -#: config/tc-crx.c:1634 +#: config/tc-cr16.c:2318 config/tc-cr16.c:2349 config/tc-crx.c:1553 +#: config/tc-crx.c:1581 #, c-format msgid "Illegal operand (arg %d)" msgstr "Operando ilegal (arg %d)" #. Give an error if a frag containing code is not aligned to a 2-byte #. boundary. -#: config/tc-cr16.c:2487 config/tc-cr16.h:74 config/tc-crx.c:1956 -#: config/tc-crx.h:77 config/tc-ppc.c:3542 config/tc-ppc.c:6500 +#: config/tc-cr16.c:2451 config/tc-cr16.h:74 config/tc-crx.c:1903 +#: config/tc-crx.h:77 msgid "instruction address is not a multiple of 2" msgstr "la instrucción direccional no es un múltiplo de 2" -#: config/tc-cr16.c:2510 config/tc-cris.c:1556 config/tc-cris.c:1564 -#: config/tc-crx.c:1992 config/tc-dlx.c:692 config/tc-hppa.c:3212 -#: config/tc-hppa.c:3219 config/tc-i860.c:490 config/tc-i860.c:507 -#: config/tc-i860.c:987 config/tc-sparc.c:1813 config/tc-sparc.c:1821 +#: config/tc-cr16.c:2474 config/tc-cris.c:1550 config/tc-cris.c:1558 +#: config/tc-crx.c:1939 config/tc-dlx.c:681 config/tc-hppa.c:3206 +#: config/tc-hppa.c:3213 config/tc-sparc.c:1753 config/tc-sparc.c:1761 #, c-format msgid "Unknown opcode: `%s'" msgstr "Código operacional desconocido: «%s»" -#: config/tc-cris.c:550 config/tc-m68hc11.c:3893 +#: config/tc-cris.c:550 config/tc-m68hc11.c:3894 #, c-format msgid "internal inconsistency problem in %s: fr_symbol %lx" msgstr "problema de inconsistencia interna en %s: fr_symbol %lx" -#: config/tc-cris.c:554 config/tc-m68hc11.c:3897 config/tc-msp430.c:4620 +#: config/tc-cris.c:554 config/tc-m68hc11.c:3898 config/tc-msp430.c:4991 #, c-format msgid "internal inconsistency problem in %s: resolved symbol" msgstr "problema de inconsistencia interna en %s: símbolo resuelto" -#: config/tc-cris.c:564 config/tc-m68hc11.c:3903 +#: config/tc-cris.c:564 config/tc-m68hc11.c:3904 #, c-format msgid "internal inconsistency problem in %s: fr_subtype %d" msgstr "problema de inconsistencia interna en %s: fr_subtype %d" @@ -5601,211 +6779,211 @@ msgstr "ubicación de MULS/MULU peligrosa; déles una alineamiento superior" #. $acr", "nop"; but doesn't seem worth it at the moment.) #: config/tc-cris.c:1051 msgid "Out-of-range .word offset handling is not implemented for .arch common_v10_v32" -msgstr "El manejo del desplazamiento .word fuera de límite no está implementado para .arch common_v10_v32" +msgstr "El manejo del desplazamiento .word fuera de rango no está implementado para .arch common_v10_v32" #: config/tc-cris.c:1096 msgid ".word case-table handling failed: table too large" msgstr "Falló el manejo de la distribución de case .word: la distribución es demasiado grande" -#: config/tc-cris.c:1234 +#: config/tc-cris.c:1228 #, c-format msgid "Buggy opcode: `%s' \"%s\"\n" msgstr "Código operacional defectuoso: «%s» «%s»\n" -#: config/tc-cris.c:1662 +#: config/tc-cris.c:1656 #, c-format msgid "Immediate value not in 5 bit unsigned range: %ld" msgstr "El valor inmediato no está en el límite de 5 bit sin signo: %ld" -#: config/tc-cris.c:1678 +#: config/tc-cris.c:1672 #, c-format msgid "Immediate value not in 4 bit unsigned range: %ld" msgstr "El valor inmediato no está en el límite de 4 bit sin signo: %ld" -#: config/tc-cris.c:1730 +#: config/tc-cris.c:1724 #, c-format msgid "Immediate value not in 6 bit range: %ld" msgstr "El valor inmediato no está en el límite de 6 bit: %ld" -#: config/tc-cris.c:1746 +#: config/tc-cris.c:1740 #, c-format msgid "Immediate value not in 6 bit unsigned range: %ld" msgstr "El valor inmediato no está en el límite de 6 bit sin signo: %ld" #. Others have a generic warning. -#: config/tc-cris.c:1855 +#: config/tc-cris.c:1849 #, c-format msgid "Unimplemented register `%s' specified" msgstr "Registro no implementado «%s» especificado" #. We've come to the end of instructions with this #. opcode, so it must be an error. -#: config/tc-cris.c:2099 +#: config/tc-cris.c:2093 msgid "Illegal operands" msgstr "Operandos ilegales" -#: config/tc-cris.c:2140 config/tc-cris.c:2180 +#: config/tc-cris.c:2134 config/tc-cris.c:2174 #, c-format msgid "Immediate value not in 8 bit range: %ld" msgstr "El valor inmediato no está en el límite de 8 bit: %ld" -#: config/tc-cris.c:2150 config/tc-cris.c:2201 +#: config/tc-cris.c:2144 config/tc-cris.c:2195 #, c-format msgid "Immediate value not in 16 bit range: %ld" msgstr "El valor inmediato no está en el límite de 16 bit: %ld" -#: config/tc-cris.c:2185 +#: config/tc-cris.c:2179 #, c-format msgid "Immediate value not in 8 bit signed range: %ld" msgstr "El valor inmediato no está en el límite de 8 bit con signo: %ld" -#: config/tc-cris.c:2190 +#: config/tc-cris.c:2184 #, c-format msgid "Immediate value not in 8 bit unsigned range: %ld" msgstr "El valor inmediato no está en el límite de 8 bit sin signo: %ld" -#: config/tc-cris.c:2206 +#: config/tc-cris.c:2200 #, c-format msgid "Immediate value not in 16 bit signed range: %ld" msgstr "El valor inmediato no está en el límite de 16 bit con signo: %ld" -#: config/tc-cris.c:2211 +#: config/tc-cris.c:2205 #, c-format msgid "Immediate value not in 16 bit unsigned range: %ld" msgstr "El valor inmediato no está en el límite de 16 bit sin signo: %ld" -#: config/tc-cris.c:2237 +#: config/tc-cris.c:2231 msgid "TLS relocation size does not match operand size" msgstr "TLS para tamaño de la reubicación no coincide con el tamaño de operando" -#: config/tc-cris.c:2238 +#: config/tc-cris.c:2232 msgid "PIC relocation size does not match operand size" msgstr "PIC como tamaño reubicado no coincide con el tamaño de operando" -#: config/tc-cris.c:3385 +#: config/tc-cris.c:3379 msgid "Calling gen_cond_branch_32 for .arch common_v10_v32\n" msgstr "Se llama a gen_cond_branch_32 para .arch common_v10_v32\n" -#: config/tc-cris.c:3389 +#: config/tc-cris.c:3383 msgid "32-bit conditional branch generated" msgstr "generada una ramificación condicional de 32-bit" -#: config/tc-cris.c:3450 +#: config/tc-cris.c:3444 msgid "Complex expression not supported" msgstr "No se admiten las expresiones complejas" #. FIXME: Is this function mentioned in the internals.texi manual? If #. not, add it. -#: config/tc-cris.c:3600 +#: config/tc-cris.c:3594 msgid "Bad call to md_atof () - floating point formats are not supported" -msgstr "Llamada equivocada a md_atof () - no se admiten los formatos de coma flotante" +msgstr "Llamada incorrecta a md_atof () - no se admiten los formatos de coma flotante" -#: config/tc-cris.c:3641 +#: config/tc-cris.c:3635 msgid "PC-relative relocation must be trivially resolved" msgstr "Reubicación relativa al PC se debe resolver trivialmente" -#: config/tc-cris.c:3713 +#: config/tc-cris.c:3707 #, c-format msgid "Value not in 16 bit range: %ld" msgstr "El valor no está en el límite de 16 bit: %ld" -#: config/tc-cris.c:3721 +#: config/tc-cris.c:3715 #, c-format msgid "Value not in 16 bit signed range: %ld" msgstr "El valor no está en el límite de 16 bit con signo: %ld" -#: config/tc-cris.c:3729 +#: config/tc-cris.c:3723 #, c-format msgid "Value not in 8 bit range: %ld" msgstr "El valor no está en el límite de 8 bit: %ld" -#: config/tc-cris.c:3736 +#: config/tc-cris.c:3730 #, c-format msgid "Value not in 8 bit signed range: %ld" msgstr "El valor no está en el límite de 8 bit con signo: %ld" -#: config/tc-cris.c:3746 +#: config/tc-cris.c:3740 #, c-format msgid "Value not in 4 bit unsigned range: %ld" msgstr "El valor no está en el límite de 4 bit sin signo: %ld" -#: config/tc-cris.c:3753 +#: config/tc-cris.c:3747 #, c-format msgid "Value not in 5 bit unsigned range: %ld" msgstr "El valor no está en el límite de 5 bit sin signo: %ld" -#: config/tc-cris.c:3760 +#: config/tc-cris.c:3754 #, c-format msgid "Value not in 6 bit range: %ld" msgstr "El valor no está en el límite de 6 bit: %ld" -#: config/tc-cris.c:3767 +#: config/tc-cris.c:3761 #, c-format msgid "Value not in 6 bit unsigned range: %ld" msgstr "El valor no está en el límite de 6 bit sin signo: %ld" -#: config/tc-cris.c:3811 +#: config/tc-cris.c:3805 #, c-format msgid "Please use --help to see usage and options for this assembler.\n" msgstr "Por favor utilice --help para ver el modo de empleo y casillas para este ensamblador.\n" -#: config/tc-cris.c:3823 +#: config/tc-cris.c:3817 msgid "--no-underscore is invalid with a.out format" msgstr "--no-underscore es inválido con el formato a.out" -#: config/tc-cris.c:3835 +#: config/tc-cris.c:3829 msgid "--pic is invalid for this object format" msgstr "--pic es inválido en este formato de objeto" -#: config/tc-cris.c:3849 +#: config/tc-cris.c:3843 #, c-format msgid "invalid <arch> in --march=<arch>: %s" msgstr "arquitectura <arq> en --march=<arq> no válida: %s" -#: config/tc-cris.c:3958 config/tc-ft32.c:689 config/tc-moxie.c:778 +#: config/tc-cris.c:3952 config/tc-ft32.c:688 config/tc-moxie.c:776 msgid "Semantics error. This type of operand can not be relocated, it must be an assembly-time constant" msgstr "Error semántico. Este tipo de operando no se puede reubicar, debe ser una constante en el momento de ensamblado" -#: config/tc-cris.c:4007 config/tc-ft32.c:710 config/tc-moxie.c:826 +#: config/tc-cris.c:4000 config/tc-ft32.c:708 config/tc-moxie.c:824 #, c-format msgid "Cannot generate relocation type for symbol %s, code %s" msgstr "No se puede generar el tipo reubicado para el símbolo %s, código %s" #. The messages are formatted to line up with the generic options. -#: config/tc-cris.c:4020 +#: config/tc-cris.c:4013 #, c-format msgid "CRIS-specific options:\n" msgstr "Opciones específicas de CRIS:\n" -#: config/tc-cris.c:4022 +#: config/tc-cris.c:4015 msgid " -h, -H Don't execute, print this help text. Deprecated.\n" msgstr " -h, -H No ejecutar, escribir este texto de ayuda. Obsoleto.\n" -#: config/tc-cris.c:4024 +#: config/tc-cris.c:4017 msgid " -N Warn when branches are expanded to jumps.\n" msgstr " -N Avisa cuando las ramificaciones se expanden a saltos.\n" -#: config/tc-cris.c:4026 +#: config/tc-cris.c:4019 msgid " --underscore User symbols are normally prepended with underscore.\n" msgstr " --underscore Los símbolos de usuario generalmente se preceden con subrayado.\n" -#: config/tc-cris.c:4028 +#: config/tc-cris.c:4021 msgid " Registers will not need any prefix.\n" msgstr " Los registros no necesitarán ningún prefijo.\n" -#: config/tc-cris.c:4030 +#: config/tc-cris.c:4023 msgid " --no-underscore User symbols do not have any prefix.\n" msgstr " --no-underscore Usuarios de símbolos no tienen ningún prefijo.\n" -#: config/tc-cris.c:4032 +#: config/tc-cris.c:4025 msgid " Registers will require a `$'-prefix.\n" msgstr " Los registros requerirán un prefijo `$'.\n" -#: config/tc-cris.c:4035 +#: config/tc-cris.c:4028 msgid " --pic\t\t\tEnable generation of position-independent code.\n" msgstr " --pic\t\t\tActiva la generación de código independiente de posición.\n" -#: config/tc-cris.c:4038 +#: config/tc-cris.c:4031 msgid "" " --march=<arch>\t\tGenerate code for <arch>. Valid choices for <arch>\n" "\t\t\t\tare v0_v10, v10, v32 and common_v10_v32.\n" @@ -5813,148 +6991,416 @@ msgstr "" " --march=<arq>\t\tGenera código para <arq>. Las casillas válidas para <arq>\n" "\t\t\t\tson v0_v10, v10, v32 y common_v10_v32.\n" -#: config/tc-cris.c:4059 -msgid "Invalid relocation" -msgstr "Reubicación no válida" - -#: config/tc-cris.c:4096 +#: config/tc-cris.c:4080 msgid "Invalid pc-relative relocation" msgstr "Reubicación relativa a pc no válida" -#: config/tc-cris.c:4141 +#: config/tc-cris.c:4125 #, c-format msgid "Adjusted signed .word (%ld) overflows: `switch'-statement too large." msgstr "Signo ajustado .word (%ld) desborda: sentencia `switch' demasiado grande." -#: config/tc-cris.c:4171 +#: config/tc-cris.c:4155 #, c-format msgid ".syntax %s requires command-line option `--underscore'" msgstr ".syntax %s requiere de la opción de línea de mandatos `--underscore'" -#: config/tc-cris.c:4180 +#: config/tc-cris.c:4164 #, c-format msgid ".syntax %s requires command-line option `--no-underscore'" msgstr ".syntax %s requiere de la opción de línea de mandatos `--no-underscore'" -#: config/tc-cris.c:4217 +#: config/tc-cris.c:4201 msgid "Unknown .syntax operand" msgstr "Desconoce operando .syntax" -#: config/tc-cris.c:4227 +#: config/tc-cris.c:4211 msgid "Pseudodirective .file is only valid when generating ELF" msgstr "La pseudodirectiva .file es válida solamente cuando se genera ELF" -#: config/tc-cris.c:4239 +#: config/tc-cris.c:4223 msgid "Pseudodirective .loc is only valid when generating ELF" msgstr "La pseudodirectiva .loc es válida solamente cuando se genera ELF" -#: config/tc-cris.c:4254 +#: config/tc-cris.c:4238 #, c-format msgid "internal inconsistency problem: %s called for %d bytes" msgstr "problema de inconsistencia interna: se llamó %s por %d bytes" -#: config/tc-cris.c:4406 +#: config/tc-cris.c:4390 msgid "unknown operand to .arch" msgstr "operando desconocido para .arch" -#: config/tc-cris.c:4415 +#: config/tc-cris.c:4399 msgid ".arch <arch> requires a matching --march=... option" msgstr ".arch <arq> requiere una coincidencia --march=... opcional" -#: config/tc-crx.c:572 config/tc-crx.c:591 -#, c-format -msgid "Internal error: Can't hash %s: %s" -msgstr "Error interno: No se puede dispersar %s: %s" - -#: config/tc-crx.c:759 config/tc-crx.c:779 config/tc-crx.c:794 +#: config/tc-crx.c:708 config/tc-crx.c:728 config/tc-crx.c:743 #, c-format msgid "Illegal register `%s' in instruction `%s'" msgstr "Registro ilegítimo «%s» en instrucción «%s»" -#: config/tc-crx.c:822 +#: config/tc-crx.c:771 #, c-format msgid "Illegal Scale - `%d'" msgstr "Escala ilegal - '%d'" #. Issue a error message when register is illegal. -#: config/tc-crx.c:1137 +#: config/tc-crx.c:1086 #, c-format msgid "Illegal register (`%s') in instruction: `%s'" msgstr "Registro ilegítimo («%s») en instrucción: «%s»" -#: config/tc-crx.c:1264 +#: config/tc-crx.c:1215 #, c-format msgid "Illegal co-processor register in instruction `%s'" msgstr "Registro co-procesador ilegal en Instrucción `%s'" -#: config/tc-crx.c:1271 +#: config/tc-crx.c:1222 #, c-format msgid "Illegal co-processor special register in instruction `%s'" msgstr "Registro especial de co-procesador ilegal en la Instrucción «%s»" -#: config/tc-crx.c:1593 +#: config/tc-crx.c:1542 #, c-format msgid "Invalid DISPU4 operand value (arg %d)" msgstr "Valor de operando DISPU4 inválido (arg %d)" -#: config/tc-crx.c:1596 +#: config/tc-crx.c:1546 #, c-format msgid "Invalid CST4 operand value (arg %d)" msgstr "Valor de operando CST4 inválido (arg %d)" -#: config/tc-crx.c:1599 +#: config/tc-crx.c:1549 #, c-format msgid "Operand value is not within upper 64 KB (arg %d)" msgstr "El valor de operando no está en los 64 KB superiores (arg %d)" -#: config/tc-crx.c:1736 +#: config/tc-crx.c:1683 msgid "Invalid register in register list" msgstr "Registrador inválido en listado de registro" -#: config/tc-crx.c:1790 +#: config/tc-crx.c:1737 #, c-format msgid "Illegal register `%s' in cop-register list" msgstr "Registro ilegal «%s» en la lista de registros de coprocesador" -#: config/tc-crx.c:1798 +#: config/tc-crx.c:1745 #, c-format msgid "Illegal register `%s' in cop-special-register list" msgstr "Registro ilegal «%s» en la lista especial de registros de coprocesador" -#: config/tc-crx.c:1817 +#: config/tc-crx.c:1764 #, c-format msgid "Illegal register `%s' in user register list" msgstr "Registro ilegal «%s» en la lista de registros de usuario" -#: config/tc-crx.c:1836 +#: config/tc-crx.c:1783 #, c-format msgid "Illegal register `%s' in register list" msgstr "Registro ilegal «%s» en la lista de registros" -#: config/tc-crx.c:1842 +#: config/tc-crx.c:1789 #, c-format msgid "Maximum %d bits may be set in `mask16' operand" msgstr "Se pueden establecer %d bits `mask16' como máximo en operando" -#: config/tc-crx.c:1851 +#: config/tc-crx.c:1798 #, c-format msgid "rest of line ignored; first ignored character is `%c'" msgstr "se descarta el resto de la línea; el primer carácter descartado es `%c'" -#: config/tc-crx.c:1859 +#: config/tc-crx.c:1806 #, c-format msgid "Illegal `mask16' operand, operation is undefined - `%s'" msgstr "Operando `mask16' ilegal, la operación está indefinida - «%s»" #. HI can't be specified without LO (and vise-versa). -#: config/tc-crx.c:1865 +#: config/tc-crx.c:1812 msgid "HI/LO registers should be specified together" msgstr "Los registros HI/LO se deben especificar juntos" -#: config/tc-crx.c:1871 +#: config/tc-crx.c:1818 msgid "HI/LO registers should be specified without additional registers" msgstr "Los registros HI/LO se deben especificar sin registros adicionales" +#. Variable not in small data read only segment accessed +#. using small data read only anchor. +#: config/tc-csky.c:1149 config/tc-mcore.c:1927 config/tc-microblaze.c:2054 +#: config/tc-microblaze.c:2358 config/tc-microblaze.c:2381 +msgid "unknown" +msgstr "desconocido" + +#: config/tc-csky.c:1151 +#, fuzzy, c-format +#| msgid "pcrel for branch to %s too far (0x%lx)" +msgid "pcrel offset for branch to %s too far (0x%lx)" +msgstr "el pcrel para ramificar a %s muy lejos (0x%lx)" + +#: config/tc-csky.c:1235 +#, fuzzy, c-format +#| msgid "unknown architecture `%s'\n" +msgid "unknown architecture `%s'" +msgstr "desconoce arquitectura «%s» \n" + +#: config/tc-csky.c:1408 +#, fuzzy, c-format +#| msgid "wasm32 assembler options:\n" +msgid "C-SKY assembler options:\n" +msgstr "opciones ensamblador wasm32:\n" + +#: config/tc-csky.c:1410 +#, fuzzy, c-format +#| msgid " -march=ARCH enable instructions from architecture ARCH\n" +msgid " -march=ARCH\t\t\tselect architecture ARCH:" +msgstr " -march=ARQ permite instrucciones para la arquitectura ARQ\n" + +#: config/tc-csky.c:1429 +#, c-format +msgid " -mcpu=CPU\t\t\tselect processor CPU:" +msgstr "" + +#: config/tc-csky.c:1456 +#, c-format +msgid " -mfloat-abi=ABI\t\tselect float ABI:" +msgstr "" + +#: config/tc-csky.c:1475 +#, fuzzy, c-format +#| msgid " -mlittle-endian generate little-endian code\n" +msgid " -EL -mlittle-endian\t\tgenerate little-endian output\n" +msgstr " -mlittle-endian genera código little-endian\n" + +#: config/tc-csky.c:1477 +#, fuzzy, c-format +#| msgid " -mbig-endian generate big-endian code\n" +msgid " -EB -mbig-endian\t\tgenerate big-endian output\n" +msgstr " -mbig-endian genera código big-endian\n" + +#: config/tc-csky.c:1479 +#, fuzzy, c-format +#| msgid " --pic\t\t\tEnable generation of position-independent code.\n" +msgid " -fpic -pic\t\t\tgenerate position-independent code\n" +msgstr " --pic\t\t\tActiva la generación de código independiente de posición.\n" + +#: config/tc-csky.c:1482 +#, c-format +msgid " -mljump\t\t\ttransform jbf, jbt, jbr to jmpi (CK800 only)\n" +msgstr "" + +#: config/tc-csky.c:1484 +#, c-format +msgid " -mno-ljump\n" +msgstr "" + +#: config/tc-csky.c:1488 +#, c-format +msgid " -mbranch-stub\t\t\tenable branch stubs for PC-relative calls\n" +msgstr "" + +#: config/tc-csky.c:1490 +#, c-format +msgid " -mno-branch-stub\n" +msgstr "" + +#: config/tc-csky.c:1494 +#, c-format +msgid " -force2bsr -mforce2bsr\ttransform jbsr to bsr\n" +msgstr "" + +#: config/tc-csky.c:1496 +#, c-format +msgid " -no-force2bsr -mno-force2bsr\n" +msgstr "" + +#: config/tc-csky.c:1498 +#, c-format +msgid " -jsri2bsr -mjsri2bsr\t\ttransform jsri to bsr\n" +msgstr "" + +#: config/tc-csky.c:1500 +#, c-format +msgid " -no-jsri2bsr -mno-jsri2bsr\n" +msgstr "" + +#: config/tc-csky.c:1503 +#, c-format +msgid " -mnolrw -mno-lrw\t\timplement lrw as movih + ori\n" +msgstr "" + +#: config/tc-csky.c:1505 +#, c-format +msgid " -melrw\t\t\tenable extended lrw (CK800 only)\n" +msgstr "" + +#: config/tc-csky.c:1507 +#, c-format +msgid " -mno-elrw\n" +msgstr "" + +#: config/tc-csky.c:1510 +#, c-format +msgid " -mlaf -mliterals-after-func\temit literals after each function\n" +msgstr "" + +#: config/tc-csky.c:1512 +#, c-format +msgid " -mno-laf -mno-literals-after-func\n" +msgstr "" + +#: config/tc-csky.c:1514 +#, c-format +msgid " -mlabr -mliterals-after-br\temit literals after branch instructions\n" +msgstr "" + +#: config/tc-csky.c:1516 +#, c-format +msgid " -mno-labr -mnoliterals-after-br\n" +msgstr "" + +#: config/tc-csky.c:1519 +#, c-format +msgid " -mistack\t\t\tenable interrupt stack instructions\n" +msgstr "" + +#: config/tc-csky.c:1521 +#, c-format +msgid " -mno-istack\n" +msgstr "" + +#: config/tc-csky.c:1524 +#, fuzzy, c-format +#| msgid " -mno-stld23\t\t disable st/ld offset23 instruction\n" +msgid " -mhard-float\t\t\tenable hard float instructions\n" +msgstr " -mno-stld23\t\t desactiva la instrucción desplazamiento st/ld offset23\n" + +#: config/tc-csky.c:1526 +#, c-format +msgid " -mmp\t\t\t\tenable multiprocessor instructions\n" +msgstr "" + +#: config/tc-csky.c:1528 +#, fuzzy, c-format +#| msgid "Illegal co-processor register in instruction `%s'" +msgid " -mcp\t\t\t\tenable coprocessor instructions\n" +msgstr "Registro co-procesador ilegal en Instrucción `%s'" + +#: config/tc-csky.c:1530 +#, c-format +msgid " -mcache\t\t\tenable cache prefetch instruction\n" +msgstr "" + +#: config/tc-csky.c:1532 +#, fuzzy, c-format +#| msgid " -mno-stld23\t\t disable st/ld offset23 instruction\n" +msgid " -msecurity\t\t\tenable security instructions\n" +msgstr " -mno-stld23\t\t desactiva la instrucción desplazamiento st/ld offset23\n" + +#: config/tc-csky.c:1534 +#, fuzzy, c-format +#| msgid " -mno-stld23\t\t disable st/ld offset23 instruction\n" +msgid " -mtrust\t\t\tenable trust instructions\n" +msgstr " -mno-stld23\t\t desactiva la instrucción desplazamiento st/ld offset23\n" + +#: config/tc-csky.c:1536 +#, c-format +msgid " -mdsp\t\t\t\tenable DSP instructions\n" +msgstr "" + +#: config/tc-csky.c:1538 +#, c-format +msgid " -medsp\t\t\tenable enhanced DSP instructions\n" +msgstr "" + +#: config/tc-csky.c:1540 +#, fuzzy, c-format +#| msgid "unable to widen instruction" +msgid " -mvdsp\t\t\tenable vector DSP instructions\n" +msgstr "incapaz de extender instrucción" + +#: config/tc-csky.c:1773 +msgid "C-SKY ABI v1 (ck510/ck610) does not support -mbranch-stub" +msgstr "" + +#: config/tc-csky.c:1778 +msgid "-mno-force2bsr is ignored with -mbranch-stub" +msgstr "" + +#: config/tc-csky.c:1786 +msgid "-mno-force2bsr is ignored for ck801/ck802" +msgstr "" + +#: config/tc-csky.c:1813 +msgid "-mljump is ignored for ck801/ck802" +msgstr "" + +#: config/tc-csky.c:2095 config/tc-mcore.c:689 +msgid "more than 65K literal pools" +msgstr "más de 65K de conjuntos literales" + +#: config/tc-csky.c:2342 read.c:3786 +#, c-format +msgid "bad floating literal: %s" +msgstr "literal de coma flotante incorrecta: %s" + +#: config/tc-csky.c:2490 config/tc-mcore.c:743 +msgid "missing ']'" +msgstr "ausente ']'" + +#: config/tc-csky.c:2518 config/tc-mips.c:14358 config/tc-mips.c:14422 +#: config/tc-mips.c:14433 config/tc-score.c:2688 config/tc-score.c:2735 +msgid "unrecognized opcode" +msgstr "no reconocido código operacional" + +#: config/tc-csky.c:3653 config/tc-mcore.c:1164 +msgid "translating mgeni to movi" +msgstr "se traslada ‘mgeni’ a ‘movi’" + +#: config/tc-csky.c:5301 config/tc-tilegx.c:1451 config/tc-tilepro.c:1310 +#, c-format +msgid "unsupported BFD relocation size %d" +msgstr "no se admite el tamaño de reubicación BFD %d" + +#: config/tc-csky.c:5924 +#, fuzzy +#| msgid "second operand must be 1" +msgid "second operand must be 4" +msgstr "el segundo operando debe ser 1" + +#: config/tc-csky.c:5948 config/tc-mcore.c:1527 +msgid "second operand must be 1" +msgstr "el segundo operando debe ser 1" + +#: config/tc-csky.c:6021 config/tc-xtensa.c:1988 +msgid "register number out of range" +msgstr "número de registro fuera de rango" + +#: config/tc-csky.c:6031 +#, fuzzy +#| msgid "first transfer register must be even" +msgid "64-bit operator src/dst register must be less than 15" +msgstr "primer registro de transferencia debe ser par" + +#: config/tc-csky.c:7858 +#, fuzzy +#| msgid "the first operand of `%s' must be `%s%s'" +msgid "the first operand must be a symbol" +msgstr "el primer operando de `%s' debe ser `%s%s'" + +#: config/tc-csky.c:7867 +#, fuzzy +#| msgid "missing size" +msgid "missing stack size" +msgstr "ausente el tamaño" + +#: config/tc-csky.c:7880 config/tc-score.c:4240 +msgid "value not in range [0, 0xffffffff]" +msgstr "el valor no está en el límite [0, 0xffffffff]" + +#: config/tc-csky.c:7890 config/tc-mcore.c:782 +msgid "operand must be a constant" +msgstr "operando debe ser una constante" + #: config/tc-d10v.c:216 #, c-format msgid "" @@ -5976,134 +7422,135 @@ msgstr "" msgid "operand is not an immediate" msgstr "operando no es un inmediato" -#: config/tc-d10v.c:591 +#: config/tc-d10v.c:590 #, c-format msgid "operand out of range: %lu" -msgstr "operando fuera de límite: %lu" +msgstr "operando fuera de rango: %lu" -#: config/tc-d10v.c:651 +#: config/tc-d10v.c:650 msgid "Instruction must be executed in parallel with another instruction." msgstr "La instrucción se debe ejecutar en paralelo con otra instrucción." -#: config/tc-d10v.c:705 config/tc-d10v.c:713 +#: config/tc-d10v.c:704 config/tc-d10v.c:712 #, c-format msgid "packing conflict: %s must dispatch sequentially" msgstr "conflicto de empaquetado: %s debe despachar secuencialmente" -#: config/tc-d10v.c:812 +#: config/tc-d10v.c:811 #, c-format msgid "resource conflict (R%d)" msgstr "conflicto de recurso (R%d)" -#: config/tc-d10v.c:815 +#: config/tc-d10v.c:814 #, c-format msgid "resource conflict (A%d)" msgstr "conflicto de recurso (A%d)" -#: config/tc-d10v.c:817 +#: config/tc-d10v.c:816 msgid "resource conflict (PSW)" msgstr "conflicto de recurso (PSW)" -#: config/tc-d10v.c:819 +#: config/tc-d10v.c:818 msgid "resource conflict (C flag)" msgstr "conflicto de recurso (opción C)" -#: config/tc-d10v.c:821 +#: config/tc-d10v.c:820 msgid "resource conflict (F flag)" msgstr "conflicto de recurso (opción F)" -#: config/tc-d10v.c:971 +#: config/tc-d10v.c:970 msgid "Instruction must be executed in parallel" msgstr "La instrucción se debe ejecutar en paralelo" -#: config/tc-d10v.c:974 +#: config/tc-d10v.c:973 msgid "Long instructions may not be combined." msgstr "Las instrucciones long no se pueden combinar." -#: config/tc-d10v.c:1007 +#: config/tc-d10v.c:1006 msgid "One of these instructions may not be executed in parallel." msgstr "Una de estas instrucciones no se puede ejecutar en paralelo." -#: config/tc-d10v.c:1011 config/tc-d30v.c:1037 +#: config/tc-d10v.c:1010 config/tc-d30v.c:1034 msgid "Two IU instructions may not be executed in parallel" msgstr "Dos instrucciones IU no se pueden ejecutar en paralelo" -#: config/tc-d10v.c:1013 config/tc-d10v.c:1021 config/tc-d10v.c:1035 -#: config/tc-d10v.c:1050 config/tc-d30v.c:1038 config/tc-d30v.c:1047 +#: config/tc-d10v.c:1012 config/tc-d10v.c:1020 config/tc-d10v.c:1034 +#: config/tc-d10v.c:1049 config/tc-d30v.c:1035 config/tc-d30v.c:1044 msgid "Swapping instruction order" msgstr "Se intercambia el orden de la instrucción" -#: config/tc-d10v.c:1019 config/tc-d30v.c:1044 +#: config/tc-d10v.c:1018 config/tc-d30v.c:1041 msgid "Two MU instructions may not be executed in parallel" msgstr "Dos instrucciones MU no se pueden ejecutar en paralelo" -#: config/tc-d10v.c:1039 config/tc-d30v.c:1064 +#: config/tc-d10v.c:1038 config/tc-d30v.c:1061 msgid "IU instruction may not be in the left container" msgstr "Una instrucción IU no puede estar en el contenedor izquierdo" # Parece que R es 'right' y L es 'left'. Revisar el código para comprobar # y mejorar esta traducción. cfuga -#: config/tc-d10v.c:1041 config/tc-d10v.c:1056 +#: config/tc-d10v.c:1040 config/tc-d10v.c:1055 msgid "Instruction in R container is squashed by flow control instruction in L container." msgstr "La instrucción en el contenedor R es aplastada por la instrucción de control de flujo en el contenedor L." -#: config/tc-d10v.c:1054 config/tc-d30v.c:1075 +#: config/tc-d10v.c:1053 config/tc-d30v.c:1072 msgid "MU instruction may not be in the right container" msgstr "Una instrucción MU no puede estar en el contenedor derecho" -#: config/tc-d10v.c:1060 config/tc-d30v.c:1087 +#: config/tc-d10v.c:1059 config/tc-d30v.c:1084 msgid "unknown execution type passed to write_2_short()" msgstr "se pasó un tipo de ejecución desconocido a write_2_short()" -#: config/tc-d10v.c:1189 config/tc-d10v.c:1362 +#: config/tc-d10v.c:1188 config/tc-d10v.c:1361 msgid "bad opcode or operands" -msgstr "código operacional u operandos equivocados" +msgstr "código operacional u operandos incorrectos" -#: config/tc-d10v.c:1264 +#: config/tc-d10v.c:1263 msgid "value out of range" -msgstr "valor fuera de límite" +msgstr "valor fuera de rango" -#: config/tc-d10v.c:1338 +#: config/tc-d10v.c:1337 msgid "illegal operand - register name found where none expected" msgstr "operando ilegal - se encontró un nombre de registro donde no se esperaba ninguno" -#: config/tc-d10v.c:1373 +#: config/tc-d10v.c:1372 msgid "Register number must be EVEN" msgstr "El número de registro debe ser PAR" -#: config/tc-d10v.c:1376 +#: config/tc-d10v.c:1375 msgid "Unsupported use of sp" msgstr "No se admite el uso de sp" -#: config/tc-d10v.c:1395 -#, c-format -msgid "cr%ld is a reserved control register" +#: config/tc-d10v.c:1394 +#, fuzzy, c-format +#| msgid "cr%ld is a reserved control register" +msgid "cr%d is a reserved control register" msgstr "cr%ld es un registro de control reservado" -#: config/tc-d10v.c:1570 +#: config/tc-d10v.c:1569 #, c-format msgid "line %d: rep or repi must include at least 4 instructions" msgstr "línea %d: rep o repi debe incluir por lo menos 4 instrucciones" -#: config/tc-d10v.c:1759 +#: config/tc-d10v.c:1761 msgid "can't find previous opcode " msgstr "no se puede encontrar el código operacional previo " -#: config/tc-d10v.c:1771 +#: config/tc-d10v.c:1773 #, c-format msgid "could not assemble: %s" msgstr "no se puede ensamblar: %s" -#: config/tc-d10v.c:1786 config/tc-d10v.c:1808 config/tc-d30v.c:1744 +#: config/tc-d10v.c:1788 config/tc-d10v.c:1810 config/tc-d30v.c:1741 msgid "Unable to mix instructions as specified" msgstr "No se pueden mezclar las instrucciones como se especificó" -#: config/tc-d30v.c:149 +#: config/tc-d30v.c:146 #, c-format msgid "Register name %s conflicts with symbol of the same name" msgstr "El nombre de registro %s tiene conflictos con el símbolo del mismo nombre" -#: config/tc-d30v.c:239 +#: config/tc-d30v.c:236 #, c-format msgid "" "\n" @@ -6122,131 +7569,106 @@ msgstr "" "-c Avisa sobre los símbolos cuyos nombres coincidan con nombres de registros.\n" "-C Lo opuesto de -C. -c es por defecto.\n" -#: config/tc-d30v.c:367 +#: config/tc-d30v.c:364 msgid "unexpected 12-bit reloc type" msgstr "tipo reubicado de 12-bit inesperado" -#: config/tc-d30v.c:374 +#: config/tc-d30v.c:371 msgid "unexpected 18-bit reloc type" msgstr "tipo reubicado de 18-bit inesperado" -#: config/tc-d30v.c:625 +#: config/tc-d30v.c:622 #, c-format msgid "%s NOP inserted" msgstr "%s NOP insertados" -#: config/tc-d30v.c:626 +#: config/tc-d30v.c:623 msgid "sequential" msgstr "secuencial" -#: config/tc-d30v.c:626 +#: config/tc-d30v.c:623 msgid "parallel" msgstr "paralelo" -#: config/tc-d30v.c:1033 +#: config/tc-d30v.c:1030 msgid "Instructions may not be executed in parallel" msgstr "Las instrucciones no se pueden ejecutar en paralelo" -#: config/tc-d30v.c:1046 +#: config/tc-d30v.c:1043 #, c-format msgid "Executing %s in IU may not work" msgstr "Ejecutar %s en IU podría no funcionar" -#: config/tc-d30v.c:1053 +#: config/tc-d30v.c:1050 #, c-format msgid "Executing %s in IU may not work in parallel execution" msgstr "Ejecutar %s en IU podría no funcionar en ejecución paralela" -#: config/tc-d30v.c:1066 +#: config/tc-d30v.c:1063 #, c-format msgid "special left instruction `%s' kills instruction `%s' in right container" msgstr "la instrucción especial izquierda «%s» mata a la instrucción «%s» en el contenedor derecho" -#: config/tc-d30v.c:1077 +#: config/tc-d30v.c:1074 #, c-format msgid "Executing %s in reverse serial with %s may not work" msgstr "Ejecutar %s en serie reversa con %s podría no funcionar" -#: config/tc-d30v.c:1080 +#: config/tc-d30v.c:1077 #, c-format msgid "Executing %s in IU in reverse serial may not work" msgstr "Ejecutar %s en IU en serie reversa podría no funcionar" -#: config/tc-d30v.c:1268 +#: config/tc-d30v.c:1265 msgid "Odd numbered register used as target of multi-register instruction" msgstr "Se usan registros numerados impares como objetivo para una instrucción multi-registro" -#: config/tc-d30v.c:1332 config/tc-d30v.c:1368 +#: config/tc-d30v.c:1329 config/tc-d30v.c:1365 #, c-format msgid "unknown condition code: %s" msgstr "desconoce código condicional: %s" -#: config/tc-d30v.c:1361 +#: config/tc-d30v.c:1358 #, c-format msgid "cmpu doesn't support condition code %s" msgstr "cmpu no admite el código de condición %s" -#: config/tc-d30v.c:1396 +#: config/tc-d30v.c:1393 #, c-format msgid "unknown opcode: %s" msgstr "desconoce código operacional: %s" -#: config/tc-d30v.c:1407 +#: config/tc-d30v.c:1404 #, c-format msgid "operands for opcode `%s' do not match any valid format" msgstr "los operandos para el código operacional «%s» no coincide con ningún formato válido" -#: config/tc-d30v.c:1622 config/tc-d30v.c:1639 +#: config/tc-d30v.c:1619 config/tc-d30v.c:1636 msgid "Cannot assemble instruction" msgstr "No se puede ensamblar la instrucción" -#: config/tc-d30v.c:1624 +#: config/tc-d30v.c:1621 msgid "First opcode is long. Unable to mix instructions as specified." msgstr "El primer código operacional es long. No se pueden mezclar las instrucciones como se especificó." -#: config/tc-d30v.c:1694 +#: config/tc-d30v.c:1691 msgid "word of NOPs added between word multiply and load" msgstr "word de NOPs agregados entre multiply de word y load" -#: config/tc-d30v.c:1696 +#: config/tc-d30v.c:1693 msgid "word of NOPs added between word multiply and 16-bit multiply" msgstr "word de NOPs agregados entre multiply de word y multiply de 16-bit" -#: config/tc-d30v.c:1728 +#: config/tc-d30v.c:1725 msgid "Instruction uses long version, so it cannot be mixed as specified" msgstr "La instrucción usa una versión long, así que no se puede mezclar como se especificó" -#: config/tc-d30v.c:1855 +#: config/tc-d30v.c:1852 #, c-format msgid "value too large to fit in %d bits" msgstr "valor demasiado grande para caber en %d bits" -#: config/tc-d30v.c:1923 -#, c-format -msgid "line %d: unable to place address of symbol '%s' into a byte" -msgstr "línea %d: no se puede colocar la dirección del símbolo «%s» en un byte" - -#: config/tc-d30v.c:1926 -#, c-format -msgid "line %d: unable to place value %lx into a byte" -msgstr "línea %d: no se puede colocar el valor %lx en un byte" - -#: config/tc-d30v.c:1934 -#, c-format -msgid "line %d: unable to place address of symbol '%s' into a short" -msgstr "línea %d: no se puede colocar la dirección del símbolo «%s» en un short" - -#: config/tc-d30v.c:1937 -#, c-format -msgid "line %d: unable to place value %lx into a short" -msgstr "línea %d: no se puede colocar el valor %lx en un short" - -#: config/tc-d30v.c:1945 -#, c-format -msgid "line %d: unable to place address of symbol '%s' into a quad" -msgstr "línea %d: no se puede colocar la dirección del símbolo «%s» en un quad" - -#: config/tc-d30v.c:2053 config/tc-pru.c:216 config/tc-pru.c:332 +#: config/tc-d30v.c:2030 config/tc-pru.c:216 config/tc-pru.c:332 #, c-format msgid "Alignment too large: %d assumed" msgstr "Alineación demasiado grande: se asume %d" @@ -6259,89 +7681,74 @@ msgstr "ausente .proc" msgid ".endfunc missing for previous .proc" msgstr "ausente .endfunc para el .proc previo" -#: config/tc-dlx.c:295 config/tc-i860.c:226 config/tc-mips.c:3600 -#: config/tc-nios2.c:3639 config/tc-nios2.c:3653 config/tc-nios2.c:3668 -#: config/tc-pru.c:1565 config/tc-pru.c:1579 config/tc-riscv.c:621 -#, c-format -msgid "internal error: can't hash `%s': %s\n" -msgstr "error interno: no se puede dispersar «%s»: %s\n" - -#. Probably a memory allocation problem? Give up now. -#: config/tc-dlx.c:302 config/tc-hppa.c:8270 config/tc-nios2.c:1440 -#: config/tc-nios2.c:3642 config/tc-nios2.c:3656 config/tc-nios2.c:3671 -#: config/tc-pru.c:1568 config/tc-pru.c:1582 config/tc-riscv.c:624 -#: config/tc-riscv.c:632 config/tc-sparc.c:1064 -msgid "Broken assembler. No assembly attempted." -msgstr "Ensamblador descompuesto. No se intentó ensamblar." - -#: config/tc-dlx.c:332 +#: config/tc-dlx.c:320 #, c-format msgid "Bad operand for a load instruction: <%s>" -msgstr "Operando equivocado para una instrucción load <%s>" +msgstr "Operando incorrecto para una instrucción load <%s>" -#: config/tc-dlx.c:446 +#: config/tc-dlx.c:434 #, c-format msgid "Bad operand for a store instruction: <%s>" -msgstr "Operando equivocado para una instrucción store <%s>" +msgstr "Operando incorrecto para una instrucción store <%s>" -#: config/tc-dlx.c:626 +#: config/tc-dlx.c:614 #, c-format msgid "Expression Error for operand modifier %%hi/%%lo\n" msgstr "Error de Expresión para el modificador de operando %%hi/%%lo\n" -#: config/tc-dlx.c:639 +#: config/tc-dlx.c:627 #, c-format msgid "Invalid expression after %%%%\n" msgstr "Expresión no válida tras %%%%\n" -#: config/tc-dlx.c:703 config/tc-tic4x.c:2473 +#: config/tc-dlx.c:692 config/tc-tic4x.c:2456 #, c-format msgid "Unknown opcode `%s'." msgstr "Desconoce código operacional «%s»." -#: config/tc-dlx.c:712 +#: config/tc-dlx.c:701 msgid "Can not set dlx_skip_hi16_flag" msgstr "No se puede establecer dlx_skip_hi16_flag" -#: config/tc-dlx.c:726 +#: config/tc-dlx.c:715 #, c-format msgid "Missing arguments for opcode <%s>." msgstr "Ausentes argumentos para el código operacional <%s>." -#: config/tc-dlx.c:760 +#: config/tc-dlx.c:749 #, c-format msgid "Too many operands: %s" msgstr "Demasiados operandos: %s" -#: config/tc-dlx.c:798 +#: config/tc-dlx.c:787 #, c-format msgid "Both the_insn.HI and the_insn.LO are set : %s" msgstr "Tanto the_insn.HI como the_insn.LO están activados: %s" -#: config/tc-dlx.c:868 +#: config/tc-dlx.c:857 msgid "failed regnum sanity check." -msgstr "falló la prueba de sanidad regnum." +msgstr "inspección sanitaria de regnum ha fallado." -#: config/tc-dlx.c:881 +#: config/tc-dlx.c:870 msgid "failed general register sanity check." -msgstr "falló la prueba de sanidad de registro general." +msgstr "la inspección sanitara de registros generales ha fallado." #. Types or values of args don't match. -#: config/tc-dlx.c:889 +#: config/tc-dlx.c:878 msgid "Invalid operands" msgstr "Operandos inválidos" -#: config/tc-dlx.c:1118 +#: config/tc-dlx.c:1097 #, c-format msgid "label \"$%d\" redefined" msgstr "etiqueta \"$%d\" redefinida" -#: config/tc-dlx.c:1156 +#: config/tc-dlx.c:1135 msgid "Invalid expression after # number\n" msgstr "Expresión no válida tras # número\n" -#: config/tc-dlx.c:1199 config/tc-i960.c:2637 config/tc-m32r.c:2276 -#: config/tc-nds32.c:6639 config/tc-sparc.c:4124 +#: config/tc-dlx.c:1180 config/tc-m32r.c:2273 config/tc-nds32.c:7840 +#: config/tc-sparc.c:4015 #, c-format msgid "internal error: can't export reloc type %d (`%s')" msgstr "error interno: no se puede exportar el tipo reubicado %d («%s»)" @@ -6351,32 +7758,28 @@ msgstr "error interno: no se puede exportar el tipo reubicado %d («%s»)" msgid "EPIPHANY specific command line options:\n" msgstr "Opciones de la línea de mandatos específicas de EPIPHANY:\n" -#: config/tc-epiphany.c:365 +#: config/tc-epiphany.c:367 msgid "register number too large for push/pop" msgstr "número de registro demasiado grande para push/pop" -#: config/tc-epiphany.c:369 +#: config/tc-epiphany.c:371 msgid "register is out of order" msgstr "el registro está fuera de orden" -#: config/tc-epiphany.c:380 config/tc-m68k.c:6033 config/tc-m68k.c:6062 -msgid "bad register list" -msgstr "lista de registros equivocada" - -#: config/tc-epiphany.c:383 +#: config/tc-epiphany.c:385 msgid "malformed reglist in push/pop" msgstr "lista de registros malformada en push/pop" #. 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 "el registro de destino se modificó por la dirección de desplazamiento-post-modificada" -#: config/tc-epiphany.c:430 +#: config/tc-epiphany.c:432 msgid "ldrd/strd requires even:odd register pair" msgstr "ldrd/strd requiere un par de registros par:impar" -#: config/tc-epiphany.c:813 config/tc-m32r.c:1784 +#: config/tc-epiphany.c:820 config/tc-m32r.c:1785 msgid "Addend to unresolved symbol not on word boundary." msgstr "La adición para un símbolo sin resolver no está en un límite de word." @@ -6408,7 +7811,7 @@ msgstr "-G n Coloca datos ≤ n bytes en el área de datos small\n" #: config/tc-frv.c:458 #, c-format msgid "-mgpr-32 Mark generated file as only using 32 GPRs\n" -msgstr "-mgpr-32 Marca el fichero generado para sólo usar 32 GPRs\n" +msgstr "-mgpr-32 Marca el fichero generado para solo usar 32 GPRs\n" #: config/tc-frv.c:459 #, c-format @@ -6418,7 +7821,7 @@ msgstr "-mgpr-64 Marca el fichero generado para usar todos los 64 GPRs\n" #: config/tc-frv.c:460 #, c-format msgid "-mfpr-32 Mark generated file as only using 32 FPRs\n" -msgstr "-mfpr-32 Marca el fichero generado para sólo usar 32 FPRs\n" +msgstr "-mfpr-32 Marca el fichero generado para solo usar 32 FPRs\n" #: config/tc-frv.c:461 #, c-format @@ -6527,16 +7930,16 @@ msgstr "Violación de restricción de empaquetado VLIW" msgid "Relocation %s is not safe for %s" msgstr "La reubicación %s no es segura para %s" -#: config/tc-ft32.c:146 config/tc-moxie.c:104 +#: config/tc-ft32.c:146 config/tc-moxie.c:102 msgid "expecting register" msgstr "se espera un registro" -#: config/tc-ft32.c:167 config/tc-ft32.c:183 config/tc-moxie.c:123 -#: config/tc-moxie.c:139 +#: config/tc-ft32.c:167 config/tc-ft32.c:183 config/tc-moxie.c:121 +#: config/tc-moxie.c:137 msgid "illegal register number" msgstr "número de registro ilegal" -#: config/tc-ft32.c:239 config/tc-moxie.c:188 config/tc-pj.c:260 +#: config/tc-ft32.c:239 config/tc-moxie.c:186 config/tc-pj.c:260 #, c-format msgid "unknown opcode %s" msgstr "desconoce código operacional %s" @@ -6554,18 +7957,17 @@ msgstr "error interno en interpretación argumental" msgid "expected comma separator" msgstr "esperaba separador de coma" -#: config/tc-ft32.c:412 config/tc-moxie.c:232 config/tc-moxie.c:292 -#: config/tc-moxie.c:304 config/tc-moxie.c:337 config/tc-moxie.c:369 -#: config/tc-moxie.c:402 config/tc-moxie.c:456 config/tc-moxie.c:510 -#: config/tc-moxie.c:520 config/tc-moxie.c:543 config/tc-moxie.c:556 +#: config/tc-ft32.c:412 config/tc-moxie.c:230 config/tc-moxie.c:290 +#: config/tc-moxie.c:302 config/tc-moxie.c:335 config/tc-moxie.c:367 +#: config/tc-moxie.c:400 config/tc-moxie.c:454 config/tc-moxie.c:508 +#: config/tc-moxie.c:518 config/tc-moxie.c:541 config/tc-moxie.c:554 #: config/tc-pj.c:308 msgid "extra stuff on line ignored" msgstr "se descarta los elementos extra en la línea" -#: config/tc-ft32.c:472 config/tc-lm32.c:236 config/tc-moxie.c:587 -#: config/tc-nios2.c:284 +#: config/tc-ft32.c:472 config/tc-lm32.c:236 config/tc-moxie.c:585 msgid "bad call to md_atof" -msgstr "llamada equivocada a md_atof" +msgstr "llamada incorrecta a md_atof" #: config/tc-ft32.c:522 #, c-format @@ -6593,166 +7995,165 @@ msgstr "tamaño estimado\n" msgid "convert_frag\n" msgstr "convert_frag\n" -#: config/tc-h8300.c:178 +#: config/tc-h8300.c:176 #, c-format msgid "new section '%s' defined without attributes - this might cause problems" msgstr "se definió la sección nueva «%s» sin atributos - esto podría causar problemas" -#: config/tc-h8300.c:448 config/tc-h8300.c:456 +#: config/tc-h8300.c:441 config/tc-h8300.c:449 msgid "Reg not valid for H8/300" msgstr "El registro no es válido para H8/300" -#: config/tc-h8300.c:537 +#: config/tc-h8300.c:530 msgid "invalid operand size requested" msgstr "se solicitó un tamaño de operando inválido" -#: config/tc-h8300.c:642 +#: config/tc-h8300.c:635 msgid "Invalid register list for ldm/stm\n" msgstr "Lista de registros no válida para ldm/stm\n" -#: config/tc-h8300.c:668 config/tc-h8300.c:673 config/tc-h8300.c:680 +#: config/tc-h8300.c:661 config/tc-h8300.c:666 config/tc-h8300.c:673 msgid "mismatch between register and suffix" msgstr "no hay coincidencia entre el registro y el sufijo" -#: config/tc-h8300.c:685 +#: config/tc-h8300.c:678 msgid "invalid suffix after register." msgstr "sufijo inválido tras registro." -#: config/tc-h8300.c:707 +#: config/tc-h8300.c:700 msgid "address too high for vector table jmp/jsr" -msgstr "dirección demasiado alta para distribuciones vectoriales jmp/jsr" +msgstr "dirección demasiado alta para distribuciones de vectores jmp/jsr" -#: config/tc-h8300.c:734 config/tc-h8300.c:846 config/tc-h8300.c:856 +#: config/tc-h8300.c:727 config/tc-h8300.c:839 config/tc-h8300.c:849 msgid "Wrong size pointer register for architecture." -msgstr "Tamaño de registro puntero equivocado para la arquitectura." +msgstr "Tamaño de registro puntero incorrecto para la arquitectura." -#: config/tc-h8300.c:793 config/tc-h8300.c:801 config/tc-h8300.c:830 +#: config/tc-h8300.c:786 config/tc-h8300.c:794 config/tc-h8300.c:823 msgid "expected @(exp, reg16)" msgstr "se esperaba @(exp, reg16)" -#: config/tc-h8300.c:819 +#: config/tc-h8300.c:812 msgid "expected .L, .W or .B for register in indexed addressing mode" -msgstr "se esperaba .L, .W ó .B para el registro en modo de direccionamiento indizado" +msgstr "se esperaba .L, .W ó .B para el registro en modo de direccionamiento indexado" -#: config/tc-h8300.c:1013 +#: config/tc-h8300.c:1006 msgid "expected valid addressing mode for mova: \"@(disp, ea.sz),ERn\"" msgstr "se esperaba un modo de direccionamiento válido para mova: \"@(disp, ea.sz),ERn\"" -#: config/tc-h8300.c:1031 config/tc-h8300.c:1040 +#: config/tc-h8300.c:1024 config/tc-h8300.c:1033 msgid "expected register" msgstr "se esperaba un registro" -#: config/tc-h8300.c:1056 +#: config/tc-h8300.c:1049 msgid "expected closing paren" msgstr "se esperaba un paréntesis que cierra" -#: config/tc-h8300.c:1115 +#: config/tc-h8300.c:1108 #, c-format msgid "can't use high part of register in operand %d" msgstr "no se puede usar la parte alta del registro en operando %d" -#: config/tc-h8300.c:1272 +#: config/tc-h8300.c:1265 #, c-format msgid "Opcode `%s' with these operand types not available in %s mode" msgstr "El código operacional «%s» con esos tipos de operando no está disponible en el modo %s" -#: config/tc-h8300.c:1281 +#: config/tc-h8300.c:1274 msgid "mismatch between opcode size and operand size" msgstr "no hay coincidencia entre el tamaño del código operacional y el tamaño de operando" -#: config/tc-h8300.c:1317 +#: config/tc-h8300.c:1310 #, c-format msgid "operand %s0x%lx out of range." -msgstr "operando %s0x%lx fuera de límite." +msgstr "operando %s0x%lx fuera de rango." -#: config/tc-h8300.c:1434 +#: config/tc-h8300.c:1420 msgid "Can't work out size of operand.\n" msgstr "No se puede obtener el tamaño de operando.\n" -#: config/tc-h8300.c:1484 +#: config/tc-h8300.c:1470 #, c-format msgid "Opcode `%s' with these operand types not available in H8/300 mode" msgstr "El código operacional «%s» con esos tipos de operando no están disponibles en el modo H8/300" -#: config/tc-h8300.c:1489 +#: config/tc-h8300.c:1475 #, c-format msgid "Opcode `%s' with these operand types not available in H8/300H mode" msgstr "El código operacional «%s» con esos tipos de operando no está disponible en el modo H8/300H" -#: config/tc-h8300.c:1495 +#: config/tc-h8300.c:1481 #, c-format msgid "Opcode `%s' with these operand types not available in H8/300S mode" msgstr "El código operacional «%s» con esos tipos de operando no está disponible en el modo H8/300S" -#: config/tc-h8300.c:1556 config/tc-h8300.c:1576 +#: config/tc-h8300.c:1542 config/tc-h8300.c:1562 msgid "Need #1 or #2 here" msgstr "Necesita Nº1 o Nº2 aquí" -#: config/tc-h8300.c:1571 +#: config/tc-h8300.c:1557 msgid "#4 not valid on H8/300." msgstr "Nº4 no valida en H8/300." -#: config/tc-h8300.c:1686 config/tc-h8300.c:1768 +#: config/tc-h8300.c:1664 config/tc-h8300.c:1736 #, c-format msgid "branch operand has odd offset (%lx)\n" msgstr "operando de ramificación tiene un desplazamiento impar (%lx)\n" -#: config/tc-h8300.c:1806 +#: config/tc-h8300.c:1774 msgid "destination operand must be 16 bit register" msgstr "operando de destino debe ser un registro de 16 bit" -#: config/tc-h8300.c:1815 +#: config/tc-h8300.c:1783 msgid "source operand must be 8 bit register" msgstr "operando de origen debe ser un registro de 8 bit" -#: config/tc-h8300.c:1823 +#: config/tc-h8300.c:1791 msgid "destination operand must be 16bit absolute address" msgstr "operando de destino debe ser una dirección absoluta de 16bit" -#: config/tc-h8300.c:1830 +#: config/tc-h8300.c:1798 msgid "destination operand must be 8 bit register" msgstr "operando de destino debe ser un registro de 8 bit" -#: config/tc-h8300.c:1838 +#: config/tc-h8300.c:1806 msgid "source operand must be 16bit absolute address" msgstr "operando de origen debe ser una dirección absoluta de 16bit" #. 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:1846 config/tc-mips.c:14027 config/tc-mips.c:14095 -#: 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:1814 config/tc-mips.c:14374 config/tc-mips.c:14442 +#: config/tc-mmix.c:469 config/tc-mmix.c:481 config/tc-mmix.c:2537 +#: config/tc-mmix.c:2561 config/tc-mmix.c:2834 msgid "invalid operands" msgstr "operandos inválidos" -#: config/tc-h8300.c:1877 +#: config/tc-h8300.c:1845 msgid "operand/size mis-match" msgstr "no coinciden los operandos/tamaños" -#: config/tc-h8300.c:1977 config/tc-sh.c:2972 config/tc-sh64.c:2796 -#: config/tc-z8k.c:1233 +#: config/tc-h8300.c:1945 config/tc-sh.c:2537 config/tc-z8k.c:1243 msgid "unknown opcode" msgstr "desconoce código operacional" -#: config/tc-h8300.c:2010 +#: config/tc-h8300.c:1978 msgid "invalid operand in ldm" msgstr "operando inválido en ldm" -#: config/tc-h8300.c:2019 +#: config/tc-h8300.c:1987 msgid "invalid operand in stm" msgstr "operando inválido en stm" -#: config/tc-h8300.c:2218 +#: config/tc-h8300.c:2186 #, c-format msgid "Invalid argument to --mach option: %s" msgstr "Argumento inválido para opción --mach: %s" -#: config/tc-h8300.c:2229 +#: config/tc-h8300.c:2197 #, c-format msgid " H8300-specific assembler options:\n" msgstr " Opciones de ensamblador específicas de H8300:\n" -#: config/tc-h8300.c:2230 +#: config/tc-h8300.c:2198 #, c-format msgid "" " -mach=<name> Set the H8300 machine type to one of:\n" @@ -6761,37 +8162,32 @@ msgstr "" " -mach=<name> Establece el tipo de máquina H8300 a una de:\n" " h8300h, h8300hn, h8300s, h8300sn, h8300sx, h8300sxn\n" -#: config/tc-h8300.c:2233 +#: config/tc-h8300.c:2201 #, c-format msgid " -h-tick-hex Support H'00 style hex constants\n" msgstr " -h-tick-hex admite contantes hex estilo H'00\n" -#: config/tc-h8300.c:2242 +#: config/tc-h8300.c:2210 #, c-format msgid "call to tc_aout_fix_to_chars \n" msgstr "llamada a tc_aout_fix_to_chars \n" -#: config/tc-h8300.c:2251 config/tc-xc16x.c:347 +#: config/tc-h8300.c:2219 #, c-format msgid "call to md_convert_frag \n" msgstr "llamada a md_convert_frag \n" -#: config/tc-h8300.c:2302 config/tc-xc16x.c:251 +#: config/tc-h8300.c:2270 #, c-format msgid "call to md_estimate_size_before_relax \n" msgstr "llamada a md_estimate_size_before_relax \n" -#: config/tc-h8300.c:2317 +#: config/tc-h8300.c:2285 msgid "Unexpected reference to a symbol in a non-code section" msgstr "Referencia inesperada a un símbolo en una sección que no es de código" -#: config/tc-h8300.c:2333 config/tc-xc16x.c:292 -msgid "Difference of symbols in different sections is not supported" -msgstr "Diferencias simbólicas en secciones diferentes no es compatible" - -#: config/tc-h8300.c:2355 config/tc-mcore.c:2204 config/tc-microblaze.c:2458 -#: config/tc-pj.c:491 config/tc-sh.c:4480 config/tc-tic6x.c:4520 -#: config/tc-xc16x.c:315 +#: config/tc-h8300.c:2322 config/tc-mcore.c:2208 config/tc-microblaze.c:2552 +#: config/tc-pj.c:488 config/tc-sh.c:3886 config/tc-tic6x.c:4515 #, c-format msgid "Cannot represent relocation type %s" msgstr "No se puede representar el tipo reubicado %s" @@ -6803,7 +8199,7 @@ msgstr "No se puede representar el tipo reubicado %s" #: config/tc-hppa.c:1027 config/tc-hppa.c:1041 #, c-format msgid "Field out of range [%d..%d] (%d)." -msgstr "Campo fuera de límite [%d..%d] (%d)." +msgstr "Campo fuera de rango [%d..%d] (%d)." #. Simple alignment checking for FIELD against ALIGN (a power of two). #. IGNORE is used to suppress the error message. @@ -6827,1262 +8223,1685 @@ msgstr "Selector de campo inválido. Asumiendo F%%." #: config/tc-hppa.c:1288 msgid "Bad segment in expression." -msgstr "Segmento equivocado dentro de expresión." +msgstr "Segmento incorrecto dentro de expresión." #: config/tc-hppa.c:1313 #, c-format msgid "Invalid Nullification: (%c)" msgstr "Nulificación Inválida: (%c)" -#: config/tc-hppa.c:1384 +#: config/tc-hppa.c:1379 msgid "Cannot handle fixup" msgstr "No se puede manipular la compostura" -#: config/tc-hppa.c:1682 +#: config/tc-hppa.c:1663 #, c-format msgid " -Q ignored\n" msgstr " -Q se descarta\n" -#: config/tc-hppa.c:1686 +#: config/tc-hppa.c:1667 #, c-format msgid " -c print a warning if a comment is found\n" msgstr " -c escribe un aviso si se encuentra un comentario\n" -#: config/tc-hppa.c:1752 +#: config/tc-hppa.c:1733 #, c-format msgid "no hppa_fixup entry for fixup type 0x%x" msgstr "no hay una entrada hppa_fixup para el tipo de compostura 0x%x" -#: config/tc-hppa.c:1931 +#: config/tc-hppa.c:1912 msgid "Unknown relocation encountered in md_apply_fix." msgstr "Se encontró una reubicación desconocida en md_apply_fix." -#: config/tc-hppa.c:2119 config/tc-hppa.c:2144 +#: config/tc-hppa.c:2100 config/tc-hppa.c:2125 #, c-format msgid "Undefined register: '%s'." msgstr "Registro indefinido: «%s»." -#: config/tc-hppa.c:2178 +#: config/tc-hppa.c:2159 #, c-format msgid "Non-absolute symbol: '%s'." msgstr "Símbolo no absoluto: «%s»." -#: config/tc-hppa.c:2193 +#: config/tc-hppa.c:2174 #, c-format msgid "Undefined absolute constant: '%s'." msgstr "Constante absoluta sin definir: «%s»." -#: config/tc-hppa.c:2224 config/tc-hppa.c:5692 +#: config/tc-hppa.c:2205 config/tc-hppa.c:5686 msgid "could not update architecture and machine" msgstr "no se pueden actualizar la arquitectura y la máquina" -#: config/tc-hppa.c:2262 +#: config/tc-hppa.c:2243 #, c-format msgid "Invalid FP Compare Condition: %s" msgstr "Condición de Comparación de FP Inválida: %s" -#: config/tc-hppa.c:2317 +#: config/tc-hppa.c:2298 #, c-format msgid "Invalid FTEST completer: %s" msgstr "Completador FTEST inválido: %s" -#: config/tc-hppa.c:2383 config/tc-hppa.c:2420 +#: config/tc-hppa.c:2364 config/tc-hppa.c:2401 #, c-format msgid "Invalid FP Operand Format: %3s" msgstr "Formato de Operando FP Inválido: %3s" -#: config/tc-hppa.c:2525 +#: config/tc-hppa.c:2519 msgid "Bad segment (should be absolute)." -msgstr "Segmento equivocado (debe ser absoluto)." +msgstr "Segmento incorrecto (debe ser absoluto)." -#: config/tc-hppa.c:2585 +#: config/tc-hppa.c:2579 #, c-format msgid "Invalid argument location: %s\n" msgstr "Ubicación de argumento no válida: %s\n" -#: config/tc-hppa.c:2614 +#: config/tc-hppa.c:2608 #, c-format msgid "Invalid argument description: %d" msgstr "Descripción de argumento no válida: %d" -#: config/tc-hppa.c:3443 +#: config/tc-hppa.c:3437 msgid "Invalid Indexed Load Completer." msgstr "Completador de Carga Indizado Inválido." -#: config/tc-hppa.c:3448 +#: config/tc-hppa.c:3442 msgid "Invalid Indexed Load Completer Syntax." msgstr "Sintaxis de Completador de Carga Indizado Inválido." -#: config/tc-hppa.c:3482 +#: config/tc-hppa.c:3476 msgid "Invalid Short Load/Store Completer." msgstr "Completador Short de Load/Store Inválido." -#: config/tc-hppa.c:3543 config/tc-hppa.c:3548 +#: config/tc-hppa.c:3537 config/tc-hppa.c:3542 msgid "Invalid Store Bytes Short Completer" msgstr "Completador Almacenaje de Bytes Cortos Inválido" -#: config/tc-hppa.c:3863 config/tc-hppa.c:3869 +#: config/tc-hppa.c:3857 config/tc-hppa.c:3863 msgid "Invalid left/right combination completer" msgstr "Completador de combinación derecha/izquierda inválido" -#: config/tc-hppa.c:3918 config/tc-hppa.c:3925 +#: config/tc-hppa.c:3912 config/tc-hppa.c:3919 msgid "Invalid permutation completer" msgstr "Completador de permutación inválido" -#: config/tc-hppa.c:4025 +#: config/tc-hppa.c:4019 #, c-format msgid "Invalid Add Condition: %s" msgstr "Condición de Adición Inválida: %s" -#: config/tc-hppa.c:4041 config/tc-hppa.c:4051 +#: config/tc-hppa.c:4035 config/tc-hppa.c:4045 msgid "Invalid Add and Branch Condition" msgstr "Condición de Adición y Ramificación Inválida" -#: config/tc-hppa.c:4072 config/tc-hppa.c:4217 +#: config/tc-hppa.c:4066 config/tc-hppa.c:4211 msgid "Invalid Compare/Subtract Condition" msgstr "Condición de Comparación/Sustracción Inválida" -#: config/tc-hppa.c:4112 +#: config/tc-hppa.c:4106 #, c-format msgid "Invalid Branch On Bit Condition: %c" msgstr "Condición de Ramificación en Bit Inválida: %c" -#: config/tc-hppa.c:4115 +#: config/tc-hppa.c:4109 msgid "Missing Branch On Bit Condition" msgstr "Ausentea Condición de Ramificación de Bit" -#: config/tc-hppa.c:4200 +#: config/tc-hppa.c:4194 #, c-format msgid "Invalid Compare/Subtract Condition: %s" msgstr "Condición de Comparación/Sustracción Inválida: %s" -#: config/tc-hppa.c:4232 +#: config/tc-hppa.c:4226 msgid "Invalid Compare and Branch Condition" msgstr "Condición de Comparación y Ramificación Inválida" -#: config/tc-hppa.c:4328 +#: config/tc-hppa.c:4322 msgid "Invalid Logical Instruction Condition." msgstr "Condición de Instrucción Lógica Inválida." -#: config/tc-hppa.c:4390 +#: config/tc-hppa.c:4384 msgid "Invalid Shift/Extract/Deposit Condition." msgstr "Condición Desplazar/Extraer/Depositar Inválida." -#: config/tc-hppa.c:4507 +#: config/tc-hppa.c:4501 msgid "Invalid Unit Instruction Condition." msgstr "Condición de Instrucción Unit Inválida." -#: config/tc-hppa.c:4986 config/tc-hppa.c:5018 config/tc-hppa.c:5049 -#: config/tc-hppa.c:5079 +#: config/tc-hppa.c:4980 config/tc-hppa.c:5012 config/tc-hppa.c:5043 +#: config/tc-hppa.c:5073 msgid "Branch to unaligned address" msgstr "Ramificación a dirección sin alinear" -#: config/tc-hppa.c:5261 +#: config/tc-hppa.c:5255 msgid "Invalid SFU identifier" msgstr "Identificador SFU inválido" -#: config/tc-hppa.c:5311 +#: config/tc-hppa.c:5305 msgid "Invalid COPR identifier" msgstr "Identificador COPR inválido" -#: config/tc-hppa.c:5441 +#: config/tc-hppa.c:5435 msgid "Invalid Floating Point Operand Format." msgstr "Formato de Operando de Coma Flotante Inválido." -#: config/tc-hppa.c:5561 config/tc-hppa.c:5581 config/tc-hppa.c:5601 -#: config/tc-hppa.c:5621 config/tc-hppa.c:5641 +#: config/tc-hppa.c:5555 config/tc-hppa.c:5575 config/tc-hppa.c:5595 +#: config/tc-hppa.c:5615 config/tc-hppa.c:5635 msgid "Invalid register for single precision fmpyadd or fmpysub" msgstr "Registro inválido para fmpyadd ó fmpysub de precisión simple" -#: config/tc-hppa.c:5709 +#: config/tc-hppa.c:5703 #, c-format msgid "Invalid operands %s" msgstr "Operandos inválidos %s" -#: config/tc-hppa.c:5719 +#: config/tc-hppa.c:5713 #, c-format msgid "Immediates %d and %d will give undefined behavior." msgstr "Los inmediatos %d y %d darán una conducta sin definir." -#: config/tc-hppa.c:5771 config/tc-hppa.c:6954 config/tc-hppa.c:7009 +#: config/tc-hppa.c:5765 config/tc-hppa.c:6959 config/tc-hppa.c:7014 msgid "Missing function name for .PROC (corrupted label chain)" msgstr "Ausente el nombre de función para .PROC (cadena de etiquetas corrupta)" -#: config/tc-hppa.c:5774 config/tc-hppa.c:7012 +#: config/tc-hppa.c:5768 config/tc-hppa.c:7017 msgid "Missing function name for .PROC" msgstr "Ausente el nombre de función para .PROC" -#: config/tc-hppa.c:5833 +#: config/tc-hppa.c:5827 msgid "Argument to .BLOCK/.BLOCKZ must be between 0 and 0x3fffffff" msgstr "El argumento para .BLOCK/.BLOCKZ debe estar entre 0 y 0x3fffffff" -#: config/tc-hppa.c:5924 +#: config/tc-hppa.c:5918 #, c-format msgid "Invalid .CALL argument: %s" msgstr "Argumento de .CALL inválido: %s" -#: config/tc-hppa.c:6069 +#: config/tc-hppa.c:6063 msgid ".callinfo is not within a procedure definition" msgstr "directiva .callinfo no está dentro de una definición de procedimiento" -#: config/tc-hppa.c:6087 +#: config/tc-hppa.c:6081 #, c-format msgid "FRAME parameter must be a multiple of 8: %d\n" msgstr "El parámetro FRAM debe ser un múltiplo de 8: %d\n" -#: config/tc-hppa.c:6104 +#: config/tc-hppa.c:6098 msgid "Value for ENTRY_GR must be in the range 3..18\n" msgstr "Valorar para ENTRY_GR debe estar en el límite 3..18\n" -#: config/tc-hppa.c:6115 +#: config/tc-hppa.c:6109 msgid "Value for ENTRY_FR must be in the range 12..21\n" msgstr "Valorar para ENTRY_FR debe estar en el límite 12..21\n" -#: config/tc-hppa.c:6124 +#: config/tc-hppa.c:6118 msgid "Value for ENTRY_SR must be 3\n" msgstr "Valorar para ENTRY_SR debe ser 3\n" -#: config/tc-hppa.c:6173 +#: config/tc-hppa.c:6167 #, c-format msgid "Invalid .CALLINFO argument: %s" msgstr "Argumento de .CALLINFO inválido: %s" -#: config/tc-hppa.c:6284 +#: config/tc-hppa.c:6289 msgid "The .ENTER pseudo-op is not supported" msgstr "No se admite el pseudo-operador .ENTER" -#: config/tc-hppa.c:6300 +#: config/tc-hppa.c:6305 msgid "Misplaced .entry. Ignored." msgstr ".entry mal ubicado. Se descarta." -#: config/tc-hppa.c:6304 +#: config/tc-hppa.c:6309 msgid "Missing .callinfo." msgstr "Ausente .callinfo." -#: config/tc-hppa.c:6368 +#: config/tc-hppa.c:6374 msgid ".REG expression must be a register" msgstr "la expresión .REG debe ser un registro" -#: config/tc-hppa.c:6384 +#: config/tc-hppa.c:6390 msgid "bad or irreducible absolute expression; zero assumed" -msgstr "expresión absoluta equivocada o irreducible; se asume cero" +msgstr "expresión absoluta incorrecta o irreducible; se asume cero" -#: config/tc-hppa.c:6395 +#: config/tc-hppa.c:6401 msgid ".REG must use a label" msgstr ".REG debe usar una etiqueta" -#: config/tc-hppa.c:6397 +#: config/tc-hppa.c:6403 msgid ".EQU must use a label" msgstr ".EQU debe usar una etiqueta" -#: config/tc-hppa.c:6453 +#: config/tc-hppa.c:6458 #, c-format msgid "Symbol '%s' could not be created." msgstr "No se puede crear el símbolo «%s»." -#: config/tc-hppa.c:6503 +#: config/tc-hppa.c:6508 msgid ".EXIT must appear within a procedure" msgstr ".EXIT debe aparecer dentro de un procedimiento" -#: config/tc-hppa.c:6507 +#: config/tc-hppa.c:6512 msgid "Missing .callinfo" msgstr "Ausente .callinfo" -#: config/tc-hppa.c:6511 +#: config/tc-hppa.c:6516 msgid "No .ENTRY for this .EXIT" msgstr "No hay .ENTRY para este .EXIT" -#: config/tc-hppa.c:6551 +#: config/tc-hppa.c:6556 #, c-format msgid "Using ENTRY rather than CODE in export directive for %s" msgstr "Utilizando ENTRY en lugar de CODE en la directiva export para %s" -#: config/tc-hppa.c:6670 +#: config/tc-hppa.c:6675 #, c-format msgid "Undefined .EXPORT/.IMPORT argument (ignored): %s" msgstr "Argumento indefinido .EXPORT/.IMPORT (descartado): %s" -#: config/tc-hppa.c:6693 +#: config/tc-hppa.c:6698 #, c-format msgid "Cannot define export symbol: %s\n" msgstr "No se puede definir el símbolo de exportación: %s\n" -#: config/tc-hppa.c:6784 +#: config/tc-hppa.c:6789 msgid "Missing label name on .LABEL" msgstr "Ausente el nombre de etiqueta en .LABEL" -#: config/tc-hppa.c:6789 +#: config/tc-hppa.c:6794 msgid "extra .LABEL arguments ignored." msgstr "se descartan los argumentos extra de .LABEL." -#: config/tc-hppa.c:6805 +#: config/tc-hppa.c:6810 msgid "The .LEAVE pseudo-op is not supported" msgstr "No se admite el pseudo-operador .LEAVE" -#: config/tc-hppa.c:6843 +#: config/tc-hppa.c:6848 msgid "Unrecognized .LEVEL argument\n" msgstr "No reconocido el argumento de .LEVEL\n" -#: config/tc-hppa.c:6876 +#: config/tc-hppa.c:6881 #, c-format msgid "Cannot define static symbol: %s\n" msgstr "No se puede definir el símbolo estático: %s\n" -#: config/tc-hppa.c:6908 +#: config/tc-hppa.c:6913 msgid "Nested procedures" msgstr "Procedimientos anidados" -#: config/tc-hppa.c:6918 +#: config/tc-hppa.c:6923 msgid "Cannot allocate unwind descriptor\n" msgstr "No se puede asignar un descriptor de desenredo\n" -#: config/tc-hppa.c:7016 +#: config/tc-hppa.c:7021 msgid "misplaced .procend" msgstr ".procend mal ubicado" -#: config/tc-hppa.c:7019 +#: config/tc-hppa.c:7024 msgid "Missing .callinfo for this procedure" msgstr "Ausente .callinfo para este procedimiento" -#: config/tc-hppa.c:7022 +#: config/tc-hppa.c:7027 msgid "Missing .EXIT for a .ENTRY" msgstr "Ausente .EXIT para un .ENTRY" -#: config/tc-hppa.c:7059 +#: config/tc-hppa.c:7064 msgid "Not in a space.\n" msgstr "No está en un espacio.\n" -#: config/tc-hppa.c:7062 +#: config/tc-hppa.c:7067 msgid "Not in a subspace.\n" msgstr "No está en un subespacio.\n" -#: config/tc-hppa.c:7150 +#: config/tc-hppa.c:7155 msgid "Invalid .SPACE argument" msgstr "Argumento de .SPACE inválido" -#: config/tc-hppa.c:7196 +#: config/tc-hppa.c:7201 msgid "Can't change spaces within a procedure definition. Ignored" msgstr "No se pueden modificar espacios dentro de una definición de procedimiento. Se descarta" -#: config/tc-hppa.c:7321 +#: config/tc-hppa.c:7326 #, c-format msgid "Undefined space: '%s' Assuming space number = 0." msgstr "Espacio indefinido: «%s» Se asume que el número de espacio = 0." -#: config/tc-hppa.c:7344 +#: config/tc-hppa.c:7349 msgid "Must be in a space before changing or declaring subspaces.\n" msgstr "Debe estar en un espacio antes de modificar o declarar subespacios.\n" -#: config/tc-hppa.c:7348 +#: config/tc-hppa.c:7353 msgid "Can't change subspaces within a procedure definition. Ignored" msgstr "No se pueden modificar subespacios dentro de una definición de procedimiento. Se descarta" -#: config/tc-hppa.c:7382 +#: config/tc-hppa.c:7387 msgid "Parameters of an existing subspace can't be modified" msgstr "No se pueden modificar los parámetros de un subespacio existente" -#: config/tc-hppa.c:7433 +#: config/tc-hppa.c:7438 msgid "Alignment must be a power of 2" msgstr "Alineación debe ser una potencia de 2" -#: config/tc-hppa.c:7480 +#: config/tc-hppa.c:7485 msgid "FIRST not supported as a .SUBSPACE argument" msgstr "No se admite FIRST como un argumento de .SUBSPACE" -#: config/tc-hppa.c:7482 +#: config/tc-hppa.c:7487 msgid "Invalid .SUBSPACE argument" msgstr "Argumento de .SUBSPACE inválido" -#: config/tc-hppa.c:7672 +#: config/tc-hppa.c:7676 #, c-format msgid "Internal error: Unable to find containing space for %s." msgstr "Error interno: No se puede encontrar el espacio contenedor para %s." -#: config/tc-hppa.c:8234 +#: config/tc-hppa.c:8237 msgid "-R option not supported on this target." msgstr "No se admite la opción -R en este objetivo." -#: config/tc-hppa.c:8251 config/tc-sparc.c:1019 config/tc-sparc.c:1056 -#, c-format -msgid "Internal error: can't hash `%s': %s\n" -msgstr "Error interno: no se puede dispersar «%s»: %s\n" - -#: config/tc-hppa.c:8260 config/tc-i860.c:235 +#: config/tc-hppa.c:8259 #, c-format msgid "internal error: losing opcode: `%s' \"%s\"\n" msgstr "error interno: se pierde el código operacional: «%s» «%s»\n" -#: config/tc-i370.c:418 config/tc-ppc.c:1278 config/tc-s390.c:432 -#: config/tc-s390.c:439 -#, c-format -msgid "invalid switch -m%s" -msgstr "interruptor -m%s inválido" - -#: config/tc-i370.c:515 config/tc-s390.c:538 -#, c-format -msgid "Internal assembler error for instruction %s" -msgstr "Error interno del ensamblador para la instrucción %s" - -#: config/tc-i370.c:534 -#, c-format -msgid "Internal assembler error for macro %s" -msgstr "Error interno del ensamblador para la macro %s" - -#: config/tc-i370.c:629 config/tc-ppc.c:2129 -msgid "identifier+constant@got means identifier@got+constant" -msgstr "identificador+constante@got significa identificador@got+constante" - -#: config/tc-i370.c:683 config/tc-m68k.c:8071 read.c:4572 -#, c-format -msgid "%s relocations do not fit in %u byte" -msgid_plural "%s relocations do not fit in %u bytes" -msgstr[0] "%s reubicaciones no caben en %u byte" -msgstr[1] "%s reubicaciones no caben en %u bytes" - -#: config/tc-i370.c:927 config/tc-i370.c:968 -msgid "unsupported DC type" -msgstr "no se admite el tipo DC" - -#: config/tc-i370.c:939 config/tc-i370.c:949 config/tc-i370.c:1531 -#: config/tc-i370.c:1542 -msgid "missing end-quote" -msgstr "ausentea comilla final" - -#: config/tc-i370.c:998 -msgid "unsupported alignment" -msgstr "no se admite la alineamiento" - -#: config/tc-i370.c:1005 -msgid "this DS form not yet supported" -msgstr "aún no se admite esta forma DS" - -#: config/tc-i370.c:1047 config/tc-m32r.c:1488 config/tc-microblaze.c:192 -msgid "Expected comma after symbol-name: rest of line ignored." -msgstr "Se esperaba coma tras nombre del símbolo: se descarta el resto de la línea." - -#: config/tc-i370.c:1070 config/tc-m32r.c:1512 config/tc-microblaze.c:214 -#: config/tc-ppc.c:2289 config/tc-ppc.c:3808 config/tc-ppc.c:3850 -#: config/tc-ppc.c:5410 -msgid "ignoring bad alignment" -msgstr "se descarta la alineamiento equivocada" - -#: config/tc-i370.c:1081 config/tc-m32r.c:1539 config/tc-microblaze.c:225 -#, c-format -msgid "Ignoring attempt to re-define symbol `%s'." -msgstr "Se descarta el intento de redefinir el símbolo «%s»." - -#: config/tc-i370.c:1089 config/tc-microblaze.c:233 -#, c-format -msgid "Length of .lcomm \"%s\" is already %ld. Not changed to %ld." -msgstr "La longitud de .lcomm «%s» ya es %ld. No se cambió a %ld." - -#: config/tc-i370.c:1108 config/tc-m32r.c:1524 config/tc-microblaze.c:249 -#: config/tc-v850.c:383 -msgid "Common alignment not a power of 2" -msgstr "La alineamiento común no es una potencia de 2" - -#: config/tc-i370.c:1246 -msgid "Missing or bad .using directive" -msgstr "Ausentea directiva .using o es equivocada" - -#: config/tc-i370.c:1291 -msgid "Literal Pool Overflow" -msgstr "Desbordamiento de Conjunto Literal" - -#: config/tc-i370.c:1589 -msgid "expression not a constant" -msgstr "la expresión no es una constante" - -#: config/tc-i370.c:1596 -msgid "Unknown/unsupported address literal type" -msgstr "Tipo direccional literal desconocida/incompatible" - -#: config/tc-i370.c:1619 -#, c-format -msgid ".ltorg without prior .using in section %s" -msgstr ".ltorg sin .using previo en la sección %s" - -#: config/tc-i370.c:1623 -#, c-format -msgid ".ltorg in section %s paired to .using in section %s" -msgstr ".ltorg en la sección %s emparejado con .using en la sección %s" - -#: config/tc-i370.c:1646 -#, c-format -msgid "bad alignment of %d bytes in literal pool" -msgstr "alineamiento equivocada de %d bytes en el conjunto de literales" - -#: config/tc-i370.c:1670 -msgid "bad literal size\n" -msgstr "tamaño de literal equivocado\n" - -#: config/tc-i370.c:1744 -msgid ".using: base address expression illegal or too complex" -msgstr ".using: la expresión direccional base es ilegal o demasiado compleja" +#: config/tc-hppa.c:8269 config/tc-sparc.c:999 +msgid "Broken assembler. No assembly attempted." +msgstr "Ensamblador descompuesto. No se intentó ensamblar." -#: config/tc-i370.c:1779 config/tc-i370.c:1788 +#: config/tc-i386.c:1558 #, c-format -msgid "dropping register %d in section %s does not match using register %d" -msgstr "soltando registro %d dentro de sección %s no coincide utilizando registro %d" +msgid "i386_output_nops called to generate nops of at most %d bytes!" +msgstr "" -#: config/tc-i370.c:1792 +#: config/tc-i386.c:1738 #, c-format -msgid "dropping register %d in section %s previously used in section %s" -msgstr "soltando el registro %d dentro de la sección %s previamente utilizada dentro de la sección %s" - -#: config/tc-i370.c:1848 config/tc-ppc.c:3630 -msgid "wrong number of operands" -msgstr "número equivocado de operandos" +msgid "invalid single nop size: %d (expect within [0, %d])" +msgstr "" -#: config/tc-i370.c:1930 config/tc-mn10200.c:896 config/tc-mn10300.c:1253 -#: config/tc-s390.c:1684 config/tc-v850.c:2328 -#, c-format -msgid "Unrecognized opcode: `%s'" -msgstr "No reconocido el código operacional: «%s»" +#: config/tc-i386.c:1787 +#, fuzzy +#| msgid "jump target out of range" +msgid "jump over nop padding out of range" +msgstr "omite objetivo fuera de rango" -#: config/tc-i370.c:2073 -msgid "not using any base register" -msgstr "no se usa ningún registro base" +#: config/tc-i386.c:2103 +#, fuzzy +#| msgid "same type of prefix used twice" +msgid "same oszc flag used twice" +msgstr "se utilizó dos veces el mismo tipo de prefijo" -#: config/tc-i370.c:2103 -#, c-format -msgid "expecting a register for operand %d" -msgstr "se espera un registro para operando %d" +#: config/tc-i386.c:2135 config/tc-i386.c:2146 +#, fuzzy +#| msgid "unrecognized symbol suffix" +msgid "unrecognized pseudo-suffix" +msgstr "símbolo sufijo no reconocido" -#. xgettext:c-format. -#: config/tc-i370.c:2209 config/tc-mn10200.c:1139 config/tc-mn10300.c:1821 -#: config/tc-ppc.c:3486 config/tc-s390.c:1597 config/tc-v850.c:3043 -#, c-format -msgid "junk at end of line: `%s'" -msgstr "basura al final de la línea: «%s»" +#: config/tc-i386.c:2182 +msgid "unrecognized oszc flags or illegal `,' in pseudo-suffix" +msgstr "" -#. Not used --- don't have any 8 byte instructions. -#: config/tc-i370.c:2224 -msgid "Internal Error: bad instruction length" -msgstr "Error interno: longitud equivocada de instrucción" +#: config/tc-i386.c:2199 +msgid "missing `}' or `,' in pseudo-suffix" +msgstr "" -#: config/tc-i386.c:2201 -#, c-format -msgid "%s shortened to %s" -msgstr "%s reducido a %s" +#: config/tc-i386.c:2867 +#, fuzzy, c-format +#| msgid "value 0x%I64x truncated to 0x%I64x" +msgid "0x%<PRIx64> shortened to 0x%<PRIx64>" +msgstr "valora 0x%I64x truncado a 0x%I64x" -#: config/tc-i386.c:2291 +#: config/tc-i386.c:2964 config/tc-i386.c:4580 config/tc-i386.c:4591 +#: config/tc-i386.c:10628 msgid "same type of prefix used twice" msgstr "se utilizó dos veces el mismo tipo de prefijo" -#: config/tc-i386.c:2318 +#: config/tc-i386.c:2976 config/tc-i386.c:3304 #, c-format msgid "64bit mode not supported on `%s'." msgstr "no se admite el modo de 64bit en «%s»." -#: config/tc-i386.c:2327 +#: config/tc-i386.c:2983 config/tc-i386.c:3311 #, c-format msgid "32bit mode not supported on `%s'." msgstr "no se admite el modo de 32bit en «%s»." -#: config/tc-i386.c:2367 +#: config/tc-i386.c:3035 msgid "bad argument to syntax directive." -msgstr "argumento equivocado para la directiva syntax." +msgstr "argumento incorrecto para la directiva syntax." -#: config/tc-i386.c:2430 +#: config/tc-i386.c:3092 #, c-format msgid "bad argument to %s_check directive." -msgstr "argumento equivocado para `%s_check' de directiva." +msgstr "argumento incorrecto para `%s_check' de directiva." -#: config/tc-i386.c:2434 +#: config/tc-i386.c:3096 #, c-format msgid "missing argument for %s_check directive" msgstr "argumento ausente para %s_check de directiva" -#: config/tc-i386.c:2474 +#: config/tc-i386.c:3123 #, c-format msgid "`%s' is not supported on `%s'" msgstr "«%s» no se admite en «%s»" -#: config/tc-i386.c:2576 +#: config/tc-i386.c:3191 +msgid "missing cpu architecture" +msgstr "ausente la arquitectura de cpu" + +#: config/tc-i386.c:3230 +msgid ".arch stack is empty" +msgstr "" + +#: config/tc-i386.c:3246 +#, c-format +msgid "this `.arch pop' requires `.code%u%s' to be in effect" +msgstr "" + +#: config/tc-i386.c:3357 +#, fuzzy +#| msgid "Unrecognized dependency specifier %d\n" +msgid "Unrecognized vector size specifier" +msgstr "No reconocido el especificador de dependencia %d\n" + +#: config/tc-i386.c:3394 #, c-format msgid "no such architecture: `%s'" msgstr "no hay tal arquitectura: «%s»" -#: config/tc-i386.c:2581 -msgid "missing cpu architecture" -msgstr "ausente la arquitectura de cpu" - -#: config/tc-i386.c:2598 +#: config/tc-i386.c:3410 #, c-format msgid "no such architecture modifier: `%s'" msgstr "no hay tal modificador de arquitectura: «%s»" -#: config/tc-i386.c:2613 config/tc-i386.c:2643 -msgid "Intel L1OM is 64bit ELF only" -msgstr "Intel L1OM es solamente 64bit ELF" - -#: config/tc-i386.c:2620 config/tc-i386.c:2650 -msgid "Intel K1OM is 64bit ELF only" -msgstr "Intel K1OM es solamente 64bit ELF" - -#: config/tc-i386.c:2627 config/tc-i386.c:2664 +#: config/tc-i386.c:3426 config/tc-i386.c:3449 msgid "Intel MCU is 32bit ELF only" msgstr "Intel MCU es solo 32bit ELF" -#: config/tc-i386.c:2671 config/tc-i386.c:10616 +#: config/tc-i386.c:3456 config/tc-i386.c:17765 msgid "unknown architecture" msgstr "desconoce arquitectura" -#: config/tc-i386.c:2708 config/tc-i386.c:2730 -#, c-format -msgid "can't hash %s: %s" -msgstr "no puede dispersar %s: %s" - -#: config/tc-i386.c:3023 +#: config/tc-i386.c:3831 msgid "there are no pc-relative size relocations" msgstr "no hay reubicaciones de tamaño pc-relativo" -#: config/tc-i386.c:3035 +#: config/tc-i386.c:3843 #, c-format msgid "unknown relocation (%u)" msgstr "reubicación desconocida (%u)" -#: config/tc-i386.c:3037 +#: config/tc-i386.c:3845 #, c-format msgid "%u-byte relocation cannot be applied to %u-byte field" msgstr "la reubicación de %u-bytes no se puede aplicar al campo %u-bytes" -#: config/tc-i386.c:3041 +#: config/tc-i386.c:3849 msgid "non-pc-relative relocation for pc-relative field" msgstr "reubicación no relativa a pc para el campo relativo a pc" -#: config/tc-i386.c:3046 +#: config/tc-i386.c:3854 msgid "relocated field and relocation type differ in signedness" msgstr "el campo reubicado y el tipo reubicado difieren en signo" -#: config/tc-i386.c:3055 +#: config/tc-i386.c:3863 msgid "there are no unsigned pc-relative relocations" msgstr "no hay reubicaciones relativas a pc sin signo" -#: config/tc-i386.c:3063 +#: config/tc-i386.c:3871 #, c-format msgid "cannot do %u byte pc-relative relocation" msgstr "no se puede hacer la reubicación relativa a pc de %u bytes" -#: config/tc-i386.c:3080 +#: config/tc-i386.c:3888 #, c-format msgid "cannot do %s %u byte relocation" msgstr "no se puede hacer la reubicación %s de %u bytes" -#: config/tc-i386.c:3549 config/tc-i386.c:3576 +#: config/tc-i386.c:4352 #, c-format -msgid "can't use register '%s%s' as operand %d in '%s'." -msgstr "no se puede utilizar el registro '%s%s' como operando %d en «%s»." +msgid "ambiguous broadcast for `%s', using %u-bit form" +msgstr "" -#: config/tc-i386.c:3616 config/tc-i386.c:3756 +#: config/tc-i386.c:4581 +msgid "conflicting use of `data16' prefix" +msgstr "" + +#: config/tc-i386.c:4668 +#, fuzzy, c-format +#| msgid "can't encode register '%s%s' in an instruction requiring REX prefix." +msgid "can't encode register '%s%s' in an instruction requiring %s prefix" +msgstr "no se puede codificar el registro '%s%s' en una instrucción que requiere el prefijo REX." + +#: config/tc-i386.c:4710 +#, fuzzy, c-format +#| msgid "`%s%s' not allowed with `%s%c'" +msgid "size override not allowed with `%s'" +msgstr "no se permite `%s%s' con `%s%c'" + +#: config/tc-i386.c:4717 +#, fuzzy, c-format +#| msgid "`%s%s' not allowed with `%s%c'" +msgid "address override not allowed with `%s'" +msgstr "no se permite `%s%s' con `%s%c'" + +#: config/tc-i386.c:4771 config/tc-i386.c:7240 #, c-format msgid "invalid instruction `%s' after `%s'" msgstr "instrucción «%s» no válida tras «%s»" -#: config/tc-i386.c:3622 +#: config/tc-i386.c:4777 #, c-format msgid "missing `lock' with `%s'" msgstr "ausente `lock' con «%s»" -#: config/tc-i386.c:3629 +#: config/tc-i386.c:4784 #, c-format msgid "instruction `%s' after `xacquire' not allowed" msgstr "instrucción «%s» tras «xacquire» no permitido" -#: config/tc-i386.c:3636 +#: config/tc-i386.c:4790 #, c-format msgid "memory destination needed for instruction `%s' after `xrelease'" msgstr "destino de memoria requerido para instrucción `%s' tras `xrelease'" -#: config/tc-i386.c:3730 -#, c-format -msgid "SSE instruction `%s' is used" -msgstr "SSE como instrucción «%s» está utilizada" +#: config/tc-i386.c:6224 +#, fuzzy +#| msgid "extra .LABEL arguments ignored." +msgid "`.noopt' arguments ignored" +msgstr "se descartan los argumentos extra de .LABEL." -#: config/tc-i386.c:3744 config/tc-i386.c:5581 +#: config/tc-i386.c:6410 #, c-format -msgid "ambiguous operand size for `%s'" -msgstr "tamaño de operando ambiguo para «%s»" - -#: config/tc-i386.c:3769 -msgid "expecting lockable instruction after `lock'" -msgstr "se espera una instrucción bloqueable tras `lock'" - -#: config/tc-i386.c:3779 -msgid "expecting valid branch instruction after `bnd'" -msgstr "esperando rama instruccional válida tras «bnd»" - -#: config/tc-i386.c:3783 -msgid "expecting indirect branch instruction after `notrack'" -msgstr "esperando rama instruccional indirecta tras «notrack»" - -#: config/tc-i386.c:3788 -msgid "32-bit address isn't allowed in 64-bit MPX instructions." -msgstr "dirección 32-bit no está permitido en instrucciones MPX de 64-bit." - -#: config/tc-i386.c:3792 -msgid "16-bit address isn't allowed in MPX instructions" -msgstr "dirección de 16-bit no está permitida dentro de instrucciones MPX" +msgid "`%s` changes flags which would affect control flow behavior" +msgstr "" -#. UnixWare fsub no args is alias for fsubp, fadd -> faddp, etc. -#: config/tc-i386.c:3847 +#: config/tc-i386.c:6452 #, c-format -msgid "translating to `%sp'" -msgstr "se traslada a `%sp'" +msgid "indirect `%s` with memory operand should be avoided" +msgstr "" -#: config/tc-i386.c:3854 +#: config/tc-i386.c:6462 #, c-format -msgid "instruction `%s' isn't supported in 16-bit mode." -msgstr "instrucción «%s» no admitido en modo 16-bit." +msgid "`%s` skips -mlfence-before-indirect-branch on `%s`" +msgstr "" -#: config/tc-i386.c:3914 +#: config/tc-i386.c:6481 #, c-format -msgid "can't encode register '%s%s' in an instruction requiring REX prefix." -msgstr "no se puede codificar el registro '%s%s' en una instrucción que requiere el prefijo REX." +msgid "`%s` skips -mlfence-before-ret on `%s`" +msgstr "" -#: config/tc-i386.c:3954 config/tc-i386.c:4140 +#: config/tc-i386.c:6831 +#, fuzzy, c-format +#| msgid "`%s' cannot be used with `%s'" +msgid "@%s operator cannot be used with `%s'" +msgstr "«%s» no puede ser utilizado con «%s»" + +#: config/tc-i386.c:6836 #, c-format -msgid "no such instruction: `%s'" -msgstr "no hay tal instrucción: «%s»" +msgid "@%s operator can be used with `%s', but format is wrong" +msgstr "" -#: config/tc-i386.c:3965 config/tc-i386.c:4173 +#: config/tc-i386.c:6841 #, c-format -msgid "invalid character %s in mnemonic" -msgstr "carácter inválido %s en el mnemónico" +msgid "@%s operator requires no SIB" +msgstr "" -#: config/tc-i386.c:3972 -msgid "expecting prefix; got nothing" -msgstr "se esperaba un prefijo; se obtuvo nada" +#: config/tc-i386.c:6845 +#, fuzzy, c-format +#| msgid "instruction requires register index" +msgid "@%s operator requires base register" +msgstr "la instrucción requiere un índice de registro" -#: config/tc-i386.c:3974 -msgid "expecting mnemonic; got nothing" -msgstr "se esperaba un mnemónico; se obtuvo nada" +#: config/tc-i386.c:6849 +#, fuzzy, c-format +#| msgid "First operand to .%s not a valid register" +msgid "@%s operator requires no base/index register" +msgstr "El primer operando de .%s no es un registro válido" -#: config/tc-i386.c:3989 config/tc-i386.c:4191 -#, c-format -msgid "`%s' is only supported in 64-bit mode" -msgstr "«%s» sólo se admite en modo de 64-bit" +#: config/tc-i386.c:6854 +#, fuzzy, c-format +#| msgid "First operand to .%s not a register" +msgid "@%s operator requires no base register" +msgstr "El primer operando de .%s no es un registro" -#: config/tc-i386.c:3990 config/tc-i386.c:4190 -#, c-format -msgid "`%s' is not supported in 64-bit mode" -msgstr "«%s» no se admite en modo de 64-bit" +#: config/tc-i386.c:6858 +#, fuzzy, c-format +#| msgid "First operand to .vframe must be a general register" +msgid "@%s operator requires `%sebx' as index register" +msgstr "El primer operando de .vfram debe ser un registro general" -#: config/tc-i386.c:4002 +#: config/tc-i386.c:6863 #, c-format -msgid "redundant %s prefix" -msgstr "prefijo %s redundante" +msgid "@%s operator requires `%seax' as base register" +msgstr "" -#: config/tc-i386.c:4197 +#: config/tc-i386.c:6868 #, c-format -msgid "`%s' is not supported on `%s%s'" -msgstr "«%s» no se admite en `%s%s'" - -#: config/tc-i386.c:4208 -msgid "use .code16 to ensure correct addressing mode" -msgstr "use .code16 para asegurar el modo de direccionamiento correcto" +msgid "@%s operator requires `%seax/%srax' as base register" +msgstr "" -#: config/tc-i386.c:4232 +#: config/tc-i386.c:6873 #, c-format -msgid "invalid character %s before operand %d" -msgstr "caracter inválido %s antes de operando %d" +msgid "@%s operator requires `%sebx' as base register" +msgstr "" -#: config/tc-i386.c:4246 -#, c-format -msgid "unbalanced parenthesis in operand %d." -msgstr "paréntesis sin balancear en operando %d." +#: config/tc-i386.c:6878 +#, fuzzy, c-format +#| msgid "syntax error; missing ')' after base register" +msgid "@%s operator requires `%srip' as base register" +msgstr "error de sintaxis; ausente ')' tras registro base" -#: config/tc-i386.c:4249 -#, c-format -msgid "unbalanced brackets in operand %d." -msgstr "llaves sin balancear en operando %d." +#: config/tc-i386.c:6883 +#, fuzzy, c-format +#| msgid "setx: temporary register same as destination register" +msgid "@%s operator requires `%seax' as dest register" +msgstr "setx: el registro temporal es el mismo que el registro destino" -#: config/tc-i386.c:4258 -#, c-format -msgid "invalid character %s in operand %d" -msgstr "carácter inválido %s en operando %d" +#: config/tc-i386.c:6888 +#, fuzzy, c-format +#| msgid "setx: temporary register same as destination register" +msgid "@%s operator requires `%srdi' as dest register" +msgstr "setx: el registro temporal es el mismo que el registro destino" -#: config/tc-i386.c:4285 +#: config/tc-i386.c:6893 #, c-format -msgid "spurious operands; (%d operands/instruction max)" -msgstr "operandos espurios; (%d operandos/instrucción máximo)" +msgid "@%s operator requires scale factor of 1" +msgstr "" -#: config/tc-i386.c:4309 -msgid "expecting operand after ','; got nothing" -msgstr "se esperaba un operando tras ','; se obtuvo nada" +#: config/tc-i386.c:6898 +#, fuzzy, c-format +#| msgid "First operand to .%s not a register" +msgid "@%s operator requires 32-bit base register" +msgstr "El primer operando de .%s no es un registro" -#: config/tc-i386.c:4314 -msgid "expecting operand before ','; got nothing" -msgstr "se esperaba un operando antes de ','; se obtuvo nada" +#: config/tc-i386.c:6903 +#, c-format +msgid "@%s operator requires 32-bit dest register" +msgstr "" -#: config/tc-i386.c:4693 -msgid "mask, index, and destination registers should be distinct" -msgstr "registros de máscaras, indizado, destino deberían ser distintos" +#: config/tc-i386.c:6908 +#, fuzzy, c-format +#| msgid "%s isa does not support 64-bit registers" +msgid "@%s operator requires 64-bit dest register" +msgstr "isa %s no admite registros de 64-bit" -#: config/tc-i386.c:4710 -msgid "index and destination registers should be distinct" -msgstr "registros indizados y destino deberían ser distintos" +#: config/tc-i386.c:6913 +#, fuzzy, c-format +#| msgid "%s isa does not support 64-bit registers" +msgid "@%s operator requires 32-bit or 64-bit dest register" +msgstr "isa %s no admite registros de 64-bit" -#: config/tc-i386.c:5239 +#: config/tc-i386.c:7081 msgid "operand size mismatch" msgstr "no coincide tamaño de operando" -#: config/tc-i386.c:5242 +#: config/tc-i386.c:7084 msgid "operand type mismatch" msgstr "no coincide el tipo de operando" -#: config/tc-i386.c:5245 +#: config/tc-i386.c:7087 msgid "register type mismatch" msgstr "no coincide el tipo de registro" -#: config/tc-i386.c:5248 +#: config/tc-i386.c:7090 msgid "number of operands mismatch" msgstr "no coincide el número de operandos" -#: config/tc-i386.c:5251 +#: config/tc-i386.c:7093 msgid "invalid instruction suffix" msgstr "invalida sufijo de instrucción" -#: config/tc-i386.c:5254 +#: config/tc-i386.c:7096 msgid "constant doesn't fit in 4 bits" msgstr "constante no cabe en 4 bits" -#: config/tc-i386.c:5257 -msgid "only supported with old gcc" -msgstr "admitido solo con gcc antiguo" - -#: config/tc-i386.c:5260 +#: config/tc-i386.c:7099 msgid "unsupported with Intel mnemonic" msgstr "no se admite con mnemónico Intel" -#: config/tc-i386.c:5263 +#: config/tc-i386.c:7102 msgid "unsupported syntax" msgstr "no se admite la sintaxis" -#: config/tc-i386.c:5266 +#: config/tc-i386.c:7105 +#, fuzzy +#| msgid "register r0 cannot be used here" +msgid "extended GPR cannot be used as base/index" +msgstr "el registro r0 no se puede usar aquí" + +#: config/tc-i386.c:7108 +#, fuzzy +#| msgid "unsupported" +msgid "{nf} unsupported" +msgstr "no se admite" + +#: config/tc-i386.c:7111 #, c-format msgid "unsupported instruction `%s'" msgstr "no admitió instrucción «%s»" -#: config/tc-i386.c:5270 +#: config/tc-i386.c:7115 config/tc-i386.c:7633 +#, c-format +msgid "`%s' is not supported on `%s%s'" +msgstr "«%s» no se admite en `%s%s'" + +#: config/tc-i386.c:7124 +#, fuzzy, c-format +#| msgid "`%s' is not supported in 64-bit mode" +msgid "`%s%c' is not supported in 64-bit mode" +msgstr "«%s» no se admite en modo de 64-bit" + +#: config/tc-i386.c:7128 +#, fuzzy, c-format +#| msgid "`%s' is only supported in 64-bit mode" +msgid "`%s%c' is only supported in 64-bit mode" +msgstr "«%s» solo se admite en modo de 64-bit" + +#: config/tc-i386.c:7135 config/tc-i386.c:7627 +#, c-format +msgid "`%s' is not supported in 64-bit mode" +msgstr "«%s» no se admite en modo de 64-bit" + +#: config/tc-i386.c:7138 config/tc-i386.c:7626 +#, c-format +msgid "`%s' is only supported in 64-bit mode" +msgstr "«%s» solo se admite en modo de 64-bit" + +#: config/tc-i386.c:7143 +msgid "no VEX/XOP encoding" +msgstr "" + +#: config/tc-i386.c:7146 +msgid "no EVEX encoding" +msgstr "" + +#: config/tc-i386.c:7149 +#, fuzzy +#| msgid "invalid VSIB address" +msgid "invalid SIB address" +msgstr "dirección VSIB no válida" + +#: config/tc-i386.c:7152 msgid "invalid VSIB address" msgstr "dirección VSIB no válida" -#: config/tc-i386.c:5273 +#: config/tc-i386.c:7155 msgid "mask, index, and destination registers must be distinct" msgstr "máscara, índice, y registro de destino debe ser distinto" -#: config/tc-i386.c:5276 +#: config/tc-i386.c:7158 +#, fuzzy +#| msgid "last register must be r7" +msgid "all tmm registers must be distinct" +msgstr "el último registro debe ser r7" + +#: config/tc-i386.c:7161 +#, fuzzy +#| msgid "mask, index, and destination registers must be distinct" +msgid "destination and source registers must be distinct" +msgstr "máscara, índice, y registro de destino debe ser distinto" + +#: config/tc-i386.c:7164 +#, fuzzy +#| msgid "mask, index, and destination registers must be distinct" +msgid "two dest registers must be distinct" +msgstr "máscara, índice, y registro de destino debe ser distinto" + +#: config/tc-i386.c:7167 +#, fuzzy +#| msgid "register r0 cannot be used here" +msgid "rex2 pseudo prefix cannot be used" +msgstr "el registro r0 no se puede usar aquí" + +#: config/tc-i386.c:7170 msgid "unsupported vector index register" msgstr "no se admite el registro de índice de vector" -#: config/tc-i386.c:5279 +#: config/tc-i386.c:7173 msgid "unsupported broadcast" msgstr "emisión no admitida" -#: config/tc-i386.c:5282 -msgid "broadcast not on source memory operand" -msgstr "emisión no en operando de memoria origen" - -#: config/tc-i386.c:5285 +#: config/tc-i386.c:7176 msgid "broadcast is needed for operand of such type" msgstr "emisión es necesaria para operando de tal tipo" -#: config/tc-i386.c:5288 +#: config/tc-i386.c:7179 msgid "unsupported masking" msgstr "máscara no soportada" -#: config/tc-i386.c:5291 +#: config/tc-i386.c:7182 msgid "mask not on destination operand" msgstr "máscara no sobre operando destino" -#: config/tc-i386.c:5294 +#: config/tc-i386.c:7185 msgid "default mask isn't allowed" msgstr "" -#: config/tc-i386.c:5297 +#: config/tc-i386.c:7188 msgid "unsupported static rounding/sae" msgstr "no admitida reubicación/sae estática" -#: config/tc-i386.c:5301 -msgid "RC/SAE operand must precede immediate operands" -msgstr "Operando RC/SAE debe preceder inmediatamente operandos" +#: config/tc-i386.c:7191 +#, c-format +msgid "vector size above %u required for `%s'" +msgstr "" -#: config/tc-i386.c:5303 -msgid "RC/SAE operand must follow immediate operands" -msgstr "Operando RC/SAE debe seguir inmediatamente operandos" +#: config/tc-i386.c:7195 +#, fuzzy +#| msgid "odd register cannot be used here" +msgid "'rsp' register cannot be used" +msgstr "no se puede usar aquí un registro impar" -#: config/tc-i386.c:5306 config/tc-metag.c:4789 config/tc-metag.c:5530 -#: config/tc-metag.c:5552 -msgid "invalid register operand" -msgstr "invalida registro operando" +#: config/tc-i386.c:7198 +#, fuzzy +#| msgid "MIPS internal Error" +msgid "internal error" +msgstr "Error interno de MIPS" -#: config/tc-i386.c:5309 +#: config/tc-i386.c:7201 #, c-format msgid "%s for `%s'" msgstr "%s para «%s»" -#: config/tc-i386.c:5320 +#: config/tc-i386.c:7230 +#, c-format +msgid "SSE instruction `%s' is used" +msgstr "SSE como instrucción «%s» está utilizada" + +#: config/tc-i386.c:7254 +msgid "expecting lockable instruction after `lock'" +msgstr "se espera una instrucción bloqueable tras `lock'" + +#: config/tc-i386.c:7287 +#, fuzzy, c-format +#| msgid "width suffixes are invalid in ARM mode -- `%s'" +msgid "data size prefix invalid with `%s'" +msgstr "los sufijos de anchura son inválidos en modo ARM -- «%s»" + +#: config/tc-i386.c:7298 +msgid "expecting valid branch instruction after `bnd'" +msgstr "esperando rama instruccional válida tras «bnd»" + +#: config/tc-i386.c:7302 +msgid "expecting indirect branch instruction after `notrack'" +msgstr "esperando rama instruccional indirecta tras «notrack»" + +#: config/tc-i386.c:7307 +msgid "32-bit address isn't allowed in 64-bit MPX instructions." +msgstr "dirección 32-bit no está permitido en instrucciones MPX de 64-bit." + +#: config/tc-i386.c:7311 +msgid "16-bit address isn't allowed in MPX instructions" +msgstr "dirección de 16-bit no está permitida dentro de instrucciones MPX" + +#: config/tc-i386.c:7321 +msgid "replacing `rep'/`repe' prefix by `bnd'" +msgstr "" + +#: config/tc-i386.c:7341 +#, c-format +msgid "input/output port address isn't allowed with `%s'" +msgstr "" + +#: config/tc-i386.c:7374 +#, fuzzy, c-format +#| msgid "invalid pc-relative address" +msgid "'%s' only supports RIP-relative address" +msgstr "dirección relativa a pc no válida" + +#. UnixWare fsub no args is alias for fsubp, fadd -> faddp, etc. +#: config/tc-i386.c:7423 +#, c-format +msgid "translating to `%sp'" +msgstr "se traslada a `%sp'" + +#: config/tc-i386.c:7430 +#, fuzzy, c-format +#| msgid "instruction `%s' isn't supported in 16-bit mode." +msgid "instruction `%s' isn't supported outside of protected mode." +msgstr "instrucción «%s» no admitido en modo 16-bit." + +#: config/tc-i386.c:7443 +#, fuzzy, c-format +#| msgid "invalid switch -m%s" +msgid "REX prefix invalid with `%s'" +msgstr "interruptor -m%s inválido" + +#: config/tc-i386.c:7450 +#, fuzzy, c-format +#| msgid "invalid switch -m%s" +msgid "{rex2} prefix invalid with `%s'" +msgstr "interruptor -m%s inválido" + +#: config/tc-i386.c:7576 config/tc-i386.c:7890 +#, c-format +msgid "no such instruction: `%s'" +msgstr "no hay tal instrucción: «%s»" + +#: config/tc-i386.c:7602 config/tc-i386.c:7941 +#, c-format +msgid "invalid character %s in mnemonic" +msgstr "carácter inválido %s en el mnemónico" + +#: config/tc-i386.c:7609 +msgid "expecting prefix; got nothing" +msgstr "se esperaba un prefijo; se obtuvo nada" + +#: config/tc-i386.c:7611 +msgid "expecting mnemonic; got nothing" +msgstr "se esperaba un mnemónico; se obtuvo nada" + +#: config/tc-i386.c:7647 +#, c-format +msgid "redundant %s prefix" +msgstr "prefijo %s redundante" + +#: config/tc-i386.c:7712 +#, fuzzy +#| msgid "insn cannot be combined with pmuls" +msgid "{nf} cannot be combined with {vex}/{vex3}" +msgstr "la insn no se pueden combinar con pmuls" + +#: config/tc-i386.c:7762 +#, c-format +msgid "ignoring `.s' suffix due to earlier `{%s}'" +msgstr "" + +#: config/tc-i386.c:7772 +msgid "ignoring `.d8' suffix due to earlier `{disp<N>}'" +msgstr "" + +#: config/tc-i386.c:7782 +msgid "ignoring `.d32' suffix due to earlier `{disp<N>}'" +msgstr "" + +#: config/tc-i386.c:7873 +#, c-format +msgid "found `%sd'; assuming `%sl' was meant" +msgstr "" + +#: config/tc-i386.c:7990 +#, c-format +msgid "invalid character %s before operand %d" +msgstr "caracter inválido %s antes de operando %d" + +#: config/tc-i386.c:8002 +#, fuzzy, c-format +#| msgid "unbalanced brackets in operand %d." +msgid "unbalanced double quotes in operand %d." +msgstr "llaves sin balancear en operando %d." + +#: config/tc-i386.c:8009 +#, c-format +msgid "unbalanced parenthesis in operand %d." +msgstr "paréntesis sin balancear en operando %d." + +#: config/tc-i386.c:8022 +#, c-format +msgid "invalid character %s in operand %d" +msgstr "carácter inválido %s en operando %d" + +#: config/tc-i386.c:8042 +#, c-format +msgid "spurious operands; (%d operands/instruction max)" +msgstr "operandos espurios; (%d operandos/instrucción máximo)" + +#: config/tc-i386.c:8052 config/tc-i386.c:13607 +#, c-format +msgid "too many memory references for `%s'" +msgstr "demasiadas referencias a memoria para «%s»" + +#: config/tc-i386.c:8073 config/tc-i386.c:13601 +msgid "expecting operand after ','; got nothing" +msgstr "se esperaba un operando tras ','; se obtuvo nada" + +#: config/tc-i386.c:8078 +msgid "expecting operand before ','; got nothing" +msgstr "se esperaba un operando antes de ','; se obtuvo nada" + +#: config/tc-i386.c:8368 +#, fuzzy, c-format +#| msgid "0x%lx out range of signed 32bit displacement" +msgid "0x%<PRIx64> out of range of signed 32bit displacement" +msgstr "0x%lx fuera de rango del desplazamiento de 32 bit con signo" + +#: config/tc-i386.c:8572 +msgid "mask, index, and destination registers should be distinct" +msgstr "registros de máscaras, indexado, destino deberían ser distintos" + +#: config/tc-i386.c:8589 +msgid "index and destination registers should be distinct" +msgstr "registros indexados y destino deberían ser distintos" + +#: config/tc-i386.c:9718 #, c-format msgid "indirect %s without `*'" msgstr "%s indirecto sin `*'" #. Warn them that a data or address size prefix doesn't #. affect assembly of the next line of code. -#: config/tc-i386.c:5328 +#: config/tc-i386.c:9725 #, c-format msgid "stand-alone `%s' prefix" msgstr "prefijo «%s» por sí solo" -#: config/tc-i386.c:5362 config/tc-i386.c:5378 -#, c-format -msgid "`%s' operand %d must use `%ses' segment" +#: config/tc-i386.c:9732 +#, fuzzy, c-format +#| msgid "`%s' cannot be used with `%s'" +msgid "mnemonic suffix used with `%s'" +msgstr "«%s» no puede ser utilizado con «%s»" + +#: config/tc-i386.c:9737 +msgid "NOTE: Such forms are deprecated and will be rejected by a future version of the assembler" +msgstr "" + +#: config/tc-i386.c:9822 +#, fuzzy, c-format +#| msgid "`%s' operand %d must use `%ses' segment" +msgid "`%s' operand %u must use `%ses' segment" msgstr "«%s» operando %d debe utilizar `%ses' como segmento" -#. We have to know the operand size for crc32. -#: config/tc-i386.c:5432 +#: config/tc-i386.c:9952 +msgid "generating 16-bit `iret' for .code16gcc directive" +msgstr "" + +#: config/tc-i386.c:9956 +#, c-format +msgid "generating 32-bit `%s', unlike earlier gas versions" +msgstr "" + +#: config/tc-i386.c:10120 #, c-format -msgid "ambiguous memory operand size for `%s`" -msgstr "tamaño de operando de memoria ambigua para `%s`" +msgid "ambiguous operand size for `%s'" +msgstr "tamaño de operando ambiguo para «%s»" + +#: config/tc-i386.c:10125 +#, fuzzy, c-format +#| msgid "no instruction mnemonic suffix given and no register operands; can't size instruction" +msgid "no instruction mnemonic suffix given and no register operands; can't size `%s'" +msgstr "no se dio un sufijo mnemónico de instrucción y ningún operando de registro; no se puede determinar el tamaño de la instrucción" + +#: config/tc-i386.c:10130 +#, fuzzy, c-format +#| msgid "unrecognized default cpu `%s'" +msgid "%s; using default for `%s'" +msgstr "no reconocido el cpu por defecto «%s»" -#: config/tc-i386.c:5554 -msgid "no instruction mnemonic suffix given and no register operands; can't size instruction" +#: config/tc-i386.c:10132 +#, fuzzy +#| msgid "ambiguous operand size for `%s'" +msgid "ambiguous operand size" +msgstr "tamaño de operando ambiguo para «%s»" + +#: config/tc-i386.c:10133 +#, fuzzy +#| msgid "no instruction mnemonic suffix given and no register operands; can't size instruction" +msgid "no instruction mnemonic suffix given and no register operands" msgstr "no se dio un sufijo mnemónico de instrucción y ningún operando de registro; no se puede determinar el tamaño de la instrucción" -#: config/tc-i386.c:5700 config/tc-i386.c:5773 config/tc-i386.c:5895 +#: config/tc-i386.c:10282 #, c-format -msgid "using `%s%s' instead of `%s%s' due to `%c' suffix" -msgstr "empleando `%s%s' en lugar de `%s%s' debido `%c' como sufijo" +msgid "16-bit addressing unavailable for `%s'" +msgstr "" + +#: config/tc-i386.c:10350 +#, fuzzy, c-format +#| msgid "invalid register operand: %s" +msgid "invalid register operand size for `%s'" +msgstr "operando registrado inválido: %s" -#: config/tc-i386.c:5721 config/tc-i386.c:5749 config/tc-i386.c:5820 -#: config/tc-i386.c:5870 +#. Any other register is bad. +#: config/tc-i386.c:10389 config/tc-i386.c:10413 config/tc-i386.c:10453 +#: config/tc-i386.c:10490 #, c-format msgid "`%s%s' not allowed with `%s%c'" msgstr "no se permite `%s%s' con `%s%c'" -#: config/tc-i386.c:5767 config/tc-i386.c:5794 config/tc-i386.c:5845 -#: config/tc-i386.c:5889 +#: config/tc-i386.c:10426 config/tc-i386.c:10465 config/tc-i386.c:10502 #, c-format msgid "incorrect register `%s%s' used with `%c' suffix" msgstr "registro incorrecto `%s%s' utilizado con `%c' como sufijo" -#: config/tc-i386.c:5958 +#: config/tc-i386.c:10592 msgid "no instruction mnemonic suffix given; can't determine immediate size" msgstr "no se dio un sufijo mnemónico de instrucción; no se puede determinar el tamaño inmediato" -#: config/tc-i386.c:6102 +#: config/tc-i386.c:10799 #, c-format -msgid "the second source register `%s%s' implicitly denotes `%s%.3s%d' to `%s%.3s%d' source group in `%s'" +msgid "operand %u `%s%s' implicitly denotes `%s%s' to `%s%s' group in `%s'" msgstr "" -#: config/tc-i386.c:6139 -#, c-format -msgid "you can't `pop %scs'" -msgstr "no se puede hacer `pop %scs'" - -#. Reversed arguments on faddp, fsubp, etc. -#: config/tc-i386.c:6168 +#. Reversed arguments on faddp or fmulp. +#: config/tc-i386.c:10846 #, c-format msgid "translating to `%s %s%s,%s%s'" msgstr "se traslada a `%s %s%s,%s%s'" #. Extraneous `l' suffix on fp insn. -#: config/tc-i386.c:6175 +#: config/tc-i386.c:10853 #, c-format msgid "translating to `%s %s%s'" msgstr "se traslada a `%s %s%s'" -#: config/tc-i386.c:6203 +#: config/tc-i386.c:10866 +#, fuzzy, c-format +#| msgid "you can't `pop %scs'" +msgid "you can't `%s %s%s'" +msgstr "no se puede hacer `pop %scs'" + +#: config/tc-i386.c:10923 #, c-format msgid "segment override on `%s' is ineffectual" msgstr "segmento invalidado en «%s» no tiene efecto" -#: config/tc-i386.c:6975 config/tc-i386.c:7076 config/tc-i386.c:7131 -msgid "skipping prefixes on this instruction" +#: config/tc-i386.c:11381 config/tc-loongarch.c:1245 config/tc-riscv.c:1979 +#, fuzzy +#| msgid "only constant offsets supported in absolute section" +msgid "relaxable branches not supported in absolute section" +msgstr "solo se admiten los desplazamientos constantes en la sección absoluta" + +#: config/tc-i386.c:11416 config/tc-i386.c:11559 config/tc-i386.c:11641 +#, fuzzy, c-format +#| msgid "skipping prefixes on this instruction" +msgid "skipping prefixes on `%s'" msgstr "omitiendo prefijos sobre esta instrucción" -#: config/tc-i386.c:7151 +#: config/tc-i386.c:11667 msgid "16-bit jump out of range" -msgstr "16-bit omitido fuera de límite" - -#: config/tc-i386.c:7160 -#, c-format -msgid "can't handle non absolute segment in `%s'" -msgstr "no se puede manipular un segmento no absoluto en «%s»" +msgstr "16-bit omitido fuera de rango" -#: config/tc-i386.c:7255 +#: config/tc-i386.c:11694 config/tc-i386.c:12436 msgid "pseudo prefix without instruction" msgstr "pseudo prefijo sin instrucción" -#: config/tc-i386.c:7847 config/tc-i386.c:7949 +#: config/tc-i386.c:11706 +#, fuzzy +#| msgid "pseudo prefix without instruction" +msgid "pseudo prefix ahead of label; ignoring" +msgstr "pseudo prefijo sin instrucción" + +#: config/tc-i386.c:12025 config/tc-i386.c:12058 config/tc-i386.c:12147 +#, c-format +msgid "`%s` skips -malign-branch-boundary on `%s`" +msgstr "" + +#: config/tc-i386.c:12316 +msgid "use .code16 to ensure correct addressing mode" +msgstr "use .code16 para asegurar el modo de direccionamiento correcto" + +#: config/tc-i386.c:12344 +#, fuzzy, c-format +#| msgid "instruction `%s' isn't supported in 16-bit mode." +msgid "Cannot convert `%s' in 16-bit mode" +msgstr "instrucción «%s» no admitido en modo 16-bit." + +#: config/tc-i386.c:12346 +#, c-format +msgid "Cannot convert `%s' with `-momit-lock-prefix=yes' in effect" +msgstr "" + +#: config/tc-i386.c:12591 config/tc-i386.c:12594 +#, c-format +msgid "instruction length of %u bytes exceeds the limit of 15" +msgstr "" + +#: config/tc-i386.c:13145 #, c-format msgid "@%s reloc is not supported with %d-bit output format" msgstr "no se admiten las reubicaciones @%s con el formato de salida de %d bits" -#: config/tc-i386.c:8000 +#: config/tc-i386.c:13203 #, c-format msgid "missing or invalid expression `%s'" msgstr "expresión ausentente o no válida «%s»" -#: config/tc-i386.c:8086 +#: config/tc-i386.c:13212 +#, fuzzy, c-format +#| msgid "invalid LOC expression" +msgid "invalid PLT expression `%s'" +msgstr "expresión LOC no válida" + +#: config/tc-i386.c:13311 +#, fuzzy +#| msgid "hard-float conflicts with specified fpu" +msgid "pseudo-prefix conflicts with encoding specifier" +msgstr "hard-float tiene conflictos con la unidad de coma flotante (fpu) especificada" + +#: config/tc-i386.c:13335 +msgid "illegal prefix used with VEX/XOP/EVEX" +msgstr "" + +#: config/tc-i386.c:13646 +#, c-format +msgid "opcode residual (%#<PRIx64>) too wide" +msgstr "" + +#: config/tc-i386.c:13662 +msgid "eGPR use conflicts with encoding specifier" +msgstr "" + +#: config/tc-i386.c:13683 config/tc-i386.c:13727 +#, fuzzy +#| msgid "Too many registers popped" +msgid "too many register/memory operands" +msgstr "Demasiados registros aparecidos" + +#: config/tc-i386.c:13694 config/tc-i386.c:13701 +#, fuzzy +#| msgid "too few operands" +msgid "too few register/memory operands" +msgstr "muy pocos operandos" + +#: config/tc-i386.c:13714 +#, fuzzy, c-format +#| msgid "constant doesn't fit in 4 bits" +msgid "constant doesn't fit in %d bits" +msgstr "constante no cabe en 4 bits" + +#: config/tc-i386.c:13778 +msgid "VSIB unavailable with legacy encoding" +msgstr "" + +#. We could allow two register operands, encoding the 2nd one in +#. an 8-bit immediate like for 4-register-operand insns, but that +#. would require ugly fiddling with process_operands() and/or +#. build_modrm_byte(). +#: config/tc-i386.c:13789 +#, fuzzy +#| msgid "Too many registers popped" +msgid "too many register operands with VSIB" +msgstr "Demasiados registros aparecidos" + +#: config/tc-i386.c:13808 +#, c-format +msgid "can't encode register '%s%s' with VEX/XOP/EVEX" +msgstr "" + +#: config/tc-i386.c:14013 +#, fuzzy +#| msgid "Conflicting operand modifiers" +msgid "conflicting .insn operands" +msgstr "Modificadores de operando en conflicto" + +#: config/tc-i386.c:14046 read.c:4318 +#, fuzzy +#| msgid "pseudo instruction `%s' not supported" +msgid "SCFI: hand-crafting instructions not supported" +msgstr "pseudo instrucción «%s» no admitida" + +#: config/tc-i386.c:14115 +#, fuzzy, c-format +#| msgid "duplicated `%s'" +msgid "duplicated `{%s}'" +msgstr "duplicado «%s»" + +#: config/tc-i386.c:14188 #, c-format msgid "Unsupported broadcast: `%s'" msgstr "No admitió emisión: «%s»" -#: config/tc-i386.c:8101 +#: config/tc-i386.c:14263 #, c-format msgid "`%s%s' can't be used for write mask" msgstr "`%s%s' no se puede ser empleado para máscara de escritura" -#: config/tc-i386.c:8124 +#: config/tc-i386.c:14283 #, c-format msgid "invalid write mask `%s'" msgstr "marca de escritura no válida «%s»" -#: config/tc-i386.c:8146 config/tc-i386.c:8809 +#: config/tc-i386.c:14304 #, c-format msgid "duplicated `%s'" msgstr "duplicado «%s»" -#: config/tc-i386.c:8156 +#: config/tc-i386.c:14314 #, c-format msgid "invalid zeroing-masking `%s'" msgstr "invalida mascarada a cero `%s'" -#: config/tc-i386.c:8169 +#: config/tc-i386.c:14332 #, c-format msgid "missing `}' in `%s'" msgstr "ausente `}' en «%s»" #. We don't know this one. -#: config/tc-i386.c:8177 +#: config/tc-i386.c:14344 #, c-format msgid "unknown vector operation: `%s'" -msgstr "operación vectorial desconocida: «%s»" +msgstr "operación de vector desconocida: «%s»" -#: config/tc-i386.c:8183 +#: config/tc-i386.c:14350 msgid "zeroing-masking only allowed with write mask" msgstr "" -#: config/tc-i386.c:8203 +#: config/tc-i386.c:14370 #, c-format msgid "at most %d immediate operands are allowed" -msgstr "sólo se permiten cuando mucho %d operandos inmediatos" +msgstr "solo se permiten cuando mucho %d operandos inmediatos" -#: config/tc-i386.c:8235 config/tc-i386.c:8482 +#: config/tc-i386.c:14409 config/tc-i386.c:14668 #, c-format msgid "junk `%s' after expression" msgstr "«%s» basura tras la expresión" -#: config/tc-i386.c:8256 +#: config/tc-i386.c:14422 +#, c-format +msgid "illegal immediate register operand %s" +msgstr "operando de registro inmediato ilegal %s" + +#: config/tc-i386.c:14436 #, c-format msgid "missing or invalid immediate expression `%s'" msgstr "expresión inmediata ausentente o no válida «%s»" -#: config/tc-i386.c:8279 config/tc-i386.c:8572 +#: config/tc-i386.c:14459 config/tc-i386.c:14747 #, c-format msgid "unimplemented segment %s in operand" msgstr "segmento %s sin implementar en operando" -#: config/tc-i386.c:8286 -#, c-format -msgid "illegal immediate register operand %s" -msgstr "operando de registro inmediato ilegal %s" - -#: config/tc-i386.c:8334 +#: config/tc-i386.c:14508 #, c-format msgid "expecting scale factor of 1, 2, 4, or 8: got `%s'" msgstr "se esperaba un factor de escala de 1, 2, 4, u 8: se obtuvo «%s»" -#: config/tc-i386.c:8343 +#: config/tc-i386.c:14517 #, c-format msgid "scale factor of %d without an index register" msgstr "factor de escala de %d sin un registro índice" -#: config/tc-i386.c:8365 +#: config/tc-i386.c:14539 #, c-format msgid "at most %d displacement operands are allowed" -msgstr "sólo se permiten hasta %d operandos de desubicación" +msgstr "solo se permiten hasta %d operandos de desubicación" -#: config/tc-i386.c:8538 +#: config/tc-i386.c:14723 #, c-format msgid "missing or invalid displacement expression `%s'" msgstr "expresión de desubicación ausentente o no válida «%s»" -#: config/tc-i386.c:8555 -#, c-format -msgid "0x%lx out range of signed 32bit displacement" -msgstr "0x%lx fuera de límite del desplazamiento de 32 bit con signo" - -#: config/tc-i386.c:8707 +#: config/tc-i386.c:14898 #, c-format msgid "`%s' is not valid here (expected `%c%s%s%c')" msgstr "«%s» no es válido aquí (se esperaba `%c%s%s%c')" -#: config/tc-i386.c:8719 +#: config/tc-i386.c:14910 #, c-format msgid "`%s' is not a valid %s expression" msgstr "«%s» no es una expresión %s válida" -#: config/tc-i386.c:8754 +#: config/tc-i386.c:14924 +#, fuzzy, c-format +#| msgid "invalid suffix" +msgid "invalid `%s' prefix" +msgstr "sufijo inválido" + +#: config/tc-i386.c:14954 #, c-format msgid "`%s' cannot be used here" msgstr "`%s' no puede ser empleado aquí" -#: config/tc-i386.c:8761 +#: config/tc-i386.c:14961 msgid "register scaling is being ignored here" msgstr "registro escalado está siendo descartado aquí" -#: config/tc-i386.c:8822 +#: config/tc-i386.c:15009 #, c-format msgid "Missing '}': '%s'" msgstr "Ausente '}': «%s»" -#: config/tc-i386.c:8828 +#: config/tc-i386.c:15015 #, c-format msgid "Junk after '}': '%s'" msgstr "Basura tras '}': «%s»" -#: config/tc-i386.c:8956 +#: config/tc-i386.c:15090 #, c-format msgid "bad memory operand `%s'" -msgstr "operando de memoria equivocado «%s»" +msgstr "operando de memoria incorrecto «%s»" -#: config/tc-i386.c:8980 +#: config/tc-i386.c:15106 #, c-format msgid "junk `%s' after register" msgstr "«%s» basura tras registro" -#: config/tc-i386.c:8993 config/tc-i386.c:9130 config/tc-i386.c:9174 +#: config/tc-i386.c:15113 +#, fuzzy, c-format +#| msgid "`%s' cannot be used here" +msgid "`%s%s' cannot be used here" +msgstr "`%s' no puede ser empleado aquí" + +#: config/tc-i386.c:15136 +#, fuzzy, c-format +#| msgid "`%s' is deprecated, use `%s'" +msgid "`%s': misplaced `{%s}'" +msgstr "«%s» es obsoleta, emplee «%s»" + +#: config/tc-i386.c:15143 config/tc-i386.c:15317 config/tc-i386.c:15361 #, c-format msgid "bad register name `%s'" -msgstr "nombre de registro equivocado «%s»" +msgstr "nombre de registro incorrecto «%s»" -#: config/tc-i386.c:9001 +#: config/tc-i386.c:15151 msgid "immediate operand illegal with absolute jump" msgstr "operando inmediato ilegal con salto absoluto" -#: config/tc-i386.c:9032 -#, c-format -msgid "too many memory references for `%s'" -msgstr "demasiadas referencias a memoria para «%s»" +#: config/tc-i386.c:15158 +#, fuzzy, c-format +#| msgid "RC/SAE operand must follow immediate operands" +msgid "`%s': RC/SAE operand must follow immediate operands" +msgstr "Operando RC/SAE debe seguir inmediatamente operandos" + +#: config/tc-i386.c:15171 +#, fuzzy, c-format +#| msgid "`%s' is deprecated, use `%s'" +msgid "`%s': misplaced `%s'" +msgstr "«%s» es obsoleta, emplee «%s»" + +#: config/tc-i386.c:15222 +msgid "unbalanced figure braces" +msgstr "" -#: config/tc-i386.c:9119 +#: config/tc-i386.c:15306 #, c-format msgid "expecting `,' or `)' after index register in `%s'" msgstr "se esperaba `,' ó `)' tras registro índice en «%s»" -#: config/tc-i386.c:9147 +#: config/tc-i386.c:15334 #, c-format msgid "expecting `)' after scale factor in `%s'" msgstr "se esperaba `)' tras factor de escala en «%s»" -#: config/tc-i386.c:9155 +#: config/tc-i386.c:15342 #, c-format msgid "expecting index register or scale factor after `,'; got '%c'" msgstr "se esperaba un registro índice o un factor de escala tras `,'; se obtuvo '%c'" -#: config/tc-i386.c:9163 +#: config/tc-i386.c:15350 #, c-format msgid "expecting `,' or `)' after base register in `%s'" msgstr "se esperaba `,' ó `)' tras registro base en «%s»" #. It's not a memory operand; argh! -#: config/tc-i386.c:9212 +#: config/tc-i386.c:15400 #, c-format msgid "invalid char %s beginning operand %d `%s'" msgstr "carácter inválido %s al inicio de operando %d «%s»" -#: config/tc-i386.c:9434 +#: config/tc-i386.c:16059 +#, c-format +msgid "%s:%u: add %d%s at 0x%llx to align %s within %d-byte boundary\n" +msgstr "" + +#: config/tc-i386.c:16062 +#, 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:16068 +#, 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:16135 msgid "long jump required" msgstr "se requiere un salto largo" -#: config/tc-i386.c:9489 +#: config/tc-i386.c:16190 msgid "jump target out of range" -msgstr "omite objetivo fuera de límite" +msgstr "omite objetivo fuera de rango" + +#: config/tc-i386.c:16668 +#, fuzzy, c-format +#| msgid "register r0 cannot be used here" +msgid "register '%s%s' cannot be used here" +msgstr "el registro r0 no se puede usar aquí" + +#: config/tc-i386.c:16934 +#, fuzzy, c-format +#| msgid "invalid -mtune= option: `%s'" +msgid "invalid -mx86-used-note= option: `%s'" +msgstr "opción -mtune= no válida: «%s»" -#: config/tc-i386.c:10064 +#: config/tc-i386.c:16957 msgid "no compiled in support for x86_64" msgstr "no se compiló el soporte para x86_64" -#: config/tc-i386.c:10084 +#: config/tc-i386.c:16976 msgid "no compiled in support for 32bit x86_64" msgstr "no se compiló el soporte para x86_64 de 32bit" -#: config/tc-i386.c:10088 -msgid "32bit x86_64 is only supported for ELF" -msgstr "x86_64 de 32bit sólo se admite para ELF" +#: config/tc-i386.c:16997 +#, fuzzy +#| msgid "no compiled in support for x86_64" +msgid "no compiled in support for ix86" +msgstr "no se compiló el soporte para x86_64" -#: config/tc-i386.c:10122 config/tc-i386.c:10206 +#: config/tc-i386.c:17030 config/tc-i386.c:17116 #, c-format msgid "invalid -march= option: `%s'" msgstr "opción -march= no válida: «%s»" -#: config/tc-i386.c:10216 config/tc-i386.c:10228 +#: config/tc-i386.c:17086 +#, fuzzy +#| msgid "Unrecognized dependency specifier %d\n" +msgid "Unrecognized vector size specifier ignored" +msgstr "No reconocido el especificador de dependencia %d\n" + +#: config/tc-i386.c:17126 config/tc-i386.c:17138 #, c-format msgid "invalid -mtune= option: `%s'" msgstr "opción -mtune= no válida: «%s»" -#: config/tc-i386.c:10237 +#: config/tc-i386.c:17147 #, c-format msgid "invalid -mmnemonic= option: `%s'" msgstr "opción -mmnemonic= no válida: «%s»" -#: config/tc-i386.c:10246 +#: config/tc-i386.c:17156 #, c-format msgid "invalid -msyntax= option: `%s'" msgstr "opción -msyntax= no válida: «%s»" -#: config/tc-i386.c:10273 +#: config/tc-i386.c:17184 #, c-format msgid "invalid -msse-check= option: `%s'" msgstr "opción -msse-check= no válida: «%s»" -#: config/tc-i386.c:10284 +#: config/tc-i386.c:17195 #, c-format msgid "invalid -moperand-check= option: `%s'" msgstr "opción -moperand-check= no válida: «%s»" -#: config/tc-i386.c:10293 +#: config/tc-i386.c:17204 #, c-format msgid "invalid -mavxscalar= option: `%s'" msgstr "opción -mavxscalar= no válida: «%s»" -#: config/tc-i386.c:10308 +#: config/tc-i386.c:17213 +#, fuzzy, c-format +#| msgid "invalid -mevexwig= option: `%s'" +msgid "invalid -mvexwig= option: `%s'" +msgstr "opción -mevexwig= no válida: «%s»" + +#: config/tc-i386.c:17228 #, c-format msgid "invalid -mevexlig= option: `%s'" msgstr "opción -mevexlig= inválido: «%s»" -#: config/tc-i386.c:10321 +#: config/tc-i386.c:17241 #, c-format msgid "invalid -mevexrcig= option: `%s'" msgstr "invalida opción -mevexrcig=: «%s»" -#: config/tc-i386.c:10330 +#: config/tc-i386.c:17250 #, c-format msgid "invalid -mevexwig= option: `%s'" msgstr "opción -mevexwig= no válida: «%s»" -#: config/tc-i386.c:10345 +#: config/tc-i386.c:17265 #, c-format msgid "invalid -momit-lock-prefix= option: `%s'" msgstr "opción -momit-lock-prefix= no válida: «%s»" -#: config/tc-i386.c:10354 +#: config/tc-i386.c:17274 #, c-format msgid "invalid -mfence-as-lock-add= option: `%s'" msgstr "opción -mfence-as-lock-add= no válida: «%s»" -#: config/tc-i386.c:10363 +#: config/tc-i386.c:17283 +#, fuzzy, c-format +#| msgid "invalid -mfence-as-lock-add= option: `%s'" +msgid "invalid -mlfence-after-load= option: `%s'" +msgstr "opción -mfence-as-lock-add= no válida: «%s»" + +#: config/tc-i386.c:17300 +#, fuzzy, c-format +#| msgid "invalid -mfence-as-lock-add= option: `%s'" +msgid "invalid -mlfence-before-indirect-branch= option: `%s'" +msgstr "opción -mfence-as-lock-add= no válida: «%s»" + +#: config/tc-i386.c:17314 +#, fuzzy, c-format +#| msgid "invalid -mfence-as-lock-add= option: `%s'" +msgid "invalid -mlfence-before-ret= option: `%s'" +msgstr "opción -mfence-as-lock-add= no válida: «%s»" + +#: config/tc-i386.c:17324 #, c-format msgid "invalid -mrelax-relocations= option: `%s'" msgstr "opción no válida -mrelax-relocations=: «%s»" -#: config/tc-i386.c:10486 +#: config/tc-i386.c:17353 #, c-format +msgid "invalid -malign-branch-boundary= value: %s" +msgstr "" + +#: config/tc-i386.c:17367 +#, fuzzy, c-format +#| msgid "invalid -momit-lock-prefix= option: `%s'" +msgid "invalid -malign-branch-prefix-size= value: %s" +msgstr "opción -momit-lock-prefix= no válida: «%s»" + +#: config/tc-i386.c:17394 +#, fuzzy, c-format +#| msgid "invalid -march= option: `%s'" +msgid "invalid -malign-branch= option: `%s'" +msgstr "opción -march= no válida: «%s»" + +#: config/tc-i386.c:17443 +#, fuzzy, c-format +#| msgid "invalid -msse-check= option: `%s'" +msgid "invalid -mtls-check= option: `%s'" +msgstr "opción -msse-check= no válida: «%s»" + +#: config/tc-i386.c:17569 +#, fuzzy, c-format +#| msgid "" +#| " -Q ignored\n" +#| " -V print assembler version number\n" +#| " -k ignored\n" msgid "" -" -Q ignored\n" +" -Qy, -Qn ignored\n" " -V print assembler version number\n" " -k ignored\n" msgstr "" @@ -8090,36 +9909,47 @@ msgstr "" " -V escribe el número de versión del ensamblador\n" " -k descartado\n" -#: config/tc-i386.c:10491 -#, c-format +#: config/tc-i386.c:17574 +#, fuzzy, c-format +#| msgid "" +#| " -n Do not optimize code alignment\n" +#| " -q quieten some warnings\n" msgid "" -" -n Do not optimize code alignment\n" +" -n do not optimize code alignment\n" +" -O{012s} attempt some code optimizations\n" " -q quieten some warnings\n" msgstr "" " -n No optimiza la alineamiento de código\n" " -q omite algunos avisos\n" -#: config/tc-i386.c:10495 +#: config/tc-i386.c:17579 #, c-format msgid " -s ignored\n" msgstr " -s se descarta\n" -#: config/tc-i386.c:10500 -#, c-format -msgid " --32/--64/--x32 generate 32bit/64bit/x32 code\n" +#: config/tc-i386.c:17584 +#, fuzzy, c-format +#| msgid " --32/--64/--x32 generate 32bit/64bit/x32 code\n" +msgid " --32/--64/--x32 generate 32bit/64bit/x32 object\n" msgstr " --32/--64/--x32 genera código 32bit/64bit/x32\n" -#: config/tc-i386.c:10504 +#: config/tc-i386.c:17587 +#, fuzzy, c-format +#| msgid " --32/--64/--x32 generate 32bit/64bit/x32 code\n" +msgid " --32/--64 generate 32bit/64bit object\n" +msgstr " --32/--64/--x32 genera código 32bit/64bit/x32\n" + +#: config/tc-i386.c:17592 #, c-format msgid " --divide do not treat `/' as a comment character\n" msgstr " --divide no trata `/' como un carácter de comentario\n" -#: config/tc-i386.c:10507 +#: config/tc-i386.c:17595 #, c-format msgid " --divide ignored\n" msgstr " --divide se descarta\n" -#: config/tc-i386.c:10510 +#: config/tc-i386.c:17598 #, c-format msgid "" " -march=CPU[,+EXTENSION...]\n" @@ -8128,70 +9958,113 @@ msgstr "" " -march=CPU[,+EXTENSIÓN...]\n" " genera código para el CPU y la EXTENSIÓN. CPU es uno de:\n" -#: config/tc-i386.c:10514 -#, c-format -msgid " EXTENSION is combination of:\n" +#: config/tc-i386.c:17602 +#, fuzzy, c-format +#| msgid " EXTENSION is combination of:\n" +msgid " EXTENSION is combination of (possibly \"no\"-prefixed):\n" msgstr " EXTENSIÓN es una combinación de:\n" -#: config/tc-i386.c:10517 +#: config/tc-i386.c:17605 #, c-format msgid " -mtune=CPU optimize for CPU, CPU is one of:\n" msgstr " -mtune=CPU optimiza para el CPU, donde CPU es uno de:\n" -#: config/tc-i386.c:10520 +#: config/tc-i386.c:17608 #, c-format msgid " -msse2avx encode SSE instructions with VEX prefix\n" msgstr " -msse2avx codifica instrucciones SSE con prefijo VEX\n" -#: config/tc-i386.c:10522 +#: config/tc-i386.c:17610 #, c-format msgid "" -" -msse-check=[none|error|warning]\n" +" -muse-unaligned-vector-move\n" +" encode aligned vector move as unaligned vector move\n" +msgstr "" + +#: config/tc-i386.c:17613 +#, fuzzy, c-format +#| msgid "" +#| " -msse-check=[none|error|warning]\n" +#| " check SSE instructions\n" +msgid "" +" -msse-check=[none|error|warning] (default: none)\n" " check SSE instructions\n" msgstr "" " -msse-check=[none|error|warning]\n" " revisa las instrucciones SSE\n" -#: config/tc-i386.c:10525 -#, c-format +#: config/tc-i386.c:17616 +#, fuzzy, c-format +#| msgid "" +#| " -moperand-check=[none|error|warning]\n" +#| " check operand combinations for validity\n" msgid "" -" -moperand-check=[none|error|warning]\n" +" -moperand-check=[none|error|warning] (default: warning)\n" " check operand combinations for validity\n" msgstr "" " -moperand-check=[none|error|warning]\n" " marca combinaciones operantes para validación\n" -#: config/tc-i386.c:10528 -#, c-format +#: config/tc-i386.c:17619 +#, fuzzy, c-format +#| msgid "" +#| " -mavxscalar=[128|256] encode scalar AVX instructions with specific vector\n" +#| " length\n" msgid "" -" -mavxscalar=[128|256] encode scalar AVX instructions with specific vector\n" +" -mavxscalar=[128|256] (default: 128)\n" +" encode scalar AVX instructions with specific vector\n" " length\n" msgstr "" " -mavxscalar=[128|256] codifica instrucciones AVX escalares con\n" -" una longitud vectorial específica\n" +" una longitud de vector específica\n" -#: config/tc-i386.c:10531 -#, c-format +#: config/tc-i386.c:17623 +#, fuzzy, c-format +#| msgid "" +#| " -mevexwig=[0|1] encode EVEX instructions with specific EVEX.W value\n" +#| " for EVEX.W bit ignored instructions\n" +msgid "" +" -mvexwig=[0|1] (default: 0)\n" +" encode VEX instructions with specific VEX.W value\n" +" for VEX.W bit ignored instructions\n" +msgstr "" +" -mevexwig=[0|1] codifica instrucciones EVEX con valor EVEX.W específico\n" +" para instrucciones bit EVEX.W ignoradas\n" + +#: config/tc-i386.c:17627 +#, fuzzy, c-format +#| msgid "" +#| " -mevexlig=[128|256|512] encode scalar EVEX instructions with specific vector\n" +#| " length\n" msgid "" -" -mevexlig=[128|256|512] encode scalar EVEX instructions with specific vector\n" +" -mevexlig=[128|256|512] (default: 128)\n" +" encode scalar EVEX instructions with specific vector\n" " length\n" msgstr "" " -mevexlig=[128|256|512] codifica instrucciones EVEX escalares con\n" -" longitud vectorial específica\n" +" longitud de vector específica\n" -#: config/tc-i386.c:10534 -#, c-format +#: config/tc-i386.c:17631 +#, fuzzy, c-format +#| msgid "" +#| " -mevexwig=[0|1] encode EVEX instructions with specific EVEX.W value\n" +#| " for EVEX.W bit ignored instructions\n" msgid "" -" -mevexwig=[0|1] encode EVEX instructions with specific EVEX.W value\n" +" -mevexwig=[0|1] (default: 0)\n" +" encode EVEX instructions with specific EVEX.W value\n" " for EVEX.W bit ignored instructions\n" msgstr "" " -mevexwig=[0|1] codifica instrucciones EVEX con valor EVEX.W específico\n" " para instrucciones bit EVEX.W ignoradas\n" -#: config/tc-i386.c:10537 -#, c-format +#: config/tc-i386.c:17635 +#, fuzzy, c-format +#| msgid "" +#| " -mevexrcig=[rne|rd|ru|rz]\n" +#| " encode EVEX instructions with specific EVEX.RC value\n" +#| " for SAE-only ignored instructions\n" msgid "" -" -mevexrcig=[rne|rd|ru|rz]\n" +" -mevexrcig=[rne|rd|ru|rz] (default: rne)\n" " encode EVEX instructions with specific EVEX.RC value\n" " for SAE-only ignored instructions\n" msgstr "" @@ -8199,57 +10072,92 @@ msgstr "" " codifica instrucciones EVEX con valor EVEX.RC específico\n" " para instrucciones ignoradas SAE-único\n" -#: config/tc-i386.c:10541 -#, c-format -msgid " -mmnemonic=[att|intel] use AT&T/Intel mnemonic\n" +#: config/tc-i386.c:17639 +#, fuzzy, c-format +#| msgid " -mmnemonic=[att|intel] use AT&T/Intel mnemonic\n" +msgid " -mmnemonic=[att|intel] " msgstr " -mmnemonic=[att|intel] usa mnemónicos AT&T/Intel\n" -#: config/tc-i386.c:10543 +#: config/tc-i386.c:17642 +#, c-format +msgid "(default: att)\n" +msgstr "" + +#: config/tc-i386.c:17644 #, c-format -msgid " -msyntax=[att|intel] use AT&T/Intel syntax\n" +msgid "(default: intel)\n" +msgstr "" + +#: config/tc-i386.c:17645 +#, fuzzy, c-format +#| msgid " emulate output (default %s)\n" +msgid " use AT&T/Intel mnemonic (AT&T syntax only)\n" +msgstr " emula la salida (por defecto %s)\n" + +#: config/tc-i386.c:17647 +#, fuzzy, c-format +#| msgid " -msyntax=[att|intel] use AT&T/Intel syntax\n" +msgid "" +" -msyntax=[att|intel] (default: att)\n" +" use AT&T/Intel syntax\n" msgstr " -msyntax=[att|intel] usa sintaxis AT&T/Intel\n" -#: config/tc-i386.c:10545 +#: config/tc-i386.c:17650 #, c-format msgid " -mindex-reg support pseudo index registers\n" msgstr " -mindex-reg admite registros de pseudo índice\n" -#: config/tc-i386.c:10547 +#: config/tc-i386.c:17652 #, c-format msgid " -mnaked-reg don't require `%%' prefix for registers\n" msgstr " -mnaked-reg no requiere el prefijo `%%' para registros\n" -#: config/tc-i386.c:10549 -#, c-format -msgid " -mold-gcc support old (<= 2.8.1) versions of gcc\n" -msgstr " -mold-gcc admite versiones antiguas de gcc (≤ 2.8.1)\n" - -#: config/tc-i386.c:10551 +#: config/tc-i386.c:17654 #, c-format msgid " -madd-bnd-prefix add BND prefix for all valid branches\n" msgstr "" -#: config/tc-i386.c:10553 +#: config/tc-i386.c:17657 #, c-format msgid " -mshared disable branch optimization for shared code\n" msgstr " -mshared desactiva rama optimizada para código compartido\n" -#: config/tc-i386.c:10556 +#: config/tc-i386.c:17659 +#, c-format +msgid " -mx86-used-note=[no|yes] " +msgstr "" + +#: config/tc-i386.c:17665 +#, fuzzy, c-format +#| msgid " -Z generate object file even after errors\n" +msgid " generate x86 used ISA and feature properties\n" +msgstr " -Z generar fichero objeto par tras errores\n" + +#: config/tc-i386.c:17669 #, c-format msgid " -mbig-obj generate big object files\n" msgstr " -mbig-obj genera ficheros objetos grandes\n" -#: config/tc-i386.c:10559 -#, c-format +#: config/tc-i386.c:17672 +#, fuzzy, c-format +#| msgid "" +#| " -mrelax-relocations=[no|yes]\n" +#| " generate relax relocations\n" msgid "" -" -momit-lock-prefix=[no|yes]\n" +" -momit-lock-prefix=[no|yes] (default: no)\n" " strip all lock prefixes\n" msgstr "" +" -mrelax-relocations=[no|sí]\n" +" genera reubicaciones relajadas\n" -#: config/tc-i386.c:10562 -#, c-format +#: config/tc-i386.c:17675 +#, fuzzy, c-format +#| msgid "" +#| " -mfence-as-lock-add=[no|yes]\n" +#| " encode lfence, mfence and sfence as\n" +#| " lock addl $0x0, (%%{re}sp)\n" msgid "" -" -mfence-as-lock-add=[no|yes]\n" +" -mfence-as-lock-add=[no|yes] (default: no)\n" " encode lfence, mfence and sfence as\n" " lock addl $0x0, (%%{re}sp)\n" msgstr "" @@ -8257,961 +10165,763 @@ msgstr "" " codifica lfence, mfence y sfence como\n" " bloqueo addl $0x0, (%%{re}sp\n" -#: config/tc-i386.c:10566 +#: config/tc-i386.c:17679 +#, fuzzy, c-format +#| msgid "invalid -mrelax-relocations= option: `%s'" +msgid " -mrelax-relocations=[no|yes] " +msgstr "opción no válida -mrelax-relocations=: «%s»" + +#: config/tc-i386.c:17685 +#, fuzzy, c-format +#| msgid "" +#| " -mrelax-relocations=[no|yes]\n" +#| " generate relax relocations\n" +msgid " generate relax relocations\n" +msgstr "" +" -mrelax-relocations=[no|sí]\n" +" genera reubicaciones relajadas\n" + +#: config/tc-i386.c:17688 +#, c-format +msgid " -mtls-check=[no|yes] " +msgstr "" + +#: config/tc-i386.c:17694 +#, fuzzy, c-format +#| msgid " EXTENSION is combination of:\n" +msgid " check TLS relocation\n" +msgstr " EXTENSIÓN es una combinación de:\n" + +#: config/tc-i386.c:17697 #, c-format msgid "" -" -mrelax-relocations=[no|yes]\n" -" generate relax relocations\n" +" -malign-branch-boundary=NUM (default: 0)\n" +" align branches within NUM byte boundary\n" +msgstr "" + +#: config/tc-i386.c:17700 +#, 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:17705 +#, c-format +msgid "" +" -malign-branch-prefix-size=NUM (default: 5)\n" +" align branches with NUM prefixes per instruction\n" +msgstr "" + +#: config/tc-i386.c:17708 +#, c-format +msgid "" +" -mbranches-within-32B-boundaries\n" +" align branches within 32 byte boundary\n" +msgstr "" + +#: config/tc-i386.c:17711 +#, fuzzy, c-format +#| msgid "" +#| " -mrelax-relocations=[no|yes]\n" +#| " generate relax relocations\n" +msgid "" +" -mlfence-after-load=[no|yes] (default: no)\n" +" generate lfence after load\n" msgstr "" " -mrelax-relocations=[no|sí]\n" " genera reubicaciones relajadas\n" -#: config/tc-i386.c:10569 +#: config/tc-i386.c:17714 #, c-format -msgid " -mamd64 accept only AMD64 ISA\n" +msgid "" +" -mlfence-before-indirect-branch=[none|all|register|memory] (default: none)\n" +" generate lfence before indirect near branch\n" +msgstr "" + +#: config/tc-i386.c:17717 +#, fuzzy, c-format +#| msgid "" +#| " -mrelax-relocations=[no|yes]\n" +#| " generate relax relocations\n" +msgid "" +" -mlfence-before-ret=[none|or|not|shl|yes] (default: none)\n" +" generate lfence before ret\n" +msgstr "" +" -mrelax-relocations=[no|sí]\n" +" genera reubicaciones relajadas\n" + +#: config/tc-i386.c:17720 +#, fuzzy, c-format +#| msgid " -mamd64 accept only AMD64 ISA\n" +msgid " -mamd64 accept only AMD64 ISA [default]\n" msgstr "" " -mamd64 acepta solo ISA AMD64\n" "\n" -#: config/tc-i386.c:10571 +#: config/tc-i386.c:17722 #, c-format msgid " -mintel64 accept only Intel64 ISA\n" msgstr " -mintel64 acepta solo ISA Intel64\n" -#: config/tc-i386.c:10612 +#: config/tc-i386.c:17761 #, c-format msgid "Intel MCU doesn't support `%s' architecture" msgstr "Intel MCU no admite «%s» como arquitectura" -#: config/tc-i386.c:10669 -msgid "Intel L1OM is 64bit only" -msgstr "Intel L1OM es solo 64bit" - -#: config/tc-i386.c:10675 -msgid "Intel K1OM is 64bit only" -msgstr "Intel K1OM es solo 64bit" +#: config/tc-i386.c:17769 +#, fuzzy +#| msgid "CFI is not supported for this target" +msgid "SCFI is not supported for this ABI" +msgstr "CFI no admitido en este objetivo" -#: config/tc-i386.c:10681 +#: config/tc-i386.c:17820 msgid "Intel MCU is 32bit only" msgstr "Intel MCU es solo 32bit" -#: config/tc-i386.c:10838 +#: config/tc-i386.c:17932 +#, fuzzy, c-format +#| msgid "invalid destination register" +msgid "invalid %s relocation against register" +msgstr "invalida registro destino" + +#: config/tc-i386.c:18069 msgid "symbol size computation overflow" msgstr "desbordamiento de tamaño simbólico computacional" -#: config/tc-i386.c:10906 config/tc-sparc.c:3959 +#: config/tc-i386.c:18148 config/tc-sparc.c:3856 #, c-format msgid "can not do %d byte pc-relative relocation" msgstr "no se puede hacer la reubicación relativa a pc de %d bytes" -#: config/tc-i386.c:10924 +#: config/tc-i386.c:18166 #, c-format msgid "can not do %d byte relocation" msgstr "no se puede hacer la reubicación de %d bytes" -#: config/tc-i386.c:10992 +#: config/tc-i386.c:18234 #, c-format msgid "cannot represent relocation type %s in x32 mode" msgstr "no se puede representar el tipo reubicado %s en modo x32" -#: config/tc-i386.c:11029 config/tc-s390.c:2598 +#: config/tc-i386.c:18275 config/tc-s390.c:2835 #, c-format msgid "cannot represent relocation type %s" msgstr "no se puede representar el tipo reubicado %s" -#: config/tc-i386.c:11146 +#: config/tc-i386.c:18410 msgid "bad .section directive: want a,l,w,x,M,S,G,T in string" -msgstr "directiva .section equivocada: se quiere a,l,w,x,M,S,G,T en la cadena" +msgstr "directiva .section incorrecta: se quiere a,l,w,x,M,S,G,T en la cadena" -#: config/tc-i386.c:11149 +#: config/tc-i386.c:18413 msgid "bad .section directive: want a,w,x,M,S,G,T in string" -msgstr "directiva .section equivocada: se quiere a,w,x,M,S,G,T en la cadena" +msgstr "directiva .section incorrecta: se quiere a,w,x,M,S,G,T en la cadena" -#: config/tc-i386.c:11168 +#: config/tc-i386.c:18423 msgid ".largecomm supported only in 64bit mode, producing .comm" -msgstr ".largecomm sólo se admite en modo de 64bit, se produce .comm" - -#: config/tc-i860.c:121 -msgid "Directive .dual available only with -mintel-syntax option" -msgstr "La directiva .dual sólo está disponible con la opción -mintel-syntax" - -#: config/tc-i860.c:131 -msgid "Directive .enddual available only with -mintel-syntax option" -msgstr "La directiva .enddual sólo es disponible con la opción -mintel-syntax" +msgstr ".largecomm solo se admite en modo de 64bit, se produce .comm" -#: config/tc-i860.c:144 -msgid "Directive .atmp available only with -mintel-syntax option" -msgstr "La directiva .atmp sólo es disponible con la opción -mintel-syntax" - -#: config/tc-i860.c:166 config/tc-i860.c:170 -msgid "Unknown temporary pseudo register" -msgstr "Pseudo registro temporal desconocido" - -#: config/tc-i860.c:246 -msgid "Defective assembler. No assembly attempted." -msgstr "Ensamblador defectuoso. No se intentó ensamblar." - -#: config/tc-i860.c:392 config/tc-i860.c:938 config/tc-m68k.c:3917 -#: config/tc-m68k.c:3949 config/tc-sparc.c:3199 -msgid "failed sanity check." -msgstr "falló la prueba de sanidad." - -#: config/tc-i860.c:399 -#, c-format -msgid "Expanded opcode after delayed branch: `%s'" -msgstr "Código operacional expandido tras la ramificación retardada: «%s»" - -#: config/tc-i860.c:403 -#, c-format -msgid "Expanded opcode in dual mode: `%s'" -msgstr "Código operacional expandido en modo dual: «%s»" - -#: config/tc-i860.c:407 -#, c-format -msgid "An instruction was expanded (%s)" -msgstr "Se expandió una instrucción (%s)" - -# ¿pipeline tiene traducción al español? cfuga -#: config/tc-i860.c:674 -msgid "Pipelined instruction: fsrc1 = fdest" -msgstr "Instrucción en `pipeline': fsrc1 = fdest" - -#: config/tc-i860.c:877 config/tc-i860.c:884 config/tc-i860.c:891 -msgid "Assembler does not yet support PIC" -msgstr "El ensamblador aún no admite PIC" - -#: config/tc-i860.c:955 -#, c-format -msgid "Illegal operands for %s" -msgstr "Operandos ilegales para %s" - -#: config/tc-i860.c:972 -#, c-format -msgid "'d.%s' must be 8-byte aligned" -msgstr "'d.%s' se debe alinear a 8-bytes" - -#: config/tc-i860.c:980 -#, c-format -msgid "Prefix 'd.' invalid for instruction `%s'" -msgstr "Prefijo 'd.' inválido para la instrucción «%s»" - -#: config/tc-i860.c:1034 config/tc-ip2k.c:230 -msgid "relaxation not supported\n" -msgstr "no se admite la relajación\n" - -#: config/tc-i860.c:1133 -#, c-format -msgid "" -" -EL\t\t\t generate code for little endian mode (default)\n" -" -EB\t\t\t generate code for big endian mode\n" -" -mwarn-expand\t\t warn if pseudo operations are expanded\n" -" -mxp\t\t\t enable i860XP support (disabled by default)\n" -" -mintel-syntax\t enable Intel syntax (default to AT&T/SVR4)\n" -msgstr "" -" -EL\t\t\t genera código para el modo little endian (por defecto)\n" -" -EB\t\t\t genera código para el modo big endian\n" -" -mwarn-expand\t\t avisa si se expanden las pseudo operaciones\n" -" -mxp\t\t\t activa el soporte para i860XP (desactivado por defecto)\n" -" -mintel-syntax\t activa la sintaxis Intel (AT&T/SVR4 por defecto)\n" - -#. SVR4 compatibility flags. -#: config/tc-i860.c:1141 -#, c-format -msgid "" -" -V\t\t\t print assembler version number\n" -" -Qy, -Qn\t\t ignored\n" -msgstr "" -" -V\t\t\t escrive el número de versión del ensamblador\n" -" -Qy, -Qn\t\t se descarta\n" - -#: config/tc-i860.c:1204 -msgid "This immediate requires 0 MOD 2 alignment" -msgstr "Este inmediato requiere alineamiento 0 MOD 2" - -#: config/tc-i860.c:1207 -msgid "This immediate requires 0 MOD 4 alignment" -msgstr "Este inmediato requiere alineamiento 0 MOD 4" - -#: config/tc-i860.c:1210 -msgid "This immediate requires 0 MOD 8 alignment" -msgstr "Este inmediato requiere alineamiento 0 MOD 8" - -#: config/tc-i860.c:1213 -msgid "This immediate requires 0 MOD 16 alignment" -msgstr "Este inmediato requiere alineamiento 0 MOD 16" - -#: config/tc-i860.c:1308 -msgid "5-bit immediate too large" -msgstr "5-bit inmediato demasiado grande" - -#: config/tc-i860.c:1311 -msgid "5-bit field must be absolute" -msgstr "5-bit de campo debe ser absoluto" - -#: config/tc-i860.c:1356 config/tc-i860.c:1379 -msgid "A branch offset requires 0 MOD 4 alignment" -msgstr "Un desplazamiento de ramificación requiere alineamiento 0 MOD 4" - -#: config/tc-i860.c:1400 -#, c-format -msgid "Unrecognized fix-up (0x%08lx)" -msgstr "No reconocida la compostura (0x%08lx)" - -#: config/tc-i960.c:483 -#, c-format -msgid "Hashing returned \"%s\"." -msgstr "Dispersión devolvió «%s»." - -#: config/tc-i960.c:579 config/tc-i960.c:1110 -msgid "expression syntax error" -msgstr "error sintáctico en la expresión" - -#: config/tc-i960.c:616 -msgid "attempt to branch into different segment" -msgstr "se intentó ramificar en un segmento diferente" - -#: config/tc-i960.c:620 -#, c-format -msgid "target of %s instruction must be a label" -msgstr "el objetivo de la instrucción %s debe ser una etiqueta" - -#: config/tc-i960.c:730 -msgid "unaligned register" -msgstr "registro desalineado" - -#: config/tc-i960.c:752 -msgid "no such sfr in this architecture" -msgstr "no hay un sfr en esta arquitectura" - -#: config/tc-i960.c:790 -msgid "illegal literal" -msgstr "literal ilegal" - -#: config/tc-i960.c:940 -msgid "invalid index register" -msgstr "registro índice inválido" - -#: config/tc-i960.c:963 -msgid "invalid scale factor" -msgstr "factor de escala inválido" - -#: config/tc-i960.c:1187 -msgid "architecture of opcode conflicts with that of earlier instruction(s)" -msgstr "la arquitectura del código operacional tiene conflictos con alguno de una(s) instrucción(es) anterior(es)" - -#: config/tc-i960.c:1421 config/tc-xtensa.c:12784 -msgid "too many operands" -msgstr "demasiados operandos" - -#. We never moved: there was no opcode either! -#: config/tc-i960.c:1469 -msgid "missing opcode" -msgstr "código operacional ausente" - -#: config/tc-i960.c:1609 -msgid "branch prediction invalid on this opcode" -msgstr "predicción de ramificación no válida en este código operacional" - -#: config/tc-i960.c:1647 -#, c-format -msgid "invalid opcode, \"%s\"." -msgstr "código operacional inválido, «%s»." - -#: config/tc-i960.c:1649 -#, c-format -msgid "improper number of operands. Expecting %d, got %d" -msgstr "número impropio de operandos. Esperando %d, obtuvo %d" - -#: config/tc-i960.c:1750 -#, c-format -msgid "Fixup of %ld too large for field width of %d" -msgstr "La compostura de %ld es demasiado grande para el campo de anchura %d" - -#: config/tc-i960.c:1860 -#, c-format -msgid "invalid architecture %s" -msgstr "arquitectura %s no válida" - -#: config/tc-i960.c:1880 -#, c-format -msgid "I960 options:\n" -msgstr "I960 con opciones:\n" - -#: config/tc-i960.c:1883 -#, c-format -msgid "" -"\n" -"\t\t\tspecify variant of 960 architecture\n" -"-b\t\t\tadd code to collect statistics about branches taken\n" -"-link-relax\t\tpreserve individual alignment directives so linker\n" -"\t\t\tcan do relaxing (b.out format only)\n" -"-no-relax\t\tdon't alter compare-and-branch instructions for\n" -"\t\t\tlong displacements\n" -msgstr "" -"\n" -"\t\t\t especifica la variante de la arquitectura 960\n" -"-b\t\t\t añade código para recolectar estadísticas sobre las ramificaciones tomadas\n" -"-link-relax\t\t preserva las directivas de alineamiento individuales del enlazador so\n" -"\t\t\t se puede relajar (sólo en el formato b.out)\n" -"-no-relax\t\t no altera las instrucciones comparar-y-ramificar para\n" -"\t\t\t desubicaciones largas\n" - -#: config/tc-i960.c:2145 -msgid "should have 1 or 2 operands" -msgstr "debe tener 1 o 2 operandos" - -#: config/tc-i960.c:2153 config/tc-i960.c:2168 -#, c-format -msgid "Redefining leafproc %s" -msgstr "Redefiniendo el proceso hoja %s" - -#: config/tc-i960.c:2198 -msgid "should have two operands" -msgstr "debe tener dos operandos" - -#: config/tc-i960.c:2208 -msgid "'entry_num' must be absolute number in [0,31]" -msgstr "'entry_num' debe ser un número absoluto en [0,31]" - -#: config/tc-i960.c:2216 -#, c-format -msgid "Redefining entrynum for sysproc %s" -msgstr "Redefiniendo el número de entrada para el proceso del sistema %s" - -#. Should not happen: see block comment above. -#: config/tc-i960.c:2316 -#, c-format -msgid "Trying to 'bal' to %s" -msgstr "Tratando hacer 'bal' a %s" - -#: config/tc-i960.c:2326 -msgid "Looks like a proc, but can't tell what kind.\n" -msgstr "Se ve como un proc, no se puede saber de qué tipo.\n" - -#: config/tc-i960.c:2344 -msgid "big endian mode is not supported" -msgstr "no se admite el modo big endian" - -#: config/tc-i960.c:2346 -#, c-format -msgid "ignoring unrecognized .endian type `%s'" -msgstr "ignorando tipo no reconocido .endian «%s»" - -#: config/tc-i960.c:2391 -msgid "can't use COBR format with external label" -msgstr "no se puede utilizar el formato COBR con una etiqueta externa" - -#: config/tc-i960.c:2566 -msgid "option --link-relax is only supported in b.out format" -msgstr "opción --link-relax está admitido únicamente en formato b.out" - -#: config/tc-i960.c:2593 -#, c-format -msgid "No 'bal' entry point for leafproc %s" -msgstr "No hay un punto de entrada 'bal' para el proceso hoja %s" - -#: config/tc-ia64.c:872 +#: config/tc-ia64.c:869 msgid "bad .section directive: want a,o,s,w,x,M,S,G,T in string" -msgstr "directiva .section equivocada: se quiere a,o,s,w,x,M,S,G,T en la cadena" +msgstr "directiva .section incorrecta: se quiere a,o,s,w,x,M,S,G,T en la cadena" -#: config/tc-ia64.c:924 +#: config/tc-ia64.c:921 msgid "Size of frame exceeds maximum of 96 registers" msgstr "El tamaño del marco excede el máximo de 96 registros" -#: config/tc-ia64.c:929 +#: config/tc-ia64.c:926 msgid "Size of rotating registers exceeds frame size" msgstr "El tamaño de los registros rotantes excede el tamaño del marco" -#: config/tc-ia64.c:1016 +#: config/tc-ia64.c:1013 msgid "Unwind directive not followed by an instruction." msgstr "La directiva de desenredo no está seguida por una instrucción." -#: config/tc-ia64.c:1025 config/tc-ia64.c:7610 +#: config/tc-ia64.c:1022 config/tc-ia64.c:7585 msgid "qualifying predicate not followed by instruction" msgstr "el predicado calificador no está seguido por una instrucción" -#: config/tc-ia64.c:1073 +#: config/tc-ia64.c:1070 msgid "expected ',' after section name" msgstr "esperaba ',' tras nombre de sección" -#: config/tc-ia64.c:1108 +#: config/tc-ia64.c:1105 msgid "expected ',' after symbol name" -msgstr "esperado ',' tras nombre simbólico" +msgstr "se esperaba ',' tras nombre de símbolo" -#: config/tc-ia64.c:1132 +#: config/tc-ia64.c:1129 msgid "expected ',' after symbol size" -msgstr "esperado ',' tras tamaño simbólico" +msgstr "se esperaba ',' tras tamaño de símbolo" -#: config/tc-ia64.c:1215 config/tc-ia64.c:1249 +#: config/tc-ia64.c:1212 config/tc-ia64.c:1246 msgid "record type is not valid" msgstr "el tipo de registro no es válido" -#: config/tc-ia64.c:1318 +#: config/tc-ia64.c:1315 msgid "Invalid record type for P3 format." msgstr "Tipo de registro inválido para el formato P3." -#: config/tc-ia64.c:1354 +#: config/tc-ia64.c:1351 msgid "Invalid record type for format P6" msgstr "Tipo de registro inválido para el formato P6" -#: config/tc-ia64.c:1534 config/tc-ia64.c:1586 +#: config/tc-ia64.c:1531 config/tc-ia64.c:1583 msgid "Invalid record type for format B1" msgstr "Tipo de registro inválido para el formato B1" -#: config/tc-ia64.c:1619 +#: config/tc-ia64.c:1616 msgid "Invalid record type for format X1" msgstr "Tipo de registro inválido para el formato X1" -#: config/tc-ia64.c:1661 +#: config/tc-ia64.c:1658 msgid "Invalid record type for format X3" msgstr "Tipo de registro inválido para el formato X3" -#: config/tc-ia64.c:1699 +#: config/tc-ia64.c:1696 msgid "Previous .save incomplete" msgstr ".save previo está incompleto" -#: config/tc-ia64.c:2524 +#: config/tc-ia64.c:2519 msgid "spill_mask record unimplemented." msgstr "no se admite el registro spill_mask." -#: config/tc-ia64.c:2581 +#: config/tc-ia64.c:2576 msgid "record_type_not_valid" msgstr "tipo_de_registro_no_valido" -#: config/tc-ia64.c:2665 +#: config/tc-ia64.c:2660 msgid "Ignoring attempt to spill beyond end of region" msgstr "Se descarta el intento de derramar más allá del fin de la región" -#: config/tc-ia64.c:2724 +#: config/tc-ia64.c:2719 msgid "Only constant space allocation is supported" msgstr "Sólo se admite el alojamiento de espacio constante" -#: config/tc-ia64.c:2738 +#: config/tc-ia64.c:2733 msgid "Only constant offsets are supported" msgstr "Sólo se admiten los desplazamientos constantes" -#: config/tc-ia64.c:2762 +#: config/tc-ia64.c:2757 msgid "Section switching in code is not supported." -msgstr "No se admite el cambio seccional en código." +msgstr "No se admite el cambio de sección en código." -#: config/tc-ia64.c:2804 +#: config/tc-ia64.c:2799 msgid "Insn slot not set in unwind record." msgstr "Ranura insn no especifica un registro desenredado." -#: config/tc-ia64.c:2878 +#: config/tc-ia64.c:2873 msgid "frgr_mem record before region record!" msgstr "¡Registro frgr_mem antes del registro de región!" -#: config/tc-ia64.c:2889 +#: config/tc-ia64.c:2884 msgid "fr_mem record before region record!" msgstr "¡Registro fr_mem antes del registro de región!" -#: config/tc-ia64.c:2898 +#: config/tc-ia64.c:2893 msgid "gr_mem record before region record!" msgstr "¡Registro gr_mem antes del registro de región!" -#: config/tc-ia64.c:2907 +#: config/tc-ia64.c:2902 msgid "br_mem record before region record!" msgstr "¡Registro br_mem antes del registro de región!" -#: config/tc-ia64.c:2917 +#: config/tc-ia64.c:2912 msgid "gr_gr record before region record!" msgstr "¡Registro gr_gr antes del registro de región!" -#: config/tc-ia64.c:2925 +#: config/tc-ia64.c:2920 msgid "br_gr record before region record!" msgstr "¡Registro br_gr antes del registro de región!" -#: config/tc-ia64.c:3043 +#: config/tc-ia64.c:3038 #, c-format msgid "First operand to .%s must be a predicate" msgstr "El primer operando de .%s debe ser un predicado" -#: config/tc-ia64.c:3047 +#: config/tc-ia64.c:3042 #, c-format msgid "Pointless use of p0 as first operand to .%s" msgstr "Uso sin sentido de p0 como el primer operando de .%s" -#: config/tc-ia64.c:3103 +#: config/tc-ia64.c:3098 #, c-format msgid "Operand %d to .%s must be a preserved register" msgstr "Operando %d de .%s debe ser un registro preservado" -#: config/tc-ia64.c:3139 +#: config/tc-ia64.c:3134 #, c-format msgid "Operand %d to .%s must be a writable register" msgstr "Operandos %d de .%s debe ser un registro modificable" -#: config/tc-ia64.c:3163 +#: config/tc-ia64.c:3158 #, c-format msgid "Radix `%s' unsupported or invalid" msgstr "No se admite el radical «%s» o es inválido" -#: config/tc-ia64.c:3193 config/tc-ia64.c:3198 +#: config/tc-ia64.c:3188 config/tc-ia64.c:3193 #, c-format msgid ".%s outside of %s" msgstr ".%s externo de %s" -#: config/tc-ia64.c:3284 +#: config/tc-ia64.c:3279 msgid "Tags on unwind pseudo-ops aren't supported, yet" msgstr "Aún no se admiten etiquetas en los pseudo-operadores de desenredo" -#: config/tc-ia64.c:3306 +#: config/tc-ia64.c:3301 msgid "First operand to .fframe must be a constant" msgstr "El primer operando de .fframe debe ser una constante" -#: config/tc-ia64.c:3326 +#: config/tc-ia64.c:3321 msgid "First operand to .vframe must be a general register" msgstr "El primer operando de .vfram debe ser un registro general" -#: config/tc-ia64.c:3334 +#: config/tc-ia64.c:3329 msgid "Operand of .vframe contradicts .prologue" msgstr "Operando de .vframe contradice a .prologue" -#: config/tc-ia64.c:3344 +#: config/tc-ia64.c:3339 msgid ".vframepsp is meaningless, assuming .vframesp was meant" msgstr ".vframepsp no tiene significado, se asume que se quería .vframesp" -#: config/tc-ia64.c:3352 +#: config/tc-ia64.c:3347 msgid "Operand to .vframesp must be a constant (sp-relative offset)" msgstr "Operando de .vframesp debe ser una constante (desplazamiento relativo al sp)" -#: config/tc-ia64.c:3379 +#: config/tc-ia64.c:3374 msgid "First operand to .save not a register" msgstr "El primer operando de .save no debe ser un registro" -#: config/tc-ia64.c:3385 +#: config/tc-ia64.c:3380 msgid "Second operand to .save not a valid register" msgstr "El segundo operando de .save no es un registro válido" -#: config/tc-ia64.c:3416 config/tc-ia64.c:3427 config/tc-ia64.c:3435 +#: config/tc-ia64.c:3411 config/tc-ia64.c:3422 config/tc-ia64.c:3430 msgid "Second operand of .save contradicts .prologue" msgstr "El segundo operando de .save contradice a .prologue" -#: config/tc-ia64.c:3442 +#: config/tc-ia64.c:3437 msgid "First operand to .save not a valid register" msgstr "El primer operando de .save no es un registro válido" -#: config/tc-ia64.c:3460 +#: config/tc-ia64.c:3455 msgid "First operand to .restore must be stack pointer (sp)" msgstr "El primer operando de .restore debe ser un puntero de pila (sp)" -#: config/tc-ia64.c:3469 +#: config/tc-ia64.c:3464 msgid "Second operand to .restore must be a constant >= 0" msgstr "El segundo operando de .restore debe ser una constante >= 0" -#: config/tc-ia64.c:3479 +#: config/tc-ia64.c:3474 #, c-format msgid "Epilogue count of %lu exceeds number of nested prologues (%u)" msgstr "La cuenta de epílogo de %lu excede el número de prólogos anidados (%u)" -#: config/tc-ia64.c:3565 +#: config/tc-ia64.c:3560 #, c-format msgid "Illegal section name `%s' (causes unwind section name clash)" -msgstr "Nombre seccional «%s» ilegal (causa una colisión con el nombre seccional de desenredo)" +msgstr "Nombre de sección «%s» ilegal (causa una colisión con el nombre de sección de desenredo)" -#: config/tc-ia64.c:3742 +#: config/tc-ia64.c:3735 msgid "First operand to .altrp not a valid branch register" msgstr "El primer operando de .altrp no es un registro de ramificación válido" -#: config/tc-ia64.c:3771 +#: config/tc-ia64.c:3764 #, c-format msgid "First operand to .%s not a register" msgstr "El primer operando de .%s no es un registro" -#: config/tc-ia64.c:3776 +#: config/tc-ia64.c:3769 #, c-format msgid "Second operand to .%s not a constant" msgstr "El segundo operando de .%s no es una constante" -#: config/tc-ia64.c:3843 +#: config/tc-ia64.c:3836 #, c-format msgid "First operand to .%s not a valid register" msgstr "El primer operando de .%s no es un registro válido" -#: config/tc-ia64.c:3866 +#: config/tc-ia64.c:3859 msgid "First operand to .save.g must be a positive 4-bit constant" msgstr "El primer operando de .save.g debe ser una constante positiva de 4-bits" -#: config/tc-ia64.c:3879 +#: config/tc-ia64.c:3872 msgid "Second operand to .save.g must be a general register" msgstr "El segundo operando de .save.g debe ser un registro general" -#: config/tc-ia64.c:3884 +#: config/tc-ia64.c:3877 #, c-format msgid "Second operand to .save.g must be the first of %d general registers" msgstr "El segundo operando de .save.g debe ser el primero de %d registros generales" -#: config/tc-ia64.c:3907 +#: config/tc-ia64.c:3900 msgid "Operand to .save.f must be a positive 20-bit constant" msgstr "Operando de .save.f debe ser una constante positiva de 20-bits" -#: config/tc-ia64.c:3930 +#: config/tc-ia64.c:3923 msgid "First operand to .save.b must be a positive 5-bit constant" msgstr "El primer operando de .save.b debe ser una constante positiva de 5-bits" -#: config/tc-ia64.c:3943 +#: config/tc-ia64.c:3936 msgid "Second operand to .save.b must be a general register" msgstr "El segundo operando de .save.b debe ser un registro general" -#: config/tc-ia64.c:3948 +#: config/tc-ia64.c:3941 #, c-format msgid "Second operand to .save.b must be the first of %d general registers" msgstr "El segundo operando de .save.b debe ser el primero de %d registros generales" -#: config/tc-ia64.c:3974 +#: config/tc-ia64.c:3967 msgid "First operand to .save.gf must be a non-negative 4-bit constant" msgstr "El primer operando de .save.gf debe ser una constante de 4-bits que no sea negativa" -#: config/tc-ia64.c:3982 +#: config/tc-ia64.c:3975 msgid "Second operand to .save.gf must be a non-negative 20-bit constant" msgstr "El segundo operando de .save.gf debe ser una constante de 20-bits que no sea negativa" -#: config/tc-ia64.c:3990 +#: config/tc-ia64.c:3983 msgid "Operands to .save.gf may not be both zero" msgstr "Ambos operandos de .save.gf no pueden ser cero al mismo tiempo" -#: config/tc-ia64.c:4007 +#: config/tc-ia64.c:4000 msgid "Operand to .spill must be a constant" msgstr "Operando de .spill debe ser una constante" -#: config/tc-ia64.c:4076 +#: config/tc-ia64.c:4069 #, c-format msgid "Operand %d to .%s must be a constant" msgstr "Operando %d de .%s debe ser una constante" -#: config/tc-ia64.c:4097 +#: config/tc-ia64.c:4090 #, c-format msgid "Missing .label_state %ld" msgstr "Ausente .label_state %ld" -#: config/tc-ia64.c:4151 +#: config/tc-ia64.c:4144 msgid "Operand to .label_state must be a constant" msgstr "Operando de .label_state debe ser una constante" -#: config/tc-ia64.c:4170 +#: config/tc-ia64.c:4163 msgid "Operand to .copy_state must be a constant" msgstr "Operando de .copy_state debe ser una constante" -#: config/tc-ia64.c:4193 +#: config/tc-ia64.c:4186 msgid "First operand to .unwabi must be a constant" msgstr "El primer operando de .unwabi debe ser una constante" -#: config/tc-ia64.c:4199 +#: config/tc-ia64.c:4192 msgid "Second operand to .unwabi must be a constant" msgstr "El segundo operando de .unwabi debe ser una constante" -#: config/tc-ia64.c:4234 +#: config/tc-ia64.c:4226 msgid "Missing .endp after previous .proc" msgstr "Ausente .endp tras .proc previo" -#: config/tc-ia64.c:4252 +#: config/tc-ia64.c:4243 msgid "Empty argument of .proc" msgstr "Argumento vacío de .proc" -#: config/tc-ia64.c:4257 +#: config/tc-ia64.c:4248 #, c-format msgid "`%s' was already defined" msgstr "«%s» ya está definida" -#: config/tc-ia64.c:4300 +#: config/tc-ia64.c:4291 msgid "Initial .body should precede any instructions" msgstr "El .body inicial debe preceder a cualquier instrucción" -#: config/tc-ia64.c:4319 +#: config/tc-ia64.c:4310 msgid ".prologue within prologue" msgstr ".prologue dentro del prólogo" -#: config/tc-ia64.c:4324 +#: config/tc-ia64.c:4315 msgid "Initial .prologue should precede any instructions" msgstr "El .prologue inicial debe preceder a cualquier instrucción" -#: config/tc-ia64.c:4334 +#: config/tc-ia64.c:4325 msgid "First operand to .prologue must be a positive 4-bit constant" msgstr "El primer operando de .prologue debe ser una constante positiva de 4-bits" -#: config/tc-ia64.c:4336 +#: config/tc-ia64.c:4327 msgid "Pointless use of zero first operand to .prologue" msgstr "Uso sin sentido del primer operando en cero de .prologue" -#: config/tc-ia64.c:4352 +#: config/tc-ia64.c:4343 msgid "Using a constant as second operand to .prologue is deprecated" msgstr "Utilizando una constante como el segundo operando de .prologue es obsoleto" -#: config/tc-ia64.c:4358 +#: config/tc-ia64.c:4349 msgid "Second operand to .prologue must be a general register" msgstr "El segundo operando de .prologue debe ser un registro general" -#: config/tc-ia64.c:4363 +#: config/tc-ia64.c:4354 #, c-format msgid "Second operand to .prologue must be the first of %d general registers" msgstr "El segundo operando de .prologue debe ser el primero de %d registros generales" -#: config/tc-ia64.c:4475 +#: config/tc-ia64.c:4467 #, c-format msgid "`%s' was not defined within procedure" msgstr "«%s» no se definió dentro del procedimiento" -#: config/tc-ia64.c:4511 +#: config/tc-ia64.c:4502 msgid "Empty argument of .endp" msgstr "Argumento vacío para .endp" -#: config/tc-ia64.c:4525 +#: config/tc-ia64.c:4516 #, c-format msgid "`%s' was not specified with previous .proc" msgstr "«%s» no se especificó con el .proc previo" -#: config/tc-ia64.c:4540 +#: config/tc-ia64.c:4531 #, c-format msgid "`%s' should be an operand to this .endp" msgstr "«%s» debe ser un operando para este .endp" -#: config/tc-ia64.c:4581 config/tc-ia64.c:4902 config/tc-ia64.c:5211 +#: config/tc-ia64.c:4572 config/tc-ia64.c:4879 config/tc-ia64.c:5185 msgid "Comma expected" msgstr "Se esperaba una coma" -#: config/tc-ia64.c:4621 +#: config/tc-ia64.c:4612 msgid "Expected '['" msgstr "Se esperaba '['" -#: config/tc-ia64.c:4630 config/tc-ia64.c:7744 +#: config/tc-ia64.c:4621 config/tc-ia64.c:7719 msgid "Expected ']'" msgstr "Se esperaba ']'" -#: config/tc-ia64.c:4635 +#: config/tc-ia64.c:4626 msgid "Number of elements must be positive" msgstr "El número de elementos debe ser positivos" -#: config/tc-ia64.c:4646 +#: config/tc-ia64.c:4637 #, c-format msgid "Used more than the declared %d rotating registers" msgstr "Se usaron más registros rotantes que los %d declarados" -#: config/tc-ia64.c:4654 +#: config/tc-ia64.c:4645 msgid "Used more than the available 96 rotating registers" msgstr "Se usaron más registros rotantes que los 96 disponibles" -#: config/tc-ia64.c:4661 +#: config/tc-ia64.c:4652 msgid "Used more than the available 48 rotating registers" msgstr "Se usaron más registros rotantes que los 48 disponibles" -#: config/tc-ia64.c:4689 +#: config/tc-ia64.c:4675 #, c-format msgid "Attempt to redefine register set `%s'" msgstr "Se intenta redefinir el conjunto de registros «%s»" -#: config/tc-ia64.c:4754 +#: config/tc-ia64.c:4739 #, c-format msgid "Unknown psr option `%s'" msgstr "Opción ‘psr’ desconocida «%s»" -#: config/tc-ia64.c:4788 -msgid "Missing section name" -msgstr "Ausente el nombre seccional" - -#: config/tc-ia64.c:4797 +#: config/tc-ia64.c:4774 msgid "Comma expected after section name" -msgstr "Se esperaba una coma tras nombre seccional" +msgstr "Se esperaba una coma tras nombre de sección" -#: config/tc-ia64.c:4808 +#: config/tc-ia64.c:4785 msgid "Creating sections with .xdataN/.xrealN/.xstringZ is deprecated." msgstr "Crear secciones con .xdataN/.xrealN/.xstringZ es obsoleto." -#: config/tc-ia64.c:4897 +#: config/tc-ia64.c:4874 msgid "Register name expected" msgstr "Se esperaba un nombre de registro" -#: config/tc-ia64.c:4910 +#: config/tc-ia64.c:4887 msgid "Register value annotation ignored" msgstr "Se descarta la anotación del valor del registro" -#: config/tc-ia64.c:4949 +#: config/tc-ia64.c:4926 msgid "Directive invalid within a bundle" msgstr "Directiva no válida dentro de una agrupación" -#: config/tc-ia64.c:5043 +#: config/tc-ia64.c:5020 msgid "Missing predicate relation type" msgstr "Ausente el tipo de relación del predicado" -#: config/tc-ia64.c:5049 +#: config/tc-ia64.c:5026 msgid "Unrecognized predicate relation type" msgstr "No reconocido el tipo de relación de predicado" -#: config/tc-ia64.c:5095 +#: config/tc-ia64.c:5072 msgid "Bad register range" -msgstr "Rango de registro equivocado" +msgstr "Rango de registro incorrecto" -#: config/tc-ia64.c:5104 config/tc-ia64.c:7690 +#: config/tc-ia64.c:5081 config/tc-ia64.c:7665 msgid "Predicate register expected" msgstr "Se esperaba un registro de predicado" -#: config/tc-ia64.c:5109 +#: config/tc-ia64.c:5086 msgid "Duplicate predicate register ignored" msgstr "Se descarta el registro de predicado duplicado" -#: config/tc-ia64.c:5125 +#: config/tc-ia64.c:5102 msgid "Predicate source and target required" msgstr "Se requieren el predicado fuente y destino" -#: config/tc-ia64.c:5127 config/tc-ia64.c:5139 +#: config/tc-ia64.c:5104 config/tc-ia64.c:5116 msgid "Use of p0 is not valid in this context" msgstr "El uso de p0 no es válido en este contexto" -#: config/tc-ia64.c:5134 +#: config/tc-ia64.c:5111 msgid "At least two PR arguments expected" msgstr "Se esperaban al menos dos argumentos PR" -#: config/tc-ia64.c:5148 +#: config/tc-ia64.c:5125 msgid "At least one PR argument expected" msgstr "Se esperaba al menos un argumento PR" -#: config/tc-ia64.c:5182 -#, c-format -msgid "Inserting \"%s\" into entry hint table failed: %s" -msgstr "Falló la inserción de «%s» en la distribución de entrada de pistas: %s" +#: config/tc-ia64.c:5157 +#, fuzzy, c-format +#| msgid "duplicate instruction %s" +msgid "duplicate entry hint %s" +msgstr "instrucción duplicada %s" #. FIXME -- need 62-bit relocation type -#: config/tc-ia64.c:5662 +#: config/tc-ia64.c:5632 msgid "62-bit relocation not yet implemented" msgstr "la reubicación de 62-bits aún no está implementada" #. 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:5718 msgid "lower 16 bits of mask ignored" msgstr "16 bit por debajo de máscara descartados" -#: config/tc-ia64.c:5979 +#: config/tc-ia64.c:5947 msgid "stride must be a multiple of 64; lower 6 bits ignored" msgstr "zancada debe ser un múltiplo de 64, menor que 6 bits descartados" -#: config/tc-ia64.c:6097 +#: config/tc-ia64.c:6066 msgid "Expected separator `='" msgstr "Se esperaba el separador `='" -#: config/tc-ia64.c:6131 +#: config/tc-ia64.c:6102 msgid "Duplicate equal sign (=) in instruction" msgstr "Signo igual (=) duplicado en la instrucción" -#: config/tc-ia64.c:6138 +#: config/tc-ia64.c:6109 #, c-format msgid "Illegal operand separator `%c'" msgstr "Separador ilegal de operando `%c'" -#: config/tc-ia64.c:6253 +#: config/tc-ia64.c:6224 #, c-format msgid "Operand %u of `%s' should be %s" msgstr "Operando %u de «%s» debería ser %s" -#: config/tc-ia64.c:6257 +#: config/tc-ia64.c:6228 msgid "Wrong number of output operands" -msgstr "Número equivocado de operandos de salida" +msgstr "Número incorrecto de operandos de salida" -#: config/tc-ia64.c:6259 +#: config/tc-ia64.c:6230 msgid "Wrong number of input operands" -msgstr "Número equivocado de operandos de entrada" +msgstr "Número incorrecto de operandos de entrada" -#: config/tc-ia64.c:6261 +#: config/tc-ia64.c:6232 msgid "Operand mismatch" msgstr "No coinciden los operandos" -#: config/tc-ia64.c:6343 +#: config/tc-ia64.c:6314 #, c-format msgid "Invalid use of `%c%d' as output operand" msgstr "Uso inválido de `%c%d' como operando de salida" -#: config/tc-ia64.c:6346 +#: config/tc-ia64.c:6317 #, c-format msgid "Invalid use of `r%d' as base update address operand" msgstr "Uso inválido de `r%d' como operando direccional de actualización base" -#: config/tc-ia64.c:6370 +#: config/tc-ia64.c:6341 #, c-format msgid "Invalid duplicate use of `%c%d'" msgstr "Uso duplicado inválido de `%c%d'" -#: config/tc-ia64.c:6377 +#: config/tc-ia64.c:6348 #, c-format msgid "Invalid simultaneous use of `f%d' and `f%d'" msgstr "Uso simultáneo inválido de `f%d' y `f%d'" -#: config/tc-ia64.c:6383 +#: config/tc-ia64.c:6354 #, c-format msgid "Dangerous simultaneous use of `f%d' and `f%d'" msgstr "Uso simultáneo peligroso de `f%d' y `f%d'" -#: config/tc-ia64.c:6427 +#: config/tc-ia64.c:6398 msgid "Value truncated to 62 bits" msgstr "Valor truncado a 62 bits" -#: config/tc-ia64.c:6495 +#: config/tc-ia64.c:6466 #, c-format msgid "Bad operand value: %s" -msgstr "Valor de operando equivocado: %s" +msgstr "Valor de operando incorrecto: %s" #. 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:6541 config/tc-ia64.h:177 msgid "instruction address is not a multiple of 16" msgstr "la instrucción direccional no es un múltiplo de 16" -#: config/tc-ia64.c:6638 +#: config/tc-ia64.c:6609 #, c-format msgid "`%s' must be last in bundle" msgstr "«%s» debe ser el último en el grupo" -#: config/tc-ia64.c:6670 +#: config/tc-ia64.c:6641 #, c-format msgid "Internal error: don't know how to force %s to end of instruction group" msgstr "Error interno: no se sabe como forzar a %s al fin del grupo de instrucciones" -#: config/tc-ia64.c:6683 +#: config/tc-ia64.c:6654 #, c-format msgid "`%s' must be last in instruction group" msgstr "«%s» debe ser el último en el grupo de instrucciones" -#: config/tc-ia64.c:6713 +#: config/tc-ia64.c:6684 msgid "Label must be first in a bundle" msgstr "La etiqueta debe estar al inicio de un grupo" -#: config/tc-ia64.c:6790 +#: config/tc-ia64.c:6761 msgid "hint in B unit may be treated as nop" msgstr "la pista en la unidad B se puede tratar como nop" -#: config/tc-ia64.c:6801 +#: config/tc-ia64.c:6772 msgid "hint in B unit can't be used" msgstr "no se puede usar la pista en la unidad B" -#: config/tc-ia64.c:6815 +#: config/tc-ia64.c:6786 msgid "emit_one_bundle: unexpected dynamic op" msgstr "emit_one_bundle: operador dinámico inesperado" -#: config/tc-ia64.c:6940 +#: config/tc-ia64.c:6926 #, c-format msgid "`%s' does not fit into %s template" msgstr "«%s» no cabe en la plantilla %s" -#: config/tc-ia64.c:6955 +#: config/tc-ia64.c:6941 #, c-format msgid "`%s' does not fit into bundle" msgstr "«%s» no cabe en el grupo" -#: config/tc-ia64.c:6967 +#: config/tc-ia64.c:6953 #, c-format msgid "`%s' can't go in %s of %s template" msgstr "«%s» no puede ir en %s de la plantilla %s" -#: config/tc-ia64.c:6973 +#: config/tc-ia64.c:6959 msgid "Missing '}' at end of file" msgstr "Ausente '}' al final del fichero" -#: config/tc-ia64.c:7120 +#: config/tc-ia64.c:7106 #, c-format msgid "Unrecognized option '-x%s'" msgstr "No reconocida la opción '-x%s'" -#: config/tc-ia64.c:7147 +#: config/tc-ia64.c:7133 msgid "" "IA-64 options:\n" " --mconstant-gp\t mark output file as using the constant-GP model\n" @@ -9253,7 +10963,7 @@ msgstr "" " \t (por defecto)\n" #. Note for translators: "automagically" can be translated as "automatically" here. -#: config/tc-ia64.c:7164 +#: config/tc-ia64.c:7150 msgid "" " -xauto\t\t automagically remove dependency violations (default)\n" " -xnone\t\t turn off dependency violation checking\n" @@ -9272,234 +10982,210 @@ msgstr "" " -xdebugx\t\t depura el revisor de violación de dependencias y\n" "\t\t\t activa la revisión de violación de dependencias\n" -#: config/tc-ia64.c:7179 +#: config/tc-ia64.c:7165 msgid "--gstabs is not supported for ia64" msgstr "no se admite --gstabs para ia64" -#: config/tc-ia64.c:7417 -#, c-format -msgid "ia64.md_begin: can't hash `%s': %s" -msgstr "ia64.md_begin: no se puede dispersar «%s»: %s" - -#: config/tc-ia64.c:7481 -#, c-format -msgid "Inserting \"%s\" into constant hash table failed: %s" -msgstr "Falló la inserción de «%s» en la distribución de dispersión de constantes: %s" - -#: config/tc-ia64.c:7493 config/tc-riscv.c:609 config/tc-tilegx.c:263 -msgid "Could not set architecture and machine" -msgstr "No se pueden establecer la arquitectura y la máquina" - -#: config/tc-ia64.c:7625 +#: config/tc-ia64.c:7600 msgid "Explicit stops are ignored in auto mode" msgstr "Se descartan las paradas explícitas en modo automático" -#: config/tc-ia64.c:7634 +#: config/tc-ia64.c:7609 msgid "Found '{' when manual bundling is already turned on" msgstr "Se encontró '{' cuando la agrupación manual ya está activada" -#: config/tc-ia64.c:7647 +#: config/tc-ia64.c:7622 msgid "Found '{' after explicit switch to automatic mode" msgstr "Se encontró '{' tras cambio explícito al modo automático" -#: config/tc-ia64.c:7653 +#: config/tc-ia64.c:7628 msgid "Found '}' when manual bundling is off" msgstr "Se encontró '}' cuando la agrupación manual está desactivada" -#: config/tc-ia64.c:7680 +#: config/tc-ia64.c:7655 msgid "Expected ')'" msgstr "Se esperaba ')'" -#: config/tc-ia64.c:7685 +#: config/tc-ia64.c:7660 msgid "Qualifying predicate expected" msgstr "Se esperaba un predicado calificador" -#: config/tc-ia64.c:7704 +#: config/tc-ia64.c:7679 msgid "Tag must come before qualifying predicate." msgstr "La etiqueta debe venir antes del predicado calificador." -#: config/tc-ia64.c:7733 +#: config/tc-ia64.c:7708 msgid "Expected ':'" msgstr "Se esperaba ':'" -#: config/tc-ia64.c:7749 +#: config/tc-ia64.c:7724 msgid "Tag name expected" msgstr "Se esperaba un nombre de etiqueta" -#: config/tc-ia64.c:7850 +#: config/tc-ia64.c:7826 msgid "Rotating register index must be a non-negative constant" msgstr "El índice de registros rotantes debe ser una constante que no sea negativa" -#: config/tc-ia64.c:7855 +#: config/tc-ia64.c:7831 #, c-format msgid "Index out of range 0..%u" -msgstr "Índice fuera de límite 0..%u" +msgstr "Índice fuera de rango 0..%u" -#: config/tc-ia64.c:7867 +#: config/tc-ia64.c:7843 msgid "Indirect register index must be a general register" msgstr "El índice de registros indirectos debe ser un registro general" -#: config/tc-ia64.c:7876 +#: config/tc-ia64.c:7852 msgid "Index can only be applied to rotating or indirect registers" -msgstr "El índice sólo se puede aplicar a registros rotantes o indirectos" +msgstr "El índice solo se puede aplicar a registros rotantes o indirectos" -#: config/tc-ia64.c:7912 config/tc-xstormy16.c:145 +#: config/tc-ia64.c:7888 config/tc-xstormy16.c:145 msgid "Expected '('" msgstr "Se esperaba '('" -#: config/tc-ia64.c:7920 config/tc-pdp11.c:445 config/tc-pdp11.c:509 -#: config/tc-pdp11.c:543 config/tc-tilegx.c:1047 config/tc-tilepro.c:938 +#: config/tc-ia64.c:7896 config/tc-pdp11.c:466 config/tc-pdp11.c:530 +#: config/tc-pdp11.c:564 config/tc-tilegx.c:1044 config/tc-tilepro.c:932 #: config/tc-xstormy16.c:154 msgid "Missing ')'" msgstr "Ausente ')'" -#: config/tc-ia64.c:7938 config/tc-xstormy16.c:161 +#: config/tc-ia64.c:7914 config/tc-xstormy16.c:161 msgid "Not a symbolic expression" msgstr "No es una expresión simbólica" -#: config/tc-ia64.c:7943 config/tc-ia64.c:7957 +#: config/tc-ia64.c:7919 config/tc-ia64.c:7933 msgid "Illegal combination of relocation functions" msgstr "Combinación ilegal de funciones de reubicación" -#: config/tc-ia64.c:8046 +#: config/tc-ia64.c:8022 msgid "No current frame" msgstr "Sin marco actual" -#: config/tc-ia64.c:8048 +#: config/tc-ia64.c:8024 #, c-format msgid "Register number out of range 0..%u" -msgstr "Número de registro fuera de límite 0..%u" +msgstr "Número de registro fuera de rango 0..%u" -#: config/tc-ia64.c:8087 +#: config/tc-ia64.c:8063 msgid "Standalone `#' is illegal" msgstr "Un `#' solo es ilegal" -#: config/tc-ia64.c:8090 +#: config/tc-ia64.c:8066 msgid "Redundant `#' suffix operators" msgstr "Operadores de sufijo `#' redundantes" -#: config/tc-ia64.c:8248 +#: config/tc-ia64.c:8224 #, c-format msgid "Unhandled dependency %s for %s (%s), note %d" msgstr "Dependencia %s sin manipular para %s (%s), nota %d" -#: config/tc-ia64.c:9561 +#: config/tc-ia64.c:9537 #, c-format msgid "Unrecognized dependency specifier %d\n" msgstr "No reconocido el especificador de dependencia %d\n" -#: config/tc-ia64.c:10431 +#: config/tc-ia64.c:10398 msgid "Only the first path encountering the conflict is reported" msgstr "Solamente se reporta la primera ruta donde se encuentra el conflicto" -#: config/tc-ia64.c:10433 +#: config/tc-ia64.c:10400 msgid "This is the location of the conflicting usage" msgstr "Esta es la ubicación del uso conflictivo" -#: config/tc-ia64.c:10695 +#: config/tc-ia64.c:10662 #, c-format msgid "Unknown opcode `%s'" msgstr "Código operativo desconocido «%s»" -#: config/tc-ia64.c:10773 +#: config/tc-ia64.c:10740 #, c-format msgid "AR %d can only be accessed by %c-unit" -msgstr "AR %d sólo se puede acceder por %c-unit" +msgstr "AR %d solo se puede acceder por %c-unit" -#: config/tc-ia64.c:10785 +#: config/tc-ia64.c:10752 msgid "hint.b may be treated as nop" msgstr "hint.b quizá es tratado como nop" -#: config/tc-ia64.c:10788 +#: config/tc-ia64.c:10755 msgid "hint.b shouldn't be used" msgstr "no se debe usar hint.b" -#: config/tc-ia64.c:10827 +#: config/tc-ia64.c:10794 #, c-format msgid "`%s' cannot be predicated" msgstr "«%s» no puede ser predicado" -#: config/tc-ia64.c:10899 +#: config/tc-ia64.c:10867 msgid "Closing bracket missing" msgstr "Ausentea llave que cierra" -#: config/tc-ia64.c:10908 +#: config/tc-ia64.c:10876 msgid "Index must be a general register" msgstr "El índice debe ser un registro general" -#: config/tc-ia64.c:11073 +#: config/tc-ia64.c:11041 #, c-format msgid "Unsupported fixup size %d" msgstr "No se admite el tamaño de compostura %d" #. 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:11313 #, c-format msgid "Cannot express %s%d%s relocation" msgstr "No se puede expresar la reubicación %s%d%s" -#: config/tc-ia64.c:11364 +#: config/tc-ia64.c:11332 msgid "No addend allowed in @fptr() relocation" msgstr "No se permite addend en la reubicación @fptr()" -#: config/tc-ia64.c:11403 +#: config/tc-ia64.c:11371 msgid "integer operand out of range" -msgstr "operando entero fuera de límite" +msgstr "operando entero fuera de rango" -#: config/tc-ia64.c:11470 +#: config/tc-ia64.c:11438 #, c-format msgid "%s must have a constant value" msgstr "%s debe tener un valor constante" -#: config/tc-ia64.c:11490 +#: config/tc-ia64.c:11458 msgid "cannot resolve @slotcount parameter" msgstr "no se puede resolver el parámetro @slotcount" -#: config/tc-ia64.c:11523 +#: config/tc-ia64.c:11491 msgid "invalid @slotcount value" msgstr "valor de @slotcount inválido" -#: config/tc-ia64.c:11560 config/tc-z8k.c:1378 +#: config/tc-ia64.c:11528 config/tc-z8k.c:1388 #, c-format msgid "Cannot represent %s relocation in object file" msgstr "No se puede representar la reubicación %s en el fichero objeto" -#: config/tc-ia64.c:11671 +#: config/tc-ia64.c:11636 msgid "Can't add stop bit to mark end of instruction group" msgstr "No se puede agregar el bit de parada para marcar el fin del grupo de instrucciones" -#: config/tc-ia64.c:11780 read.c:2599 read.c:3308 read.c:3660 stabs.c:464 +#: config/tc-ia64.c:11744 read.c:2690 read.c:3349 read.c:3917 stabs.c:461 #, c-format msgid "expected comma after \"%s\"" msgstr "se esperaba una coma tras «%s»" -#: config/tc-ia64.c:11822 +#: config/tc-ia64.c:11785 #, c-format msgid "`%s' is already the alias of %s `%s'" msgstr "el símbolo «%s» ya es el alias de %s «%s»" -#: config/tc-ia64.c:11832 +#: config/tc-ia64.c:11796 #, c-format msgid "%s `%s' already has an alias `%s'" msgstr "%s «%s» ya tiene un alias «%s»" -#: config/tc-ia64.c:11843 -#, c-format -msgid "inserting \"%s\" into %s alias hash table failed: %s" -msgstr "falló la inserción de «%s» en la distribución de dispersión de alias %s: %s" - -#: config/tc-ia64.c:11851 -#, c-format -msgid "inserting \"%s\" into %s name hash table failed: %s" -msgstr "falló la inserción de «%s» en la distribución de dispersión de nombres %s: %s" - -#: config/tc-ia64.c:11877 +#: config/tc-ia64.c:11829 #, c-format msgid "symbol `%s' aliased to `%s' is not used" msgstr "el símbolo «%s» que tiene como alias a «%s» no se utiliza" -#: config/tc-ia64.c:11900 +#: config/tc-ia64.c:11855 #, c-format msgid "section `%s' aliased to `%s' is not used" msgstr "la sección «%s» que tiene como alias a «%s» no se utiliza" @@ -9519,68 +11205,270 @@ msgstr " -mip2022 restringe a insns de IP2022 \n" msgid " -mip2022ext permit extended IP2022 insn\n" msgstr " -mip2022ext permite insns extendidas de IP2022\n" -#: config/tc-iq2000.c:362 +#: config/tc-ip2k.c:232 +msgid "relaxation not supported\n" +msgstr "no se admite la relajación\n" + +#: config/tc-iq2000.c:356 #, c-format msgid "the yielding instruction %s may not be in a delay slot." msgstr "la instrucción que produce %s no puede estar en una ranura de retardo." -#: config/tc-iq2000.c:370 +#: config/tc-iq2000.c:364 #, c-format msgid "Register number (R%ld) for double word access must be even." msgstr "El número de registro (R%ld) para el acceso de double word debe ser par." -#: 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:373 config/tc-iq2000.c:378 config/tc-iq2000.c:383 +#: config/tc-iq2000.c:400 config/tc-mt.c:246 config/tc-mt.c:251 #, c-format msgid "operand references R%ld of previous load." msgstr "operando se refiere a R%ld de la carga previa." -#: config/tc-iq2000.c:394 +#: config/tc-iq2000.c:388 msgid "instruction implicitly accesses R31 of previous load." msgstr "instrucción accede implícitamente a R31 de carga anterior." -#: config/tc-iq2000.c:649 config/tc-mep.c:2008 +#: config/tc-iq2000.c:643 config/tc-mep.c:2008 msgid "Unmatched high relocation" msgstr "Reubicación high sin coincidencia" -#: config/tc-iq2000.c:826 config/tc-mips.c:19372 config/tc-score.c:5814 +#: config/tc-iq2000.c:820 config/tc-mips.c:19791 config/tc-score.c:5784 msgid ".end not in text section" msgstr ".end no está en la sección text" -#: config/tc-iq2000.c:830 config/tc-score.c:5817 +#: config/tc-iq2000.c:824 config/tc-score.c:5787 msgid ".end directive without a preceding .ent directive." msgstr "directiva .end sin una directiva .ent precedente." -#: config/tc-iq2000.c:839 config/tc-score.c:5825 +#: config/tc-iq2000.c:833 config/tc-score.c:5795 msgid ".end symbol does not match .ent symbol." msgstr ".end simbólico no coincide con el símbolo .ent." -#: config/tc-iq2000.c:842 config/tc-mips.c:19392 config/tc-score.c:5830 +#: config/tc-iq2000.c:836 config/tc-mips.c:19811 config/tc-score.c:5800 msgid ".end directive missing or unknown symbol" msgstr "ausente la directiva .end o hay un símbolo desconocido" -#: config/tc-iq2000.c:860 +#: config/tc-iq2000.c:854 msgid "Expected simple number." msgstr "Se esperaba un número simple." -#: config/tc-iq2000.c:889 config/tc-mips.c:19297 config/tc-score.c:5666 +#: config/tc-iq2000.c:883 config/tc-mips.c:19716 config/tc-score.c:5650 #, c-format msgid " *input_line_pointer == '%c' 0x%02x\n" msgstr " *input_line_pointer == '%c' 0x%02x\n" -#: config/tc-iq2000.c:891 +#: config/tc-iq2000.c:885 msgid "Invalid number" msgstr "Número inválido" -#: config/tc-iq2000.c:925 config/tc-score.c:5704 +#: config/tc-iq2000.c:919 config/tc-score.c:5681 msgid ".ent or .aent not in text section." msgstr ".ent o .aent no están en la sección text." -#: config/tc-iq2000.c:928 +#: config/tc-iq2000.c:922 msgid "missing `.end'" msgstr "ausente `.end'" -#: config/tc-m32c.c:142 +#: config/tc-kvx.c:1737 +#, fuzzy +#| msgid "signed value out of range" +msgid "signed16 PCREL value out of range" +msgstr "valor firmado fuera de rango" + +#: config/tc-kvx.c:1745 +#, fuzzy +#| msgid "signed value out of range" +msgid "signed43 PCREL value out of range" +msgstr "valor firmado fuera de rango" + +#: config/tc-kvx.c:1752 +#, fuzzy +#| msgid "signed value out of range" +msgid "signed37 PCREL value out of range" +msgstr "valor firmado fuera de rango" + +#: config/tc-loongarch.c:521 +#, c-format +msgid "insn name: %s\tformat: %s\tsyntax error" +msgstr "" + +#: config/tc-loongarch.c:524 +#, c-format +msgid "" +"insn name: %s\n" +"format: %s\n" +"we want macro but macro is NULL" +msgstr "" + +#: config/tc-loongarch.c:529 +#, c-format +msgid "" +"insn name: %s\n" +"format: %s\n" +"macro: %s\tsyntax error" +msgstr "" + +#: config/tc-loongarch.c:570 +#, c-format +msgid "Unsupported use of %s" +msgstr "No se admite el uso de %s" + +#: config/tc-loongarch.c:627 config/tc-riscv.c:4994 +msgid ".option pop with no .option push" +msgstr "opción .option pop sin opción .option push" + +#: config/tc-loongarch.c:637 config/tc-riscv.c:5007 +#, fuzzy, c-format +#| msgid "Unrecognized .option directive: %s\n" +msgid "unrecognized .option directive: %s" +msgstr "No reconoció directiva .option: %s\n" + +#: config/tc-loongarch.c:700 +#, fuzzy +#| msgid "Internal Error: bad instruction length" +msgid "internal error: we have no internal label yet" +msgstr "Error interno: longitud incorrecta de instrucción" + +#: config/tc-loongarch.c:805 +#, fuzzy +#| msgid "hint.b shouldn't be used" +msgid "This label shouldn't be with addend." +msgstr "no se debe usar hint.b" + +#: config/tc-loongarch.c:851 +#, fuzzy +#| msgid "Number too large" +msgid "expr too huge" +msgstr "Número demasiado grande" + +#: config/tc-loongarch.c:878 +#, c-format +msgid "" +"not support reloc bit-field\n" +"fmt: %c%c %s\n" +"args: %s" +msgstr "" + +#: config/tc-loongarch.c:949 config/tc-loongarch.c:974 +#, fuzzy, c-format +#| msgid ".begin literal is deprecated; use .literal instead" +msgid "register alias %s is deprecated, use %s instead" +msgstr "El uso de .begin literal es obsoleto. Utilice en su lugar .literal" + +#: config/tc-loongarch.c:1007 +#, fuzzy +#| msgid "unknown opcode" +msgid "unknown escape" +msgstr "desconoce código operacional" + +#: config/tc-loongarch.c:1034 +#, c-format +msgid "require imm low %d bit is 0." +msgstr "" + +#. How to do after we detect overflow. +#: config/tc-loongarch.c:1046 +#, c-format +msgid "" +"Immediate overflow.\n" +"format: %c%c%s\n" +"arg: %s" +msgstr "" + +#: config/tc-loongarch.c:1129 +msgid "atomic memory operations insns require rd != rj && rd != rk when rd isn't r0" +msgstr "" + +#: config/tc-loongarch.c:1143 +msgid "bstr(ins|pick).[wd] require msbd >= lsbd" +msgstr "" + +#: config/tc-loongarch.c:1153 +msgid "g?csrxchg require rj != r0 && rj != r1" +msgstr "" + +#: config/tc-loongarch.c:1259 +#, fuzzy, c-format +#| msgid "Unsupported RISC-V relocation number %d" +msgid "no HOWTO loong relocation number %d" +msgstr "No admitido número de reubicación RISC-V %d" + +#: config/tc-loongarch.c:1272 +#, fuzzy +#| msgid "Internal error: Can't hash %s: %s" +msgid "Internal error: not support relax now" +msgstr "Error interno: No se puede dispersar %s: %s" + +#: config/tc-loongarch.c:1334 +#, c-format +msgid "li overflow: hi32:0x%x lo32:0x%x" +msgstr "" + +#: config/tc-loongarch.c:1339 +msgid "we can't li.d on 32bit-arch" +msgstr "" + +#: config/tc-loongarch.c:1438 +#, fuzzy, c-format +#| msgid "no such instruction: `%s'" +msgid "no match insn: %s\t%s" +msgstr "no hay tal instrucción: «%s»" + +#: config/tc-loongarch.c:1586 config/tc-loongarch.c:1593 +#, fuzzy +#| msgid "TLS relocation against a constant" +msgid "Relocation against a constant" +msgstr "TLS reubicado contra una constante" + +#: config/tc-loongarch.c:1801 config/tc-riscv.c:4723 +#, fuzzy, c-format +#| msgid "internal error: bad CFA value #%d" +msgid "internal: bad CFA value #%d" +msgstr "error interno: valor CFA incorrecto nº%d" + +#: config/tc-loongarch.c:1813 +#, fuzzy +#| msgid "TLS relocation against a constant" +msgid "Relocation against a constant." +msgstr "TLS reubicado contra una constante" + +#: config/tc-loongarch.c:1894 config/tc-riscv.c:5228 +#, c-format +msgid "cannot represent %s relocation in object file" +msgstr "no puede representar reubicación %s en fichero objeto" + +#: config/tc-loongarch.c:1923 +#, fuzzy, c-format +#| msgid "unknown register `%s'" +msgid "unknown register `%s`" +msgstr "registro desconocido «%s»" + +#: config/tc-loongarch.c:1997 +#, fuzzy, c-format +#| msgid "SPARC options:\n" +msgid "LARCH options:\n" +msgstr "Opciones SPARC:\n" + +#. FIXME +#: config/tc-loongarch.c:1999 +#, c-format +msgid "" +" -mthin-add-sub\t Convert a pair of R_LARCH_ADD32/64 and R_LARCH_SUB32/64 to\n" +"\t\t\t R_LARCH_32/64_PCREL as much as possible\n" +"\t\t\t The option does not affect the generation of R_LARCH_32_PCREL\n" +"\t\t\t relocations in .eh_frame\n" +" -mignore-start-align\t Ignore .align if it is at the start of a section. This option\n" +"\t\t\t can't be used when partial linking (ld -r).\n" +msgstr "" + +#: config/tc-loongarch.c:2052 +#, fuzzy +#| msgid "internal error: invalid macro" +msgid "internal error: cannot get align symbol" +msgstr "error interno: macro inválido" + +#: config/tc-m32c.c:139 #, c-format msgid " M32C specific command line options:\n" msgstr " Opciones de la línea de mandatos específicas de M32C:\n" @@ -9590,7 +11478,7 @@ msgstr " Opciones de la línea de mandatos específicas de M32C:\n" msgid "Unrecognised option: -hidden" msgstr "No reconocida la opción: -hidden" -#: config/tc-m32r.c:357 config/tc-sparc.c:651 +#: config/tc-m32r.c:357 config/tc-sparc.c:602 msgid "Unrecognized option following -K" msgstr "No reconoce opción seguida de -K" @@ -9729,78 +11617,96 @@ msgstr " -Wnuh sinónimo para -no-warn-unmatched-high\n" msgid " -KPIC generate PIC\n" msgstr " -KPIC genera PIC\n" -#: config/tc-m32r.c:846 +#: config/tc-m32r.c:847 msgid "instructions write to the same destination register." msgstr "las instrucciones escriben al mismo registro de destino." -#: config/tc-m32r.c:854 +#: config/tc-m32r.c:855 msgid "Instructions do not use parallel execution pipelines." msgstr "Las instrucciones no usan tuberías de ejecución paralela." -#: config/tc-m32r.c:862 +#: config/tc-m32r.c:863 msgid "Instructions share the same execution pipeline" msgstr "Las instrucciones comparten la misma tubería de ejecución" -#: config/tc-m32r.c:927 config/tc-m32r.c:1041 +#: config/tc-m32r.c:928 config/tc-m32r.c:1042 #, c-format msgid "not a 16 bit instruction '%s'" msgstr "no hay una instrucción 16 bit «%s»" -#: config/tc-m32r.c:939 config/tc-m32r.c:1053 config/tc-m32r.c:1237 +#: config/tc-m32r.c:940 config/tc-m32r.c:1054 config/tc-m32r.c:1238 #, c-format msgid "instruction '%s' is for the M32R2 only" -msgstr "la instrucción «%s» sólo es para el M32R2" +msgstr "la instrucción «%s» solo es para el M32R2" -#: config/tc-m32r.c:952 config/tc-m32r.c:1066 config/tc-m32r.c:1250 +#: config/tc-m32r.c:953 config/tc-m32r.c:1067 config/tc-m32r.c:1251 #, c-format msgid "unknown instruction '%s'" msgstr "desconoce instrucción «%s»" -#: config/tc-m32r.c:961 config/tc-m32r.c:1073 config/tc-m32r.c:1257 +#: config/tc-m32r.c:962 config/tc-m32r.c:1074 config/tc-m32r.c:1258 #, c-format msgid "instruction '%s' is for the M32RX only" -msgstr "la instrucción «%s» sólo es para el M32RX" +msgstr "la instrucción «%s» solo es para el M32RX" -#: config/tc-m32r.c:970 config/tc-m32r.c:1082 +#: config/tc-m32r.c:971 config/tc-m32r.c:1083 #, c-format msgid "instruction '%s' cannot be executed in parallel." msgstr "la instrucción «%s» no se puede ejecutar en paralelo." -#: config/tc-m32r.c:1025 config/tc-m32r.c:1107 config/tc-m32r.c:1314 +#: config/tc-m32r.c:1026 config/tc-m32r.c:1108 config/tc-m32r.c:1315 msgid "internal error: lookup/get operands failed" msgstr "error interno: fallaron los operandos lookup/get" -#: config/tc-m32r.c:1092 +#: config/tc-m32r.c:1093 #, c-format msgid "'%s': only the NOP instruction can be issued in parallel on the m32r" msgstr "«%s»: solamente las instrucciones NOP se puede ejecutar en paralelo en el m32r" -#: config/tc-m32r.c:1121 +#: config/tc-m32r.c:1122 #, c-format msgid "%s: output of 1st instruction is the same as an input to 2nd instruction - is this intentional ?" msgstr "%s: la salida de la 1a instrucción es la misma que una entrada a la 2a instrucción - ¿Esto es intencional?" -#: config/tc-m32r.c:1125 +#: config/tc-m32r.c:1126 #, c-format msgid "%s: output of 2nd instruction is the same as an input to 1st instruction - is this intentional ?" msgstr "%s: la salida de la 2a instrucción es la misma que una entrada a la 1a instrucción - ¿Esto es intencional?" -#: config/tc-m32r.c:1498 +#: config/tc-m32r.c:1489 config/tc-microblaze.c:175 +msgid "Expected comma after symbol-name: rest of line ignored." +msgstr "Se esperaba coma tras nombre del símbolo: se descarta el resto de la línea." + +#: config/tc-m32r.c:1499 #, c-format msgid ".SCOMMon length (%ld.) <0! Ignored." msgstr "¡Longitud SCOMMon (%ld.) <0! Se descarta." -#: config/tc-m32r.c:1548 +#: config/tc-m32r.c:1513 config/tc-microblaze.c:197 config/tc-ppc.c:2421 +#: config/tc-ppc.c:4355 config/tc-ppc.c:4410 +msgid "ignoring bad alignment" +msgstr "se descarta la alineamiento incorrecta" + +#: config/tc-m32r.c:1525 config/tc-microblaze.c:232 config/tc-v850.c:380 +msgid "Common alignment not a power of 2" +msgstr "La alineamiento común no es una potencia de 2" + +#: config/tc-m32r.c:1540 config/tc-microblaze.c:208 +#, c-format +msgid "Ignoring attempt to re-define symbol `%s'." +msgstr "Se descarta el intento de redefinir el símbolo «%s»." + +#: config/tc-m32r.c:1549 #, c-format msgid "Length of .scomm \"%s\" is already %ld. Not changed to %ld." msgstr "La longitud de .scomm «%s» ya es %ld. No se cambió a %ld." -#: config/tc-m32r.c:1925 config/tc-m32r.c:1978 config/tc-nds32.c:4185 -#: config/tc-nds32.c:4221 config/tc-sh.c:774 config/tc-sh.c:2457 +#: config/tc-m32r.c:1926 config/tc-m32r.c:1979 config/tc-nds32.c:4786 +#: config/tc-nds32.c:4830 config/tc-sh.c:391 config/tc-sh.c:2047 msgid "Invalid PIC expression." msgstr "Expresión PIC no válida." -#: config/tc-m32r.c:2069 +#: config/tc-m32r.c:2070 msgid "Unmatched high/shigh reloc" msgstr "Reubicación high/shigh sin coincidencia" @@ -9837,7 +11743,7 @@ msgstr "" " --force-long-branchs siempre convierte las ramificaciones relativas en\n" " absolutas\n" " -S,--short-branchs no convierte las ramificaciones relativas en\n" -" absolutas cuando el desplazamiento está fuera de límite\n" +" absolutas cuando el desplazamiento está fuera de rango\n" " --strict-direct-mode no convierte el modo directo en modo extendido\n" " cuando la instrucción no admite modo directo\n" " --print-insn-syntax escribe la sintaxis de la instrucción en caso de\n" @@ -9862,60 +11768,60 @@ msgstr "Nombre # Modos Min ops Max ops Masc. modos # Usado\n" msgid "Option `%s' is not recognized." msgstr "No reconocida la opción «%s»." -#: config/tc-m68hc11.c:748 +#: config/tc-m68hc11.c:746 msgid "imm3" msgstr "imm3" -#: config/tc-m68hc11.c:756 +#: config/tc-m68hc11.c:754 msgid "RD" msgstr "RD" -#: config/tc-m68hc11.c:764 +#: config/tc-m68hc11.c:762 msgid "RD,RS" msgstr "RD,RS" -#: config/tc-m68hc11.c:772 +#: config/tc-m68hc11.c:770 msgid "RI, #imm4" msgstr "RI, #imm4" -#: config/tc-m68hc11.c:804 +#: config/tc-m68hc11.c:802 msgid "RD, (RI,#offs5)" msgstr "RD, (RI,#offs5)" -#: config/tc-m68hc11.c:856 +#: config/tc-m68hc11.c:854 msgid "#<imm8>" msgstr "#<imm8>" -#: config/tc-m68hc11.c:865 +#: config/tc-m68hc11.c:863 msgid "#<imm16>" msgstr "#<imm16>" -#: config/tc-m68hc11.c:874 config/tc-m68hc11.c:883 +#: config/tc-m68hc11.c:872 config/tc-m68hc11.c:881 msgid "<imm8>,X" msgstr "<imm8>,X" -#: config/tc-m68hc11.c:910 +#: config/tc-m68hc11.c:908 msgid "*<abs8>" msgstr "*<abs8>" -#: config/tc-m68hc11.c:922 +#: config/tc-m68hc11.c:920 msgid "#<mask>" msgstr "#<máscara>" -#: config/tc-m68hc11.c:932 +#: config/tc-m68hc11.c:930 #, c-format msgid "symbol%d" msgstr "símbolo%d" -#: config/tc-m68hc11.c:934 +#: config/tc-m68hc11.c:932 msgid "<abs>" msgstr "<abs>" -#: config/tc-m68hc11.c:953 +#: config/tc-m68hc11.c:951 msgid "<label>" msgstr "<etiqueta>" -#: config/tc-m68hc11.c:969 +#: config/tc-m68hc11.c:967 #, c-format msgid "" "# Example of `%s' instructions\n" @@ -9926,103 +11832,106 @@ msgstr "" "\t.sect .text\n" "_start:\n" -#: config/tc-m68hc11.c:1016 +#: config/tc-m68hc11.c:1014 #, c-format msgid "Instruction `%s' is not recognized." msgstr "No reconocida la instrucción «%s»." -#: config/tc-m68hc11.c:1021 +#: config/tc-m68hc11.c:1019 #, c-format msgid "Instruction formats for `%s':" msgstr "Formatos de instrucción para «%s»:" -#: config/tc-m68hc11.c:1173 +#: config/tc-m68hc11.c:1171 #, c-format msgid "Immediate operand is not allowed for operand %d." -msgstr "No se permite un operando inmediato para operando %d." +msgstr "No se permite un operando inmediato para el operando %d." -#: config/tc-m68hc11.c:1217 +#: config/tc-m68hc11.c:1215 msgid "Indirect indexed addressing is not valid for 68HC11." -msgstr "El direccionamiento indizado indirecto no es válido para 68HC11." +msgstr "El direccionamiento indexado indirecto no es válido para 68HC11." -#: config/tc-m68hc11.c:1237 +#: config/tc-m68hc11.c:1235 msgid "Spurious `,' or bad indirect register addressing mode." -msgstr "`,' sobrante o modo de direccionamiento de registro indirecto equivocado." +msgstr "`,' sobrante o modo de direccionamiento de registro indirecto incorrecto." -#: config/tc-m68hc11.c:1259 +#: config/tc-m68hc11.c:1257 msgid "Missing second register or offset for indexed-indirect mode." -msgstr "Ausenten el segundo registro o el desplazamiento para el modo indizado indirecto." +msgstr "Ausenten el segundo registro o el desplazamiento para el modo indexado indirecto." -#: config/tc-m68hc11.c:1269 +#: config/tc-m68hc11.c:1267 msgid "Missing second register for indexed-indirect mode." -msgstr "Ausente el segundo registro para el modo indizado indirecto." +msgstr "Ausente el segundo registro para el modo indexado indirecto." -#: config/tc-m68hc11.c:1285 +#: config/tc-m68hc11.c:1283 msgid "Missing `]' to close indexed-indirect mode." -msgstr "Ausente `]' para cerrar el modo indizado directo." +msgstr "Ausente `]' para cerrar el modo indexado directo." -#: config/tc-m68hc11.c:1330 config/tc-m68hc11.c:2961 config/tc-m68hc11.c:3073 +#: config/tc-m68hc11.c:1328 config/tc-m68hc11.c:2961 config/tc-m68hc11.c:3073 #: config/tc-m68hc11.c:3147 config/tc-m68hc11.c:3331 config/tc-m68hc11.c:3402 msgid "Illegal operand." msgstr "Operando ilegal." #. Looks like OP_R_R. -#: config/tc-m68hc11.c:1335 config/tc-m68hc11.c:2966 config/tc-m68hc11.c:3078 +#: config/tc-m68hc11.c:1333 config/tc-m68hc11.c:2966 config/tc-m68hc11.c:3078 #: config/tc-m68hc11.c:3152 config/tc-m68hc11.c:3258 config/tc-m68hc11.c:3310 #: config/tc-m68hc11.c:3318 config/tc-m68hc11.c:3336 msgid "Missing operand." msgstr "Ausente operando." -#: config/tc-m68hc11.c:1388 +#: config/tc-m68hc11.c:1386 msgid "Pre-increment mode is not valid for 68HC11" msgstr "El modo de pre-incremento no es válido para 68HC11" -#: config/tc-m68hc11.c:1401 +#: config/tc-m68hc11.c:1399 msgid "Wrong register in register indirect mode." -msgstr "Registro equivocado en el modo indirecto de registro." +msgstr "Registro incorrecto en el modo indirecto de registro." -#: config/tc-m68hc11.c:1409 +#: config/tc-m68hc11.c:1407 msgid "Missing `]' to close register indirect operand." msgstr "Ausente `]' para cerrar operando indirecto de registro." -#: config/tc-m68hc11.c:1429 +#: config/tc-m68hc11.c:1427 msgid "Post-decrement mode is not valid for 68HC11." msgstr "El modo de post-decremento no es válido para 68HC11." -#: config/tc-m68hc11.c:1437 +#: config/tc-m68hc11.c:1435 msgid "Post-increment mode is not valid for 68HC11." msgstr "El modo de post-incremento no es válido para 68HC11." -#: config/tc-m68hc11.c:1455 +#: config/tc-m68hc11.c:1453 msgid "Invalid indexed indirect mode." -msgstr "Modo indizado indirecto inválido." +msgstr "Modo indexado indirecto inválido." -#: config/tc-m68hc11.c:1579 -#, c-format -msgid "Trap id `%ld' is out of range." -msgstr "El id de captura `%ld' está fuera de límite." +#: config/tc-m68hc11.c:1577 +#, fuzzy, c-format +#| msgid "Trap id `%ld' is out of range." +msgid "Trap id `%<PRId64>' is out of range." +msgstr "El id de captura `%ld' está fuera de rango." -#: config/tc-m68hc11.c:1583 +#: config/tc-m68hc11.c:1582 msgid "Trap id must be within [0x30..0x39] or [0x40..0xff]." msgstr "El id de captura debe estar dentro de [0x30..0x39] o [0x40..0xff]" -#: config/tc-m68hc11.c:1590 config/tc-m68hc11.c:1741 -#, c-format -msgid "Operand out of 8-bit range: `%ld'." +#: config/tc-m68hc11.c:1589 config/tc-m68hc11.c:1741 +#, fuzzy, c-format +#| msgid "Operand out of 8-bit range: `%ld'." +msgid "Operand out of 8-bit range: `%<PRId64>'." msgstr "Operando fuera del límite de 8-bit: `%ld'." #: config/tc-m68hc11.c:1597 msgid "The trap id must be a constant." msgstr "El id de captura debe ser una constante." -#: config/tc-m68hc11.c:1629 config/tc-m68hc11.c:1784 config/tc-xgate.c:1345 +#: config/tc-m68hc11.c:1629 config/tc-m68hc11.c:1784 config/tc-xgate.c:1347 #, c-format msgid "Operand `%x' not recognized in fixup8." msgstr "No reconoce operando `%x' en fixup8." #: config/tc-m68hc11.c:1646 config/tc-m68hc11.c:1694 -#, c-format -msgid "Operand out of 16-bit range: `%ld'." +#, fuzzy, c-format +#| msgid "Operand out of 16-bit range: `%ld'." +msgid "Operand out of 16-bit range: `%<PRId64>'." msgstr "Operando fuera del límite de 16-bit: `%ld'." #: config/tc-m68hc11.c:1677 config/tc-m68hc11.c:1708 @@ -10038,7 +11947,7 @@ msgstr "Conversión de ramificación inesperada con `%x'" #: config/tc-m68hc11.c:1887 config/tc-m68hc11.c:2019 #, c-format msgid "Operand out of range for a relative branch: `%ld'" -msgstr "Operando fuera de límite para una ramificación relativa: `%ld'" +msgstr "Operando fuera de rango para una ramificación relativa: `%ld'" #: config/tc-m68hc11.c:1987 msgid "Invalid register for dbcc/tbcc instruction." @@ -10047,7 +11956,7 @@ msgstr "Registro inválido para la instrucción dbcc/tbcc." #: config/tc-m68hc11.c:2075 #, c-format msgid "Increment/decrement value is out of range: `%ld'." -msgstr "El valor de incremento/decremento está fuera de límite: `%ld'." +msgstr "El valor de incremento/decremento está fuera de rango: `%ld'." #: config/tc-m68hc11.c:2087 msgid "Expecting a register." @@ -10073,11 +11982,11 @@ msgstr "Desplazamiento fuera del límite de 5-bit para insn movw/movb: %ld." #: config/tc-m68hc11.c:2270 msgid "Expecting register D for indexed indirect mode." -msgstr "Se espera el registro D para el modo indizado indirecto." +msgstr "Se espera el registro D para el modo indexado indirecto." #: config/tc-m68hc11.c:2272 msgid "Indexed indirect mode is not allowed for movb/movw." -msgstr "No se permite el modo indizado directo para movb/movw." +msgstr "No se permite el modo indexado directo para movb/movw." #: config/tc-m68hc11.c:2289 msgid "Invalid accumulator register." @@ -10085,7 +11994,7 @@ msgstr "Registro acumulador inválido." #: config/tc-m68hc11.c:2315 msgid "Invalid indexed register." -msgstr "Registro indizado inválido." +msgstr "Registro indexado inválido." #: config/tc-m68hc11.c:2325 msgid "Addressing mode not implemented yet." @@ -10109,22 +12018,22 @@ msgstr "Registro destino inválido." #: config/tc-m68hc11.c:2523 msgid "Invalid indexed register, expecting register X." -msgstr "Registro indizado inválido, se esperaba el registro X." +msgstr "Registro indexado inválido, se esperaba el registro X." #: config/tc-m68hc11.c:2525 msgid "Invalid indexed register, expecting register Y." -msgstr "Registro indizado inválido, se esperaba el registro Y." +msgstr "Registro indexado inválido, se esperaba el registro Y." -#: config/tc-m68hc11.c:2844 +#: config/tc-m68hc11.c:2844 config/tc-s12z.c:3804 msgid "No instruction or missing opcode." msgstr "No hay instrucción o ausente el código operacional." -#: config/tc-m68hc11.c:2854 config/tc-m68hc11.c:3532 +#: config/tc-m68hc11.c:2854 config/tc-m68hc11.c:3533 #, c-format msgid "Opcode `%s' is not recognized." msgstr "No reconocido el código operacional «%s»." -#: config/tc-m68hc11.c:2903 config/tc-m68hc11.c:3452 config/tc-m68hc11.c:3554 +#: config/tc-m68hc11.c:2903 config/tc-m68hc11.c:3452 config/tc-m68hc11.c:3555 #, c-format msgid "Garbage at end of instruction: `%s'." msgstr "Basura al final de la instrucción: «%s»." @@ -10134,457 +12043,453 @@ msgstr "Basura al final de la instrucción: «%s»." msgid "Failed to find a valid mode for `%s'." msgstr "Fallaba al encontrar un modo válido para «%s»." -#: config/tc-m68hc11.c:3464 config/tc-m68hc11.c:3682 config/tc-m68hc11.c:3688 +#: config/tc-m68hc11.c:3464 config/tc-m68hc11.c:3683 config/tc-m68hc11.c:3689 #, c-format msgid "Invalid operand for `%s'" msgstr "Operando inválido para «%s»" -#: config/tc-m68hc11.c:3740 +#: config/tc-m68hc11.c:3741 #, c-format msgid "Invalid mode: %s\n" msgstr "Modo inválido: %s\n" -#: config/tc-m68hc11.c:3799 +#: config/tc-m68hc11.c:3800 msgid "bad .relax format" -msgstr "formato de .relax equivocado" +msgstr "formato de .relax incorrecto" -#: config/tc-m68hc11.c:3843 config/tc-xgate.c:630 +#: config/tc-m68hc11.c:3844 config/tc-s12z.c:3897 config/tc-xgate.c:630 #, c-format msgid "Relocation %d is not supported by object file format." msgstr "El formato del fichero objeto no admite la reubicación %d." -#: config/tc-m68hc11.c:4120 +#: config/tc-m68hc11.c:4121 msgid "bra or bsr with undefined symbol." msgstr "bra o bsr con símbolo indefinido." -#: config/tc-m68hc11.c:4221 config/tc-m68hc11.c:4278 +#: config/tc-m68hc11.c:4222 config/tc-m68hc11.c:4279 #, c-format msgid "Subtype %d is not recognized." msgstr "No reconocido el subtipo %d." -#: config/tc-m68hc11.c:4336 config/tc-xgate.c:663 -msgid "Expression too complex." -msgstr "Expresión demasiado compleja." - -#: config/tc-m68hc11.c:4367 config/tc-xgate.c:708 config/tc-xgate.c:717 +#: config/tc-m68hc11.c:4368 config/tc-s12z.c:3978 config/tc-xgate.c:708 +#: config/tc-xgate.c:717 msgid "Value out of 16-bit range." msgstr "Valor fuera del límite de 16-bit." -#: config/tc-m68hc11.c:4389 +#: config/tc-m68hc11.c:4390 #, c-format msgid "Value %ld too large for 8-bit PC-relative branch." msgstr "Valora %ld demasiado grande para la ramificación de 8-bit relativa al PC." -#: config/tc-m68hc11.c:4399 config/tc-xgate.c:674 +#: config/tc-m68hc11.c:4400 config/tc-xgate.c:674 #, c-format msgid "Value %ld too large for 9-bit PC-relative branch." msgstr "Valor %ld demasiado largo para ramificación PC-relativa de 9-bit." -#: config/tc-m68hc11.c:4408 config/tc-xgate.c:691 +#: config/tc-m68hc11.c:4409 config/tc-xgate.c:691 #, c-format msgid "Value %ld too large for 10-bit PC-relative branch." msgstr "Valor %ld demasiado largo para ramificación PC-relativa de 10-bit." -#: config/tc-m68hc11.c:4416 +#: config/tc-m68hc11.c:4417 #, c-format msgid "Auto increment/decrement offset '%ld' is out of range." -msgstr "El auto incremento/decremento del desplazamiento '%ld' está fuera de límite." +msgstr "El auto incremento/decremento del desplazamiento '%ld' está fuera de rango." -#: config/tc-m68hc11.c:4429 +#: config/tc-m68hc11.c:4430 #, c-format msgid "Offset out of 5-bit range for movw/movb insn: %ld" msgstr "Desplazamiento fuera del límite de 5-bit para insn movw/movb: %ld" -#: config/tc-m68hc11.c:4440 +#: config/tc-m68hc11.c:4441 #, c-format msgid "Offset out of 9-bit range for movw/movb insn: %ld" msgstr "Desplazamiento fuera del rango de 5-bit para insn movw/movb: %ld" -#: config/tc-m68hc11.c:4452 +#: config/tc-m68hc11.c:4453 #, c-format msgid "Offset out of 16-bit range for movw/movb insn: %ld" msgstr "Desplazamiento fuera del límite de 16-bit para insn movw/movb: %ld" -#: config/tc-m68hc11.c:4469 config/tc-xgate.c:752 +#: config/tc-m68hc11.c:4470 config/tc-s12z.c:3984 config/tc-xgate.c:752 #, c-format msgid "Line %d: unknown relocation type: 0x%x." msgstr "Línea %d: tipo reubicado desconocido: 0x%x." -#: config/tc-m68hc11.c:4494 +#: config/tc-m68hc11.c:4495 config/tc-z80.c:3452 config/tc-z80.c:3472 msgid "Invalid directive" msgstr "Directiva no válida" -#: config/tc-m68k.c:1165 +#: config/tc-m68k.c:1123 #, c-format msgid "Can not do %d byte pc-relative relocation" msgstr "No se puede hacer la reubicación relativa a pc de %d bytes" -#: config/tc-m68k.c:1167 +#: config/tc-m68k.c:1125 #, c-format msgid "Can not do %d byte pc-relative pic relocation" msgstr "No se puede hacer la reubicación pic relativa a pc de %d bytes" -#: config/tc-m68k.c:1172 +#: config/tc-m68k.c:1130 #, c-format msgid "Can not do %d byte relocation" msgstr "No se puede hacer la reubicación de %d bytes" -#: config/tc-m68k.c:1174 +#: config/tc-m68k.c:1132 #, c-format msgid "Can not do %d byte pic relocation" msgstr "No se puede hacer la reubicación pic de %d bytes" -#: config/tc-m68k.c:1254 +#: config/tc-m68k.c:1202 #, c-format msgid "Unable to produce reloc against symbol '%s'" msgstr "Incapaz producir reubicación contra símbolo «%s»" -#: config/tc-m68k.c:1313 config/tc-vax.c:2369 +#: config/tc-m68k.c:1261 config/tc-vax.c:2324 #, c-format msgid "Cannot make %s relocation PC relative" msgstr "No se puede hacer la reubicación relativa a PC %s" -#: config/tc-m68k.c:1429 config/tc-vax.c:1879 +#: config/tc-m68k.c:1343 config/tc-vax.c:1874 msgid "No operator" msgstr "No hay operador" -#: config/tc-m68k.c:1459 config/tc-vax.c:1895 +#: config/tc-m68k.c:1373 config/tc-vax.c:1890 msgid "Unknown operator" msgstr "Operador desconocido" -#: config/tc-m68k.c:2362 +#: config/tc-m68k.c:2276 msgid "invalid instruction for this architecture; needs " msgstr "instrucción no válida para esta arquitectura; necesita " -#: config/tc-m68k.c:2370 +#: config/tc-m68k.c:2284 msgid "hardware divide" msgstr "divide por hardware" -#: config/tc-m68k.c:2392 config/tc-m68k.c:2396 config/tc-m68k.c:2400 +#: config/tc-m68k.c:2306 config/tc-m68k.c:2310 config/tc-m68k.c:2314 msgid "or higher" msgstr "o superior" -#: config/tc-m68k.c:2453 +#: config/tc-m68k.c:2367 msgid "operands mismatch" msgstr "no coinciden los operandos" -#: config/tc-m68k.c:2517 config/tc-m68k.c:2523 config/tc-m68k.c:2529 -#: config/tc-mmix.c:2495 config/tc-mmix.c:2519 +#: config/tc-m68k.c:2431 config/tc-m68k.c:2437 config/tc-m68k.c:2443 +#: config/tc-mmix.c:2499 config/tc-mmix.c:2523 msgid "operand out of range" -msgstr "operando fuera de límite" +msgstr "operando fuera de rango" -#: config/tc-m68k.c:2586 +#: config/tc-m68k.c:2500 #, c-format msgid "Bignum too big for %c format; truncated" msgstr "Número grande demasiado grande para el formato %c; se trunca" -#: config/tc-m68k.c:2663 +#: config/tc-m68k.c:2577 msgid "displacement too large for this architecture; needs 68020 or higher" msgstr "desubicación demasiado grande para esta arquitectura; necesita 68020 o superior" -#: config/tc-m68k.c:2774 +#: config/tc-m68k.c:2685 msgid "scale factor invalid on this architecture; needs cpu32 or 68020 or higher" msgstr "factor de escala inválido en esta arquitectura; necesita cpu32 o 68020 o superior" -#: config/tc-m68k.c:2779 +#: config/tc-m68k.c:2690 msgid "invalid index size for coldfire" msgstr "tamaño de índice inválido para coldfire" -#: config/tc-m68k.c:2832 +#: config/tc-m68k.c:2743 msgid "Forcing byte displacement" msgstr "Se fuerza la desubicación de byte" -#: config/tc-m68k.c:2834 +#: config/tc-m68k.c:2745 msgid "byte displacement out of range" -msgstr "desplazamiento byte fuera de límite" +msgstr "desplazamiento byte fuera de rango" -#: config/tc-m68k.c:2882 config/tc-m68k.c:2920 +#: config/tc-m68k.c:2790 config/tc-m68k.c:2828 msgid "invalid operand mode for this architecture; needs 68020 or higher" msgstr "modo de operando inválido para esta arquitectura; necesita 68020 o superior" -#: config/tc-m68k.c:2906 config/tc-m68k.c:2940 +#: config/tc-m68k.c:2814 config/tc-m68k.c:2848 msgid ":b not permitted; defaulting to :w" msgstr "no se permite :b; se cambia por defecto a :w" -#: config/tc-m68k.c:3017 +#: config/tc-m68k.c:2923 msgid "unsupported byte value; use a different suffix" msgstr "no se admite el valor de byte; utilice un sufijo diferente" -#: config/tc-m68k.c:3032 +#: config/tc-m68k.c:2938 msgid "unknown/incorrect operand" msgstr "operando desconocido/incorrecto" -#: config/tc-m68k.c:3075 config/tc-m68k.c:3083 config/tc-m68k.c:3090 -#: config/tc-m68k.c:3097 +#: config/tc-m68k.c:2981 config/tc-m68k.c:2989 config/tc-m68k.c:2996 +#: config/tc-m68k.c:3003 msgid "out of range" -msgstr "fuera de límite" +msgstr "fuera de rango" -#: config/tc-m68k.c:3171 +#: config/tc-m68k.c:3074 msgid "Can't use long branches on this architecture" msgstr "No se pueden usar ramificaciones long en esta arquitectura" -#: config/tc-m68k.c:3277 +#: config/tc-m68k.c:3180 msgid "Expression out of range, using 0" -msgstr "Expresión fuera de límite, utilizando 0" +msgstr "Expresión fuera de rango, utilizando 0" -#: config/tc-m68k.c:3478 config/tc-m68k.c:3494 +#: config/tc-m68k.c:3381 config/tc-m68k.c:3397 msgid "Floating point register in register list" msgstr "Registro de coma flotante en la lista de registros" -#: config/tc-m68k.c:3484 +#: config/tc-m68k.c:3387 msgid "Wrong register in floating-point reglist" -msgstr "Registro equivocado en la lista de registros de coma flotante" +msgstr "Registro incorrecto en la lista de registros de coma flotante" -#: config/tc-m68k.c:3500 +#: config/tc-m68k.c:3403 msgid "incorrect register in reglist" msgstr "registro incorrecto en la lista de registros" -#: config/tc-m68k.c:3506 +#: config/tc-m68k.c:3409 msgid "wrong register in floating-point reglist" -msgstr "registro equivocado en la lista de registros de coma flotante" +msgstr "registro incorrecto en la lista de registros de coma flotante" + +#: config/tc-m68k.c:3820 config/tc-m68k.c:3852 config/tc-sparc.c:3140 +msgid "failed sanity check." +msgstr "la inspección sanitaria ha fallado." #. ERROR. -#: config/tc-m68k.c:3979 +#: config/tc-m68k.c:3882 msgid "Extra )" msgstr "Adicional )" #. ERROR. -#: config/tc-m68k.c:3990 +#: config/tc-m68k.c:3893 msgid "Missing )" msgstr "Ausente )" -#: config/tc-m68k.c:4007 +#: config/tc-m68k.c:3910 msgid "Missing operand" msgstr "Ausente operando" -#: config/tc-m68k.c:4332 +#: config/tc-m68k.c:4235 #, c-format msgid "unrecognized default cpu `%s'" msgstr "no reconocido el cpu por defecto «%s»" -#: config/tc-m68k.c:4386 +#: config/tc-m68k.c:4289 #, c-format msgid "%s -- statement `%s' ignored" msgstr "%s -- declaración «%s» descartada" -#: config/tc-m68k.c:4435 +#: config/tc-m68k.c:4336 #, fuzzy, c-format #| msgid "Don't know how to figure width of %c in md_assemble()" msgid "Don't know how to figure out width of %c in md_assemble()" msgstr "No se sabe comó reconocer la anchura de %c en md_assemble()" -#: config/tc-m68k.c:4667 config/tc-m68k.c:4706 +#: config/tc-m68k.c:4566 config/tc-m68k.c:4604 #, c-format msgid "Internal Error: Can't find %s in hash table" msgstr "Error Interno: No se puede encontrar %s en la distribución de dispersión" -#: config/tc-m68k.c:4670 config/tc-m68k.c:4709 -#, c-format -msgid "Internal Error: Can't hash %s: %s" -msgstr "Error Interno: No se puede dispersar %s: %s" - -#: config/tc-m68k.c:4834 +#: config/tc-m68k.c:4720 #, c-format msgid "text label `%s' aligned to odd boundary" msgstr "la etiqueta de texto «%s» está alineada a un límite impar" -#: config/tc-m68k.c:5006 +#: config/tc-m68k.c:4879 #, c-format msgid "value %ld out of range" -msgstr "valora %ld fuera de límite" +msgstr "valora %ld fuera de rango" -#: config/tc-m68k.c:5020 +#: config/tc-m68k.c:4893 msgid "invalid byte branch offset" msgstr "desplazamiento de ramificación byte inválido" -#: config/tc-m68k.c:5057 +#: config/tc-m68k.c:4930 msgid "short branch with zero offset: use :w" msgstr "ramificación corta con desplazamiento cero: utilice :w" -#: config/tc-m68k.c:5101 +#: config/tc-m68k.c:4974 msgid "Conversion of PC relative BSR to absolute JSR" msgstr "Conversión de un BSR relativo a PC a un JSR absoluto" -#: config/tc-m68k.c:5112 +#: config/tc-m68k.c:4985 msgid "Conversion of PC relative branch to absolute jump" msgstr "Conversión de una ramificación relativa a PC a un salto absoluto" -#: config/tc-m68k.c:5129 config/tc-m68k.c:5186 +#: config/tc-m68k.c:5002 config/tc-m68k.c:5059 msgid "Conversion of PC relative conditional branch to absolute jump" msgstr "Conversión de una ramificación condicional relativa a PC a un salto absoluto" -#: config/tc-m68k.c:5251 +#: config/tc-m68k.c:5124 msgid "Conversion of PC relative displacement to absolute" msgstr "Conversión de un desplazamiento relativo a PC a absoluto" -#: config/tc-m68k.c:5464 +#: config/tc-m68k.c:5307 msgid "Tried to convert PC relative branch to absolute jump" msgstr "Se trató de convertir una ramificación relativa a PC a un salto absoluto" -#: config/tc-m68k.c:5509 config/tc-m68k.c:5520 config/tc-m68k.c:5564 +#: config/tc-m68k.c:5352 config/tc-m68k.c:5363 config/tc-m68k.c:5407 msgid "expression out of range: defaulting to 1" -msgstr "expresión fuera de límite: se cambia por defecto a 1" +msgstr "expresión fuera de rango: se cambia por defecto a 1" -#: config/tc-m68k.c:5556 +#: config/tc-m68k.c:5399 msgid "expression out of range: defaulting to 0" -msgstr "expresión fuera de límite: se cambia por defecto a 0" +msgstr "expresión fuera de rango: se cambia por defecto a 0" -#: config/tc-m68k.c:5597 config/tc-m68k.c:5609 +#: config/tc-m68k.c:5440 config/tc-m68k.c:5452 #, c-format msgid "Can't deal with expression; defaulting to %ld" msgstr "No se puede lidiar con la expresión; se cambia por defecto a %ld" -#: config/tc-m68k.c:5623 +#: config/tc-m68k.c:5466 msgid "expression doesn't fit in BYTE" msgstr "expresión no cabe en BYTE" -#: config/tc-m68k.c:5627 +#: config/tc-m68k.c:5470 msgid "expression doesn't fit in WORD" msgstr "expresión no cabe en WORD" -#: config/tc-m68k.c:5714 +#: config/tc-m68k.c:5547 #, c-format msgid "%s: unrecognized processor name" msgstr "%s: no reconocido el nombre de procesador" -#: config/tc-m68k.c:5775 +#: config/tc-m68k.c:5608 msgid "bad coprocessor id" -msgstr "id de coprocesador equivocado" +msgstr "id de coprocesador incorrecto" -#: config/tc-m68k.c:5781 +#: config/tc-m68k.c:5614 msgid "unrecognized fopt option" msgstr "no se reconoce la opción fopt" -#: config/tc-m68k.c:5913 +#: config/tc-m68k.c:5746 #, c-format msgid "option `%s' may not be negated" msgstr "la opción «%s» podría no estar negada" -#: config/tc-m68k.c:5924 +#: config/tc-m68k.c:5757 #, c-format msgid "option `%s' not recognized" msgstr "opción «%s» no reconocida" -#: config/tc-m68k.c:5953 +#: config/tc-m68k.c:5786 msgid "bad format of OPT NEST=depth" -msgstr "formato equivocado de OPT NEST=profundidad" +msgstr "formato incorrecto de OPT NEST=profundidad" -#: config/tc-m68k.c:6009 +#: config/tc-m68k.c:5842 msgid "missing label" msgstr "ausencia etiquetado" -#: config/tc-m68k.c:6035 +#: config/tc-m68k.c:5868 #, c-format msgid "bad register list: %s" -msgstr "lista de registros equivocada: %s" +msgstr "lista de registros incorrecta: %s" -#: config/tc-m68k.c:6133 +#: config/tc-m68k.c:5966 msgid "restore without save" msgstr "restaurar sin guardar" -#: config/tc-m68k.c:6287 config/tc-m68k.c:6657 +#: config/tc-m68k.c:6119 config/tc-m68k.c:6489 msgid "syntax error in structured control directive" -msgstr "error sintáctico en directiva de control estructurada" +msgstr "error de sintaxis en directiva de control estructurada" -#: config/tc-m68k.c:6332 +#: config/tc-m68k.c:6164 msgid "missing condition code in structured control directive" msgstr "ausente el código de condición en la directiva de control estructurada" -#: config/tc-m68k.c:6403 +#: config/tc-m68k.c:6235 #, c-format msgid "Condition <%c%c> in structured control directive can not be encoded correctly" msgstr "La condición <%c%c> en la directiva de control estructurada no se puede codificar correctamente" -#: config/tc-m68k.c:6699 +#: config/tc-m68k.c:6531 msgid "missing then" msgstr "ausente then" -#: config/tc-m68k.c:6780 +#: config/tc-m68k.c:6612 msgid "else without matching if" msgstr "else sin if coincidente" -#: config/tc-m68k.c:6813 +#: config/tc-m68k.c:6645 msgid "endi without matching if" msgstr "endi sin if coincidente" -#: config/tc-m68k.c:6853 +#: config/tc-m68k.c:6685 msgid "break outside of structured loop" msgstr "break externo al bucle estructurado" -#: config/tc-m68k.c:6891 +#: config/tc-m68k.c:6723 msgid "next outside of structured loop" msgstr "next externo al bucle estructurado" -#: config/tc-m68k.c:6942 +#: config/tc-m68k.c:6774 msgid "missing =" msgstr "ausente =" -#: config/tc-m68k.c:6980 +#: config/tc-m68k.c:6812 msgid "missing to or downto" msgstr "ausente to o downto" -#: config/tc-m68k.c:7016 config/tc-m68k.c:7050 config/tc-m68k.c:7264 +#: config/tc-m68k.c:6848 config/tc-m68k.c:6882 config/tc-m68k.c:7096 msgid "missing do" msgstr "ausente do" -#: config/tc-m68k.c:7151 +#: config/tc-m68k.c:6983 msgid "endf without for" msgstr "endf sin for" -#: config/tc-m68k.c:7205 +#: config/tc-m68k.c:7037 msgid "until without repeat" msgstr "until sin repeat" -#: config/tc-m68k.c:7299 +#: config/tc-m68k.c:7131 msgid "endw without while" msgstr "endw sin while" -#: config/tc-m68k.c:7332 config/tc-m68k.c:7360 +#: config/tc-m68k.c:7164 config/tc-m68k.c:7192 msgid "already assembled instructions" msgstr "las instrucciones ya están ensambladas" -#: config/tc-m68k.c:7437 +#: config/tc-m68k.c:7269 #, c-format msgid "`%s' is deprecated, use `%s'" msgstr "«%s» es obsoleta, emplee «%s»" -#: config/tc-m68k.c:7456 +#: config/tc-m68k.c:7288 #, c-format msgid "cpu `%s' unrecognized" msgstr "cpu «%s» no reconocida" -#: config/tc-m68k.c:7475 +#: config/tc-m68k.c:7307 #, c-format msgid "architecture `%s' unrecognized" msgstr "arquitectura «%s» no reconocida" -#: config/tc-m68k.c:7496 +#: config/tc-m68k.c:7328 #, c-format msgid "extension `%s' unrecognized" msgstr "extensión «%s» no reconocida" -#: config/tc-m68k.c:7615 +#: config/tc-m68k.c:7443 #, c-format msgid "option `-A%s' is deprecated: use `-%s'" msgstr "la opción `-A%s' es obsoleta: use `-%s'" -#: config/tc-m68k.c:7648 +#: config/tc-m68k.c:7476 msgid "architecture features both enabled and disabled" msgstr "las características de la arquitectura están activadas y desactivadas al mismo tiempo" -#: config/tc-m68k.c:7675 +#: config/tc-m68k.c:7503 msgid "selected processor does not have all features of selected architecture" msgstr "procesador seleccionado no tiene todas las características de la arquitectura seleccionada" -#: config/tc-m68k.c:7684 +#: config/tc-m68k.c:7512 msgid "m68k and cf features both selected" msgstr "se seleccionaron características tanto de m68k como de cf" -#: config/tc-m68k.c:7696 +#: config/tc-m68k.c:7524 msgid "68040 and 68851 specified; mmu instructions may assemble incorrectly" msgstr "se especificaron 68040 y 68851; las instrucciones mmu podrían ensamblar incorrectamente" -#: config/tc-m68k.c:7728 +#: config/tc-m68k.c:7556 #, c-format msgid "" "-march=<arch>\t\tset architecture\n" @@ -10593,12 +12498,12 @@ msgstr "" "-march=<arqu>\t\tdefine la arquitectura\n" "-mcpu=<cpu>\t\tdefine el cpu [por defecto %s]\n" -#: config/tc-m68k.c:7733 +#: config/tc-m68k.c:7561 #, c-format msgid "-m[no-]%-16s enable/disable %s architecture extension\n" msgstr "-m[no-]%-16s activa/desactiva extensión arquitectural %s\n" -#: config/tc-m68k.c:7739 +#: config/tc-m68k.c:7567 #, c-format msgid "" "-l\t\t\tuse 1 word for refs to undefined symbols [default 2]\n" @@ -10625,196 +12530,190 @@ msgstr "" "--disp-size-default-16\tdesplazamiento con tamaño desconocido es 16 bits\n" "--disp-size-default-32\tdesplazamiento con tamaño desconocido es 32 bits (por defecto)\n" -#: config/tc-m68k.c:7753 +#: config/tc-m68k.c:7581 #, c-format msgid "Architecture variants are: " msgstr "Las variantes de arquitectura son: " -#: config/tc-m68k.c:7762 +#: config/tc-m68k.c:7590 #, c-format msgid "Processor variants are: " msgstr "Las variantes de procesador son: " -#: config/tc-m68k.c:7769 config/tc-xtensa.c:6356 +#: config/tc-m68k.c:7597 config/tc-xtensa.c:6412 #, c-format msgid "\n" msgstr "\n" -#: config/tc-m68k.c:7800 +#: config/tc-m68k.c:7628 #, c-format msgid "Error %s in %s\n" msgstr "Error %s en %s\n" -#: config/tc-m68k.c:7804 +#: config/tc-m68k.c:7632 #, c-format msgid "Opcode(%d.%s): " msgstr "Código operacional(%d.%s): " -#: config/tc-m68k.c:7962 +#: config/tc-m68k.c:7777 msgid "Not a defined coldfire architecture" msgstr "No es una arquitectura coldfire definida" -#: config/tc-m68k.c:8140 +#: config/tc-m68k.c:7886 read.c:4809 +#, c-format +msgid "%s relocations do not fit in %u byte" +msgid_plural "%s relocations do not fit in %u bytes" +msgstr[0] "%s reubicaciones no caben en %u byte" +msgstr[1] "%s reubicaciones no caben en %u bytes" + +#: config/tc-m68k.c:7928 config/tc-ppc.c:2594 +msgid "unknown .gnu_attribute value" +msgstr "desconoce valor .gnu_attribute" + +#: config/tc-m68k.c:7972 #, fuzzy, c-format #| msgid "Adjusted signed .word (%ld) overflows: `switch'-statement too large." msgid "Adjusted signed .word (%#lx) overflows: `switch'-statement too large." msgstr "Signo ajustado .word (%ld) desborda: sentencia `switch' demasiado grande." -#: config/tc-mcore.c:520 config/tc-microblaze.c:511 config/tc-microblaze.c:539 -#: config/tc-microblaze.c:576 config/tc-microblaze.c:588 +#: config/tc-mcore.c:521 config/tc-microblaze.c:487 config/tc-microblaze.c:515 +#: config/tc-microblaze.c:552 config/tc-microblaze.c:564 #, c-format msgid "register expected, but saw '%.6s'" msgstr "se esperaba un registro, pero se vio '%.6s'" -#: config/tc-mcore.c:602 +#: config/tc-mcore.c:603 #, c-format msgid "control register expected, but saw '%.6s'" msgstr "se esperaba un registro de control, pero se vio '%.6s'" -#: config/tc-mcore.c:638 +#: config/tc-mcore.c:639 msgid "bad/missing psr specifier" -msgstr "especificador psr equivocado/ausentente" - -#: config/tc-mcore.c:688 -msgid "more than 65K literal pools" -msgstr "más de 65K de conjuntos literales" - -#: config/tc-mcore.c:742 -msgid "missing ']'" -msgstr "ausente ']'" +msgstr "especificador psr incorrecto/ausentente" -#: config/tc-mcore.c:781 -msgid "operand must be a constant" -msgstr "operando debe ser una constante" - -#: config/tc-mcore.c:783 +#: config/tc-mcore.c:784 #, c-format msgid "operand must be absolute in range %u..%u, not %ld" msgstr "operando debe ser un absoluto en el límite %u..%u, no %ld" -#: config/tc-mcore.c:818 +#: config/tc-mcore.c:819 msgid "operand must be a multiple of 4" msgstr "operando debe ser un múltiplo de 4" -#: config/tc-mcore.c:825 +#: config/tc-mcore.c:826 msgid "operand must be a multiple of 2" msgstr "operando debe ser un múltiplo de 2" -#: config/tc-mcore.c:887 config/tc-microblaze.c:940 -#: config/tc-microblaze.c:1072 config/tc-microblaze.c:1104 -#: config/tc-microblaze.c:1557 config/tc-microblaze.c:1623 -#: config/tc-microblaze.c:1696 config/tc-microblaze.c:2108 -#: config/tc-microblaze.c:2155 +#: config/tc-mcore.c:840 config/tc-mcore.c:1356 config/tc-mcore.c:1410 +msgid "base register expected" +msgstr "se esperaba un registro base" + +#: config/tc-mcore.c:888 config/tc-microblaze.c:920 config/tc-microblaze.c:1056 +#: config/tc-microblaze.c:1090 config/tc-microblaze.c:1626 +#: config/tc-microblaze.c:1694 config/tc-microblaze.c:1769 +#: config/tc-microblaze.c:2192 config/tc-microblaze.c:2241 #, c-format msgid "unknown opcode \"%s\"" msgstr "código operacional desconocido «%s»" -#: config/tc-mcore.c:930 +#: config/tc-mcore.c:931 msgid "invalid register: r15 illegal" msgstr "registro inválido: r15 ilegal" -#: config/tc-mcore.c:979 config/tc-mcore.c:1560 +#: config/tc-mcore.c:980 config/tc-mcore.c:1561 msgid "M340 specific opcode used when assembling for M210" msgstr "M340 utilizado como código operacional específico cuando ensambla para M210" -#: config/tc-mcore.c:997 config/tc-mcore.c:1037 config/tc-mcore.c:1056 -#: config/tc-mcore.c:1075 config/tc-mcore.c:1103 config/tc-mcore.c:1132 -#: config/tc-mcore.c:1169 config/tc-mcore.c:1204 config/tc-mcore.c:1223 -#: config/tc-mcore.c:1242 config/tc-mcore.c:1276 config/tc-mcore.c:1301 -#: config/tc-mcore.c:1358 config/tc-mcore.c:1412 config/tc-mcore.c:1448 -#: config/tc-mcore.c:1507 config/tc-mcore.c:1529 config/tc-mcore.c:1552 +#: config/tc-mcore.c:998 config/tc-mcore.c:1038 config/tc-mcore.c:1057 +#: config/tc-mcore.c:1076 config/tc-mcore.c:1104 config/tc-mcore.c:1133 +#: config/tc-mcore.c:1170 config/tc-mcore.c:1205 config/tc-mcore.c:1224 +#: config/tc-mcore.c:1243 config/tc-mcore.c:1277 config/tc-mcore.c:1302 +#: config/tc-mcore.c:1359 config/tc-mcore.c:1413 config/tc-mcore.c:1449 +#: config/tc-mcore.c:1508 config/tc-mcore.c:1530 config/tc-mcore.c:1553 msgid "second operand missing" msgstr "ausente el segundo operando" -#: config/tc-mcore.c:1013 +#: config/tc-mcore.c:1014 msgid "destination register must be r1" msgstr "destino debe ser registro r1" -#: config/tc-mcore.c:1034 +#: config/tc-mcore.c:1035 msgid "source register must be r1" msgstr "origen debe ser registro r1" -#: config/tc-mcore.c:1098 config/tc-mcore.c:1155 +#: config/tc-mcore.c:1099 config/tc-mcore.c:1156 msgid "immediate is not a power of two" msgstr "inmediato no es una potencia de dos" -#: config/tc-mcore.c:1126 +#: config/tc-mcore.c:1127 msgid "translating bgeni to movi" msgstr "se traslada ‘bgeni’ a ‘movi’" -#: config/tc-mcore.c:1163 -msgid "translating mgeni to movi" -msgstr "se traslada ‘mgeni’ a ‘movi’" - -#: config/tc-mcore.c:1195 +#: config/tc-mcore.c:1196 msgid "translating bmaski to movi" msgstr "se traslada ‘bmaski’ a ‘movi’" -#: config/tc-mcore.c:1271 +#: config/tc-mcore.c:1272 #, c-format msgid "displacement too large (%d)" msgstr "desubicación muy grande (%d)" -#: config/tc-mcore.c:1285 +#: config/tc-mcore.c:1286 msgid "Invalid register: r0 and r15 illegal" msgstr "Registro inválido: r0 y r15 ilegales" -#: config/tc-mcore.c:1316 +#: config/tc-mcore.c:1317 msgid "bad starting register: r0 and r15 invalid" -msgstr "registro de inicio equivocado: r0 y r15 inválidos" +msgstr "registro de inicio incorrecto: r0 y r15 inválidos" -#: config/tc-mcore.c:1329 +#: config/tc-mcore.c:1330 msgid "ending register must be r15" msgstr "el registro final debe ser r15" -#: config/tc-mcore.c:1349 +#: config/tc-mcore.c:1350 msgid "bad base register: must be r0" -msgstr "registro base equivocado: debe ser r0" +msgstr "registro base incorrecto: debe ser r0" -#: config/tc-mcore.c:1367 +#: config/tc-mcore.c:1368 msgid "first register must be r4" msgstr "el primer registro debe ser r4" -#: config/tc-mcore.c:1378 +#: config/tc-mcore.c:1379 msgid "last register must be r7" msgstr "el último registro debe ser r7" -#: config/tc-mcore.c:1415 +#: config/tc-mcore.c:1416 msgid "reg-reg expected" msgstr "se esperaba registro-registro" -#: config/tc-mcore.c:1526 -msgid "second operand must be 1" -msgstr "el segundo operando debe ser 1" - -#: config/tc-mcore.c:1547 +#: config/tc-mcore.c:1548 msgid "zero used as immediate value" msgstr "se utiliza cero como valor inmediato" -#: config/tc-mcore.c:1574 +#: config/tc-mcore.c:1575 msgid "duplicated psr bit specifier" msgstr "especificador de bit psr duplicado" -#: config/tc-mcore.c:1580 +#: config/tc-mcore.c:1581 msgid "`af' must appear alone" msgstr "`af' debe aparecer solo" -#: config/tc-mcore.c:1587 config/tc-microblaze.c:1734 +#: config/tc-mcore.c:1588 config/tc-microblaze.c:1807 #, c-format msgid "unimplemented opcode \"%s\"" msgstr "código operacional «%s» no implementado" -#: config/tc-mcore.c:1596 config/tc-microblaze.c:1743 +#: config/tc-mcore.c:1597 config/tc-microblaze.c:1816 #, c-format msgid "ignoring operands: %s " msgstr "se descartan los operandos: %s " -#: config/tc-mcore.c:1669 +#: config/tc-mcore.c:1673 #, c-format msgid "unrecognised cpu type '%s'" msgstr "no reconocido el tipo de cpu «%s»" -#: config/tc-mcore.c:1687 +#: config/tc-mcore.c:1691 #, c-format msgid "" "MCORE specific options:\n" @@ -10831,54 +12730,47 @@ msgstr "" " -EB ensambla para un sistema big endian (predet.)\n" " -EL ensambla para un sistema little endian\n" -#: config/tc-mcore.c:1705 config/tc-microblaze.c:1854 +#: config/tc-mcore.c:1709 config/tc-microblaze.c:1926 msgid "failed sanity check: short_jump" -msgstr "falló la prueba de sensated: short_jump" +msgstr "la inspección sanitaria ha fallado: short_jump" -#: config/tc-mcore.c:1715 config/tc-microblaze.c:1864 +#: config/tc-mcore.c:1719 config/tc-microblaze.c:1936 msgid "failed sanity check: long_jump" -msgstr "falló la prueba de sensated: long_jump" +msgstr "la inspección sanitaria ha fallado: long_jump" -#: config/tc-mcore.c:1741 +#: config/tc-mcore.c:1745 #, c-format msgid "odd displacement at %x" msgstr "desplazamiento impar en %x" -#. Variable not in small data read only segment accessed -#. using small data read only anchor. -#: config/tc-mcore.c:1923 config/tc-microblaze.c:1970 -#: config/tc-microblaze.c:2268 config/tc-microblaze.c:2291 -msgid "unknown" -msgstr "desconocido" - -#: config/tc-mcore.c:1950 +#: config/tc-mcore.c:1954 #, c-format msgid "odd distance branch (0x%lx byte)" msgid_plural "odd distance branch (0x%lx bytes)" msgstr[0] "distancia de ramificación impar (0x%lx bytes)" msgstr[1] "distancia de ramificación impar (0x%lx byte)" -#: config/tc-mcore.c:1957 +#: config/tc-mcore.c:1961 #, c-format msgid "pcrel for branch to %s too far (0x%lx)" msgstr "el pcrel para ramificar a %s muy lejos (0x%lx)" -#: config/tc-mcore.c:1977 +#: config/tc-mcore.c:1981 #, c-format msgid "pcrel for lrw/jmpi/jsri to %s too far (0x%lx)" msgstr "el pcrel para lrw/jmpi/jsri a %s está muy lejos (0x%lx)" -#: config/tc-mcore.c:1989 +#: config/tc-mcore.c:1993 #, c-format msgid "pcrel for loopt too far (0x%lx)" msgstr "el pcrel para bucle ‘loopt’ está muy lejos (0x%lx)" -#: config/tc-mcore.c:2185 config/tc-microblaze.c:2435 config/tc-tic30.c:1386 +#: config/tc-mcore.c:2189 config/tc-microblaze.c:2529 config/tc-tic30.c:1364 #, c-format msgid "Can not do %d byte %srelocation" msgstr "No se puede hacer %d byte reubicación %s" -#: config/tc-mcore.c:2187 config/tc-microblaze.c:2437 config/tc-tic30.c:1387 +#: config/tc-mcore.c:2191 config/tc-microblaze.c:2531 config/tc-tic30.c:1365 msgid "pc-relative " msgstr "relativo a pc " @@ -10910,8 +12802,8 @@ msgstr "" "\n" " Si se da -mconfig, las otras casillas -m lo modifican. De otra manera,\n" " si no se dan casillas -m, todos los códigos operacionales core se activan;\n" -" si se da cualquier opción -m que activa, sólo ésas se activan;\n" -" si se da cualquier opción -m que desactiva, sólo ésas se desactivan.\n" +" si se da cualquier opción -m que activa, solo ésas se activan;\n" +" si se da cualquier opción -m que desactiva, solo ésas se desactivan.\n" #: config/tc-mep.c:408 msgid "$hi and $lo are disabled when MUL and DIV are off" @@ -10997,7 +12889,7 @@ msgstr "¿Tal vez le ausente %%tpoff()?" #: config/tc-mep.c:2089 msgid "bad .section directive: want a,v,w,x,M,S in string" -msgstr "directiva .section equivocada: se quiere a,v,w,x,M,S en la cadena" +msgstr "directiva .section incorrecta: se quiere a,v,w,x,M,S en la cadena" #: config/tc-mep.c:2147 msgid ".vliw unavailable when VLIW is disabled." @@ -11012,21 +12904,21 @@ msgstr "unidad no especificada de coma flotante" msgid "offset must be a multiple of %d" msgstr "desplazamiento debe ser un múltiplo de %d" -#: config/tc-metag.c:737 config/tc-metag.c:4445 +#: config/tc-metag.c:737 config/tc-metag.c:4443 msgid "offset and base must be from the same unit" msgstr "destino y origen deben ser desde la misma unidad" -#: config/tc-metag.c:868 config/tc-metag.c:3169 config/tc-metag.c:3271 +#: config/tc-metag.c:868 config/tc-metag.c:3167 config/tc-metag.c:3269 msgid "invalid destination register" msgstr "invalida registro destino" #: config/tc-metag.c:884 config/tc-metag.c:902 config/tc-metag.c:1293 -#: config/tc-metag.c:1311 config/tc-metag.c:1531 config/tc-metag.c:3101 -#: config/tc-metag.c:3186 config/tc-metag.c:3288 +#: config/tc-metag.c:1311 config/tc-metag.c:1530 config/tc-metag.c:3099 +#: config/tc-metag.c:3184 config/tc-metag.c:3286 msgid "invalid memory operand" msgstr "operando de memoria no válido" -#: config/tc-metag.c:939 config/tc-metag.c:3119 +#: config/tc-metag.c:939 config/tc-metag.c:3117 msgid "invalid source register" msgstr "invalida registro fuente" @@ -11046,22 +12938,22 @@ msgstr "invalida unidad origen" msgid "source and address units must not be shared for this addressing mode" msgstr "unidades de origen y dirección deben no ser compartidas para este modo direccional" -#: config/tc-metag.c:1073 config/tc-metag.c:1677 +#: config/tc-metag.c:1073 config/tc-metag.c:1676 msgid "set can only use RD port as source" msgstr "" #: config/tc-metag.c:1088 config/tc-metag.c:1189 config/tc-metag.c:1440 -#: config/tc-metag.c:1698 config/tc-metag.c:4055 +#: config/tc-metag.c:1697 config/tc-metag.c:4053 #, c-format msgid "base unit must be one of %s" msgstr "unidad base debe ser una de %s" #. We already tried to encode as an extended GET/SET. #. Parsing as a standard GET/SET provides a smaller offset. -#: config/tc-metag.c:1109 config/tc-metag.c:1215 config/tc-metag.c:3132 -#: config/tc-metag.c:3199 config/tc-metag.c:3301 config/tc-metag.c:4582 +#: config/tc-metag.c:1109 config/tc-metag.c:1215 config/tc-metag.c:3130 +#: config/tc-metag.c:3197 config/tc-metag.c:3299 config/tc-metag.c:4580 msgid "offset value out of range" -msgstr "valor desplazado fuera de límite" +msgstr "valor desplazado fuera de rango" #: config/tc-metag.c:1169 msgid "destination unit must be RD" @@ -11081,1160 +12973,1213 @@ msgstr "registro listado debe ser numerado pares" #: config/tc-metag.c:1357 msgid "register list must be from the same unit" -msgstr "listado de registro debe ser de la misma unidad" +msgstr "listado de registros debe ser de la misma unidad" #: config/tc-metag.c:1380 msgid "register list must not contain duplicates" msgstr "registrador listado debe no contener duplicados" -#: config/tc-metag.c:1637 +#: config/tc-metag.c:1636 msgid "MDRD value must be between 1 and 8" msgstr "MDRD validado debe estar entre 1 y 9" -#: config/tc-metag.c:1728 +#: config/tc-metag.c:1727 msgid "invalid destination memory operand" msgstr "operando de memoria destino no válida" -#: config/tc-metag.c:1743 +#: config/tc-metag.c:1742 msgid "invalid source memory operand" msgstr "operando de memoria origen inválido" -#: config/tc-metag.c:1750 +#: config/tc-metag.c:1749 #, c-format msgid "address units must be one of %s" msgstr "unidades direccionales debe ser uno de %s" -#: config/tc-metag.c:1757 +#: config/tc-metag.c:1756 msgid "base and offset must be from the same unit" msgstr "base y destino deben ser desde la misma unidad" -#: config/tc-metag.c:1765 +#: config/tc-metag.c:1764 msgid "source and destination increment mode must agree" msgstr "modo incrementa de origen y destino registros fuente y destino no deben ser iguales" -#: config/tc-metag.c:2040 +#: config/tc-metag.c:2039 msgid "PC, CT, TR and TT are treated as if they are a single unit but operands must be in different units" msgstr "" -#: config/tc-metag.c:2049 +#: config/tc-metag.c:2048 msgid "source and destination register must be in different units" msgstr "registro de origen y destino deben ser unidades diferentes" -#: config/tc-metag.c:2081 +#: config/tc-metag.c:2080 #, c-format msgid "register unit must be one of %s" msgstr "unidad registro debe ser una de %s" -#: config/tc-metag.c:2168 +#: config/tc-metag.c:2167 #, c-format msgid "link register unit must be one of %s" msgstr "registro enlazado unitario debe ser uno de %s" -#: config/tc-metag.c:2174 +#: config/tc-metag.c:2173 msgid "link register must be in a low numbered register" msgstr "registro enlazado debe estar dentro de un registro numerado bajo" -#: config/tc-metag.c:2191 config/tc-metag.c:2716 config/tc-metag.c:2770 +#: config/tc-metag.c:2190 config/tc-metag.c:2715 config/tc-metag.c:2769 msgid "target out of range" -msgstr "objetivo fuera de límite" +msgstr "objetivo fuera de rango" -#: config/tc-metag.c:2672 +#: config/tc-metag.c:2671 msgid "invalid quickrot unit specified" msgstr "invalida unidad quickrot especificada" -#: config/tc-metag.c:2688 +#: config/tc-metag.c:2687 msgid "invalid quickrot register specified" msgstr "invalida registro quickrot especificado" -#: config/tc-metag.c:2742 +#: config/tc-metag.c:2741 msgid "source register must be in the trigger unit" msgstr "registro origen debe estar en la unidad disparadora" -#: config/tc-metag.c:2845 +#: config/tc-metag.c:2844 msgid "Source registers must be in the same unit" msgstr "Registros origen deben estar en la misma unidad" -#: config/tc-metag.c:3556 config/tc-metag.c:3720 config/tc-metag.c:3988 +#: config/tc-metag.c:3554 config/tc-metag.c:3718 config/tc-metag.c:3986 msgid "destination register should be even numbered" msgstr "registro destino deberían ser numerados pares" -#: config/tc-metag.c:3628 +#: config/tc-metag.c:3626 msgid "comparison must be with register or #0" msgstr "comparaciones deben ser con registros o #0" -#: config/tc-metag.c:3694 config/tc-metag.c:3759 +#: config/tc-metag.c:3692 config/tc-metag.c:3757 msgid "instruction cannot operate on pair values" msgstr "instrucción no puede operar pares de valores" -#: config/tc-metag.c:3705 +#: config/tc-metag.c:3703 msgid "zero flag is not valid for this instruction" msgstr "marca cero no es válida para esta instrucción" -#: config/tc-metag.c:3726 +#: config/tc-metag.c:3724 msgid "source register should be even numbered" msgstr "registro origen deberían ser numerados pares" -#: config/tc-metag.c:3786 config/tc-metag.c:3795 +#: config/tc-metag.c:3784 config/tc-metag.c:3793 msgid "fraction bits value out of range" -msgstr "valor de varios bit fraccional fuera de límite" +msgstr "valor de varios bit fraccional fuera de rango" -#: config/tc-metag.c:3977 +#: config/tc-metag.c:3975 msgid "simd instructions operate on pair values (L prefix)" msgstr "" -#: config/tc-metag.c:3995 +#: config/tc-metag.c:3993 msgid "source registers should be even numbered" msgstr "registros origen deberían ser numerados pares" -#: config/tc-metag.c:4273 +#: config/tc-metag.c:4271 #, c-format msgid "expected ']', not %c in %s" msgstr "esperaba ']', no %c dentro de %s" -#: config/tc-metag.c:4392 +#: config/tc-metag.c:4390 msgid "invalid register for memory access" msgstr "registro para acceso de memoria inválido" -#: config/tc-metag.c:4505 config/tc-metag.c:4633 +#: config/tc-metag.c:4503 config/tc-metag.c:4631 msgid "unexpected end of line" msgstr "fin de línea inesperada" -#: config/tc-metag.c:4552 +#: config/tc-metag.c:4550 msgid "'H' modifier only valid for accumulator registers" msgstr "Registro acumulador inválido" -#: config/tc-metag.c:4605 +#: config/tc-metag.c:4603 msgid "base unit must be either A0 or A1" msgstr "unidad base debe ser o A0 o A1" -#: config/tc-metag.c:4678 config/tc-metag.c:5121 +#: config/tc-metag.c:4676 config/tc-metag.c:5119 msgid "invalid register" msgstr "invalida registro" -#: config/tc-metag.c:4826 +#: config/tc-metag.c:4787 config/tc-metag.c:5528 config/tc-metag.c:5550 +msgid "invalid register operand" +msgstr "invalida registro operando" + +#: config/tc-metag.c:4824 msgid "could not parse template definition" msgstr "no pudo interpretar definición de plantilla" -#: config/tc-metag.c:5013 +#: config/tc-metag.c:5011 msgid "QUICKRoT 64-bit extension not applicable to this instruction" msgstr "Extensión QUICKRoT 64-bit no aplicable a esta instrucción" -#: config/tc-metag.c:5069 +#: config/tc-metag.c:5067 msgid "invalid operands for cross-unit op" msgstr "operandos inválidos para op de unidades cruzadas" -#: config/tc-metag.c:5111 +#: config/tc-metag.c:5109 msgid "missing flags: one of 'P', 'N' or 'Z' required" msgstr "" -#: config/tc-metag.c:5139 +#: config/tc-metag.c:5137 msgid "'P', 'N' or 'Z' flags may only be specified when accumulating" msgstr "" -#: config/tc-metag.c:5160 +#: config/tc-metag.c:5158 msgid "accumulator not a valid destination" msgstr "acumulador no un destino válido" -#: config/tc-metag.c:5170 config/tc-metag.c:5386 config/tc-metag.c:5570 +#: config/tc-metag.c:5168 config/tc-metag.c:5384 config/tc-metag.c:5568 msgid "invalid immediate value" msgstr "valor inmediato inválido" -#: config/tc-metag.c:5182 +#: config/tc-metag.c:5180 #, fuzzy #| msgid "immediate value cannot be used to set this field" msgid "immediate value not allowed when source & dest differ" msgstr "no se puede usar un valor inmediato para establecer este campo" -#: config/tc-metag.c:5214 +#: config/tc-metag.c:5212 #, c-format msgid "invalid register operand: %s" msgstr "operando registrado inválido: %s" -#: config/tc-metag.c:5248 +#: config/tc-metag.c:5246 msgid "QUICKRoT extension requires 4 registers" msgstr "Extensión QUICKRoT requiere 4 registros" -#: config/tc-metag.c:5255 +#: config/tc-metag.c:5253 msgid "invalid fourth register" msgstr "registro cuarto inválido" -#: config/tc-metag.c:5262 +#: config/tc-metag.c:5260 msgid "A0.2,A0.3,A1.2,A1.3 required for QUICKRoT register" msgstr "A0.2,A0.3,A1.2,A1.3 requerido para registrador QUICKRoT" -#: config/tc-metag.c:5290 +#: config/tc-metag.c:5288 msgid "DSP RAM pointer in incorrect unit" msgstr "" -#: config/tc-metag.c:5336 +#: config/tc-metag.c:5334 msgid "invalid register operand #1" msgstr "operando registrado inválido Nº1" -#: config/tc-metag.c:5350 +#: config/tc-metag.c:5348 msgid "invalid register operand #2" msgstr "operando registrado inválido Nº2" -#: config/tc-metag.c:5414 +#: config/tc-metag.c:5412 msgid "this instruction does not accept an immediate" msgstr "esta instrucción no acepta un inmediato" -#: config/tc-metag.c:5434 +#: config/tc-metag.c:5432 msgid "invalid register operand #3" msgstr "operando registrado inválido Nº3" -#: config/tc-metag.c:5446 +#: config/tc-metag.c:5444 msgid "this instruction does not accept an accumulator" msgstr "esta instrucción no acepta un acumulador" -#: config/tc-metag.c:5464 +#: config/tc-metag.c:5462 msgid "invalid register operand #4" msgstr "operando registrado inválido Nº4" -#: config/tc-metag.c:5541 +#: config/tc-metag.c:5539 msgid "invalid accumulator register" msgstr "invalida registro acumulador" -#: config/tc-metag.c:5597 +#: config/tc-metag.c:5595 msgid "conditional instruction cannot use G flag" msgstr "la instrucción condicional no puede utilizar marca G" -#: config/tc-metag.c:5608 +#: config/tc-metag.c:5606 msgid "conditional instruction cannot use B flag" msgstr "la instrucción condicional no puede utilizar marca B" -#: config/tc-metag.c:5619 +#: config/tc-metag.c:5617 msgid "conditional instruction cannot use R flag" msgstr "instrucción condicional no puede utilizar marca R" -#: config/tc-metag.c:5728 +#: config/tc-metag.c:5726 msgid "'L' modifier not valid for this instruction" msgstr "Modificador 'L' no válido para esta instrucción" -#: config/tc-metag.c:5860 +#: config/tc-metag.c:5858 #, c-format msgid "missing fpu name `%s'" msgstr "ausente el nombre fpu «%s»" -#: config/tc-metag.c:5871 +#: config/tc-metag.c:5869 #, c-format msgid "unknown fpu `%s'" msgstr "desconoce FPU «%s»" -#: config/tc-metag.c:5886 +#: config/tc-metag.c:5884 #, c-format msgid "missing DSP name `%s'" msgstr "nombre DSP ausente «%s»" -#: config/tc-metag.c:5897 +#: config/tc-metag.c:5895 #, c-format msgid "unknown DSP `%s'" msgstr "desconoce DSP `%s'" -#: config/tc-metag.c:5915 +#: config/tc-metag.c:5913 msgid "<dsp name>\t assemble for DSP architecture <dsp name>" msgstr "<nombre dsp>\t ensambla para la arquitectura DSP <nombre dsp>" -#: config/tc-metag.c:5953 +#: config/tc-metag.c:5950 #, c-format msgid " Meta specific command line options:\n" msgstr " Opciones de la línea de mandatos específicas de Meta:\n" -#: config/tc-metag.c:6042 +#: config/tc-metag.c:6039 msgid "premature end of floating point prefix" msgstr "final prematuro de prefijo coma flotante" -#: config/tc-metag.c:6102 +#: config/tc-metag.c:6099 msgid "unknown floating point prefix character" msgstr "desconoce prefijo de caracteres de coma flotante" -#: config/tc-metag.c:6251 +#: config/tc-metag.c:6248 #, c-format msgid "unknown DSP prefix character %c %s" msgstr "carácter prefijo DSP desconocido %c%s" -#: config/tc-metag.c:6514 +#: config/tc-metag.c:6511 #, c-format msgid "instruction mnemonic too long: %s" msgstr "instrucción mnemónica demasiado larga: %s" -#: config/tc-metag.c:6569 +#: config/tc-metag.c:6566 #, c-format msgid "junk at end of line: \"%s\"" msgstr "basura al final de la línea: «%s»" -#: config/tc-metag.c:6576 +#: config/tc-metag.c:6573 #, c-format msgid "failed to assemble instruction: \"%s\"" msgstr "fallaba al ensamblar la instrucción: «%s»" -#: config/tc-metag.c:6581 +#: config/tc-metag.c:6578 #, c-format msgid "unknown floating point mnemonic: \"%s\"" msgstr "desconoce mnemónico de coma flotante: «%s»" -#: config/tc-metag.c:6583 +#: config/tc-metag.c:6580 #, c-format msgid "unknown mnemonic: \"%s\"" msgstr "desconoce mnemónico: «%s»" -#: config/tc-metag.c:6634 +#: config/tc-metag.c:6631 #, c-format msgid "cannot assemble DSP instruction, DSP option not set: %s" msgstr "no se puede ensamblar instrucción DSP, opción DSP no establecida: %s" -#: config/tc-metag.c:6641 +#: config/tc-metag.c:6638 #, c-format msgid "cannot assemble FPU instruction, FPU option not set: %s" msgstr "no puede ensamblar la instrucción FPS, opción FPS no definida: %s" -#: config/tc-metag.c:6739 config/tc-nds32.c:6112 +#: config/tc-metag.c:6733 config/tc-nds32.c:7347 msgid "Bad call to md_atof()" msgstr "Equivocación de llamada a md_atof()" -#: config/tc-microblaze.c:516 config/tc-microblaze.c:545 -#: config/tc-microblaze.c:582 +#: config/tc-microblaze.c:216 +#, c-format +msgid "Length of .lcomm \"%s\" is already %ld. Not changed to %ld." +msgstr "La longitud de .lcomm «%s» ya es %ld. No se cambió a %ld." + +#: config/tc-microblaze.c:492 config/tc-microblaze.c:521 +#: config/tc-microblaze.c:558 #, c-format msgid "Invalid register number at '%.6s'" msgstr "Invalida número de registro en '%.6s'" -#: config/tc-microblaze.c:743 +#: config/tc-microblaze.c:723 msgid "operand must be a constant or a label" msgstr "operando debe ser una constante o una etiqueta" -#: config/tc-microblaze.c:752 +#: config/tc-microblaze.c:732 #, c-format msgid "operand must be absolute in range %lx..%lx, not %lx" msgstr "operando debe ser absoluto en límite %lx..%lx, no %lx" -#: config/tc-microblaze.c:954 config/tc-microblaze.c:961 -#: config/tc-microblaze.c:968 config/tc-microblaze.c:1001 -#: config/tc-microblaze.c:1008 config/tc-microblaze.c:1014 -#: config/tc-microblaze.c:1127 config/tc-microblaze.c:1134 -#: config/tc-microblaze.c:1140 config/tc-microblaze.c:1171 -#: config/tc-microblaze.c:1178 config/tc-microblaze.c:1198 -#: config/tc-microblaze.c:1205 config/tc-microblaze.c:1225 -#: config/tc-microblaze.c:1232 config/tc-microblaze.c:1250 -#: config/tc-microblaze.c:1257 config/tc-microblaze.c:1279 -#: config/tc-microblaze.c:1286 config/tc-microblaze.c:1304 -#: config/tc-microblaze.c:1316 config/tc-microblaze.c:1334 -#: config/tc-microblaze.c:1351 config/tc-microblaze.c:1358 -#: config/tc-microblaze.c:1404 config/tc-microblaze.c:1411 -#: config/tc-microblaze.c:1457 config/tc-microblaze.c:1464 -#: config/tc-microblaze.c:1486 config/tc-microblaze.c:1493 -#: config/tc-microblaze.c:1513 config/tc-microblaze.c:1519 -#: config/tc-microblaze.c:1579 config/tc-microblaze.c:1585 -#: config/tc-microblaze.c:1645 config/tc-microblaze.c:1719 +#: config/tc-microblaze.c:934 config/tc-microblaze.c:941 +#: config/tc-microblaze.c:948 config/tc-microblaze.c:981 +#: config/tc-microblaze.c:988 config/tc-microblaze.c:994 +#: config/tc-microblaze.c:1113 config/tc-microblaze.c:1120 +#: config/tc-microblaze.c:1126 config/tc-microblaze.c:1157 +#: config/tc-microblaze.c:1165 config/tc-microblaze.c:1179 +#: config/tc-microblaze.c:1197 config/tc-microblaze.c:1238 +#: config/tc-microblaze.c:1245 config/tc-microblaze.c:1265 +#: config/tc-microblaze.c:1272 config/tc-microblaze.c:1292 +#: config/tc-microblaze.c:1299 config/tc-microblaze.c:1317 +#: config/tc-microblaze.c:1324 config/tc-microblaze.c:1346 +#: config/tc-microblaze.c:1353 config/tc-microblaze.c:1371 +#: config/tc-microblaze.c:1383 config/tc-microblaze.c:1401 +#: config/tc-microblaze.c:1418 config/tc-microblaze.c:1425 +#: config/tc-microblaze.c:1471 config/tc-microblaze.c:1478 +#: config/tc-microblaze.c:1524 config/tc-microblaze.c:1531 +#: config/tc-microblaze.c:1553 config/tc-microblaze.c:1560 +#: config/tc-microblaze.c:1580 config/tc-microblaze.c:1586 +#: config/tc-microblaze.c:1648 config/tc-microblaze.c:1654 +#: config/tc-microblaze.c:1716 config/tc-microblaze.c:1792 msgid "Error in statement syntax" msgstr "Error en la sintaxis de la declaración" -#: config/tc-microblaze.c:974 config/tc-microblaze.c:976 -#: config/tc-microblaze.c:978 config/tc-microblaze.c:1018 -#: config/tc-microblaze.c:1020 config/tc-microblaze.c:1144 -#: config/tc-microblaze.c:1146 config/tc-microblaze.c:1184 -#: config/tc-microblaze.c:1186 config/tc-microblaze.c:1211 -#: config/tc-microblaze.c:1213 config/tc-microblaze.c:1238 -#: config/tc-microblaze.c:1261 config/tc-microblaze.c:1292 -#: config/tc-microblaze.c:1322 config/tc-microblaze.c:1340 -#: config/tc-microblaze.c:1470 config/tc-microblaze.c:1472 -#: config/tc-microblaze.c:1499 config/tc-microblaze.c:1501 -#: config/tc-microblaze.c:1523 config/tc-microblaze.c:1589 -#: config/tc-microblaze.c:1651 +#: config/tc-microblaze.c:954 config/tc-microblaze.c:956 +#: config/tc-microblaze.c:958 config/tc-microblaze.c:998 +#: config/tc-microblaze.c:1000 config/tc-microblaze.c:1130 +#: config/tc-microblaze.c:1132 config/tc-microblaze.c:1171 +#: config/tc-microblaze.c:1173 config/tc-microblaze.c:1251 +#: config/tc-microblaze.c:1253 config/tc-microblaze.c:1278 +#: config/tc-microblaze.c:1280 config/tc-microblaze.c:1305 +#: config/tc-microblaze.c:1328 config/tc-microblaze.c:1359 +#: config/tc-microblaze.c:1389 config/tc-microblaze.c:1407 +#: config/tc-microblaze.c:1537 config/tc-microblaze.c:1539 +#: config/tc-microblaze.c:1566 config/tc-microblaze.c:1568 +#: config/tc-microblaze.c:1590 config/tc-microblaze.c:1658 +#: config/tc-microblaze.c:1722 msgid "Cannot use special register with this instruction" msgstr "No se puede usar el registro especial con esta instrucción" -#: config/tc-microblaze.c:1028 +#: config/tc-microblaze.c:1008 msgid "lmi pseudo instruction should not use a label in imm field" msgstr "pseudo instrucción lmi no debería emplear una etiqueta en el campo imm" -#: config/tc-microblaze.c:1030 +#: config/tc-microblaze.c:1010 msgid "smi pseudo instruction should not use a label in imm field" msgstr "pseudo instrucción smi no debería emplear una etiqueta en el campo imm" -#: config/tc-microblaze.c:1149 +#: config/tc-microblaze.c:1135 msgid "Symbol used as immediate for shift instruction" msgstr "Se utiliza un símbolo como inmediato para la instrucción desplazamiento" -#: config/tc-microblaze.c:1158 +#: config/tc-microblaze.c:1144 #, c-format msgid "Shift value > 32. using <value %% 32>" msgstr "Valor de desplazamiento > 32. se utiliza <value %% 32>" -#: config/tc-microblaze.c:1264 +#: config/tc-microblaze.c:1184 +#, fuzzy +#| msgid "Symbol used as immediate value for msrset/msrclr instructions" +msgid "Symbol used as immediate width value for bit field instruction" +msgstr "Se utiliza un símbolo como valor inmediato para instrucciones msrset/msrclr" + +#: config/tc-microblaze.c:1191 +#, fuzzy +#| msgid "file number less than one" +msgid "Width value must be less than 32" +msgstr "número de fichero menor que uno" + +#: config/tc-microblaze.c:1202 +#, fuzzy +#| msgid "Symbol used as immediate value for msrset/msrclr instructions" +msgid "Symbol used as immediate shift value for bit field instruction" +msgstr "Se utiliza un símbolo como valor inmediato para instrucciones msrset/msrclr" + +#: config/tc-microblaze.c:1213 +#, fuzzy, c-format +#| msgid "Shift value > 32. using <value %% 32>" +msgid "Shift value greater than 32. using <value %% 32>" +msgstr "Valor de desplazamiento > 32. se utiliza <value %% 32>" + +#: config/tc-microblaze.c:1219 +#, fuzzy +#| msgid "branch target frequency must be greater than 0" +msgid "Width value + shift value must not be greater than 32" +msgstr "la frecuencia de ramificación de objetivo debe ser mayor a 0" + +#: config/tc-microblaze.c:1331 msgid "Symbol used as immediate value for msrset/msrclr instructions" msgstr "Se utiliza un símbolo como valor inmediato para instrucciones msrset/msrclr" -#: config/tc-microblaze.c:1393 config/tc-microblaze.c:1446 +#: config/tc-microblaze.c:1460 config/tc-microblaze.c:1513 msgid "invalid value for special purpose register" msgstr "valor inválido para el registro de propósito especial" -#: config/tc-microblaze.c:1659 +#: config/tc-microblaze.c:1730 msgid "An IMM instruction should not be present in the .s file" msgstr "Una instrucción IMM no debe estar presente en el fichero .s" -#: config/tc-microblaze.c:1721 +#: config/tc-microblaze.c:1794 msgid "Symbol used as immediate for mbar instruction" msgstr "Se utiliza un símbolo como inmediato para instrucción mbar" -#: config/tc-microblaze.c:1727 +#: config/tc-microblaze.c:1800 #, c-format msgid "Immediate value for mbar > 32. using <value %% 32>" msgstr "Valor inmediato para mbar > 32. utilizando <valor %% 32>" -#: config/tc-microblaze.c:1804 +#: config/tc-microblaze.c:1874 msgid "Bad call to MD_NTOF()" -msgstr "Llamada equivocada a MD_NTOF()" +msgstr "Llamada incorrecta a MD_NTOF()" -#: config/tc-microblaze.c:2061 +#: config/tc-microblaze.c:2143 #, c-format msgid "pcrel for branch to %s too far (0x%x)" msgstr "el pcrel para ramificar a %s muy lejos (0x%x)" #. We know the abs value: Should never happen. -#: config/tc-microblaze.c:2216 +#: config/tc-microblaze.c:2304 msgid "Absolute PC-relative value in relaxation code. Assembler error....." msgstr "Valor relativo a PC absoluto en código de relajación. Error de ensamblador....." #. Cannot have a PC-relative branch to a diff segment. -#: config/tc-microblaze.c:2230 +#: config/tc-microblaze.c:2318 #, c-format msgid "PC relative branch to label %s which is not in the instruction space" msgstr "Ramificación relativa a PC a la etiqueta %s, la cual no está en el espacio de instrucción" -#: config/tc-microblaze.c:2271 +#: config/tc-microblaze.c:2361 msgid "Variable is accessed using small data read only anchor, but it is not in the small data read only section" -msgstr "Se accede a la variable usando un ancla de sólo lectura de datos small, pero no está en la sección de sólo lectura de datos small" +msgstr "Se accede a la variable usando un ancla de solo lectura de datos small, pero no está en la sección de solo lectura de datos small" -#: config/tc-microblaze.c:2294 +#: config/tc-microblaze.c:2384 msgid "Variable is accessed using small data read write anchor, but it is not in the small data read write section" msgstr "Se accede a la variable usando un ancla de lectura escritura de datos smaill, pero no está en la sección de lectura escritura de datos small" -#: config/tc-microblaze.c:2303 +#: config/tc-microblaze.c:2393 msgid "Incorrect fr_opcode value in frag. Internal error....." msgstr "Valor de fr_opcode incorrecto en frag. Error interno....." #. We know the abs value: Should never happen. -#: config/tc-microblaze.c:2310 +#: config/tc-microblaze.c:2400 msgid "Absolute value in relaxation code. Assembler error....." msgstr "Valor absoluto en código de relajación. Error de ensamblador....." -#: config/tc-mips.c:2081 +#. fprintf(stream, _(" MicroBlaze options:\n -noSmall Data in the comm and data sections do not go into the small data section\n")); +#: config/tc-microblaze.c:2585 +#, fuzzy, c-format +#| msgid " Score-specific assembler options:\n" +msgid " MicroBlaze specific assembler options:\n" +msgstr " Opciones de ensamblador específicas de Score:\n" + +#: config/tc-microblaze.c:2586 +#, fuzzy +#| msgid "assemble for big-endian" +msgid "assemble for a big endian cpu" +msgstr "ensamblar para big-endian" + +#: config/tc-microblaze.c:2587 +#, fuzzy +#| msgid "assemble for little-endian" +msgid "assemble for a little endian cpu" +msgstr "ensamblar para little-endian" + +#: config/tc-mips.c:2184 #, c-format msgid "the %d-bit %s architecture does not support the `%s' extension" msgstr "el %d-bit %s arquitectural no admite «%s» como extensión" -#: config/tc-mips.c:2084 +#: config/tc-mips.c:2187 #, c-format msgid "the `%s' extension requires %s%d revision %d or greater" msgstr "la extensión «%s» requiere %s%d revisión %d o superior" -#: config/tc-mips.c:2093 +#: config/tc-mips.c:2196 #, c-format msgid "the `%s' extension was removed in %s%d revision %d" msgstr "la extensión «%s» fue quitada en %s%d revisión %d" -#: config/tc-mips.c:2102 +#: config/tc-mips.c:2205 #, c-format msgid "the `%s' extension requires 64-bit FPRs" msgstr "la extensión `%s' requiere varios FPR de 64-bit" -#: config/tc-mips.c:2945 config/tc-mips.c:16245 +#: config/tc-mips.c:3057 config/tc-mips.c:16644 #, c-format msgid "unrecognized register name `%s'" msgstr "nombre de registro no reconocido «%s»" -#: config/tc-mips.c:3172 +#: config/tc-mips.c:3284 msgid "invalid register range" msgstr "límite inválido registro" -#: config/tc-mips.c:3200 +#: config/tc-mips.c:3312 msgid "vector element must be constant" msgstr "elemento vector debe ser constante" -#: config/tc-mips.c:3210 +#: config/tc-mips.c:3322 msgid "missing `]'" msgstr "ausente `]'" -#: config/tc-mips.c:3433 +#: config/tc-mips.c:3545 #, c-format msgid "internal: bad mips opcode (mask error): %s %s" -msgstr "interno: código operacional mips equivocado (error de máscara): %s %s" +msgstr "interno: código operacional mips incorrecto (error de máscara): %s %s" -#: config/tc-mips.c:3460 +#: config/tc-mips.c:3572 #, c-format msgid "internal: unknown operand type: %s %s" msgstr "interno: tipo operando desconocido: %s %s" -#: config/tc-mips.c:3493 +#: config/tc-mips.c:3605 #, c-format msgid "internal: bad mips opcode (bits 0x%08lx doubly defined): %s %s" -msgstr "interno: código operacional mips equivocado (bits 0x%08lx definidos doble ): %s %s" +msgstr "interno: código operacional mips incorrecto (bits 0x%08lx definidos doble ): %s %s" -#: config/tc-mips.c:3501 +#: config/tc-mips.c:3613 #, c-format msgid "internal: bad mips opcode (bits 0x%08lx undefined): %s %s" -msgstr "interno: código operacional mips equivocado (varios bit 0x%08lx definidos): %s %s" +msgstr "interno: código operacional mips incorrecto (varios bit 0x%08lx definidos): %s %s" -#: config/tc-mips.c:3508 +#: config/tc-mips.c:3620 #, c-format msgid "internal: bad mips opcode (bits 0x%08lx defined): %s %s" -msgstr "interno: código operacional mips equivocado (varios bit 0x%08lx definidos): %s %s" +msgstr "interno: código operacional mips incorrecto (varios bit 0x%08lx definidos): %s %s" -#: config/tc-mips.c:3543 +#: config/tc-mips.c:3655 #, c-format msgid "internal error: bad microMIPS opcode (incorrect length: %u): %s %s" -msgstr "error interno: código op microMIPS equivocado (longitud eincorrecta: %u): %s %s" +msgstr "error interno: código op microMIPS incorrecto (longitud eincorrecta: %u): %s %s" -#: config/tc-mips.c:3551 +#: config/tc-mips.c:3663 #, c-format msgid "internal error: bad microMIPS opcode (opcode/length mismatch): %s %s" msgstr "error interno: equivocación de código operativo microMIPS (código operacional/longitud incoherente): %s %s" -#: config/tc-mips.c:3577 +#: config/tc-mips.c:3688 msgid "-G may not be used in position-independent code" msgstr "-G no se puede usar en código independiente de posición" -#: config/tc-mips.c:3583 +#: config/tc-mips.c:3694 msgid "-G may not be used with abicalls" msgstr "-G quizá no está emplado con llamadas abi" -#. Probably a memory allocation problem? Give up now. -#: config/tc-mips.c:3603 config/tc-mips.c:3694 +#: config/tc-mips.c:3799 msgid "broken assembler, no assembly attempted" msgstr "ensamblador descompuesto, no trata ensamblarlo" -#: config/tc-mips.c:3633 config/tc-mips.c:3662 -#, c-format -msgid "internal: can't hash `%s': %s" -msgstr "interno: no se puede dispersar «%s»: %s" - -#: config/tc-mips.c:3844 +#: config/tc-mips.c:3947 #, c-format msgid ".gnu_attribute %d,%d is incompatible with `%s'" msgstr ".gnu_attribute %d,%d es incompatible con «%s»" -#: config/tc-mips.c:3851 +#: config/tc-mips.c:3954 #, c-format msgid ".gnu_attribute %d,%d requires `%s'" msgstr ".gnu_attribute %d,%d requiere «%s»" -#: config/tc-mips.c:3912 +#: config/tc-mips.c:4015 #, c-format msgid ".gnu_attribute %d,%d is no longer supported" msgstr ".gnu_attribute %d,%d no es compatible más" -#: config/tc-mips.c:3921 +#: config/tc-mips.c:4024 #, c-format msgid ".gnu_attribute %d,%d is not a recognized floating-point ABI" msgstr ".gnu_attribute %d,%d no es un ABI coma-flotante reconocida" -#: config/tc-mips.c:3934 +#: config/tc-mips.c:4037 msgid "`gp=64' used with a 32-bit processor" msgstr "se utilizó `gp=64' con un procesador de 32-bit" -#: config/tc-mips.c:3937 +#: config/tc-mips.c:4040 msgid "`gp=32' used with a 64-bit ABI" msgstr "se utilizó `gp=32' con un ABI de 64-bit" -#: config/tc-mips.c:3940 +#: config/tc-mips.c:4043 msgid "`gp=64' used with a 32-bit ABI" msgstr "se utilizó `gp=64' con un ABI de 32-bit" -#: config/tc-mips.c:3947 +#: config/tc-mips.c:4050 msgid "`fp=xx' used with a cpu lacking ldc1/sdc1 instructions" msgstr "" -#: config/tc-mips.c:3949 +#: config/tc-mips.c:4052 msgid "`fp=xx' cannot be used with `singlefloat'" msgstr "`fp=xx' no puede ser utilizado con `singlefloat'" -#: config/tc-mips.c:3953 +#: config/tc-mips.c:4056 msgid "`fp=64' used with a 32-bit fpu" msgstr "utilizó `fp=64' con un fpu de 32-bit" -#: config/tc-mips.c:3957 +#: config/tc-mips.c:4060 msgid "`fp=64' used with a 32-bit ABI" msgstr "utilizó `fp=64' con un ABI de 32-bit" -#: config/tc-mips.c:3962 +#: config/tc-mips.c:4065 msgid "`fp=32' used with a 64-bit ABI" msgstr "utilizó`fp=32' con un ABI de 64-bit" -#: config/tc-mips.c:3964 +#: config/tc-mips.c:4067 msgid "`fp=32' used with a MIPS R6 cpu" msgstr "utilizó `fp=32' con un MIPS R6 cpu" -#: config/tc-mips.c:3967 +#: config/tc-mips.c:4070 msgid "Unknown size of floating point registers" msgstr "Tamaño desconocido de registros de coma flotante" -#: config/tc-mips.c:3972 +#: config/tc-mips.c:4075 msgid "`nooddspreg` cannot be used with a 64-bit ABI" msgstr "`nooddspreg` no puede ser empleado con un ABI de 64-bit" -#: config/tc-mips.c:3975 config/tc-mips.c:3979 +#: config/tc-mips.c:4078 config/tc-mips.c:4082 #, c-format msgid "`%s' cannot be used with `%s'" msgstr "«%s» no puede ser utilizado con «%s»" -#: config/tc-mips.c:3984 +#: config/tc-mips.c:4087 #, c-format msgid "branch relaxation is not supported in `%s'" msgstr "relajación de ramificación no está admitida en «%s»" -#: config/tc-mips.c:4064 -msgid "trap exception not supported at ISA 1" -msgstr "excepción de captura no admitida en ISA 1" - -#: config/tc-mips.c:4077 config/tc-mips.c:17125 +#: config/tc-mips.c:4173 config/tc-mips.c:17527 #, c-format msgid "`%s' does not support legacy NaN" msgstr "«%s» no apoyado con herencia NaN" -#: config/tc-mips.c:4124 +#: config/tc-mips.c:4220 #, c-format msgid "returned from mips_ip(%s) insn_opcode = 0x%x\n" msgstr "devuelto de mips_ip(%s) insn_opcode = 0x%x\n" -#: config/tc-mips.c:4829 +#: config/tc-mips.c:4924 #, c-format msgid "operand %d out of range" -msgstr "operando %d fuera de límite" +msgstr "operando %d fuera de rango" -#: config/tc-mips.c:4837 +#: config/tc-mips.c:4932 #, c-format msgid "operand %d must be constant" msgstr "operando %d debe ser constante" -#: config/tc-mips.c:4881 read.c:4340 read.c:5316 write.c:265 write.c:1021 +#: config/tc-mips.c:4976 read.c:4594 read.c:5364 read.c:5490 write.c:250 +#: write.c:1058 msgid "register value used as expression" msgstr "valor registrado utilizado como expresión" -#: config/tc-mips.c:4894 +#: config/tc-mips.c:4989 #, c-format msgid "operand %d must be an immediate expression" msgstr "operando %d debe ser una expresión inmediata" -#: config/tc-mips.c:5015 config/tc-mips.c:5017 +#: config/tc-mips.c:5111 config/tc-mips.c:5113 #, c-format msgid "float register should be even, was %d" msgstr "registro flotante debería ser par, era %d" -#: config/tc-mips.c:5030 +#: config/tc-mips.c:5126 #, c-format msgid "condition code register should be even for %s, was %d" msgstr "código condicional registrado debería ser par para %s, era %d" -#: config/tc-mips.c:5035 +#: config/tc-mips.c:5131 #, c-format msgid "condition code register should be 0 or 4 for %s, was %d" msgstr "código condicional registrado debería ser 0 o 4 para %s, era %d" -#: config/tc-mips.c:5356 +#: config/tc-mips.c:5452 msgid "invalid performance register" msgstr "rendimiento registrado inválido" -#: config/tc-mips.c:5452 +#: config/tc-mips.c:5548 config/tc-mips.c:6019 msgid "the source register must not be $0" msgstr "el registro origen debe no ser $0" -#: config/tc-mips.c:5728 +#: config/tc-mips.c:5824 msgid "missing frame size" msgstr "ausente el tamaño del marco" -#: config/tc-mips.c:5733 +#: config/tc-mips.c:5829 msgid "frame size specified twice" msgstr "tamaño del marco especificado dos veces" -#: config/tc-mips.c:5738 +#: config/tc-mips.c:5834 msgid "invalid frame size" msgstr "tamaño de marco inválido" -#: config/tc-mips.c:5778 +#: config/tc-mips.c:5874 #, c-format msgid "operand %d must be an immediate" msgstr "operando %d debe ser un inmediato" -#: config/tc-mips.c:5793 +#: config/tc-mips.c:5889 msgid "invalid element selector" msgstr "selector de elemento inválido" -#: config/tc-mips.c:5806 +#: config/tc-mips.c:5902 #, c-format msgid "operand %d must be scalar" msgstr "operando %d debe ser escalar" -#: config/tc-mips.c:5983 +#: config/tc-mips.c:6082 msgid "floating-point expression required" msgstr "requerida expresión de coma flotante" -#: config/tc-mips.c:6083 +#: config/tc-mips.c:6182 #, c-format msgid "cannot use `%s' in this section" msgstr "no puede utilizar `%s' dentro de esta sección" -#: config/tc-mips.c:6230 +#: config/tc-mips.c:6329 msgid "used $at without \".set noat\"" msgstr "se utilizó $at sin \".set noat\"" -#: config/tc-mips.c:6232 +#: config/tc-mips.c:6331 #, c-format msgid "used $%u with \".set at=$%u\"" msgstr "se utilizó $%u sin \".set at=$%u\"" -#: config/tc-mips.c:7261 +#: config/tc-mips.c:7510 #, c-format msgid "wrong size instruction in a %u-bit branch delay slot" -msgstr "tamaño de instrucción equivocado en una ranura de retardo ramificado a %u-bit" +msgstr "tamaño de instrucción incorrecto en una ranura de retardo ramificado a %u-bit" -#: config/tc-mips.c:7281 config/tc-mips.c:7291 config/tc-mips.c:15551 +#: config/tc-mips.c:7530 config/tc-mips.c:7540 config/tc-mips.c:15944 #, c-format msgid "jump to misaligned address (0x%lx)" msgstr "omisión a una dirección mal alineada (0x%lx)" -#: config/tc-mips.c:7306 config/tc-mips.c:7326 config/tc-mips.c:7343 -#: config/tc-mips.c:8874 config/tc-mips.c:15405 config/tc-mips.c:15412 -#: config/tc-mips.c:15806 config/tc-mips.c:18640 +#: config/tc-mips.c:7555 config/tc-mips.c:7575 config/tc-mips.c:7592 +#: config/tc-mips.c:9142 config/tc-mips.c:15798 config/tc-mips.c:15805 +#: config/tc-mips.c:16198 config/tc-mips.c:19046 #, c-format msgid "branch to misaligned address (0x%lx)" msgstr "ramificación a una dirección mal alineada (0x%lx)" -#: config/tc-mips.c:7312 config/tc-mips.c:7330 config/tc-mips.c:7347 -#: config/tc-mips.c:8877 +#: config/tc-mips.c:7561 config/tc-mips.c:7579 config/tc-mips.c:7596 +#: config/tc-mips.c:9145 #, c-format msgid "branch address range overflow (0x%lx)" msgstr "ramificación de límite direccional desborda (0x%lx)" -#: config/tc-mips.c:7592 +#: config/tc-mips.c:7841 msgid "extended instruction in delay slot" msgstr "instrucción extendida en ranura de retardo" -#: config/tc-mips.c:8056 +#: config/tc-mips.c:8305 msgid "source and destination must be different" msgstr "origen y destino deben ser diferentes" -#: config/tc-mips.c:8059 +#: config/tc-mips.c:8308 msgid "a destination register must be supplied" msgstr "un registro de destino debe ser proporcionado" -#: config/tc-mips.c:8064 +#: config/tc-mips.c:8313 msgid "the source register must not be $31" msgstr "el registro origen debe no ser $31" -#: config/tc-mips.c:8312 config/tc-mips.c:14189 config/tc-mips.c:18786 +#: config/tc-mips.c:8561 config/tc-mips.c:14536 config/tc-mips.c:19193 msgid "invalid unextended operand value" msgstr "valor de operando no extendido inválido" -#: config/tc-mips.c:8430 +#: config/tc-mips.c:8679 #, c-format msgid "opcode not supported on this processor: %s (%s)" msgstr "código operacional no admitido en este procesador: %s (%s)" -#: config/tc-mips.c:8509 +#: config/tc-mips.c:8758 msgid "opcode not supported in the `insn32' mode" msgstr "código operacional no admitido dentro del modo `insn32' no admitido" -#: config/tc-mips.c:8512 +#: config/tc-mips.c:8761 #, c-format msgid "unrecognized %d-bit version of microMIPS opcode" msgstr "versión no reconocida %d-bit de código operacional microMIPS" -#: config/tc-mips.c:8568 +#: config/tc-mips.c:8817 msgid "unrecognized unextended version of MIPS16 opcode" msgstr "no reconocida versión del código operacional de MIPS16" -#: config/tc-mips.c:8571 +#: config/tc-mips.c:8820 msgid "unrecognized extended version of MIPS16 opcode" msgstr "versión extendida de código operacional MIPS16 no reconocida" -#: config/tc-mips.c:8621 config/tc-mips.c:18657 +#: config/tc-mips.c:8870 config/tc-mips.c:19064 msgid "macro instruction expanded into multiple instructions in a branch delay slot" msgstr "instrucción macro expandida en instrucciones múltiples en una ranura de retraso de ramificación" -#: config/tc-mips.c:8624 config/tc-mips.c:18665 +#: config/tc-mips.c:8873 config/tc-mips.c:19072 msgid "macro instruction expanded into multiple instructions" msgstr "instrucción macro expandida en instrucciones múltiples" -#: config/tc-mips.c:8628 +#: config/tc-mips.c:8877 msgid "macro instruction expanded into a wrong size instruction in a 16-bit branch delay slot" -msgstr "instrucción macro expandida en un tamaño de instrucción equivocado dentro de una ranura de retraso de ramificación de 16-bit" +msgstr "instrucción macro expandida en un tamaño de instrucción incorrecto dentro de una ranura de retraso de ramificación de 16-bit" -#: config/tc-mips.c:8630 +#: config/tc-mips.c:8879 msgid "macro instruction expanded into a wrong size instruction in a 32-bit branch delay slot" -msgstr "instrucción macro expandida en un tamaño de instrucción equivocado dentro de una ranura de retraso de ramificación de 32-bit" +msgstr "instrucción macro expandida en un tamaño de instrucción incorrecto dentro de una ranura de retraso de ramificación de 32-bit" -#: config/tc-mips.c:9074 +#: config/tc-mips.c:9342 msgid "operand overflow" msgstr "desbordamiento de operando" -#: config/tc-mips.c:9093 config/tc-mips.c:9677 config/tc-mips.c:13670 +#: config/tc-mips.c:9361 config/tc-mips.c:9946 config/tc-mips.c:14017 msgid "macro used $at after \".set noat\"" msgstr "macro $at empleada tras \".set noat\"" -#: config/tc-mips.c:9241 config/tc-mips.c:12009 config/tc-mips.c:12668 -#, c-format -msgid "number (0x%s) larger than 32 bits" +#: config/tc-mips.c:9506 config/tc-mips.c:12329 config/tc-mips.c:13010 +#, fuzzy, c-format +#| msgid "number (0x%s) larger than 32 bits" +msgid "number (0x%<PRIx64>) larger than 32 bits" msgstr "número (0x%s) más largo que 32 bits" -#: config/tc-mips.c:9261 +#: config/tc-mips.c:9527 msgid "number larger than 64 bits" msgstr "número más largo que 64 bits" -#: config/tc-mips.c:9555 config/tc-mips.c:9583 config/tc-mips.c:9621 -#: config/tc-mips.c:9666 config/tc-mips.c:12244 config/tc-mips.c:12283 -#: config/tc-mips.c:12322 config/tc-mips.c:12764 config/tc-mips.c:12816 +#: config/tc-mips.c:9824 config/tc-mips.c:9852 config/tc-mips.c:9890 +#: config/tc-mips.c:9935 config/tc-mips.c:12573 config/tc-mips.c:12612 +#: config/tc-mips.c:12651 config/tc-mips.c:13107 config/tc-mips.c:13159 msgid "PIC code offset overflow (max 16 signed bits)" msgstr "Desbordamiento del desplazamiento del código PIC (máx 16 bits con signo)" -#: config/tc-mips.c:10194 +#: config/tc-mips.c:10478 #, c-format msgid "BALIGN immediate not 0, 1, 2 or 3 (%lu)" msgstr "BALING inmediato no es 0, 1, 2 o 3 (%lu)" -#. result is always true -#: config/tc-mips.c:10290 +#. Result is always true. +#: config/tc-mips.c:10574 #, c-format msgid "branch %s is always true" msgstr "rama %s siempre es verdadero" -#: config/tc-mips.c:10518 config/tc-mips.c:10628 +#: config/tc-mips.c:10802 config/tc-mips.c:10910 msgid "divide by zero" msgstr "división entre cero" -#: config/tc-mips.c:10718 +#: config/tc-mips.c:11000 msgid "dla used to load 32-bit register; recommend using la instead" msgstr "dla utilizado para cargar registros de 32-bit; recomienda usar la en su lugar" -#: config/tc-mips.c:10722 +#: config/tc-mips.c:11004 msgid "la used to load 64-bit address; recommend using dla instead" msgstr "la utilizada para cargar direcciones de 64-bit; recomienda usar en lugar dla" -#: config/tc-mips.c:10831 config/tc-riscv.c:944 config/tc-z80.c:732 +#: config/tc-mips.c:11113 config/tc-riscv.c:2364 msgid "offset too large" msgstr "desplazamiento demasiado grande" -#: config/tc-mips.c:11005 config/tc-mips.c:11283 +#: config/tc-mips.c:11287 config/tc-mips.c:11565 msgid "PIC code offset overflow (max 32 signed bits)" msgstr "Desbordamiento del desplazamiento del código PIC (máx 32 bits con signo)" -#: config/tc-mips.c:11353 config/tc-mips.c:11429 +#: config/tc-mips.c:11635 config/tc-mips.c:11711 #, c-format msgid "opcode not supported in the `insn32' mode `%s'" msgstr "código operacional no admitido dentro del modo `insn32' «%s»" -#: config/tc-mips.c:11381 +#: config/tc-mips.c:11663 msgid "MIPS PIC call to register other than $25" msgstr "Llamada PIC MIPS a un registro diferente de $25" -#: config/tc-mips.c:11397 config/tc-mips.c:11408 config/tc-mips.c:11541 -#: config/tc-mips.c:11552 +#: config/tc-mips.c:11679 config/tc-mips.c:11690 config/tc-mips.c:11823 +#: config/tc-mips.c:11834 msgid "no .cprestore pseudo-op used in PIC code" msgstr "no se utilizó pseudo-operador .cprestore en el código PIC" -#: config/tc-mips.c:11402 config/tc-mips.c:11546 +#: config/tc-mips.c:11684 config/tc-mips.c:11828 msgid "no .frame pseudo-op used in PIC code" msgstr "no se utilizó pseudo-operador .frame en el código PIC" -#: config/tc-mips.c:11567 +#: config/tc-mips.c:11849 msgid "non-PIC jump used in PIC library" msgstr "omisión no-PIC utilizada en biblioteca PIC" -#: config/tc-mips.c:12494 +#: config/tc-mips.c:12830 #, c-format msgid "Unable to generate `%s' compliant code without mthc1" msgstr "" -#: config/tc-mips.c:13228 +#: config/tc-mips.c:13571 #, c-format msgid "instruction %s: result is always false" msgstr "instrucción %s: resultado es siempre falso" -#: config/tc-mips.c:13381 +#: config/tc-mips.c:13724 #, c-format msgid "instruction %s: result is always true" msgstr "instrucción %s: resultado es siempre verdadero" #. FIXME: Check if this is one of the itbl macros, since they #. are added dynamically. -#: config/tc-mips.c:13666 +#: config/tc-mips.c:14013 #, c-format msgid "macro %s not implemented yet" msgstr "macro %s aún no implementada" -#: config/tc-mips.c:14011 config/tc-mips.c:14075 config/tc-mips.c:14086 -#: config/tc-score.c:2691 config/tc-score.c:2737 -msgid "unrecognized opcode" -msgstr "no reconocido código operacional" - -#: config/tc-mips.c:14199 +#: config/tc-mips.c:14546 msgid "extended operand requested but not required" msgstr "se solicitó un operando extendido pero se necesita" -#: config/tc-mips.c:14208 +#: config/tc-mips.c:14555 msgid "operand value out of range for instruction" -msgstr "el valor de operando está fuera de límite para la instrucción" +msgstr "el valor de operando está fuera de rango para la instrucción" -#: config/tc-mips.c:14307 +#: config/tc-mips.c:14654 #, c-format msgid "relocation %s isn't supported by the current ABI" msgstr "la ABI actual no admite la reubicación %s" -#: config/tc-mips.c:14363 +#: config/tc-mips.c:14711 msgid "unclosed '('" msgstr "no cerrado '('" -#: config/tc-mips.c:14429 +#: config/tc-mips.c:14773 #, c-format msgid "a different %s was already specified, is now %s" msgstr "un %s diferente fue ya especificado, ahora es %s" -#: config/tc-mips.c:14596 +#: config/tc-mips.c:14940 msgid "-mmicromips cannot be used with -mips16" msgstr "-mmicromips no se puede usar con -mips16" -#: config/tc-mips.c:14611 +#: config/tc-mips.c:14955 msgid "-mips16 cannot be used with -micromips" msgstr "-mips16 no se puede usar con -micromips" -#: config/tc-mips.c:14762 config/tc-mips.c:14820 +#: config/tc-mips.c:15124 config/tc-mips.c:15182 msgid "no compiled in support for 64 bit object file format" msgstr "no compiló el soporte para el formato de fichero objeto de 64 bit" -#: config/tc-mips.c:14827 +#: config/tc-mips.c:15189 #, c-format msgid "invalid abi -mabi=%s" msgstr "interruptor abi -mabi=%s inválido" -#: config/tc-mips.c:14867 +#: config/tc-mips.c:15229 #, c-format msgid "invalid NaN setting -mnan=%s" msgstr "invalida opciones NaN -mnan=%s" -#: config/tc-mips.c:14901 +#: config/tc-mips.c:15263 msgid "-G not supported in this configuration" msgstr "-G no se admite en esta configuración" -#: config/tc-mips.c:14927 +#: config/tc-mips.c:15289 #, c-format msgid "-%s conflicts with the other architecture options, which imply -%s" msgstr "-%s tiene conflictos con las otras casillas de arquitectura, las cuales implican -%s" -#: config/tc-mips.c:14943 +#: config/tc-mips.c:15302 +#, c-format +msgid "gas doesn't understand your configure target %s" +msgstr "" + +#: config/tc-mips.c:15307 #, c-format msgid "-march=%s is not compatible with the selected ABI" msgstr "-march=%s no es compatible con la ABI seleccionada" -#: config/tc-mips.c:15409 config/tc-mips.c:15800 config/tc-mips.c:18637 +#: config/tc-mips.c:15802 config/tc-mips.c:16192 config/tc-mips.c:19043 msgid "branch to a symbol in another ISA mode" msgstr "ramificación a un símbolo dentro de otro modo ISA" -#: config/tc-mips.c:15416 config/tc-mips.c:15557 config/tc-mips.c:15810 +#: config/tc-mips.c:15809 config/tc-mips.c:15949 config/tc-mips.c:16202 #, c-format msgid "cannot encode misaligned addend in the relocatable field (0x%lx)" msgstr "" -#: config/tc-mips.c:15453 +#: config/tc-mips.c:15846 msgid "PC-relative reference to a different section" msgstr "Referencia relativa al PC para una sección diferente" -#: config/tc-mips.c:15525 config/tc-riscv.c:1960 +#: config/tc-mips.c:15918 config/tc-riscv.c:4627 msgid "TLS relocation against a constant" msgstr "TLS reubicado contra una constante" -#: config/tc-mips.c:15545 +#: config/tc-mips.c:15938 msgid "jump to a symbol in another ISA mode" msgstr "omite a un símbolo dentro de otro modo ISA" -#: config/tc-mips.c:15548 +#: config/tc-mips.c:15941 msgid "JALX to a symbol in the same ISA mode" msgstr "JALX para un símbolo dentro del mismo modo ISA" -#: config/tc-mips.c:15633 +#: config/tc-mips.c:16024 msgid "unsupported constant in relocation" msgstr "constante no admitida en reubicación" -#: config/tc-mips.c:15705 +#: config/tc-mips.c:16097 #, c-format msgid "PC-relative access using misaligned symbol (%lx)" msgstr "" -#: config/tc-mips.c:15709 +#: config/tc-mips.c:16101 #, c-format msgid "PC-relative access using misaligned offset (%lx)" msgstr "" -#: config/tc-mips.c:15722 config/tc-mips.c:15741 +#: config/tc-mips.c:16114 config/tc-mips.c:16133 msgid "PC-relative access out of range" -msgstr "PC-relativo de acceso fuera de límite" +msgstr "PC-relativo de acceso fuera de rango" -#: config/tc-mips.c:15728 +#: config/tc-mips.c:16120 #, c-format msgid "PC-relative access to misaligned address (%lx)" msgstr "Acceso PC-relativo para direcciones mal alineada (%lx)" -#: config/tc-mips.c:15895 +#: config/tc-mips.c:16289 #, c-format msgid "alignment too large, %d assumed" msgstr "alineación demasiado grande, %d asumido" -#: config/tc-mips.c:15898 +#: config/tc-mips.c:16292 msgid "alignment negative, 0 assumed" msgstr "alineación negativa, 0 asimido" -#: config/tc-mips.c:16140 +#: config/tc-mips.c:16524 #, c-format msgid "%s: no such section" msgstr "%s: no existe tal sección" -#: config/tc-mips.c:16181 +#: config/tc-mips.c:16580 #, c-format msgid ".option pic%d not supported" msgstr "No se admite .option pic%d" -#: config/tc-mips.c:16183 +#: config/tc-mips.c:16582 #, c-format msgid ".option pic%d not supported in VxWorks PIC mode" msgstr ".option pic%d no admitido dentro de modo PIC VxWorks" -#: config/tc-mips.c:16195 config/tc-mips.c:16532 +#: config/tc-mips.c:16594 config/tc-mips.c:16934 msgid "-G may not be used with SVR4 PIC code" msgstr "-G no se puede utilizar con código PIC de SVR4" -#: config/tc-mips.c:16201 +#: config/tc-mips.c:16600 #, c-format msgid "unrecognized option \"%s\"" msgstr "opción no reconocida «%s»" -#: config/tc-mips.c:16307 +#: config/tc-mips.c:16706 #, c-format msgid "unknown architecture %s" msgstr "desconoce arquitectura %s" -#: config/tc-mips.c:16321 config/tc-mips.c:16483 +#: config/tc-mips.c:16721 config/tc-mips.c:16885 #, c-format msgid "unknown ISA level %s" msgstr "desconoce nivel %s ISA" -#: config/tc-mips.c:16330 +#: config/tc-mips.c:16731 #, c-format msgid "unknown ISA or architecture %s" msgstr "desconoce ISA o arquitectura %s" -#: config/tc-mips.c:16389 +#: config/tc-mips.c:16790 msgid "`noreorder' must be set before `nomacro'" msgstr "se debe establecer `noreorder' antes de `nomacro'" -#: config/tc-mips.c:16418 +#: config/tc-mips.c:16820 msgid ".set pop with no .set push" msgstr ".set pop sin .set push" -#: config/tc-mips.c:16437 +#: config/tc-mips.c:16839 #, c-format msgid "tried to set unrecognized symbol: %s\n" msgstr "intentaba establecer un símbolo no reconocido: %s\n" -#: config/tc-mips.c:16510 +#: config/tc-mips.c:16912 #, c-format msgid ".module used with unrecognized symbol: %s\n" msgstr ".module utilizado con símbolo no reconocido: %s\n" -#: config/tc-mips.c:16516 +#: config/tc-mips.c:16918 msgid ".module is not permitted after generating code" msgstr ".module no está permitido tras generar código" -#: config/tc-mips.c:16576 config/tc-mips.c:16655 config/tc-mips.c:16759 -#: config/tc-mips.c:16789 config/tc-mips.c:16838 +#: config/tc-mips.c:16978 config/tc-mips.c:17057 config/tc-mips.c:17161 +#: config/tc-mips.c:17191 config/tc-mips.c:17240 #, c-format msgid "%s not supported in MIPS16 mode" msgstr "%s no admitido dentro del modo MIPS16" -#: config/tc-mips.c:16583 +#: config/tc-mips.c:16985 msgid ".cpload not in noreorder section" msgstr ".cpload no está en la sección noreorder" -#: config/tc-mips.c:16664 config/tc-mips.c:16683 +#: config/tc-mips.c:17066 config/tc-mips.c:17085 msgid "missing argument separator ',' for .cpsetup" msgstr "ausente el separador de argumentos ',' para .cpsetup" -#: config/tc-mips.c:16881 +#: config/tc-mips.c:17283 config/tc-riscv.c:5027 #, c-format msgid "unsupported use of %s" msgstr "no admitió utilización de %s" -#: config/tc-mips.c:16972 +#: config/tc-mips.c:17374 msgid "unsupported use of .gpword" msgstr "no admite utilización de .gpword" -#: config/tc-mips.c:17010 +#: config/tc-mips.c:17412 msgid "unsupported use of .gpdword" msgstr "no admite la utilización de .gpdword" -#: config/tc-mips.c:17042 +#: config/tc-mips.c:17444 msgid "unsupported use of .ehword" msgstr "no admitió utilización de .ehword" -#: config/tc-mips.c:17129 +#: config/tc-mips.c:17531 msgid "bad .nan directive" -msgstr "directiva .nan equivocada" +msgstr "directiva .nan incorrecta" -#: config/tc-mips.c:17178 +#: config/tc-mips.c:17580 #, c-format msgid "ignoring attempt to redefine symbol %s" msgstr "se ignora el intento de redefinir el símbolo %s" -#: config/tc-mips.c:17193 ecoff.c:3372 +#: config/tc-mips.c:17595 ecoff.c:3358 msgid "bad .weakext directive" -msgstr "directiva .weakext equivocada" +msgstr "directiva .weakext incorrecta" -#: config/tc-mips.c:18162 config/tc-mips.c:18439 +#: config/tc-mips.c:18568 config/tc-mips.c:18845 msgid "relaxed out-of-range branch into a jump" -msgstr "ramificación relajada fuera de límite dentro de omisión" +msgstr "ramificación relajada fuera de rango dentro de omisión" -#: config/tc-mips.c:18661 +#: config/tc-mips.c:19068 msgid "extended instruction in a branch delay slot" msgstr "instrucción extendida en una rama de ranura de retardo" -#: config/tc-mips.c:18775 config/tc-xtensa.c:1656 config/tc-xtensa.c:1934 +#: config/tc-mips.c:19182 config/tc-xtensa.c:1690 config/tc-xtensa.c:1968 msgid "unsupported relocation" msgstr "no se admite la reubicación" -#: config/tc-mips.c:19271 config/tc-score.c:5640 +#: config/tc-mips.c:19690 config/tc-score.c:5624 msgid "expected simple number" msgstr "se esperaba un número simple" -#: config/tc-mips.c:19299 config/tc-score.c:5667 +#: config/tc-mips.c:19718 config/tc-score.c:5651 msgid "invalid number" msgstr "número inválido" -#: config/tc-mips.c:19376 ecoff.c:2999 +#: config/tc-mips.c:19795 ecoff.c:2987 msgid ".end directive without a preceding .ent directive" msgstr "directiva .end sin una directiva .ent precedente" -#: config/tc-mips.c:19385 +#: config/tc-mips.c:19804 msgid ".end symbol does not match .ent symbol" msgstr ".end simbólico no coincide con el símbolo .ent" -#: config/tc-mips.c:19462 +#: config/tc-mips.c:19881 msgid ".ent or .aent not in text section" msgstr ".ent o .aent no interno sección textual" -#: config/tc-mips.c:19465 config/tc-score.c:5706 +#: config/tc-mips.c:19884 config/tc-score.c:5683 msgid "missing .end" msgstr ".end ausente" -#: config/tc-mips.c:19548 +#: config/tc-mips.c:19967 msgid ".mask/.fmask outside of .ent" msgstr ".mask/.fmask fuera de .ent" -#: config/tc-mips.c:19555 +#: config/tc-mips.c:19974 msgid "bad .mask/.fmask directive" -msgstr "directiva .mask/.fmask equivocada" +msgstr "directiva .mask/.fmask incorrecta" -#: config/tc-mips.c:19848 +#: config/tc-mips.c:20278 #, c-format msgid "bad value (%s) for %s" -msgstr "valor (%s) equivocado para %s" +msgstr "valor (%s) incorrecto para %s" -#: config/tc-mips.c:19912 +#: config/tc-mips.c:20342 #, c-format msgid "" "MIPS options:\n" @@ -12251,7 +14196,7 @@ msgstr "" "-G NUM\t\t\tpermite la referencia a objetos hasta NUM bytes\n" "\t\t\timplícitamente con el registro gp [por defecto 8]\n" -#: config/tc-mips.c:19919 +#: config/tc-mips.c:20349 #, c-format msgid "" "-mips1\t\t\tgenerate MIPS ISA I instructions\n" @@ -12289,7 +14234,7 @@ msgstr "" "\n" "-march=CPU/-mtune=CPU\tgenera código/calendarización para el CPU, donde CPU es uno de:\n" -#: config/tc-mips.c:19944 +#: config/tc-mips.c:20374 #, c-format msgid "" "-mCPU\t\t\tequivalent to -march=CPU -mtune=CPU. Deprecated.\n" @@ -12300,7 +14245,7 @@ msgstr "" "-no-mCPU\t\tno genera código específico para el CPU.\n" "\t\t\tPara -mCPU y -no-mCPU, CPU debe ser uno de:\n" -#: config/tc-mips.c:19957 +#: config/tc-mips.c:20387 #, c-format msgid "" "-mips16\t\t\tgenerate mips16 instructions\n" @@ -12309,7 +14254,19 @@ msgstr "" "-mips16\t\t\tgenera instrucciones mips16\n" "-no-mips16\t\tno genera instrucciones mips16\n" -#: config/tc-mips.c:19960 +#: config/tc-mips.c:20390 +#, fuzzy, c-format +#| msgid "" +#| "-mips16\t\t\tgenerate mips16 instructions\n" +#| "-no-mips16\t\tdo not generate mips16 instructions\n" +msgid "" +"-mmips16e2\t\tgenerate MIPS16e2 instructions\n" +"-mno-mips16e2\t\tdo not generate MIPS16e2 instructions\n" +msgstr "" +"-mips16\t\t\tgenera instrucciones mips16\n" +"-no-mips16\t\tno genera instrucciones mips16\n" + +#: config/tc-mips.c:20393 #, c-format msgid "" "-mmicromips\t\tgenerate microMIPS instructions\n" @@ -12318,7 +14275,7 @@ msgstr "" "-mmicromips\t\tgenera instrucciones microMIPS\n" "-mno-micromips\t\tno genera instrucciones microMIPS\n" -#: config/tc-mips.c:19963 +#: config/tc-mips.c:20396 #, c-format msgid "" "-msmartmips\t\tgenerate smartmips instructions\n" @@ -12327,7 +14284,7 @@ msgstr "" "-msmartmips\t\tgenera instrucciones smartmips\n" "-no-smartmips\t\tno genera instrucciones smartmips\n" -#: config/tc-mips.c:19966 +#: config/tc-mips.c:20399 #, c-format msgid "" "-mdsp\t\t\tgenerate DSP instructions\n" @@ -12336,7 +14293,7 @@ msgstr "" "-mdsp\t\t\tgenera instrucciones DSP\n" "-mno-dsp\t\tno genera instrucciones DSP\n" -#: config/tc-mips.c:19969 +#: config/tc-mips.c:20402 #, c-format msgid "" "-mdspr2\t\t\tgenerate DSP R2 instructions\n" @@ -12345,7 +14302,7 @@ msgstr "" "-mdspr2\t\t\tgenera instrucciones DSP R2\n" "-mno-dspr2\t\tno genera instrucciones DSP R2\n" -#: config/tc-mips.c:19972 +#: config/tc-mips.c:20405 #, c-format msgid "" "-mdspr3\t\t\tgenerate DSP R3 instructions\n" @@ -12354,7 +14311,7 @@ msgstr "" "-mdspr3\t\t\t genera instrucciones DSP R3\n" "-mno-dspr3\t\t no genera instrucciones DSP R3\n" -#: config/tc-mips.c:19975 +#: config/tc-mips.c:20408 #, c-format msgid "" "-mmt\t\t\tgenerate MT instructions\n" @@ -12363,7 +14320,7 @@ msgstr "" "-mmt\t\t\tgenera instrucciones MT\n" "-mno-mt\t\tno genera instrucciones MT\n" -#: config/tc-mips.c:19978 +#: config/tc-mips.c:20411 #, c-format msgid "" "-mmcu\t\t\tgenerate MCU instructions\n" @@ -12372,7 +14329,7 @@ msgstr "" "-mmcu\t\t\tgenera instrucciones MCU\n" "-mno-mcu\t\tno genera instrucciones MCU\n" -#: config/tc-mips.c:19981 +#: config/tc-mips.c:20414 #, c-format msgid "" "-mmsa\t\t\tgenerate MSA instructions\n" @@ -12381,7 +14338,7 @@ msgstr "" "-mmsa\t\t\tgenera instrucciones MSA\n" "-mno-msa\t\tno genera instrucciones MSA\n" -#: config/tc-mips.c:19984 +#: config/tc-mips.c:20417 #, c-format msgid "" "-mxpa\t\t\tgenerate eXtended Physical Address (XPA) instructions\n" @@ -12390,7 +14347,7 @@ msgstr "" "-mdsp\t\t\tgenera eXtended Physical Address instrucciones (XPA)\n" "-mno-xpa\t\tno genera instrucciones eXtended Physical Address\n" -#: config/tc-mips.c:19987 +#: config/tc-mips.c:20420 #, c-format msgid "" "-mvirt\t\t\tgenerate Virtualization instructions\n" @@ -12399,7 +14356,79 @@ msgstr "" "-mvirt\t\t\tgenera instrucciones Virtualization\n" "-mno-virt\t\tno genera instrucciones Virtualization\n" -#: config/tc-mips.c:19990 +#: config/tc-mips.c:20423 +#, fuzzy, c-format +#| msgid "" +#| "-mmcu\t\t\tgenerate MCU instructions\n" +#| "-mno-mcu\t\tdo not generate MCU instructions\n" +msgid "" +"-mcrc\t\t\tgenerate CRC instructions\n" +"-mno-crc\t\tdo not generate CRC instructions\n" +msgstr "" +"-mmcu\t\t\tgenera instrucciones MCU\n" +"-mno-mcu\t\tno genera instrucciones MCU\n" + +#: config/tc-mips.c:20426 +#, fuzzy, c-format +#| msgid "" +#| "-mvirt\t\t\tgenerate Virtualization instructions\n" +#| "-mno-virt\t\tdo not generate Virtualization instructions\n" +msgid "" +"-mginv\t\t\tgenerate Global INValidate (GINV) instructions\n" +"-mno-ginv\t\tdo not generate Global INValidate instructions\n" +msgstr "" +"-mvirt\t\t\tgenera instrucciones Virtualization\n" +"-mno-virt\t\tno genera instrucciones Virtualization\n" + +#: config/tc-mips.c:20429 +#, fuzzy, c-format +#| msgid "" +#| "-msmartmips\t\tgenerate smartmips instructions\n" +#| "-mno-smartmips\t\tdo not generate smartmips instructions\n" +msgid "" +"-mloongson-mmi\t\tgenerate Loongson MultiMedia extensions Instructions (MMI) instructions\n" +"-mno-loongson-mmi\tdo not generate Loongson MultiMedia extensions Instructions\n" +msgstr "" +"-msmartmips\t\tgenera instrucciones smartmips\n" +"-no-smartmips\t\tno genera instrucciones smartmips\n" + +#: config/tc-mips.c:20432 +#, fuzzy, 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" +msgid "" +"-mloongson-cam\t\tgenerate Loongson Content Address Memory (CAM) instructions\n" +"-mno-loongson-cam\tdo not generate Loongson Content Address Memory Instructions\n" +msgstr "" +"-mdsp\t\t\tgenera eXtended Physical Address instrucciones (XPA)\n" +"-mno-xpa\t\tno genera instrucciones eXtended Physical Address\n" + +#: config/tc-mips.c:20435 +#, fuzzy, c-format +#| msgid "" +#| "-mmt\t\t\tgenerate MT instructions\n" +#| "-mno-mt\t\t\tdo not generate MT instructions\n" +msgid "" +"-mloongson-ext\t\tgenerate Loongson EXTensions (EXT) instructions\n" +"-mno-loongson-ext\tdo not generate Loongson EXTensions Instructions\n" +msgstr "" +"-mmt\t\t\tgenera instrucciones MT\n" +"-mno-mt\t\tno genera instrucciones MT\n" + +#: config/tc-mips.c:20438 +#, fuzzy, c-format +#| msgid "" +#| "-mdspr2\t\t\tgenerate DSP R2 instructions\n" +#| "-mno-dspr2\t\tdo not generate DSP R2 instructions\n" +msgid "" +"-mloongson-ext2\t\tgenerate Loongson EXTensions R2 (EXT2) instructions\n" +"-mno-loongson-ext2\tdo not generate Loongson EXTensions R2 Instructions\n" +msgstr "" +"-mdspr2\t\t\tgenera instrucciones DSP R2\n" +"-mno-dspr2\t\tno genera instrucciones DSP R2\n" + +#: config/tc-mips.c:20441 #, c-format msgid "" "-minsn32\t\tonly generate 32-bit microMIPS instructions\n" @@ -12408,20 +14437,52 @@ msgstr "" "-minsn32\t\t solo genera instrucciones microMIPS de 32-bit\n" "-mno-insn32\t\t genera todas las instrucciones microMIPS\n" -#: config/tc-mips.c:19993 +#: config/tc-mips.c:20445 +#, 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:20449 #, 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:20453 +#, fuzzy, c-format +#| msgid "" +#| "-mfix-loongson2f-jump\twork around Loongson2F JUMP instructions\n" +#| "-mfix-loongson2f-nop\twork around Loongson2F NOP 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" +#| "-mfix-cn63xxp1\t\twork around CN63XXP1 PREF errata\n" +#| "-mgp32\t\t\tuse 32-bit GPRs, regardless of the chosen ISA\n" +#| "-mfp32\t\t\tuse 32-bit FPRs, regardless of the chosen ISA\n" +#| "-msym32\t\t\tassume all symbols have 32-bit values\n" +#| "-O0\t\t\tremove unneeded NOPs, do not swap branches\n" +#| "-O\t\t\tremove unneeded NOPs and swap branches\n" +#| "--trap, --no-break\ttrap exception on div by 0 and mult overflow\n" +#| "--break, --no-trap\tbreak exception on div by 0 and mult overflow\n" +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" "-mfix-cn63xxp1\t\twork around CN63XXP1 PREF errata\n" +"-mfix-r5900\t\twork around R5900 short loop errata\n" "-mgp32\t\t\tuse 32-bit GPRs, regardless of the chosen ISA\n" "-mfp32\t\t\tuse 32-bit FPRs, regardless of the chosen ISA\n" "-msym32\t\t\tassume all symbols have 32-bit values\n" -"-O0\t\t\tremove unneeded NOPs, do not swap branches\n" -"-O\t\t\tremove unneeded NOPs and swap branches\n" +"-O0\t\t\tdo not remove unneeded NOPs, do not swap branches\n" +"-O, -O1\t\t\tremove unneeded NOPs, do not swap branches\n" +"-O2\t\t\tremove unneeded NOPs and swap branches\n" "--trap, --no-break\ttrap exception on div by 0 and mult overflow\n" "--break, --no-trap\tbreak exception on div by 0 and mult overflow\n" msgstr "" @@ -12439,7 +14500,7 @@ msgstr "" "--trap, --no-break\texcepción trap en div por 0 y desbordamiento de mult\n" "--break, --no-trap\texcepción break en div por 0 y desbordamiento de mult\n" -#: config/tc-mips.c:20007 +#: config/tc-mips.c:20471 #, c-format msgid "" "-mhard-float\t\tallow floating-point instructions\n" @@ -12454,7 +14515,7 @@ msgid "" msgstr "" "-mhard-float\t\t permite instrucciones de coma flotante\n" "-msoft-float\t\t no permite instrucciones de coma flotante\n" -"-msingle-float\t\t sólo permite operaciones de coma flotante de 32 bits\n" +"-msingle-float\t\t solo permite operaciones de coma flotante de 32 bits\n" "-mdouble-float\t\t permite operaciones de coma flotante de 32 y 64 bits\n" "--[no-]construct-floats [des]activa valores de coma flotante a construir\n" "--[no-]relax-branch\t [no]permite ramificación fuera del límite para ser relajadas\n" @@ -12462,7 +14523,7 @@ msgstr "" "-mno-ignore-branch-isa\t rechaza ramas inválidas requiriendo un intercambio de modo ISA\n" "-mnan=ENCODING\t\t selecciona un convenio de codificación IEEE 754 NaN, incluso de:\n" -#: config/tc-mips.c:20025 +#: config/tc-mips.c:20489 #, c-format msgid "" "-KPIC, -call_shared\tgenerate SVR4 position independent code\n" @@ -12485,27 +14546,38 @@ msgstr "" " código que no es compartido\n" "-mabi=ABI\t\tcrea un fichero objeto que cumple con el ABI para:\n" -#: config/tc-mips.c:20046 -#, c-format -msgid "" -"-32\t\t\tcreate o32 ABI object file (default)\n" -"-n32\t\t\tcreate n32 ABI object file\n" -"-64\t\t\tcreate 64 ABI object file\n" +#: config/tc-mips.c:20510 +#, fuzzy, c-format +#| msgid "--fdpic\t\t\tgenerate an FDPIC object file\n" +msgid "-32\t\t\tcreate o32 ABI object file%s\n" +msgstr "--fdpic\t\t\tgenera un fichero objeto FDPIC\n" + +#: config/tc-mips.c:20512 config/tc-mips.c:20515 config/tc-mips.c:20518 +msgid " (default)" msgstr "" -"-32\t\t\tcrea ficheros objeto ABI o32 (por defecto)\n" -"-n32\t\t\tcrea ficheros objeto ABI o32\n" -"-64\t\t\tcrea ficheros objeto ABI 64\n" -#: config/tc-mips.c:20129 +#: config/tc-mips.c:20513 +#, fuzzy, c-format +#| msgid "--fdpic\t\t\tgenerate an FDPIC object file\n" +msgid "-n32\t\t\tcreate n32 ABI object file%s\n" +msgstr "--fdpic\t\t\tgenera un fichero objeto FDPIC\n" + +#: config/tc-mips.c:20516 +#, fuzzy, c-format +#| msgid "--fdpic\t\t\tgenerate an FDPIC object file\n" +msgid "-64\t\t\tcreate 64 ABI object file%s\n" +msgstr "--fdpic\t\t\tgenera un fichero objeto FDPIC\n" + +#: config/tc-mips.c:20598 msgid "missing .end at end of assembly" msgstr ".end ausente al final del ensamblado" -#: config/tc-mmix.c:702 +#: config/tc-mmix.c:694 #, c-format msgid " MMIX-specific command line options:\n" msgstr " Opciones de la línea de mandatos específicas de MMIX:\n" -#: config/tc-mmix.c:703 +#: config/tc-mmix.c:695 #, c-format msgid "" " -fixed-special-register-names\n" @@ -12514,22 +14586,22 @@ msgstr "" " -fixed-special-register-names\n" " Sólo permite los nombres de registros especiales originales.\n" -#: config/tc-mmix.c:706 +#: config/tc-mmix.c:698 #, c-format msgid " -globalize-symbols Make all symbols global.\n" msgstr " -globalize-symbols Crea todos los símbolos globales.\n" -#: config/tc-mmix.c:708 +#: config/tc-mmix.c:700 #, c-format msgid " -gnu-syntax Turn off mmixal syntax compatibility.\n" msgstr " -gnu-syntax Desactiva la compatibilidad sintáctica mmixal.\n" -#: config/tc-mmix.c:710 +#: config/tc-mmix.c:702 #, c-format msgid " -relax Create linker relaxable code.\n" msgstr " -relax Crea código relajable para el enlazador.\n" -#: config/tc-mmix.c:712 +#: config/tc-mmix.c:704 #, c-format msgid "" " -no-predefined-syms Do not provide mmixal built-in constants.\n" @@ -12538,7 +14610,7 @@ msgstr "" " -no-predefined-syms No provee las constantes internas de mmixal.\n" " Implica -fixed-special-register-names.\n" -#: config/tc-mmix.c:715 +#: config/tc-mmix.c:707 #, c-format msgid "" " -no-expand Do not expand GETA, branches, PUSHJ or JUMP\n" @@ -12547,17 +14619,17 @@ msgstr "" " -no-expand No expande GETA, ramificaciones, PUSHJ ó JUMP\n" " a instrucciones múltiples.\n" -#: config/tc-mmix.c:718 +#: config/tc-mmix.c:710 #, c-format msgid " -no-merge-gregs Do not merge GREG definitions with nearby values.\n" msgstr " -no-merge-gregs No mezcla las definiciones GREG con los valores cercanos.\n" -#: config/tc-mmix.c:720 +#: config/tc-mmix.c:712 #, c-format msgid " -linker-allocated-gregs If there's no suitable GREG definition for the operands of an instruction, let the linker resolve.\n" msgstr " -linker-allocated-gregs Si no hay una definición GREG adecuada para los operandos de una instrucción, dejar resolver al enlazador.\n" -#: config/tc-mmix.c:723 +#: config/tc-mmix.c:715 #, c-format msgid "" " -x Do not warn when an operand to GETA, a branch,\n" @@ -12570,190 +14642,186 @@ msgstr "" " del límite. El enlazador atrapará cualquier error.\n" " Implica -linker-allocated-gregs." -#: config/tc-mmix.c:849 +#: config/tc-mmix.c:841 #, c-format msgid "unknown opcode: `%s'" msgstr "código operacional desconocido: «%s»" -#: config/tc-mmix.c:971 config/tc-mmix.c:986 +#: config/tc-mmix.c:963 config/tc-mmix.c:978 msgid "specified location wasn't TETRA-aligned" msgstr "la ubicación especificada no estaba TETRA alineada" -#: config/tc-mmix.c:973 config/tc-mmix.c:988 config/tc-mmix.c:4214 -#: config/tc-mmix.c:4230 +#: config/tc-mmix.c:965 config/tc-mmix.c:980 config/tc-mmix.c:4215 +#: config/tc-mmix.c:4231 msgid "unaligned data at an absolute location is not supported" msgstr "no se admiten los datos sin alinear en una ubicación absoluta" -#: config/tc-mmix.c:1098 +#: config/tc-mmix.c:1090 #, c-format msgid "invalid operand to opcode %s: `%s'" msgstr "operando inválido para el código operacional %s: «%s»" -#: config/tc-mmix.c:1120 config/tc-mmix.c:1147 config/tc-mmix.c:1180 -#: config/tc-mmix.c:1188 config/tc-mmix.c:1205 config/tc-mmix.c:1233 -#: config/tc-mmix.c:1254 config/tc-mmix.c:1279 config/tc-mmix.c:1327 -#: config/tc-mmix.c:1428 config/tc-mmix.c:1453 config/tc-mmix.c:1485 -#: config/tc-mmix.c:1517 config/tc-mmix.c:1547 config/tc-mmix.c:1600 -#: config/tc-mmix.c:1617 config/tc-mmix.c:1644 config/tc-mmix.c:1672 -#: config/tc-mmix.c:1702 config/tc-mmix.c:1728 config/tc-mmix.c:1744 -#: config/tc-mmix.c:1770 config/tc-mmix.c:1786 config/tc-mmix.c:1802 -#: config/tc-mmix.c:1883 +#: config/tc-mmix.c:1112 config/tc-mmix.c:1139 config/tc-mmix.c:1172 +#: config/tc-mmix.c:1180 config/tc-mmix.c:1197 config/tc-mmix.c:1225 +#: config/tc-mmix.c:1246 config/tc-mmix.c:1271 config/tc-mmix.c:1319 +#: config/tc-mmix.c:1426 config/tc-mmix.c:1451 config/tc-mmix.c:1483 +#: config/tc-mmix.c:1515 config/tc-mmix.c:1545 config/tc-mmix.c:1598 +#: config/tc-mmix.c:1615 config/tc-mmix.c:1642 config/tc-mmix.c:1670 +#: config/tc-mmix.c:1700 config/tc-mmix.c:1726 config/tc-mmix.c:1742 +#: config/tc-mmix.c:1768 config/tc-mmix.c:1784 config/tc-mmix.c:1800 +#: config/tc-mmix.c:1881 #, c-format msgid "invalid operands to opcode %s: `%s'" msgstr "operandos inválidos para el código operacional %s: «%s»" -#: config/tc-mmix.c:1983 +#: config/tc-mmix.c:1981 msgid "internal: mmix_prefix_name but empty prefix" msgstr "interno: hay un mmix_prefix_name pero es un prefijo vacío" -#: config/tc-mmix.c:2046 +#: config/tc-mmix.c:2044 #, c-format msgid "too many GREG registers allocated (max %d)" msgstr "se asignaron demasiados registros GREG (máximo %d)" -#: config/tc-mmix.c:2106 +#: config/tc-mmix.c:2104 msgid "BSPEC already active. Nesting is not supported." msgstr "BSPEC ya está activo. No se admite el anidamiento." -#: config/tc-mmix.c:2115 +#: config/tc-mmix.c:2113 msgid "invalid BSPEC expression" msgstr "expresión BSPEC no válida" -#: config/tc-mmix.c:2131 +#: config/tc-mmix.c:2129 #, c-format msgid "can't create section %s" msgstr "no se puede crear la sección %s" -#: config/tc-mmix.c:2136 +#: config/tc-mmix.c:2133 #, c-format msgid "can't set section flags for section %s" msgstr "no se pueden establecer las casillas para la sección %s" -#: config/tc-mmix.c:2157 +#: config/tc-mmix.c:2154 msgid "ESPEC without preceding BSPEC" msgstr "ESPEC sin un BSPEC precedente" -#: config/tc-mmix.c:2186 +#: config/tc-mmix.c:2183 msgid "missing local expression" msgstr "ausentea expresión local" -#: config/tc-mmix.c:2396 +#: config/tc-mmix.c:2400 msgid "operand out of range, instruction expanded" -msgstr "operando está fuera de límite, se expande la instrucción" +msgstr "operando está fuera de rango, se expande la instrucción" #. 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:2651 msgid "directive LOCAL must be placed in code or data" msgstr "la directiva LOCAL debe estar colocada en el código o en los datos" -#: config/tc-mmix.c:2648 +#: config/tc-mmix.c:2652 msgid "internal confusion: relocation in a section without contents" msgstr "confusión interna: reubicación en una sección sin contenido" -#: config/tc-mmix.c:2762 +#: config/tc-mmix.c:2766 msgid "internal: BFD_RELOC_MMIX_BASE_PLUS_OFFSET not resolved to section" msgstr "interno: BFD_RELOC_MMIX_BASE_PLUS_OFFSET no resuelve a la sección" -#: config/tc-mmix.c:2810 +#: config/tc-mmix.c:2814 msgid "no suitable GREG definition for operands" msgstr "no hay una definición GREG adecuada para los operandos" -#: config/tc-mmix.c:2869 +#: config/tc-mmix.c:2873 msgid "operands were not reducible at assembly-time" msgstr "los operandos no son reducibles en el momento del ensamblado" -#: config/tc-mmix.c:2896 +#: config/tc-mmix.c:2899 #, c-format msgid "cannot generate relocation type for symbol %s, code %s" msgstr "incapaz de generar el tipo reubicado para el símbolo %s, código %s" -#: config/tc-mmix.c:2916 +#: config/tc-mmix.c:2919 #, c-format msgid "internal: unhandled label %s" msgstr "interno: etiqueta %s sin manipular" -#: config/tc-mmix.c:2945 +#: config/tc-mmix.c:2948 msgid "[0-9]H labels may not appear alone on a line" msgstr "las etiquetas [0-9]H no pueden aparecer solas en una línea" -#: config/tc-mmix.c:2953 +#: config/tc-mmix.c:2956 msgid "[0-9]H labels do not mix with dot-pseudos" msgstr "las etiquetas [0-9]H no se mezclan con pseudo-puntos" -#: config/tc-mmix.c:3041 +#: config/tc-mmix.c:3044 msgid "invalid characters in input" msgstr "caracteres inválidos en la entrada" -#: config/tc-mmix.c:3147 +#: config/tc-mmix.c:3150 msgid "empty label field for IS" msgstr "campo de etiqueta vacío para IS" -#: config/tc-mmix.c:3473 +#: config/tc-mmix.c:3476 #, c-format msgid "internal: unexpected relax type %d:%d" msgstr "interno: tipo de relajación inesperado %d:%d" -#: config/tc-mmix.c:3497 +#: config/tc-mmix.c:3500 msgid "BSPEC without ESPEC." msgstr "BSPEC sin un ESPEC." -#: config/tc-mmix.c:3562 +#: config/tc-mmix.c:3565 msgid "LOC to section unknown or indeterminable at first pass" msgstr "" -#: config/tc-mmix.c:3734 -msgid "GREG expression too complicated" -msgstr "GREG como expresión muy complicada" - -#: config/tc-mmix.c:3749 +#: config/tc-mmix.c:3751 msgid "internal: GREG expression not resolved to section" msgstr "interno: la expresión GREG no resuelve a la sección" -#: config/tc-mmix.c:3798 +#: config/tc-mmix.c:3800 msgid "register section has contents\n" msgstr "la sección de registros tiene contenido\n" -#: config/tc-mmix.c:3925 +#: config/tc-mmix.c:3926 msgid "section change from within a BSPEC/ESPEC pair is not supported" -msgstr "no se admite el cambio seccional desde dentro de una pareja BSPEC/ESPEC" +msgstr "no se admite el cambio de sección desde dentro de una pareja BSPEC/ESPEC" -#: config/tc-mmix.c:3946 +#: config/tc-mmix.c:3947 msgid "directive LOC from within a BSPEC/ESPEC pair is not supported" msgstr "no se admite una directiva LOC desde dentro de una pareja BSPEC/ESPEC" -#: config/tc-mmix.c:3956 +#: config/tc-mmix.c:3957 msgid "invalid LOC expression" msgstr "expresión LOC no válida" -#: config/tc-mmix.c:4001 config/tc-mmix.c:4028 +#: config/tc-mmix.c:4002 config/tc-mmix.c:4029 msgid "LOC expression stepping backwards is not supported" msgstr "LOC como expresión volviendo pasos no está admitido" #. 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:1732 +#: config/tc-mmix.c:4138 config/tc-mmix.c:4296 config/tc-z80.c:3202 msgid "unterminated string" msgstr "cadena sin terminar" -#: config/tc-mmix.c:4154 +#: config/tc-mmix.c:4155 msgid "BYTE expression not a pure number" msgstr "BYTE de expresión no un número puro" #. Note that mmixal does not allow negative numbers in #. BYTE sequences, so neither should we. -#: config/tc-mmix.c:4163 +#: config/tc-mmix.c:4164 msgid "BYTE expression not in the range 0..255" msgstr "BYTE de expresión no interno al límite 0..255" -#: config/tc-mmix.c:4212 config/tc-mmix.c:4228 +#: config/tc-mmix.c:4213 config/tc-mmix.c:4229 msgid "data item with alignment larger than location" msgstr "elemento de datos con una alineamiento más grande que la ubicación" #. Since integer_constant is local to expr.c, we have to make this a #. macro. FIXME: Do it cleaner. -#: config/tc-mmix.h:98 +#: config/tc-mmix.h:92 msgid "`&' serial number operator is not supported" msgstr "número serial `&' operador no está admitido" @@ -12766,6 +14834,19 @@ msgstr "" "Opciones MN10200:\n" "ninguna aún\n" +#: config/tc-mn10200.c:890 config/tc-mn10300.c:1253 config/tc-s390.c:1928 +#: config/tc-v850.c:2320 +#, c-format +msgid "Unrecognized opcode: `%s'" +msgstr "No reconocido el código operacional: «%s»" + +#. xgettext:c-format. +#: config/tc-mn10200.c:1134 config/tc-mn10300.c:1822 config/tc-ppc.c:4003 +#: config/tc-s390.c:1837 config/tc-v850.c:3036 +#, c-format +msgid "junk at end of line: `%s'" +msgstr "basura al final de la línea: «%s»" + #: config/tc-mn10300.c:439 #, c-format msgid "" @@ -12779,43 +14860,43 @@ msgstr "" msgid "Invalid opcode/operands" msgstr "Código operacional/operandos inválidos" -#: config/tc-mn10300.c:1792 +#: config/tc-mn10300.c:1793 msgid "Invalid register specification." msgstr "Especificación de registro no válida." -#: config/tc-mn10300.c:2390 +#: config/tc-mn10300.c:2388 #, c-format msgid "Bad relocation fixup type (%d)" msgstr "Tipo de compostura de reubicación inválido (%d)" -#: config/tc-moxie.c:206 config/tc-moxie.c:225 config/tc-moxie.c:316 -#: config/tc-moxie.c:362 +#: config/tc-moxie.c:204 config/tc-moxie.c:223 config/tc-moxie.c:314 +#: config/tc-moxie.c:360 msgid "expecting comma delimited register operands" msgstr "se esperan operandos de registro delimitados por comas" -#: config/tc-moxie.c:252 config/tc-moxie.c:392 config/tc-moxie.c:422 -#: config/tc-moxie.c:497 +#: config/tc-moxie.c:250 config/tc-moxie.c:390 config/tc-moxie.c:420 +#: config/tc-moxie.c:495 msgid "expecting comma delimited operands" msgstr "se esperan operandos delimitados por comas" -#: config/tc-moxie.c:320 config/tc-moxie.c:348 +#: config/tc-moxie.c:318 config/tc-moxie.c:346 msgid "expecting indirect register `($rA)'" msgstr "se espera el registro indirecto `($rA)'" -#: config/tc-moxie.c:328 config/tc-moxie.c:356 config/tc-moxie.c:447 -#: config/tc-moxie.c:489 +#: config/tc-moxie.c:326 config/tc-moxie.c:354 config/tc-moxie.c:445 +#: config/tc-moxie.c:487 msgid "missing closing parenthesis" msgstr "ausente paréntesis que cierra" -#: config/tc-moxie.c:439 config/tc-moxie.c:481 +#: config/tc-moxie.c:437 config/tc-moxie.c:479 msgid "expecting indirect register `($rX)'" msgstr "se espera el registro indirecto `($rX)'" -#: config/tc-moxie.c:559 config/tc-pj.c:313 +#: config/tc-moxie.c:557 config/tc-pj.c:313 msgid "Something forgot to clean up\n" msgstr "Algo se olvidó de limpiar\n" -#: config/tc-moxie.c:643 +#: config/tc-moxie.c:641 #, c-format msgid "" " -EB assemble for a big endian system (default)\n" @@ -12824,46 +14905,102 @@ msgstr "" " -EB ensambla para un sistema big endian (por defecto)\n" " -EL ensambla para un sistema little endian\n" -#: config/tc-moxie.c:703 +#: config/tc-moxie.c:701 msgid "pcrel too far BFD_RELOC_MOXIE_10" msgstr "pcrel demasiado lejos de BFD_RELOC_MOXIE_10" -#: config/tc-msp430.c:519 +#: config/tc-msp430.c:522 msgid ".profiler pseudo requires at least two operands." msgstr "el pseudo .profiler requiere por lo menos dos operandos." -#: config/tc-msp430.c:578 +#: config/tc-msp430.c:581 msgid "unknown profiling flag - ignored." msgstr "opción de análisis de perfil desconocida - se descarta." -#: config/tc-msp430.c:594 +#: config/tc-msp430.c:597 msgid "ambiguous flags combination - '.profiler' directive ignored." msgstr "combinación de casillas ambigua - se descarta la directiva '.profiler'." -#: config/tc-msp430.c:604 +#: config/tc-msp430.c:607 msgid "profiling in absolute section?" msgstr "¿análisis de perfil en la sección absoluta?" -#: config/tc-msp430.c:1374 +#: config/tc-msp430.c:1383 #, c-format msgid "Unrecognised CPU errata name starting here: %s" msgstr "" -#: config/tc-msp430.c:1380 +#: config/tc-msp430.c:1389 #, c-format msgid "Expecting comma after CPU errata name, not: %s" msgstr "Se esperaba una coma después del nombre errata CPU, no: %s" -#: config/tc-msp430.c:1390 +#: config/tc-msp430.c:1399 msgid "MCU option requires a name\n" msgstr "Opción MCU requiereun nombre\n" -#: config/tc-msp430.c:1428 +#: config/tc-msp430.c:1437 #, c-format msgid "unrecognised argument to -mcpu option '%s'" msgstr "no reconocido argumento a opción -mcpu: '%s'" -#: config/tc-msp430.c:1603 +#: config/tc-msp430.c:1634 +#, fuzzy, c-format +#| msgid "bad argument to syntax directive." +msgid "bad arguments \"%s\" and/or \"%s\" in %s directive" +msgstr "argumento incorrecto para la directiva syntax." + +#: config/tc-msp430.c:1646 +#, c-format +msgid "file was compiled for the 430 ISA but the %s ISA is selected" +msgstr "" + +#: config/tc-msp430.c:1651 +msgid "file was compiled for the 430X ISA but the 430 ISA is selected" +msgstr "" + +#: config/tc-msp430.c:1655 +#, c-format +msgid "unknown MSPABI build attribute value '%d' for OFBA_MSPABI_Tag_ISA(%d) in .mspabi_attribute directive" +msgstr "" + +#: config/tc-msp430.c:1670 +msgid "file was compiled for the small memory model, but the large memory model is selected" +msgstr "" + +#: config/tc-msp430.c:1675 +msgid "file was compiled for the large memory model, but the small memory model is selected" +msgstr "" + +#: config/tc-msp430.c:1679 +#, c-format +msgid "unknown MSPABI build attribute value '%d' for %s(%d) in .mspabi_attribute directive" +msgstr "" + +#: config/tc-msp430.c:1691 +#, c-format +msgid "unknown MSPABI build attribute tag '%d' in .mspabi_attribute directive" +msgstr "" + +#: config/tc-msp430.c:1707 +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:1712 +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:1717 +#, 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:1723 +#, c-format +msgid "internal: unexpected argument '%d' to msp430_object_attribute" +msgstr "" + +#: config/tc-msp430.c:1773 #, c-format msgid "" "MSP430 options:\n" @@ -12871,7 +15008,7 @@ msgid "" " -mcpu={430|430x|430xv2} - select microcontroller architecture\n" msgstr "" -#: config/tc-msp430.c:1607 +#: config/tc-msp430.c:1777 #, c-format msgid "" " -msilicon-errata=<name>[,<name>...] - enable fixups for silicon errata\n" @@ -12879,7 +15016,7 @@ msgid "" " supported errata names: cpu4, cpu8, cpu11, cpu12, cpu13, cpu19\n" msgstr "" -#: config/tc-msp430.c:1611 +#: config/tc-msp430.c:1781 #, c-format msgid "" " -mQ - enable relaxation at assembly time. DANGEROUS!\n" @@ -12888,384 +15025,378 @@ msgstr "" " -mQ - permite la relajación en tiempo de ensamblado. ¡PELIGROSO!\n" " -mP - permite las instrucciones polimórficas\n" -#: config/tc-msp430.c:1614 +#: config/tc-msp430.c:1784 #, c-format msgid " -ml - enable large code model\n" msgstr " -ml - activa modelo de código grande\n" -#: config/tc-msp430.c:1616 +#: config/tc-msp430.c:1786 #, c-format msgid " -mN - do not insert NOPs after changing interrupts (default)\n" msgstr "" " -mN - no inserta varias NOP tras interrupciones (predet.)\n" "\n" -#: config/tc-msp430.c:1618 +#: config/tc-msp430.c:1788 #, c-format msgid " -mn - insert a NOP after changing interrupts\n" msgstr " -mn - inserta un NOP tras modificar interrupciones\n" -#: config/tc-msp430.c:1620 +#: config/tc-msp430.c:1790 #, c-format msgid " -mY - do not warn about missing NOPs after changing interrupts\n" msgstr " -mY - no advierte acerca de ausencias NOP tras modificar interrupciones\n" -#: config/tc-msp430.c:1622 +#: config/tc-msp430.c:1792 #, c-format msgid " -my - warn about missing NOPs after changing interrupts (default)\n" msgstr "" -#: config/tc-msp430.c:1624 +#: 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, do not warn/insert NOPs\n" +msgstr "" + +#: config/tc-msp430.c:1797 #, c-format -msgid " -md - Force copying of data from ROM to RAM at startup\n" +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:1626 +#: config/tc-msp430.c:1801 #, c-format msgid "" " -mdata-region={none|lower|upper|either} - select region data will be\n" " placed in.\n" msgstr "" -#: config/tc-msp430.c:1779 +#: config/tc-msp430.c:1973 #, c-format msgid "extra characters '%s' at end of immediate expression '%s'" msgstr "caracteres adicionales «%s» al final de expresión inmediata «%s»" -#: config/tc-msp430.c:1811 config/tc-msp430.c:1994 config/tc-msp430.c:2108 +#: config/tc-msp430.c:2005 config/tc-msp430.c:2189 config/tc-msp430.c:2304 #, c-format msgid "value 0x%x out of extended range." -msgstr "valor 0x%x fuera de límite extendido." +msgstr "valor 0x%x fuera de rango extendido." -#: config/tc-msp430.c:1817 +#: config/tc-msp430.c:2011 #, c-format msgid "value %d out of range. Use #lo() or #hi()" -msgstr "valora %d está fuera de límite. Utilice #lo() o #hi()" +msgstr "valora %d está fuera de rango. Utilice #lo() o #hi()" -#: config/tc-msp430.c:1863 +#: config/tc-msp430.c:2057 msgid "cpu4: not converting PUSH #4 to shorter form" msgstr "" -#: config/tc-msp430.c:1880 +#: config/tc-msp430.c:2074 msgid "cpu4: not converting PUSH #8 to shorter form" msgstr "" -#: config/tc-msp430.c:1894 +#: config/tc-msp430.c:2088 msgid "error: unsupported #foo() directive used on symbol" msgstr "error: directiva #foo() sin apoyo para directiva utilizada en símbolo" -#: config/tc-msp430.c:1911 +#: config/tc-msp430.c:2105 #, c-format msgid "unknown expression in operand %s. Use #llo(), #lhi(), #hlo() or #hhi()" msgstr "desconoce expresión en operando %s. Utilice #llo() #lhi() #hlo() o #hhi()" -#: config/tc-msp430.c:1962 +#: config/tc-msp430.c:2156 #, c-format msgid "Registers cannot be used within immediate expression [%s]" msgstr "Los registros no se pueden usar en la expresión inmediata [%s]" -#: config/tc-msp430.c:1964 +#: config/tc-msp430.c:2158 #, c-format msgid "unknown operand %s" msgstr "operando %s desconocido" -#: config/tc-msp430.c:1981 +#: config/tc-msp430.c:2175 #, c-format msgid "extra characters '%s' at the end of absolute operand '%s'" msgstr "caracteres adicionales «%s» al final de operando absoluto «%s»" -#: config/tc-msp430.c:2000 config/tc-msp430.c:2114 +#: config/tc-msp430.c:2195 config/tc-msp430.c:2310 #, c-format msgid "value out of range: 0x%x" -msgstr "valor fuera de límite: 0x%x" +msgstr "valor fuera de rango: 0x%x" -#: config/tc-msp430.c:2011 +#: config/tc-msp430.c:2206 #, c-format msgid "Registers cannot be used within absolute expression [%s]" msgstr "Los registros no se pueden usar en la expresión absoluta [%s]" -#: config/tc-msp430.c:2013 config/tc-msp430.c:2143 +#: config/tc-msp430.c:2208 config/tc-msp430.c:2339 #, c-format msgid "unknown expression in operand %s" msgstr "expresión desconocida en operando %s" -#: config/tc-msp430.c:2027 +#: config/tc-msp430.c:2222 #, c-format msgid "unknown addressing mode %s" msgstr "desconoce modo de direccionamiento %s" -#: config/tc-msp430.c:2035 +#: config/tc-msp430.c:2230 #, c-format msgid "Bad register name %s" -msgstr "Nombre registrado equivocado %s" +msgstr "Nombre registrado incorrecto %s" -#: config/tc-msp430.c:2046 +#: config/tc-msp430.c:2241 msgid "cannot use indirect addressing with the PC" msgstr "no se puede utilizar una dirección indirecta con el PC" -#: config/tc-msp430.c:2066 +#: config/tc-msp430.c:2261 msgid "')' required" msgstr "')' requerido" -#: config/tc-msp430.c:2078 +#: config/tc-msp430.c:2273 #, c-format msgid "unknown operator %s. Did you mean X(Rn) or #[hl][hl][oi](CONST) ?" msgstr "operador %s desconocido. ¿ Quiere decir X(Rn) ó #[hl][hl][oi](CONST) ?" -#: config/tc-msp430.c:2085 +#: config/tc-msp430.c:2280 msgid "r2 should not be used in indexed addressing mode" -msgstr "no se debe usar r2 en el modo de direccionamiento indizado" +msgstr "no se debe usar r2 en el modo de direccionamiento indexado" -#: config/tc-msp430.c:2097 config/tc-msp430.c:2171 config/tc-msp430.c:3211 -#: config/tc-msp430.c:3279 config/tc-msp430.c:3396 config/tc-msp430.c:3769 -#: config/tc-msp430.c:3868 config/tc-msp430.c:3919 +#: config/tc-msp430.c:2293 config/tc-msp430.c:2368 config/tc-msp430.c:3514 +#: config/tc-msp430.c:3582 config/tc-msp430.c:3699 config/tc-msp430.c:4121 +#: config/tc-msp430.c:4220 config/tc-msp430.c:4271 #, c-format msgid "extra characters '%s' at end of operand '%s'" msgstr "caracteres adicionales «%s» al final de operando «%s»" -#: config/tc-msp430.c:2129 config/tc-msp430.c:2131 +#: config/tc-msp430.c:2325 config/tc-msp430.c:2327 msgid "CPU8: Stack pointer accessed with an odd offset" msgstr "CPU8: puntero de pila accedido con un desplazamiento impar" -#: config/tc-msp430.c:2141 +#: config/tc-msp430.c:2337 #, c-format msgid "Registers cannot be used as a prefix of indexed expression [%s]" msgstr "Los registros no se pueden usar como un prefijo en la expresión indizada [%s]" -#: config/tc-msp430.c:2205 +#: config/tc-msp430.c:2403 #, c-format msgid "Internal bug. Try to use 0(r%d) instead of @r%d" msgstr "Defecto interno. Intente utilizar 0(r%d) en lugar de @r%d" -#: config/tc-msp430.c:2215 +#: config/tc-msp430.c:2413 msgid "this addressing mode is not applicable for destination operand" -msgstr "este modo direccional no es aplicable para operando destino" +msgstr "este modo direccional no es aplicable para el operando destino" -#: config/tc-msp430.c:2246 config/tc-msp430.c:2381 config/tc-msp430.c:2418 -#: config/tc-msp430.c:2448 config/tc-msp430.c:3147 config/tc-msp430.c:3230 -#: config/tc-msp430.c:3318 +#: config/tc-msp430.c:2444 config/tc-msp430.c:2579 config/tc-msp430.c:2616 +#: config/tc-msp430.c:2646 config/tc-msp430.c:3450 config/tc-msp430.c:3533 +#: config/tc-msp430.c:3621 #, c-format msgid "expected register as second argument of %s" msgstr "esperaba registro como segundo argumento de %s" -#: config/tc-msp430.c:2285 config/tc-msp430.c:2351 +#: config/tc-msp430.c:2483 config/tc-msp430.c:2549 #, c-format msgid "index value too big for %s" -msgstr "valor indizado demasiado grande para %s" +msgstr "valor indexado demasiado grande para %s" -#: config/tc-msp430.c:2302 config/tc-msp430.c:2368 config/tc-msp430.c:2475 +#: config/tc-msp430.c:2500 config/tc-msp430.c:2566 config/tc-msp430.c:2673 #, c-format msgid "unexpected addressing mode for %s" msgstr "modo direccional inesperado para %s" -#: config/tc-msp430.c:2388 config/tc-msp430.c:2425 config/tc-msp430.c:2455 +#: config/tc-msp430.c:2586 config/tc-msp430.c:2623 config/tc-msp430.c:2653 #, c-format msgid "constant generator destination register found in %s" msgstr "encontrado generador de registro destino constante en %s" -#: config/tc-msp430.c:2432 config/tc-msp430.c:2462 +#: config/tc-msp430.c:2630 config/tc-msp430.c:2660 #, c-format msgid "constant generator source register found in %s" msgstr "generador constante de registro destino encontrado en %s" -#: config/tc-msp430.c:2552 +#: config/tc-msp430.c:2840 msgid "no size modifier after period, .w assumed" msgstr "" -#: config/tc-msp430.c:2556 +#: config/tc-msp430.c:2844 #, c-format msgid "unrecognised instruction size modifier .%c" msgstr "no reconocido modificador de tamaño de instrucción .%c" -#: config/tc-msp430.c:2570 +#: config/tc-msp430.c:2858 #, c-format msgid "junk found after instruction: %s.%s" msgstr "basura aparecida tras instrucción: %s.%s" -#: config/tc-msp430.c:2590 +#: config/tc-msp430.c:2878 #, c-format msgid "instruction %s.a does not exist" msgstr "instrucción %s.a no existe" -#: config/tc-msp430.c:2604 +#: config/tc-msp430.c:2892 #, c-format msgid "instruction %s requires %d operand" msgid_plural "instruction %s requires %d operands" msgstr[0] "instrucción %s requiere de %d operando" msgstr[1] "instrucción %s requiere de %d operandos" -#: config/tc-msp430.c:2622 +#: config/tc-msp430.c:2910 #, c-format msgid "instruction %s requires MSP430X mcu" msgstr "instrucción %s requiere MSP430X mcu" -#: config/tc-msp430.c:2642 +#: config/tc-msp430.c:2930 #, c-format msgid "unable to repeat %s insn" msgstr "incapaz para utilizar %s insn" -#: config/tc-msp430.c:2661 -msgid "NOP inserted between two instructions that change interrupt state" -msgstr "" - -#: config/tc-msp430.c:2663 -msgid "a NOP might be needed here because of successive changes in interrupt state" -msgstr "" - -#: config/tc-msp430.c:2674 +#: config/tc-msp430.c:3002 msgid "CPU12: CMP/BIT with PC destination ignores next instruction" msgstr "" -#: config/tc-msp430.c:2682 +#: config/tc-msp430.c:3010 msgid "CPU19: Instruction setting CPUOFF must be followed by a NOP" msgstr "" -#: config/tc-msp430.c:2689 +#: config/tc-msp430.c:3017 msgid "internal error: unknown nop check state" msgstr "error interno: estado marcado ‘nop’ desconocido" -#: config/tc-msp430.c:2724 -msgid "inserting a NOP before EINT" -msgstr "insertando un NOP antes de EINT" - -#: config/tc-msp430.c:2727 -msgid "a NOP might be needed before the EINT" -msgstr "un NOP quizá está requerido antes del EINT" - -#: config/tc-msp430.c:2767 config/tc-msp430.c:2769 config/tc-msp430.c:3473 -#: config/tc-msp430.c:3475 +#: config/tc-msp430.c:3071 config/tc-msp430.c:3073 config/tc-msp430.c:3782 +#: config/tc-msp430.c:3784 msgid "CPU11: PC is destination of SR altering instruction" msgstr "" -#: config/tc-msp430.c:2784 config/tc-msp430.c:2786 config/tc-msp430.c:2892 -#: config/tc-msp430.c:2894 config/tc-msp430.c:3490 config/tc-msp430.c:3492 -#: config/tc-msp430.c:3668 config/tc-msp430.c:3670 +#: config/tc-msp430.c:3088 config/tc-msp430.c:3090 config/tc-msp430.c:3195 +#: config/tc-msp430.c:3197 config/tc-msp430.c:3799 config/tc-msp430.c:3801 +#: config/tc-msp430.c:4020 config/tc-msp430.c:4022 msgid "CPU13: SR is destination of SR altering instruction" msgstr "" -#: config/tc-msp430.c:2805 config/tc-msp430.c:2904 config/tc-msp430.c:3533 -#: config/tc-msp430.c:3702 +#: config/tc-msp430.c:3106 config/tc-msp430.c:3207 config/tc-msp430.c:3885 +#: config/tc-msp430.c:4054 msgid "repeat instruction used with non-register mode instruction" msgstr "repite instrucciones utilizadas con modo de instrucción no registrada" -#: config/tc-msp430.c:2880 config/tc-msp430.c:3237 config/tc-msp430.c:3658 +#: config/tc-msp430.c:3181 config/tc-msp430.c:3540 config/tc-msp430.c:4010 #, c-format msgid "%s: attempt to rotate the PC register" msgstr "%s: trata rotar el registro PC" -#: config/tc-msp430.c:3129 config/tc-msp430.c:3205 +#: config/tc-msp430.c:3432 config/tc-msp430.c:3508 #, c-format msgid "expected #n as first argument of %s" msgstr "esperaba #n como primer argumento de %s" -#: config/tc-msp430.c:3135 +#: config/tc-msp430.c:3438 #, c-format msgid "extra characters '%s' at end of constant expression '%s'" msgstr "caracteres adicionales «%s» al final de expresión constante «%s»" -#: config/tc-msp430.c:3140 config/tc-msp430.c:3216 +#: config/tc-msp430.c:3443 config/tc-msp430.c:3519 #, c-format msgid "expected constant expression as first argument of %s" msgstr "esperaba una expresión constante como primer argumento de %s" -#: config/tc-msp430.c:3166 +#: config/tc-msp430.c:3469 msgid "Too many registers popped" msgstr "Demasiados registros aparecidos" -#: config/tc-msp430.c:3176 +#: config/tc-msp430.c:3479 msgid "Cannot use POPM to restore the SR register" msgstr "" -#: config/tc-msp430.c:3196 config/tc-msp430.c:3265 +#: config/tc-msp430.c:3499 config/tc-msp430.c:3568 #, c-format msgid "repeat count cannot be used with %s" msgstr "repetición de conteo no puede ser utilizado con %s" -#: config/tc-msp430.c:3223 +#: config/tc-msp430.c:3526 #, c-format msgid "expected first argument of %s to be in the range 1-4" msgstr "esperaba primer argumento de %s para estar dentro del rango 1-4" -#: config/tc-msp430.c:3288 +#: config/tc-msp430.c:3591 #, c-format msgid "expected value of first argument of %s to fit into 20-bits" msgstr "" -#: config/tc-msp430.c:3307 +#: config/tc-msp430.c:3610 #, c-format msgid "expected register name or constant as first argument of %s" msgstr "nombre registrado esperada o constante como primer argumento de %s" -#: config/tc-msp430.c:3401 +#: config/tc-msp430.c:3704 msgid "expected constant value as argument to RPT" msgstr "esperaba un valor constante como argumento a RPT" -#: config/tc-msp430.c:3407 +#: config/tc-msp430.c:3710 msgid "expected constant in the range 2..16" msgstr "constante esperada dentro del límite 2..16" -#: config/tc-msp430.c:3422 +#: config/tc-msp430.c:3725 msgid "PC used as an argument to RPT" msgstr "PC utilizado como argumento a RPT" -#: config/tc-msp430.c:3428 +#: config/tc-msp430.c:3731 msgid "expected constant or register name as argument to RPT insn" msgstr "" -#: config/tc-msp430.c:3435 +#: config/tc-msp430.c:3738 msgid "Illegal emulated instruction" msgstr "Instrucción emulada ilegítima" -#: config/tc-msp430.c:3687 +#: config/tc-msp430.c:4039 #, c-format msgid "%s instruction does not accept a .b suffix" msgstr "instrucción %s no acepta un sufijo .b" -#: config/tc-msp430.c:3800 +#: config/tc-msp430.c:4152 #, c-format msgid "Even number required. Rounded to %d" msgstr "Se requiere un número par. Se redondea a %d" -#: config/tc-msp430.c:3811 +#: config/tc-msp430.c:4163 #, c-format msgid "Wrong displacement %d" -msgstr "Desplazamiento equivocado %d" +msgstr "Desplazamiento incorrecto %d" -#: config/tc-msp430.c:3833 +#: config/tc-msp430.c:4185 msgid "instruction requires label sans '$'" msgstr "la instrucción requiere una etiqueta sin '$'" -#: config/tc-msp430.c:3837 +#: config/tc-msp430.c:4189 msgid "instruction requires label or value in range -511:512" msgstr "la instrucción requiere una etiqueta o valor en el límite -511:512" -#: config/tc-msp430.c:3843 config/tc-msp430.c:3897 config/tc-msp430.c:3945 +#: config/tc-msp430.c:4195 config/tc-msp430.c:4249 config/tc-msp430.c:4297 msgid "instruction requires label" msgstr "instrucción requiere etiqueta" -#: config/tc-msp430.c:3851 config/tc-msp430.c:3903 +#: config/tc-msp430.c:4203 config/tc-msp430.c:4255 msgid "polymorphs are not enabled. Use -mP option to enable." msgstr "los polimórficos no están activados. Use la opción -mP para activarlos." -#: config/tc-msp430.c:3949 +#: config/tc-msp430.c:4301 msgid "Illegal instruction or not implemented opcode." msgstr "Instrucción ilegal o código operacional sin implementar." -#: config/tc-msp430.c:3980 config/tc-sh64.c:2479 +#: config/tc-msp430.c:4355 msgid "can't find opcode" msgstr "no se puede encontrar el código operacional" -#: config/tc-msp430.c:4497 +#: config/tc-msp430.c:4868 #, c-format msgid "internal inconsistency problem in %s: insn %04lx" msgstr "problema de inconsistencia interna en %s: insn %04lx" -#: config/tc-msp430.c:4539 config/tc-msp430.c:4571 +#: config/tc-msp430.c:4910 config/tc-msp430.c:4942 #, c-format msgid "internal inconsistency problem in %s: ext. insn %04lx" msgstr "problema de inconsistencia interna en %s: ext. insn %04lx" -#: config/tc-msp430.c:4583 +#: config/tc-msp430.c:4954 #, c-format msgid "internal inconsistency problem in %s: %lx" msgstr "problema de inconsistencia interna en %s: %lx" @@ -13300,41 +15431,41 @@ msgstr " -march=ms2 permite instrucciones ms2 \n" msgid " -nosched disable scheduling restrictions\n" msgstr " -nosched desactiva las restricciones de calendarización\n" -#: config/tc-mt.c:224 +#: config/tc-mt.c:226 #, c-format msgid "instruction %s may not follow another memory access instruction." msgstr "la instrucción %s no puede estar a continuación de otra instrucción de acceso a memoria." -#: config/tc-mt.c:230 +#: config/tc-mt.c:232 #, c-format msgid "instruction %s may not follow another I/O instruction." msgstr "la instrucción %s no puede estar a continuación de otra instrucción E/S." -#: 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 "%s no puede ocupar la ranura de retardo de otra insn de ramificación." -#: config/tc-mt.c:261 +#: config/tc-mt.c:263 #, c-format msgid "operand references R%ld of previous instruction." msgstr "operando se refiere a R%ld de la instrucción previa." -#: config/tc-mt.c:267 +#: config/tc-mt.c:269 #, c-format msgid "operand references R%ld of instruction before previous." msgstr "operando se refiere a R%ld de la instrucción anterior a la previa." -#: 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 "la ramificación condicional o operando de insn jal se refiere a R%ld de la insn aritmética o lógica previa." -#: config/tc-mt.c:349 +#: config/tc-mt.c:351 msgid "md_estimate_size_before_relax\n" msgstr "md_estimate_size_before_relax\n" -#: config/tc-nds32.c:1934 +#: config/tc-nds32.c:2374 msgid "" "<arch name>\t Assemble for architecture <arch name>\n" "\t\t\t <arch name> could be\n" @@ -13344,7 +15475,7 @@ msgstr "" "\t\t\t <arqu nombre> podría ser\n" "\t\t\t v3, v3j, v3m, v3f, v3s, v2, v2j, v2f, v2s" -#: config/tc-nds32.c:1938 +#: config/tc-nds32.c:2378 msgid "" "<baseline>\t Assemble for baseline <baseline>\n" "\t\t\t <baseline> could be v2, v3, v3m" @@ -13352,7 +15483,7 @@ msgstr "" "<baseline>\t Ensambla para línea básica <baseline>\n" "\t\t\t <baseline> podría ser v2, v3, v3m" -#: config/tc-nds32.c:1941 +#: config/tc-nds32.c:2381 msgid "" "<freg>\t Specify a FPU configuration\n" "\t\t\t <freg>\n" @@ -13368,7 +15499,7 @@ msgstr "" "\t\t\t 2: 32 SP / 16 DP registros\n" "\t\t\t 3: 32 SP / 32 DP registros" -#: config/tc-nds32.c:1947 +#: config/tc-nds32.c:2387 msgid "" "<abi>\t Specify a abi version\n" "\t\t\t <abi> could be v1, v2, v2fp, v2fpp" @@ -13376,55 +15507,67 @@ msgstr "" "<abi>\t Especificar una versión abi\n" "\t\t\t <abi> podría ser v1, v2, v2fp, v2fpp" -#: config/tc-nds32.c:1978 +#: config/tc-nds32.c:2420 msgid "Multiply instructions support" msgstr "Apoya instrucciones múltiples" -#: config/tc-nds32.c:1979 +#: config/tc-nds32.c:2421 msgid "Divide instructions support" msgstr "Soporta instrucciones dividir" -#: config/tc-nds32.c:1980 +#: config/tc-nds32.c:2422 msgid "16-bit extension" msgstr "Extensión de 16-bit" -#: config/tc-nds32.c:1981 +#: config/tc-nds32.c:2423 msgid "d0/d1 registers" msgstr "registros d0/d1" -#: config/tc-nds32.c:1982 +#: config/tc-nds32.c:2424 msgid "Performance extension" msgstr "Rendimiento extensión" -#: config/tc-nds32.c:1983 +#: config/tc-nds32.c:2425 msgid "Performance extension 2" msgstr "Rendimiento extensión" -#: config/tc-nds32.c:1984 +#: config/tc-nds32.c:2426 msgid "String extension" msgstr "Cadena extendida" -#: config/tc-nds32.c:1985 +#: config/tc-nds32.c:2427 msgid "Reduced Register configuration (GPR16) option" msgstr "" -#: config/tc-nds32.c:1986 +#: config/tc-nds32.c:2428 msgid "AUDIO ISA extension" msgstr "Extensión de sonido ISA" -#: config/tc-nds32.c:1987 +#: config/tc-nds32.c:2429 msgid "FPU SP extension" msgstr "Extensión FPU PS" -#: config/tc-nds32.c:1988 +#: config/tc-nds32.c:2430 msgid "FPU DP extension" msgstr "FPU como extensión DP" -#: config/tc-nds32.c:1989 +#: config/tc-nds32.c:2431 msgid "FPU fused-multiply-add instructions" msgstr "FPU fused-multiply-add como instrucciones" -#: config/tc-nds32.c:2026 +#: config/tc-nds32.c:2432 +#, fuzzy +#| msgid "FPU SP extension" +msgid "DSP extension" +msgstr "Extensión FPU PS" + +#: config/tc-nds32.c:2433 +#, fuzzy +#| msgid "bad reloc expression" +msgid "hardware loop extension" +msgstr "expresión de reubicación incorrecta" + +#: config/tc-nds32.c:2470 #, c-format msgid "" "\n" @@ -13433,7 +15576,7 @@ msgstr "" "\n" "Opciones ensambladoras específicas de NDS32:\n" -#: config/tc-nds32.c:2027 +#: config/tc-nds32.c:2471 #, c-format msgid "" " -O1,\t\t\t Optimize for performance\n" @@ -13442,7 +15585,7 @@ msgstr "" " -O1,\t\t\t Optimiza para rendimiento\n" " -Os\t\t\t Optimiza para espacio\n" -#: config/tc-nds32.c:2030 +#: config/tc-nds32.c:2474 #, c-format msgid "" " -EL, -mel or -little Produce little endian output\n" @@ -13453,419 +15596,249 @@ msgid "" " -mno-all-relax\t Suppress all relaxation for this file\n" msgstr "" -#: config/tc-nds32.c:2041 +#: config/tc-nds32.c:2485 #, c-format msgid " -m%s%s\n" msgstr " -m%s%s\n" -#: config/tc-nds32.c:2048 +#: config/tc-nds32.c:2492 #, c-format msgid " -m[no-]%-17sEnable/Disable %s\n" msgstr " -m[no-]%-17s activa/desactiva %s\n" -#: config/tc-nds32.c:2052 +#: config/tc-nds32.c:2496 #, c-format msgid " -mall-ext\t\t Turn on all extensions and instructions support\n" msgstr "" -#: config/tc-nds32.c:2326 +#: config/tc-nds32.c:2770 #, c-format msgid "la must use with symbol. '%s'" msgstr "la debe utilizar con símbolo . «%s»" -#: config/tc-nds32.c:2379 +#: config/tc-nds32.c:2823 #, c-format msgid "need PIC qualifier with symbol. '%s'" msgstr "requiere PIC cualificador con símbolo. «%s»" -#: config/tc-nds32.c:2416 +#: config/tc-nds32.c:2860 #, c-format msgid "Operand is not a constant. `%s'" msgstr "Operando no es una constante. «%s»" -#: config/tc-nds32.c:2505 +#: config/tc-nds32.c:2949 #, c-format msgid "needs @GOT or @GOTOFF. %s" msgstr "requiere @GOT en @GOTOFF. %s" -#: config/tc-nds32.c:3001 -#, c-format -msgid "Duplicated pseudo-opcode %s." -msgstr "Duplicado pseudo-opcode %s." - -#: config/tc-nds32.c:3051 +#: config/tc-nds32.c:3487 #, c-format msgid "Too many argument. `%s'" msgstr "Demasiados argumentos. «%s»" #. Logic here rejects the input arch name. -#: config/tc-nds32.c:3112 +#: config/tc-nds32.c:3548 #, c-format msgid "unknown arch name `%s'\n" msgstr "desconoce nombre arq «%s»\n" #. Logic here rejects the input baseline. -#: config/tc-nds32.c:3131 +#: config/tc-nds32.c:3567 #, c-format msgid "unknown baseline `%s'\n" msgstr "desconoce base lineal «%s»\n" #. Logic here rejects the input FPU configuration. -#: config/tc-nds32.c:3154 +#: config/tc-nds32.c:3590 #, c-format msgid "unknown FPU configuration `%s'\n" msgstr "desconoce configuración FPU «%s»\n" #. Logic here rejects the input abi version. -#: config/tc-nds32.c:3178 +#: config/tc-nds32.c:3614 #, c-format msgid "unknown ABI version`%s'\n" msgstr "desconoce versión «%s» de ABI\n" -#: config/tc-nds32.c:3783 +#: config/tc-nds32.c:4339 #, c-format msgid "Different arguments of .vec_size are found, previous %d, current %d" msgstr "" -#: config/tc-nds32.c:3788 +#: config/tc-nds32.c:4344 #, c-format msgid "Argument of .vec_size is expected 4 or 16, actual: %d." msgstr "Argumento de tamaño .vec_size está esperado 4 o 16, actual: %d." -#: config/tc-nds32.c:3792 +#: config/tc-nds32.c:4348 msgid "Argument of .vec_size is not a constant." msgstr "Argumento de .vec_size no es constante." -#: config/tc-nds32.c:4328 +#: config/tc-nds32.c:4934 #, c-format msgid "Don't know how to handle this field. %s" msgstr "No se sabe cómo manipular este campo. %s" -#: config/tc-nds32.c:4493 +#: config/tc-nds32.c:5299 #, c-format msgid "instruction %s requires enabling performance extension" msgstr "instrucción %s requiere activando extensión rendimiento" -#: config/tc-nds32.c:4501 +#: config/tc-nds32.c:5311 #, c-format msgid "instruction %s requires enabling performance extension II" msgstr "instrucción %s requiere activar extensión rendimiento II" -#: config/tc-nds32.c:4509 +#: config/tc-nds32.c:5323 #, c-format msgid "instruction %s requires enabling AUDIO extension" msgstr "instrucción %s requiere activar extensión AUDIO" -#: config/tc-nds32.c:4517 +#: config/tc-nds32.c:5335 #, c-format msgid "instruction %s requires enabling STRING extension" msgstr "instrucción %s requiere activación de extensión STRING" -#: config/tc-nds32.c:4526 +#: config/tc-nds32.c:5349 #, c-format msgid "instruction %s requires enabling DIV & DX_REGS extension" msgstr "instrucción %s requiere activar extensiones DIV & DX_REGS" -#: config/tc-nds32.c:4537 +#: config/tc-nds32.c:5364 #, c-format msgid "instruction %s requires enabling FPU extension" msgstr "instrucción %s requiere una extensión FPU" -#: config/tc-nds32.c:4545 +#: config/tc-nds32.c:5376 #, c-format msgid "instruction %s requires enabling FPU_SP extension" msgstr "instrucción %s requiere activar extensión FPU_PS" -#: config/tc-nds32.c:4557 config/tc-nds32.c:4577 -#, c-format -msgid "instruction %s requires enabling FPU_MAC extension" -msgstr "instrucción %s requiere activación de extensión FPU_MAC" - -#: config/tc-nds32.c:4565 +#: config/tc-nds32.c:5388 #, c-format msgid "instruction %s requires enabling FPU_DP extension" msgstr "instrucción %s requiere activar extensión FPU_DP" -#: config/tc-nds32.c:4587 +#: config/tc-nds32.c:5399 config/tc-nds32.c:5407 +#, c-format +msgid "instruction %s requires enabling FPU_MAC extension" +msgstr "instrucción %s requiere activación de extensión FPU_MAC" + +#: config/tc-nds32.c:5415 #, c-format msgid "instruction %s requires enabling DX_REGS extension" msgstr "instrucción %s requiere activación de extensión DX_REGS" -#: config/tc-nds32.c:4778 +#: config/tc-nds32.c:5431 +#, fuzzy, c-format +#| msgid "instruction %s requires enabling FPU extension" +msgid "instruction %s requires enabling dsp extension" +msgstr "instrucción %s requiere una extensión FPU" + +#: config/tc-nds32.c:5443 +#, fuzzy, c-format +#| msgid "instruction %s requires enabling FPU extension" +msgid "instruction %s requires enabling zol extension" +msgstr "instrucción %s requiere una extensión FPU" + +#: config/tc-nds32.c:5448 +#, fuzzy, c-format +#| msgid "internal error: unknown option name '%s'" +msgid "internal error: unknown instruction attribute: 0x%08x" +msgstr "error interno: nombre desconocido opcional '%s'" + +#: config/tc-nds32.c:5741 #, c-format msgid "relax hint unrecognized instruction: line %d." msgstr "instrucción relajada irreconocida: línea %d." -#: config/tc-nds32.c:4819 +#: config/tc-nds32.c:5796 #, c-format msgid "Can not find match relax hint. Line: %d" msgstr "No puede encontrar coincidencia relajada insinuada. Línea: %d" -#: config/tc-nds32.c:4999 -#, c-format -msgid "Internal error: Relax hint error. %s: %x" +#: config/tc-nds32.c:5994 +#, fuzzy +#| msgid "Internal error: Relax hint error. %s: %x" +msgid "Internal error: .relax_hint KEY is not a number!" +msgstr "Error interno: relajar error insinuoso. %s: %x" + +#: config/tc-nds32.c:6022 +#, fuzzy, c-format +#| msgid "Internal error: Relax hint error. %s: %x" +msgid "Internal error: Relax hint (%s) error. %s: %s (%x)" msgstr "Error interno: relajar error insinuoso. %s: %x" -#: config/tc-nds32.c:5071 +#: config/tc-nds32.c:6099 #, c-format msgid "Internal error: Range error. %s" msgstr "Error interno: límite erróneo. %s" -#: config/tc-nds32.c:5153 +#: config/tc-nds32.c:6160 +msgid "Multiple BFD_RELOC_NDS32_PTR_RESOLVED patterns are not supported yet!" +msgstr "" + +#: config/tc-nds32.c:6308 +#, fuzzy, c-format +#| msgid "unsupported instruction `%s'" +msgid "Not support instruction %s in verbatim." +msgstr "no admitió instrucción «%s»" + +#: config/tc-nds32.c:6315 +#, fuzzy, c-format +#| msgid "st/ld offset 23 instruction was disabled ." +msgid "16-bit instruction is disabled: %s." +msgstr "st/ld desplaza 23 instrucciones fue desactivado." + +#: config/tc-nds32.c:6342 #, c-format msgid "Instruction %s not supported in the baseline." msgstr "Instrucción %s no admitida dentro de la línea base." -#: config/tc-nds32.c:5208 +#: config/tc-nds32.c:6409 #, c-format msgid "Unrecognized opcode, %s." msgstr "No reconocido el código operacional: %s." -#: config/tc-nds32.c:5211 +#: config/tc-nds32.c:6412 #, c-format msgid "Incorrect syntax, %s." msgstr "Sintaxis incorrecta, %s." -#: config/tc-nds32.c:5214 +#: config/tc-nds32.c:6415 #, c-format msgid "Unrecognized operand/register, %s." msgstr "Operando no reconocido %s." -#: config/tc-nds32.c:5217 +#: config/tc-nds32.c:6418 #, c-format msgid "Operand out of range, %s." -msgstr "Operando fuera de límite, %s." +msgstr "Operando fuera de rango, %s." -#: config/tc-nds32.c:5220 +#: config/tc-nds32.c:6421 #, c-format msgid "Prohibited register used for reduced-register, %s." msgstr "Registro utilizado prohibido para registro reducido, %s." -#: config/tc-nds32.c:5223 +#: config/tc-nds32.c:6424 #, c-format msgid "Junk at end of line, %s." msgstr "Basura al final de la línea, %s." -#: config/tc-nds32.c:5885 +#: config/tc-nds32.c:7122 msgid "Addend to unresolved symbol is not on word boundary." msgstr "Añadido a símbolo no resuelto no está en un límite de word." #. Should never here. -#: config/tc-nds32.c:6420 +#: config/tc-nds32.c:7617 msgid "Used FPU instructions requires enabling FPU extension" msgstr "Instrucción FPU utilizada requiere activación de extensión FPU" -#: config/tc-nds32.c:6611 +#: config/tc-nds32.c:7813 #, c-format msgid "Internal error: Unknown fixup type %d (`%s')" msgstr "Error interno: Tipo desconocido de corrección: %d (`%s')" -#: config/tc-nds32.c:6711 -msgid "need PIC qualifier with symbol." -msgstr "requiere PIC cualificador con símbolo." - -#: config/tc-nios2.c:453 config/tc-pru.c:309 -msgid "expecting opcode string in self test mode" -msgstr "esperando cadena operacional de código en modo de prueba" - -#: config/tc-nios2.c:455 config/tc-pru.c:311 -#, c-format -msgid "assembly 0x%08x, expected %s" -msgstr "ensambla 0x%08x, esperado %s" - -#: config/tc-nios2.c:848 -msgid "branch offset out of range\n" -msgstr "ramificación desplazada fuera de límite\n" - -#: config/tc-nios2.c:849 -msgid "branch relaxation failed\n" -msgstr "relajación de ramificación fallada\n" - -#: config/tc-nios2.c:1145 -msgid "error checking for overflow - broken assembler" -msgstr "" - -#: config/tc-nios2.c:1161 config/tc-pru.c:572 -#, c-format -msgid "immediate value 0x%x truncated to 0x%x" -msgstr "valor inmediato 0x%x truncado a 0x%x" - -#: config/tc-nios2.c:1188 config/tc-pru.c:598 -#, c-format -msgid "call target address 0x%08x out of range 0x%08x to 0x%08x" -msgstr "llama dirección destino 0x%08x fuera del límite 0x%08x a 0x%08x" - -#: config/tc-nios2.c:1194 -#, c-format -msgid "branch offset %d out of range %d to %d" -msgstr "ramificación de desplazamiento%d fuera de límite %d a %d" - -#: config/tc-nios2.c:1198 -#, c-format -msgid "branch offset %d out of range" -msgstr "ramificación de desplazamiento%d fuera de rango" - -#: config/tc-nios2.c:1204 config/tc-pru.c:608 -#, c-format -msgid "%s offset %d out of range %d to %d" -msgstr "%s desplazamiento %d fuera de límite %d a %d" - -#: config/tc-nios2.c:1208 -#, c-format -msgid "%s offset %d out of range" -msgstr "%s desplazado %d fuera del límite" - -#: config/tc-nios2.c:1213 config/tc-nios2.c:1228 config/tc-pru.c:613 -#, c-format -msgid "immediate value %d out of range %d to %d" -msgstr "valor %d inmediato fuera de límite %d a %d" - -#: config/tc-nios2.c:1218 config/tc-nios2.c:1223 config/tc-pru.c:623 -#: config/tc-pru.c:628 -#, c-format -msgid "immediate value %u out of range %u to %u" -msgstr "valor inmediato %u fuera de límite desde %u hasta %u" - -#: config/tc-nios2.c:1233 -#, c-format -msgid "custom instruction opcode %u out of range %u to %u" -msgstr "" - -#: config/tc-nios2.c:1238 config/tc-pru.c:633 -msgid "overflow in immediate argument" -msgstr "sobredesbordamiento dentro de argumento inmediato" - -#: config/tc-nios2.c:1310 config/tc-pru.c:669 -msgid "cannot create 64-bit relocation" -msgstr "no puede crear datos reubicantes de 64-bit" - -#: config/tc-nios2.c:1438 -#, c-format -msgid "internal error: broken opcode descriptor for `%s %s'\n" -msgstr "error interno: descripción de código operacional defectuoso para `%s %s'\n" - -#: config/tc-nios2.c:1487 config/tc-pru.c:859 -msgid "can't create relocation" -msgstr "no puede crear reubicación" - -#: config/tc-nios2.c:1518 config/tc-pru.c:993 config/tc-pru.c:1013 -#: config/tc-pru.c:1040 config/tc-pru.c:1059 config/tc-pru.c:1073 -#, c-format -msgid "unknown register %s" -msgstr "registro desconocido %s" - -#: config/tc-nios2.c:1526 -msgid "expecting control register" -msgstr "esperando registro de control" - -#: config/tc-nios2.c:1528 -msgid "illegal use of control register" -msgstr "utilización ilegal de registro de control" - -#: config/tc-nios2.c:1530 -msgid "illegal use of coprocessor register" -msgstr "utilización ilegal de uso de registro de coprocesador" - -#. 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 -#, c-format -msgid "invalid register %s" -msgstr "registro inválido %s" - -#: config/tc-nios2.c:1540 -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 -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 -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 -msgid "r31 cannot be used with jmp; use ret instead" -msgstr "r31 no se puede ser empleado con jmp; utilice ret en su lugar" - -#: config/tc-nios2.c:1982 -msgid "r31 cannot be used with jmpr.n; use ret.n instead" -msgstr "r31 no se puede ser empleado con jmpr.n; utilice ret.n en su lugar" - -#: config/tc-nios2.c:2595 config/tc-nios2.c:2622 config/tc-nios2.c:2649 -#: config/tc-nios2.c:2680 -#, c-format -msgid "Invalid constant operand %s" -msgstr "Operando constante inválido %s" - -#: config/tc-nios2.c:2997 config/tc-nios2.c:3021 config/tc-pru.c:1312 -#: config/tc-pru.c:1337 config/tc-pru.c:1357 -#, c-format -msgid "badly formed expression near %s" -msgstr "expresión equivocadamente formada cercana a %s" - -#: config/tc-nios2.c:3110 config/tc-nios2.c:3137 config/tc-pru.c:1406 -#: config/tc-pru.c:1431 config/tc-xtensa.c:2108 -msgid "too many arguments" -msgstr "demasiados argumentos" - -#: config/tc-nios2.c:3126 config/tc-pru.c:1383 -#, c-format -msgid "expecting %c near %s" -msgstr "esperando %c cerca de %s" - -#. we cannot recover from this. -#: config/tc-nios2.c:3277 -#, c-format -msgid "unrecognized pseudo-instruction %s" -msgstr "no reconocida psudo-instrucción %s" - -#: config/tc-nios2.c:3540 config/tc-tic6x.c:232 -#, c-format -msgid "unknown architecture '%s'" -msgstr "arquitectura desconocida '%s'" - -#: config/tc-nios2.c:3621 -msgid "Big-endian R2 is not supported." -msgstr "Big-endian R2 sin apoyo." - -#. Unrecognised instruction - error. -#: config/tc-nios2.c:3789 config/tc-pru.c:1729 -#, c-format -msgid "unrecognised instruction %s" -msgstr "instrucción %s no reconocida" - -#: config/tc-nios2.c:3909 config/tc-pru.c:1785 -#, c-format -msgid "can't represent relocation type %s" -msgstr "no puede representar tipo %s reubicable" - -#: config/tc-nios2.c:4002 -msgid "Bad .section directive: want a,s,w,x,M,S,G,T in string" -msgstr "Directiva .section equivocada: se quiere en la cadena a,s,w,x,M,S,G,T" - -#: config/tc-nios2.c:4028 -#, c-format -msgid "Illegal operands: %%tls_ldo in %d-byte data field" -msgstr "Operandos ilegítimos: %%tls_ldo en campo de datos de %d-bytes" - -#: config/tc-nios2.c:4040 config/tc-nios2.c:4058 config/tc-nios2.c:4065 -#, c-format -msgid "Illegal operands: %%tls_ldo requires arguments in ()" -msgstr "Operandos ilegítimos: %%tls_ldo requiere argumentos en ()" - -#: config/tc-nios2.c:4072 -#, c-format -msgid "Illegal operands: garbage after %%tls_ldo()" -msgstr "Operandos ilegítimos: hay basura tras %%tls_ldo()" - #: config/tc-ns32k.c:437 msgid "Invalid syntax in PC-relative addressing mode" msgstr "Sintaxis no válida en el modo de direccionamiento relativo al PC" @@ -13880,15 +15853,15 @@ msgstr "Sintaxis no válida en el modo de direccionamiento Relativo a Memoria" #: config/tc-ns32k.c:609 msgid "Invalid scaled-indexed mode, use (b,w,d,q)" -msgstr "Modo escalado-indizado inválido, utilice (b,w,d,q)" +msgstr "Modo escalado-indexado inválido, utilice (b,w,d,q)" #: config/tc-ns32k.c:614 msgid "Syntax in scaled-indexed mode, use [Rn:m] where n=[0..7] m={b,w,d,q}" -msgstr "Sintaxis en el modo escalado-indizado, utilice [Rn:m] donde n=[0..7] m={b,w,d,q}" +msgstr "Sintaxis en el modo escalado-indexado, utilice [Rn:m] donde n=[0..7] m={b,w,d,q}" #: config/tc-ns32k.c:619 msgid "Scaled-indexed addressing mode combined with scaled-index" -msgstr "Modo de direccionamiento escalado-indizado combinado con índice-escalado" +msgstr "Modo de direccionamiento escalado-indexado combinado con índice-escalado" #: config/tc-ns32k.c:630 msgid "Invalid or illegal addressing mode combined with scaled-index" @@ -13900,7 +15873,7 @@ msgstr "Fin de sufijo prematuro -- Se cambia por defecto a d" #: config/tc-ns32k.c:766 msgid "Bad suffix after ':' use {b|w|d} Defaulting to d" -msgstr "Sufijo equivocado tras ':' utilice {b|w|d} Se cambia por defecto a d" +msgstr "Sufijo incorrecto tras ':' utilice {b|w|d} Se cambia por defecto a d" #: config/tc-ns32k.c:811 msgid "Very short instr to option, ie you can't do it on a NULLstr" @@ -13924,114 +15897,108 @@ msgstr "Operando de escritura inmediato inválido." #: config/tc-ns32k.c:1074 msgid "Bad opcode-table-option, check in file ns32k-opcode.h" -msgstr "Opción-de-tabla-de-códigos-de-operación equivocada, revise en el fichero ns32k-opcode.h" +msgstr "Opción-de-tabla-de-códigos-de-operación incorrecta, revise en el fichero ns32k-opcode.h" -#: config/tc-ns32k.c:1107 +#: config/tc-ns32k.c:1108 msgid "No such opcode" msgstr "No existe ese código operacional" -#: config/tc-ns32k.c:1182 +#: config/tc-ns32k.c:1183 msgid "Bad suffix, defaulting to d" -msgstr "Sufijo equivocado, se cambia por defecto a d" +msgstr "Sufijo incorrecto, se cambia por defecto a d" -#: config/tc-ns32k.c:1209 +#: config/tc-ns32k.c:1210 msgid "Too many operands passed to instruction" msgstr "Se pasan demasiados operandos a la instrucción" #. Check error in default. -#: config/tc-ns32k.c:1221 +#: config/tc-ns32k.c:1222 msgid "Wrong numbers of operands in default, check ns32k-opcodes.h" -msgstr "Número equivocado de operandos por defecto, revise ns32k-opcodes.h" +msgstr "Número incorrecto de operandos por defecto, revise ns32k-opcodes.h" -#: config/tc-ns32k.c:1224 +#: config/tc-ns32k.c:1225 msgid "Wrong number of operands" -msgstr "Número equivocado de operandos" +msgstr "Número incorrecto de operandos" -#: config/tc-ns32k.c:1297 +#: config/tc-ns32k.c:1298 #, c-format msgid "Can not do %d byte pc-relative relocation for storage type %d" msgstr "No se puede hacer la reubicación relativa a pc de %d byte para el tipo de almacenamiento %d" -#: config/tc-ns32k.c:1300 +#: config/tc-ns32k.c:1301 #, c-format msgid "Can not do %d byte relocation for storage type %d" msgstr "No se puede hacer la reubicación de %d byte para el tipo de almacenamiento %d" -#: config/tc-ns32k.c:1392 +#: config/tc-ns32k.c:1393 #, c-format msgid "value of %ld out of byte displacement range." msgstr "valor de %ld fuera del límite de desubicación de byte." -#: config/tc-ns32k.c:1402 +#: config/tc-ns32k.c:1403 #, c-format msgid "value of %ld out of word displacement range." msgstr "valor de %ld fuera del límite de desubicación de word." -#: config/tc-ns32k.c:1417 +#: config/tc-ns32k.c:1418 #, c-format msgid "value of %ld out of double word displacement range." msgstr "valor de %ld fuera del límite de desubicación de double word." -#: config/tc-ns32k.c:1438 +#: config/tc-ns32k.c:1439 #, c-format msgid "Internal logic error. Line %d, file: \"%s\"" msgstr "Error lógico interno. Línea %d, fichero «%s»" -#: config/tc-ns32k.c:1486 +#: config/tc-ns32k.c:1487 #, c-format msgid "Internal logic error. line %d, file \"%s\"" msgstr "Error lógico interno. línea %d, fichero «%s»" -#: config/tc-ns32k.c:1587 +#: config/tc-ns32k.c:1588 msgid "Bit field out of range" -msgstr "Campo de bits fuera de límite" +msgstr "Campo de bits fuera de rango" -#: config/tc-ns32k.c:1687 +#: config/tc-ns32k.c:1688 msgid "iif convert internal pcrel/binary" msgstr "iif convierte a pcrel/binario interno" -#: config/tc-ns32k.c:1704 +#: config/tc-ns32k.c:1705 msgid "Bignum too big for long" msgstr "Número grande demasiado grande para long" -#: config/tc-ns32k.c:1781 +#: config/tc-ns32k.c:1782 msgid "iif convert internal pcrel/pointer" msgstr "iif convierte a pcrel/puntero interno" -#: config/tc-ns32k.c:1786 +#: config/tc-ns32k.c:1787 msgid "Internal logic error in iif.iifP[n].type" msgstr "Error interno de lógica en iif.iifP[n].tipo" #. We can't relax this case. -#: config/tc-ns32k.c:1822 +#: config/tc-ns32k.c:1823 msgid "Can't relax difference" msgstr "No se puede relajar la diferencia" -#: config/tc-ns32k.c:1863 +#: config/tc-ns32k.c:1864 msgid "Displacement too large for :d" msgstr "Desubicación demasiado grande para :d" -#: config/tc-ns32k.c:1876 +#: config/tc-ns32k.c:1877 msgid "Internal logic error in iif.iifP[].type" msgstr "Error interno de lógica en iif.iifP[].tipo" -#. Fatal. -#: config/tc-ns32k.c:1908 -#, c-format -msgid "Can't hash %s: %s" -msgstr "No se puede dispersar %s: %s" - -#: config/tc-ns32k.c:2144 +#: config/tc-ns32k.c:2141 #, c-format msgid "invalid architecture option -m%s, ignored" msgstr "opción de arquitectura -m%s no válida, se descarta" -#: config/tc-ns32k.c:2157 +#: config/tc-ns32k.c:2154 #, c-format msgid "invalid default displacement size \"%s\". Defaulting to %d." msgstr "tamaño de desubicación por defecto «%s» inválido. Se cambia a %d por defecto." -#: config/tc-ns32k.c:2173 +#: config/tc-ns32k.c:2170 #, c-format msgid "" "NS32K options:\n" @@ -14042,86 +16009,86 @@ msgstr "" "-m32032 | -m32532\tselecciona la variante de la arquitectura NS32K\n" "--disp-size-default=<1|2|4>\n" -#: config/tc-ns32k.c:2249 +#: config/tc-ns32k.c:2246 #, c-format msgid "Cannot find relocation type for symbol %s, code %d" msgstr "No se puede encontrar el tipo reubicado para el símbolo %s, código %d" -#: config/tc-pdp11.c:336 config/tc-pdp11.c:354 config/tc-pdp11.c:379 -#: config/tc-pdp11.c:385 config/tc-pdp11.c:398 +#: config/tc-pdp11.c:351 config/tc-pdp11.c:369 config/tc-pdp11.c:375 +#: config/tc-pdp11.c:400 config/tc-pdp11.c:406 config/tc-pdp11.c:419 msgid "Bad register name" -msgstr "Nombre de registro equivocado" +msgstr "Nombre de registro incorrecto" -#: config/tc-pdp11.c:417 config/tc-pdp11.c:481 config/tc-pdp11.c:492 +#: config/tc-pdp11.c:438 config/tc-pdp11.c:502 config/tc-pdp11.c:513 msgid "Error in expression" msgstr "Error en la expresión" -#: config/tc-pdp11.c:489 +#: config/tc-pdp11.c:510 msgid "Low order bits truncated in immediate float operand" msgstr "Se truncaron los bits de orden inferior en operando de coma flotante inmediato" -#: config/tc-pdp11.c:608 +#: config/tc-pdp11.c:654 msgid "Float AC not legal as integer operand" msgstr "AC de coma flotante no es legal como operando entero" -#: config/tc-pdp11.c:628 +#: config/tc-pdp11.c:674 msgid "General register not legal as float operand" msgstr "El registro general no es legal como operando de coma flotante" -#: config/tc-pdp11.c:661 +#: config/tc-pdp11.c:707 msgid "No instruction found" msgstr "No se encontró una instrucción" -#: config/tc-pdp11.c:671 config/tc-z80.c:1932 config/tc-z80.c:1945 +#: config/tc-pdp11.c:717 config/tc-z80.c:3668 #, c-format msgid "Unknown instruction '%s'" msgstr "Instrucción desconocida «%s»" -#: config/tc-pdp11.c:677 +#: config/tc-pdp11.c:723 #, c-format msgid "Unsupported instruction set extension: %s" msgstr "No se admite la extensión de conjunto de instrucciones: %s" -#: config/tc-pdp11.c:711 +#: config/tc-pdp11.c:757 msgid "operand is not an absolute constant" msgstr "operando no es una constante absoluta" -#: config/tc-pdp11.c:719 +#: config/tc-pdp11.c:765 msgid "3-bit immediate out of range" -msgstr "inmediato de 3-bit fuera de límite" +msgstr "inmediato de 3-bit fuera de rango" -#: config/tc-pdp11.c:726 +#: config/tc-pdp11.c:772 msgid "6-bit immediate out of range" -msgstr "inmediato de 6-bit fuera de límite" +msgstr "inmediato de 6-bit fuera de rango" -#: config/tc-pdp11.c:733 +#: config/tc-pdp11.c:779 msgid "8-bit immediate out of range" -msgstr "inmediato de 8-bit fuera de límite" +msgstr "inmediato de 8-bit fuera de rango" -#: config/tc-pdp11.c:750 config/tc-pdp11.c:943 +#: config/tc-pdp11.c:796 config/tc-pdp11.c:989 msgid "Symbol expected" msgstr "Se esperaba un símbolo" -#: config/tc-pdp11.c:755 +#: config/tc-pdp11.c:801 msgid "8-bit displacement out of range" -msgstr "Desubicación de 8-bit fuera de límite" +msgstr "Desubicación de 8-bit fuera de rango" -#: config/tc-pdp11.c:797 config/tc-pdp11.c:818 config/tc-pdp11.c:835 -#: config/tc-pdp11.c:856 config/tc-pdp11.c:873 config/tc-pdp11.c:894 -#: config/tc-pdp11.c:913 config/tc-pdp11.c:934 +#: config/tc-pdp11.c:843 config/tc-pdp11.c:864 config/tc-pdp11.c:881 +#: config/tc-pdp11.c:902 config/tc-pdp11.c:919 config/tc-pdp11.c:940 +#: config/tc-pdp11.c:959 config/tc-pdp11.c:980 msgid "Missing ','" msgstr "Ausentea ','" -#: config/tc-pdp11.c:948 +#: config/tc-pdp11.c:994 msgid "6-bit displacement out of range" -msgstr "6-bit desplazamiento fuera de límite" +msgstr "6-bit desplazamiento fuera de rango" -#: config/tc-pdp11.c:969 config/tc-tilegx.c:1215 config/tc-tilepro.c:1101 -#: config/tc-vax.c:1950 +#: config/tc-pdp11.c:1015 config/tc-tilegx.c:1212 config/tc-tilepro.c:1095 +#: config/tc-vax.c:1945 msgid "Too many operands" msgstr "Demasiados operandos" -#: config/tc-pdp11.c:1419 +#: config/tc-pdp11.c:1464 #, c-format msgid "Can not represent %s relocation in this object file format" msgstr "No se puede representar la reubicación %s en este formato de fichero objeto" @@ -14149,601 +16116,882 @@ msgstr "" "-little\t\t\tgenera código little endian\n" "-big\t\t\tgenera código big endian\n" -#: config/tc-pj.c:380 config/tc-sh.c:4149 config/tc-sh.c:4156 -#: config/tc-sh.c:4163 config/tc-sh.c:4170 +#: config/tc-pj.c:380 config/tc-sh.c:3580 config/tc-sh.c:3587 +#: config/tc-sh.c:3594 config/tc-sh.c:3601 msgid "pcrel too far" msgstr "pcrel demasiado lejos" -#: config/tc-ppc.c:977 config/tc-ppc.c:985 config/tc-ppc.c:3042 +#: config/tc-ppc.c:964 config/tc-ppc.c:972 config/tc-ppc.c:3497 msgid "invalid register expression" msgstr "expresión de registro inválido" -#: config/tc-ppc.c:1145 config/tc-ppc.c:1203 config/tc-ppc.c:1251 +#: config/tc-ppc.c:1135 config/tc-ppc.c:1193 config/tc-ppc.c:1241 msgid "the use of -mvle requires big endian." msgstr "la utilización de -mvle requiere big endian." -#: config/tc-ppc.c:1183 config/tc-ppc.c:1205 +#: config/tc-ppc.c:1173 config/tc-ppc.c:1195 msgid "the use of -mvle requires -a32." msgstr "la macro requiere $at mientras $at está en uso." -#: config/tc-ppc.c:1185 +#: config/tc-ppc.c:1175 #, c-format msgid "%s unsupported" msgstr "no se admite %s" -#: config/tc-ppc.c:1309 +#: config/tc-ppc.c:1268 config/tc-s390.c:493 config/tc-s390.c:500 +#, c-format +msgid "invalid switch -m%s" +msgstr "interruptor -m%s inválido" + +#: config/tc-ppc.c:1299 msgid "--nops needs a numeric argument" msgstr "--nops necesita un argumento numérico" -#: config/tc-ppc.c:1326 +#: config/tc-ppc.c:1335 +#, fuzzy, c-format +#| msgid "SPARC options:\n" +msgid "PowerPC options:\n" +msgstr "Opciones SPARC:\n" + +#: config/tc-ppc.c:1337 +#, fuzzy, c-format +#| msgid " -KPIC generate PIC\n" +msgid "-a32 generate ELF32/XCOFF32\n" +msgstr " -KPIC genera PIC\n" + +#: config/tc-ppc.c:1340 +#, fuzzy, c-format +#| msgid " -KPIC generate PIC\n" +msgid "-a64 generate ELF64/XCOFF64\n" +msgstr " -KPIC genera PIC\n" + +#: config/tc-ppc.c:1342 +#, fuzzy, c-format +#| msgid " -w ignored\n" +msgid "-u ignored\n" +msgstr " -w se descarta\n" + +#: config/tc-ppc.c:1344 +#, c-format +msgid "-mpwrx, -mpwr2 generate code for POWER/2 (RIOS2)\n" +msgstr "" + +#: config/tc-ppc.c:1346 +#, fuzzy, c-format +#| msgid " -KPIC generate PIC\n" +msgid "-mpwr generate code for POWER (RIOS1)\n" +msgstr " -KPIC genera PIC\n" + +#: config/tc-ppc.c:1348 +#, fuzzy, c-format +#| msgid " -KPIC generate PIC\n" +msgid "-m601 generate code for PowerPC 601\n" +msgstr " -KPIC genera PIC\n" + +#: config/tc-ppc.c:1350 #, 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:1353 +#, fuzzy, c-format +#| msgid " -KPIC generate PIC\n" +msgid "-m403 generate code for PowerPC 403\n" +msgstr " -KPIC genera PIC\n" + +#: config/tc-ppc.c:1355 +#, fuzzy, c-format +#| msgid " -KPIC generate PIC\n" +msgid "-m405 generate code for PowerPC 405\n" +msgstr " -KPIC genera PIC\n" + +#: config/tc-ppc.c:1357 +#, fuzzy, c-format +#| msgid " -KPIC generate PIC\n" +msgid "-m440 generate code for PowerPC 440\n" +msgstr " -KPIC genera PIC\n" + +#: config/tc-ppc.c:1359 +#, fuzzy, c-format +#| msgid " -KPIC generate PIC\n" +msgid "-m464 generate code for PowerPC 464\n" +msgstr " -KPIC genera PIC\n" + +#: config/tc-ppc.c:1361 +#, fuzzy, c-format +#| msgid " -KPIC generate PIC\n" +msgid "-m476 generate code for PowerPC 476\n" +msgstr " -KPIC genera PIC\n" + +#: config/tc-ppc.c:1363 +#, c-format +msgid "" "-m7400, -m7410, -m7450, -m7455\n" " generate code for PowerPC 7400/7410/7450/7455\n" -"-m750cl generate code for PowerPC 750cl\n" -"-m821, -m850, -m860 generate code for PowerPC 821/850/860\n" -msgstr "" -"Opciones de PowerPC:\n" -"-a32 genera ELF32/XCOFF32\n" -"-a64 genera ELF64/XCOFF64\n" -"-u se descarta\n" -"-mpwrx, -mpwr2 genera código para POWER/2 (RIOS2)\n" -"-mpwr genera código para POWER (RIOS1)\n" -"-m601 genera código para PowerPC 601\n" -"-mppc, -mppc32, -m603, -m604\n" -" genera código para PowerPC 603/604\n" -"-m403 genera código para PowerPC 403\n" -"-m405 genera código para PowerPC 405\n" -"-m440 genera código para PowerPC 440\n" -"-m464 genera código para PowerPC 464\n" -"-m476 genera código para PowerPC 476\n" -"-m7400, -m7410, -m7450, -m7455\n" -" genera código para PowerPC 7400/7410/7450/7455\n" -"-m750cl genera código para PowerPC 750cl\n" -"-m821, -m850, -m860 genera código para PowerPC 821/850/860\n" +msgstr "" -#: config/tc-ppc.c:1345 +#: config/tc-ppc.c:1366 #, 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" +"-m750cl, -mgekko, -mbroadway\n" +" generate code for PowerPC 750cl/Gekko/Broadway\n" +msgstr "" + +#: config/tc-ppc.c:1369 +#, c-format +msgid "-m821, -m850, -m860 generate code for PowerPC 821/850/860\n" +msgstr "" + +#: config/tc-ppc.c:1371 +#, c-format +msgid "-mppc64, -m620 generate code for PowerPC 620/625/630\n" +msgstr "" + +#: config/tc-ppc.c:1373 +#, c-format +msgid "-mppc64bridge generate code for PowerPC 64, including bridge insns\n" +msgstr "" + +#: config/tc-ppc.c:1375 +#, fuzzy, c-format +#| msgid " -mbig-obj generate big object files\n" +msgid "-mbooke generate code for 32-bit PowerPC BookE\n" +msgstr " -mbig-obj genera ficheros objetos grandes\n" + +#: config/tc-ppc.c:1377 +#, fuzzy, c-format +#| msgid " -Z generate object file even after errors\n" +msgid "-ma2 generate code for A2 architecture\n" +msgstr " -Z generar fichero objeto par tras errores\n" + +#: config/tc-ppc.c:1379 +#, c-format +msgid "-mpower4, -mpwr4 generate code for Power4 architecture\n" +msgstr "" + +#: config/tc-ppc.c:1381 +#, fuzzy, c-format +#| msgid " -Z generate object file even after errors\n" +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" -"-mcell generate code for Cell Broadband Engine architecture\n" -"-mcom generate code for Power/PowerPC common instructions\n" -"-many generate code for any architecture (PWR/PWRX/PPC)\n" -msgstr "" -"-mppc64, -m620 genera código para PowerPC 620/625/630\n" -"-mppc64bridge genera código para PowerPC 64, incluyendo\n" -" instrucciones puente\n" -"-mbooke genera código para PowerPC BookE de 32-bit\n" -"-ma2 genera código para la arquitectura A2\n" -"-mpower4, -mpwr4 genera código para la arquitectura Power4\n" -"-mpower5, -mpwr5, -mpwr5x\n" -" genera código para la arquitectura Power5\n" -"-mpower6, -mpwr6 genera código para la arquitectura Power6\n" -"-mpower7, -mpwr7 genera código para la arquitectura Power7\n" -"-mpower8, -mpwr8 genera código para la arquitectura Power9\n" -"-mpower9, -mpwr9 genera código para la arquitectura Power9\n" -"-mcell genera código para la arquitectura Cell Broadband Engine\n" -"-mcom genera código de instrucciones comunes Power/PowerPC\n" -"-many genera código para cualquier arquitectura (PWR/PWRX/PPC)\n" +msgstr " -Z generar fichero objeto par tras errores\n" -#: config/tc-ppc.c:1360 +#: config/tc-ppc.c:1384 #, 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" -"-me500mc, generate code for Freescale e500mc core complex\n" -"-me500mc64, generate code for Freescale e500mc64 core complex\n" -"-me5500, generate code for Freescale e5500 core complex\n" -"-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" -"-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 "" -"-maltivec genera código para AltiVec\n" -"-mvsx genera código para instrucciones Vector-Escalar (VSX)\n" -"-me300 genera código para la familia PowerPC e300\n" -"-me500, -me500x2 genera código para el núcleo complejo Motorola e500\n" -"-me500mc, genera código para el núcleo complejo Freescale e500mc\n" -"-me500mc64, genera código para el núcleo complejo Freescale e500mc64\n" -"-mspe genera código para las instrucciones Motorola SPE\n" -"-mspe2 genera código para las instrucciones Freescale SPE2\n" -"-mvle genera código para las instrucciones Freescale VLE\n" -"-mtitan genera código para el núcleo complejo Titan AppliedMicro\n" -"-mregnames Permite nombres simbólicos para los registros\n" -"-mno-regnames No permite nombres simbólicos para los registros\n" - -#: config/tc-ppc.c:1376 +msgid "-mpower6, -mpwr6 generate code for Power6 architecture\n" +msgstr "" + +#: config/tc-ppc.c:1386 +#, c-format +msgid "-mpower7, -mpwr7 generate code for Power7 architecture\n" +msgstr "" + +#: config/tc-ppc.c:1388 +#, c-format +msgid "-mpower8, -mpwr8 generate code for Power8 architecture\n" +msgstr "" + +#: config/tc-ppc.c:1390 +#, c-format +msgid "-mpower9, -mpwr9 generate code for Power9 architecture\n" +msgstr "" + +#: config/tc-ppc.c:1392 #, c-format +msgid "-mpower10, -mpwr10 generate code for Power10 architecture\n" +msgstr "" + +#: config/tc-ppc.c:1394 +#, c-format +msgid "-mpower11, -mpwr11 generate code for Power11 architecture\n" +msgstr "" + +#: config/tc-ppc.c:1396 +#, fuzzy, c-format +#| msgid " -march=ARCH enable instructions from architecture ARCH\n" +msgid "-mlibresoc generate code for Libre-SOC architecture\n" +msgstr " -march=ARQ permite instrucciones para la arquitectura ARQ\n" + +#: config/tc-ppc.c:1398 +#, fuzzy, c-format +#| msgid " -Z generate object file even after errors\n" +msgid "-mfuture generate code for 'future' architecture\n" +msgstr " -Z generar fichero objeto par tras errores\n" + +#: config/tc-ppc.c:1400 +#, c-format +msgid "-mcell generate code for Cell Broadband Engine architecture\n" +msgstr "" + +#: config/tc-ppc.c:1402 +#, fuzzy, c-format +#| msgid " -matomic enable atomic operation instructions\n" +msgid "-mcom generate code for Power/PowerPC common instructions\n" +msgstr " -matomic permite instrucciones de operación atómica\n" + +#: config/tc-ppc.c:1404 +#, fuzzy, c-format +#| msgid " -Z generate object file even after errors\n" +msgid "-many generate code for any architecture (PWR/PWRX/PPC)\n" +msgstr " -Z generar fichero objeto par tras errores\n" + +#: config/tc-ppc.c:1406 +#, fuzzy, c-format +#| msgid " -mbig-obj generate big object files\n" +msgid "-maltivec generate code for AltiVec\n" +msgstr " -mbig-obj genera ficheros objetos grandes\n" + +#: config/tc-ppc.c:1408 +#, fuzzy, c-format +#| msgid " -m32r disable support for the m32rx instruction set\n" +msgid "-mvsx generate code for Vector-Scalar (VSX) instructions\n" +msgstr " -m32r desactivar apoyo para el conjunto de instrucciones m32rx\n" + +#: config/tc-ppc.c:1410 +#, fuzzy, c-format +#| msgid " -KPIC generate PIC\n" +msgid "-me300 generate code for PowerPC e300 family\n" +msgstr " -KPIC genera PIC\n" + +#: config/tc-ppc.c:1412 +#, c-format +msgid "-me500, -me500x2 generate code for Motorola e500 core complex\n" +msgstr "" + +#: config/tc-ppc.c:1414 +#, c-format +msgid "-me500mc, generate code for Freescale e500mc core complex\n" +msgstr "" + +#: config/tc-ppc.c:1416 +#, c-format +msgid "-me500mc64, generate code for Freescale e500mc64 core complex\n" +msgstr "" + +#: config/tc-ppc.c:1418 +#, c-format +msgid "-me5500, generate code for Freescale e5500 core complex\n" +msgstr "" + +#: config/tc-ppc.c:1420 +#, c-format +msgid "-me6500, generate code for Freescale e6500 core complex\n" +msgstr "" + +#: config/tc-ppc.c:1422 +#, fuzzy, c-format +#| msgid " -m32r disable support for the m32rx instruction set\n" +msgid "-mspe generate code for Motorola SPE instructions\n" +msgstr " -m32r desactivar apoyo para el conjunto de instrucciones m32rx\n" + +#: config/tc-ppc.c:1424 +#, fuzzy, c-format +#| msgid " -m32r disable support for the m32rx instruction set\n" +msgid "-mspe2 generate code for Freescale SPE2 instructions\n" +msgstr " -m32r desactivar apoyo para el conjunto de instrucciones m32rx\n" + +#: config/tc-ppc.c:1426 +#, fuzzy, c-format +#| msgid " -m32r disable support for the m32rx instruction set\n" +msgid "-mvle generate code for Freescale VLE instructions\n" +msgstr " -m32r desactivar apoyo para el conjunto de instrucciones m32rx\n" + +#: config/tc-ppc.c:1428 +#, c-format +msgid "-mtitan generate code for AppliedMicro Titan core complex\n" +msgstr "" + +#: config/tc-ppc.c:1430 +#, fuzzy, c-format +#| msgid " -mindex-reg support pseudo index registers\n" +msgid "-mregnames Allow symbolic names for registers\n" +msgstr " -mindex-reg admite registros de pseudo índice\n" + +#: config/tc-ppc.c:1432 +#, fuzzy, c-format +#| msgid " -mindex-reg support pseudo index registers\n" +msgid "-mno-regnames Do not allow symbolic names for registers\n" +msgstr " -mindex-reg admite registros de pseudo índice\n" + +#: config/tc-ppc.c:1435 +#, c-format +msgid "-mrelocatable support for GCC's -mrelocatble option\n" +msgstr "" + +#: config/tc-ppc.c:1437 +#, c-format +msgid "-mrelocatable-lib support for GCC's -mrelocatble-lib option\n" +msgstr "" + +#: config/tc-ppc.c:1439 +#, c-format +msgid "-memb set PPC_EMB bit in ELF flags\n" +msgstr "" + +#: config/tc-ppc.c:1441 +#, fuzzy, c-format +#| msgid " -mlittle-endian generate little-endian code\n" 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 " -mlittle-endian genera código little-endian\n" + +#: config/tc-ppc.c:1444 +#, fuzzy, c-format +#| msgid " -mbig-endian generate big-endian code\n" +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 "" -"-mrelocatable admite la opción -mrelocatble de GCC\n" -"-mrelocatable-lib admite la opción -mrelocatble-lib de GCC\n" -"-memb activa el bit PPC_EMB en las casillas ELF\n" -"-mlittle, -mlittle-endian, -le\n" -" genera código para una máquina little endian\n" -"-mbig, -mbig-endian, be\n" -" genera código para una máquina big endian\n" -"-msolaris genera código para Solaris\n" -"-mno-solaris no genera código para Solaris\n" -"-K PIC activa EF_PPC_RELOCATABLE_LIB en las casillas ELF\n" -"-V muestra el número de versión del ensamblador\n" -"-Qy, -Qn se descarta\n" +msgstr " -mbig-endian genera código big-endian\n" -#: config/tc-ppc.c:1390 +#: config/tc-ppc.c:1447 +#, fuzzy, c-format +#| msgid " -mbig-obj generate big object files\n" +msgid "-msolaris generate code for Solaris\n" +msgstr " -mbig-obj genera ficheros objetos grandes\n" + +#: config/tc-ppc.c:1449 +#, fuzzy, c-format +#| msgid " -mbig-obj generate big object files\n" +msgid "-mno-solaris do not generate code for Solaris\n" +msgstr " -mbig-obj genera ficheros objetos grandes\n" + +#: config/tc-ppc.c:1451 #, 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" +msgid "-K PIC set EF_PPC_RELOCATABLE_LIB in ELF flags\n" +msgstr "" + +#: config/tc-ppc.c:1453 +#, fuzzy, c-format +#| msgid " --version print assembler version number and exit\n" +msgid "-V print assembler version number\n" +msgstr " --version escribe el número de versión del ensamblador y termina\n" + +#: config/tc-ppc.c:1455 +#, fuzzy, c-format +#| msgid " -nocpp ignored\n" +msgid "-Qy, -Qn ignored\n" +msgstr " -nocpp se descarta\n" + +#: config/tc-ppc.c:1458 +#, fuzzy, 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" +msgid "-nops=count when aligning, more than COUNT nops uses a branch\n" msgstr "" "-nops=contador cuando alineando, más que CONTADOR nops utiliza\n" " una ramificación\n" "-ppc476-workarround avisa si emitiendo datos para secciones de código\n" -#: config/tc-ppc.c:1417 +#: config/tc-ppc.c:1460 +#, fuzzy, 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" +msgid "-ppc476-workaround warn if emitting data to code sections\n" +msgstr "" +"-nops=contador cuando alineando, más que CONTADOR nops utiliza\n" +" una ramificación\n" +"-ppc476-workarround avisa si emitiendo datos para secciones de código\n" + +#: config/tc-ppc.c:1490 #, c-format msgid "unknown default cpu = %s, os = %s" msgstr "desconoce cpu = %s predeterminada, os = %s" -#: config/tc-ppc.c:1445 -msgid "neither Power nor PowerPC opcodes were selected." -msgstr "ni Power ni PowerPC opcodes fueron seleccionados." - -#: config/tc-ppc.c:1505 +#: config/tc-ppc.c:1576 #, c-format msgid "mask trims opcode bits for %s" msgstr "mascarada recorta bits del código operacional para %s" -#: config/tc-ppc.c:1514 +#: config/tc-ppc.c:1586 #, c-format msgid "operand index error for %s" msgstr "error de índice de operando para %s" -#: config/tc-ppc.c:1530 +#: config/tc-ppc.c:1612 #, c-format msgid "operand %d overlap in %s" msgstr "operando %d sobreescribe en %s" -#: config/tc-ppc.c:1582 +#: config/tc-ppc.c:1621 +#, c-format +msgid "non-optional operand %d follows optional operand in %s" +msgstr "" + +#: config/tc-ppc.c:1687 #, c-format msgid "powerpc_operands[%d].bitm invalid" msgstr "powerpc_operands[%d].bitm inválido" -#: config/tc-ppc.c:1589 +#: config/tc-ppc.c:1694 #, c-format msgid "powerpc_operands[%d] duplicates powerpc_operands[%d]" msgstr "powerpc_operands[%d] duplica a powerpc_operands[%d]" -#: config/tc-ppc.c:1618 config/tc-ppc.c:1682 config/tc-ppc.c:1728 +#: config/tc-ppc.c:1722 config/tc-ppc.c:1775 config/tc-ppc.c:1817 +#: config/tc-ppc.c:1865 #, c-format msgid "major opcode is not sorted for %s" msgstr "el código operacional major no está ordenado para %s" -#: config/tc-ppc.c:1625 +#: config/tc-ppc.c:1728 #, c-format msgid "%s is enabled by vle flag" msgstr "%s está activada por marca vle" -#: config/tc-ppc.c:1632 +#: config/tc-ppc.c:1735 #, c-format msgid "%s not disabled by vle flag" msgstr "%s no desactivada por marca vle" -#: config/tc-ppc.c:1646 config/tc-ppc.c:1699 config/tc-ppc.c:1743 -#, c-format -msgid "duplicate instruction %s" -msgstr "instrucción duplicada %s" +#: config/tc-ppc.c:1841 +#, fuzzy, c-format +#| msgid "major opcode is not sorted for %s" +msgid "opcode is not sorted for %s" +msgstr "el código operacional major no está ordenado para %s" -#: config/tc-ppc.c:1767 +#: config/tc-ppc.c:2259 #, c-format -msgid "duplicate macro %s" -msgstr "macro duplicado %s" +msgid "symbol+offset@%s means symbol@%s+offset" +msgstr "" -#: config/tc-ppc.c:2149 -msgid "symbol+offset not supported for got tls" +#: config/tc-ppc.c:2279 +#, fuzzy, c-format +#| msgid "symbol+offset not supported for got tls" +msgid "symbol+offset@%s not supported" msgstr "no se admite símbolo+desplazamiento para got tls" -#: config/tc-ppc.c:2226 config/tc-ppc.c:3746 config/tc-ppc.c:7192 +#: config/tc-ppc.c:2358 config/tc-ppc.c:4223 config/tc-ppc.c:7693 msgid "data in executable section" msgstr "datos en sección ejecutable" -#: config/tc-ppc.c:2267 config/tc-ppc.c:5386 +#: config/tc-ppc.c:2399 msgid "expected comma after symbol-name: rest of line ignored." msgstr "esperaba una coma tras el nombre-símbolo: el resto de la línea descartado." -#: config/tc-ppc.c:2300 config/tc-ppc.c:5422 +#: config/tc-ppc.c:2432 #, c-format msgid "ignoring attempt to re-define symbol `%s'." msgstr "ignorando intento de redefinir símbolo «%s»." -#: config/tc-ppc.c:2308 +#: config/tc-ppc.c:2440 #, c-format msgid "length of .lcomm \"%s\" is already %ld. Not changed to %ld." msgstr "longitud de .lcomm «%s» ya es %ld. No modificado a %ld." -#: config/tc-ppc.c:2326 +#: config/tc-ppc.c:2458 msgid "common alignment not a power of 2" msgstr "la alineamiento común no es una potencia de 2" -#: config/tc-ppc.c:2368 +#: config/tc-ppc.c:2500 #, c-format msgid "expected comma after name `%s' in .localentry directive" msgstr "coma esperada tras nombre «%s» en directiva .localentry" -#: config/tc-ppc.c:2378 +#: config/tc-ppc.c:2510 msgid "missing expression in .localentry directive" msgstr "expresión ausente en directiva localentry" -#: config/tc-ppc.c:2392 +#: config/tc-ppc.c:2531 #, c-format msgid ".localentry expression for `%s' is not a valid power of 2" msgstr "la expresión .localentry para `%s' no es una potencia de 2 válida" -#: config/tc-ppc.c:2406 +#: config/tc-ppc.c:2548 #, c-format msgid ".localentry expression for `%s' does not evaluate to a constant" msgstr "expresión .localentry para `%s' no evalúa a una constante" -#: config/tc-ppc.c:2421 +#: config/tc-ppc.c:2563 #, fuzzy #| msgid "missing expression in .size directive" msgid "missing expression in .abiversion directive" msgstr "expresión ausente en directiva localentry" -#: config/tc-ppc.c:2430 +#: config/tc-ppc.c:2572 msgid ".abiversion expression does not evaluate to a constant" msgstr "expresión .abiversion no evalúa a una constante" -#: config/tc-ppc.c:2452 -msgid "unknown .gnu_attribute value" -msgstr "desconoce valor .gnu_attribute" - -#: config/tc-ppc.c:2504 +#: config/tc-ppc.c:2652 msgid "relocation cannot be done when using -mrelocatable" msgstr "relocation no puede ser hecho cuando utiliza -mrelocatable" -#: config/tc-ppc.c:2550 +#: config/tc-ppc.c:2698 msgid "TOC section size exceeds 64k" msgstr "TOC como sección excede 64k" -#: config/tc-ppc.c:2645 -#, c-format -msgid "syntax error: invalid toc specifier `%s'" -msgstr "error sintáctico: especificador de tabla de contenido (toc) «%s» inválido" - -#: config/tc-ppc.c:2659 +#: config/tc-ppc.c:3258 #, c-format -msgid "syntax error: expected `]', found `%c'" -msgstr "error sintáctico: se esperaba `]', se obtuvo `%c'" +msgid "%s howto doesn't match size/pcrel in gas" +msgstr "" -#: config/tc-ppc.c:2768 +#: config/tc-ppc.c:3337 #, c-format msgid "unrecognized opcode: `%s'" msgstr "código operacional no reconocido: «%s»" -#: config/tc-ppc.c:2959 -msgid "[tocv] symbol is not a toc symbol" -msgstr "el símbolo [tocv] no es un símbolo de tabla de contenido" - -#: config/tc-ppc.c:2970 -msgid "unimplemented toc32 expression modifier" -msgstr "modificador de expresión toc32 no implementada" - -#: config/tc-ppc.c:2975 -msgid "unimplemented toc64 expression modifier" -msgstr "modificador de expresión toc64 no implementada" - -#: config/tc-ppc.c:2979 +#. lmw, stmw, lswi, lswx, stswi, stswx +#: config/tc-ppc.c:3348 #, c-format -msgid "Unexpected return value [%d] from parse_toc_entry!\n" -msgstr "¡Valor de devolución inesperado [%d] de parse_toc_entry!\n" +msgid "`%s' invalid when little-endian" +msgstr "" -#: config/tc-ppc.c:3194 +#: config/tc-ppc.c:3690 #, c-format msgid "@tls may not be used with \"%s\" operands" msgstr "@tls quizá no está utiliada con «%s» operandos" -#: config/tc-ppc.c:3197 +#: config/tc-ppc.c:3693 msgid "@tls may only be used in last operand" -msgstr "@tls sólo se puede utilizar en el último operando" +msgstr "@tls solo se puede utilizar en el último operando" -#: config/tc-ppc.c:3327 +#: config/tc-ppc.c:3731 config/tc-ppc.c:3741 config/tc-ppc.c:3751 +#: config/tc-ppc.c:3766 +#, fuzzy, c-format +#| msgid "%s unsupported as instruction fixup" +msgid "%s unsupported on this instruction" +msgstr "%s no admitido como instrucción corregida" + +#: config/tc-ppc.c:3813 #, c-format msgid "assuming %s on symbol" msgstr "asumiendo %s en símbolo" -#: config/tc-ppc.c:3430 +#: config/tc-ppc.c:3936 msgid "unsupported relocation for DS offset field" msgstr "no se admite el tipo reubicado para el campo de desplazamiento DS" -#: config/tc-ppc.c:3472 +#: config/tc-ppc.c:3989 #, c-format -msgid "syntax error; end of line, expected `%c'" -msgstr "error sintáctico; fin de línea, se esperaba `%c'" +msgid "syntax error; found `%c', expected `%c'" +msgstr "error de sintaxis; se encontró `%c', se esperaba `%c'" -#: config/tc-ppc.c:3474 +#: config/tc-ppc.c:3994 #, c-format -msgid "syntax error; found `%c', expected `%c'" -msgstr "error sintáctico; se encontró `%c', se esperaba `%c'" +msgid "syntax error; end of line, expected `%c'" +msgstr "error de sintaxis; fin de línea, se esperaba `%c'" -#: config/tc-ppc.c:3544 config/tc-ppc.c:6505 -msgid "instruction address is not a multiple of 4" -msgstr "la instrucción direccional no es un múltiplo de 4" +#: config/tc-ppc.c:4059 config/tc-ppc.c:6863 +#, fuzzy, c-format +#| msgid "instruction address is not a multiple of 2" +msgid "instruction address is not a multiple of %d" +msgstr "la instrucción direccional no es un múltiplo de 2" -#: config/tc-ppc.c:3703 +#: config/tc-ppc.c:4180 msgid "bad .section directive: want a,e,v,w,x,M,S,G,T in string" -msgstr "directiva .section equivocada: se quiere en la cadena a,e,v,w,x,M,S,G,T" +msgstr "directiva .section incorrecta: se quiere en la cadena a,e,v,w,x,M,S,G,T" -#: config/tc-ppc.c:3783 +#: config/tc-ppc.c:4330 msgid "missing size" msgstr "ausente el tamaño" -#: config/tc-ppc.c:3792 +#: config/tc-ppc.c:4339 msgid "negative size" msgstr "tamaño negativo" -#: config/tc-ppc.c:3824 +#: config/tc-ppc.c:4366 +msgid "Unknown visibility field in .comm" +msgstr "" + +#: config/tc-ppc.c:4384 msgid "missing real symbol name" msgstr "ausente el nombre del símbolo real" -#: config/tc-ppc.c:3863 +#: config/tc-ppc.c:4423 msgid "attempt to redefine symbol" msgstr "se intenta redefinir el símbolo" -#: config/tc-ppc.c:4126 +#: config/tc-ppc.c:4732 #, c-format msgid "no known dwarf XCOFF section for flag 0x%08x\n" msgstr "no hay una sección XCOFF enana conocida para la opción 0x%08x\n" -#: config/tc-ppc.c:4139 +#: config/tc-ppc.c:4745 #, c-format msgid "label %s was not defined in this dwarf section" msgstr "la etiqueta %s no se definió en esta sección enana" -#: config/tc-ppc.c:4253 +#: config/tc-ppc.c:4859 msgid "the XCOFF file format does not support arbitrary sections" msgstr "el formato del fichero XCOFF no admite secciones arbitrarias" -#: config/tc-ppc.c:4324 +#: config/tc-ppc.c:4897 +msgid "Unknown visibility field in .extern" +msgstr "" + +#: config/tc-ppc.c:4934 +msgid "Unknown visibility field in .globl" +msgstr "" + +#: config/tc-ppc.c:4971 +msgid "Unknown visibility field in .weak" +msgstr "" + +#: config/tc-ppc.c:5022 msgid ".ref outside .csect" msgstr ".ref fuera de .csect" -#: config/tc-ppc.c:4345 config/tc-ppc.c:4545 +#: config/tc-ppc.c:5043 config/tc-ppc.c:5303 msgid "missing symbol name" msgstr "ausente el nombre del símbolo" -#: config/tc-ppc.c:4375 +#: config/tc-ppc.c:5073 msgid "missing rename string" msgstr "ausente la cadena para renombrar" -#: config/tc-ppc.c:4405 config/tc-ppc.c:4944 read.c:3536 +#: config/tc-ppc.c:5103 config/tc-ppc.c:5705 msgid "missing value" msgstr "ausente el valor" -#: config/tc-ppc.c:4423 +#: config/tc-ppc.c:5121 msgid "illegal .stabx expression; zero assumed" msgstr "expresión .stabx ilegal; se asume cero" -#: config/tc-ppc.c:4455 +#: config/tc-ppc.c:5153 msgid "missing class" msgstr "ausente la clase" -#: config/tc-ppc.c:4464 +#: config/tc-ppc.c:5162 msgid "missing type" msgstr "ausente el tipo" -#: config/tc-ppc.c:4491 +#: config/tc-ppc.c:5189 msgid ".stabx of storage class stsym must be within .bs/.es" msgstr ".stabx de la clase de almacenamiento stsym debe estar entre .bs/.es" -#: config/tc-ppc.c:4732 +#: config/tc-ppc.c:5493 msgid "nested .bs blocks" msgstr "bloques .bs anidados" -#: config/tc-ppc.c:4763 +#: config/tc-ppc.c:5524 msgid ".es without preceding .bs" msgstr ".es sin un .bs precedente" -#: config/tc-ppc.c:4936 +#: config/tc-ppc.c:5697 msgid "non-constant byte count" msgstr "contador no constante de byte" -#: config/tc-ppc.c:5010 +#: config/tc-ppc.c:5772 msgid ".tc not in .toc section" msgstr ".tc no está en la sección .toc" -#: config/tc-ppc.c:5028 +#: config/tc-ppc.c:5790 msgid ".tc with no label" msgstr ".tc sin etiqueta" -#: config/tc-ppc.c:5112 config/tc-s390.c:1953 +#: config/tc-ppc.c:5818 +#, fuzzy, c-format +#| msgid "this DS form not yet supported" +msgid ".tc with storage class %d not yet supported" +msgstr "aún no se admite esta forma DS" + +#: config/tc-ppc.c:5887 config/tc-s390.c:2187 msgid ".machine stack overflow" msgstr "desbordamiento de pila en .machine" -#: config/tc-ppc.c:5119 config/tc-s390.c:1964 +#: config/tc-ppc.c:5894 config/tc-s390.c:2198 msgid ".machine stack underflow" msgstr "desbordamiento por debajo de la pila en .machine" -#: config/tc-ppc.c:5126 config/tc-s390.c:1976 +#: config/tc-ppc.c:5936 config/tc-s390.c:2210 #, c-format msgid "invalid machine `%s'" msgstr "máquina no válida «%s»" -#: config/tc-ppc.c:5158 -msgid "no previous section to return to, ignored." -msgstr "ninguna sección anterior para devolver, descartada." - -#: config/tc-ppc.c:5431 -#, c-format -msgid "length of .comm \"%s\" is already %ld. Not changed to %ld." -msgstr "longitud de .comm «%s» ya es %ld. No modificado a %ld." - -#. Section Contents -#. unknown -#: config/tc-ppc.c:5559 -msgid "unsupported section attribute -- 'a'" -msgstr "atributo seccional no apoyado ~ 'a'" - -#: config/tc-ppc.c:5742 +#: config/tc-ppc.c:5981 msgid "bad symbol suffix" -msgstr "sufijo simbólico equivocado" +msgstr "sufijo de símbolo incorrecto" -#: config/tc-ppc.c:5835 +#: config/tc-ppc.c:6080 msgid "unrecognized symbol suffix" msgstr "símbolo sufijo no reconocido" -#: config/tc-ppc.c:5922 -msgid "two .function pseudo-ops with no intervening .ef" -msgstr "dos pseudo-operadores .function sin un .ef que intervenga" - -#: config/tc-ppc.c:5935 +#: config/tc-ppc.c:6168 msgid ".ef with no preceding .function" msgstr ".ef sin un .function precedente" -#: config/tc-ppc.c:6064 +#: config/tc-ppc.c:6307 #, c-format msgid "warning: symbol %s has no csect" msgstr "aviso: el símbolo %s no tiene csect" -#: config/tc-ppc.c:6326 +#: config/tc-ppc.c:6639 msgid "symbol in .toc does not match any .tc" msgstr "el símbolo en .toc no coincide con ningún .tc" -#: config/tc-ppc.c:6956 +#: config/tc-ppc.c:7395 #, c-format msgid "%s unsupported as instruction fixup" msgstr "%s no admitido como instrucción corregida" -#: config/tc-ppc.c:7030 +#: config/tc-ppc.c:7494 #, c-format msgid "unsupported relocation against %s" msgstr "no se admite la reubicación contra %s" -#: config/tc-ppc.c:7175 +#: config/tc-ppc.c:7656 +#, c-format +msgid "R_TLSML relocation doesn't target a TOC entry named \"_$TLSML\": %s" +msgstr "" + +#: config/tc-ppc.c:7676 #, c-format msgid "Gas failure, reloc value %d\n" msgstr "Fallo de gas, valor reubicado %d\n" +#: config/tc-pru.c:309 +msgid "expecting opcode string in self test mode" +msgstr "esperando cadena operacional de código en modo de prueba" + +#: config/tc-pru.c:311 +#, c-format +msgid "assembly 0x%08x, expected %s" +msgstr "ensambla 0x%08x, esperado %s" + +#: config/tc-pru.c:572 +#, c-format +msgid "immediate value 0x%x truncated to 0x%x" +msgstr "valor inmediato 0x%x truncado a 0x%x" + +#: config/tc-pru.c:598 +#, c-format +msgid "call target address 0x%08x out of range 0x%08x to 0x%08x" +msgstr "llama dirección destino 0x%08x fuera del límite 0x%08x a 0x%08x" + #: config/tc-pru.c:603 #, c-format msgid "quick branch offset %d out of range %d to %d" -msgstr "ramificación rápida de desplazamiento%d fuera de límite %d a %d" +msgstr "ramificación rápida de desplazamiento%d fuera de rango %d a %d" + +#: config/tc-pru.c:608 +#, c-format +msgid "%s offset %d out of range %d to %d" +msgstr "%s desplazamiento %d fuera de rango %d a %d" + +#: config/tc-pru.c:613 +#, c-format +msgid "immediate value %d out of range %d to %d" +msgstr "valor %d inmediato fuera de rango %d a %d" #: config/tc-pru.c:618 #, c-format msgid "immediate value %llu out of range %u to %lu" -msgstr "valor inmediato %llu fuera de límite desde %u hasta %lu" +msgstr "valor inmediato %llu fuera de rango desde %u hasta %lu" + +#: config/tc-pru.c:623 config/tc-pru.c:628 +#, c-format +msgid "immediate value %u out of range %u to %u" +msgstr "valor inmediato %u fuera de rango desde %u hasta %u" -#: config/tc-pru.c:698 +#: config/tc-pru.c:633 +msgid "overflow in immediate argument" +msgstr "sobredesbordamiento dentro de argumento inmediato" + +#: config/tc-pru.c:668 +msgid "cannot create 64-bit relocation" +msgstr "no puede crear datos reubicantes de 64-bit" + +#: config/tc-pru.c:697 msgid "unexpected PC relative expression" msgstr "expresión relativa PC inesperada" -#: 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:935 config/tc-pru.c:968 +#: config/tc-pru.c:862 +msgid "can't create relocation" +msgstr "no puede crear reubicación" + +#: config/tc-pru.c:938 config/tc-pru.c:971 #, c-format msgid "trailing garbage after expression: %s" msgstr "arrastrando basura tras expresión: %s" -#: config/tc-pru.c:940 +#: config/tc-pru.c:943 #, c-format msgid "expected expression, got %s" msgstr "expresión esperada, obtuvo %s" -#: config/tc-pru.c:973 +#: config/tc-pru.c:976 #, c-format msgid "expected constant expression, got %s" msgstr "expresión constante esperada, obtuvo %s" -#: config/tc-pru.c:1026 +#: 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 +#, c-format +msgid "unknown register %s" +msgstr "registro desconocido %s" + +#: config/tc-pru.c:1029 msgid "data transfer register cannot be halfword" msgstr "registro de transferencia de datos no puede ser mitad de palabra" -#: config/tc-pru.c:1045 +#: config/tc-pru.c:1048 msgid "destination register must be full-word" msgstr "registro destino debe ser palabra completa" -#: config/tc-pru.c:1077 +#: config/tc-pru.c:1080 #, c-format msgid "cannot use partial register %s for addressing" msgstr "no se puede utilizar registro %s parcial para direccionamiento" -#: config/tc-pru.c:1110 +#: config/tc-pru.c:1093 +#, fuzzy, c-format +#| msgid "value too large for 2-byte field" +msgid "value %lu is too large for a byte operand" +msgstr "valor demasiado grande para un campo de 2 bytes" + +#: config/tc-pru.c:1115 #, c-format msgid "loop count constant %ld is out of range [1..%d]" msgstr "conteo constante de bucle %ld está fuera del rango [1..%d]" -#: config/tc-pru.c:1209 config/tc-pru.c:1235 +#: config/tc-pru.c:1215 config/tc-pru.c:1241 #, c-format msgid "byte count constant %ld is out of range [1..%d]" msgstr "conteo byte constante %ld está fuera del rango [1..%d]" -#: config/tc-pru.c:1216 config/tc-pru.c:1242 +#: config/tc-pru.c:1222 config/tc-pru.c:1248 msgid "only r0 can be used as byte count register" msgstr "sóla r0 pueden ser utilizado como registro de conteo de byte" -#: config/tc-pru.c:1218 config/tc-pru.c:1244 +#: config/tc-pru.c:1224 config/tc-pru.c:1250 msgid "only r0.bX byte fields of r0 can be used as byte count" msgstr "" -#: config/tc-pru.c:1257 +#: config/tc-pru.c:1263 #, c-format msgid "invalid constant table offset %ld" msgstr "desplazamiento distribuido contante inválido %ld" -#: config/tc-pru.c:1268 +#: config/tc-pru.c:1274 #, c-format msgid "invalid WakeOnStatus %ld" msgstr "invalida WakeOnStatus %ld" -#: config/tc-pru.c:1279 +#: config/tc-pru.c:1285 #, c-format msgid "invalid XFR WideBus Address %ld" msgstr "invalida Dirección XFR WideBus %ld" -#: config/tc-pru.c:1537 +#: config/tc-pru.c:1318 config/tc-pru.c:1343 config/tc-pru.c:1363 +#, c-format +msgid "badly formed expression near %s" +msgstr "expresión incorrectamente formada cercana a %s" + +#: config/tc-pru.c:1389 +#, c-format +msgid "expecting %c near %s" +msgstr "esperando %c cerca de %s" + +#: config/tc-pru.c:1553 #, c-format msgid "" "PRU options:\n" @@ -14751,1116 +16999,1657 @@ msgid "" " -mno-link-relax don't generate relocations for linker relaxation.\n" msgstr "" -#: config/tc-pru.c:1831 +#. Unrecognised instruction - error. +#: config/tc-pru.c:1724 +#, c-format +msgid "unrecognised instruction %s" +msgstr "instrucción %s no reconocida" + +#: config/tc-pru.c:1781 +#, c-format +msgid "can't represent relocation type %s" +msgstr "no puede representar tipo %s reubicable" + +#: config/tc-pru.c:1827 #, c-format msgid "Label \"%s\" matches a CPU register name" msgstr "Etiqueta «%s» coincide un nombre de registro de CPU" -#: config/tc-riscv.c:422 +#: config/tc-riscv.c:237 #, c-format -msgid "internal error: can't hash `%s': %s" -msgstr "error interno: no se puede dispersar «%s»: %s" +msgid "unknown default privileged spec `%s' set by -mpriv-spec or --with-priv-spec" +msgstr "" -#: config/tc-riscv.c:503 +#. Still can not find the privileged spec class. +#: config/tc-riscv.c:259 #, c-format -msgid "internal: bad RISC-V opcode (mask error): %s %s" -msgstr "interno: código operacional RISC-V equivocado (error de máscara): %s %s" +msgid "unknown default privileged spec `%d.%d.%d' set by privileged elf attributes" +msgstr "" -#: config/tc-riscv.c:542 +#: config/tc-riscv.c:357 +msgid "the architecture string of -march and elf architecture attributes cannot be empty" +msgstr "" + +#: config/tc-riscv.c:920 config/tc-riscv.c:981 config/tc-riscv.c:1807 +#, fuzzy, c-format +#| msgid "internal: unhandled label %s" +msgid "internal: duplicate %s" +msgstr "interno: etiqueta %s sin manipular" + +#: config/tc-riscv.c:1167 +#, fuzzy, c-format +#| msgid "internal: bad RISC-V opcode (mask error): %s %s" +msgid "internal: bad RISC-V CSR class (0x%x)" +msgstr "interno: código operacional RISC-V incorrecto (error de máscara): %s %s" + +#: config/tc-riscv.c:1173 #, c-format -msgid "internal: bad RISC-V opcode (unknown operand type `C%c'): %s %s" -msgstr "interno: código operacional RISC-V equivocado (tipo de operando `C%c' desconocido): %s %s" +msgid "invalid CSR `%s', needs rv32i extension" +msgstr "" -#: config/tc-riscv.c:577 +#: config/tc-riscv.c:1175 #, c-format -msgid "internal: bad RISC-V opcode (unknown operand type `%c'): %s %s" -msgstr "interno: código operacional RISC-V equivocado (tipo desconocido de operando `%c'): %s %s" +msgid "invalid CSR `%s', needs `h' extension" +msgstr "" + +#: config/tc-riscv.c:1179 +#, c-format +msgid "invalid CSR `%s', needs `%s' extension" +msgstr "" -#: config/tc-riscv.c:585 +#: config/tc-riscv.c:1202 #, c-format -msgid "internal: bad RISC-V opcode (bits 0x%lx undefined): %s %s" -msgstr "interno: código operacional RISC-V equivocado (varios bit 0x%lx indefinidos): %s %s" +msgid "invalid CSR `%s' for the privileged spec `%s'" +msgstr "" + +#: config/tc-riscv.c:1452 +msgid "cannot find `}' for cm.push/cm.pop" +msgstr "" -#: config/tc-riscv.c:707 +#: config/tc-riscv.c:1488 #, c-format -msgid "Unsupported RISC-V relocation number %d" +msgid "internal: bad RISC-V opcode (mask error): %s %s" +msgstr "interno: código operacional RISC-V incorrecto (error de máscara): %s %s" + +#: config/tc-riscv.c:1767 +#, fuzzy, c-format +#| msgid "internal: bad RISC-V opcode (unknown operand type `%c'): %s %s" +msgid "internal: bad RISC-V opcode (unknown operand type `%s'): %s %s" +msgstr "interno: código operacional RISC-V incorrecto (tipo desconocido de operando `%c'): %s %s" + +#: config/tc-riscv.c:1776 +#, fuzzy, c-format +#| msgid "internal: bad RISC-V opcode (bits 0x%lx undefined): %s %s" +msgid "internal: bad RISC-V opcode (bits %#llx undefined or invalid): %s %s" +msgstr "interno: código operacional RISC-V incorrecto (varios bit 0x%lx indefinidos): %s %s" + +#: config/tc-riscv.c:1818 +#, fuzzy +#| msgid "Broken assembler. No assembly attempted." +msgid "internal: broken assembler. No assembly attempted" +msgstr "Ensamblador descompuesto. No se intentó ensamblar." + +#: config/tc-riscv.c:1993 +#, fuzzy, c-format +#| msgid "Unsupported RISC-V relocation number %d" +msgid "internal: unsupported RISC-V relocation number %d" msgstr "No admitido número de reubicación RISC-V %d" -#: config/tc-riscv.c:794 -msgid "internal error: invalid macro" +#: config/tc-riscv.c:2109 +#, fuzzy, c-format +#| msgid "internal error: invalid macro" +msgid "internal: invalid macro argument `%s'" msgstr "error interno: macro inválido" -#: config/tc-riscv.c:823 config/tc-riscv.c:890 +#: config/tc-riscv.c:2159 config/tc-riscv.c:2237 msgid "unsupported large constant" msgstr "no se admite la constante large" -#: config/tc-riscv.c:825 -#, c-format -msgid "Instruction %s requires absolute expression" +#: config/tc-riscv.c:2161 +#, fuzzy, c-format +#| msgid "unknown DSP `%s'" +msgid "unknown CSR `%s'" +msgstr "desconoce DSP `%s'" + +#: config/tc-riscv.c:2164 +#, fuzzy, c-format +#| msgid "Instruction %s requires absolute expression" +msgid "instruction %s requires absolute expression" msgstr "La instrucción %s requiere una expresión absoluta" -#: config/tc-riscv.c:1046 -#, c-format -msgid "Macro %s not implemented" +#: config/tc-riscv.c:2332 +msgid "must provide temp if destination overlaps mask" +msgstr "" + +#: config/tc-riscv.c:2425 +#, fuzzy, c-format +#| msgid "Macro %s not implemented" +msgid "internal: macro %s not implemented" msgstr "Macro %s no implementada" -#: config/tc-riscv.c:1471 -#, c-format -msgid "bad RVC field specifier 'C%c'\n" -msgstr "equivocación de especificador 'C%c' de campo RVC\n" +#: config/tc-riscv.c:2627 config/tc-riscv.c:2687 +#, fuzzy +#| msgid "multiple movx specifications" +msgid "multiple vsew constants" +msgstr "especificaciones movx múltiples" + +#: config/tc-riscv.c:2635 +#, fuzzy +#| msgid "invalid constant" +msgid "multiple vlmul constants" +msgstr "constante no válida" + +#: config/tc-riscv.c:2643 +#, fuzzy +#| msgid "invalid constant" +msgid "multiple vta constants" +msgstr "constante no válida" + +#: config/tc-riscv.c:2651 +#, fuzzy +#| msgid "invalid constant" +msgid "multiple vma constants" +msgstr "constante no válida" + +#: config/tc-riscv.c:2697 +#, fuzzy +#| msgid "shift must be constant" +msgid "multiple vlen constants" +msgstr "el desplazamiento debe ser constante" + +#: config/tc-riscv.c:2706 +#, fuzzy +#| msgid "multiple predicates on same line" +msgid "multiple vediv constants" +msgstr "predicados múltiples en la misma línea" + +#. Reset error message of the previous round. +#: config/tc-riscv.c:2872 +msgid "illegal operands" +msgstr "operandos ilegales" -#: config/tc-riscv.c:1494 config/tc-riscv.c:1505 +#: config/tc-riscv.c:2923 #, c-format -msgid "Improper shift amount (%lu)" +msgid "read-only CSR is written `%s'" +msgstr "" + +#: config/tc-riscv.c:2933 +#, fuzzy +#| msgid "illegal opcode %s for mcu %s" +msgid "illegal opcode for zve32x" +msgstr "código operacional %s ilegal para el mcu %s" + +#: config/tc-riscv.c:3185 +msgid "bad value for compressed funct6 field, value must be 0...63" +msgstr "" + +#: config/tc-riscv.c:3200 +msgid "bad value for compressed funct4 field, value must be 0...15" +msgstr "" + +#: config/tc-riscv.c:3215 +msgid "bad value for compressed funct3 field, value must be 0...7" +msgstr "" + +#: config/tc-riscv.c:3230 +msgid "bad value for compressed funct2 field, value must be 0...3" +msgstr "" + +#: config/tc-riscv.c:3323 +msgid "bad value for vsetivli immediate field, value must be 0..1023" +msgstr "" + +#: config/tc-riscv.c:3335 +msgid "bad value for vsetvli immediate field, value must be 0..2047" +msgstr "" + +#: config/tc-riscv.c:3348 +msgid "bad value for vector immediate field, value must be -16...15" +msgstr "" + +#: config/tc-riscv.c:3360 +msgid "bad value for vector immediate field, value must be 0...31" +msgstr "" + +#: config/tc-riscv.c:3372 +msgid "bad value for vector immediate field, value must be -15...16" +msgstr "" + +#: config/tc-riscv.c:3384 +msgid "bad value for vector immediate field, value must be 0...63" +msgstr "" + +#: config/tc-riscv.c:3447 config/tc-riscv.c:3458 +#, fuzzy, c-format +#| msgid "Improper shift amount (%lu)" +msgid "improper shift amount (%<PRIu64>)" msgstr "Cantidad de desplazamiento impropia (%lu)" -#: config/tc-riscv.c:1516 -#, c-format -msgid "Improper CSRxI immediate (%lu)" +#: config/tc-riscv.c:3469 +#, fuzzy, c-format +#| msgid "Improper CSRxI immediate (%lu)" +msgid "improper CSRxI immediate (%<PRIu64>)" msgstr "Inmediato CSRxI impropio (%lu)" -#: config/tc-riscv.c:1531 -#, c-format -msgid "Improper CSR address (%lu)" +#: config/tc-riscv.c:3486 +#, fuzzy, c-format +#| msgid "Improper CSR address (%lu)" +msgid "improper CSR address (%<PRIu64>)" msgstr "Dirección CSR impropia (%lu)" -#: config/tc-riscv.c:1688 +#: config/tc-riscv.c:3666 msgid "lui expression not in range 0..1048575" msgstr "expresión lui no en el límite 0..1048575" -#: config/tc-riscv.c:1716 -#, c-format -msgid "internal error: bad argument type %c" -msgstr "error interno: tipo de argumento equivocado %c" +#: config/tc-riscv.c:3699 +msgid "bad value for opcode field, value must be 0...127 and lower 2 bits must be 0x3" +msgstr "" -#: config/tc-riscv.c:1721 -msgid "illegal operands" -msgstr "operandos ilegales" +#: config/tc-riscv.c:3715 +msgid "bad value for opcode field, value must be 0...2" +msgstr "" -#: config/tc-riscv.c:2056 -#, c-format -msgid "internal error: bad CFA value #%d" -msgstr "error interno: valor CFA equivocado nº%d" +#: config/tc-riscv.c:3738 +msgid "bad value for funct7 field, value must be 0...127" +msgstr "" -#: config/tc-riscv.c:2137 -#, c-format -msgid "internal error: bad relocation #%d" -msgstr "error interno: reubicación equivocada nº%d" +#: config/tc-riscv.c:3753 +msgid "bad value for funct3 field, value must be 0...7" +msgstr "" -#: config/tc-riscv.c:2142 -msgid "unsupported symbol subtraction" -msgstr "sustracción simbólica no mantenida" +#: config/tc-riscv.c:3768 +msgid "bad value for funct2 field, value must be 0...3" +msgstr "" -#: config/tc-riscv.c:2238 -msgid ".option pop with no .option push" -msgstr "opción .option pop sin opción .option push" +#: config/tc-riscv.c:3786 +#, fuzzy, c-format +#| msgid "Improper CSRxI immediate (%lu)" +msgid "Improper bs immediate (%lu)" +msgstr "Inmediato CSRxI impropio (%lu)" -#: config/tc-riscv.c:2248 -#, c-format -msgid "Unrecognized .option directive: %s\n" -msgstr "No reconoció directiva .option: %s\n" +#: config/tc-riscv.c:3797 +#, fuzzy, c-format +#| msgid "Improper CSRxI immediate (%lu)" +msgid "Improper rnum immediate (%lu)" +msgstr "Inmediato CSRxI impropio (%lu)" -#: config/tc-riscv.c:2268 -#, c-format -msgid "Unsupported use of %s" -msgstr "No se admite el uso de %s" +#: config/tc-riscv.c:3829 +#, fuzzy, c-format +#| msgid "Improper position (%lu)" +msgid "improper prefetch offset (%ld)" +msgstr "Posición impropia (%lu)" + +#: config/tc-riscv.c:3857 +msgid "bad fli constant operand, supported constants must be in decimal or hexadecimal floating-point literal form" +msgstr "" + +#: config/tc-riscv.c:3988 +msgid "bad value for th.vsetvli immediate field, value must be 0..2047" +msgstr "" + +#: config/tc-riscv.c:3999 +#, fuzzy, c-format +#| msgid "Unexpected token `%s'" +msgid "unexpected literal (%s)" +msgstr "Elemento `%s' inesperado" + +#: config/tc-riscv.c:4021 +#, fuzzy, c-format +#| msgid "Improper CSRxI immediate (%lu)" +msgid "improper immediate value (%<PRIu64>)" +msgstr "Inmediato CSRxI impropio (%lu)" + +#: config/tc-riscv.c:4027 +#, fuzzy, c-format +#| msgid "Improper CSRxI immediate (%lu)" +msgid "improper immediate value (%<PRIi64>)" +msgstr "Inmediato CSRxI impropio (%lu)" -#: config/tc-riscv.c:2411 +#: config/tc-riscv.c:4142 #, c-format -msgid "cannot represent %s relocation in object file" -msgstr "no puede representar reubicación %s en fichero objeto" +msgid "bad value for <bit-%s-%s> field, value must be 0...%d" +msgstr "" + +#: config/tc-riscv.c:4188 +#, fuzzy, c-format +#| msgid "internal: unknown operand type: %s %s" +msgid "internal: unknown argument type `%s'" +msgstr "interno: tipo operando desconocido: %s %s" + +#: config/tc-riscv.c:4240 +#, fuzzy +#| msgid "alignment must be constant" +msgid "values must be constant" +msgstr "el alineamiento debe ser constante" + +#: config/tc-riscv.c:4247 +#, fuzzy +#| msgid "unrecognized flag" +msgid "unrecognized values" +msgstr "marca no reconocida" + +#: config/tc-riscv.c:4255 config/tc-riscv.c:4266 config/tc-riscv.c:4280 +#, fuzzy +#| msgid "Internal Error: bad instruction length" +msgid "value conflicts with instruction length" +msgstr "Error interno: longitud incorrecta de instrucción" -#: config/tc-riscv.c:2552 +#: config/tc-riscv.c:4820 +#, fuzzy +#| msgid "too many operands" +msgid "too many pcrel_hi" +msgstr "demasiados operandos" + +#: config/tc-riscv.c:4866 +#, fuzzy, c-format +#| msgid "internal error: bad relocation #%d" +msgid "internal: bad relocation #%d" +msgstr "error interno: reubicación incorrecta nº%d" + +#: config/tc-riscv.c:5369 #, c-format msgid "" "RISC-V options:\n" -" -fpic generate position-independent code\n" -" -fno-pic don't generate position-independent code (default)\n" -" -march=ISA set the RISC-V architecture\n" -" -mabi=ABI set the RISC-V ABI\n" +" -fpic or -fPIC generate position-independent code\n" +" -fno-pic don't generate position-independent code (default)\n" +" -march=ISA set the RISC-V architecture\n" +" -misa-spec=ISAspec set the RISC-V ISA spec (2.2, 20190608, 20191213)\n" +" -mpriv-spec=PRIVspec set the RISC-V privilege spec (1.10, 1.11, 1.12)\n" +" -mabi=ABI set the RISC-V ABI\n" +" -mrelax enable relax (default)\n" +" -mno-relax disable relax\n" +" -march-attr generate RISC-V arch attribute\n" +" -mno-arch-attr don't generate RISC-V arch attribute\n" +" -mcsr-check enable the csr ISA and privilege spec version checks\n" +" -mno-csr-check disable the csr ISA and privilege spec version checks (default)\n" +" -mbig-endian assemble for big-endian\n" +" -mlittle-endian assemble for little-endian\n" msgstr "" -"RISC-V con opciones:\n" -" -fpic generacódigo independente de posión\n" -" -fno-pic no genera código independiente de posición (predet.)\n" -" -march=ISA establece la arquitectura RISC-V\n" -" -mabi=ABI establece el ABI RISC-V\n" -#: config/tc-riscv.c:2579 +#: config/tc-riscv.c:5414 #, c-format msgid "unknown register `%s'" msgstr "registro desconocido «%s»" -#: config/tc-riscv.c:2600 -#, c-format -msgid "non-constant .%cleb128 is not supported" +#: config/tc-riscv.c:5449 +#, fuzzy +#| msgid "non-constant .%cleb128 is not supported" +msgid "non-constant .sleb128 is not supported" msgstr "no constante. %cleb128 no está apoyado" -#: config/tc-rl78.c:214 +#: config/tc-riscv.c:5451 +msgid ".uleb128 only supports constant or subtract expressions" +msgstr "" + +#: config/tc-riscv.c:5553 +#, fuzzy, c-format +#| msgid "internal: bad RISC-V opcode (mask error): %s %s" +msgid "internal: bad RISC-V privileged spec (%s)" +msgstr "interno: código operacional RISC-V incorrecto (error de máscara): %s %s" + +#: config/tc-riscv.c:5706 +#, fuzzy +#| msgid "\".option\" directive must appear before any instructions" +msgid "architecture elf attributes must set before any instructions" +msgstr "la directiva \".option\" debe aparecer antes de cualquier instrucción" + +#: config/tc-riscv.c:5724 +#, fuzzy +#| msgid "\".option\" directive must appear before any instructions" +msgid "privileged elf attributes must set before any instructions" +msgstr "la directiva \".option\" debe aparecer antes de cualquier instrucción" + +#: config/tc-riscv.c:5746 +#, fuzzy +#| msgid "Missing symbol name in directive" +msgid "missing symbol name for .variant_cc directive" +msgstr "Ausente nombre de símbolo en la directiva" + +#: config/tc-rl78.c:213 msgid "16-bit relocation used in 8-bit operand" msgstr "la reubicación de 16-bit utilizada en operando de 8-bit" -#: config/tc-rl78.c:218 +#: config/tc-rl78.c:217 msgid "8-bit relocation used in 16-bit operand" msgstr "utilizaba reubicación de 8-bit en operando 16-bit" -#: config/tc-rl78.c:244 config/tc-rx.c:882 +#: config/tc-rl78.c:243 config/tc-rx.c:875 #, c-format msgid "Value %d doesn't fit in unsigned %d-bit field" msgstr "El valor %d no cabe en el campo de %d bit sin signo" -#: config/tc-rl78.c:250 config/tc-rx.c:888 +#: config/tc-rl78.c:249 config/tc-rx.c:881 #, c-format msgid "Value %d doesn't fit in signed %d-bit field" msgstr "El valor %d no cabe en el campo de %d bit con signo" -#: config/tc-rl78.c:368 +#: config/tc-rl78.c:367 #, c-format msgid " RL78 specific command line options:\n" msgstr " Opciones de línea de mandatos específicas de RL78:\n" -#: config/tc-rl78.c:369 +#: config/tc-rl78.c:368 #, c-format msgid " --mrelax Enable link time relaxation\n" msgstr " -mrelax Activa relajación temporal enlazada\n" -#: config/tc-rl78.c:370 +#: config/tc-rl78.c:369 #, c-format msgid " --mg10 Enable support for G10 variant\n" msgstr " --mg10 Activa compatibilidad para variante G10\n" -#: config/tc-rl78.c:371 +#: config/tc-rl78.c:370 #, c-format msgid " --mg13 Selects the G13 core.\n" msgstr " --mg13 Selecciona el core G13.\n" -#: config/tc-rl78.c:372 +#: config/tc-rl78.c:371 #, c-format msgid " --mg14 Selects the G14 core [default]\n" msgstr " --mg14 Selecciona el núcleo G14 [predet.]\n" -#: config/tc-rl78.c:373 +#: config/tc-rl78.c:372 #, c-format msgid " --mrl78 Alias for --mg14\n" msgstr " --mrl78 Alias para --mg14\n" -#: config/tc-rl78.c:374 +#: config/tc-rl78.c:373 #, c-format msgid " --m32bit-doubles [default]\n" msgstr " --m32bit-doubles [predet.]\n" -#: config/tc-rl78.c:375 +#: config/tc-rl78.c:374 #, c-format msgid " --m64bit-doubles Source code uses 64-bit doubles\n" msgstr " --m64bit-doubles Código fuente utiliza dobles de 64-bit\n" -#: config/tc-rl78.c:451 +#: config/tc-rl78.c:439 #, c-format msgid "%%%s() must be outermost term in expression" msgstr "%%%s() debe ser término como mucho en expresión" -#: config/tc-rl78.c:679 config/tc-rx.c:2220 +#: config/tc-rl78.c:667 config/tc-rx.c:2242 #, c-format msgid "unsupported constant size %d\n" msgstr "no se admite el tamaño de constante %d\n" -#: config/tc-rl78.c:695 +#: config/tc-rl78.c:683 #, c-format msgid "%%hi16/%%lo16 only applies to .short or .hword" msgstr "" -#: config/tc-rl78.c:705 +#: config/tc-rl78.c:693 #, c-format msgid "%%hi8 only applies to .byte" msgstr "%%hi8 solo aplica a .byte" -#: config/tc-rl78.c:717 config/tc-rx.c:2227 +#: config/tc-rl78.c:705 config/tc-rx.c:2249 msgid "difference of two symbols only supported with .long, .short, or .byte" -msgstr "sólo se admite la diferencia de dos símbolos con .long .short o .byte" +msgstr "solo se admite la diferencia de dos símbolos con .long .short o .byte" -#: config/tc-rl78.c:1239 config/tc-rx.c:2154 +#: config/tc-rl78.c:1226 config/tc-rx.c:2176 #, c-format msgid "bad frag at %p : fix %ld addr %ld %ld \n" -msgstr "fragmento equivocado en %p: fix %ld dir %ld %ld \n" +msgstr "fragmento incorrecto en %p: fix %ld dir %ld %ld \n" -#: config/tc-rl78.c:1455 +#: config/tc-rl78.c:1442 #, c-format msgid "value of %ld too large for 8-bit branch" msgstr "valor %ld es demasiado grande para la ramificación de 8-bit relativa al PC" -#: config/tc-rl78.c:1466 +#: config/tc-rl78.c:1453 #, c-format msgid "value of %ld too large for 16-bit branch" msgstr "valor de %ld es muy grande para ramificar 16-bit" -#: config/tc-rl78.c:1515 config/tc-rx.c:2419 +#: config/tc-rl78.c:1502 config/tc-rx.c:2441 #, c-format msgid "Unknown reloc in md_apply_fix: %s" msgstr "Reubicación desconocida en md_apply_fix: %s" -#: config/tc-rx.c:190 +#: config/tc-rx.c:194 #, c-format msgid "unrecognised RX CPU type %s" msgstr "no reconocido el tipo de CPU RX %s" -#: config/tc-rx.c:205 +#: config/tc-rx.c:209 #, c-format msgid " RX specific command line options:\n" msgstr " Opciones de línea de mandatos específicas de RX:\n" -#: config/tc-rx.c:206 +#: config/tc-rx.c:210 #, c-format msgid " --mbig-endian-data\n" msgstr " --mbig-endian-data\n" -#: config/tc-rx.c:207 +#: config/tc-rx.c:211 #, c-format msgid " --mlittle-endian-data [default]\n" msgstr " --mlittle-endian-data [por defecto]\n" -#: config/tc-rx.c:208 +#: config/tc-rx.c:212 #, c-format msgid " --m32bit-doubles [default]\n" msgstr " --m32bit-doubles [por defecto]\n" -#: config/tc-rx.c:209 +#: config/tc-rx.c:213 #, c-format msgid " --m64bit-doubles\n" msgstr " --m64bit-doubles\n" -#: config/tc-rx.c:210 +#: config/tc-rx.c:214 #, c-format msgid " --muse-conventional-section-names\n" msgstr " --muse-conventional-section-names\n" -#: config/tc-rx.c:211 +#: config/tc-rx.c:215 #, c-format msgid " --muse-renesas-section-names [default]\n" msgstr " --muse-renesas-section-names [por defecto]\n" -#: config/tc-rx.c:212 +#: config/tc-rx.c:216 #, c-format msgid " --msmall-data-limit\n" msgstr " --msmall-data-limit\n" -#: config/tc-rx.c:213 +#: config/tc-rx.c:217 #, c-format msgid " --mrelax\n" msgstr " --mrelax\n" -#: config/tc-rx.c:214 +#: config/tc-rx.c:218 #, c-format msgid " --mpid\n" msgstr " --mpid\n" -#: config/tc-rx.c:215 +#: config/tc-rx.c:219 #, c-format msgid " --mint-register=<value>\n" msgstr " --mint-register=<valor>\n" -#: config/tc-rx.c:216 -#, c-format -msgid " --mcpu=<rx100|rx200|rx600|rx610|rxv2>\n" +#: config/tc-rx.c:220 +#, fuzzy, c-format +#| msgid " --mcpu=<rx100|rx200|rx600|rx610|rxv2>\n" +msgid " --mcpu=<rx100|rx200|rx600|rx610|rxv2|rxv3|rxv3-dfpu>\n" msgstr " --mcpu=<rx100|rx200|rx600|rx610|rxv2>\n" -#: config/tc-rx.c:217 +#: config/tc-rx.c:221 #, c-format msgid " --mno-allow-string-insns" msgstr " --mno-allow-string-insns" -#: config/tc-rx.c:297 +#: config/tc-rx.c:291 msgid "no filename following .INCLUDE pseudo-op" msgstr "no hay un nombre de fichero a continuación del pseudo-operador .INCLUDE" -#: config/tc-rx.c:400 +#: config/tc-rx.c:392 #, c-format msgid "unable to locate include file: %s" msgstr "no se puede localizar el fichero de inclusión: %s" -#: config/tc-rx.c:451 +#: config/tc-rx.c:443 #, c-format msgid "unrecognised alignment value in .SECTION directive: %s" msgstr "no reconocido el valor de alineamiento en la directiva .SECTION: %s" -#: config/tc-rx.c:468 +#: config/tc-rx.c:460 #, c-format msgid "unknown parameter following .SECTION directive: %s" msgstr "parámetro desconocido a continuación de la directiva .SECTION: %s" -#: config/tc-rx.c:554 +#: config/tc-rx.c:546 msgid "expecting either ON or OFF after .list" msgstr "se espera ON u OFF tras .list" -#: config/tc-rx.c:590 +#: config/tc-rx.c:582 #, c-format msgid "The \".%s\" pseudo-op is not implemented\n" msgstr "No se admite el pseudo-operador \".%s\"\n" -#: config/tc-rx.c:1095 +#: config/tc-rx.c:954 config/tc-rx.c:956 +#, fuzzy, c-format +#| msgid "value %ld out of range" +msgid "Value %d and %d out of range" +msgstr "valora %ld fuera de rango" + +#: config/tc-rx.c:1111 msgid "The .DEFINE pseudo-op is not implemented" msgstr "No se admite el pseudo-operador .DEFINE" -#: config/tc-rx.c:1097 +#: config/tc-rx.c:1113 msgid "The .MACRO pseudo-op is not implemented" msgstr "No se admite el pseudo-operador .MACRO" -#: config/tc-rx.c:1099 +#: config/tc-rx.c:1115 msgid "The .BTEQU pseudo-op is not implemented." msgstr "El pseudo-op .BTEQU no está implementado." -#: config/tc-rx.c:2084 +#: config/tc-rx.c:2107 msgid "invalid immediate size" msgstr "tamaño inmediato inválido" -#: config/tc-rx.c:2103 +#: config/tc-rx.c:2126 msgid "invalid immediate field position" msgstr "posición de campo inmediato no válida" -#: config/tc-rx.c:2271 +#: config/tc-rx.c:2293 #, c-format msgid "jump not 3..10 bytes away (is %d)" msgstr "omisión no está a 3..10 bytes (es %d)" -#: config/tc-rx.c:2662 +#: config/tc-rx.c:2684 msgid "Use of an RX string instruction detected in a file being assembled without string instruction support" msgstr "" -#: config/tc-s390.c:238 config/tc-sparc.c:318 +#: config/tc-s12z.c:146 +#, fuzzy +#| msgid "FT32 options:\n" +msgid "" +"\n" +"s12z options:\n" +msgstr "Opciones FT32:\n" + +#: config/tc-s12z.c:147 +msgid " -mreg-prefix=PREFIX set a prefix used to indicate register names (default none)\n" +msgstr "" + +#: config/tc-s12z.c:148 +msgid " -mdollar-hex the prefix '$' instead of '0x' is used to indicate literal hexadecimal constants\n" +msgstr "" + +#: config/tc-s12z.c:315 +#, fuzzy +#| msgid "non-constant expression in \".if\" statement" +msgid "A non-constant expression is not permitted here" +msgstr "expresión en declaración \".if\" no constante" + +#: config/tc-s12z.c:432 +#, fuzzy, c-format +#| msgid "expecting {" +msgid "Expecting '%c'" +msgstr "esperando {" + +#: config/tc-s12z.c:455 +#, fuzzy +#| msgid ": Immediate value in cbcond is out of range." +msgid "An immediate value in a source operand is inappropriate" +msgstr ": Valor inmediato dentro de ‘cbcond’ está fuera de rango." + +#: config/tc-s12z.c:504 config/tc-s12z.c:605 +#, fuzzy +#| msgid "invalid operands for cross-unit op" +msgid "Bad operand for constant offset" +msgstr "operandos inválidos para op de unidades cruzadas" + +#: config/tc-s12z.c:532 config/tc-s12z.c:623 +#, fuzzy +#| msgid "invalid base register for register offset" +msgid "Invalid operand for register offset" +msgstr "registro base inválido para el desplazamiento del registro" + +#: config/tc-s12z.c:638 +#, fuzzy +#| msgid "Invalid register for post/pre increment." +msgid "Invalid register for postdecrement operation" +msgstr "Registro inválido para post/pre incremento." + +#: config/tc-s12z.c:674 +#, fuzzy +#| msgid "Invalid register for post/pre increment." +msgid "Invalid register for preincrement operation" +msgstr "Registro inválido para post/pre incremento." + +#: config/tc-s12z.c:692 +#, fuzzy +#| msgid "Invalid register for post/pre increment." +msgid "Invalid register for predecrement operation" +msgstr "Registro inválido para post/pre incremento." + +#: config/tc-s12z.c:811 +#, fuzzy +#| msgid "Garbage at end of instruction: `%s'." +msgid "Garbage at end of instruction" +msgstr "Basura al final de la instrucción: «%s»." + +#: config/tc-s12z.c:940 +#, fuzzy +#| msgid "Offset out of 16-bit range: %ld." +msgid "Offset is outside of 15 bit range" +msgstr "Desplazamiento fuera del límite de 16-bit: %ld." + +#: config/tc-s12z.c:1056 +msgid "Bad size" +msgstr "" + +#: config/tc-s12z.c:1101 config/tc-s12z.c:1161 config/tc-s12z.c:1223 +#: config/tc-s12z.c:1288 +msgid "BAD MUL" +msgstr "" + +#: config/tc-s12z.c:1428 +#, fuzzy, c-format +#| msgid "Use of r%u as a source register is deprecated when r%u is the destination register." +msgid "Source register for %s is no larger than the destination register" +msgstr "Utilización de r%u como registro origen es obsoleto cuando r%u es el registro destino." + +#: config/tc-s12z.c:1431 +#, fuzzy +#| msgid "invalid source register list" +msgid "The destination and source registers are identical" +msgstr "invalida listado registrador origen" + +#: config/tc-s12z.c:1455 +#, fuzzy, c-format +#| msgid "operand value out of range for instruction" +msgid "Immediate value %ld is out of range for instruction %s" +msgstr "el valor de operando está fuera de rango para la instrucción" + +#: config/tc-s12z.c:1526 +#, fuzzy, c-format +#| msgid "Direct value of %ld is not suitable" +msgid "trap value %ld is not valid" +msgstr "El valor directo de %ld no es adecuado" + +#: config/tc-s12z.c:1966 +#, fuzzy +#| msgid "immediate value out of range, expected range [0, 16]" +msgid "Shift value should be in the range [0,31]" +msgstr "valor inmediato fuera de rango, se esperaba el límite [0, 16]" + +#: config/tc-s12z.c:2013 +#, fuzzy +#| msgid "invalid shift operator" +msgid "Bad shift mode" +msgstr "invalida operador desplazado" + +#: config/tc-s12z.c:2026 +#, fuzzy +#| msgid "Bad .mask directive" +msgid "Bad shift *direction" +msgstr "Directiva .mask incorrecta" + +#: config/tc-s12z.c:2284 +#, fuzzy, c-format +#| msgid "Immediate operand is not allowed for operand %d." +msgid "Immediate operand %ld is inappropriate for size of instruction" +msgstr "No se permite un operando inmediato para el operando %d." + +#: config/tc-s12z.c:2375 config/tc-s12z.c:2444 config/tc-s12z.c:2512 +#, fuzzy, c-format +#| msgid "Invalid register value %s" +msgid "Invalid width value for %s" +msgstr "Valor de registro %s inválido" + +#: config/tc-s12z.c:2388 config/tc-s12z.c:2457 config/tc-s12z.c:2525 +#, fuzzy, c-format +#| msgid "Invalid register value %s" +msgid "Invalid offset value for %s" +msgstr "Valor de registro %s inválido" + +#: config/tc-s12z.c:3822 +#, fuzzy, c-format +#| msgid "Invalid instruction %s" +msgid "Invalid instruction: \"%s\"" +msgstr "Instrucción %s no válida" + +#: config/tc-s12z.c:3823 +#, fuzzy, c-format +#| msgid "invalid segment \"%s\"" +msgid "First invalid token: \"%s\"" +msgstr "segmento no válido «%s»" + +#: config/tc-s390.c:280 config/tc-sparc.c:310 msgid "Invalid default architecture, broken assembler." msgstr "Arquitectura por defecto no válida, ensamblador descompuesto." -#: config/tc-s390.c:373 +#: config/tc-s390.c:426 #, c-format msgid "no such machine extension `%s'" msgstr "no como extensión de máquina «%s»" -#: config/tc-s390.c:384 +#: config/tc-s390.c:437 #, c-format msgid "junk at end of machine string, first unrecognized character is `%c'" msgstr "basura al final de la línea de máquina; el primer carácter inreconocible es «%c»" -#: config/tc-s390.c:451 config/tc-sparc.c:531 +#: config/tc-s390.c:512 config/tc-sparc.c:489 #, c-format msgid "invalid architecture -A%s" msgstr "arquitectura no válida -A%s" -#: config/tc-s390.c:474 +#: config/tc-s390.c:535 #, c-format msgid "" -" S390 options:\n" -" -mregnames Allow symbolic names for registers\n" -" -mwarn-areg-zero Warn about zero base/index registers\n" -" -mno-regnames Do not allow symbolic names for registers\n" -" -m31 Set file format to 31 bit format\n" -" -m64 Set file format to 64 bit format\n" -msgstr "" -" Opciones de S390:\n" -" -mregnames Permite nombres simbólicos para los registros\n" -" -mwarn-areg-zero Avisa sobre registros con base/índice cero\n" -" -mno-regnames No permite nombres símbólicos para los registros\n" -" -m31 Establece el formato del fichero al formato 31 bit\n" -" -m64 Establece el formato del fichero al formato 64 bit\n" - -#: config/tc-s390.c:481 -#, c-format +"S390 options:\n" +" -m31 generate 31-bit file format (31/32 bit word size)\n" +" -m64 generate 64-bit file format (64 bit word size)\n" +" -mesa assemble for Enterprise System Architecture/390\n" +" -mzarch assemble for z/Architecture\n" +" -march=<processor> assemble for processor <processor>\n" +" -mregnames allow symbolic names for registers\n" +" -mno-regnames do not allow symbolic names for registers\n" +" -mwarn-areg-zero warn about base/index register zero\n" +" -mwarn-regtype-mismatch=strict\n" +" warn about register name type mismatches\n" +" -mwarn-regtype-mismatch=relaxed\n" +" warn about register name type mismatches,\n" +" but allow FPR and VR to be used interchangeably\n" +" -mno-warn-regtype-mismatch\n" +" do not warn about register name type mismatches\n" +msgstr "" + +#: config/tc-s390.c:553 +#, fuzzy, c-format +#| msgid "" +#| " -V print assembler version number\n" +#| " -Qy, -Qn ignored\n" msgid "" -" -V print assembler version number\n" -" -Qy, -Qn ignored\n" +" -V print assembler version number\n" +" -Qy, -Qn ignored\n" msgstr "" " -V muestra el número de versión del ensamblador\n" " -Qy, -Qn se descarta\n" -#: config/tc-s390.c:565 -msgid "The 64 bit file format is used without esame instructions." +#: config/tc-s390.c:556 +#, c-format +msgid "" +"Deprecated S390 options:\n" +" -Aesa assemble for processor IBM S/390 G5 (g5/arch3)\n" +" -Aesame assemble for processor IBM zSeries 900 (z900/arch5)\n" +msgstr "" + +#: config/tc-s390.c:635 +#, fuzzy +#| msgid "The 64 bit file format is used without esame instructions." +msgid "The 64-bit file format is used without z/Architecture instructions." msgstr "Se usa el formato de fichero de 64 bit sin instrucciones esame." -#: config/tc-s390.c:581 -#, c-format -msgid "Internal assembler error for instruction format %s" -msgstr "Error interno del ensamblador para el formato de instrucción %s" +#. xgettext:c-format. +#: config/tc-s390.c:681 +#, fuzzy, c-format +#| msgid "operand out of range (%d is not between %d and %d)" +msgid "operand %d: operand out of range (%<PRId64> is not between %<PRId64> and %<PRId64>)" +msgstr "operando fuera de rango (%d no está entre %d y %d)" -#: config/tc-s390.c:627 -#, c-format -msgid "operand out of range (%s not between %ld and %ld)" -msgstr "operando fuera de límite (%s no está entre %ld y %ld)" +#. xgettext:c-format. +#: config/tc-s390.c:693 +#, fuzzy, c-format +#| msgid "operand out of range (%d is not between %d and %d)" +msgid "operand out of range (%<PRId64> is not between %<PRId64> and %<PRId64>)" +msgstr "operando fuera de rango (%d no está entre %d y %d)" -#: config/tc-s390.c:852 +#: config/tc-s390.c:947 #, c-format msgid "identifier+constant@%s means identifier@%s+constant" msgstr "identificador+constante@%s significa identificador@%s+constante" -#: config/tc-s390.c:933 +#: config/tc-s390.c:1028 msgid "Can't handle O_big in s390_exp_compare" msgstr "No se puede manipular O_big en s390_exp_compare" -#: config/tc-s390.c:1015 +#: config/tc-s390.c:1110 msgid "Invalid suffix for literal pool entry" msgstr "Sufijo inválido para la entrada de conjunto de literales" -#: config/tc-s390.c:1072 +#: config/tc-s390.c:1167 msgid "Big number is too big" msgstr "El número grande es demasiado grande" -#: config/tc-s390.c:1221 +#: config/tc-s390.c:1316 msgid "relocation not applicable" msgstr "la reubicación no es aplicable" +#: config/tc-s390.c:1331 +#, fuzzy +#| msgid "# bars register" +msgid "base register" +msgstr "# prohibe el registro" + #: config/tc-s390.c:1333 -msgid "invalid length field specified" -msgstr "longitud especificada de campo no válida" +#, fuzzy +#| msgid "Wrong displacement %d" +msgid "displacement" +msgstr "Desplazamiento incorrecto %d" #: config/tc-s390.c:1337 -msgid "index register specified but zero" +#, fuzzy +#| msgid "unsupported vector index register" +msgid "vector index register" +msgstr "no se admite el registro de índice de vector" + +#: config/tc-s390.c:1339 +#, fuzzy +#| msgid "invalid register" +msgid "index register" +msgstr "invalida registro" + +#: config/tc-s390.c:1342 +msgid "length" +msgstr "" + +#: config/tc-s390.c:1344 config/tc-s390.c:1539 +#, fuzzy +#| msgid "# bars register" +msgid "access register" +msgstr "# prohibe el registro" + +#: config/tc-s390.c:1346 config/tc-s390.c:1542 +#, fuzzy +#| msgid "expecting control register" +msgid "control register" +msgstr "esperando registro de control" + +#: config/tc-s390.c:1348 config/tc-s390.c:1547 +#, fuzzy +#| msgid "floating-point expression required" +msgid "floating-point register" +msgstr "requerida expresión de coma flotante" + +#: config/tc-s390.c:1350 +#, fuzzy +#| msgid "invalid source register" +msgid "general-purpose register" +msgstr "invalida registro fuente" + +#: config/tc-s390.c:1352 config/tc-s390.c:1555 +#, fuzzy +#| msgid "vector register expected" +msgid "vector register" +msgstr "vector registrador esperado" + +#: config/tc-s390.c:1356 +#, fuzzy +#| msgid "invalid number" +msgid "signed number" +msgstr "número inválido" + +#: config/tc-s390.c:1358 +#, fuzzy +#| msgid "unassigned file number %ld" +msgid "unsigned number" +msgstr "número de fichero %ld sin asignar" + +#: config/tc-s390.c:1479 +#, fuzzy, c-format +#| msgid "illegal operand" +msgid "operand %d: illegal operand" +msgstr "operando ilegal" + +#: config/tc-s390.c:1484 +#, fuzzy, c-format +#| msgid "missing operand" +msgid "operand %d: missing %s operand" +msgstr "ausente operando" + +#: config/tc-s390.c:1496 config/tc-s390.c:1660 +#, fuzzy, c-format +#| msgid ":operand has too many bits" +msgid "operand %d: too many fixups" +msgstr ":operand tiene demasiadas bits" + +#: config/tc-s390.c:1506 +#, fuzzy, c-format +#| msgid "invalid length field specified" +msgid "operand %d: invalid length field specified" +msgstr "longitud especificada de campo no válida" + +#: config/tc-s390.c:1511 +#, fuzzy, c-format +#| msgid "index register specified but zero" +msgid "operand %d: index register specified but zero" msgstr "se especificó el registro índice pero es cero" -#: config/tc-s390.c:1341 -msgid "base register specified but zero" +#: config/tc-s390.c:1516 +#, fuzzy, c-format +#| msgid "base register specified but zero" +msgid "operand %d: base register specified but zero" msgstr "se especificó el registro base pero es cero" -#: config/tc-s390.c:1345 -msgid "odd numbered general purpose register specified as register pair" +#: config/tc-s390.c:1521 +#, fuzzy, c-format +#| msgid "odd numbered general purpose register specified as register pair" +msgid "operand %d: odd numbered general purpose register specified as register pair" msgstr "se especificaron registros de propósito general numerados impares como par de registro" -#: config/tc-s390.c:1353 -msgid "invalid floating point register pair. Valid fp register pair operands are 0, 1, 4, 5, 8, 9, 12 or 13." +#: config/tc-s390.c:1529 +#, fuzzy, c-format +#| msgid "invalid floating point register pair. Valid fp register pair operands are 0, 1, 4, 5, 8, 9, 12 or 13." +msgid "operand %d: invalid floating-point register (FPR) pair (valid FPR pair operands are 0, 1, 4, 5, 8, 9, 12 or 13)" msgstr "par de registro de coma flotante inválido. Los operandos de pares de registro fp válidos son 0, 1, 4, 5, 8, 9, 12 o 13." -#: config/tc-s390.c:1442 -msgid "invalid operand suffix" +#: config/tc-s390.c:1550 +#, fuzzy +#| msgid "invalid register" +msgid "general register" +msgstr "invalida registro" + +#: config/tc-s390.c:1560 +#, fuzzy, c-format +#| msgid "Operand %d to .%s must be a writable register" +msgid "operand %d: expected %s name as base register" +msgstr "Operandos %d de .%s debe ser un registro modificable" + +#: config/tc-s390.c:1563 +#, fuzzy, c-format +#| msgid "Operand %d to .%s must be a writable register" +msgid "operand %d: expected %s name as index register" +msgstr "Operandos %d de .%s debe ser un registro modificable" + +#: config/tc-s390.c:1566 +#, fuzzy, c-format +#| msgid "operand %d out of range" +msgid "operand %d: expected %s name" +msgstr "operando %d fuera de rango" + +#: config/tc-s390.c:1656 +#, fuzzy, c-format +#| msgid "invalid operand suffix" +msgid "operand %d: invalid operand suffix" msgstr "sufijo de operando inválido" -#: config/tc-s390.c:1465 -msgid "syntax error; missing '(' after displacement" -msgstr "error sintáctico; ausente '(' tras desubicación" +#: config/tc-s390.c:1680 +#, fuzzy, c-format +#| msgid "syntax error; missing '(' after displacement" +msgid "operand %d: syntax error; missing '(' after displacement" +msgstr "error de sintaxis; ausente '(' tras desubicación" -#: config/tc-s390.c:1479 config/tc-s390.c:1521 config/tc-s390.c:1564 -msgid "syntax error; expected ','" -msgstr "error sintáctico; esperado ','" +#: config/tc-s390.c:1701 config/tc-s390.c:1752 config/tc-s390.c:1797 +#, fuzzy, c-format +#| msgid "syntax error; expected ','" +msgid "operand %d: syntax error; expected ','" +msgstr "error de sintaxis; esperado ','" -#: config/tc-s390.c:1511 -msgid "syntax error; missing ')' after base register" -msgstr "error sintáctico; ausente ')' tras registro base" +#: config/tc-s390.c:1732 +#, fuzzy, c-format +#| msgid "syntax error; missing ')' after base register" +msgid "operand %d: syntax error; missing ')' after base register" +msgstr "error de sintaxis; ausente ')' tras registro base" -#: config/tc-s390.c:1538 -msgid "syntax error; ')' not allowed here" -msgstr "errór sintáctico; ')' no se permite aquí" +#: config/tc-s390.c:1776 +#, fuzzy, c-format +#| msgid "syntax error; ')' not allowed here" +msgid "operand %d: syntax error; '%c' not allowed here" +msgstr "errór de sintaxis; ')' no se permite aquí" -#: config/tc-s390.c:1689 +#: config/tc-s390.c:1933 #, c-format msgid "Opcode %s not available in this mode" msgstr "El código operacional %s no está disponible en este modo" -#: config/tc-s390.c:1744 config/tc-s390.c:1767 config/tc-s390.c:1780 +#: config/tc-s390.c:1978 config/tc-s390.c:2001 config/tc-s390.c:2014 msgid "Invalid .insn format\n" msgstr "Formato .insn inválido\n" -#: config/tc-s390.c:1752 +#: config/tc-s390.c:1986 #, c-format msgid "Unrecognized opcode format: `%s'" msgstr "No reconocido el formato de código operacional: «%s»" -#: config/tc-s390.c:1783 +#: config/tc-s390.c:2017 msgid "second operand of .insn not a constant\n" msgstr "el segundo operando de .insn no es una constante\n" -#: config/tc-s390.c:1786 +#: config/tc-s390.c:2020 msgid "missing comma after insn constant\n" msgstr "ausentea coma tras la constante insn\n" -#: config/tc-s390.c:2025 +#: config/tc-s390.c:2259 msgid ".machinemode stack overflow" msgstr "desbordamiento superior .machinemode de pila" -#: config/tc-s390.c:2032 +#: config/tc-s390.c:2266 msgid ".machinemode stack underflow" msgstr "desbordamiento inferior .machinemode de pila" -#: config/tc-s390.c:2049 +#: config/tc-s390.c:2283 #, c-format msgid "invalid machine mode `%s'" msgstr "modo no válido de máquina «%s»" -#: config/tc-s390.c:2251 -#, c-format -msgid "cannot emit relocation %s against subsy symbol %s" -msgstr "no se puede emitir la reubicación %s contra el símbolo subsy %s" - -#: config/tc-s390.c:2368 +#: config/tc-s390.c:2605 msgid "unsupported relocation type" msgstr "no se admite el tipo reubicado" # El mensaje no se puede traducir correctamente. El segundo parámetro # se sustituye por " against " sin traducir. cfuga -#: config/tc-s390.c:2423 +#: config/tc-s390.c:2660 #, c-format msgid "cannot emit PC relative %s relocation%s%s" msgstr "no se puede emitir la reubicación %s relativa al PC%s%s" -#: config/tc-s390.c:2562 +#: config/tc-s390.c:2799 #, c-format msgid "Gas failure, reloc type %s\n" msgstr "Fallo de gas, valor reubicado %s\n" -#: config/tc-s390.c:2564 +#: config/tc-s390.c:2801 #, c-format msgid "Gas failure, reloc type #%i\n" msgstr "Fallo de gas, tipo reubicado #%i\n" -#: config/tc-score.c:260 +#: config/tc-score.c:256 msgid "div / mul are reserved instructions" msgstr "div / mul son instrucciones reservadas" -#: config/tc-score.c:261 +#: config/tc-score.c:257 msgid "This architecture doesn't support mmu" msgstr "Esta arquitectura no admite mmu" -#: config/tc-score.c:262 +#: config/tc-score.c:258 msgid "This architecture doesn't support atomic instruction" msgstr "Esta arquitectura no admite la instrucción atomic" -#: config/tc-score.c:469 +#: config/tc-score.c:464 msgid "S+core register expected" msgstr "se esperaba un registro S+core" -#: config/tc-score.c:470 +#: config/tc-score.c:465 msgid "S+core special-register expected" msgstr "Se esperaba un registro especial S+core" -#: config/tc-score.c:471 +#: config/tc-score.c:466 msgid "S+core co-processor register expected" msgstr "Se esperaba un registro de co-procesador S+core" -#: config/tc-score.c:1074 +#: config/tc-score.c:1069 msgid "Using temp register (r1)" msgstr "Utilizando registero (r1) temp" -#: config/tc-score.c:1093 +#: config/tc-score.c:1088 #, c-format msgid "register expected, not '%.100s'" msgstr "se esperaba un registro, no '%.100s'" -#: config/tc-score.c:1149 config/tc-score.c:5485 +#: config/tc-score.c:1144 config/tc-score.c:5483 msgid "rd must be even number." msgstr "rd debe ser un número par." -#: config/tc-score.c:1513 config/tc-score.c:1520 +#: config/tc-score.c:1508 config/tc-score.c:1515 #, c-format msgid "invalid constant: %d bit expression not in range %u..%u" msgstr "constante no válida: la expresión de %d bit no está en el límite %u..%u" -#: 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:1521 config/tc-score.c:1528 config/tc-score.c:2893 +#: config/tc-score.c:2898 config/tc-score.c:3163 config/tc-score.c:3168 +#: config/tc-score.c:3460 #, c-format msgid "invalid constant: %d bit expression not in range %d..%d" msgstr "constante no válida: la expresión de %d bit no está en el límite %d..%d" -#: config/tc-score.c:1558 +#: config/tc-score.c:1553 msgid "invalid constant: bit expression not defined" msgstr "constante no válida: la expresión de bit no está definida" -#: config/tc-score.c:2068 +#: config/tc-score.c:2063 msgid "Using temp register(r1)" msgstr "Se usa register(r1) temporal" -#: config/tc-score.c:2082 +#: config/tc-score.c:2077 #, c-format msgid "low register (r0-r15) expected, not '%.100s'" msgstr "se esperaba registro bajo (r0-r15), no '%.100s'" -#: config/tc-score.c:2144 config/tc-score.c:3482 config/tc-score.c:3650 -#: config/tc-score.c:3695 +#: config/tc-score.c:2139 config/tc-score.c:3480 config/tc-score.c:3648 +#: config/tc-score.c:3693 #, c-format msgid "missing [" msgstr "ausente [" -#: 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:2153 config/tc-score.c:3101 config/tc-score.c:3303 +#: config/tc-score.c:3319 config/tc-score.c:3390 config/tc-score.c:3445 +#: config/tc-score.c:3669 config/tc-score.c:3714 config/tc-score.c:3863 +#: config/tc-score.c:3917 config/tc-score.c:3963 #, c-format msgid "missing ]" msgstr "ausente ]" -#: config/tc-score.c:2347 +#: config/tc-score.c:2343 #, c-format msgid "Fix data dependency: %s %s -- %s %s (insert %d nop!/%d)" msgstr "Dependencia de datos fija: %s %s -- %s %s (insertar %d nop!/%d’)" -#: config/tc-score.c:2366 +#: config/tc-score.c:2362 #, c-format msgid "Fix data dependency: %s %s -- %s %s (insert 1 pflush/%d)" msgstr "Dependencia de datos fija: %s %s -- %s %s (insertar 1 `pflush/%d')" -#: config/tc-score.c:2382 config/tc-score.c:2389 +#: config/tc-score.c:2378 config/tc-score.c:2385 #, c-format msgid "data dependency: %s %s -- %s %s (%d/%d bubble)" msgstr "dependencia de datos: %s %s -- %s %s (%d/%d burbujea)" -#: config/tc-score.c:2838 +#: config/tc-score.c:2836 msgid "address offset must be half word alignment" msgstr "el desplazamiento direccional se debe alinear con half word" -#: config/tc-score.c:2846 +#: config/tc-score.c:2844 msgid "address offset must be word alignment" msgstr "el desplazamiento direccional se debe alinear con word" -#: config/tc-score.c:2986 config/tc-score.c:3123 +#: config/tc-score.c:2984 config/tc-score.c:3121 msgid "register same as write-back base" msgstr "el registro es el mismo que la base de retroescritura" -#: config/tc-score.c:3093 +#: config/tc-score.c:3091 msgid "pre-indexed expression expected" msgstr "se esperaba una expresión pre-indizada" -#: config/tc-score.c:3422 +#: config/tc-score.c:3420 #, c-format msgid "invalid register number: %d is not in [r0--r7]" msgstr "número de registro inválido: %d no está en [r0--r7]" -#: config/tc-score.c:3439 +#: config/tc-score.c:3437 msgid "comma is expected" msgstr "se esperaba una coma" -#: config/tc-score.c:3470 +#: config/tc-score.c:3468 #, c-format msgid "invalid constant: %d is not word align integer" msgstr "constante no válida: %d no es un entero alineado a word" -#: config/tc-score.c:3509 config/tc-score.c:3552 +#: config/tc-score.c:3507 config/tc-score.c:3550 msgid "invalid constant: 32 bit expression not word align" msgstr "constante no válida: la expresión de 32 bit no está alineada a word" -#: config/tc-score.c:3518 config/tc-score.c:3561 +#: config/tc-score.c:3516 config/tc-score.c:3559 msgid "invalid constant: 32 bit expression not in range [0, 0xffffffff]" msgstr "constante no válida: la expresión de 32 bit no está en el límite [0, 0xffffffff]" -#: config/tc-score.c:3594 +#: config/tc-score.c:3592 msgid "invalid constant: 32 bit expression not in range [-0x80000000, 0x7fffffff]" msgstr "constante no válida: la expresión de 32 bit no está en el límite [-0x80000000, 0x7fffffff]" -#: config/tc-score.c:3783 config/tc-score.c:3811 +#: config/tc-score.c:3781 config/tc-score.c:3809 msgid "imm5 should >= 2" msgstr "imm5 debe ser >= 2" -#: config/tc-score.c:3788 config/tc-score.c:3817 +#: config/tc-score.c:3786 config/tc-score.c:3815 msgid "reg should <= 31" msgstr "reg debe ser ≤ 31" -#: config/tc-score.c:3859 config/tc-score.c:3910 +#: config/tc-score.c:3857 config/tc-score.c:3908 msgid "missing +" msgstr "ausente +" -#: config/tc-score.c:3903 +#: config/tc-score.c:3901 #, c-format msgid "%s register same as write-back base" msgstr "el registro %s es el mismo que la base de retroescritura" -#: config/tc-score.c:3905 +#: config/tc-score.c:3903 msgid "destination" msgstr "destino" -#: config/tc-score.c:3905 +#: config/tc-score.c:3903 msgid "source" msgstr "fuente" -#: config/tc-score.c:4235 config/tc-score.c:4311 config/tc-score.c:4946 +#: config/tc-score.c:4234 config/tc-score.c:4310 config/tc-score.c:4945 msgid "expression error" msgstr "error de expresión" -#: config/tc-score.c:4241 -msgid "value not in range [0, 0xffffffff]" -msgstr "el valor no está en el límite [0, 0xffffffff]" - -#: config/tc-score.c:4317 +#: config/tc-score.c:4316 msgid "value not in range [-0xffffffff, 0xffffffff]" msgstr "el valor no está en el límite [-0xffffffff, 0xffffffff]" -#: config/tc-score.c:4345 +#: config/tc-score.c:4344 msgid "li rd label isn't correct instruction form" msgstr "etiqueta li rd no es relleno instruccional correcto" -#: config/tc-score.c:4515 config/tc-score.c:4670 config/tc-score.c:5197 -#: config/tc-score.c:5225 +#: config/tc-score.c:4511 config/tc-score.c:4665 config/tc-score.c:5196 +#: config/tc-score.c:5224 msgid "lacking label " msgstr "ausente la etiqueta " -#: config/tc-score.c:4896 +#: config/tc-score.c:4895 msgid "s3_PIC code offset overflow (max 16 signed bits)" msgstr "s3_PIC como código de desbordamiento de desplazamiento (máx 16 bits con signo)" -#: config/tc-score.c:4952 +#: config/tc-score.c:4951 msgid "value not in range [0, 0x7fffffff]" msgstr "el valor no está en el límite [0, 0x7fffffff]" -#: config/tc-score.c:4957 +#: config/tc-score.c:4956 msgid "end on line error" msgstr "error de final de línea" -#: config/tc-score.c:5204 +#: config/tc-score.c:5203 msgid "invalid constant: 25 bit expression not in range [-16777216, 16777215]" msgstr "constante no válida: la expresión de 25 bit no está en el límite [-16777216, 16777215]" -#: config/tc-score.c:5231 +#: config/tc-score.c:5230 msgid "invalid constant: 20 bit expression not in range -2^19..2^19-1" msgstr "invalida constante: expresión de 20 bit no dentro del límite -2^19..2^19-1" -#: config/tc-score.c:5264 +#: config/tc-score.c:5263 msgid "lacking label" msgstr "ausente la etiqueta" -#: config/tc-score.c:5269 +#: config/tc-score.c:5268 msgid "invalid constant: 10 bit expression not in range [-2^9, 2^9-1]" msgstr "constante no válida: la expresión de 10 bit no está en el límite [-2^9, 2^9-1]" -#: config/tc-score.c:5365 +#: config/tc-score.c:5363 msgid "pce instruction error (16 bit || 16 bit)." msgstr "error de instrucción pce (16 bit || 16 bit)." -#: config/tc-score.c:5383 config/tc-score.c:5407 config/tc-score.c:5434 -#: config/tc-score.c:5463 config/tc-score.c:5512 +#: config/tc-score.c:5381 config/tc-score.c:5405 config/tc-score.c:5432 +#: config/tc-score.c:5461 config/tc-score.c:5510 msgid "score3d instruction." msgstr "instrucción score3d." -#: config/tc-score.c:6030 +#: config/tc-score.c:6000 msgid "Unsupported use of .gpword" msgstr "No se admite el uso de .gpword" -#: config/tc-score.c:6126 +#: config/tc-score.c:6096 #, c-format msgid "BSS length (%d) < 0 ignored" msgstr "Longitud BSS (%d) <0 se descarta" -#: config/tc-score.c:6141 read.c:2467 +#: config/tc-score.c:6110 read.c:2558 #, c-format msgid "error setting flags for \".sbss\": %s" msgstr "error al establecer marcas para \".sbss\": %s" -#: config/tc-score.c:6155 config/tc-sparc.c:4311 +#: config/tc-score.c:6124 config/tc-sparc.c:4164 msgid "missing alignment" msgstr "ausente la alineamiento" -#: config/tc-score.c:6192 +#: config/tc-score.c:6161 #, c-format msgid "alignment too large; %d assumed" msgstr "alineamiento demasiado grande; se asume %d" -#: config/tc-score.c:6197 read.c:2528 +#: config/tc-score.c:6166 read.c:2619 msgid "alignment negative; 0 assumed" msgstr "alineamiento negativo; asumido 0" #. Error routine. -#: config/tc-score.c:6607 config/tc-score.c:6631 +#: config/tc-score.c:6526 config/tc-score.c:6550 msgid "size is not 4 or 6" msgstr "el tamaño no es 4 o 6" -#: config/tc-score.c:6690 +#: config/tc-score.c:6609 msgid "bad call to MD_ATOF()" -msgstr "llamada equivocada a MD_ATOF()" +msgstr "llamada incorrecta a MD_ATOF()" -#: config/tc-score.c:7197 config/tc-score.c:7263 +#: config/tc-score.c:7108 config/tc-score.c:7174 #, c-format msgid " branch relocation truncate (0x%x) [-2^9 ~ 2^9-1]" msgstr " la reubicación de ramificación trunca (0x%x) [-2^9 ~ 2^9-1]" -#: config/tc-score.c:7212 config/tc-score.c:7241 config/tc-score.c:7293 +#: config/tc-score.c:7123 config/tc-score.c:7152 config/tc-score.c:7204 #, c-format msgid " branch relocation truncate (0x%x) [-2^19 ~ 2^19-1]" msgstr " la reubicación de ramificación trunca (0x%x) [-2^19 ~ 2^19-1]" -#: config/tc-score.c:7318 +#: config/tc-score.c:7229 #, c-format msgid " branch relocation truncate (0x%x) [-2^9 ~ 2^9-1]" msgstr " la reubicación de ramificación trunca (0x%x) [-2^9 ~ 2^9-1]" -#: config/tc-score.c:7488 +#: config/tc-score.c:7399 #, c-format msgid "cannot represent %s relocation in this object file format1" msgstr "no se puede representar la reubicación %s en este fichero objeto format1" -#: config/tc-score.c:7779 +#: config/tc-score.c:7690 #, c-format msgid "Sunplus-v2-0-0-20060510\n" msgstr "Sunplus-v2-0-0-20060510\n" -#: config/tc-score.c:7799 +#: config/tc-score.c:7710 #, c-format msgid " Score-specific assembler options:\n" msgstr " Opciones de ensamblador específicas de Score:\n" -#: config/tc-score.c:7801 +#: config/tc-score.c:7712 #, c-format msgid " -EB\t\tassemble code for a big-endian cpu\n" msgstr " -EB\t\tensambla código para un cpu big-endian\n" -#: config/tc-score.c:7806 +#: config/tc-score.c:7717 #, c-format msgid " -EL\t\tassemble code for a little-endian cpu\n" msgstr " -EL\t\tensambla código para un cpu little-endian\n" -#: config/tc-score.c:7810 +#: config/tc-score.c:7721 #, c-format msgid " -FIXDD\t\tfix data dependencies\n" msgstr " -FIXDD\t\t ajusta datos dependientes\n" -#: config/tc-score.c:7812 +#: config/tc-score.c:7723 #, c-format msgid " -NWARN\t\tdo not print warning message when fixing data dependencies\n" msgstr " -NWARN\t\t ensambla código para que no avise sobre dependencia de datos fijo\n" -#: config/tc-score.c:7814 +#: config/tc-score.c:7725 #, c-format msgid " -SCORE5\t\tassemble code for target SCORE5\n" msgstr " -SCORE5\t\t ensambla código para el destino SCORE5\n" -#: config/tc-score.c:7816 +#: config/tc-score.c:7727 #, c-format msgid " -SCORE5U\tassemble code for target SCORE5U\n" msgstr " -SCORE5U\tensambla código para el objetivo SCORE5U\n" -#: config/tc-score.c:7818 +#: config/tc-score.c:7729 #, c-format msgid " -SCORE7\t\tassemble code for target SCORE7 [default]\n" msgstr " -SCORE5\t\tensambla código para el objetivo SCORE7 [predet.]\n" -#: config/tc-score.c:7820 +#: config/tc-score.c:7731 #, c-format msgid " -SCORE3\t\tassemble code for target SCORE3\n" msgstr " -SCORE3\t\t ensambla código para el objetivo SCORE5U\n" -#: config/tc-score.c:7822 +#: config/tc-score.c:7733 #, c-format msgid " -march=score7\tassemble code for target SCORE7 [default]\n" msgstr " -march=score7\t ensambla código para el objetivo SCORE7 [predet.]\n" -#: config/tc-score.c:7824 +#: config/tc-score.c:7735 #, c-format msgid " -march=score3\tassemble code for target SCORE3\n" msgstr " -march=score3\tensambla código para el objetivo SCORE3\n" -#: config/tc-score.c:7826 +#: config/tc-score.c:7737 #, c-format msgid " -USE_R1\t\tassemble code for no warning message when using temp register r1\n" msgstr " -USE_R1\t\tensambla código para que no avise cuando se usa el registro temporal r1\n" -#: config/tc-score.c:7828 +#: config/tc-score.c:7739 #, c-format msgid " -KPIC\t\tgenerate PIC\n" msgstr " -KPIC\t\tgenera PIC\n" -#: config/tc-score.c:7830 +#: config/tc-score.c:7741 #, c-format msgid " -O0\t\tdo not perform any optimizations\n" msgstr " -O0\t\tno realizar ninguna optimización\n" -#: config/tc-score.c:7832 +#: config/tc-score.c:7743 #, c-format msgid " -G gpnum\tassemble code for setting gpsize, default is 8 bytes\n" msgstr " -G gpnum\tensambla código para definir gpsize y por defecto es 8 byte\n" -#: config/tc-score.c:7834 +#: config/tc-score.c:7745 #, c-format msgid " -V \t\tSunplus release version\n" msgstr " -V \t\tVersión Sunplus publicada\n" -#: config/tc-sh.c:62 +#: config/tc-sh.c:61 msgid "directive .big encountered when option -big required" msgstr "se encontró una directiva .big cuando se requirió una opción -big" -#: config/tc-sh.c:72 +#: config/tc-sh.c:71 msgid "directive .little encountered when option -little required" msgstr "se encontró una directiva .little cuando se requirió una opción -little" -#: config/tc-sh.c:1422 +#: config/tc-sh.c:1025 msgid "illegal double indirection" msgstr "doble indirección ilegal" -#: config/tc-sh.c:1431 +#: config/tc-sh.c:1034 msgid "illegal register after @-" msgstr "registro ilegal tras @-" -#: config/tc-sh.c:1447 +#: config/tc-sh.c:1050 msgid "must be @(r0,...)" msgstr "debe ser @(r0,...)" -#: config/tc-sh.c:1471 +#: config/tc-sh.c:1074 msgid "syntax error in @(r0,...)" -msgstr "error sintáctico en @(r0,...)" +msgstr "error de sintaxis en @(r0,...)" -#: config/tc-sh.c:1476 +#: config/tc-sh.c:1079 msgid "syntax error in @(r0...)" -msgstr "error sintáctico en @(r0...)" +msgstr "error de sintaxis en @(r0...)" -#: config/tc-sh.c:1521 +#: config/tc-sh.c:1124 msgid "Deprecated syntax." msgstr "Sintaxis obsoleta." -#: config/tc-sh.c:1533 config/tc-sh.c:1538 +#: config/tc-sh.c:1136 config/tc-sh.c:1141 msgid "syntax error in @(disp,[Rn, gbr, pc])" -msgstr "error sintáctico en @(disp,[Rn, gbr, pc])" +msgstr "error de sintaxis en @(disp,[Rn, gbr, pc])" -#: config/tc-sh.c:1543 +#: config/tc-sh.c:1146 msgid "expecting )" msgstr "se esperaba )" -#: config/tc-sh.c:1551 +#: config/tc-sh.c:1154 msgid "illegal register after @" msgstr "registro ilegal tras @" -#: config/tc-sh.c:2192 +#: config/tc-sh.c:1780 #, c-format msgid "unhandled %d\n" msgstr "%d sin manipular\n" -#: config/tc-sh.c:2403 +#: config/tc-sh.c:1993 #, c-format msgid "Invalid register: 'r%d'" msgstr "Registro inválido: 'r%d'" -#: config/tc-sh.c:2515 +#: config/tc-sh.c:2106 #, c-format msgid "failed for %d\n" msgstr "falló para %d\n" -#: config/tc-sh.c:2521 +#: config/tc-sh.c:2112 msgid "misplaced PIC operand" msgstr "operando PIC mal ubicado" -#: config/tc-sh.c:2632 config/tc-sh.c:3031 +#: config/tc-sh.c:2223 config/tc-sh.c:2596 msgid "invalid operands for opcode" msgstr "operandos inválidos para el código operacional" -#: config/tc-sh.c:2637 +#: config/tc-sh.c:2228 msgid "insn can't be combined with parallel processing insn" msgstr "las insns no se pueden combinar con insns de procesamiento paralelo" -#: config/tc-sh.c:2644 config/tc-sh.c:2655 config/tc-sh.c:2687 +#: config/tc-sh.c:2235 config/tc-sh.c:2246 config/tc-sh.c:2278 msgid "multiple movx specifications" msgstr "especificaciones movx múltiples" -#: config/tc-sh.c:2649 config/tc-sh.c:2671 config/tc-sh.c:2710 +#: config/tc-sh.c:2240 config/tc-sh.c:2262 config/tc-sh.c:2301 msgid "multiple movy specifications" msgstr "especificaciones movy múltiples" -#: config/tc-sh.c:2658 config/tc-sh.c:2691 +#: config/tc-sh.c:2249 config/tc-sh.c:2282 msgid "invalid movx address register" msgstr "registro direccional movx inválido" -#: config/tc-sh.c:2660 +#: config/tc-sh.c:2251 msgid "insn cannot be combined with non-nopy" msgstr "las insns no se pueden combinar con las que no son nopy" -#: config/tc-sh.c:2674 config/tc-sh.c:2730 +#: config/tc-sh.c:2265 config/tc-sh.c:2321 msgid "invalid movy address register" msgstr "registro direccional movy inválido" -#: config/tc-sh.c:2676 +#: config/tc-sh.c:2267 msgid "insn cannot be combined with non-nopx" msgstr "las insns no se pueden combinar con las que no son nopx" -#: config/tc-sh.c:2689 +#: config/tc-sh.c:2280 msgid "previous movy requires nopx" msgstr "el movy previo requiere nopx" -#: config/tc-sh.c:2697 config/tc-sh.c:2702 +#: config/tc-sh.c:2288 config/tc-sh.c:2293 msgid "invalid movx dsp register" msgstr "registro dsp movx inválido" -#: config/tc-sh.c:2712 +#: config/tc-sh.c:2303 msgid "previous movx requires nopy" msgstr "el movx previo requiere nopy" -#: config/tc-sh.c:2721 config/tc-sh.c:2726 +#: config/tc-sh.c:2312 config/tc-sh.c:2317 msgid "invalid movy dsp register" msgstr "registro dsp movy inválido" -#: config/tc-sh.c:2736 +#: config/tc-sh.c:2327 msgid "dsp immediate shift value not constant" msgstr "el valor de desplazamiento inmediato dsp no es constante" -#: config/tc-sh.c:2750 config/tc-sh.c:2776 +#: config/tc-sh.c:2341 config/tc-sh.c:2367 msgid "multiple parallel processing specifications" msgstr "especificaciones múltiples de procesamiento paralelo" -#: config/tc-sh.c:2769 +#: config/tc-sh.c:2360 msgid "multiple condition specifications" msgstr "especificaciones múltiples de condición" -#: config/tc-sh.c:2807 +#: config/tc-sh.c:2398 msgid "insn cannot be combined with pmuls" msgstr "la insn no se pueden combinar con pmuls" -#: config/tc-sh.c:2823 +#: config/tc-sh.c:2414 msgid "bad combined pmuls output operand" msgstr "operando de salida pmuls mal combinado" -#: config/tc-sh.c:2833 +#: config/tc-sh.c:2424 msgid "destination register is same for parallel insns" msgstr "el registro de destino es el mismo para insns paralelas" -#: config/tc-sh.c:2842 +#: config/tc-sh.c:2433 msgid "condition not followed by conditionalizable insn" msgstr "la condición no está seguida por una insn condicionalizable" -#: config/tc-sh.c:2852 +#: config/tc-sh.c:2443 msgid "unrecognized characters at end of parallel processing insn" msgstr "no se reconocen los caracteres al final de la insn de procesamiento paralelo" -#: config/tc-sh.c:2968 +#: config/tc-sh.c:2535 msgid "opcode not valid for this cpu variant" msgstr "el código operacional no es válido para esta variante de cpu" -#: config/tc-sh.c:3001 +#: config/tc-sh.c:2566 msgid "Delayed branches not available on SH1" msgstr "Las ramificaciones postergadas no están disponibles en SH1" -#: config/tc-sh.c:3036 +#: config/tc-sh.c:2601 #, c-format msgid "excess operands: '%s'" msgstr "exceso de operandos: «%s»" -#: config/tc-sh.c:3113 +#: config/tc-sh.c:2678 msgid ".uses pseudo-op seen when not relaxing" msgstr "se vio el pseudo-operador .uses cuando no se estaba relajando" -#: config/tc-sh.c:3119 +#: config/tc-sh.c:2684 msgid "bad .uses format" -msgstr "formato de .uses equivocado" - -#: config/tc-sh.c:3230 -msgid "Invalid combination: --isa=SHcompact with --isa=SHmedia" -msgstr "Combinación no válida: --isa=SHcompact con --isa=SHmedia" +msgstr "formato de .uses incorrecto" -#: config/tc-sh.c:3236 -msgid "Invalid combination: --isa=SHmedia with --isa=SHcompact" -msgstr "Combinación no válida: --isa=SHmedia con --isa=SHcompact" - -#: config/tc-sh.c:3238 -msgid "Invalid combination: --abi=64 with --isa=SHcompact" -msgstr "Combinación no válida: --abi=64 con --isa=SHcompact" - -#: config/tc-sh.c:3270 +#: config/tc-sh.c:2802 #, c-format msgid "Invalid argument to --isa option: %s" msgstr "Argumento inválido para la opción --isa: %s" -#: config/tc-sh.c:3279 -msgid "Invalid combination: --abi=32 with --abi=64" -msgstr "Combinación no válida: --abi=32 con --abi=64" - -#: config/tc-sh.c:3285 -msgid "Invalid combination: --abi=64 with --abi=32" -msgstr "Combinación no válida: --abi=64 con --abi=32" - -#: config/tc-sh.c:3287 -msgid "Invalid combination: --isa=SHcompact with --abi=64" -msgstr "Combinación no válida: --isa=SHcompact con --abi=64" - -#: config/tc-sh.c:3291 -#, c-format -msgid "Invalid argument to --abi option: %s" -msgstr "Argumento inválido para la opción --abi: %s" - -#: config/tc-sh.c:3331 +#: config/tc-sh.c:2826 #, c-format msgid "" "SH options:\n" @@ -15889,311 +18678,93 @@ msgstr "" " | dsp igual que '-dsp'\n" " | fp" -#: config/tc-sh.c:3357 -#, c-format -msgid "" -"--isa=[shmedia\t\tset as the default instruction set for SH64\n" -" | SHmedia\n" -" | shcompact\n" -" | SHcompact]\n" -msgstr "" -"--isa=[shmedia\t\t establece el conjunto de instrucciones por\n" -" \t\t defecto para SH64\n" -" | SHmedia\n" -" | shcompact\n" -" | SHcompact]\n" - -#: config/tc-sh.c:3362 -#, c-format -msgid "" -"--abi=[32|64]\t\tset size of expanded SHmedia operands and object\n" -"\t\t\tfile type\n" -"--shcompact-const-crange emit code-range descriptors for constants in\n" -"\t\t\tSHcompact code sections\n" -"--no-mix\t\tdisallow SHmedia code in the same section as\n" -"\t\t\tconstants and SHcompact code\n" -"--no-expand\t\tdo not expand MOVI, PT, PTA or PTB instructions\n" -"--expand-pt32\t\twith -abi=64, expand PT, PTA and PTB instructions\n" -"\t\t\tto 32 bits only\n" -msgstr "" -"--abi=[32|64]\t\t establece el tamaño de los operandos SHmedia\n" -"\t\t\t expandidos y el tipo del fichero objeto\n" -"--shcompact-const-crange\t emite descriptores de código-límite para\n" -"\t\t\t constantes en las secciones de código SHcompact\n" -"--no-mix\t\t\t desactiva el código SHmedia en la misma sección que\n" -"\t\t\t las constantes y el código SHcompact\n" -"--no-expand\t\t no expande las instrucciones MOVI, PT, PTA o PTB\n" -"--expand-pt32\t\t con -abi=64, expande las instrucciones PT, PTA y PTB\n" -"\t\t\t solamente a 32 bits\n" - -#: config/tc-sh.c:3374 +#: config/tc-sh.c:2851 #, c-format msgid "--fdpic\t\t\tgenerate an FDPIC object file\n" msgstr "--fdpic\t\t\tgenera un fichero objeto FDPIC\n" -#: config/tc-sh.c:3465 +#: config/tc-sh.c:2927 msgid ".uses does not refer to a local symbol in the same section" msgstr ".uses no se refiere a un símbolo local en la misma sección" -#: config/tc-sh.c:3484 +#: config/tc-sh.c:2946 msgid "can't find fixup pointed to by .uses" msgstr "no se puede encontrar la compostura señalada por .uses" -#: config/tc-sh.c:3504 +#: config/tc-sh.c:2966 msgid ".uses target does not refer to a local symbol in the same section" msgstr "el objetivo .uses no se refiere a un símbolo local en la misma sección" -#: config/tc-sh.c:3581 +#: config/tc-sh.c:3039 msgid "displacement overflows 12-bit field" msgstr "la desubicación desborda el campo de 12-bit" -#: config/tc-sh.c:3584 +#: config/tc-sh.c:3042 #, c-format msgid "displacement to defined symbol %s overflows 12-bit field" msgstr "desplazamiento para símbolo %s definido sobredesborda el campo de 12-bit" -#: config/tc-sh.c:3588 +#: config/tc-sh.c:3046 #, c-format msgid "displacement to undefined symbol %s overflows 12-bit field" msgstr "la desubicación del símbolo indefinido %s desborda el campo de 12-bit" -#: config/tc-sh.c:3661 +#: config/tc-sh.c:3119 msgid "displacement overflows 8-bit field" msgstr "la desubicación desborda el campo de 8-bit" -#: config/tc-sh.c:3664 +#: config/tc-sh.c:3122 #, c-format msgid "displacement to defined symbol %s overflows 8-bit field" msgstr "la desubicación del símbolo definido %s desborda el campo de 8-bits" -#: config/tc-sh.c:3668 +#: config/tc-sh.c:3126 #, c-format msgid "displacement to undefined symbol %s overflows 8-bit field " msgstr "desplazamiento a símbolo %s indefinido sobredesborda campo de 8-bit " -#: config/tc-sh.c:3685 +#: config/tc-sh.c:3139 #, c-format msgid "overflow in branch to %s; converted into longer instruction sequence" msgstr "desbordamiento en la ramificación a %s; se convirtió en una secuencia de instrucciones más larga" -#: config/tc-sh.c:3750 config/tc-sh.c:3797 config/tc-sparc.c:4811 -#: config/tc-sparc.c:4835 +#: config/tc-sh.c:3204 config/tc-sh.c:3251 config/tc-sparc.c:4628 +#: config/tc-sparc.c:4652 msgid "misaligned data" msgstr "datos desalineados" -#: config/tc-sh.c:4126 +#: config/tc-sh.c:3557 msgid "offset to unaligned destination" msgstr "desplazamiento a destino desalineado" -#: config/tc-sh.c:4131 +#: config/tc-sh.c:3562 msgid "negative offset" msgstr "desplazamiento negativo" -#: config/tc-sh.c:4282 +#: config/tc-sh.c:3702 msgid "misaligned offset" msgstr "desplazamiento desalineado" -#: config/tc-sh64.c:568 -msgid "This operand must be constant at assembly time" -msgstr "Este operando debe ser una constante al momento de ensamblar" - -#: config/tc-sh64.c:681 -msgid "Invalid operand expression" -msgstr "Expresión de operando inválido" - -#: config/tc-sh64.c:773 config/tc-sh64.c:877 -msgid "PTB operand is a SHmedia symbol" -msgstr "Operando PTB es un símbolo SHmedia" - -#: config/tc-sh64.c:776 config/tc-sh64.c:874 -msgid "PTA operand is a SHcompact symbol" -msgstr "Operando PTA es un símbolo SHcompact" - -#: config/tc-sh64.c:792 -msgid "invalid expression in operand" -msgstr "expresión no válida en operando" - -#: config/tc-sh64.c:1483 -#, c-format -msgid "invalid operand, not a 5-bit unsigned value: %d" -msgstr "operando inválido, no es un valor de 5-bit sin signo: %d" - -#: config/tc-sh64.c:1488 -#, c-format -msgid "invalid operand, not a 6-bit signed value: %d" -msgstr "operando inválido, no es un valor de 6-bit con signo: %d" - -#: config/tc-sh64.c:1493 -#, c-format -msgid "invalid operand, not a 6-bit unsigned value: %d" -msgstr "operando inválido, no es un valor de 6-bit sin signo: %d" - -#: config/tc-sh64.c:1498 config/tc-sh64.c:1510 -#, c-format -msgid "invalid operand, not a 11-bit signed value: %d" -msgstr "operando inválido, no es un valor de 11-bit con signo: %d" - -#: config/tc-sh64.c:1500 -#, c-format -msgid "invalid operand, not a multiple of 32: %d" -msgstr "operando inválido, no es un múltiplo de 32: %d" - -#: config/tc-sh64.c:1505 -#, c-format -msgid "invalid operand, not a 10-bit signed value: %d" -msgstr "operando inválido, no es un valor de 10-bit con signo: %d" - -#: config/tc-sh64.c:1512 -#, c-format -msgid "invalid operand, not an even value: %d" -msgstr "operando inválido, no es un valor par: %d" - -#: config/tc-sh64.c:1517 -#, c-format -msgid "invalid operand, not a 12-bit signed value: %d" -msgstr "operando inválido, no es un valor de 12-bit con signo: %d" - -#: config/tc-sh64.c:1519 -#, c-format -msgid "invalid operand, not a multiple of 4: %d" -msgstr "operando inválido, no es un múltiplo de 4: %d" - -#: config/tc-sh64.c:1524 -#, c-format -msgid "invalid operand, not a 13-bit signed value: %d" -msgstr "operando inválido, no es un valor de 13-bit con signo: %d" - -#: config/tc-sh64.c:1526 -#, c-format -msgid "invalid operand, not a multiple of 8: %d" -msgstr "operando inválido, no es un múltiplo de 8: %d" - -#: config/tc-sh64.c:1531 -#, c-format -msgid "invalid operand, not a 16-bit signed value: %d" -msgstr "operando inválido, no es un valor de 16-bit con signo: %d" - -#: config/tc-sh64.c:1536 -#, c-format -msgid "invalid operand, not a 16-bit unsigned value: %d" -msgstr "operando inválido, no es un valor de 16-bit sin signo: %d" - -#: config/tc-sh64.c:1542 -msgid "operand out of range for PT, PTA and PTB" -msgstr "operando fuera de límite para PT, PTA y PTB" - -#: config/tc-sh64.c:1544 -#, c-format -msgid "operand not a multiple of 4 for PT, PTA or PTB: %d" -msgstr "operando no es un múltiplo de 4 para PT, PTA o PTB: %d" - -#: config/tc-sh64.c:2065 -#, c-format -msgid "MOVI operand is not a 32-bit signed value: 0x%8x%08x" -msgstr "MOVI como operando no es un valor de 32-bit con signo: 0x%8x%08x" - -#: config/tc-sh64.c:2422 config/tc-sh64.c:2585 config/tc-sh64.c:2600 -msgid "invalid PIC reference" -msgstr "referencia PIC no válida" - -#: config/tc-sh64.c:2682 config/tc-sh64.c:2722 -msgid "invalid operand: expression in PT target" -msgstr "operando inválido: expresión en el objetivo PT" - -#: config/tc-sh64.c:2813 -#, c-format -msgid "invalid operands to %s" -msgstr "operandos inválidos para %s" - -#: config/tc-sh64.c:2819 -#, c-format -msgid "excess operands to %s" -msgstr "exceso de operandos para %s" - -#: config/tc-sh64.c:2864 -#, c-format -msgid "The `.mode %s' directive is not valid with this architecture" -msgstr "La directiva `.mode %s' no es válida para esta arquitectura" - -#: config/tc-sh64.c:2872 -#, c-format -msgid "Invalid argument to .mode: %s" -msgstr "Argumento inválido para .mode: %s" - -#: config/tc-sh64.c:2902 -#, c-format -msgid "The `.abi %s' directive is not valid with this architecture" -msgstr "La directiva `.abi %s' no es válida para esta arquitectura" - -#: config/tc-sh64.c:2908 -msgid "`.abi 64' but command-line options do not specify 64-bit ABI" -msgstr "`.abi 64' pero las opciones de la línea de mandatos no especifica la ABI de 64-bit" - -#: config/tc-sh64.c:2913 -msgid "`.abi 32' but command-line options do not specify 32-bit ABI" -msgstr "`.abi 32' pero las opciones de la línea de mandatos no especifica la ABI de 32-bit" - -#: config/tc-sh64.c:2916 -#, c-format -msgid "Invalid argument to .abi: %s" -msgstr "Argumento inválido para .abi: %s" - -#: config/tc-sh64.c:2971 -msgid "-no-mix is invalid without specifying SHcompact or SHmedia" -msgstr "-no-mix es inválido sin especificar SHcompact o SHmedia" - -#: config/tc-sh64.c:2976 -msgid "-shcompact-const-crange is invalid without SHcompact" -msgstr "-shcompact-const-crange es inválido sin SHcompact" - -#: config/tc-sh64.c:2979 -msgid "-expand-pt32 only valid with -abi=64" -msgstr "-expand-pt32 sólo es válido con -abi=64" - -#: config/tc-sh64.c:2982 -msgid "-no-expand only valid with SHcompact or SHmedia" -msgstr "-no-expand sólo es válido con SHcompact o SHmedia" - -#: config/tc-sh64.c:2985 -msgid "-expand-pt32 invalid together with -no-expand" -msgstr "-expand-pt32 es inválido junto con -no-expand" - -#: config/tc-sh64.c:3199 -msgid "SHmedia code not allowed in same section as constants and SHcompact code" -msgstr "Código no admitido SHmedia en la misma sección como constantes y código SHcompact" - -#: config/tc-sh64.c:3217 -msgid "No segment info for current section" -msgstr "Ningún informe segmentario para sección actual" - -#: config/tc-sh64.c:3256 -msgid "duplicate datalabel operator ignored" -msgstr "duplica operador descartado de etiquetado de datos" - -#: config/tc-sh64.c:3323 -msgid "Invalid DataLabel expression" -msgstr "Expresión DataLabel no válida" - -#: config/tc-sparc.c:322 config/tc-sparc.c:537 +#: config/tc-sparc.c:314 config/tc-sparc.c:495 msgid "Bad opcode table, broken assembler." -msgstr "Tabla de códigos operacionales equivocada, ensamblador descompuesto." +msgstr "Tabla de códigos operacionales incorrecta, ensamblador descompuesto." -#: config/tc-sparc.c:529 +#: config/tc-sparc.c:487 #, c-format msgid "invalid architecture -xarch=%s" msgstr "arquitectura -xarch=%s no válida" -#: config/tc-sparc.c:610 +#: config/tc-sparc.c:561 #, c-format msgid "No compiled in support for %d bit object file format" msgstr "No se compiló el soporte para el formato de fichero objeto de %d bit" -#: config/tc-sparc.c:695 +#: config/tc-sparc.c:645 #, c-format msgid "SPARC options:\n" msgstr "Opciones SPARC:\n" -#: config/tc-sparc.c:724 +#: config/tc-sparc.c:674 #, c-format msgid "" "\n" @@ -16212,12 +18783,7 @@ msgstr "" "-relax\t\t\trelaja saltos y ramificaciones (por defecto)\n" "-no-relax\t\tevita modificar cualquier omisión y ramificación\n" -#: config/tc-sparc.c:732 -#, c-format -msgid "-k\t\t\tgenerate PIC\n" -msgstr "-k\t\t\tgenera PIC\n" - -#: config/tc-sparc.c:736 +#: config/tc-sparc.c:681 #, c-format msgid "" "-32\t\t\tcreate 32 bit object file\n" @@ -16226,12 +18792,12 @@ msgstr "" "-32\t\t\tcrea ficheros objeto de 32 bits\n" "-64\t\t\tcrea ficheros objeto de 64 bits\n" -#: config/tc-sparc.c:739 +#: config/tc-sparc.c:684 #, c-format msgid "\t\t\t[default is %d]\n" msgstr "\t\t\t[por defecto es %d]\n" -#: config/tc-sparc.c:741 +#: config/tc-sparc.c:686 #, c-format msgid "" "-TSO\t\t\tuse Total Store Ordering\n" @@ -16242,12 +18808,12 @@ msgstr "" "-PSO\t\t\tusa el Ordenamiento de Almacenamiento Parcial\n" "-RMO\t\t\tusa el Ordenamiento de Memoria Relajado\n" -#: config/tc-sparc.c:745 +#: config/tc-sparc.c:690 #, c-format msgid "\t\t\t[default is %s]\n" msgstr "\t\t\t[por defecto es %s]\n" -#: config/tc-sparc.c:747 +#: config/tc-sparc.c:692 #, c-format msgid "" "-KPIC\t\t\tgenerate PIC\n" @@ -16271,7 +18837,7 @@ msgstr "" "-Qy, -Qn\t\t se descarta\n" "-s\t\t\t se descarta\n" -#: config/tc-sparc.c:760 +#: config/tc-sparc.c:704 #, c-format msgid "" "-EL\t\t\tgenerate code for a little endian machine\n" @@ -16284,361 +18850,348 @@ msgstr "" "--little-endian-data\tgenera código para una máquina que tenga\n" " instrucciones big endian y datos little endian.\n" -#: config/tc-sparc.c:1027 +#: config/tc-sparc.c:968 #, c-format msgid "Internal error: losing opcode: `%s' \"%s\"\n" msgstr "Error interno: se pierde el código operacional: «%s» «%s»\n" -#: config/tc-sparc.c:1046 +#: config/tc-sparc.c:987 #, c-format msgid "Internal error: can't find opcode `%s' for `%s'\n" msgstr "Error interno: no se puede encontrar el código operacional «%s» para «%s»\n" -#: config/tc-sparc.c:1264 +#: config/tc-sparc.c:1203 msgid "Support for 64-bit arithmetic not compiled in." msgstr "No se compiló el soporte para aritmética de 64-bit." -#: config/tc-sparc.c:1310 +#: config/tc-sparc.c:1249 msgid "set: number not in 0..4294967295 range" msgstr "conjunto: el número no está en el límite 0..4294967295" -#: config/tc-sparc.c:1317 +#: config/tc-sparc.c:1256 msgid "set: number not in -2147483648..4294967295 range" msgstr "conjunto: el número no está en el límite -2147483648..4294967295" -#: config/tc-sparc.c:1376 +#: config/tc-sparc.c:1315 msgid "setsw: number not in -2147483648..4294967295 range" msgstr "conjunto sw: el número no está en el límite -2147483648..4294967295" -#: config/tc-sparc.c:1424 +#: config/tc-sparc.c:1363 msgid "setx: temporary register same as destination register" msgstr "setx: el registro temporal es el mismo que el registro destino" -#: config/tc-sparc.c:1495 +#: config/tc-sparc.c:1434 msgid "setx: illegal temporary register g0" msgstr "setx: registro temporal ilegal g0" -#: config/tc-sparc.c:1603 +#: config/tc-sparc.c:1542 msgid "unpredictable DCTI couple" msgstr "pareja DCTI impredecible" -#: config/tc-sparc.c:1613 +#: config/tc-sparc.c:1552 msgid "FP branch in delay slot" msgstr "FP ramificado en ranura retrasada" -#: config/tc-sparc.c:1629 -msgid "FP branch preceded by FP instruction; NOP inserted" +#: config/tc-sparc.c:1569 +#, fuzzy +#| msgid "FP branch preceded by FP instruction; NOP inserted" +msgid "FP branch preceded by FP compare; NOP inserted" msgstr "FP ramificado precedió por instrucción FP; se insertó NOP" -#: config/tc-sparc.c:1669 +#: config/tc-sparc.c:1609 msgid "failed special case insn sanity check" -msgstr "falló prueba de sensatez de la insn case especial" +msgstr "la inspección sanitaria de la insn case especial ha fallado" -#: config/tc-sparc.c:1857 +#: config/tc-sparc.c:1797 msgid ": invalid membar mask name" msgstr ": nombre inválido de máscara membar" -#: config/tc-sparc.c:1873 +#: config/tc-sparc.c:1813 msgid ": invalid membar mask expression" msgstr ": expresión no válida de máscara membar" -#: config/tc-sparc.c:1878 +#: config/tc-sparc.c:1818 msgid ": invalid membar mask number" msgstr ": número inválido de máscara membar" -#: config/tc-sparc.c:1893 +#: config/tc-sparc.c:1833 msgid ": invalid siam mode expression" msgstr ": modo expresiva siam no válida" -#: config/tc-sparc.c:1898 +#: config/tc-sparc.c:1838 msgid ": invalid siam mode number" msgstr ": modo numérico siam inválido" -#: config/tc-sparc.c:1914 +#: config/tc-sparc.c:1854 msgid ": invalid prefetch function name" msgstr ": nombre de función de precargado inválido" -#: config/tc-sparc.c:1922 +#: config/tc-sparc.c:1862 msgid ": invalid prefetch function expression" msgstr ": expresión de función de precargado no válida" -#: config/tc-sparc.c:1927 +#: config/tc-sparc.c:1867 msgid ": invalid prefetch function number" msgstr ": número de función de precargado inválido" -#: config/tc-sparc.c:1954 config/tc-sparc.c:1960 config/tc-sparc.c:1969 +#: config/tc-sparc.c:1894 config/tc-sparc.c:1900 config/tc-sparc.c:1909 msgid ": unrecognizable privileged register" msgstr ": registro privilegiado no reconocido" -#: config/tc-sparc.c:1992 config/tc-sparc.c:1998 config/tc-sparc.c:2007 +#: config/tc-sparc.c:1932 config/tc-sparc.c:1938 config/tc-sparc.c:1947 msgid ": unrecognizable hyperprivileged register" msgstr ": registro hiperprivilegiado no reconocido" -#: config/tc-sparc.c:2030 config/tc-sparc.c:2036 config/tc-sparc.c:2045 +#: config/tc-sparc.c:1970 config/tc-sparc.c:1976 config/tc-sparc.c:1985 msgid ": unrecognizable ancillary state register" msgstr ": registro estatal auxiliar no reconocible" -#: config/tc-sparc.c:2078 +#: config/tc-sparc.c:2018 msgid ": asr number must be between 0 and 31" msgstr ": el número asr debe estar entre 0 y 31" -#: config/tc-sparc.c:2087 +#: config/tc-sparc.c:2027 #, c-format msgid ": expecting %asrN" msgstr ": suponiendo %asrN" -#: config/tc-sparc.c:2129 +#: config/tc-sparc.c:2069 msgid ": crypto immediate must be between 0 and 31" msgstr ": cripto inmediato debe estar entre 0 y 31" -#: config/tc-sparc.c:2138 +#: config/tc-sparc.c:2078 msgid ": expecting crypto immediate" msgstr ": suponiendo criptograma inmediato" -#: config/tc-sparc.c:2299 config/tc-sparc.c:2338 config/tc-sparc.c:2765 -#: config/tc-sparc.c:2801 +#: config/tc-sparc.c:2239 config/tc-sparc.c:2278 config/tc-sparc.c:2706 +#: config/tc-sparc.c:2742 #, c-format msgid "Illegal operands: %%%s requires arguments in ()" msgstr "Operandos ilegales: %%%s requiere de argumentos en ()" -#: config/tc-sparc.c:2306 +#: config/tc-sparc.c:2246 #, c-format msgid "Illegal operands: %%%s cannot be used together with other relocs in the insn ()" msgstr "Operandos ilegales: %%%s no se pueden usar junto con otras reubicaciones en la insn ()" -#: config/tc-sparc.c:2317 +#: config/tc-sparc.c:2257 #, c-format msgid "Illegal operands: %%%s can be only used with call __tls_get_addr" -msgstr "Operandos ilegales: %%%s sólo se pueden usar con la llamada __tls_get_addr" +msgstr "Operandos ilegales: %%%s solo se pueden usar con la llamada __tls_get_addr" -#: config/tc-sparc.c:2524 +#: config/tc-sparc.c:2464 msgid "detected global register use not covered by .register pseudo-op" msgstr "se detectó el uso de un registro global que no está cubierto por el pseudo-operador .register" -#: config/tc-sparc.c:2626 +#: config/tc-sparc.c:2566 msgid ": There are only 64 f registers; [0-63]" msgstr ": Solamente hay 64 registros f; [0-63]" -#: config/tc-sparc.c:2628 config/tc-sparc.c:2646 +#: config/tc-sparc.c:2568 config/tc-sparc.c:2586 msgid ": There are only 32 f registers; [0-31]" msgstr ": Solamente hay 32 registros f; [0-31]" -#: config/tc-sparc.c:2638 +#: config/tc-sparc.c:2578 msgid ": There are only 32 single precision f registers; [0-31]" msgstr ": Solamente hay 32 registros f de precisión sencilla; [0-31]" -#: config/tc-sparc.c:2659 +#: config/tc-sparc.c:2631 msgid ": Instruction requires frs2 and frsd must be the same register" msgstr ": Instrucción requiere frs2 y frsd deben estar el mismo registro" -#: config/tc-sparc.c:2810 +#: config/tc-sparc.c:2751 #, c-format msgid "Expression inside %%%s could not be parsed" msgstr "Expresión interna %%%s no pudo ser interpretado" -#: config/tc-sparc.c:2818 +#: config/tc-sparc.c:2759 #, c-format msgid "Illegal operands: Can't do arithmetics other than + and - involving %%%s()" msgstr "Operandos ilegales: No se puede hacer aritmética aparte de + y - que involucre %%%s()" -#: config/tc-sparc.c:2935 +#: config/tc-sparc.c:2876 #, c-format msgid "Illegal operands: Can't add non-constant expression to %%%s()" msgstr "Operandos ilegales: No se puede añadir una expresión que no es constante a %%%s()" -#: config/tc-sparc.c:2945 +#: config/tc-sparc.c:2886 #, c-format msgid "Illegal operands: Can't do arithmetics involving %%%s() of a relocatable symbol" msgstr "Operandos ilegales: No se puede hacer aritmética que involucre a %%%s() de un símbolo reubicable" -#: config/tc-sparc.c:2963 +#: config/tc-sparc.c:2904 msgid ": PC-relative operand can't be a constant" msgstr ": operando relativo a PC no puede ser una constante" -#: config/tc-sparc.c:2970 +#: config/tc-sparc.c:2911 msgid ": TLS operand can't be a constant" msgstr ": operando TLS no puede ser una constante" -#: config/tc-sparc.c:2998 +#: config/tc-sparc.c:2939 msgid ": Immediate value in cbcond is out of range." -msgstr ": Valor inmediato dentro de ‘cbcond’ está fuera de límite." +msgstr ": Valor inmediato dentro de ‘cbcond’ está fuera de rango." -#: config/tc-sparc.c:3024 +#: config/tc-sparc.c:2965 msgid ": invalid ASI name" msgstr ": nombre ASI inválido" -#: config/tc-sparc.c:3033 +#: config/tc-sparc.c:2974 msgid ": invalid ASI expression" msgstr ": expresión ASI no válida" -#: config/tc-sparc.c:3038 +#: config/tc-sparc.c:2979 msgid ": invalid ASI number" msgstr ": número ASI inválido" -#: config/tc-sparc.c:3143 +#: config/tc-sparc.c:3084 msgid ": non-immdiate imm2 operand" msgstr ": operando imm2 no inmediato" -#: config/tc-sparc.c:3148 +#: config/tc-sparc.c:3089 msgid ": imm2 immediate operand out of range (0-3)" -msgstr ": operando inmediato imm2 fuera de límite (0-3)" +msgstr ": operando inmediato imm2 fuera de rango (0-3)" -#: config/tc-sparc.c:3167 +#: config/tc-sparc.c:3108 msgid "OPF immediate operand out of range (0-0x1ff)" -msgstr "Operando inmediato OPF fuera de límite (0-0x1ff)" +msgstr "Operando inmediato OPF fuera de rango (0-0x1ff)" -#: config/tc-sparc.c:3172 +#: config/tc-sparc.c:3113 msgid "non-immediate OPF operand, ignored" msgstr "operando OPF que no es inmediato, se descarta" -#: config/tc-sparc.c:3191 +#: config/tc-sparc.c:3132 msgid ": invalid cpreg name" msgstr ": nombre cpreg inválido" -#: config/tc-sparc.c:3220 +#: config/tc-sparc.c:3161 #, c-format msgid "Illegal operands%s" msgstr "Operandos ilegales%s" -#: config/tc-sparc.c:3270 +#: config/tc-sparc.c:3210 #, c-format msgid "architecture bumped from \"%s\" to \"%s\" on \"%s\"" msgstr "la arquitectura saltó de «%s» a «%s» en «%s»" -#: config/tc-sparc.c:3311 +#: config/tc-sparc.c:3251 #, c-format msgid "Architecture mismatch on \"%s %s\"." msgstr "Arquitectura incoherente en \"%s %s\"." -#: config/tc-sparc.c:3312 +#: config/tc-sparc.c:3252 #, c-format msgid "(Requires %s; requested architecture is %s.)" msgstr "(Requiere %s; arquitectura solicitada es %s.)" -#: config/tc-sparc.c:3324 +#: config/tc-sparc.c:3264 #, c-format msgid "Hardware capability \"%s\" not enabled for \"%s\"." msgstr "La capacidad de hardware «%s» no se activó para «%s»." -#: config/tc-sparc.c:3753 config/tc-sparc.c:3760 config/tc-sparc.c:3767 -#: config/tc-sparc.c:3774 config/tc-sparc.c:3781 config/tc-sparc.c:3790 -#: config/tc-sparc.c:3802 config/tc-sparc.c:3813 config/tc-sparc.c:3835 -#: config/tc-sparc.c:3859 write.c:1176 +#: config/tc-sparc.c:3650 config/tc-sparc.c:3657 config/tc-sparc.c:3664 +#: config/tc-sparc.c:3671 config/tc-sparc.c:3678 config/tc-sparc.c:3687 +#: config/tc-sparc.c:3699 config/tc-sparc.c:3710 config/tc-sparc.c:3732 +#: config/tc-sparc.c:3756 write.c:1211 msgid "relocation overflow" msgstr "desbordamiento de reubicación" -#: config/tc-sparc.c:3914 +#: config/tc-sparc.c:3811 #, c-format msgid "bad or unhandled relocation type: 0x%02x" -msgstr "tipo reubicado equivocada o sin manipular: 0x%02x" +msgstr "tipo reubicado incorrecta o sin manipular: 0x%02x" -#: config/tc-sparc.c:4273 +#: config/tc-sparc.c:4126 msgid "Expected comma after name" msgstr "Se esperaba una coma tras nombre" -#: config/tc-sparc.c:4282 +#: config/tc-sparc.c:4135 #, c-format msgid "BSS length (%d.) <0! Ignored." msgstr "¡Longitud BSS (%d.) <0! Se descarta." -#: config/tc-sparc.c:4294 +#: config/tc-sparc.c:4147 msgid "bad .reserve segment -- expected BSS segment" -msgstr "segmento .reserve equivocado -- se esperaba el segmento BSS" - -#: config/tc-sparc.c:4322 -#, c-format -msgid "alignment too large; assuming %d" -msgstr "alineamiento demasiado grande; se asume %d" +msgstr "segmento .reserve incorrecto -- se esperaba el segmento BSS" -#: config/tc-sparc.c:4328 config/tc-sparc.c:4477 +#: config/tc-sparc.c:4173 config/tc-sparc.c:4300 msgid "negative alignment" msgstr "alineamiento negativa" -#: config/tc-sparc.c:4338 config/tc-sparc.c:4499 read.c:1522 read.c:2540 +#: config/tc-sparc.c:4183 config/tc-sparc.c:4321 read.c:1588 read.c:2631 msgid "alignment not a power of 2" msgstr "la alineamiento no es una potencia de 2" -#: config/tc-sparc.c:4391 +#: config/tc-sparc.c:4229 #, c-format msgid "Ignoring attempt to re-define symbol %s" msgstr "Se ignora el intento de redefinir el símbolo %s" -#: config/tc-sparc.c:4414 config/tc-v850.c:283 +#: config/tc-sparc.c:4252 config/tc-v850.c:280 msgid "Expected comma after symbol-name" msgstr "Se esperaba una coma tras nombre del símbolo" -#: config/tc-sparc.c:4424 +#: config/tc-sparc.c:4262 #, c-format msgid ".COMMon length (%lu) out of range ignored" -msgstr "longitud .COMMún (%lu) fuera de límite descartado" +msgstr "longitud .COMMún (%lu) fuera de rango descartado" -#: config/tc-sparc.c:4457 +#: config/tc-sparc.c:4288 msgid "Expected comma after common length" msgstr "Se esperaba una coma tras la longitud común" -#: config/tc-sparc.c:4471 -#, c-format -msgid "alignment too large; assuming %ld" -msgstr "alineamiento demasiado grande; se asume %ld" - -#: config/tc-sparc.c:4614 +#: config/tc-sparc.c:4433 msgid "Unknown segment type" msgstr "Tipo de segmento desconocido" -#: config/tc-sparc.c:4684 config/tc-sparc.c:4693 +#: config/tc-sparc.c:4502 config/tc-sparc.c:4511 #, c-format msgid "register syntax is .register %%g[2367],{#scratch|symbolname|#ignore}" msgstr "la sintaxis de registro es .register %%g[2367],{#scratch|nombresimbolo|#ignore}" -#: config/tc-sparc.c:4711 +#: config/tc-sparc.c:4529 msgid "redefinition of global register" msgstr "redefinición del registro global" -#: config/tc-sparc.c:4722 +#: config/tc-sparc.c:4540 #, c-format msgid "Register symbol %s already defined." msgstr "El símbolo de registro %s ya estaba definido." -#: config/tc-sparc.c:4926 +#: config/tc-sparc.c:4742 #, c-format msgid "Illegal operands: %%r_plt in %d-byte data field" msgstr "Operandos ilegales: %%r_plt en el campo de datos de %d-bytes" -#: config/tc-sparc.c:4936 +#: config/tc-sparc.c:4752 #, c-format msgid "Illegal operands: %%r_tls_dtpoff in %d-byte data field" msgstr "Operandos ilegales: %%r_tls_dtpoff en el campo de datos de %d-bytes" -#: config/tc-sparc.c:4973 config/tc-vax.c:3317 +#: config/tc-sparc.c:4789 config/tc-vax.c:3271 #, c-format msgid "Illegal operands: Only %%r_%s%d allowed in %d-byte data fields" -msgstr "Operandos ilegales: sólo se permite %%r_%s%d en campos de datos de %d-bytes" +msgstr "Operandos ilegales: solo se permite %%r_%s%d en campos de datos de %d-bytes" -#: config/tc-sparc.c:4981 config/tc-sparc.c:5012 config/tc-sparc.c:5021 -#: config/tc-vax.c:3325 config/tc-vax.c:3356 config/tc-vax.c:3365 +#: config/tc-sparc.c:4797 config/tc-sparc.c:4828 config/tc-sparc.c:4837 +#: config/tc-vax.c:3279 config/tc-vax.c:3310 config/tc-vax.c:3319 #, c-format msgid "Illegal operands: %%r_%s%d requires arguments in ()" msgstr "Operandos ilegales: %%r_%s%d requiere argumentos en ()" -#: config/tc-sparc.c:5030 config/tc-vax.c:3374 +#: config/tc-sparc.c:4846 config/tc-vax.c:3328 #, c-format msgid "Illegal operands: garbage after %%r_%s%d()" msgstr "Operandos ilegales: hay basura tras %%r_%s%d()" -#: config/tc-sparc.h:63 +#: config/tc-sparc.h:66 msgid "sparc convert_frag\n" msgstr "convert_frag de sparc\n" -#: config/tc-sparc.h:65 config/tc-z80.h:53 +#: config/tc-sparc.h:68 config/tc-z80.h:54 msgid "estimate_size_before_relax called" msgstr "se llamó a estimate_size_before_relax" -#: config/tc-spu.c:130 -#, c-format -msgid "Can't hash instruction '%s':%s" -msgstr "No se puede dispersar la instrucción «%s»:%s" - -#: config/tc-spu.c:184 +#: config/tc-spu.c:172 msgid "" "SPU options:\n" " --apuasm\t\t emulate behaviour of apuasm\n" @@ -16646,68 +19199,68 @@ msgstr "" "Opciones de SPU:\n" " --apuasm\t\t emula el comportamiento de apuasm\n" -#: config/tc-spu.c:290 +#: config/tc-spu.c:278 #, c-format msgid "Invalid mnemonic '%s'" msgstr "Mnemónico inválido «%s»" -#: config/tc-spu.c:296 +#: config/tc-spu.c:284 #, c-format msgid "'%s' is only available in DD2.0 or higher." -msgstr "«%s» sólo es disponible en DD2.0 o superior." +msgstr "«%s» solo es disponible en DD2.0 o superior." -#: config/tc-spu.c:328 +#: config/tc-spu.c:316 #, c-format msgid "Error in argument %d. Expecting: \"%s\"" msgstr "Error en el argumento %d. Se esperaba: «%s»" -#: config/tc-spu.c:339 +#: config/tc-spu.c:327 msgid "Mixing register syntax, with and without '$'." msgstr "Se mezcla la sintaxis del registro, con y sin '$'." -#: config/tc-spu.c:345 +#: config/tc-spu.c:333 #, c-format msgid "Treating '%-*s' as a symbol." msgstr "Tratando '%-*s' como un símbolo." -#: config/tc-spu.c:564 +#: config/tc-spu.c:552 msgid "'SPU_RdEventMask' (channel 11) is only available in DD2.0 or higher." -msgstr "'SPU_RdEventMask' (canal 11) sólo es disponible en DD2.0 o superior." +msgstr "'SPU_RdEventMask' (canal 11) solo es disponible en DD2.0 o superior." -#: config/tc-spu.c:566 +#: config/tc-spu.c:554 msgid "'MFC_RdTagMask' (channel 12) is only available in DD2.0 or higher." -msgstr "'MFC_RdTagMask' (canal 12) sólo es disponible en DD2.0 o superior." +msgstr "'MFC_RdTagMask' (canal 12) solo es disponible en DD2.0 o superior." -#: config/tc-spu.c:609 +#: config/tc-spu.c:598 #, c-format msgid "Using old style, %%lo(expr), please change to PPC style, expr@l." msgstr "Utilizando estilo antiguo, %%lo(expr), por favor modifique al estilo PPC, expr@l." -#: config/tc-spu.c:615 +#: config/tc-spu.c:604 #, c-format msgid "Using old style, %%hi(expr), please change to PPC style, expr@h." msgstr "Utilizando estilo antiguo, %%hi(expr), por favor modifique al estilo PPC, expr@h." -#: config/tc-spu.c:685 config/tc-spu.c:688 +#: config/tc-spu.c:674 config/tc-spu.c:677 #, c-format msgid "Constant expression %d out of range, [%d, %d]." -msgstr "Expresión constante %d fuera de límite, [%d, %d]." +msgstr "Expresión constante %d fuera de rango, [%d, %d]." -#: config/tc-spu.c:790 +#: config/tc-spu.c:779 #, c-format msgid "invalid priority '%lu'" msgstr "prioridad no válida '%lu'" -#: config/tc-spu.c:796 +#: config/tc-spu.c:785 #, c-format msgid "invalid lrlive '%lu'" msgstr "invalida ‘lrlive’ '%lu'" -#: config/tc-spu.c:855 +#: config/tc-spu.c:859 msgid "Relaxation should never occur" msgstr "La relajación nunca debe ocurrir" -#: config/tc-spu.c:1005 +#: config/tc-spu.c:1004 #, c-format msgid "Relocation doesn't fit. (relocation value = 0x%lx)" msgstr "La reubicación no cabe. (valor reubicado = 0x%lx)" @@ -16736,387 +19289,387 @@ msgstr "cuarto" msgid "fifth" msgstr "quinto" -#: config/tc-tic30.c:482 +#: config/tc-tic30.c:460 msgid "More than one AR register found in indirect reference" msgstr "Se encontró más un registro AR en la referencia indirecta" -#: config/tc-tic30.c:488 +#: config/tc-tic30.c:466 msgid "Illegal AR register in indirect reference" msgstr "Registro AR ilegal en la referencia indirecta" -#: config/tc-tic30.c:509 +#: config/tc-tic30.c:487 msgid "More than one displacement found in indirect reference" msgstr "Se encontró más de un desplazamiento en la referencia indirecta" -#: config/tc-tic30.c:518 +#: config/tc-tic30.c:496 msgid "Invalid displacement in indirect reference" msgstr "Desplazamiento inválido en la referencia indirecta" -#: config/tc-tic30.c:536 +#: config/tc-tic30.c:514 msgid "AR register not found in indirect reference" msgstr "No se encontró el registro AR en la referencia indirecta" #. Maybe an implied displacement of 1 again. -#: config/tc-tic30.c:553 +#: config/tc-tic30.c:531 msgid "required displacement wasn't given in indirect reference" msgstr "no se dio el desplazamiento requerido en la referencia indirecta" -#: config/tc-tic30.c:560 +#: config/tc-tic30.c:538 msgid "illegal indirect reference" msgstr "referencia indirecta ilegal" -#: config/tc-tic30.c:567 +#: config/tc-tic30.c:545 msgid "displacement must be an unsigned 8-bit number" msgstr "el desplazamiento debe ser un número de 8-bit sin signo" -#: config/tc-tic30.c:751 config/tc-tic30.c:1498 +#: config/tc-tic30.c:729 config/tc-tic30.c:1475 #, c-format msgid "Invalid character %s before %s operand" msgstr "Carácter inválido %s antes de operando %s" -#: config/tc-tic30.c:770 config/tc-tic30.c:1513 +#: config/tc-tic30.c:748 config/tc-tic30.c:1490 #, c-format msgid "Unbalanced parenthesis in %s operand." msgstr "Paréntesis sin balancear en operando %s." -#: config/tc-tic30.c:786 config/tc-tic30.c:1523 +#: config/tc-tic30.c:764 config/tc-tic30.c:1500 #, c-format msgid "Invalid character %s in %s operand" msgstr "Carácter inválido %s en operando %s" -#: config/tc-tic30.c:805 config/tc-tic30.c:1540 +#: config/tc-tic30.c:783 config/tc-tic30.c:1517 #, c-format msgid "Spurious operands; (%d operands/instruction max)" msgstr "Operandos espurios; (%d operandos/instrucción máximo)" #. Just skip it, if it's \n complain. -#: config/tc-tic30.c:823 config/tc-tic30.c:839 config/tc-tic30.c:1557 -#: config/tc-tic30.c:1573 +#: config/tc-tic30.c:801 config/tc-tic30.c:817 config/tc-tic30.c:1534 +#: config/tc-tic30.c:1550 msgid "Expecting operand after ','; got nothing" msgstr "Se esperaba un operando tras ','; se obtuvo nada" -#: config/tc-tic30.c:828 config/tc-tic30.c:1562 +#: config/tc-tic30.c:806 config/tc-tic30.c:1539 msgid "Expecting operand before ','; got nothing" msgstr "Se esperaba un operando antes de ','; se obtuvo nada" -#: config/tc-tic30.c:866 +#: config/tc-tic30.c:844 msgid "incorrect number of operands given in the first instruction" msgstr "número de operandos dados incorrecto en la primera instrucción" -#: config/tc-tic30.c:872 +#: config/tc-tic30.c:850 msgid "incorrect number of operands given in the second instruction" msgstr "número de operandos dados incorrecto en la segunda instrucción" -#: config/tc-tic30.c:893 +#: config/tc-tic30.c:871 #, c-format msgid "%s instruction, operand %d doesn't match" msgstr "instrucción %s, operando %d no coincide" #. Shouldn't get here. -#: config/tc-tic30.c:917 config/tc-tic30.c:924 +#: config/tc-tic30.c:895 config/tc-tic30.c:902 msgid "incorrect format for multiply parallel instruction" msgstr "formato incorrecto para la instrucción paralela multiply" -#: config/tc-tic30.c:931 +#: config/tc-tic30.c:909 msgid "destination for multiply can only be R0 or R1" -msgstr "el destino para multiply sólo puede ser R0 o R1" +msgstr "el destino para multiply solo puede ser R0 o R1" -#: config/tc-tic30.c:938 +#: config/tc-tic30.c:916 msgid "destination for add/subtract can only be R2 or R3" -msgstr "el destino para add/substract sólo puede ser R2 o R3" +msgstr "el destino para add/substract solo puede ser R2 o R3" -#: config/tc-tic30.c:1005 +#: config/tc-tic30.c:983 msgid "loading the same register in parallel operation" msgstr "se carga el mismo registro en la operación paralela" -#: config/tc-tic30.c:1448 +#: config/tc-tic30.c:1425 #, c-format msgid "Invalid character %s in opcode" msgstr "Carácter inválido %s en el código operacional" -#: config/tc-tic30.c:1478 +#: config/tc-tic30.c:1455 #, c-format msgid "Unknown TMS320C30 instruction: %s" msgstr "Instrucción TMS320C30 desconocida: %s" -#: config/tc-tic30.c:1598 +#: config/tc-tic30.c:1575 msgid "Incorrect number of operands given" msgstr "Número incorrecto de operandos dados" -#: config/tc-tic30.c:1631 +#: config/tc-tic30.c:1608 #, c-format msgid "The %s operand doesn't match" msgstr "Operando %s no coincide" #. Shouldn't make it to this stage. -#: config/tc-tic30.c:1656 config/tc-tic30.c:1668 +#: config/tc-tic30.c:1633 config/tc-tic30.c:1645 msgid "Incompatible first and second operands in instruction" msgstr "Primer y segundo operandos incompatibles en la instrucción" -#: config/tc-tic30.c:1782 +#: config/tc-tic30.c:1759 msgid "invalid short form floating point immediate operand" msgstr "forma short no válida de operando inmediato de coma flotante" -#: config/tc-tic30.c:1792 +#: config/tc-tic30.c:1769 msgid "rounding down first operand float to unsigned int" msgstr "se redondea hacia abajo el primer operando de coma flotante a entero sin signo" -#: config/tc-tic30.c:1794 +#: config/tc-tic30.c:1771 msgid "only lower 16-bits of first operand are used" -msgstr "sólo se usan los 16 bits inferiores del primer operando" +msgstr "solo se usan los 16 bits inferiores del primer operando" -#: config/tc-tic30.c:1804 +#: config/tc-tic30.c:1781 msgid "rounding down first operand float to signed int" msgstr "se redondea hacia aboajo el primer operando de coma flotante a entero con signo" -#: config/tc-tic30.c:1809 config/tc-tic30.c:1880 +#: config/tc-tic30.c:1786 config/tc-tic30.c:1857 msgid "first operand is too large for 16-bit signed int" msgstr "el primer operando es demasiado grande para entero con signo de 16-bit" -#: config/tc-tic30.c:1874 +#: config/tc-tic30.c:1851 msgid "first operand is floating point" msgstr "el primer operando es número de coma flotante" #. Shouldn't get here. -#: config/tc-tic30.c:1905 +#: config/tc-tic30.c:1882 msgid "interrupt vector for trap instruction out of range" -msgstr "el vector de interrupción para la instrucción trap está fuera de límite" +msgstr "el vector de interrupción para la instrucción trap está fuera de rango" -#: config/tc-tic30.c:1950 +#: config/tc-tic30.c:1927 msgid "LDP instruction needs a 24-bit operand" msgstr "La instrucción LDP requiere un operando de 24-bit" -#: config/tc-tic30.c:1974 +#: config/tc-tic30.c:1951 msgid "first operand is too large for a 24-bit displacement" msgstr "el primer operando es demasiado grande para un desplazamiento de 24-bit" -#: config/tc-tic4x.c:392 +#: config/tc-tic4x.c:390 msgid "Nan, using zero." msgstr "Nan, se usa cero." -#: config/tc-tic4x.c:514 +#: config/tc-tic4x.c:508 #, c-format msgid "Cannot represent exponent in %d bits" msgstr "No se puede representar el exponente en %d bits" -#: config/tc-tic4x.c:597 config/tc-tic4x.c:607 +#: config/tc-tic4x.c:591 config/tc-tic4x.c:601 msgid "Invalid floating point number" msgstr "Número de coma flotante inválido" -#: config/tc-tic4x.c:726 +#: config/tc-tic4x.c:722 msgid "Comma expected\n" msgstr "Se esperaba una coma\n" -#: config/tc-tic4x.c:762 config/tc-tic54x.c:471 +#: config/tc-tic4x.c:756 config/tc-tic54x.c:498 msgid ".bss size argument missing\n" msgstr "Ausente el tamaño del argumento .bss\n" -#: config/tc-tic4x.c:770 +#: config/tc-tic4x.c:764 #, c-format msgid ".bss size %ld < 0!" msgstr "¡Tamaño de .bss %ld < 0!" -#: config/tc-tic4x.c:903 +#: config/tc-tic4x.c:897 msgid "Non-constant symbols not allowed\n" msgstr "No se permiten símbolos que no sean constantes\n" -#: config/tc-tic4x.c:934 +#: config/tc-tic4x.c:928 msgid "Symbol missing\n" msgstr "Ausente símbolo\n" #. Skip null symbol terminator. -#: config/tc-tic4x.c:982 +#: config/tc-tic4x.c:976 msgid ".sect: subsection name ignored" msgstr ".sect: se ignora el nombre de la subsección" -#: config/tc-tic4x.c:1010 config/tc-tic4x.c:1111 config/tc-tic54x.c:1424 +#: config/tc-tic4x.c:1004 config/tc-tic4x.c:1105 config/tc-tic54x.c:1482 #, c-format msgid "Error setting flags for \"%s\": %s" msgstr "Error al establecer las casillas para «%s»: %s" -#: config/tc-tic4x.c:1042 +#: config/tc-tic4x.c:1036 msgid ".set syntax invalid\n" msgstr "sintaxis de .set no válida\n" -#: config/tc-tic4x.c:1100 +#: config/tc-tic4x.c:1094 msgid ".usect: non-zero alignment flag ignored" msgstr ".usect: se descarta la opción de alineamiento que no es cero" -#: config/tc-tic4x.c:1131 +#: config/tc-tic4x.c:1125 #, c-format msgid "This assembler does not support processor generation %ld" msgstr "Este ensamblador no admite la generación de procesador %ld" -#: config/tc-tic4x.c:1135 +#: config/tc-tic4x.c:1129 msgid "Changing processor generation on fly not supported..." msgstr "No se admite la generación de cambio del procesador al vuelo..." -#: config/tc-tic4x.c:1433 +#: config/tc-tic4x.c:1416 msgid "Auxiliary register AR0--AR7 required for indirect" msgstr "Se requiere un registro auxiliar AR0--AR7 para el indirecto" -#: config/tc-tic4x.c:1447 +#: config/tc-tic4x.c:1430 #, c-format msgid "Bad displacement %d (require 0--255)\n" -msgstr "Desplazamiento %d equivocado (se requiere 0--255)\n" +msgstr "Desplazamiento %d incorrecto (se requiere 0--255)\n" -#: config/tc-tic4x.c:1465 +#: config/tc-tic4x.c:1448 msgid "Index register IR0,IR1 required for displacement" msgstr "Se requiere un registro índice IR0,IR1 para el desplazamiento" -#: config/tc-tic4x.c:1533 +#: config/tc-tic4x.c:1516 msgid "Expecting a register name" msgstr "Se espera un nombre de registro" -#: config/tc-tic4x.c:1545 config/tc-tic4x.c:1568 config/tc-tic4x.c:1634 +#: config/tc-tic4x.c:1528 config/tc-tic4x.c:1551 config/tc-tic4x.c:1617 msgid "Number too large" msgstr "Número demasiado grande" -#: config/tc-tic4x.c:1558 config/tc-tic4x.c:1581 +#: config/tc-tic4x.c:1541 config/tc-tic4x.c:1564 msgid "Expecting a constant value" msgstr "Se espera un valor constante" -#: config/tc-tic4x.c:1589 +#: config/tc-tic4x.c:1572 #, c-format msgid "Bad direct addressing construct %s" -msgstr "Construcción de direccionamiento directo %s equivocada" +msgstr "Construcción de direccionamiento directo %s incorrecta" -#: config/tc-tic4x.c:1593 +#: config/tc-tic4x.c:1576 #, c-format msgid "Direct value of %ld is not suitable" msgstr "El valor directo de %ld no es adecuado" -#: config/tc-tic4x.c:1617 +#: config/tc-tic4x.c:1600 msgid "Unknown indirect addressing mode" msgstr "Desconoce modo de direccionamiento indirecto %s" -#: config/tc-tic4x.c:1714 +#: config/tc-tic4x.c:1697 #, c-format msgid "Immediate value of %ld is too large for ldf" msgstr "El valor inmediato de %ld es demasiado grande para ldf" -#: config/tc-tic4x.c:1754 +#: config/tc-tic4x.c:1737 msgid "Destination register must be ARn" msgstr "El registro destino debe ser ARn" -#: config/tc-tic4x.c:1773 config/tc-tic4x.c:2146 config/tc-tic4x.c:2205 +#: config/tc-tic4x.c:1756 config/tc-tic4x.c:2129 config/tc-tic4x.c:2188 #, c-format msgid "Immediate value of %ld is too large" msgstr "El valor inmediato de %ld es demasiado grande" -#: config/tc-tic4x.c:1802 config/tc-tic4x.c:2007 +#: config/tc-tic4x.c:1785 config/tc-tic4x.c:1990 msgid "Invalid indirect addressing mode" msgstr "Modo de direccionamiento indirecto inválido" -#: config/tc-tic4x.c:1826 config/tc-tic4x.c:1866 config/tc-tic4x.c:2057 -#: config/tc-tic4x.c:2079 +#: config/tc-tic4x.c:1809 config/tc-tic4x.c:1849 config/tc-tic4x.c:2040 +#: config/tc-tic4x.c:2062 msgid "Register must be Rn" msgstr "El registro debe ser Rn" -#: config/tc-tic4x.c:1880 config/tc-tic4x.c:1950 config/tc-tic4x.c:1964 +#: config/tc-tic4x.c:1863 config/tc-tic4x.c:1933 config/tc-tic4x.c:1947 msgid "Register must be R0--R7" msgstr "El registro debe ser R0--R7" -#: config/tc-tic4x.c:1904 config/tc-tic4x.c:1932 +#: config/tc-tic4x.c:1887 config/tc-tic4x.c:1915 #, c-format msgid "Invalid indirect addressing mode displacement %d" msgstr "Desplazamiento de modo de direccionamiento indirecto %d inválido" -#: config/tc-tic4x.c:1978 +#: config/tc-tic4x.c:1961 msgid "Destination register must be R2 or R3" msgstr "El registro destino debe ser R2 o R3" -#: config/tc-tic4x.c:1992 +#: config/tc-tic4x.c:1975 msgid "Destination register must be R0 or R1" msgstr "El registro destino debe ser R0 o R1" -#: config/tc-tic4x.c:2029 +#: config/tc-tic4x.c:2012 #, c-format msgid "Displacement value of %ld is too large" msgstr "El valor de desplazamiento de %ld es demasiado grande" -#: config/tc-tic4x.c:2090 config/tc-tic4x.c:2221 +#: config/tc-tic4x.c:2073 config/tc-tic4x.c:2204 msgid "Floating point number not valid in expression" msgstr "El número de coma flotante no es válido en la expresión" -#: config/tc-tic4x.c:2104 +#: config/tc-tic4x.c:2087 #, c-format msgid "Signed immediate value %ld too large" msgstr "El valor inmediato con signo %ld es demasiado grande" -#: config/tc-tic4x.c:2167 +#: config/tc-tic4x.c:2150 #, c-format msgid "Unsigned immediate value %ld too large" msgstr "El valor inmediato sin signo %ld es demasiado grande" -#: config/tc-tic4x.c:2235 +#: config/tc-tic4x.c:2218 #, c-format msgid "Immediate value %ld too large" msgstr "El valor inmediato de %ld es demasiado grande" -#: config/tc-tic4x.c:2254 config/tc-tic4x.c:2282 +#: config/tc-tic4x.c:2237 config/tc-tic4x.c:2265 msgid "Register must be ivtp or tvtp" msgstr "El registro debe ser ivtp o tvtp" -#: config/tc-tic4x.c:2268 +#: config/tc-tic4x.c:2251 msgid "Register must be address register" msgstr "El registro debe ser un registro direccional" -#: config/tc-tic4x.c:2341 +#: config/tc-tic4x.c:2324 msgid "Source and destination register should not be equal" msgstr "Los registros fuente y destino no deben ser iguales" -#: config/tc-tic4x.c:2356 +#: config/tc-tic4x.c:2339 #, fuzzy #| msgid "Equal parallell destination registers, one result will be discarded" msgid "Equal parallel destination registers, one result will be discarded" msgstr "Los registros de destino paralelo son iguales, un resultado se descartará" -#: config/tc-tic4x.c:2397 +#: config/tc-tic4x.c:2380 msgid "Too many operands scanned" msgstr "Se analizaron demasiados operandos" -#: config/tc-tic4x.c:2428 +#: config/tc-tic4x.c:2411 msgid "Parallel opcode cannot contain more than two instructions" msgstr "El código operacional paralelo no puede contener más de dos instrucciones" -#: config/tc-tic4x.c:2501 +#: config/tc-tic4x.c:2485 #, c-format msgid "Invalid operands for %s" msgstr "Operandos inválidos para %s" -#: config/tc-tic4x.c:2504 +#: config/tc-tic4x.c:2488 #, c-format msgid "Invalid instruction %s" msgstr "Instrucción %s no válida" -#: config/tc-tic4x.c:2656 +#: config/tc-tic4x.c:2640 #, c-format msgid "Bad relocation type: 0x%02x" -msgstr "Tipo de reubicación equivocado: 0x%02x" +msgstr "Tipo de reubicación incorrecto: 0x%02x" -#: config/tc-tic4x.c:2714 +#: config/tc-tic4x.c:2698 #, c-format msgid "Unsupported processor generation %d" msgstr "No se admite la generación de procesador %d" -#: config/tc-tic4x.c:2722 +#: config/tc-tic4x.c:2706 msgid "Option -b is depreciated, please use -mbig" msgstr "La opción -b es obsoleta, por favor utilice -mbig" -#: config/tc-tic4x.c:2729 +#: config/tc-tic4x.c:2713 msgid "Option -p is depreciated, please use -mmemparm" msgstr "La opción -p es obsoleta, por favor utilice -mmemparm" -#: config/tc-tic4x.c:2736 +#: config/tc-tic4x.c:2720 msgid "Option -r is depreciated, please use -mregparm" msgstr "La opción -r es obsoleta, por favor utilice -mregparm" -#: config/tc-tic4x.c:2743 +#: config/tc-tic4x.c:2727 msgid "Option -s is depreciated, please use -msmall" msgstr "La opción -s es obsoleta, por favor utilice -msmall" -#: config/tc-tic4x.c:2772 +#: config/tc-tic4x.c:2756 #, c-format msgid "" "\n" @@ -17161,433 +19714,439 @@ msgstr "" " -mlowpower activa el soporte para LOPOWER y MAXSPEED\n" " -menhanced activa el soporte para códigos operacionales mejorados\n" -#: config/tc-tic4x.c:2817 +#: config/tc-tic4x.c:2801 #, c-format msgid "Label \"$%d\" redefined" msgstr "Etiqueta «$%d» redefinida" -#: config/tc-tic4x.c:3027 +#: config/tc-tic4x.c:3010 #, c-format msgid "Reloc %d not supported by object file format" msgstr "El formato del fichero objeto no admite la reubicación %d" #. Only word (et al.), align, or conditionals are allowed within #. .struct/.union. -#: config/tc-tic54x.c:219 +#: config/tc-tic54x.c:242 msgid "pseudo-op illegal within .struct/.union" msgstr "pseudo-operación ilegal dentro de .struct/.union" -#: config/tc-tic54x.c:233 +#: config/tc-tic54x.c:256 #, c-format msgid "C54x-specific command line options:\n" msgstr "Opciones de línea de mandatos específicas de C54x:\n" -#: config/tc-tic54x.c:234 +#: config/tc-tic54x.c:257 #, c-format msgid "-mfar-mode | -mf Use extended addressing\n" msgstr "-mfar-mode | -mf Utiliza direccionamiento extendido\n" -#: config/tc-tic54x.c:235 +#: config/tc-tic54x.c:258 #, c-format msgid "-mcpu=<CPU version> Specify the CPU version\n" msgstr "-mcpu=<versión CPU> Especifica la versión del CPU\n" -#: config/tc-tic54x.c:236 +#: config/tc-tic54x.c:259 #, c-format msgid "-merrors-to-file <filename>\n" msgstr "-merrors-to-file <nombre fichero>\n" -#: config/tc-tic54x.c:237 +#: config/tc-tic54x.c:260 #, c-format msgid "-me <filename> Redirect errors to a file\n" msgstr "-me <nombre fichero> Redirige los errores a un fichero\n" -#: config/tc-tic54x.c:348 +#: config/tc-tic54x.c:373 msgid "Comma and symbol expected for '.asg STRING, SYMBOL'" msgstr "Se esperaban una coma y un símbolo para '.asg CADENA, SÍMBOLO'" -#: config/tc-tic54x.c:357 +#: config/tc-tic54x.c:385 msgid "symbols assigned with .asg must begin with a letter" msgstr "los símbolos asignados con .asg deben comenzar con una letra" -#: config/tc-tic54x.c:397 +#: config/tc-tic54x.c:423 msgid "Unterminated string after absolute expression" msgstr "Cadena sin terminar tras una expresión absoluta" -#: config/tc-tic54x.c:405 +#: config/tc-tic54x.c:431 msgid "Comma and symbol expected for '.eval EXPR, SYMBOL'" msgstr "Se esperaban una coma y un símbolo para '.eval EXPR, SÍMBOLO'" -#: config/tc-tic54x.c:415 +#: config/tc-tic54x.c:439 msgid "symbols assigned with .eval must begin with a letter" msgstr "los símbolos asignados con .eval deben comenzar con una letra" -#: config/tc-tic54x.c:480 +#: config/tc-tic54x.c:507 #, c-format msgid ".bss size %d < 0!" msgstr "¡Tamaño de .bss %d < 0!" -#: config/tc-tic54x.c:662 +#: config/tc-tic54x.c:693 msgid "Offset on nested structures is ignored" msgstr "Se descarta el desplazamiento en estructuras anidadas" -#: config/tc-tic54x.c:712 +#: config/tc-tic54x.c:743 #, c-format msgid ".end%s without preceding .%s" msgstr ".end%s sin un .%s precedente" -#: config/tc-tic54x.c:778 +#: config/tc-tic54x.c:809 #, c-format msgid "Unrecognized struct/union tag '%s'" msgstr "No reconocida la marca de struct/union «%s»" -#: config/tc-tic54x.c:780 +#: config/tc-tic54x.c:811 msgid ".tag requires a structure tag" msgstr ".tag requiere una estructura tag" -#: config/tc-tic54x.c:786 +#: config/tc-tic54x.c:817 msgid "Label required for .tag" msgstr "Se requiere una etiqueta para .tag" -#: config/tc-tic54x.c:805 +#: config/tc-tic54x.c:836 #, c-format msgid ".tag target '%s' undefined" msgstr "el objetivo .tag «%s» no está definido" -#: config/tc-tic54x.c:869 +#: config/tc-tic54x.c:900 #, c-format msgid ".field count '%d' out of range (1 <= X <= 32)" -msgstr "la cuenta de .field '%d' está fuera de límite (1 ≤ X ≤ 32)" +msgstr "la cuenta de .field '%d' está fuera de rango (1 ≤ X ≤ 32)" -#: config/tc-tic54x.c:897 +#: config/tc-tic54x.c:928 #, c-format msgid "Unrecognized field type '%c'" msgstr "No reconocido el tipo de campo '%c'" -#: config/tc-tic54x.c:1021 +#: config/tc-tic54x.c:1052 msgid "Overflow in expression, truncated to 8 bits" msgstr "Desbordamiento en la expresión, se trunca a 8 bit" -#: config/tc-tic54x.c:1026 +#: config/tc-tic54x.c:1057 msgid "Overflow in expression, truncated to 16 bits" msgstr "Desbordamiento en la expresión, se trunca a 16 bit" #. Disallow .byte with a non constant expression that will #. require relocation. -#: config/tc-tic54x.c:1034 +#: config/tc-tic54x.c:1065 msgid "Relocatable values require at least WORD storage" msgstr "Los valores reubicables requieren por lo menos almacenamiento WORD" -#: config/tc-tic54x.c:1095 +#: config/tc-tic54x.c:1126 msgid "Use of .def/.ref is deprecated. Use .global instead" msgstr "El uso de .def/.ref es obsoleto. Utilice en su lugar .global" -#: config/tc-tic54x.c:1287 +#: config/tc-tic54x.c:1345 msgid ".space/.bes repeat count is negative, ignored" msgstr "La cuenta de repetición .space/.bes es negativa, se descarta" -#: config/tc-tic54x.c:1292 +#: config/tc-tic54x.c:1350 msgid ".space/.bes repeat count is zero, ignored" msgstr "La cuenta de repetición .space/.bes es cero, se descarta" -#: config/tc-tic54x.c:1365 +#: config/tc-tic54x.c:1423 msgid "Missing size argument" msgstr "Ausente el tamaño del argumento" -#: config/tc-tic54x.c:1499 +#: config/tc-tic54x.c:1557 msgid "CPU version has already been set" msgstr "La versión de CPU ya se había establecido" -#: config/tc-tic54x.c:1503 +#: config/tc-tic54x.c:1561 #, c-format msgid "Unrecognized version '%s'" msgstr "Versión no reconocida «%s»" -#: config/tc-tic54x.c:1509 +#: config/tc-tic54x.c:1567 msgid "Changing of CPU version on the fly not supported" msgstr "No se admite mmodificar la versión del CPU al vuelo" -#: config/tc-tic54x.c:1640 +#: config/tc-tic54x.c:1698 msgid "p2align not supported on this target" msgstr "No se admite p2align en este destino" -#: config/tc-tic54x.c:1652 +#: config/tc-tic54x.c:1710 msgid "Argument to .even ignored" msgstr "Se descarta el argumento para .even" -#: config/tc-tic54x.c:1698 +#: config/tc-tic54x.c:1756 msgid "Invalid field size, must be from 1 to 32" msgstr "Tamaño de campo inválido, debe ser de 1 a 32" -#: config/tc-tic54x.c:1711 +#: config/tc-tic54x.c:1769 msgid "field size must be 16 when value is relocatable" msgstr "el tamaño del campo debe ser 16 cuando el valor es reubicable" -#: config/tc-tic54x.c:1726 +#: config/tc-tic54x.c:1784 msgid "field value truncated" msgstr "se trunca valor del campo" -#: config/tc-tic54x.c:1832 config/tc-tic54x.c:2131 +#: config/tc-tic54x.c:1890 config/tc-tic54x.c:2176 #, c-format msgid "Unrecognized section '%s'" msgstr "No reconocida sección «%s»" -#: config/tc-tic54x.c:1841 +#: config/tc-tic54x.c:1899 msgid "Current section is uninitialized, section name required for .clink" -msgstr "La sección actual está no inicializada, se requirió el nombre seccional para .clink" +msgstr "La sección actual está no inicializada, se requirió el nombre de sección para .clink" -#: config/tc-tic54x.c:2042 +#: config/tc-tic54x.c:2087 msgid "ENDLOOP without corresponding LOOP" msgstr "ENDLOOP sin un LOOP correspondiente" -#: config/tc-tic54x.c:2083 +#: config/tc-tic54x.c:2128 msgid "Mixing of normal and extended addressing not supported" msgstr "No se admite la mezcla de direccionamiento normal y extendido" -#: config/tc-tic54x.c:2089 +#: config/tc-tic54x.c:2134 msgid "Extended addressing not supported on the specified CPU" msgstr "No se admite el direccionamiento extendido en el CPU especificado" -#: config/tc-tic54x.c:2137 +#: config/tc-tic54x.c:2182 msgid ".sblock may be used for initialized sections only" msgstr ".sblock se puede utilizar únicamente para secciones inicializadas" -#: config/tc-tic54x.c:2167 +#: config/tc-tic54x.c:2212 msgid "Symbol missing for .set/.equ" msgstr "Ausente el símbolo para .set/.equ" -#: config/tc-tic54x.c:2223 +#: config/tc-tic54x.c:2267 msgid ".var may only be used within a macro definition" msgstr ".var solamente se puede usar dentro de una definición de macro" -#: config/tc-tic54x.c:2231 +#: config/tc-tic54x.c:2275 msgid "Substitution symbols must begin with a letter" msgstr "Los símbolos de sustitución deben empezar con una letra" -#: config/tc-tic54x.c:2323 +#: config/tc-tic54x.c:2354 #, c-format msgid "can't open macro library file '%s' for reading: %s" msgstr "no se puede abrir el fichero de biblioteca de macro «%s» para lectura: %s" -#: config/tc-tic54x.c:2330 +#: config/tc-tic54x.c:2361 #, c-format msgid "File '%s' not in macro archive format" msgstr "El fichero «%s» no está en el formato de archivo de macro" -#: config/tc-tic54x.c:2460 +#: config/tc-tic54x.c:2491 #, c-format msgid "Bad COFF version '%s'" -msgstr "Versión COFF equivocada «%s»" +msgstr "Versión COFF incorrecta «%s»" -#: config/tc-tic54x.c:2469 +#: config/tc-tic54x.c:2500 #, c-format msgid "Bad CPU version '%s'" -msgstr "Versión CPU equivocada '%s'" +msgstr "Versión CPU incorrecta '%s'" -#: config/tc-tic54x.c:2482 config/tc-tic54x.c:2485 +#: config/tc-tic54x.c:2513 config/tc-tic54x.c:2516 #, c-format msgid "Can't redirect stderr to the file '%s'" msgstr "No se puede redirigir la salida de error estándar al fichero «%s»" -#: config/tc-tic54x.c:2598 +#: config/tc-tic54x.c:2535 +#, fuzzy +#| msgid "macros nested too deeply" +msgid "Macro nesting is too deep" +msgstr "macros anidadas con demasiada profundidad" + +#: config/tc-tic54x.c:2638 #, c-format msgid "Undefined substitution symbol '%s'" msgstr "Símbolo sustitucional sin definir «%s»" -#: config/tc-tic54x.c:3099 +#: config/tc-tic54x.c:3121 #, c-format msgid "Unbalanced parenthesis in operand %d" msgstr "Paréntesis sin balancear en operando %d" -#: config/tc-tic54x.c:3130 config/tc-tic54x.c:3138 +#: config/tc-tic54x.c:3152 config/tc-tic54x.c:3160 msgid "Expecting operand after ','" msgstr "Se esperaba un operando tras ','" -#: config/tc-tic54x.c:3149 +#: config/tc-tic54x.c:3171 msgid "Extra junk on line" msgstr "Basura extra en la línea" -#: config/tc-tic54x.c:3186 +#: config/tc-tic54x.c:3208 msgid "Badly formed address expression" msgstr "Expresión direccional mal formada" -#: config/tc-tic54x.c:3439 +#: config/tc-tic54x.c:3461 #, c-format msgid "Invalid dmad syntax '%s'" msgstr "Sintaxis de ‘dmad’ no válida «%s»" -#: config/tc-tic54x.c:3503 +#: config/tc-tic54x.c:3525 #, c-format msgid "Use the .mmregs directive to use memory-mapped register names such as '%s'" msgstr "Use la directiva .mmregs para utilizar nombres de registro mapeados en memoria tales como «%s»" -#: config/tc-tic54x.c:3554 +#: config/tc-tic54x.c:3576 msgid "Address mode *+ARx is write-only. Results of reading are undefined." -msgstr "El modo direccional *+ARx es de sólo escritura. El resultado de la lectura está indefinido." +msgstr "El modo direccional *+ARx es de solo escritura. El resultado de la lectura está indefinido." -#: config/tc-tic54x.c:3574 +#: config/tc-tic54x.c:3596 #, c-format msgid "Unrecognized indirect address format \"%s\"" msgstr "No reconocido el formato direccional indirecta «%s»" -#: config/tc-tic54x.c:3612 +#: config/tc-tic54x.c:3634 #, c-format msgid "Operand '%s' out of range (%d <= x <= %d)" -msgstr "Operando «%s» está fuera de límite (%d ≤ x ≤ %d)" +msgstr "Operando «%s» está fuera de rango (%d ≤ x ≤ %d)" -#: config/tc-tic54x.c:3632 +#: config/tc-tic54x.c:3654 msgid "Error in relocation handling" msgstr "Error en el manejo de la reubicación" -#: config/tc-tic54x.c:3651 config/tc-tic54x.c:3713 config/tc-tic54x.c:3741 +#: config/tc-tic54x.c:3673 config/tc-tic54x.c:3735 config/tc-tic54x.c:3763 #, c-format msgid "Unrecognized condition code \"%s\"" msgstr "No reconocido el código de condición «%s»" -#: config/tc-tic54x.c:3668 +#: config/tc-tic54x.c:3690 #, c-format msgid "Condition \"%s\" does not match preceding group" msgstr "La condición «%s» no coincide con el grupo precedente" -#: config/tc-tic54x.c:3676 +#: config/tc-tic54x.c:3698 #, c-format msgid "Condition \"%s\" uses a different accumulator from a preceding condition" msgstr "La condición «%s» utiliza un acumulador diferente al de una condición precedente" -#: config/tc-tic54x.c:3683 +#: config/tc-tic54x.c:3705 msgid "Only one comparison conditional allowed" msgstr "Sólo se permite una comparación condicional" -#: config/tc-tic54x.c:3688 +#: config/tc-tic54x.c:3710 msgid "Only one overflow conditional allowed" msgstr "Sólo se permite un desbordamiento condicional" -#: config/tc-tic54x.c:3696 +#: config/tc-tic54x.c:3718 #, c-format msgid "Duplicate %s conditional" msgstr "Condicional %s duplicado" -#: config/tc-tic54x.c:3727 +#: config/tc-tic54x.c:3749 msgid "Invalid auxiliary register (use AR0-AR7)" msgstr "Registro auxiliar inválido (utilice AR0-AR7)" -#: config/tc-tic54x.c:3758 +#: config/tc-tic54x.c:3780 msgid "lk addressing modes are invalid for memory-mapped register addressing" msgstr "modos direccionados lk son inválidos para direccionamiento de distribuciones de registros en memoria" -#: config/tc-tic54x.c:3766 +#: config/tc-tic54x.c:3788 msgid "Address mode *+ARx is not allowed in memory-mapped register addressing. Resulting behavior is undefined." msgstr "El modo direccional *+ARx no se permite en el direccionamiento de registros mapeados en memoria. El comportamiento resultante no está definido." -#: config/tc-tic54x.c:3792 +#: config/tc-tic54x.c:3814 msgid "Destination accumulator for each part of this parallel instruction must be different" msgstr "El acumulador de destino para cada parte de esta instrucción paralela debe ser diferente" -#: config/tc-tic54x.c:3841 +#: config/tc-tic54x.c:3863 #, c-format msgid "Memory mapped register \"%s\" out of range" -msgstr "El registro mapeado en memoria «%s» está fuera de límite" +msgstr "El registro mapeado en memoria «%s» está fuera de rango" -#: config/tc-tic54x.c:3880 +#: config/tc-tic54x.c:3902 msgid "Invalid operand (use 1, 2, or 3)" msgstr "Operando inválido (utilice 1, 2, ó 3)" -#: config/tc-tic54x.c:3906 +#: config/tc-tic54x.c:3928 msgid "A status register or status bit name is required" msgstr "Se requiere un registro estatal o un nombre de bit estatal" -#: config/tc-tic54x.c:3916 +#: config/tc-tic54x.c:3938 #, c-format msgid "Unrecognized status bit \"%s\"" msgstr "No reconocido el bit estatal «%s»" -#: config/tc-tic54x.c:3939 +#: config/tc-tic54x.c:3961 #, c-format msgid "Invalid status register \"%s\"" msgstr "Invalida registro de posición «%s»" -#: config/tc-tic54x.c:3951 +#: config/tc-tic54x.c:3973 #, c-format msgid "Operand \"%s\" out of range (use 1 or 2)" -msgstr "Operando «%s» está fuera de límite (utilice 1 ó 2)" +msgstr "Operando «%s» está fuera de rango (utilice 1 ó 2)" -#: config/tc-tic54x.c:4154 +#: config/tc-tic54x.c:4176 #, c-format msgid "Unrecognized instruction \"%s\"" msgstr "No reconocida la instrucción «%s»" -#: config/tc-tic54x.c:4183 +#: config/tc-tic54x.c:4205 #, c-format msgid "Unrecognized operand list '%s' for instruction '%s'" msgstr "No reconocida la lista de operandos «%s» para la instrucción «%s»" -#: config/tc-tic54x.c:4212 +#: config/tc-tic54x.c:4234 #, c-format msgid "Unrecognized parallel instruction \"%s\"" msgstr "No reconocida la instrucción paralela «%s»" -#: config/tc-tic54x.c:4261 +#: config/tc-tic54x.c:4283 #, c-format msgid "Invalid operand (s) for parallel instruction \"%s\"" msgstr "Operando(s) inválido(s) para la instrucción paralela «%s»" -#: config/tc-tic54x.c:4264 +#: config/tc-tic54x.c:4286 #, c-format msgid "Unrecognized parallel instruction combination \"%s || %s\"" msgstr "No reconocida la combinación de instrucciones paralelas \"%s || %s\"" -#: config/tc-tic54x.c:4485 +#: config/tc-tic54x.c:4514 #, c-format msgid "%s symbol recursion stopped at second appearance of '%s'" msgstr "La recursión del símbolo %s se detuvo en la segunda aparición de «%s»" -#: config/tc-tic54x.c:4525 +#: config/tc-tic54x.c:4554 msgid "Unrecognized substitution symbol function" msgstr "No reconocida la función simbólica de sustitución" -#: config/tc-tic54x.c:4530 +#: config/tc-tic54x.c:4559 msgid "Missing '(' after substitution symbol function" msgstr "Ausente '(' tras la función simbólica de sustitución" -#: config/tc-tic54x.c:4544 +#: config/tc-tic54x.c:4572 msgid "Expecting second argument" msgstr "Se esperaba un segundo argumento" -#: config/tc-tic54x.c:4557 config/tc-tic54x.c:4607 +#: config/tc-tic54x.c:4590 config/tc-tic54x.c:4640 msgid "Extra junk in function call, expecting ')'" msgstr "Basura extra en la llamada a función, se esperaba ')'" -#: config/tc-tic54x.c:4583 +#: config/tc-tic54x.c:4616 msgid "Function expects two arguments" msgstr "La función espera dos argumentos" -#: config/tc-tic54x.c:4596 +#: config/tc-tic54x.c:4629 msgid "Expecting character constant argument" msgstr "Se espera una constante de carácter como argumento" -#: config/tc-tic54x.c:4602 +#: config/tc-tic54x.c:4635 msgid "Both arguments must be substitution symbols" msgstr "Ambos argumentos deben ser símbolos de sustitución" -#: config/tc-tic54x.c:4654 +#: config/tc-tic54x.c:4687 #, c-format msgid "Invalid subscript (use 1 to %d)" msgstr "Subíndice inválido (utilice de 1 a %d)" -#: config/tc-tic54x.c:4664 +#: config/tc-tic54x.c:4697 #, c-format msgid "Invalid length (use 0 to %d)" msgstr "Longitud no válida (utilice 0 a %d)" -#: config/tc-tic54x.c:4674 +#: config/tc-tic54x.c:4707 msgid "Missing ')' in subscripted substitution symbol expression" msgstr "Ausente ')' en la expresión simbólico de sustitución suscrito" -#: config/tc-tic54x.c:4694 +#: config/tc-tic54x.c:4727 msgid "Missing forced substitution terminator ':'" msgstr "Ausente el terminador de sustitución forzada ':'" -#: config/tc-tic54x.c:4846 +#: config/tc-tic54x.c:4881 #, fuzzy, c-format #| msgid "Instruction does not fit in available delay slots (%d-word insn, %d slots left)" msgid "Instruction does not fit in available delay slots (%d-word insn, %d slot left)" @@ -17595,22 +20154,22 @@ msgid_plural "Instruction does not fit in available delay slots (%d-word insn, % msgstr[0] "La instrucción no cabe en las ranuras de retardo disponibles (%d insns word, %d ranuras restantes)" msgstr[1] "La instrucción no cabe en las ranuras de retardo disponibles (%d insns word, %d ranuras restantes)" -#: config/tc-tic54x.c:4890 +#: config/tc-tic54x.c:4925 #, c-format msgid "Unrecognized parallel instruction '%s'" msgstr "No reconocida la instrucción paralela «%s»" -#: config/tc-tic54x.c:4902 +#: config/tc-tic54x.c:4937 #, c-format msgid "Instruction '%s' requires an LP cpu version" msgstr "La instrucción «%s» requiere una versión de cpu LP" -#: config/tc-tic54x.c:4909 +#: config/tc-tic54x.c:4944 #, c-format msgid "Instruction '%s' requires far mode addressing" msgstr "La instrucción «%s» requiere el modo de direccionamiento far" -#: config/tc-tic54x.c:4921 +#: config/tc-tic54x.c:4956 #, fuzzy, c-format #| msgid "Instruction does not fit in available delay slots (%d-word insn, %d slots left). Resulting behavior is undefined." msgid "Instruction does not fit in available delay slots (%d-word insn, %d slot left). Resulting behavior is undefined." @@ -17618,38 +20177,43 @@ msgid_plural "Instruction does not fit in available delay slots (%d-word insn, % msgstr[0] "La instrucción no cabe en las ranuras de retardo disponibles (%d insns word, %d ranuras restantes). El comportamiento resultante no está definido." msgstr[1] "La instrucción no cabe en las ranuras de retardo disponibles (%d insns word, %d ranuras restantes). El comportamiento resultante no está definido." -#: config/tc-tic54x.c:4935 +#: config/tc-tic54x.c:4970 msgid "Instructions which cause PC discontinuity are not allowed in a delay slot. Resulting behavior is undefined." msgstr "Las instrucciones que causan discontinuidad en el PC no se permiten en una ranura de retardo. El comportamiento resultante no está definido." -#: config/tc-tic54x.c:4946 +#: config/tc-tic54x.c:4981 #, c-format msgid "'%s' is not repeatable. Resulting behavior is undefined." msgstr "«%s» no se puede repetir. El comportamiento resultante no está definido." -#: config/tc-tic54x.c:4950 +#: config/tc-tic54x.c:4985 msgid "Instructions using long offset modifiers or absolute addresses are not repeatable. Resulting behavior is undefined." msgstr "Las instrucciones utilizando modificadores de desplazamiento long o direcciones absolutas no se pueden repetir. El comportamiento resultante no está definido." -#: config/tc-tic54x.c:5100 +#: config/tc-tic54x.c:5129 #, c-format msgid "Unsupported relocation size %d" msgstr "No se admite el tamaño de reubicación %d" -#: config/tc-tic54x.c:5231 +#: config/tc-tic54x.c:5260 msgid "non-absolute value used with .space/.bes" msgstr "se utilizó un valor no absoluto con .space/.bes" -#: config/tc-tic54x.c:5235 +#: config/tc-tic54x.c:5264 #, c-format msgid "negative value ignored in %s" msgstr "se descarta el valor negativo en %s" -#: config/tc-tic54x.c:5323 +#: config/tc-tic54x.c:5352 #, c-format msgid "attempt to .space/.bes backwards? (%ld)" msgstr "¿se intentó hacer .space/.bes hacia atrás? (%ld)" +#: config/tc-tic6x.c:232 +#, c-format +msgid "unknown architecture '%s'" +msgstr "arquitectura desconocida '%s'" + #: config/tc-tic6x.c:262 #, c-format msgid "unknown -mpid= argument '%s'" @@ -17731,402 +20295,402 @@ msgstr "" msgid "Supported ARCH values are:" msgstr "Se admiten los siguentes valores de ARQ:" -#: config/tc-tic6x.c:386 +#: config/tc-tic6x.c:384 msgid "unexpected .cantunwind directive" msgstr "directiva inesperada .cantunwind" -#: config/tc-tic6x.c:406 +#: config/tc-tic6x.c:404 msgid "unexpected .handlerdata directive" msgstr "directiva inesperada .handlerdata" -#: config/tc-tic6x.c:418 +#: config/tc-tic6x.c:416 msgid "personality routine required before .handlerdata directive" msgstr "se requirió una rutina personality antes de la directiva .handlerdata" -#: config/tc-tic6x.c:532 +#: config/tc-tic6x.c:530 msgid "expected symbol" msgstr "se esperaba un símbolo" -#: config/tc-tic6x.c:579 +#: config/tc-tic6x.c:577 msgid "expected comma after symbol name" msgstr "se esperaba una coma tras nombre del símbolo" -#: config/tc-tic6x.c:589 +#: config/tc-tic6x.c:587 #, c-format msgid "invalid length for .scomm directive" msgstr "longitud no válida para la directiva .scomm" -#: config/tc-tic6x.c:603 +#: config/tc-tic6x.c:601 msgid "alignment is not a positive number" msgstr "la alineamiento no es un número positivo" -#: config/tc-tic6x.c:615 +#: config/tc-tic6x.c:613 msgid "alignment is not a power of 2" msgstr "la alineamiento no es una potencia de 2" -#: config/tc-tic6x.c:630 +#: config/tc-tic6x.c:628 #, c-format msgid "attempt to re-define symbol `%s'" msgstr "se intentó redefinir el símbolo «%s»" -#: config/tc-tic6x.c:639 +#: config/tc-tic6x.c:637 #, c-format msgid "attempt to redefine `%s' with a different length" msgstr "se intentó redefinir «%s» con una longitud diferente" -#: config/tc-tic6x.c:841 +#: config/tc-tic6x.c:835 msgid "multiple '||' on same line" msgstr "'||' múltiples en la misma línea" -#: config/tc-tic6x.c:844 +#: config/tc-tic6x.c:838 msgid "'||' after predicate" msgstr "'||' tras predicado" -#: config/tc-tic6x.c:888 +#: config/tc-tic6x.c:882 msgid "multiple predicates on same line" msgstr "predicados múltiples en la misma línea" -#: config/tc-tic6x.c:894 +#: config/tc-tic6x.c:888 #, c-format msgid "bad predicate '%s'" msgstr "equivocación de predicado «%s»" -#: config/tc-tic6x.c:905 +#: config/tc-tic6x.c:899 msgid "predication on A0 not supported on this architecture" msgstr "la predicación en A0 no se admite en esta arquitectura" -#: config/tc-tic6x.c:938 +#: config/tc-tic6x.c:932 msgid "label after '||'" msgstr "etiqueta tras '||'" -#: config/tc-tic6x.c:944 +#: config/tc-tic6x.c:938 msgid "label after predicate" msgstr "etiqueta tras predicado" -#: config/tc-tic6x.c:968 +#: config/tc-tic6x.c:962 msgid "'||' not followed by instruction" msgstr "'||' no está seguido por una instrucción" -#: config/tc-tic6x.c:974 +#: config/tc-tic6x.c:968 msgid "predicate not followed by instruction" msgstr "el predicado no está seguido por una instrucción" -#: config/tc-tic6x.c:1407 +#: config/tc-tic6x.c:1401 #, c-format msgid "control register '%s' not supported on this architecture" msgstr "el registro de control «%s» no se admite en esta arquitectura" -#: config/tc-tic6x.c:1586 config/tc-tic6x.c:1589 config/tc-tic6x.c:1642 -#: config/tc-tic6x.c:1646 +#: config/tc-tic6x.c:1580 config/tc-tic6x.c:1583 config/tc-tic6x.c:1636 +#: config/tc-tic6x.c:1640 #, c-format msgid "register number %u not supported on this architecture" msgstr "el número de registro %u no se admite en esta arquitectura" -#: config/tc-tic6x.c:1617 +#: config/tc-tic6x.c:1611 #, c-format msgid "register pair for operand %u of '%.*s' not a valid even/odd pair" -msgstr "la pareja de registros para operando %u de '%.*s' no es una pareja par/impar válida" +msgstr "la pareja de registros para el operando %u de '%.*s' no es una pareja par/impar válida" -#: config/tc-tic6x.c:1673 +#: config/tc-tic6x.c:1667 #, c-format msgid "junk after operand %u of '%.*s'" msgstr "basura tras operando %u de '%.*s'" -#: config/tc-tic6x.c:1686 +#: config/tc-tic6x.c:1680 #, c-format msgid "bad register or register pair for operand %u of '%.*s'" -msgstr "registro o pareja de registros equivocados para operando %u de '%.*s'" +msgstr "registro o pareja de registros incorrectos para el operando %u de '%.*s'" -#: config/tc-tic6x.c:1692 +#: config/tc-tic6x.c:1686 #, c-format msgid "bad register for operand %u of '%.*s'" -msgstr "registro equivocado para operando %u de '%.*s'" +msgstr "registro incorrecto para el operando %u de '%.*s'" -#: config/tc-tic6x.c:1697 +#: config/tc-tic6x.c:1691 #, c-format msgid "bad register pair for operand %u of '%.*s'" -msgstr "pareja de registros equivocada para operando %u de '%.*s'" +msgstr "pareja de registros incorrecta para el operando %u de '%.*s'" -#: config/tc-tic6x.c:1702 +#: config/tc-tic6x.c:1696 #, c-format msgid "bad functional unit for operand %u of '%.*s'" -msgstr "unidad funcional equivocada para operando %u de '%.*s'" +msgstr "unidad funcional incorrecta para el operando %u de '%.*s'" -#: config/tc-tic6x.c:1707 +#: config/tc-tic6x.c:1701 #, c-format msgid "bad operand %u of '%.*s'" -msgstr "operando %u equivocado de '%.*s'" +msgstr "operando %u incorrecto de '%.*s'" -#: config/tc-tic6x.c:1839 +#: config/tc-tic6x.c:1833 msgid "$DSBT_INDEX must be used with __c6xabi_DSBT_BASE" msgstr "$DSBT_INDEX se debe usar con __c6xabi_DSBT_BASE" -#: config/tc-tic6x.c:1879 +#: config/tc-tic6x.c:1873 msgid "$DSBT_INDEX not supported in this context" msgstr "no se admite $DSBT_INDEX en este contexto" -#: config/tc-tic6x.c:1892 +#: config/tc-tic6x.c:1886 msgid "$GOT not supported in this context" msgstr "no se admite $GOT en este contexto" -#: config/tc-tic6x.c:1909 +#: config/tc-tic6x.c:1903 msgid "$DPR_GOT not supported in this context" msgstr "no se admite $DPR_GOT en este contexto" -#: config/tc-tic6x.c:1930 +#: config/tc-tic6x.c:1924 msgid "$DPR_BYTE not supported in this context" msgstr "no se admite $DPR_BYTE en este contexto" -#: config/tc-tic6x.c:1947 +#: config/tc-tic6x.c:1941 msgid "$DPR_HWORD not supported in this context" msgstr "no se admite $DPR_HWORD en este contexto" -#: config/tc-tic6x.c:1964 +#: config/tc-tic6x.c:1958 msgid "$DPR_WORD not supported in this context" msgstr "no se admite $DPR_WORD en este contexto" -#: config/tc-tic6x.c:1983 +#: config/tc-tic6x.c:1977 msgid "$PCR_OFFSET not supported in this context" msgstr "no se admite $PCR_OFFSET en este contexto" -#: config/tc-tic6x.c:1994 +#: config/tc-tic6x.c:1988 msgid "invalid PC-relative operand" msgstr "operando relativo al PC inválido" -#: config/tc-tic6x.c:2031 +#: config/tc-tic6x.c:2025 #, c-format msgid "no %d-byte relocations available" msgstr "no hay reubicaciones de %d bytes disponibles" -#: config/tc-tic6x.c:2518 config/tc-tic6x.c:2549 config/tc-tic6x.c:2567 -#: config/tc-tic6x.c:2997 config/tc-tic6x.c:3016 config/tc-tic6x.c:3048 +#: config/tc-tic6x.c:2512 config/tc-tic6x.c:2543 config/tc-tic6x.c:2561 +#: config/tc-tic6x.c:2991 config/tc-tic6x.c:3010 config/tc-tic6x.c:3042 #, c-format msgid "operand %u of '%.*s' out of range" -msgstr "operando %u de '%.*s' está fuera de límite" +msgstr "operando %u de '%.*s' está fuera de rango" -#: config/tc-tic6x.c:2611 config/tc-tic6x.c:2836 +#: config/tc-tic6x.c:2605 config/tc-tic6x.c:2830 #, c-format msgid "offset in operand %u of '%.*s' not divisible by %u" msgstr "el desplazamiento en operando %u de '%.*s' no es divisible por %u" -#: config/tc-tic6x.c:2828 config/tc-tic6x.c:2861 +#: config/tc-tic6x.c:2822 config/tc-tic6x.c:2855 #, c-format msgid "offset in operand %u of '%.*s' out of range" -msgstr "el desplazamiento en operando %u de '%.*s' está fuera de límite" +msgstr "el desplazamiento en operando %u de '%.*s' está fuera de rango" -#: config/tc-tic6x.c:2943 +#: config/tc-tic6x.c:2937 #, c-format msgid "functional unit already masked for operand %u of '%.*s'" -msgstr "unidad funcional ya está enmascarada para operando %u de '%.*s'" +msgstr "unidad funcional ya está enmascarada para el operando %u de '%.*s'" -#: config/tc-tic6x.c:2967 config/tc-tic6x.c:3726 +#: config/tc-tic6x.c:2961 config/tc-tic6x.c:3719 #, c-format msgid "'%.*s' instruction not in a software pipelined loop" msgstr "instrucción '%.*s' no está en un ciclo entubado por software" -#: config/tc-tic6x.c:3066 +#: config/tc-tic6x.c:3060 #, c-format msgid "instruction '%.*s' cannot be predicated" msgstr "instrucción '%.*s' no puede ser predicado" -#: config/tc-tic6x.c:3334 +#: config/tc-tic6x.c:3327 #, c-format msgid "'%.*s' instruction not supported on this architecture" msgstr "instrucción '%.*s' no se admite en esta arquitectura" -#: config/tc-tic6x.c:3342 +#: config/tc-tic6x.c:3335 #, c-format msgid "'%.*s' instruction not supported on this functional unit" msgstr "instrucción '%.*s' no se admite en esta unidad funcional" -#: config/tc-tic6x.c:3350 +#: config/tc-tic6x.c:3343 #, c-format msgid "'%.*s' instruction not supported on this functional unit for this architecture" msgstr "instrucción '%.*s' no se admite en esta unidad funcional para esta arquitectura" -#: config/tc-tic6x.c:3370 +#: config/tc-tic6x.c:3363 msgid "missing operand after comma" msgstr "ausente operando tras la coma" -#: config/tc-tic6x.c:3378 config/tc-tic6x.c:3396 +#: config/tc-tic6x.c:3371 config/tc-tic6x.c:3389 #, c-format msgid "too many operands to '%.*s'" msgstr "demasiados operandos para '%.*s'" -#: config/tc-tic6x.c:3409 +#: config/tc-tic6x.c:3402 #, c-format msgid "bad number of operands to '%.*s'" -msgstr "número equivocado de operandos para '%.*s'" +msgstr "número incorrecto de operandos para '%.*s'" -#: config/tc-tic6x.c:3481 +#: config/tc-tic6x.c:3474 #, c-format msgid "operand %u of '%.*s' not constant" msgstr "operando %u de '%.*s' no es una constante" -#: config/tc-tic6x.c:3486 +#: config/tc-tic6x.c:3479 #, c-format msgid "operand %u of '%.*s' on wrong side" -msgstr "operando %u de '%.*s' está en el lado equivocado" +msgstr "operando %u de '%.*s' está en el lado incorrecto" -#: config/tc-tic6x.c:3491 +#: config/tc-tic6x.c:3484 #, c-format msgid "operand %u of '%.*s' not a valid return address register" msgstr "operando %u de '%.*s' no es un registro direccional de devolución válido" -#: config/tc-tic6x.c:3497 +#: config/tc-tic6x.c:3490 #, c-format msgid "operand %u of '%.*s' is write-only" -msgstr "operando %u de '%.*s' es de sólo escritura" +msgstr "operando %u de '%.*s' es de solo escritura" -#: config/tc-tic6x.c:3502 +#: config/tc-tic6x.c:3495 #, c-format msgid "operand %u of '%.*s' is read-only" -msgstr "operando %u de '%.*s' es de sólo lectura" +msgstr "operando %u de '%.*s' es de solo lectura" -#: config/tc-tic6x.c:3507 +#: config/tc-tic6x.c:3500 #, c-format msgid "operand %u of '%.*s' not a valid memory reference" msgstr "operando %u de '%.*s' no es una referencia de memoria válida" -#: config/tc-tic6x.c:3513 +#: config/tc-tic6x.c:3506 #, c-format msgid "operand %u of '%.*s' not a valid base address register" msgstr "operando %u de '%.*s' no es un registro direccional base válido" -#: config/tc-tic6x.c:3599 +#: config/tc-tic6x.c:3592 #, c-format msgid "bad operand combination for '%.*s'" -msgstr "combinación de operandos equivocada para '%.*s'" +msgstr "combinación de operandos incorrecta para '%.*s'" -#: config/tc-tic6x.c:3645 +#: config/tc-tic6x.c:3638 msgid "parallel instruction not following another instruction" msgstr "la instrucción paralela no está a continuación de otra instrucción" -#: config/tc-tic6x.c:3651 +#: config/tc-tic6x.c:3644 msgid "too many instructions in execute packet" msgstr "demasiadas instrucciones en el paquete de ejecución" -#: config/tc-tic6x.c:3656 +#: config/tc-tic6x.c:3649 msgid "label not at start of execute packet" msgstr "la etiqueta no está al inicio del paquete de ejecución" -#: config/tc-tic6x.c:3659 +#: config/tc-tic6x.c:3652 #, c-format msgid "'%.*s' instruction not at start of execute packet" msgstr "la instrucción '%.*s' no está al inicio del paquete de ejecución" -#: config/tc-tic6x.c:3707 +#: config/tc-tic6x.c:3700 msgid "functional unit already used in this execute packet" msgstr "la unidad funcional ya está en uso en este paquete de ejecución" -#: config/tc-tic6x.c:3715 +#: config/tc-tic6x.c:3708 msgid "nested software pipelined loop" msgstr "ciclo entubado por software anidado" -#: config/tc-tic6x.c:3734 +#: config/tc-tic6x.c:3727 msgid "'||^' without previous SPMASK" msgstr "'||^' sin un SPMASK previo" -#: config/tc-tic6x.c:3736 +#: config/tc-tic6x.c:3729 msgid "cannot mask instruction using no functional unit" msgstr "no se puede enmascarar la instrucción sin una unidad funcional" -#: config/tc-tic6x.c:3748 +#: config/tc-tic6x.c:3741 msgid "functional unit already masked" msgstr "la unidad funcional ya está enmascarada" -#: config/tc-tic6x.c:3813 +#: config/tc-tic6x.c:3806 msgid "value too large for 2-byte field" msgstr "valor demasiado grande para un campo de 2 bytes" -#: config/tc-tic6x.c:3823 +#: config/tc-tic6x.c:3816 msgid "value too large for 1-byte field" msgstr "valor demasiado grande para un campo de 1 byte" -#: config/tc-tic6x.c:3950 +#: config/tc-tic6x.c:3943 msgid "immediate offset not 2-byte-aligned" msgstr "el desplazamiento inmediato no está alineado a 2 bytes" -#: config/tc-tic6x.c:3978 +#: config/tc-tic6x.c:3971 msgid "immediate offset not 4-byte-aligned" msgstr "el desplazamiento inmediato no está alineado a 4 bytes" -#: config/tc-tic6x.c:3992 +#: config/tc-tic6x.c:3985 msgid "addend used with $DSBT_INDEX" msgstr "se usó addend con $DSBT_INDEX" -#: config/tc-tic6x.c:4006 config/tc-tic6x.c:4024 config/tc-tic6x.c:4042 -#: config/tc-tic6x.c:4060 +#: config/tc-tic6x.c:3999 config/tc-tic6x.c:4017 config/tc-tic6x.c:4035 +#: config/tc-tic6x.c:4053 msgid "PC-relative offset not 4-byte-aligned" msgstr "Desplazamiento relativo al PC no alineado a 4-bytes" -#: config/tc-tic6x.c:4009 config/tc-tic6x.c:4027 config/tc-tic6x.c:4045 -#: config/tc-tic6x.c:4063 +#: config/tc-tic6x.c:4002 config/tc-tic6x.c:4020 config/tc-tic6x.c:4038 +#: config/tc-tic6x.c:4056 msgid "PC-relative offset out of range" -msgstr "Desplazamiento relativo al PC está fuera de límite" +msgstr "Desplazamiento relativo al PC está fuera de rango" -#: config/tc-tic6x.c:4542 +#: config/tc-tic6x.c:4537 #, c-format msgid "undefined symbol %s in PCR relocation" msgstr "símbolo indefinido %s en reubicación PCR" -#: config/tc-tic6x.c:4660 +#: config/tc-tic6x.c:4654 #, c-format msgid "group section `%s' has no group signature" msgstr "sección de grupo «%s» no tiene firma de grupo" -#: config/tc-tic6x.c:4812 +#: config/tc-tic6x.c:4806 msgid "missing .endp before .cfi_startproc" msgstr "ausente .endp antes de .cfi_startproc" -#: config/tc-tic6x.c:4917 +#: config/tc-tic6x.c:4911 msgid "stack pointer offset too large for personality routine" msgstr "el desplazamiento del puntero de pila es demasiado grande para la rutina personality" -#: config/tc-tic6x.c:4924 +#: config/tc-tic6x.c:4918 msgid "stack frame layout does not match personality routine" msgstr "la disposición del marco de pila no coincide con la rutina personality" -#: config/tc-tic6x.c:5058 +#: config/tc-tic6x.c:5052 msgid "too many unwinding instructions" msgstr "demasiadas instrucciones de desenredo" -#: config/tc-tic6x.c:5133 config/tc-tic6x.c:5146 config/tc-tic6x.c:5154 +#: config/tc-tic6x.c:5127 config/tc-tic6x.c:5140 config/tc-tic6x.c:5148 #, c-format msgid "unable to generate unwinding opcode for reg %d" msgstr "incapaz de generar códigos operacionales de desenredo para el registro %d" -#: config/tc-tic6x.c:5163 +#: config/tc-tic6x.c:5157 msgid "unable to restore return address from previously restored reg" msgstr "no se puede restaurar la dirección de devolución para el registro previamente restaurado" -#: config/tc-tic6x.c:5175 +#: config/tc-tic6x.c:5169 #, c-format msgid "unhandled CFA insn for unwinding (%d)" msgstr "insn CFA sin manipular para el desenredo (%d)" -#: config/tc-tic6x.c:5185 +#: config/tc-tic6x.c:5179 #, c-format msgid "unable to generate unwinding opcode for frame pointer reg %d" msgstr "incapaz de generar código operacional de desenredo para el registro de puntero a marco %d" -#: config/tc-tic6x.c:5194 +#: config/tc-tic6x.c:5188 msgid "unable to generate unwinding opcode for frame pointer offset" msgstr "incapaz de generar código operacional de desenredo para el desplazamiento de puntero a marco" -#: config/tc-tic6x.c:5203 +#: config/tc-tic6x.c:5197 msgid "unwound stack pointer not doubleword aligned" msgstr "el puntero de pila desenredado no está alineado a dobleword" -#: config/tc-tic6x.c:5348 +#: config/tc-tic6x.c:5342 msgid "stack frame layout too complex for unwinder" msgstr "la disposición del marco de pila es demasiado complejo para el desenredador" -#: config/tc-tic6x.c:5365 +#: config/tc-tic6x.c:5359 msgid "unwound frame has negative size" msgstr "el marco desenredado tiene tamaño negativo" -#: config/tc-tilegx.c:142 +#: config/tc-tilegx.c:141 #, c-format msgid "" " -Q ignored\n" @@ -18139,102 +20703,97 @@ msgstr "" " -EB/-EL genera código big-endian/little-endian\n" " --32/--64 genera código 32bit/64bit\n" -#: config/tc-tilegx.c:736 config/tc-tilepro.c:627 +#: config/tc-tilegx.c:731 config/tc-tilepro.c:619 msgid "Invalid operator for operand." -msgstr "Operador inválido para operando." +msgstr "Operador inválido para el operando." -#: config/tc-tilegx.c:757 config/tc-tilepro.c:648 +#: config/tc-tilegx.c:754 config/tc-tilepro.c:642 msgid "Operator may only be applied to symbols." -msgstr "El operador sólo se puede aplicar a símbolos." +msgstr "El operador solo se puede aplicar a símbolos." -#: config/tc-tilegx.c:822 config/tc-tilepro.c:713 +#: config/tc-tilegx.c:819 config/tc-tilepro.c:707 #, c-format msgid "Writes to register '%s' are not allowed." msgstr "No se permiten las escrituras al registro «%s»." -#: config/tc-tilegx.c:849 config/tc-tilepro.c:740 +#: config/tc-tilegx.c:846 config/tc-tilepro.c:734 #, c-format msgid "Two instructions in the same bundle both write to register %s, which is not allowed." msgstr "Dos instrucciones en el mismo haz ambos escriben al registro %s, lo no está permitido." -#: config/tc-tilegx.c:914 config/tc-tilepro.c:804 +#: config/tc-tilegx.c:911 config/tc-tilepro.c:798 #, c-format msgid "'%s' may not be bundled with other instructions." msgstr "'%s 'no se puede agrupar con otras instrucciones." -#: config/tc-tilegx.c:944 config/tc-tilepro.c:834 +#: config/tc-tilegx.c:941 config/tc-tilepro.c:828 msgid "Invalid combination of instructions for bundle." msgstr "Combinación no válida de instrucciones para el agrupado." -#: config/tc-tilegx.c:979 config/tc-tilepro.c:869 +#: config/tc-tilegx.c:976 config/tc-tilepro.c:863 msgid "instruction address is not a multiple of 8" msgstr "la instrucción direccional no es un múltiplo de 8" -#: config/tc-tilegx.c:1056 config/tc-tilepro.c:947 +#: config/tc-tilegx.c:1053 config/tc-tilepro.c:941 msgid "Invalid expression." msgstr "Expresión no válida." -#: config/tc-tilegx.c:1102 config/tc-tilepro.c:989 +#: config/tc-tilegx.c:1099 config/tc-tilepro.c:983 #, c-format msgid "Expected register, got '%s'." msgstr "Se esperaba un registro, se obtuvo «%s»." -#: config/tc-tilegx.c:1109 config/tc-tilepro.c:996 +#: config/tc-tilegx.c:1106 config/tc-tilepro.c:990 #, c-format msgid "Found use of non-canonical register name %s; use %s instead." msgstr "Se encontró el uso del nombre de registro %s que no es canónico; use %s en su lugar." -#: config/tc-tilegx.c:1169 config/tc-tilepro.c:1055 +#: config/tc-tilegx.c:1166 config/tc-tilepro.c:1049 #, c-format msgid "Too few operands to '%s'." msgstr "Ausenten operandos para «%s»." -#: config/tc-tilegx.c:1174 config/tc-tilepro.c:1060 +#: config/tc-tilegx.c:1171 config/tc-tilepro.c:1054 #, c-format msgid "Unexpected character '%c' after operand %d to %s." msgstr "Carácter inesperado '%c' antes de operando %d para %s." -#: config/tc-tilegx.c:1195 config/tc-tilepro.c:1081 +#: config/tc-tilegx.c:1192 config/tc-tilepro.c:1075 msgid "Expected immediate expression" msgstr "Se esperaba una expresión inmediata" -#: config/tc-tilegx.c:1208 config/tc-tilegx.c:1813 config/tc-tilepro.c:1094 -#: config/tc-tilepro.c:1593 +#: config/tc-tilegx.c:1205 config/tc-tilegx.c:1807 config/tc-tilepro.c:1088 +#: config/tc-tilepro.c:1584 msgid "Found '}' when not bundling." msgstr "Se encontró '}' cuando no se está agrupando." -#: config/tc-tilegx.c:1249 config/tc-tilepro.c:1134 +#: config/tc-tilegx.c:1246 config/tc-tilepro.c:1128 #, c-format msgid "Unknown opcode `%.*s'." msgstr "Desconoce código operacional `%.*s'." -#: config/tc-tilegx.c:1260 config/tc-tilepro.c:1145 +#: config/tc-tilegx.c:1257 config/tc-tilepro.c:1139 msgid "Too many instructions for bundle." msgstr "Demasiadas instrucciones para la agrupación." -#: config/tc-tilegx.c:1355 config/tc-tilepro.c:1230 +#: config/tc-tilegx.c:1349 config/tc-tilepro.c:1221 msgid "Bad call to md_atof ()" -msgstr "Llamada equivocada a md_atof ()" +msgstr "Llamada incorrecta a md_atof ()" -#: config/tc-tilegx.c:1431 config/tc-tilepro.c:1293 +#: config/tc-tilegx.c:1425 config/tc-tilepro.c:1284 msgid "This operator only produces two byte values." -msgstr "Este operador sólo produce valores de dos bytes." - -#: config/tc-tilegx.c:1457 config/tc-tilepro.c:1319 -#, c-format -msgid "unsupported BFD relocation size %d" -msgstr "no se admite el tamaño de reubicación BFD %d" +msgstr "Este operador solo produce valores de dos bytes." -#: config/tc-tilegx.c:1758 config/tc-tilepro.c:1538 +#: config/tc-tilegx.c:1752 config/tc-tilepro.c:1529 #, c-format msgid "internal error? cannot generate `%s' relocation (%d, %d)" msgstr "¿Error interno? incapaz de generar la reubicación «%s» (%d, %d)" -#: config/tc-tilegx.c:1801 config/tc-tilepro.c:1581 +#: config/tc-tilegx.c:1795 config/tc-tilepro.c:1572 msgid "Found '{' when already bundling." msgstr "Se encontró '{' cuando ya estaba agrupado." -#: config/tc-tilepro.c:99 +#: config/tc-tilepro.c:98 #, c-format msgid "" " -Q ignored\n" @@ -18243,481 +20802,481 @@ msgstr "" " -Q se descarta\n" " -V escribe el número de versión del ensamblador\n" -#: config/tc-v850.c:294 +#: config/tc-v850.c:291 #, c-format msgid ".COMMon length (%d.) < 0! Ignored." msgstr "¡Longitud .COMMún (%d.) < 0! Se descarta." -#: config/tc-v850.c:315 +#: config/tc-v850.c:312 #, c-format msgid "Length of .comm \"%s\" is already %ld. Not changed to %d." msgstr "La longitud de .comm «%s» ya es %ld. No se cambia a %d." -#: config/tc-v850.c:341 +#: config/tc-v850.c:338 msgid "Common alignment negative; 0 assumed" msgstr "Alineación común negativa; se asume 0" -#: config/tc-v850.c:545 +#: config/tc-v850.c:542 msgid ".longcall pseudo-op seen when not relaxing" msgstr "se vio el pseudo-operador .longcall cuando no se estaba relajando" -#: config/tc-v850.c:547 +#: config/tc-v850.c:544 msgid ".longjump pseudo-op seen when not relaxing" msgstr "se vio el pseudo-operador .longjump cuando no se estaba relajando" -#: config/tc-v850.c:554 +#: config/tc-v850.c:551 msgid "bad .longcall format" -msgstr "formato de .longcall equivocado" +msgstr "formato de .longcall incorrecto" -#: config/tc-v850.c:1393 +#: config/tc-v850.c:1389 #, c-format msgid "unknown operand shift: %x\n" msgstr "operando de desplazamiento desconocido: %x\n" -#: config/tc-v850.c:1394 +#: config/tc-v850.c:1390 msgid "internal failure in parse_register_list" msgstr "falla interna en parse_register_list" -#: config/tc-v850.c:1410 +#: config/tc-v850.c:1406 msgid "constant expression or register list expected" msgstr "se esperaba una expresión constante o una lista de registros" -#: config/tc-v850.c:1415 +#: config/tc-v850.c:1411 msgid "high bits set in register list expression" msgstr "se establecieron los bits altos en la expresión de lista de registros" -#: config/tc-v850.c:1453 config/tc-v850.c:1510 +#: config/tc-v850.c:1449 config/tc-v850.c:1506 msgid "illegal register included in list" msgstr "se incluyó un registro alegal en la lista" -#: config/tc-v850.c:1459 +#: config/tc-v850.c:1455 msgid "system registers cannot be included in list" msgstr "los registros del sistema no se pueden incluir en la lista" -#: config/tc-v850.c:1485 +#: config/tc-v850.c:1481 msgid "second register should follow dash in register list" msgstr "el segundo registro debe estar a continuación de un guión en la lista de registros" -#: config/tc-v850.c:1490 +#: config/tc-v850.c:1486 msgid "second register should be greater than first register" msgstr "el segundo registro debe ser mayor que el primer registro" -#: config/tc-v850.c:1540 +#: config/tc-v850.c:1536 #, c-format msgid " V850 options:\n" msgstr " Opciones de V850:\n" -#: config/tc-v850.c:1541 +#: config/tc-v850.c:1537 #, c-format msgid " -mwarn-signed-overflow Warn if signed immediate values overflow\n" msgstr " -mwarn-signed-overflow Avisa si los valores inmediatos con signo desbordan\n" -#: config/tc-v850.c:1542 +#: config/tc-v850.c:1538 #, c-format msgid " -mwarn-unsigned-overflow Warn if unsigned immediate values overflow\n" msgstr " -mwarn-unsigned-overflow Avisa si los valores inmediato sin signo desbordan\n" -#: config/tc-v850.c:1543 +#: config/tc-v850.c:1539 #, c-format msgid " -mv850 The code is targeted at the v850\n" msgstr " -mv850 El código está destinado para el v850\n" -#: config/tc-v850.c:1544 +#: config/tc-v850.c:1540 #, c-format msgid " -mv850e The code is targeted at the v850e\n" msgstr " -mv850e El código está destinado para el v850e\n" -#: config/tc-v850.c:1545 +#: config/tc-v850.c:1541 #, c-format msgid " -mv850e1 The code is targeted at the v850e1\n" msgstr " -mv850e1 El código está destinado para el v850e1\n" -#: config/tc-v850.c:1546 +#: config/tc-v850.c:1542 #, c-format msgid " -mv850e2 The code is targeted at the v850e2\n" msgstr " -mv850e2 El código está destinado para el v850e2\n" -#: config/tc-v850.c:1547 +#: config/tc-v850.c:1543 #, c-format msgid " -mv850e2v3 The code is targeted at the v850e2v3\n" msgstr " -mv850e2v3 El código está destinado para el v850e2v3\n" -#: config/tc-v850.c:1548 +#: config/tc-v850.c:1544 #, c-format msgid " -mv850e2v4 Alias for -mv850e3v5\n" msgstr " -mv850e2v4 Alias para -mv850e3v5\n" -#: config/tc-v850.c:1549 +#: config/tc-v850.c:1545 #, c-format msgid " -mv850e3v5 The code is targeted at the v850e3v5\n" msgstr " -mv850e3v5 El código está destinado para el v850e3v5\n" -#: config/tc-v850.c:1550 +#: config/tc-v850.c:1546 #, c-format msgid " -mrelax Enable relaxation\n" msgstr " -mrelax Activa la relajación\n" -#: config/tc-v850.c:1551 +#: config/tc-v850.c:1547 #, c-format msgid " --disp-size-default-22 branch displacement with unknown size is 22 bits (default)\n" msgstr " --disp-size-default-22 el desplazamiento de ramificación de tamaño desconocido es de 22 bits (por defecto)\n" -#: config/tc-v850.c:1552 +#: config/tc-v850.c:1548 #, c-format msgid " --disp-size-default-32 branch displacement with unknown size is 32 bits\n" msgstr " --disp-size-default-32 el desplazamiento de ramificación de tamaño desconocido es de 32 bits\n" -#: config/tc-v850.c:1553 +#: config/tc-v850.c:1549 #, c-format msgid " -mextension enable extension opcode support\n" msgstr " -mextension activa el soporte de códigod operacional de extensión\n" -#: config/tc-v850.c:1554 +#: config/tc-v850.c:1550 #, c-format msgid " -mno-bcond17\t\t disable b<cond> disp17 instruction\n" msgstr " -mno-bcond17\t\t desactiva la instrucción b<cond> disp17\n" -#: config/tc-v850.c:1555 +#: config/tc-v850.c:1551 #, c-format msgid " -mno-stld23\t\t disable st/ld offset23 instruction\n" msgstr " -mno-stld23\t\t desactiva la instrucción desplazamiento st/ld offset23\n" -#: config/tc-v850.c:1556 +#: config/tc-v850.c:1552 #, c-format msgid " -mgcc-abi Mark the binary as using the old GCC ABI\n" msgstr "" " -mgcc-abi marca el binario como empleando el antiguo API GCC\n" "\n" -#: config/tc-v850.c:1557 +#: config/tc-v850.c:1553 #, c-format msgid " -mrh850-abi Mark the binary as using the RH850 ABI (default)\n" msgstr " -mrh850-abi Marca el binario como utilizando el ABI RH850 (predet.)\n" -#: config/tc-v850.c:1558 +#: config/tc-v850.c:1554 #, c-format msgid " -m8byte-align Mark the binary as using 64-bit alignment\n" msgstr "" " -m8byte-align Marca el binario como utilizando alineamiento de 64-bit\n" "\n" -#: config/tc-v850.c:1559 +#: config/tc-v850.c:1555 #, c-format msgid " -m4byte-align Mark the binary as using 32-bit alignment (default)\n" msgstr " -m4byte-align Marca el binario como alineamiento de 32-bit utilizado (predet.)\n" -#: config/tc-v850.c:1560 +#: config/tc-v850.c:1556 #, c-format msgid " -msoft-float Mark the binary as not using FP insns (default for pre e2v3)\n" msgstr "" -#: config/tc-v850.c:1561 +#: config/tc-v850.c:1557 #, c-format msgid " -mhard-float Mark the binary as using FP insns (default for e2v3 and up)\n" msgstr "" -#: config/tc-v850.c:1949 +#: config/tc-v850.c:1945 #, c-format msgid "Unable to determine default target processor from string: %s" msgstr "No se puede determinar el procesador objetivo por defecto de la cadena: %s" -#: config/tc-v850.c:1993 +#: config/tc-v850.c:1988 msgid "hi0() relocation used on an instruction which does not support it" msgstr "se utilizó una reubicación hi0() en una instrucción que no la admite" -#: config/tc-v850.c:2013 +#: config/tc-v850.c:2008 msgid "hi() relocation used on an instruction which does not support it" msgstr "se utilizó una reubicación hi() en una instrucción que no la admite" -#: config/tc-v850.c:2036 +#: config/tc-v850.c:2027 msgid "lo() relocation used on an instruction which does not support it" msgstr "se utilizó una reubicación lo() en una instrucción que no la admite" -#: config/tc-v850.c:2046 +#: config/tc-v850.c:2038 msgid "ctoff() is not supported by the rh850 ABI. Use -mgcc-abi instead" msgstr "" -#: config/tc-v850.c:2062 +#: config/tc-v850.c:2054 msgid "ctoff() relocation used on an instruction which does not support it" msgstr "se utilizó una reubicación ctoff() en una instrucción que no la admite" -#: config/tc-v850.c:2081 +#: config/tc-v850.c:2073 msgid "sdaoff() relocation used on an instruction which does not support it" msgstr "se utilizó una reubicación sdaoff() en una instrucción que no la admite" -#: config/tc-v850.c:2100 +#: config/tc-v850.c:2092 msgid "zdaoff() relocation used on an instruction which does not support it" msgstr "se utilizó una reubicación zdaoff() en una instrucción que no la admite" -#: config/tc-v850.c:2132 +#: config/tc-v850.c:2124 msgid "tdaoff() relocation used on an instruction which does not support it" msgstr "se utilizó una reubicación tdaoff() en una instrucción que no la admite" -#: config/tc-v850.c:2273 +#: config/tc-v850.c:2265 #, c-format msgid "operand out of range (%d is not between %d and %d)" -msgstr "operando fuera de límite (%d no está entre %d y %d)" +msgstr "operando fuera de rango (%d no está entre %d y %d)" -#: config/tc-v850.c:2356 +#: config/tc-v850.c:2348 msgid "st/ld offset 23 instruction was disabled ." msgstr "st/ld desplaza 23 instrucciones fue desactivado." -#: config/tc-v850.c:2365 +#: config/tc-v850.c:2357 msgid "Target processor does not support this instruction." msgstr "El procesador objetivo no admite esta instrucción." -#: config/tc-v850.c:2477 config/tc-v850.c:2487 config/tc-v850.c:2508 -#: config/tc-v850.c:2522 config/tc-v850.c:2528 config/tc-v850.c:2552 -#: config/tc-v850.c:2558 config/tc-v850.c:2565 config/tc-v850.c:2579 -#: config/tc-v850.c:2593 config/tc-v850.c:2599 config/tc-v850.c:2936 +#: config/tc-v850.c:2469 config/tc-v850.c:2479 config/tc-v850.c:2500 +#: config/tc-v850.c:2514 config/tc-v850.c:2520 config/tc-v850.c:2544 +#: config/tc-v850.c:2550 config/tc-v850.c:2557 config/tc-v850.c:2571 +#: config/tc-v850.c:2585 config/tc-v850.c:2591 config/tc-v850.c:2929 msgid "immediate operand is too large" msgstr "operando inmediato es demasiado grande" -#: config/tc-v850.c:2494 +#: config/tc-v850.c:2486 #, c-format msgid "AAARG -> unhandled constant reloc: %d" msgstr "AAARG → reubicación constante no manipulado: %d" -#: config/tc-v850.c:2629 config/tc-v850.c:2640 +#: config/tc-v850.c:2621 config/tc-v850.c:2632 msgid "constant too big to fit into instruction" msgstr "la constante es demasiado grande para caber en la instrucción" -#: config/tc-v850.c:2715 +#: config/tc-v850.c:2707 msgid "odd number cannot be used here" msgstr "no se puede usar aquí un número impar" -#: config/tc-v850.c:2760 +#: config/tc-v850.c:2752 msgid "invalid register name" msgstr "nombre de registro inválido" -#: config/tc-v850.c:2766 +#: config/tc-v850.c:2758 msgid "register r0 cannot be used here" msgstr "el registro r0 no se puede usar aquí" -#: config/tc-v850.c:2772 +#: config/tc-v850.c:2764 msgid "odd register cannot be used here" msgstr "no se puede usar aquí un registro impar" -#: config/tc-v850.c:2781 +#: config/tc-v850.c:2773 msgid "invalid system register name" msgstr "nombre de registro de sistema inválido" -#: config/tc-v850.c:2795 +#: config/tc-v850.c:2787 msgid "expected EP register" msgstr "se esperaba el registro EP" -#: config/tc-v850.c:2812 config/tc-v850.c:2825 +#: config/tc-v850.c:2804 config/tc-v850.c:2817 msgid "invalid condition code name" msgstr "nombre de código de condición inválido" -#: config/tc-v850.c:2818 +#: config/tc-v850.c:2810 msgid "condition sa cannot be used here" msgstr "la condición sa no se puede usar aquí" -#: config/tc-v850.c:2831 +#: config/tc-v850.c:2823 msgid "invalid cache operation name" msgstr "nompre operacional caché inválido" -#: config/tc-v850.c:2836 +#: config/tc-v850.c:2828 msgid "invalid pref operation name" msgstr "nombre pre operacional inválido" -#: config/tc-v850.c:2841 +#: config/tc-v850.c:2833 msgid "invalid vector register name" -msgstr "nombre de registro vectorial no válida" +msgstr "nombre de registro de vector no válida" -#: config/tc-v850.c:2879 +#: config/tc-v850.c:2871 msgid "syntax error: value is missing before the register name" -msgstr "error sintáctico: ausente el valor antes del nombre de registro" +msgstr "error de sintaxis: ausente el valor antes del nombre de registro" -#: config/tc-v850.c:2881 +#: config/tc-v850.c:2873 msgid "syntax error: register not expected" -msgstr "error sintáctico: no se esperaba un registro" +msgstr "error de sintaxis: no se esperaba un registro" -#: config/tc-v850.c:2895 +#: config/tc-v850.c:2887 msgid "syntax error: system register not expected" -msgstr "error sintáctico: no se esperaba un registro de sistema" +msgstr "error de sintaxis: no se esperaba un registro de sistema" -#: config/tc-v850.c:2900 config/tc-v850.c:2905 +#: config/tc-v850.c:2892 config/tc-v850.c:2897 msgid "syntax error: condition code not expected" -msgstr "error sintáctico: no es esperaba código de condición" +msgstr "error de sintaxis: no es esperaba código de condición" -#: config/tc-v850.c:2910 +#: config/tc-v850.c:2902 msgid "syntax error: vector register not expected" -msgstr "error sintáctico: registro vectorial no esperado" +msgstr "error de sintaxis: registro de vector no esperado" -#: config/tc-v850.c:2920 +#: config/tc-v850.c:2913 msgid "immediate 0 cannot be used here" msgstr "el inmediato 0 no se puede usar aquí" # FIXME: ver en el código si se puede cambiar "no es match" por "no coincide" - cfuga -#: config/tc-v850.c:2944 +#: config/tc-v850.c:2937 msgid "immediate operand is not match" msgstr "operando inmediato no coincide" -#: config/tc-v850.c:2957 +#: config/tc-v850.c:2950 msgid "displacement is too large" msgstr "desubicación demasiado grande" -#: config/tc-v850.c:2975 config/tc-xtensa.c:13081 +#: config/tc-v850.c:2968 config/tc-xtensa.c:13093 msgid "invalid operand" msgstr "operando inválido" -#: config/tc-v850.c:3087 +#: config/tc-v850.c:3080 msgid "loop: 32-bit displacement not supported" msgstr "bucle: desplazamiento de 32-bit no compatible" -#: config/tc-vax.c:1344 +#: config/tc-vax.c:1339 msgid "no '[' to match ']'" msgstr "no hay '[' que coincida con ']'" -#: config/tc-vax.c:1360 +#: config/tc-vax.c:1355 msgid "bad register in []" -msgstr "registro equivocado en []" +msgstr "registro incorrecto en []" -#: config/tc-vax.c:1362 +#: config/tc-vax.c:1357 msgid "[PC] index banned" msgstr "índice [PC] prohibido" -#: config/tc-vax.c:1398 +#: config/tc-vax.c:1393 msgid "no '(' to match ')'" msgstr "no hay '(' que coincida con ')'" -#: config/tc-vax.c:1514 +#: config/tc-vax.c:1509 msgid "invalid branch operand" msgstr "operando de ramificación inválido" -#: config/tc-vax.c:1541 +#: config/tc-vax.c:1536 msgid "address prohibits @" msgstr "la dirección prohibe @" -#: config/tc-vax.c:1543 +#: config/tc-vax.c:1538 msgid "address prohibits #" msgstr "la dirección prohibe #" -#: config/tc-vax.c:1547 +#: config/tc-vax.c:1542 msgid "address prohibits -()" msgstr "la dirección prohibe -()" -#: config/tc-vax.c:1549 +#: config/tc-vax.c:1544 msgid "address prohibits ()+" msgstr "la dirección prohibe ()+" -#: config/tc-vax.c:1552 +#: config/tc-vax.c:1547 msgid "address prohibits ()" msgstr "la dirección prohibe ()" -#: config/tc-vax.c:1554 +#: config/tc-vax.c:1549 msgid "address prohibits []" msgstr "la dirección prohibe []" -#: config/tc-vax.c:1556 +#: config/tc-vax.c:1551 msgid "address prohibits register" msgstr "la dirección prohibe un registro" -#: config/tc-vax.c:1558 +#: config/tc-vax.c:1553 msgid "address prohibits displacement length specifier" msgstr "la dirección prohibe un especificador de longitud de desubicación" -#: config/tc-vax.c:1586 +#: config/tc-vax.c:1581 msgid "invalid operand of S^#" msgstr "operando inválido de S^#" -#: config/tc-vax.c:1599 +#: config/tc-vax.c:1594 msgid "S^# needs expression" msgstr "S^# necesita una expresión" -#: config/tc-vax.c:1606 +#: config/tc-vax.c:1601 msgid "S^# may only read-access" msgstr "S^# tal vez sea solamente para acceso de lectura" -#: config/tc-vax.c:1629 +#: config/tc-vax.c:1624 msgid "invalid operand of -()" msgstr "operando inválido de -()" -#: config/tc-vax.c:1635 +#: config/tc-vax.c:1630 msgid "-(PC) unpredictable" msgstr "-(PC) impredecible" -#: config/tc-vax.c:1637 +#: config/tc-vax.c:1632 msgid "[]index same as -()register: unpredictable" msgstr "[]índice igual que -()registro: impredecible" -#: config/tc-vax.c:1669 +#: config/tc-vax.c:1664 msgid "invalid operand of ()+" msgstr "operando inválido de ()+" -#: config/tc-vax.c:1675 +#: config/tc-vax.c:1670 msgid "(PC)+ unpredictable" msgstr "(PC)+ impredecible" -#: config/tc-vax.c:1677 +#: config/tc-vax.c:1672 msgid "[]index same as ()+register: unpredictable" msgstr "[]índice igual que ()+registro: impredecible" -#: config/tc-vax.c:1700 +#: config/tc-vax.c:1695 msgid "# conflicts length" msgstr "# tiene conflictos con la longitud" -#: config/tc-vax.c:1702 +#: config/tc-vax.c:1697 msgid "# bars register" msgstr "# prohibe el registro" -#: config/tc-vax.c:1722 +#: config/tc-vax.c:1717 msgid "writing or modifying # is unpredictable" msgstr "escribir o modificar # es impredecible" -#: config/tc-vax.c:1748 +#: config/tc-vax.c:1743 msgid "length not needed" msgstr "no se necesita la longitud" -#: config/tc-vax.c:1755 +#: config/tc-vax.c:1750 msgid "can't []index a register, because it has no address" msgstr "no se puede []indizar un registro, porque no tiene dirección" -#: config/tc-vax.c:1757 +#: config/tc-vax.c:1752 msgid "a register has no address" msgstr "un registro no tiene dirección" -#: config/tc-vax.c:1766 +#: config/tc-vax.c:1761 msgid "PC part of operand unpredictable" msgstr "PC como parte operativa es impredecible" -#: config/tc-vax.c:1924 +#: config/tc-vax.c:1919 msgid "odd number of bytes in operand description" msgstr "número impar de bytes en la descripción de operando" -#: config/tc-vax.c:1938 +#: config/tc-vax.c:1933 msgid "Bad operand" -msgstr "Operando equivocado" +msgstr "Operando incorrecto" -#: config/tc-vax.c:1943 +#: config/tc-vax.c:1938 msgid "Not enough operands" msgstr "No hay suficientes operandos" -#: config/tc-vax.c:2220 +#: config/tc-vax.c:2212 msgid "SYMBOL TABLE not implemented" msgstr "SYMBOL TABLE no está implementado" -#: config/tc-vax.c:2224 +#: config/tc-vax.c:2216 msgid "TOKEN TRACE not implemented" msgstr "TOKEN TRACE no está implementado" -#: config/tc-vax.c:2228 +#: config/tc-vax.c:2220 #, c-format msgid "Displacement length %s ignored!" msgstr "¡Se descarta la longitud de desubicación %s!" -#: config/tc-vax.c:2232 +#: config/tc-vax.c:2224 #, c-format msgid "I don't need or use temp. file \"%s\"." msgstr "No se necesita o se utiliza el fichero temp. «%s»." -#: config/tc-vax.c:2236 +#: config/tc-vax.c:2228 msgid "I don't use an interpass file! -V ignored" msgstr "¡No se usa un fichero entre pasos! Se descarta -V" -#: config/tc-vax.c:2293 +#: config/tc-vax.c:2252 #, c-format msgid "" "VAX options:\n" @@ -18736,85 +21295,70 @@ msgstr "" "-T\t\t\tse descarta\n" "-V\t\t\tse descarta\n" -#: config/tc-vax.c:2302 +#: config/tc-vax.c:2261 #, c-format msgid "" -"VMS options:\n" -"-+\t\t\thash encode names longer than 31 characters\n" -"-1\t\t\t`const' handling compatible with gcc 1.x\n" -"-H\t\t\tshow new symbol after hash truncation\n" -"-h NUM\t\t\tdon't hash mixed-case names, and adjust case:\n" -"\t\t\t0 = upper, 2 = lower, 3 = preserve case\n" -"-v\"VERSION\"\t\tcode being assembled was produced by compiler \"VERSION\"\n" +"ELF options:\n" +"-k -pic\t\t\tenable PIC mode\n" +"-Q[y|n]\t\t\tignored\n" msgstr "" -"Opciones de VMS:\n" -"-+\t\t\tdispersa los nombres de codificación más largos que 31 caracteres\n" -"-1\t\t\tmanejo de `const' handling compatible con gcc 1.x\n" -"-H\t\t\tmuestra el símbolo nuevo tras truncado de dispersión\n" -"-h NUM\t\t\tno dispersa nombres con mayúsculas y minúsculas mezcladas, y ajusta:\n" -"\t\t\t0 = mayúsculas, 2 = minúsculas, 3 = preservar mayúsculas/minúsculas\n" -"-v\"VERSION\"\t\tel código a ensamblar fue producido por el compilador \"VERSION\"\n" -#: config/tc-vax.c:2467 +#: config/tc-vax.c:2422 #, c-format msgid "Ignoring statement due to \"%s\"" msgstr "Se descarta la declaración debido a «%s»" -#: config/tc-vax.c:2484 +#: config/tc-vax.c:2439 #, c-format msgid "Aborting because statement has \"%s\"" msgstr "Se aborta porque la declaración tiene «%s»" -#: config/tc-vax.c:2529 +#: config/tc-vax.c:2484 msgid "Can't relocate expression" msgstr "No se puede reubicar la expresión" -#: config/tc-vax.c:2632 +#: config/tc-vax.c:2587 msgid "Bignum not permitted in short literal. Immediate mode assumed." msgstr "No se permite un número grande en una literal short. Se asume el modo inmediato." -#: config/tc-vax.c:2641 +#: config/tc-vax.c:2596 msgid "Can't do flonum short literal: immediate mode used." msgstr "No se puede hacer una literal short de un número de coma flotante: se usa el modo inmediato." -#: config/tc-vax.c:2688 -#, c-format -msgid "A bignum/flonum may not be a displacement: 0x%lx used" +#: config/tc-vax.c:2643 +#, fuzzy, c-format +#| msgid "A bignum/flonum may not be a displacement: 0x%lx used" +msgid "A bignum/flonum may not be a displacement: 0x%<PRIx64> used" msgstr "Un número grande/de coma flotante no puede ser una desubicación: se usa 0x%lx" -#: config/tc-vax.c:3000 +#: config/tc-vax.c:2956 #, c-format msgid "Short literal overflow(%ld.), immediate mode assumed." msgstr "Desbordamiento de la literal short (%ld.), se asume el modo inmediato." -#: config/tc-vax.c:3009 +#: config/tc-vax.c:2965 #, c-format msgid "Forced short literal to immediate mode. now_seg=%s to_seg=%s" msgstr "Se fuerza la literal short a modo inmediato. now_seg=%s to_seg=%s" -#: config/tc-vax.c:3074 +#: config/tc-vax.c:3030 msgid "Length specification ignored. Address mode 9F used" msgstr "Se descarta la especificación de longitud. Se usa el modo de direccionamiento 9F" -#: config/tc-vax.c:3132 +#: config/tc-vax.c:3088 msgid "Invalid operand: immediate value used as base address." msgstr "Operando inválido: valor inmediato empleado como dirección base." -#: config/tc-vax.c:3134 +#: config/tc-vax.c:3090 msgid "Invalid operand: immediate value used as address." msgstr "Operando inválido: valor inmediato empleado como dirección." -#: config/tc-vax.c:3159 +#: config/tc-vax.c:3115 #, c-format msgid "Symbol %s used as immediate operand in PIC mode." msgstr "Se utilizó el símbolo %s como operando inmediato en modo PIC." -#: config/tc-vax.c:3264 -#, c-format -msgid "VIP_BEGIN error:%s" -msgstr "Error VIP_BEGIN:%s" - -#: config/tc-visium.c:862 +#: config/tc-visium.c:836 msgid "Bad call to MD_ATOF()" msgstr "Equivocación de llamada a MD_ATOF()" @@ -18850,7 +21394,7 @@ msgstr "Tipo desconocido" #: config/tc-wasm32.c:625 msgid "only single block types allowed" -msgstr "sólo tipos de bloque simple permitido" +msgstr "solo tipos de bloque simple permitido" #: config/tc-wasm32.c:635 msgid "instruction does not take a block type" @@ -18870,7 +21414,7 @@ msgstr "ausente desplazamiento" #: config/tc-wasm32.c:675 msgid "missing local index" -msgstr "indizado local ausente" +msgstr "indexado local ausente" #: config/tc-wasm32.c:680 msgid "missing break count" @@ -18892,21 +21436,16 @@ msgstr "llamada de firma ausente" msgid "missing table index" msgstr "distribución indizada ausente" -#: config/tc-wasm32.c:726 config/tc-z80.c:1951 read.c:3755 +#: config/tc-wasm32.c:726 config/tc-z80.c:3697 read.c:4019 #, c-format msgid "junk at end of line, first unrecognized character is `%c'" msgstr "basura al final de la línea; el primer carácter descartado es `%c'" -#: config/tc-xc16x.c:218 -#, c-format -msgid " XC16X specific command line options:\n" -msgstr " Opciones de línea de mandatos específicas de XC16X:\n" - #: config/tc-xgate.c:215 msgid "architecture variant invalid" msgstr "arquitectura variante no válida" -#: config/tc-xgate.c:370 +#: config/tc-xgate.c:369 #, c-format msgid "" "Freescale XGATE co-processor options:\n" @@ -18929,16 +21468,16 @@ msgstr "" " --print-opcodes escribe la lista de instrucciones con sintaxis\n" " --generate-example genera un ejemplo de cada instrucción" -#: config/tc-xgate.c:493 +#: config/tc-xgate.c:492 msgid "opcode missing or not found on input line" msgstr "" -#: config/tc-xgate.c:498 +#: config/tc-xgate.c:497 #, fuzzy, c-format msgid "opcode %s not found in opcode hash table" msgstr "error interno: no se puede dispersar el código de operación «%s»: %s" -#: config/tc-xgate.c:511 +#: config/tc-xgate.c:509 msgid "matching operands to opcode" msgstr "coincidiendo operandos para código operacional" @@ -18962,7 +21501,7 @@ msgstr "Valor externo de 3-bit de límite." #: config/tc-xgate.c:731 msgid "Value out of 4-bit range." -msgstr "Valor fuera de límite de 4-bit." +msgstr "Valor fuera de rango de 4-bit." #: config/tc-xgate.c:738 msgid "Value out of 5-bit range." @@ -18972,32 +21511,32 @@ msgstr "Valor externo de 5-bit de límite." msgid ":operand has too many bits" msgstr ":operand tiene demasiadas bits" -#: config/tc-xgate.c:992 +#: config/tc-xgate.c:994 msgid "unknown operand count" msgstr "contador operacional desconocido" -#: config/tc-xgate.c:1236 config/tc-xgate.c:1248 +#: config/tc-xgate.c:1238 config/tc-xgate.c:1250 msgid ": expected register name r0-r7 " msgstr ": se esperaba un nombre registrado r0-r7 " -#: config/tc-xgate.c:1284 +#: config/tc-xgate.c:1286 #, c-format msgid ":operand value(%d) too big for constraint" msgstr ":operando valor%d) demasiado grande para instrucción" -#: config/tc-xgate.c:1302 +#: config/tc-xgate.c:1304 msgid "you must use a hi/lo directive or 16-bit macro to load a 16-bit value." msgstr "" -#: config/tc-xgate.c:1315 +#: config/tc-xgate.c:1317 msgid ":unknown relocation constraint size" msgstr ":unknown de reubicación de tamaño restringido" -#: config/tc-xgate.c:1322 +#: config/tc-xgate.c:1324 msgid ": expected register name ccr " msgstr ": esperado nombre de registro ccr " -#: config/tc-xgate.c:1328 +#: config/tc-xgate.c:1330 msgid ": expected register name pc " msgstr ": esperaba nombre de registrado pc " @@ -19020,560 +21559,551 @@ msgstr "no se admite el tamaño de compostura %d" msgid "unsupported fptr fixup" msgstr "no se admite la compostura fptr" -#: config/tc-xtensa.c:636 +#: config/tc-xtensa.c:650 msgid "illegal range of target hardware versions" msgstr "límite ilegal de versiones de hardware objetivo" -#: config/tc-xtensa.c:807 +#: config/tc-xtensa.c:831 msgid "--density option is ignored" msgstr "se descarta la opción --density" -#: config/tc-xtensa.c:810 +#: config/tc-xtensa.c:834 msgid "--no-density option is ignored" msgstr "se descarta la opción --no-density" -#: config/tc-xtensa.c:828 +#: config/tc-xtensa.c:852 msgid "--generics is deprecated; use --transform instead" msgstr "--generics es obsoleto; utilice en su lugar --transform" -#: config/tc-xtensa.c:831 +#: config/tc-xtensa.c:855 msgid "--no-generics is deprecated; use --no-transform instead" msgstr "--no-generics es obsoleto; utilice en su lugar --no-transform" -#: config/tc-xtensa.c:834 +#: config/tc-xtensa.c:858 msgid "--relax is deprecated; use --transform instead" msgstr "--relax es obsoleto; utilice en su lugar --transform" -#: config/tc-xtensa.c:837 +#: config/tc-xtensa.c:861 msgid "--no-relax is deprecated; use --no-transform instead" msgstr "--no-relax es obsoleto; utilice en su lugar --no-transform" -#: config/tc-xtensa.c:854 +#: config/tc-xtensa.c:878 msgid "--absolute-literals option not supported in this Xtensa configuration" msgstr "la opción --absolute-literals no se admite en esta configuración Xtensa" -#: config/tc-xtensa.c:927 +#: config/tc-xtensa.c:951 msgid "prefer-l32r conflicts with prefer-const16" msgstr "prefer-l32r tiene conflictos con prefer-const16" -#: config/tc-xtensa.c:933 +#: config/tc-xtensa.c:957 msgid "prefer-const16 conflicts with prefer-l32r" msgstr "prefer-const16 tiene conflictos con prefer-l32r" -#: config/tc-xtensa.c:942 config/tc-xtensa.c:951 config/tc-xtensa.c:955 +#: config/tc-xtensa.c:966 config/tc-xtensa.c:975 config/tc-xtensa.c:979 msgid "invalid target hardware version" msgstr "versión de hardware objetivo inválido" -#: config/tc-xtensa.c:999 +#: config/tc-xtensa.c:1025 msgid "no-auto-litpools is incompatible with auto-litpool-limit" msgstr "no-auto-litpools es incompatible con auto-litpool-limit" -#: config/tc-xtensa.c:1001 config/tc-xtensa.c:1004 +#: config/tc-xtensa.c:1027 config/tc-xtensa.c:1030 msgid "invalid auto-litpool-limit argument" msgstr "argumento inválido auto-litpool-limit" -#: config/tc-xtensa.c:1006 +#: config/tc-xtensa.c:1032 msgid "invalid auto-litpool-limit argument (range is 100-10000)" msgstr "argumento inválido auto-litpool-limit (límite es 100-10000)" -#: config/tc-xtensa.c:1183 +#: config/tc-xtensa.c:1229 msgid "unmatched .end directive" msgstr "directiva .end no coincidida" -#: config/tc-xtensa.c:1212 +#: config/tc-xtensa.c:1258 msgid ".begin directive with no matching .end directive" msgstr "directiva .begin sin una directiva .end coincidente" -#: config/tc-xtensa.c:1253 +#: config/tc-xtensa.c:1299 msgid "[no-]generics is deprecated; use [no-]transform instead" msgstr "[no-]generics es obsoleto; utilice en su lugar [no-]transform" -#: config/tc-xtensa.c:1258 +#: config/tc-xtensa.c:1304 msgid "[no-]relax is deprecated; use [no-]transform instead" msgstr "[no-]relax es obsoleto; utilice en su lugar [no-]transform" -#: config/tc-xtensa.c:1271 +#: config/tc-xtensa.c:1317 #, c-format msgid "directive %s cannot be negated" msgstr "la directiva %s no se puede negar" -#: config/tc-xtensa.c:1277 +#: config/tc-xtensa.c:1323 msgid "unknown directive" msgstr "desconoce directiva" -#: config/tc-xtensa.c:1298 config/tc-xtensa.c:1394 config/tc-xtensa.c:1636 -#: config/tc-xtensa.c:5890 +#: config/tc-xtensa.c:1344 config/tc-xtensa.c:1440 config/tc-xtensa.c:1670 +#: config/tc-xtensa.c:5931 msgid "directives are not valid inside bundles" msgstr "las directivas no son válidas dentro de una agrupación" -#: config/tc-xtensa.c:1310 +#: config/tc-xtensa.c:1356 msgid ".begin literal is deprecated; use .literal instead" msgstr "El uso de .begin literal es obsoleto. Utilice en su lugar .literal" -#: config/tc-xtensa.c:1324 +#: config/tc-xtensa.c:1370 msgid "cannot set literal_prefix inside literal fragment" msgstr "no se puede establecer literal_prefix dentro de un fragmento literal" -#: config/tc-xtensa.c:1357 +#: config/tc-xtensa.c:1403 msgid ".begin [no-]density is ignored" msgstr "se descarta .begin [no-]density" -#: config/tc-xtensa.c:1364 config/tc-xtensa.c:1414 +#: config/tc-xtensa.c:1410 config/tc-xtensa.c:1460 msgid "Xtensa absolute literals option not supported; ignored" msgstr "Xtensa como opción absoluta literal no se admite; se descarta" -#: config/tc-xtensa.c:1407 +#: config/tc-xtensa.c:1453 msgid ".end [no-]density is ignored" msgstr "se descarta .end [no-]density" -#: config/tc-xtensa.c:1432 +#: config/tc-xtensa.c:1478 #, c-format msgid "does not match begin %s%s at %s:%d" msgstr "no coincide begin %s%s en %s:%d" -#: config/tc-xtensa.c:1487 +#: config/tc-xtensa.c:1533 msgid ".literal_position inside literal directive; ignoring" msgstr ".literal_position dentro de una directiva literal; se descarta" -#: config/tc-xtensa.c:1507 +#: config/tc-xtensa.c:1552 msgid ".literal not allowed inside .begin literal region" msgstr ".literal no se permite dentro de una región .begin literal" -#: config/tc-xtensa.c:1546 +#: config/tc-xtensa.c:1580 msgid "expected comma or colon after symbol name; rest of line ignored" msgstr "se esperaba coma o punto y coma tras nombre del símbolo: se descarta el resto de la línea" -#: config/tc-xtensa.c:1605 +#: config/tc-xtensa.c:1639 msgid "fall through frequency must be greater than 0" msgstr "la frecuencia de caída debe ser mayor a 0" -#: config/tc-xtensa.c:1613 +#: config/tc-xtensa.c:1647 msgid "branch target frequency must be greater than 0" msgstr "la frecuencia de ramificación de objetivo debe ser mayor a 0" -#: config/tc-xtensa.c:1661 +#: config/tc-xtensa.c:1695 #, c-format msgid "opcode-specific %s relocation used outside an instruction" msgstr "se usó la reubicación %s específica de código operacional fuera de una instrucción" -#: config/tc-xtensa.c:1671 +#: config/tc-xtensa.c:1705 #, c-format msgid "invalid use of %s relocation" msgstr "uso inválid de la reubicación %s" -#: config/tc-xtensa.c:1867 config/tc-xtensa.c:1884 +#: config/tc-xtensa.c:1901 config/tc-xtensa.c:1918 #, c-format msgid "bad register name: %s" -msgstr "nombre de registro equivocado: %s" +msgstr "nombre de registro incorrecto: %s" -#: config/tc-xtensa.c:1873 +#: config/tc-xtensa.c:1907 #, c-format msgid "bad register number: %s" -msgstr "número de registro equivocado: %s" +msgstr "número de registro incorrecto: %s" -#: config/tc-xtensa.c:1937 +#: config/tc-xtensa.c:1971 msgid "pcrel relocation not allowed in an instruction" msgstr "no se permite la reubicación de pcrel en una instrucción" -#: config/tc-xtensa.c:1954 -msgid "register number out of range" -msgstr "número de registro fuera de límite" - -#: config/tc-xtensa.c:2040 +#: config/tc-xtensa.c:2074 msgid "extra colon" msgstr "punto y coma extra" -#: config/tc-xtensa.c:2101 +#: config/tc-xtensa.c:2135 msgid "incorrect register number, ignoring" msgstr "número de registro incorrecto, se descarta" -#: config/tc-xtensa.c:2182 +#: config/tc-xtensa.c:2216 #, c-format msgid "cannot encode opcode \"%s\"" msgstr "no se puede codificar el código operacional «%s»" -#: config/tc-xtensa.c:2274 +#: config/tc-xtensa.c:2308 #, c-format msgid "not enough operands (%d) for '%s'; expected %d" msgstr "no hay suficientes operandos (%d) para «%s»; se esperaban %d" -#: config/tc-xtensa.c:2281 +#: config/tc-xtensa.c:2315 #, c-format msgid "too many operands (%d) for '%s'; expected %d" msgstr "demasiados operandos (%d) para «%s»; se esperaban %d" -#: config/tc-xtensa.c:2332 +#: config/tc-xtensa.c:2366 #, c-format msgid "invalid register '%s' for '%s' instruction" msgstr "registro «%s» inválido para «%s» como instrucción" -#: config/tc-xtensa.c:2339 +#: config/tc-xtensa.c:2373 #, c-format msgid "invalid register number (%ld) for '%s' instruction" msgstr "número de registro (%ld) inválido para instrucción «%s»" -#: config/tc-xtensa.c:2406 +#: config/tc-xtensa.c:2440 #, c-format msgid "invalid register number (%ld) for '%s'" msgstr "número de registro inválido (%ld) para «%s»" -#: config/tc-xtensa.c:2793 +#: config/tc-xtensa.c:2839 #, c-format msgid "operand %d of '%s' has out of range value '%u'" -msgstr "operando %d de «%s» tiene el valor fuera de límite '%u'" +msgstr "operando %d de «%s» tiene el valor fuera de rango '%u'" -#: config/tc-xtensa.c:2799 +#: config/tc-xtensa.c:2845 #, c-format msgid "operand %d of '%s' has invalid value '%u'" msgstr "operando %d de «%s» tiene el valor inválido '%u'" -#: config/tc-xtensa.c:2846 +#: config/tc-xtensa.c:2892 #, c-format msgid "internal error: unknown option name '%s'" msgstr "error interno: nombre desconocido opcional '%s'" -#: config/tc-xtensa.c:3955 +#: config/tc-xtensa.c:4001 msgid "can't handle generation of literal/labels yet" msgstr "no se puede manipular la generación de literales/etiquetas aún" -#: config/tc-xtensa.c:3959 +#: config/tc-xtensa.c:4005 msgid "can't handle undefined OP TYPE" msgstr "no se puede manipular un OP TYPE sin definir" -#: config/tc-xtensa.c:4020 config/tc-xtensa.c:4029 +#: config/tc-xtensa.c:4066 config/tc-xtensa.c:4075 #, c-format msgid "found %d operand for '%s': Expected %d" msgid_plural "found %d operands for '%s': Expected %d" msgstr[0] "se encontraron %d operando para «%s»: Se esperaban %d" msgstr[1] "se encontraron %d operandos para «%s»: Se esperaban %d" -#: config/tc-xtensa.c:4052 +#: config/tc-xtensa.c:4098 msgid "immediate operands sum to greater than 32" msgstr "la suma de los operandos inmediatos es mayor a 32" -#: config/tc-xtensa.c:4304 +#: config/tc-xtensa.c:4350 #, c-format msgid "invalid relocation for operand %i of '%s'" -msgstr "reubicación no válida para operando %i de «%s»" +msgstr "reubicación no válida para el operando %i de «%s»" -#: config/tc-xtensa.c:4314 +#: config/tc-xtensa.c:4360 #, c-format msgid "invalid expression for operand %i of '%s'" -msgstr "expresión no válida para operando %i en «%s»" +msgstr "expresión no válida para el operando %i en «%s»" -#: config/tc-xtensa.c:4324 +#: config/tc-xtensa.c:4370 #, c-format msgid "invalid relocation in instruction slot %i" msgstr "reubicación no válida en la ranura de instrucción %i" -#: config/tc-xtensa.c:4331 +#: config/tc-xtensa.c:4377 #, c-format msgid "undefined symbol for opcode \"%s\"" msgstr "símbolo indefinido para el código operacional «%s»" -#: config/tc-xtensa.c:4819 +#: config/tc-xtensa.c:4852 msgid "opcode 'NOP.N' unavailable in this configuration" msgstr "cód op 'NOP.N' no está disponible en esta configuración" -#: config/tc-xtensa.c:4879 +#: config/tc-xtensa.c:4912 msgid "get_expanded_loop_offset: invalid opcode" msgstr "get_expanded_loop_offset: código operacional inválido" -#: config/tc-xtensa.c:5037 +#: config/tc-xtensa.c:5073 #, c-format msgid "assembly state not set for first frag in section %s" msgstr "no se estableció el estado de ensamblado para el primer fragmento en la sección %s" -#: config/tc-xtensa.c:5090 +#: config/tc-xtensa.c:5126 #, c-format msgid "unaligned branch target: %d bytes at 0x%lx" msgstr "objetivo de ramificación sin alinear: %d bytes en 0x%lx" -#: config/tc-xtensa.c:5134 +#: config/tc-xtensa.c:5170 #, c-format msgid "unaligned loop: %d bytes at 0x%lx" msgstr "ciclo sin alinear: %d bytes en 0x%lx" -#: config/tc-xtensa.c:5159 +#: config/tc-xtensa.c:5195 msgid "unexpected fix" msgstr "corrección inesperada" -#: config/tc-xtensa.c:5170 config/tc-xtensa.c:5174 +#: config/tc-xtensa.c:5206 config/tc-xtensa.c:5210 msgid "undecodable fix" msgstr "fix que no se puede decodificar" -#: config/tc-xtensa.c:5330 +#: config/tc-xtensa.c:5371 msgid "labels are not valid inside bundles" msgstr "las etiquetas no son válidas dentro de una agrupación" -#: config/tc-xtensa.c:5350 +#: config/tc-xtensa.c:5391 msgid "invalid last instruction for a zero-overhead loop" msgstr "instrucción last no válida para un ciclo con adelanto cero" -#: config/tc-xtensa.c:5417 +#: config/tc-xtensa.c:5458 msgid "extra opening brace" msgstr "llave que abre extra" -#: config/tc-xtensa.c:5427 +#: config/tc-xtensa.c:5468 msgid "extra closing brace" msgstr "llave que cierra extra" -#: config/tc-xtensa.c:5454 +#: config/tc-xtensa.c:5495 msgid "missing closing brace" msgstr "ausentea llave que cierra" -#: config/tc-xtensa.c:5552 config/tc-xtensa.c:5581 +#: config/tc-xtensa.c:5593 config/tc-xtensa.c:5622 #, c-format msgid "wrong number of operands for '%s'" -msgstr "número equivocado de operandos para «%s»" +msgstr "número incorrecto de operandos para «%s»" -#: config/tc-xtensa.c:5568 +#: config/tc-xtensa.c:5609 #, c-format msgid "bad relocation expression for '%s'" -msgstr "expresión de reubicación equivocada para «%s»" +msgstr "expresión de reubicación incorrecta para «%s»" -#: config/tc-xtensa.c:5603 +#: config/tc-xtensa.c:5644 #, c-format msgid "unknown opcode or format name '%s'" msgstr "código operacional o nombre de formato desconocido «%s»" -#: config/tc-xtensa.c:5609 +#: config/tc-xtensa.c:5650 msgid "format names only valid inside bundles" -msgstr "los nombres de formato sólo son válidos dentro de agregados" +msgstr "los nombres de formato solo son válidos dentro de agregados" -#: config/tc-xtensa.c:5614 +#: config/tc-xtensa.c:5655 #, c-format msgid "multiple formats specified for one bundle; using '%s'" msgstr "se especificaron múltiples formatos para un agregado; se usa «%s»" -#: config/tc-xtensa.c:5664 +#: config/tc-xtensa.c:5705 msgid "entry instruction with stack decrement < 16" msgstr "instrucción entry con decremento de pila < 16" # entry → entrada o asiento -#: config/tc-xtensa.c:5718 +#: config/tc-xtensa.c:5759 msgid "unaligned entry instruction" msgstr "entrada de instrucción sin alinear" -#: config/tc-xtensa.c:5783 +#: config/tc-xtensa.c:5824 msgid "bad instruction format" -msgstr "formato de instrucción equivocado" +msgstr "formato de instrucción incorrecto" -#: config/tc-xtensa.c:5786 +#: config/tc-xtensa.c:5827 msgid "invalid relocation" msgstr "reubicación no válida" -#: config/tc-xtensa.c:5797 +#: config/tc-xtensa.c:5838 #, c-format msgid "invalid relocation for '%s' instruction" msgstr "reubicación para instrucción '%s' no válida" -#: config/tc-xtensa.c:5809 +#: config/tc-xtensa.c:5850 #, c-format msgid "invalid relocation for operand %d of '%s'" -msgstr "reubicación no válida para operando %d de «%s»" +msgstr "reubicación no válida para el operando %d de «%s»" -#: config/tc-xtensa.c:6075 +#: config/tc-xtensa.c:6133 #, c-format msgid "unhandled local relocation fix %s" msgstr "compostura de reubicación local %s sin manipular" -#: config/tc-xtensa.c:6126 +#: config/tc-xtensa.c:6182 #, c-format msgid "internal error; cannot generate `%s' relocation" msgstr "error interno; incapaz de generar «%s» reubicado" -#: config/tc-xtensa.c:6343 +#: config/tc-xtensa.c:6399 msgid "The option \"--no-allow-flix\" prohibits multi-slot flix." msgstr "La opción \"--no-allow-flix\" prohibe flix en ranuras múltiples." -#: config/tc-xtensa.c:6350 +#: config/tc-xtensa.c:6406 msgid "couldn't find a valid instruction format" msgstr "no se puede encontrar un formato de instrucción válido" -#: config/tc-xtensa.c:6351 +#: config/tc-xtensa.c:6407 #, c-format msgid " ops were: " msgstr " ops fueron: " -#: config/tc-xtensa.c:6353 +#: config/tc-xtensa.c:6409 #, c-format msgid " %s;" msgstr " %s;" -#: config/tc-xtensa.c:6363 +#: config/tc-xtensa.c:6419 #, c-format msgid "mismatch for format '%s': #slots = %d, #opcodes = %d" msgstr "" -#: config/tc-xtensa.c:6372 config/tc-xtensa.c:6469 +#: config/tc-xtensa.c:6428 config/tc-xtensa.c:6525 msgid "illegal resource usage in bundle" msgstr "se incluyó un recurso ilegal en el agregado" -#: config/tc-xtensa.c:6558 +#: config/tc-xtensa.c:6614 #, c-format msgid "opcodes '%s' (slot %d) and '%s' (slot %d) write the same register" msgstr "ambos códigos operacionales «%s» (ranura %d) y «%s» (ranura %d) escriben en el mismo registro" -#: config/tc-xtensa.c:6563 +#: config/tc-xtensa.c:6619 #, c-format msgid "opcodes '%s' (slot %d) and '%s' (slot %d) write the same state" msgstr "ambos códigos operacionales «%s» (ranura %d) y «%s» (ranura %d) escriben en el mismo estado" -#: config/tc-xtensa.c:6568 +#: config/tc-xtensa.c:6624 #, c-format msgid "opcodes '%s' (slot %d) and '%s' (slot %d) write the same port" msgstr "ambos códigos operacionales «%s» (ranura %d) y «%s» (ranura %d) escriben en el mismo puerto" -#: config/tc-xtensa.c:6573 +#: config/tc-xtensa.c:6629 #, c-format msgid "opcodes '%s' (slot %d) and '%s' (slot %d) both have volatile port accesses" msgstr "ambos códigos operacionales «%s» (ranura %d) y «%s» (ranura %d) tienen acceso de puerto volatile" -#: config/tc-xtensa.c:6589 +#: config/tc-xtensa.c:6645 msgid "multiple branches or jumps in the same bundle" msgstr "múltiples ramificaciones o saltos en el mismo agregado" -#: config/tc-xtensa.c:7041 +#: config/tc-xtensa.c:7097 msgid "cannot assemble into a literal fragment" msgstr "no se puede ensamblar en un fragmento literal" -#: config/tc-xtensa.c:7043 +#: config/tc-xtensa.c:7099 msgid "..." msgstr "..." -#: config/tc-xtensa.c:8255 +#: config/tc-xtensa.c:8318 msgid "instruction sequence (write a0, branch, retw) may trigger hardware errata" msgstr "la secuencia de instrucción (write a0, branch, retw) puede activar errores de hardware" -#: config/tc-xtensa.c:8367 +#: config/tc-xtensa.c:8430 msgid "branching or jumping to a loop end may trigger hardware errata" msgstr "la ramificación o salto al final de un ciclo puede activar errores de hardware" -#: config/tc-xtensa.c:8449 +#: config/tc-xtensa.c:8512 msgid "loop end too close to another loop end may trigger hardware errata" msgstr "el final de un ciclo demasiado cerca a otro final de ciclo puede activar errores de hardware" -#: config/tc-xtensa.c:8458 +#: config/tc-xtensa.c:8521 #, c-format msgid "fr_var %lu < length %d" msgstr "fr_var %lu < longitud %d" -#: config/tc-xtensa.c:8615 +#: config/tc-xtensa.c:8679 msgid "loop containing less than three instructions may trigger hardware errata" msgstr "un ciclo que contiene menos de tres instrucciones puede activar errores de hardware" -#: config/tc-xtensa.c:8687 +#: config/tc-xtensa.c:8751 msgid "undecodable instruction in instruction frag" msgstr "instrucción no decodificable en la instrucción frag" -#: config/tc-xtensa.c:8797 +#: config/tc-xtensa.c:8861 msgid "invalid empty loop" msgstr "ciclo vacío inválido" -#: config/tc-xtensa.c:8802 +#: config/tc-xtensa.c:8866 msgid "loop target does not follow loop instruction in section" msgstr "el objetivo del ciclo no sigue la instrucción loop en la sección" -#: config/tc-xtensa.c:9367 +#: config/tc-xtensa.c:9433 msgid "cannot find suitable trampoline" msgstr "no puede encontrar lanzador útil" -#: config/tc-xtensa.c:9622 +#: config/tc-xtensa.c:9688 msgid "bad relaxation state" -msgstr "estado de relajación equivocado" +msgstr "estado de relajación incorrecto" -#: config/tc-xtensa.c:9680 +#: config/tc-xtensa.c:9746 #, c-format msgid "fr_var (%ld) < length (%d)" msgstr "fr_var (%ld) < longitud (%d)" -#: config/tc-xtensa.c:10380 +#: config/tc-xtensa.c:10446 msgid "jump target out of range; no usable trampoline found" -msgstr "omite objetivo fuera de límite; trampolín encontrado no utilizable" +msgstr "omite objetivo fuera de rango; trampolín encontrado no utilizable" -#: config/tc-xtensa.c:10504 +#: config/tc-xtensa.c:10570 msgid "invalid relaxation fragment result" msgstr "resultado de fragmento de relajación inválido" -#: config/tc-xtensa.c:10586 +#: config/tc-xtensa.c:10652 msgid "unable to widen instruction" msgstr "incapaz de extender instrucción" -#: config/tc-xtensa.c:10725 +#: config/tc-xtensa.c:10790 msgid "multiple literals in expansion" msgstr "literales múltiples en la expansión" -#: config/tc-xtensa.c:10729 +#: config/tc-xtensa.c:10794 msgid "no registered fragment for literal" msgstr "no hay un fragmento registrado para la literal" -#: config/tc-xtensa.c:10731 +#: config/tc-xtensa.c:10796 msgid "number of literal tokens != 1" msgstr "número de elementos literales != 1" -#: config/tc-xtensa.c:10860 config/tc-xtensa.c:10866 +#: config/tc-xtensa.c:10925 config/tc-xtensa.c:10931 #, c-format msgid "unresolved loop target symbol: %s" msgstr "símbolo objetivo del ciclo sin resolver: %s" -#: config/tc-xtensa.c:10972 +#: config/tc-xtensa.c:11419 #, c-format -msgid "invalid expression evaluation type %d" -msgstr "tipo de evaluación de expresión %d inválido" - -#: config/tc-xtensa.c:10989 -msgid "loop too long for LOOP instruction" -msgstr "ciclo demasiado largo para la instrucción LOOP" +msgid "fixes not all moved from %s" +msgstr "no se ‘movi’eron todas las composturas de %s" -#: config/tc-xtensa.c:11327 config/tc-xtensa.c:11567 +#: config/tc-xtensa.c:11547 msgid "literal pool location required for text-section-literals; specify with .literal_position" msgstr "se requiere la ubicación del conjunto de literales para text-section-literals; especifique con .literal_position" -#: config/tc-xtensa.c:11436 -#, c-format -msgid "fixes not all moved from %s" -msgstr "no se ‘movi’eron todas las composturas de %s" - -#: config/tc-xtensa.c:12395 +#: config/tc-xtensa.c:12407 msgid "too many operands in instruction" msgstr "demasiados operandos en la instrucción" -#: config/tc-xtensa.c:12605 +#: config/tc-xtensa.c:12617 msgid "invalid symbolic operand" -msgstr "operando simbólico inválido" +msgstr "operando de símbolo inválido" -#: config/tc-xtensa.c:12666 +#: config/tc-xtensa.c:12678 msgid "operand number mismatch" msgstr "no coincide el número de operandos" -#: config/tc-xtensa.c:12670 +#: config/tc-xtensa.c:12682 #, c-format msgid "cannot encode opcode \"%s\" in the given format \"%s\"" msgstr "no se puede codificar el código operacional «%s» en el formato dado «%s»" -#: config/tc-xtensa.c:12695 +#: config/tc-xtensa.c:12707 #, c-format msgid "xtensa-isa failure: %s" msgstr "fallo xtensa-isa: %s" -#: config/tc-xtensa.c:12772 +#: config/tc-xtensa.c:12784 msgid "invalid opcode" msgstr "código operacional inválido" -#: config/tc-xtensa.c:12778 +#: config/tc-xtensa.c:12790 msgid "too few operands" msgstr "muy pocos operandos" -#: config/tc-xtensa.c:12828 +#: config/tc-xtensa.c:12796 +msgid "too many operands" +msgstr "demasiados operandos" + +#: config/tc-xtensa.c:12840 msgid "multiple writes to the same register" msgstr "escrituras múltiples al mismo registro" -#: config/tc-xtensa.c:12942 config/tc-xtensa.c:12948 +#: config/tc-xtensa.c:12954 config/tc-xtensa.c:12960 msgid "out of memory" msgstr "memoria agotada" -#: config/tc-xtensa.c:13037 +#: config/tc-xtensa.c:13049 msgid "TLS relocation not allowed in FLIX bundle" msgstr "TLS reubicado no permitido dentro del haz FLIX" @@ -19581,92 +22111,242 @@ msgstr "TLS reubicado no permitido dentro del haz FLIX" #. 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:13043 +#: config/tc-xtensa.c:13055 msgid "unexpected TLS relocation" msgstr "reubicación TLS inesperada" -#: config/tc-xtensa.c:13087 +#: config/tc-xtensa.c:13099 msgid "symbolic operand not allowed" msgstr "no se permite operando simbólico" -#: config/tc-xtensa.c:13124 +#: config/tc-xtensa.c:13136 msgid "cannot decode instruction format" msgstr "no se puede decodificar el formato de instrucción" -#: config/tc-xtensa.c:13268 +#: config/tc-xtensa.c:13280 msgid "ignoring extra '-rename-section' delimiter ':'" msgstr "se descarta el delimitador '-rename-section' adicional ':'" -#: config/tc-xtensa.c:13273 +#: config/tc-xtensa.c:13285 #, c-format msgid "ignoring invalid '-rename-section' specification: '%s'" msgstr "se descarta la especificación '-rename-section' no válida: '%s'" -#: config/tc-xtensa.c:13284 +#: config/tc-xtensa.c:13296 #, c-format msgid "section %s renamed multiple times" msgstr "la sección %s se renombró varias veces" -#: config/tc-xtensa.c:13286 +#: config/tc-xtensa.c:13298 #, c-format msgid "multiple sections remapped to output section %s" msgstr "secciones múltiples remapeadas a la sección de salida %s" -#: config/tc-z80.c:326 +#: config/tc-z80.c:199 +#, fuzzy, c-format +#| msgid "Invalid COPR identifier" +msgid "Invalid CPU is specified: %s" +msgstr "Identificador COPR inválido" + +#: config/tc-z80.c:224 +#, fuzzy, c-format +#| msgid "Invalid FTEST completer: %s" +msgid "Invalid EXTENSION is specified: %s" +msgstr "Completador FTEST inválido: %s" + +#: config/tc-z80.c:279 +#, fuzzy, c-format +#| msgid "Invalid floating point number" +msgid "invalid floating point numbers type `%s'" +msgstr "Número de coma flotante inválido" + +#: config/tc-z80.c:300 config/tc-z80.c:309 +#, fuzzy, c-format +#| msgid "Invalid expression on command line.\n" +msgid "invalid INST in command line: %s" +msgstr "Expresión inválida en la línea de órdenes.\n" + +#: config/tc-z80.c:403 +#, fuzzy, c-format +#| msgid "" +#| " -march=CPU[,+EXTENSION...]\n" +#| " generate code for CPU and EXTENSION, CPU is one of:\n" +msgid "" +"\n" +"CPU model options:\n" +" -march=CPU[+EXT...][-EXT...]\n" +"\t\t\t generate code for CPU, where CPU is one of:\n" +msgstr "" +" -march=CPU[,+EXTENSIÓN...]\n" +" genera código para el CPU y la EXTENSIÓN. CPU es uno de:\n" + +#: config/tc-z80.c:409 +#, c-format +msgid "And EXT is combination (+EXT - add, -EXT - remove) of:\n" +msgstr "" + +#: config/tc-z80.c:412 +#, c-format +msgid "" +"\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" +" -fp-s=FORMAT\t\t set single precision FP numbers format\n" +" -fp-d=FORMAT\t\t set double precision FP numbers format\n" +"Where FORMAT one of:\n" +" ieee754\t\t IEEE754 compatible (depends on directive)\n" +" half\t\t\t IEEE754 half precision (16 bit)\n" +" single\t\t IEEE754 single precision (32 bit)\n" +" double\t\t IEEE754 double precision (64 bit)\n" +" zeda32\t\t Zeda z80float library 32 bit format\n" +" math48\t\t 48 bit format from Math48 library\n" +"\n" +"Default: -march=z80+xyhl+infc\n" +msgstr "" + +#: config/tc-z80.c:618 msgid "-- unterminated string" msgstr "-- cadena sin terminar" -#: config/tc-z80.c:392 -msgid "floating point numbers are not implemented" -msgstr "los números de coma flotante no están implementados" +#: config/tc-z80.c:794 +#, fuzzy +#| msgid "unrecognised instruction %s" +msgid "undocumented instruction" +msgstr "instrucción %s no reconocida" -#: config/tc-z80.c:517 config/tc-z80.c:523 +#: config/tc-z80.c:838 config/tc-z80.c:844 msgid "mismatched parentheses" msgstr "paréntesis sin coincidencia" -#: config/tc-z80.c:560 +#: config/tc-z80.c:936 msgid "bad expression syntax" -msgstr "sintaxis de expresión equivocada" +msgstr "sintaxis de expresión incorrecta" + +#: config/tc-z80.c:1147 +#, c-format +msgid "%d-bit overflow (%+<PRId64>)" +msgstr "" -#: config/tc-z80.c:722 +#: config/tc-z80.c:1162 +#, fuzzy, c-format +#| msgid "invalid immediate size" +msgid "invalid data size %d" +msgstr "tamaño inmediato inválido" + +#: config/tc-z80.c:1247 msgid "cannot make a relative jump to an absolute location" msgstr "no se puede hacer un salto relativo a una ubicación absoluta" -#: config/tc-z80.c:734 config/tc-z80.c:2002 -msgid "overflow" -msgstr "desbordamiento" +#: config/tc-z80.c:1254 +#, c-format +msgid "index overflow (%+<PRId64>)" +msgstr "" + +#: config/tc-z80.c:1257 +#, c-format +msgid "offset overflow (%+<PRId64>)" +msgstr "" -#: config/tc-z80.c:1106 config/tc-z80.c:1149 config/tc-z80.c:1193 -#: config/tc-z80.c:1261 config/tc-z80.c:1313 config/tc-z80.c:1367 -#: config/tc-z80.c:1636 +#: config/tc-z80.c:1460 config/tc-z80.c:1707 config/tc-z80.c:1750 +#: config/tc-z80.c:1831 config/tc-z80.c:1861 config/tc-z80.c:1920 +#: config/tc-z80.c:1980 config/tc-z80.c:2033 config/tc-z80.c:2066 +#: config/tc-z80.c:2123 config/tc-z80.c:2741 config/tc-z80.c:2790 +#: config/tc-z80.c:2828 config/tc-z80.c:2888 config/tc-z80.c:2948 +#: config/tc-z80.c:3024 config/tc-z80.c:3047 msgid "bad instruction syntax" msgstr "equivocación de instrucción sintáctica" -#: config/tc-z80.c:1239 +#: config/tc-z80.c:1898 msgid "condition code invalid for jr" msgstr "código de condición inválido para jr" -#: config/tc-z80.c:1745 +#: config/tc-z80.c:2487 config/tc-z80.c:2498 config/tc-z80.c:2514 +#: config/tc-z80.c:2547 +#, fuzzy +#| msgid "score3d instruction." +msgid "ADL mode instruction" +msgstr "instrucción score3d." + +#. 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:2622 +#, fuzzy +#| msgid "unsupported instruction `%s'" +msgid "unsupported instruction, assembled as NOP" +msgstr "no admitió instrucción «%s»" + +#: config/tc-z80.c:3215 config/tc-z80.c:3246 msgid "parentheses ignored" msgstr "se descartan los paréntesis" -#: config/tc-z80.c:1977 config/tc-z8k.c:1467 config/tc-z8k.c:1530 -msgid "relative jump out of range" -msgstr "salto relativo fuera de límite" +#: config/tc-z80.c:3263 +#, fuzzy +#| msgid "opcode `%s' not supported for target %s" +msgid "CPU mode is unsupported by target" +msgstr "no se admite el código operacional «%s» para el objetivo %s" + +#: config/tc-z80.c:3285 +#, fuzzy +#| msgid "Tag name expected" +msgid "assignment expected" +msgstr "Se esperaba un nombre de etiqueta" -#: config/tc-z80.c:1994 -msgid "index offset out of range" -msgstr "desplazamiento indizado fuera de límite" +#: config/tc-z80.c:3690 +#, fuzzy, c-format +#| msgid "Unknown instruction '%s'" +msgid "Unknown instruction `%s'" +msgstr "Instrucción desconocida «%s»" + +#: config/tc-z80.c:3766 +#, fuzzy, c-format +#| msgid "index offset out of range" +msgid "8-bit signed offset out of range (%+ld)" +msgstr "desplazamiento indexado fuera de rango" -#: config/tc-z80.c:2036 config/tc-z8k.c:1538 +#: config/tc-z80.c:3789 #, c-format -msgid "md_apply_fix: unknown r_type 0x%x\n" +msgid "8-bit overflow (%+ld)" +msgstr "" + +#: config/tc-z80.c:3806 +#, c-format +msgid "16-bit overflow (%+ld)" +msgstr "" + +#: config/tc-z80.c:3814 +#, c-format +msgid "24-bit overflow (%+ld)" +msgstr "" + +#: config/tc-z80.c:3823 +#, c-format +msgid "32-bit overflow (%+ld)" +msgstr "" + +#: config/tc-z80.c:3836 +#, fuzzy, c-format +#| msgid "md_apply_fix: unknown r_type 0x%x\n" +msgid "md_apply_fix: unknown reloc type 0x%x\n" msgstr "md_apply_fix: r_type 0x%x desconocido\n" +#: config/tc-z80.c:4033 config/tc-z80.c:4092 +#, fuzzy +#| msgid "invalid syntax class" +msgid "invalid syntax" +msgstr "clase de sintaxis inválida" + +#: config/tc-z80.c:4111 +msgid "overflow" +msgstr "desbordamiento" + #: config/tc-z8k.c:281 #, c-format msgid "register rr%d out of range" -msgstr "registro rr%d fuera de límite" +msgstr "registro rr%d fuera de rango" #: config/tc-z8k.c:283 #, c-format @@ -19676,17 +22356,17 @@ msgstr "el registro rr%d no existe" #: config/tc-z8k.c:295 #, c-format msgid "register rh%d out of range" -msgstr "registro rh%d fuera de límite" +msgstr "registro rh%d fuera de rango" #: config/tc-z8k.c:307 #, c-format msgid "register rl%d out of range" -msgstr "registro rl%d fuera de límite" +msgstr "registro rl%d fuera de rango" #: config/tc-z8k.c:320 #, c-format msgid "register rq%d out of range" -msgstr "registro rq%d fuera de límite" +msgstr "registro rq%d fuera de rango" #: config/tc-z8k.c:322 #, c-format @@ -19696,7 +22376,7 @@ msgstr "el registro rq%d no existe" #: config/tc-z8k.c:334 #, c-format msgid "register r%d out of range" -msgstr "registro r%d fuera de límite" +msgstr "registro r%d fuera de rango" #: config/tc-z8k.c:375 #, c-format @@ -19706,12 +22386,12 @@ msgstr "se esperaba %c" #: config/tc-z8k.c:390 #, c-format msgid "register is wrong size for a word %s" -msgstr "el registro tiene el tamaño equivocado para un word %s" +msgstr "el registro tiene el tamaño incorrecto para un word %s" #: config/tc-z8k.c:404 #, c-format msgid "register is wrong size for address %s" -msgstr "el registro tiene el tamaño equivocado para la dirección %s" +msgstr "el registro tiene el tamaño incorrecto para la dirección %s" #: config/tc-z8k.c:538 #, c-format @@ -19741,32 +22421,32 @@ msgstr "opción no válida «%s»" msgid "invalid indirect register size" msgstr "tamaño de registro indirecto inválido" -#: config/tc-z8k.c:941 config/tc-z8k.c:1097 config/tc-z8k.c:1102 +#: config/tc-z8k.c:941 config/tc-z8k.c:1107 config/tc-z8k.c:1112 msgid "invalid control register name" msgstr "nombre de registro de control inválido" -#: config/tc-z8k.c:1086 +#: config/tc-z8k.c:1096 msgid "immediate must be 1 or 2" msgstr "el inmediato debe ser 1 o 2" -#: config/tc-z8k.c:1089 +#: config/tc-z8k.c:1099 msgid "immediate 1 or 2 expected" msgstr "se esperaba un inmediato 1 o 2" -#: config/tc-z8k.c:1120 +#: config/tc-z8k.c:1130 msgid "can't use R0 here" msgstr "no se puede usar R0 aquí" -#: config/tc-z8k.c:1278 +#: config/tc-z8k.c:1288 msgid "Can't find opcode to match operands" msgstr "No se puede encontrar el código operacional que coincida con los operandos" -#: config/tc-z8k.c:1325 +#: config/tc-z8k.c:1335 #, c-format msgid "invalid architecture -z%s" msgstr "arquitectura -z%s no válida" -#: config/tc-z8k.c:1344 +#: config/tc-z8k.c:1354 #, c-format msgid "" " Z8K options:\n" @@ -19779,94 +22459,103 @@ msgstr "" " -z8002 genera código sin segmentar\n" " -linkrelax crea código relajable por el enlazador\n" -#: config/tc-z8k.c:1356 +#: config/tc-z8k.c:1366 #, c-format msgid "call to md_convert_frag\n" msgstr "se llama a md_convert_frag\n" -#: config/tc-z8k.c:1463 config/tc-z8k.c:1503 config/tc-z8k.c:1526 +#: config/tc-z8k.c:1473 config/tc-z8k.c:1513 config/tc-z8k.c:1536 msgid "cannot branch to odd address" msgstr "no se puede ramificar a una dirección impar" -#: config/tc-z8k.c:1485 +#: config/tc-z8k.c:1477 config/tc-z8k.c:1540 +msgid "relative jump out of range" +msgstr "salto relativo fuera de rango" + +#: config/tc-z8k.c:1495 msgid "relative address out of range" -msgstr "dirección relativa fuera de límite" +msgstr "dirección relativa fuera de rango" -#: config/tc-z8k.c:1506 +#: config/tc-z8k.c:1516 msgid "relative call out of range" -msgstr "llamada relativa fuera de límite" +msgstr "llamada relativa fuera de rango" + +#: config/tc-z8k.c:1548 +#, c-format +msgid "md_apply_fix: unknown r_type 0x%x\n" +msgstr "md_apply_fix: r_type 0x%x desconocido\n" -#: config/tc-z8k.c:1550 +#: config/tc-z8k.c:1560 #, c-format msgid "call to md_estimate_size_before_relax\n" msgstr "se llama a md_estimate_size_before_relax\n" -#: config/xtensa-relax.c:1550 +#: config/xtensa-relax.c:1579 #, c-format msgid "invalid configuration option '%s' in transition rule '%s'" msgstr "la opción de configuración «%s» es no válida en la regla de transición «%s»" -#: config/xtensa-relax.c:1675 config/xtensa-relax.c:1685 +#: config/xtensa-relax.c:1704 config/xtensa-relax.c:1714 #, c-format msgid "opcode '%s': no bound opname '%s' for precondition in '%s'" msgstr "código operacional «%s»: no hay un nombre operacional «%s» enlazado para la precondición en «%s»" -#: config/xtensa-relax.c:1692 +#: config/xtensa-relax.c:1721 #, c-format msgid "opcode '%s': precondition only contains constants in '%s'" -msgstr "código operacional «%s»: la precondición sólo contiene constantes en «%s»" +msgstr "código operacional «%s»: la precondición solo contiene constantes en «%s»" -#: config/xtensa-relax.c:1739 +#: config/xtensa-relax.c:1768 msgid "expected one operand for generated literal" msgstr "se esperaba un operando para la literal generada" -#: config/xtensa-relax.c:1746 +#: config/xtensa-relax.c:1775 msgid "expected 0 operands for generated label" msgstr "se esperaban 0 operandos para la etiqueta generada" -#: config/xtensa-relax.c:1759 +#: config/xtensa-relax.c:1788 #, c-format msgid "invalid opcode '%s' in transition rule '%s'" msgstr "código operacional «%s» inválido en la regla de transición «%s»" -#: config/xtensa-relax.c:1767 +#: config/xtensa-relax.c:1796 #, c-format msgid "opcode '%s': replacement does not have %d op" msgid_plural "opcode '%s': replacement does not have %d ops" msgstr[0] "cód op «%s»: reemplazo no tiene %d operador" msgstr[1] "cód op «%s»: reemplazo no tiene %d operadores" -#: config/xtensa-relax.c:1783 +#: config/xtensa-relax.c:1812 #, c-format msgid "opcode '%s': cannot find literal definition" msgstr "código operacional «%s»: no se puede encontrar la definición literal" -#: config/xtensa-relax.c:1799 config/xtensa-relax.c:1829 +#: config/xtensa-relax.c:1828 config/xtensa-relax.c:1858 #, c-format msgid "opcode '%s': unidentified operand '%s' in '%s'" msgstr "cód op «%s»: operando no identificado «%s» en «%s»" -#: config/xtensa-relax.c:1824 +#: config/xtensa-relax.c:1853 #, c-format msgid "unknown user-defined function %s" msgstr "función definida por el usuario %s desconocida" -#: config/xtensa-relax.c:1835 +#: config/xtensa-relax.c:1864 #, c-format msgid "opcode '%s': could not parse operand '%s' in '%s'" msgstr "código operacional «%s»: no pudo interpretar operando «%s» en «%s»" -#: config/xtensa-relax.c:1875 +#: config/xtensa-relax.c:1904 #, c-format msgid "could not parse INSN_PATTERN '%s'" msgstr "no se puede decodificar INSN_PATTERN «%s»" -#: config/xtensa-relax.c:1879 +#: config/xtensa-relax.c:1908 #, c-format msgid "could not parse INSN_REPL '%s'" msgstr "no se puede decodificar INSN_REPL «%s»" -#: config/xtensa-relax.c:1890 +#: config/xtensa-relax.c:1919 #, c-format msgid "could not build transition for %s => %s" msgstr "no se puede construir la transición para %s => %s" @@ -19881,162 +22570,191 @@ msgstr "no se puede abrir «%s» para escritura" msgid "can't close `%s'" msgstr "no se puede cerrar «%s»" -#: dw2gencfi.c:319 read.c:2441 +#: dw2gencfi.c:313 read.c:2532 #, c-format msgid "bfd_set_section_flags: %s" msgstr "bfd_set_section_flags: %s" -#: dw2gencfi.c:601 dw2gencfi.c:617 +#: dw2gencfi.c:580 dw2gencfi.c:596 #, c-format msgid "register save offset not a multiple of %u" msgstr "registrador guarda desplazamiento no un múltiplo de %u" -#: dw2gencfi.c:700 +#: dw2gencfi.c:678 msgid "CFI state restore without previous remember" msgstr "CFI como declaración restaurada se utilizó sin un recuerdo previo" -#: dw2gencfi.c:758 +#: dw2gencfi.c:737 msgid "missing separator" msgstr "ausente el separador" -#: dw2gencfi.c:807 +#: dw2gencfi.c:786 msgid "bad register expression" msgstr "expresión de registro no válida" -#: dw2gencfi.c:828 dw2gencfi.c:958 dw2gencfi.c:996 dw2gencfi.c:1067 -#: dw2gencfi.c:1140 dw2gencfi.c:1378 +#: dw2gencfi.c:807 dw2gencfi.c:941 dw2gencfi.c:979 dw2gencfi.c:1050 +#: dw2gencfi.c:1123 dw2gencfi.c:1188 dw2gencfi.c:1387 scfidw2gen.c:176 msgid "CFI instruction used without previous .cfi_startproc" msgstr "CFI como instrucción utilizada sin un precedente .cfi_startproc" -#: dw2gencfi.c:1021 +#: dw2gencfi.c:1004 msgid "invalid or unsupported encoding in .cfi_personality" msgstr "codificación no válida o no admitida en .cfi_personality" -#: dw2gencfi.c:1028 +#: dw2gencfi.c:1011 msgid ".cfi_personality requires encoding and symbol arguments" msgstr ".cfi_personality requiere argumentos de codificación y símbolo" -#: dw2gencfi.c:1051 +#: dw2gencfi.c:1034 msgid "wrong second argument to .cfi_personality" -msgstr "segundo argumento equivocado para .cfi_personality" +msgstr "segundo argumento incorrecto para .cfi_personality" -#: dw2gencfi.c:1092 dw2gencfi.c:1168 +#: dw2gencfi.c:1075 dw2gencfi.c:1151 msgid "invalid or unsupported encoding in .cfi_lsda" msgstr "codificación no válida o no admitida en .cfi_lsda" -#: dw2gencfi.c:1099 +#: dw2gencfi.c:1082 msgid ".cfi_lsda requires encoding and symbol arguments" msgstr ".cfi_lsda requiere argumentos de codificación y símbolo" -#: dw2gencfi.c:1124 +#: dw2gencfi.c:1107 msgid "wrong second argument to .cfi_lsda" -msgstr "segundo argumento equivocado para .cfi_lsda" +msgstr "segundo argumento incorrecto para .cfi_lsda" -#: dw2gencfi.c:1190 +#: dw2gencfi.c:1173 msgid "wrong third argument to .cfi_val_encoded_addr" -msgstr "tercer argumento equivocado para .cfi_val_encoded_addr" +msgstr "tercer argumento incorrecto para .cfi_val_encoded_addr" -#: dw2gencfi.c:1280 +#: dw2gencfi.c:1272 msgid "inconsistent uses of .cfi_sections" msgstr "utilizaciones inconsistentes de .cfi_sections" -#: dw2gencfi.c:1291 +#: dw2gencfi.c:1283 msgid "previous CFI entry not closed (missing .cfi_endproc)" msgstr "la entrada CFI previa no está cerrada (ausente .cfi_endproc)" -#: dw2gencfi.c:1332 +#: dw2gencfi.c:1323 scfidw2gen.c:157 msgid ".cfi_endproc without corresponding .cfi_startproc" msgstr ".cfi_endproc sin un .cfi_startproc correspondiente" -#: dw2gencfi.c:1389 +#: dw2gencfi.c:1398 msgid "wrong argument to .cfi_personality_id" msgstr "equivocación del argumento para .cfi_personality_id" -#: dw2gencfi.c:1399 +#: dw2gencfi.c:1408 msgid ".cfi_fde_data without corresponding .cfi_startproc" msgstr ".cfi_fde_data sin correspondiente .cfi_startproc" -#: dw2gencfi.c:1508 +#: dw2gencfi.c:1516 msgid "unexpected .cfi_inline_lsda" msgstr ".cfi_inline_lsda no esperado" -#: dw2gencfi.c:1515 +#: dw2gencfi.c:1523 msgid ".cfi_inline_lsda not valid for this frame" msgstr ".cfi_inline_lsda no válido para este marco" -#: dw2gencfi.c:1523 +#: dw2gencfi.c:1531 msgid ".cfi_inline_lsda seen for frame without .cfi_lsda" msgstr "" -#: dw2gencfi.c:1536 +#: dw2gencfi.c:1544 #, c-format msgid "Alignment too large: %d. assumed." msgstr "Alineación muy grande: %d asumido." -#: dw2gencfi.c:1540 +#: dw2gencfi.c:1548 msgid "Alignment negative: 0 assumed." msgstr "Alineación negativa: se asume 0." -#: dw2gencfi.c:1566 +#: dw2gencfi.c:1574 msgid ".cfi_inline_lsda is not supported for this target" msgstr ".cfi_inline_lsda no está apoyado para este destino" -#: dw2gencfi.c:1573 +#: dw2gencfi.c:1581 msgid ".cfi_fde_data is not supported for this target" msgstr ".cfi_fde_data no es compatible para este objetivo" -#: dw2gencfi.c:1580 +#: dw2gencfi.c:1588 msgid ".cfi_personality_id is not supported for this target" msgstr "no se admite .cfi_personality_id para este objetivo" -#: dw2gencfi.c:2356 dw2gencfi.c:2512 +#: dw2gencfi.c:1906 +#, c-format +msgid "return column number %d overflows in CIE version 1" +msgstr "" + +#: dw2gencfi.c:2388 dw2gencfi.c:2563 msgid "open CFI at the end of file; missing .cfi_endproc directive" msgstr "abre CFI al final del fichero; directiva .cfi_endproc ausente" -#: dw2gencfi.c:2539 +#: dw2gencfi.c:2519 +#, fuzzy +#| msgid "CFI is not supported for this target" +msgid ".sframe not supported for target" +msgstr "CFI no admitido en este objetivo" + +#: dw2gencfi.c:2608 msgid "CFI is not supported for this target" msgstr "CFI no admitido en este objetivo" -#: dwarf2dbg.c:371 dwarf2dbg.c:2268 +#: dwarf2dbg.c:377 dwarf2dbg.c:3311 msgid "view number mismatch" msgstr "vista numérica no coincide" -#: dwarf2dbg.c:779 dwarf2dbg.c:814 +#: dwarf2dbg.c:692 +#, fuzzy, c-format +#| msgid "Big number is too big" +msgid "file number %u is too big" +msgstr "El número grande es demasiado grande" + +#: dwarf2dbg.c:924 +#, c-format +msgid "file table slot %u is already occupied by a different file (%s%s%s vs %s%s%s)" +msgstr "" + +#: dwarf2dbg.c:1180 dwarf2dbg.c:1274 msgid "file number less than one" msgstr "número de fichero menor que uno" -#: dwarf2dbg.c:789 -#, c-format -msgid "file number %ld already allocated" -msgstr "número de fichero %ld ya asignado" +#: dwarf2dbg.c:1217 +#, fuzzy +#| msgid "Second operand to .%s not a constant" +msgid "md5 value too small or not a constant" +msgstr "El segundo operando de .%s no es una constante" + +#: dwarf2dbg.c:1234 +#, fuzzy, c-format +#| msgid "Big number is too big" +msgid "file number %lu is too big" +msgstr "El número grande es demasiado grande" -#: dwarf2dbg.c:819 dwarf2dbg.c:1681 +#: dwarf2dbg.c:1281 dwarf2dbg.c:2304 #, c-format msgid "unassigned file number %ld" msgstr "número de fichero %ld sin asignar" -#: dwarf2dbg.c:888 +#: dwarf2dbg.c:1359 msgid "is_stmt value not 0 or 1" msgstr "is_stmt valorado distinto de 0 o 1" -#: dwarf2dbg.c:900 +#: dwarf2dbg.c:1373 msgid "isa number less than zero" msgstr "número isa menor que uno" -#: dwarf2dbg.c:912 +#: dwarf2dbg.c:1385 msgid "discriminator less than zero" msgstr "discriminador menor que cero" -#: dwarf2dbg.c:931 +#: dwarf2dbg.c:1404 msgid "numeric view can only be asserted to zero" msgstr "" -#: dwarf2dbg.c:966 +#: dwarf2dbg.c:1444 #, c-format msgid "unknown .loc sub-directive `%s'" msgstr "deconoce sub-directorio .loc `%s'" -#: dwarf2dbg.c:1758 +#: dwarf2dbg.c:2438 msgid "internal error: unknown dwarf2 format" msgstr "error interno: formato enana2 desconocido" @@ -20045,288 +22763,283 @@ msgstr "error interno: formato enana2 desconocido" msgid "string too big (%lu bytes)" msgstr "cadena demasiado grande (%lu bytes)" -#: ecoff.c:1585 -#, c-format -msgid "inserting \"%s\" into string hash table: %s" -msgstr "se inserta «%s» en la distribución de de dispersión de cadenas: %s" - -#: ecoff.c:1616 ecoff.c:1809 ecoff.c:1832 ecoff.c:1863 ecoff.c:2016 -#: ecoff.c:2135 +#: ecoff.c:1612 ecoff.c:1805 ecoff.c:1828 ecoff.c:1858 ecoff.c:2010 +#: ecoff.c:2126 msgid "no current file pointer" msgstr "no hay un puntero a fichero actualmente" -#: ecoff.c:1703 +#: ecoff.c:1699 msgid "too many st_End's" msgstr "demasiados st_End's" -#: ecoff.c:2041 -#, c-format -msgid "inserting \"%s\" into tag hash table: %s" -msgstr "se inserta «%s» en la distribución de de dispersión de marcas: %s" - -#: ecoff.c:2204 +#: ecoff.c:2195 msgid "fake .file after real one" msgstr ".file falso tras real" -#: ecoff.c:2293 +#: ecoff.c:2283 msgid "filename goes over one page boundary" msgstr "el nombre de fichero sobrepasa el límite de una página" -#: ecoff.c:2426 +#: ecoff.c:2416 msgid ".begin directive without a preceding .file directive" msgstr "directiva .begin sin una directiva .file precedente" -#: ecoff.c:2433 +#: ecoff.c:2423 msgid ".begin directive without a preceding .ent directive" msgstr "directiva .begin sin una directiva .ent precedente" -#: ecoff.c:2463 +#: ecoff.c:2453 msgid ".bend directive without a preceding .file directive" msgstr "directiva .bend sin una directiva .file precedente" -#: ecoff.c:2470 +#: ecoff.c:2460 msgid ".bend directive without a preceding .ent directive" msgstr "directiva .bend sin una directiva .ent precedente" -#: ecoff.c:2482 +#: ecoff.c:2472 msgid ".bend directive names unknown symbol" msgstr "símbolo desconocido en los nombres de la directiva .bend" -#: ecoff.c:2524 +#: ecoff.c:2514 msgid ".def pseudo-op used inside of .def/.endef; ignored" msgstr "se utiliza el pseudo-operador .def dentro de .def/.endef; se descarta" -#: ecoff.c:2526 +#: ecoff.c:2516 msgid "empty symbol name in .def; ignored" -msgstr "nombre simbólico vacío en .def; se descarta" +msgstr "nombre de símbolo vacío en .def; se descarta" -#: ecoff.c:2563 +#: ecoff.c:2551 msgid ".dim pseudo-op used outside of .def/.endef; ignored" msgstr "se utiliza el pseudo-operador .dim fuera de .def/.endef; se descarta" -#: ecoff.c:2578 +#: ecoff.c:2566 msgid "badly formed .dim directive" msgstr "directiva .dim mal formada" -#: ecoff.c:2591 +#: ecoff.c:2579 msgid "too many .dim entries" msgstr "demasiadas entradas .dim" -#: ecoff.c:2611 +#: ecoff.c:2599 msgid ".scl pseudo-op used outside of .def/.endef; ignored" msgstr "se utiliza el pseudo-operador .scl fuera de .def/.endef; se descarta" -#: ecoff.c:2636 +#: ecoff.c:2624 msgid ".size pseudo-op used outside of .def/.endef; ignored" msgstr "se utiliza el pseudo-operador .size fuera de .def/.endef; se descarta" -#: ecoff.c:2651 +#: ecoff.c:2639 msgid "badly formed .size directive" msgstr "directiva .size mal formada" -#: ecoff.c:2664 +#: ecoff.c:2652 msgid "too many .size entries" msgstr "demasiadas entradas .size" -#: ecoff.c:2686 +#: ecoff.c:2674 msgid ".type pseudo-op used outside of .def/.endef; ignored" msgstr "se utiliza el pseudo-operador .type fuera de .def/.endef; se descarta" #. FIXME: We could handle this by setting the continued bit. #. There would still be a limit: the .type argument can not #. be infinite. -#: ecoff.c:2704 +#: ecoff.c:2692 #, c-format msgid "the type of %s is too complex; it will be simplified" msgstr "el tipo de %s es demasiado complejo; se simplificará" -#: ecoff.c:2715 +#: ecoff.c:2703 msgid "Unrecognized .type argument" msgstr "No reconocido argumento .type" -#: ecoff.c:2753 +#: ecoff.c:2741 msgid ".tag pseudo-op used outside of .def/.endef; ignored" msgstr "se utiliza el pseudo-operador .tag fuera de .def/.endef; se descarta" -#: ecoff.c:2777 +#: ecoff.c:2765 msgid ".val pseudo-op used outside of .def/.endef; ignored" msgstr "se utiliza el pseudo-operador .val fuera de .def/.endef; se descarta" -#: ecoff.c:2785 +#: ecoff.c:2773 msgid ".val expression is too complex" msgstr "la expresión .val es demasiado compleja" -#: ecoff.c:2815 +#: ecoff.c:2803 msgid ".endef pseudo-op used before .def; ignored" msgstr "se utiliza el pseudo-operador .endef antes de .def; se descarta" -#: ecoff.c:2841 ecoff.c:2922 +#: ecoff.c:2829 ecoff.c:2910 msgid "bad COFF debugging information" -msgstr "información de depuración COFF equivocada" +msgstr "información de depuración COFF incorrecta" -#: ecoff.c:2890 +#: ecoff.c:2878 #, c-format msgid "no tag specified for %s" msgstr "no se especificó una marca para %s" -#: ecoff.c:2992 +#: ecoff.c:2980 msgid ".end directive without a preceding .file directive" msgstr "directiva .end sin una directiva .file precedente" -#: ecoff.c:3020 +#: ecoff.c:3008 msgid ".end directive names unknown symbol" msgstr "símbolo desconocido en los nombres de la directiva .end" -#: ecoff.c:3051 +#: ecoff.c:3038 msgid "second .ent directive found before .end directive" msgstr "se encontró una segunda directiva .ent antes de la directiva .end" -#: ecoff.c:3060 +#: ecoff.c:3047 #, c-format msgid "%s directive has no name" msgstr "%s de directiva no tiene ningún nombre" -#: ecoff.c:3121 +#: ecoff.c:3108 msgid "no way to handle .file within .ent/.end section" msgstr "no es posible manipular un .file dentro de una sección .ent/.end" -#: ecoff.c:3238 +#: ecoff.c:3225 msgid ".loc before .file" msgstr ".loc antes de .file" -#: ecoff.c:3440 +#: ecoff.c:3425 #, c-format msgid ".stab%c is not supported" msgstr "no se admite .stab%c" -#: ecoff.c:3450 +#: ecoff.c:3435 #, c-format msgid ".stab%c: ignoring non-zero other field" msgstr ".stab%c: se descarta el otro campo que no es cero" -#: ecoff.c:3484 +#: ecoff.c:3469 #, c-format msgid "line number (%d) for .stab%c directive cannot fit in index field (20 bits)" msgstr "el número de línea (%d) para la directiva .stab%c no cabe en el campo de índice (20 bits)" -#: ecoff.c:3518 +#: ecoff.c:3503 #, c-format msgid "illegal .stab%c directive, bad character" -msgstr "directiva .stab%c ilegal, carácter equivocado" +msgstr "directiva .stab%c ilegal, carácter incorrecto" -#: ecoff.c:3977 ecoff.c:4166 ecoff.c:4191 +#: ecoff.c:3952 ecoff.c:4140 ecoff.c:4165 msgid ".begin/.bend in different segments" msgstr ".begin/.bend en segmentos diferentes" -#: ecoff.c:4687 +#: ecoff.c:4660 msgid "missing .end or .bend at end of file" msgstr ".end ausente o .bend al final del fichero" -#: ecoff.c:5172 +#: ecoff.c:5137 msgid "GP prologue size exceeds field size, using 0 instead" msgstr "GP como prólogo de tamaño del campo excedido, se utiliza 0 en su lugar" -#: expr.c:82 read.c:3820 +#: expr.c:74 read.c:4081 msgid "bignum invalid" msgstr "bignum inválido" -#: expr.c:84 read.c:3822 read.c:4334 read.c:5310 +#: expr.c:76 read.c:4083 read.c:4588 read.c:5358 msgid "floating point number invalid" msgstr "número de coma flotante inválido" -#: expr.c:207 +#: expr.c:229 msgid "bad floating-point constant: exponent overflow" -msgstr "constante de coma flotante equivocada: desbordamiento del exponente" +msgstr "constante de coma flotante incorrecta: desbordamiento del exponente" -#: expr.c:211 +#: expr.c:233 #, c-format msgid "bad floating-point constant: unknown error code=%d" -msgstr "constante de coma flotante equivocada: código de error desconocido=%d" +msgstr "constante de coma flotante incorrecta: código de error desconocido=%d" -#: expr.c:396 +#: expr.c:408 msgid "a bignum with underscores may not have more than 8 hex digits in any word" msgstr "un número grande con subrayados no puede tener más de 8 dígitos hexadecimales en cualquier palabra" -#: expr.c:419 +#: expr.c:431 msgid "a bignum with underscores must have exactly 4 words" msgstr "un número grande con subrayados debe tener exactamente 4 words" #. Either not seen or not defined. #. @@ Should print out the original string instead of #. the parsed number. -#: expr.c:557 +#: expr.c:577 #, c-format msgid "backward ref to unknown label \"%d:\"" msgstr "referencia hacia atrás a la etiqueta desconocida \"%d:\"" -#: expr.c:675 +#: expr.c:690 msgid "character constant too large" msgstr "la constante de carácter es demasiado grande" -#: expr.c:970 +#: expr.c:1021 #, c-format msgid "found '%c', expected: '%c'" msgstr "encontrado `%c', se esperaba: `%c'" -#: expr.c:973 +#: expr.c:1024 #, c-format msgid "missing '%c'" msgstr "ausente '%c'" -#: expr.c:985 read.c:4761 +#: expr.c:1036 read.c:4868 msgid "EBCDIC constants are not supported" msgstr "EBCDIC como constante no son admitidos" -#: expr.c:1112 +#: expr.c:1188 #, c-format msgid "Unary operator %c ignored because bad operand follows" -msgstr "Se descarta el operador unario %c porque hay un operando equivocado a continuación" +msgstr "Se descarta el operador unario %c porque hay un operando incorrecto a continuación" -#: expr.c:1162 expr.c:1193 +#: expr.c:1252 expr.c:1274 msgid "syntax error in .startof. or .sizeof." -msgstr "error sintáctico en .startof. o .sizeof." +msgstr "error de sintaxis en .startof. o .sizeof." -#: expr.c:1274 expr.c:1640 +#: expr.c:1354 expr.c:1690 #, c-format msgid "invalid use of operator \"%s\"" msgstr "uso inválido del operador «%s»" -#: expr.c:1824 +#: expr.c:1872 msgid "missing operand; zero assumed" msgstr "ausente operando; se asume cero" -#: expr.c:1863 +#: expr.c:1911 msgid "left operand is a bignum; integer 0 assumed" msgstr "operando izquierdo es un número grande; se asume el entero 0" -#: expr.c:1865 +#: expr.c:1913 msgid "left operand is a float; integer 0 assumed" msgstr "operando izquierdo es un número de coma flotante; se asume el entero 0" -#: expr.c:1874 +#: expr.c:1922 msgid "right operand is a bignum; integer 0 assumed" msgstr "operando derecho es un número grande; se asume el entero 0" -#: expr.c:1876 +#: expr.c:1924 msgid "right operand is a float; integer 0 assumed" msgstr "operando derecho es un número de coma flotante; se asume el entero 0" -#: expr.c:1947 symbols.c:1396 +#: expr.c:2003 symbols.c:1705 msgid "division by zero" msgstr "división por cero" -#: expr.c:1953 +#: expr.c:2053 symbols.c:1716 msgid "shift count" msgstr "cuenta de desplazamiento" -#: expr.c:2074 +#: expr.c:2179 msgid "operation combines symbols in different segments" msgstr "la operación combina símbolos en segmentos diferentes" -#: expr.c:2396 +#: expr.c:2552 msgid "missing closing '\"'" msgstr "ausente cierre «\"»" +#: expr.c:2580 +#, c-format +msgid "'\\%c' in quoted symbol name; behavior may change in the future" +msgstr "" + #: frags.c:60 msgid "attempt to allocate data in absolute section" msgstr "intentó asignar datos en la sección absoluta" @@ -20335,13 +23048,109 @@ msgstr "intentó asignar datos en la sección absoluta" msgid "attempt to allocate data in common section" msgstr "se intentó asignar datos en la sección común" -#: frags.c:115 write.c:1465 +#: frags.c:115 #, c-format msgid "can't extend frag %lu char" msgid_plural "can't extend frag %lu chars" msgstr[0] "no puede extender %lu carácter fragmentado" msgstr[1] "no puede extender %lu caracteres fragmentados" +#. Offset of size 8 bytes is not supported in SFrame format +#. version 1. +#: gen-sframe.c:410 +#, fuzzy +#| msgid "unsupported syntax" +msgid "SFrame unsupported offset value\n" +msgstr "no se admite la sintaxis" + +#: gen-sframe.c:1009 +#, c-format +msgid "skipping SFrame FDE; non-SP/FP register %u in .cfi_def_cfa" +msgstr "" + +#: gen-sframe.c:1038 +#, c-format +msgid "skipping SFrame FDE; non-SP/FP register %u in .cfi_def_cfa_register" +msgstr "" + +#. No CFA base register in effect. Non-SP/FP CFA base register should +#. not occur, as sframe_xlate_do_def_cfa[_register] would detect this. +#: gen-sframe.c:1076 +msgid "skipping SFrame FDE; .cfi_def_cfa_offset without CFA base register in effect" +msgstr "" + +#: gen-sframe.c:1137 +#, c-format +msgid "skipping SFrame FDE; %s register %u in .cfi_val_offset" +msgstr "" + +#: gen-sframe.c:1164 +#, c-format +msgid "skipping SFrame FDE; %s register %u in .cfi_register" +msgstr "" + +#: gen-sframe.c:1186 +msgid "skipping SFrame FDE; .cfi_remember_state without prior SFrame FRE state" +msgstr "" + +#: gen-sframe.c:1282 +msgid "skipping SFrame FDE; .cfi_negate_ra_state_with_pc" +msgstr "" + +#: gen-sframe.c:1309 +msgid "skipping SFrame FDE; .cfi_window_save" +msgstr "" + +#: gen-sframe.c:1422 +#, fuzzy +#| msgid "unknown" +msgid "(unknown)" +msgstr "desconocido" + +#: gen-sframe.c:1423 +#, c-format +msgid "skipping SFrame FDE; CFI insn %s (%#x)" +msgstr "" + +#: gen-sframe.c:1447 +#, c-format +msgid "skipping SFrame FDE; non-default RA register %u" +msgstr "" + +#: gen-sframe.c:1491 +msgid "skipping SFrame FDE; FP without RA on stack" +msgstr "" + +#: ginsn.c:878 +#, c-format +msgid "missing label '%s' in func '%s' may result in imprecise cfg" +msgstr "" + +#: ginsn.c:987 +#, c-format +msgid "GINSN: found unreachable code in func '%s'" +msgstr "" + +#: ginsn.c:1209 +msgid "GINSN process for prev func not done" +msgstr "" + +#: ginsn.c:1243 +#, c-format +msgid "untraceable control flow for func '%s'" +msgstr "" + +#: ginsn.c:1253 +#, c-format +msgid "Bad cfg of ginsn of func '%s'" +msgstr "" + +#: ginsn.c:1315 ginsn.c:1322 +#, fuzzy +#| msgid "CFI is not supported for this target" +msgid "ginsn unsupported for target" +msgstr "CFI no admitido en este objetivo" + #. For error messages. #. Detect if we are reading from stdin by examining the file #. name returned by as_where(). @@ -20354,7 +23163,7 @@ msgstr[1] "no puede extender %lu caracteres fragmentados" #. line here (assuming of course that we actually have a line of #. input to read), so that it can be displayed in the listing #. that is produced at the end of the assembly. -#: input-file.c:136 input-scrub.c:240 listing.c:353 +#: input-file.c:136 input-scrub.c:259 listing.c:356 msgid "{standard input}" msgstr "{entrada estándar}" @@ -20363,39 +23172,43 @@ msgstr "{entrada estándar}" msgid "can't open %s for reading: %s" msgstr "no se puede abrir %s para lectura: %s" -#: input-file.c:150 input-file.c:224 +#: input-file.c:150 input-file.c:228 #, c-format msgid "can't read from %s: %s" msgstr "no se puede leer de %s: %s" -#: input-file.c:252 listing.c:1443 output-file.c:71 +#: input-file.c:267 listing.c:1456 #, c-format msgid "can't close %s: %s" msgstr "no se puede cerrar %s: %s" -#: input-scrub.c:267 +#: input-scrub.c:289 msgid "macros nested too deeply" msgstr "macros anidadas con demasiada profundidad" +#: input-scrub.c:537 input-scrub.c:540 +msgid "macro invoked from here" +msgstr "" + #: itbl-ops.c:328 #, c-format msgid "Unable to allocate memory for new instructions\n" msgstr "Incapaz de asignar memoria para las instrucciones nuevas\n" -#: listing.c:253 messages.c:165 messages.c:167 messages.c:170 +#: listing.c:255 messages.c:192 messages.c:194 messages.c:197 msgid "Warning: " msgstr "Aviso: " -#: listing.c:259 messages.c:230 messages.c:232 messages.c:235 +#: listing.c:261 messages.c:266 messages.c:268 messages.c:271 msgid "Error: " msgstr "Error: " -#: listing.c:625 +#: listing.c:623 #, c-format msgid "unable to rebuffer file: %s\n" msgstr "incapaz de reservar fichero búfer: %s\n" -#: listing.c:1329 +#: listing.c:1342 #, c-format msgid "" "\n" @@ -20406,12 +23219,12 @@ msgstr "" " marca tiempo \t: %s\n" "\n" -#: listing.c:1339 +#: listing.c:1352 #, c-format msgid "%s " msgstr "%s " -#: listing.c:1344 +#: listing.c:1357 #, c-format msgid "" "\n" @@ -20420,7 +23233,7 @@ msgstr "" "\n" "\t%s " -#: listing.c:1354 +#: listing.c:1367 msgid "" "\n" " options passed\t: " @@ -20428,7 +23241,7 @@ msgstr "" "\n" " opciones pasadas\t: " -#: listing.c:1393 +#: listing.c:1406 #, c-format msgid "" " GNU assembler version %s (%s)\n" @@ -20437,7 +23250,7 @@ msgstr "" " Ensamblador de GNU versión %s (%s)\n" "\t utilizando BFD versión %s." -#: listing.c:1396 +#: listing.c:1409 #, c-format msgid "" "\n" @@ -20446,7 +23259,7 @@ msgstr "" "\n" " fich entrante \t: %s" -#: listing.c:1397 +#: listing.c:1410 #, c-format msgid "" "\n" @@ -20455,7 +23268,7 @@ msgstr "" "\n" " fich saliente \t: %s" -#: listing.c:1398 +#: listing.c:1411 #, c-format msgid "" "\n" @@ -20464,249 +23277,276 @@ msgstr "" "\n" " destino \t: %s" -#: listing.c:1422 +#: listing.c:1435 #, c-format msgid "can't open %s: %s" msgstr "no se puede abrir %s: %s" -#: listing.c:1507 +#: listing.c:1520 msgid "strange paper height, set to no form" msgstr "tamaño de papel extraño, se establece a sin forma" -#: listing.c:1569 +#: listing.c:1544 +msgid "new paper width is too small" +msgstr "" + +#: listing.c:1547 +#, fuzzy +#| msgid "bad or irreducible absolute expression; zero assumed" +msgid "bad or irreducible expression for paper width" +msgstr "expresión absoluta incorrecta o irreducible; se asume cero" + +#: listing.c:1549 +#, fuzzy +#| msgid "missing expression; zero assumed" +msgid "missing expression for paper width" +msgstr "falta una expresión; se asume cero" + +#: listing.c:1600 msgid "new line in title" msgstr "línea nueva en el título" -#. Turns the next expression into a string. -#: macro.c:382 -#, no-c-format -msgid "% operator needs absolute expression" +#: macro.c:399 +#, fuzzy, c-format +#| msgid "% operator needs absolute expression" +msgid "%% operator needs absolute expression" msgstr "el operador % necesita una expresión absoluta" -#: macro.c:536 +#: macro.c:551 #, c-format msgid "Missing parameter qualifier for `%s' in macro `%s'" msgstr "Ausente el calificador de parámetro para «%s» en la macro «%s»" -#: macro.c:546 +#: macro.c:561 #, c-format msgid "`%s' is not a valid parameter qualifier for `%s' in macro `%s'" msgstr "«%s» no es un calificador de parámetro válido para «%s» en la macro «%s»" -#: macro.c:563 +#: macro.c:578 #, c-format msgid "Pointless default value for required parameter `%s' in macro `%s'" msgstr "Valor por defecto sin sentido para el parámetro requerido «%s» en la macro «%s»" -#: macro.c:575 +#: macro.c:588 #, c-format msgid "A parameter named `%s' already exists for macro `%s'" msgstr "Ya existe un parámetro llamado «%s» para la macro «%s»" -#: macro.c:612 +#: macro.c:626 #, c-format msgid "Reserved word `%s' used as parameter in macro `%s'" msgstr "Se utilizó la palabra reservada «%s» como un parámetro en la macro «%s»" -#: macro.c:670 +#: macro.c:680 #, c-format msgid "unexpected end of file in macro `%s' definition" msgstr "final de fichero no esperado en la definición de macro «%s»" -#: macro.c:682 +#: macro.c:692 #, c-format msgid "missing `)' after formals in macro definition `%s'" msgstr "ausente `)' tras los formales en la definición de macro «%s»" -#: macro.c:697 +#: macro.c:707 msgid "Missing macro name" msgstr "Ausente el nombre de macro" -#: macro.c:706 +#: macro.c:716 #, c-format msgid "Bad parameter list for macro `%s'" -msgstr "Lista de parámetros equivocada para la macro «%s»" +msgstr "Lista de parámetros incorrecta para la macro «%s»" -#: macro.c:712 +#: macro.c:724 #, c-format msgid "Macro `%s' was already defined" msgstr "La macro «%s» ya está definida" -#: macro.c:837 macro.c:839 +#: macro.c:850 macro.c:852 msgid "missing `)'" msgstr "ausente `)'" -#: macro.c:936 +#: macro.c:941 #, c-format msgid "`%s' was already used as parameter (or another local) name" msgstr "Ya se usó «%s» como nombre de parámetro (o nombre local)" -#: macro.c:1094 +#: macro.c:1113 msgid "confusion in formal parameters" msgstr "confusión en los parámetros formales" -#: macro.c:1102 +#: macro.c:1121 #, c-format msgid "Parameter named `%s' does not exist for macro `%s'" msgstr "El parámetro nombrado «%s» no existe para la macro «%s»" -#: macro.c:1113 +#: macro.c:1132 #, c-format msgid "Value for parameter `%s' of macro `%s' was already specified" msgstr "El valor para parámetro «%s» de macro «%s» fue ya especificado" -#: macro.c:1127 +#: macro.c:1146 msgid "can't mix positional and keyword arguments" msgstr "no se pueden mezclar argumentos posicionales y palabras clave" -#: macro.c:1138 +#: macro.c:1157 msgid "too many positional arguments" msgstr "demasiados argumentos posicionales" -#: macro.c:1186 +#: macro.c:1205 #, c-format msgid "Missing value for required parameter `%s' of macro `%s'" msgstr "Ausente el valor para el parámetro requerido «%s» de la macro «%s»" -#: macro.c:1304 +#: macro.c:1323 #, c-format msgid "Attempt to purge non-existing macro `%s'" msgstr "Intentaba purgar macro inexistente «%s»" -#: macro.c:1324 +#: macro.c:1344 msgid "unexpected end of file in irp or irpc" msgstr "final de fichero inesperado en irp o irpc" -#: macro.c:1332 +#: macro.c:1355 msgid "missing model parameter" msgstr "ausente el parámetro modelo" -#: messages.c:91 +#: messages.c:92 #, c-format msgid "Assembler messages:\n" msgstr "Mensajes del ensamblador:\n" -#: messages.c:289 +#: messages.c:329 #, c-format msgid "Fatal error: " msgstr "Error fatal: " -#: messages.c:310 +#: messages.c:351 #, c-format msgid "Internal error (%s).\n" msgstr "Error interno (%s).\n" -#: messages.c:312 +#: messages.c:353 #, c-format msgid "Internal error in %s at %s:%d.\n" msgstr "Error interno en %s en %s:%d.\n" -#: messages.c:314 +#: messages.c:355 #, c-format msgid "Internal error at %s:%d.\n" msgstr "Error interno en %s:%d.\n" -#: messages.c:316 +#: messages.c:358 #, c-format msgid "Please report this bug.\n" msgstr "Por favor reporte este bicho.\n" -#: messages.c:400 -#, c-format -msgid "%s out of domain (%d is not a multiple of %d)" +#: messages.c:426 +#, fuzzy, c-format +#| msgid "%s out of domain (%d is not a multiple of %d)" +msgid "%s out of domain (%<PRId64> is not a multiple of %<PRId64>)" msgstr "%s fuera de dominio (%d no es un múltiplo de %d)" -#: messages.c:418 -#, c-format -msgid "%s out of range (%d is not between %d and %d)" -msgstr "%s fuera de límite (%d no está entre %d y %d)" +#. xgettext:c-format. +#: messages.c:442 +#, fuzzy, c-format +#| msgid "%s out of range (%d is not between %d and %d)" +msgid "%s out of range (%<PRId64> is not between %<PRId64> and %<PRId64>)" +msgstr "%s fuera de rango (%d no está entre %d y %d)" #. xgettext:c-format. -#: messages.c:441 -#, c-format -msgid "%s out of range (0x%s is not between 0x%s and 0x%s)" -msgstr "%s fuera de límite (0x%s no está entre 0x%s y 0x%s)" +#: messages.c:455 +#, fuzzy, c-format +#| msgid "%s out of range (0x%s is not between 0x%s and 0x%s)" +msgid "%s out of range (0x%<PRIx64> is not between 0x%<PRIx64> and 0x%<PRIx64>)" +msgstr "%s fuera de rango (0x%s no está entre 0x%s y 0x%s)" -#: output-file.c:34 +#: output-file.c:37 #, c-format msgid "can't open a bfd on stdout %s" msgstr "no se puede abrir un bfd en la salida estándar %s" -#: output-file.c:41 +#: output-file.c:44 #, c-format msgid "selected target format '%s' unknown" msgstr "formato de objetivo seleccionado «%s» desconocido" -#: output-file.c:43 +#: output-file.c:46 #, c-format msgid "can't create %s: %s" msgstr "no se puede crear %s: %s" -#: read.c:520 -#, c-format -msgid "error constructing %s pseudo-op table: %s" +#: read.c:584 +#, fuzzy, c-format +#| msgid "error constructing %s pseudo-op table: %s" +msgid "error constructing %s pseudo-op table" msgstr "error al construir la distribución de pseudo-operadores %s: %s" -#: read.c:702 +#: read.c:768 msgid "cannot change section or subsection inside .bundle_lock" msgstr "" -#: read.c:718 +#: read.c:784 #, c-format msgid ".bundle_lock sequence at %u bytes, but .bundle_align_mode limit is %u bytes" msgstr "secuencia .bundle_lock en %u bytes, pero límite .bundle_align_mode es %u bytes" -#: read.c:727 +#: read.c:793 #, c-format msgid "single instruction is %u bytes long, but .bundle_align_mode limit is %u bytes" msgstr "instrucción simple es %u bytes largos, pero límite .bundle_align_mode es %u bytes" -#: read.c:768 read.c:2811 read.c:3452 +#: read.c:834 read.c:2898 read.c:3526 msgid "ignoring fill value in absolute section" msgstr "ignorando valor relleno dentro de sección absoluta" -#: read.c:770 read.c:2826 read.c:3491 +#: read.c:836 read.c:2913 read.c:3565 #, c-format msgid "ignoring fill value in section `%s'" msgstr "ignorando valor rellenado dentro de sección «%s»" -#: read.c:1130 +#: read.c:1276 #, c-format msgid "unknown pseudo-op: `%s'" msgstr "pseudo-operador desconocido: «%s»" -#: read.c:1183 +#: read.c:1329 msgid "unable to continue with assembly." msgstr "incapaz de continuar con ensamblador." -#: read.c:1225 +#: read.c:1363 #, c-format -msgid "label \"%d$\" redefined" +msgid "local label too large near %s" +msgstr "" + +#: read.c:1386 +#, fuzzy, c-format +#| msgid "label \"%d$\" redefined" +msgid "label \"%ld$\" redefined" msgstr "etiqueta \"%d$\" redefinida" -#: read.c:1372 +#: read.c:1435 msgid ".bundle_lock with no matching .bundle_unlock" msgstr "directiva .bundle_lock sin una coincidencia .bundle_unlock" -#: read.c:1469 +#: read.c:1535 msgid ".abort detected. Abandoning ship." msgstr "se detectó .abort. Se abandona la nave." -#: read.c:1531 +#: read.c:1597 #, c-format msgid "alignment too large: %u assumed" msgstr "alineamiento es muy grande: %u asumido" -#: read.c:1563 +#: read.c:1629 msgid "expected fill pattern missing" msgstr "ausente el patrón de relleno esperado" -#: read.c:1588 +#: read.c:1654 #, c-format msgid "fill pattern too long, truncating to %u" msgstr "" -#: read.c:1686 +#: read.c:1755 msgid "symbol name not recognised in the current locale" msgstr "" @@ -20719,371 +23559,441 @@ msgstr "" #. We do not want to barf on this, especially since such files are used #. in the GCC and GDB testsuites. So we check for negative line numbers #. rather than non-positive line numbers. -#: read.c:2028 +#: read.c:2104 #, c-format msgid "line numbers must be positive; line number %d rejected" msgstr "los números de línea deben ser positivos; número de línea %d rechazada" -#: read.c:2065 +#: read.c:2142 #, c-format msgid "incompatible flag %i in line directive" msgstr "opción incompatible %i en la directriz de línea" -#: read.c:2077 +#: read.c:2154 #, c-format msgid "unsupported flag %i in line directive" msgstr "no se admite la opción %i en la directriz de línea" -#: read.c:2116 +#: read.c:2197 msgid "start address not supported" msgstr "no se admite la dirección de inicio" -#: read.c:2125 +#: read.c:2206 msgid ".err encountered" msgstr "se encontró .err" -#: read.c:2141 +#: read.c:2222 msgid ".error directive invoked in source file" msgstr "se invocó la directiva .error en el fichero fuente" -#: read.c:2142 +#: read.c:2223 msgid ".warning directive invoked in source file" msgstr "se invocó la directiva .warning en el fichero fuente" -#: read.c:2148 +#: read.c:2229 #, c-format msgid "%s argument must be a string" msgstr "argumento %s debe ser una cadena textual" -#: read.c:2180 read.c:2182 +#: read.c:2261 read.c:2263 #, c-format msgid ".fail %ld encountered" msgstr "encontrado .fail %ld" -#: read.c:2222 +#: read.c:2303 #, c-format msgid ".fill size clamped to %d" msgstr "tamaño .fill restringido a %d" -#: read.c:2227 +#: read.c:2308 msgid "size negative; .fill ignored" msgstr "tamaño negativo; se descarta .fill" -#: read.c:2233 +#: read.c:2314 msgid "repeat < 0; .fill ignored" msgstr "repetición < 0; se descarta .fill" -#: read.c:2242 +#: read.c:2321 msgid "non-constant fill count for absolute section" msgstr "contador de relleno no constante para sección absoluta" -#: read.c:2244 +#: read.c:2326 msgid "attempt to fill absolute section with non-zero value" msgstr "trata rellenar sección absoluta con valor distinto de cero" -#: read.c:2250 +#: read.c:2333 #, c-format msgid "attempt to fill section `%s' with non-zero value" msgstr "trata rellenar sección «%s» con valor distinto de cero" -#: read.c:2407 +#: read.c:2498 #, c-format msgid "unrecognized .linkonce type `%s'" msgstr "no reconocido tipo .linkonce «%s»" -#: read.c:2419 +#: read.c:2510 msgid ".linkonce is not supported for this object file format" msgstr ".linkonce no admitido en este formato de fichero objeto" -#: read.c:2514 +#: read.c:2605 msgid "expected alignment after size" msgstr "se esperaba alineamiento tras tamaño" -#: read.c:2733 +#: read.c:2818 #, c-format msgid "attempt to redefine pseudo-op `%s' ignored" msgstr "intenta redefinir pseudo-operador «%s» descartado" -#: read.c:2752 +#: read.c:2839 msgid "ignoring macro exit outside a macro definition." msgstr "se descarta la salida de macro fuera de una definición de macro." -#: read.c:2806 +#: read.c:2893 #, c-format msgid "invalid segment \"%s\"" msgstr "segmento no válido «%s»" -#: read.c:2814 +#: read.c:2901 msgid "only constant offsets supported in absolute section" -msgstr "sólo se admiten los desplazamientos constantes en la sección absoluta" +msgstr "solo se admiten los desplazamientos constantes en la sección absoluta" -#: read.c:2857 +#: read.c:2944 msgid "MRI style ORG pseudo-op not supported" msgstr "MRI de estilo ORG pseudo-operador no apoyado" -#: read.c:3008 -#, c-format -msgid "unrecognized section type `%s'" -msgstr "no reconocido el tipo seccional «%s»" - -#: read.c:3021 -msgid "absolute sections are not supported" -msgstr "no se admiten las secciones absolutas" - -#: read.c:3036 -#, c-format -msgid "unrecognized section command `%s'" -msgstr "no se reconoce la orden seccional «%s»" - -#: read.c:3099 +#: read.c:3115 #, c-format msgid ".end%c encountered without preceding %s" msgstr "se encontró .end%c sin un %s precedente" -#: read.c:3128 read.c:3164 -#, c-format -msgid "negative count for %s - ignored" +#: read.c:3149 +#, fuzzy, c-format +#| msgid "negative count for %s - ignored" +msgid "excessive count %zu for %s - ignored" msgstr "contador negativo para %s - descartado" -#: read.c:3135 read.c:3171 +#: read.c:3156 #, c-format msgid "%s without %s" msgstr "%s sin %s" -#: read.c:3405 +#: read.c:3190 +msgid "`\\' at end of line/statement; ignored" +msgstr "" + +#: read.c:3469 msgid "unsupported variable size or fill value" msgstr "no se admiten el tamaño de la variable o el valor de relleno" -#: read.c:3413 +#: read.c:3477 #, c-format msgid "size value for space directive too large: %lx" msgstr "" -#: read.c:3442 +#: read.c:3503 +msgid ".space repeat count is negative, ignored" +msgstr "el contador de repetición .space es negativo, se descartó" + +#: read.c:3509 msgid ".space repeat count is zero, ignored" msgstr "el contador de repetición .space es cero, se descartó" -#: read.c:3444 -msgid ".space repeat count is negative, ignored" -msgstr "el contador de repetición .space es negativo, se descartó" +#: read.c:3517 +#, fuzzy +#| msgid ".space repeat count is zero, ignored" +msgid ".space repeat count overflow, ignored" +msgstr "el contador de repetición .space es cero, se descartó" -#: read.c:3475 +#: read.c:3549 msgid "space allocation too complex in absolute section" msgstr "la asignación de espacio es demasiado compleja en la sección absoluta" -#: read.c:3481 +#: read.c:3555 msgid "space allocation too complex in common section" msgstr "la asignación de espacio es demasiado compleja en la sección común" -#: read.c:3575 read.c:5020 -#, c-format -msgid "bad floating literal: %s" -msgstr "literal de coma flotante equivocada: %s" +#: read.c:3664 +#, fuzzy +#| msgid "unsupported flag %i in line directive" +msgid "unsupported variable nop control in .nops directive" +msgstr "no se admite la opción %i en la directriz de línea" + +#: read.c:3670 +#, fuzzy +#| msgid "negative count for %s - ignored" +msgid "negative nop control byte, ignored" +msgstr "contador negativo para %s - descartado" -#: read.c:3708 +#: read.c:3739 +#, fuzzy, c-format +#| msgid "unknown floating type type '%c'" +msgid "unknown floating type '%c'" +msgstr "desconoce tipo de coma flotante '%c'" + +#: read.c:3965 #, c-format msgid "%s: would close weakref loop: %s" msgstr "%s: cerraría el ciclo weakref: %s" -#: read.c:3758 +#: read.c:4022 #, c-format msgid "junk at end of line, first unrecognized character valued 0x%x" msgstr "basura al final de la línea; el primer carácter descartado tiene valor 0x%x" -#: read.c:3886 write.c:2133 +#: read.c:4150 write.c:2426 #, c-format msgid "`%s' can't be equated to common symbol `%s'" msgstr "«%s» no puede ser igualdad al símbolo común «%s»" -#: read.c:4023 +#: read.c:4278 msgid "unexpected `\"' in expression" msgstr "`«' o `»' inesperada dentro de expresión" -#: read.c:4036 +#: read.c:4291 msgid "rva without symbol" msgstr "rva sin símbolo" -#: read.c:4105 +#: read.c:4366 msgid "missing or bad offset expression" -msgstr "expresión de desplazamiento ausentente o equivocada" +msgstr "expresión de desplazamiento ausentente o incorrecta" -#: read.c:4126 +#: read.c:4390 msgid "missing reloc type" msgstr "ausente el tipo reubicado" -#: read.c:4150 +#: read.c:4414 msgid "unrecognized reloc type" msgstr "no reconocido el tipo reubicado" -#: read.c:4166 +#: read.c:4430 msgid "bad reloc expression" -msgstr "expresión de reubicación equivocada" +msgstr "expresión de reubicación incorrecta" -#: read.c:4328 read.c:5304 +#: read.c:4582 read.c:5352 read.c:5478 msgid "zero assumed for missing expression" msgstr "se asume cero para la expresión ausentente" -#: read.c:4348 read.c:5333 +#: read.c:4602 read.c:5381 read.c:5497 msgid "attempt to store value in absolute section" msgstr "se intentó almacenar un valor en la sección absoluta" -#: read.c:4355 read.c:5339 +#: read.c:4609 read.c:5387 read.c:5503 #, c-format msgid "attempt to store non-zero value in section `%s'" msgstr "trata almacenar un valor distinto de cero en la sección «%s»" -#: read.c:4441 -#, c-format -msgid "value 0x%llx truncated to 0x%llx" -msgstr "valora 0x%llx truncado a 0x%llx" - -#: read.c:4444 -msgid "value 0x%I64x truncated to 0x%I64x" +#. Leading bits contain both 0s & 1s. +#: read.c:4686 +#, fuzzy, c-format +#| msgid "value 0x%I64x truncated to 0x%I64x" +msgid "value 0x%<PRIx64> truncated to 0x%<PRIx64>" msgstr "valora 0x%I64x truncado a 0x%I64x" -#: read.c:4448 -#, c-format -msgid "value 0x%lx truncated to 0x%lx" -msgstr "valora 0x%lx truncado a 0x%lx" - -#: read.c:4493 +#: read.c:4730 #, c-format msgid "bignum truncated to %d byte" msgid_plural "bignum truncated to %d bytes" msgstr[0] "número grande truncado a %d bytes" msgstr[1] "número grande truncado a %d byte" -#: read.c:4832 read.c:5042 +#: read.c:4939 read.c:5090 msgid "unresolvable or nonpositive repeat count; using 1" msgstr "cuenta de repetición sin resolver o no positiva; se utiliza 1" -#: read.c:4881 -#, c-format -msgid "unknown floating type type '%c'" -msgstr "desconoce tipo de coma flotante '%c'" - -#: read.c:4903 +#: read.c:4982 msgid "floating point constant too large" msgstr "constante de coma flotante demasiado grande" -#: read.c:4967 +#: read.c:5047 msgid "attempt to store float in absolute section" msgstr "trata almacenar flotante en sección absoluta" -#: read.c:4974 +#: read.c:5054 #, c-format msgid "attempt to store float in section `%s'" msgstr "trata almacenar un valor en la sección flotante «%s»" -#: read.c:5422 +#: read.c:5484 +#, fuzzy +#| msgid "bignum invalid" +msgid "number invalid" +msgstr "bignum inválido" + +#: read.c:5740 +#, fuzzy +#| msgid "strings must be placed into a section" +msgid "base64 strings must be placed into a section" +msgstr "las cadenas se deben colocar en una sección" + +#: read.c:5747 +msgid "a string must follow the .base64 pseudo-op" +msgstr "" + +#: read.c:5767 +msgid "expected double quote enclosed string as argument to .base64 pseudo-op" +msgstr "" + +#: read.c:5784 +msgid "end of line encountered inside .base64 string" +msgstr "" + +#: read.c:5795 +msgid ".base64 string terminated early" +msgstr "" + +#: read.c:5800 +#, fuzzy +#| msgid "base register expected" +msgid ".base64 string terminated unexpectedly" +msgstr "se esperaba un registro base" + +#: read.c:5807 +msgid "equals character only allowed at end of .base64 string" +msgstr "" + +#: read.c:5816 +msgid "the equals character cannot start a block of four base64 encoded bytes" +msgstr "" + +#: read.c:5822 +msgid "the equals character cannot be the second character in a block of four base64 encoded bytes" +msgstr "" + +#: read.c:5832 +#, fuzzy, c-format +#| msgid "invalid character %c in operand %d" +msgid "invalid character '%c' found inside .base64 string" +msgstr "carácter inválido %c en el operando %d" + +#: read.c:5834 +#, fuzzy, c-format +#| msgid "invalid character %s in operand %d" +msgid "invalid character %#x found inside .base64 string" +msgstr "carácter inválido %s en operando %d" + +#: read.c:5860 +msgid "no base64 characters expected after '=' padding characters" +msgstr "" + +#: read.c:5870 +msgid ".base64 string must have a terminating double quote character" +msgstr "" + +#: read.c:5903 #, c-format msgid "attempt to store non-empty string in section `%s'" msgstr "trata almacenar cadena no vacía dentro de sección «%s»" -#: read.c:5484 +#: read.c:5965 msgid "strings must be placed into a section" msgstr "las cadenas se deben colocar en una sección" -#: read.c:5547 +#: read.c:6032 msgid "expected <nn>" msgstr "se esperaba <nn>" #. To be compatible with BSD 4.2 as: give the luser a linefeed!! -#: read.c:5586 read.c:5672 +#: read.c:6073 read.c:6160 msgid "unterminated string; newline inserted" msgstr "cadena sin terminar; se insertó una línea nueva" -#: read.c:5686 +#: read.c:6174 msgid "bad escaped character in string" -msgstr "carácter escapado equivocadamente en la cadena" +msgstr "carácter escapado incorrectamente en la cadena" -#: read.c:5711 +#: read.c:6198 msgid "expected address expression" msgstr "se esperaba una expresión direccional" -#: read.c:5730 +#: read.c:6217 #, c-format msgid "symbol \"%s\" undefined; zero assumed" msgstr "símbolo indefinido «%s»; se asume cero" -#: read.c:5733 +#: read.c:6220 msgid "some symbol undefined; zero assumed" msgstr "algunos símbolos sin definir; se asumen cero" -#: read.c:5768 +#: read.c:6254 msgid "this string may not contain '\\0'" msgstr "esta cadena no puede contener '\\0'" -#: read.c:5804 +#: read.c:6291 msgid "missing string" msgstr "ausentea cadena" -#: read.c:5895 +#: read.c:6406 #, c-format msgid ".incbin count zero, ignoring `%s'" msgstr "la cuenta .incbin es cero, se descarta «%s»" -#: read.c:5921 +#: read.c:6418 #, c-format msgid "file not found: %s" msgstr "no se encontró el fichero: %s" -#: read.c:5935 +#: read.c:6428 +#, fuzzy, c-format +#| msgid "unable to locate include file: %s" +msgid "unable to include `%s'" +msgstr "no se puede localizar el fichero de inclusión: %s" + +#: read.c:6437 #, c-format msgid "seek to end of .incbin file failed `%s'" msgstr "falló la búsqueda del final del fichero .incbin «%s»" -#: read.c:5946 +#: read.c:6448 #, c-format msgid "skip (%ld) or count (%ld) invalid for file size (%ld)" msgstr "salto (%ld) o cuenta (%ld) inválidos para el tamaño del fichero (%ld)" -#: read.c:5953 +#: read.c:6455 #, c-format msgid "could not skip to %ld in file `%s'" msgstr "no se puede omiter a %ld en el fichero «%s»" -#: read.c:5962 +#: read.c:6464 #, c-format msgid "truncated file `%s', %ld of %ld bytes read" msgstr "fichero «%s» truncado, leyeron %ld de %ld bytes" -#: read.c:6120 +#: read.c:6601 msgid "missing .func" msgstr "ausente .func" -#: read.c:6137 +#: read.c:6620 msgid ".endfunc missing for previous .func" msgstr "ausente .endfunc para el .func previo" -#: read.c:6196 +#: read.c:6673 #, c-format msgid ".bundle_align_mode alignment too large (maximum %u)" msgstr "alineamiento .bundle_align_mode demasiado grande (maximo %u)" -#: read.c:6201 +#: read.c:6678 msgid "cannot change .bundle_align_mode inside .bundle_lock" msgstr "" -#: read.c:6215 +#: read.c:6692 msgid ".bundle_lock is meaningless without .bundle_align_mode" msgstr "" -#: read.c:6236 +#: read.c:6713 msgid ".bundle_unlock without preceding .bundle_lock" msgstr "directiva .bundle_unlock sin precedente .bundle_lock" -#: read.c:6249 +#: read.c:6726 #, c-format msgid ".bundle_lock sequence is %u bytes, but bundle size is only %u bytes" msgstr "" -#: read.c:6348 +#: read.c:6825 #, c-format msgid "missing closing `%c'" msgstr "ausente de cierre `%c'" -#: read.c:6350 +#: read.c:6827 msgid "stray `\\'" msgstr "basura `\\'" @@ -21092,2460 +24002,330 @@ msgstr "basura `\\'" msgid "invalid argument '%s' to -fdebug-prefix-map" msgstr "argumento «%s» inválido para -fdebug-prefix-map" -#: stabs.c:214 stabs.c:222 stabs.c:230 stabs.c:249 +#: scfi.c:545 +msgid "SCFI: usage of REG_FP as scratch not supported" +msgstr "" + +#: scfi.c:655 +msgid "SCFI: unsupported stack manipulation pattern" +msgstr "" + +#: scfi.c:802 scfi.c:896 +msgid "SCFI: asymetrical register restore" +msgstr "" + +#: scfi.c:969 +msgid "SCFI: Bad CFI propagation perhaps" +msgstr "" + +#: scfi.c:1116 +#, c-format +msgid "SCFI: forward pass failed for func '%s'" +msgstr "" + +#: scfi.c:1123 +#, c-format +msgid "SCFI: backward pass failed for func '%s'" +msgstr "" + +#: scfi.c:1190 +msgid "SCFI: Invalid DWARF CFI opcode data" +msgstr "" + +#. No other GINSN_TYPE_* expected. +#: scfi.c:1242 +#, c-format +msgid "SCFI: bad ginsn for func '%s'" +msgstr "" + +#: scfi.c:1256 scfi.c:1265 +#, fuzzy +#| msgid "CFI is not supported for this target" +msgid "SCFI: unsupported for target" +msgstr "CFI no admitido en este objetivo" + +#: scfidw2gen.c:39 +msgid "SCFI ignores most user-specified CFI directives" +msgstr "" + +#: scfidw2gen.c:132 +msgid "SCFI: missing previous SCFI endproc marker" +msgstr "" + +#: stabs.c:187 #, c-format msgid ".stab%c: missing comma" msgstr ".stab%c: ausentea coma" +#: stabs.c:263 +#, fuzzy, c-format +#| msgid "missing string" +msgid ".stab%c: missing string" +msgstr "ausentea cadena" + #. This could happen for example with a source file with a huge #. number of lines. The only cure is to use a different debug #. format, probably DWARF. -#: stabs.c:242 +#: stabs.c:290 #, c-format msgid ".stab%c: description field '%x' too big, try a different debug format" msgstr ".stab%c: la descripción del campo '%x' es demasiado grande, intente un formato de depuración diferente" -#: stabs.c:423 +#: stabs.c:436 msgid "comma missing in .xstabs" msgstr "ausentea coma en .xstabs" -#: symbols.c:287 +#: symbols.c:386 symbols.c:2550 +#, fuzzy, c-format +#| msgid "Symbol '%s' could not be created." +msgid "symbol '%s' contains multibyte characters" +msgstr "No se puede crear el símbolo «%s»." + +#: symbols.c:526 #, c-format msgid "cannot define symbol `%s' in absolute section" msgstr "no se puede definir el símbolo «%s» en la sección absoluta" -#: symbols.c:421 +#: symbols.c:659 #, c-format msgid "symbol `%s' is already defined as \"%s\"/%s%ld" msgstr "el símbolo «%s» ya está definido como «%s»/%s%ld" -#: symbols.c:496 symbols.c:503 -#, c-format -msgid "inserting \"%s\" into symbol table failed: %s" -msgstr "falló la inserción de «%s» en la distribución simbólicos: %s" - -#: symbols.c:1022 +#: symbols.c:1257 #, c-format msgid "invalid operands (%s and %s sections) for `%s'" msgstr "operandos inválidos (secciones %s y %s) para «%s»" -#: symbols.c:1026 +#: symbols.c:1261 #, c-format msgid "invalid operand (%s section) for `%s'" msgstr "operando inválido (sección %s) para «%s»" -#: symbols.c:1034 +#: symbols.c:1269 #, c-format msgid "invalid operands (%s and %s sections) for `%s' when setting `%s'" msgstr "operandos inválidos (secciones %s y %s) para «%s» al establecer «%s»" -#: symbols.c:1037 +#: symbols.c:1272 #, c-format msgid "invalid operand (%s section) for `%s' when setting `%s'" msgstr "operando inválido (sección %s) para «%s» al establecer «%s»" -#: symbols.c:1086 +#: symbols.c:1341 #, c-format msgid "symbol definition loop encountered at `%s'" -msgstr "definición simbólico encontrada en bucle en `%s'" +msgstr "definición de símbolo encontrada en bucle en `%s'" -#: symbols.c:1113 +#: symbols.c:1368 #, c-format msgid "cannot convert expression symbol %s to complex relocation" msgstr "no se puede convertir el símbolo de expresión %s a una reubicación compleja" -#: symbols.c:1398 +#: symbols.c:1707 #, c-format msgid "division by zero when setting `%s'" msgstr "división por cero al establecer «%s»" #. See PR 20895 for a reproducer. -#: symbols.c:1438 +#: symbols.c:1777 msgid "Invalid operation on symbol" msgstr "Operación no válida en símbolo" -#: symbols.c:1488 write.c:2182 +#: symbols.c:1827 write.c:2475 #, c-format msgid "can't resolve value for symbol `%s'" msgstr "no se puede resolver el valor para el símbolo «%s»" -#: symbols.c:1947 -#, c-format -msgid "\"%d\" (instance number %d of a %s label)" +#: symbols.c:2235 +#, fuzzy, c-format +#| msgid "\"%d\" (instance number %d of a %s label)" +msgid "\"%u\" (instance number %u of a %s label)" msgstr "\"%d\" (número de instancia %d de una etiqueta %s)" -#: symbols.c:1976 +#: symbols.c:2266 +msgid "expression is too complex to be resolved or converted into relocations" +msgstr "" + +#: symbols.c:2268 symbols.c:2271 #, c-format msgid "attempt to get value of unresolved symbol `%s'" msgstr "se intentó obtener el valor del símbolo sin resolver «%s»" #. Do not reassign section symbols. -#: symbols.c:2264 -msgid "section symbols are already global" -msgstr "los símbolos seccional ya son globales" +#: symbols.c:2571 +#, fuzzy +#| msgid "can't create section %s" +msgid "can't make section symbol global" +msgstr "no se puede crear la sección %s" + +#: symbols.c:2577 +#, fuzzy +#| msgid "can't make global register symbol `%s'" +msgid "can't make register symbol global" +msgstr "no se puede hacer global el símbolo de registro «%s»" -#: symbols.c:2377 +#: symbols.c:2683 #, c-format msgid "Accessing function `%s' as thread-local object" msgstr "Se accede a la función «%s» como un objeto de hilo local" -#: symbols.c:2381 +#: symbols.c:2687 #, c-format msgid "Accessing `%s' as thread-local object" msgstr "Se accede «%s» como un objeto de hilo local" -#: write.c:167 -#, c-format -msgid "field fx_size too small to hold %d" +#: write.c:153 +#, fuzzy, c-format +#| msgid "field fx_size too small to hold %d" +msgid "field fx_size too small to hold %lu" msgstr "el campo fx_size es demasiado pequeño para contener %d" -#: write.c:453 -#, c-format -msgid "attempt to .org/.space backwards? (%ld)" +#: write.c:430 +#, fuzzy, c-format +#| msgid "attempt to .org/.space backwards? (%ld)" +msgid "attempt to .org/.space/.nops backwards? (%ld)" msgstr "¿se intentó hacer .org/.space hacia atrás? (%ld)" -#: write.c:471 +#: write.c:452 #, c-format msgid "leb128 operand is an undefined symbol: %s" msgstr "operando lib128 es un símbolo indefinido: %s" -#: write.c:702 +#: write.c:520 +#, fuzzy, c-format +#| msgid "leb128 operand is an undefined symbol: %s" +msgid ".cv_%ccomp operand is an undefined symbol: %s" +msgstr "operando lib128 es un símbolo indefinido: %s" + +#: write.c:712 msgid "invalid offset expression" msgstr "expresión de desplazamiento no válida" -#: write.c:724 +#: write.c:734 msgid "invalid reloc expression" msgstr "expresión de reubicación no válida" -#: write.c:1109 +#: write.c:931 +#, fuzzy, c-format +#| msgid "can't create %s: %s" +msgid "can't resolve %s - %s" +msgstr "no se puede crear %s: %s" + +#: write.c:1144 #, 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] "valor de %s es demasiado grande para el campo de %d byte en %s" msgstr[1] "valor de %s es demasiado grande para el campo de %d bytes en %s" -#: write.c:1125 +#: write.c:1160 #, c-format msgid "signed .word overflow; switch may be too large; %ld at 0x%lx" msgstr "desbordamiento de .word con signo; el interruptor puede ser demasiado grande; %ld en 0x%lx" -#: write.c:1166 +#: write.c:1201 msgid "redefined symbol cannot be used on reloc" msgstr "un símbolo redefinido no se puede usar en la reubicación" -#: write.c:1179 +#: write.c:1214 msgid "relocation out of range" -msgstr "reubicación fuera de límite" +msgstr "reubicación fuera de rango" -#: write.c:1182 +#: write.c:1217 #, c-format msgid "%s:%u: bad return from bfd_install_relocation: %x" -msgstr "%s:%u: devolución equivocada de bfd_install_relocation: %x" +msgstr "%s:%u: devolución incorrecta de bfd_install_relocation: %x" -#: write.c:1210 +#: write.c:1245 msgid "reloc not within (fixed part of) section" msgstr "la reubicación no está dentro (de la parte fija de) la sección" -#: write.c:1280 +#: write.c:1317 msgid "internal error: fixup not contained within frag" msgstr "error interno: la compostura no está contenida en un fragmento" -#: write.c:1398 write.c:1535 +#: write.c:1463 write.c:1579 msgid "can't extend frag" msgstr "no se pueden extender el fragmento" -#: write.c:1603 +#: write.c:1628 +#, fuzzy +#| msgid "unmatched .end directive" +msgid "unimplemented .nops directive" +msgstr "directiva .end no coincidida" + +#: write.c:1662 #, c-format msgid "can't write %ld byte to section %s of %s: '%s'" msgid_plural "can't write %ld bytes to section %s of %s: '%s'" msgstr[0] "no se puede escribir %ld byte a sección %s de %s: «%s»" msgstr[1] "no se puede escribir %ld bytes a sección %s de %s: «%s»" -#: write.c:1630 write.c:1666 +#: write.c:1688 write.c:1722 write.c:1759 #, c-format msgid "can't fill %ld byte in section %s of %s: '%s'" msgid_plural "can't fill %ld bytes in section %s of %s: '%s'" msgstr[0] "no se puede rellenar %ld byte en sección %s de %s: '%s'" msgstr[1] "no se puede rellenar %ld bytes en sección %s de %s: '%s'" -#: write.c:2098 +#: write.c:1976 +#, fuzzy +#| msgid "Unable to use @plt relocation for insn %s" +msgid "unable to create reloc for build note" +msgstr "Incapaz de utilizar @plt para reubicación para insn %s" + +#: write.c:1980 +msgid "<gnu build note>" +msgstr "" + +#: write.c:2391 #, c-format msgid "%s: global symbols not supported in common sections" msgstr "%s: no se admiten los símbolos globales en las secciones comunes" -#: write.c:2112 +#: write.c:2405 #, c-format msgid "local label `%s' is not defined" msgstr "la etiqueta local «%s» no está definida" -#: write.c:2140 +#: write.c:2433 #, c-format msgid "can't make global register symbol `%s'" msgstr "no se puede hacer global el símbolo de registro «%s»" -#: write.c:2444 +#: write.c:2744 #, 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] "rellenando alineamiento (%lu byte) no un múltiplo de %ld" msgstr[1] "rellenando alineamiento (%lu bytes) no un múltiplo de %ld" -#: write.c:2610 +#: write.c:2921 #, c-format msgid ".word %s-%s+%s didn't fit" msgstr "no cabe .word %s-%s+%s" -#: write.c:2704 +#: write.c:3013 msgid "padding added" msgstr "se añadió relleno" -#: write.c:2755 +#: write.c:3064 msgid "attempt to move .org backwards" msgstr "se intentó mover .org hacia atrás" -#: write.c:2779 -msgid ".space specifies non-absolute value" +#: write.c:3089 +#, fuzzy +#| msgid ".space specifies non-absolute value" +msgid ".space, .nops or .fill specifies non-absolute value" msgstr ".space especifica un valor que no es absoluto" -#: write.c:2794 -msgid ".space or .fill with negative value, ignored" +#: write.c:3104 +#, fuzzy +#| msgid ".space or .fill with negative value, ignored" +msgid ".space, .nops or .fill with negative value, ignored" msgstr ".space ó .fill con valor negativo, se descarta" -#: write.c:2865 +#: write.c:3194 #, c-format msgid "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s" msgstr "Se encontró un ciclo infinito al intentar computar las direcciones de los símbolos en la sección %s" - -#~ msgid "%s: data size %ld\n" -#~ msgstr "%s: tamaño de datos %ld\n" - -#~ msgid "missing segment name" -#~ msgstr "falta el nombre del segmento" - -#~ msgid "missing comma after segment name" -#~ msgstr "falta una coma después del nombre del segmento" - -#~ msgid "missing section type name" -#~ msgstr "falta el nombre de tipo de sección" - -#~ msgid "missing section attribute identifier" -#~ msgstr "falta el identificador de atributo de sección" - -#~ msgid "expected comma after operand name" -#~ msgstr "se esperaba una coma después del nombre de operando" - -#~ msgid "negative operand number %d" -#~ msgstr "número de operando %d negativo" - -#~ msgid "attempt to override symbol: %s" -#~ msgstr "se intentó redefinir el símbolo: %s" - -#~ msgid "invalid opertype" -#~ msgstr "tipo de operador inválido" - -#~ msgid "negative subopcode %d" -#~ msgstr "subcódigo de operación %d negativo" - -#~ msgid "subcode value found when opcode not equal 0x03" -#~ msgstr "se encontró un valor de subcódigo cuando el código de operación no es igual a 0x03" - -#~ msgid "invalid subopcode %d" -#~ msgstr "subcódigo de operación %d inválido" - -#~ msgid "expected comma after subopcode" -#~ msgstr "se esperaba una coma después del subcódigo de operación" - -#~ msgid "expected comma after suffix class" -#~ msgstr "se esperaba una coma después de la clase de sufijo" - -#~ msgid "invalid syntax class" -#~ msgstr "clase de sintaxis inválida" - -#~ msgid "opcode 0x3 and SYNTAX_3OP invalid" -#~ msgstr "código de operación 0x3 y SINTAX_3OP inválidos" - -#~ msgid "negative symbol length" -#~ msgstr "longitud de símbolo negativa" - -#~ msgid "ignoring attempt to re-define symbol" -#~ msgstr "se descarta el intento de redefinir el símbolo" - -#~ msgid "length of symbol \"%s\" already %ld, ignoring %d" -#~ msgstr "la longitud del símbolo \"%s\" ya es %ld; se descarta %d" - -#~ msgid "assuming symbol alignment of zero" -#~ msgstr "se asume una alineación de símbolo de cero" - -#~ msgid "\".option\" directive must appear before any instructions" -#~ msgstr "la directiva \".option\" debe aparecer antes de cualquier instrucción" - -#~ msgid "\".option\" directive conflicts with initial definition" -#~ msgstr "la directiva \".option\" tiene conflictos con la definición inicial" - -#~ msgid "\".option\" directive overrides command-line (default) value" -#~ msgstr "la directiva opción \".option\" sobreescribe el valor (por defecto) de la línea de órdenes" - -#~ msgid "invalid identifier for \".option\"" -#~ msgstr "identificador inválido para \".option\"" - -#~ msgid "expression too complex code symbol" -#~ msgstr "expresión demasiado compleja de símbolo de código" - -#~ msgid "missing ')' in %%-op" -#~ msgstr "falta un ')' en %%-op" - -#~ msgid "too many suffixes" -#~ msgstr "demasiados sufijos" - -#~ msgid "symbol as destination register" -#~ msgstr "símbolo como registro destino" - -#~ msgid "8 byte instruction in delay slot" -#~ msgstr "instrucción de 8 bytes en ranura de retardo" - -#~ msgid "conditional branch follows set of flags" -#~ msgstr "ramificación condicional a continuación del conjunto de opciones" - -#~ msgid "alignment negative. 0 assumed." -#~ msgstr "alineación negativa. Se asume 0." - -#~ msgid ":upper16: not allowed instruction" -#~ msgstr ":upper16: no se permite esta instrucción" - -#~ msgid "operand 0 must be FPSCR" -#~ msgstr "el operando 0 debe ser FPSCR" - -#~ msgid "No memory for symbol name." -#~ msgstr "No hay memoria para el nombre del símbolo." - -#~ msgid "Out of memory: could not allocate new space chain entry: %s\n" -#~ msgstr "Memoria agotada: no se puede asignar una nueva entrada de cadena de espacio: %s\n" - -#~ msgid "Out of memory: could not allocate new subspace chain entry: %s\n" -#~ msgstr "Memoria agotada: no se puede asignar una nueva entrada de cadena de subespacio: %s\n" - -#~ msgid "%s relocations do not fit in %d bytes\n" -#~ msgstr "%s reubicaciones no caben en %d bytes\n" - -#~ msgid "internal Error: Can't hash %s: %s" -#~ msgstr "error Interno: No se puede dispersar %s: %s" - -#~ msgid "Imm4 isn't the first operand" -#~ msgstr "Imm4 no es el primer operando" - -#~ msgid "unsupported" -#~ msgstr "no se admite" - -#~ msgid "the first operand of `%s' must be `%s%s'" -#~ msgstr "el primer operando de `%s' debe ser `%s%s'" - -#~ msgid "`%s' is not a valid %s-bit %s expression" -#~ msgstr "`%1$s' no es una expresión %3$s de %2$s-bit válida" - -#~ msgid "Internal Error: Can't allocate m68k_sorted_opcodes of size %d" -#~ msgstr "Error Interno: No se puede alojar m68k_sorted_opcodes de tamaño %d" - -#~ msgid "Conversion of DBcc to absolute jump" -#~ msgstr "Conversión de DBcc a un salto absoluto" - -#~ msgid "pc-relative" -#~ msgstr "relativa a pc" - -#~ msgid "operand must be absolute in range %d..%d, not %d" -#~ msgstr "el operando debe ser un absoluto en el rango %d..%d, no %d" - -#~ msgid "internal Error, line %d, %s" -#~ msgstr "Error interno, línea %d, %s" - -#~ msgid "48-bit microMIPS instructions are not supported" -#~ msgstr "no se admiten las instrucciones microMIPS de 48-bit" - -#~ msgid "Unsupported large constant" -#~ msgstr "No se admite la constante large" - -#~ msgid "Improper position (%lu)" -#~ msgstr "Posición impropia (%lu)" - -#~ msgid "Improper extract size (%lu, position %lu)" -#~ msgstr "Tamaño de extract impropio (%lu, posición %lu)" - -#~ msgid "Improper insert size (%lu, position %lu)" -#~ msgstr "Tamaño de insert impropio (%lu, posición %lu)" - -#~ msgid "Expression too complex" -#~ msgstr "Expresión demasiado compleja" - -#~ msgid "Offset too large" -#~ msgstr "Desplazamiento demasiado grande" - -#~ msgid "Opcode not supported on this processor: %s" -#~ msgstr "No se admite el código de operación en este procesador: %s" - -#~ msgid "Improper rotate count" -#~ msgstr "Cuenta de rotación impropia" - -#~ msgid "Operand overflow" -#~ msgstr "Desbordamiento de operando" - -#~ msgid "internal: bad mips opcode (unknown extension operand type `+%c'): %s %s" -#~ msgstr "interno: código de operación mips erróneo (tipo de operando de extensión `+%c' desconocido): %s %s" - -#~ msgid "Internal error: bad microMIPS opcode (mask error): %s %s" -#~ msgstr "Error interno: código de operación microMIPS erróneo: %s %s" - -#~ msgid "Internal error: bad mips opcode (unknown extension operand type `%c%c'): %s %s" -#~ msgstr "Error interno: código de operación mips erróneo (tipo de operando de extensión desconocido `%c%c'): %s %s" - -#~ msgid "Internal error: bad microMIPS opcode (unknown operand type `%c'): %s %s" -#~ msgstr "Error interno: código de operación microMIPS erróneo (tipo de operando `%c' desconocido): %s %s" - -#~ msgid "Internal error: bad microMIPS opcode (bits 0x%lx undefined): %s %s" -#~ msgstr "Error interno: código de operación microMIPS erróneo (bits 0x%lx sin definir): %s %s" - -#~ msgid "Internal error: bad microMIPS opcode (bits 0x%lx defined): %s %s" -#~ msgstr "Error interno: código de operación microMIPS erróneo (bits 0x%lx definidos): %s %s" - -#~ msgid "Unrecognized opcode" -#~ msgstr "No se reconoce el código de operación" - -#~ msgid "DSP immediate not in range 0..%d (%lu)" -#~ msgstr "el inmediato DSP no está en el rango 0..%d (%lu)" - -#~ msgid "Invalid dsp acc register" -#~ msgstr "Registro acc dsp inválido" - -#~ msgid "DSP immediate not in range %ld..%ld (%ld)" -#~ msgstr "El inmediato DSP no está en el rango %ld..%ld (%ld)" - -#~ msgid "MT usermode bit not 0 or 1 (%lu)" -#~ msgstr "El bit de modo de usuario MT no es 0 o 1 (%lu)" - -#~ msgid "MT load high bit not 0 or 1 (%lu)" -#~ msgstr "el bit alto de load MT no es 0 o 1 (%lu)" - -#~ msgid "Invalid dsp/smartmips acc register" -#~ msgstr "Registro acc dsp/smartmips inválido" - -#~ msgid "Bit position for %s not in range 0..%lu (%lu)" -#~ msgstr "La posición de bit para %s no está en el rango 0..%lu (%lu)" - -#~ msgid "Illegal %s number (%lu, 0x%lx)" -#~ msgstr "Número %s ilegal (%lu, 0x%lx)" - -#~ msgid "absolute expression required" -#~ msgstr "se requiere una expresión absoluta" - -#~ msgid "Invalid register number (%d)" -#~ msgstr "Número de registro inválido (%d)" - -#~ msgid "Invalid coprocessor 0 register number" -#~ msgstr "Número de registro 0 de coprocesador inválido" - -#~ msgid "Improper size (%lu)" -#~ msgstr "Tamaño impropio (%lu)" - -#~ msgid "Offset not in range %ld..%ld (%ld)" -#~ msgstr "El desplazamiento no está en el rango %ld..%ld (%ld)" - -#~ msgid "Offset not 16 bytes alignment (%ld)" -#~ msgstr "El desplazamiento no está alineado a 16 bytes (%ld)" - -#~ msgid "Internal error: bad %s opcode (unknown extension operand type `+%c'): %s %s" -#~ msgstr "Error interno: código de operación %s erróneo (tipo de operando de extensión `+%c' desconocido): %s %s" - -#~ msgid "Invalid value for `%s' (%lu)" -#~ msgstr "Valor inválido para `%s' (%lu)" - -#~ msgid "Code for %s not in range 0..%lu (%lu)" -#~ msgstr "El código para %s no está en el rango 0..%lu (%lu)" - -#~ msgid "Lower code for %s not in range 0..%lu (%lu)" -#~ msgstr "El código más bajo para %s no está en el rango 0..%lu (%lu)" - -#~ msgid "Coproccesor code > %u bits (%lu)" -#~ msgstr "Código de coprocesador > %u bits (%lu)" - -#~ msgid "Illegal 19-bit code (%lu)" -#~ msgstr "Código de 19-bit ilegal (%lu)" - -#~ msgid "Used $%u with \".set at=$%u\"" -#~ msgstr "se utilizó $%u con \".set at=$%u\"" - -#~ msgid "Improper align amount (%ld), using low bits" -#~ msgstr "Cantidad de desplazamiento impropia (%ld), se usan bits bajos" - -#~ msgid "Invalid MDMX Immediate (%ld)" -#~ msgstr "Inmediato MDMX inválido (%ld)" - -#~ msgid "Expecting ']' found '%s'" -#~ msgstr "Se esperaba ']', se encontró '%s'" - -#~ msgid "Can't use floating point insn in this section" -#~ msgstr "No se pueden utilizar insn de coma flotante en esta sección" - -#~ msgid "Expression out of range" -#~ msgstr "Expresión fuera de rango" - -#~ msgid "Invalid coprocessor sub-selection value (0-7)" -#~ msgstr "Valor de subselección de coprocesador (0-7) inválido" - -#~ msgid "bad byte vector index (%ld)" -#~ msgstr "índice de vector de byte erróneo (%ld)" - -#~ msgid "Internal error: bad microMIPS opcode (unknown extension operand type `m%c'): %s %s" -#~ msgstr "Error interno: código de operación microMIPS erróneo (tipo de operando de extensión `m%c' desconocido): %s %s" - -#~ msgid "Trap code (%lu) for %s not in 0..15 range" -#~ msgstr "El código de captura (%lu) para %s no está en el rango 0..15" - -#~ msgid "Bad char = '%c'\n" -#~ msgstr "Carácter erróneo = '%c'\n" - -#~ msgid "can't parse register list" -#~ msgstr "no se puede decodificar la lista de registros" - -#~ msgid "more than one frame size in list" -#~ msgstr "más de un tamaño de marco en la lista" - -#~ msgid "arg/static registers overlap" -#~ msgstr "los registros arg/static se sobreescriben" - -#~ msgid "-call_shared is supported only for ELF format" -#~ msgstr "-call_shared sólo se admite en el formato ELF" - -#~ msgid "-call_nonpic is supported only for ELF format" -#~ msgstr "-call_nonpic sólo se admite en el formato ELF" - -#~ msgid "-non_shared is supported only for ELF format" -#~ msgstr "-non_shared sólo se admite en el formato ELF" - -#~ msgid "-n32 is supported for ELF format only" -#~ msgstr "-n32 sólo se admite en el formato ELF" - -#~ msgid "-64 is supported for ELF format only" -#~ msgstr "-64 sólo se admite en el formato ELF" - -#~ msgid "-mabi is supported for ELF format only" -#~ msgstr "-mabi sólo se admite en el formato ELF" - -#~ msgid "-mfp32 used with -mips3d" -#~ msgstr "se utilizó -mfp32 con -mips3d" - -#~ msgid "-mfp32 used with -mdmx" -#~ msgstr "se utilizó -mfp32 con -mdmx" - -#~ msgid "%s ISA does not support SmartMIPS" -#~ msgstr "ISA %s no admite SmartMIPS" - -#~ msgid "%s ISA does not support DSP ASE" -#~ msgstr "ISA %s no admite DSP ASE" - -#~ msgid "%s ISA does not support DSP R2 ASE" -#~ msgstr "ISA %s no admite DSP R2 ASE" - -#~ msgid "%s ISA does not support MCU ASE" -#~ msgstr "ISA %s no admite MCU ASE" - -#~ msgid "PC relative MIPS16 instruction references a different section" -#~ msgstr "la instrucción MIPS16 relativa a PC referencía a una sección diferente" - -#~ msgid "Branch out of range" -#~ msgstr "Ramificación fuera de rango" - -#~ msgid "%s isa does not support 64-bit registers" -#~ msgstr "isa %s no admite registros de 64-bit" - -#~ msgid "%s isa does not support 64-bit floating point registers" -#~ msgstr "isa %s no admite registros de coma flotante de 64-bit" - -#~ msgid "%s ISA does not support SmartMIPS ASE" -#~ msgstr "ISA %s no admite SmartMIPS ASE" - -#~ msgid "Bad .frame directive" -#~ msgstr "Directiva .frame errónea" - -#~ msgid "Known MCU names:\n" -#~ msgstr "Nombres MCU conocidos:\n" - -#~ msgid "\t %s\n" -#~ msgstr "\t %s\n" - -#~ msgid "redefinition of mcu type %s' to %s'" -#~ msgstr "redefinición del tipo de mcu %s' a %s'" - -#~ msgid "" -#~ "MSP430 options:\n" -#~ " -mmcu=[msp430-name] select microcontroller type\n" -#~ " msp430x110 msp430x112\n" -#~ " msp430x1101 msp430x1111\n" -#~ " msp430x1121 msp430x1122 msp430x1132\n" -#~ " msp430x122 msp430x123\n" -#~ " msp430x1222 msp430x1232\n" -#~ " msp430x133 msp430x135\n" -#~ " msp430x1331 msp430x1351\n" -#~ " msp430x147 msp430x148 msp430x149\n" -#~ " msp430x155 msp430x156 msp430x157\n" -#~ " msp430x167 msp430x168 msp430x169\n" -#~ " msp430x1610 msp430x1611 msp430x1612\n" -#~ " msp430x311 msp430x312 msp430x313 msp430x314 msp430x315\n" -#~ " msp430x323 msp430x325\n" -#~ " msp430x336 msp430x337\n" -#~ " msp430x412 msp430x413 msp430x415 msp430x417\n" -#~ " msp430xE423 msp430xE425 msp430E427\n" -#~ " msp430xW423 msp430xW425 msp430W427\n" -#~ " msp430xG437 msp430xG438 msp430G439\n" -#~ " msp430x435 msp430x436 msp430x437\n" -#~ " msp430x447 msp430x448 msp430x449\n" -#~ msgstr "" -#~ "Opciones de MSP430:\n" -#~ " -mmcu=[nombre-msp430] selecciona el tipo de microcontrolador\n" -#~ " msp430x110 msp430x112\n" -#~ " msp430x1101 msp430x1111\n" -#~ " msp430x1121 msp430x1122 msp430x1132\n" -#~ " msp430x122 msp430x123\n" -#~ " msp430x1222 msp430x1232\n" -#~ " msp430x133 msp430x135\n" -#~ " msp430x1331 msp430x1351\n" -#~ " msp430x147 msp430x148 msp430x149\n" -#~ " msp430x155 msp430x156 msp430x157\n" -#~ " msp430x167 msp430x168 msp430x169\n" -#~ " msp430x1610 msp430x1611 msp430x1612\n" -#~ " msp430x311 msp430x312 msp430x313 msp430x314 msp430x315\n" -#~ " msp430x323 msp430x325\n" -#~ " msp430x336 msp430x337\n" -#~ " msp430x412 msp430x413 msp430x415 msp430x417\n" -#~ " msp430xE423 msp430xE425 msp430E427\n" -#~ " msp430xW423 msp430xW425 msp430W427\n" -#~ " msp430xG437 msp430xG438 msp430G439\n" -#~ " msp430x435 msp430x436 msp430x437\n" -#~ " msp430x447 msp430x448 msp430x449\n" - -#~ msgid "MSP430 does not have %d registers" -#~ msgstr "MSP430 no tiene %d registros" - -#~ msgid "unknown operator (r%s substituted as a register name" -#~ msgstr "operador desconocido (se sustituyó r%s como un nombre de registro" - -#~ msgid "unknown operator %s" -#~ msgstr "operador %s desconocido" - -#~ msgid "unknown addressing mode for operand %s" -#~ msgstr "modo de direccionamiento desconocido para el operando %s" - -#~ msgid "unknown opcode1: `%s'" -#~ msgstr "código de operación1 desconocido: `%s'" - -#~ msgid "unknown opcode2 `%s'." -#~ msgstr "código de operación2 `%s' desconocido." - -#~ msgid "too many operands: %s" -#~ msgstr "demasiados operandos: %s" - -#~ msgid "call/jmp target out of range (1)" -#~ msgstr "objetivo call/jmp fuera de rango (1)" - -#~ msgid "call/jmp target out of range (2)" -#~ msgstr "objetivo call/jmp fuera de rango (2)" - -#~ msgid "bad relocation type: 0x%02x" -#~ msgstr "tipo de reubicación erróneo: 0x%02x" - -#~ msgid "%s (%08lx %08lx) after %s (%08lx %08lx)" -#~ msgstr "%s (%08lx %08lx) después de %s (%08lx %08lx)" - -#~ msgid "cannot emit PC relative %s relocation against %s" -#~ msgstr "no se puede emitir la reubicación %s relativa a PC contra %s" - -#~ msgid "Unable to handle reference to symbol %s" -#~ msgstr "No se puede manejar la referencia al símbolo %s" - -#~ msgid "Unable to resolve expression" -#~ msgstr "No se puede resolver la expresión" - -#~ msgid "must branch to an address a multiple of 4" -#~ msgstr "se debe ramificar a una dirección que sea múltiplo de 4" - -#~ msgid "@local or @plt branch destination is too far away, %ld bytes" -#~ msgstr "el destino de la ramificación @local o @plt está demasiado lejos, %ld bytes" - -#~ msgid " -SCORE7\t\tassemble code for target is SCORE7, this is default setting\n" -#~ msgstr " -SCORE7\t\tensambla código para el objetivo SCORE7, esta es la opción por defecto\n" - -#~ msgid " -march=score7\tassemble code for target is SCORE7, this is default setting\n" -#~ msgstr " -march=score7\tensambla código para el objetivo SCORE7, esta es la opción por defecto\n" - -#~ msgid ": unrecognizable v9a or v9b ancillary state register" -#~ msgstr ": no se reconoce el registro de estado ancilar v9a o v9b" - -#~ msgid ": rd on write only ancillary state register" -#~ msgstr ": rd en registro de estado ancilar de sólo escritura" - -#~ msgid "found too many (%d) operands for '%s': Expected %d" -#~ msgstr "se encontraron demasiados (%d) operandos para '%s': Se esperaban %d" - -#~ msgid "format '%s' allows %d slots, but there are %d opcodes" -#~ msgstr "el formato '%s' permite %d ranuras, pero hay %d códigos de operación" - -#~ msgid "bad offset expression syntax" -#~ msgstr "sintaxis de expresión de desplazamiento errónea" - -#~ msgid "bad intruction syntax" -#~ msgstr "sintaxis de instrucción errónea" - -#~ msgid "opcode '%s': no bound opname '%s' for precondition in %s" -#~ msgstr "código de operación '%s': no hay un nombre de operación '%s' enlazado para la precondición en %s" - -#~ msgid "expr.c(operand): bad atof_generic return val %d" -#~ msgstr "expr.c(operando): valor de devolución %d atof_generic erróneo" - -#~ msgid "partial line at end of file ignored" -#~ msgstr "se descarta la línea parcial al final del fichero" - -#~ msgid "Error:" -#~ msgstr "Error:" - -#~ msgid "Assertion failure in %s at %s line %d.\n" -#~ msgstr "Falla de afirmación en %s en %s línea %d.\n" - -#~ msgid "Assertion failure at %s line %d.\n" -#~ msgstr "Falla de afirmación en %s línea %d.\n" - -#~ msgid "Internal error, aborting at %s line %d in %s\n" -#~ msgstr "Error interno, se aborta en %s línea %d en %s\n" - -#~ msgid "can't write %s: %s" -#~ msgstr "no se puede escribir %s: %s" - -#~ msgid "cannot write to output file '%s': %s" -#~ msgstr "no se puede escribir al fichero de salida '%s': %s" - -#~ msgid "%d error%s, %d warning%s, no object file generated" -#~ msgstr "%d errore%s, %d aviso%s, no se genera un fichero objeto" - -#~ msgid "Local symbol `%s' can't be equated to common symbol `%s'" -#~ msgstr "El símbolo local `%s' no se puede igualar al símbolo común `%s'" - -#~ msgid "Code for %s not in range 0..1048575 (%lu)" -#~ msgstr "El código para %s no está en el rango 0..1048575 (%lu)" - -#~ msgid ".size expression too complicated to fix up" -#~ msgstr "la expresión .size es demasiado complicada para componerla" - -#~ msgid "Label expected" -#~ msgstr "Se esperaba una etiqueta" - -#~ msgid " -matomic enable atomic operation instructions\n" -#~ msgstr " -matomic permite instrucciones de operación atómica\n" - -#~ msgid " -mno-atomic disable atomic operation instructions\n" -#~ msgstr " -mno-atomic desactiva las instrucciones de operación atómica\n" - -#~ msgid "invalid sections for operation on `%s' and `%s'" -#~ msgstr "secciones inválidas para la operación en `%s' y `%s'" - -#~ msgid "invalid section for operation on `%s'" -#~ msgstr "sección inválida para la operación en `%s'" - -#~ msgid "undefined symbol `%s' in operation setting `%s'" -#~ msgstr "símbolo sin definir `%s' en la operación que establece `%s'" - -#~ msgid "invalid sections for operation on `%s' and `%s' setting `%s'" -#~ msgstr "secciones inválidas para la operación en `%s' y `%s' que establece `%s'" - -#~ msgid "base register should not be in register list when written back" -#~ msgstr "el registro base no debe estar en la lista de registros cuando se escribe hacia atrás" - -#~ msgid " BFIN specific command line options:\n" -#~ msgstr " Opciones de línea de órdenes específicas de BFIN:\n" - -#~ msgid "ambiguous operand size or operands invalid for `%s'" -#~ msgstr "tamaño de operando ambiguo u operandos inválidos para `%s'" - -#~ msgid "suffix or operands invalid for `%s'" -#~ msgstr "sufijo u operandos inválidos para `%s'" - -#~ msgid "" -#~ " -march=CPU[,+EXTENSION...]\n" -#~ " generate code for CPU and EXTENSION, CPU is one of:\n" -#~ " i8086, i186, i286, i386, i486, pentium, pentiumpro,\n" -#~ " pentiumii, pentiumiii, pentium4, prescott, nocona,\n" -#~ " core, core2, corei7, l1om, k6, k6_2, athlon, k8,\n" -#~ " amdfam10, generic32, generic64\n" -#~ " EXTENSION is combination of:\n" -#~ " 8087, 287, 387, no87, mmx, nommx, sse, sse2, sse3,\n" -#~ " ssse3, sse4.1, sse4.2, sse4, nosse, avx, noavx,\n" -#~ " vmx, smx, xsave, movbe, ept, aes, pclmul, fma,\n" -#~ " clflush, syscall, rdtscp, 3dnow, 3dnowa, sse4a,\n" -#~ " svme, abm, padlock, fma4\n" -#~ msgstr "" -#~ " -march=CPU[,+EXTENSIÓN...]\n" -#~ " genera código para CPU y EXTENSIÓN, CPU es uno de:\n" -#~ " i8086, i186, i286, i386, i486, pentium, pentiumpro,\n" -#~ " pentiumii, pentiumiii, pentium4, prescott, nocona,\n" -#~ " core, core2, corei7, l1om, k6, k6_2, athlon, k8,\n" -#~ " amdfam10, generic32, generic64\n" -#~ " EXTENSION es una combinación de :\n" -#~ " 8087, 287, 387, no87, mmx, nommx, sse, sse2, sse3,\n" -#~ " ssse3, sse4.1, sse4.2, sse4, nosse, avx, noavx,\n" -#~ " vmx, smx, xsave, movbe, ept, aes, pclmul, fma,\n" -#~ " clflush, syscall, rdtscp, 3dnow, 3dnowa, sse4a,\n" -#~ " svme, abm, padlock, fma4\n" - -#~ msgid "" -#~ " -mtune=CPU optimize for CPU, CPU is one of:\n" -#~ " i8086, i186, i286, i386, i486, pentium, pentiumpro,\n" -#~ " pentiumii, pentiumiii, pentium4, prescott, nocona,\n" -#~ " core, core2, corei7, l1om, k6, k6_2, athlon, k8,\n" -#~ " amdfam10, generic32, generic64\n" -#~ msgstr "" -#~ " -mtune=CPU optimiza para el CPU, donde CPU es:\n" -#~ " i8086, i186, i286, i386, i486, pentium, pentiumpro,\n" -#~ " pentiumii, pentiumiii, pentium4, prescott, nocona,\n" -#~ " core, core2, corei7, l1om, k6, k6_2, athlon, k8,\n" -#~ " amdfam10, generic32, generic64\n" - -#~ msgid " MAXQ-specific assembler options:\n" -#~ msgstr "Opciones de ensamblador específicas de MAXQ:\n" - -#~ msgid "" -#~ "\t-MAXQ20\t\t generate obj for MAXQ20(default)\n" -#~ "\t-MAXQ10\t\t generate obj for MAXQ10\n" -#~ "\t" -#~ msgstr "" -#~ "\t-MAXQ20\t\t genera objetos para MAXQ20(por defecto)\n" -#~ "\t-MAXQ10\t\t genera objetos para MAXQ10\n" -#~ "\t" - -#~ msgid "Illegal Reloc type in md_estimate_size_before_relax for line : %d" -#~ msgstr "Tipo de reubicación ilegal en md_estimate_size_before_relax para la línea : %d" - -#~ msgid "Cant make long jump/call into short jump/call : %d" -#~ msgstr "No se puede hacer un salto/llamada long en un salto/llamada short : %d" - -#~ msgid "Invalid register value %s" -#~ msgstr "Valor de registro %s inválido" - -#~ msgid "Invalid bit number : '%c'" -#~ msgstr "Número de bit inválido : '%c'" - -#~ msgid "Invalid Character in immediate Value : %c" -#~ msgstr "Carácter inválido en el valor inmediato : %c" - -#~ msgid "Invalid Character in immediate value : %c" -#~ msgstr "Carácter inválido en el valor inmediato : %c" - -#~ msgid "Immediate value greater than 16 bits" -#~ msgstr "Valor inmediato mayor a 16 bits" - -#~ msgid "Attempt to move a value in the stack pointer greater than the size of the stack" -#~ msgstr "Se intenta mover un valor en el puntero de pila mayor que el tamaño de la pila" - -#~ msgid "Attempt to move 16 bit value into an 8 bit register.Truncating..\n" -#~ msgstr "Se intenta mover un valor de 16 bit en un registro de 8 bit. Se trunca..\n" - -#~ msgid "Invalid immediate move operation" -#~ msgstr "Operación move inmediata inválida" - -#~ msgid "Size of Operand '%s' greater than %d" -#~ msgstr "El tamaño del operando '%s' es mayor que %d" - -#~ msgid "illegal immediate operand '%s'" -#~ msgstr "operando inmediato '%s' ilegal" - -#~ msgid "illegal displacement operand " -#~ msgstr "operando de desubicación ilegal " - -#~ msgid "invalid character %c in operand %d" -#~ msgstr "carácter inválido %c en el operando %d" - -#~ msgid "operand %d is invalid for `%s'" -#~ msgstr "el operando %d es inválido para `%s'" - -#~ msgid "The Accumulator cannot be used as a source in ALU instructions\n" -#~ msgstr "No se puede usar el acumulador como fuente para instrucciones ALU\n" - -#~ msgid "'%s' operand cant be used as destination in %s" -#~ msgstr "el operando '%s' no se puede usar como destino en %s" - -#~ msgid "Invalid Instruction '%s' operand cant be used with %s" -#~ msgstr "El operando de instrucción '%s' inválido no se puede usar con %s." - -#~ msgid "'%s' operand cant be used as source in %s" -#~ msgstr "el operando '%s' no se puede usar como fuente en %s" - -#~ msgid "@SP-- cannot be used with PUSH\n" -#~ msgstr "@SP-- no se puede usar con PUSH\n" - -#~ msgid "Operands either contradictory or use the data bus in read/write state together" -#~ msgstr "Los operandos son contradictorios o usan juntos el bus de datos en estado lectura/escritura" - -#~ msgid "MOVE Cant Use NUL as SRC" -#~ msgstr "MOVE no puede usar NUL como SRC" - -#~ msgid "Contradictory movement between DP register and memory access using DP" -#~ msgstr "Movimiento contradictorio entre el registro DP y el acceso a memoria que usa DP" - -#~ msgid "SP and @SP-- cannot be used together in a move instruction" -#~ msgstr "SP y @SP-- no se pueden usar juntos en una instrucción move" - -#~ msgid "Only Module 8 system registers allowed in this operation" -#~ msgstr "Sólo se permiten registros de sistema Module 8 en esta operación" - -#~ msgid "Read only Register used as destination" -#~ msgstr "Se usa un registro de sólo lectura como destino" - -#~ msgid "Bit No '%d'exceeds register size in this operation" -#~ msgstr "El bit No. '%d' excede el tamaño del registro en esta operación" - -#~ msgid "Bit No '%d' exceeds register size in this operation" -#~ msgstr "El bit No. '%d' excede el tamaño del registro en esta operación" - -#~ msgid "Memory References cannot be used with branching operations\n" -#~ msgstr "Las referencias de memoria no se pueden usar con operaciones de ramificación\n" - -#~ msgid "DJNZ uses only LC[n] register \n" -#~ msgstr "DJNZ sólo usa registros LC[n] \n" - -#~ msgid "'%s' operand cant be used as destination in %s" -#~ msgstr "el operando '%s' no se puede usar como destino en %s" - -#~ msgid "Read only register used for writing purposes '%s'" -#~ msgstr "Se usó un registro de sólo lectura pra própositos de escritura '%s'" - -#~ msgid "Invalid destination for this kind of source." -#~ msgstr "Destino inválido para tipo de fuente." - -#~ msgid "Invalid register as destination for this kind of source.Only data pointers can be used." -#~ msgstr "Registro inválido como destino para este tipo de fuente. Sólo se pueden usan punteros a datos" - -#~ msgid "Invalid Instruction" -#~ msgstr "Instrucción inválida" - -#~ msgid "Cannot allocate memory" -#~ msgstr "No se puede asignar memoria" - -#~ msgid "Internal Error: Illegal Architecure specified" -#~ msgstr "Error interno: se especificó una arquitectura ilegal" - -#~ msgid "Invalid architecture type" -#~ msgstr "Tipo de arquitectura inválido" - -#~ msgid "Internal Error : Can't Hash %s : %s" -#~ msgstr "Error Interno: No se puede dispersar %s : %s" - -#~ msgid "Ineffective insntruction %s \n" -#~ msgstr "Insn %s no es efectiva \n" - -#~ msgid "Bad .section directive: want a,e,w,x,M,S,G,T in string" -#~ msgstr "Directiva .section errónea: se quiere a,e,w,x,M,S,G,T en la cadena" - -#~ msgid "PSW cannot be included in list" -#~ msgstr "PSW no se puede incluir en la lista" - -#~ msgid "High value system registers cannot be included in list" -#~ msgstr "Los registros altos de valores del sistema no se pueden incluir en la lista" - -#~ msgid " -mv850any The code is generic, despite any processor specific instructions\n" -#~ msgstr " -mv850any El código es genérico, a pesar de cualquier instrucción específica de procesador\n" - -#~ msgid "cannot represent subtraction with an offset" -#~ msgstr "no se puede representar la sustracción con un desplazamiento" - -#~ msgid "Unknown section directive" -#~ msgstr "Directiva de sección desconocida" - -#~ msgid "PC is not a valid index register" -#~ msgstr "PC no es un registro índice válido" - -#~ msgid "invalid operand for '%s' ('%s' unexpected)" -#~ msgstr "operando inválido para '%s' ('%s' inesperado)" - -#~ msgid "too many memory references for '%s'" -#~ msgstr "demasiadas referencias a memoria para '%s'" - -#~ msgid "Treating `%s' as memory reference" -#~ msgstr "Se trata `%s' como una referencia de memoria" - -#~ msgid "Segment override ignored" -#~ msgstr "Se descarta la sobreescritura de segmento" - -#~ msgid "Unknown operand modifier `%s'" -#~ msgstr "Modificador de operando `%s' desconocido" - -#~ msgid "Conflicting operand modifiers" -#~ msgstr "Modificadores de operando en conflicto" - -#~ msgid "Invalid operand to `OFFSET'" -#~ msgstr "Operando inválido para `OFFSET'" - -#~ msgid "`[%.*s]' taken to mean just `%.*s'" -#~ msgstr "se toma `[%.*s]' y sólo significa `%.*s'" - -#~ msgid "`%s' is not a valid segment register" -#~ msgstr "`%s' no es un registro de segmento válido" - -#~ msgid "cannot use `FLAT' here" -#~ msgstr "no se puede usar `FLAT' aquí" - -#~ msgid "Register scaling only allowed in memory operands" -#~ msgstr "El escalamiento de registros sólo se permite en operandos de memoria" - -#~ msgid "Syntax error: Expecting a constant, got `%s'" -#~ msgstr "Error sintáctico: Se esperaba una constante, se obtuvo `%s'" - -#~ msgid "Unrecognized token '%s'" -#~ msgstr "No se reconoce el elemento '%s'" - -#~ msgid "Unexpected token `%s'" -#~ msgstr "Elemento `%s' inesperado" - -#~ msgid "Unrecognized token `%s'" -#~ msgstr "No se reconoce el elemento `%s'" - -#~ msgid "-32 is supported for ELF format only" -#~ msgstr "-32 sólo se admite en el formato ELF" - -#~ msgid "the label length is longer than 1024" -#~ msgstr "la longitud de la etiqueta es mayor que 1024" - -#~ msgid "high register(r16-r31)expected, not '%.100s'" -#~ msgstr "se esperaba un register(r16-r31) high, no '%.100s'" - -#~ msgid "base register nums are over 3 bit" -#~ msgstr "los números del registro base están sobre 3 bit" - -#~ msgid "invalid constant: 25 bit expression not in range -2^24..2^24" -#~ msgstr "constante inválida: la expresión de 15 bit no está en el rango -2^24..2^24" - -#~ msgid " branch relocation truncate (0x%x) [-2^8 ~ 2^8]" -#~ msgstr " la reubicación de ramificación trunca (0x%x) [-2^8 ~ 2^8]" - -#~ msgid " branch relocation truncate (0x%x) [-2^8 ~ 2^8]" -#~ msgstr " la reubicación de ramificación trunca (0x%x) [-2^8 ~ 2^8]" - -#~ msgid "md_convert_frag\n" -#~ msgstr "md_convert_frag\n" - -#~ msgid "selected processor does not support requested special purpose register %x" -#~ msgstr "el procesador seleccionado no admite el registro de propósito especial %x" - -#~ msgid "offset too big" -#~ msgstr "desplazamiento demasiado grande" - -#~ msgid "" -#~ "AVR options:\n" -#~ " -mmcu=[avr-name] select microcontroller variant\n" -#~ " [avr-name] can be:\n" -#~ " avr1 - AT90S1200, ATtiny1x, ATtiny28\n" -#~ " avr2 - AT90S2xxx, AT90S4xxx, AT90S8xxx, ATtiny22\n" -#~ " avr3 - ATmega103, ATmega603\n" -#~ " avr4 - ATmega83, ATmega85\n" -#~ " avr5 - ATmega161, ATmega163, ATmega32, AT94K\n" -#~ " or immediate microcontroller name.\n" -#~ msgstr "" -#~ "Opciones AVR:\n" -#~ " -mmcu=[nombre-avr] escoge la variante de microcontrolador\n" -#~ " [nombre-avr] puede ser:\n" -#~ " avr1 - AT90S1200, ATtiny1x, ATtiny28\n" -#~ " avr2 - AT90S2xxx, AT90S4xxx, AT90S8xxx, ATtiny22\n" -#~ " avr3 - ATmega103, ATmega603\n" -#~ " avr4 - ATmega83, ATmega85\n" -#~ " avr5 - ATmega161, ATmega163, ATmega32, AT94K\n" -#~ " o el nombre inmediato del microcontrolador.\n" - -#~ msgid "expression dangerous with linker stubs" -#~ msgstr "expresión peligrosa con cabos de enlazado" - -#~ msgid "-mgpr-32 Note 32 gprs are used\n" -#~ msgstr "-mgpr-32 Se usa nota de 32 gprs\n" - -#~ msgid "-mgpr-64 Note 64 gprs are used\n" -#~ msgstr "-mgpr-64 Se usa nota de 64 gprs\n" - -#~ msgid "-mfpr-32 Note 32 fprs are used\n" -#~ msgstr "-mfpr-32 Se usa nota de 32 fprs\n" - -#~ msgid "-mfpr-64 Note 64 fprs are used\n" -#~ msgstr "-mfpr-64 Se usa nota de 64 fprs\n" - -#~ msgid "-msoft-float Note software fp is used\n" -#~ msgstr "-msoft-float Se usa nota de fp de software\n" - -#~ msgid "-mdword Note stack is aligned to a 8 byte boundary\n" -#~ msgstr "-mdword La pila de nota está alineada a un límite de 8 byte\n" - -#~ msgid "-mno-dword Note stack is aligned to a 4 byte boundary\n" -#~ msgstr "-mno-dword La pila de nota está alineada a un límite de 4 byte\n" - -#~ msgid "-mdouble Note fp double insns are used\n" -#~ msgstr "-mdouble Se usan insns nota de fp doble\n" - -#~ msgid "-mmedia Note media insns are used\n" -#~ msgstr "-mmedia Se usan insns nota media\n" - -#~ msgid "-mpack Note instructions are packed\n" -#~ msgstr "-mpack Las instrucciones nota están empaquetadas\n" - -#~ msgid "no instruction mnemonic suffix given; can't determine immediate size %x %c" -#~ msgstr "no se dio un sufijo mnemónico de instrucción; no se puede determinar el tamaño inmediato %x %c" - -#~ msgid "`:' expected" -#~ msgstr "se esperaba `:'" - -#~ msgid "i860_estimate_size_before_relax\n" -#~ msgstr "i860_estimate_size_before_relax\n" - -#~ msgid "i860_convert_frag\n" -#~ msgstr "i860_convert_frag\n" - -#~ msgid "md_pcrel_from\n" -#~ msgstr "md_pcrel_from\n" - -#~ msgid "ColdFire ISA_A" -#~ msgstr "ISA_A de ColdFire" - -#~ msgid "ColdFire ISA_A+" -#~ msgstr "ISA_A+ de ColdFire" - -#~ msgid "ColdFire ISA_B" -#~ msgstr "ISA_B de ColdFire" - -#~ msgid "ColdFire fpu" -#~ msgstr "unidad de coma flotante de ColdFire" - -#~ msgid "M68K fpu" -#~ msgstr "unidad de coma flotante de M68K" - -#~ msgid "M68K mmu" -#~ msgstr "mmu de M68K" - -#~ msgid "68000 or higher" -#~ msgstr "68000 o superior" - -#~ msgid "68010 or higher" -#~ msgstr "68010 o superior" - -#~ msgid "already selected `%s' processor" -#~ msgstr "ya se seleccionó el procesador `%s'" - -#~ msgid "already selected `%s' architecture" -#~ msgstr "ya se seleccionó la arquitectura `%s'" - -#~ msgid "INSTR_LABEL_DEF not supported yet" -#~ msgstr "INSTR_LABEL_DEF aún no se admite" - -#~ msgid "internal error: relaxation requires too many steps" -#~ msgstr "error interno: la relajación requiere demasiados pasos" - -#~ msgid "can't allocate ELF private section data: %s" -#~ msgstr "no se puede crear la sección de datos privados ELF: %s" - -#~ msgid "Out of step\n" -#~ msgstr "Fuera del paso\n" - -#~ msgid "too many sections" -#~ msgstr "demasiadas secciones" - -#~ msgid "FATAL: Can't create %s" -#~ msgstr "FATAL: No se puede crear %s" - -#~ msgid "Thumb does not support the ldr =N pseudo-operation" -#~ msgstr "Thumb no tiene soporte para la pseudo-operación ldr =N" - -#~ msgid "SP should not be in register list" -#~ msgstr "SP no debe estar en la lista de registros" - -#~ msgid "PC should not be in register list" -#~ msgstr "PC no debe estar en la lista de registros" - -#~ msgid "bad immediate value for half-word offset (%ld)" -#~ msgstr "valor inmediato erróneo para el desplazamiento half-word (%ld)" - -#~ msgid "" -#~ " -Q ignored\n" -#~ " -V print assembler version number\n" -#~ " -k ignored\n" -#~ " -n Do not optimize code alignment\n" -#~ " -q quieten some warnings\n" -#~ " -s ignored\n" -#~ msgstr "" -#~ " -Q ignorado\n" -#~ " -V muestra el número de versión del ensamblador\n" -#~ " -k ignorado\n" -#~ " -n No optimiza la alineación de código\n" -#~ " -q omite algunos avisos\n" -#~ " -s ignorado\n" - -#~ msgid "Using register names in OFFSET expressions is deprecated" -#~ msgstr "El uso de nombres de registro en expresiones OFFSET es obsoleto" - -#~ msgid " or " -#~ msgstr " o " - -#~ msgid ", or " -#~ msgstr ", o " - -#~ msgid ", or aliases" -#~ msgstr ", o los aliases" - -#~ msgid "fpu (68040, 68060 or 68881/68882)" -#~ msgstr "fpu (68040, 68060 o 68881/68882)" - -#~ msgid "mmu (68030 or 68851)" -#~ msgstr "mmu (68030 o 68851)" - -#~ msgid "Can't use long branches on 68000/68010/5200" -#~ msgstr "No se pueden usar ramificaciones long en 68000/68010/5200" - -#~ msgid "architecture not yet selected: defaulting to 68020" -#~ msgstr "no se ha seleccionado una arquitectura: cambiando por defecto a 68020" - -#~ msgid "options for 68881 and no-68881 both given" -#~ msgstr "se dieron opciones para 68881 y para no-68881" - -#~ msgid "options for 68851 and no-68851 both given" -#~ msgstr "se dieron opciones para 68851 y para no-68851" - -#~ msgid "unrecognized architecture specification `%s'" -#~ msgstr "no se reconoce la especificación de arquitectura `%s'" - -#~ msgid "" -#~ "680X0 options:\n" -#~ "-l\t\t\tuse 1 word for refs to undefined symbols [default 2]\n" -#~ "-m68000 | -m68008 | -m68010 | -m68020 | -m68030 | -m68040 | -m68060 |\n" -#~ "-m68302 | -m68331 | -m68332 | -m68333 | -m68340 | -m68360 | -mcpu32 |\n" -#~ "-m5200 | -m5202 | -m5204 | -m5206 | -m5206e | -m521x | -m5249 |\n" -#~ "-m528x | -m5307 | -m5407 | -m547x | -m548x | -mcfv4 | -mcfv4e\n" -#~ "\t\t\tspecify variant of 680X0 architecture [default %s]\n" -#~ "-m68881 | -m68882 | -mno-68881 | -mno-68882\n" -#~ "\t\t\ttarget has/lacks floating-point coprocessor\n" -#~ "\t\t\t[default yes for 68020, 68030, and cpu32]\n" -#~ msgstr "" -#~ "Opciones de 680X0:\n" -#~ "-l\t\t\tusa 1 word para referencias a símbolos indefinidos [por defecto 2]\n" -#~ "-m68000 | -m68008 | -m68010 | -m68020 | -m68030 | -m68040 | -m68060 |\n" -#~ "-m68302 | -m68331 | -m68332 | -m68333 | -m68340 | -m68360 | -mcpu32 |\n" -#~ "-m5200 | -m5202 | -m5204 | -m5206 | -m5206e | -m521x | -m5249 |\n" -#~ "-m528x | -m5307 | -m5407 | -m547x | -m548x | -mcfv4 | -mcfv4e\n" -#~ "\t\t\tespecifica la variación de la arquitectura 680X0 [por defecto %s]\n" -#~ "-m68881 | -m68882 | -mno-68881 | -mno-68882\n" -#~ "\t\t\tel objetivo tiene un/carece de coprocesador de coma flotante\n" -#~ "\t\t\t[por defecto sí para 68020, 68030, y cpu32]\n" - -#~ msgid "" -#~ "--base-size-default-16\tbase reg without size is 16 bits\n" -#~ "--base-size-default-32\tbase reg without size is 32 bits (default)\n" -#~ "--disp-size-default-16\tdisplacement with unknown size is 16 bits\n" -#~ "--disp-size-default-32\tdisplacement with unknown size is 32 bits (default)\n" -#~ msgstr "" -#~ "--base-size-default-16\tel registro base sin tamaño es de 16 bits\n" -#~ "--base-size-default-32\tel registro base sin tamaño es de 32 bits (por defecto)\n" -#~ "--disp-size-default-16\tla desubicación de tamaño desconocido es de 16 bits\n" -#~ "--disp-size-default-32\tla desubicación de tamaño desconocido es de 32 bits (por defecto)\n" - -#~ msgid "Illegal break code (%lu)" -#~ msgstr "Código de interrupción ilegal (%lu)" - -#~ msgid "Illegal lower break code (%lu)" -#~ msgstr "Código de interrupción inferior ilegal (%lu)" - -#~ msgid "Illegal 20-bit code (%lu)" -#~ msgstr "Código de 20-bit ilegal (%lu)" - -#~ msgid "Invalid condition code register $fcc%d" -#~ msgstr "Registro de código de condición $fcc%d inválido" - -#~ msgid "Cannot branch to undefined symbol." -#~ msgstr "No se puede ramificar hacia un símbolo indefinido." - -#~ msgid "Pretending global symbol used as branch target is local." -#~ msgstr "Pretender que se use un símbolo global como objetivo de ramificación es local." - -#~ msgid "Branch to odd address (%lx)" -#~ msgstr "Ramificación a una dirección impar (%lx)" - -#~ msgid "expected `$'" -#~ msgstr "se esperaba `$'" - -#~ msgid "entry instruction with non-constant decrement" -#~ msgstr "instrucción entry con decremento que no es constante" - -#~ msgid "opcodes '%s' (slot %d) and '%s' (slot %d) write the same queue" -#~ msgstr "los códigos de operación '%s' (ranura %d) y '%s' (ranura %d) escriben en la misma cola" - -#~ msgid "invalid flag combination on section %s" -#~ msgstr "combinación de opciones inválida en la sección %s" - -#~ msgid "cannot encode opcode" -#~ msgstr "no se codificar el código de operación" - -#~ msgid "invalid expression for operand %d on '%s'" -#~ msgstr "expresión inválida para el operando %d en '%s'" - -#~ msgid "Can't close %s" -#~ msgstr "No se puede cerrar %s" - -#~ msgid "can't open list file: %s" -#~ msgstr "no se puede abrir el fichero de lista: %s" - -#~ msgid "error closing list file: %s" -#~ msgstr "error al cerrar el fichero de lista: %s" - -#~ msgid "FATAL: can't create %s" -#~ msgstr "FATAL: no se puede crear %s" - -#~ msgid "FATAL: can't close %s\n" -#~ msgstr "FATAL: no se puede cerrar %s\n" - -#~ msgid "FATAL: Can't write %s" -#~ msgstr "FATAL: No se puede escribir %s" - -#~ msgid "end of file in string; inserted '\"'" -#~ msgstr "fin de fichero en la cadena; se insertó '\"'" - -#~ msgid "GNU assembler version %s (%s)" -#~ msgstr "GNU ensamblador versión %s (%s)" - -#~ msgid "unresolved relocation" -#~ msgstr "reubicación sin resolver" - -#~ msgid "bad relocation: symbol `%s' not in symbol table" -#~ msgstr "reubicación errónea: el símbolo `%s' no está en la tabla de símbolos" - -#~ msgid "Local symbol %s never defined." -#~ msgstr "El símbolo local %s nunca se definió." - -#~ msgid "Local symbol %s never defined" -#~ msgstr "El símbolo local %s nunca se definió" - -#~ msgid "bfd_coff_swap_scnhdr_out failed" -#~ msgstr "falló bfd_coff_swap_scnhdr_out" - -#~ msgid "Too many new sections; can't add \"%s\"" -#~ msgstr "Demasiadas secciones nuevas; no se puede agregar \"%s\"" - -#~ msgid "Negative of non-absolute symbol %s" -#~ msgstr "Negativo de un símbolo %s que no es absoluto" - -#~ msgid "callj to difference of 2 symbols" -#~ msgstr "callj para diferenciar a 2 símbolos" - -#~ msgid "Can't emit reloc {- %s-seg symbol \"%s\"} @ file address %ld." -#~ msgstr "No se puede emitir la reubicación {- %s-seg símbolo \"%s\"} @ dirección del fichero %ld." - -#~ msgid "Value of %ld too large for field of %d bytes at 0x%lx" -#~ msgstr "El valor de %ld es demasiado grande para el campo de %d bytes en 0x%lx" - -#~ msgid "Signed .word overflow; switch may be too large; %ld at 0x%lx" -#~ msgstr "Desbordamiento con signo de .word; el interruptor puede ser demasiado grande; %ld en 0x%lx" - -#~ msgid "compiler emitted zero-size common symbol `%s' already defined" -#~ msgstr "el símbolo común de tamaño cero emitido por el compilador `%s' ya está definido" - -#~ msgid "compiler redefined zero-size common symbol `%s'" -#~ msgstr "símbolo común de tamaño cero `%s' redefinido por el compilador" - -#~ msgid "Couldn't create VMS object file \"%s\"" -#~ msgstr "No se puede crear el fichero objeto VMS \"%s\"" - -#~ msgid "I/O error writing VMS object file (length prefix)" -#~ msgstr "Error de E/S al escribir el fichero objeto VMS (longitud del prefijo)" - -#~ msgid "I/O error writing VMS object file" -#~ msgstr "Error de E/S al escribir el fichero objeto VMS" - -#~ msgid "Couldn't find source file \"%s\", status=%%X%x" -#~ msgstr "No se puede encontrar el fichero fuente \"%s\", estado=%%X%x" - -#~ msgid "debugger forward reference error, dbx type %d" -#~ msgstr "error de referencia hacia adelante del depurador, tipo dbx %d" - -#~ msgid "Variable descriptor %d too complicated. Defined as `void *'." -#~ msgstr "El descriptor de variable %d es demasiado complicado. Se define como `void *'." - -#~ msgid "" -#~ "***Warning - the assembly code generated by the compiler has placed \n" -#~ " global constant(s) in the text psect. These will not be available to \n" -#~ " other modules, since this is not the correct way to handle this. You \n" -#~ " have two options: 1) get a patched compiler that does not put global \n" -#~ " constants in the text psect, or 2) remove the 'const' keyword from \n" -#~ " definitions of global variables in your source module(s). Don't say \n" -#~ " I didn't warn you! \n" -#~ msgstr "" -#~ "***Aviso - el código ensamblador generado por el compilador ha colocado \n" -#~ " constante(s) global(es) en la psect de texto. Éstas no estarán disponibles \n" -#~ " para otros módulos, ya que no es la forma correcta de manejarlo. Tiene \n" -#~ " dos opciones: 1) obtener un compilador parchado que no coloque constantes \n" -#~ " globales en la psect de texto, o 2) quitar la palabra clave 'const' de \n" -#~ " las definiciones de las variables globales en el(los) módulo(s) fuente. \n" -#~ " ¡No diga que no se le advirtió! \n" - -#~ msgid "debugginer output: %d is an unknown untyped variable." -#~ msgstr "salida del depurador: %d es una variable sin tipo desconocido." - -#~ msgid "debugger output: structure element `%s' has undefined type" -#~ msgstr "salida del depurador: el elmento de la estructura `%s' tiene un tipo indefinido" - -#~ msgid "debugger output: %d is an unknown type of variable." -#~ msgstr "salida del depurador: %d es un tipo desconocido de variable." - -#~ msgid "debugger output: Unable to resolve %d circular references." -#~ msgstr "salida del depurador: No se pueden resolver %d referencias circulares." - -#~ msgid "Module name truncated: %s\n" -#~ msgstr "Nombre de módulo truncado: %s\n" - -#~ msgid "Symbol %s replaced by %s\n" -#~ msgstr "El símbolo %s se reemplazó por %s\n" - -#~ msgid "Unknown VMS psect type (%ld)" -#~ msgstr "Tipo psect VMS desconocido (%ld)" - -#~ msgid "Globalsymbol attribute for symbol %s was unexpected." -#~ msgstr "El atributo de globalsymbol para el símbolo %s era inesperado." - -#~ msgid "Invalid globalvalue of %s" -#~ msgstr "Globalvalue inválido de %s" - -#~ msgid "Fixup data addsy and subsy don't have the same type" -#~ msgstr "Los datos de compostura addsy y subsy no tienen el mismo tipo" - -#~ msgid "Fixup data addsy and subsy don't have an appropriate type" -#~ msgstr "Los datos de compostura addsy y subsy no tienen un tipo apropiado" - -#~ msgid "Fixup data is erroneously \"pcrel\"" -#~ msgstr "Los datos de compostura son \"pcrel\" erróneamente" - -#~ msgid "Fixup datum is not a longword" -#~ msgstr "El dato de compostura no es un longword" - -#~ msgid "Fixup datum is not \"fixP->fx_addsy\"" -#~ msgstr "El dato de compostura no es \"fixP->fx_addsy\"" - -#~ msgid "unhandled stab type %d" -#~ msgstr "tipo de cabo %d sin manejar" - -#~ msgid "need %o3\n" -#~ msgstr "se necesita %o3\n" - -#~ msgid "a29k_convert_frag\n" -#~ msgstr "a29k_convert_frag\n" - -#~ msgid "a29k_estimate_size_before_relax\n" -#~ msgstr "a29k_estimate_size_before_relax\n" - -#~ msgid "Invalid register in & expression" -#~ msgstr "Registro inválido en la expresión &" - -#~ msgid "Intel Wireless MMX technology register expected" -#~ msgstr "se esperaba un registro de tecnología Intel Inalámbrico MMX" - -#~ msgid "unreq: missing hash entry for \"%s\"" -#~ msgstr "unreq: falta la entrada de hash para \"%s\"" - -#~ msgid ".unreq: unrecognized symbol \"%s\"" -#~ msgstr ".unreq: no se reconoce el símbolo \"%s\"" - -#~ msgid "bad_segment" -#~ msgstr "segmento_erróneo" - -#~ msgid "Intel Wireless MMX technology register expected, not '%.100s'" -#~ msgstr "se esperaba un registro de tecnología Intel Inalámbrica MMX, no '%.100s'" - -#~ msgid "illegal co-processor number" -#~ msgstr "número de co-procesador ilegal" - -#~ msgid "immediate co-processor expression too large" -#~ msgstr "expresión de co-procesador inmediata demasiado grande" - -#~ msgid "comma expected after closing square bracket" -#~ msgstr "se esperaba una coma después del paréntesis cuadrado que cierra" - -#~ msgid "'option' field too large" -#~ msgstr "campo 'option' demasiado grande" - -#~ msgid "non-constant expressions for 'option' field not supported" -#~ msgstr "no hay soporte para expresiones no constantes para el campo 'option'" - -#~ msgid "# or { expected after comma" -#~ msgstr "se esperaba # o { después de la coma" - -#~ msgid "Invalid NOP hint" -#~ msgstr "Pista NOP inválida" - -#~ msgid "comma missing after psr flags" -#~ msgstr "falta una coma después de las opciones psr" - -#~ msgid "only a register or immediate value can follow a psr flag" -#~ msgstr "sólo un registro o un valor inmediato puede seguir a una opción psr" - -#~ msgid "address offset too large" -#~ msgstr "dirección de desplazamiento demasiado grande" - -#~ msgid "Warning: instruction unpredictable when using r15" -#~ msgstr "Aviso: la instrucción es impredecible cuando se utiliza r15" - -#~ msgid "Rd equal to Rm or Rn yields unpredictable results" -#~ msgstr "Rd igual a Rm o Rn produce resultados impredecibles" - -#~ msgid "shift requires register or #expression" -#~ msgstr "el desplazamiento requiere un registro o una #expresión" - -#~ msgid "shift requires #expression" -#~ msgstr "el desplazamiento requiere una #expresión" - -#~ msgid "shift of 0 ignored." -#~ msgstr "se ignora un desplazamiento de 0." - -#~ msgid "missing endian specifier" -#~ msgstr "falta el especificador endian" - -#~ msgid "rotation can be 8, 16, 24 or 0 when field is ommited" -#~ msgstr "rotation puede ser 8, 16, 24 o 0 cuando se omite el campo" - -#~ msgid "no 'a', 'i', or 'f' flags for 'cps'" -#~ msgstr "no hay opciones 'a', 'i', o 'f' para 'cps'" - -#~ msgid "conditional execution not supported with control register" -#~ msgstr "la ejecución condicional no tiene soporte con un registro de control" - -#~ msgid "pre/post-indexing used when modified address register is destination" -#~ msgstr "se usó pre/post-indizado cuando el registro de dirección modificado es el destino" - -#~ msgid "ldrd destination registers must not overlap index register" -#~ msgstr "los registros destino ldrd no deben quedar sobre el registro índice" - -#~ msgid "floating point register or immediate expression expected" -#~ msgstr "se esperaba un registro de coma flotante o una expresión inmediata" - -#~ msgid "address expected" -#~ msgstr "se esperaba una dirección" - -#~ msgid "post-indexed expression expected" -#~ msgstr "se esperaba una expresión post-indizada" - -#~ msgid "constant value required for number of registers" -#~ msgstr "se requiere un valor constante para el número de registros" - -#~ msgid "subtract valid only on lo regs" -#~ msgstr "subtract válido sólo en registros lo" - -#~ msgid "invalid immediate value for stack adjust" -#~ msgstr "valor inmediato inválido para el ajuste de la pila" - -#~ msgid "invalid immediate for address calculation" -#~ msgstr "inmediato inválido para el cálculo de dirección" - -#~ msgid "invalid base register in load/store" -#~ msgstr "registro base inválido en carga/almacenamiento" - -#~ msgid "offset expected" -#~ msgstr "se esperaba un desplazamiento" - -#~ msgid "Rs and Rd must be different in MUL" -#~ msgstr "Rs y Rd deben ser diferentes en MUL" - -#~ msgid "inserted missing '!': load/store multiple always writes back base register" -#~ msgstr "se insertó un '!' faltante: los load/store múltiples siempre escribe hacia atrás el registro base" - -#~ msgid "only lo-regs valid in load/store multiple" -#~ msgstr "sólo los registros lo son válidos en carga/almacenamiento múltiple" - -#~ msgid "syntax: ldrs[b] Rd, [Rb, Ro]" -#~ msgstr "sintaxis: ldrs[b] Rd, [Rb, Ro]" - -#~ msgid "failed to create an alias for %s, reason: %s" -#~ msgstr "falló la creación de un alias para %s, razón: %s" - -#~ msgid "ignoring redefinition of register alias '%s' to non-existant register '%s'" -#~ msgstr "se ignora la redefinición del alias de registro '%s' al registro no existente '%s'" - -#~ msgid "ignoring incomplete .req pseuso op" -#~ msgstr "se ignora el pseudo operador incompleto .req" - -#~ msgid "GAS can't handle same-section branch dest >= 0x04000000" -#~ msgstr "GAS no puede manejar un destino de ramificación en la misma sección >= 0x04000000" - -#~ msgid "out of range branch" -#~ msgstr "ramificación fuera de rango" - -#~ msgid "branch with link out of range" -#~ msgstr "ramificación con enlace fuera de rango" - -#~ msgid "Illegal value for co-processor offset" -#~ msgstr "Valor ilegal para el desplazamiento del co-procesador" - -#~ msgid "invalid 3bit immediate" -#~ msgstr "inmediato de 3bit inválido" - -#~ msgid "no operator -- statement `%s'\n" -#~ msgstr "no hay operador -- declaración `%s'\n" - -#~ msgid "expected wr or wcgr" -#~ msgstr "se esperaba wr o wcgr" - -#~ msgid "inconsistent register types" -#~ msgstr "tipos de registro inconsistentes" - -#~ msgid "unrecognised register" -#~ msgstr "no se reconoce el registro" - -#~ msgid "arm convert_frag\n" -#~ msgstr "convert_frag de arm\n" - -#~ msgid "call to tc_crawl_symbol_chain \n" -#~ msgstr "llamada a tc_crawl_symbol_chain \n" - -#~ msgid "call to tc_headers_hook \n" -#~ msgstr "llamada a tc_headers_hook \n" - -#~ msgid ":24 not valid for this opcode" -#~ msgstr ":24 no es válido para este código de operación" - -#~ msgid "expect :8,:16 or :24" -#~ msgstr "se esperaba :8,:16 ó :24" - -#~ msgid "syntax error in reg list" -#~ msgstr "error sintáctico en la lista de registros" - -#~ msgid "missing final register in range" -#~ msgstr "falta el registro final en el rango" - -#~ msgid "expected @(exp, Rn)" -#~ msgstr "se esperaba @(exp, Rn)" - -#~ msgid "@Rn+ needs word register" -#~ msgstr "@Rn+ necesita un registro word" - -#~ msgid "@Rn needs word register" -#~ msgstr "@Rn necesita un registro word" - -#~ msgid "operand must be absolute in range %d..%d" -#~ msgstr "el operando debe ser absoluto en el rango %d..%d" - -#~ msgid "leafproc symbol '%s' undefined" -#~ msgstr "símolo de proceso hoja '%s' indefinido" - -#~ msgid "Warning: making leafproc entries %s and %s both global\n" -#~ msgstr "Aviso: haciendo globales las entradas de proceso hoja %s y %s\n" - -#~ msgid "Unknown PC relative instruction" -#~ msgstr "Instrucción relativa al PC desconocida" - -#~ msgid "Parameter syntax error" -#~ msgstr "Error sintáctico de parámetros" - -#~ msgid "Use of obsolete instruction" -#~ msgstr "Uso de una instrucción obsoleta" - -#~ msgid "Expression truncated to 9 bits" -#~ msgstr "Expresión truncada a 9 bits" - -#~ msgid "Removed lower 2 bits of expression" -#~ msgstr "Se borraron los 2 bits inferiores de la expresión" - -#~ msgid "m88k convert_frag\n" -#~ msgstr "m88k convert_frag\n" - -#~ msgid "constant too large" -#~ msgstr "constante demasiado grande" - -#~ msgid "The -a option doesn't exist. (Despite what the man page says!" -#~ msgstr "La opción -a no existe. (¡A pesar de lo que diga la página del manual!)" - -#~ msgid "" -#~ "Tahoe options:\n" -#~ "-a\t\t\tignored\n" -#~ "-d LENGTH\t\tignored\n" -#~ "-J\t\t\tignored\n" -#~ "-S\t\t\tignored\n" -#~ "-t FILE\t\t\tignored\n" -#~ "-T\t\t\tignored\n" -#~ "-V\t\t\tignored\n" -#~ msgstr "" -#~ "Opciones de Tahoe:\n" -#~ "-a\t\t\tse ignora\n" -#~ "-d LENGTH\t\tse ignora\n" -#~ "-J\t\t\tse ignora\n" -#~ "-S\t\t\tse ignora\n" -#~ "-t FILE\t\t\tse ignora\n" -#~ "-T\t\t\tse ignora\n" -#~ "-V\t\t\tse ignora\n" - -#~ msgid "Casting a branch displacement is bad form, and is ignored." -#~ msgstr "La conversión de una desubicación de ramificación es una forma errónea, y se ignora." - -#~ msgid "Couldn't find the opening '[' for the index of this operand." -#~ msgstr "No se puede encontrar el '[' que abre para el índice de este operando." - -#~ msgid "Couldn't find the opening '(' for the deref of this operand." -#~ msgstr "No se puede encontrar el '(' que abre para la dereferencia de este operando." - -#~ msgid "Operand can't be both pre-inc and post-dec." -#~ msgstr "El operando no puede ser pre-incremento y post-decremento al mismo tiempo." - -#~ msgid "Can't relocate expression error." -#~ msgstr "No se puede reubicar la expresión de error." - -#~ msgid "Junk at end of expression." -#~ msgstr "Basura al final de la expresión." - -#~ msgid "Syntax error in direct register mode." -#~ msgstr "Error sintáctico en el modo directo de registro." - -#~ msgid "SP can't be the source operand with direct register addressing." -#~ msgstr "SP no puede ser el operando fuente con direccionamiento directo de registro." - -#~ msgid "Direct Register can't be used in a branch." -#~ msgstr "Un Registro Directo no se puede utilizar en una ramificación." - -#~ msgid "For quad access, the register must be even and < 14." -#~ msgstr "Para acceso cuadrático, el registro debe ser par y < 14." - -#~ msgid "You can't cast a direct register." -#~ msgstr "No se puede convertir un registro directo." - -# `tromp' se utiliza aquí como verbo transitivo. cfuga -# Referencia: http://www.dictionary.com/search?q=tromp -#~ msgid "Using reg 14 for quadwords can tromp the FP register." -#~ msgstr "El uso del registro 14 para quadwords puede noquear el registro FP." - -#~ msgid "Syntax error in auto-dec mode." -#~ msgstr "Error sintáctico en el modo auto-dec." - -#~ msgid "You can't have an index auto dec mode." -#~ msgstr "No se puede tener un índice en modo auto dec" - -#~ msgid "Auto dec mode cant be used for reading." -#~ msgstr "El modo auto dec no se puede usar para lectura." - -#~ msgid "Auto dec only works of the SP register." -#~ msgstr "El modo auto dec solamente funciona en los registros SP." - -#~ msgid "Auto dec can't be used in a branch." -#~ msgstr "No se puede utilizar auto dec en una ramificación." - -#~ msgid "Auto dec won't work with quadwords." -#~ msgstr "Auto dec no funciona con quadwords." - -#~ msgid "Syntax error in one of the auto-inc modes." -#~ msgstr "Error sintáctico en uno de los modos auto-inc." - -#~ msgid "Auto inc deferred only works of the SP register." -#~ msgstr "El modo auto inc diferido solamente funciona en los registros SP." - -#~ msgid "You can't have an index auto inc deferred mode." -#~ msgstr "No se puede tener un índice en modo auto inc diferido" - -#~ msgid "Auto inc can't be used in a branch." -#~ msgstr "No se puede utilizar auto inc en una ramificación." - -#~ msgid "You can't write to an auto inc register." -#~ msgstr "No se puede escribir en un registro auto inc." - -#~ msgid "Auto inc only works of the SP register." -#~ msgstr "El modo auto inc funciona solamente en los registros SP." - -#~ msgid "Auto inc won't work with quadwords." -#~ msgstr "Auto inc no funciona con quadwords." - -#~ msgid "You can't have an index in auto inc mode." -#~ msgstr "No se puede tener un índice en el modo auto inc." - -#~ msgid "You can't index the sp register." -#~ msgstr "No se puede indizar el registro sp." - -#~ msgid "Syntax error in register displaced mode." -#~ msgstr "Error sintáctico en el registro en modo desubicado." - -#~ msgid "You can't index a register in immediate mode." -#~ msgstr "No se puede indizar un registro en modo inmediato." - -#~ msgid "Immediate access can't be used as an address." -#~ msgstr "No se puede utilizar el acceso inmediato como una dirección" - -#~ msgid "Compiler bug: ODD number of bytes in arg structure %s." -#~ msgstr "Bicho del compilador: número de bytes IMPAR en la estructura de argumentos %s." - -#~ msgid "Compliler bug: Got a case (%d) I wasn't expecting." -#~ msgstr "Bicho del compilador: Se obtuvo un case (%d) que no se esperaba." - -#~ msgid "Real branch displacements must be expressions." -#~ msgstr "Las desubicaciones de ramificaciones reales deben ser expresiones." - -#~ msgid "Complier error: I got an unknown synthetic branch :%c" -#~ msgstr "Error del compilador: Se obtuvo una ramificación sintética desconocida :%c" - -# En México se utilizaría `guácala' por `barf', como una expresión -# que simboliza vómito, pero no es comprensible para todos los -# hispanoparlantes. :-) cfuga -#~ msgid "Barf, bad mode %x\n" -#~ msgstr "Ugh, modo erróneo %x\n" - -#~ msgid "internal error:%s:%d: %s %ld\n" -#~ msgstr "error interno:%s:%d: %s %ld\n" - -#~ msgid "Relaxation is a luxury we can't afford" -#~ msgstr "La relajación es un lujo que no se puede conceder" - -#~ msgid "bad call to md_atof ()" -#~ msgstr "llamada errónea a md_atof ()" - -#~ msgid "':' not followed by 'm' or 's'" -#~ msgstr "':' no está seguido por 'm' o 's'" - -#~ msgid "paren nesting" -#~ msgstr "anidamiento de paréntesis" - -#~ msgid "unhandled expression type" -#~ msgstr "tipo de expresión sin manejar" - -#~ msgid "symbol reloc that is not PC relative or 32 bits" -#~ msgstr "reubicación de símbolo que no es relativo al PC o de 32 bits" - -#~ msgid "unhandled expression" -#~ msgstr "expresión sin manejar" - -#~ msgid "Invalid mnemonic: '%s'" -#~ msgstr "Mnemónico inválido: '%s'" - -#~ msgid "Invalid operands: '%s'" -#~ msgstr "Operandos inválidos: '%s'" - -#~ msgid "unhandled predefined symbol bits" -#~ msgstr "bits de símbolo predefinido sin manejar" - -#~ msgid "PC offset 0x%lx outside range 0x%lx-0x%lx" -#~ msgstr "desplazamiento del PC 0x%lx fuera del rango 0x%lx-0x%lx" - -#~ msgid "unhandled relocation type in fixup" -#~ msgstr "typo de reubicación sin manejar en la compostura" - -#~ msgid "md_convert_frag() not implemented yet" -#~ msgstr "md_convert_frag() aún no está implementado" - -#~ msgid "need on or off." -#~ msgstr "necesita on u off." - -#~ msgid "syntax error after <exp" -#~ msgstr "error sintáctico después de <exp" - -#~ msgid "emitting simplification relocation" -#~ msgstr "emitiendo simplificación de reubicación" - -#~ msgid "emitting unknown relocation" -#~ msgstr "emitiendo reubicación desconocida" - -#~ msgid "dwarf2 is not supported for this object file format" -#~ msgstr "dwarf2 no tiene soporte para este formato de fichero objeto" - -#~ msgid "Macro with this name was already defined" -#~ msgstr "Ya estaba definida una macro con ese nombre" - -#~ msgid "missplaced )" -#~ msgstr ") mal colocado" - -#~ msgid "macro formal argument does not exist" -#~ msgstr "el argumento formal de macro no existe" - -#~ msgid "FATAL: can't close %s" -#~ msgstr "FATAL: no se puede cerrar %s" - -#~ msgid "Failed to emit an object byte" -#~ msgstr "Falló al emitir un byte objeto" - -#~ msgid "can't continue" -#~ msgstr "no se puede continuar" - -#~ msgid "attempt to switch to nonexistent segment \"%s\"" -#~ msgstr "se intentó cambiar a un segmento \"%s\" que no existe" - -#~ msgid "Missing size expression" -#~ msgstr "Falta una expresión de tamaño" - -#~ msgid "lcomm length (%d.) <0! Ignored." -#~ msgstr "¡longitud de lcomm (%d.) <0! Ignorada." - -#~ msgid "Symbol %s already defined" -#~ msgstr "El símbolo %s ya está definido" - -#~ msgid "common alignment negative; 0 assumed" -#~ msgstr "alineación común negativa; se asume 0" - -#~ msgid "ignoring new section group for %s" -#~ msgstr "se ignora un grupo de sección nuevo para %s" - -#~ msgid "" -#~ "g++ wrote an extern reference to `%s' as a routine.\n" -#~ "I will fix it, but I hope that it was note really a routine." -#~ msgstr "" -#~ "g++ escribió una referencia externa a `%s' como una rutina.\n" -#~ "Se compondrá, pero se espera que no sea realmente una rutina." - -#~ msgid "File overrides no-base-register option." -#~ msgstr "El fichero se impone a la opción no-base-register." - -#~ msgid "use old ABI (ELF only)" -#~ msgstr "usa la ABI antigua (solamente ELF)" - -#~ msgid "expression possibly out of 8-bit range" -#~ msgstr "expresión posiblemente fuera del rango de 8-bit" - -#~ msgid "Invalid register list for ldm/stm)\n" -#~ msgstr "Lista de registros inválida para ldm/stm)\n" - -#~ msgid "unimplemented segment type %d in operand" -#~ msgstr "tipo de segmento %d sin implementar en el operando" - -#~ msgid "Additional NOP may be necessary to workaround Itanium processor A/B step errata" -#~ msgstr "Pueden ser necesario un NOP adicional para evitar el error de paso A/B del procesador Itanium" - -#~ msgid " -relax create linker relaxable code\n" -#~ msgstr " -relax crea código relajable para el enlazados\n" - -#~ msgid " -cpu-desc provide runtime cpu description file\n" -#~ msgstr " -cpu-desc provee el fichero de descripción del cpu en tiempo de ejecución\n" - -#~ msgid "Branch %s is always false (nop)" -#~ msgstr "La ramificación %s es siempre falsa (nop)" - -#~ msgid "Branch likely %s is always false" -#~ msgstr "La ramificación como %s es siempre falsa" - -#~ msgid "load/store address overflow (max 32 bits)" -#~ msgstr "desbordamiento de dirección load/store (máx 32 bits)" - -#~ msgid "-G may not be used with embedded PIC code" -#~ msgstr "-G no se puede utilizar con código PIC imbuído" - -#~ msgid "-G is not supported for this configuration" -#~ msgstr "-G no tiene soporte para esta configuración" - -#~ msgid "-G may not be used with SVR4 or embedded PIC code" -#~ msgstr "-G no se puede utilizar con código PIC de SVR4 o imbuído" - -#~ msgid "Invalid PC relative reloc" -#~ msgstr "Reubicación relativa al PC inválida" - -#~ msgid "%08lx UNDEFINED\n" -#~ msgstr "%08lx SIN DEFINIR\n" - -#~ msgid "No read only data section in this object file format" -#~ msgstr "No hay sección de datos de sólo lectura en este formato de fichero objeto" - -#~ msgid "Global pointers not supported; recompile -G 0" -#~ msgstr "Los punteros globales no tienen soporte; recompile -G 0" - -#~ msgid "AT used after \".set noat\" or macro used after \".set nomacro\"" -#~ msgstr "se utilizó AT después de \".set noat\" o se utilizó una macro después de \".set nomacro\"" - -#~ msgid "Double check fx_r_type in tc-mips.c:tc_gen_reloc" -#~ msgstr "Revise dos veces fx_r_type en tc-mips.c:tc_gen_reloc" - -#~ msgid "the linker will not handle this relocation correctly (1)" -#~ msgstr "el enlazador no manejará correctamente esta reubicación (1)" - -#~ msgid "-mcoff-version={0|1|2} Select COFF version\n" -#~ msgstr "-mcoff-version={0|1|2} Selecciona la versión de COFF\n" - -#~ msgid "unknown command line option: -%c%s\n" -#~ msgstr "opción de línea de órdenes desconocida: -%c%s\n" - -#~ msgid "'--literal-section-name' is deprecated; use '--rename-section .literal=NEWNAME'" -#~ msgstr "'--literal-section-name' es obsoleto; utilice '--rename-section .literal=NOMBRENUEVO'" - -#~ msgid "'--text-section-name' is deprecated; use '--rename-section .text=NEWNAME'" -#~ msgstr "'--text-section-name' es obsoleto; utilice '--rename-section .text=NOMBRENUEVO'" - -#~ msgid "'--data-section-name' is deprecated; use '--rename-section .data=NEWNAME'" -#~ msgstr "'--data-section-name' es obsoleto; utilice '--rename-section .data=NOMBRENUEVO'" - -#~ msgid "'--bss-section-name' is deprecated; use '--rename-section .bss=NEWNAME'" -#~ msgstr "'--bss-section-name' es obsoleto; utilice '--rename-section .bss=NOMBRENUEVO'" - -#~ msgid "operand %d not in immediate table for '%s'" -#~ msgstr "el operando %d no está en la tabla de inmediatos para '%s'" - -#~ msgid "instruction fragment may contain data" -#~ msgstr "el fragmento de instrucción puede contener datos" - -#~ msgid "invalid relocation operand %i on '%s'" -#~ msgstr "operando de reubicación %i inválido en '%s'" - -#~ msgid "instruction with constant operands does not fit without widening" -#~ msgstr "la instrucción con operandos constantes no cabe sin ensanchar" - -#~ msgid "opcode 'OR' unavailable in this configuration" -#~ msgstr "el código de operación 'OR' no está disponible en esta configuración" - -#~ msgid "invalid %d-byte NOP requested" -#~ msgstr "se requirió un NOP de %d-byte inválido" - -#~ msgid "get_expanded_loop_offset: undefined opcode" -#~ msgstr "get_expanded_loop_offset: código de operación indefinido" - -#~ msgid "undefined @ suffix '%s', expected '%s'" -#~ msgstr "sufijo @ '%s' indefinido, se esperaba '%s'" - -#~ msgid "non-PCREL relocation operand %d for '%s': %s" -#~ msgstr "operando de reubicación %d que no es PCREL para '%s': %s" - -#~ msgid "get_text_align_power: argument too large" -#~ msgstr "get_text_align_power: argumento demasiado grande" - -#~ msgid "invalid opcode for RELAX_ALIGN_NEXT_OPCODE" -#~ msgstr "código de operación inválido para RELAX_ALIGN_NEXT_OPCODE" - -#~ msgid "cannot continue" -#~ msgstr "no se puede continuar" - -#~ msgid "expected loop opcode in relax align next target" -#~ msgstr "se esperaba un código de operación de ciclo en el objetivo de relajación de alineación del siguiente" - -#~ msgid "expected align_code or RELAX_ALIGN_NEXT_OPCODE" -#~ msgstr "se esperaba align_code o RELAX_ALIGN_NEXT_OPCODE" - -#~ msgid "loop relaxation specification does not correspond" -#~ msgstr "la especificación de relajación del ciclo no corresponde" - -#~ msgid "inlining literal pool; specify location with .literal_position." -#~ msgstr "conjunto de literales inlining; especificar la ubicación con .literal_position." - -#~ msgid ".endr encountered without preceeding .rept, .irc, or .irp" -#~ msgstr "se encontró una directiva .endr sin una directiva .rept, .irc, ó .irp precedente" - -#~ msgid "subsegment index too high" -#~ msgstr "índice de subsegmento demasiado alto" - -#~ msgid ".COMMon length (%d.) <0! Ignored." -#~ msgstr "¡longitud de .COMM (%d.) <0! Ignorada." - -#~ msgid "expect :8 or :16 here" -#~ msgstr "se esperaba :8 ó :16 aquí" - -#~ msgid "md_number_to_disp\n" -#~ msgstr "md_number_to_disp\n" - -#~ msgid "i860_number_to_field\n" -#~ msgstr "i860_number_to_field\n" - -#~ msgid "md_number_to_disp not defined" -#~ msgstr "md_number_to_disp no está definido" - -#~ msgid "md_number_to_field not defined" -#~ msgstr "md_number_to_field no está definido" - -#~ msgid "MIPS internal Error" -#~ msgstr "Error interno de MIPS" - -#~ msgid "rotate count too large" -#~ msgstr "la cuenta de rotación es demasiado grande" - -#~ msgid "invalid architecture -mtune=%s" -#~ msgstr "arquitectura -mtune=%s inválida" - -#~ msgid "invalid architecture -mcpu=%s" -#~ msgstr "arquitectura -mcpu=%s inválida" - -#~ msgid "A different -mtune= was already specified, is now -mtune=%s" -#~ msgstr "Ya se había especificado un -mtune= diferente, ahora es -mtune=%s" - -#~ msgid "A different -march= was already specified, is now -march=%s" -#~ msgstr "Ya se había especificado un -march= diferente, ahora es -march=%s" - -#~ msgid "A different -march= or -mtune= was already specified, is now -m4650" -#~ msgstr "Ya se había especificado un -march ó un -mtune diferentes, ahora es -m4650" - -#~ msgid "A different -march= or -mtune= was already specified, is now -m4010" -#~ msgstr "Ya se había especificado un -march ó un -mtune diferentes, ahora es -m4010" - -#~ msgid "A different -march= or -mtune= was already specified, is now -m4100" -#~ msgstr "Ya se había especificado un -march ó un -mtune diferentes, ahora es -m4100" - -#~ msgid "A different -march= or -mtune= was already specified, is now -m3900" -#~ msgstr "Ya se había especificado un -march ó un -mtune diferentes, ahora es -m3900" - -#~ msgid "The -mcpu option can't be used together with -march. Use -mtune instead of -mcpu." -#~ msgstr "La opción -mcpu no se puede usar junto con -march. Utilice -mtune en lugar de -mcpu." - -#~ msgid "The -mcpu option can't be used together with -mtune. Use -march instead of -mcpu." -#~ msgstr "La opción -mcpu no se puede usar junto con -mtune. Utilice -march en lugar de -mcpu." - -#~ msgid "The -mcpu option is deprecated. Please use -march and -mtune instead." -#~ msgstr "La opción -mcpu está deprecada. Por favor utilice -march y -mtune en su lugar." - -#~ msgid "The -march option is incompatible to -mipsN and therefore ignored." -#~ msgstr "La opción -march es incompatible con -mipsN y por lo tanto se ignora." - -#~ msgid "Word displacement out of range. line number not valid" -#~ msgstr "Desubicación de word fuera de rango. el número de línea no es válido" - -#~ msgid "unresolved fx_subsy symbol that must be resolved" -#~ msgstr "símbolo fx_subsy sin resolver que debe ser resuelto" - -#~ msgid "call to tc_Nout_fix_to_chars \n" -#~ msgstr "llamada a tc_Nout_fix_to_chars \n" - -#~ msgid "" -#~ "Z8K options:\n" -#~ "-z8001\t\t\tgenerate segmented code\n" -#~ "-z8002\t\t\tgenerate unsegmented code\n" -#~ msgstr "" -#~ "Opciones de Z8K:\n" -#~ "-z8001\t\t\tgenera código segmentado\n" -#~ "-z8002\t\t\tgenera código sin segmentar\n" - -#~ msgid "redefinition not allowed\n" -#~ msgstr "no se permite la redefinición\n" - -#~ msgid "the %c operator cannot take non-absolute arguments.\n" -#~ msgstr "el operador %c no puede tomar argumentos que no son absolutos.\n" - -#~ msgid "string where expression expected.\n" -#~ msgstr "cadena donde se esperaba una expresión.\n" - -#~ msgid "can't find primary in expression.\n" -#~ msgstr "no se puede encontrar el primario en la expresión.\n" - -#~ msgid "attempt to divide by zero.\n" -#~ msgstr "se intentó dividir por cero.\n" - -#~ msgid "can't add two relocatable expressions\n" -#~ msgstr "no se pueden agregar dos expresiones reubicables\n" - -#~ msgid "unreasonable nesting.\n" -#~ msgstr "anidamiento no razonable.\n" - -#~ msgid "End of file not at start of line.\n" -#~ msgstr "El final del fichero no está el inicio de la línea.\n" - -#~ msgid "radix is %c must be one of b, q, d or h" -#~ msgstr "el radical es %c debe ser uno de b, q, d ó h" - -#~ msgid "size must be one of b, w or l, is %c.\n" -#~ msgstr "el tamaño debe ser uno de b, w ó l, es %c.\n" - -# ¿datab = datos binarios? Verificar contra el código. cfuga -#~ msgid "datab repeat must be constant.\n" -#~ msgstr "la repetición de datos-b debe ser constante.\n" - -#~ msgid "datab data must be absolute.\n" -#~ msgstr "los datos-b deben ser absolutos.\n" - -#~ msgid "align needs absolute expression.\n" -#~ msgstr "la alineación necesita una expresión absoluta.\n" - -#~ msgid ".align needs absolute fill value.\n" -#~ msgstr ".align necesita un valor de relleno absoluto.\n" - -#~ msgid "res needs absolute expression for fill count.\n" -#~ msgstr "res necesita una expresión absoluta para la cuenta de relleno.\n" - -#~ msgid "form LIN= needs absolute expresssion.\n" -#~ msgstr "la forma LIN= necesita una expresión absoluta.\n" - -#~ msgid "COL=" -#~ msgstr "COL=" - -#~ msgid "form COL= needs absolute expresssion.\n" -#~ msgstr "la forma COL= necesita una expresión absoluta.\n" - -#~ msgid "misplaced ( .\n" -#~ msgstr "( mal colocado.\n" - -#~ msgid "misplaced ).\n" -#~ msgstr ") mal colocado.\n" - -#~ msgid ".instr needs absolute expresson.\n" -#~ msgstr ".instr necesita una expresión absoluta.\n" - -#~ msgid "need absolute position.\n" -#~ msgstr "se necesita una posición absoluta.\n" - -#~ msgid "need absolute length.\n" -#~ msgstr "se necesita una longitud absoluta.\n" - -#~ msgid "END missing from end of file.\n" -#~ msgstr "falta END en el final del fichero.\n" - -#~ msgid ".ASSIGNA without label.\n" -#~ msgstr ".ASSIGNA sin etiqueta.\n" - -#~ msgid ".ASSIGNS without label.\n" -#~ msgstr ".ASSIGNS sin etiqueta.\n" - -#~ msgid "Can't find preprocessor variable %s.\n" -#~ msgstr "No se puede encontrar la variable del preprocesador %s.\n" - -#~ msgid "Comparison operator must be one of EQ, NE, LT, LE, GT or GE.\n" -#~ msgstr "El operador de comparación debe ser uno de EQ, NE, LT, LE, GT ó GE.\n" - -#~ msgid "Comparison operator for strings must be EQ or NE\n" -#~ msgstr "El operador de comparación para las cadenas debe ser EQ ó NE\n" - -#~ msgid "Conditional operator must have absolute operands.\n" -#~ msgstr "El operador condicional debe tener operandos absolutos.\n" - -#~ msgid "String compared against expression.\n" -#~ msgstr "Cadena comparada contra una expresión.\n" - -#~ msgid "AIF nesting unreasonable.\n" -#~ msgstr "anidamiento de AIF no razonable.\n" - -#~ msgid "Multiple AELSEs in AIF.\n" -#~ msgstr "AELSEs múltiples en AIF.\n" - -#~ msgid "AENDI without AIF.\n" -#~ msgstr "AENDI sin AIF.\n" - -#~ msgid "IF nesting unreasonable.\n" -#~ msgstr "anidamiento de IF no razonable.\n" - -#~ msgid "Bad format for IF or IFNC.\n" -#~ msgstr "Formato erróneo para IF ó IFNC.\n" - -#~ msgid "AENDR without a AREPEAT.\n" -#~ msgstr "AENDR sin un AREPEAT.\n" - -#~ msgid "ENDR without a REPT.\n" -#~ msgstr "ENDR sin un REPT.\n" - -#~ msgid "AWHILE without a AENDW at %d.\n" -#~ msgstr "AWHILE sin un AENDW en %d.\n" - -#~ msgid "AENDW without a AENDW.\n" -#~ msgstr "AWHILE sin un AENDW.\n" - -#~ msgid "AREPEAT without a AENDR at %d.\n" -#~ msgstr "AREPEAT sin un AENDR en %d.\n" - -#~ msgid ".ENDM without a matching .MACRO.\n" -#~ msgstr ".ENDM sin un .MACRO coincidente.\n" - -#~ msgid "LOCAL outside of MACRO" -#~ msgstr "LOCAL fuera de MACRO" - -#~ msgid "macro at line %d: %s\n" -#~ msgstr "macro en la línea %d: %s\n" - -#~ msgid "Character code in string must be absolute expression.\n" -#~ msgstr "El código de carácter en la cadena debe ser una expresión absoluta.\n" - -#~ msgid "Missing > for character code.\n" -#~ msgstr "Falta un > para el código de carácter.\n" - -#~ msgid "string for SDATAC longer than 255 characters (%d).\n" -#~ msgstr "la cadena para SDATAC es más larga que 255 caracteres (%d).\n" - -#~ msgid "illegal character in SDATA line (0x%x).\n" -#~ msgstr "carácter ilegal en la línea SDATA (0x%x).\n" - -#~ msgid "Must have absolute SDATAB repeat count.\n" -#~ msgstr "Se debe tener una cuenta de repetición SDATAB absoluta.\n" - -#~ msgid "Must have positive SDATAB repeat count (%d).\n" -#~ msgstr "Se debe tener una cuenta de repetición SDATAB positiva (%d).\n" - -#~ msgid "Unreasonable include depth (%ld).\n" -#~ msgstr "Profundidad de inclusión no razonable (%ld).\n" - -#~ msgid "Unreasonable expansion (-u turns off check).\n" -#~ msgstr "Expansión no razonable (-u apaga esta revisión).\n" - -#~ msgid "Unrecognised pseudo op `%s'.\n" -#~ msgstr "No se reconoce la pseudo operación `%s'.\n" - -#~ msgid "Invalid expression on command line.\n" -#~ msgstr "Expresión inválida en la línea de órdenes.\n" - -#~ msgid "" -#~ "Usage: %s \n" -#~ " [-a] [--alternate] enter alternate macro mode\n" -#~ " [-c char] [--commentchar char] change the comment character from !\n" -#~ " [-d] [--debug] print some debugging info\n" -#~ " [-h] [--help] print this message\n" -#~ " [-M] [--mri] enter MRI compatibility mode\n" -#~ " [-o out] [--output out] set the output file\n" -#~ " [-p] [--print] print line numbers\n" -#~ msgstr "" -#~ "Modo de empleo: %s \n" -#~ " [-a] [--alternate] introduce el modo de macro alternativo\n" -#~ " [-c car] [--commentchar car] cambia el carácter de comentario de !\n" -#~ " [-d] [--debug] muestra alguna información de depuración\n" -#~ " [-h] [--help] muestra este mensaje\n" -#~ " [-M] [--mri] introduce el modo de compatibilidad MRI\n" -#~ " [-o sal] [--output salida] establece el fichero de salida\n" -#~ " [-p] [--print] muestra los números de línea\n" - -#~ msgid "" -#~ " [-s] [--copysource] copy source through as comments \n" -#~ " [-u] [--unreasonable] allow unreasonable nesting\n" -#~ " [-v] [--version] print the program version\n" -#~ " [-Dname=value] create preprocessor variable called name, with value\n" -#~ " [-Ipath] add to include path list\n" -#~ " [in-file]\n" -#~ msgstr "" -#~ " [-s] [--copysource] copia el código procesado como comentarios\n" -#~ " [-u] [--unreasonable] permite el anidamiento no razonable\n" -#~ " [-v] [--version] muestra la versión del programa\n" -#~ " [-Dnombre=valor] crea la variable de preprocesador llamada nombre, con valor\n" -#~ " [-Iruta] agrega a la lista de ruta de inclusión\n" -#~ " [fichero-entrada]\n" - -#~ msgid "%s: Gnu Assembler Macro Preprocessor\n" -#~ msgstr "%s: Preprocesador de Macro Ensamblador de Gnu\n" - -#~ msgid "GNU assembler pre-processor %s\n" -#~ msgstr "Pre-procesador de ensamblador de GNU %s\n" - -#~ msgid "Copyright 1996 Free Software Foundation, Inc.\n" -#~ msgstr "Copyright 1996 Free Software Foundation, Inc.\n" - -#~ msgid "%s: Can't open output file `%s'.\n" -#~ msgstr "%s: No se puede abrir el fichero de salida `%s'.\n" - -#~ msgid "%s: Can't open input file `%s'.\n" -#~ msgstr "%s: No se puede abrir el fichero de entrada `%s'.\n" - -#~ msgid "Internal error, aborting at %s line %d" -#~ msgstr "Error interno, abortando en %s línea %d" - -#~ msgid "" -#~ "\n" -#~ "Please report this bug.\n" -#~ msgstr "" -#~ "\n" -#~ "Por favor reporte este bicho.\n" - -#~ msgid "%s:%u: bad return from bfd_install_relocation" -#~ msgstr "%s:%u: devolución errónea de bfd_install_relocation" - -#~ msgid "negative of non-absolute symbol `%s'" -#~ msgstr "negativo de un símbolo `%s' que no es absoluto" - -#~ msgid "subtraction of two symbols in different sections `%s' {%s section} - `%s' {%s section} at file address %s" -#~ msgstr "sustracción de dos símbolos en secciones diferentes `%s' {sección %s} - `%s' {sección %s} en la dirección del fichero %s" - -#~ msgid "64bit operations available only in 64bit modes." -#~ msgstr "las operaciones de 64bit solamente están disponibles en modos de 64bit." - -#~ msgid "unrecognised APCS switch -m%s" -#~ msgstr "no se reconoce el interruptor APCS -m%s" - -#~ msgid "" -#~ " ARM Specific Assembler Options:\n" -#~ " -m[arm][<processor name>] select processor variant\n" -#~ " -m[arm]v[2|2a|3|3m|4|4t|5[t][e]] select architecture variant\n" -#~ " -marm9e allow Cirrus/DSP instructions\n" -#~ " -mthumb only allow Thumb instructions\n" -#~ " -mthumb-interwork mark the assembled code as supporting interworking\n" -#~ " -mall allow any instruction\n" -#~ " -mfpa10, -mfpa11 select floating point architecture\n" -#~ " -mfpe-old don't allow floating-point multiple instructions\n" -#~ " -mvfpxd allow vfp single-precision instructions\n" -#~ " -mvfp allow all vfp instructions\n" -#~ " -mno-fpu don't allow any floating-point instructions.\n" -#~ " -k generate PIC code.\n" -#~ msgstr "" -#~ " Opciones Específicas del Ensamblador de ARM:\n" -#~ " -m[arm][<nombre procesador>] selecciona la variante de procesador\n" -#~ " -m[arm]v[2|2a|3|3m|4|4t|5[t][e]] selecciona la variante de arquitectura\n" -#~ " -marm9e permite instrucciones Cirrus/DSP\n" -#~ " -mthumb sólo permite instrucciones Thumb\n" -#~ " -mthumb-interwork marca el código ensamblado con soporte para interoperación\n" -#~ " -mall permite cualquier instrucción\n" -#~ " -mfpa10, -mfpa11 selecciona la arquitectura de coma flotante\n" -#~ " -mfpe-old no permite instrucciones múltiples de coma flotante\n" -#~ " -mvfpxd permite instrucciones vfp de precisión sencilla\n" -#~ " -mvfp permite todas las instrucciones vfp\n" -#~ " -mno-fpu no permite ninguna instrucción de coma flotante.\n" -#~ " -k genera código PIC.\n" - -#~ msgid "" -#~ " -mapcs-32, -mapcs-26 specify which ARM Procedure Calling Standard to use\n" -#~ " -matpcs use ARM/Thumb Procedure Calling Standard\n" -#~ " -mapcs-float floating point args are passed in FP regs\n" -#~ " -mapcs-reentrant the code is position independent/reentrant\n" -#~ msgstr "" -#~ " -mapcs-32, -mapcs-26 especifica el Estándar de Llamada de Procedimiento de ARM a utilizar\n" -#~ " -matpcs utiliza el Estándar de Llamada de Procedimiento ARM/Thumb\n" -#~ " -mapcs-float los argumentos de coma flotante se pasan en registros FP\n" -#~ " -mapcs-reentrant el código es independiente de posición/reentrante\n" - -#~ msgid "EOF in Comment: Newline inserted" -#~ msgstr "Fin de Fichero en Comentario: se insertó una Línea nueva" - -#~ msgid ".else without matching .if - ignored" -#~ msgstr ".else sin un .if coincidente - ignorado" - -#~ msgid "Unrecognized section type" -#~ msgstr "No se reconoce el tipo de sección" - -#~ msgid "bad instruction format for lda !%s!%ld" -#~ msgstr "formato de instrucción erróneo para lda !%s%ld" - -#~ msgid "bad instruction '%.100s'" -#~ msgstr "instrucción errónea '%.100s'" - -#~ msgid "Constant expression expected" -#~ msgstr "Se esperaba una expresión constante" - -#~ msgid "Processor does not support halfwords or signed bytes" -#~ msgstr "El procesador no tiene soporte para halfwords o bytes con signo" - -#~ msgid "Invalid offset" -#~ msgstr "Desplazamiento inválido" - -#~ msgid "Opcode `%s' must have suffix from list: <%s>" -#~ msgstr "El código de operación `%s' debe tener un sufijo de la lista: <%s>" - -#~ msgid "Warning: Use of the 'nv' conditional is deprecated\n" -#~ msgstr "Aviso: El uso del condicional 'nv' está deprecado\n" - -#~ msgid "Opcode `%s' is unconditional\n" -#~ msgstr "El código de operación `%s' es incondicional\n" - -#~ msgid "Opcode `%s' must have suffix from <%s>\n" -#~ msgstr "El código de operación `%s' debe tener un sufijo de <%s>\n" - -#~ msgid "Invalid Compare/Subtract Condition: %c" -#~ msgstr "Condición de Comparación/Sustracción Inválida: %c" - -#~ msgid "Extended register `%%%s' available only in 64bit mode." -#~ msgstr "El registro extendido `%%%s' sólo está disponible en modo 64bit." - -#~ msgid "bad reloc specifier in expression" -#~ msgstr "especificador de reubicación erróneo en la expresión" - -#~ msgid "Bad COFF debugging info" -#~ msgstr "Información de depuración COFF errónea" - -#~ msgid "Missing '%c' assumed" -#~ msgstr "Se asume que falta '%c'" - -#~ msgid "Partial line at end of file ignored" -#~ msgstr "Se ignora la línea parcial al final de la línea" - -#~ msgid "Alignment not a power of 2" -#~ msgstr "La alineación no es una potencia de 2" - -#~ msgid "Missing alignment" -#~ msgstr "Falta la alineación" - -#~ msgid "invalid segment \"%s\"; segment \"%s\" assumed" -#~ msgstr "segmento \"%s\" inválido; se asume el segmento \"%s\"" - -#~ msgid "illegal expression; zero assumed" -#~ msgstr "expresión ilegal; se asume cero" - -#~ msgid "missing expression; zero assumed" -#~ msgstr "falta una expresión; se asume cero" - -#~ msgid "Unresolvable or nonpositive repeat count; using 1" -#~ msgstr "Cuenta de repetición sin resolver o no positiva; se utiliza 1" - -#~ msgid ".stabs: Missing comma" -#~ msgstr ".stabs: Falta una coma" - -#~ msgid "Symbol %s already defined." -#~ msgstr "El símbolo %s ya está definido." @@ -234,7 +234,6 @@ static unsigned int bundle_lock_depth; #endif static void do_s_func (int end_p, const char *default_prefix); -static void s_align (int, int); static void s_altmacro (int); static void s_bad_end (int); static void s_reloc (int); @@ -668,13 +667,16 @@ start_bundle (void) { fragS *frag = frag_now; - frag_align_code (0, 0); + frag_align_code (bundle_align_p2, 0); while (frag->fr_type != rs_align_code) frag = frag->fr_next; gas_assert (frag != frag_now); + /* Set initial alignment to zero. */ + frag->fr_offset = 0; + return frag; } @@ -721,9 +723,9 @@ finish_bundle (fragS *frag, unsigned int size) if (size > 1) { - /* If there is more than a single byte, then we need to set up the - alignment frag. Otherwise we leave it at its initial state from - calling frag_align_code (0, 0), so that it does nothing. */ + /* If there is more than a single byte, then we need to set up + the alignment frag. Otherwise we leave it at its initial + state with zero alignment so that it does nothing. */ frag->fr_offset = bundle_align_p2; frag->fr_subtype = size - 1; } @@ -1435,14 +1437,15 @@ read_a_source_file (const char *name) #endif } -/* Convert O_constant expression EXP into the equivalent O_big representation. - Take the sign of the number from SIGN rather than X_add_number. */ +/* Convert O_constant expression EXP into the equivalent O_big + representation. */ -static void -convert_to_bignum (expressionS *exp, int sign) +static bool +convert_to_bignum (expressionS *exp) { valueT value; unsigned int i; + bool sign = !exp->X_unsigned && exp->X_extrabit; value = exp->X_add_number; for (i = 0; i < sizeof (exp->X_add_number) / CHARS_PER_LITTLENUM; i++) @@ -1456,6 +1459,9 @@ convert_to_bignum (expressionS *exp, int sign) generic_bignum[i++] = sign ? LITTLENUM_MASK : 0; exp->X_op = O_big; exp->X_add_number = i; + exp->X_unsigned = !sign; + + return sign; } /* For most MRI pseudo-ops, the line actually ends at the first @@ -1514,13 +1520,14 @@ s_abort (int ignore ATTRIBUTE_UNUSED) as_fatal (_(".abort detected. Abandoning ship.")); } +#ifndef TC_ALIGN_LIMIT +#define TC_ALIGN_LIMIT (stdoutput->arch_info->bits_per_address - 1) +#endif + /* Handle the .align pseudo-op. A positive ARG is a default alignment (in bytes). A negative ARG is the negative of the length of the fill pattern. BYTES_P is non-zero if the alignment value should be interpreted as the byte boundary, rather than the power of 2. */ -#ifndef TC_ALIGN_LIMIT -#define TC_ALIGN_LIMIT (stdoutput->arch_info->bits_per_address - 1) -#endif static void s_align (signed int arg, int bytes_p) @@ -1573,7 +1580,8 @@ s_align (signed int arg, int bytes_p) if (align > align_limit) { align = align_limit; - as_warn (_("alignment too large: %u assumed"), align_limit); + as_warn (_("alignment too large: %u assumed"), + bytes_p ? 1u << align_limit : align_limit); } if (*input_line_pointer != ',') @@ -1598,7 +1606,13 @@ s_align (signed int arg, int bytes_p) else { ++input_line_pointer; - max = get_absolute_expression (); + offsetT val = get_absolute_expression (); + max = val; + if (val < 0 || max != (valueT) val) + { + as_warn (_("ignoring out of range alignment maximum")); + max = 0; + } } } @@ -2251,8 +2265,8 @@ void s_fill (int ignore ATTRIBUTE_UNUSED) { expressionS rep_exp; - long size = 1; - long fill = 0; + offsetT size = 1; + valueT fill = 0; char *p; #ifdef md_flush_pending_output @@ -2318,7 +2332,7 @@ s_fill (int ignore ATTRIBUTE_UNUSED) if (size && !need_pass_2) { if (now_seg == absolute_section) - abs_section_offset += rep_exp.X_add_number * size; + abs_section_offset += (valueT) rep_exp.X_add_number * size; if (rep_exp.X_op == O_constant) { @@ -2361,7 +2375,7 @@ s_fill (int ignore ATTRIBUTE_UNUSED) bytes from a 4-byte expression and they forgot to sign extend. */ #define BSD_FILL_SIZE_CROCK_4 (4) - md_number_to_chars (p, (valueT) fill, + md_number_to_chars (p, fill, (size > BSD_FILL_SIZE_CROCK_4 ? BSD_FILL_SIZE_CROCK_4 : (int) size)); @@ -3296,6 +3310,7 @@ assign_symbol (char *name, int mode) retain the value of the symbol at the point of use. */ else if (S_IS_VOLATILE (symbolP)) symbolP = symbol_clone (symbolP, 1); + S_CLEAR_WEAKREFR (symbolP); } if (mode == 0) @@ -3610,6 +3625,13 @@ s_nop (int ignore ATTRIBUTE_UNUSED) && frag_off + frag_now_fix () < start_off + exp.X_add_number); } +/* Use this to specify the amount of memory allocated for representing + the nops. Needs to be large enough to hold any fixed size prologue + plus the replicating portion. */ +#ifndef MAX_MEM_FOR_RS_SPACE_NOP +# define MAX_MEM_FOR_RS_SPACE_NOP 1 +#endif + void s_nops (int ignore ATTRIBUTE_UNUSED) { @@ -3658,8 +3680,7 @@ s_nops (int ignore ATTRIBUTE_UNUSED) /* Store the no-op instruction control byte in the first byte of frag. */ char *p; symbolS *sym = make_expr_symbol (&exp); - p = frag_var (rs_space_nop, 1, 1, (relax_substateT) 0, - sym, (offsetT) 0, (char *) 0); + p = frag_var (rs_space_nop, MAX_MEM_FOR_RS_SPACE_NOP, 1, 0, sym, 0, NULL); *p = val.X_add_number; } @@ -4634,8 +4655,7 @@ emit_expr_with_reloc (expressionS *exp, pass to md_number_to_chars, handle it as a bignum. */ if (op == O_constant && nbytes > sizeof (valueT)) { - extra_digit = exp->X_unsigned ? 0 : -1; - convert_to_bignum (exp, !exp->X_unsigned); + extra_digit = -convert_to_bignum (exp); op = O_big; } @@ -5354,12 +5374,14 @@ emit_leb128_expr (expressionS *exp, int sign) } else if (op == O_constant && sign - && (exp->X_add_number < 0) == !exp->X_extrabit) + && (exp->X_unsigned + ? exp->X_add_number < 0 + : (exp->X_add_number < 0) != exp->X_extrabit)) { /* We're outputting a signed leb128 and the sign of X_add_number doesn't reflect the sign of the original value. Convert EXP to a correctly-extended bignum instead. */ - convert_to_bignum (exp, exp->X_extrabit); + convert_to_bignum (exp); op = O_big; } diff --git a/gas/symbols.c b/gas/symbols.c index 14e6018..45b7d9b 100644 --- a/gas/symbols.c +++ b/gas/symbols.c @@ -812,17 +812,14 @@ symbol_clone (symbolS *orgsymP, int replace) if (replace) { - if (symbol_rootP == orgsymP) + if (orgsymP->x->previous != NULL) + orgsymP->x->previous->x->next = newsymP; + else symbol_rootP = newsymP; - else if (orgsymP->x->previous) - { - orgsymP->x->previous->x->next = newsymP; - orgsymP->x->previous = NULL; - } - if (symbol_lastP == orgsymP) - symbol_lastP = newsymP; - else if (orgsymP->x->next) + if (orgsymP->x->next != NULL) orgsymP->x->next->x->previous = newsymP; + else + symbol_lastP = newsymP; /* Symbols that won't be output can't be external. */ S_CLEAR_EXTERNAL (orgsymP); @@ -1033,17 +1030,12 @@ symbol_append (symbolS *addme, symbolS *target, *rootPP = addme; *lastPP = addme; return; - } /* if the list is empty */ + } if (target->x->next != NULL) - { - target->x->next->x->previous = addme; - } + target->x->next->x->previous = addme; else - { - know (*lastPP == target); - *lastPP = addme; - } /* if we have a next */ + *lastPP = addme; addme->x->next = target->x->next; target->x->next = addme; @@ -1071,25 +1063,15 @@ symbol_remove (symbolS *symbolP, symbolS **rootPP, symbolS **lastPP) if (symbolP->flags.local_symbol) abort (); - if (symbolP == *rootPP) - { - *rootPP = symbolP->x->next; - } /* if it was the root */ - - if (symbolP == *lastPP) - { - *lastPP = symbolP->x->previous; - } /* if it was the tail */ + if (symbolP->x->previous != NULL) + symbolP->x->previous->x->next = symbolP->x->next; + else + *rootPP = symbolP->x->next; if (symbolP->x->next != NULL) - { - symbolP->x->next->x->previous = symbolP->x->previous; - } /* if not last */ - - if (symbolP->x->previous != NULL) - { - symbolP->x->previous->x->next = symbolP->x->next; - } /* if not first */ + symbolP->x->next->x->previous = symbolP->x->previous; + else + *lastPP = symbolP->x->previous; debug_verify_symchain (*rootPP, *lastPP); } @@ -1109,14 +1091,9 @@ symbol_insert (symbolS *addme, symbolS *target, abort (); if (target->x->previous != NULL) - { - target->x->previous->x->next = addme; - } + target->x->previous->x->next = addme; else - { - know (*rootPP == target); - *rootPP = addme; - } /* if not first */ + *rootPP = addme; addme->x->previous = target->x->previous; target->x->previous = addme; diff --git a/gas/testsuite/gas/aarch64/addsub-carry.d b/gas/testsuite/gas/aarch64/addsub-carry.d new file mode 100644 index 0000000..9b32d51 --- /dev/null +++ b/gas/testsuite/gas/aarch64/addsub-carry.d @@ -0,0 +1,53 @@ +#as: -march=armv8-a +#objdump: -dr + +.*: file format .* + + +Disassembly of section \.text: + +0+ <\.text>: + *[0-9a-f]+: 1a000000 adc w0, w0, w0 + *[0-9a-f]+: 1a00001f adc wzr, w0, w0 + *[0-9a-f]+: 1a0003e0 adc w0, wzr, w0 + *[0-9a-f]+: 1a1f0000 adc w0, w0, wzr + *[0-9a-f]+: 9a000000 adc x0, x0, x0 + *[0-9a-f]+: 9a00001f adc xzr, x0, x0 + *[0-9a-f]+: 9a0003e0 adc x0, xzr, x0 + *[0-9a-f]+: 9a1f0000 adc x0, x0, xzr + *[0-9a-f]+: 3a000000 adcs w0, w0, w0 + *[0-9a-f]+: 3a00001f adcs wzr, w0, w0 + *[0-9a-f]+: 3a0003e0 adcs w0, wzr, w0 + *[0-9a-f]+: 3a1f0000 adcs w0, w0, wzr + *[0-9a-f]+: ba000000 adcs x0, x0, x0 + *[0-9a-f]+: ba00001f adcs xzr, x0, x0 + *[0-9a-f]+: ba0003e0 adcs x0, xzr, x0 + *[0-9a-f]+: ba1f0000 adcs x0, x0, xzr + *[0-9a-f]+: 5a000000 sbc w0, w0, w0 + *[0-9a-f]+: 5a00001f sbc wzr, w0, w0 + *[0-9a-f]+: 5a0003e0 ngc w0, w0 + *[0-9a-f]+: 5a1f0000 sbc w0, w0, wzr + *[0-9a-f]+: da000000 sbc x0, x0, x0 + *[0-9a-f]+: da00001f sbc xzr, x0, x0 + *[0-9a-f]+: da0003e0 ngc x0, x0 + *[0-9a-f]+: da1f0000 sbc x0, x0, xzr + *[0-9a-f]+: 7a000000 sbcs w0, w0, w0 + *[0-9a-f]+: 7a00001f sbcs wzr, w0, w0 + *[0-9a-f]+: 7a0003e0 ngcs w0, w0 + *[0-9a-f]+: 7a1f0000 sbcs w0, w0, wzr + *[0-9a-f]+: fa000000 sbcs x0, x0, x0 + *[0-9a-f]+: fa00001f sbcs xzr, x0, x0 + *[0-9a-f]+: fa0003e0 ngcs x0, x0 + *[0-9a-f]+: fa1f0000 sbcs x0, x0, xzr + *[0-9a-f]+: 5a0003e0 ngc w0, w0 + *[0-9a-f]+: 5a0003ff ngc wzr, w0 + *[0-9a-f]+: 5a1f03e0 ngc w0, wzr + *[0-9a-f]+: da0003e0 ngc x0, x0 + *[0-9a-f]+: da0003ff ngc xzr, x0 + *[0-9a-f]+: da1f03e0 ngc x0, xzr + *[0-9a-f]+: 7a0003e0 ngcs w0, w0 + *[0-9a-f]+: 7a0003ff ngcs wzr, w0 + *[0-9a-f]+: 7a1f03e0 ngcs w0, wzr + *[0-9a-f]+: fa0003e0 ngcs x0, x0 + *[0-9a-f]+: fa0003ff ngcs xzr, x0 + *[0-9a-f]+: fa1f03e0 ngcs x0, xzr diff --git a/gas/testsuite/gas/aarch64/addsub-carry.s b/gas/testsuite/gas/aarch64/addsub-carry.s new file mode 100644 index 0000000..89f2ec1 --- /dev/null +++ b/gas/testsuite/gas/aarch64/addsub-carry.s @@ -0,0 +1,49 @@ + adc w0, w0, w0 + adc wzr, w0, w0 + adc w0, wzr, w0 + adc w0, w0, wzr + adc x0, x0, x0 + adc xzr, x0, x0 + adc x0, xzr, x0 + adc x0, x0, xzr + + adcs w0, w0, w0 + adcs wzr, w0, w0 + adcs w0, wzr, w0 + adcs w0, w0, wzr + adcs x0, x0, x0 + adcs xzr, x0, x0 + adcs x0, xzr, x0 + adcs x0, x0, xzr + + sbc w0, w0, w0 + sbc wzr, w0, w0 + sbc w0, wzr, w0 + sbc w0, w0, wzr + sbc x0, x0, x0 + sbc xzr, x0, x0 + sbc x0, xzr, x0 + sbc x0, x0, xzr + + sbcs w0, w0, w0 + sbcs wzr, w0, w0 + sbcs w0, wzr, w0 + sbcs w0, w0, wzr + sbcs x0, x0, x0 + sbcs xzr, x0, x0 + sbcs x0, xzr, x0 + sbcs x0, x0, xzr + + ngc w0, w0 + ngc wzr, w0 + ngc w0, wzr + ngc x0, x0 + ngc xzr, x0 + ngc x0, xzr + + ngcs w0, w0 + ngcs wzr, w0 + ngcs w0, wzr + ngcs x0, x0 + ngcs xzr, x0 + ngcs x0, xzr diff --git a/gas/testsuite/gas/aarch64/advsimd-copy.d b/gas/testsuite/gas/aarch64/advsimd-copy.d new file mode 100644 index 0000000..59ade08 --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsimd-copy.d @@ -0,0 +1,178 @@ +#as: -march=armv8-a +#objdump: -dr + +.*: file format .* + + +Disassembly of section \.text: + +0+ <\.text>: + *[0-9a-f]+: 0e010400 dup v0\.8b, v0\.b\[0\] + *[0-9a-f]+: 0e01041f dup v31\.8b, v0\.b\[0\] + *[0-9a-f]+: 0e0107e0 dup v0\.8b, v31\.b\[0\] + *[0-9a-f]+: 0e1f0400 dup v0\.8b, v0\.b\[15\] + *[0-9a-f]+: 0e020400 dup v0\.4h, v0\.h\[0\] + *[0-9a-f]+: 0e02041f dup v31\.4h, v0\.h\[0\] + *[0-9a-f]+: 0e0207e0 dup v0\.4h, v31\.h\[0\] + *[0-9a-f]+: 0e1e0400 dup v0\.4h, v0\.h\[7\] + *[0-9a-f]+: 0e040400 dup v0\.2s, v0\.s\[0\] + *[0-9a-f]+: 0e04041f dup v31\.2s, v0\.s\[0\] + *[0-9a-f]+: 0e0407e0 dup v0\.2s, v31\.s\[0\] + *[0-9a-f]+: 0e1c0400 dup v0\.2s, v0\.s\[3\] + *[0-9a-f]+: 4e010400 dup v0\.16b, v0\.b\[0\] + *[0-9a-f]+: 4e01041f dup v31\.16b, v0\.b\[0\] + *[0-9a-f]+: 4e0107e0 dup v0\.16b, v31\.b\[0\] + *[0-9a-f]+: 4e1f0400 dup v0\.16b, v0\.b\[15\] + *[0-9a-f]+: 4e020400 dup v0\.8h, v0\.h\[0\] + *[0-9a-f]+: 4e02041f dup v31\.8h, v0\.h\[0\] + *[0-9a-f]+: 4e0207e0 dup v0\.8h, v31\.h\[0\] + *[0-9a-f]+: 4e1e0400 dup v0\.8h, v0\.h\[7\] + *[0-9a-f]+: 4e040400 dup v0\.4s, v0\.s\[0\] + *[0-9a-f]+: 4e04041f dup v31\.4s, v0\.s\[0\] + *[0-9a-f]+: 4e0407e0 dup v0\.4s, v31\.s\[0\] + *[0-9a-f]+: 4e1c0400 dup v0\.4s, v0\.s\[3\] + *[0-9a-f]+: 4e080400 dup v0\.2d, v0\.d\[0\] + *[0-9a-f]+: 4e08041f dup v31\.2d, v0\.d\[0\] + *[0-9a-f]+: 4e0807e0 dup v0\.2d, v31\.d\[0\] + *[0-9a-f]+: 4e180400 dup v0.2d, v0.d\[1\] + *[0-9a-f]+: 0e010c00 dup v0\.8b, w0 + *[0-9a-f]+: 0e010c1f dup v31\.8b, w0 + *[0-9a-f]+: 0e010fe0 dup v0\.8b, wzr + *[0-9a-f]+: 0e020c00 dup v0\.4h, w0 + *[0-9a-f]+: 0e020c1f dup v31\.4h, w0 + *[0-9a-f]+: 0e020fe0 dup v0\.4h, wzr + *[0-9a-f]+: 0e040c00 dup v0\.2s, w0 + *[0-9a-f]+: 0e040c1f dup v31\.2s, w0 + *[0-9a-f]+: 0e040fe0 dup v0\.2s, wzr + *[0-9a-f]+: 4e010c00 dup v0\.16b, w0 + *[0-9a-f]+: 4e010c1f dup v31\.16b, w0 + *[0-9a-f]+: 4e010fe0 dup v0\.16b, wzr + *[0-9a-f]+: 4e020c00 dup v0\.8h, w0 + *[0-9a-f]+: 4e020c1f dup v31\.8h, w0 + *[0-9a-f]+: 4e020fe0 dup v0\.8h, wzr + *[0-9a-f]+: 4e040c00 dup v0\.4s, w0 + *[0-9a-f]+: 4e040c1f dup v31\.4s, w0 + *[0-9a-f]+: 4e040fe0 dup v0\.4s, wzr + *[0-9a-f]+: 4e080c00 dup v0\.2d, x0 + *[0-9a-f]+: 4e080c1f dup v31\.2d, x0 + *[0-9a-f]+: 4e080fe0 dup v0\.2d, xzr + *[0-9a-f]+: 0e150c00 dup v0\.8b, w0 + *[0-9a-f]+: 4e180c00 dup v0\.2d, x0 + *[0-9a-f]+: 0e012c00 smov w0, v0\.b\[0\] + *[0-9a-f]+: 0e012c1f smov wzr, v0\.b\[0\] + *[0-9a-f]+: 0e012fe0 smov w0, v31\.b\[0\] + *[0-9a-f]+: 0e1f2c00 smov w0, v0\.b\[15\] + *[0-9a-f]+: 0e022c00 smov w0, v0\.h\[0\] + *[0-9a-f]+: 0e022c1f smov wzr, v0\.h\[0\] + *[0-9a-f]+: 0e022fe0 smov w0, v31\.h\[0\] + *[0-9a-f]+: 0e1e2c00 smov w0, v0\.h\[7\] + *[0-9a-f]+: 4e012c00 smov x0, v0\.b\[0\] + *[0-9a-f]+: 4e012c1f smov xzr, v0\.b\[0\] + *[0-9a-f]+: 4e012fe0 smov x0, v31\.b\[0\] + *[0-9a-f]+: 4e1f2c00 smov x0, v0\.b\[15\] + *[0-9a-f]+: 4e022c00 smov x0, v0\.h\[0\] + *[0-9a-f]+: 4e022c1f smov xzr, v0\.h\[0\] + *[0-9a-f]+: 4e022fe0 smov x0, v31\.h\[0\] + *[0-9a-f]+: 4e1e2c00 smov x0, v0\.h\[7\] + *[0-9a-f]+: 4e042c00 smov x0, v0\.s\[0\] + *[0-9a-f]+: 4e042c1f smov xzr, v0\.s\[0\] + *[0-9a-f]+: 4e042fe0 smov x0, v31\.s\[0\] + *[0-9a-f]+: 4e1c2c00 smov x0, v0\.s\[3\] + *[0-9a-f]+: 0e013c00 umov w0, v0\.b\[0\] + *[0-9a-f]+: 0e013c1f umov wzr, v0\.b\[0\] + *[0-9a-f]+: 0e013fe0 umov w0, v31\.b\[0\] + *[0-9a-f]+: 0e1f3c00 umov w0, v0\.b\[15\] + *[0-9a-f]+: 0e023c00 umov w0, v0\.h\[0\] + *[0-9a-f]+: 0e023c1f umov wzr, v0\.h\[0\] + *[0-9a-f]+: 0e023fe0 umov w0, v31\.h\[0\] + *[0-9a-f]+: 0e1e3c00 umov w0, v0\.h\[7\] + *[0-9a-f]+: 0e043c00 mov w0, v0\.s\[0\] + *[0-9a-f]+: 0e043c1f mov wzr, v0\.s\[0\] + *[0-9a-f]+: 0e043fe0 mov w0, v31\.s\[0\] + *[0-9a-f]+: 0e1c3c00 mov w0, v0\.s\[3\] + *[0-9a-f]+: 4e083c00 mov x0, v0\.d\[0\] + *[0-9a-f]+: 4e083c1f mov xzr, v0\.d\[0\] + *[0-9a-f]+: 4e083fe0 mov x0, v31\.d\[0\] + *[0-9a-f]+: 4e183c00 mov x0, v0\.d\[1\] + *[0-9a-f]+: 0e043c00 mov w0, v0\.s\[0\] + *[0-9a-f]+: 0e043c1f mov wzr, v0\.s\[0\] + *[0-9a-f]+: 0e043fe0 mov w0, v31\.s\[0\] + *[0-9a-f]+: 0e1c3c00 mov w0, v0\.s\[3\] + *[0-9a-f]+: 4e083c00 mov x0, v0\.d\[0\] + *[0-9a-f]+: 4e083c1f mov xzr, v0\.d\[0\] + *[0-9a-f]+: 4e083fe0 mov x0, v31\.d\[0\] + *[0-9a-f]+: 4e183c00 mov x0, v0\.d\[1\] + *[0-9a-f]+: 4e011c00 mov v0\.b\[0\], w0 + *[0-9a-f]+: 4e011c1f mov v31\.b\[0\], w0 + *[0-9a-f]+: 4e011fe0 mov v0\.b\[0\], wzr + *[0-9a-f]+: 4e1f1c00 mov v0\.b\[15\], w0 + *[0-9a-f]+: 4e021c00 mov v0\.h\[0\], w0 + *[0-9a-f]+: 4e021c1f mov v31\.h\[0\], w0 + *[0-9a-f]+: 4e021fe0 mov v0\.h\[0\], wzr + *[0-9a-f]+: 4e1e1c00 mov v0\.h\[7\], w0 + *[0-9a-f]+: 4e041c00 mov v0\.s\[0\], w0 + *[0-9a-f]+: 4e041c1f mov v31\.s\[0\], w0 + *[0-9a-f]+: 4e041fe0 mov v0\.s\[0\], wzr + *[0-9a-f]+: 4e1c1c00 mov v0\.s\[3\], w0 + *[0-9a-f]+: 4e081c00 mov v0\.d\[0\], x0 + *[0-9a-f]+: 4e081c1f mov v31\.d\[0\], x0 + *[0-9a-f]+: 4e081fe0 mov v0\.d\[0\], xzr + *[0-9a-f]+: 4e181c00 mov v0\.d\[1\], x0 + *[0-9a-f]+: 4e011c00 mov v0\.b\[0\], w0 + *[0-9a-f]+: 4e011c1f mov v31\.b\[0\], w0 + *[0-9a-f]+: 4e011fe0 mov v0\.b\[0\], wzr + *[0-9a-f]+: 4e1f1c00 mov v0\.b\[15\], w0 + *[0-9a-f]+: 4e021c00 mov v0\.h\[0\], w0 + *[0-9a-f]+: 4e021c1f mov v31\.h\[0\], w0 + *[0-9a-f]+: 4e021fe0 mov v0\.h\[0\], wzr + *[0-9a-f]+: 4e1e1c00 mov v0\.h\[7\], w0 + *[0-9a-f]+: 4e041c00 mov v0\.s\[0\], w0 + *[0-9a-f]+: 4e041c1f mov v31\.s\[0\], w0 + *[0-9a-f]+: 4e041fe0 mov v0\.s\[0\], wzr + *[0-9a-f]+: 4e1c1c00 mov v0\.s\[3\], w0 + *[0-9a-f]+: 4e081c00 mov v0\.d\[0\], x0 + *[0-9a-f]+: 4e081c1f mov v31\.d\[0\], x0 + *[0-9a-f]+: 4e081fe0 mov v0\.d\[0\], xzr + *[0-9a-f]+: 4e181c00 mov v0\.d\[1\], x0 + *[0-9a-f]+: 6e010400 mov v0\.b\[0\], v0\.b\[0\] + *[0-9a-f]+: 6e01041f mov v31\.b\[0\], v0\.b\[0\] + *[0-9a-f]+: 6e0107e0 mov v0\.b\[0\], v31\.b\[0\] + *[0-9a-f]+: 6e1f0400 mov v0\.b\[15\], v0\.b\[0\] + *[0-9a-f]+: 6e017c00 mov v0\.b\[0\], v0\.b\[15\] + *[0-9a-f]+: 6e020400 mov v0\.h\[0\], v0\.h\[0\] + *[0-9a-f]+: 6e02041f mov v31\.h\[0\], v0\.h\[0\] + *[0-9a-f]+: 6e0207e0 mov v0\.h\[0\], v31\.h\[0\] + *[0-9a-f]+: 6e1e0400 mov v0\.h\[7\], v0\.h\[0\] + *[0-9a-f]+: 6e027400 mov v0\.h\[0\], v0\.h\[7\] + *[0-9a-f]+: 6e040400 mov v0\.s\[0\], v0\.s\[0\] + *[0-9a-f]+: 6e04041f mov v31\.s\[0\], v0\.s\[0\] + *[0-9a-f]+: 6e0407e0 mov v0\.s\[0\], v31\.s\[0\] + *[0-9a-f]+: 6e1c0400 mov v0\.s\[3\], v0\.s\[0\] + *[0-9a-f]+: 6e046400 mov v0\.s\[0\], v0\.s\[3\] + *[0-9a-f]+: 6e080400 mov v0\.d\[0\], v0\.d\[0\] + *[0-9a-f]+: 6e08041f mov v31\.d\[0\], v0\.d\[0\] + *[0-9a-f]+: 6e0807e0 mov v0\.d\[0\], v31\.d\[0\] + *[0-9a-f]+: 6e180400 mov v0\.d\[1\], v0\.d\[0\] + *[0-9a-f]+: 6e084400 mov v0\.d\[0\], v0\.d\[1\] + *[0-9a-f]+: 6e022c00 mov v0\.h\[0\], v0\.h\[2\] + *[0-9a-f]+: 6e083c00 mov v0\.d\[0\], v0\.d\[0\] + *[0-9a-f]+: 6e010400 mov v0\.b\[0\], v0\.b\[0\] + *[0-9a-f]+: 6e01041f mov v31\.b\[0\], v0\.b\[0\] + *[0-9a-f]+: 6e0107e0 mov v0\.b\[0\], v31\.b\[0\] + *[0-9a-f]+: 6e1f0400 mov v0\.b\[15\], v0\.b\[0\] + *[0-9a-f]+: 6e017c00 mov v0\.b\[0\], v0\.b\[15\] + *[0-9a-f]+: 6e020400 mov v0\.h\[0\], v0\.h\[0\] + *[0-9a-f]+: 6e02041f mov v31\.h\[0\], v0\.h\[0\] + *[0-9a-f]+: 6e0207e0 mov v0\.h\[0\], v31\.h\[0\] + *[0-9a-f]+: 6e1e0400 mov v0\.h\[7\], v0\.h\[0\] + *[0-9a-f]+: 6e027400 mov v0\.h\[0\], v0\.h\[7\] + *[0-9a-f]+: 6e040400 mov v0\.s\[0\], v0\.s\[0\] + *[0-9a-f]+: 6e04041f mov v31\.s\[0\], v0\.s\[0\] + *[0-9a-f]+: 6e0407e0 mov v0\.s\[0\], v31\.s\[0\] + *[0-9a-f]+: 6e1c0400 mov v0\.s\[3\], v0\.s\[0\] + *[0-9a-f]+: 6e046400 mov v0\.s\[0\], v0\.s\[3\] + *[0-9a-f]+: 6e080400 mov v0\.d\[0\], v0\.d\[0\] + *[0-9a-f]+: 6e08041f mov v31\.d\[0\], v0\.d\[0\] + *[0-9a-f]+: 6e0807e0 mov v0\.d\[0\], v31\.d\[0\] + *[0-9a-f]+: 6e180400 mov v0\.d\[1\], v0\.d\[0\] + *[0-9a-f]+: 6e084400 mov v0\.d\[0\], v0\.d\[1\] diff --git a/gas/testsuite/gas/aarch64/advsimd-copy.s b/gas/testsuite/gas/aarch64/advsimd-copy.s new file mode 100644 index 0000000..d061894 --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsimd-copy.s @@ -0,0 +1,181 @@ + dup v0.8b, v0.b[0] + dup v31.8b, v0.b[0] + dup v0.8b, v31.b[0] + dup v0.8b, v0.b[15] + dup v0.4h, v0.h[0] + dup v31.4h, v0.h[0] + dup v0.4h, v31.h[0] + dup v0.4h, v0.h[7] + dup v0.2s, v0.s[0] + dup v31.2s, v0.s[0] + dup v0.2s, v31.s[0] + dup v0.2s, v0.s[3] + dup v0.16b, v0.b[0] + dup v31.16b, v0.b[0] + dup v0.16b, v31.b[0] + dup v0.16b, v0.b[15] + dup v0.8h, v0.h[0] + dup v31.8h, v0.h[0] + dup v0.8h, v31.h[0] + dup v0.8h, v0.h[7] + dup v0.4s, v0.s[0] + dup v31.4s, v0.s[0] + dup v0.4s, v31.s[0] + dup v0.4s, v0.s[3] + dup v0.2d, v0.d[0] + dup v31.2d, v0.d[0] + dup v0.2d, v31.d[0] + dup v0.2d, v0.d[1] + + dup v0.8b, w0 + dup v31.8b, w0 + dup v0.8b, wzr + dup v0.4h, w0 + dup v31.4h, w0 + dup v0.4h, wzr + dup v0.2s, w0 + dup v31.2s, w0 + dup v0.2s, wzr + dup v0.16b, w0 + dup v31.16b, w0 + dup v0.16b, wzr + dup v0.8h, w0 + dup v31.8h, w0 + dup v0.8h, wzr + dup v0.4s, w0 + dup v31.4s, w0 + dup v0.4s, wzr + dup v0.2d, x0 + dup v31.2d, x0 + dup v0.2d, xzr +// Unspecified bits in imm5 (20..16) are ignored but should be set to zero by +// an assembler. This tests disassembly when the ignored bits are nonzero. + .inst 0x0e150c00 + .inst 0x4e180c00 + + smov w0, v0.b[0] + smov wzr, v0.b[0] + smov w0, v31.b[0] + smov w0, v0.b[15] + smov w0, v0.h[0] + smov wzr, v0.h[0] + smov w0, v31.h[0] + smov w0, v0.h[7] + smov x0, v0.b[0] + smov xzr, v0.b[0] + smov x0, v31.b[0] + smov x0, v0.b[15] + smov x0, v0.h[0] + smov xzr, v0.h[0] + smov x0, v31.h[0] + smov x0, v0.h[7] + smov x0, v0.s[0] + smov xzr, v0.s[0] + smov x0, v31.s[0] + smov x0, v0.s[3] + + umov w0, v0.b[0] + umov wzr, v0.b[0] + umov w0, v31.b[0] + umov w0, v0.b[15] + umov w0, v0.h[0] + umov wzr, v0.h[0] + umov w0, v31.h[0] + umov w0, v0.h[7] + umov w0, v0.s[0] + umov wzr, v0.s[0] + umov w0, v31.s[0] + umov w0, v0.s[3] + umov x0, v0.d[0] + umov xzr, v0.d[0] + umov x0, v31.d[0] + umov x0, v0.d[1] + + mov w0, v0.s[0] + mov wzr, v0.s[0] + mov w0, v31.s[0] + mov w0, v0.s[3] + mov x0, v0.d[0] + mov xzr, v0.d[0] + mov x0, v31.d[0] + mov x0, v0.d[1] + + ins v0.b[0], w0 + ins v31.b[0], w0 + ins v0.b[0], wzr + ins v0.b[15], w0 + ins v0.h[0], w0 + ins v31.h[0], w0 + ins v0.h[0], wzr + ins v0.h[7], w0 + ins v0.s[0], w0 + ins v31.s[0], w0 + ins v0.s[0], wzr + ins v0.s[3], w0 + ins v0.d[0], x0 + ins v31.d[0], x0 + ins v0.d[0], xzr + ins v0.d[1], x0 + + mov v0.b[0], w0 + mov v31.b[0], w0 + mov v0.b[0], wzr + mov v0.b[15], w0 + mov v0.h[0], w0 + mov v31.h[0], w0 + mov v0.h[0], wzr + mov v0.h[7], w0 + mov v0.s[0], w0 + mov v31.s[0], w0 + mov v0.s[0], wzr + mov v0.s[3], w0 + mov v0.d[0], x0 + mov v31.d[0], x0 + mov v0.d[0], xzr + mov v0.d[1], x0 + + ins v0.b[0], v0.b[0] + ins v31.b[0], v0.b[0] + ins v0.b[0], v31.b[0] + ins v0.b[15], v0.b[0] + ins v0.b[0], v0.b[15] + ins v0.h[0], v0.h[0] + ins v31.h[0], v0.h[0] + ins v0.h[0], v31.h[0] + ins v0.h[7], v0.h[0] + ins v0.h[0], v0.h[7] + ins v0.s[0], v0.s[0] + ins v31.s[0], v0.s[0] + ins v0.s[0], v31.s[0] + ins v0.s[3], v0.s[0] + ins v0.s[0], v0.s[3] + ins v0.d[0], v0.d[0] + ins v31.d[0], v0.d[0] + ins v0.d[0], v31.d[0] + ins v0.d[1], v0.d[0] + ins v0.d[0], v0.d[1] +// Unspecified bits in imm4 (14..11) are ignored but should be set to zero by +// an assembler. This tests disassembly when the ignored bits are nonzero. + .inst 0x6e022c00 + .inst 0x6e083c00 + + mov v0.b[0], v0.b[0] + mov v31.b[0], v0.b[0] + mov v0.b[0], v31.b[0] + mov v0.b[15], v0.b[0] + mov v0.b[0], v0.b[15] + mov v0.h[0], v0.h[0] + mov v31.h[0], v0.h[0] + mov v0.h[0], v31.h[0] + mov v0.h[7], v0.h[0] + mov v0.h[0], v0.h[7] + mov v0.s[0], v0.s[0] + mov v31.s[0], v0.s[0] + mov v0.s[0], v31.s[0] + mov v0.s[3], v0.s[0] + mov v0.s[0], v0.s[3] + mov v0.d[0], v0.d[0] + mov v31.d[0], v0.d[0] + mov v0.d[0], v31.d[0] + mov v0.d[1], v0.d[0] + mov v0.d[0], v0.d[1] diff --git a/gas/testsuite/gas/aarch64/advsimd-fp16.d b/gas/testsuite/gas/aarch64/advsimd-fp16.d index 4913036..ffac0d3 100644 --- a/gas/testsuite/gas/aarch64/advsimd-fp16.d +++ b/gas/testsuite/gas/aarch64/advsimd-fp16.d @@ -6,572 +6,583 @@ Disassembly of section \.text: 0+ <.*>: - [0-9a-f]+: 4e63c441 fmaxnm v1.2d, v2.2d, v3.2d - [0-9a-f]+: 0e23c441 fmaxnm v1.2s, v2.2s, v3.2s - [0-9a-f]+: 4e23c441 fmaxnm v1.4s, v2.4s, v3.4s - [0-9a-f]+: 0e400400 fmaxnm v0.4h, v0.4h, v0.4h - [0-9a-f]+: 0e430441 fmaxnm v1.4h, v2.4h, v3.4h - [0-9a-f]+: 4e400400 fmaxnm v0.8h, v0.8h, v0.8h - [0-9a-f]+: 4e430441 fmaxnm v1.8h, v2.8h, v3.8h - [0-9a-f]+: 6e63c441 fmaxnmp v1.2d, v2.2d, v3.2d - [0-9a-f]+: 2e23c441 fmaxnmp v1.2s, v2.2s, v3.2s - [0-9a-f]+: 6e23c441 fmaxnmp v1.4s, v2.4s, v3.4s - [0-9a-f]+: 2e400400 fmaxnmp v0.4h, v0.4h, v0.4h - [0-9a-f]+: 2e430441 fmaxnmp v1.4h, v2.4h, v3.4h - [0-9a-f]+: 6e400400 fmaxnmp v0.8h, v0.8h, v0.8h - [0-9a-f]+: 6e430441 fmaxnmp v1.8h, v2.8h, v3.8h - [0-9a-f]+: 4ee3c441 fminnm v1.2d, v2.2d, v3.2d - [0-9a-f]+: 0ea3c441 fminnm v1.2s, v2.2s, v3.2s - [0-9a-f]+: 4ea3c441 fminnm v1.4s, v2.4s, v3.4s - [0-9a-f]+: 0ec00400 fminnm v0.4h, v0.4h, v0.4h - [0-9a-f]+: 0ec30441 fminnm v1.4h, v2.4h, v3.4h - [0-9a-f]+: 4ec00400 fminnm v0.8h, v0.8h, v0.8h - [0-9a-f]+: 4ec30441 fminnm v1.8h, v2.8h, v3.8h - [0-9a-f]+: 6ee3c441 fminnmp v1.2d, v2.2d, v3.2d - [0-9a-f]+: 2ea3c441 fminnmp v1.2s, v2.2s, v3.2s - [0-9a-f]+: 6ea3c441 fminnmp v1.4s, v2.4s, v3.4s - [0-9a-f]+: 2ec00400 fminnmp v0.4h, v0.4h, v0.4h - [0-9a-f]+: 2ec30441 fminnmp v1.4h, v2.4h, v3.4h - [0-9a-f]+: 6ec00400 fminnmp v0.8h, v0.8h, v0.8h - [0-9a-f]+: 6ec30441 fminnmp v1.8h, v2.8h, v3.8h - [0-9a-f]+: 4e63cc41 fmla v1.2d, v2.2d, v3.2d - [0-9a-f]+: 0e23cc41 fmla v1.2s, v2.2s, v3.2s - [0-9a-f]+: 4e23cc41 fmla v1.4s, v2.4s, v3.4s - [0-9a-f]+: 0e400c00 fmla v0.4h, v0.4h, v0.4h - [0-9a-f]+: 0e430c41 fmla v1.4h, v2.4h, v3.4h - [0-9a-f]+: 4e400c00 fmla v0.8h, v0.8h, v0.8h - [0-9a-f]+: 4e430c41 fmla v1.8h, v2.8h, v3.8h - [0-9a-f]+: 4ee3cc41 fmls v1.2d, v2.2d, v3.2d - [0-9a-f]+: 0ea3cc41 fmls v1.2s, v2.2s, v3.2s - [0-9a-f]+: 4ea3cc41 fmls v1.4s, v2.4s, v3.4s - [0-9a-f]+: 0ec00c00 fmls v0.4h, v0.4h, v0.4h - [0-9a-f]+: 0ec30c41 fmls v1.4h, v2.4h, v3.4h - [0-9a-f]+: 4ec00c00 fmls v0.8h, v0.8h, v0.8h - [0-9a-f]+: 4ec30c41 fmls v1.8h, v2.8h, v3.8h - [0-9a-f]+: 4e63d441 fadd v1.2d, v2.2d, v3.2d - [0-9a-f]+: 0e23d441 fadd v1.2s, v2.2s, v3.2s - [0-9a-f]+: 4e23d441 fadd v1.4s, v2.4s, v3.4s - [0-9a-f]+: 0e401400 fadd v0.4h, v0.4h, v0.4h - [0-9a-f]+: 0e431441 fadd v1.4h, v2.4h, v3.4h - [0-9a-f]+: 4e401400 fadd v0.8h, v0.8h, v0.8h - [0-9a-f]+: 4e431441 fadd v1.8h, v2.8h, v3.8h - [0-9a-f]+: 6e63d441 faddp v1.2d, v2.2d, v3.2d - [0-9a-f]+: 2e23d441 faddp v1.2s, v2.2s, v3.2s - [0-9a-f]+: 6e23d441 faddp v1.4s, v2.4s, v3.4s - [0-9a-f]+: 2e401400 faddp v0.4h, v0.4h, v0.4h - [0-9a-f]+: 2e431441 faddp v1.4h, v2.4h, v3.4h - [0-9a-f]+: 6e401400 faddp v0.8h, v0.8h, v0.8h - [0-9a-f]+: 6e431441 faddp v1.8h, v2.8h, v3.8h - [0-9a-f]+: 4ee3d441 fsub v1.2d, v2.2d, v3.2d - [0-9a-f]+: 0ea3d441 fsub v1.2s, v2.2s, v3.2s - [0-9a-f]+: 4ea3d441 fsub v1.4s, v2.4s, v3.4s - [0-9a-f]+: 0ec01400 fsub v0.4h, v0.4h, v0.4h - [0-9a-f]+: 0ec31441 fsub v1.4h, v2.4h, v3.4h - [0-9a-f]+: 4ec01400 fsub v0.8h, v0.8h, v0.8h - [0-9a-f]+: 4ec31441 fsub v1.8h, v2.8h, v3.8h - [0-9a-f]+: 4e63dc41 fmulx v1.2d, v2.2d, v3.2d - [0-9a-f]+: 0e23dc41 fmulx v1.2s, v2.2s, v3.2s - [0-9a-f]+: 4e23dc41 fmulx v1.4s, v2.4s, v3.4s - [0-9a-f]+: 0e401c00 fmulx v0.4h, v0.4h, v0.4h - [0-9a-f]+: 0e431c41 fmulx v1.4h, v2.4h, v3.4h - [0-9a-f]+: 4e401c00 fmulx v0.8h, v0.8h, v0.8h - [0-9a-f]+: 4e431c41 fmulx v1.8h, v2.8h, v3.8h - [0-9a-f]+: 6e63dc41 fmul v1.2d, v2.2d, v3.2d - [0-9a-f]+: 2e23dc41 fmul v1.2s, v2.2s, v3.2s - [0-9a-f]+: 6e23dc41 fmul v1.4s, v2.4s, v3.4s - [0-9a-f]+: 2e401c00 fmul v0.4h, v0.4h, v0.4h - [0-9a-f]+: 2e431c41 fmul v1.4h, v2.4h, v3.4h - [0-9a-f]+: 6e401c00 fmul v0.8h, v0.8h, v0.8h - [0-9a-f]+: 6e431c41 fmul v1.8h, v2.8h, v3.8h - [0-9a-f]+: 4e63e441 fcmeq v1.2d, v2.2d, v3.2d - [0-9a-f]+: 0e23e441 fcmeq v1.2s, v2.2s, v3.2s - [0-9a-f]+: 4e23e441 fcmeq v1.4s, v2.4s, v3.4s - [0-9a-f]+: 0e402400 fcmeq v0.4h, v0.4h, v0.4h - [0-9a-f]+: 0e432441 fcmeq v1.4h, v2.4h, v3.4h - [0-9a-f]+: 4e402400 fcmeq v0.8h, v0.8h, v0.8h - [0-9a-f]+: 4e432441 fcmeq v1.8h, v2.8h, v3.8h - [0-9a-f]+: 6e63e441 fcmge v1.2d, v2.2d, v3.2d - [0-9a-f]+: 2e23e441 fcmge v1.2s, v2.2s, v3.2s - [0-9a-f]+: 6e23e441 fcmge v1.4s, v2.4s, v3.4s - [0-9a-f]+: 2e402400 fcmge v0.4h, v0.4h, v0.4h - [0-9a-f]+: 2e432441 fcmge v1.4h, v2.4h, v3.4h - [0-9a-f]+: 6e402400 fcmge v0.8h, v0.8h, v0.8h - [0-9a-f]+: 6e432441 fcmge v1.8h, v2.8h, v3.8h - [0-9a-f]+: 6ee3e441 fcmgt v1.2d, v2.2d, v3.2d - [0-9a-f]+: 2ea3e441 fcmgt v1.2s, v2.2s, v3.2s - [0-9a-f]+: 6ea3e441 fcmgt v1.4s, v2.4s, v3.4s - [0-9a-f]+: 2ec02400 fcmgt v0.4h, v0.4h, v0.4h - [0-9a-f]+: 2ec32441 fcmgt v1.4h, v2.4h, v3.4h - [0-9a-f]+: 6ec02400 fcmgt v0.8h, v0.8h, v0.8h - [0-9a-f]+: 6ec32441 fcmgt v1.8h, v2.8h, v3.8h - [0-9a-f]+: 6e63ec41 facge v1.2d, v2.2d, v3.2d - [0-9a-f]+: 2e23ec41 facge v1.2s, v2.2s, v3.2s - [0-9a-f]+: 6e23ec41 facge v1.4s, v2.4s, v3.4s - [0-9a-f]+: 2e402c00 facge v0.4h, v0.4h, v0.4h - [0-9a-f]+: 2e432c41 facge v1.4h, v2.4h, v3.4h - [0-9a-f]+: 6e402c00 facge v0.8h, v0.8h, v0.8h - [0-9a-f]+: 6e432c41 facge v1.8h, v2.8h, v3.8h - [0-9a-f]+: 6ee3ec41 facgt v1.2d, v2.2d, v3.2d - [0-9a-f]+: 2ea3ec41 facgt v1.2s, v2.2s, v3.2s - [0-9a-f]+: 6ea3ec41 facgt v1.4s, v2.4s, v3.4s - [0-9a-f]+: 2ec02c00 facgt v0.4h, v0.4h, v0.4h - [0-9a-f]+: 2ec32c41 facgt v1.4h, v2.4h, v3.4h - [0-9a-f]+: 6ec02c00 facgt v0.8h, v0.8h, v0.8h - [0-9a-f]+: 6ec32c41 facgt v1.8h, v2.8h, v3.8h - [0-9a-f]+: 4e63f441 fmax v1.2d, v2.2d, v3.2d - [0-9a-f]+: 0e23f441 fmax v1.2s, v2.2s, v3.2s - [0-9a-f]+: 4e23f441 fmax v1.4s, v2.4s, v3.4s - [0-9a-f]+: 0e403400 fmax v0.4h, v0.4h, v0.4h - [0-9a-f]+: 0e433441 fmax v1.4h, v2.4h, v3.4h - [0-9a-f]+: 4e403400 fmax v0.8h, v0.8h, v0.8h - [0-9a-f]+: 4e433441 fmax v1.8h, v2.8h, v3.8h - [0-9a-f]+: 6e63f441 fmaxp v1.2d, v2.2d, v3.2d - [0-9a-f]+: 2e23f441 fmaxp v1.2s, v2.2s, v3.2s - [0-9a-f]+: 6e23f441 fmaxp v1.4s, v2.4s, v3.4s - [0-9a-f]+: 2e403400 fmaxp v0.4h, v0.4h, v0.4h - [0-9a-f]+: 2e433441 fmaxp v1.4h, v2.4h, v3.4h - [0-9a-f]+: 6e403400 fmaxp v0.8h, v0.8h, v0.8h - [0-9a-f]+: 6e433441 fmaxp v1.8h, v2.8h, v3.8h - [0-9a-f]+: 4ee3f441 fmin v1.2d, v2.2d, v3.2d - [0-9a-f]+: 0ea3f441 fmin v1.2s, v2.2s, v3.2s - [0-9a-f]+: 4ea3f441 fmin v1.4s, v2.4s, v3.4s - [0-9a-f]+: 0ec03400 fmin v0.4h, v0.4h, v0.4h - [0-9a-f]+: 0ec33441 fmin v1.4h, v2.4h, v3.4h - [0-9a-f]+: 4ec03400 fmin v0.8h, v0.8h, v0.8h - [0-9a-f]+: 4ec33441 fmin v1.8h, v2.8h, v3.8h - [0-9a-f]+: 6ee3f441 fminp v1.2d, v2.2d, v3.2d - [0-9a-f]+: 2ea3f441 fminp v1.2s, v2.2s, v3.2s - [0-9a-f]+: 6ea3f441 fminp v1.4s, v2.4s, v3.4s - [0-9a-f]+: 2ec03400 fminp v0.4h, v0.4h, v0.4h - [0-9a-f]+: 2ec33441 fminp v1.4h, v2.4h, v3.4h - [0-9a-f]+: 6ec03400 fminp v0.8h, v0.8h, v0.8h - [0-9a-f]+: 6ec33441 fminp v1.8h, v2.8h, v3.8h - [0-9a-f]+: 4e63fc41 frecps v1.2d, v2.2d, v3.2d - [0-9a-f]+: 0e23fc41 frecps v1.2s, v2.2s, v3.2s - [0-9a-f]+: 4e23fc41 frecps v1.4s, v2.4s, v3.4s - [0-9a-f]+: 0e403c00 frecps v0.4h, v0.4h, v0.4h - [0-9a-f]+: 0e433c41 frecps v1.4h, v2.4h, v3.4h - [0-9a-f]+: 4e403c00 frecps v0.8h, v0.8h, v0.8h - [0-9a-f]+: 4e433c41 frecps v1.8h, v2.8h, v3.8h - [0-9a-f]+: 6e63fc41 fdiv v1.2d, v2.2d, v3.2d - [0-9a-f]+: 2e23fc41 fdiv v1.2s, v2.2s, v3.2s - [0-9a-f]+: 6e23fc41 fdiv v1.4s, v2.4s, v3.4s - [0-9a-f]+: 2e403c00 fdiv v0.4h, v0.4h, v0.4h - [0-9a-f]+: 2e433c41 fdiv v1.4h, v2.4h, v3.4h - [0-9a-f]+: 6e403c00 fdiv v0.8h, v0.8h, v0.8h - [0-9a-f]+: 6e433c41 fdiv v1.8h, v2.8h, v3.8h - [0-9a-f]+: 4ee3fc41 frsqrts v1.2d, v2.2d, v3.2d - [0-9a-f]+: 0ea3fc41 frsqrts v1.2s, v2.2s, v3.2s - [0-9a-f]+: 4ea3fc41 frsqrts v1.4s, v2.4s, v3.4s - [0-9a-f]+: 0ec03c00 frsqrts v0.4h, v0.4h, v0.4h - [0-9a-f]+: 0ec33c41 frsqrts v1.4h, v2.4h, v3.4h - [0-9a-f]+: 4ec03c00 frsqrts v0.8h, v0.8h, v0.8h - [0-9a-f]+: 4ec33c41 frsqrts v1.8h, v2.8h, v3.8h - [0-9a-f]+: 7ee2d420 fabd d0, d1, d2 - [0-9a-f]+: 7ea2d420 fabd s0, s1, s2 - [0-9a-f]+: 7ec21420 fabd h0, h1, h2 - [0-9a-f]+: 7ec01400 fabd h0, h0, h0 - [0-9a-f]+: 5e62dc20 fmulx d0, d1, d2 - [0-9a-f]+: 5e22dc20 fmulx s0, s1, s2 - [0-9a-f]+: 5e421c20 fmulx h0, h1, h2 - [0-9a-f]+: 5e401c00 fmulx h0, h0, h0 - [0-9a-f]+: 5e62e420 fcmeq d0, d1, d2 - [0-9a-f]+: 5e22e420 fcmeq s0, s1, s2 - [0-9a-f]+: 5e422420 fcmeq h0, h1, h2 - [0-9a-f]+: 5e402400 fcmeq h0, h0, h0 - [0-9a-f]+: 7ee2e420 fcmgt d0, d1, d2 - [0-9a-f]+: 7ea2e420 fcmgt s0, s1, s2 - [0-9a-f]+: 7ec22420 fcmgt h0, h1, h2 - [0-9a-f]+: 7ec02400 fcmgt h0, h0, h0 - [0-9a-f]+: 7e62e420 fcmge d0, d1, d2 - [0-9a-f]+: 7e22e420 fcmge s0, s1, s2 - [0-9a-f]+: 7e422420 fcmge h0, h1, h2 - [0-9a-f]+: 7e402400 fcmge h0, h0, h0 - [0-9a-f]+: 7e62ec20 facge d0, d1, d2 - [0-9a-f]+: 7e22ec20 facge s0, s1, s2 - [0-9a-f]+: 7e422c20 facge h0, h1, h2 - [0-9a-f]+: 7e402c00 facge h0, h0, h0 - [0-9a-f]+: 7ee2ec20 facgt d0, d1, d2 - [0-9a-f]+: 7ea2ec20 facgt s0, s1, s2 - [0-9a-f]+: 7ec22c20 facgt h0, h1, h2 - [0-9a-f]+: 7ec02c00 facgt h0, h0, h0 - [0-9a-f]+: 5e62fc20 frecps d0, d1, d2 - [0-9a-f]+: 5e22fc20 frecps s0, s1, s2 - [0-9a-f]+: 5e423c20 frecps h0, h1, h2 - [0-9a-f]+: 5e403c00 frecps h0, h0, h0 - [0-9a-f]+: 5ee2fc20 frsqrts d0, d1, d2 - [0-9a-f]+: 5ea2fc20 frsqrts s0, s1, s2 - [0-9a-f]+: 5ec23c20 frsqrts h0, h1, h2 - [0-9a-f]+: 5ec03c00 frsqrts h0, h0, h0 - [0-9a-f]+: 4ee0c820 fcmgt v0.2d, v1.2d, #0.0 - [0-9a-f]+: 0ea0c820 fcmgt v0.2s, v1.2s, #0.0 - [0-9a-f]+: 4ea0c820 fcmgt v0.4s, v1.4s, #0.0 - [0-9a-f]+: 0ef8c820 fcmgt v0.4h, v1.4h, #0.0 - [0-9a-f]+: 4ef8c820 fcmgt v0.8h, v1.8h, #0.0 - [0-9a-f]+: 6ee0c820 fcmge v0.2d, v1.2d, #0.0 - [0-9a-f]+: 2ea0c820 fcmge v0.2s, v1.2s, #0.0 - [0-9a-f]+: 6ea0c820 fcmge v0.4s, v1.4s, #0.0 - [0-9a-f]+: 2ef8c820 fcmge v0.4h, v1.4h, #0.0 - [0-9a-f]+: 6ef8c820 fcmge v0.8h, v1.8h, #0.0 - [0-9a-f]+: 4ee0d820 fcmeq v0.2d, v1.2d, #0.0 - [0-9a-f]+: 0ea0d820 fcmeq v0.2s, v1.2s, #0.0 - [0-9a-f]+: 4ea0d820 fcmeq v0.4s, v1.4s, #0.0 - [0-9a-f]+: 0ef8d820 fcmeq v0.4h, v1.4h, #0.0 - [0-9a-f]+: 4ef8d820 fcmeq v0.8h, v1.8h, #0.0 - [0-9a-f]+: 6ee0d820 fcmle v0.2d, v1.2d, #0.0 - [0-9a-f]+: 2ea0d820 fcmle v0.2s, v1.2s, #0.0 - [0-9a-f]+: 6ea0d820 fcmle v0.4s, v1.4s, #0.0 - [0-9a-f]+: 2ef8d820 fcmle v0.4h, v1.4h, #0.0 - [0-9a-f]+: 6ef8d820 fcmle v0.8h, v1.8h, #0.0 - [0-9a-f]+: 4ee0e820 fcmlt v0.2d, v1.2d, #0.0 - [0-9a-f]+: 0ea0e820 fcmlt v0.2s, v1.2s, #0.0 - [0-9a-f]+: 4ea0e820 fcmlt v0.4s, v1.4s, #0.0 - [0-9a-f]+: 0ef8e820 fcmlt v0.4h, v1.4h, #0.0 - [0-9a-f]+: 4ef8e820 fcmlt v0.8h, v1.8h, #0.0 - [0-9a-f]+: 4ee0f820 fabs v0.2d, v1.2d - [0-9a-f]+: 0ea0f820 fabs v0.2s, v1.2s - [0-9a-f]+: 4ea0f820 fabs v0.4s, v1.4s - [0-9a-f]+: 0ef8f820 fabs v0.4h, v1.4h - [0-9a-f]+: 4ef8f820 fabs v0.8h, v1.8h - [0-9a-f]+: 6ee0f820 fneg v0.2d, v1.2d - [0-9a-f]+: 2ea0f820 fneg v0.2s, v1.2s - [0-9a-f]+: 6ea0f820 fneg v0.4s, v1.4s - [0-9a-f]+: 2ef8f820 fneg v0.4h, v1.4h - [0-9a-f]+: 6ef8f820 fneg v0.8h, v1.8h - [0-9a-f]+: 4e618820 frintn v0.2d, v1.2d - [0-9a-f]+: 0e218820 frintn v0.2s, v1.2s - [0-9a-f]+: 4e218820 frintn v0.4s, v1.4s - [0-9a-f]+: 0e798820 frintn v0.4h, v1.4h - [0-9a-f]+: 4e798820 frintn v0.8h, v1.8h - [0-9a-f]+: 6e618820 frinta v0.2d, v1.2d - [0-9a-f]+: 2e218820 frinta v0.2s, v1.2s - [0-9a-f]+: 6e218820 frinta v0.4s, v1.4s - [0-9a-f]+: 2e798820 frinta v0.4h, v1.4h - [0-9a-f]+: 6e798820 frinta v0.8h, v1.8h - [0-9a-f]+: 4ee18820 frintp v0.2d, v1.2d - [0-9a-f]+: 0ea18820 frintp v0.2s, v1.2s - [0-9a-f]+: 4ea18820 frintp v0.4s, v1.4s - [0-9a-f]+: 0ef98820 frintp v0.4h, v1.4h - [0-9a-f]+: 4ef98820 frintp v0.8h, v1.8h - [0-9a-f]+: 4e619820 frintm v0.2d, v1.2d - [0-9a-f]+: 0e219820 frintm v0.2s, v1.2s - [0-9a-f]+: 4e219820 frintm v0.4s, v1.4s - [0-9a-f]+: 0e799820 frintm v0.4h, v1.4h - [0-9a-f]+: 4e799820 frintm v0.8h, v1.8h - [0-9a-f]+: 6e619820 frintx v0.2d, v1.2d - [0-9a-f]+: 2e219820 frintx v0.2s, v1.2s - [0-9a-f]+: 6e219820 frintx v0.4s, v1.4s - [0-9a-f]+: 2e799820 frintx v0.4h, v1.4h - [0-9a-f]+: 6e799820 frintx v0.8h, v1.8h - [0-9a-f]+: 4ee19820 frintz v0.2d, v1.2d - [0-9a-f]+: 0ea19820 frintz v0.2s, v1.2s - [0-9a-f]+: 4ea19820 frintz v0.4s, v1.4s - [0-9a-f]+: 0ef99820 frintz v0.4h, v1.4h - [0-9a-f]+: 4ef99820 frintz v0.8h, v1.8h - [0-9a-f]+: 6ee19820 frinti v0.2d, v1.2d - [0-9a-f]+: 2ea19820 frinti v0.2s, v1.2s - [0-9a-f]+: 6ea19820 frinti v0.4s, v1.4s - [0-9a-f]+: 2ef99820 frinti v0.4h, v1.4h - [0-9a-f]+: 6ef99820 frinti v0.8h, v1.8h - [0-9a-f]+: 4e61a820 fcvtns v0.2d, v1.2d - [0-9a-f]+: 0e21a820 fcvtns v0.2s, v1.2s - [0-9a-f]+: 4e21a820 fcvtns v0.4s, v1.4s - [0-9a-f]+: 0e79a820 fcvtns v0.4h, v1.4h - [0-9a-f]+: 4e79a820 fcvtns v0.8h, v1.8h - [0-9a-f]+: 6e61a820 fcvtnu v0.2d, v1.2d - [0-9a-f]+: 2e21a820 fcvtnu v0.2s, v1.2s - [0-9a-f]+: 6e21a820 fcvtnu v0.4s, v1.4s - [0-9a-f]+: 2e79a820 fcvtnu v0.4h, v1.4h - [0-9a-f]+: 6e79a820 fcvtnu v0.8h, v1.8h - [0-9a-f]+: 4ee1a820 fcvtps v0.2d, v1.2d - [0-9a-f]+: 0ea1a820 fcvtps v0.2s, v1.2s - [0-9a-f]+: 4ea1a820 fcvtps v0.4s, v1.4s - [0-9a-f]+: 0ef9a820 fcvtps v0.4h, v1.4h - [0-9a-f]+: 4ef9a820 fcvtps v0.8h, v1.8h - [0-9a-f]+: 6ee1a820 fcvtpu v0.2d, v1.2d - [0-9a-f]+: 2ea1a820 fcvtpu v0.2s, v1.2s - [0-9a-f]+: 6ea1a820 fcvtpu v0.4s, v1.4s - [0-9a-f]+: 2ef9a820 fcvtpu v0.4h, v1.4h - [0-9a-f]+: 6ef9a820 fcvtpu v0.8h, v1.8h - [0-9a-f]+: 4e61b820 fcvtms v0.2d, v1.2d - [0-9a-f]+: 0e21b820 fcvtms v0.2s, v1.2s - [0-9a-f]+: 4e21b820 fcvtms v0.4s, v1.4s - [0-9a-f]+: 0e79b820 fcvtms v0.4h, v1.4h - [0-9a-f]+: 4e79b820 fcvtms v0.8h, v1.8h - [0-9a-f]+: 6e61b820 fcvtmu v0.2d, v1.2d - [0-9a-f]+: 2e21b820 fcvtmu v0.2s, v1.2s - [0-9a-f]+: 6e21b820 fcvtmu v0.4s, v1.4s - [0-9a-f]+: 2e79b820 fcvtmu v0.4h, v1.4h - [0-9a-f]+: 6e79b820 fcvtmu v0.8h, v1.8h - [0-9a-f]+: 4ee1b820 fcvtzs v0.2d, v1.2d - [0-9a-f]+: 0ea1b820 fcvtzs v0.2s, v1.2s - [0-9a-f]+: 4ea1b820 fcvtzs v0.4s, v1.4s - [0-9a-f]+: 0ef9b820 fcvtzs v0.4h, v1.4h - [0-9a-f]+: 4ef9b820 fcvtzs v0.8h, v1.8h - [0-9a-f]+: 6ee1b820 fcvtzu v0.2d, v1.2d - [0-9a-f]+: 2ea1b820 fcvtzu v0.2s, v1.2s - [0-9a-f]+: 6ea1b820 fcvtzu v0.4s, v1.4s - [0-9a-f]+: 2ef9b820 fcvtzu v0.4h, v1.4h - [0-9a-f]+: 6ef9b820 fcvtzu v0.8h, v1.8h - [0-9a-f]+: 4e61c820 fcvtas v0.2d, v1.2d - [0-9a-f]+: 0e21c820 fcvtas v0.2s, v1.2s - [0-9a-f]+: 4e21c820 fcvtas v0.4s, v1.4s - [0-9a-f]+: 0e79c820 fcvtas v0.4h, v1.4h - [0-9a-f]+: 4e79c820 fcvtas v0.8h, v1.8h - [0-9a-f]+: 6e61c820 fcvtau v0.2d, v1.2d - [0-9a-f]+: 2e21c820 fcvtau v0.2s, v1.2s - [0-9a-f]+: 6e21c820 fcvtau v0.4s, v1.4s - [0-9a-f]+: 2e79c820 fcvtau v0.4h, v1.4h - [0-9a-f]+: 6e79c820 fcvtau v0.8h, v1.8h - [0-9a-f]+: 4e61d820 scvtf v0.2d, v1.2d - [0-9a-f]+: 0e21d820 scvtf v0.2s, v1.2s - [0-9a-f]+: 4e21d820 scvtf v0.4s, v1.4s - [0-9a-f]+: 0e79d820 scvtf v0.4h, v1.4h - [0-9a-f]+: 4e79d820 scvtf v0.8h, v1.8h - [0-9a-f]+: 6e61d820 ucvtf v0.2d, v1.2d - [0-9a-f]+: 2e21d820 ucvtf v0.2s, v1.2s - [0-9a-f]+: 6e21d820 ucvtf v0.4s, v1.4s - [0-9a-f]+: 2e79d820 ucvtf v0.4h, v1.4h - [0-9a-f]+: 6e79d820 ucvtf v0.8h, v1.8h - [0-9a-f]+: 4ee1d820 frecpe v0.2d, v1.2d - [0-9a-f]+: 0ea1d820 frecpe v0.2s, v1.2s - [0-9a-f]+: 4ea1d820 frecpe v0.4s, v1.4s - [0-9a-f]+: 0ef9d820 frecpe v0.4h, v1.4h - [0-9a-f]+: 4ef9d820 frecpe v0.8h, v1.8h - [0-9a-f]+: 6ee1d820 frsqrte v0.2d, v1.2d - [0-9a-f]+: 2ea1d820 frsqrte v0.2s, v1.2s - [0-9a-f]+: 6ea1d820 frsqrte v0.4s, v1.4s - [0-9a-f]+: 2ef9d820 frsqrte v0.4h, v1.4h - [0-9a-f]+: 6ef9d820 frsqrte v0.8h, v1.8h - [0-9a-f]+: 6ee1f820 fsqrt v0.2d, v1.2d - [0-9a-f]+: 2ea1f820 fsqrt v0.2s, v1.2s - [0-9a-f]+: 6ea1f820 fsqrt v0.4s, v1.4s - [0-9a-f]+: 2ef9f820 fsqrt v0.4h, v1.4h - [0-9a-f]+: 6ef9f820 fsqrt v0.8h, v1.8h - [0-9a-f]+: 5ee0c820 fcmgt d0, d1, #0.0 - [0-9a-f]+: 5ea0c820 fcmgt s0, s1, #0.0 - [0-9a-f]+: 5ef8c820 fcmgt h0, h1, #0.0 - [0-9a-f]+: 5ef8c800 fcmgt h0, h0, #0.0 - [0-9a-f]+: 7ee0c820 fcmge d0, d1, #0.0 - [0-9a-f]+: 7ea0c820 fcmge s0, s1, #0.0 - [0-9a-f]+: 7ef8c820 fcmge h0, h1, #0.0 - [0-9a-f]+: 7ef8c800 fcmge h0, h0, #0.0 - [0-9a-f]+: 5ee0d820 fcmeq d0, d1, #0.0 - [0-9a-f]+: 5ea0d820 fcmeq s0, s1, #0.0 - [0-9a-f]+: 5ef8d820 fcmeq h0, h1, #0.0 - [0-9a-f]+: 5ef8d800 fcmeq h0, h0, #0.0 - [0-9a-f]+: 7ee0d820 fcmle d0, d1, #0.0 - [0-9a-f]+: 7ea0d820 fcmle s0, s1, #0.0 - [0-9a-f]+: 7ef8d820 fcmle h0, h1, #0.0 - [0-9a-f]+: 7ef8d800 fcmle h0, h0, #0.0 - [0-9a-f]+: 5ee0e820 fcmlt d0, d1, #0.0 - [0-9a-f]+: 5ea0e820 fcmlt s0, s1, #0.0 - [0-9a-f]+: 5ef8e820 fcmlt h0, h1, #0.0 - [0-9a-f]+: 5ef8e800 fcmlt h0, h0, #0.0 - [0-9a-f]+: 5e61a820 fcvtns d0, d1 - [0-9a-f]+: 5e21a820 fcvtns s0, s1 - [0-9a-f]+: 5e79a820 fcvtns h0, h1 - [0-9a-f]+: 5e79a800 fcvtns h0, h0 - [0-9a-f]+: 7e61a820 fcvtnu d0, d1 - [0-9a-f]+: 7e21a820 fcvtnu s0, s1 - [0-9a-f]+: 7e79a820 fcvtnu h0, h1 - [0-9a-f]+: 7e79a800 fcvtnu h0, h0 - [0-9a-f]+: 5ee1a820 fcvtps d0, d1 - [0-9a-f]+: 5ea1a820 fcvtps s0, s1 - [0-9a-f]+: 5ef9a820 fcvtps h0, h1 - [0-9a-f]+: 5ef9a800 fcvtps h0, h0 - [0-9a-f]+: 7ee1a820 fcvtpu d0, d1 - [0-9a-f]+: 7ea1a820 fcvtpu s0, s1 - [0-9a-f]+: 7ef9a820 fcvtpu h0, h1 - [0-9a-f]+: 7ef9a800 fcvtpu h0, h0 - [0-9a-f]+: 5e61b820 fcvtms d0, d1 - [0-9a-f]+: 5e21b820 fcvtms s0, s1 - [0-9a-f]+: 5e79b820 fcvtms h0, h1 - [0-9a-f]+: 5e79b800 fcvtms h0, h0 - [0-9a-f]+: 7e61b820 fcvtmu d0, d1 - [0-9a-f]+: 7e21b820 fcvtmu s0, s1 - [0-9a-f]+: 7e79b820 fcvtmu h0, h1 - [0-9a-f]+: 7e79b800 fcvtmu h0, h0 - [0-9a-f]+: 5ee1b820 fcvtzs d0, d1 - [0-9a-f]+: 5ea1b820 fcvtzs s0, s1 - [0-9a-f]+: 5ef9b820 fcvtzs h0, h1 - [0-9a-f]+: 5ef9b800 fcvtzs h0, h0 - [0-9a-f]+: 7ee1b820 fcvtzu d0, d1 - [0-9a-f]+: 7ea1b820 fcvtzu s0, s1 - [0-9a-f]+: 7ef9b820 fcvtzu h0, h1 - [0-9a-f]+: 7ef9b800 fcvtzu h0, h0 - [0-9a-f]+: 5e61c820 fcvtas d0, d1 - [0-9a-f]+: 5e21c820 fcvtas s0, s1 - [0-9a-f]+: 5e79c820 fcvtas h0, h1 - [0-9a-f]+: 5e79c800 fcvtas h0, h0 - [0-9a-f]+: 7e61c820 fcvtau d0, d1 - [0-9a-f]+: 7e21c820 fcvtau s0, s1 - [0-9a-f]+: 7e79c820 fcvtau h0, h1 - [0-9a-f]+: 7e79c800 fcvtau h0, h0 - [0-9a-f]+: 5e61d820 scvtf d0, d1 - [0-9a-f]+: 5e21d820 scvtf s0, s1 - [0-9a-f]+: 5e79d820 scvtf h0, h1 - [0-9a-f]+: 5e79d800 scvtf h0, h0 - [0-9a-f]+: 7e61d820 ucvtf d0, d1 - [0-9a-f]+: 7e21d820 ucvtf s0, s1 - [0-9a-f]+: 7e79d820 ucvtf h0, h1 - [0-9a-f]+: 7e79d800 ucvtf h0, h0 - [0-9a-f]+: 5ee1d820 frecpe d0, d1 - [0-9a-f]+: 5ea1d820 frecpe s0, s1 - [0-9a-f]+: 5ef9d820 frecpe h0, h1 - [0-9a-f]+: 5ef9d800 frecpe h0, h0 - [0-9a-f]+: 7ee1d820 frsqrte d0, d1 - [0-9a-f]+: 7ea1d820 frsqrte s0, s1 - [0-9a-f]+: 7ef9d820 frsqrte h0, h1 - [0-9a-f]+: 7ef9d800 frsqrte h0, h0 - [0-9a-f]+: 5ee1f820 frecpx d0, d1 - [0-9a-f]+: 5ea1f820 frecpx s0, s1 - [0-9a-f]+: 5ef9f820 frecpx h0, h1 - [0-9a-f]+: 5ef9f800 frecpx h0, h0 - [0-9a-f]+: 4fc31841 fmla v1.2d, v2.2d, v3.d\[1\] - [0-9a-f]+: 0f831841 fmla v1.2s, v2.2s, v3.s\[2\] - [0-9a-f]+: 4fa31041 fmla v1.4s, v2.4s, v3.s\[1\] - [0-9a-f]+: 0f001000 fmla v0.4h, v0.4h, v0.h\[0\] - [0-9a-f]+: 0f031041 fmla v1.4h, v2.4h, v3.h\[0\] - [0-9a-f]+: 4f001000 fmla v0.8h, v0.8h, v0.h\[0\] - [0-9a-f]+: 4f031041 fmla v1.8h, v2.8h, v3.h\[0\] - [0-9a-f]+: 4fca10a1 fmla v1.2d, v5.2d, v10.d\[0\] - [0-9a-f]+: 0fab1808 fmla v8.2s, v0.2s, v11.s\[3\] - [0-9a-f]+: 0f3f1920 fmla v0.4h, v9.4h, v15.h\[7\] - [0-9a-f]+: 4fc35841 fmls v1.2d, v2.2d, v3.d\[1\] - [0-9a-f]+: 0f835841 fmls v1.2s, v2.2s, v3.s\[2\] - [0-9a-f]+: 4fa35041 fmls v1.4s, v2.4s, v3.s\[1\] - [0-9a-f]+: 0f005000 fmls v0.4h, v0.4h, v0.h\[0\] - [0-9a-f]+: 0f035041 fmls v1.4h, v2.4h, v3.h\[0\] - [0-9a-f]+: 4f005000 fmls v0.8h, v0.8h, v0.h\[0\] - [0-9a-f]+: 4f035041 fmls v1.8h, v2.8h, v3.h\[0\] - [0-9a-f]+: 4fca50a1 fmls v1.2d, v5.2d, v10.d\[0\] - [0-9a-f]+: 0fab5808 fmls v8.2s, v0.2s, v11.s\[3\] - [0-9a-f]+: 0f3f5920 fmls v0.4h, v9.4h, v15.h\[7\] - [0-9a-f]+: 4fc39841 fmul v1.2d, v2.2d, v3.d\[1\] - [0-9a-f]+: 0f839841 fmul v1.2s, v2.2s, v3.s\[2\] - [0-9a-f]+: 4fa39041 fmul v1.4s, v2.4s, v3.s\[1\] - [0-9a-f]+: 0f009000 fmul v0.4h, v0.4h, v0.h\[0\] - [0-9a-f]+: 0f039041 fmul v1.4h, v2.4h, v3.h\[0\] - [0-9a-f]+: 4f009000 fmul v0.8h, v0.8h, v0.h\[0\] - [0-9a-f]+: 4f039041 fmul v1.8h, v2.8h, v3.h\[0\] - [0-9a-f]+: 4fca90a1 fmul v1.2d, v5.2d, v10.d\[0\] - [0-9a-f]+: 0fab9808 fmul v8.2s, v0.2s, v11.s\[3\] - [0-9a-f]+: 0f3f9920 fmul v0.4h, v9.4h, v15.h\[7\] - [0-9a-f]+: 6fc39841 fmulx v1.2d, v2.2d, v3.d\[1\] - [0-9a-f]+: 2f839841 fmulx v1.2s, v2.2s, v3.s\[2\] - [0-9a-f]+: 6fa39041 fmulx v1.4s, v2.4s, v3.s\[1\] - [0-9a-f]+: 2f009000 fmulx v0.4h, v0.4h, v0.h\[0\] - [0-9a-f]+: 2f039041 fmulx v1.4h, v2.4h, v3.h\[0\] - [0-9a-f]+: 6f009000 fmulx v0.8h, v0.8h, v0.h\[0\] - [0-9a-f]+: 6f039041 fmulx v1.8h, v2.8h, v3.h\[0\] - [0-9a-f]+: 6fca90a1 fmulx v1.2d, v5.2d, v10.d\[0\] - [0-9a-f]+: 2fab9808 fmulx v8.2s, v0.2s, v11.s\[3\] - [0-9a-f]+: 2f3f9920 fmulx v0.4h, v9.4h, v15.h\[7\] - [0-9a-f]+: 5fc31841 fmla d1, d2, v3.d\[1\] - [0-9a-f]+: 5fa31041 fmla s1, s2, v3.s\[1\] - [0-9a-f]+: 5f131041 fmla h1, h2, v3.h\[1\] - [0-9a-f]+: 5f001000 fmla h0, h0, v0.h\[0\] - [0-9a-f]+: 5fc35841 fmls d1, d2, v3.d\[1\] - [0-9a-f]+: 5fa35041 fmls s1, s2, v3.s\[1\] - [0-9a-f]+: 5f135041 fmls h1, h2, v3.h\[1\] - [0-9a-f]+: 5f005000 fmls h0, h0, v0.h\[0\] - [0-9a-f]+: 5fc39841 fmul d1, d2, v3.d\[1\] - [0-9a-f]+: 5fa39041 fmul s1, s2, v3.s\[1\] - [0-9a-f]+: 5f139041 fmul h1, h2, v3.h\[1\] - [0-9a-f]+: 5f009000 fmul h0, h0, v0.h\[0\] - [0-9a-f]+: 7fc39841 fmulx d1, d2, v3.d\[1\] - [0-9a-f]+: 7fa39041 fmulx s1, s2, v3.s\[1\] - [0-9a-f]+: 7f139041 fmulx h1, h2, v3.h\[1\] - [0-9a-f]+: 7f009000 fmulx h0, h0, v0.h\[0\] - [0-9a-f]+: 6e30c841 fmaxnmv s1, v2.4s - [0-9a-f]+: 0e30c841 fmaxnmv h1, v2.4h - [0-9a-f]+: 4e30c841 fmaxnmv h1, v2.8h - [0-9a-f]+: 0e30c800 fmaxnmv h0, v0.4h - [0-9a-f]+: 4e30c800 fmaxnmv h0, v0.8h - [0-9a-f]+: 6e30f841 fmaxv s1, v2.4s - [0-9a-f]+: 0e30f841 fmaxv h1, v2.4h - [0-9a-f]+: 4e30f841 fmaxv h1, v2.8h - [0-9a-f]+: 0e30f800 fmaxv h0, v0.4h - [0-9a-f]+: 4e30f800 fmaxv h0, v0.8h - [0-9a-f]+: 6eb0c841 fminnmv s1, v2.4s - [0-9a-f]+: 0eb0c841 fminnmv h1, v2.4h - [0-9a-f]+: 4eb0c841 fminnmv h1, v2.8h - [0-9a-f]+: 0eb0c800 fminnmv h0, v0.4h - [0-9a-f]+: 4eb0c800 fminnmv h0, v0.8h - [0-9a-f]+: 6eb0f841 fminv s1, v2.4s - [0-9a-f]+: 0eb0f841 fminv h1, v2.4h - [0-9a-f]+: 4eb0f841 fminv h1, v2.8h - [0-9a-f]+: 0eb0f800 fminv h0, v0.4h - [0-9a-f]+: 4eb0f800 fminv h0, v0.8h - [0-9a-f]+: 6f00f401 fmov v1.2d, #2.000000000000000000e\+00 - [0-9a-f]+: 0f00f401 fmov v1.2s, #2.000000000000000000e\+00 - [0-9a-f]+: 4f00f401 fmov v1.4s, #2.000000000000000000e\+00 - [0-9a-f]+: 0f00fc01 fmov v1.4h, #2.000000000000000000e\+00 - [0-9a-f]+: 4f00fc01 fmov v1.8h, #2.000000000000000000e\+00 - [0-9a-f]+: 0f03fe00 fmov v0.4h, #1.000000000000000000e\+00 - [0-9a-f]+: 4f03fe00 fmov v0.8h, #1.000000000000000000e\+00 - [0-9a-f]+: 7e70c841 fmaxnmp d1, v2.2d - [0-9a-f]+: 7e30c841 fmaxnmp s1, v2.2s - [0-9a-f]+: 5e30c841 fmaxnmp h1, v2.2h - [0-9a-f]+: 5e30c800 fmaxnmp h0, v0.2h - [0-9a-f]+: 7e70d841 faddp d1, v2.2d - [0-9a-f]+: 7e30d841 faddp s1, v2.2s - [0-9a-f]+: 5e30d841 faddp h1, v2.2h - [0-9a-f]+: 5e30d800 faddp h0, v0.2h - [0-9a-f]+: 7e70f841 fmaxp d1, v2.2d - [0-9a-f]+: 7e30f841 fmaxp s1, v2.2s - [0-9a-f]+: 5e30f841 fmaxp h1, v2.2h - [0-9a-f]+: 5e30f800 fmaxp h0, v0.2h - [0-9a-f]+: 7ef0c841 fminnmp d1, v2.2d - [0-9a-f]+: 7eb0c841 fminnmp s1, v2.2s - [0-9a-f]+: 5eb0c841 fminnmp h1, v2.2h - [0-9a-f]+: 5eb0c800 fminnmp h0, v0.2h - [0-9a-f]+: 7ef0f841 fminp d1, v2.2d - [0-9a-f]+: 7eb0f841 fminp s1, v2.2s - [0-9a-f]+: 5eb0f841 fminp h1, v2.2h - [0-9a-f]+: 5eb0f800 fminp h0, v0.2h - [0-9a-f]+: 4f7de441 scvtf v1.2d, v2.2d, #3 - [0-9a-f]+: 0f3de441 scvtf v1.2s, v2.2s, #3 - [0-9a-f]+: 4f3de441 scvtf v1.4s, v2.4s, #3 - [0-9a-f]+: 0f1de441 scvtf v1.4h, v2.4h, #3 - [0-9a-f]+: 4f1de441 scvtf v1.8h, v2.8h, #3 - [0-9a-f]+: 0f1fe400 scvtf v0.4h, v0.4h, #1 - [0-9a-f]+: 4f1fe400 scvtf v0.8h, v0.8h, #1 - [0-9a-f]+: 4f7dfc41 fcvtzs v1.2d, v2.2d, #3 - [0-9a-f]+: 0f3dfc41 fcvtzs v1.2s, v2.2s, #3 - [0-9a-f]+: 4f3dfc41 fcvtzs v1.4s, v2.4s, #3 - [0-9a-f]+: 0f1dfc41 fcvtzs v1.4h, v2.4h, #3 - [0-9a-f]+: 4f1dfc41 fcvtzs v1.8h, v2.8h, #3 - [0-9a-f]+: 0f1ffc00 fcvtzs v0.4h, v0.4h, #1 - [0-9a-f]+: 4f1ffc00 fcvtzs v0.8h, v0.8h, #1 - [0-9a-f]+: 6f7de441 ucvtf v1.2d, v2.2d, #3 - [0-9a-f]+: 2f3de441 ucvtf v1.2s, v2.2s, #3 - [0-9a-f]+: 6f3de441 ucvtf v1.4s, v2.4s, #3 - [0-9a-f]+: 2f1de441 ucvtf v1.4h, v2.4h, #3 - [0-9a-f]+: 6f1de441 ucvtf v1.8h, v2.8h, #3 - [0-9a-f]+: 2f1fe400 ucvtf v0.4h, v0.4h, #1 - [0-9a-f]+: 6f1fe400 ucvtf v0.8h, v0.8h, #1 - [0-9a-f]+: 6f7dfc41 fcvtzu v1.2d, v2.2d, #3 - [0-9a-f]+: 2f3dfc41 fcvtzu v1.2s, v2.2s, #3 - [0-9a-f]+: 6f3dfc41 fcvtzu v1.4s, v2.4s, #3 - [0-9a-f]+: 2f1dfc41 fcvtzu v1.4h, v2.4h, #3 - [0-9a-f]+: 6f1dfc41 fcvtzu v1.8h, v2.8h, #3 - [0-9a-f]+: 2f1ffc00 fcvtzu v0.4h, v0.4h, #1 - [0-9a-f]+: 6f1ffc00 fcvtzu v0.8h, v0.8h, #1 - [0-9a-f]+: 5f7de441 scvtf d1, d2, #3 - [0-9a-f]+: 5f3de441 scvtf s1, s2, #3 - [0-9a-f]+: 5f1de441 scvtf h1, h2, #3 - [0-9a-f]+: 5f1fe400 scvtf h0, h0, #1 - [0-9a-f]+: 5f7dfc41 fcvtzs d1, d2, #3 - [0-9a-f]+: 5f3dfc41 fcvtzs s1, s2, #3 - [0-9a-f]+: 5f1dfc41 fcvtzs h1, h2, #3 - [0-9a-f]+: 5f1ffc00 fcvtzs h0, h0, #1 - [0-9a-f]+: 7f7de441 ucvtf d1, d2, #3 - [0-9a-f]+: 7f3de441 ucvtf s1, s2, #3 - [0-9a-f]+: 7f1de441 ucvtf h1, h2, #3 - [0-9a-f]+: 7f1fe400 ucvtf h0, h0, #1 - [0-9a-f]+: 7f7dfc41 fcvtzu d1, d2, #3 - [0-9a-f]+: 7f3dfc41 fcvtzu s1, s2, #3 - [0-9a-f]+: 7f1dfc41 fcvtzu h1, h2, #3 - [0-9a-f]+: 7f1ffc00 fcvtzu h0, h0, #1 + *[0-9a-f]+: 4e63c441 fmaxnm v1\.2d, v2\.2d, v3\.2d + *[0-9a-f]+: 0e23c441 fmaxnm v1\.2s, v2\.2s, v3\.2s + *[0-9a-f]+: 4e23c441 fmaxnm v1\.4s, v2\.4s, v3\.4s + *[0-9a-f]+: 0e400400 fmaxnm v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e430441 fmaxnm v1\.4h, v2\.4h, v3\.4h + *[0-9a-f]+: 4e400400 fmaxnm v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e430441 fmaxnm v1\.8h, v2\.8h, v3\.8h + *[0-9a-f]+: 6e63c441 fmaxnmp v1\.2d, v2\.2d, v3\.2d + *[0-9a-f]+: 2e23c441 fmaxnmp v1\.2s, v2\.2s, v3\.2s + *[0-9a-f]+: 6e23c441 fmaxnmp v1\.4s, v2\.4s, v3\.4s + *[0-9a-f]+: 2e400400 fmaxnmp v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e430441 fmaxnmp v1\.4h, v2\.4h, v3\.4h + *[0-9a-f]+: 6e400400 fmaxnmp v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e430441 fmaxnmp v1\.8h, v2\.8h, v3\.8h + *[0-9a-f]+: 4ee3c441 fminnm v1\.2d, v2\.2d, v3\.2d + *[0-9a-f]+: 0ea3c441 fminnm v1\.2s, v2\.2s, v3\.2s + *[0-9a-f]+: 4ea3c441 fminnm v1\.4s, v2\.4s, v3\.4s + *[0-9a-f]+: 0ec00400 fminnm v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0ec30441 fminnm v1\.4h, v2\.4h, v3\.4h + *[0-9a-f]+: 4ec00400 fminnm v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4ec30441 fminnm v1\.8h, v2\.8h, v3\.8h + *[0-9a-f]+: 6ee3c441 fminnmp v1\.2d, v2\.2d, v3\.2d + *[0-9a-f]+: 2ea3c441 fminnmp v1\.2s, v2\.2s, v3\.2s + *[0-9a-f]+: 6ea3c441 fminnmp v1\.4s, v2\.4s, v3\.4s + *[0-9a-f]+: 2ec00400 fminnmp v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2ec30441 fminnmp v1\.4h, v2\.4h, v3\.4h + *[0-9a-f]+: 6ec00400 fminnmp v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6ec30441 fminnmp v1\.8h, v2\.8h, v3\.8h + *[0-9a-f]+: 4e63cc41 fmla v1\.2d, v2\.2d, v3\.2d + *[0-9a-f]+: 0e23cc41 fmla v1\.2s, v2\.2s, v3\.2s + *[0-9a-f]+: 4e23cc41 fmla v1\.4s, v2\.4s, v3\.4s + *[0-9a-f]+: 0e400c00 fmla v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e430c41 fmla v1\.4h, v2\.4h, v3\.4h + *[0-9a-f]+: 4e400c00 fmla v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e430c41 fmla v1\.8h, v2\.8h, v3\.8h + *[0-9a-f]+: 4ee3cc41 fmls v1\.2d, v2\.2d, v3\.2d + *[0-9a-f]+: 0ea3cc41 fmls v1\.2s, v2\.2s, v3\.2s + *[0-9a-f]+: 4ea3cc41 fmls v1\.4s, v2\.4s, v3\.4s + *[0-9a-f]+: 0ec00c00 fmls v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0ec30c41 fmls v1\.4h, v2\.4h, v3\.4h + *[0-9a-f]+: 4ec00c00 fmls v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4ec30c41 fmls v1\.8h, v2\.8h, v3\.8h + *[0-9a-f]+: 4e63d441 fadd v1\.2d, v2\.2d, v3\.2d + *[0-9a-f]+: 0e23d441 fadd v1\.2s, v2\.2s, v3\.2s + *[0-9a-f]+: 4e23d441 fadd v1\.4s, v2\.4s, v3\.4s + *[0-9a-f]+: 0e401400 fadd v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e431441 fadd v1\.4h, v2\.4h, v3\.4h + *[0-9a-f]+: 4e401400 fadd v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e431441 fadd v1\.8h, v2\.8h, v3\.8h + *[0-9a-f]+: 6e63d441 faddp v1\.2d, v2\.2d, v3\.2d + *[0-9a-f]+: 2e23d441 faddp v1\.2s, v2\.2s, v3\.2s + *[0-9a-f]+: 6e23d441 faddp v1\.4s, v2\.4s, v3\.4s + *[0-9a-f]+: 2e401400 faddp v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e431441 faddp v1\.4h, v2\.4h, v3\.4h + *[0-9a-f]+: 6e401400 faddp v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e431441 faddp v1\.8h, v2\.8h, v3\.8h + *[0-9a-f]+: 4ee3d441 fsub v1\.2d, v2\.2d, v3\.2d + *[0-9a-f]+: 0ea3d441 fsub v1\.2s, v2\.2s, v3\.2s + *[0-9a-f]+: 4ea3d441 fsub v1\.4s, v2\.4s, v3\.4s + *[0-9a-f]+: 0ec01400 fsub v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0ec31441 fsub v1\.4h, v2\.4h, v3\.4h + *[0-9a-f]+: 4ec01400 fsub v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4ec31441 fsub v1\.8h, v2\.8h, v3\.8h + *[0-9a-f]+: 6ee3d441 fabd v1.2d, v2.2d, v3.2d + *[0-9a-f]+: 2ea3d441 fabd v1.2s, v2.2s, v3.2s + *[0-9a-f]+: 6ea3d441 fabd v1.4s, v2.4s, v3.4s + *[0-9a-f]+: 2ec01400 fabd v0.4h, v0.4h, v0.4h + *[0-9a-f]+: 2ec31441 fabd v1.4h, v2.4h, v3.4h + *[0-9a-f]+: 6ec01400 fabd v0.8h, v0.8h, v0.8h + *[0-9a-f]+: 6ec31441 fabd v1.8h, v2.8h, v3.8h + *[0-9a-f]+: 4e63dc41 fmulx v1\.2d, v2\.2d, v3\.2d + *[0-9a-f]+: 0e23dc41 fmulx v1\.2s, v2\.2s, v3\.2s + *[0-9a-f]+: 4e23dc41 fmulx v1\.4s, v2\.4s, v3\.4s + *[0-9a-f]+: 0e401c00 fmulx v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e431c41 fmulx v1\.4h, v2\.4h, v3\.4h + *[0-9a-f]+: 4e401c00 fmulx v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e431c41 fmulx v1\.8h, v2\.8h, v3\.8h + *[0-9a-f]+: 6e63dc41 fmul v1\.2d, v2\.2d, v3\.2d + *[0-9a-f]+: 2e23dc41 fmul v1\.2s, v2\.2s, v3\.2s + *[0-9a-f]+: 6e23dc41 fmul v1\.4s, v2\.4s, v3\.4s + *[0-9a-f]+: 2e401c00 fmul v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e431c41 fmul v1\.4h, v2\.4h, v3\.4h + *[0-9a-f]+: 6e401c00 fmul v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e431c41 fmul v1\.8h, v2\.8h, v3\.8h + *[0-9a-f]+: 4e63e441 fcmeq v1\.2d, v2\.2d, v3\.2d + *[0-9a-f]+: 0e23e441 fcmeq v1\.2s, v2\.2s, v3\.2s + *[0-9a-f]+: 4e23e441 fcmeq v1\.4s, v2\.4s, v3\.4s + *[0-9a-f]+: 0e402400 fcmeq v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e432441 fcmeq v1\.4h, v2\.4h, v3\.4h + *[0-9a-f]+: 4e402400 fcmeq v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e432441 fcmeq v1\.8h, v2\.8h, v3\.8h + *[0-9a-f]+: 6e63e441 fcmge v1\.2d, v2\.2d, v3\.2d + *[0-9a-f]+: 2e23e441 fcmge v1\.2s, v2\.2s, v3\.2s + *[0-9a-f]+: 6e23e441 fcmge v1\.4s, v2\.4s, v3\.4s + *[0-9a-f]+: 2e402400 fcmge v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e432441 fcmge v1\.4h, v2\.4h, v3\.4h + *[0-9a-f]+: 6e402400 fcmge v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e432441 fcmge v1\.8h, v2\.8h, v3\.8h + *[0-9a-f]+: 6ee3e441 fcmgt v1\.2d, v2\.2d, v3\.2d + *[0-9a-f]+: 2ea3e441 fcmgt v1\.2s, v2\.2s, v3\.2s + *[0-9a-f]+: 6ea3e441 fcmgt v1\.4s, v2\.4s, v3\.4s + *[0-9a-f]+: 2ec02400 fcmgt v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2ec32441 fcmgt v1\.4h, v2\.4h, v3\.4h + *[0-9a-f]+: 6ec02400 fcmgt v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6ec32441 fcmgt v1\.8h, v2\.8h, v3\.8h + *[0-9a-f]+: 6e63ec41 facge v1\.2d, v2\.2d, v3\.2d + *[0-9a-f]+: 2e23ec41 facge v1\.2s, v2\.2s, v3\.2s + *[0-9a-f]+: 6e23ec41 facge v1\.4s, v2\.4s, v3\.4s + *[0-9a-f]+: 2e402c00 facge v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e432c41 facge v1\.4h, v2\.4h, v3\.4h + *[0-9a-f]+: 6e402c00 facge v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e432c41 facge v1\.8h, v2\.8h, v3\.8h + *[0-9a-f]+: 6ee3ec41 facgt v1\.2d, v2\.2d, v3\.2d + *[0-9a-f]+: 2ea3ec41 facgt v1\.2s, v2\.2s, v3\.2s + *[0-9a-f]+: 6ea3ec41 facgt v1\.4s, v2\.4s, v3\.4s + *[0-9a-f]+: 2ec02c00 facgt v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2ec32c41 facgt v1\.4h, v2\.4h, v3\.4h + *[0-9a-f]+: 6ec02c00 facgt v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6ec32c41 facgt v1\.8h, v2\.8h, v3\.8h + *[0-9a-f]+: 4e63f441 fmax v1\.2d, v2\.2d, v3\.2d + *[0-9a-f]+: 0e23f441 fmax v1\.2s, v2\.2s, v3\.2s + *[0-9a-f]+: 4e23f441 fmax v1\.4s, v2\.4s, v3\.4s + *[0-9a-f]+: 0e403400 fmax v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e433441 fmax v1\.4h, v2\.4h, v3\.4h + *[0-9a-f]+: 4e403400 fmax v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e433441 fmax v1\.8h, v2\.8h, v3\.8h + *[0-9a-f]+: 6e63f441 fmaxp v1\.2d, v2\.2d, v3\.2d + *[0-9a-f]+: 2e23f441 fmaxp v1\.2s, v2\.2s, v3\.2s + *[0-9a-f]+: 6e23f441 fmaxp v1\.4s, v2\.4s, v3\.4s + *[0-9a-f]+: 2e403400 fmaxp v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e433441 fmaxp v1\.4h, v2\.4h, v3\.4h + *[0-9a-f]+: 6e403400 fmaxp v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e433441 fmaxp v1\.8h, v2\.8h, v3\.8h + *[0-9a-f]+: 4ee3f441 fmin v1\.2d, v2\.2d, v3\.2d + *[0-9a-f]+: 0ea3f441 fmin v1\.2s, v2\.2s, v3\.2s + *[0-9a-f]+: 4ea3f441 fmin v1\.4s, v2\.4s, v3\.4s + *[0-9a-f]+: 0ec03400 fmin v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0ec33441 fmin v1\.4h, v2\.4h, v3\.4h + *[0-9a-f]+: 4ec03400 fmin v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4ec33441 fmin v1\.8h, v2\.8h, v3\.8h + *[0-9a-f]+: 6ee3f441 fminp v1\.2d, v2\.2d, v3\.2d + *[0-9a-f]+: 2ea3f441 fminp v1\.2s, v2\.2s, v3\.2s + *[0-9a-f]+: 6ea3f441 fminp v1\.4s, v2\.4s, v3\.4s + *[0-9a-f]+: 2ec03400 fminp v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2ec33441 fminp v1\.4h, v2\.4h, v3\.4h + *[0-9a-f]+: 6ec03400 fminp v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6ec33441 fminp v1\.8h, v2\.8h, v3\.8h + *[0-9a-f]+: 4e63fc41 frecps v1\.2d, v2\.2d, v3\.2d + *[0-9a-f]+: 0e23fc41 frecps v1\.2s, v2\.2s, v3\.2s + *[0-9a-f]+: 4e23fc41 frecps v1\.4s, v2\.4s, v3\.4s + *[0-9a-f]+: 0e403c00 frecps v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e433c41 frecps v1\.4h, v2\.4h, v3\.4h + *[0-9a-f]+: 4e403c00 frecps v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e433c41 frecps v1\.8h, v2\.8h, v3\.8h + *[0-9a-f]+: 6e63fc41 fdiv v1\.2d, v2\.2d, v3\.2d + *[0-9a-f]+: 2e23fc41 fdiv v1\.2s, v2\.2s, v3\.2s + *[0-9a-f]+: 6e23fc41 fdiv v1\.4s, v2\.4s, v3\.4s + *[0-9a-f]+: 2e403c00 fdiv v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e433c41 fdiv v1\.4h, v2\.4h, v3\.4h + *[0-9a-f]+: 6e403c00 fdiv v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e433c41 fdiv v1\.8h, v2\.8h, v3\.8h + *[0-9a-f]+: 4ee3fc41 frsqrts v1\.2d, v2\.2d, v3\.2d + *[0-9a-f]+: 0ea3fc41 frsqrts v1\.2s, v2\.2s, v3\.2s + *[0-9a-f]+: 4ea3fc41 frsqrts v1\.4s, v2\.4s, v3\.4s + *[0-9a-f]+: 0ec03c00 frsqrts v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0ec33c41 frsqrts v1\.4h, v2\.4h, v3\.4h + *[0-9a-f]+: 4ec03c00 frsqrts v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4ec33c41 frsqrts v1\.8h, v2\.8h, v3\.8h + *[0-9a-f]+: 7ee2d420 fabd d0, d1, d2 + *[0-9a-f]+: 7ea2d420 fabd s0, s1, s2 + *[0-9a-f]+: 7ec21420 fabd h0, h1, h2 + *[0-9a-f]+: 7ec01400 fabd h0, h0, h0 + *[0-9a-f]+: 5e62dc20 fmulx d0, d1, d2 + *[0-9a-f]+: 5e22dc20 fmulx s0, s1, s2 + *[0-9a-f]+: 5e421c20 fmulx h0, h1, h2 + *[0-9a-f]+: 5e401c00 fmulx h0, h0, h0 + *[0-9a-f]+: 5e62e420 fcmeq d0, d1, d2 + *[0-9a-f]+: 5e22e420 fcmeq s0, s1, s2 + *[0-9a-f]+: 5e422420 fcmeq h0, h1, h2 + *[0-9a-f]+: 5e402400 fcmeq h0, h0, h0 + *[0-9a-f]+: 7ee2e420 fcmgt d0, d1, d2 + *[0-9a-f]+: 7ea2e420 fcmgt s0, s1, s2 + *[0-9a-f]+: 7ec22420 fcmgt h0, h1, h2 + *[0-9a-f]+: 7ec02400 fcmgt h0, h0, h0 + *[0-9a-f]+: 7e62e420 fcmge d0, d1, d2 + *[0-9a-f]+: 7e22e420 fcmge s0, s1, s2 + *[0-9a-f]+: 7e422420 fcmge h0, h1, h2 + *[0-9a-f]+: 7e402400 fcmge h0, h0, h0 + *[0-9a-f]+: 7e62ec20 facge d0, d1, d2 + *[0-9a-f]+: 7e22ec20 facge s0, s1, s2 + *[0-9a-f]+: 7e422c20 facge h0, h1, h2 + *[0-9a-f]+: 7e402c00 facge h0, h0, h0 + *[0-9a-f]+: 7ee2ec20 facgt d0, d1, d2 + *[0-9a-f]+: 7ea2ec20 facgt s0, s1, s2 + *[0-9a-f]+: 7ec22c20 facgt h0, h1, h2 + *[0-9a-f]+: 7ec02c00 facgt h0, h0, h0 + *[0-9a-f]+: 5e62fc20 frecps d0, d1, d2 + *[0-9a-f]+: 5e22fc20 frecps s0, s1, s2 + *[0-9a-f]+: 5e423c20 frecps h0, h1, h2 + *[0-9a-f]+: 5e403c00 frecps h0, h0, h0 + *[0-9a-f]+: 5ee2fc20 frsqrts d0, d1, d2 + *[0-9a-f]+: 5ea2fc20 frsqrts s0, s1, s2 + *[0-9a-f]+: 5ec23c20 frsqrts h0, h1, h2 + *[0-9a-f]+: 5ec03c00 frsqrts h0, h0, h0 + *[0-9a-f]+: 4ee0c820 fcmgt v0\.2d, v1\.2d, #0\.0 + *[0-9a-f]+: 0ea0c820 fcmgt v0\.2s, v1\.2s, #0\.0 + *[0-9a-f]+: 4ea0c820 fcmgt v0\.4s, v1\.4s, #0\.0 + *[0-9a-f]+: 0ef8c820 fcmgt v0\.4h, v1\.4h, #0\.0 + *[0-9a-f]+: 4ef8c820 fcmgt v0\.8h, v1\.8h, #0\.0 + *[0-9a-f]+: 6ee0c820 fcmge v0\.2d, v1\.2d, #0\.0 + *[0-9a-f]+: 2ea0c820 fcmge v0\.2s, v1\.2s, #0\.0 + *[0-9a-f]+: 6ea0c820 fcmge v0\.4s, v1\.4s, #0\.0 + *[0-9a-f]+: 2ef8c820 fcmge v0\.4h, v1\.4h, #0\.0 + *[0-9a-f]+: 6ef8c820 fcmge v0\.8h, v1\.8h, #0\.0 + *[0-9a-f]+: 4ee0d820 fcmeq v0\.2d, v1\.2d, #0\.0 + *[0-9a-f]+: 0ea0d820 fcmeq v0\.2s, v1\.2s, #0\.0 + *[0-9a-f]+: 4ea0d820 fcmeq v0\.4s, v1\.4s, #0\.0 + *[0-9a-f]+: 0ef8d820 fcmeq v0\.4h, v1\.4h, #0\.0 + *[0-9a-f]+: 4ef8d820 fcmeq v0\.8h, v1\.8h, #0\.0 + *[0-9a-f]+: 6ee0d820 fcmle v0\.2d, v1\.2d, #0\.0 + *[0-9a-f]+: 2ea0d820 fcmle v0\.2s, v1\.2s, #0\.0 + *[0-9a-f]+: 6ea0d820 fcmle v0\.4s, v1\.4s, #0\.0 + *[0-9a-f]+: 2ef8d820 fcmle v0\.4h, v1\.4h, #0\.0 + *[0-9a-f]+: 6ef8d820 fcmle v0\.8h, v1\.8h, #0\.0 + *[0-9a-f]+: 4ee0e820 fcmlt v0\.2d, v1\.2d, #0\.0 + *[0-9a-f]+: 0ea0e820 fcmlt v0\.2s, v1\.2s, #0\.0 + *[0-9a-f]+: 4ea0e820 fcmlt v0\.4s, v1\.4s, #0\.0 + *[0-9a-f]+: 0ef8e820 fcmlt v0\.4h, v1\.4h, #0\.0 + *[0-9a-f]+: 4ef8e820 fcmlt v0\.8h, v1\.8h, #0\.0 + *[0-9a-f]+: 4ee0f820 fabs v0\.2d, v1\.2d + *[0-9a-f]+: 0ea0f820 fabs v0\.2s, v1\.2s + *[0-9a-f]+: 4ea0f820 fabs v0\.4s, v1\.4s + *[0-9a-f]+: 0ef8f820 fabs v0\.4h, v1\.4h + *[0-9a-f]+: 4ef8f820 fabs v0\.8h, v1\.8h + *[0-9a-f]+: 6ee0f820 fneg v0\.2d, v1\.2d + *[0-9a-f]+: 2ea0f820 fneg v0\.2s, v1\.2s + *[0-9a-f]+: 6ea0f820 fneg v0\.4s, v1\.4s + *[0-9a-f]+: 2ef8f820 fneg v0\.4h, v1\.4h + *[0-9a-f]+: 6ef8f820 fneg v0\.8h, v1\.8h + *[0-9a-f]+: 4e618820 frintn v0\.2d, v1\.2d + *[0-9a-f]+: 0e218820 frintn v0\.2s, v1\.2s + *[0-9a-f]+: 4e218820 frintn v0\.4s, v1\.4s + *[0-9a-f]+: 0e798820 frintn v0\.4h, v1\.4h + *[0-9a-f]+: 4e798820 frintn v0\.8h, v1\.8h + *[0-9a-f]+: 6e618820 frinta v0\.2d, v1\.2d + *[0-9a-f]+: 2e218820 frinta v0\.2s, v1\.2s + *[0-9a-f]+: 6e218820 frinta v0\.4s, v1\.4s + *[0-9a-f]+: 2e798820 frinta v0\.4h, v1\.4h + *[0-9a-f]+: 6e798820 frinta v0\.8h, v1\.8h + *[0-9a-f]+: 4ee18820 frintp v0\.2d, v1\.2d + *[0-9a-f]+: 0ea18820 frintp v0\.2s, v1\.2s + *[0-9a-f]+: 4ea18820 frintp v0\.4s, v1\.4s + *[0-9a-f]+: 0ef98820 frintp v0\.4h, v1\.4h + *[0-9a-f]+: 4ef98820 frintp v0\.8h, v1\.8h + *[0-9a-f]+: 4e619820 frintm v0\.2d, v1\.2d + *[0-9a-f]+: 0e219820 frintm v0\.2s, v1\.2s + *[0-9a-f]+: 4e219820 frintm v0\.4s, v1\.4s + *[0-9a-f]+: 0e799820 frintm v0\.4h, v1\.4h + *[0-9a-f]+: 4e799820 frintm v0\.8h, v1\.8h + *[0-9a-f]+: 6e619820 frintx v0\.2d, v1\.2d + *[0-9a-f]+: 2e219820 frintx v0\.2s, v1\.2s + *[0-9a-f]+: 6e219820 frintx v0\.4s, v1\.4s + *[0-9a-f]+: 2e799820 frintx v0\.4h, v1\.4h + *[0-9a-f]+: 6e799820 frintx v0\.8h, v1\.8h + *[0-9a-f]+: 4ee19820 frintz v0\.2d, v1\.2d + *[0-9a-f]+: 0ea19820 frintz v0\.2s, v1\.2s + *[0-9a-f]+: 4ea19820 frintz v0\.4s, v1\.4s + *[0-9a-f]+: 0ef99820 frintz v0\.4h, v1\.4h + *[0-9a-f]+: 4ef99820 frintz v0\.8h, v1\.8h + *[0-9a-f]+: 6ee19820 frinti v0\.2d, v1\.2d + *[0-9a-f]+: 2ea19820 frinti v0\.2s, v1\.2s + *[0-9a-f]+: 6ea19820 frinti v0\.4s, v1\.4s + *[0-9a-f]+: 2ef99820 frinti v0\.4h, v1\.4h + *[0-9a-f]+: 6ef99820 frinti v0\.8h, v1\.8h + *[0-9a-f]+: 4e61a820 fcvtns v0\.2d, v1\.2d + *[0-9a-f]+: 0e21a820 fcvtns v0\.2s, v1\.2s + *[0-9a-f]+: 4e21a820 fcvtns v0\.4s, v1\.4s + *[0-9a-f]+: 0e79a820 fcvtns v0\.4h, v1\.4h + *[0-9a-f]+: 4e79a820 fcvtns v0\.8h, v1\.8h + *[0-9a-f]+: 6e61a820 fcvtnu v0\.2d, v1\.2d + *[0-9a-f]+: 2e21a820 fcvtnu v0\.2s, v1\.2s + *[0-9a-f]+: 6e21a820 fcvtnu v0\.4s, v1\.4s + *[0-9a-f]+: 2e79a820 fcvtnu v0\.4h, v1\.4h + *[0-9a-f]+: 6e79a820 fcvtnu v0\.8h, v1\.8h + *[0-9a-f]+: 4ee1a820 fcvtps v0\.2d, v1\.2d + *[0-9a-f]+: 0ea1a820 fcvtps v0\.2s, v1\.2s + *[0-9a-f]+: 4ea1a820 fcvtps v0\.4s, v1\.4s + *[0-9a-f]+: 0ef9a820 fcvtps v0\.4h, v1\.4h + *[0-9a-f]+: 4ef9a820 fcvtps v0\.8h, v1\.8h + *[0-9a-f]+: 6ee1a820 fcvtpu v0\.2d, v1\.2d + *[0-9a-f]+: 2ea1a820 fcvtpu v0\.2s, v1\.2s + *[0-9a-f]+: 6ea1a820 fcvtpu v0\.4s, v1\.4s + *[0-9a-f]+: 2ef9a820 fcvtpu v0\.4h, v1\.4h + *[0-9a-f]+: 6ef9a820 fcvtpu v0\.8h, v1\.8h + *[0-9a-f]+: 4e61b820 fcvtms v0\.2d, v1\.2d + *[0-9a-f]+: 0e21b820 fcvtms v0\.2s, v1\.2s + *[0-9a-f]+: 4e21b820 fcvtms v0\.4s, v1\.4s + *[0-9a-f]+: 0e79b820 fcvtms v0\.4h, v1\.4h + *[0-9a-f]+: 4e79b820 fcvtms v0\.8h, v1\.8h + *[0-9a-f]+: 6e61b820 fcvtmu v0\.2d, v1\.2d + *[0-9a-f]+: 2e21b820 fcvtmu v0\.2s, v1\.2s + *[0-9a-f]+: 6e21b820 fcvtmu v0\.4s, v1\.4s + *[0-9a-f]+: 2e79b820 fcvtmu v0\.4h, v1\.4h + *[0-9a-f]+: 6e79b820 fcvtmu v0\.8h, v1\.8h + *[0-9a-f]+: 4ee1b820 fcvtzs v0\.2d, v1\.2d + *[0-9a-f]+: 0ea1b820 fcvtzs v0\.2s, v1\.2s + *[0-9a-f]+: 4ea1b820 fcvtzs v0\.4s, v1\.4s + *[0-9a-f]+: 0ef9b820 fcvtzs v0\.4h, v1\.4h + *[0-9a-f]+: 4ef9b820 fcvtzs v0\.8h, v1\.8h + *[0-9a-f]+: 6ee1b820 fcvtzu v0\.2d, v1\.2d + *[0-9a-f]+: 2ea1b820 fcvtzu v0\.2s, v1\.2s + *[0-9a-f]+: 6ea1b820 fcvtzu v0\.4s, v1\.4s + *[0-9a-f]+: 2ef9b820 fcvtzu v0\.4h, v1\.4h + *[0-9a-f]+: 6ef9b820 fcvtzu v0\.8h, v1\.8h + *[0-9a-f]+: 4e61c820 fcvtas v0\.2d, v1\.2d + *[0-9a-f]+: 0e21c820 fcvtas v0\.2s, v1\.2s + *[0-9a-f]+: 4e21c820 fcvtas v0\.4s, v1\.4s + *[0-9a-f]+: 0e79c820 fcvtas v0\.4h, v1\.4h + *[0-9a-f]+: 4e79c820 fcvtas v0\.8h, v1\.8h + *[0-9a-f]+: 6e61c820 fcvtau v0\.2d, v1\.2d + *[0-9a-f]+: 2e21c820 fcvtau v0\.2s, v1\.2s + *[0-9a-f]+: 6e21c820 fcvtau v0\.4s, v1\.4s + *[0-9a-f]+: 2e79c820 fcvtau v0\.4h, v1\.4h + *[0-9a-f]+: 6e79c820 fcvtau v0\.8h, v1\.8h + *[0-9a-f]+: 0ea1c820 urecpe v0.2s, v1.2s + *[0-9a-f]+: 4ea1c820 urecpe v0.4s, v1.4s + *[0-9a-f]+: 2ea1c820 ursqrte v0.2s, v1.2s + *[0-9a-f]+: 6ea1c820 ursqrte v0.4s, v1.4s + *[0-9a-f]+: 4e61d820 scvtf v0\.2d, v1\.2d + *[0-9a-f]+: 0e21d820 scvtf v0\.2s, v1\.2s + *[0-9a-f]+: 4e21d820 scvtf v0\.4s, v1\.4s + *[0-9a-f]+: 0e79d820 scvtf v0\.4h, v1\.4h + *[0-9a-f]+: 4e79d820 scvtf v0\.8h, v1\.8h + *[0-9a-f]+: 6e61d820 ucvtf v0\.2d, v1\.2d + *[0-9a-f]+: 2e21d820 ucvtf v0\.2s, v1\.2s + *[0-9a-f]+: 6e21d820 ucvtf v0\.4s, v1\.4s + *[0-9a-f]+: 2e79d820 ucvtf v0\.4h, v1\.4h + *[0-9a-f]+: 6e79d820 ucvtf v0\.8h, v1\.8h + *[0-9a-f]+: 4ee1d820 frecpe v0\.2d, v1\.2d + *[0-9a-f]+: 0ea1d820 frecpe v0\.2s, v1\.2s + *[0-9a-f]+: 4ea1d820 frecpe v0\.4s, v1\.4s + *[0-9a-f]+: 0ef9d820 frecpe v0\.4h, v1\.4h + *[0-9a-f]+: 4ef9d820 frecpe v0\.8h, v1\.8h + *[0-9a-f]+: 6ee1d820 frsqrte v0\.2d, v1\.2d + *[0-9a-f]+: 2ea1d820 frsqrte v0\.2s, v1\.2s + *[0-9a-f]+: 6ea1d820 frsqrte v0\.4s, v1\.4s + *[0-9a-f]+: 2ef9d820 frsqrte v0\.4h, v1\.4h + *[0-9a-f]+: 6ef9d820 frsqrte v0\.8h, v1\.8h + *[0-9a-f]+: 6ee1f820 fsqrt v0\.2d, v1\.2d + *[0-9a-f]+: 2ea1f820 fsqrt v0\.2s, v1\.2s + *[0-9a-f]+: 6ea1f820 fsqrt v0\.4s, v1\.4s + *[0-9a-f]+: 2ef9f820 fsqrt v0\.4h, v1\.4h + *[0-9a-f]+: 6ef9f820 fsqrt v0\.8h, v1\.8h + *[0-9a-f]+: 5ee0c820 fcmgt d0, d1, #0\.0 + *[0-9a-f]+: 5ea0c820 fcmgt s0, s1, #0\.0 + *[0-9a-f]+: 5ef8c820 fcmgt h0, h1, #0\.0 + *[0-9a-f]+: 5ef8c800 fcmgt h0, h0, #0\.0 + *[0-9a-f]+: 7ee0c820 fcmge d0, d1, #0\.0 + *[0-9a-f]+: 7ea0c820 fcmge s0, s1, #0\.0 + *[0-9a-f]+: 7ef8c820 fcmge h0, h1, #0\.0 + *[0-9a-f]+: 7ef8c800 fcmge h0, h0, #0\.0 + *[0-9a-f]+: 5ee0d820 fcmeq d0, d1, #0\.0 + *[0-9a-f]+: 5ea0d820 fcmeq s0, s1, #0\.0 + *[0-9a-f]+: 5ef8d820 fcmeq h0, h1, #0\.0 + *[0-9a-f]+: 5ef8d800 fcmeq h0, h0, #0\.0 + *[0-9a-f]+: 7ee0d820 fcmle d0, d1, #0\.0 + *[0-9a-f]+: 7ea0d820 fcmle s0, s1, #0\.0 + *[0-9a-f]+: 7ef8d820 fcmle h0, h1, #0\.0 + *[0-9a-f]+: 7ef8d800 fcmle h0, h0, #0\.0 + *[0-9a-f]+: 5ee0e820 fcmlt d0, d1, #0\.0 + *[0-9a-f]+: 5ea0e820 fcmlt s0, s1, #0\.0 + *[0-9a-f]+: 5ef8e820 fcmlt h0, h1, #0\.0 + *[0-9a-f]+: 5ef8e800 fcmlt h0, h0, #0\.0 + *[0-9a-f]+: 5e61a820 fcvtns d0, d1 + *[0-9a-f]+: 5e21a820 fcvtns s0, s1 + *[0-9a-f]+: 5e79a820 fcvtns h0, h1 + *[0-9a-f]+: 5e79a800 fcvtns h0, h0 + *[0-9a-f]+: 7e61a820 fcvtnu d0, d1 + *[0-9a-f]+: 7e21a820 fcvtnu s0, s1 + *[0-9a-f]+: 7e79a820 fcvtnu h0, h1 + *[0-9a-f]+: 7e79a800 fcvtnu h0, h0 + *[0-9a-f]+: 5ee1a820 fcvtps d0, d1 + *[0-9a-f]+: 5ea1a820 fcvtps s0, s1 + *[0-9a-f]+: 5ef9a820 fcvtps h0, h1 + *[0-9a-f]+: 5ef9a800 fcvtps h0, h0 + *[0-9a-f]+: 7ee1a820 fcvtpu d0, d1 + *[0-9a-f]+: 7ea1a820 fcvtpu s0, s1 + *[0-9a-f]+: 7ef9a820 fcvtpu h0, h1 + *[0-9a-f]+: 7ef9a800 fcvtpu h0, h0 + *[0-9a-f]+: 5e61b820 fcvtms d0, d1 + *[0-9a-f]+: 5e21b820 fcvtms s0, s1 + *[0-9a-f]+: 5e79b820 fcvtms h0, h1 + *[0-9a-f]+: 5e79b800 fcvtms h0, h0 + *[0-9a-f]+: 7e61b820 fcvtmu d0, d1 + *[0-9a-f]+: 7e21b820 fcvtmu s0, s1 + *[0-9a-f]+: 7e79b820 fcvtmu h0, h1 + *[0-9a-f]+: 7e79b800 fcvtmu h0, h0 + *[0-9a-f]+: 5ee1b820 fcvtzs d0, d1 + *[0-9a-f]+: 5ea1b820 fcvtzs s0, s1 + *[0-9a-f]+: 5ef9b820 fcvtzs h0, h1 + *[0-9a-f]+: 5ef9b800 fcvtzs h0, h0 + *[0-9a-f]+: 7ee1b820 fcvtzu d0, d1 + *[0-9a-f]+: 7ea1b820 fcvtzu s0, s1 + *[0-9a-f]+: 7ef9b820 fcvtzu h0, h1 + *[0-9a-f]+: 7ef9b800 fcvtzu h0, h0 + *[0-9a-f]+: 5e61c820 fcvtas d0, d1 + *[0-9a-f]+: 5e21c820 fcvtas s0, s1 + *[0-9a-f]+: 5e79c820 fcvtas h0, h1 + *[0-9a-f]+: 5e79c800 fcvtas h0, h0 + *[0-9a-f]+: 7e61c820 fcvtau d0, d1 + *[0-9a-f]+: 7e21c820 fcvtau s0, s1 + *[0-9a-f]+: 7e79c820 fcvtau h0, h1 + *[0-9a-f]+: 7e79c800 fcvtau h0, h0 + *[0-9a-f]+: 5e61d820 scvtf d0, d1 + *[0-9a-f]+: 5e21d820 scvtf s0, s1 + *[0-9a-f]+: 5e79d820 scvtf h0, h1 + *[0-9a-f]+: 5e79d800 scvtf h0, h0 + *[0-9a-f]+: 7e61d820 ucvtf d0, d1 + *[0-9a-f]+: 7e21d820 ucvtf s0, s1 + *[0-9a-f]+: 7e79d820 ucvtf h0, h1 + *[0-9a-f]+: 7e79d800 ucvtf h0, h0 + *[0-9a-f]+: 5ee1d820 frecpe d0, d1 + *[0-9a-f]+: 5ea1d820 frecpe s0, s1 + *[0-9a-f]+: 5ef9d820 frecpe h0, h1 + *[0-9a-f]+: 5ef9d800 frecpe h0, h0 + *[0-9a-f]+: 7ee1d820 frsqrte d0, d1 + *[0-9a-f]+: 7ea1d820 frsqrte s0, s1 + *[0-9a-f]+: 7ef9d820 frsqrte h0, h1 + *[0-9a-f]+: 7ef9d800 frsqrte h0, h0 + *[0-9a-f]+: 5ee1f820 frecpx d0, d1 + *[0-9a-f]+: 5ea1f820 frecpx s0, s1 + *[0-9a-f]+: 5ef9f820 frecpx h0, h1 + *[0-9a-f]+: 5ef9f800 frecpx h0, h0 + *[0-9a-f]+: 4fc31841 fmla v1\.2d, v2\.2d, v3\.d\[1\] + *[0-9a-f]+: 0f831841 fmla v1\.2s, v2\.2s, v3\.s\[2\] + *[0-9a-f]+: 4fa31041 fmla v1\.4s, v2\.4s, v3\.s\[1\] + *[0-9a-f]+: 0f001000 fmla v0\.4h, v0\.4h, v0\.h\[0\] + *[0-9a-f]+: 0f031041 fmla v1\.4h, v2\.4h, v3\.h\[0\] + *[0-9a-f]+: 4f001000 fmla v0\.8h, v0\.8h, v0\.h\[0\] + *[0-9a-f]+: 4f031041 fmla v1\.8h, v2\.8h, v3\.h\[0\] + *[0-9a-f]+: 4fca10a1 fmla v1\.2d, v5\.2d, v10\.d\[0\] + *[0-9a-f]+: 0fab1808 fmla v8\.2s, v0\.2s, v11\.s\[3\] + *[0-9a-f]+: 0f3f1920 fmla v0\.4h, v9\.4h, v15\.h\[7\] + *[0-9a-f]+: 4fc35841 fmls v1\.2d, v2\.2d, v3\.d\[1\] + *[0-9a-f]+: 0f835841 fmls v1\.2s, v2\.2s, v3\.s\[2\] + *[0-9a-f]+: 4fa35041 fmls v1\.4s, v2\.4s, v3\.s\[1\] + *[0-9a-f]+: 0f005000 fmls v0\.4h, v0\.4h, v0\.h\[0\] + *[0-9a-f]+: 0f035041 fmls v1\.4h, v2\.4h, v3\.h\[0\] + *[0-9a-f]+: 4f005000 fmls v0\.8h, v0\.8h, v0\.h\[0\] + *[0-9a-f]+: 4f035041 fmls v1\.8h, v2\.8h, v3\.h\[0\] + *[0-9a-f]+: 4fca50a1 fmls v1\.2d, v5\.2d, v10\.d\[0\] + *[0-9a-f]+: 0fab5808 fmls v8\.2s, v0\.2s, v11\.s\[3\] + *[0-9a-f]+: 0f3f5920 fmls v0\.4h, v9\.4h, v15\.h\[7\] + *[0-9a-f]+: 4fc39841 fmul v1\.2d, v2\.2d, v3\.d\[1\] + *[0-9a-f]+: 0f839841 fmul v1\.2s, v2\.2s, v3\.s\[2\] + *[0-9a-f]+: 4fa39041 fmul v1\.4s, v2\.4s, v3\.s\[1\] + *[0-9a-f]+: 0f009000 fmul v0\.4h, v0\.4h, v0\.h\[0\] + *[0-9a-f]+: 0f039041 fmul v1\.4h, v2\.4h, v3\.h\[0\] + *[0-9a-f]+: 4f009000 fmul v0\.8h, v0\.8h, v0\.h\[0\] + *[0-9a-f]+: 4f039041 fmul v1\.8h, v2\.8h, v3\.h\[0\] + *[0-9a-f]+: 4fca90a1 fmul v1\.2d, v5\.2d, v10\.d\[0\] + *[0-9a-f]+: 0fab9808 fmul v8\.2s, v0\.2s, v11\.s\[3\] + *[0-9a-f]+: 0f3f9920 fmul v0\.4h, v9\.4h, v15\.h\[7\] + *[0-9a-f]+: 6fc39841 fmulx v1\.2d, v2\.2d, v3\.d\[1\] + *[0-9a-f]+: 2f839841 fmulx v1\.2s, v2\.2s, v3\.s\[2\] + *[0-9a-f]+: 6fa39041 fmulx v1\.4s, v2\.4s, v3\.s\[1\] + *[0-9a-f]+: 2f009000 fmulx v0\.4h, v0\.4h, v0\.h\[0\] + *[0-9a-f]+: 2f039041 fmulx v1\.4h, v2\.4h, v3\.h\[0\] + *[0-9a-f]+: 6f009000 fmulx v0\.8h, v0\.8h, v0\.h\[0\] + *[0-9a-f]+: 6f039041 fmulx v1\.8h, v2\.8h, v3\.h\[0\] + *[0-9a-f]+: 6fca90a1 fmulx v1\.2d, v5\.2d, v10\.d\[0\] + *[0-9a-f]+: 2fab9808 fmulx v8\.2s, v0\.2s, v11\.s\[3\] + *[0-9a-f]+: 2f3f9920 fmulx v0\.4h, v9\.4h, v15\.h\[7\] + *[0-9a-f]+: 5fc31841 fmla d1, d2, v3\.d\[1\] + *[0-9a-f]+: 5fa31041 fmla s1, s2, v3\.s\[1\] + *[0-9a-f]+: 5f131041 fmla h1, h2, v3\.h\[1\] + *[0-9a-f]+: 5f001000 fmla h0, h0, v0\.h\[0\] + *[0-9a-f]+: 5fc35841 fmls d1, d2, v3\.d\[1\] + *[0-9a-f]+: 5fa35041 fmls s1, s2, v3\.s\[1\] + *[0-9a-f]+: 5f135041 fmls h1, h2, v3\.h\[1\] + *[0-9a-f]+: 5f005000 fmls h0, h0, v0\.h\[0\] + *[0-9a-f]+: 5fc39841 fmul d1, d2, v3\.d\[1\] + *[0-9a-f]+: 5fa39041 fmul s1, s2, v3\.s\[1\] + *[0-9a-f]+: 5f139041 fmul h1, h2, v3\.h\[1\] + *[0-9a-f]+: 5f009000 fmul h0, h0, v0\.h\[0\] + *[0-9a-f]+: 7fc39841 fmulx d1, d2, v3\.d\[1\] + *[0-9a-f]+: 7fa39041 fmulx s1, s2, v3\.s\[1\] + *[0-9a-f]+: 7f139041 fmulx h1, h2, v3\.h\[1\] + *[0-9a-f]+: 7f009000 fmulx h0, h0, v0\.h\[0\] + *[0-9a-f]+: 6e30c841 fmaxnmv s1, v2\.4s + *[0-9a-f]+: 0e30c841 fmaxnmv h1, v2\.4h + *[0-9a-f]+: 4e30c841 fmaxnmv h1, v2\.8h + *[0-9a-f]+: 0e30c800 fmaxnmv h0, v0\.4h + *[0-9a-f]+: 4e30c800 fmaxnmv h0, v0\.8h + *[0-9a-f]+: 6e30f841 fmaxv s1, v2\.4s + *[0-9a-f]+: 0e30f841 fmaxv h1, v2\.4h + *[0-9a-f]+: 4e30f841 fmaxv h1, v2\.8h + *[0-9a-f]+: 0e30f800 fmaxv h0, v0\.4h + *[0-9a-f]+: 4e30f800 fmaxv h0, v0\.8h + *[0-9a-f]+: 6eb0c841 fminnmv s1, v2\.4s + *[0-9a-f]+: 0eb0c841 fminnmv h1, v2\.4h + *[0-9a-f]+: 4eb0c841 fminnmv h1, v2\.8h + *[0-9a-f]+: 0eb0c800 fminnmv h0, v0\.4h + *[0-9a-f]+: 4eb0c800 fminnmv h0, v0\.8h + *[0-9a-f]+: 6eb0f841 fminv s1, v2\.4s + *[0-9a-f]+: 0eb0f841 fminv h1, v2\.4h + *[0-9a-f]+: 4eb0f841 fminv h1, v2\.8h + *[0-9a-f]+: 0eb0f800 fminv h0, v0\.4h + *[0-9a-f]+: 4eb0f800 fminv h0, v0\.8h + *[0-9a-f]+: 6f00f401 fmov v1\.2d, #2\.000000000000000000e\+00 + *[0-9a-f]+: 0f00f401 fmov v1\.2s, #2\.000000000000000000e\+00 + *[0-9a-f]+: 4f00f401 fmov v1\.4s, #2\.000000000000000000e\+00 + *[0-9a-f]+: 0f00fc01 fmov v1\.4h, #2\.000000000000000000e\+00 + *[0-9a-f]+: 4f00fc01 fmov v1\.8h, #2\.000000000000000000e\+00 + *[0-9a-f]+: 0f03fe00 fmov v0\.4h, #1\.000000000000000000e\+00 + *[0-9a-f]+: 4f03fe00 fmov v0\.8h, #1\.000000000000000000e\+00 + *[0-9a-f]+: 7e70c841 fmaxnmp d1, v2\.2d + *[0-9a-f]+: 7e30c841 fmaxnmp s1, v2\.2s + *[0-9a-f]+: 5e30c841 fmaxnmp h1, v2\.2h + *[0-9a-f]+: 5e30c800 fmaxnmp h0, v0\.2h + *[0-9a-f]+: 7e70d841 faddp d1, v2\.2d + *[0-9a-f]+: 7e30d841 faddp s1, v2\.2s + *[0-9a-f]+: 5e30d841 faddp h1, v2\.2h + *[0-9a-f]+: 5e30d800 faddp h0, v0\.2h + *[0-9a-f]+: 7e70f841 fmaxp d1, v2\.2d + *[0-9a-f]+: 7e30f841 fmaxp s1, v2\.2s + *[0-9a-f]+: 5e30f841 fmaxp h1, v2\.2h + *[0-9a-f]+: 5e30f800 fmaxp h0, v0\.2h + *[0-9a-f]+: 7ef0c841 fminnmp d1, v2\.2d + *[0-9a-f]+: 7eb0c841 fminnmp s1, v2\.2s + *[0-9a-f]+: 5eb0c841 fminnmp h1, v2\.2h + *[0-9a-f]+: 5eb0c800 fminnmp h0, v0\.2h + *[0-9a-f]+: 7ef0f841 fminp d1, v2\.2d + *[0-9a-f]+: 7eb0f841 fminp s1, v2\.2s + *[0-9a-f]+: 5eb0f841 fminp h1, v2\.2h + *[0-9a-f]+: 5eb0f800 fminp h0, v0\.2h + *[0-9a-f]+: 4f7de441 scvtf v1\.2d, v2\.2d, #3 + *[0-9a-f]+: 0f3de441 scvtf v1\.2s, v2\.2s, #3 + *[0-9a-f]+: 4f3de441 scvtf v1\.4s, v2\.4s, #3 + *[0-9a-f]+: 0f1de441 scvtf v1\.4h, v2\.4h, #3 + *[0-9a-f]+: 4f1de441 scvtf v1\.8h, v2\.8h, #3 + *[0-9a-f]+: 0f1fe400 scvtf v0\.4h, v0\.4h, #1 + *[0-9a-f]+: 4f1fe400 scvtf v0\.8h, v0\.8h, #1 + *[0-9a-f]+: 4f7dfc41 fcvtzs v1\.2d, v2\.2d, #3 + *[0-9a-f]+: 0f3dfc41 fcvtzs v1\.2s, v2\.2s, #3 + *[0-9a-f]+: 4f3dfc41 fcvtzs v1\.4s, v2\.4s, #3 + *[0-9a-f]+: 0f1dfc41 fcvtzs v1\.4h, v2\.4h, #3 + *[0-9a-f]+: 4f1dfc41 fcvtzs v1\.8h, v2\.8h, #3 + *[0-9a-f]+: 0f1ffc00 fcvtzs v0\.4h, v0\.4h, #1 + *[0-9a-f]+: 4f1ffc00 fcvtzs v0\.8h, v0\.8h, #1 + *[0-9a-f]+: 6f7de441 ucvtf v1\.2d, v2\.2d, #3 + *[0-9a-f]+: 2f3de441 ucvtf v1\.2s, v2\.2s, #3 + *[0-9a-f]+: 6f3de441 ucvtf v1\.4s, v2\.4s, #3 + *[0-9a-f]+: 2f1de441 ucvtf v1\.4h, v2\.4h, #3 + *[0-9a-f]+: 6f1de441 ucvtf v1\.8h, v2\.8h, #3 + *[0-9a-f]+: 2f1fe400 ucvtf v0\.4h, v0\.4h, #1 + *[0-9a-f]+: 6f1fe400 ucvtf v0\.8h, v0\.8h, #1 + *[0-9a-f]+: 6f7dfc41 fcvtzu v1\.2d, v2\.2d, #3 + *[0-9a-f]+: 2f3dfc41 fcvtzu v1\.2s, v2\.2s, #3 + *[0-9a-f]+: 6f3dfc41 fcvtzu v1\.4s, v2\.4s, #3 + *[0-9a-f]+: 2f1dfc41 fcvtzu v1\.4h, v2\.4h, #3 + *[0-9a-f]+: 6f1dfc41 fcvtzu v1\.8h, v2\.8h, #3 + *[0-9a-f]+: 2f1ffc00 fcvtzu v0\.4h, v0\.4h, #1 + *[0-9a-f]+: 6f1ffc00 fcvtzu v0\.8h, v0\.8h, #1 + *[0-9a-f]+: 5f7de441 scvtf d1, d2, #3 + *[0-9a-f]+: 5f3de441 scvtf s1, s2, #3 + *[0-9a-f]+: 5f1de441 scvtf h1, h2, #3 + *[0-9a-f]+: 5f1fe400 scvtf h0, h0, #1 + *[0-9a-f]+: 5f7dfc41 fcvtzs d1, d2, #3 + *[0-9a-f]+: 5f3dfc41 fcvtzs s1, s2, #3 + *[0-9a-f]+: 5f1dfc41 fcvtzs h1, h2, #3 + *[0-9a-f]+: 5f1ffc00 fcvtzs h0, h0, #1 + *[0-9a-f]+: 7f7de441 ucvtf d1, d2, #3 + *[0-9a-f]+: 7f3de441 ucvtf s1, s2, #3 + *[0-9a-f]+: 7f1de441 ucvtf h1, h2, #3 + *[0-9a-f]+: 7f1fe400 ucvtf h0, h0, #1 + *[0-9a-f]+: 7f7dfc41 fcvtzu d1, d2, #3 + *[0-9a-f]+: 7f3dfc41 fcvtzu s1, s2, #3 + *[0-9a-f]+: 7f1dfc41 fcvtzu h1, h2, #3 + *[0-9a-f]+: 7f1ffc00 fcvtzu h0, h0, #1 diff --git a/gas/testsuite/gas/aarch64/advsimd-fp16.s b/gas/testsuite/gas/aarch64/advsimd-fp16.s index 6b86ded..2a09351 100644 --- a/gas/testsuite/gas/aarch64/advsimd-fp16.s +++ b/gas/testsuite/gas/aarch64/advsimd-fp16.s @@ -1,5 +1,6 @@ -/* simdhp.s Test file for AArch64 half-precision floating-point - vector instructions. */ +/* Test file for AArch64 half-precision floating-point vector instructions. + This is also the only test for the single- and double-precison variants of + most of these instructions. */ /* Vector three-same. */ @@ -24,6 +25,7 @@ three_same fadd three_same faddp three_same fsub + three_same fabd three_same fmulx three_same fmul three_same fcmeq @@ -82,6 +84,11 @@ \op v0.8h, v1.8h .endm + .macro tworeg_misc_s, op + \op v0.2s, v1.2s + \op v0.4s, v1.4s + .endm + tworeg_misc fabs tworeg_misc fneg @@ -106,6 +113,8 @@ tworeg_misc fcvtas tworeg_misc fcvtau + tworeg_misc_s urecpe + tworeg_misc_s ursqrte tworeg_misc scvtf tworeg_misc ucvtf diff --git a/gas/testsuite/gas/aarch64/advsimd-modified-immediate.d b/gas/testsuite/gas/aarch64/advsimd-modified-immediate.d new file mode 100644 index 0000000..ecfd337 --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsimd-modified-immediate.d @@ -0,0 +1,103 @@ +#as: -march=armv8-a +#objdump: -dr + +.*: file format .* + + +Disassembly of section \.text: + +0+ <\.text>: + *[0-9a-f]+: 0f009400 orr v0\.4h, #0x0 + *[0-9a-f]+: 0f00941f orr v31\.4h, #0x0 + *[0-9a-f]+: 0f0097e0 orr v0\.4h, #0x1f + *[0-9a-f]+: 0f0797e0 orr v0\.4h, #0xff + *[0-9a-f]+: 0f009400 orr v0\.4h, #0x0 + *[0-9a-f]+: 0f00b400 orr v0\.4h, #0x0, lsl #8 + *[0-9a-f]+: 4f009400 orr v0\.8h, #0x0 + *[0-9a-f]+: 4f00941f orr v31\.8h, #0x0 + *[0-9a-f]+: 4f0097e0 orr v0\.8h, #0x1f + *[0-9a-f]+: 4f0797e0 orr v0\.8h, #0xff + *[0-9a-f]+: 4f0797e0 orr v0\.8h, #0xff + *[0-9a-f]+: 4f07b7e0 orr v0\.8h, #0xff, lsl #8 + *[0-9a-f]+: 0f001400 orr v0\.2s, #0x0 + *[0-9a-f]+: 0f00141f orr v31\.2s, #0x0 + *[0-9a-f]+: 0f0017e0 orr v0\.2s, #0x1f + *[0-9a-f]+: 0f0717e0 orr v0\.2s, #0xff + *[0-9a-f]+: 0f001400 orr v0\.2s, #0x0 + *[0-9a-f]+: 0f003400 orr v0\.2s, #0x0, lsl #8 + *[0-9a-f]+: 0f005400 orr v0\.2s, #0x0, lsl #16 + *[0-9a-f]+: 0f007400 orr v0\.2s, #0x0, lsl #24 + *[0-9a-f]+: 4f001400 orr v0\.4s, #0x0 + *[0-9a-f]+: 4f00141f orr v31\.4s, #0x0 + *[0-9a-f]+: 4f0017e0 orr v0\.4s, #0x1f + *[0-9a-f]+: 4f0717e0 orr v0\.4s, #0xff + *[0-9a-f]+: 4f0717e0 orr v0\.4s, #0xff + *[0-9a-f]+: 4f0737e0 orr v0\.4s, #0xff, lsl #8 + *[0-9a-f]+: 4f0757e0 orr v0\.4s, #0xff, lsl #16 + *[0-9a-f]+: 4f0777e0 orr v0\.4s, #0xff, lsl #24 + *[0-9a-f]+: 2f008400 mvni v0\.4h, #0x0 + *[0-9a-f]+: 2f00841f mvni v31\.4h, #0x0 + *[0-9a-f]+: 2f0087e0 mvni v0\.4h, #0x1f + *[0-9a-f]+: 2f0787e0 mvni v0\.4h, #0xff + *[0-9a-f]+: 2f008400 mvni v0\.4h, #0x0 + *[0-9a-f]+: 2f00a400 mvni v0\.4h, #0x0, lsl #8 + *[0-9a-f]+: 6f008400 mvni v0\.8h, #0x0 + *[0-9a-f]+: 6f00841f mvni v31\.8h, #0x0 + *[0-9a-f]+: 6f0087e0 mvni v0\.8h, #0x1f + *[0-9a-f]+: 6f0787e0 mvni v0\.8h, #0xff + *[0-9a-f]+: 6f0787e0 mvni v0\.8h, #0xff + *[0-9a-f]+: 6f07a7e0 mvni v0\.8h, #0xff, lsl #8 + *[0-9a-f]+: 2f000400 mvni v0\.2s, #0x0 + *[0-9a-f]+: 2f00041f mvni v31\.2s, #0x0 + *[0-9a-f]+: 2f0007e0 mvni v0\.2s, #0x1f + *[0-9a-f]+: 2f0707e0 mvni v0\.2s, #0xff + *[0-9a-f]+: 2f000400 mvni v0\.2s, #0x0 + *[0-9a-f]+: 2f002400 mvni v0\.2s, #0x0, lsl #8 + *[0-9a-f]+: 2f004400 mvni v0\.2s, #0x0, lsl #16 + *[0-9a-f]+: 2f006400 mvni v0\.2s, #0x0, lsl #24 + *[0-9a-f]+: 6f000400 mvni v0\.4s, #0x0 + *[0-9a-f]+: 6f00041f mvni v31\.4s, #0x0 + *[0-9a-f]+: 6f0007e0 mvni v0\.4s, #0x1f + *[0-9a-f]+: 6f0707e0 mvni v0\.4s, #0xff + *[0-9a-f]+: 6f0707e0 mvni v0\.4s, #0xff + *[0-9a-f]+: 6f0727e0 mvni v0\.4s, #0xff, lsl #8 + *[0-9a-f]+: 6f0747e0 mvni v0\.4s, #0xff, lsl #16 + *[0-9a-f]+: 6f0767e0 mvni v0\.4s, #0xff, lsl #24 + *[0-9a-f]+: 2f00c400 mvni v0\.2s, #0x0, msl #8 + *[0-9a-f]+: 2f00c41f mvni v31\.2s, #0x0, msl #8 + *[0-9a-f]+: 2f00c7e0 mvni v0\.2s, #0x1f, msl #8 + *[0-9a-f]+: 2f07c7e0 mvni v0\.2s, #0xff, msl #8 + *[0-9a-f]+: 2f00d400 mvni v0\.2s, #0x0, msl #16 + *[0-9a-f]+: 6f00c400 mvni v0\.4s, #0x0, msl #8 + *[0-9a-f]+: 6f00c41f mvni v31\.4s, #0x0, msl #8 + *[0-9a-f]+: 6f00c7e0 mvni v0\.4s, #0x1f, msl #8 + *[0-9a-f]+: 6f07c7e0 mvni v0\.4s, #0xff, msl #8 + *[0-9a-f]+: 6f07d7e0 mvni v0\.4s, #0xff, msl #16 + *[0-9a-f]+: 2f009400 bic v0\.4h, #0x0 + *[0-9a-f]+: 2f00941f bic v31\.4h, #0x0 + *[0-9a-f]+: 2f0097e0 bic v0\.4h, #0x1f + *[0-9a-f]+: 2f0797e0 bic v0\.4h, #0xff + *[0-9a-f]+: 2f009400 bic v0\.4h, #0x0 + *[0-9a-f]+: 2f00b400 bic v0\.4h, #0x0, lsl #8 + *[0-9a-f]+: 6f009400 bic v0\.8h, #0x0 + *[0-9a-f]+: 6f00941f bic v31\.8h, #0x0 + *[0-9a-f]+: 6f0097e0 bic v0\.8h, #0x1f + *[0-9a-f]+: 6f0797e0 bic v0\.8h, #0xff + *[0-9a-f]+: 6f0797e0 bic v0\.8h, #0xff + *[0-9a-f]+: 6f07b7e0 bic v0\.8h, #0xff, lsl #8 + *[0-9a-f]+: 2f001400 bic v0\.2s, #0x0 + *[0-9a-f]+: 2f00141f bic v31\.2s, #0x0 + *[0-9a-f]+: 2f0017e0 bic v0\.2s, #0x1f + *[0-9a-f]+: 2f0717e0 bic v0\.2s, #0xff + *[0-9a-f]+: 2f001400 bic v0\.2s, #0x0 + *[0-9a-f]+: 2f003400 bic v0\.2s, #0x0, lsl #8 + *[0-9a-f]+: 2f005400 bic v0\.2s, #0x0, lsl #16 + *[0-9a-f]+: 2f007400 bic v0\.2s, #0x0, lsl #24 + *[0-9a-f]+: 6f001400 bic v0\.4s, #0x0 + *[0-9a-f]+: 6f00141f bic v31\.4s, #0x0 + *[0-9a-f]+: 6f0017e0 bic v0\.4s, #0x1f + *[0-9a-f]+: 6f0717e0 bic v0\.4s, #0xff + *[0-9a-f]+: 6f0717e0 bic v0\.4s, #0xff + *[0-9a-f]+: 6f0737e0 bic v0\.4s, #0xff, lsl #8 + *[0-9a-f]+: 6f0757e0 bic v0\.4s, #0xff, lsl #16 + *[0-9a-f]+: 6f0777e0 bic v0\.4s, #0xff, lsl #24 diff --git a/gas/testsuite/gas/aarch64/advsimd-modified-immediate.s b/gas/testsuite/gas/aarch64/advsimd-modified-immediate.s new file mode 100644 index 0000000..af64f2e --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsimd-modified-immediate.s @@ -0,0 +1,98 @@ +// movi and fmov are tested elsewhere, so skipped here. + + orr v0.4h, #0 + orr v31.4h, #0 + orr v0.4h, #31 + orr v0.4h, #255 + orr v0.4h, #0, lsl #0 + orr v0.4h, #0, lsl #8 + orr v0.8h, #0 + orr v31.8h, #0 + orr v0.8h, #31 + orr v0.8h, #255 + orr v0.8h, #255, lsl #0 + orr v0.8h, #255, lsl #8 + orr v0.2s, #0 + orr v31.2s, #0 + orr v0.2s, #31 + orr v0.2s, #255 + orr v0.2s, #0, lsl #0 + orr v0.2s, #0, lsl #8 + orr v0.2s, #0, lsl #16 + orr v0.2s, #0, lsl #24 + orr v0.4s, #0 + orr v31.4s, #0 + orr v0.4s, #31 + orr v0.4s, #255 + orr v0.4s, #255, lsl #0 + orr v0.4s, #255, lsl #8 + orr v0.4s, #255, lsl #16 + orr v0.4s, #255, lsl #24 + + mvni v0.4h, #0 + mvni v31.4h, #0 + mvni v0.4h, #31 + mvni v0.4h, #255 + mvni v0.4h, #0, lsl #0 + mvni v0.4h, #0, lsl #8 + mvni v0.8h, #0 + mvni v31.8h, #0 + mvni v0.8h, #31 + mvni v0.8h, #255 + mvni v0.8h, #255, lsl #0 + mvni v0.8h, #255, lsl #8 + mvni v0.2s, #0 + mvni v31.2s, #0 + mvni v0.2s, #31 + mvni v0.2s, #255 + mvni v0.2s, #0, lsl #0 + mvni v0.2s, #0, lsl #8 + mvni v0.2s, #0, lsl #16 + mvni v0.2s, #0, lsl #24 + mvni v0.4s, #0 + mvni v31.4s, #0 + mvni v0.4s, #31 + mvni v0.4s, #255 + mvni v0.4s, #255, lsl #0 + mvni v0.4s, #255, lsl #8 + mvni v0.4s, #255, lsl #16 + mvni v0.4s, #255, lsl #24 + mvni v0.2s, #0, msl #8 + mvni v31.2s, #0, msl #8 + mvni v0.2s, #31, msl #8 + mvni v0.2s, #255, msl #8 + mvni v0.2s, #0, msl #16 + mvni v0.4s, #0, msl #8 + mvni v31.4s, #0, msl #8 + mvni v0.4s, #31, msl #8 + mvni v0.4s, #255, msl #8 + mvni v0.4s, #255, msl #16 + + bic v0.4h, #0 + bic v31.4h, #0 + bic v0.4h, #31 + bic v0.4h, #255 + bic v0.4h, #0, lsl #0 + bic v0.4h, #0, lsl #8 + bic v0.8h, #0 + bic v31.8h, #0 + bic v0.8h, #31 + bic v0.8h, #255 + bic v0.8h, #255, lsl #0 + bic v0.8h, #255, lsl #8 + bic v0.2s, #0 + bic v31.2s, #0 + bic v0.2s, #31 + bic v0.2s, #255 + bic v0.2s, #0, lsl #0 + bic v0.2s, #0, lsl #8 + bic v0.2s, #0, lsl #16 + bic v0.2s, #0, lsl #24 + bic v0.4s, #0 + bic v31.4s, #0 + bic v0.4s, #31 + bic v0.4s, #255 + bic v0.4s, #255, lsl #0 + bic v0.4s, #255, lsl #8 + bic v0.4s, #255, lsl #16 + bic v0.4s, #255, lsl #24 diff --git a/gas/testsuite/gas/aarch64/advsimd-mul-element.d b/gas/testsuite/gas/aarch64/advsimd-mul-element.d new file mode 100644 index 0000000..16573f6 --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsimd-mul-element.d @@ -0,0 +1,373 @@ +#as: -march=armv8-a +#objdump: -dr + +.*: file format .* + + +Disassembly of section \.text: + +0+ <\.text>: + *[0-9a-f]+: 0f402000 smlal v0\.4s, v0\.4h, v0\.h\[0\] + *[0-9a-f]+: 0f40201f smlal v31\.4s, v0\.4h, v0\.h\[0\] + *[0-9a-f]+: 0f4023e0 smlal v0\.4s, v31\.4h, v0\.h\[0\] + *[0-9a-f]+: 0f4f2000 smlal v0\.4s, v0\.4h, v15\.h\[0\] + *[0-9a-f]+: 0f502000 smlal v0\.4s, v0\.4h, v0\.h\[1\] + *[0-9a-f]+: 0f702000 smlal v0\.4s, v0\.4h, v0\.h\[3\] + *[0-9a-f]+: 0f702800 smlal v0\.4s, v0\.4h, v0\.h\[7\] + *[0-9a-f]+: 0f802000 smlal v0\.2d, v0\.2s, v0\.s\[0\] + *[0-9a-f]+: 0f80201f smlal v31\.2d, v0\.2s, v0\.s\[0\] + *[0-9a-f]+: 0f8023e0 smlal v0\.2d, v31\.2s, v0\.s\[0\] + *[0-9a-f]+: 0f9f2000 smlal v0\.2d, v0\.2s, v31\.s\[0\] + *[0-9a-f]+: 0fa02000 smlal v0\.2d, v0\.2s, v0\.s\[1\] + *[0-9a-f]+: 0fa02800 smlal v0\.2d, v0\.2s, v0\.s\[3\] + *[0-9a-f]+: 4f402000 smlal2 v0\.4s, v0\.8h, v0\.h\[0\] + *[0-9a-f]+: 4f40201f smlal2 v31\.4s, v0\.8h, v0\.h\[0\] + *[0-9a-f]+: 4f4023e0 smlal2 v0\.4s, v31\.8h, v0\.h\[0\] + *[0-9a-f]+: 4f4f2000 smlal2 v0\.4s, v0\.8h, v15\.h\[0\] + *[0-9a-f]+: 4f502000 smlal2 v0\.4s, v0\.8h, v0\.h\[1\] + *[0-9a-f]+: 4f702000 smlal2 v0\.4s, v0\.8h, v0\.h\[3\] + *[0-9a-f]+: 4f702800 smlal2 v0\.4s, v0\.8h, v0\.h\[7\] + *[0-9a-f]+: 4f802000 smlal2 v0\.2d, v0\.4s, v0\.s\[0\] + *[0-9a-f]+: 4f80201f smlal2 v31\.2d, v0\.4s, v0\.s\[0\] + *[0-9a-f]+: 4f8023e0 smlal2 v0\.2d, v31\.4s, v0\.s\[0\] + *[0-9a-f]+: 4f9f2000 smlal2 v0\.2d, v0\.4s, v31\.s\[0\] + *[0-9a-f]+: 4fa02000 smlal2 v0\.2d, v0\.4s, v0\.s\[1\] + *[0-9a-f]+: 4fa02800 smlal2 v0\.2d, v0\.4s, v0\.s\[3\] + *[0-9a-f]+: 0f403000 sqdmlal v0\.4s, v0\.4h, v0\.h\[0\] + *[0-9a-f]+: 0f40301f sqdmlal v31\.4s, v0\.4h, v0\.h\[0\] + *[0-9a-f]+: 0f4033e0 sqdmlal v0\.4s, v31\.4h, v0\.h\[0\] + *[0-9a-f]+: 0f4f3000 sqdmlal v0\.4s, v0\.4h, v15\.h\[0\] + *[0-9a-f]+: 0f503000 sqdmlal v0\.4s, v0\.4h, v0\.h\[1\] + *[0-9a-f]+: 0f703000 sqdmlal v0\.4s, v0\.4h, v0\.h\[3\] + *[0-9a-f]+: 0f703800 sqdmlal v0\.4s, v0\.4h, v0\.h\[7\] + *[0-9a-f]+: 0f803000 sqdmlal v0\.2d, v0\.2s, v0\.s\[0\] + *[0-9a-f]+: 0f80301f sqdmlal v31\.2d, v0\.2s, v0\.s\[0\] + *[0-9a-f]+: 0f8033e0 sqdmlal v0\.2d, v31\.2s, v0\.s\[0\] + *[0-9a-f]+: 0f9f3000 sqdmlal v0\.2d, v0\.2s, v31\.s\[0\] + *[0-9a-f]+: 0fa03000 sqdmlal v0\.2d, v0\.2s, v0\.s\[1\] + *[0-9a-f]+: 0fa03800 sqdmlal v0\.2d, v0\.2s, v0\.s\[3\] + *[0-9a-f]+: 4f403000 sqdmlal2 v0\.4s, v0\.8h, v0\.h\[0\] + *[0-9a-f]+: 4f40301f sqdmlal2 v31\.4s, v0\.8h, v0\.h\[0\] + *[0-9a-f]+: 4f4033e0 sqdmlal2 v0\.4s, v31\.8h, v0\.h\[0\] + *[0-9a-f]+: 4f4f3000 sqdmlal2 v0\.4s, v0\.8h, v15\.h\[0\] + *[0-9a-f]+: 4f503000 sqdmlal2 v0\.4s, v0\.8h, v0\.h\[1\] + *[0-9a-f]+: 4f703000 sqdmlal2 v0\.4s, v0\.8h, v0\.h\[3\] + *[0-9a-f]+: 4f703800 sqdmlal2 v0\.4s, v0\.8h, v0\.h\[7\] + *[0-9a-f]+: 4f803000 sqdmlal2 v0\.2d, v0\.4s, v0\.s\[0\] + *[0-9a-f]+: 4f80301f sqdmlal2 v31\.2d, v0\.4s, v0\.s\[0\] + *[0-9a-f]+: 4f8033e0 sqdmlal2 v0\.2d, v31\.4s, v0\.s\[0\] + *[0-9a-f]+: 4f9f3000 sqdmlal2 v0\.2d, v0\.4s, v31\.s\[0\] + *[0-9a-f]+: 4fa03000 sqdmlal2 v0\.2d, v0\.4s, v0\.s\[1\] + *[0-9a-f]+: 4fa03800 sqdmlal2 v0\.2d, v0\.4s, v0\.s\[3\] + *[0-9a-f]+: 0f406000 smlsl v0\.4s, v0\.4h, v0\.h\[0\] + *[0-9a-f]+: 0f40601f smlsl v31\.4s, v0\.4h, v0\.h\[0\] + *[0-9a-f]+: 0f4063e0 smlsl v0\.4s, v31\.4h, v0\.h\[0\] + *[0-9a-f]+: 0f4f6000 smlsl v0\.4s, v0\.4h, v15\.h\[0\] + *[0-9a-f]+: 0f506000 smlsl v0\.4s, v0\.4h, v0\.h\[1\] + *[0-9a-f]+: 0f706000 smlsl v0\.4s, v0\.4h, v0\.h\[3\] + *[0-9a-f]+: 0f706800 smlsl v0\.4s, v0\.4h, v0\.h\[7\] + *[0-9a-f]+: 0f806000 smlsl v0\.2d, v0\.2s, v0\.s\[0\] + *[0-9a-f]+: 0f80601f smlsl v31\.2d, v0\.2s, v0\.s\[0\] + *[0-9a-f]+: 0f8063e0 smlsl v0\.2d, v31\.2s, v0\.s\[0\] + *[0-9a-f]+: 0f9f6000 smlsl v0\.2d, v0\.2s, v31\.s\[0\] + *[0-9a-f]+: 0fa06000 smlsl v0\.2d, v0\.2s, v0\.s\[1\] + *[0-9a-f]+: 0fa06800 smlsl v0\.2d, v0\.2s, v0\.s\[3\] + *[0-9a-f]+: 4f406000 smlsl2 v0\.4s, v0\.8h, v0\.h\[0\] + *[0-9a-f]+: 4f40601f smlsl2 v31\.4s, v0\.8h, v0\.h\[0\] + *[0-9a-f]+: 4f4063e0 smlsl2 v0\.4s, v31\.8h, v0\.h\[0\] + *[0-9a-f]+: 4f4f6000 smlsl2 v0\.4s, v0\.8h, v15\.h\[0\] + *[0-9a-f]+: 4f506000 smlsl2 v0\.4s, v0\.8h, v0\.h\[1\] + *[0-9a-f]+: 4f706000 smlsl2 v0\.4s, v0\.8h, v0\.h\[3\] + *[0-9a-f]+: 4f706800 smlsl2 v0\.4s, v0\.8h, v0\.h\[7\] + *[0-9a-f]+: 4f806000 smlsl2 v0\.2d, v0\.4s, v0\.s\[0\] + *[0-9a-f]+: 4f80601f smlsl2 v31\.2d, v0\.4s, v0\.s\[0\] + *[0-9a-f]+: 4f8063e0 smlsl2 v0\.2d, v31\.4s, v0\.s\[0\] + *[0-9a-f]+: 4f9f6000 smlsl2 v0\.2d, v0\.4s, v31\.s\[0\] + *[0-9a-f]+: 4fa06000 smlsl2 v0\.2d, v0\.4s, v0\.s\[1\] + *[0-9a-f]+: 4fa06800 smlsl2 v0\.2d, v0\.4s, v0\.s\[3\] + *[0-9a-f]+: 0f407000 sqdmlsl v0\.4s, v0\.4h, v0\.h\[0\] + *[0-9a-f]+: 0f40701f sqdmlsl v31\.4s, v0\.4h, v0\.h\[0\] + *[0-9a-f]+: 0f4073e0 sqdmlsl v0\.4s, v31\.4h, v0\.h\[0\] + *[0-9a-f]+: 0f4f7000 sqdmlsl v0\.4s, v0\.4h, v15\.h\[0\] + *[0-9a-f]+: 0f507000 sqdmlsl v0\.4s, v0\.4h, v0\.h\[1\] + *[0-9a-f]+: 0f707000 sqdmlsl v0\.4s, v0\.4h, v0\.h\[3\] + *[0-9a-f]+: 0f707800 sqdmlsl v0\.4s, v0\.4h, v0\.h\[7\] + *[0-9a-f]+: 0f807000 sqdmlsl v0\.2d, v0\.2s, v0\.s\[0\] + *[0-9a-f]+: 0f80701f sqdmlsl v31\.2d, v0\.2s, v0\.s\[0\] + *[0-9a-f]+: 0f8073e0 sqdmlsl v0\.2d, v31\.2s, v0\.s\[0\] + *[0-9a-f]+: 0f9f7000 sqdmlsl v0\.2d, v0\.2s, v31\.s\[0\] + *[0-9a-f]+: 0fa07000 sqdmlsl v0\.2d, v0\.2s, v0\.s\[1\] + *[0-9a-f]+: 0fa07800 sqdmlsl v0\.2d, v0\.2s, v0\.s\[3\] + *[0-9a-f]+: 4f407000 sqdmlsl2 v0\.4s, v0\.8h, v0\.h\[0\] + *[0-9a-f]+: 4f40701f sqdmlsl2 v31\.4s, v0\.8h, v0\.h\[0\] + *[0-9a-f]+: 4f4073e0 sqdmlsl2 v0\.4s, v31\.8h, v0\.h\[0\] + *[0-9a-f]+: 4f4f7000 sqdmlsl2 v0\.4s, v0\.8h, v15\.h\[0\] + *[0-9a-f]+: 4f507000 sqdmlsl2 v0\.4s, v0\.8h, v0\.h\[1\] + *[0-9a-f]+: 4f707000 sqdmlsl2 v0\.4s, v0\.8h, v0\.h\[3\] + *[0-9a-f]+: 4f707800 sqdmlsl2 v0\.4s, v0\.8h, v0\.h\[7\] + *[0-9a-f]+: 4f807000 sqdmlsl2 v0\.2d, v0\.4s, v0\.s\[0\] + *[0-9a-f]+: 4f80701f sqdmlsl2 v31\.2d, v0\.4s, v0\.s\[0\] + *[0-9a-f]+: 4f8073e0 sqdmlsl2 v0\.2d, v31\.4s, v0\.s\[0\] + *[0-9a-f]+: 4f9f7000 sqdmlsl2 v0\.2d, v0\.4s, v31\.s\[0\] + *[0-9a-f]+: 4fa07000 sqdmlsl2 v0\.2d, v0\.4s, v0\.s\[1\] + *[0-9a-f]+: 4fa07800 sqdmlsl2 v0\.2d, v0\.4s, v0\.s\[3\] + *[0-9a-f]+: 0f408000 mul v0\.4h, v0\.4h, v0\.h\[0\] + *[0-9a-f]+: 0f40801f mul v31\.4h, v0\.4h, v0\.h\[0\] + *[0-9a-f]+: 0f4083e0 mul v0\.4h, v31\.4h, v0\.h\[0\] + *[0-9a-f]+: 0f4f8000 mul v0\.4h, v0\.4h, v15\.h\[0\] + *[0-9a-f]+: 0f508000 mul v0\.4h, v0\.4h, v0\.h\[1\] + *[0-9a-f]+: 0f708000 mul v0\.4h, v0\.4h, v0\.h\[3\] + *[0-9a-f]+: 0f708800 mul v0\.4h, v0\.4h, v0\.h\[7\] + *[0-9a-f]+: 0f808000 mul v0\.2s, v0\.2s, v0\.s\[0\] + *[0-9a-f]+: 0f80801f mul v31\.2s, v0\.2s, v0\.s\[0\] + *[0-9a-f]+: 0f8083e0 mul v0\.2s, v31\.2s, v0\.s\[0\] + *[0-9a-f]+: 0f9f8000 mul v0\.2s, v0\.2s, v31\.s\[0\] + *[0-9a-f]+: 0fa08000 mul v0\.2s, v0\.2s, v0\.s\[1\] + *[0-9a-f]+: 0fa08800 mul v0\.2s, v0\.2s, v0\.s\[3\] + *[0-9a-f]+: 4f408000 mul v0\.8h, v0\.8h, v0\.h\[0\] + *[0-9a-f]+: 4f40801f mul v31\.8h, v0\.8h, v0\.h\[0\] + *[0-9a-f]+: 4f4083e0 mul v0\.8h, v31\.8h, v0\.h\[0\] + *[0-9a-f]+: 4f4f8000 mul v0\.8h, v0\.8h, v15\.h\[0\] + *[0-9a-f]+: 4f508000 mul v0\.8h, v0\.8h, v0\.h\[1\] + *[0-9a-f]+: 4f708000 mul v0\.8h, v0\.8h, v0\.h\[3\] + *[0-9a-f]+: 4f708800 mul v0\.8h, v0\.8h, v0\.h\[7\] + *[0-9a-f]+: 4f808000 mul v0\.4s, v0\.4s, v0\.s\[0\] + *[0-9a-f]+: 4f80801f mul v31\.4s, v0\.4s, v0\.s\[0\] + *[0-9a-f]+: 4f8083e0 mul v0\.4s, v31\.4s, v0\.s\[0\] + *[0-9a-f]+: 4f9f8000 mul v0\.4s, v0\.4s, v31\.s\[0\] + *[0-9a-f]+: 4fa08000 mul v0\.4s, v0\.4s, v0\.s\[1\] + *[0-9a-f]+: 4fa08800 mul v0\.4s, v0\.4s, v0\.s\[3\] + *[0-9a-f]+: 0f40a000 smull v0\.4s, v0\.4h, v0\.h\[0\] + *[0-9a-f]+: 0f40a01f smull v31\.4s, v0\.4h, v0\.h\[0\] + *[0-9a-f]+: 0f40a3e0 smull v0\.4s, v31\.4h, v0\.h\[0\] + *[0-9a-f]+: 0f4fa000 smull v0\.4s, v0\.4h, v15\.h\[0\] + *[0-9a-f]+: 0f50a000 smull v0\.4s, v0\.4h, v0\.h\[1\] + *[0-9a-f]+: 0f70a000 smull v0\.4s, v0\.4h, v0\.h\[3\] + *[0-9a-f]+: 0f70a800 smull v0\.4s, v0\.4h, v0\.h\[7\] + *[0-9a-f]+: 0f80a000 smull v0\.2d, v0\.2s, v0\.s\[0\] + *[0-9a-f]+: 0f80a01f smull v31\.2d, v0\.2s, v0\.s\[0\] + *[0-9a-f]+: 0f80a3e0 smull v0\.2d, v31\.2s, v0\.s\[0\] + *[0-9a-f]+: 0f9fa000 smull v0\.2d, v0\.2s, v31\.s\[0\] + *[0-9a-f]+: 0fa0a000 smull v0\.2d, v0\.2s, v0\.s\[1\] + *[0-9a-f]+: 0fa0a800 smull v0\.2d, v0\.2s, v0\.s\[3\] + *[0-9a-f]+: 4f40a000 smull2 v0\.4s, v0\.8h, v0\.h\[0\] + *[0-9a-f]+: 4f40a01f smull2 v31\.4s, v0\.8h, v0\.h\[0\] + *[0-9a-f]+: 4f40a3e0 smull2 v0\.4s, v31\.8h, v0\.h\[0\] + *[0-9a-f]+: 4f4fa000 smull2 v0\.4s, v0\.8h, v15\.h\[0\] + *[0-9a-f]+: 4f50a000 smull2 v0\.4s, v0\.8h, v0\.h\[1\] + *[0-9a-f]+: 4f70a000 smull2 v0\.4s, v0\.8h, v0\.h\[3\] + *[0-9a-f]+: 4f70a800 smull2 v0\.4s, v0\.8h, v0\.h\[7\] + *[0-9a-f]+: 4f80a000 smull2 v0\.2d, v0\.4s, v0\.s\[0\] + *[0-9a-f]+: 4f80a01f smull2 v31\.2d, v0\.4s, v0\.s\[0\] + *[0-9a-f]+: 4f80a3e0 smull2 v0\.2d, v31\.4s, v0\.s\[0\] + *[0-9a-f]+: 4f9fa000 smull2 v0\.2d, v0\.4s, v31\.s\[0\] + *[0-9a-f]+: 4fa0a000 smull2 v0\.2d, v0\.4s, v0\.s\[1\] + *[0-9a-f]+: 4fa0a800 smull2 v0\.2d, v0\.4s, v0\.s\[3\] + *[0-9a-f]+: 0f40b000 sqdmull v0\.4s, v0\.4h, v0\.h\[0\] + *[0-9a-f]+: 0f40b01f sqdmull v31\.4s, v0\.4h, v0\.h\[0\] + *[0-9a-f]+: 0f40b3e0 sqdmull v0\.4s, v31\.4h, v0\.h\[0\] + *[0-9a-f]+: 0f4fb000 sqdmull v0\.4s, v0\.4h, v15\.h\[0\] + *[0-9a-f]+: 0f50b000 sqdmull v0\.4s, v0\.4h, v0\.h\[1\] + *[0-9a-f]+: 0f70b000 sqdmull v0\.4s, v0\.4h, v0\.h\[3\] + *[0-9a-f]+: 0f70b800 sqdmull v0\.4s, v0\.4h, v0\.h\[7\] + *[0-9a-f]+: 0f80b000 sqdmull v0\.2d, v0\.2s, v0\.s\[0\] + *[0-9a-f]+: 0f80b01f sqdmull v31\.2d, v0\.2s, v0\.s\[0\] + *[0-9a-f]+: 0f80b3e0 sqdmull v0\.2d, v31\.2s, v0\.s\[0\] + *[0-9a-f]+: 0f9fb000 sqdmull v0\.2d, v0\.2s, v31\.s\[0\] + *[0-9a-f]+: 0fa0b000 sqdmull v0\.2d, v0\.2s, v0\.s\[1\] + *[0-9a-f]+: 0fa0b800 sqdmull v0\.2d, v0\.2s, v0\.s\[3\] + *[0-9a-f]+: 4f40b000 sqdmull2 v0\.4s, v0\.8h, v0\.h\[0\] + *[0-9a-f]+: 4f40b01f sqdmull2 v31\.4s, v0\.8h, v0\.h\[0\] + *[0-9a-f]+: 4f40b3e0 sqdmull2 v0\.4s, v31\.8h, v0\.h\[0\] + *[0-9a-f]+: 4f4fb000 sqdmull2 v0\.4s, v0\.8h, v15\.h\[0\] + *[0-9a-f]+: 4f50b000 sqdmull2 v0\.4s, v0\.8h, v0\.h\[1\] + *[0-9a-f]+: 4f70b000 sqdmull2 v0\.4s, v0\.8h, v0\.h\[3\] + *[0-9a-f]+: 4f70b800 sqdmull2 v0\.4s, v0\.8h, v0\.h\[7\] + *[0-9a-f]+: 4f80b000 sqdmull2 v0\.2d, v0\.4s, v0\.s\[0\] + *[0-9a-f]+: 4f80b01f sqdmull2 v31\.2d, v0\.4s, v0\.s\[0\] + *[0-9a-f]+: 4f80b3e0 sqdmull2 v0\.2d, v31\.4s, v0\.s\[0\] + *[0-9a-f]+: 4f9fb000 sqdmull2 v0\.2d, v0\.4s, v31\.s\[0\] + *[0-9a-f]+: 4fa0b000 sqdmull2 v0\.2d, v0\.4s, v0\.s\[1\] + *[0-9a-f]+: 4fa0b800 sqdmull2 v0\.2d, v0\.4s, v0\.s\[3\] + *[0-9a-f]+: 0f40c000 sqdmulh v0\.4h, v0\.4h, v0\.h\[0\] + *[0-9a-f]+: 0f40c01f sqdmulh v31\.4h, v0\.4h, v0\.h\[0\] + *[0-9a-f]+: 0f40c3e0 sqdmulh v0\.4h, v31\.4h, v0\.h\[0\] + *[0-9a-f]+: 0f4fc000 sqdmulh v0\.4h, v0\.4h, v15\.h\[0\] + *[0-9a-f]+: 0f50c000 sqdmulh v0\.4h, v0\.4h, v0\.h\[1\] + *[0-9a-f]+: 0f70c000 sqdmulh v0\.4h, v0\.4h, v0\.h\[3\] + *[0-9a-f]+: 0f70c800 sqdmulh v0\.4h, v0\.4h, v0\.h\[7\] + *[0-9a-f]+: 0f80c000 sqdmulh v0\.2s, v0\.2s, v0\.s\[0\] + *[0-9a-f]+: 0f80c01f sqdmulh v31\.2s, v0\.2s, v0\.s\[0\] + *[0-9a-f]+: 0f80c3e0 sqdmulh v0\.2s, v31\.2s, v0\.s\[0\] + *[0-9a-f]+: 0f9fc000 sqdmulh v0\.2s, v0\.2s, v31\.s\[0\] + *[0-9a-f]+: 0fa0c000 sqdmulh v0\.2s, v0\.2s, v0\.s\[1\] + *[0-9a-f]+: 0fa0c800 sqdmulh v0\.2s, v0\.2s, v0\.s\[3\] + *[0-9a-f]+: 4f40c000 sqdmulh v0\.8h, v0\.8h, v0\.h\[0\] + *[0-9a-f]+: 4f40c01f sqdmulh v31\.8h, v0\.8h, v0\.h\[0\] + *[0-9a-f]+: 4f40c3e0 sqdmulh v0\.8h, v31\.8h, v0\.h\[0\] + *[0-9a-f]+: 4f4fc000 sqdmulh v0\.8h, v0\.8h, v15\.h\[0\] + *[0-9a-f]+: 4f50c000 sqdmulh v0\.8h, v0\.8h, v0\.h\[1\] + *[0-9a-f]+: 4f70c000 sqdmulh v0\.8h, v0\.8h, v0\.h\[3\] + *[0-9a-f]+: 4f70c800 sqdmulh v0\.8h, v0\.8h, v0\.h\[7\] + *[0-9a-f]+: 4f80c000 sqdmulh v0\.4s, v0\.4s, v0\.s\[0\] + *[0-9a-f]+: 4f80c01f sqdmulh v31\.4s, v0\.4s, v0\.s\[0\] + *[0-9a-f]+: 4f80c3e0 sqdmulh v0\.4s, v31\.4s, v0\.s\[0\] + *[0-9a-f]+: 4f9fc000 sqdmulh v0\.4s, v0\.4s, v31\.s\[0\] + *[0-9a-f]+: 4fa0c000 sqdmulh v0\.4s, v0\.4s, v0\.s\[1\] + *[0-9a-f]+: 4fa0c800 sqdmulh v0\.4s, v0\.4s, v0\.s\[3\] + *[0-9a-f]+: 0f40d000 sqrdmulh v0\.4h, v0\.4h, v0\.h\[0\] + *[0-9a-f]+: 0f40d01f sqrdmulh v31\.4h, v0\.4h, v0\.h\[0\] + *[0-9a-f]+: 0f40d3e0 sqrdmulh v0\.4h, v31\.4h, v0\.h\[0\] + *[0-9a-f]+: 0f4fd000 sqrdmulh v0\.4h, v0\.4h, v15\.h\[0\] + *[0-9a-f]+: 0f50d000 sqrdmulh v0\.4h, v0\.4h, v0\.h\[1\] + *[0-9a-f]+: 0f70d000 sqrdmulh v0\.4h, v0\.4h, v0\.h\[3\] + *[0-9a-f]+: 0f70d800 sqrdmulh v0\.4h, v0\.4h, v0\.h\[7\] + *[0-9a-f]+: 0f80d000 sqrdmulh v0\.2s, v0\.2s, v0\.s\[0\] + *[0-9a-f]+: 0f80d01f sqrdmulh v31\.2s, v0\.2s, v0\.s\[0\] + *[0-9a-f]+: 0f80d3e0 sqrdmulh v0\.2s, v31\.2s, v0\.s\[0\] + *[0-9a-f]+: 0f9fd000 sqrdmulh v0\.2s, v0\.2s, v31\.s\[0\] + *[0-9a-f]+: 0fa0d000 sqrdmulh v0\.2s, v0\.2s, v0\.s\[1\] + *[0-9a-f]+: 0fa0d800 sqrdmulh v0\.2s, v0\.2s, v0\.s\[3\] + *[0-9a-f]+: 4f40d000 sqrdmulh v0\.8h, v0\.8h, v0\.h\[0\] + *[0-9a-f]+: 4f40d01f sqrdmulh v31\.8h, v0\.8h, v0\.h\[0\] + *[0-9a-f]+: 4f40d3e0 sqrdmulh v0\.8h, v31\.8h, v0\.h\[0\] + *[0-9a-f]+: 4f4fd000 sqrdmulh v0\.8h, v0\.8h, v15\.h\[0\] + *[0-9a-f]+: 4f50d000 sqrdmulh v0\.8h, v0\.8h, v0\.h\[1\] + *[0-9a-f]+: 4f70d000 sqrdmulh v0\.8h, v0\.8h, v0\.h\[3\] + *[0-9a-f]+: 4f70d800 sqrdmulh v0\.8h, v0\.8h, v0\.h\[7\] + *[0-9a-f]+: 4f80d000 sqrdmulh v0\.4s, v0\.4s, v0\.s\[0\] + *[0-9a-f]+: 4f80d01f sqrdmulh v31\.4s, v0\.4s, v0\.s\[0\] + *[0-9a-f]+: 4f80d3e0 sqrdmulh v0\.4s, v31\.4s, v0\.s\[0\] + *[0-9a-f]+: 4f9fd000 sqrdmulh v0\.4s, v0\.4s, v31\.s\[0\] + *[0-9a-f]+: 4fa0d000 sqrdmulh v0\.4s, v0\.4s, v0\.s\[1\] + *[0-9a-f]+: 4fa0d800 sqrdmulh v0\.4s, v0\.4s, v0\.s\[3\] + *[0-9a-f]+: 2f400000 mla v0\.4h, v0\.4h, v0\.h\[0\] + *[0-9a-f]+: 2f40001f mla v31\.4h, v0\.4h, v0\.h\[0\] + *[0-9a-f]+: 2f4003e0 mla v0\.4h, v31\.4h, v0\.h\[0\] + *[0-9a-f]+: 2f4f0000 mla v0\.4h, v0\.4h, v15\.h\[0\] + *[0-9a-f]+: 2f500000 mla v0\.4h, v0\.4h, v0\.h\[1\] + *[0-9a-f]+: 2f700000 mla v0\.4h, v0\.4h, v0\.h\[3\] + *[0-9a-f]+: 2f700800 mla v0\.4h, v0\.4h, v0\.h\[7\] + *[0-9a-f]+: 2f800000 mla v0\.2s, v0\.2s, v0\.s\[0\] + *[0-9a-f]+: 2f80001f mla v31\.2s, v0\.2s, v0\.s\[0\] + *[0-9a-f]+: 2f8003e0 mla v0\.2s, v31\.2s, v0\.s\[0\] + *[0-9a-f]+: 2f9f0000 mla v0\.2s, v0\.2s, v31\.s\[0\] + *[0-9a-f]+: 2fa00000 mla v0\.2s, v0\.2s, v0\.s\[1\] + *[0-9a-f]+: 2fa00800 mla v0\.2s, v0\.2s, v0\.s\[3\] + *[0-9a-f]+: 6f400000 mla v0\.8h, v0\.8h, v0\.h\[0\] + *[0-9a-f]+: 6f40001f mla v31\.8h, v0\.8h, v0\.h\[0\] + *[0-9a-f]+: 6f4003e0 mla v0\.8h, v31\.8h, v0\.h\[0\] + *[0-9a-f]+: 6f4f0000 mla v0\.8h, v0\.8h, v15\.h\[0\] + *[0-9a-f]+: 6f500000 mla v0\.8h, v0\.8h, v0\.h\[1\] + *[0-9a-f]+: 6f700000 mla v0\.8h, v0\.8h, v0\.h\[3\] + *[0-9a-f]+: 6f700800 mla v0\.8h, v0\.8h, v0\.h\[7\] + *[0-9a-f]+: 6f800000 mla v0\.4s, v0\.4s, v0\.s\[0\] + *[0-9a-f]+: 6f80001f mla v31\.4s, v0\.4s, v0\.s\[0\] + *[0-9a-f]+: 6f8003e0 mla v0\.4s, v31\.4s, v0\.s\[0\] + *[0-9a-f]+: 6f9f0000 mla v0\.4s, v0\.4s, v31\.s\[0\] + *[0-9a-f]+: 6fa00000 mla v0\.4s, v0\.4s, v0\.s\[1\] + *[0-9a-f]+: 6fa00800 mla v0\.4s, v0\.4s, v0\.s\[3\] + *[0-9a-f]+: 2f402000 umlal v0\.4s, v0\.4h, v0\.h\[0\] + *[0-9a-f]+: 2f40201f umlal v31\.4s, v0\.4h, v0\.h\[0\] + *[0-9a-f]+: 2f4023e0 umlal v0\.4s, v31\.4h, v0\.h\[0\] + *[0-9a-f]+: 2f4f2000 umlal v0\.4s, v0\.4h, v15\.h\[0\] + *[0-9a-f]+: 2f502000 umlal v0\.4s, v0\.4h, v0\.h\[1\] + *[0-9a-f]+: 2f702000 umlal v0\.4s, v0\.4h, v0\.h\[3\] + *[0-9a-f]+: 2f702800 umlal v0\.4s, v0\.4h, v0\.h\[7\] + *[0-9a-f]+: 2f802000 umlal v0\.2d, v0\.2s, v0\.s\[0\] + *[0-9a-f]+: 2f80201f umlal v31\.2d, v0\.2s, v0\.s\[0\] + *[0-9a-f]+: 2f8023e0 umlal v0\.2d, v31\.2s, v0\.s\[0\] + *[0-9a-f]+: 2f9f2000 umlal v0\.2d, v0\.2s, v31\.s\[0\] + *[0-9a-f]+: 2fa02000 umlal v0\.2d, v0\.2s, v0\.s\[1\] + *[0-9a-f]+: 2fa02800 umlal v0\.2d, v0\.2s, v0\.s\[3\] + *[0-9a-f]+: 6f402000 umlal2 v0\.4s, v0\.8h, v0\.h\[0\] + *[0-9a-f]+: 6f40201f umlal2 v31\.4s, v0\.8h, v0\.h\[0\] + *[0-9a-f]+: 6f4023e0 umlal2 v0\.4s, v31\.8h, v0\.h\[0\] + *[0-9a-f]+: 6f4f2000 umlal2 v0\.4s, v0\.8h, v15\.h\[0\] + *[0-9a-f]+: 6f502000 umlal2 v0\.4s, v0\.8h, v0\.h\[1\] + *[0-9a-f]+: 6f702000 umlal2 v0\.4s, v0\.8h, v0\.h\[3\] + *[0-9a-f]+: 6f702800 umlal2 v0\.4s, v0\.8h, v0\.h\[7\] + *[0-9a-f]+: 6f802000 umlal2 v0\.2d, v0\.4s, v0\.s\[0\] + *[0-9a-f]+: 6f80201f umlal2 v31\.2d, v0\.4s, v0\.s\[0\] + *[0-9a-f]+: 6f8023e0 umlal2 v0\.2d, v31\.4s, v0\.s\[0\] + *[0-9a-f]+: 6f9f2000 umlal2 v0\.2d, v0\.4s, v31\.s\[0\] + *[0-9a-f]+: 6fa02000 umlal2 v0\.2d, v0\.4s, v0\.s\[1\] + *[0-9a-f]+: 6fa02800 umlal2 v0\.2d, v0\.4s, v0\.s\[3\] + *[0-9a-f]+: 2f404000 mls v0\.4h, v0\.4h, v0\.h\[0\] + *[0-9a-f]+: 2f40401f mls v31\.4h, v0\.4h, v0\.h\[0\] + *[0-9a-f]+: 2f4043e0 mls v0\.4h, v31\.4h, v0\.h\[0\] + *[0-9a-f]+: 2f4f4000 mls v0\.4h, v0\.4h, v15\.h\[0\] + *[0-9a-f]+: 2f504000 mls v0\.4h, v0\.4h, v0\.h\[1\] + *[0-9a-f]+: 2f704000 mls v0\.4h, v0\.4h, v0\.h\[3\] + *[0-9a-f]+: 2f704800 mls v0\.4h, v0\.4h, v0\.h\[7\] + *[0-9a-f]+: 2f804000 mls v0\.2s, v0\.2s, v0\.s\[0\] + *[0-9a-f]+: 2f80401f mls v31\.2s, v0\.2s, v0\.s\[0\] + *[0-9a-f]+: 2f8043e0 mls v0\.2s, v31\.2s, v0\.s\[0\] + *[0-9a-f]+: 2f9f4000 mls v0\.2s, v0\.2s, v31\.s\[0\] + *[0-9a-f]+: 2fa04000 mls v0\.2s, v0\.2s, v0\.s\[1\] + *[0-9a-f]+: 2fa04800 mls v0\.2s, v0\.2s, v0\.s\[3\] + *[0-9a-f]+: 6f404000 mls v0\.8h, v0\.8h, v0\.h\[0\] + *[0-9a-f]+: 6f40401f mls v31\.8h, v0\.8h, v0\.h\[0\] + *[0-9a-f]+: 6f4043e0 mls v0\.8h, v31\.8h, v0\.h\[0\] + *[0-9a-f]+: 6f4f4000 mls v0\.8h, v0\.8h, v15\.h\[0\] + *[0-9a-f]+: 6f504000 mls v0\.8h, v0\.8h, v0\.h\[1\] + *[0-9a-f]+: 6f704000 mls v0\.8h, v0\.8h, v0\.h\[3\] + *[0-9a-f]+: 6f704800 mls v0\.8h, v0\.8h, v0\.h\[7\] + *[0-9a-f]+: 6f804000 mls v0\.4s, v0\.4s, v0\.s\[0\] + *[0-9a-f]+: 6f80401f mls v31\.4s, v0\.4s, v0\.s\[0\] + *[0-9a-f]+: 6f8043e0 mls v0\.4s, v31\.4s, v0\.s\[0\] + *[0-9a-f]+: 6f9f4000 mls v0\.4s, v0\.4s, v31\.s\[0\] + *[0-9a-f]+: 6fa04000 mls v0\.4s, v0\.4s, v0\.s\[1\] + *[0-9a-f]+: 6fa04800 mls v0\.4s, v0\.4s, v0\.s\[3\] + *[0-9a-f]+: 2f406000 umlsl v0\.4s, v0\.4h, v0\.h\[0\] + *[0-9a-f]+: 2f40601f umlsl v31\.4s, v0\.4h, v0\.h\[0\] + *[0-9a-f]+: 2f4063e0 umlsl v0\.4s, v31\.4h, v0\.h\[0\] + *[0-9a-f]+: 2f4f6000 umlsl v0\.4s, v0\.4h, v15\.h\[0\] + *[0-9a-f]+: 2f506000 umlsl v0\.4s, v0\.4h, v0\.h\[1\] + *[0-9a-f]+: 2f706000 umlsl v0\.4s, v0\.4h, v0\.h\[3\] + *[0-9a-f]+: 2f706800 umlsl v0\.4s, v0\.4h, v0\.h\[7\] + *[0-9a-f]+: 2f806000 umlsl v0\.2d, v0\.2s, v0\.s\[0\] + *[0-9a-f]+: 2f80601f umlsl v31\.2d, v0\.2s, v0\.s\[0\] + *[0-9a-f]+: 2f8063e0 umlsl v0\.2d, v31\.2s, v0\.s\[0\] + *[0-9a-f]+: 2f9f6000 umlsl v0\.2d, v0\.2s, v31\.s\[0\] + *[0-9a-f]+: 2fa06000 umlsl v0\.2d, v0\.2s, v0\.s\[1\] + *[0-9a-f]+: 2fa06800 umlsl v0\.2d, v0\.2s, v0\.s\[3\] + *[0-9a-f]+: 6f406000 umlsl2 v0\.4s, v0\.8h, v0\.h\[0\] + *[0-9a-f]+: 6f40601f umlsl2 v31\.4s, v0\.8h, v0\.h\[0\] + *[0-9a-f]+: 6f4063e0 umlsl2 v0\.4s, v31\.8h, v0\.h\[0\] + *[0-9a-f]+: 6f4f6000 umlsl2 v0\.4s, v0\.8h, v15\.h\[0\] + *[0-9a-f]+: 6f506000 umlsl2 v0\.4s, v0\.8h, v0\.h\[1\] + *[0-9a-f]+: 6f706000 umlsl2 v0\.4s, v0\.8h, v0\.h\[3\] + *[0-9a-f]+: 6f706800 umlsl2 v0\.4s, v0\.8h, v0\.h\[7\] + *[0-9a-f]+: 6f806000 umlsl2 v0\.2d, v0\.4s, v0\.s\[0\] + *[0-9a-f]+: 6f80601f umlsl2 v31\.2d, v0\.4s, v0\.s\[0\] + *[0-9a-f]+: 6f8063e0 umlsl2 v0\.2d, v31\.4s, v0\.s\[0\] + *[0-9a-f]+: 6f9f6000 umlsl2 v0\.2d, v0\.4s, v31\.s\[0\] + *[0-9a-f]+: 6fa06000 umlsl2 v0\.2d, v0\.4s, v0\.s\[1\] + *[0-9a-f]+: 6fa06800 umlsl2 v0\.2d, v0\.4s, v0\.s\[3\] + *[0-9a-f]+: 2f40a000 umull v0\.4s, v0\.4h, v0\.h\[0\] + *[0-9a-f]+: 2f40a01f umull v31\.4s, v0\.4h, v0\.h\[0\] + *[0-9a-f]+: 2f40a3e0 umull v0\.4s, v31\.4h, v0\.h\[0\] + *[0-9a-f]+: 2f4fa000 umull v0\.4s, v0\.4h, v15\.h\[0\] + *[0-9a-f]+: 2f50a000 umull v0\.4s, v0\.4h, v0\.h\[1\] + *[0-9a-f]+: 2f70a000 umull v0\.4s, v0\.4h, v0\.h\[3\] + *[0-9a-f]+: 2f70a800 umull v0\.4s, v0\.4h, v0\.h\[7\] + *[0-9a-f]+: 2f80a000 umull v0\.2d, v0\.2s, v0\.s\[0\] + *[0-9a-f]+: 2f80a01f umull v31\.2d, v0\.2s, v0\.s\[0\] + *[0-9a-f]+: 2f80a3e0 umull v0\.2d, v31\.2s, v0\.s\[0\] + *[0-9a-f]+: 2f9fa000 umull v0\.2d, v0\.2s, v31\.s\[0\] + *[0-9a-f]+: 2fa0a000 umull v0\.2d, v0\.2s, v0\.s\[1\] + *[0-9a-f]+: 2fa0a800 umull v0\.2d, v0\.2s, v0\.s\[3\] + *[0-9a-f]+: 6f40a000 umull2 v0\.4s, v0\.8h, v0\.h\[0\] + *[0-9a-f]+: 6f40a01f umull2 v31\.4s, v0\.8h, v0\.h\[0\] + *[0-9a-f]+: 6f40a3e0 umull2 v0\.4s, v31\.8h, v0\.h\[0\] + *[0-9a-f]+: 6f4fa000 umull2 v0\.4s, v0\.8h, v15\.h\[0\] + *[0-9a-f]+: 6f50a000 umull2 v0\.4s, v0\.8h, v0\.h\[1\] + *[0-9a-f]+: 6f70a000 umull2 v0\.4s, v0\.8h, v0\.h\[3\] + *[0-9a-f]+: 6f70a800 umull2 v0\.4s, v0\.8h, v0\.h\[7\] + *[0-9a-f]+: 6f80a000 umull2 v0\.2d, v0\.4s, v0\.s\[0\] + *[0-9a-f]+: 6f80a01f umull2 v31\.2d, v0\.4s, v0\.s\[0\] + *[0-9a-f]+: 6f80a3e0 umull2 v0\.2d, v31\.4s, v0\.s\[0\] + *[0-9a-f]+: 6f9fa000 umull2 v0\.2d, v0\.4s, v31\.s\[0\] + *[0-9a-f]+: 6fa0a000 umull2 v0\.2d, v0\.4s, v0\.s\[1\] + *[0-9a-f]+: 6fa0a800 umull2 v0\.2d, v0\.4s, v0\.s\[3\] diff --git a/gas/testsuite/gas/aarch64/advsimd-mul-element.s b/gas/testsuite/gas/aarch64/advsimd-mul-element.s new file mode 100644 index 0000000..bcb0da3 --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsimd-mul-element.s @@ -0,0 +1,377 @@ + smlal v0.4s, v0.4h, v0.h[0] + smlal v31.4s, v0.4h, v0.h[0] + smlal v0.4s, v31.4h, v0.h[0] + smlal v0.4s, v0.4h, v15.h[0] + smlal v0.4s, v0.4h, v0.h[1] + smlal v0.4s, v0.4h, v0.h[3] + smlal v0.4s, v0.4h, v0.h[7] + smlal v0.2d, v0.2s, v0.s[0] + smlal v31.2d, v0.2s, v0.s[0] + smlal v0.2d, v31.2s, v0.s[0] + smlal v0.2d, v0.2s, v31.s[0] + smlal v0.2d, v0.2s, v0.s[1] + smlal v0.2d, v0.2s, v0.s[3] + smlal2 v0.4s, v0.8h, v0.h[0] + smlal2 v31.4s, v0.8h, v0.h[0] + smlal2 v0.4s, v31.8h, v0.h[0] + smlal2 v0.4s, v0.8h, v15.h[0] + smlal2 v0.4s, v0.8h, v0.h[1] + smlal2 v0.4s, v0.8h, v0.h[3] + smlal2 v0.4s, v0.8h, v0.h[7] + smlal2 v0.2d, v0.4s, v0.s[0] + smlal2 v31.2d, v0.4s, v0.s[0] + smlal2 v0.2d, v31.4s, v0.s[0] + smlal2 v0.2d, v0.4s, v31.s[0] + smlal2 v0.2d, v0.4s, v0.s[1] + smlal2 v0.2d, v0.4s, v0.s[3] + + sqdmlal v0.4s, v0.4h, v0.h[0] + sqdmlal v31.4s, v0.4h, v0.h[0] + sqdmlal v0.4s, v31.4h, v0.h[0] + sqdmlal v0.4s, v0.4h, v15.h[0] + sqdmlal v0.4s, v0.4h, v0.h[1] + sqdmlal v0.4s, v0.4h, v0.h[3] + sqdmlal v0.4s, v0.4h, v0.h[7] + sqdmlal v0.2d, v0.2s, v0.s[0] + sqdmlal v31.2d, v0.2s, v0.s[0] + sqdmlal v0.2d, v31.2s, v0.s[0] + sqdmlal v0.2d, v0.2s, v31.s[0] + sqdmlal v0.2d, v0.2s, v0.s[1] + sqdmlal v0.2d, v0.2s, v0.s[3] + sqdmlal2 v0.4s, v0.8h, v0.h[0] + sqdmlal2 v31.4s, v0.8h, v0.h[0] + sqdmlal2 v0.4s, v31.8h, v0.h[0] + sqdmlal2 v0.4s, v0.8h, v15.h[0] + sqdmlal2 v0.4s, v0.8h, v0.h[1] + sqdmlal2 v0.4s, v0.8h, v0.h[3] + sqdmlal2 v0.4s, v0.8h, v0.h[7] + sqdmlal2 v0.2d, v0.4s, v0.s[0] + sqdmlal2 v31.2d, v0.4s, v0.s[0] + sqdmlal2 v0.2d, v31.4s, v0.s[0] + sqdmlal2 v0.2d, v0.4s, v31.s[0] + sqdmlal2 v0.2d, v0.4s, v0.s[1] + sqdmlal2 v0.2d, v0.4s, v0.s[3] + + smlsl v0.4s, v0.4h, v0.h[0] + smlsl v31.4s, v0.4h, v0.h[0] + smlsl v0.4s, v31.4h, v0.h[0] + smlsl v0.4s, v0.4h, v15.h[0] + smlsl v0.4s, v0.4h, v0.h[1] + smlsl v0.4s, v0.4h, v0.h[3] + smlsl v0.4s, v0.4h, v0.h[7] + smlsl v0.2d, v0.2s, v0.s[0] + smlsl v31.2d, v0.2s, v0.s[0] + smlsl v0.2d, v31.2s, v0.s[0] + smlsl v0.2d, v0.2s, v31.s[0] + smlsl v0.2d, v0.2s, v0.s[1] + smlsl v0.2d, v0.2s, v0.s[3] + smlsl2 v0.4s, v0.8h, v0.h[0] + smlsl2 v31.4s, v0.8h, v0.h[0] + smlsl2 v0.4s, v31.8h, v0.h[0] + smlsl2 v0.4s, v0.8h, v15.h[0] + smlsl2 v0.4s, v0.8h, v0.h[1] + smlsl2 v0.4s, v0.8h, v0.h[3] + smlsl2 v0.4s, v0.8h, v0.h[7] + smlsl2 v0.2d, v0.4s, v0.s[0] + smlsl2 v31.2d, v0.4s, v0.s[0] + smlsl2 v0.2d, v31.4s, v0.s[0] + smlsl2 v0.2d, v0.4s, v31.s[0] + smlsl2 v0.2d, v0.4s, v0.s[1] + smlsl2 v0.2d, v0.4s, v0.s[3] + + sqdmlsl v0.4s, v0.4h, v0.h[0] + sqdmlsl v31.4s, v0.4h, v0.h[0] + sqdmlsl v0.4s, v31.4h, v0.h[0] + sqdmlsl v0.4s, v0.4h, v15.h[0] + sqdmlsl v0.4s, v0.4h, v0.h[1] + sqdmlsl v0.4s, v0.4h, v0.h[3] + sqdmlsl v0.4s, v0.4h, v0.h[7] + sqdmlsl v0.2d, v0.2s, v0.s[0] + sqdmlsl v31.2d, v0.2s, v0.s[0] + sqdmlsl v0.2d, v31.2s, v0.s[0] + sqdmlsl v0.2d, v0.2s, v31.s[0] + sqdmlsl v0.2d, v0.2s, v0.s[1] + sqdmlsl v0.2d, v0.2s, v0.s[3] + sqdmlsl2 v0.4s, v0.8h, v0.h[0] + sqdmlsl2 v31.4s, v0.8h, v0.h[0] + sqdmlsl2 v0.4s, v31.8h, v0.h[0] + sqdmlsl2 v0.4s, v0.8h, v15.h[0] + sqdmlsl2 v0.4s, v0.8h, v0.h[1] + sqdmlsl2 v0.4s, v0.8h, v0.h[3] + sqdmlsl2 v0.4s, v0.8h, v0.h[7] + sqdmlsl2 v0.2d, v0.4s, v0.s[0] + sqdmlsl2 v31.2d, v0.4s, v0.s[0] + sqdmlsl2 v0.2d, v31.4s, v0.s[0] + sqdmlsl2 v0.2d, v0.4s, v31.s[0] + sqdmlsl2 v0.2d, v0.4s, v0.s[1] + sqdmlsl2 v0.2d, v0.4s, v0.s[3] + + mul v0.4h, v0.4h, v0.h[0] + mul v31.4h, v0.4h, v0.h[0] + mul v0.4h, v31.4h, v0.h[0] + mul v0.4h, v0.4h, v15.h[0] + mul v0.4h, v0.4h, v0.h[1] + mul v0.4h, v0.4h, v0.h[3] + mul v0.4h, v0.4h, v0.h[7] + mul v0.2s, v0.2s, v0.s[0] + mul v31.2s, v0.2s, v0.s[0] + mul v0.2s, v31.2s, v0.s[0] + mul v0.2s, v0.2s, v31.s[0] + mul v0.2s, v0.2s, v0.s[1] + mul v0.2s, v0.2s, v0.s[3] + mul v0.8h, v0.8h, v0.h[0] + mul v31.8h, v0.8h, v0.h[0] + mul v0.8h, v31.8h, v0.h[0] + mul v0.8h, v0.8h, v15.h[0] + mul v0.8h, v0.8h, v0.h[1] + mul v0.8h, v0.8h, v0.h[3] + mul v0.8h, v0.8h, v0.h[7] + mul v0.4s, v0.4s, v0.s[0] + mul v31.4s, v0.4s, v0.s[0] + mul v0.4s, v31.4s, v0.s[0] + mul v0.4s, v0.4s, v31.s[0] + mul v0.4s, v0.4s, v0.s[1] + mul v0.4s, v0.4s, v0.s[3] + + smull v0.4s, v0.4h, v0.h[0] + smull v31.4s, v0.4h, v0.h[0] + smull v0.4s, v31.4h, v0.h[0] + smull v0.4s, v0.4h, v15.h[0] + smull v0.4s, v0.4h, v0.h[1] + smull v0.4s, v0.4h, v0.h[3] + smull v0.4s, v0.4h, v0.h[7] + smull v0.2d, v0.2s, v0.s[0] + smull v31.2d, v0.2s, v0.s[0] + smull v0.2d, v31.2s, v0.s[0] + smull v0.2d, v0.2s, v31.s[0] + smull v0.2d, v0.2s, v0.s[1] + smull v0.2d, v0.2s, v0.s[3] + smull2 v0.4s, v0.8h, v0.h[0] + smull2 v31.4s, v0.8h, v0.h[0] + smull2 v0.4s, v31.8h, v0.h[0] + smull2 v0.4s, v0.8h, v15.h[0] + smull2 v0.4s, v0.8h, v0.h[1] + smull2 v0.4s, v0.8h, v0.h[3] + smull2 v0.4s, v0.8h, v0.h[7] + smull2 v0.2d, v0.4s, v0.s[0] + smull2 v31.2d, v0.4s, v0.s[0] + smull2 v0.2d, v31.4s, v0.s[0] + smull2 v0.2d, v0.4s, v31.s[0] + smull2 v0.2d, v0.4s, v0.s[1] + smull2 v0.2d, v0.4s, v0.s[3] + + sqdmull v0.4s, v0.4h, v0.h[0] + sqdmull v31.4s, v0.4h, v0.h[0] + sqdmull v0.4s, v31.4h, v0.h[0] + sqdmull v0.4s, v0.4h, v15.h[0] + sqdmull v0.4s, v0.4h, v0.h[1] + sqdmull v0.4s, v0.4h, v0.h[3] + sqdmull v0.4s, v0.4h, v0.h[7] + sqdmull v0.2d, v0.2s, v0.s[0] + sqdmull v31.2d, v0.2s, v0.s[0] + sqdmull v0.2d, v31.2s, v0.s[0] + sqdmull v0.2d, v0.2s, v31.s[0] + sqdmull v0.2d, v0.2s, v0.s[1] + sqdmull v0.2d, v0.2s, v0.s[3] + sqdmull2 v0.4s, v0.8h, v0.h[0] + sqdmull2 v31.4s, v0.8h, v0.h[0] + sqdmull2 v0.4s, v31.8h, v0.h[0] + sqdmull2 v0.4s, v0.8h, v15.h[0] + sqdmull2 v0.4s, v0.8h, v0.h[1] + sqdmull2 v0.4s, v0.8h, v0.h[3] + sqdmull2 v0.4s, v0.8h, v0.h[7] + sqdmull2 v0.2d, v0.4s, v0.s[0] + sqdmull2 v31.2d, v0.4s, v0.s[0] + sqdmull2 v0.2d, v31.4s, v0.s[0] + sqdmull2 v0.2d, v0.4s, v31.s[0] + sqdmull2 v0.2d, v0.4s, v0.s[1] + sqdmull2 v0.2d, v0.4s, v0.s[3] + + sqdmulh v0.4h, v0.4h, v0.h[0] + sqdmulh v31.4h, v0.4h, v0.h[0] + sqdmulh v0.4h, v31.4h, v0.h[0] + sqdmulh v0.4h, v0.4h, v15.h[0] + sqdmulh v0.4h, v0.4h, v0.h[1] + sqdmulh v0.4h, v0.4h, v0.h[3] + sqdmulh v0.4h, v0.4h, v0.h[7] + sqdmulh v0.2s, v0.2s, v0.s[0] + sqdmulh v31.2s, v0.2s, v0.s[0] + sqdmulh v0.2s, v31.2s, v0.s[0] + sqdmulh v0.2s, v0.2s, v31.s[0] + sqdmulh v0.2s, v0.2s, v0.s[1] + sqdmulh v0.2s, v0.2s, v0.s[3] + sqdmulh v0.8h, v0.8h, v0.h[0] + sqdmulh v31.8h, v0.8h, v0.h[0] + sqdmulh v0.8h, v31.8h, v0.h[0] + sqdmulh v0.8h, v0.8h, v15.h[0] + sqdmulh v0.8h, v0.8h, v0.h[1] + sqdmulh v0.8h, v0.8h, v0.h[3] + sqdmulh v0.8h, v0.8h, v0.h[7] + sqdmulh v0.4s, v0.4s, v0.s[0] + sqdmulh v31.4s, v0.4s, v0.s[0] + sqdmulh v0.4s, v31.4s, v0.s[0] + sqdmulh v0.4s, v0.4s, v31.s[0] + sqdmulh v0.4s, v0.4s, v0.s[1] + sqdmulh v0.4s, v0.4s, v0.s[3] + + sqrdmulh v0.4h, v0.4h, v0.h[0] + sqrdmulh v31.4h, v0.4h, v0.h[0] + sqrdmulh v0.4h, v31.4h, v0.h[0] + sqrdmulh v0.4h, v0.4h, v15.h[0] + sqrdmulh v0.4h, v0.4h, v0.h[1] + sqrdmulh v0.4h, v0.4h, v0.h[3] + sqrdmulh v0.4h, v0.4h, v0.h[7] + sqrdmulh v0.2s, v0.2s, v0.s[0] + sqrdmulh v31.2s, v0.2s, v0.s[0] + sqrdmulh v0.2s, v31.2s, v0.s[0] + sqrdmulh v0.2s, v0.2s, v31.s[0] + sqrdmulh v0.2s, v0.2s, v0.s[1] + sqrdmulh v0.2s, v0.2s, v0.s[3] + sqrdmulh v0.8h, v0.8h, v0.h[0] + sqrdmulh v31.8h, v0.8h, v0.h[0] + sqrdmulh v0.8h, v31.8h, v0.h[0] + sqrdmulh v0.8h, v0.8h, v15.h[0] + sqrdmulh v0.8h, v0.8h, v0.h[1] + sqrdmulh v0.8h, v0.8h, v0.h[3] + sqrdmulh v0.8h, v0.8h, v0.h[7] + sqrdmulh v0.4s, v0.4s, v0.s[0] + sqrdmulh v31.4s, v0.4s, v0.s[0] + sqrdmulh v0.4s, v31.4s, v0.s[0] + sqrdmulh v0.4s, v0.4s, v31.s[0] + sqrdmulh v0.4s, v0.4s, v0.s[1] + sqrdmulh v0.4s, v0.4s, v0.s[3] + + mla v0.4h, v0.4h, v0.h[0] + mla v31.4h, v0.4h, v0.h[0] + mla v0.4h, v31.4h, v0.h[0] + mla v0.4h, v0.4h, v15.h[0] + mla v0.4h, v0.4h, v0.h[1] + mla v0.4h, v0.4h, v0.h[3] + mla v0.4h, v0.4h, v0.h[7] + mla v0.2s, v0.2s, v0.s[0] + mla v31.2s, v0.2s, v0.s[0] + mla v0.2s, v31.2s, v0.s[0] + mla v0.2s, v0.2s, v31.s[0] + mla v0.2s, v0.2s, v0.s[1] + mla v0.2s, v0.2s, v0.s[3] + mla v0.8h, v0.8h, v0.h[0] + mla v31.8h, v0.8h, v0.h[0] + mla v0.8h, v31.8h, v0.h[0] + mla v0.8h, v0.8h, v15.h[0] + mla v0.8h, v0.8h, v0.h[1] + mla v0.8h, v0.8h, v0.h[3] + mla v0.8h, v0.8h, v0.h[7] + mla v0.4s, v0.4s, v0.s[0] + mla v31.4s, v0.4s, v0.s[0] + mla v0.4s, v31.4s, v0.s[0] + mla v0.4s, v0.4s, v31.s[0] + mla v0.4s, v0.4s, v0.s[1] + mla v0.4s, v0.4s, v0.s[3] + + umlal v0.4s, v0.4h, v0.h[0] + umlal v31.4s, v0.4h, v0.h[0] + umlal v0.4s, v31.4h, v0.h[0] + umlal v0.4s, v0.4h, v15.h[0] + umlal v0.4s, v0.4h, v0.h[1] + umlal v0.4s, v0.4h, v0.h[3] + umlal v0.4s, v0.4h, v0.h[7] + umlal v0.2d, v0.2s, v0.s[0] + umlal v31.2d, v0.2s, v0.s[0] + umlal v0.2d, v31.2s, v0.s[0] + umlal v0.2d, v0.2s, v31.s[0] + umlal v0.2d, v0.2s, v0.s[1] + umlal v0.2d, v0.2s, v0.s[3] + umlal2 v0.4s, v0.8h, v0.h[0] + umlal2 v31.4s, v0.8h, v0.h[0] + umlal2 v0.4s, v31.8h, v0.h[0] + umlal2 v0.4s, v0.8h, v15.h[0] + umlal2 v0.4s, v0.8h, v0.h[1] + umlal2 v0.4s, v0.8h, v0.h[3] + umlal2 v0.4s, v0.8h, v0.h[7] + umlal2 v0.2d, v0.4s, v0.s[0] + umlal2 v31.2d, v0.4s, v0.s[0] + umlal2 v0.2d, v31.4s, v0.s[0] + umlal2 v0.2d, v0.4s, v31.s[0] + umlal2 v0.2d, v0.4s, v0.s[1] + umlal2 v0.2d, v0.4s, v0.s[3] + + mls v0.4h, v0.4h, v0.h[0] + mls v31.4h, v0.4h, v0.h[0] + mls v0.4h, v31.4h, v0.h[0] + mls v0.4h, v0.4h, v15.h[0] + mls v0.4h, v0.4h, v0.h[1] + mls v0.4h, v0.4h, v0.h[3] + mls v0.4h, v0.4h, v0.h[7] + mls v0.2s, v0.2s, v0.s[0] + mls v31.2s, v0.2s, v0.s[0] + mls v0.2s, v31.2s, v0.s[0] + mls v0.2s, v0.2s, v31.s[0] + mls v0.2s, v0.2s, v0.s[1] + mls v0.2s, v0.2s, v0.s[3] + mls v0.8h, v0.8h, v0.h[0] + mls v31.8h, v0.8h, v0.h[0] + mls v0.8h, v31.8h, v0.h[0] + mls v0.8h, v0.8h, v15.h[0] + mls v0.8h, v0.8h, v0.h[1] + mls v0.8h, v0.8h, v0.h[3] + mls v0.8h, v0.8h, v0.h[7] + mls v0.4s, v0.4s, v0.s[0] + mls v31.4s, v0.4s, v0.s[0] + mls v0.4s, v31.4s, v0.s[0] + mls v0.4s, v0.4s, v31.s[0] + mls v0.4s, v0.4s, v0.s[1] + mls v0.4s, v0.4s, v0.s[3] + + umlsl v0.4s, v0.4h, v0.h[0] + umlsl v31.4s, v0.4h, v0.h[0] + umlsl v0.4s, v31.4h, v0.h[0] + umlsl v0.4s, v0.4h, v15.h[0] + umlsl v0.4s, v0.4h, v0.h[1] + umlsl v0.4s, v0.4h, v0.h[3] + umlsl v0.4s, v0.4h, v0.h[7] + umlsl v0.2d, v0.2s, v0.s[0] + umlsl v31.2d, v0.2s, v0.s[0] + umlsl v0.2d, v31.2s, v0.s[0] + umlsl v0.2d, v0.2s, v31.s[0] + umlsl v0.2d, v0.2s, v0.s[1] + umlsl v0.2d, v0.2s, v0.s[3] + umlsl2 v0.4s, v0.8h, v0.h[0] + umlsl2 v31.4s, v0.8h, v0.h[0] + umlsl2 v0.4s, v31.8h, v0.h[0] + umlsl2 v0.4s, v0.8h, v15.h[0] + umlsl2 v0.4s, v0.8h, v0.h[1] + umlsl2 v0.4s, v0.8h, v0.h[3] + umlsl2 v0.4s, v0.8h, v0.h[7] + umlsl2 v0.2d, v0.4s, v0.s[0] + umlsl2 v31.2d, v0.4s, v0.s[0] + umlsl2 v0.2d, v31.4s, v0.s[0] + umlsl2 v0.2d, v0.4s, v31.s[0] + umlsl2 v0.2d, v0.4s, v0.s[1] + umlsl2 v0.2d, v0.4s, v0.s[3] + + umull v0.4s, v0.4h, v0.h[0] + umull v31.4s, v0.4h, v0.h[0] + umull v0.4s, v31.4h, v0.h[0] + umull v0.4s, v0.4h, v15.h[0] + umull v0.4s, v0.4h, v0.h[1] + umull v0.4s, v0.4h, v0.h[3] + umull v0.4s, v0.4h, v0.h[7] + umull v0.2d, v0.2s, v0.s[0] + umull v31.2d, v0.2s, v0.s[0] + umull v0.2d, v31.2s, v0.s[0] + umull v0.2d, v0.2s, v31.s[0] + umull v0.2d, v0.2s, v0.s[1] + umull v0.2d, v0.2s, v0.s[3] + umull2 v0.4s, v0.8h, v0.h[0] + umull2 v31.4s, v0.8h, v0.h[0] + umull2 v0.4s, v31.8h, v0.h[0] + umull2 v0.4s, v0.8h, v15.h[0] + umull2 v0.4s, v0.8h, v0.h[1] + umull2 v0.4s, v0.8h, v0.h[3] + umull2 v0.4s, v0.8h, v0.h[7] + umull2 v0.2d, v0.4s, v0.s[0] + umull2 v31.2d, v0.4s, v0.s[0] + umull2 v0.2d, v31.4s, v0.s[0] + umull2 v0.2d, v0.4s, v31.s[0] + umull2 v0.2d, v0.4s, v0.s[1] + umull2 v0.2d, v0.4s, v0.s[3] diff --git a/gas/testsuite/gas/aarch64/advsimd-permute.d b/gas/testsuite/gas/aarch64/advsimd-permute.d new file mode 100644 index 0000000..a3a9487 --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsimd-permute.d @@ -0,0 +1,251 @@ +#as: -march=armv8-a +#objdump: -dr + +.*: file format .* + + +Disassembly of section \.text: + +0+ <\.text>: + *[0-9a-f]+: 2e000000 ext v0\.8b, v0\.8b, v0\.8b, #0 + *[0-9a-f]+: 2e00001f ext v31\.8b, v0\.8b, v0\.8b, #0 + *[0-9a-f]+: 2e0003e0 ext v0\.8b, v31\.8b, v0\.8b, #0 + *[0-9a-f]+: 2e1f0000 ext v0\.8b, v0\.8b, v31\.8b, #0 + *[0-9a-f]+: 2e003800 ext v0\.8b, v0\.8b, v0\.8b, #7 + *[0-9a-f]+: 6e000000 ext v0\.16b, v0\.16b, v0\.16b, #0 + *[0-9a-f]+: 6e00001f ext v31\.16b, v0\.16b, v0\.16b, #0 + *[0-9a-f]+: 6e0003e0 ext v0\.16b, v31\.16b, v0\.16b, #0 + *[0-9a-f]+: 6e1f0000 ext v0\.16b, v0\.16b, v31\.16b, #0 + *[0-9a-f]+: 6e007800 ext v0\.16b, v0\.16b, v0\.16b, #15 + *[0-9a-f]+: 0e001800 uzp1 v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e00181f uzp1 v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e001be0 uzp1 v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 0e1f1800 uzp1 v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 0e401800 uzp1 v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e40181f uzp1 v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e401be0 uzp1 v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 0e5f1800 uzp1 v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 0e801800 uzp1 v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0e80181f uzp1 v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0e801be0 uzp1 v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 0e9f1800 uzp1 v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 4e001800 uzp1 v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e00181f uzp1 v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e001be0 uzp1 v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 4e1f1800 uzp1 v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 4e401800 uzp1 v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e40181f uzp1 v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e401be0 uzp1 v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 4e5f1800 uzp1 v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 4e801800 uzp1 v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4e80181f uzp1 v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4e801be0 uzp1 v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 4e9f1800 uzp1 v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 4ec01800 uzp1 v0\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ec0181f uzp1 v31\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ec01be0 uzp1 v0\.2d, v31\.2d, v0\.2d + *[0-9a-f]+: 4edf1800 uzp1 v0\.2d, v0\.2d, v31\.2d + *[0-9a-f]+: 0e002800 trn1 v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e00281f trn1 v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e002be0 trn1 v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 0e1f2800 trn1 v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 0e402800 trn1 v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e40281f trn1 v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e402be0 trn1 v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 0e5f2800 trn1 v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 0e802800 trn1 v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0e80281f trn1 v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0e802be0 trn1 v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 0e9f2800 trn1 v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 4e002800 trn1 v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e00281f trn1 v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e002be0 trn1 v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 4e1f2800 trn1 v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 4e402800 trn1 v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e40281f trn1 v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e402be0 trn1 v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 4e5f2800 trn1 v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 4e802800 trn1 v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4e80281f trn1 v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4e802be0 trn1 v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 4e9f2800 trn1 v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 4ec02800 trn1 v0\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ec0281f trn1 v31\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ec02be0 trn1 v0\.2d, v31\.2d, v0\.2d + *[0-9a-f]+: 4edf2800 trn1 v0\.2d, v0\.2d, v31\.2d + *[0-9a-f]+: 0e003800 zip1 v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e00381f zip1 v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e003be0 zip1 v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 0e1f3800 zip1 v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 0e403800 zip1 v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e40381f zip1 v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e403be0 zip1 v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 0e5f3800 zip1 v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 0e803800 zip1 v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0e80381f zip1 v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0e803be0 zip1 v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 0e9f3800 zip1 v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 4e003800 zip1 v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e00381f zip1 v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e003be0 zip1 v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 4e1f3800 zip1 v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 4e403800 zip1 v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e40381f zip1 v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e403be0 zip1 v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 4e5f3800 zip1 v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 4e803800 zip1 v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4e80381f zip1 v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4e803be0 zip1 v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 4e9f3800 zip1 v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 4ec03800 zip1 v0\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ec0381f zip1 v31\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ec03be0 zip1 v0\.2d, v31\.2d, v0\.2d + *[0-9a-f]+: 4edf3800 zip1 v0\.2d, v0\.2d, v31\.2d + *[0-9a-f]+: 0e005800 uzp2 v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e00581f uzp2 v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e005be0 uzp2 v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 0e1f5800 uzp2 v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 0e405800 uzp2 v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e40581f uzp2 v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e405be0 uzp2 v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 0e5f5800 uzp2 v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 0e805800 uzp2 v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0e80581f uzp2 v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0e805be0 uzp2 v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 0e9f5800 uzp2 v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 4e005800 uzp2 v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e00581f uzp2 v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e005be0 uzp2 v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 4e1f5800 uzp2 v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 4e405800 uzp2 v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e40581f uzp2 v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e405be0 uzp2 v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 4e5f5800 uzp2 v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 4e805800 uzp2 v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4e80581f uzp2 v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4e805be0 uzp2 v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 4e9f5800 uzp2 v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 4ec05800 uzp2 v0\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ec0581f uzp2 v31\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ec05be0 uzp2 v0\.2d, v31\.2d, v0\.2d + *[0-9a-f]+: 4edf5800 uzp2 v0\.2d, v0\.2d, v31\.2d + *[0-9a-f]+: 0e006800 trn2 v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e00681f trn2 v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e006be0 trn2 v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 0e1f6800 trn2 v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 0e406800 trn2 v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e40681f trn2 v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e406be0 trn2 v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 0e5f6800 trn2 v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 0e806800 trn2 v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0e80681f trn2 v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0e806be0 trn2 v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 0e9f6800 trn2 v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 4e006800 trn2 v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e00681f trn2 v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e006be0 trn2 v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 4e1f6800 trn2 v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 4e406800 trn2 v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e40681f trn2 v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e406be0 trn2 v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 4e5f6800 trn2 v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 4e806800 trn2 v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4e80681f trn2 v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4e806be0 trn2 v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 4e9f6800 trn2 v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 4ec06800 trn2 v0\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ec0681f trn2 v31\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ec06be0 trn2 v0\.2d, v31\.2d, v0\.2d + *[0-9a-f]+: 4edf6800 trn2 v0\.2d, v0\.2d, v31\.2d + *[0-9a-f]+: 0e007800 zip2 v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e00781f zip2 v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e007be0 zip2 v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 0e1f7800 zip2 v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 0e407800 zip2 v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e40781f zip2 v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e407be0 zip2 v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 0e5f7800 zip2 v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 0e807800 zip2 v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0e80781f zip2 v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0e807be0 zip2 v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 0e9f7800 zip2 v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 4e007800 zip2 v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e00781f zip2 v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e007be0 zip2 v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 4e1f7800 zip2 v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 4e407800 zip2 v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e40781f zip2 v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e407be0 zip2 v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 4e5f7800 zip2 v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 4e807800 zip2 v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4e80781f zip2 v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4e807be0 zip2 v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 4e9f7800 zip2 v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 4ec07800 zip2 v0\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ec0781f zip2 v31\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ec07be0 zip2 v0\.2d, v31\.2d, v0\.2d + *[0-9a-f]+: 4edf7800 zip2 v0\.2d, v0\.2d, v31\.2d + *[0-9a-f]+: 0e000000 tbl v0\.8b, {v0\.16b}, v0\.8b + *[0-9a-f]+: 0e00001f tbl v31\.8b, {v0\.16b}, v0\.8b + *[0-9a-f]+: 0e0003e0 tbl v0\.8b, {v31\.16b}, v0\.8b + *[0-9a-f]+: 0e1f0000 tbl v0\.8b, {v0\.16b}, v31\.8b + *[0-9a-f]+: 4e000000 tbl v0\.16b, {v0\.16b}, v0\.16b + *[0-9a-f]+: 4e00001f tbl v31\.16b, {v0\.16b}, v0\.16b + *[0-9a-f]+: 4e0003e0 tbl v0\.16b, {v31\.16b}, v0\.16b + *[0-9a-f]+: 4e1f0000 tbl v0\.16b, {v0\.16b}, v31\.16b + *[0-9a-f]+: 0e002000 tbl v0\.8b, {v0\.16b-v1\.16b}, v0\.8b + *[0-9a-f]+: 0e00201f tbl v31\.8b, {v0\.16b-v1\.16b}, v0\.8b + *[0-9a-f]+: 0e0023e0 tbl v0\.8b, {v31\.16b-v0\.16b}, v0\.8b + *[0-9a-f]+: 0e1f2000 tbl v0\.8b, {v0\.16b-v1\.16b}, v31\.8b + *[0-9a-f]+: 4e002000 tbl v0\.16b, {v0\.16b-v1\.16b}, v0\.16b + *[0-9a-f]+: 4e00201f tbl v31\.16b, {v0\.16b-v1\.16b}, v0\.16b + *[0-9a-f]+: 4e0023e0 tbl v0\.16b, {v31\.16b-v0\.16b}, v0\.16b + *[0-9a-f]+: 4e1f2000 tbl v0\.16b, {v0\.16b-v1\.16b}, v31\.16b + *[0-9a-f]+: 0e004000 tbl v0\.8b, {v0\.16b-v2\.16b}, v0\.8b + *[0-9a-f]+: 0e00401f tbl v31\.8b, {v0\.16b-v2\.16b}, v0\.8b + *[0-9a-f]+: 0e0043e0 tbl v0\.8b, {v31\.16b-v1\.16b}, v0\.8b + *[0-9a-f]+: 0e1f4000 tbl v0\.8b, {v0\.16b-v2\.16b}, v31\.8b + *[0-9a-f]+: 4e004000 tbl v0\.16b, {v0\.16b-v2\.16b}, v0\.16b + *[0-9a-f]+: 4e00401f tbl v31\.16b, {v0\.16b-v2\.16b}, v0\.16b + *[0-9a-f]+: 4e0043e0 tbl v0\.16b, {v31\.16b-v1\.16b}, v0\.16b + *[0-9a-f]+: 4e1f4000 tbl v0\.16b, {v0\.16b-v2\.16b}, v31\.16b + *[0-9a-f]+: 0e006000 tbl v0\.8b, {v0\.16b-v3\.16b}, v0\.8b + *[0-9a-f]+: 0e00601f tbl v31\.8b, {v0\.16b-v3\.16b}, v0\.8b + *[0-9a-f]+: 0e0063e0 tbl v0\.8b, {v31\.16b-v2\.16b}, v0\.8b + *[0-9a-f]+: 0e1f6000 tbl v0\.8b, {v0\.16b-v3\.16b}, v31\.8b + *[0-9a-f]+: 4e006000 tbl v0\.16b, {v0\.16b-v3\.16b}, v0\.16b + *[0-9a-f]+: 4e00601f tbl v31\.16b, {v0\.16b-v3\.16b}, v0\.16b + *[0-9a-f]+: 4e0063e0 tbl v0\.16b, {v31\.16b-v2\.16b}, v0\.16b + *[0-9a-f]+: 4e1f6000 tbl v0\.16b, {v0\.16b-v3\.16b}, v31\.16b + *[0-9a-f]+: 0e001000 tbx v0\.8b, {v0\.16b}, v0\.8b + *[0-9a-f]+: 0e00101f tbx v31\.8b, {v0\.16b}, v0\.8b + *[0-9a-f]+: 0e0013e0 tbx v0\.8b, {v31\.16b}, v0\.8b + *[0-9a-f]+: 0e1f1000 tbx v0\.8b, {v0\.16b}, v31\.8b + *[0-9a-f]+: 4e001000 tbx v0\.16b, {v0\.16b}, v0\.16b + *[0-9a-f]+: 4e00101f tbx v31\.16b, {v0\.16b}, v0\.16b + *[0-9a-f]+: 4e0013e0 tbx v0\.16b, {v31\.16b}, v0\.16b + *[0-9a-f]+: 4e1f1000 tbx v0\.16b, {v0\.16b}, v31\.16b + *[0-9a-f]+: 0e003000 tbx v0\.8b, {v0\.16b-v1\.16b}, v0\.8b + *[0-9a-f]+: 0e00301f tbx v31\.8b, {v0\.16b-v1\.16b}, v0\.8b + *[0-9a-f]+: 0e0033e0 tbx v0\.8b, {v31\.16b-v0\.16b}, v0\.8b + *[0-9a-f]+: 0e1f3000 tbx v0\.8b, {v0\.16b-v1\.16b}, v31\.8b + *[0-9a-f]+: 4e003000 tbx v0\.16b, {v0\.16b-v1\.16b}, v0\.16b + *[0-9a-f]+: 4e00301f tbx v31\.16b, {v0\.16b-v1\.16b}, v0\.16b + *[0-9a-f]+: 4e0033e0 tbx v0\.16b, {v31\.16b-v0\.16b}, v0\.16b + *[0-9a-f]+: 4e1f3000 tbx v0\.16b, {v0\.16b-v1\.16b}, v31\.16b + *[0-9a-f]+: 0e005000 tbx v0\.8b, {v0\.16b-v2\.16b}, v0\.8b + *[0-9a-f]+: 0e00501f tbx v31\.8b, {v0\.16b-v2\.16b}, v0\.8b + *[0-9a-f]+: 0e0053e0 tbx v0\.8b, {v31\.16b-v1\.16b}, v0\.8b + *[0-9a-f]+: 0e1f5000 tbx v0\.8b, {v0\.16b-v2\.16b}, v31\.8b + *[0-9a-f]+: 4e005000 tbx v0\.16b, {v0\.16b-v2\.16b}, v0\.16b + *[0-9a-f]+: 4e00501f tbx v31\.16b, {v0\.16b-v2\.16b}, v0\.16b + *[0-9a-f]+: 4e0053e0 tbx v0\.16b, {v31\.16b-v1\.16b}, v0\.16b + *[0-9a-f]+: 4e1f5000 tbx v0\.16b, {v0\.16b-v2\.16b}, v31\.16b + *[0-9a-f]+: 0e007000 tbx v0\.8b, {v0\.16b-v3\.16b}, v0\.8b + *[0-9a-f]+: 0e00701f tbx v31\.8b, {v0\.16b-v3\.16b}, v0\.8b + *[0-9a-f]+: 0e0073e0 tbx v0\.8b, {v31\.16b-v2\.16b}, v0\.8b + *[0-9a-f]+: 0e1f7000 tbx v0\.8b, {v0\.16b-v3\.16b}, v31\.8b + *[0-9a-f]+: 4e007000 tbx v0\.16b, {v0\.16b-v3\.16b}, v0\.16b + *[0-9a-f]+: 4e00701f tbx v31\.16b, {v0\.16b-v3\.16b}, v0\.16b + *[0-9a-f]+: 4e0073e0 tbx v0\.16b, {v31\.16b-v2\.16b}, v0\.16b + *[0-9a-f]+: 4e1f7000 tbx v0\.16b, {v0\.16b-v3\.16b}, v31\.16b diff --git a/gas/testsuite/gas/aarch64/advsimd-permute.s b/gas/testsuite/gas/aarch64/advsimd-permute.s new file mode 100644 index 0000000..d4b0714 --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsimd-permute.s @@ -0,0 +1,250 @@ + ext v0.8b, v0.8b, v0.8b, #0 + ext v31.8b, v0.8b, v0.8b, #0 + ext v0.8b, v31.8b, v0.8b, #0 + ext v0.8b, v0.8b, v31.8b, #0 + ext v0.8b, v0.8b, v0.8b, #7 + ext v0.16b, v0.16b, v0.16b, #0 + ext v31.16b, v0.16b, v0.16b, #0 + ext v0.16b, v31.16b, v0.16b, #0 + ext v0.16b, v0.16b, v31.16b, #0 + ext v0.16b, v0.16b, v0.16b, #15 + + uzp1 v0.8b, v0.8b, v0.8b + uzp1 v31.8b, v0.8b, v0.8b + uzp1 v0.8b, v31.8b, v0.8b + uzp1 v0.8b, v0.8b, v31.8b + uzp1 v0.4h, v0.4h, v0.4h + uzp1 v31.4h, v0.4h, v0.4h + uzp1 v0.4h, v31.4h, v0.4h + uzp1 v0.4h, v0.4h, v31.4h + uzp1 v0.2s, v0.2s, v0.2s + uzp1 v31.2s, v0.2s, v0.2s + uzp1 v0.2s, v31.2s, v0.2s + uzp1 v0.2s, v0.2s, v31.2s + uzp1 v0.16b, v0.16b, v0.16b + uzp1 v31.16b, v0.16b, v0.16b + uzp1 v0.16b, v31.16b, v0.16b + uzp1 v0.16b, v0.16b, v31.16b + uzp1 v0.8h, v0.8h, v0.8h + uzp1 v31.8h, v0.8h, v0.8h + uzp1 v0.8h, v31.8h, v0.8h + uzp1 v0.8h, v0.8h, v31.8h + uzp1 v0.4s, v0.4s, v0.4s + uzp1 v31.4s, v0.4s, v0.4s + uzp1 v0.4s, v31.4s, v0.4s + uzp1 v0.4s, v0.4s, v31.4s + uzp1 v0.2d, v0.2d, v0.2d + uzp1 v31.2d, v0.2d, v0.2d + uzp1 v0.2d, v31.2d, v0.2d + uzp1 v0.2d, v0.2d, v31.2d + + trn1 v0.8b, v0.8b, v0.8b + trn1 v31.8b, v0.8b, v0.8b + trn1 v0.8b, v31.8b, v0.8b + trn1 v0.8b, v0.8b, v31.8b + trn1 v0.4h, v0.4h, v0.4h + trn1 v31.4h, v0.4h, v0.4h + trn1 v0.4h, v31.4h, v0.4h + trn1 v0.4h, v0.4h, v31.4h + trn1 v0.2s, v0.2s, v0.2s + trn1 v31.2s, v0.2s, v0.2s + trn1 v0.2s, v31.2s, v0.2s + trn1 v0.2s, v0.2s, v31.2s + trn1 v0.16b, v0.16b, v0.16b + trn1 v31.16b, v0.16b, v0.16b + trn1 v0.16b, v31.16b, v0.16b + trn1 v0.16b, v0.16b, v31.16b + trn1 v0.8h, v0.8h, v0.8h + trn1 v31.8h, v0.8h, v0.8h + trn1 v0.8h, v31.8h, v0.8h + trn1 v0.8h, v0.8h, v31.8h + trn1 v0.4s, v0.4s, v0.4s + trn1 v31.4s, v0.4s, v0.4s + trn1 v0.4s, v31.4s, v0.4s + trn1 v0.4s, v0.4s, v31.4s + trn1 v0.2d, v0.2d, v0.2d + trn1 v31.2d, v0.2d, v0.2d + trn1 v0.2d, v31.2d, v0.2d + trn1 v0.2d, v0.2d, v31.2d + + zip1 v0.8b, v0.8b, v0.8b + zip1 v31.8b, v0.8b, v0.8b + zip1 v0.8b, v31.8b, v0.8b + zip1 v0.8b, v0.8b, v31.8b + zip1 v0.4h, v0.4h, v0.4h + zip1 v31.4h, v0.4h, v0.4h + zip1 v0.4h, v31.4h, v0.4h + zip1 v0.4h, v0.4h, v31.4h + zip1 v0.2s, v0.2s, v0.2s + zip1 v31.2s, v0.2s, v0.2s + zip1 v0.2s, v31.2s, v0.2s + zip1 v0.2s, v0.2s, v31.2s + zip1 v0.16b, v0.16b, v0.16b + zip1 v31.16b, v0.16b, v0.16b + zip1 v0.16b, v31.16b, v0.16b + zip1 v0.16b, v0.16b, v31.16b + zip1 v0.8h, v0.8h, v0.8h + zip1 v31.8h, v0.8h, v0.8h + zip1 v0.8h, v31.8h, v0.8h + zip1 v0.8h, v0.8h, v31.8h + zip1 v0.4s, v0.4s, v0.4s + zip1 v31.4s, v0.4s, v0.4s + zip1 v0.4s, v31.4s, v0.4s + zip1 v0.4s, v0.4s, v31.4s + zip1 v0.2d, v0.2d, v0.2d + zip1 v31.2d, v0.2d, v0.2d + zip1 v0.2d, v31.2d, v0.2d + zip1 v0.2d, v0.2d, v31.2d + + uzp2 v0.8b, v0.8b, v0.8b + uzp2 v31.8b, v0.8b, v0.8b + uzp2 v0.8b, v31.8b, v0.8b + uzp2 v0.8b, v0.8b, v31.8b + uzp2 v0.4h, v0.4h, v0.4h + uzp2 v31.4h, v0.4h, v0.4h + uzp2 v0.4h, v31.4h, v0.4h + uzp2 v0.4h, v0.4h, v31.4h + uzp2 v0.2s, v0.2s, v0.2s + uzp2 v31.2s, v0.2s, v0.2s + uzp2 v0.2s, v31.2s, v0.2s + uzp2 v0.2s, v0.2s, v31.2s + uzp2 v0.16b, v0.16b, v0.16b + uzp2 v31.16b, v0.16b, v0.16b + uzp2 v0.16b, v31.16b, v0.16b + uzp2 v0.16b, v0.16b, v31.16b + uzp2 v0.8h, v0.8h, v0.8h + uzp2 v31.8h, v0.8h, v0.8h + uzp2 v0.8h, v31.8h, v0.8h + uzp2 v0.8h, v0.8h, v31.8h + uzp2 v0.4s, v0.4s, v0.4s + uzp2 v31.4s, v0.4s, v0.4s + uzp2 v0.4s, v31.4s, v0.4s + uzp2 v0.4s, v0.4s, v31.4s + uzp2 v0.2d, v0.2d, v0.2d + uzp2 v31.2d, v0.2d, v0.2d + uzp2 v0.2d, v31.2d, v0.2d + uzp2 v0.2d, v0.2d, v31.2d + + trn2 v0.8b, v0.8b, v0.8b + trn2 v31.8b, v0.8b, v0.8b + trn2 v0.8b, v31.8b, v0.8b + trn2 v0.8b, v0.8b, v31.8b + trn2 v0.4h, v0.4h, v0.4h + trn2 v31.4h, v0.4h, v0.4h + trn2 v0.4h, v31.4h, v0.4h + trn2 v0.4h, v0.4h, v31.4h + trn2 v0.2s, v0.2s, v0.2s + trn2 v31.2s, v0.2s, v0.2s + trn2 v0.2s, v31.2s, v0.2s + trn2 v0.2s, v0.2s, v31.2s + trn2 v0.16b, v0.16b, v0.16b + trn2 v31.16b, v0.16b, v0.16b + trn2 v0.16b, v31.16b, v0.16b + trn2 v0.16b, v0.16b, v31.16b + trn2 v0.8h, v0.8h, v0.8h + trn2 v31.8h, v0.8h, v0.8h + trn2 v0.8h, v31.8h, v0.8h + trn2 v0.8h, v0.8h, v31.8h + trn2 v0.4s, v0.4s, v0.4s + trn2 v31.4s, v0.4s, v0.4s + trn2 v0.4s, v31.4s, v0.4s + trn2 v0.4s, v0.4s, v31.4s + trn2 v0.2d, v0.2d, v0.2d + trn2 v31.2d, v0.2d, v0.2d + trn2 v0.2d, v31.2d, v0.2d + trn2 v0.2d, v0.2d, v31.2d + + zip2 v0.8b, v0.8b, v0.8b + zip2 v31.8b, v0.8b, v0.8b + zip2 v0.8b, v31.8b, v0.8b + zip2 v0.8b, v0.8b, v31.8b + zip2 v0.4h, v0.4h, v0.4h + zip2 v31.4h, v0.4h, v0.4h + zip2 v0.4h, v31.4h, v0.4h + zip2 v0.4h, v0.4h, v31.4h + zip2 v0.2s, v0.2s, v0.2s + zip2 v31.2s, v0.2s, v0.2s + zip2 v0.2s, v31.2s, v0.2s + zip2 v0.2s, v0.2s, v31.2s + zip2 v0.16b, v0.16b, v0.16b + zip2 v31.16b, v0.16b, v0.16b + zip2 v0.16b, v31.16b, v0.16b + zip2 v0.16b, v0.16b, v31.16b + zip2 v0.8h, v0.8h, v0.8h + zip2 v31.8h, v0.8h, v0.8h + zip2 v0.8h, v31.8h, v0.8h + zip2 v0.8h, v0.8h, v31.8h + zip2 v0.4s, v0.4s, v0.4s + zip2 v31.4s, v0.4s, v0.4s + zip2 v0.4s, v31.4s, v0.4s + zip2 v0.4s, v0.4s, v31.4s + zip2 v0.2d, v0.2d, v0.2d + zip2 v31.2d, v0.2d, v0.2d + zip2 v0.2d, v31.2d, v0.2d + zip2 v0.2d, v0.2d, v31.2d + + tbl v0.8b, {v0.16b}, v0.8b + tbl v31.8b, {v0.16b}, v0.8b + tbl v0.8b, {v31.16b}, v0.8b + tbl v0.8b, {v0.16b}, v31.8b + tbl v0.16b, {v0.16b}, v0.16b + tbl v31.16b, {v0.16b}, v0.16b + tbl v0.16b, {v31.16b}, v0.16b + tbl v0.16b, {v0.16b}, v31.16b + tbl v0.8b, {v0.16b, v1.16b}, v0.8b + tbl v31.8b, {v0.16b, v1.16b}, v0.8b + tbl v0.8b, {v31.16b, v0.16b}, v0.8b + tbl v0.8b, {v0.16b, v1.16b}, v31.8b + tbl v0.16b, {v0.16b, v1.16b}, v0.16b + tbl v31.16b, {v0.16b, v1.16b}, v0.16b + tbl v0.16b, {v31.16b, v0.16b}, v0.16b + tbl v0.16b, {v0.16b, v1.16b}, v31.16b + tbl v0.8b, {v0.16b, v1.16b, v2.16b}, v0.8b + tbl v31.8b, {v0.16b, v1.16b, v2.16b}, v0.8b + tbl v0.8b, {v31.16b, v0.16b, v1.16b}, v0.8b + tbl v0.8b, {v0.16b, v1.16b, v2.16b}, v31.8b + tbl v0.16b, {v0.16b, v1.16b, v2.16b}, v0.16b + tbl v31.16b, {v0.16b, v1.16b, v2.16b}, v0.16b + tbl v0.16b, {v31.16b, v0.16b, v1.16b}, v0.16b + tbl v0.16b, {v0.16b, v1.16b, v2.16b}, v31.16b + tbl v0.8b, {v0.16b, v1.16b, v2.16b, v3.16b}, v0.8b + tbl v31.8b, {v0.16b, v1.16b, v2.16b, v3.16b}, v0.8b + tbl v0.8b, {v31.16b, v0.16b, v1.16b, v2.16b}, v0.8b + tbl v0.8b, {v0.16b, v1.16b, v2.16b, v3.16b}, v31.8b + tbl v0.16b, {v0.16b, v1.16b, v2.16b, v3.16b}, v0.16b + tbl v31.16b, {v0.16b, v1.16b, v2.16b, v3.16b}, v0.16b + tbl v0.16b, {v31.16b, v0.16b, v1.16b, v2.16b}, v0.16b + tbl v0.16b, {v0.16b, v1.16b, v2.16b, v3.16b}, v31.16b + + tbx v0.8b, {v0.16b}, v0.8b + tbx v31.8b, {v0.16b}, v0.8b + tbx v0.8b, {v31.16b}, v0.8b + tbx v0.8b, {v0.16b}, v31.8b + tbx v0.16b, {v0.16b}, v0.16b + tbx v31.16b, {v0.16b}, v0.16b + tbx v0.16b, {v31.16b}, v0.16b + tbx v0.16b, {v0.16b}, v31.16b + tbx v0.8b, {v0.16b, v1.16b}, v0.8b + tbx v31.8b, {v0.16b, v1.16b}, v0.8b + tbx v0.8b, {v31.16b, v0.16b}, v0.8b + tbx v0.8b, {v0.16b, v1.16b}, v31.8b + tbx v0.16b, {v0.16b, v1.16b}, v0.16b + tbx v31.16b, {v0.16b, v1.16b}, v0.16b + tbx v0.16b, {v31.16b, v0.16b}, v0.16b + tbx v0.16b, {v0.16b, v1.16b}, v31.16b + tbx v0.8b, {v0.16b, v1.16b, v2.16b}, v0.8b + tbx v31.8b, {v0.16b, v1.16b, v2.16b}, v0.8b + tbx v0.8b, {v31.16b, v0.16b, v1.16b}, v0.8b + tbx v0.8b, {v0.16b, v1.16b, v2.16b}, v31.8b + tbx v0.16b, {v0.16b, v1.16b, v2.16b}, v0.16b + tbx v31.16b, {v0.16b, v1.16b, v2.16b}, v0.16b + tbx v0.16b, {v31.16b, v0.16b, v1.16b}, v0.16b + tbx v0.16b, {v0.16b, v1.16b, v2.16b}, v31.16b + tbx v0.8b, {v0.16b, v1.16b, v2.16b, v3.16b}, v0.8b + tbx v31.8b, {v0.16b, v1.16b, v2.16b, v3.16b}, v0.8b + tbx v0.8b, {v31.16b, v0.16b, v1.16b, v2.16b}, v0.8b + tbx v0.8b, {v0.16b, v1.16b, v2.16b, v3.16b}, v31.8b + tbx v0.16b, {v0.16b, v1.16b, v2.16b, v3.16b}, v0.16b + tbx v31.16b, {v0.16b, v1.16b, v2.16b, v3.16b}, v0.16b + tbx v0.16b, {v31.16b, v0.16b, v1.16b, v2.16b}, v0.16b + tbx v0.16b, {v0.16b, v1.16b, v2.16b, v3.16b}, v31.16b diff --git a/gas/testsuite/gas/aarch64/advsimd-scalar-doubling-mul.d b/gas/testsuite/gas/aarch64/advsimd-scalar-doubling-mul.d new file mode 100644 index 0000000..06b442e --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsimd-scalar-doubling-mul.d @@ -0,0 +1,98 @@ +#as: -march=armv8-a +#objdump: -dr + +.*: file format .* + + +Disassembly of section \.text: + +0+ <\.text>: + *[0-9a-f]+: 5e609000 sqdmlal s0, h0, h0 + *[0-9a-f]+: 5e60901f sqdmlal s31, h0, h0 + *[0-9a-f]+: 5e6093e0 sqdmlal s0, h31, h0 + *[0-9a-f]+: 5e7f9000 sqdmlal s0, h0, h31 + *[0-9a-f]+: 5ea09000 sqdmlal d0, s0, s0 + *[0-9a-f]+: 5ea0901f sqdmlal d31, s0, s0 + *[0-9a-f]+: 5ea093e0 sqdmlal d0, s31, s0 + *[0-9a-f]+: 5ebf9000 sqdmlal d0, s0, s31 + *[0-9a-f]+: 5e60b000 sqdmlsl s0, h0, h0 + *[0-9a-f]+: 5e60b01f sqdmlsl s31, h0, h0 + *[0-9a-f]+: 5e60b3e0 sqdmlsl s0, h31, h0 + *[0-9a-f]+: 5e7fb000 sqdmlsl s0, h0, h31 + *[0-9a-f]+: 5ea0b000 sqdmlsl d0, s0, s0 + *[0-9a-f]+: 5ea0b01f sqdmlsl d31, s0, s0 + *[0-9a-f]+: 5ea0b3e0 sqdmlsl d0, s31, s0 + *[0-9a-f]+: 5ebfb000 sqdmlsl d0, s0, s31 + *[0-9a-f]+: 5e60d000 sqdmull s0, h0, h0 + *[0-9a-f]+: 5e60d01f sqdmull s31, h0, h0 + *[0-9a-f]+: 5e60d3e0 sqdmull s0, h31, h0 + *[0-9a-f]+: 5e7fd000 sqdmull s0, h0, h31 + *[0-9a-f]+: 5ea0d000 sqdmull d0, s0, s0 + *[0-9a-f]+: 5ea0d01f sqdmull d31, s0, s0 + *[0-9a-f]+: 5ea0d3e0 sqdmull d0, s31, s0 + *[0-9a-f]+: 5ebfd000 sqdmull d0, s0, s31 + *[0-9a-f]+: 5f403000 sqdmlal s0, h0, v0\.h\[0\] + *[0-9a-f]+: 5f40301f sqdmlal s31, h0, v0\.h\[0\] + *[0-9a-f]+: 5f4033e0 sqdmlal s0, h31, v0\.h\[0\] + *[0-9a-f]+: 5f4f3000 sqdmlal s0, h0, v15\.h\[0\] + *[0-9a-f]+: 5f503000 sqdmlal s0, h0, v0\.h\[1\] + *[0-9a-f]+: 5f703000 sqdmlal s0, h0, v0\.h\[3\] + *[0-9a-f]+: 5f703800 sqdmlal s0, h0, v0\.h\[7\] + *[0-9a-f]+: 5f803000 sqdmlal d0, s0, v0\.s\[0\] + *[0-9a-f]+: 5f80301f sqdmlal d31, s0, v0\.s\[0\] + *[0-9a-f]+: 5f8033e0 sqdmlal d0, s31, v0\.s\[0\] + *[0-9a-f]+: 5f9f3000 sqdmlal d0, s0, v31\.s\[0\] + *[0-9a-f]+: 5fa03000 sqdmlal d0, s0, v0\.s\[1\] + *[0-9a-f]+: 5fa03800 sqdmlal d0, s0, v0\.s\[3\] + *[0-9a-f]+: 5f407000 sqdmlsl s0, h0, v0\.h\[0\] + *[0-9a-f]+: 5f40701f sqdmlsl s31, h0, v0\.h\[0\] + *[0-9a-f]+: 5f4073e0 sqdmlsl s0, h31, v0\.h\[0\] + *[0-9a-f]+: 5f4f7000 sqdmlsl s0, h0, v15\.h\[0\] + *[0-9a-f]+: 5f507000 sqdmlsl s0, h0, v0\.h\[1\] + *[0-9a-f]+: 5f707000 sqdmlsl s0, h0, v0\.h\[3\] + *[0-9a-f]+: 5f707800 sqdmlsl s0, h0, v0\.h\[7\] + *[0-9a-f]+: 5f807000 sqdmlsl d0, s0, v0\.s\[0\] + *[0-9a-f]+: 5f80701f sqdmlsl d31, s0, v0\.s\[0\] + *[0-9a-f]+: 5f8073e0 sqdmlsl d0, s31, v0\.s\[0\] + *[0-9a-f]+: 5f9f7000 sqdmlsl d0, s0, v31\.s\[0\] + *[0-9a-f]+: 5fa07000 sqdmlsl d0, s0, v0\.s\[1\] + *[0-9a-f]+: 5fa07800 sqdmlsl d0, s0, v0\.s\[3\] + *[0-9a-f]+: 5f40b000 sqdmull s0, h0, v0\.h\[0\] + *[0-9a-f]+: 5f40b01f sqdmull s31, h0, v0\.h\[0\] + *[0-9a-f]+: 5f40b3e0 sqdmull s0, h31, v0\.h\[0\] + *[0-9a-f]+: 5f4fb000 sqdmull s0, h0, v15\.h\[0\] + *[0-9a-f]+: 5f50b000 sqdmull s0, h0, v0\.h\[1\] + *[0-9a-f]+: 5f70b000 sqdmull s0, h0, v0\.h\[3\] + *[0-9a-f]+: 5f70b800 sqdmull s0, h0, v0\.h\[7\] + *[0-9a-f]+: 5f80b000 sqdmull d0, s0, v0\.s\[0\] + *[0-9a-f]+: 5f80b01f sqdmull d31, s0, v0\.s\[0\] + *[0-9a-f]+: 5f80b3e0 sqdmull d0, s31, v0\.s\[0\] + *[0-9a-f]+: 5f9fb000 sqdmull d0, s0, v31\.s\[0\] + *[0-9a-f]+: 5fa0b000 sqdmull d0, s0, v0\.s\[1\] + *[0-9a-f]+: 5fa0b800 sqdmull d0, s0, v0\.s\[3\] + *[0-9a-f]+: 5f40c000 sqdmulh h0, h0, v0\.h\[0\] + *[0-9a-f]+: 5f40c01f sqdmulh h31, h0, v0\.h\[0\] + *[0-9a-f]+: 5f40c3e0 sqdmulh h0, h31, v0\.h\[0\] + *[0-9a-f]+: 5f4fc000 sqdmulh h0, h0, v15\.h\[0\] + *[0-9a-f]+: 5f50c000 sqdmulh h0, h0, v0\.h\[1\] + *[0-9a-f]+: 5f70c000 sqdmulh h0, h0, v0\.h\[3\] + *[0-9a-f]+: 5f70c800 sqdmulh h0, h0, v0\.h\[7\] + *[0-9a-f]+: 5f80c000 sqdmulh s0, s0, v0\.s\[0\] + *[0-9a-f]+: 5f80c01f sqdmulh s31, s0, v0\.s\[0\] + *[0-9a-f]+: 5f80c3e0 sqdmulh s0, s31, v0\.s\[0\] + *[0-9a-f]+: 5f9fc000 sqdmulh s0, s0, v31\.s\[0\] + *[0-9a-f]+: 5fa0c000 sqdmulh s0, s0, v0\.s\[1\] + *[0-9a-f]+: 5fa0c800 sqdmulh s0, s0, v0\.s\[3\] + *[0-9a-f]+: 5f40d000 sqrdmulh h0, h0, v0\.h\[0\] + *[0-9a-f]+: 5f40d01f sqrdmulh h31, h0, v0\.h\[0\] + *[0-9a-f]+: 5f40d3e0 sqrdmulh h0, h31, v0\.h\[0\] + *[0-9a-f]+: 5f4fd000 sqrdmulh h0, h0, v15\.h\[0\] + *[0-9a-f]+: 5f50d000 sqrdmulh h0, h0, v0\.h\[1\] + *[0-9a-f]+: 5f70d000 sqrdmulh h0, h0, v0\.h\[3\] + *[0-9a-f]+: 5f70d800 sqrdmulh h0, h0, v0\.h\[7\] + *[0-9a-f]+: 5f80d000 sqrdmulh s0, s0, v0\.s\[0\] + *[0-9a-f]+: 5f80d01f sqrdmulh s31, s0, v0\.s\[0\] + *[0-9a-f]+: 5f80d3e0 sqrdmulh s0, s31, v0\.s\[0\] + *[0-9a-f]+: 5f9fd000 sqrdmulh s0, s0, v31\.s\[0\] + *[0-9a-f]+: 5fa0d000 sqrdmulh s0, s0, v0\.s\[1\] + *[0-9a-f]+: 5fa0d800 sqrdmulh s0, s0, v0\.s\[3\] diff --git a/gas/testsuite/gas/aarch64/advsimd-scalar-doubling-mul.s b/gas/testsuite/gas/aarch64/advsimd-scalar-doubling-mul.s new file mode 100644 index 0000000..c83f5b0 --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsimd-scalar-doubling-mul.s @@ -0,0 +1,96 @@ + sqdmlal s0, h0, h0 + sqdmlal s31, h0, h0 + sqdmlal s0, h31, h0 + sqdmlal s0, h0, h31 + sqdmlal d0, s0, s0 + sqdmlal d31, s0, s0 + sqdmlal d0, s31, s0 + sqdmlal d0, s0, s31 + + sqdmlsl s0, h0, h0 + sqdmlsl s31, h0, h0 + sqdmlsl s0, h31, h0 + sqdmlsl s0, h0, h31 + sqdmlsl d0, s0, s0 + sqdmlsl d31, s0, s0 + sqdmlsl d0, s31, s0 + sqdmlsl d0, s0, s31 + + sqdmull s0, h0, h0 + sqdmull s31, h0, h0 + sqdmull s0, h31, h0 + sqdmull s0, h0, h31 + sqdmull d0, s0, s0 + sqdmull d31, s0, s0 + sqdmull d0, s31, s0 + sqdmull d0, s0, s31 + + sqdmlal s0, h0, v0.h[0] + sqdmlal s31, h0, v0.h[0] + sqdmlal s0, h31, v0.h[0] + sqdmlal s0, h0, v15.h[0] + sqdmlal s0, h0, v0.h[1] + sqdmlal s0, h0, v0.h[3] + sqdmlal s0, h0, v0.h[7] + sqdmlal d0, s0, v0.s[0] + sqdmlal d31, s0, v0.s[0] + sqdmlal d0, s31, v0.s[0] + sqdmlal d0, s0, v31.s[0] + sqdmlal d0, s0, v0.s[1] + sqdmlal d0, s0, v0.s[3] + + sqdmlsl s0, h0, v0.h[0] + sqdmlsl s31, h0, v0.h[0] + sqdmlsl s0, h31, v0.h[0] + sqdmlsl s0, h0, v15.h[0] + sqdmlsl s0, h0, v0.h[1] + sqdmlsl s0, h0, v0.h[3] + sqdmlsl s0, h0, v0.h[7] + sqdmlsl d0, s0, v0.s[0] + sqdmlsl d31, s0, v0.s[0] + sqdmlsl d0, s31, v0.s[0] + sqdmlsl d0, s0, v31.s[0] + sqdmlsl d0, s0, v0.s[1] + sqdmlsl d0, s0, v0.s[3] + + sqdmull s0, h0, v0.h[0] + sqdmull s31, h0, v0.h[0] + sqdmull s0, h31, v0.h[0] + sqdmull s0, h0, v15.h[0] + sqdmull s0, h0, v0.h[1] + sqdmull s0, h0, v0.h[3] + sqdmull s0, h0, v0.h[7] + sqdmull d0, s0, v0.s[0] + sqdmull d31, s0, v0.s[0] + sqdmull d0, s31, v0.s[0] + sqdmull d0, s0, v31.s[0] + sqdmull d0, s0, v0.s[1] + sqdmull d0, s0, v0.s[3] + + sqdmulh h0, h0, v0.h[0] + sqdmulh h31, h0, v0.h[0] + sqdmulh h0, h31, v0.h[0] + sqdmulh h0, h0, v15.h[0] + sqdmulh h0, h0, v0.h[1] + sqdmulh h0, h0, v0.h[3] + sqdmulh h0, h0, v0.h[7] + sqdmulh s0, s0, v0.s[0] + sqdmulh s31, s0, v0.s[0] + sqdmulh s0, s31, v0.s[0] + sqdmulh s0, s0, v31.s[0] + sqdmulh s0, s0, v0.s[1] + sqdmulh s0, s0, v0.s[3] + + sqrdmulh h0, h0, v0.h[0] + sqrdmulh h31, h0, v0.h[0] + sqrdmulh h0, h31, v0.h[0] + sqrdmulh h0, h0, v15.h[0] + sqrdmulh h0, h0, v0.h[1] + sqrdmulh h0, h0, v0.h[3] + sqrdmulh h0, h0, v0.h[7] + sqrdmulh s0, s0, v0.s[0] + sqrdmulh s31, s0, v0.s[0] + sqrdmulh s0, s31, v0.s[0] + sqrdmulh s0, s0, v31.s[0] + sqrdmulh s0, s0, v0.s[1] + sqrdmulh s0, s0, v0.s[3] diff --git a/gas/testsuite/gas/aarch64/advsimd-scalar-shift-immediate.d b/gas/testsuite/gas/aarch64/advsimd-scalar-shift-immediate.d new file mode 100644 index 0000000..8a511fc --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsimd-scalar-shift-immediate.d @@ -0,0 +1,173 @@ +#as: -march=armv8-a +#objdump: -dr + +.*: file format .* + + +Disassembly of section \.text: + +0+ <\.text>: + *[0-9a-f]+: 5f400400 sshr d0, d0, #64 + *[0-9a-f]+: 5f40041f sshr d31, d0, #64 + *[0-9a-f]+: 5f4007e0 sshr d0, d31, #64 + *[0-9a-f]+: 5f7f0400 sshr d0, d0, #1 + *[0-9a-f]+: 5f401400 ssra d0, d0, #64 + *[0-9a-f]+: 5f40141f ssra d31, d0, #64 + *[0-9a-f]+: 5f4017e0 ssra d0, d31, #64 + *[0-9a-f]+: 5f7f1400 ssra d0, d0, #1 + *[0-9a-f]+: 5f402400 srshr d0, d0, #64 + *[0-9a-f]+: 5f40241f srshr d31, d0, #64 + *[0-9a-f]+: 5f4027e0 srshr d0, d31, #64 + *[0-9a-f]+: 5f7f2400 srshr d0, d0, #1 + *[0-9a-f]+: 5f403400 srsra d0, d0, #64 + *[0-9a-f]+: 5f40341f srsra d31, d0, #64 + *[0-9a-f]+: 5f4037e0 srsra d0, d31, #64 + *[0-9a-f]+: 5f7f3400 srsra d0, d0, #1 + *[0-9a-f]+: 5f405400 shl d0, d0, #0 + *[0-9a-f]+: 5f40541f shl d31, d0, #0 + *[0-9a-f]+: 5f4057e0 shl d0, d31, #0 + *[0-9a-f]+: 5f7f5400 shl d0, d0, #63 + *[0-9a-f]+: 5f087400 sqshl b0, b0, #0 + *[0-9a-f]+: 5f08741f sqshl b31, b0, #0 + *[0-9a-f]+: 5f0877e0 sqshl b0, b31, #0 + *[0-9a-f]+: 5f0f7400 sqshl b0, b0, #7 + *[0-9a-f]+: 5f107400 sqshl h0, h0, #0 + *[0-9a-f]+: 5f10741f sqshl h31, h0, #0 + *[0-9a-f]+: 5f1077e0 sqshl h0, h31, #0 + *[0-9a-f]+: 5f1f7400 sqshl h0, h0, #15 + *[0-9a-f]+: 5f207400 sqshl s0, s0, #0 + *[0-9a-f]+: 5f20741f sqshl s31, s0, #0 + *[0-9a-f]+: 5f2077e0 sqshl s0, s31, #0 + *[0-9a-f]+: 5f3f7400 sqshl s0, s0, #31 + *[0-9a-f]+: 5f407400 sqshl d0, d0, #0 + *[0-9a-f]+: 5f40741f sqshl d31, d0, #0 + *[0-9a-f]+: 5f4077e0 sqshl d0, d31, #0 + *[0-9a-f]+: 5f7f7400 sqshl d0, d0, #63 + *[0-9a-f]+: 5f089400 sqshrn b0, h0, #8 + *[0-9a-f]+: 5f08941f sqshrn b31, h0, #8 + *[0-9a-f]+: 5f0897e0 sqshrn b0, h31, #8 + *[0-9a-f]+: 5f0f9400 sqshrn b0, h0, #1 + *[0-9a-f]+: 5f109400 sqshrn h0, s0, #16 + *[0-9a-f]+: 5f10941f sqshrn h31, s0, #16 + *[0-9a-f]+: 5f1097e0 sqshrn h0, s31, #16 + *[0-9a-f]+: 5f1f9400 sqshrn h0, s0, #1 + *[0-9a-f]+: 5f209400 sqshrn s0, d0, #32 + *[0-9a-f]+: 5f20941f sqshrn s31, d0, #32 + *[0-9a-f]+: 5f2097e0 sqshrn s0, d31, #32 + *[0-9a-f]+: 5f3f9400 sqshrn s0, d0, #1 + *[0-9a-f]+: 5f089c00 sqrshrn b0, h0, #8 + *[0-9a-f]+: 5f089c1f sqrshrn b31, h0, #8 + *[0-9a-f]+: 5f089fe0 sqrshrn b0, h31, #8 + *[0-9a-f]+: 5f0f9c00 sqrshrn b0, h0, #1 + *[0-9a-f]+: 5f109c00 sqrshrn h0, s0, #16 + *[0-9a-f]+: 5f109c1f sqrshrn h31, s0, #16 + *[0-9a-f]+: 5f109fe0 sqrshrn h0, s31, #16 + *[0-9a-f]+: 5f1f9c00 sqrshrn h0, s0, #1 + *[0-9a-f]+: 5f209c00 sqrshrn s0, d0, #32 + *[0-9a-f]+: 5f209c1f sqrshrn s31, d0, #32 + *[0-9a-f]+: 5f209fe0 sqrshrn s0, d31, #32 + *[0-9a-f]+: 5f3f9c00 sqrshrn s0, d0, #1 + *[0-9a-f]+: 7f400400 ushr d0, d0, #64 + *[0-9a-f]+: 7f40041f ushr d31, d0, #64 + *[0-9a-f]+: 7f4007e0 ushr d0, d31, #64 + *[0-9a-f]+: 7f7f0400 ushr d0, d0, #1 + *[0-9a-f]+: 7f401400 usra d0, d0, #64 + *[0-9a-f]+: 7f40141f usra d31, d0, #64 + *[0-9a-f]+: 7f4017e0 usra d0, d31, #64 + *[0-9a-f]+: 7f7f1400 usra d0, d0, #1 + *[0-9a-f]+: 7f402400 urshr d0, d0, #64 + *[0-9a-f]+: 7f40241f urshr d31, d0, #64 + *[0-9a-f]+: 7f4027e0 urshr d0, d31, #64 + *[0-9a-f]+: 7f7f2400 urshr d0, d0, #1 + *[0-9a-f]+: 7f403400 ursra d0, d0, #64 + *[0-9a-f]+: 7f40341f ursra d31, d0, #64 + *[0-9a-f]+: 7f4037e0 ursra d0, d31, #64 + *[0-9a-f]+: 7f7f3400 ursra d0, d0, #1 + *[0-9a-f]+: 7f404400 sri d0, d0, #64 + *[0-9a-f]+: 7f40441f sri d31, d0, #64 + *[0-9a-f]+: 7f4047e0 sri d0, d31, #64 + *[0-9a-f]+: 7f7f4400 sri d0, d0, #1 + *[0-9a-f]+: 7f405400 sli d0, d0, #0 + *[0-9a-f]+: 7f40541f sli d31, d0, #0 + *[0-9a-f]+: 7f4057e0 sli d0, d31, #0 + *[0-9a-f]+: 7f7f5400 sli d0, d0, #63 + *[0-9a-f]+: 7f086400 sqshlu b0, b0, #0 + *[0-9a-f]+: 7f08641f sqshlu b31, b0, #0 + *[0-9a-f]+: 7f0867e0 sqshlu b0, b31, #0 + *[0-9a-f]+: 7f0f6400 sqshlu b0, b0, #7 + *[0-9a-f]+: 7f106400 sqshlu h0, h0, #0 + *[0-9a-f]+: 7f10641f sqshlu h31, h0, #0 + *[0-9a-f]+: 7f1067e0 sqshlu h0, h31, #0 + *[0-9a-f]+: 7f1f6400 sqshlu h0, h0, #15 + *[0-9a-f]+: 7f206400 sqshlu s0, s0, #0 + *[0-9a-f]+: 7f20641f sqshlu s31, s0, #0 + *[0-9a-f]+: 7f2067e0 sqshlu s0, s31, #0 + *[0-9a-f]+: 7f3f6400 sqshlu s0, s0, #31 + *[0-9a-f]+: 7f406400 sqshlu d0, d0, #0 + *[0-9a-f]+: 7f40641f sqshlu d31, d0, #0 + *[0-9a-f]+: 7f4067e0 sqshlu d0, d31, #0 + *[0-9a-f]+: 7f7f6400 sqshlu d0, d0, #63 + *[0-9a-f]+: 7f087400 uqshl b0, b0, #0 + *[0-9a-f]+: 7f08741f uqshl b31, b0, #0 + *[0-9a-f]+: 7f0877e0 uqshl b0, b31, #0 + *[0-9a-f]+: 7f0f7400 uqshl b0, b0, #7 + *[0-9a-f]+: 7f107400 uqshl h0, h0, #0 + *[0-9a-f]+: 7f10741f uqshl h31, h0, #0 + *[0-9a-f]+: 7f1077e0 uqshl h0, h31, #0 + *[0-9a-f]+: 7f1f7400 uqshl h0, h0, #15 + *[0-9a-f]+: 7f207400 uqshl s0, s0, #0 + *[0-9a-f]+: 7f20741f uqshl s31, s0, #0 + *[0-9a-f]+: 7f2077e0 uqshl s0, s31, #0 + *[0-9a-f]+: 7f3f7400 uqshl s0, s0, #31 + *[0-9a-f]+: 7f407400 uqshl d0, d0, #0 + *[0-9a-f]+: 7f40741f uqshl d31, d0, #0 + *[0-9a-f]+: 7f4077e0 uqshl d0, d31, #0 + *[0-9a-f]+: 7f7f7400 uqshl d0, d0, #63 + *[0-9a-f]+: 7f088400 sqshrun b0, h0, #8 + *[0-9a-f]+: 7f08841f sqshrun b31, h0, #8 + *[0-9a-f]+: 7f0887e0 sqshrun b0, h31, #8 + *[0-9a-f]+: 7f0f8400 sqshrun b0, h0, #1 + *[0-9a-f]+: 7f108400 sqshrun h0, s0, #16 + *[0-9a-f]+: 7f10841f sqshrun h31, s0, #16 + *[0-9a-f]+: 7f1087e0 sqshrun h0, s31, #16 + *[0-9a-f]+: 7f1f8400 sqshrun h0, s0, #1 + *[0-9a-f]+: 7f208400 sqshrun s0, d0, #32 + *[0-9a-f]+: 7f20841f sqshrun s31, d0, #32 + *[0-9a-f]+: 7f2087e0 sqshrun s0, d31, #32 + *[0-9a-f]+: 7f3f8400 sqshrun s0, d0, #1 + *[0-9a-f]+: 7f088c00 sqrshrun b0, h0, #8 + *[0-9a-f]+: 7f088c1f sqrshrun b31, h0, #8 + *[0-9a-f]+: 7f088fe0 sqrshrun b0, h31, #8 + *[0-9a-f]+: 7f0f8c00 sqrshrun b0, h0, #1 + *[0-9a-f]+: 7f108c00 sqrshrun h0, s0, #16 + *[0-9a-f]+: 7f108c1f sqrshrun h31, s0, #16 + *[0-9a-f]+: 7f108fe0 sqrshrun h0, s31, #16 + *[0-9a-f]+: 7f1f8c00 sqrshrun h0, s0, #1 + *[0-9a-f]+: 7f208c00 sqrshrun s0, d0, #32 + *[0-9a-f]+: 7f208c1f sqrshrun s31, d0, #32 + *[0-9a-f]+: 7f208fe0 sqrshrun s0, d31, #32 + *[0-9a-f]+: 7f3f8c00 sqrshrun s0, d0, #1 + *[0-9a-f]+: 7f089400 uqshrn b0, h0, #8 + *[0-9a-f]+: 7f08941f uqshrn b31, h0, #8 + *[0-9a-f]+: 7f0897e0 uqshrn b0, h31, #8 + *[0-9a-f]+: 7f0f9400 uqshrn b0, h0, #1 + *[0-9a-f]+: 7f109400 uqshrn h0, s0, #16 + *[0-9a-f]+: 7f10941f uqshrn h31, s0, #16 + *[0-9a-f]+: 7f1097e0 uqshrn h0, s31, #16 + *[0-9a-f]+: 7f1f9400 uqshrn h0, s0, #1 + *[0-9a-f]+: 7f209400 uqshrn s0, d0, #32 + *[0-9a-f]+: 7f20941f uqshrn s31, d0, #32 + *[0-9a-f]+: 7f2097e0 uqshrn s0, d31, #32 + *[0-9a-f]+: 7f3f9400 uqshrn s0, d0, #1 + *[0-9a-f]+: 7f089c00 uqrshrn b0, h0, #8 + *[0-9a-f]+: 7f089c1f uqrshrn b31, h0, #8 + *[0-9a-f]+: 7f089fe0 uqrshrn b0, h31, #8 + *[0-9a-f]+: 7f0f9c00 uqrshrn b0, h0, #1 + *[0-9a-f]+: 7f109c00 uqrshrn h0, s0, #16 + *[0-9a-f]+: 7f109c1f uqrshrn h31, s0, #16 + *[0-9a-f]+: 7f109fe0 uqrshrn h0, s31, #16 + *[0-9a-f]+: 7f1f9c00 uqrshrn h0, s0, #1 + *[0-9a-f]+: 7f209c00 uqrshrn s0, d0, #32 + *[0-9a-f]+: 7f209c1f uqrshrn s31, d0, #32 + *[0-9a-f]+: 7f209fe0 uqrshrn s0, d31, #32 + *[0-9a-f]+: 7f3f9c00 uqrshrn s0, d0, #1 diff --git a/gas/testsuite/gas/aarch64/advsimd-scalar-shift-immediate.s b/gas/testsuite/gas/aarch64/advsimd-scalar-shift-immediate.s new file mode 100644 index 0000000..bddc9cb --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsimd-scalar-shift-immediate.s @@ -0,0 +1,183 @@ + sshr d0, d0, #64 + sshr d31, d0, #64 + sshr d0, d31, #64 + sshr d0, d0, #1 + + ssra d0, d0, #64 + ssra d31, d0, #64 + ssra d0, d31, #64 + ssra d0, d0, #1 + + srshr d0, d0, #64 + srshr d31, d0, #64 + srshr d0, d31, #64 + srshr d0, d0, #1 + + srsra d0, d0, #64 + srsra d31, d0, #64 + srsra d0, d31, #64 + srsra d0, d0, #1 + + shl d0, d0, #0 + shl d31, d0, #0 + shl d0, d31, #0 + shl d0, d0, #63 + + sqshl b0, b0, #0 + sqshl b31, b0, #0 + sqshl b0, b31, #0 + sqshl b0, b0, #7 + sqshl h0, h0, #0 + sqshl h31, h0, #0 + sqshl h0, h31, #0 + sqshl h0, h0, #15 + sqshl s0, s0, #0 + sqshl s31, s0, #0 + sqshl s0, s31, #0 + sqshl s0, s0, #31 + sqshl d0, d0, #0 + sqshl d31, d0, #0 + sqshl d0, d31, #0 + sqshl d0, d0, #63 + + sqshrn b0, h0, #8 + sqshrn b31, h0, #8 + sqshrn b0, h31, #8 + sqshrn b0, h0, #1 + sqshrn h0, s0, #16 + sqshrn h31, s0, #16 + sqshrn h0, s31, #16 + sqshrn h0, s0, #1 + sqshrn s0, d0, #32 + sqshrn s31, d0, #32 + sqshrn s0, d31, #32 + sqshrn s0, d0, #1 + + sqrshrn b0, h0, #8 + sqrshrn b31, h0, #8 + sqrshrn b0, h31, #8 + sqrshrn b0, h0, #1 + sqrshrn h0, s0, #16 + sqrshrn h31, s0, #16 + sqrshrn h0, s31, #16 + sqrshrn h0, s0, #1 + sqrshrn s0, d0, #32 + sqrshrn s31, d0, #32 + sqrshrn s0, d31, #32 + sqrshrn s0, d0, #1 + + ushr d0, d0, #64 + ushr d31, d0, #64 + ushr d0, d31, #64 + ushr d0, d0, #1 + + usra d0, d0, #64 + usra d31, d0, #64 + usra d0, d31, #64 + usra d0, d0, #1 + + urshr d0, d0, #64 + urshr d31, d0, #64 + urshr d0, d31, #64 + urshr d0, d0, #1 + + ursra d0, d0, #64 + ursra d31, d0, #64 + ursra d0, d31, #64 + ursra d0, d0, #1 + + sri d0, d0, #64 + sri d31, d0, #64 + sri d0, d31, #64 + sri d0, d0, #1 + + sli d0, d0, #0 + sli d31, d0, #0 + sli d0, d31, #0 + sli d0, d0, #63 + + sqshlu b0, b0, #0 + sqshlu b31, b0, #0 + sqshlu b0, b31, #0 + sqshlu b0, b0, #7 + sqshlu h0, h0, #0 + sqshlu h31, h0, #0 + sqshlu h0, h31, #0 + sqshlu h0, h0, #15 + sqshlu s0, s0, #0 + sqshlu s31, s0, #0 + sqshlu s0, s31, #0 + sqshlu s0, s0, #31 + sqshlu d0, d0, #0 + sqshlu d31, d0, #0 + sqshlu d0, d31, #0 + sqshlu d0, d0, #63 + + uqshl b0, b0, #0 + uqshl b31, b0, #0 + uqshl b0, b31, #0 + uqshl b0, b0, #7 + uqshl h0, h0, #0 + uqshl h31, h0, #0 + uqshl h0, h31, #0 + uqshl h0, h0, #15 + uqshl s0, s0, #0 + uqshl s31, s0, #0 + uqshl s0, s31, #0 + uqshl s0, s0, #31 + uqshl d0, d0, #0 + uqshl d31, d0, #0 + uqshl d0, d31, #0 + uqshl d0, d0, #63 + + sqshrun b0, h0, #8 + sqshrun b31, h0, #8 + sqshrun b0, h31, #8 + sqshrun b0, h0, #1 + sqshrun h0, s0, #16 + sqshrun h31, s0, #16 + sqshrun h0, s31, #16 + sqshrun h0, s0, #1 + sqshrun s0, d0, #32 + sqshrun s31, d0, #32 + sqshrun s0, d31, #32 + sqshrun s0, d0, #1 + + sqrshrun b0, h0, #8 + sqrshrun b31, h0, #8 + sqrshrun b0, h31, #8 + sqrshrun b0, h0, #1 + sqrshrun h0, s0, #16 + sqrshrun h31, s0, #16 + sqrshrun h0, s31, #16 + sqrshrun h0, s0, #1 + sqrshrun s0, d0, #32 + sqrshrun s31, d0, #32 + sqrshrun s0, d31, #32 + sqrshrun s0, d0, #1 + + uqshrn b0, h0, #8 + uqshrn b31, h0, #8 + uqshrn b0, h31, #8 + uqshrn b0, h0, #1 + uqshrn h0, s0, #16 + uqshrn h31, s0, #16 + uqshrn h0, s31, #16 + uqshrn h0, s0, #1 + uqshrn s0, d0, #32 + uqshrn s31, d0, #32 + uqshrn s0, d31, #32 + uqshrn s0, d0, #1 + + uqrshrn b0, h0, #8 + uqrshrn b31, h0, #8 + uqrshrn b0, h31, #8 + uqrshrn b0, h0, #1 + uqrshrn h0, s0, #16 + uqrshrn h31, s0, #16 + uqrshrn h0, s31, #16 + uqrshrn h0, s0, #1 + uqrshrn s0, d0, #32 + uqrshrn s31, d0, #32 + uqrshrn s0, d31, #32 + uqrshrn s0, d0, #1 diff --git a/gas/testsuite/gas/aarch64/advsimd-scalar-three-same.d b/gas/testsuite/gas/aarch64/advsimd-scalar-three-same.d new file mode 100644 index 0000000..31acbaa --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsimd-scalar-three-same.d @@ -0,0 +1,201 @@ +#as: -march=armv8-a +#objdump: -dr + +.*: file format .* + + +Disassembly of section \.text: + +0+ <\.text>: + *[0-9a-f]+: 5e200c00 sqadd b0, b0, b0 + *[0-9a-f]+: 5e200c1f sqadd b31, b0, b0 + *[0-9a-f]+: 5e200fe0 sqadd b0, b31, b0 + *[0-9a-f]+: 5e3f0c00 sqadd b0, b0, b31 + *[0-9a-f]+: 5e600c00 sqadd h0, h0, h0 + *[0-9a-f]+: 5e600c1f sqadd h31, h0, h0 + *[0-9a-f]+: 5e600fe0 sqadd h0, h31, h0 + *[0-9a-f]+: 5e7f0c00 sqadd h0, h0, h31 + *[0-9a-f]+: 5ea00c00 sqadd s0, s0, s0 + *[0-9a-f]+: 5ea00c1f sqadd s31, s0, s0 + *[0-9a-f]+: 5ea00fe0 sqadd s0, s31, s0 + *[0-9a-f]+: 5ebf0c00 sqadd s0, s0, s31 + *[0-9a-f]+: 5ee00c00 sqadd d0, d0, d0 + *[0-9a-f]+: 5ee00c1f sqadd d31, d0, d0 + *[0-9a-f]+: 5ee00fe0 sqadd d0, d31, d0 + *[0-9a-f]+: 5eff0c00 sqadd d0, d0, d31 + *[0-9a-f]+: 5e202c00 sqsub b0, b0, b0 + *[0-9a-f]+: 5e202c1f sqsub b31, b0, b0 + *[0-9a-f]+: 5e202fe0 sqsub b0, b31, b0 + *[0-9a-f]+: 5e3f2c00 sqsub b0, b0, b31 + *[0-9a-f]+: 5e602c00 sqsub h0, h0, h0 + *[0-9a-f]+: 5e602c1f sqsub h31, h0, h0 + *[0-9a-f]+: 5e602fe0 sqsub h0, h31, h0 + *[0-9a-f]+: 5e7f2c00 sqsub h0, h0, h31 + *[0-9a-f]+: 5ea02c00 sqsub s0, s0, s0 + *[0-9a-f]+: 5ea02c1f sqsub s31, s0, s0 + *[0-9a-f]+: 5ea02fe0 sqsub s0, s31, s0 + *[0-9a-f]+: 5ebf2c00 sqsub s0, s0, s31 + *[0-9a-f]+: 5ee02c00 sqsub d0, d0, d0 + *[0-9a-f]+: 5ee02c1f sqsub d31, d0, d0 + *[0-9a-f]+: 5ee02fe0 sqsub d0, d31, d0 + *[0-9a-f]+: 5eff2c00 sqsub d0, d0, d31 + *[0-9a-f]+: 5e204c00 sqshl b0, b0, b0 + *[0-9a-f]+: 5e204c1f sqshl b31, b0, b0 + *[0-9a-f]+: 5e204fe0 sqshl b0, b31, b0 + *[0-9a-f]+: 5e3f4c00 sqshl b0, b0, b31 + *[0-9a-f]+: 5e604c00 sqshl h0, h0, h0 + *[0-9a-f]+: 5e604c1f sqshl h31, h0, h0 + *[0-9a-f]+: 5e604fe0 sqshl h0, h31, h0 + *[0-9a-f]+: 5e7f4c00 sqshl h0, h0, h31 + *[0-9a-f]+: 5ea04c00 sqshl s0, s0, s0 + *[0-9a-f]+: 5ea04c1f sqshl s31, s0, s0 + *[0-9a-f]+: 5ea04fe0 sqshl s0, s31, s0 + *[0-9a-f]+: 5ebf4c00 sqshl s0, s0, s31 + *[0-9a-f]+: 5ee04c00 sqshl d0, d0, d0 + *[0-9a-f]+: 5ee04c1f sqshl d31, d0, d0 + *[0-9a-f]+: 5ee04fe0 sqshl d0, d31, d0 + *[0-9a-f]+: 5eff4c00 sqshl d0, d0, d31 + *[0-9a-f]+: 5e205c00 sqrshl b0, b0, b0 + *[0-9a-f]+: 5e205c1f sqrshl b31, b0, b0 + *[0-9a-f]+: 5e205fe0 sqrshl b0, b31, b0 + *[0-9a-f]+: 5e3f5c00 sqrshl b0, b0, b31 + *[0-9a-f]+: 5e605c00 sqrshl h0, h0, h0 + *[0-9a-f]+: 5e605c1f sqrshl h31, h0, h0 + *[0-9a-f]+: 5e605fe0 sqrshl h0, h31, h0 + *[0-9a-f]+: 5e7f5c00 sqrshl h0, h0, h31 + *[0-9a-f]+: 5ea05c00 sqrshl s0, s0, s0 + *[0-9a-f]+: 5ea05c1f sqrshl s31, s0, s0 + *[0-9a-f]+: 5ea05fe0 sqrshl s0, s31, s0 + *[0-9a-f]+: 5ebf5c00 sqrshl s0, s0, s31 + *[0-9a-f]+: 5ee05c00 sqrshl d0, d0, d0 + *[0-9a-f]+: 5ee05c1f sqrshl d31, d0, d0 + *[0-9a-f]+: 5ee05fe0 sqrshl d0, d31, d0 + *[0-9a-f]+: 5eff5c00 sqrshl d0, d0, d31 + *[0-9a-f]+: 5e60b400 sqdmulh h0, h0, h0 + *[0-9a-f]+: 5e60b41f sqdmulh h31, h0, h0 + *[0-9a-f]+: 5e60b7e0 sqdmulh h0, h31, h0 + *[0-9a-f]+: 5e7fb400 sqdmulh h0, h0, h31 + *[0-9a-f]+: 5ea0b400 sqdmulh s0, s0, s0 + *[0-9a-f]+: 5ea0b41f sqdmulh s31, s0, s0 + *[0-9a-f]+: 5ea0b7e0 sqdmulh s0, s31, s0 + *[0-9a-f]+: 5ebfb400 sqdmulh s0, s0, s31 + *[0-9a-f]+: 5ee03400 cmgt d0, d0, d0 + *[0-9a-f]+: 5ee0341f cmgt d31, d0, d0 + *[0-9a-f]+: 5ee037e0 cmgt d0, d31, d0 + *[0-9a-f]+: 5eff3400 cmgt d0, d0, d31 + *[0-9a-f]+: 5ee03c00 cmge d0, d0, d0 + *[0-9a-f]+: 5ee03c1f cmge d31, d0, d0 + *[0-9a-f]+: 5ee03fe0 cmge d0, d31, d0 + *[0-9a-f]+: 5eff3c00 cmge d0, d0, d31 + *[0-9a-f]+: 5ee04400 sshl d0, d0, d0 + *[0-9a-f]+: 5ee0441f sshl d31, d0, d0 + *[0-9a-f]+: 5ee047e0 sshl d0, d31, d0 + *[0-9a-f]+: 5eff4400 sshl d0, d0, d31 + *[0-9a-f]+: 5ee05400 srshl d0, d0, d0 + *[0-9a-f]+: 5ee0541f srshl d31, d0, d0 + *[0-9a-f]+: 5ee057e0 srshl d0, d31, d0 + *[0-9a-f]+: 5eff5400 srshl d0, d0, d31 + *[0-9a-f]+: 5ee08400 add d0, d0, d0 + *[0-9a-f]+: 5ee0841f add d31, d0, d0 + *[0-9a-f]+: 5ee087e0 add d0, d31, d0 + *[0-9a-f]+: 5eff8400 add d0, d0, d31 + *[0-9a-f]+: 5ee08c00 cmtst d0, d0, d0 + *[0-9a-f]+: 5ee08c1f cmtst d31, d0, d0 + *[0-9a-f]+: 5ee08fe0 cmtst d0, d31, d0 + *[0-9a-f]+: 5eff8c00 cmtst d0, d0, d31 + *[0-9a-f]+: 7e200c00 uqadd b0, b0, b0 + *[0-9a-f]+: 7e200c1f uqadd b31, b0, b0 + *[0-9a-f]+: 7e200fe0 uqadd b0, b31, b0 + *[0-9a-f]+: 7e3f0c00 uqadd b0, b0, b31 + *[0-9a-f]+: 7e600c00 uqadd h0, h0, h0 + *[0-9a-f]+: 7e600c1f uqadd h31, h0, h0 + *[0-9a-f]+: 7e600fe0 uqadd h0, h31, h0 + *[0-9a-f]+: 7e7f0c00 uqadd h0, h0, h31 + *[0-9a-f]+: 7ea00c00 uqadd s0, s0, s0 + *[0-9a-f]+: 7ea00c1f uqadd s31, s0, s0 + *[0-9a-f]+: 7ea00fe0 uqadd s0, s31, s0 + *[0-9a-f]+: 7ebf0c00 uqadd s0, s0, s31 + *[0-9a-f]+: 7ee00c00 uqadd d0, d0, d0 + *[0-9a-f]+: 7ee00c1f uqadd d31, d0, d0 + *[0-9a-f]+: 7ee00fe0 uqadd d0, d31, d0 + *[0-9a-f]+: 7eff0c00 uqadd d0, d0, d31 + *[0-9a-f]+: 7e202c00 uqsub b0, b0, b0 + *[0-9a-f]+: 7e202c1f uqsub b31, b0, b0 + *[0-9a-f]+: 7e202fe0 uqsub b0, b31, b0 + *[0-9a-f]+: 7e3f2c00 uqsub b0, b0, b31 + *[0-9a-f]+: 7e602c00 uqsub h0, h0, h0 + *[0-9a-f]+: 7e602c1f uqsub h31, h0, h0 + *[0-9a-f]+: 7e602fe0 uqsub h0, h31, h0 + *[0-9a-f]+: 7e7f2c00 uqsub h0, h0, h31 + *[0-9a-f]+: 7ea02c00 uqsub s0, s0, s0 + *[0-9a-f]+: 7ea02c1f uqsub s31, s0, s0 + *[0-9a-f]+: 7ea02fe0 uqsub s0, s31, s0 + *[0-9a-f]+: 7ebf2c00 uqsub s0, s0, s31 + *[0-9a-f]+: 7ee02c00 uqsub d0, d0, d0 + *[0-9a-f]+: 7ee02c1f uqsub d31, d0, d0 + *[0-9a-f]+: 7ee02fe0 uqsub d0, d31, d0 + *[0-9a-f]+: 7eff2c00 uqsub d0, d0, d31 + *[0-9a-f]+: 7e204c00 uqshl b0, b0, b0 + *[0-9a-f]+: 7e204c1f uqshl b31, b0, b0 + *[0-9a-f]+: 7e204fe0 uqshl b0, b31, b0 + *[0-9a-f]+: 7e3f4c00 uqshl b0, b0, b31 + *[0-9a-f]+: 7e604c00 uqshl h0, h0, h0 + *[0-9a-f]+: 7e604c1f uqshl h31, h0, h0 + *[0-9a-f]+: 7e604fe0 uqshl h0, h31, h0 + *[0-9a-f]+: 7e7f4c00 uqshl h0, h0, h31 + *[0-9a-f]+: 7ea04c00 uqshl s0, s0, s0 + *[0-9a-f]+: 7ea04c1f uqshl s31, s0, s0 + *[0-9a-f]+: 7ea04fe0 uqshl s0, s31, s0 + *[0-9a-f]+: 7ebf4c00 uqshl s0, s0, s31 + *[0-9a-f]+: 7ee04c00 uqshl d0, d0, d0 + *[0-9a-f]+: 7ee04c1f uqshl d31, d0, d0 + *[0-9a-f]+: 7ee04fe0 uqshl d0, d31, d0 + *[0-9a-f]+: 7eff4c00 uqshl d0, d0, d31 + *[0-9a-f]+: 7e205c00 uqrshl b0, b0, b0 + *[0-9a-f]+: 7e205c1f uqrshl b31, b0, b0 + *[0-9a-f]+: 7e205fe0 uqrshl b0, b31, b0 + *[0-9a-f]+: 7e3f5c00 uqrshl b0, b0, b31 + *[0-9a-f]+: 7e605c00 uqrshl h0, h0, h0 + *[0-9a-f]+: 7e605c1f uqrshl h31, h0, h0 + *[0-9a-f]+: 7e605fe0 uqrshl h0, h31, h0 + *[0-9a-f]+: 7e7f5c00 uqrshl h0, h0, h31 + *[0-9a-f]+: 7ea05c00 uqrshl s0, s0, s0 + *[0-9a-f]+: 7ea05c1f uqrshl s31, s0, s0 + *[0-9a-f]+: 7ea05fe0 uqrshl s0, s31, s0 + *[0-9a-f]+: 7ebf5c00 uqrshl s0, s0, s31 + *[0-9a-f]+: 7ee05c00 uqrshl d0, d0, d0 + *[0-9a-f]+: 7ee05c1f uqrshl d31, d0, d0 + *[0-9a-f]+: 7ee05fe0 uqrshl d0, d31, d0 + *[0-9a-f]+: 7eff5c00 uqrshl d0, d0, d31 + *[0-9a-f]+: 7e60b400 sqrdmulh h0, h0, h0 + *[0-9a-f]+: 7e60b41f sqrdmulh h31, h0, h0 + *[0-9a-f]+: 7e60b7e0 sqrdmulh h0, h31, h0 + *[0-9a-f]+: 7e7fb400 sqrdmulh h0, h0, h31 + *[0-9a-f]+: 7ea0b400 sqrdmulh s0, s0, s0 + *[0-9a-f]+: 7ea0b41f sqrdmulh s31, s0, s0 + *[0-9a-f]+: 7ea0b7e0 sqrdmulh s0, s31, s0 + *[0-9a-f]+: 7ebfb400 sqrdmulh s0, s0, s31 + *[0-9a-f]+: 7ee03400 cmhi d0, d0, d0 + *[0-9a-f]+: 7ee0341f cmhi d31, d0, d0 + *[0-9a-f]+: 7ee037e0 cmhi d0, d31, d0 + *[0-9a-f]+: 7eff3400 cmhi d0, d0, d31 + *[0-9a-f]+: 7ee03c00 cmhs d0, d0, d0 + *[0-9a-f]+: 7ee03c1f cmhs d31, d0, d0 + *[0-9a-f]+: 7ee03fe0 cmhs d0, d31, d0 + *[0-9a-f]+: 7eff3c00 cmhs d0, d0, d31 + *[0-9a-f]+: 7ee04400 ushl d0, d0, d0 + *[0-9a-f]+: 7ee0441f ushl d31, d0, d0 + *[0-9a-f]+: 7ee047e0 ushl d0, d31, d0 + *[0-9a-f]+: 7eff4400 ushl d0, d0, d31 + *[0-9a-f]+: 7ee05400 urshl d0, d0, d0 + *[0-9a-f]+: 7ee0541f urshl d31, d0, d0 + *[0-9a-f]+: 7ee057e0 urshl d0, d31, d0 + *[0-9a-f]+: 7eff5400 urshl d0, d0, d31 + *[0-9a-f]+: 7ee08400 sub d0, d0, d0 + *[0-9a-f]+: 7ee0841f sub d31, d0, d0 + *[0-9a-f]+: 7ee087e0 sub d0, d31, d0 + *[0-9a-f]+: 7eff8400 sub d0, d0, d31 + *[0-9a-f]+: 7ee08c00 cmeq d0, d0, d0 + *[0-9a-f]+: 7ee08c1f cmeq d31, d0, d0 + *[0-9a-f]+: 7ee08fe0 cmeq d0, d31, d0 + *[0-9a-f]+: 7eff8c00 cmeq d0, d0, d31 diff --git a/gas/testsuite/gas/aarch64/advsimd-scalar-three-same.s b/gas/testsuite/gas/aarch64/advsimd-scalar-three-same.s new file mode 100644 index 0000000..7015bce --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsimd-scalar-three-same.s @@ -0,0 +1,213 @@ + sqadd b0, b0, b0 + sqadd b31, b0, b0 + sqadd b0, b31, b0 + sqadd b0, b0, b31 + sqadd h0, h0, h0 + sqadd h31, h0, h0 + sqadd h0, h31, h0 + sqadd h0, h0, h31 + sqadd s0, s0, s0 + sqadd s31, s0, s0 + sqadd s0, s31, s0 + sqadd s0, s0, s31 + sqadd d0, d0, d0 + sqadd d31, d0, d0 + sqadd d0, d31, d0 + sqadd d0, d0, d31 + + sqsub b0, b0, b0 + sqsub b31, b0, b0 + sqsub b0, b31, b0 + sqsub b0, b0, b31 + sqsub h0, h0, h0 + sqsub h31, h0, h0 + sqsub h0, h31, h0 + sqsub h0, h0, h31 + sqsub s0, s0, s0 + sqsub s31, s0, s0 + sqsub s0, s31, s0 + sqsub s0, s0, s31 + sqsub d0, d0, d0 + sqsub d31, d0, d0 + sqsub d0, d31, d0 + sqsub d0, d0, d31 + + sqshl b0, b0, b0 + sqshl b31, b0, b0 + sqshl b0, b31, b0 + sqshl b0, b0, b31 + sqshl h0, h0, h0 + sqshl h31, h0, h0 + sqshl h0, h31, h0 + sqshl h0, h0, h31 + sqshl s0, s0, s0 + sqshl s31, s0, s0 + sqshl s0, s31, s0 + sqshl s0, s0, s31 + sqshl d0, d0, d0 + sqshl d31, d0, d0 + sqshl d0, d31, d0 + sqshl d0, d0, d31 + + sqrshl b0, b0, b0 + sqrshl b31, b0, b0 + sqrshl b0, b31, b0 + sqrshl b0, b0, b31 + sqrshl h0, h0, h0 + sqrshl h31, h0, h0 + sqrshl h0, h31, h0 + sqrshl h0, h0, h31 + sqrshl s0, s0, s0 + sqrshl s31, s0, s0 + sqrshl s0, s31, s0 + sqrshl s0, s0, s31 + sqrshl d0, d0, d0 + sqrshl d31, d0, d0 + sqrshl d0, d31, d0 + sqrshl d0, d0, d31 + + sqdmulh h0, h0, h0 + sqdmulh h31, h0, h0 + sqdmulh h0, h31, h0 + sqdmulh h0, h0, h31 + sqdmulh s0, s0, s0 + sqdmulh s31, s0, s0 + sqdmulh s0, s31, s0 + sqdmulh s0, s0, s31 + + cmgt d0, d0, d0 + cmgt d31, d0, d0 + cmgt d0, d31, d0 + cmgt d0, d0, d31 + + cmge d0, d0, d0 + cmge d31, d0, d0 + cmge d0, d31, d0 + cmge d0, d0, d31 + + sshl d0, d0, d0 + sshl d31, d0, d0 + sshl d0, d31, d0 + sshl d0, d0, d31 + + srshl d0, d0, d0 + srshl d31, d0, d0 + srshl d0, d31, d0 + srshl d0, d0, d31 + + add d0, d0, d0 + add d31, d0, d0 + add d0, d31, d0 + add d0, d0, d31 + + cmtst d0, d0, d0 + cmtst d31, d0, d0 + cmtst d0, d31, d0 + cmtst d0, d0, d31 + + uqadd b0, b0, b0 + uqadd b31, b0, b0 + uqadd b0, b31, b0 + uqadd b0, b0, b31 + uqadd h0, h0, h0 + uqadd h31, h0, h0 + uqadd h0, h31, h0 + uqadd h0, h0, h31 + uqadd s0, s0, s0 + uqadd s31, s0, s0 + uqadd s0, s31, s0 + uqadd s0, s0, s31 + uqadd d0, d0, d0 + uqadd d31, d0, d0 + uqadd d0, d31, d0 + uqadd d0, d0, d31 + + uqsub b0, b0, b0 + uqsub b31, b0, b0 + uqsub b0, b31, b0 + uqsub b0, b0, b31 + uqsub h0, h0, h0 + uqsub h31, h0, h0 + uqsub h0, h31, h0 + uqsub h0, h0, h31 + uqsub s0, s0, s0 + uqsub s31, s0, s0 + uqsub s0, s31, s0 + uqsub s0, s0, s31 + uqsub d0, d0, d0 + uqsub d31, d0, d0 + uqsub d0, d31, d0 + uqsub d0, d0, d31 + + uqshl b0, b0, b0 + uqshl b31, b0, b0 + uqshl b0, b31, b0 + uqshl b0, b0, b31 + uqshl h0, h0, h0 + uqshl h31, h0, h0 + uqshl h0, h31, h0 + uqshl h0, h0, h31 + uqshl s0, s0, s0 + uqshl s31, s0, s0 + uqshl s0, s31, s0 + uqshl s0, s0, s31 + uqshl d0, d0, d0 + uqshl d31, d0, d0 + uqshl d0, d31, d0 + uqshl d0, d0, d31 + + uqrshl b0, b0, b0 + uqrshl b31, b0, b0 + uqrshl b0, b31, b0 + uqrshl b0, b0, b31 + uqrshl h0, h0, h0 + uqrshl h31, h0, h0 + uqrshl h0, h31, h0 + uqrshl h0, h0, h31 + uqrshl s0, s0, s0 + uqrshl s31, s0, s0 + uqrshl s0, s31, s0 + uqrshl s0, s0, s31 + uqrshl d0, d0, d0 + uqrshl d31, d0, d0 + uqrshl d0, d31, d0 + uqrshl d0, d0, d31 + + sqrdmulh h0, h0, h0 + sqrdmulh h31, h0, h0 + sqrdmulh h0, h31, h0 + sqrdmulh h0, h0, h31 + sqrdmulh s0, s0, s0 + sqrdmulh s31, s0, s0 + sqrdmulh s0, s31, s0 + sqrdmulh s0, s0, s31 + + cmhi d0, d0, d0 + cmhi d31, d0, d0 + cmhi d0, d31, d0 + cmhi d0, d0, d31 + + cmhs d0, d0, d0 + cmhs d31, d0, d0 + cmhs d0, d31, d0 + cmhs d0, d0, d31 + + ushl d0, d0, d0 + ushl d31, d0, d0 + ushl d0, d31, d0 + ushl d0, d0, d31 + + urshl d0, d0, d0 + urshl d31, d0, d0 + urshl d0, d31, d0 + urshl d0, d0, d31 + + sub d0, d0, d0 + sub d31, d0, d0 + sub d0, d31, d0 + sub d0, d0, d31 + + cmeq d0, d0, d0 + cmeq d31, d0, d0 + cmeq d0, d31, d0 + cmeq d0, d0, d31 diff --git a/gas/testsuite/gas/aarch64/advsimd-scalar-two-reg-misc.d b/gas/testsuite/gas/aarch64/advsimd-scalar-two-reg-misc.d new file mode 100644 index 0000000..98660d6 --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsimd-scalar-two-reg-misc.d @@ -0,0 +1,108 @@ +#as: -march=armv8-a +#objdump: -dr + +.*: file format .* + + +Disassembly of section \.text: + +0+ <\.text>: + *[0-9a-f]+: 5e203800 suqadd b0, b0 + *[0-9a-f]+: 5e20381f suqadd b31, b0 + *[0-9a-f]+: 5e203be0 suqadd b0, b31 + *[0-9a-f]+: 5e603800 suqadd h0, h0 + *[0-9a-f]+: 5e60381f suqadd h31, h0 + *[0-9a-f]+: 5e603be0 suqadd h0, h31 + *[0-9a-f]+: 5ea03800 suqadd s0, s0 + *[0-9a-f]+: 5ea0381f suqadd s31, s0 + *[0-9a-f]+: 5ea03be0 suqadd s0, s31 + *[0-9a-f]+: 5ee03800 suqadd d0, d0 + *[0-9a-f]+: 5ee0381f suqadd d31, d0 + *[0-9a-f]+: 5ee03be0 suqadd d0, d31 + *[0-9a-f]+: 5e207800 sqabs b0, b0 + *[0-9a-f]+: 5e20781f sqabs b31, b0 + *[0-9a-f]+: 5e207be0 sqabs b0, b31 + *[0-9a-f]+: 5e607800 sqabs h0, h0 + *[0-9a-f]+: 5e60781f sqabs h31, h0 + *[0-9a-f]+: 5e607be0 sqabs h0, h31 + *[0-9a-f]+: 5ea07800 sqabs s0, s0 + *[0-9a-f]+: 5ea0781f sqabs s31, s0 + *[0-9a-f]+: 5ea07be0 sqabs s0, s31 + *[0-9a-f]+: 5ee07800 sqabs d0, d0 + *[0-9a-f]+: 5ee0781f sqabs d31, d0 + *[0-9a-f]+: 5ee07be0 sqabs d0, d31 + *[0-9a-f]+: 5ee08800 cmgt d0, d0, #0 + *[0-9a-f]+: 5ee0881f cmgt d31, d0, #0 + *[0-9a-f]+: 5ee08be0 cmgt d0, d31, #0 + *[0-9a-f]+: 5ee09800 cmeq d0, d0, #0 + *[0-9a-f]+: 5ee0981f cmeq d31, d0, #0 + *[0-9a-f]+: 5ee09be0 cmeq d0, d31, #0 + *[0-9a-f]+: 5ee0a800 cmlt d0, d0, #0 + *[0-9a-f]+: 5ee0a81f cmlt d31, d0, #0 + *[0-9a-f]+: 5ee0abe0 cmlt d0, d31, #0 + *[0-9a-f]+: 5ee0b800 abs d0, d0 + *[0-9a-f]+: 5ee0b81f abs d31, d0 + *[0-9a-f]+: 5ee0bbe0 abs d0, d31 + *[0-9a-f]+: 5e214800 sqxtn b0, h0 + *[0-9a-f]+: 5e21481f sqxtn b31, h0 + *[0-9a-f]+: 5e214be0 sqxtn b0, h31 + *[0-9a-f]+: 5e614800 sqxtn h0, s0 + *[0-9a-f]+: 5e61481f sqxtn h31, s0 + *[0-9a-f]+: 5e614be0 sqxtn h0, s31 + *[0-9a-f]+: 5ea14800 sqxtn s0, d0 + *[0-9a-f]+: 5ea1481f sqxtn s31, d0 + *[0-9a-f]+: 5ea14be0 sqxtn s0, d31 + *[0-9a-f]+: 7e203800 usqadd b0, b0 + *[0-9a-f]+: 7e20381f usqadd b31, b0 + *[0-9a-f]+: 7e203be0 usqadd b0, b31 + *[0-9a-f]+: 7e603800 usqadd h0, h0 + *[0-9a-f]+: 7e60381f usqadd h31, h0 + *[0-9a-f]+: 7e603be0 usqadd h0, h31 + *[0-9a-f]+: 7ea03800 usqadd s0, s0 + *[0-9a-f]+: 7ea0381f usqadd s31, s0 + *[0-9a-f]+: 7ea03be0 usqadd s0, s31 + *[0-9a-f]+: 7ee03800 usqadd d0, d0 + *[0-9a-f]+: 7ee0381f usqadd d31, d0 + *[0-9a-f]+: 7ee03be0 usqadd d0, d31 + *[0-9a-f]+: 7e207800 sqneg b0, b0 + *[0-9a-f]+: 7e20781f sqneg b31, b0 + *[0-9a-f]+: 7e207be0 sqneg b0, b31 + *[0-9a-f]+: 7e607800 sqneg h0, h0 + *[0-9a-f]+: 7e60781f sqneg h31, h0 + *[0-9a-f]+: 7e607be0 sqneg h0, h31 + *[0-9a-f]+: 7ea07800 sqneg s0, s0 + *[0-9a-f]+: 7ea0781f sqneg s31, s0 + *[0-9a-f]+: 7ea07be0 sqneg s0, s31 + *[0-9a-f]+: 7ee07800 sqneg d0, d0 + *[0-9a-f]+: 7ee0781f sqneg d31, d0 + *[0-9a-f]+: 7ee07be0 sqneg d0, d31 + *[0-9a-f]+: 7ee08800 cmge d0, d0, #0 + *[0-9a-f]+: 7ee0881f cmge d31, d0, #0 + *[0-9a-f]+: 7ee08be0 cmge d0, d31, #0 + *[0-9a-f]+: 7ee09800 cmle d0, d0, #0 + *[0-9a-f]+: 7ee0981f cmle d31, d0, #0 + *[0-9a-f]+: 7ee09be0 cmle d0, d31, #0 + *[0-9a-f]+: 7ee0b800 neg d0, d0 + *[0-9a-f]+: 7ee0b81f neg d31, d0 + *[0-9a-f]+: 7ee0bbe0 neg d0, d31 + *[0-9a-f]+: 7e212800 sqxtun b0, h0 + *[0-9a-f]+: 7e21281f sqxtun b31, h0 + *[0-9a-f]+: 7e212be0 sqxtun b0, h31 + *[0-9a-f]+: 7e612800 sqxtun h0, s0 + *[0-9a-f]+: 7e61281f sqxtun h31, s0 + *[0-9a-f]+: 7e612be0 sqxtun h0, s31 + *[0-9a-f]+: 7ea12800 sqxtun s0, d0 + *[0-9a-f]+: 7ea1281f sqxtun s31, d0 + *[0-9a-f]+: 7ea12be0 sqxtun s0, d31 + *[0-9a-f]+: 7e214800 uqxtn b0, h0 + *[0-9a-f]+: 7e21481f uqxtn b31, h0 + *[0-9a-f]+: 7e214be0 uqxtn b0, h31 + *[0-9a-f]+: 7e614800 uqxtn h0, s0 + *[0-9a-f]+: 7e61481f uqxtn h31, s0 + *[0-9a-f]+: 7e614be0 uqxtn h0, s31 + *[0-9a-f]+: 7ea14800 uqxtn s0, d0 + *[0-9a-f]+: 7ea1481f uqxtn s31, d0 + *[0-9a-f]+: 7ea14be0 uqxtn s0, d31 + *[0-9a-f]+: 7e616800 fcvtxn s0, d0 + *[0-9a-f]+: 7e61681f fcvtxn s31, d0 + *[0-9a-f]+: 7e616be0 fcvtxn s0, d31 diff --git a/gas/testsuite/gas/aarch64/advsimd-scalar-two-reg-misc.s b/gas/testsuite/gas/aarch64/advsimd-scalar-two-reg-misc.s new file mode 100644 index 0000000..f8b8096 --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsimd-scalar-two-reg-misc.s @@ -0,0 +1,113 @@ + suqadd b0, b0 + suqadd b31, b0 + suqadd b0, b31 + suqadd h0, h0 + suqadd h31, h0 + suqadd h0, h31 + suqadd s0, s0 + suqadd s31, s0 + suqadd s0, s31 + suqadd d0, d0 + suqadd d31, d0 + suqadd d0, d31 + + sqabs b0, b0 + sqabs b31, b0 + sqabs b0, b31 + sqabs h0, h0 + sqabs h31, h0 + sqabs h0, h31 + sqabs s0, s0 + sqabs s31, s0 + sqabs s0, s31 + sqabs d0, d0 + sqabs d31, d0 + sqabs d0, d31 + + cmgt d0, d0, #0 + cmgt d31, d0, #0 + cmgt d0, d31, #0 + + cmeq d0, d0, #0 + cmeq d31, d0, #0 + cmeq d0, d31, #0 + + cmlt d0, d0, #0 + cmlt d31, d0, #0 + cmlt d0, d31, #0 + + abs d0, d0 + abs d31, d0 + abs d0, d31 + + sqxtn b0, h0 + sqxtn b31, h0 + sqxtn b0, h31 + sqxtn h0, s0 + sqxtn h31, s0 + sqxtn h0, s31 + sqxtn s0, d0 + sqxtn s31, d0 + sqxtn s0, d31 + + usqadd b0, b0 + usqadd b31, b0 + usqadd b0, b31 + usqadd h0, h0 + usqadd h31, h0 + usqadd h0, h31 + usqadd s0, s0 + usqadd s31, s0 + usqadd s0, s31 + usqadd d0, d0 + usqadd d31, d0 + usqadd d0, d31 + + sqneg b0, b0 + sqneg b31, b0 + sqneg b0, b31 + sqneg h0, h0 + sqneg h31, h0 + sqneg h0, h31 + sqneg s0, s0 + sqneg s31, s0 + sqneg s0, s31 + sqneg d0, d0 + sqneg d31, d0 + sqneg d0, d31 + + cmge d0, d0, #0 + cmge d31, d0, #0 + cmge d0, d31, #0 + + cmle d0, d0, #0 + cmle d31, d0, #0 + cmle d0, d31, #0 + + neg d0, d0 + neg d31, d0 + neg d0, d31 + + sqxtun b0, h0 + sqxtun b31, h0 + sqxtun b0, h31 + sqxtun h0, s0 + sqxtun h31, s0 + sqxtun h0, s31 + sqxtun s0, d0 + sqxtun s31, d0 + sqxtun s0, d31 + + uqxtn b0, h0 + uqxtn b31, h0 + uqxtn b0, h31 + uqxtn h0, s0 + uqxtn h31, s0 + uqxtn h0, s31 + uqxtn s0, d0 + uqxtn s31, d0 + uqxtn s0, d31 + + fcvtxn s0, d0 + fcvtxn s31, d0 + fcvtxn s0, d31 diff --git a/gas/testsuite/gas/aarch64/advsimd-shift-immediate.d b/gas/testsuite/gas/aarch64/advsimd-shift-immediate.d new file mode 100644 index 0000000..1b41c65 --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsimd-shift-immediate.d @@ -0,0 +1,593 @@ +#as: -march=armv8-a +#objdump: -dr + +.*: file format .* + + +Disassembly of section \.text: + +0+ <\.text>: + *[0-9a-f]+: 0f080400 sshr v0\.8b, v0\.8b, #8 + *[0-9a-f]+: 0f08041f sshr v31\.8b, v0\.8b, #8 + *[0-9a-f]+: 0f0807e0 sshr v0\.8b, v31\.8b, #8 + *[0-9a-f]+: 0f0f0400 sshr v0\.8b, v0\.8b, #1 + *[0-9a-f]+: 0f100400 sshr v0\.4h, v0\.4h, #16 + *[0-9a-f]+: 0f10041f sshr v31\.4h, v0\.4h, #16 + *[0-9a-f]+: 0f1007e0 sshr v0\.4h, v31\.4h, #16 + *[0-9a-f]+: 0f1f0400 sshr v0\.4h, v0\.4h, #1 + *[0-9a-f]+: 0f200400 sshr v0\.2s, v0\.2s, #32 + *[0-9a-f]+: 0f20041f sshr v31\.2s, v0\.2s, #32 + *[0-9a-f]+: 0f2007e0 sshr v0\.2s, v31\.2s, #32 + *[0-9a-f]+: 0f3f0400 sshr v0\.2s, v0\.2s, #1 + *[0-9a-f]+: 4f080400 sshr v0\.16b, v0\.16b, #8 + *[0-9a-f]+: 4f08041f sshr v31\.16b, v0\.16b, #8 + *[0-9a-f]+: 4f0807e0 sshr v0\.16b, v31\.16b, #8 + *[0-9a-f]+: 4f0f0400 sshr v0\.16b, v0\.16b, #1 + *[0-9a-f]+: 4f100400 sshr v0\.8h, v0\.8h, #16 + *[0-9a-f]+: 4f10041f sshr v31\.8h, v0\.8h, #16 + *[0-9a-f]+: 4f1007e0 sshr v0\.8h, v31\.8h, #16 + *[0-9a-f]+: 4f1f0400 sshr v0\.8h, v0\.8h, #1 + *[0-9a-f]+: 4f200400 sshr v0\.4s, v0\.4s, #32 + *[0-9a-f]+: 4f20041f sshr v31\.4s, v0\.4s, #32 + *[0-9a-f]+: 4f2007e0 sshr v0\.4s, v31\.4s, #32 + *[0-9a-f]+: 4f3f0400 sshr v0\.4s, v0\.4s, #1 + *[0-9a-f]+: 4f400400 sshr v0\.2d, v0\.2d, #64 + *[0-9a-f]+: 4f40041f sshr v31\.2d, v0\.2d, #64 + *[0-9a-f]+: 4f4007e0 sshr v0\.2d, v31\.2d, #64 + *[0-9a-f]+: 4f7f0400 sshr v0\.2d, v0\.2d, #1 + *[0-9a-f]+: 0f081400 ssra v0\.8b, v0\.8b, #8 + *[0-9a-f]+: 0f08141f ssra v31\.8b, v0\.8b, #8 + *[0-9a-f]+: 0f0817e0 ssra v0\.8b, v31\.8b, #8 + *[0-9a-f]+: 0f0f1400 ssra v0\.8b, v0\.8b, #1 + *[0-9a-f]+: 0f101400 ssra v0\.4h, v0\.4h, #16 + *[0-9a-f]+: 0f10141f ssra v31\.4h, v0\.4h, #16 + *[0-9a-f]+: 0f1017e0 ssra v0\.4h, v31\.4h, #16 + *[0-9a-f]+: 0f1f1400 ssra v0\.4h, v0\.4h, #1 + *[0-9a-f]+: 0f201400 ssra v0\.2s, v0\.2s, #32 + *[0-9a-f]+: 0f20141f ssra v31\.2s, v0\.2s, #32 + *[0-9a-f]+: 0f2017e0 ssra v0\.2s, v31\.2s, #32 + *[0-9a-f]+: 0f3f1400 ssra v0\.2s, v0\.2s, #1 + *[0-9a-f]+: 4f081400 ssra v0\.16b, v0\.16b, #8 + *[0-9a-f]+: 4f08141f ssra v31\.16b, v0\.16b, #8 + *[0-9a-f]+: 4f0817e0 ssra v0\.16b, v31\.16b, #8 + *[0-9a-f]+: 4f0f1400 ssra v0\.16b, v0\.16b, #1 + *[0-9a-f]+: 4f101400 ssra v0\.8h, v0\.8h, #16 + *[0-9a-f]+: 4f10141f ssra v31\.8h, v0\.8h, #16 + *[0-9a-f]+: 4f1017e0 ssra v0\.8h, v31\.8h, #16 + *[0-9a-f]+: 4f1f1400 ssra v0\.8h, v0\.8h, #1 + *[0-9a-f]+: 4f201400 ssra v0\.4s, v0\.4s, #32 + *[0-9a-f]+: 4f20141f ssra v31\.4s, v0\.4s, #32 + *[0-9a-f]+: 4f2017e0 ssra v0\.4s, v31\.4s, #32 + *[0-9a-f]+: 4f3f1400 ssra v0\.4s, v0\.4s, #1 + *[0-9a-f]+: 4f401400 ssra v0\.2d, v0\.2d, #64 + *[0-9a-f]+: 4f40141f ssra v31\.2d, v0\.2d, #64 + *[0-9a-f]+: 4f4017e0 ssra v0\.2d, v31\.2d, #64 + *[0-9a-f]+: 4f7f1400 ssra v0\.2d, v0\.2d, #1 + *[0-9a-f]+: 0f082400 srshr v0\.8b, v0\.8b, #8 + *[0-9a-f]+: 0f08241f srshr v31\.8b, v0\.8b, #8 + *[0-9a-f]+: 0f0827e0 srshr v0\.8b, v31\.8b, #8 + *[0-9a-f]+: 0f0f2400 srshr v0\.8b, v0\.8b, #1 + *[0-9a-f]+: 0f102400 srshr v0\.4h, v0\.4h, #16 + *[0-9a-f]+: 0f10241f srshr v31\.4h, v0\.4h, #16 + *[0-9a-f]+: 0f1027e0 srshr v0\.4h, v31\.4h, #16 + *[0-9a-f]+: 0f1f2400 srshr v0\.4h, v0\.4h, #1 + *[0-9a-f]+: 0f202400 srshr v0\.2s, v0\.2s, #32 + *[0-9a-f]+: 0f20241f srshr v31\.2s, v0\.2s, #32 + *[0-9a-f]+: 0f2027e0 srshr v0\.2s, v31\.2s, #32 + *[0-9a-f]+: 0f3f2400 srshr v0\.2s, v0\.2s, #1 + *[0-9a-f]+: 4f082400 srshr v0\.16b, v0\.16b, #8 + *[0-9a-f]+: 4f08241f srshr v31\.16b, v0\.16b, #8 + *[0-9a-f]+: 4f0827e0 srshr v0\.16b, v31\.16b, #8 + *[0-9a-f]+: 4f0f2400 srshr v0\.16b, v0\.16b, #1 + *[0-9a-f]+: 4f102400 srshr v0\.8h, v0\.8h, #16 + *[0-9a-f]+: 4f10241f srshr v31\.8h, v0\.8h, #16 + *[0-9a-f]+: 4f1027e0 srshr v0\.8h, v31\.8h, #16 + *[0-9a-f]+: 4f1f2400 srshr v0\.8h, v0\.8h, #1 + *[0-9a-f]+: 4f202400 srshr v0\.4s, v0\.4s, #32 + *[0-9a-f]+: 4f20241f srshr v31\.4s, v0\.4s, #32 + *[0-9a-f]+: 4f2027e0 srshr v0\.4s, v31\.4s, #32 + *[0-9a-f]+: 4f3f2400 srshr v0\.4s, v0\.4s, #1 + *[0-9a-f]+: 4f402400 srshr v0\.2d, v0\.2d, #64 + *[0-9a-f]+: 4f40241f srshr v31\.2d, v0\.2d, #64 + *[0-9a-f]+: 4f4027e0 srshr v0\.2d, v31\.2d, #64 + *[0-9a-f]+: 4f7f2400 srshr v0\.2d, v0\.2d, #1 + *[0-9a-f]+: 0f083400 srsra v0\.8b, v0\.8b, #8 + *[0-9a-f]+: 0f08341f srsra v31\.8b, v0\.8b, #8 + *[0-9a-f]+: 0f0837e0 srsra v0\.8b, v31\.8b, #8 + *[0-9a-f]+: 0f0f3400 srsra v0\.8b, v0\.8b, #1 + *[0-9a-f]+: 0f103400 srsra v0\.4h, v0\.4h, #16 + *[0-9a-f]+: 0f10341f srsra v31\.4h, v0\.4h, #16 + *[0-9a-f]+: 0f1037e0 srsra v0\.4h, v31\.4h, #16 + *[0-9a-f]+: 0f1f3400 srsra v0\.4h, v0\.4h, #1 + *[0-9a-f]+: 0f203400 srsra v0\.2s, v0\.2s, #32 + *[0-9a-f]+: 0f20341f srsra v31\.2s, v0\.2s, #32 + *[0-9a-f]+: 0f2037e0 srsra v0\.2s, v31\.2s, #32 + *[0-9a-f]+: 0f3f3400 srsra v0\.2s, v0\.2s, #1 + *[0-9a-f]+: 4f083400 srsra v0\.16b, v0\.16b, #8 + *[0-9a-f]+: 4f08341f srsra v31\.16b, v0\.16b, #8 + *[0-9a-f]+: 4f0837e0 srsra v0\.16b, v31\.16b, #8 + *[0-9a-f]+: 4f0f3400 srsra v0\.16b, v0\.16b, #1 + *[0-9a-f]+: 4f103400 srsra v0\.8h, v0\.8h, #16 + *[0-9a-f]+: 4f10341f srsra v31\.8h, v0\.8h, #16 + *[0-9a-f]+: 4f1037e0 srsra v0\.8h, v31\.8h, #16 + *[0-9a-f]+: 4f1f3400 srsra v0\.8h, v0\.8h, #1 + *[0-9a-f]+: 4f203400 srsra v0\.4s, v0\.4s, #32 + *[0-9a-f]+: 4f20341f srsra v31\.4s, v0\.4s, #32 + *[0-9a-f]+: 4f2037e0 srsra v0\.4s, v31\.4s, #32 + *[0-9a-f]+: 4f3f3400 srsra v0\.4s, v0\.4s, #1 + *[0-9a-f]+: 4f403400 srsra v0\.2d, v0\.2d, #64 + *[0-9a-f]+: 4f40341f srsra v31\.2d, v0\.2d, #64 + *[0-9a-f]+: 4f4037e0 srsra v0\.2d, v31\.2d, #64 + *[0-9a-f]+: 4f7f3400 srsra v0\.2d, v0\.2d, #1 + *[0-9a-f]+: 0f085400 shl v0\.8b, v0\.8b, #0 + *[0-9a-f]+: 0f08541f shl v31\.8b, v0\.8b, #0 + *[0-9a-f]+: 0f0857e0 shl v0\.8b, v31\.8b, #0 + *[0-9a-f]+: 0f0f5400 shl v0\.8b, v0\.8b, #7 + *[0-9a-f]+: 0f105400 shl v0\.4h, v0\.4h, #0 + *[0-9a-f]+: 0f10541f shl v31\.4h, v0\.4h, #0 + *[0-9a-f]+: 0f1057e0 shl v0\.4h, v31\.4h, #0 + *[0-9a-f]+: 0f1f5400 shl v0\.4h, v0\.4h, #15 + *[0-9a-f]+: 0f205400 shl v0\.2s, v0\.2s, #0 + *[0-9a-f]+: 0f20541f shl v31\.2s, v0\.2s, #0 + *[0-9a-f]+: 0f2057e0 shl v0\.2s, v31\.2s, #0 + *[0-9a-f]+: 0f3f5400 shl v0\.2s, v0\.2s, #31 + *[0-9a-f]+: 4f085400 shl v0\.16b, v0\.16b, #0 + *[0-9a-f]+: 4f08541f shl v31\.16b, v0\.16b, #0 + *[0-9a-f]+: 4f0857e0 shl v0\.16b, v31\.16b, #0 + *[0-9a-f]+: 4f0f5400 shl v0\.16b, v0\.16b, #7 + *[0-9a-f]+: 4f105400 shl v0\.8h, v0\.8h, #0 + *[0-9a-f]+: 4f10541f shl v31\.8h, v0\.8h, #0 + *[0-9a-f]+: 4f1057e0 shl v0\.8h, v31\.8h, #0 + *[0-9a-f]+: 4f1f5400 shl v0\.8h, v0\.8h, #15 + *[0-9a-f]+: 4f205400 shl v0\.4s, v0\.4s, #0 + *[0-9a-f]+: 4f20541f shl v31\.4s, v0\.4s, #0 + *[0-9a-f]+: 4f2057e0 shl v0\.4s, v31\.4s, #0 + *[0-9a-f]+: 4f3f5400 shl v0\.4s, v0\.4s, #31 + *[0-9a-f]+: 4f405400 shl v0\.2d, v0\.2d, #0 + *[0-9a-f]+: 4f40541f shl v31\.2d, v0\.2d, #0 + *[0-9a-f]+: 4f4057e0 shl v0\.2d, v31\.2d, #0 + *[0-9a-f]+: 4f7f5400 shl v0\.2d, v0\.2d, #63 + *[0-9a-f]+: 0f087400 sqshl v0\.8b, v0\.8b, #0 + *[0-9a-f]+: 0f08741f sqshl v31\.8b, v0\.8b, #0 + *[0-9a-f]+: 0f0877e0 sqshl v0\.8b, v31\.8b, #0 + *[0-9a-f]+: 0f0f7400 sqshl v0\.8b, v0\.8b, #7 + *[0-9a-f]+: 0f107400 sqshl v0\.4h, v0\.4h, #0 + *[0-9a-f]+: 0f10741f sqshl v31\.4h, v0\.4h, #0 + *[0-9a-f]+: 0f1077e0 sqshl v0\.4h, v31\.4h, #0 + *[0-9a-f]+: 0f1f7400 sqshl v0\.4h, v0\.4h, #15 + *[0-9a-f]+: 0f207400 sqshl v0\.2s, v0\.2s, #0 + *[0-9a-f]+: 0f20741f sqshl v31\.2s, v0\.2s, #0 + *[0-9a-f]+: 0f2077e0 sqshl v0\.2s, v31\.2s, #0 + *[0-9a-f]+: 0f3f7400 sqshl v0\.2s, v0\.2s, #31 + *[0-9a-f]+: 4f087400 sqshl v0\.16b, v0\.16b, #0 + *[0-9a-f]+: 4f08741f sqshl v31\.16b, v0\.16b, #0 + *[0-9a-f]+: 4f0877e0 sqshl v0\.16b, v31\.16b, #0 + *[0-9a-f]+: 4f0f7400 sqshl v0\.16b, v0\.16b, #7 + *[0-9a-f]+: 4f107400 sqshl v0\.8h, v0\.8h, #0 + *[0-9a-f]+: 4f10741f sqshl v31\.8h, v0\.8h, #0 + *[0-9a-f]+: 4f1077e0 sqshl v0\.8h, v31\.8h, #0 + *[0-9a-f]+: 4f1f7400 sqshl v0\.8h, v0\.8h, #15 + *[0-9a-f]+: 4f207400 sqshl v0\.4s, v0\.4s, #0 + *[0-9a-f]+: 4f20741f sqshl v31\.4s, v0\.4s, #0 + *[0-9a-f]+: 4f2077e0 sqshl v0\.4s, v31\.4s, #0 + *[0-9a-f]+: 4f3f7400 sqshl v0\.4s, v0\.4s, #31 + *[0-9a-f]+: 4f407400 sqshl v0\.2d, v0\.2d, #0 + *[0-9a-f]+: 4f40741f sqshl v31\.2d, v0\.2d, #0 + *[0-9a-f]+: 4f4077e0 sqshl v0\.2d, v31\.2d, #0 + *[0-9a-f]+: 4f7f7400 sqshl v0\.2d, v0\.2d, #63 + *[0-9a-f]+: 0f088400 shrn v0\.8b, v0\.8h, #8 + *[0-9a-f]+: 0f08841f shrn v31\.8b, v0\.8h, #8 + *[0-9a-f]+: 0f0887e0 shrn v0\.8b, v31\.8h, #8 + *[0-9a-f]+: 0f0f8400 shrn v0\.8b, v0\.8h, #1 + *[0-9a-f]+: 0f108400 shrn v0\.4h, v0\.4s, #16 + *[0-9a-f]+: 0f10841f shrn v31\.4h, v0\.4s, #16 + *[0-9a-f]+: 0f1087e0 shrn v0\.4h, v31\.4s, #16 + *[0-9a-f]+: 0f1f8400 shrn v0\.4h, v0\.4s, #1 + *[0-9a-f]+: 0f208400 shrn v0\.2s, v0\.2d, #32 + *[0-9a-f]+: 0f20841f shrn v31\.2s, v0\.2d, #32 + *[0-9a-f]+: 0f2087e0 shrn v0\.2s, v31\.2d, #32 + *[0-9a-f]+: 0f3f8400 shrn v0\.2s, v0\.2d, #1 + *[0-9a-f]+: 4f088400 shrn2 v0\.16b, v0\.8h, #8 + *[0-9a-f]+: 4f08841f shrn2 v31\.16b, v0\.8h, #8 + *[0-9a-f]+: 4f0887e0 shrn2 v0\.16b, v31\.8h, #8 + *[0-9a-f]+: 4f0f8400 shrn2 v0\.16b, v0\.8h, #1 + *[0-9a-f]+: 4f108400 shrn2 v0\.8h, v0\.4s, #16 + *[0-9a-f]+: 4f10841f shrn2 v31\.8h, v0\.4s, #16 + *[0-9a-f]+: 4f1087e0 shrn2 v0\.8h, v31\.4s, #16 + *[0-9a-f]+: 4f1f8400 shrn2 v0\.8h, v0\.4s, #1 + *[0-9a-f]+: 4f208400 shrn2 v0\.4s, v0\.2d, #32 + *[0-9a-f]+: 4f20841f shrn2 v31\.4s, v0\.2d, #32 + *[0-9a-f]+: 4f2087e0 shrn2 v0\.4s, v31\.2d, #32 + *[0-9a-f]+: 4f3f8400 shrn2 v0\.4s, v0\.2d, #1 + *[0-9a-f]+: 0f088c00 rshrn v0\.8b, v0\.8h, #8 + *[0-9a-f]+: 0f088c1f rshrn v31\.8b, v0\.8h, #8 + *[0-9a-f]+: 0f088fe0 rshrn v0\.8b, v31\.8h, #8 + *[0-9a-f]+: 0f0f8c00 rshrn v0\.8b, v0\.8h, #1 + *[0-9a-f]+: 0f108c00 rshrn v0\.4h, v0\.4s, #16 + *[0-9a-f]+: 0f108c1f rshrn v31\.4h, v0\.4s, #16 + *[0-9a-f]+: 0f108fe0 rshrn v0\.4h, v31\.4s, #16 + *[0-9a-f]+: 0f1f8c00 rshrn v0\.4h, v0\.4s, #1 + *[0-9a-f]+: 0f208c00 rshrn v0\.2s, v0\.2d, #32 + *[0-9a-f]+: 0f208c1f rshrn v31\.2s, v0\.2d, #32 + *[0-9a-f]+: 0f208fe0 rshrn v0\.2s, v31\.2d, #32 + *[0-9a-f]+: 0f3f8c00 rshrn v0\.2s, v0\.2d, #1 + *[0-9a-f]+: 4f088c00 rshrn2 v0\.16b, v0\.8h, #8 + *[0-9a-f]+: 4f088c1f rshrn2 v31\.16b, v0\.8h, #8 + *[0-9a-f]+: 4f088fe0 rshrn2 v0\.16b, v31\.8h, #8 + *[0-9a-f]+: 4f0f8c00 rshrn2 v0\.16b, v0\.8h, #1 + *[0-9a-f]+: 4f108c00 rshrn2 v0\.8h, v0\.4s, #16 + *[0-9a-f]+: 4f108c1f rshrn2 v31\.8h, v0\.4s, #16 + *[0-9a-f]+: 4f108fe0 rshrn2 v0\.8h, v31\.4s, #16 + *[0-9a-f]+: 4f1f8c00 rshrn2 v0\.8h, v0\.4s, #1 + *[0-9a-f]+: 4f208c00 rshrn2 v0\.4s, v0\.2d, #32 + *[0-9a-f]+: 4f208c1f rshrn2 v31\.4s, v0\.2d, #32 + *[0-9a-f]+: 4f208fe0 rshrn2 v0\.4s, v31\.2d, #32 + *[0-9a-f]+: 4f3f8c00 rshrn2 v0\.4s, v0\.2d, #1 + *[0-9a-f]+: 0f089400 sqshrn v0\.8b, v0\.8h, #8 + *[0-9a-f]+: 0f08941f sqshrn v31\.8b, v0\.8h, #8 + *[0-9a-f]+: 0f0897e0 sqshrn v0\.8b, v31\.8h, #8 + *[0-9a-f]+: 0f0f9400 sqshrn v0\.8b, v0\.8h, #1 + *[0-9a-f]+: 0f109400 sqshrn v0\.4h, v0\.4s, #16 + *[0-9a-f]+: 0f10941f sqshrn v31\.4h, v0\.4s, #16 + *[0-9a-f]+: 0f1097e0 sqshrn v0\.4h, v31\.4s, #16 + *[0-9a-f]+: 0f1f9400 sqshrn v0\.4h, v0\.4s, #1 + *[0-9a-f]+: 0f209400 sqshrn v0\.2s, v0\.2d, #32 + *[0-9a-f]+: 0f20941f sqshrn v31\.2s, v0\.2d, #32 + *[0-9a-f]+: 0f2097e0 sqshrn v0\.2s, v31\.2d, #32 + *[0-9a-f]+: 0f3f9400 sqshrn v0\.2s, v0\.2d, #1 + *[0-9a-f]+: 4f089400 sqshrn2 v0\.16b, v0\.8h, #8 + *[0-9a-f]+: 4f08941f sqshrn2 v31\.16b, v0\.8h, #8 + *[0-9a-f]+: 4f0897e0 sqshrn2 v0\.16b, v31\.8h, #8 + *[0-9a-f]+: 4f0f9400 sqshrn2 v0\.16b, v0\.8h, #1 + *[0-9a-f]+: 4f109400 sqshrn2 v0\.8h, v0\.4s, #16 + *[0-9a-f]+: 4f10941f sqshrn2 v31\.8h, v0\.4s, #16 + *[0-9a-f]+: 4f1097e0 sqshrn2 v0\.8h, v31\.4s, #16 + *[0-9a-f]+: 4f1f9400 sqshrn2 v0\.8h, v0\.4s, #1 + *[0-9a-f]+: 4f209400 sqshrn2 v0\.4s, v0\.2d, #32 + *[0-9a-f]+: 4f20941f sqshrn2 v31\.4s, v0\.2d, #32 + *[0-9a-f]+: 4f2097e0 sqshrn2 v0\.4s, v31\.2d, #32 + *[0-9a-f]+: 4f3f9400 sqshrn2 v0\.4s, v0\.2d, #1 + *[0-9a-f]+: 0f089c00 sqrshrn v0\.8b, v0\.8h, #8 + *[0-9a-f]+: 0f089c1f sqrshrn v31\.8b, v0\.8h, #8 + *[0-9a-f]+: 0f089fe0 sqrshrn v0\.8b, v31\.8h, #8 + *[0-9a-f]+: 0f0f9c00 sqrshrn v0\.8b, v0\.8h, #1 + *[0-9a-f]+: 0f109c00 sqrshrn v0\.4h, v0\.4s, #16 + *[0-9a-f]+: 0f109c1f sqrshrn v31\.4h, v0\.4s, #16 + *[0-9a-f]+: 0f109fe0 sqrshrn v0\.4h, v31\.4s, #16 + *[0-9a-f]+: 0f1f9c00 sqrshrn v0\.4h, v0\.4s, #1 + *[0-9a-f]+: 0f209c00 sqrshrn v0\.2s, v0\.2d, #32 + *[0-9a-f]+: 0f209c1f sqrshrn v31\.2s, v0\.2d, #32 + *[0-9a-f]+: 0f209fe0 sqrshrn v0\.2s, v31\.2d, #32 + *[0-9a-f]+: 0f3f9c00 sqrshrn v0\.2s, v0\.2d, #1 + *[0-9a-f]+: 4f089c00 sqrshrn2 v0\.16b, v0\.8h, #8 + *[0-9a-f]+: 4f089c1f sqrshrn2 v31\.16b, v0\.8h, #8 + *[0-9a-f]+: 4f089fe0 sqrshrn2 v0\.16b, v31\.8h, #8 + *[0-9a-f]+: 4f0f9c00 sqrshrn2 v0\.16b, v0\.8h, #1 + *[0-9a-f]+: 4f109c00 sqrshrn2 v0\.8h, v0\.4s, #16 + *[0-9a-f]+: 4f109c1f sqrshrn2 v31\.8h, v0\.4s, #16 + *[0-9a-f]+: 4f109fe0 sqrshrn2 v0\.8h, v31\.4s, #16 + *[0-9a-f]+: 4f1f9c00 sqrshrn2 v0\.8h, v0\.4s, #1 + *[0-9a-f]+: 4f209c00 sqrshrn2 v0\.4s, v0\.2d, #32 + *[0-9a-f]+: 4f209c1f sqrshrn2 v31\.4s, v0\.2d, #32 + *[0-9a-f]+: 4f209fe0 sqrshrn2 v0\.4s, v31\.2d, #32 + *[0-9a-f]+: 4f3f9c00 sqrshrn2 v0\.4s, v0\.2d, #1 + *[0-9a-f]+: 2f080400 ushr v0\.8b, v0\.8b, #8 + *[0-9a-f]+: 2f08041f ushr v31\.8b, v0\.8b, #8 + *[0-9a-f]+: 2f0807e0 ushr v0\.8b, v31\.8b, #8 + *[0-9a-f]+: 2f0f0400 ushr v0\.8b, v0\.8b, #1 + *[0-9a-f]+: 2f100400 ushr v0\.4h, v0\.4h, #16 + *[0-9a-f]+: 2f10041f ushr v31\.4h, v0\.4h, #16 + *[0-9a-f]+: 2f1007e0 ushr v0\.4h, v31\.4h, #16 + *[0-9a-f]+: 2f1f0400 ushr v0\.4h, v0\.4h, #1 + *[0-9a-f]+: 2f200400 ushr v0\.2s, v0\.2s, #32 + *[0-9a-f]+: 2f20041f ushr v31\.2s, v0\.2s, #32 + *[0-9a-f]+: 2f2007e0 ushr v0\.2s, v31\.2s, #32 + *[0-9a-f]+: 2f3f0400 ushr v0\.2s, v0\.2s, #1 + *[0-9a-f]+: 6f080400 ushr v0\.16b, v0\.16b, #8 + *[0-9a-f]+: 6f08041f ushr v31\.16b, v0\.16b, #8 + *[0-9a-f]+: 6f0807e0 ushr v0\.16b, v31\.16b, #8 + *[0-9a-f]+: 6f0f0400 ushr v0\.16b, v0\.16b, #1 + *[0-9a-f]+: 6f100400 ushr v0\.8h, v0\.8h, #16 + *[0-9a-f]+: 6f10041f ushr v31\.8h, v0\.8h, #16 + *[0-9a-f]+: 6f1007e0 ushr v0\.8h, v31\.8h, #16 + *[0-9a-f]+: 6f1f0400 ushr v0\.8h, v0\.8h, #1 + *[0-9a-f]+: 6f200400 ushr v0\.4s, v0\.4s, #32 + *[0-9a-f]+: 6f20041f ushr v31\.4s, v0\.4s, #32 + *[0-9a-f]+: 6f2007e0 ushr v0\.4s, v31\.4s, #32 + *[0-9a-f]+: 6f3f0400 ushr v0\.4s, v0\.4s, #1 + *[0-9a-f]+: 6f400400 ushr v0\.2d, v0\.2d, #64 + *[0-9a-f]+: 6f40041f ushr v31\.2d, v0\.2d, #64 + *[0-9a-f]+: 6f4007e0 ushr v0\.2d, v31\.2d, #64 + *[0-9a-f]+: 6f7f0400 ushr v0\.2d, v0\.2d, #1 + *[0-9a-f]+: 2f081400 usra v0\.8b, v0\.8b, #8 + *[0-9a-f]+: 2f08141f usra v31\.8b, v0\.8b, #8 + *[0-9a-f]+: 2f0817e0 usra v0\.8b, v31\.8b, #8 + *[0-9a-f]+: 2f0f1400 usra v0\.8b, v0\.8b, #1 + *[0-9a-f]+: 2f101400 usra v0\.4h, v0\.4h, #16 + *[0-9a-f]+: 2f10141f usra v31\.4h, v0\.4h, #16 + *[0-9a-f]+: 2f1017e0 usra v0\.4h, v31\.4h, #16 + *[0-9a-f]+: 2f1f1400 usra v0\.4h, v0\.4h, #1 + *[0-9a-f]+: 2f201400 usra v0\.2s, v0\.2s, #32 + *[0-9a-f]+: 2f20141f usra v31\.2s, v0\.2s, #32 + *[0-9a-f]+: 2f2017e0 usra v0\.2s, v31\.2s, #32 + *[0-9a-f]+: 2f3f1400 usra v0\.2s, v0\.2s, #1 + *[0-9a-f]+: 6f081400 usra v0\.16b, v0\.16b, #8 + *[0-9a-f]+: 6f08141f usra v31\.16b, v0\.16b, #8 + *[0-9a-f]+: 6f0817e0 usra v0\.16b, v31\.16b, #8 + *[0-9a-f]+: 6f0f1400 usra v0\.16b, v0\.16b, #1 + *[0-9a-f]+: 6f101400 usra v0\.8h, v0\.8h, #16 + *[0-9a-f]+: 6f10141f usra v31\.8h, v0\.8h, #16 + *[0-9a-f]+: 6f1017e0 usra v0\.8h, v31\.8h, #16 + *[0-9a-f]+: 6f1f1400 usra v0\.8h, v0\.8h, #1 + *[0-9a-f]+: 6f201400 usra v0\.4s, v0\.4s, #32 + *[0-9a-f]+: 6f20141f usra v31\.4s, v0\.4s, #32 + *[0-9a-f]+: 6f2017e0 usra v0\.4s, v31\.4s, #32 + *[0-9a-f]+: 6f3f1400 usra v0\.4s, v0\.4s, #1 + *[0-9a-f]+: 6f401400 usra v0\.2d, v0\.2d, #64 + *[0-9a-f]+: 6f40141f usra v31\.2d, v0\.2d, #64 + *[0-9a-f]+: 6f4017e0 usra v0\.2d, v31\.2d, #64 + *[0-9a-f]+: 6f7f1400 usra v0\.2d, v0\.2d, #1 + *[0-9a-f]+: 2f082400 urshr v0\.8b, v0\.8b, #8 + *[0-9a-f]+: 2f08241f urshr v31\.8b, v0\.8b, #8 + *[0-9a-f]+: 2f0827e0 urshr v0\.8b, v31\.8b, #8 + *[0-9a-f]+: 2f0f2400 urshr v0\.8b, v0\.8b, #1 + *[0-9a-f]+: 2f102400 urshr v0\.4h, v0\.4h, #16 + *[0-9a-f]+: 2f10241f urshr v31\.4h, v0\.4h, #16 + *[0-9a-f]+: 2f1027e0 urshr v0\.4h, v31\.4h, #16 + *[0-9a-f]+: 2f1f2400 urshr v0\.4h, v0\.4h, #1 + *[0-9a-f]+: 2f202400 urshr v0\.2s, v0\.2s, #32 + *[0-9a-f]+: 2f20241f urshr v31\.2s, v0\.2s, #32 + *[0-9a-f]+: 2f2027e0 urshr v0\.2s, v31\.2s, #32 + *[0-9a-f]+: 2f3f2400 urshr v0\.2s, v0\.2s, #1 + *[0-9a-f]+: 6f082400 urshr v0\.16b, v0\.16b, #8 + *[0-9a-f]+: 6f08241f urshr v31\.16b, v0\.16b, #8 + *[0-9a-f]+: 6f0827e0 urshr v0\.16b, v31\.16b, #8 + *[0-9a-f]+: 6f0f2400 urshr v0\.16b, v0\.16b, #1 + *[0-9a-f]+: 6f102400 urshr v0\.8h, v0\.8h, #16 + *[0-9a-f]+: 6f10241f urshr v31\.8h, v0\.8h, #16 + *[0-9a-f]+: 6f1027e0 urshr v0\.8h, v31\.8h, #16 + *[0-9a-f]+: 6f1f2400 urshr v0\.8h, v0\.8h, #1 + *[0-9a-f]+: 6f202400 urshr v0\.4s, v0\.4s, #32 + *[0-9a-f]+: 6f20241f urshr v31\.4s, v0\.4s, #32 + *[0-9a-f]+: 6f2027e0 urshr v0\.4s, v31\.4s, #32 + *[0-9a-f]+: 6f3f2400 urshr v0\.4s, v0\.4s, #1 + *[0-9a-f]+: 6f402400 urshr v0\.2d, v0\.2d, #64 + *[0-9a-f]+: 6f40241f urshr v31\.2d, v0\.2d, #64 + *[0-9a-f]+: 6f4027e0 urshr v0\.2d, v31\.2d, #64 + *[0-9a-f]+: 6f7f2400 urshr v0\.2d, v0\.2d, #1 + *[0-9a-f]+: 2f083400 ursra v0\.8b, v0\.8b, #8 + *[0-9a-f]+: 2f08341f ursra v31\.8b, v0\.8b, #8 + *[0-9a-f]+: 2f0837e0 ursra v0\.8b, v31\.8b, #8 + *[0-9a-f]+: 2f0f3400 ursra v0\.8b, v0\.8b, #1 + *[0-9a-f]+: 2f103400 ursra v0\.4h, v0\.4h, #16 + *[0-9a-f]+: 2f10341f ursra v31\.4h, v0\.4h, #16 + *[0-9a-f]+: 2f1037e0 ursra v0\.4h, v31\.4h, #16 + *[0-9a-f]+: 2f1f3400 ursra v0\.4h, v0\.4h, #1 + *[0-9a-f]+: 2f203400 ursra v0\.2s, v0\.2s, #32 + *[0-9a-f]+: 2f20341f ursra v31\.2s, v0\.2s, #32 + *[0-9a-f]+: 2f2037e0 ursra v0\.2s, v31\.2s, #32 + *[0-9a-f]+: 2f3f3400 ursra v0\.2s, v0\.2s, #1 + *[0-9a-f]+: 6f083400 ursra v0\.16b, v0\.16b, #8 + *[0-9a-f]+: 6f08341f ursra v31\.16b, v0\.16b, #8 + *[0-9a-f]+: 6f0837e0 ursra v0\.16b, v31\.16b, #8 + *[0-9a-f]+: 6f0f3400 ursra v0\.16b, v0\.16b, #1 + *[0-9a-f]+: 6f103400 ursra v0\.8h, v0\.8h, #16 + *[0-9a-f]+: 6f10341f ursra v31\.8h, v0\.8h, #16 + *[0-9a-f]+: 6f1037e0 ursra v0\.8h, v31\.8h, #16 + *[0-9a-f]+: 6f1f3400 ursra v0\.8h, v0\.8h, #1 + *[0-9a-f]+: 6f203400 ursra v0\.4s, v0\.4s, #32 + *[0-9a-f]+: 6f20341f ursra v31\.4s, v0\.4s, #32 + *[0-9a-f]+: 6f2037e0 ursra v0\.4s, v31\.4s, #32 + *[0-9a-f]+: 6f3f3400 ursra v0\.4s, v0\.4s, #1 + *[0-9a-f]+: 6f403400 ursra v0\.2d, v0\.2d, #64 + *[0-9a-f]+: 6f40341f ursra v31\.2d, v0\.2d, #64 + *[0-9a-f]+: 6f4037e0 ursra v0\.2d, v31\.2d, #64 + *[0-9a-f]+: 6f7f3400 ursra v0\.2d, v0\.2d, #1 + *[0-9a-f]+: 2f084400 sri v0\.8b, v0\.8b, #8 + *[0-9a-f]+: 2f08441f sri v31\.8b, v0\.8b, #8 + *[0-9a-f]+: 2f0847e0 sri v0\.8b, v31\.8b, #8 + *[0-9a-f]+: 2f0f4400 sri v0\.8b, v0\.8b, #1 + *[0-9a-f]+: 2f104400 sri v0\.4h, v0\.4h, #16 + *[0-9a-f]+: 2f10441f sri v31\.4h, v0\.4h, #16 + *[0-9a-f]+: 2f1047e0 sri v0\.4h, v31\.4h, #16 + *[0-9a-f]+: 2f1f4400 sri v0\.4h, v0\.4h, #1 + *[0-9a-f]+: 2f204400 sri v0\.2s, v0\.2s, #32 + *[0-9a-f]+: 2f20441f sri v31\.2s, v0\.2s, #32 + *[0-9a-f]+: 2f2047e0 sri v0\.2s, v31\.2s, #32 + *[0-9a-f]+: 2f3f4400 sri v0\.2s, v0\.2s, #1 + *[0-9a-f]+: 6f084400 sri v0\.16b, v0\.16b, #8 + *[0-9a-f]+: 6f08441f sri v31\.16b, v0\.16b, #8 + *[0-9a-f]+: 6f0847e0 sri v0\.16b, v31\.16b, #8 + *[0-9a-f]+: 6f0f4400 sri v0\.16b, v0\.16b, #1 + *[0-9a-f]+: 6f104400 sri v0\.8h, v0\.8h, #16 + *[0-9a-f]+: 6f10441f sri v31\.8h, v0\.8h, #16 + *[0-9a-f]+: 6f1047e0 sri v0\.8h, v31\.8h, #16 + *[0-9a-f]+: 6f1f4400 sri v0\.8h, v0\.8h, #1 + *[0-9a-f]+: 6f204400 sri v0\.4s, v0\.4s, #32 + *[0-9a-f]+: 6f20441f sri v31\.4s, v0\.4s, #32 + *[0-9a-f]+: 6f2047e0 sri v0\.4s, v31\.4s, #32 + *[0-9a-f]+: 6f3f4400 sri v0\.4s, v0\.4s, #1 + *[0-9a-f]+: 6f404400 sri v0\.2d, v0\.2d, #64 + *[0-9a-f]+: 6f40441f sri v31\.2d, v0\.2d, #64 + *[0-9a-f]+: 6f4047e0 sri v0\.2d, v31\.2d, #64 + *[0-9a-f]+: 6f7f4400 sri v0\.2d, v0\.2d, #1 + *[0-9a-f]+: 2f085400 sli v0\.8b, v0\.8b, #0 + *[0-9a-f]+: 2f08541f sli v31\.8b, v0\.8b, #0 + *[0-9a-f]+: 2f0857e0 sli v0\.8b, v31\.8b, #0 + *[0-9a-f]+: 2f0f5400 sli v0\.8b, v0\.8b, #7 + *[0-9a-f]+: 2f105400 sli v0\.4h, v0\.4h, #0 + *[0-9a-f]+: 2f10541f sli v31\.4h, v0\.4h, #0 + *[0-9a-f]+: 2f1057e0 sli v0\.4h, v31\.4h, #0 + *[0-9a-f]+: 2f1f5400 sli v0\.4h, v0\.4h, #15 + *[0-9a-f]+: 2f205400 sli v0\.2s, v0\.2s, #0 + *[0-9a-f]+: 2f20541f sli v31\.2s, v0\.2s, #0 + *[0-9a-f]+: 2f2057e0 sli v0\.2s, v31\.2s, #0 + *[0-9a-f]+: 2f3f5400 sli v0\.2s, v0\.2s, #31 + *[0-9a-f]+: 6f085400 sli v0\.16b, v0\.16b, #0 + *[0-9a-f]+: 6f08541f sli v31\.16b, v0\.16b, #0 + *[0-9a-f]+: 6f0857e0 sli v0\.16b, v31\.16b, #0 + *[0-9a-f]+: 6f0f5400 sli v0\.16b, v0\.16b, #7 + *[0-9a-f]+: 6f105400 sli v0\.8h, v0\.8h, #0 + *[0-9a-f]+: 6f10541f sli v31\.8h, v0\.8h, #0 + *[0-9a-f]+: 6f1057e0 sli v0\.8h, v31\.8h, #0 + *[0-9a-f]+: 6f1f5400 sli v0\.8h, v0\.8h, #15 + *[0-9a-f]+: 6f205400 sli v0\.4s, v0\.4s, #0 + *[0-9a-f]+: 6f20541f sli v31\.4s, v0\.4s, #0 + *[0-9a-f]+: 6f2057e0 sli v0\.4s, v31\.4s, #0 + *[0-9a-f]+: 6f3f5400 sli v0\.4s, v0\.4s, #31 + *[0-9a-f]+: 6f405400 sli v0\.2d, v0\.2d, #0 + *[0-9a-f]+: 6f40541f sli v31\.2d, v0\.2d, #0 + *[0-9a-f]+: 6f4057e0 sli v0\.2d, v31\.2d, #0 + *[0-9a-f]+: 6f7f5400 sli v0\.2d, v0\.2d, #63 + *[0-9a-f]+: 2f086400 sqshlu v0\.8b, v0\.8b, #0 + *[0-9a-f]+: 2f08641f sqshlu v31\.8b, v0\.8b, #0 + *[0-9a-f]+: 2f0867e0 sqshlu v0\.8b, v31\.8b, #0 + *[0-9a-f]+: 2f0f6400 sqshlu v0\.8b, v0\.8b, #7 + *[0-9a-f]+: 2f106400 sqshlu v0\.4h, v0\.4h, #0 + *[0-9a-f]+: 2f10641f sqshlu v31\.4h, v0\.4h, #0 + *[0-9a-f]+: 2f1067e0 sqshlu v0\.4h, v31\.4h, #0 + *[0-9a-f]+: 2f1f6400 sqshlu v0\.4h, v0\.4h, #15 + *[0-9a-f]+: 2f206400 sqshlu v0\.2s, v0\.2s, #0 + *[0-9a-f]+: 2f20641f sqshlu v31\.2s, v0\.2s, #0 + *[0-9a-f]+: 2f2067e0 sqshlu v0\.2s, v31\.2s, #0 + *[0-9a-f]+: 2f3f6400 sqshlu v0\.2s, v0\.2s, #31 + *[0-9a-f]+: 6f086400 sqshlu v0\.16b, v0\.16b, #0 + *[0-9a-f]+: 6f08641f sqshlu v31\.16b, v0\.16b, #0 + *[0-9a-f]+: 6f0867e0 sqshlu v0\.16b, v31\.16b, #0 + *[0-9a-f]+: 6f0f6400 sqshlu v0\.16b, v0\.16b, #7 + *[0-9a-f]+: 6f106400 sqshlu v0\.8h, v0\.8h, #0 + *[0-9a-f]+: 6f10641f sqshlu v31\.8h, v0\.8h, #0 + *[0-9a-f]+: 6f1067e0 sqshlu v0\.8h, v31\.8h, #0 + *[0-9a-f]+: 6f1f6400 sqshlu v0\.8h, v0\.8h, #15 + *[0-9a-f]+: 6f206400 sqshlu v0\.4s, v0\.4s, #0 + *[0-9a-f]+: 6f20641f sqshlu v31\.4s, v0\.4s, #0 + *[0-9a-f]+: 6f2067e0 sqshlu v0\.4s, v31\.4s, #0 + *[0-9a-f]+: 6f3f6400 sqshlu v0\.4s, v0\.4s, #31 + *[0-9a-f]+: 6f406400 sqshlu v0\.2d, v0\.2d, #0 + *[0-9a-f]+: 6f40641f sqshlu v31\.2d, v0\.2d, #0 + *[0-9a-f]+: 6f4067e0 sqshlu v0\.2d, v31\.2d, #0 + *[0-9a-f]+: 6f7f6400 sqshlu v0\.2d, v0\.2d, #63 + *[0-9a-f]+: 2f087400 uqshl v0\.8b, v0\.8b, #0 + *[0-9a-f]+: 2f08741f uqshl v31\.8b, v0\.8b, #0 + *[0-9a-f]+: 2f0877e0 uqshl v0\.8b, v31\.8b, #0 + *[0-9a-f]+: 2f0f7400 uqshl v0\.8b, v0\.8b, #7 + *[0-9a-f]+: 2f107400 uqshl v0\.4h, v0\.4h, #0 + *[0-9a-f]+: 2f10741f uqshl v31\.4h, v0\.4h, #0 + *[0-9a-f]+: 2f1077e0 uqshl v0\.4h, v31\.4h, #0 + *[0-9a-f]+: 2f1f7400 uqshl v0\.4h, v0\.4h, #15 + *[0-9a-f]+: 2f207400 uqshl v0\.2s, v0\.2s, #0 + *[0-9a-f]+: 2f20741f uqshl v31\.2s, v0\.2s, #0 + *[0-9a-f]+: 2f2077e0 uqshl v0\.2s, v31\.2s, #0 + *[0-9a-f]+: 2f3f7400 uqshl v0\.2s, v0\.2s, #31 + *[0-9a-f]+: 6f087400 uqshl v0\.16b, v0\.16b, #0 + *[0-9a-f]+: 6f08741f uqshl v31\.16b, v0\.16b, #0 + *[0-9a-f]+: 6f0877e0 uqshl v0\.16b, v31\.16b, #0 + *[0-9a-f]+: 6f0f7400 uqshl v0\.16b, v0\.16b, #7 + *[0-9a-f]+: 6f107400 uqshl v0\.8h, v0\.8h, #0 + *[0-9a-f]+: 6f10741f uqshl v31\.8h, v0\.8h, #0 + *[0-9a-f]+: 6f1077e0 uqshl v0\.8h, v31\.8h, #0 + *[0-9a-f]+: 6f1f7400 uqshl v0\.8h, v0\.8h, #15 + *[0-9a-f]+: 6f207400 uqshl v0\.4s, v0\.4s, #0 + *[0-9a-f]+: 6f20741f uqshl v31\.4s, v0\.4s, #0 + *[0-9a-f]+: 6f2077e0 uqshl v0\.4s, v31\.4s, #0 + *[0-9a-f]+: 6f3f7400 uqshl v0\.4s, v0\.4s, #31 + *[0-9a-f]+: 6f407400 uqshl v0\.2d, v0\.2d, #0 + *[0-9a-f]+: 6f40741f uqshl v31\.2d, v0\.2d, #0 + *[0-9a-f]+: 6f4077e0 uqshl v0\.2d, v31\.2d, #0 + *[0-9a-f]+: 6f7f7400 uqshl v0\.2d, v0\.2d, #63 + *[0-9a-f]+: 2f088400 sqshrun v0\.8b, v0\.8h, #8 + *[0-9a-f]+: 2f08841f sqshrun v31\.8b, v0\.8h, #8 + *[0-9a-f]+: 2f0887e0 sqshrun v0\.8b, v31\.8h, #8 + *[0-9a-f]+: 2f0f8400 sqshrun v0\.8b, v0\.8h, #1 + *[0-9a-f]+: 2f108400 sqshrun v0\.4h, v0\.4s, #16 + *[0-9a-f]+: 2f10841f sqshrun v31\.4h, v0\.4s, #16 + *[0-9a-f]+: 2f1087e0 sqshrun v0\.4h, v31\.4s, #16 + *[0-9a-f]+: 2f1f8400 sqshrun v0\.4h, v0\.4s, #1 + *[0-9a-f]+: 2f208400 sqshrun v0\.2s, v0\.2d, #32 + *[0-9a-f]+: 2f20841f sqshrun v31\.2s, v0\.2d, #32 + *[0-9a-f]+: 2f2087e0 sqshrun v0\.2s, v31\.2d, #32 + *[0-9a-f]+: 2f3f8400 sqshrun v0\.2s, v0\.2d, #1 + *[0-9a-f]+: 6f088400 sqshrun2 v0\.16b, v0\.8h, #8 + *[0-9a-f]+: 6f08841f sqshrun2 v31\.16b, v0\.8h, #8 + *[0-9a-f]+: 6f0887e0 sqshrun2 v0\.16b, v31\.8h, #8 + *[0-9a-f]+: 6f0f8400 sqshrun2 v0\.16b, v0\.8h, #1 + *[0-9a-f]+: 6f108400 sqshrun2 v0\.8h, v0\.4s, #16 + *[0-9a-f]+: 6f10841f sqshrun2 v31\.8h, v0\.4s, #16 + *[0-9a-f]+: 6f1087e0 sqshrun2 v0\.8h, v31\.4s, #16 + *[0-9a-f]+: 6f1f8400 sqshrun2 v0\.8h, v0\.4s, #1 + *[0-9a-f]+: 6f208400 sqshrun2 v0\.4s, v0\.2d, #32 + *[0-9a-f]+: 6f20841f sqshrun2 v31\.4s, v0\.2d, #32 + *[0-9a-f]+: 6f2087e0 sqshrun2 v0\.4s, v31\.2d, #32 + *[0-9a-f]+: 6f3f8400 sqshrun2 v0\.4s, v0\.2d, #1 + *[0-9a-f]+: 2f088c00 sqrshrun v0\.8b, v0\.8h, #8 + *[0-9a-f]+: 2f088c1f sqrshrun v31\.8b, v0\.8h, #8 + *[0-9a-f]+: 2f088fe0 sqrshrun v0\.8b, v31\.8h, #8 + *[0-9a-f]+: 2f0f8c00 sqrshrun v0\.8b, v0\.8h, #1 + *[0-9a-f]+: 2f108c00 sqrshrun v0\.4h, v0\.4s, #16 + *[0-9a-f]+: 2f108c1f sqrshrun v31\.4h, v0\.4s, #16 + *[0-9a-f]+: 2f108fe0 sqrshrun v0\.4h, v31\.4s, #16 + *[0-9a-f]+: 2f1f8c00 sqrshrun v0\.4h, v0\.4s, #1 + *[0-9a-f]+: 2f208c00 sqrshrun v0\.2s, v0\.2d, #32 + *[0-9a-f]+: 2f208c1f sqrshrun v31\.2s, v0\.2d, #32 + *[0-9a-f]+: 2f208fe0 sqrshrun v0\.2s, v31\.2d, #32 + *[0-9a-f]+: 2f3f8c00 sqrshrun v0\.2s, v0\.2d, #1 + *[0-9a-f]+: 6f088c00 sqrshrun2 v0\.16b, v0\.8h, #8 + *[0-9a-f]+: 6f088c1f sqrshrun2 v31\.16b, v0\.8h, #8 + *[0-9a-f]+: 6f088fe0 sqrshrun2 v0\.16b, v31\.8h, #8 + *[0-9a-f]+: 6f0f8c00 sqrshrun2 v0\.16b, v0\.8h, #1 + *[0-9a-f]+: 6f108c00 sqrshrun2 v0\.8h, v0\.4s, #16 + *[0-9a-f]+: 6f108c1f sqrshrun2 v31\.8h, v0\.4s, #16 + *[0-9a-f]+: 6f108fe0 sqrshrun2 v0\.8h, v31\.4s, #16 + *[0-9a-f]+: 6f1f8c00 sqrshrun2 v0\.8h, v0\.4s, #1 + *[0-9a-f]+: 6f208c00 sqrshrun2 v0\.4s, v0\.2d, #32 + *[0-9a-f]+: 6f208c1f sqrshrun2 v31\.4s, v0\.2d, #32 + *[0-9a-f]+: 6f208fe0 sqrshrun2 v0\.4s, v31\.2d, #32 + *[0-9a-f]+: 6f3f8c00 sqrshrun2 v0\.4s, v0\.2d, #1 + *[0-9a-f]+: 2f089400 uqshrn v0\.8b, v0\.8h, #8 + *[0-9a-f]+: 2f08941f uqshrn v31\.8b, v0\.8h, #8 + *[0-9a-f]+: 2f0897e0 uqshrn v0\.8b, v31\.8h, #8 + *[0-9a-f]+: 2f0f9400 uqshrn v0\.8b, v0\.8h, #1 + *[0-9a-f]+: 2f109400 uqshrn v0\.4h, v0\.4s, #16 + *[0-9a-f]+: 2f10941f uqshrn v31\.4h, v0\.4s, #16 + *[0-9a-f]+: 2f1097e0 uqshrn v0\.4h, v31\.4s, #16 + *[0-9a-f]+: 2f1f9400 uqshrn v0\.4h, v0\.4s, #1 + *[0-9a-f]+: 2f209400 uqshrn v0\.2s, v0\.2d, #32 + *[0-9a-f]+: 2f20941f uqshrn v31\.2s, v0\.2d, #32 + *[0-9a-f]+: 2f2097e0 uqshrn v0\.2s, v31\.2d, #32 + *[0-9a-f]+: 2f3f9400 uqshrn v0\.2s, v0\.2d, #1 + *[0-9a-f]+: 6f089400 uqshrn2 v0\.16b, v0\.8h, #8 + *[0-9a-f]+: 6f08941f uqshrn2 v31\.16b, v0\.8h, #8 + *[0-9a-f]+: 6f0897e0 uqshrn2 v0\.16b, v31\.8h, #8 + *[0-9a-f]+: 6f0f9400 uqshrn2 v0\.16b, v0\.8h, #1 + *[0-9a-f]+: 6f109400 uqshrn2 v0\.8h, v0\.4s, #16 + *[0-9a-f]+: 6f10941f uqshrn2 v31\.8h, v0\.4s, #16 + *[0-9a-f]+: 6f1097e0 uqshrn2 v0\.8h, v31\.4s, #16 + *[0-9a-f]+: 6f1f9400 uqshrn2 v0\.8h, v0\.4s, #1 + *[0-9a-f]+: 6f209400 uqshrn2 v0\.4s, v0\.2d, #32 + *[0-9a-f]+: 6f20941f uqshrn2 v31\.4s, v0\.2d, #32 + *[0-9a-f]+: 6f2097e0 uqshrn2 v0\.4s, v31\.2d, #32 + *[0-9a-f]+: 6f3f9400 uqshrn2 v0\.4s, v0\.2d, #1 + *[0-9a-f]+: 2f089c00 uqrshrn v0\.8b, v0\.8h, #8 + *[0-9a-f]+: 2f089c1f uqrshrn v31\.8b, v0\.8h, #8 + *[0-9a-f]+: 2f089fe0 uqrshrn v0\.8b, v31\.8h, #8 + *[0-9a-f]+: 2f0f9c00 uqrshrn v0\.8b, v0\.8h, #1 + *[0-9a-f]+: 2f109c00 uqrshrn v0\.4h, v0\.4s, #16 + *[0-9a-f]+: 2f109c1f uqrshrn v31\.4h, v0\.4s, #16 + *[0-9a-f]+: 2f109fe0 uqrshrn v0\.4h, v31\.4s, #16 + *[0-9a-f]+: 2f1f9c00 uqrshrn v0\.4h, v0\.4s, #1 + *[0-9a-f]+: 2f209c00 uqrshrn v0\.2s, v0\.2d, #32 + *[0-9a-f]+: 2f209c1f uqrshrn v31\.2s, v0\.2d, #32 + *[0-9a-f]+: 2f209fe0 uqrshrn v0\.2s, v31\.2d, #32 + *[0-9a-f]+: 2f3f9c00 uqrshrn v0\.2s, v0\.2d, #1 + *[0-9a-f]+: 6f089c00 uqrshrn2 v0\.16b, v0\.8h, #8 + *[0-9a-f]+: 6f089c1f uqrshrn2 v31\.16b, v0\.8h, #8 + *[0-9a-f]+: 6f089fe0 uqrshrn2 v0\.16b, v31\.8h, #8 + *[0-9a-f]+: 6f0f9c00 uqrshrn2 v0\.16b, v0\.8h, #1 + *[0-9a-f]+: 6f109c00 uqrshrn2 v0\.8h, v0\.4s, #16 + *[0-9a-f]+: 6f109c1f uqrshrn2 v31\.8h, v0\.4s, #16 + *[0-9a-f]+: 6f109fe0 uqrshrn2 v0\.8h, v31\.4s, #16 + *[0-9a-f]+: 6f1f9c00 uqrshrn2 v0\.8h, v0\.4s, #1 + *[0-9a-f]+: 6f209c00 uqrshrn2 v0\.4s, v0\.2d, #32 + *[0-9a-f]+: 6f209c1f uqrshrn2 v31\.4s, v0\.2d, #32 + *[0-9a-f]+: 6f209fe0 uqrshrn2 v0\.4s, v31\.2d, #32 + *[0-9a-f]+: 6f3f9c00 uqrshrn2 v0\.4s, v0\.2d, #1 diff --git a/gas/testsuite/gas/aarch64/advsimd-shift-immediate.s b/gas/testsuite/gas/aarch64/advsimd-shift-immediate.s new file mode 100644 index 0000000..c07a15c --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsimd-shift-immediate.s @@ -0,0 +1,605 @@ + sshr v0.8b, v0.8b, #8 + sshr v31.8b, v0.8b, #8 + sshr v0.8b, v31.8b, #8 + sshr v0.8b, v0.8b, #1 + sshr v0.4h, v0.4h, #16 + sshr v31.4h, v0.4h, #16 + sshr v0.4h, v31.4h, #16 + sshr v0.4h, v0.4h, #1 + sshr v0.2s, v0.2s, #32 + sshr v31.2s, v0.2s, #32 + sshr v0.2s, v31.2s, #32 + sshr v0.2s, v0.2s, #1 + sshr v0.16b, v0.16b, #8 + sshr v31.16b, v0.16b, #8 + sshr v0.16b, v31.16b, #8 + sshr v0.16b, v0.16b, #1 + sshr v0.8h, v0.8h, #16 + sshr v31.8h, v0.8h, #16 + sshr v0.8h, v31.8h, #16 + sshr v0.8h, v0.8h, #1 + sshr v0.4s, v0.4s, #32 + sshr v31.4s, v0.4s, #32 + sshr v0.4s, v31.4s, #32 + sshr v0.4s, v0.4s, #1 + sshr v0.2d, v0.2d, #64 + sshr v31.2d, v0.2d, #64 + sshr v0.2d, v31.2d, #64 + sshr v0.2d, v0.2d, #1 + + ssra v0.8b, v0.8b, #8 + ssra v31.8b, v0.8b, #8 + ssra v0.8b, v31.8b, #8 + ssra v0.8b, v0.8b, #1 + ssra v0.4h, v0.4h, #16 + ssra v31.4h, v0.4h, #16 + ssra v0.4h, v31.4h, #16 + ssra v0.4h, v0.4h, #1 + ssra v0.2s, v0.2s, #32 + ssra v31.2s, v0.2s, #32 + ssra v0.2s, v31.2s, #32 + ssra v0.2s, v0.2s, #1 + ssra v0.16b, v0.16b, #8 + ssra v31.16b, v0.16b, #8 + ssra v0.16b, v31.16b, #8 + ssra v0.16b, v0.16b, #1 + ssra v0.8h, v0.8h, #16 + ssra v31.8h, v0.8h, #16 + ssra v0.8h, v31.8h, #16 + ssra v0.8h, v0.8h, #1 + ssra v0.4s, v0.4s, #32 + ssra v31.4s, v0.4s, #32 + ssra v0.4s, v31.4s, #32 + ssra v0.4s, v0.4s, #1 + ssra v0.2d, v0.2d, #64 + ssra v31.2d, v0.2d, #64 + ssra v0.2d, v31.2d, #64 + ssra v0.2d, v0.2d, #1 + + srshr v0.8b, v0.8b, #8 + srshr v31.8b, v0.8b, #8 + srshr v0.8b, v31.8b, #8 + srshr v0.8b, v0.8b, #1 + srshr v0.4h, v0.4h, #16 + srshr v31.4h, v0.4h, #16 + srshr v0.4h, v31.4h, #16 + srshr v0.4h, v0.4h, #1 + srshr v0.2s, v0.2s, #32 + srshr v31.2s, v0.2s, #32 + srshr v0.2s, v31.2s, #32 + srshr v0.2s, v0.2s, #1 + srshr v0.16b, v0.16b, #8 + srshr v31.16b, v0.16b, #8 + srshr v0.16b, v31.16b, #8 + srshr v0.16b, v0.16b, #1 + srshr v0.8h, v0.8h, #16 + srshr v31.8h, v0.8h, #16 + srshr v0.8h, v31.8h, #16 + srshr v0.8h, v0.8h, #1 + srshr v0.4s, v0.4s, #32 + srshr v31.4s, v0.4s, #32 + srshr v0.4s, v31.4s, #32 + srshr v0.4s, v0.4s, #1 + srshr v0.2d, v0.2d, #64 + srshr v31.2d, v0.2d, #64 + srshr v0.2d, v31.2d, #64 + srshr v0.2d, v0.2d, #1 + + srsra v0.8b, v0.8b, #8 + srsra v31.8b, v0.8b, #8 + srsra v0.8b, v31.8b, #8 + srsra v0.8b, v0.8b, #1 + srsra v0.4h, v0.4h, #16 + srsra v31.4h, v0.4h, #16 + srsra v0.4h, v31.4h, #16 + srsra v0.4h, v0.4h, #1 + srsra v0.2s, v0.2s, #32 + srsra v31.2s, v0.2s, #32 + srsra v0.2s, v31.2s, #32 + srsra v0.2s, v0.2s, #1 + srsra v0.16b, v0.16b, #8 + srsra v31.16b, v0.16b, #8 + srsra v0.16b, v31.16b, #8 + srsra v0.16b, v0.16b, #1 + srsra v0.8h, v0.8h, #16 + srsra v31.8h, v0.8h, #16 + srsra v0.8h, v31.8h, #16 + srsra v0.8h, v0.8h, #1 + srsra v0.4s, v0.4s, #32 + srsra v31.4s, v0.4s, #32 + srsra v0.4s, v31.4s, #32 + srsra v0.4s, v0.4s, #1 + srsra v0.2d, v0.2d, #64 + srsra v31.2d, v0.2d, #64 + srsra v0.2d, v31.2d, #64 + srsra v0.2d, v0.2d, #1 + + shl v0.8b, v0.8b, #0 + shl v31.8b, v0.8b, #0 + shl v0.8b, v31.8b, #0 + shl v0.8b, v0.8b, #7 + shl v0.4h, v0.4h, #0 + shl v31.4h, v0.4h, #0 + shl v0.4h, v31.4h, #0 + shl v0.4h, v0.4h, #15 + shl v0.2s, v0.2s, #0 + shl v31.2s, v0.2s, #0 + shl v0.2s, v31.2s, #0 + shl v0.2s, v0.2s, #31 + shl v0.16b, v0.16b, #0 + shl v31.16b, v0.16b, #0 + shl v0.16b, v31.16b, #0 + shl v0.16b, v0.16b, #7 + shl v0.8h, v0.8h, #0 + shl v31.8h, v0.8h, #0 + shl v0.8h, v31.8h, #0 + shl v0.8h, v0.8h, #15 + shl v0.4s, v0.4s, #0 + shl v31.4s, v0.4s, #0 + shl v0.4s, v31.4s, #0 + shl v0.4s, v0.4s, #31 + shl v0.2d, v0.2d, #0 + shl v31.2d, v0.2d, #0 + shl v0.2d, v31.2d, #0 + shl v0.2d, v0.2d, #63 + + sqshl v0.8b, v0.8b, #0 + sqshl v31.8b, v0.8b, #0 + sqshl v0.8b, v31.8b, #0 + sqshl v0.8b, v0.8b, #7 + sqshl v0.4h, v0.4h, #0 + sqshl v31.4h, v0.4h, #0 + sqshl v0.4h, v31.4h, #0 + sqshl v0.4h, v0.4h, #15 + sqshl v0.2s, v0.2s, #0 + sqshl v31.2s, v0.2s, #0 + sqshl v0.2s, v31.2s, #0 + sqshl v0.2s, v0.2s, #31 + sqshl v0.16b, v0.16b, #0 + sqshl v31.16b, v0.16b, #0 + sqshl v0.16b, v31.16b, #0 + sqshl v0.16b, v0.16b, #7 + sqshl v0.8h, v0.8h, #0 + sqshl v31.8h, v0.8h, #0 + sqshl v0.8h, v31.8h, #0 + sqshl v0.8h, v0.8h, #15 + sqshl v0.4s, v0.4s, #0 + sqshl v31.4s, v0.4s, #0 + sqshl v0.4s, v31.4s, #0 + sqshl v0.4s, v0.4s, #31 + sqshl v0.2d, v0.2d, #0 + sqshl v31.2d, v0.2d, #0 + sqshl v0.2d, v31.2d, #0 + sqshl v0.2d, v0.2d, #63 + + shrn v0.8b, v0.8h, #8 + shrn v31.8b, v0.8h, #8 + shrn v0.8b, v31.8h, #8 + shrn v0.8b, v0.8h, #1 + shrn v0.4h, v0.4s, #16 + shrn v31.4h, v0.4s, #16 + shrn v0.4h, v31.4s, #16 + shrn v0.4h, v0.4s, #1 + shrn v0.2s, v0.2d, #32 + shrn v31.2s, v0.2d, #32 + shrn v0.2s, v31.2d, #32 + shrn v0.2s, v0.2d, #1 + shrn2 v0.16b, v0.8h, #8 + shrn2 v31.16b, v0.8h, #8 + shrn2 v0.16b, v31.8h, #8 + shrn2 v0.16b, v0.8h, #1 + shrn2 v0.8h, v0.4s, #16 + shrn2 v31.8h, v0.4s, #16 + shrn2 v0.8h, v31.4s, #16 + shrn2 v0.8h, v0.4s, #1 + shrn2 v0.4s, v0.2d, #32 + shrn2 v31.4s, v0.2d, #32 + shrn2 v0.4s, v31.2d, #32 + shrn2 v0.4s, v0.2d, #1 + + rshrn v0.8b, v0.8h, #8 + rshrn v31.8b, v0.8h, #8 + rshrn v0.8b, v31.8h, #8 + rshrn v0.8b, v0.8h, #1 + rshrn v0.4h, v0.4s, #16 + rshrn v31.4h, v0.4s, #16 + rshrn v0.4h, v31.4s, #16 + rshrn v0.4h, v0.4s, #1 + rshrn v0.2s, v0.2d, #32 + rshrn v31.2s, v0.2d, #32 + rshrn v0.2s, v31.2d, #32 + rshrn v0.2s, v0.2d, #1 + rshrn2 v0.16b, v0.8h, #8 + rshrn2 v31.16b, v0.8h, #8 + rshrn2 v0.16b, v31.8h, #8 + rshrn2 v0.16b, v0.8h, #1 + rshrn2 v0.8h, v0.4s, #16 + rshrn2 v31.8h, v0.4s, #16 + rshrn2 v0.8h, v31.4s, #16 + rshrn2 v0.8h, v0.4s, #1 + rshrn2 v0.4s, v0.2d, #32 + rshrn2 v31.4s, v0.2d, #32 + rshrn2 v0.4s, v31.2d, #32 + rshrn2 v0.4s, v0.2d, #1 + + sqshrn v0.8b, v0.8h, #8 + sqshrn v31.8b, v0.8h, #8 + sqshrn v0.8b, v31.8h, #8 + sqshrn v0.8b, v0.8h, #1 + sqshrn v0.4h, v0.4s, #16 + sqshrn v31.4h, v0.4s, #16 + sqshrn v0.4h, v31.4s, #16 + sqshrn v0.4h, v0.4s, #1 + sqshrn v0.2s, v0.2d, #32 + sqshrn v31.2s, v0.2d, #32 + sqshrn v0.2s, v31.2d, #32 + sqshrn v0.2s, v0.2d, #1 + sqshrn2 v0.16b, v0.8h, #8 + sqshrn2 v31.16b, v0.8h, #8 + sqshrn2 v0.16b, v31.8h, #8 + sqshrn2 v0.16b, v0.8h, #1 + sqshrn2 v0.8h, v0.4s, #16 + sqshrn2 v31.8h, v0.4s, #16 + sqshrn2 v0.8h, v31.4s, #16 + sqshrn2 v0.8h, v0.4s, #1 + sqshrn2 v0.4s, v0.2d, #32 + sqshrn2 v31.4s, v0.2d, #32 + sqshrn2 v0.4s, v31.2d, #32 + sqshrn2 v0.4s, v0.2d, #1 + + sqrshrn v0.8b, v0.8h, #8 + sqrshrn v31.8b, v0.8h, #8 + sqrshrn v0.8b, v31.8h, #8 + sqrshrn v0.8b, v0.8h, #1 + sqrshrn v0.4h, v0.4s, #16 + sqrshrn v31.4h, v0.4s, #16 + sqrshrn v0.4h, v31.4s, #16 + sqrshrn v0.4h, v0.4s, #1 + sqrshrn v0.2s, v0.2d, #32 + sqrshrn v31.2s, v0.2d, #32 + sqrshrn v0.2s, v31.2d, #32 + sqrshrn v0.2s, v0.2d, #1 + sqrshrn2 v0.16b, v0.8h, #8 + sqrshrn2 v31.16b, v0.8h, #8 + sqrshrn2 v0.16b, v31.8h, #8 + sqrshrn2 v0.16b, v0.8h, #1 + sqrshrn2 v0.8h, v0.4s, #16 + sqrshrn2 v31.8h, v0.4s, #16 + sqrshrn2 v0.8h, v31.4s, #16 + sqrshrn2 v0.8h, v0.4s, #1 + sqrshrn2 v0.4s, v0.2d, #32 + sqrshrn2 v31.4s, v0.2d, #32 + sqrshrn2 v0.4s, v31.2d, #32 + sqrshrn2 v0.4s, v0.2d, #1 + + ushr v0.8b, v0.8b, #8 + ushr v31.8b, v0.8b, #8 + ushr v0.8b, v31.8b, #8 + ushr v0.8b, v0.8b, #1 + ushr v0.4h, v0.4h, #16 + ushr v31.4h, v0.4h, #16 + ushr v0.4h, v31.4h, #16 + ushr v0.4h, v0.4h, #1 + ushr v0.2s, v0.2s, #32 + ushr v31.2s, v0.2s, #32 + ushr v0.2s, v31.2s, #32 + ushr v0.2s, v0.2s, #1 + ushr v0.16b, v0.16b, #8 + ushr v31.16b, v0.16b, #8 + ushr v0.16b, v31.16b, #8 + ushr v0.16b, v0.16b, #1 + ushr v0.8h, v0.8h, #16 + ushr v31.8h, v0.8h, #16 + ushr v0.8h, v31.8h, #16 + ushr v0.8h, v0.8h, #1 + ushr v0.4s, v0.4s, #32 + ushr v31.4s, v0.4s, #32 + ushr v0.4s, v31.4s, #32 + ushr v0.4s, v0.4s, #1 + ushr v0.2d, v0.2d, #64 + ushr v31.2d, v0.2d, #64 + ushr v0.2d, v31.2d, #64 + ushr v0.2d, v0.2d, #1 + + usra v0.8b, v0.8b, #8 + usra v31.8b, v0.8b, #8 + usra v0.8b, v31.8b, #8 + usra v0.8b, v0.8b, #1 + usra v0.4h, v0.4h, #16 + usra v31.4h, v0.4h, #16 + usra v0.4h, v31.4h, #16 + usra v0.4h, v0.4h, #1 + usra v0.2s, v0.2s, #32 + usra v31.2s, v0.2s, #32 + usra v0.2s, v31.2s, #32 + usra v0.2s, v0.2s, #1 + usra v0.16b, v0.16b, #8 + usra v31.16b, v0.16b, #8 + usra v0.16b, v31.16b, #8 + usra v0.16b, v0.16b, #1 + usra v0.8h, v0.8h, #16 + usra v31.8h, v0.8h, #16 + usra v0.8h, v31.8h, #16 + usra v0.8h, v0.8h, #1 + usra v0.4s, v0.4s, #32 + usra v31.4s, v0.4s, #32 + usra v0.4s, v31.4s, #32 + usra v0.4s, v0.4s, #1 + usra v0.2d, v0.2d, #64 + usra v31.2d, v0.2d, #64 + usra v0.2d, v31.2d, #64 + usra v0.2d, v0.2d, #1 + + urshr v0.8b, v0.8b, #8 + urshr v31.8b, v0.8b, #8 + urshr v0.8b, v31.8b, #8 + urshr v0.8b, v0.8b, #1 + urshr v0.4h, v0.4h, #16 + urshr v31.4h, v0.4h, #16 + urshr v0.4h, v31.4h, #16 + urshr v0.4h, v0.4h, #1 + urshr v0.2s, v0.2s, #32 + urshr v31.2s, v0.2s, #32 + urshr v0.2s, v31.2s, #32 + urshr v0.2s, v0.2s, #1 + urshr v0.16b, v0.16b, #8 + urshr v31.16b, v0.16b, #8 + urshr v0.16b, v31.16b, #8 + urshr v0.16b, v0.16b, #1 + urshr v0.8h, v0.8h, #16 + urshr v31.8h, v0.8h, #16 + urshr v0.8h, v31.8h, #16 + urshr v0.8h, v0.8h, #1 + urshr v0.4s, v0.4s, #32 + urshr v31.4s, v0.4s, #32 + urshr v0.4s, v31.4s, #32 + urshr v0.4s, v0.4s, #1 + urshr v0.2d, v0.2d, #64 + urshr v31.2d, v0.2d, #64 + urshr v0.2d, v31.2d, #64 + urshr v0.2d, v0.2d, #1 + + ursra v0.8b, v0.8b, #8 + ursra v31.8b, v0.8b, #8 + ursra v0.8b, v31.8b, #8 + ursra v0.8b, v0.8b, #1 + ursra v0.4h, v0.4h, #16 + ursra v31.4h, v0.4h, #16 + ursra v0.4h, v31.4h, #16 + ursra v0.4h, v0.4h, #1 + ursra v0.2s, v0.2s, #32 + ursra v31.2s, v0.2s, #32 + ursra v0.2s, v31.2s, #32 + ursra v0.2s, v0.2s, #1 + ursra v0.16b, v0.16b, #8 + ursra v31.16b, v0.16b, #8 + ursra v0.16b, v31.16b, #8 + ursra v0.16b, v0.16b, #1 + ursra v0.8h, v0.8h, #16 + ursra v31.8h, v0.8h, #16 + ursra v0.8h, v31.8h, #16 + ursra v0.8h, v0.8h, #1 + ursra v0.4s, v0.4s, #32 + ursra v31.4s, v0.4s, #32 + ursra v0.4s, v31.4s, #32 + ursra v0.4s, v0.4s, #1 + ursra v0.2d, v0.2d, #64 + ursra v31.2d, v0.2d, #64 + ursra v0.2d, v31.2d, #64 + ursra v0.2d, v0.2d, #1 + + sri v0.8b, v0.8b, #8 + sri v31.8b, v0.8b, #8 + sri v0.8b, v31.8b, #8 + sri v0.8b, v0.8b, #1 + sri v0.4h, v0.4h, #16 + sri v31.4h, v0.4h, #16 + sri v0.4h, v31.4h, #16 + sri v0.4h, v0.4h, #1 + sri v0.2s, v0.2s, #32 + sri v31.2s, v0.2s, #32 + sri v0.2s, v31.2s, #32 + sri v0.2s, v0.2s, #1 + sri v0.16b, v0.16b, #8 + sri v31.16b, v0.16b, #8 + sri v0.16b, v31.16b, #8 + sri v0.16b, v0.16b, #1 + sri v0.8h, v0.8h, #16 + sri v31.8h, v0.8h, #16 + sri v0.8h, v31.8h, #16 + sri v0.8h, v0.8h, #1 + sri v0.4s, v0.4s, #32 + sri v31.4s, v0.4s, #32 + sri v0.4s, v31.4s, #32 + sri v0.4s, v0.4s, #1 + sri v0.2d, v0.2d, #64 + sri v31.2d, v0.2d, #64 + sri v0.2d, v31.2d, #64 + sri v0.2d, v0.2d, #1 + + sli v0.8b, v0.8b, #0 + sli v31.8b, v0.8b, #0 + sli v0.8b, v31.8b, #0 + sli v0.8b, v0.8b, #7 + sli v0.4h, v0.4h, #0 + sli v31.4h, v0.4h, #0 + sli v0.4h, v31.4h, #0 + sli v0.4h, v0.4h, #15 + sli v0.2s, v0.2s, #0 + sli v31.2s, v0.2s, #0 + sli v0.2s, v31.2s, #0 + sli v0.2s, v0.2s, #31 + sli v0.16b, v0.16b, #0 + sli v31.16b, v0.16b, #0 + sli v0.16b, v31.16b, #0 + sli v0.16b, v0.16b, #7 + sli v0.8h, v0.8h, #0 + sli v31.8h, v0.8h, #0 + sli v0.8h, v31.8h, #0 + sli v0.8h, v0.8h, #15 + sli v0.4s, v0.4s, #0 + sli v31.4s, v0.4s, #0 + sli v0.4s, v31.4s, #0 + sli v0.4s, v0.4s, #31 + sli v0.2d, v0.2d, #0 + sli v31.2d, v0.2d, #0 + sli v0.2d, v31.2d, #0 + sli v0.2d, v0.2d, #63 + + sqshlu v0.8b, v0.8b, #0 + sqshlu v31.8b, v0.8b, #0 + sqshlu v0.8b, v31.8b, #0 + sqshlu v0.8b, v0.8b, #7 + sqshlu v0.4h, v0.4h, #0 + sqshlu v31.4h, v0.4h, #0 + sqshlu v0.4h, v31.4h, #0 + sqshlu v0.4h, v0.4h, #15 + sqshlu v0.2s, v0.2s, #0 + sqshlu v31.2s, v0.2s, #0 + sqshlu v0.2s, v31.2s, #0 + sqshlu v0.2s, v0.2s, #31 + sqshlu v0.16b, v0.16b, #0 + sqshlu v31.16b, v0.16b, #0 + sqshlu v0.16b, v31.16b, #0 + sqshlu v0.16b, v0.16b, #7 + sqshlu v0.8h, v0.8h, #0 + sqshlu v31.8h, v0.8h, #0 + sqshlu v0.8h, v31.8h, #0 + sqshlu v0.8h, v0.8h, #15 + sqshlu v0.4s, v0.4s, #0 + sqshlu v31.4s, v0.4s, #0 + sqshlu v0.4s, v31.4s, #0 + sqshlu v0.4s, v0.4s, #31 + sqshlu v0.2d, v0.2d, #0 + sqshlu v31.2d, v0.2d, #0 + sqshlu v0.2d, v31.2d, #0 + sqshlu v0.2d, v0.2d, #63 + + uqshl v0.8b, v0.8b, #0 + uqshl v31.8b, v0.8b, #0 + uqshl v0.8b, v31.8b, #0 + uqshl v0.8b, v0.8b, #7 + uqshl v0.4h, v0.4h, #0 + uqshl v31.4h, v0.4h, #0 + uqshl v0.4h, v31.4h, #0 + uqshl v0.4h, v0.4h, #15 + uqshl v0.2s, v0.2s, #0 + uqshl v31.2s, v0.2s, #0 + uqshl v0.2s, v31.2s, #0 + uqshl v0.2s, v0.2s, #31 + uqshl v0.16b, v0.16b, #0 + uqshl v31.16b, v0.16b, #0 + uqshl v0.16b, v31.16b, #0 + uqshl v0.16b, v0.16b, #7 + uqshl v0.8h, v0.8h, #0 + uqshl v31.8h, v0.8h, #0 + uqshl v0.8h, v31.8h, #0 + uqshl v0.8h, v0.8h, #15 + uqshl v0.4s, v0.4s, #0 + uqshl v31.4s, v0.4s, #0 + uqshl v0.4s, v31.4s, #0 + uqshl v0.4s, v0.4s, #31 + uqshl v0.2d, v0.2d, #0 + uqshl v31.2d, v0.2d, #0 + uqshl v0.2d, v31.2d, #0 + uqshl v0.2d, v0.2d, #63 + + sqshrun v0.8b, v0.8h, #8 + sqshrun v31.8b, v0.8h, #8 + sqshrun v0.8b, v31.8h, #8 + sqshrun v0.8b, v0.8h, #1 + sqshrun v0.4h, v0.4s, #16 + sqshrun v31.4h, v0.4s, #16 + sqshrun v0.4h, v31.4s, #16 + sqshrun v0.4h, v0.4s, #1 + sqshrun v0.2s, v0.2d, #32 + sqshrun v31.2s, v0.2d, #32 + sqshrun v0.2s, v31.2d, #32 + sqshrun v0.2s, v0.2d, #1 + sqshrun2 v0.16b, v0.8h, #8 + sqshrun2 v31.16b, v0.8h, #8 + sqshrun2 v0.16b, v31.8h, #8 + sqshrun2 v0.16b, v0.8h, #1 + sqshrun2 v0.8h, v0.4s, #16 + sqshrun2 v31.8h, v0.4s, #16 + sqshrun2 v0.8h, v31.4s, #16 + sqshrun2 v0.8h, v0.4s, #1 + sqshrun2 v0.4s, v0.2d, #32 + sqshrun2 v31.4s, v0.2d, #32 + sqshrun2 v0.4s, v31.2d, #32 + sqshrun2 v0.4s, v0.2d, #1 + + sqrshrun v0.8b, v0.8h, #8 + sqrshrun v31.8b, v0.8h, #8 + sqrshrun v0.8b, v31.8h, #8 + sqrshrun v0.8b, v0.8h, #1 + sqrshrun v0.4h, v0.4s, #16 + sqrshrun v31.4h, v0.4s, #16 + sqrshrun v0.4h, v31.4s, #16 + sqrshrun v0.4h, v0.4s, #1 + sqrshrun v0.2s, v0.2d, #32 + sqrshrun v31.2s, v0.2d, #32 + sqrshrun v0.2s, v31.2d, #32 + sqrshrun v0.2s, v0.2d, #1 + sqrshrun2 v0.16b, v0.8h, #8 + sqrshrun2 v31.16b, v0.8h, #8 + sqrshrun2 v0.16b, v31.8h, #8 + sqrshrun2 v0.16b, v0.8h, #1 + sqrshrun2 v0.8h, v0.4s, #16 + sqrshrun2 v31.8h, v0.4s, #16 + sqrshrun2 v0.8h, v31.4s, #16 + sqrshrun2 v0.8h, v0.4s, #1 + sqrshrun2 v0.4s, v0.2d, #32 + sqrshrun2 v31.4s, v0.2d, #32 + sqrshrun2 v0.4s, v31.2d, #32 + sqrshrun2 v0.4s, v0.2d, #1 + + uqshrn v0.8b, v0.8h, #8 + uqshrn v31.8b, v0.8h, #8 + uqshrn v0.8b, v31.8h, #8 + uqshrn v0.8b, v0.8h, #1 + uqshrn v0.4h, v0.4s, #16 + uqshrn v31.4h, v0.4s, #16 + uqshrn v0.4h, v31.4s, #16 + uqshrn v0.4h, v0.4s, #1 + uqshrn v0.2s, v0.2d, #32 + uqshrn v31.2s, v0.2d, #32 + uqshrn v0.2s, v31.2d, #32 + uqshrn v0.2s, v0.2d, #1 + uqshrn2 v0.16b, v0.8h, #8 + uqshrn2 v31.16b, v0.8h, #8 + uqshrn2 v0.16b, v31.8h, #8 + uqshrn2 v0.16b, v0.8h, #1 + uqshrn2 v0.8h, v0.4s, #16 + uqshrn2 v31.8h, v0.4s, #16 + uqshrn2 v0.8h, v31.4s, #16 + uqshrn2 v0.8h, v0.4s, #1 + uqshrn2 v0.4s, v0.2d, #32 + uqshrn2 v31.4s, v0.2d, #32 + uqshrn2 v0.4s, v31.2d, #32 + uqshrn2 v0.4s, v0.2d, #1 + + uqrshrn v0.8b, v0.8h, #8 + uqrshrn v31.8b, v0.8h, #8 + uqrshrn v0.8b, v31.8h, #8 + uqrshrn v0.8b, v0.8h, #1 + uqrshrn v0.4h, v0.4s, #16 + uqrshrn v31.4h, v0.4s, #16 + uqrshrn v0.4h, v31.4s, #16 + uqrshrn v0.4h, v0.4s, #1 + uqrshrn v0.2s, v0.2d, #32 + uqrshrn v31.2s, v0.2d, #32 + uqrshrn v0.2s, v31.2d, #32 + uqrshrn v0.2s, v0.2d, #1 + uqrshrn2 v0.16b, v0.8h, #8 + uqrshrn2 v31.16b, v0.8h, #8 + uqrshrn2 v0.16b, v31.8h, #8 + uqrshrn2 v0.16b, v0.8h, #1 + uqrshrn2 v0.8h, v0.4s, #16 + uqrshrn2 v31.8h, v0.4s, #16 + uqrshrn2 v0.8h, v31.4s, #16 + uqrshrn2 v0.8h, v0.4s, #1 + uqrshrn2 v0.4s, v0.2d, #32 + uqrshrn2 v31.4s, v0.2d, #32 + uqrshrn2 v0.4s, v31.2d, #32 + uqrshrn2 v0.4s, v0.2d, #1 diff --git a/gas/testsuite/gas/aarch64/advsimd-three-same.d b/gas/testsuite/gas/aarch64/advsimd-three-same.d new file mode 100644 index 0000000..488953a --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsimd-three-same.d @@ -0,0 +1,1205 @@ +#as: -march=armv8-a +#objdump: -dr + +.*: file format .* + + +Disassembly of section \.text: + +0+ <\.text>: + *[0-9a-f]+: 0e200400 shadd v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e20041f shadd v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e2007e0 shadd v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 0e3f0400 shadd v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 0e600400 shadd v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e60041f shadd v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e6007e0 shadd v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 0e7f0400 shadd v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 0ea00400 shadd v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0041f shadd v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea007e0 shadd v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 0ebf0400 shadd v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 4e200400 shadd v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e20041f shadd v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e2007e0 shadd v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 4e3f0400 shadd v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 4e600400 shadd v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e60041f shadd v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e6007e0 shadd v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 4e7f0400 shadd v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 4ea00400 shadd v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0041f shadd v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea007e0 shadd v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 4ebf0400 shadd v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 0e200c00 sqadd v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e200c1f sqadd v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e200fe0 sqadd v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 0e3f0c00 sqadd v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 0e600c00 sqadd v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e600c1f sqadd v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e600fe0 sqadd v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 0e7f0c00 sqadd v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 0ea00c00 sqadd v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea00c1f sqadd v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea00fe0 sqadd v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 0ebf0c00 sqadd v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 4e200c00 sqadd v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e200c1f sqadd v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e200fe0 sqadd v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 4e3f0c00 sqadd v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 4e600c00 sqadd v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e600c1f sqadd v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e600fe0 sqadd v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 4e7f0c00 sqadd v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 4ea00c00 sqadd v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea00c1f sqadd v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea00fe0 sqadd v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 4ebf0c00 sqadd v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 4ee00c00 sqadd v0\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ee00c1f sqadd v31\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ee00fe0 sqadd v0\.2d, v31\.2d, v0\.2d + *[0-9a-f]+: 4eff0c00 sqadd v0\.2d, v0\.2d, v31\.2d + *[0-9a-f]+: 0e201400 srhadd v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e20141f srhadd v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e2017e0 srhadd v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 0e3f1400 srhadd v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 0e601400 srhadd v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e60141f srhadd v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e6017e0 srhadd v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 0e7f1400 srhadd v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 0ea01400 srhadd v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0141f srhadd v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea017e0 srhadd v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 0ebf1400 srhadd v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 4e201400 srhadd v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e20141f srhadd v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e2017e0 srhadd v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 4e3f1400 srhadd v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 4e601400 srhadd v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e60141f srhadd v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e6017e0 srhadd v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 4e7f1400 srhadd v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 4ea01400 srhadd v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0141f srhadd v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea017e0 srhadd v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 4ebf1400 srhadd v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 0e201c00 and v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e201c1f and v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e201fe0 and v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 0e3f1c00 and v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 4e201c00 and v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e201c1f and v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e201fe0 and v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 4e3f1c00 and v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 0e601c00 bic v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e601c1f bic v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e601fe0 bic v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 0e7f1c00 bic v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 4e601c00 bic v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e601c1f bic v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e601fe0 bic v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 4e7f1c00 bic v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 0ea01c00 mov v0\.8b, v0\.8b + *[0-9a-f]+: 0ea01c1f mov v31\.8b, v0\.8b + *[0-9a-f]+: 0ea01fe0 orr v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 0ebf1c00 orr v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 4ea01c00 mov v0\.16b, v0\.16b + *[0-9a-f]+: 4ea01c1f mov v31\.16b, v0\.16b + *[0-9a-f]+: 4ea01fe0 orr v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 4ebf1c00 orr v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 0ee01c00 orn v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0ee01c1f orn v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0ee01fe0 orn v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 0eff1c00 orn v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 4ee01c00 orn v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4ee01c1f orn v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4ee01fe0 orn v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 4eff1c00 orn v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 0e202400 shsub v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e20241f shsub v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e2027e0 shsub v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 0e3f2400 shsub v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 0e602400 shsub v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e60241f shsub v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e6027e0 shsub v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 0e7f2400 shsub v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 0ea02400 shsub v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0241f shsub v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea027e0 shsub v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 0ebf2400 shsub v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 4e202400 shsub v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e20241f shsub v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e2027e0 shsub v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 4e3f2400 shsub v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 4e602400 shsub v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e60241f shsub v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e6027e0 shsub v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 4e7f2400 shsub v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 4ea02400 shsub v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0241f shsub v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea027e0 shsub v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 4ebf2400 shsub v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 0e202c00 sqsub v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e202c1f sqsub v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e202fe0 sqsub v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 0e3f2c00 sqsub v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 0e602c00 sqsub v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e602c1f sqsub v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e602fe0 sqsub v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 0e7f2c00 sqsub v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 0ea02c00 sqsub v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea02c1f sqsub v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea02fe0 sqsub v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 0ebf2c00 sqsub v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 4e202c00 sqsub v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e202c1f sqsub v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e202fe0 sqsub v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 4e3f2c00 sqsub v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 4e602c00 sqsub v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e602c1f sqsub v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e602fe0 sqsub v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 4e7f2c00 sqsub v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 4ea02c00 sqsub v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea02c1f sqsub v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea02fe0 sqsub v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 4ebf2c00 sqsub v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 4ee02c00 sqsub v0\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ee02c1f sqsub v31\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ee02fe0 sqsub v0\.2d, v31\.2d, v0\.2d + *[0-9a-f]+: 4eff2c00 sqsub v0\.2d, v0\.2d, v31\.2d + *[0-9a-f]+: 0e203400 cmgt v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e20341f cmgt v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e2037e0 cmgt v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 0e3f3400 cmgt v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 0e603400 cmgt v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e60341f cmgt v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e6037e0 cmgt v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 0e7f3400 cmgt v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 0ea03400 cmgt v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0341f cmgt v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea037e0 cmgt v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 0ebf3400 cmgt v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 4e203400 cmgt v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e20341f cmgt v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e2037e0 cmgt v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 4e3f3400 cmgt v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 4e603400 cmgt v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e60341f cmgt v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e6037e0 cmgt v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 4e7f3400 cmgt v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 4ea03400 cmgt v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0341f cmgt v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea037e0 cmgt v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 4ebf3400 cmgt v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 4ee03400 cmgt v0\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ee0341f cmgt v31\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ee037e0 cmgt v0\.2d, v31\.2d, v0\.2d + *[0-9a-f]+: 4eff3400 cmgt v0\.2d, v0\.2d, v31\.2d + *[0-9a-f]+: 0e203c00 cmge v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e203c1f cmge v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e203fe0 cmge v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 0e3f3c00 cmge v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 0e603c00 cmge v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e603c1f cmge v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e603fe0 cmge v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 0e7f3c00 cmge v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 0ea03c00 cmge v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea03c1f cmge v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea03fe0 cmge v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 0ebf3c00 cmge v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 4e203c00 cmge v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e203c1f cmge v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e203fe0 cmge v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 4e3f3c00 cmge v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 4e603c00 cmge v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e603c1f cmge v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e603fe0 cmge v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 4e7f3c00 cmge v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 4ea03c00 cmge v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea03c1f cmge v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea03fe0 cmge v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 4ebf3c00 cmge v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 4ee03c00 cmge v0\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ee03c1f cmge v31\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ee03fe0 cmge v0\.2d, v31\.2d, v0\.2d + *[0-9a-f]+: 4eff3c00 cmge v0\.2d, v0\.2d, v31\.2d + *[0-9a-f]+: 0e204400 sshl v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e20441f sshl v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e2047e0 sshl v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 0e3f4400 sshl v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 0e604400 sshl v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e60441f sshl v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e6047e0 sshl v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 0e7f4400 sshl v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 0ea04400 sshl v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0441f sshl v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea047e0 sshl v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 0ebf4400 sshl v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 4e204400 sshl v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e20441f sshl v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e2047e0 sshl v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 4e3f4400 sshl v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 4e604400 sshl v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e60441f sshl v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e6047e0 sshl v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 4e7f4400 sshl v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 4ea04400 sshl v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0441f sshl v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea047e0 sshl v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 4ebf4400 sshl v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 4ee04400 sshl v0\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ee0441f sshl v31\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ee047e0 sshl v0\.2d, v31\.2d, v0\.2d + *[0-9a-f]+: 4eff4400 sshl v0\.2d, v0\.2d, v31\.2d + *[0-9a-f]+: 0e204c00 sqshl v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e204c1f sqshl v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e204fe0 sqshl v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 0e3f4c00 sqshl v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 0e604c00 sqshl v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e604c1f sqshl v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e604fe0 sqshl v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 0e7f4c00 sqshl v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 0ea04c00 sqshl v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea04c1f sqshl v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea04fe0 sqshl v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 0ebf4c00 sqshl v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 4e204c00 sqshl v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e204c1f sqshl v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e204fe0 sqshl v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 4e3f4c00 sqshl v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 4e604c00 sqshl v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e604c1f sqshl v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e604fe0 sqshl v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 4e7f4c00 sqshl v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 4ea04c00 sqshl v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea04c1f sqshl v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea04fe0 sqshl v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 4ebf4c00 sqshl v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 4ee04c00 sqshl v0\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ee04c1f sqshl v31\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ee04fe0 sqshl v0\.2d, v31\.2d, v0\.2d + *[0-9a-f]+: 4eff4c00 sqshl v0\.2d, v0\.2d, v31\.2d + *[0-9a-f]+: 0e205400 srshl v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e20541f srshl v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e2057e0 srshl v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 0e3f5400 srshl v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 0e605400 srshl v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e60541f srshl v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e6057e0 srshl v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 0e7f5400 srshl v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 0ea05400 srshl v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0541f srshl v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea057e0 srshl v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 0ebf5400 srshl v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 4e205400 srshl v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e20541f srshl v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e2057e0 srshl v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 4e3f5400 srshl v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 4e605400 srshl v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e60541f srshl v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e6057e0 srshl v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 4e7f5400 srshl v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 4ea05400 srshl v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0541f srshl v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea057e0 srshl v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 4ebf5400 srshl v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 4ee05400 srshl v0\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ee0541f srshl v31\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ee057e0 srshl v0\.2d, v31\.2d, v0\.2d + *[0-9a-f]+: 4eff5400 srshl v0\.2d, v0\.2d, v31\.2d + *[0-9a-f]+: 0e205c00 sqrshl v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e205c1f sqrshl v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e205fe0 sqrshl v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 0e3f5c00 sqrshl v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 0e605c00 sqrshl v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e605c1f sqrshl v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e605fe0 sqrshl v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 0e7f5c00 sqrshl v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 0ea05c00 sqrshl v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea05c1f sqrshl v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea05fe0 sqrshl v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 0ebf5c00 sqrshl v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 4e205c00 sqrshl v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e205c1f sqrshl v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e205fe0 sqrshl v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 4e3f5c00 sqrshl v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 4e605c00 sqrshl v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e605c1f sqrshl v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e605fe0 sqrshl v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 4e7f5c00 sqrshl v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 4ea05c00 sqrshl v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea05c1f sqrshl v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea05fe0 sqrshl v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 4ebf5c00 sqrshl v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 4ee05c00 sqrshl v0\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ee05c1f sqrshl v31\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ee05fe0 sqrshl v0\.2d, v31\.2d, v0\.2d + *[0-9a-f]+: 4eff5c00 sqrshl v0\.2d, v0\.2d, v31\.2d + *[0-9a-f]+: 0e206400 smax v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e20641f smax v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e2067e0 smax v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 0e3f6400 smax v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 0e606400 smax v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e60641f smax v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e6067e0 smax v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 0e7f6400 smax v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 0ea06400 smax v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0641f smax v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea067e0 smax v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 0ebf6400 smax v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 4e206400 smax v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e20641f smax v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e2067e0 smax v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 4e3f6400 smax v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 4e606400 smax v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e60641f smax v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e6067e0 smax v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 4e7f6400 smax v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 4ea06400 smax v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0641f smax v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea067e0 smax v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 4ebf6400 smax v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 0e206c00 smin v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e206c1f smin v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e206fe0 smin v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 0e3f6c00 smin v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 0e606c00 smin v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e606c1f smin v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e606fe0 smin v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 0e7f6c00 smin v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 0ea06c00 smin v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea06c1f smin v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea06fe0 smin v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 0ebf6c00 smin v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 4e206c00 smin v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e206c1f smin v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e206fe0 smin v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 4e3f6c00 smin v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 4e606c00 smin v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e606c1f smin v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e606fe0 smin v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 4e7f6c00 smin v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 4ea06c00 smin v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea06c1f smin v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea06fe0 smin v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 4ebf6c00 smin v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 0e207400 sabd v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e20741f sabd v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e2077e0 sabd v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 0e3f7400 sabd v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 0e607400 sabd v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e60741f sabd v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e6077e0 sabd v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 0e7f7400 sabd v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 0ea07400 sabd v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0741f sabd v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea077e0 sabd v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 0ebf7400 sabd v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 4e207400 sabd v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e20741f sabd v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e2077e0 sabd v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 4e3f7400 sabd v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 4e607400 sabd v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e60741f sabd v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e6077e0 sabd v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 4e7f7400 sabd v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 4ea07400 sabd v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0741f sabd v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea077e0 sabd v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 4ebf7400 sabd v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 0e207c00 saba v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e207c1f saba v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e207fe0 saba v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 0e3f7c00 saba v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 0e607c00 saba v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e607c1f saba v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e607fe0 saba v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 0e7f7c00 saba v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 0ea07c00 saba v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea07c1f saba v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea07fe0 saba v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 0ebf7c00 saba v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 4e207c00 saba v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e207c1f saba v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e207fe0 saba v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 4e3f7c00 saba v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 4e607c00 saba v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e607c1f saba v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e607fe0 saba v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 4e7f7c00 saba v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 4ea07c00 saba v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea07c1f saba v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea07fe0 saba v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 4ebf7c00 saba v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 0e208400 add v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e20841f add v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e2087e0 add v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 0e3f8400 add v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 0e608400 add v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e60841f add v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e6087e0 add v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 0e7f8400 add v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 0ea08400 add v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0841f add v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea087e0 add v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 0ebf8400 add v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 4e208400 add v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e20841f add v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e2087e0 add v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 4e3f8400 add v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 4e608400 add v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e60841f add v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e6087e0 add v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 4e7f8400 add v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 4ea08400 add v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0841f add v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea087e0 add v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 4ebf8400 add v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 4ee08400 add v0\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ee0841f add v31\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ee087e0 add v0\.2d, v31\.2d, v0\.2d + *[0-9a-f]+: 4eff8400 add v0\.2d, v0\.2d, v31\.2d + *[0-9a-f]+: 0e208c00 cmtst v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e208c1f cmtst v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e208fe0 cmtst v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 0e3f8c00 cmtst v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 0e608c00 cmtst v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e608c1f cmtst v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e608fe0 cmtst v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 0e7f8c00 cmtst v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 0ea08c00 cmtst v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea08c1f cmtst v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea08fe0 cmtst v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 0ebf8c00 cmtst v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 4e208c00 cmtst v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e208c1f cmtst v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e208fe0 cmtst v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 4e3f8c00 cmtst v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 4e608c00 cmtst v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e608c1f cmtst v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e608fe0 cmtst v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 4e7f8c00 cmtst v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 4ea08c00 cmtst v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea08c1f cmtst v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea08fe0 cmtst v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 4ebf8c00 cmtst v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 4ee08c00 cmtst v0\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ee08c1f cmtst v31\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ee08fe0 cmtst v0\.2d, v31\.2d, v0\.2d + *[0-9a-f]+: 4eff8c00 cmtst v0\.2d, v0\.2d, v31\.2d + *[0-9a-f]+: 0e209400 mla v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e20941f mla v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e2097e0 mla v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 0e3f9400 mla v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 0e609400 mla v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e60941f mla v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e6097e0 mla v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 0e7f9400 mla v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 0ea09400 mla v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0941f mla v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea097e0 mla v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 0ebf9400 mla v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 4e209400 mla v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e20941f mla v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e2097e0 mla v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 4e3f9400 mla v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 4e609400 mla v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e60941f mla v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e6097e0 mla v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 4e7f9400 mla v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 4ea09400 mla v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0941f mla v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea097e0 mla v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 4ebf9400 mla v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 0e209c00 mul v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e209c1f mul v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e209fe0 mul v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 0e3f9c00 mul v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 0e609c00 mul v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e609c1f mul v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e609fe0 mul v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 0e7f9c00 mul v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 0ea09c00 mul v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea09c1f mul v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea09fe0 mul v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 0ebf9c00 mul v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 4e209c00 mul v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e209c1f mul v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e209fe0 mul v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 4e3f9c00 mul v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 4e609c00 mul v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e609c1f mul v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e609fe0 mul v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 4e7f9c00 mul v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 4ea09c00 mul v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea09c1f mul v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea09fe0 mul v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 4ebf9c00 mul v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 0e20a400 smaxp v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e20a41f smaxp v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e20a7e0 smaxp v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 0e3fa400 smaxp v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 0e60a400 smaxp v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e60a41f smaxp v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e60a7e0 smaxp v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 0e7fa400 smaxp v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 0ea0a400 smaxp v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0a41f smaxp v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0a7e0 smaxp v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 0ebfa400 smaxp v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 4e20a400 smaxp v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e20a41f smaxp v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e20a7e0 smaxp v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 4e3fa400 smaxp v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 4e60a400 smaxp v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e60a41f smaxp v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e60a7e0 smaxp v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 4e7fa400 smaxp v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 4ea0a400 smaxp v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0a41f smaxp v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0a7e0 smaxp v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 4ebfa400 smaxp v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 0e20ac00 sminp v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e20ac1f sminp v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e20afe0 sminp v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 0e3fac00 sminp v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 0e60ac00 sminp v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e60ac1f sminp v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e60afe0 sminp v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 0e7fac00 sminp v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 0ea0ac00 sminp v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0ac1f sminp v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0afe0 sminp v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 0ebfac00 sminp v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 4e20ac00 sminp v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e20ac1f sminp v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e20afe0 sminp v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 4e3fac00 sminp v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 4e60ac00 sminp v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e60ac1f sminp v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e60afe0 sminp v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 4e7fac00 sminp v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 4ea0ac00 sminp v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0ac1f sminp v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0afe0 sminp v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 4ebfac00 sminp v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 0e60b400 sqdmulh v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e60b41f sqdmulh v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e60b7e0 sqdmulh v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 0e7fb400 sqdmulh v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 0ea0b400 sqdmulh v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0b41f sqdmulh v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0b7e0 sqdmulh v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 0ebfb400 sqdmulh v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 4e60b400 sqdmulh v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e60b41f sqdmulh v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e60b7e0 sqdmulh v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 4e7fb400 sqdmulh v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 4ea0b400 sqdmulh v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0b41f sqdmulh v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0b7e0 sqdmulh v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 4ebfb400 sqdmulh v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 0e20bc00 addp v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e20bc1f addp v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 0e20bfe0 addp v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 0e3fbc00 addp v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 0e60bc00 addp v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e60bc1f addp v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 0e60bfe0 addp v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 0e7fbc00 addp v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 0ea0bc00 addp v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0bc1f addp v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0bfe0 addp v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 0ebfbc00 addp v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 4e20bc00 addp v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e20bc1f addp v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 4e20bfe0 addp v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 4e3fbc00 addp v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 4e60bc00 addp v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e60bc1f addp v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 4e60bfe0 addp v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 4e7fbc00 addp v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 4ea0bc00 addp v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0bc1f addp v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0bfe0 addp v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 4ebfbc00 addp v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 4ee0bc00 addp v0\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ee0bc1f addp v31\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 4ee0bfe0 addp v0\.2d, v31\.2d, v0\.2d + *[0-9a-f]+: 4effbc00 addp v0\.2d, v0\.2d, v31\.2d + *[0-9a-f]+: 2e200400 uhadd v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e20041f uhadd v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e2007e0 uhadd v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 2e3f0400 uhadd v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 2e600400 uhadd v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e60041f uhadd v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e6007e0 uhadd v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 2e7f0400 uhadd v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 2ea00400 uhadd v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea0041f uhadd v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea007e0 uhadd v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 2ebf0400 uhadd v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 6e200400 uhadd v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e20041f uhadd v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e2007e0 uhadd v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 6e3f0400 uhadd v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 6e600400 uhadd v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e60041f uhadd v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e6007e0 uhadd v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 6e7f0400 uhadd v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 6ea00400 uhadd v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea0041f uhadd v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea007e0 uhadd v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 6ebf0400 uhadd v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 2e200c00 uqadd v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e200c1f uqadd v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e200fe0 uqadd v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 2e3f0c00 uqadd v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 2e600c00 uqadd v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e600c1f uqadd v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e600fe0 uqadd v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 2e7f0c00 uqadd v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 2ea00c00 uqadd v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea00c1f uqadd v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea00fe0 uqadd v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 2ebf0c00 uqadd v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 6e200c00 uqadd v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e200c1f uqadd v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e200fe0 uqadd v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 6e3f0c00 uqadd v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 6e600c00 uqadd v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e600c1f uqadd v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e600fe0 uqadd v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 6e7f0c00 uqadd v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 6ea00c00 uqadd v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea00c1f uqadd v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea00fe0 uqadd v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 6ebf0c00 uqadd v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 6ee00c00 uqadd v0\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 6ee00c1f uqadd v31\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 6ee00fe0 uqadd v0\.2d, v31\.2d, v0\.2d + *[0-9a-f]+: 6eff0c00 uqadd v0\.2d, v0\.2d, v31\.2d + *[0-9a-f]+: 2e201400 urhadd v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e20141f urhadd v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e2017e0 urhadd v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 2e3f1400 urhadd v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 2e601400 urhadd v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e60141f urhadd v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e6017e0 urhadd v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 2e7f1400 urhadd v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 2ea01400 urhadd v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea0141f urhadd v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea017e0 urhadd v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 2ebf1400 urhadd v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 6e201400 urhadd v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e20141f urhadd v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e2017e0 urhadd v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 6e3f1400 urhadd v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 6e601400 urhadd v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e60141f urhadd v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e6017e0 urhadd v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 6e7f1400 urhadd v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 6ea01400 urhadd v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea0141f urhadd v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea017e0 urhadd v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 6ebf1400 urhadd v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 2e201c00 eor v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e201c1f eor v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e201fe0 eor v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 2e3f1c00 eor v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 6e201c00 eor v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e201c1f eor v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e201fe0 eor v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 6e3f1c00 eor v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 2e601c00 bsl v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e601c1f bsl v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e601fe0 bsl v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 2e7f1c00 bsl v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 6e601c00 bsl v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e601c1f bsl v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e601fe0 bsl v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 6e7f1c00 bsl v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 2ea01c00 bit v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2ea01c1f bit v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2ea01fe0 bit v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 2ebf1c00 bit v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 6ea01c00 bit v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6ea01c1f bit v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6ea01fe0 bit v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 6ebf1c00 bit v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 2ee01c00 bif v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2ee01c1f bif v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2ee01fe0 bif v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 2eff1c00 bif v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 6ee01c00 bif v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6ee01c1f bif v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6ee01fe0 bif v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 6eff1c00 bif v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 2e202400 uhsub v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e20241f uhsub v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e2027e0 uhsub v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 2e3f2400 uhsub v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 2e602400 uhsub v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e60241f uhsub v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e6027e0 uhsub v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 2e7f2400 uhsub v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 2ea02400 uhsub v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea0241f uhsub v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea027e0 uhsub v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 2ebf2400 uhsub v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 6e202400 uhsub v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e20241f uhsub v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e2027e0 uhsub v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 6e3f2400 uhsub v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 6e602400 uhsub v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e60241f uhsub v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e6027e0 uhsub v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 6e7f2400 uhsub v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 6ea02400 uhsub v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea0241f uhsub v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea027e0 uhsub v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 6ebf2400 uhsub v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 2e202c00 uqsub v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e202c1f uqsub v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e202fe0 uqsub v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 2e3f2c00 uqsub v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 2e602c00 uqsub v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e602c1f uqsub v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e602fe0 uqsub v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 2e7f2c00 uqsub v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 2ea02c00 uqsub v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea02c1f uqsub v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea02fe0 uqsub v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 2ebf2c00 uqsub v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 6e202c00 uqsub v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e202c1f uqsub v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e202fe0 uqsub v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 6e3f2c00 uqsub v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 6e602c00 uqsub v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e602c1f uqsub v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e602fe0 uqsub v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 6e7f2c00 uqsub v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 6ea02c00 uqsub v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea02c1f uqsub v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea02fe0 uqsub v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 6ebf2c00 uqsub v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 6ee02c00 uqsub v0\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 6ee02c1f uqsub v31\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 6ee02fe0 uqsub v0\.2d, v31\.2d, v0\.2d + *[0-9a-f]+: 6eff2c00 uqsub v0\.2d, v0\.2d, v31\.2d + *[0-9a-f]+: 2e203400 cmhi v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e20341f cmhi v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e2037e0 cmhi v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 2e3f3400 cmhi v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 2e603400 cmhi v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e60341f cmhi v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e6037e0 cmhi v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 2e7f3400 cmhi v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 2ea03400 cmhi v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea0341f cmhi v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea037e0 cmhi v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 2ebf3400 cmhi v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 6e203400 cmhi v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e20341f cmhi v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e2037e0 cmhi v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 6e3f3400 cmhi v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 6e603400 cmhi v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e60341f cmhi v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e6037e0 cmhi v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 6e7f3400 cmhi v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 6ea03400 cmhi v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea0341f cmhi v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea037e0 cmhi v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 6ebf3400 cmhi v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 6ee03400 cmhi v0\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 6ee0341f cmhi v31\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 6ee037e0 cmhi v0\.2d, v31\.2d, v0\.2d + *[0-9a-f]+: 6eff3400 cmhi v0\.2d, v0\.2d, v31\.2d + *[0-9a-f]+: 2e203c00 cmhs v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e203c1f cmhs v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e203fe0 cmhs v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 2e3f3c00 cmhs v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 2e603c00 cmhs v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e603c1f cmhs v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e603fe0 cmhs v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 2e7f3c00 cmhs v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 2ea03c00 cmhs v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea03c1f cmhs v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea03fe0 cmhs v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 2ebf3c00 cmhs v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 6e203c00 cmhs v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e203c1f cmhs v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e203fe0 cmhs v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 6e3f3c00 cmhs v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 6e603c00 cmhs v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e603c1f cmhs v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e603fe0 cmhs v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 6e7f3c00 cmhs v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 6ea03c00 cmhs v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea03c1f cmhs v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea03fe0 cmhs v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 6ebf3c00 cmhs v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 6ee03c00 cmhs v0\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 6ee03c1f cmhs v31\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 6ee03fe0 cmhs v0\.2d, v31\.2d, v0\.2d + *[0-9a-f]+: 6eff3c00 cmhs v0\.2d, v0\.2d, v31\.2d + *[0-9a-f]+: 2e204400 ushl v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e20441f ushl v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e2047e0 ushl v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 2e3f4400 ushl v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 2e604400 ushl v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e60441f ushl v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e6047e0 ushl v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 2e7f4400 ushl v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 2ea04400 ushl v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea0441f ushl v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea047e0 ushl v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 2ebf4400 ushl v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 6e204400 ushl v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e20441f ushl v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e2047e0 ushl v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 6e3f4400 ushl v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 6e604400 ushl v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e60441f ushl v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e6047e0 ushl v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 6e7f4400 ushl v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 6ea04400 ushl v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea0441f ushl v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea047e0 ushl v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 6ebf4400 ushl v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 6ee04400 ushl v0\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 6ee0441f ushl v31\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 6ee047e0 ushl v0\.2d, v31\.2d, v0\.2d + *[0-9a-f]+: 6eff4400 ushl v0\.2d, v0\.2d, v31\.2d + *[0-9a-f]+: 2e204c00 uqshl v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e204c1f uqshl v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e204fe0 uqshl v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 2e3f4c00 uqshl v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 2e604c00 uqshl v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e604c1f uqshl v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e604fe0 uqshl v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 2e7f4c00 uqshl v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 2ea04c00 uqshl v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea04c1f uqshl v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea04fe0 uqshl v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 2ebf4c00 uqshl v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 6e204c00 uqshl v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e204c1f uqshl v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e204fe0 uqshl v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 6e3f4c00 uqshl v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 6e604c00 uqshl v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e604c1f uqshl v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e604fe0 uqshl v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 6e7f4c00 uqshl v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 6ea04c00 uqshl v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea04c1f uqshl v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea04fe0 uqshl v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 6ebf4c00 uqshl v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 6ee04c00 uqshl v0\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 6ee04c1f uqshl v31\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 6ee04fe0 uqshl v0\.2d, v31\.2d, v0\.2d + *[0-9a-f]+: 6eff4c00 uqshl v0\.2d, v0\.2d, v31\.2d + *[0-9a-f]+: 2e205400 urshl v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e20541f urshl v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e2057e0 urshl v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 2e3f5400 urshl v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 2e605400 urshl v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e60541f urshl v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e6057e0 urshl v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 2e7f5400 urshl v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 2ea05400 urshl v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea0541f urshl v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea057e0 urshl v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 2ebf5400 urshl v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 6e205400 urshl v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e20541f urshl v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e2057e0 urshl v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 6e3f5400 urshl v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 6e605400 urshl v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e60541f urshl v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e6057e0 urshl v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 6e7f5400 urshl v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 6ea05400 urshl v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea0541f urshl v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea057e0 urshl v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 6ebf5400 urshl v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 6ee05400 urshl v0\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 6ee0541f urshl v31\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 6ee057e0 urshl v0\.2d, v31\.2d, v0\.2d + *[0-9a-f]+: 6eff5400 urshl v0\.2d, v0\.2d, v31\.2d + *[0-9a-f]+: 2e205c00 uqrshl v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e205c1f uqrshl v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e205fe0 uqrshl v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 2e3f5c00 uqrshl v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 2e605c00 uqrshl v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e605c1f uqrshl v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e605fe0 uqrshl v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 2e7f5c00 uqrshl v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 2ea05c00 uqrshl v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea05c1f uqrshl v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea05fe0 uqrshl v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 2ebf5c00 uqrshl v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 6e205c00 uqrshl v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e205c1f uqrshl v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e205fe0 uqrshl v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 6e3f5c00 uqrshl v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 6e605c00 uqrshl v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e605c1f uqrshl v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e605fe0 uqrshl v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 6e7f5c00 uqrshl v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 6ea05c00 uqrshl v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea05c1f uqrshl v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea05fe0 uqrshl v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 6ebf5c00 uqrshl v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 6ee05c00 uqrshl v0\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 6ee05c1f uqrshl v31\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 6ee05fe0 uqrshl v0\.2d, v31\.2d, v0\.2d + *[0-9a-f]+: 6eff5c00 uqrshl v0\.2d, v0\.2d, v31\.2d + *[0-9a-f]+: 2e206400 umax v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e20641f umax v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e2067e0 umax v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 2e3f6400 umax v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 2e606400 umax v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e60641f umax v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e6067e0 umax v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 2e7f6400 umax v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 2ea06400 umax v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea0641f umax v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea067e0 umax v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 2ebf6400 umax v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 6e206400 umax v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e20641f umax v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e2067e0 umax v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 6e3f6400 umax v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 6e606400 umax v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e60641f umax v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e6067e0 umax v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 6e7f6400 umax v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 6ea06400 umax v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea0641f umax v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea067e0 umax v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 6ebf6400 umax v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 2e206c00 umin v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e206c1f umin v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e206fe0 umin v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 2e3f6c00 umin v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 2e606c00 umin v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e606c1f umin v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e606fe0 umin v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 2e7f6c00 umin v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 2ea06c00 umin v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea06c1f umin v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea06fe0 umin v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 2ebf6c00 umin v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 6e206c00 umin v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e206c1f umin v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e206fe0 umin v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 6e3f6c00 umin v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 6e606c00 umin v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e606c1f umin v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e606fe0 umin v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 6e7f6c00 umin v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 6ea06c00 umin v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea06c1f umin v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea06fe0 umin v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 6ebf6c00 umin v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 2e207400 uabd v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e20741f uabd v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e2077e0 uabd v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 2e3f7400 uabd v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 2e607400 uabd v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e60741f uabd v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e6077e0 uabd v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 2e7f7400 uabd v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 2ea07400 uabd v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea0741f uabd v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea077e0 uabd v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 2ebf7400 uabd v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 6e207400 uabd v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e20741f uabd v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e2077e0 uabd v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 6e3f7400 uabd v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 6e607400 uabd v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e60741f uabd v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e6077e0 uabd v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 6e7f7400 uabd v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 6ea07400 uabd v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea0741f uabd v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea077e0 uabd v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 6ebf7400 uabd v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 2e207c00 uaba v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e207c1f uaba v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e207fe0 uaba v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 2e3f7c00 uaba v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 2e607c00 uaba v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e607c1f uaba v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e607fe0 uaba v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 2e7f7c00 uaba v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 2ea07c00 uaba v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea07c1f uaba v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea07fe0 uaba v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 2ebf7c00 uaba v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 6e207c00 uaba v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e207c1f uaba v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e207fe0 uaba v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 6e3f7c00 uaba v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 6e607c00 uaba v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e607c1f uaba v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e607fe0 uaba v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 6e7f7c00 uaba v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 6ea07c00 uaba v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea07c1f uaba v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea07fe0 uaba v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 6ebf7c00 uaba v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 2e208400 sub v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e20841f sub v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e2087e0 sub v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 2e3f8400 sub v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 2e608400 sub v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e60841f sub v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e6087e0 sub v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 2e7f8400 sub v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 2ea08400 sub v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea0841f sub v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea087e0 sub v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 2ebf8400 sub v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 6e208400 sub v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e20841f sub v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e2087e0 sub v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 6e3f8400 sub v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 6e608400 sub v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e60841f sub v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e6087e0 sub v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 6e7f8400 sub v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 6ea08400 sub v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea0841f sub v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea087e0 sub v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 6ebf8400 sub v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 6ee08400 sub v0\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 6ee0841f sub v31\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 6ee087e0 sub v0\.2d, v31\.2d, v0\.2d + *[0-9a-f]+: 6eff8400 sub v0\.2d, v0\.2d, v31\.2d + *[0-9a-f]+: 2e208c00 cmeq v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e208c1f cmeq v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e208fe0 cmeq v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 2e3f8c00 cmeq v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 2e608c00 cmeq v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e608c1f cmeq v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e608fe0 cmeq v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 2e7f8c00 cmeq v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 2ea08c00 cmeq v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea08c1f cmeq v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea08fe0 cmeq v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 2ebf8c00 cmeq v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 6e208c00 cmeq v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e208c1f cmeq v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e208fe0 cmeq v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 6e3f8c00 cmeq v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 6e608c00 cmeq v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e608c1f cmeq v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e608fe0 cmeq v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 6e7f8c00 cmeq v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 6ea08c00 cmeq v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea08c1f cmeq v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea08fe0 cmeq v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 6ebf8c00 cmeq v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 6ee08c00 cmeq v0\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 6ee08c1f cmeq v31\.2d, v0\.2d, v0\.2d + *[0-9a-f]+: 6ee08fe0 cmeq v0\.2d, v31\.2d, v0\.2d + *[0-9a-f]+: 6eff8c00 cmeq v0\.2d, v0\.2d, v31\.2d + *[0-9a-f]+: 2e209400 mls v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e20941f mls v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e2097e0 mls v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 2e3f9400 mls v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 2e609400 mls v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e60941f mls v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e6097e0 mls v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 2e7f9400 mls v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 2ea09400 mls v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea0941f mls v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea097e0 mls v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 2ebf9400 mls v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 6e209400 mls v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e20941f mls v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e2097e0 mls v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 6e3f9400 mls v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 6e609400 mls v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e60941f mls v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e6097e0 mls v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 6e7f9400 mls v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 6ea09400 mls v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea0941f mls v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea097e0 mls v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 6ebf9400 mls v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 2e209c00 pmul v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e209c1f pmul v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e209fe0 pmul v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 2e3f9c00 pmul v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 6e209c00 pmul v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e209c1f pmul v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e209fe0 pmul v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 6e3f9c00 pmul v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 2e20a400 umaxp v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e20a41f umaxp v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e20a7e0 umaxp v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 2e3fa400 umaxp v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 2e60a400 umaxp v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e60a41f umaxp v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e60a7e0 umaxp v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 2e7fa400 umaxp v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 2ea0a400 umaxp v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea0a41f umaxp v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea0a7e0 umaxp v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 2ebfa400 umaxp v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 6e20a400 umaxp v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e20a41f umaxp v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e20a7e0 umaxp v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 6e3fa400 umaxp v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 6e60a400 umaxp v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e60a41f umaxp v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e60a7e0 umaxp v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 6e7fa400 umaxp v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 6ea0a400 umaxp v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea0a41f umaxp v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea0a7e0 umaxp v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 6ebfa400 umaxp v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 2e20ac00 uminp v0\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e20ac1f uminp v31\.8b, v0\.8b, v0\.8b + *[0-9a-f]+: 2e20afe0 uminp v0\.8b, v31\.8b, v0\.8b + *[0-9a-f]+: 2e3fac00 uminp v0\.8b, v0\.8b, v31\.8b + *[0-9a-f]+: 2e60ac00 uminp v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e60ac1f uminp v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e60afe0 uminp v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 2e7fac00 uminp v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 2ea0ac00 uminp v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea0ac1f uminp v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea0afe0 uminp v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 2ebfac00 uminp v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 6e20ac00 uminp v0\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e20ac1f uminp v31\.16b, v0\.16b, v0\.16b + *[0-9a-f]+: 6e20afe0 uminp v0\.16b, v31\.16b, v0\.16b + *[0-9a-f]+: 6e3fac00 uminp v0\.16b, v0\.16b, v31\.16b + *[0-9a-f]+: 6e60ac00 uminp v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e60ac1f uminp v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e60afe0 uminp v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 6e7fac00 uminp v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 6ea0ac00 uminp v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea0ac1f uminp v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea0afe0 uminp v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 6ebfac00 uminp v0\.4s, v0\.4s, v31\.4s + *[0-9a-f]+: 2e60b400 sqrdmulh v0\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e60b41f sqrdmulh v31\.4h, v0\.4h, v0\.4h + *[0-9a-f]+: 2e60b7e0 sqrdmulh v0\.4h, v31\.4h, v0\.4h + *[0-9a-f]+: 2e7fb400 sqrdmulh v0\.4h, v0\.4h, v31\.4h + *[0-9a-f]+: 2ea0b400 sqrdmulh v0\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea0b41f sqrdmulh v31\.2s, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea0b7e0 sqrdmulh v0\.2s, v31\.2s, v0\.2s + *[0-9a-f]+: 2ebfb400 sqrdmulh v0\.2s, v0\.2s, v31\.2s + *[0-9a-f]+: 6e60b400 sqrdmulh v0\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e60b41f sqrdmulh v31\.8h, v0\.8h, v0\.8h + *[0-9a-f]+: 6e60b7e0 sqrdmulh v0\.8h, v31\.8h, v0\.8h + *[0-9a-f]+: 6e7fb400 sqrdmulh v0\.8h, v0\.8h, v31\.8h + *[0-9a-f]+: 6ea0b400 sqrdmulh v0\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea0b41f sqrdmulh v31\.4s, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea0b7e0 sqrdmulh v0\.4s, v31\.4s, v0\.4s + *[0-9a-f]+: 6ebfb400 sqrdmulh v0\.4s, v0\.4s, v31\.4s diff --git a/gas/testsuite/gas/aarch64/advsimd-three-same.s b/gas/testsuite/gas/aarch64/advsimd-three-same.s new file mode 100644 index 0000000..1a01fc0 --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsimd-three-same.s @@ -0,0 +1,1248 @@ + shadd v0.8b, v0.8b, v0.8b + shadd v31.8b, v0.8b, v0.8b + shadd v0.8b, v31.8b, v0.8b + shadd v0.8b, v0.8b, v31.8b + shadd v0.4h, v0.4h, v0.4h + shadd v31.4h, v0.4h, v0.4h + shadd v0.4h, v31.4h, v0.4h + shadd v0.4h, v0.4h, v31.4h + shadd v0.2s, v0.2s, v0.2s + shadd v31.2s, v0.2s, v0.2s + shadd v0.2s, v31.2s, v0.2s + shadd v0.2s, v0.2s, v31.2s + shadd v0.16b, v0.16b, v0.16b + shadd v31.16b, v0.16b, v0.16b + shadd v0.16b, v31.16b, v0.16b + shadd v0.16b, v0.16b, v31.16b + shadd v0.8h, v0.8h, v0.8h + shadd v31.8h, v0.8h, v0.8h + shadd v0.8h, v31.8h, v0.8h + shadd v0.8h, v0.8h, v31.8h + shadd v0.4s, v0.4s, v0.4s + shadd v31.4s, v0.4s, v0.4s + shadd v0.4s, v31.4s, v0.4s + shadd v0.4s, v0.4s, v31.4s + + sqadd v0.8b, v0.8b, v0.8b + sqadd v31.8b, v0.8b, v0.8b + sqadd v0.8b, v31.8b, v0.8b + sqadd v0.8b, v0.8b, v31.8b + sqadd v0.4h, v0.4h, v0.4h + sqadd v31.4h, v0.4h, v0.4h + sqadd v0.4h, v31.4h, v0.4h + sqadd v0.4h, v0.4h, v31.4h + sqadd v0.2s, v0.2s, v0.2s + sqadd v31.2s, v0.2s, v0.2s + sqadd v0.2s, v31.2s, v0.2s + sqadd v0.2s, v0.2s, v31.2s + sqadd v0.16b, v0.16b, v0.16b + sqadd v31.16b, v0.16b, v0.16b + sqadd v0.16b, v31.16b, v0.16b + sqadd v0.16b, v0.16b, v31.16b + sqadd v0.8h, v0.8h, v0.8h + sqadd v31.8h, v0.8h, v0.8h + sqadd v0.8h, v31.8h, v0.8h + sqadd v0.8h, v0.8h, v31.8h + sqadd v0.4s, v0.4s, v0.4s + sqadd v31.4s, v0.4s, v0.4s + sqadd v0.4s, v31.4s, v0.4s + sqadd v0.4s, v0.4s, v31.4s + sqadd v0.2d, v0.2d, v0.2d + sqadd v31.2d, v0.2d, v0.2d + sqadd v0.2d, v31.2d, v0.2d + sqadd v0.2d, v0.2d, v31.2d + + srhadd v0.8b, v0.8b, v0.8b + srhadd v31.8b, v0.8b, v0.8b + srhadd v0.8b, v31.8b, v0.8b + srhadd v0.8b, v0.8b, v31.8b + srhadd v0.4h, v0.4h, v0.4h + srhadd v31.4h, v0.4h, v0.4h + srhadd v0.4h, v31.4h, v0.4h + srhadd v0.4h, v0.4h, v31.4h + srhadd v0.2s, v0.2s, v0.2s + srhadd v31.2s, v0.2s, v0.2s + srhadd v0.2s, v31.2s, v0.2s + srhadd v0.2s, v0.2s, v31.2s + srhadd v0.16b, v0.16b, v0.16b + srhadd v31.16b, v0.16b, v0.16b + srhadd v0.16b, v31.16b, v0.16b + srhadd v0.16b, v0.16b, v31.16b + srhadd v0.8h, v0.8h, v0.8h + srhadd v31.8h, v0.8h, v0.8h + srhadd v0.8h, v31.8h, v0.8h + srhadd v0.8h, v0.8h, v31.8h + srhadd v0.4s, v0.4s, v0.4s + srhadd v31.4s, v0.4s, v0.4s + srhadd v0.4s, v31.4s, v0.4s + srhadd v0.4s, v0.4s, v31.4s + + and v0.8b, v0.8b, v0.8b + and v31.8b, v0.8b, v0.8b + and v0.8b, v31.8b, v0.8b + and v0.8b, v0.8b, v31.8b + and v0.16b, v0.16b, v0.16b + and v31.16b, v0.16b, v0.16b + and v0.16b, v31.16b, v0.16b + and v0.16b, v0.16b, v31.16b + + bic v0.8b, v0.8b, v0.8b + bic v31.8b, v0.8b, v0.8b + bic v0.8b, v31.8b, v0.8b + bic v0.8b, v0.8b, v31.8b + bic v0.16b, v0.16b, v0.16b + bic v31.16b, v0.16b, v0.16b + bic v0.16b, v31.16b, v0.16b + bic v0.16b, v0.16b, v31.16b + + orr v0.8b, v0.8b, v0.8b + orr v31.8b, v0.8b, v0.8b + orr v0.8b, v31.8b, v0.8b + orr v0.8b, v0.8b, v31.8b + orr v0.16b, v0.16b, v0.16b + orr v31.16b, v0.16b, v0.16b + orr v0.16b, v31.16b, v0.16b + orr v0.16b, v0.16b, v31.16b + + orn v0.8b, v0.8b, v0.8b + orn v31.8b, v0.8b, v0.8b + orn v0.8b, v31.8b, v0.8b + orn v0.8b, v0.8b, v31.8b + orn v0.16b, v0.16b, v0.16b + orn v31.16b, v0.16b, v0.16b + orn v0.16b, v31.16b, v0.16b + orn v0.16b, v0.16b, v31.16b + + shsub v0.8b, v0.8b, v0.8b + shsub v31.8b, v0.8b, v0.8b + shsub v0.8b, v31.8b, v0.8b + shsub v0.8b, v0.8b, v31.8b + shsub v0.4h, v0.4h, v0.4h + shsub v31.4h, v0.4h, v0.4h + shsub v0.4h, v31.4h, v0.4h + shsub v0.4h, v0.4h, v31.4h + shsub v0.2s, v0.2s, v0.2s + shsub v31.2s, v0.2s, v0.2s + shsub v0.2s, v31.2s, v0.2s + shsub v0.2s, v0.2s, v31.2s + shsub v0.16b, v0.16b, v0.16b + shsub v31.16b, v0.16b, v0.16b + shsub v0.16b, v31.16b, v0.16b + shsub v0.16b, v0.16b, v31.16b + shsub v0.8h, v0.8h, v0.8h + shsub v31.8h, v0.8h, v0.8h + shsub v0.8h, v31.8h, v0.8h + shsub v0.8h, v0.8h, v31.8h + shsub v0.4s, v0.4s, v0.4s + shsub v31.4s, v0.4s, v0.4s + shsub v0.4s, v31.4s, v0.4s + shsub v0.4s, v0.4s, v31.4s + + sqsub v0.8b, v0.8b, v0.8b + sqsub v31.8b, v0.8b, v0.8b + sqsub v0.8b, v31.8b, v0.8b + sqsub v0.8b, v0.8b, v31.8b + sqsub v0.4h, v0.4h, v0.4h + sqsub v31.4h, v0.4h, v0.4h + sqsub v0.4h, v31.4h, v0.4h + sqsub v0.4h, v0.4h, v31.4h + sqsub v0.2s, v0.2s, v0.2s + sqsub v31.2s, v0.2s, v0.2s + sqsub v0.2s, v31.2s, v0.2s + sqsub v0.2s, v0.2s, v31.2s + sqsub v0.16b, v0.16b, v0.16b + sqsub v31.16b, v0.16b, v0.16b + sqsub v0.16b, v31.16b, v0.16b + sqsub v0.16b, v0.16b, v31.16b + sqsub v0.8h, v0.8h, v0.8h + sqsub v31.8h, v0.8h, v0.8h + sqsub v0.8h, v31.8h, v0.8h + sqsub v0.8h, v0.8h, v31.8h + sqsub v0.4s, v0.4s, v0.4s + sqsub v31.4s, v0.4s, v0.4s + sqsub v0.4s, v31.4s, v0.4s + sqsub v0.4s, v0.4s, v31.4s + sqsub v0.2d, v0.2d, v0.2d + sqsub v31.2d, v0.2d, v0.2d + sqsub v0.2d, v31.2d, v0.2d + sqsub v0.2d, v0.2d, v31.2d + + cmgt v0.8b, v0.8b, v0.8b + cmgt v31.8b, v0.8b, v0.8b + cmgt v0.8b, v31.8b, v0.8b + cmgt v0.8b, v0.8b, v31.8b + cmgt v0.4h, v0.4h, v0.4h + cmgt v31.4h, v0.4h, v0.4h + cmgt v0.4h, v31.4h, v0.4h + cmgt v0.4h, v0.4h, v31.4h + cmgt v0.2s, v0.2s, v0.2s + cmgt v31.2s, v0.2s, v0.2s + cmgt v0.2s, v31.2s, v0.2s + cmgt v0.2s, v0.2s, v31.2s + cmgt v0.16b, v0.16b, v0.16b + cmgt v31.16b, v0.16b, v0.16b + cmgt v0.16b, v31.16b, v0.16b + cmgt v0.16b, v0.16b, v31.16b + cmgt v0.8h, v0.8h, v0.8h + cmgt v31.8h, v0.8h, v0.8h + cmgt v0.8h, v31.8h, v0.8h + cmgt v0.8h, v0.8h, v31.8h + cmgt v0.4s, v0.4s, v0.4s + cmgt v31.4s, v0.4s, v0.4s + cmgt v0.4s, v31.4s, v0.4s + cmgt v0.4s, v0.4s, v31.4s + cmgt v0.2d, v0.2d, v0.2d + cmgt v31.2d, v0.2d, v0.2d + cmgt v0.2d, v31.2d, v0.2d + cmgt v0.2d, v0.2d, v31.2d + + cmge v0.8b, v0.8b, v0.8b + cmge v31.8b, v0.8b, v0.8b + cmge v0.8b, v31.8b, v0.8b + cmge v0.8b, v0.8b, v31.8b + cmge v0.4h, v0.4h, v0.4h + cmge v31.4h, v0.4h, v0.4h + cmge v0.4h, v31.4h, v0.4h + cmge v0.4h, v0.4h, v31.4h + cmge v0.2s, v0.2s, v0.2s + cmge v31.2s, v0.2s, v0.2s + cmge v0.2s, v31.2s, v0.2s + cmge v0.2s, v0.2s, v31.2s + cmge v0.16b, v0.16b, v0.16b + cmge v31.16b, v0.16b, v0.16b + cmge v0.16b, v31.16b, v0.16b + cmge v0.16b, v0.16b, v31.16b + cmge v0.8h, v0.8h, v0.8h + cmge v31.8h, v0.8h, v0.8h + cmge v0.8h, v31.8h, v0.8h + cmge v0.8h, v0.8h, v31.8h + cmge v0.4s, v0.4s, v0.4s + cmge v31.4s, v0.4s, v0.4s + cmge v0.4s, v31.4s, v0.4s + cmge v0.4s, v0.4s, v31.4s + cmge v0.2d, v0.2d, v0.2d + cmge v31.2d, v0.2d, v0.2d + cmge v0.2d, v31.2d, v0.2d + cmge v0.2d, v0.2d, v31.2d + + sshl v0.8b, v0.8b, v0.8b + sshl v31.8b, v0.8b, v0.8b + sshl v0.8b, v31.8b, v0.8b + sshl v0.8b, v0.8b, v31.8b + sshl v0.4h, v0.4h, v0.4h + sshl v31.4h, v0.4h, v0.4h + sshl v0.4h, v31.4h, v0.4h + sshl v0.4h, v0.4h, v31.4h + sshl v0.2s, v0.2s, v0.2s + sshl v31.2s, v0.2s, v0.2s + sshl v0.2s, v31.2s, v0.2s + sshl v0.2s, v0.2s, v31.2s + sshl v0.16b, v0.16b, v0.16b + sshl v31.16b, v0.16b, v0.16b + sshl v0.16b, v31.16b, v0.16b + sshl v0.16b, v0.16b, v31.16b + sshl v0.8h, v0.8h, v0.8h + sshl v31.8h, v0.8h, v0.8h + sshl v0.8h, v31.8h, v0.8h + sshl v0.8h, v0.8h, v31.8h + sshl v0.4s, v0.4s, v0.4s + sshl v31.4s, v0.4s, v0.4s + sshl v0.4s, v31.4s, v0.4s + sshl v0.4s, v0.4s, v31.4s + sshl v0.2d, v0.2d, v0.2d + sshl v31.2d, v0.2d, v0.2d + sshl v0.2d, v31.2d, v0.2d + sshl v0.2d, v0.2d, v31.2d + + sqshl v0.8b, v0.8b, v0.8b + sqshl v31.8b, v0.8b, v0.8b + sqshl v0.8b, v31.8b, v0.8b + sqshl v0.8b, v0.8b, v31.8b + sqshl v0.4h, v0.4h, v0.4h + sqshl v31.4h, v0.4h, v0.4h + sqshl v0.4h, v31.4h, v0.4h + sqshl v0.4h, v0.4h, v31.4h + sqshl v0.2s, v0.2s, v0.2s + sqshl v31.2s, v0.2s, v0.2s + sqshl v0.2s, v31.2s, v0.2s + sqshl v0.2s, v0.2s, v31.2s + sqshl v0.16b, v0.16b, v0.16b + sqshl v31.16b, v0.16b, v0.16b + sqshl v0.16b, v31.16b, v0.16b + sqshl v0.16b, v0.16b, v31.16b + sqshl v0.8h, v0.8h, v0.8h + sqshl v31.8h, v0.8h, v0.8h + sqshl v0.8h, v31.8h, v0.8h + sqshl v0.8h, v0.8h, v31.8h + sqshl v0.4s, v0.4s, v0.4s + sqshl v31.4s, v0.4s, v0.4s + sqshl v0.4s, v31.4s, v0.4s + sqshl v0.4s, v0.4s, v31.4s + sqshl v0.2d, v0.2d, v0.2d + sqshl v31.2d, v0.2d, v0.2d + sqshl v0.2d, v31.2d, v0.2d + sqshl v0.2d, v0.2d, v31.2d + + srshl v0.8b, v0.8b, v0.8b + srshl v31.8b, v0.8b, v0.8b + srshl v0.8b, v31.8b, v0.8b + srshl v0.8b, v0.8b, v31.8b + srshl v0.4h, v0.4h, v0.4h + srshl v31.4h, v0.4h, v0.4h + srshl v0.4h, v31.4h, v0.4h + srshl v0.4h, v0.4h, v31.4h + srshl v0.2s, v0.2s, v0.2s + srshl v31.2s, v0.2s, v0.2s + srshl v0.2s, v31.2s, v0.2s + srshl v0.2s, v0.2s, v31.2s + srshl v0.16b, v0.16b, v0.16b + srshl v31.16b, v0.16b, v0.16b + srshl v0.16b, v31.16b, v0.16b + srshl v0.16b, v0.16b, v31.16b + srshl v0.8h, v0.8h, v0.8h + srshl v31.8h, v0.8h, v0.8h + srshl v0.8h, v31.8h, v0.8h + srshl v0.8h, v0.8h, v31.8h + srshl v0.4s, v0.4s, v0.4s + srshl v31.4s, v0.4s, v0.4s + srshl v0.4s, v31.4s, v0.4s + srshl v0.4s, v0.4s, v31.4s + srshl v0.2d, v0.2d, v0.2d + srshl v31.2d, v0.2d, v0.2d + srshl v0.2d, v31.2d, v0.2d + srshl v0.2d, v0.2d, v31.2d + + sqrshl v0.8b, v0.8b, v0.8b + sqrshl v31.8b, v0.8b, v0.8b + sqrshl v0.8b, v31.8b, v0.8b + sqrshl v0.8b, v0.8b, v31.8b + sqrshl v0.4h, v0.4h, v0.4h + sqrshl v31.4h, v0.4h, v0.4h + sqrshl v0.4h, v31.4h, v0.4h + sqrshl v0.4h, v0.4h, v31.4h + sqrshl v0.2s, v0.2s, v0.2s + sqrshl v31.2s, v0.2s, v0.2s + sqrshl v0.2s, v31.2s, v0.2s + sqrshl v0.2s, v0.2s, v31.2s + sqrshl v0.16b, v0.16b, v0.16b + sqrshl v31.16b, v0.16b, v0.16b + sqrshl v0.16b, v31.16b, v0.16b + sqrshl v0.16b, v0.16b, v31.16b + sqrshl v0.8h, v0.8h, v0.8h + sqrshl v31.8h, v0.8h, v0.8h + sqrshl v0.8h, v31.8h, v0.8h + sqrshl v0.8h, v0.8h, v31.8h + sqrshl v0.4s, v0.4s, v0.4s + sqrshl v31.4s, v0.4s, v0.4s + sqrshl v0.4s, v31.4s, v0.4s + sqrshl v0.4s, v0.4s, v31.4s + sqrshl v0.2d, v0.2d, v0.2d + sqrshl v31.2d, v0.2d, v0.2d + sqrshl v0.2d, v31.2d, v0.2d + sqrshl v0.2d, v0.2d, v31.2d + + smax v0.8b, v0.8b, v0.8b + smax v31.8b, v0.8b, v0.8b + smax v0.8b, v31.8b, v0.8b + smax v0.8b, v0.8b, v31.8b + smax v0.4h, v0.4h, v0.4h + smax v31.4h, v0.4h, v0.4h + smax v0.4h, v31.4h, v0.4h + smax v0.4h, v0.4h, v31.4h + smax v0.2s, v0.2s, v0.2s + smax v31.2s, v0.2s, v0.2s + smax v0.2s, v31.2s, v0.2s + smax v0.2s, v0.2s, v31.2s + smax v0.16b, v0.16b, v0.16b + smax v31.16b, v0.16b, v0.16b + smax v0.16b, v31.16b, v0.16b + smax v0.16b, v0.16b, v31.16b + smax v0.8h, v0.8h, v0.8h + smax v31.8h, v0.8h, v0.8h + smax v0.8h, v31.8h, v0.8h + smax v0.8h, v0.8h, v31.8h + smax v0.4s, v0.4s, v0.4s + smax v31.4s, v0.4s, v0.4s + smax v0.4s, v31.4s, v0.4s + smax v0.4s, v0.4s, v31.4s + + smin v0.8b, v0.8b, v0.8b + smin v31.8b, v0.8b, v0.8b + smin v0.8b, v31.8b, v0.8b + smin v0.8b, v0.8b, v31.8b + smin v0.4h, v0.4h, v0.4h + smin v31.4h, v0.4h, v0.4h + smin v0.4h, v31.4h, v0.4h + smin v0.4h, v0.4h, v31.4h + smin v0.2s, v0.2s, v0.2s + smin v31.2s, v0.2s, v0.2s + smin v0.2s, v31.2s, v0.2s + smin v0.2s, v0.2s, v31.2s + smin v0.16b, v0.16b, v0.16b + smin v31.16b, v0.16b, v0.16b + smin v0.16b, v31.16b, v0.16b + smin v0.16b, v0.16b, v31.16b + smin v0.8h, v0.8h, v0.8h + smin v31.8h, v0.8h, v0.8h + smin v0.8h, v31.8h, v0.8h + smin v0.8h, v0.8h, v31.8h + smin v0.4s, v0.4s, v0.4s + smin v31.4s, v0.4s, v0.4s + smin v0.4s, v31.4s, v0.4s + smin v0.4s, v0.4s, v31.4s + + sabd v0.8b, v0.8b, v0.8b + sabd v31.8b, v0.8b, v0.8b + sabd v0.8b, v31.8b, v0.8b + sabd v0.8b, v0.8b, v31.8b + sabd v0.4h, v0.4h, v0.4h + sabd v31.4h, v0.4h, v0.4h + sabd v0.4h, v31.4h, v0.4h + sabd v0.4h, v0.4h, v31.4h + sabd v0.2s, v0.2s, v0.2s + sabd v31.2s, v0.2s, v0.2s + sabd v0.2s, v31.2s, v0.2s + sabd v0.2s, v0.2s, v31.2s + sabd v0.16b, v0.16b, v0.16b + sabd v31.16b, v0.16b, v0.16b + sabd v0.16b, v31.16b, v0.16b + sabd v0.16b, v0.16b, v31.16b + sabd v0.8h, v0.8h, v0.8h + sabd v31.8h, v0.8h, v0.8h + sabd v0.8h, v31.8h, v0.8h + sabd v0.8h, v0.8h, v31.8h + sabd v0.4s, v0.4s, v0.4s + sabd v31.4s, v0.4s, v0.4s + sabd v0.4s, v31.4s, v0.4s + sabd v0.4s, v0.4s, v31.4s + + saba v0.8b, v0.8b, v0.8b + saba v31.8b, v0.8b, v0.8b + saba v0.8b, v31.8b, v0.8b + saba v0.8b, v0.8b, v31.8b + saba v0.4h, v0.4h, v0.4h + saba v31.4h, v0.4h, v0.4h + saba v0.4h, v31.4h, v0.4h + saba v0.4h, v0.4h, v31.4h + saba v0.2s, v0.2s, v0.2s + saba v31.2s, v0.2s, v0.2s + saba v0.2s, v31.2s, v0.2s + saba v0.2s, v0.2s, v31.2s + saba v0.16b, v0.16b, v0.16b + saba v31.16b, v0.16b, v0.16b + saba v0.16b, v31.16b, v0.16b + saba v0.16b, v0.16b, v31.16b + saba v0.8h, v0.8h, v0.8h + saba v31.8h, v0.8h, v0.8h + saba v0.8h, v31.8h, v0.8h + saba v0.8h, v0.8h, v31.8h + saba v0.4s, v0.4s, v0.4s + saba v31.4s, v0.4s, v0.4s + saba v0.4s, v31.4s, v0.4s + saba v0.4s, v0.4s, v31.4s + + add v0.8b, v0.8b, v0.8b + add v31.8b, v0.8b, v0.8b + add v0.8b, v31.8b, v0.8b + add v0.8b, v0.8b, v31.8b + add v0.4h, v0.4h, v0.4h + add v31.4h, v0.4h, v0.4h + add v0.4h, v31.4h, v0.4h + add v0.4h, v0.4h, v31.4h + add v0.2s, v0.2s, v0.2s + add v31.2s, v0.2s, v0.2s + add v0.2s, v31.2s, v0.2s + add v0.2s, v0.2s, v31.2s + add v0.16b, v0.16b, v0.16b + add v31.16b, v0.16b, v0.16b + add v0.16b, v31.16b, v0.16b + add v0.16b, v0.16b, v31.16b + add v0.8h, v0.8h, v0.8h + add v31.8h, v0.8h, v0.8h + add v0.8h, v31.8h, v0.8h + add v0.8h, v0.8h, v31.8h + add v0.4s, v0.4s, v0.4s + add v31.4s, v0.4s, v0.4s + add v0.4s, v31.4s, v0.4s + add v0.4s, v0.4s, v31.4s + add v0.2d, v0.2d, v0.2d + add v31.2d, v0.2d, v0.2d + add v0.2d, v31.2d, v0.2d + add v0.2d, v0.2d, v31.2d + + cmtst v0.8b, v0.8b, v0.8b + cmtst v31.8b, v0.8b, v0.8b + cmtst v0.8b, v31.8b, v0.8b + cmtst v0.8b, v0.8b, v31.8b + cmtst v0.4h, v0.4h, v0.4h + cmtst v31.4h, v0.4h, v0.4h + cmtst v0.4h, v31.4h, v0.4h + cmtst v0.4h, v0.4h, v31.4h + cmtst v0.2s, v0.2s, v0.2s + cmtst v31.2s, v0.2s, v0.2s + cmtst v0.2s, v31.2s, v0.2s + cmtst v0.2s, v0.2s, v31.2s + cmtst v0.16b, v0.16b, v0.16b + cmtst v31.16b, v0.16b, v0.16b + cmtst v0.16b, v31.16b, v0.16b + cmtst v0.16b, v0.16b, v31.16b + cmtst v0.8h, v0.8h, v0.8h + cmtst v31.8h, v0.8h, v0.8h + cmtst v0.8h, v31.8h, v0.8h + cmtst v0.8h, v0.8h, v31.8h + cmtst v0.4s, v0.4s, v0.4s + cmtst v31.4s, v0.4s, v0.4s + cmtst v0.4s, v31.4s, v0.4s + cmtst v0.4s, v0.4s, v31.4s + cmtst v0.2d, v0.2d, v0.2d + cmtst v31.2d, v0.2d, v0.2d + cmtst v0.2d, v31.2d, v0.2d + cmtst v0.2d, v0.2d, v31.2d + + mla v0.8b, v0.8b, v0.8b + mla v31.8b, v0.8b, v0.8b + mla v0.8b, v31.8b, v0.8b + mla v0.8b, v0.8b, v31.8b + mla v0.4h, v0.4h, v0.4h + mla v31.4h, v0.4h, v0.4h + mla v0.4h, v31.4h, v0.4h + mla v0.4h, v0.4h, v31.4h + mla v0.2s, v0.2s, v0.2s + mla v31.2s, v0.2s, v0.2s + mla v0.2s, v31.2s, v0.2s + mla v0.2s, v0.2s, v31.2s + mla v0.16b, v0.16b, v0.16b + mla v31.16b, v0.16b, v0.16b + mla v0.16b, v31.16b, v0.16b + mla v0.16b, v0.16b, v31.16b + mla v0.8h, v0.8h, v0.8h + mla v31.8h, v0.8h, v0.8h + mla v0.8h, v31.8h, v0.8h + mla v0.8h, v0.8h, v31.8h + mla v0.4s, v0.4s, v0.4s + mla v31.4s, v0.4s, v0.4s + mla v0.4s, v31.4s, v0.4s + mla v0.4s, v0.4s, v31.4s + + mul v0.8b, v0.8b, v0.8b + mul v31.8b, v0.8b, v0.8b + mul v0.8b, v31.8b, v0.8b + mul v0.8b, v0.8b, v31.8b + mul v0.4h, v0.4h, v0.4h + mul v31.4h, v0.4h, v0.4h + mul v0.4h, v31.4h, v0.4h + mul v0.4h, v0.4h, v31.4h + mul v0.2s, v0.2s, v0.2s + mul v31.2s, v0.2s, v0.2s + mul v0.2s, v31.2s, v0.2s + mul v0.2s, v0.2s, v31.2s + mul v0.16b, v0.16b, v0.16b + mul v31.16b, v0.16b, v0.16b + mul v0.16b, v31.16b, v0.16b + mul v0.16b, v0.16b, v31.16b + mul v0.8h, v0.8h, v0.8h + mul v31.8h, v0.8h, v0.8h + mul v0.8h, v31.8h, v0.8h + mul v0.8h, v0.8h, v31.8h + mul v0.4s, v0.4s, v0.4s + mul v31.4s, v0.4s, v0.4s + mul v0.4s, v31.4s, v0.4s + mul v0.4s, v0.4s, v31.4s + + smaxp v0.8b, v0.8b, v0.8b + smaxp v31.8b, v0.8b, v0.8b + smaxp v0.8b, v31.8b, v0.8b + smaxp v0.8b, v0.8b, v31.8b + smaxp v0.4h, v0.4h, v0.4h + smaxp v31.4h, v0.4h, v0.4h + smaxp v0.4h, v31.4h, v0.4h + smaxp v0.4h, v0.4h, v31.4h + smaxp v0.2s, v0.2s, v0.2s + smaxp v31.2s, v0.2s, v0.2s + smaxp v0.2s, v31.2s, v0.2s + smaxp v0.2s, v0.2s, v31.2s + smaxp v0.16b, v0.16b, v0.16b + smaxp v31.16b, v0.16b, v0.16b + smaxp v0.16b, v31.16b, v0.16b + smaxp v0.16b, v0.16b, v31.16b + smaxp v0.8h, v0.8h, v0.8h + smaxp v31.8h, v0.8h, v0.8h + smaxp v0.8h, v31.8h, v0.8h + smaxp v0.8h, v0.8h, v31.8h + smaxp v0.4s, v0.4s, v0.4s + smaxp v31.4s, v0.4s, v0.4s + smaxp v0.4s, v31.4s, v0.4s + smaxp v0.4s, v0.4s, v31.4s + + sminp v0.8b, v0.8b, v0.8b + sminp v31.8b, v0.8b, v0.8b + sminp v0.8b, v31.8b, v0.8b + sminp v0.8b, v0.8b, v31.8b + sminp v0.4h, v0.4h, v0.4h + sminp v31.4h, v0.4h, v0.4h + sminp v0.4h, v31.4h, v0.4h + sminp v0.4h, v0.4h, v31.4h + sminp v0.2s, v0.2s, v0.2s + sminp v31.2s, v0.2s, v0.2s + sminp v0.2s, v31.2s, v0.2s + sminp v0.2s, v0.2s, v31.2s + sminp v0.16b, v0.16b, v0.16b + sminp v31.16b, v0.16b, v0.16b + sminp v0.16b, v31.16b, v0.16b + sminp v0.16b, v0.16b, v31.16b + sminp v0.8h, v0.8h, v0.8h + sminp v31.8h, v0.8h, v0.8h + sminp v0.8h, v31.8h, v0.8h + sminp v0.8h, v0.8h, v31.8h + sminp v0.4s, v0.4s, v0.4s + sminp v31.4s, v0.4s, v0.4s + sminp v0.4s, v31.4s, v0.4s + sminp v0.4s, v0.4s, v31.4s + + sqdmulh v0.4h, v0.4h, v0.4h + sqdmulh v31.4h, v0.4h, v0.4h + sqdmulh v0.4h, v31.4h, v0.4h + sqdmulh v0.4h, v0.4h, v31.4h + sqdmulh v0.2s, v0.2s, v0.2s + sqdmulh v31.2s, v0.2s, v0.2s + sqdmulh v0.2s, v31.2s, v0.2s + sqdmulh v0.2s, v0.2s, v31.2s + sqdmulh v0.8h, v0.8h, v0.8h + sqdmulh v31.8h, v0.8h, v0.8h + sqdmulh v0.8h, v31.8h, v0.8h + sqdmulh v0.8h, v0.8h, v31.8h + sqdmulh v0.4s, v0.4s, v0.4s + sqdmulh v31.4s, v0.4s, v0.4s + sqdmulh v0.4s, v31.4s, v0.4s + sqdmulh v0.4s, v0.4s, v31.4s + + addp v0.8b, v0.8b, v0.8b + addp v31.8b, v0.8b, v0.8b + addp v0.8b, v31.8b, v0.8b + addp v0.8b, v0.8b, v31.8b + addp v0.4h, v0.4h, v0.4h + addp v31.4h, v0.4h, v0.4h + addp v0.4h, v31.4h, v0.4h + addp v0.4h, v0.4h, v31.4h + addp v0.2s, v0.2s, v0.2s + addp v31.2s, v0.2s, v0.2s + addp v0.2s, v31.2s, v0.2s + addp v0.2s, v0.2s, v31.2s + addp v0.16b, v0.16b, v0.16b + addp v31.16b, v0.16b, v0.16b + addp v0.16b, v31.16b, v0.16b + addp v0.16b, v0.16b, v31.16b + addp v0.8h, v0.8h, v0.8h + addp v31.8h, v0.8h, v0.8h + addp v0.8h, v31.8h, v0.8h + addp v0.8h, v0.8h, v31.8h + addp v0.4s, v0.4s, v0.4s + addp v31.4s, v0.4s, v0.4s + addp v0.4s, v31.4s, v0.4s + addp v0.4s, v0.4s, v31.4s + addp v0.2d, v0.2d, v0.2d + addp v31.2d, v0.2d, v0.2d + addp v0.2d, v31.2d, v0.2d + addp v0.2d, v0.2d, v31.2d + + uhadd v0.8b, v0.8b, v0.8b + uhadd v31.8b, v0.8b, v0.8b + uhadd v0.8b, v31.8b, v0.8b + uhadd v0.8b, v0.8b, v31.8b + uhadd v0.4h, v0.4h, v0.4h + uhadd v31.4h, v0.4h, v0.4h + uhadd v0.4h, v31.4h, v0.4h + uhadd v0.4h, v0.4h, v31.4h + uhadd v0.2s, v0.2s, v0.2s + uhadd v31.2s, v0.2s, v0.2s + uhadd v0.2s, v31.2s, v0.2s + uhadd v0.2s, v0.2s, v31.2s + uhadd v0.16b, v0.16b, v0.16b + uhadd v31.16b, v0.16b, v0.16b + uhadd v0.16b, v31.16b, v0.16b + uhadd v0.16b, v0.16b, v31.16b + uhadd v0.8h, v0.8h, v0.8h + uhadd v31.8h, v0.8h, v0.8h + uhadd v0.8h, v31.8h, v0.8h + uhadd v0.8h, v0.8h, v31.8h + uhadd v0.4s, v0.4s, v0.4s + uhadd v31.4s, v0.4s, v0.4s + uhadd v0.4s, v31.4s, v0.4s + uhadd v0.4s, v0.4s, v31.4s + + uqadd v0.8b, v0.8b, v0.8b + uqadd v31.8b, v0.8b, v0.8b + uqadd v0.8b, v31.8b, v0.8b + uqadd v0.8b, v0.8b, v31.8b + uqadd v0.4h, v0.4h, v0.4h + uqadd v31.4h, v0.4h, v0.4h + uqadd v0.4h, v31.4h, v0.4h + uqadd v0.4h, v0.4h, v31.4h + uqadd v0.2s, v0.2s, v0.2s + uqadd v31.2s, v0.2s, v0.2s + uqadd v0.2s, v31.2s, v0.2s + uqadd v0.2s, v0.2s, v31.2s + uqadd v0.16b, v0.16b, v0.16b + uqadd v31.16b, v0.16b, v0.16b + uqadd v0.16b, v31.16b, v0.16b + uqadd v0.16b, v0.16b, v31.16b + uqadd v0.8h, v0.8h, v0.8h + uqadd v31.8h, v0.8h, v0.8h + uqadd v0.8h, v31.8h, v0.8h + uqadd v0.8h, v0.8h, v31.8h + uqadd v0.4s, v0.4s, v0.4s + uqadd v31.4s, v0.4s, v0.4s + uqadd v0.4s, v31.4s, v0.4s + uqadd v0.4s, v0.4s, v31.4s + uqadd v0.2d, v0.2d, v0.2d + uqadd v31.2d, v0.2d, v0.2d + uqadd v0.2d, v31.2d, v0.2d + uqadd v0.2d, v0.2d, v31.2d + + urhadd v0.8b, v0.8b, v0.8b + urhadd v31.8b, v0.8b, v0.8b + urhadd v0.8b, v31.8b, v0.8b + urhadd v0.8b, v0.8b, v31.8b + urhadd v0.4h, v0.4h, v0.4h + urhadd v31.4h, v0.4h, v0.4h + urhadd v0.4h, v31.4h, v0.4h + urhadd v0.4h, v0.4h, v31.4h + urhadd v0.2s, v0.2s, v0.2s + urhadd v31.2s, v0.2s, v0.2s + urhadd v0.2s, v31.2s, v0.2s + urhadd v0.2s, v0.2s, v31.2s + urhadd v0.16b, v0.16b, v0.16b + urhadd v31.16b, v0.16b, v0.16b + urhadd v0.16b, v31.16b, v0.16b + urhadd v0.16b, v0.16b, v31.16b + urhadd v0.8h, v0.8h, v0.8h + urhadd v31.8h, v0.8h, v0.8h + urhadd v0.8h, v31.8h, v0.8h + urhadd v0.8h, v0.8h, v31.8h + urhadd v0.4s, v0.4s, v0.4s + urhadd v31.4s, v0.4s, v0.4s + urhadd v0.4s, v31.4s, v0.4s + urhadd v0.4s, v0.4s, v31.4s + + eor v0.8b, v0.8b, v0.8b + eor v31.8b, v0.8b, v0.8b + eor v0.8b, v31.8b, v0.8b + eor v0.8b, v0.8b, v31.8b + eor v0.16b, v0.16b, v0.16b + eor v31.16b, v0.16b, v0.16b + eor v0.16b, v31.16b, v0.16b + eor v0.16b, v0.16b, v31.16b + + bsl v0.8b, v0.8b, v0.8b + bsl v31.8b, v0.8b, v0.8b + bsl v0.8b, v31.8b, v0.8b + bsl v0.8b, v0.8b, v31.8b + bsl v0.16b, v0.16b, v0.16b + bsl v31.16b, v0.16b, v0.16b + bsl v0.16b, v31.16b, v0.16b + bsl v0.16b, v0.16b, v31.16b + + bit v0.8b, v0.8b, v0.8b + bit v31.8b, v0.8b, v0.8b + bit v0.8b, v31.8b, v0.8b + bit v0.8b, v0.8b, v31.8b + bit v0.16b, v0.16b, v0.16b + bit v31.16b, v0.16b, v0.16b + bit v0.16b, v31.16b, v0.16b + bit v0.16b, v0.16b, v31.16b + + bif v0.8b, v0.8b, v0.8b + bif v31.8b, v0.8b, v0.8b + bif v0.8b, v31.8b, v0.8b + bif v0.8b, v0.8b, v31.8b + bif v0.16b, v0.16b, v0.16b + bif v31.16b, v0.16b, v0.16b + bif v0.16b, v31.16b, v0.16b + bif v0.16b, v0.16b, v31.16b + + uhsub v0.8b, v0.8b, v0.8b + uhsub v31.8b, v0.8b, v0.8b + uhsub v0.8b, v31.8b, v0.8b + uhsub v0.8b, v0.8b, v31.8b + uhsub v0.4h, v0.4h, v0.4h + uhsub v31.4h, v0.4h, v0.4h + uhsub v0.4h, v31.4h, v0.4h + uhsub v0.4h, v0.4h, v31.4h + uhsub v0.2s, v0.2s, v0.2s + uhsub v31.2s, v0.2s, v0.2s + uhsub v0.2s, v31.2s, v0.2s + uhsub v0.2s, v0.2s, v31.2s + uhsub v0.16b, v0.16b, v0.16b + uhsub v31.16b, v0.16b, v0.16b + uhsub v0.16b, v31.16b, v0.16b + uhsub v0.16b, v0.16b, v31.16b + uhsub v0.8h, v0.8h, v0.8h + uhsub v31.8h, v0.8h, v0.8h + uhsub v0.8h, v31.8h, v0.8h + uhsub v0.8h, v0.8h, v31.8h + uhsub v0.4s, v0.4s, v0.4s + uhsub v31.4s, v0.4s, v0.4s + uhsub v0.4s, v31.4s, v0.4s + uhsub v0.4s, v0.4s, v31.4s + + uqsub v0.8b, v0.8b, v0.8b + uqsub v31.8b, v0.8b, v0.8b + uqsub v0.8b, v31.8b, v0.8b + uqsub v0.8b, v0.8b, v31.8b + uqsub v0.4h, v0.4h, v0.4h + uqsub v31.4h, v0.4h, v0.4h + uqsub v0.4h, v31.4h, v0.4h + uqsub v0.4h, v0.4h, v31.4h + uqsub v0.2s, v0.2s, v0.2s + uqsub v31.2s, v0.2s, v0.2s + uqsub v0.2s, v31.2s, v0.2s + uqsub v0.2s, v0.2s, v31.2s + uqsub v0.16b, v0.16b, v0.16b + uqsub v31.16b, v0.16b, v0.16b + uqsub v0.16b, v31.16b, v0.16b + uqsub v0.16b, v0.16b, v31.16b + uqsub v0.8h, v0.8h, v0.8h + uqsub v31.8h, v0.8h, v0.8h + uqsub v0.8h, v31.8h, v0.8h + uqsub v0.8h, v0.8h, v31.8h + uqsub v0.4s, v0.4s, v0.4s + uqsub v31.4s, v0.4s, v0.4s + uqsub v0.4s, v31.4s, v0.4s + uqsub v0.4s, v0.4s, v31.4s + uqsub v0.2d, v0.2d, v0.2d + uqsub v31.2d, v0.2d, v0.2d + uqsub v0.2d, v31.2d, v0.2d + uqsub v0.2d, v0.2d, v31.2d + + cmhi v0.8b, v0.8b, v0.8b + cmhi v31.8b, v0.8b, v0.8b + cmhi v0.8b, v31.8b, v0.8b + cmhi v0.8b, v0.8b, v31.8b + cmhi v0.4h, v0.4h, v0.4h + cmhi v31.4h, v0.4h, v0.4h + cmhi v0.4h, v31.4h, v0.4h + cmhi v0.4h, v0.4h, v31.4h + cmhi v0.2s, v0.2s, v0.2s + cmhi v31.2s, v0.2s, v0.2s + cmhi v0.2s, v31.2s, v0.2s + cmhi v0.2s, v0.2s, v31.2s + cmhi v0.16b, v0.16b, v0.16b + cmhi v31.16b, v0.16b, v0.16b + cmhi v0.16b, v31.16b, v0.16b + cmhi v0.16b, v0.16b, v31.16b + cmhi v0.8h, v0.8h, v0.8h + cmhi v31.8h, v0.8h, v0.8h + cmhi v0.8h, v31.8h, v0.8h + cmhi v0.8h, v0.8h, v31.8h + cmhi v0.4s, v0.4s, v0.4s + cmhi v31.4s, v0.4s, v0.4s + cmhi v0.4s, v31.4s, v0.4s + cmhi v0.4s, v0.4s, v31.4s + cmhi v0.2d, v0.2d, v0.2d + cmhi v31.2d, v0.2d, v0.2d + cmhi v0.2d, v31.2d, v0.2d + cmhi v0.2d, v0.2d, v31.2d + + cmhs v0.8b, v0.8b, v0.8b + cmhs v31.8b, v0.8b, v0.8b + cmhs v0.8b, v31.8b, v0.8b + cmhs v0.8b, v0.8b, v31.8b + cmhs v0.4h, v0.4h, v0.4h + cmhs v31.4h, v0.4h, v0.4h + cmhs v0.4h, v31.4h, v0.4h + cmhs v0.4h, v0.4h, v31.4h + cmhs v0.2s, v0.2s, v0.2s + cmhs v31.2s, v0.2s, v0.2s + cmhs v0.2s, v31.2s, v0.2s + cmhs v0.2s, v0.2s, v31.2s + cmhs v0.16b, v0.16b, v0.16b + cmhs v31.16b, v0.16b, v0.16b + cmhs v0.16b, v31.16b, v0.16b + cmhs v0.16b, v0.16b, v31.16b + cmhs v0.8h, v0.8h, v0.8h + cmhs v31.8h, v0.8h, v0.8h + cmhs v0.8h, v31.8h, v0.8h + cmhs v0.8h, v0.8h, v31.8h + cmhs v0.4s, v0.4s, v0.4s + cmhs v31.4s, v0.4s, v0.4s + cmhs v0.4s, v31.4s, v0.4s + cmhs v0.4s, v0.4s, v31.4s + cmhs v0.2d, v0.2d, v0.2d + cmhs v31.2d, v0.2d, v0.2d + cmhs v0.2d, v31.2d, v0.2d + cmhs v0.2d, v0.2d, v31.2d + + ushl v0.8b, v0.8b, v0.8b + ushl v31.8b, v0.8b, v0.8b + ushl v0.8b, v31.8b, v0.8b + ushl v0.8b, v0.8b, v31.8b + ushl v0.4h, v0.4h, v0.4h + ushl v31.4h, v0.4h, v0.4h + ushl v0.4h, v31.4h, v0.4h + ushl v0.4h, v0.4h, v31.4h + ushl v0.2s, v0.2s, v0.2s + ushl v31.2s, v0.2s, v0.2s + ushl v0.2s, v31.2s, v0.2s + ushl v0.2s, v0.2s, v31.2s + ushl v0.16b, v0.16b, v0.16b + ushl v31.16b, v0.16b, v0.16b + ushl v0.16b, v31.16b, v0.16b + ushl v0.16b, v0.16b, v31.16b + ushl v0.8h, v0.8h, v0.8h + ushl v31.8h, v0.8h, v0.8h + ushl v0.8h, v31.8h, v0.8h + ushl v0.8h, v0.8h, v31.8h + ushl v0.4s, v0.4s, v0.4s + ushl v31.4s, v0.4s, v0.4s + ushl v0.4s, v31.4s, v0.4s + ushl v0.4s, v0.4s, v31.4s + ushl v0.2d, v0.2d, v0.2d + ushl v31.2d, v0.2d, v0.2d + ushl v0.2d, v31.2d, v0.2d + ushl v0.2d, v0.2d, v31.2d + + uqshl v0.8b, v0.8b, v0.8b + uqshl v31.8b, v0.8b, v0.8b + uqshl v0.8b, v31.8b, v0.8b + uqshl v0.8b, v0.8b, v31.8b + uqshl v0.4h, v0.4h, v0.4h + uqshl v31.4h, v0.4h, v0.4h + uqshl v0.4h, v31.4h, v0.4h + uqshl v0.4h, v0.4h, v31.4h + uqshl v0.2s, v0.2s, v0.2s + uqshl v31.2s, v0.2s, v0.2s + uqshl v0.2s, v31.2s, v0.2s + uqshl v0.2s, v0.2s, v31.2s + uqshl v0.16b, v0.16b, v0.16b + uqshl v31.16b, v0.16b, v0.16b + uqshl v0.16b, v31.16b, v0.16b + uqshl v0.16b, v0.16b, v31.16b + uqshl v0.8h, v0.8h, v0.8h + uqshl v31.8h, v0.8h, v0.8h + uqshl v0.8h, v31.8h, v0.8h + uqshl v0.8h, v0.8h, v31.8h + uqshl v0.4s, v0.4s, v0.4s + uqshl v31.4s, v0.4s, v0.4s + uqshl v0.4s, v31.4s, v0.4s + uqshl v0.4s, v0.4s, v31.4s + uqshl v0.2d, v0.2d, v0.2d + uqshl v31.2d, v0.2d, v0.2d + uqshl v0.2d, v31.2d, v0.2d + uqshl v0.2d, v0.2d, v31.2d + + urshl v0.8b, v0.8b, v0.8b + urshl v31.8b, v0.8b, v0.8b + urshl v0.8b, v31.8b, v0.8b + urshl v0.8b, v0.8b, v31.8b + urshl v0.4h, v0.4h, v0.4h + urshl v31.4h, v0.4h, v0.4h + urshl v0.4h, v31.4h, v0.4h + urshl v0.4h, v0.4h, v31.4h + urshl v0.2s, v0.2s, v0.2s + urshl v31.2s, v0.2s, v0.2s + urshl v0.2s, v31.2s, v0.2s + urshl v0.2s, v0.2s, v31.2s + urshl v0.16b, v0.16b, v0.16b + urshl v31.16b, v0.16b, v0.16b + urshl v0.16b, v31.16b, v0.16b + urshl v0.16b, v0.16b, v31.16b + urshl v0.8h, v0.8h, v0.8h + urshl v31.8h, v0.8h, v0.8h + urshl v0.8h, v31.8h, v0.8h + urshl v0.8h, v0.8h, v31.8h + urshl v0.4s, v0.4s, v0.4s + urshl v31.4s, v0.4s, v0.4s + urshl v0.4s, v31.4s, v0.4s + urshl v0.4s, v0.4s, v31.4s + urshl v0.2d, v0.2d, v0.2d + urshl v31.2d, v0.2d, v0.2d + urshl v0.2d, v31.2d, v0.2d + urshl v0.2d, v0.2d, v31.2d + + uqrshl v0.8b, v0.8b, v0.8b + uqrshl v31.8b, v0.8b, v0.8b + uqrshl v0.8b, v31.8b, v0.8b + uqrshl v0.8b, v0.8b, v31.8b + uqrshl v0.4h, v0.4h, v0.4h + uqrshl v31.4h, v0.4h, v0.4h + uqrshl v0.4h, v31.4h, v0.4h + uqrshl v0.4h, v0.4h, v31.4h + uqrshl v0.2s, v0.2s, v0.2s + uqrshl v31.2s, v0.2s, v0.2s + uqrshl v0.2s, v31.2s, v0.2s + uqrshl v0.2s, v0.2s, v31.2s + uqrshl v0.16b, v0.16b, v0.16b + uqrshl v31.16b, v0.16b, v0.16b + uqrshl v0.16b, v31.16b, v0.16b + uqrshl v0.16b, v0.16b, v31.16b + uqrshl v0.8h, v0.8h, v0.8h + uqrshl v31.8h, v0.8h, v0.8h + uqrshl v0.8h, v31.8h, v0.8h + uqrshl v0.8h, v0.8h, v31.8h + uqrshl v0.4s, v0.4s, v0.4s + uqrshl v31.4s, v0.4s, v0.4s + uqrshl v0.4s, v31.4s, v0.4s + uqrshl v0.4s, v0.4s, v31.4s + uqrshl v0.2d, v0.2d, v0.2d + uqrshl v31.2d, v0.2d, v0.2d + uqrshl v0.2d, v31.2d, v0.2d + uqrshl v0.2d, v0.2d, v31.2d + + umax v0.8b, v0.8b, v0.8b + umax v31.8b, v0.8b, v0.8b + umax v0.8b, v31.8b, v0.8b + umax v0.8b, v0.8b, v31.8b + umax v0.4h, v0.4h, v0.4h + umax v31.4h, v0.4h, v0.4h + umax v0.4h, v31.4h, v0.4h + umax v0.4h, v0.4h, v31.4h + umax v0.2s, v0.2s, v0.2s + umax v31.2s, v0.2s, v0.2s + umax v0.2s, v31.2s, v0.2s + umax v0.2s, v0.2s, v31.2s + umax v0.16b, v0.16b, v0.16b + umax v31.16b, v0.16b, v0.16b + umax v0.16b, v31.16b, v0.16b + umax v0.16b, v0.16b, v31.16b + umax v0.8h, v0.8h, v0.8h + umax v31.8h, v0.8h, v0.8h + umax v0.8h, v31.8h, v0.8h + umax v0.8h, v0.8h, v31.8h + umax v0.4s, v0.4s, v0.4s + umax v31.4s, v0.4s, v0.4s + umax v0.4s, v31.4s, v0.4s + umax v0.4s, v0.4s, v31.4s + + umin v0.8b, v0.8b, v0.8b + umin v31.8b, v0.8b, v0.8b + umin v0.8b, v31.8b, v0.8b + umin v0.8b, v0.8b, v31.8b + umin v0.4h, v0.4h, v0.4h + umin v31.4h, v0.4h, v0.4h + umin v0.4h, v31.4h, v0.4h + umin v0.4h, v0.4h, v31.4h + umin v0.2s, v0.2s, v0.2s + umin v31.2s, v0.2s, v0.2s + umin v0.2s, v31.2s, v0.2s + umin v0.2s, v0.2s, v31.2s + umin v0.16b, v0.16b, v0.16b + umin v31.16b, v0.16b, v0.16b + umin v0.16b, v31.16b, v0.16b + umin v0.16b, v0.16b, v31.16b + umin v0.8h, v0.8h, v0.8h + umin v31.8h, v0.8h, v0.8h + umin v0.8h, v31.8h, v0.8h + umin v0.8h, v0.8h, v31.8h + umin v0.4s, v0.4s, v0.4s + umin v31.4s, v0.4s, v0.4s + umin v0.4s, v31.4s, v0.4s + umin v0.4s, v0.4s, v31.4s + + uabd v0.8b, v0.8b, v0.8b + uabd v31.8b, v0.8b, v0.8b + uabd v0.8b, v31.8b, v0.8b + uabd v0.8b, v0.8b, v31.8b + uabd v0.4h, v0.4h, v0.4h + uabd v31.4h, v0.4h, v0.4h + uabd v0.4h, v31.4h, v0.4h + uabd v0.4h, v0.4h, v31.4h + uabd v0.2s, v0.2s, v0.2s + uabd v31.2s, v0.2s, v0.2s + uabd v0.2s, v31.2s, v0.2s + uabd v0.2s, v0.2s, v31.2s + uabd v0.16b, v0.16b, v0.16b + uabd v31.16b, v0.16b, v0.16b + uabd v0.16b, v31.16b, v0.16b + uabd v0.16b, v0.16b, v31.16b + uabd v0.8h, v0.8h, v0.8h + uabd v31.8h, v0.8h, v0.8h + uabd v0.8h, v31.8h, v0.8h + uabd v0.8h, v0.8h, v31.8h + uabd v0.4s, v0.4s, v0.4s + uabd v31.4s, v0.4s, v0.4s + uabd v0.4s, v31.4s, v0.4s + uabd v0.4s, v0.4s, v31.4s + + uaba v0.8b, v0.8b, v0.8b + uaba v31.8b, v0.8b, v0.8b + uaba v0.8b, v31.8b, v0.8b + uaba v0.8b, v0.8b, v31.8b + uaba v0.4h, v0.4h, v0.4h + uaba v31.4h, v0.4h, v0.4h + uaba v0.4h, v31.4h, v0.4h + uaba v0.4h, v0.4h, v31.4h + uaba v0.2s, v0.2s, v0.2s + uaba v31.2s, v0.2s, v0.2s + uaba v0.2s, v31.2s, v0.2s + uaba v0.2s, v0.2s, v31.2s + uaba v0.16b, v0.16b, v0.16b + uaba v31.16b, v0.16b, v0.16b + uaba v0.16b, v31.16b, v0.16b + uaba v0.16b, v0.16b, v31.16b + uaba v0.8h, v0.8h, v0.8h + uaba v31.8h, v0.8h, v0.8h + uaba v0.8h, v31.8h, v0.8h + uaba v0.8h, v0.8h, v31.8h + uaba v0.4s, v0.4s, v0.4s + uaba v31.4s, v0.4s, v0.4s + uaba v0.4s, v31.4s, v0.4s + uaba v0.4s, v0.4s, v31.4s + + sub v0.8b, v0.8b, v0.8b + sub v31.8b, v0.8b, v0.8b + sub v0.8b, v31.8b, v0.8b + sub v0.8b, v0.8b, v31.8b + sub v0.4h, v0.4h, v0.4h + sub v31.4h, v0.4h, v0.4h + sub v0.4h, v31.4h, v0.4h + sub v0.4h, v0.4h, v31.4h + sub v0.2s, v0.2s, v0.2s + sub v31.2s, v0.2s, v0.2s + sub v0.2s, v31.2s, v0.2s + sub v0.2s, v0.2s, v31.2s + sub v0.16b, v0.16b, v0.16b + sub v31.16b, v0.16b, v0.16b + sub v0.16b, v31.16b, v0.16b + sub v0.16b, v0.16b, v31.16b + sub v0.8h, v0.8h, v0.8h + sub v31.8h, v0.8h, v0.8h + sub v0.8h, v31.8h, v0.8h + sub v0.8h, v0.8h, v31.8h + sub v0.4s, v0.4s, v0.4s + sub v31.4s, v0.4s, v0.4s + sub v0.4s, v31.4s, v0.4s + sub v0.4s, v0.4s, v31.4s + sub v0.2d, v0.2d, v0.2d + sub v31.2d, v0.2d, v0.2d + sub v0.2d, v31.2d, v0.2d + sub v0.2d, v0.2d, v31.2d + + cmeq v0.8b, v0.8b, v0.8b + cmeq v31.8b, v0.8b, v0.8b + cmeq v0.8b, v31.8b, v0.8b + cmeq v0.8b, v0.8b, v31.8b + cmeq v0.4h, v0.4h, v0.4h + cmeq v31.4h, v0.4h, v0.4h + cmeq v0.4h, v31.4h, v0.4h + cmeq v0.4h, v0.4h, v31.4h + cmeq v0.2s, v0.2s, v0.2s + cmeq v31.2s, v0.2s, v0.2s + cmeq v0.2s, v31.2s, v0.2s + cmeq v0.2s, v0.2s, v31.2s + cmeq v0.16b, v0.16b, v0.16b + cmeq v31.16b, v0.16b, v0.16b + cmeq v0.16b, v31.16b, v0.16b + cmeq v0.16b, v0.16b, v31.16b + cmeq v0.8h, v0.8h, v0.8h + cmeq v31.8h, v0.8h, v0.8h + cmeq v0.8h, v31.8h, v0.8h + cmeq v0.8h, v0.8h, v31.8h + cmeq v0.4s, v0.4s, v0.4s + cmeq v31.4s, v0.4s, v0.4s + cmeq v0.4s, v31.4s, v0.4s + cmeq v0.4s, v0.4s, v31.4s + cmeq v0.2d, v0.2d, v0.2d + cmeq v31.2d, v0.2d, v0.2d + cmeq v0.2d, v31.2d, v0.2d + cmeq v0.2d, v0.2d, v31.2d + + mls v0.8b, v0.8b, v0.8b + mls v31.8b, v0.8b, v0.8b + mls v0.8b, v31.8b, v0.8b + mls v0.8b, v0.8b, v31.8b + mls v0.4h, v0.4h, v0.4h + mls v31.4h, v0.4h, v0.4h + mls v0.4h, v31.4h, v0.4h + mls v0.4h, v0.4h, v31.4h + mls v0.2s, v0.2s, v0.2s + mls v31.2s, v0.2s, v0.2s + mls v0.2s, v31.2s, v0.2s + mls v0.2s, v0.2s, v31.2s + mls v0.16b, v0.16b, v0.16b + mls v31.16b, v0.16b, v0.16b + mls v0.16b, v31.16b, v0.16b + mls v0.16b, v0.16b, v31.16b + mls v0.8h, v0.8h, v0.8h + mls v31.8h, v0.8h, v0.8h + mls v0.8h, v31.8h, v0.8h + mls v0.8h, v0.8h, v31.8h + mls v0.4s, v0.4s, v0.4s + mls v31.4s, v0.4s, v0.4s + mls v0.4s, v31.4s, v0.4s + mls v0.4s, v0.4s, v31.4s + + pmul v0.8b, v0.8b, v0.8b + pmul v31.8b, v0.8b, v0.8b + pmul v0.8b, v31.8b, v0.8b + pmul v0.8b, v0.8b, v31.8b + pmul v0.16b, v0.16b, v0.16b + pmul v31.16b, v0.16b, v0.16b + pmul v0.16b, v31.16b, v0.16b + pmul v0.16b, v0.16b, v31.16b + + umaxp v0.8b, v0.8b, v0.8b + umaxp v31.8b, v0.8b, v0.8b + umaxp v0.8b, v31.8b, v0.8b + umaxp v0.8b, v0.8b, v31.8b + umaxp v0.4h, v0.4h, v0.4h + umaxp v31.4h, v0.4h, v0.4h + umaxp v0.4h, v31.4h, v0.4h + umaxp v0.4h, v0.4h, v31.4h + umaxp v0.2s, v0.2s, v0.2s + umaxp v31.2s, v0.2s, v0.2s + umaxp v0.2s, v31.2s, v0.2s + umaxp v0.2s, v0.2s, v31.2s + umaxp v0.16b, v0.16b, v0.16b + umaxp v31.16b, v0.16b, v0.16b + umaxp v0.16b, v31.16b, v0.16b + umaxp v0.16b, v0.16b, v31.16b + umaxp v0.8h, v0.8h, v0.8h + umaxp v31.8h, v0.8h, v0.8h + umaxp v0.8h, v31.8h, v0.8h + umaxp v0.8h, v0.8h, v31.8h + umaxp v0.4s, v0.4s, v0.4s + umaxp v31.4s, v0.4s, v0.4s + umaxp v0.4s, v31.4s, v0.4s + umaxp v0.4s, v0.4s, v31.4s + + uminp v0.8b, v0.8b, v0.8b + uminp v31.8b, v0.8b, v0.8b + uminp v0.8b, v31.8b, v0.8b + uminp v0.8b, v0.8b, v31.8b + uminp v0.4h, v0.4h, v0.4h + uminp v31.4h, v0.4h, v0.4h + uminp v0.4h, v31.4h, v0.4h + uminp v0.4h, v0.4h, v31.4h + uminp v0.2s, v0.2s, v0.2s + uminp v31.2s, v0.2s, v0.2s + uminp v0.2s, v31.2s, v0.2s + uminp v0.2s, v0.2s, v31.2s + uminp v0.16b, v0.16b, v0.16b + uminp v31.16b, v0.16b, v0.16b + uminp v0.16b, v31.16b, v0.16b + uminp v0.16b, v0.16b, v31.16b + uminp v0.8h, v0.8h, v0.8h + uminp v31.8h, v0.8h, v0.8h + uminp v0.8h, v31.8h, v0.8h + uminp v0.8h, v0.8h, v31.8h + uminp v0.4s, v0.4s, v0.4s + uminp v31.4s, v0.4s, v0.4s + uminp v0.4s, v31.4s, v0.4s + uminp v0.4s, v0.4s, v31.4s + + sqrdmulh v0.4h, v0.4h, v0.4h + sqrdmulh v31.4h, v0.4h, v0.4h + sqrdmulh v0.4h, v31.4h, v0.4h + sqrdmulh v0.4h, v0.4h, v31.4h + sqrdmulh v0.2s, v0.2s, v0.2s + sqrdmulh v31.2s, v0.2s, v0.2s + sqrdmulh v0.2s, v31.2s, v0.2s + sqrdmulh v0.2s, v0.2s, v31.2s + sqrdmulh v0.8h, v0.8h, v0.8h + sqrdmulh v31.8h, v0.8h, v0.8h + sqrdmulh v0.8h, v31.8h, v0.8h + sqrdmulh v0.8h, v0.8h, v31.8h + sqrdmulh v0.4s, v0.4s, v0.4s + sqrdmulh v31.4s, v0.4s, v0.4s + sqrdmulh v0.4s, v31.4s, v0.4s + sqrdmulh v0.4s, v0.4s, v31.4s diff --git a/gas/testsuite/gas/aarch64/advsimd-two-reg-misc-hilo.d b/gas/testsuite/gas/aarch64/advsimd-two-reg-misc-hilo.d new file mode 100644 index 0000000..87960ce --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsimd-two-reg-misc-hilo.d @@ -0,0 +1,129 @@ +#as: -march=armv8-a +#objdump: -dr + +.*: file format .* + + +Disassembly of section \.text: + +0+ <\.text>: + *[0-9a-f]+: 0e212800 xtn v0\.8b, v0\.8h + *[0-9a-f]+: 0e21281f xtn v31\.8b, v0\.8h + *[0-9a-f]+: 0e212be0 xtn v0\.8b, v31\.8h + *[0-9a-f]+: 0e612800 xtn v0\.4h, v0\.4s + *[0-9a-f]+: 0e61281f xtn v31\.4h, v0\.4s + *[0-9a-f]+: 0e612be0 xtn v0\.4h, v31\.4s + *[0-9a-f]+: 0ea12800 xtn v0\.2s, v0\.2d + *[0-9a-f]+: 0ea1281f xtn v31\.2s, v0\.2d + *[0-9a-f]+: 0ea12be0 xtn v0\.2s, v31\.2d + *[0-9a-f]+: 4e212800 xtn2 v0\.16b, v0\.8h + *[0-9a-f]+: 4e21281f xtn2 v31\.16b, v0\.8h + *[0-9a-f]+: 4e212be0 xtn2 v0\.16b, v31\.8h + *[0-9a-f]+: 4e612800 xtn2 v0\.8h, v0\.4s + *[0-9a-f]+: 4e61281f xtn2 v31\.8h, v0\.4s + *[0-9a-f]+: 4e612be0 xtn2 v0\.8h, v31\.4s + *[0-9a-f]+: 4ea12800 xtn2 v0\.4s, v0\.2d + *[0-9a-f]+: 4ea1281f xtn2 v31\.4s, v0\.2d + *[0-9a-f]+: 4ea12be0 xtn2 v0\.4s, v31\.2d + *[0-9a-f]+: 0e214800 sqxtn v0\.8b, v0\.8h + *[0-9a-f]+: 0e21481f sqxtn v31\.8b, v0\.8h + *[0-9a-f]+: 0e214be0 sqxtn v0\.8b, v31\.8h + *[0-9a-f]+: 0e614800 sqxtn v0\.4h, v0\.4s + *[0-9a-f]+: 0e61481f sqxtn v31\.4h, v0\.4s + *[0-9a-f]+: 0e614be0 sqxtn v0\.4h, v31\.4s + *[0-9a-f]+: 0ea14800 sqxtn v0\.2s, v0\.2d + *[0-9a-f]+: 0ea1481f sqxtn v31\.2s, v0\.2d + *[0-9a-f]+: 0ea14be0 sqxtn v0\.2s, v31\.2d + *[0-9a-f]+: 4e214800 sqxtn2 v0\.16b, v0\.8h + *[0-9a-f]+: 4e21481f sqxtn2 v31\.16b, v0\.8h + *[0-9a-f]+: 4e214be0 sqxtn2 v0\.16b, v31\.8h + *[0-9a-f]+: 4e614800 sqxtn2 v0\.8h, v0\.4s + *[0-9a-f]+: 4e61481f sqxtn2 v31\.8h, v0\.4s + *[0-9a-f]+: 4e614be0 sqxtn2 v0\.8h, v31\.4s + *[0-9a-f]+: 4ea14800 sqxtn2 v0\.4s, v0\.2d + *[0-9a-f]+: 4ea1481f sqxtn2 v31\.4s, v0\.2d + *[0-9a-f]+: 4ea14be0 sqxtn2 v0\.4s, v31\.2d + *[0-9a-f]+: 0e216800 fcvtn v0\.4h, v0\.4s + *[0-9a-f]+: 0e21681f fcvtn v31\.4h, v0\.4s + *[0-9a-f]+: 0e216be0 fcvtn v0\.4h, v31\.4s + *[0-9a-f]+: 0e616800 fcvtn v0\.2s, v0\.2d + *[0-9a-f]+: 0e61681f fcvtn v31\.2s, v0\.2d + *[0-9a-f]+: 0e616be0 fcvtn v0\.2s, v31\.2d + *[0-9a-f]+: 4e216800 fcvtn2 v0\.8h, v0\.4s + *[0-9a-f]+: 4e21681f fcvtn2 v31\.8h, v0\.4s + *[0-9a-f]+: 4e216be0 fcvtn2 v0\.8h, v31\.4s + *[0-9a-f]+: 4e616800 fcvtn2 v0\.4s, v0\.2d + *[0-9a-f]+: 4e61681f fcvtn2 v31\.4s, v0\.2d + *[0-9a-f]+: 4e616be0 fcvtn2 v0\.4s, v31\.2d + *[0-9a-f]+: 0e217800 fcvtl v0\.4s, v0\.4h + *[0-9a-f]+: 0e21781f fcvtl v31\.4s, v0\.4h + *[0-9a-f]+: 0e217be0 fcvtl v0\.4s, v31\.4h + *[0-9a-f]+: 0e617800 fcvtl v0\.2d, v0\.2s + *[0-9a-f]+: 0e61781f fcvtl v31\.2d, v0\.2s + *[0-9a-f]+: 0e617be0 fcvtl v0\.2d, v31\.2s + *[0-9a-f]+: 4e217800 fcvtl2 v0\.4s, v0\.8h + *[0-9a-f]+: 4e21781f fcvtl2 v31\.4s, v0\.8h + *[0-9a-f]+: 4e217be0 fcvtl2 v0\.4s, v31\.8h + *[0-9a-f]+: 4e617800 fcvtl2 v0\.2d, v0\.4s + *[0-9a-f]+: 4e61781f fcvtl2 v31\.2d, v0\.4s + *[0-9a-f]+: 4e617be0 fcvtl2 v0\.2d, v31\.4s + *[0-9a-f]+: 2e212800 sqxtun v0\.8b, v0\.8h + *[0-9a-f]+: 2e21281f sqxtun v31\.8b, v0\.8h + *[0-9a-f]+: 2e212be0 sqxtun v0\.8b, v31\.8h + *[0-9a-f]+: 2e612800 sqxtun v0\.4h, v0\.4s + *[0-9a-f]+: 2e61281f sqxtun v31\.4h, v0\.4s + *[0-9a-f]+: 2e612be0 sqxtun v0\.4h, v31\.4s + *[0-9a-f]+: 2ea12800 sqxtun v0\.2s, v0\.2d + *[0-9a-f]+: 2ea1281f sqxtun v31\.2s, v0\.2d + *[0-9a-f]+: 2ea12be0 sqxtun v0\.2s, v31\.2d + *[0-9a-f]+: 6e212800 sqxtun2 v0\.16b, v0\.8h + *[0-9a-f]+: 6e21281f sqxtun2 v31\.16b, v0\.8h + *[0-9a-f]+: 6e212be0 sqxtun2 v0\.16b, v31\.8h + *[0-9a-f]+: 6e612800 sqxtun2 v0\.8h, v0\.4s + *[0-9a-f]+: 6e61281f sqxtun2 v31\.8h, v0\.4s + *[0-9a-f]+: 6e612be0 sqxtun2 v0\.8h, v31\.4s + *[0-9a-f]+: 6ea12800 sqxtun2 v0\.4s, v0\.2d + *[0-9a-f]+: 6ea1281f sqxtun2 v31\.4s, v0\.2d + *[0-9a-f]+: 6ea12be0 sqxtun2 v0\.4s, v31\.2d + *[0-9a-f]+: 2e213800 shll v0\.8h, v0\.8b, #8 + *[0-9a-f]+: 2e21381f shll v31\.8h, v0\.8b, #8 + *[0-9a-f]+: 2e213be0 shll v0\.8h, v31\.8b, #8 + *[0-9a-f]+: 2e613800 shll v0\.4s, v0\.4h, #16 + *[0-9a-f]+: 2e61381f shll v31\.4s, v0\.4h, #16 + *[0-9a-f]+: 2e613be0 shll v0\.4s, v31\.4h, #16 + *[0-9a-f]+: 2ea13800 shll v0\.2d, v0\.2s, #32 + *[0-9a-f]+: 2ea1381f shll v31\.2d, v0\.2s, #32 + *[0-9a-f]+: 2ea13be0 shll v0\.2d, v31\.2s, #32 + *[0-9a-f]+: 6e213800 shll2 v0\.8h, v0\.16b, #8 + *[0-9a-f]+: 6e21381f shll2 v31\.8h, v0\.16b, #8 + *[0-9a-f]+: 6e213be0 shll2 v0\.8h, v31\.16b, #8 + *[0-9a-f]+: 6e613800 shll2 v0\.4s, v0\.8h, #16 + *[0-9a-f]+: 6e61381f shll2 v31\.4s, v0\.8h, #16 + *[0-9a-f]+: 6e613be0 shll2 v0\.4s, v31\.8h, #16 + *[0-9a-f]+: 6ea13800 shll2 v0\.2d, v0\.4s, #32 + *[0-9a-f]+: 6ea1381f shll2 v31\.2d, v0\.4s, #32 + *[0-9a-f]+: 6ea13be0 shll2 v0\.2d, v31\.4s, #32 + *[0-9a-f]+: 2e214800 uqxtn v0\.8b, v0\.8h + *[0-9a-f]+: 2e21481f uqxtn v31\.8b, v0\.8h + *[0-9a-f]+: 2e214be0 uqxtn v0\.8b, v31\.8h + *[0-9a-f]+: 2e614800 uqxtn v0\.4h, v0\.4s + *[0-9a-f]+: 2e61481f uqxtn v31\.4h, v0\.4s + *[0-9a-f]+: 2e614be0 uqxtn v0\.4h, v31\.4s + *[0-9a-f]+: 2ea14800 uqxtn v0\.2s, v0\.2d + *[0-9a-f]+: 2ea1481f uqxtn v31\.2s, v0\.2d + *[0-9a-f]+: 2ea14be0 uqxtn v0\.2s, v31\.2d + *[0-9a-f]+: 6e214800 uqxtn2 v0\.16b, v0\.8h + *[0-9a-f]+: 6e21481f uqxtn2 v31\.16b, v0\.8h + *[0-9a-f]+: 6e214be0 uqxtn2 v0\.16b, v31\.8h + *[0-9a-f]+: 6e614800 uqxtn2 v0\.8h, v0\.4s + *[0-9a-f]+: 6e61481f uqxtn2 v31\.8h, v0\.4s + *[0-9a-f]+: 6e614be0 uqxtn2 v0\.8h, v31\.4s + *[0-9a-f]+: 6ea14800 uqxtn2 v0\.4s, v0\.2d + *[0-9a-f]+: 6ea1481f uqxtn2 v31\.4s, v0\.2d + *[0-9a-f]+: 6ea14be0 uqxtn2 v0\.4s, v31\.2d + *[0-9a-f]+: 2e616800 fcvtxn v0\.2s, v0\.2d + *[0-9a-f]+: 2e61681f fcvtxn v31\.2s, v0\.2d + *[0-9a-f]+: 2e616be0 fcvtxn v0\.2s, v31\.2d + *[0-9a-f]+: 6e616800 fcvtxn2 v0\.4s, v0\.2d + *[0-9a-f]+: 6e61681f fcvtxn2 v31\.4s, v0\.2d + *[0-9a-f]+: 6e616be0 fcvtxn2 v0\.4s, v31\.2d diff --git a/gas/testsuite/gas/aarch64/advsimd-two-reg-misc-hilo.s b/gas/testsuite/gas/aarch64/advsimd-two-reg-misc-hilo.s new file mode 100644 index 0000000..12e8868 --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsimd-two-reg-misc-hilo.s @@ -0,0 +1,127 @@ + xtn v0.8b, v0.8h + xtn v31.8b, v0.8h + xtn v0.8b, v31.8h + xtn v0.4h, v0.4s + xtn v31.4h, v0.4s + xtn v0.4h, v31.4s + xtn v0.2s, v0.2d + xtn v31.2s, v0.2d + xtn v0.2s, v31.2d + xtn2 v0.16b, v0.8h + xtn2 v31.16b, v0.8h + xtn2 v0.16b, v31.8h + xtn2 v0.8h, v0.4s + xtn2 v31.8h, v0.4s + xtn2 v0.8h, v31.4s + xtn2 v0.4s, v0.2d + xtn2 v31.4s, v0.2d + xtn2 v0.4s, v31.2d + + sqxtn v0.8b, v0.8h + sqxtn v31.8b, v0.8h + sqxtn v0.8b, v31.8h + sqxtn v0.4h, v0.4s + sqxtn v31.4h, v0.4s + sqxtn v0.4h, v31.4s + sqxtn v0.2s, v0.2d + sqxtn v31.2s, v0.2d + sqxtn v0.2s, v31.2d + sqxtn2 v0.16b, v0.8h + sqxtn2 v31.16b, v0.8h + sqxtn2 v0.16b, v31.8h + sqxtn2 v0.8h, v0.4s + sqxtn2 v31.8h, v0.4s + sqxtn2 v0.8h, v31.4s + sqxtn2 v0.4s, v0.2d + sqxtn2 v31.4s, v0.2d + sqxtn2 v0.4s, v31.2d + + fcvtn v0.4h, v0.4s + fcvtn v31.4h, v0.4s + fcvtn v0.4h, v31.4s + fcvtn v0.2s, v0.2d + fcvtn v31.2s, v0.2d + fcvtn v0.2s, v31.2d + fcvtn2 v0.8h, v0.4s + fcvtn2 v31.8h, v0.4s + fcvtn2 v0.8h, v31.4s + fcvtn2 v0.4s, v0.2d + fcvtn2 v31.4s, v0.2d + fcvtn2 v0.4s, v31.2d + + fcvtl v0.4s, v0.4h + fcvtl v31.4s, v0.4h + fcvtl v0.4s, v31.4h + fcvtl v0.2d, v0.2s + fcvtl v31.2d, v0.2s + fcvtl v0.2d, v31.2s + fcvtl2 v0.4s, v0.8h + fcvtl2 v31.4s, v0.8h + fcvtl2 v0.4s, v31.8h + fcvtl2 v0.2d, v0.4s + fcvtl2 v31.2d, v0.4s + fcvtl2 v0.2d, v31.4s + + sqxtun v0.8b, v0.8h + sqxtun v31.8b, v0.8h + sqxtun v0.8b, v31.8h + sqxtun v0.4h, v0.4s + sqxtun v31.4h, v0.4s + sqxtun v0.4h, v31.4s + sqxtun v0.2s, v0.2d + sqxtun v31.2s, v0.2d + sqxtun v0.2s, v31.2d + sqxtun2 v0.16b, v0.8h + sqxtun2 v31.16b, v0.8h + sqxtun2 v0.16b, v31.8h + sqxtun2 v0.8h, v0.4s + sqxtun2 v31.8h, v0.4s + sqxtun2 v0.8h, v31.4s + sqxtun2 v0.4s, v0.2d + sqxtun2 v31.4s, v0.2d + sqxtun2 v0.4s, v31.2d + + shll v0.8h, v0.8b, #8 + shll v31.8h, v0.8b, #8 + shll v0.8h, v31.8b, #8 + shll v0.4s, v0.4h, #16 + shll v31.4s, v0.4h, #16 + shll v0.4s, v31.4h, #16 + shll v0.2d, v0.2s, #32 + shll v31.2d, v0.2s, #32 + shll v0.2d, v31.2s, #32 + shll2 v0.8h, v0.16b, #8 + shll2 v31.8h, v0.16b, #8 + shll2 v0.8h, v31.16b, #8 + shll2 v0.4s, v0.8h, #16 + shll2 v31.4s, v0.8h, #16 + shll2 v0.4s, v31.8h, #16 + shll2 v0.2d, v0.4s, #32 + shll2 v31.2d, v0.4s, #32 + shll2 v0.2d, v31.4s, #32 + + uqxtn v0.8b, v0.8h + uqxtn v31.8b, v0.8h + uqxtn v0.8b, v31.8h + uqxtn v0.4h, v0.4s + uqxtn v31.4h, v0.4s + uqxtn v0.4h, v31.4s + uqxtn v0.2s, v0.2d + uqxtn v31.2s, v0.2d + uqxtn v0.2s, v31.2d + uqxtn2 v0.16b, v0.8h + uqxtn2 v31.16b, v0.8h + uqxtn2 v0.16b, v31.8h + uqxtn2 v0.8h, v0.4s + uqxtn2 v31.8h, v0.4s + uqxtn2 v0.8h, v31.4s + uqxtn2 v0.4s, v0.2d + uqxtn2 v31.4s, v0.2d + uqxtn2 v0.4s, v31.2d + + fcvtxn v0.2s, v0.2d + fcvtxn v31.2s, v0.2d + fcvtxn v0.2s, v31.2d + fcvtxn2 v0.4s, v0.2d + fcvtxn2 v31.4s, v0.2d + fcvtxn2 v0.4s, v31.2d diff --git a/gas/testsuite/gas/aarch64/advsimd-two-reg-misc.d b/gas/testsuite/gas/aarch64/advsimd-two-reg-misc.d new file mode 100644 index 0000000..cf9d93c --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsimd-two-reg-misc.d @@ -0,0 +1,408 @@ +#as: -march=armv8-a +#objdump: -dr + +.*: file format .* + + +Disassembly of section \.text: + +0+ <\.text>: + *[0-9a-f]+: 0e200800 rev64 v0\.8b, v0\.8b + *[0-9a-f]+: 0e20081f rev64 v31\.8b, v0\.8b + *[0-9a-f]+: 0e200be0 rev64 v0\.8b, v31\.8b + *[0-9a-f]+: 0e600800 rev64 v0\.4h, v0\.4h + *[0-9a-f]+: 0e60081f rev64 v31\.4h, v0\.4h + *[0-9a-f]+: 0e600be0 rev64 v0\.4h, v31\.4h + *[0-9a-f]+: 0ea00800 rev64 v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0081f rev64 v31\.2s, v0\.2s + *[0-9a-f]+: 0ea00be0 rev64 v0\.2s, v31\.2s + *[0-9a-f]+: 4e200800 rev64 v0\.16b, v0\.16b + *[0-9a-f]+: 4e20081f rev64 v31\.16b, v0\.16b + *[0-9a-f]+: 4e200be0 rev64 v0\.16b, v31\.16b + *[0-9a-f]+: 4e600800 rev64 v0\.8h, v0\.8h + *[0-9a-f]+: 4e60081f rev64 v31\.8h, v0\.8h + *[0-9a-f]+: 4e600be0 rev64 v0\.8h, v31\.8h + *[0-9a-f]+: 4ea00800 rev64 v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0081f rev64 v31\.4s, v0\.4s + *[0-9a-f]+: 4ea00be0 rev64 v0\.4s, v31\.4s + *[0-9a-f]+: 0e201800 rev16 v0\.8b, v0\.8b + *[0-9a-f]+: 0e20181f rev16 v31\.8b, v0\.8b + *[0-9a-f]+: 0e201be0 rev16 v0\.8b, v31\.8b + *[0-9a-f]+: 4e201800 rev16 v0\.16b, v0\.16b + *[0-9a-f]+: 4e20181f rev16 v31\.16b, v0\.16b + *[0-9a-f]+: 4e201be0 rev16 v0\.16b, v31\.16b + *[0-9a-f]+: 0e202800 saddlp v0\.4h, v0\.8b + *[0-9a-f]+: 0e20281f saddlp v31\.4h, v0\.8b + *[0-9a-f]+: 0e202be0 saddlp v0\.4h, v31\.8b + *[0-9a-f]+: 0e602800 saddlp v0\.2s, v0\.4h + *[0-9a-f]+: 0e60281f saddlp v31\.2s, v0\.4h + *[0-9a-f]+: 0e602be0 saddlp v0\.2s, v31\.4h + *[0-9a-f]+: 0ea02800 saddlp v0\.1d, v0\.2s + *[0-9a-f]+: 0ea0281f saddlp v31\.1d, v0\.2s + *[0-9a-f]+: 0ea02be0 saddlp v0\.1d, v31\.2s + *[0-9a-f]+: 4e202800 saddlp v0\.8h, v0\.16b + *[0-9a-f]+: 4e20281f saddlp v31\.8h, v0\.16b + *[0-9a-f]+: 4e202be0 saddlp v0\.8h, v31\.16b + *[0-9a-f]+: 4e602800 saddlp v0\.4s, v0\.8h + *[0-9a-f]+: 4e60281f saddlp v31\.4s, v0\.8h + *[0-9a-f]+: 4e602be0 saddlp v0\.4s, v31\.8h + *[0-9a-f]+: 4ea02800 saddlp v0\.2d, v0\.4s + *[0-9a-f]+: 4ea0281f saddlp v31\.2d, v0\.4s + *[0-9a-f]+: 4ea02be0 saddlp v0\.2d, v31\.4s + *[0-9a-f]+: 0e203800 suqadd v0\.8b, v0\.8b + *[0-9a-f]+: 0e20381f suqadd v31\.8b, v0\.8b + *[0-9a-f]+: 0e203be0 suqadd v0\.8b, v31\.8b + *[0-9a-f]+: 0e603800 suqadd v0\.4h, v0\.4h + *[0-9a-f]+: 0e60381f suqadd v31\.4h, v0\.4h + *[0-9a-f]+: 0e603be0 suqadd v0\.4h, v31\.4h + *[0-9a-f]+: 0ea03800 suqadd v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0381f suqadd v31\.2s, v0\.2s + *[0-9a-f]+: 0ea03be0 suqadd v0\.2s, v31\.2s + *[0-9a-f]+: 4e203800 suqadd v0\.16b, v0\.16b + *[0-9a-f]+: 4e20381f suqadd v31\.16b, v0\.16b + *[0-9a-f]+: 4e203be0 suqadd v0\.16b, v31\.16b + *[0-9a-f]+: 4e603800 suqadd v0\.8h, v0\.8h + *[0-9a-f]+: 4e60381f suqadd v31\.8h, v0\.8h + *[0-9a-f]+: 4e603be0 suqadd v0\.8h, v31\.8h + *[0-9a-f]+: 4ea03800 suqadd v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0381f suqadd v31\.4s, v0\.4s + *[0-9a-f]+: 4ea03be0 suqadd v0\.4s, v31\.4s + *[0-9a-f]+: 4ee03800 suqadd v0\.2d, v0\.2d + *[0-9a-f]+: 4ee0381f suqadd v31\.2d, v0\.2d + *[0-9a-f]+: 4ee03be0 suqadd v0\.2d, v31\.2d + *[0-9a-f]+: 0e204800 cls v0\.8b, v0\.8b + *[0-9a-f]+: 0e20481f cls v31\.8b, v0\.8b + *[0-9a-f]+: 0e204be0 cls v0\.8b, v31\.8b + *[0-9a-f]+: 0e604800 cls v0\.4h, v0\.4h + *[0-9a-f]+: 0e60481f cls v31\.4h, v0\.4h + *[0-9a-f]+: 0e604be0 cls v0\.4h, v31\.4h + *[0-9a-f]+: 0ea04800 cls v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0481f cls v31\.2s, v0\.2s + *[0-9a-f]+: 0ea04be0 cls v0\.2s, v31\.2s + *[0-9a-f]+: 4e204800 cls v0\.16b, v0\.16b + *[0-9a-f]+: 4e20481f cls v31\.16b, v0\.16b + *[0-9a-f]+: 4e204be0 cls v0\.16b, v31\.16b + *[0-9a-f]+: 4e604800 cls v0\.8h, v0\.8h + *[0-9a-f]+: 4e60481f cls v31\.8h, v0\.8h + *[0-9a-f]+: 4e604be0 cls v0\.8h, v31\.8h + *[0-9a-f]+: 4ea04800 cls v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0481f cls v31\.4s, v0\.4s + *[0-9a-f]+: 4ea04be0 cls v0\.4s, v31\.4s + *[0-9a-f]+: 0e205800 cnt v0\.8b, v0\.8b + *[0-9a-f]+: 0e20581f cnt v31\.8b, v0\.8b + *[0-9a-f]+: 0e205be0 cnt v0\.8b, v31\.8b + *[0-9a-f]+: 4e205800 cnt v0\.16b, v0\.16b + *[0-9a-f]+: 4e20581f cnt v31\.16b, v0\.16b + *[0-9a-f]+: 4e205be0 cnt v0\.16b, v31\.16b + *[0-9a-f]+: 0e206800 sadalp v0\.4h, v0\.8b + *[0-9a-f]+: 0e20681f sadalp v31\.4h, v0\.8b + *[0-9a-f]+: 0e206be0 sadalp v0\.4h, v31\.8b + *[0-9a-f]+: 0e606800 sadalp v0\.2s, v0\.4h + *[0-9a-f]+: 0e60681f sadalp v31\.2s, v0\.4h + *[0-9a-f]+: 0e606be0 sadalp v0\.2s, v31\.4h + *[0-9a-f]+: 0ea06800 sadalp v0\.1d, v0\.2s + *[0-9a-f]+: 0ea0681f sadalp v31\.1d, v0\.2s + *[0-9a-f]+: 0ea06be0 sadalp v0\.1d, v31\.2s + *[0-9a-f]+: 4e206800 sadalp v0\.8h, v0\.16b + *[0-9a-f]+: 4e20681f sadalp v31\.8h, v0\.16b + *[0-9a-f]+: 4e206be0 sadalp v0\.8h, v31\.16b + *[0-9a-f]+: 4e606800 sadalp v0\.4s, v0\.8h + *[0-9a-f]+: 4e60681f sadalp v31\.4s, v0\.8h + *[0-9a-f]+: 4e606be0 sadalp v0\.4s, v31\.8h + *[0-9a-f]+: 4ea06800 sadalp v0\.2d, v0\.4s + *[0-9a-f]+: 4ea0681f sadalp v31\.2d, v0\.4s + *[0-9a-f]+: 4ea06be0 sadalp v0\.2d, v31\.4s + *[0-9a-f]+: 0e207800 sqabs v0\.8b, v0\.8b + *[0-9a-f]+: 0e20781f sqabs v31\.8b, v0\.8b + *[0-9a-f]+: 0e207be0 sqabs v0\.8b, v31\.8b + *[0-9a-f]+: 0e607800 sqabs v0\.4h, v0\.4h + *[0-9a-f]+: 0e60781f sqabs v31\.4h, v0\.4h + *[0-9a-f]+: 0e607be0 sqabs v0\.4h, v31\.4h + *[0-9a-f]+: 0ea07800 sqabs v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0781f sqabs v31\.2s, v0\.2s + *[0-9a-f]+: 0ea07be0 sqabs v0\.2s, v31\.2s + *[0-9a-f]+: 4e207800 sqabs v0\.16b, v0\.16b + *[0-9a-f]+: 4e20781f sqabs v31\.16b, v0\.16b + *[0-9a-f]+: 4e207be0 sqabs v0\.16b, v31\.16b + *[0-9a-f]+: 4e607800 sqabs v0\.8h, v0\.8h + *[0-9a-f]+: 4e60781f sqabs v31\.8h, v0\.8h + *[0-9a-f]+: 4e607be0 sqabs v0\.8h, v31\.8h + *[0-9a-f]+: 4ea07800 sqabs v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0781f sqabs v31\.4s, v0\.4s + *[0-9a-f]+: 4ea07be0 sqabs v0\.4s, v31\.4s + *[0-9a-f]+: 4ee07800 sqabs v0\.2d, v0\.2d + *[0-9a-f]+: 4ee0781f sqabs v31\.2d, v0\.2d + *[0-9a-f]+: 4ee07be0 sqabs v0\.2d, v31\.2d + *[0-9a-f]+: 0e208800 cmgt v0\.8b, v0\.8b, #0 + *[0-9a-f]+: 0e20881f cmgt v31\.8b, v0\.8b, #0 + *[0-9a-f]+: 0e208be0 cmgt v0\.8b, v31\.8b, #0 + *[0-9a-f]+: 0e608800 cmgt v0\.4h, v0\.4h, #0 + *[0-9a-f]+: 0e60881f cmgt v31\.4h, v0\.4h, #0 + *[0-9a-f]+: 0e608be0 cmgt v0\.4h, v31\.4h, #0 + *[0-9a-f]+: 0ea08800 cmgt v0\.2s, v0\.2s, #0 + *[0-9a-f]+: 0ea0881f cmgt v31\.2s, v0\.2s, #0 + *[0-9a-f]+: 0ea08be0 cmgt v0\.2s, v31\.2s, #0 + *[0-9a-f]+: 4e208800 cmgt v0\.16b, v0\.16b, #0 + *[0-9a-f]+: 4e20881f cmgt v31\.16b, v0\.16b, #0 + *[0-9a-f]+: 4e208be0 cmgt v0\.16b, v31\.16b, #0 + *[0-9a-f]+: 4e608800 cmgt v0\.8h, v0\.8h, #0 + *[0-9a-f]+: 4e60881f cmgt v31\.8h, v0\.8h, #0 + *[0-9a-f]+: 4e608be0 cmgt v0\.8h, v31\.8h, #0 + *[0-9a-f]+: 4ea08800 cmgt v0\.4s, v0\.4s, #0 + *[0-9a-f]+: 4ea0881f cmgt v31\.4s, v0\.4s, #0 + *[0-9a-f]+: 4ea08be0 cmgt v0\.4s, v31\.4s, #0 + *[0-9a-f]+: 4ee08800 cmgt v0\.2d, v0\.2d, #0 + *[0-9a-f]+: 4ee0881f cmgt v31\.2d, v0\.2d, #0 + *[0-9a-f]+: 4ee08be0 cmgt v0\.2d, v31\.2d, #0 + *[0-9a-f]+: 0e209800 cmeq v0\.8b, v0\.8b, #0 + *[0-9a-f]+: 0e20981f cmeq v31\.8b, v0\.8b, #0 + *[0-9a-f]+: 0e209be0 cmeq v0\.8b, v31\.8b, #0 + *[0-9a-f]+: 0e609800 cmeq v0\.4h, v0\.4h, #0 + *[0-9a-f]+: 0e60981f cmeq v31\.4h, v0\.4h, #0 + *[0-9a-f]+: 0e609be0 cmeq v0\.4h, v31\.4h, #0 + *[0-9a-f]+: 0ea09800 cmeq v0\.2s, v0\.2s, #0 + *[0-9a-f]+: 0ea0981f cmeq v31\.2s, v0\.2s, #0 + *[0-9a-f]+: 0ea09be0 cmeq v0\.2s, v31\.2s, #0 + *[0-9a-f]+: 4e209800 cmeq v0\.16b, v0\.16b, #0 + *[0-9a-f]+: 4e20981f cmeq v31\.16b, v0\.16b, #0 + *[0-9a-f]+: 4e209be0 cmeq v0\.16b, v31\.16b, #0 + *[0-9a-f]+: 4e609800 cmeq v0\.8h, v0\.8h, #0 + *[0-9a-f]+: 4e60981f cmeq v31\.8h, v0\.8h, #0 + *[0-9a-f]+: 4e609be0 cmeq v0\.8h, v31\.8h, #0 + *[0-9a-f]+: 4ea09800 cmeq v0\.4s, v0\.4s, #0 + *[0-9a-f]+: 4ea0981f cmeq v31\.4s, v0\.4s, #0 + *[0-9a-f]+: 4ea09be0 cmeq v0\.4s, v31\.4s, #0 + *[0-9a-f]+: 4ee09800 cmeq v0\.2d, v0\.2d, #0 + *[0-9a-f]+: 4ee0981f cmeq v31\.2d, v0\.2d, #0 + *[0-9a-f]+: 4ee09be0 cmeq v0\.2d, v31\.2d, #0 + *[0-9a-f]+: 0e20a800 cmlt v0\.8b, v0\.8b, #0 + *[0-9a-f]+: 0e20a81f cmlt v31\.8b, v0\.8b, #0 + *[0-9a-f]+: 0e20abe0 cmlt v0\.8b, v31\.8b, #0 + *[0-9a-f]+: 0e60a800 cmlt v0\.4h, v0\.4h, #0 + *[0-9a-f]+: 0e60a81f cmlt v31\.4h, v0\.4h, #0 + *[0-9a-f]+: 0e60abe0 cmlt v0\.4h, v31\.4h, #0 + *[0-9a-f]+: 0ea0a800 cmlt v0\.2s, v0\.2s, #0 + *[0-9a-f]+: 0ea0a81f cmlt v31\.2s, v0\.2s, #0 + *[0-9a-f]+: 0ea0abe0 cmlt v0\.2s, v31\.2s, #0 + *[0-9a-f]+: 4e20a800 cmlt v0\.16b, v0\.16b, #0 + *[0-9a-f]+: 4e20a81f cmlt v31\.16b, v0\.16b, #0 + *[0-9a-f]+: 4e20abe0 cmlt v0\.16b, v31\.16b, #0 + *[0-9a-f]+: 4e60a800 cmlt v0\.8h, v0\.8h, #0 + *[0-9a-f]+: 4e60a81f cmlt v31\.8h, v0\.8h, #0 + *[0-9a-f]+: 4e60abe0 cmlt v0\.8h, v31\.8h, #0 + *[0-9a-f]+: 4ea0a800 cmlt v0\.4s, v0\.4s, #0 + *[0-9a-f]+: 4ea0a81f cmlt v31\.4s, v0\.4s, #0 + *[0-9a-f]+: 4ea0abe0 cmlt v0\.4s, v31\.4s, #0 + *[0-9a-f]+: 4ee0a800 cmlt v0\.2d, v0\.2d, #0 + *[0-9a-f]+: 4ee0a81f cmlt v31\.2d, v0\.2d, #0 + *[0-9a-f]+: 4ee0abe0 cmlt v0\.2d, v31\.2d, #0 + *[0-9a-f]+: 0e20b800 abs v0\.8b, v0\.8b + *[0-9a-f]+: 0e20b81f abs v31\.8b, v0\.8b + *[0-9a-f]+: 0e20bbe0 abs v0\.8b, v31\.8b + *[0-9a-f]+: 0e60b800 abs v0\.4h, v0\.4h + *[0-9a-f]+: 0e60b81f abs v31\.4h, v0\.4h + *[0-9a-f]+: 0e60bbe0 abs v0\.4h, v31\.4h + *[0-9a-f]+: 0ea0b800 abs v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0b81f abs v31\.2s, v0\.2s + *[0-9a-f]+: 0ea0bbe0 abs v0\.2s, v31\.2s + *[0-9a-f]+: 4e20b800 abs v0\.16b, v0\.16b + *[0-9a-f]+: 4e20b81f abs v31\.16b, v0\.16b + *[0-9a-f]+: 4e20bbe0 abs v0\.16b, v31\.16b + *[0-9a-f]+: 4e60b800 abs v0\.8h, v0\.8h + *[0-9a-f]+: 4e60b81f abs v31\.8h, v0\.8h + *[0-9a-f]+: 4e60bbe0 abs v0\.8h, v31\.8h + *[0-9a-f]+: 4ea0b800 abs v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0b81f abs v31\.4s, v0\.4s + *[0-9a-f]+: 4ea0bbe0 abs v0\.4s, v31\.4s + *[0-9a-f]+: 4ee0b800 abs v0\.2d, v0\.2d + *[0-9a-f]+: 4ee0b81f abs v31\.2d, v0\.2d + *[0-9a-f]+: 4ee0bbe0 abs v0\.2d, v31\.2d + *[0-9a-f]+: 2e200800 rev32 v0\.8b, v0\.8b + *[0-9a-f]+: 2e20081f rev32 v31\.8b, v0\.8b + *[0-9a-f]+: 2e200be0 rev32 v0\.8b, v31\.8b + *[0-9a-f]+: 2e600800 rev32 v0\.4h, v0\.4h + *[0-9a-f]+: 2e60081f rev32 v31\.4h, v0\.4h + *[0-9a-f]+: 2e600be0 rev32 v0\.4h, v31\.4h + *[0-9a-f]+: 6e200800 rev32 v0\.16b, v0\.16b + *[0-9a-f]+: 6e20081f rev32 v31\.16b, v0\.16b + *[0-9a-f]+: 6e200be0 rev32 v0\.16b, v31\.16b + *[0-9a-f]+: 6e600800 rev32 v0\.8h, v0\.8h + *[0-9a-f]+: 6e60081f rev32 v31\.8h, v0\.8h + *[0-9a-f]+: 6e600be0 rev32 v0\.8h, v31\.8h + *[0-9a-f]+: 2e202800 uaddlp v0\.4h, v0\.8b + *[0-9a-f]+: 2e20281f uaddlp v31\.4h, v0\.8b + *[0-9a-f]+: 2e202be0 uaddlp v0\.4h, v31\.8b + *[0-9a-f]+: 2e602800 uaddlp v0\.2s, v0\.4h + *[0-9a-f]+: 2e60281f uaddlp v31\.2s, v0\.4h + *[0-9a-f]+: 2e602be0 uaddlp v0\.2s, v31\.4h + *[0-9a-f]+: 2ea02800 uaddlp v0\.1d, v0\.2s + *[0-9a-f]+: 2ea0281f uaddlp v31\.1d, v0\.2s + *[0-9a-f]+: 2ea02be0 uaddlp v0\.1d, v31\.2s + *[0-9a-f]+: 6e202800 uaddlp v0\.8h, v0\.16b + *[0-9a-f]+: 6e20281f uaddlp v31\.8h, v0\.16b + *[0-9a-f]+: 6e202be0 uaddlp v0\.8h, v31\.16b + *[0-9a-f]+: 6e602800 uaddlp v0\.4s, v0\.8h + *[0-9a-f]+: 6e60281f uaddlp v31\.4s, v0\.8h + *[0-9a-f]+: 6e602be0 uaddlp v0\.4s, v31\.8h + *[0-9a-f]+: 6ea02800 uaddlp v0\.2d, v0\.4s + *[0-9a-f]+: 6ea0281f uaddlp v31\.2d, v0\.4s + *[0-9a-f]+: 6ea02be0 uaddlp v0\.2d, v31\.4s + *[0-9a-f]+: 2e203800 usqadd v0\.8b, v0\.8b + *[0-9a-f]+: 2e20381f usqadd v31\.8b, v0\.8b + *[0-9a-f]+: 2e203be0 usqadd v0\.8b, v31\.8b + *[0-9a-f]+: 2e603800 usqadd v0\.4h, v0\.4h + *[0-9a-f]+: 2e60381f usqadd v31\.4h, v0\.4h + *[0-9a-f]+: 2e603be0 usqadd v0\.4h, v31\.4h + *[0-9a-f]+: 2ea03800 usqadd v0\.2s, v0\.2s + *[0-9a-f]+: 2ea0381f usqadd v31\.2s, v0\.2s + *[0-9a-f]+: 2ea03be0 usqadd v0\.2s, v31\.2s + *[0-9a-f]+: 6e203800 usqadd v0\.16b, v0\.16b + *[0-9a-f]+: 6e20381f usqadd v31\.16b, v0\.16b + *[0-9a-f]+: 6e203be0 usqadd v0\.16b, v31\.16b + *[0-9a-f]+: 6e603800 usqadd v0\.8h, v0\.8h + *[0-9a-f]+: 6e60381f usqadd v31\.8h, v0\.8h + *[0-9a-f]+: 6e603be0 usqadd v0\.8h, v31\.8h + *[0-9a-f]+: 6ea03800 usqadd v0\.4s, v0\.4s + *[0-9a-f]+: 6ea0381f usqadd v31\.4s, v0\.4s + *[0-9a-f]+: 6ea03be0 usqadd v0\.4s, v31\.4s + *[0-9a-f]+: 6ee03800 usqadd v0\.2d, v0\.2d + *[0-9a-f]+: 6ee0381f usqadd v31\.2d, v0\.2d + *[0-9a-f]+: 6ee03be0 usqadd v0\.2d, v31\.2d + *[0-9a-f]+: 2e204800 clz v0\.8b, v0\.8b + *[0-9a-f]+: 2e20481f clz v31\.8b, v0\.8b + *[0-9a-f]+: 2e204be0 clz v0\.8b, v31\.8b + *[0-9a-f]+: 2e604800 clz v0\.4h, v0\.4h + *[0-9a-f]+: 2e60481f clz v31\.4h, v0\.4h + *[0-9a-f]+: 2e604be0 clz v0\.4h, v31\.4h + *[0-9a-f]+: 2ea04800 clz v0\.2s, v0\.2s + *[0-9a-f]+: 2ea0481f clz v31\.2s, v0\.2s + *[0-9a-f]+: 2ea04be0 clz v0\.2s, v31\.2s + *[0-9a-f]+: 6e204800 clz v0\.16b, v0\.16b + *[0-9a-f]+: 6e20481f clz v31\.16b, v0\.16b + *[0-9a-f]+: 6e204be0 clz v0\.16b, v31\.16b + *[0-9a-f]+: 6e604800 clz v0\.8h, v0\.8h + *[0-9a-f]+: 6e60481f clz v31\.8h, v0\.8h + *[0-9a-f]+: 6e604be0 clz v0\.8h, v31\.8h + *[0-9a-f]+: 6ea04800 clz v0\.4s, v0\.4s + *[0-9a-f]+: 6ea0481f clz v31\.4s, v0\.4s + *[0-9a-f]+: 6ea04be0 clz v0\.4s, v31\.4s + *[0-9a-f]+: 2e205800 mvn v0\.8b, v0\.8b + *[0-9a-f]+: 2e20581f mvn v31\.8b, v0\.8b + *[0-9a-f]+: 2e205be0 mvn v0\.8b, v31\.8b + *[0-9a-f]+: 6e205800 mvn v0\.16b, v0\.16b + *[0-9a-f]+: 6e20581f mvn v31\.16b, v0\.16b + *[0-9a-f]+: 6e205be0 mvn v0\.16b, v31\.16b + *[0-9a-f]+: 2e205800 mvn v0\.8b, v0\.8b + *[0-9a-f]+: 2e20581f mvn v31\.8b, v0\.8b + *[0-9a-f]+: 2e205be0 mvn v0\.8b, v31\.8b + *[0-9a-f]+: 6e205800 mvn v0\.16b, v0\.16b + *[0-9a-f]+: 6e20581f mvn v31\.16b, v0\.16b + *[0-9a-f]+: 6e205be0 mvn v0\.16b, v31\.16b + *[0-9a-f]+: 2e605800 rbit v0\.8b, v0\.8b + *[0-9a-f]+: 2e60581f rbit v31\.8b, v0\.8b + *[0-9a-f]+: 2e605be0 rbit v0\.8b, v31\.8b + *[0-9a-f]+: 6e605800 rbit v0\.16b, v0\.16b + *[0-9a-f]+: 6e60581f rbit v31\.16b, v0\.16b + *[0-9a-f]+: 6e605be0 rbit v0\.16b, v31\.16b + *[0-9a-f]+: 2e206800 uadalp v0\.4h, v0\.8b + *[0-9a-f]+: 2e20681f uadalp v31\.4h, v0\.8b + *[0-9a-f]+: 2e206be0 uadalp v0\.4h, v31\.8b + *[0-9a-f]+: 2e606800 uadalp v0\.2s, v0\.4h + *[0-9a-f]+: 2e60681f uadalp v31\.2s, v0\.4h + *[0-9a-f]+: 2e606be0 uadalp v0\.2s, v31\.4h + *[0-9a-f]+: 2ea06800 uadalp v0\.1d, v0\.2s + *[0-9a-f]+: 2ea0681f uadalp v31\.1d, v0\.2s + *[0-9a-f]+: 2ea06be0 uadalp v0\.1d, v31\.2s + *[0-9a-f]+: 6e206800 uadalp v0\.8h, v0\.16b + *[0-9a-f]+: 6e20681f uadalp v31\.8h, v0\.16b + *[0-9a-f]+: 6e206be0 uadalp v0\.8h, v31\.16b + *[0-9a-f]+: 6e606800 uadalp v0\.4s, v0\.8h + *[0-9a-f]+: 6e60681f uadalp v31\.4s, v0\.8h + *[0-9a-f]+: 6e606be0 uadalp v0\.4s, v31\.8h + *[0-9a-f]+: 6ea06800 uadalp v0\.2d, v0\.4s + *[0-9a-f]+: 6ea0681f uadalp v31\.2d, v0\.4s + *[0-9a-f]+: 6ea06be0 uadalp v0\.2d, v31\.4s + *[0-9a-f]+: 2e207800 sqneg v0\.8b, v0\.8b + *[0-9a-f]+: 2e20781f sqneg v31\.8b, v0\.8b + *[0-9a-f]+: 2e207be0 sqneg v0\.8b, v31\.8b + *[0-9a-f]+: 2e607800 sqneg v0\.4h, v0\.4h + *[0-9a-f]+: 2e60781f sqneg v31\.4h, v0\.4h + *[0-9a-f]+: 2e607be0 sqneg v0\.4h, v31\.4h + *[0-9a-f]+: 2ea07800 sqneg v0\.2s, v0\.2s + *[0-9a-f]+: 2ea0781f sqneg v31\.2s, v0\.2s + *[0-9a-f]+: 2ea07be0 sqneg v0\.2s, v31\.2s + *[0-9a-f]+: 6e207800 sqneg v0\.16b, v0\.16b + *[0-9a-f]+: 6e20781f sqneg v31\.16b, v0\.16b + *[0-9a-f]+: 6e207be0 sqneg v0\.16b, v31\.16b + *[0-9a-f]+: 6e607800 sqneg v0\.8h, v0\.8h + *[0-9a-f]+: 6e60781f sqneg v31\.8h, v0\.8h + *[0-9a-f]+: 6e607be0 sqneg v0\.8h, v31\.8h + *[0-9a-f]+: 6ea07800 sqneg v0\.4s, v0\.4s + *[0-9a-f]+: 6ea0781f sqneg v31\.4s, v0\.4s + *[0-9a-f]+: 6ea07be0 sqneg v0\.4s, v31\.4s + *[0-9a-f]+: 6ee07800 sqneg v0\.2d, v0\.2d + *[0-9a-f]+: 6ee0781f sqneg v31\.2d, v0\.2d + *[0-9a-f]+: 6ee07be0 sqneg v0\.2d, v31\.2d + *[0-9a-f]+: 2e208800 cmge v0\.8b, v0\.8b, #0 + *[0-9a-f]+: 2e20881f cmge v31\.8b, v0\.8b, #0 + *[0-9a-f]+: 2e208be0 cmge v0\.8b, v31\.8b, #0 + *[0-9a-f]+: 2e608800 cmge v0\.4h, v0\.4h, #0 + *[0-9a-f]+: 2e60881f cmge v31\.4h, v0\.4h, #0 + *[0-9a-f]+: 2e608be0 cmge v0\.4h, v31\.4h, #0 + *[0-9a-f]+: 2ea08800 cmge v0\.2s, v0\.2s, #0 + *[0-9a-f]+: 2ea0881f cmge v31\.2s, v0\.2s, #0 + *[0-9a-f]+: 2ea08be0 cmge v0\.2s, v31\.2s, #0 + *[0-9a-f]+: 6e208800 cmge v0\.16b, v0\.16b, #0 + *[0-9a-f]+: 6e20881f cmge v31\.16b, v0\.16b, #0 + *[0-9a-f]+: 6e208be0 cmge v0\.16b, v31\.16b, #0 + *[0-9a-f]+: 6e608800 cmge v0\.8h, v0\.8h, #0 + *[0-9a-f]+: 6e60881f cmge v31\.8h, v0\.8h, #0 + *[0-9a-f]+: 6e608be0 cmge v0\.8h, v31\.8h, #0 + *[0-9a-f]+: 6ea08800 cmge v0\.4s, v0\.4s, #0 + *[0-9a-f]+: 6ea0881f cmge v31\.4s, v0\.4s, #0 + *[0-9a-f]+: 6ea08be0 cmge v0\.4s, v31\.4s, #0 + *[0-9a-f]+: 6ee08800 cmge v0\.2d, v0\.2d, #0 + *[0-9a-f]+: 6ee0881f cmge v31\.2d, v0\.2d, #0 + *[0-9a-f]+: 6ee08be0 cmge v0\.2d, v31\.2d, #0 + *[0-9a-f]+: 2e209800 cmle v0\.8b, v0\.8b, #0 + *[0-9a-f]+: 2e20981f cmle v31\.8b, v0\.8b, #0 + *[0-9a-f]+: 2e209be0 cmle v0\.8b, v31\.8b, #0 + *[0-9a-f]+: 2e609800 cmle v0\.4h, v0\.4h, #0 + *[0-9a-f]+: 2e60981f cmle v31\.4h, v0\.4h, #0 + *[0-9a-f]+: 2e609be0 cmle v0\.4h, v31\.4h, #0 + *[0-9a-f]+: 2ea09800 cmle v0\.2s, v0\.2s, #0 + *[0-9a-f]+: 2ea0981f cmle v31\.2s, v0\.2s, #0 + *[0-9a-f]+: 2ea09be0 cmle v0\.2s, v31\.2s, #0 + *[0-9a-f]+: 6e209800 cmle v0\.16b, v0\.16b, #0 + *[0-9a-f]+: 6e20981f cmle v31\.16b, v0\.16b, #0 + *[0-9a-f]+: 6e209be0 cmle v0\.16b, v31\.16b, #0 + *[0-9a-f]+: 6e609800 cmle v0\.8h, v0\.8h, #0 + *[0-9a-f]+: 6e60981f cmle v31\.8h, v0\.8h, #0 + *[0-9a-f]+: 6e609be0 cmle v0\.8h, v31\.8h, #0 + *[0-9a-f]+: 6ea09800 cmle v0\.4s, v0\.4s, #0 + *[0-9a-f]+: 6ea0981f cmle v31\.4s, v0\.4s, #0 + *[0-9a-f]+: 6ea09be0 cmle v0\.4s, v31\.4s, #0 + *[0-9a-f]+: 6ee09800 cmle v0\.2d, v0\.2d, #0 + *[0-9a-f]+: 6ee0981f cmle v31\.2d, v0\.2d, #0 + *[0-9a-f]+: 6ee09be0 cmle v0\.2d, v31\.2d, #0 + *[0-9a-f]+: 2e20b800 neg v0\.8b, v0\.8b + *[0-9a-f]+: 2e20b81f neg v31\.8b, v0\.8b + *[0-9a-f]+: 2e20bbe0 neg v0\.8b, v31\.8b + *[0-9a-f]+: 2e60b800 neg v0\.4h, v0\.4h + *[0-9a-f]+: 2e60b81f neg v31\.4h, v0\.4h + *[0-9a-f]+: 2e60bbe0 neg v0\.4h, v31\.4h + *[0-9a-f]+: 2ea0b800 neg v0\.2s, v0\.2s + *[0-9a-f]+: 2ea0b81f neg v31\.2s, v0\.2s + *[0-9a-f]+: 2ea0bbe0 neg v0\.2s, v31\.2s + *[0-9a-f]+: 6e20b800 neg v0\.16b, v0\.16b + *[0-9a-f]+: 6e20b81f neg v31\.16b, v0\.16b + *[0-9a-f]+: 6e20bbe0 neg v0\.16b, v31\.16b + *[0-9a-f]+: 6e60b800 neg v0\.8h, v0\.8h + *[0-9a-f]+: 6e60b81f neg v31\.8h, v0\.8h + *[0-9a-f]+: 6e60bbe0 neg v0\.8h, v31\.8h + *[0-9a-f]+: 6ea0b800 neg v0\.4s, v0\.4s + *[0-9a-f]+: 6ea0b81f neg v31\.4s, v0\.4s + *[0-9a-f]+: 6ea0bbe0 neg v0\.4s, v31\.4s + *[0-9a-f]+: 6ee0b800 neg v0\.2d, v0\.2d + *[0-9a-f]+: 6ee0b81f neg v31\.2d, v0\.2d + *[0-9a-f]+: 6ee0bbe0 neg v0\.2d, v31\.2d diff --git a/gas/testsuite/gas/aarch64/advsimd-two-reg-misc.s b/gas/testsuite/gas/aarch64/advsimd-two-reg-misc.s new file mode 100644 index 0000000..6a66ff7 --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsimd-two-reg-misc.s @@ -0,0 +1,422 @@ + rev64 v0.8b, v0.8b + rev64 v31.8b, v0.8b + rev64 v0.8b, v31.8b + rev64 v0.4h, v0.4h + rev64 v31.4h, v0.4h + rev64 v0.4h, v31.4h + rev64 v0.2s, v0.2s + rev64 v31.2s, v0.2s + rev64 v0.2s, v31.2s + rev64 v0.16b, v0.16b + rev64 v31.16b, v0.16b + rev64 v0.16b, v31.16b + rev64 v0.8h, v0.8h + rev64 v31.8h, v0.8h + rev64 v0.8h, v31.8h + rev64 v0.4s, v0.4s + rev64 v31.4s, v0.4s + rev64 v0.4s, v31.4s + + rev16 v0.8b, v0.8b + rev16 v31.8b, v0.8b + rev16 v0.8b, v31.8b + rev16 v0.16b, v0.16b + rev16 v31.16b, v0.16b + rev16 v0.16b, v31.16b + + saddlp v0.4h, v0.8b + saddlp v31.4h, v0.8b + saddlp v0.4h, v31.8b + saddlp v0.2s, v0.4h + saddlp v31.2s, v0.4h + saddlp v0.2s, v31.4h + saddlp v0.1d, v0.2s + saddlp v31.1d, v0.2s + saddlp v0.1d, v31.2s + saddlp v0.8h, v0.16b + saddlp v31.8h, v0.16b + saddlp v0.8h, v31.16b + saddlp v0.4s, v0.8h + saddlp v31.4s, v0.8h + saddlp v0.4s, v31.8h + saddlp v0.2d, v0.4s + saddlp v31.2d, v0.4s + saddlp v0.2d, v31.4s + + suqadd v0.8b, v0.8b + suqadd v31.8b, v0.8b + suqadd v0.8b, v31.8b + suqadd v0.4h, v0.4h + suqadd v31.4h, v0.4h + suqadd v0.4h, v31.4h + suqadd v0.2s, v0.2s + suqadd v31.2s, v0.2s + suqadd v0.2s, v31.2s + suqadd v0.16b, v0.16b + suqadd v31.16b, v0.16b + suqadd v0.16b, v31.16b + suqadd v0.8h, v0.8h + suqadd v31.8h, v0.8h + suqadd v0.8h, v31.8h + suqadd v0.4s, v0.4s + suqadd v31.4s, v0.4s + suqadd v0.4s, v31.4s + suqadd v0.2d, v0.2d + suqadd v31.2d, v0.2d + suqadd v0.2d, v31.2d + + cls v0.8b, v0.8b + cls v31.8b, v0.8b + cls v0.8b, v31.8b + cls v0.4h, v0.4h + cls v31.4h, v0.4h + cls v0.4h, v31.4h + cls v0.2s, v0.2s + cls v31.2s, v0.2s + cls v0.2s, v31.2s + cls v0.16b, v0.16b + cls v31.16b, v0.16b + cls v0.16b, v31.16b + cls v0.8h, v0.8h + cls v31.8h, v0.8h + cls v0.8h, v31.8h + cls v0.4s, v0.4s + cls v31.4s, v0.4s + cls v0.4s, v31.4s + + cnt v0.8b, v0.8b + cnt v31.8b, v0.8b + cnt v0.8b, v31.8b + cnt v0.16b, v0.16b + cnt v31.16b, v0.16b + cnt v0.16b, v31.16b + + sadalp v0.4h, v0.8b + sadalp v31.4h, v0.8b + sadalp v0.4h, v31.8b + sadalp v0.2s, v0.4h + sadalp v31.2s, v0.4h + sadalp v0.2s, v31.4h + sadalp v0.1d, v0.2s + sadalp v31.1d, v0.2s + sadalp v0.1d, v31.2s + sadalp v0.8h, v0.16b + sadalp v31.8h, v0.16b + sadalp v0.8h, v31.16b + sadalp v0.4s, v0.8h + sadalp v31.4s, v0.8h + sadalp v0.4s, v31.8h + sadalp v0.2d, v0.4s + sadalp v31.2d, v0.4s + sadalp v0.2d, v31.4s + + sqabs v0.8b, v0.8b + sqabs v31.8b, v0.8b + sqabs v0.8b, v31.8b + sqabs v0.4h, v0.4h + sqabs v31.4h, v0.4h + sqabs v0.4h, v31.4h + sqabs v0.2s, v0.2s + sqabs v31.2s, v0.2s + sqabs v0.2s, v31.2s + sqabs v0.16b, v0.16b + sqabs v31.16b, v0.16b + sqabs v0.16b, v31.16b + sqabs v0.8h, v0.8h + sqabs v31.8h, v0.8h + sqabs v0.8h, v31.8h + sqabs v0.4s, v0.4s + sqabs v31.4s, v0.4s + sqabs v0.4s, v31.4s + sqabs v0.2d, v0.2d + sqabs v31.2d, v0.2d + sqabs v0.2d, v31.2d + + cmgt v0.8b, v0.8b, #0 + cmgt v31.8b, v0.8b, #0 + cmgt v0.8b, v31.8b, #0 + cmgt v0.4h, v0.4h, #0 + cmgt v31.4h, v0.4h, #0 + cmgt v0.4h, v31.4h, #0 + cmgt v0.2s, v0.2s, #0 + cmgt v31.2s, v0.2s, #0 + cmgt v0.2s, v31.2s, #0 + cmgt v0.16b, v0.16b, #0 + cmgt v31.16b, v0.16b, #0 + cmgt v0.16b, v31.16b, #0 + cmgt v0.8h, v0.8h, #0 + cmgt v31.8h, v0.8h, #0 + cmgt v0.8h, v31.8h, #0 + cmgt v0.4s, v0.4s, #0 + cmgt v31.4s, v0.4s, #0 + cmgt v0.4s, v31.4s, #0 + cmgt v0.2d, v0.2d, #0 + cmgt v31.2d, v0.2d, #0 + cmgt v0.2d, v31.2d, #0 + + cmeq v0.8b, v0.8b, #0 + cmeq v31.8b, v0.8b, #0 + cmeq v0.8b, v31.8b, #0 + cmeq v0.4h, v0.4h, #0 + cmeq v31.4h, v0.4h, #0 + cmeq v0.4h, v31.4h, #0 + cmeq v0.2s, v0.2s, #0 + cmeq v31.2s, v0.2s, #0 + cmeq v0.2s, v31.2s, #0 + cmeq v0.16b, v0.16b, #0 + cmeq v31.16b, v0.16b, #0 + cmeq v0.16b, v31.16b, #0 + cmeq v0.8h, v0.8h, #0 + cmeq v31.8h, v0.8h, #0 + cmeq v0.8h, v31.8h, #0 + cmeq v0.4s, v0.4s, #0 + cmeq v31.4s, v0.4s, #0 + cmeq v0.4s, v31.4s, #0 + cmeq v0.2d, v0.2d, #0 + cmeq v31.2d, v0.2d, #0 + cmeq v0.2d, v31.2d, #0 + + cmlt v0.8b, v0.8b, #0 + cmlt v31.8b, v0.8b, #0 + cmlt v0.8b, v31.8b, #0 + cmlt v0.4h, v0.4h, #0 + cmlt v31.4h, v0.4h, #0 + cmlt v0.4h, v31.4h, #0 + cmlt v0.2s, v0.2s, #0 + cmlt v31.2s, v0.2s, #0 + cmlt v0.2s, v31.2s, #0 + cmlt v0.16b, v0.16b, #0 + cmlt v31.16b, v0.16b, #0 + cmlt v0.16b, v31.16b, #0 + cmlt v0.8h, v0.8h, #0 + cmlt v31.8h, v0.8h, #0 + cmlt v0.8h, v31.8h, #0 + cmlt v0.4s, v0.4s, #0 + cmlt v31.4s, v0.4s, #0 + cmlt v0.4s, v31.4s, #0 + cmlt v0.2d, v0.2d, #0 + cmlt v31.2d, v0.2d, #0 + cmlt v0.2d, v31.2d, #0 + + abs v0.8b, v0.8b + abs v31.8b, v0.8b + abs v0.8b, v31.8b + abs v0.4h, v0.4h + abs v31.4h, v0.4h + abs v0.4h, v31.4h + abs v0.2s, v0.2s + abs v31.2s, v0.2s + abs v0.2s, v31.2s + abs v0.16b, v0.16b + abs v31.16b, v0.16b + abs v0.16b, v31.16b + abs v0.8h, v0.8h + abs v31.8h, v0.8h + abs v0.8h, v31.8h + abs v0.4s, v0.4s + abs v31.4s, v0.4s + abs v0.4s, v31.4s + abs v0.2d, v0.2d + abs v31.2d, v0.2d + abs v0.2d, v31.2d + + rev32 v0.8b, v0.8b + rev32 v31.8b, v0.8b + rev32 v0.8b, v31.8b + rev32 v0.4h, v0.4h + rev32 v31.4h, v0.4h + rev32 v0.4h, v31.4h + rev32 v0.16b, v0.16b + rev32 v31.16b, v0.16b + rev32 v0.16b, v31.16b + rev32 v0.8h, v0.8h + rev32 v31.8h, v0.8h + rev32 v0.8h, v31.8h + + uaddlp v0.4h, v0.8b + uaddlp v31.4h, v0.8b + uaddlp v0.4h, v31.8b + uaddlp v0.2s, v0.4h + uaddlp v31.2s, v0.4h + uaddlp v0.2s, v31.4h + uaddlp v0.1d, v0.2s + uaddlp v31.1d, v0.2s + uaddlp v0.1d, v31.2s + uaddlp v0.8h, v0.16b + uaddlp v31.8h, v0.16b + uaddlp v0.8h, v31.16b + uaddlp v0.4s, v0.8h + uaddlp v31.4s, v0.8h + uaddlp v0.4s, v31.8h + uaddlp v0.2d, v0.4s + uaddlp v31.2d, v0.4s + uaddlp v0.2d, v31.4s + + usqadd v0.8b, v0.8b + usqadd v31.8b, v0.8b + usqadd v0.8b, v31.8b + usqadd v0.4h, v0.4h + usqadd v31.4h, v0.4h + usqadd v0.4h, v31.4h + usqadd v0.2s, v0.2s + usqadd v31.2s, v0.2s + usqadd v0.2s, v31.2s + usqadd v0.16b, v0.16b + usqadd v31.16b, v0.16b + usqadd v0.16b, v31.16b + usqadd v0.8h, v0.8h + usqadd v31.8h, v0.8h + usqadd v0.8h, v31.8h + usqadd v0.4s, v0.4s + usqadd v31.4s, v0.4s + usqadd v0.4s, v31.4s + usqadd v0.2d, v0.2d + usqadd v31.2d, v0.2d + usqadd v0.2d, v31.2d + + clz v0.8b, v0.8b + clz v31.8b, v0.8b + clz v0.8b, v31.8b + clz v0.4h, v0.4h + clz v31.4h, v0.4h + clz v0.4h, v31.4h + clz v0.2s, v0.2s + clz v31.2s, v0.2s + clz v0.2s, v31.2s + clz v0.16b, v0.16b + clz v31.16b, v0.16b + clz v0.16b, v31.16b + clz v0.8h, v0.8h + clz v31.8h, v0.8h + clz v0.8h, v31.8h + clz v0.4s, v0.4s + clz v31.4s, v0.4s + clz v0.4s, v31.4s + + not v0.8b, v0.8b + not v31.8b, v0.8b + not v0.8b, v31.8b + not v0.16b, v0.16b + not v31.16b, v0.16b + not v0.16b, v31.16b + + mvn v0.8b, v0.8b + mvn v31.8b, v0.8b + mvn v0.8b, v31.8b + mvn v0.16b, v0.16b + mvn v31.16b, v0.16b + mvn v0.16b, v31.16b + + rbit v0.8b, v0.8b + rbit v31.8b, v0.8b + rbit v0.8b, v31.8b + rbit v0.16b, v0.16b + rbit v31.16b, v0.16b + rbit v0.16b, v31.16b + + uadalp v0.4h, v0.8b + uadalp v31.4h, v0.8b + uadalp v0.4h, v31.8b + uadalp v0.2s, v0.4h + uadalp v31.2s, v0.4h + uadalp v0.2s, v31.4h + uadalp v0.1d, v0.2s + uadalp v31.1d, v0.2s + uadalp v0.1d, v31.2s + uadalp v0.8h, v0.16b + uadalp v31.8h, v0.16b + uadalp v0.8h, v31.16b + uadalp v0.4s, v0.8h + uadalp v31.4s, v0.8h + uadalp v0.4s, v31.8h + uadalp v0.2d, v0.4s + uadalp v31.2d, v0.4s + uadalp v0.2d, v31.4s + + sqneg v0.8b, v0.8b + sqneg v31.8b, v0.8b + sqneg v0.8b, v31.8b + sqneg v0.4h, v0.4h + sqneg v31.4h, v0.4h + sqneg v0.4h, v31.4h + sqneg v0.2s, v0.2s + sqneg v31.2s, v0.2s + sqneg v0.2s, v31.2s + sqneg v0.16b, v0.16b + sqneg v31.16b, v0.16b + sqneg v0.16b, v31.16b + sqneg v0.8h, v0.8h + sqneg v31.8h, v0.8h + sqneg v0.8h, v31.8h + sqneg v0.4s, v0.4s + sqneg v31.4s, v0.4s + sqneg v0.4s, v31.4s + sqneg v0.2d, v0.2d + sqneg v31.2d, v0.2d + sqneg v0.2d, v31.2d + + cmge v0.8b, v0.8b, #0 + cmge v31.8b, v0.8b, #0 + cmge v0.8b, v31.8b, #0 + cmge v0.4h, v0.4h, #0 + cmge v31.4h, v0.4h, #0 + cmge v0.4h, v31.4h, #0 + cmge v0.2s, v0.2s, #0 + cmge v31.2s, v0.2s, #0 + cmge v0.2s, v31.2s, #0 + cmge v0.16b, v0.16b, #0 + cmge v31.16b, v0.16b, #0 + cmge v0.16b, v31.16b, #0 + cmge v0.8h, v0.8h, #0 + cmge v31.8h, v0.8h, #0 + cmge v0.8h, v31.8h, #0 + cmge v0.4s, v0.4s, #0 + cmge v31.4s, v0.4s, #0 + cmge v0.4s, v31.4s, #0 + cmge v0.2d, v0.2d, #0 + cmge v31.2d, v0.2d, #0 + cmge v0.2d, v31.2d, #0 + + cmle v0.8b, v0.8b, #0 + cmle v31.8b, v0.8b, #0 + cmle v0.8b, v31.8b, #0 + cmle v0.4h, v0.4h, #0 + cmle v31.4h, v0.4h, #0 + cmle v0.4h, v31.4h, #0 + cmle v0.2s, v0.2s, #0 + cmle v31.2s, v0.2s, #0 + cmle v0.2s, v31.2s, #0 + cmle v0.16b, v0.16b, #0 + cmle v31.16b, v0.16b, #0 + cmle v0.16b, v31.16b, #0 + cmle v0.8h, v0.8h, #0 + cmle v31.8h, v0.8h, #0 + cmle v0.8h, v31.8h, #0 + cmle v0.4s, v0.4s, #0 + cmle v31.4s, v0.4s, #0 + cmle v0.4s, v31.4s, #0 + cmle v0.2d, v0.2d, #0 + cmle v31.2d, v0.2d, #0 + cmle v0.2d, v31.2d, #0 + + neg v0.8b, v0.8b + neg v31.8b, v0.8b + neg v0.8b, v31.8b + neg v0.4h, v0.4h + neg v31.4h, v0.4h + neg v0.4h, v31.4h + neg v0.2s, v0.2s + neg v31.2s, v0.2s + neg v0.2s, v31.2s + neg v0.16b, v0.16b + neg v31.16b, v0.16b + neg v0.16b, v31.16b + neg v0.8h, v0.8h + neg v31.8h, v0.8h + neg v0.8h, v31.8h + neg v0.4s, v0.4s + neg v31.4s, v0.4s + neg v0.4s, v31.4s + neg v0.2d, v0.2d + neg v31.2d, v0.2d + neg v0.2d, v31.2d diff --git a/gas/testsuite/gas/aarch64/advsimd-widening-narrowing.d b/gas/testsuite/gas/aarch64/advsimd-widening-narrowing.d new file mode 100644 index 0000000..d7522d1 --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsimd-widening-narrowing.d @@ -0,0 +1,585 @@ +#as: -march=armv8-a +#objdump: -dr + +.*: file format .* + + +Disassembly of section \.text: + +0+ <\.text>: + *[0-9a-f]+: 0e200000 saddl v0\.8h, v0\.8b, v0\.8b + *[0-9a-f]+: 0e20001f saddl v31\.8h, v0\.8b, v0\.8b + *[0-9a-f]+: 0e2003e0 saddl v0\.8h, v31\.8b, v0\.8b + *[0-9a-f]+: 0e3f0000 saddl v0\.8h, v0\.8b, v31\.8b + *[0-9a-f]+: 0e600000 saddl v0\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 0e60001f saddl v31\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 0e6003e0 saddl v0\.4s, v31\.4h, v0\.4h + *[0-9a-f]+: 0e7f0000 saddl v0\.4s, v0\.4h, v31\.4h + *[0-9a-f]+: 0ea00000 saddl v0\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0001f saddl v31\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea003e0 saddl v0\.2d, v31\.2s, v0\.2s + *[0-9a-f]+: 0ebf0000 saddl v0\.2d, v0\.2s, v31\.2s + *[0-9a-f]+: 4e200000 saddl2 v0\.8h, v0\.16b, v0\.16b + *[0-9a-f]+: 4e20001f saddl2 v31\.8h, v0\.16b, v0\.16b + *[0-9a-f]+: 4e2003e0 saddl2 v0\.8h, v31\.16b, v0\.16b + *[0-9a-f]+: 4e3f0000 saddl2 v0\.8h, v0\.16b, v31\.16b + *[0-9a-f]+: 4e600000 saddl2 v0\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 4e60001f saddl2 v31\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 4e6003e0 saddl2 v0\.4s, v31\.8h, v0\.8h + *[0-9a-f]+: 4e7f0000 saddl2 v0\.4s, v0\.8h, v31\.8h + *[0-9a-f]+: 4ea00000 saddl2 v0\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0001f saddl2 v31\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea003e0 saddl2 v0\.2d, v31\.4s, v0\.4s + *[0-9a-f]+: 4ebf0000 saddl2 v0\.2d, v0\.4s, v31\.4s + *[0-9a-f]+: 0e201000 saddw v0\.8h, v0\.8h, v0\.8b + *[0-9a-f]+: 0e20101f saddw v31\.8h, v0\.8h, v0\.8b + *[0-9a-f]+: 0e2013e0 saddw v0\.8h, v31\.8h, v0\.8b + *[0-9a-f]+: 0e3f1000 saddw v0\.8h, v0\.8h, v31\.8b + *[0-9a-f]+: 0e601000 saddw v0\.4s, v0\.4s, v0\.4h + *[0-9a-f]+: 0e60101f saddw v31\.4s, v0\.4s, v0\.4h + *[0-9a-f]+: 0e6013e0 saddw v0\.4s, v31\.4s, v0\.4h + *[0-9a-f]+: 0e7f1000 saddw v0\.4s, v0\.4s, v31\.4h + *[0-9a-f]+: 0ea01000 saddw v0\.2d, v0\.2d, v0\.2s + *[0-9a-f]+: 0ea0101f saddw v31\.2d, v0\.2d, v0\.2s + *[0-9a-f]+: 0ea013e0 saddw v0\.2d, v31\.2d, v0\.2s + *[0-9a-f]+: 0ebf1000 saddw v0\.2d, v0\.2d, v31\.2s + *[0-9a-f]+: 4e201000 saddw2 v0\.8h, v0\.8h, v0\.16b + *[0-9a-f]+: 4e20101f saddw2 v31\.8h, v0\.8h, v0\.16b + *[0-9a-f]+: 4e2013e0 saddw2 v0\.8h, v31\.8h, v0\.16b + *[0-9a-f]+: 4e3f1000 saddw2 v0\.8h, v0\.8h, v31\.16b + *[0-9a-f]+: 4e601000 saddw2 v0\.4s, v0\.4s, v0\.8h + *[0-9a-f]+: 4e60101f saddw2 v31\.4s, v0\.4s, v0\.8h + *[0-9a-f]+: 4e6013e0 saddw2 v0\.4s, v31\.4s, v0\.8h + *[0-9a-f]+: 4e7f1000 saddw2 v0\.4s, v0\.4s, v31\.8h + *[0-9a-f]+: 4ea01000 saddw2 v0\.2d, v0\.2d, v0\.4s + *[0-9a-f]+: 4ea0101f saddw2 v31\.2d, v0\.2d, v0\.4s + *[0-9a-f]+: 4ea013e0 saddw2 v0\.2d, v31\.2d, v0\.4s + *[0-9a-f]+: 4ebf1000 saddw2 v0\.2d, v0\.2d, v31\.4s + *[0-9a-f]+: 0e202000 ssubl v0\.8h, v0\.8b, v0\.8b + *[0-9a-f]+: 0e20201f ssubl v31\.8h, v0\.8b, v0\.8b + *[0-9a-f]+: 0e2023e0 ssubl v0\.8h, v31\.8b, v0\.8b + *[0-9a-f]+: 0e3f2000 ssubl v0\.8h, v0\.8b, v31\.8b + *[0-9a-f]+: 0e602000 ssubl v0\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 0e60201f ssubl v31\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 0e6023e0 ssubl v0\.4s, v31\.4h, v0\.4h + *[0-9a-f]+: 0e7f2000 ssubl v0\.4s, v0\.4h, v31\.4h + *[0-9a-f]+: 0ea02000 ssubl v0\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0201f ssubl v31\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea023e0 ssubl v0\.2d, v31\.2s, v0\.2s + *[0-9a-f]+: 0ebf2000 ssubl v0\.2d, v0\.2s, v31\.2s + *[0-9a-f]+: 4e202000 ssubl2 v0\.8h, v0\.16b, v0\.16b + *[0-9a-f]+: 4e20201f ssubl2 v31\.8h, v0\.16b, v0\.16b + *[0-9a-f]+: 4e2023e0 ssubl2 v0\.8h, v31\.16b, v0\.16b + *[0-9a-f]+: 4e3f2000 ssubl2 v0\.8h, v0\.16b, v31\.16b + *[0-9a-f]+: 4e602000 ssubl2 v0\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 4e60201f ssubl2 v31\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 4e6023e0 ssubl2 v0\.4s, v31\.8h, v0\.8h + *[0-9a-f]+: 4e7f2000 ssubl2 v0\.4s, v0\.8h, v31\.8h + *[0-9a-f]+: 4ea02000 ssubl2 v0\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0201f ssubl2 v31\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea023e0 ssubl2 v0\.2d, v31\.4s, v0\.4s + *[0-9a-f]+: 4ebf2000 ssubl2 v0\.2d, v0\.4s, v31\.4s + *[0-9a-f]+: 0e203000 ssubw v0\.8h, v0\.8h, v0\.8b + *[0-9a-f]+: 0e20301f ssubw v31\.8h, v0\.8h, v0\.8b + *[0-9a-f]+: 0e2033e0 ssubw v0\.8h, v31\.8h, v0\.8b + *[0-9a-f]+: 0e3f3000 ssubw v0\.8h, v0\.8h, v31\.8b + *[0-9a-f]+: 0e603000 ssubw v0\.4s, v0\.4s, v0\.4h + *[0-9a-f]+: 0e60301f ssubw v31\.4s, v0\.4s, v0\.4h + *[0-9a-f]+: 0e6033e0 ssubw v0\.4s, v31\.4s, v0\.4h + *[0-9a-f]+: 0e7f3000 ssubw v0\.4s, v0\.4s, v31\.4h + *[0-9a-f]+: 0ea03000 ssubw v0\.2d, v0\.2d, v0\.2s + *[0-9a-f]+: 0ea0301f ssubw v31\.2d, v0\.2d, v0\.2s + *[0-9a-f]+: 0ea033e0 ssubw v0\.2d, v31\.2d, v0\.2s + *[0-9a-f]+: 0ebf3000 ssubw v0\.2d, v0\.2d, v31\.2s + *[0-9a-f]+: 4e203000 ssubw2 v0\.8h, v0\.8h, v0\.16b + *[0-9a-f]+: 4e20301f ssubw2 v31\.8h, v0\.8h, v0\.16b + *[0-9a-f]+: 4e2033e0 ssubw2 v0\.8h, v31\.8h, v0\.16b + *[0-9a-f]+: 4e3f3000 ssubw2 v0\.8h, v0\.8h, v31\.16b + *[0-9a-f]+: 4e603000 ssubw2 v0\.4s, v0\.4s, v0\.8h + *[0-9a-f]+: 4e60301f ssubw2 v31\.4s, v0\.4s, v0\.8h + *[0-9a-f]+: 4e6033e0 ssubw2 v0\.4s, v31\.4s, v0\.8h + *[0-9a-f]+: 4e7f3000 ssubw2 v0\.4s, v0\.4s, v31\.8h + *[0-9a-f]+: 4ea03000 ssubw2 v0\.2d, v0\.2d, v0\.4s + *[0-9a-f]+: 4ea0301f ssubw2 v31\.2d, v0\.2d, v0\.4s + *[0-9a-f]+: 4ea033e0 ssubw2 v0\.2d, v31\.2d, v0\.4s + *[0-9a-f]+: 4ebf3000 ssubw2 v0\.2d, v0\.2d, v31\.4s + *[0-9a-f]+: 0e204000 addhn v0\.8b, v0\.8h, v0\.8h + *[0-9a-f]+: 0e20401f addhn v31\.8b, v0\.8h, v0\.8h + *[0-9a-f]+: 0e2043e0 addhn v0\.8b, v31\.8h, v0\.8h + *[0-9a-f]+: 0e3f4000 addhn v0\.8b, v0\.8h, v31\.8h + *[0-9a-f]+: 0e604000 addhn v0\.4h, v0\.4s, v0\.4s + *[0-9a-f]+: 0e60401f addhn v31\.4h, v0\.4s, v0\.4s + *[0-9a-f]+: 0e6043e0 addhn v0\.4h, v31\.4s, v0\.4s + *[0-9a-f]+: 0e7f4000 addhn v0\.4h, v0\.4s, v31\.4s + *[0-9a-f]+: 0ea04000 addhn v0\.2s, v0\.2d, v0\.2d + *[0-9a-f]+: 0ea0401f addhn v31\.2s, v0\.2d, v0\.2d + *[0-9a-f]+: 0ea043e0 addhn v0\.2s, v31\.2d, v0\.2d + *[0-9a-f]+: 0ebf4000 addhn v0\.2s, v0\.2d, v31\.2d + *[0-9a-f]+: 4e204000 addhn2 v0\.16b, v0\.8h, v0\.8h + *[0-9a-f]+: 4e20401f addhn2 v31\.16b, v0\.8h, v0\.8h + *[0-9a-f]+: 4e2043e0 addhn2 v0\.16b, v31\.8h, v0\.8h + *[0-9a-f]+: 4e3f4000 addhn2 v0\.16b, v0\.8h, v31\.8h + *[0-9a-f]+: 4e604000 addhn2 v0\.8h, v0\.4s, v0\.4s + *[0-9a-f]+: 4e60401f addhn2 v31\.8h, v0\.4s, v0\.4s + *[0-9a-f]+: 4e6043e0 addhn2 v0\.8h, v31\.4s, v0\.4s + *[0-9a-f]+: 4e7f4000 addhn2 v0\.8h, v0\.4s, v31\.4s + *[0-9a-f]+: 4ea04000 addhn2 v0\.4s, v0\.2d, v0\.2d + *[0-9a-f]+: 4ea0401f addhn2 v31\.4s, v0\.2d, v0\.2d + *[0-9a-f]+: 4ea043e0 addhn2 v0\.4s, v31\.2d, v0\.2d + *[0-9a-f]+: 4ebf4000 addhn2 v0\.4s, v0\.2d, v31\.2d + *[0-9a-f]+: 0e205000 sabal v0\.8h, v0\.8b, v0\.8b + *[0-9a-f]+: 0e20501f sabal v31\.8h, v0\.8b, v0\.8b + *[0-9a-f]+: 0e2053e0 sabal v0\.8h, v31\.8b, v0\.8b + *[0-9a-f]+: 0e3f5000 sabal v0\.8h, v0\.8b, v31\.8b + *[0-9a-f]+: 0e605000 sabal v0\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 0e60501f sabal v31\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 0e6053e0 sabal v0\.4s, v31\.4h, v0\.4h + *[0-9a-f]+: 0e7f5000 sabal v0\.4s, v0\.4h, v31\.4h + *[0-9a-f]+: 0ea05000 sabal v0\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0501f sabal v31\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea053e0 sabal v0\.2d, v31\.2s, v0\.2s + *[0-9a-f]+: 0ebf5000 sabal v0\.2d, v0\.2s, v31\.2s + *[0-9a-f]+: 4e205000 sabal2 v0\.8h, v0\.16b, v0\.16b + *[0-9a-f]+: 4e20501f sabal2 v31\.8h, v0\.16b, v0\.16b + *[0-9a-f]+: 4e2053e0 sabal2 v0\.8h, v31\.16b, v0\.16b + *[0-9a-f]+: 4e3f5000 sabal2 v0\.8h, v0\.16b, v31\.16b + *[0-9a-f]+: 4e605000 sabal2 v0\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 4e60501f sabal2 v31\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 4e6053e0 sabal2 v0\.4s, v31\.8h, v0\.8h + *[0-9a-f]+: 4e7f5000 sabal2 v0\.4s, v0\.8h, v31\.8h + *[0-9a-f]+: 4ea05000 sabal2 v0\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0501f sabal2 v31\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea053e0 sabal2 v0\.2d, v31\.4s, v0\.4s + *[0-9a-f]+: 4ebf5000 sabal2 v0\.2d, v0\.4s, v31\.4s + *[0-9a-f]+: 0e206000 subhn v0\.8b, v0\.8h, v0\.8h + *[0-9a-f]+: 0e20601f subhn v31\.8b, v0\.8h, v0\.8h + *[0-9a-f]+: 0e2063e0 subhn v0\.8b, v31\.8h, v0\.8h + *[0-9a-f]+: 0e3f6000 subhn v0\.8b, v0\.8h, v31\.8h + *[0-9a-f]+: 0e606000 subhn v0\.4h, v0\.4s, v0\.4s + *[0-9a-f]+: 0e60601f subhn v31\.4h, v0\.4s, v0\.4s + *[0-9a-f]+: 0e6063e0 subhn v0\.4h, v31\.4s, v0\.4s + *[0-9a-f]+: 0e7f6000 subhn v0\.4h, v0\.4s, v31\.4s + *[0-9a-f]+: 0ea06000 subhn v0\.2s, v0\.2d, v0\.2d + *[0-9a-f]+: 0ea0601f subhn v31\.2s, v0\.2d, v0\.2d + *[0-9a-f]+: 0ea063e0 subhn v0\.2s, v31\.2d, v0\.2d + *[0-9a-f]+: 0ebf6000 subhn v0\.2s, v0\.2d, v31\.2d + *[0-9a-f]+: 4e206000 subhn2 v0\.16b, v0\.8h, v0\.8h + *[0-9a-f]+: 4e20601f subhn2 v31\.16b, v0\.8h, v0\.8h + *[0-9a-f]+: 4e2063e0 subhn2 v0\.16b, v31\.8h, v0\.8h + *[0-9a-f]+: 4e3f6000 subhn2 v0\.16b, v0\.8h, v31\.8h + *[0-9a-f]+: 4e606000 subhn2 v0\.8h, v0\.4s, v0\.4s + *[0-9a-f]+: 4e60601f subhn2 v31\.8h, v0\.4s, v0\.4s + *[0-9a-f]+: 4e6063e0 subhn2 v0\.8h, v31\.4s, v0\.4s + *[0-9a-f]+: 4e7f6000 subhn2 v0\.8h, v0\.4s, v31\.4s + *[0-9a-f]+: 4ea06000 subhn2 v0\.4s, v0\.2d, v0\.2d + *[0-9a-f]+: 4ea0601f subhn2 v31\.4s, v0\.2d, v0\.2d + *[0-9a-f]+: 4ea063e0 subhn2 v0\.4s, v31\.2d, v0\.2d + *[0-9a-f]+: 4ebf6000 subhn2 v0\.4s, v0\.2d, v31\.2d + *[0-9a-f]+: 0e207000 sabdl v0\.8h, v0\.8b, v0\.8b + *[0-9a-f]+: 0e20701f sabdl v31\.8h, v0\.8b, v0\.8b + *[0-9a-f]+: 0e2073e0 sabdl v0\.8h, v31\.8b, v0\.8b + *[0-9a-f]+: 0e3f7000 sabdl v0\.8h, v0\.8b, v31\.8b + *[0-9a-f]+: 0e607000 sabdl v0\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 0e60701f sabdl v31\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 0e6073e0 sabdl v0\.4s, v31\.4h, v0\.4h + *[0-9a-f]+: 0e7f7000 sabdl v0\.4s, v0\.4h, v31\.4h + *[0-9a-f]+: 0ea07000 sabdl v0\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0701f sabdl v31\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea073e0 sabdl v0\.2d, v31\.2s, v0\.2s + *[0-9a-f]+: 0ebf7000 sabdl v0\.2d, v0\.2s, v31\.2s + *[0-9a-f]+: 4e207000 sabdl2 v0\.8h, v0\.16b, v0\.16b + *[0-9a-f]+: 4e20701f sabdl2 v31\.8h, v0\.16b, v0\.16b + *[0-9a-f]+: 4e2073e0 sabdl2 v0\.8h, v31\.16b, v0\.16b + *[0-9a-f]+: 4e3f7000 sabdl2 v0\.8h, v0\.16b, v31\.16b + *[0-9a-f]+: 4e607000 sabdl2 v0\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 4e60701f sabdl2 v31\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 4e6073e0 sabdl2 v0\.4s, v31\.8h, v0\.8h + *[0-9a-f]+: 4e7f7000 sabdl2 v0\.4s, v0\.8h, v31\.8h + *[0-9a-f]+: 4ea07000 sabdl2 v0\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0701f sabdl2 v31\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea073e0 sabdl2 v0\.2d, v31\.4s, v0\.4s + *[0-9a-f]+: 4ebf7000 sabdl2 v0\.2d, v0\.4s, v31\.4s + *[0-9a-f]+: 0e208000 smlal v0\.8h, v0\.8b, v0\.8b + *[0-9a-f]+: 0e20801f smlal v31\.8h, v0\.8b, v0\.8b + *[0-9a-f]+: 0e2083e0 smlal v0\.8h, v31\.8b, v0\.8b + *[0-9a-f]+: 0e3f8000 smlal v0\.8h, v0\.8b, v31\.8b + *[0-9a-f]+: 0e608000 smlal v0\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 0e60801f smlal v31\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 0e6083e0 smlal v0\.4s, v31\.4h, v0\.4h + *[0-9a-f]+: 0e7f8000 smlal v0\.4s, v0\.4h, v31\.4h + *[0-9a-f]+: 0ea08000 smlal v0\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0801f smlal v31\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea083e0 smlal v0\.2d, v31\.2s, v0\.2s + *[0-9a-f]+: 0ebf8000 smlal v0\.2d, v0\.2s, v31\.2s + *[0-9a-f]+: 4e208000 smlal2 v0\.8h, v0\.16b, v0\.16b + *[0-9a-f]+: 4e20801f smlal2 v31\.8h, v0\.16b, v0\.16b + *[0-9a-f]+: 4e2083e0 smlal2 v0\.8h, v31\.16b, v0\.16b + *[0-9a-f]+: 4e3f8000 smlal2 v0\.8h, v0\.16b, v31\.16b + *[0-9a-f]+: 4e608000 smlal2 v0\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 4e60801f smlal2 v31\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 4e6083e0 smlal2 v0\.4s, v31\.8h, v0\.8h + *[0-9a-f]+: 4e7f8000 smlal2 v0\.4s, v0\.8h, v31\.8h + *[0-9a-f]+: 4ea08000 smlal2 v0\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0801f smlal2 v31\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea083e0 smlal2 v0\.2d, v31\.4s, v0\.4s + *[0-9a-f]+: 4ebf8000 smlal2 v0\.2d, v0\.4s, v31\.4s + *[0-9a-f]+: 0e609000 sqdmlal v0\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 0e60901f sqdmlal v31\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 0e6093e0 sqdmlal v0\.4s, v31\.4h, v0\.4h + *[0-9a-f]+: 0e7f9000 sqdmlal v0\.4s, v0\.4h, v31\.4h + *[0-9a-f]+: 0ea09000 sqdmlal v0\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0901f sqdmlal v31\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea093e0 sqdmlal v0\.2d, v31\.2s, v0\.2s + *[0-9a-f]+: 0ebf9000 sqdmlal v0\.2d, v0\.2s, v31\.2s + *[0-9a-f]+: 4e609000 sqdmlal2 v0\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 4e60901f sqdmlal2 v31\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 4e6093e0 sqdmlal2 v0\.4s, v31\.8h, v0\.8h + *[0-9a-f]+: 4e7f9000 sqdmlal2 v0\.4s, v0\.8h, v31\.8h + *[0-9a-f]+: 4ea09000 sqdmlal2 v0\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0901f sqdmlal2 v31\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea093e0 sqdmlal2 v0\.2d, v31\.4s, v0\.4s + *[0-9a-f]+: 4ebf9000 sqdmlal2 v0\.2d, v0\.4s, v31\.4s + *[0-9a-f]+: 0e20a000 smlsl v0\.8h, v0\.8b, v0\.8b + *[0-9a-f]+: 0e20a01f smlsl v31\.8h, v0\.8b, v0\.8b + *[0-9a-f]+: 0e20a3e0 smlsl v0\.8h, v31\.8b, v0\.8b + *[0-9a-f]+: 0e3fa000 smlsl v0\.8h, v0\.8b, v31\.8b + *[0-9a-f]+: 0e60a000 smlsl v0\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 0e60a01f smlsl v31\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 0e60a3e0 smlsl v0\.4s, v31\.4h, v0\.4h + *[0-9a-f]+: 0e7fa000 smlsl v0\.4s, v0\.4h, v31\.4h + *[0-9a-f]+: 0ea0a000 smlsl v0\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0a01f smlsl v31\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0a3e0 smlsl v0\.2d, v31\.2s, v0\.2s + *[0-9a-f]+: 0ebfa000 smlsl v0\.2d, v0\.2s, v31\.2s + *[0-9a-f]+: 4e20a000 smlsl2 v0\.8h, v0\.16b, v0\.16b + *[0-9a-f]+: 4e20a01f smlsl2 v31\.8h, v0\.16b, v0\.16b + *[0-9a-f]+: 4e20a3e0 smlsl2 v0\.8h, v31\.16b, v0\.16b + *[0-9a-f]+: 4e3fa000 smlsl2 v0\.8h, v0\.16b, v31\.16b + *[0-9a-f]+: 4e60a000 smlsl2 v0\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 4e60a01f smlsl2 v31\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 4e60a3e0 smlsl2 v0\.4s, v31\.8h, v0\.8h + *[0-9a-f]+: 4e7fa000 smlsl2 v0\.4s, v0\.8h, v31\.8h + *[0-9a-f]+: 4ea0a000 smlsl2 v0\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0a01f smlsl2 v31\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0a3e0 smlsl2 v0\.2d, v31\.4s, v0\.4s + *[0-9a-f]+: 4ebfa000 smlsl2 v0\.2d, v0\.4s, v31\.4s + *[0-9a-f]+: 0e60b000 sqdmlsl v0\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 0e60b01f sqdmlsl v31\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 0e60b3e0 sqdmlsl v0\.4s, v31\.4h, v0\.4h + *[0-9a-f]+: 0e7fb000 sqdmlsl v0\.4s, v0\.4h, v31\.4h + *[0-9a-f]+: 0ea0b000 sqdmlsl v0\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0b01f sqdmlsl v31\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0b3e0 sqdmlsl v0\.2d, v31\.2s, v0\.2s + *[0-9a-f]+: 0ebfb000 sqdmlsl v0\.2d, v0\.2s, v31\.2s + *[0-9a-f]+: 4e60b000 sqdmlsl2 v0\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 4e60b01f sqdmlsl2 v31\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 4e60b3e0 sqdmlsl2 v0\.4s, v31\.8h, v0\.8h + *[0-9a-f]+: 4e7fb000 sqdmlsl2 v0\.4s, v0\.8h, v31\.8h + *[0-9a-f]+: 4ea0b000 sqdmlsl2 v0\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0b01f sqdmlsl2 v31\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0b3e0 sqdmlsl2 v0\.2d, v31\.4s, v0\.4s + *[0-9a-f]+: 4ebfb000 sqdmlsl2 v0\.2d, v0\.4s, v31\.4s + *[0-9a-f]+: 0e20c000 smull v0\.8h, v0\.8b, v0\.8b + *[0-9a-f]+: 0e20c01f smull v31\.8h, v0\.8b, v0\.8b + *[0-9a-f]+: 0e20c3e0 smull v0\.8h, v31\.8b, v0\.8b + *[0-9a-f]+: 0e3fc000 smull v0\.8h, v0\.8b, v31\.8b + *[0-9a-f]+: 0e60c000 smull v0\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 0e60c01f smull v31\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 0e60c3e0 smull v0\.4s, v31\.4h, v0\.4h + *[0-9a-f]+: 0e7fc000 smull v0\.4s, v0\.4h, v31\.4h + *[0-9a-f]+: 0ea0c000 smull v0\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0c01f smull v31\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0c3e0 smull v0\.2d, v31\.2s, v0\.2s + *[0-9a-f]+: 0ebfc000 smull v0\.2d, v0\.2s, v31\.2s + *[0-9a-f]+: 4e20c000 smull2 v0\.8h, v0\.16b, v0\.16b + *[0-9a-f]+: 4e20c01f smull2 v31\.8h, v0\.16b, v0\.16b + *[0-9a-f]+: 4e20c3e0 smull2 v0\.8h, v31\.16b, v0\.16b + *[0-9a-f]+: 4e3fc000 smull2 v0\.8h, v0\.16b, v31\.16b + *[0-9a-f]+: 4e60c000 smull2 v0\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 4e60c01f smull2 v31\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 4e60c3e0 smull2 v0\.4s, v31\.8h, v0\.8h + *[0-9a-f]+: 4e7fc000 smull2 v0\.4s, v0\.8h, v31\.8h + *[0-9a-f]+: 4ea0c000 smull2 v0\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0c01f smull2 v31\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0c3e0 smull2 v0\.2d, v31\.4s, v0\.4s + *[0-9a-f]+: 4ebfc000 smull2 v0\.2d, v0\.4s, v31\.4s + *[0-9a-f]+: 0e60d000 sqdmull v0\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 0e60d01f sqdmull v31\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 0e60d3e0 sqdmull v0\.4s, v31\.4h, v0\.4h + *[0-9a-f]+: 0e7fd000 sqdmull v0\.4s, v0\.4h, v31\.4h + *[0-9a-f]+: 0ea0d000 sqdmull v0\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0d01f sqdmull v31\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 0ea0d3e0 sqdmull v0\.2d, v31\.2s, v0\.2s + *[0-9a-f]+: 0ebfd000 sqdmull v0\.2d, v0\.2s, v31\.2s + *[0-9a-f]+: 4e60d000 sqdmull2 v0\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 4e60d01f sqdmull2 v31\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 4e60d3e0 sqdmull2 v0\.4s, v31\.8h, v0\.8h + *[0-9a-f]+: 4e7fd000 sqdmull2 v0\.4s, v0\.8h, v31\.8h + *[0-9a-f]+: 4ea0d000 sqdmull2 v0\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0d01f sqdmull2 v31\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 4ea0d3e0 sqdmull2 v0\.2d, v31\.4s, v0\.4s + *[0-9a-f]+: 4ebfd000 sqdmull2 v0\.2d, v0\.4s, v31\.4s + *[0-9a-f]+: 2e200000 uaddl v0\.8h, v0\.8b, v0\.8b + *[0-9a-f]+: 2e20001f uaddl v31\.8h, v0\.8b, v0\.8b + *[0-9a-f]+: 2e2003e0 uaddl v0\.8h, v31\.8b, v0\.8b + *[0-9a-f]+: 2e3f0000 uaddl v0\.8h, v0\.8b, v31\.8b + *[0-9a-f]+: 2e600000 uaddl v0\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 2e60001f uaddl v31\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 2e6003e0 uaddl v0\.4s, v31\.4h, v0\.4h + *[0-9a-f]+: 2e7f0000 uaddl v0\.4s, v0\.4h, v31\.4h + *[0-9a-f]+: 2ea00000 uaddl v0\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea0001f uaddl v31\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea003e0 uaddl v0\.2d, v31\.2s, v0\.2s + *[0-9a-f]+: 2ebf0000 uaddl v0\.2d, v0\.2s, v31\.2s + *[0-9a-f]+: 6e200000 uaddl2 v0\.8h, v0\.16b, v0\.16b + *[0-9a-f]+: 6e20001f uaddl2 v31\.8h, v0\.16b, v0\.16b + *[0-9a-f]+: 6e2003e0 uaddl2 v0\.8h, v31\.16b, v0\.16b + *[0-9a-f]+: 6e3f0000 uaddl2 v0\.8h, v0\.16b, v31\.16b + *[0-9a-f]+: 6e600000 uaddl2 v0\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 6e60001f uaddl2 v31\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 6e6003e0 uaddl2 v0\.4s, v31\.8h, v0\.8h + *[0-9a-f]+: 6e7f0000 uaddl2 v0\.4s, v0\.8h, v31\.8h + *[0-9a-f]+: 6ea00000 uaddl2 v0\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea0001f uaddl2 v31\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea003e0 uaddl2 v0\.2d, v31\.4s, v0\.4s + *[0-9a-f]+: 6ebf0000 uaddl2 v0\.2d, v0\.4s, v31\.4s + *[0-9a-f]+: 2e201000 uaddw v0\.8h, v0\.8h, v0\.8b + *[0-9a-f]+: 2e20101f uaddw v31\.8h, v0\.8h, v0\.8b + *[0-9a-f]+: 2e2013e0 uaddw v0\.8h, v31\.8h, v0\.8b + *[0-9a-f]+: 2e3f1000 uaddw v0\.8h, v0\.8h, v31\.8b + *[0-9a-f]+: 2e601000 uaddw v0\.4s, v0\.4s, v0\.4h + *[0-9a-f]+: 2e60101f uaddw v31\.4s, v0\.4s, v0\.4h + *[0-9a-f]+: 2e6013e0 uaddw v0\.4s, v31\.4s, v0\.4h + *[0-9a-f]+: 2e7f1000 uaddw v0\.4s, v0\.4s, v31\.4h + *[0-9a-f]+: 2ea01000 uaddw v0\.2d, v0\.2d, v0\.2s + *[0-9a-f]+: 2ea0101f uaddw v31\.2d, v0\.2d, v0\.2s + *[0-9a-f]+: 2ea013e0 uaddw v0\.2d, v31\.2d, v0\.2s + *[0-9a-f]+: 2ebf1000 uaddw v0\.2d, v0\.2d, v31\.2s + *[0-9a-f]+: 6e201000 uaddw2 v0\.8h, v0\.8h, v0\.16b + *[0-9a-f]+: 6e20101f uaddw2 v31\.8h, v0\.8h, v0\.16b + *[0-9a-f]+: 6e2013e0 uaddw2 v0\.8h, v31\.8h, v0\.16b + *[0-9a-f]+: 6e3f1000 uaddw2 v0\.8h, v0\.8h, v31\.16b + *[0-9a-f]+: 6e601000 uaddw2 v0\.4s, v0\.4s, v0\.8h + *[0-9a-f]+: 6e60101f uaddw2 v31\.4s, v0\.4s, v0\.8h + *[0-9a-f]+: 6e6013e0 uaddw2 v0\.4s, v31\.4s, v0\.8h + *[0-9a-f]+: 6e7f1000 uaddw2 v0\.4s, v0\.4s, v31\.8h + *[0-9a-f]+: 6ea01000 uaddw2 v0\.2d, v0\.2d, v0\.4s + *[0-9a-f]+: 6ea0101f uaddw2 v31\.2d, v0\.2d, v0\.4s + *[0-9a-f]+: 6ea013e0 uaddw2 v0\.2d, v31\.2d, v0\.4s + *[0-9a-f]+: 6ebf1000 uaddw2 v0\.2d, v0\.2d, v31\.4s + *[0-9a-f]+: 2e202000 usubl v0\.8h, v0\.8b, v0\.8b + *[0-9a-f]+: 2e20201f usubl v31\.8h, v0\.8b, v0\.8b + *[0-9a-f]+: 2e2023e0 usubl v0\.8h, v31\.8b, v0\.8b + *[0-9a-f]+: 2e3f2000 usubl v0\.8h, v0\.8b, v31\.8b + *[0-9a-f]+: 2e602000 usubl v0\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 2e60201f usubl v31\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 2e6023e0 usubl v0\.4s, v31\.4h, v0\.4h + *[0-9a-f]+: 2e7f2000 usubl v0\.4s, v0\.4h, v31\.4h + *[0-9a-f]+: 2ea02000 usubl v0\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea0201f usubl v31\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea023e0 usubl v0\.2d, v31\.2s, v0\.2s + *[0-9a-f]+: 2ebf2000 usubl v0\.2d, v0\.2s, v31\.2s + *[0-9a-f]+: 6e202000 usubl2 v0\.8h, v0\.16b, v0\.16b + *[0-9a-f]+: 6e20201f usubl2 v31\.8h, v0\.16b, v0\.16b + *[0-9a-f]+: 6e2023e0 usubl2 v0\.8h, v31\.16b, v0\.16b + *[0-9a-f]+: 6e3f2000 usubl2 v0\.8h, v0\.16b, v31\.16b + *[0-9a-f]+: 6e602000 usubl2 v0\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 6e60201f usubl2 v31\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 6e6023e0 usubl2 v0\.4s, v31\.8h, v0\.8h + *[0-9a-f]+: 6e7f2000 usubl2 v0\.4s, v0\.8h, v31\.8h + *[0-9a-f]+: 6ea02000 usubl2 v0\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea0201f usubl2 v31\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea023e0 usubl2 v0\.2d, v31\.4s, v0\.4s + *[0-9a-f]+: 6ebf2000 usubl2 v0\.2d, v0\.4s, v31\.4s + *[0-9a-f]+: 2e203000 usubw v0\.8h, v0\.8h, v0\.8b + *[0-9a-f]+: 2e20301f usubw v31\.8h, v0\.8h, v0\.8b + *[0-9a-f]+: 2e2033e0 usubw v0\.8h, v31\.8h, v0\.8b + *[0-9a-f]+: 2e3f3000 usubw v0\.8h, v0\.8h, v31\.8b + *[0-9a-f]+: 2e603000 usubw v0\.4s, v0\.4s, v0\.4h + *[0-9a-f]+: 2e60301f usubw v31\.4s, v0\.4s, v0\.4h + *[0-9a-f]+: 2e6033e0 usubw v0\.4s, v31\.4s, v0\.4h + *[0-9a-f]+: 2e7f3000 usubw v0\.4s, v0\.4s, v31\.4h + *[0-9a-f]+: 2ea03000 usubw v0\.2d, v0\.2d, v0\.2s + *[0-9a-f]+: 2ea0301f usubw v31\.2d, v0\.2d, v0\.2s + *[0-9a-f]+: 2ea033e0 usubw v0\.2d, v31\.2d, v0\.2s + *[0-9a-f]+: 2ebf3000 usubw v0\.2d, v0\.2d, v31\.2s + *[0-9a-f]+: 6e203000 usubw2 v0\.8h, v0\.8h, v0\.16b + *[0-9a-f]+: 6e20301f usubw2 v31\.8h, v0\.8h, v0\.16b + *[0-9a-f]+: 6e2033e0 usubw2 v0\.8h, v31\.8h, v0\.16b + *[0-9a-f]+: 6e3f3000 usubw2 v0\.8h, v0\.8h, v31\.16b + *[0-9a-f]+: 6e603000 usubw2 v0\.4s, v0\.4s, v0\.8h + *[0-9a-f]+: 6e60301f usubw2 v31\.4s, v0\.4s, v0\.8h + *[0-9a-f]+: 6e6033e0 usubw2 v0\.4s, v31\.4s, v0\.8h + *[0-9a-f]+: 6e7f3000 usubw2 v0\.4s, v0\.4s, v31\.8h + *[0-9a-f]+: 6ea03000 usubw2 v0\.2d, v0\.2d, v0\.4s + *[0-9a-f]+: 6ea0301f usubw2 v31\.2d, v0\.2d, v0\.4s + *[0-9a-f]+: 6ea033e0 usubw2 v0\.2d, v31\.2d, v0\.4s + *[0-9a-f]+: 6ebf3000 usubw2 v0\.2d, v0\.2d, v31\.4s + *[0-9a-f]+: 2e204000 raddhn v0\.8b, v0\.8h, v0\.8h + *[0-9a-f]+: 2e20401f raddhn v31\.8b, v0\.8h, v0\.8h + *[0-9a-f]+: 2e2043e0 raddhn v0\.8b, v31\.8h, v0\.8h + *[0-9a-f]+: 2e3f4000 raddhn v0\.8b, v0\.8h, v31\.8h + *[0-9a-f]+: 2e604000 raddhn v0\.4h, v0\.4s, v0\.4s + *[0-9a-f]+: 2e60401f raddhn v31\.4h, v0\.4s, v0\.4s + *[0-9a-f]+: 2e6043e0 raddhn v0\.4h, v31\.4s, v0\.4s + *[0-9a-f]+: 2e7f4000 raddhn v0\.4h, v0\.4s, v31\.4s + *[0-9a-f]+: 2ea04000 raddhn v0\.2s, v0\.2d, v0\.2d + *[0-9a-f]+: 2ea0401f raddhn v31\.2s, v0\.2d, v0\.2d + *[0-9a-f]+: 2ea043e0 raddhn v0\.2s, v31\.2d, v0\.2d + *[0-9a-f]+: 2ebf4000 raddhn v0\.2s, v0\.2d, v31\.2d + *[0-9a-f]+: 6e204000 raddhn2 v0\.16b, v0\.8h, v0\.8h + *[0-9a-f]+: 6e20401f raddhn2 v31\.16b, v0\.8h, v0\.8h + *[0-9a-f]+: 6e2043e0 raddhn2 v0\.16b, v31\.8h, v0\.8h + *[0-9a-f]+: 6e3f4000 raddhn2 v0\.16b, v0\.8h, v31\.8h + *[0-9a-f]+: 6e604000 raddhn2 v0\.8h, v0\.4s, v0\.4s + *[0-9a-f]+: 6e60401f raddhn2 v31\.8h, v0\.4s, v0\.4s + *[0-9a-f]+: 6e6043e0 raddhn2 v0\.8h, v31\.4s, v0\.4s + *[0-9a-f]+: 6e7f4000 raddhn2 v0\.8h, v0\.4s, v31\.4s + *[0-9a-f]+: 6ea04000 raddhn2 v0\.4s, v0\.2d, v0\.2d + *[0-9a-f]+: 6ea0401f raddhn2 v31\.4s, v0\.2d, v0\.2d + *[0-9a-f]+: 6ea043e0 raddhn2 v0\.4s, v31\.2d, v0\.2d + *[0-9a-f]+: 6ebf4000 raddhn2 v0\.4s, v0\.2d, v31\.2d + *[0-9a-f]+: 2e205000 uabal v0\.8h, v0\.8b, v0\.8b + *[0-9a-f]+: 2e20501f uabal v31\.8h, v0\.8b, v0\.8b + *[0-9a-f]+: 2e2053e0 uabal v0\.8h, v31\.8b, v0\.8b + *[0-9a-f]+: 2e3f5000 uabal v0\.8h, v0\.8b, v31\.8b + *[0-9a-f]+: 2e605000 uabal v0\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 2e60501f uabal v31\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 2e6053e0 uabal v0\.4s, v31\.4h, v0\.4h + *[0-9a-f]+: 2e7f5000 uabal v0\.4s, v0\.4h, v31\.4h + *[0-9a-f]+: 2ea05000 uabal v0\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea0501f uabal v31\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea053e0 uabal v0\.2d, v31\.2s, v0\.2s + *[0-9a-f]+: 2ebf5000 uabal v0\.2d, v0\.2s, v31\.2s + *[0-9a-f]+: 6e205000 uabal2 v0\.8h, v0\.16b, v0\.16b + *[0-9a-f]+: 6e20501f uabal2 v31\.8h, v0\.16b, v0\.16b + *[0-9a-f]+: 6e2053e0 uabal2 v0\.8h, v31\.16b, v0\.16b + *[0-9a-f]+: 6e3f5000 uabal2 v0\.8h, v0\.16b, v31\.16b + *[0-9a-f]+: 6e605000 uabal2 v0\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 6e60501f uabal2 v31\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 6e6053e0 uabal2 v0\.4s, v31\.8h, v0\.8h + *[0-9a-f]+: 6e7f5000 uabal2 v0\.4s, v0\.8h, v31\.8h + *[0-9a-f]+: 6ea05000 uabal2 v0\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea0501f uabal2 v31\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea053e0 uabal2 v0\.2d, v31\.4s, v0\.4s + *[0-9a-f]+: 6ebf5000 uabal2 v0\.2d, v0\.4s, v31\.4s + *[0-9a-f]+: 2e206000 rsubhn v0\.8b, v0\.8h, v0\.8h + *[0-9a-f]+: 2e20601f rsubhn v31\.8b, v0\.8h, v0\.8h + *[0-9a-f]+: 2e2063e0 rsubhn v0\.8b, v31\.8h, v0\.8h + *[0-9a-f]+: 2e3f6000 rsubhn v0\.8b, v0\.8h, v31\.8h + *[0-9a-f]+: 2e606000 rsubhn v0\.4h, v0\.4s, v0\.4s + *[0-9a-f]+: 2e60601f rsubhn v31\.4h, v0\.4s, v0\.4s + *[0-9a-f]+: 2e6063e0 rsubhn v0\.4h, v31\.4s, v0\.4s + *[0-9a-f]+: 2e7f6000 rsubhn v0\.4h, v0\.4s, v31\.4s + *[0-9a-f]+: 2ea06000 rsubhn v0\.2s, v0\.2d, v0\.2d + *[0-9a-f]+: 2ea0601f rsubhn v31\.2s, v0\.2d, v0\.2d + *[0-9a-f]+: 2ea063e0 rsubhn v0\.2s, v31\.2d, v0\.2d + *[0-9a-f]+: 2ebf6000 rsubhn v0\.2s, v0\.2d, v31\.2d + *[0-9a-f]+: 6e206000 rsubhn2 v0\.16b, v0\.8h, v0\.8h + *[0-9a-f]+: 6e20601f rsubhn2 v31\.16b, v0\.8h, v0\.8h + *[0-9a-f]+: 6e2063e0 rsubhn2 v0\.16b, v31\.8h, v0\.8h + *[0-9a-f]+: 6e3f6000 rsubhn2 v0\.16b, v0\.8h, v31\.8h + *[0-9a-f]+: 6e606000 rsubhn2 v0\.8h, v0\.4s, v0\.4s + *[0-9a-f]+: 6e60601f rsubhn2 v31\.8h, v0\.4s, v0\.4s + *[0-9a-f]+: 6e6063e0 rsubhn2 v0\.8h, v31\.4s, v0\.4s + *[0-9a-f]+: 6e7f6000 rsubhn2 v0\.8h, v0\.4s, v31\.4s + *[0-9a-f]+: 6ea06000 rsubhn2 v0\.4s, v0\.2d, v0\.2d + *[0-9a-f]+: 6ea0601f rsubhn2 v31\.4s, v0\.2d, v0\.2d + *[0-9a-f]+: 6ea063e0 rsubhn2 v0\.4s, v31\.2d, v0\.2d + *[0-9a-f]+: 6ebf6000 rsubhn2 v0\.4s, v0\.2d, v31\.2d + *[0-9a-f]+: 2e207000 uabdl v0\.8h, v0\.8b, v0\.8b + *[0-9a-f]+: 2e20701f uabdl v31\.8h, v0\.8b, v0\.8b + *[0-9a-f]+: 2e2073e0 uabdl v0\.8h, v31\.8b, v0\.8b + *[0-9a-f]+: 2e3f7000 uabdl v0\.8h, v0\.8b, v31\.8b + *[0-9a-f]+: 2e607000 uabdl v0\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 2e60701f uabdl v31\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 2e6073e0 uabdl v0\.4s, v31\.4h, v0\.4h + *[0-9a-f]+: 2e7f7000 uabdl v0\.4s, v0\.4h, v31\.4h + *[0-9a-f]+: 2ea07000 uabdl v0\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea0701f uabdl v31\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea073e0 uabdl v0\.2d, v31\.2s, v0\.2s + *[0-9a-f]+: 2ebf7000 uabdl v0\.2d, v0\.2s, v31\.2s + *[0-9a-f]+: 6e207000 uabdl2 v0\.8h, v0\.16b, v0\.16b + *[0-9a-f]+: 6e20701f uabdl2 v31\.8h, v0\.16b, v0\.16b + *[0-9a-f]+: 6e2073e0 uabdl2 v0\.8h, v31\.16b, v0\.16b + *[0-9a-f]+: 6e3f7000 uabdl2 v0\.8h, v0\.16b, v31\.16b + *[0-9a-f]+: 6e607000 uabdl2 v0\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 6e60701f uabdl2 v31\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 6e6073e0 uabdl2 v0\.4s, v31\.8h, v0\.8h + *[0-9a-f]+: 6e7f7000 uabdl2 v0\.4s, v0\.8h, v31\.8h + *[0-9a-f]+: 6ea07000 uabdl2 v0\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea0701f uabdl2 v31\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea073e0 uabdl2 v0\.2d, v31\.4s, v0\.4s + *[0-9a-f]+: 6ebf7000 uabdl2 v0\.2d, v0\.4s, v31\.4s + *[0-9a-f]+: 2e208000 umlal v0\.8h, v0\.8b, v0\.8b + *[0-9a-f]+: 2e20801f umlal v31\.8h, v0\.8b, v0\.8b + *[0-9a-f]+: 2e2083e0 umlal v0\.8h, v31\.8b, v0\.8b + *[0-9a-f]+: 2e3f8000 umlal v0\.8h, v0\.8b, v31\.8b + *[0-9a-f]+: 2e608000 umlal v0\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 2e60801f umlal v31\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 2e6083e0 umlal v0\.4s, v31\.4h, v0\.4h + *[0-9a-f]+: 2e7f8000 umlal v0\.4s, v0\.4h, v31\.4h + *[0-9a-f]+: 2ea08000 umlal v0\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea0801f umlal v31\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea083e0 umlal v0\.2d, v31\.2s, v0\.2s + *[0-9a-f]+: 2ebf8000 umlal v0\.2d, v0\.2s, v31\.2s + *[0-9a-f]+: 6e208000 umlal2 v0\.8h, v0\.16b, v0\.16b + *[0-9a-f]+: 6e20801f umlal2 v31\.8h, v0\.16b, v0\.16b + *[0-9a-f]+: 6e2083e0 umlal2 v0\.8h, v31\.16b, v0\.16b + *[0-9a-f]+: 6e3f8000 umlal2 v0\.8h, v0\.16b, v31\.16b + *[0-9a-f]+: 6e608000 umlal2 v0\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 6e60801f umlal2 v31\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 6e6083e0 umlal2 v0\.4s, v31\.8h, v0\.8h + *[0-9a-f]+: 6e7f8000 umlal2 v0\.4s, v0\.8h, v31\.8h + *[0-9a-f]+: 6ea08000 umlal2 v0\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea0801f umlal2 v31\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea083e0 umlal2 v0\.2d, v31\.4s, v0\.4s + *[0-9a-f]+: 6ebf8000 umlal2 v0\.2d, v0\.4s, v31\.4s + *[0-9a-f]+: 2e20a000 umlsl v0\.8h, v0\.8b, v0\.8b + *[0-9a-f]+: 2e20a01f umlsl v31\.8h, v0\.8b, v0\.8b + *[0-9a-f]+: 2e20a3e0 umlsl v0\.8h, v31\.8b, v0\.8b + *[0-9a-f]+: 2e3fa000 umlsl v0\.8h, v0\.8b, v31\.8b + *[0-9a-f]+: 2e60a000 umlsl v0\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 2e60a01f umlsl v31\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 2e60a3e0 umlsl v0\.4s, v31\.4h, v0\.4h + *[0-9a-f]+: 2e7fa000 umlsl v0\.4s, v0\.4h, v31\.4h + *[0-9a-f]+: 2ea0a000 umlsl v0\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea0a01f umlsl v31\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea0a3e0 umlsl v0\.2d, v31\.2s, v0\.2s + *[0-9a-f]+: 2ebfa000 umlsl v0\.2d, v0\.2s, v31\.2s + *[0-9a-f]+: 6e20a000 umlsl2 v0\.8h, v0\.16b, v0\.16b + *[0-9a-f]+: 6e20a01f umlsl2 v31\.8h, v0\.16b, v0\.16b + *[0-9a-f]+: 6e20a3e0 umlsl2 v0\.8h, v31\.16b, v0\.16b + *[0-9a-f]+: 6e3fa000 umlsl2 v0\.8h, v0\.16b, v31\.16b + *[0-9a-f]+: 6e60a000 umlsl2 v0\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 6e60a01f umlsl2 v31\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 6e60a3e0 umlsl2 v0\.4s, v31\.8h, v0\.8h + *[0-9a-f]+: 6e7fa000 umlsl2 v0\.4s, v0\.8h, v31\.8h + *[0-9a-f]+: 6ea0a000 umlsl2 v0\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea0a01f umlsl2 v31\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea0a3e0 umlsl2 v0\.2d, v31\.4s, v0\.4s + *[0-9a-f]+: 6ebfa000 umlsl2 v0\.2d, v0\.4s, v31\.4s + *[0-9a-f]+: 2e20c000 umull v0\.8h, v0\.8b, v0\.8b + *[0-9a-f]+: 2e20c01f umull v31\.8h, v0\.8b, v0\.8b + *[0-9a-f]+: 2e20c3e0 umull v0\.8h, v31\.8b, v0\.8b + *[0-9a-f]+: 2e3fc000 umull v0\.8h, v0\.8b, v31\.8b + *[0-9a-f]+: 2e60c000 umull v0\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 2e60c01f umull v31\.4s, v0\.4h, v0\.4h + *[0-9a-f]+: 2e60c3e0 umull v0\.4s, v31\.4h, v0\.4h + *[0-9a-f]+: 2e7fc000 umull v0\.4s, v0\.4h, v31\.4h + *[0-9a-f]+: 2ea0c000 umull v0\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea0c01f umull v31\.2d, v0\.2s, v0\.2s + *[0-9a-f]+: 2ea0c3e0 umull v0\.2d, v31\.2s, v0\.2s + *[0-9a-f]+: 2ebfc000 umull v0\.2d, v0\.2s, v31\.2s + *[0-9a-f]+: 6e20c000 umull2 v0\.8h, v0\.16b, v0\.16b + *[0-9a-f]+: 6e20c01f umull2 v31\.8h, v0\.16b, v0\.16b + *[0-9a-f]+: 6e20c3e0 umull2 v0\.8h, v31\.16b, v0\.16b + *[0-9a-f]+: 6e3fc000 umull2 v0\.8h, v0\.16b, v31\.16b + *[0-9a-f]+: 6e60c000 umull2 v0\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 6e60c01f umull2 v31\.4s, v0\.8h, v0\.8h + *[0-9a-f]+: 6e60c3e0 umull2 v0\.4s, v31\.8h, v0\.8h + *[0-9a-f]+: 6e7fc000 umull2 v0\.4s, v0\.8h, v31\.8h + *[0-9a-f]+: 6ea0c000 umull2 v0\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea0c01f umull2 v31\.2d, v0\.4s, v0\.4s + *[0-9a-f]+: 6ea0c3e0 umull2 v0\.2d, v31\.4s, v0\.4s + *[0-9a-f]+: 6ebfc000 umull2 v0\.2d, v0\.4s, v31\.4s diff --git a/gas/testsuite/gas/aarch64/advsimd-widening-narrowing.s b/gas/testsuite/gas/aarch64/advsimd-widening-narrowing.s new file mode 100644 index 0000000..9a00ff0 --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsimd-widening-narrowing.s @@ -0,0 +1,625 @@ + saddl v0.8h, v0.8b, v0.8b + saddl v31.8h, v0.8b, v0.8b + saddl v0.8h, v31.8b, v0.8b + saddl v0.8h, v0.8b, v31.8b + saddl v0.4s, v0.4h, v0.4h + saddl v31.4s, v0.4h, v0.4h + saddl v0.4s, v31.4h, v0.4h + saddl v0.4s, v0.4h, v31.4h + saddl v0.2d, v0.2s, v0.2s + saddl v31.2d, v0.2s, v0.2s + saddl v0.2d, v31.2s, v0.2s + saddl v0.2d, v0.2s, v31.2s + + saddl2 v0.8h, v0.16b, v0.16b + saddl2 v31.8h, v0.16b, v0.16b + saddl2 v0.8h, v31.16b, v0.16b + saddl2 v0.8h, v0.16b, v31.16b + saddl2 v0.4s, v0.8h, v0.8h + saddl2 v31.4s, v0.8h, v0.8h + saddl2 v0.4s, v31.8h, v0.8h + saddl2 v0.4s, v0.8h, v31.8h + saddl2 v0.2d, v0.4s, v0.4s + saddl2 v31.2d, v0.4s, v0.4s + saddl2 v0.2d, v31.4s, v0.4s + saddl2 v0.2d, v0.4s, v31.4s + + saddw v0.8h, v0.8h, v0.8b + saddw v31.8h, v0.8h, v0.8b + saddw v0.8h, v31.8h, v0.8b + saddw v0.8h, v0.8h, v31.8b + saddw v0.4s, v0.4s, v0.4h + saddw v31.4s, v0.4s, v0.4h + saddw v0.4s, v31.4s, v0.4h + saddw v0.4s, v0.4s, v31.4h + saddw v0.2d, v0.2d, v0.2s + saddw v31.2d, v0.2d, v0.2s + saddw v0.2d, v31.2d, v0.2s + saddw v0.2d, v0.2d, v31.2s + + saddw2 v0.8h, v0.8h, v0.16b + saddw2 v31.8h, v0.8h, v0.16b + saddw2 v0.8h, v31.8h, v0.16b + saddw2 v0.8h, v0.8h, v31.16b + saddw2 v0.4s, v0.4s, v0.8h + saddw2 v31.4s, v0.4s, v0.8h + saddw2 v0.4s, v31.4s, v0.8h + saddw2 v0.4s, v0.4s, v31.8h + saddw2 v0.2d, v0.2d, v0.4s + saddw2 v31.2d, v0.2d, v0.4s + saddw2 v0.2d, v31.2d, v0.4s + saddw2 v0.2d, v0.2d, v31.4s + + ssubl v0.8h, v0.8b, v0.8b + ssubl v31.8h, v0.8b, v0.8b + ssubl v0.8h, v31.8b, v0.8b + ssubl v0.8h, v0.8b, v31.8b + ssubl v0.4s, v0.4h, v0.4h + ssubl v31.4s, v0.4h, v0.4h + ssubl v0.4s, v31.4h, v0.4h + ssubl v0.4s, v0.4h, v31.4h + ssubl v0.2d, v0.2s, v0.2s + ssubl v31.2d, v0.2s, v0.2s + ssubl v0.2d, v31.2s, v0.2s + ssubl v0.2d, v0.2s, v31.2s + + ssubl2 v0.8h, v0.16b, v0.16b + ssubl2 v31.8h, v0.16b, v0.16b + ssubl2 v0.8h, v31.16b, v0.16b + ssubl2 v0.8h, v0.16b, v31.16b + ssubl2 v0.4s, v0.8h, v0.8h + ssubl2 v31.4s, v0.8h, v0.8h + ssubl2 v0.4s, v31.8h, v0.8h + ssubl2 v0.4s, v0.8h, v31.8h + ssubl2 v0.2d, v0.4s, v0.4s + ssubl2 v31.2d, v0.4s, v0.4s + ssubl2 v0.2d, v31.4s, v0.4s + ssubl2 v0.2d, v0.4s, v31.4s + + ssubw v0.8h, v0.8h, v0.8b + ssubw v31.8h, v0.8h, v0.8b + ssubw v0.8h, v31.8h, v0.8b + ssubw v0.8h, v0.8h, v31.8b + ssubw v0.4s, v0.4s, v0.4h + ssubw v31.4s, v0.4s, v0.4h + ssubw v0.4s, v31.4s, v0.4h + ssubw v0.4s, v0.4s, v31.4h + ssubw v0.2d, v0.2d, v0.2s + ssubw v31.2d, v0.2d, v0.2s + ssubw v0.2d, v31.2d, v0.2s + ssubw v0.2d, v0.2d, v31.2s + + ssubw2 v0.8h, v0.8h, v0.16b + ssubw2 v31.8h, v0.8h, v0.16b + ssubw2 v0.8h, v31.8h, v0.16b + ssubw2 v0.8h, v0.8h, v31.16b + ssubw2 v0.4s, v0.4s, v0.8h + ssubw2 v31.4s, v0.4s, v0.8h + ssubw2 v0.4s, v31.4s, v0.8h + ssubw2 v0.4s, v0.4s, v31.8h + ssubw2 v0.2d, v0.2d, v0.4s + ssubw2 v31.2d, v0.2d, v0.4s + ssubw2 v0.2d, v31.2d, v0.4s + ssubw2 v0.2d, v0.2d, v31.4s + + addhn v0.8b, v0.8h, v0.8h + addhn v31.8b, v0.8h, v0.8h + addhn v0.8b, v31.8h, v0.8h + addhn v0.8b, v0.8h, v31.8h + addhn v0.4h, v0.4s, v0.4s + addhn v31.4h, v0.4s, v0.4s + addhn v0.4h, v31.4s, v0.4s + addhn v0.4h, v0.4s, v31.4s + addhn v0.2s, v0.2d, v0.2d + addhn v31.2s, v0.2d, v0.2d + addhn v0.2s, v31.2d, v0.2d + addhn v0.2s, v0.2d, v31.2d + + addhn2 v0.16b, v0.8h, v0.8h + addhn2 v31.16b, v0.8h, v0.8h + addhn2 v0.16b, v31.8h, v0.8h + addhn2 v0.16b, v0.8h, v31.8h + addhn2 v0.8h, v0.4s, v0.4s + addhn2 v31.8h, v0.4s, v0.4s + addhn2 v0.8h, v31.4s, v0.4s + addhn2 v0.8h, v0.4s, v31.4s + addhn2 v0.4s, v0.2d, v0.2d + addhn2 v31.4s, v0.2d, v0.2d + addhn2 v0.4s, v31.2d, v0.2d + addhn2 v0.4s, v0.2d, v31.2d + + sabal v0.8h, v0.8b, v0.8b + sabal v31.8h, v0.8b, v0.8b + sabal v0.8h, v31.8b, v0.8b + sabal v0.8h, v0.8b, v31.8b + sabal v0.4s, v0.4h, v0.4h + sabal v31.4s, v0.4h, v0.4h + sabal v0.4s, v31.4h, v0.4h + sabal v0.4s, v0.4h, v31.4h + sabal v0.2d, v0.2s, v0.2s + sabal v31.2d, v0.2s, v0.2s + sabal v0.2d, v31.2s, v0.2s + sabal v0.2d, v0.2s, v31.2s + + sabal2 v0.8h, v0.16b, v0.16b + sabal2 v31.8h, v0.16b, v0.16b + sabal2 v0.8h, v31.16b, v0.16b + sabal2 v0.8h, v0.16b, v31.16b + sabal2 v0.4s, v0.8h, v0.8h + sabal2 v31.4s, v0.8h, v0.8h + sabal2 v0.4s, v31.8h, v0.8h + sabal2 v0.4s, v0.8h, v31.8h + sabal2 v0.2d, v0.4s, v0.4s + sabal2 v31.2d, v0.4s, v0.4s + sabal2 v0.2d, v31.4s, v0.4s + sabal2 v0.2d, v0.4s, v31.4s + + subhn v0.8b, v0.8h, v0.8h + subhn v31.8b, v0.8h, v0.8h + subhn v0.8b, v31.8h, v0.8h + subhn v0.8b, v0.8h, v31.8h + subhn v0.4h, v0.4s, v0.4s + subhn v31.4h, v0.4s, v0.4s + subhn v0.4h, v31.4s, v0.4s + subhn v0.4h, v0.4s, v31.4s + subhn v0.2s, v0.2d, v0.2d + subhn v31.2s, v0.2d, v0.2d + subhn v0.2s, v31.2d, v0.2d + subhn v0.2s, v0.2d, v31.2d + + subhn2 v0.16b, v0.8h, v0.8h + subhn2 v31.16b, v0.8h, v0.8h + subhn2 v0.16b, v31.8h, v0.8h + subhn2 v0.16b, v0.8h, v31.8h + subhn2 v0.8h, v0.4s, v0.4s + subhn2 v31.8h, v0.4s, v0.4s + subhn2 v0.8h, v31.4s, v0.4s + subhn2 v0.8h, v0.4s, v31.4s + subhn2 v0.4s, v0.2d, v0.2d + subhn2 v31.4s, v0.2d, v0.2d + subhn2 v0.4s, v31.2d, v0.2d + subhn2 v0.4s, v0.2d, v31.2d + + sabdl v0.8h, v0.8b, v0.8b + sabdl v31.8h, v0.8b, v0.8b + sabdl v0.8h, v31.8b, v0.8b + sabdl v0.8h, v0.8b, v31.8b + sabdl v0.4s, v0.4h, v0.4h + sabdl v31.4s, v0.4h, v0.4h + sabdl v0.4s, v31.4h, v0.4h + sabdl v0.4s, v0.4h, v31.4h + sabdl v0.2d, v0.2s, v0.2s + sabdl v31.2d, v0.2s, v0.2s + sabdl v0.2d, v31.2s, v0.2s + sabdl v0.2d, v0.2s, v31.2s + + sabdl2 v0.8h, v0.16b, v0.16b + sabdl2 v31.8h, v0.16b, v0.16b + sabdl2 v0.8h, v31.16b, v0.16b + sabdl2 v0.8h, v0.16b, v31.16b + sabdl2 v0.4s, v0.8h, v0.8h + sabdl2 v31.4s, v0.8h, v0.8h + sabdl2 v0.4s, v31.8h, v0.8h + sabdl2 v0.4s, v0.8h, v31.8h + sabdl2 v0.2d, v0.4s, v0.4s + sabdl2 v31.2d, v0.4s, v0.4s + sabdl2 v0.2d, v31.4s, v0.4s + sabdl2 v0.2d, v0.4s, v31.4s + + smlal v0.8h, v0.8b, v0.8b + smlal v31.8h, v0.8b, v0.8b + smlal v0.8h, v31.8b, v0.8b + smlal v0.8h, v0.8b, v31.8b + smlal v0.4s, v0.4h, v0.4h + smlal v31.4s, v0.4h, v0.4h + smlal v0.4s, v31.4h, v0.4h + smlal v0.4s, v0.4h, v31.4h + smlal v0.2d, v0.2s, v0.2s + smlal v31.2d, v0.2s, v0.2s + smlal v0.2d, v31.2s, v0.2s + smlal v0.2d, v0.2s, v31.2s + + smlal2 v0.8h, v0.16b, v0.16b + smlal2 v31.8h, v0.16b, v0.16b + smlal2 v0.8h, v31.16b, v0.16b + smlal2 v0.8h, v0.16b, v31.16b + smlal2 v0.4s, v0.8h, v0.8h + smlal2 v31.4s, v0.8h, v0.8h + smlal2 v0.4s, v31.8h, v0.8h + smlal2 v0.4s, v0.8h, v31.8h + smlal2 v0.2d, v0.4s, v0.4s + smlal2 v31.2d, v0.4s, v0.4s + smlal2 v0.2d, v31.4s, v0.4s + smlal2 v0.2d, v0.4s, v31.4s + + sqdmlal v0.4s, v0.4h, v0.4h + sqdmlal v31.4s, v0.4h, v0.4h + sqdmlal v0.4s, v31.4h, v0.4h + sqdmlal v0.4s, v0.4h, v31.4h + sqdmlal v0.2d, v0.2s, v0.2s + sqdmlal v31.2d, v0.2s, v0.2s + sqdmlal v0.2d, v31.2s, v0.2s + sqdmlal v0.2d, v0.2s, v31.2s + + sqdmlal2 v0.4s, v0.8h, v0.8h + sqdmlal2 v31.4s, v0.8h, v0.8h + sqdmlal2 v0.4s, v31.8h, v0.8h + sqdmlal2 v0.4s, v0.8h, v31.8h + sqdmlal2 v0.2d, v0.4s, v0.4s + sqdmlal2 v31.2d, v0.4s, v0.4s + sqdmlal2 v0.2d, v31.4s, v0.4s + sqdmlal2 v0.2d, v0.4s, v31.4s + + smlsl v0.8h, v0.8b, v0.8b + smlsl v31.8h, v0.8b, v0.8b + smlsl v0.8h, v31.8b, v0.8b + smlsl v0.8h, v0.8b, v31.8b + smlsl v0.4s, v0.4h, v0.4h + smlsl v31.4s, v0.4h, v0.4h + smlsl v0.4s, v31.4h, v0.4h + smlsl v0.4s, v0.4h, v31.4h + smlsl v0.2d, v0.2s, v0.2s + smlsl v31.2d, v0.2s, v0.2s + smlsl v0.2d, v31.2s, v0.2s + smlsl v0.2d, v0.2s, v31.2s + + smlsl2 v0.8h, v0.16b, v0.16b + smlsl2 v31.8h, v0.16b, v0.16b + smlsl2 v0.8h, v31.16b, v0.16b + smlsl2 v0.8h, v0.16b, v31.16b + smlsl2 v0.4s, v0.8h, v0.8h + smlsl2 v31.4s, v0.8h, v0.8h + smlsl2 v0.4s, v31.8h, v0.8h + smlsl2 v0.4s, v0.8h, v31.8h + smlsl2 v0.2d, v0.4s, v0.4s + smlsl2 v31.2d, v0.4s, v0.4s + smlsl2 v0.2d, v31.4s, v0.4s + smlsl2 v0.2d, v0.4s, v31.4s + + sqdmlsl v0.4s, v0.4h, v0.4h + sqdmlsl v31.4s, v0.4h, v0.4h + sqdmlsl v0.4s, v31.4h, v0.4h + sqdmlsl v0.4s, v0.4h, v31.4h + sqdmlsl v0.2d, v0.2s, v0.2s + sqdmlsl v31.2d, v0.2s, v0.2s + sqdmlsl v0.2d, v31.2s, v0.2s + sqdmlsl v0.2d, v0.2s, v31.2s + + sqdmlsl2 v0.4s, v0.8h, v0.8h + sqdmlsl2 v31.4s, v0.8h, v0.8h + sqdmlsl2 v0.4s, v31.8h, v0.8h + sqdmlsl2 v0.4s, v0.8h, v31.8h + sqdmlsl2 v0.2d, v0.4s, v0.4s + sqdmlsl2 v31.2d, v0.4s, v0.4s + sqdmlsl2 v0.2d, v31.4s, v0.4s + sqdmlsl2 v0.2d, v0.4s, v31.4s + + smull v0.8h, v0.8b, v0.8b + smull v31.8h, v0.8b, v0.8b + smull v0.8h, v31.8b, v0.8b + smull v0.8h, v0.8b, v31.8b + smull v0.4s, v0.4h, v0.4h + smull v31.4s, v0.4h, v0.4h + smull v0.4s, v31.4h, v0.4h + smull v0.4s, v0.4h, v31.4h + smull v0.2d, v0.2s, v0.2s + smull v31.2d, v0.2s, v0.2s + smull v0.2d, v31.2s, v0.2s + smull v0.2d, v0.2s, v31.2s + + smull2 v0.8h, v0.16b, v0.16b + smull2 v31.8h, v0.16b, v0.16b + smull2 v0.8h, v31.16b, v0.16b + smull2 v0.8h, v0.16b, v31.16b + smull2 v0.4s, v0.8h, v0.8h + smull2 v31.4s, v0.8h, v0.8h + smull2 v0.4s, v31.8h, v0.8h + smull2 v0.4s, v0.8h, v31.8h + smull2 v0.2d, v0.4s, v0.4s + smull2 v31.2d, v0.4s, v0.4s + smull2 v0.2d, v31.4s, v0.4s + smull2 v0.2d, v0.4s, v31.4s + + sqdmull v0.4s, v0.4h, v0.4h + sqdmull v31.4s, v0.4h, v0.4h + sqdmull v0.4s, v31.4h, v0.4h + sqdmull v0.4s, v0.4h, v31.4h + sqdmull v0.2d, v0.2s, v0.2s + sqdmull v31.2d, v0.2s, v0.2s + sqdmull v0.2d, v31.2s, v0.2s + sqdmull v0.2d, v0.2s, v31.2s + + sqdmull2 v0.4s, v0.8h, v0.8h + sqdmull2 v31.4s, v0.8h, v0.8h + sqdmull2 v0.4s, v31.8h, v0.8h + sqdmull2 v0.4s, v0.8h, v31.8h + sqdmull2 v0.2d, v0.4s, v0.4s + sqdmull2 v31.2d, v0.4s, v0.4s + sqdmull2 v0.2d, v31.4s, v0.4s + sqdmull2 v0.2d, v0.4s, v31.4s + + uaddl v0.8h, v0.8b, v0.8b + uaddl v31.8h, v0.8b, v0.8b + uaddl v0.8h, v31.8b, v0.8b + uaddl v0.8h, v0.8b, v31.8b + uaddl v0.4s, v0.4h, v0.4h + uaddl v31.4s, v0.4h, v0.4h + uaddl v0.4s, v31.4h, v0.4h + uaddl v0.4s, v0.4h, v31.4h + uaddl v0.2d, v0.2s, v0.2s + uaddl v31.2d, v0.2s, v0.2s + uaddl v0.2d, v31.2s, v0.2s + uaddl v0.2d, v0.2s, v31.2s + + uaddl2 v0.8h, v0.16b, v0.16b + uaddl2 v31.8h, v0.16b, v0.16b + uaddl2 v0.8h, v31.16b, v0.16b + uaddl2 v0.8h, v0.16b, v31.16b + uaddl2 v0.4s, v0.8h, v0.8h + uaddl2 v31.4s, v0.8h, v0.8h + uaddl2 v0.4s, v31.8h, v0.8h + uaddl2 v0.4s, v0.8h, v31.8h + uaddl2 v0.2d, v0.4s, v0.4s + uaddl2 v31.2d, v0.4s, v0.4s + uaddl2 v0.2d, v31.4s, v0.4s + uaddl2 v0.2d, v0.4s, v31.4s + + uaddw v0.8h, v0.8h, v0.8b + uaddw v31.8h, v0.8h, v0.8b + uaddw v0.8h, v31.8h, v0.8b + uaddw v0.8h, v0.8h, v31.8b + uaddw v0.4s, v0.4s, v0.4h + uaddw v31.4s, v0.4s, v0.4h + uaddw v0.4s, v31.4s, v0.4h + uaddw v0.4s, v0.4s, v31.4h + uaddw v0.2d, v0.2d, v0.2s + uaddw v31.2d, v0.2d, v0.2s + uaddw v0.2d, v31.2d, v0.2s + uaddw v0.2d, v0.2d, v31.2s + + uaddw2 v0.8h, v0.8h, v0.16b + uaddw2 v31.8h, v0.8h, v0.16b + uaddw2 v0.8h, v31.8h, v0.16b + uaddw2 v0.8h, v0.8h, v31.16b + uaddw2 v0.4s, v0.4s, v0.8h + uaddw2 v31.4s, v0.4s, v0.8h + uaddw2 v0.4s, v31.4s, v0.8h + uaddw2 v0.4s, v0.4s, v31.8h + uaddw2 v0.2d, v0.2d, v0.4s + uaddw2 v31.2d, v0.2d, v0.4s + uaddw2 v0.2d, v31.2d, v0.4s + uaddw2 v0.2d, v0.2d, v31.4s + + usubl v0.8h, v0.8b, v0.8b + usubl v31.8h, v0.8b, v0.8b + usubl v0.8h, v31.8b, v0.8b + usubl v0.8h, v0.8b, v31.8b + usubl v0.4s, v0.4h, v0.4h + usubl v31.4s, v0.4h, v0.4h + usubl v0.4s, v31.4h, v0.4h + usubl v0.4s, v0.4h, v31.4h + usubl v0.2d, v0.2s, v0.2s + usubl v31.2d, v0.2s, v0.2s + usubl v0.2d, v31.2s, v0.2s + usubl v0.2d, v0.2s, v31.2s + + usubl2 v0.8h, v0.16b, v0.16b + usubl2 v31.8h, v0.16b, v0.16b + usubl2 v0.8h, v31.16b, v0.16b + usubl2 v0.8h, v0.16b, v31.16b + usubl2 v0.4s, v0.8h, v0.8h + usubl2 v31.4s, v0.8h, v0.8h + usubl2 v0.4s, v31.8h, v0.8h + usubl2 v0.4s, v0.8h, v31.8h + usubl2 v0.2d, v0.4s, v0.4s + usubl2 v31.2d, v0.4s, v0.4s + usubl2 v0.2d, v31.4s, v0.4s + usubl2 v0.2d, v0.4s, v31.4s + + usubw v0.8h, v0.8h, v0.8b + usubw v31.8h, v0.8h, v0.8b + usubw v0.8h, v31.8h, v0.8b + usubw v0.8h, v0.8h, v31.8b + usubw v0.4s, v0.4s, v0.4h + usubw v31.4s, v0.4s, v0.4h + usubw v0.4s, v31.4s, v0.4h + usubw v0.4s, v0.4s, v31.4h + usubw v0.2d, v0.2d, v0.2s + usubw v31.2d, v0.2d, v0.2s + usubw v0.2d, v31.2d, v0.2s + usubw v0.2d, v0.2d, v31.2s + + usubw2 v0.8h, v0.8h, v0.16b + usubw2 v31.8h, v0.8h, v0.16b + usubw2 v0.8h, v31.8h, v0.16b + usubw2 v0.8h, v0.8h, v31.16b + usubw2 v0.4s, v0.4s, v0.8h + usubw2 v31.4s, v0.4s, v0.8h + usubw2 v0.4s, v31.4s, v0.8h + usubw2 v0.4s, v0.4s, v31.8h + usubw2 v0.2d, v0.2d, v0.4s + usubw2 v31.2d, v0.2d, v0.4s + usubw2 v0.2d, v31.2d, v0.4s + usubw2 v0.2d, v0.2d, v31.4s + + raddhn v0.8b, v0.8h, v0.8h + raddhn v31.8b, v0.8h, v0.8h + raddhn v0.8b, v31.8h, v0.8h + raddhn v0.8b, v0.8h, v31.8h + raddhn v0.4h, v0.4s, v0.4s + raddhn v31.4h, v0.4s, v0.4s + raddhn v0.4h, v31.4s, v0.4s + raddhn v0.4h, v0.4s, v31.4s + raddhn v0.2s, v0.2d, v0.2d + raddhn v31.2s, v0.2d, v0.2d + raddhn v0.2s, v31.2d, v0.2d + raddhn v0.2s, v0.2d, v31.2d + + raddhn2 v0.16b, v0.8h, v0.8h + raddhn2 v31.16b, v0.8h, v0.8h + raddhn2 v0.16b, v31.8h, v0.8h + raddhn2 v0.16b, v0.8h, v31.8h + raddhn2 v0.8h, v0.4s, v0.4s + raddhn2 v31.8h, v0.4s, v0.4s + raddhn2 v0.8h, v31.4s, v0.4s + raddhn2 v0.8h, v0.4s, v31.4s + raddhn2 v0.4s, v0.2d, v0.2d + raddhn2 v31.4s, v0.2d, v0.2d + raddhn2 v0.4s, v31.2d, v0.2d + raddhn2 v0.4s, v0.2d, v31.2d + + uabal v0.8h, v0.8b, v0.8b + uabal v31.8h, v0.8b, v0.8b + uabal v0.8h, v31.8b, v0.8b + uabal v0.8h, v0.8b, v31.8b + uabal v0.4s, v0.4h, v0.4h + uabal v31.4s, v0.4h, v0.4h + uabal v0.4s, v31.4h, v0.4h + uabal v0.4s, v0.4h, v31.4h + uabal v0.2d, v0.2s, v0.2s + uabal v31.2d, v0.2s, v0.2s + uabal v0.2d, v31.2s, v0.2s + uabal v0.2d, v0.2s, v31.2s + + uabal2 v0.8h, v0.16b, v0.16b + uabal2 v31.8h, v0.16b, v0.16b + uabal2 v0.8h, v31.16b, v0.16b + uabal2 v0.8h, v0.16b, v31.16b + uabal2 v0.4s, v0.8h, v0.8h + uabal2 v31.4s, v0.8h, v0.8h + uabal2 v0.4s, v31.8h, v0.8h + uabal2 v0.4s, v0.8h, v31.8h + uabal2 v0.2d, v0.4s, v0.4s + uabal2 v31.2d, v0.4s, v0.4s + uabal2 v0.2d, v31.4s, v0.4s + uabal2 v0.2d, v0.4s, v31.4s + + rsubhn v0.8b, v0.8h, v0.8h + rsubhn v31.8b, v0.8h, v0.8h + rsubhn v0.8b, v31.8h, v0.8h + rsubhn v0.8b, v0.8h, v31.8h + rsubhn v0.4h, v0.4s, v0.4s + rsubhn v31.4h, v0.4s, v0.4s + rsubhn v0.4h, v31.4s, v0.4s + rsubhn v0.4h, v0.4s, v31.4s + rsubhn v0.2s, v0.2d, v0.2d + rsubhn v31.2s, v0.2d, v0.2d + rsubhn v0.2s, v31.2d, v0.2d + rsubhn v0.2s, v0.2d, v31.2d + + rsubhn2 v0.16b, v0.8h, v0.8h + rsubhn2 v31.16b, v0.8h, v0.8h + rsubhn2 v0.16b, v31.8h, v0.8h + rsubhn2 v0.16b, v0.8h, v31.8h + rsubhn2 v0.8h, v0.4s, v0.4s + rsubhn2 v31.8h, v0.4s, v0.4s + rsubhn2 v0.8h, v31.4s, v0.4s + rsubhn2 v0.8h, v0.4s, v31.4s + rsubhn2 v0.4s, v0.2d, v0.2d + rsubhn2 v31.4s, v0.2d, v0.2d + rsubhn2 v0.4s, v31.2d, v0.2d + rsubhn2 v0.4s, v0.2d, v31.2d + + uabdl v0.8h, v0.8b, v0.8b + uabdl v31.8h, v0.8b, v0.8b + uabdl v0.8h, v31.8b, v0.8b + uabdl v0.8h, v0.8b, v31.8b + uabdl v0.4s, v0.4h, v0.4h + uabdl v31.4s, v0.4h, v0.4h + uabdl v0.4s, v31.4h, v0.4h + uabdl v0.4s, v0.4h, v31.4h + uabdl v0.2d, v0.2s, v0.2s + uabdl v31.2d, v0.2s, v0.2s + uabdl v0.2d, v31.2s, v0.2s + uabdl v0.2d, v0.2s, v31.2s + + uabdl2 v0.8h, v0.16b, v0.16b + uabdl2 v31.8h, v0.16b, v0.16b + uabdl2 v0.8h, v31.16b, v0.16b + uabdl2 v0.8h, v0.16b, v31.16b + uabdl2 v0.4s, v0.8h, v0.8h + uabdl2 v31.4s, v0.8h, v0.8h + uabdl2 v0.4s, v31.8h, v0.8h + uabdl2 v0.4s, v0.8h, v31.8h + uabdl2 v0.2d, v0.4s, v0.4s + uabdl2 v31.2d, v0.4s, v0.4s + uabdl2 v0.2d, v31.4s, v0.4s + uabdl2 v0.2d, v0.4s, v31.4s + + umlal v0.8h, v0.8b, v0.8b + umlal v31.8h, v0.8b, v0.8b + umlal v0.8h, v31.8b, v0.8b + umlal v0.8h, v0.8b, v31.8b + umlal v0.4s, v0.4h, v0.4h + umlal v31.4s, v0.4h, v0.4h + umlal v0.4s, v31.4h, v0.4h + umlal v0.4s, v0.4h, v31.4h + umlal v0.2d, v0.2s, v0.2s + umlal v31.2d, v0.2s, v0.2s + umlal v0.2d, v31.2s, v0.2s + umlal v0.2d, v0.2s, v31.2s + + umlal2 v0.8h, v0.16b, v0.16b + umlal2 v31.8h, v0.16b, v0.16b + umlal2 v0.8h, v31.16b, v0.16b + umlal2 v0.8h, v0.16b, v31.16b + umlal2 v0.4s, v0.8h, v0.8h + umlal2 v31.4s, v0.8h, v0.8h + umlal2 v0.4s, v31.8h, v0.8h + umlal2 v0.4s, v0.8h, v31.8h + umlal2 v0.2d, v0.4s, v0.4s + umlal2 v31.2d, v0.4s, v0.4s + umlal2 v0.2d, v31.4s, v0.4s + umlal2 v0.2d, v0.4s, v31.4s + + umlsl v0.8h, v0.8b, v0.8b + umlsl v31.8h, v0.8b, v0.8b + umlsl v0.8h, v31.8b, v0.8b + umlsl v0.8h, v0.8b, v31.8b + umlsl v0.4s, v0.4h, v0.4h + umlsl v31.4s, v0.4h, v0.4h + umlsl v0.4s, v31.4h, v0.4h + umlsl v0.4s, v0.4h, v31.4h + umlsl v0.2d, v0.2s, v0.2s + umlsl v31.2d, v0.2s, v0.2s + umlsl v0.2d, v31.2s, v0.2s + umlsl v0.2d, v0.2s, v31.2s + + umlsl2 v0.8h, v0.16b, v0.16b + umlsl2 v31.8h, v0.16b, v0.16b + umlsl2 v0.8h, v31.16b, v0.16b + umlsl2 v0.8h, v0.16b, v31.16b + umlsl2 v0.4s, v0.8h, v0.8h + umlsl2 v31.4s, v0.8h, v0.8h + umlsl2 v0.4s, v31.8h, v0.8h + umlsl2 v0.4s, v0.8h, v31.8h + umlsl2 v0.2d, v0.4s, v0.4s + umlsl2 v31.2d, v0.4s, v0.4s + umlsl2 v0.2d, v31.4s, v0.4s + umlsl2 v0.2d, v0.4s, v31.4s + + umull v0.8h, v0.8b, v0.8b + umull v31.8h, v0.8b, v0.8b + umull v0.8h, v31.8b, v0.8b + umull v0.8h, v0.8b, v31.8b + umull v0.4s, v0.4h, v0.4h + umull v31.4s, v0.4h, v0.4h + umull v0.4s, v31.4h, v0.4h + umull v0.4s, v0.4h, v31.4h + umull v0.2d, v0.2s, v0.2s + umull v31.2d, v0.2s, v0.2s + umull v0.2d, v31.2s, v0.2s + umull v0.2d, v0.2s, v31.2s + + umull2 v0.8h, v0.16b, v0.16b + umull2 v31.8h, v0.16b, v0.16b + umull2 v0.8h, v31.16b, v0.16b + umull2 v0.8h, v0.16b, v31.16b + umull2 v0.4s, v0.8h, v0.8h + umull2 v31.4s, v0.8h, v0.8h + umull2 v0.4s, v31.8h, v0.8h + umull2 v0.4s, v0.8h, v31.8h + umull2 v0.2d, v0.4s, v0.4s + umull2 v31.2d, v0.4s, v0.4s + umull2 v0.2d, v31.4s, v0.4s + umull2 v0.2d, v0.4s, v31.4s diff --git a/gas/testsuite/gas/aarch64/branch-cond-pseudos.d b/gas/testsuite/gas/aarch64/branch-cond-pseudos.d new file mode 100644 index 0000000..92a7592 --- /dev/null +++ b/gas/testsuite/gas/aarch64/branch-cond-pseudos.d @@ -0,0 +1,41 @@ +#as: -march=armv8-a +#objdump: -dr + +.*: file format .* + + +Disassembly of section \.text: + +0+ <\.text>: + *[0-9a-f]+: 54000000 b.eq 0 \<\.text\> // b\.none + *[0-9a-f]+: 54ffffe0 b.eq 0 \<\.text\> // b\.none + *[0-9a-f]+: 54000001 b.ne 8 \<\.text\+0x8\> // b\.any + *[0-9a-f]+: 54ffffe1 b.ne 8 \<\.text\+0x8\> // b\.any + *[0-9a-f]+: 54000002 b.cs 10 \<\.text\+0x10\> // b\.hs, b\.nlast + *[0-9a-f]+: 54ffffe2 b.cs 10 \<\.text\+0x10\> // b\.hs, b\.nlast + *[0-9a-f]+: 54000002 b.cs 18 \<\.text\+0x18\> // b\.hs, b\.nlast + *[0-9a-f]+: 54ffffe2 b.cs 18 \<\.text\+0x18\> // b\.hs, b\.nlast + *[0-9a-f]+: 54000003 b.cc 20 \<\.text\+0x20\> // b\.lo, b\.ul, b\.last + *[0-9a-f]+: 54ffffe3 b.cc 20 \<\.text\+0x20\> // b\.lo, b\.ul, b\.last + *[0-9a-f]+: 54000003 b.cc 28 \<\.text\+0x28\> // b\.lo, b\.ul, b\.last + *[0-9a-f]+: 54ffffe3 b.cc 28 \<\.text\+0x28\> // b\.lo, b\.ul, b\.last + *[0-9a-f]+: 54000004 b.mi 30 \<\.text\+0x30\> // b\.first + *[0-9a-f]+: 54ffffe4 b.mi 30 \<\.text\+0x30\> // b\.first + *[0-9a-f]+: 54000005 b.pl 38 \<\.text\+0x38\> // b\.nfrst + *[0-9a-f]+: 54ffffe5 b.pl 38 \<\.text\+0x38\> // b\.nfrst + *[0-9a-f]+: 54000006 b.vs 40 \<\.text\+0x40\> + *[0-9a-f]+: 54ffffe6 b.vs 40 \<\.text\+0x40\> + *[0-9a-f]+: 54000007 b.vc 48 \<\.text\+0x48\> + *[0-9a-f]+: 54ffffe7 b.vc 48 \<\.text\+0x48\> + *[0-9a-f]+: 54000008 b.hi 50 \<\.text\+0x50\> // b\.pmore + *[0-9a-f]+: 54ffffe8 b.hi 50 \<\.text\+0x50\> // b\.pmore + *[0-9a-f]+: 54000009 b.ls 58 \<\.text\+0x58\> // b\.plast + *[0-9a-f]+: 54ffffe9 b.ls 58 \<\.text\+0x58\> // b\.plast + *[0-9a-f]+: 5400000a b.ge 60 \<\.text\+0x60\> // b\.tcont + *[0-9a-f]+: 54ffffea b.ge 60 \<\.text\+0x60\> // b\.tcont + *[0-9a-f]+: 5400000b b.lt 68 \<\.text\+0x68\> // b\.tstop + *[0-9a-f]+: 54ffffeb b.lt 68 \<\.text\+0x68\> // b\.tstop + *[0-9a-f]+: 5400000c b.gt 70 \<\.text\+0x70\> + *[0-9a-f]+: 54ffffec b.gt 70 \<\.text\+0x70\> + *[0-9a-f]+: 5400000d b.le 78 \<\.text\+0x78\> + *[0-9a-f]+: 54ffffed b.le 78 \<\.text\+0x78\> diff --git a/gas/testsuite/gas/aarch64/branch-cond-pseudos.s b/gas/testsuite/gas/aarch64/branch-cond-pseudos.s new file mode 100644 index 0000000..381ce8e --- /dev/null +++ b/gas/testsuite/gas/aarch64/branch-cond-pseudos.s @@ -0,0 +1,32 @@ +1: beq 1b + beq 1b +2: bne 2b + bne 2b +3: bcs 3b + bcs 3b +4: bhs 4b + bhs 4b +5: bcc 5b + bcc 5b +6: blo 6b + blo 6b +7: bmi 7b + bmi 7b +8: bpl 8b + bpl 8b +9: bvs 9b + bvs 9b +10: bvc 10b + bvc 10b +11: bhi 11b + bhi 11b +12: bls 12b + bls 12b +13: bge 13b + bge 13b +14: blt 14b + blt 14b +15: bgt 15b + bgt 15b +16: ble 16b + ble 16b diff --git a/gas/testsuite/gas/aarch64/cmpbr-bad.d b/gas/testsuite/gas/aarch64/cmpbr-bad.d new file mode 100644 index 0000000..6487979 --- /dev/null +++ b/gas/testsuite/gas/aarch64/cmpbr-bad.d @@ -0,0 +1,4 @@ +#name: Test of invalid cmpbr operands +#source: cmpbr-bad.s +#as: -march=armv8-a+cmpbr +#error_output: cmpbr-bad.l diff --git a/gas/testsuite/gas/aarch64/cmpbr-bad.l b/gas/testsuite/gas/aarch64/cmpbr-bad.l new file mode 100644 index 0000000..f705cfd --- /dev/null +++ b/gas/testsuite/gas/aarch64/cmpbr-bad.l @@ -0,0 +1,13 @@ +.[^ :]+: Assembler messages: +[^ :]+:[0-9]+: Error: operand mismatch -- `cbgt w0,x1,a' +[^ :]+:[0-9]+: Info: did you mean this\? +[^ :]+:[0-9]+: Info: cbgt w0, w1, #0x0 +[^ :]+:[0-9]+: Info: other valid variant\(s\): +[^ :]+:[0-9]+: Info: cbgt x0, x1, #0x0 +[^ :]+:[0-9]+: Error: immediate value out of range 0 to 63 at operand 2 -- `cbgt w0,#64,a' +[^ :]+:[0-9]+: Error: operand mismatch -- `cbbgt x0,x1,a' +[^ :]+:[0-9]+: Info: did you mean this\? +[^ :]+:[0-9]+: Info: cbbgt w0, w1, #0x0 +[^ :]+:[0-9]+: Error: operand mismatch -- `cbhgt x0,x1,a' +[^ :]+:[0-9]+: Info: did you mean this\? +[^ :]+:[0-9]+: Info: cbhgt w0, w1, #0x0 diff --git a/gas/testsuite/gas/aarch64/cmpbr-bad.s b/gas/testsuite/gas/aarch64/cmpbr-bad.s new file mode 100644 index 0000000..8fb1e61 --- /dev/null +++ b/gas/testsuite/gas/aarch64/cmpbr-bad.s @@ -0,0 +1,5 @@ +a: + cbgt w0, x1, a + cbgt w0, #64, a + cbbgt x0, x1, a + cbhgt x0, x1, a diff --git a/gas/testsuite/gas/aarch64/cmpbr-far.d b/gas/testsuite/gas/aarch64/cmpbr-far.d new file mode 100644 index 0000000..a027cdf --- /dev/null +++ b/gas/testsuite/gas/aarch64/cmpbr-far.d @@ -0,0 +1,4 @@ +#name: CMPBR instructions that branch too far +#source: cmpbr-far.s +#as: -march=armv8-a+cmpbr +#error_output: cmpbr-far.l diff --git a/gas/testsuite/gas/aarch64/cmpbr-far.l b/gas/testsuite/gas/aarch64/cmpbr-far.l new file mode 100644 index 0000000..6432035 --- /dev/null +++ b/gas/testsuite/gas/aarch64/cmpbr-far.l @@ -0,0 +1,3 @@ +.[^ :]+: Assembler messages: +[^ :]+:[0-9]+: Error: conditional branch out of range +[^ :]+:[0-9]+: Error: conditional branch out of range diff --git a/gas/testsuite/gas/aarch64/cmpbr-far.s b/gas/testsuite/gas/aarch64/cmpbr-far.s new file mode 100644 index 0000000..927d422 --- /dev/null +++ b/gas/testsuite/gas/aarch64/cmpbr-far.s @@ -0,0 +1,13 @@ +a: + .rept 257 + nop + .endr + cbgt w0, w1, a + + cbgt w0, w1, b + .rept 255 + nop + .endr + +b: + nop diff --git a/gas/testsuite/gas/aarch64/cmpbr-pseudo-bad.d b/gas/testsuite/gas/aarch64/cmpbr-pseudo-bad.d new file mode 100644 index 0000000..444b554 --- /dev/null +++ b/gas/testsuite/gas/aarch64/cmpbr-pseudo-bad.d @@ -0,0 +1,4 @@ +#name: Test of out-of-range cmpbr operands +#source: cmpbr-pseudo-bad.s +#as: -march=armv8-a+cmpbr +#error_output: cmpbr-pseudo-bad.l diff --git a/gas/testsuite/gas/aarch64/cmpbr-pseudo-bad.l b/gas/testsuite/gas/aarch64/cmpbr-pseudo-bad.l new file mode 100644 index 0000000..3839baf --- /dev/null +++ b/gas/testsuite/gas/aarch64/cmpbr-pseudo-bad.l @@ -0,0 +1,3 @@ +.[^ :]+: Assembler messages: +[^ :]+:[0-9]+: Error: immediate value out of range 1 to 64 at operand 2 -- `cbge w0,#0,a' +[^ :]+:[0-9]+: Error: immediate value out of range -1 to 62 at operand 2 -- `cble w0,#63,a' diff --git a/gas/testsuite/gas/aarch64/cmpbr-pseudo-bad.s b/gas/testsuite/gas/aarch64/cmpbr-pseudo-bad.s new file mode 100644 index 0000000..1fd0c3a --- /dev/null +++ b/gas/testsuite/gas/aarch64/cmpbr-pseudo-bad.s @@ -0,0 +1,3 @@ +a: + cbge w0, #0, a + cble w0, #63, a diff --git a/gas/testsuite/gas/aarch64/cmpbr.d b/gas/testsuite/gas/aarch64/cmpbr.d new file mode 100644 index 0000000..457fdd7 --- /dev/null +++ b/gas/testsuite/gas/aarch64/cmpbr.d @@ -0,0 +1,967 @@ +#name: Test for FEAT_CMPBR +#as: -march=armv8-a+cmpbr +#objdump: -dr + +.*: file format .* + +Disassembly of section .text: + +.* <cbgt_0>: +.*: 75000000 cbgt w0, #0, 0 <cbgt_0> +.*: 75003fe0 cbgt w0, #0, 0 <cbgt_0> + +.* <cbgt_1>: +.*: 751f8000 cbgt w0, #63, 8 <cbgt_1> +.*: 751fbfe0 cbgt w0, #63, 8 <cbgt_1> + +.* <cbgt_2>: +.*: 7500001f cbgt wzr, #0, 10 <cbgt_2> +.*: 75003fff cbgt wzr, #0, 10 <cbgt_2> + +.* <cbgt_3>: +.*: 751f801f cbgt wzr, #63, 18 <cbgt_3> +.*: 751fbfff cbgt wzr, #63, 18 <cbgt_3> + +.* <cbgt_4>: +.*: f5000000 cbgt x0, #0, 20 <cbgt_4> +.*: f5003fe0 cbgt x0, #0, 20 <cbgt_4> + +.* <cbgt_5>: +.*: f51f8000 cbgt x0, #63, 28 <cbgt_5> +.*: f51fbfe0 cbgt x0, #63, 28 <cbgt_5> + +.* <cbgt_6>: +.*: f500001f cbgt xzr, #0, 30 <cbgt_6> +.*: f5003fff cbgt xzr, #0, 30 <cbgt_6> + +.* <cbgt_7>: +.*: f51f801f cbgt xzr, #63, 38 <cbgt_7> +.*: f51fbfff cbgt xzr, #63, 38 <cbgt_7> + +.* <cblt_0>: +.*: 75200000 cblt w0, #0, 40 <cblt_0> +.*: 75203fe0 cblt w0, #0, 40 <cblt_0> + +.* <cblt_1>: +.*: 753f8000 cblt w0, #63, 48 <cblt_1> +.*: 753fbfe0 cblt w0, #63, 48 <cblt_1> + +.* <cblt_2>: +.*: 7520001f cblt wzr, #0, 50 <cblt_2> +.*: 75203fff cblt wzr, #0, 50 <cblt_2> + +.* <cblt_3>: +.*: 753f801f cblt wzr, #63, 58 <cblt_3> +.*: 753fbfff cblt wzr, #63, 58 <cblt_3> + +.* <cblt_4>: +.*: f5200000 cblt x0, #0, 60 <cblt_4> +.*: f5203fe0 cblt x0, #0, 60 <cblt_4> + +.* <cblt_5>: +.*: f53f8000 cblt x0, #63, 68 <cblt_5> +.*: f53fbfe0 cblt x0, #63, 68 <cblt_5> + +.* <cblt_6>: +.*: f520001f cblt xzr, #0, 70 <cblt_6> +.*: f5203fff cblt xzr, #0, 70 <cblt_6> + +.* <cblt_7>: +.*: f53f801f cblt xzr, #63, 78 <cblt_7> +.*: f53fbfff cblt xzr, #63, 78 <cblt_7> + +.* <cbhi_0>: +.*: 75400000 cbhi w0, #0, 80 <cbhi_0> +.*: 75403fe0 cbhi w0, #0, 80 <cbhi_0> + +.* <cbhi_1>: +.*: 755f8000 cbhi w0, #63, 88 <cbhi_1> +.*: 755fbfe0 cbhi w0, #63, 88 <cbhi_1> + +.* <cbhi_2>: +.*: 7540001f cbhi wzr, #0, 90 <cbhi_2> +.*: 75403fff cbhi wzr, #0, 90 <cbhi_2> + +.* <cbhi_3>: +.*: 755f801f cbhi wzr, #63, 98 <cbhi_3> +.*: 755fbfff cbhi wzr, #63, 98 <cbhi_3> + +.* <cbhi_4>: +.*: f5400000 cbhi x0, #0, a0 <cbhi_4> +.*: f5403fe0 cbhi x0, #0, a0 <cbhi_4> + +.* <cbhi_5>: +.*: f55f8000 cbhi x0, #63, a8 <cbhi_5> +.*: f55fbfe0 cbhi x0, #63, a8 <cbhi_5> + +.* <cbhi_6>: +.*: f540001f cbhi xzr, #0, b0 <cbhi_6> +.*: f5403fff cbhi xzr, #0, b0 <cbhi_6> + +.* <cbhi_7>: +.*: f55f801f cbhi xzr, #63, b8 <cbhi_7> +.*: f55fbfff cbhi xzr, #63, b8 <cbhi_7> + +.* <cblo_0>: +.*: 75600000 cblo w0, #0, c0 <cblo_0> +.*: 75603fe0 cblo w0, #0, c0 <cblo_0> + +.* <cblo_1>: +.*: 757f8000 cblo w0, #63, c8 <cblo_1> +.*: 757fbfe0 cblo w0, #63, c8 <cblo_1> + +.* <cblo_2>: +.*: 7560001f cblo wzr, #0, d0 <cblo_2> +.*: 75603fff cblo wzr, #0, d0 <cblo_2> + +.* <cblo_3>: +.*: 757f801f cblo wzr, #63, d8 <cblo_3> +.*: 757fbfff cblo wzr, #63, d8 <cblo_3> + +.* <cblo_4>: +.*: f5600000 cblo x0, #0, e0 <cblo_4> +.*: f5603fe0 cblo x0, #0, e0 <cblo_4> + +.* <cblo_5>: +.*: f57f8000 cblo x0, #63, e8 <cblo_5> +.*: f57fbfe0 cblo x0, #63, e8 <cblo_5> + +.* <cblo_6>: +.*: f560001f cblo xzr, #0, f0 <cblo_6> +.*: f5603fff cblo xzr, #0, f0 <cblo_6> + +.* <cblo_7>: +.*: f57f801f cblo xzr, #63, f8 <cblo_7> +.*: f57fbfff cblo xzr, #63, f8 <cblo_7> + +.* <cbeq_0>: +.*: 75c00000 cbeq w0, #0, 100 <cbeq_0> +.*: 75c03fe0 cbeq w0, #0, 100 <cbeq_0> + +.* <cbeq_1>: +.*: 75df8000 cbeq w0, #63, 108 <cbeq_1> +.*: 75dfbfe0 cbeq w0, #63, 108 <cbeq_1> + +.* <cbeq_2>: +.*: 75c0001f cbeq wzr, #0, 110 <cbeq_2> +.*: 75c03fff cbeq wzr, #0, 110 <cbeq_2> + +.* <cbeq_3>: +.*: 75df801f cbeq wzr, #63, 118 <cbeq_3> +.*: 75dfbfff cbeq wzr, #63, 118 <cbeq_3> + +.* <cbeq_4>: +.*: f5c00000 cbeq x0, #0, 120 <cbeq_4> +.*: f5c03fe0 cbeq x0, #0, 120 <cbeq_4> + +.* <cbeq_5>: +.*: f5df8000 cbeq x0, #63, 128 <cbeq_5> +.*: f5dfbfe0 cbeq x0, #63, 128 <cbeq_5> + +.* <cbeq_6>: +.*: f5c0001f cbeq xzr, #0, 130 <cbeq_6> +.*: f5c03fff cbeq xzr, #0, 130 <cbeq_6> + +.* <cbeq_7>: +.*: f5df801f cbeq xzr, #63, 138 <cbeq_7> +.*: f5dfbfff cbeq xzr, #63, 138 <cbeq_7> + +.* <cbne_0>: +.*: 75e00000 cbne w0, #0, 140 <cbne_0> +.*: 75e03fe0 cbne w0, #0, 140 <cbne_0> + +.* <cbne_1>: +.*: 75ff8000 cbne w0, #63, 148 <cbne_1> +.*: 75ffbfe0 cbne w0, #63, 148 <cbne_1> + +.* <cbne_2>: +.*: 75e0001f cbne wzr, #0, 150 <cbne_2> +.*: 75e03fff cbne wzr, #0, 150 <cbne_2> + +.* <cbne_3>: +.*: 75ff801f cbne wzr, #63, 158 <cbne_3> +.*: 75ffbfff cbne wzr, #63, 158 <cbne_3> + +.* <cbne_4>: +.*: f5e00000 cbne x0, #0, 160 <cbne_4> +.*: f5e03fe0 cbne x0, #0, 160 <cbne_4> + +.* <cbne_5>: +.*: f5ff8000 cbne x0, #63, 168 <cbne_5> +.*: f5ffbfe0 cbne x0, #63, 168 <cbne_5> + +.* <cbne_6>: +.*: f5e0001f cbne xzr, #0, 170 <cbne_6> +.*: f5e03fff cbne xzr, #0, 170 <cbne_6> + +.* <cbne_7>: +.*: f5ff801f cbne xzr, #63, 178 <cbne_7> +.*: f5ffbfff cbne xzr, #63, 178 <cbne_7> + +.* <cbgt_8>: +.*: 74000000 cbgt w0, w0, 180 <cbgt_8> +.*: 74003fe0 cbgt w0, w0, 180 <cbgt_8> + +.* <cbgt_9>: +.*: 741f0000 cbgt w0, wzr, 188 <cbgt_9> +.*: 741f3fe0 cbgt w0, wzr, 188 <cbgt_9> + +.* <cbgt_10>: +.*: 7400001f cbgt wzr, w0, 190 <cbgt_10> +.*: 74003fff cbgt wzr, w0, 190 <cbgt_10> + +.* <cbgt_11>: +.*: 741f001f cbgt wzr, wzr, 198 <cbgt_11> +.*: 741f3fff cbgt wzr, wzr, 198 <cbgt_11> + +.* <cbgt_12>: +.*: f4000000 cbgt x0, x0, 1a0 <cbgt_12> +.*: f4003fe0 cbgt x0, x0, 1a0 <cbgt_12> + +.* <cbgt_13>: +.*: f41f0000 cbgt x0, xzr, 1a8 <cbgt_13> +.*: f41f3fe0 cbgt x0, xzr, 1a8 <cbgt_13> + +.* <cbgt_14>: +.*: f400001f cbgt xzr, x0, 1b0 <cbgt_14> +.*: f4003fff cbgt xzr, x0, 1b0 <cbgt_14> + +.* <cbgt_15>: +.*: f41f001f cbgt xzr, xzr, 1b8 <cbgt_15> +.*: f41f3fff cbgt xzr, xzr, 1b8 <cbgt_15> + +.* <cbge_8>: +.*: 74200000 cbge w0, w0, 1c0 <cbge_8> +.*: 74203fe0 cbge w0, w0, 1c0 <cbge_8> + +.* <cbge_9>: +.*: 743f0000 cbge w0, wzr, 1c8 <cbge_9> +.*: 743f3fe0 cbge w0, wzr, 1c8 <cbge_9> + +.* <cbge_10>: +.*: 7420001f cbge wzr, w0, 1d0 <cbge_10> +.*: 74203fff cbge wzr, w0, 1d0 <cbge_10> + +.* <cbge_11>: +.*: 743f001f cbge wzr, wzr, 1d8 <cbge_11> +.*: 743f3fff cbge wzr, wzr, 1d8 <cbge_11> + +.* <cbge_12>: +.*: f4200000 cbge x0, x0, 1e0 <cbge_12> +.*: f4203fe0 cbge x0, x0, 1e0 <cbge_12> + +.* <cbge_13>: +.*: f43f0000 cbge x0, xzr, 1e8 <cbge_13> +.*: f43f3fe0 cbge x0, xzr, 1e8 <cbge_13> + +.* <cbge_14>: +.*: f420001f cbge xzr, x0, 1f0 <cbge_14> +.*: f4203fff cbge xzr, x0, 1f0 <cbge_14> + +.* <cbge_15>: +.*: f43f001f cbge xzr, xzr, 1f8 <cbge_15> +.*: f43f3fff cbge xzr, xzr, 1f8 <cbge_15> + +.* <cbhi_8>: +.*: 74400000 cbhi w0, w0, 200 <cbhi_8> +.*: 74403fe0 cbhi w0, w0, 200 <cbhi_8> + +.* <cbhi_9>: +.*: 745f0000 cbhi w0, wzr, 208 <cbhi_9> +.*: 745f3fe0 cbhi w0, wzr, 208 <cbhi_9> + +.* <cbhi_10>: +.*: 7440001f cbhi wzr, w0, 210 <cbhi_10> +.*: 74403fff cbhi wzr, w0, 210 <cbhi_10> + +.* <cbhi_11>: +.*: 745f001f cbhi wzr, wzr, 218 <cbhi_11> +.*: 745f3fff cbhi wzr, wzr, 218 <cbhi_11> + +.* <cbhi_12>: +.*: f4400000 cbhi x0, x0, 220 <cbhi_12> +.*: f4403fe0 cbhi x0, x0, 220 <cbhi_12> + +.* <cbhi_13>: +.*: f45f0000 cbhi x0, xzr, 228 <cbhi_13> +.*: f45f3fe0 cbhi x0, xzr, 228 <cbhi_13> + +.* <cbhi_14>: +.*: f440001f cbhi xzr, x0, 230 <cbhi_14> +.*: f4403fff cbhi xzr, x0, 230 <cbhi_14> + +.* <cbhi_15>: +.*: f45f001f cbhi xzr, xzr, 238 <cbhi_15> +.*: f45f3fff cbhi xzr, xzr, 238 <cbhi_15> + +.* <cbhs_8>: +.*: 74600000 cbhs w0, w0, 240 <cbhs_8> +.*: 74603fe0 cbhs w0, w0, 240 <cbhs_8> + +.* <cbhs_9>: +.*: 747f0000 cbhs w0, wzr, 248 <cbhs_9> +.*: 747f3fe0 cbhs w0, wzr, 248 <cbhs_9> + +.* <cbhs_10>: +.*: 7460001f cbhs wzr, w0, 250 <cbhs_10> +.*: 74603fff cbhs wzr, w0, 250 <cbhs_10> + +.* <cbhs_11>: +.*: 747f001f cbhs wzr, wzr, 258 <cbhs_11> +.*: 747f3fff cbhs wzr, wzr, 258 <cbhs_11> + +.* <cbhs_12>: +.*: f4600000 cbhs x0, x0, 260 <cbhs_12> +.*: f4603fe0 cbhs x0, x0, 260 <cbhs_12> + +.* <cbhs_13>: +.*: f47f0000 cbhs x0, xzr, 268 <cbhs_13> +.*: f47f3fe0 cbhs x0, xzr, 268 <cbhs_13> + +.* <cbhs_14>: +.*: f460001f cbhs xzr, x0, 270 <cbhs_14> +.*: f4603fff cbhs xzr, x0, 270 <cbhs_14> + +.* <cbhs_15>: +.*: f47f001f cbhs xzr, xzr, 278 <cbhs_15> +.*: f47f3fff cbhs xzr, xzr, 278 <cbhs_15> + +.* <cbeq_8>: +.*: 74c00000 cbeq w0, w0, 280 <cbeq_8> +.*: 74c03fe0 cbeq w0, w0, 280 <cbeq_8> + +.* <cbeq_9>: +.*: 74df0000 cbeq w0, wzr, 288 <cbeq_9> +.*: 74df3fe0 cbeq w0, wzr, 288 <cbeq_9> + +.* <cbeq_10>: +.*: 74c0001f cbeq wzr, w0, 290 <cbeq_10> +.*: 74c03fff cbeq wzr, w0, 290 <cbeq_10> + +.* <cbeq_11>: +.*: 74df001f cbeq wzr, wzr, 298 <cbeq_11> +.*: 74df3fff cbeq wzr, wzr, 298 <cbeq_11> + +.* <cbeq_12>: +.*: f4c00000 cbeq x0, x0, 2a0 <cbeq_12> +.*: f4c03fe0 cbeq x0, x0, 2a0 <cbeq_12> + +.* <cbeq_13>: +.*: f4df0000 cbeq x0, xzr, 2a8 <cbeq_13> +.*: f4df3fe0 cbeq x0, xzr, 2a8 <cbeq_13> + +.* <cbeq_14>: +.*: f4c0001f cbeq xzr, x0, 2b0 <cbeq_14> +.*: f4c03fff cbeq xzr, x0, 2b0 <cbeq_14> + +.* <cbeq_15>: +.*: f4df001f cbeq xzr, xzr, 2b8 <cbeq_15> +.*: f4df3fff cbeq xzr, xzr, 2b8 <cbeq_15> + +.* <cbne_8>: +.*: 74e00000 cbne w0, w0, 2c0 <cbne_8> +.*: 74e03fe0 cbne w0, w0, 2c0 <cbne_8> + +.* <cbne_9>: +.*: 74ff0000 cbne w0, wzr, 2c8 <cbne_9> +.*: 74ff3fe0 cbne w0, wzr, 2c8 <cbne_9> + +.* <cbne_10>: +.*: 74e0001f cbne wzr, w0, 2d0 <cbne_10> +.*: 74e03fff cbne wzr, w0, 2d0 <cbne_10> + +.* <cbne_11>: +.*: 74ff001f cbne wzr, wzr, 2d8 <cbne_11> +.*: 74ff3fff cbne wzr, wzr, 2d8 <cbne_11> + +.* <cbne_12>: +.*: f4e00000 cbne x0, x0, 2e0 <cbne_12> +.*: f4e03fe0 cbne x0, x0, 2e0 <cbne_12> + +.* <cbne_13>: +.*: f4ff0000 cbne x0, xzr, 2e8 <cbne_13> +.*: f4ff3fe0 cbne x0, xzr, 2e8 <cbne_13> + +.* <cbne_14>: +.*: f4e0001f cbne xzr, x0, 2f0 <cbne_14> +.*: f4e03fff cbne xzr, x0, 2f0 <cbne_14> + +.* <cbne_15>: +.*: f4ff001f cbne xzr, xzr, 2f8 <cbne_15> +.*: f4ff3fff cbne xzr, xzr, 2f8 <cbne_15> + +.* <cbbgt_0>: +.*: 74008000 cbbgt w0, w0, 300 <cbbgt_0> +.*: 7400bfe0 cbbgt w0, w0, 300 <cbbgt_0> + +.* <cbbgt_1>: +.*: 741f8000 cbbgt w0, wzr, 308 <cbbgt_1> +.*: 741fbfe0 cbbgt w0, wzr, 308 <cbbgt_1> + +.* <cbbgt_2>: +.*: 7400801f cbbgt wzr, w0, 310 <cbbgt_2> +.*: 7400bfff cbbgt wzr, w0, 310 <cbbgt_2> + +.* <cbbgt_3>: +.*: 741f801f cbbgt wzr, wzr, 318 <cbbgt_3> +.*: 741fbfff cbbgt wzr, wzr, 318 <cbbgt_3> + +.* <cbbge_0>: +.*: 74208000 cbbge w0, w0, 320 <cbbge_0> +.*: 7420bfe0 cbbge w0, w0, 320 <cbbge_0> + +.* <cbbge_1>: +.*: 743f8000 cbbge w0, wzr, 328 <cbbge_1> +.*: 743fbfe0 cbbge w0, wzr, 328 <cbbge_1> + +.* <cbbge_2>: +.*: 7420801f cbbge wzr, w0, 330 <cbbge_2> +.*: 7420bfff cbbge wzr, w0, 330 <cbbge_2> + +.* <cbbge_3>: +.*: 743f801f cbbge wzr, wzr, 338 <cbbge_3> +.*: 743fbfff cbbge wzr, wzr, 338 <cbbge_3> + +.* <cbbhi_0>: +.*: 74408000 cbbhi w0, w0, 340 <cbbhi_0> +.*: 7440bfe0 cbbhi w0, w0, 340 <cbbhi_0> + +.* <cbbhi_1>: +.*: 745f8000 cbbhi w0, wzr, 348 <cbbhi_1> +.*: 745fbfe0 cbbhi w0, wzr, 348 <cbbhi_1> + +.* <cbbhi_2>: +.*: 7440801f cbbhi wzr, w0, 350 <cbbhi_2> +.*: 7440bfff cbbhi wzr, w0, 350 <cbbhi_2> + +.* <cbbhi_3>: +.*: 745f801f cbbhi wzr, wzr, 358 <cbbhi_3> +.*: 745fbfff cbbhi wzr, wzr, 358 <cbbhi_3> + +.* <cbbhs_0>: +.*: 74608000 cbbhs w0, w0, 360 <cbbhs_0> +.*: 7460bfe0 cbbhs w0, w0, 360 <cbbhs_0> + +.* <cbbhs_1>: +.*: 747f8000 cbbhs w0, wzr, 368 <cbbhs_1> +.*: 747fbfe0 cbbhs w0, wzr, 368 <cbbhs_1> + +.* <cbbhs_2>: +.*: 7460801f cbbhs wzr, w0, 370 <cbbhs_2> +.*: 7460bfff cbbhs wzr, w0, 370 <cbbhs_2> + +.* <cbbhs_3>: +.*: 747f801f cbbhs wzr, wzr, 378 <cbbhs_3> +.*: 747fbfff cbbhs wzr, wzr, 378 <cbbhs_3> + +.* <cbbeq_0>: +.*: 74c08000 cbbeq w0, w0, 380 <cbbeq_0> +.*: 74c0bfe0 cbbeq w0, w0, 380 <cbbeq_0> + +.* <cbbeq_1>: +.*: 74df8000 cbbeq w0, wzr, 388 <cbbeq_1> +.*: 74dfbfe0 cbbeq w0, wzr, 388 <cbbeq_1> + +.* <cbbeq_2>: +.*: 74c0801f cbbeq wzr, w0, 390 <cbbeq_2> +.*: 74c0bfff cbbeq wzr, w0, 390 <cbbeq_2> + +.* <cbbeq_3>: +.*: 74df801f cbbeq wzr, wzr, 398 <cbbeq_3> +.*: 74dfbfff cbbeq wzr, wzr, 398 <cbbeq_3> + +.* <cbbne_0>: +.*: 74e08000 cbbne w0, w0, 3a0 <cbbne_0> +.*: 74e0bfe0 cbbne w0, w0, 3a0 <cbbne_0> + +.* <cbbne_1>: +.*: 74ff8000 cbbne w0, wzr, 3a8 <cbbne_1> +.*: 74ffbfe0 cbbne w0, wzr, 3a8 <cbbne_1> + +.* <cbbne_2>: +.*: 74e0801f cbbne wzr, w0, 3b0 <cbbne_2> +.*: 74e0bfff cbbne wzr, w0, 3b0 <cbbne_2> + +.* <cbbne_3>: +.*: 74ff801f cbbne wzr, wzr, 3b8 <cbbne_3> +.*: 74ffbfff cbbne wzr, wzr, 3b8 <cbbne_3> + +.* <cbhgt_0>: +.*: 7400c000 cbhgt w0, w0, 3c0 <cbhgt_0> +.*: 7400ffe0 cbhgt w0, w0, 3c0 <cbhgt_0> + +.* <cbhgt_1>: +.*: 741fc000 cbhgt w0, wzr, 3c8 <cbhgt_1> +.*: 741fffe0 cbhgt w0, wzr, 3c8 <cbhgt_1> + +.* <cbhgt_2>: +.*: 7400c01f cbhgt wzr, w0, 3d0 <cbhgt_2> +.*: 7400ffff cbhgt wzr, w0, 3d0 <cbhgt_2> + +.* <cbhgt_3>: +.*: 741fc01f cbhgt wzr, wzr, 3d8 <cbhgt_3> +.*: 741fffff cbhgt wzr, wzr, 3d8 <cbhgt_3> + +.* <cbhge_0>: +.*: 7420c000 cbhge w0, w0, 3e0 <cbhge_0> +.*: 7420ffe0 cbhge w0, w0, 3e0 <cbhge_0> + +.* <cbhge_1>: +.*: 743fc000 cbhge w0, wzr, 3e8 <cbhge_1> +.*: 743fffe0 cbhge w0, wzr, 3e8 <cbhge_1> + +.* <cbhge_2>: +.*: 7420c01f cbhge wzr, w0, 3f0 <cbhge_2> +.*: 7420ffff cbhge wzr, w0, 3f0 <cbhge_2> + +.* <cbhge_3>: +.*: 743fc01f cbhge wzr, wzr, 3f8 <cbhge_3> +.*: 743fffff cbhge wzr, wzr, 3f8 <cbhge_3> + +.* <cbhhi_0>: +.*: 7440c000 cbhhi w0, w0, 400 <cbhhi_0> +.*: 7440ffe0 cbhhi w0, w0, 400 <cbhhi_0> + +.* <cbhhi_1>: +.*: 745fc000 cbhhi w0, wzr, 408 <cbhhi_1> +.*: 745fffe0 cbhhi w0, wzr, 408 <cbhhi_1> + +.* <cbhhi_2>: +.*: 7440c01f cbhhi wzr, w0, 410 <cbhhi_2> +.*: 7440ffff cbhhi wzr, w0, 410 <cbhhi_2> + +.* <cbhhi_3>: +.*: 745fc01f cbhhi wzr, wzr, 418 <cbhhi_3> +.*: 745fffff cbhhi wzr, wzr, 418 <cbhhi_3> + +.* <cbhhs_0>: +.*: 7460c000 cbhhs w0, w0, 420 <cbhhs_0> +.*: 7460ffe0 cbhhs w0, w0, 420 <cbhhs_0> + +.* <cbhhs_1>: +.*: 747fc000 cbhhs w0, wzr, 428 <cbhhs_1> +.*: 747fffe0 cbhhs w0, wzr, 428 <cbhhs_1> + +.* <cbhhs_2>: +.*: 7460c01f cbhhs wzr, w0, 430 <cbhhs_2> +.*: 7460ffff cbhhs wzr, w0, 430 <cbhhs_2> + +.* <cbhhs_3>: +.*: 747fc01f cbhhs wzr, wzr, 438 <cbhhs_3> +.*: 747fffff cbhhs wzr, wzr, 438 <cbhhs_3> + +.* <cbheq_0>: +.*: 74c0c000 cbheq w0, w0, 440 <cbheq_0> +.*: 74c0ffe0 cbheq w0, w0, 440 <cbheq_0> + +.* <cbheq_1>: +.*: 74dfc000 cbheq w0, wzr, 448 <cbheq_1> +.*: 74dfffe0 cbheq w0, wzr, 448 <cbheq_1> + +.* <cbheq_2>: +.*: 74c0c01f cbheq wzr, w0, 450 <cbheq_2> +.*: 74c0ffff cbheq wzr, w0, 450 <cbheq_2> + +.* <cbheq_3>: +.*: 74dfc01f cbheq wzr, wzr, 458 <cbheq_3> +.*: 74dfffff cbheq wzr, wzr, 458 <cbheq_3> + +.* <cbhne_0>: +.*: 74e0c000 cbhne w0, w0, 460 <cbhne_0> +.*: 74e0ffe0 cbhne w0, w0, 460 <cbhne_0> + +.* <cbhne_1>: +.*: 74ffc000 cbhne w0, wzr, 468 <cbhne_1> +.*: 74ffffe0 cbhne w0, wzr, 468 <cbhne_1> + +.* <cbhne_2>: +.*: 74e0c01f cbhne wzr, w0, 470 <cbhne_2> +.*: 74e0ffff cbhne wzr, w0, 470 <cbhne_2> + +.* <cbhne_3>: +.*: 74ffc01f cbhne wzr, wzr, 478 <cbhne_3> +.*: 74ffffff cbhne wzr, wzr, 478 <cbhne_3> + +.* <cbge_0>: +.*: 75000000 cbgt w0, #0, 480 <cbge_0> +.*: 75003fe0 cbgt w0, #0, 480 <cbge_0> + +.* <cbge_1>: +.*: 751f8000 cbgt w0, #63, 488 <cbge_1> +.*: 751fbfe0 cbgt w0, #63, 488 <cbge_1> + +.* <cbge_2>: +.*: 7500001f cbgt wzr, #0, 490 <cbge_2> +.*: 75003fff cbgt wzr, #0, 490 <cbge_2> + +.* <cbge_3>: +.*: 751f801f cbgt wzr, #63, 498 <cbge_3> +.*: 751fbfff cbgt wzr, #63, 498 <cbge_3> + +.* <cbge_4>: +.*: f5000000 cbgt x0, #0, 4a0 <cbge_4> +.*: f5003fe0 cbgt x0, #0, 4a0 <cbge_4> + +.* <cbge_5>: +.*: f51f8000 cbgt x0, #63, 4a8 <cbge_5> +.*: f51fbfe0 cbgt x0, #63, 4a8 <cbge_5> + +.* <cbge_6>: +.*: f500001f cbgt xzr, #0, 4b0 <cbge_6> +.*: f5003fff cbgt xzr, #0, 4b0 <cbge_6> + +.* <cbge_7>: +.*: f51f801f cbgt xzr, #63, 4b8 <cbge_7> +.*: f51fbfff cbgt xzr, #63, 4b8 <cbge_7> + +.* <cble_0>: +.*: 75200000 cblt w0, #0, 4c0 <cble_0> +.*: 75203fe0 cblt w0, #0, 4c0 <cble_0> + +.* <cble_1>: +.*: 753f8000 cblt w0, #63, 4c8 <cble_1> +.*: 753fbfe0 cblt w0, #63, 4c8 <cble_1> + +.* <cble_2>: +.*: 7520001f cblt wzr, #0, 4d0 <cble_2> +.*: 75203fff cblt wzr, #0, 4d0 <cble_2> + +.* <cble_3>: +.*: 753f801f cblt wzr, #63, 4d8 <cble_3> +.*: 753fbfff cblt wzr, #63, 4d8 <cble_3> + +.* <cble_4>: +.*: f5200000 cblt x0, #0, 4e0 <cble_4> +.*: f5203fe0 cblt x0, #0, 4e0 <cble_4> + +.* <cble_5>: +.*: f53f8000 cblt x0, #63, 4e8 <cble_5> +.*: f53fbfe0 cblt x0, #63, 4e8 <cble_5> + +.* <cble_6>: +.*: f520001f cblt xzr, #0, 4f0 <cble_6> +.*: f5203fff cblt xzr, #0, 4f0 <cble_6> + +.* <cble_7>: +.*: f53f801f cblt xzr, #63, 4f8 <cble_7> +.*: f53fbfff cblt xzr, #63, 4f8 <cble_7> + +.* <cbhs_0>: +.*: 75400000 cbhi w0, #0, 500 <cbhs_0> +.*: 75403fe0 cbhi w0, #0, 500 <cbhs_0> + +.* <cbhs_1>: +.*: 755f8000 cbhi w0, #63, 508 <cbhs_1> +.*: 755fbfe0 cbhi w0, #63, 508 <cbhs_1> + +.* <cbhs_2>: +.*: 7540001f cbhi wzr, #0, 510 <cbhs_2> +.*: 75403fff cbhi wzr, #0, 510 <cbhs_2> + +.* <cbhs_3>: +.*: 755f801f cbhi wzr, #63, 518 <cbhs_3> +.*: 755fbfff cbhi wzr, #63, 518 <cbhs_3> + +.* <cbhs_4>: +.*: f5400000 cbhi x0, #0, 520 <cbhs_4> +.*: f5403fe0 cbhi x0, #0, 520 <cbhs_4> + +.* <cbhs_5>: +.*: f55f8000 cbhi x0, #63, 528 <cbhs_5> +.*: f55fbfe0 cbhi x0, #63, 528 <cbhs_5> + +.* <cbhs_6>: +.*: f540001f cbhi xzr, #0, 530 <cbhs_6> +.*: f5403fff cbhi xzr, #0, 530 <cbhs_6> + +.* <cbhs_7>: +.*: f55f801f cbhi xzr, #63, 538 <cbhs_7> +.*: f55fbfff cbhi xzr, #63, 538 <cbhs_7> + +.* <cbls_0>: +.*: 75600000 cblo w0, #0, 540 <cbls_0> +.*: 75603fe0 cblo w0, #0, 540 <cbls_0> + +.* <cbls_1>: +.*: 757f8000 cblo w0, #63, 548 <cbls_1> +.*: 757fbfe0 cblo w0, #63, 548 <cbls_1> + +.* <cbls_2>: +.*: 7560001f cblo wzr, #0, 550 <cbls_2> +.*: 75603fff cblo wzr, #0, 550 <cbls_2> + +.* <cbls_3>: +.*: 757f801f cblo wzr, #63, 558 <cbls_3> +.*: 757fbfff cblo wzr, #63, 558 <cbls_3> + +.* <cbls_4>: +.*: f5600000 cblo x0, #0, 560 <cbls_4> +.*: f5603fe0 cblo x0, #0, 560 <cbls_4> + +.* <cbls_5>: +.*: f57f8000 cblo x0, #63, 568 <cbls_5> +.*: f57fbfe0 cblo x0, #63, 568 <cbls_5> + +.* <cbls_6>: +.*: f560001f cblo xzr, #0, 570 <cbls_6> +.*: f5603fff cblo xzr, #0, 570 <cbls_6> + +.* <cbls_7>: +.*: f57f801f cblo xzr, #63, 578 <cbls_7> +.*: f57fbfff cblo xzr, #63, 578 <cbls_7> + +.* <cblt_8>: +.*: 74000000 cbgt w0, w0, 580 <cblt_8> +.*: 74003fe0 cbgt w0, w0, 580 <cblt_8> + +.* <cblt_9>: +.*: 7400001f cbgt wzr, w0, 588 <cblt_9> +.*: 74003fff cbgt wzr, w0, 588 <cblt_9> + +.* <cblt_10>: +.*: 741f0000 cbgt w0, wzr, 590 <cblt_10> +.*: 741f3fe0 cbgt w0, wzr, 590 <cblt_10> + +.* <cblt_11>: +.*: 741f001f cbgt wzr, wzr, 598 <cblt_11> +.*: 741f3fff cbgt wzr, wzr, 598 <cblt_11> + +.* <cblt_12>: +.*: f4000000 cbgt x0, x0, 5a0 <cblt_12> +.*: f4003fe0 cbgt x0, x0, 5a0 <cblt_12> + +.* <cblt_13>: +.*: f400001f cbgt xzr, x0, 5a8 <cblt_13> +.*: f4003fff cbgt xzr, x0, 5a8 <cblt_13> + +.* <cblt_14>: +.*: f41f0000 cbgt x0, xzr, 5b0 <cblt_14> +.*: f41f3fe0 cbgt x0, xzr, 5b0 <cblt_14> + +.* <cblt_15>: +.*: f41f001f cbgt xzr, xzr, 5b8 <cblt_15> +.*: f41f3fff cbgt xzr, xzr, 5b8 <cblt_15> + +.* <cble_8>: +.*: 74200000 cbge w0, w0, 5c0 <cble_8> +.*: 74203fe0 cbge w0, w0, 5c0 <cble_8> + +.* <cble_9>: +.*: 7420001f cbge wzr, w0, 5c8 <cble_9> +.*: 74203fff cbge wzr, w0, 5c8 <cble_9> + +.* <cble_10>: +.*: 743f0000 cbge w0, wzr, 5d0 <cble_10> +.*: 743f3fe0 cbge w0, wzr, 5d0 <cble_10> + +.* <cble_11>: +.*: 743f001f cbge wzr, wzr, 5d8 <cble_11> +.*: 743f3fff cbge wzr, wzr, 5d8 <cble_11> + +.* <cble_12>: +.*: f4200000 cbge x0, x0, 5e0 <cble_12> +.*: f4203fe0 cbge x0, x0, 5e0 <cble_12> + +.* <cble_13>: +.*: f420001f cbge xzr, x0, 5e8 <cble_13> +.*: f4203fff cbge xzr, x0, 5e8 <cble_13> + +.* <cble_14>: +.*: f43f0000 cbge x0, xzr, 5f0 <cble_14> +.*: f43f3fe0 cbge x0, xzr, 5f0 <cble_14> + +.* <cble_15>: +.*: f43f001f cbge xzr, xzr, 5f8 <cble_15> +.*: f43f3fff cbge xzr, xzr, 5f8 <cble_15> + +.* <cblo_8>: +.*: 74400000 cbhi w0, w0, 600 <cblo_8> +.*: 74403fe0 cbhi w0, w0, 600 <cblo_8> + +.* <cblo_9>: +.*: 7440001f cbhi wzr, w0, 608 <cblo_9> +.*: 74403fff cbhi wzr, w0, 608 <cblo_9> + +.* <cblo_10>: +.*: 745f0000 cbhi w0, wzr, 610 <cblo_10> +.*: 745f3fe0 cbhi w0, wzr, 610 <cblo_10> + +.* <cblo_11>: +.*: 745f001f cbhi wzr, wzr, 618 <cblo_11> +.*: 745f3fff cbhi wzr, wzr, 618 <cblo_11> + +.* <cblo_12>: +.*: f4400000 cbhi x0, x0, 620 <cblo_12> +.*: f4403fe0 cbhi x0, x0, 620 <cblo_12> + +.* <cblo_13>: +.*: f440001f cbhi xzr, x0, 628 <cblo_13> +.*: f4403fff cbhi xzr, x0, 628 <cblo_13> + +.* <cblo_14>: +.*: f45f0000 cbhi x0, xzr, 630 <cblo_14> +.*: f45f3fe0 cbhi x0, xzr, 630 <cblo_14> + +.* <cblo_15>: +.*: f45f001f cbhi xzr, xzr, 638 <cblo_15> +.*: f45f3fff cbhi xzr, xzr, 638 <cblo_15> + +.* <cbls_8>: +.*: 74600000 cbhs w0, w0, 640 <cbls_8> +.*: 74603fe0 cbhs w0, w0, 640 <cbls_8> + +.* <cbls_9>: +.*: 7460001f cbhs wzr, w0, 648 <cbls_9> +.*: 74603fff cbhs wzr, w0, 648 <cbls_9> + +.* <cbls_10>: +.*: 747f0000 cbhs w0, wzr, 650 <cbls_10> +.*: 747f3fe0 cbhs w0, wzr, 650 <cbls_10> + +.* <cbls_11>: +.*: 747f001f cbhs wzr, wzr, 658 <cbls_11> +.*: 747f3fff cbhs wzr, wzr, 658 <cbls_11> + +.* <cbls_12>: +.*: f4600000 cbhs x0, x0, 660 <cbls_12> +.*: f4603fe0 cbhs x0, x0, 660 <cbls_12> + +.* <cbls_13>: +.*: f460001f cbhs xzr, x0, 668 <cbls_13> +.*: f4603fff cbhs xzr, x0, 668 <cbls_13> + +.* <cbls_14>: +.*: f47f0000 cbhs x0, xzr, 670 <cbls_14> +.*: f47f3fe0 cbhs x0, xzr, 670 <cbls_14> + +.* <cbls_15>: +.*: f47f001f cbhs xzr, xzr, 678 <cbls_15> +.*: f47f3fff cbhs xzr, xzr, 678 <cbls_15> + +.* <cbblt_0>: +.*: 74008000 cbbgt w0, w0, 680 <cbblt_0> +.*: 7400bfe0 cbbgt w0, w0, 680 <cbblt_0> + +.* <cbblt_1>: +.*: 7400801f cbbgt wzr, w0, 688 <cbblt_1> +.*: 7400bfff cbbgt wzr, w0, 688 <cbblt_1> + +.* <cbblt_2>: +.*: 741f8000 cbbgt w0, wzr, 690 <cbblt_2> +.*: 741fbfe0 cbbgt w0, wzr, 690 <cbblt_2> + +.* <cbblt_3>: +.*: 741f801f cbbgt wzr, wzr, 698 <cbblt_3> +.*: 741fbfff cbbgt wzr, wzr, 698 <cbblt_3> + +.* <cbble_0>: +.*: 74208000 cbbge w0, w0, 6a0 <cbble_0> +.*: 7420bfe0 cbbge w0, w0, 6a0 <cbble_0> + +.* <cbble_1>: +.*: 7420801f cbbge wzr, w0, 6a8 <cbble_1> +.*: 7420bfff cbbge wzr, w0, 6a8 <cbble_1> + +.* <cbble_2>: +.*: 743f8000 cbbge w0, wzr, 6b0 <cbble_2> +.*: 743fbfe0 cbbge w0, wzr, 6b0 <cbble_2> + +.* <cbble_3>: +.*: 743f801f cbbge wzr, wzr, 6b8 <cbble_3> +.*: 743fbfff cbbge wzr, wzr, 6b8 <cbble_3> + +.* <cbblo_0>: +.*: 74408000 cbbhi w0, w0, 6c0 <cbblo_0> +.*: 7440bfe0 cbbhi w0, w0, 6c0 <cbblo_0> + +.* <cbblo_1>: +.*: 7440801f cbbhi wzr, w0, 6c8 <cbblo_1> +.*: 7440bfff cbbhi wzr, w0, 6c8 <cbblo_1> + +.* <cbblo_2>: +.*: 745f8000 cbbhi w0, wzr, 6d0 <cbblo_2> +.*: 745fbfe0 cbbhi w0, wzr, 6d0 <cbblo_2> + +.* <cbblo_3>: +.*: 745f801f cbbhi wzr, wzr, 6d8 <cbblo_3> +.*: 745fbfff cbbhi wzr, wzr, 6d8 <cbblo_3> + +.* <cbbls_0>: +.*: 74608000 cbbhs w0, w0, 6e0 <cbbls_0> +.*: 7460bfe0 cbbhs w0, w0, 6e0 <cbbls_0> + +.* <cbbls_1>: +.*: 7460801f cbbhs wzr, w0, 6e8 <cbbls_1> +.*: 7460bfff cbbhs wzr, w0, 6e8 <cbbls_1> + +.* <cbbls_2>: +.*: 747f8000 cbbhs w0, wzr, 6f0 <cbbls_2> +.*: 747fbfe0 cbbhs w0, wzr, 6f0 <cbbls_2> + +.* <cbbls_3>: +.*: 747f801f cbbhs wzr, wzr, 6f8 <cbbls_3> +.*: 747fbfff cbbhs wzr, wzr, 6f8 <cbbls_3> + +.* <cbhlt_0>: +.*: 7400c000 cbhgt w0, w0, 700 <cbhlt_0> +.*: 7400ffe0 cbhgt w0, w0, 700 <cbhlt_0> + +.* <cbhlt_1>: +.*: 7400c01f cbhgt wzr, w0, 708 <cbhlt_1> +.*: 7400ffff cbhgt wzr, w0, 708 <cbhlt_1> + +.* <cbhlt_2>: +.*: 741fc000 cbhgt w0, wzr, 710 <cbhlt_2> +.*: 741fffe0 cbhgt w0, wzr, 710 <cbhlt_2> + +.* <cbhlt_3>: +.*: 741fc01f cbhgt wzr, wzr, 718 <cbhlt_3> +.*: 741fffff cbhgt wzr, wzr, 718 <cbhlt_3> + +.* <cbhle_0>: +.*: 7420c000 cbhge w0, w0, 720 <cbhle_0> +.*: 7420ffe0 cbhge w0, w0, 720 <cbhle_0> + +.* <cbhle_1>: +.*: 7420c01f cbhge wzr, w0, 728 <cbhle_1> +.*: 7420ffff cbhge wzr, w0, 728 <cbhle_1> + +.* <cbhle_2>: +.*: 743fc000 cbhge w0, wzr, 730 <cbhle_2> +.*: 743fffe0 cbhge w0, wzr, 730 <cbhle_2> + +.* <cbhle_3>: +.*: 743fc01f cbhge wzr, wzr, 738 <cbhle_3> +.*: 743fffff cbhge wzr, wzr, 738 <cbhle_3> + +.* <cbhlo_0>: +.*: 7440c000 cbhhi w0, w0, 740 <cbhlo_0> +.*: 7440ffe0 cbhhi w0, w0, 740 <cbhlo_0> + +.* <cbhlo_1>: +.*: 7440c01f cbhhi wzr, w0, 748 <cbhlo_1> +.*: 7440ffff cbhhi wzr, w0, 748 <cbhlo_1> + +.* <cbhlo_2>: +.*: 745fc000 cbhhi w0, wzr, 750 <cbhlo_2> +.*: 745fffe0 cbhhi w0, wzr, 750 <cbhlo_2> + +.* <cbhlo_3>: +.*: 745fc01f cbhhi wzr, wzr, 758 <cbhlo_3> +.*: 745fffff cbhhi wzr, wzr, 758 <cbhlo_3> + +.* <cbhls_0>: +.*: 7460c000 cbhhs w0, w0, 760 <cbhls_0> +.*: 7460ffe0 cbhhs w0, w0, 760 <cbhls_0> + +.* <cbhls_1>: +.*: 7460c01f cbhhs wzr, w0, 768 <cbhls_1> +.*: 7460ffff cbhhs wzr, w0, 768 <cbhls_1> + +.* <cbhls_2>: +.*: 747fc000 cbhhs w0, wzr, 770 <cbhls_2> +.*: 747fffe0 cbhhs w0, wzr, 770 <cbhls_2> + +.* <cbhls_3>: +.*: 747fc01f cbhhs wzr, wzr, 778 <cbhls_3> +.*: 747fffff cbhhs wzr, wzr, 778 <cbhls_3> diff --git a/gas/testsuite/gas/aarch64/cmpbr.s b/gas/testsuite/gas/aarch64/cmpbr.s new file mode 100644 index 0000000..ed6b179 --- /dev/null +++ b/gas/testsuite/gas/aarch64/cmpbr.s @@ -0,0 +1,727 @@ +cbgt_0: + cbgt w0, #0, cbgt_0 + cbgt w0, #0, cbgt_0 +cbgt_1: + cbgt w0, #63, cbgt_1 + cbgt w0, #63, cbgt_1 +cbgt_2: + cbgt wzr, #0, cbgt_2 + cbgt wzr, #0, cbgt_2 +cbgt_3: + cbgt wzr, #63, cbgt_3 + cbgt wzr, #63, cbgt_3 +cbgt_4: + cbgt x0, #0, cbgt_4 + cbgt x0, #0, cbgt_4 +cbgt_5: + cbgt x0, #63, cbgt_5 + cbgt x0, #63, cbgt_5 +cbgt_6: + cbgt xzr, #0, cbgt_6 + cbgt xzr, #0, cbgt_6 +cbgt_7: + cbgt xzr, #63, cbgt_7 + cbgt xzr, #63, cbgt_7 +cblt_0: + cblt w0, #0, cblt_0 + cblt w0, #0, cblt_0 +cblt_1: + cblt w0, #63, cblt_1 + cblt w0, #63, cblt_1 +cblt_2: + cblt wzr, #0, cblt_2 + cblt wzr, #0, cblt_2 +cblt_3: + cblt wzr, #63, cblt_3 + cblt wzr, #63, cblt_3 +cblt_4: + cblt x0, #0, cblt_4 + cblt x0, #0, cblt_4 +cblt_5: + cblt x0, #63, cblt_5 + cblt x0, #63, cblt_5 +cblt_6: + cblt xzr, #0, cblt_6 + cblt xzr, #0, cblt_6 +cblt_7: + cblt xzr, #63, cblt_7 + cblt xzr, #63, cblt_7 +cbhi_0: + cbhi w0, #0, cbhi_0 + cbhi w0, #0, cbhi_0 +cbhi_1: + cbhi w0, #63, cbhi_1 + cbhi w0, #63, cbhi_1 +cbhi_2: + cbhi wzr, #0, cbhi_2 + cbhi wzr, #0, cbhi_2 +cbhi_3: + cbhi wzr, #63, cbhi_3 + cbhi wzr, #63, cbhi_3 +cbhi_4: + cbhi x0, #0, cbhi_4 + cbhi x0, #0, cbhi_4 +cbhi_5: + cbhi x0, #63, cbhi_5 + cbhi x0, #63, cbhi_5 +cbhi_6: + cbhi xzr, #0, cbhi_6 + cbhi xzr, #0, cbhi_6 +cbhi_7: + cbhi xzr, #63, cbhi_7 + cbhi xzr, #63, cbhi_7 +cblo_0: + cblo w0, #0, cblo_0 + cblo w0, #0, cblo_0 +cblo_1: + cblo w0, #63, cblo_1 + cblo w0, #63, cblo_1 +cblo_2: + cblo wzr, #0, cblo_2 + cblo wzr, #0, cblo_2 +cblo_3: + cblo wzr, #63, cblo_3 + cblo wzr, #63, cblo_3 +cblo_4: + cblo x0, #0, cblo_4 + cblo x0, #0, cblo_4 +cblo_5: + cblo x0, #63, cblo_5 + cblo x0, #63, cblo_5 +cblo_6: + cblo xzr, #0, cblo_6 + cblo xzr, #0, cblo_6 +cblo_7: + cblo xzr, #63, cblo_7 + cblo xzr, #63, cblo_7 +cbeq_0: + cbeq w0, #0, cbeq_0 + cbeq w0, #0, cbeq_0 +cbeq_1: + cbeq w0, #63, cbeq_1 + cbeq w0, #63, cbeq_1 +cbeq_2: + cbeq wzr, #0, cbeq_2 + cbeq wzr, #0, cbeq_2 +cbeq_3: + cbeq wzr, #63, cbeq_3 + cbeq wzr, #63, cbeq_3 +cbeq_4: + cbeq x0, #0, cbeq_4 + cbeq x0, #0, cbeq_4 +cbeq_5: + cbeq x0, #63, cbeq_5 + cbeq x0, #63, cbeq_5 +cbeq_6: + cbeq xzr, #0, cbeq_6 + cbeq xzr, #0, cbeq_6 +cbeq_7: + cbeq xzr, #63, cbeq_7 + cbeq xzr, #63, cbeq_7 +cbne_0: + cbne w0, #0, cbne_0 + cbne w0, #0, cbne_0 +cbne_1: + cbne w0, #63, cbne_1 + cbne w0, #63, cbne_1 +cbne_2: + cbne wzr, #0, cbne_2 + cbne wzr, #0, cbne_2 +cbne_3: + cbne wzr, #63, cbne_3 + cbne wzr, #63, cbne_3 +cbne_4: + cbne x0, #0, cbne_4 + cbne x0, #0, cbne_4 +cbne_5: + cbne x0, #63, cbne_5 + cbne x0, #63, cbne_5 +cbne_6: + cbne xzr, #0, cbne_6 + cbne xzr, #0, cbne_6 +cbne_7: + cbne xzr, #63, cbne_7 + cbne xzr, #63, cbne_7 + +cbgt_8: + cbgt w0, w0, cbgt_8 + cbgt w0, w0, cbgt_8 +cbgt_9: + cbgt w0, wzr, cbgt_9 + cbgt w0, wzr, cbgt_9 +cbgt_10: + cbgt wzr, w0, cbgt_10 + cbgt wzr, w0, cbgt_10 +cbgt_11: + cbgt wzr, wzr, cbgt_11 + cbgt wzr, wzr, cbgt_11 +cbgt_12: + cbgt x0, x0, cbgt_12 + cbgt x0, x0, cbgt_12 +cbgt_13: + cbgt x0, xzr, cbgt_13 + cbgt x0, xzr, cbgt_13 +cbgt_14: + cbgt xzr, x0, cbgt_14 + cbgt xzr, x0, cbgt_14 +cbgt_15: + cbgt xzr, xzr, cbgt_15 + cbgt xzr, xzr, cbgt_15 +cbge_8: + cbge w0, w0, cbge_8 + cbge w0, w0, cbge_8 +cbge_9: + cbge w0, wzr, cbge_9 + cbge w0, wzr, cbge_9 +cbge_10: + cbge wzr, w0, cbge_10 + cbge wzr, w0, cbge_10 +cbge_11: + cbge wzr, wzr, cbge_11 + cbge wzr, wzr, cbge_11 +cbge_12: + cbge x0, x0, cbge_12 + cbge x0, x0, cbge_12 +cbge_13: + cbge x0, xzr, cbge_13 + cbge x0, xzr, cbge_13 +cbge_14: + cbge xzr, x0, cbge_14 + cbge xzr, x0, cbge_14 +cbge_15: + cbge xzr, xzr, cbge_15 + cbge xzr, xzr, cbge_15 +cbhi_8: + cbhi w0, w0, cbhi_8 + cbhi w0, w0, cbhi_8 +cbhi_9: + cbhi w0, wzr, cbhi_9 + cbhi w0, wzr, cbhi_9 +cbhi_10: + cbhi wzr, w0, cbhi_10 + cbhi wzr, w0, cbhi_10 +cbhi_11: + cbhi wzr, wzr, cbhi_11 + cbhi wzr, wzr, cbhi_11 +cbhi_12: + cbhi x0, x0, cbhi_12 + cbhi x0, x0, cbhi_12 +cbhi_13: + cbhi x0, xzr, cbhi_13 + cbhi x0, xzr, cbhi_13 +cbhi_14: + cbhi xzr, x0, cbhi_14 + cbhi xzr, x0, cbhi_14 +cbhi_15: + cbhi xzr, xzr, cbhi_15 + cbhi xzr, xzr, cbhi_15 +cbhs_8: + cbhs w0, w0, cbhs_8 + cbhs w0, w0, cbhs_8 +cbhs_9: + cbhs w0, wzr, cbhs_9 + cbhs w0, wzr, cbhs_9 +cbhs_10: + cbhs wzr, w0, cbhs_10 + cbhs wzr, w0, cbhs_10 +cbhs_11: + cbhs wzr, wzr, cbhs_11 + cbhs wzr, wzr, cbhs_11 +cbhs_12: + cbhs x0, x0, cbhs_12 + cbhs x0, x0, cbhs_12 +cbhs_13: + cbhs x0, xzr, cbhs_13 + cbhs x0, xzr, cbhs_13 +cbhs_14: + cbhs xzr, x0, cbhs_14 + cbhs xzr, x0, cbhs_14 +cbhs_15: + cbhs xzr, xzr, cbhs_15 + cbhs xzr, xzr, cbhs_15 +cbeq_8: + cbeq w0, w0, cbeq_8 + cbeq w0, w0, cbeq_8 +cbeq_9: + cbeq w0, wzr, cbeq_9 + cbeq w0, wzr, cbeq_9 +cbeq_10: + cbeq wzr, w0, cbeq_10 + cbeq wzr, w0, cbeq_10 +cbeq_11: + cbeq wzr, wzr, cbeq_11 + cbeq wzr, wzr, cbeq_11 +cbeq_12: + cbeq x0, x0, cbeq_12 + cbeq x0, x0, cbeq_12 +cbeq_13: + cbeq x0, xzr, cbeq_13 + cbeq x0, xzr, cbeq_13 +cbeq_14: + cbeq xzr, x0, cbeq_14 + cbeq xzr, x0, cbeq_14 +cbeq_15: + cbeq xzr, xzr, cbeq_15 + cbeq xzr, xzr, cbeq_15 +cbne_8: + cbne w0, w0, cbne_8 + cbne w0, w0, cbne_8 +cbne_9: + cbne w0, wzr, cbne_9 + cbne w0, wzr, cbne_9 +cbne_10: + cbne wzr, w0, cbne_10 + cbne wzr, w0, cbne_10 +cbne_11: + cbne wzr, wzr, cbne_11 + cbne wzr, wzr, cbne_11 +cbne_12: + cbne x0, x0, cbne_12 + cbne x0, x0, cbne_12 +cbne_13: + cbne x0, xzr, cbne_13 + cbne x0, xzr, cbne_13 +cbne_14: + cbne xzr, x0, cbne_14 + cbne xzr, x0, cbne_14 +cbne_15: + cbne xzr, xzr, cbne_15 + cbne xzr, xzr, cbne_15 + +cbbgt_0: + cbbgt w0, w0, cbbgt_0 + cbbgt w0, w0, cbbgt_0 +cbbgt_1: + cbbgt w0, wzr, cbbgt_1 + cbbgt w0, wzr, cbbgt_1 +cbbgt_2: + cbbgt wzr, w0, cbbgt_2 + cbbgt wzr, w0, cbbgt_2 +cbbgt_3: + cbbgt wzr, wzr, cbbgt_3 + cbbgt wzr, wzr, cbbgt_3 +cbbge_0: + cbbge w0, w0, cbbge_0 + cbbge w0, w0, cbbge_0 +cbbge_1: + cbbge w0, wzr, cbbge_1 + cbbge w0, wzr, cbbge_1 +cbbge_2: + cbbge wzr, w0, cbbge_2 + cbbge wzr, w0, cbbge_2 +cbbge_3: + cbbge wzr, wzr, cbbge_3 + cbbge wzr, wzr, cbbge_3 +cbbhi_0: + cbbhi w0, w0, cbbhi_0 + cbbhi w0, w0, cbbhi_0 +cbbhi_1: + cbbhi w0, wzr, cbbhi_1 + cbbhi w0, wzr, cbbhi_1 +cbbhi_2: + cbbhi wzr, w0, cbbhi_2 + cbbhi wzr, w0, cbbhi_2 +cbbhi_3: + cbbhi wzr, wzr, cbbhi_3 + cbbhi wzr, wzr, cbbhi_3 +cbbhs_0: + cbbhs w0, w0, cbbhs_0 + cbbhs w0, w0, cbbhs_0 +cbbhs_1: + cbbhs w0, wzr, cbbhs_1 + cbbhs w0, wzr, cbbhs_1 +cbbhs_2: + cbbhs wzr, w0, cbbhs_2 + cbbhs wzr, w0, cbbhs_2 +cbbhs_3: + cbbhs wzr, wzr, cbbhs_3 + cbbhs wzr, wzr, cbbhs_3 +cbbeq_0: + cbbeq w0, w0, cbbeq_0 + cbbeq w0, w0, cbbeq_0 +cbbeq_1: + cbbeq w0, wzr, cbbeq_1 + cbbeq w0, wzr, cbbeq_1 +cbbeq_2: + cbbeq wzr, w0, cbbeq_2 + cbbeq wzr, w0, cbbeq_2 +cbbeq_3: + cbbeq wzr, wzr, cbbeq_3 + cbbeq wzr, wzr, cbbeq_3 +cbbne_0: + cbbne w0, w0, cbbne_0 + cbbne w0, w0, cbbne_0 +cbbne_1: + cbbne w0, wzr, cbbne_1 + cbbne w0, wzr, cbbne_1 +cbbne_2: + cbbne wzr, w0, cbbne_2 + cbbne wzr, w0, cbbne_2 +cbbne_3: + cbbne wzr, wzr, cbbne_3 + cbbne wzr, wzr, cbbne_3 + +cbhgt_0: + cbhgt w0, w0, cbhgt_0 + cbhgt w0, w0, cbhgt_0 +cbhgt_1: + cbhgt w0, wzr, cbhgt_1 + cbhgt w0, wzr, cbhgt_1 +cbhgt_2: + cbhgt wzr, w0, cbhgt_2 + cbhgt wzr, w0, cbhgt_2 +cbhgt_3: + cbhgt wzr, wzr, cbhgt_3 + cbhgt wzr, wzr, cbhgt_3 +cbhge_0: + cbhge w0, w0, cbhge_0 + cbhge w0, w0, cbhge_0 +cbhge_1: + cbhge w0, wzr, cbhge_1 + cbhge w0, wzr, cbhge_1 +cbhge_2: + cbhge wzr, w0, cbhge_2 + cbhge wzr, w0, cbhge_2 +cbhge_3: + cbhge wzr, wzr, cbhge_3 + cbhge wzr, wzr, cbhge_3 +cbhhi_0: + cbhhi w0, w0, cbhhi_0 + cbhhi w0, w0, cbhhi_0 +cbhhi_1: + cbhhi w0, wzr, cbhhi_1 + cbhhi w0, wzr, cbhhi_1 +cbhhi_2: + cbhhi wzr, w0, cbhhi_2 + cbhhi wzr, w0, cbhhi_2 +cbhhi_3: + cbhhi wzr, wzr, cbhhi_3 + cbhhi wzr, wzr, cbhhi_3 +cbhhs_0: + cbhhs w0, w0, cbhhs_0 + cbhhs w0, w0, cbhhs_0 +cbhhs_1: + cbhhs w0, wzr, cbhhs_1 + cbhhs w0, wzr, cbhhs_1 +cbhhs_2: + cbhhs wzr, w0, cbhhs_2 + cbhhs wzr, w0, cbhhs_2 +cbhhs_3: + cbhhs wzr, wzr, cbhhs_3 + cbhhs wzr, wzr, cbhhs_3 +cbheq_0: + cbheq w0, w0, cbheq_0 + cbheq w0, w0, cbheq_0 +cbheq_1: + cbheq w0, wzr, cbheq_1 + cbheq w0, wzr, cbheq_1 +cbheq_2: + cbheq wzr, w0, cbheq_2 + cbheq wzr, w0, cbheq_2 +cbheq_3: + cbheq wzr, wzr, cbheq_3 + cbheq wzr, wzr, cbheq_3 +cbhne_0: + cbhne w0, w0, cbhne_0 + cbhne w0, w0, cbhne_0 +cbhne_1: + cbhne w0, wzr, cbhne_1 + cbhne w0, wzr, cbhne_1 +cbhne_2: + cbhne wzr, w0, cbhne_2 + cbhne wzr, w0, cbhne_2 +cbhne_3: + cbhne wzr, wzr, cbhne_3 + cbhne wzr, wzr, cbhne_3 + +cbge_0: + cbge w0, #1, cbge_0 + cbge w0, #1, cbge_0 +cbge_1: + cbge w0, #64, cbge_1 + cbge w0, #64, cbge_1 +cbge_2: + cbge wzr, #1, cbge_2 + cbge wzr, #1, cbge_2 +cbge_3: + cbge wzr, #64, cbge_3 + cbge wzr, #64, cbge_3 +cbge_4: + cbge x0, #1, cbge_4 + cbge x0, #1, cbge_4 +cbge_5: + cbge x0, #64, cbge_5 + cbge x0, #64, cbge_5 +cbge_6: + cbge xzr, #1, cbge_6 + cbge xzr, #1, cbge_6 +cbge_7: + cbge xzr, #64, cbge_7 + cbge xzr, #64, cbge_7 +cble_0: + cble w0, #-1, cble_0 + cble w0, #-1, cble_0 +cble_1: + cble w0, #62, cble_1 + cble w0, #62, cble_1 +cble_2: + cble wzr, #-1, cble_2 + cble wzr, #-1, cble_2 +cble_3: + cble wzr, #62, cble_3 + cble wzr, #62, cble_3 +cble_4: + cble x0, #-1, cble_4 + cble x0, #-1, cble_4 +cble_5: + cble x0, #62, cble_5 + cble x0, #62, cble_5 +cble_6: + cble xzr, #-1, cble_6 + cble xzr, #-1, cble_6 +cble_7: + cble xzr, #62, cble_7 + cble xzr, #62, cble_7 +cbhs_0: + cbhs w0, #1, cbhs_0 + cbhs w0, #1, cbhs_0 +cbhs_1: + cbhs w0, #64, cbhs_1 + cbhs w0, #64, cbhs_1 +cbhs_2: + cbhs wzr, #1, cbhs_2 + cbhs wzr, #1, cbhs_2 +cbhs_3: + cbhs wzr, #64, cbhs_3 + cbhs wzr, #64, cbhs_3 +cbhs_4: + cbhs x0, #1, cbhs_4 + cbhs x0, #1, cbhs_4 +cbhs_5: + cbhs x0, #64, cbhs_5 + cbhs x0, #64, cbhs_5 +cbhs_6: + cbhs xzr, #1, cbhs_6 + cbhs xzr, #1, cbhs_6 +cbhs_7: + cbhs xzr, #64, cbhs_7 + cbhs xzr, #64, cbhs_7 +cbls_0: + cbls w0, #-1, cbls_0 + cbls w0, #-1, cbls_0 +cbls_1: + cbls w0, #62, cbls_1 + cbls w0, #62, cbls_1 +cbls_2: + cbls wzr, #-1, cbls_2 + cbls wzr, #-1, cbls_2 +cbls_3: + cbls wzr, #62, cbls_3 + cbls wzr, #62, cbls_3 +cbls_4: + cbls x0, #-1, cbls_4 + cbls x0, #-1, cbls_4 +cbls_5: + cbls x0, #62, cbls_5 + cbls x0, #62, cbls_5 +cbls_6: + cbls xzr, #-1, cbls_6 + cbls xzr, #-1, cbls_6 +cbls_7: + cbls xzr, #62, cbls_7 + cbls xzr, #62, cbls_7 + +cblt_8: + cblt w0, w0, cblt_8 + cblt w0, w0, cblt_8 +cblt_9: + cblt w0, wzr, cblt_9 + cblt w0, wzr, cblt_9 +cblt_10: + cblt wzr, w0, cblt_10 + cblt wzr, w0, cblt_10 +cblt_11: + cblt wzr, wzr, cblt_11 + cblt wzr, wzr, cblt_11 +cblt_12: + cblt x0, x0, cblt_12 + cblt x0, x0, cblt_12 +cblt_13: + cblt x0, xzr, cblt_13 + cblt x0, xzr, cblt_13 +cblt_14: + cblt xzr, x0, cblt_14 + cblt xzr, x0, cblt_14 +cblt_15: + cblt xzr, xzr, cblt_15 + cblt xzr, xzr, cblt_15 +cble_8: + cble w0, w0, cble_8 + cble w0, w0, cble_8 +cble_9: + cble w0, wzr, cble_9 + cble w0, wzr, cble_9 +cble_10: + cble wzr, w0, cble_10 + cble wzr, w0, cble_10 +cble_11: + cble wzr, wzr, cble_11 + cble wzr, wzr, cble_11 +cble_12: + cble x0, x0, cble_12 + cble x0, x0, cble_12 +cble_13: + cble x0, xzr, cble_13 + cble x0, xzr, cble_13 +cble_14: + cble xzr, x0, cble_14 + cble xzr, x0, cble_14 +cble_15: + cble xzr, xzr, cble_15 + cble xzr, xzr, cble_15 +cblo_8: + cblo w0, w0, cblo_8 + cblo w0, w0, cblo_8 +cblo_9: + cblo w0, wzr, cblo_9 + cblo w0, wzr, cblo_9 +cblo_10: + cblo wzr, w0, cblo_10 + cblo wzr, w0, cblo_10 +cblo_11: + cblo wzr, wzr, cblo_11 + cblo wzr, wzr, cblo_11 +cblo_12: + cblo x0, x0, cblo_12 + cblo x0, x0, cblo_12 +cblo_13: + cblo x0, xzr, cblo_13 + cblo x0, xzr, cblo_13 +cblo_14: + cblo xzr, x0, cblo_14 + cblo xzr, x0, cblo_14 +cblo_15: + cblo xzr, xzr, cblo_15 + cblo xzr, xzr, cblo_15 +cbls_8: + cbls w0, w0, cbls_8 + cbls w0, w0, cbls_8 +cbls_9: + cbls w0, wzr, cbls_9 + cbls w0, wzr, cbls_9 +cbls_10: + cbls wzr, w0, cbls_10 + cbls wzr, w0, cbls_10 +cbls_11: + cbls wzr, wzr, cbls_11 + cbls wzr, wzr, cbls_11 +cbls_12: + cbls x0, x0, cbls_12 + cbls x0, x0, cbls_12 +cbls_13: + cbls x0, xzr, cbls_13 + cbls x0, xzr, cbls_13 +cbls_14: + cbls xzr, x0, cbls_14 + cbls xzr, x0, cbls_14 +cbls_15: + cbls xzr, xzr, cbls_15 + cbls xzr, xzr, cbls_15 + +cbblt_0: + cbblt w0, w0, cbblt_0 + cbblt w0, w0, cbblt_0 +cbblt_1: + cbblt w0, wzr, cbblt_1 + cbblt w0, wzr, cbblt_1 +cbblt_2: + cbblt wzr, w0, cbblt_2 + cbblt wzr, w0, cbblt_2 +cbblt_3: + cbblt wzr, wzr, cbblt_3 + cbblt wzr, wzr, cbblt_3 +cbble_0: + cbble w0, w0, cbble_0 + cbble w0, w0, cbble_0 +cbble_1: + cbble w0, wzr, cbble_1 + cbble w0, wzr, cbble_1 +cbble_2: + cbble wzr, w0, cbble_2 + cbble wzr, w0, cbble_2 +cbble_3: + cbble wzr, wzr, cbble_3 + cbble wzr, wzr, cbble_3 +cbblo_0: + cbblo w0, w0, cbblo_0 + cbblo w0, w0, cbblo_0 +cbblo_1: + cbblo w0, wzr, cbblo_1 + cbblo w0, wzr, cbblo_1 +cbblo_2: + cbblo wzr, w0, cbblo_2 + cbblo wzr, w0, cbblo_2 +cbblo_3: + cbblo wzr, wzr, cbblo_3 + cbblo wzr, wzr, cbblo_3 +cbbls_0: + cbbls w0, w0, cbbls_0 + cbbls w0, w0, cbbls_0 +cbbls_1: + cbbls w0, wzr, cbbls_1 + cbbls w0, wzr, cbbls_1 +cbbls_2: + cbbls wzr, w0, cbbls_2 + cbbls wzr, w0, cbbls_2 +cbbls_3: + cbbls wzr, wzr, cbbls_3 + cbbls wzr, wzr, cbbls_3 + +cbhlt_0: + cbhlt w0, w0, cbhlt_0 + cbhlt w0, w0, cbhlt_0 +cbhlt_1: + cbhlt w0, wzr, cbhlt_1 + cbhlt w0, wzr, cbhlt_1 +cbhlt_2: + cbhlt wzr, w0, cbhlt_2 + cbhlt wzr, w0, cbhlt_2 +cbhlt_3: + cbhlt wzr, wzr, cbhlt_3 + cbhlt wzr, wzr, cbhlt_3 +cbhle_0: + cbhle w0, w0, cbhle_0 + cbhle w0, w0, cbhle_0 +cbhle_1: + cbhle w0, wzr, cbhle_1 + cbhle w0, wzr, cbhle_1 +cbhle_2: + cbhle wzr, w0, cbhle_2 + cbhle wzr, w0, cbhle_2 +cbhle_3: + cbhle wzr, wzr, cbhle_3 + cbhle wzr, wzr, cbhle_3 +cbhlo_0: + cbhlo w0, w0, cbhlo_0 + cbhlo w0, w0, cbhlo_0 +cbhlo_1: + cbhlo w0, wzr, cbhlo_1 + cbhlo w0, wzr, cbhlo_1 +cbhlo_2: + cbhlo wzr, w0, cbhlo_2 + cbhlo wzr, w0, cbhlo_2 +cbhlo_3: + cbhlo wzr, wzr, cbhlo_3 + cbhlo wzr, wzr, cbhlo_3 +cbhls_0: + cbhls w0, w0, cbhls_0 + cbhls w0, w0, cbhls_0 +cbhls_1: + cbhls w0, wzr, cbhls_1 + cbhls w0, wzr, cbhls_1 +cbhls_2: + cbhls wzr, w0, cbhls_2 + cbhls wzr, w0, cbhls_2 +cbhls_3: + cbhls wzr, wzr, cbhls_3 + cbhls wzr, wzr, cbhls_3 diff --git a/gas/testsuite/gas/aarch64/conditional-compare.d b/gas/testsuite/gas/aarch64/conditional-compare.d new file mode 100644 index 0000000..294e0c9 --- /dev/null +++ b/gas/testsuite/gas/aarch64/conditional-compare.d @@ -0,0 +1,77 @@ +#as: -march=armv8-a +#objdump: -dr + +.*: file format .* + + +Disassembly of section \.text: + +0+ <\.text>: + *[0-9a-f]+: 3a400800 ccmn w0, #0x0, #0x0, eq // eq = none + *[0-9a-f]+: 3a400be0 ccmn wzr, #0x0, #0x0, eq // eq = none + *[0-9a-f]+: 3a5f0800 ccmn w0, #0x1f, #0x0, eq // eq = none + *[0-9a-f]+: 3a40080f ccmn w0, #0x0, #0xf, eq // eq = none + *[0-9a-f]+: 3a40f800 ccmn w0, #0x0, #0x0, nv + *[0-9a-f]+: ba400800 ccmn x0, #0x0, #0x0, eq // eq = none + *[0-9a-f]+: ba400be0 ccmn xzr, #0x0, #0x0, eq // eq = none + *[0-9a-f]+: ba5f0800 ccmn x0, #0x1f, #0x0, eq // eq = none + *[0-9a-f]+: ba40080f ccmn x0, #0x0, #0xf, eq // eq = none + *[0-9a-f]+: ba40f800 ccmn x0, #0x0, #0x0, nv + *[0-9a-f]+: 7a400800 ccmp w0, #0x0, #0x0, eq // eq = none + *[0-9a-f]+: 7a400be0 ccmp wzr, #0x0, #0x0, eq // eq = none + *[0-9a-f]+: 7a5f0800 ccmp w0, #0x1f, #0x0, eq // eq = none + *[0-9a-f]+: 7a40080f ccmp w0, #0x0, #0xf, eq // eq = none + *[0-9a-f]+: 7a40f800 ccmp w0, #0x0, #0x0, nv + *[0-9a-f]+: fa400800 ccmp x0, #0x0, #0x0, eq // eq = none + *[0-9a-f]+: fa400be0 ccmp xzr, #0x0, #0x0, eq // eq = none + *[0-9a-f]+: fa5f0800 ccmp x0, #0x1f, #0x0, eq // eq = none + *[0-9a-f]+: fa40080f ccmp x0, #0x0, #0xf, eq // eq = none + *[0-9a-f]+: fa40f800 ccmp x0, #0x0, #0x0, nv + *[0-9a-f]+: 3a400000 ccmn w0, w0, #0x0, eq // eq = none + *[0-9a-f]+: 3a4003e0 ccmn wzr, w0, #0x0, eq // eq = none + *[0-9a-f]+: 3a5f0000 ccmn w0, wzr, #0x0, eq // eq = none + *[0-9a-f]+: 3a40000f ccmn w0, w0, #0xf, eq // eq = none + *[0-9a-f]+: 3a40f000 ccmn w0, w0, #0x0, nv + *[0-9a-f]+: ba400000 ccmn x0, x0, #0x0, eq // eq = none + *[0-9a-f]+: ba4003e0 ccmn xzr, x0, #0x0, eq // eq = none + *[0-9a-f]+: ba5f0000 ccmn x0, xzr, #0x0, eq // eq = none + *[0-9a-f]+: ba40000f ccmn x0, x0, #0xf, eq // eq = none + *[0-9a-f]+: ba40f000 ccmn x0, x0, #0x0, nv + *[0-9a-f]+: 7a400000 ccmp w0, w0, #0x0, eq // eq = none + *[0-9a-f]+: 7a4003e0 ccmp wzr, w0, #0x0, eq // eq = none + *[0-9a-f]+: 7a5f0000 ccmp w0, wzr, #0x0, eq // eq = none + *[0-9a-f]+: 7a40000f ccmp w0, w0, #0xf, eq // eq = none + *[0-9a-f]+: 7a40f000 ccmp w0, w0, #0x0, nv + *[0-9a-f]+: fa400000 ccmp x0, x0, #0x0, eq // eq = none + *[0-9a-f]+: fa4003e0 ccmp xzr, x0, #0x0, eq // eq = none + *[0-9a-f]+: fa5f0000 ccmp x0, xzr, #0x0, eq // eq = none + *[0-9a-f]+: fa40000f ccmp x0, x0, #0xf, eq // eq = none + *[0-9a-f]+: fa40f000 ccmp x0, x0, #0x0, nv + *[0-9a-f]+: 3a400800 ccmn w0, #0x0, #0x0, eq // eq = none + *[0-9a-f]+: 3a400800 ccmn w0, #0x0, #0x0, eq // eq = none + *[0-9a-f]+: 3a401800 ccmn w0, #0x0, #0x0, ne // ne = any + *[0-9a-f]+: 3a401800 ccmn w0, #0x0, #0x0, ne // ne = any + *[0-9a-f]+: 3a402800 ccmn w0, #0x0, #0x0, cs // cs = hs, nlast + *[0-9a-f]+: 3a402800 ccmn w0, #0x0, #0x0, cs // cs = hs, nlast + *[0-9a-f]+: 3a402800 ccmn w0, #0x0, #0x0, cs // cs = hs, nlast + *[0-9a-f]+: 3a403800 ccmn w0, #0x0, #0x0, cc // cc = lo, ul, last + *[0-9a-f]+: 3a403800 ccmn w0, #0x0, #0x0, cc // cc = lo, ul, last + *[0-9a-f]+: 3a403800 ccmn w0, #0x0, #0x0, cc // cc = lo, ul, last + *[0-9a-f]+: 3a404800 ccmn w0, #0x0, #0x0, mi // mi = first + *[0-9a-f]+: 3a404800 ccmn w0, #0x0, #0x0, mi // mi = first + *[0-9a-f]+: 3a405800 ccmn w0, #0x0, #0x0, pl // pl = nfrst + *[0-9a-f]+: 3a405800 ccmn w0, #0x0, #0x0, pl // pl = nfrst + *[0-9a-f]+: 3a406800 ccmn w0, #0x0, #0x0, vs + *[0-9a-f]+: 3a407800 ccmn w0, #0x0, #0x0, vc + *[0-9a-f]+: 3a408800 ccmn w0, #0x0, #0x0, hi // hi = pmore + *[0-9a-f]+: 3a408800 ccmn w0, #0x0, #0x0, hi // hi = pmore + *[0-9a-f]+: 3a409800 ccmn w0, #0x0, #0x0, ls // ls = plast + *[0-9a-f]+: 3a409800 ccmn w0, #0x0, #0x0, ls // ls = plast + *[0-9a-f]+: 3a40a800 ccmn w0, #0x0, #0x0, ge // ge = tcont + *[0-9a-f]+: 3a40a800 ccmn w0, #0x0, #0x0, ge // ge = tcont + *[0-9a-f]+: 3a40b800 ccmn w0, #0x0, #0x0, lt // lt = tstop + *[0-9a-f]+: 3a40b800 ccmn w0, #0x0, #0x0, lt // lt = tstop + *[0-9a-f]+: 3a40c800 ccmn w0, #0x0, #0x0, gt + *[0-9a-f]+: 3a40d800 ccmn w0, #0x0, #0x0, le + *[0-9a-f]+: 3a40e800 ccmn w0, #0x0, #0x0, al + *[0-9a-f]+: 3a40f800 ccmn w0, #0x0, #0x0, nv diff --git a/gas/testsuite/gas/aarch64/conditional-compare.s b/gas/testsuite/gas/aarch64/conditional-compare.s new file mode 100644 index 0000000..1fe23d3 --- /dev/null +++ b/gas/testsuite/gas/aarch64/conditional-compare.s @@ -0,0 +1,76 @@ + ccmn w0, #0, #0, eq + ccmn wzr, #0, #0, eq + ccmn w0, #31, #0, eq + ccmn w0, #0, #15, eq + ccmn w0, #0, #0, nv + + ccmn x0, #0, #0, eq + ccmn xzr, #0, #0, eq + ccmn x0, #31, #0, eq + ccmn x0, #0, #15, eq + ccmn x0, #0, #0, nv + + ccmp w0, #0, #0, eq + ccmp wzr, #0, #0, eq + ccmp w0, #31, #0, eq + ccmp w0, #0, #15, eq + ccmp w0, #0, #0, nv + + ccmp x0, #0, #0, eq + ccmp xzr, #0, #0, eq + ccmp x0, #31, #0, eq + ccmp x0, #0, #15, eq + ccmp x0, #0, #0, nv + + ccmn w0, w0, #0, eq + ccmn wzr, w0, #0, eq + ccmn w0, wzr, #0, eq + ccmn w0, w0, #15, eq + ccmn w0, w0, #0, nv + + ccmn x0, x0, #0, eq + ccmn xzr, x0, #0, eq + ccmn x0, xzr, #0, eq + ccmn x0, x0, #15, eq + ccmn x0, x0, #0, nv + + ccmp w0, w0, #0, eq + ccmp wzr, w0, #0, eq + ccmp w0, wzr, #0, eq + ccmp w0, w0, #15, eq + ccmp w0, w0, #0, nv + + ccmp x0, x0, #0, eq + ccmp xzr, x0, #0, eq + ccmp x0, xzr, #0, eq + ccmp x0, x0, #15, eq + ccmp x0, x0, #0, nv + + ccmn w0, #0, #0, eq + ccmn w0, #0, #0, none + ccmn w0, #0, #0, ne + ccmn w0, #0, #0, any + ccmn w0, #0, #0, hs + ccmn w0, #0, #0, cs + ccmn w0, #0, #0, nlast + ccmn w0, #0, #0, lo + ccmn w0, #0, #0, cc + ccmn w0, #0, #0, last + ccmn w0, #0, #0, mi + ccmn w0, #0, #0, first + ccmn w0, #0, #0, pl + ccmn w0, #0, #0, nfrst + ccmn w0, #0, #0, vs + ccmn w0, #0, #0, vc + ccmn w0, #0, #0, hi + ccmn w0, #0, #0, pmore + ccmn w0, #0, #0, ls + ccmn w0, #0, #0, plast + ccmn w0, #0, #0, ge + ccmn w0, #0, #0, tcont + ccmn w0, #0, #0, lt + ccmn w0, #0, #0, tstop + ccmn w0, #0, #0, gt + ccmn w0, #0, #0, le + ccmn w0, #0, #0, al + ccmn w0, #0, #0, nv diff --git a/gas/testsuite/gas/aarch64/dgh.d b/gas/testsuite/gas/aarch64/dgh.d deleted file mode 100644 index 9d11bec..0000000 --- a/gas/testsuite/gas/aarch64/dgh.d +++ /dev/null @@ -1,11 +0,0 @@ -#name: V8.6 Data Gathering Hint -#as: -march=armv8.6-a -#objdump: -dr - -.* file format .* - -Disassembly of section \.text: - -0+ <\.text>: - *[0-9a-f]*: d50320df hint #0x6 - *[0-9a-f]*: d50320df hint #0x6 diff --git a/gas/testsuite/gas/aarch64/dgh.s b/gas/testsuite/gas/aarch64/dgh.s deleted file mode 100644 index 6470cd0..0000000 --- a/gas/testsuite/gas/aarch64/dgh.s +++ /dev/null @@ -1,4 +0,0 @@ -# Test for the V8.6-a Data Gathering Hint instruction - -dgh -hint #6 diff --git a/gas/testsuite/gas/aarch64/dp-general-one-source.d b/gas/testsuite/gas/aarch64/dp-general-one-source.d new file mode 100644 index 0000000..56d4700 --- /dev/null +++ b/gas/testsuite/gas/aarch64/dp-general-one-source.d @@ -0,0 +1,45 @@ +#as: -march=armv8-a +#objdump: -dr + +.*: file format .* + + +Disassembly of section \.text: + +0+ <\.text>: + *[0-9a-f]+: 5ac00000 rbit w0, w0 + *[0-9a-f]+: 5ac0001f rbit wzr, w0 + *[0-9a-f]+: 5ac003e0 rbit w0, wzr + *[0-9a-f]+: dac00000 rbit x0, x0 + *[0-9a-f]+: dac0001f rbit xzr, x0 + *[0-9a-f]+: dac003e0 rbit x0, xzr + *[0-9a-f]+: 5ac00400 rev16 w0, w0 + *[0-9a-f]+: 5ac0041f rev16 wzr, w0 + *[0-9a-f]+: 5ac007e0 rev16 w0, wzr + *[0-9a-f]+: dac00400 rev16 x0, x0 + *[0-9a-f]+: dac0041f rev16 xzr, x0 + *[0-9a-f]+: dac007e0 rev16 x0, xzr + *[0-9a-f]+: 5ac00800 rev w0, w0 + *[0-9a-f]+: 5ac0081f rev wzr, w0 + *[0-9a-f]+: 5ac00be0 rev w0, wzr + *[0-9a-f]+: dac00800 rev32 x0, x0 + *[0-9a-f]+: dac0081f rev32 xzr, x0 + *[0-9a-f]+: dac00be0 rev32 x0, xzr + *[0-9a-f]+: dac00c00 rev x0, x0 + *[0-9a-f]+: dac00c1f rev xzr, x0 + *[0-9a-f]+: dac00fe0 rev x0, xzr + *[0-9a-f]+: dac00c00 rev x0, x0 + *[0-9a-f]+: dac00c1f rev xzr, x0 + *[0-9a-f]+: dac00fe0 rev x0, xzr + *[0-9a-f]+: 5ac01000 clz w0, w0 + *[0-9a-f]+: 5ac0101f clz wzr, w0 + *[0-9a-f]+: 5ac013e0 clz w0, wzr + *[0-9a-f]+: dac01000 clz x0, x0 + *[0-9a-f]+: dac0101f clz xzr, x0 + *[0-9a-f]+: dac013e0 clz x0, xzr + *[0-9a-f]+: 5ac01400 cls w0, w0 + *[0-9a-f]+: 5ac0141f cls wzr, w0 + *[0-9a-f]+: 5ac017e0 cls w0, wzr + *[0-9a-f]+: dac01400 cls x0, x0 + *[0-9a-f]+: dac0141f cls xzr, x0 + *[0-9a-f]+: dac017e0 cls x0, xzr diff --git a/gas/testsuite/gas/aarch64/dp-general-one-source.s b/gas/testsuite/gas/aarch64/dp-general-one-source.s new file mode 100644 index 0000000..5bdb754 --- /dev/null +++ b/gas/testsuite/gas/aarch64/dp-general-one-source.s @@ -0,0 +1,43 @@ + rbit w0, w0 + rbit wzr, w0 + rbit w0, wzr + rbit x0, x0 + rbit xzr, x0 + rbit x0, xzr + + rev16 w0, w0 + rev16 wzr, w0 + rev16 w0, wzr + rev16 x0, x0 + rev16 xzr, x0 + rev16 x0, xzr + + rev w0, w0 + rev wzr, w0 + rev w0, wzr + + rev32 x0, x0 + rev32 xzr, x0 + rev32 x0, xzr + + rev x0, x0 + rev xzr, x0 + rev x0, xzr + + rev64 x0, x0 + rev64 xzr, x0 + rev64 x0, xzr + + clz w0, w0 + clz wzr, w0 + clz w0, wzr + clz x0, x0 + clz xzr, x0 + clz x0, xzr + + cls w0, w0 + cls wzr, w0 + cls w0, wzr + cls x0, x0 + cls xzr, x0 + cls x0, xzr diff --git a/gas/testsuite/gas/aarch64/dp-general-two-source.d b/gas/testsuite/gas/aarch64/dp-general-two-source.d new file mode 100644 index 0000000..5c0d816 --- /dev/null +++ b/gas/testsuite/gas/aarch64/dp-general-two-source.d @@ -0,0 +1,89 @@ +#as: -march=armv8-a +#objdump: -dr + +.*: file format .* + + +Disassembly of section \.text: + +0+ <\.text>: + *[0-9a-f]+: 1ac00800 udiv w0, w0, w0 + *[0-9a-f]+: 1ac0081f udiv wzr, w0, w0 + *[0-9a-f]+: 1ac00be0 udiv w0, wzr, w0 + *[0-9a-f]+: 1adf0800 udiv w0, w0, wzr + *[0-9a-f]+: 9ac00800 udiv x0, x0, x0 + *[0-9a-f]+: 9ac0081f udiv xzr, x0, x0 + *[0-9a-f]+: 9ac00be0 udiv x0, xzr, x0 + *[0-9a-f]+: 9adf0800 udiv x0, x0, xzr + *[0-9a-f]+: 1ac00c00 sdiv w0, w0, w0 + *[0-9a-f]+: 1ac00c1f sdiv wzr, w0, w0 + *[0-9a-f]+: 1ac00fe0 sdiv w0, wzr, w0 + *[0-9a-f]+: 1adf0c00 sdiv w0, w0, wzr + *[0-9a-f]+: 9ac00c00 sdiv x0, x0, x0 + *[0-9a-f]+: 9ac00c1f sdiv xzr, x0, x0 + *[0-9a-f]+: 9ac00fe0 sdiv x0, xzr, x0 + *[0-9a-f]+: 9adf0c00 sdiv x0, x0, xzr + *[0-9a-f]+: 1ac02000 lsl w0, w0, w0 + *[0-9a-f]+: 1ac0201f lsl wzr, w0, w0 + *[0-9a-f]+: 1ac023e0 lsl w0, wzr, w0 + *[0-9a-f]+: 1adf2000 lsl w0, w0, wzr + *[0-9a-f]+: 9ac02000 lsl x0, x0, x0 + *[0-9a-f]+: 9ac0201f lsl xzr, x0, x0 + *[0-9a-f]+: 9ac023e0 lsl x0, xzr, x0 + *[0-9a-f]+: 9adf2000 lsl x0, x0, xzr + *[0-9a-f]+: 1ac02000 lsl w0, w0, w0 + *[0-9a-f]+: 1ac0201f lsl wzr, w0, w0 + *[0-9a-f]+: 1ac023e0 lsl w0, wzr, w0 + *[0-9a-f]+: 1adf2000 lsl w0, w0, wzr + *[0-9a-f]+: 9ac02000 lsl x0, x0, x0 + *[0-9a-f]+: 9ac0201f lsl xzr, x0, x0 + *[0-9a-f]+: 9ac023e0 lsl x0, xzr, x0 + *[0-9a-f]+: 9adf2000 lsl x0, x0, xzr + *[0-9a-f]+: 1ac02400 lsr w0, w0, w0 + *[0-9a-f]+: 1ac0241f lsr wzr, w0, w0 + *[0-9a-f]+: 1ac027e0 lsr w0, wzr, w0 + *[0-9a-f]+: 1adf2400 lsr w0, w0, wzr + *[0-9a-f]+: 9ac02400 lsr x0, x0, x0 + *[0-9a-f]+: 9ac0241f lsr xzr, x0, x0 + *[0-9a-f]+: 9ac027e0 lsr x0, xzr, x0 + *[0-9a-f]+: 9adf2400 lsr x0, x0, xzr + *[0-9a-f]+: 1ac02400 lsr w0, w0, w0 + *[0-9a-f]+: 1ac0241f lsr wzr, w0, w0 + *[0-9a-f]+: 1ac027e0 lsr w0, wzr, w0 + *[0-9a-f]+: 1adf2400 lsr w0, w0, wzr + *[0-9a-f]+: 9ac02400 lsr x0, x0, x0 + *[0-9a-f]+: 9ac0241f lsr xzr, x0, x0 + *[0-9a-f]+: 9ac027e0 lsr x0, xzr, x0 + *[0-9a-f]+: 9adf2400 lsr x0, x0, xzr + *[0-9a-f]+: 1ac02800 asr w0, w0, w0 + *[0-9a-f]+: 1ac0281f asr wzr, w0, w0 + *[0-9a-f]+: 1ac02be0 asr w0, wzr, w0 + *[0-9a-f]+: 1adf2800 asr w0, w0, wzr + *[0-9a-f]+: 9ac02800 asr x0, x0, x0 + *[0-9a-f]+: 9ac0281f asr xzr, x0, x0 + *[0-9a-f]+: 9ac02be0 asr x0, xzr, x0 + *[0-9a-f]+: 9adf2800 asr x0, x0, xzr + *[0-9a-f]+: 1ac02800 asr w0, w0, w0 + *[0-9a-f]+: 1ac0281f asr wzr, w0, w0 + *[0-9a-f]+: 1ac02be0 asr w0, wzr, w0 + *[0-9a-f]+: 1adf2800 asr w0, w0, wzr + *[0-9a-f]+: 9ac02800 asr x0, x0, x0 + *[0-9a-f]+: 9ac0281f asr xzr, x0, x0 + *[0-9a-f]+: 9ac02be0 asr x0, xzr, x0 + *[0-9a-f]+: 9adf2800 asr x0, x0, xzr + *[0-9a-f]+: 1ac02c00 ror w0, w0, w0 + *[0-9a-f]+: 1ac02c1f ror wzr, w0, w0 + *[0-9a-f]+: 1ac02fe0 ror w0, wzr, w0 + *[0-9a-f]+: 1adf2c00 ror w0, w0, wzr + *[0-9a-f]+: 9ac02c00 ror x0, x0, x0 + *[0-9a-f]+: 9ac02c1f ror xzr, x0, x0 + *[0-9a-f]+: 9ac02fe0 ror x0, xzr, x0 + *[0-9a-f]+: 9adf2c00 ror x0, x0, xzr + *[0-9a-f]+: 1ac02c00 ror w0, w0, w0 + *[0-9a-f]+: 1ac02c1f ror wzr, w0, w0 + *[0-9a-f]+: 1ac02fe0 ror w0, wzr, w0 + *[0-9a-f]+: 1adf2c00 ror w0, w0, wzr + *[0-9a-f]+: 9ac02c00 ror x0, x0, x0 + *[0-9a-f]+: 9ac02c1f ror xzr, x0, x0 + *[0-9a-f]+: 9ac02fe0 ror x0, xzr, x0 + *[0-9a-f]+: 9adf2c00 ror x0, x0, xzr diff --git a/gas/testsuite/gas/aarch64/dp-general-two-source.s b/gas/testsuite/gas/aarch64/dp-general-two-source.s new file mode 100644 index 0000000..95f2f00 --- /dev/null +++ b/gas/testsuite/gas/aarch64/dp-general-two-source.s @@ -0,0 +1,89 @@ + udiv w0, w0, w0 + udiv wzr, w0, w0 + udiv w0, wzr, w0 + udiv w0, w0, wzr + udiv x0, x0, x0 + udiv xzr, x0, x0 + udiv x0, xzr, x0 + udiv x0, x0, xzr + + sdiv w0, w0, w0 + sdiv wzr, w0, w0 + sdiv w0, wzr, w0 + sdiv w0, w0, wzr + sdiv x0, x0, x0 + sdiv xzr, x0, x0 + sdiv x0, xzr, x0 + sdiv x0, x0, xzr + + lslv w0, w0, w0 + lslv wzr, w0, w0 + lslv w0, wzr, w0 + lslv w0, w0, wzr + lslv x0, x0, x0 + lslv xzr, x0, x0 + lslv x0, xzr, x0 + lslv x0, x0, xzr + + lsl w0, w0, w0 + lsl wzr, w0, w0 + lsl w0, wzr, w0 + lsl w0, w0, wzr + lsl x0, x0, x0 + lsl xzr, x0, x0 + lsl x0, xzr, x0 + lsl x0, x0, xzr + + lsrv w0, w0, w0 + lsrv wzr, w0, w0 + lsrv w0, wzr, w0 + lsrv w0, w0, wzr + lsrv x0, x0, x0 + lsrv xzr, x0, x0 + lsrv x0, xzr, x0 + lsrv x0, x0, xzr + + lsr w0, w0, w0 + lsr wzr, w0, w0 + lsr w0, wzr, w0 + lsr w0, w0, wzr + lsr x0, x0, x0 + lsr xzr, x0, x0 + lsr x0, xzr, x0 + lsr x0, x0, xzr + + asrv w0, w0, w0 + asrv wzr, w0, w0 + asrv w0, wzr, w0 + asrv w0, w0, wzr + asrv x0, x0, x0 + asrv xzr, x0, x0 + asrv x0, xzr, x0 + asrv x0, x0, xzr + + asr w0, w0, w0 + asr wzr, w0, w0 + asr w0, wzr, w0 + asr w0, w0, wzr + asr x0, x0, x0 + asr xzr, x0, x0 + asr x0, xzr, x0 + asr x0, x0, xzr + + rorv w0, w0, w0 + rorv wzr, w0, w0 + rorv w0, wzr, w0 + rorv w0, w0, wzr + rorv x0, x0, x0 + rorv xzr, x0, x0 + rorv x0, xzr, x0 + rorv x0, x0, xzr + + ror w0, w0, w0 + ror wzr, w0, w0 + ror w0, wzr, w0 + ror w0, w0, wzr + ror x0, x0, x0 + ror xzr, x0, x0 + ror x0, xzr, x0 + ror x0, x0, xzr diff --git a/gas/testsuite/gas/aarch64/exception-generation.d b/gas/testsuite/gas/aarch64/exception-generation.d new file mode 100644 index 0000000..e35cccd --- /dev/null +++ b/gas/testsuite/gas/aarch64/exception-generation.d @@ -0,0 +1,28 @@ +#as: -march=armv8-a +#objdump: -dr + +.*: file format .* + + +Disassembly of section \.text: + +0+ <\.text>: + *[0-9a-f]+: d4000001 svc #0x0 + *[0-9a-f]+: d41fffe1 svc #0xffff + *[0-9a-f]+: d4000002 hvc #0x0 + *[0-9a-f]+: d41fffe2 hvc #0xffff + *[0-9a-f]+: d4000003 smc #0x0 + *[0-9a-f]+: d41fffe3 smc #0xffff + *[0-9a-f]+: d4200000 brk #0x0 + *[0-9a-f]+: d43fffe0 brk #0xffff + *[0-9a-f]+: d4400000 hlt #0x0 + *[0-9a-f]+: d45fffe0 hlt #0xffff + *[0-9a-f]+: d4a00001 dcps1 + *[0-9a-f]+: d4a00001 dcps1 + *[0-9a-f]+: d4bfffe1 dcps1 #0xffff + *[0-9a-f]+: d4a00002 dcps2 + *[0-9a-f]+: d4a00002 dcps2 + *[0-9a-f]+: d4bfffe2 dcps2 #0xffff + *[0-9a-f]+: d4a00003 dcps3 + *[0-9a-f]+: d4a00003 dcps3 + *[0-9a-f]+: d4bfffe3 dcps3 #0xffff diff --git a/gas/testsuite/gas/aarch64/exception-generation.s b/gas/testsuite/gas/aarch64/exception-generation.s new file mode 100644 index 0000000..56294fe --- /dev/null +++ b/gas/testsuite/gas/aarch64/exception-generation.s @@ -0,0 +1,26 @@ + svc #0 + svc #65535 + + hvc #0 + hvc #65535 + + smc #0 + smc #65535 + + brk #0 + brk #65535 + + hlt #0 + hlt #65535 + + dcps1 + dcps1 #0 + dcps1 #65535 + + dcps2 + dcps2 #0 + dcps2 #65535 + + dcps3 + dcps3 #0 + dcps3 #65535 diff --git a/gas/testsuite/gas/aarch64/f8f16mm-bad.d b/gas/testsuite/gas/aarch64/f8f16mm-bad.d new file mode 100644 index 0000000..9e034e1 --- /dev/null +++ b/gas/testsuite/gas/aarch64/f8f16mm-bad.d @@ -0,0 +1,4 @@ +#name: Illegal test of F8F16MM FMMLA instruction +#as: -march=armv8-a +#source: f8f16mm.s +#error_output: f8f16mm-bad.l diff --git a/gas/testsuite/gas/aarch64/f8f16mm-bad.l b/gas/testsuite/gas/aarch64/f8f16mm-bad.l new file mode 100644 index 0000000..01acbac --- /dev/null +++ b/gas/testsuite/gas/aarch64/f8f16mm-bad.l @@ -0,0 +1,9 @@ +[^:]*: Assembler messages: +.*: Error: selected processor does not support `fmmla v0.8h,v0.16b,v0.16b' +.*: Error: selected processor does not support `fmmla v0.8h,v0.16b,v31.16b' +.*: Error: selected processor does not support `fmmla v0.8h,v31.16b,v0.16b' +.*: Error: selected processor does not support `fmmla v0.8h,v31.16b,v31.16b' +.*: Error: selected processor does not support `fmmla v31.8h,v0.16b,v0.16b' +.*: Error: selected processor does not support `fmmla v31.8h,v0.16b,v31.16b' +.*: Error: selected processor does not support `fmmla v31.8h,v31.16b,v0.16b' +.*: Error: selected processor does not support `fmmla v31.8h,v31.16b,v31.16b' diff --git a/gas/testsuite/gas/aarch64/f8f16mm.d b/gas/testsuite/gas/aarch64/f8f16mm.d new file mode 100644 index 0000000..bcfc919 --- /dev/null +++ b/gas/testsuite/gas/aarch64/f8f16mm.d @@ -0,0 +1,18 @@ +#name: F8F16MM FMMLA instructions +#as: -march=armv8-a+f8f16mm +#objdump: -dr + +.*: file format .* + + +Disassembly of section .*: + +.* <a>: +.*: 6e00ec00 fmmla v0.8h, v0.16b, v0.16b +.*: 6e1fec00 fmmla v0.8h, v0.16b, v31.16b +.*: 6e00efe0 fmmla v0.8h, v31.16b, v0.16b +.*: 6e1fefe0 fmmla v0.8h, v31.16b, v31.16b +.*: 6e00ec1f fmmla v31.8h, v0.16b, v0.16b +.*: 6e1fec1f fmmla v31.8h, v0.16b, v31.16b +.*: 6e00efff fmmla v31.8h, v31.16b, v0.16b +.*: 6e1fefff fmmla v31.8h, v31.16b, v31.16b diff --git a/gas/testsuite/gas/aarch64/f8f16mm.s b/gas/testsuite/gas/aarch64/f8f16mm.s new file mode 100644 index 0000000..41d6100 --- /dev/null +++ b/gas/testsuite/gas/aarch64/f8f16mm.s @@ -0,0 +1,9 @@ +a: + fmmla v0.8h, v0.16b, v0.16b + fmmla v0.8h, v0.16b, v31.16b + fmmla v0.8h, v31.16b, v0.16b + fmmla v0.8h, v31.16b, v31.16b + fmmla v31.8h, v0.16b, v0.16b + fmmla v31.8h, v0.16b, v31.16b + fmmla v31.8h, v31.16b, v0.16b + fmmla v31.8h, v31.16b, v31.16b diff --git a/gas/testsuite/gas/aarch64/f8f16mm_sve2-bad.d b/gas/testsuite/gas/aarch64/f8f16mm_sve2-bad.d new file mode 100644 index 0000000..4e1f53b --- /dev/null +++ b/gas/testsuite/gas/aarch64/f8f16mm_sve2-bad.d @@ -0,0 +1,4 @@ +#name: Illegal test of F8F16MM SVE2 FMMLA instruction +#as: -march=armv8-a +#source: f8f16mm_sve2.s +#error_output: f8f16mm_sve2-bad.l diff --git a/gas/testsuite/gas/aarch64/f8f16mm_sve2-bad.l b/gas/testsuite/gas/aarch64/f8f16mm_sve2-bad.l new file mode 100644 index 0000000..3560c17 --- /dev/null +++ b/gas/testsuite/gas/aarch64/f8f16mm_sve2-bad.l @@ -0,0 +1,9 @@ +[^:]*: Assembler messages: +.*: Error: selected processor does not support `fmmla z0.h,z0.b,z0.b' +.*: Error: selected processor does not support `fmmla z0.h,z0.b,z31.b' +.*: Error: selected processor does not support `fmmla z0.h,z31.b,z0.b' +.*: Error: selected processor does not support `fmmla z0.h,z31.b,z31.b' +.*: Error: selected processor does not support `fmmla z31.h,z0.b,z0.b' +.*: Error: selected processor does not support `fmmla z31.h,z0.b,z31.b' +.*: Error: selected processor does not support `fmmla z31.h,z31.b,z0.b' +.*: Error: selected processor does not support `fmmla z31.h,z31.b,z31.b' diff --git a/gas/testsuite/gas/aarch64/f8f16mm_sve2.d b/gas/testsuite/gas/aarch64/f8f16mm_sve2.d new file mode 100644 index 0000000..3bb69ce --- /dev/null +++ b/gas/testsuite/gas/aarch64/f8f16mm_sve2.d @@ -0,0 +1,18 @@ +#name: F8F16MM SVE2 FMMLA instructions +#as: -march=armv8-a+sve2+f8f16mm +#objdump: -dr + +.*: file format .* + + +Disassembly of section .*: + +.* <a>: +.*: 6460e000 fmmla z0.h, z0.b, z0.b +.*: 647fe000 fmmla z0.h, z0.b, z31.b +.*: 6460e3e0 fmmla z0.h, z31.b, z0.b +.*: 647fe3e0 fmmla z0.h, z31.b, z31.b +.*: 6460e01f fmmla z31.h, z0.b, z0.b +.*: 647fe01f fmmla z31.h, z0.b, z31.b +.*: 6460e3ff fmmla z31.h, z31.b, z0.b +.*: 647fe3ff fmmla z31.h, z31.b, z31.b diff --git a/gas/testsuite/gas/aarch64/f8f16mm_sve2.s b/gas/testsuite/gas/aarch64/f8f16mm_sve2.s new file mode 100644 index 0000000..c1a32c9 --- /dev/null +++ b/gas/testsuite/gas/aarch64/f8f16mm_sve2.s @@ -0,0 +1,9 @@ +a: + fmmla z0.h, z0.b, z0.b + fmmla z0.h, z0.b, z31.b + fmmla z0.h, z31.b, z0.b + fmmla z0.h, z31.b, z31.b + fmmla z31.h, z0.b, z0.b + fmmla z31.h, z0.b, z31.b + fmmla z31.h, z31.b, z0.b + fmmla z31.h, z31.b, z31.b diff --git a/gas/testsuite/gas/aarch64/f8f32mm-bad.d b/gas/testsuite/gas/aarch64/f8f32mm-bad.d new file mode 100644 index 0000000..3d920f0 --- /dev/null +++ b/gas/testsuite/gas/aarch64/f8f32mm-bad.d @@ -0,0 +1,4 @@ +#name: Illegal test of F8F32MM FMMLA instruction +#as: -march=armv8-a +#source: f8f32mm.s +#error_output: f8f32mm-bad.l diff --git a/gas/testsuite/gas/aarch64/f8f32mm-bad.l b/gas/testsuite/gas/aarch64/f8f32mm-bad.l new file mode 100644 index 0000000..910a2e1 --- /dev/null +++ b/gas/testsuite/gas/aarch64/f8f32mm-bad.l @@ -0,0 +1,9 @@ +[^:]*: Assembler messages: +.*: Error: selected processor does not support `fmmla v0.4s,v0.16b,v0.16b' +.*: Error: selected processor does not support `fmmla v0.4s,v0.16b,v31.16b' +.*: Error: selected processor does not support `fmmla v0.4s,v31.16b,v0.16b' +.*: Error: selected processor does not support `fmmla v0.4s,v31.16b,v31.16b' +.*: Error: selected processor does not support `fmmla v31.4s,v0.16b,v0.16b' +.*: Error: selected processor does not support `fmmla v31.4s,v0.16b,v31.16b' +.*: Error: selected processor does not support `fmmla v31.4s,v31.16b,v0.16b' +.*: Error: selected processor does not support `fmmla v31.4s,v31.16b,v31.16b' diff --git a/gas/testsuite/gas/aarch64/f8f32mm.d b/gas/testsuite/gas/aarch64/f8f32mm.d new file mode 100644 index 0000000..b1e6beb --- /dev/null +++ b/gas/testsuite/gas/aarch64/f8f32mm.d @@ -0,0 +1,18 @@ +#name: F8F32MM FMMLA instructions +#as: -march=armv8-a+f8f32mm +#objdump: -dr + +.*: file format .* + + +Disassembly of section .*: + +.* <a>: +.*: 6e80ec00 fmmla v0.4s, v0.16b, v0.16b +.*: 6e9fec00 fmmla v0.4s, v0.16b, v31.16b +.*: 6e80efe0 fmmla v0.4s, v31.16b, v0.16b +.*: 6e9fefe0 fmmla v0.4s, v31.16b, v31.16b +.*: 6e80ec1f fmmla v31.4s, v0.16b, v0.16b +.*: 6e9fec1f fmmla v31.4s, v0.16b, v31.16b +.*: 6e80efff fmmla v31.4s, v31.16b, v0.16b +.*: 6e9fefff fmmla v31.4s, v31.16b, v31.16b diff --git a/gas/testsuite/gas/aarch64/f8f32mm.s b/gas/testsuite/gas/aarch64/f8f32mm.s new file mode 100644 index 0000000..4c8421d --- /dev/null +++ b/gas/testsuite/gas/aarch64/f8f32mm.s @@ -0,0 +1,9 @@ +a: + fmmla v0.4s, v0.16b, v0.16b + fmmla v0.4s, v0.16b, v31.16b + fmmla v0.4s, v31.16b, v0.16b + fmmla v0.4s, v31.16b, v31.16b + fmmla v31.4s, v0.16b, v0.16b + fmmla v31.4s, v0.16b, v31.16b + fmmla v31.4s, v31.16b, v0.16b + fmmla v31.4s, v31.16b, v31.16b diff --git a/gas/testsuite/gas/aarch64/f8f32mm_sve2-bad.d b/gas/testsuite/gas/aarch64/f8f32mm_sve2-bad.d new file mode 100644 index 0000000..200f49c --- /dev/null +++ b/gas/testsuite/gas/aarch64/f8f32mm_sve2-bad.d @@ -0,0 +1,4 @@ +#name: Illegal test of F8F32MM SVE2 FMMLA instruction +#as: -march=armv8-a +#source: f8f32mm_sve2.s +#error_output: f8f32mm_sve2-bad.l diff --git a/gas/testsuite/gas/aarch64/f8f32mm_sve2-bad.l b/gas/testsuite/gas/aarch64/f8f32mm_sve2-bad.l new file mode 100644 index 0000000..46b62b2 --- /dev/null +++ b/gas/testsuite/gas/aarch64/f8f32mm_sve2-bad.l @@ -0,0 +1,9 @@ +[^:]*: Assembler messages: +.*: Error: selected processor does not support `fmmla z0.s,z0.b,z0.b' +.*: Error: selected processor does not support `fmmla z0.s,z0.b,z31.b' +.*: Error: selected processor does not support `fmmla z0.s,z31.b,z0.b' +.*: Error: selected processor does not support `fmmla z0.s,z31.b,z31.b' +.*: Error: selected processor does not support `fmmla z31.s,z0.b,z0.b' +.*: Error: selected processor does not support `fmmla z31.s,z0.b,z31.b' +.*: Error: selected processor does not support `fmmla z31.s,z31.b,z0.b' +.*: Error: selected processor does not support `fmmla z31.s,z31.b,z31.b' diff --git a/gas/testsuite/gas/aarch64/f8f32mm_sve2.d b/gas/testsuite/gas/aarch64/f8f32mm_sve2.d new file mode 100644 index 0000000..30670c9 --- /dev/null +++ b/gas/testsuite/gas/aarch64/f8f32mm_sve2.d @@ -0,0 +1,18 @@ +#name: F8F32MM SVE2 FMMLA instructions +#as: -march=armv8-a+sve2+f8f32mm +#objdump: -dr + +.*: file format .* + + +Disassembly of section .*: + +.* <a>: +.*: 6420e000 fmmla z0.s, z0.b, z0.b +.*: 643fe000 fmmla z0.s, z0.b, z31.b +.*: 6420e3e0 fmmla z0.s, z31.b, z0.b +.*: 643fe3e0 fmmla z0.s, z31.b, z31.b +.*: 6420e01f fmmla z31.s, z0.b, z0.b +.*: 643fe01f fmmla z31.s, z0.b, z31.b +.*: 6420e3ff fmmla z31.s, z31.b, z0.b +.*: 643fe3ff fmmla z31.s, z31.b, z31.b diff --git a/gas/testsuite/gas/aarch64/f8f32mm_sve2.s b/gas/testsuite/gas/aarch64/f8f32mm_sve2.s new file mode 100644 index 0000000..a293e3f --- /dev/null +++ b/gas/testsuite/gas/aarch64/f8f32mm_sve2.s @@ -0,0 +1,9 @@ +a: + fmmla z0.s, z0.b, z0.b + fmmla z0.s, z0.b, z31.b + fmmla z0.s, z31.b, z0.b + fmmla z0.s, z31.b, z31.b + fmmla z31.s, z0.b, z0.b + fmmla z31.s, z0.b, z31.b + fmmla z31.s, z31.b, z0.b + fmmla z31.s, z31.b, z31.b diff --git a/gas/testsuite/gas/aarch64/float-fp16.d b/gas/testsuite/gas/aarch64/float-fp16.d index 3d96a45..c7a1200 100644 --- a/gas/testsuite/gas/aarch64/float-fp16.d +++ b/gas/testsuite/gas/aarch64/float-fp16.d @@ -6,167 +6,193 @@ Disassembly of section \.text: 0+ <.*>: - [0-9a-f]+: 1e200400 fccmp s0, s0, #0x0, eq // eq = none - [0-9a-f]+: 1ee00400 fccmp h0, h0, #0x0, eq // eq = none - [0-9a-f]+: 1e22d420 fccmp s1, s2, #0x0, le - [0-9a-f]+: 1ee2d420 fccmp h1, h2, #0x0, le - [0-9a-f]+: 1e200410 fccmpe s0, s0, #0x0, eq // eq = none - [0-9a-f]+: 1ee00410 fccmpe h0, h0, #0x0, eq // eq = none - [0-9a-f]+: 1e22d430 fccmpe s1, s2, #0x0, le - [0-9a-f]+: 1ee2d430 fccmpe h1, h2, #0x0, le - [0-9a-f]+: 1e202000 fcmp s0, s0 - [0-9a-f]+: 1ee02000 fcmp h0, h0 - [0-9a-f]+: 1e222020 fcmp s1, s2 - [0-9a-f]+: 1ee22020 fcmp h1, h2 - [0-9a-f]+: 1e202010 fcmpe s0, s0 - [0-9a-f]+: 1ee02010 fcmpe h0, h0 - [0-9a-f]+: 1e222030 fcmpe s1, s2 - [0-9a-f]+: 1ee22030 fcmpe h1, h2 - [0-9a-f]+: 1e202008 fcmp s0, #0\.0 - [0-9a-f]+: 1ee02008 fcmp h0, #0\.0 - [0-9a-f]+: 1e202018 fcmpe s0, #0\.0 - [0-9a-f]+: 1ee02018 fcmpe h0, #0\.0 - [0-9a-f]+: 1e210c00 fcsel s0, s0, s1, eq // eq = none - [0-9a-f]+: 1ee10c00 fcsel h0, h0, h1, eq // eq = none - [0-9a-f]+: 9ee60000 fmov x0, h0 - [0-9a-f]+: 1ee60000 fmov w0, h0 - [0-9a-f]+: 9ee70001 fmov h1, x0 - [0-9a-f]+: 1ee70001 fmov h1, w0 - [0-9a-f]+: 1ee0c020 fabs h0, h1 - [0-9a-f]+: 1e20c020 fabs s0, s1 - [0-9a-f]+: 1e60c020 fabs d0, d1 - [0-9a-f]+: 1ee14020 fneg h0, h1 - [0-9a-f]+: 1e214020 fneg s0, s1 - [0-9a-f]+: 1e614020 fneg d0, d1 - [0-9a-f]+: 1ee1c020 fsqrt h0, h1 - [0-9a-f]+: 1e21c020 fsqrt s0, s1 - [0-9a-f]+: 1e61c020 fsqrt d0, d1 - [0-9a-f]+: 1ee44020 frintn h0, h1 - [0-9a-f]+: 1e244020 frintn s0, s1 - [0-9a-f]+: 1e644020 frintn d0, d1 - [0-9a-f]+: 1ee4c020 frintp h0, h1 - [0-9a-f]+: 1e24c020 frintp s0, s1 - [0-9a-f]+: 1e64c020 frintp d0, d1 - [0-9a-f]+: 1ee54020 frintm h0, h1 - [0-9a-f]+: 1e254020 frintm s0, s1 - [0-9a-f]+: 1e654020 frintm d0, d1 - [0-9a-f]+: 1ee5c020 frintz h0, h1 - [0-9a-f]+: 1e25c020 frintz s0, s1 - [0-9a-f]+: 1e65c020 frintz d0, d1 - [0-9a-f]+: 1ee64020 frinta h0, h1 - [0-9a-f]+: 1e264020 frinta s0, s1 - [0-9a-f]+: 1e664020 frinta d0, d1 - [0-9a-f]+: 1ee74020 frintx h0, h1 - [0-9a-f]+: 1e274020 frintx s0, s1 - [0-9a-f]+: 1e674020 frintx d0, d1 - [0-9a-f]+: 1ee7c020 frinti h0, h1 - [0-9a-f]+: 1e27c020 frinti s0, s1 - [0-9a-f]+: 1e67c020 frinti d0, d1 - [0-9a-f]+: 1ee20820 fmul h0, h1, h2 - [0-9a-f]+: 1e220820 fmul s0, s1, s2 - [0-9a-f]+: 1e620820 fmul d0, d1, d2 - [0-9a-f]+: 1ee21820 fdiv h0, h1, h2 - [0-9a-f]+: 1e221820 fdiv s0, s1, s2 - [0-9a-f]+: 1e621820 fdiv d0, d1, d2 - [0-9a-f]+: 1ee22820 fadd h0, h1, h2 - [0-9a-f]+: 1e222820 fadd s0, s1, s2 - [0-9a-f]+: 1e622820 fadd d0, d1, d2 - [0-9a-f]+: 1ee23820 fsub h0, h1, h2 - [0-9a-f]+: 1e223820 fsub s0, s1, s2 - [0-9a-f]+: 1e623820 fsub d0, d1, d2 - [0-9a-f]+: 1ee24820 fmax h0, h1, h2 - [0-9a-f]+: 1e224820 fmax s0, s1, s2 - [0-9a-f]+: 1e624820 fmax d0, d1, d2 - [0-9a-f]+: 1ee25820 fmin h0, h1, h2 - [0-9a-f]+: 1e225820 fmin s0, s1, s2 - [0-9a-f]+: 1e625820 fmin d0, d1, d2 - [0-9a-f]+: 1ee26820 fmaxnm h0, h1, h2 - [0-9a-f]+: 1e226820 fmaxnm s0, s1, s2 - [0-9a-f]+: 1e626820 fmaxnm d0, d1, d2 - [0-9a-f]+: 1ee27820 fminnm h0, h1, h2 - [0-9a-f]+: 1e227820 fminnm s0, s1, s2 - [0-9a-f]+: 1e627820 fminnm d0, d1, d2 - [0-9a-f]+: 1ee28820 fnmul h0, h1, h2 - [0-9a-f]+: 1e228820 fnmul s0, s1, s2 - [0-9a-f]+: 1e628820 fnmul d0, d1, d2 - [0-9a-f]+: 1fc20c20 fmadd h0, h1, h2, h3 - [0-9a-f]+: 1f020c20 fmadd s0, s1, s2, s3 - [0-9a-f]+: 1f420c20 fmadd d0, d1, d2, d3 - [0-9a-f]+: 1fc28c20 fmsub h0, h1, h2, h3 - [0-9a-f]+: 1f028c20 fmsub s0, s1, s2, s3 - [0-9a-f]+: 1f428c20 fmsub d0, d1, d2, d3 - [0-9a-f]+: 1fe20c20 fnmadd h0, h1, h2, h3 - [0-9a-f]+: 1f220c20 fnmadd s0, s1, s2, s3 - [0-9a-f]+: 1f620c20 fnmadd d0, d1, d2, d3 - [0-9a-f]+: 1fe28c20 fnmsub h0, h1, h2, h3 - [0-9a-f]+: 1f228c20 fnmsub s0, s1, s2, s3 - [0-9a-f]+: 1f628c20 fnmsub d0, d1, d2, d3 - [0-9a-f]+: 1e2e1000 fmov s0, #1\.000000000000000000e\+00 - [0-9a-f]+: 1eee1000 fmov h0, #1\.000000000000000000e\+00 - [0-9a-f]+: 1e02f820 scvtf s0, w1, #2 - [0-9a-f]+: 9e02f420 scvtf s0, x1, #3 - [0-9a-f]+: 1ec2f820 scvtf h0, w1, #2 - [0-9a-f]+: 9ec2f420 scvtf h0, x1, #3 - [0-9a-f]+: 1e03f820 ucvtf s0, w1, #2 - [0-9a-f]+: 9e03f420 ucvtf s0, x1, #3 - [0-9a-f]+: 1ec3f820 ucvtf h0, w1, #2 - [0-9a-f]+: 9ec3f420 ucvtf h0, x1, #3 - [0-9a-f]+: 1e58f801 fcvtzs w1, d0, #2 - [0-9a-f]+: 9e58f401 fcvtzs x1, d0, #3 - [0-9a-f]+: 1ed8f801 fcvtzs w1, h0, #2 - [0-9a-f]+: 9ed8f401 fcvtzs x1, h0, #3 - [0-9a-f]+: 1e59f801 fcvtzu w1, d0, #2 - [0-9a-f]+: 9e59f401 fcvtzu x1, d0, #3 - [0-9a-f]+: 1ed9f801 fcvtzu w1, h0, #2 - [0-9a-f]+: 9ed9f401 fcvtzu x1, h0, #3 - [0-9a-f]+: 1e200001 fcvtns w1, s0 - [0-9a-f]+: 9e600001 fcvtns x1, d0 - [0-9a-f]+: 1ee00001 fcvtns w1, h0 - [0-9a-f]+: 9ee00001 fcvtns x1, h0 - [0-9a-f]+: 1e210001 fcvtnu w1, s0 - [0-9a-f]+: 9e610001 fcvtnu x1, d0 - [0-9a-f]+: 1ee10001 fcvtnu w1, h0 - [0-9a-f]+: 9ee10001 fcvtnu x1, h0 - [0-9a-f]+: 1e250001 fcvtau w1, s0 - [0-9a-f]+: 9e650001 fcvtau x1, d0 - [0-9a-f]+: 1ee50001 fcvtau w1, h0 - [0-9a-f]+: 9ee50001 fcvtau x1, h0 - [0-9a-f]+: 1e240001 fcvtas w1, s0 - [0-9a-f]+: 9e640001 fcvtas x1, d0 - [0-9a-f]+: 1ee40001 fcvtas w1, h0 - [0-9a-f]+: 9ee40001 fcvtas x1, h0 - [0-9a-f]+: 1e280001 fcvtps w1, s0 - [0-9a-f]+: 9e680001 fcvtps x1, d0 - [0-9a-f]+: 1ee80001 fcvtps w1, h0 - [0-9a-f]+: 9ee80001 fcvtps x1, h0 - [0-9a-f]+: 1e290001 fcvtpu w1, s0 - [0-9a-f]+: 9e690001 fcvtpu x1, d0 - [0-9a-f]+: 1ee90001 fcvtpu w1, h0 - [0-9a-f]+: 9ee90001 fcvtpu x1, h0 - [0-9a-f]+: 1e300001 fcvtms w1, s0 - [0-9a-f]+: 9e700001 fcvtms x1, d0 - [0-9a-f]+: 1ef00001 fcvtms w1, h0 - [0-9a-f]+: 9ef00001 fcvtms x1, h0 - [0-9a-f]+: 1e310001 fcvtmu w1, s0 - [0-9a-f]+: 9e710001 fcvtmu x1, d0 - [0-9a-f]+: 1ef10001 fcvtmu w1, h0 - [0-9a-f]+: 9ef10001 fcvtmu x1, h0 - [0-9a-f]+: 1e220020 scvtf s0, w1 - [0-9a-f]+: 9e620020 scvtf d0, x1 - [0-9a-f]+: 1ee20020 scvtf h0, w1 - [0-9a-f]+: 9ee20020 scvtf h0, x1 - [0-9a-f]+: 1e230020 ucvtf s0, w1 - [0-9a-f]+: 9e630020 ucvtf d0, x1 - [0-9a-f]+: 1ee30020 ucvtf h0, w1 - [0-9a-f]+: 9ee30020 ucvtf h0, x1 - [0-9a-f]+: 1e604020 fmov d0, d1 - [0-9a-f]+: 1e204020 fmov s0, s1 - [0-9a-f]+: 1ee04020 fmov h0, h1 - [0-9a-f]+: 9ee60020 fmov x0, h1 - [0-9a-f]+: 1ee60020 fmov w0, h1 - [0-9a-f]+: 9ee70001 fmov h1, x0 - [0-9a-f]+: 1ee70001 fmov h1, w0 - [0-9a-f]+: 1e260020 fmov w0, s1 - [0-9a-f]+: 9e660020 fmov x0, d1 - [0-9a-f]+: 1e270001 fmov s1, w0 - [0-9a-f]+: 9e670001 fmov d1, x0 + *[0-9a-f]+: 1e200400 fccmp s0, s0, #0x0, eq // eq = none + *[0-9a-f]+: 1ee00400 fccmp h0, h0, #0x0, eq // eq = none + *[0-9a-f]+: 1e22d420 fccmp s1, s2, #0x0, le + *[0-9a-f]+: 1ee2d420 fccmp h1, h2, #0x0, le + *[0-9a-f]+: 1e200410 fccmpe s0, s0, #0x0, eq // eq = none + *[0-9a-f]+: 1ee00410 fccmpe h0, h0, #0x0, eq // eq = none + *[0-9a-f]+: 1e22d430 fccmpe s1, s2, #0x0, le + *[0-9a-f]+: 1ee2d430 fccmpe h1, h2, #0x0, le + *[0-9a-f]+: 1e202000 fcmp s0, s0 + *[0-9a-f]+: 1ee02000 fcmp h0, h0 + *[0-9a-f]+: 1e222020 fcmp s1, s2 + *[0-9a-f]+: 1ee22020 fcmp h1, h2 + *[0-9a-f]+: 1e202010 fcmpe s0, s0 + *[0-9a-f]+: 1ee02010 fcmpe h0, h0 + *[0-9a-f]+: 1e222030 fcmpe s1, s2 + *[0-9a-f]+: 1ee22030 fcmpe h1, h2 + *[0-9a-f]+: 1e202008 fcmp s0, #0\.0 + *[0-9a-f]+: 1ee02008 fcmp h0, #0\.0 + *[0-9a-f]+: 1e202018 fcmpe s0, #0\.0 + *[0-9a-f]+: 1ee02018 fcmpe h0, #0\.0 + *[0-9a-f]+: 1e210c00 fcsel s0, s0, s1, eq // eq = none + *[0-9a-f]+: 1ee10c00 fcsel h0, h0, h1, eq // eq = none + *[0-9a-f]+: 9ee60000 fmov x0, h0 + *[0-9a-f]+: 1ee60000 fmov w0, h0 + *[0-9a-f]+: 9ee70001 fmov h1, x0 + *[0-9a-f]+: 1ee70001 fmov h1, w0 + *[0-9a-f]+: 1ee0c020 fabs h0, h1 + *[0-9a-f]+: 1e20c020 fabs s0, s1 + *[0-9a-f]+: 1e60c020 fabs d0, d1 + *[0-9a-f]+: 1ee14020 fneg h0, h1 + *[0-9a-f]+: 1e214020 fneg s0, s1 + *[0-9a-f]+: 1e614020 fneg d0, d1 + *[0-9a-f]+: 1ee1c020 fsqrt h0, h1 + *[0-9a-f]+: 1e21c020 fsqrt s0, s1 + *[0-9a-f]+: 1e61c020 fsqrt d0, d1 + *[0-9a-f]+: 1ee24000 fcvt s0, h0 + *[0-9a-f]+: 1ee2401f fcvt s31, h0 + *[0-9a-f]+: 1ee243e0 fcvt s0, h31 + *[0-9a-f]+: 1ee2c000 fcvt d0, h0 + *[0-9a-f]+: 1ee2c01f fcvt d31, h0 + *[0-9a-f]+: 1ee2c3e0 fcvt d0, h31 + *[0-9a-f]+: 1e23c000 fcvt h0, s0 + *[0-9a-f]+: 1e23c01f fcvt h31, s0 + *[0-9a-f]+: 1e23c3e0 fcvt h0, s31 + *[0-9a-f]+: 1e22c000 fcvt d0, s0 + *[0-9a-f]+: 1e22c01f fcvt d31, s0 + *[0-9a-f]+: 1e22c3e0 fcvt d0, s31 + *[0-9a-f]+: 1e63c000 fcvt h0, d0 + *[0-9a-f]+: 1e63c01f fcvt h31, d0 + *[0-9a-f]+: 1e63c3e0 fcvt h0, d31 + *[0-9a-f]+: 1e624000 fcvt s0, d0 + *[0-9a-f]+: 1e62401f fcvt s31, d0 + *[0-9a-f]+: 1e6243e0 fcvt s0, d31 + *[0-9a-f]+: 1ee44020 frintn h0, h1 + *[0-9a-f]+: 1e244020 frintn s0, s1 + *[0-9a-f]+: 1e644020 frintn d0, d1 + *[0-9a-f]+: 1ee4c020 frintp h0, h1 + *[0-9a-f]+: 1e24c020 frintp s0, s1 + *[0-9a-f]+: 1e64c020 frintp d0, d1 + *[0-9a-f]+: 1ee54020 frintm h0, h1 + *[0-9a-f]+: 1e254020 frintm s0, s1 + *[0-9a-f]+: 1e654020 frintm d0, d1 + *[0-9a-f]+: 1ee5c020 frintz h0, h1 + *[0-9a-f]+: 1e25c020 frintz s0, s1 + *[0-9a-f]+: 1e65c020 frintz d0, d1 + *[0-9a-f]+: 1ee64020 frinta h0, h1 + *[0-9a-f]+: 1e264020 frinta s0, s1 + *[0-9a-f]+: 1e664020 frinta d0, d1 + *[0-9a-f]+: 1ee74020 frintx h0, h1 + *[0-9a-f]+: 1e274020 frintx s0, s1 + *[0-9a-f]+: 1e674020 frintx d0, d1 + *[0-9a-f]+: 1ee7c020 frinti h0, h1 + *[0-9a-f]+: 1e27c020 frinti s0, s1 + *[0-9a-f]+: 1e67c020 frinti d0, d1 + *[0-9a-f]+: 1ee20820 fmul h0, h1, h2 + *[0-9a-f]+: 1e220820 fmul s0, s1, s2 + *[0-9a-f]+: 1e620820 fmul d0, d1, d2 + *[0-9a-f]+: 1ee21820 fdiv h0, h1, h2 + *[0-9a-f]+: 1e221820 fdiv s0, s1, s2 + *[0-9a-f]+: 1e621820 fdiv d0, d1, d2 + *[0-9a-f]+: 1ee22820 fadd h0, h1, h2 + *[0-9a-f]+: 1e222820 fadd s0, s1, s2 + *[0-9a-f]+: 1e622820 fadd d0, d1, d2 + *[0-9a-f]+: 1ee23820 fsub h0, h1, h2 + *[0-9a-f]+: 1e223820 fsub s0, s1, s2 + *[0-9a-f]+: 1e623820 fsub d0, d1, d2 + *[0-9a-f]+: 1ee24820 fmax h0, h1, h2 + *[0-9a-f]+: 1e224820 fmax s0, s1, s2 + *[0-9a-f]+: 1e624820 fmax d0, d1, d2 + *[0-9a-f]+: 1ee25820 fmin h0, h1, h2 + *[0-9a-f]+: 1e225820 fmin s0, s1, s2 + *[0-9a-f]+: 1e625820 fmin d0, d1, d2 + *[0-9a-f]+: 1ee26820 fmaxnm h0, h1, h2 + *[0-9a-f]+: 1e226820 fmaxnm s0, s1, s2 + *[0-9a-f]+: 1e626820 fmaxnm d0, d1, d2 + *[0-9a-f]+: 1ee27820 fminnm h0, h1, h2 + *[0-9a-f]+: 1e227820 fminnm s0, s1, s2 + *[0-9a-f]+: 1e627820 fminnm d0, d1, d2 + *[0-9a-f]+: 1ee28820 fnmul h0, h1, h2 + *[0-9a-f]+: 1e228820 fnmul s0, s1, s2 + *[0-9a-f]+: 1e628820 fnmul d0, d1, d2 + *[0-9a-f]+: 1fc20c20 fmadd h0, h1, h2, h3 + *[0-9a-f]+: 1f020c20 fmadd s0, s1, s2, s3 + *[0-9a-f]+: 1f420c20 fmadd d0, d1, d2, d3 + *[0-9a-f]+: 1fc28c20 fmsub h0, h1, h2, h3 + *[0-9a-f]+: 1f028c20 fmsub s0, s1, s2, s3 + *[0-9a-f]+: 1f428c20 fmsub d0, d1, d2, d3 + *[0-9a-f]+: 1fe20c20 fnmadd h0, h1, h2, h3 + *[0-9a-f]+: 1f220c20 fnmadd s0, s1, s2, s3 + *[0-9a-f]+: 1f620c20 fnmadd d0, d1, d2, d3 + *[0-9a-f]+: 1fe28c20 fnmsub h0, h1, h2, h3 + *[0-9a-f]+: 1f228c20 fnmsub s0, s1, s2, s3 + *[0-9a-f]+: 1f628c20 fnmsub d0, d1, d2, d3 + *[0-9a-f]+: 1e2e1000 fmov s0, #1\.000000000000000000e\+00 + *[0-9a-f]+: 1eee1000 fmov h0, #1\.000000000000000000e\+00 + *[0-9a-f]+: 1e02f820 scvtf s0, w1, #2 + *[0-9a-f]+: 9e02f420 scvtf s0, x1, #3 + *[0-9a-f]+: 1ec2f820 scvtf h0, w1, #2 + *[0-9a-f]+: 9ec2f420 scvtf h0, x1, #3 + *[0-9a-f]+: 1e03f820 ucvtf s0, w1, #2 + *[0-9a-f]+: 9e03f420 ucvtf s0, x1, #3 + *[0-9a-f]+: 1ec3f820 ucvtf h0, w1, #2 + *[0-9a-f]+: 9ec3f420 ucvtf h0, x1, #3 + *[0-9a-f]+: 1e58f801 fcvtzs w1, d0, #2 + *[0-9a-f]+: 9e58f401 fcvtzs x1, d0, #3 + *[0-9a-f]+: 1ed8f801 fcvtzs w1, h0, #2 + *[0-9a-f]+: 9ed8f401 fcvtzs x1, h0, #3 + *[0-9a-f]+: 1e59f801 fcvtzu w1, d0, #2 + *[0-9a-f]+: 9e59f401 fcvtzu x1, d0, #3 + *[0-9a-f]+: 1ed9f801 fcvtzu w1, h0, #2 + *[0-9a-f]+: 9ed9f401 fcvtzu x1, h0, #3 + *[0-9a-f]+: 1e200001 fcvtns w1, s0 + *[0-9a-f]+: 9e600001 fcvtns x1, d0 + *[0-9a-f]+: 1ee00001 fcvtns w1, h0 + *[0-9a-f]+: 9ee00001 fcvtns x1, h0 + *[0-9a-f]+: 1e210001 fcvtnu w1, s0 + *[0-9a-f]+: 9e610001 fcvtnu x1, d0 + *[0-9a-f]+: 1ee10001 fcvtnu w1, h0 + *[0-9a-f]+: 9ee10001 fcvtnu x1, h0 + *[0-9a-f]+: 1e250001 fcvtau w1, s0 + *[0-9a-f]+: 9e650001 fcvtau x1, d0 + *[0-9a-f]+: 1ee50001 fcvtau w1, h0 + *[0-9a-f]+: 9ee50001 fcvtau x1, h0 + *[0-9a-f]+: 1e240001 fcvtas w1, s0 + *[0-9a-f]+: 9e640001 fcvtas x1, d0 + *[0-9a-f]+: 1ee40001 fcvtas w1, h0 + *[0-9a-f]+: 9ee40001 fcvtas x1, h0 + *[0-9a-f]+: 1e280001 fcvtps w1, s0 + *[0-9a-f]+: 9e680001 fcvtps x1, d0 + *[0-9a-f]+: 1ee80001 fcvtps w1, h0 + *[0-9a-f]+: 9ee80001 fcvtps x1, h0 + *[0-9a-f]+: 1e290001 fcvtpu w1, s0 + *[0-9a-f]+: 9e690001 fcvtpu x1, d0 + *[0-9a-f]+: 1ee90001 fcvtpu w1, h0 + *[0-9a-f]+: 9ee90001 fcvtpu x1, h0 + *[0-9a-f]+: 1e300001 fcvtms w1, s0 + *[0-9a-f]+: 9e700001 fcvtms x1, d0 + *[0-9a-f]+: 1ef00001 fcvtms w1, h0 + *[0-9a-f]+: 9ef00001 fcvtms x1, h0 + *[0-9a-f]+: 1e310001 fcvtmu w1, s0 + *[0-9a-f]+: 9e710001 fcvtmu x1, d0 + *[0-9a-f]+: 1ef10001 fcvtmu w1, h0 + *[0-9a-f]+: 9ef10001 fcvtmu x1, h0 + *[0-9a-f]+: 1e380001 fcvtzs w1, s0 + *[0-9a-f]+: 9e780001 fcvtzs x1, d0 + *[0-9a-f]+: 1ef80001 fcvtzs w1, h0 + *[0-9a-f]+: 9ef80001 fcvtzs x1, h0 + *[0-9a-f]+: 1e390001 fcvtzu w1, s0 + *[0-9a-f]+: 9e790001 fcvtzu x1, d0 + *[0-9a-f]+: 1ef90001 fcvtzu w1, h0 + *[0-9a-f]+: 9ef90001 fcvtzu x1, h0 + *[0-9a-f]+: 1e220020 scvtf s0, w1 + *[0-9a-f]+: 9e620020 scvtf d0, x1 + *[0-9a-f]+: 1ee20020 scvtf h0, w1 + *[0-9a-f]+: 9ee20020 scvtf h0, x1 + *[0-9a-f]+: 1e230020 ucvtf s0, w1 + *[0-9a-f]+: 9e630020 ucvtf d0, x1 + *[0-9a-f]+: 1ee30020 ucvtf h0, w1 + *[0-9a-f]+: 9ee30020 ucvtf h0, x1 + *[0-9a-f]+: 1e604020 fmov d0, d1 + *[0-9a-f]+: 1e204020 fmov s0, s1 + *[0-9a-f]+: 1ee04020 fmov h0, h1 + *[0-9a-f]+: 9ee60020 fmov x0, h1 + *[0-9a-f]+: 1ee60020 fmov w0, h1 + *[0-9a-f]+: 9ee70001 fmov h1, x0 + *[0-9a-f]+: 1ee70001 fmov h1, w0 + *[0-9a-f]+: 1e260020 fmov w0, s1 + *[0-9a-f]+: 9e660020 fmov x0, d1 + *[0-9a-f]+: 1e270001 fmov s1, w0 + *[0-9a-f]+: 9e670001 fmov d1, x0 diff --git a/gas/testsuite/gas/aarch64/float-fp16.s b/gas/testsuite/gas/aarch64/float-fp16.s index 0c30038..e5d13bd 100644 --- a/gas/testsuite/gas/aarch64/float-fp16.s +++ b/gas/testsuite/gas/aarch64/float-fp16.s @@ -43,11 +43,30 @@ .endm .text - .irp op, fabs, fneg, fsqrt, frintn, frintp, frintm, frintz + .irp op, fabs, fneg, fsqrt sdp1src \op .endr - .irp op, frinta, frintx, frinti + fcvt s0, h0 + fcvt s31, h0 + fcvt s0, h31 + fcvt d0, h0 + fcvt d31, h0 + fcvt d0, h31 + fcvt h0, s0 + fcvt h31, s0 + fcvt h0, s31 + fcvt d0, s0 + fcvt d31, s0 + fcvt d0, s31 + fcvt h0, d0 + fcvt h31, d0 + fcvt h0, d31 + fcvt s0, d0 + fcvt s31, d0 + fcvt s0, d31 + + .irp op, frintn, frintp, frintm, frintz, frinta, frintx, frinti sdp1src \op .endr @@ -128,6 +147,11 @@ scvt_fp2int \op .endr + .text + .irp op, fcvtzs, fcvtzu + scvt_fp2int \op + .endr + .irp op, scvtf, ucvtf scvt_int2fp \op .endr diff --git a/gas/testsuite/gas/aarch64/fprcvt.d b/gas/testsuite/gas/aarch64/fprcvt.d new file mode 100644 index 0000000..9129858 --- /dev/null +++ b/gas/testsuite/gas/aarch64/fprcvt.d @@ -0,0 +1,176 @@ +#name: FPRCVT instructions +#as: -march=armv8-a+fprcvt +#objdump: -dr + +.*: file format .* + + +Disassembly of section .*: + +.* <a>: +.*: 1efa0000 fcvtas s0, h0 +.*: 1efa001f fcvtas s31, h0 +.*: 1efa03e0 fcvtas s0, h31 +.*: 9e3a0000 fcvtas d0, s0 +.*: 9e3a001f fcvtas d31, s0 +.*: 9e3a03e0 fcvtas d0, s31 +.*: 9efa0000 fcvtas d0, h0 +.*: 9efa001f fcvtas d31, h0 +.*: 9efa03e0 fcvtas d0, h31 +.*: 1e7a0000 fcvtas s0, d0 +.*: 1e7a001f fcvtas s31, d0 +.*: 1e7a03e0 fcvtas s0, d31 + +.* <b>: +.*: 1efb0000 fcvtau s0, h0 +.*: 1efb001f fcvtau s31, h0 +.*: 1efb03e0 fcvtau s0, h31 +.*: 9e3b0000 fcvtau d0, s0 +.*: 9e3b001f fcvtau d31, s0 +.*: 9e3b03e0 fcvtau d0, s31 +.*: 9efb0000 fcvtau d0, h0 +.*: 9efb001f fcvtau d31, h0 +.*: 9efb03e0 fcvtau d0, h31 +.*: 1e7b0000 fcvtau s0, d0 +.*: 1e7b001f fcvtau s31, d0 +.*: 1e7b03e0 fcvtau s0, d31 + +.* <c>: +.*: 1ef40000 fcvtms s0, h0 +.*: 1ef4001f fcvtms s31, h0 +.*: 1ef403e0 fcvtms s0, h31 +.*: 9e340000 fcvtms d0, s0 +.*: 9e34001f fcvtms d31, s0 +.*: 9e3403e0 fcvtms d0, s31 +.*: 9ef40000 fcvtms d0, h0 +.*: 9ef4001f fcvtms d31, h0 +.*: 9ef403e0 fcvtms d0, h31 +.*: 1e740000 fcvtms s0, d0 +.*: 1e74001f fcvtms s31, d0 +.*: 1e7403e0 fcvtms s0, d31 + +.* <d>: +.*: 1ef50000 fcvtmu s0, h0 +.*: 1ef5001f fcvtmu s31, h0 +.*: 1ef503e0 fcvtmu s0, h31 +.*: 9e350000 fcvtmu d0, s0 +.*: 9e35001f fcvtmu d31, s0 +.*: 9e3503e0 fcvtmu d0, s31 +.*: 9ef50000 fcvtmu d0, h0 +.*: 9ef5001f fcvtmu d31, h0 +.*: 9ef503e0 fcvtmu d0, h31 +.*: 1e750000 fcvtmu s0, d0 +.*: 1e75001f fcvtmu s31, d0 +.*: 1e7503e0 fcvtmu s0, d31 + +.* <e>: +.*: 1eea0000 fcvtns s0, h0 +.*: 1eea001f fcvtns s31, h0 +.*: 1eea03e0 fcvtns s0, h31 +.*: 9e2a0000 fcvtns d0, s0 +.*: 9e2a001f fcvtns d31, s0 +.*: 9e2a03e0 fcvtns d0, s31 +.*: 9eea0000 fcvtns d0, h0 +.*: 9eea001f fcvtns d31, h0 +.*: 9eea03e0 fcvtns d0, h31 +.*: 1e6a0000 fcvtns s0, d0 +.*: 1e6a001f fcvtns s31, d0 +.*: 1e6a03e0 fcvtns s0, d31 + +.* <f>: +.*: 1eeb0000 fcvtnu s0, h0 +.*: 1eeb001f fcvtnu s31, h0 +.*: 1eeb03e0 fcvtnu s0, h31 +.*: 9e2b0000 fcvtnu d0, s0 +.*: 9e2b001f fcvtnu d31, s0 +.*: 9e2b03e0 fcvtnu d0, s31 +.*: 9eeb0000 fcvtnu d0, h0 +.*: 9eeb001f fcvtnu d31, h0 +.*: 9eeb03e0 fcvtnu d0, h31 +.*: 1e6b0000 fcvtnu s0, d0 +.*: 1e6b001f fcvtnu s31, d0 +.*: 1e6b03e0 fcvtnu s0, d31 + +.* <g>: +.*: 1ef20000 fcvtps s0, h0 +.*: 1ef2001f fcvtps s31, h0 +.*: 1ef203e0 fcvtps s0, h31 +.*: 9e320000 fcvtps d0, s0 +.*: 9e32001f fcvtps d31, s0 +.*: 9e3203e0 fcvtps d0, s31 +.*: 9ef20000 fcvtps d0, h0 +.*: 9ef2001f fcvtps d31, h0 +.*: 9ef203e0 fcvtps d0, h31 +.*: 1e720000 fcvtps s0, d0 +.*: 1e72001f fcvtps s31, d0 +.*: 1e7203e0 fcvtps s0, d31 + +.* <h>: +.*: 1ef30000 fcvtpu s0, h0 +.*: 1ef3001f fcvtpu s31, h0 +.*: 1ef303e0 fcvtpu s0, h31 +.*: 9e330000 fcvtpu d0, s0 +.*: 9e33001f fcvtpu d31, s0 +.*: 9e3303e0 fcvtpu d0, s31 +.*: 9ef30000 fcvtpu d0, h0 +.*: 9ef3001f fcvtpu d31, h0 +.*: 9ef303e0 fcvtpu d0, h31 +.*: 1e730000 fcvtpu s0, d0 +.*: 1e73001f fcvtpu s31, d0 +.*: 1e7303e0 fcvtpu s0, d31 + +.* <i>: +.*: 1ef60000 fcvtzs s0, h0 +.*: 1ef6001f fcvtzs s31, h0 +.*: 1ef603e0 fcvtzs s0, h31 +.*: 9e360000 fcvtzs d0, s0 +.*: 9e36001f fcvtzs d31, s0 +.*: 9e3603e0 fcvtzs d0, s31 +.*: 9ef60000 fcvtzs d0, h0 +.*: 9ef6001f fcvtzs d31, h0 +.*: 9ef603e0 fcvtzs d0, h31 +.*: 1e760000 fcvtzs s0, d0 +.*: 1e76001f fcvtzs s31, d0 +.*: 1e7603e0 fcvtzs s0, d31 + +.* <j>: +.*: 1ef70000 fcvtzu s0, h0 +.*: 1ef7001f fcvtzu s31, h0 +.*: 1ef703e0 fcvtzu s0, h31 +.*: 9e370000 fcvtzu d0, s0 +.*: 9e37001f fcvtzu d31, s0 +.*: 9e3703e0 fcvtzu d0, s31 +.*: 9ef70000 fcvtzu d0, h0 +.*: 9ef7001f fcvtzu d31, h0 +.*: 9ef703e0 fcvtzu d0, h31 +.*: 1e770000 fcvtzu s0, d0 +.*: 1e77001f fcvtzu s31, d0 +.*: 1e7703e0 fcvtzu s0, d31 + +.* <k>: +.*: 1efc0000 scvtf h0, s0 +.*: 1efc001f scvtf h31, s0 +.*: 1efc03e0 scvtf h0, s31 +.*: 1e7c0000 scvtf d0, s0 +.*: 1e7c001f scvtf d31, s0 +.*: 1e7c03e0 scvtf d0, s31 +.*: 9efc0000 scvtf h0, d0 +.*: 9efc001f scvtf h31, d0 +.*: 9efc03e0 scvtf h0, d31 +.*: 9e3c0000 scvtf s0, d0 +.*: 9e3c001f scvtf s31, d0 +.*: 9e3c03e0 scvtf s0, d31 + +.* <l>: +.*: 1efd0000 ucvtf h0, s0 +.*: 1efd001f ucvtf h31, s0 +.*: 1efd03e0 ucvtf h0, s31 +.*: 1e7d0000 ucvtf d0, s0 +.*: 1e7d001f ucvtf d31, s0 +.*: 1e7d03e0 ucvtf d0, s31 +.*: 9efd0000 ucvtf h0, d0 +.*: 9efd001f ucvtf h31, d0 +.*: 9efd03e0 ucvtf h0, d31 +.*: 9e3d0000 ucvtf s0, d0 +.*: 9e3d001f ucvtf s31, d0 +.*: 9e3d03e0 ucvtf s0, d31 diff --git a/gas/testsuite/gas/aarch64/fprcvt.s b/gas/testsuite/gas/aarch64/fprcvt.s new file mode 100644 index 0000000..3b09195 --- /dev/null +++ b/gas/testsuite/gas/aarch64/fprcvt.s @@ -0,0 +1,159 @@ +/* fprcvt.s Test file for AArch64 floating-point<->fixed-point + conversion and floating-point<->integer conversion instructions. */ + +a: + fcvtas s0, h0 + fcvtas s31, h0 + fcvtas s0, h31 + fcvtas d0, s0 + fcvtas d31, s0 + fcvtas d0, s31 + fcvtas d0, h0 + fcvtas d31, h0 + fcvtas d0, h31 + fcvtas s0, d0 + fcvtas s31, d0 + fcvtas s0, d31 +b: + fcvtau s0, h0 + fcvtau s31, h0 + fcvtau s0, h31 + fcvtau d0, s0 + fcvtau d31, s0 + fcvtau d0, s31 + fcvtau d0, h0 + fcvtau d31, h0 + fcvtau d0, h31 + fcvtau s0, d0 + fcvtau s31, d0 + fcvtau s0, d31 +c: + fcvtms s0, h0 + fcvtms s31, h0 + fcvtms s0, h31 + fcvtms d0, s0 + fcvtms d31, s0 + fcvtms d0, s31 + fcvtms d0, h0 + fcvtms d31, h0 + fcvtms d0, h31 + fcvtms s0, d0 + fcvtms s31, d0 + fcvtms s0, d31 +d: + fcvtmu s0, h0 + fcvtmu s31, h0 + fcvtmu s0, h31 + fcvtmu d0, s0 + fcvtmu d31, s0 + fcvtmu d0, s31 + fcvtmu d0, h0 + fcvtmu d31, h0 + fcvtmu d0, h31 + fcvtmu s0, d0 + fcvtmu s31, d0 + fcvtmu s0, d31 +e: + fcvtns s0, h0 + fcvtns s31, h0 + fcvtns s0, h31 + fcvtns d0, s0 + fcvtns d31, s0 + fcvtns d0, s31 + fcvtns d0, h0 + fcvtns d31, h0 + fcvtns d0, h31 + fcvtns s0, d0 + fcvtns s31, d0 + fcvtns s0, d31 +f: + fcvtnu s0, h0 + fcvtnu s31, h0 + fcvtnu s0, h31 + fcvtnu d0, s0 + fcvtnu d31, s0 + fcvtnu d0, s31 + fcvtnu d0, h0 + fcvtnu d31, h0 + fcvtnu d0, h31 + fcvtnu s0, d0 + fcvtnu s31, d0 + fcvtnu s0, d31 +g: + fcvtps s0, h0 + fcvtps s31, h0 + fcvtps s0, h31 + fcvtps d0, s0 + fcvtps d31, s0 + fcvtps d0, s31 + fcvtps d0, h0 + fcvtps d31, h0 + fcvtps d0, h31 + fcvtps s0, d0 + fcvtps s31, d0 + fcvtps s0, d31 +h: + fcvtpu s0, h0 + fcvtpu s31, h0 + fcvtpu s0, h31 + fcvtpu d0, s0 + fcvtpu d31, s0 + fcvtpu d0, s31 + fcvtpu d0, h0 + fcvtpu d31, h0 + fcvtpu d0, h31 + fcvtpu s0, d0 + fcvtpu s31, d0 + fcvtpu s0, d31 +i: + fcvtzs s0, h0 + fcvtzs s31, h0 + fcvtzs s0, h31 + fcvtzs d0, s0 + fcvtzs d31, s0 + fcvtzs d0, s31 + fcvtzs d0, h0 + fcvtzs d31, h0 + fcvtzs d0, h31 + fcvtzs s0, d0 + fcvtzs s31, d0 + fcvtzs s0, d31 +j: + fcvtzu s0, h0 + fcvtzu s31, h0 + fcvtzu s0, h31 + fcvtzu d0, s0 + fcvtzu d31, s0 + fcvtzu d0, s31 + fcvtzu d0, h0 + fcvtzu d31, h0 + fcvtzu d0, h31 + fcvtzu s0, d0 + fcvtzu s31, d0 + fcvtzu s0, d31 +k: + scvtf h0, s0 + scvtf h31, s0 + scvtf h0, s31 + scvtf d0, s0 + scvtf d31, s0 + scvtf d0, s31 + scvtf h0, d0 + scvtf h31, d0 + scvtf h0, d31 + scvtf s0, d0 + scvtf s31, d0 + scvtf s0, d31 +l: + ucvtf h0, s0 + ucvtf h31, s0 + ucvtf h0, s31 + ucvtf d0, s0 + ucvtf d31, s0 + ucvtf d0, s31 + ucvtf h0, d0 + ucvtf h31, d0 + ucvtf h0, d31 + ucvtf s0, d0 + ucvtf s31, d0 + ucvtf s0, d31 diff --git a/gas/testsuite/gas/aarch64/gpc3.d b/gas/testsuite/gas/aarch64/gpc3.d new file mode 100644 index 0000000..2535aef --- /dev/null +++ b/gas/testsuite/gas/aarch64/gpc3.d @@ -0,0 +1,11 @@ +#name: RME_GPC3 System register +#as: -march=armv9.5-a +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0+ <.*>: +[^:]*: d53e21a0 mrs x0, gpcbw_el3 +[^:]*: d51e21a0 msr gpcbw_el3, x0 diff --git a/gas/testsuite/gas/aarch64/gpc3.s b/gas/testsuite/gas/aarch64/gpc3.s new file mode 100644 index 0000000..349cc08 --- /dev/null +++ b/gas/testsuite/gas/aarch64/gpc3.s @@ -0,0 +1,7 @@ +/* RME Granule Protection Check 3 Extension. */ + + /* Read from system register. */ + mrs x0, gpcbw_el3 + + /* Write to system register. */ + msr gpcbw_el3, x0 diff --git a/gas/testsuite/gas/aarch64/ldst-extend-general.d b/gas/testsuite/gas/aarch64/ldst-extend-general.d new file mode 100644 index 0000000..7cd4871 --- /dev/null +++ b/gas/testsuite/gas/aarch64/ldst-extend-general.d @@ -0,0 +1,155 @@ +#as: -march=armv8-a +#objdump: -dr + +.*: file format .* + + +Disassembly of section \.text: + +0+ <\.text>: + *[0-9a-f]+: 38204800 strb w0, \[x0, w0, uxtw\] + *[0-9a-f]+: 3820481f strb wzr, \[x0, w0, uxtw\] + *[0-9a-f]+: 38204be0 strb w0, \[sp, w0, uxtw\] + *[0-9a-f]+: 383f4800 strb w0, \[x0, wzr, uxtw\] + *[0-9a-f]+: 38205800 strb w0, \[x0, w0, uxtw #0\] + *[0-9a-f]+: 3820c800 strb w0, \[x0, w0, sxtw\] + *[0-9a-f]+: 383fc800 strb w0, \[x0, wzr, sxtw\] + *[0-9a-f]+: 3820d800 strb w0, \[x0, w0, sxtw #0\] + *[0-9a-f]+: 38206800 strb w0, \[x0, x0\] + *[0-9a-f]+: 383f6800 strb w0, \[x0, xzr\] + *[0-9a-f]+: 38207800 strb w0, \[x0, x0, lsl #0\] + *[0-9a-f]+: 3820e800 strb w0, \[x0, x0, sxtx\] + *[0-9a-f]+: 383fe800 strb w0, \[x0, xzr, sxtx\] + *[0-9a-f]+: 3820f800 strb w0, \[x0, x0, sxtx #0\] + *[0-9a-f]+: 38604800 ldrb w0, \[x0, w0, uxtw\] + *[0-9a-f]+: 3860481f ldrb wzr, \[x0, w0, uxtw\] + *[0-9a-f]+: 38604be0 ldrb w0, \[sp, w0, uxtw\] + *[0-9a-f]+: 387f4800 ldrb w0, \[x0, wzr, uxtw\] + *[0-9a-f]+: 38605800 ldrb w0, \[x0, w0, uxtw #0\] + *[0-9a-f]+: 3860c800 ldrb w0, \[x0, w0, sxtw\] + *[0-9a-f]+: 387fc800 ldrb w0, \[x0, wzr, sxtw\] + *[0-9a-f]+: 3860d800 ldrb w0, \[x0, w0, sxtw #0\] + *[0-9a-f]+: 38606800 ldrb w0, \[x0, x0\] + *[0-9a-f]+: 387f6800 ldrb w0, \[x0, xzr\] + *[0-9a-f]+: 38607800 ldrb w0, \[x0, x0, lsl #0\] + *[0-9a-f]+: 3860e800 ldrb w0, \[x0, x0, sxtx\] + *[0-9a-f]+: 387fe800 ldrb w0, \[x0, xzr, sxtx\] + *[0-9a-f]+: 3860f800 ldrb w0, \[x0, x0, sxtx #0\] + *[0-9a-f]+: 38a04800 ldrsb x0, \[x0, w0, uxtw\] + *[0-9a-f]+: 38a0481f ldrsb xzr, \[x0, w0, uxtw\] + *[0-9a-f]+: 38a04be0 ldrsb x0, \[sp, w0, uxtw\] + *[0-9a-f]+: 38bf4800 ldrsb x0, \[x0, wzr, uxtw\] + *[0-9a-f]+: 38a05800 ldrsb x0, \[x0, w0, uxtw #0\] + *[0-9a-f]+: 38a0c800 ldrsb x0, \[x0, w0, sxtw\] + *[0-9a-f]+: 38bfc800 ldrsb x0, \[x0, wzr, sxtw\] + *[0-9a-f]+: 38a0d800 ldrsb x0, \[x0, w0, sxtw #0\] + *[0-9a-f]+: 38a06800 ldrsb x0, \[x0, x0\] + *[0-9a-f]+: 38bf6800 ldrsb x0, \[x0, xzr\] + *[0-9a-f]+: 38a07800 ldrsb x0, \[x0, x0, lsl #0\] + *[0-9a-f]+: 38a0e800 ldrsb x0, \[x0, x0, sxtx\] + *[0-9a-f]+: 38bfe800 ldrsb x0, \[x0, xzr, sxtx\] + *[0-9a-f]+: 38a0f800 ldrsb x0, \[x0, x0, sxtx #0\] + *[0-9a-f]+: 38e04800 ldrsb w0, \[x0, w0, uxtw\] + *[0-9a-f]+: 38e0481f ldrsb wzr, \[x0, w0, uxtw\] + *[0-9a-f]+: 38e04be0 ldrsb w0, \[sp, w0, uxtw\] + *[0-9a-f]+: 38ff4800 ldrsb w0, \[x0, wzr, uxtw\] + *[0-9a-f]+: 38e05800 ldrsb w0, \[x0, w0, uxtw #0\] + *[0-9a-f]+: 38e0c800 ldrsb w0, \[x0, w0, sxtw\] + *[0-9a-f]+: 38ffc800 ldrsb w0, \[x0, wzr, sxtw\] + *[0-9a-f]+: 38e0d800 ldrsb w0, \[x0, w0, sxtw #0\] + *[0-9a-f]+: 38e06800 ldrsb w0, \[x0, x0\] + *[0-9a-f]+: 38ff6800 ldrsb w0, \[x0, xzr\] + *[0-9a-f]+: 38e07800 ldrsb w0, \[x0, x0, lsl #0\] + *[0-9a-f]+: 38e0e800 ldrsb w0, \[x0, x0, sxtx\] + *[0-9a-f]+: 38ffe800 ldrsb w0, \[x0, xzr, sxtx\] + *[0-9a-f]+: 38e0f800 ldrsb w0, \[x0, x0, sxtx #0\] + *[0-9a-f]+: 78204800 strh w0, \[x0, w0, uxtw\] + *[0-9a-f]+: 7820481f strh wzr, \[x0, w0, uxtw\] + *[0-9a-f]+: 78204be0 strh w0, \[sp, w0, uxtw\] + *[0-9a-f]+: 783f4800 strh w0, \[x0, wzr, uxtw\] + *[0-9a-f]+: 78204800 strh w0, \[x0, w0, uxtw\] + *[0-9a-f]+: 78205800 strh w0, \[x0, w0, uxtw #1\] + *[0-9a-f]+: 7820c800 strh w0, \[x0, w0, sxtw\] + *[0-9a-f]+: 783fc800 strh w0, \[x0, wzr, sxtw\] + *[0-9a-f]+: 7820c800 strh w0, \[x0, w0, sxtw\] + *[0-9a-f]+: 7820d800 strh w0, \[x0, w0, sxtw #1\] + *[0-9a-f]+: 78206800 strh w0, \[x0, x0\] + *[0-9a-f]+: 783f6800 strh w0, \[x0, xzr\] + *[0-9a-f]+: 78206800 strh w0, \[x0, x0\] + *[0-9a-f]+: 78207800 strh w0, \[x0, x0, lsl #1\] + *[0-9a-f]+: 7820e800 strh w0, \[x0, x0, sxtx\] + *[0-9a-f]+: 783fe800 strh w0, \[x0, xzr, sxtx\] + *[0-9a-f]+: 7820e800 strh w0, \[x0, x0, sxtx\] + *[0-9a-f]+: 7820f800 strh w0, \[x0, x0, sxtx #1\] + *[0-9a-f]+: 78604800 ldrh w0, \[x0, w0, uxtw\] + *[0-9a-f]+: 7860481f ldrh wzr, \[x0, w0, uxtw\] + *[0-9a-f]+: 78604be0 ldrh w0, \[sp, w0, uxtw\] + *[0-9a-f]+: 787f4800 ldrh w0, \[x0, wzr, uxtw\] + *[0-9a-f]+: 78604800 ldrh w0, \[x0, w0, uxtw\] + *[0-9a-f]+: 78605800 ldrh w0, \[x0, w0, uxtw #1\] + *[0-9a-f]+: 7860c800 ldrh w0, \[x0, w0, sxtw\] + *[0-9a-f]+: 787fc800 ldrh w0, \[x0, wzr, sxtw\] + *[0-9a-f]+: 7860c800 ldrh w0, \[x0, w0, sxtw\] + *[0-9a-f]+: 7860d800 ldrh w0, \[x0, w0, sxtw #1\] + *[0-9a-f]+: 78606800 ldrh w0, \[x0, x0\] + *[0-9a-f]+: 787f6800 ldrh w0, \[x0, xzr\] + *[0-9a-f]+: 78606800 ldrh w0, \[x0, x0\] + *[0-9a-f]+: 78607800 ldrh w0, \[x0, x0, lsl #1\] + *[0-9a-f]+: 7860e800 ldrh w0, \[x0, x0, sxtx\] + *[0-9a-f]+: 787fe800 ldrh w0, \[x0, xzr, sxtx\] + *[0-9a-f]+: 7860e800 ldrh w0, \[x0, x0, sxtx\] + *[0-9a-f]+: 7860f800 ldrh w0, \[x0, x0, sxtx #1\] + *[0-9a-f]+: 78a04800 ldrsh x0, \[x0, w0, uxtw\] + *[0-9a-f]+: 78a0481f ldrsh xzr, \[x0, w0, uxtw\] + *[0-9a-f]+: 78a04be0 ldrsh x0, \[sp, w0, uxtw\] + *[0-9a-f]+: 78bf4800 ldrsh x0, \[x0, wzr, uxtw\] + *[0-9a-f]+: 78a04800 ldrsh x0, \[x0, w0, uxtw\] + *[0-9a-f]+: 78a05800 ldrsh x0, \[x0, w0, uxtw #1\] + *[0-9a-f]+: 78a0c800 ldrsh x0, \[x0, w0, sxtw\] + *[0-9a-f]+: 78bfc800 ldrsh x0, \[x0, wzr, sxtw\] + *[0-9a-f]+: 78a0c800 ldrsh x0, \[x0, w0, sxtw\] + *[0-9a-f]+: 78a0d800 ldrsh x0, \[x0, w0, sxtw #1\] + *[0-9a-f]+: 78a06800 ldrsh x0, \[x0, x0\] + *[0-9a-f]+: 78bf6800 ldrsh x0, \[x0, xzr\] + *[0-9a-f]+: 78a06800 ldrsh x0, \[x0, x0\] + *[0-9a-f]+: 78a07800 ldrsh x0, \[x0, x0, lsl #1\] + *[0-9a-f]+: 78a0e800 ldrsh x0, \[x0, x0, sxtx\] + *[0-9a-f]+: 78bfe800 ldrsh x0, \[x0, xzr, sxtx\] + *[0-9a-f]+: 78a0e800 ldrsh x0, \[x0, x0, sxtx\] + *[0-9a-f]+: 78a0f800 ldrsh x0, \[x0, x0, sxtx #1\] + *[0-9a-f]+: 78e04800 ldrsh w0, \[x0, w0, uxtw\] + *[0-9a-f]+: 78e0481f ldrsh wzr, \[x0, w0, uxtw\] + *[0-9a-f]+: 78e04be0 ldrsh w0, \[sp, w0, uxtw\] + *[0-9a-f]+: 78ff4800 ldrsh w0, \[x0, wzr, uxtw\] + *[0-9a-f]+: 78e04800 ldrsh w0, \[x0, w0, uxtw\] + *[0-9a-f]+: 78e05800 ldrsh w0, \[x0, w0, uxtw #1\] + *[0-9a-f]+: 78e0c800 ldrsh w0, \[x0, w0, sxtw\] + *[0-9a-f]+: 78ffc800 ldrsh w0, \[x0, wzr, sxtw\] + *[0-9a-f]+: 78e0c800 ldrsh w0, \[x0, w0, sxtw\] + *[0-9a-f]+: 78e0d800 ldrsh w0, \[x0, w0, sxtw #1\] + *[0-9a-f]+: 78e06800 ldrsh w0, \[x0, x0\] + *[0-9a-f]+: 78ff6800 ldrsh w0, \[x0, xzr\] + *[0-9a-f]+: 78e06800 ldrsh w0, \[x0, x0\] + *[0-9a-f]+: 78e07800 ldrsh w0, \[x0, x0, lsl #1\] + *[0-9a-f]+: 78e0e800 ldrsh w0, \[x0, x0, sxtx\] + *[0-9a-f]+: 78ffe800 ldrsh w0, \[x0, xzr, sxtx\] + *[0-9a-f]+: 78e0e800 ldrsh w0, \[x0, x0, sxtx\] + *[0-9a-f]+: 78e0f800 ldrsh w0, \[x0, x0, sxtx #1\] + *[0-9a-f]+: b8a04800 ldrsw x0, \[x0, w0, uxtw\] + *[0-9a-f]+: b8a0481f ldrsw xzr, \[x0, w0, uxtw\] + *[0-9a-f]+: b8a04be0 ldrsw x0, \[sp, w0, uxtw\] + *[0-9a-f]+: b8bf4800 ldrsw x0, \[x0, wzr, uxtw\] + *[0-9a-f]+: b8a04800 ldrsw x0, \[x0, w0, uxtw\] + *[0-9a-f]+: b8a05800 ldrsw x0, \[x0, w0, uxtw #2\] + *[0-9a-f]+: b8a0c800 ldrsw x0, \[x0, w0, sxtw\] + *[0-9a-f]+: b8bfc800 ldrsw x0, \[x0, wzr, sxtw\] + *[0-9a-f]+: b8a0c800 ldrsw x0, \[x0, w0, sxtw\] + *[0-9a-f]+: b8a0d800 ldrsw x0, \[x0, w0, sxtw #2\] + *[0-9a-f]+: b8a06800 ldrsw x0, \[x0, x0\] + *[0-9a-f]+: b8bf6800 ldrsw x0, \[x0, xzr\] + *[0-9a-f]+: b8a06800 ldrsw x0, \[x0, x0\] + *[0-9a-f]+: b8a07800 ldrsw x0, \[x0, x0, lsl #2\] + *[0-9a-f]+: b8a0e800 ldrsw x0, \[x0, x0, sxtx\] + *[0-9a-f]+: b8bfe800 ldrsw x0, \[x0, xzr, sxtx\] + *[0-9a-f]+: b8a0e800 ldrsw x0, \[x0, x0, sxtx\] + *[0-9a-f]+: b8a0f800 ldrsw x0, \[x0, x0, sxtx #2\] diff --git a/gas/testsuite/gas/aarch64/ldst-extend-general.s b/gas/testsuite/gas/aarch64/ldst-extend-general.s new file mode 100644 index 0000000..892d8c4 --- /dev/null +++ b/gas/testsuite/gas/aarch64/ldst-extend-general.s @@ -0,0 +1,152 @@ + strb w0, [x0, w0, uxtw] + strb wzr, [x0, w0, uxtw] + strb w0, [sp, w0, uxtw] + strb w0, [x0, wzr, uxtw] + strb w0, [x0, w0, uxtw #0] + strb w0, [x0, w0, sxtw] + strb w0, [x0, wzr, sxtw] + strb w0, [x0, w0, sxtw #0] + strb w0, [x0, x0] + strb w0, [x0, xzr] + strb w0, [x0, x0, lsl #0] + strb w0, [x0, x0, sxtx] + strb w0, [x0, xzr, sxtx] + strb w0, [x0, x0, sxtx #0] + + ldrb w0, [x0, w0, uxtw] + ldrb wzr, [x0, w0, uxtw] + ldrb w0, [sp, w0, uxtw] + ldrb w0, [x0, wzr, uxtw] + ldrb w0, [x0, w0, uxtw #0] + ldrb w0, [x0, w0, sxtw] + ldrb w0, [x0, wzr, sxtw] + ldrb w0, [x0, w0, sxtw #0] + ldrb w0, [x0, x0] + ldrb w0, [x0, xzr] + ldrb w0, [x0, x0, lsl #0] + ldrb w0, [x0, x0, sxtx] + ldrb w0, [x0, xzr, sxtx] + ldrb w0, [x0, x0, sxtx #0] + + ldrsb x0, [x0, w0, uxtw] + ldrsb xzr, [x0, w0, uxtw] + ldrsb x0, [sp, w0, uxtw] + ldrsb x0, [x0, wzr, uxtw] + ldrsb x0, [x0, w0, uxtw #0] + ldrsb x0, [x0, w0, sxtw] + ldrsb x0, [x0, wzr, sxtw] + ldrsb x0, [x0, w0, sxtw #0] + ldrsb x0, [x0, x0] + ldrsb x0, [x0, xzr] + ldrsb x0, [x0, x0, lsl #0] + ldrsb x0, [x0, x0, sxtx] + ldrsb x0, [x0, xzr, sxtx] + ldrsb x0, [x0, x0, sxtx #0] + ldrsb w0, [x0, w0, uxtw] + ldrsb wzr, [x0, w0, uxtw] + ldrsb w0, [sp, w0, uxtw] + ldrsb w0, [x0, wzr, uxtw] + ldrsb w0, [x0, w0, uxtw #0] + ldrsb w0, [x0, w0, sxtw] + ldrsb w0, [x0, wzr, sxtw] + ldrsb w0, [x0, w0, sxtw #0] + ldrsb w0, [x0, x0] + ldrsb w0, [x0, xzr] + ldrsb w0, [x0, x0, lsl #0] + ldrsb w0, [x0, x0, sxtx] + ldrsb w0, [x0, xzr, sxtx] + ldrsb w0, [x0, x0, sxtx #0] + + strh w0, [x0, w0, uxtw] + strh wzr, [x0, w0, uxtw] + strh w0, [sp, w0, uxtw] + strh w0, [x0, wzr, uxtw] + strh w0, [x0, w0, uxtw #0] + strh w0, [x0, w0, uxtw #1] + strh w0, [x0, w0, sxtw] + strh w0, [x0, wzr, sxtw] + strh w0, [x0, w0, sxtw #0] + strh w0, [x0, w0, sxtw #1] + strh w0, [x0, x0] + strh w0, [x0, xzr] + strh w0, [x0, x0, lsl #0] + strh w0, [x0, x0, lsl #1] + strh w0, [x0, x0, sxtx] + strh w0, [x0, xzr, sxtx] + strh w0, [x0, x0, sxtx #0] + strh w0, [x0, x0, sxtx #1] + + ldrh w0, [x0, w0, uxtw] + ldrh wzr, [x0, w0, uxtw] + ldrh w0, [sp, w0, uxtw] + ldrh w0, [x0, wzr, uxtw] + ldrh w0, [x0, w0, uxtw #0] + ldrh w0, [x0, w0, uxtw #1] + ldrh w0, [x0, w0, sxtw] + ldrh w0, [x0, wzr, sxtw] + ldrh w0, [x0, w0, sxtw #0] + ldrh w0, [x0, w0, sxtw #1] + ldrh w0, [x0, x0] + ldrh w0, [x0, xzr] + ldrh w0, [x0, x0, lsl #0] + ldrh w0, [x0, x0, lsl #1] + ldrh w0, [x0, x0, sxtx] + ldrh w0, [x0, xzr, sxtx] + ldrh w0, [x0, x0, sxtx #0] + ldrh w0, [x0, x0, sxtx #1] + + ldrsh x0, [x0, w0, uxtw] + ldrsh xzr, [x0, w0, uxtw] + ldrsh x0, [sp, w0, uxtw] + ldrsh x0, [x0, wzr, uxtw] + ldrsh x0, [x0, w0, uxtw #0] + ldrsh x0, [x0, w0, uxtw #1] + ldrsh x0, [x0, w0, sxtw] + ldrsh x0, [x0, wzr, sxtw] + ldrsh x0, [x0, w0, sxtw #0] + ldrsh x0, [x0, w0, sxtw #1] + ldrsh x0, [x0, x0] + ldrsh x0, [x0, xzr] + ldrsh x0, [x0, x0, lsl #0] + ldrsh x0, [x0, x0, lsl #1] + ldrsh x0, [x0, x0, sxtx] + ldrsh x0, [x0, xzr, sxtx] + ldrsh x0, [x0, x0, sxtx #0] + ldrsh x0, [x0, x0, sxtx #1] + ldrsh w0, [x0, w0, uxtw] + ldrsh wzr, [x0, w0, uxtw] + ldrsh w0, [sp, w0, uxtw] + ldrsh w0, [x0, wzr, uxtw] + ldrsh w0, [x0, w0, uxtw #0] + ldrsh w0, [x0, w0, uxtw #1] + ldrsh w0, [x0, w0, sxtw] + ldrsh w0, [x0, wzr, sxtw] + ldrsh w0, [x0, w0, sxtw #0] + ldrsh w0, [x0, w0, sxtw #1] + ldrsh w0, [x0, x0] + ldrsh w0, [x0, xzr] + ldrsh w0, [x0, x0, lsl #0] + ldrsh w0, [x0, x0, lsl #1] + ldrsh w0, [x0, x0, sxtx] + ldrsh w0, [x0, xzr, sxtx] + ldrsh w0, [x0, x0, sxtx #0] + ldrsh w0, [x0, x0, sxtx #1] + + ldrsw x0, [x0, w0, uxtw] + ldrsw xzr, [x0, w0, uxtw] + ldrsw x0, [sp, w0, uxtw] + ldrsw x0, [x0, wzr, uxtw] + ldrsw x0, [x0, w0, uxtw #0] + ldrsw x0, [x0, w0, uxtw #2] + ldrsw x0, [x0, w0, sxtw] + ldrsw x0, [x0, wzr, sxtw] + ldrsw x0, [x0, w0, sxtw #0] + ldrsw x0, [x0, w0, sxtw #2] + ldrsw x0, [x0, x0] + ldrsw x0, [x0, xzr] + ldrsw x0, [x0, x0, lsl #0] + ldrsw x0, [x0, x0, lsl #2] + ldrsw x0, [x0, x0, sxtx] + ldrsw x0, [x0, xzr, sxtx] + ldrsw x0, [x0, x0, sxtx #0] + ldrsw x0, [x0, x0, sxtx #2] diff --git a/gas/testsuite/gas/aarch64/ldst-unpriv.d b/gas/testsuite/gas/aarch64/ldst-unpriv.d new file mode 100644 index 0000000..9c33678 --- /dev/null +++ b/gas/testsuite/gas/aarch64/ldst-unpriv.d @@ -0,0 +1,61 @@ +#as: -march=armv8-a +#objdump: -dr + +.*: file format .* + + +Disassembly of section \.text: + +0+ <\.text>: + *[0-9a-f]+: 38000800 sttrb w0, \[x0\] + *[0-9a-f]+: 3800081f sttrb wzr, \[x0\] + *[0-9a-f]+: 38000be0 sttrb w0, \[sp\] + *[0-9a-f]+: 381ff800 sttrb w0, \[x0, #-1\] + *[0-9a-f]+: 38400800 ldtrb w0, \[x0\] + *[0-9a-f]+: 3840081f ldtrb wzr, \[x0\] + *[0-9a-f]+: 38400be0 ldtrb w0, \[sp\] + *[0-9a-f]+: 385ff800 ldtrb w0, \[x0, #-1\] + *[0-9a-f]+: 38800800 ldtrsb x0, \[x0\] + *[0-9a-f]+: 3880081f ldtrsb xzr, \[x0\] + *[0-9a-f]+: 38800be0 ldtrsb x0, \[sp\] + *[0-9a-f]+: 389ff800 ldtrsb x0, \[x0, #-1\] + *[0-9a-f]+: 38c00800 ldtrsb w0, \[x0\] + *[0-9a-f]+: 38c0081f ldtrsb wzr, \[x0\] + *[0-9a-f]+: 38c00be0 ldtrsb w0, \[sp\] + *[0-9a-f]+: 38dff800 ldtrsb w0, \[x0, #-1\] + *[0-9a-f]+: 78000800 sttrh w0, \[x0\] + *[0-9a-f]+: 7800081f sttrh wzr, \[x0\] + *[0-9a-f]+: 78000be0 sttrh w0, \[sp\] + *[0-9a-f]+: 781ff800 sttrh w0, \[x0, #-1\] + *[0-9a-f]+: 78400800 ldtrh w0, \[x0\] + *[0-9a-f]+: 7840081f ldtrh wzr, \[x0\] + *[0-9a-f]+: 78400be0 ldtrh w0, \[sp\] + *[0-9a-f]+: 785ff800 ldtrh w0, \[x0, #-1\] + *[0-9a-f]+: 78800800 ldtrsh x0, \[x0\] + *[0-9a-f]+: 7880081f ldtrsh xzr, \[x0\] + *[0-9a-f]+: 78800be0 ldtrsh x0, \[sp\] + *[0-9a-f]+: 789ff800 ldtrsh x0, \[x0, #-1\] + *[0-9a-f]+: 78c00800 ldtrsh w0, \[x0\] + *[0-9a-f]+: 78c0081f ldtrsh wzr, \[x0\] + *[0-9a-f]+: 78c00be0 ldtrsh w0, \[sp\] + *[0-9a-f]+: 78dff800 ldtrsh w0, \[x0, #-1\] + *[0-9a-f]+: b8000800 sttr w0, \[x0\] + *[0-9a-f]+: b800081f sttr wzr, \[x0\] + *[0-9a-f]+: b8000be0 sttr w0, \[sp\] + *[0-9a-f]+: b81ff800 sttr w0, \[x0, #-1\] + *[0-9a-f]+: b8400800 ldtr w0, \[x0\] + *[0-9a-f]+: b840081f ldtr wzr, \[x0\] + *[0-9a-f]+: b8400be0 ldtr w0, \[sp\] + *[0-9a-f]+: b85ff800 ldtr w0, \[x0, #-1\] + *[0-9a-f]+: b8800800 ldtrsw x0, \[x0\] + *[0-9a-f]+: b880081f ldtrsw xzr, \[x0\] + *[0-9a-f]+: b8800be0 ldtrsw x0, \[sp\] + *[0-9a-f]+: b89ff800 ldtrsw x0, \[x0, #-1\] + *[0-9a-f]+: f8000800 sttr x0, \[x0\] + *[0-9a-f]+: f800081f sttr xzr, \[x0\] + *[0-9a-f]+: f8000be0 sttr x0, \[sp\] + *[0-9a-f]+: f81ff800 sttr x0, \[x0, #-1\] + *[0-9a-f]+: f8400800 ldtr x0, \[x0\] + *[0-9a-f]+: f840081f ldtr xzr, \[x0\] + *[0-9a-f]+: f8400be0 ldtr x0, \[sp\] + *[0-9a-f]+: f85ff800 ldtr x0, \[x0, #-1\] diff --git a/gas/testsuite/gas/aarch64/ldst-unpriv.s b/gas/testsuite/gas/aarch64/ldst-unpriv.s new file mode 100644 index 0000000..52f6461 --- /dev/null +++ b/gas/testsuite/gas/aarch64/ldst-unpriv.s @@ -0,0 +1,64 @@ + sttrb w0, [x0] + sttrb wzr, [x0, #0] + sttrb w0, [sp] + sttrb w0, [x0, #-1] + + ldtrb w0, [x0] + ldtrb wzr, [x0, #0] + ldtrb w0, [sp] + ldtrb w0, [x0, #-1] + + ldtrsb x0, [x0] + ldtrsb xzr, [x0, #0] + ldtrsb x0, [sp] + ldtrsb x0, [x0, #-1] + + ldtrsb w0, [x0] + ldtrsb wzr, [x0, #0] + ldtrsb w0, [sp] + ldtrsb w0, [x0, #-1] + + sttrh w0, [x0] + sttrh wzr, [x0, #0] + sttrh w0, [sp] + sttrh w0, [x0, #-1] + + ldtrh w0, [x0] + ldtrh wzr, [x0, #0] + ldtrh w0, [sp] + ldtrh w0, [x0, #-1] + + ldtrsh x0, [x0] + ldtrsh xzr, [x0, #0] + ldtrsh x0, [sp] + ldtrsh x0, [x0, #-1] + + ldtrsh w0, [x0] + ldtrsh wzr, [x0, #0] + ldtrsh w0, [sp] + ldtrsh w0, [x0, #-1] + + sttr w0, [x0] + sttr wzr, [x0, #0] + sttr w0, [sp] + sttr w0, [x0, #-1] + + ldtr w0, [x0] + ldtr wzr, [x0, #0] + ldtr w0, [sp] + ldtr w0, [x0, #-1] + + ldtrsw x0, [x0] + ldtrsw xzr, [x0, #0] + ldtrsw x0, [sp] + ldtrsw x0, [x0, #-1] + + sttr x0, [x0] + sttr xzr, [x0, #0] + sttr x0, [sp] + sttr x0, [x0, #-1] + + ldtr x0, [x0] + ldtr xzr, [x0, #0] + ldtr x0, [sp] + ldtr x0, [x0, #-1] diff --git a/gas/testsuite/gas/aarch64/lsfe-bad.d b/gas/testsuite/gas/aarch64/lsfe-bad.d new file mode 100644 index 0000000..d2bf4a8 --- /dev/null +++ b/gas/testsuite/gas/aarch64/lsfe-bad.d @@ -0,0 +1,4 @@ +#name: Bad FEAT_LSFE instructions +#source: lsfe-bad.s +#as: -march=armv8-a+lsfe +#error_output: lsfe-bad.l diff --git a/gas/testsuite/gas/aarch64/lsfe-bad.l b/gas/testsuite/gas/aarch64/lsfe-bad.l new file mode 100644 index 0000000..b6937be --- /dev/null +++ b/gas/testsuite/gas/aarch64/lsfe-bad.l @@ -0,0 +1,17 @@ + +.*: Assembler messages: +.*: Error: operand mismatch -- `ldfadd h0,s1,\[x2\]' +.*: Info: did you mean this\? +.*: Info: ldfadd h0, h1, \[x2\] +.*: Info: other valid variant\(s\): +.*: Info: ldfadd s0, s1, \[x2\] +.*: Info: ldfadd d0, d1, \[x2\] +.*: Error: operand mismatch -- `ldbfadd s0,s1,\[x2\]' +.*: Info: did you mean this\? +.*: Info: ldbfadd h0, h1, \[x2\] +.*: Error: expected a scalar SIMD or floating-point register at operand 1 -- `stfmax w0,w1,\[x2\]' +.*: Error: unknown mnemonic `stfmaxa' -- `stfmaxa s0,s1,\[x2\]' +.*: Error: unknown mnemonic `stfmaxal' -- `stfmaxal s0,s1,\[x2\]' +.*: Error: operand mismatch -- `stbfmin s0,\[x2\]' +.*: Info: did you mean this\? +.*: Info: stbfmin h0, \[x2\] diff --git a/gas/testsuite/gas/aarch64/lsfe-bad.s b/gas/testsuite/gas/aarch64/lsfe-bad.s new file mode 100644 index 0000000..2b4b111 --- /dev/null +++ b/gas/testsuite/gas/aarch64/lsfe-bad.s @@ -0,0 +1,6 @@ + ldfadd h0, s1, [x2] + ldbfadd s0, s1, [x2] + stfmax w0, w1, [x2] + stfmaxa s0, s1, [x2] + stfmaxal s0, s1, [x2] + stbfmin s0, [x2] diff --git a/gas/testsuite/gas/aarch64/lsfe.d b/gas/testsuite/gas/aarch64/lsfe.d new file mode 100644 index 0000000..4a3ba97 --- /dev/null +++ b/gas/testsuite/gas/aarch64/lsfe.d @@ -0,0 +1,815 @@ +#name: FEAT_LSFE instructions +#as: -march=armv8-a+lsfe +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +.* <ldf>: +.*: 7c200000 ldfadd h0, h0, \[x0\] +.*: 7c2003e0 ldfadd h0, h0, \[sp\] +.*: 7c20001f ldfadd h0, h31, \[x0\] +.*: 7c2003ff ldfadd h0, h31, \[sp\] +.*: 7c3f0000 ldfadd h31, h0, \[x0\] +.*: 7c3f03e0 ldfadd h31, h0, \[sp\] +.*: 7c3f001f ldfadd h31, h31, \[x0\] +.*: 7c3f03ff ldfadd h31, h31, \[sp\] +.*: bc200000 ldfadd s0, s0, \[x0\] +.*: bc2003e0 ldfadd s0, s0, \[sp\] +.*: bc20001f ldfadd s0, s31, \[x0\] +.*: bc2003ff ldfadd s0, s31, \[sp\] +.*: bc3f0000 ldfadd s31, s0, \[x0\] +.*: bc3f03e0 ldfadd s31, s0, \[sp\] +.*: bc3f001f ldfadd s31, s31, \[x0\] +.*: bc3f03ff ldfadd s31, s31, \[sp\] +.*: fc200000 ldfadd d0, d0, \[x0\] +.*: fc2003e0 ldfadd d0, d0, \[sp\] +.*: fc20001f ldfadd d0, d31, \[x0\] +.*: fc2003ff ldfadd d0, d31, \[sp\] +.*: fc3f0000 ldfadd d31, d0, \[x0\] +.*: fc3f03e0 ldfadd d31, d0, \[sp\] +.*: fc3f001f ldfadd d31, d31, \[x0\] +.*: fc3f03ff ldfadd d31, d31, \[sp\] +.*: 7ca00000 ldfadda h0, h0, \[x0\] +.*: 7ca003e0 ldfadda h0, h0, \[sp\] +.*: 7ca0001f ldfadda h0, h31, \[x0\] +.*: 7ca003ff ldfadda h0, h31, \[sp\] +.*: 7cbf0000 ldfadda h31, h0, \[x0\] +.*: 7cbf03e0 ldfadda h31, h0, \[sp\] +.*: 7cbf001f ldfadda h31, h31, \[x0\] +.*: 7cbf03ff ldfadda h31, h31, \[sp\] +.*: bca00000 ldfadda s0, s0, \[x0\] +.*: bca003e0 ldfadda s0, s0, \[sp\] +.*: bca0001f ldfadda s0, s31, \[x0\] +.*: bca003ff ldfadda s0, s31, \[sp\] +.*: bcbf0000 ldfadda s31, s0, \[x0\] +.*: bcbf03e0 ldfadda s31, s0, \[sp\] +.*: bcbf001f ldfadda s31, s31, \[x0\] +.*: bcbf03ff ldfadda s31, s31, \[sp\] +.*: fca00000 ldfadda d0, d0, \[x0\] +.*: fca003e0 ldfadda d0, d0, \[sp\] +.*: fca0001f ldfadda d0, d31, \[x0\] +.*: fca003ff ldfadda d0, d31, \[sp\] +.*: fcbf0000 ldfadda d31, d0, \[x0\] +.*: fcbf03e0 ldfadda d31, d0, \[sp\] +.*: fcbf001f ldfadda d31, d31, \[x0\] +.*: fcbf03ff ldfadda d31, d31, \[sp\] +.*: 7ce00000 ldfaddal h0, h0, \[x0\] +.*: 7ce003e0 ldfaddal h0, h0, \[sp\] +.*: 7ce0001f ldfaddal h0, h31, \[x0\] +.*: 7ce003ff ldfaddal h0, h31, \[sp\] +.*: 7cff0000 ldfaddal h31, h0, \[x0\] +.*: 7cff03e0 ldfaddal h31, h0, \[sp\] +.*: 7cff001f ldfaddal h31, h31, \[x0\] +.*: 7cff03ff ldfaddal h31, h31, \[sp\] +.*: bce00000 ldfaddal s0, s0, \[x0\] +.*: bce003e0 ldfaddal s0, s0, \[sp\] +.*: bce0001f ldfaddal s0, s31, \[x0\] +.*: bce003ff ldfaddal s0, s31, \[sp\] +.*: bcff0000 ldfaddal s31, s0, \[x0\] +.*: bcff03e0 ldfaddal s31, s0, \[sp\] +.*: bcff001f ldfaddal s31, s31, \[x0\] +.*: bcff03ff ldfaddal s31, s31, \[sp\] +.*: fce00000 ldfaddal d0, d0, \[x0\] +.*: fce003e0 ldfaddal d0, d0, \[sp\] +.*: fce0001f ldfaddal d0, d31, \[x0\] +.*: fce003ff ldfaddal d0, d31, \[sp\] +.*: fcff0000 ldfaddal d31, d0, \[x0\] +.*: fcff03e0 ldfaddal d31, d0, \[sp\] +.*: fcff001f ldfaddal d31, d31, \[x0\] +.*: fcff03ff ldfaddal d31, d31, \[sp\] +.*: 7c600000 ldfaddl h0, h0, \[x0\] +.*: 7c6003e0 ldfaddl h0, h0, \[sp\] +.*: 7c60001f ldfaddl h0, h31, \[x0\] +.*: 7c6003ff ldfaddl h0, h31, \[sp\] +.*: 7c7f0000 ldfaddl h31, h0, \[x0\] +.*: 7c7f03e0 ldfaddl h31, h0, \[sp\] +.*: 7c7f001f ldfaddl h31, h31, \[x0\] +.*: 7c7f03ff ldfaddl h31, h31, \[sp\] +.*: bc600000 ldfaddl s0, s0, \[x0\] +.*: bc6003e0 ldfaddl s0, s0, \[sp\] +.*: bc60001f ldfaddl s0, s31, \[x0\] +.*: bc6003ff ldfaddl s0, s31, \[sp\] +.*: bc7f0000 ldfaddl s31, s0, \[x0\] +.*: bc7f03e0 ldfaddl s31, s0, \[sp\] +.*: bc7f001f ldfaddl s31, s31, \[x0\] +.*: bc7f03ff ldfaddl s31, s31, \[sp\] +.*: fc600000 ldfaddl d0, d0, \[x0\] +.*: fc6003e0 ldfaddl d0, d0, \[sp\] +.*: fc60001f ldfaddl d0, d31, \[x0\] +.*: fc6003ff ldfaddl d0, d31, \[sp\] +.*: fc7f0000 ldfaddl d31, d0, \[x0\] +.*: fc7f03e0 ldfaddl d31, d0, \[sp\] +.*: fc7f001f ldfaddl d31, d31, \[x0\] +.*: fc7f03ff ldfaddl d31, d31, \[sp\] +.*: 7c204000 ldfmax h0, h0, \[x0\] +.*: 7c2043e0 ldfmax h0, h0, \[sp\] +.*: 7c20401f ldfmax h0, h31, \[x0\] +.*: 7c2043ff ldfmax h0, h31, \[sp\] +.*: 7c3f4000 ldfmax h31, h0, \[x0\] +.*: 7c3f43e0 ldfmax h31, h0, \[sp\] +.*: 7c3f401f ldfmax h31, h31, \[x0\] +.*: 7c3f43ff ldfmax h31, h31, \[sp\] +.*: bc204000 ldfmax s0, s0, \[x0\] +.*: bc2043e0 ldfmax s0, s0, \[sp\] +.*: bc20401f ldfmax s0, s31, \[x0\] +.*: bc2043ff ldfmax s0, s31, \[sp\] +.*: bc3f4000 ldfmax s31, s0, \[x0\] +.*: bc3f43e0 ldfmax s31, s0, \[sp\] +.*: bc3f401f ldfmax s31, s31, \[x0\] +.*: bc3f43ff ldfmax s31, s31, \[sp\] +.*: fc204000 ldfmax d0, d0, \[x0\] +.*: fc2043e0 ldfmax d0, d0, \[sp\] +.*: fc20401f ldfmax d0, d31, \[x0\] +.*: fc2043ff ldfmax d0, d31, \[sp\] +.*: fc3f4000 ldfmax d31, d0, \[x0\] +.*: fc3f43e0 ldfmax d31, d0, \[sp\] +.*: fc3f401f ldfmax d31, d31, \[x0\] +.*: fc3f43ff ldfmax d31, d31, \[sp\] +.*: 7ca04000 ldfmaxa h0, h0, \[x0\] +.*: 7ca043e0 ldfmaxa h0, h0, \[sp\] +.*: 7ca0401f ldfmaxa h0, h31, \[x0\] +.*: 7ca043ff ldfmaxa h0, h31, \[sp\] +.*: 7cbf4000 ldfmaxa h31, h0, \[x0\] +.*: 7cbf43e0 ldfmaxa h31, h0, \[sp\] +.*: 7cbf401f ldfmaxa h31, h31, \[x0\] +.*: 7cbf43ff ldfmaxa h31, h31, \[sp\] +.*: bca04000 ldfmaxa s0, s0, \[x0\] +.*: bca043e0 ldfmaxa s0, s0, \[sp\] +.*: bca0401f ldfmaxa s0, s31, \[x0\] +.*: bca043ff ldfmaxa s0, s31, \[sp\] +.*: bcbf4000 ldfmaxa s31, s0, \[x0\] +.*: bcbf43e0 ldfmaxa s31, s0, \[sp\] +.*: bcbf401f ldfmaxa s31, s31, \[x0\] +.*: bcbf43ff ldfmaxa s31, s31, \[sp\] +.*: fca04000 ldfmaxa d0, d0, \[x0\] +.*: fca043e0 ldfmaxa d0, d0, \[sp\] +.*: fca0401f ldfmaxa d0, d31, \[x0\] +.*: fca043ff ldfmaxa d0, d31, \[sp\] +.*: fcbf4000 ldfmaxa d31, d0, \[x0\] +.*: fcbf43e0 ldfmaxa d31, d0, \[sp\] +.*: fcbf401f ldfmaxa d31, d31, \[x0\] +.*: fcbf43ff ldfmaxa d31, d31, \[sp\] +.*: 7ce04000 ldfmaxal h0, h0, \[x0\] +.*: 7ce043e0 ldfmaxal h0, h0, \[sp\] +.*: 7ce0401f ldfmaxal h0, h31, \[x0\] +.*: 7ce043ff ldfmaxal h0, h31, \[sp\] +.*: 7cff4000 ldfmaxal h31, h0, \[x0\] +.*: 7cff43e0 ldfmaxal h31, h0, \[sp\] +.*: 7cff401f ldfmaxal h31, h31, \[x0\] +.*: 7cff43ff ldfmaxal h31, h31, \[sp\] +.*: bce04000 ldfmaxal s0, s0, \[x0\] +.*: bce043e0 ldfmaxal s0, s0, \[sp\] +.*: bce0401f ldfmaxal s0, s31, \[x0\] +.*: bce043ff ldfmaxal s0, s31, \[sp\] +.*: bcff4000 ldfmaxal s31, s0, \[x0\] +.*: bcff43e0 ldfmaxal s31, s0, \[sp\] +.*: bcff401f ldfmaxal s31, s31, \[x0\] +.*: bcff43ff ldfmaxal s31, s31, \[sp\] +.*: fce04000 ldfmaxal d0, d0, \[x0\] +.*: fce043e0 ldfmaxal d0, d0, \[sp\] +.*: fce0401f ldfmaxal d0, d31, \[x0\] +.*: fce043ff ldfmaxal d0, d31, \[sp\] +.*: fcff4000 ldfmaxal d31, d0, \[x0\] +.*: fcff43e0 ldfmaxal d31, d0, \[sp\] +.*: fcff401f ldfmaxal d31, d31, \[x0\] +.*: fcff43ff ldfmaxal d31, d31, \[sp\] +.*: 7c604000 ldfmaxl h0, h0, \[x0\] +.*: 7c6043e0 ldfmaxl h0, h0, \[sp\] +.*: 7c60401f ldfmaxl h0, h31, \[x0\] +.*: 7c6043ff ldfmaxl h0, h31, \[sp\] +.*: 7c7f4000 ldfmaxl h31, h0, \[x0\] +.*: 7c7f43e0 ldfmaxl h31, h0, \[sp\] +.*: 7c7f401f ldfmaxl h31, h31, \[x0\] +.*: 7c7f43ff ldfmaxl h31, h31, \[sp\] +.*: bc604000 ldfmaxl s0, s0, \[x0\] +.*: bc6043e0 ldfmaxl s0, s0, \[sp\] +.*: bc60401f ldfmaxl s0, s31, \[x0\] +.*: bc6043ff ldfmaxl s0, s31, \[sp\] +.*: bc7f4000 ldfmaxl s31, s0, \[x0\] +.*: bc7f43e0 ldfmaxl s31, s0, \[sp\] +.*: bc7f401f ldfmaxl s31, s31, \[x0\] +.*: bc7f43ff ldfmaxl s31, s31, \[sp\] +.*: fc604000 ldfmaxl d0, d0, \[x0\] +.*: fc6043e0 ldfmaxl d0, d0, \[sp\] +.*: fc60401f ldfmaxl d0, d31, \[x0\] +.*: fc6043ff ldfmaxl d0, d31, \[sp\] +.*: fc7f4000 ldfmaxl d31, d0, \[x0\] +.*: fc7f43e0 ldfmaxl d31, d0, \[sp\] +.*: fc7f401f ldfmaxl d31, d31, \[x0\] +.*: fc7f43ff ldfmaxl d31, d31, \[sp\] +.*: 7c206000 ldfmaxnm h0, h0, \[x0\] +.*: 7c2063e0 ldfmaxnm h0, h0, \[sp\] +.*: 7c20601f ldfmaxnm h0, h31, \[x0\] +.*: 7c2063ff ldfmaxnm h0, h31, \[sp\] +.*: 7c3f6000 ldfmaxnm h31, h0, \[x0\] +.*: 7c3f63e0 ldfmaxnm h31, h0, \[sp\] +.*: 7c3f601f ldfmaxnm h31, h31, \[x0\] +.*: 7c3f63ff ldfmaxnm h31, h31, \[sp\] +.*: bc206000 ldfmaxnm s0, s0, \[x0\] +.*: bc2063e0 ldfmaxnm s0, s0, \[sp\] +.*: bc20601f ldfmaxnm s0, s31, \[x0\] +.*: bc2063ff ldfmaxnm s0, s31, \[sp\] +.*: bc3f6000 ldfmaxnm s31, s0, \[x0\] +.*: bc3f63e0 ldfmaxnm s31, s0, \[sp\] +.*: bc3f601f ldfmaxnm s31, s31, \[x0\] +.*: bc3f63ff ldfmaxnm s31, s31, \[sp\] +.*: fc206000 ldfmaxnm d0, d0, \[x0\] +.*: fc2063e0 ldfmaxnm d0, d0, \[sp\] +.*: fc20601f ldfmaxnm d0, d31, \[x0\] +.*: fc2063ff ldfmaxnm d0, d31, \[sp\] +.*: fc3f6000 ldfmaxnm d31, d0, \[x0\] +.*: fc3f63e0 ldfmaxnm d31, d0, \[sp\] +.*: fc3f601f ldfmaxnm d31, d31, \[x0\] +.*: fc3f63ff ldfmaxnm d31, d31, \[sp\] +.*: 7ca06000 ldfmaxnma h0, h0, \[x0\] +.*: 7ca063e0 ldfmaxnma h0, h0, \[sp\] +.*: 7ca0601f ldfmaxnma h0, h31, \[x0\] +.*: 7ca063ff ldfmaxnma h0, h31, \[sp\] +.*: 7cbf6000 ldfmaxnma h31, h0, \[x0\] +.*: 7cbf63e0 ldfmaxnma h31, h0, \[sp\] +.*: 7cbf601f ldfmaxnma h31, h31, \[x0\] +.*: 7cbf63ff ldfmaxnma h31, h31, \[sp\] +.*: bca06000 ldfmaxnma s0, s0, \[x0\] +.*: bca063e0 ldfmaxnma s0, s0, \[sp\] +.*: bca0601f ldfmaxnma s0, s31, \[x0\] +.*: bca063ff ldfmaxnma s0, s31, \[sp\] +.*: bcbf6000 ldfmaxnma s31, s0, \[x0\] +.*: bcbf63e0 ldfmaxnma s31, s0, \[sp\] +.*: bcbf601f ldfmaxnma s31, s31, \[x0\] +.*: bcbf63ff ldfmaxnma s31, s31, \[sp\] +.*: fca06000 ldfmaxnma d0, d0, \[x0\] +.*: fca063e0 ldfmaxnma d0, d0, \[sp\] +.*: fca0601f ldfmaxnma d0, d31, \[x0\] +.*: fca063ff ldfmaxnma d0, d31, \[sp\] +.*: fcbf6000 ldfmaxnma d31, d0, \[x0\] +.*: fcbf63e0 ldfmaxnma d31, d0, \[sp\] +.*: fcbf601f ldfmaxnma d31, d31, \[x0\] +.*: fcbf63ff ldfmaxnma d31, d31, \[sp\] +.*: 7ce06000 ldfmaxnmal h0, h0, \[x0\] +.*: 7ce063e0 ldfmaxnmal h0, h0, \[sp\] +.*: 7ce0601f ldfmaxnmal h0, h31, \[x0\] +.*: 7ce063ff ldfmaxnmal h0, h31, \[sp\] +.*: 7cff6000 ldfmaxnmal h31, h0, \[x0\] +.*: 7cff63e0 ldfmaxnmal h31, h0, \[sp\] +.*: 7cff601f ldfmaxnmal h31, h31, \[x0\] +.*: 7cff63ff ldfmaxnmal h31, h31, \[sp\] +.*: bce06000 ldfmaxnmal s0, s0, \[x0\] +.*: bce063e0 ldfmaxnmal s0, s0, \[sp\] +.*: bce0601f ldfmaxnmal s0, s31, \[x0\] +.*: bce063ff ldfmaxnmal s0, s31, \[sp\] +.*: bcff6000 ldfmaxnmal s31, s0, \[x0\] +.*: bcff63e0 ldfmaxnmal s31, s0, \[sp\] +.*: bcff601f ldfmaxnmal s31, s31, \[x0\] +.*: bcff63ff ldfmaxnmal s31, s31, \[sp\] +.*: fce06000 ldfmaxnmal d0, d0, \[x0\] +.*: fce063e0 ldfmaxnmal d0, d0, \[sp\] +.*: fce0601f ldfmaxnmal d0, d31, \[x0\] +.*: fce063ff ldfmaxnmal d0, d31, \[sp\] +.*: fcff6000 ldfmaxnmal d31, d0, \[x0\] +.*: fcff63e0 ldfmaxnmal d31, d0, \[sp\] +.*: fcff601f ldfmaxnmal d31, d31, \[x0\] +.*: fcff63ff ldfmaxnmal d31, d31, \[sp\] +.*: 7c606000 ldfmaxnml h0, h0, \[x0\] +.*: 7c6063e0 ldfmaxnml h0, h0, \[sp\] +.*: 7c60601f ldfmaxnml h0, h31, \[x0\] +.*: 7c6063ff ldfmaxnml h0, h31, \[sp\] +.*: 7c7f6000 ldfmaxnml h31, h0, \[x0\] +.*: 7c7f63e0 ldfmaxnml h31, h0, \[sp\] +.*: 7c7f601f ldfmaxnml h31, h31, \[x0\] +.*: 7c7f63ff ldfmaxnml h31, h31, \[sp\] +.*: bc606000 ldfmaxnml s0, s0, \[x0\] +.*: bc6063e0 ldfmaxnml s0, s0, \[sp\] +.*: bc60601f ldfmaxnml s0, s31, \[x0\] +.*: bc6063ff ldfmaxnml s0, s31, \[sp\] +.*: bc7f6000 ldfmaxnml s31, s0, \[x0\] +.*: bc7f63e0 ldfmaxnml s31, s0, \[sp\] +.*: bc7f601f ldfmaxnml s31, s31, \[x0\] +.*: bc7f63ff ldfmaxnml s31, s31, \[sp\] +.*: fc606000 ldfmaxnml d0, d0, \[x0\] +.*: fc6063e0 ldfmaxnml d0, d0, \[sp\] +.*: fc60601f ldfmaxnml d0, d31, \[x0\] +.*: fc6063ff ldfmaxnml d0, d31, \[sp\] +.*: fc7f6000 ldfmaxnml d31, d0, \[x0\] +.*: fc7f63e0 ldfmaxnml d31, d0, \[sp\] +.*: fc7f601f ldfmaxnml d31, d31, \[x0\] +.*: fc7f63ff ldfmaxnml d31, d31, \[sp\] +.*: 7c205000 ldfmin h0, h0, \[x0\] +.*: 7c2053e0 ldfmin h0, h0, \[sp\] +.*: 7c20501f ldfmin h0, h31, \[x0\] +.*: 7c2053ff ldfmin h0, h31, \[sp\] +.*: 7c3f5000 ldfmin h31, h0, \[x0\] +.*: 7c3f53e0 ldfmin h31, h0, \[sp\] +.*: 7c3f501f ldfmin h31, h31, \[x0\] +.*: 7c3f53ff ldfmin h31, h31, \[sp\] +.*: bc205000 ldfmin s0, s0, \[x0\] +.*: bc2053e0 ldfmin s0, s0, \[sp\] +.*: bc20501f ldfmin s0, s31, \[x0\] +.*: bc2053ff ldfmin s0, s31, \[sp\] +.*: bc3f5000 ldfmin s31, s0, \[x0\] +.*: bc3f53e0 ldfmin s31, s0, \[sp\] +.*: bc3f501f ldfmin s31, s31, \[x0\] +.*: bc3f53ff ldfmin s31, s31, \[sp\] +.*: fc205000 ldfmin d0, d0, \[x0\] +.*: fc2053e0 ldfmin d0, d0, \[sp\] +.*: fc20501f ldfmin d0, d31, \[x0\] +.*: fc2053ff ldfmin d0, d31, \[sp\] +.*: fc3f5000 ldfmin d31, d0, \[x0\] +.*: fc3f53e0 ldfmin d31, d0, \[sp\] +.*: fc3f501f ldfmin d31, d31, \[x0\] +.*: fc3f53ff ldfmin d31, d31, \[sp\] +.*: 7ca05000 ldfmina h0, h0, \[x0\] +.*: 7ca053e0 ldfmina h0, h0, \[sp\] +.*: 7ca0501f ldfmina h0, h31, \[x0\] +.*: 7ca053ff ldfmina h0, h31, \[sp\] +.*: 7cbf5000 ldfmina h31, h0, \[x0\] +.*: 7cbf53e0 ldfmina h31, h0, \[sp\] +.*: 7cbf501f ldfmina h31, h31, \[x0\] +.*: 7cbf53ff ldfmina h31, h31, \[sp\] +.*: bca05000 ldfmina s0, s0, \[x0\] +.*: bca053e0 ldfmina s0, s0, \[sp\] +.*: bca0501f ldfmina s0, s31, \[x0\] +.*: bca053ff ldfmina s0, s31, \[sp\] +.*: bcbf5000 ldfmina s31, s0, \[x0\] +.*: bcbf53e0 ldfmina s31, s0, \[sp\] +.*: bcbf501f ldfmina s31, s31, \[x0\] +.*: bcbf53ff ldfmina s31, s31, \[sp\] +.*: fca05000 ldfmina d0, d0, \[x0\] +.*: fca053e0 ldfmina d0, d0, \[sp\] +.*: fca0501f ldfmina d0, d31, \[x0\] +.*: fca053ff ldfmina d0, d31, \[sp\] +.*: fcbf5000 ldfmina d31, d0, \[x0\] +.*: fcbf53e0 ldfmina d31, d0, \[sp\] +.*: fcbf501f ldfmina d31, d31, \[x0\] +.*: fcbf53ff ldfmina d31, d31, \[sp\] +.*: 7ce05000 ldfminal h0, h0, \[x0\] +.*: 7ce053e0 ldfminal h0, h0, \[sp\] +.*: 7ce0501f ldfminal h0, h31, \[x0\] +.*: 7ce053ff ldfminal h0, h31, \[sp\] +.*: 7cff5000 ldfminal h31, h0, \[x0\] +.*: 7cff53e0 ldfminal h31, h0, \[sp\] +.*: 7cff501f ldfminal h31, h31, \[x0\] +.*: 7cff53ff ldfminal h31, h31, \[sp\] +.*: bce05000 ldfminal s0, s0, \[x0\] +.*: bce053e0 ldfminal s0, s0, \[sp\] +.*: bce0501f ldfminal s0, s31, \[x0\] +.*: bce053ff ldfminal s0, s31, \[sp\] +.*: bcff5000 ldfminal s31, s0, \[x0\] +.*: bcff53e0 ldfminal s31, s0, \[sp\] +.*: bcff501f ldfminal s31, s31, \[x0\] +.*: bcff53ff ldfminal s31, s31, \[sp\] +.*: fce05000 ldfminal d0, d0, \[x0\] +.*: fce053e0 ldfminal d0, d0, \[sp\] +.*: fce0501f ldfminal d0, d31, \[x0\] +.*: fce053ff ldfminal d0, d31, \[sp\] +.*: fcff5000 ldfminal d31, d0, \[x0\] +.*: fcff53e0 ldfminal d31, d0, \[sp\] +.*: fcff501f ldfminal d31, d31, \[x0\] +.*: fcff53ff ldfminal d31, d31, \[sp\] +.*: 7c605000 ldfminl h0, h0, \[x0\] +.*: 7c6053e0 ldfminl h0, h0, \[sp\] +.*: 7c60501f ldfminl h0, h31, \[x0\] +.*: 7c6053ff ldfminl h0, h31, \[sp\] +.*: 7c7f5000 ldfminl h31, h0, \[x0\] +.*: 7c7f53e0 ldfminl h31, h0, \[sp\] +.*: 7c7f501f ldfminl h31, h31, \[x0\] +.*: 7c7f53ff ldfminl h31, h31, \[sp\] +.*: bc605000 ldfminl s0, s0, \[x0\] +.*: bc6053e0 ldfminl s0, s0, \[sp\] +.*: bc60501f ldfminl s0, s31, \[x0\] +.*: bc6053ff ldfminl s0, s31, \[sp\] +.*: bc7f5000 ldfminl s31, s0, \[x0\] +.*: bc7f53e0 ldfminl s31, s0, \[sp\] +.*: bc7f501f ldfminl s31, s31, \[x0\] +.*: bc7f53ff ldfminl s31, s31, \[sp\] +.*: fc605000 ldfminl d0, d0, \[x0\] +.*: fc6053e0 ldfminl d0, d0, \[sp\] +.*: fc60501f ldfminl d0, d31, \[x0\] +.*: fc6053ff ldfminl d0, d31, \[sp\] +.*: fc7f5000 ldfminl d31, d0, \[x0\] +.*: fc7f53e0 ldfminl d31, d0, \[sp\] +.*: fc7f501f ldfminl d31, d31, \[x0\] +.*: fc7f53ff ldfminl d31, d31, \[sp\] +.*: 7c207000 ldfminnm h0, h0, \[x0\] +.*: 7c2073e0 ldfminnm h0, h0, \[sp\] +.*: 7c20701f ldfminnm h0, h31, \[x0\] +.*: 7c2073ff ldfminnm h0, h31, \[sp\] +.*: 7c3f7000 ldfminnm h31, h0, \[x0\] +.*: 7c3f73e0 ldfminnm h31, h0, \[sp\] +.*: 7c3f701f ldfminnm h31, h31, \[x0\] +.*: 7c3f73ff ldfminnm h31, h31, \[sp\] +.*: bc207000 ldfminnm s0, s0, \[x0\] +.*: bc2073e0 ldfminnm s0, s0, \[sp\] +.*: bc20701f ldfminnm s0, s31, \[x0\] +.*: bc2073ff ldfminnm s0, s31, \[sp\] +.*: bc3f7000 ldfminnm s31, s0, \[x0\] +.*: bc3f73e0 ldfminnm s31, s0, \[sp\] +.*: bc3f701f ldfminnm s31, s31, \[x0\] +.*: bc3f73ff ldfminnm s31, s31, \[sp\] +.*: fc207000 ldfminnm d0, d0, \[x0\] +.*: fc2073e0 ldfminnm d0, d0, \[sp\] +.*: fc20701f ldfminnm d0, d31, \[x0\] +.*: fc2073ff ldfminnm d0, d31, \[sp\] +.*: fc3f7000 ldfminnm d31, d0, \[x0\] +.*: fc3f73e0 ldfminnm d31, d0, \[sp\] +.*: fc3f701f ldfminnm d31, d31, \[x0\] +.*: fc3f73ff ldfminnm d31, d31, \[sp\] +.*: 7ca07000 ldfminnma h0, h0, \[x0\] +.*: 7ca073e0 ldfminnma h0, h0, \[sp\] +.*: 7ca0701f ldfminnma h0, h31, \[x0\] +.*: 7ca073ff ldfminnma h0, h31, \[sp\] +.*: 7cbf7000 ldfminnma h31, h0, \[x0\] +.*: 7cbf73e0 ldfminnma h31, h0, \[sp\] +.*: 7cbf701f ldfminnma h31, h31, \[x0\] +.*: 7cbf73ff ldfminnma h31, h31, \[sp\] +.*: bca07000 ldfminnma s0, s0, \[x0\] +.*: bca073e0 ldfminnma s0, s0, \[sp\] +.*: bca0701f ldfminnma s0, s31, \[x0\] +.*: bca073ff ldfminnma s0, s31, \[sp\] +.*: bcbf7000 ldfminnma s31, s0, \[x0\] +.*: bcbf73e0 ldfminnma s31, s0, \[sp\] +.*: bcbf701f ldfminnma s31, s31, \[x0\] +.*: bcbf73ff ldfminnma s31, s31, \[sp\] +.*: fca07000 ldfminnma d0, d0, \[x0\] +.*: fca073e0 ldfminnma d0, d0, \[sp\] +.*: fca0701f ldfminnma d0, d31, \[x0\] +.*: fca073ff ldfminnma d0, d31, \[sp\] +.*: fcbf7000 ldfminnma d31, d0, \[x0\] +.*: fcbf73e0 ldfminnma d31, d0, \[sp\] +.*: fcbf701f ldfminnma d31, d31, \[x0\] +.*: fcbf73ff ldfminnma d31, d31, \[sp\] +.*: 7ce07000 ldfminnmal h0, h0, \[x0\] +.*: 7ce073e0 ldfminnmal h0, h0, \[sp\] +.*: 7ce0701f ldfminnmal h0, h31, \[x0\] +.*: 7ce073ff ldfminnmal h0, h31, \[sp\] +.*: 7cff7000 ldfminnmal h31, h0, \[x0\] +.*: 7cff73e0 ldfminnmal h31, h0, \[sp\] +.*: 7cff701f ldfminnmal h31, h31, \[x0\] +.*: 7cff73ff ldfminnmal h31, h31, \[sp\] +.*: bce07000 ldfminnmal s0, s0, \[x0\] +.*: bce073e0 ldfminnmal s0, s0, \[sp\] +.*: bce0701f ldfminnmal s0, s31, \[x0\] +.*: bce073ff ldfminnmal s0, s31, \[sp\] +.*: bcff7000 ldfminnmal s31, s0, \[x0\] +.*: bcff73e0 ldfminnmal s31, s0, \[sp\] +.*: bcff701f ldfminnmal s31, s31, \[x0\] +.*: bcff73ff ldfminnmal s31, s31, \[sp\] +.*: fce07000 ldfminnmal d0, d0, \[x0\] +.*: fce073e0 ldfminnmal d0, d0, \[sp\] +.*: fce0701f ldfminnmal d0, d31, \[x0\] +.*: fce073ff ldfminnmal d0, d31, \[sp\] +.*: fcff7000 ldfminnmal d31, d0, \[x0\] +.*: fcff73e0 ldfminnmal d31, d0, \[sp\] +.*: fcff701f ldfminnmal d31, d31, \[x0\] +.*: fcff73ff ldfminnmal d31, d31, \[sp\] +.*: 7c607000 ldfminnml h0, h0, \[x0\] +.*: 7c6073e0 ldfminnml h0, h0, \[sp\] +.*: 7c60701f ldfminnml h0, h31, \[x0\] +.*: 7c6073ff ldfminnml h0, h31, \[sp\] +.*: 7c7f7000 ldfminnml h31, h0, \[x0\] +.*: 7c7f73e0 ldfminnml h31, h0, \[sp\] +.*: 7c7f701f ldfminnml h31, h31, \[x0\] +.*: 7c7f73ff ldfminnml h31, h31, \[sp\] +.*: bc607000 ldfminnml s0, s0, \[x0\] +.*: bc6073e0 ldfminnml s0, s0, \[sp\] +.*: bc60701f ldfminnml s0, s31, \[x0\] +.*: bc6073ff ldfminnml s0, s31, \[sp\] +.*: bc7f7000 ldfminnml s31, s0, \[x0\] +.*: bc7f73e0 ldfminnml s31, s0, \[sp\] +.*: bc7f701f ldfminnml s31, s31, \[x0\] +.*: bc7f73ff ldfminnml s31, s31, \[sp\] +.*: fc607000 ldfminnml d0, d0, \[x0\] +.*: fc6073e0 ldfminnml d0, d0, \[sp\] +.*: fc60701f ldfminnml d0, d31, \[x0\] +.*: fc6073ff ldfminnml d0, d31, \[sp\] +.*: fc7f7000 ldfminnml d31, d0, \[x0\] +.*: fc7f73e0 ldfminnml d31, d0, \[sp\] +.*: fc7f701f ldfminnml d31, d31, \[x0\] +.*: fc7f73ff ldfminnml d31, d31, \[sp\] + +.* <ldbf>: +.*: 3c200000 ldbfadd h0, h0, \[x0\] +.*: 3c2003e0 ldbfadd h0, h0, \[sp\] +.*: 3c20001f ldbfadd h0, h31, \[x0\] +.*: 3c2003ff ldbfadd h0, h31, \[sp\] +.*: 3c3f0000 ldbfadd h31, h0, \[x0\] +.*: 3c3f03e0 ldbfadd h31, h0, \[sp\] +.*: 3c3f001f ldbfadd h31, h31, \[x0\] +.*: 3c3f03ff ldbfadd h31, h31, \[sp\] +.*: 3ca00000 ldbfadda h0, h0, \[x0\] +.*: 3ca003e0 ldbfadda h0, h0, \[sp\] +.*: 3ca0001f ldbfadda h0, h31, \[x0\] +.*: 3ca003ff ldbfadda h0, h31, \[sp\] +.*: 3cbf0000 ldbfadda h31, h0, \[x0\] +.*: 3cbf03e0 ldbfadda h31, h0, \[sp\] +.*: 3cbf001f ldbfadda h31, h31, \[x0\] +.*: 3cbf03ff ldbfadda h31, h31, \[sp\] +.*: 3ce00000 ldbfaddal h0, h0, \[x0\] +.*: 3ce003e0 ldbfaddal h0, h0, \[sp\] +.*: 3ce0001f ldbfaddal h0, h31, \[x0\] +.*: 3ce003ff ldbfaddal h0, h31, \[sp\] +.*: 3cff0000 ldbfaddal h31, h0, \[x0\] +.*: 3cff03e0 ldbfaddal h31, h0, \[sp\] +.*: 3cff001f ldbfaddal h31, h31, \[x0\] +.*: 3cff03ff ldbfaddal h31, h31, \[sp\] +.*: 3c600000 ldbfaddl h0, h0, \[x0\] +.*: 3c6003e0 ldbfaddl h0, h0, \[sp\] +.*: 3c60001f ldbfaddl h0, h31, \[x0\] +.*: 3c6003ff ldbfaddl h0, h31, \[sp\] +.*: 3c7f0000 ldbfaddl h31, h0, \[x0\] +.*: 3c7f03e0 ldbfaddl h31, h0, \[sp\] +.*: 3c7f001f ldbfaddl h31, h31, \[x0\] +.*: 3c7f03ff ldbfaddl h31, h31, \[sp\] +.*: 3c204000 ldbfmax h0, h0, \[x0\] +.*: 3c2043e0 ldbfmax h0, h0, \[sp\] +.*: 3c20401f ldbfmax h0, h31, \[x0\] +.*: 3c2043ff ldbfmax h0, h31, \[sp\] +.*: 3c3f4000 ldbfmax h31, h0, \[x0\] +.*: 3c3f43e0 ldbfmax h31, h0, \[sp\] +.*: 3c3f401f ldbfmax h31, h31, \[x0\] +.*: 3c3f43ff ldbfmax h31, h31, \[sp\] +.*: 3ca04000 ldbfmaxa h0, h0, \[x0\] +.*: 3ca043e0 ldbfmaxa h0, h0, \[sp\] +.*: 3ca0401f ldbfmaxa h0, h31, \[x0\] +.*: 3ca043ff ldbfmaxa h0, h31, \[sp\] +.*: 3cbf4000 ldbfmaxa h31, h0, \[x0\] +.*: 3cbf43e0 ldbfmaxa h31, h0, \[sp\] +.*: 3cbf401f ldbfmaxa h31, h31, \[x0\] +.*: 3cbf43ff ldbfmaxa h31, h31, \[sp\] +.*: 3ce04000 ldbfmaxal h0, h0, \[x0\] +.*: 3ce043e0 ldbfmaxal h0, h0, \[sp\] +.*: 3ce0401f ldbfmaxal h0, h31, \[x0\] +.*: 3ce043ff ldbfmaxal h0, h31, \[sp\] +.*: 3cff4000 ldbfmaxal h31, h0, \[x0\] +.*: 3cff43e0 ldbfmaxal h31, h0, \[sp\] +.*: 3cff401f ldbfmaxal h31, h31, \[x0\] +.*: 3cff43ff ldbfmaxal h31, h31, \[sp\] +.*: 3c604000 ldbfmaxl h0, h0, \[x0\] +.*: 3c6043e0 ldbfmaxl h0, h0, \[sp\] +.*: 3c60401f ldbfmaxl h0, h31, \[x0\] +.*: 3c6043ff ldbfmaxl h0, h31, \[sp\] +.*: 3c7f4000 ldbfmaxl h31, h0, \[x0\] +.*: 3c7f43e0 ldbfmaxl h31, h0, \[sp\] +.*: 3c7f401f ldbfmaxl h31, h31, \[x0\] +.*: 3c7f43ff ldbfmaxl h31, h31, \[sp\] +.*: 3c206000 ldbfmaxnm h0, h0, \[x0\] +.*: 3c2063e0 ldbfmaxnm h0, h0, \[sp\] +.*: 3c20601f ldbfmaxnm h0, h31, \[x0\] +.*: 3c2063ff ldbfmaxnm h0, h31, \[sp\] +.*: 3c3f6000 ldbfmaxnm h31, h0, \[x0\] +.*: 3c3f63e0 ldbfmaxnm h31, h0, \[sp\] +.*: 3c3f601f ldbfmaxnm h31, h31, \[x0\] +.*: 3c3f63ff ldbfmaxnm h31, h31, \[sp\] +.*: 3ca06000 ldbfmaxnma h0, h0, \[x0\] +.*: 3ca063e0 ldbfmaxnma h0, h0, \[sp\] +.*: 3ca0601f ldbfmaxnma h0, h31, \[x0\] +.*: 3ca063ff ldbfmaxnma h0, h31, \[sp\] +.*: 3cbf6000 ldbfmaxnma h31, h0, \[x0\] +.*: 3cbf63e0 ldbfmaxnma h31, h0, \[sp\] +.*: 3cbf601f ldbfmaxnma h31, h31, \[x0\] +.*: 3cbf63ff ldbfmaxnma h31, h31, \[sp\] +.*: 3ce06000 ldbfmaxnmal h0, h0, \[x0\] +.*: 3ce063e0 ldbfmaxnmal h0, h0, \[sp\] +.*: 3ce0601f ldbfmaxnmal h0, h31, \[x0\] +.*: 3ce063ff ldbfmaxnmal h0, h31, \[sp\] +.*: 3cff6000 ldbfmaxnmal h31, h0, \[x0\] +.*: 3cff63e0 ldbfmaxnmal h31, h0, \[sp\] +.*: 3cff601f ldbfmaxnmal h31, h31, \[x0\] +.*: 3cff63ff ldbfmaxnmal h31, h31, \[sp\] +.*: 3c606000 ldbfmaxnml h0, h0, \[x0\] +.*: 3c6063e0 ldbfmaxnml h0, h0, \[sp\] +.*: 3c60601f ldbfmaxnml h0, h31, \[x0\] +.*: 3c6063ff ldbfmaxnml h0, h31, \[sp\] +.*: 3c7f6000 ldbfmaxnml h31, h0, \[x0\] +.*: 3c7f63e0 ldbfmaxnml h31, h0, \[sp\] +.*: 3c7f601f ldbfmaxnml h31, h31, \[x0\] +.*: 3c7f63ff ldbfmaxnml h31, h31, \[sp\] +.*: 3c205000 ldbfmin h0, h0, \[x0\] +.*: 3c2053e0 ldbfmin h0, h0, \[sp\] +.*: 3c20501f ldbfmin h0, h31, \[x0\] +.*: 3c2053ff ldbfmin h0, h31, \[sp\] +.*: 3c3f5000 ldbfmin h31, h0, \[x0\] +.*: 3c3f53e0 ldbfmin h31, h0, \[sp\] +.*: 3c3f501f ldbfmin h31, h31, \[x0\] +.*: 3c3f53ff ldbfmin h31, h31, \[sp\] +.*: 3ca05000 ldbfmina h0, h0, \[x0\] +.*: 3ca053e0 ldbfmina h0, h0, \[sp\] +.*: 3ca0501f ldbfmina h0, h31, \[x0\] +.*: 3ca053ff ldbfmina h0, h31, \[sp\] +.*: 3cbf5000 ldbfmina h31, h0, \[x0\] +.*: 3cbf53e0 ldbfmina h31, h0, \[sp\] +.*: 3cbf501f ldbfmina h31, h31, \[x0\] +.*: 3cbf53ff ldbfmina h31, h31, \[sp\] +.*: 3ce05000 ldbfminal h0, h0, \[x0\] +.*: 3ce053e0 ldbfminal h0, h0, \[sp\] +.*: 3ce0501f ldbfminal h0, h31, \[x0\] +.*: 3ce053ff ldbfminal h0, h31, \[sp\] +.*: 3cff5000 ldbfminal h31, h0, \[x0\] +.*: 3cff53e0 ldbfminal h31, h0, \[sp\] +.*: 3cff501f ldbfminal h31, h31, \[x0\] +.*: 3cff53ff ldbfminal h31, h31, \[sp\] +.*: 3c605000 ldbfminl h0, h0, \[x0\] +.*: 3c6053e0 ldbfminl h0, h0, \[sp\] +.*: 3c60501f ldbfminl h0, h31, \[x0\] +.*: 3c6053ff ldbfminl h0, h31, \[sp\] +.*: 3c7f5000 ldbfminl h31, h0, \[x0\] +.*: 3c7f53e0 ldbfminl h31, h0, \[sp\] +.*: 3c7f501f ldbfminl h31, h31, \[x0\] +.*: 3c7f53ff ldbfminl h31, h31, \[sp\] +.*: 3c207000 ldbfminnm h0, h0, \[x0\] +.*: 3c2073e0 ldbfminnm h0, h0, \[sp\] +.*: 3c20701f ldbfminnm h0, h31, \[x0\] +.*: 3c2073ff ldbfminnm h0, h31, \[sp\] +.*: 3c3f7000 ldbfminnm h31, h0, \[x0\] +.*: 3c3f73e0 ldbfminnm h31, h0, \[sp\] +.*: 3c3f701f ldbfminnm h31, h31, \[x0\] +.*: 3c3f73ff ldbfminnm h31, h31, \[sp\] +.*: 3ca07000 ldbfminnma h0, h0, \[x0\] +.*: 3ca073e0 ldbfminnma h0, h0, \[sp\] +.*: 3ca0701f ldbfminnma h0, h31, \[x0\] +.*: 3ca073ff ldbfminnma h0, h31, \[sp\] +.*: 3cbf7000 ldbfminnma h31, h0, \[x0\] +.*: 3cbf73e0 ldbfminnma h31, h0, \[sp\] +.*: 3cbf701f ldbfminnma h31, h31, \[x0\] +.*: 3cbf73ff ldbfminnma h31, h31, \[sp\] +.*: 3ce07000 ldbfminnmal h0, h0, \[x0\] +.*: 3ce073e0 ldbfminnmal h0, h0, \[sp\] +.*: 3ce0701f ldbfminnmal h0, h31, \[x0\] +.*: 3ce073ff ldbfminnmal h0, h31, \[sp\] +.*: 3cff7000 ldbfminnmal h31, h0, \[x0\] +.*: 3cff73e0 ldbfminnmal h31, h0, \[sp\] +.*: 3cff701f ldbfminnmal h31, h31, \[x0\] +.*: 3cff73ff ldbfminnmal h31, h31, \[sp\] +.*: 3c607000 ldbfminnml h0, h0, \[x0\] +.*: 3c6073e0 ldbfminnml h0, h0, \[sp\] +.*: 3c60701f ldbfminnml h0, h31, \[x0\] +.*: 3c6073ff ldbfminnml h0, h31, \[sp\] +.*: 3c7f7000 ldbfminnml h31, h0, \[x0\] +.*: 3c7f73e0 ldbfminnml h31, h0, \[sp\] +.*: 3c7f701f ldbfminnml h31, h31, \[x0\] +.*: 3c7f73ff ldbfminnml h31, h31, \[sp\] + +.* <stf>: +.*: 7c20801f stfadd h0, \[x0\] +.*: 7c2083ff stfadd h0, \[sp\] +.*: 7c3f801f stfadd h31, \[x0\] +.*: 7c3f83ff stfadd h31, \[sp\] +.*: bc20801f stfadd s0, \[x0\] +.*: bc2083ff stfadd s0, \[sp\] +.*: bc3f801f stfadd s31, \[x0\] +.*: bc3f83ff stfadd s31, \[sp\] +.*: fc20801f stfadd d0, \[x0\] +.*: fc2083ff stfadd d0, \[sp\] +.*: fc3f801f stfadd d31, \[x0\] +.*: fc3f83ff stfadd d31, \[sp\] +.*: 7c60801f stfaddl h0, \[x0\] +.*: 7c6083ff stfaddl h0, \[sp\] +.*: 7c7f801f stfaddl h31, \[x0\] +.*: 7c7f83ff stfaddl h31, \[sp\] +.*: bc60801f stfaddl s0, \[x0\] +.*: bc6083ff stfaddl s0, \[sp\] +.*: bc7f801f stfaddl s31, \[x0\] +.*: bc7f83ff stfaddl s31, \[sp\] +.*: fc60801f stfaddl d0, \[x0\] +.*: fc6083ff stfaddl d0, \[sp\] +.*: fc7f801f stfaddl d31, \[x0\] +.*: fc7f83ff stfaddl d31, \[sp\] +.*: 7c20c01f stfmax h0, \[x0\] +.*: 7c20c3ff stfmax h0, \[sp\] +.*: 7c3fc01f stfmax h31, \[x0\] +.*: 7c3fc3ff stfmax h31, \[sp\] +.*: bc20c01f stfmax s0, \[x0\] +.*: bc20c3ff stfmax s0, \[sp\] +.*: bc3fc01f stfmax s31, \[x0\] +.*: bc3fc3ff stfmax s31, \[sp\] +.*: fc20c01f stfmax d0, \[x0\] +.*: fc20c3ff stfmax d0, \[sp\] +.*: fc3fc01f stfmax d31, \[x0\] +.*: fc3fc3ff stfmax d31, \[sp\] +.*: 7c60c01f stfmaxl h0, \[x0\] +.*: 7c60c3ff stfmaxl h0, \[sp\] +.*: 7c7fc01f stfmaxl h31, \[x0\] +.*: 7c7fc3ff stfmaxl h31, \[sp\] +.*: bc60c01f stfmaxl s0, \[x0\] +.*: bc60c3ff stfmaxl s0, \[sp\] +.*: bc7fc01f stfmaxl s31, \[x0\] +.*: bc7fc3ff stfmaxl s31, \[sp\] +.*: fc60c01f stfmaxl d0, \[x0\] +.*: fc60c3ff stfmaxl d0, \[sp\] +.*: fc7fc01f stfmaxl d31, \[x0\] +.*: fc7fc3ff stfmaxl d31, \[sp\] +.*: 7c20e01f stfmaxnm h0, \[x0\] +.*: 7c20e3ff stfmaxnm h0, \[sp\] +.*: 7c3fe01f stfmaxnm h31, \[x0\] +.*: 7c3fe3ff stfmaxnm h31, \[sp\] +.*: bc20e01f stfmaxnm s0, \[x0\] +.*: bc20e3ff stfmaxnm s0, \[sp\] +.*: bc3fe01f stfmaxnm s31, \[x0\] +.*: bc3fe3ff stfmaxnm s31, \[sp\] +.*: fc20e01f stfmaxnm d0, \[x0\] +.*: fc20e3ff stfmaxnm d0, \[sp\] +.*: fc3fe01f stfmaxnm d31, \[x0\] +.*: fc3fe3ff stfmaxnm d31, \[sp\] +.*: 7c60e01f stfmaxnml h0, \[x0\] +.*: 7c60e3ff stfmaxnml h0, \[sp\] +.*: 7c7fe01f stfmaxnml h31, \[x0\] +.*: 7c7fe3ff stfmaxnml h31, \[sp\] +.*: bc60e01f stfmaxnml s0, \[x0\] +.*: bc60e3ff stfmaxnml s0, \[sp\] +.*: bc7fe01f stfmaxnml s31, \[x0\] +.*: bc7fe3ff stfmaxnml s31, \[sp\] +.*: fc60e01f stfmaxnml d0, \[x0\] +.*: fc60e3ff stfmaxnml d0, \[sp\] +.*: fc7fe01f stfmaxnml d31, \[x0\] +.*: fc7fe3ff stfmaxnml d31, \[sp\] +.*: 7c20d01f stfmin h0, \[x0\] +.*: 7c20d3ff stfmin h0, \[sp\] +.*: 7c3fd01f stfmin h31, \[x0\] +.*: 7c3fd3ff stfmin h31, \[sp\] +.*: bc20d01f stfmin s0, \[x0\] +.*: bc20d3ff stfmin s0, \[sp\] +.*: bc3fd01f stfmin s31, \[x0\] +.*: bc3fd3ff stfmin s31, \[sp\] +.*: fc20d01f stfmin d0, \[x0\] +.*: fc20d3ff stfmin d0, \[sp\] +.*: fc3fd01f stfmin d31, \[x0\] +.*: fc3fd3ff stfmin d31, \[sp\] +.*: 7c60d01f stfminl h0, \[x0\] +.*: 7c60d3ff stfminl h0, \[sp\] +.*: 7c7fd01f stfminl h31, \[x0\] +.*: 7c7fd3ff stfminl h31, \[sp\] +.*: bc60d01f stfminl s0, \[x0\] +.*: bc60d3ff stfminl s0, \[sp\] +.*: bc7fd01f stfminl s31, \[x0\] +.*: bc7fd3ff stfminl s31, \[sp\] +.*: fc60d01f stfminl d0, \[x0\] +.*: fc60d3ff stfminl d0, \[sp\] +.*: fc7fd01f stfminl d31, \[x0\] +.*: fc7fd3ff stfminl d31, \[sp\] +.*: 7c20f01f stfminnm h0, \[x0\] +.*: 7c20f3ff stfminnm h0, \[sp\] +.*: 7c3ff01f stfminnm h31, \[x0\] +.*: 7c3ff3ff stfminnm h31, \[sp\] +.*: bc20f01f stfminnm s0, \[x0\] +.*: bc20f3ff stfminnm s0, \[sp\] +.*: bc3ff01f stfminnm s31, \[x0\] +.*: bc3ff3ff stfminnm s31, \[sp\] +.*: fc20f01f stfminnm d0, \[x0\] +.*: fc20f3ff stfminnm d0, \[sp\] +.*: fc3ff01f stfminnm d31, \[x0\] +.*: fc3ff3ff stfminnm d31, \[sp\] +.*: 7c60f01f stfminnml h0, \[x0\] +.*: 7c60f3ff stfminnml h0, \[sp\] +.*: 7c7ff01f stfminnml h31, \[x0\] +.*: 7c7ff3ff stfminnml h31, \[sp\] +.*: bc60f01f stfminnml s0, \[x0\] +.*: bc60f3ff stfminnml s0, \[sp\] +.*: bc7ff01f stfminnml s31, \[x0\] +.*: bc7ff3ff stfminnml s31, \[sp\] +.*: fc60f01f stfminnml d0, \[x0\] +.*: fc60f3ff stfminnml d0, \[sp\] +.*: fc7ff01f stfminnml d31, \[x0\] +.*: fc7ff3ff stfminnml d31, \[sp\] + +.* <stbf>: +.*: 3c20801f stbfadd h0, \[x0\] +.*: 3c2083ff stbfadd h0, \[sp\] +.*: 3c3f801f stbfadd h31, \[x0\] +.*: 3c3f83ff stbfadd h31, \[sp\] +.*: 3c60801f stbfaddl h0, \[x0\] +.*: 3c6083ff stbfaddl h0, \[sp\] +.*: 3c7f801f stbfaddl h31, \[x0\] +.*: 3c7f83ff stbfaddl h31, \[sp\] +.*: 3c20c01f stbfmax h0, \[x0\] +.*: 3c20c3ff stbfmax h0, \[sp\] +.*: 3c3fc01f stbfmax h31, \[x0\] +.*: 3c3fc3ff stbfmax h31, \[sp\] +.*: 3c60c01f stbfmaxl h0, \[x0\] +.*: 3c60c3ff stbfmaxl h0, \[sp\] +.*: 3c7fc01f stbfmaxl h31, \[x0\] +.*: 3c7fc3ff stbfmaxl h31, \[sp\] +.*: 3c20e01f stbfmaxnm h0, \[x0\] +.*: 3c20e3ff stbfmaxnm h0, \[sp\] +.*: 3c3fe01f stbfmaxnm h31, \[x0\] +.*: 3c3fe3ff stbfmaxnm h31, \[sp\] +.*: 3c60e01f stbfmaxnml h0, \[x0\] +.*: 3c60e3ff stbfmaxnml h0, \[sp\] +.*: 3c7fe01f stbfmaxnml h31, \[x0\] +.*: 3c7fe3ff stbfmaxnml h31, \[sp\] +.*: 3c20d01f stbfmin h0, \[x0\] +.*: 3c20d3ff stbfmin h0, \[sp\] +.*: 3c3fd01f stbfmin h31, \[x0\] +.*: 3c3fd3ff stbfmin h31, \[sp\] +.*: 3c60d01f stbfminl h0, \[x0\] +.*: 3c60d3ff stbfminl h0, \[sp\] +.*: 3c7fd01f stbfminl h31, \[x0\] +.*: 3c7fd3ff stbfminl h31, \[sp\] +.*: 3c20f01f stbfminnm h0, \[x0\] +.*: 3c20f3ff stbfminnm h0, \[sp\] +.*: 3c3ff01f stbfminnm h31, \[x0\] +.*: 3c3ff3ff stbfminnm h31, \[sp\] +.*: 3c60f01f stbfminnml h0, \[x0\] +.*: 3c60f3ff stbfminnml h0, \[sp\] +.*: 3c7ff01f stbfminnml h31, \[x0\] +.*: 3c7ff3ff stbfminnml h31, \[sp\] diff --git a/gas/testsuite/gas/aarch64/lsfe.s b/gas/testsuite/gas/aarch64/lsfe.s new file mode 100644 index 0000000..ff11f92 --- /dev/null +++ b/gas/testsuite/gas/aarch64/lsfe.s @@ -0,0 +1,71 @@ +ldf: + .irp op, add, max, maxnm, min, minnm + .irp suffix, , a, al, l + ldf\op\suffix h0, h0, [x0] + ldf\op\suffix h0, h0, [sp] + ldf\op\suffix h0, h31, [x0] + ldf\op\suffix h0, h31, [sp] + ldf\op\suffix h31, h0, [x0] + ldf\op\suffix h31, h0, [sp] + ldf\op\suffix h31, h31, [x0] + ldf\op\suffix h31, h31, [sp] + ldf\op\suffix s0, s0, [x0] + ldf\op\suffix s0, s0, [sp] + ldf\op\suffix s0, s31, [x0] + ldf\op\suffix s0, s31, [sp] + ldf\op\suffix s31, s0, [x0] + ldf\op\suffix s31, s0, [sp] + ldf\op\suffix s31, s31, [x0] + ldf\op\suffix s31, s31, [sp] + ldf\op\suffix d0, d0, [x0] + ldf\op\suffix d0, d0, [sp] + ldf\op\suffix d0, d31, [x0] + ldf\op\suffix d0, d31, [sp] + ldf\op\suffix d31, d0, [x0] + ldf\op\suffix d31, d0, [sp] + ldf\op\suffix d31, d31, [x0] + ldf\op\suffix d31, d31, [sp] + .endr + .endr + +ldbf: + .irp op, add, max, maxnm, min, minnm + .irp suffix, , a, al, l + ldbf\op\suffix h0, h0, [x0] + ldbf\op\suffix h0, h0, [sp] + ldbf\op\suffix h0, h31, [x0] + ldbf\op\suffix h0, h31, [sp] + ldbf\op\suffix h31, h0, [x0] + ldbf\op\suffix h31, h0, [sp] + ldbf\op\suffix h31, h31, [x0] + ldbf\op\suffix h31, h31, [sp] + .endr + .endr + +stf: + .irp op, add, max, maxnm, min, minnm + .irp suffix, , l + stf\op\suffix h0, [x0] + stf\op\suffix h0, [sp] + stf\op\suffix h31, [x0] + stf\op\suffix h31, [sp] + stf\op\suffix s0, [x0] + stf\op\suffix s0, [sp] + stf\op\suffix s31, [x0] + stf\op\suffix s31, [sp] + stf\op\suffix d0, [x0] + stf\op\suffix d0, [sp] + stf\op\suffix d31, [x0] + stf\op\suffix d31, [sp] + .endr + .endr + +stbf: + .irp op, add, max, maxnm, min, minnm + .irp suffix, , l + stbf\op\suffix h0, [x0] + stbf\op\suffix h0, [sp] + stbf\op\suffix h31, [x0] + stbf\op\suffix h31, [sp] + .endr + .endr diff --git a/gas/testsuite/gas/aarch64/mov-wide.d b/gas/testsuite/gas/aarch64/mov-wide.d new file mode 100644 index 0000000..6627902 --- /dev/null +++ b/gas/testsuite/gas/aarch64/mov-wide.d @@ -0,0 +1,46 @@ +#as: -march=armv8-a +#objdump: -dr + +.*: file format .* + + +Disassembly of section \.text: + +0+ <\.text>: + *[0-9a-f]+: 12800000 mov w0, #0xffffffff // #-1 + *[0-9a-f]+: 1280001f mov wzr, #0xffffffff // #-1 + *[0-9a-f]+: 129fffe0 movn w0, #0xffff + *[0-9a-f]+: 12a00000 movn w0, #0x0, lsl #16 + *[0-9a-f]+: 92800000 mov x0, #0xffffffffffffffff // #-1 + *[0-9a-f]+: 9280001f mov xzr, #0xffffffffffffffff // #-1 + *[0-9a-f]+: 929fffe0 mov x0, #0xffffffffffff0000 // #-65536 + *[0-9a-f]+: 92e00000 movn x0, #0x0, lsl #48 + *[0-9a-f]+: 52800000 mov w0, #0x0 // #0 + *[0-9a-f]+: 5280001f mov wzr, #0x0 // #0 + *[0-9a-f]+: 529fffe0 mov w0, #0xffff // #65535 + *[0-9a-f]+: 52a00000 movz w0, #0x0, lsl #16 + *[0-9a-f]+: d2800000 mov x0, #0x0 // #0 + *[0-9a-f]+: d280001f mov xzr, #0x0 // #0 + *[0-9a-f]+: d29fffe0 mov x0, #0xffff // #65535 + *[0-9a-f]+: d2e00000 movz x0, #0x0, lsl #48 + *[0-9a-f]+: 72800000 movk w0, #0x0 + *[0-9a-f]+: 7280001f movk wzr, #0x0 + *[0-9a-f]+: 729fffe0 movk w0, #0xffff + *[0-9a-f]+: 72a00000 movk w0, #0x0, lsl #16 + *[0-9a-f]+: f2800000 movk x0, #0x0 + *[0-9a-f]+: f280001f movk xzr, #0x0 + *[0-9a-f]+: f29fffe0 movk x0, #0xffff + *[0-9a-f]+: f2e00000 movk x0, #0x0, lsl #48 + *[0-9a-f]+: 52800000 mov w0, #0x0 // #0 + *[0-9a-f]+: 5280001f mov wzr, #0x0 // #0 + *[0-9a-f]+: 529fffe0 mov w0, #0xffff // #65535 + *[0-9a-f]+: 52bfffe0 mov w0, #0xffff0000 // #-65536 + *[0-9a-f]+: 12800000 mov w0, #0xffffffff // #-1 + *[0-9a-f]+: 12b00000 mov w0, #0x7fffffff // #2147483647 + *[0-9a-f]+: d2800000 mov x0, #0x0 // #0 + *[0-9a-f]+: d280001f mov xzr, #0x0 // #0 + *[0-9a-f]+: d29fffe0 mov x0, #0xffff // #65535 + *[0-9a-f]+: d2ffffe0 mov x0, #0xffff000000000000 // #-281474976710656 + *[0-9a-f]+: 92800000 mov x0, #0xffffffffffffffff // #-1 + *[0-9a-f]+: 929fffe0 mov x0, #0xffffffffffff0000 // #-65536 + *[0-9a-f]+: 92ffffe0 mov x0, #0xffffffffffff // #281474976710655 diff --git a/gas/testsuite/gas/aarch64/mov-wide.s b/gas/testsuite/gas/aarch64/mov-wide.s new file mode 100644 index 0000000..058e23e --- /dev/null +++ b/gas/testsuite/gas/aarch64/mov-wide.s @@ -0,0 +1,40 @@ + movn w0, #0 + movn wzr, #0, lsl #0 + movn w0, #65535 + movn w0, #0, lsl #16 + movn x0, #0 + movn xzr, #0, lsl #0 + movn x0, #65535 + movn x0, #0, lsl #48 + + movz w0, #0 + movz wzr, #0, lsl #0 + movz w0, #65535 + movz w0, #0, lsl #16 + movz x0, #0 + movz xzr, #0, lsl #0 + movz x0, #65535 + movz x0, #0, lsl #48 + + movk w0, #0 + movk wzr, #0, lsl #0 + movk w0, #65535 + movk w0, #0, lsl #16 + movk x0, #0 + movk xzr, #0, lsl #0 + movk x0, #65535 + movk x0, #0, lsl #48 + + mov w0, #0 + mov wzr, #0 + mov w0, #65535 + mov w0, #4294901760 + mov w0, #-1 + mov w0, #2147483647 + mov x0, #0 + mov xzr, #0 + mov x0, #65535 + mov x0, #18446462598732840960 + mov x0, #-1 + mov x0, #-65536 + mov x0, #281474976710655 diff --git a/gas/testsuite/gas/aarch64/occmo-memtag.d b/gas/testsuite/gas/aarch64/occmo-memtag.d new file mode 100644 index 0000000..0dbbab0 --- /dev/null +++ b/gas/testsuite/gas/aarch64/occmo-memtag.d @@ -0,0 +1,13 @@ +#name: FEAT_OCCMO + MEMTAG Test +#as: -march=armv8-a+occmo+memtag +#objdump: -dr + +.*: file format .* + +Disassembly of section .text: + +0+ <.*>: +[^:]*: d50b7be0 dc cgdvaoc, x0 +[^:]*: d50b7bff dc cgdvaoc, xzr +[^:]*: d50b7fe0 dc cigdvaoc, x0 +[^:]*: d50b7fff dc cigdvaoc, xzr diff --git a/gas/testsuite/gas/aarch64/occmo-memtag.s b/gas/testsuite/gas/aarch64/occmo-memtag.s new file mode 100644 index 0000000..2426dfb --- /dev/null +++ b/gas/testsuite/gas/aarch64/occmo-memtag.s @@ -0,0 +1,4 @@ + dc cgdvaoc, x0 + dc cgdvaoc, xzr + dc cigdvaoc, x0 + dc cigdvaoc, xzr diff --git a/gas/testsuite/gas/aarch64/occmo.d b/gas/testsuite/gas/aarch64/occmo.d new file mode 100644 index 0000000..0ec68e8 --- /dev/null +++ b/gas/testsuite/gas/aarch64/occmo.d @@ -0,0 +1,13 @@ +#name: FEAT_OCCMO Test +#as: -march=armv8-a+occmo +#objdump: -dr + +.*: file format .* + +Disassembly of section .text: + +0+ <.*>: +[^:]*: d50b7b00 dc cvaoc, x0 +[^:]*: d50b7b1f dc cvaoc, xzr +[^:]*: d50b7f00 dc civaoc, x0 +[^:]*: d50b7f1f dc civaoc, xzr diff --git a/gas/testsuite/gas/aarch64/occmo.s b/gas/testsuite/gas/aarch64/occmo.s new file mode 100644 index 0000000..750341d --- /dev/null +++ b/gas/testsuite/gas/aarch64/occmo.s @@ -0,0 +1,4 @@ + dc cvaoc, x0 + dc cvaoc, xzr + dc civaoc, x0 + dc civaoc, xzr diff --git a/gas/testsuite/gas/aarch64/original-missing-misc.d b/gas/testsuite/gas/aarch64/original-missing-misc.d new file mode 100644 index 0000000..7971e64 --- /dev/null +++ b/gas/testsuite/gas/aarch64/original-missing-misc.d @@ -0,0 +1,46 @@ +#as: -march=armv8-a +#objdump: -dr + +.*: file format .* + + +Disassembly of section \.text: + +0+ <\.text>: + *[0-9a-f]+: 5ef1b800 addp d0, v0\.2d + *[0-9a-f]+: 5ef1b81f addp d31, v0\.2d + *[0-9a-f]+: 5ef1bbe0 addp d0, v31\.2d + *[0-9a-f]+: 9b407c00 smulh x0, x0, x0 + *[0-9a-f]+: 9b407c1f smulh xzr, x0, x0 + *[0-9a-f]+: 9b407fe0 smulh x0, xzr, x0 + *[0-9a-f]+: 9b5f7c00 smulh x0, x0, xzr + *[0-9a-f]+: 9bc07c00 umulh x0, x0, x0 + *[0-9a-f]+: 9bc07c1f umulh xzr, x0, x0 + *[0-9a-f]+: 9bc07fe0 umulh x0, xzr, x0 + *[0-9a-f]+: 9bdf7c00 umulh x0, x0, xzr + *[0-9a-f]+: f8800000 prfum pldl1keep, \[x0\] + *[0-9a-f]+: f880001f prfum #0x1f, \[x0\] + *[0-9a-f]+: f88003e0 prfum pldl1keep, \[sp\] + *[0-9a-f]+: f89ff000 prfum pldl1keep, \[x0, #-1\] + *[0-9a-f]+: f8800008 prfum plil1keep, \[x0\] + *[0-9a-f]+: f8800010 prfum pstl1keep, \[x0\] + *[0-9a-f]+: f8800002 prfum pldl2keep, \[x0\] + *[0-9a-f]+: f8800004 prfum pldl3keep, \[x0\] + *[0-9a-f]+: f8800001 prfum pldl1strm, \[x0\] + *[0-9a-f]+: f8800018 prfum #0x18, \[x0\] + *[0-9a-f]+: 52000000 eor w0, w0, #0x1 + *[0-9a-f]+: 5200001f eor wsp, w0, #0x1 + *[0-9a-f]+: 520003e0 eor w0, wzr, #0x1 + *[0-9a-f]+: 521f0000 eor w0, w0, #0x2 + *[0-9a-f]+: 52000400 eor w0, w0, #0x3 + *[0-9a-f]+: 52007800 eor w0, w0, #0x7fffffff + *[0-9a-f]+: 5200f000 eor w0, w0, #0x55555555 + *[0-9a-f]+: 5233f000 eor w0, w0, #0xaaaaaaaa + *[0-9a-f]+: d2400000 eor x0, x0, #0x1 + *[0-9a-f]+: d240001f eor sp, x0, #0x1 + *[0-9a-f]+: d24003e0 eor x0, xzr, #0x1 + *[0-9a-f]+: d27f0000 eor x0, x0, #0x2 + *[0-9a-f]+: d2400400 eor x0, x0, #0x3 + *[0-9a-f]+: d240f800 eor x0, x0, #0x7fffffffffffffff + *[0-9a-f]+: d200f000 eor x0, x0, #0x5555555555555555 + *[0-9a-f]+: d233f000 eor x0, x0, #0xaaaaaaaaaaaaaaaa diff --git a/gas/testsuite/gas/aarch64/original-missing-misc.s b/gas/testsuite/gas/aarch64/original-missing-misc.s new file mode 100644 index 0000000..83d5482 --- /dev/null +++ b/gas/testsuite/gas/aarch64/original-missing-misc.s @@ -0,0 +1,42 @@ + addp d0, v0.2d + addp d31, v0.2d + addp d0, v31.2d + + smulh x0, x0, x0 + smulh xzr, x0, x0 + smulh x0, xzr, x0 + smulh x0, x0, xzr + + umulh x0, x0, x0 + umulh xzr, x0, x0 + umulh x0, xzr, x0 + umulh x0, x0, xzr + + prfum pldl1keep, [x0, #0] + prfum #31, [x0, #0] + prfum #0, [sp, #0] + prfum #0, [x0, #-1] + prfum plil1keep, [x0] + prfum pstl1keep, [x0] + prfum pldl2keep, [x0] + prfum pldl3keep, [x0] + prfum pldl1strm, [x0] +// Verify that we don't use the IR symbol in disassembly. + prfum #0x18, [x0, #0] + + eor w0, w0, 0x1 + eor wsp, w0, 0x1 + eor w0, wzr, 0x1 + eor w0, w0, 0x2 + eor w0, w0, 0x3 + eor w0, w0, 0x7fffffff + eor w0, w0, 0x55555555 + .inst 0x5233f000 + eor x0, x0, 0x1 + eor sp, x0, 0x1 + eor x0, xzr, 0x1 + eor x0, x0, 0x2 + eor x0, x0, 0x3 + eor x0, x0, 0x7fffffffffffffff + eor x0, x0, 0x5555555555555555 + .inst 0xd233f000 diff --git a/gas/testsuite/gas/aarch64/shifted.d b/gas/testsuite/gas/aarch64/shifted.d index 288ee21..5f8e511 100644 --- a/gas/testsuite/gas/aarch64/shifted.d +++ b/gas/testsuite/gas/aarch64/shifted.d @@ -5,730 +5,834 @@ Disassembly of section \.text: 0+ <.*>: - 0: aa030041 orr x1, x2, x3 - 4: aa030441 orr x1, x2, x3, lsl #1 - 8: aa030c41 orr x1, x2, x3, lsl #3 - c: aa031c41 orr x1, x2, x3, lsl #7 - 10: aa033c41 orr x1, x2, x3, lsl #15 - 14: aa037c41 orr x1, x2, x3, lsl #31 - 18: aa03fc41 orr x1, x2, x3, lsl #63 - 1c: aa430041 orr x1, x2, x3, lsr #0 - 20: aa430441 orr x1, x2, x3, lsr #1 - 24: aa430c41 orr x1, x2, x3, lsr #3 - 28: aa431c41 orr x1, x2, x3, lsr #7 - 2c: aa433c41 orr x1, x2, x3, lsr #15 - 30: aa437c41 orr x1, x2, x3, lsr #31 - 34: aa43fc41 orr x1, x2, x3, lsr #63 - 38: aa830041 orr x1, x2, x3, asr #0 - 3c: aa830441 orr x1, x2, x3, asr #1 - 40: aa830c41 orr x1, x2, x3, asr #3 - 44: aa831c41 orr x1, x2, x3, asr #7 - 48: aa833c41 orr x1, x2, x3, asr #15 - 4c: aa837c41 orr x1, x2, x3, asr #31 - 50: aa83fc41 orr x1, x2, x3, asr #63 - 54: aac30041 orr x1, x2, x3, ror #0 - 58: aac30441 orr x1, x2, x3, ror #1 - 5c: aac30c41 orr x1, x2, x3, ror #3 - 60: aac31c41 orr x1, x2, x3, ror #7 - 64: aac33c41 orr x1, x2, x3, ror #15 - 68: aac37c41 orr x1, x2, x3, ror #31 - 6c: aac3fc41 orr x1, x2, x3, ror #63 - 70: 2a030041 orr w1, w2, w3 - 74: 2a030441 orr w1, w2, w3, lsl #1 - 78: 2a030c41 orr w1, w2, w3, lsl #3 - 7c: 2a031c41 orr w1, w2, w3, lsl #7 - 80: 2a033c41 orr w1, w2, w3, lsl #15 - 84: 2a037c41 orr w1, w2, w3, lsl #31 - 88: 2a430041 orr w1, w2, w3, lsr #0 - 8c: 2a430441 orr w1, w2, w3, lsr #1 - 90: 2a430c41 orr w1, w2, w3, lsr #3 - 94: 2a431c41 orr w1, w2, w3, lsr #7 - 98: 2a433c41 orr w1, w2, w3, lsr #15 - 9c: 2a437c41 orr w1, w2, w3, lsr #31 - a0: 2a830041 orr w1, w2, w3, asr #0 - a4: 2a830441 orr w1, w2, w3, asr #1 - a8: 2a830c41 orr w1, w2, w3, asr #3 - ac: 2a831c41 orr w1, w2, w3, asr #7 - b0: 2a833c41 orr w1, w2, w3, asr #15 - b4: 2a837c41 orr w1, w2, w3, asr #31 - b8: 2ac30041 orr w1, w2, w3, ror #0 - bc: 2ac30441 orr w1, w2, w3, ror #1 - c0: 2ac30c41 orr w1, w2, w3, ror #3 - c4: 2ac31c41 orr w1, w2, w3, ror #7 - c8: 2ac33c41 orr w1, w2, w3, ror #15 - cc: 2ac37c41 orr w1, w2, w3, ror #31 - d0: 8a030041 and x1, x2, x3 - d4: 8a030441 and x1, x2, x3, lsl #1 - d8: 8a030c41 and x1, x2, x3, lsl #3 - dc: 8a031c41 and x1, x2, x3, lsl #7 - e0: 8a033c41 and x1, x2, x3, lsl #15 - e4: 8a037c41 and x1, x2, x3, lsl #31 - e8: 8a03fc41 and x1, x2, x3, lsl #63 - ec: 8a430041 and x1, x2, x3, lsr #0 - f0: 8a430441 and x1, x2, x3, lsr #1 - f4: 8a430c41 and x1, x2, x3, lsr #3 - f8: 8a431c41 and x1, x2, x3, lsr #7 - fc: 8a433c41 and x1, x2, x3, lsr #15 - 100: 8a437c41 and x1, x2, x3, lsr #31 - 104: 8a43fc41 and x1, x2, x3, lsr #63 - 108: 8a830041 and x1, x2, x3, asr #0 - 10c: 8a830441 and x1, x2, x3, asr #1 - 110: 8a830c41 and x1, x2, x3, asr #3 - 114: 8a831c41 and x1, x2, x3, asr #7 - 118: 8a833c41 and x1, x2, x3, asr #15 - 11c: 8a837c41 and x1, x2, x3, asr #31 - 120: 8a83fc41 and x1, x2, x3, asr #63 - 124: 8ac30041 and x1, x2, x3, ror #0 - 128: 8ac30441 and x1, x2, x3, ror #1 - 12c: 8ac30c41 and x1, x2, x3, ror #3 - 130: 8ac31c41 and x1, x2, x3, ror #7 - 134: 8ac33c41 and x1, x2, x3, ror #15 - 138: 8ac37c41 and x1, x2, x3, ror #31 - 13c: 8ac3fc41 and x1, x2, x3, ror #63 - 140: 0a030041 and w1, w2, w3 - 144: 0a030441 and w1, w2, w3, lsl #1 - 148: 0a030c41 and w1, w2, w3, lsl #3 - 14c: 0a031c41 and w1, w2, w3, lsl #7 - 150: 0a033c41 and w1, w2, w3, lsl #15 - 154: 0a037c41 and w1, w2, w3, lsl #31 - 158: 0a430041 and w1, w2, w3, lsr #0 - 15c: 0a430441 and w1, w2, w3, lsr #1 - 160: 0a430c41 and w1, w2, w3, lsr #3 - 164: 0a431c41 and w1, w2, w3, lsr #7 - 168: 0a433c41 and w1, w2, w3, lsr #15 - 16c: 0a437c41 and w1, w2, w3, lsr #31 - 170: 0a830041 and w1, w2, w3, asr #0 - 174: 0a830441 and w1, w2, w3, asr #1 - 178: 0a830c41 and w1, w2, w3, asr #3 - 17c: 0a831c41 and w1, w2, w3, asr #7 - 180: 0a833c41 and w1, w2, w3, asr #15 - 184: 0a837c41 and w1, w2, w3, asr #31 - 188: 0ac30041 and w1, w2, w3, ror #0 - 18c: 0ac30441 and w1, w2, w3, ror #1 - 190: 0ac30c41 and w1, w2, w3, ror #3 - 194: 0ac31c41 and w1, w2, w3, ror #7 - 198: 0ac33c41 and w1, w2, w3, ror #15 - 19c: 0ac37c41 and w1, w2, w3, ror #31 - 1a0: ca030041 eor x1, x2, x3 - 1a4: ca030441 eor x1, x2, x3, lsl #1 - 1a8: ca030c41 eor x1, x2, x3, lsl #3 - 1ac: ca031c41 eor x1, x2, x3, lsl #7 - 1b0: ca033c41 eor x1, x2, x3, lsl #15 - 1b4: ca037c41 eor x1, x2, x3, lsl #31 - 1b8: ca03fc41 eor x1, x2, x3, lsl #63 - 1bc: ca430041 eor x1, x2, x3, lsr #0 - 1c0: ca430441 eor x1, x2, x3, lsr #1 - 1c4: ca430c41 eor x1, x2, x3, lsr #3 - 1c8: ca431c41 eor x1, x2, x3, lsr #7 - 1cc: ca433c41 eor x1, x2, x3, lsr #15 - 1d0: ca437c41 eor x1, x2, x3, lsr #31 - 1d4: ca43fc41 eor x1, x2, x3, lsr #63 - 1d8: ca830041 eor x1, x2, x3, asr #0 - 1dc: ca830441 eor x1, x2, x3, asr #1 - 1e0: ca830c41 eor x1, x2, x3, asr #3 - 1e4: ca831c41 eor x1, x2, x3, asr #7 - 1e8: ca833c41 eor x1, x2, x3, asr #15 - 1ec: ca837c41 eor x1, x2, x3, asr #31 - 1f0: ca83fc41 eor x1, x2, x3, asr #63 - 1f4: cac30041 eor x1, x2, x3, ror #0 - 1f8: cac30441 eor x1, x2, x3, ror #1 - 1fc: cac30c41 eor x1, x2, x3, ror #3 - 200: cac31c41 eor x1, x2, x3, ror #7 - 204: cac33c41 eor x1, x2, x3, ror #15 - 208: cac37c41 eor x1, x2, x3, ror #31 - 20c: cac3fc41 eor x1, x2, x3, ror #63 - 210: 4a030041 eor w1, w2, w3 - 214: 4a030441 eor w1, w2, w3, lsl #1 - 218: 4a030c41 eor w1, w2, w3, lsl #3 - 21c: 4a031c41 eor w1, w2, w3, lsl #7 - 220: 4a033c41 eor w1, w2, w3, lsl #15 - 224: 4a037c41 eor w1, w2, w3, lsl #31 - 228: 4a430041 eor w1, w2, w3, lsr #0 - 22c: 4a430441 eor w1, w2, w3, lsr #1 - 230: 4a430c41 eor w1, w2, w3, lsr #3 - 234: 4a431c41 eor w1, w2, w3, lsr #7 - 238: 4a433c41 eor w1, w2, w3, lsr #15 - 23c: 4a437c41 eor w1, w2, w3, lsr #31 - 240: 4a830041 eor w1, w2, w3, asr #0 - 244: 4a830441 eor w1, w2, w3, asr #1 - 248: 4a830c41 eor w1, w2, w3, asr #3 - 24c: 4a831c41 eor w1, w2, w3, asr #7 - 250: 4a833c41 eor w1, w2, w3, asr #15 - 254: 4a837c41 eor w1, w2, w3, asr #31 - 258: 4ac30041 eor w1, w2, w3, ror #0 - 25c: 4ac30441 eor w1, w2, w3, ror #1 - 260: 4ac30c41 eor w1, w2, w3, ror #3 - 264: 4ac31c41 eor w1, w2, w3, ror #7 - 268: 4ac33c41 eor w1, w2, w3, ror #15 - 26c: 4ac37c41 eor w1, w2, w3, ror #31 - 270: 8a230041 bic x1, x2, x3 - 274: 8a230441 bic x1, x2, x3, lsl #1 - 278: 8a230c41 bic x1, x2, x3, lsl #3 - 27c: 8a231c41 bic x1, x2, x3, lsl #7 - 280: 8a233c41 bic x1, x2, x3, lsl #15 - 284: 8a237c41 bic x1, x2, x3, lsl #31 - 288: 8a23fc41 bic x1, x2, x3, lsl #63 - 28c: 8a630041 bic x1, x2, x3, lsr #0 - 290: 8a630441 bic x1, x2, x3, lsr #1 - 294: 8a630c41 bic x1, x2, x3, lsr #3 - 298: 8a631c41 bic x1, x2, x3, lsr #7 - 29c: 8a633c41 bic x1, x2, x3, lsr #15 - 2a0: 8a637c41 bic x1, x2, x3, lsr #31 - 2a4: 8a63fc41 bic x1, x2, x3, lsr #63 - 2a8: 8aa30041 bic x1, x2, x3, asr #0 - 2ac: 8aa30441 bic x1, x2, x3, asr #1 - 2b0: 8aa30c41 bic x1, x2, x3, asr #3 - 2b4: 8aa31c41 bic x1, x2, x3, asr #7 - 2b8: 8aa33c41 bic x1, x2, x3, asr #15 - 2bc: 8aa37c41 bic x1, x2, x3, asr #31 - 2c0: 8aa3fc41 bic x1, x2, x3, asr #63 - 2c4: 8ae30041 bic x1, x2, x3, ror #0 - 2c8: 8ae30441 bic x1, x2, x3, ror #1 - 2cc: 8ae30c41 bic x1, x2, x3, ror #3 - 2d0: 8ae31c41 bic x1, x2, x3, ror #7 - 2d4: 8ae33c41 bic x1, x2, x3, ror #15 - 2d8: 8ae37c41 bic x1, x2, x3, ror #31 - 2dc: 8ae3fc41 bic x1, x2, x3, ror #63 - 2e0: 0a230041 bic w1, w2, w3 - 2e4: 0a230441 bic w1, w2, w3, lsl #1 - 2e8: 0a230c41 bic w1, w2, w3, lsl #3 - 2ec: 0a231c41 bic w1, w2, w3, lsl #7 - 2f0: 0a233c41 bic w1, w2, w3, lsl #15 - 2f4: 0a237c41 bic w1, w2, w3, lsl #31 - 2f8: 0a630041 bic w1, w2, w3, lsr #0 - 2fc: 0a630441 bic w1, w2, w3, lsr #1 - 300: 0a630c41 bic w1, w2, w3, lsr #3 - 304: 0a631c41 bic w1, w2, w3, lsr #7 - 308: 0a633c41 bic w1, w2, w3, lsr #15 - 30c: 0a637c41 bic w1, w2, w3, lsr #31 - 310: 0aa30041 bic w1, w2, w3, asr #0 - 314: 0aa30441 bic w1, w2, w3, asr #1 - 318: 0aa30c41 bic w1, w2, w3, asr #3 - 31c: 0aa31c41 bic w1, w2, w3, asr #7 - 320: 0aa33c41 bic w1, w2, w3, asr #15 - 324: 0aa37c41 bic w1, w2, w3, asr #31 - 328: 0ae30041 bic w1, w2, w3, ror #0 - 32c: 0ae30441 bic w1, w2, w3, ror #1 - 330: 0ae30c41 bic w1, w2, w3, ror #3 - 334: 0ae31c41 bic w1, w2, w3, ror #7 - 338: 0ae33c41 bic w1, w2, w3, ror #15 - 33c: 0ae37c41 bic w1, w2, w3, ror #31 - 340: aa230041 orn x1, x2, x3 - 344: aa230441 orn x1, x2, x3, lsl #1 - 348: aa230c41 orn x1, x2, x3, lsl #3 - 34c: aa231c41 orn x1, x2, x3, lsl #7 - 350: aa233c41 orn x1, x2, x3, lsl #15 - 354: aa237c41 orn x1, x2, x3, lsl #31 - 358: aa23fc41 orn x1, x2, x3, lsl #63 - 35c: aa630041 orn x1, x2, x3, lsr #0 - 360: aa630441 orn x1, x2, x3, lsr #1 - 364: aa630c41 orn x1, x2, x3, lsr #3 - 368: aa631c41 orn x1, x2, x3, lsr #7 - 36c: aa633c41 orn x1, x2, x3, lsr #15 - 370: aa637c41 orn x1, x2, x3, lsr #31 - 374: aa63fc41 orn x1, x2, x3, lsr #63 - 378: aaa30041 orn x1, x2, x3, asr #0 - 37c: aaa30441 orn x1, x2, x3, asr #1 - 380: aaa30c41 orn x1, x2, x3, asr #3 - 384: aaa31c41 orn x1, x2, x3, asr #7 - 388: aaa33c41 orn x1, x2, x3, asr #15 - 38c: aaa37c41 orn x1, x2, x3, asr #31 - 390: aaa3fc41 orn x1, x2, x3, asr #63 - 394: aae30041 orn x1, x2, x3, ror #0 - 398: aae30441 orn x1, x2, x3, ror #1 - 39c: aae30c41 orn x1, x2, x3, ror #3 - 3a0: aae31c41 orn x1, x2, x3, ror #7 - 3a4: aae33c41 orn x1, x2, x3, ror #15 - 3a8: aae37c41 orn x1, x2, x3, ror #31 - 3ac: aae3fc41 orn x1, x2, x3, ror #63 - 3b0: 2a230041 orn w1, w2, w3 - 3b4: 2a230441 orn w1, w2, w3, lsl #1 - 3b8: 2a230c41 orn w1, w2, w3, lsl #3 - 3bc: 2a231c41 orn w1, w2, w3, lsl #7 - 3c0: 2a233c41 orn w1, w2, w3, lsl #15 - 3c4: 2a237c41 orn w1, w2, w3, lsl #31 - 3c8: 2a630041 orn w1, w2, w3, lsr #0 - 3cc: 2a630441 orn w1, w2, w3, lsr #1 - 3d0: 2a630c41 orn w1, w2, w3, lsr #3 - 3d4: 2a631c41 orn w1, w2, w3, lsr #7 - 3d8: 2a633c41 orn w1, w2, w3, lsr #15 - 3dc: 2a637c41 orn w1, w2, w3, lsr #31 - 3e0: 2aa30041 orn w1, w2, w3, asr #0 - 3e4: 2aa30441 orn w1, w2, w3, asr #1 - 3e8: 2aa30c41 orn w1, w2, w3, asr #3 - 3ec: 2aa31c41 orn w1, w2, w3, asr #7 - 3f0: 2aa33c41 orn w1, w2, w3, asr #15 - 3f4: 2aa37c41 orn w1, w2, w3, asr #31 - 3f8: 2ae30041 orn w1, w2, w3, ror #0 - 3fc: 2ae30441 orn w1, w2, w3, ror #1 - 400: 2ae30c41 orn w1, w2, w3, ror #3 - 404: 2ae31c41 orn w1, w2, w3, ror #7 - 408: 2ae33c41 orn w1, w2, w3, ror #15 - 40c: 2ae37c41 orn w1, w2, w3, ror #31 - 410: ca230041 eon x1, x2, x3 - 414: ca230441 eon x1, x2, x3, lsl #1 - 418: ca230c41 eon x1, x2, x3, lsl #3 - 41c: ca231c41 eon x1, x2, x3, lsl #7 - 420: ca233c41 eon x1, x2, x3, lsl #15 - 424: ca237c41 eon x1, x2, x3, lsl #31 - 428: ca23fc41 eon x1, x2, x3, lsl #63 - 42c: ca630041 eon x1, x2, x3, lsr #0 - 430: ca630441 eon x1, x2, x3, lsr #1 - 434: ca630c41 eon x1, x2, x3, lsr #3 - 438: ca631c41 eon x1, x2, x3, lsr #7 - 43c: ca633c41 eon x1, x2, x3, lsr #15 - 440: ca637c41 eon x1, x2, x3, lsr #31 - 444: ca63fc41 eon x1, x2, x3, lsr #63 - 448: caa30041 eon x1, x2, x3, asr #0 - 44c: caa30441 eon x1, x2, x3, asr #1 - 450: caa30c41 eon x1, x2, x3, asr #3 - 454: caa31c41 eon x1, x2, x3, asr #7 - 458: caa33c41 eon x1, x2, x3, asr #15 - 45c: caa37c41 eon x1, x2, x3, asr #31 - 460: caa3fc41 eon x1, x2, x3, asr #63 - 464: cae30041 eon x1, x2, x3, ror #0 - 468: cae30441 eon x1, x2, x3, ror #1 - 46c: cae30c41 eon x1, x2, x3, ror #3 - 470: cae31c41 eon x1, x2, x3, ror #7 - 474: cae33c41 eon x1, x2, x3, ror #15 - 478: cae37c41 eon x1, x2, x3, ror #31 - 47c: cae3fc41 eon x1, x2, x3, ror #63 - 480: 4a230041 eon w1, w2, w3 - 484: 4a230441 eon w1, w2, w3, lsl #1 - 488: 4a230c41 eon w1, w2, w3, lsl #3 - 48c: 4a231c41 eon w1, w2, w3, lsl #7 - 490: 4a233c41 eon w1, w2, w3, lsl #15 - 494: 4a237c41 eon w1, w2, w3, lsl #31 - 498: 4a630041 eon w1, w2, w3, lsr #0 - 49c: 4a630441 eon w1, w2, w3, lsr #1 - 4a0: 4a630c41 eon w1, w2, w3, lsr #3 - 4a4: 4a631c41 eon w1, w2, w3, lsr #7 - 4a8: 4a633c41 eon w1, w2, w3, lsr #15 - 4ac: 4a637c41 eon w1, w2, w3, lsr #31 - 4b0: 4aa30041 eon w1, w2, w3, asr #0 - 4b4: 4aa30441 eon w1, w2, w3, asr #1 - 4b8: 4aa30c41 eon w1, w2, w3, asr #3 - 4bc: 4aa31c41 eon w1, w2, w3, asr #7 - 4c0: 4aa33c41 eon w1, w2, w3, asr #15 - 4c4: 4aa37c41 eon w1, w2, w3, asr #31 - 4c8: 4ae30041 eon w1, w2, w3, ror #0 - 4cc: 4ae30441 eon w1, w2, w3, ror #1 - 4d0: 4ae30c41 eon w1, w2, w3, ror #3 - 4d4: 4ae31c41 eon w1, w2, w3, ror #7 - 4d8: 4ae33c41 eon w1, w2, w3, ror #15 - 4dc: 4ae37c41 eon w1, w2, w3, ror #31 - 4e0: 8b030041 add x1, x2, x3 - 4e4: 8b030441 add x1, x2, x3, lsl #1 - 4e8: 8b030c41 add x1, x2, x3, lsl #3 - 4ec: 8b031c41 add x1, x2, x3, lsl #7 - 4f0: 8b033c41 add x1, x2, x3, lsl #15 - 4f4: 8b037c41 add x1, x2, x3, lsl #31 - 4f8: 8b03fc41 add x1, x2, x3, lsl #63 - 4fc: 8b430041 add x1, x2, x3, lsr #0 - 500: 8b430441 add x1, x2, x3, lsr #1 - 504: 8b430c41 add x1, x2, x3, lsr #3 - 508: 8b431c41 add x1, x2, x3, lsr #7 - 50c: 8b433c41 add x1, x2, x3, lsr #15 - 510: 8b437c41 add x1, x2, x3, lsr #31 - 514: 8b43fc41 add x1, x2, x3, lsr #63 - 518: 8b830041 add x1, x2, x3, asr #0 - 51c: 8b830441 add x1, x2, x3, asr #1 - 520: 8b830c41 add x1, x2, x3, asr #3 - 524: 8b831c41 add x1, x2, x3, asr #7 - 528: 8b833c41 add x1, x2, x3, asr #15 - 52c: 8b837c41 add x1, x2, x3, asr #31 - 530: 8b83fc41 add x1, x2, x3, asr #63 - 534: 8b230041 add x1, x2, w3, uxtb - 538: 8b230441 add x1, x2, w3, uxtb #1 - 53c: 8b230841 add x1, x2, w3, uxtb #2 - 540: 8b230c41 add x1, x2, w3, uxtb #3 - 544: 8b231041 add x1, x2, w3, uxtb #4 - 548: 8b232041 add x1, x2, w3, uxth - 54c: 8b232441 add x1, x2, w3, uxth #1 - 550: 8b232841 add x1, x2, w3, uxth #2 - 554: 8b232c41 add x1, x2, w3, uxth #3 - 558: 8b233041 add x1, x2, w3, uxth #4 - 55c: 8b234041 add x1, x2, w3, uxtw - 560: 8b234441 add x1, x2, w3, uxtw #1 - 564: 8b234841 add x1, x2, w3, uxtw #2 - 568: 8b234c41 add x1, x2, w3, uxtw #3 - 56c: 8b235041 add x1, x2, w3, uxtw #4 - 570: 8b236041 add x1, x2, x3, uxtx - 574: 8b236441 add x1, x2, x3, uxtx #1 - 578: 8b236841 add x1, x2, x3, uxtx #2 - 57c: 8b236c41 add x1, x2, x3, uxtx #3 - 580: 8b237041 add x1, x2, x3, uxtx #4 - 584: 8b238041 add x1, x2, w3, sxtb - 588: 8b238441 add x1, x2, w3, sxtb #1 - 58c: 8b238841 add x1, x2, w3, sxtb #2 - 590: 8b238c41 add x1, x2, w3, sxtb #3 - 594: 8b239041 add x1, x2, w3, sxtb #4 - 598: 8b23a041 add x1, x2, w3, sxth - 59c: 8b23a441 add x1, x2, w3, sxth #1 - 5a0: 8b23a841 add x1, x2, w3, sxth #2 - 5a4: 8b23ac41 add x1, x2, w3, sxth #3 - 5a8: 8b23b041 add x1, x2, w3, sxth #4 - 5ac: 8b23c041 add x1, x2, w3, sxtw - 5b0: 8b23c441 add x1, x2, w3, sxtw #1 - 5b4: 8b23c841 add x1, x2, w3, sxtw #2 - 5b8: 8b23cc41 add x1, x2, w3, sxtw #3 - 5bc: 8b23d041 add x1, x2, w3, sxtw #4 - 5c0: 8b23e041 add x1, x2, x3, sxtx - 5c4: 8b23e441 add x1, x2, x3, sxtx #1 - 5c8: 8b23e841 add x1, x2, x3, sxtx #2 - 5cc: 8b23ec41 add x1, x2, x3, sxtx #3 - 5d0: 8b23f041 add x1, x2, x3, sxtx #4 - 5d4: 0b030041 add w1, w2, w3 - 5d8: 0b030441 add w1, w2, w3, lsl #1 - 5dc: 0b030c41 add w1, w2, w3, lsl #3 - 5e0: 0b031c41 add w1, w2, w3, lsl #7 - 5e4: 0b033c41 add w1, w2, w3, lsl #15 - 5e8: 0b037c41 add w1, w2, w3, lsl #31 - 5ec: 0b430041 add w1, w2, w3, lsr #0 - 5f0: 0b430441 add w1, w2, w3, lsr #1 - 5f4: 0b430c41 add w1, w2, w3, lsr #3 - 5f8: 0b431c41 add w1, w2, w3, lsr #7 - 5fc: 0b433c41 add w1, w2, w3, lsr #15 - 600: 0b437c41 add w1, w2, w3, lsr #31 - 604: 0b830041 add w1, w2, w3, asr #0 - 608: 0b830441 add w1, w2, w3, asr #1 - 60c: 0b830c41 add w1, w2, w3, asr #3 - 610: 0b831c41 add w1, w2, w3, asr #7 - 614: 0b833c41 add w1, w2, w3, asr #15 - 618: 0b837c41 add w1, w2, w3, asr #31 - 61c: 0b230041 add w1, w2, w3, uxtb - 620: 0b230441 add w1, w2, w3, uxtb #1 - 624: 0b230841 add w1, w2, w3, uxtb #2 - 628: 0b230c41 add w1, w2, w3, uxtb #3 - 62c: 0b231041 add w1, w2, w3, uxtb #4 - 630: 0b232041 add w1, w2, w3, uxth - 634: 0b232441 add w1, w2, w3, uxth #1 - 638: 0b232841 add w1, w2, w3, uxth #2 - 63c: 0b232c41 add w1, w2, w3, uxth #3 - 640: 0b233041 add w1, w2, w3, uxth #4 - 644: 0b238041 add w1, w2, w3, sxtb - 648: 0b238441 add w1, w2, w3, sxtb #1 - 64c: 0b238841 add w1, w2, w3, sxtb #2 - 650: 0b238c41 add w1, w2, w3, sxtb #3 - 654: 0b239041 add w1, w2, w3, sxtb #4 - 658: 0b23a041 add w1, w2, w3, sxth - 65c: 0b23a441 add w1, w2, w3, sxth #1 - 660: 0b23a841 add w1, w2, w3, sxth #2 - 664: 0b23ac41 add w1, w2, w3, sxth #3 - 668: 0b23b041 add w1, w2, w3, sxth #4 - 66c: cb030041 sub x1, x2, x3 - 670: cb030441 sub x1, x2, x3, lsl #1 - 674: cb030c41 sub x1, x2, x3, lsl #3 - 678: cb031c41 sub x1, x2, x3, lsl #7 - 67c: cb033c41 sub x1, x2, x3, lsl #15 - 680: cb037c41 sub x1, x2, x3, lsl #31 - 684: cb03fc41 sub x1, x2, x3, lsl #63 - 688: cb430041 sub x1, x2, x3, lsr #0 - 68c: cb430441 sub x1, x2, x3, lsr #1 - 690: cb430c41 sub x1, x2, x3, lsr #3 - 694: cb431c41 sub x1, x2, x3, lsr #7 - 698: cb433c41 sub x1, x2, x3, lsr #15 - 69c: cb437c41 sub x1, x2, x3, lsr #31 - 6a0: cb43fc41 sub x1, x2, x3, lsr #63 - 6a4: cb830041 sub x1, x2, x3, asr #0 - 6a8: cb830441 sub x1, x2, x3, asr #1 - 6ac: cb830c41 sub x1, x2, x3, asr #3 - 6b0: cb831c41 sub x1, x2, x3, asr #7 - 6b4: cb833c41 sub x1, x2, x3, asr #15 - 6b8: cb837c41 sub x1, x2, x3, asr #31 - 6bc: cb83fc41 sub x1, x2, x3, asr #63 - 6c0: cb230041 sub x1, x2, w3, uxtb - 6c4: cb230441 sub x1, x2, w3, uxtb #1 - 6c8: cb230841 sub x1, x2, w3, uxtb #2 - 6cc: cb230c41 sub x1, x2, w3, uxtb #3 - 6d0: cb231041 sub x1, x2, w3, uxtb #4 - 6d4: cb232041 sub x1, x2, w3, uxth - 6d8: cb232441 sub x1, x2, w3, uxth #1 - 6dc: cb232841 sub x1, x2, w3, uxth #2 - 6e0: cb232c41 sub x1, x2, w3, uxth #3 - 6e4: cb233041 sub x1, x2, w3, uxth #4 - 6e8: cb234041 sub x1, x2, w3, uxtw - 6ec: cb234441 sub x1, x2, w3, uxtw #1 - 6f0: cb234841 sub x1, x2, w3, uxtw #2 - 6f4: cb234c41 sub x1, x2, w3, uxtw #3 - 6f8: cb235041 sub x1, x2, w3, uxtw #4 - 6fc: cb236041 sub x1, x2, x3, uxtx - 700: cb236441 sub x1, x2, x3, uxtx #1 - 704: cb236841 sub x1, x2, x3, uxtx #2 - 708: cb236c41 sub x1, x2, x3, uxtx #3 - 70c: cb237041 sub x1, x2, x3, uxtx #4 - 710: cb238041 sub x1, x2, w3, sxtb - 714: cb238441 sub x1, x2, w3, sxtb #1 - 718: cb238841 sub x1, x2, w3, sxtb #2 - 71c: cb238c41 sub x1, x2, w3, sxtb #3 - 720: cb239041 sub x1, x2, w3, sxtb #4 - 724: cb23a041 sub x1, x2, w3, sxth - 728: cb23a441 sub x1, x2, w3, sxth #1 - 72c: cb23a841 sub x1, x2, w3, sxth #2 - 730: cb23ac41 sub x1, x2, w3, sxth #3 - 734: cb23b041 sub x1, x2, w3, sxth #4 - 738: cb23c041 sub x1, x2, w3, sxtw - 73c: cb23c441 sub x1, x2, w3, sxtw #1 - 740: cb23c841 sub x1, x2, w3, sxtw #2 - 744: cb23cc41 sub x1, x2, w3, sxtw #3 - 748: cb23d041 sub x1, x2, w3, sxtw #4 - 74c: cb23e041 sub x1, x2, x3, sxtx - 750: cb23e441 sub x1, x2, x3, sxtx #1 - 754: cb23e841 sub x1, x2, x3, sxtx #2 - 758: cb23ec41 sub x1, x2, x3, sxtx #3 - 75c: cb23f041 sub x1, x2, x3, sxtx #4 - 760: 4b030041 sub w1, w2, w3 - 764: 4b030441 sub w1, w2, w3, lsl #1 - 768: 4b030c41 sub w1, w2, w3, lsl #3 - 76c: 4b031c41 sub w1, w2, w3, lsl #7 - 770: 4b033c41 sub w1, w2, w3, lsl #15 - 774: 4b037c41 sub w1, w2, w3, lsl #31 - 778: 4b430041 sub w1, w2, w3, lsr #0 - 77c: 4b430441 sub w1, w2, w3, lsr #1 - 780: 4b430c41 sub w1, w2, w3, lsr #3 - 784: 4b431c41 sub w1, w2, w3, lsr #7 - 788: 4b433c41 sub w1, w2, w3, lsr #15 - 78c: 4b437c41 sub w1, w2, w3, lsr #31 - 790: 4b830041 sub w1, w2, w3, asr #0 - 794: 4b830441 sub w1, w2, w3, asr #1 - 798: 4b830c41 sub w1, w2, w3, asr #3 - 79c: 4b831c41 sub w1, w2, w3, asr #7 - 7a0: 4b833c41 sub w1, w2, w3, asr #15 - 7a4: 4b837c41 sub w1, w2, w3, asr #31 - 7a8: 4b230041 sub w1, w2, w3, uxtb - 7ac: 4b230441 sub w1, w2, w3, uxtb #1 - 7b0: 4b230841 sub w1, w2, w3, uxtb #2 - 7b4: 4b230c41 sub w1, w2, w3, uxtb #3 - 7b8: 4b231041 sub w1, w2, w3, uxtb #4 - 7bc: 4b232041 sub w1, w2, w3, uxth - 7c0: 4b232441 sub w1, w2, w3, uxth #1 - 7c4: 4b232841 sub w1, w2, w3, uxth #2 - 7c8: 4b232c41 sub w1, w2, w3, uxth #3 - 7cc: 4b233041 sub w1, w2, w3, uxth #4 - 7d0: 4b238041 sub w1, w2, w3, sxtb - 7d4: 4b238441 sub w1, w2, w3, sxtb #1 - 7d8: 4b238841 sub w1, w2, w3, sxtb #2 - 7dc: 4b238c41 sub w1, w2, w3, sxtb #3 - 7e0: 4b239041 sub w1, w2, w3, sxtb #4 - 7e4: 4b23a041 sub w1, w2, w3, sxth - 7e8: 4b23a441 sub w1, w2, w3, sxth #1 - 7ec: 4b23a841 sub w1, w2, w3, sxth #2 - 7f0: 4b23ac41 sub w1, w2, w3, sxth #3 - 7f4: 4b23b041 sub w1, w2, w3, sxth #4 - 7f8: cb0303e2 neg x2, x3 - 7fc: cb0307e2 neg x2, x3, lsl #1 - 800: cb030fe2 neg x2, x3, lsl #3 - 804: cb031fe2 neg x2, x3, lsl #7 - 808: cb033fe2 neg x2, x3, lsl #15 - 80c: cb037fe2 neg x2, x3, lsl #31 - 810: cb03ffe2 neg x2, x3, lsl #63 - 814: cb4303e2 neg x2, x3, lsr #0 - 818: cb4307e2 neg x2, x3, lsr #1 - 81c: cb430fe2 neg x2, x3, lsr #3 - 820: cb431fe2 neg x2, x3, lsr #7 - 824: cb433fe2 neg x2, x3, lsr #15 - 828: cb437fe2 neg x2, x3, lsr #31 - 82c: cb43ffe2 neg x2, x3, lsr #63 - 830: cb8303e2 neg x2, x3, asr #0 - 834: cb8307e2 neg x2, x3, asr #1 - 838: cb830fe2 neg x2, x3, asr #3 - 83c: cb831fe2 neg x2, x3, asr #7 - 840: cb833fe2 neg x2, x3, asr #15 - 844: cb837fe2 neg x2, x3, asr #31 - 848: cb83ffe2 neg x2, x3, asr #63 - 84c: 4b0303e2 neg w2, w3 - 850: 4b0307e2 neg w2, w3, lsl #1 - 854: 4b030fe2 neg w2, w3, lsl #3 - 858: 4b031fe2 neg w2, w3, lsl #7 - 85c: 4b033fe2 neg w2, w3, lsl #15 - 860: 4b037fe2 neg w2, w3, lsl #31 - 864: 4b4303e2 neg w2, w3, lsr #0 - 868: 4b4307e2 neg w2, w3, lsr #1 - 86c: 4b430fe2 neg w2, w3, lsr #3 - 870: 4b431fe2 neg w2, w3, lsr #7 - 874: 4b433fe2 neg w2, w3, lsr #15 - 878: 4b437fe2 neg w2, w3, lsr #31 - 87c: 4b8303e2 neg w2, w3, asr #0 - 880: 4b8307e2 neg w2, w3, asr #1 - 884: 4b830fe2 neg w2, w3, asr #3 - 888: 4b831fe2 neg w2, w3, asr #7 - 88c: 4b833fe2 neg w2, w3, asr #15 - 890: 4b837fe2 neg w2, w3, asr #31 - 894: eb03005f cmp x2, x3 - 898: eb03045f cmp x2, x3, lsl #1 - 89c: eb030c5f cmp x2, x3, lsl #3 - 8a0: eb031c5f cmp x2, x3, lsl #7 - 8a4: eb033c5f cmp x2, x3, lsl #15 - 8a8: eb037c5f cmp x2, x3, lsl #31 - 8ac: eb03fc5f cmp x2, x3, lsl #63 - 8b0: eb43005f cmp x2, x3, lsr #0 - 8b4: eb43045f cmp x2, x3, lsr #1 - 8b8: eb430c5f cmp x2, x3, lsr #3 - 8bc: eb431c5f cmp x2, x3, lsr #7 - 8c0: eb433c5f cmp x2, x3, lsr #15 - 8c4: eb437c5f cmp x2, x3, lsr #31 - 8c8: eb43fc5f cmp x2, x3, lsr #63 - 8cc: eb83005f cmp x2, x3, asr #0 - 8d0: eb83045f cmp x2, x3, asr #1 - 8d4: eb830c5f cmp x2, x3, asr #3 - 8d8: eb831c5f cmp x2, x3, asr #7 - 8dc: eb833c5f cmp x2, x3, asr #15 - 8e0: eb837c5f cmp x2, x3, asr #31 - 8e4: eb83fc5f cmp x2, x3, asr #63 - 8e8: eb23005f cmp x2, w3, uxtb - 8ec: eb23045f cmp x2, w3, uxtb #1 - 8f0: eb23085f cmp x2, w3, uxtb #2 - 8f4: eb230c5f cmp x2, w3, uxtb #3 - 8f8: eb23105f cmp x2, w3, uxtb #4 - 8fc: eb23205f cmp x2, w3, uxth - 900: eb23245f cmp x2, w3, uxth #1 - 904: eb23285f cmp x2, w3, uxth #2 - 908: eb232c5f cmp x2, w3, uxth #3 - 90c: eb23305f cmp x2, w3, uxth #4 - 910: eb23405f cmp x2, w3, uxtw - 914: eb23445f cmp x2, w3, uxtw #1 - 918: eb23485f cmp x2, w3, uxtw #2 - 91c: eb234c5f cmp x2, w3, uxtw #3 - 920: eb23505f cmp x2, w3, uxtw #4 - 924: eb23805f cmp x2, w3, sxtb - 928: eb23845f cmp x2, w3, sxtb #1 - 92c: eb23885f cmp x2, w3, sxtb #2 - 930: eb238c5f cmp x2, w3, sxtb #3 - 934: eb23905f cmp x2, w3, sxtb #4 - 938: eb23a05f cmp x2, w3, sxth - 93c: eb23a45f cmp x2, w3, sxth #1 - 940: eb23a85f cmp x2, w3, sxth #2 - 944: eb23ac5f cmp x2, w3, sxth #3 - 948: eb23b05f cmp x2, w3, sxth #4 - 94c: eb23c05f cmp x2, w3, sxtw - 950: eb23c45f cmp x2, w3, sxtw #1 - 954: eb23c85f cmp x2, w3, sxtw #2 - 958: eb23cc5f cmp x2, w3, sxtw #3 - 95c: eb23d05f cmp x2, w3, sxtw #4 - 960: 6b03005f cmp w2, w3 - 964: 6b03045f cmp w2, w3, lsl #1 - 968: 6b030c5f cmp w2, w3, lsl #3 - 96c: 6b031c5f cmp w2, w3, lsl #7 - 970: 6b033c5f cmp w2, w3, lsl #15 - 974: 6b037c5f cmp w2, w3, lsl #31 - 978: 6b43005f cmp w2, w3, lsr #0 - 97c: 6b43045f cmp w2, w3, lsr #1 - 980: 6b430c5f cmp w2, w3, lsr #3 - 984: 6b431c5f cmp w2, w3, lsr #7 - 988: 6b433c5f cmp w2, w3, lsr #15 - 98c: 6b437c5f cmp w2, w3, lsr #31 - 990: 6b83005f cmp w2, w3, asr #0 - 994: 6b83045f cmp w2, w3, asr #1 - 998: 6b830c5f cmp w2, w3, asr #3 - 99c: 6b831c5f cmp w2, w3, asr #7 - 9a0: 6b833c5f cmp w2, w3, asr #15 - 9a4: 6b837c5f cmp w2, w3, asr #31 - 9a8: 6b23005f cmp w2, w3, uxtb - 9ac: 6b23045f cmp w2, w3, uxtb #1 - 9b0: 6b23085f cmp w2, w3, uxtb #2 - 9b4: 6b230c5f cmp w2, w3, uxtb #3 - 9b8: 6b23105f cmp w2, w3, uxtb #4 - 9bc: 6b23205f cmp w2, w3, uxth - 9c0: 6b23245f cmp w2, w3, uxth #1 - 9c4: 6b23285f cmp w2, w3, uxth #2 - 9c8: 6b232c5f cmp w2, w3, uxth #3 - 9cc: 6b23305f cmp w2, w3, uxth #4 - 9d0: 6b23805f cmp w2, w3, sxtb - 9d4: 6b23845f cmp w2, w3, sxtb #1 - 9d8: 6b23885f cmp w2, w3, sxtb #2 - 9dc: 6b238c5f cmp w2, w3, sxtb #3 - 9e0: 6b23905f cmp w2, w3, sxtb #4 - 9e4: 6b23a05f cmp w2, w3, sxth - 9e8: 6b23a45f cmp w2, w3, sxth #1 - 9ec: 6b23a85f cmp w2, w3, sxth #2 - 9f0: 6b23ac5f cmp w2, w3, sxth #3 - 9f4: 6b23b05f cmp w2, w3, sxth #4 - 9f8: ab03005f cmn x2, x3 - 9fc: ab03045f cmn x2, x3, lsl #1 - a00: ab030c5f cmn x2, x3, lsl #3 - a04: ab031c5f cmn x2, x3, lsl #7 - a08: ab033c5f cmn x2, x3, lsl #15 - a0c: ab037c5f cmn x2, x3, lsl #31 - a10: ab03fc5f cmn x2, x3, lsl #63 - a14: ab43005f cmn x2, x3, lsr #0 - a18: ab43045f cmn x2, x3, lsr #1 - a1c: ab430c5f cmn x2, x3, lsr #3 - a20: ab431c5f cmn x2, x3, lsr #7 - a24: ab433c5f cmn x2, x3, lsr #15 - a28: ab437c5f cmn x2, x3, lsr #31 - a2c: ab43fc5f cmn x2, x3, lsr #63 - a30: ab83005f cmn x2, x3, asr #0 - a34: ab83045f cmn x2, x3, asr #1 - a38: ab830c5f cmn x2, x3, asr #3 - a3c: ab831c5f cmn x2, x3, asr #7 - a40: ab833c5f cmn x2, x3, asr #15 - a44: ab837c5f cmn x2, x3, asr #31 - a48: ab83fc5f cmn x2, x3, asr #63 - a4c: ab23005f cmn x2, w3, uxtb - a50: ab23045f cmn x2, w3, uxtb #1 - a54: ab23085f cmn x2, w3, uxtb #2 - a58: ab230c5f cmn x2, w3, uxtb #3 - a5c: ab23105f cmn x2, w3, uxtb #4 - a60: ab23205f cmn x2, w3, uxth - a64: ab23245f cmn x2, w3, uxth #1 - a68: ab23285f cmn x2, w3, uxth #2 - a6c: ab232c5f cmn x2, w3, uxth #3 - a70: ab23305f cmn x2, w3, uxth #4 - a74: ab23405f cmn x2, w3, uxtw - a78: ab23445f cmn x2, w3, uxtw #1 - a7c: ab23485f cmn x2, w3, uxtw #2 - a80: ab234c5f cmn x2, w3, uxtw #3 - a84: ab23505f cmn x2, w3, uxtw #4 - a88: ab23805f cmn x2, w3, sxtb - a8c: ab23845f cmn x2, w3, sxtb #1 - a90: ab23885f cmn x2, w3, sxtb #2 - a94: ab238c5f cmn x2, w3, sxtb #3 - a98: ab23905f cmn x2, w3, sxtb #4 - a9c: ab23a05f cmn x2, w3, sxth - aa0: ab23a45f cmn x2, w3, sxth #1 - aa4: ab23a85f cmn x2, w3, sxth #2 - aa8: ab23ac5f cmn x2, w3, sxth #3 - aac: ab23b05f cmn x2, w3, sxth #4 - ab0: ab23c05f cmn x2, w3, sxtw - ab4: ab23c45f cmn x2, w3, sxtw #1 - ab8: ab23c85f cmn x2, w3, sxtw #2 - abc: ab23cc5f cmn x2, w3, sxtw #3 - ac0: ab23d05f cmn x2, w3, sxtw #4 - ac4: 2b03005f cmn w2, w3 - ac8: 2b03045f cmn w2, w3, lsl #1 - acc: 2b030c5f cmn w2, w3, lsl #3 - ad0: 2b031c5f cmn w2, w3, lsl #7 - ad4: 2b033c5f cmn w2, w3, lsl #15 - ad8: 2b037c5f cmn w2, w3, lsl #31 - adc: 2b43005f cmn w2, w3, lsr #0 - ae0: 2b43045f cmn w2, w3, lsr #1 - ae4: 2b430c5f cmn w2, w3, lsr #3 - ae8: 2b431c5f cmn w2, w3, lsr #7 - aec: 2b433c5f cmn w2, w3, lsr #15 - af0: 2b437c5f cmn w2, w3, lsr #31 - af4: 2b83005f cmn w2, w3, asr #0 - af8: 2b83045f cmn w2, w3, asr #1 - afc: 2b830c5f cmn w2, w3, asr #3 - b00: 2b831c5f cmn w2, w3, asr #7 - b04: 2b833c5f cmn w2, w3, asr #15 - b08: 2b837c5f cmn w2, w3, asr #31 - b0c: 2b23005f cmn w2, w3, uxtb - b10: 2b23045f cmn w2, w3, uxtb #1 - b14: 2b23085f cmn w2, w3, uxtb #2 - b18: 2b230c5f cmn w2, w3, uxtb #3 - b1c: 2b23105f cmn w2, w3, uxtb #4 - b20: 2b23205f cmn w2, w3, uxth - b24: 2b23245f cmn w2, w3, uxth #1 - b28: 2b23285f cmn w2, w3, uxth #2 - b2c: 2b232c5f cmn w2, w3, uxth #3 - b30: 2b23305f cmn w2, w3, uxth #4 - b34: 2b23805f cmn w2, w3, sxtb - b38: 2b23845f cmn w2, w3, sxtb #1 - b3c: 2b23885f cmn w2, w3, sxtb #2 - b40: 2b238c5f cmn w2, w3, sxtb #3 - b44: 2b23905f cmn w2, w3, sxtb #4 - b48: 2b23a05f cmn w2, w3, sxth - b4c: 2b23a45f cmn w2, w3, sxth #1 - b50: 2b23a85f cmn w2, w3, sxth #2 - b54: 2b23ac5f cmn w2, w3, sxth #3 - b58: 2b23b05f cmn w2, w3, sxth #4 + *[0-9a-f]+: aa030041 orr x1, x2, x3 + *[0-9a-f]+: aa030441 orr x1, x2, x3, lsl #1 + *[0-9a-f]+: aa030c41 orr x1, x2, x3, lsl #3 + *[0-9a-f]+: aa031c41 orr x1, x2, x3, lsl #7 + *[0-9a-f]+: aa033c41 orr x1, x2, x3, lsl #15 + *[0-9a-f]+: aa037c41 orr x1, x2, x3, lsl #31 + *[0-9a-f]+: aa03fc41 orr x1, x2, x3, lsl #63 + *[0-9a-f]+: aa430041 orr x1, x2, x3, lsr #0 + *[0-9a-f]+: aa430441 orr x1, x2, x3, lsr #1 + *[0-9a-f]+: aa430c41 orr x1, x2, x3, lsr #3 + *[0-9a-f]+: aa431c41 orr x1, x2, x3, lsr #7 + *[0-9a-f]+: aa433c41 orr x1, x2, x3, lsr #15 + *[0-9a-f]+: aa437c41 orr x1, x2, x3, lsr #31 + *[0-9a-f]+: aa43fc41 orr x1, x2, x3, lsr #63 + *[0-9a-f]+: aa830041 orr x1, x2, x3, asr #0 + *[0-9a-f]+: aa830441 orr x1, x2, x3, asr #1 + *[0-9a-f]+: aa830c41 orr x1, x2, x3, asr #3 + *[0-9a-f]+: aa831c41 orr x1, x2, x3, asr #7 + *[0-9a-f]+: aa833c41 orr x1, x2, x3, asr #15 + *[0-9a-f]+: aa837c41 orr x1, x2, x3, asr #31 + *[0-9a-f]+: aa83fc41 orr x1, x2, x3, asr #63 + *[0-9a-f]+: aac30041 orr x1, x2, x3, ror #0 + *[0-9a-f]+: aac30441 orr x1, x2, x3, ror #1 + *[0-9a-f]+: aac30c41 orr x1, x2, x3, ror #3 + *[0-9a-f]+: aac31c41 orr x1, x2, x3, ror #7 + *[0-9a-f]+: aac33c41 orr x1, x2, x3, ror #15 + *[0-9a-f]+: aac37c41 orr x1, x2, x3, ror #31 + *[0-9a-f]+: aac3fc41 orr x1, x2, x3, ror #63 + *[0-9a-f]+: 2a030041 orr w1, w2, w3 + *[0-9a-f]+: 2a030441 orr w1, w2, w3, lsl #1 + *[0-9a-f]+: 2a030c41 orr w1, w2, w3, lsl #3 + *[0-9a-f]+: 2a031c41 orr w1, w2, w3, lsl #7 + *[0-9a-f]+: 2a033c41 orr w1, w2, w3, lsl #15 + *[0-9a-f]+: 2a037c41 orr w1, w2, w3, lsl #31 + *[0-9a-f]+: 2a430041 orr w1, w2, w3, lsr #0 + *[0-9a-f]+: 2a430441 orr w1, w2, w3, lsr #1 + *[0-9a-f]+: 2a430c41 orr w1, w2, w3, lsr #3 + *[0-9a-f]+: 2a431c41 orr w1, w2, w3, lsr #7 + *[0-9a-f]+: 2a433c41 orr w1, w2, w3, lsr #15 + *[0-9a-f]+: 2a437c41 orr w1, w2, w3, lsr #31 + *[0-9a-f]+: 2a830041 orr w1, w2, w3, asr #0 + *[0-9a-f]+: 2a830441 orr w1, w2, w3, asr #1 + *[0-9a-f]+: 2a830c41 orr w1, w2, w3, asr #3 + *[0-9a-f]+: 2a831c41 orr w1, w2, w3, asr #7 + *[0-9a-f]+: 2a833c41 orr w1, w2, w3, asr #15 + *[0-9a-f]+: 2a837c41 orr w1, w2, w3, asr #31 + *[0-9a-f]+: 2ac30041 orr w1, w2, w3, ror #0 + *[0-9a-f]+: 2ac30441 orr w1, w2, w3, ror #1 + *[0-9a-f]+: 2ac30c41 orr w1, w2, w3, ror #3 + *[0-9a-f]+: 2ac31c41 orr w1, w2, w3, ror #7 + *[0-9a-f]+: 2ac33c41 orr w1, w2, w3, ror #15 + *[0-9a-f]+: 2ac37c41 orr w1, w2, w3, ror #31 + *[0-9a-f]+: 8a030041 and x1, x2, x3 + *[0-9a-f]+: 8a030441 and x1, x2, x3, lsl #1 + *[0-9a-f]+: 8a030c41 and x1, x2, x3, lsl #3 + *[0-9a-f]+: 8a031c41 and x1, x2, x3, lsl #7 + *[0-9a-f]+: 8a033c41 and x1, x2, x3, lsl #15 + *[0-9a-f]+: 8a037c41 and x1, x2, x3, lsl #31 + *[0-9a-f]+: 8a03fc41 and x1, x2, x3, lsl #63 + *[0-9a-f]+: 8a430041 and x1, x2, x3, lsr #0 + *[0-9a-f]+: 8a430441 and x1, x2, x3, lsr #1 + *[0-9a-f]+: 8a430c41 and x1, x2, x3, lsr #3 + *[0-9a-f]+: 8a431c41 and x1, x2, x3, lsr #7 + *[0-9a-f]+: 8a433c41 and x1, x2, x3, lsr #15 + *[0-9a-f]+: 8a437c41 and x1, x2, x3, lsr #31 + *[0-9a-f]+: 8a43fc41 and x1, x2, x3, lsr #63 + *[0-9a-f]+: 8a830041 and x1, x2, x3, asr #0 + *[0-9a-f]+: 8a830441 and x1, x2, x3, asr #1 + *[0-9a-f]+: 8a830c41 and x1, x2, x3, asr #3 + *[0-9a-f]+: 8a831c41 and x1, x2, x3, asr #7 + *[0-9a-f]+: 8a833c41 and x1, x2, x3, asr #15 + *[0-9a-f]+: 8a837c41 and x1, x2, x3, asr #31 + *[0-9a-f]+: 8a83fc41 and x1, x2, x3, asr #63 + *[0-9a-f]+: 8ac30041 and x1, x2, x3, ror #0 + *[0-9a-f]+: 8ac30441 and x1, x2, x3, ror #1 + *[0-9a-f]+: 8ac30c41 and x1, x2, x3, ror #3 + *[0-9a-f]+: 8ac31c41 and x1, x2, x3, ror #7 + *[0-9a-f]+: 8ac33c41 and x1, x2, x3, ror #15 + *[0-9a-f]+: 8ac37c41 and x1, x2, x3, ror #31 + *[0-9a-f]+: 8ac3fc41 and x1, x2, x3, ror #63 + *[0-9a-f]+: 0a030041 and w1, w2, w3 + *[0-9a-f]+: 0a030441 and w1, w2, w3, lsl #1 + *[0-9a-f]+: 0a030c41 and w1, w2, w3, lsl #3 + *[0-9a-f]+: 0a031c41 and w1, w2, w3, lsl #7 + *[0-9a-f]+: 0a033c41 and w1, w2, w3, lsl #15 + *[0-9a-f]+: 0a037c41 and w1, w2, w3, lsl #31 + *[0-9a-f]+: 0a430041 and w1, w2, w3, lsr #0 + *[0-9a-f]+: 0a430441 and w1, w2, w3, lsr #1 + *[0-9a-f]+: 0a430c41 and w1, w2, w3, lsr #3 + *[0-9a-f]+: 0a431c41 and w1, w2, w3, lsr #7 + *[0-9a-f]+: 0a433c41 and w1, w2, w3, lsr #15 + *[0-9a-f]+: 0a437c41 and w1, w2, w3, lsr #31 + *[0-9a-f]+: 0a830041 and w1, w2, w3, asr #0 + *[0-9a-f]+: 0a830441 and w1, w2, w3, asr #1 + *[0-9a-f]+: 0a830c41 and w1, w2, w3, asr #3 + *[0-9a-f]+: 0a831c41 and w1, w2, w3, asr #7 + *[0-9a-f]+: 0a833c41 and w1, w2, w3, asr #15 + *[0-9a-f]+: 0a837c41 and w1, w2, w3, asr #31 + *[0-9a-f]+: 0ac30041 and w1, w2, w3, ror #0 + *[0-9a-f]+: 0ac30441 and w1, w2, w3, ror #1 + *[0-9a-f]+: 0ac30c41 and w1, w2, w3, ror #3 + *[0-9a-f]+: 0ac31c41 and w1, w2, w3, ror #7 + *[0-9a-f]+: 0ac33c41 and w1, w2, w3, ror #15 + *[0-9a-f]+: 0ac37c41 and w1, w2, w3, ror #31 + *[0-9a-f]+: ca030041 eor x1, x2, x3 + *[0-9a-f]+: ca030441 eor x1, x2, x3, lsl #1 + *[0-9a-f]+: ca030c41 eor x1, x2, x3, lsl #3 + *[0-9a-f]+: ca031c41 eor x1, x2, x3, lsl #7 + *[0-9a-f]+: ca033c41 eor x1, x2, x3, lsl #15 + *[0-9a-f]+: ca037c41 eor x1, x2, x3, lsl #31 + *[0-9a-f]+: ca03fc41 eor x1, x2, x3, lsl #63 + *[0-9a-f]+: ca430041 eor x1, x2, x3, lsr #0 + *[0-9a-f]+: ca430441 eor x1, x2, x3, lsr #1 + *[0-9a-f]+: ca430c41 eor x1, x2, x3, lsr #3 + *[0-9a-f]+: ca431c41 eor x1, x2, x3, lsr #7 + *[0-9a-f]+: ca433c41 eor x1, x2, x3, lsr #15 + *[0-9a-f]+: ca437c41 eor x1, x2, x3, lsr #31 + *[0-9a-f]+: ca43fc41 eor x1, x2, x3, lsr #63 + *[0-9a-f]+: ca830041 eor x1, x2, x3, asr #0 + *[0-9a-f]+: ca830441 eor x1, x2, x3, asr #1 + *[0-9a-f]+: ca830c41 eor x1, x2, x3, asr #3 + *[0-9a-f]+: ca831c41 eor x1, x2, x3, asr #7 + *[0-9a-f]+: ca833c41 eor x1, x2, x3, asr #15 + *[0-9a-f]+: ca837c41 eor x1, x2, x3, asr #31 + *[0-9a-f]+: ca83fc41 eor x1, x2, x3, asr #63 + *[0-9a-f]+: cac30041 eor x1, x2, x3, ror #0 + *[0-9a-f]+: cac30441 eor x1, x2, x3, ror #1 + *[0-9a-f]+: cac30c41 eor x1, x2, x3, ror #3 + *[0-9a-f]+: cac31c41 eor x1, x2, x3, ror #7 + *[0-9a-f]+: cac33c41 eor x1, x2, x3, ror #15 + *[0-9a-f]+: cac37c41 eor x1, x2, x3, ror #31 + *[0-9a-f]+: cac3fc41 eor x1, x2, x3, ror #63 + *[0-9a-f]+: 4a030041 eor w1, w2, w3 + *[0-9a-f]+: 4a030441 eor w1, w2, w3, lsl #1 + *[0-9a-f]+: 4a030c41 eor w1, w2, w3, lsl #3 + *[0-9a-f]+: 4a031c41 eor w1, w2, w3, lsl #7 + *[0-9a-f]+: 4a033c41 eor w1, w2, w3, lsl #15 + *[0-9a-f]+: 4a037c41 eor w1, w2, w3, lsl #31 + *[0-9a-f]+: 4a430041 eor w1, w2, w3, lsr #0 + *[0-9a-f]+: 4a430441 eor w1, w2, w3, lsr #1 + *[0-9a-f]+: 4a430c41 eor w1, w2, w3, lsr #3 + *[0-9a-f]+: 4a431c41 eor w1, w2, w3, lsr #7 + *[0-9a-f]+: 4a433c41 eor w1, w2, w3, lsr #15 + *[0-9a-f]+: 4a437c41 eor w1, w2, w3, lsr #31 + *[0-9a-f]+: 4a830041 eor w1, w2, w3, asr #0 + *[0-9a-f]+: 4a830441 eor w1, w2, w3, asr #1 + *[0-9a-f]+: 4a830c41 eor w1, w2, w3, asr #3 + *[0-9a-f]+: 4a831c41 eor w1, w2, w3, asr #7 + *[0-9a-f]+: 4a833c41 eor w1, w2, w3, asr #15 + *[0-9a-f]+: 4a837c41 eor w1, w2, w3, asr #31 + *[0-9a-f]+: 4ac30041 eor w1, w2, w3, ror #0 + *[0-9a-f]+: 4ac30441 eor w1, w2, w3, ror #1 + *[0-9a-f]+: 4ac30c41 eor w1, w2, w3, ror #3 + *[0-9a-f]+: 4ac31c41 eor w1, w2, w3, ror #7 + *[0-9a-f]+: 4ac33c41 eor w1, w2, w3, ror #15 + *[0-9a-f]+: 4ac37c41 eor w1, w2, w3, ror #31 + *[0-9a-f]+: 8a230041 bic x1, x2, x3 + *[0-9a-f]+: 8a230441 bic x1, x2, x3, lsl #1 + *[0-9a-f]+: 8a230c41 bic x1, x2, x3, lsl #3 + *[0-9a-f]+: 8a231c41 bic x1, x2, x3, lsl #7 + *[0-9a-f]+: 8a233c41 bic x1, x2, x3, lsl #15 + *[0-9a-f]+: 8a237c41 bic x1, x2, x3, lsl #31 + *[0-9a-f]+: 8a23fc41 bic x1, x2, x3, lsl #63 + *[0-9a-f]+: 8a630041 bic x1, x2, x3, lsr #0 + *[0-9a-f]+: 8a630441 bic x1, x2, x3, lsr #1 + *[0-9a-f]+: 8a630c41 bic x1, x2, x3, lsr #3 + *[0-9a-f]+: 8a631c41 bic x1, x2, x3, lsr #7 + *[0-9a-f]+: 8a633c41 bic x1, x2, x3, lsr #15 + *[0-9a-f]+: 8a637c41 bic x1, x2, x3, lsr #31 + *[0-9a-f]+: 8a63fc41 bic x1, x2, x3, lsr #63 + *[0-9a-f]+: 8aa30041 bic x1, x2, x3, asr #0 + *[0-9a-f]+: 8aa30441 bic x1, x2, x3, asr #1 + *[0-9a-f]+: 8aa30c41 bic x1, x2, x3, asr #3 + *[0-9a-f]+: 8aa31c41 bic x1, x2, x3, asr #7 + *[0-9a-f]+: 8aa33c41 bic x1, x2, x3, asr #15 + *[0-9a-f]+: 8aa37c41 bic x1, x2, x3, asr #31 + *[0-9a-f]+: 8aa3fc41 bic x1, x2, x3, asr #63 + *[0-9a-f]+: 8ae30041 bic x1, x2, x3, ror #0 + *[0-9a-f]+: 8ae30441 bic x1, x2, x3, ror #1 + *[0-9a-f]+: 8ae30c41 bic x1, x2, x3, ror #3 + *[0-9a-f]+: 8ae31c41 bic x1, x2, x3, ror #7 + *[0-9a-f]+: 8ae33c41 bic x1, x2, x3, ror #15 + *[0-9a-f]+: 8ae37c41 bic x1, x2, x3, ror #31 + *[0-9a-f]+: 8ae3fc41 bic x1, x2, x3, ror #63 + *[0-9a-f]+: 0a230041 bic w1, w2, w3 + *[0-9a-f]+: 0a230441 bic w1, w2, w3, lsl #1 + *[0-9a-f]+: 0a230c41 bic w1, w2, w3, lsl #3 + *[0-9a-f]+: 0a231c41 bic w1, w2, w3, lsl #7 + *[0-9a-f]+: 0a233c41 bic w1, w2, w3, lsl #15 + *[0-9a-f]+: 0a237c41 bic w1, w2, w3, lsl #31 + *[0-9a-f]+: 0a630041 bic w1, w2, w3, lsr #0 + *[0-9a-f]+: 0a630441 bic w1, w2, w3, lsr #1 + *[0-9a-f]+: 0a630c41 bic w1, w2, w3, lsr #3 + *[0-9a-f]+: 0a631c41 bic w1, w2, w3, lsr #7 + *[0-9a-f]+: 0a633c41 bic w1, w2, w3, lsr #15 + *[0-9a-f]+: 0a637c41 bic w1, w2, w3, lsr #31 + *[0-9a-f]+: 0aa30041 bic w1, w2, w3, asr #0 + *[0-9a-f]+: 0aa30441 bic w1, w2, w3, asr #1 + *[0-9a-f]+: 0aa30c41 bic w1, w2, w3, asr #3 + *[0-9a-f]+: 0aa31c41 bic w1, w2, w3, asr #7 + *[0-9a-f]+: 0aa33c41 bic w1, w2, w3, asr #15 + *[0-9a-f]+: 0aa37c41 bic w1, w2, w3, asr #31 + *[0-9a-f]+: 0ae30041 bic w1, w2, w3, ror #0 + *[0-9a-f]+: 0ae30441 bic w1, w2, w3, ror #1 + *[0-9a-f]+: 0ae30c41 bic w1, w2, w3, ror #3 + *[0-9a-f]+: 0ae31c41 bic w1, w2, w3, ror #7 + *[0-9a-f]+: 0ae33c41 bic w1, w2, w3, ror #15 + *[0-9a-f]+: 0ae37c41 bic w1, w2, w3, ror #31 + *[0-9a-f]+: aa230041 orn x1, x2, x3 + *[0-9a-f]+: aa230441 orn x1, x2, x3, lsl #1 + *[0-9a-f]+: aa230c41 orn x1, x2, x3, lsl #3 + *[0-9a-f]+: aa231c41 orn x1, x2, x3, lsl #7 + *[0-9a-f]+: aa233c41 orn x1, x2, x3, lsl #15 + *[0-9a-f]+: aa237c41 orn x1, x2, x3, lsl #31 + *[0-9a-f]+: aa23fc41 orn x1, x2, x3, lsl #63 + *[0-9a-f]+: aa630041 orn x1, x2, x3, lsr #0 + *[0-9a-f]+: aa630441 orn x1, x2, x3, lsr #1 + *[0-9a-f]+: aa630c41 orn x1, x2, x3, lsr #3 + *[0-9a-f]+: aa631c41 orn x1, x2, x3, lsr #7 + *[0-9a-f]+: aa633c41 orn x1, x2, x3, lsr #15 + *[0-9a-f]+: aa637c41 orn x1, x2, x3, lsr #31 + *[0-9a-f]+: aa63fc41 orn x1, x2, x3, lsr #63 + *[0-9a-f]+: aaa30041 orn x1, x2, x3, asr #0 + *[0-9a-f]+: aaa30441 orn x1, x2, x3, asr #1 + *[0-9a-f]+: aaa30c41 orn x1, x2, x3, asr #3 + *[0-9a-f]+: aaa31c41 orn x1, x2, x3, asr #7 + *[0-9a-f]+: aaa33c41 orn x1, x2, x3, asr #15 + *[0-9a-f]+: aaa37c41 orn x1, x2, x3, asr #31 + *[0-9a-f]+: aaa3fc41 orn x1, x2, x3, asr #63 + *[0-9a-f]+: aae30041 orn x1, x2, x3, ror #0 + *[0-9a-f]+: aae30441 orn x1, x2, x3, ror #1 + *[0-9a-f]+: aae30c41 orn x1, x2, x3, ror #3 + *[0-9a-f]+: aae31c41 orn x1, x2, x3, ror #7 + *[0-9a-f]+: aae33c41 orn x1, x2, x3, ror #15 + *[0-9a-f]+: aae37c41 orn x1, x2, x3, ror #31 + *[0-9a-f]+: aae3fc41 orn x1, x2, x3, ror #63 + *[0-9a-f]+: 2a230041 orn w1, w2, w3 + *[0-9a-f]+: 2a230441 orn w1, w2, w3, lsl #1 + *[0-9a-f]+: 2a230c41 orn w1, w2, w3, lsl #3 + *[0-9a-f]+: 2a231c41 orn w1, w2, w3, lsl #7 + *[0-9a-f]+: 2a233c41 orn w1, w2, w3, lsl #15 + *[0-9a-f]+: 2a237c41 orn w1, w2, w3, lsl #31 + *[0-9a-f]+: 2a630041 orn w1, w2, w3, lsr #0 + *[0-9a-f]+: 2a630441 orn w1, w2, w3, lsr #1 + *[0-9a-f]+: 2a630c41 orn w1, w2, w3, lsr #3 + *[0-9a-f]+: 2a631c41 orn w1, w2, w3, lsr #7 + *[0-9a-f]+: 2a633c41 orn w1, w2, w3, lsr #15 + *[0-9a-f]+: 2a637c41 orn w1, w2, w3, lsr #31 + *[0-9a-f]+: 2aa30041 orn w1, w2, w3, asr #0 + *[0-9a-f]+: 2aa30441 orn w1, w2, w3, asr #1 + *[0-9a-f]+: 2aa30c41 orn w1, w2, w3, asr #3 + *[0-9a-f]+: 2aa31c41 orn w1, w2, w3, asr #7 + *[0-9a-f]+: 2aa33c41 orn w1, w2, w3, asr #15 + *[0-9a-f]+: 2aa37c41 orn w1, w2, w3, asr #31 + *[0-9a-f]+: 2ae30041 orn w1, w2, w3, ror #0 + *[0-9a-f]+: 2ae30441 orn w1, w2, w3, ror #1 + *[0-9a-f]+: 2ae30c41 orn w1, w2, w3, ror #3 + *[0-9a-f]+: 2ae31c41 orn w1, w2, w3, ror #7 + *[0-9a-f]+: 2ae33c41 orn w1, w2, w3, ror #15 + *[0-9a-f]+: 2ae37c41 orn w1, w2, w3, ror #31 + *[0-9a-f]+: ca230041 eon x1, x2, x3 + *[0-9a-f]+: ca230441 eon x1, x2, x3, lsl #1 + *[0-9a-f]+: ca230c41 eon x1, x2, x3, lsl #3 + *[0-9a-f]+: ca231c41 eon x1, x2, x3, lsl #7 + *[0-9a-f]+: ca233c41 eon x1, x2, x3, lsl #15 + *[0-9a-f]+: ca237c41 eon x1, x2, x3, lsl #31 + *[0-9a-f]+: ca23fc41 eon x1, x2, x3, lsl #63 + *[0-9a-f]+: ca630041 eon x1, x2, x3, lsr #0 + *[0-9a-f]+: ca630441 eon x1, x2, x3, lsr #1 + *[0-9a-f]+: ca630c41 eon x1, x2, x3, lsr #3 + *[0-9a-f]+: ca631c41 eon x1, x2, x3, lsr #7 + *[0-9a-f]+: ca633c41 eon x1, x2, x3, lsr #15 + *[0-9a-f]+: ca637c41 eon x1, x2, x3, lsr #31 + *[0-9a-f]+: ca63fc41 eon x1, x2, x3, lsr #63 + *[0-9a-f]+: caa30041 eon x1, x2, x3, asr #0 + *[0-9a-f]+: caa30441 eon x1, x2, x3, asr #1 + *[0-9a-f]+: caa30c41 eon x1, x2, x3, asr #3 + *[0-9a-f]+: caa31c41 eon x1, x2, x3, asr #7 + *[0-9a-f]+: caa33c41 eon x1, x2, x3, asr #15 + *[0-9a-f]+: caa37c41 eon x1, x2, x3, asr #31 + *[0-9a-f]+: caa3fc41 eon x1, x2, x3, asr #63 + *[0-9a-f]+: cae30041 eon x1, x2, x3, ror #0 + *[0-9a-f]+: cae30441 eon x1, x2, x3, ror #1 + *[0-9a-f]+: cae30c41 eon x1, x2, x3, ror #3 + *[0-9a-f]+: cae31c41 eon x1, x2, x3, ror #7 + *[0-9a-f]+: cae33c41 eon x1, x2, x3, ror #15 + *[0-9a-f]+: cae37c41 eon x1, x2, x3, ror #31 + *[0-9a-f]+: cae3fc41 eon x1, x2, x3, ror #63 + *[0-9a-f]+: 4a230041 eon w1, w2, w3 + *[0-9a-f]+: 4a230441 eon w1, w2, w3, lsl #1 + *[0-9a-f]+: 4a230c41 eon w1, w2, w3, lsl #3 + *[0-9a-f]+: 4a231c41 eon w1, w2, w3, lsl #7 + *[0-9a-f]+: 4a233c41 eon w1, w2, w3, lsl #15 + *[0-9a-f]+: 4a237c41 eon w1, w2, w3, lsl #31 + *[0-9a-f]+: 4a630041 eon w1, w2, w3, lsr #0 + *[0-9a-f]+: 4a630441 eon w1, w2, w3, lsr #1 + *[0-9a-f]+: 4a630c41 eon w1, w2, w3, lsr #3 + *[0-9a-f]+: 4a631c41 eon w1, w2, w3, lsr #7 + *[0-9a-f]+: 4a633c41 eon w1, w2, w3, lsr #15 + *[0-9a-f]+: 4a637c41 eon w1, w2, w3, lsr #31 + *[0-9a-f]+: 4aa30041 eon w1, w2, w3, asr #0 + *[0-9a-f]+: 4aa30441 eon w1, w2, w3, asr #1 + *[0-9a-f]+: 4aa30c41 eon w1, w2, w3, asr #3 + *[0-9a-f]+: 4aa31c41 eon w1, w2, w3, asr #7 + *[0-9a-f]+: 4aa33c41 eon w1, w2, w3, asr #15 + *[0-9a-f]+: 4aa37c41 eon w1, w2, w3, asr #31 + *[0-9a-f]+: 4ae30041 eon w1, w2, w3, ror #0 + *[0-9a-f]+: 4ae30441 eon w1, w2, w3, ror #1 + *[0-9a-f]+: 4ae30c41 eon w1, w2, w3, ror #3 + *[0-9a-f]+: 4ae31c41 eon w1, w2, w3, ror #7 + *[0-9a-f]+: 4ae33c41 eon w1, w2, w3, ror #15 + *[0-9a-f]+: 4ae37c41 eon w1, w2, w3, ror #31 + *[0-9a-f]+: ea030041 ands x1, x2, x3 + *[0-9a-f]+: ea030441 ands x1, x2, x3, lsl #1 + *[0-9a-f]+: ea030c41 ands x1, x2, x3, lsl #3 + *[0-9a-f]+: ea031c41 ands x1, x2, x3, lsl #7 + *[0-9a-f]+: ea033c41 ands x1, x2, x3, lsl #15 + *[0-9a-f]+: ea037c41 ands x1, x2, x3, lsl #31 + *[0-9a-f]+: ea03fc41 ands x1, x2, x3, lsl #63 + *[0-9a-f]+: ea430041 ands x1, x2, x3, lsr #0 + *[0-9a-f]+: ea430441 ands x1, x2, x3, lsr #1 + *[0-9a-f]+: ea430c41 ands x1, x2, x3, lsr #3 + *[0-9a-f]+: ea431c41 ands x1, x2, x3, lsr #7 + *[0-9a-f]+: ea433c41 ands x1, x2, x3, lsr #15 + *[0-9a-f]+: ea437c41 ands x1, x2, x3, lsr #31 + *[0-9a-f]+: ea43fc41 ands x1, x2, x3, lsr #63 + *[0-9a-f]+: ea830041 ands x1, x2, x3, asr #0 + *[0-9a-f]+: ea830441 ands x1, x2, x3, asr #1 + *[0-9a-f]+: ea830c41 ands x1, x2, x3, asr #3 + *[0-9a-f]+: ea831c41 ands x1, x2, x3, asr #7 + *[0-9a-f]+: ea833c41 ands x1, x2, x3, asr #15 + *[0-9a-f]+: ea837c41 ands x1, x2, x3, asr #31 + *[0-9a-f]+: ea83fc41 ands x1, x2, x3, asr #63 + *[0-9a-f]+: eac30041 ands x1, x2, x3, ror #0 + *[0-9a-f]+: eac30441 ands x1, x2, x3, ror #1 + *[0-9a-f]+: eac30c41 ands x1, x2, x3, ror #3 + *[0-9a-f]+: eac31c41 ands x1, x2, x3, ror #7 + *[0-9a-f]+: eac33c41 ands x1, x2, x3, ror #15 + *[0-9a-f]+: eac37c41 ands x1, x2, x3, ror #31 + *[0-9a-f]+: eac3fc41 ands x1, x2, x3, ror #63 + *[0-9a-f]+: 6a030041 ands w1, w2, w3 + *[0-9a-f]+: 6a030441 ands w1, w2, w3, lsl #1 + *[0-9a-f]+: 6a030c41 ands w1, w2, w3, lsl #3 + *[0-9a-f]+: 6a031c41 ands w1, w2, w3, lsl #7 + *[0-9a-f]+: 6a033c41 ands w1, w2, w3, lsl #15 + *[0-9a-f]+: 6a037c41 ands w1, w2, w3, lsl #31 + *[0-9a-f]+: 6a430041 ands w1, w2, w3, lsr #0 + *[0-9a-f]+: 6a430441 ands w1, w2, w3, lsr #1 + *[0-9a-f]+: 6a430c41 ands w1, w2, w3, lsr #3 + *[0-9a-f]+: 6a431c41 ands w1, w2, w3, lsr #7 + *[0-9a-f]+: 6a433c41 ands w1, w2, w3, lsr #15 + *[0-9a-f]+: 6a437c41 ands w1, w2, w3, lsr #31 + *[0-9a-f]+: 6a830041 ands w1, w2, w3, asr #0 + *[0-9a-f]+: 6a830441 ands w1, w2, w3, asr #1 + *[0-9a-f]+: 6a830c41 ands w1, w2, w3, asr #3 + *[0-9a-f]+: 6a831c41 ands w1, w2, w3, asr #7 + *[0-9a-f]+: 6a833c41 ands w1, w2, w3, asr #15 + *[0-9a-f]+: 6a837c41 ands w1, w2, w3, asr #31 + *[0-9a-f]+: 6ac30041 ands w1, w2, w3, ror #0 + *[0-9a-f]+: 6ac30441 ands w1, w2, w3, ror #1 + *[0-9a-f]+: 6ac30c41 ands w1, w2, w3, ror #3 + *[0-9a-f]+: 6ac31c41 ands w1, w2, w3, ror #7 + *[0-9a-f]+: 6ac33c41 ands w1, w2, w3, ror #15 + *[0-9a-f]+: 6ac37c41 ands w1, w2, w3, ror #31 + *[0-9a-f]+: ea230041 bics x1, x2, x3 + *[0-9a-f]+: ea230441 bics x1, x2, x3, lsl #1 + *[0-9a-f]+: ea230c41 bics x1, x2, x3, lsl #3 + *[0-9a-f]+: ea231c41 bics x1, x2, x3, lsl #7 + *[0-9a-f]+: ea233c41 bics x1, x2, x3, lsl #15 + *[0-9a-f]+: ea237c41 bics x1, x2, x3, lsl #31 + *[0-9a-f]+: ea23fc41 bics x1, x2, x3, lsl #63 + *[0-9a-f]+: ea630041 bics x1, x2, x3, lsr #0 + *[0-9a-f]+: ea630441 bics x1, x2, x3, lsr #1 + *[0-9a-f]+: ea630c41 bics x1, x2, x3, lsr #3 + *[0-9a-f]+: ea631c41 bics x1, x2, x3, lsr #7 + *[0-9a-f]+: ea633c41 bics x1, x2, x3, lsr #15 + *[0-9a-f]+: ea637c41 bics x1, x2, x3, lsr #31 + *[0-9a-f]+: ea63fc41 bics x1, x2, x3, lsr #63 + *[0-9a-f]+: eaa30041 bics x1, x2, x3, asr #0 + *[0-9a-f]+: eaa30441 bics x1, x2, x3, asr #1 + *[0-9a-f]+: eaa30c41 bics x1, x2, x3, asr #3 + *[0-9a-f]+: eaa31c41 bics x1, x2, x3, asr #7 + *[0-9a-f]+: eaa33c41 bics x1, x2, x3, asr #15 + *[0-9a-f]+: eaa37c41 bics x1, x2, x3, asr #31 + *[0-9a-f]+: eaa3fc41 bics x1, x2, x3, asr #63 + *[0-9a-f]+: eae30041 bics x1, x2, x3, ror #0 + *[0-9a-f]+: eae30441 bics x1, x2, x3, ror #1 + *[0-9a-f]+: eae30c41 bics x1, x2, x3, ror #3 + *[0-9a-f]+: eae31c41 bics x1, x2, x3, ror #7 + *[0-9a-f]+: eae33c41 bics x1, x2, x3, ror #15 + *[0-9a-f]+: eae37c41 bics x1, x2, x3, ror #31 + *[0-9a-f]+: eae3fc41 bics x1, x2, x3, ror #63 + *[0-9a-f]+: 6a230041 bics w1, w2, w3 + *[0-9a-f]+: 6a230441 bics w1, w2, w3, lsl #1 + *[0-9a-f]+: 6a230c41 bics w1, w2, w3, lsl #3 + *[0-9a-f]+: 6a231c41 bics w1, w2, w3, lsl #7 + *[0-9a-f]+: 6a233c41 bics w1, w2, w3, lsl #15 + *[0-9a-f]+: 6a237c41 bics w1, w2, w3, lsl #31 + *[0-9a-f]+: 6a630041 bics w1, w2, w3, lsr #0 + *[0-9a-f]+: 6a630441 bics w1, w2, w3, lsr #1 + *[0-9a-f]+: 6a630c41 bics w1, w2, w3, lsr #3 + *[0-9a-f]+: 6a631c41 bics w1, w2, w3, lsr #7 + *[0-9a-f]+: 6a633c41 bics w1, w2, w3, lsr #15 + *[0-9a-f]+: 6a637c41 bics w1, w2, w3, lsr #31 + *[0-9a-f]+: 6aa30041 bics w1, w2, w3, asr #0 + *[0-9a-f]+: 6aa30441 bics w1, w2, w3, asr #1 + *[0-9a-f]+: 6aa30c41 bics w1, w2, w3, asr #3 + *[0-9a-f]+: 6aa31c41 bics w1, w2, w3, asr #7 + *[0-9a-f]+: 6aa33c41 bics w1, w2, w3, asr #15 + *[0-9a-f]+: 6aa37c41 bics w1, w2, w3, asr #31 + *[0-9a-f]+: 6ae30041 bics w1, w2, w3, ror #0 + *[0-9a-f]+: 6ae30441 bics w1, w2, w3, ror #1 + *[0-9a-f]+: 6ae30c41 bics w1, w2, w3, ror #3 + *[0-9a-f]+: 6ae31c41 bics w1, w2, w3, ror #7 + *[0-9a-f]+: 6ae33c41 bics w1, w2, w3, ror #15 + *[0-9a-f]+: 6ae37c41 bics w1, w2, w3, ror #31 + *[0-9a-f]+: 8b030041 add x1, x2, x3 + *[0-9a-f]+: 8b030441 add x1, x2, x3, lsl #1 + *[0-9a-f]+: 8b030c41 add x1, x2, x3, lsl #3 + *[0-9a-f]+: 8b031c41 add x1, x2, x3, lsl #7 + *[0-9a-f]+: 8b033c41 add x1, x2, x3, lsl #15 + *[0-9a-f]+: 8b037c41 add x1, x2, x3, lsl #31 + *[0-9a-f]+: 8b03fc41 add x1, x2, x3, lsl #63 + *[0-9a-f]+: 8b430041 add x1, x2, x3, lsr #0 + *[0-9a-f]+: 8b430441 add x1, x2, x3, lsr #1 + *[0-9a-f]+: 8b430c41 add x1, x2, x3, lsr #3 + *[0-9a-f]+: 8b431c41 add x1, x2, x3, lsr #7 + *[0-9a-f]+: 8b433c41 add x1, x2, x3, lsr #15 + *[0-9a-f]+: 8b437c41 add x1, x2, x3, lsr #31 + *[0-9a-f]+: 8b43fc41 add x1, x2, x3, lsr #63 + *[0-9a-f]+: 8b830041 add x1, x2, x3, asr #0 + *[0-9a-f]+: 8b830441 add x1, x2, x3, asr #1 + *[0-9a-f]+: 8b830c41 add x1, x2, x3, asr #3 + *[0-9a-f]+: 8b831c41 add x1, x2, x3, asr #7 + *[0-9a-f]+: 8b833c41 add x1, x2, x3, asr #15 + *[0-9a-f]+: 8b837c41 add x1, x2, x3, asr #31 + *[0-9a-f]+: 8b83fc41 add x1, x2, x3, asr #63 + *[0-9a-f]+: 8b230041 add x1, x2, w3, uxtb + *[0-9a-f]+: 8b230441 add x1, x2, w3, uxtb #1 + *[0-9a-f]+: 8b230841 add x1, x2, w3, uxtb #2 + *[0-9a-f]+: 8b230c41 add x1, x2, w3, uxtb #3 + *[0-9a-f]+: 8b231041 add x1, x2, w3, uxtb #4 + *[0-9a-f]+: 8b232041 add x1, x2, w3, uxth + *[0-9a-f]+: 8b232441 add x1, x2, w3, uxth #1 + *[0-9a-f]+: 8b232841 add x1, x2, w3, uxth #2 + *[0-9a-f]+: 8b232c41 add x1, x2, w3, uxth #3 + *[0-9a-f]+: 8b233041 add x1, x2, w3, uxth #4 + *[0-9a-f]+: 8b234041 add x1, x2, w3, uxtw + *[0-9a-f]+: 8b234441 add x1, x2, w3, uxtw #1 + *[0-9a-f]+: 8b234841 add x1, x2, w3, uxtw #2 + *[0-9a-f]+: 8b234c41 add x1, x2, w3, uxtw #3 + *[0-9a-f]+: 8b235041 add x1, x2, w3, uxtw #4 + *[0-9a-f]+: 8b236041 add x1, x2, x3, uxtx + *[0-9a-f]+: 8b236441 add x1, x2, x3, uxtx #1 + *[0-9a-f]+: 8b236841 add x1, x2, x3, uxtx #2 + *[0-9a-f]+: 8b236c41 add x1, x2, x3, uxtx #3 + *[0-9a-f]+: 8b237041 add x1, x2, x3, uxtx #4 + *[0-9a-f]+: 8b238041 add x1, x2, w3, sxtb + *[0-9a-f]+: 8b238441 add x1, x2, w3, sxtb #1 + *[0-9a-f]+: 8b238841 add x1, x2, w3, sxtb #2 + *[0-9a-f]+: 8b238c41 add x1, x2, w3, sxtb #3 + *[0-9a-f]+: 8b239041 add x1, x2, w3, sxtb #4 + *[0-9a-f]+: 8b23a041 add x1, x2, w3, sxth + *[0-9a-f]+: 8b23a441 add x1, x2, w3, sxth #1 + *[0-9a-f]+: 8b23a841 add x1, x2, w3, sxth #2 + *[0-9a-f]+: 8b23ac41 add x1, x2, w3, sxth #3 + *[0-9a-f]+: 8b23b041 add x1, x2, w3, sxth #4 + *[0-9a-f]+: 8b23c041 add x1, x2, w3, sxtw + *[0-9a-f]+: 8b23c441 add x1, x2, w3, sxtw #1 + *[0-9a-f]+: 8b23c841 add x1, x2, w3, sxtw #2 + *[0-9a-f]+: 8b23cc41 add x1, x2, w3, sxtw #3 + *[0-9a-f]+: 8b23d041 add x1, x2, w3, sxtw #4 + *[0-9a-f]+: 8b23e041 add x1, x2, x3, sxtx + *[0-9a-f]+: 8b23e441 add x1, x2, x3, sxtx #1 + *[0-9a-f]+: 8b23e841 add x1, x2, x3, sxtx #2 + *[0-9a-f]+: 8b23ec41 add x1, x2, x3, sxtx #3 + *[0-9a-f]+: 8b23f041 add x1, x2, x3, sxtx #4 + *[0-9a-f]+: 0b030041 add w1, w2, w3 + *[0-9a-f]+: 0b030441 add w1, w2, w3, lsl #1 + *[0-9a-f]+: 0b030c41 add w1, w2, w3, lsl #3 + *[0-9a-f]+: 0b031c41 add w1, w2, w3, lsl #7 + *[0-9a-f]+: 0b033c41 add w1, w2, w3, lsl #15 + *[0-9a-f]+: 0b037c41 add w1, w2, w3, lsl #31 + *[0-9a-f]+: 0b430041 add w1, w2, w3, lsr #0 + *[0-9a-f]+: 0b430441 add w1, w2, w3, lsr #1 + *[0-9a-f]+: 0b430c41 add w1, w2, w3, lsr #3 + *[0-9a-f]+: 0b431c41 add w1, w2, w3, lsr #7 + *[0-9a-f]+: 0b433c41 add w1, w2, w3, lsr #15 + *[0-9a-f]+: 0b437c41 add w1, w2, w3, lsr #31 + *[0-9a-f]+: 0b830041 add w1, w2, w3, asr #0 + *[0-9a-f]+: 0b830441 add w1, w2, w3, asr #1 + *[0-9a-f]+: 0b830c41 add w1, w2, w3, asr #3 + *[0-9a-f]+: 0b831c41 add w1, w2, w3, asr #7 + *[0-9a-f]+: 0b833c41 add w1, w2, w3, asr #15 + *[0-9a-f]+: 0b837c41 add w1, w2, w3, asr #31 + *[0-9a-f]+: 0b230041 add w1, w2, w3, uxtb + *[0-9a-f]+: 0b230441 add w1, w2, w3, uxtb #1 + *[0-9a-f]+: 0b230841 add w1, w2, w3, uxtb #2 + *[0-9a-f]+: 0b230c41 add w1, w2, w3, uxtb #3 + *[0-9a-f]+: 0b231041 add w1, w2, w3, uxtb #4 + *[0-9a-f]+: 0b232041 add w1, w2, w3, uxth + *[0-9a-f]+: 0b232441 add w1, w2, w3, uxth #1 + *[0-9a-f]+: 0b232841 add w1, w2, w3, uxth #2 + *[0-9a-f]+: 0b232c41 add w1, w2, w3, uxth #3 + *[0-9a-f]+: 0b233041 add w1, w2, w3, uxth #4 + *[0-9a-f]+: 0b238041 add w1, w2, w3, sxtb + *[0-9a-f]+: 0b238441 add w1, w2, w3, sxtb #1 + *[0-9a-f]+: 0b238841 add w1, w2, w3, sxtb #2 + *[0-9a-f]+: 0b238c41 add w1, w2, w3, sxtb #3 + *[0-9a-f]+: 0b239041 add w1, w2, w3, sxtb #4 + *[0-9a-f]+: 0b23a041 add w1, w2, w3, sxth + *[0-9a-f]+: 0b23a441 add w1, w2, w3, sxth #1 + *[0-9a-f]+: 0b23a841 add w1, w2, w3, sxth #2 + *[0-9a-f]+: 0b23ac41 add w1, w2, w3, sxth #3 + *[0-9a-f]+: 0b23b041 add w1, w2, w3, sxth #4 + *[0-9a-f]+: cb030041 sub x1, x2, x3 + *[0-9a-f]+: cb030441 sub x1, x2, x3, lsl #1 + *[0-9a-f]+: cb030c41 sub x1, x2, x3, lsl #3 + *[0-9a-f]+: cb031c41 sub x1, x2, x3, lsl #7 + *[0-9a-f]+: cb033c41 sub x1, x2, x3, lsl #15 + *[0-9a-f]+: cb037c41 sub x1, x2, x3, lsl #31 + *[0-9a-f]+: cb03fc41 sub x1, x2, x3, lsl #63 + *[0-9a-f]+: cb430041 sub x1, x2, x3, lsr #0 + *[0-9a-f]+: cb430441 sub x1, x2, x3, lsr #1 + *[0-9a-f]+: cb430c41 sub x1, x2, x3, lsr #3 + *[0-9a-f]+: cb431c41 sub x1, x2, x3, lsr #7 + *[0-9a-f]+: cb433c41 sub x1, x2, x3, lsr #15 + *[0-9a-f]+: cb437c41 sub x1, x2, x3, lsr #31 + *[0-9a-f]+: cb43fc41 sub x1, x2, x3, lsr #63 + *[0-9a-f]+: cb830041 sub x1, x2, x3, asr #0 + *[0-9a-f]+: cb830441 sub x1, x2, x3, asr #1 + *[0-9a-f]+: cb830c41 sub x1, x2, x3, asr #3 + *[0-9a-f]+: cb831c41 sub x1, x2, x3, asr #7 + *[0-9a-f]+: cb833c41 sub x1, x2, x3, asr #15 + *[0-9a-f]+: cb837c41 sub x1, x2, x3, asr #31 + *[0-9a-f]+: cb83fc41 sub x1, x2, x3, asr #63 + *[0-9a-f]+: cb230041 sub x1, x2, w3, uxtb + *[0-9a-f]+: cb230441 sub x1, x2, w3, uxtb #1 + *[0-9a-f]+: cb230841 sub x1, x2, w3, uxtb #2 + *[0-9a-f]+: cb230c41 sub x1, x2, w3, uxtb #3 + *[0-9a-f]+: cb231041 sub x1, x2, w3, uxtb #4 + *[0-9a-f]+: cb232041 sub x1, x2, w3, uxth + *[0-9a-f]+: cb232441 sub x1, x2, w3, uxth #1 + *[0-9a-f]+: cb232841 sub x1, x2, w3, uxth #2 + *[0-9a-f]+: cb232c41 sub x1, x2, w3, uxth #3 + *[0-9a-f]+: cb233041 sub x1, x2, w3, uxth #4 + *[0-9a-f]+: cb234041 sub x1, x2, w3, uxtw + *[0-9a-f]+: cb234441 sub x1, x2, w3, uxtw #1 + *[0-9a-f]+: cb234841 sub x1, x2, w3, uxtw #2 + *[0-9a-f]+: cb234c41 sub x1, x2, w3, uxtw #3 + *[0-9a-f]+: cb235041 sub x1, x2, w3, uxtw #4 + *[0-9a-f]+: cb236041 sub x1, x2, x3, uxtx + *[0-9a-f]+: cb236441 sub x1, x2, x3, uxtx #1 + *[0-9a-f]+: cb236841 sub x1, x2, x3, uxtx #2 + *[0-9a-f]+: cb236c41 sub x1, x2, x3, uxtx #3 + *[0-9a-f]+: cb237041 sub x1, x2, x3, uxtx #4 + *[0-9a-f]+: cb238041 sub x1, x2, w3, sxtb + *[0-9a-f]+: cb238441 sub x1, x2, w3, sxtb #1 + *[0-9a-f]+: cb238841 sub x1, x2, w3, sxtb #2 + *[0-9a-f]+: cb238c41 sub x1, x2, w3, sxtb #3 + *[0-9a-f]+: cb239041 sub x1, x2, w3, sxtb #4 + *[0-9a-f]+: cb23a041 sub x1, x2, w3, sxth + *[0-9a-f]+: cb23a441 sub x1, x2, w3, sxth #1 + *[0-9a-f]+: cb23a841 sub x1, x2, w3, sxth #2 + *[0-9a-f]+: cb23ac41 sub x1, x2, w3, sxth #3 + *[0-9a-f]+: cb23b041 sub x1, x2, w3, sxth #4 + *[0-9a-f]+: cb23c041 sub x1, x2, w3, sxtw + *[0-9a-f]+: cb23c441 sub x1, x2, w3, sxtw #1 + *[0-9a-f]+: cb23c841 sub x1, x2, w3, sxtw #2 + *[0-9a-f]+: cb23cc41 sub x1, x2, w3, sxtw #3 + *[0-9a-f]+: cb23d041 sub x1, x2, w3, sxtw #4 + *[0-9a-f]+: cb23e041 sub x1, x2, x3, sxtx + *[0-9a-f]+: cb23e441 sub x1, x2, x3, sxtx #1 + *[0-9a-f]+: cb23e841 sub x1, x2, x3, sxtx #2 + *[0-9a-f]+: cb23ec41 sub x1, x2, x3, sxtx #3 + *[0-9a-f]+: cb23f041 sub x1, x2, x3, sxtx #4 + *[0-9a-f]+: 4b030041 sub w1, w2, w3 + *[0-9a-f]+: 4b030441 sub w1, w2, w3, lsl #1 + *[0-9a-f]+: 4b030c41 sub w1, w2, w3, lsl #3 + *[0-9a-f]+: 4b031c41 sub w1, w2, w3, lsl #7 + *[0-9a-f]+: 4b033c41 sub w1, w2, w3, lsl #15 + *[0-9a-f]+: 4b037c41 sub w1, w2, w3, lsl #31 + *[0-9a-f]+: 4b430041 sub w1, w2, w3, lsr #0 + *[0-9a-f]+: 4b430441 sub w1, w2, w3, lsr #1 + *[0-9a-f]+: 4b430c41 sub w1, w2, w3, lsr #3 + *[0-9a-f]+: 4b431c41 sub w1, w2, w3, lsr #7 + *[0-9a-f]+: 4b433c41 sub w1, w2, w3, lsr #15 + *[0-9a-f]+: 4b437c41 sub w1, w2, w3, lsr #31 + *[0-9a-f]+: 4b830041 sub w1, w2, w3, asr #0 + *[0-9a-f]+: 4b830441 sub w1, w2, w3, asr #1 + *[0-9a-f]+: 4b830c41 sub w1, w2, w3, asr #3 + *[0-9a-f]+: 4b831c41 sub w1, w2, w3, asr #7 + *[0-9a-f]+: 4b833c41 sub w1, w2, w3, asr #15 + *[0-9a-f]+: 4b837c41 sub w1, w2, w3, asr #31 + *[0-9a-f]+: 4b230041 sub w1, w2, w3, uxtb + *[0-9a-f]+: 4b230441 sub w1, w2, w3, uxtb #1 + *[0-9a-f]+: 4b230841 sub w1, w2, w3, uxtb #2 + *[0-9a-f]+: 4b230c41 sub w1, w2, w3, uxtb #3 + *[0-9a-f]+: 4b231041 sub w1, w2, w3, uxtb #4 + *[0-9a-f]+: 4b232041 sub w1, w2, w3, uxth + *[0-9a-f]+: 4b232441 sub w1, w2, w3, uxth #1 + *[0-9a-f]+: 4b232841 sub w1, w2, w3, uxth #2 + *[0-9a-f]+: 4b232c41 sub w1, w2, w3, uxth #3 + *[0-9a-f]+: 4b233041 sub w1, w2, w3, uxth #4 + *[0-9a-f]+: 4b238041 sub w1, w2, w3, sxtb + *[0-9a-f]+: 4b238441 sub w1, w2, w3, sxtb #1 + *[0-9a-f]+: 4b238841 sub w1, w2, w3, sxtb #2 + *[0-9a-f]+: 4b238c41 sub w1, w2, w3, sxtb #3 + *[0-9a-f]+: 4b239041 sub w1, w2, w3, sxtb #4 + *[0-9a-f]+: 4b23a041 sub w1, w2, w3, sxth + *[0-9a-f]+: 4b23a441 sub w1, w2, w3, sxth #1 + *[0-9a-f]+: 4b23a841 sub w1, w2, w3, sxth #2 + *[0-9a-f]+: 4b23ac41 sub w1, w2, w3, sxth #3 + *[0-9a-f]+: 4b23b041 sub w1, w2, w3, sxth #4 + *[0-9a-f]+: cb0303e2 neg x2, x3 + *[0-9a-f]+: cb0307e2 neg x2, x3, lsl #1 + *[0-9a-f]+: cb030fe2 neg x2, x3, lsl #3 + *[0-9a-f]+: cb031fe2 neg x2, x3, lsl #7 + *[0-9a-f]+: cb033fe2 neg x2, x3, lsl #15 + *[0-9a-f]+: cb037fe2 neg x2, x3, lsl #31 + *[0-9a-f]+: cb03ffe2 neg x2, x3, lsl #63 + *[0-9a-f]+: cb4303e2 neg x2, x3, lsr #0 + *[0-9a-f]+: cb4307e2 neg x2, x3, lsr #1 + *[0-9a-f]+: cb430fe2 neg x2, x3, lsr #3 + *[0-9a-f]+: cb431fe2 neg x2, x3, lsr #7 + *[0-9a-f]+: cb433fe2 neg x2, x3, lsr #15 + *[0-9a-f]+: cb437fe2 neg x2, x3, lsr #31 + *[0-9a-f]+: cb43ffe2 neg x2, x3, lsr #63 + *[0-9a-f]+: cb8303e2 neg x2, x3, asr #0 + *[0-9a-f]+: cb8307e2 neg x2, x3, asr #1 + *[0-9a-f]+: cb830fe2 neg x2, x3, asr #3 + *[0-9a-f]+: cb831fe2 neg x2, x3, asr #7 + *[0-9a-f]+: cb833fe2 neg x2, x3, asr #15 + *[0-9a-f]+: cb837fe2 neg x2, x3, asr #31 + *[0-9a-f]+: cb83ffe2 neg x2, x3, asr #63 + *[0-9a-f]+: 4b0303e2 neg w2, w3 + *[0-9a-f]+: 4b0307e2 neg w2, w3, lsl #1 + *[0-9a-f]+: 4b030fe2 neg w2, w3, lsl #3 + *[0-9a-f]+: 4b031fe2 neg w2, w3, lsl #7 + *[0-9a-f]+: 4b033fe2 neg w2, w3, lsl #15 + *[0-9a-f]+: 4b037fe2 neg w2, w3, lsl #31 + *[0-9a-f]+: 4b4303e2 neg w2, w3, lsr #0 + *[0-9a-f]+: 4b4307e2 neg w2, w3, lsr #1 + *[0-9a-f]+: 4b430fe2 neg w2, w3, lsr #3 + *[0-9a-f]+: 4b431fe2 neg w2, w3, lsr #7 + *[0-9a-f]+: 4b433fe2 neg w2, w3, lsr #15 + *[0-9a-f]+: 4b437fe2 neg w2, w3, lsr #31 + *[0-9a-f]+: 4b8303e2 neg w2, w3, asr #0 + *[0-9a-f]+: 4b8307e2 neg w2, w3, asr #1 + *[0-9a-f]+: 4b830fe2 neg w2, w3, asr #3 + *[0-9a-f]+: 4b831fe2 neg w2, w3, asr #7 + *[0-9a-f]+: 4b833fe2 neg w2, w3, asr #15 + *[0-9a-f]+: 4b837fe2 neg w2, w3, asr #31 + *[0-9a-f]+: eb03005f cmp x2, x3 + *[0-9a-f]+: eb03045f cmp x2, x3, lsl #1 + *[0-9a-f]+: eb030c5f cmp x2, x3, lsl #3 + *[0-9a-f]+: eb031c5f cmp x2, x3, lsl #7 + *[0-9a-f]+: eb033c5f cmp x2, x3, lsl #15 + *[0-9a-f]+: eb037c5f cmp x2, x3, lsl #31 + *[0-9a-f]+: eb03fc5f cmp x2, x3, lsl #63 + *[0-9a-f]+: eb43005f cmp x2, x3, lsr #0 + *[0-9a-f]+: eb43045f cmp x2, x3, lsr #1 + *[0-9a-f]+: eb430c5f cmp x2, x3, lsr #3 + *[0-9a-f]+: eb431c5f cmp x2, x3, lsr #7 + *[0-9a-f]+: eb433c5f cmp x2, x3, lsr #15 + *[0-9a-f]+: eb437c5f cmp x2, x3, lsr #31 + *[0-9a-f]+: eb43fc5f cmp x2, x3, lsr #63 + *[0-9a-f]+: eb83005f cmp x2, x3, asr #0 + *[0-9a-f]+: eb83045f cmp x2, x3, asr #1 + *[0-9a-f]+: eb830c5f cmp x2, x3, asr #3 + *[0-9a-f]+: eb831c5f cmp x2, x3, asr #7 + *[0-9a-f]+: eb833c5f cmp x2, x3, asr #15 + *[0-9a-f]+: eb837c5f cmp x2, x3, asr #31 + *[0-9a-f]+: eb83fc5f cmp x2, x3, asr #63 + *[0-9a-f]+: eb23005f cmp x2, w3, uxtb + *[0-9a-f]+: eb23045f cmp x2, w3, uxtb #1 + *[0-9a-f]+: eb23085f cmp x2, w3, uxtb #2 + *[0-9a-f]+: eb230c5f cmp x2, w3, uxtb #3 + *[0-9a-f]+: eb23105f cmp x2, w3, uxtb #4 + *[0-9a-f]+: eb23205f cmp x2, w3, uxth + *[0-9a-f]+: eb23245f cmp x2, w3, uxth #1 + *[0-9a-f]+: eb23285f cmp x2, w3, uxth #2 + *[0-9a-f]+: eb232c5f cmp x2, w3, uxth #3 + *[0-9a-f]+: eb23305f cmp x2, w3, uxth #4 + *[0-9a-f]+: eb23405f cmp x2, w3, uxtw + *[0-9a-f]+: eb23445f cmp x2, w3, uxtw #1 + *[0-9a-f]+: eb23485f cmp x2, w3, uxtw #2 + *[0-9a-f]+: eb234c5f cmp x2, w3, uxtw #3 + *[0-9a-f]+: eb23505f cmp x2, w3, uxtw #4 + *[0-9a-f]+: eb23805f cmp x2, w3, sxtb + *[0-9a-f]+: eb23845f cmp x2, w3, sxtb #1 + *[0-9a-f]+: eb23885f cmp x2, w3, sxtb #2 + *[0-9a-f]+: eb238c5f cmp x2, w3, sxtb #3 + *[0-9a-f]+: eb23905f cmp x2, w3, sxtb #4 + *[0-9a-f]+: eb23a05f cmp x2, w3, sxth + *[0-9a-f]+: eb23a45f cmp x2, w3, sxth #1 + *[0-9a-f]+: eb23a85f cmp x2, w3, sxth #2 + *[0-9a-f]+: eb23ac5f cmp x2, w3, sxth #3 + *[0-9a-f]+: eb23b05f cmp x2, w3, sxth #4 + *[0-9a-f]+: eb23c05f cmp x2, w3, sxtw + *[0-9a-f]+: eb23c45f cmp x2, w3, sxtw #1 + *[0-9a-f]+: eb23c85f cmp x2, w3, sxtw #2 + *[0-9a-f]+: eb23cc5f cmp x2, w3, sxtw #3 + *[0-9a-f]+: eb23d05f cmp x2, w3, sxtw #4 + *[0-9a-f]+: 6b03005f cmp w2, w3 + *[0-9a-f]+: 6b03045f cmp w2, w3, lsl #1 + *[0-9a-f]+: 6b030c5f cmp w2, w3, lsl #3 + *[0-9a-f]+: 6b031c5f cmp w2, w3, lsl #7 + *[0-9a-f]+: 6b033c5f cmp w2, w3, lsl #15 + *[0-9a-f]+: 6b037c5f cmp w2, w3, lsl #31 + *[0-9a-f]+: 6b43005f cmp w2, w3, lsr #0 + *[0-9a-f]+: 6b43045f cmp w2, w3, lsr #1 + *[0-9a-f]+: 6b430c5f cmp w2, w3, lsr #3 + *[0-9a-f]+: 6b431c5f cmp w2, w3, lsr #7 + *[0-9a-f]+: 6b433c5f cmp w2, w3, lsr #15 + *[0-9a-f]+: 6b437c5f cmp w2, w3, lsr #31 + *[0-9a-f]+: 6b83005f cmp w2, w3, asr #0 + *[0-9a-f]+: 6b83045f cmp w2, w3, asr #1 + *[0-9a-f]+: 6b830c5f cmp w2, w3, asr #3 + *[0-9a-f]+: 6b831c5f cmp w2, w3, asr #7 + *[0-9a-f]+: 6b833c5f cmp w2, w3, asr #15 + *[0-9a-f]+: 6b837c5f cmp w2, w3, asr #31 + *[0-9a-f]+: 6b23005f cmp w2, w3, uxtb + *[0-9a-f]+: 6b23045f cmp w2, w3, uxtb #1 + *[0-9a-f]+: 6b23085f cmp w2, w3, uxtb #2 + *[0-9a-f]+: 6b230c5f cmp w2, w3, uxtb #3 + *[0-9a-f]+: 6b23105f cmp w2, w3, uxtb #4 + *[0-9a-f]+: 6b23205f cmp w2, w3, uxth + *[0-9a-f]+: 6b23245f cmp w2, w3, uxth #1 + *[0-9a-f]+: 6b23285f cmp w2, w3, uxth #2 + *[0-9a-f]+: 6b232c5f cmp w2, w3, uxth #3 + *[0-9a-f]+: 6b23305f cmp w2, w3, uxth #4 + *[0-9a-f]+: 6b23805f cmp w2, w3, sxtb + *[0-9a-f]+: 6b23845f cmp w2, w3, sxtb #1 + *[0-9a-f]+: 6b23885f cmp w2, w3, sxtb #2 + *[0-9a-f]+: 6b238c5f cmp w2, w3, sxtb #3 + *[0-9a-f]+: 6b23905f cmp w2, w3, sxtb #4 + *[0-9a-f]+: 6b23a05f cmp w2, w3, sxth + *[0-9a-f]+: 6b23a45f cmp w2, w3, sxth #1 + *[0-9a-f]+: 6b23a85f cmp w2, w3, sxth #2 + *[0-9a-f]+: 6b23ac5f cmp w2, w3, sxth #3 + *[0-9a-f]+: 6b23b05f cmp w2, w3, sxth #4 + *[0-9a-f]+: ab03005f cmn x2, x3 + *[0-9a-f]+: ab03045f cmn x2, x3, lsl #1 + *[0-9a-f]+: ab030c5f cmn x2, x3, lsl #3 + *[0-9a-f]+: ab031c5f cmn x2, x3, lsl #7 + *[0-9a-f]+: ab033c5f cmn x2, x3, lsl #15 + *[0-9a-f]+: ab037c5f cmn x2, x3, lsl #31 + *[0-9a-f]+: ab03fc5f cmn x2, x3, lsl #63 + *[0-9a-f]+: ab43005f cmn x2, x3, lsr #0 + *[0-9a-f]+: ab43045f cmn x2, x3, lsr #1 + *[0-9a-f]+: ab430c5f cmn x2, x3, lsr #3 + *[0-9a-f]+: ab431c5f cmn x2, x3, lsr #7 + *[0-9a-f]+: ab433c5f cmn x2, x3, lsr #15 + *[0-9a-f]+: ab437c5f cmn x2, x3, lsr #31 + *[0-9a-f]+: ab43fc5f cmn x2, x3, lsr #63 + *[0-9a-f]+: ab83005f cmn x2, x3, asr #0 + *[0-9a-f]+: ab83045f cmn x2, x3, asr #1 + *[0-9a-f]+: ab830c5f cmn x2, x3, asr #3 + *[0-9a-f]+: ab831c5f cmn x2, x3, asr #7 + *[0-9a-f]+: ab833c5f cmn x2, x3, asr #15 + *[0-9a-f]+: ab837c5f cmn x2, x3, asr #31 + *[0-9a-f]+: ab83fc5f cmn x2, x3, asr #63 + *[0-9a-f]+: ab23005f cmn x2, w3, uxtb + *[0-9a-f]+: ab23045f cmn x2, w3, uxtb #1 + *[0-9a-f]+: ab23085f cmn x2, w3, uxtb #2 + *[0-9a-f]+: ab230c5f cmn x2, w3, uxtb #3 + *[0-9a-f]+: ab23105f cmn x2, w3, uxtb #4 + *[0-9a-f]+: ab23205f cmn x2, w3, uxth + *[0-9a-f]+: ab23245f cmn x2, w3, uxth #1 + *[0-9a-f]+: ab23285f cmn x2, w3, uxth #2 + *[0-9a-f]+: ab232c5f cmn x2, w3, uxth #3 + *[0-9a-f]+: ab23305f cmn x2, w3, uxth #4 + *[0-9a-f]+: ab23405f cmn x2, w3, uxtw + *[0-9a-f]+: ab23445f cmn x2, w3, uxtw #1 + *[0-9a-f]+: ab23485f cmn x2, w3, uxtw #2 + *[0-9a-f]+: ab234c5f cmn x2, w3, uxtw #3 + *[0-9a-f]+: ab23505f cmn x2, w3, uxtw #4 + *[0-9a-f]+: ab23805f cmn x2, w3, sxtb + *[0-9a-f]+: ab23845f cmn x2, w3, sxtb #1 + *[0-9a-f]+: ab23885f cmn x2, w3, sxtb #2 + *[0-9a-f]+: ab238c5f cmn x2, w3, sxtb #3 + *[0-9a-f]+: ab23905f cmn x2, w3, sxtb #4 + *[0-9a-f]+: ab23a05f cmn x2, w3, sxth + *[0-9a-f]+: ab23a45f cmn x2, w3, sxth #1 + *[0-9a-f]+: ab23a85f cmn x2, w3, sxth #2 + *[0-9a-f]+: ab23ac5f cmn x2, w3, sxth #3 + *[0-9a-f]+: ab23b05f cmn x2, w3, sxth #4 + *[0-9a-f]+: ab23c05f cmn x2, w3, sxtw + *[0-9a-f]+: ab23c45f cmn x2, w3, sxtw #1 + *[0-9a-f]+: ab23c85f cmn x2, w3, sxtw #2 + *[0-9a-f]+: ab23cc5f cmn x2, w3, sxtw #3 + *[0-9a-f]+: ab23d05f cmn x2, w3, sxtw #4 + *[0-9a-f]+: 2b03005f cmn w2, w3 + *[0-9a-f]+: 2b03045f cmn w2, w3, lsl #1 + *[0-9a-f]+: 2b030c5f cmn w2, w3, lsl #3 + *[0-9a-f]+: 2b031c5f cmn w2, w3, lsl #7 + *[0-9a-f]+: 2b033c5f cmn w2, w3, lsl #15 + *[0-9a-f]+: 2b037c5f cmn w2, w3, lsl #31 + *[0-9a-f]+: 2b43005f cmn w2, w3, lsr #0 + *[0-9a-f]+: 2b43045f cmn w2, w3, lsr #1 + *[0-9a-f]+: 2b430c5f cmn w2, w3, lsr #3 + *[0-9a-f]+: 2b431c5f cmn w2, w3, lsr #7 + *[0-9a-f]+: 2b433c5f cmn w2, w3, lsr #15 + *[0-9a-f]+: 2b437c5f cmn w2, w3, lsr #31 + *[0-9a-f]+: 2b83005f cmn w2, w3, asr #0 + *[0-9a-f]+: 2b83045f cmn w2, w3, asr #1 + *[0-9a-f]+: 2b830c5f cmn w2, w3, asr #3 + *[0-9a-f]+: 2b831c5f cmn w2, w3, asr #7 + *[0-9a-f]+: 2b833c5f cmn w2, w3, asr #15 + *[0-9a-f]+: 2b837c5f cmn w2, w3, asr #31 + *[0-9a-f]+: 2b23005f cmn w2, w3, uxtb + *[0-9a-f]+: 2b23045f cmn w2, w3, uxtb #1 + *[0-9a-f]+: 2b23085f cmn w2, w3, uxtb #2 + *[0-9a-f]+: 2b230c5f cmn w2, w3, uxtb #3 + *[0-9a-f]+: 2b23105f cmn w2, w3, uxtb #4 + *[0-9a-f]+: 2b23205f cmn w2, w3, uxth + *[0-9a-f]+: 2b23245f cmn w2, w3, uxth #1 + *[0-9a-f]+: 2b23285f cmn w2, w3, uxth #2 + *[0-9a-f]+: 2b232c5f cmn w2, w3, uxth #3 + *[0-9a-f]+: 2b23305f cmn w2, w3, uxth #4 + *[0-9a-f]+: 2b23805f cmn w2, w3, sxtb + *[0-9a-f]+: 2b23845f cmn w2, w3, sxtb #1 + *[0-9a-f]+: 2b23885f cmn w2, w3, sxtb #2 + *[0-9a-f]+: 2b238c5f cmn w2, w3, sxtb #3 + *[0-9a-f]+: 2b23905f cmn w2, w3, sxtb #4 + *[0-9a-f]+: 2b23a05f cmn w2, w3, sxth + *[0-9a-f]+: 2b23a45f cmn w2, w3, sxth #1 + *[0-9a-f]+: 2b23a85f cmn w2, w3, sxth #2 + *[0-9a-f]+: 2b23ac5f cmn w2, w3, sxth #3 + *[0-9a-f]+: 2b23b05f cmn w2, w3, sxth #4 diff --git a/gas/testsuite/gas/aarch64/shifted.s b/gas/testsuite/gas/aarch64/shifted.s index 2b05454..b513a6c 100644 --- a/gas/testsuite/gas/aarch64/shifted.s +++ b/gas/testsuite/gas/aarch64/shifted.s @@ -161,6 +161,9 @@ func: logical bic logical orn logical eon + + logical ands + logical bics arith3 add arith3 sub diff --git a/gas/testsuite/gas/aarch64/sme-5.d b/gas/testsuite/gas/aarch64/sme-5.d index 6667534..f6ef16d 100644 --- a/gas/testsuite/gas/aarch64/sme-5.d +++ b/gas/testsuite/gas/aarch64/sme-5.d @@ -87,7 +87,3 @@ Disassembly of section \.text: 134: e1dffe2f ld1q {za15v.q\[w15, 0\]}, p7/z, \[x17, xzr, lsl #4\] 138: e000ffef ld1b {za0v.b\[w15, 15\]}, p7/z, \[sp, x0\] 13c: e0010000 ld1b {za0h.b\[w12, 0\]}, p0/z, \[x0, x1\] - 140: e0410000 ld1h {za0h.h\[w12, 0\]}, p0/z, \[x0, x1, lsl #1\] - 144: e0819c0f ld1w {za3v.s\[w12, 3\]}, p7/z, \[x0, x1, lsl #2\] - 148: e0c10000 ld1d {za0h.d\[w12, 0\]}, p0/z, \[x0, x1, lsl #3\] - 14c: e1c18000 ld1q {za0v.q\[w12, 0\]}, p0/z, \[x0, x1, lsl #4\] diff --git a/gas/testsuite/gas/aarch64/sme-5.s b/gas/testsuite/gas/aarch64/sme-5.s index e0d79f6..398153a 100644 --- a/gas/testsuite/gas/aarch64/sme-5.s +++ b/gas/testsuite/gas/aarch64/sme-5.s @@ -95,7 +95,3 @@ ld1q {za15v.q[bar, #0]}, p7/z, [x17] /* Optional LSL operator. */ ld1b {za0v.b[w15, 15]}, p7/z, [sp, x0, lsl #0] ld1b {za0h.b[w12, 0]}, p0/z, [x0, x1] -ld1h {za0h.h[w12, 0]}, p0/z, [x0, x1] -ld1w {za3v.s[w12, 3]}, p7/z, [x0, x1] -ld1d {za0h.d[w12, 0]}, p0/z, [x0, x1] -ld1q {za0v.q[w12, 0]}, p0/z, [x0, x1] diff --git a/gas/testsuite/gas/aarch64/sme-f16f16-2-bad.s b/gas/testsuite/gas/aarch64/sme-f16f16-2-bad.s index 4bce380..612d2c5 100644 --- a/gas/testsuite/gas/aarch64/sme-f16f16-2-bad.s +++ b/gas/testsuite/gas/aarch64/sme-f16f16-2-bad.s @@ -1,5 +1,4 @@ /* FMOPA. */ -fmopa ZA0.s, p0/m, p0/m, z0.h, z0.h fmopa ZA1.h, p0, p0/m, z0.h, z0.h fmopa ZA0.h, p7/m, p0, z0.h, z0.h fmopa ZA0.h, p0/m, p7/m, z0.s, z0.s @@ -8,7 +7,6 @@ fmopa ZA2.h, p0/m, p8/m, z0.s, z31.b fmopa ZA4.h, p15/m, p11/m, z0.s, z31.b /* FMOPS. */ -fmops ZA0.s, p0/m, p0/m, z0.h, z0.h fmops ZA1.h, p0, p0/m, z0.h, z0.h fmops ZA0.h, p7/m, p0, z0.h, z0.h fmops ZA0.h, p0/m, p7/m, z0.s, z0.s diff --git a/gas/testsuite/gas/aarch64/sme.d b/gas/testsuite/gas/aarch64/sme.d index f5cf1f0..9317163 100644 --- a/gas/testsuite/gas/aarch64/sme.d +++ b/gas/testsuite/gas/aarch64/sme.d @@ -39,10 +39,10 @@ Disassembly of section \.text: 74: 80833851 fmops za1.s, p6/m, p1/m, z2.s, z3.s 78: 80825472 fmops za2.s, p5/m, p2/m, z3.s, z2.s 7c: 80817093 fmops za3.s, p4/m, p3/m, z4.s, z1.s - 80: 80842030 fmops za0.s, p0/m, p1/m, z1.s, z4.s - 84: 80836851 fmops za1.s, p2/m, p3/m, z2.s, z3.s - 88: 8082b072 fmops za2.s, p4/m, p5/m, z3.s, z2.s - 8c: 8081f893 fmops za3.s, p6/m, p7/m, z4.s, z1.s + 80: 81a42030 fmops za0.s, p0/m, p1/m, z1.h, z4.h + 84: 81a36851 fmops za1.s, p2/m, p3/m, z2.h, z3.h + 88: 81a2b072 fmops za2.s, p4/m, p5/m, z3.h, z2.h + 8c: 81a1f893 fmops za3.s, p6/m, p7/m, z4.h, z1.h 90: a0842020 smopa za0.s, p0/m, p1/m, z1.b, z4.b 94: a0836841 smopa za1.s, p2/m, p3/m, z2.b, z3.b 98: a082b062 smopa za2.s, p4/m, p5/m, z3.b, z2.b diff --git a/gas/testsuite/gas/aarch64/sme.s b/gas/testsuite/gas/aarch64/sme.s index 659f141..e4e5ed6 100644 --- a/gas/testsuite/gas/aarch64/sme.s +++ b/gas/testsuite/gas/aarch64/sme.s @@ -47,10 +47,10 @@ fmops za2.s, p5/m, p2/m, z3.s, z2.s fmops za3.s, p4/m, p3/m, z4.s, z1.s /* FMOPS (widening) */ -fmops za0.s, p0/m, p1/m, z1.s, z4.s -fmops za1.s, p2/m, p3/m, z2.s, z3.s -fmops za2.s, p4/m, p5/m, z3.s, z2.s -fmops za3.s, p6/m, p7/m, z4.s, z1.s +fmops za0.s, p0/m, p1/m, z1.h, z4.h +fmops za1.s, p2/m, p3/m, z2.h, z3.h +fmops za2.s, p4/m, p5/m, z3.h, z2.h +fmops za3.s, p6/m, p7/m, z4.h, z1.h /* SMOPA 32-bit variant. */ smopa za0.s, p0/m, p1/m, z1.b, z4.b diff --git a/gas/testsuite/gas/aarch64/sve-b16b16-sve2-bad-2.l b/gas/testsuite/gas/aarch64/sve-b16b16-sve2-bad-2.l index 83f00f5..2ede0c9 100644 --- a/gas/testsuite/gas/aarch64/sve-b16b16-sve2-bad-2.l +++ b/gas/testsuite/gas/aarch64/sve-b16b16-sve2-bad-2.l @@ -237,8 +237,8 @@ .*: Error: operand mismatch -- `bfmul z31.b,z31.s,z31.d\[8\]' .*: Info: did you mean this\? .*: Info: bfmul z31.h, z31.h, z31.h\[8\] -.*: Error: expected an SVE vector register at operand 1 -- `bfmul { ?z0.h ?},z0.h,z0.h\[1\]' -.*: Error: expected an SVE vector register at operand 1 -- `bfmul { ?z0.h-z0.h ?},z0.h\[2\]' +.*: Error: missing braces at operand 2 -- `bfmul { ?z0.h ?},z0.h,z0.h\[1\]' +.*: Error: invalid range in vector register list at operand 1 -- `bfmul { ?z0.h-z0.h ?},z0.h\[2\]' .*: Error: expected an SVE predicate register at operand 2 -- `bfmul z0.h,z0.h\[3\]' .*: Error: operand mismatch -- `bfsub z0.b,z0.h,z0.h' .*: Info: did you mean this\? diff --git a/gas/testsuite/gas/aarch64/sve-bfscale-bad.d b/gas/testsuite/gas/aarch64/sve-bfscale-bad.d new file mode 100644 index 0000000..297fb30 --- /dev/null +++ b/gas/testsuite/gas/aarch64/sve-bfscale-bad.d @@ -0,0 +1,4 @@ +#name: Invalid SVE_BFSCALE instructions +#as: -march=armv8-a+sve-bfscale+sme2 +#source: sve-bfscale-bad.s +#error_output: sve-bfscale-bad.l diff --git a/gas/testsuite/gas/aarch64/sve-bfscale-bad.l b/gas/testsuite/gas/aarch64/sve-bfscale-bad.l new file mode 100644 index 0000000..7cddb25 --- /dev/null +++ b/gas/testsuite/gas/aarch64/sve-bfscale-bad.l @@ -0,0 +1,26 @@ +[^ :]+: Assembler messages: +[^ :]+:[0-9]+: Error: operand 3 must be the same register as operand 1 -- `bfscale z0\.h,p0/m,z1\.h,z0\.h' +[^ :]+:[0-9]+: Error: operand mismatch -- `bfscale z0\.h,p0/z,z0\.h,z0\.h' +[^ :]+:[0-9]+: Info: did you mean this\? +[^ :]+:[0-9]+: Info: bfscale z0\.h, p0/m, z0\.h, z0\.h +[^ :]+:[0-9]+: Error: operand 2 must be the same register as operand 1 -- `bfscale { ?z0\.h-z1\.h ?},{ ?z0\.h-z2\.h ?},z0\.h' +[^ :]+:[0-9]+: Error: expected a list of 2 or 4 registers at operand 1 -- `bfscale { ?z0\.h-z2\.h ?},{ ?z0\.h-z2\.h ?},z0\.h' +[^ :]+:[0-9]+: Error: too many registers in vector register list at operand 1 -- `bfscale { ?z0\.h-z4\.h ?},{ ?z0\.h-z4\.h ?},z0\.h' +[^ :]+:[0-9]+: Error: operand 2 must be the same register as operand 1 -- `bfscale { ?z0\.h-z1\.h ?},{ ?z0\.h-z2\.h ?},{ ?z0\.h-z1\.h ?}' +[^ :]+:[0-9]+: Error: expected a list of 2 or 4 registers at operand 1 -- `bfscale { ?z0\.h-z2\.h ?},{ ?z0\.h-z2\.h ?},{ ?z0\.h-z1\.h ?}' +[^ :]+:[0-9]+: Error: too many registers in vector register list at operand 1 -- `bfscale { ?z0\.h-z4\.h ?},{ ?z0\.h-z4\.h ?},{ ?z0\.h-z1\.h ?}' +[^ :]+:[0-9]+: Error: expected a list of 2 registers at operand 3 -- `bfscale { ?z0\.h-z1\.h ?},{ ?z0\.h-z1\.h ?},{ ?z0\.h-z2\.h ?}' +[^ :]+:[0-9]+: Error: expected a list of 4 registers at operand 3 -- `bfscale { ?z0\.h-z3\.h ?},{ ?z0\.h-z3\.h ?},{ ?z0\.h-z1\.h ?}' +[^ :]+:[0-9]+: Error: too many registers in vector register list at operand 3 -- `bfscale { ?z0\.h-z3\.h ?},{ ?z0\.h-z3\.h ?},{ ?z0\.h-z4\.h ?}' +[^ :]+:[0-9]+: Error: expected a list of 2 registers at operand 2 -- `bfmul { ?z0\.h-z1\.h ?},{ ?z0\.h-z2\.h ?},z0\.h' +[^ :]+:[0-9]+: Error: expected a list of 2 or 4 registers at operand 1 -- `bfmul { ?z0\.h-z2\.h ?},{ ?z0\.h-z1\.h ?},z0\.h' +[^ :]+:[0-9]+: Error: expected a list of 4 registers at operand 2 -- `bfmul { ?z0\.h-z3\.h ?},{ ?z0\.h-z2\.h ?},z0\.h' +[^ :]+:[0-9]+: Error: expected a list of 4 registers at operand 2 -- `bfmul { ?z0\.h-z3\.h ?},{ ?z0\.h-z1\.h ?},z0\.h' +[^ :]+:[0-9]+: Error: z0-z15 expected at operand 3 -- `bfmul { ?z0\.h-z1\.h ?},{ ?z0\.h-z1\.h ?},z16\.h' +[^ :]+:[0-9]+: Error: z0-z15 expected at operand 3 -- `bfmul { ?z0\.h-z3\.h ?},{ ?z0\.h-z3\.h ?},z16\.h' +[^ :]+:[0-9]+: Error: expected a list of 2 registers at operand 2 -- `bfmul { ?z0\.h-z1\.h ?},{ ?z0\.h-z2\.h ?},{ ?z0\.h-z1\.h ?}' +[^ :]+:[0-9]+: Error: expected a list of 2 or 4 registers at operand 1 -- `bfmul { ?z0\.h-z2\.h ?},{ ?z0\.h-z1\.h ?},{ ?z0\.h-z1\.h ?}' +[^ :]+:[0-9]+: Error: expected a list of 4 registers at operand 2 -- `bfmul { ?z0\.h-z3\.h ?},{ ?z0\.h-z2\.h ?},{ ?z0\.h-z3\.h ?}' +[^ :]+:[0-9]+: Error: expected a list of 4 registers at operand 2 -- `bfmul { ?z0\.h-z3\.h ?},{ ?z0\.h-z1\.h ?},{ ?z0\.h-z3\.h ?}' +[^ :]+:[0-9]+: Error: expected a list of 2 registers at operand 3 -- `bfmul { ?z0\.h-z1\.h ?},{ ?z0\.h-z1\.h ?},{ ?z0\.h-z2\.h ?}' +[^ :]+:[0-9]+: Error: expected a list of 4 registers at operand 3 -- `bfmul { ?z0\.h-z3\.h ?},{ ?z0\.h-z3\.h ?},{ ?z0\.h-z2\.h ?}' diff --git a/gas/testsuite/gas/aarch64/sve-bfscale-bad.s b/gas/testsuite/gas/aarch64/sve-bfscale-bad.s new file mode 100644 index 0000000..bcb8867 --- /dev/null +++ b/gas/testsuite/gas/aarch64/sve-bfscale-bad.s @@ -0,0 +1,27 @@ +bfscale: + bfscale z0.h, p0/m, z1.h, z0.h + bfscale z0.h, p0/z, z0.h, z0.h + bfscale {z0.h-z1.h}, {z0.h-z2.h}, z0.h + bfscale {z0.h-z2.h}, {z0.h-z2.h}, z0.h + bfscale {z0.h-z4.h}, {z0.h-z4.h}, z0.h + bfscale {z0.h-z1.h}, {z0.h-z2.h}, {z0.h-z1.h} + bfscale {z0.h-z2.h}, {z0.h-z2.h}, {z0.h-z1.h} + bfscale {z0.h-z4.h}, {z0.h-z4.h}, {z0.h-z1.h} + bfscale {z0.h-z1.h}, {z0.h-z1.h}, {z0.h-z2.h} + bfscale {z0.h-z3.h}, {z0.h-z3.h}, {z0.h-z1.h} + bfscale {z0.h-z3.h}, {z0.h-z3.h}, {z0.h-z4.h} + +bfmul: + bfmul {z0.h-z1.h}, {z0.h-z2.h}, z0.h + bfmul {z0.h-z2.h}, {z0.h-z1.h}, z0.h + bfmul {z0.h-z3.h}, {z0.h-z2.h}, z0.h + bfmul {z0.h-z3.h}, {z0.h-z1.h}, z0.h + bfmul {z0.h-z1.h}, {z0.h-z1.h}, z16.h + bfmul {z0.h-z3.h}, {z0.h-z3.h}, z16.h + bfmul {z0.h-z1.h}, {z0.h-z2.h}, {z0.h-z1.h} + bfmul {z0.h-z2.h}, {z0.h-z1.h}, {z0.h-z1.h} + bfmul {z0.h-z3.h}, {z0.h-z2.h}, {z0.h-z3.h} + bfmul {z0.h-z3.h}, {z0.h-z1.h}, {z0.h-z3.h} + bfmul {z0.h-z1.h}, {z0.h-z1.h}, {z0.h-z2.h} + bfmul {z0.h-z3.h}, {z0.h-z3.h}, {z0.h-z2.h} + bfmul {z0.h-z3.h}, {z0.h-z3.h}, {z0.h-z3.h} diff --git a/gas/testsuite/gas/aarch64/sve-bfscale-sme2-bad.d b/gas/testsuite/gas/aarch64/sve-bfscale-sme2-bad.d new file mode 100644 index 0000000..ad6d365 --- /dev/null +++ b/gas/testsuite/gas/aarch64/sve-bfscale-sme2-bad.d @@ -0,0 +1,4 @@ +#name: Negative SVE_BFSCALE test with missing +sme2 flag. +#as: -march=armv8-a+sve-bfscale +#source: sve-bfscale-sme2.s +#error_output: sve-bfscale-sme2-bad.l diff --git a/gas/testsuite/gas/aarch64/sve-bfscale-sme2-bad.l b/gas/testsuite/gas/aarch64/sve-bfscale-sme2-bad.l new file mode 100644 index 0000000..79ae851 --- /dev/null +++ b/gas/testsuite/gas/aarch64/sve-bfscale-sme2-bad.l @@ -0,0 +1,41 @@ +[^ :]+: Assembler messages: +[^ :]+:[0-9]+: Error: selected processor does not support `bfscale z0\.h,p0/m,z0\.h,z0\.h' +[^ :]+:[0-9]+: Error: selected processor does not support `bfscale z0\.h,p0/m,z0\.h,z31\.h' +[^ :]+:[0-9]+: Error: selected processor does not support `bfscale z0\.h,p7/m,z0\.h,z0\.h' +[^ :]+:[0-9]+: Error: selected processor does not support `bfscale z0\.h,p7/m,z0\.h,z31\.h' +[^ :]+:[0-9]+: Error: selected processor does not support `bfscale z31\.h,p0/m,z31\.h,z0\.h' +[^ :]+:[0-9]+: Error: selected processor does not support `bfscale z31\.h,p0/m,z31\.h,z31\.h' +[^ :]+:[0-9]+: Error: selected processor does not support `bfscale z31\.h,p7/m,z31\.h,z0\.h' +[^ :]+:[0-9]+: Error: selected processor does not support `bfscale z31\.h,p7/m,z31\.h,z31\.h' +[^ :]+:[0-9]+: Error: selected processor does not support `bfscale { ?z0\.h-z1\.h ?},{ ?z0\.h-z1\.h ?},z0\.h' +[^ :]+:[0-9]+: Error: selected processor does not support `bfscale { ?z0\.h-z1\.h ?},{ ?z0\.h-z1\.h ?},z15\.h' +[^ :]+:[0-9]+: Error: selected processor does not support `bfscale { ?z30\.h-z31\.h ?},{ ?z30\.h-z31\.h ?},z0\.h' +[^ :]+:[0-9]+: Error: selected processor does not support `bfscale { ?z30\.h-z31\.h ?},{ ?z30\.h-z31\.h ?},z15\.h' +[^ :]+:[0-9]+: Error: selected processor does not support `bfscale { ?z0\.h-z3\.h ?},{ ?z0\.h-z3\.h ?},z0\.h' +[^ :]+:[0-9]+: Error: selected processor does not support `bfscale { ?z0\.h-z3\.h ?},{ ?z0\.h-z3\.h ?},z15\.h' +[^ :]+:[0-9]+: Error: selected processor does not support `bfscale { ?z28\.h-z31\.h ?},{ ?z28\.h-z31\.h ?},z0\.h' +[^ :]+:[0-9]+: Error: selected processor does not support `bfscale { ?z28\.h-z31\.h ?},{ ?z28\.h-z31\.h ?},z15\.h' +[^ :]+:[0-9]+: Error: selected processor does not support `bfscale { ?z0\.h-z1\.h ?},{ ?z0\.h-z1\.h ?},{ ?z0\.h-z1\.h ?}' +[^ :]+:[0-9]+: Error: selected processor does not support `bfscale { ?z0\.h-z1\.h ?},{ ?z0\.h-z1\.h ?},{ ?z30\.h-z31\.h ?}' +[^ :]+:[0-9]+: Error: selected processor does not support `bfscale { ?z30\.h-z31\.h ?},{ ?z30\.h-z31\.h ?},{ ?z0\.h-z1\.h ?}' +[^ :]+:[0-9]+: Error: selected processor does not support `bfscale { ?z30\.h-z31\.h ?},{ ?z30\.h-z31\.h ?},{ ?z30\.h-z31\.h ?}' +[^ :]+:[0-9]+: Error: selected processor does not support `bfscale { ?z0\.h-z3\.h ?},{ ?z0\.h-z3\.h ?},{ ?z0\.h-z3\.h ?}' +[^ :]+:[0-9]+: Error: selected processor does not support `bfscale { ?z0\.h-z3\.h ?},{ ?z0\.h-z3\.h ?},{ ?z28\.h-z31\.h ?}' +[^ :]+:[0-9]+: Error: selected processor does not support `bfscale { ?z28\.h-z31\.h ?},{ ?z28\.h-z31\.h ?},{ ?z0\.h-z3\.h ?}' +[^ :]+:[0-9]+: Error: selected processor does not support `bfscale { ?z28\.h-z31\.h ?},{ ?z28\.h-z31\.h ?},{ ?z28\.h-z31\.h ?}' +[^ :]+:[0-9]+: Error: selected processor does not support `bfmul { ?z0\.h-z1\.h ?},{ ?z0\.h-z1\.h ?},z0\.h' +[^ :]+:[0-9]+: Error: selected processor does not support `bfmul { ?z0\.h-z1\.h ?},{ ?z0\.h-z1\.h ?},z15\.h' +[^ :]+:[0-9]+: Error: selected processor does not support `bfmul { ?z30\.h-z31\.h ?},{ ?z30\.h-z31\.h ?},z0\.h' +[^ :]+:[0-9]+: Error: selected processor does not support `bfmul { ?z30\.h-z31\.h ?},{ ?z30\.h-z31\.h ?},z15\.h' +[^ :]+:[0-9]+: Error: selected processor does not support `bfmul { ?z0\.h-z3\.h ?},{ ?z0\.h-z3\.h ?},z0\.h' +[^ :]+:[0-9]+: Error: selected processor does not support `bfmul { ?z0\.h-z3\.h ?},{ ?z0\.h-z3\.h ?},z15\.h' +[^ :]+:[0-9]+: Error: selected processor does not support `bfmul { ?z28\.h-z31\.h ?},{ ?z28\.h-z31\.h ?},z0\.h' +[^ :]+:[0-9]+: Error: selected processor does not support `bfmul { ?z28\.h-z31\.h ?},{ ?z28\.h-z31\.h ?},z15\.h' +[^ :]+:[0-9]+: Error: selected processor does not support `bfmul { ?z0\.h-z1\.h ?},{ ?z0\.h-z1\.h ?},{ ?z0\.h-z1\.h ?}' +[^ :]+:[0-9]+: Error: selected processor does not support `bfmul { ?z0\.h-z1\.h ?},{ ?z0\.h-z1\.h ?},{ ?z30\.h-z31\.h ?}' +[^ :]+:[0-9]+: Error: selected processor does not support `bfmul { ?z30\.h-z31\.h ?},{ ?z30\.h-z31\.h ?},{ ?z0\.h-z1\.h ?}' +[^ :]+:[0-9]+: Error: selected processor does not support `bfmul { ?z30\.h-z31\.h ?},{ ?z30\.h-z31\.h ?},{ ?z30\.h-z31\.h ?}' +[^ :]+:[0-9]+: Error: selected processor does not support `bfmul { ?z0\.h-z3\.h ?},{ ?z0\.h-z3\.h ?},{ ?z0\.h-z3\.h ?}' +[^ :]+:[0-9]+: Error: selected processor does not support `bfmul { ?z0\.h-z3\.h ?},{ ?z0\.h-z3\.h ?},{ ?z28\.h-z31\.h ?}' +[^ :]+:[0-9]+: Error: selected processor does not support `bfmul { ?z28\.h-z31\.h ?},{ ?z28\.h-z31\.h ?},{ ?z0\.h-z3\.h ?}' +[^ :]+:[0-9]+: Error: selected processor does not support `bfmul { ?z28\.h-z31\.h ?},{ ?z28\.h-z31\.h ?},{ ?z28\.h-z31\.h ?}' diff --git a/gas/testsuite/gas/aarch64/sve-bfscale-sme2.d b/gas/testsuite/gas/aarch64/sve-bfscale-sme2.d new file mode 100644 index 0000000..84b7647 --- /dev/null +++ b/gas/testsuite/gas/aarch64/sve-bfscale-sme2.d @@ -0,0 +1,66 @@ +#name: SVE_BFSCALE + SME2 instructions test +#as: -march=armv8-a+sve-bfscale+sme2 +#objdump: -dr + +.*: file format .* + + +Disassembly of section .*: + +.* <bfscale>: +.*: 65098000 bfscale z0.h, p0/m, z0.h, z0.h +.*: 650983e0 bfscale z0.h, p0/m, z0.h, z31.h +.*: 65099c00 bfscale z0.h, p7/m, z0.h, z0.h +.*: 65099fe0 bfscale z0.h, p7/m, z0.h, z31.h +.*: 6509801f bfscale z31.h, p0/m, z31.h, z0.h +.*: 650983ff bfscale z31.h, p0/m, z31.h, z31.h +.*: 65099c1f bfscale z31.h, p7/m, z31.h, z0.h +.*: 65099fff bfscale z31.h, p7/m, z31.h, z31.h + +.* <bfscale_2x1>: +.*: c120a180 bfscale {z0.h-z1.h}, {z0.h-z1.h}, z0.h +.*: c12fa180 bfscale {z0.h-z1.h}, {z0.h-z1.h}, z15.h +.*: c120a19e bfscale {z30.h-z31.h}, {z30.h-z31.h}, z0.h +.*: c12fa19e bfscale {z30.h-z31.h}, {z30.h-z31.h}, z15.h + +.* <bfscale_4x1>: +.*: c120a980 bfscale {z0.h-z3.h}, {z0.h-z3.h}, z0.h +.*: c12fa980 bfscale {z0.h-z3.h}, {z0.h-z3.h}, z15.h +.*: c120a99c bfscale {z28.h-z31.h}, {z28.h-z31.h}, z0.h +.*: c12fa99c bfscale {z28.h-z31.h}, {z28.h-z31.h}, z15.h + +.* <bfscale_2x2>: +.*: c120b180 bfscale {z0.h-z1.h}, {z0.h-z1.h}, {z0.h-z1.h} +.*: c13eb180 bfscale {z0.h-z1.h}, {z0.h-z1.h}, {z30.h-z31.h} +.*: c120b19e bfscale {z30.h-z31.h}, {z30.h-z31.h}, {z0.h-z1.h} +.*: c13eb19e bfscale {z30.h-z31.h}, {z30.h-z31.h}, {z30.h-z31.h} + +.* <bfscale_4x4>: +.*: c120b980 bfscale {z0.h-z3.h}, {z0.h-z3.h}, {z0.h-z3.h} +.*: c13cb980 bfscale {z0.h-z3.h}, {z0.h-z3.h}, {z28.h-z31.h} +.*: c120b99c bfscale {z28.h-z31.h}, {z28.h-z31.h}, {z0.h-z3.h} +.*: c13cb99c bfscale {z28.h-z31.h}, {z28.h-z31.h}, {z28.h-z31.h} + +.* <bfmul_2x1>: +.*: c120e800 bfmul {z0.h-z1.h}, {z0.h-z1.h}, z0.h +.*: c13ee800 bfmul {z0.h-z1.h}, {z0.h-z1.h}, z15.h +.*: c120ebde bfmul {z30.h-z31.h}, {z30.h-z31.h}, z0.h +.*: c13eebde bfmul {z30.h-z31.h}, {z30.h-z31.h}, z15.h + +.* <bfmul_4x1>: +.*: c121e800 bfmul {z0.h-z3.h}, {z0.h-z3.h}, z0.h +.*: c13fe800 bfmul {z0.h-z3.h}, {z0.h-z3.h}, z15.h +.*: c121eb9c bfmul {z28.h-z31.h}, {z28.h-z31.h}, z0.h +.*: c13feb9c bfmul {z28.h-z31.h}, {z28.h-z31.h}, z15.h + +.* <bfmul_2x2>: +.*: c120e400 bfmul {z0.h-z1.h}, {z0.h-z1.h}, {z0.h-z1.h} +.*: c13ee400 bfmul {z0.h-z1.h}, {z0.h-z1.h}, {z30.h-z31.h} +.*: c120e7de bfmul {z30.h-z31.h}, {z30.h-z31.h}, {z0.h-z1.h} +.*: c13ee7de bfmul {z30.h-z31.h}, {z30.h-z31.h}, {z30.h-z31.h} + +.* <bfmul_4x4>: +.*: c121e400 bfmul {z0.h-z3.h}, {z0.h-z3.h}, {z0.h-z3.h} +.*: c13de400 bfmul {z0.h-z3.h}, {z0.h-z3.h}, {z28.h-z31.h} +.*: c121e79c bfmul {z28.h-z31.h}, {z28.h-z31.h}, {z0.h-z3.h} +.*: c13de79c bfmul {z28.h-z31.h}, {z28.h-z31.h}, {z28.h-z31.h} diff --git a/gas/testsuite/gas/aarch64/sve-bfscale-sme2.s b/gas/testsuite/gas/aarch64/sve-bfscale-sme2.s new file mode 100644 index 0000000..46bc6c6 --- /dev/null +++ b/gas/testsuite/gas/aarch64/sve-bfscale-sme2.s @@ -0,0 +1,57 @@ +bfscale: + bfscale z0.h, p0/m, z0.h, z0.h + bfscale z0.h, p0/m, z0.h, z31.h + bfscale z0.h, p7/m, z0.h, z0.h + bfscale z0.h, p7/m, z0.h, z31.h + bfscale z31.h, p0/m, z31.h, z0.h + bfscale z31.h, p0/m, z31.h, z31.h + bfscale z31.h, p7/m, z31.h, z0.h + bfscale z31.h, p7/m, z31.h, z31.h + +bfscale_2x1: + bfscale {z0.h-z1.h}, {z0.h-z1.h}, z0.h + bfscale {z0.h-z1.h}, {z0.h-z1.h}, z15.h + bfscale {z30.h-z31.h}, {z30.h-z31.h}, z0.h + bfscale {z30.h-z31.h}, {z30.h-z31.h}, z15.h + +bfscale_4x1: + bfscale {z0.h-z3.h}, {z0.h-z3.h}, z0.h + bfscale {z0.h-z3.h}, {z0.h-z3.h}, z15.h + bfscale {z28.h-z31.h}, {z28.h-z31.h}, z0.h + bfscale {z28.h-z31.h}, {z28.h-z31.h}, z15.h + +bfscale_2x2: + bfscale {z0.h-z1.h}, {z0.h-z1.h}, {z0.h-z1.h} + bfscale {z0.h-z1.h}, {z0.h-z1.h}, {z30.h-z31.h} + bfscale {z30.h-z31.h}, {z30.h-z31.h}, {z0.h-z1.h} + bfscale {z30.h-z31.h}, {z30.h-z31.h}, {z30.h-z31.h} + +bfscale_4x4: + bfscale {z0.h-z3.h}, {z0.h-z3.h}, {z0.h-z3.h} + bfscale {z0.h-z3.h}, {z0.h-z3.h}, {z28.h-z31.h} + bfscale {z28.h-z31.h}, {z28.h-z31.h}, {z0.h-z3.h} + bfscale {z28.h-z31.h}, {z28.h-z31.h}, {z28.h-z31.h} + +bfmul_2x1: + bfmul {z0.h-z1.h}, {z0.h-z1.h}, z0.h + bfmul {z0.h-z1.h}, {z0.h-z1.h}, z15.h + bfmul {z30.h-z31.h}, {z30.h-z31.h}, z0.h + bfmul {z30.h-z31.h}, {z30.h-z31.h}, z15.h + +bfmul_4x1: + bfmul {z0.h-z3.h}, {z0.h-z3.h}, z0.h + bfmul {z0.h-z3.h}, {z0.h-z3.h}, z15.h + bfmul {z28.h-z31.h}, {z28.h-z31.h}, z0.h + bfmul {z28.h-z31.h}, {z28.h-z31.h}, z15.h + +bfmul_2x2: + bfmul {z0.h-z1.h}, {z0.h-z1.h}, {z0.h-z1.h} + bfmul {z0.h-z1.h}, {z0.h-z1.h}, {z30.h-z31.h} + bfmul {z30.h-z31.h}, {z30.h-z31.h}, {z0.h-z1.h} + bfmul {z30.h-z31.h}, {z30.h-z31.h}, {z30.h-z31.h} + +bfmul_4x4: + bfmul {z0.h-z3.h}, {z0.h-z3.h}, {z0.h-z3.h} + bfmul {z0.h-z3.h}, {z0.h-z3.h}, {z28.h-z31.h} + bfmul {z28.h-z31.h}, {z28.h-z31.h}, {z0.h-z3.h} + bfmul {z28.h-z31.h}, {z28.h-z31.h}, {z28.h-z31.h} diff --git a/gas/testsuite/gas/aarch64/sve-bfscale-sve2.d b/gas/testsuite/gas/aarch64/sve-bfscale-sve2.d new file mode 100644 index 0000000..874dda0 --- /dev/null +++ b/gas/testsuite/gas/aarch64/sve-bfscale-sve2.d @@ -0,0 +1,18 @@ +#name: FEAT_SVE_BFSCALE instruction test +#as: -march=armv8-a+sve-bfscale+sve2 +#objdump: -dr + +.*: file format .* + + +Disassembly of section .*: + +.* <bfscale>: +.*: 65098000 bfscale z0.h, p0/m, z0.h, z0.h +.*: 650983e0 bfscale z0.h, p0/m, z0.h, z31.h +.*: 65099c00 bfscale z0.h, p7/m, z0.h, z0.h +.*: 65099fe0 bfscale z0.h, p7/m, z0.h, z31.h +.*: 6509801f bfscale z31.h, p0/m, z31.h, z0.h +.*: 650983ff bfscale z31.h, p0/m, z31.h, z31.h +.*: 65099c1f bfscale z31.h, p7/m, z31.h, z0.h +.*: 65099fff bfscale z31.h, p7/m, z31.h, z31.h diff --git a/gas/testsuite/gas/aarch64/sve-bfscale-sve2.s b/gas/testsuite/gas/aarch64/sve-bfscale-sve2.s new file mode 100644 index 0000000..3315524 --- /dev/null +++ b/gas/testsuite/gas/aarch64/sve-bfscale-sve2.s @@ -0,0 +1,9 @@ +bfscale: + bfscale z0.h, p0/m, z0.h, z0.h + bfscale z0.h, p0/m, z0.h, z31.h + bfscale z0.h, p7/m, z0.h, z0.h + bfscale z0.h, p7/m, z0.h, z31.h + bfscale z31.h, p0/m, z31.h, z0.h + bfscale z31.h, p0/m, z31.h, z31.h + bfscale z31.h, p7/m, z31.h, z0.h + bfscale z31.h, p7/m, z31.h, z31.h diff --git a/gas/testsuite/gas/aarch64/sve-f16f32mm-bad.d b/gas/testsuite/gas/aarch64/sve-f16f32mm-bad.d new file mode 100644 index 0000000..3adce33 --- /dev/null +++ b/gas/testsuite/gas/aarch64/sve-f16f32mm-bad.d @@ -0,0 +1,4 @@ +#name: Illegal test of SVE_F16F32MM FMMLA instruction +#as: -march=armv8-a +#source: sve-f16f32mm.s +#error_output: sve-f16f32mm-bad.l diff --git a/gas/testsuite/gas/aarch64/sve-f16f32mm-bad.l b/gas/testsuite/gas/aarch64/sve-f16f32mm-bad.l new file mode 100644 index 0000000..bb95568 --- /dev/null +++ b/gas/testsuite/gas/aarch64/sve-f16f32mm-bad.l @@ -0,0 +1,9 @@ +[^:]*: Assembler messages: +.*: Error: selected processor does not support `fmmla z0.s,z0.h,z0.h' +.*: Error: selected processor does not support `fmmla z0.s,z0.h,z31.h' +.*: Error: selected processor does not support `fmmla z0.s,z31.h,z0.h' +.*: Error: selected processor does not support `fmmla z0.s,z31.h,z31.h' +.*: Error: selected processor does not support `fmmla z31.s,z0.h,z0.h' +.*: Error: selected processor does not support `fmmla z31.s,z0.h,z31.h' +.*: Error: selected processor does not support `fmmla z31.s,z31.h,z0.h' +.*: Error: selected processor does not support `fmmla z31.s,z31.h,z31.h' diff --git a/gas/testsuite/gas/aarch64/sve-f16f32mm.d b/gas/testsuite/gas/aarch64/sve-f16f32mm.d new file mode 100644 index 0000000..8b72bf2 --- /dev/null +++ b/gas/testsuite/gas/aarch64/sve-f16f32mm.d @@ -0,0 +1,18 @@ +#name: SVE_F16F32MM FMMLA instructions +#as: -march=armv8-a+sve-f16f32mm +#objdump: -dr + +.*: file format .* + + +Disassembly of section .*: + +.* <a>: +.*: 6420e400 fmmla z0.s, z0.h, z0.h +.*: 643fe400 fmmla z0.s, z0.h, z31.h +.*: 6420e7e0 fmmla z0.s, z31.h, z0.h +.*: 643fe7e0 fmmla z0.s, z31.h, z31.h +.*: 6420e41f fmmla z31.s, z0.h, z0.h +.*: 643fe41f fmmla z31.s, z0.h, z31.h +.*: 6420e7ff fmmla z31.s, z31.h, z0.h +.*: 643fe7ff fmmla z31.s, z31.h, z31.h diff --git a/gas/testsuite/gas/aarch64/sve-f16f32mm.s b/gas/testsuite/gas/aarch64/sve-f16f32mm.s new file mode 100644 index 0000000..4979258 --- /dev/null +++ b/gas/testsuite/gas/aarch64/sve-f16f32mm.s @@ -0,0 +1,9 @@ +a: + fmmla z0.s, z0.h, z0.h + fmmla z0.s, z0.h, z31.h + fmmla z0.s, z31.h, z0.h + fmmla z0.s, z31.h, z31.h + fmmla z31.s, z0.h, z0.h + fmmla z31.s, z0.h, z31.h + fmmla z31.s, z31.h, z0.h + fmmla z31.s, z31.h, z31.h diff --git a/gas/testsuite/gas/aarch64/sve-ldff1-invalid.d b/gas/testsuite/gas/aarch64/sve-ldff1-invalid.d new file mode 100644 index 0000000..07fac45 --- /dev/null +++ b/gas/testsuite/gas/aarch64/sve-ldff1-invalid.d @@ -0,0 +1,4 @@ +#as: -march=armv8-a+sve +#source: sve-ldff1-invalid.s +#error_output: sve-ldff1-invalid.l + diff --git a/gas/testsuite/gas/aarch64/sve-ldff1-invalid.l b/gas/testsuite/gas/aarch64/sve-ldff1-invalid.l new file mode 100644 index 0000000..3f101f1 --- /dev/null +++ b/gas/testsuite/gas/aarch64/sve-ldff1-invalid.l @@ -0,0 +1,58 @@ +[^:]*: Assembler messages: +.*: Error: operand mismatch -- `ldff1b {z1\.b},p1/z,\[z1\.d\]' +.*: Info: did you mean this\? +.*: Info: ldff1b {z1\.d}, p1/z, \[z1\.d\] +.*: Error: operand mismatch -- `ldff1b {z1\.h},p1/z,\[z1\.s\]' +.*: Info: did you mean this\? +.*: Info: ldff1b {z1\.s}, p1/z, \[z1\.s\] +.*: Error: operand mismatch -- `ldff1b {z1\.s},p1/z,\[z1\.d\]' +.*: Info: did you mean this\? +.*: Info: ldff1b {z1\.s}, p1/z, \[z1\.s\] +.*: Error: operand mismatch -- `ldff1b {z1\.d},p1/z,\[z1\.s\]' +.*: Info: did you mean this\? +.*: Info: ldff1b {z1\.s}, p1/z, \[z1\.s\] +.*: Error: operand mismatch -- `ldff1d {z1\.d},p1/z,\[z1\.s\]' +.*: Info: did you mean this\? +.*: Info: ldff1d {z1\.d}, p1/z, \[z1\.d\] +.*: Error: operand mismatch -- `ldff1h {z1\.h},p1/z,\[z1\.s\]' +.*: Info: did you mean this\? +.*: Info: ldff1h {z1\.s}, p1/z, \[z1\.s\] +.*: Error: operand mismatch -- `ldff1h {z1\.s},p1/z,\[z1\.d\]' +.*: Info: did you mean this\? +.*: Info: ldff1h {z1\.s}, p1/z, \[z1\.s\] +.*: Error: operand mismatch -- `ldff1h {z1\.d},p1/z,\[z1\.s\]' +.*: Info: did you mean this\? +.*: Info: ldff1h {z1\.s}, p1/z, \[z1\.s\] +.*: Error: operand mismatch -- `ldff1sb {z1\.h},p1/z,\[z1\.d\]' +.*: Info: did you mean this\? +.*: Info: ldff1sb {z1\.d}, p1/z, \[z1\.d\] +.*: Error: operand mismatch -- `ldff1sb {z1\.s},p1/z,\[z1\.d\]' +.*: Info: did you mean this\? +.*: Info: ldff1sb {z1\.s}, p1/z, \[z1\.s\] +.*: Error: operand mismatch -- `ldff1sb {z1\.d},p1/z,\[z1\.s\]' +.*: Info: did you mean this\? +.*: Info: ldff1sb {z1\.s}, p1/z, \[z1\.s\] +.*: Error: operand mismatch -- `ldff1sh {z1\.s},p1/z,\[z1\.d\]' +.*: Info: did you mean this\? +.*: Info: ldff1sh {z1\.s}, p1/z, \[z1\.s\] +.*: Error: operand mismatch -- `ldff1sh {z1\.d},p1/z,\[z1\.s\]' +.*: Info: did you mean this\? +.*: Info: ldff1sh {z1\.s}, p1/z, \[z1\.s\] +.*: Error: operand mismatch -- `ldff1sw {z1\.d},p1/z,\[z1\.s\]' +.*: Info: did you mean this\? +.*: Info: ldff1sw {z1\.d}, p1/z, \[z1\.d\] +.*: Error: operand mismatch -- `ldff1w {z1\.s},p1/z,\[z1\.d\]' +.*: Info: did you mean this\? +.*: Info: ldff1w {z1\.s}, p1/z, \[z1\.s\] +.*: Error: operand mismatch -- `ldff1w {z1\.d},p1/z,\[z1\.s\]' +.*: Info: did you mean this\? +.*: Info: ldff1w {z1\.s}, p1/z, \[z1\.s\] +.*: Error: invalid addressing mode at operand 3 -- `ldff1d {z1\.d},p1/z,\[x1,x1\]' +.*: Error: invalid addressing mode at operand 3 -- `ldff1h {z1\.h},p1/z,\[x1,x1\]' +.*: Error: invalid addressing mode at operand 3 -- `ldff1h {z1\.s},p1/z,\[x1,x1\]' +.*: Error: invalid addressing mode at operand 3 -- `ldff1h {z1\.d},p1/z,\[x1,x1\]' +.*: Error: invalid addressing mode at operand 3 -- `ldff1sh {z1\.s},p1/z,\[x1,x1\]' +.*: Error: invalid addressing mode at operand 3 -- `ldff1sh {z1\.d},p1/z,\[x1,x1\]' +.*: Error: invalid addressing mode at operand 3 -- `ldff1sw {z1\.d},p1/z,\[x1,x1\]' +.*: Error: invalid addressing mode at operand 3 -- `ldff1w {z1\.s},p1/z,\[x1,x1\]' +.*: Error: invalid addressing mode at operand 3 -- `ldff1w {z1\.d},p1/z,\[x1,x1\]' diff --git a/gas/testsuite/gas/aarch64/sve-ldff1-invalid.s b/gas/testsuite/gas/aarch64/sve-ldff1-invalid.s new file mode 100644 index 0000000..ba56f03 --- /dev/null +++ b/gas/testsuite/gas/aarch64/sve-ldff1-invalid.s @@ -0,0 +1,35 @@ +// The fix for PR22988 accidentally allowed invalid addressing mode +// ldff1b z1.d, p1/z, [z1.d] +// which was parsed equivalently to the valid instruction: +// ldff1b z1.d, p1/z, [x1.d, xzr]; +// and +// ldff1h{z1.s}, p1/z, [x1, x1] +// which was parsed as: +// ldff1h{z1.s}, p1/z, [x1, x1, lsl #1] + + ldff1b {z1.b}, p1/z, [z1.d] + ldff1b {z1.h}, p1/z, [z1.s] + ldff1b {z1.s}, p1/z, [z1.d] + ldff1b {z1.d}, p1/z, [z1.s] + ldff1d {z1.d}, p1/z, [z1.s] + ldff1h {z1.h}, p1/z, [z1.s] + ldff1h {z1.s}, p1/z, [z1.d] + ldff1h {z1.d}, p1/z, [z1.s] + ldff1sb {z1.h}, p1/z, [z1.d] + ldff1sb {z1.s}, p1/z, [z1.d] + ldff1sb {z1.d}, p1/z, [z1.s] + ldff1sh {z1.s}, p1/z, [z1.d] + ldff1sh {z1.d}, p1/z, [z1.s] + ldff1sw {z1.d}, p1/z, [z1.s] + ldff1w {z1.s}, p1/z, [z1.d] + ldff1w {z1.d}, p1/z, [z1.s] + + ldff1d {z1.d}, p1/z, [x1, x1] + ldff1h {z1.h}, p1/z, [x1, x1] + ldff1h {z1.s}, p1/z, [x1, x1] + ldff1h {z1.d}, p1/z, [x1, x1] + ldff1sh {z1.s}, p1/z, [x1, x1] + ldff1sh {z1.d}, p1/z, [x1, x1] + ldff1sw {z1.d}, p1/z, [x1, x1] + ldff1w {z1.s}, p1/z, [x1, x1] + ldff1w {z1.d}, p1/z, [x1, x1] diff --git a/gas/testsuite/gas/aarch64/sysreg/armv9_3-a-sme-sysregs.d b/gas/testsuite/gas/aarch64/sysreg/armv9_3-a-sme-sysregs.d new file mode 100644 index 0000000..a40995c --- /dev/null +++ b/gas/testsuite/gas/aarch64/sysreg/armv9_3-a-sme-sysregs.d @@ -0,0 +1,10 @@ +#as: -march=armv9.3-a+sme +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0+ <.*>: +.*: d538a5e0 mrs x0, mpambwsm_el1 +.*: d518a5e0 msr mpambwsm_el1, x0 diff --git a/gas/testsuite/gas/aarch64/sysreg/armv9_3-a-sme-sysregs.s b/gas/testsuite/gas/aarch64/sysreg/armv9_3-a-sme-sysregs.s new file mode 100644 index 0000000..e5ac128 --- /dev/null +++ b/gas/testsuite/gas/aarch64/sysreg/armv9_3-a-sme-sysregs.s @@ -0,0 +1,2 @@ + mrs x0, mpambwsm_el1 + msr mpambwsm_el1, x0 diff --git a/gas/testsuite/gas/aarch64/sysreg/armv9_3-a-sysregs.d b/gas/testsuite/gas/aarch64/sysreg/armv9_3-a-sysregs.d new file mode 100644 index 0000000..46a05d2 --- /dev/null +++ b/gas/testsuite/gas/aarch64/sysreg/armv9_3-a-sysregs.d @@ -0,0 +1,21 @@ +#as: -march=armv9.3-a +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0+ <.*>: +[^:]+:\s+d538a5a0 mrs x0, mpambw0_el1 +[^:]+:\s+d518a5a0 msr mpambw0_el1, x0 +[^:]+:\s+d538a580 mrs x0, mpambw1_el1 +[^:]+:\s+d518a580 msr mpambw1_el1, x0 +[^:]+:\s+d53da580 mrs x0, mpambw1_el12 +[^:]+:\s+d51da580 msr mpambw1_el12, x0 +[^:]+:\s+d53ca580 mrs x0, mpambw2_el2 +[^:]+:\s+d51ca580 msr mpambw2_el2, x0 +[^:]+:\s+d53ea580 mrs x0, mpambw3_el3 +[^:]+:\s+d51ea580 msr mpambw3_el3, x0 +[^:]+:\s+d53ca5c0 mrs x0, mpambwcap_el2 +[^:]+:\s+d51ca5c0 msr mpambwcap_el2, x0 +[^:]+:\s+d538a4a0 mrs x0, mpambwidr_el1 diff --git a/gas/testsuite/gas/aarch64/sysreg/armv9_3-a-sysregs.s b/gas/testsuite/gas/aarch64/sysreg/armv9_3-a-sysregs.s new file mode 100644 index 0000000..546bdbf --- /dev/null +++ b/gas/testsuite/gas/aarch64/sysreg/armv9_3-a-sysregs.s @@ -0,0 +1,13 @@ + mrs x0, mpambw0_el1 + msr mpambw0_el1, x0 + mrs x0, mpambw1_el1 + msr mpambw1_el1, x0 + mrs x0, mpambw1_el12 + msr mpambw1_el12, x0 + mrs x0, mpambw2_el2 + msr mpambw2_el2, x0 + mrs x0, mpambw3_el3 + msr mpambw3_el3, x0 + mrs x0, mpambwcap_el2 + msr mpambwcap_el2, x0 + mrs x0, mpambwidr_el1 diff --git a/gas/testsuite/gas/aarch64/sysreg/mpam-bad.d b/gas/testsuite/gas/aarch64/sysreg/mpam-bad.d new file mode 100644 index 0000000..c3ec372 --- /dev/null +++ b/gas/testsuite/gas/aarch64/sysreg/mpam-bad.d @@ -0,0 +1,3 @@ +#as: -march=armv9.3-a +#source: mpam-bad.s +#error_output: mpam-bad.l diff --git a/gas/testsuite/gas/aarch64/sysreg/mpam-bad.l b/gas/testsuite/gas/aarch64/sysreg/mpam-bad.l new file mode 100644 index 0000000..34e9197 --- /dev/null +++ b/gas/testsuite/gas/aarch64/sysreg/mpam-bad.l @@ -0,0 +1,4 @@ +.*: Assembler messages: +.*: Warning: specified register cannot be written to at operand 1 -- `msr mpambwidr_el1,x0' +.*: Error: selected processor does not support system register name 'mpambwsm_el1' +.*: Error: selected processor does not support system register name 'mpambwsm_el1' diff --git a/gas/testsuite/gas/aarch64/sysreg/mpam-bad.s b/gas/testsuite/gas/aarch64/sysreg/mpam-bad.s new file mode 100644 index 0000000..2a0f94f --- /dev/null +++ b/gas/testsuite/gas/aarch64/sysreg/mpam-bad.s @@ -0,0 +1,6 @@ +/* This is read-only register */ +msr mpambwidr_el1, x0 + +/* This register is not available without +sme flag */ +mrs x0, mpambwsm_el1 +msr mpambwsm_el1, x0 diff --git a/gas/testsuite/gas/aarch64/sysreg/pops-sysregs-bad.d b/gas/testsuite/gas/aarch64/sysreg/pops-sysregs-bad.d new file mode 100644 index 0000000..61a6b21 --- /dev/null +++ b/gas/testsuite/gas/aarch64/sysreg/pops-sysregs-bad.d @@ -0,0 +1,3 @@ +#source: pops-sysregs-bad.s +#as: -I$srcdir/$subdir +#error_output: pops-sysregs-bad.l diff --git a/gas/testsuite/gas/aarch64/sysreg/pops-sysregs-bad.l b/gas/testsuite/gas/aarch64/sysreg/pops-sysregs-bad.l new file mode 100644 index 0000000..510bf3a --- /dev/null +++ b/gas/testsuite/gas/aarch64/sysreg/pops-sysregs-bad.l @@ -0,0 +1,8 @@ +.*: Assembler messages: +.*: Error: selected processor does not support system register name 'cigdvaps' +.*: Error: selected processor does not support system register name 'civaps' +.*: Error: selected processor does not support system register name 'cigdvaps' +.*: Error: selected processor does not support system register name 'civaps' +.*: Error: selected processor does not support system register name 'cigdvaps' +.*: Error: comma expected between operands at operand 2 -- `dc civaps' +.*: Error: comma expected between operands at operand 2 -- `dc cigdvaps' diff --git a/gas/testsuite/gas/aarch64/sysreg/pops-sysregs-bad.s b/gas/testsuite/gas/aarch64/sysreg/pops-sysregs-bad.s new file mode 100644 index 0000000..2783272 --- /dev/null +++ b/gas/testsuite/gas/aarch64/sysreg/pops-sysregs-bad.s @@ -0,0 +1,20 @@ + .arch armv8-a+memtag + dc cigdvaps, x19 + + .arch armv8-a+memtag + dc civaps, x20 + + .arch armv8-a+pops + dc cigdvaps, x21 + + .arch armv8-a + dc civaps, x22 + + .arch armv8-a + dc cigdvaps, x23 + + .arch armv8-a+pops + dc civaps + + .arch armv8-a+memtag+pops + dc cigdvaps diff --git a/gas/testsuite/gas/aarch64/sysreg/pops-sysregs.d b/gas/testsuite/gas/aarch64/sysreg/pops-sysregs.d new file mode 100644 index 0000000..db04ab8 --- /dev/null +++ b/gas/testsuite/gas/aarch64/sysreg/pops-sysregs.d @@ -0,0 +1,12 @@ +#source: pops-sysregs.s +#as: -I$srcdir/$subdir +#objdump: -dr + +[^:]+: file format .* + + +[^:]+: + +[^:]+: +.*: d5087fb3 dc cigdvaps, x19 +.*: d5087f34 dc civaps, x20 diff --git a/gas/testsuite/gas/aarch64/sysreg/pops-sysregs.s b/gas/testsuite/gas/aarch64/sysreg/pops-sysregs.s new file mode 100644 index 0000000..7da4dc9 --- /dev/null +++ b/gas/testsuite/gas/aarch64/sysreg/pops-sysregs.s @@ -0,0 +1,7 @@ + .arch armv8-a+memtag+pops + + dc cigdvaps, x19 + + .arch armv8-a+pops + + dc civaps, x20 diff --git a/gas/testsuite/gas/aarch64/sysreg/sysreg-10-bad.d b/gas/testsuite/gas/aarch64/sysreg/sysreg-10-bad.d new file mode 100644 index 0000000..628de52 --- /dev/null +++ b/gas/testsuite/gas/aarch64/sysreg/sysreg-10-bad.d @@ -0,0 +1,3 @@ +#source: sysreg-10.s +#as: -march=armv8.7-a -I$srcdir/$subdir +#error_output: sysreg-10-bad.l diff --git a/gas/testsuite/gas/aarch64/sysreg/sysreg-10-bad.l b/gas/testsuite/gas/aarch64/sysreg/sysreg-10-bad.l new file mode 100644 index 0000000..c3387cb --- /dev/null +++ b/gas/testsuite/gas/aarch64/sysreg/sysreg-10-bad.l @@ -0,0 +1,3 @@ +.*: Assembler messages: +.*: Error: selected processor does not support system register name 'hfgitr2_el2' +.*: Error: selected processor does not support system register name 'hfgitr2_el2' diff --git a/gas/testsuite/gas/aarch64/sysreg/sysreg-10.d b/gas/testsuite/gas/aarch64/sysreg/sysreg-10.d new file mode 100644 index 0000000..f07df91 --- /dev/null +++ b/gas/testsuite/gas/aarch64/sysreg/sysreg-10.d @@ -0,0 +1,12 @@ +#source: sysreg-10.s +#as: -march=armv8.8-a -I$srcdir/$subdir +#objdump: -dr + +[^:]+: file format .* + + +[^:]+: + +[^:]+: +.*: d53c31e0 mrs x0, hfgitr2_el2 +.*: d51c31e0 msr hfgitr2_el2, x0 diff --git a/gas/testsuite/gas/aarch64/sysreg/sysreg-10.s b/gas/testsuite/gas/aarch64/sysreg/sysreg-10.s new file mode 100644 index 0000000..bab7564 --- /dev/null +++ b/gas/testsuite/gas/aarch64/sysreg/sysreg-10.s @@ -0,0 +1,2 @@ + mrs x0, hfgitr2_el2 + msr hfgitr2_el2, x0 diff --git a/gas/testsuite/gas/aarch64/sysreg/sysreg-9-bad.d b/gas/testsuite/gas/aarch64/sysreg/sysreg-9-bad.d new file mode 100644 index 0000000..a1ebac6 --- /dev/null +++ b/gas/testsuite/gas/aarch64/sysreg/sysreg-9-bad.d @@ -0,0 +1,3 @@ +#source: sysreg-9-bad.s +#as: -I$srcdir/$subdir +#error_output: sysreg-9-bad.l diff --git a/gas/testsuite/gas/aarch64/sysreg/sysreg-9-bad.l b/gas/testsuite/gas/aarch64/sysreg/sysreg-9-bad.l new file mode 100644 index 0000000..b4874c2 --- /dev/null +++ b/gas/testsuite/gas/aarch64/sysreg/sysreg-9-bad.l @@ -0,0 +1,61 @@ +.*: Assembler messages: +.*: Error: selected processor does not support system register name 'pmbmar_el1' +.*: Info: macro invoked from here +.*: Error: selected processor does not support system register name 'pmbmar_el1' +.*: Info: macro invoked from here +.*: Error: selected processor does not support system register name 'pmbsr_el12' +.*: Info: macro invoked from here +.*: Error: selected processor does not support system register name 'pmbsr_el12' +.*: Info: macro invoked from here +.*: Error: selected processor does not support system register name 'pmbsr_el2' +.*: Info: macro invoked from here +.*: Error: selected processor does not support system register name 'pmbsr_el2' +.*: Info: macro invoked from here +.*: Error: selected processor does not support system register name 'pmbsr_el3' +.*: Info: macro invoked from here +.*: Error: selected processor does not support system register name 'pmbsr_el3' +.*: Info: macro invoked from here +.*: Error: selected processor does not support system register name 'pmbmar_el1' +.*: Info: macro invoked from here +.*: Error: selected processor does not support system register name 'pmbmar_el1' +.*: Info: macro invoked from here +.*: Error: selected processor does not support system register name 'pmbsr_el12' +.*: Info: macro invoked from here +.*: Error: selected processor does not support system register name 'pmbsr_el12' +.*: Info: macro invoked from here +.*: Error: selected processor does not support system register name 'pmbsr_el2' +.*: Info: macro invoked from here +.*: Error: selected processor does not support system register name 'pmbsr_el2' +.*: Info: macro invoked from here +.*: Error: selected processor does not support system register name 'pmbsr_el3' +.*: Info: macro invoked from here +.*: Error: selected processor does not support system register name 'pmbsr_el3' +.*: Info: macro invoked from here +.*: Error: selected processor does not support system register name 'pmbmar_el1' +.*: Info: macro invoked from here +.*: Error: selected processor does not support system register name 'pmbmar_el1' +.*: Info: macro invoked from here +.*: Error: selected processor does not support system register name 'pmbsr_el12' +.*: Info: macro invoked from here +.*: Error: selected processor does not support system register name 'pmbsr_el12' +.*: Info: macro invoked from here +.*: Error: selected processor does not support system register name 'pmbsr_el2' +.*: Info: macro invoked from here +.*: Error: selected processor does not support system register name 'pmbsr_el2' +.*: Info: macro invoked from here +.*: Error: selected processor does not support system register name 'pmbsr_el3' +.*: Info: macro invoked from here +.*: Error: selected processor does not support system register name 'pmbsr_el3' +.*: Info: macro invoked from here +.*: Error: selected processor does not support system register name 'trbsr_el12' +.*: Info: macro invoked from here +.*: Error: selected processor does not support system register name 'trbsr_el12' +.*: Info: macro invoked from here +.*: Error: selected processor does not support system register name 'trbsr_el2' +.*: Info: macro invoked from here +.*: Error: selected processor does not support system register name 'trbsr_el2' +.*: Info: macro invoked from here +.*: Error: selected processor does not support system register name 'trbsr_el3' +.*: Info: macro invoked from here +.*: Error: selected processor does not support system register name 'trbsr_el3' +.*: Info: macro invoked from here diff --git a/gas/testsuite/gas/aarch64/sysreg/sysreg-9-bad.s b/gas/testsuite/gas/aarch64/sysreg/sysreg-9-bad.s new file mode 100644 index 0000000..9429b44 --- /dev/null +++ b/gas/testsuite/gas/aarch64/sysreg/sysreg-9-bad.s @@ -0,0 +1,26 @@ +.include "sysreg-test-utils.inc" + +.text + +.arch armv9.4-a+profile +rw_sys_reg pmbmar_el1 +rw_sys_reg pmbsr_el12 +rw_sys_reg pmbsr_el2 +rw_sys_reg pmbsr_el3 + +.arch armv9.5-a +rw_sys_reg pmbmar_el1 +rw_sys_reg pmbsr_el12 +rw_sys_reg pmbsr_el2 +rw_sys_reg pmbsr_el3 + +.arch armv9.4-a +rw_sys_reg pmbmar_el1 +rw_sys_reg pmbsr_el12 +rw_sys_reg pmbsr_el2 +rw_sys_reg pmbsr_el3 + +.arch armv9.4-a +rw_sys_reg trbsr_el12 +rw_sys_reg trbsr_el2 +rw_sys_reg trbsr_el3 diff --git a/gas/testsuite/gas/aarch64/sysreg/sysreg-9.d b/gas/testsuite/gas/aarch64/sysreg/sysreg-9.d new file mode 100644 index 0000000..61b63ce --- /dev/null +++ b/gas/testsuite/gas/aarch64/sysreg/sysreg-9.d @@ -0,0 +1,25 @@ +#source: sysreg-9.s +#as: -I$srcdir/$subdir +#objdump: -dr + + +[^:]+: file format .* + + +[^:]+: + +[^:]+: +.*: d5189aa0 msr pmbmar_el1, x0 +.*: d5389aa0 mrs x0, pmbmar_el1 +.*: d51d9a60 msr pmbsr_el12, x0 +.*: d53d9a60 mrs x0, pmbsr_el12 +.*: d51c9a60 msr pmbsr_el2, x0 +.*: d53c9a60 mrs x0, pmbsr_el2 +.*: d51e9a60 msr pmbsr_el3, x0 +.*: d53e9a60 mrs x0, pmbsr_el3 +.*: d51d9b60 msr trbsr_el12, x0 +.*: d53d9b60 mrs x0, trbsr_el12 +.*: d51c9b60 msr trbsr_el2, x0 +.*: d53c9b60 mrs x0, trbsr_el2 +.*: d51e9b60 msr trbsr_el3, x0 +.*: d53e9b60 mrs x0, trbsr_el3 diff --git a/gas/testsuite/gas/aarch64/sysreg/sysreg-9.s b/gas/testsuite/gas/aarch64/sysreg/sysreg-9.s new file mode 100644 index 0000000..85a7335 --- /dev/null +++ b/gas/testsuite/gas/aarch64/sysreg/sysreg-9.s @@ -0,0 +1,14 @@ +.include "sysreg-test-utils.inc" + +.text + +.arch armv9.5-a+profile +rw_sys_reg pmbmar_el1 +rw_sys_reg pmbsr_el12 +rw_sys_reg pmbsr_el2 +rw_sys_reg pmbsr_el3 + +.arch armv9.5-a +rw_sys_reg trbsr_el12 +rw_sys_reg trbsr_el2 +rw_sys_reg trbsr_el3 diff --git a/gas/testsuite/gas/aarch64/sysreg/sysreg.d b/gas/testsuite/gas/aarch64/sysreg/sysreg.d index 4fa9f0d..9aba548 100644 --- a/gas/testsuite/gas/aarch64/sysreg/sysreg.d +++ b/gas/testsuite/gas/aarch64/sysreg/sysreg.d @@ -40,3 +40,5 @@ Disassembly of section \.text: .*: d5384b00 mrs x0, s3_0_c4_c11_0 .*: d5110300 msr trcstatr, x0 .*: d5310300 mrs x0, trcstatr +.*: d53804e0 mrs x0, id_aa64fpfr0_el1 +.*: d5380440 mrs x0, id_aa64pfr2_el1 diff --git a/gas/testsuite/gas/aarch64/sysreg/sysreg.s b/gas/testsuite/gas/aarch64/sysreg/sysreg.s index cf04614..cd33810 100644 --- a/gas/testsuite/gas/aarch64/sysreg/sysreg.s +++ b/gas/testsuite/gas/aarch64/sysreg/sysreg.s @@ -34,3 +34,5 @@ rw_sys_reg sys_reg=s3_0_c12_c15_0 w=0 rw_sys_reg sys_reg=s3_0_c4_c11_0 rw_sys_reg sys_reg=s2_1_c0_c3_0 + rw_sys_reg sys_reg=id_aa64fpfr0_el1 w=0 + rw_sys_reg sys_reg=id_aa64pfr2_el1 w=0 diff --git a/gas/testsuite/gas/aarch64/system.d b/gas/testsuite/gas/aarch64/system.d index c140077..8c1a113 100644 --- a/gas/testsuite/gas/aarch64/system.d +++ b/gas/testsuite/gas/aarch64/system.d @@ -8,12 +8,15 @@ Disassembly of section \.text: 0+ <.*>: .*: d6bf03e0 drps +.*: d69f03e0 eret .*: d503201f nop .*: d503203f yield .*: d503205f wfe .*: d503207f wfi .*: d503209f sev .*: d50320bf sevl +.*: d50320df dgh +.*: d503229f csdb .*: d50322df clrbhb .*: d503201f nop .*: d503203f yield @@ -21,7 +24,7 @@ Disassembly of section \.text: .*: d503207f wfi .*: d503209f sev .*: d50320bf sevl -.*: d50320df hint #0x6 +.*: d50320df dgh .*: d50320ff (hint #0x7|xpaclri) .*: d503211f (hint #0x8|pacia1716) .*: d503213f hint #0x9 diff --git a/gas/testsuite/gas/aarch64/system.s b/gas/testsuite/gas/aarch64/system.s index 9457b39..db35e7d 100644 --- a/gas/testsuite/gas/aarch64/system.s +++ b/gas/testsuite/gas/aarch64/system.s @@ -1,5 +1,6 @@ .text drps + eret // // HINTS @@ -11,6 +12,8 @@ wfi sev sevl + dgh + csdb clearbhb .macro all_hints from=0, to=127 diff --git a/gas/testsuite/gas/all/gas.exp b/gas/testsuite/gas/all/gas.exp index f8bab3c..780838d 100644 --- a/gas/testsuite/gas/all/gas.exp +++ b/gas/testsuite/gas/all/gas.exp @@ -330,21 +330,6 @@ switch -glob $target_triplet { } } -# This test is for any COFF target. -# We omit the ARM toolchains because they define locals to -# start with '.', which eliminates .eos, .text etc from the output. -# Omit c54x, since .tag and .def mean something different on that target -if { ([istarget *-*-coff*] && ![istarget *c4x*-*-coff] && ![istarget *c54x*-*-coff]) \ - ||([istarget *-*-pe*] && ![istarget arm*-*-pe*]) \ - || [istarget i*86-*-aix*] \ - || [istarget i*86-*-go32*] \ - || [istarget i*86-*-cygwin*] \ - || [istarget x86_64-*-mingw*] \ - || [istarget i*86-*-*nt] \ - || [istarget i*86-*-interix*] } { - run_dump_test cofftag -} - # Test omitting conditionals from listings. proc test_cond {} { global comp_output diff --git a/gas/testsuite/gas/all/octa.d b/gas/testsuite/gas/all/octa.d index e8eff2c..9c91206 100644 --- a/gas/testsuite/gas/all/octa.d +++ b/gas/testsuite/gas/all/octa.d @@ -14,3 +14,11 @@ Contents of section .data: [^ ]* (00000000 ffffffff ffffffff ffffffff|ffffffff ffffffff ffffffff 00000000) .* [^ ]* (00000080 ffffffff ffffffff ffffffff|ffffffff ffffffff ffffffff 80000000) .* [^ ]* (01000000 ffffffff ffffffff ffffffff|ffffffff ffffffff ffffffff 00000001) .* + [^ ]* (00000000 000000f0 ffffffff ffffffff|ffffffff ffffffff f0000000 00000000) .* + [^ ]* (00000000 00000010 00000000 00000000|00000000 00000000 10000000 00000000) .* + [^ ]* (ffffffff ffffffef ffffffff ffffffff|ffffffff ffffffff efffffff ffffffff) .* + [^ ]* (01000000 00000010 00000000 00000000|00000000 00000000 10000000 00000001) .* + [^ ]* (01000000 000000f0 ffffffff ffffffff|ffffffff ffffffff f0000000 00000001) .* + [^ ]* (feffffff ffffff0f 00000000 00000000|00000000 00000000 0fffffff fffffffe) .* + [^ ]* (02000000 000000f0 ffffffff ffffffff|ffffffff ffffffff f0000000 00000002) .* + [^ ]* (fdffffff ffffff0f 00000000 00000000|00000000 00000000 0fffffff fffffffd) .* diff --git a/gas/testsuite/gas/all/octa.s b/gas/testsuite/gas/all/octa.s index faa21fa..037941f 100644 --- a/gas/testsuite/gas/all/octa.s +++ b/gas/testsuite/gas/all/octa.s @@ -9,3 +9,13 @@ .octa ~0xffffffff .octa 0 - 0x80000000 .octa 0 - 0xffffffff + + .octa ~0xfffffffffffffff + .octa -~0xfffffffffffffff + .octa ~-~0xfffffffffffffff + .octa -~-~0xfffffffffffffff + + .octa -0xfffffffffffffff + .octa ~-0xfffffffffffffff + .octa -~-0xfffffffffffffff + .octa ~-~-0xfffffffffffffff diff --git a/gas/testsuite/gas/arm/attr-empty-string.d b/gas/testsuite/gas/arm/attr-empty-string.d new file mode 100644 index 0000000..b4a9141 --- /dev/null +++ b/gas/testsuite/gas/arm/attr-empty-string.d @@ -0,0 +1,10 @@ +# name: EABI attribute - empy string +# source: attr-empty-string.s +# as: +# readelf: -T -A +# This test is only valid on EABI based ports. +# target: *-*-*eabi* *-*-nacl* + +Attribute Section: aeabi +File Attributes + Tag_CPU_raw_name: "" diff --git a/gas/testsuite/gas/arm/attr-empty-string.s b/gas/testsuite/gas/arm/attr-empty-string.s new file mode 100644 index 0000000..f8ed373 --- /dev/null +++ b/gas/testsuite/gas/arm/attr-empty-string.s @@ -0,0 +1,14 @@ + .section .XXX.attributes, "", %0x70000003 + # Format version + .byte 'A' + # Size + .4byte (.Lend_attrs - .) + # "Vendor" + .asciz "aeabi" + # File scope + .byte 1 + # Size + .4byte (.Lend_attrs - . + 1) + .uleb128 4 + .asciz "" +.Lend_attrs: diff --git a/gas/testsuite/gas/arm/attr-non-null-terminated-string.d b/gas/testsuite/gas/arm/attr-non-null-terminated-string.d new file mode 100644 index 0000000..ac376a9 --- /dev/null +++ b/gas/testsuite/gas/arm/attr-non-null-terminated-string.d @@ -0,0 +1,9 @@ +# name: EABI attribute - non-null terminated string +# source: attr-non-null-terminated-string.s +# This test is only valid on EABI based ports. +# target: *-*-*eabi* *-*-nacl* +# as: +# readelf: --silent-truncation -A +Attribute Section: aeabi +File Attributes + Tag_CPU_raw_name: "ab<corrupt string tag>" diff --git a/gas/testsuite/gas/arm/attr-non-null-terminated-string.s b/gas/testsuite/gas/arm/attr-non-null-terminated-string.s new file mode 100644 index 0000000..f886f39 --- /dev/null +++ b/gas/testsuite/gas/arm/attr-non-null-terminated-string.s @@ -0,0 +1,14 @@ + .section .XXX.attributes, "", %0x70000003 + # Format version + .byte 'A' + # Size + .4byte (.Lend_attrs - .) + # "Vendor" + .asciz "aeabi" + # File scope + .byte 1 + # Size + .4byte (.Lend_attrs - . + 1) + .uleb128 4 + .byte 'a', 'b', 'c' +.Lend_attrs: diff --git a/gas/testsuite/gas/cfi-sframe/cfi-sframe-aarch64-4.d b/gas/testsuite/gas/cfi-sframe/cfi-sframe-aarch64-4.d index c81888b..51fad9c 100644 --- a/gas/testsuite/gas/cfi-sframe/cfi-sframe-aarch64-4.d +++ b/gas/testsuite/gas/cfi-sframe/cfi-sframe-aarch64-4.d @@ -1,7 +1,7 @@ #as: --gsframe #objdump: --sframe=.sframe #name: SFrame cfi_negate_ra_state_with_pc test -#warning: Warning: skipping SFrame FDE; \.cfi_negate_ra_state_with_pc +#warning: \.cfi_negate_ra_state_with_pc ## The support for .cfi_negate_ra_state_with_pc is currently pending on SFrame ## v3 (currently in development). The unimplemented support is reported to the diff --git a/gas/testsuite/gas/cfi-sframe/cfi-sframe-common-10.d b/gas/testsuite/gas/cfi-sframe/cfi-sframe-common-10.d new file mode 100644 index 0000000..106e05d --- /dev/null +++ b/gas/testsuite/gas/cfi-sframe/cfi-sframe-common-10.d @@ -0,0 +1,22 @@ +#as: --gsframe +#objdump: --sframe=.sframe +#name: SFrame cfi_undefined test +#... +Contents of the SFrame section .sframe: + + Header : + + Version: SFRAME_VERSION_2 + Flags: NONE +#? CFA fixed FP offset: \-?\d+ +#? CFA fixed RA offset: \-?\d+ + Num FDEs: 1 + Num FREs: 2 + + Function Index : + func idx \[0\]: pc = 0x0, size = 8 bytes + STARTPC + CFA + FP + RA + +#... + 0+0004 +sp\+16 +u +[uf] + + +#pass diff --git a/gas/testsuite/gas/cfi-sframe/cfi-sframe-common-10.s b/gas/testsuite/gas/cfi-sframe/cfi-sframe-common-10.s new file mode 100644 index 0000000..7761eda --- /dev/null +++ b/gas/testsuite/gas/cfi-sframe/cfi-sframe-common-10.s @@ -0,0 +1,12 @@ +## cfi_undefined when used with "not interesting" registers (from the +## perspective of SFrame section, non SP/FP/RA registers are not +## interesting) does not affect the asynchronicity of the SFrame +## stack trace information. Such CFI directives can be skipped for SFrame +## stack trace info generation. + .cfi_startproc + .long 0 + .cfi_def_cfa_offset 16 + .cfi_undefined 1 + .cfi_undefined 2 + .long 0 + .cfi_endproc diff --git a/gas/testsuite/gas/cfi-sframe/cfi-sframe-common-11.d b/gas/testsuite/gas/cfi-sframe/cfi-sframe-common-11.d new file mode 100644 index 0000000..2584815 --- /dev/null +++ b/gas/testsuite/gas/cfi-sframe/cfi-sframe-common-11.d @@ -0,0 +1,22 @@ +#as: --gsframe +#objdump: --sframe=.sframe +#name: SFrame cfi_same_value test +#... +Contents of the SFrame section .sframe: + + Header : + + Version: SFRAME_VERSION_2 + Flags: NONE +#? CFA fixed FP offset: \-?\d+ +#? CFA fixed RA offset: \-?\d+ + Num FDEs: 1 + Num FREs: 2 + + Function Index : + func idx \[0\]: pc = 0x0, size = 8 bytes + STARTPC + CFA + FP + RA + +#... + 0+0004 +sp\+16 +u +[uf] + + +#pass diff --git a/gas/testsuite/gas/cfi-sframe/cfi-sframe-common-11.s b/gas/testsuite/gas/cfi-sframe/cfi-sframe-common-11.s new file mode 100644 index 0000000..e299f58 --- /dev/null +++ b/gas/testsuite/gas/cfi-sframe/cfi-sframe-common-11.s @@ -0,0 +1,12 @@ +## cfi_same_value when used with "not interesting" registers (from the +## perspective of SFrame section, non SP/FP/RA registers are not +## interesting) does not affect the asynchronicity of the SFrame stack +## trace information. Such CFI directives can be skipped for SFrame +## stack trace info generation. + .cfi_startproc + .long 0 + .cfi_def_cfa_offset 16 + .cfi_same_value 1 + .cfi_same_value 2 + .long 0 + .cfi_endproc diff --git a/gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-2.d b/gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-2.d new file mode 100644 index 0000000..d779b6d --- /dev/null +++ b/gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-2.d @@ -0,0 +1,21 @@ +#as: --gsframe +#objdump: --sframe=.sframe +#name: Check .cfi_def_cfa_register with no previous offset +#... +Contents of the SFrame section .sframe: + + Header : + + Version: SFRAME_VERSION_2 + Flags: NONE +#? CFA fixed FP offset: \-?\d+ +#? CFA fixed RA offset: \-?\d+ + Num FDEs: 1 + Num FREs: 1 + + Function Index : + + func idx \[0\]: pc = 0x0, size = 0 bytes + STARTPC +CFA +FP +RA + + 0+0000 +fp\+8 +u +f + +#pass diff --git a/gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-2.s b/gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-2.s new file mode 100644 index 0000000..f3f9859 --- /dev/null +++ b/gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-2.s @@ -0,0 +1,4 @@ +# Although not a useful construct by itself, ensure graceful handling. + .cfi_startproc + .cfi_def_cfa_register 6 + .cfi_endproc diff --git a/gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-empty-1.d b/gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-empty-1.d index 0123994..0bae4b9 100644 --- a/gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-empty-1.d +++ b/gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-empty-1.d @@ -1,5 +1,5 @@ #as: --gsframe -#warning: skipping SFrame FDE; \.cfi_escape DW\_CFA\_expression with SP reg 7 +#warning: \.cfi_escape DW\_CFA\_expression with SP reg 7 #objdump: --sframe=.sframe #name: CFI_escape with register of significance to SFrame #... diff --git a/gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-empty-2.d b/gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-empty-2.d index 482803b..f1ba044 100644 --- a/gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-empty-2.d +++ b/gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-empty-2.d @@ -1,5 +1,5 @@ #as: --gsframe -#warning: skipping SFrame FDE; \.cfi\_escape DW\_CFA\_val\_offset with FP reg 6 +#warning: \.cfi\_escape DW\_CFA\_val\_offset with FP reg 6 #objdump: --sframe=.sframe #name: CFI_escape with register of significance to SFrame II #... diff --git a/gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-empty-3.d b/gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-empty-3.d index 177fb21..c8fc7a4 100644 --- a/gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-empty-3.d +++ b/gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-empty-3.d @@ -1,5 +1,5 @@ #as: --gsframe -#warning: skipping SFrame FDE; \.cfi\_escape with op \(0x14\) +#warning: \.cfi\_escape with op \(0x14\) #objdump: --sframe=.sframe #name: CFI_escape with multiple DWARF expr #... diff --git a/gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-empty-4.d b/gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-empty-4.d new file mode 100644 index 0000000..43f09e0 --- /dev/null +++ b/gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-empty-4.d @@ -0,0 +1,17 @@ +#as: --gsframe +#warning: SP reg 7 in \.cfi\_undefined +#objdump: --sframe=.sframe +#name: DW_CFA_undefined with register SP +#... +Contents of the SFrame section .sframe: + + Header : + + Version: SFRAME_VERSION_2 + Flags: NONE +#? CFA fixed FP offset: \-?\d+ +#? CFA fixed RA offset: \-?\d+ + Num FDEs: 0 + Num FREs: 0 + +#pass diff --git a/gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-empty-4.s b/gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-empty-4.s new file mode 100644 index 0000000..fae3bbf --- /dev/null +++ b/gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-empty-4.s @@ -0,0 +1,6 @@ + .cfi_startproc + .long 0 + .cfi_def_cfa_offset 16 + .cfi_undefined 7 + .long 0 + .cfi_endproc diff --git a/gas/testsuite/gas/cfi-sframe/cfi-sframe.exp b/gas/testsuite/gas/cfi-sframe/cfi-sframe.exp index a099466..341a56a 100644 --- a/gas/testsuite/gas/cfi-sframe/cfi-sframe.exp +++ b/gas/testsuite/gas/cfi-sframe/cfi-sframe.exp @@ -79,6 +79,8 @@ if { ([istarget "x86_64-*-*"] || [istarget "aarch64*-*-*"]) \ run_dump_test "cfi-sframe-common-7" run_dump_test "cfi-sframe-common-8" run_dump_test "cfi-sframe-common-9" + run_dump_test "cfi-sframe-common-10" + run_dump_test "cfi-sframe-common-11" run_dump_test "common-empty-1" run_dump_test "common-empty-2" @@ -90,9 +92,11 @@ if { [istarget "x86_64-*-*"] && [gas_sframe_check] } then { if { [gas_x86_64_check] } then { set ASFLAGS "$ASFLAGS --64" run_dump_test "cfi-sframe-x86_64-1" + run_dump_test "cfi-sframe-x86_64-2" run_dump_test "cfi-sframe-x86_64-empty-1" run_dump_test "cfi-sframe-x86_64-empty-2" run_dump_test "cfi-sframe-x86_64-empty-3" + run_dump_test "cfi-sframe-x86_64-empty-4" set ASFLAGS "$old_ASFLAGS" } } diff --git a/gas/testsuite/gas/cfi-sframe/common-empty-1.d b/gas/testsuite/gas/cfi-sframe/common-empty-1.d index 6e99dd5..736aea8 100644 --- a/gas/testsuite/gas/cfi-sframe/common-empty-1.d +++ b/gas/testsuite/gas/cfi-sframe/common-empty-1.d @@ -1,5 +1,5 @@ #as: --gsframe -#warning: skipping SFrame FDE; \.cfi_remember_state without prior SFrame FRE state +#warning: \.cfi_remember_state without prior SFrame FRE state #objdump: --sframe=.sframe #name: Uninteresting cfi directives generate an empty SFrame section #... diff --git a/gas/testsuite/gas/cfi-sframe/common-empty-2.d b/gas/testsuite/gas/cfi-sframe/common-empty-2.d index 77c303e..163b504 100644 --- a/gas/testsuite/gas/cfi-sframe/common-empty-2.d +++ b/gas/testsuite/gas/cfi-sframe/common-empty-2.d @@ -1,5 +1,5 @@ #as: --gsframe -#warning: skipping SFrame FDE; \.cfi_def_cfa_offset without CFA base register in effect +#warning: \.cfi_def_cfa_offset without CFA base register in effect #objdump: --sframe=.sframe #name: SFrame supports only FP/SP based CFA #... diff --git a/gas/testsuite/gas/cfi-sframe/common-empty-3.d b/gas/testsuite/gas/cfi-sframe/common-empty-3.d index 4ec5b44..39caad5 100644 --- a/gas/testsuite/gas/cfi-sframe/common-empty-3.d +++ b/gas/testsuite/gas/cfi-sframe/common-empty-3.d @@ -1,5 +1,5 @@ #as: --gsframe -#warning: skipping SFrame FDE; non-default RA register 0 +#warning: non-default RA register 0 #objdump: --sframe=.sframe #name: SFrame supports only default return column #... diff --git a/gas/testsuite/gas/coff/coff.exp b/gas/testsuite/gas/coff/coff.exp new file mode 100644 index 0000000..b5e7d24 --- /dev/null +++ b/gas/testsuite/gas/coff/coff.exp @@ -0,0 +1,40 @@ +# Copyright (C) 2012-2025 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. + +# +# coff tests +# + +if { ![is_coff_format] } then { + return +} + +# We omit the ARM toolchains because they define locals to start with '.', +# which eliminates .eos, .text etc from the output. +# Also omit c4x and c54x, since .tag and .def mean something different there. +if { ![istarget arm*-*-*] + && ![istarget *c4x*-*-*] + && ![istarget *c54x*-*-*] } { + run_dump_test tag +} + +# Omit c4x and c54x, since .def means something different there. +if { ![istarget *c4x*-*-*] && ![istarget *c54x*-*-*] } { + run_dump_test func1 + run_dump_test func2 + run_dump_test func3 + run_dump_test func4 +} diff --git a/gas/testsuite/gas/coff/func1.d b/gas/testsuite/gas/coff/func1.d new file mode 100644 index 0000000..c0bfa83 --- /dev/null +++ b/gas/testsuite/gas/coff/func1.d @@ -0,0 +1,16 @@ +#xfail: aarch64-*-* +#objdump: -t +#name: functions w/o C_EFCN + +.*: file format .* + +SYMBOL TABLE: +\[ 0\]\(sec -2\)\(fl 0x00\)\(ty 0\)\(scl 103\) \(nx 1\) 0x0+0000 func1.c +File * +\[ 2\]\(sec 1\)\(fl 0x00\)\(ty 20\)\(scl 3\) \(nx 1\) 0x0+0000 inner +AUX tagndx 0 ttlsiz 0x0 lnnos 0 next 4 +\[ 4\]\(sec 1\)\(fl 0x00\)\(ty 20\)\(scl 3\) \(nx 1\) 0x0+000. outer +AUX tagndx 0 ttlsiz 0x0 lnnos 0 next 6 +\[ 6\]\(sec 1\)\(fl 0x00\)\(ty 20\)\(scl 2\) \(nx 1\) 0x0+000. test +AUX tagndx 0 ttlsiz 0x0 lnnos 0 next 0 +#pass diff --git a/gas/testsuite/gas/coff/func1.s b/gas/testsuite/gas/coff/func1.s new file mode 100644 index 0000000..28300e7 --- /dev/null +++ b/gas/testsuite/gas/coff/func1.s @@ -0,0 +1,22 @@ + .file "func1.c" + .text + .macro fcn, name + .def \name + .scl 3 /* C_STAT */ + .type 32 /* DT_FUNC */ + .endef +\name: + .endm + + fcn inner + .nop + + fcn outer + .nop + .nop + + .global test + fcn test + .nop + .nop + .nop diff --git a/gas/testsuite/gas/coff/func2.d b/gas/testsuite/gas/coff/func2.d new file mode 100644 index 0000000..55a3a25 --- /dev/null +++ b/gas/testsuite/gas/coff/func2.d @@ -0,0 +1,16 @@ +#xfail: aarch64-*-* +#objdump: -t +#name: functions w/ C_EFCN + +.*: file format .* + +SYMBOL TABLE: +\[ 0\]\(sec -2\)\(fl 0x00\)\(ty 0\)\(scl 103\) \(nx 1\) 0x0+0000 func2.c +File * +\[ 2\]\(sec 1\)\(fl 0x00\)\(ty 20\)\(scl 3\) \(nx 1\) 0x0+0000 inner +AUX tagndx 0 ttlsiz 0x[124] lnnos 0 next 4 +\[ 4\]\(sec 1\)\(fl 0x00\)\(ty 20\)\(scl 3\) \(nx 1\) 0x0+000. outer +AUX tagndx 0 ttlsiz 0x[248] lnnos 0 next 6 +\[ 6\]\(sec 1\)\(fl 0x00\)\(ty 20\)\(scl 2\) \(nx 1\) 0x0+000. test +AUX tagndx 0 ttlsiz 0x[36c] lnnos 0 next 0 +#pass diff --git a/gas/testsuite/gas/coff/func2.s b/gas/testsuite/gas/coff/func2.s new file mode 100644 index 0000000..75f2069 --- /dev/null +++ b/gas/testsuite/gas/coff/func2.s @@ -0,0 +1,34 @@ + .file "func2.c" + + .macro fcn, name + .def \name + .scl 3 /* C_STAT */ + .type 32 /* DT_FUNC */ + .endef +\name: + .endm + + .macro efcn, name + .def .\name + .scl 255 /* C_EFCN */ + .val . + .endef + .endm + + .text + + fcn inner + .nop + efcn inner + + fcn outer + .nop + .nop + efcn outer + + .global test + fcn test + .nop + .nop + .nop + efcn test diff --git a/gas/testsuite/gas/coff/func3.d b/gas/testsuite/gas/coff/func3.d new file mode 100644 index 0000000..06b37f8 --- /dev/null +++ b/gas/testsuite/gas/coff/func3.d @@ -0,0 +1,16 @@ +#xfail: aarch64-*-* +#objdump: -t +#name: functions mixed C_EFCN + +.*: file format .* + +SYMBOL TABLE: +\[ 0\]\(sec -2\)\(fl 0x00\)\(ty 0\)\(scl 103\) \(nx 1\) 0x0+0000 func3.c +File * +\[ 2\]\(sec 1\)\(fl 0x00\)\(ty 20\)\(scl 3\) \(nx 1\) 0x0+0000 inner +AUX tagndx 0 ttlsiz 0x0 lnnos 0 next 4 +\[ 4\]\(sec 1\)\(fl 0x00\)\(ty 20\)\(scl 3\) \(nx 1\) 0x0+000. outer +AUX tagndx 0 ttlsiz 0x[248] lnnos 0 next 6 +\[ 6\]\(sec 1\)\(fl 0x00\)\(ty 20\)\(scl 2\) \(nx 1\) 0x0+000. test +AUX tagndx 0 ttlsiz 0x[36c] lnnos 0 next 0 +#pass diff --git a/gas/testsuite/gas/coff/func3.s b/gas/testsuite/gas/coff/func3.s new file mode 100644 index 0000000..5d41171 --- /dev/null +++ b/gas/testsuite/gas/coff/func3.s @@ -0,0 +1,33 @@ + .file "func3.c" + + .macro fcn, name + .def \name + .scl 3 /* C_STAT */ + .type 32 /* DT_FUNC */ + .endef +\name: + .endm + + .macro efcn, name + .def .\name + .scl 255 /* C_EFCN */ + .val . + .endef + .endm + + .text + + fcn inner + .nop + + fcn outer + .nop + .nop + efcn outer + + .global test + fcn test + .nop + .nop + .nop + efcn test diff --git a/gas/testsuite/gas/coff/func4.d b/gas/testsuite/gas/coff/func4.d new file mode 100644 index 0000000..e7cd444 --- /dev/null +++ b/gas/testsuite/gas/coff/func4.d @@ -0,0 +1,18 @@ +#xfail: aarch64-*-* +#objdump: -t +#name: functions interleaved with data + +.*: file format .* + +SYMBOL TABLE: +\[ 0\]\(sec -2\)\(fl 0x00\)\(ty 0\)\(scl 103\) \(nx 1\) 0x0+0000 func4.c +File * +\[ 2\]\(sec 1\)\(fl 0x00\)\(ty 20\)\(scl 3\) \(nx 1\) 0x0+0000 inner +AUX tagndx 0 ttlsiz 0x[124] lnnos 0 next 5 +\[ 4\]\(sec 2\)\(fl 0x00\)\(ty 0\)\(scl 3\) \(nx 0\) 0x0+0000 item1 +\[ 5\]\(sec 1\)\(fl 0x00\)\(ty 20\)\(scl 3\) \(nx 1\) 0x0+000. outer +AUX tagndx 0 ttlsiz 0x[248] lnnos 0 next 8 +\[ 7\]\(sec 2\)\(fl 0x00\)\(ty 0\)\(scl 3\) \(nx 0\) 0x0+000. item2 +\[ 8\]\(sec 1\)\(fl 0x00\)\(ty 20\)\(scl 2\) \(nx 1\) 0x0+000. test +AUX tagndx 0 ttlsiz 0x[36c] lnnos 0 next 0 +#pass diff --git a/gas/testsuite/gas/coff/func4.s b/gas/testsuite/gas/coff/func4.s new file mode 100644 index 0000000..e9c75f4 --- /dev/null +++ b/gas/testsuite/gas/coff/func4.s @@ -0,0 +1,41 @@ + .file "func4.c" + + .macro fcn, name + .def \name + .scl 3 /* C_STAT */ + .type 32 /* DT_FUNC */ + .endef +\name: + .endm + + .macro efcn, name + .def .\name + .scl 255 /* C_EFCN */ + .val . + .endef + .endm + + .text + fcn inner + .nop + efcn inner + + .data +item1: .long -1 + + .text + fcn outer + .nop + .nop + efcn outer + + .data +item2: .long -2 + + .text + .global test + fcn test + .nop + .nop + .nop + efcn test diff --git a/gas/testsuite/gas/all/cofftag.d b/gas/testsuite/gas/coff/tag.d index 2d2a4cc..e366d4f 100644 --- a/gas/testsuite/gas/all/cofftag.d +++ b/gas/testsuite/gas/coff/tag.d @@ -5,7 +5,7 @@ SYMBOL TABLE: \[ 0\]\(sec -2\)\(fl 0x00\)\(ty 0\)\(scl 103\) \(nx 1\) 0x0+0000 foo.c -File +File * \[ 2\]\(sec 1\)\(fl 0x00\)\(ty 0\)\(scl 6\) \(nx 0\) 0x0+0000 gcc2_compiled. \[ 3\]\(sec 1\)\(fl 0x00\)\(ty 0\)\(scl 6\) \(nx 0\) 0x0+0000 ___gnu_compiled_c \[ 4\]\(sec -2\)\(fl 0x00\)\(ty a\)\(scl 15\) \(nx 1\) 0x0+0000 _token diff --git a/gas/testsuite/gas/all/cofftag.s b/gas/testsuite/gas/coff/tag.s index 814d3ed..a17c7f5 100644 --- a/gas/testsuite/gas/all/cofftag.s +++ b/gas/testsuite/gas/coff/tag.s @@ -4,7 +4,7 @@ operator, flags }; - + enum token what= operator; Type numbers have been converted to decimal to make this test pass on diff --git a/gas/testsuite/gas/epiphany/allinsn.exp b/gas/testsuite/gas/epiphany/allinsn.exp index 5ac2ef0..b4f10a6 100644 --- a/gas/testsuite/gas/epiphany/allinsn.exp +++ b/gas/testsuite/gas/epiphany/allinsn.exp @@ -24,4 +24,5 @@ if [istarget epiphany*-*-*] { run_dump_test "badrelax" gas_test_error "badpostmod" "" "destination register modified by displacement-post-modified address" run_dump_test "addr-syntax" + run_dump_test nop } diff --git a/gas/testsuite/gas/epiphany/nop.d b/gas/testsuite/gas/epiphany/nop.d new file mode 100644 index 0000000..23f457b --- /dev/null +++ b/gas/testsuite/gas/epiphany/nop.d @@ -0,0 +1,16 @@ +#as: +#objdump: -dr + +.*: file format elf32-epiphany + +Disassembly of section \.text: + +0+ <\.text>: + 0: 01b2 idle + 2: 01a2 nop + 4: 01a2 nop + 6: 01a2 nop + 8: 01b2 idle + a: 01b2 idle + c: 01a2 nop + e: 01a2 nop diff --git a/gas/testsuite/gas/epiphany/nop.s b/gas/testsuite/gas/epiphany/nop.s new file mode 100644 index 0000000..ce5cb67 --- /dev/null +++ b/gas/testsuite/gas/epiphany/nop.s @@ -0,0 +1,5 @@ + .text + idle + .p2align 3 + idle + idle diff --git a/gas/testsuite/gas/i386/align-branch-6.d b/gas/testsuite/gas/i386/align-branch-6.d index 11dc03c..cd0a162 100644 --- a/gas/testsuite/gas/i386/align-branch-6.d +++ b/gas/testsuite/gas/i386/align-branch-6.d @@ -8,6 +8,7 @@ Disassembly of section .text: 0+ <_start>: +[a-f0-9]+: eb 3c jmp 3e <_start\+0x3e> + +[a-f0-9]+: 8d 74 26 00 lea 0x0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi @@ -15,7 +16,6 @@ Disassembly of section .text: +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi - +[a-f0-9]+: 8d 74 26 00 lea 0x0\(%esi,%eiz,1\),%esi +[a-f0-9]+: f2 73 bf bnd jae 0 <_start> +[a-f0-9]+: c3 ret #pass diff --git a/gas/testsuite/gas/i386/arch-4.d b/gas/testsuite/gas/i386/arch-4.d index 54fde15..6ebd456 100644 --- a/gas/testsuite/gas/i386/arch-4.d +++ b/gas/testsuite/gas/i386/arch-4.d @@ -6,7 +6,9 @@ Disassembly of section .text: 0+ <.text>: +[ ]*[a-f0-9]+: 0f ff cc [ ]*ud0 %esp,%ecx [ ]*[a-f0-9]+: 0f ff 07 [ ]*ud0 \(%edi\),%eax +[ ]*[a-f0-9]+: 0f b9 cc [ ]*ud1 %esp,%ecx [ ]*[a-f0-9]+: 0f b9 07 [ ]*ud1 \(%edi\),%eax [ ]*[a-f0-9]+: 0f 0b ud2 [ ]*[a-f0-9]+: 0f 0b ud2 diff --git a/gas/testsuite/gas/i386/arch-4.s b/gas/testsuite/gas/i386/arch-4.s index cf14d73..62c3f8a 100644 --- a/gas/testsuite/gas/i386/arch-4.s +++ b/gas/testsuite/gas/i386/arch-4.s @@ -1,5 +1,9 @@ .text + ud0 + int3 ud0 (%edi),%eax + ud1 + int3 ud1 (%edi),%eax ud2 ud2a diff --git a/gas/testsuite/gas/i386/i386.exp b/gas/testsuite/gas/i386/i386.exp index d48dd89..b068b32 100644 --- a/gas/testsuite/gas/i386/i386.exp +++ b/gas/testsuite/gas/i386/i386.exp @@ -833,6 +833,7 @@ if {![istarget "i*86-*-elfiamcu"] && [gas_64_check]} then { } run_list_test "string-bad" "" run_list_test "reg-bad" "" +run_list_test "inval-type" run_list_test "space1" "-al" if {![istarget "i*86-*-elfiamcu"]} then { run_list_test "xmmword" diff --git a/gas/testsuite/gas/i386/inval-type.l b/gas/testsuite/gas/i386/inval-type.l new file mode 100644 index 0000000..c029a9f --- /dev/null +++ b/gas/testsuite/gas/i386/inval-type.l @@ -0,0 +1,13 @@ +.*: Assembler messages: +.*: Error: operand type mismatch for .blendvps. +.*: Error: operand type mismatch for .blendvps. +.*: Error: operand type mismatch for .bsf. +.*: Error: operand type mismatch for .bswap. +.*: Error: operand type mismatch for .bswap. +.*: Error: operand type mismatch for .bswap. +.*: Error: operand type mismatch for .fcomi. +.*: Error: operand type mismatch for .fcomi. +.*: Error: operand type mismatch for .in. +.*: Error: operand type mismatch for .in. +.*: Error: operand type mismatch for .movntdqa. +.*: Error: operand type mismatch for .movntdq. diff --git a/gas/testsuite/gas/i386/inval-type.s b/gas/testsuite/gas/i386/inval-type.s new file mode 100644 index 0000000..6490acd --- /dev/null +++ b/gas/testsuite/gas/i386/inval-type.s @@ -0,0 +1,17 @@ + .text + +# All the following should yield "operand type mismatch" (or something yet more +# specific), but _not_ "operand size mismatch". + + blendvps %eax, %xmm1, %xmm2 + blendvps %st, %xmm1, %xmm2 + bsf %eax, (%eax) + bswap %st + bswap %mm0 + bswapl %xmm0 + fcomi %st(1), %eax + fcomi %st(1), %xmm0 + inl $0, %st + inl $0, %xmm0 + movntdqa %xmm0, (%eax) + movntdq (%eax), %xmm0 diff --git a/gas/testsuite/gas/i386/nop-1-suffix.d b/gas/testsuite/gas/i386/nop-1-suffix.d index dbea21b..ff9c7ee 100644 --- a/gas/testsuite/gas/i386/nop-1-suffix.d +++ b/gas/testsuite/gas/i386/nop-1-suffix.d @@ -21,19 +21,20 @@ Disassembly of section .text: +[a-f0-9]+: 8d 74 26 00 leal 0x0\(%esi,%eiz,1\),%esi 0+12 <pseudo_20>: + +[a-f0-9]+: 8d 74 26 00 leal 0x0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 leal %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 leal %cs:(0x)?0\(%esi,%eiz,1\),%esi - +[a-f0-9]+: 8d 74 26 00 leal 0x0\(%esi,%eiz,1\),%esi 0+26 <pseudo_30>: +[a-f0-9]+: eb 1c jmp 44 <pseudo_129> + +[a-f0-9]+: 8d 74 26 00 leal 0x0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 leal %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 leal %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 leal %cs:(0x)?0\(%esi,%eiz,1\),%esi - +[a-f0-9]+: 8d 74 26 00 leal 0x0\(%esi,%eiz,1\),%esi 0+44 <pseudo_129>: +[a-f0-9]+: eb 7f jmp c5 <end> + +[a-f0-9]+: 8d b4 26 00 00 00 00 leal 0x0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 leal %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 leal %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 leal %cs:(0x)?0\(%esi,%eiz,1\),%esi @@ -49,7 +50,6 @@ Disassembly of section .text: +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 leal %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 leal %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 leal %cs:(0x)?0\(%esi,%eiz,1\),%esi - +[a-f0-9]+: 8d b4 26 00 00 00 00 leal 0x0\(%esi,%eiz,1\),%esi 0+c5 <end>: +[a-f0-9]+: 31 c0 xorl %eax,%eax diff --git a/gas/testsuite/gas/i386/nop-1.d b/gas/testsuite/gas/i386/nop-1.d index 93c7c3a..3c5e946 100644 --- a/gas/testsuite/gas/i386/nop-1.d +++ b/gas/testsuite/gas/i386/nop-1.d @@ -20,19 +20,20 @@ Disassembly of section .text: +[a-f0-9]+: 8d 74 26 00 lea 0x0\(%esi,%eiz,1\),%esi 0+12 <pseudo_20>: + +[a-f0-9]+: 8d 74 26 00 lea 0x0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi - +[a-f0-9]+: 8d 74 26 00 lea 0x0\(%esi,%eiz,1\),%esi 0+26 <pseudo_30>: +[a-f0-9]+: eb 1c jmp 44 <pseudo_129> + +[a-f0-9]+: 8d 74 26 00 lea 0x0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi - +[a-f0-9]+: 8d 74 26 00 lea 0x0\(%esi,%eiz,1\),%esi 0+44 <pseudo_129>: +[a-f0-9]+: eb 7f jmp c5 <end> + +[a-f0-9]+: 8d b4 26 00 00 00 00 lea 0x0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi @@ -48,7 +49,6 @@ Disassembly of section .text: +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi - +[a-f0-9]+: 8d b4 26 00 00 00 00 lea 0x0\(%esi,%eiz,1\),%esi 0+c5 <end>: +[a-f0-9]+: 31 c0 xor %eax,%eax diff --git a/gas/testsuite/gas/i386/nop-1.l b/gas/testsuite/gas/i386/nop-1.l index a818708..39260bb 100644 --- a/gas/testsuite/gas/i386/nop-1.l +++ b/gas/testsuite/gas/i386/nop-1.l @@ -15,25 +15,25 @@ [ ]*[0-9]+[ ]+8D742600 * [ ]*[0-9]+[ ]* [ ]*[0-9]+[ ]+pseudo_20: -[ ]*[0-9]+[ ]+.... 2E8DB426[ ]+\.nops 20 +[ ]*[0-9]+[ ]+.... 8D742600[ ]+\.nops 20 +[ ]*[0-9]+[ ]+2E8DB426 * [ ]*[0-9]+[ ]+00000000 * [ ]*[0-9]+[ ]+2E8DB426 * [ ]*[0-9]+[ ]+00000000 * -[ ]*[0-9]+[ ]+8D742600 * [ ]*[0-9]+[ ]* [ ]*[0-9]+[ ]+pseudo_30: -[ ]*[0-9]+[ ]+.... EB1C2E8D[ ]+\.nops 30 +[ ]*[0-9]+[ ]+.... EB1C8D74[ ]+\.nops 30 +[ ]*[0-9]+[ ]+26002E8D * [ ]*[0-9]+[ ]+B4260000 * [ ]*[0-9]+[ ]+00002E8D * [ ]*[0-9]+[ ]+B4260000 * -[ ]*[0-9]+[ ]+00002E8D * [ ]*[0-9]+[ ]* [ ]*[0-9]+[ ]+pseudo_129: -[ ]*[0-9]+[ ]+.... EB7F2E8D[ ]+\.nops 129 -[ ]*[0-9]+[ ]+B4260000 * -[ ]*[0-9]+[ ]+00002E8D * -[ ]*[0-9]+[ ]+B4260000 * -[ ]*[0-9]+[ ]+00002E8D * +[ ]*[0-9]+[ ]+.... EB7F8DB4[ ]+\.nops 129 +[ ]*[0-9]+[ ]+26000000 * +[ ]*[0-9]+[ ]+002E8DB4 * +[ ]*[0-9]+[ ]+26000000 * +[ ]*[0-9]+[ ]+002E8DB4 * [ ]*[0-9]+[ ]* [ ]*[0-9]+[ ]+end: #pass diff --git a/gas/testsuite/gas/i386/nop-2.d b/gas/testsuite/gas/i386/nop-2.d index d87ab7e..f29df32 100644 --- a/gas/testsuite/gas/i386/nop-2.d +++ b/gas/testsuite/gas/i386/nop-2.d @@ -13,8 +13,8 @@ Disassembly of section .text: +[a-f0-9]+: 90 nop 0+2 <pseudo_8>: - +[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si +[a-f0-9]+: 8d 74 00 lea (0x)?0\(%si\),%si + +[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si 0+a <pseudo_8_4>: +[a-f0-9]+: 8d b4 00 00 lea 0x0\(%si\),%si @@ -22,22 +22,23 @@ Disassembly of section .text: 0+12 <pseudo_20>: +[a-f0-9]+: eb 12 jmp 26 <pseudo_30> + +[a-f0-9]+: 8d 74 00 lea (0x)?0\(%si\),%si +[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si +[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si +[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si - +[a-f0-9]+: 8d 74 00 lea (0x)?0\(%si\),%si 0+26 <pseudo_30>: +[a-f0-9]+: eb 1c jmp 44 <pseudo_129> + +[a-f0-9]+: 8d 74 00 lea (0x)?0\(%si\),%si +[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si +[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si +[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si +[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si +[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si - +[a-f0-9]+: 8d 74 00 lea (0x)?0\(%si\),%si 0+44 <pseudo_129>: +[a-f0-9]+: eb 7f jmp c5 <end> + +[a-f0-9]+: 89 f6 mov %si,%si +[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si +[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si +[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si @@ -63,7 +64,6 @@ Disassembly of section .text: +[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si +[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si +[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si - +[a-f0-9]+: 89 f6 mov %si,%si 0+c5 <end>: +[a-f0-9]+: 66 31 c0 xor %eax,%eax diff --git a/gas/testsuite/gas/i386/nop-4.d b/gas/testsuite/gas/i386/nop-4.d index 5953652..5f9e0b9 100644 --- a/gas/testsuite/gas/i386/nop-4.d +++ b/gas/testsuite/gas/i386/nop-4.d @@ -9,8 +9,8 @@ Disassembly of section .text: 0+ <_start>: +[a-f0-9]+: 31 c0 xor %eax,%eax +[a-f0-9]+: 85 c0 test %eax,%eax - +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 90 nop + +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 31 c0 xor %eax,%eax +[a-f0-9]+: 31 c0 xor %eax,%eax diff --git a/gas/testsuite/gas/i386/nop-5.d b/gas/testsuite/gas/i386/nop-5.d index 193e0cd..71f1259 100644 --- a/gas/testsuite/gas/i386/nop-5.d +++ b/gas/testsuite/gas/i386/nop-5.d @@ -9,9 +9,9 @@ Disassembly of section .text: 0+ <_start>: +[a-f0-9]+: 31 c0 xor %eax,%eax +[a-f0-9]+: 85 c0 test %eax,%eax + +[a-f0-9]+: 90 nop +[a-f0-9]+: 2e 8d 74 26 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d 74 26 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi - +[a-f0-9]+: 90 nop +[a-f0-9]+: 31 c0 xor %eax,%eax +[a-f0-9]+: 31 c0 xor %eax,%eax diff --git a/gas/testsuite/gas/i386/nops-1-core2.d b/gas/testsuite/gas/i386/nops-1-core2.d index bd5ad37..c783324 100644 --- a/gas/testsuite/gas/i386/nops-1-core2.d +++ b/gas/testsuite/gas/i386/nops-1-core2.d @@ -9,153 +9,153 @@ Disassembly of section .text: 0+ <nop15>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 0f 1f 40 00 nopl 0x0\(%eax\) +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) 0+10 <nop14>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 0f 1f 00 nopl \(%eax\) +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) 0+20 <nop13>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 66 90 xchg %ax,%ax +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) 0+30 <nop12>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 90 nop [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) -[ ]*[a-f0-9]+: 90 nop 0+40 <nop11>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) 0+50 <nop10>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 66 2e 0f 1f 84 00 00 00 00 00 nopw %cs:0x0\(%eax,%eax,1\) 0+60 <nop9>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 66 0f 1f 84 00 00 00 00 00 nopw 0x0\(%eax,%eax,1\) 0+70 <nop8>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 0f 1f 84 00 00 00 00 00 nopl 0x0\(%eax,%eax,1\) 0+80 <nop7>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 0f 1f 80 00 00 00 00 nopl 0x0\(%eax\) 0+90 <nop6>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 66 0f 1f 44 00 00 nopw 0x0\(%eax,%eax,1\) 0+a0 <nop5>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 0f 1f 44 00 00 nopl 0x0\(%eax,%eax,1\) 0+b0 <nop4>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 0f 1f 40 00 nopl 0x0\(%eax\) 0+c0 <nop3>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 0f 1f 00 nopl \(%eax\) 0+d0 <nop2>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 66 90 xchg %ax,%ax #pass diff --git a/gas/testsuite/gas/i386/nops-1.d b/gas/testsuite/gas/i386/nops-1.d index ff6444a..71c1721 100644 --- a/gas/testsuite/gas/i386/nops-1.d +++ b/gas/testsuite/gas/i386/nops-1.d @@ -8,156 +8,156 @@ Disassembly of section .text: 0+ <nop15>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi + +[a-f0-9]+: f8 clc +[a-f0-9]+: 8d b4 26 00 00 00 00 lea 0x0\(%esi,%eiz,1\),%esi + +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi 0+10 <nop14>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 8d b6 00 00 00 00 lea (0x)?0\(%esi\),%esi + +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi 0+20 <nop13>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 2e 8d 74 26 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi + +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi 0+30 <nop12>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 8d 74 26 00 lea (0x)?0\(%esi,%eiz,1\),%esi + +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi 0+40 <nop11>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 8d 76 00 lea (0x)?0\(%esi\),%esi + +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi 0+50 <nop10>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 66 90 xchg %ax,%ax + +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi 0+60 <nop9>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 90 nop +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi - +[a-f0-9]+: 90 nop 0+70 <nop8>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi 0+80 <nop7>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 8d b4 26 00 00 00 00 lea 0x0\(%esi,%eiz,1\),%esi 0+90 <nop6>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 8d b6 00 00 00 00 lea 0x0\(%esi\),%esi 0+a0 <nop5>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 2e 8d 74 26 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi 0+b0 <nop4>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 8d 74 26 00 lea 0x0\(%esi,%eiz,1\),%esi 0+c0 <nop3>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 8d 76 00 lea 0x0\(%esi\),%esi 0+d0 <nop2>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 66 90 xchg %ax,%ax #pass diff --git a/gas/testsuite/gas/i386/nops-1.s b/gas/testsuite/gas/i386/nops-1.s index a4fd769..77cb9a8 100644 --- a/gas/testsuite/gas/i386/nops-1.s +++ b/gas/testsuite/gas/i386/nops-1.s @@ -1,147 +1,147 @@ .text nop15: - nop + clc .p2align 4 nop14: - nop - nop + clc + clc .p2align 4 nop13: - nop - nop - nop + clc + clc + clc .p2align 4 nop12: - nop - nop - nop - nop + clc + clc + clc + clc .p2align 4 nop11: - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc .p2align 4 nop10: - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc .p2align 4 nop9: - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc .p2align 4 nop8: - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc .p2align 4 nop7: - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 4 nop6: - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 4 nop5: - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 4 nop4: - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 4 nop3: - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 4 nop2: - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 4 diff --git a/gas/testsuite/gas/i386/nops-10.d b/gas/testsuite/gas/i386/nops-10.d index be9d4f7..6aeaaa0 100644 --- a/gas/testsuite/gas/i386/nops-10.d +++ b/gas/testsuite/gas/i386/nops-10.d @@ -8,6 +8,6 @@ Disassembly of section .text: 0+ <default>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d 74 26 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi #pass diff --git a/gas/testsuite/gas/i386/nops-2.d b/gas/testsuite/gas/i386/nops-2.d index 79baee5..b7c1d81 100644 --- a/gas/testsuite/gas/i386/nops-2.d +++ b/gas/testsuite/gas/i386/nops-2.d @@ -9,160 +9,160 @@ Disassembly of section .text: 0+ <nop>: +[a-f0-9]+: 0f be f0 movsbl %al,%esi - +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d 74 26 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi + +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi 0+10 <nop15>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi + +[a-f0-9]+: f8 clc +[a-f0-9]+: 8d b4 26 00 00 00 00 lea (0x)?0\(%esi,%eiz,1\),%esi + +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi 0+20 <nop14>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 8d b6 00 00 00 00 lea (0x)?0\(%esi\),%esi + +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi 0+30 <nop13>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 2e 8d 74 26 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi + +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi 0+40 <nop12>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 8d 74 26 00 lea (0x)?0\(%esi,%eiz,1\),%esi + +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi 0+50 <nop11>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 8d 76 00 lea (0x)?0\(%esi\),%esi + +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi 0+60 <nop10>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 66 90 xchg %ax,%ax + +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi 0+70 <nop9>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 90 nop +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi - +[a-f0-9]+: 90 nop 0+80 <nop8>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi 0+90 <nop7>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 8d b4 26 00 00 00 00 lea 0x0\(%esi,%eiz,1\),%esi 0+a0 <nop6>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 8d b6 00 00 00 00 lea 0x0\(%esi\),%esi 0+b0 <nop5>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 2e 8d 74 26 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi 0+c0 <nop4>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 8d 74 26 00 lea 0x0\(%esi,%eiz,1\),%esi 0+d0 <nop3>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 8d 76 00 lea 0x0\(%esi\),%esi 0+e0 <nop2>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 66 90 xchg %ax,%ax #pass diff --git a/gas/testsuite/gas/i386/nops-2.s b/gas/testsuite/gas/i386/nops-2.s index 6de16f2..23466e2 100644 --- a/gas/testsuite/gas/i386/nops-2.s +++ b/gas/testsuite/gas/i386/nops-2.s @@ -4,148 +4,148 @@ nop: .p2align 4 nop15: - nop + clc .p2align 4 nop14: - nop - nop + clc + clc .p2align 4 nop13: - nop - nop - nop + clc + clc + clc .p2align 4 nop12: - nop - nop - nop - nop + clc + clc + clc + clc .p2align 4 nop11: - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc .p2align 4 nop10: - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc .p2align 4 nop9: - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc .p2align 4 nop8: - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc .p2align 4 nop7: - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 4 nop6: - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 4 nop5: - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 4 nop4: - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 4 nop3: - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 4 nop2: - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 4 diff --git a/gas/testsuite/gas/i386/nops-3.d b/gas/testsuite/gas/i386/nops-3.d index 2de34bd..d0539b0 100644 --- a/gas/testsuite/gas/i386/nops-3.d +++ b/gas/testsuite/gas/i386/nops-3.d @@ -8,13 +8,13 @@ Disassembly of section .text: 0+ <nop>: -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: eb 1d jmp 20 <nop\+0x20> +[ ]*[a-f0-9]+: 2e 8d 74 26 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi -[ ]*[a-f0-9]+: 2e 8d 74 26 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 89 c3 mov %eax,%ebx -[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 8d b6 00 00 00 00 lea (0x)?0\(%esi\),%esi +[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi #pass diff --git a/gas/testsuite/gas/i386/nops-3.s b/gas/testsuite/gas/i386/nops-3.s index c42b354..293758a 100644 --- a/gas/testsuite/gas/i386/nops-3.s +++ b/gas/testsuite/gas/i386/nops-3.s @@ -1,6 +1,6 @@ .text nop: - nop + clc .p2align 5 mov %eax,%ebx .p2align 4 diff --git a/gas/testsuite/gas/i386/nops-4.d b/gas/testsuite/gas/i386/nops-4.d index b311db2..8afbb17 100644 --- a/gas/testsuite/gas/i386/nops-4.d +++ b/gas/testsuite/gas/i386/nops-4.d @@ -7,230 +7,230 @@ Disassembly of section .text: 0+ <nop31>: -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: eb 1d jmp 20 <nop30> +[ ]*[a-f0-9]+: 2e 8d 74 26 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi -[ ]*[a-f0-9]+: 2e 8d 74 26 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi 0+20 <nop30>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: eb 1c jmp 40 <nop29> +[ ]*[a-f0-9]+: 8d 74 26 00 lea (0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi -[ ]*[a-f0-9]+: 8d 74 26 00 lea (0x)?0\(%esi,%eiz,1\),%esi 0+40 <nop29>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: eb 1b jmp 60 <nop28> +[ ]*[a-f0-9]+: 8d 76 00 lea (0x)?0\(%esi\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi -[ ]*[a-f0-9]+: 8d 76 00 lea (0x)?0\(%esi\),%esi 0+60 <nop28>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: eb 1a jmp 80 <nop27> +[ ]*[a-f0-9]+: 66 90 xchg %ax,%ax [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi -[ ]*[a-f0-9]+: 66 90 xchg %ax,%ax 0+80 <nop27>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: eb 19 jmp a0 <nop26> +[ ]*[a-f0-9]+: 90 nop [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi -[ ]*[a-f0-9]+: 90 nop 0+a0 <nop26>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: eb 18 jmp c0 <nop25> [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi 0+c0 <nop25>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: eb 17 jmp e0 <nop24> +[ ]*[a-f0-9]+: 8d b4 26 00 00 00 00 lea (0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi -[ ]*[a-f0-9]+: 8d b4 26 00 00 00 00 lea (0x)?0\(%esi,%eiz,1\),%esi 0+e0 <nop24>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: eb 16 jmp 100 <nop23> +[ ]*[a-f0-9]+: 8d b6 00 00 00 00 lea (0x)?0\(%esi\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi -[ ]*[a-f0-9]+: 8d b6 00 00 00 00 lea (0x)?0\(%esi\),%esi 0+100 <nop23>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: 8d b4 26 00 00 00 00 lea (0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi -[ ]*[a-f0-9]+: 8d b4 26 00 00 00 00 lea (0x)?0\(%esi,%eiz,1\),%esi 0+120 <nop22>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: 8d b6 00 00 00 00 lea (0x)?0\(%esi\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi -[ ]*[a-f0-9]+: 8d b6 00 00 00 00 lea (0x)?0\(%esi\),%esi 0+140 <nop21>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: 2e 8d 74 26 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi -[ ]*[a-f0-9]+: 2e 8d 74 26 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi 0+160 <nop20>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: 8d 74 26 00 lea (0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi -[ ]*[a-f0-9]+: 8d 74 26 00 lea (0x)?0\(%esi,%eiz,1\),%esi 0+180 <nop19>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: 8d 76 00 lea (0x)?0\(%esi\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi -[ ]*[a-f0-9]+: 8d 76 00 lea (0x)?0\(%esi\),%esi 0+1a0 <nop18>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: 66 90 xchg %ax,%ax [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi -[ ]*[a-f0-9]+: 66 90 xchg %ax,%ax 0+1c0 <nop17>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 90 nop [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi -[ ]*[a-f0-9]+: 90 nop 0+1e0 <nop16>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi #pass diff --git a/gas/testsuite/gas/i386/nops-4.s b/gas/testsuite/gas/i386/nops-4.s index 103ca36..b455f49 100644 --- a/gas/testsuite/gas/i386/nops-4.s +++ b/gas/testsuite/gas/i386/nops-4.s @@ -1,187 +1,187 @@ .text nop31: - nop + clc .p2align 5 nop30: - nop - nop + clc + clc .p2align 5 nop29: - nop - nop - nop + clc + clc + clc .p2align 5 nop28: - nop - nop - nop - nop + clc + clc + clc + clc .p2align 5 nop27: - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc .p2align 5 nop26: - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc .p2align 5 nop25: - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc .p2align 5 nop24: - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc .p2align 5 nop23: - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 5 nop22: - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 5 nop21: - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 5 nop20: - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 5 nop19: - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 5 nop18: - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 5 nop17: - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 5 nop16: - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 5 align: diff --git a/gas/testsuite/gas/i386/nops-4a-i686.d b/gas/testsuite/gas/i386/nops-4a-i686.d index dfd3217..56ce6d7 100644 --- a/gas/testsuite/gas/i386/nops-4a-i686.d +++ b/gas/testsuite/gas/i386/nops-4a-i686.d @@ -8,211 +8,211 @@ Disassembly of section .text: 0+ <nop31>: -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: 66 0f 1f 84 00 00 00 00 00 nopw 0x0\(%eax,%eax,1\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) -[ ]*[a-f0-9]+: 66 0f 1f 84 00 00 00 00 00 nopw 0x0\(%eax,%eax,1\) 0+20 <nop30>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: 0f 1f 84 00 00 00 00 00 nopl 0x0\(%eax,%eax,1\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) -[ ]*[a-f0-9]+: 0f 1f 84 00 00 00 00 00 nopl 0x0\(%eax,%eax,1\) 0+40 <nop29>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: 0f 1f 80 00 00 00 00 nopl 0x0\(%eax\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) -[ ]*[a-f0-9]+: 0f 1f 80 00 00 00 00 nopl 0x0\(%eax\) 0+60 <nop28>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: 66 0f 1f 44 00 00 nopw 0x0\(%eax,%eax,1\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) -[ ]*[a-f0-9]+: 66 0f 1f 44 00 00 nopw 0x0\(%eax,%eax,1\) 0+80 <nop27>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: 0f 1f 44 00 00 nopl 0x0\(%eax,%eax,1\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) -[ ]*[a-f0-9]+: 0f 1f 44 00 00 nopl 0x0\(%eax,%eax,1\) 0+a0 <nop26>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: 0f 1f 40 00 nopl 0x0\(%eax\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) -[ ]*[a-f0-9]+: 0f 1f 40 00 nopl 0x0\(%eax\) 0+c0 <nop25>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: 0f 1f 00 nopl \(%eax\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) -[ ]*[a-f0-9]+: 0f 1f 00 nopl \(%eax\) 0+e0 <nop24>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: 66 90 xchg %ax,%ax [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) -[ ]*[a-f0-9]+: 66 90 xchg %ax,%ax 0+100 <nop23>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 90 nop [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) -[ ]*[a-f0-9]+: 90 nop 0+120 <nop22>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) 0+140 <nop21>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 66 2e 0f 1f 84 00 00 00 00 00 nopw %cs:0x0\(%eax,%eax,1\) +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) 0+160 <nop20>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 66 0f 1f 84 00 00 00 00 00 nopw 0x0\(%eax,%eax,1\) +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) 0+180 <nop19>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 0f 1f 84 00 00 00 00 00 nopl 0x0\(%eax,%eax,1\) +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) 0+1a0 <nop18>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 0f 1f 80 00 00 00 00 nopl 0x0\(%eax\) +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) 0+1c0 <nop17>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 66 0f 1f 44 00 00 nopw 0x0\(%eax,%eax,1\) +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) 0+1e0 <nop16>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 0f 1f 44 00 00 nopl 0x0\(%eax,%eax,1\) +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) #pass diff --git a/gas/testsuite/gas/i386/nops-5.d b/gas/testsuite/gas/i386/nops-5.d index d87f950..7ca694e 100644 --- a/gas/testsuite/gas/i386/nops-5.d +++ b/gas/testsuite/gas/i386/nops-5.d @@ -7,71 +7,71 @@ Disassembly of section .text: 0+ <i386>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d 74 26 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi 0+10 <i486>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d 74 26 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi 0+20 <i586>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d 74 26 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi 0+30 <i686>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d 74 26 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi 0+40 <pentium4>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) [ ]*[a-f0-9]+: 66 90 xchg %ax,%ax +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) 0+50 <nocona>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) [ ]*[a-f0-9]+: 66 90 xchg %ax,%ax +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) 0+60 <core>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) [ ]*[a-f0-9]+: 66 90 xchg %ax,%ax +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) 0+70 <core2>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) [ ]*[a-f0-9]+: 66 90 xchg %ax,%ax +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) 0+80 <k6>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d 74 26 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi 0+90 <athlon>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) [ ]*[a-f0-9]+: 66 90 xchg %ax,%ax +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) 0+a0 <k8>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) [ ]*[a-f0-9]+: 66 90 xchg %ax,%ax +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) 0+b0 <generic32>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d 74 26 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi 0+c0 <generic64>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) [ ]*[a-f0-9]+: 66 90 xchg %ax,%ax +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) 0+d0 <amdfam10>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) [ ]*[a-f0-9]+: 66 90 xchg %ax,%ax +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) #pass diff --git a/gas/testsuite/gas/i386/nops-6.d b/gas/testsuite/gas/i386/nops-6.d index c56c9d1..7dfb730 100644 --- a/gas/testsuite/gas/i386/nops-6.d +++ b/gas/testsuite/gas/i386/nops-6.d @@ -7,11 +7,11 @@ Disassembly of section .text: 0+ <i386>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d 74 26 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi 0+10 <i386_nop>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) [ ]*[a-f0-9]+: 66 90 xchg %ax,%ax +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) #pass diff --git a/gas/testsuite/gas/i386/nops-7.d b/gas/testsuite/gas/i386/nops-7.d index 2290ab7..1ae8efa 100644 --- a/gas/testsuite/gas/i386/nops-7.d +++ b/gas/testsuite/gas/i386/nops-7.d @@ -8,6 +8,7 @@ Disassembly of section .text: 0+ <_start>: +[a-f0-9]+: 31 c0 xor %eax,%eax +[a-f0-9]+: e9 f9 01 00 00 jmp 200 <func1> + +[a-f0-9]+: 90 nop +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi @@ -71,11 +72,11 @@ Disassembly of section .text: +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi - +[a-f0-9]+: 90 nop 0+200 <func1>: +[a-f0-9]+: 31 db xor %ebx,%ebx +[a-f0-9]+: e9 f9 00 00 00 jmp 300 <func2> + +[a-f0-9]+: 90 nop +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi @@ -107,11 +108,11 @@ Disassembly of section .text: +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi - +[a-f0-9]+: 90 nop 0+300 <func2>: +[a-f0-9]+: 31 db xor %ebx,%ebx +[a-f0-9]+: eb 7c jmp 380 <func3> + +[a-f0-9]+: 8d 74 26 00 lea 0x0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi @@ -127,11 +128,11 @@ Disassembly of section .text: +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi - +[a-f0-9]+: 8d 74 26 00 lea 0x0\(%esi,%eiz,1\),%esi 0+380 <func3>: +[a-f0-9]+: 31 c9 xor %ecx,%ecx +[a-f0-9]+: eb 3c jmp 3c0 <func4> + +[a-f0-9]+: 8d 74 26 00 lea 0x0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi @@ -139,15 +140,14 @@ Disassembly of section .text: +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi - +[a-f0-9]+: 8d 74 26 00 lea 0x0\(%esi,%eiz,1\),%esi 0+3c0 <func4>: +[a-f0-9]+: 31 d2 xor %edx,%edx +[a-f0-9]+: eb 1c jmp 3e0 <func5> + +[a-f0-9]+: 8d 74 26 00 lea 0x0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi - +[a-f0-9]+: 8d 74 26 00 lea 0x0\(%esi,%eiz,1\),%esi 0+3e0 <func5>: +[a-f0-9]+: 31 ff xor %edi,%edi diff --git a/gas/testsuite/gas/i386/nops-9.d b/gas/testsuite/gas/i386/nops-9.d index ba8707f..62fc954 100644 --- a/gas/testsuite/gas/i386/nops-9.d +++ b/gas/testsuite/gas/i386/nops-9.d @@ -7,21 +7,21 @@ Disassembly of section .text: 0+ <default>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d 74 26 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi 0+10 <nopopcnt>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 2e 8d 74 26 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi +[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi 0+20 <popcnt>: [ ]*[a-f0-9]+: f3 0f b8 f0 popcnt %eax,%esi -[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi [ ]*[a-f0-9]+: 8d 74 26 00 lea (0x)?0\(%esi,%eiz,1\),%esi +[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 lea %cs:(0x)?0\(%esi,%eiz,1\),%esi 0+30 <nop>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) [ ]*[a-f0-9]+: 66 90 xchg %ax,%ax +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nopw %cs:0x0\(%eax,%eax,1\) #pass diff --git a/gas/testsuite/gas/i386/nops16-1.d b/gas/testsuite/gas/i386/nops16-1.d index 5cc860b..dd1219e 100644 --- a/gas/testsuite/gas/i386/nops16-1.d +++ b/gas/testsuite/gas/i386/nops16-1.d @@ -7,57 +7,57 @@ Disassembly of section .text: 0+ <nop31>: -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: eb 1d jmp 20 <nop30> +[ ]*[a-f0-9]+: 8d b4 00 00 lea 0x0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si -[ ]*[a-f0-9]+: 8d b4 00 00 lea 0x0\(%si\),%si 0+20 <nop30>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: eb 1c jmp 40 <nop29> +[ ]*[a-f0-9]+: 8d 74 00 lea (0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si -[ ]*[a-f0-9]+: 8d 74 00 lea (0x)?0\(%si\),%si 0+40 <nop29>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: eb 1b jmp 60 <nop28> +[ ]*[a-f0-9]+: 89 f6 mov %si,%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si -[ ]*[a-f0-9]+: 89 f6 mov %si,%si 0+60 <nop28>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: eb 1a jmp 80 <nop27> +[ ]*[a-f0-9]+: 90 nop [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si -[ ]*[a-f0-9]+: 90 nop 0+80 <nop27>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: eb 19 jmp a0 <nop26> [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si @@ -66,78 +66,78 @@ Disassembly of section .text: [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si 0+a0 <nop26>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: eb 18 jmp c0 <nop25> +[ ]*[a-f0-9]+: 8d b4 00 00 lea (0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si -[ ]*[a-f0-9]+: 8d b4 00 00 lea (0x)?0\(%si\),%si 0+c0 <nop25>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: eb 17 jmp e0 <nop24> +[ ]*[a-f0-9]+: 8d 74 00 lea (0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si -[ ]*[a-f0-9]+: 8d 74 00 lea (0x)?0\(%si\),%si 0+e0 <nop24>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: eb 16 jmp 100 <nop23> +[ ]*[a-f0-9]+: 89 f6 mov %si,%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si -[ ]*[a-f0-9]+: 89 f6 mov %si,%si 0+100 <nop23>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: eb 15 jmp 120 <nop22> +[ ]*[a-f0-9]+: 90 nop [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si -[ ]*[a-f0-9]+: 90 nop 0+120 <nop22>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: eb 14 jmp 140 <nop21> [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si @@ -145,286 +145,286 @@ Disassembly of section .text: [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si 0+140 <nop21>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: eb 13 jmp 160 <nop20> +[ ]*[a-f0-9]+: 8d b4 00 00 lea (0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si -[ ]*[a-f0-9]+: 8d b4 00 00 lea (0x)?0\(%si\),%si 0+160 <nop20>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: eb 12 jmp 180 <nop19> +[ ]*[a-f0-9]+: 8d 74 00 lea (0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si -[ ]*[a-f0-9]+: 8d 74 00 lea (0x)?0\(%si\),%si 0+180 <nop19>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: eb 11 jmp 1a0 <nop18> +[ ]*[a-f0-9]+: 89 f6 mov %si,%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si -[ ]*[a-f0-9]+: 89 f6 mov %si,%si 0+1a0 <nop18>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: eb 10 jmp 1c0 <nop17> +[ ]*[a-f0-9]+: 90 nop [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si -[ ]*[a-f0-9]+: 90 nop 0+1c0 <nop17>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: eb 0f jmp 1e0 <nop16> [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si 0+1e0 <nop16>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: eb 0e jmp 200 <nop15> +[ ]*[a-f0-9]+: 8d b4 00 00 lea (0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si -[ ]*[a-f0-9]+: 8d b4 00 00 lea (0x)?0\(%si\),%si 0+200 <nop15>: -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: eb 0d jmp 210 <nop14> +[ ]*[a-f0-9]+: 8d 74 00 lea (0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si -[ ]*[a-f0-9]+: 8d 74 00 lea (0x)?0\(%si\),%si 0+210 <nop14>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: 8d b4 00 00 lea (0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si -[ ]*[a-f0-9]+: 8d b4 00 00 lea (0x)?0\(%si\),%si 0+220 <nop13>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: 8d 74 00 lea (0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si -[ ]*[a-f0-9]+: 8d 74 00 lea (0x)?0\(%si\),%si 0+230 <nop12>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: 89 f6 mov %si,%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si -[ ]*[a-f0-9]+: 89 f6 mov %si,%si 0+240 <nop11>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 90 nop [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si -[ ]*[a-f0-9]+: 90 nop 0+250 <nop10>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si 0+260 <nop9>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 8d b4 00 00 lea (0x)?0\(%si\),%si +[ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si 0+270 <nop8>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 8d 74 00 lea (0x)?0\(%si\),%si +[ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si 0+280 <nop7>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 89 f6 mov %si,%si +[ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si 0+290 <nop6>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 90 nop [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si -[ ]*[a-f0-9]+: 90 nop 0+2a0 <nop5>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 2e 8d b4 00 00 lea %cs:(0x)?0\(%si\),%si 0+2b0 <nop4>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 8d b4 00 00 lea 0x0\(%si\),%si 0+2c0 <nop3>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 8d 74 00 lea 0x0\(%si\),%si 0+2d0 <nop2>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 89 f6 mov %si,%si #pass diff --git a/gas/testsuite/gas/i386/nops16-1.s b/gas/testsuite/gas/i386/nops16-1.s index 8e13bb6..570711d5 100644 --- a/gas/testsuite/gas/i386/nops16-1.s +++ b/gas/testsuite/gas/i386/nops16-1.s @@ -1,332 +1,332 @@ .text .code16 nop31: - nop + clc .p2align 5 nop30: - nop - nop + clc + clc .p2align 5 nop29: - nop - nop - nop + clc + clc + clc .p2align 5 nop28: - nop - nop - nop - nop + clc + clc + clc + clc .p2align 5 nop27: - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc .p2align 5 nop26: - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc .p2align 5 nop25: - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc .p2align 5 nop24: - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc .p2align 5 nop23: - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 5 nop22: - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 5 nop21: - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 5 nop20: - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 5 nop19: - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 5 nop18: - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 5 nop17: - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 5 nop16: - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 5 nop15: - nop + clc .p2align 4 nop14: - nop - nop + clc + clc .p2align 4 nop13: - nop - nop - nop + clc + clc + clc .p2align 4 nop12: - nop - nop - nop - nop + clc + clc + clc + clc .p2align 4 nop11: - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc .p2align 4 nop10: - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc .p2align 4 nop9: - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc .p2align 4 nop8: - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc .p2align 4 nop7: - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 4 nop6: - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 4 nop5: - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 4 nop4: - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 4 nop3: - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 4 nop2: - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop - nop + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc + clc .p2align 4 diff --git a/gas/testsuite/gas/i386/solaris/x86-64-nop-5.d b/gas/testsuite/gas/i386/solaris/x86-64-nop-5.d index 3ca31a0..76e02fd 100644 --- a/gas/testsuite/gas/i386/solaris/x86-64-nop-5.d +++ b/gas/testsuite/gas/i386/solaris/x86-64-nop-5.d @@ -10,9 +10,9 @@ Disassembly of section .text: 0+ <_start>: +[a-f0-9]+: 31 c0 xor %eax,%eax +[a-f0-9]+: 85 c0 test %eax,%eax + +[a-f0-9]+: 90 nop +[a-f0-9]+: 0f 1f 44 00 00 nopl 0x0\(%rax,%rax,1\) +[a-f0-9]+: 0f 1f 44 00 00 nopl 0x0\(%rax,%rax,1\) - +[a-f0-9]+: 90 nop +[a-f0-9]+: 31 c0 xor %eax,%eax +[a-f0-9]+: 31 c0 xor %eax,%eax diff --git a/gas/testsuite/gas/i386/x86-64-align-branch-6.d b/gas/testsuite/gas/i386/x86-64-align-branch-6.d index 01a28ae..f198401 100644 --- a/gas/testsuite/gas/i386/x86-64-align-branch-6.d +++ b/gas/testsuite/gas/i386/x86-64-align-branch-6.d @@ -8,12 +8,12 @@ Disassembly of section .text: 0+ <_start>: + +[a-f0-9]+: 0f 1f 80 00 00 00 00 nopl 0x0\(%rax\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) - +[a-f0-9]+: 0f 1f 80 00 00 00 00 nopl 0x0\(%rax\) +[a-f0-9]+: f2 73 bf bnd jae 0 <_start> +[a-f0-9]+: c3 ret #pass diff --git a/gas/testsuite/gas/i386/x86-64-apx-pushp-popp-inval.l b/gas/testsuite/gas/i386/x86-64-apx-pushp-popp-inval.l index c4d774b..5e334a0 100644 --- a/gas/testsuite/gas/i386/x86-64-apx-pushp-popp-inval.l +++ b/gas/testsuite/gas/i386/x86-64-apx-pushp-popp-inval.l @@ -1,5 +1,5 @@ .* Assembler messages: .*:4: Error: operand size mismatch for `pushp' .*:5: Error: operand size mismatch for `popp' -.*:6: Error: operand size mismatch for `pushp' -.*:7: Error: operand size mismatch for `popp' +.*:6: Error: operand type mismatch for `pushp' +.*:7: Error: operand type mismatch for `popp' diff --git a/gas/testsuite/gas/i386/x86-64-lkgs-inval.l b/gas/testsuite/gas/i386/x86-64-lkgs-inval.l index 77ee7d7..29da973 100644 --- a/gas/testsuite/gas/i386/x86-64-lkgs-inval.l +++ b/gas/testsuite/gas/i386/x86-64-lkgs-inval.l @@ -5,5 +5,5 @@ .*:8: Error: invalid instruction suffix for `lkgs' .*:11: Error: invalid instruction suffix for `lkgs' .*:12: Error: invalid instruction suffix for `lkgs' -.*:13: Error: invalid instruction suffix for `lkgs' -.*:14: Error: invalid instruction suffix for `lkgs' +.*:13: Error: .* for `lkgs' +.*:14: Error: .* for `lkgs' diff --git a/gas/testsuite/gas/i386/x86-64-nop-1.d b/gas/testsuite/gas/i386/x86-64-nop-1.d index 5778021..3e52c70 100644 --- a/gas/testsuite/gas/i386/x86-64-nop-1.d +++ b/gas/testsuite/gas/i386/x86-64-nop-1.d @@ -21,16 +21,17 @@ Disassembly of section .text: +[a-f0-9]+: 0f 1f 40 00 nopl 0x0\(%rax\) 0+12 <pseudo_20>: - +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[a-f0-9]+: 66 0f 1f 84 00 00 00 00 00 nopw 0x0\(%rax,%rax,1\) + +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) 0+26 <pseudo_30>: + +[a-f0-9]+: 0f 1f 84 00 00 00 00 00 nopl 0x0\(%rax,%rax,1\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) - +[a-f0-9]+: 0f 1f 84 00 00 00 00 00 nopl 0x0\(%rax,%rax,1\) 0+44 <pseudo_129>: +[a-f0-9]+: eb 7f jmp c5 <end> + +[a-f0-9]+: 66 0f 1f 44 00 00 nopw 0x0\(%rax,%rax,1\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) @@ -42,7 +43,6 @@ Disassembly of section .text: +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) - +[a-f0-9]+: 66 0f 1f 44 00 00 nopw 0x0\(%rax,%rax,1\) 0+c5 <end>: +[a-f0-9]+: 31 c0 xor %eax,%eax diff --git a/gas/testsuite/gas/i386/x86-64-nop-5.d b/gas/testsuite/gas/i386/x86-64-nop-5.d index d5c84c1..b8c0ea7 100644 --- a/gas/testsuite/gas/i386/x86-64-nop-5.d +++ b/gas/testsuite/gas/i386/x86-64-nop-5.d @@ -11,9 +11,9 @@ Disassembly of section .text: 0+ <_start>: +[a-f0-9]+: 31 c0 xor %eax,%eax +[a-f0-9]+: 85 c0 test %eax,%eax + +[a-f0-9]+: 90 nop +[a-f0-9]+: 0f 1f 44 00 00 nopl 0x0\(%rax,%rax,1\) +[a-f0-9]+: 0f 1f 44 00 00 nopl 0x0\(%rax,%rax,1\) - +[a-f0-9]+: 90 nop +[a-f0-9]+: 31 c0 xor %eax,%eax +[a-f0-9]+: 31 c0 xor %eax,%eax diff --git a/gas/testsuite/gas/i386/x86-64-nops-1-core2.d b/gas/testsuite/gas/i386/x86-64-nops-1-core2.d index 3fe7f3f..5acc63c 100644 --- a/gas/testsuite/gas/i386/x86-64-nops-1-core2.d +++ b/gas/testsuite/gas/i386/x86-64-nops-1-core2.d @@ -9,149 +9,149 @@ Disassembly of section .text: 0+ <nop15>: - +[a-f0-9]+: 90 nop + +[a-f0-9]+: f8 clc +[a-f0-9]+: 66 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) 0+10 <nop14>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) 0+20 <nop13>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) 0+30 <nop12>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) 0+40 <nop11>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 66 2e 48 0f 1f 84 00 00 00 00 00 data16 cs nopq (0x)?0\(%rax,%rax,1\) 0+50 <nop10>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 2e 48 0f 1f 84 00 00 00 00 00 cs nopq (0x)?0\(%rax,%rax,1\) 0+60 <nop9>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 48 0f 1f 84 00 00 00 00 00 nopq (0x)?0\(%rax,%rax,1\) 0+70 <nop8>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 0f 1f 84 00 00 00 00 00 nopl (0x)?0\(%rax,%rax,1\) 0+80 <nop7>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 0f 1f 80 00 00 00 00 nopl (0x)?0\(%rax\) 0+90 <nop6>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 66 0f 1f 44 00 00 nopw (0x)?0\(%rax,%rax,1\) 0+a0 <nop5>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 0f 1f 44 00 00 nopl (0x)?0\(%rax,%rax,1\) 0+b0 <nop4>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 0f 1f 40 00 nopl (0x)?0\(%rax\) 0+c0 <nop3>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 0f 1f 00 nopl \(%rax\) 0+d0 <nop2>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 66 90 xchg %ax,%ax #pass diff --git a/gas/testsuite/gas/i386/x86-64-nops-1-pentium.d b/gas/testsuite/gas/i386/x86-64-nops-1-pentium.d index a888208..571ec95 100644 --- a/gas/testsuite/gas/i386/x86-64-nops-1-pentium.d +++ b/gas/testsuite/gas/i386/x86-64-nops-1-pentium.d @@ -8,155 +8,155 @@ Disassembly of section .text: 0+ <nop15>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 2e 48 8d b4 26 00 00 00 00 cs lea (0x)?0\(%rsi,%riz,1\),%rsi +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 2e 48 8d 74 26 00 cs lea (0x)?0\(%rsi,%riz,1\),%rsi +[ ]*[a-f0-9]+: 2e 48 8d b4 26 00 00 00 00 cs lea (0x)?0\(%rsi,%riz,1\),%rsi 0+10 <nop14>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 2e 48 8d b4 26 00 00 00 00 cs lea (0x)?0\(%rsi,%riz,1\),%rsi +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 48 8d 74 26 00 lea (0x)?0\(%rsi,%riz,1\),%rsi +[ ]*[a-f0-9]+: 2e 48 8d b4 26 00 00 00 00 cs lea (0x)?0\(%rsi,%riz,1\),%rsi 0+20 <nop13>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 2e 48 8d b4 26 00 00 00 00 cs lea (0x)?0\(%rsi,%riz,1\),%rsi +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 48 8d 76 00 lea (0x)?0\(%rsi\),%rsi +[ ]*[a-f0-9]+: 2e 48 8d b4 26 00 00 00 00 cs lea (0x)?0\(%rsi,%riz,1\),%rsi 0+30 <nop12>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 2e 48 8d b4 26 00 00 00 00 cs lea (0x)?0\(%rsi,%riz,1\),%rsi +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 48 89 f6 mov %rsi,%rsi +[ ]*[a-f0-9]+: 2e 48 8d b4 26 00 00 00 00 cs lea (0x)?0\(%rsi,%riz,1\),%rsi 0+40 <nop11>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 2e 48 8d b4 26 00 00 00 00 cs lea (0x)?0\(%rsi,%riz,1\),%rsi +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 66 90 xchg %ax,%ax +[ ]*[a-f0-9]+: 2e 48 8d b4 26 00 00 00 00 cs lea (0x)?0\(%rsi,%riz,1\),%rsi 0+50 <nop10>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 90 nop [ ]*[a-f0-9]+: 2e 48 8d b4 26 00 00 00 00 cs lea (0x)?0\(%rsi,%riz,1\),%rsi -[ ]*[a-f0-9]+: 90 nop 0+60 <nop9>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 2e 48 8d b4 26 00 00 00 00 cs lea (0x)?0\(%rsi,%riz,1\),%rsi 0+70 <nop8>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 48 8d b4 26 00 00 00 00 lea (0x)?0\(%rsi,%riz,1\),%rsi 0+80 <nop7>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 48 8d b6 00 00 00 00 lea (0x)?0\(%rsi\),%rsi 0+90 <nop6>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 2e 48 8d 74 26 00 cs lea (0x)?0\(%rsi,%riz,1\),%rsi 0+a0 <nop5>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 48 8d 74 26 00 lea (0x)?0\(%rsi,%riz,1\),%rsi 0+b0 <nop4>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 48 8d 76 00 lea (0x)?0\(%rsi\),%rsi 0+c0 <nop3>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 48 89 f6 mov %rsi,%rsi 0+d0 <nop2>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 66 90 xchg %ax,%ax #pass diff --git a/gas/testsuite/gas/i386/x86-64-nops-1.d b/gas/testsuite/gas/i386/x86-64-nops-1.d index ab99e56..45867a4 100644 --- a/gas/testsuite/gas/i386/x86-64-nops-1.d +++ b/gas/testsuite/gas/i386/x86-64-nops-1.d @@ -8,153 +8,153 @@ Disassembly of section .text: 0+ <nop15>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 0f 1f 40 00 nopl 0x0\(%rax\) +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) 0+10 <nop14>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 0f 1f 00 nopl \(%rax\) +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) 0+20 <nop13>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 66 90 xchg %ax,%ax +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) 0+30 <nop12>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 90 nop [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) -[ ]*[a-f0-9]+: 90 nop 0+40 <nop11>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) 0+50 <nop10>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 66 2e 0f 1f 84 00 00 00 00 00 cs nopw 0x0\(%rax,%rax,1\) 0+60 <nop9>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 66 0f 1f 84 00 00 00 00 00 nopw 0x0\(%rax,%rax,1\) 0+70 <nop8>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 0f 1f 84 00 00 00 00 00 nopl 0x0\(%rax,%rax,1\) 0+80 <nop7>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 0f 1f 80 00 00 00 00 nopl 0x0\(%rax\) 0+90 <nop6>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 66 0f 1f 44 00 00 nopw 0x0\(%rax,%rax,1\) 0+a0 <nop5>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 0f 1f 44 00 00 nopl 0x0\(%rax,%rax,1\) 0+b0 <nop4>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 0f 1f 40 00 nopl 0x0\(%rax\) 0+c0 <nop3>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 0f 1f 00 nopl \(%rax\) 0+d0 <nop2>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 66 90 xchg %ax,%ax #pass diff --git a/gas/testsuite/gas/i386/x86-64-nops-2.d b/gas/testsuite/gas/i386/x86-64-nops-2.d index fa07de7..b184888 100644 --- a/gas/testsuite/gas/i386/x86-64-nops-2.d +++ b/gas/testsuite/gas/i386/x86-64-nops-2.d @@ -10,157 +10,157 @@ Disassembly of section .text: 0+ <nop>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) [ ]*[a-f0-9]+: 66 90 xchg %ax,%ax +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) 0+10 <nop15>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 0f 1f 40 00 nopl 0x0\(%rax\) +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) 0+20 <nop14>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 0f 1f 00 nopl \(%rax\) +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) 0+30 <nop13>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 66 90 xchg %ax,%ax +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) 0+40 <nop12>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 90 nop [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) -[ ]*[a-f0-9]+: 90 nop 0+50 <nop11>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) 0+60 <nop10>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 66 2e 0f 1f 84 00 00 00 00 00 cs nopw 0x0\(%rax,%rax,1\) 0+70 <nop9>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 66 0f 1f 84 00 00 00 00 00 nopw 0x0\(%rax,%rax,1\) 0+80 <nop8>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 0f 1f 84 00 00 00 00 00 nopl 0x0\(%rax,%rax,1\) 0+90 <nop7>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 0f 1f 80 00 00 00 00 nopl 0x0\(%rax\) 0+a0 <nop6>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 66 0f 1f 44 00 00 nopw 0x0\(%rax,%rax,1\) 0+b0 <nop5>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 0f 1f 44 00 00 nopl 0x0\(%rax,%rax,1\) 0+c0 <nop4>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 0f 1f 40 00 nopl 0x0\(%rax\) 0+d0 <nop3>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 0f 1f 00 nopl \(%rax\) 0+e0 <nop2>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 66 90 xchg %ax,%ax #pass diff --git a/gas/testsuite/gas/i386/x86-64-nops-3.d b/gas/testsuite/gas/i386/x86-64-nops-3.d index 74c4d9c..899affb 100644 --- a/gas/testsuite/gas/i386/x86-64-nops-3.d +++ b/gas/testsuite/gas/i386/x86-64-nops-3.d @@ -9,11 +9,11 @@ Disassembly of section .text: 0+ <nop>: -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: 66 0f 1f 84 00 00 00 00 00 nopw 0x0\(%rax,%rax,1\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) -[ ]*[a-f0-9]+: 66 0f 1f 84 00 00 00 00 00 nopw 0x0\(%rax,%rax,1\) [ ]*[a-f0-9]+: 89 c3 mov %eax,%ebx -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) [ ]*[a-f0-9]+: 0f 1f 00 nopl \(%rax\) +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) #pass diff --git a/gas/testsuite/gas/i386/x86-64-nops-4-core2.d b/gas/testsuite/gas/i386/x86-64-nops-4-core2.d index 8154ca9..eb5cb16 100644 --- a/gas/testsuite/gas/i386/x86-64-nops-4-core2.d +++ b/gas/testsuite/gas/i386/x86-64-nops-4-core2.d @@ -9,203 +9,203 @@ Disassembly of section .text: 0+ <nop31>: + +[a-f0-9]+: f8 clc +[a-f0-9]+: 90 nop +[a-f0-9]+: 66 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) +[a-f0-9]+: 66 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) - +[a-f0-9]+: 90 nop 0+20 <nop30>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 66 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) +[a-f0-9]+: 66 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) 0+40 <nop29>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 66 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) + +[a-f0-9]+: 66 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) 0+60 <nop28>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 66 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) + +[a-f0-9]+: 66 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) 0+80 <nop27>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 66 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) + +[a-f0-9]+: 66 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) 0+a0 <nop26>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 66 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 66 2e 48 0f 1f 84 00 00 00 00 00 data16 cs nopq (0x)?0\(%rax,%rax,1\) + +[a-f0-9]+: 66 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) 0+c0 <nop25>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 66 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 2e 48 0f 1f 84 00 00 00 00 00 cs nopq (0x)?0\(%rax,%rax,1\) + +[a-f0-9]+: 66 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) 0+e0 <nop24>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 66 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 48 0f 1f 84 00 00 00 00 00 nopq (0x)?0\(%rax,%rax,1\) + +[a-f0-9]+: 66 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) 0+100 <nop23>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 66 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 0f 1f 84 00 00 00 00 00 nopl (0x)?0\(%rax,%rax,1\) + +[a-f0-9]+: 66 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) 0+120 <nop22>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 66 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 0f 1f 80 00 00 00 00 nopl (0x)?0\(%rax\) + +[a-f0-9]+: 66 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) 0+140 <nop21>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 66 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 66 0f 1f 44 00 00 nopw (0x)?0\(%rax,%rax,1\) + +[a-f0-9]+: 66 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) 0+160 <nop20>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 66 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 0f 1f 44 00 00 nopl (0x)?0\(%rax,%rax,1\) + +[a-f0-9]+: 66 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) 0+180 <nop19>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 66 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 0f 1f 40 00 nopl (0x)?0\(%rax\) + +[a-f0-9]+: 66 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) 0+1a0 <nop18>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 66 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 0f 1f 00 nopl \(%rax\) + +[a-f0-9]+: 66 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) 0+1c0 <nop17>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 66 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 66 90 xchg %ax,%ax + +[a-f0-9]+: 66 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) 0+1e0 <nop16>: - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop - +[a-f0-9]+: 90 nop + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc + +[a-f0-9]+: f8 clc +[a-f0-9]+: 90 nop +[a-f0-9]+: 66 66 66 66 66 2e 48 0f 1f 84 00 00 00 00 00 data16 data16 data16 data16 data16 cs nopq (0x)?0\(%rax,%rax,1\) - +[a-f0-9]+: 90 nop #pass diff --git a/gas/testsuite/gas/i386/x86-64-nops-4.d b/gas/testsuite/gas/i386/x86-64-nops-4.d index 7a922c9..778f9b2 100644 --- a/gas/testsuite/gas/i386/x86-64-nops-4.d +++ b/gas/testsuite/gas/i386/x86-64-nops-4.d @@ -9,211 +9,211 @@ Disassembly of section .text: 0+ <nop31>: -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: 66 0f 1f 84 00 00 00 00 00 nopw 0x0\(%rax,%rax,1\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) -[ ]*[a-f0-9]+: 66 0f 1f 84 00 00 00 00 00 nopw 0x0\(%rax,%rax,1\) 0+20 <nop30>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: 0f 1f 84 00 00 00 00 00 nopl 0x0\(%rax,%rax,1\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) -[ ]*[a-f0-9]+: 0f 1f 84 00 00 00 00 00 nopl 0x0\(%rax,%rax,1\) 0+40 <nop29>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: 0f 1f 80 00 00 00 00 nopl 0x0\(%rax\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) -[ ]*[a-f0-9]+: 0f 1f 80 00 00 00 00 nopl 0x0\(%rax\) 0+60 <nop28>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: 66 0f 1f 44 00 00 nopw 0x0\(%rax,%rax,1\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) -[ ]*[a-f0-9]+: 66 0f 1f 44 00 00 nopw 0x0\(%rax,%rax,1\) 0+80 <nop27>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: 0f 1f 44 00 00 nopl 0x0\(%rax,%rax,1\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) -[ ]*[a-f0-9]+: 0f 1f 44 00 00 nopl 0x0\(%rax,%rax,1\) 0+a0 <nop26>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: 0f 1f 40 00 nopl 0x0\(%rax\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) -[ ]*[a-f0-9]+: 0f 1f 40 00 nopl 0x0\(%rax\) 0+c0 <nop25>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: 0f 1f 00 nopl \(%rax\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) -[ ]*[a-f0-9]+: 0f 1f 00 nopl \(%rax\) 0+e0 <nop24>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: 66 90 xchg %ax,%ax [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) -[ ]*[a-f0-9]+: 66 90 xchg %ax,%ax 0+100 <nop23>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 90 nop [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) -[ ]*[a-f0-9]+: 90 nop 0+120 <nop22>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) [ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) 0+140 <nop21>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 66 2e 0f 1f 84 00 00 00 00 00 cs nopw 0x0\(%rax,%rax,1\) +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) 0+160 <nop20>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 66 0f 1f 84 00 00 00 00 00 nopw 0x0\(%rax,%rax,1\) +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) 0+180 <nop19>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 0f 1f 84 00 00 00 00 00 nopl 0x0\(%rax,%rax,1\) +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) 0+1a0 <nop18>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 0f 1f 80 00 00 00 00 nopl 0x0\(%rax\) +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) 0+1c0 <nop17>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 66 0f 1f 44 00 00 nopw 0x0\(%rax,%rax,1\) +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) 0+1e0 <nop16>: -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 90 nop -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc +[ ]*[a-f0-9]+: f8 clc [ ]*[a-f0-9]+: 0f 1f 44 00 00 nopl 0x0\(%rax,%rax,1\) +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) #pass diff --git a/gas/testsuite/gas/i386/x86-64-nops-5.d b/gas/testsuite/gas/i386/x86-64-nops-5.d index 3d18825..290f1d0 100644 --- a/gas/testsuite/gas/i386/x86-64-nops-5.d +++ b/gas/testsuite/gas/i386/x86-64-nops-5.d @@ -9,71 +9,71 @@ Disassembly of section .text: 0+ <i386>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 cs lea (0x)?0\(%rsi,%riz,1\),%esi [ ]*[a-f0-9]+: 2e 8d 74 26 00 cs lea (0x)?0\(%rsi,%riz,1\),%esi +[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 cs lea (0x)?0\(%rsi,%riz,1\),%esi 0+10 <i486>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 cs lea (0x)?0\(%rsi,%riz,1\),%esi [ ]*[a-f0-9]+: 2e 8d 74 26 00 cs lea (0x)?0\(%rsi,%riz,1\),%esi +[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 cs lea (0x)?0\(%rsi,%riz,1\),%esi 0+20 <i586>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 cs lea (0x)?0\(%rsi,%riz,1\),%esi [ ]*[a-f0-9]+: 2e 8d 74 26 00 cs lea (0x)?0\(%rsi,%riz,1\),%esi +[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 cs lea (0x)?0\(%rsi,%riz,1\),%esi 0+30 <i686>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 cs lea (0x)?0\(%rsi,%riz,1\),%esi [ ]*[a-f0-9]+: 2e 8d 74 26 00 cs lea (0x)?0\(%rsi,%riz,1\),%esi +[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 cs lea (0x)?0\(%rsi,%riz,1\),%esi 0+40 <pentium4>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) [ ]*[a-f0-9]+: 66 90 xchg %ax,%ax +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) 0+50 <nocona>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) [ ]*[a-f0-9]+: 66 90 xchg %ax,%ax +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) 0+60 <core>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) [ ]*[a-f0-9]+: 66 90 xchg %ax,%ax +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) 0+70 <core2>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) [ ]*[a-f0-9]+: 66 90 xchg %ax,%ax +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) 0+80 <k6>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 cs lea (0x)?0\(%rsi,%riz,1\),%esi [ ]*[a-f0-9]+: 2e 8d 74 26 00 cs lea (0x)?0\(%rsi,%riz,1\),%esi +[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 cs lea (0x)?0\(%rsi,%riz,1\),%esi 0+90 <athlon>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) [ ]*[a-f0-9]+: 66 90 xchg %ax,%ax +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) 0+a0 <k8>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) [ ]*[a-f0-9]+: 66 90 xchg %ax,%ax +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) 0+b0 <generic32>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 cs lea (0x)?0\(%rsi,%riz,1\),%esi [ ]*[a-f0-9]+: 2e 8d 74 26 00 cs lea (0x)?0\(%rsi,%riz,1\),%esi +[ ]*[a-f0-9]+: 2e 8d b4 26 00 00 00 00 cs lea (0x)?0\(%rsi,%riz,1\),%esi 0+c0 <generic64>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) [ ]*[a-f0-9]+: 66 90 xchg %ax,%ax +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) 0+d0 <amdfam10>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) [ ]*[a-f0-9]+: 66 90 xchg %ax,%ax +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) #pass diff --git a/gas/testsuite/gas/i386/x86-64-nops-6.d b/gas/testsuite/gas/i386/x86-64-nops-6.d index e962350..94bb966 100644 --- a/gas/testsuite/gas/i386/x86-64-nops-6.d +++ b/gas/testsuite/gas/i386/x86-64-nops-6.d @@ -8,6 +8,6 @@ Disassembly of section .text: 0+ <default>: [ ]*[a-f0-9]+: 0f be f0 movsbl %al,%esi -[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw (0x)?0\(%rax,%rax,1\) [ ]*[a-f0-9]+: 66 90 xchg %ax,%ax +[ ]*[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw (0x)?0\(%rax,%rax,1\) #pass diff --git a/gas/testsuite/gas/i386/x86-64-nops-7.d b/gas/testsuite/gas/i386/x86-64-nops-7.d index 859dfd8..d26c239 100644 --- a/gas/testsuite/gas/i386/x86-64-nops-7.d +++ b/gas/testsuite/gas/i386/x86-64-nops-7.d @@ -10,6 +10,7 @@ Disassembly of section .text: 0+ <_start>: +[a-f0-9]+: 31 c0 xor %eax,%eax +[a-f0-9]+: e9 f9 01 00 00 jmp 200 <func1> + +[a-f0-9]+: 66 2e 0f 1f 84 00 00 00 00 00 cs nopw 0x0\(%rax,%rax,1\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) @@ -55,11 +56,11 @@ Disassembly of section .text: +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) - +[a-f0-9]+: 66 2e 0f 1f 84 00 00 00 00 00 cs nopw 0x0\(%rax,%rax,1\) 0+200 <func1>: +[a-f0-9]+: 31 db xor %ebx,%ebx +[a-f0-9]+: e9 f9 00 00 00 jmp 300 <func2> + +[a-f0-9]+: 0f 1f 80 00 00 00 00 nopl 0x0\(%rax\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) @@ -82,11 +83,11 @@ Disassembly of section .text: +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) - +[a-f0-9]+: 0f 1f 80 00 00 00 00 nopl 0x0\(%rax\) 0+300 <func2>: +[a-f0-9]+: 31 db xor %ebx,%ebx +[a-f0-9]+: eb 7c jmp 380 <func3> + +[a-f0-9]+: 0f 1f 00 nopl \(%rax\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) @@ -98,22 +99,21 @@ Disassembly of section .text: +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) - +[a-f0-9]+: 0f 1f 00 nopl \(%rax\) 0+380 <func3>: +[a-f0-9]+: 31 c9 xor %ecx,%ecx + +[a-f0-9]+: 0f 1f 80 00 00 00 00 nopl 0x0\(%rax\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) - +[a-f0-9]+: 0f 1f 80 00 00 00 00 nopl 0x0\(%rax\) 0+3c0 <func4>: +[a-f0-9]+: 31 d2 xor %edx,%edx + +[a-f0-9]+: 0f 1f 84 00 00 00 00 00 nopl 0x0\(%rax,%rax,1\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) +[a-f0-9]+: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 cs nopw 0x0\(%rax,%rax,1\) - +[a-f0-9]+: 0f 1f 84 00 00 00 00 00 nopl 0x0\(%rax,%rax,1\) 0+3e0 <func5>: +[a-f0-9]+: 31 ff xor %edi,%edi diff --git a/gas/testsuite/gas/i386/x86-64-reg-bad.l b/gas/testsuite/gas/i386/x86-64-reg-bad.l deleted file mode 100644 index 88184b6..0000000 --- a/gas/testsuite/gas/i386/x86-64-reg-bad.l +++ /dev/null @@ -1,21 +0,0 @@ -.*: Assembler messages: -.*:6: Error: .* mismatch for `div' -.*:7: Error: .* mismatch for `in' -.*:8: Error: .* mismatch for `lods' -.*:9: Error: .* mismatch for `movabs' -.*:10: Error: .* mismatch for `shl' -GAS LISTING .* - - -[ ]*[1-9][0-9]*[ ]+\# Check %axl / %cxl aren't permitted as accumulator / shift count -[ ]*[1-9][0-9]*[ ]+ -[ ]*[1-9][0-9]*[ ]+\.text -[ ]*[1-9][0-9]*[ ]+reg: -[ ]*[1-9][0-9]*[ ]+\?* 4080C001[ ]+add \$1, %axl -[ ]*[1-9][0-9]*[ ]+div %bl, %axl -[ ]*[1-9][0-9]*[ ]+in %dx, %axl -[ ]*[1-9][0-9]*[ ]+lods \(%rsi\), %axl -[ ]*[1-9][0-9]*[ ]+movabs -1, %axl -[ ]*[1-9][0-9]*[ ]+shl %cxl, %eax -[ ]*[1-9][0-9]*[ ]+\?* 40F6C001[ ]+test \$1, %axl -#pass diff --git a/gas/testsuite/gas/i386/x86-64-reg-bad.s b/gas/testsuite/gas/i386/x86-64-reg-bad.s deleted file mode 100644 index d7e0c7c..0000000 --- a/gas/testsuite/gas/i386/x86-64-reg-bad.s +++ /dev/null @@ -1,11 +0,0 @@ -# Check %axl / %cxl aren't permitted as accumulator / shift count - - .text -reg: - add $1, %axl - div %bl, %axl - in %dx, %axl - lods (%rsi), %axl - movabs -1, %axl - shl %cxl, %eax - test $1, %axl diff --git a/gas/testsuite/gas/i386/x86-64-reg-intel.d b/gas/testsuite/gas/i386/x86-64-reg-intel.d index f6974c8..023aad9 100644 --- a/gas/testsuite/gas/i386/x86-64-reg-intel.d +++ b/gas/testsuite/gas/i386/x86-64-reg-intel.d @@ -26,7 +26,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: 0f 73 f6 02 psllq mm6,0x2 [ ]*[a-f0-9]+: 66 41 0f 73 f2 02 psllq xmm10,0x2 [ ]*[a-f0-9]+: 66 41 0f 73 fa 02 pslldq xmm10,0x2 -[ ]*[a-f0-9]+: 40 80 c0 01[ ]+rex add al,0x1 +[ ]*[a-f0-9]+: 40 04 01[ ]+rex add al,0x1 [ ]*[a-f0-9]+: 40 80 c1 01[ ]+rex add cl,0x1 [ ]*[a-f0-9]+: 40 80 c2 01[ ]+rex add dl,0x1 [ ]*[a-f0-9]+: 40 80 c3 01[ ]+rex add bl,0x1 @@ -34,6 +34,9 @@ Disassembly of section .text: [ ]*[a-f0-9]+: 40 80 c5 01[ ]+add bpl,0x1 [ ]*[a-f0-9]+: 40 80 c6 01[ ]+add sil,0x1 [ ]*[a-f0-9]+: 40 80 c7 01[ ]+add dil,0x1 +[ ]*[a-f0-9]+: 40 e4 00[ ]+rex in al,0x0 +[ ]*[a-f0-9]+: 40 e6 00[ ]+rex out 0x0,al +[ ]*[a-f0-9]+: 40 d3 e0[ ]+rex shl eax,cl [ ]*[a-f0-9]+: 0f 71 d6 02 psrlw mm6,0x2 [ ]*[a-f0-9]+: 66 0f 71 d2 02 psrlw xmm2,0x2 [ ]*[a-f0-9]+: 0f 71 e6 02 psraw mm6,0x2 diff --git a/gas/testsuite/gas/i386/x86-64-reg.d b/gas/testsuite/gas/i386/x86-64-reg.d index ae9c054..e644a46 100644 --- a/gas/testsuite/gas/i386/x86-64-reg.d +++ b/gas/testsuite/gas/i386/x86-64-reg.d @@ -25,7 +25,7 @@ Disassembly of section .text: [ ]*[a-f0-9]+: 0f 73 f6 02 psllq \$0x2,%mm6 [ ]*[a-f0-9]+: 66 41 0f 73 f2 02 psllq \$0x2,%xmm10 [ ]*[a-f0-9]+: 66 41 0f 73 fa 02 pslldq \$0x2,%xmm10 -[ ]*[a-f0-9]+: 40 80 c0 01[ ]+rex add \$0x1,%al +[ ]*[a-f0-9]+: 40 04 01[ ]+rex add \$0x1,%al [ ]*[a-f0-9]+: 40 80 c1 01[ ]+rex add \$0x1,%cl [ ]*[a-f0-9]+: 40 80 c2 01[ ]+rex add \$0x1,%dl [ ]*[a-f0-9]+: 40 80 c3 01[ ]+rex add \$0x1,%bl @@ -33,6 +33,9 @@ Disassembly of section .text: [ ]*[a-f0-9]+: 40 80 c5 01[ ]+add \$0x1,%bpl [ ]*[a-f0-9]+: 40 80 c6 01[ ]+add \$0x1,%sil [ ]*[a-f0-9]+: 40 80 c7 01[ ]+add \$0x1,%dil +[ ]*[a-f0-9]+: 40 e4 00[ ]+rex in \$0x0,%al +[ ]*[a-f0-9]+: 40 e6 00[ ]+rex out %al,\$0x0 +[ ]*[a-f0-9]+: 40 d3 e0[ ]+rex shl %cl,%eax [ ]*[a-f0-9]+: 0f 71 d6 02 psrlw \$0x2,%mm6 [ ]*[a-f0-9]+: 66 0f 71 d2 02 psrlw \$0x2,%xmm2 [ ]*[a-f0-9]+: 0f 71 e6 02 psraw \$0x2,%mm6 diff --git a/gas/testsuite/gas/i386/x86-64-reg.s b/gas/testsuite/gas/i386/x86-64-reg.s index 69ac24b..b1e13e4 100644 --- a/gas/testsuite/gas/i386/x86-64-reg.s +++ b/gas/testsuite/gas/i386/x86-64-reg.s @@ -30,6 +30,10 @@ pslldq $2, %xmm10 add $1, %sil add $1, %dil + in $0, %axl + out %axl, $0 + shl %cxl, %eax + .intel_syntax noprefix psrlw mm6, 2 psrlw xmm2, 2 diff --git a/gas/testsuite/gas/i386/x86-64.exp b/gas/testsuite/gas/i386/x86-64.exp index 2a460c9..d24e910 100644 --- a/gas/testsuite/gas/i386/x86-64.exp +++ b/gas/testsuite/gas/i386/x86-64.exp @@ -156,7 +156,6 @@ run_dump_test "x86-64-simd-suffix" run_dump_test "x86-64-mem" run_dump_test "x86-64-mem-intel" run_dump_test "x86-64-reg" -run_list_test "x86-64-reg-bad" "-al" run_dump_test "x86-64-reg-intel" run_dump_test "x86-64-sib" run_dump_test "x86-64-sib-intel" diff --git a/gas/testsuite/gas/kvx/nop-align.d b/gas/testsuite/gas/kvx/nop-align.d index 5fbb571..755cf8d 100644 --- a/gas/testsuite/gas/kvx/nop-align.d +++ b/gas/testsuite/gas/kvx/nop-align.d @@ -20,9 +20,9 @@ Disassembly of section .text: [0-9a-f]+ <g\+0xc> nop [0-9a-f]+ <g\+0x10> nop -[0-9a-f]+ <g\+0x14> nop -[0-9a-f]+ <g\+0x18> nop;; +[0-9a-f]+ <g\+0x14> nop;; +[0-9a-f]+ <g\+0x18> nop [0-9a-f]+ <g\+0x1c> nop [0-9a-f]+ <g\+0x20> nop [0-9a-f]+ <g\+0x24> nop;; diff --git a/gas/testsuite/gas/loongarch/div_zero.l b/gas/testsuite/gas/loongarch/div_zero.l new file mode 100644 index 0000000..b30c665 --- /dev/null +++ b/gas/testsuite/gas/loongarch/div_zero.l @@ -0,0 +1,4 @@ +#source: div_zero.s +.*: Assembler messages: +.*: Warning: Divide by zero! +.*: Warning: Divide by zero! diff --git a/gas/testsuite/gas/loongarch/div_zero.s b/gas/testsuite/gas/loongarch/div_zero.s new file mode 100644 index 0000000..44a5c26 --- /dev/null +++ b/gas/testsuite/gas/loongarch/div_zero.s @@ -0,0 +1,2 @@ +addi.w $a0,$a1,2/0 +addi.d $a0,$a1,4%0 diff --git a/gas/testsuite/gas/loongarch/loongarch.exp b/gas/testsuite/gas/loongarch/loongarch.exp index 0e836f7..d2008f4 100644 --- a/gas/testsuite/gas/loongarch/loongarch.exp +++ b/gas/testsuite/gas/loongarch/loongarch.exp @@ -37,5 +37,6 @@ if [istarget loongarch*-*-*] { run_list_test "illegal-operand" run_list_test "pseudo_op_option_fail" run_list_test "negative_right_shift" + run_list_test "div_zero" } } diff --git a/gas/testsuite/gas/loongarch/relax_align.d b/gas/testsuite/gas/loongarch/relax_align.d index fc1fd03..a92df37 100644 --- a/gas/testsuite/gas/loongarch/relax_align.d +++ b/gas/testsuite/gas/loongarch/relax_align.d @@ -1,6 +1,7 @@ #as: #objdump: -dr #skip: loongarch32-*-* +#warning_output: relax_align.l .*:[ ]+file format .* @@ -44,3 +45,8 @@ Disassembly of section .text: [ ]+68:[ ]+03400000[ ]+nop [ ]+6c:[ ]+03400000[ ]+nop [ ]+70:[ ]+4c000020[ ]+ret +[ ]+74:[ ]+03400000[ ]+nop +[ ]+74: R_LARCH_ALIGN[ ]+\*ABS\*\+0xc +[ ]+78:[ ]+03400000[ ]+nop +[ ]+7c:[ ]+03400000[ ]+nop +[ ]+80:[ ]+4c000020[ ]+ret diff --git a/gas/testsuite/gas/loongarch/relax_align.l b/gas/testsuite/gas/loongarch/relax_align.l new file mode 100644 index 0000000..e33fa86 --- /dev/null +++ b/gas/testsuite/gas/loongarch/relax_align.l @@ -0,0 +1,3 @@ +.*Assembler messages: +.*: Warning: ignoring out of range alignment maximum +.*: Warning: ignoring out of range alignment maximum diff --git a/gas/testsuite/gas/loongarch/relax_align.s b/gas/testsuite/gas/loongarch/relax_align.s index 4f4867f..079f549 100644 --- a/gas/testsuite/gas/loongarch/relax_align.s +++ b/gas/testsuite/gas/loongarch/relax_align.s @@ -1,5 +1,4 @@ -# If max < -0x80000000, max becomes a positive number because type conversion -# (bfd_signed_vma -> unsigned int). +# Range of max: 0<= max <= 0xffffffff .text .L1: ret @@ -13,6 +12,9 @@ ret .align 4, , 12 ret + .align 4, , 0xffffffff + ret +# ignore out of range alignment maxumum .align 4, , -1 ret .align 4, , -0x80000000 diff --git a/gas/testsuite/gas/ppc/future.d b/gas/testsuite/gas/ppc/future.d index 76a30a5..5c008b5 100644 --- a/gas/testsuite/gas/ppc/future.d +++ b/gas/testsuite/gas/ppc/future.d @@ -57,4 +57,39 @@ Disassembly of section \.text: .*: (d0 1e 22 f0|f0 22 1e d0) xxgfmul128gcm vs1,vs2,vs3 .*: (d6 0f e0 f3|f3 e0 0f d6) xxgfmul128xts vs31,vs32,vs33 .*: (d6 0f e0 f3|f3 e0 0f d6) xxgfmul128xts vs31,vs32,vs33 +.*: (06 00 00 00|00 00 00 06) paddis r12,r9,15 +.*: (3d 89 00 0f|0f 00 89 3d) +.*: (06 00 00 00|00 00 00 06) paddis r12,r9,15 +.*: (3d 89 00 0f|0f 00 89 3d) +.*: (06 00 ff ff|ff ff 00 06) paddis r12,r9,-32769 +.*: (3d 89 7f ff|ff 7f 89 3d) +.*: (06 00 ff ff|ff ff 00 06) paddis r12,r9,-32769 +.*: (3d 89 7f ff|ff 7f 89 3d) +.*: (06 10 00 00|00 00 10 06) paddis r9,0,25,1 # e4 +.*: (3d 20 00 19|19 00 20 3d) +.*: (06 00 7f ff|ff 7f 00 06) plis r24,2147483647 +.*: (3f 00 ff ff|ff ff 00 3f) +.*: (06 00 7f ff|ff 7f 00 06) plis r24,2147483647 +.*: (3f 00 ff ff|ff ff 00 3f) +.*: (60 00 00 00|00 00 00 60) nop +.*: (06 00 7f ff|ff 7f 00 06) plis r24,2147483647 +.*: (3f 00 ff ff|ff ff 00 3f) +.*: (06 00 80 00|00 80 00 06) paddis r30,r10,-2147483648 +.*: (3f ca 00 00|00 00 ca 3f) +.*: (06 00 80 00|00 80 00 06) paddis r30,r10,-2147483648 +.*: (3f ca 00 00|00 00 ca 3f) +.*: (06 00 80 00|00 80 00 06) paddis r30,r10,-2147483648 +.*: (3f ca 00 00|00 00 ca 3f) +.*: (60 00 00 00|00 00 00 60) nop +.*: (06 00 7f ff|ff 7f 00 06) paddis r30,r10,2147483647 +.*: (3f ca ff ff|ff ff ca 3f) +.*: (06 00 7f ff|ff 7f 00 06) paddis r30,r10,2147483647 +.*: (3f ca ff ff|ff ff ca 3f) +.*: (06 00 7f ff|ff 7f 00 06) paddis r30,r10,2147483647 +.*: (3f ca ff ff|ff ff ca 3f) +.*: (60 00 00 00|00 00 00 60) nop +.*: (06 10 7f ff|ff 7f 10 06) paddis r15,0,2147483647,1 # 140 +.* (3d e0 ff ff|ff ff e0 3d) +.*: (06 10 7f ff|ff 7f 10 06) paddis r15,0,2147483647,1 # 148 +.* (3d e0 ff ff|ff ff e0 3d) #pass diff --git a/gas/testsuite/gas/ppc/future.s b/gas/testsuite/gas/ppc/future.s index fec99e3..55867de 100644 --- a/gas/testsuite/gas/ppc/future.s +++ b/gas/testsuite/gas/ppc/future.s @@ -49,3 +49,21 @@ _start: xxgfmul128gcm 1, 2, 3 xxgfmul128 31, 32, 33, 1 xxgfmul128xts 31, 32, 33 + paddis 12, 9, 15, 0 + paddis 12, 9, 15 + paddis 12, 9, ~(1<<15), 0 + paddis 12, 9, ~(1<<15) + paddis 9, 0, 25, 1 + paddis 24, 0, 2147483647, 0 + paddis 24, 0, 2147483647 + plis 24, 2147483647 + paddis 30, 10, -2147483648, 0 + paddis 30, 10, -2147483648 + psubis 30, 10, 2147483648, 0 + nop + paddis 30, 10, 2147483647, 0 + paddis 30, 10, 2147483647 + psubis 30, 10, -2147483647, 0 + paddis 15, 0, 2147483647, 1 + psubis 15, 0, -2147483647, 1 + diff --git a/gas/testsuite/gas/riscv/attribute-15.d b/gas/testsuite/gas/riscv/attribute-15.d new file mode 100644 index 0000000..929631a --- /dev/null +++ b/gas/testsuite/gas/riscv/attribute-15.d @@ -0,0 +1,8 @@ +#as: -march-attr -mpriv-spec=1.13 +#readelf: -A +#source: attribute-11.s +Attribute Section: riscv +File Attributes + Tag_RISCV_arch: [a-zA-Z0-9_\"].* + Tag_RISCV_priv_spec: 1 + Tag_RISCV_priv_spec_minor: 13 diff --git a/gas/testsuite/gas/riscv/attribute-16.d b/gas/testsuite/gas/riscv/attribute-16.d new file mode 100644 index 0000000..928d8d7 --- /dev/null +++ b/gas/testsuite/gas/riscv/attribute-16.d @@ -0,0 +1,6 @@ +#as: -march-attr -mpriv-spec=1.13 +#readelf: -A +#source: empty.s +Attribute Section: riscv +File Attributes + Tag_RISCV_arch: [a-zA-Z0-9_\"].* diff --git a/gas/testsuite/gas/riscv/attribute-17.d b/gas/testsuite/gas/riscv/attribute-17.d new file mode 100644 index 0000000..8e87e8e --- /dev/null +++ b/gas/testsuite/gas/riscv/attribute-17.d @@ -0,0 +1,6 @@ +#as: -march=rva20u64 -misa-spec=20191213 +#readelf: -A +#source: empty.s +Attribute Section: riscv +File Attributes + Tag_RISCV_arch: "rv64i2p1_m2p0_a2p1_f2p2_d2p2_c2p0_ziccamoa1p0_ziccif1p0_zicclsm1p0_ziccrse1p0_zicntr2p0_zicsr2p0_zmmul1p0_za128rs1p0_zaamo1p0_zalrsc1p0" diff --git a/gas/testsuite/gas/riscv/attribute-18.d b/gas/testsuite/gas/riscv/attribute-18.d new file mode 100644 index 0000000..2bec0df --- /dev/null +++ b/gas/testsuite/gas/riscv/attribute-18.d @@ -0,0 +1,6 @@ +#as: -march=rvi20u32_d -misa-spec=20191213 +#readelf: -A +#source: empty.s +Attribute Section: riscv +File Attributes + Tag_RISCV_arch: "rv32i2p1_f2p2_d2p2_zicsr2p0" diff --git a/gas/testsuite/gas/riscv/attribute-19.d b/gas/testsuite/gas/riscv/attribute-19.d new file mode 100644 index 0000000..d73e3f0 --- /dev/null +++ b/gas/testsuite/gas/riscv/attribute-19.d @@ -0,0 +1,6 @@ +#as: -march=rva23u64 -misa-spec=20191213 +#readelf: -A +#source: empty.s +Attribute Section: riscv +File Attributes + Tag_RISCV_arch: "rv64i2p1_m2p0_a2p1_f2p2_d2p2_c2p0_b1p0_v1p0_zic64b1p0_zicbom1p0_zicbop1p0_zicboz1p0_ziccamoa1p0_ziccif1p0_zicclsm1p0_ziccrse1p0_zicntr2p0_zicond1p0_zicsr2p0_zihintntl1p0_zihintpause2p0_zihpm2p0_zimop1p0_zmmul1p0_za64rs1p0_zaamo1p0_zalrsc1p0_zawrs1p0_zfa1p0_zfhmin1p0_zca1p0_zcb1p0_zcmop1p0_zba1p0_zbb1p0_zbs1p0_zkt1p0_zvbb1p0_zve32f1p0_zve32x1p0_zve64d1p0_zve64f1p0_zve64x1p0_zvfhmin1p0_zvkb1p0_zvkt1p0_zvl128b1p0_zvl32b1p0_zvl64b1p0_supm1p0" diff --git a/gas/testsuite/gas/riscv/attribute-20.d b/gas/testsuite/gas/riscv/attribute-20.d new file mode 100644 index 0000000..22bcc13 --- /dev/null +++ b/gas/testsuite/gas/riscv/attribute-20.d @@ -0,0 +1,6 @@ +#as: -march=rvb23u64 -misa-spec=20191213 +#readelf: -A +#source: empty.s +Attribute Section: riscv +File Attributes + Tag_RISCV_arch: "rv64i2p1_m2p0_a2p1_f2p2_d2p2_c2p0_b1p0_zic64b1p0_zicbom1p0_zicbop1p0_zicboz1p0_ziccamoa1p0_ziccif1p0_zicclsm1p0_ziccrse1p0_zicntr2p0_zicond1p0_zicsr2p0_zihintntl1p0_zihintpause2p0_zihpm2p0_zimop1p0_zmmul1p0_za64rs1p0_zaamo1p0_zalrsc1p0_zawrs1p0_zfa1p0_zfhmin1p0_zca1p0_zcb1p0_zcmop1p0_zba1p0_zbb1p0_zbs1p0_zkt1p0_supm1p0" diff --git a/gas/testsuite/gas/riscv/attribute-rva23s.d b/gas/testsuite/gas/riscv/attribute-rva23s.d new file mode 100644 index 0000000..54e79aa --- /dev/null +++ b/gas/testsuite/gas/riscv/attribute-rva23s.d @@ -0,0 +1,6 @@ +#as: -march=rva23s64 -misa-spec=20191213 +#readelf: -A +#source: empty.s +Attribute Section: riscv +File Attributes + Tag_RISCV_arch: "rv64i2p1_m2p0_a2p1_f2p2_d2p2_c2p0_b1p0_v1p0_h1p0_zic64b1p0_zicbom1p0_zicbop1p0_zicboz1p0_ziccamoa1p0_ziccif1p0_zicclsm1p0_ziccrse1p0_zicntr2p0_zicond1p0_zicsr2p0_zihintntl1p0_zihintpause2p0_zihpm2p0_zimop1p0_zmmul1p0_za64rs1p0_zaamo1p0_zalrsc1p0_zawrs1p0_zfa1p0_zfhmin1p0_zca1p0_zcb1p0_zcmop1p0_zba1p0_zbb1p0_zbs1p0_zkt1p0_zvbb1p0_zve32f1p0_zve32x1p0_zve64d1p0_zve64f1p0_zve64x1p0_zvfhmin1p0_zvkb1p0_zvkt1p0_zvl128b1p0_zvl32b1p0_zvl64b1p0_sha1p0_shcounterenw1p0_shgatpa1p0_shtvala1p0_shvsatpa1p0_shvstvala1p0_shvstvecd1p0_ssccptr1p0_sscofpmf1p0_sscounterenw1p0_ssnpm1p0_ssstateen1p0_sstc1p0_sstvala1p0_sstvecd1p0_ssu64xl1p0_supm1p0_svade1p0_svbare1p0_svinval1p0_svnapot1p0_svpbmt1p0" diff --git a/gas/testsuite/gas/riscv/attribute-rvb23s.d b/gas/testsuite/gas/riscv/attribute-rvb23s.d new file mode 100644 index 0000000..5cee65a --- /dev/null +++ b/gas/testsuite/gas/riscv/attribute-rvb23s.d @@ -0,0 +1,6 @@ +#as: -march=rvb23s64 -misa-spec=20191213 +#readelf: -A +#source: empty.s +Attribute Section: riscv +File Attributes + Tag_RISCV_arch: "rv64i2p1_m2p0_a2p1_f2p2_d2p2_c2p0_b1p0_zic64b1p0_zicbom1p0_zicbop1p0_zicboz1p0_ziccamoa1p0_ziccif1p0_zicclsm1p0_ziccrse1p0_zicntr2p0_zicond1p0_zicsr2p0_zihintntl1p0_zihintpause2p0_zihpm2p0_zimop1p0_zmmul1p0_za64rs1p0_zaamo1p0_zalrsc1p0_zawrs1p0_zfa1p0_zfhmin1p0_zca1p0_zcb1p0_zcmop1p0_zba1p0_zbb1p0_zbs1p0_zkt1p0_zvbb1p0_zve32f1p0_zve32x1p0_zvfhmin1p0_zvkb1p0_zvkt1p0_zvl32b1p0_ssccptr1p0_sscofpmf1p0_sscounterenw1p0_sstc1p0_sstvala1p0_sstvecd1p0_ssu64xl1p0_supm1p0_svade1p0_svbare1p0_svinval1p0_svnapot1p0_svpbmt1p0" diff --git a/gas/testsuite/gas/riscv/csr-version-1p10.d b/gas/testsuite/gas/riscv/csr-version-1p10.d index 6896e7b..f05b3b5 100644 --- a/gas/testsuite/gas/riscv/csr-version-1p10.d +++ b/gas/testsuite/gas/riscv/csr-version-1p10.d @@ -175,6 +175,8 @@ Disassembly of section .text: [ ]+[0-9a-f]+:[ ]+30159073[ ]+csrw[ ]+misa,a1 [ ]+[0-9a-f]+:[ ]+30202573[ ]+csrr[ ]+a0,medeleg [ ]+[0-9a-f]+:[ ]+30259073[ ]+csrw[ ]+medeleg,a1 +[ ]+[0-9a-f]+:[ ]+31202573[ ]+csrr[ ]+a0,0x312 +[ ]+[0-9a-f]+:[ ]+31259073[ ]+csrw[ ]+0x312,a1 [ ]+[0-9a-f]+:[ ]+30302573[ ]+csrr[ ]+a0,mideleg [ ]+[0-9a-f]+:[ ]+30359073[ ]+csrw[ ]+mideleg,a1 [ ]+[0-9a-f]+:[ ]+30402573[ ]+csrr[ ]+a0,mie @@ -555,6 +557,8 @@ Disassembly of section .text: [ ]+[0-9a-f]+:[ ]+60059073[ ]+csrw[ ]+hstatus,a1 [ ]+[0-9a-f]+:[ ]+60202573[ ]+csrr[ ]+a0,hedeleg [ ]+[0-9a-f]+:[ ]+60259073[ ]+csrw[ ]+hedeleg,a1 +[ ]+[0-9a-f]+:[ ]+61202573[ ]+csrr[ ]+a0,0x612 +[ ]+[0-9a-f]+:[ ]+61259073[ ]+csrw[ ]+0x612,a1 [ ]+[0-9a-f]+:[ ]+60302573[ ]+csrr[ ]+a0,hideleg [ ]+[0-9a-f]+:[ ]+60359073[ ]+csrw[ ]+hideleg,a1 [ ]+[0-9a-f]+:[ ]+60402573[ ]+csrr[ ]+a0,hie @@ -735,6 +739,8 @@ Disassembly of section .text: [ ]+[0-9a-f]+:[ ]+21459073[ ]+csrw[ ]+vsieh,a1 [ ]+[0-9a-f]+:[ ]+25402573[ ]+csrr[ ]+a0,vsiph [ ]+[0-9a-f]+:[ ]+25459073[ ]+csrw[ ]+vsiph,a1 +[ ]+[0-9a-f]+:[ ]+12002573[ ]+csrr[ ]+a0,scountinhibit +[ ]+[0-9a-f]+:[ ]+12059073[ ]+csrw[ ]+scountinhibit,a1 [ ]+[0-9a-f]+:[ ]+01102573[ ]+csrr[ ]+a0,ssp [ ]+[0-9a-f]+:[ ]+01159073[ ]+csrw[ ]+ssp,a1 [ ]+[0-9a-f]+:[ ]+15002573[ ]+csrr[ ]+a0,siselect diff --git a/gas/testsuite/gas/riscv/csr-version-1p10.l b/gas/testsuite/gas/riscv/csr-version-1p10.l index 46d1e4e..4b6f573 100644 --- a/gas/testsuite/gas/riscv/csr-version-1p10.l +++ b/gas/testsuite/gas/riscv/csr-version-1p10.l @@ -273,6 +273,14 @@ .*Info: macro .* .*Warning: read-only CSR is written `csrw mconfigptr,a1' .*Info: macro .* +.*Warning: invalid CSR `medelegh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `medelegh' for the privileged spec `1.10' +.*Info: macro .* +.*Warning: invalid CSR `medelegh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `medelegh' for the privileged spec `1.10' +.*Info: macro .* .*Warning: invalid CSR `mstatush', needs rv32i extension .*Info: macro .* .*Warning: invalid CSR `mstatush' for the privileged spec `1.10' @@ -721,6 +729,14 @@ .*Info: macro .* .*Warning: invalid CSR `hedeleg', needs `h' extension .*Info: macro .* +.*Warning: invalid CSR `hedelegh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hedelegh', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hedelegh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hedelegh', needs `h' extension +.*Info: macro .* .*Warning: invalid CSR `hideleg', needs `h' extension .*Info: macro .* .*Warning: invalid CSR `hideleg', needs `h' extension @@ -1285,6 +1301,10 @@ .*Info: macro .* .*Warning: invalid CSR `vsiph', needs `ssaia' extension .*Info: macro .* +.*Warning: invalid CSR `scountinhibit', needs `ssccfg' extension +.*Info: macro .* +.*Warning: invalid CSR `scountinhibit', needs `ssccfg' extension +.*Info: macro .* .*Warning: invalid CSR `ssp', needs `zicfiss' extension .*Info: macro .* .*Warning: invalid CSR `ssp', needs `zicfiss' extension diff --git a/gas/testsuite/gas/riscv/csr-version-1p11.d b/gas/testsuite/gas/riscv/csr-version-1p11.d index 308140a..f2f8af9 100644 --- a/gas/testsuite/gas/riscv/csr-version-1p11.d +++ b/gas/testsuite/gas/riscv/csr-version-1p11.d @@ -175,6 +175,8 @@ Disassembly of section .text: [ ]+[0-9a-f]+:[ ]+30159073[ ]+csrw[ ]+misa,a1 [ ]+[0-9a-f]+:[ ]+30202573[ ]+csrr[ ]+a0,medeleg [ ]+[0-9a-f]+:[ ]+30259073[ ]+csrw[ ]+medeleg,a1 +[ ]+[0-9a-f]+:[ ]+31202573[ ]+csrr[ ]+a0,0x312 +[ ]+[0-9a-f]+:[ ]+31259073[ ]+csrw[ ]+0x312,a1 [ ]+[0-9a-f]+:[ ]+30302573[ ]+csrr[ ]+a0,mideleg [ ]+[0-9a-f]+:[ ]+30359073[ ]+csrw[ ]+mideleg,a1 [ ]+[0-9a-f]+:[ ]+30402573[ ]+csrr[ ]+a0,mie @@ -555,6 +557,8 @@ Disassembly of section .text: [ ]+[0-9a-f]+:[ ]+60059073[ ]+csrw[ ]+hstatus,a1 [ ]+[0-9a-f]+:[ ]+60202573[ ]+csrr[ ]+a0,hedeleg [ ]+[0-9a-f]+:[ ]+60259073[ ]+csrw[ ]+hedeleg,a1 +[ ]+[0-9a-f]+:[ ]+61202573[ ]+csrr[ ]+a0,0x612 +[ ]+[0-9a-f]+:[ ]+61259073[ ]+csrw[ ]+0x612,a1 [ ]+[0-9a-f]+:[ ]+60302573[ ]+csrr[ ]+a0,hideleg [ ]+[0-9a-f]+:[ ]+60359073[ ]+csrw[ ]+hideleg,a1 [ ]+[0-9a-f]+:[ ]+60402573[ ]+csrr[ ]+a0,hie @@ -735,6 +739,8 @@ Disassembly of section .text: [ ]+[0-9a-f]+:[ ]+21459073[ ]+csrw[ ]+vsieh,a1 [ ]+[0-9a-f]+:[ ]+25402573[ ]+csrr[ ]+a0,vsiph [ ]+[0-9a-f]+:[ ]+25459073[ ]+csrw[ ]+vsiph,a1 +[ ]+[0-9a-f]+:[ ]+12002573[ ]+csrr[ ]+a0,scountinhibit +[ ]+[0-9a-f]+:[ ]+12059073[ ]+csrw[ ]+scountinhibit,a1 [ ]+[0-9a-f]+:[ ]+01102573[ ]+csrr[ ]+a0,ssp [ ]+[0-9a-f]+:[ ]+01159073[ ]+csrw[ ]+ssp,a1 [ ]+[0-9a-f]+:[ ]+15002573[ ]+csrr[ ]+a0,siselect diff --git a/gas/testsuite/gas/riscv/csr-version-1p11.l b/gas/testsuite/gas/riscv/csr-version-1p11.l index 9e813e2..eb2322b 100644 --- a/gas/testsuite/gas/riscv/csr-version-1p11.l +++ b/gas/testsuite/gas/riscv/csr-version-1p11.l @@ -273,6 +273,14 @@ .*Info: macro .* .*Warning: read-only CSR is written `csrw mconfigptr,a1' .*Info: macro .* +.*Warning: invalid CSR `medelegh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `medelegh' for the privileged spec `1.11' +.*Info: macro .* +.*Warning: invalid CSR `medelegh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `medelegh' for the privileged spec `1.11' +.*Info: macro .* .*Warning: invalid CSR `mstatush', needs rv32i extension .*Info: macro .* .*Warning: invalid CSR `mstatush' for the privileged spec `1.11' @@ -717,6 +725,14 @@ .*Info: macro .* .*Warning: invalid CSR `hedeleg', needs `h' extension .*Info: macro .* +.*Warning: invalid CSR `hedelegh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hedelegh', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hedelegh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hedelegh', needs `h' extension +.*Info: macro .* .*Warning: invalid CSR `hideleg', needs `h' extension .*Info: macro .* .*Warning: invalid CSR `hideleg', needs `h' extension @@ -1281,6 +1297,10 @@ .*Info: macro .* .*Warning: invalid CSR `vsiph', needs `ssaia' extension .*Info: macro .* +.*Warning: invalid CSR `scountinhibit', needs `ssccfg' extension +.*Info: macro .* +.*Warning: invalid CSR `scountinhibit', needs `ssccfg' extension +.*Info: macro .* .*Warning: invalid CSR `ssp', needs `zicfiss' extension .*Info: macro .* .*Warning: invalid CSR `ssp', needs `zicfiss' extension diff --git a/gas/testsuite/gas/riscv/csr-version-1p12.d b/gas/testsuite/gas/riscv/csr-version-1p12.d index 5fe3316..d9d3529 100644 --- a/gas/testsuite/gas/riscv/csr-version-1p12.d +++ b/gas/testsuite/gas/riscv/csr-version-1p12.d @@ -175,6 +175,8 @@ Disassembly of section .text: [ ]+[0-9a-f]+:[ ]+30159073[ ]+csrw[ ]+misa,a1 [ ]+[0-9a-f]+:[ ]+30202573[ ]+csrr[ ]+a0,medeleg [ ]+[0-9a-f]+:[ ]+30259073[ ]+csrw[ ]+medeleg,a1 +[ ]+[0-9a-f]+:[ ]+31202573[ ]+csrr[ ]+a0,0x312 +[ ]+[0-9a-f]+:[ ]+31259073[ ]+csrw[ ]+0x312,a1 [ ]+[0-9a-f]+:[ ]+30302573[ ]+csrr[ ]+a0,mideleg [ ]+[0-9a-f]+:[ ]+30359073[ ]+csrw[ ]+mideleg,a1 [ ]+[0-9a-f]+:[ ]+30402573[ ]+csrr[ ]+a0,mie @@ -555,6 +557,8 @@ Disassembly of section .text: [ ]+[0-9a-f]+:[ ]+60059073[ ]+csrw[ ]+hstatus,a1 [ ]+[0-9a-f]+:[ ]+60202573[ ]+csrr[ ]+a0,hedeleg [ ]+[0-9a-f]+:[ ]+60259073[ ]+csrw[ ]+hedeleg,a1 +[ ]+[0-9a-f]+:[ ]+61202573[ ]+csrr[ ]+a0,0x612 +[ ]+[0-9a-f]+:[ ]+61259073[ ]+csrw[ ]+0x612,a1 [ ]+[0-9a-f]+:[ ]+60302573[ ]+csrr[ ]+a0,hideleg [ ]+[0-9a-f]+:[ ]+60359073[ ]+csrw[ ]+hideleg,a1 [ ]+[0-9a-f]+:[ ]+60402573[ ]+csrr[ ]+a0,hie @@ -735,6 +739,8 @@ Disassembly of section .text: [ ]+[0-9a-f]+:[ ]+21459073[ ]+csrw[ ]+vsieh,a1 [ ]+[0-9a-f]+:[ ]+25402573[ ]+csrr[ ]+a0,vsiph [ ]+[0-9a-f]+:[ ]+25459073[ ]+csrw[ ]+vsiph,a1 +[ ]+[0-9a-f]+:[ ]+12002573[ ]+csrr[ ]+a0,scountinhibit +[ ]+[0-9a-f]+:[ ]+12059073[ ]+csrw[ ]+scountinhibit,a1 [ ]+[0-9a-f]+:[ ]+01102573[ ]+csrr[ ]+a0,ssp [ ]+[0-9a-f]+:[ ]+01159073[ ]+csrw[ ]+ssp,a1 [ ]+[0-9a-f]+:[ ]+15002573[ ]+csrr[ ]+a0,siselect diff --git a/gas/testsuite/gas/riscv/csr-version-1p12.l b/gas/testsuite/gas/riscv/csr-version-1p12.l index ff60ec0..13c63e1 100644 --- a/gas/testsuite/gas/riscv/csr-version-1p12.l +++ b/gas/testsuite/gas/riscv/csr-version-1p12.l @@ -265,6 +265,14 @@ .*Info: macro .* .*Warning: read-only CSR is written `csrw mconfigptr,a1' .*Info: macro .* +.*Warning: invalid CSR `medelegh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `medelegh' for the privileged spec `1.12' +.*Info: macro .* +.*Warning: invalid CSR `medelegh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `medelegh' for the privileged spec `1.12' +.*Info: macro .* .*Warning: invalid CSR `mstatush', needs rv32i extension .*Info: macro .* .*Warning: invalid CSR `mstatush', needs rv32i extension @@ -441,6 +449,14 @@ .*Info: macro .* .*Warning: invalid CSR `hedeleg', needs `h' extension .*Info: macro .* +.*Warning: invalid CSR `hedelegh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hedelegh', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hedelegh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hedelegh', needs `h' extension +.*Info: macro .* .*Warning: invalid CSR `hideleg', needs `h' extension .*Info: macro .* .*Warning: invalid CSR `hideleg', needs `h' extension @@ -1005,6 +1021,10 @@ .*Info: macro .* .*Warning: invalid CSR `vsiph', needs `ssaia' extension .*Info: macro .* +.*Warning: invalid CSR `scountinhibit', needs `ssccfg' extension +.*Info: macro .* +.*Warning: invalid CSR `scountinhibit', needs `ssccfg' extension +.*Info: macro .* .*Warning: invalid CSR `ssp', needs `zicfiss' extension .*Info: macro .* .*Warning: invalid CSR `ssp', needs `zicfiss' extension diff --git a/gas/testsuite/gas/riscv/csr-version-1p13.d b/gas/testsuite/gas/riscv/csr-version-1p13.d new file mode 100644 index 0000000..5d3cef8 --- /dev/null +++ b/gas/testsuite/gas/riscv/csr-version-1p13.d @@ -0,0 +1,943 @@ +#as: -march=rv64i_zicsr -mcsr-check -mpriv-spec=1.13 +#source: csr.s +#warning_output: csr-version-1p13.l +#objdump: -dr -Mpriv-spec=1.13 + +.*:[ ]+file format .* + + +Disassembly of section .text: + +0+000 <.text>: +[ ]+[0-9a-f]+:[ ]+c0002573[ ]+rdcycle[ ]+a0 +[ ]+[0-9a-f]+:[ ]+c0059073[ ]+csrw[ ]+cycle,a1 +[ ]+[0-9a-f]+:[ ]+c0102573[ ]+rdtime[ ]+a0 +[ ]+[0-9a-f]+:[ ]+c0159073[ ]+csrw[ ]+time,a1 +[ ]+[0-9a-f]+:[ ]+c0202573[ ]+rdinstret[ ]+a0 +[ ]+[0-9a-f]+:[ ]+c0259073[ ]+csrw[ ]+instret,a1 +[ ]+[0-9a-f]+:[ ]+c0302573[ ]+csrr[ ]+a0,hpmcounter3 +[ ]+[0-9a-f]+:[ ]+c0359073[ ]+csrw[ ]+hpmcounter3,a1 +[ ]+[0-9a-f]+:[ ]+c0402573[ ]+csrr[ ]+a0,hpmcounter4 +[ ]+[0-9a-f]+:[ ]+c0459073[ ]+csrw[ ]+hpmcounter4,a1 +[ ]+[0-9a-f]+:[ ]+c0502573[ ]+csrr[ ]+a0,hpmcounter5 +[ ]+[0-9a-f]+:[ ]+c0559073[ ]+csrw[ ]+hpmcounter5,a1 +[ ]+[0-9a-f]+:[ ]+c0602573[ ]+csrr[ ]+a0,hpmcounter6 +[ ]+[0-9a-f]+:[ ]+c0659073[ ]+csrw[ ]+hpmcounter6,a1 +[ ]+[0-9a-f]+:[ ]+c0702573[ ]+csrr[ ]+a0,hpmcounter7 +[ ]+[0-9a-f]+:[ ]+c0759073[ ]+csrw[ ]+hpmcounter7,a1 +[ ]+[0-9a-f]+:[ ]+c0802573[ ]+csrr[ ]+a0,hpmcounter8 +[ ]+[0-9a-f]+:[ ]+c0859073[ ]+csrw[ ]+hpmcounter8,a1 +[ ]+[0-9a-f]+:[ ]+c0902573[ ]+csrr[ ]+a0,hpmcounter9 +[ ]+[0-9a-f]+:[ ]+c0959073[ ]+csrw[ ]+hpmcounter9,a1 +[ ]+[0-9a-f]+:[ ]+c0a02573[ ]+csrr[ ]+a0,hpmcounter10 +[ ]+[0-9a-f]+:[ ]+c0a59073[ ]+csrw[ ]+hpmcounter10,a1 +[ ]+[0-9a-f]+:[ ]+c0b02573[ ]+csrr[ ]+a0,hpmcounter11 +[ ]+[0-9a-f]+:[ ]+c0b59073[ ]+csrw[ ]+hpmcounter11,a1 +[ ]+[0-9a-f]+:[ ]+c0c02573[ ]+csrr[ ]+a0,hpmcounter12 +[ ]+[0-9a-f]+:[ ]+c0c59073[ ]+csrw[ ]+hpmcounter12,a1 +[ ]+[0-9a-f]+:[ ]+c0d02573[ ]+csrr[ ]+a0,hpmcounter13 +[ ]+[0-9a-f]+:[ ]+c0d59073[ ]+csrw[ ]+hpmcounter13,a1 +[ ]+[0-9a-f]+:[ ]+c0e02573[ ]+csrr[ ]+a0,hpmcounter14 +[ ]+[0-9a-f]+:[ ]+c0e59073[ ]+csrw[ ]+hpmcounter14,a1 +[ ]+[0-9a-f]+:[ ]+c0f02573[ ]+csrr[ ]+a0,hpmcounter15 +[ ]+[0-9a-f]+:[ ]+c0f59073[ ]+csrw[ ]+hpmcounter15,a1 +[ ]+[0-9a-f]+:[ ]+c1002573[ ]+csrr[ ]+a0,hpmcounter16 +[ ]+[0-9a-f]+:[ ]+c1059073[ ]+csrw[ ]+hpmcounter16,a1 +[ ]+[0-9a-f]+:[ ]+c1102573[ ]+csrr[ ]+a0,hpmcounter17 +[ ]+[0-9a-f]+:[ ]+c1159073[ ]+csrw[ ]+hpmcounter17,a1 +[ ]+[0-9a-f]+:[ ]+c1202573[ ]+csrr[ ]+a0,hpmcounter18 +[ ]+[0-9a-f]+:[ ]+c1259073[ ]+csrw[ ]+hpmcounter18,a1 +[ ]+[0-9a-f]+:[ ]+c1302573[ ]+csrr[ ]+a0,hpmcounter19 +[ ]+[0-9a-f]+:[ ]+c1359073[ ]+csrw[ ]+hpmcounter19,a1 +[ ]+[0-9a-f]+:[ ]+c1402573[ ]+csrr[ ]+a0,hpmcounter20 +[ ]+[0-9a-f]+:[ ]+c1459073[ ]+csrw[ ]+hpmcounter20,a1 +[ ]+[0-9a-f]+:[ ]+c1502573[ ]+csrr[ ]+a0,hpmcounter21 +[ ]+[0-9a-f]+:[ ]+c1559073[ ]+csrw[ ]+hpmcounter21,a1 +[ ]+[0-9a-f]+:[ ]+c1602573[ ]+csrr[ ]+a0,hpmcounter22 +[ ]+[0-9a-f]+:[ ]+c1659073[ ]+csrw[ ]+hpmcounter22,a1 +[ ]+[0-9a-f]+:[ ]+c1702573[ ]+csrr[ ]+a0,hpmcounter23 +[ ]+[0-9a-f]+:[ ]+c1759073[ ]+csrw[ ]+hpmcounter23,a1 +[ ]+[0-9a-f]+:[ ]+c1802573[ ]+csrr[ ]+a0,hpmcounter24 +[ ]+[0-9a-f]+:[ ]+c1859073[ ]+csrw[ ]+hpmcounter24,a1 +[ ]+[0-9a-f]+:[ ]+c1902573[ ]+csrr[ ]+a0,hpmcounter25 +[ ]+[0-9a-f]+:[ ]+c1959073[ ]+csrw[ ]+hpmcounter25,a1 +[ ]+[0-9a-f]+:[ ]+c1a02573[ ]+csrr[ ]+a0,hpmcounter26 +[ ]+[0-9a-f]+:[ ]+c1a59073[ ]+csrw[ ]+hpmcounter26,a1 +[ ]+[0-9a-f]+:[ ]+c1b02573[ ]+csrr[ ]+a0,hpmcounter27 +[ ]+[0-9a-f]+:[ ]+c1b59073[ ]+csrw[ ]+hpmcounter27,a1 +[ ]+[0-9a-f]+:[ ]+c1c02573[ ]+csrr[ ]+a0,hpmcounter28 +[ ]+[0-9a-f]+:[ ]+c1c59073[ ]+csrw[ ]+hpmcounter28,a1 +[ ]+[0-9a-f]+:[ ]+c1d02573[ ]+csrr[ ]+a0,hpmcounter29 +[ ]+[0-9a-f]+:[ ]+c1d59073[ ]+csrw[ ]+hpmcounter29,a1 +[ ]+[0-9a-f]+:[ ]+c1e02573[ ]+csrr[ ]+a0,hpmcounter30 +[ ]+[0-9a-f]+:[ ]+c1e59073[ ]+csrw[ ]+hpmcounter30,a1 +[ ]+[0-9a-f]+:[ ]+c1f02573[ ]+csrr[ ]+a0,hpmcounter31 +[ ]+[0-9a-f]+:[ ]+c1f59073[ ]+csrw[ ]+hpmcounter31,a1 +[ ]+[0-9a-f]+:[ ]+c8002573[ ]+csrr[ ]+a0,cycleh +[ ]+[0-9a-f]+:[ ]+c8059073[ ]+csrw[ ]+cycleh,a1 +[ ]+[0-9a-f]+:[ ]+c8102573[ ]+csrr[ ]+a0,timeh +[ ]+[0-9a-f]+:[ ]+c8159073[ ]+csrw[ ]+timeh,a1 +[ ]+[0-9a-f]+:[ ]+c8202573[ ]+csrr[ ]+a0,instreth +[ ]+[0-9a-f]+:[ ]+c8259073[ ]+csrw[ ]+instreth,a1 +[ ]+[0-9a-f]+:[ ]+c8302573[ ]+csrr[ ]+a0,hpmcounter3h +[ ]+[0-9a-f]+:[ ]+c8359073[ ]+csrw[ ]+hpmcounter3h,a1 +[ ]+[0-9a-f]+:[ ]+c8402573[ ]+csrr[ ]+a0,hpmcounter4h +[ ]+[0-9a-f]+:[ ]+c8459073[ ]+csrw[ ]+hpmcounter4h,a1 +[ ]+[0-9a-f]+:[ ]+c8502573[ ]+csrr[ ]+a0,hpmcounter5h +[ ]+[0-9a-f]+:[ ]+c8559073[ ]+csrw[ ]+hpmcounter5h,a1 +[ ]+[0-9a-f]+:[ ]+c8602573[ ]+csrr[ ]+a0,hpmcounter6h +[ ]+[0-9a-f]+:[ ]+c8659073[ ]+csrw[ ]+hpmcounter6h,a1 +[ ]+[0-9a-f]+:[ ]+c8702573[ ]+csrr[ ]+a0,hpmcounter7h +[ ]+[0-9a-f]+:[ ]+c8759073[ ]+csrw[ ]+hpmcounter7h,a1 +[ ]+[0-9a-f]+:[ ]+c8802573[ ]+csrr[ ]+a0,hpmcounter8h +[ ]+[0-9a-f]+:[ ]+c8859073[ ]+csrw[ ]+hpmcounter8h,a1 +[ ]+[0-9a-f]+:[ ]+c8902573[ ]+csrr[ ]+a0,hpmcounter9h +[ ]+[0-9a-f]+:[ ]+c8959073[ ]+csrw[ ]+hpmcounter9h,a1 +[ ]+[0-9a-f]+:[ ]+c8a02573[ ]+csrr[ ]+a0,hpmcounter10h +[ ]+[0-9a-f]+:[ ]+c8a59073[ ]+csrw[ ]+hpmcounter10h,a1 +[ ]+[0-9a-f]+:[ ]+c8b02573[ ]+csrr[ ]+a0,hpmcounter11h +[ ]+[0-9a-f]+:[ ]+c8b59073[ ]+csrw[ ]+hpmcounter11h,a1 +[ ]+[0-9a-f]+:[ ]+c8c02573[ ]+csrr[ ]+a0,hpmcounter12h +[ ]+[0-9a-f]+:[ ]+c8c59073[ ]+csrw[ ]+hpmcounter12h,a1 +[ ]+[0-9a-f]+:[ ]+c8d02573[ ]+csrr[ ]+a0,hpmcounter13h +[ ]+[0-9a-f]+:[ ]+c8d59073[ ]+csrw[ ]+hpmcounter13h,a1 +[ ]+[0-9a-f]+:[ ]+c8e02573[ ]+csrr[ ]+a0,hpmcounter14h +[ ]+[0-9a-f]+:[ ]+c8e59073[ ]+csrw[ ]+hpmcounter14h,a1 +[ ]+[0-9a-f]+:[ ]+c8f02573[ ]+csrr[ ]+a0,hpmcounter15h +[ ]+[0-9a-f]+:[ ]+c8f59073[ ]+csrw[ ]+hpmcounter15h,a1 +[ ]+[0-9a-f]+:[ ]+c9002573[ ]+csrr[ ]+a0,hpmcounter16h +[ ]+[0-9a-f]+:[ ]+c9059073[ ]+csrw[ ]+hpmcounter16h,a1 +[ ]+[0-9a-f]+:[ ]+c9102573[ ]+csrr[ ]+a0,hpmcounter17h +[ ]+[0-9a-f]+:[ ]+c9159073[ ]+csrw[ ]+hpmcounter17h,a1 +[ ]+[0-9a-f]+:[ ]+c9202573[ ]+csrr[ ]+a0,hpmcounter18h +[ ]+[0-9a-f]+:[ ]+c9259073[ ]+csrw[ ]+hpmcounter18h,a1 +[ ]+[0-9a-f]+:[ ]+c9302573[ ]+csrr[ ]+a0,hpmcounter19h +[ ]+[0-9a-f]+:[ ]+c9359073[ ]+csrw[ ]+hpmcounter19h,a1 +[ ]+[0-9a-f]+:[ ]+c9402573[ ]+csrr[ ]+a0,hpmcounter20h +[ ]+[0-9a-f]+:[ ]+c9459073[ ]+csrw[ ]+hpmcounter20h,a1 +[ ]+[0-9a-f]+:[ ]+c9502573[ ]+csrr[ ]+a0,hpmcounter21h +[ ]+[0-9a-f]+:[ ]+c9559073[ ]+csrw[ ]+hpmcounter21h,a1 +[ ]+[0-9a-f]+:[ ]+c9602573[ ]+csrr[ ]+a0,hpmcounter22h +[ ]+[0-9a-f]+:[ ]+c9659073[ ]+csrw[ ]+hpmcounter22h,a1 +[ ]+[0-9a-f]+:[ ]+c9702573[ ]+csrr[ ]+a0,hpmcounter23h +[ ]+[0-9a-f]+:[ ]+c9759073[ ]+csrw[ ]+hpmcounter23h,a1 +[ ]+[0-9a-f]+:[ ]+c9802573[ ]+csrr[ ]+a0,hpmcounter24h +[ ]+[0-9a-f]+:[ ]+c9859073[ ]+csrw[ ]+hpmcounter24h,a1 +[ ]+[0-9a-f]+:[ ]+c9902573[ ]+csrr[ ]+a0,hpmcounter25h +[ ]+[0-9a-f]+:[ ]+c9959073[ ]+csrw[ ]+hpmcounter25h,a1 +[ ]+[0-9a-f]+:[ ]+c9a02573[ ]+csrr[ ]+a0,hpmcounter26h +[ ]+[0-9a-f]+:[ ]+c9a59073[ ]+csrw[ ]+hpmcounter26h,a1 +[ ]+[0-9a-f]+:[ ]+c9b02573[ ]+csrr[ ]+a0,hpmcounter27h +[ ]+[0-9a-f]+:[ ]+c9b59073[ ]+csrw[ ]+hpmcounter27h,a1 +[ ]+[0-9a-f]+:[ ]+c9c02573[ ]+csrr[ ]+a0,hpmcounter28h +[ ]+[0-9a-f]+:[ ]+c9c59073[ ]+csrw[ ]+hpmcounter28h,a1 +[ ]+[0-9a-f]+:[ ]+c9d02573[ ]+csrr[ ]+a0,hpmcounter29h +[ ]+[0-9a-f]+:[ ]+c9d59073[ ]+csrw[ ]+hpmcounter29h,a1 +[ ]+[0-9a-f]+:[ ]+c9e02573[ ]+csrr[ ]+a0,hpmcounter30h +[ ]+[0-9a-f]+:[ ]+c9e59073[ ]+csrw[ ]+hpmcounter30h,a1 +[ ]+[0-9a-f]+:[ ]+c9f02573[ ]+csrr[ ]+a0,hpmcounter31h +[ ]+[0-9a-f]+:[ ]+c9f59073[ ]+csrw[ ]+hpmcounter31h,a1 +[ ]+[0-9a-f]+:[ ]+10002573[ ]+csrr[ ]+a0,sstatus +[ ]+[0-9a-f]+:[ ]+10059073[ ]+csrw[ ]+sstatus,a1 +[ ]+[0-9a-f]+:[ ]+10402573[ ]+csrr[ ]+a0,sie +[ ]+[0-9a-f]+:[ ]+10459073[ ]+csrw[ ]+sie,a1 +[ ]+[0-9a-f]+:[ ]+10502573[ ]+csrr[ ]+a0,stvec +[ ]+[0-9a-f]+:[ ]+10559073[ ]+csrw[ ]+stvec,a1 +[ ]+[0-9a-f]+:[ ]+10602573[ ]+csrr[ ]+a0,scounteren +[ ]+[0-9a-f]+:[ ]+10659073[ ]+csrw[ ]+scounteren,a1 +[ ]+[0-9a-f]+:[ ]+10a02573[ ]+csrr[ ]+a0,senvcfg +[ ]+[0-9a-f]+:[ ]+10a59073[ ]+csrw[ ]+senvcfg,a1 +[ ]+[0-9a-f]+:[ ]+14002573[ ]+csrr[ ]+a0,sscratch +[ ]+[0-9a-f]+:[ ]+14059073[ ]+csrw[ ]+sscratch,a1 +[ ]+[0-9a-f]+:[ ]+14102573[ ]+csrr[ ]+a0,sepc +[ ]+[0-9a-f]+:[ ]+14159073[ ]+csrw[ ]+sepc,a1 +[ ]+[0-9a-f]+:[ ]+14202573[ ]+csrr[ ]+a0,scause +[ ]+[0-9a-f]+:[ ]+14259073[ ]+csrw[ ]+scause,a1 +[ ]+[0-9a-f]+:[ ]+14302573[ ]+csrr[ ]+a0,stval +[ ]+[0-9a-f]+:[ ]+14359073[ ]+csrw[ ]+stval,a1 +[ ]+[0-9a-f]+:[ ]+14402573[ ]+csrr[ ]+a0,sip +[ ]+[0-9a-f]+:[ ]+14459073[ ]+csrw[ ]+sip,a1 +[ ]+[0-9a-f]+:[ ]+18002573[ ]+csrr[ ]+a0,satp +[ ]+[0-9a-f]+:[ ]+18059073[ ]+csrw[ ]+satp,a1 +[ ]+[0-9a-f]+:[ ]+f1102573[ ]+csrr[ ]+a0,mvendorid +[ ]+[0-9a-f]+:[ ]+f1159073[ ]+csrw[ ]+mvendorid,a1 +[ ]+[0-9a-f]+:[ ]+f1202573[ ]+csrr[ ]+a0,marchid +[ ]+[0-9a-f]+:[ ]+f1259073[ ]+csrw[ ]+marchid,a1 +[ ]+[0-9a-f]+:[ ]+f1302573[ ]+csrr[ ]+a0,mimpid +[ ]+[0-9a-f]+:[ ]+f1359073[ ]+csrw[ ]+mimpid,a1 +[ ]+[0-9a-f]+:[ ]+f1402573[ ]+csrr[ ]+a0,mhartid +[ ]+[0-9a-f]+:[ ]+f1459073[ ]+csrw[ ]+mhartid,a1 +[ ]+[0-9a-f]+:[ ]+f1502573[ ]+csrr[ ]+a0,mconfigptr +[ ]+[0-9a-f]+:[ ]+f1559073[ ]+csrw[ ]+mconfigptr,a1 +[ ]+[0-9a-f]+:[ ]+30002573[ ]+csrr[ ]+a0,mstatus +[ ]+[0-9a-f]+:[ ]+30059073[ ]+csrw[ ]+mstatus,a1 +[ ]+[0-9a-f]+:[ ]+30102573[ ]+csrr[ ]+a0,misa +[ ]+[0-9a-f]+:[ ]+30159073[ ]+csrw[ ]+misa,a1 +[ ]+[0-9a-f]+:[ ]+30202573[ ]+csrr[ ]+a0,medeleg +[ ]+[0-9a-f]+:[ ]+30259073[ ]+csrw[ ]+medeleg,a1 +[ ]+[0-9a-f]+:[ ]+31202573[ ]+csrr[ ]+a0,medelegh +[ ]+[0-9a-f]+:[ ]+31259073[ ]+csrw[ ]+medelegh,a1 +[ ]+[0-9a-f]+:[ ]+30302573[ ]+csrr[ ]+a0,mideleg +[ ]+[0-9a-f]+:[ ]+30359073[ ]+csrw[ ]+mideleg,a1 +[ ]+[0-9a-f]+:[ ]+30402573[ ]+csrr[ ]+a0,mie +[ ]+[0-9a-f]+:[ ]+30459073[ ]+csrw[ ]+mie,a1 +[ ]+[0-9a-f]+:[ ]+30502573[ ]+csrr[ ]+a0,mtvec +[ ]+[0-9a-f]+:[ ]+30559073[ ]+csrw[ ]+mtvec,a1 +[ ]+[0-9a-f]+:[ ]+30602573[ ]+csrr[ ]+a0,mcounteren +[ ]+[0-9a-f]+:[ ]+30659073[ ]+csrw[ ]+mcounteren,a1 +[ ]+[0-9a-f]+:[ ]+31002573[ ]+csrr[ ]+a0,mstatush +[ ]+[0-9a-f]+:[ ]+31059073[ ]+csrw[ ]+mstatush,a1 +[ ]+[0-9a-f]+:[ ]+34002573[ ]+csrr[ ]+a0,mscratch +[ ]+[0-9a-f]+:[ ]+34059073[ ]+csrw[ ]+mscratch,a1 +[ ]+[0-9a-f]+:[ ]+34102573[ ]+csrr[ ]+a0,mepc +[ ]+[0-9a-f]+:[ ]+34159073[ ]+csrw[ ]+mepc,a1 +[ ]+[0-9a-f]+:[ ]+34202573[ ]+csrr[ ]+a0,mcause +[ ]+[0-9a-f]+:[ ]+34259073[ ]+csrw[ ]+mcause,a1 +[ ]+[0-9a-f]+:[ ]+34302573[ ]+csrr[ ]+a0,mtval +[ ]+[0-9a-f]+:[ ]+34359073[ ]+csrw[ ]+mtval,a1 +[ ]+[0-9a-f]+:[ ]+34402573[ ]+csrr[ ]+a0,mip +[ ]+[0-9a-f]+:[ ]+34459073[ ]+csrw[ ]+mip,a1 +[ ]+[0-9a-f]+:[ ]+34a02573[ ]+csrr[ ]+a0,mtinst +[ ]+[0-9a-f]+:[ ]+34a59073[ ]+csrw[ ]+mtinst,a1 +[ ]+[0-9a-f]+:[ ]+34b02573[ ]+csrr[ ]+a0,mtval2 +[ ]+[0-9a-f]+:[ ]+34b59073[ ]+csrw[ ]+mtval2,a1 +[ ]+[0-9a-f]+:[ ]+30a02573[ ]+csrr[ ]+a0,menvcfg +[ ]+[0-9a-f]+:[ ]+30a59073[ ]+csrw[ ]+menvcfg,a1 +[ ]+[0-9a-f]+:[ ]+31a02573[ ]+csrr[ ]+a0,menvcfgh +[ ]+[0-9a-f]+:[ ]+31a59073[ ]+csrw[ ]+menvcfgh,a1 +[ ]+[0-9a-f]+:[ ]+74702573[ ]+csrr[ ]+a0,mseccfg +[ ]+[0-9a-f]+:[ ]+74759073[ ]+csrw[ ]+mseccfg,a1 +[ ]+[0-9a-f]+:[ ]+75702573[ ]+csrr[ ]+a0,mseccfgh +[ ]+[0-9a-f]+:[ ]+75759073[ ]+csrw[ ]+mseccfgh,a1 +[ ]+[0-9a-f]+:[ ]+3a002573[ ]+csrr[ ]+a0,pmpcfg0 +[ ]+[0-9a-f]+:[ ]+3a059073[ ]+csrw[ ]+pmpcfg0,a1 +[ ]+[0-9a-f]+:[ ]+3a102573[ ]+csrr[ ]+a0,pmpcfg1 +[ ]+[0-9a-f]+:[ ]+3a159073[ ]+csrw[ ]+pmpcfg1,a1 +[ ]+[0-9a-f]+:[ ]+3a202573[ ]+csrr[ ]+a0,pmpcfg2 +[ ]+[0-9a-f]+:[ ]+3a259073[ ]+csrw[ ]+pmpcfg2,a1 +[ ]+[0-9a-f]+:[ ]+3a302573[ ]+csrr[ ]+a0,pmpcfg3 +[ ]+[0-9a-f]+:[ ]+3a359073[ ]+csrw[ ]+pmpcfg3,a1 +[ ]+[0-9a-f]+:[ ]+3a402573[ ]+csrr[ ]+a0,pmpcfg4 +[ ]+[0-9a-f]+:[ ]+3a459073[ ]+csrw[ ]+pmpcfg4,a1 +[ ]+[0-9a-f]+:[ ]+3a502573[ ]+csrr[ ]+a0,pmpcfg5 +[ ]+[0-9a-f]+:[ ]+3a559073[ ]+csrw[ ]+pmpcfg5,a1 +[ ]+[0-9a-f]+:[ ]+3a602573[ ]+csrr[ ]+a0,pmpcfg6 +[ ]+[0-9a-f]+:[ ]+3a659073[ ]+csrw[ ]+pmpcfg6,a1 +[ ]+[0-9a-f]+:[ ]+3a702573[ ]+csrr[ ]+a0,pmpcfg7 +[ ]+[0-9a-f]+:[ ]+3a759073[ ]+csrw[ ]+pmpcfg7,a1 +[ ]+[0-9a-f]+:[ ]+3a802573[ ]+csrr[ ]+a0,pmpcfg8 +[ ]+[0-9a-f]+:[ ]+3a859073[ ]+csrw[ ]+pmpcfg8,a1 +[ ]+[0-9a-f]+:[ ]+3a902573[ ]+csrr[ ]+a0,pmpcfg9 +[ ]+[0-9a-f]+:[ ]+3a959073[ ]+csrw[ ]+pmpcfg9,a1 +[ ]+[0-9a-f]+:[ ]+3aa02573[ ]+csrr[ ]+a0,pmpcfg10 +[ ]+[0-9a-f]+:[ ]+3aa59073[ ]+csrw[ ]+pmpcfg10,a1 +[ ]+[0-9a-f]+:[ ]+3ab02573[ ]+csrr[ ]+a0,pmpcfg11 +[ ]+[0-9a-f]+:[ ]+3ab59073[ ]+csrw[ ]+pmpcfg11,a1 +[ ]+[0-9a-f]+:[ ]+3ac02573[ ]+csrr[ ]+a0,pmpcfg12 +[ ]+[0-9a-f]+:[ ]+3ac59073[ ]+csrw[ ]+pmpcfg12,a1 +[ ]+[0-9a-f]+:[ ]+3ad02573[ ]+csrr[ ]+a0,pmpcfg13 +[ ]+[0-9a-f]+:[ ]+3ad59073[ ]+csrw[ ]+pmpcfg13,a1 +[ ]+[0-9a-f]+:[ ]+3ae02573[ ]+csrr[ ]+a0,pmpcfg14 +[ ]+[0-9a-f]+:[ ]+3ae59073[ ]+csrw[ ]+pmpcfg14,a1 +[ ]+[0-9a-f]+:[ ]+3af02573[ ]+csrr[ ]+a0,pmpcfg15 +[ ]+[0-9a-f]+:[ ]+3af59073[ ]+csrw[ ]+pmpcfg15,a1 +[ ]+[0-9a-f]+:[ ]+3b002573[ ]+csrr[ ]+a0,pmpaddr0 +[ ]+[0-9a-f]+:[ ]+3b059073[ ]+csrw[ ]+pmpaddr0,a1 +[ ]+[0-9a-f]+:[ ]+3b102573[ ]+csrr[ ]+a0,pmpaddr1 +[ ]+[0-9a-f]+:[ ]+3b159073[ ]+csrw[ ]+pmpaddr1,a1 +[ ]+[0-9a-f]+:[ ]+3b202573[ ]+csrr[ ]+a0,pmpaddr2 +[ ]+[0-9a-f]+:[ ]+3b259073[ ]+csrw[ ]+pmpaddr2,a1 +[ ]+[0-9a-f]+:[ ]+3b302573[ ]+csrr[ ]+a0,pmpaddr3 +[ ]+[0-9a-f]+:[ ]+3b359073[ ]+csrw[ ]+pmpaddr3,a1 +[ ]+[0-9a-f]+:[ ]+3b402573[ ]+csrr[ ]+a0,pmpaddr4 +[ ]+[0-9a-f]+:[ ]+3b459073[ ]+csrw[ ]+pmpaddr4,a1 +[ ]+[0-9a-f]+:[ ]+3b502573[ ]+csrr[ ]+a0,pmpaddr5 +[ ]+[0-9a-f]+:[ ]+3b559073[ ]+csrw[ ]+pmpaddr5,a1 +[ ]+[0-9a-f]+:[ ]+3b602573[ ]+csrr[ ]+a0,pmpaddr6 +[ ]+[0-9a-f]+:[ ]+3b659073[ ]+csrw[ ]+pmpaddr6,a1 +[ ]+[0-9a-f]+:[ ]+3b702573[ ]+csrr[ ]+a0,pmpaddr7 +[ ]+[0-9a-f]+:[ ]+3b759073[ ]+csrw[ ]+pmpaddr7,a1 +[ ]+[0-9a-f]+:[ ]+3b802573[ ]+csrr[ ]+a0,pmpaddr8 +[ ]+[0-9a-f]+:[ ]+3b859073[ ]+csrw[ ]+pmpaddr8,a1 +[ ]+[0-9a-f]+:[ ]+3b902573[ ]+csrr[ ]+a0,pmpaddr9 +[ ]+[0-9a-f]+:[ ]+3b959073[ ]+csrw[ ]+pmpaddr9,a1 +[ ]+[0-9a-f]+:[ ]+3ba02573[ ]+csrr[ ]+a0,pmpaddr10 +[ ]+[0-9a-f]+:[ ]+3ba59073[ ]+csrw[ ]+pmpaddr10,a1 +[ ]+[0-9a-f]+:[ ]+3bb02573[ ]+csrr[ ]+a0,pmpaddr11 +[ ]+[0-9a-f]+:[ ]+3bb59073[ ]+csrw[ ]+pmpaddr11,a1 +[ ]+[0-9a-f]+:[ ]+3bc02573[ ]+csrr[ ]+a0,pmpaddr12 +[ ]+[0-9a-f]+:[ ]+3bc59073[ ]+csrw[ ]+pmpaddr12,a1 +[ ]+[0-9a-f]+:[ ]+3bd02573[ ]+csrr[ ]+a0,pmpaddr13 +[ ]+[0-9a-f]+:[ ]+3bd59073[ ]+csrw[ ]+pmpaddr13,a1 +[ ]+[0-9a-f]+:[ ]+3be02573[ ]+csrr[ ]+a0,pmpaddr14 +[ ]+[0-9a-f]+:[ ]+3be59073[ ]+csrw[ ]+pmpaddr14,a1 +[ ]+[0-9a-f]+:[ ]+3bf02573[ ]+csrr[ ]+a0,pmpaddr15 +[ ]+[0-9a-f]+:[ ]+3bf59073[ ]+csrw[ ]+pmpaddr15,a1 +[ ]+[0-9a-f]+:[ ]+3c002573[ ]+csrr[ ]+a0,pmpaddr16 +[ ]+[0-9a-f]+:[ ]+3c059073[ ]+csrw[ ]+pmpaddr16,a1 +[ ]+[0-9a-f]+:[ ]+3c102573[ ]+csrr[ ]+a0,pmpaddr17 +[ ]+[0-9a-f]+:[ ]+3c159073[ ]+csrw[ ]+pmpaddr17,a1 +[ ]+[0-9a-f]+:[ ]+3c202573[ ]+csrr[ ]+a0,pmpaddr18 +[ ]+[0-9a-f]+:[ ]+3c259073[ ]+csrw[ ]+pmpaddr18,a1 +[ ]+[0-9a-f]+:[ ]+3c302573[ ]+csrr[ ]+a0,pmpaddr19 +[ ]+[0-9a-f]+:[ ]+3c359073[ ]+csrw[ ]+pmpaddr19,a1 +[ ]+[0-9a-f]+:[ ]+3c402573[ ]+csrr[ ]+a0,pmpaddr20 +[ ]+[0-9a-f]+:[ ]+3c459073[ ]+csrw[ ]+pmpaddr20,a1 +[ ]+[0-9a-f]+:[ ]+3c502573[ ]+csrr[ ]+a0,pmpaddr21 +[ ]+[0-9a-f]+:[ ]+3c559073[ ]+csrw[ ]+pmpaddr21,a1 +[ ]+[0-9a-f]+:[ ]+3c602573[ ]+csrr[ ]+a0,pmpaddr22 +[ ]+[0-9a-f]+:[ ]+3c659073[ ]+csrw[ ]+pmpaddr22,a1 +[ ]+[0-9a-f]+:[ ]+3c702573[ ]+csrr[ ]+a0,pmpaddr23 +[ ]+[0-9a-f]+:[ ]+3c759073[ ]+csrw[ ]+pmpaddr23,a1 +[ ]+[0-9a-f]+:[ ]+3c802573[ ]+csrr[ ]+a0,pmpaddr24 +[ ]+[0-9a-f]+:[ ]+3c859073[ ]+csrw[ ]+pmpaddr24,a1 +[ ]+[0-9a-f]+:[ ]+3c902573[ ]+csrr[ ]+a0,pmpaddr25 +[ ]+[0-9a-f]+:[ ]+3c959073[ ]+csrw[ ]+pmpaddr25,a1 +[ ]+[0-9a-f]+:[ ]+3ca02573[ ]+csrr[ ]+a0,pmpaddr26 +[ ]+[0-9a-f]+:[ ]+3ca59073[ ]+csrw[ ]+pmpaddr26,a1 +[ ]+[0-9a-f]+:[ ]+3cb02573[ ]+csrr[ ]+a0,pmpaddr27 +[ ]+[0-9a-f]+:[ ]+3cb59073[ ]+csrw[ ]+pmpaddr27,a1 +[ ]+[0-9a-f]+:[ ]+3cc02573[ ]+csrr[ ]+a0,pmpaddr28 +[ ]+[0-9a-f]+:[ ]+3cc59073[ ]+csrw[ ]+pmpaddr28,a1 +[ ]+[0-9a-f]+:[ ]+3cd02573[ ]+csrr[ ]+a0,pmpaddr29 +[ ]+[0-9a-f]+:[ ]+3cd59073[ ]+csrw[ ]+pmpaddr29,a1 +[ ]+[0-9a-f]+:[ ]+3ce02573[ ]+csrr[ ]+a0,pmpaddr30 +[ ]+[0-9a-f]+:[ ]+3ce59073[ ]+csrw[ ]+pmpaddr30,a1 +[ ]+[0-9a-f]+:[ ]+3cf02573[ ]+csrr[ ]+a0,pmpaddr31 +[ ]+[0-9a-f]+:[ ]+3cf59073[ ]+csrw[ ]+pmpaddr31,a1 +[ ]+[0-9a-f]+:[ ]+3d002573[ ]+csrr[ ]+a0,pmpaddr32 +[ ]+[0-9a-f]+:[ ]+3d059073[ ]+csrw[ ]+pmpaddr32,a1 +[ ]+[0-9a-f]+:[ ]+3d102573[ ]+csrr[ ]+a0,pmpaddr33 +[ ]+[0-9a-f]+:[ ]+3d159073[ ]+csrw[ ]+pmpaddr33,a1 +[ ]+[0-9a-f]+:[ ]+3d202573[ ]+csrr[ ]+a0,pmpaddr34 +[ ]+[0-9a-f]+:[ ]+3d259073[ ]+csrw[ ]+pmpaddr34,a1 +[ ]+[0-9a-f]+:[ ]+3d302573[ ]+csrr[ ]+a0,pmpaddr35 +[ ]+[0-9a-f]+:[ ]+3d359073[ ]+csrw[ ]+pmpaddr35,a1 +[ ]+[0-9a-f]+:[ ]+3d402573[ ]+csrr[ ]+a0,pmpaddr36 +[ ]+[0-9a-f]+:[ ]+3d459073[ ]+csrw[ ]+pmpaddr36,a1 +[ ]+[0-9a-f]+:[ ]+3d502573[ ]+csrr[ ]+a0,pmpaddr37 +[ ]+[0-9a-f]+:[ ]+3d559073[ ]+csrw[ ]+pmpaddr37,a1 +[ ]+[0-9a-f]+:[ ]+3d602573[ ]+csrr[ ]+a0,pmpaddr38 +[ ]+[0-9a-f]+:[ ]+3d659073[ ]+csrw[ ]+pmpaddr38,a1 +[ ]+[0-9a-f]+:[ ]+3d702573[ ]+csrr[ ]+a0,pmpaddr39 +[ ]+[0-9a-f]+:[ ]+3d759073[ ]+csrw[ ]+pmpaddr39,a1 +[ ]+[0-9a-f]+:[ ]+3d802573[ ]+csrr[ ]+a0,pmpaddr40 +[ ]+[0-9a-f]+:[ ]+3d859073[ ]+csrw[ ]+pmpaddr40,a1 +[ ]+[0-9a-f]+:[ ]+3d902573[ ]+csrr[ ]+a0,pmpaddr41 +[ ]+[0-9a-f]+:[ ]+3d959073[ ]+csrw[ ]+pmpaddr41,a1 +[ ]+[0-9a-f]+:[ ]+3da02573[ ]+csrr[ ]+a0,pmpaddr42 +[ ]+[0-9a-f]+:[ ]+3da59073[ ]+csrw[ ]+pmpaddr42,a1 +[ ]+[0-9a-f]+:[ ]+3db02573[ ]+csrr[ ]+a0,pmpaddr43 +[ ]+[0-9a-f]+:[ ]+3db59073[ ]+csrw[ ]+pmpaddr43,a1 +[ ]+[0-9a-f]+:[ ]+3dc02573[ ]+csrr[ ]+a0,pmpaddr44 +[ ]+[0-9a-f]+:[ ]+3dc59073[ ]+csrw[ ]+pmpaddr44,a1 +[ ]+[0-9a-f]+:[ ]+3dd02573[ ]+csrr[ ]+a0,pmpaddr45 +[ ]+[0-9a-f]+:[ ]+3dd59073[ ]+csrw[ ]+pmpaddr45,a1 +[ ]+[0-9a-f]+:[ ]+3de02573[ ]+csrr[ ]+a0,pmpaddr46 +[ ]+[0-9a-f]+:[ ]+3de59073[ ]+csrw[ ]+pmpaddr46,a1 +[ ]+[0-9a-f]+:[ ]+3df02573[ ]+csrr[ ]+a0,pmpaddr47 +[ ]+[0-9a-f]+:[ ]+3df59073[ ]+csrw[ ]+pmpaddr47,a1 +[ ]+[0-9a-f]+:[ ]+3e002573[ ]+csrr[ ]+a0,pmpaddr48 +[ ]+[0-9a-f]+:[ ]+3e059073[ ]+csrw[ ]+pmpaddr48,a1 +[ ]+[0-9a-f]+:[ ]+3e102573[ ]+csrr[ ]+a0,pmpaddr49 +[ ]+[0-9a-f]+:[ ]+3e159073[ ]+csrw[ ]+pmpaddr49,a1 +[ ]+[0-9a-f]+:[ ]+3e202573[ ]+csrr[ ]+a0,pmpaddr50 +[ ]+[0-9a-f]+:[ ]+3e259073[ ]+csrw[ ]+pmpaddr50,a1 +[ ]+[0-9a-f]+:[ ]+3e302573[ ]+csrr[ ]+a0,pmpaddr51 +[ ]+[0-9a-f]+:[ ]+3e359073[ ]+csrw[ ]+pmpaddr51,a1 +[ ]+[0-9a-f]+:[ ]+3e402573[ ]+csrr[ ]+a0,pmpaddr52 +[ ]+[0-9a-f]+:[ ]+3e459073[ ]+csrw[ ]+pmpaddr52,a1 +[ ]+[0-9a-f]+:[ ]+3e502573[ ]+csrr[ ]+a0,pmpaddr53 +[ ]+[0-9a-f]+:[ ]+3e559073[ ]+csrw[ ]+pmpaddr53,a1 +[ ]+[0-9a-f]+:[ ]+3e602573[ ]+csrr[ ]+a0,pmpaddr54 +[ ]+[0-9a-f]+:[ ]+3e659073[ ]+csrw[ ]+pmpaddr54,a1 +[ ]+[0-9a-f]+:[ ]+3e702573[ ]+csrr[ ]+a0,pmpaddr55 +[ ]+[0-9a-f]+:[ ]+3e759073[ ]+csrw[ ]+pmpaddr55,a1 +[ ]+[0-9a-f]+:[ ]+3e802573[ ]+csrr[ ]+a0,pmpaddr56 +[ ]+[0-9a-f]+:[ ]+3e859073[ ]+csrw[ ]+pmpaddr56,a1 +[ ]+[0-9a-f]+:[ ]+3e902573[ ]+csrr[ ]+a0,pmpaddr57 +[ ]+[0-9a-f]+:[ ]+3e959073[ ]+csrw[ ]+pmpaddr57,a1 +[ ]+[0-9a-f]+:[ ]+3ea02573[ ]+csrr[ ]+a0,pmpaddr58 +[ ]+[0-9a-f]+:[ ]+3ea59073[ ]+csrw[ ]+pmpaddr58,a1 +[ ]+[0-9a-f]+:[ ]+3eb02573[ ]+csrr[ ]+a0,pmpaddr59 +[ ]+[0-9a-f]+:[ ]+3eb59073[ ]+csrw[ ]+pmpaddr59,a1 +[ ]+[0-9a-f]+:[ ]+3ec02573[ ]+csrr[ ]+a0,pmpaddr60 +[ ]+[0-9a-f]+:[ ]+3ec59073[ ]+csrw[ ]+pmpaddr60,a1 +[ ]+[0-9a-f]+:[ ]+3ed02573[ ]+csrr[ ]+a0,pmpaddr61 +[ ]+[0-9a-f]+:[ ]+3ed59073[ ]+csrw[ ]+pmpaddr61,a1 +[ ]+[0-9a-f]+:[ ]+3ee02573[ ]+csrr[ ]+a0,pmpaddr62 +[ ]+[0-9a-f]+:[ ]+3ee59073[ ]+csrw[ ]+pmpaddr62,a1 +[ ]+[0-9a-f]+:[ ]+3ef02573[ ]+csrr[ ]+a0,pmpaddr63 +[ ]+[0-9a-f]+:[ ]+3ef59073[ ]+csrw[ ]+pmpaddr63,a1 +[ ]+[0-9a-f]+:[ ]+b0002573[ ]+csrr[ ]+a0,mcycle +[ ]+[0-9a-f]+:[ ]+b0059073[ ]+csrw[ ]+mcycle,a1 +[ ]+[0-9a-f]+:[ ]+b0202573[ ]+csrr[ ]+a0,minstret +[ ]+[0-9a-f]+:[ ]+b0259073[ ]+csrw[ ]+minstret,a1 +[ ]+[0-9a-f]+:[ ]+b0302573[ ]+csrr[ ]+a0,mhpmcounter3 +[ ]+[0-9a-f]+:[ ]+b0359073[ ]+csrw[ ]+mhpmcounter3,a1 +[ ]+[0-9a-f]+:[ ]+b0402573[ ]+csrr[ ]+a0,mhpmcounter4 +[ ]+[0-9a-f]+:[ ]+b0459073[ ]+csrw[ ]+mhpmcounter4,a1 +[ ]+[0-9a-f]+:[ ]+b0502573[ ]+csrr[ ]+a0,mhpmcounter5 +[ ]+[0-9a-f]+:[ ]+b0559073[ ]+csrw[ ]+mhpmcounter5,a1 +[ ]+[0-9a-f]+:[ ]+b0602573[ ]+csrr[ ]+a0,mhpmcounter6 +[ ]+[0-9a-f]+:[ ]+b0659073[ ]+csrw[ ]+mhpmcounter6,a1 +[ ]+[0-9a-f]+:[ ]+b0702573[ ]+csrr[ ]+a0,mhpmcounter7 +[ ]+[0-9a-f]+:[ ]+b0759073[ ]+csrw[ ]+mhpmcounter7,a1 +[ ]+[0-9a-f]+:[ ]+b0802573[ ]+csrr[ ]+a0,mhpmcounter8 +[ ]+[0-9a-f]+:[ ]+b0859073[ ]+csrw[ ]+mhpmcounter8,a1 +[ ]+[0-9a-f]+:[ ]+b0902573[ ]+csrr[ ]+a0,mhpmcounter9 +[ ]+[0-9a-f]+:[ ]+b0959073[ ]+csrw[ ]+mhpmcounter9,a1 +[ ]+[0-9a-f]+:[ ]+b0a02573[ ]+csrr[ ]+a0,mhpmcounter10 +[ ]+[0-9a-f]+:[ ]+b0a59073[ ]+csrw[ ]+mhpmcounter10,a1 +[ ]+[0-9a-f]+:[ ]+b0b02573[ ]+csrr[ ]+a0,mhpmcounter11 +[ ]+[0-9a-f]+:[ ]+b0b59073[ ]+csrw[ ]+mhpmcounter11,a1 +[ ]+[0-9a-f]+:[ ]+b0c02573[ ]+csrr[ ]+a0,mhpmcounter12 +[ ]+[0-9a-f]+:[ ]+b0c59073[ ]+csrw[ ]+mhpmcounter12,a1 +[ ]+[0-9a-f]+:[ ]+b0d02573[ ]+csrr[ ]+a0,mhpmcounter13 +[ ]+[0-9a-f]+:[ ]+b0d59073[ ]+csrw[ ]+mhpmcounter13,a1 +[ ]+[0-9a-f]+:[ ]+b0e02573[ ]+csrr[ ]+a0,mhpmcounter14 +[ ]+[0-9a-f]+:[ ]+b0e59073[ ]+csrw[ ]+mhpmcounter14,a1 +[ ]+[0-9a-f]+:[ ]+b0f02573[ ]+csrr[ ]+a0,mhpmcounter15 +[ ]+[0-9a-f]+:[ ]+b0f59073[ ]+csrw[ ]+mhpmcounter15,a1 +[ ]+[0-9a-f]+:[ ]+b1002573[ ]+csrr[ ]+a0,mhpmcounter16 +[ ]+[0-9a-f]+:[ ]+b1059073[ ]+csrw[ ]+mhpmcounter16,a1 +[ ]+[0-9a-f]+:[ ]+b1102573[ ]+csrr[ ]+a0,mhpmcounter17 +[ ]+[0-9a-f]+:[ ]+b1159073[ ]+csrw[ ]+mhpmcounter17,a1 +[ ]+[0-9a-f]+:[ ]+b1202573[ ]+csrr[ ]+a0,mhpmcounter18 +[ ]+[0-9a-f]+:[ ]+b1259073[ ]+csrw[ ]+mhpmcounter18,a1 +[ ]+[0-9a-f]+:[ ]+b1302573[ ]+csrr[ ]+a0,mhpmcounter19 +[ ]+[0-9a-f]+:[ ]+b1359073[ ]+csrw[ ]+mhpmcounter19,a1 +[ ]+[0-9a-f]+:[ ]+b1402573[ ]+csrr[ ]+a0,mhpmcounter20 +[ ]+[0-9a-f]+:[ ]+b1459073[ ]+csrw[ ]+mhpmcounter20,a1 +[ ]+[0-9a-f]+:[ ]+b1502573[ ]+csrr[ ]+a0,mhpmcounter21 +[ ]+[0-9a-f]+:[ ]+b1559073[ ]+csrw[ ]+mhpmcounter21,a1 +[ ]+[0-9a-f]+:[ ]+b1602573[ ]+csrr[ ]+a0,mhpmcounter22 +[ ]+[0-9a-f]+:[ ]+b1659073[ ]+csrw[ ]+mhpmcounter22,a1 +[ ]+[0-9a-f]+:[ ]+b1702573[ ]+csrr[ ]+a0,mhpmcounter23 +[ ]+[0-9a-f]+:[ ]+b1759073[ ]+csrw[ ]+mhpmcounter23,a1 +[ ]+[0-9a-f]+:[ ]+b1802573[ ]+csrr[ ]+a0,mhpmcounter24 +[ ]+[0-9a-f]+:[ ]+b1859073[ ]+csrw[ ]+mhpmcounter24,a1 +[ ]+[0-9a-f]+:[ ]+b1902573[ ]+csrr[ ]+a0,mhpmcounter25 +[ ]+[0-9a-f]+:[ ]+b1959073[ ]+csrw[ ]+mhpmcounter25,a1 +[ ]+[0-9a-f]+:[ ]+b1a02573[ ]+csrr[ ]+a0,mhpmcounter26 +[ ]+[0-9a-f]+:[ ]+b1a59073[ ]+csrw[ ]+mhpmcounter26,a1 +[ ]+[0-9a-f]+:[ ]+b1b02573[ ]+csrr[ ]+a0,mhpmcounter27 +[ ]+[0-9a-f]+:[ ]+b1b59073[ ]+csrw[ ]+mhpmcounter27,a1 +[ ]+[0-9a-f]+:[ ]+b1c02573[ ]+csrr[ ]+a0,mhpmcounter28 +[ ]+[0-9a-f]+:[ ]+b1c59073[ ]+csrw[ ]+mhpmcounter28,a1 +[ ]+[0-9a-f]+:[ ]+b1d02573[ ]+csrr[ ]+a0,mhpmcounter29 +[ ]+[0-9a-f]+:[ ]+b1d59073[ ]+csrw[ ]+mhpmcounter29,a1 +[ ]+[0-9a-f]+:[ ]+b1e02573[ ]+csrr[ ]+a0,mhpmcounter30 +[ ]+[0-9a-f]+:[ ]+b1e59073[ ]+csrw[ ]+mhpmcounter30,a1 +[ ]+[0-9a-f]+:[ ]+b1f02573[ ]+csrr[ ]+a0,mhpmcounter31 +[ ]+[0-9a-f]+:[ ]+b1f59073[ ]+csrw[ ]+mhpmcounter31,a1 +[ ]+[0-9a-f]+:[ ]+b8002573[ ]+csrr[ ]+a0,mcycleh +[ ]+[0-9a-f]+:[ ]+b8059073[ ]+csrw[ ]+mcycleh,a1 +[ ]+[0-9a-f]+:[ ]+b8202573[ ]+csrr[ ]+a0,minstreth +[ ]+[0-9a-f]+:[ ]+b8259073[ ]+csrw[ ]+minstreth,a1 +[ ]+[0-9a-f]+:[ ]+b8302573[ ]+csrr[ ]+a0,mhpmcounter3h +[ ]+[0-9a-f]+:[ ]+b8359073[ ]+csrw[ ]+mhpmcounter3h,a1 +[ ]+[0-9a-f]+:[ ]+b8402573[ ]+csrr[ ]+a0,mhpmcounter4h +[ ]+[0-9a-f]+:[ ]+b8459073[ ]+csrw[ ]+mhpmcounter4h,a1 +[ ]+[0-9a-f]+:[ ]+b8502573[ ]+csrr[ ]+a0,mhpmcounter5h +[ ]+[0-9a-f]+:[ ]+b8559073[ ]+csrw[ ]+mhpmcounter5h,a1 +[ ]+[0-9a-f]+:[ ]+b8602573[ ]+csrr[ ]+a0,mhpmcounter6h +[ ]+[0-9a-f]+:[ ]+b8659073[ ]+csrw[ ]+mhpmcounter6h,a1 +[ ]+[0-9a-f]+:[ ]+b8702573[ ]+csrr[ ]+a0,mhpmcounter7h +[ ]+[0-9a-f]+:[ ]+b8759073[ ]+csrw[ ]+mhpmcounter7h,a1 +[ ]+[0-9a-f]+:[ ]+b8802573[ ]+csrr[ ]+a0,mhpmcounter8h +[ ]+[0-9a-f]+:[ ]+b8859073[ ]+csrw[ ]+mhpmcounter8h,a1 +[ ]+[0-9a-f]+:[ ]+b8902573[ ]+csrr[ ]+a0,mhpmcounter9h +[ ]+[0-9a-f]+:[ ]+b8959073[ ]+csrw[ ]+mhpmcounter9h,a1 +[ ]+[0-9a-f]+:[ ]+b8a02573[ ]+csrr[ ]+a0,mhpmcounter10h +[ ]+[0-9a-f]+:[ ]+b8a59073[ ]+csrw[ ]+mhpmcounter10h,a1 +[ ]+[0-9a-f]+:[ ]+b8b02573[ ]+csrr[ ]+a0,mhpmcounter11h +[ ]+[0-9a-f]+:[ ]+b8b59073[ ]+csrw[ ]+mhpmcounter11h,a1 +[ ]+[0-9a-f]+:[ ]+b8c02573[ ]+csrr[ ]+a0,mhpmcounter12h +[ ]+[0-9a-f]+:[ ]+b8c59073[ ]+csrw[ ]+mhpmcounter12h,a1 +[ ]+[0-9a-f]+:[ ]+b8d02573[ ]+csrr[ ]+a0,mhpmcounter13h +[ ]+[0-9a-f]+:[ ]+b8d59073[ ]+csrw[ ]+mhpmcounter13h,a1 +[ ]+[0-9a-f]+:[ ]+b8e02573[ ]+csrr[ ]+a0,mhpmcounter14h +[ ]+[0-9a-f]+:[ ]+b8e59073[ ]+csrw[ ]+mhpmcounter14h,a1 +[ ]+[0-9a-f]+:[ ]+b8f02573[ ]+csrr[ ]+a0,mhpmcounter15h +[ ]+[0-9a-f]+:[ ]+b8f59073[ ]+csrw[ ]+mhpmcounter15h,a1 +[ ]+[0-9a-f]+:[ ]+b9002573[ ]+csrr[ ]+a0,mhpmcounter16h +[ ]+[0-9a-f]+:[ ]+b9059073[ ]+csrw[ ]+mhpmcounter16h,a1 +[ ]+[0-9a-f]+:[ ]+b9102573[ ]+csrr[ ]+a0,mhpmcounter17h +[ ]+[0-9a-f]+:[ ]+b9159073[ ]+csrw[ ]+mhpmcounter17h,a1 +[ ]+[0-9a-f]+:[ ]+b9202573[ ]+csrr[ ]+a0,mhpmcounter18h +[ ]+[0-9a-f]+:[ ]+b9259073[ ]+csrw[ ]+mhpmcounter18h,a1 +[ ]+[0-9a-f]+:[ ]+b9302573[ ]+csrr[ ]+a0,mhpmcounter19h +[ ]+[0-9a-f]+:[ ]+b9359073[ ]+csrw[ ]+mhpmcounter19h,a1 +[ ]+[0-9a-f]+:[ ]+b9402573[ ]+csrr[ ]+a0,mhpmcounter20h +[ ]+[0-9a-f]+:[ ]+b9459073[ ]+csrw[ ]+mhpmcounter20h,a1 +[ ]+[0-9a-f]+:[ ]+b9502573[ ]+csrr[ ]+a0,mhpmcounter21h +[ ]+[0-9a-f]+:[ ]+b9559073[ ]+csrw[ ]+mhpmcounter21h,a1 +[ ]+[0-9a-f]+:[ ]+b9602573[ ]+csrr[ ]+a0,mhpmcounter22h +[ ]+[0-9a-f]+:[ ]+b9659073[ ]+csrw[ ]+mhpmcounter22h,a1 +[ ]+[0-9a-f]+:[ ]+b9702573[ ]+csrr[ ]+a0,mhpmcounter23h +[ ]+[0-9a-f]+:[ ]+b9759073[ ]+csrw[ ]+mhpmcounter23h,a1 +[ ]+[0-9a-f]+:[ ]+b9802573[ ]+csrr[ ]+a0,mhpmcounter24h +[ ]+[0-9a-f]+:[ ]+b9859073[ ]+csrw[ ]+mhpmcounter24h,a1 +[ ]+[0-9a-f]+:[ ]+b9902573[ ]+csrr[ ]+a0,mhpmcounter25h +[ ]+[0-9a-f]+:[ ]+b9959073[ ]+csrw[ ]+mhpmcounter25h,a1 +[ ]+[0-9a-f]+:[ ]+b9a02573[ ]+csrr[ ]+a0,mhpmcounter26h +[ ]+[0-9a-f]+:[ ]+b9a59073[ ]+csrw[ ]+mhpmcounter26h,a1 +[ ]+[0-9a-f]+:[ ]+b9b02573[ ]+csrr[ ]+a0,mhpmcounter27h +[ ]+[0-9a-f]+:[ ]+b9b59073[ ]+csrw[ ]+mhpmcounter27h,a1 +[ ]+[0-9a-f]+:[ ]+b9c02573[ ]+csrr[ ]+a0,mhpmcounter28h +[ ]+[0-9a-f]+:[ ]+b9c59073[ ]+csrw[ ]+mhpmcounter28h,a1 +[ ]+[0-9a-f]+:[ ]+b9d02573[ ]+csrr[ ]+a0,mhpmcounter29h +[ ]+[0-9a-f]+:[ ]+b9d59073[ ]+csrw[ ]+mhpmcounter29h,a1 +[ ]+[0-9a-f]+:[ ]+b9e02573[ ]+csrr[ ]+a0,mhpmcounter30h +[ ]+[0-9a-f]+:[ ]+b9e59073[ ]+csrw[ ]+mhpmcounter30h,a1 +[ ]+[0-9a-f]+:[ ]+b9f02573[ ]+csrr[ ]+a0,mhpmcounter31h +[ ]+[0-9a-f]+:[ ]+b9f59073[ ]+csrw[ ]+mhpmcounter31h,a1 +[ ]+[0-9a-f]+:[ ]+32002573[ ]+csrr[ ]+a0,mcountinhibit +[ ]+[0-9a-f]+:[ ]+32059073[ ]+csrw[ ]+mcountinhibit,a1 +[ ]+[0-9a-f]+:[ ]+32302573[ ]+csrr[ ]+a0,mhpmevent3 +[ ]+[0-9a-f]+:[ ]+32359073[ ]+csrw[ ]+mhpmevent3,a1 +[ ]+[0-9a-f]+:[ ]+32402573[ ]+csrr[ ]+a0,mhpmevent4 +[ ]+[0-9a-f]+:[ ]+32459073[ ]+csrw[ ]+mhpmevent4,a1 +[ ]+[0-9a-f]+:[ ]+32502573[ ]+csrr[ ]+a0,mhpmevent5 +[ ]+[0-9a-f]+:[ ]+32559073[ ]+csrw[ ]+mhpmevent5,a1 +[ ]+[0-9a-f]+:[ ]+32602573[ ]+csrr[ ]+a0,mhpmevent6 +[ ]+[0-9a-f]+:[ ]+32659073[ ]+csrw[ ]+mhpmevent6,a1 +[ ]+[0-9a-f]+:[ ]+32702573[ ]+csrr[ ]+a0,mhpmevent7 +[ ]+[0-9a-f]+:[ ]+32759073[ ]+csrw[ ]+mhpmevent7,a1 +[ ]+[0-9a-f]+:[ ]+32802573[ ]+csrr[ ]+a0,mhpmevent8 +[ ]+[0-9a-f]+:[ ]+32859073[ ]+csrw[ ]+mhpmevent8,a1 +[ ]+[0-9a-f]+:[ ]+32902573[ ]+csrr[ ]+a0,mhpmevent9 +[ ]+[0-9a-f]+:[ ]+32959073[ ]+csrw[ ]+mhpmevent9,a1 +[ ]+[0-9a-f]+:[ ]+32a02573[ ]+csrr[ ]+a0,mhpmevent10 +[ ]+[0-9a-f]+:[ ]+32a59073[ ]+csrw[ ]+mhpmevent10,a1 +[ ]+[0-9a-f]+:[ ]+32b02573[ ]+csrr[ ]+a0,mhpmevent11 +[ ]+[0-9a-f]+:[ ]+32b59073[ ]+csrw[ ]+mhpmevent11,a1 +[ ]+[0-9a-f]+:[ ]+32c02573[ ]+csrr[ ]+a0,mhpmevent12 +[ ]+[0-9a-f]+:[ ]+32c59073[ ]+csrw[ ]+mhpmevent12,a1 +[ ]+[0-9a-f]+:[ ]+32d02573[ ]+csrr[ ]+a0,mhpmevent13 +[ ]+[0-9a-f]+:[ ]+32d59073[ ]+csrw[ ]+mhpmevent13,a1 +[ ]+[0-9a-f]+:[ ]+32e02573[ ]+csrr[ ]+a0,mhpmevent14 +[ ]+[0-9a-f]+:[ ]+32e59073[ ]+csrw[ ]+mhpmevent14,a1 +[ ]+[0-9a-f]+:[ ]+32f02573[ ]+csrr[ ]+a0,mhpmevent15 +[ ]+[0-9a-f]+:[ ]+32f59073[ ]+csrw[ ]+mhpmevent15,a1 +[ ]+[0-9a-f]+:[ ]+33002573[ ]+csrr[ ]+a0,mhpmevent16 +[ ]+[0-9a-f]+:[ ]+33059073[ ]+csrw[ ]+mhpmevent16,a1 +[ ]+[0-9a-f]+:[ ]+33102573[ ]+csrr[ ]+a0,mhpmevent17 +[ ]+[0-9a-f]+:[ ]+33159073[ ]+csrw[ ]+mhpmevent17,a1 +[ ]+[0-9a-f]+:[ ]+33202573[ ]+csrr[ ]+a0,mhpmevent18 +[ ]+[0-9a-f]+:[ ]+33259073[ ]+csrw[ ]+mhpmevent18,a1 +[ ]+[0-9a-f]+:[ ]+33302573[ ]+csrr[ ]+a0,mhpmevent19 +[ ]+[0-9a-f]+:[ ]+33359073[ ]+csrw[ ]+mhpmevent19,a1 +[ ]+[0-9a-f]+:[ ]+33402573[ ]+csrr[ ]+a0,mhpmevent20 +[ ]+[0-9a-f]+:[ ]+33459073[ ]+csrw[ ]+mhpmevent20,a1 +[ ]+[0-9a-f]+:[ ]+33502573[ ]+csrr[ ]+a0,mhpmevent21 +[ ]+[0-9a-f]+:[ ]+33559073[ ]+csrw[ ]+mhpmevent21,a1 +[ ]+[0-9a-f]+:[ ]+33602573[ ]+csrr[ ]+a0,mhpmevent22 +[ ]+[0-9a-f]+:[ ]+33659073[ ]+csrw[ ]+mhpmevent22,a1 +[ ]+[0-9a-f]+:[ ]+33702573[ ]+csrr[ ]+a0,mhpmevent23 +[ ]+[0-9a-f]+:[ ]+33759073[ ]+csrw[ ]+mhpmevent23,a1 +[ ]+[0-9a-f]+:[ ]+33802573[ ]+csrr[ ]+a0,mhpmevent24 +[ ]+[0-9a-f]+:[ ]+33859073[ ]+csrw[ ]+mhpmevent24,a1 +[ ]+[0-9a-f]+:[ ]+33902573[ ]+csrr[ ]+a0,mhpmevent25 +[ ]+[0-9a-f]+:[ ]+33959073[ ]+csrw[ ]+mhpmevent25,a1 +[ ]+[0-9a-f]+:[ ]+33a02573[ ]+csrr[ ]+a0,mhpmevent26 +[ ]+[0-9a-f]+:[ ]+33a59073[ ]+csrw[ ]+mhpmevent26,a1 +[ ]+[0-9a-f]+:[ ]+33b02573[ ]+csrr[ ]+a0,mhpmevent27 +[ ]+[0-9a-f]+:[ ]+33b59073[ ]+csrw[ ]+mhpmevent27,a1 +[ ]+[0-9a-f]+:[ ]+33c02573[ ]+csrr[ ]+a0,mhpmevent28 +[ ]+[0-9a-f]+:[ ]+33c59073[ ]+csrw[ ]+mhpmevent28,a1 +[ ]+[0-9a-f]+:[ ]+33d02573[ ]+csrr[ ]+a0,mhpmevent29 +[ ]+[0-9a-f]+:[ ]+33d59073[ ]+csrw[ ]+mhpmevent29,a1 +[ ]+[0-9a-f]+:[ ]+33e02573[ ]+csrr[ ]+a0,mhpmevent30 +[ ]+[0-9a-f]+:[ ]+33e59073[ ]+csrw[ ]+mhpmevent30,a1 +[ ]+[0-9a-f]+:[ ]+33f02573[ ]+csrr[ ]+a0,mhpmevent31 +[ ]+[0-9a-f]+:[ ]+33f59073[ ]+csrw[ ]+mhpmevent31,a1 +[ ]+[0-9a-f]+:[ ]+60002573[ ]+csrr[ ]+a0,hstatus +[ ]+[0-9a-f]+:[ ]+60059073[ ]+csrw[ ]+hstatus,a1 +[ ]+[0-9a-f]+:[ ]+60202573[ ]+csrr[ ]+a0,hedeleg +[ ]+[0-9a-f]+:[ ]+60259073[ ]+csrw[ ]+hedeleg,a1 +[ ]+[0-9a-f]+:[ ]+61202573[ ]+csrr[ ]+a0,hedelegh +[ ]+[0-9a-f]+:[ ]+61259073[ ]+csrw[ ]+hedelegh,a1 +[ ]+[0-9a-f]+:[ ]+60302573[ ]+csrr[ ]+a0,hideleg +[ ]+[0-9a-f]+:[ ]+60359073[ ]+csrw[ ]+hideleg,a1 +[ ]+[0-9a-f]+:[ ]+60402573[ ]+csrr[ ]+a0,hie +[ ]+[0-9a-f]+:[ ]+60459073[ ]+csrw[ ]+hie,a1 +[ ]+[0-9a-f]+:[ ]+60602573[ ]+csrr[ ]+a0,hcounteren +[ ]+[0-9a-f]+:[ ]+60659073[ ]+csrw[ ]+hcounteren,a1 +[ ]+[0-9a-f]+:[ ]+60702573[ ]+csrr[ ]+a0,hgeie +[ ]+[0-9a-f]+:[ ]+60759073[ ]+csrw[ ]+hgeie,a1 +[ ]+[0-9a-f]+:[ ]+64302573[ ]+csrr[ ]+a0,htval +[ ]+[0-9a-f]+:[ ]+64359073[ ]+csrw[ ]+htval,a1 +[ ]+[0-9a-f]+:[ ]+64402573[ ]+csrr[ ]+a0,hip +[ ]+[0-9a-f]+:[ ]+64459073[ ]+csrw[ ]+hip,a1 +[ ]+[0-9a-f]+:[ ]+64502573[ ]+csrr[ ]+a0,hvip +[ ]+[0-9a-f]+:[ ]+64559073[ ]+csrw[ ]+hvip,a1 +[ ]+[0-9a-f]+:[ ]+64a02573[ ]+csrr[ ]+a0,htinst +[ ]+[0-9a-f]+:[ ]+64a59073[ ]+csrw[ ]+htinst,a1 +[ ]+[0-9a-f]+:[ ]+e1202573[ ]+csrr[ ]+a0,hgeip +[ ]+[0-9a-f]+:[ ]+e1259073[ ]+csrw[ ]+hgeip,a1 +[ ]+[0-9a-f]+:[ ]+60a02573[ ]+csrr[ ]+a0,henvcfg +[ ]+[0-9a-f]+:[ ]+60a59073[ ]+csrw[ ]+henvcfg,a1 +[ ]+[0-9a-f]+:[ ]+61a02573[ ]+csrr[ ]+a0,henvcfgh +[ ]+[0-9a-f]+:[ ]+61a59073[ ]+csrw[ ]+henvcfgh,a1 +[ ]+[0-9a-f]+:[ ]+68002573[ ]+csrr[ ]+a0,hgatp +[ ]+[0-9a-f]+:[ ]+68059073[ ]+csrw[ ]+hgatp,a1 +[ ]+[0-9a-f]+:[ ]+60502573[ ]+csrr[ ]+a0,htimedelta +[ ]+[0-9a-f]+:[ ]+60559073[ ]+csrw[ ]+htimedelta,a1 +[ ]+[0-9a-f]+:[ ]+61502573[ ]+csrr[ ]+a0,htimedeltah +[ ]+[0-9a-f]+:[ ]+61559073[ ]+csrw[ ]+htimedeltah,a1 +[ ]+[0-9a-f]+:[ ]+20002573[ ]+csrr[ ]+a0,vsstatus +[ ]+[0-9a-f]+:[ ]+20059073[ ]+csrw[ ]+vsstatus,a1 +[ ]+[0-9a-f]+:[ ]+20402573[ ]+csrr[ ]+a0,vsie +[ ]+[0-9a-f]+:[ ]+20459073[ ]+csrw[ ]+vsie,a1 +[ ]+[0-9a-f]+:[ ]+20502573[ ]+csrr[ ]+a0,vstvec +[ ]+[0-9a-f]+:[ ]+20559073[ ]+csrw[ ]+vstvec,a1 +[ ]+[0-9a-f]+:[ ]+24002573[ ]+csrr[ ]+a0,vsscratch +[ ]+[0-9a-f]+:[ ]+24059073[ ]+csrw[ ]+vsscratch,a1 +[ ]+[0-9a-f]+:[ ]+24102573[ ]+csrr[ ]+a0,vsepc +[ ]+[0-9a-f]+:[ ]+24159073[ ]+csrw[ ]+vsepc,a1 +[ ]+[0-9a-f]+:[ ]+24202573[ ]+csrr[ ]+a0,vscause +[ ]+[0-9a-f]+:[ ]+24259073[ ]+csrw[ ]+vscause,a1 +[ ]+[0-9a-f]+:[ ]+24302573[ ]+csrr[ ]+a0,vstval +[ ]+[0-9a-f]+:[ ]+24359073[ ]+csrw[ ]+vstval,a1 +[ ]+[0-9a-f]+:[ ]+24402573[ ]+csrr[ ]+a0,vsip +[ ]+[0-9a-f]+:[ ]+24459073[ ]+csrw[ ]+vsip,a1 +[ ]+[0-9a-f]+:[ ]+28002573[ ]+csrr[ ]+a0,vsatp +[ ]+[0-9a-f]+:[ ]+28059073[ ]+csrw[ ]+vsatp,a1 +[ ]+[0-9a-f]+:[ ]+35002573[ ]+csrr[ ]+a0,miselect +[ ]+[0-9a-f]+:[ ]+35059073[ ]+csrw[ ]+miselect,a1 +[ ]+[0-9a-f]+:[ ]+35102573[ ]+csrr[ ]+a0,mireg +[ ]+[0-9a-f]+:[ ]+35159073[ ]+csrw[ ]+mireg,a1 +[ ]+[0-9a-f]+:[ ]+35c02573[ ]+csrr[ ]+a0,mtopei +[ ]+[0-9a-f]+:[ ]+35c59073[ ]+csrw[ ]+mtopei,a1 +[ ]+[0-9a-f]+:[ ]+fb002573[ ]+csrr[ ]+a0,mtopi +[ ]+[0-9a-f]+:[ ]+fb059073[ ]+csrw[ ]+mtopi,a1 +[ ]+[0-9a-f]+:[ ]+30802573[ ]+csrr[ ]+a0,mvien +[ ]+[0-9a-f]+:[ ]+30859073[ ]+csrw[ ]+mvien,a1 +[ ]+[0-9a-f]+:[ ]+30902573[ ]+csrr[ ]+a0,mvip +[ ]+[0-9a-f]+:[ ]+30959073[ ]+csrw[ ]+mvip,a1 +[ ]+[0-9a-f]+:[ ]+31302573[ ]+csrr[ ]+a0,midelegh +[ ]+[0-9a-f]+:[ ]+31359073[ ]+csrw[ ]+midelegh,a1 +[ ]+[0-9a-f]+:[ ]+31402573[ ]+csrr[ ]+a0,mieh +[ ]+[0-9a-f]+:[ ]+31459073[ ]+csrw[ ]+mieh,a1 +[ ]+[0-9a-f]+:[ ]+31802573[ ]+csrr[ ]+a0,mvienh +[ ]+[0-9a-f]+:[ ]+31859073[ ]+csrw[ ]+mvienh,a1 +[ ]+[0-9a-f]+:[ ]+31902573[ ]+csrr[ ]+a0,mviph +[ ]+[0-9a-f]+:[ ]+31959073[ ]+csrw[ ]+mviph,a1 +[ ]+[0-9a-f]+:[ ]+35402573[ ]+csrr[ ]+a0,miph +[ ]+[0-9a-f]+:[ ]+35459073[ ]+csrw[ ]+miph,a1 +[ ]+[0-9a-f]+:[ ]+35002573[ ]+csrr[ ]+a0,miselect +[ ]+[0-9a-f]+:[ ]+35059073[ ]+csrw[ ]+miselect,a1 +[ ]+[0-9a-f]+:[ ]+35102573[ ]+csrr[ ]+a0,mireg +[ ]+[0-9a-f]+:[ ]+35159073[ ]+csrw[ ]+mireg,a1 +[ ]+[0-9a-f]+:[ ]+35202573[ ]+csrr[ ]+a0,mireg2 +[ ]+[0-9a-f]+:[ ]+35259073[ ]+csrw[ ]+mireg2,a1 +[ ]+[0-9a-f]+:[ ]+35302573[ ]+csrr[ ]+a0,mireg3 +[ ]+[0-9a-f]+:[ ]+35359073[ ]+csrw[ ]+mireg3,a1 +[ ]+[0-9a-f]+:[ ]+35502573[ ]+csrr[ ]+a0,mireg4 +[ ]+[0-9a-f]+:[ ]+35559073[ ]+csrw[ ]+mireg4,a1 +[ ]+[0-9a-f]+:[ ]+35602573[ ]+csrr[ ]+a0,mireg5 +[ ]+[0-9a-f]+:[ ]+35659073[ ]+csrw[ ]+mireg5,a1 +[ ]+[0-9a-f]+:[ ]+35702573[ ]+csrr[ ]+a0,mireg6 +[ ]+[0-9a-f]+:[ ]+35759073[ ]+csrw[ ]+mireg6,a1 +[ ]+[0-9a-f]+:[ ]+32102573[ ]+csrr[ ]+a0,mcyclecfg +[ ]+[0-9a-f]+:[ ]+32159073[ ]+csrw[ ]+mcyclecfg,a1 +[ ]+[0-9a-f]+:[ ]+32202573[ ]+csrr[ ]+a0,minstretcfg +[ ]+[0-9a-f]+:[ ]+32259073[ ]+csrw[ ]+minstretcfg,a1 +[ ]+[0-9a-f]+:[ ]+72102573[ ]+csrr[ ]+a0,mcyclecfgh +[ ]+[0-9a-f]+:[ ]+72159073[ ]+csrw[ ]+mcyclecfgh,a1 +[ ]+[0-9a-f]+:[ ]+72202573[ ]+csrr[ ]+a0,minstretcfgh +[ ]+[0-9a-f]+:[ ]+72259073[ ]+csrw[ ]+minstretcfgh,a1 +[ ]+[0-9a-f]+:[ ]+74102573[ ]+csrr[ ]+a0,mnepc +[ ]+[0-9a-f]+:[ ]+74159073[ ]+csrw[ ]+mnepc,a1 +[ ]+[0-9a-f]+:[ ]+74202573[ ]+csrr[ ]+a0,mncause +[ ]+[0-9a-f]+:[ ]+74259073[ ]+csrw[ ]+mncause,a1 +[ ]+[0-9a-f]+:[ ]+74002573[ ]+csrr[ ]+a0,mnscratch +[ ]+[0-9a-f]+:[ ]+74059073[ ]+csrw[ ]+mnscratch,a1 +[ ]+[0-9a-f]+:[ ]+74402573[ ]+csrr[ ]+a0,mnstatus +[ ]+[0-9a-f]+:[ ]+74459073[ ]+csrw[ ]+mnstatus,a1 +[ ]+[0-9a-f]+:[ ]+30c02573[ ]+csrr[ ]+a0,mstateen0 +[ ]+[0-9a-f]+:[ ]+30c59073[ ]+csrw[ ]+mstateen0,a1 +[ ]+[0-9a-f]+:[ ]+30d02573[ ]+csrr[ ]+a0,mstateen1 +[ ]+[0-9a-f]+:[ ]+30d59073[ ]+csrw[ ]+mstateen1,a1 +[ ]+[0-9a-f]+:[ ]+30e02573[ ]+csrr[ ]+a0,mstateen2 +[ ]+[0-9a-f]+:[ ]+30e59073[ ]+csrw[ ]+mstateen2,a1 +[ ]+[0-9a-f]+:[ ]+30f02573[ ]+csrr[ ]+a0,mstateen3 +[ ]+[0-9a-f]+:[ ]+30f59073[ ]+csrw[ ]+mstateen3,a1 +[ ]+[0-9a-f]+:[ ]+10c02573[ ]+csrr[ ]+a0,sstateen0 +[ ]+[0-9a-f]+:[ ]+10c59073[ ]+csrw[ ]+sstateen0,a1 +[ ]+[0-9a-f]+:[ ]+10d02573[ ]+csrr[ ]+a0,sstateen1 +[ ]+[0-9a-f]+:[ ]+10d59073[ ]+csrw[ ]+sstateen1,a1 +[ ]+[0-9a-f]+:[ ]+10e02573[ ]+csrr[ ]+a0,sstateen2 +[ ]+[0-9a-f]+:[ ]+10e59073[ ]+csrw[ ]+sstateen2,a1 +[ ]+[0-9a-f]+:[ ]+10f02573[ ]+csrr[ ]+a0,sstateen3 +[ ]+[0-9a-f]+:[ ]+10f59073[ ]+csrw[ ]+sstateen3,a1 +[ ]+[0-9a-f]+:[ ]+60c02573[ ]+csrr[ ]+a0,hstateen0 +[ ]+[0-9a-f]+:[ ]+60c59073[ ]+csrw[ ]+hstateen0,a1 +[ ]+[0-9a-f]+:[ ]+60d02573[ ]+csrr[ ]+a0,hstateen1 +[ ]+[0-9a-f]+:[ ]+60d59073[ ]+csrw[ ]+hstateen1,a1 +[ ]+[0-9a-f]+:[ ]+60e02573[ ]+csrr[ ]+a0,hstateen2 +[ ]+[0-9a-f]+:[ ]+60e59073[ ]+csrw[ ]+hstateen2,a1 +[ ]+[0-9a-f]+:[ ]+60f02573[ ]+csrr[ ]+a0,hstateen3 +[ ]+[0-9a-f]+:[ ]+60f59073[ ]+csrw[ ]+hstateen3,a1 +[ ]+[0-9a-f]+:[ ]+31c02573[ ]+csrr[ ]+a0,mstateen0h +[ ]+[0-9a-f]+:[ ]+31c59073[ ]+csrw[ ]+mstateen0h,a1 +[ ]+[0-9a-f]+:[ ]+31d02573[ ]+csrr[ ]+a0,mstateen1h +[ ]+[0-9a-f]+:[ ]+31d59073[ ]+csrw[ ]+mstateen1h,a1 +[ ]+[0-9a-f]+:[ ]+31e02573[ ]+csrr[ ]+a0,mstateen2h +[ ]+[0-9a-f]+:[ ]+31e59073[ ]+csrw[ ]+mstateen2h,a1 +[ ]+[0-9a-f]+:[ ]+31f02573[ ]+csrr[ ]+a0,mstateen3h +[ ]+[0-9a-f]+:[ ]+31f59073[ ]+csrw[ ]+mstateen3h,a1 +[ ]+[0-9a-f]+:[ ]+61c02573[ ]+csrr[ ]+a0,hstateen0h +[ ]+[0-9a-f]+:[ ]+61c59073[ ]+csrw[ ]+hstateen0h,a1 +[ ]+[0-9a-f]+:[ ]+61d02573[ ]+csrr[ ]+a0,hstateen1h +[ ]+[0-9a-f]+:[ ]+61d59073[ ]+csrw[ ]+hstateen1h,a1 +[ ]+[0-9a-f]+:[ ]+61e02573[ ]+csrr[ ]+a0,hstateen2h +[ ]+[0-9a-f]+:[ ]+61e59073[ ]+csrw[ ]+hstateen2h,a1 +[ ]+[0-9a-f]+:[ ]+61f02573[ ]+csrr[ ]+a0,hstateen3h +[ ]+[0-9a-f]+:[ ]+61f59073[ ]+csrw[ ]+hstateen3h,a1 +[ ]+[0-9a-f]+:[ ]+15002573[ ]+csrr[ ]+a0,siselect +[ ]+[0-9a-f]+:[ ]+15059073[ ]+csrw[ ]+siselect,a1 +[ ]+[0-9a-f]+:[ ]+15102573[ ]+csrr[ ]+a0,sireg +[ ]+[0-9a-f]+:[ ]+15159073[ ]+csrw[ ]+sireg,a1 +[ ]+[0-9a-f]+:[ ]+15c02573[ ]+csrr[ ]+a0,stopei +[ ]+[0-9a-f]+:[ ]+15c59073[ ]+csrw[ ]+stopei,a1 +[ ]+[0-9a-f]+:[ ]+db002573[ ]+csrr[ ]+a0,stopi +[ ]+[0-9a-f]+:[ ]+db059073[ ]+csrw[ ]+stopi,a1 +[ ]+[0-9a-f]+:[ ]+11402573[ ]+csrr[ ]+a0,sieh +[ ]+[0-9a-f]+:[ ]+11459073[ ]+csrw[ ]+sieh,a1 +[ ]+[0-9a-f]+:[ ]+15402573[ ]+csrr[ ]+a0,siph +[ ]+[0-9a-f]+:[ ]+15459073[ ]+csrw[ ]+siph,a1 +[ ]+[0-9a-f]+:[ ]+60802573[ ]+csrr[ ]+a0,hvien +[ ]+[0-9a-f]+:[ ]+60859073[ ]+csrw[ ]+hvien,a1 +[ ]+[0-9a-f]+:[ ]+60902573[ ]+csrr[ ]+a0,hvictl +[ ]+[0-9a-f]+:[ ]+60959073[ ]+csrw[ ]+hvictl,a1 +[ ]+[0-9a-f]+:[ ]+64602573[ ]+csrr[ ]+a0,hviprio1 +[ ]+[0-9a-f]+:[ ]+64659073[ ]+csrw[ ]+hviprio1,a1 +[ ]+[0-9a-f]+:[ ]+64702573[ ]+csrr[ ]+a0,hviprio2 +[ ]+[0-9a-f]+:[ ]+64759073[ ]+csrw[ ]+hviprio2,a1 +[ ]+[0-9a-f]+:[ ]+25002573[ ]+csrr[ ]+a0,vsiselect +[ ]+[0-9a-f]+:[ ]+25059073[ ]+csrw[ ]+vsiselect,a1 +[ ]+[0-9a-f]+:[ ]+25102573[ ]+csrr[ ]+a0,vsireg +[ ]+[0-9a-f]+:[ ]+25159073[ ]+csrw[ ]+vsireg,a1 +[ ]+[0-9a-f]+:[ ]+25c02573[ ]+csrr[ ]+a0,vstopei +[ ]+[0-9a-f]+:[ ]+25c59073[ ]+csrw[ ]+vstopei,a1 +[ ]+[0-9a-f]+:[ ]+eb002573[ ]+csrr[ ]+a0,vstopi +[ ]+[0-9a-f]+:[ ]+eb059073[ ]+csrw[ ]+vstopi,a1 +[ ]+[0-9a-f]+:[ ]+61302573[ ]+csrr[ ]+a0,hidelegh +[ ]+[0-9a-f]+:[ ]+61359073[ ]+csrw[ ]+hidelegh,a1 +[ ]+[0-9a-f]+:[ ]+61802573[ ]+csrr[ ]+a0,hvienh +[ ]+[0-9a-f]+:[ ]+61859073[ ]+csrw[ ]+hvienh,a1 +[ ]+[0-9a-f]+:[ ]+65502573[ ]+csrr[ ]+a0,hviph +[ ]+[0-9a-f]+:[ ]+65559073[ ]+csrw[ ]+hviph,a1 +[ ]+[0-9a-f]+:[ ]+65602573[ ]+csrr[ ]+a0,hviprio1h +[ ]+[0-9a-f]+:[ ]+65659073[ ]+csrw[ ]+hviprio1h,a1 +[ ]+[0-9a-f]+:[ ]+65702573[ ]+csrr[ ]+a0,hviprio2h +[ ]+[0-9a-f]+:[ ]+65759073[ ]+csrw[ ]+hviprio2h,a1 +[ ]+[0-9a-f]+:[ ]+21402573[ ]+csrr[ ]+a0,vsieh +[ ]+[0-9a-f]+:[ ]+21459073[ ]+csrw[ ]+vsieh,a1 +[ ]+[0-9a-f]+:[ ]+25402573[ ]+csrr[ ]+a0,vsiph +[ ]+[0-9a-f]+:[ ]+25459073[ ]+csrw[ ]+vsiph,a1 +[ ]+[0-9a-f]+:[ ]+12002573[ ]+csrr[ ]+a0,scountinhibit +[ ]+[0-9a-f]+:[ ]+12059073[ ]+csrw[ ]+scountinhibit,a1 +[ ]+[0-9a-f]+:[ ]+01102573[ ]+csrr[ ]+a0,ssp +[ ]+[0-9a-f]+:[ ]+01159073[ ]+csrw[ ]+ssp,a1 +[ ]+[0-9a-f]+:[ ]+15002573[ ]+csrr[ ]+a0,siselect +[ ]+[0-9a-f]+:[ ]+15059073[ ]+csrw[ ]+siselect,a1 +[ ]+[0-9a-f]+:[ ]+15102573[ ]+csrr[ ]+a0,sireg +[ ]+[0-9a-f]+:[ ]+15159073[ ]+csrw[ ]+sireg,a1 +[ ]+[0-9a-f]+:[ ]+15202573[ ]+csrr[ ]+a0,sireg2 +[ ]+[0-9a-f]+:[ ]+15259073[ ]+csrw[ ]+sireg2,a1 +[ ]+[0-9a-f]+:[ ]+15302573[ ]+csrr[ ]+a0,sireg3 +[ ]+[0-9a-f]+:[ ]+15359073[ ]+csrw[ ]+sireg3,a1 +[ ]+[0-9a-f]+:[ ]+15502573[ ]+csrr[ ]+a0,sireg4 +[ ]+[0-9a-f]+:[ ]+15559073[ ]+csrw[ ]+sireg4,a1 +[ ]+[0-9a-f]+:[ ]+15602573[ ]+csrr[ ]+a0,sireg5 +[ ]+[0-9a-f]+:[ ]+15659073[ ]+csrw[ ]+sireg5,a1 +[ ]+[0-9a-f]+:[ ]+15702573[ ]+csrr[ ]+a0,sireg6 +[ ]+[0-9a-f]+:[ ]+15759073[ ]+csrw[ ]+sireg6,a1 +[ ]+[0-9a-f]+:[ ]+25002573[ ]+csrr[ ]+a0,vsiselect +[ ]+[0-9a-f]+:[ ]+25059073[ ]+csrw[ ]+vsiselect,a1 +[ ]+[0-9a-f]+:[ ]+25102573[ ]+csrr[ ]+a0,vsireg +[ ]+[0-9a-f]+:[ ]+25159073[ ]+csrw[ ]+vsireg,a1 +[ ]+[0-9a-f]+:[ ]+25202573[ ]+csrr[ ]+a0,vsireg2 +[ ]+[0-9a-f]+:[ ]+25259073[ ]+csrw[ ]+vsireg2,a1 +[ ]+[0-9a-f]+:[ ]+25302573[ ]+csrr[ ]+a0,vsireg3 +[ ]+[0-9a-f]+:[ ]+25359073[ ]+csrw[ ]+vsireg3,a1 +[ ]+[0-9a-f]+:[ ]+25502573[ ]+csrr[ ]+a0,vsireg4 +[ ]+[0-9a-f]+:[ ]+25559073[ ]+csrw[ ]+vsireg4,a1 +[ ]+[0-9a-f]+:[ ]+25602573[ ]+csrr[ ]+a0,vsireg5 +[ ]+[0-9a-f]+:[ ]+25659073[ ]+csrw[ ]+vsireg5,a1 +[ ]+[0-9a-f]+:[ ]+25702573[ ]+csrr[ ]+a0,vsireg6 +[ ]+[0-9a-f]+:[ ]+25759073[ ]+csrw[ ]+vsireg6,a1 +[ ]+[0-9a-f]+:[ ]+da002573[ ]+csrr[ ]+a0,scountovf +[ ]+[0-9a-f]+:[ ]+da059073[ ]+csrw[ ]+scountovf,a1 +[ ]+[0-9a-f]+:[ ]+72302573[ ]+csrr[ ]+a0,mhpmevent3h +[ ]+[0-9a-f]+:[ ]+72359073[ ]+csrw[ ]+mhpmevent3h,a1 +[ ]+[0-9a-f]+:[ ]+72402573[ ]+csrr[ ]+a0,mhpmevent4h +[ ]+[0-9a-f]+:[ ]+72459073[ ]+csrw[ ]+mhpmevent4h,a1 +[ ]+[0-9a-f]+:[ ]+72502573[ ]+csrr[ ]+a0,mhpmevent5h +[ ]+[0-9a-f]+:[ ]+72559073[ ]+csrw[ ]+mhpmevent5h,a1 +[ ]+[0-9a-f]+:[ ]+72602573[ ]+csrr[ ]+a0,mhpmevent6h +[ ]+[0-9a-f]+:[ ]+72659073[ ]+csrw[ ]+mhpmevent6h,a1 +[ ]+[0-9a-f]+:[ ]+72702573[ ]+csrr[ ]+a0,mhpmevent7h +[ ]+[0-9a-f]+:[ ]+72759073[ ]+csrw[ ]+mhpmevent7h,a1 +[ ]+[0-9a-f]+:[ ]+72802573[ ]+csrr[ ]+a0,mhpmevent8h +[ ]+[0-9a-f]+:[ ]+72859073[ ]+csrw[ ]+mhpmevent8h,a1 +[ ]+[0-9a-f]+:[ ]+72902573[ ]+csrr[ ]+a0,mhpmevent9h +[ ]+[0-9a-f]+:[ ]+72959073[ ]+csrw[ ]+mhpmevent9h,a1 +[ ]+[0-9a-f]+:[ ]+72a02573[ ]+csrr[ ]+a0,mhpmevent10h +[ ]+[0-9a-f]+:[ ]+72a59073[ ]+csrw[ ]+mhpmevent10h,a1 +[ ]+[0-9a-f]+:[ ]+72b02573[ ]+csrr[ ]+a0,mhpmevent11h +[ ]+[0-9a-f]+:[ ]+72b59073[ ]+csrw[ ]+mhpmevent11h,a1 +[ ]+[0-9a-f]+:[ ]+72c02573[ ]+csrr[ ]+a0,mhpmevent12h +[ ]+[0-9a-f]+:[ ]+72c59073[ ]+csrw[ ]+mhpmevent12h,a1 +[ ]+[0-9a-f]+:[ ]+72d02573[ ]+csrr[ ]+a0,mhpmevent13h +[ ]+[0-9a-f]+:[ ]+72d59073[ ]+csrw[ ]+mhpmevent13h,a1 +[ ]+[0-9a-f]+:[ ]+72e02573[ ]+csrr[ ]+a0,mhpmevent14h +[ ]+[0-9a-f]+:[ ]+72e59073[ ]+csrw[ ]+mhpmevent14h,a1 +[ ]+[0-9a-f]+:[ ]+72f02573[ ]+csrr[ ]+a0,mhpmevent15h +[ ]+[0-9a-f]+:[ ]+72f59073[ ]+csrw[ ]+mhpmevent15h,a1 +[ ]+[0-9a-f]+:[ ]+73002573[ ]+csrr[ ]+a0,mhpmevent16h +[ ]+[0-9a-f]+:[ ]+73059073[ ]+csrw[ ]+mhpmevent16h,a1 +[ ]+[0-9a-f]+:[ ]+73102573[ ]+csrr[ ]+a0,mhpmevent17h +[ ]+[0-9a-f]+:[ ]+73159073[ ]+csrw[ ]+mhpmevent17h,a1 +[ ]+[0-9a-f]+:[ ]+73202573[ ]+csrr[ ]+a0,mhpmevent18h +[ ]+[0-9a-f]+:[ ]+73259073[ ]+csrw[ ]+mhpmevent18h,a1 +[ ]+[0-9a-f]+:[ ]+73302573[ ]+csrr[ ]+a0,mhpmevent19h +[ ]+[0-9a-f]+:[ ]+73359073[ ]+csrw[ ]+mhpmevent19h,a1 +[ ]+[0-9a-f]+:[ ]+73402573[ ]+csrr[ ]+a0,mhpmevent20h +[ ]+[0-9a-f]+:[ ]+73459073[ ]+csrw[ ]+mhpmevent20h,a1 +[ ]+[0-9a-f]+:[ ]+73502573[ ]+csrr[ ]+a0,mhpmevent21h +[ ]+[0-9a-f]+:[ ]+73559073[ ]+csrw[ ]+mhpmevent21h,a1 +[ ]+[0-9a-f]+:[ ]+73602573[ ]+csrr[ ]+a0,mhpmevent22h +[ ]+[0-9a-f]+:[ ]+73659073[ ]+csrw[ ]+mhpmevent22h,a1 +[ ]+[0-9a-f]+:[ ]+73702573[ ]+csrr[ ]+a0,mhpmevent23h +[ ]+[0-9a-f]+:[ ]+73759073[ ]+csrw[ ]+mhpmevent23h,a1 +[ ]+[0-9a-f]+:[ ]+73802573[ ]+csrr[ ]+a0,mhpmevent24h +[ ]+[0-9a-f]+:[ ]+73859073[ ]+csrw[ ]+mhpmevent24h,a1 +[ ]+[0-9a-f]+:[ ]+73902573[ ]+csrr[ ]+a0,mhpmevent25h +[ ]+[0-9a-f]+:[ ]+73959073[ ]+csrw[ ]+mhpmevent25h,a1 +[ ]+[0-9a-f]+:[ ]+73a02573[ ]+csrr[ ]+a0,mhpmevent26h +[ ]+[0-9a-f]+:[ ]+73a59073[ ]+csrw[ ]+mhpmevent26h,a1 +[ ]+[0-9a-f]+:[ ]+73b02573[ ]+csrr[ ]+a0,mhpmevent27h +[ ]+[0-9a-f]+:[ ]+73b59073[ ]+csrw[ ]+mhpmevent27h,a1 +[ ]+[0-9a-f]+:[ ]+73c02573[ ]+csrr[ ]+a0,mhpmevent28h +[ ]+[0-9a-f]+:[ ]+73c59073[ ]+csrw[ ]+mhpmevent28h,a1 +[ ]+[0-9a-f]+:[ ]+73d02573[ ]+csrr[ ]+a0,mhpmevent29h +[ ]+[0-9a-f]+:[ ]+73d59073[ ]+csrw[ ]+mhpmevent29h,a1 +[ ]+[0-9a-f]+:[ ]+73e02573[ ]+csrr[ ]+a0,mhpmevent30h +[ ]+[0-9a-f]+:[ ]+73e59073[ ]+csrw[ ]+mhpmevent30h,a1 +[ ]+[0-9a-f]+:[ ]+73f02573[ ]+csrr[ ]+a0,mhpmevent31h +[ ]+[0-9a-f]+:[ ]+73f59073[ ]+csrw[ ]+mhpmevent31h,a1 +[ ]+[0-9a-f]+:[ ]+14d02573[ ]+csrr[ ]+a0,stimecmp +[ ]+[0-9a-f]+:[ ]+14d59073[ ]+csrw[ ]+stimecmp,a1 +[ ]+[0-9a-f]+:[ ]+15d02573[ ]+csrr[ ]+a0,stimecmph +[ ]+[0-9a-f]+:[ ]+15d59073[ ]+csrw[ ]+stimecmph,a1 +[ ]+[0-9a-f]+:[ ]+24d02573[ ]+csrr[ ]+a0,vstimecmp +[ ]+[0-9a-f]+:[ ]+24d59073[ ]+csrw[ ]+vstimecmp,a1 +[ ]+[0-9a-f]+:[ ]+25d02573[ ]+csrr[ ]+a0,vstimecmph +[ ]+[0-9a-f]+:[ ]+25d59073[ ]+csrw[ ]+vstimecmph,a1 +[ ]+[0-9a-f]+:[ ]+14e02573[ ]+csrr[ ]+a0,sctrctl +[ ]+[0-9a-f]+:[ ]+14e59073[ ]+csrw[ ]+sctrctl,a1 +[ ]+[0-9a-f]+:[ ]+14f02573[ ]+csrr[ ]+a0,sctrstatus +[ ]+[0-9a-f]+:[ ]+14f59073[ ]+csrw[ ]+sctrstatus,a1 +[ ]+[0-9a-f]+:[ ]+15f02573[ ]+csrr[ ]+a0,sctrdepth +[ ]+[0-9a-f]+:[ ]+15f59073[ ]+csrw[ ]+sctrdepth,a1 +[ ]+[0-9a-f]+:[ ]+24e02573[ ]+csrr[ ]+a0,vsctrctl +[ ]+[0-9a-f]+:[ ]+24e59073[ ]+csrw[ ]+vsctrctl,a1 +[ ]+[0-9a-f]+:[ ]+34e02573[ ]+csrr[ ]+a0,mctrctl +[ ]+[0-9a-f]+:[ ]+34e59073[ ]+csrw[ ]+mctrctl,a1 +[ ]+[0-9a-f]+:[ ]+00002573[ ]+csrr[ ]+a0,0x0 +[ ]+[0-9a-f]+:[ ]+00059073[ ]+csrw[ ]+0x0,a1 +[ ]+[0-9a-f]+:[ ]+00402573[ ]+csrr[ ]+a0,0x4 +[ ]+[0-9a-f]+:[ ]+00459073[ ]+csrw[ ]+0x4,a1 +[ ]+[0-9a-f]+:[ ]+00502573[ ]+csrr[ ]+a0,0x5 +[ ]+[0-9a-f]+:[ ]+00559073[ ]+csrw[ ]+0x5,a1 +[ ]+[0-9a-f]+:[ ]+04002573[ ]+csrr[ ]+a0,0x40 +[ ]+[0-9a-f]+:[ ]+04059073[ ]+csrw[ ]+0x40,a1 +[ ]+[0-9a-f]+:[ ]+04102573[ ]+csrr[ ]+a0,0x41 +[ ]+[0-9a-f]+:[ ]+04159073[ ]+csrw[ ]+0x41,a1 +[ ]+[0-9a-f]+:[ ]+04202573[ ]+csrr[ ]+a0,0x42 +[ ]+[0-9a-f]+:[ ]+04259073[ ]+csrw[ ]+0x42,a1 +[ ]+[0-9a-f]+:[ ]+04302573[ ]+csrr[ ]+a0,0x43 +[ ]+[0-9a-f]+:[ ]+04359073[ ]+csrw[ ]+0x43,a1 +[ ]+[0-9a-f]+:[ ]+04402573[ ]+csrr[ ]+a0,0x44 +[ ]+[0-9a-f]+:[ ]+04459073[ ]+csrw[ ]+0x44,a1 +[ ]+[0-9a-f]+:[ ]+10202573[ ]+csrr[ ]+a0,0x102 +[ ]+[0-9a-f]+:[ ]+10259073[ ]+csrw[ ]+0x102,a1 +[ ]+[0-9a-f]+:[ ]+10302573[ ]+csrr[ ]+a0,0x103 +[ ]+[0-9a-f]+:[ ]+10359073[ ]+csrw[ ]+0x103,a1 +[ ]+[0-9a-f]+:[ ]+00102573[ ]+csrr[ ]+a0,fflags +[ ]+[0-9a-f]+:[ ]+00159073[ ]+csrw[ ]+fflags,a1 +[ ]+[0-9a-f]+:[ ]+00202573[ ]+csrr[ ]+a0,frm +[ ]+[0-9a-f]+:[ ]+00259073[ ]+csrw[ ]+frm,a1 +[ ]+[0-9a-f]+:[ ]+00302573[ ]+csrr[ ]+a0,fcsr +[ ]+[0-9a-f]+:[ ]+00359073[ ]+csrw[ ]+fcsr,a1 +[ ]+[0-9a-f]+:[ ]+7b002573[ ]+csrr[ ]+a0,dcsr +[ ]+[0-9a-f]+:[ ]+7b059073[ ]+csrw[ ]+dcsr,a1 +[ ]+[0-9a-f]+:[ ]+7b102573[ ]+csrr[ ]+a0,dpc +[ ]+[0-9a-f]+:[ ]+7b159073[ ]+csrw[ ]+dpc,a1 +[ ]+[0-9a-f]+:[ ]+7b202573[ ]+csrr[ ]+a0,dscratch0 +[ ]+[0-9a-f]+:[ ]+7b259073[ ]+csrw[ ]+dscratch0,a1 +[ ]+[0-9a-f]+:[ ]+7b302573[ ]+csrr[ ]+a0,dscratch1 +[ ]+[0-9a-f]+:[ ]+7b359073[ ]+csrw[ ]+dscratch1,a1 +[ ]+[0-9a-f]+:[ ]+7b202573[ ]+csrr[ ]+a0,dscratch0 +[ ]+[0-9a-f]+:[ ]+7b259073[ ]+csrw[ ]+dscratch0,a1 +[ ]+[0-9a-f]+:[ ]+7a002573[ ]+csrr[ ]+a0,tselect +[ ]+[0-9a-f]+:[ ]+7a059073[ ]+csrw[ ]+tselect,a1 +[ ]+[0-9a-f]+:[ ]+7a102573[ ]+csrr[ ]+a0,tdata1 +[ ]+[0-9a-f]+:[ ]+7a159073[ ]+csrw[ ]+tdata1,a1 +[ ]+[0-9a-f]+:[ ]+7a202573[ ]+csrr[ ]+a0,tdata2 +[ ]+[0-9a-f]+:[ ]+7a259073[ ]+csrw[ ]+tdata2,a1 +[ ]+[0-9a-f]+:[ ]+7a302573[ ]+csrr[ ]+a0,tdata3 +[ ]+[0-9a-f]+:[ ]+7a359073[ ]+csrw[ ]+tdata3,a1 +[ ]+[0-9a-f]+:[ ]+7a402573[ ]+csrr[ ]+a0,tinfo +[ ]+[0-9a-f]+:[ ]+7a459073[ ]+csrw[ ]+tinfo,a1 +[ ]+[0-9a-f]+:[ ]+7a502573[ ]+csrr[ ]+a0,tcontrol +[ ]+[0-9a-f]+:[ ]+7a559073[ ]+csrw[ ]+tcontrol,a1 +[ ]+[0-9a-f]+:[ ]+6a802573[ ]+csrr[ ]+a0,hcontext +[ ]+[0-9a-f]+:[ ]+6a859073[ ]+csrw[ ]+hcontext,a1 +[ ]+[0-9a-f]+:[ ]+5a802573[ ]+csrr[ ]+a0,scontext +[ ]+[0-9a-f]+:[ ]+5a859073[ ]+csrw[ ]+scontext,a1 +[ ]+[0-9a-f]+:[ ]+7a802573[ ]+csrr[ ]+a0,mcontext +[ ]+[0-9a-f]+:[ ]+7a859073[ ]+csrw[ ]+mcontext,a1 +[ ]+[0-9a-f]+:[ ]+7aa02573[ ]+csrr[ ]+a0,mscontext +[ ]+[0-9a-f]+:[ ]+7aa59073[ ]+csrw[ ]+mscontext,a1 +[ ]+[0-9a-f]+:[ ]+7a102573[ ]+csrr[ ]+a0,tdata1 +[ ]+[0-9a-f]+:[ ]+7a159073[ ]+csrw[ ]+tdata1,a1 +[ ]+[0-9a-f]+:[ ]+7a102573[ ]+csrr[ ]+a0,tdata1 +[ ]+[0-9a-f]+:[ ]+7a159073[ ]+csrw[ ]+tdata1,a1 +[ ]+[0-9a-f]+:[ ]+7a102573[ ]+csrr[ ]+a0,tdata1 +[ ]+[0-9a-f]+:[ ]+7a159073[ ]+csrw[ ]+tdata1,a1 +[ ]+[0-9a-f]+:[ ]+7a102573[ ]+csrr[ ]+a0,tdata1 +[ ]+[0-9a-f]+:[ ]+7a159073[ ]+csrw[ ]+tdata1,a1 +[ ]+[0-9a-f]+:[ ]+7a102573[ ]+csrr[ ]+a0,tdata1 +[ ]+[0-9a-f]+:[ ]+7a159073[ ]+csrw[ ]+tdata1,a1 +[ ]+[0-9a-f]+:[ ]+7a102573[ ]+csrr[ ]+a0,tdata1 +[ ]+[0-9a-f]+:[ ]+7a159073[ ]+csrw[ ]+tdata1,a1 +[ ]+[0-9a-f]+:[ ]+7a302573[ ]+csrr[ ]+a0,tdata3 +[ ]+[0-9a-f]+:[ ]+7a359073[ ]+csrw[ ]+tdata3,a1 +[ ]+[0-9a-f]+:[ ]+7a302573[ ]+csrr[ ]+a0,tdata3 +[ ]+[0-9a-f]+:[ ]+7a359073[ ]+csrw[ ]+tdata3,a1 +[ ]+[0-9a-f]+:[ ]+01502573[ ]+csrr[ ]+a0,seed +[ ]+[0-9a-f]+:[ ]+01559073[ ]+csrw[ ]+seed,a1 +[ ]+[0-9a-f]+:[ ]+00802573[ ]+csrr[ ]+a0,vstart +[ ]+[0-9a-f]+:[ ]+00859073[ ]+csrw[ ]+vstart,a1 +[ ]+[0-9a-f]+:[ ]+00902573[ ]+csrr[ ]+a0,vxsat +[ ]+[0-9a-f]+:[ ]+00959073[ ]+csrw[ ]+vxsat,a1 +[ ]+[0-9a-f]+:[ ]+00a02573[ ]+csrr[ ]+a0,vxrm +[ ]+[0-9a-f]+:[ ]+00a59073[ ]+csrw[ ]+vxrm,a1 +[ ]+[0-9a-f]+:[ ]+00f02573[ ]+csrr[ ]+a0,vcsr +[ ]+[0-9a-f]+:[ ]+00f59073[ ]+csrw[ ]+vcsr,a1 +[ ]+[0-9a-f]+:[ ]+c2002573[ ]+csrr[ ]+a0,vl +[ ]+[0-9a-f]+:[ ]+c2059073[ ]+csrw[ ]+vl,a1 +[ ]+[0-9a-f]+:[ ]+c2102573[ ]+csrr[ ]+a0,vtype +[ ]+[0-9a-f]+:[ ]+c2159073[ ]+csrw[ ]+vtype,a1 +[ ]+[0-9a-f]+:[ ]+c2202573[ ]+csrr[ ]+a0,vlenb +[ ]+[0-9a-f]+:[ ]+c2259073[ ]+csrw[ ]+vlenb,a1 +[ ]+[0-9a-f]+:[ ]+01702573[ ]+csrr[ ]+a0,jvt +[ ]+[0-9a-f]+:[ ]+01759073[ ]+csrw[ ]+jvt,a1 +[ ]+[0-9a-f]+:[ ]+18102573[ ]+csrr[ ]+a0,srmcfg +[ ]+[0-9a-f]+:[ ]+18159073[ ]+csrw[ ]+srmcfg,a1 diff --git a/gas/testsuite/gas/riscv/csr-version-1p13.l b/gas/testsuite/gas/riscv/csr-version-1p13.l new file mode 100644 index 0000000..a705581 --- /dev/null +++ b/gas/testsuite/gas/riscv/csr-version-1p13.l @@ -0,0 +1,1499 @@ +.*Assembler messages: +.*Warning: read-only CSR is written `csrw cycle,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw time,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw instret,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter3,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter4,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter5,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter6,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter7,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter8,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter9,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter10,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter11,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter12,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter13,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter14,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter15,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter16,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter17,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter18,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter19,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter20,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter21,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter22,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter23,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter24,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter25,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter26,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter27,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter28,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter29,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter30,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter31,a1' +.*Info: macro .* +.*Warning: invalid CSR `cycleh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `cycleh', needs rv32i extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw cycleh,a1' +.*Info: macro .* +.*Warning: invalid CSR `timeh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `timeh', needs rv32i extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw timeh,a1' +.*Info: macro .* +.*Warning: invalid CSR `instreth', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `instreth', needs rv32i extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw instreth,a1' +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter3h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter3h', needs rv32i extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter3h,a1' +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter4h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter4h', needs rv32i extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter4h,a1' +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter5h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter5h', needs rv32i extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter5h,a1' +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter6h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter6h', needs rv32i extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter6h,a1' +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter7h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter7h', needs rv32i extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter7h,a1' +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter8h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter8h', needs rv32i extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter8h,a1' +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter9h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter9h', needs rv32i extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter9h,a1' +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter10h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter10h', needs rv32i extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter10h,a1' +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter11h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter11h', needs rv32i extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter11h,a1' +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter12h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter12h', needs rv32i extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter12h,a1' +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter13h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter13h', needs rv32i extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter13h,a1' +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter14h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter14h', needs rv32i extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter14h,a1' +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter15h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter15h', needs rv32i extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter15h,a1' +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter16h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter16h', needs rv32i extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter16h,a1' +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter17h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter17h', needs rv32i extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter17h,a1' +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter18h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter18h', needs rv32i extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter18h,a1' +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter19h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter19h', needs rv32i extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter19h,a1' +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter20h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter20h', needs rv32i extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter20h,a1' +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter21h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter21h', needs rv32i extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter21h,a1' +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter22h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter22h', needs rv32i extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter22h,a1' +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter23h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter23h', needs rv32i extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter23h,a1' +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter24h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter24h', needs rv32i extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter24h,a1' +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter25h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter25h', needs rv32i extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter25h,a1' +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter26h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter26h', needs rv32i extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter26h,a1' +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter27h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter27h', needs rv32i extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter27h,a1' +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter28h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter28h', needs rv32i extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter28h,a1' +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter29h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter29h', needs rv32i extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter29h,a1' +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter30h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter30h', needs rv32i extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter30h,a1' +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter31h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hpmcounter31h', needs rv32i extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hpmcounter31h,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw mvendorid,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw marchid,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw mimpid,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw mhartid,a1' +.*Info: macro .* +.*Warning: read-only CSR is written `csrw mconfigptr,a1' +.*Info: macro .* +.*Warning: invalid CSR `medelegh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `medelegh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mstatush', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mstatush', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `menvcfgh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `menvcfgh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mseccfgh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mseccfgh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `pmpcfg1', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `pmpcfg1', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `pmpcfg3', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `pmpcfg3', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `pmpcfg5', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `pmpcfg5', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `pmpcfg7', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `pmpcfg7', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `pmpcfg9', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `pmpcfg9', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `pmpcfg11', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `pmpcfg11', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `pmpcfg13', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `pmpcfg13', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `pmpcfg15', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `pmpcfg15', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mcycleh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mcycleh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `minstreth', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `minstreth', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter3h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter3h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter4h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter4h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter5h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter5h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter6h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter6h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter7h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter7h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter8h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter8h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter9h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter9h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter10h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter10h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter11h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter11h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter12h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter12h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter13h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter13h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter14h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter14h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter15h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter15h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter16h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter16h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter17h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter17h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter18h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter18h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter19h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter19h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter20h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter20h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter21h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter21h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter22h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter22h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter23h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter23h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter24h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter24h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter25h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter25h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter26h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter26h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter27h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter27h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter28h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter28h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter29h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter29h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter30h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter30h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter31h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmcounter31h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hstatus', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hstatus', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hedeleg', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hedeleg', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hedelegh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hedelegh', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hedelegh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hedelegh', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hideleg', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hideleg', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hie', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hie', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hcounteren', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hcounteren', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hgeie', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hgeie', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `htval', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `htval', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hip', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hip', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hvip', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hvip', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `htinst', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `htinst', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hgeip', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hgeip', needs `h' extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw hgeip,a1' +.*Info: macro .* +.*Warning: invalid CSR `henvcfg', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `henvcfg', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `henvcfgh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `henvcfgh', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `henvcfgh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `henvcfgh', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hgatp', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hgatp', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `htimedelta', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `htimedelta', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `htimedeltah', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `htimedeltah', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `htimedeltah', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `htimedeltah', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsstatus', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsstatus', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsie', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsie', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vstvec', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vstvec', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsscratch', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsscratch', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsepc', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsepc', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vscause', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vscause', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vstval', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vstval', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsip', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsip', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsatp', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsatp', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `miselect', needs `smaia or smcsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `miselect', needs `smaia or smcsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `mireg', needs `smaia or smcsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `mireg', needs `smaia or smcsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `mtopei', needs `smaia' extension +.*Info: macro .* +.*Warning: invalid CSR `mtopei', needs `smaia' extension +.*Info: macro .* +.*Warning: invalid CSR `mtopi', needs `smaia' extension +.*Info: macro .* +.*Warning: invalid CSR `mtopi', needs `smaia' extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw mtopi,a1' +.*Info: macro .* +.*Warning: invalid CSR `mvien', needs `smaia' extension +.*Info: macro .* +.*Warning: invalid CSR `mvien', needs `smaia' extension +.*Info: macro .* +.*Warning: invalid CSR `mvip', needs `smaia' extension +.*Info: macro .* +.*Warning: invalid CSR `mvip', needs `smaia' extension +.*Info: macro .* +.*Warning: invalid CSR `midelegh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `midelegh', needs `smaia' extension +.*Info: macro .* +.*Warning: invalid CSR `midelegh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `midelegh', needs `smaia' extension +.*Info: macro .* +.*Warning: invalid CSR `mieh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mieh', needs `smaia' extension +.*Info: macro .* +.*Warning: invalid CSR `mieh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mieh', needs `smaia' extension +.*Info: macro .* +.*Warning: invalid CSR `mvienh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mvienh', needs `smaia' extension +.*Info: macro .* +.*Warning: invalid CSR `mvienh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mvienh', needs `smaia' extension +.*Info: macro .* +.*Warning: invalid CSR `mviph', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mviph', needs `smaia' extension +.*Info: macro .* +.*Warning: invalid CSR `mviph', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mviph', needs `smaia' extension +.*Info: macro .* +.*Warning: invalid CSR `miph', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `miph', needs `smaia' extension +.*Info: macro .* +.*Warning: invalid CSR `miph', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `miph', needs `smaia' extension +.*Info: macro .* +.*Warning: invalid CSR `miselect', needs `smaia or smcsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `miselect', needs `smaia or smcsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `mireg', needs `smaia or smcsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `mireg', needs `smaia or smcsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `mireg2', needs `smcsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `mireg2', needs `smcsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `mireg3', needs `smcsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `mireg3', needs `smcsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `mireg4', needs `smcsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `mireg4', needs `smcsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `mireg5', needs `smcsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `mireg5', needs `smcsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `mireg6', needs `smcsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `mireg6', needs `smcsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `mcyclecfg', needs `smcntrpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mcyclecfg', needs `smcntrpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `minstretcfg', needs `smcntrpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `minstretcfg', needs `smcntrpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mcyclecfgh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mcyclecfgh', needs `smcntrpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mcyclecfgh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mcyclecfgh', needs `smcntrpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `minstretcfgh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `minstretcfgh', needs `smcntrpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `minstretcfgh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `minstretcfgh', needs `smcntrpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mnepc', needs `smrnmi' extension +.*Info: macro .* +.*Warning: invalid CSR `mnepc', needs `smrnmi' extension +.*Info: macro .* +.*Warning: invalid CSR `mncause', needs `smrnmi' extension +.*Info: macro .* +.*Warning: invalid CSR `mncause', needs `smrnmi' extension +.*Info: macro .* +.*Warning: invalid CSR `mnscratch', needs `smrnmi' extension +.*Info: macro .* +.*Warning: invalid CSR `mnscratch', needs `smrnmi' extension +.*Info: macro .* +.*Warning: invalid CSR `mnstatus', needs `smrnmi' extension +.*Info: macro .* +.*Warning: invalid CSR `mnstatus', needs `smrnmi' extension +.*Info: macro .* +.*Warning: invalid CSR `mstateen0', needs `smstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `mstateen0', needs `smstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `mstateen1', needs `smstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `mstateen1', needs `smstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `mstateen2', needs `smstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `mstateen2', needs `smstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `mstateen3', needs `smstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `mstateen3', needs `smstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `sstateen0', needs `ssstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `sstateen0', needs `ssstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `sstateen1', needs `ssstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `sstateen1', needs `ssstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `sstateen2', needs `ssstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `sstateen2', needs `ssstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `sstateen3', needs `ssstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `sstateen3', needs `ssstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen0', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen0', needs `ssstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen0', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen0', needs `ssstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen1', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen1', needs `ssstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen1', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen1', needs `ssstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen2', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen2', needs `ssstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen2', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen2', needs `ssstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen3', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen3', needs `ssstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen3', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen3', needs `ssstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `mstateen0h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mstateen0h', needs `smstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `mstateen0h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mstateen0h', needs `smstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `mstateen1h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mstateen1h', needs `smstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `mstateen1h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mstateen1h', needs `smstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `mstateen2h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mstateen2h', needs `smstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `mstateen2h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mstateen2h', needs `smstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `mstateen3h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mstateen3h', needs `smstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `mstateen3h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mstateen3h', needs `smstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen0h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen0h', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen0h', needs `ssstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen0h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen0h', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen0h', needs `ssstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen1h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen1h', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen1h', needs `ssstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen1h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen1h', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen1h', needs `ssstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen2h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen2h', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen2h', needs `ssstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen2h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen2h', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen2h', needs `ssstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen3h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen3h', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen3h', needs `ssstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen3h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen3h', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hstateen3h', needs `ssstateen' extension +.*Info: macro .* +.*Warning: invalid CSR `siselect', needs `ssaia or sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `siselect', needs `ssaia or sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `sireg', needs `ssaia or sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `sireg', needs `ssaia or sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `stopei', needs `ssaia' extension +.*Info: macro .* +.*Warning: invalid CSR `stopei', needs `ssaia' extension +.*Info: macro .* +.*Warning: invalid CSR `stopi', needs `ssaia' extension +.*Info: macro .* +.*Warning: invalid CSR `stopi', needs `ssaia' extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw stopi,a1' +.*Info: macro .* +.*Warning: invalid CSR `sieh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `sieh', needs `ssaia' extension +.*Info: macro .* +.*Warning: invalid CSR `sieh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `sieh', needs `ssaia' extension +.*Info: macro .* +.*Warning: invalid CSR `siph', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `siph', needs `ssaia' extension +.*Info: macro .* +.*Warning: invalid CSR `siph', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `siph', needs `ssaia' extension +.*Info: macro .* +.*Warning: invalid CSR `hvien', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hvien', needs `ssaia' extension +.*Info: macro .* +.*Warning: invalid CSR `hvien', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hvien', needs `ssaia' extension +.*Info: macro .* +.*Warning: invalid CSR `hvictl', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hvictl', needs `ssaia' extension +.*Info: macro .* +.*Warning: invalid CSR `hvictl', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hvictl', needs `ssaia' extension +.*Info: macro .* +.*Warning: invalid CSR `hviprio1', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hviprio1', needs `ssaia' extension +.*Info: macro .* +.*Warning: invalid CSR `hviprio1', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hviprio1', needs `ssaia' extension +.*Info: macro .* +.*Warning: invalid CSR `hviprio2', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hviprio2', needs `ssaia' extension +.*Info: macro .* +.*Warning: invalid CSR `hviprio2', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hviprio2', needs `ssaia' extension +.*Info: macro .* +.*Warning: invalid CSR `vsiselect', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsiselect', needs `ssaia or sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `vsiselect', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsiselect', needs `ssaia or sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `vsireg', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsireg', needs `ssaia or sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `vsireg', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsireg', needs `ssaia or sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `vstopei', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vstopei', needs `ssaia' extension +.*Info: macro .* +.*Warning: invalid CSR `vstopei', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vstopei', needs `ssaia' extension +.*Info: macro .* +.*Warning: invalid CSR `vstopi', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vstopi', needs `ssaia' extension +.*Info: macro .* +.*Warning: invalid CSR `vstopi', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vstopi', needs `ssaia' extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw vstopi,a1' +.*Info: macro .* +.*Warning: invalid CSR `hidelegh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hidelegh', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hidelegh', needs `ssaia' extension +.*Info: macro .* +.*Warning: invalid CSR `hidelegh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hidelegh', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hidelegh', needs `ssaia' extension +.*Info: macro .* +.*Warning: invalid CSR `hvienh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hvienh', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hvienh', needs `ssaia' extension +.*Info: macro .* +.*Warning: invalid CSR `hvienh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hvienh', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hvienh', needs `ssaia' extension +.*Info: macro .* +.*Warning: invalid CSR `hviph', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hviph', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hviph', needs `ssaia' extension +.*Info: macro .* +.*Warning: invalid CSR `hviph', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hviph', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hviph', needs `ssaia' extension +.*Info: macro .* +.*Warning: invalid CSR `hviprio1h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hviprio1h', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hviprio1h', needs `ssaia' extension +.*Info: macro .* +.*Warning: invalid CSR `hviprio1h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hviprio1h', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hviprio1h', needs `ssaia' extension +.*Info: macro .* +.*Warning: invalid CSR `hviprio2h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hviprio2h', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hviprio2h', needs `ssaia' extension +.*Info: macro .* +.*Warning: invalid CSR `hviprio2h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `hviprio2h', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `hviprio2h', needs `ssaia' extension +.*Info: macro .* +.*Warning: invalid CSR `vsieh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `vsieh', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsieh', needs `ssaia' extension +.*Info: macro .* +.*Warning: invalid CSR `vsieh', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `vsieh', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsieh', needs `ssaia' extension +.*Info: macro .* +.*Warning: invalid CSR `vsiph', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `vsiph', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsiph', needs `ssaia' extension +.*Info: macro .* +.*Warning: invalid CSR `vsiph', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `vsiph', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsiph', needs `ssaia' extension +.*Info: macro .* +.*Warning: invalid CSR `scountinhibit', needs `ssccfg' extension +.*Info: macro .* +.*Warning: invalid CSR `scountinhibit', needs `ssccfg' extension +.*Info: macro .* +.*Warning: invalid CSR `ssp', needs `zicfiss' extension +.*Info: macro .* +.*Warning: invalid CSR `ssp', needs `zicfiss' extension +.*Info: macro .* +.*Warning: invalid CSR `siselect', needs `ssaia or sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `siselect', needs `ssaia or sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `sireg', needs `ssaia or sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `sireg', needs `ssaia or sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `sireg2', needs `sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `sireg2', needs `sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `sireg3', needs `sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `sireg3', needs `sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `sireg4', needs `sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `sireg4', needs `sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `sireg5', needs `sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `sireg5', needs `sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `sireg6', needs `sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `sireg6', needs `sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `vsiselect', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsiselect', needs `ssaia or sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `vsiselect', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsiselect', needs `ssaia or sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `vsireg', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsireg', needs `ssaia or sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `vsireg', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsireg', needs `ssaia or sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `vsireg2', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsireg2', needs `sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `vsireg2', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsireg2', needs `sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `vsireg3', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsireg3', needs `sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `vsireg3', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsireg3', needs `sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `vsireg4', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsireg4', needs `sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `vsireg4', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsireg4', needs `sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `vsireg5', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsireg5', needs `sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `vsireg5', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsireg5', needs `sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `vsireg6', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsireg6', needs `sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `vsireg6', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vsireg6', needs `sscsrind' extension +.*Info: macro .* +.*Warning: invalid CSR `scountovf', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `scountovf', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw scountovf,a1' +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent3h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent3h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent3h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent3h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent4h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent4h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent4h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent4h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent5h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent5h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent5h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent5h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent6h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent6h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent6h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent6h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent7h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent7h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent7h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent7h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent8h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent8h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent8h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent8h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent9h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent9h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent9h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent9h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent10h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent10h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent10h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent10h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent11h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent11h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent11h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent11h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent12h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent12h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent12h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent12h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent13h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent13h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent13h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent13h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent14h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent14h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent14h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent14h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent15h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent15h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent15h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent15h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent16h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent16h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent16h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent16h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent17h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent17h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent17h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent17h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent18h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent18h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent18h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent18h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent19h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent19h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent19h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent19h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent20h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent20h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent20h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent20h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent21h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent21h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent21h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent21h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent22h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent22h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent22h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent22h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent23h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent23h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent23h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent23h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent24h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent24h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent24h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent24h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent25h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent25h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent25h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent25h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent26h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent26h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent26h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent26h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent27h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent27h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent27h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent27h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent28h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent28h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent28h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent28h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent29h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent29h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent29h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent29h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent30h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent30h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent30h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent30h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent31h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent31h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent31h', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `mhpmevent31h', needs `sscofpmf' extension +.*Info: macro .* +.*Warning: invalid CSR `stimecmp', needs `sstc' extension +.*Info: macro .* +.*Warning: invalid CSR `stimecmp', needs `sstc' extension +.*Info: macro .* +.*Warning: invalid CSR `stimecmph', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `stimecmph', needs `sstc' extension +.*Info: macro .* +.*Warning: invalid CSR `stimecmph', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `stimecmph', needs `sstc' extension +.*Info: macro .* +.*Warning: invalid CSR `vstimecmp', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vstimecmp', needs `sstc' extension +.*Info: macro .* +.*Warning: invalid CSR `vstimecmp', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vstimecmp', needs `sstc' extension +.*Info: macro .* +.*Warning: invalid CSR `vstimecmph', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `vstimecmph', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vstimecmph', needs `sstc' extension +.*Info: macro .* +.*Warning: invalid CSR `vstimecmph', needs rv32i extension +.*Info: macro .* +.*Warning: invalid CSR `vstimecmph', needs `h' extension +.*Info: macro .* +.*Warning: invalid CSR `vstimecmph', needs `sstc' extension +.*Info: macro .* +.*Warning: invalid CSR `sctrctl', needs `ssctr' extension +.*Info: macro .* +.*Warning: invalid CSR `sctrctl', needs `ssctr' extension +.*Info: macro .* +.*Warning: invalid CSR `sctrstatus', needs `ssctr' extension +.*Info: macro .* +.*Warning: invalid CSR `sctrstatus', needs `ssctr' extension +.*Info: macro .* +.*Warning: invalid CSR `sctrdepth', needs `ssctr' extension +.*Info: macro .* +.*Warning: invalid CSR `sctrdepth', needs `ssctr' extension +.*Info: macro .* +.*Warning: invalid CSR `vsctrctl', needs `ssctr' extension +.*Info: macro .* +.*Warning: invalid CSR `vsctrctl', needs `ssctr' extension +.*Info: macro .* +.*Warning: invalid CSR `mctrctl', needs `smctr' extension +.*Info: macro .* +.*Warning: invalid CSR `mctrctl', needs `smctr' extension +.*Info: macro .* +.*Warning: invalid CSR `ustatus' for the privileged spec `1.13' +.*Info: macro .* +.*Warning: invalid CSR `ustatus' for the privileged spec `1.13' +.*Info: macro .* +.*Warning: invalid CSR `uie' for the privileged spec `1.13' +.*Info: macro .* +.*Warning: invalid CSR `uie' for the privileged spec `1.13' +.*Info: macro .* +.*Warning: invalid CSR `utvec' for the privileged spec `1.13' +.*Info: macro .* +.*Warning: invalid CSR `utvec' for the privileged spec `1.13' +.*Info: macro .* +.*Warning: invalid CSR `uscratch' for the privileged spec `1.13' +.*Info: macro .* +.*Warning: invalid CSR `uscratch' for the privileged spec `1.13' +.*Info: macro .* +.*Warning: invalid CSR `uepc' for the privileged spec `1.13' +.*Info: macro .* +.*Warning: invalid CSR `uepc' for the privileged spec `1.13' +.*Info: macro .* +.*Warning: invalid CSR `ucause' for the privileged spec `1.13' +.*Info: macro .* +.*Warning: invalid CSR `ucause' for the privileged spec `1.13' +.*Info: macro .* +.*Warning: invalid CSR `utval' for the privileged spec `1.13' +.*Info: macro .* +.*Warning: invalid CSR `utval' for the privileged spec `1.13' +.*Info: macro .* +.*Warning: invalid CSR `uip' for the privileged spec `1.13' +.*Info: macro .* +.*Warning: invalid CSR `uip' for the privileged spec `1.13' +.*Info: macro .* +.*Warning: invalid CSR `sedeleg' for the privileged spec `1.13' +.*Info: macro .* +.*Warning: invalid CSR `sedeleg' for the privileged spec `1.13' +.*Info: macro .* +.*Warning: invalid CSR `sideleg' for the privileged spec `1.13' +.*Info: macro .* +.*Warning: invalid CSR `sideleg' for the privileged spec `1.13' +.*Info: macro .* +.*Warning: invalid CSR `fflags', needs `f' extension +.*Info: macro .* +.*Warning: invalid CSR `fflags', needs `f' extension +.*Info: macro .* +.*Warning: invalid CSR `frm', needs `f' extension +.*Info: macro .* +.*Warning: invalid CSR `frm', needs `f' extension +.*Info: macro .* +.*Warning: invalid CSR `fcsr', needs `f' extension +.*Info: macro .* +.*Warning: invalid CSR `fcsr', needs `f' extension +.*Info: macro .* +.*Warning: invalid CSR `seed', needs `zkr' extension +.*Info: macro .* +.*Warning: invalid CSR `seed', needs `zkr' extension +.*Info: macro .* +.*Warning: invalid CSR `vstart', needs `zve32x' extension +.*Info: macro .* +.*Warning: invalid CSR `vstart', needs `zve32x' extension +.*Info: macro .* +.*Warning: invalid CSR `vxsat', needs `zve32x' extension +.*Info: macro .* +.*Warning: invalid CSR `vxsat', needs `zve32x' extension +.*Info: macro .* +.*Warning: invalid CSR `vxrm', needs `zve32x' extension +.*Info: macro .* +.*Warning: invalid CSR `vxrm', needs `zve32x' extension +.*Info: macro .* +.*Warning: invalid CSR `vcsr', needs `zve32x' extension +.*Info: macro .* +.*Warning: invalid CSR `vcsr', needs `zve32x' extension +.*Info: macro .* +.*Warning: invalid CSR `vl', needs `zve32x' extension +.*Info: macro .* +.*Warning: invalid CSR `vl', needs `zve32x' extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw vl,a1' +.*Info: macro .* +.*Warning: invalid CSR `vtype', needs `zve32x' extension +.*Info: macro .* +.*Warning: invalid CSR `vtype', needs `zve32x' extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw vtype,a1' +.*Info: macro .* +.*Warning: invalid CSR `vlenb', needs `zve32x' extension +.*Info: macro .* +.*Warning: invalid CSR `vlenb', needs `zve32x' extension +.*Info: macro .* +.*Warning: read-only CSR is written `csrw vlenb,a1' +.*Info: macro .* +.*Warning: invalid CSR `jvt', needs `zcmt' extension +.*Info: macro .* +.*Warning: invalid CSR `jvt', needs `zcmt' extension +.*Info: macro .* +.*Warning: invalid CSR `srmcfg', needs `ssqosid' extension +.*Info: macro .* +.*Warning: invalid CSR `srmcfg', needs `ssqosid' extension +.*Info: macro .* diff --git a/gas/testsuite/gas/riscv/csr.s b/gas/testsuite/gas/riscv/csr.s index 6244bd7..7920644 100644 --- a/gas/testsuite/gas/riscv/csr.s +++ b/gas/testsuite/gas/riscv/csr.s @@ -3,7 +3,7 @@ csrw \val, a1 .endm - # Supported privileged specs, 1.10, 1.11 and 1.12. + # Supported privileged specs, 1.10, 1.11, 1.12 and 1.13. # User Counter/Timers csr cycle @@ -101,6 +101,7 @@ csr mstatus csr misa csr medeleg + csr medelegh # Added in 1.13 csr mideleg csr mie csr mtvec @@ -303,6 +304,7 @@ # Hypervisor Trap Setup csr hstatus csr hedeleg + csr hedelegh # Added in 1.13 csr hideleg csr hie csr hcounteren @@ -416,6 +418,9 @@ csr vsieh csr vsiph + # Ssccfg or Smcdeleg + csr scountinhibit + # Zicfiss csr ssp diff --git a/gas/testsuite/gas/riscv/imply.d b/gas/testsuite/gas/riscv/imply.d index 78ff200..b68da92 100644 --- a/gas/testsuite/gas/riscv/imply.d +++ b/gas/testsuite/gas/riscv/imply.d @@ -22,6 +22,8 @@ SYMBOL TABLE: [0-9a-f]+ l .text 0+000 \$xrv32i2p1_zicsr2p0_zve32x1p0_zvl128b1p0_zvl256b1p0_zvl32b1p0_zvl64b1p0_xsfvqmaccqoq1p0 [0-9a-f]+ l .text 0+000 \$xrv32i2p1_zicsr2p0_zve32x1p0_zvl128b1p0_zvl32b1p0_zvl64b1p0_xsfvqmaccdod1p0 [0-9a-f]+ l .text 0+000 \$xrv32i2p1_f2p2_zicsr2p0_zve32f1p0_zve32x1p0_zvl32b1p0_xsfvfnrclipxfqf1p0 +[0-9a-f]+ l .text 0+000 \$xrv32i2p1_zicsr2p0_xtheadvector1p0 +[0-9a-f]+ l .text 0+000 \$xrv32i2p1_zaamo1p0_xtheadzvamo1p0 [0-9a-f]+ l .text 0+000 \$xrv32i2p1_f2p2_d2p2_v1p0_zicsr2p0_zve32f1p0_zve32x1p0_zve64d1p0_zve64f1p0_zve64x1p0_zvl128b1p0_zvl32b1p0_zvl64b1p0 [0-9a-f]+ l .text 0+000 \$xrv32i2p1_f2p2_zicsr2p0_zfhmin1p0_zve32f1p0_zve32x1p0_zvfh1p0_zvfhmin1p0_zvl32b1p0 [0-9a-f]+ l .text 0+000 \$xrv32i2p1_f2p2_zicsr2p0_zve32f1p0_zve32x1p0_zvfhmin1p0_zvl32b1p0 @@ -51,6 +53,7 @@ SYMBOL TABLE: [0-9a-f]+ l .text 0+000 \$xrv32i2p1_zicsr2p0_zca1p0_zcmt1p0 [0-9a-f]+ l .text 0+000 \$xrv32i2p1_zicfilp1p0_zicsr2p0 [0-9a-f]+ l .text 0+000 \$xrv32i2p1_zicfiss1p0_zicsr2p0_zimop1p0 +[0-9a-f]+ l .text 0+000 \$xrv32i2p1_h1p0_zicsr2p0_sha1p0_shcounterenw1p0_shgatpa1p0_shtvala1p0_shvsatpa1p0_shvstvala1p0_shvstvecd1p0_ssstateen1p0 [0-9a-f]+ l .text 0+000 \$xrv32i2p1_h1p0_zicsr2p0_shcounterenw1p0 [0-9a-f]+ l .text 0+000 \$xrv32i2p1_h1p0_zicsr2p0_shgatpa1p0 [0-9a-f]+ l .text 0+000 \$xrv32i2p1_h1p0_zicsr2p0_shtvala1p0 @@ -82,12 +85,15 @@ SYMBOL TABLE: [0-9a-f]+ l .text 0+000 \$xrv32i2p1_zvbc1p0_zvkb1p0_zvks1p0_zvksc1p0_zvksed1p0_zvksh1p0_zvkt1p0 [0-9a-f]+ l .text 0+000 \$xrv32i2p1_zvkb1p0_zvks1p0_zvksed1p0_zvksh1p0_zvkt1p0 [0-9a-f]+ l .text 0+000 \$xrv32i2p1_zicsr2p0_smaia1p0_ssaia1p0 +[0-9a-f]+ l .text 0+000 \$xrv32i2p1_zicsr2p0_smcdeleg1p0_ssccfg1p0_sscsrind1p0 [0-9a-f]+ l .text 0+000 \$xrv32i2p1_zicsr2p0_smcsrind1p0_sscsrind1p0 [0-9a-f]+ l .text 0+000 \$xrv32i2p1_zicsr2p0_smcntrpmf1p0 +[0-9a-f]+ l .text 0+000 \$xrv32i2p1_zicsr2p0_smrnmi1p0 [0-9a-f]+ l .text 0+000 \$xrv32i2p1_zicsr2p0_smstateen1p0_ssstateen1p0 [0-9a-f]+ l .text 0+000 \$xrv32i2p1_zicsr2p0_smepmp1p0 [0-9a-f]+ l .text 0+000 \$xrv32i2p1_zicsr2p0_smdbltrp1p0 [0-9a-f]+ l .text 0+000 \$xrv32i2p1_zicsr2p0_ssaia1p0 +[0-9a-f]+ l .text 0+000 \$xrv32i2p1_zicsr2p0_ssccfg1p0_sscsrind1p0 [0-9a-f]+ l .text 0+000 \$xrv32i2p1_zicsr2p0_sscsrind1p0 [0-9a-f]+ l .text 0+000 \$xrv32i2p1_zicsr2p0_sscofpmf1p0 [0-9a-f]+ l .text 0+000 \$xrv32i2p1_zicsr2p0_sscounterenw1p0 diff --git a/gas/testsuite/gas/riscv/imply.s b/gas/testsuite/gas/riscv/imply.s index d696b52..35c68d3 100644 --- a/gas/testsuite/gas/riscv/imply.s +++ b/gas/testsuite/gas/riscv/imply.s @@ -25,6 +25,9 @@ imply xsfvqmaccqoq imply xsfvqmaccdod imply xsfvfnrclipxfqf +imply xtheadvector +imply xtheadzvamo + imply v imply zvfh imply zvfhmin @@ -57,6 +60,8 @@ imply zcmt imply zicfilp imply zicfiss +imply sha + imply shcounterenw imply shgatpa imply shtvala @@ -94,13 +99,16 @@ imply zvksc imply zvks imply smaia +imply smcdeleg imply smcsrind imply smcntrpmf +imply smrnmi imply smstateen imply smepmp imply smdbltrp imply ssaia +imply ssccfg imply sscsrind imply sscofpmf imply sscounterenw diff --git a/gas/testsuite/gas/riscv/l-s-macro-zilsd.d b/gas/testsuite/gas/riscv/l-s-macro-zilsd.d new file mode 100644 index 0000000..c05bae6 --- /dev/null +++ b/gas/testsuite/gas/riscv/l-s-macro-zilsd.d @@ -0,0 +1,53 @@ +#as: -march=rv32i_zilsd +#name: Lx/Sx macro insns for Zilsd +#source: l-s-macro.s +#objdump: -dwr + +.*:[ ]+file format .* + + +Disassembly of section .text: + +0+ <L>: +[ ]+[0-9a-f]+:[ ]+00000517[ ]+auipc[ ]+a0,0x0[ ]+[0-9a-f]+:[ ]+R_RISCV_PCREL_HI20[ ]+bval +[ ]+[0-9a-f]+:[ ]+R_RISCV_RELAX.* +[ ]+[0-9a-f]+:[ ]+00050503[ ]+lb[ ]+a0,0\(a0\) # [0-9a-f]+( <.*>)?[ ]+[0-9a-f]+:[ ]+R_RISCV_PCREL_LO12_I[ ]+.* +[ ]+[0-9a-f]+:[ ]+R_RISCV_RELAX.* +[ ]+[0-9a-f]+:[ ]+00000517[ ]+auipc[ ]+a0,0x0[ ]+[0-9a-f]+:[ ]+R_RISCV_PCREL_HI20[ ]+bval +[ ]+[0-9a-f]+:[ ]+R_RISCV_RELAX.* +[ ]+[0-9a-f]+:[ ]+00054503[ ]+lbu[ ]+a0,0\(a0\) # [0-9a-f]+( <.*>)?[ ]+[0-9a-f]+:[ ]+R_RISCV_PCREL_LO12_I[ ]+.* +[ ]+[0-9a-f]+:[ ]+R_RISCV_RELAX.* +[ ]+[0-9a-f]+:[ ]+00000517[ ]+auipc[ ]+a0,0x0[ ]+[0-9a-f]+:[ ]+R_RISCV_PCREL_HI20[ ]+hval +[ ]+[0-9a-f]+:[ ]+R_RISCV_RELAX.* +[ ]+[0-9a-f]+:[ ]+00051503[ ]+lh[ ]+a0,0\(a0\) # [0-9a-f]+( <.*>)?[ ]+[0-9a-f]+:[ ]+R_RISCV_PCREL_LO12_I[ ]+.* +[ ]+[0-9a-f]+:[ ]+R_RISCV_RELAX.* +[ ]+[0-9a-f]+:[ ]+00000517[ ]+auipc[ ]+a0,0x0[ ]+[0-9a-f]+:[ ]+R_RISCV_PCREL_HI20[ ]+hval +[ ]+[0-9a-f]+:[ ]+R_RISCV_RELAX.* +[ ]+[0-9a-f]+:[ ]+00055503[ ]+lhu[ ]+a0,0\(a0\) # [0-9a-f]+( <.*>)?[ ]+[0-9a-f]+:[ ]+R_RISCV_PCREL_LO12_I[ ]+.* +[ ]+[0-9a-f]+:[ ]+R_RISCV_RELAX.* +[ ]+[0-9a-f]+:[ ]+00000517[ ]+auipc[ ]+a0,0x0[ ]+[0-9a-f]+:[ ]+R_RISCV_PCREL_HI20[ ]+wval +[ ]+[0-9a-f]+:[ ]+R_RISCV_RELAX.* +[ ]+[0-9a-f]+:[ ]+00052503[ ]+lw[ ]+a0,0\(a0\) # [0-9a-f]+( <.*>)?[ ]+[0-9a-f]+:[ ]+R_RISCV_PCREL_LO12_I[ ]+.* +[ ]+[0-9a-f]+:[ ]+R_RISCV_RELAX.* +[ ]+[0-9a-f]+:[ ]+00000517[ ]+auipc[ ]+a0,0x0[ ]+[0-9a-f]+:[ ]+R_RISCV_PCREL_HI20[ ]+dval +[ ]+[0-9a-f]+:[ ]+R_RISCV_RELAX.* +[ ]+[0-9a-f]+:[ ]+00053503[ ]+ld[ ]+a0,0\(a0\) # [0-9a-f]+( <.*>)?[ ]+[0-9a-f]+:[ ]+R_RISCV_PCREL_LO12_I[ ]+.* +[ ]+[0-9a-f]+:[ ]+R_RISCV_RELAX.* + +[0-9a-f]+ <S>: +[ ]+[0-9a-f]+:[ ]+00000297[ ]+auipc[ ]+t0,0x0[ ]+[0-9a-f]+:[ ]+R_RISCV_PCREL_HI20[ ]+bval +[ ]+[0-9a-f]+:[ ]+R_RISCV_RELAX.* +[ ]+[0-9a-f]+:[ ]+00a28023[ ]+sb[ ]+a0,0\(t0\) # [0-9a-f]+( <.*>)?[ ]+[0-9a-f]+:[ ]+R_RISCV_PCREL_LO12_S[ ]+.* +[ ]+[0-9a-f]+:[ ]+R_RISCV_RELAX.* +[ ]+[0-9a-f]+:[ ]+00000297[ ]+auipc[ ]+t0,0x0[ ]+[0-9a-f]+:[ ]+R_RISCV_PCREL_HI20[ ]+hval +[ ]+[0-9a-f]+:[ ]+R_RISCV_RELAX.* +[ ]+[0-9a-f]+:[ ]+00a29023[ ]+sh[ ]+a0,0\(t0\) # [0-9a-f]+( <.*>)?[ ]+[0-9a-f]+:[ ]+R_RISCV_PCREL_LO12_S[ ]+.* +[ ]+[0-9a-f]+:[ ]+R_RISCV_RELAX.* +[ ]+[0-9a-f]+:[ ]+00000297[ ]+auipc[ ]+t0,0x0[ ]+[0-9a-f]+:[ ]+R_RISCV_PCREL_HI20[ ]+wval +[ ]+[0-9a-f]+:[ ]+R_RISCV_RELAX.* +[ ]+[0-9a-f]+:[ ]+00a2a023[ ]+sw[ ]+a0,0\(t0\) # [0-9a-f]+( <.*>)?[ ]+[0-9a-f]+:[ ]+R_RISCV_PCREL_LO12_S[ ]+.* +[ ]+[0-9a-f]+:[ ]+R_RISCV_RELAX.* +[ ]+[0-9a-f]+:[ ]+00000297[ ]+auipc[ ]+t0,0x0[ ]+[0-9a-f]+:[ ]+R_RISCV_PCREL_HI20[ ]+dval +[ ]+[0-9a-f]+:[ ]+R_RISCV_RELAX.* +[ ]+[0-9a-f]+:[ ]+00a2b023[ ]+sd[ ]+a0,0\(t0\) # [0-9a-f]+( <.*>)?[ ]+[0-9a-f]+:[ ]+R_RISCV_PCREL_LO12_S[ ]+.* +[ ]+[0-9a-f]+:[ ]+R_RISCV_RELAX.* diff --git a/gas/testsuite/gas/riscv/l-s-macro.d b/gas/testsuite/gas/riscv/l-s-macro.d index d6e5993..93753ba 100644 --- a/gas/testsuite/gas/riscv/l-s-macro.d +++ b/gas/testsuite/gas/riscv/l-s-macro.d @@ -1,4 +1,4 @@ -#as: -march=rv64i +#as: -march=rv64i -defsym __64_bit__=1 #name: Lx/Sx macro insns #objdump: -dwr diff --git a/gas/testsuite/gas/riscv/l-s-macro.s b/gas/testsuite/gas/riscv/l-s-macro.s index 316adc4..d46d3b6 100644 --- a/gas/testsuite/gas/riscv/l-s-macro.s +++ b/gas/testsuite/gas/riscv/l-s-macro.s @@ -4,7 +4,9 @@ L: lh a0, hval lhu a0, hval lw a0, wval +.ifdef __64_bit__ lwu a0, wval +.endif ld a0, dval S: diff --git a/gas/testsuite/gas/riscv/march-fail-rvi20u64v.d b/gas/testsuite/gas/riscv/march-fail-rvi20u64v.d new file mode 100644 index 0000000..175db99 --- /dev/null +++ b/gas/testsuite/gas/riscv/march-fail-rvi20u64v.d @@ -0,0 +1,3 @@ +#as: -march=rvi20u64v +#source: empty.s +#warning_output: march-fail-rvi20u64v.l diff --git a/gas/testsuite/gas/riscv/march-fail-rvi20u64v.l b/gas/testsuite/gas/riscv/march-fail-rvi20u64v.l new file mode 100644 index 0000000..ef27179 --- /dev/null +++ b/gas/testsuite/gas/riscv/march-fail-rvi20u64v.l @@ -0,0 +1 @@ +.*Warning: should use \"_\" to contact Profiles with other extensions diff --git a/gas/testsuite/gas/riscv/march-help.l b/gas/testsuite/gas/riscv/march-help.l index d77472f..709ccff 100644 --- a/gas/testsuite/gas/riscv/march-help.l +++ b/gas/testsuite/gas/riscv/march-help.l @@ -28,6 +28,7 @@ All available -march extensions for RISC-V: zimop 1.0 zicfiss 1.0 zicfilp 1.0 + zilsd 1.0 zmmul 1.0 za64rs 1.0 za128rs 1.0 @@ -102,11 +103,14 @@ All available -march extensions for RISC-V: ztso 1.0 zca 1.0 zcb 1.0 + zce 1.0 zcf 1.0 zcd 1.0 zcmop 1.0 zcmp 1.0 zcmt 1.0 + zclsd 1.0 + sha 1.0 shcounterenw 1.0 shgatpa 1.0 shtvala 1.0 @@ -114,6 +118,7 @@ All available -march extensions for RISC-V: shvstvala 1.0 shvstvecd 1.0 smaia 1.0 + smcdeleg 1.0 smcsrind 1.0 smcntrpmf 1.0 smctr 1.0 @@ -122,6 +127,7 @@ All available -march extensions for RISC-V: smstateen 1.0 smdbltrp 1.0 ssaia 1.0 + ssccfg 1.0 ssccptr 1.0 sscsrind 1.0 sscofpmf 1.0 @@ -139,6 +145,7 @@ All available -march extensions for RISC-V: svinval 1.0 svnapot 1.0 svpbmt 1.0 + svvptc 1.0 ssqosid 1.0 ssnpm 1.0 smnpm 1.0 @@ -173,3 +180,7 @@ All available -march extensions for RISC-V: xsfvqmaccqoq 1.0 xsfvqmaccdod 1.0 xsfvfnrclipxfqf 1.0 + xmipscbop 1.0 + xmipscmov 1.0 + xmipsexectl 1.0 + xmipslsp 1.0 diff --git a/gas/testsuite/gas/riscv/march-imply-zce-f-32.d b/gas/testsuite/gas/riscv/march-imply-zce-f-32.d new file mode 100644 index 0000000..e0cca82 --- /dev/null +++ b/gas/testsuite/gas/riscv/march-imply-zce-f-32.d @@ -0,0 +1,6 @@ +#as: -march=rv32if_zce -march-attr -misa-spec=20191213 +#readelf: -A +#source: empty.s +Attribute Section: riscv +File Attributes + Tag_RISCV_arch: "rv32i2p1_f2p2_zicsr2p0_zca1p0_zcb1p0_zce1p0_zcf1p0_zcmp1p0_zcmt1p0" diff --git a/gas/testsuite/gas/riscv/march-imply-zce-f-64.d b/gas/testsuite/gas/riscv/march-imply-zce-f-64.d new file mode 100644 index 0000000..f0ccd7a --- /dev/null +++ b/gas/testsuite/gas/riscv/march-imply-zce-f-64.d @@ -0,0 +1,6 @@ +#as: -march=rv64if_zce -march-attr -misa-spec=20191213 +#readelf: -A +#source: empty.s +Attribute Section: riscv +File Attributes + Tag_RISCV_arch: "rv64i2p1_f2p2_zicsr2p0_zca1p0_zcb1p0_zce1p0_zcmp1p0_zcmt1p0" diff --git a/gas/testsuite/gas/riscv/march-imply-zce.d b/gas/testsuite/gas/riscv/march-imply-zce.d new file mode 100644 index 0000000..fd1cd3f --- /dev/null +++ b/gas/testsuite/gas/riscv/march-imply-zce.d @@ -0,0 +1,6 @@ +#as: -march=rv32i_zce -march-attr -misa-spec=20191213 +#readelf: -A +#source: empty.s +Attribute Section: riscv +File Attributes + Tag_RISCV_arch: "rv32i2p1_zicsr2p0_zca1p0_zcb1p0_zce1p0_zcmp1p0_zcmt1p0" diff --git a/gas/testsuite/gas/riscv/mips-insns.d b/gas/testsuite/gas/riscv/mips-insns.d new file mode 100644 index 0000000..999c433 --- /dev/null +++ b/gas/testsuite/gas/riscv/mips-insns.d @@ -0,0 +1,31 @@ +#as: +#objdump: -dr + +.*:[ ]+file format .* + + +Disassembly of section .text: + +0+000 <.text>: +[ ]+[0-9a-f]+:[ ]+0003000b[ ]+mips.pref[ ]+0x0,0x0\(t1\) +[ ]+[0-9a-f]+:[ ]+1ff38f8b[ ]+mips.pref[ ]+0x1f,0x1ff\(t2\) +[ ]+[0-9a-f]+:[ ]+6eb6350b[ ]+mips.ccmov[ ]+a0,a1,a2,a3 +[ ]+[0-9a-f]+:[ ]+00301013[ ]+mips.ehb +[ ]+[0-9a-f]+:[ ]+00101013[ ]+mips.ihb +[ ]+[0-9a-f]+:[ ]+00501013[ ]+mips.pause +[ ]+[0-9a-f]+:[ ]+e80f4e0b[ ]+mips.ldp[ ]+t3,t4,0\(t5\) +[ ]+[0-9a-f]+:[ ]+e88f4e0b[ ]+mips.ldp[ ]+t3,t4,8\(t5\) +[ ]+[0-9a-f]+:[ ]+1f00cf8b[ ]+mips.ldp[ ]+t6,gp,112\(ra\) +[ ]+[0-9a-f]+:[ ]+1f80cf8b[ ]+mips.ldp[ ]+t6,gp,120\(ra\) +[ ]+[0-9a-f]+:[ ]+5816450b[ ]+mips.lwp[ ]+a0,a1,0\(a2\) +[ ]+[0-9a-f]+:[ ]+5856450b[ ]+mips.lwp[ ]+a0,a1,4\(a2\) +[ ]+[0-9a-f]+:[ ]+7797c68b[ ]+mips.lwp[ ]+a3,a4,120\(a5\) +[ ]+[0-9a-f]+:[ ]+77d7c68b[ ]+mips.lwp[ ]+a3,a4,124\(a5\) +[ ]+[0-9a-f]+:[ ]+e9cf500b[ ]+mips.sdp[ ]+t3,t4,0\(t5\) +[ ]+[0-9a-f]+:[ ]+e9cf540b[ ]+mips.sdp[ ]+t3,t4,8\(t5\) +[ ]+[0-9a-f]+:[ ]+1ff0d80b[ ]+mips.sdp[ ]+t6,gp,112\(ra\) +[ ]+[0-9a-f]+:[ ]+1ff0dc0b[ ]+mips.sdp[ ]+t6,gp,120\(ra\) +[ ]+[0-9a-f]+:[ ]+58a6508b[ ]+mips.swp[ ]+a0,a1,0\(a2\) +[ ]+[0-9a-f]+:[ ]+58a6528b[ ]+mips.swp[ ]+a0,a1,4\(a2\) +[ ]+[0-9a-f]+:[ ]+76d7dc8b[ ]+mips.swp[ ]+a3,a4,120\(a5\) +[ ]+[0-9a-f]+:[ ]+76d7de8b[ ]+mips.swp[ ]+a3,a4,124\(a5\) diff --git a/gas/testsuite/gas/riscv/mips-insns.s b/gas/testsuite/gas/riscv/mips-insns.s new file mode 100644 index 0000000..793c6ef --- /dev/null +++ b/gas/testsuite/gas/riscv/mips-insns.s @@ -0,0 +1,42 @@ + .attribute arch, "rv64i" + # xmipscbop + .option push + .option arch, +xmipscbop + mips.pref 0, 0(t1) + mips.pref 31, 511(t2) + .option pop + + # xmipscmov + .option push + .option arch, +xmipscmov + mips.ccmov a0,a1,a2,a3 + .option pop + + # xmipsexectl + .option push + .option arch, +xmipsexectl + mips.ehb + mips.ihb + mips.pause + .option pop + + # xmipslsp + .option push + .option arch, +xmipslsp + mips.ldp t3, t4, 0(t5) + mips.ldp t3, t4, 8(t5) + mips.ldp t6, gp, 112(ra) + mips.ldp t6, gp, 120(ra) + mips.lwp a0, a1, 0(a2) + mips.lwp a0, a1, 4(a2) + mips.lwp a3, a4, 120(a5) + mips.lwp a3, a4, 124(a5) + mips.sdp t3, t4, 0(t5) + mips.sdp t3, t4, 8(t5) + mips.sdp t6, gp, 112(ra) + mips.sdp t6, gp, 120(ra) + mips.swp a0, a1, 0(a2) + mips.swp a0, a1, 4(a2) + mips.swp a3, a4, 120(a5) + mips.swp a3, a4, 124(a5) + .option pop diff --git a/gas/testsuite/gas/riscv/no-relax-branch-offset-fail.d b/gas/testsuite/gas/riscv/no-relax-branch-offset-fail.d new file mode 100644 index 0000000..0e84771 --- /dev/null +++ b/gas/testsuite/gas/riscv/no-relax-branch-offset-fail.d @@ -0,0 +1,2 @@ +#as: -march=rv32ic +#error_output: no-relax-branch-offset-fail.l diff --git a/gas/testsuite/gas/riscv/no-relax-branch-offset-fail.l b/gas/testsuite/gas/riscv/no-relax-branch-offset-fail.l new file mode 100644 index 0000000..8f6b5c9 --- /dev/null +++ b/gas/testsuite/gas/riscv/no-relax-branch-offset-fail.l @@ -0,0 +1,8 @@ +.*Assembler messages: +.*:4: Error: invalid J-type offset \(\+1048576\) +.*:5: Error: invalid J-type offset \(-1048578\) +.*:8: Error: invalid J-type offset \(\+1048576\) +.*:10: Error: invalid J-type offset \(-1048578\) +.*:14: Error: invalid J-type offset \(\+1048576\) +.*:17: Error: invalid J-type offset \(-1048578\) +.*:20: Error: invalid CJ-type offset \(\+1\) diff --git a/gas/testsuite/gas/riscv/no-relax-branch-offset-fail.s b/gas/testsuite/gas/riscv/no-relax-branch-offset-fail.s new file mode 100644 index 0000000..98a0978 --- /dev/null +++ b/gas/testsuite/gas/riscv/no-relax-branch-offset-fail.s @@ -0,0 +1,20 @@ + .option norelax + + # Relative to the current instruction. + j .+0x0ffffe+2 + j .-0x100000-2 + + # Relative to local labels (make sure that all instructions except "c.j" occupy 4-bytes). + j 1f+0x0ffffe-4+2 +1: + j 2f-0x100000-4-2 +2: +3: + lui t0, 0x12345 + j 3b+0x0ffffe+4+2 +4: + lui t0, 0x2abcd + j 4b-0x100000+4-2 + + # Jump to odd address (violates instruction alignment). + c.j .+1 diff --git a/gas/testsuite/gas/riscv/no-relax-branch-offset-ok.d b/gas/testsuite/gas/riscv/no-relax-branch-offset-ok.d new file mode 100644 index 0000000..6ef31e2 --- /dev/null +++ b/gas/testsuite/gas/riscv/no-relax-branch-offset-ok.d @@ -0,0 +1,17 @@ +#as: -march=rv32ic +#objdump: -dr + +.*: file format .* + + +Disassembly of section \.text: + +0+ <\.text>: +[ ]+0:[ ]+7ffff06f[ ]+j[ ][0-9a-f]+.* +[ ]+4:[ ]+8000006f[ ]+j[ ][0-9a-f]+.* +[ ]+8:[ ]+7ffff06f[ ]+j[ ][0-9a-f]+.* +[ ]+c:[ ]+8000006f[ ]+j[ ][0-9a-f]+.* +[ ]+10:[ ]+123452b7[ ]+lui[ ]t0,0x12345 +[ ]+14:[ ]+7ffff06f[ ]+j[ ][0-9a-f]+.* +[ ]+18:[ ]+2abcd2b7[ ]+lui[ ]t0,0x2abcd +[ ]+1c:[ ]+8000006f[ ]+j[ ][0-9a-f]+.* diff --git a/gas/testsuite/gas/riscv/no-relax-branch-offset-ok.s b/gas/testsuite/gas/riscv/no-relax-branch-offset-ok.s new file mode 100644 index 0000000..4711c90 --- /dev/null +++ b/gas/testsuite/gas/riscv/no-relax-branch-offset-ok.s @@ -0,0 +1,17 @@ + .option norelax + + # Relative to the current instruction. + j .+0x0ffffe + j .-0x100000 + + # Relative to local labels (make sure that all instructions occupy 4-bytes). + j 1f+0x0ffffe-4 +1: + j 2f-0x100000-4 +2: +3: + lui t0, 0x12345 + j 3b+0x0ffffe+4 +4: + lui t0, 0x2abcd + j 4b-0x100000+4 diff --git a/gas/testsuite/gas/riscv/no-relax-pcrel-offset-fail-64.d b/gas/testsuite/gas/riscv/no-relax-pcrel-offset-fail-64.d new file mode 100644 index 0000000..79d59de --- /dev/null +++ b/gas/testsuite/gas/riscv/no-relax-pcrel-offset-fail-64.d @@ -0,0 +1,2 @@ +#as: -march=rv64i +#error_output: no-relax-pcrel-offset-fail-64.l diff --git a/gas/testsuite/gas/riscv/no-relax-pcrel-offset-fail-64.l b/gas/testsuite/gas/riscv/no-relax-pcrel-offset-fail-64.l new file mode 100644 index 0000000..bcc0925 --- /dev/null +++ b/gas/testsuite/gas/riscv/no-relax-pcrel-offset-fail-64.l @@ -0,0 +1,7 @@ +.*Assembler messages: +.*:8: Error: invalid pcrel_hi offset \(\+2147481600\) +.*:11: Error: invalid pcrel_hi offset \(-2147485697\) +.*:17: Error: invalid pcrel_hi offset \(\+2147481600\) +.*:21: Error: invalid pcrel_hi offset \(-2147485697\) +.*:26: Error: invalid pcrel_hi offset \(\+2147481600\) +.*:30: Error: invalid pcrel_hi offset \(-2147485697\) diff --git a/gas/testsuite/gas/riscv/no-relax-pcrel-offset-fail-64.s b/gas/testsuite/gas/riscv/no-relax-pcrel-offset-fail-64.s new file mode 100644 index 0000000..d01ffe9 --- /dev/null +++ b/gas/testsuite/gas/riscv/no-relax-pcrel-offset-fail-64.s @@ -0,0 +1,31 @@ + .option norelax + + ## Fail on RV64, wrap without errors on RV32. + + # Relative to the current instruction. + +1: + auipc a0, %pcrel_hi(.+0x7ffff7ff+1) + addi a0, a0, %pcrel_lo(1b) +2: + auipc a0, %pcrel_hi(.-0x80000800-1) + addi a0, a0, %pcrel_lo(2b) + + # Relative to local labels (all instructions occupy 4-bytes). + +3: + auipc a0, %pcrel_hi(4f+0x7ffff7ff-4+1) +4: + addi a0, a0, %pcrel_lo(3b) +5: + auipc a0, %pcrel_hi(6f-0x80000800-4-1) +6: + addi a0, a0, %pcrel_lo(5b) + +7: + auipc a0, %pcrel_hi(6b+0x7ffff7ff+4+1) +8: + addi a0, a0, %pcrel_lo(7b) +9: + auipc a0, %pcrel_hi(8b-0x80000800+4-1) + addi a0, a0, %pcrel_lo(9b) diff --git a/gas/testsuite/gas/riscv/no-relax-pcrel-offset-fail-not-32.d b/gas/testsuite/gas/riscv/no-relax-pcrel-offset-fail-not-32.d new file mode 100644 index 0000000..0d7cb7c --- /dev/null +++ b/gas/testsuite/gas/riscv/no-relax-pcrel-offset-fail-not-32.d @@ -0,0 +1,22 @@ +#as: -march=rv32i +#source: no-relax-pcrel-offset-fail-64.s +#objdump: -dr + +.*: file format .* + + +Disassembly of section \.text: + +0+ <\.text>: +[ ]+0:[ ]+80000517[ ]+auipc[ ]a0,0x80000 +[ ]+4:[ ]+80050513[ ]+addi[ ]a0,a0,-2048([^0-9].*)? +[ ]+8:[ ]+7ffff517[ ]+auipc[ ]a0,0x7ffff +[ ]+c:[ ]+7ff50513[ ]+addi[ ]a0,a0,2047([^0-9].*)? +[ ]+10:[ ]+80000517[ ]+auipc[ ]a0,0x80000 +[ ]+14:[ ]+80050513[ ]+addi[ ]a0,a0,-2048([^0-9].*)? +[ ]+18:[ ]+7ffff517[ ]+auipc[ ]a0,0x7ffff +[ ]+1c:[ ]+7ff50513[ ]+addi[ ]a0,a0,2047([^0-9].*)? +[ ]+20:[ ]+80000517[ ]+auipc[ ]a0,0x80000 +[ ]+24:[ ]+80050513[ ]+addi[ ]a0,a0,-2048([^0-9].*)? +[ ]+28:[ ]+7ffff517[ ]+auipc[ ]a0,0x7ffff +[ ]+2c:[ ]+7ff50513[ ]+addi[ ]a0,a0,2047([^0-9].*)? diff --git a/gas/testsuite/gas/riscv/no-relax-pcrel-offset-ok.d b/gas/testsuite/gas/riscv/no-relax-pcrel-offset-ok.d new file mode 100644 index 0000000..e585032 --- /dev/null +++ b/gas/testsuite/gas/riscv/no-relax-pcrel-offset-ok.d @@ -0,0 +1,21 @@ +#as: -march=rv64i +#objdump: -dr + +.*: file format .* + + +Disassembly of section \.text: + +0+ <\.text>: +[ ]+0:[ ]+7ffff517[ ]+auipc[ ]a0,0x7ffff +[ ]+4:[ ]+7ff50513[ ]+addi[ ]a0,a0,2047([^0-9].*)? +[ ]+8:[ ]+80000517[ ]+auipc[ ]a0,0x80000 +[ ]+c:[ ]+80050513[ ]+addi[ ]a0,a0,-2048([^0-9].*)? +[ ]+10:[ ]+7ffff517[ ]+auipc[ ]a0,0x7ffff +[ ]+14:[ ]+7ff50513[ ]+addi[ ]a0,a0,2047([^0-9].*)? +[ ]+18:[ ]+80000517[ ]+auipc[ ]a0,0x80000 +[ ]+1c:[ ]+80050513[ ]+addi[ ]a0,a0,-2048([^0-9].*)? +[ ]+20:[ ]+7ffff517[ ]+auipc[ ]a0,0x7ffff +[ ]+24:[ ]+7ff50513[ ]+addi[ ]a0,a0,2047([^0-9].*)? +[ ]+28:[ ]+80000517[ ]+auipc[ ]a0,0x80000 +[ ]+2c:[ ]+80050513[ ]+addi[ ]a0,a0,-2048([^0-9].*)? diff --git a/gas/testsuite/gas/riscv/no-relax-pcrel-offset-ok.s b/gas/testsuite/gas/riscv/no-relax-pcrel-offset-ok.s new file mode 100644 index 0000000..ededcca --- /dev/null +++ b/gas/testsuite/gas/riscv/no-relax-pcrel-offset-ok.s @@ -0,0 +1,29 @@ + .option norelax + + # Relative to the current instruction. + +1: + auipc a0, %pcrel_hi(.+0x7ffff7ff) + addi a0, a0, %pcrel_lo(1b) +2: + auipc a0, %pcrel_hi(.-0x80000800) + addi a0, a0, %pcrel_lo(2b) + + # Relative to local labels (all instructions occupy 4-bytes). + +3: + auipc a0, %pcrel_hi(4f+0x7ffff7ff-4) +4: + addi a0, a0, %pcrel_lo(3b) +5: + auipc a0, %pcrel_hi(6f-0x80000800-4) +6: + addi a0, a0, %pcrel_lo(5b) + +7: + auipc a0, %pcrel_hi(6b+0x7ffff7ff+4) +8: + addi a0, a0, %pcrel_lo(7b) +9: + auipc a0, %pcrel_hi(8b-0x80000800+4) + addi a0, a0, %pcrel_lo(9b) diff --git a/gas/testsuite/gas/riscv/option-arch-fail.l b/gas/testsuite/gas/riscv/option-arch-fail.l index b9979a4..d83f01d 100644 --- a/gas/testsuite/gas/riscv/option-arch-fail.l +++ b/gas/testsuite/gas/riscv/option-arch-fail.l @@ -1,5 +1,5 @@ .*Assembler messages: -.*Error: m2p0: ISA string must begin with rv32 or rv64 +.*Error: m2p0: ISA string must begin with rv32, rv64 or Profiles .*Error: cannot \+ or \- base extension `i' in .option arch `\-i' .*Error: cannot \+ or \- base extension `e' in .option arch `\+e' .*Error: cannot \+ or \- base extension `g' in .option arch `\-g' diff --git a/gas/testsuite/gas/riscv/x-thead-vector-fail.d b/gas/testsuite/gas/riscv/x-thead-vector-fail.d index ac99c3f..35231d9 100644 --- a/gas/testsuite/gas/riscv/x-thead-vector-fail.d +++ b/gas/testsuite/gas/riscv/x-thead-vector-fail.d @@ -1,3 +1,3 @@ -#as: -march=rv64gcv_xtheadvector +#as: -march=rv64gc_zve32x_xtheadvector #source: x-thead-vector.s #error_output: x-thead-vector-fail.l diff --git a/gas/testsuite/gas/riscv/x-thead-vector-fail.l b/gas/testsuite/gas/riscv/x-thead-vector-fail.l index 7dd88e3..6b4d828 100644 --- a/gas/testsuite/gas/riscv/x-thead-vector-fail.l +++ b/gas/testsuite/gas/riscv/x-thead-vector-fail.l @@ -1,2 +1,2 @@ Assembler messages: -Error: `xtheadvector' is conflict with the `v' extension
\ No newline at end of file +Error: `xtheadvector' is conflict with the `v/zve32x' extension diff --git a/gas/testsuite/gas/riscv/zilsd-zclsd-fail.d b/gas/testsuite/gas/riscv/zilsd-zclsd-fail.d new file mode 100644 index 0000000..da73c2d --- /dev/null +++ b/gas/testsuite/gas/riscv/zilsd-zclsd-fail.d @@ -0,0 +1,3 @@ +#as: -march=rv32ima_zilsd_zclsd +#source: zilsd-zclsd-fail.s +#error_output: zilsd-zclsd-fail.l diff --git a/gas/testsuite/gas/riscv/zilsd-zclsd-fail.l b/gas/testsuite/gas/riscv/zilsd-zclsd-fail.l new file mode 100644 index 0000000..18e2903 --- /dev/null +++ b/gas/testsuite/gas/riscv/zilsd-zclsd-fail.l @@ -0,0 +1,15 @@ +.*: Assembler messages: +.*: Error: illegal operands `ld x7,\(x5\)' +.*: Error: illegal operands `ld x9,8\(x11\)' +.*: Error: illegal operands `ld x13,16\(x16\)' +.*: Error: illegal operands `sd x7,\(x5\)' +.*: Error: illegal operands `sd x9,8\(x11\)' +.*: Error: illegal operands `sd x13,16\(x16\)' +.*: Error: illegal operands `c.ld x11,\(x9\)' +.*: Error: illegal operands `c.ld x13,\(x16\)' +.*: Error: illegal operands `c.ldsp x0,\(x2\)' +.*: Error: illegal operands `c.ldsp x11,\(x2\)' +.*: Error: illegal operands `c.sd x11,\(x9\)' +.*: Error: illegal operands `c.sd x13,\(x16\)' +.*: Error: illegal operands `c.sdsp x11,\(x2\)' +.*: Error: illegal operands `c.sdsp x13,8\(x2\)' diff --git a/gas/testsuite/gas/riscv/zilsd-zclsd-fail.s b/gas/testsuite/gas/riscv/zilsd-zclsd-fail.s new file mode 100644 index 0000000..925cd48 --- /dev/null +++ b/gas/testsuite/gas/riscv/zilsd-zclsd-fail.s @@ -0,0 +1,15 @@ +target: + ld x7, (x5) + ld x9, 8(x11) + ld x13, 16(x16) + sd x7, (x5) + sd x9, 8(x11) + sd x13, 16(x16) + c.ld x11, (x9) + c.ld x13, (x16) + c.ldsp x0, (x2) + c.ldsp x11, (x2) + c.sd x11, (x9) + c.sd x13, (x16) + c.sdsp x11, (x2) + c.sdsp x13, 8(x2) diff --git a/gas/testsuite/gas/riscv/zilsd-zclsd.d b/gas/testsuite/gas/riscv/zilsd-zclsd.d new file mode 100644 index 0000000..816371c --- /dev/null +++ b/gas/testsuite/gas/riscv/zilsd-zclsd.d @@ -0,0 +1,29 @@ +#as: -march=rv32ima_zilsd_zclsd +#source: zilsd-zclsd.s +#objdump: -d -Mno-aliases + +.*:[ ]+file format .* + + +Disassembly of section .text: + +0+000 <target>: +[ ]+0:[ ]+0007b303[ ]+ld[ ]+t1,0\(a5\) +[ ]+4:[ ]+00883903[ ]+ld[ ]+s2,8\(a6\) +[ ]+8:[ ]+0105ba03[ ]+ld[ ]+s4,16\(a1\) +[ ]+c:[ ]+0067b023[ ]+sd[ ]+t1,0\(a5\) +[ ]+10:[ ]+01283423[ ]+sd[ ]+s2,8\(a6\) +[ ]+14:[ ]+0145b823[ ]+sd[ ]+s4,16\(a1\) +[ ]+18:[ ]+6380[ ]+c.ld[ ]+s0,0\(a5\) +[ ]+1a:[ ]+6408[ ]+c.ld[ ]+a0,8\(s0\) +[ ]+1c:[ ]+6a90[ ]+c.ld[ ]+a2,16\(a3\) +[ ]+1e:[ ]+e380[ ]+c.sd[ ]+s0,0\(a5\) +[ ]+20:[ ]+e408[ ]+c.sd[ ]+a0,8\(s0\) +[ ]+22:[ ]+ea90[ ]+c.sd[ ]+a2,16\(a3\) +[ ]+24:[ ]+6122[ ]+c.ldsp[ ]+sp,8\(sp\) +[ ]+26:[ ]+652a[ ]+c.ldsp[ ]+a0,136\(sp\) +[ ]+28:[ ]+7f7e[ ]+c.ldsp[ ]+t5,504\(sp\) +[ ]+2a:[ ]+e002[ ]+c.sdsp[ ]+zero,0\(sp\) +[ ]+2c:[ ]+e40a[ ]+c.sdsp[ ]+sp,8\(sp\) +[ ]+2e:[ ]+e52a[ ]+c.sdsp[ ]+a0,136\(sp\) +[ ]+30:[ ]+fffa[ ]+c.sdsp[ ]+t5,504\(sp\) diff --git a/gas/testsuite/gas/riscv/zilsd-zclsd.s b/gas/testsuite/gas/riscv/zilsd-zclsd.s new file mode 100644 index 0000000..28d83ed --- /dev/null +++ b/gas/testsuite/gas/riscv/zilsd-zclsd.s @@ -0,0 +1,20 @@ +target: + ld x6, (x15) + ld x18, 8(x16) + ld x20, 16(x11) + sd x6, (x15) + sd x18, 8(x16) + sd x20, 16(x11) + c.ld x8, (x15) + c.ld x10, 8(x8) + c.ld x12, 16(x13) + c.sd x8, (x15) + c.sd x10, 8(x8) + c.sd x12, 16(x13) + c.ldsp x2, 8(sp) + c.ldsp x10, 136(sp) + c.ldsp x30, 504(sp) + c.sdsp x0, (sp) + c.sdsp x2, 8(sp) + c.sdsp x10, 136(sp) + c.sdsp x30, 504(sp) diff --git a/gas/write.c b/gas/write.c index c725841..8ccd996 100644 --- a/gas/write.c +++ b/gas/write.c @@ -1653,6 +1653,19 @@ write_contents (bfd *abfd ATTRIBUTE_UNUSED, offsetT count; gas_assert (f->fr_type == rs_fill || f->fr_type == rs_fill_nop); + + count = f->fr_offset; + fill_literal = f->fr_literal + f->fr_fix; + if (f->fr_type == rs_fill_nop && count > 0) + { + md_generate_nops (f, fill_literal, count, *fill_literal); + /* md_generate_nops updates fr_fix and fr_var. */ + f->fr_offset = (f->fr_next->fr_address - f->fr_address + - f->fr_fix) / f->fr_var; + count = f->fr_offset; + fill_literal = f->fr_literal + f->fr_fix; + } + if (f->fr_fix) { x = bfd_set_section_contents (stdoutput, sec, @@ -1671,39 +1684,6 @@ write_contents (bfd *abfd ATTRIBUTE_UNUSED, } fill_size = f->fr_var; - count = f->fr_offset; - fill_literal = f->fr_literal + f->fr_fix; - - if (f->fr_type == rs_fill_nop) - { - gas_assert (count >= 0 && fill_size == 1); - if (count > 0) - { - char *buf = xmalloc (count); - md_generate_nops (f, buf, count, *fill_literal); - x = bfd_set_section_contents - (stdoutput, sec, buf, (file_ptr) offset, - (bfd_size_type) count); - if (!x) - as_fatal (ngettext ("can't fill %ld byte " - "in section %s of %s: '%s'", - "can't fill %ld bytes " - "in section %s of %s: '%s'", - (long) count), - (long) count, - bfd_section_name (sec), - bfd_get_filename (stdoutput), - bfd_errmsg (bfd_get_error ())); - offset += count; -#ifndef NO_LISTING - if (listing & LISTING_LISTING) - f->fr_opcode = buf; - else -#endif - free (buf); - } - continue; - } gas_assert (count >= 0); if (fill_size && count) |