diff options
author | Nick Clifton <nickc@redhat.com> | 2012-08-13 14:52:54 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2012-08-13 14:52:54 +0000 |
commit | a06ea96464a2928865beb2ac6f12deb0464bfcd7 (patch) | |
tree | 5af98be87fc6e7ea4e8197c241698b97cceeafb8 /gas | |
parent | f47f77df4e0f38c96bf5a4c4d8ecda6c73f5ffc2 (diff) | |
download | gdb-a06ea96464a2928865beb2ac6f12deb0464bfcd7.zip gdb-a06ea96464a2928865beb2ac6f12deb0464bfcd7.tar.gz gdb-a06ea96464a2928865beb2ac6f12deb0464bfcd7.tar.bz2 |
Add support for 64-bit ARM architecture: AArch64
Diffstat (limited to 'gas')
124 files changed, 37480 insertions, 8 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index fb6ac64..896b941 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,27 @@ +2012-08-13 Ian Bolton <ian.bolton@arm.com> + Laurent Desnogues <laurent.desnogues@arm.com> + Jim MacArthur <jim.macarthur@arm.com> + Marcus Shawcroft <marcus.shawcroft@arm.com> + Nigel Stephens <nigel.stephens@arm.com> + Ramana Radhakrishnan <ramana.radhakrishnan@arm.com> + Richard Earnshaw <rearnsha@arm.com> + Sofiane Naci <sofiane.naci@arm.com> + Tejas Belagod <tejas.belagod@arm.com> + Yufeng Zhang <yufeng.zhang@arm.com> + + * Makefile.am: Add AArch64. + * Makefile.in: Regenerate. + * config/tc-aarch64.c: New file. + * config/tc-aarch64.h: New file. + * configure.tgt: Add AArch64. + * doc/Makefile.am: Add AArch64. + * doc/Makefile.in: Regenerate. + * doc/all.texi: Add AArch64. + * doc/as.texinfo: Add AArch64. + * doc/c-aarch64.texi: New file. + * po/POTFILES.in: Regenerate. + * NEWS: Mention the new support. + 2012-08-13 Maciej W. Rozycki <macro@codesourcery.com> * config/tc-mips.c (NO_ISA_COP, COP_INSN): Remove macros. diff --git a/gas/Makefile.am b/gas/Makefile.am index 020e7cf..256e232 100644 --- a/gas/Makefile.am +++ b/gas/Makefile.am @@ -107,6 +107,7 @@ HFILES = \ # CPU files in config. TARGET_CPU_CFILES = \ + config/tc-aarch64.c \ config/tc-alpha.c \ config/tc-arc.c \ config/tc-arm.c \ @@ -176,6 +177,7 @@ TARGET_CPU_CFILES = \ config/xtensa-relax.c TARGET_CPU_HFILES = \ + config/tc-aarch64.h \ config/tc-alpha.h \ config/tc-arc.h \ config/tc-arm.h \ diff --git a/gas/Makefile.in b/gas/Makefile.in index f631d02..94812d9 100644 --- a/gas/Makefile.in +++ b/gas/Makefile.in @@ -375,6 +375,7 @@ HFILES = \ # CPU files in config. TARGET_CPU_CFILES = \ + config/tc-aarch64.c \ config/tc-alpha.c \ config/tc-arc.c \ config/tc-arm.c \ @@ -444,6 +445,7 @@ TARGET_CPU_CFILES = \ config/xtensa-relax.c TARGET_CPU_HFILES = \ + config/tc-aarch64.h \ config/tc-alpha.h \ config/tc-arc.h \ config/tc-arm.h \ @@ -793,6 +795,7 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stabs.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/subsegs.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/symbols.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tc-aarch64.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tc-alpha.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tc-arc.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tc-arm.Po@am__quote@ @@ -884,6 +887,20 @@ distclean-compile: @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< +tc-aarch64.o: config/tc-aarch64.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT tc-aarch64.o -MD -MP -MF $(DEPDIR)/tc-aarch64.Tpo -c -o tc-aarch64.o `test -f 'config/tc-aarch64.c' || echo '$(srcdir)/'`config/tc-aarch64.c +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/tc-aarch64.Tpo $(DEPDIR)/tc-aarch64.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='config/tc-aarch64.c' object='tc-aarch64.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o tc-aarch64.o `test -f 'config/tc-aarch64.c' || echo '$(srcdir)/'`config/tc-aarch64.c + +tc-aarch64.obj: config/tc-aarch64.c +@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT tc-aarch64.obj -MD -MP -MF $(DEPDIR)/tc-aarch64.Tpo -c -o tc-aarch64.obj `if test -f 'config/tc-aarch64.c'; then $(CYGPATH_W) 'config/tc-aarch64.c'; else $(CYGPATH_W) '$(srcdir)/config/tc-aarch64.c'; fi` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/tc-aarch64.Tpo $(DEPDIR)/tc-aarch64.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='config/tc-aarch64.c' object='tc-aarch64.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o tc-aarch64.obj `if test -f 'config/tc-aarch64.c'; then $(CYGPATH_W) 'config/tc-aarch64.c'; else $(CYGPATH_W) '$(srcdir)/config/tc-aarch64.c'; fi` + tc-alpha.o: config/tc-alpha.c @am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT tc-alpha.o -MD -MP -MF $(DEPDIR)/tc-alpha.Tpo -c -o tc-alpha.o `test -f 'config/tc-alpha.c' || echo '$(srcdir)/'`config/tc-alpha.c @am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/tc-alpha.Tpo $(DEPDIR)/tc-alpha.Po @@ -1,5 +1,7 @@ -*- text -*- +* Add support for the 64-bit ARM architecture: AArch64. + Changes in 2.23: * Add support for S12X processor. diff --git a/gas/config/tc-aarch64.c b/gas/config/tc-aarch64.c new file mode 100644 index 0000000..4333e8e --- /dev/null +++ b/gas/config/tc-aarch64.c @@ -0,0 +1,7349 @@ +/* tc-aarch64.c -- Assemble for the AArch64 ISA + + Copyright 2009, 2010, 2011, 2012 Free Software Foundation, Inc. + Contributed by ARM Ltd. + + This file is part of GAS. + + GAS 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. + + GAS 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; see the file COPYING3. If not, + see <http://www.gnu.org/licenses/>. */ + +#include "as.h" +#include <limits.h> +#include <stdarg.h> +#include "bfd_stdint.h" +#define NO_RELOC 0 +#include "safe-ctype.h" +#include "subsegs.h" +#include "obstack.h" + +#ifdef OBJ_ELF +#include "elf/aarch64.h" +#include "dw2gencfi.h" +#endif + +#include "dwarf2dbg.h" + +/* Types of processor to assemble for. */ +#ifndef CPU_DEFAULT +#define CPU_DEFAULT AARCH64_ARCH_V8 +#endif + +#define streq(a, b) (strcmp (a, b) == 0) + +static aarch64_feature_set cpu_variant; + +/* Variables that we set while parsing command-line options. Once all + options have been read we re-process these values to set the real + assembly flags. */ +static const aarch64_feature_set *mcpu_cpu_opt = NULL; +static const aarch64_feature_set *march_cpu_opt = NULL; + +/* Constants for known architecture features. */ +static const aarch64_feature_set cpu_default = CPU_DEFAULT; + +static const aarch64_feature_set aarch64_arch_any = AARCH64_ANY; +static const aarch64_feature_set aarch64_arch_none = AARCH64_ARCH_NONE; + +#ifdef OBJ_ELF +/* Pre-defined "_GLOBAL_OFFSET_TABLE_" */ +static symbolS *GOT_symbol; +#endif + +enum neon_el_type +{ + NT_invtype = -1, + NT_b, + NT_h, + NT_s, + NT_d, + NT_q +}; + +/* Bits for DEFINED field in neon_type_el. */ +#define NTA_HASTYPE 1 +#define NTA_HASINDEX 2 + +struct neon_type_el +{ + enum neon_el_type type; + unsigned char defined; + unsigned width; + int64_t index; +}; + +#define FIXUP_F_HAS_EXPLICIT_SHIFT 0x00000001 + +struct reloc +{ + bfd_reloc_code_real_type type; + expressionS exp; + int pc_rel; + enum aarch64_opnd opnd; + uint32_t flags; + unsigned need_libopcodes_p : 1; +}; + +struct aarch64_instruction +{ + /* libopcodes structure for instruction intermediate representation. */ + aarch64_inst base; + /* Record assembly errors found during the parsing. */ + struct + { + enum aarch64_operand_error_kind kind; + const char *error; + } parsing_error; + /* The condition that appears in the assembly line. */ + int cond; + /* Relocation information (including the GAS internal fixup). */ + struct reloc reloc; + /* Need to generate an immediate in the literal pool. */ + unsigned gen_lit_pool : 1; +}; + +typedef struct aarch64_instruction aarch64_instruction; + +static aarch64_instruction inst; + +static bfd_boolean parse_operands (char *, const aarch64_opcode *); +static bfd_boolean programmer_friendly_fixup (aarch64_instruction *); + +/* Diagnostics inline function utilites. + + These are lightweight utlities which should only be called by parse_operands + and other parsers. GAS processes each assembly line by parsing it against + instruction template(s), in the case of multiple templates (for the same + mnemonic name), those templates are tried one by one until one succeeds or + all fail. An assembly line may fail a few templates before being + successfully parsed; an error saved here in most cases is not a user error + but an error indicating the current template is not the right template. + Therefore it is very important that errors can be saved at a low cost during + the parsing; we don't want to slow down the whole parsing by recording + non-user errors in detail. + + Remember that the objective is to help GAS pick up the most approapriate + error message in the case of multiple templates, e.g. FMOV which has 8 + templates. */ + +static inline void +clear_error (void) +{ + inst.parsing_error.kind = AARCH64_OPDE_NIL; + inst.parsing_error.error = NULL; +} + +static inline bfd_boolean +error_p (void) +{ + return inst.parsing_error.kind != AARCH64_OPDE_NIL; +} + +static inline const char * +get_error_message (void) +{ + return inst.parsing_error.error; +} + +static inline void +set_error_message (const char *error) +{ + inst.parsing_error.error = error; +} + +static inline enum aarch64_operand_error_kind +get_error_kind (void) +{ + return inst.parsing_error.kind; +} + +static inline void +set_error_kind (enum aarch64_operand_error_kind kind) +{ + inst.parsing_error.kind = kind; +} + +static inline void +set_error (enum aarch64_operand_error_kind kind, const char *error) +{ + inst.parsing_error.kind = kind; + inst.parsing_error.error = error; +} + +static inline void +set_recoverable_error (const char *error) +{ + set_error (AARCH64_OPDE_RECOVERABLE, error); +} + +/* Use the DESC field of the corresponding aarch64_operand entry to compose + the error message. */ +static inline void +set_default_error (void) +{ + set_error (AARCH64_OPDE_SYNTAX_ERROR, NULL); +} + +static inline void +set_syntax_error (const char *error) +{ + set_error (AARCH64_OPDE_SYNTAX_ERROR, error); +} + +static inline void +set_first_syntax_error (const char *error) +{ + if (! error_p ()) + set_error (AARCH64_OPDE_SYNTAX_ERROR, error); +} + +static inline void +set_fatal_syntax_error (const char *error) +{ + set_error (AARCH64_OPDE_FATAL_SYNTAX_ERROR, error); +} + +/* Number of littlenums required to hold an extended precision number. */ +#define MAX_LITTLENUMS 6 + +/* Return value for certain parsers when the parsing fails; those parsers + return the information of the parsed result, e.g. register number, on + success. */ +#define PARSE_FAIL -1 + +/* This is an invalid condition code that means no conditional field is + present. */ +#define COND_ALWAYS 0x10 + +typedef struct +{ + const char *template; + unsigned long value; +} asm_barrier_opt; + +typedef struct +{ + const char *template; + uint32_t value; +} asm_nzcv; + +struct reloc_entry +{ + char *name; + bfd_reloc_code_real_type reloc; +}; + +/* Structure for a hash table entry for a register. */ +typedef struct +{ + const char *name; + unsigned char number; + unsigned char type; + unsigned char builtin; +} reg_entry; + +/* Macros to define the register types and masks for the purpose + of parsing. */ + +#undef AARCH64_REG_TYPES +#define AARCH64_REG_TYPES \ + BASIC_REG_TYPE(R_32) /* w[0-30] */ \ + BASIC_REG_TYPE(R_64) /* x[0-30] */ \ + BASIC_REG_TYPE(SP_32) /* wsp */ \ + BASIC_REG_TYPE(SP_64) /* sp */ \ + BASIC_REG_TYPE(Z_32) /* wzr */ \ + BASIC_REG_TYPE(Z_64) /* xzr */ \ + BASIC_REG_TYPE(FP_B) /* b[0-31] *//* NOTE: keep FP_[BHSDQ] consecutive! */\ + BASIC_REG_TYPE(FP_H) /* h[0-31] */ \ + BASIC_REG_TYPE(FP_S) /* s[0-31] */ \ + BASIC_REG_TYPE(FP_D) /* d[0-31] */ \ + BASIC_REG_TYPE(FP_Q) /* q[0-31] */ \ + BASIC_REG_TYPE(CN) /* c[0-7] */ \ + BASIC_REG_TYPE(VN) /* v[0-31] */ \ + /* Typecheck: any 64-bit int reg (inc SP exc XZR) */ \ + MULTI_REG_TYPE(R64_SP, REG_TYPE(R_64) | REG_TYPE(SP_64)) \ + /* Typecheck: any int (inc {W}SP inc [WX]ZR) */ \ + MULTI_REG_TYPE(R_Z_SP, REG_TYPE(R_32) | REG_TYPE(R_64) \ + | REG_TYPE(SP_32) | REG_TYPE(SP_64) \ + | REG_TYPE(Z_32) | REG_TYPE(Z_64)) \ + /* Typecheck: any [BHSDQ]P FP. */ \ + MULTI_REG_TYPE(BHSDQ, REG_TYPE(FP_B) | REG_TYPE(FP_H) \ + | REG_TYPE(FP_S) | REG_TYPE(FP_D) | REG_TYPE(FP_Q)) \ + /* Typecheck: any int or [BHSDQ]P FP or V reg (exc SP inc [WX]ZR) */ \ + MULTI_REG_TYPE(R_Z_BHSDQ_V, REG_TYPE(R_32) | REG_TYPE(R_64) \ + | REG_TYPE(Z_32) | REG_TYPE(Z_64) | REG_TYPE(VN) \ + | REG_TYPE(FP_B) | REG_TYPE(FP_H) \ + | REG_TYPE(FP_S) | REG_TYPE(FP_D) | REG_TYPE(FP_Q)) \ + /* Any integer register; used for error messages only. */ \ + MULTI_REG_TYPE(R_N, REG_TYPE(R_32) | REG_TYPE(R_64) \ + | REG_TYPE(SP_32) | REG_TYPE(SP_64) \ + | REG_TYPE(Z_32) | REG_TYPE(Z_64)) \ + /* Pseudo type to mark the end of the enumerator sequence. */ \ + BASIC_REG_TYPE(MAX) + +#undef BASIC_REG_TYPE +#define BASIC_REG_TYPE(T) REG_TYPE_##T, +#undef MULTI_REG_TYPE +#define MULTI_REG_TYPE(T,V) BASIC_REG_TYPE(T) + +/* Register type enumerators. */ +typedef enum +{ + /* A list of REG_TYPE_*. */ + AARCH64_REG_TYPES +} aarch64_reg_type; + +#undef BASIC_REG_TYPE +#define BASIC_REG_TYPE(T) 1 << REG_TYPE_##T, +#undef REG_TYPE +#define REG_TYPE(T) (1 << REG_TYPE_##T) +#undef MULTI_REG_TYPE +#define MULTI_REG_TYPE(T,V) V, + +/* Values indexed by aarch64_reg_type to assist the type checking. */ +static const unsigned reg_type_masks[] = +{ + AARCH64_REG_TYPES +}; + +#undef BASIC_REG_TYPE +#undef REG_TYPE +#undef MULTI_REG_TYPE +#undef AARCH64_REG_TYPES + +/* Diagnostics used when we don't get a register of the expected type. + Note: this has to synchronized with aarch64_reg_type definitions + above. */ +static const char * +get_reg_expected_msg (aarch64_reg_type reg_type) +{ + const char *msg; + + switch (reg_type) + { + case REG_TYPE_R_32: + msg = N_("integer 32-bit register expected"); + break; + case REG_TYPE_R_64: + msg = N_("integer 64-bit register expected"); + break; + case REG_TYPE_R_N: + msg = N_("integer register expected"); + break; + case REG_TYPE_R_Z_SP: + msg = N_("integer, zero or SP register expected"); + break; + case REG_TYPE_FP_B: + msg = N_("8-bit SIMD scalar register expected"); + break; + case REG_TYPE_FP_H: + msg = N_("16-bit SIMD scalar or floating-point half precision " + "register expected"); + break; + case REG_TYPE_FP_S: + msg = N_("32-bit SIMD scalar or floating-point single precision " + "register expected"); + break; + case REG_TYPE_FP_D: + msg = N_("64-bit SIMD scalar or floating-point double precision " + "register expected"); + break; + case REG_TYPE_FP_Q: + msg = N_("128-bit SIMD scalar or floating-point quad precision " + "register expected"); + break; + case REG_TYPE_CN: + msg = N_("C0 - C15 expected"); + break; + case REG_TYPE_R_Z_BHSDQ_V: + msg = N_("register expected"); + break; + case REG_TYPE_BHSDQ: /* any [BHSDQ]P FP */ + msg = N_("SIMD scalar or floating-point register expected"); + break; + case REG_TYPE_VN: /* any V reg */ + msg = N_("vector register expected"); + break; + default: + as_fatal (_("invalid register type %d"), reg_type); + } + return msg; +} + +/* Some well known registers that we refer to directly elsewhere. */ +#define REG_SP 31 + +/* Instructions take 4 bytes in the object file. */ +#define INSN_SIZE 4 + +/* Define some common error messages. */ +#define BAD_SP _("SP not allowed here") + +static struct hash_control *aarch64_ops_hsh; +static struct hash_control *aarch64_cond_hsh; +static struct hash_control *aarch64_shift_hsh; +static struct hash_control *aarch64_sys_regs_hsh; +static struct hash_control *aarch64_pstatefield_hsh; +static struct hash_control *aarch64_sys_regs_ic_hsh; +static struct hash_control *aarch64_sys_regs_dc_hsh; +static struct hash_control *aarch64_sys_regs_at_hsh; +static struct hash_control *aarch64_sys_regs_tlbi_hsh; +static struct hash_control *aarch64_reg_hsh; +static struct hash_control *aarch64_barrier_opt_hsh; +static struct hash_control *aarch64_nzcv_hsh; +static struct hash_control *aarch64_pldop_hsh; + +/* Stuff needed to resolve the label ambiguity + As: + ... + label: <insn> + may differ from: + ... + label: + <insn> */ + +static symbolS *last_label_seen; + +/* Literal pool structure. Held on a per-section + and per-sub-section basis. */ + +#define MAX_LITERAL_POOL_SIZE 1024 +typedef struct literal_pool +{ + expressionS literals[MAX_LITERAL_POOL_SIZE]; + unsigned int next_free_entry; + unsigned int id; + symbolS *symbol; + segT section; + subsegT sub_section; + int size; + struct literal_pool *next; +} literal_pool; + +/* Pointer to a linked list of literal pools. */ +static literal_pool *list_of_pools = NULL; + +/* Pure syntax. */ + +/* This array holds the chars that always start a comment. If the + pre-processor is disabled, these aren't very useful. */ +const char comment_chars[] = ""; + +/* This array holds the chars that only start a comment at the beginning of + a line. If the line seems to have the form '# 123 filename' + .line and .file directives will appear in the pre-processed output. */ +/* Note that input_file.c hand checks for '#' at the beginning of the + first line of the input file. This is because the compiler outputs + #NO_APP at the beginning of its output. */ +/* Also note that comments like this one will always work. */ +const char line_comment_chars[] = "#"; + +const char line_separator_chars[] = ";"; + +/* Chars that can be used to separate mant + from exp in floating point numbers. */ +const char EXP_CHARS[] = "eE"; + +/* Chars that mean this number is a floating point constant. */ +/* As in 0f12.456 */ +/* or 0d1.2345e12 */ + +const char FLT_CHARS[] = "rRsSfFdDxXeEpP"; + +/* Prefix character that indicates the start of an immediate value. */ +#define is_immediate_prefix(C) ((C) == '#') + +/* Separator character handling. */ + +#define skip_whitespace(str) do { if (*(str) == ' ') ++(str); } while (0) + +static inline bfd_boolean +skip_past_char (char **str, char c) +{ + if (**str == c) + { + (*str)++; + return TRUE; + } + else + return FALSE; +} + +#define skip_past_comma(str) skip_past_char (str, ',') + +/* Arithmetic expressions (possibly involving symbols). */ + +/* Return TRUE if anything in the expression *SP is a bignum. */ + +static bfd_boolean +exp_has_bignum_p (symbolS * sp) +{ + if (symbol_get_value_expression (sp)->X_op == O_big) + return TRUE; + + if (symbol_get_value_expression (sp)->X_add_symbol) + { + return (exp_has_bignum_p (symbol_get_value_expression (sp)->X_add_symbol) + || (symbol_get_value_expression (sp)->X_op_symbol + && exp_has_bignum_p (symbol_get_value_expression (sp)-> + X_op_symbol))); + } + + return FALSE; +} + +static bfd_boolean in_my_get_expression_p = FALSE; + +/* Third argument to my_get_expression. */ +#define GE_NO_PREFIX 0 +#define GE_OPT_PREFIX 1 + +/* Return TRUE if the string pointed by *STR is successfully parsed + as an valid expression; *EP will be filled with the information of + such an expression. Otherwise return FALSE. */ + +static bfd_boolean +my_get_expression (expressionS * ep, char **str, int prefix_mode, + int reject_absent) +{ + char *save_in; + segT seg; + int prefix_present_p = 0; + + switch (prefix_mode) + { + case GE_NO_PREFIX: + break; + case GE_OPT_PREFIX: + if (is_immediate_prefix (**str)) + { + (*str)++; + prefix_present_p = 1; + } + break; + default: + abort (); + } + + memset (ep, 0, sizeof (expressionS)); + + save_in = input_line_pointer; + input_line_pointer = *str; + in_my_get_expression_p = TRUE; + seg = expression (ep); + in_my_get_expression_p = FALSE; + + if (ep->X_op == O_illegal || (reject_absent && ep->X_op == O_absent)) + { + /* We found a bad expression in md_operand(). */ + *str = input_line_pointer; + input_line_pointer = save_in; + if (prefix_present_p && ! error_p ()) + set_fatal_syntax_error (_("bad expression")); + else + set_first_syntax_error (_("bad expression")); + return FALSE; + } + +#ifdef OBJ_AOUT + if (seg != absolute_section + && seg != text_section + && seg != data_section + && seg != bss_section && seg != undefined_section) + { + set_syntax_error (_("bad segment")); + *str = input_line_pointer; + input_line_pointer = save_in; + return FALSE; + } +#else + (void) seg; +#endif + + /* Get rid of any bignums now, so that we don't generate an error for which + we can't establish a line number later on. Big numbers are never valid + in instructions, which is where this routine is always called. */ + if (ep->X_op == O_big + || (ep->X_add_symbol + && (exp_has_bignum_p (ep->X_add_symbol) + || (ep->X_op_symbol && exp_has_bignum_p (ep->X_op_symbol))))) + { + if (prefix_present_p && error_p ()) + set_fatal_syntax_error (_("invalid constant")); + else + set_first_syntax_error (_("invalid constant")); + *str = input_line_pointer; + input_line_pointer = save_in; + return FALSE; + } + + *str = input_line_pointer; + input_line_pointer = save_in; + return TRUE; +} + +/* Turn a string in input_line_pointer into a floating point constant + of type TYPE, and store the appropriate bytes in *LITP. The number + of LITTLENUMS emitted is stored in *SIZEP. An error message is + returned, or NULL on OK. */ + +char * +md_atof (int type, char *litP, int *sizeP) +{ + return ieee_md_atof (type, litP, sizeP, target_big_endian); +} + +/* We handle all bad expressions here, so that we can report the faulty + instruction in the error message. */ +void +md_operand (expressionS * exp) +{ + if (in_my_get_expression_p) + exp->X_op = O_illegal; +} + +/* Immediate values. */ + +/* Errors may be set multiple times during parsing or bit encoding + (particularly in the Neon bits), but usually the earliest error which is set + will be the most meaningful. Avoid overwriting it with later (cascading) + errors by calling this function. */ + +static void +first_error (const char *error) +{ + if (! error_p ()) + set_syntax_error (error); +} + +/* Similiar to first_error, but this function accepts formatted error + message. */ +static void +first_error_fmt (const char *format, ...) +{ + va_list args; + enum + { size = 100 }; + /* N.B. this single buffer will not cause error messages for different + instructions to pollute each other; this is because at the end of + processing of each assembly line, error message if any will be + collected by as_bad. */ + static char buffer[size]; + + if (! error_p ()) + { + int ret; + va_start (args, format); + ret = vsnprintf (buffer, size, format, args); + know (ret <= size - 1 && ret >= 0); + va_end (args); + set_syntax_error (buffer); + } +} + +/* Register parsing. */ + +/* Generic register parser which is called by other specialized + register parsers. + CCP points to what should be the beginning of a register name. + If it is indeed a valid register name, advance CCP over it and + return the reg_entry structure; otherwise return NULL. + It does not issue diagnostics. */ + +static reg_entry * +parse_reg (char **ccp) +{ + char *start = *ccp; + char *p; + reg_entry *reg; + +#ifdef REGISTER_PREFIX + if (*start != REGISTER_PREFIX) + return NULL; + start++; +#endif + + p = start; + if (!ISALPHA (*p) || !is_name_beginner (*p)) + return NULL; + + do + p++; + while (ISALPHA (*p) || ISDIGIT (*p) || *p == '_'); + + reg = (reg_entry *) hash_find_n (aarch64_reg_hsh, start, p - start); + + if (!reg) + return NULL; + + *ccp = p; + return reg; +} + +/* Return TRUE if REG->TYPE is a valid type of TYPE; otherwise + return FALSE. */ +static bfd_boolean +aarch64_check_reg_type (const reg_entry *reg, aarch64_reg_type type) +{ + if (reg->type == type) + return TRUE; + + switch (type) + { + case REG_TYPE_R64_SP: /* 64-bit integer reg (inc SP exc XZR). */ + case REG_TYPE_R_Z_SP: /* Integer reg (inc {X}SP inc [WX]ZR). */ + case REG_TYPE_R_Z_BHSDQ_V: /* Any register apart from Cn. */ + case REG_TYPE_BHSDQ: /* Any [BHSDQ]P FP or SIMD scalar register. */ + case REG_TYPE_VN: /* Vector register. */ + gas_assert (reg->type < REG_TYPE_MAX && type < REG_TYPE_MAX); + return ((reg_type_masks[reg->type] & reg_type_masks[type]) + == reg_type_masks[reg->type]); + default: + as_fatal ("unhandled type %d", type); + abort (); + } +} + +/* Parse a register and return PARSE_FAIL if the register is not of type R_Z_SP. + Return the register number otherwise. *ISREG32 is set to one if the + register is 32-bit wide; *ISREGZERO is set to one if the register is + of type Z_32 or Z_64. + Note that this function does not issue any diagnostics. */ + +static int +aarch64_reg_parse_32_64 (char **ccp, int reject_sp, int reject_rz, + int *isreg32, int *isregzero) +{ + char *str = *ccp; + const reg_entry *reg = parse_reg (&str); + + if (reg == NULL) + return PARSE_FAIL; + + if (! aarch64_check_reg_type (reg, REG_TYPE_R_Z_SP)) + return PARSE_FAIL; + + switch (reg->type) + { + case REG_TYPE_SP_32: + case REG_TYPE_SP_64: + if (reject_sp) + return PARSE_FAIL; + *isreg32 = reg->type == REG_TYPE_SP_32; + *isregzero = 0; + break; + case REG_TYPE_R_32: + case REG_TYPE_R_64: + *isreg32 = reg->type == REG_TYPE_R_32; + *isregzero = 0; + break; + case REG_TYPE_Z_32: + case REG_TYPE_Z_64: + if (reject_rz) + return PARSE_FAIL; + *isreg32 = reg->type == REG_TYPE_Z_32; + *isregzero = 1; + break; + default: + return PARSE_FAIL; + } + + *ccp = str; + + return reg->number; +} + +/* Parse the qualifier of a SIMD vector register or a SIMD vector element. + Fill in *PARSED_TYPE and return TRUE if the parsing succeeds; + otherwise return FALSE. + + Accept only one occurrence of: + 8b 16b 4h 8h 2s 4s 1d 2d + b h s d q */ +static bfd_boolean +parse_neon_type_for_operand (struct neon_type_el *parsed_type, char **str) +{ + char *ptr = *str; + unsigned width; + unsigned element_size; + enum neon_el_type type; + + /* skip '.' */ + ptr++; + + if (!ISDIGIT (*ptr)) + { + width = 0; + goto elt_size; + } + width = strtoul (ptr, &ptr, 10); + if (width != 1 && width != 2 && width != 4 && width != 8 && width != 16) + { + first_error_fmt (_("bad size %d in vector width specifier"), width); + return FALSE; + } + +elt_size: + switch (TOLOWER (*ptr)) + { + case 'b': + type = NT_b; + element_size = 8; + break; + case 'h': + type = NT_h; + element_size = 16; + break; + case 's': + type = NT_s; + element_size = 32; + break; + case 'd': + type = NT_d; + element_size = 64; + break; + case 'q': + if (width == 1) + { + type = NT_q; + element_size = 128; + break; + } + /* fall through. */ + default: + if (*ptr != '\0') + first_error_fmt (_("unexpected character `%c' in element size"), *ptr); + else + first_error (_("missing element size")); + return FALSE; + } + if (width != 0 && width * element_size != 64 && width * element_size != 128) + { + first_error_fmt (_ + ("invalid element size %d and vector size combination %c"), + width, *ptr); + return FALSE; + } + ptr++; + + parsed_type->type = type; + parsed_type->width = width; + + *str = ptr; + + return TRUE; +} + +/* Parse a single type, e.g. ".8b", leading period included. + Only applicable to Vn registers. + + Return TRUE on success; otherwise return FALSE. */ +static bfd_boolean +parse_neon_operand_type (struct neon_type_el *vectype, char **ccp) +{ + char *str = *ccp; + + if (*str == '.') + { + if (! parse_neon_type_for_operand (vectype, &str)) + { + first_error (_("vector type expected")); + return FALSE; + } + } + else + return FALSE; + + *ccp = str; + + return TRUE; +} + +/* Parse a register of the type TYPE. + + Return PARSE_FAIL if the string pointed by *CCP is not a valid register + name or the parsed register is not of TYPE. + + Otherwise return the register number, and optionally fill in the actual + type of the register in *RTYPE when multiple alternatives were given, and + return the register shape and element index information in *TYPEINFO. + + IN_REG_LIST should be set with TRUE if the caller is parsing a register + list. */ + +static int +parse_typed_reg (char **ccp, aarch64_reg_type type, aarch64_reg_type *rtype, + struct neon_type_el *typeinfo, bfd_boolean in_reg_list) +{ + char *str = *ccp; + const reg_entry *reg = parse_reg (&str); + struct neon_type_el atype; + struct neon_type_el parsetype; + bfd_boolean is_typed_vecreg = FALSE; + + atype.defined = 0; + atype.type = NT_invtype; + atype.width = -1; + atype.index = 0; + + if (reg == NULL) + { + if (typeinfo) + *typeinfo = atype; + set_default_error (); + return PARSE_FAIL; + } + + if (! aarch64_check_reg_type (reg, type)) + { + DEBUG_TRACE ("reg type check failed"); + set_default_error (); + return PARSE_FAIL; + } + type = reg->type; + + if (type == REG_TYPE_VN + && parse_neon_operand_type (&parsetype, &str)) + { + /* Register if of the form Vn.[bhsdq]. */ + is_typed_vecreg = TRUE; + + if (parsetype.width == 0) + /* Expect index. In the new scheme we cannot have + Vn.[bhsdq] represent a scalar. Therefore any + Vn.[bhsdq] should have an index following it. + Except in reglists ofcourse. */ + atype.defined |= NTA_HASINDEX; + else + atype.defined |= NTA_HASTYPE; + + atype.type = parsetype.type; + atype.width = parsetype.width; + } + + if (skip_past_char (&str, '[')) + { + expressionS exp; + + /* Reject Sn[index] syntax. */ + if (!is_typed_vecreg) + { + first_error (_("this type of register can't be indexed")); + return PARSE_FAIL; + } + + if (in_reg_list == TRUE) + { + first_error (_("index not allowed inside register list")); + return PARSE_FAIL; + } + + atype.defined |= NTA_HASINDEX; + + my_get_expression (&exp, &str, GE_NO_PREFIX, 1); + + if (exp.X_op != O_constant) + { + first_error (_("constant expression required")); + return PARSE_FAIL; + } + + if (! skip_past_char (&str, ']')) + return PARSE_FAIL; + + atype.index = exp.X_add_number; + } + else if (!in_reg_list && (atype.defined & NTA_HASINDEX) != 0) + { + /* Indexed vector register expected. */ + first_error (_("indexed vector register expected")); + return PARSE_FAIL; + } + + /* A vector reg Vn should be typed or indexed. */ + if (type == REG_TYPE_VN && atype.defined == 0) + { + first_error (_("invalid use of vector register")); + } + + if (typeinfo) + *typeinfo = atype; + + if (rtype) + *rtype = type; + + *ccp = str; + + return reg->number; +} + +/* Parse register. + + Return the register number on success; return PARSE_FAIL otherwise. + + If RTYPE is not NULL, return in *RTYPE the (possibly restricted) type of + the register (e.g. NEON double or quad reg when either has been requested). + + If this is a NEON vector register with additional type information, fill + in the struct pointed to by VECTYPE (if non-NULL). + + This parser does not handle register list. */ + +static int +aarch64_reg_parse (char **ccp, aarch64_reg_type type, + aarch64_reg_type *rtype, struct neon_type_el *vectype) +{ + struct neon_type_el atype; + char *str = *ccp; + int reg = parse_typed_reg (&str, type, rtype, &atype, + /*in_reg_list= */ FALSE); + + if (reg == PARSE_FAIL) + return PARSE_FAIL; + + if (vectype) + *vectype = atype; + + *ccp = str; + + return reg; +} + +static inline bfd_boolean +eq_neon_type_el (struct neon_type_el e1, struct neon_type_el e2) +{ + return + e1.type == e2.type + && e1.defined == e2.defined + && e1.width == e2.width && e1.index == e2.index; +} + +/* This function parses the NEON register list. On success, it returns + the parsed register list information in the following encoded format: + + bit 18-22 | 13-17 | 7-11 | 2-6 | 0-1 + 4th regno | 3rd regno | 2nd regno | 1st regno | num_of_reg + + The information of the register shape and/or index is returned in + *VECTYPE. + + It returns PARSE_FAIL if the register list is invalid. + + The list contains one to four registers. + Each register can be one of: + <Vt>.<T>[<index>] + <Vt>.<T> + All <T> should be identical. + All <index> should be identical. + There are restrictions on <Vt> numbers which are checked later + (by reg_list_valid_p). */ + +static int +parse_neon_reg_list (char **ccp, struct neon_type_el *vectype) +{ + char *str = *ccp; + int nb_regs; + struct neon_type_el typeinfo, typeinfo_first; + int val, val_range; + int in_range; + int ret_val; + int i; + bfd_boolean error = FALSE; + bfd_boolean expect_index = FALSE; + + if (*str != '{') + { + set_syntax_error (_("expecting {")); + return PARSE_FAIL; + } + str++; + + nb_regs = 0; + typeinfo_first.defined = 0; + typeinfo_first.type = NT_invtype; + typeinfo_first.width = -1; + typeinfo_first.index = 0; + ret_val = 0; + val = -1; + val_range = -1; + in_range = 0; + do + { + if (in_range) + { + str++; /* skip over '-' */ + val_range = val; + } + val = parse_typed_reg (&str, REG_TYPE_VN, NULL, &typeinfo, + /*in_reg_list= */ TRUE); + if (val == PARSE_FAIL) + { + set_first_syntax_error (_("invalid vector register in list")); + error = TRUE; + continue; + } + /* reject [bhsd]n */ + if (typeinfo.defined == 0) + { + set_first_syntax_error (_("invalid scalar register in list")); + error = TRUE; + continue; + } + + if (typeinfo.defined & NTA_HASINDEX) + expect_index = TRUE; + + if (in_range) + { + if (val < val_range) + { + set_first_syntax_error + (_("invalid range in vector register list")); + error = TRUE; + } + val_range++; + } + else + { + val_range = val; + if (nb_regs == 0) + typeinfo_first = typeinfo; + else if (! eq_neon_type_el (typeinfo_first, typeinfo)) + { + set_first_syntax_error + (_("type mismatch in vector register list")); + error = TRUE; + } + } + if (! error) + for (i = val_range; i <= val; i++) + { + ret_val |= i << (5 * nb_regs); + nb_regs++; + } + in_range = 0; + } + while (skip_past_comma (&str) || (in_range = 1, *str == '-')); + + skip_whitespace (str); + if (*str != '}') + { + set_first_syntax_error (_("end of vector register list not found")); + error = TRUE; + } + str++; + + skip_whitespace (str); + + if (expect_index) + { + if (skip_past_char (&str, '[')) + { + expressionS exp; + + my_get_expression (&exp, &str, GE_NO_PREFIX, 1); + if (exp.X_op != O_constant) + { + set_first_syntax_error (_("constant expression required.")); + error = TRUE; + } + if (! skip_past_char (&str, ']')) + error = TRUE; + else + typeinfo_first.index = exp.X_add_number; + } + else + { + set_first_syntax_error (_("expected index")); + error = TRUE; + } + } + + if (nb_regs > 4) + { + set_first_syntax_error (_("too many registers in vector register list")); + error = TRUE; + } + else if (nb_regs == 0) + { + set_first_syntax_error (_("empty vector register list")); + error = TRUE; + } + + *ccp = str; + if (! error) + *vectype = typeinfo_first; + + return error ? PARSE_FAIL : (ret_val << 2) | (nb_regs - 1); +} + +/* Directives: register aliases. */ + +static reg_entry * +insert_reg_alias (char *str, int number, aarch64_reg_type type) +{ + reg_entry *new; + const char *name; + + if ((new = hash_find (aarch64_reg_hsh, str)) != 0) + { + if (new->builtin) + as_warn (_("ignoring attempt to redefine built-in register '%s'"), + str); + + /* Only warn about a redefinition if it's not defined as the + same register. */ + else if (new->number != number || new->type != type) + as_warn (_("ignoring redefinition of register alias '%s'"), str); + + return NULL; + } + + name = xstrdup (str); + new = xmalloc (sizeof (reg_entry)); + + new->name = name; + new->number = number; + new->type = type; + new->builtin = FALSE; + + if (hash_insert (aarch64_reg_hsh, name, (void *) new)) + abort (); + + return new; +} + +/* Look for the .req directive. This is of the form: + + new_register_name .req existing_register_name + + If we find one, or if it looks sufficiently like one that we want to + handle any error here, return TRUE. Otherwise return FALSE. */ + +static bfd_boolean +create_register_alias (char *newname, char *p) +{ + const reg_entry *old; + char *oldname, *nbuf; + size_t nlen; + + /* The input scrubber ensures that whitespace after the mnemonic is + collapsed to single spaces. */ + oldname = p; + if (strncmp (oldname, " .req ", 6) != 0) + return FALSE; + + oldname += 6; + if (*oldname == '\0') + return FALSE; + + old = hash_find (aarch64_reg_hsh, oldname); + if (!old) + { + as_warn (_("unknown register '%s' -- .req ignored"), oldname); + return TRUE; + } + + /* If TC_CASE_SENSITIVE is defined, then newname already points to + the desired alias name, and p points to its end. If not, then + the desired alias name is in the global original_case_string. */ +#ifdef TC_CASE_SENSITIVE + nlen = p - newname; +#else + newname = original_case_string; + nlen = strlen (newname); +#endif + + nbuf = alloca (nlen + 1); + memcpy (nbuf, newname, nlen); + nbuf[nlen] = '\0'; + + /* Create aliases under the new name as stated; an all-lowercase + version of the new name; and an all-uppercase version of the new + name. */ + if (insert_reg_alias (nbuf, old->number, old->type) != NULL) + { + for (p = nbuf; *p; p++) + *p = TOUPPER (*p); + + if (strncmp (nbuf, newname, nlen)) + { + /* If this attempt to create an additional alias fails, do not bother + trying to create the all-lower case alias. We will fail and issue + a second, duplicate error message. This situation arises when the + programmer does something like: + foo .req r0 + Foo .req r1 + The second .req creates the "Foo" alias but then fails to create + the artificial FOO alias because it has already been created by the + first .req. */ + if (insert_reg_alias (nbuf, old->number, old->type) == NULL) + return TRUE; + } + + for (p = nbuf; *p; p++) + *p = TOLOWER (*p); + + if (strncmp (nbuf, newname, nlen)) + insert_reg_alias (nbuf, old->number, old->type); + } + + return TRUE; +} + +/* Should never be called, as .req goes between the alias and the + register name, not at the beginning of the line. */ +static void +s_req (int a ATTRIBUTE_UNUSED) +{ + as_bad (_("invalid syntax for .req directive")); +} + +/* The .unreq directive deletes an alias which was previously defined + by .req. For example: + + my_alias .req r11 + .unreq my_alias */ + +static void +s_unreq (int a ATTRIBUTE_UNUSED) +{ + char *name; + char saved_char; + + name = input_line_pointer; + + while (*input_line_pointer != 0 + && *input_line_pointer != ' ' && *input_line_pointer != '\n') + ++input_line_pointer; + + saved_char = *input_line_pointer; + *input_line_pointer = 0; + + if (!*name) + as_bad (_("invalid syntax for .unreq directive")); + else + { + reg_entry *reg = hash_find (aarch64_reg_hsh, name); + + if (!reg) + as_bad (_("unknown register alias '%s'"), name); + else if (reg->builtin) + as_warn (_("ignoring attempt to undefine built-in register '%s'"), + name); + else + { + char *p; + char *nbuf; + + hash_delete (aarch64_reg_hsh, name, FALSE); + free ((char *) reg->name); + free (reg); + + /* Also locate the all upper case and all lower case versions. + Do not complain if we cannot find one or the other as it + was probably deleted above. */ + + nbuf = strdup (name); + for (p = nbuf; *p; p++) + *p = TOUPPER (*p); + reg = hash_find (aarch64_reg_hsh, nbuf); + if (reg) + { + hash_delete (aarch64_reg_hsh, nbuf, FALSE); + free ((char *) reg->name); + free (reg); + } + + for (p = nbuf; *p; p++) + *p = TOLOWER (*p); + reg = hash_find (aarch64_reg_hsh, nbuf); + if (reg) + { + hash_delete (aarch64_reg_hsh, nbuf, FALSE); + free ((char *) reg->name); + free (reg); + } + + free (nbuf); + } + } + + *input_line_pointer = saved_char; + demand_empty_rest_of_line (); +} + +/* Directives: Instruction set selection. */ + +#ifdef OBJ_ELF +/* This code is to handle mapping symbols as defined in the ARM AArch64 ELF + spec. (See "Mapping symbols", section 4.5.4, ARM AAELF64 version 0.05). + Note that previously, $a and $t has type STT_FUNC (BSF_OBJECT flag), + and $d has type STT_OBJECT (BSF_OBJECT flag). Now all three are untyped. */ + +/* Create a new mapping symbol for the transition to STATE. */ + +static void +make_mapping_symbol (enum mstate state, valueT value, fragS * frag) +{ + symbolS *symbolP; + const char *symname; + int type; + + switch (state) + { + case MAP_DATA: + symname = "$d"; + type = BSF_NO_FLAGS; + break; + case MAP_INSN: + symname = "$x"; + type = BSF_NO_FLAGS; + break; + default: + abort (); + } + + symbolP = symbol_new (symname, now_seg, value, frag); + symbol_get_bfdsym (symbolP)->flags |= type | BSF_LOCAL; + + /* Save the mapping symbols for future reference. Also check that + we do not place two mapping symbols at the same offset within a + frag. We'll handle overlap between frags in + check_mapping_symbols. + + If .fill or other data filling directive generates zero sized data, + the mapping symbol for the following code will have the same value + as the one generated for the data filling directive. In this case, + we replace the old symbol with the new one at the same address. */ + if (value == 0) + { + if (frag->tc_frag_data.first_map != NULL) + { + know (S_GET_VALUE (frag->tc_frag_data.first_map) == 0); + symbol_remove (frag->tc_frag_data.first_map, &symbol_rootP, + &symbol_lastP); + } + frag->tc_frag_data.first_map = symbolP; + } + if (frag->tc_frag_data.last_map != NULL) + { + know (S_GET_VALUE (frag->tc_frag_data.last_map) <= + S_GET_VALUE (symbolP)); + if (S_GET_VALUE (frag->tc_frag_data.last_map) == S_GET_VALUE (symbolP)) + symbol_remove (frag->tc_frag_data.last_map, &symbol_rootP, + &symbol_lastP); + } + frag->tc_frag_data.last_map = symbolP; +} + +/* We must sometimes convert a region marked as code to data during + code alignment, if an odd number of bytes have to be padded. The + code mapping symbol is pushed to an aligned address. */ + +static void +insert_data_mapping_symbol (enum mstate state, + valueT value, fragS * frag, offsetT bytes) +{ + /* If there was already a mapping symbol, remove it. */ + if (frag->tc_frag_data.last_map != NULL + && S_GET_VALUE (frag->tc_frag_data.last_map) == + frag->fr_address + value) + { + symbolS *symp = frag->tc_frag_data.last_map; + + if (value == 0) + { + know (frag->tc_frag_data.first_map == symp); + frag->tc_frag_data.first_map = NULL; + } + frag->tc_frag_data.last_map = NULL; + symbol_remove (symp, &symbol_rootP, &symbol_lastP); + } + + make_mapping_symbol (MAP_DATA, value, frag); + make_mapping_symbol (state, value + bytes, frag); +} + +static void mapping_state_2 (enum mstate state, int max_chars); + +/* Set the mapping state to STATE. Only call this when about to + emit some STATE bytes to the file. */ + +void +mapping_state (enum mstate state) +{ + enum mstate mapstate = seg_info (now_seg)->tc_segment_info_data.mapstate; + +#define TRANSITION(from, to) (mapstate == (from) && state == (to)) + + if (mapstate == state) + /* The mapping symbol has already been emitted. + There is nothing else to do. */ + return; + else if (TRANSITION (MAP_UNDEFINED, MAP_DATA)) + /* This case will be evaluated later in the next else. */ + return; + else if (TRANSITION (MAP_UNDEFINED, MAP_INSN)) + { + /* Only add the symbol if the offset is > 0: + if we're at the first frag, check it's size > 0; + if we're not at the first frag, then for sure + the offset is > 0. */ + struct frag *const frag_first = seg_info (now_seg)->frchainP->frch_root; + const int add_symbol = (frag_now != frag_first) + || (frag_now_fix () > 0); + + if (add_symbol) + make_mapping_symbol (MAP_DATA, (valueT) 0, frag_first); + } + + mapping_state_2 (state, 0); +#undef TRANSITION +} + +/* Same as mapping_state, but MAX_CHARS bytes have already been + allocated. Put the mapping symbol that far back. */ + +static void +mapping_state_2 (enum mstate state, int max_chars) +{ + enum mstate mapstate = seg_info (now_seg)->tc_segment_info_data.mapstate; + + if (!SEG_NORMAL (now_seg)) + return; + + if (mapstate == state) + /* The mapping symbol has already been emitted. + There is nothing else to do. */ + return; + + seg_info (now_seg)->tc_segment_info_data.mapstate = state; + make_mapping_symbol (state, (valueT) frag_now_fix () - max_chars, frag_now); +} +#else +#define mapping_state(x) /* nothing */ +#define mapping_state_2(x, y) /* nothing */ +#endif + +/* Directives: sectioning and alignment. */ + +static void +s_bss (int ignore ATTRIBUTE_UNUSED) +{ + /* We don't support putting frags in the BSS segment, we fake it by + marking in_bss, then looking at s_skip for clues. */ + subseg_set (bss_section, 0); + demand_empty_rest_of_line (); + mapping_state (MAP_DATA); +} + +static void +s_even (int ignore ATTRIBUTE_UNUSED) +{ + /* Never make frag if expect extra pass. */ + if (!need_pass_2) + frag_align (1, 0, 0); + + record_alignment (now_seg, 1); + + demand_empty_rest_of_line (); +} + +/* Directives: Literal pools. */ + +static literal_pool * +find_literal_pool (int size) +{ + literal_pool *pool; + + for (pool = list_of_pools; pool != NULL; pool = pool->next) + { + if (pool->section == now_seg + && pool->sub_section == now_subseg && pool->size == size) + break; + } + + return pool; +} + +static literal_pool * +find_or_make_literal_pool (int size) +{ + /* Next literal pool ID number. */ + static unsigned int latest_pool_num = 1; + literal_pool *pool; + + pool = find_literal_pool (size); + + if (pool == NULL) + { + /* Create a new pool. */ + pool = xmalloc (sizeof (*pool)); + if (!pool) + return NULL; + + /* Currently we always put the literal pool in the current text + section. If we were generating "small" model code where we + knew that all code and initialised data was within 1MB then + we could output literals to mergeable, read-only data + sections. */ + + pool->next_free_entry = 0; + pool->section = now_seg; + pool->sub_section = now_subseg; + pool->size = size; + pool->next = list_of_pools; + pool->symbol = NULL; + + /* Add it to the list. */ + list_of_pools = pool; + } + + /* New pools, and emptied pools, will have a NULL symbol. */ + if (pool->symbol == NULL) + { + pool->symbol = symbol_create (FAKE_LABEL_NAME, undefined_section, + (valueT) 0, &zero_address_frag); + pool->id = latest_pool_num++; + } + + /* Done. */ + return pool; +} + +/* Add the literal of size SIZE in *EXP to the relevant literal pool. + Return TRUE on success, otherwise return FALSE. */ +static bfd_boolean +add_to_lit_pool (expressionS *exp, int size) +{ + literal_pool *pool; + unsigned int entry; + + pool = find_or_make_literal_pool (size); + + /* Check if this literal value is already in the pool. */ + for (entry = 0; entry < pool->next_free_entry; entry++) + { + if ((pool->literals[entry].X_op == exp->X_op) + && (exp->X_op == O_constant) + && (pool->literals[entry].X_add_number == exp->X_add_number) + && (pool->literals[entry].X_unsigned == exp->X_unsigned)) + break; + + if ((pool->literals[entry].X_op == exp->X_op) + && (exp->X_op == O_symbol) + && (pool->literals[entry].X_add_number == exp->X_add_number) + && (pool->literals[entry].X_add_symbol == exp->X_add_symbol) + && (pool->literals[entry].X_op_symbol == exp->X_op_symbol)) + break; + } + + /* Do we need to create a new entry? */ + if (entry == pool->next_free_entry) + { + if (entry >= MAX_LITERAL_POOL_SIZE) + { + set_syntax_error (_("literal pool overflow")); + return FALSE; + } + + pool->literals[entry] = *exp; + pool->next_free_entry += 1; + } + + exp->X_op = O_symbol; + exp->X_add_number = ((int) entry) * size; + exp->X_add_symbol = pool->symbol; + + return TRUE; +} + +/* Can't use symbol_new here, so have to create a symbol and then at + a later date assign it a value. Thats what these functions do. */ + +static void +symbol_locate (symbolS * symbolP, + const char *name,/* It is copied, the caller can modify. */ + segT segment, /* Segment identifier (SEG_<something>). */ + valueT valu, /* Symbol value. */ + fragS * frag) /* Associated fragment. */ +{ + unsigned int name_length; + char *preserved_copy_of_name; + + name_length = strlen (name) + 1; /* +1 for \0. */ + obstack_grow (¬es, name, name_length); + preserved_copy_of_name = obstack_finish (¬es); + +#ifdef tc_canonicalize_symbol_name + preserved_copy_of_name = + tc_canonicalize_symbol_name (preserved_copy_of_name); +#endif + + S_SET_NAME (symbolP, preserved_copy_of_name); + + S_SET_SEGMENT (symbolP, segment); + S_SET_VALUE (symbolP, valu); + symbol_clear_list_pointers (symbolP); + + symbol_set_frag (symbolP, frag); + + /* Link to end of symbol chain. */ + { + extern int symbol_table_frozen; + + if (symbol_table_frozen) + abort (); + } + + symbol_append (symbolP, symbol_lastP, &symbol_rootP, &symbol_lastP); + + obj_symbol_new_hook (symbolP); + +#ifdef tc_symbol_new_hook + tc_symbol_new_hook (symbolP); +#endif + +#ifdef DEBUG_SYMS + verify_symbol_chain (symbol_rootP, symbol_lastP); +#endif /* DEBUG_SYMS */ +} + + +static void +s_ltorg (int ignored ATTRIBUTE_UNUSED) +{ + unsigned int entry; + literal_pool *pool; + char sym_name[20]; + int align; + + for (align = 2; align < 4; align++) + { + int size = 1 << align; + + pool = find_literal_pool (size); + if (pool == NULL || pool->symbol == NULL || pool->next_free_entry == 0) + continue; + + mapping_state (MAP_DATA); + + /* Align pool as you have word accesses. + Only make a frag if we have to. */ + if (!need_pass_2) + frag_align (align, 0, 0); + + record_alignment (now_seg, align); + + sprintf (sym_name, "$$lit_\002%x", pool->id); + + symbol_locate (pool->symbol, sym_name, now_seg, + (valueT) frag_now_fix (), frag_now); + symbol_table_insert (pool->symbol); + + for (entry = 0; entry < pool->next_free_entry; entry++) + /* First output the expression in the instruction to the pool. */ + emit_expr (&(pool->literals[entry]), size); /* .word|.xword */ + + /* Mark the pool as empty. */ + pool->next_free_entry = 0; + pool->symbol = NULL; + } +} + +#ifdef OBJ_ELF +/* Forward declarations for functions below, in the MD interface + section. */ +static fixS *fix_new_aarch64 (fragS *, int, short, expressionS *, int, int); +static struct reloc_table_entry * find_reloc_table_entry (char **); + +/* Directives: Data. */ +/* N.B. the support for relocation suffix in this directive needs to be + implemented properly. */ + +static void +s_aarch64_elf_cons (int nbytes) +{ + expressionS exp; + +#ifdef md_flush_pending_output + md_flush_pending_output (); +#endif + + if (is_it_end_of_statement ()) + { + demand_empty_rest_of_line (); + return; + } + +#ifdef md_cons_align + md_cons_align (nbytes); +#endif + + mapping_state (MAP_DATA); + do + { + struct reloc_table_entry *reloc; + + expression (&exp); + + if (exp.X_op != O_symbol) + emit_expr (&exp, (unsigned int) nbytes); + else + { + skip_past_char (&input_line_pointer, '#'); + if (skip_past_char (&input_line_pointer, ':')) + { + reloc = find_reloc_table_entry (&input_line_pointer); + if (reloc == NULL) + as_bad (_("unrecognized relocation suffix")); + else + as_bad (_("unimplemented relocation suffix")); + ignore_rest_of_line (); + return; + } + else + emit_expr (&exp, (unsigned int) nbytes); + } + } + while (*input_line_pointer++ == ','); + + /* Put terminator back into stream. */ + input_line_pointer--; + demand_empty_rest_of_line (); +} + +#endif /* OBJ_ELF */ + +/* Output a 32-bit word, but mark as an instruction. */ + +static void +s_aarch64_inst (int ignored ATTRIBUTE_UNUSED) +{ + expressionS exp; + +#ifdef md_flush_pending_output + md_flush_pending_output (); +#endif + + if (is_it_end_of_statement ()) + { + demand_empty_rest_of_line (); + return; + } + + if (!need_pass_2) + frag_align_code (2, 0); +#ifdef OBJ_ELF + mapping_state (MAP_INSN); +#endif + + do + { + expression (&exp); + if (exp.X_op != O_constant) + { + as_bad (_("constant expression required")); + ignore_rest_of_line (); + return; + } + + if (target_big_endian) + { + unsigned int val = exp.X_add_number; + exp.X_add_number = SWAP_32 (val); + } + emit_expr (&exp, 4); + } + while (*input_line_pointer++ == ','); + + /* Put terminator back into stream. */ + input_line_pointer--; + demand_empty_rest_of_line (); +} + +#ifdef OBJ_ELF +/* Emit BFD_RELOC_AARCH64_TLSDESC_CALL on the next BLR instruction. */ + +static void +s_tlsdesccall (int ignored ATTRIBUTE_UNUSED) +{ + expressionS exp; + + /* Since we're just labelling the code, there's no need to define a + mapping symbol. */ + expression (&exp); + /* Make sure there is enough room in this frag for the following + blr. This trick only works if the blr follows immediately after + the .tlsdesc directive. */ + frag_grow (4); + fix_new_aarch64 (frag_now, frag_more (0) - frag_now->fr_literal, 4, &exp, 0, + BFD_RELOC_AARCH64_TLSDESC_CALL); + + demand_empty_rest_of_line (); +} +#endif /* OBJ_ELF */ + +static void s_aarch64_arch (int); +static void s_aarch64_cpu (int); + +/* This table describes all the machine specific pseudo-ops the assembler + has to support. The fields are: + pseudo-op name without dot + function to call to execute this pseudo-op + Integer arg to pass to the function. */ + +const pseudo_typeS md_pseudo_table[] = { + /* Never called because '.req' does not start a line. */ + {"req", s_req, 0}, + {"unreq", s_unreq, 0}, + {"bss", s_bss, 0}, + {"even", s_even, 0}, + {"ltorg", s_ltorg, 0}, + {"pool", s_ltorg, 0}, + {"cpu", s_aarch64_cpu, 0}, + {"arch", s_aarch64_arch, 0}, + {"inst", s_aarch64_inst, 0}, +#ifdef OBJ_ELF + {"tlsdesccall", s_tlsdesccall, 0}, + {"word", s_aarch64_elf_cons, 4}, + {"long", s_aarch64_elf_cons, 4}, + {"xword", s_aarch64_elf_cons, 8}, + {"dword", s_aarch64_elf_cons, 8}, +#endif + {0, 0, 0} +}; + + +/* Check whether STR points to a register name followed by a comma or the + end of line; REG_TYPE indicates which register types are checked + against. Return TRUE if STR is such a register name; otherwise return + FALSE. The function does not intend to produce any diagnostics, but since + the register parser aarch64_reg_parse, which is called by this function, + does produce diagnostics, we call clear_error to clear any diagnostics + that may be generated by aarch64_reg_parse. + Also, the function returns FALSE directly if there is any user error + present at the function entry. This prevents the existing diagnostics + state from being spoiled. + The function currently serves parse_constant_immediate and + parse_big_immediate only. */ +static bfd_boolean +reg_name_p (char *str, aarch64_reg_type reg_type) +{ + int reg; + + /* Prevent the diagnostics state from being spoiled. */ + if (error_p ()) + return FALSE; + + reg = aarch64_reg_parse (&str, reg_type, NULL, NULL); + + /* Clear the parsing error that may be set by the reg parser. */ + clear_error (); + + if (reg == PARSE_FAIL) + return FALSE; + + skip_whitespace (str); + if (*str == ',' || is_end_of_line[(unsigned int) *str]) + return TRUE; + + return FALSE; +} + +/* Parser functions used exclusively in instruction operands. */ + +/* Parse an immediate expression which may not be constant. + + To prevent the expression parser from pushing a register name + into the symbol table as an undefined symbol, firstly a check is + done to find out whether STR is a valid register name followed + by a comma or the end of line. Return FALSE if STR is such a + string. */ + +static bfd_boolean +parse_immediate_expression (char **str, expressionS *exp) +{ + if (reg_name_p (*str, REG_TYPE_R_Z_BHSDQ_V)) + { + set_recoverable_error (_("immediate operand required")); + return FALSE; + } + + my_get_expression (exp, str, GE_OPT_PREFIX, 1); + + if (exp->X_op == O_absent) + { + set_fatal_syntax_error (_("missing immediate expression")); + return FALSE; + } + + return TRUE; +} + +/* Constant immediate-value read function for use in insn parsing. + STR points to the beginning of the immediate (with the optional + leading #); *VAL receives the value. + + Return TRUE on success; otherwise return FALSE. */ + +static bfd_boolean +parse_constant_immediate (char **str, int64_t * val) +{ + expressionS exp; + + if (! parse_immediate_expression (str, &exp)) + return FALSE; + + if (exp.X_op != O_constant) + { + set_syntax_error (_("constant expression required")); + return FALSE; + } + + *val = exp.X_add_number; + return TRUE; +} + +static uint32_t +encode_imm_float_bits (uint32_t imm) +{ + return ((imm >> 19) & 0x7f) /* b[25:19] -> b[6:0] */ + | ((imm >> (31 - 7)) & 0x80); /* b[31] -> b[7] */ +} + +/* Return TRUE if IMM is a valid floating-point immediate; return FALSE + otherwise. */ +static bfd_boolean +aarch64_imm_float_p (uint32_t imm) +{ + /* 3 32222222 2221111111111 + 1 09876543 21098765432109876543210 + n Eeeeeexx xxxx0000000000000000000 */ + uint32_t e; + + e = (imm >> 30) & 0x1; + if (e == 0) + e = 0x3e000000; + else + e = 0x40000000; + return (imm & 0x7ffff) == 0 /* lower 19 bits are 0 */ + && ((imm & 0x7e000000) == e); /* bits 25-29 = ~ bit 30 */ +} + +/* Note: this accepts the floating-point 0 constant. */ +static bfd_boolean +parse_aarch64_imm_float (char **ccp, int *immed) +{ + char *str = *ccp; + char *fpnum; + LITTLENUM_TYPE words[MAX_LITTLENUMS]; + int found_fpchar = 0; + + skip_past_char (&str, '#'); + + /* We must not accidentally parse an integer as a floating-point number. Make + sure that the value we parse is not an integer by checking for special + characters '.' or 'e'. + FIXME: This is a hack that is not very efficient, but doing better is + tricky because type information isn't in a very usable state at parse + time. */ + fpnum = str; + skip_whitespace (fpnum); + + if (strncmp (fpnum, "0x", 2) == 0) + return FALSE; + else + { + for (; *fpnum != '\0' && *fpnum != ' ' && *fpnum != '\n'; fpnum++) + if (*fpnum == '.' || *fpnum == 'e' || *fpnum == 'E') + { + found_fpchar = 1; + break; + } + + if (!found_fpchar) + return FALSE; + } + + if ((str = atof_ieee (str, 's', words)) != NULL) + { + unsigned fpword = 0; + int i; + + /* Our FP word must be 32 bits (single-precision FP). */ + for (i = 0; i < 32 / LITTLENUM_NUMBER_OF_BITS; i++) + { + fpword <<= LITTLENUM_NUMBER_OF_BITS; + fpword |= words[i]; + } + + if (aarch64_imm_float_p (fpword) || (fpword & 0x7fffffff) == 0) + *immed = fpword; + else + goto invalid_fp; + + *ccp = str; + + return TRUE; + } + +invalid_fp: + set_fatal_syntax_error (_("invalid floating-point constant")); + return FALSE; +} + +/* Less-generic immediate-value read function with the possibility of loading + a big (64-bit) immediate, as required by AdvSIMD Modified immediate + instructions. + + To prevent the expression parser from pushing a register name into the + symbol table as an undefined symbol, a check is firstly done to find + out whether STR is a valid register name followed by a comma or the end + of line. Return FALSE if STR is such a register. */ + +static bfd_boolean +parse_big_immediate (char **str, int64_t *imm) +{ + char *ptr = *str; + + if (reg_name_p (ptr, REG_TYPE_R_Z_BHSDQ_V)) + { + set_syntax_error (_("immediate operand required")); + return FALSE; + } + + my_get_expression (&inst.reloc.exp, &ptr, GE_OPT_PREFIX, 1); + + if (inst.reloc.exp.X_op == O_constant) + *imm = inst.reloc.exp.X_add_number; + + *str = ptr; + + return TRUE; +} + +/* Set operand IDX of the *INSTR that needs a GAS internal fixup. + if NEED_LIBOPCODES is non-zero, the fixup will need + assistance from the libopcodes. */ + +static inline void +aarch64_set_gas_internal_fixup (struct reloc *reloc, + const aarch64_opnd_info *operand, + int need_libopcodes_p) +{ + reloc->type = BFD_RELOC_AARCH64_GAS_INTERNAL_FIXUP; + reloc->opnd = operand->type; + if (need_libopcodes_p) + reloc->need_libopcodes_p = 1; +}; + +/* Return TRUE if the instruction needs to be fixed up later internally by + the GAS; otherwise return FALSE. */ + +static inline bfd_boolean +aarch64_gas_internal_fixup_p (void) +{ + return inst.reloc.type == BFD_RELOC_AARCH64_GAS_INTERNAL_FIXUP; +} + +/* Assign the immediate value to the relavant field in *OPERAND if + RELOC->EXP is a constant expression; otherwise, flag that *OPERAND + needs an internal fixup in a later stage. + ADDR_OFF_P determines whether it is the field ADDR.OFFSET.IMM or + IMM.VALUE that may get assigned with the constant. */ +static inline void +assign_imm_if_const_or_fixup_later (struct reloc *reloc, + aarch64_opnd_info *operand, + int addr_off_p, + int need_libopcodes_p, + int skip_p) +{ + if (reloc->exp.X_op == O_constant) + { + if (addr_off_p) + operand->addr.offset.imm = reloc->exp.X_add_number; + else + operand->imm.value = reloc->exp.X_add_number; + reloc->type = BFD_RELOC_UNUSED; + } + else + { + aarch64_set_gas_internal_fixup (reloc, operand, need_libopcodes_p); + /* Tell libopcodes to ignore this operand or not. This is helpful + when one of the operands needs to be fixed up later but we need + libopcodes to check the other operands. */ + operand->skip = skip_p; + } +} + +/* Relocation modifiers. Each entry in the table contains the textual + name for the relocation which may be placed before a symbol used as + a load/store offset, or add immediate. It must be surrounded by a + leading and trailing colon, for example: + + ldr x0, [x1, #:rello:varsym] + add x0, x1, #:rello:varsym */ + +struct reloc_table_entry +{ + const char *name; + int pc_rel; + bfd_reloc_code_real_type adrp_type; + bfd_reloc_code_real_type movw_type; + bfd_reloc_code_real_type add_type; + bfd_reloc_code_real_type ldst_type; +}; + +static struct reloc_table_entry reloc_table[] = { + /* Low 12 bits of absolute address: ADD/i and LDR/STR */ + {"lo12", 0, + 0, + 0, + BFD_RELOC_AARCH64_ADD_LO12, + BFD_RELOC_AARCH64_LDST_LO12}, + + /* Higher 21 bits of pc-relative page offset: ADRP */ + {"pg_hi21", 1, + BFD_RELOC_AARCH64_ADR_HI21_PCREL, + 0, + 0, + 0}, + + /* Higher 21 bits of pc-relative page offset: ADRP, no check */ + {"pg_hi21_nc", 1, + BFD_RELOC_AARCH64_ADR_HI21_NC_PCREL, + 0, + 0, + 0}, + + /* Most significant bits 0-15 of unsigned address/value: MOVZ */ + {"abs_g0", 0, + 0, + BFD_RELOC_AARCH64_MOVW_G0, + 0, + 0}, + + /* Most significant bits 0-15 of signed address/value: MOVN/Z */ + {"abs_g0_s", 0, + 0, + BFD_RELOC_AARCH64_MOVW_G0_S, + 0, + 0}, + + /* Less significant bits 0-15 of address/value: MOVK, no check */ + {"abs_g0_nc", 0, + 0, + BFD_RELOC_AARCH64_MOVW_G0_NC, + 0, + 0}, + + /* Most significant bits 16-31 of unsigned address/value: MOVZ */ + {"abs_g1", 0, + 0, + BFD_RELOC_AARCH64_MOVW_G1, + 0, + 0}, + + /* Most significant bits 16-31 of signed address/value: MOVN/Z */ + {"abs_g1_s", 0, + 0, + BFD_RELOC_AARCH64_MOVW_G1_S, + 0, + 0}, + + /* Less significant bits 16-31 of address/value: MOVK, no check */ + {"abs_g1_nc", 0, + 0, + BFD_RELOC_AARCH64_MOVW_G1_NC, + 0, + 0}, + + /* Most significant bits 32-47 of unsigned address/value: MOVZ */ + {"abs_g2", 0, + 0, + BFD_RELOC_AARCH64_MOVW_G2, + 0, + 0}, + + /* Most significant bits 32-47 of signed address/value: MOVN/Z */ + {"abs_g2_s", 0, + 0, + BFD_RELOC_AARCH64_MOVW_G2_S, + 0, + 0}, + + /* Less significant bits 32-47 of address/value: MOVK, no check */ + {"abs_g2_nc", 0, + 0, + BFD_RELOC_AARCH64_MOVW_G2_NC, + 0, + 0}, + + /* Most significant bits 48-63 of signed/unsigned address/value: MOVZ */ + {"abs_g3", 0, + 0, + BFD_RELOC_AARCH64_MOVW_G3, + 0, + 0}, + /* Get to the page containing GOT entry for a symbol. */ + {"got", 1, + BFD_RELOC_AARCH64_ADR_GOT_PAGE, + 0, + 0, + 0}, + /* 12 bit offset into the page containing GOT entry for that symbol. */ + {"got_lo12", 0, + 0, + 0, + 0, + BFD_RELOC_AARCH64_LD64_GOT_LO12_NC}, + + /* Get to the page containing GOT TLS entry for a symbol */ + {"tlsgd", 0, + BFD_RELOC_AARCH64_TLSGD_ADR_PAGE21, + 0, + 0, + 0}, + + /* 12 bit offset into the page containing GOT TLS entry for a symbol */ + {"tlsgd_lo12", 0, + 0, + 0, + BFD_RELOC_AARCH64_TLSGD_ADD_LO12_NC, + 0}, + + /* Get to the page containing GOT TLS entry for a symbol */ + {"tlsdesc", 0, + BFD_RELOC_AARCH64_TLSDESC_ADR_PAGE, + 0, + 0, + 0}, + + /* 12 bit offset into the page containing GOT TLS entry for a symbol */ + {"tlsdesc_lo12", 0, + 0, + 0, + BFD_RELOC_AARCH64_TLSDESC_ADD_LO12_NC, + BFD_RELOC_AARCH64_TLSDESC_LD64_LO12_NC}, + + /* Get to the page containing GOT TLS entry for a symbol */ + {"gottprel", 0, + BFD_RELOC_AARCH64_TLSIE_ADR_GOTTPREL_PAGE21, + 0, + 0, + 0}, + + /* 12 bit offset into the page containing GOT TLS entry for a symbol */ + {"gottprel_lo12", 0, + 0, + 0, + 0, + BFD_RELOC_AARCH64_TLSIE_LD64_GOTTPREL_LO12_NC}, + + /* Get tp offset for a symbol. */ + {"tprel", 0, + 0, + 0, + BFD_RELOC_AARCH64_TLSLE_ADD_TPREL_LO12, + 0}, + + /* Get tp offset for a symbol. */ + {"tprel_lo12", 0, + 0, + 0, + BFD_RELOC_AARCH64_TLSLE_ADD_TPREL_LO12, + 0}, + + /* Get tp offset for a symbol. */ + {"tprel_hi12", 0, + 0, + 0, + BFD_RELOC_AARCH64_TLSLE_ADD_TPREL_HI12, + 0}, + + /* Get tp offset for a symbol. */ + {"tprel_lo12_nc", 0, + 0, + 0, + BFD_RELOC_AARCH64_TLSLE_ADD_TPREL_LO12_NC, + 0}, + + /* Most significant bits 32-47 of address/value: MOVZ. */ + {"tprel_g2", 0, + 0, + BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G2, + 0, + 0}, + + /* Most significant bits 16-31 of address/value: MOVZ. */ + {"tprel_g1", 0, + 0, + BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G1, + 0, + 0}, + + /* Most significant bits 16-31 of address/value: MOVZ, no check. */ + {"tprel_g1_nc", 0, + 0, + BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G1_NC, + 0, + 0}, + + /* Most significant bits 0-15 of address/value: MOVZ. */ + {"tprel_g0", 0, + 0, + BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G0, + 0, + 0}, + + /* Most significant bits 0-15 of address/value: MOVZ, no check. */ + {"tprel_g0_nc", 0, + 0, + BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G0_NC, + 0, + 0}, +}; + +/* Given the address of a pointer pointing to the textual name of a + relocation as may appear in assembler source, attempt to find its + details in reloc_table. The pointer will be updated to the character + after the trailing colon. On failure, NULL will be returned; + otherwise return the reloc_table_entry. */ + +static struct reloc_table_entry * +find_reloc_table_entry (char **str) +{ + unsigned int i; + for (i = 0; i < ARRAY_SIZE (reloc_table); i++) + { + int length = strlen (reloc_table[i].name); + + if (strncasecmp (reloc_table[i].name, *str, length) == 0 + && (*str)[length] == ':') + { + *str += (length + 1); + return &reloc_table[i]; + } + } + + return NULL; +} + +/* Mode argument to parse_shift and parser_shifter_operand. */ +enum parse_shift_mode +{ + SHIFTED_ARITH_IMM, /* "rn{,lsl|lsr|asl|asr|uxt|sxt #n}" or + "#imm{,lsl #n}" */ + SHIFTED_LOGIC_IMM, /* "rn{,lsl|lsr|asl|asr|ror #n}" or + "#imm" */ + SHIFTED_LSL, /* bare "lsl #n" */ + SHIFTED_LSL_MSL, /* "lsl|msl #n" */ + SHIFTED_REG_OFFSET /* [su]xtw|sxtx {#n} or lsl #n */ +}; + +/* Parse a <shift> operator on an AArch64 data processing instruction. + Return TRUE on success; otherwise return FALSE. */ +static bfd_boolean +parse_shift (char **str, aarch64_opnd_info *operand, enum parse_shift_mode mode) +{ + const struct aarch64_name_value_pair *shift_op; + enum aarch64_modifier_kind kind; + expressionS exp; + int exp_has_prefix; + char *s = *str; + char *p = s; + + for (p = *str; ISALPHA (*p); p++) + ; + + if (p == *str) + { + set_syntax_error (_("shift expression expected")); + return FALSE; + } + + shift_op = hash_find_n (aarch64_shift_hsh, *str, p - *str); + + if (shift_op == NULL) + { + set_syntax_error (_("shift operator expected")); + return FALSE; + } + + kind = aarch64_get_operand_modifier (shift_op); + + if (kind == AARCH64_MOD_MSL && mode != SHIFTED_LSL_MSL) + { + set_syntax_error (_("invalid use of 'MSL'")); + return FALSE; + } + + switch (mode) + { + case SHIFTED_LOGIC_IMM: + if (aarch64_extend_operator_p (kind) == TRUE) + { + set_syntax_error (_("extending shift is not permitted")); + return FALSE; + } + break; + + case SHIFTED_ARITH_IMM: + if (kind == AARCH64_MOD_ROR) + { + set_syntax_error (_("'ROR' shift is not permitted")); + return FALSE; + } + break; + + case SHIFTED_LSL: + if (kind != AARCH64_MOD_LSL) + { + set_syntax_error (_("only 'LSL' shift is permitted")); + return FALSE; + } + break; + + case SHIFTED_REG_OFFSET: + if (kind != AARCH64_MOD_UXTW && kind != AARCH64_MOD_LSL + && kind != AARCH64_MOD_SXTW && kind != AARCH64_MOD_SXTX) + { + set_fatal_syntax_error + (_("invalid shift for the register offset addressing mode")); + return FALSE; + } + break; + + case SHIFTED_LSL_MSL: + if (kind != AARCH64_MOD_LSL && kind != AARCH64_MOD_MSL) + { + set_syntax_error (_("invalid shift operator")); + return FALSE; + } + break; + + default: + abort (); + } + + /* Whitespace can appear here if the next thing is a bare digit. */ + skip_whitespace (p); + + /* Parse shift amount. */ + exp_has_prefix = 0; + if (mode == SHIFTED_REG_OFFSET && *p == ']') + exp.X_op = O_absent; + else + { + if (is_immediate_prefix (*p)) + { + p++; + exp_has_prefix = 1; + } + my_get_expression (&exp, &p, GE_NO_PREFIX, 0); + } + if (exp.X_op == O_absent) + { + if (aarch64_extend_operator_p (kind) == FALSE || exp_has_prefix) + { + set_syntax_error (_("missing shift amount")); + return FALSE; + } + operand->shifter.amount = 0; + } + else if (exp.X_op != O_constant) + { + set_syntax_error (_("constant shift amount required")); + return FALSE; + } + else if (exp.X_add_number < 0 || exp.X_add_number > 63) + { + set_fatal_syntax_error (_("shift amount out of range 0 to 63")); + return FALSE; + } + else + { + operand->shifter.amount = exp.X_add_number; + operand->shifter.amount_present = 1; + } + + operand->shifter.operator_present = 1; + operand->shifter.kind = kind; + + *str = p; + return TRUE; +} + +/* Parse a <shifter_operand> for a data processing instruction: + + #<immediate> + #<immediate>, LSL #imm + + Validation of immediate operands is deferred to md_apply_fix. + + Return TRUE on success; otherwise return FALSE. */ + +static bfd_boolean +parse_shifter_operand_imm (char **str, aarch64_opnd_info *operand, + enum parse_shift_mode mode) +{ + char *p; + + if (mode != SHIFTED_ARITH_IMM && mode != SHIFTED_LOGIC_IMM) + return FALSE; + + p = *str; + + /* Accept an immediate expression. */ + if (! my_get_expression (&inst.reloc.exp, &p, GE_OPT_PREFIX, 1)) + return FALSE; + + /* Accept optional LSL for arithmetic immediate values. */ + if (mode == SHIFTED_ARITH_IMM && skip_past_comma (&p)) + if (! parse_shift (&p, operand, SHIFTED_LSL)) + return FALSE; + + /* Not accept any shifter for logical immediate values. */ + if (mode == SHIFTED_LOGIC_IMM && skip_past_comma (&p) + && parse_shift (&p, operand, mode)) + { + set_syntax_error (_("unexpected shift operator")); + return FALSE; + } + + *str = p; + return TRUE; +} + +/* Parse a <shifter_operand> for a data processing instruction: + + <Rm> + <Rm>, <shift> + #<immediate> + #<immediate>, LSL #imm + + where <shift> is handled by parse_shift above, and the last two + cases are handled by the function above. + + Validation of immediate operands is deferred to md_apply_fix. + + Return TRUE on success; otherwise return FALSE. */ + +static bfd_boolean +parse_shifter_operand (char **str, aarch64_opnd_info *operand, + enum parse_shift_mode mode) +{ + int reg; + int isreg32, isregzero; + enum aarch64_operand_class opd_class + = aarch64_get_operand_class (operand->type); + + if ((reg = + aarch64_reg_parse_32_64 (str, 0, 0, &isreg32, &isregzero)) != PARSE_FAIL) + { + if (opd_class == AARCH64_OPND_CLASS_IMMEDIATE) + { + set_syntax_error (_("unexpected register in the immediate operand")); + return FALSE; + } + + if (!isregzero && reg == REG_SP) + { + set_syntax_error (BAD_SP); + return FALSE; + } + + operand->reg.regno = reg; + operand->qualifier = isreg32 ? AARCH64_OPND_QLF_W : AARCH64_OPND_QLF_X; + + /* Accept optional shift operation on register. */ + if (! skip_past_comma (str)) + return TRUE; + + if (! parse_shift (str, operand, mode)) + return FALSE; + + return TRUE; + } + else if (opd_class == AARCH64_OPND_CLASS_MODIFIED_REG) + { + set_syntax_error + (_("integer register expected in the extended/shifted operand " + "register")); + return FALSE; + } + + /* We have a shifted immediate variable. */ + return parse_shifter_operand_imm (str, operand, mode); +} + +/* Return TRUE on success; return FALSE otherwise. */ + +static bfd_boolean +parse_shifter_operand_reloc (char **str, aarch64_opnd_info *operand, + enum parse_shift_mode mode) +{ + char *p = *str; + + /* Determine if we have the sequence of characters #: or just : + coming next. If we do, then we check for a :rello: relocation + modifier. If we don't, punt the whole lot to + parse_shifter_operand. */ + + if ((p[0] == '#' && p[1] == ':') || p[0] == ':') + { + struct reloc_table_entry *entry; + + if (p[0] == '#') + p += 2; + else + p++; + *str = p; + + /* Try to parse a relocation. Anything else is an error. */ + if (!(entry = find_reloc_table_entry (str))) + { + set_syntax_error (_("unknown relocation modifier")); + return FALSE; + } + + if (entry->add_type == 0) + { + set_syntax_error + (_("this relocation modifier is not allowed on this instruction")); + return FALSE; + } + + /* Save str before we decompose it. */ + p = *str; + + /* Next, we parse the expression. */ + if (! my_get_expression (&inst.reloc.exp, str, GE_NO_PREFIX, 1)) + return FALSE; + + /* Record the relocation type (use the ADD variant here). */ + inst.reloc.type = entry->add_type; + inst.reloc.pc_rel = entry->pc_rel; + + /* If str is empty, we've reached the end, stop here. */ + if (**str == '\0') + return TRUE; + + /* Otherwise, we have a shifted reloc modifier, so rewind to + recover the variable name and continue parsing for the shifter. */ + *str = p; + return parse_shifter_operand_imm (str, operand, mode); + } + + return parse_shifter_operand (str, operand, mode); +} + +/* Parse all forms of an address expression. Information is written + to *OPERAND and/or inst.reloc. + + The A64 instruction set has the following addressing modes: + + Offset + [base] // in SIMD ld/st structure + [base{,#0}] // in ld/st exclusive + [base{,#imm}] + [base,Xm{,LSL #imm}] + [base,Xm,SXTX {#imm}] + [base,Wm,(S|U)XTW {#imm}] + Pre-indexed + [base,#imm]! + Post-indexed + [base],#imm + [base],Xm // in SIMD ld/st structure + PC-relative (literal) + label + =immediate + + (As a convenience, the notation "=immediate" is permitted in conjunction + with the pc-relative literal load instructions to automatically place an + immediate value or symbolic address in a nearby literal pool and generate + a hidden label which references it.) + + Upon a successful parsing, the address structure in *OPERAND will be + filled in the following way: + + .base_regno = <base> + .offset.is_reg // 1 if the offset is a register + .offset.imm = <imm> + .offset.regno = <Rm> + + For different addressing modes defined in the A64 ISA: + + Offset + .pcrel=0; .preind=1; .postind=0; .writeback=0 + Pre-indexed + .pcrel=0; .preind=1; .postind=0; .writeback=1 + Post-indexed + .pcrel=0; .preind=0; .postind=1; .writeback=1 + PC-relative (literal) + .pcrel=1; .preind=1; .postind=0; .writeback=0 + + The shift/extension information, if any, will be stored in .shifter. + + It is the caller's responsibility to check for addressing modes not + supported by the instruction, and to set inst.reloc.type. */ + +static bfd_boolean +parse_address_main (char **str, aarch64_opnd_info *operand, int reloc, + int accept_reg_post_index) +{ + char *p = *str; + int reg; + int isreg32, isregzero; + expressionS *exp = &inst.reloc.exp; + + if (! skip_past_char (&p, '[')) + { + /* =immediate or label. */ + operand->addr.pcrel = 1; + operand->addr.preind = 1; + + if (skip_past_char (&p, '=')) + /* =immediate; need to generate the literal in the liternal pool. */ + inst.gen_lit_pool = 1; + + if (! my_get_expression (exp, &p, GE_NO_PREFIX, 1)) + { + set_syntax_error (_("invalid address")); + return FALSE; + } + + *str = p; + return TRUE; + } + + /* [ */ + + /* Accept SP and reject ZR */ + reg = aarch64_reg_parse_32_64 (&p, 0, 1, &isreg32, &isregzero); + if (reg == PARSE_FAIL || isreg32) + { + set_syntax_error (_(get_reg_expected_msg (REG_TYPE_R_64))); + return FALSE; + } + operand->addr.base_regno = reg; + + /* [Xn */ + if (skip_past_comma (&p)) + { + /* [Xn, */ + operand->addr.preind = 1; + + /* Reject SP and accept ZR */ + reg = aarch64_reg_parse_32_64 (&p, 1, 0, &isreg32, &isregzero); + if (reg != PARSE_FAIL) + { + /* [Xn,Rm */ + operand->addr.offset.regno = reg; + operand->addr.offset.is_reg = 1; + /* Shifted index. */ + if (skip_past_comma (&p)) + { + /* [Xn,Rm, */ + if (! parse_shift (&p, operand, SHIFTED_REG_OFFSET)) + /* Use the diagnostics set in parse_shift, so not set new + error message here. */ + return FALSE; + } + /* We only accept: + [base,Xm{,LSL #imm}] + [base,Xm,SXTX {#imm}] + [base,Wm,(S|U)XTW {#imm}] */ + if (operand->shifter.kind == AARCH64_MOD_NONE + || operand->shifter.kind == AARCH64_MOD_LSL + || operand->shifter.kind == AARCH64_MOD_SXTX) + { + if (isreg32) + { + set_syntax_error (_("invalid use of 32-bit register offset")); + return FALSE; + } + } + else if (!isreg32) + { + set_syntax_error (_("invalid use of 64-bit register offset")); + return FALSE; + } + } + else + { + /* [Xn,#:<reloc_op>:<symbol> */ + skip_past_char (&p, '#'); + if (reloc && skip_past_char (&p, ':')) + { + struct reloc_table_entry *entry; + + /* Try to parse a relocation modifier. Anything else is + an error. */ + if (!(entry = find_reloc_table_entry (&p))) + { + set_syntax_error (_("unknown relocation modifier")); + return FALSE; + } + + if (entry->ldst_type == 0) + { + set_syntax_error + (_("this relocation modifier is not allowed on this " + "instruction")); + return FALSE; + } + + /* [Xn,#:<reloc_op>: */ + /* We now have the group relocation table entry corresponding to + the name in the assembler source. Next, we parse the + expression. */ + if (! my_get_expression (exp, &p, GE_NO_PREFIX, 1)) + { + set_syntax_error (_("invalid relocation expression")); + return FALSE; + } + + /* [Xn,#:<reloc_op>:<expr> */ + /* Record the load/store relocation type. */ + inst.reloc.type = entry->ldst_type; + inst.reloc.pc_rel = entry->pc_rel; + } + else if (! my_get_expression (exp, &p, GE_OPT_PREFIX, 1)) + { + set_syntax_error (_("invalid expression in the address")); + return FALSE; + } + /* [Xn,<expr> */ + } + } + + if (! skip_past_char (&p, ']')) + { + set_syntax_error (_("']' expected")); + return FALSE; + } + + if (skip_past_char (&p, '!')) + { + if (operand->addr.preind && operand->addr.offset.is_reg) + { + set_syntax_error (_("register offset not allowed in pre-indexed " + "addressing mode")); + return FALSE; + } + /* [Xn]! */ + operand->addr.writeback = 1; + } + else if (skip_past_comma (&p)) + { + /* [Xn], */ + operand->addr.postind = 1; + operand->addr.writeback = 1; + + if (operand->addr.preind) + { + set_syntax_error (_("cannot combine pre- and post-indexing")); + return FALSE; + } + + if (accept_reg_post_index + && (reg = aarch64_reg_parse_32_64 (&p, 1, 1, &isreg32, + &isregzero)) != PARSE_FAIL) + { + /* [Xn],Xm */ + if (isreg32) + { + set_syntax_error (_("invalid 32-bit register offset")); + return FALSE; + } + operand->addr.offset.regno = reg; + operand->addr.offset.is_reg = 1; + } + else if (! my_get_expression (exp, &p, GE_OPT_PREFIX, 1)) + { + /* [Xn],#expr */ + set_syntax_error (_("invalid expression in the address")); + return FALSE; + } + } + + /* If at this point neither .preind nor .postind is set, we have a + bare [Rn]{!}; reject [Rn]! but accept [Rn] as a shorthand for [Rn,#0]. */ + if (operand->addr.preind == 0 && operand->addr.postind == 0) + { + if (operand->addr.writeback) + { + /* Reject [Rn]! */ + set_syntax_error (_("missing offset in the pre-indexed address")); + return FALSE; + } + operand->addr.preind = 1; + inst.reloc.exp.X_op = O_constant; + inst.reloc.exp.X_add_number = 0; + } + + *str = p; + return TRUE; +} + +/* Return TRUE on success; otherwise return FALSE. */ +static bfd_boolean +parse_address (char **str, aarch64_opnd_info *operand, + int accept_reg_post_index) +{ + return parse_address_main (str, operand, 0, accept_reg_post_index); +} + +/* Return TRUE on success; otherwise return FALSE. */ +static bfd_boolean +parse_address_reloc (char **str, aarch64_opnd_info *operand) +{ + return parse_address_main (str, operand, 1, 0); +} + +/* Parse an operand for a MOVZ, MOVN or MOVK instruction. + Return TRUE on success; otherwise return FALSE. */ +static bfd_boolean +parse_half (char **str, int *internal_fixup_p) +{ + char *p, *saved; + int dummy; + + p = *str; + skip_past_char (&p, '#'); + + gas_assert (internal_fixup_p); + *internal_fixup_p = 0; + + if (*p == ':') + { + struct reloc_table_entry *entry; + + /* Try to parse a relocation. Anything else is an error. */ + ++p; + if (!(entry = find_reloc_table_entry (&p))) + { + set_syntax_error (_("unknown relocation modifier")); + return FALSE; + } + + if (entry->movw_type == 0) + { + set_syntax_error + (_("this relocation modifier is not allowed on this instruction")); + return FALSE; + } + + inst.reloc.type = entry->movw_type; + } + else + *internal_fixup_p = 1; + + /* Avoid parsing a register as a general symbol. */ + saved = p; + if (aarch64_reg_parse_32_64 (&p, 0, 0, &dummy, &dummy) != PARSE_FAIL) + return FALSE; + p = saved; + + if (! my_get_expression (&inst.reloc.exp, &p, GE_NO_PREFIX, 1)) + return FALSE; + + *str = p; + return TRUE; +} + +/* Parse an operand for an ADRP instruction: + ADRP <Xd>, <label> + Return TRUE on success; otherwise return FALSE. */ + +static bfd_boolean +parse_adrp (char **str) +{ + char *p; + + p = *str; + if (*p == ':') + { + struct reloc_table_entry *entry; + + /* Try to parse a relocation. Anything else is an error. */ + ++p; + if (!(entry = find_reloc_table_entry (&p))) + { + set_syntax_error (_("unknown relocation modifier")); + return FALSE; + } + + if (entry->adrp_type == 0) + { + set_syntax_error + (_("this relocation modifier is not allowed on this instruction")); + return FALSE; + } + + inst.reloc.type = entry->adrp_type; + } + else + inst.reloc.type = BFD_RELOC_AARCH64_ADR_HI21_PCREL; + + inst.reloc.pc_rel = 1; + + if (! my_get_expression (&inst.reloc.exp, &p, GE_NO_PREFIX, 1)) + return FALSE; + + *str = p; + return TRUE; +} + +/* Miscellaneous. */ + +/* Parse an option for a preload instruction. Returns the encoding for the + option, or PARSE_FAIL. */ + +static int +parse_pldop (char **str) +{ + char *p, *q; + const struct aarch64_name_value_pair *o; + + p = q = *str; + while (ISALNUM (*q)) + q++; + + o = hash_find_n (aarch64_pldop_hsh, p, q - p); + if (!o) + return PARSE_FAIL; + + *str = q; + return o->value; +} + +/* Parse an option for a barrier instruction. Returns the encoding for the + option, or PARSE_FAIL. */ + +static int +parse_barrier (char **str) +{ + char *p, *q; + const asm_barrier_opt *o; + + p = q = *str; + while (ISALPHA (*q)) + q++; + + o = hash_find_n (aarch64_barrier_opt_hsh, p, q - p); + if (!o) + return PARSE_FAIL; + + *str = q; + return o->value; +} + +/* Parse a system register or a PSTATE field name for an MSR/MRS instruction. + Returns the encoding for the option, or PARSE_FAIL. + + If IMPLE_DEFINED_P is non-zero, the function will also try to parse the + implementation defined system register name S3_<op1>_<Cn>_<Cm>_<op2>. */ + +static int +parse_sys_reg (char **str, struct hash_control *sys_regs, int imple_defined_p) +{ + char *p, *q; + char buf[32]; + const struct aarch64_name_value_pair *o; + int value; + + p = buf; + for (q = *str; ISALNUM (*q) || *q == '_'; q++) + if (p < buf + 31) + *p++ = TOLOWER (*q); + *p = '\0'; + /* Assert that BUF be large enough. */ + gas_assert (p - buf == q - *str); + + o = hash_find (sys_regs, buf); + if (!o) + { + if (!imple_defined_p) + return PARSE_FAIL; + else + { + /* Parse S3_<op1>_<Cn>_<Cm>_<op2>, the implementation defined + registers. */ + unsigned int op0, op1, cn, cm, op2; + if (sscanf (buf, "s%u_%u_c%u_c%u_%u", &op0, &op1, &cn, &cm, &op2) != 5) + return PARSE_FAIL; + /* Register access is encoded as follows: + op0 op1 CRn CRm op2 + 11 xxx 1x11 xxxx xxx. */ + if (op0 != 3 || op1 > 7 || (cn | 0x4) != 0xf || cm > 15 || op2 > 7) + return PARSE_FAIL; + value = (op0 << 14) | (op1 << 11) | (cn << 7) | (cm << 3) | op2; + } + } + else + value = o->value; + + *str = q; + return value; +} + +/* Parse a system reg for ic/dc/at/tlbi instructions. Returns the table entry + for the option, or NULL. */ + +static const aarch64_sys_ins_reg * +parse_sys_ins_reg (char **str, struct hash_control *sys_ins_regs) +{ + char *p, *q; + char buf[32]; + const aarch64_sys_ins_reg *o; + + p = buf; + for (q = *str; ISALNUM (*q) || *q == '_'; q++) + if (p < buf + 31) + *p++ = TOLOWER (*q); + *p = '\0'; + + o = hash_find (sys_ins_regs, buf); + if (!o) + return NULL; + + *str = q; + return o; +} + +#define po_char_or_fail(chr) do { \ + if (! skip_past_char (&str, chr)) \ + goto failure; \ +} while (0) + +#define po_reg_or_fail(regtype) do { \ + val = aarch64_reg_parse (&str, regtype, &rtype, NULL); \ + if (val == PARSE_FAIL) \ + { \ + set_default_error (); \ + goto failure; \ + } \ + } while (0) + +#define po_int_reg_or_fail(reject_sp, reject_rz) do { \ + val = aarch64_reg_parse_32_64 (&str, reject_sp, reject_rz, \ + &isreg32, &isregzero); \ + if (val == PARSE_FAIL) \ + { \ + set_default_error (); \ + goto failure; \ + } \ + info->reg.regno = val; \ + if (isreg32) \ + info->qualifier = AARCH64_OPND_QLF_W; \ + else \ + info->qualifier = AARCH64_OPND_QLF_X; \ + } while (0) + +#define po_imm_nc_or_fail() do { \ + if (! parse_constant_immediate (&str, &val)) \ + goto failure; \ + } while (0) + +#define po_imm_or_fail(min, max) do { \ + if (! parse_constant_immediate (&str, &val)) \ + goto failure; \ + if (val < min || val > max) \ + { \ + set_fatal_syntax_error (_("immediate value out of range "\ +#min " to "#max)); \ + goto failure; \ + } \ + } while (0) + +#define po_misc_or_fail(expr) do { \ + if (!expr) \ + goto failure; \ + } while (0) + +/* encode the 12-bit imm field of Add/sub immediate */ +static inline uint32_t +encode_addsub_imm (uint32_t imm) +{ + return imm << 10; +} + +/* encode the shift amount field of Add/sub immediate */ +static inline uint32_t +encode_addsub_imm_shift_amount (uint32_t cnt) +{ + return cnt << 22; +} + + +/* encode the imm field of Adr instruction */ +static inline uint32_t +encode_adr_imm (uint32_t imm) +{ + return (((imm & 0x3) << 29) /* [1:0] -> [30:29] */ + | ((imm & (0x7ffff << 2)) << 3)); /* [20:2] -> [23:5] */ +} + +/* encode the immediate field of Move wide immediate */ +static inline uint32_t +encode_movw_imm (uint32_t imm) +{ + return imm << 5; +} + +/* encode the 26-bit offset of unconditional branch */ +static inline uint32_t +encode_branch_ofs_26 (uint32_t ofs) +{ + return ofs & ((1 << 26) - 1); +} + +/* encode the 19-bit offset of conditional branch and compare & branch */ +static inline uint32_t +encode_cond_branch_ofs_19 (uint32_t ofs) +{ + return (ofs & ((1 << 19) - 1)) << 5; +} + +/* encode the 19-bit offset of ld literal */ +static inline uint32_t +encode_ld_lit_ofs_19 (uint32_t ofs) +{ + return (ofs & ((1 << 19) - 1)) << 5; +} + +/* Encode the 14-bit offset of test & branch. */ +static inline uint32_t +encode_tst_branch_ofs_14 (uint32_t ofs) +{ + return (ofs & ((1 << 14) - 1)) << 5; +} + +/* Encode the 16-bit imm field of svc/hvc/smc. */ +static inline uint32_t +encode_svc_imm (uint32_t imm) +{ + return imm << 5; +} + +/* Reencode add(s) to sub(s), or sub(s) to add(s). */ +static inline uint32_t +reencode_addsub_switch_add_sub (uint32_t opcode) +{ + return opcode ^ (1 << 30); +} + +static inline uint32_t +reencode_movzn_to_movz (uint32_t opcode) +{ + return opcode | (1 << 30); +} + +static inline uint32_t +reencode_movzn_to_movn (uint32_t opcode) +{ + return opcode & ~(1 << 30); +} + +/* Overall per-instruction processing. */ + +/* We need to be able to fix up arbitrary expressions in some statements. + This is so that we can handle symbols that are an arbitrary distance from + the pc. The most common cases are of the form ((+/-sym -/+ . - 8) & mask), + which returns part of an address in a form which will be valid for + a data instruction. We do this by pushing the expression into a symbol + in the expr_section, and creating a fix for that. */ + +static fixS * +fix_new_aarch64 (fragS * frag, + int where, + short int size, expressionS * exp, int pc_rel, int reloc) +{ + fixS *new_fix; + + switch (exp->X_op) + { + case O_constant: + case O_symbol: + case O_add: + case O_subtract: + new_fix = fix_new_exp (frag, where, size, exp, pc_rel, reloc); + break; + + default: + new_fix = fix_new (frag, where, size, make_expr_symbol (exp), 0, + pc_rel, reloc); + break; + } + return new_fix; +} + +/* Diagnostics on operands errors. */ + +/* By default, output one-line error message only. + Enable the verbose error message by -merror-verbose. */ +static int verbose_error_p = 0; + +#ifdef DEBUG_AARCH64 +/* N.B. this is only for the purpose of debugging. */ +const char* operand_mismatch_kind_names[] = +{ + "AARCH64_OPDE_NIL", + "AARCH64_OPDE_RECOVERABLE", + "AARCH64_OPDE_SYNTAX_ERROR", + "AARCH64_OPDE_FATAL_SYNTAX_ERROR", + "AARCH64_OPDE_INVALID_VARIANT", + "AARCH64_OPDE_OUT_OF_RANGE", + "AARCH64_OPDE_UNALIGNED", + "AARCH64_OPDE_REG_LIST", + "AARCH64_OPDE_OTHER_ERROR", +}; +#endif /* DEBUG_AARCH64 */ + +/* Return TRUE if LHS is of higher severity than RHS, otherwise return FALSE. + + When multiple errors of different kinds are found in the same assembly + line, only the error of the highest severity will be picked up for + issuing the diagnostics. */ + +static inline bfd_boolean +operand_error_higher_severity_p (enum aarch64_operand_error_kind lhs, + enum aarch64_operand_error_kind rhs) +{ + gas_assert (AARCH64_OPDE_RECOVERABLE > AARCH64_OPDE_NIL); + gas_assert (AARCH64_OPDE_SYNTAX_ERROR > AARCH64_OPDE_RECOVERABLE); + gas_assert (AARCH64_OPDE_FATAL_SYNTAX_ERROR > AARCH64_OPDE_SYNTAX_ERROR); + gas_assert (AARCH64_OPDE_INVALID_VARIANT > AARCH64_OPDE_FATAL_SYNTAX_ERROR); + gas_assert (AARCH64_OPDE_OUT_OF_RANGE > AARCH64_OPDE_INVALID_VARIANT); + gas_assert (AARCH64_OPDE_UNALIGNED > AARCH64_OPDE_OUT_OF_RANGE); + gas_assert (AARCH64_OPDE_REG_LIST > AARCH64_OPDE_UNALIGNED); + gas_assert (AARCH64_OPDE_OTHER_ERROR > AARCH64_OPDE_REG_LIST); + return lhs > rhs; +} + +/* Helper routine to get the mnemonic name from the assembly instruction + line; should only be called for the diagnosis purpose, as there is + string copy operation involved, which may affect the runtime + performance if used in elsewhere. */ + +static const char* +get_mnemonic_name (const char *str) +{ + static char mnemonic[32]; + char *ptr; + + /* Get the first 15 bytes and assume that the full name is included. */ + strncpy (mnemonic, str, 31); + mnemonic[31] = '\0'; + + /* Scan up to the end of the mnemonic, which must end in white space, + '.', or end of string. */ + for (ptr = mnemonic; is_part_of_name(*ptr); ++ptr) + ; + + *ptr = '\0'; + + /* Append '...' to the truncated long name. */ + if (ptr - mnemonic == 31) + mnemonic[28] = mnemonic[29] = mnemonic[30] = '.'; + + return mnemonic; +} + +static void +reset_aarch64_instruction (aarch64_instruction *instruction) +{ + memset (instruction, '\0', sizeof (aarch64_instruction)); + instruction->reloc.type = BFD_RELOC_UNUSED; +} + +/* Data strutures storing one user error in the assembly code related to + operands. */ + +struct operand_error_record +{ + const aarch64_opcode *opcode; + aarch64_operand_error detail; + struct operand_error_record *next; +}; + +typedef struct operand_error_record operand_error_record; + +struct operand_errors +{ + operand_error_record *head; + operand_error_record *tail; +}; + +typedef struct operand_errors operand_errors; + +/* Top-level data structure reporting user errors for the current line of + the assembly code. + The way md_assemble works is that all opcodes sharing the same mnemonic + name are iterated to find a match to the assembly line. In this data + structure, each of the such opcodes will have one operand_error_record + allocated and inserted. In other words, excessive errors related with + a single opcode are disregarded. */ +operand_errors operand_error_report; + +/* Free record nodes. */ +static operand_error_record *free_opnd_error_record_nodes = NULL; + +/* Initialize the data structure that stores the operand mismatch + information on assembling one line of the assembly code. */ +static void +init_operand_error_report (void) +{ + if (operand_error_report.head != NULL) + { + gas_assert (operand_error_report.tail != NULL); + operand_error_report.tail->next = free_opnd_error_record_nodes; + free_opnd_error_record_nodes = operand_error_report.head; + operand_error_report.head = NULL; + operand_error_report.tail = NULL; + return; + } + gas_assert (operand_error_report.tail == NULL); +} + +/* Return TRUE if some operand error has been recorded during the + parsing of the current assembly line using the opcode *OPCODE; + otherwise return FALSE. */ +static inline bfd_boolean +opcode_has_operand_error_p (const aarch64_opcode *opcode) +{ + operand_error_record *record = operand_error_report.head; + return record && record->opcode == opcode; +} + +/* Add the error record *NEW_RECORD to operand_error_report. The record's + OPCODE field is initialized with OPCODE. + N.B. only one record for each opcode, i.e. the maximum of one error is + recorded for each instruction template. */ + +static void +add_operand_error_record (const operand_error_record* new_record) +{ + const aarch64_opcode *opcode = new_record->opcode; + operand_error_record* record = operand_error_report.head; + + /* The record may have been created for this opcode. If not, we need + to prepare one. */ + if (! opcode_has_operand_error_p (opcode)) + { + /* Get one empty record. */ + if (free_opnd_error_record_nodes == NULL) + { + record = xmalloc (sizeof (operand_error_record)); + if (record == NULL) + abort (); + } + else + { + record = free_opnd_error_record_nodes; + free_opnd_error_record_nodes = record->next; + } + record->opcode = opcode; + /* Insert at the head. */ + record->next = operand_error_report.head; + operand_error_report.head = record; + if (operand_error_report.tail == NULL) + operand_error_report.tail = record; + } + else if (record->detail.kind != AARCH64_OPDE_NIL + && record->detail.index <= new_record->detail.index + && operand_error_higher_severity_p (record->detail.kind, + new_record->detail.kind)) + { + /* In the case of multiple errors found on operands related with a + single opcode, only record the error of the leftmost operand and + only if the error is of higher severity. */ + DEBUG_TRACE ("error %s on operand %d not added to the report due to" + " the existing error %s on operand %d", + operand_mismatch_kind_names[new_record->detail.kind], + new_record->detail.index, + operand_mismatch_kind_names[record->detail.kind], + record->detail.index); + return; + } + + record->detail = new_record->detail; +} + +static inline void +record_operand_error_info (const aarch64_opcode *opcode, + aarch64_operand_error *error_info) +{ + operand_error_record record; + record.opcode = opcode; + record.detail = *error_info; + add_operand_error_record (&record); +} + +/* Record an error of kind KIND and, if ERROR is not NULL, of the detailed + error message *ERROR, for operand IDX (count from 0). */ + +static void +record_operand_error (const aarch64_opcode *opcode, int idx, + enum aarch64_operand_error_kind kind, + const char* error) +{ + aarch64_operand_error info; + memset(&info, 0, sizeof (info)); + info.index = idx; + info.kind = kind; + info.error = error; + record_operand_error_info (opcode, &info); +} + +static void +record_operand_error_with_data (const aarch64_opcode *opcode, int idx, + enum aarch64_operand_error_kind kind, + const char* error, const int *extra_data) +{ + aarch64_operand_error info; + info.index = idx; + info.kind = kind; + info.error = error; + info.data[0] = extra_data[0]; + info.data[1] = extra_data[1]; + info.data[2] = extra_data[2]; + record_operand_error_info (opcode, &info); +} + +static void +record_operand_out_of_range_error (const aarch64_opcode *opcode, int idx, + const char* error, int lower_bound, + int upper_bound) +{ + int data[3] = {lower_bound, upper_bound, 0}; + record_operand_error_with_data (opcode, idx, AARCH64_OPDE_OUT_OF_RANGE, + error, data); +} + +/* Remove the operand error record for *OPCODE. */ +static void ATTRIBUTE_UNUSED +remove_operand_error_record (const aarch64_opcode *opcode) +{ + if (opcode_has_operand_error_p (opcode)) + { + operand_error_record* record = operand_error_report.head; + gas_assert (record != NULL && operand_error_report.tail != NULL); + operand_error_report.head = record->next; + record->next = free_opnd_error_record_nodes; + free_opnd_error_record_nodes = record; + if (operand_error_report.head == NULL) + { + gas_assert (operand_error_report.tail == record); + operand_error_report.tail = NULL; + } + } +} + +/* Given the instruction in *INSTR, return the index of the best matched + qualifier sequence in the list (an array) headed by QUALIFIERS_LIST. + + Return -1 if there is no qualifier sequence; return the first match + if there is multiple matches found. */ + +static int +find_best_match (const aarch64_inst *instr, + const aarch64_opnd_qualifier_seq_t *qualifiers_list) +{ + int i, num_opnds, max_num_matched, idx; + + num_opnds = aarch64_num_of_operands (instr->opcode); + if (num_opnds == 0) + { + DEBUG_TRACE ("no operand"); + return -1; + } + + max_num_matched = 0; + idx = -1; + + /* For each pattern. */ + for (i = 0; i < AARCH64_MAX_QLF_SEQ_NUM; ++i, ++qualifiers_list) + { + int j, num_matched; + const aarch64_opnd_qualifier_t *qualifiers = *qualifiers_list; + + /* Most opcodes has much fewer patterns in the list. */ + if (empty_qualifier_sequence_p (qualifiers) == TRUE) + { + DEBUG_TRACE_IF (i == 0, "empty list of qualifier sequence"); + if (i != 0 && idx == -1) + /* If nothing has been matched, return the 1st sequence. */ + idx = 0; + break; + } + + for (j = 0, num_matched = 0; j < num_opnds; ++j, ++qualifiers) + if (*qualifiers == instr->operands[j].qualifier) + ++num_matched; + + if (num_matched > max_num_matched) + { + max_num_matched = num_matched; + idx = i; + } + } + + DEBUG_TRACE ("return with %d", idx); + return idx; +} + +/* Assign qualifiers in the qualifier seqence (headed by QUALIFIERS) to the + corresponding operands in *INSTR. */ + +static inline void +assign_qualifier_sequence (aarch64_inst *instr, + const aarch64_opnd_qualifier_t *qualifiers) +{ + int i = 0; + int num_opnds = aarch64_num_of_operands (instr->opcode); + gas_assert (num_opnds); + for (i = 0; i < num_opnds; ++i, ++qualifiers) + instr->operands[i].qualifier = *qualifiers; +} + +/* Print operands for the diagnosis purpose. */ + +static void +print_operands (char *buf, const aarch64_opcode *opcode, + const aarch64_opnd_info *opnds) +{ + int i; + + for (i = 0; i < AARCH64_MAX_OPND_NUM; ++i) + { + const size_t size = 128; + char str[size]; + + /* We regard the opcode operand info more, however we also look into + the inst->operands to support the disassembling of the optional + operand. + The two operand code should be the same in all cases, apart from + when the operand can be optional. */ + if (opcode->operands[i] == AARCH64_OPND_NIL + || opnds[i].type == AARCH64_OPND_NIL) + break; + + /* Generate the operand string in STR. */ + aarch64_print_operand (str, size, 0, opcode, opnds, i, NULL, NULL); + + /* Delimiter. */ + if (str[0] != '\0') + strcat (buf, i == 0 ? " " : ","); + + /* Append the operand string. */ + strcat (buf, str); + } +} + +/* Send to stderr a string as information. */ + +static void +output_info (const char *format, ...) +{ + char *file; + unsigned int line; + va_list args; + + as_where (&file, &line); + if (file) + { + if (line != 0) + fprintf (stderr, "%s:%u: ", file, line); + else + fprintf (stderr, "%s: ", file); + } + fprintf (stderr, _("Info: ")); + va_start (args, format); + vfprintf (stderr, format, args); + va_end (args); + (void) putc ('\n', stderr); +} + +/* Output one operand error record. */ + +static void +output_operand_error_record (const operand_error_record *record, char *str) +{ + int idx = record->detail.index; + const aarch64_opcode *opcode = record->opcode; + enum aarch64_opnd opd_code = (idx != -1 ? opcode->operands[idx] + : AARCH64_OPND_NIL); + const aarch64_operand_error *detail = &record->detail; + + switch (detail->kind) + { + case AARCH64_OPDE_NIL: + gas_assert (0); + break; + + case AARCH64_OPDE_SYNTAX_ERROR: + case AARCH64_OPDE_RECOVERABLE: + case AARCH64_OPDE_FATAL_SYNTAX_ERROR: + case AARCH64_OPDE_OTHER_ERROR: + gas_assert (idx >= 0); + /* Use the prepared error message if there is, otherwise use the + operand description string to describe the error. */ + if (detail->error != NULL) + { + if (detail->index == -1) + as_bad (_("%s -- `%s'"), detail->error, str); + else + as_bad (_("%s at operand %d -- `%s'"), + detail->error, detail->index + 1, str); + } + else + as_bad (_("operand %d should be %s -- `%s'"), idx + 1, + aarch64_get_operand_desc (opd_code), str); + break; + + case AARCH64_OPDE_INVALID_VARIANT: + as_bad (_("operand mismatch -- `%s'"), str); + if (verbose_error_p) + { + /* We will try to correct the erroneous instruction and also provide + more information e.g. all other valid variants. + + The string representation of the corrected instruction and other + valid variants are generated by + + 1) obtaining the intermediate representation of the erroneous + instruction; + 2) manipulating the IR, e.g. replacing the operand qualifier; + 3) printing out the instruction by calling the printer functions + shared with the disassembler. + + The limitation of this method is that the exact input assembly + line cannot be accurately reproduced in some cases, for example an + optional operand present in the actual assembly line will be + omitted in the output; likewise for the optional syntax rules, + e.g. the # before the immediate. Another limitation is that the + assembly symbols and relocation operations in the assembly line + currently cannot be printed out in the error report. Last but not + least, when there is other error(s) co-exist with this error, the + 'corrected' instruction may be still incorrect, e.g. given + 'ldnp h0,h1,[x0,#6]!' + this diagnosis will provide the version: + 'ldnp s0,s1,[x0,#6]!' + which is still not right. */ + size_t len = strlen (get_mnemonic_name (str)); + int i, qlf_idx; + bfd_boolean result; + const size_t size = 2048; + char buf[size]; + aarch64_inst *inst_base = &inst.base; + const aarch64_opnd_qualifier_seq_t *qualifiers_list; + + /* Init inst. */ + reset_aarch64_instruction (&inst); + inst_base->opcode = opcode; + + /* Reset the error report so that there is no side effect on the + following operand parsing. */ + init_operand_error_report (); + + /* Fill inst. */ + result = parse_operands (str + len, opcode) + && programmer_friendly_fixup (&inst); + gas_assert (result); + result = aarch64_opcode_encode (opcode, inst_base, &inst_base->value, + NULL, NULL); + gas_assert (!result); + + /* Find the most matched qualifier sequence. */ + qlf_idx = find_best_match (inst_base, opcode->qualifiers_list); + gas_assert (qlf_idx > -1); + + /* Assign the qualifiers. */ + assign_qualifier_sequence (inst_base, + opcode->qualifiers_list[qlf_idx]); + + /* Print the hint. */ + output_info (_(" did you mean this?")); + snprintf (buf, size, "\t%s", get_mnemonic_name (str)); + print_operands (buf, opcode, inst_base->operands); + output_info (_(" %s"), buf); + + /* Print out other variant(s) if there is any. */ + if (qlf_idx != 0 || + !empty_qualifier_sequence_p (opcode->qualifiers_list[1])) + output_info (_(" other valid variant(s):")); + + /* For each pattern. */ + qualifiers_list = opcode->qualifiers_list; + for (i = 0; i < AARCH64_MAX_QLF_SEQ_NUM; ++i, ++qualifiers_list) + { + /* Most opcodes has much fewer patterns in the list. + First NIL qualifier indicates the end in the list. */ + if (empty_qualifier_sequence_p (*qualifiers_list) == TRUE) + break; + + if (i != qlf_idx) + { + /* Mnemonics name. */ + snprintf (buf, size, "\t%s", get_mnemonic_name (str)); + + /* Assign the qualifiers. */ + assign_qualifier_sequence (inst_base, *qualifiers_list); + + /* Print instruction. */ + print_operands (buf, opcode, inst_base->operands); + + output_info (_(" %s"), buf); + } + } + } + break; + + case AARCH64_OPDE_OUT_OF_RANGE: + as_bad (_("%s out of range %d to %d at operand %d -- `%s'"), + detail->error ? detail->error : _("immediate value"), + detail->data[0], detail->data[1], detail->index + 1, str); + break; + + case AARCH64_OPDE_REG_LIST: + if (detail->data[0] == 1) + as_bad (_("invalid number of registers in the list; " + "only 1 register is expected at operand %d -- `%s'"), + detail->index + 1, str); + else + as_bad (_("invalid number of registers in the list; " + "%d registers are expected at operand %d -- `%s'"), + detail->data[0], detail->index + 1, str); + break; + + case AARCH64_OPDE_UNALIGNED: + as_bad (_("immediate value should be a multiple of " + "%d at operand %d -- `%s'"), + detail->data[0], detail->index + 1, str); + break; + + default: + gas_assert (0); + break; + } +} + +/* Process and output the error message about the operand mismatching. + + When this function is called, the operand error information had + been collected for an assembly line and there will be multiple + errors in the case of mulitple instruction templates; output the + error message that most closely describes the problem. */ + +static void +output_operand_error_report (char *str) +{ + int largest_error_pos; + const char *msg = NULL; + enum aarch64_operand_error_kind kind; + operand_error_record *curr; + operand_error_record *head = operand_error_report.head; + operand_error_record *record = NULL; + + /* No error to report. */ + if (head == NULL) + return; + + gas_assert (head != NULL && operand_error_report.tail != NULL); + + /* Only one error. */ + if (head == operand_error_report.tail) + { + DEBUG_TRACE ("single opcode entry with error kind: %s", + operand_mismatch_kind_names[head->detail.kind]); + output_operand_error_record (head, str); + return; + } + + /* Find the error kind of the highest severity. */ + DEBUG_TRACE ("multiple opcode entres with error kind"); + kind = AARCH64_OPDE_NIL; + for (curr = head; curr != NULL; curr = curr->next) + { + gas_assert (curr->detail.kind != AARCH64_OPDE_NIL); + DEBUG_TRACE ("\t%s", operand_mismatch_kind_names[curr->detail.kind]); + if (operand_error_higher_severity_p (curr->detail.kind, kind)) + kind = curr->detail.kind; + } + gas_assert (kind != AARCH64_OPDE_NIL); + + /* Pick up one of errors of KIND to report. */ + largest_error_pos = -2; /* Index can be -1 which means unknown index. */ + for (curr = head; curr != NULL; curr = curr->next) + { + if (curr->detail.kind != kind) + continue; + /* If there are multiple errors, pick up the one with the highest + mismatching operand index. In the case of multiple errors with + the equally highest operand index, pick up the first one or the + first one with non-NULL error message. */ + if (curr->detail.index > largest_error_pos + || (curr->detail.index == largest_error_pos && msg == NULL + && curr->detail.error != NULL)) + { + largest_error_pos = curr->detail.index; + record = curr; + msg = record->detail.error; + } + } + + gas_assert (largest_error_pos != -2 && record != NULL); + DEBUG_TRACE ("Pick up error kind %s to report", + operand_mismatch_kind_names[record->detail.kind]); + + /* Output. */ + output_operand_error_record (record, str); +} + +/* Write an AARCH64 instruction to buf - always little-endian. */ +static void +put_aarch64_insn (char *buf, uint32_t insn) +{ + unsigned char *where = (unsigned char *) buf; + where[0] = insn; + where[1] = insn >> 8; + where[2] = insn >> 16; + where[3] = insn >> 24; +} + +static uint32_t +get_aarch64_insn (char *buf) +{ + unsigned char *where = (unsigned char *) buf; + uint32_t result; + result = (where[0] | (where[1] << 8) | (where[2] << 16) | (where[3] << 24)); + return result; +} + +static void +output_inst (struct aarch64_inst *new_inst) +{ + char *to = NULL; + + to = frag_more (INSN_SIZE); + + frag_now->tc_frag_data.recorded = 1; + + put_aarch64_insn (to, inst.base.value); + + if (inst.reloc.type != BFD_RELOC_UNUSED) + { + fixS *fixp = fix_new_aarch64 (frag_now, to - frag_now->fr_literal, + INSN_SIZE, &inst.reloc.exp, + inst.reloc.pc_rel, + inst.reloc.type); + DEBUG_TRACE ("Prepared relocation fix up"); + /* Don't check the addend value against the instruction size, + that's the job of our code in md_apply_fix(). */ + fixp->fx_no_overflow = 1; + if (new_inst != NULL) + fixp->tc_fix_data.inst = new_inst; + if (aarch64_gas_internal_fixup_p ()) + { + gas_assert (inst.reloc.opnd != AARCH64_OPND_NIL); + fixp->tc_fix_data.opnd = inst.reloc.opnd; + fixp->fx_addnumber = inst.reloc.flags; + } + } + + dwarf2_emit_insn (INSN_SIZE); +} + +/* Link together opcodes of the same name. */ + +struct templates +{ + aarch64_opcode *opcode; + struct templates *next; +}; + +typedef struct templates templates; + +static templates * +lookup_mnemonic (const char *start, int len) +{ + templates *templ = NULL; + + templ = hash_find_n (aarch64_ops_hsh, start, len); + return templ; +} + +/* Subroutine of md_assemble, responsible for looking up the primary + opcode from the mnemonic the user wrote. STR points to the + beginning of the mnemonic. */ + +static templates * +opcode_lookup (char **str) +{ + char *end, *base; + const aarch64_cond *cond; + char condname[16]; + int len; + + /* Scan up to the end of the mnemonic, which must end in white space, + '.', or end of string. */ + for (base = end = *str; is_part_of_name(*end); end++) + if (*end == '.') + break; + + if (end == base) + return 0; + + inst.cond = COND_ALWAYS; + + /* Handle a possible condition. */ + if (end[0] == '.') + { + cond = hash_find_n (aarch64_cond_hsh, end + 1, 2); + if (cond) + { + inst.cond = cond->value; + *str = end + 3; + } + else + { + *str = end; + return 0; + } + } + else + *str = end; + + len = end - base; + + if (inst.cond == COND_ALWAYS) + { + /* Look for unaffixed mnemonic. */ + return lookup_mnemonic (base, len); + } + else if (len <= 13) + { + /* append ".c" to mnemonic if conditional */ + memcpy (condname, base, len); + memcpy (condname + len, ".c", 2); + base = condname; + len += 2; + return lookup_mnemonic (base, len); + } + + return NULL; +} + +/* Internal helper routine converting a vector neon_type_el structure + *VECTYPE to a corresponding operand qualifier. */ + +static inline aarch64_opnd_qualifier_t +vectype_to_qualifier (const struct neon_type_el *vectype) +{ + /* Element size in bytes indexed by neon_el_type. */ + const unsigned char ele_size[5] + = {1, 2, 4, 8, 16}; + + if (!vectype->defined || vectype->type == NT_invtype) + goto vectype_conversion_fail; + + gas_assert (vectype->type >= NT_b && vectype->type <= NT_q); + + if (vectype->defined & NTA_HASINDEX) + /* Vector element register. */ + return AARCH64_OPND_QLF_S_B + vectype->type; + else + { + /* Vector register. */ + int reg_size = ele_size[vectype->type] * vectype->width; + unsigned offset; + if (reg_size != 16 && reg_size != 8) + goto vectype_conversion_fail; + /* The conversion is calculated based on the relation of the order of + qualifiers to the vector element size and vector register size. */ + offset = (vectype->type == NT_q) + ? 8 : (vectype->type << 1) + (reg_size >> 4); + gas_assert (offset <= 8); + return AARCH64_OPND_QLF_V_8B + offset; + } + +vectype_conversion_fail: + first_error (_("bad vector arrangement type")); + return AARCH64_OPND_QLF_NIL; +} + +/* Process an optional operand that is found omitted from the assembly line. + Fill *OPERAND for such an operand of type TYPE. OPCODE points to the + instruction's opcode entry while IDX is the index of this omitted operand. + */ + +static void +process_omitted_operand (enum aarch64_opnd type, const aarch64_opcode *opcode, + int idx, aarch64_opnd_info *operand) +{ + aarch64_insn default_value = get_optional_operand_default_value (opcode); + gas_assert (optional_operand_p (opcode, idx)); + gas_assert (!operand->present); + + switch (type) + { + case AARCH64_OPND_Rd: + case AARCH64_OPND_Rn: + case AARCH64_OPND_Rm: + case AARCH64_OPND_Rt: + case AARCH64_OPND_Rt2: + case AARCH64_OPND_Rs: + case AARCH64_OPND_Ra: + case AARCH64_OPND_Rt_SYS: + case AARCH64_OPND_Rd_SP: + case AARCH64_OPND_Rn_SP: + case AARCH64_OPND_Fd: + case AARCH64_OPND_Fn: + case AARCH64_OPND_Fm: + case AARCH64_OPND_Fa: + case AARCH64_OPND_Ft: + case AARCH64_OPND_Ft2: + case AARCH64_OPND_Sd: + case AARCH64_OPND_Sn: + case AARCH64_OPND_Sm: + case AARCH64_OPND_Vd: + case AARCH64_OPND_Vn: + case AARCH64_OPND_Vm: + case AARCH64_OPND_VdD1: + case AARCH64_OPND_VnD1: + operand->reg.regno = default_value; + break; + + case AARCH64_OPND_Ed: + case AARCH64_OPND_En: + case AARCH64_OPND_Em: + operand->reglane.regno = default_value; + break; + + case AARCH64_OPND_IDX: + case AARCH64_OPND_BIT_NUM: + case AARCH64_OPND_IMMR: + case AARCH64_OPND_IMMS: + case AARCH64_OPND_SHLL_IMM: + case AARCH64_OPND_IMM_VLSL: + case AARCH64_OPND_IMM_VLSR: + case AARCH64_OPND_CCMP_IMM: + case AARCH64_OPND_FBITS: + case AARCH64_OPND_UIMM4: + case AARCH64_OPND_UIMM3_OP1: + case AARCH64_OPND_UIMM3_OP2: + case AARCH64_OPND_IMM: + case AARCH64_OPND_WIDTH: + case AARCH64_OPND_UIMM7: + case AARCH64_OPND_NZCV: + operand->imm.value = default_value; + break; + + case AARCH64_OPND_EXCEPTION: + inst.reloc.type = BFD_RELOC_UNUSED; + break; + + case AARCH64_OPND_BARRIER_ISB: + operand->barrier = aarch64_barrier_options + default_value; + + default: + break; + } +} + +/* Process the relocation type for move wide instructions. + Return TRUE on success; otherwise return FALSE. */ + +static bfd_boolean +process_movw_reloc_info (void) +{ + int is32; + unsigned shift; + + is32 = inst.base.operands[0].qualifier == AARCH64_OPND_QLF_W ? 1 : 0; + + if (inst.base.opcode->op == OP_MOVK) + switch (inst.reloc.type) + { + case BFD_RELOC_AARCH64_MOVW_G0_S: + case BFD_RELOC_AARCH64_MOVW_G1_S: + case BFD_RELOC_AARCH64_MOVW_G2_S: + case BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G0: + case BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G0_NC: + case BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G1: + case BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G1_NC: + case BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G2: + set_syntax_error + (_("the specified relocation type is not allowed for MOVK")); + return FALSE; + default: + break; + } + + switch (inst.reloc.type) + { + case BFD_RELOC_AARCH64_MOVW_G0: + case BFD_RELOC_AARCH64_MOVW_G0_S: + case BFD_RELOC_AARCH64_MOVW_G0_NC: + case BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G0: + case BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G0_NC: + shift = 0; + break; + case BFD_RELOC_AARCH64_MOVW_G1: + case BFD_RELOC_AARCH64_MOVW_G1_S: + case BFD_RELOC_AARCH64_MOVW_G1_NC: + case BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G1: + case BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G1_NC: + shift = 16; + break; + case BFD_RELOC_AARCH64_MOVW_G2: + case BFD_RELOC_AARCH64_MOVW_G2_S: + case BFD_RELOC_AARCH64_MOVW_G2_NC: + case BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G2: + if (is32) + { + set_fatal_syntax_error + (_("the specified relocation type is not allowed for 32-bit " + "register")); + return FALSE; + } + shift = 32; + break; + case BFD_RELOC_AARCH64_MOVW_G3: + if (is32) + { + set_fatal_syntax_error + (_("the specified relocation type is not allowed for 32-bit " + "register")); + return FALSE; + } + shift = 48; + break; + default: + /* More cases should be added when more MOVW-related relocation types + are supported in GAS. */ + gas_assert (aarch64_gas_internal_fixup_p ()); + /* The shift amount should have already been set by the parser. */ + return TRUE; + } + inst.base.operands[1].shifter.amount = shift; + return TRUE; +} + +/* A primitive log caculator. */ + +static inline unsigned int +get_logsz (unsigned int size) +{ + const unsigned char ls[16] = + {0, 1, -1, 2, -1, -1, -1, 3, -1, -1, -1, -1, -1, -1, -1, 4}; + if (size > 16) + { + gas_assert (0); + return -1; + } + gas_assert (ls[size - 1] != (unsigned char)-1); + return ls[size - 1]; +} + +/* Determine and return the real reloc type code for an instruction + with the pseudo reloc type code BFD_RELOC_AARCH64_LDST_LO12. */ + +static inline bfd_reloc_code_real_type +ldst_lo12_determine_real_reloc_type (void) +{ + int logsz; + enum aarch64_opnd_qualifier opd0_qlf = inst.base.operands[0].qualifier; + enum aarch64_opnd_qualifier opd1_qlf = inst.base.operands[1].qualifier; + + const bfd_reloc_code_real_type reloc_ldst_lo12[5] = { + BFD_RELOC_AARCH64_LDST8_LO12, BFD_RELOC_AARCH64_LDST16_LO12, + BFD_RELOC_AARCH64_LDST32_LO12, BFD_RELOC_AARCH64_LDST64_LO12, + BFD_RELOC_AARCH64_LDST128_LO12 + }; + + gas_assert (inst.reloc.type == BFD_RELOC_AARCH64_LDST_LO12); + gas_assert (inst.base.opcode->operands[1] == AARCH64_OPND_ADDR_UIMM12); + + if (opd1_qlf == AARCH64_OPND_QLF_NIL) + opd1_qlf = + aarch64_get_expected_qualifier (inst.base.opcode->qualifiers_list, + 1, opd0_qlf, 0); + gas_assert (opd1_qlf != AARCH64_OPND_QLF_NIL); + + logsz = get_logsz (aarch64_get_qualifier_esize (opd1_qlf)); + gas_assert (logsz >= 0 && logsz <= 4); + + return reloc_ldst_lo12[logsz]; +} + +/* Check whether a register list REGINFO is valid. The registers must be + numbered in increasing order (modulo 32), in increments of one or two. + + If ACCEPT_ALTERNATE is non-zero, the register numbers should be in + increments of two. + + Return FALSE if such a register list is invalid, otherwise return TRUE. */ + +static bfd_boolean +reg_list_valid_p (uint32_t reginfo, int accept_alternate) +{ + uint32_t i, nb_regs, prev_regno, incr; + + nb_regs = 1 + (reginfo & 0x3); + reginfo >>= 2; + prev_regno = reginfo & 0x1f; + incr = accept_alternate ? 2 : 1; + + for (i = 1; i < nb_regs; ++i) + { + uint32_t curr_regno; + reginfo >>= 5; + curr_regno = reginfo & 0x1f; + if (curr_regno != ((prev_regno + incr) & 0x1f)) + return FALSE; + prev_regno = curr_regno; + } + + return TRUE; +} + +/* Generic instruction operand parser. This does no encoding and no + semantic validation; it merely squirrels values away in the inst + structure. Returns TRUE or FALSE depending on whether the + specified grammar matched. */ + +static bfd_boolean +parse_operands (char *str, const aarch64_opcode *opcode) +{ + int i; + char *backtrack_pos = 0; + const enum aarch64_opnd *operands = opcode->operands; + + clear_error (); + skip_whitespace (str); + + for (i = 0; operands[i] != AARCH64_OPND_NIL; i++) + { + int64_t val; + int isreg32, isregzero; + int comma_skipped_p = 0; + aarch64_reg_type rtype; + struct neon_type_el vectype; + aarch64_opnd_info *info = &inst.base.operands[i]; + + DEBUG_TRACE ("parse operand %d", i); + + /* Assign the operand code. */ + info->type = operands[i]; + + if (optional_operand_p (opcode, i)) + { + /* Remember where we are in case we need to backtrack. */ + gas_assert (!backtrack_pos); + backtrack_pos = str; + } + + /* Expect comma between operands; the backtrack mechanizm will take + care of cases of omitted optional operand. */ + if (i > 0 && ! skip_past_char (&str, ',')) + { + set_syntax_error (_("comma expected between operands")); + goto failure; + } + else + comma_skipped_p = 1; + + switch (operands[i]) + { + case AARCH64_OPND_Rd: + case AARCH64_OPND_Rn: + case AARCH64_OPND_Rm: + case AARCH64_OPND_Rt: + case AARCH64_OPND_Rt2: + case AARCH64_OPND_Rs: + case AARCH64_OPND_Ra: + case AARCH64_OPND_Rt_SYS: + po_int_reg_or_fail (1, 0); + break; + + case AARCH64_OPND_Rd_SP: + case AARCH64_OPND_Rn_SP: + po_int_reg_or_fail (0, 1); + break; + + case AARCH64_OPND_Rm_EXT: + case AARCH64_OPND_Rm_SFT: + po_misc_or_fail (parse_shifter_operand + (&str, info, (operands[i] == AARCH64_OPND_Rm_EXT + ? SHIFTED_ARITH_IMM + : SHIFTED_LOGIC_IMM))); + if (!info->shifter.operator_present) + { + /* Default to LSL if not present. Libopcodes prefers shifter + kind to be explicit. */ + gas_assert (info->shifter.kind == AARCH64_MOD_NONE); + info->shifter.kind = AARCH64_MOD_LSL; + /* For Rm_EXT, libopcodes will carry out further check on whether + or not stack pointer is used in the instruction (Recall that + "the extend operator is not optional unless at least one of + "Rd" or "Rn" is '11111' (i.e. WSP)"). */ + } + break; + + case AARCH64_OPND_Fd: + case AARCH64_OPND_Fn: + case AARCH64_OPND_Fm: + case AARCH64_OPND_Fa: + case AARCH64_OPND_Ft: + case AARCH64_OPND_Ft2: + case AARCH64_OPND_Sd: + case AARCH64_OPND_Sn: + case AARCH64_OPND_Sm: + val = aarch64_reg_parse (&str, REG_TYPE_BHSDQ, &rtype, NULL); + if (val == PARSE_FAIL) + { + first_error (_(get_reg_expected_msg (REG_TYPE_BHSDQ))); + goto failure; + } + gas_assert (rtype >= REG_TYPE_FP_B && rtype <= REG_TYPE_FP_Q); + + info->reg.regno = val; + info->qualifier = AARCH64_OPND_QLF_S_B + (rtype - REG_TYPE_FP_B); + break; + + case AARCH64_OPND_Vd: + case AARCH64_OPND_Vn: + case AARCH64_OPND_Vm: + val = aarch64_reg_parse (&str, REG_TYPE_VN, NULL, &vectype); + if (val == PARSE_FAIL) + { + first_error (_(get_reg_expected_msg (REG_TYPE_VN))); + goto failure; + } + if (vectype.defined & NTA_HASINDEX) + goto failure; + + info->reg.regno = val; + info->qualifier = vectype_to_qualifier (&vectype); + if (info->qualifier == AARCH64_OPND_QLF_NIL) + goto failure; + break; + + case AARCH64_OPND_VdD1: + case AARCH64_OPND_VnD1: + val = aarch64_reg_parse (&str, REG_TYPE_VN, NULL, &vectype); + if (val == PARSE_FAIL) + { + set_first_syntax_error (_(get_reg_expected_msg (REG_TYPE_VN))); + goto failure; + } + if (vectype.type != NT_d || vectype.index != 1) + { + set_fatal_syntax_error + (_("the top half of a 128-bit FP/SIMD register is expected")); + goto failure; + } + info->reg.regno = val; + /* N.B: VdD1 and VnD1 are treated as an fp or advsimd scalar register + here; it is correct for the purpose of encoding/decoding since + only the register number is explicitly encoded in the related + instructions, although this appears a bit hacky. */ + info->qualifier = AARCH64_OPND_QLF_S_D; + break; + + case AARCH64_OPND_Ed: + case AARCH64_OPND_En: + case AARCH64_OPND_Em: + val = aarch64_reg_parse (&str, REG_TYPE_VN, NULL, &vectype); + if (val == PARSE_FAIL) + { + first_error (_(get_reg_expected_msg (REG_TYPE_VN))); + goto failure; + } + if (vectype.type == NT_invtype || !(vectype.defined & NTA_HASINDEX)) + goto failure; + + info->reglane.regno = val; + info->reglane.index = vectype.index; + info->qualifier = vectype_to_qualifier (&vectype); + if (info->qualifier == AARCH64_OPND_QLF_NIL) + goto failure; + break; + + case AARCH64_OPND_LVn: + case AARCH64_OPND_LVt: + case AARCH64_OPND_LVt_AL: + case AARCH64_OPND_LEt: + if ((val = parse_neon_reg_list (&str, &vectype)) == PARSE_FAIL) + goto failure; + if (! reg_list_valid_p (val, /* accept_alternate */ 0)) + { + set_fatal_syntax_error (_("invalid register list")); + goto failure; + } + info->reglist.first_regno = (val >> 2) & 0x1f; + info->reglist.num_regs = (val & 0x3) + 1; + if (operands[i] == AARCH64_OPND_LEt) + { + if (!(vectype.defined & NTA_HASINDEX)) + goto failure; + info->reglist.has_index = 1; + info->reglist.index = vectype.index; + } + else if (!(vectype.defined & NTA_HASTYPE)) + goto failure; + info->qualifier = vectype_to_qualifier (&vectype); + if (info->qualifier == AARCH64_OPND_QLF_NIL) + goto failure; + break; + + case AARCH64_OPND_Cn: + case AARCH64_OPND_Cm: + po_reg_or_fail (REG_TYPE_CN); + if (val > 15) + { + set_fatal_syntax_error (_(get_reg_expected_msg (REG_TYPE_CN))); + goto failure; + } + inst.base.operands[i].reg.regno = val; + break; + + case AARCH64_OPND_SHLL_IMM: + case AARCH64_OPND_IMM_VLSR: + po_imm_or_fail (1, 64); + info->imm.value = val; + break; + + case AARCH64_OPND_CCMP_IMM: + case AARCH64_OPND_FBITS: + case AARCH64_OPND_UIMM4: + case AARCH64_OPND_UIMM3_OP1: + case AARCH64_OPND_UIMM3_OP2: + case AARCH64_OPND_IMM_VLSL: + case AARCH64_OPND_IMM: + case AARCH64_OPND_WIDTH: + po_imm_nc_or_fail (); + info->imm.value = val; + break; + + case AARCH64_OPND_UIMM7: + po_imm_or_fail (0, 127); + info->imm.value = val; + break; + + case AARCH64_OPND_IDX: + case AARCH64_OPND_BIT_NUM: + case AARCH64_OPND_IMMR: + case AARCH64_OPND_IMMS: + po_imm_or_fail (0, 63); + info->imm.value = val; + break; + + case AARCH64_OPND_IMM0: + po_imm_nc_or_fail (); + if (val != 0) + { + set_fatal_syntax_error (_("immediate zero expected")); + goto failure; + } + info->imm.value = 0; + break; + + case AARCH64_OPND_FPIMM0: + { + int qfloat; + bfd_boolean res1 = FALSE, res2 = FALSE; + /* N.B. -0.0 will be rejected; although -0.0 shouldn't be rejected, + it is probably not worth the effort to support it. */ + if (!(res1 = parse_aarch64_imm_float (&str, &qfloat)) + && !(res2 = parse_constant_immediate (&str, &val))) + goto failure; + if ((res1 && qfloat == 0) || (res2 && val == 0)) + { + info->imm.value = 0; + info->imm.is_fp = 1; + break; + } + set_fatal_syntax_error (_("immediate zero expected")); + goto failure; + } + + case AARCH64_OPND_IMM_MOV: + { + char *saved = str; + if (reg_name_p (str, REG_TYPE_R_Z_SP)) + goto failure; + str = saved; + po_misc_or_fail (my_get_expression (&inst.reloc.exp, &str, + GE_OPT_PREFIX, 1)); + /* The MOV immediate alias will be fixed up by fix_mov_imm_insn + later. fix_mov_imm_insn will try to determine a machine + instruction (MOVZ, MOVN or ORR) for it and will issue an error + message if the immediate cannot be moved by a single + instruction. */ + aarch64_set_gas_internal_fixup (&inst.reloc, info, 1); + inst.base.operands[i].skip = 1; + } + break; + + case AARCH64_OPND_SIMD_IMM: + case AARCH64_OPND_SIMD_IMM_SFT: + if (! parse_big_immediate (&str, &val)) + goto failure; + assign_imm_if_const_or_fixup_later (&inst.reloc, info, + /* addr_off_p */ 0, + /* need_libopcodes_p */ 1, + /* skip_p */ 1); + /* Parse shift. + N.B. although AARCH64_OPND_SIMD_IMM doesn't permit any + shift, we don't check it here; we leave the checking to + the libopcodes (operand_general_constraint_met_p). By + doing this, we achieve better diagnostics. */ + if (skip_past_comma (&str) + && ! parse_shift (&str, info, SHIFTED_LSL_MSL)) + goto failure; + if (!info->shifter.operator_present + && info->type == AARCH64_OPND_SIMD_IMM_SFT) + { + /* Default to LSL if not present. Libopcodes prefers shifter + kind to be explicit. */ + gas_assert (info->shifter.kind == AARCH64_MOD_NONE); + info->shifter.kind = AARCH64_MOD_LSL; + } + break; + + case AARCH64_OPND_FPIMM: + case AARCH64_OPND_SIMD_FPIMM: + { + int qfloat; + if (! parse_aarch64_imm_float (&str, &qfloat)) + goto failure; + if (qfloat == 0) + { + set_fatal_syntax_error (_("invalid floating-point constant")); + goto failure; + } + inst.base.operands[i].imm.value = encode_imm_float_bits (qfloat); + inst.base.operands[i].imm.is_fp = 1; + } + break; + + case AARCH64_OPND_LIMM: + po_misc_or_fail (parse_shifter_operand (&str, info, + SHIFTED_LOGIC_IMM)); + if (info->shifter.operator_present) + { + set_fatal_syntax_error + (_("shift not allowed for bitmask immediate")); + goto failure; + } + assign_imm_if_const_or_fixup_later (&inst.reloc, info, + /* addr_off_p */ 0, + /* need_libopcodes_p */ 1, + /* skip_p */ 1); + break; + + case AARCH64_OPND_AIMM: + if (opcode->op == OP_ADD) + /* ADD may have relocation types. */ + po_misc_or_fail (parse_shifter_operand_reloc (&str, info, + SHIFTED_ARITH_IMM)); + else + po_misc_or_fail (parse_shifter_operand (&str, info, + SHIFTED_ARITH_IMM)); + switch (inst.reloc.type) + { + case BFD_RELOC_AARCH64_TLSLE_ADD_TPREL_HI12: + info->shifter.amount = 12; + break; + case BFD_RELOC_UNUSED: + aarch64_set_gas_internal_fixup (&inst.reloc, info, 0); + if (info->shifter.kind != AARCH64_MOD_NONE) + inst.reloc.flags = FIXUP_F_HAS_EXPLICIT_SHIFT; + inst.reloc.pc_rel = 0; + break; + default: + break; + } + info->imm.value = 0; + if (!info->shifter.operator_present) + { + /* Default to LSL if not present. Libopcodes prefers shifter + kind to be explicit. */ + gas_assert (info->shifter.kind == AARCH64_MOD_NONE); + info->shifter.kind = AARCH64_MOD_LSL; + } + break; + + case AARCH64_OPND_HALF: + { + /* #<imm16> or relocation. */ + int internal_fixup_p; + po_misc_or_fail (parse_half (&str, &internal_fixup_p)); + if (internal_fixup_p) + aarch64_set_gas_internal_fixup (&inst.reloc, info, 0); + skip_whitespace (str); + if (skip_past_comma (&str)) + { + /* {, LSL #<shift>} */ + if (! aarch64_gas_internal_fixup_p ()) + { + set_fatal_syntax_error (_("can't mix relocation modifier " + "with explicit shift")); + goto failure; + } + po_misc_or_fail (parse_shift (&str, info, SHIFTED_LSL)); + } + else + inst.base.operands[i].shifter.amount = 0; + inst.base.operands[i].shifter.kind = AARCH64_MOD_LSL; + inst.base.operands[i].imm.value = 0; + if (! process_movw_reloc_info ()) + goto failure; + } + break; + + case AARCH64_OPND_EXCEPTION: + po_misc_or_fail (parse_immediate_expression (&str, &inst.reloc.exp)); + assign_imm_if_const_or_fixup_later (&inst.reloc, info, + /* addr_off_p */ 0, + /* need_libopcodes_p */ 0, + /* skip_p */ 1); + break; + + case AARCH64_OPND_NZCV: + { + const asm_nzcv *nzcv = hash_find_n (aarch64_nzcv_hsh, str, 4); + if (nzcv != NULL) + { + str += 4; + info->imm.value = nzcv->value; + break; + } + po_imm_or_fail (0, 15); + info->imm.value = val; + } + break; + + case AARCH64_OPND_COND: + info->cond = hash_find_n (aarch64_cond_hsh, str, 2); + str += 2; + if (info->cond == NULL) + { + set_syntax_error (_("invalid condition")); + goto failure; + } + break; + + case AARCH64_OPND_ADDR_ADRP: + po_misc_or_fail (parse_adrp (&str)); + /* Clear the value as operand needs to be relocated. */ + info->imm.value = 0; + break; + + case AARCH64_OPND_ADDR_PCREL14: + case AARCH64_OPND_ADDR_PCREL19: + case AARCH64_OPND_ADDR_PCREL21: + case AARCH64_OPND_ADDR_PCREL26: + po_misc_or_fail (parse_address_reloc (&str, info)); + if (!info->addr.pcrel) + { + set_syntax_error (_("invalid pc-relative address")); + goto failure; + } + if (inst.gen_lit_pool + && (opcode->iclass != loadlit || opcode->op == OP_PRFM_LIT)) + { + /* Only permit "=value" in the literal load instructions. + The literal will be generated by programmer_friendly_fixup. */ + set_syntax_error (_("invalid use of \"=immediate\"")); + goto failure; + } + if (inst.reloc.exp.X_op == O_symbol && find_reloc_table_entry (&str)) + { + set_syntax_error (_("unrecognized relocation suffix")); + goto failure; + } + if (inst.reloc.exp.X_op == O_constant && !inst.gen_lit_pool) + { + info->imm.value = inst.reloc.exp.X_add_number; + inst.reloc.type = BFD_RELOC_UNUSED; + } + else + { + info->imm.value = 0; + switch (opcode->iclass) + { + 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; + break; + case testbranch: + /* e.g. TBZ */ + gas_assert (operands[i] == AARCH64_OPND_ADDR_PCREL14); + inst.reloc.type = BFD_RELOC_AARCH64_TSTBR14; + break; + case branch_imm: + /* e.g. B or BL */ + gas_assert (operands[i] == AARCH64_OPND_ADDR_PCREL26); + inst.reloc.type = (opcode->op == OP_BL) + ? BFD_RELOC_AARCH64_CALL26 : BFD_RELOC_AARCH64_JUMP26; + break; + case loadlit: + gas_assert (operands[i] == AARCH64_OPND_ADDR_PCREL19); + inst.reloc.type = BFD_RELOC_AARCH64_LD_LO19_PCREL; + break; + case pcreladdr: + gas_assert (operands[i] == AARCH64_OPND_ADDR_PCREL21); + inst.reloc.type = BFD_RELOC_AARCH64_ADR_LO21_PCREL; + break; + default: + gas_assert (0); + abort (); + } + inst.reloc.pc_rel = 1; + } + break; + + case AARCH64_OPND_ADDR_SIMPLE: + case AARCH64_OPND_SIMD_ADDR_SIMPLE: + /* [<Xn|SP>{, #<simm>}] */ + po_char_or_fail ('['); + po_reg_or_fail (REG_TYPE_R64_SP); + /* Accept optional ", #0". */ + if (operands[i] == AARCH64_OPND_ADDR_SIMPLE + && skip_past_char (&str, ',')) + { + skip_past_char (&str, '#'); + if (! skip_past_char (&str, '0')) + { + set_fatal_syntax_error + (_("the optional immediate offset can only be 0")); + goto failure; + } + } + po_char_or_fail (']'); + info->addr.base_regno = val; + break; + + case AARCH64_OPND_ADDR_REGOFF: + /* [<Xn|SP>, <R><m>{, <extend> {<amount>}}] */ + po_misc_or_fail (parse_address (&str, info, 0)); + if (info->addr.pcrel || !info->addr.offset.is_reg + || !info->addr.preind || info->addr.postind + || info->addr.writeback) + { + set_syntax_error (_("invalid addressing mode")); + goto failure; + } + if (!info->shifter.operator_present) + { + /* Default to LSL if not present. Libopcodes prefers shifter + kind to be explicit. */ + gas_assert (info->shifter.kind == AARCH64_MOD_NONE); + info->shifter.kind = AARCH64_MOD_LSL; + } + /* Qualifier to be deduced by libopcodes. */ + break; + + case AARCH64_OPND_ADDR_SIMM7: + po_misc_or_fail (parse_address (&str, info, 0)); + if (info->addr.pcrel || info->addr.offset.is_reg + || (!info->addr.preind && !info->addr.postind)) + { + set_syntax_error (_("invalid addressing mode")); + goto failure; + } + assign_imm_if_const_or_fixup_later (&inst.reloc, info, + /* addr_off_p */ 1, + /* need_libopcodes_p */ 1, + /* skip_p */ 0); + break; + + case AARCH64_OPND_ADDR_SIMM9: + case AARCH64_OPND_ADDR_SIMM9_2: + po_misc_or_fail (parse_address_reloc (&str, info)); + if (info->addr.pcrel || info->addr.offset.is_reg + || (!info->addr.preind && !info->addr.postind) + || (operands[i] == AARCH64_OPND_ADDR_SIMM9_2 + && info->addr.writeback)) + { + set_syntax_error (_("invalid addressing mode")); + goto failure; + } + if (inst.reloc.type != BFD_RELOC_UNUSED) + { + set_syntax_error (_("relocation not allowed")); + goto failure; + } + assign_imm_if_const_or_fixup_later (&inst.reloc, info, + /* addr_off_p */ 1, + /* need_libopcodes_p */ 1, + /* skip_p */ 0); + break; + + case AARCH64_OPND_ADDR_UIMM12: + po_misc_or_fail (parse_address_reloc (&str, info)); + if (info->addr.pcrel || info->addr.offset.is_reg + || !info->addr.preind || info->addr.writeback) + { + set_syntax_error (_("invalid addressing mode")); + goto failure; + } + if (inst.reloc.type == BFD_RELOC_UNUSED) + aarch64_set_gas_internal_fixup (&inst.reloc, info, 1); + else if (inst.reloc.type == BFD_RELOC_AARCH64_LDST_LO12) + inst.reloc.type = ldst_lo12_determine_real_reloc_type (); + /* Leave qualifier to be determined by libopcodes. */ + break; + + case AARCH64_OPND_SIMD_ADDR_POST: + /* [<Xn|SP>], <Xm|#<amount>> */ + po_misc_or_fail (parse_address (&str, info, 1)); + if (!info->addr.postind || !info->addr.writeback) + { + set_syntax_error (_("invalid addressing mode")); + goto failure; + } + if (!info->addr.offset.is_reg) + { + if (inst.reloc.exp.X_op == O_constant) + info->addr.offset.imm = inst.reloc.exp.X_add_number; + else + { + set_fatal_syntax_error + (_("writeback value should be an immediate constant")); + goto failure; + } + } + /* No qualifier. */ + break; + + case AARCH64_OPND_SYSREG: + if ((val = parse_sys_reg (&str, aarch64_sys_regs_hsh, 1)) == FALSE) + { + set_syntax_error (_("unknown or missing system register name")); + goto failure; + } + inst.base.operands[i].sysreg = val; + break; + + case AARCH64_OPND_PSTATEFIELD: + if ((val = parse_sys_reg (&str, aarch64_pstatefield_hsh, 0)) == FALSE) + { + set_syntax_error (_("unknown or missing PSTATE field name")); + goto failure; + } + inst.base.operands[i].pstatefield = val; + break; + + case AARCH64_OPND_SYSREG_IC: + inst.base.operands[i].sysins_op = + parse_sys_ins_reg (&str, aarch64_sys_regs_ic_hsh); + goto sys_reg_ins; + case AARCH64_OPND_SYSREG_DC: + inst.base.operands[i].sysins_op = + parse_sys_ins_reg (&str, aarch64_sys_regs_dc_hsh); + goto sys_reg_ins; + case AARCH64_OPND_SYSREG_AT: + inst.base.operands[i].sysins_op = + parse_sys_ins_reg (&str, aarch64_sys_regs_at_hsh); + goto sys_reg_ins; + case AARCH64_OPND_SYSREG_TLBI: + inst.base.operands[i].sysins_op = + parse_sys_ins_reg (&str, aarch64_sys_regs_tlbi_hsh); +sys_reg_ins: + if (inst.base.operands[i].sysins_op == NULL) + { + set_fatal_syntax_error ( _("unknown or missing operation name")); + goto failure; + } + break; + + case AARCH64_OPND_BARRIER: + case AARCH64_OPND_BARRIER_ISB: + val = parse_barrier (&str); + if (val != PARSE_FAIL + && operands[i] == AARCH64_OPND_BARRIER_ISB && val != 0xf) + { + /* ISB only accepts options name 'sy'. */ + set_syntax_error + (_("the specified option is not accepted in ISB")); + /* Turn off backtrack as this optional operand is present. */ + backtrack_pos = 0; + goto failure; + } + /* This is an extension to accept a 0..15 immediate. */ + if (val == PARSE_FAIL) + po_imm_or_fail (0, 15); + info->barrier = aarch64_barrier_options + val; + break; + + case AARCH64_OPND_PRFOP: + val = parse_pldop (&str); + /* This is an extension to accept a 0..31 immediate. */ + if (val == PARSE_FAIL) + po_imm_or_fail (0, 31); + inst.base.operands[i].prfop = aarch64_prfops + val; + break; + + default: + as_fatal (_("unhandled operand code %d"), operands[i]); + } + + /* If we get here, this operand was successfully parsed. */ + inst.base.operands[i].present = 1; + continue; + +failure: + /* The parse routine should already have set the error, but in case + not, set a default one here. */ + if (! error_p ()) + set_default_error (); + + if (! backtrack_pos) + goto parse_operands_return; + + /* Reaching here means we are dealing with an optional operand that is + omitted from the assembly line. */ + gas_assert (optional_operand_p (opcode, i)); + info->present = 0; + process_omitted_operand (operands[i], opcode, i, info); + + /* Try again, skipping the optional operand at backtrack_pos. */ + str = backtrack_pos; + backtrack_pos = 0; + + /* If this is the last operand that is optional and omitted, but without + the presence of a comma. */ + if (i && comma_skipped_p && i == aarch64_num_of_operands (opcode) - 1) + { + set_fatal_syntax_error + (_("unexpected comma before the omitted optional operand")); + goto parse_operands_return; + } + + /* Clear any error record after the omitted optional operand has been + successfully handled. */ + clear_error (); + } + + /* Check if we have parsed all the operands. */ + if (*str != '\0' && ! error_p ()) + { + /* Set I to the index of the last present operand; this is + for the purpose of diagnostics. */ + for (i -= 1; i >= 0 && !inst.base.operands[i].present; --i) + ; + set_fatal_syntax_error + (_("unexpected characters following instruction")); + } + +parse_operands_return: + + if (error_p ()) + { + DEBUG_TRACE ("parsing FAIL: %s - %s", + operand_mismatch_kind_names[get_error_kind ()], + get_error_message ()); + /* Record the operand error properly; this is useful when there + are multiple instruction templates for a mnemonic name, so that + later on, we can select the error that most closely describes + the problem. */ + record_operand_error (opcode, i, get_error_kind (), + get_error_message ()); + return FALSE; + } + else + { + DEBUG_TRACE ("parsing SUCCESS"); + return TRUE; + } +} + +/* It does some fix-up to provide some programmer friendly feature while + keeping the libopcodes happy, i.e. libopcodes only accepts + the preferred architectural syntax. + Return FALSE if there is any failure; otherwise return TRUE. */ + +static bfd_boolean +programmer_friendly_fixup (aarch64_instruction *instr) +{ + aarch64_inst *base = &instr->base; + const aarch64_opcode *opcode = base->opcode; + enum aarch64_op op = opcode->op; + aarch64_opnd_info *operands = base->operands; + + DEBUG_TRACE ("enter"); + + switch (opcode->iclass) + { + case testbranch: + /* TBNZ Xn|Wn, #uimm6, label + Test and Branch Not Zero: conditionally jumps to label if bit number + uimm6 in register Xn is not zero. The bit number implies the width of + the register, which may be written and should be disassembled as Wn if + uimm is less than 32. */ + if (operands[0].qualifier == AARCH64_OPND_QLF_W) + { + if (operands[1].imm.value >= 32) + { + record_operand_out_of_range_error (opcode, 1, _("immediate value"), + 0, 31); + return FALSE; + } + operands[0].qualifier = AARCH64_OPND_QLF_X; + } + break; + case loadlit: + /* LDR Wt, label | =value + As a convenience assemblers will typically permit the notation + "=value" in conjunction with the pc-relative literal load instructions + to automatically place an immediate value or symbolic address in a + nearby literal pool and generate a hidden label which references it. + ISREG has been set to 0 in the case of =value. */ + if (instr->gen_lit_pool + && (op == OP_LDR_LIT || op == OP_LDRV_LIT || op == OP_LDRSW_LIT)) + { + int size = aarch64_get_qualifier_esize (operands[0].qualifier); + if (op == OP_LDRSW_LIT) + size = 4; + if (instr->reloc.exp.X_op != O_constant + && instr->reloc.exp.X_op != O_symbol) + { + record_operand_error (opcode, 1, + AARCH64_OPDE_FATAL_SYNTAX_ERROR, + _("constant expression expected")); + return FALSE; + } + if (! add_to_lit_pool (&instr->reloc.exp, size)) + { + record_operand_error (opcode, 1, + AARCH64_OPDE_OTHER_ERROR, + _("literal pool insertion failed")); + return FALSE; + } + } + break; + case asimdimm: + /* Allow MOVI V0.16B, 97, LSL 0, although the preferred architectural + syntax requires that the LSL shifter can only be used when the + destination register has the shape of 4H, 8H, 2S or 4S. */ + if (op == OP_V_MOVI_B && operands[1].shifter.kind == AARCH64_MOD_LSL + && (operands[0].qualifier == AARCH64_OPND_QLF_V_8B + || operands[0].qualifier == AARCH64_OPND_QLF_V_16B)) + { + if (operands[1].shifter.amount != 0) + { + record_operand_error (opcode, 1, + AARCH64_OPDE_OTHER_ERROR, + _("shift amount non-zero")); + return FALSE; + } + operands[1].shifter.kind = AARCH64_MOD_NONE; + operands[1].qualifier = AARCH64_OPND_QLF_NIL; + } + break; + case log_shift: + case bitfield: + /* UXT[BHW] Wd, Wn + Unsigned Extend Byte|Halfword|Word: UXT[BH] is architectural alias + for UBFM Wd,Wn,#0,#7|15, while UXTW is pseudo instruction which is + encoded using ORR Wd, WZR, Wn (MOV Wd,Wn). + A programmer-friendly assembler should accept a destination Xd in + place of Wd, however that is not the preferred form for disassembly. + */ + if ((op == OP_UXTB || op == OP_UXTH || op == OP_UXTW) + && operands[1].qualifier == AARCH64_OPND_QLF_W + && operands[0].qualifier == AARCH64_OPND_QLF_X) + operands[0].qualifier = AARCH64_OPND_QLF_W; + break; + + case addsub_ext: + { + /* In the 64-bit form, the final register operand is written as Wm + for all but the (possibly omitted) UXTX/LSL and SXTX + operators. + As a programmer-friendly assembler, we accept e.g. + ADDS <Xd>, <Xn|SP>, <Xm>{, UXTB {#<amount>}} and change it to + ADDS <Xd>, <Xn|SP>, <Wm>{, UXTB {#<amount>}}. */ + int idx = aarch64_operand_index (opcode->operands, + AARCH64_OPND_Rm_EXT); + gas_assert (idx == 1 || idx == 2); + if (operands[0].qualifier == AARCH64_OPND_QLF_X + && operands[idx].qualifier == AARCH64_OPND_QLF_X + && operands[idx].shifter.kind != AARCH64_MOD_LSL + && operands[idx].shifter.kind != AARCH64_MOD_UXTX + && operands[idx].shifter.kind != AARCH64_MOD_SXTX) + operands[idx].qualifier = AARCH64_OPND_QLF_W; + } + break; + + default: + break; + } + + DEBUG_TRACE ("exit with SUCCESS"); + return TRUE; +} + +/* A wrapper function to interface with libopcodes on encoding and + record the error message if there is any. + + Return TRUE on success; otherwise return FALSE. */ + +static bfd_boolean +do_encode (const aarch64_opcode *opcode, aarch64_inst *instr, + aarch64_insn *code) +{ + aarch64_operand_error error_info; + error_info.kind = AARCH64_OPDE_NIL; + if (aarch64_opcode_encode (opcode, instr, code, NULL, &error_info)) + return TRUE; + else + { + gas_assert (error_info.kind != AARCH64_OPDE_NIL); + record_operand_error_info (opcode, &error_info); + return FALSE; + } +} + +#ifdef DEBUG_AARCH64 +static inline void +dump_opcode_operands (const aarch64_opcode *opcode) +{ + int i = 0; + while (opcode->operands[i] != AARCH64_OPND_NIL) + { + aarch64_verbose ("\t\t opnd%d: %s", i, + aarch64_get_operand_name (opcode->operands[i])[0] != '\0' + ? aarch64_get_operand_name (opcode->operands[i]) + : aarch64_get_operand_desc (opcode->operands[i])); + ++i; + } +} +#endif /* DEBUG_AARCH64 */ + +/* This is the guts of the machine-dependent assembler. STR points to a + machine dependent instruction. This function is supposed to emit + the frags/bytes it assembles to. */ + +void +md_assemble (char *str) +{ + char *p = str; + templates *template; + aarch64_opcode *opcode; + aarch64_inst *inst_base; + unsigned saved_cond; + + /* Align the previous label if needed. */ + if (last_label_seen != NULL) + { + symbol_set_frag (last_label_seen, frag_now); + S_SET_VALUE (last_label_seen, (valueT) frag_now_fix ()); + S_SET_SEGMENT (last_label_seen, now_seg); + } + + inst.reloc.type = BFD_RELOC_UNUSED; + + DEBUG_TRACE ("\n\n"); + DEBUG_TRACE ("=============================="); + DEBUG_TRACE ("Enter md_assemble with %s", str); + + template = opcode_lookup (&p); + if (!template) + { + /* It wasn't an instruction, but it might be a register alias of + the form alias .req reg directive. */ + if (!create_register_alias (str, p)) + as_bad (_("unknown mnemonic `%s' -- `%s'"), get_mnemonic_name (str), + str); + return; + } + + skip_whitespace (p); + if (*p == ',') + { + as_bad (_("unexpected comma after the mnemonic name `%s' -- `%s'"), + get_mnemonic_name (str), str); + return; + } + + init_operand_error_report (); + + saved_cond = inst.cond; + reset_aarch64_instruction (&inst); + inst.cond = saved_cond; + + /* Iterate through all opcode entries with the same mnemonic name. */ + do + { + opcode = template->opcode; + + DEBUG_TRACE ("opcode %s found", opcode->name); +#ifdef DEBUG_AARCH64 + if (debug_dump) + dump_opcode_operands (opcode); +#endif /* DEBUG_AARCH64 */ + + /* Check that this instruction is supported for this CPU. */ + if (!opcode->avariant + || !AARCH64_CPU_HAS_FEATURE (cpu_variant, *opcode->avariant)) + { + as_bad (_("selected processor does not support `%s'"), str); + return; + } + + mapping_state (MAP_INSN); + + inst_base = &inst.base; + inst_base->opcode = opcode; + + /* Truly conditionally executed instructions, e.g. b.cond. */ + if (opcode->flags & F_COND) + { + gas_assert (inst.cond != COND_ALWAYS); + inst_base->cond = get_cond_from_value (inst.cond); + DEBUG_TRACE ("condition found %s", inst_base->cond->names[0]); + } + else if (inst.cond != COND_ALWAYS) + { + /* It shouldn't arrive here, where the assembly looks like a + conditional instruction but the found opcode is unconditional. */ + gas_assert (0); + continue; + } + + if (parse_operands (p, opcode) + && programmer_friendly_fixup (&inst) + && do_encode (inst_base->opcode, &inst.base, &inst_base->value)) + { + if (inst.reloc.type == BFD_RELOC_UNUSED + || !inst.reloc.need_libopcodes_p) + output_inst (NULL); + else + { + /* If there is relocation generated for the instruction, + store the instruction information for the future fix-up. */ + struct aarch64_inst *copy; + gas_assert (inst.reloc.type != BFD_RELOC_UNUSED); + if ((copy = xmalloc (sizeof (struct aarch64_inst))) == NULL) + abort (); + memcpy (copy, &inst.base, sizeof (struct aarch64_inst)); + output_inst (copy); + } + return; + } + + template = template->next; + if (template != NULL) + { + reset_aarch64_instruction (&inst); + inst.cond = saved_cond; + } + } + while (template != NULL); + + /* Issue the error messages if any. */ + output_operand_error_report (str); +} + +/* Various frobbings of labels and their addresses. */ + +void +aarch64_start_line_hook (void) +{ + last_label_seen = NULL; +} + +void +aarch64_frob_label (symbolS * sym) +{ + last_label_seen = sym; + + dwarf2_emit_label (sym); +} + +int +aarch64_data_in_code (void) +{ + if (!strncmp (input_line_pointer + 1, "data:", 5)) + { + *input_line_pointer = '/'; + input_line_pointer += 5; + *input_line_pointer = 0; + return 1; + } + + return 0; +} + +char * +aarch64_canonicalize_symbol_name (char *name) +{ + int len; + + if ((len = strlen (name)) > 5 && streq (name + len - 5, "/data")) + *(name + len - 5) = 0; + + return name; +} + +/* Table of all register names defined by default. The user can + define additional names with .req. Note that all register names + should appear in both upper and lowercase variants. Some registers + also have mixed-case names. */ + +#define REGDEF(s,n,t) { #s, n, REG_TYPE_##t, TRUE } +#define REGNUM(p,n,t) REGDEF(p##n, n, t) +#define REGSET31(p,t) \ + REGNUM(p, 0,t), REGNUM(p, 1,t), REGNUM(p, 2,t), REGNUM(p, 3,t), \ + REGNUM(p, 4,t), REGNUM(p, 5,t), REGNUM(p, 6,t), REGNUM(p, 7,t), \ + REGNUM(p, 8,t), REGNUM(p, 9,t), REGNUM(p,10,t), REGNUM(p,11,t), \ + REGNUM(p,12,t), REGNUM(p,13,t), REGNUM(p,14,t), REGNUM(p,15,t), \ + REGNUM(p,16,t), REGNUM(p,17,t), REGNUM(p,18,t), REGNUM(p,19,t), \ + REGNUM(p,20,t), REGNUM(p,21,t), REGNUM(p,22,t), REGNUM(p,23,t), \ + REGNUM(p,24,t), REGNUM(p,25,t), REGNUM(p,26,t), REGNUM(p,27,t), \ + REGNUM(p,28,t), REGNUM(p,29,t), REGNUM(p,30,t) +#define REGSET(p,t) \ + REGSET31(p,t), REGNUM(p,31,t) + +/* These go into aarch64_reg_hsh hash-table. */ +static const reg_entry reg_names[] = { + /* Integer registers. */ + REGSET31 (x, R_64), REGSET31 (X, R_64), + REGSET31 (w, R_32), REGSET31 (W, R_32), + + REGDEF (wsp, 31, SP_32), REGDEF (WSP, 31, SP_32), + REGDEF (sp, 31, SP_64), REGDEF (SP, 31, SP_64), + + REGDEF (wzr, 31, Z_32), REGDEF (WZR, 31, Z_32), + REGDEF (xzr, 31, Z_64), REGDEF (XZR, 31, Z_64), + + /* Coprocessor register numbers. */ + REGSET (c, CN), REGSET (C, CN), + + /* Floating-point single precision registers. */ + REGSET (s, FP_S), REGSET (S, FP_S), + + /* Floating-point double precision registers. */ + REGSET (d, FP_D), REGSET (D, FP_D), + + /* Floating-point half precision registers. */ + REGSET (h, FP_H), REGSET (H, FP_H), + + /* Floating-point byte precision registers. */ + REGSET (b, FP_B), REGSET (B, FP_B), + + /* Floating-point quad precision registers. */ + REGSET (q, FP_Q), REGSET (Q, FP_Q), + + /* FP/SIMD registers. */ + REGSET (v, VN), REGSET (V, VN), +}; + +#undef REGDEF +#undef REGNUM +#undef REGSET + +#define N 1 +#define n 0 +#define Z 1 +#define z 0 +#define C 1 +#define c 0 +#define V 1 +#define v 0 +#define B(a,b,c,d) (((a) << 3) | ((b) << 2) | ((c) << 1) | (d)) +static const asm_nzcv nzcv_names[] = { + {"nzcv", B (n, z, c, v)}, + {"nzcV", B (n, z, c, V)}, + {"nzCv", B (n, z, C, v)}, + {"nzCV", B (n, z, C, V)}, + {"nZcv", B (n, Z, c, v)}, + {"nZcV", B (n, Z, c, V)}, + {"nZCv", B (n, Z, C, v)}, + {"nZCV", B (n, Z, C, V)}, + {"Nzcv", B (N, z, c, v)}, + {"NzcV", B (N, z, c, V)}, + {"NzCv", B (N, z, C, v)}, + {"NzCV", B (N, z, C, V)}, + {"NZcv", B (N, Z, c, v)}, + {"NZcV", B (N, Z, c, V)}, + {"NZCv", B (N, Z, C, v)}, + {"NZCV", B (N, Z, C, V)} +}; + +#undef N +#undef n +#undef Z +#undef z +#undef C +#undef c +#undef V +#undef v +#undef B + +/* MD interface: bits in the object file. */ + +/* Turn an integer of n bytes (in val) into a stream of bytes appropriate + for use in the a.out file, and stores them in the array pointed to by buf. + This knows about the endian-ness of the target machine and does + THE RIGHT THING, whatever it is. Possible values for n are 1 (byte) + 2 (short) and 4 (long) Floating numbers are put out as a series of + LITTLENUMS (shorts, here at least). */ + +void +md_number_to_chars (char *buf, valueT val, int n) +{ + if (target_big_endian) + number_to_chars_bigendian (buf, val, n); + else + number_to_chars_littleendian (buf, val, n); +} + +/* MD interface: Sections. */ + +/* Estimate the size of a frag before relaxing. Assume everything fits in + 4 bytes. */ + +int +md_estimate_size_before_relax (fragS * fragp, segT segtype ATTRIBUTE_UNUSED) +{ + fragp->fr_var = 4; + return 4; +} + +/* Round up a section size to the appropriate boundary. */ + +valueT +md_section_align (segT segment ATTRIBUTE_UNUSED, valueT size) +{ + return size; +} + +/* This is called from HANDLE_ALIGN in write.c. Fill in the contents + of an rs_align_code fragment. */ + +void +aarch64_handle_align (fragS * fragP) +{ + /* NOP = d503201f */ + /* AArch64 instructions are always little-endian. */ + static char const aarch64_noop[4] = { 0x1f, 0x20, 0x03, 0xd5 }; + + int bytes, fix, noop_size; + char *p; + const char *noop; + + 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 > MAX_MEM_FOR_RS_ALIGN_CODE) + bytes &= MAX_MEM_FOR_RS_ALIGN_CODE; + +#ifdef OBJ_ELF + gas_assert (fragP->tc_frag_data.recorded); +#endif + + noop = aarch64_noop; + noop_size = sizeof (aarch64_noop); + fragP->fr_var = noop_size; + + if (bytes & (noop_size - 1)) + { + fix = bytes & (noop_size - 1); +#ifdef OBJ_ELF + insert_data_mapping_symbol (MAP_INSN, fragP->fr_fix, fragP, fix); +#endif + memset (p, 0, fix); + p += fix; + bytes -= fix; + } + + 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 +aarch64_frag_align_code (int n, int max) +{ + char *p; + + /* We assume that there will never be a requirement + to support alignments greater than x bytes. */ + if (max > MAX_MEM_FOR_RS_ALIGN_CODE) + as_fatal (_ + ("alignments greater than %d bytes not supported in .text sections"), + MAX_MEM_FOR_RS_ALIGN_CODE + 1); + + 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. + Note - despite the name this initialisation is not done when the frag + is created, but only when its type is assigned. A frag can be created + and used a long time before its type is set, so beware of assuming that + this initialisationis performed first. */ + +#ifndef OBJ_ELF +void +aarch64_init_frag (fragS * fragP ATTRIBUTE_UNUSED, + int max_chars ATTRIBUTE_UNUSED) +{ +} + +#else /* OBJ_ELF is defined. */ +void +aarch64_init_frag (fragS * fragP, int max_chars) +{ + /* Record a mapping symbol for alignment frags. We will delete this + later if the alignment ends up empty. */ + if (!fragP->tc_frag_data.recorded) + { + fragP->tc_frag_data.recorded = 1; + switch (fragP->fr_type) + { + case rs_align: + case rs_align_test: + case rs_fill: + mapping_state_2 (MAP_DATA, max_chars); + break; + case rs_align_code: + mapping_state_2 (MAP_INSN, max_chars); + break; + default: + break; + } + } +} + +/* Initialize the DWARF-2 unwind information for this procedure. */ + +void +tc_aarch64_frame_initial_instructions (void) +{ + cfi_add_CFA_def_cfa (REG_SP, 0); +} +#endif /* OBJ_ELF */ + +/* Convert REGNAME to a DWARF-2 register number. */ + +int +tc_aarch64_regname_to_dw2regnum (char *regname) +{ + const reg_entry *reg = parse_reg (®name); + if (reg == NULL) + return -1; + + switch (reg->type) + { + case REG_TYPE_SP_32: + case REG_TYPE_SP_64: + case REG_TYPE_R_32: + case REG_TYPE_R_64: + case REG_TYPE_FP_B: + case REG_TYPE_FP_H: + case REG_TYPE_FP_S: + case REG_TYPE_FP_D: + case REG_TYPE_FP_Q: + return reg->number; + default: + break; + } + return -1; +} + +/* MD interface: Symbol and relocation handling. */ + +/* Return the address within the segment that a PC-relative fixup is + relative to. For AArch64 PC-relative fixups applied to instructions + are generally relative to the location plus AARCH64_PCREL_OFFSET bytes. */ + +long +md_pcrel_from_section (fixS * fixP, segT seg) +{ + offsetT base = fixP->fx_where + fixP->fx_frag->fr_address; + + /* If this is pc-relative and we are going to emit a relocation + then we just want to put out any pipeline compensation that the linker + will need. Otherwise we want to use the calculated base. */ + if (fixP->fx_pcrel + && ((fixP->fx_addsy && S_GET_SEGMENT (fixP->fx_addsy) != seg) + || aarch64_force_relocation (fixP))) + base = 0; + + /* AArch64 should be consistent for all pc-relative relocations. */ + return base + AARCH64_PCREL_OFFSET; +} + +/* Under ELF we need to default _GLOBAL_OFFSET_TABLE. + Otherwise we have no need to default values of symbols. */ + +symbolS * +md_undefined_symbol (char *name ATTRIBUTE_UNUSED) +{ +#ifdef OBJ_ELF + if (name[0] == '_' && name[1] == 'G' + && streq (name, GLOBAL_OFFSET_TABLE_NAME)) + { + if (!GOT_symbol) + { + if (symbol_find (name)) + as_bad (_("GOT already in the symbol table")); + + GOT_symbol = symbol_new (name, undefined_section, + (valueT) 0, &zero_address_frag); + } + + return GOT_symbol; + } +#endif + + return 0; +} + +/* Return non-zero if the indicated VALUE has overflowed the maximum + range expressible by a unsigned number with the indicated number of + BITS. */ + +static bfd_boolean +unsigned_overflow (valueT value, unsigned bits) +{ + valueT lim; + if (bits >= sizeof (valueT) * 8) + return FALSE; + lim = (valueT) 1 << bits; + return (value >= lim); +} + + +/* Return non-zero if the indicated VALUE has overflowed the maximum + range expressible by an signed number with the indicated number of + BITS. */ + +static bfd_boolean +signed_overflow (offsetT value, unsigned bits) +{ + offsetT lim; + if (bits >= sizeof (offsetT) * 8) + return FALSE; + lim = (offsetT) 1 << (bits - 1); + return (value < -lim || value >= lim); +} + +/* Given an instruction in *INST, which is expected to be a scaled, 12-bit, + unsigned immediate offset load/store instruction, try to encode it as + an unscaled, 9-bit, signed immediate offset load/store instruction. + Return TRUE if it is successful; otherwise return FALSE. + + As a programmer-friendly assembler, LDUR/STUR instructions can be generated + in response to the standard LDR/STR mnemonics when the immediate offset is + unambiguous, i.e. when it is negative or unaligned. */ + +static bfd_boolean +try_to_encode_as_unscaled_ldst (aarch64_inst *instr) +{ + int idx; + enum aarch64_op new_op; + const aarch64_opcode *new_opcode; + + gas_assert (instr->opcode->iclass == ldst_pos); + + switch (instr->opcode->op) + { + case OP_LDRB_POS:new_op = OP_LDURB; break; + case OP_STRB_POS: new_op = OP_STURB; break; + case OP_LDRSB_POS: new_op = OP_LDURSB; break; + case OP_LDRH_POS: new_op = OP_LDURH; break; + case OP_STRH_POS: new_op = OP_STURH; break; + case OP_LDRSH_POS: new_op = OP_LDURSH; break; + case OP_LDR_POS: new_op = OP_LDUR; break; + case OP_STR_POS: new_op = OP_STUR; break; + case OP_LDRF_POS: new_op = OP_LDURV; break; + case OP_STRF_POS: new_op = OP_STURV; break; + case OP_LDRSW_POS: new_op = OP_LDURSW; break; + case OP_PRFM_POS: new_op = OP_PRFUM; break; + default: new_op = OP_NIL; break; + } + + if (new_op == OP_NIL) + return FALSE; + + new_opcode = aarch64_get_opcode (new_op); + gas_assert (new_opcode != NULL); + + DEBUG_TRACE ("Check programmer-friendly STURB/LDURB -> STRB/LDRB: %d == %d", + instr->opcode->op, new_opcode->op); + + aarch64_replace_opcode (instr, new_opcode); + + /* Clear up the ADDR_SIMM9's qualifier; otherwise the + qualifier matching may fail because the out-of-date qualifier will + prevent the operand being updated with a new and correct qualifier. */ + idx = aarch64_operand_index (instr->opcode->operands, + AARCH64_OPND_ADDR_SIMM9); + gas_assert (idx == 1); + instr->operands[idx].qualifier = AARCH64_OPND_QLF_NIL; + + DEBUG_TRACE ("Found LDURB entry to encode programmer-friendly LDRB"); + + if (!aarch64_opcode_encode (instr->opcode, instr, &instr->value, NULL, NULL)) + return FALSE; + + return TRUE; +} + +/* Called by fix_insn to fix a MOV immediate alias instruction. + + Operand for a generic move immediate instruction, which is an alias + instruction that generates a single MOVZ, MOVN or ORR instruction to loads + a 32-bit/64-bit immediate value into general register. An assembler error + shall result if the immediate cannot be created by a single one of these + instructions. If there is a choice, then to ensure reversability an + assembler must prefer a MOVZ to MOVN, and MOVZ or MOVN to ORR. */ + +static void +fix_mov_imm_insn (fixS *fixP, char *buf, aarch64_inst *instr, offsetT value) +{ + const aarch64_opcode *opcode; + + /* Need to check if the destination is SP/ZR. The check has to be done + before any aarch64_replace_opcode. */ + int try_mov_wide_p = !aarch64_stack_pointer_p (&instr->operands[0]); + int try_mov_bitmask_p = !aarch64_zero_register_p (&instr->operands[0]); + + instr->operands[1].imm.value = value; + instr->operands[1].skip = 0; + + if (try_mov_wide_p) + { + /* Try the MOVZ alias. */ + opcode = aarch64_get_opcode (OP_MOV_IMM_WIDE); + aarch64_replace_opcode (instr, opcode); + if (aarch64_opcode_encode (instr->opcode, instr, + &instr->value, NULL, NULL)) + { + put_aarch64_insn (buf, instr->value); + return; + } + /* Try the MOVK alias. */ + opcode = aarch64_get_opcode (OP_MOV_IMM_WIDEN); + aarch64_replace_opcode (instr, opcode); + if (aarch64_opcode_encode (instr->opcode, instr, + &instr->value, NULL, NULL)) + { + put_aarch64_insn (buf, instr->value); + return; + } + } + + if (try_mov_bitmask_p) + { + /* Try the ORR alias. */ + opcode = aarch64_get_opcode (OP_MOV_IMM_LOG); + aarch64_replace_opcode (instr, opcode); + if (aarch64_opcode_encode (instr->opcode, instr, + &instr->value, NULL, NULL)) + { + put_aarch64_insn (buf, instr->value); + return; + } + } + + as_bad_where (fixP->fx_file, fixP->fx_line, + _("immediate cannot be moved by a single instruction")); +} + +/* An instruction operand which is immediate related may have symbol used + in the assembly, e.g. + + mov w0, u32 + .set u32, 0x00ffff00 + + At the time when the assembly instruction is parsed, a referenced symbol, + like 'u32' in the above example may not have been seen; a fixS is created + in such a case and is handled here after symbols have been resolved. + Instruction is fixed up with VALUE using the information in *FIXP plus + extra information in FLAGS. + + This function is called by md_apply_fix to fix up instructions that need + a fix-up described above but does not involve any linker-time relocation. */ + +static void +fix_insn (fixS *fixP, uint32_t flags, offsetT value) +{ + int idx; + uint32_t insn; + char *buf = fixP->fx_where + fixP->fx_frag->fr_literal; + enum aarch64_opnd opnd = fixP->tc_fix_data.opnd; + aarch64_inst *new_inst = fixP->tc_fix_data.inst; + + if (new_inst) + { + /* Now the instruction is about to be fixed-up, so the operand that + was previously marked as 'ignored' needs to be unmarked in order + to get the encoding done properly. */ + idx = aarch64_operand_index (new_inst->opcode->operands, opnd); + new_inst->operands[idx].skip = 0; + } + + gas_assert (opnd != AARCH64_OPND_NIL); + + switch (opnd) + { + case AARCH64_OPND_EXCEPTION: + if (unsigned_overflow (value, 16)) + as_bad_where (fixP->fx_file, fixP->fx_line, + _("immediate out of range")); + insn = get_aarch64_insn (buf); + insn |= encode_svc_imm (value); + put_aarch64_insn (buf, insn); + break; + + case AARCH64_OPND_AIMM: + /* ADD or SUB with immediate. + NOTE this assumes we come here with a add/sub shifted reg encoding + 3 322|2222|2 2 2 21111 111111 + 1 098|7654|3 2 1 09876 543210 98765 43210 + 0b000000 sf 000|1011|shift 0 Rm imm6 Rn Rd ADD + 2b000000 sf 010|1011|shift 0 Rm imm6 Rn Rd ADDS + 4b000000 sf 100|1011|shift 0 Rm imm6 Rn Rd SUB + 6b000000 sf 110|1011|shift 0 Rm imm6 Rn Rd SUBS + -> + 3 322|2222|2 2 221111111111 + 1 098|7654|3 2 109876543210 98765 43210 + 11000000 sf 001|0001|shift imm12 Rn Rd ADD + 31000000 sf 011|0001|shift imm12 Rn Rd ADDS + 51000000 sf 101|0001|shift imm12 Rn Rd SUB + 71000000 sf 111|0001|shift imm12 Rn Rd SUBS + Fields sf Rn Rd are already set. */ + insn = get_aarch64_insn (buf); + if (value < 0) + { + /* Add <-> sub. */ + insn = reencode_addsub_switch_add_sub (insn); + value = -value; + } + + if ((flags & FIXUP_F_HAS_EXPLICIT_SHIFT) == 0 + && unsigned_overflow (value, 12)) + { + /* Try to shift the value by 12 to make it fit. */ + if (((value >> 12) << 12) == value + && ! unsigned_overflow (value, 12 + 12)) + { + value >>= 12; + insn |= encode_addsub_imm_shift_amount (1); + } + } + + if (unsigned_overflow (value, 12)) + as_bad_where (fixP->fx_file, fixP->fx_line, + _("immediate out of range")); + + insn |= encode_addsub_imm (value); + + put_aarch64_insn (buf, insn); + break; + + case AARCH64_OPND_SIMD_IMM: + case AARCH64_OPND_SIMD_IMM_SFT: + case AARCH64_OPND_LIMM: + /* Bit mask immediate. */ + gas_assert (new_inst != NULL); + idx = aarch64_operand_index (new_inst->opcode->operands, opnd); + new_inst->operands[idx].imm.value = value; + if (aarch64_opcode_encode (new_inst->opcode, new_inst, + &new_inst->value, NULL, NULL)) + put_aarch64_insn (buf, new_inst->value); + else + as_bad_where (fixP->fx_file, fixP->fx_line, + _("invalid immediate")); + break; + + case AARCH64_OPND_HALF: + /* 16-bit unsigned immediate. */ + if (unsigned_overflow (value, 16)) + as_bad_where (fixP->fx_file, fixP->fx_line, + _("immediate out of range")); + insn = get_aarch64_insn (buf); + insn |= encode_movw_imm (value & 0xffff); + put_aarch64_insn (buf, insn); + break; + + case AARCH64_OPND_IMM_MOV: + /* Operand for a generic move immediate instruction, which is + an alias instruction that generates a single MOVZ, MOVN or ORR + instruction to loads a 32-bit/64-bit immediate value into general + register. An assembler error shall result if the immediate cannot be + created by a single one of these instructions. If there is a choice, + then to ensure reversability an assembler must prefer a MOVZ to MOVN, + and MOVZ or MOVN to ORR. */ + gas_assert (new_inst != NULL); + fix_mov_imm_insn (fixP, buf, new_inst, value); + break; + + case AARCH64_OPND_ADDR_SIMM7: + case AARCH64_OPND_ADDR_SIMM9: + case AARCH64_OPND_ADDR_SIMM9_2: + case AARCH64_OPND_ADDR_UIMM12: + /* Immediate offset in an address. */ + insn = get_aarch64_insn (buf); + + gas_assert (new_inst != NULL && new_inst->value == insn); + gas_assert (new_inst->opcode->operands[1] == opnd + || new_inst->opcode->operands[2] == opnd); + + /* Get the index of the address operand. */ + if (new_inst->opcode->operands[1] == opnd) + /* e.g. STR <Xt>, [<Xn|SP>, <R><m>{, <extend> {<amount>}}]. */ + idx = 1; + else + /* e.g. LDP <Qt1>, <Qt2>, [<Xn|SP>{, #<imm>}]. */ + idx = 2; + + /* Update the resolved offset value. */ + new_inst->operands[idx].addr.offset.imm = value; + + /* Encode/fix-up. */ + if (aarch64_opcode_encode (new_inst->opcode, new_inst, + &new_inst->value, NULL, NULL)) + { + put_aarch64_insn (buf, new_inst->value); + break; + } + else if (new_inst->opcode->iclass == ldst_pos + && try_to_encode_as_unscaled_ldst (new_inst)) + { + put_aarch64_insn (buf, new_inst->value); + break; + } + + as_bad_where (fixP->fx_file, fixP->fx_line, + _("immediate offset out of range")); + break; + + default: + gas_assert (0); + as_fatal (_("unhandled operand code %d"), opnd); + } +} + +/* Apply a fixup (fixP) to segment data, once it has been determined + by our caller that we have all the info we need to fix it up. + + Parameter valP is the pointer to the value of the bits. */ + +void +md_apply_fix (fixS * fixP, valueT * valP, segT seg) +{ + offsetT value = *valP; + uint32_t insn; + char *buf = fixP->fx_where + fixP->fx_frag->fr_literal; + int scale; + unsigned flags = fixP->fx_addnumber; + + DEBUG_TRACE ("\n\n"); + DEBUG_TRACE ("~~~~~~~~~~~~~~~~~~~~~~~~~"); + DEBUG_TRACE ("Enter md_apply_fix"); + + gas_assert (fixP->fx_r_type <= BFD_RELOC_UNUSED); + + /* Note whether this will delete the relocation. */ + + if (fixP->fx_addsy == 0 && !fixP->fx_pcrel) + fixP->fx_done = 1; + + /* Process the relocations. */ + switch (fixP->fx_r_type) + { + case BFD_RELOC_NONE: + /* This will need to go in the object file. */ + fixP->fx_done = 0; + break; + + case BFD_RELOC_8: + case BFD_RELOC_8_PCREL: + if (fixP->fx_done || !seg->use_rela_p) + md_number_to_chars (buf, value, 1); + break; + + case BFD_RELOC_16: + case BFD_RELOC_16_PCREL: + if (fixP->fx_done || !seg->use_rela_p) + md_number_to_chars (buf, value, 2); + break; + + case BFD_RELOC_32: + case BFD_RELOC_32_PCREL: + if (fixP->fx_done || !seg->use_rela_p) + md_number_to_chars (buf, value, 4); + break; + + case BFD_RELOC_64: + case BFD_RELOC_64_PCREL: + if (fixP->fx_done || !seg->use_rela_p) + md_number_to_chars (buf, value, 8); + break; + + case BFD_RELOC_AARCH64_GAS_INTERNAL_FIXUP: + /* We claim that these fixups have been processed here, even if + in fact we generate an error because we do not have a reloc + for them, so tc_gen_reloc() will reject them. */ + fixP->fx_done = 1; + if (fixP->fx_addsy && !S_IS_DEFINED (fixP->fx_addsy)) + { + as_bad_where (fixP->fx_file, fixP->fx_line, + _("undefined symbol %s used as an immediate value"), + S_GET_NAME (fixP->fx_addsy)); + goto apply_fix_return; + } + fix_insn (fixP, flags, value); + break; + + case BFD_RELOC_AARCH64_LD_LO19_PCREL: + if (value & 3) + as_bad_where (fixP->fx_file, fixP->fx_line, + _("pc-relative load offset not word aligned")); + if (signed_overflow (value, 21)) + as_bad_where (fixP->fx_file, fixP->fx_line, + _("pc-relative load offset out of range")); + if (fixP->fx_done || !seg->use_rela_p) + { + insn = get_aarch64_insn (buf); + insn |= encode_ld_lit_ofs_19 (value >> 2); + put_aarch64_insn (buf, insn); + } + break; + + case BFD_RELOC_AARCH64_ADR_LO21_PCREL: + if (signed_overflow (value, 21)) + as_bad_where (fixP->fx_file, fixP->fx_line, + _("pc-relative address offset out of range")); + if (fixP->fx_done || !seg->use_rela_p) + { + insn = get_aarch64_insn (buf); + insn |= encode_adr_imm (value); + put_aarch64_insn (buf, insn); + } + break; + + case BFD_RELOC_AARCH64_BRANCH19: + if (value & 3) + as_bad_where (fixP->fx_file, fixP->fx_line, + _("conditional branch target not word aligned")); + if (signed_overflow (value, 21)) + as_bad_where (fixP->fx_file, fixP->fx_line, + _("conditional branch out of range")); + if (fixP->fx_done || !seg->use_rela_p) + { + insn = get_aarch64_insn (buf); + insn |= encode_cond_branch_ofs_19 (value >> 2); + put_aarch64_insn (buf, insn); + } + break; + + case BFD_RELOC_AARCH64_TSTBR14: + if (value & 3) + as_bad_where (fixP->fx_file, fixP->fx_line, + _("conditional branch target not word aligned")); + if (signed_overflow (value, 16)) + as_bad_where (fixP->fx_file, fixP->fx_line, + _("conditional branch out of range")); + if (fixP->fx_done || !seg->use_rela_p) + { + insn = get_aarch64_insn (buf); + insn |= encode_tst_branch_ofs_14 (value >> 2); + put_aarch64_insn (buf, insn); + } + break; + + case BFD_RELOC_AARCH64_JUMP26: + case BFD_RELOC_AARCH64_CALL26: + if (value & 3) + as_bad_where (fixP->fx_file, fixP->fx_line, + _("branch target not word aligned")); + if (signed_overflow (value, 28)) + as_bad_where (fixP->fx_file, fixP->fx_line, _("branch out of range")); + if (fixP->fx_done || !seg->use_rela_p) + { + insn = get_aarch64_insn (buf); + insn |= encode_branch_ofs_26 (value >> 2); + put_aarch64_insn (buf, insn); + } + break; + + case BFD_RELOC_AARCH64_MOVW_G0: + case BFD_RELOC_AARCH64_MOVW_G0_S: + case BFD_RELOC_AARCH64_MOVW_G0_NC: + scale = 0; + goto movw_common; + case BFD_RELOC_AARCH64_MOVW_G1: + case BFD_RELOC_AARCH64_MOVW_G1_S: + case BFD_RELOC_AARCH64_MOVW_G1_NC: + scale = 16; + goto movw_common; + case BFD_RELOC_AARCH64_MOVW_G2: + case BFD_RELOC_AARCH64_MOVW_G2_S: + case BFD_RELOC_AARCH64_MOVW_G2_NC: + scale = 32; + goto movw_common; + case BFD_RELOC_AARCH64_MOVW_G3: + scale = 48; + movw_common: + if (fixP->fx_done || !seg->use_rela_p) + { + insn = get_aarch64_insn (buf); + + if (!fixP->fx_done) + { + /* REL signed addend must fit in 16 bits */ + if (signed_overflow (value, 16)) + as_bad_where (fixP->fx_file, fixP->fx_line, + _("offset out of range")); + } + else + { + /* Check for overflow and scale. */ + switch (fixP->fx_r_type) + { + case BFD_RELOC_AARCH64_MOVW_G0: + case BFD_RELOC_AARCH64_MOVW_G1: + case BFD_RELOC_AARCH64_MOVW_G2: + case BFD_RELOC_AARCH64_MOVW_G3: + if (unsigned_overflow (value, scale + 16)) + as_bad_where (fixP->fx_file, fixP->fx_line, + _("unsigned value out of range")); + break; + case BFD_RELOC_AARCH64_MOVW_G0_S: + case BFD_RELOC_AARCH64_MOVW_G1_S: + case BFD_RELOC_AARCH64_MOVW_G2_S: + /* NOTE: We can only come here with movz or movn. */ + if (signed_overflow (value, scale + 16)) + as_bad_where (fixP->fx_file, fixP->fx_line, + _("signed value out of range")); + if (value < 0) + { + /* Force use of MOVN. */ + value = ~value; + insn = reencode_movzn_to_movn (insn); + } + else + { + /* Force use of MOVZ. */ + insn = reencode_movzn_to_movz (insn); + } + break; + default: + /* Unchecked relocations. */ + break; + } + value >>= scale; + } + + /* Insert value into MOVN/MOVZ/MOVK instruction. */ + insn |= encode_movw_imm (value & 0xffff); + + put_aarch64_insn (buf, insn); + } + break; + + case BFD_RELOC_AARCH64_TLSGD_ADR_PAGE21: + case BFD_RELOC_AARCH64_TLSGD_ADD_LO12_NC: + case BFD_RELOC_AARCH64_TLSIE_ADR_GOTTPREL_PAGE21: + case BFD_RELOC_AARCH64_TLSIE_LD64_GOTTPREL_LO12_NC: + case BFD_RELOC_AARCH64_TLSLE_ADD_TPREL_LO12: + case BFD_RELOC_AARCH64_TLSLE_ADD_TPREL_HI12: + case BFD_RELOC_AARCH64_TLSLE_ADD_TPREL_LO12_NC: + case BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G2: + case BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G1: + case BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G1_NC: + case BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G0: + case BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G0_NC: + case BFD_RELOC_AARCH64_TLSDESC_ADR_PAGE: + case BFD_RELOC_AARCH64_TLSDESC_ADD_LO12_NC: + case BFD_RELOC_AARCH64_TLSDESC_LD64_LO12_NC: + S_SET_THREAD_LOCAL (fixP->fx_addsy); + /* Should always be exported to object file, see + aarch64_force_relocation(). */ + gas_assert (!fixP->fx_done); + gas_assert (seg->use_rela_p); + break; + + case BFD_RELOC_AARCH64_ADR_HI21_PCREL: + case BFD_RELOC_AARCH64_ADR_HI21_NC_PCREL: + case BFD_RELOC_AARCH64_ADD_LO12: + case BFD_RELOC_AARCH64_LDST8_LO12: + case BFD_RELOC_AARCH64_LDST16_LO12: + case BFD_RELOC_AARCH64_LDST32_LO12: + case BFD_RELOC_AARCH64_LDST64_LO12: + case BFD_RELOC_AARCH64_LDST128_LO12: + case BFD_RELOC_AARCH64_ADR_GOT_PAGE: + case BFD_RELOC_AARCH64_LD64_GOT_LO12_NC: + /* Should always be exported to object file, see + aarch64_force_relocation(). */ + gas_assert (!fixP->fx_done); + gas_assert (seg->use_rela_p); + break; + + case BFD_RELOC_AARCH64_TLSDESC_ADD: + case BFD_RELOC_AARCH64_TLSDESC_LDR: + case BFD_RELOC_AARCH64_TLSDESC_CALL: + break; + + default: + as_bad_where (fixP->fx_file, fixP->fx_line, + _("unexpected %s fixup"), + bfd_get_reloc_code_name (fixP->fx_r_type)); + break; + } + +apply_fix_return: + /* Free the allocated the struct aarch64_inst. + N.B. currently there are very limited number of fix-up types actually use + this field, so the impact on the performance should be minimal . */ + if (fixP->tc_fix_data.inst != NULL) + free (fixP->tc_fix_data.inst); + + return; +} + +/* Translate internal representation of relocation info to BFD target + format. */ + +arelent * +tc_gen_reloc (asection * section, fixS * fixp) +{ + arelent *reloc; + bfd_reloc_code_real_type code; + + reloc = xmalloc (sizeof (arelent)); + + reloc->sym_ptr_ptr = xmalloc (sizeof (asymbol *)); + *reloc->sym_ptr_ptr = symbol_get_bfdsym (fixp->fx_addsy); + reloc->address = fixp->fx_frag->fr_address + fixp->fx_where; + + if (fixp->fx_pcrel) + { + if (section->use_rela_p) + fixp->fx_offset -= md_pcrel_from_section (fixp, section); + else + fixp->fx_offset = reloc->address; + } + reloc->addend = fixp->fx_offset; + + code = fixp->fx_r_type; + switch (code) + { + case BFD_RELOC_16: + if (fixp->fx_pcrel) + code = BFD_RELOC_16_PCREL; + break; + + case BFD_RELOC_32: + if (fixp->fx_pcrel) + code = BFD_RELOC_32_PCREL; + break; + + case BFD_RELOC_64: + if (fixp->fx_pcrel) + code = BFD_RELOC_64_PCREL; + break; + + default: + break; + } + + reloc->howto = bfd_reloc_type_lookup (stdoutput, code); + if (reloc->howto == NULL) + { + as_bad_where (fixp->fx_file, fixp->fx_line, + _ + ("cannot represent %s relocation in this object file format"), + bfd_get_reloc_code_name (code)); + return NULL; + } + + return reloc; +} + +/* This fix_new is called by cons via TC_CONS_FIX_NEW. */ + +void +cons_fix_new_aarch64 (fragS * frag, int where, int size, expressionS * exp) +{ + bfd_reloc_code_real_type type; + int pcrel = 0; + + /* Pick a reloc. + FIXME: @@ Should look at CPU word size. */ + switch (size) + { + case 1: + type = BFD_RELOC_8; + break; + case 2: + type = BFD_RELOC_16; + break; + case 4: + type = BFD_RELOC_32; + break; + case 8: + type = BFD_RELOC_64; + break; + default: + as_bad (_("cannot do %u-byte relocation"), size); + type = BFD_RELOC_UNUSED; + break; + } + + fix_new_exp (frag, where, (int) size, exp, pcrel, type); +} + +int +aarch64_force_relocation (struct fix *fixp) +{ + switch (fixp->fx_r_type) + { + case BFD_RELOC_AARCH64_GAS_INTERNAL_FIXUP: + /* Perform these "immediate" internal relocations + even if the symbol is extern or weak. */ + return 0; + + case BFD_RELOC_AARCH64_TLSGD_ADR_PAGE21: + case BFD_RELOC_AARCH64_TLSGD_ADD_LO12_NC: + case BFD_RELOC_AARCH64_TLSIE_ADR_GOTTPREL_PAGE21: + case BFD_RELOC_AARCH64_TLSIE_LD64_GOTTPREL_LO12_NC: + case BFD_RELOC_AARCH64_TLSLE_ADD_TPREL_LO12: + case BFD_RELOC_AARCH64_TLSLE_ADD_TPREL_HI12: + case BFD_RELOC_AARCH64_TLSLE_ADD_TPREL_LO12_NC: + case BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G2: + case BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G1: + case BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G1_NC: + case BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G0: + case BFD_RELOC_AARCH64_TLSLE_MOVW_TPREL_G0_NC: + case BFD_RELOC_AARCH64_TLSDESC_ADR_PAGE: + case BFD_RELOC_AARCH64_TLSDESC_ADD_LO12_NC: + case BFD_RELOC_AARCH64_TLSDESC_LD64_LO12_NC: + case BFD_RELOC_AARCH64_ADR_GOT_PAGE: + case BFD_RELOC_AARCH64_LD64_GOT_LO12_NC: + case BFD_RELOC_AARCH64_ADR_HI21_PCREL: + case BFD_RELOC_AARCH64_ADR_HI21_NC_PCREL: + case BFD_RELOC_AARCH64_ADD_LO12: + case BFD_RELOC_AARCH64_LDST8_LO12: + case BFD_RELOC_AARCH64_LDST16_LO12: + case BFD_RELOC_AARCH64_LDST32_LO12: + case BFD_RELOC_AARCH64_LDST64_LO12: + case BFD_RELOC_AARCH64_LDST128_LO12: + /* Always leave these relocations for the linker. */ + return 1; + + default: + break; + } + + return generic_force_reloc (fixp); +} + +#ifdef OBJ_ELF + +const char * +elf64_aarch64_target_format (void) +{ + if (target_big_endian) + return "elf64-bigaarch64"; + else + return "elf64-littleaarch64"; +} + +void +aarch64elf_frob_symbol (symbolS * symp, int *puntp) +{ + elf_frob_symbol (symp, puntp); +} +#endif + +/* MD interface: Finalization. */ + +/* A good place to do this, although this was probably not intended + for this kind of use. We need to dump the literal pool before + references are made to a null symbol pointer. */ + +void +aarch64_cleanup (void) +{ + literal_pool *pool; + + for (pool = list_of_pools; pool; pool = pool->next) + { + /* Put it at the end of the relevant section. */ + subseg_set (pool->section, pool->sub_section); + s_ltorg (0); + } +} + +#ifdef OBJ_ELF +/* Remove any excess mapping symbols generated for alignment frags in + SEC. We may have created a mapping symbol before a zero byte + alignment; remove it if there's a mapping symbol after the + alignment. */ +static void +check_mapping_symbols (bfd * abfd ATTRIBUTE_UNUSED, asection * sec, + void *dummy ATTRIBUTE_UNUSED) +{ + segment_info_type *seginfo = seg_info (sec); + fragS *fragp; + + if (seginfo == NULL || seginfo->frchainP == NULL) + return; + + for (fragp = seginfo->frchainP->frch_root; + fragp != NULL; fragp = fragp->fr_next) + { + symbolS *sym = fragp->tc_frag_data.last_map; + fragS *next = fragp->fr_next; + + /* Variable-sized frags have been converted to fixed size by + this point. But if this was variable-sized to start with, + there will be a fixed-size frag after it. So don't handle + next == NULL. */ + if (sym == NULL || next == NULL) + continue; + + if (S_GET_VALUE (sym) < next->fr_address) + /* Not at the end of this frag. */ + continue; + know (S_GET_VALUE (sym) == next->fr_address); + + do + { + if (next->tc_frag_data.first_map != NULL) + { + /* Next frag starts with a mapping symbol. Discard this + one. */ + symbol_remove (sym, &symbol_rootP, &symbol_lastP); + break; + } + + if (next->fr_next == NULL) + { + /* This mapping symbol is at the end of the section. Discard + it. */ + know (next->fr_fix == 0 && next->fr_var == 0); + symbol_remove (sym, &symbol_rootP, &symbol_lastP); + break; + } + + /* As long as we have empty frags without any mapping symbols, + keep looking. */ + /* If the next frag is non-empty and does not start with a + mapping symbol, then this mapping symbol is required. */ + if (next->fr_address != next->fr_next->fr_address) + break; + + next = next->fr_next; + } + while (next != NULL); + } +} +#endif + +/* Adjust the symbol table. */ + +void +aarch64_adjust_symtab (void) +{ +#ifdef OBJ_ELF + /* Remove any overlapping mapping symbols generated by alignment frags. */ + bfd_map_over_sections (stdoutput, check_mapping_symbols, (char *) 0); + /* Now do generic ELF adjustments. */ + elf_adjust_symtab (); +#endif +} + +static void +checked_hash_insert (struct hash_control *table, const char *key, void *value) +{ + const char *hash_err; + + hash_err = hash_insert (table, key, value); + if (hash_err) + printf ("Internal Error: Can't hash %s\n", key); +} + +static void +fill_instruction_hash_table (void) +{ + aarch64_opcode *opcode = aarch64_opcode_table; + + while (opcode->name != NULL) + { + templates *templ, *new_templ; + templ = hash_find (aarch64_ops_hsh, opcode->name); + + new_templ = (templates *) xmalloc (sizeof (templates)); + new_templ->opcode = opcode; + new_templ->next = NULL; + + if (!templ) + checked_hash_insert (aarch64_ops_hsh, opcode->name, (void *) new_templ); + else + { + new_templ->next = templ->next; + templ->next = new_templ; + } + ++opcode; + } +} + +static inline void +convert_to_upper (char *dst, const char *src, size_t num) +{ + unsigned int i; + for (i = 0; i < num && *src != '\0'; ++i, ++dst, ++src) + *dst = TOUPPER (*src); + *dst = '\0'; +} + +/* Assume STR point to a lower-case string, allocate, convert and return + the corresponding upper-case string. */ +static inline const char* +get_upper_str (const char *str) +{ + char *ret; + size_t len = strlen (str); + if ((ret = xmalloc (len + 1)) == NULL) + abort (); + convert_to_upper (ret, str, len); + return ret; +} + +/* MD interface: Initialization. */ + +void +md_begin (void) +{ + unsigned mach; + unsigned int i; + + if ((aarch64_ops_hsh = hash_new ()) == NULL + || (aarch64_cond_hsh = hash_new ()) == NULL + || (aarch64_shift_hsh = hash_new ()) == NULL + || (aarch64_sys_regs_hsh = hash_new ()) == NULL + || (aarch64_pstatefield_hsh = hash_new ()) == NULL + || (aarch64_sys_regs_ic_hsh = hash_new ()) == NULL + || (aarch64_sys_regs_dc_hsh = hash_new ()) == NULL + || (aarch64_sys_regs_at_hsh = hash_new ()) == NULL + || (aarch64_sys_regs_tlbi_hsh = hash_new ()) == NULL + || (aarch64_reg_hsh = hash_new ()) == NULL + || (aarch64_barrier_opt_hsh = hash_new ()) == NULL + || (aarch64_nzcv_hsh = hash_new ()) == NULL + || (aarch64_pldop_hsh = hash_new ()) == NULL) + as_fatal (_("virtual memory exhausted")); + + fill_instruction_hash_table (); + + for (i = 0; aarch64_sys_regs[i].name != NULL; ++i) + checked_hash_insert (aarch64_sys_regs_hsh, aarch64_sys_regs[i].name, + (void *) (aarch64_sys_regs + i)); + + for (i = 0; aarch64_pstatefields[i].name != NULL; ++i) + checked_hash_insert (aarch64_pstatefield_hsh, + aarch64_pstatefields[i].name, + (void *) (aarch64_pstatefields + i)); + + for (i = 0; aarch64_sys_regs_ic[i].template != NULL; i++) + checked_hash_insert (aarch64_sys_regs_ic_hsh, + aarch64_sys_regs_ic[i].template, + (void *) (aarch64_sys_regs_ic + i)); + + for (i = 0; aarch64_sys_regs_dc[i].template != NULL; i++) + checked_hash_insert (aarch64_sys_regs_dc_hsh, + aarch64_sys_regs_dc[i].template, + (void *) (aarch64_sys_regs_dc + i)); + + for (i = 0; aarch64_sys_regs_at[i].template != NULL; i++) + checked_hash_insert (aarch64_sys_regs_at_hsh, + aarch64_sys_regs_at[i].template, + (void *) (aarch64_sys_regs_at + i)); + + for (i = 0; aarch64_sys_regs_tlbi[i].template != NULL; i++) + checked_hash_insert (aarch64_sys_regs_tlbi_hsh, + aarch64_sys_regs_tlbi[i].template, + (void *) (aarch64_sys_regs_tlbi + i)); + + for (i = 0; i < ARRAY_SIZE (reg_names); i++) + checked_hash_insert (aarch64_reg_hsh, reg_names[i].name, + (void *) (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)); + + 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)); + /* Also hash the name in the upper case. */ + checked_hash_insert (aarch64_shift_hsh, get_upper_str (name), + (void *) (aarch64_operand_modifiers + i)); + } + + for (i = 0; i < ARRAY_SIZE (aarch64_conds); i++) + { + unsigned int j; + /* A condition code may have alias(es), e.g. "cc", "lo" and "ul" are + the same condition code. */ + for (j = 0; j < ARRAY_SIZE (aarch64_conds[i].names); ++j) + { + const char *name = aarch64_conds[i].names[j]; + if (name == NULL) + break; + checked_hash_insert (aarch64_cond_hsh, name, + (void *) (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)); + } + } + + for (i = 0; i < ARRAY_SIZE (aarch64_barrier_options); i++) + { + const char *name = aarch64_barrier_options[i].name; + /* Skip xx00 - the unallocated values of option. */ + if ((i & 0x3) == 0) + continue; + checked_hash_insert (aarch64_barrier_opt_hsh, name, + (void *) (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)); + } + + for (i = 0; i < ARRAY_SIZE (aarch64_prfops); i++) + { + const char* name = aarch64_prfops[i].name; + /* Skip 0011x, 01xxx, 1011x and 11xxx - the unallocated hint encodings + as a 5-bit immediate #uimm5. */ + if ((i & 0xf) >= 6) + continue; + checked_hash_insert (aarch64_pldop_hsh, name, + (void *) (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)); + } + + /* Set the cpu variant based on the command-line options. */ + if (!mcpu_cpu_opt) + mcpu_cpu_opt = march_cpu_opt; + + if (!mcpu_cpu_opt) + mcpu_cpu_opt = &cpu_default; + + cpu_variant = *mcpu_cpu_opt; + + /* Record the CPU type. */ + mach = bfd_mach_aarch64; + + bfd_set_arch_mach (stdoutput, TARGET_ARCH, mach); +} + +/* Command line processing. */ + +const char *md_shortopts = "m:"; + +#ifdef AARCH64_BI_ENDIAN +#define OPTION_EB (OPTION_MD_BASE + 0) +#define OPTION_EL (OPTION_MD_BASE + 1) +#else +#if TARGET_BYTES_BIG_ENDIAN +#define OPTION_EB (OPTION_MD_BASE + 0) +#else +#define OPTION_EL (OPTION_MD_BASE + 1) +#endif +#endif + +struct option md_longopts[] = { +#ifdef OPTION_EB + {"EB", no_argument, NULL, OPTION_EB}, +#endif +#ifdef OPTION_EL + {"EL", no_argument, NULL, OPTION_EL}, +#endif + {NULL, no_argument, NULL, 0} +}; + +size_t md_longopts_size = sizeof (md_longopts); + +struct aarch64_option_table +{ + char *option; /* Option name to match. */ + char *help; /* Help information. */ + int *var; /* Variable to change. */ + int value; /* What to change it to. */ + char *deprecated; /* If non-null, print this message. */ +}; + +static struct aarch64_option_table aarch64_opts[] = { + {"mbig-endian", N_("assemble for big-endian"), &target_big_endian, 1, NULL}, + {"mlittle-endian", N_("assemble for little-endian"), &target_big_endian, 0, + NULL}, +#ifdef DEBUG_AARCH64 + {"mdebug-dump", N_("temporary switch for dumping"), &debug_dump, 1, NULL}, +#endif /* DEBUG_AARCH64 */ + {"mverbose-error", N_("output verbose error messages"), &verbose_error_p, 1, + NULL}, + {NULL, NULL, NULL, 0, NULL} +}; + +struct aarch64_cpu_option_table +{ + char *name; + const aarch64_feature_set value; + /* The canonical name of the CPU, or NULL to use NAME converted to upper + case. */ + const char *canonical_name; +}; + +/* This list should, at a minimum, contain all the cpu names + recognized by GCC. */ +static const struct aarch64_cpu_option_table aarch64_cpus[] = { + {"all", AARCH64_ANY, NULL}, + {"generic", AARCH64_ARCH_V8, NULL}, + + /* These two are example CPUs supported in GCC, once we have real + CPUs they will be removed. */ + {"example-1", AARCH64_ARCH_V8, NULL}, + {"example-2", AARCH64_ARCH_V8, NULL}, + + {NULL, AARCH64_ARCH_NONE, NULL} +}; + +struct aarch64_arch_option_table +{ + char *name; + const aarch64_feature_set value; +}; + +/* This list should, at a minimum, contain all the architecture names + recognized by GCC. */ +static const struct aarch64_arch_option_table aarch64_archs[] = { + {"all", AARCH64_ANY}, + {"armv8", AARCH64_ARCH_V8}, + {NULL, AARCH64_ARCH_NONE} +}; + +/* ISA extensions. */ +struct aarch64_option_cpu_value_table +{ + char *name; + const aarch64_feature_set value; +}; + +static const struct aarch64_option_cpu_value_table aarch64_features[] = { + {"crypto", AARCH64_FEATURE (AARCH64_FEATURE_CRYPTO, 0)}, + {"fp", AARCH64_FEATURE (AARCH64_FEATURE_FP, 0)}, + {"simd", AARCH64_FEATURE (AARCH64_FEATURE_SIMD, 0)}, + {NULL, AARCH64_ARCH_NONE} +}; + +struct aarch64_long_option_table +{ + char *option; /* Substring to match. */ + char *help; /* Help information. */ + int (*func) (char *subopt); /* Function to decode sub-option. */ + char *deprecated; /* If non-null, print this message. */ +}; + +static int +aarch64_parse_features (char *str, const aarch64_feature_set **opt_p) +{ + /* We insist on extensions being added before being removed. We achieve + this by using the ADDING_VALUE variable to indicate whether we are + adding an extension (1) or removing it (0) and only allowing it to + change in the order -1 -> 1 -> 0. */ + int adding_value = -1; + aarch64_feature_set *ext_set = xmalloc (sizeof (aarch64_feature_set)); + + /* Copy the feature set, so that we can modify it. */ + *ext_set = **opt_p; + *opt_p = ext_set; + + while (str != NULL && *str != 0) + { + const struct aarch64_option_cpu_value_table *opt; + char *ext; + int optlen; + + if (*str != '+') + { + as_bad (_("invalid architectural extension")); + return 0; + } + + str++; + ext = strchr (str, '+'); + + if (ext != NULL) + optlen = ext - str; + else + optlen = strlen (str); + + if (optlen >= 2 && strncmp (str, "no", 2) == 0) + { + if (adding_value != 0) + adding_value = 0; + optlen -= 2; + str += 2; + } + else if (optlen > 0) + { + if (adding_value == -1) + adding_value = 1; + else if (adding_value != 1) + { + as_bad (_("must specify extensions to add before specifying " + "those to remove")); + return FALSE; + } + } + + if (optlen == 0) + { + as_bad (_("missing architectural extension")); + return 0; + } + + gas_assert (adding_value != -1); + + for (opt = aarch64_features; opt->name != NULL; opt++) + if (strncmp (opt->name, str, optlen) == 0) + { + /* Add or remove the extension. */ + if (adding_value) + AARCH64_MERGE_FEATURE_SETS (*ext_set, *ext_set, opt->value); + else + AARCH64_CLEAR_FEATURE (*ext_set, *ext_set, opt->value); + break; + } + + if (opt->name == NULL) + { + as_bad (_("unknown architectural extension `%s'"), str); + return 0; + } + + str = ext; + }; + + return 1; +} + +static int +aarch64_parse_cpu (char *str) +{ + const struct aarch64_cpu_option_table *opt; + char *ext = strchr (str, '+'); + size_t optlen; + + if (ext != NULL) + optlen = ext - str; + else + optlen = strlen (str); + + if (optlen == 0) + { + as_bad (_("missing cpu name `%s'"), str); + return 0; + } + + for (opt = aarch64_cpus; opt->name != NULL; opt++) + if (strlen (opt->name) == optlen && strncmp (str, opt->name, optlen) == 0) + { + mcpu_cpu_opt = &opt->value; + if (ext != NULL) + return aarch64_parse_features (ext, &mcpu_cpu_opt); + + return 1; + } + + as_bad (_("unknown cpu `%s'"), str); + return 0; +} + +static int +aarch64_parse_arch (char *str) +{ + const struct aarch64_arch_option_table *opt; + char *ext = strchr (str, '+'); + size_t optlen; + + if (ext != NULL) + optlen = ext - str; + else + optlen = strlen (str); + + if (optlen == 0) + { + as_bad (_("missing architecture name `%s'"), str); + return 0; + } + + for (opt = aarch64_archs; opt->name != NULL; opt++) + if (strlen (opt->name) == optlen && strncmp (str, opt->name, optlen) == 0) + { + march_cpu_opt = &opt->value; + if (ext != NULL) + return aarch64_parse_features (ext, &march_cpu_opt); + + return 1; + } + + as_bad (_("unknown architecture `%s'\n"), str); + return 0; +} + +static struct aarch64_long_option_table aarch64_long_opts[] = { + {"mcpu=", N_("<cpu name>\t assemble for CPU <cpu name>"), + aarch64_parse_cpu, NULL}, + {"march=", N_("<arch name>\t assemble for architecture <arch name>"), + aarch64_parse_arch, NULL}, + {NULL, NULL, 0, NULL} +}; + +int +md_parse_option (int c, char *arg) +{ + struct aarch64_option_table *opt; + struct aarch64_long_option_table *lopt; + + switch (c) + { +#ifdef OPTION_EB + case OPTION_EB: + target_big_endian = 1; + break; +#endif + +#ifdef OPTION_EL + case OPTION_EL: + target_big_endian = 0; + break; +#endif + + case 'a': + /* Listing option. Just ignore these, we don't support additional + ones. */ + return 0; + + default: + for (opt = aarch64_opts; opt->option != NULL; opt++) + { + if (c == opt->option[0] + && ((arg == NULL && opt->option[1] == 0) + || streq (arg, opt->option + 1))) + { + /* If the option is deprecated, tell the user. */ + if (opt->deprecated != NULL) + as_tsktsk (_("option `-%c%s' is deprecated: %s"), c, + arg ? arg : "", _(opt->deprecated)); + + if (opt->var != NULL) + *opt->var = opt->value; + + return 1; + } + } + + for (lopt = aarch64_long_opts; lopt->option != NULL; lopt++) + { + /* These options are expected to have an argument. */ + if (c == lopt->option[0] + && arg != NULL + && strncmp (arg, lopt->option + 1, + strlen (lopt->option + 1)) == 0) + { + /* If the option is deprecated, tell the user. */ + if (lopt->deprecated != NULL) + as_tsktsk (_("option `-%c%s' is deprecated: %s"), c, arg, + _(lopt->deprecated)); + + /* Call the sup-option parser. */ + return lopt->func (arg + strlen (lopt->option) - 1); + } + } + + return 0; + } + + return 1; +} + +void +md_show_usage (FILE * fp) +{ + struct aarch64_option_table *opt; + struct aarch64_long_option_table *lopt; + + fprintf (fp, _(" AArch64-specific assembler options:\n")); + + for (opt = aarch64_opts; opt->option != NULL; opt++) + if (opt->help != NULL) + fprintf (fp, " -%-23s%s\n", opt->option, _(opt->help)); + + for (lopt = aarch64_long_opts; lopt->option != NULL; lopt++) + if (lopt->help != NULL) + fprintf (fp, " -%s%s\n", lopt->option, _(lopt->help)); + +#ifdef OPTION_EB + fprintf (fp, _("\ + -EB assemble code for a big-endian cpu\n")); +#endif + +#ifdef OPTION_EL + fprintf (fp, _("\ + -EL assemble code for a little-endian cpu\n")); +#endif +} + +/* Parse a .cpu directive. */ + +static void +s_aarch64_cpu (int ignored ATTRIBUTE_UNUSED) +{ + const struct aarch64_cpu_option_table *opt; + char saved_char; + char *name; + char *ext; + size_t optlen; + + name = input_line_pointer; + while (*input_line_pointer && !ISSPACE (*input_line_pointer)) + input_line_pointer++; + saved_char = *input_line_pointer; + *input_line_pointer = 0; + + ext = strchr (name, '+'); + + if (ext != NULL) + optlen = ext - name; + else + optlen = strlen (name); + + /* Skip the first "all" entry. */ + for (opt = aarch64_cpus + 1; opt->name != NULL; opt++) + if (strlen (opt->name) == optlen + && strncmp (name, opt->name, optlen) == 0) + { + mcpu_cpu_opt = &opt->value; + if (ext != NULL) + if (!aarch64_parse_features (ext, &mcpu_cpu_opt)) + return; + + cpu_variant = *mcpu_cpu_opt; + + *input_line_pointer = saved_char; + demand_empty_rest_of_line (); + return; + } + as_bad (_("unknown cpu `%s'"), name); + *input_line_pointer = saved_char; + ignore_rest_of_line (); +} + + +/* Parse a .arch directive. */ + +static void +s_aarch64_arch (int ignored ATTRIBUTE_UNUSED) +{ + const struct aarch64_arch_option_table *opt; + char saved_char; + char *name; + char *ext; + size_t optlen; + + name = input_line_pointer; + while (*input_line_pointer && !ISSPACE (*input_line_pointer)) + input_line_pointer++; + saved_char = *input_line_pointer; + *input_line_pointer = 0; + + ext = strchr (name, '+'); + + if (ext != NULL) + optlen = ext - name; + else + optlen = strlen (name); + + /* Skip the first "all" entry. */ + for (opt = aarch64_archs + 1; opt->name != NULL; opt++) + if (strlen (opt->name) == optlen + && strncmp (name, opt->name, optlen) == 0) + { + mcpu_cpu_opt = &opt->value; + if (ext != NULL) + if (!aarch64_parse_features (ext, &mcpu_cpu_opt)) + return; + + cpu_variant = *mcpu_cpu_opt; + + *input_line_pointer = saved_char; + demand_empty_rest_of_line (); + return; + } + + as_bad (_("unknown architecture `%s'\n"), name); + *input_line_pointer = saved_char; + ignore_rest_of_line (); +} + +/* Copy symbol information. */ + +void +aarch64_copy_symbol_attributes (symbolS * dest, symbolS * src) +{ + AARCH64_GET_FLAG (dest) = AARCH64_GET_FLAG (src); +} diff --git a/gas/config/tc-aarch64.h b/gas/config/tc-aarch64.h new file mode 100644 index 0000000..f6f3bc7 --- /dev/null +++ b/gas/config/tc-aarch64.h @@ -0,0 +1,231 @@ +/* tc-aarch64.h -- Header file for tc-aarch64.c. + Copyright 2009, 2010, 2011, 2012 Free Software Foundation, Inc. + Contributed by ARM Ltd. + + This file is part of GAS. + + GAS 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. + + GAS 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; see the file COPYING3. If not, + see <http://www.gnu.org/licenses/>. */ + +#ifndef TC_AARCH64 +#define TC_AARCH64 1 + +#include "opcode/aarch64.h" + +#ifndef TARGET_BYTES_BIG_ENDIAN +#define TARGET_BYTES_BIG_ENDIAN 0 +#endif + +#define WORKING_DOT_WORD + +#define TARGET_ARCH bfd_arch_aarch64 + +#define DIFF_EXPR_OK + +/* Permit // comments. */ +#define DOUBLESLASH_LINE_COMMENTS + +#ifdef LITTLE_ENDIAN +#undef LITTLE_ENDIAN +#endif + +#ifdef BIG_ENDIAN +#undef BIG_ENDIAN +#endif + +#define LITTLE_ENDIAN 1234 +#define BIG_ENDIAN 4321 + +#define SWAP_32(n) \ + ((((n) & 0xff) << 24) | (((n) & 0xff00) << 8) | (((n) >> 8) & 0xff00) \ + | (((n) >> 24) & 0xff)) + +struct fix; + +struct aarch64_fix +{ + struct aarch64_inst *inst; + enum aarch64_opnd opnd; +}; + +#if defined OBJ_ELF +# define AARCH64_BI_ENDIAN +# define TARGET_FORMAT elf64_aarch64_target_format () +#endif + +#define TC_FORCE_RELOCATION(FIX) aarch64_force_relocation (FIX) + +/* Currently there is no machine specific frags generated. */ +#define md_convert_frag(b,s,f) as_fatal ("aarch64 convert_frag called\n") + +#define md_cleanup() aarch64_cleanup () + +#define md_start_line_hook() aarch64_start_line_hook () + +#define tc_frob_label(S) aarch64_frob_label (S) + +/* We also need to mark assembler created symbols: */ +#define tc_frob_fake_label(S) aarch64_frob_label (S) + +#define TC_FIX_TYPE struct aarch64_fix +#define TC_INIT_FIX_DATA(FIX) { (FIX)->tc_fix_data.inst = NULL; \ + (FIX)->tc_fix_data.opnd = AARCH64_OPND_NIL; } + +#define TC_SYMFIELD_TYPE unsigned int +#define AARCH64_GET_FLAG(s) (*symbol_get_tc (s)) + +void aarch64_copy_symbol_attributes (symbolS *, symbolS *); +#ifndef TC_COPY_SYMBOL_ATTRIBUTES +#define TC_COPY_SYMBOL_ATTRIBUTES(DEST, SRC) \ + (aarch64_copy_symbol_attributes (DEST, SRC)) +#endif + +#define TC_START_LABEL(C,S,STR) ((C) == ':' \ + || ((C) == '/' && aarch64_data_in_code ())) +#define tc_canonicalize_symbol_name(str) aarch64_canonicalize_symbol_name (str); +#define obj_adjust_symtab() aarch64_adjust_symtab () + +#define LISTING_HEADER "AARCH64 GAS " + +#define LOCAL_LABEL(name) (name[0] == '.' && name[1] == 'L') +#define LOCAL_LABELS_FB 1 + +/* This expression evaluates to true if the relocation is for a local + object for which we still want to do the relocation at runtime. + False if we are willing to perform this relocation while building + the .o file. GOTOFF does not need to be checked here because it is + not pcrel. I am not sure if some of the others are ever used with + pcrel, but it is easier to be safe than sorry. */ + +#define TC_FORCE_RELOCATION_LOCAL(FIX) \ + (!(FIX)->fx_pcrel \ + || (FIX)->fx_r_type == BFD_RELOC_64 \ + || (FIX)->fx_r_type == BFD_RELOC_32 \ + || TC_FORCE_RELOCATION (FIX)) + +#define TC_CONS_FIX_NEW cons_fix_new_aarch64 + +/* Max code alignment is 32 bytes */ +#define MAX_MEM_FOR_RS_ALIGN_CODE 31 + +/* For frags in code sections we need to record whether they contain + code or data. */ +struct aarch64_frag_type +{ + int recorded; +#ifdef OBJ_ELF + /* If there is a mapping symbol at offset 0 in this frag, + it will be saved in FIRST_MAP. If there are any mapping + symbols in this frag, the last one will be saved in + LAST_MAP. */ + symbolS *first_map, *last_map; +#endif +}; + +#define TC_FRAG_TYPE struct aarch64_frag_type +/* NOTE: max_chars is a local variable from frag_var / frag_variant. */ +#define TC_FRAG_INIT(fragp) aarch64_init_frag (fragp, max_chars) +#define HANDLE_ALIGN(fragp) aarch64_handle_align (fragp) + +#define md_do_align(N, FILL, LEN, MAX, LABEL) \ + if (FILL == NULL && (N) != 0 && ! need_pass_2 && subseg_text_p (now_seg)) \ + { \ + aarch64_frag_align_code (N, MAX); \ + goto LABEL; \ + } + +#define DWARF2_LINE_MIN_INSN_LENGTH 2 + +/* The lr register is r30. */ +#define DWARF2_DEFAULT_RETURN_COLUMN 30 + +/* Registers are generally saved at negative offsets to the CFA. */ +#define DWARF2_CIE_DATA_ALIGNMENT (-4) + +#ifdef OBJ_ELF +# define obj_frob_symbol(sym, punt) aarch64elf_frob_symbol ((sym), & (punt)) + +# define GLOBAL_OFFSET_TABLE_NAME "_GLOBAL_OFFSET_TABLE_" +# define TC_SEGMENT_INFO_TYPE struct aarch64_segment_info_type + +/* This is not really an alignment operation, but it's something we + need to do at the same time: whenever we are figuring out the + alignment for data, we should check whether a $d symbol is + necessary. */ +# define md_cons_align(nbytes) mapping_state (MAP_DATA) + +enum mstate +{ + MAP_UNDEFINED = 0, /* Must be zero, for seginfo in new sections. */ + MAP_DATA, + MAP_INSN, +}; + +void mapping_state (enum mstate); + +struct aarch64_segment_info_type +{ + enum mstate mapstate; + unsigned int marked_pr_dependency; +}; + +/* We want .cfi_* pseudo-ops for generating unwind info. */ +#define TARGET_USE_CFIPOP 1 + +/* CFI hooks. */ +#define tc_regname_to_dw2regnum tc_aarch64_regname_to_dw2regnum +#define tc_cfi_frame_initial_instructions tc_aarch64_frame_initial_instructions + +#else /* Not OBJ_ELF. */ +#define GLOBAL_OFFSET_TABLE_NAME "__GLOBAL_OFFSET_TABLE_" +#endif + +#if defined OBJ_ELF || defined OBJ_COFF + +# define EXTERN_FORCE_RELOC 1 +# define tc_fix_adjustable(FIX) 1 +/* Values passed to md_apply_fix don't include the symbol value. */ +# define MD_APPLY_SYM_VALUE(FIX) 0 + +#endif + +#define MD_PCREL_FROM_SECTION(F,S) md_pcrel_from_section(F,S) + +extern long md_pcrel_from_section (struct fix *, segT); +extern void aarch64_frag_align_code (int, int); +extern const char * elf64_aarch64_target_format (void); +extern int aarch64_force_relocation (struct fix *); +extern void aarch64_cleanup (void); +extern void aarch64_start_line_hook (void); +extern void aarch64_frob_label (symbolS *); +extern int aarch64_data_in_code (void); +extern char * aarch64_canonicalize_symbol_name (char *); +extern void aarch64_adjust_symtab (void); +extern void aarch64elf_frob_symbol (symbolS *, int *); +extern void cons_fix_new_aarch64 (fragS *, int, int, expressionS *); +extern void aarch64_init_frag (struct frag *, int); +extern void aarch64_handle_align (struct frag *); +extern int tc_aarch64_regname_to_dw2regnum (char *regname); +extern void tc_aarch64_frame_initial_instructions (void); + +#ifdef TE_PE + +#define O_secrel O_md1 + +#define TC_DWARF2_EMIT_OFFSET tc_pe_dwarf2_emit_offset +void tc_pe_dwarf2_emit_offset (symbolS *, unsigned int); + +#endif /* TE_PE */ + +#endif /* TC_AARCH64 */ diff --git a/gas/configure.tgt b/gas/configure.tgt index e07bc55..9e44de0 100644 --- a/gas/configure.tgt +++ b/gas/configure.tgt @@ -29,6 +29,8 @@ eval `echo $targ | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/cpu=\1 vendor=\2 os=\3/'` # endian and arch. # Note: This table is alpha-sorted, please try to keep it that way. case ${cpu} in + aarch64) cpu_type=aarch64 endian=little ;; + aarch64_be) cpu_type=aarch64 endian=big ;; alpha*) cpu_type=alpha ;; am33_2.0) cpu_type=mn10300 endian=little ;; arm*be|arm*b) cpu_type=arm endian=big ;; @@ -96,6 +98,9 @@ esac generic_target=${cpu_type}-$vendor-$os # Note: This table is alpha-sorted, please try to keep it that way. case ${generic_target} in + aarch64*-*-elf) fmt=elf;; + aarch64*-*-linux*) fmt=elf em=linux ;; + alpha-*-*vms*) fmt=evax ;; alpha-*-osf*) fmt=ecoff ;; alpha-*-linuxecoff*) fmt=ecoff ;; @@ -446,7 +451,7 @@ case ${generic_target} in esac case ${cpu_type} in - alpha | arm | i386 | ia64 | microblaze | mips | ns32k | pdp11 | ppc | sparc | z80 | z8k) + aarch64 | alpha | arm | i386 | ia64 | microblaze | mips | ns32k | pdp11 | ppc | sparc | z80 | z8k) bfd_gas=yes ;; esac diff --git a/gas/doc/Makefile.am b/gas/doc/Makefile.am index 1fd3e1b..fc69005 100644 --- a/gas/doc/Makefile.am +++ b/gas/doc/Makefile.am @@ -29,6 +29,7 @@ asconfig.texi: $(CONFIG).texi chmod u+w ./asconfig.texi CPU_DOCS = \ + c-aarch64.texi \ c-alpha.texi \ c-arc.texi \ c-arm.texi \ diff --git a/gas/doc/Makefile.in b/gas/doc/Makefile.in index 4893f03..5149e02 100644 --- a/gas/doc/Makefile.in +++ b/gas/doc/Makefile.in @@ -38,7 +38,9 @@ subdir = doc DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \ $(as_TEXINFOS) ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \ +am__aclocal_m4_deps = $(top_srcdir)/../bfd/acinclude.m4 \ + $(top_srcdir)/../config/zlib.m4 \ + $(top_srcdir)/../bfd/warning.m4 $(top_srcdir)/../config/acx.m4 \ $(top_srcdir)/../config/depstand.m4 \ $(top_srcdir)/../config/gettext-sister.m4 \ $(top_srcdir)/../config/largefile.m4 \ @@ -49,9 +51,9 @@ am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \ $(top_srcdir)/../config/plugins.m4 \ $(top_srcdir)/../config/po.m4 \ $(top_srcdir)/../config/progtest.m4 \ - $(top_srcdir)/../bfd/acinclude.m4 \ - $(top_srcdir)/../config/zlib.m4 \ - $(top_srcdir)/../bfd/warning.m4 $(top_srcdir)/acinclude.m4 \ + $(top_srcdir)/../libtool.m4 $(top_srcdir)/../ltoptions.m4 \ + $(top_srcdir)/../ltsugar.m4 $(top_srcdir)/../ltversion.m4 \ + $(top_srcdir)/../lt~obsolete.m4 $(top_srcdir)/acinclude.m4 \ $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) @@ -118,7 +120,6 @@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ -DLLTOOL = @DLLTOOL@ DSYMUTIL = @DSYMUTIL@ DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ @@ -154,7 +155,6 @@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ -MANIFEST_TOOL = @MANIFEST_TOOL@ MKDIR_P = @MKDIR_P@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ @@ -191,7 +191,6 @@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ -ac_ct_AR = @ac_ct_AR@ ac_ct_CC = @ac_ct_CC@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ @@ -271,6 +270,7 @@ TEXI2DVI = texi2dvi -I "$(srcdir)" -I "$(top_srcdir)/../libiberty" \ -I "$(top_srcdir)/../bfd/doc" -I ../../bfd/doc CPU_DOCS = \ + c-aarch64.texi \ c-alpha.texi \ c-arc.texi \ c-arm.texi \ diff --git a/gas/doc/all.texi b/gas/doc/all.texi index 9a55441..e294208 100644 --- a/gas/doc/all.texi +++ b/gas/doc/all.texi @@ -26,6 +26,7 @@ @c CPUs of interest @c ================ +@set AARCH64 @set ALPHA @set ARC @set ARM diff --git a/gas/doc/as.texinfo b/gas/doc/as.texinfo index 5b5d268..942d25d 100644 --- a/gas/doc/as.texinfo +++ b/gas/doc/as.texinfo @@ -249,6 +249,11 @@ gcc(1), ld(1), and the Info entries for @file{binutils} and @file{ld}. @c @c Target dependent options are listed below. Keep the list sorted. @c Add an empty line for separation. +@ifset AARCH64 + +@emph{Target AArch64 options:} + [@b{-EB}|@b{-EL}] +@end ifset @ifset ALPHA @emph{Target Alpha options:} @@ -733,6 +738,25 @@ Standard input, or source files to assemble. @end table @c man end +@ifset AARCH64 + +@ifclear man +@xref{AArch64 Options}, for the options available when @value{AS} is configured +for the 64-bit mode of the ARM Architecture (AArch64). +@end ifclear + +@ifset man +@c man begin OPTIONS +The following options are available when @value{AS} is configured for the +64-bit mode of the ARM Architecture (AArch64). +@c man end +@c man begin INCLUDE +@include c-aarch64.texi +@c ended inside the included file +@end ifset + +@end ifset + @ifset ALPHA @ifclear man @@ -6914,6 +6938,9 @@ include details on any machine's instruction set. For details on that subject, see the hardware manufacturer's manual. @menu +@ifset AARCH64 +* AArch64-Dependent:: AArch64 Dependent Features +@end ifset @ifset ALPHA * Alpha-Dependent:: Alpha Dependent Features @end ifset @@ -7072,6 +7099,10 @@ subject, see the hardware manufacturer's manual. @c node and sectioning commands; hence the repetition of @chapter BLAH @c in both conditional blocks. +@ifset AARCH64 +@include c-aarch64.texi +@end ifset + @ifset ALPHA @include c-alpha.texi @end ifset diff --git a/gas/doc/c-aarch64.texi b/gas/doc/c-aarch64.texi new file mode 100644 index 0000000..5a59f44 --- /dev/null +++ b/gas/doc/c-aarch64.texi @@ -0,0 +1,275 @@ +@c Copyright 2009, 2010, 2011, 2012 Free Software Foundation, Inc. +@c Contributed by ARM Ltd. +@c This is part of the GAS manual. +@c For copying conditions, see the file as.texinfo. +@c man end + +@ifset GENERIC +@page +@node AArch64-Dependent +@chapter AArch64 Dependent Features +@end ifset + +@ifclear GENERIC +@node Machine Dependencies +@chapter AArch64 Dependent Features +@end ifclear + +@cindex AArch64 support +@cindex Thumb support +@menu +* AArch64 Options:: Options +* AArch64 Syntax:: Syntax +* AArch64 Floating Point:: Floating Point +* AArch64 Directives:: AArch64 Machine Directives +* AArch64 Opcodes:: Opcodes +* AArch64 Mapping Symbols:: Mapping Symbols +@end menu + +@node AArch64 Options +@section Options +@cindex AArch64 options (none) +@cindex options for AArch64 (none) + +@c man begin OPTIONS +@table @gcctabopt + +@cindex @code{-EB} command line option, AArch64 +@item -EB +This option specifies that the output generated by the assembler should +be marked as being encoded for a big-endian processor. + +@cindex @code{-EL} command line option, AArch64 +@item -EL +This option specifies that the output generated by the assembler should +be marked as being encoded for a little-endian processor. + +@end table +@c man end + +@node AArch64 Syntax +@section Syntax +@menu +* AArch64-Chars:: Special Characters +* AArch64-Regs:: Register Names +* AArch64-Relocations:: Relocations +@end menu + +@node AArch64-Chars +@subsection Special Characters + +@cindex line comment character, AArch64 +@cindex AArch64 line comment character +The presence of a @samp{//} on a line indicates the start of a comment +that extends to the end of the current line. If a @samp{#} appears as +the first character of a line, the whole line is treated as a comment. + +@cindex line separator, AArch64 +@cindex statement separator, AArch64 +@cindex AArch64 line separator +The @samp{;} character can be used instead of a newline to separate +statements. + +@cindex immediate character, AArch64 +@cindex AArch64 immediate character +The @samp{#} can be optionally used to indicate immediate operands. + +@node AArch64-Regs +@subsection Register Names + +@cindex AArch64 register names +@cindex register names, AArch64 +Please refer to the section @samp{4.4 Register Names} of +@samp{ARMv8 Instruction Set Overview}, which is available at +@uref{http://infocenter.arm.com}. + +@node AArch64-Relocations +@subsection Relocations + +@cindex relocations, AArch64 +@cindex AArch64 relocations +@cindex MOVN, MOVZ and MOVK group relocations, AArch64 +Relocations for @samp{MOVZ} and @samp{MOVK} instructions can be generated +by prefixing the label with @samp{#:abs_g2:} etc. +For example to load the 48-bit absolute address of @var{foo} into x0: + +@smallexample + movz x0, #:abs_g2:foo // bits 32-47, overflow check + movk x0, #:abs_g1_nc:foo // bits 16-31, no overflow check + movk x0, #:abs_g0_nc:foo // bits 0-15, no overflow check +@end smallexample + +@cindex ADRP, ADD, LDR/STR group relocations, AArch64 +Relocations for @samp{ADRP}, and @samp{ADD}, @samp{LDR} or @samp{STR} +instructions can be generated by prefixing the label with +@samp{#:pg_hi21:} and @samp{#:lo12:} respectively. + +For example to use 33-bit (+/-4GB) pc-relative addressing to +load the address of @var{foo} into x0: + +@smallexample + adrp x0, #:pg_hi21:foo + add x0, x0, #:lo12:foo +@end smallexample + +Or to load the value of @var{foo} into x0: + +@smallexample + adrp x0, #:pg_hi21:foo + ldr x0, [x0, #:lo12:foo] +@end smallexample + +Note that @samp{#:pg_hi21:} is optional. + +@smallexample + adrp x0, foo +@end smallexample + +is equivalent to + +@smallexample + adrp x0, #:pg_hi21:foo +@end smallexample + +@node AArch64 Floating Point +@section Floating Point + +@cindex floating point, AArch64 (@sc{ieee}) +@cindex AArch64 floating point (@sc{ieee}) +The AArch64 architecture uses @sc{ieee} floating-point numbers. + +@node AArch64 Directives +@section AArch64 Machine Directives + +@cindex machine directives, AArch64 +@cindex AArch64 machine directives +@table @code + +@c AAAAAAAAAAAAAAAAAAAAAAAAA +@c BBBBBBBBBBBBBBBBBBBBBBBBBB + +@cindex @code{.bss} directive, AArch64 +@item .bss +This directive switches to the @code{.bss} section. + +@c CCCCCCCCCCCCCCCCCCCCCCCCCC +@c DDDDDDDDDDDDDDDDDDDDDDDDDD +@c EEEEEEEEEEEEEEEEEEEEEEEEEE +@c FFFFFFFFFFFFFFFFFFFFFFFFFF +@c GGGGGGGGGGGGGGGGGGGGGGGGGG +@c HHHHHHHHHHHHHHHHHHHHHHHHHH +@c IIIIIIIIIIIIIIIIIIIIIIIIII +@c JJJJJJJJJJJJJJJJJJJJJJJJJJ +@c KKKKKKKKKKKKKKKKKKKKKKKKKK +@c LLLLLLLLLLLLLLLLLLLLLLLLLL + +@cindex @code{.ltorg} directive, AArch64 +@item .ltorg +This directive causes the current contents of the literal pool to be +dumped into the current section (which is assumed to be the .text +section) at the current location (aligned to a word boundary). +@code{GAS} maintains a separate literal pool for each section and each +sub-section. The @code{.ltorg} directive will only affect the literal +pool of the current section and sub-section. At the end of assembly +all remaining, un-empty literal pools will automatically be dumped. + +Note - older versions of @code{GAS} would dump the current literal +pool any time a section change occurred. This is no longer done, since +it prevents accurate control of the placement of literal pools. + +@c MMMMMMMMMMMMMMMMMMMMMMMMMM + +@c NNNNNNNNNNNNNNNNNNNNNNNNNN +@c OOOOOOOOOOOOOOOOOOOOOOOOOO + +@c PPPPPPPPPPPPPPPPPPPPPPPPPP + +@cindex @code{.pool} directive, AArch64 +@item .pool +This is a synonym for .ltorg. + +@c QQQQQQQQQQQQQQQQQQQQQQQQQQ +@c RRRRRRRRRRRRRRRRRRRRRRRRRR + +@cindex @code{.req} directive, AArch64 +@item @var{name} .req @var{register name} +This creates an alias for @var{register name} called @var{name}. For +example: + +@smallexample + foo .req w0 +@end smallexample + +@c SSSSSSSSSSSSSSSSSSSSSSSSSS + +@c TTTTTTTTTTTTTTTTTTTTTTTTTT + +@c UUUUUUUUUUUUUUUUUUUUUUUUUU + +@cindex @code{.unreq} directive, AArch64 +@item .unreq @var{alias-name} +This undefines a register alias which was previously defined using the +@code{req} directive. For example: + +@smallexample + foo .req w0 + .unreq foo +@end smallexample + +An error occurs if the name is undefined. Note - this pseudo op can +be used to delete builtin in register name aliases (eg 'w0'). This +should only be done if it is really necessary. + +@c VVVVVVVVVVVVVVVVVVVVVVVVVV + +@c WWWWWWWWWWWWWWWWWWWWWWWWWW +@c XXXXXXXXXXXXXXXXXXXXXXXXXX +@c YYYYYYYYYYYYYYYYYYYYYYYYYY +@c ZZZZZZZZZZZZZZZZZZZZZZZZZZ + +@end table + +@node AArch64 Opcodes +@section Opcodes + +@cindex AArch64 opcodes +@cindex opcodes for AArch64 +@code{@value{AS}} implements all the standard AArch64 opcodes. It also +implements several pseudo opcodes, including several synthetic load +instructions. + +@table @code + +@cindex @code{LDR reg,=<expr>} pseudo op, AArch64 +@item LDR = +@smallexample + ldr <register> , =<expression> +@end smallexample + +The constant expression will be placed into the nearest literal pool (if it not +already there) and a PC-relative LDR instruction will be generated. + +@end table + +For more information on the AArch64 instruction set and assembly language +notation, see @samp{ARMv8 Instruction Set Overview} available at +@uref{http://infocenter.arm.com}. + + +@node AArch64 Mapping Symbols +@section Mapping Symbols + +The AArch64 ELF specification requires that special symbols be inserted +into object files to mark certain features: + +@table @code + +@cindex @code{$x} +@item $x +At the start of a region of code containing AArch64 instructions. + +@cindex @code{$d} +@item $d +At the start of a region of data. + +@end table diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index cea720d..4927e39 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,127 @@ +2012-08-13 Ian Bolton <ian.bolton@arm.com> + Laurent Desnogues <laurent.desnogues@arm.com> + Jim MacArthur <jim.macarthur@arm.com> + Marcus Shawcroft <marcus.shawcroft@arm.com> + Nigel Stephens <nigel.stephens@arm.com> + Ramana Radhakrishnan <ramana.radhakrishnan@arm.com> + Richard Earnshaw <rearnsha@arm.com> + Sofiane Naci <sofiane.naci@arm.com> + Tejas Belagod <tejas.belagod@arm.com> + Yufeng Zhang <yufeng.zhang@arm.com> + + * gas/aarch64: New directory. + * gas/aarch64/aarch64.exp: New file. + * gas/aarch64/addsub.d: New file. + * gas/aarch64/addsub.s: New file. + * gas/aarch64/advsimd-across.d: New file. + * gas/aarch64/advsimd-across.s: New file. + * gas/aarch64/advsimd-misc.d: New file. + * gas/aarch64/advsimd-misc.s: New file. + * gas/aarch64/advsisd-copy.d: New file. + * gas/aarch64/advsisd-copy.s: New file. + * gas/aarch64/advsisd-misc.d: New file. + * gas/aarch64/advsisd-misc.s: New file. + * gas/aarch64/alias.d: New file. + * gas/aarch64/alias.s: New file. + * gas/aarch64/bitfield-alias.d: New file. + * gas/aarch64/bitfield-alias.s: New file. + * gas/aarch64/bitfield-bfm.d: New file. + * gas/aarch64/bitfield-bfm.s: New file. + * gas/aarch64/bitfield-dump: New file. + * gas/aarch64/bitfield-no-aliases.d: New file. + * gas/aarch64/crypto.d: New file. + * gas/aarch64/crypto.s: New file. + * gas/aarch64/diagnostic.d: New file. + * gas/aarch64/diagnostic.l: New file. + * gas/aarch64/diagnostic.s: New file. + * gas/aarch64/floatdp2.d: New file. + * gas/aarch64/floatdp2.s: New file. + * gas/aarch64/fp_cvt_int.d: New file. + * gas/aarch64/fp_cvt_int.s: New file. + * gas/aarch64/illegal-2.d: New file. + * gas/aarch64/illegal-2.l: New file. + * gas/aarch64/illegal-2.s: New file. + * gas/aarch64/illegal.d: New file. + * gas/aarch64/illegal.l: New file. + * gas/aarch64/illegal.s: New file. + * gas/aarch64/inst-directive.d: New file. + * gas/aarch64/inst-directive.s: New file. + * gas/aarch64/int-insns.d: New file. + * gas/aarch64/int-insns.s: New file. + * gas/aarch64/ldst-exclusive.d: New file. + * gas/aarch64/ldst-exclusive.s: New file. + * gas/aarch64/ldst-reg-imm-post-ind.d: New file. + * gas/aarch64/ldst-reg-imm-post-ind.s: New file. + * gas/aarch64/ldst-reg-imm-pre-ind.d: New file. + * gas/aarch64/ldst-reg-imm-pre-ind.s: New file. + * gas/aarch64/ldst-reg-pair.d: New file. + * gas/aarch64/ldst-reg-pair.s: New file. + * gas/aarch64/ldst-reg-reg-offset.d: New file. + * gas/aarch64/ldst-reg-reg-offset.s: New file. + * gas/aarch64/ldst-reg-uns-imm.d: New file. + * gas/aarch64/ldst-reg-uns-imm.s: New file. + * gas/aarch64/ldst-reg-unscaled-imm.d: New file. + * gas/aarch64/ldst-reg-unscaled-imm.s: New file. + * gas/aarch64/legacy_reg_names.d: New file. + * gas/aarch64/legacy_reg_names.l: New file. + * gas/aarch64/legacy_reg_names.s: New file. + * gas/aarch64/mapmisc.d: New file. + * gas/aarch64/mapmisc.dat: New file. + * gas/aarch64/mapmisc.s: New file. + * gas/aarch64/mapping.d: New file. + * gas/aarch64/mapping.s: New file. + * gas/aarch64/mapping2.d: New file. + * gas/aarch64/mapping2.s: New file. + * gas/aarch64/mapping3.d: New file. + * gas/aarch64/mapping3.s: New file. + * gas/aarch64/mapping4.d: New file. + * gas/aarch64/mapping4.s: New file. + * gas/aarch64/mov-no-aliases.d: New file. + * gas/aarch64/mov.d: New file. + * gas/aarch64/mov.s: New file. + * gas/aarch64/movi.d: New file. + * gas/aarch64/movi.s: New file. + * gas/aarch64/msr.d: New file. + * gas/aarch64/msr.s: New file. + * gas/aarch64/neon-fp-cvt-int.d: New file. + * gas/aarch64/neon-fp-cvt-int.s: New file. + * gas/aarch64/neon-frint.d: New file. + * gas/aarch64/neon-frint.s: New file. + * gas/aarch64/neon-ins.d: New file. + * gas/aarch64/neon-ins.s: New file. + * gas/aarch64/neon-not.d: New file. + * gas/aarch64/neon-not.s: New file. + * gas/aarch64/neon-vfp-reglist-post.d: New file. + * gas/aarch64/neon-vfp-reglist-post.s: New file. + * gas/aarch64/neon-vfp-reglist.d: New file. + * gas/aarch64/neon-vfp-reglist.s: New file. + * gas/aarch64/no-aliases.d: New file. + * gas/aarch64/optional.d: New file. + * gas/aarch64/optional.s: New file. + * gas/aarch64/programmer-friendly.d: New file. + * gas/aarch64/programmer-friendly.s: New file. + * gas/aarch64/reloc-data.d: New file. + * gas/aarch64/reloc-data.s: New file. + * gas/aarch64/reloc-insn.d: New file. + * gas/aarch64/reloc-insn.s: New file. + * gas/aarch64/shifted.d: New file. + * gas/aarch64/shifted.s: New file. + * gas/aarch64/symbol.d: New file. + * gas/aarch64/symbol.s: New file. + * gas/aarch64/sysreg-1.d: New file. + * gas/aarch64/sysreg-1.s: New file. + * gas/aarch64/sysreg.d: New file. + * gas/aarch64/sysreg.s: New file. + * gas/aarch64/system.d: New file. + * gas/aarch64/system.s: New file. + * gas/aarch64/tlbi_op.d: New file. + * gas/aarch64/tlbi_op.s: New file. + * gas/aarch64/tls.d: New file. + * gas/aarch64/tls.s: New file. + * gas/aarch64/verbose-error.d: New file. + * gas/aarch64/verbose-error.l: New file. + * gas/aarch64/verbose-error.s: New file. + 2012-08-11 Saravanan Ekanathan <saravanan.ekanathan@amd.com> PR gas/14423 diff --git a/gas/testsuite/gas/aarch64/aarch64.exp b/gas/testsuite/gas/aarch64/aarch64.exp new file mode 100644 index 0000000..19e9213 --- /dev/null +++ b/gas/testsuite/gas/aarch64/aarch64.exp @@ -0,0 +1,7 @@ +# +# Some AArch64 tests +# + +if {[istarget aarch64*-*-*]} { + run_dump_tests [lsort [glob -nocomplain $srcdir/$subdir/*.d]] +} diff --git a/gas/testsuite/gas/aarch64/addsub.d b/gas/testsuite/gas/aarch64/addsub.d new file mode 100644 index 0000000..4307f23 --- /dev/null +++ b/gas/testsuite/gas/aarch64/addsub.d @@ -0,0 +1,2371 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: 0b0100f0 add w16, w7, w1 + 4: 0b2100f0 add w16, w7, w1, uxtb + 8: 0b2100f0 add w16, w7, w1, uxtb + c: 0b2104f0 add w16, w7, w1, uxtb #1 + 10: 0b2108f0 add w16, w7, w1, uxtb #2 + 14: 0b210cf0 add w16, w7, w1, uxtb #3 + 18: 0b2110f0 add w16, w7, w1, uxtb #4 + 1c: 0b2120f0 add w16, w7, w1, uxth + 20: 0b2120f0 add w16, w7, w1, uxth + 24: 0b2124f0 add w16, w7, w1, uxth #1 + 28: 0b2128f0 add w16, w7, w1, uxth #2 + 2c: 0b212cf0 add w16, w7, w1, uxth #3 + 30: 0b2130f0 add w16, w7, w1, uxth #4 + 34: 0b2140f0 add w16, w7, w1, uxtw + 38: 0b2140f0 add w16, w7, w1, uxtw + 3c: 0b2144f0 add w16, w7, w1, uxtw #1 + 40: 0b2148f0 add w16, w7, w1, uxtw #2 + 44: 0b214cf0 add w16, w7, w1, uxtw #3 + 48: 0b2150f0 add w16, w7, w1, uxtw #4 + 4c: 0b2160f0 add w16, w7, w1, uxtx + 50: 0b2160f0 add w16, w7, w1, uxtx + 54: 0b2164f0 add w16, w7, w1, uxtx #1 + 58: 0b2168f0 add w16, w7, w1, uxtx #2 + 5c: 0b216cf0 add w16, w7, w1, uxtx #3 + 60: 0b2170f0 add w16, w7, w1, uxtx #4 + 64: 0b2180f0 add w16, w7, w1, sxtb + 68: 0b2180f0 add w16, w7, w1, sxtb + 6c: 0b2184f0 add w16, w7, w1, sxtb #1 + 70: 0b2188f0 add w16, w7, w1, sxtb #2 + 74: 0b218cf0 add w16, w7, w1, sxtb #3 + 78: 0b2190f0 add w16, w7, w1, sxtb #4 + 7c: 0b21a0f0 add w16, w7, w1, sxth + 80: 0b21a0f0 add w16, w7, w1, sxth + 84: 0b21a4f0 add w16, w7, w1, sxth #1 + 88: 0b21a8f0 add w16, w7, w1, sxth #2 + 8c: 0b21acf0 add w16, w7, w1, sxth #3 + 90: 0b21b0f0 add w16, w7, w1, sxth #4 + 94: 0b21c0f0 add w16, w7, w1, sxtw + 98: 0b21c0f0 add w16, w7, w1, sxtw + 9c: 0b21c4f0 add w16, w7, w1, sxtw #1 + a0: 0b21c8f0 add w16, w7, w1, sxtw #2 + a4: 0b21ccf0 add w16, w7, w1, sxtw #3 + a8: 0b21d0f0 add w16, w7, w1, sxtw #4 + ac: 0b21e0f0 add w16, w7, w1, sxtx + b0: 0b21e0f0 add w16, w7, w1, sxtx + b4: 0b21e4f0 add w16, w7, w1, sxtx #1 + b8: 0b21e8f0 add w16, w7, w1, sxtx #2 + bc: 0b21ecf0 add w16, w7, w1, sxtx #3 + c0: 0b21f0f0 add w16, w7, w1, sxtx #4 + c4: 0b0100f0 add w16, w7, w1 + c8: 0b0104f0 add w16, w7, w1, lsl #1 + cc: 0b0108f0 add w16, w7, w1, lsl #2 + d0: 0b010cf0 add w16, w7, w1, lsl #3 + d4: 0b0110f0 add w16, w7, w1, lsl #4 + d8: 0b2143f0 add w16, wsp, w1 + dc: 0b2103f0 add w16, wsp, w1, uxtb + e0: 0b2103f0 add w16, wsp, w1, uxtb + e4: 0b2107f0 add w16, wsp, w1, uxtb #1 + e8: 0b210bf0 add w16, wsp, w1, uxtb #2 + ec: 0b210ff0 add w16, wsp, w1, uxtb #3 + f0: 0b2113f0 add w16, wsp, w1, uxtb #4 + f4: 0b2123f0 add w16, wsp, w1, uxth + f8: 0b2123f0 add w16, wsp, w1, uxth + fc: 0b2127f0 add w16, wsp, w1, uxth #1 + 100: 0b212bf0 add w16, wsp, w1, uxth #2 + 104: 0b212ff0 add w16, wsp, w1, uxth #3 + 108: 0b2133f0 add w16, wsp, w1, uxth #4 + 10c: 0b2143f0 add w16, wsp, w1 + 110: 0b2143f0 add w16, wsp, w1 + 114: 0b2147f0 add w16, wsp, w1, lsl #1 + 118: 0b214bf0 add w16, wsp, w1, lsl #2 + 11c: 0b214ff0 add w16, wsp, w1, lsl #3 + 120: 0b2153f0 add w16, wsp, w1, lsl #4 + 124: 0b2163f0 add w16, wsp, w1, uxtx + 128: 0b2163f0 add w16, wsp, w1, uxtx + 12c: 0b2167f0 add w16, wsp, w1, uxtx #1 + 130: 0b216bf0 add w16, wsp, w1, uxtx #2 + 134: 0b216ff0 add w16, wsp, w1, uxtx #3 + 138: 0b2173f0 add w16, wsp, w1, uxtx #4 + 13c: 0b2183f0 add w16, wsp, w1, sxtb + 140: 0b2183f0 add w16, wsp, w1, sxtb + 144: 0b2187f0 add w16, wsp, w1, sxtb #1 + 148: 0b218bf0 add w16, wsp, w1, sxtb #2 + 14c: 0b218ff0 add w16, wsp, w1, sxtb #3 + 150: 0b2193f0 add w16, wsp, w1, sxtb #4 + 154: 0b21a3f0 add w16, wsp, w1, sxth + 158: 0b21a3f0 add w16, wsp, w1, sxth + 15c: 0b21a7f0 add w16, wsp, w1, sxth #1 + 160: 0b21abf0 add w16, wsp, w1, sxth #2 + 164: 0b21aff0 add w16, wsp, w1, sxth #3 + 168: 0b21b3f0 add w16, wsp, w1, sxth #4 + 16c: 0b21c3f0 add w16, wsp, w1, sxtw + 170: 0b21c3f0 add w16, wsp, w1, sxtw + 174: 0b21c7f0 add w16, wsp, w1, sxtw #1 + 178: 0b21cbf0 add w16, wsp, w1, sxtw #2 + 17c: 0b21cff0 add w16, wsp, w1, sxtw #3 + 180: 0b21d3f0 add w16, wsp, w1, sxtw #4 + 184: 0b21e3f0 add w16, wsp, w1, sxtx + 188: 0b21e3f0 add w16, wsp, w1, sxtx + 18c: 0b21e7f0 add w16, wsp, w1, sxtx #1 + 190: 0b21ebf0 add w16, wsp, w1, sxtx #2 + 194: 0b21eff0 add w16, wsp, w1, sxtx #3 + 198: 0b21f3f0 add w16, wsp, w1, sxtx #4 + 19c: 0b2143f0 add w16, wsp, w1 + 1a0: 0b2147f0 add w16, wsp, w1, lsl #1 + 1a4: 0b214bf0 add w16, wsp, w1, lsl #2 + 1a8: 0b214ff0 add w16, wsp, w1, lsl #3 + 1ac: 0b2153f0 add w16, wsp, w1, lsl #4 + 1b0: 8b0100f0 add x16, x7, x1 + 1b4: 8b2100f0 add x16, x7, w1, uxtb + 1b8: 8b2100f0 add x16, x7, w1, uxtb + 1bc: 8b2104f0 add x16, x7, w1, uxtb #1 + 1c0: 8b2108f0 add x16, x7, w1, uxtb #2 + 1c4: 8b210cf0 add x16, x7, w1, uxtb #3 + 1c8: 8b2110f0 add x16, x7, w1, uxtb #4 + 1cc: 8b2120f0 add x16, x7, w1, uxth + 1d0: 8b2120f0 add x16, x7, w1, uxth + 1d4: 8b2124f0 add x16, x7, w1, uxth #1 + 1d8: 8b2128f0 add x16, x7, w1, uxth #2 + 1dc: 8b212cf0 add x16, x7, w1, uxth #3 + 1e0: 8b2130f0 add x16, x7, w1, uxth #4 + 1e4: 8b2140f0 add x16, x7, w1, uxtw + 1e8: 8b2140f0 add x16, x7, w1, uxtw + 1ec: 8b2144f0 add x16, x7, w1, uxtw #1 + 1f0: 8b2148f0 add x16, x7, w1, uxtw #2 + 1f4: 8b214cf0 add x16, x7, w1, uxtw #3 + 1f8: 8b2150f0 add x16, x7, w1, uxtw #4 + 1fc: 8b2160f0 add x16, x7, x1, uxtx + 200: 8b2160f0 add x16, x7, x1, uxtx + 204: 8b2164f0 add x16, x7, x1, uxtx #1 + 208: 8b2168f0 add x16, x7, x1, uxtx #2 + 20c: 8b216cf0 add x16, x7, x1, uxtx #3 + 210: 8b2170f0 add x16, x7, x1, uxtx #4 + 214: 8b2180f0 add x16, x7, w1, sxtb + 218: 8b2180f0 add x16, x7, w1, sxtb + 21c: 8b2184f0 add x16, x7, w1, sxtb #1 + 220: 8b2188f0 add x16, x7, w1, sxtb #2 + 224: 8b218cf0 add x16, x7, w1, sxtb #3 + 228: 8b2190f0 add x16, x7, w1, sxtb #4 + 22c: 8b21a0f0 add x16, x7, w1, sxth + 230: 8b21a0f0 add x16, x7, w1, sxth + 234: 8b21a4f0 add x16, x7, w1, sxth #1 + 238: 8b21a8f0 add x16, x7, w1, sxth #2 + 23c: 8b21acf0 add x16, x7, w1, sxth #3 + 240: 8b21b0f0 add x16, x7, w1, sxth #4 + 244: 8b21c0f0 add x16, x7, w1, sxtw + 248: 8b21c0f0 add x16, x7, w1, sxtw + 24c: 8b21c4f0 add x16, x7, w1, sxtw #1 + 250: 8b21c8f0 add x16, x7, w1, sxtw #2 + 254: 8b21ccf0 add x16, x7, w1, sxtw #3 + 258: 8b21d0f0 add x16, x7, w1, sxtw #4 + 25c: 8b21e0f0 add x16, x7, x1, sxtx + 260: 8b21e0f0 add x16, x7, x1, sxtx + 264: 8b21e4f0 add x16, x7, x1, sxtx #1 + 268: 8b21e8f0 add x16, x7, x1, sxtx #2 + 26c: 8b21ecf0 add x16, x7, x1, sxtx #3 + 270: 8b21f0f0 add x16, x7, x1, sxtx #4 + 274: 8b0100f0 add x16, x7, x1 + 278: 8b0104f0 add x16, x7, x1, lsl #1 + 27c: 8b0108f0 add x16, x7, x1, lsl #2 + 280: 8b010cf0 add x16, x7, x1, lsl #3 + 284: 8b0110f0 add x16, x7, x1, lsl #4 + 288: 8b2163f0 add x16, sp, x1 + 28c: 8b2103f0 add x16, sp, w1, uxtb + 290: 8b2103f0 add x16, sp, w1, uxtb + 294: 8b2107f0 add x16, sp, w1, uxtb #1 + 298: 8b210bf0 add x16, sp, w1, uxtb #2 + 29c: 8b210ff0 add x16, sp, w1, uxtb #3 + 2a0: 8b2113f0 add x16, sp, w1, uxtb #4 + 2a4: 8b2123f0 add x16, sp, w1, uxth + 2a8: 8b2123f0 add x16, sp, w1, uxth + 2ac: 8b2127f0 add x16, sp, w1, uxth #1 + 2b0: 8b212bf0 add x16, sp, w1, uxth #2 + 2b4: 8b212ff0 add x16, sp, w1, uxth #3 + 2b8: 8b2133f0 add x16, sp, w1, uxth #4 + 2bc: 8b2143f0 add x16, sp, w1, uxtw + 2c0: 8b2143f0 add x16, sp, w1, uxtw + 2c4: 8b2147f0 add x16, sp, w1, uxtw #1 + 2c8: 8b214bf0 add x16, sp, w1, uxtw #2 + 2cc: 8b214ff0 add x16, sp, w1, uxtw #3 + 2d0: 8b2153f0 add x16, sp, w1, uxtw #4 + 2d4: 8b2163f0 add x16, sp, x1 + 2d8: 8b2163f0 add x16, sp, x1 + 2dc: 8b2167f0 add x16, sp, x1, lsl #1 + 2e0: 8b216bf0 add x16, sp, x1, lsl #2 + 2e4: 8b216ff0 add x16, sp, x1, lsl #3 + 2e8: 8b2173f0 add x16, sp, x1, lsl #4 + 2ec: 8b2183f0 add x16, sp, w1, sxtb + 2f0: 8b2183f0 add x16, sp, w1, sxtb + 2f4: 8b2187f0 add x16, sp, w1, sxtb #1 + 2f8: 8b218bf0 add x16, sp, w1, sxtb #2 + 2fc: 8b218ff0 add x16, sp, w1, sxtb #3 + 300: 8b2193f0 add x16, sp, w1, sxtb #4 + 304: 8b21a3f0 add x16, sp, w1, sxth + 308: 8b21a3f0 add x16, sp, w1, sxth + 30c: 8b21a7f0 add x16, sp, w1, sxth #1 + 310: 8b21abf0 add x16, sp, w1, sxth #2 + 314: 8b21aff0 add x16, sp, w1, sxth #3 + 318: 8b21b3f0 add x16, sp, w1, sxth #4 + 31c: 8b21c3f0 add x16, sp, w1, sxtw + 320: 8b21c3f0 add x16, sp, w1, sxtw + 324: 8b21c7f0 add x16, sp, w1, sxtw #1 + 328: 8b21cbf0 add x16, sp, w1, sxtw #2 + 32c: 8b21cff0 add x16, sp, w1, sxtw #3 + 330: 8b21d3f0 add x16, sp, w1, sxtw #4 + 334: 8b21e3f0 add x16, sp, x1, sxtx + 338: 8b21e3f0 add x16, sp, x1, sxtx + 33c: 8b21e7f0 add x16, sp, x1, sxtx #1 + 340: 8b21ebf0 add x16, sp, x1, sxtx #2 + 344: 8b21eff0 add x16, sp, x1, sxtx #3 + 348: 8b21f3f0 add x16, sp, x1, sxtx #4 + 34c: 8b2163f0 add x16, sp, x1 + 350: 8b2167f0 add x16, sp, x1, lsl #1 + 354: 8b216bf0 add x16, sp, x1, lsl #2 + 358: 8b216ff0 add x16, sp, x1, lsl #3 + 35c: 8b2173f0 add x16, sp, x1, lsl #4 + 360: 2b0100f0 adds w16, w7, w1 + 364: 2b2100f0 adds w16, w7, w1, uxtb + 368: 2b2100f0 adds w16, w7, w1, uxtb + 36c: 2b2104f0 adds w16, w7, w1, uxtb #1 + 370: 2b2108f0 adds w16, w7, w1, uxtb #2 + 374: 2b210cf0 adds w16, w7, w1, uxtb #3 + 378: 2b2110f0 adds w16, w7, w1, uxtb #4 + 37c: 2b2120f0 adds w16, w7, w1, uxth + 380: 2b2120f0 adds w16, w7, w1, uxth + 384: 2b2124f0 adds w16, w7, w1, uxth #1 + 388: 2b2128f0 adds w16, w7, w1, uxth #2 + 38c: 2b212cf0 adds w16, w7, w1, uxth #3 + 390: 2b2130f0 adds w16, w7, w1, uxth #4 + 394: 2b2140f0 adds w16, w7, w1, uxtw + 398: 2b2140f0 adds w16, w7, w1, uxtw + 39c: 2b2144f0 adds w16, w7, w1, uxtw #1 + 3a0: 2b2148f0 adds w16, w7, w1, uxtw #2 + 3a4: 2b214cf0 adds w16, w7, w1, uxtw #3 + 3a8: 2b2150f0 adds w16, w7, w1, uxtw #4 + 3ac: 2b2160f0 adds w16, w7, w1, uxtx + 3b0: 2b2160f0 adds w16, w7, w1, uxtx + 3b4: 2b2164f0 adds w16, w7, w1, uxtx #1 + 3b8: 2b2168f0 adds w16, w7, w1, uxtx #2 + 3bc: 2b216cf0 adds w16, w7, w1, uxtx #3 + 3c0: 2b2170f0 adds w16, w7, w1, uxtx #4 + 3c4: 2b2180f0 adds w16, w7, w1, sxtb + 3c8: 2b2180f0 adds w16, w7, w1, sxtb + 3cc: 2b2184f0 adds w16, w7, w1, sxtb #1 + 3d0: 2b2188f0 adds w16, w7, w1, sxtb #2 + 3d4: 2b218cf0 adds w16, w7, w1, sxtb #3 + 3d8: 2b2190f0 adds w16, w7, w1, sxtb #4 + 3dc: 2b21a0f0 adds w16, w7, w1, sxth + 3e0: 2b21a0f0 adds w16, w7, w1, sxth + 3e4: 2b21a4f0 adds w16, w7, w1, sxth #1 + 3e8: 2b21a8f0 adds w16, w7, w1, sxth #2 + 3ec: 2b21acf0 adds w16, w7, w1, sxth #3 + 3f0: 2b21b0f0 adds w16, w7, w1, sxth #4 + 3f4: 2b21c0f0 adds w16, w7, w1, sxtw + 3f8: 2b21c0f0 adds w16, w7, w1, sxtw + 3fc: 2b21c4f0 adds w16, w7, w1, sxtw #1 + 400: 2b21c8f0 adds w16, w7, w1, sxtw #2 + 404: 2b21ccf0 adds w16, w7, w1, sxtw #3 + 408: 2b21d0f0 adds w16, w7, w1, sxtw #4 + 40c: 2b21e0f0 adds w16, w7, w1, sxtx + 410: 2b21e0f0 adds w16, w7, w1, sxtx + 414: 2b21e4f0 adds w16, w7, w1, sxtx #1 + 418: 2b21e8f0 adds w16, w7, w1, sxtx #2 + 41c: 2b21ecf0 adds w16, w7, w1, sxtx #3 + 420: 2b21f0f0 adds w16, w7, w1, sxtx #4 + 424: 2b0100f0 adds w16, w7, w1 + 428: 2b0104f0 adds w16, w7, w1, lsl #1 + 42c: 2b0108f0 adds w16, w7, w1, lsl #2 + 430: 2b010cf0 adds w16, w7, w1, lsl #3 + 434: 2b0110f0 adds w16, w7, w1, lsl #4 + 438: 2b2143f0 adds w16, wsp, w1 + 43c: 2b2103f0 adds w16, wsp, w1, uxtb + 440: 2b2103f0 adds w16, wsp, w1, uxtb + 444: 2b2107f0 adds w16, wsp, w1, uxtb #1 + 448: 2b210bf0 adds w16, wsp, w1, uxtb #2 + 44c: 2b210ff0 adds w16, wsp, w1, uxtb #3 + 450: 2b2113f0 adds w16, wsp, w1, uxtb #4 + 454: 2b2123f0 adds w16, wsp, w1, uxth + 458: 2b2123f0 adds w16, wsp, w1, uxth + 45c: 2b2127f0 adds w16, wsp, w1, uxth #1 + 460: 2b212bf0 adds w16, wsp, w1, uxth #2 + 464: 2b212ff0 adds w16, wsp, w1, uxth #3 + 468: 2b2133f0 adds w16, wsp, w1, uxth #4 + 46c: 2b2143f0 adds w16, wsp, w1 + 470: 2b2143f0 adds w16, wsp, w1 + 474: 2b2147f0 adds w16, wsp, w1, lsl #1 + 478: 2b214bf0 adds w16, wsp, w1, lsl #2 + 47c: 2b214ff0 adds w16, wsp, w1, lsl #3 + 480: 2b2153f0 adds w16, wsp, w1, lsl #4 + 484: 2b2163f0 adds w16, wsp, w1, uxtx + 488: 2b2163f0 adds w16, wsp, w1, uxtx + 48c: 2b2167f0 adds w16, wsp, w1, uxtx #1 + 490: 2b216bf0 adds w16, wsp, w1, uxtx #2 + 494: 2b216ff0 adds w16, wsp, w1, uxtx #3 + 498: 2b2173f0 adds w16, wsp, w1, uxtx #4 + 49c: 2b2183f0 adds w16, wsp, w1, sxtb + 4a0: 2b2183f0 adds w16, wsp, w1, sxtb + 4a4: 2b2187f0 adds w16, wsp, w1, sxtb #1 + 4a8: 2b218bf0 adds w16, wsp, w1, sxtb #2 + 4ac: 2b218ff0 adds w16, wsp, w1, sxtb #3 + 4b0: 2b2193f0 adds w16, wsp, w1, sxtb #4 + 4b4: 2b21a3f0 adds w16, wsp, w1, sxth + 4b8: 2b21a3f0 adds w16, wsp, w1, sxth + 4bc: 2b21a7f0 adds w16, wsp, w1, sxth #1 + 4c0: 2b21abf0 adds w16, wsp, w1, sxth #2 + 4c4: 2b21aff0 adds w16, wsp, w1, sxth #3 + 4c8: 2b21b3f0 adds w16, wsp, w1, sxth #4 + 4cc: 2b21c3f0 adds w16, wsp, w1, sxtw + 4d0: 2b21c3f0 adds w16, wsp, w1, sxtw + 4d4: 2b21c7f0 adds w16, wsp, w1, sxtw #1 + 4d8: 2b21cbf0 adds w16, wsp, w1, sxtw #2 + 4dc: 2b21cff0 adds w16, wsp, w1, sxtw #3 + 4e0: 2b21d3f0 adds w16, wsp, w1, sxtw #4 + 4e4: 2b21e3f0 adds w16, wsp, w1, sxtx + 4e8: 2b21e3f0 adds w16, wsp, w1, sxtx + 4ec: 2b21e7f0 adds w16, wsp, w1, sxtx #1 + 4f0: 2b21ebf0 adds w16, wsp, w1, sxtx #2 + 4f4: 2b21eff0 adds w16, wsp, w1, sxtx #3 + 4f8: 2b21f3f0 adds w16, wsp, w1, sxtx #4 + 4fc: 2b2143f0 adds w16, wsp, w1 + 500: 2b2147f0 adds w16, wsp, w1, lsl #1 + 504: 2b214bf0 adds w16, wsp, w1, lsl #2 + 508: 2b214ff0 adds w16, wsp, w1, lsl #3 + 50c: 2b2153f0 adds w16, wsp, w1, lsl #4 + 510: ab0100f0 adds x16, x7, x1 + 514: ab2100f0 adds x16, x7, w1, uxtb + 518: ab2100f0 adds x16, x7, w1, uxtb + 51c: ab2104f0 adds x16, x7, w1, uxtb #1 + 520: ab2108f0 adds x16, x7, w1, uxtb #2 + 524: ab210cf0 adds x16, x7, w1, uxtb #3 + 528: ab2110f0 adds x16, x7, w1, uxtb #4 + 52c: ab2120f0 adds x16, x7, w1, uxth + 530: ab2120f0 adds x16, x7, w1, uxth + 534: ab2124f0 adds x16, x7, w1, uxth #1 + 538: ab2128f0 adds x16, x7, w1, uxth #2 + 53c: ab212cf0 adds x16, x7, w1, uxth #3 + 540: ab2130f0 adds x16, x7, w1, uxth #4 + 544: ab2140f0 adds x16, x7, w1, uxtw + 548: ab2140f0 adds x16, x7, w1, uxtw + 54c: ab2144f0 adds x16, x7, w1, uxtw #1 + 550: ab2148f0 adds x16, x7, w1, uxtw #2 + 554: ab214cf0 adds x16, x7, w1, uxtw #3 + 558: ab2150f0 adds x16, x7, w1, uxtw #4 + 55c: ab2160f0 adds x16, x7, x1, uxtx + 560: ab2160f0 adds x16, x7, x1, uxtx + 564: ab2164f0 adds x16, x7, x1, uxtx #1 + 568: ab2168f0 adds x16, x7, x1, uxtx #2 + 56c: ab216cf0 adds x16, x7, x1, uxtx #3 + 570: ab2170f0 adds x16, x7, x1, uxtx #4 + 574: ab2180f0 adds x16, x7, w1, sxtb + 578: ab2180f0 adds x16, x7, w1, sxtb + 57c: ab2184f0 adds x16, x7, w1, sxtb #1 + 580: ab2188f0 adds x16, x7, w1, sxtb #2 + 584: ab218cf0 adds x16, x7, w1, sxtb #3 + 588: ab2190f0 adds x16, x7, w1, sxtb #4 + 58c: ab21a0f0 adds x16, x7, w1, sxth + 590: ab21a0f0 adds x16, x7, w1, sxth + 594: ab21a4f0 adds x16, x7, w1, sxth #1 + 598: ab21a8f0 adds x16, x7, w1, sxth #2 + 59c: ab21acf0 adds x16, x7, w1, sxth #3 + 5a0: ab21b0f0 adds x16, x7, w1, sxth #4 + 5a4: ab21c0f0 adds x16, x7, w1, sxtw + 5a8: ab21c0f0 adds x16, x7, w1, sxtw + 5ac: ab21c4f0 adds x16, x7, w1, sxtw #1 + 5b0: ab21c8f0 adds x16, x7, w1, sxtw #2 + 5b4: ab21ccf0 adds x16, x7, w1, sxtw #3 + 5b8: ab21d0f0 adds x16, x7, w1, sxtw #4 + 5bc: ab21e0f0 adds x16, x7, x1, sxtx + 5c0: ab21e0f0 adds x16, x7, x1, sxtx + 5c4: ab21e4f0 adds x16, x7, x1, sxtx #1 + 5c8: ab21e8f0 adds x16, x7, x1, sxtx #2 + 5cc: ab21ecf0 adds x16, x7, x1, sxtx #3 + 5d0: ab21f0f0 adds x16, x7, x1, sxtx #4 + 5d4: ab0100f0 adds x16, x7, x1 + 5d8: ab0104f0 adds x16, x7, x1, lsl #1 + 5dc: ab0108f0 adds x16, x7, x1, lsl #2 + 5e0: ab010cf0 adds x16, x7, x1, lsl #3 + 5e4: ab0110f0 adds x16, x7, x1, lsl #4 + 5e8: ab2163f0 adds x16, sp, x1 + 5ec: ab2103f0 adds x16, sp, w1, uxtb + 5f0: ab2103f0 adds x16, sp, w1, uxtb + 5f4: ab2107f0 adds x16, sp, w1, uxtb #1 + 5f8: ab210bf0 adds x16, sp, w1, uxtb #2 + 5fc: ab210ff0 adds x16, sp, w1, uxtb #3 + 600: ab2113f0 adds x16, sp, w1, uxtb #4 + 604: ab2123f0 adds x16, sp, w1, uxth + 608: ab2123f0 adds x16, sp, w1, uxth + 60c: ab2127f0 adds x16, sp, w1, uxth #1 + 610: ab212bf0 adds x16, sp, w1, uxth #2 + 614: ab212ff0 adds x16, sp, w1, uxth #3 + 618: ab2133f0 adds x16, sp, w1, uxth #4 + 61c: ab2143f0 adds x16, sp, w1, uxtw + 620: ab2143f0 adds x16, sp, w1, uxtw + 624: ab2147f0 adds x16, sp, w1, uxtw #1 + 628: ab214bf0 adds x16, sp, w1, uxtw #2 + 62c: ab214ff0 adds x16, sp, w1, uxtw #3 + 630: ab2153f0 adds x16, sp, w1, uxtw #4 + 634: ab2163f0 adds x16, sp, x1 + 638: ab2163f0 adds x16, sp, x1 + 63c: ab2167f0 adds x16, sp, x1, lsl #1 + 640: ab216bf0 adds x16, sp, x1, lsl #2 + 644: ab216ff0 adds x16, sp, x1, lsl #3 + 648: ab2173f0 adds x16, sp, x1, lsl #4 + 64c: ab2183f0 adds x16, sp, w1, sxtb + 650: ab2183f0 adds x16, sp, w1, sxtb + 654: ab2187f0 adds x16, sp, w1, sxtb #1 + 658: ab218bf0 adds x16, sp, w1, sxtb #2 + 65c: ab218ff0 adds x16, sp, w1, sxtb #3 + 660: ab2193f0 adds x16, sp, w1, sxtb #4 + 664: ab21a3f0 adds x16, sp, w1, sxth + 668: ab21a3f0 adds x16, sp, w1, sxth + 66c: ab21a7f0 adds x16, sp, w1, sxth #1 + 670: ab21abf0 adds x16, sp, w1, sxth #2 + 674: ab21aff0 adds x16, sp, w1, sxth #3 + 678: ab21b3f0 adds x16, sp, w1, sxth #4 + 67c: ab21c3f0 adds x16, sp, w1, sxtw + 680: ab21c3f0 adds x16, sp, w1, sxtw + 684: ab21c7f0 adds x16, sp, w1, sxtw #1 + 688: ab21cbf0 adds x16, sp, w1, sxtw #2 + 68c: ab21cff0 adds x16, sp, w1, sxtw #3 + 690: ab21d3f0 adds x16, sp, w1, sxtw #4 + 694: ab21e3f0 adds x16, sp, x1, sxtx + 698: ab21e3f0 adds x16, sp, x1, sxtx + 69c: ab21e7f0 adds x16, sp, x1, sxtx #1 + 6a0: ab21ebf0 adds x16, sp, x1, sxtx #2 + 6a4: ab21eff0 adds x16, sp, x1, sxtx #3 + 6a8: ab21f3f0 adds x16, sp, x1, sxtx #4 + 6ac: ab2163f0 adds x16, sp, x1 + 6b0: ab2167f0 adds x16, sp, x1, lsl #1 + 6b4: ab216bf0 adds x16, sp, x1, lsl #2 + 6b8: ab216ff0 adds x16, sp, x1, lsl #3 + 6bc: ab2173f0 adds x16, sp, x1, lsl #4 + 6c0: 4b0100f0 sub w16, w7, w1 + 6c4: 4b2100f0 sub w16, w7, w1, uxtb + 6c8: 4b2100f0 sub w16, w7, w1, uxtb + 6cc: 4b2104f0 sub w16, w7, w1, uxtb #1 + 6d0: 4b2108f0 sub w16, w7, w1, uxtb #2 + 6d4: 4b210cf0 sub w16, w7, w1, uxtb #3 + 6d8: 4b2110f0 sub w16, w7, w1, uxtb #4 + 6dc: 4b2120f0 sub w16, w7, w1, uxth + 6e0: 4b2120f0 sub w16, w7, w1, uxth + 6e4: 4b2124f0 sub w16, w7, w1, uxth #1 + 6e8: 4b2128f0 sub w16, w7, w1, uxth #2 + 6ec: 4b212cf0 sub w16, w7, w1, uxth #3 + 6f0: 4b2130f0 sub w16, w7, w1, uxth #4 + 6f4: 4b2140f0 sub w16, w7, w1, uxtw + 6f8: 4b2140f0 sub w16, w7, w1, uxtw + 6fc: 4b2144f0 sub w16, w7, w1, uxtw #1 + 700: 4b2148f0 sub w16, w7, w1, uxtw #2 + 704: 4b214cf0 sub w16, w7, w1, uxtw #3 + 708: 4b2150f0 sub w16, w7, w1, uxtw #4 + 70c: 4b2160f0 sub w16, w7, w1, uxtx + 710: 4b2160f0 sub w16, w7, w1, uxtx + 714: 4b2164f0 sub w16, w7, w1, uxtx #1 + 718: 4b2168f0 sub w16, w7, w1, uxtx #2 + 71c: 4b216cf0 sub w16, w7, w1, uxtx #3 + 720: 4b2170f0 sub w16, w7, w1, uxtx #4 + 724: 4b2180f0 sub w16, w7, w1, sxtb + 728: 4b2180f0 sub w16, w7, w1, sxtb + 72c: 4b2184f0 sub w16, w7, w1, sxtb #1 + 730: 4b2188f0 sub w16, w7, w1, sxtb #2 + 734: 4b218cf0 sub w16, w7, w1, sxtb #3 + 738: 4b2190f0 sub w16, w7, w1, sxtb #4 + 73c: 4b21a0f0 sub w16, w7, w1, sxth + 740: 4b21a0f0 sub w16, w7, w1, sxth + 744: 4b21a4f0 sub w16, w7, w1, sxth #1 + 748: 4b21a8f0 sub w16, w7, w1, sxth #2 + 74c: 4b21acf0 sub w16, w7, w1, sxth #3 + 750: 4b21b0f0 sub w16, w7, w1, sxth #4 + 754: 4b21c0f0 sub w16, w7, w1, sxtw + 758: 4b21c0f0 sub w16, w7, w1, sxtw + 75c: 4b21c4f0 sub w16, w7, w1, sxtw #1 + 760: 4b21c8f0 sub w16, w7, w1, sxtw #2 + 764: 4b21ccf0 sub w16, w7, w1, sxtw #3 + 768: 4b21d0f0 sub w16, w7, w1, sxtw #4 + 76c: 4b21e0f0 sub w16, w7, w1, sxtx + 770: 4b21e0f0 sub w16, w7, w1, sxtx + 774: 4b21e4f0 sub w16, w7, w1, sxtx #1 + 778: 4b21e8f0 sub w16, w7, w1, sxtx #2 + 77c: 4b21ecf0 sub w16, w7, w1, sxtx #3 + 780: 4b21f0f0 sub w16, w7, w1, sxtx #4 + 784: 4b0100f0 sub w16, w7, w1 + 788: 4b0104f0 sub w16, w7, w1, lsl #1 + 78c: 4b0108f0 sub w16, w7, w1, lsl #2 + 790: 4b010cf0 sub w16, w7, w1, lsl #3 + 794: 4b0110f0 sub w16, w7, w1, lsl #4 + 798: 4b2143f0 sub w16, wsp, w1 + 79c: 4b2103f0 sub w16, wsp, w1, uxtb + 7a0: 4b2103f0 sub w16, wsp, w1, uxtb + 7a4: 4b2107f0 sub w16, wsp, w1, uxtb #1 + 7a8: 4b210bf0 sub w16, wsp, w1, uxtb #2 + 7ac: 4b210ff0 sub w16, wsp, w1, uxtb #3 + 7b0: 4b2113f0 sub w16, wsp, w1, uxtb #4 + 7b4: 4b2123f0 sub w16, wsp, w1, uxth + 7b8: 4b2123f0 sub w16, wsp, w1, uxth + 7bc: 4b2127f0 sub w16, wsp, w1, uxth #1 + 7c0: 4b212bf0 sub w16, wsp, w1, uxth #2 + 7c4: 4b212ff0 sub w16, wsp, w1, uxth #3 + 7c8: 4b2133f0 sub w16, wsp, w1, uxth #4 + 7cc: 4b2143f0 sub w16, wsp, w1 + 7d0: 4b2143f0 sub w16, wsp, w1 + 7d4: 4b2147f0 sub w16, wsp, w1, lsl #1 + 7d8: 4b214bf0 sub w16, wsp, w1, lsl #2 + 7dc: 4b214ff0 sub w16, wsp, w1, lsl #3 + 7e0: 4b2153f0 sub w16, wsp, w1, lsl #4 + 7e4: 4b2163f0 sub w16, wsp, w1, uxtx + 7e8: 4b2163f0 sub w16, wsp, w1, uxtx + 7ec: 4b2167f0 sub w16, wsp, w1, uxtx #1 + 7f0: 4b216bf0 sub w16, wsp, w1, uxtx #2 + 7f4: 4b216ff0 sub w16, wsp, w1, uxtx #3 + 7f8: 4b2173f0 sub w16, wsp, w1, uxtx #4 + 7fc: 4b2183f0 sub w16, wsp, w1, sxtb + 800: 4b2183f0 sub w16, wsp, w1, sxtb + 804: 4b2187f0 sub w16, wsp, w1, sxtb #1 + 808: 4b218bf0 sub w16, wsp, w1, sxtb #2 + 80c: 4b218ff0 sub w16, wsp, w1, sxtb #3 + 810: 4b2193f0 sub w16, wsp, w1, sxtb #4 + 814: 4b21a3f0 sub w16, wsp, w1, sxth + 818: 4b21a3f0 sub w16, wsp, w1, sxth + 81c: 4b21a7f0 sub w16, wsp, w1, sxth #1 + 820: 4b21abf0 sub w16, wsp, w1, sxth #2 + 824: 4b21aff0 sub w16, wsp, w1, sxth #3 + 828: 4b21b3f0 sub w16, wsp, w1, sxth #4 + 82c: 4b21c3f0 sub w16, wsp, w1, sxtw + 830: 4b21c3f0 sub w16, wsp, w1, sxtw + 834: 4b21c7f0 sub w16, wsp, w1, sxtw #1 + 838: 4b21cbf0 sub w16, wsp, w1, sxtw #2 + 83c: 4b21cff0 sub w16, wsp, w1, sxtw #3 + 840: 4b21d3f0 sub w16, wsp, w1, sxtw #4 + 844: 4b21e3f0 sub w16, wsp, w1, sxtx + 848: 4b21e3f0 sub w16, wsp, w1, sxtx + 84c: 4b21e7f0 sub w16, wsp, w1, sxtx #1 + 850: 4b21ebf0 sub w16, wsp, w1, sxtx #2 + 854: 4b21eff0 sub w16, wsp, w1, sxtx #3 + 858: 4b21f3f0 sub w16, wsp, w1, sxtx #4 + 85c: 4b2143f0 sub w16, wsp, w1 + 860: 4b2147f0 sub w16, wsp, w1, lsl #1 + 864: 4b214bf0 sub w16, wsp, w1, lsl #2 + 868: 4b214ff0 sub w16, wsp, w1, lsl #3 + 86c: 4b2153f0 sub w16, wsp, w1, lsl #4 + 870: cb0100f0 sub x16, x7, x1 + 874: cb2100f0 sub x16, x7, w1, uxtb + 878: cb2100f0 sub x16, x7, w1, uxtb + 87c: cb2104f0 sub x16, x7, w1, uxtb #1 + 880: cb2108f0 sub x16, x7, w1, uxtb #2 + 884: cb210cf0 sub x16, x7, w1, uxtb #3 + 888: cb2110f0 sub x16, x7, w1, uxtb #4 + 88c: cb2120f0 sub x16, x7, w1, uxth + 890: cb2120f0 sub x16, x7, w1, uxth + 894: cb2124f0 sub x16, x7, w1, uxth #1 + 898: cb2128f0 sub x16, x7, w1, uxth #2 + 89c: cb212cf0 sub x16, x7, w1, uxth #3 + 8a0: cb2130f0 sub x16, x7, w1, uxth #4 + 8a4: cb2140f0 sub x16, x7, w1, uxtw + 8a8: cb2140f0 sub x16, x7, w1, uxtw + 8ac: cb2144f0 sub x16, x7, w1, uxtw #1 + 8b0: cb2148f0 sub x16, x7, w1, uxtw #2 + 8b4: cb214cf0 sub x16, x7, w1, uxtw #3 + 8b8: cb2150f0 sub x16, x7, w1, uxtw #4 + 8bc: cb2160f0 sub x16, x7, x1, uxtx + 8c0: cb2160f0 sub x16, x7, x1, uxtx + 8c4: cb2164f0 sub x16, x7, x1, uxtx #1 + 8c8: cb2168f0 sub x16, x7, x1, uxtx #2 + 8cc: cb216cf0 sub x16, x7, x1, uxtx #3 + 8d0: cb2170f0 sub x16, x7, x1, uxtx #4 + 8d4: cb2180f0 sub x16, x7, w1, sxtb + 8d8: cb2180f0 sub x16, x7, w1, sxtb + 8dc: cb2184f0 sub x16, x7, w1, sxtb #1 + 8e0: cb2188f0 sub x16, x7, w1, sxtb #2 + 8e4: cb218cf0 sub x16, x7, w1, sxtb #3 + 8e8: cb2190f0 sub x16, x7, w1, sxtb #4 + 8ec: cb21a0f0 sub x16, x7, w1, sxth + 8f0: cb21a0f0 sub x16, x7, w1, sxth + 8f4: cb21a4f0 sub x16, x7, w1, sxth #1 + 8f8: cb21a8f0 sub x16, x7, w1, sxth #2 + 8fc: cb21acf0 sub x16, x7, w1, sxth #3 + 900: cb21b0f0 sub x16, x7, w1, sxth #4 + 904: cb21c0f0 sub x16, x7, w1, sxtw + 908: cb21c0f0 sub x16, x7, w1, sxtw + 90c: cb21c4f0 sub x16, x7, w1, sxtw #1 + 910: cb21c8f0 sub x16, x7, w1, sxtw #2 + 914: cb21ccf0 sub x16, x7, w1, sxtw #3 + 918: cb21d0f0 sub x16, x7, w1, sxtw #4 + 91c: cb21e0f0 sub x16, x7, x1, sxtx + 920: cb21e0f0 sub x16, x7, x1, sxtx + 924: cb21e4f0 sub x16, x7, x1, sxtx #1 + 928: cb21e8f0 sub x16, x7, x1, sxtx #2 + 92c: cb21ecf0 sub x16, x7, x1, sxtx #3 + 930: cb21f0f0 sub x16, x7, x1, sxtx #4 + 934: cb0100f0 sub x16, x7, x1 + 938: cb0104f0 sub x16, x7, x1, lsl #1 + 93c: cb0108f0 sub x16, x7, x1, lsl #2 + 940: cb010cf0 sub x16, x7, x1, lsl #3 + 944: cb0110f0 sub x16, x7, x1, lsl #4 + 948: cb2163f0 sub x16, sp, x1 + 94c: cb2103f0 sub x16, sp, w1, uxtb + 950: cb2103f0 sub x16, sp, w1, uxtb + 954: cb2107f0 sub x16, sp, w1, uxtb #1 + 958: cb210bf0 sub x16, sp, w1, uxtb #2 + 95c: cb210ff0 sub x16, sp, w1, uxtb #3 + 960: cb2113f0 sub x16, sp, w1, uxtb #4 + 964: cb2123f0 sub x16, sp, w1, uxth + 968: cb2123f0 sub x16, sp, w1, uxth + 96c: cb2127f0 sub x16, sp, w1, uxth #1 + 970: cb212bf0 sub x16, sp, w1, uxth #2 + 974: cb212ff0 sub x16, sp, w1, uxth #3 + 978: cb2133f0 sub x16, sp, w1, uxth #4 + 97c: cb2143f0 sub x16, sp, w1, uxtw + 980: cb2143f0 sub x16, sp, w1, uxtw + 984: cb2147f0 sub x16, sp, w1, uxtw #1 + 988: cb214bf0 sub x16, sp, w1, uxtw #2 + 98c: cb214ff0 sub x16, sp, w1, uxtw #3 + 990: cb2153f0 sub x16, sp, w1, uxtw #4 + 994: cb2163f0 sub x16, sp, x1 + 998: cb2163f0 sub x16, sp, x1 + 99c: cb2167f0 sub x16, sp, x1, lsl #1 + 9a0: cb216bf0 sub x16, sp, x1, lsl #2 + 9a4: cb216ff0 sub x16, sp, x1, lsl #3 + 9a8: cb2173f0 sub x16, sp, x1, lsl #4 + 9ac: cb2183f0 sub x16, sp, w1, sxtb + 9b0: cb2183f0 sub x16, sp, w1, sxtb + 9b4: cb2187f0 sub x16, sp, w1, sxtb #1 + 9b8: cb218bf0 sub x16, sp, w1, sxtb #2 + 9bc: cb218ff0 sub x16, sp, w1, sxtb #3 + 9c0: cb2193f0 sub x16, sp, w1, sxtb #4 + 9c4: cb21a3f0 sub x16, sp, w1, sxth + 9c8: cb21a3f0 sub x16, sp, w1, sxth + 9cc: cb21a7f0 sub x16, sp, w1, sxth #1 + 9d0: cb21abf0 sub x16, sp, w1, sxth #2 + 9d4: cb21aff0 sub x16, sp, w1, sxth #3 + 9d8: cb21b3f0 sub x16, sp, w1, sxth #4 + 9dc: cb21c3f0 sub x16, sp, w1, sxtw + 9e0: cb21c3f0 sub x16, sp, w1, sxtw + 9e4: cb21c7f0 sub x16, sp, w1, sxtw #1 + 9e8: cb21cbf0 sub x16, sp, w1, sxtw #2 + 9ec: cb21cff0 sub x16, sp, w1, sxtw #3 + 9f0: cb21d3f0 sub x16, sp, w1, sxtw #4 + 9f4: cb21e3f0 sub x16, sp, x1, sxtx + 9f8: cb21e3f0 sub x16, sp, x1, sxtx + 9fc: cb21e7f0 sub x16, sp, x1, sxtx #1 + a00: cb21ebf0 sub x16, sp, x1, sxtx #2 + a04: cb21eff0 sub x16, sp, x1, sxtx #3 + a08: cb21f3f0 sub x16, sp, x1, sxtx #4 + a0c: cb2163f0 sub x16, sp, x1 + a10: cb2167f0 sub x16, sp, x1, lsl #1 + a14: cb216bf0 sub x16, sp, x1, lsl #2 + a18: cb216ff0 sub x16, sp, x1, lsl #3 + a1c: cb2173f0 sub x16, sp, x1, lsl #4 + a20: 6b0100f0 subs w16, w7, w1 + a24: 6b2100f0 subs w16, w7, w1, uxtb + a28: 6b2100f0 subs w16, w7, w1, uxtb + a2c: 6b2104f0 subs w16, w7, w1, uxtb #1 + a30: 6b2108f0 subs w16, w7, w1, uxtb #2 + a34: 6b210cf0 subs w16, w7, w1, uxtb #3 + a38: 6b2110f0 subs w16, w7, w1, uxtb #4 + a3c: 6b2120f0 subs w16, w7, w1, uxth + a40: 6b2120f0 subs w16, w7, w1, uxth + a44: 6b2124f0 subs w16, w7, w1, uxth #1 + a48: 6b2128f0 subs w16, w7, w1, uxth #2 + a4c: 6b212cf0 subs w16, w7, w1, uxth #3 + a50: 6b2130f0 subs w16, w7, w1, uxth #4 + a54: 6b2140f0 subs w16, w7, w1, uxtw + a58: 6b2140f0 subs w16, w7, w1, uxtw + a5c: 6b2144f0 subs w16, w7, w1, uxtw #1 + a60: 6b2148f0 subs w16, w7, w1, uxtw #2 + a64: 6b214cf0 subs w16, w7, w1, uxtw #3 + a68: 6b2150f0 subs w16, w7, w1, uxtw #4 + a6c: 6b2160f0 subs w16, w7, w1, uxtx + a70: 6b2160f0 subs w16, w7, w1, uxtx + a74: 6b2164f0 subs w16, w7, w1, uxtx #1 + a78: 6b2168f0 subs w16, w7, w1, uxtx #2 + a7c: 6b216cf0 subs w16, w7, w1, uxtx #3 + a80: 6b2170f0 subs w16, w7, w1, uxtx #4 + a84: 6b2180f0 subs w16, w7, w1, sxtb + a88: 6b2180f0 subs w16, w7, w1, sxtb + a8c: 6b2184f0 subs w16, w7, w1, sxtb #1 + a90: 6b2188f0 subs w16, w7, w1, sxtb #2 + a94: 6b218cf0 subs w16, w7, w1, sxtb #3 + a98: 6b2190f0 subs w16, w7, w1, sxtb #4 + a9c: 6b21a0f0 subs w16, w7, w1, sxth + aa0: 6b21a0f0 subs w16, w7, w1, sxth + aa4: 6b21a4f0 subs w16, w7, w1, sxth #1 + aa8: 6b21a8f0 subs w16, w7, w1, sxth #2 + aac: 6b21acf0 subs w16, w7, w1, sxth #3 + ab0: 6b21b0f0 subs w16, w7, w1, sxth #4 + ab4: 6b21c0f0 subs w16, w7, w1, sxtw + ab8: 6b21c0f0 subs w16, w7, w1, sxtw + abc: 6b21c4f0 subs w16, w7, w1, sxtw #1 + ac0: 6b21c8f0 subs w16, w7, w1, sxtw #2 + ac4: 6b21ccf0 subs w16, w7, w1, sxtw #3 + ac8: 6b21d0f0 subs w16, w7, w1, sxtw #4 + acc: 6b21e0f0 subs w16, w7, w1, sxtx + ad0: 6b21e0f0 subs w16, w7, w1, sxtx + ad4: 6b21e4f0 subs w16, w7, w1, sxtx #1 + ad8: 6b21e8f0 subs w16, w7, w1, sxtx #2 + adc: 6b21ecf0 subs w16, w7, w1, sxtx #3 + ae0: 6b21f0f0 subs w16, w7, w1, sxtx #4 + ae4: 6b0100f0 subs w16, w7, w1 + ae8: 6b0104f0 subs w16, w7, w1, lsl #1 + aec: 6b0108f0 subs w16, w7, w1, lsl #2 + af0: 6b010cf0 subs w16, w7, w1, lsl #3 + af4: 6b0110f0 subs w16, w7, w1, lsl #4 + af8: 6b2143f0 subs w16, wsp, w1 + afc: 6b2103f0 subs w16, wsp, w1, uxtb + b00: 6b2103f0 subs w16, wsp, w1, uxtb + b04: 6b2107f0 subs w16, wsp, w1, uxtb #1 + b08: 6b210bf0 subs w16, wsp, w1, uxtb #2 + b0c: 6b210ff0 subs w16, wsp, w1, uxtb #3 + b10: 6b2113f0 subs w16, wsp, w1, uxtb #4 + b14: 6b2123f0 subs w16, wsp, w1, uxth + b18: 6b2123f0 subs w16, wsp, w1, uxth + b1c: 6b2127f0 subs w16, wsp, w1, uxth #1 + b20: 6b212bf0 subs w16, wsp, w1, uxth #2 + b24: 6b212ff0 subs w16, wsp, w1, uxth #3 + b28: 6b2133f0 subs w16, wsp, w1, uxth #4 + b2c: 6b2143f0 subs w16, wsp, w1 + b30: 6b2143f0 subs w16, wsp, w1 + b34: 6b2147f0 subs w16, wsp, w1, lsl #1 + b38: 6b214bf0 subs w16, wsp, w1, lsl #2 + b3c: 6b214ff0 subs w16, wsp, w1, lsl #3 + b40: 6b2153f0 subs w16, wsp, w1, lsl #4 + b44: 6b2163f0 subs w16, wsp, w1, uxtx + b48: 6b2163f0 subs w16, wsp, w1, uxtx + b4c: 6b2167f0 subs w16, wsp, w1, uxtx #1 + b50: 6b216bf0 subs w16, wsp, w1, uxtx #2 + b54: 6b216ff0 subs w16, wsp, w1, uxtx #3 + b58: 6b2173f0 subs w16, wsp, w1, uxtx #4 + b5c: 6b2183f0 subs w16, wsp, w1, sxtb + b60: 6b2183f0 subs w16, wsp, w1, sxtb + b64: 6b2187f0 subs w16, wsp, w1, sxtb #1 + b68: 6b218bf0 subs w16, wsp, w1, sxtb #2 + b6c: 6b218ff0 subs w16, wsp, w1, sxtb #3 + b70: 6b2193f0 subs w16, wsp, w1, sxtb #4 + b74: 6b21a3f0 subs w16, wsp, w1, sxth + b78: 6b21a3f0 subs w16, wsp, w1, sxth + b7c: 6b21a7f0 subs w16, wsp, w1, sxth #1 + b80: 6b21abf0 subs w16, wsp, w1, sxth #2 + b84: 6b21aff0 subs w16, wsp, w1, sxth #3 + b88: 6b21b3f0 subs w16, wsp, w1, sxth #4 + b8c: 6b21c3f0 subs w16, wsp, w1, sxtw + b90: 6b21c3f0 subs w16, wsp, w1, sxtw + b94: 6b21c7f0 subs w16, wsp, w1, sxtw #1 + b98: 6b21cbf0 subs w16, wsp, w1, sxtw #2 + b9c: 6b21cff0 subs w16, wsp, w1, sxtw #3 + ba0: 6b21d3f0 subs w16, wsp, w1, sxtw #4 + ba4: 6b21e3f0 subs w16, wsp, w1, sxtx + ba8: 6b21e3f0 subs w16, wsp, w1, sxtx + bac: 6b21e7f0 subs w16, wsp, w1, sxtx #1 + bb0: 6b21ebf0 subs w16, wsp, w1, sxtx #2 + bb4: 6b21eff0 subs w16, wsp, w1, sxtx #3 + bb8: 6b21f3f0 subs w16, wsp, w1, sxtx #4 + bbc: 6b2143f0 subs w16, wsp, w1 + bc0: 6b2147f0 subs w16, wsp, w1, lsl #1 + bc4: 6b214bf0 subs w16, wsp, w1, lsl #2 + bc8: 6b214ff0 subs w16, wsp, w1, lsl #3 + bcc: 6b2153f0 subs w16, wsp, w1, lsl #4 + bd0: eb0100f0 subs x16, x7, x1 + bd4: eb2100f0 subs x16, x7, w1, uxtb + bd8: eb2100f0 subs x16, x7, w1, uxtb + bdc: eb2104f0 subs x16, x7, w1, uxtb #1 + be0: eb2108f0 subs x16, x7, w1, uxtb #2 + be4: eb210cf0 subs x16, x7, w1, uxtb #3 + be8: eb2110f0 subs x16, x7, w1, uxtb #4 + bec: eb2120f0 subs x16, x7, w1, uxth + bf0: eb2120f0 subs x16, x7, w1, uxth + bf4: eb2124f0 subs x16, x7, w1, uxth #1 + bf8: eb2128f0 subs x16, x7, w1, uxth #2 + bfc: eb212cf0 subs x16, x7, w1, uxth #3 + c00: eb2130f0 subs x16, x7, w1, uxth #4 + c04: eb2140f0 subs x16, x7, w1, uxtw + c08: eb2140f0 subs x16, x7, w1, uxtw + c0c: eb2144f0 subs x16, x7, w1, uxtw #1 + c10: eb2148f0 subs x16, x7, w1, uxtw #2 + c14: eb214cf0 subs x16, x7, w1, uxtw #3 + c18: eb2150f0 subs x16, x7, w1, uxtw #4 + c1c: eb2160f0 subs x16, x7, x1, uxtx + c20: eb2160f0 subs x16, x7, x1, uxtx + c24: eb2164f0 subs x16, x7, x1, uxtx #1 + c28: eb2168f0 subs x16, x7, x1, uxtx #2 + c2c: eb216cf0 subs x16, x7, x1, uxtx #3 + c30: eb2170f0 subs x16, x7, x1, uxtx #4 + c34: eb2180f0 subs x16, x7, w1, sxtb + c38: eb2180f0 subs x16, x7, w1, sxtb + c3c: eb2184f0 subs x16, x7, w1, sxtb #1 + c40: eb2188f0 subs x16, x7, w1, sxtb #2 + c44: eb218cf0 subs x16, x7, w1, sxtb #3 + c48: eb2190f0 subs x16, x7, w1, sxtb #4 + c4c: eb21a0f0 subs x16, x7, w1, sxth + c50: eb21a0f0 subs x16, x7, w1, sxth + c54: eb21a4f0 subs x16, x7, w1, sxth #1 + c58: eb21a8f0 subs x16, x7, w1, sxth #2 + c5c: eb21acf0 subs x16, x7, w1, sxth #3 + c60: eb21b0f0 subs x16, x7, w1, sxth #4 + c64: eb21c0f0 subs x16, x7, w1, sxtw + c68: eb21c0f0 subs x16, x7, w1, sxtw + c6c: eb21c4f0 subs x16, x7, w1, sxtw #1 + c70: eb21c8f0 subs x16, x7, w1, sxtw #2 + c74: eb21ccf0 subs x16, x7, w1, sxtw #3 + c78: eb21d0f0 subs x16, x7, w1, sxtw #4 + c7c: eb21e0f0 subs x16, x7, x1, sxtx + c80: eb21e0f0 subs x16, x7, x1, sxtx + c84: eb21e4f0 subs x16, x7, x1, sxtx #1 + c88: eb21e8f0 subs x16, x7, x1, sxtx #2 + c8c: eb21ecf0 subs x16, x7, x1, sxtx #3 + c90: eb21f0f0 subs x16, x7, x1, sxtx #4 + c94: eb0100f0 subs x16, x7, x1 + c98: eb0104f0 subs x16, x7, x1, lsl #1 + c9c: eb0108f0 subs x16, x7, x1, lsl #2 + ca0: eb010cf0 subs x16, x7, x1, lsl #3 + ca4: eb0110f0 subs x16, x7, x1, lsl #4 + ca8: eb2163f0 subs x16, sp, x1 + cac: eb2103f0 subs x16, sp, w1, uxtb + cb0: eb2103f0 subs x16, sp, w1, uxtb + cb4: eb2107f0 subs x16, sp, w1, uxtb #1 + cb8: eb210bf0 subs x16, sp, w1, uxtb #2 + cbc: eb210ff0 subs x16, sp, w1, uxtb #3 + cc0: eb2113f0 subs x16, sp, w1, uxtb #4 + cc4: eb2123f0 subs x16, sp, w1, uxth + cc8: eb2123f0 subs x16, sp, w1, uxth + ccc: eb2127f0 subs x16, sp, w1, uxth #1 + cd0: eb212bf0 subs x16, sp, w1, uxth #2 + cd4: eb212ff0 subs x16, sp, w1, uxth #3 + cd8: eb2133f0 subs x16, sp, w1, uxth #4 + cdc: eb2143f0 subs x16, sp, w1, uxtw + ce0: eb2143f0 subs x16, sp, w1, uxtw + ce4: eb2147f0 subs x16, sp, w1, uxtw #1 + ce8: eb214bf0 subs x16, sp, w1, uxtw #2 + cec: eb214ff0 subs x16, sp, w1, uxtw #3 + cf0: eb2153f0 subs x16, sp, w1, uxtw #4 + cf4: eb2163f0 subs x16, sp, x1 + cf8: eb2163f0 subs x16, sp, x1 + cfc: eb2167f0 subs x16, sp, x1, lsl #1 + d00: eb216bf0 subs x16, sp, x1, lsl #2 + d04: eb216ff0 subs x16, sp, x1, lsl #3 + d08: eb2173f0 subs x16, sp, x1, lsl #4 + d0c: eb2183f0 subs x16, sp, w1, sxtb + d10: eb2183f0 subs x16, sp, w1, sxtb + d14: eb2187f0 subs x16, sp, w1, sxtb #1 + d18: eb218bf0 subs x16, sp, w1, sxtb #2 + d1c: eb218ff0 subs x16, sp, w1, sxtb #3 + d20: eb2193f0 subs x16, sp, w1, sxtb #4 + d24: eb21a3f0 subs x16, sp, w1, sxth + d28: eb21a3f0 subs x16, sp, w1, sxth + d2c: eb21a7f0 subs x16, sp, w1, sxth #1 + d30: eb21abf0 subs x16, sp, w1, sxth #2 + d34: eb21aff0 subs x16, sp, w1, sxth #3 + d38: eb21b3f0 subs x16, sp, w1, sxth #4 + d3c: eb21c3f0 subs x16, sp, w1, sxtw + d40: eb21c3f0 subs x16, sp, w1, sxtw + d44: eb21c7f0 subs x16, sp, w1, sxtw #1 + d48: eb21cbf0 subs x16, sp, w1, sxtw #2 + d4c: eb21cff0 subs x16, sp, w1, sxtw #3 + d50: eb21d3f0 subs x16, sp, w1, sxtw #4 + d54: eb21e3f0 subs x16, sp, x1, sxtx + d58: eb21e3f0 subs x16, sp, x1, sxtx + d5c: eb21e7f0 subs x16, sp, x1, sxtx #1 + d60: eb21ebf0 subs x16, sp, x1, sxtx #2 + d64: eb21eff0 subs x16, sp, x1, sxtx #3 + d68: eb21f3f0 subs x16, sp, x1, sxtx #4 + d6c: eb2163f0 subs x16, sp, x1 + d70: eb2167f0 subs x16, sp, x1, lsl #1 + d74: eb216bf0 subs x16, sp, x1, lsl #2 + d78: eb216ff0 subs x16, sp, x1, lsl #3 + d7c: eb2173f0 subs x16, sp, x1, lsl #4 + d80: 2b0100ff cmn w7, w1 + d84: 2b2100ff cmn w7, w1, uxtb + d88: 2b2100ff cmn w7, w1, uxtb + d8c: 2b2104ff cmn w7, w1, uxtb #1 + d90: 2b2108ff cmn w7, w1, uxtb #2 + d94: 2b210cff cmn w7, w1, uxtb #3 + d98: 2b2110ff cmn w7, w1, uxtb #4 + d9c: 2b2120ff cmn w7, w1, uxth + da0: 2b2120ff cmn w7, w1, uxth + da4: 2b2124ff cmn w7, w1, uxth #1 + da8: 2b2128ff cmn w7, w1, uxth #2 + dac: 2b212cff cmn w7, w1, uxth #3 + db0: 2b2130ff cmn w7, w1, uxth #4 + db4: 2b2140ff cmn w7, w1, uxtw + db8: 2b2140ff cmn w7, w1, uxtw + dbc: 2b2144ff cmn w7, w1, uxtw #1 + dc0: 2b2148ff cmn w7, w1, uxtw #2 + dc4: 2b214cff cmn w7, w1, uxtw #3 + dc8: 2b2150ff cmn w7, w1, uxtw #4 + dcc: 2b2160ff cmn w7, w1, uxtx + dd0: 2b2160ff cmn w7, w1, uxtx + dd4: 2b2164ff cmn w7, w1, uxtx #1 + dd8: 2b2168ff cmn w7, w1, uxtx #2 + ddc: 2b216cff cmn w7, w1, uxtx #3 + de0: 2b2170ff cmn w7, w1, uxtx #4 + de4: 2b2180ff cmn w7, w1, sxtb + de8: 2b2180ff cmn w7, w1, sxtb + dec: 2b2184ff cmn w7, w1, sxtb #1 + df0: 2b2188ff cmn w7, w1, sxtb #2 + df4: 2b218cff cmn w7, w1, sxtb #3 + df8: 2b2190ff cmn w7, w1, sxtb #4 + dfc: 2b21a0ff cmn w7, w1, sxth + e00: 2b21a0ff cmn w7, w1, sxth + e04: 2b21a4ff cmn w7, w1, sxth #1 + e08: 2b21a8ff cmn w7, w1, sxth #2 + e0c: 2b21acff cmn w7, w1, sxth #3 + e10: 2b21b0ff cmn w7, w1, sxth #4 + e14: 2b21c0ff cmn w7, w1, sxtw + e18: 2b21c0ff cmn w7, w1, sxtw + e1c: 2b21c4ff cmn w7, w1, sxtw #1 + e20: 2b21c8ff cmn w7, w1, sxtw #2 + e24: 2b21ccff cmn w7, w1, sxtw #3 + e28: 2b21d0ff cmn w7, w1, sxtw #4 + e2c: 2b21e0ff cmn w7, w1, sxtx + e30: 2b21e0ff cmn w7, w1, sxtx + e34: 2b21e4ff cmn w7, w1, sxtx #1 + e38: 2b21e8ff cmn w7, w1, sxtx #2 + e3c: 2b21ecff cmn w7, w1, sxtx #3 + e40: 2b21f0ff cmn w7, w1, sxtx #4 + e44: 2b0100ff cmn w7, w1 + e48: 2b0104ff cmn w7, w1, lsl #1 + e4c: 2b0108ff cmn w7, w1, lsl #2 + e50: 2b010cff cmn w7, w1, lsl #3 + e54: 2b0110ff cmn w7, w1, lsl #4 + e58: 2b2143ff cmn wsp, w1 + e5c: 2b2103ff cmn wsp, w1, uxtb + e60: 2b2103ff cmn wsp, w1, uxtb + e64: 2b2107ff cmn wsp, w1, uxtb #1 + e68: 2b210bff cmn wsp, w1, uxtb #2 + e6c: 2b210fff cmn wsp, w1, uxtb #3 + e70: 2b2113ff cmn wsp, w1, uxtb #4 + e74: 2b2123ff cmn wsp, w1, uxth + e78: 2b2123ff cmn wsp, w1, uxth + e7c: 2b2127ff cmn wsp, w1, uxth #1 + e80: 2b212bff cmn wsp, w1, uxth #2 + e84: 2b212fff cmn wsp, w1, uxth #3 + e88: 2b2133ff cmn wsp, w1, uxth #4 + e8c: 2b2143ff cmn wsp, w1 + e90: 2b2143ff cmn wsp, w1 + e94: 2b2147ff cmn wsp, w1, lsl #1 + e98: 2b214bff cmn wsp, w1, lsl #2 + e9c: 2b214fff cmn wsp, w1, lsl #3 + ea0: 2b2153ff cmn wsp, w1, lsl #4 + ea4: 2b2163ff cmn wsp, w1, uxtx + ea8: 2b2163ff cmn wsp, w1, uxtx + eac: 2b2167ff cmn wsp, w1, uxtx #1 + eb0: 2b216bff cmn wsp, w1, uxtx #2 + eb4: 2b216fff cmn wsp, w1, uxtx #3 + eb8: 2b2173ff cmn wsp, w1, uxtx #4 + ebc: 2b2183ff cmn wsp, w1, sxtb + ec0: 2b2183ff cmn wsp, w1, sxtb + ec4: 2b2187ff cmn wsp, w1, sxtb #1 + ec8: 2b218bff cmn wsp, w1, sxtb #2 + ecc: 2b218fff cmn wsp, w1, sxtb #3 + ed0: 2b2193ff cmn wsp, w1, sxtb #4 + ed4: 2b21a3ff cmn wsp, w1, sxth + ed8: 2b21a3ff cmn wsp, w1, sxth + edc: 2b21a7ff cmn wsp, w1, sxth #1 + ee0: 2b21abff cmn wsp, w1, sxth #2 + ee4: 2b21afff cmn wsp, w1, sxth #3 + ee8: 2b21b3ff cmn wsp, w1, sxth #4 + eec: 2b21c3ff cmn wsp, w1, sxtw + ef0: 2b21c3ff cmn wsp, w1, sxtw + ef4: 2b21c7ff cmn wsp, w1, sxtw #1 + ef8: 2b21cbff cmn wsp, w1, sxtw #2 + efc: 2b21cfff cmn wsp, w1, sxtw #3 + f00: 2b21d3ff cmn wsp, w1, sxtw #4 + f04: 2b21e3ff cmn wsp, w1, sxtx + f08: 2b21e3ff cmn wsp, w1, sxtx + f0c: 2b21e7ff cmn wsp, w1, sxtx #1 + f10: 2b21ebff cmn wsp, w1, sxtx #2 + f14: 2b21efff cmn wsp, w1, sxtx #3 + f18: 2b21f3ff cmn wsp, w1, sxtx #4 + f1c: 2b2143ff cmn wsp, w1 + f20: 2b2147ff cmn wsp, w1, lsl #1 + f24: 2b214bff cmn wsp, w1, lsl #2 + f28: 2b214fff cmn wsp, w1, lsl #3 + f2c: 2b2153ff cmn wsp, w1, lsl #4 + f30: ab0100ff cmn x7, x1 + f34: ab2100ff cmn x7, w1, uxtb + f38: ab2100ff cmn x7, w1, uxtb + f3c: ab2104ff cmn x7, w1, uxtb #1 + f40: ab2108ff cmn x7, w1, uxtb #2 + f44: ab210cff cmn x7, w1, uxtb #3 + f48: ab2110ff cmn x7, w1, uxtb #4 + f4c: ab2120ff cmn x7, w1, uxth + f50: ab2120ff cmn x7, w1, uxth + f54: ab2124ff cmn x7, w1, uxth #1 + f58: ab2128ff cmn x7, w1, uxth #2 + f5c: ab212cff cmn x7, w1, uxth #3 + f60: ab2130ff cmn x7, w1, uxth #4 + f64: ab2140ff cmn x7, w1, uxtw + f68: ab2140ff cmn x7, w1, uxtw + f6c: ab2144ff cmn x7, w1, uxtw #1 + f70: ab2148ff cmn x7, w1, uxtw #2 + f74: ab214cff cmn x7, w1, uxtw #3 + f78: ab2150ff cmn x7, w1, uxtw #4 + f7c: ab2160ff cmn x7, x1, uxtx + f80: ab2160ff cmn x7, x1, uxtx + f84: ab2164ff cmn x7, x1, uxtx #1 + f88: ab2168ff cmn x7, x1, uxtx #2 + f8c: ab216cff cmn x7, x1, uxtx #3 + f90: ab2170ff cmn x7, x1, uxtx #4 + f94: ab2180ff cmn x7, w1, sxtb + f98: ab2180ff cmn x7, w1, sxtb + f9c: ab2184ff cmn x7, w1, sxtb #1 + fa0: ab2188ff cmn x7, w1, sxtb #2 + fa4: ab218cff cmn x7, w1, sxtb #3 + fa8: ab2190ff cmn x7, w1, sxtb #4 + fac: ab21a0ff cmn x7, w1, sxth + fb0: ab21a0ff cmn x7, w1, sxth + fb4: ab21a4ff cmn x7, w1, sxth #1 + fb8: ab21a8ff cmn x7, w1, sxth #2 + fbc: ab21acff cmn x7, w1, sxth #3 + fc0: ab21b0ff cmn x7, w1, sxth #4 + fc4: ab21c0ff cmn x7, w1, sxtw + fc8: ab21c0ff cmn x7, w1, sxtw + fcc: ab21c4ff cmn x7, w1, sxtw #1 + fd0: ab21c8ff cmn x7, w1, sxtw #2 + fd4: ab21ccff cmn x7, w1, sxtw #3 + fd8: ab21d0ff cmn x7, w1, sxtw #4 + fdc: ab21e0ff cmn x7, x1, sxtx + fe0: ab21e0ff cmn x7, x1, sxtx + fe4: ab21e4ff cmn x7, x1, sxtx #1 + fe8: ab21e8ff cmn x7, x1, sxtx #2 + fec: ab21ecff cmn x7, x1, sxtx #3 + ff0: ab21f0ff cmn x7, x1, sxtx #4 + ff4: ab0100ff cmn x7, x1 + ff8: ab0104ff cmn x7, x1, lsl #1 + ffc: ab0108ff cmn x7, x1, lsl #2 + 1000: ab010cff cmn x7, x1, lsl #3 + 1004: ab0110ff cmn x7, x1, lsl #4 + 1008: ab2163ff cmn sp, x1 + 100c: ab2103ff cmn sp, w1, uxtb + 1010: ab2103ff cmn sp, w1, uxtb + 1014: ab2107ff cmn sp, w1, uxtb #1 + 1018: ab210bff cmn sp, w1, uxtb #2 + 101c: ab210fff cmn sp, w1, uxtb #3 + 1020: ab2113ff cmn sp, w1, uxtb #4 + 1024: ab2123ff cmn sp, w1, uxth + 1028: ab2123ff cmn sp, w1, uxth + 102c: ab2127ff cmn sp, w1, uxth #1 + 1030: ab212bff cmn sp, w1, uxth #2 + 1034: ab212fff cmn sp, w1, uxth #3 + 1038: ab2133ff cmn sp, w1, uxth #4 + 103c: ab2143ff cmn sp, w1, uxtw + 1040: ab2143ff cmn sp, w1, uxtw + 1044: ab2147ff cmn sp, w1, uxtw #1 + 1048: ab214bff cmn sp, w1, uxtw #2 + 104c: ab214fff cmn sp, w1, uxtw #3 + 1050: ab2153ff cmn sp, w1, uxtw #4 + 1054: ab2163ff cmn sp, x1 + 1058: ab2163ff cmn sp, x1 + 105c: ab2167ff cmn sp, x1, lsl #1 + 1060: ab216bff cmn sp, x1, lsl #2 + 1064: ab216fff cmn sp, x1, lsl #3 + 1068: ab2173ff cmn sp, x1, lsl #4 + 106c: ab2183ff cmn sp, w1, sxtb + 1070: ab2183ff cmn sp, w1, sxtb + 1074: ab2187ff cmn sp, w1, sxtb #1 + 1078: ab218bff cmn sp, w1, sxtb #2 + 107c: ab218fff cmn sp, w1, sxtb #3 + 1080: ab2193ff cmn sp, w1, sxtb #4 + 1084: ab21a3ff cmn sp, w1, sxth + 1088: ab21a3ff cmn sp, w1, sxth + 108c: ab21a7ff cmn sp, w1, sxth #1 + 1090: ab21abff cmn sp, w1, sxth #2 + 1094: ab21afff cmn sp, w1, sxth #3 + 1098: ab21b3ff cmn sp, w1, sxth #4 + 109c: ab21c3ff cmn sp, w1, sxtw + 10a0: ab21c3ff cmn sp, w1, sxtw + 10a4: ab21c7ff cmn sp, w1, sxtw #1 + 10a8: ab21cbff cmn sp, w1, sxtw #2 + 10ac: ab21cfff cmn sp, w1, sxtw #3 + 10b0: ab21d3ff cmn sp, w1, sxtw #4 + 10b4: ab21e3ff cmn sp, x1, sxtx + 10b8: ab21e3ff cmn sp, x1, sxtx + 10bc: ab21e7ff cmn sp, x1, sxtx #1 + 10c0: ab21ebff cmn sp, x1, sxtx #2 + 10c4: ab21efff cmn sp, x1, sxtx #3 + 10c8: ab21f3ff cmn sp, x1, sxtx #4 + 10cc: ab2163ff cmn sp, x1 + 10d0: ab2167ff cmn sp, x1, lsl #1 + 10d4: ab216bff cmn sp, x1, lsl #2 + 10d8: ab216fff cmn sp, x1, lsl #3 + 10dc: ab2173ff cmn sp, x1, lsl #4 + 10e0: 6b0100ff cmp w7, w1 + 10e4: 6b2100ff cmp w7, w1, uxtb + 10e8: 6b2100ff cmp w7, w1, uxtb + 10ec: 6b2104ff cmp w7, w1, uxtb #1 + 10f0: 6b2108ff cmp w7, w1, uxtb #2 + 10f4: 6b210cff cmp w7, w1, uxtb #3 + 10f8: 6b2110ff cmp w7, w1, uxtb #4 + 10fc: 6b2120ff cmp w7, w1, uxth + 1100: 6b2120ff cmp w7, w1, uxth + 1104: 6b2124ff cmp w7, w1, uxth #1 + 1108: 6b2128ff cmp w7, w1, uxth #2 + 110c: 6b212cff cmp w7, w1, uxth #3 + 1110: 6b2130ff cmp w7, w1, uxth #4 + 1114: 6b2140ff cmp w7, w1, uxtw + 1118: 6b2140ff cmp w7, w1, uxtw + 111c: 6b2144ff cmp w7, w1, uxtw #1 + 1120: 6b2148ff cmp w7, w1, uxtw #2 + 1124: 6b214cff cmp w7, w1, uxtw #3 + 1128: 6b2150ff cmp w7, w1, uxtw #4 + 112c: 6b2160ff cmp w7, w1, uxtx + 1130: 6b2160ff cmp w7, w1, uxtx + 1134: 6b2164ff cmp w7, w1, uxtx #1 + 1138: 6b2168ff cmp w7, w1, uxtx #2 + 113c: 6b216cff cmp w7, w1, uxtx #3 + 1140: 6b2170ff cmp w7, w1, uxtx #4 + 1144: 6b2180ff cmp w7, w1, sxtb + 1148: 6b2180ff cmp w7, w1, sxtb + 114c: 6b2184ff cmp w7, w1, sxtb #1 + 1150: 6b2188ff cmp w7, w1, sxtb #2 + 1154: 6b218cff cmp w7, w1, sxtb #3 + 1158: 6b2190ff cmp w7, w1, sxtb #4 + 115c: 6b21a0ff cmp w7, w1, sxth + 1160: 6b21a0ff cmp w7, w1, sxth + 1164: 6b21a4ff cmp w7, w1, sxth #1 + 1168: 6b21a8ff cmp w7, w1, sxth #2 + 116c: 6b21acff cmp w7, w1, sxth #3 + 1170: 6b21b0ff cmp w7, w1, sxth #4 + 1174: 6b21c0ff cmp w7, w1, sxtw + 1178: 6b21c0ff cmp w7, w1, sxtw + 117c: 6b21c4ff cmp w7, w1, sxtw #1 + 1180: 6b21c8ff cmp w7, w1, sxtw #2 + 1184: 6b21ccff cmp w7, w1, sxtw #3 + 1188: 6b21d0ff cmp w7, w1, sxtw #4 + 118c: 6b21e0ff cmp w7, w1, sxtx + 1190: 6b21e0ff cmp w7, w1, sxtx + 1194: 6b21e4ff cmp w7, w1, sxtx #1 + 1198: 6b21e8ff cmp w7, w1, sxtx #2 + 119c: 6b21ecff cmp w7, w1, sxtx #3 + 11a0: 6b21f0ff cmp w7, w1, sxtx #4 + 11a4: 6b0100ff cmp w7, w1 + 11a8: 6b0104ff cmp w7, w1, lsl #1 + 11ac: 6b0108ff cmp w7, w1, lsl #2 + 11b0: 6b010cff cmp w7, w1, lsl #3 + 11b4: 6b0110ff cmp w7, w1, lsl #4 + 11b8: 6b2143ff cmp wsp, w1 + 11bc: 6b2103ff cmp wsp, w1, uxtb + 11c0: 6b2103ff cmp wsp, w1, uxtb + 11c4: 6b2107ff cmp wsp, w1, uxtb #1 + 11c8: 6b210bff cmp wsp, w1, uxtb #2 + 11cc: 6b210fff cmp wsp, w1, uxtb #3 + 11d0: 6b2113ff cmp wsp, w1, uxtb #4 + 11d4: 6b2123ff cmp wsp, w1, uxth + 11d8: 6b2123ff cmp wsp, w1, uxth + 11dc: 6b2127ff cmp wsp, w1, uxth #1 + 11e0: 6b212bff cmp wsp, w1, uxth #2 + 11e4: 6b212fff cmp wsp, w1, uxth #3 + 11e8: 6b2133ff cmp wsp, w1, uxth #4 + 11ec: 6b2143ff cmp wsp, w1 + 11f0: 6b2143ff cmp wsp, w1 + 11f4: 6b2147ff cmp wsp, w1, lsl #1 + 11f8: 6b214bff cmp wsp, w1, lsl #2 + 11fc: 6b214fff cmp wsp, w1, lsl #3 + 1200: 6b2153ff cmp wsp, w1, lsl #4 + 1204: 6b2163ff cmp wsp, w1, uxtx + 1208: 6b2163ff cmp wsp, w1, uxtx + 120c: 6b2167ff cmp wsp, w1, uxtx #1 + 1210: 6b216bff cmp wsp, w1, uxtx #2 + 1214: 6b216fff cmp wsp, w1, uxtx #3 + 1218: 6b2173ff cmp wsp, w1, uxtx #4 + 121c: 6b2183ff cmp wsp, w1, sxtb + 1220: 6b2183ff cmp wsp, w1, sxtb + 1224: 6b2187ff cmp wsp, w1, sxtb #1 + 1228: 6b218bff cmp wsp, w1, sxtb #2 + 122c: 6b218fff cmp wsp, w1, sxtb #3 + 1230: 6b2193ff cmp wsp, w1, sxtb #4 + 1234: 6b21a3ff cmp wsp, w1, sxth + 1238: 6b21a3ff cmp wsp, w1, sxth + 123c: 6b21a7ff cmp wsp, w1, sxth #1 + 1240: 6b21abff cmp wsp, w1, sxth #2 + 1244: 6b21afff cmp wsp, w1, sxth #3 + 1248: 6b21b3ff cmp wsp, w1, sxth #4 + 124c: 6b21c3ff cmp wsp, w1, sxtw + 1250: 6b21c3ff cmp wsp, w1, sxtw + 1254: 6b21c7ff cmp wsp, w1, sxtw #1 + 1258: 6b21cbff cmp wsp, w1, sxtw #2 + 125c: 6b21cfff cmp wsp, w1, sxtw #3 + 1260: 6b21d3ff cmp wsp, w1, sxtw #4 + 1264: 6b21e3ff cmp wsp, w1, sxtx + 1268: 6b21e3ff cmp wsp, w1, sxtx + 126c: 6b21e7ff cmp wsp, w1, sxtx #1 + 1270: 6b21ebff cmp wsp, w1, sxtx #2 + 1274: 6b21efff cmp wsp, w1, sxtx #3 + 1278: 6b21f3ff cmp wsp, w1, sxtx #4 + 127c: 6b2143ff cmp wsp, w1 + 1280: 6b2147ff cmp wsp, w1, lsl #1 + 1284: 6b214bff cmp wsp, w1, lsl #2 + 1288: 6b214fff cmp wsp, w1, lsl #3 + 128c: 6b2153ff cmp wsp, w1, lsl #4 + 1290: eb0100ff cmp x7, x1 + 1294: eb2100ff cmp x7, w1, uxtb + 1298: eb2100ff cmp x7, w1, uxtb + 129c: eb2104ff cmp x7, w1, uxtb #1 + 12a0: eb2108ff cmp x7, w1, uxtb #2 + 12a4: eb210cff cmp x7, w1, uxtb #3 + 12a8: eb2110ff cmp x7, w1, uxtb #4 + 12ac: eb2120ff cmp x7, w1, uxth + 12b0: eb2120ff cmp x7, w1, uxth + 12b4: eb2124ff cmp x7, w1, uxth #1 + 12b8: eb2128ff cmp x7, w1, uxth #2 + 12bc: eb212cff cmp x7, w1, uxth #3 + 12c0: eb2130ff cmp x7, w1, uxth #4 + 12c4: eb2140ff cmp x7, w1, uxtw + 12c8: eb2140ff cmp x7, w1, uxtw + 12cc: eb2144ff cmp x7, w1, uxtw #1 + 12d0: eb2148ff cmp x7, w1, uxtw #2 + 12d4: eb214cff cmp x7, w1, uxtw #3 + 12d8: eb2150ff cmp x7, w1, uxtw #4 + 12dc: eb2160ff cmp x7, x1, uxtx + 12e0: eb2160ff cmp x7, x1, uxtx + 12e4: eb2164ff cmp x7, x1, uxtx #1 + 12e8: eb2168ff cmp x7, x1, uxtx #2 + 12ec: eb216cff cmp x7, x1, uxtx #3 + 12f0: eb2170ff cmp x7, x1, uxtx #4 + 12f4: eb2180ff cmp x7, w1, sxtb + 12f8: eb2180ff cmp x7, w1, sxtb + 12fc: eb2184ff cmp x7, w1, sxtb #1 + 1300: eb2188ff cmp x7, w1, sxtb #2 + 1304: eb218cff cmp x7, w1, sxtb #3 + 1308: eb2190ff cmp x7, w1, sxtb #4 + 130c: eb21a0ff cmp x7, w1, sxth + 1310: eb21a0ff cmp x7, w1, sxth + 1314: eb21a4ff cmp x7, w1, sxth #1 + 1318: eb21a8ff cmp x7, w1, sxth #2 + 131c: eb21acff cmp x7, w1, sxth #3 + 1320: eb21b0ff cmp x7, w1, sxth #4 + 1324: eb21c0ff cmp x7, w1, sxtw + 1328: eb21c0ff cmp x7, w1, sxtw + 132c: eb21c4ff cmp x7, w1, sxtw #1 + 1330: eb21c8ff cmp x7, w1, sxtw #2 + 1334: eb21ccff cmp x7, w1, sxtw #3 + 1338: eb21d0ff cmp x7, w1, sxtw #4 + 133c: eb21e0ff cmp x7, x1, sxtx + 1340: eb21e0ff cmp x7, x1, sxtx + 1344: eb21e4ff cmp x7, x1, sxtx #1 + 1348: eb21e8ff cmp x7, x1, sxtx #2 + 134c: eb21ecff cmp x7, x1, sxtx #3 + 1350: eb21f0ff cmp x7, x1, sxtx #4 + 1354: eb0100ff cmp x7, x1 + 1358: eb0104ff cmp x7, x1, lsl #1 + 135c: eb0108ff cmp x7, x1, lsl #2 + 1360: eb010cff cmp x7, x1, lsl #3 + 1364: eb0110ff cmp x7, x1, lsl #4 + 1368: eb2163ff cmp sp, x1 + 136c: eb2103ff cmp sp, w1, uxtb + 1370: eb2103ff cmp sp, w1, uxtb + 1374: eb2107ff cmp sp, w1, uxtb #1 + 1378: eb210bff cmp sp, w1, uxtb #2 + 137c: eb210fff cmp sp, w1, uxtb #3 + 1380: eb2113ff cmp sp, w1, uxtb #4 + 1384: eb2123ff cmp sp, w1, uxth + 1388: eb2123ff cmp sp, w1, uxth + 138c: eb2127ff cmp sp, w1, uxth #1 + 1390: eb212bff cmp sp, w1, uxth #2 + 1394: eb212fff cmp sp, w1, uxth #3 + 1398: eb2133ff cmp sp, w1, uxth #4 + 139c: eb2143ff cmp sp, w1, uxtw + 13a0: eb2143ff cmp sp, w1, uxtw + 13a4: eb2147ff cmp sp, w1, uxtw #1 + 13a8: eb214bff cmp sp, w1, uxtw #2 + 13ac: eb214fff cmp sp, w1, uxtw #3 + 13b0: eb2153ff cmp sp, w1, uxtw #4 + 13b4: eb2163ff cmp sp, x1 + 13b8: eb2163ff cmp sp, x1 + 13bc: eb2167ff cmp sp, x1, lsl #1 + 13c0: eb216bff cmp sp, x1, lsl #2 + 13c4: eb216fff cmp sp, x1, lsl #3 + 13c8: eb2173ff cmp sp, x1, lsl #4 + 13cc: eb2183ff cmp sp, w1, sxtb + 13d0: eb2183ff cmp sp, w1, sxtb + 13d4: eb2187ff cmp sp, w1, sxtb #1 + 13d8: eb218bff cmp sp, w1, sxtb #2 + 13dc: eb218fff cmp sp, w1, sxtb #3 + 13e0: eb2193ff cmp sp, w1, sxtb #4 + 13e4: eb21a3ff cmp sp, w1, sxth + 13e8: eb21a3ff cmp sp, w1, sxth + 13ec: eb21a7ff cmp sp, w1, sxth #1 + 13f0: eb21abff cmp sp, w1, sxth #2 + 13f4: eb21afff cmp sp, w1, sxth #3 + 13f8: eb21b3ff cmp sp, w1, sxth #4 + 13fc: eb21c3ff cmp sp, w1, sxtw + 1400: eb21c3ff cmp sp, w1, sxtw + 1404: eb21c7ff cmp sp, w1, sxtw #1 + 1408: eb21cbff cmp sp, w1, sxtw #2 + 140c: eb21cfff cmp sp, w1, sxtw #3 + 1410: eb21d3ff cmp sp, w1, sxtw #4 + 1414: eb21e3ff cmp sp, x1, sxtx + 1418: eb21e3ff cmp sp, x1, sxtx + 141c: eb21e7ff cmp sp, x1, sxtx #1 + 1420: eb21ebff cmp sp, x1, sxtx #2 + 1424: eb21efff cmp sp, x1, sxtx #3 + 1428: eb21f3ff cmp sp, x1, sxtx #4 + 142c: eb2163ff cmp sp, x1 + 1430: eb2167ff cmp sp, x1, lsl #1 + 1434: eb216bff cmp sp, x1, lsl #2 + 1438: eb216fff cmp sp, x1, lsl #3 + 143c: eb2173ff cmp sp, x1, lsl #4 + 1440: 2b0100ff cmn w7, w1 + 1444: 2b2100ff cmn w7, w1, uxtb + 1448: 2b2100ff cmn w7, w1, uxtb + 144c: 2b2104ff cmn w7, w1, uxtb #1 + 1450: 2b2108ff cmn w7, w1, uxtb #2 + 1454: 2b210cff cmn w7, w1, uxtb #3 + 1458: 2b2110ff cmn w7, w1, uxtb #4 + 145c: 2b2120ff cmn w7, w1, uxth + 1460: 2b2120ff cmn w7, w1, uxth + 1464: 2b2124ff cmn w7, w1, uxth #1 + 1468: 2b2128ff cmn w7, w1, uxth #2 + 146c: 2b212cff cmn w7, w1, uxth #3 + 1470: 2b2130ff cmn w7, w1, uxth #4 + 1474: 2b2140ff cmn w7, w1, uxtw + 1478: 2b2140ff cmn w7, w1, uxtw + 147c: 2b2144ff cmn w7, w1, uxtw #1 + 1480: 2b2148ff cmn w7, w1, uxtw #2 + 1484: 2b214cff cmn w7, w1, uxtw #3 + 1488: 2b2150ff cmn w7, w1, uxtw #4 + 148c: 2b2160ff cmn w7, w1, uxtx + 1490: 2b2160ff cmn w7, w1, uxtx + 1494: 2b2164ff cmn w7, w1, uxtx #1 + 1498: 2b2168ff cmn w7, w1, uxtx #2 + 149c: 2b216cff cmn w7, w1, uxtx #3 + 14a0: 2b2170ff cmn w7, w1, uxtx #4 + 14a4: 2b2180ff cmn w7, w1, sxtb + 14a8: 2b2180ff cmn w7, w1, sxtb + 14ac: 2b2184ff cmn w7, w1, sxtb #1 + 14b0: 2b2188ff cmn w7, w1, sxtb #2 + 14b4: 2b218cff cmn w7, w1, sxtb #3 + 14b8: 2b2190ff cmn w7, w1, sxtb #4 + 14bc: 2b21a0ff cmn w7, w1, sxth + 14c0: 2b21a0ff cmn w7, w1, sxth + 14c4: 2b21a4ff cmn w7, w1, sxth #1 + 14c8: 2b21a8ff cmn w7, w1, sxth #2 + 14cc: 2b21acff cmn w7, w1, sxth #3 + 14d0: 2b21b0ff cmn w7, w1, sxth #4 + 14d4: 2b21c0ff cmn w7, w1, sxtw + 14d8: 2b21c0ff cmn w7, w1, sxtw + 14dc: 2b21c4ff cmn w7, w1, sxtw #1 + 14e0: 2b21c8ff cmn w7, w1, sxtw #2 + 14e4: 2b21ccff cmn w7, w1, sxtw #3 + 14e8: 2b21d0ff cmn w7, w1, sxtw #4 + 14ec: 2b21e0ff cmn w7, w1, sxtx + 14f0: 2b21e0ff cmn w7, w1, sxtx + 14f4: 2b21e4ff cmn w7, w1, sxtx #1 + 14f8: 2b21e8ff cmn w7, w1, sxtx #2 + 14fc: 2b21ecff cmn w7, w1, sxtx #3 + 1500: 2b21f0ff cmn w7, w1, sxtx #4 + 1504: 2b0100ff cmn w7, w1 + 1508: 2b0104ff cmn w7, w1, lsl #1 + 150c: 2b0108ff cmn w7, w1, lsl #2 + 1510: 2b010cff cmn w7, w1, lsl #3 + 1514: 2b0110ff cmn w7, w1, lsl #4 + 1518: 2b2143ff cmn wsp, w1 + 151c: 2b2103ff cmn wsp, w1, uxtb + 1520: 2b2103ff cmn wsp, w1, uxtb + 1524: 2b2107ff cmn wsp, w1, uxtb #1 + 1528: 2b210bff cmn wsp, w1, uxtb #2 + 152c: 2b210fff cmn wsp, w1, uxtb #3 + 1530: 2b2113ff cmn wsp, w1, uxtb #4 + 1534: 2b2123ff cmn wsp, w1, uxth + 1538: 2b2123ff cmn wsp, w1, uxth + 153c: 2b2127ff cmn wsp, w1, uxth #1 + 1540: 2b212bff cmn wsp, w1, uxth #2 + 1544: 2b212fff cmn wsp, w1, uxth #3 + 1548: 2b2133ff cmn wsp, w1, uxth #4 + 154c: 2b2143ff cmn wsp, w1 + 1550: 2b2143ff cmn wsp, w1 + 1554: 2b2147ff cmn wsp, w1, lsl #1 + 1558: 2b214bff cmn wsp, w1, lsl #2 + 155c: 2b214fff cmn wsp, w1, lsl #3 + 1560: 2b2153ff cmn wsp, w1, lsl #4 + 1564: 2b2163ff cmn wsp, w1, uxtx + 1568: 2b2163ff cmn wsp, w1, uxtx + 156c: 2b2167ff cmn wsp, w1, uxtx #1 + 1570: 2b216bff cmn wsp, w1, uxtx #2 + 1574: 2b216fff cmn wsp, w1, uxtx #3 + 1578: 2b2173ff cmn wsp, w1, uxtx #4 + 157c: 2b2183ff cmn wsp, w1, sxtb + 1580: 2b2183ff cmn wsp, w1, sxtb + 1584: 2b2187ff cmn wsp, w1, sxtb #1 + 1588: 2b218bff cmn wsp, w1, sxtb #2 + 158c: 2b218fff cmn wsp, w1, sxtb #3 + 1590: 2b2193ff cmn wsp, w1, sxtb #4 + 1594: 2b21a3ff cmn wsp, w1, sxth + 1598: 2b21a3ff cmn wsp, w1, sxth + 159c: 2b21a7ff cmn wsp, w1, sxth #1 + 15a0: 2b21abff cmn wsp, w1, sxth #2 + 15a4: 2b21afff cmn wsp, w1, sxth #3 + 15a8: 2b21b3ff cmn wsp, w1, sxth #4 + 15ac: 2b21c3ff cmn wsp, w1, sxtw + 15b0: 2b21c3ff cmn wsp, w1, sxtw + 15b4: 2b21c7ff cmn wsp, w1, sxtw #1 + 15b8: 2b21cbff cmn wsp, w1, sxtw #2 + 15bc: 2b21cfff cmn wsp, w1, sxtw #3 + 15c0: 2b21d3ff cmn wsp, w1, sxtw #4 + 15c4: 2b21e3ff cmn wsp, w1, sxtx + 15c8: 2b21e3ff cmn wsp, w1, sxtx + 15cc: 2b21e7ff cmn wsp, w1, sxtx #1 + 15d0: 2b21ebff cmn wsp, w1, sxtx #2 + 15d4: 2b21efff cmn wsp, w1, sxtx #3 + 15d8: 2b21f3ff cmn wsp, w1, sxtx #4 + 15dc: 2b2143ff cmn wsp, w1 + 15e0: 2b2147ff cmn wsp, w1, lsl #1 + 15e4: 2b214bff cmn wsp, w1, lsl #2 + 15e8: 2b214fff cmn wsp, w1, lsl #3 + 15ec: 2b2153ff cmn wsp, w1, lsl #4 + 15f0: ab0100ff cmn x7, x1 + 15f4: ab2100ff cmn x7, w1, uxtb + 15f8: ab2100ff cmn x7, w1, uxtb + 15fc: ab2104ff cmn x7, w1, uxtb #1 + 1600: ab2108ff cmn x7, w1, uxtb #2 + 1604: ab210cff cmn x7, w1, uxtb #3 + 1608: ab2110ff cmn x7, w1, uxtb #4 + 160c: ab2120ff cmn x7, w1, uxth + 1610: ab2120ff cmn x7, w1, uxth + 1614: ab2124ff cmn x7, w1, uxth #1 + 1618: ab2128ff cmn x7, w1, uxth #2 + 161c: ab212cff cmn x7, w1, uxth #3 + 1620: ab2130ff cmn x7, w1, uxth #4 + 1624: ab2140ff cmn x7, w1, uxtw + 1628: ab2140ff cmn x7, w1, uxtw + 162c: ab2144ff cmn x7, w1, uxtw #1 + 1630: ab2148ff cmn x7, w1, uxtw #2 + 1634: ab214cff cmn x7, w1, uxtw #3 + 1638: ab2150ff cmn x7, w1, uxtw #4 + 163c: ab2160ff cmn x7, x1, uxtx + 1640: ab2160ff cmn x7, x1, uxtx + 1644: ab2164ff cmn x7, x1, uxtx #1 + 1648: ab2168ff cmn x7, x1, uxtx #2 + 164c: ab216cff cmn x7, x1, uxtx #3 + 1650: ab2170ff cmn x7, x1, uxtx #4 + 1654: ab2180ff cmn x7, w1, sxtb + 1658: ab2180ff cmn x7, w1, sxtb + 165c: ab2184ff cmn x7, w1, sxtb #1 + 1660: ab2188ff cmn x7, w1, sxtb #2 + 1664: ab218cff cmn x7, w1, sxtb #3 + 1668: ab2190ff cmn x7, w1, sxtb #4 + 166c: ab21a0ff cmn x7, w1, sxth + 1670: ab21a0ff cmn x7, w1, sxth + 1674: ab21a4ff cmn x7, w1, sxth #1 + 1678: ab21a8ff cmn x7, w1, sxth #2 + 167c: ab21acff cmn x7, w1, sxth #3 + 1680: ab21b0ff cmn x7, w1, sxth #4 + 1684: ab21c0ff cmn x7, w1, sxtw + 1688: ab21c0ff cmn x7, w1, sxtw + 168c: ab21c4ff cmn x7, w1, sxtw #1 + 1690: ab21c8ff cmn x7, w1, sxtw #2 + 1694: ab21ccff cmn x7, w1, sxtw #3 + 1698: ab21d0ff cmn x7, w1, sxtw #4 + 169c: ab21e0ff cmn x7, x1, sxtx + 16a0: ab21e0ff cmn x7, x1, sxtx + 16a4: ab21e4ff cmn x7, x1, sxtx #1 + 16a8: ab21e8ff cmn x7, x1, sxtx #2 + 16ac: ab21ecff cmn x7, x1, sxtx #3 + 16b0: ab21f0ff cmn x7, x1, sxtx #4 + 16b4: ab0100ff cmn x7, x1 + 16b8: ab0104ff cmn x7, x1, lsl #1 + 16bc: ab0108ff cmn x7, x1, lsl #2 + 16c0: ab010cff cmn x7, x1, lsl #3 + 16c4: ab0110ff cmn x7, x1, lsl #4 + 16c8: ab2163ff cmn sp, x1 + 16cc: ab2103ff cmn sp, w1, uxtb + 16d0: ab2103ff cmn sp, w1, uxtb + 16d4: ab2107ff cmn sp, w1, uxtb #1 + 16d8: ab210bff cmn sp, w1, uxtb #2 + 16dc: ab210fff cmn sp, w1, uxtb #3 + 16e0: ab2113ff cmn sp, w1, uxtb #4 + 16e4: ab2123ff cmn sp, w1, uxth + 16e8: ab2123ff cmn sp, w1, uxth + 16ec: ab2127ff cmn sp, w1, uxth #1 + 16f0: ab212bff cmn sp, w1, uxth #2 + 16f4: ab212fff cmn sp, w1, uxth #3 + 16f8: ab2133ff cmn sp, w1, uxth #4 + 16fc: ab2143ff cmn sp, w1, uxtw + 1700: ab2143ff cmn sp, w1, uxtw + 1704: ab2147ff cmn sp, w1, uxtw #1 + 1708: ab214bff cmn sp, w1, uxtw #2 + 170c: ab214fff cmn sp, w1, uxtw #3 + 1710: ab2153ff cmn sp, w1, uxtw #4 + 1714: ab2163ff cmn sp, x1 + 1718: ab2163ff cmn sp, x1 + 171c: ab2167ff cmn sp, x1, lsl #1 + 1720: ab216bff cmn sp, x1, lsl #2 + 1724: ab216fff cmn sp, x1, lsl #3 + 1728: ab2173ff cmn sp, x1, lsl #4 + 172c: ab2183ff cmn sp, w1, sxtb + 1730: ab2183ff cmn sp, w1, sxtb + 1734: ab2187ff cmn sp, w1, sxtb #1 + 1738: ab218bff cmn sp, w1, sxtb #2 + 173c: ab218fff cmn sp, w1, sxtb #3 + 1740: ab2193ff cmn sp, w1, sxtb #4 + 1744: ab21a3ff cmn sp, w1, sxth + 1748: ab21a3ff cmn sp, w1, sxth + 174c: ab21a7ff cmn sp, w1, sxth #1 + 1750: ab21abff cmn sp, w1, sxth #2 + 1754: ab21afff cmn sp, w1, sxth #3 + 1758: ab21b3ff cmn sp, w1, sxth #4 + 175c: ab21c3ff cmn sp, w1, sxtw + 1760: ab21c3ff cmn sp, w1, sxtw + 1764: ab21c7ff cmn sp, w1, sxtw #1 + 1768: ab21cbff cmn sp, w1, sxtw #2 + 176c: ab21cfff cmn sp, w1, sxtw #3 + 1770: ab21d3ff cmn sp, w1, sxtw #4 + 1774: ab21e3ff cmn sp, x1, sxtx + 1778: ab21e3ff cmn sp, x1, sxtx + 177c: ab21e7ff cmn sp, x1, sxtx #1 + 1780: ab21ebff cmn sp, x1, sxtx #2 + 1784: ab21efff cmn sp, x1, sxtx #3 + 1788: ab21f3ff cmn sp, x1, sxtx #4 + 178c: ab2163ff cmn sp, x1 + 1790: ab2167ff cmn sp, x1, lsl #1 + 1794: ab216bff cmn sp, x1, lsl #2 + 1798: ab216fff cmn sp, x1, lsl #3 + 179c: ab2173ff cmn sp, x1, lsl #4 + 17a0: 6b0100ff cmp w7, w1 + 17a4: 6b2100ff cmp w7, w1, uxtb + 17a8: 6b2100ff cmp w7, w1, uxtb + 17ac: 6b2104ff cmp w7, w1, uxtb #1 + 17b0: 6b2108ff cmp w7, w1, uxtb #2 + 17b4: 6b210cff cmp w7, w1, uxtb #3 + 17b8: 6b2110ff cmp w7, w1, uxtb #4 + 17bc: 6b2120ff cmp w7, w1, uxth + 17c0: 6b2120ff cmp w7, w1, uxth + 17c4: 6b2124ff cmp w7, w1, uxth #1 + 17c8: 6b2128ff cmp w7, w1, uxth #2 + 17cc: 6b212cff cmp w7, w1, uxth #3 + 17d0: 6b2130ff cmp w7, w1, uxth #4 + 17d4: 6b2140ff cmp w7, w1, uxtw + 17d8: 6b2140ff cmp w7, w1, uxtw + 17dc: 6b2144ff cmp w7, w1, uxtw #1 + 17e0: 6b2148ff cmp w7, w1, uxtw #2 + 17e4: 6b214cff cmp w7, w1, uxtw #3 + 17e8: 6b2150ff cmp w7, w1, uxtw #4 + 17ec: 6b2160ff cmp w7, w1, uxtx + 17f0: 6b2160ff cmp w7, w1, uxtx + 17f4: 6b2164ff cmp w7, w1, uxtx #1 + 17f8: 6b2168ff cmp w7, w1, uxtx #2 + 17fc: 6b216cff cmp w7, w1, uxtx #3 + 1800: 6b2170ff cmp w7, w1, uxtx #4 + 1804: 6b2180ff cmp w7, w1, sxtb + 1808: 6b2180ff cmp w7, w1, sxtb + 180c: 6b2184ff cmp w7, w1, sxtb #1 + 1810: 6b2188ff cmp w7, w1, sxtb #2 + 1814: 6b218cff cmp w7, w1, sxtb #3 + 1818: 6b2190ff cmp w7, w1, sxtb #4 + 181c: 6b21a0ff cmp w7, w1, sxth + 1820: 6b21a0ff cmp w7, w1, sxth + 1824: 6b21a4ff cmp w7, w1, sxth #1 + 1828: 6b21a8ff cmp w7, w1, sxth #2 + 182c: 6b21acff cmp w7, w1, sxth #3 + 1830: 6b21b0ff cmp w7, w1, sxth #4 + 1834: 6b21c0ff cmp w7, w1, sxtw + 1838: 6b21c0ff cmp w7, w1, sxtw + 183c: 6b21c4ff cmp w7, w1, sxtw #1 + 1840: 6b21c8ff cmp w7, w1, sxtw #2 + 1844: 6b21ccff cmp w7, w1, sxtw #3 + 1848: 6b21d0ff cmp w7, w1, sxtw #4 + 184c: 6b21e0ff cmp w7, w1, sxtx + 1850: 6b21e0ff cmp w7, w1, sxtx + 1854: 6b21e4ff cmp w7, w1, sxtx #1 + 1858: 6b21e8ff cmp w7, w1, sxtx #2 + 185c: 6b21ecff cmp w7, w1, sxtx #3 + 1860: 6b21f0ff cmp w7, w1, sxtx #4 + 1864: 6b0100ff cmp w7, w1 + 1868: 6b0104ff cmp w7, w1, lsl #1 + 186c: 6b0108ff cmp w7, w1, lsl #2 + 1870: 6b010cff cmp w7, w1, lsl #3 + 1874: 6b0110ff cmp w7, w1, lsl #4 + 1878: 6b2143ff cmp wsp, w1 + 187c: 6b2103ff cmp wsp, w1, uxtb + 1880: 6b2103ff cmp wsp, w1, uxtb + 1884: 6b2107ff cmp wsp, w1, uxtb #1 + 1888: 6b210bff cmp wsp, w1, uxtb #2 + 188c: 6b210fff cmp wsp, w1, uxtb #3 + 1890: 6b2113ff cmp wsp, w1, uxtb #4 + 1894: 6b2123ff cmp wsp, w1, uxth + 1898: 6b2123ff cmp wsp, w1, uxth + 189c: 6b2127ff cmp wsp, w1, uxth #1 + 18a0: 6b212bff cmp wsp, w1, uxth #2 + 18a4: 6b212fff cmp wsp, w1, uxth #3 + 18a8: 6b2133ff cmp wsp, w1, uxth #4 + 18ac: 6b2143ff cmp wsp, w1 + 18b0: 6b2143ff cmp wsp, w1 + 18b4: 6b2147ff cmp wsp, w1, lsl #1 + 18b8: 6b214bff cmp wsp, w1, lsl #2 + 18bc: 6b214fff cmp wsp, w1, lsl #3 + 18c0: 6b2153ff cmp wsp, w1, lsl #4 + 18c4: 6b2163ff cmp wsp, w1, uxtx + 18c8: 6b2163ff cmp wsp, w1, uxtx + 18cc: 6b2167ff cmp wsp, w1, uxtx #1 + 18d0: 6b216bff cmp wsp, w1, uxtx #2 + 18d4: 6b216fff cmp wsp, w1, uxtx #3 + 18d8: 6b2173ff cmp wsp, w1, uxtx #4 + 18dc: 6b2183ff cmp wsp, w1, sxtb + 18e0: 6b2183ff cmp wsp, w1, sxtb + 18e4: 6b2187ff cmp wsp, w1, sxtb #1 + 18e8: 6b218bff cmp wsp, w1, sxtb #2 + 18ec: 6b218fff cmp wsp, w1, sxtb #3 + 18f0: 6b2193ff cmp wsp, w1, sxtb #4 + 18f4: 6b21a3ff cmp wsp, w1, sxth + 18f8: 6b21a3ff cmp wsp, w1, sxth + 18fc: 6b21a7ff cmp wsp, w1, sxth #1 + 1900: 6b21abff cmp wsp, w1, sxth #2 + 1904: 6b21afff cmp wsp, w1, sxth #3 + 1908: 6b21b3ff cmp wsp, w1, sxth #4 + 190c: 6b21c3ff cmp wsp, w1, sxtw + 1910: 6b21c3ff cmp wsp, w1, sxtw + 1914: 6b21c7ff cmp wsp, w1, sxtw #1 + 1918: 6b21cbff cmp wsp, w1, sxtw #2 + 191c: 6b21cfff cmp wsp, w1, sxtw #3 + 1920: 6b21d3ff cmp wsp, w1, sxtw #4 + 1924: 6b21e3ff cmp wsp, w1, sxtx + 1928: 6b21e3ff cmp wsp, w1, sxtx + 192c: 6b21e7ff cmp wsp, w1, sxtx #1 + 1930: 6b21ebff cmp wsp, w1, sxtx #2 + 1934: 6b21efff cmp wsp, w1, sxtx #3 + 1938: 6b21f3ff cmp wsp, w1, sxtx #4 + 193c: 6b2143ff cmp wsp, w1 + 1940: 6b2147ff cmp wsp, w1, lsl #1 + 1944: 6b214bff cmp wsp, w1, lsl #2 + 1948: 6b214fff cmp wsp, w1, lsl #3 + 194c: 6b2153ff cmp wsp, w1, lsl #4 + 1950: eb0100ff cmp x7, x1 + 1954: eb2100ff cmp x7, w1, uxtb + 1958: eb2100ff cmp x7, w1, uxtb + 195c: eb2104ff cmp x7, w1, uxtb #1 + 1960: eb2108ff cmp x7, w1, uxtb #2 + 1964: eb210cff cmp x7, w1, uxtb #3 + 1968: eb2110ff cmp x7, w1, uxtb #4 + 196c: eb2120ff cmp x7, w1, uxth + 1970: eb2120ff cmp x7, w1, uxth + 1974: eb2124ff cmp x7, w1, uxth #1 + 1978: eb2128ff cmp x7, w1, uxth #2 + 197c: eb212cff cmp x7, w1, uxth #3 + 1980: eb2130ff cmp x7, w1, uxth #4 + 1984: eb2140ff cmp x7, w1, uxtw + 1988: eb2140ff cmp x7, w1, uxtw + 198c: eb2144ff cmp x7, w1, uxtw #1 + 1990: eb2148ff cmp x7, w1, uxtw #2 + 1994: eb214cff cmp x7, w1, uxtw #3 + 1998: eb2150ff cmp x7, w1, uxtw #4 + 199c: eb2160ff cmp x7, x1, uxtx + 19a0: eb2160ff cmp x7, x1, uxtx + 19a4: eb2164ff cmp x7, x1, uxtx #1 + 19a8: eb2168ff cmp x7, x1, uxtx #2 + 19ac: eb216cff cmp x7, x1, uxtx #3 + 19b0: eb2170ff cmp x7, x1, uxtx #4 + 19b4: eb2180ff cmp x7, w1, sxtb + 19b8: eb2180ff cmp x7, w1, sxtb + 19bc: eb2184ff cmp x7, w1, sxtb #1 + 19c0: eb2188ff cmp x7, w1, sxtb #2 + 19c4: eb218cff cmp x7, w1, sxtb #3 + 19c8: eb2190ff cmp x7, w1, sxtb #4 + 19cc: eb21a0ff cmp x7, w1, sxth + 19d0: eb21a0ff cmp x7, w1, sxth + 19d4: eb21a4ff cmp x7, w1, sxth #1 + 19d8: eb21a8ff cmp x7, w1, sxth #2 + 19dc: eb21acff cmp x7, w1, sxth #3 + 19e0: eb21b0ff cmp x7, w1, sxth #4 + 19e4: eb21c0ff cmp x7, w1, sxtw + 19e8: eb21c0ff cmp x7, w1, sxtw + 19ec: eb21c4ff cmp x7, w1, sxtw #1 + 19f0: eb21c8ff cmp x7, w1, sxtw #2 + 19f4: eb21ccff cmp x7, w1, sxtw #3 + 19f8: eb21d0ff cmp x7, w1, sxtw #4 + 19fc: eb21e0ff cmp x7, x1, sxtx + 1a00: eb21e0ff cmp x7, x1, sxtx + 1a04: eb21e4ff cmp x7, x1, sxtx #1 + 1a08: eb21e8ff cmp x7, x1, sxtx #2 + 1a0c: eb21ecff cmp x7, x1, sxtx #3 + 1a10: eb21f0ff cmp x7, x1, sxtx #4 + 1a14: eb0100ff cmp x7, x1 + 1a18: eb0104ff cmp x7, x1, lsl #1 + 1a1c: eb0108ff cmp x7, x1, lsl #2 + 1a20: eb010cff cmp x7, x1, lsl #3 + 1a24: eb0110ff cmp x7, x1, lsl #4 + 1a28: eb2163ff cmp sp, x1 + 1a2c: eb2103ff cmp sp, w1, uxtb + 1a30: eb2103ff cmp sp, w1, uxtb + 1a34: eb2107ff cmp sp, w1, uxtb #1 + 1a38: eb210bff cmp sp, w1, uxtb #2 + 1a3c: eb210fff cmp sp, w1, uxtb #3 + 1a40: eb2113ff cmp sp, w1, uxtb #4 + 1a44: eb2123ff cmp sp, w1, uxth + 1a48: eb2123ff cmp sp, w1, uxth + 1a4c: eb2127ff cmp sp, w1, uxth #1 + 1a50: eb212bff cmp sp, w1, uxth #2 + 1a54: eb212fff cmp sp, w1, uxth #3 + 1a58: eb2133ff cmp sp, w1, uxth #4 + 1a5c: eb2143ff cmp sp, w1, uxtw + 1a60: eb2143ff cmp sp, w1, uxtw + 1a64: eb2147ff cmp sp, w1, uxtw #1 + 1a68: eb214bff cmp sp, w1, uxtw #2 + 1a6c: eb214fff cmp sp, w1, uxtw #3 + 1a70: eb2153ff cmp sp, w1, uxtw #4 + 1a74: eb2163ff cmp sp, x1 + 1a78: eb2163ff cmp sp, x1 + 1a7c: eb2167ff cmp sp, x1, lsl #1 + 1a80: eb216bff cmp sp, x1, lsl #2 + 1a84: eb216fff cmp sp, x1, lsl #3 + 1a88: eb2173ff cmp sp, x1, lsl #4 + 1a8c: eb2183ff cmp sp, w1, sxtb + 1a90: eb2183ff cmp sp, w1, sxtb + 1a94: eb2187ff cmp sp, w1, sxtb #1 + 1a98: eb218bff cmp sp, w1, sxtb #2 + 1a9c: eb218fff cmp sp, w1, sxtb #3 + 1aa0: eb2193ff cmp sp, w1, sxtb #4 + 1aa4: eb21a3ff cmp sp, w1, sxth + 1aa8: eb21a3ff cmp sp, w1, sxth + 1aac: eb21a7ff cmp sp, w1, sxth #1 + 1ab0: eb21abff cmp sp, w1, sxth #2 + 1ab4: eb21afff cmp sp, w1, sxth #3 + 1ab8: eb21b3ff cmp sp, w1, sxth #4 + 1abc: eb21c3ff cmp sp, w1, sxtw + 1ac0: eb21c3ff cmp sp, w1, sxtw + 1ac4: eb21c7ff cmp sp, w1, sxtw #1 + 1ac8: eb21cbff cmp sp, w1, sxtw #2 + 1acc: eb21cfff cmp sp, w1, sxtw #3 + 1ad0: eb21d3ff cmp sp, w1, sxtw #4 + 1ad4: eb21e3ff cmp sp, x1, sxtx + 1ad8: eb21e3ff cmp sp, x1, sxtx + 1adc: eb21e7ff cmp sp, x1, sxtx #1 + 1ae0: eb21ebff cmp sp, x1, sxtx #2 + 1ae4: eb21efff cmp sp, x1, sxtx #3 + 1ae8: eb21f3ff cmp sp, x1, sxtx #4 + 1aec: eb2163ff cmp sp, x1 + 1af0: eb2167ff cmp sp, x1, lsl #1 + 1af4: eb216bff cmp sp, x1, lsl #2 + 1af8: eb216fff cmp sp, x1, lsl #3 + 1afc: eb2173ff cmp sp, x1, lsl #4 + 1b00: 0b0100f0 add w16, w7, w1 + 1b04: 0b0100f0 add w16, w7, w1 + 1b08: 0b0104f0 add w16, w7, w1, lsl #1 + 1b0c: 0b0108f0 add w16, w7, w1, lsl #2 + 1b10: 0b010cf0 add w16, w7, w1, lsl #3 + 1b14: 0b0110f0 add w16, w7, w1, lsl #4 + 1b18: 0b0114f0 add w16, w7, w1, lsl #5 + 1b1c: 0b0140f0 add w16, w7, w1, lsl #16 + 1b20: 0b017cf0 add w16, w7, w1, lsl #31 + 1b24: 0b4100f0 add w16, w7, w1, lsr #0 + 1b28: 0b4104f0 add w16, w7, w1, lsr #1 + 1b2c: 0b4108f0 add w16, w7, w1, lsr #2 + 1b30: 0b410cf0 add w16, w7, w1, lsr #3 + 1b34: 0b4110f0 add w16, w7, w1, lsr #4 + 1b38: 0b4114f0 add w16, w7, w1, lsr #5 + 1b3c: 0b4140f0 add w16, w7, w1, lsr #16 + 1b40: 0b417cf0 add w16, w7, w1, lsr #31 + 1b44: 0b8100f0 add w16, w7, w1, asr #0 + 1b48: 0b8104f0 add w16, w7, w1, asr #1 + 1b4c: 0b8108f0 add w16, w7, w1, asr #2 + 1b50: 0b810cf0 add w16, w7, w1, asr #3 + 1b54: 0b8110f0 add w16, w7, w1, asr #4 + 1b58: 0b8114f0 add w16, w7, w1, asr #5 + 1b5c: 0b8140f0 add w16, w7, w1, asr #16 + 1b60: 0b817cf0 add w16, w7, w1, asr #31 + 1b64: 8b0100f0 add x16, x7, x1 + 1b68: 8b0100f0 add x16, x7, x1 + 1b6c: 8b0104f0 add x16, x7, x1, lsl #1 + 1b70: 8b0108f0 add x16, x7, x1, lsl #2 + 1b74: 8b010cf0 add x16, x7, x1, lsl #3 + 1b78: 8b0110f0 add x16, x7, x1, lsl #4 + 1b7c: 8b0114f0 add x16, x7, x1, lsl #5 + 1b80: 8b0140f0 add x16, x7, x1, lsl #16 + 1b84: 8b017cf0 add x16, x7, x1, lsl #31 + 1b88: 8b01fcf0 add x16, x7, x1, lsl #63 + 1b8c: 8b4100f0 add x16, x7, x1, lsr #0 + 1b90: 8b4104f0 add x16, x7, x1, lsr #1 + 1b94: 8b4108f0 add x16, x7, x1, lsr #2 + 1b98: 8b410cf0 add x16, x7, x1, lsr #3 + 1b9c: 8b4110f0 add x16, x7, x1, lsr #4 + 1ba0: 8b4114f0 add x16, x7, x1, lsr #5 + 1ba4: 8b4140f0 add x16, x7, x1, lsr #16 + 1ba8: 8b417cf0 add x16, x7, x1, lsr #31 + 1bac: 8b41fcf0 add x16, x7, x1, lsr #63 + 1bb0: 8b8100f0 add x16, x7, x1, asr #0 + 1bb4: 8b8104f0 add x16, x7, x1, asr #1 + 1bb8: 8b8108f0 add x16, x7, x1, asr #2 + 1bbc: 8b810cf0 add x16, x7, x1, asr #3 + 1bc0: 8b8110f0 add x16, x7, x1, asr #4 + 1bc4: 8b8114f0 add x16, x7, x1, asr #5 + 1bc8: 8b8140f0 add x16, x7, x1, asr #16 + 1bcc: 8b817cf0 add x16, x7, x1, asr #31 + 1bd0: 8b81fcf0 add x16, x7, x1, asr #63 + 1bd4: 2b0100f0 adds w16, w7, w1 + 1bd8: 2b0100f0 adds w16, w7, w1 + 1bdc: 2b0104f0 adds w16, w7, w1, lsl #1 + 1be0: 2b0108f0 adds w16, w7, w1, lsl #2 + 1be4: 2b010cf0 adds w16, w7, w1, lsl #3 + 1be8: 2b0110f0 adds w16, w7, w1, lsl #4 + 1bec: 2b0114f0 adds w16, w7, w1, lsl #5 + 1bf0: 2b0140f0 adds w16, w7, w1, lsl #16 + 1bf4: 2b017cf0 adds w16, w7, w1, lsl #31 + 1bf8: 2b4100f0 adds w16, w7, w1, lsr #0 + 1bfc: 2b4104f0 adds w16, w7, w1, lsr #1 + 1c00: 2b4108f0 adds w16, w7, w1, lsr #2 + 1c04: 2b410cf0 adds w16, w7, w1, lsr #3 + 1c08: 2b4110f0 adds w16, w7, w1, lsr #4 + 1c0c: 2b4114f0 adds w16, w7, w1, lsr #5 + 1c10: 2b4140f0 adds w16, w7, w1, lsr #16 + 1c14: 2b417cf0 adds w16, w7, w1, lsr #31 + 1c18: 2b8100f0 adds w16, w7, w1, asr #0 + 1c1c: 2b8104f0 adds w16, w7, w1, asr #1 + 1c20: 2b8108f0 adds w16, w7, w1, asr #2 + 1c24: 2b810cf0 adds w16, w7, w1, asr #3 + 1c28: 2b8110f0 adds w16, w7, w1, asr #4 + 1c2c: 2b8114f0 adds w16, w7, w1, asr #5 + 1c30: 2b8140f0 adds w16, w7, w1, asr #16 + 1c34: 2b817cf0 adds w16, w7, w1, asr #31 + 1c38: ab0100f0 adds x16, x7, x1 + 1c3c: ab0100f0 adds x16, x7, x1 + 1c40: ab0104f0 adds x16, x7, x1, lsl #1 + 1c44: ab0108f0 adds x16, x7, x1, lsl #2 + 1c48: ab010cf0 adds x16, x7, x1, lsl #3 + 1c4c: ab0110f0 adds x16, x7, x1, lsl #4 + 1c50: ab0114f0 adds x16, x7, x1, lsl #5 + 1c54: ab0140f0 adds x16, x7, x1, lsl #16 + 1c58: ab017cf0 adds x16, x7, x1, lsl #31 + 1c5c: ab01fcf0 adds x16, x7, x1, lsl #63 + 1c60: ab4100f0 adds x16, x7, x1, lsr #0 + 1c64: ab4104f0 adds x16, x7, x1, lsr #1 + 1c68: ab4108f0 adds x16, x7, x1, lsr #2 + 1c6c: ab410cf0 adds x16, x7, x1, lsr #3 + 1c70: ab4110f0 adds x16, x7, x1, lsr #4 + 1c74: ab4114f0 adds x16, x7, x1, lsr #5 + 1c78: ab4140f0 adds x16, x7, x1, lsr #16 + 1c7c: ab417cf0 adds x16, x7, x1, lsr #31 + 1c80: ab41fcf0 adds x16, x7, x1, lsr #63 + 1c84: ab8100f0 adds x16, x7, x1, asr #0 + 1c88: ab8104f0 adds x16, x7, x1, asr #1 + 1c8c: ab8108f0 adds x16, x7, x1, asr #2 + 1c90: ab810cf0 adds x16, x7, x1, asr #3 + 1c94: ab8110f0 adds x16, x7, x1, asr #4 + 1c98: ab8114f0 adds x16, x7, x1, asr #5 + 1c9c: ab8140f0 adds x16, x7, x1, asr #16 + 1ca0: ab817cf0 adds x16, x7, x1, asr #31 + 1ca4: ab81fcf0 adds x16, x7, x1, asr #63 + 1ca8: 4b0100f0 sub w16, w7, w1 + 1cac: 4b0100f0 sub w16, w7, w1 + 1cb0: 4b0104f0 sub w16, w7, w1, lsl #1 + 1cb4: 4b0108f0 sub w16, w7, w1, lsl #2 + 1cb8: 4b010cf0 sub w16, w7, w1, lsl #3 + 1cbc: 4b0110f0 sub w16, w7, w1, lsl #4 + 1cc0: 4b0114f0 sub w16, w7, w1, lsl #5 + 1cc4: 4b0140f0 sub w16, w7, w1, lsl #16 + 1cc8: 4b017cf0 sub w16, w7, w1, lsl #31 + 1ccc: 4b4100f0 sub w16, w7, w1, lsr #0 + 1cd0: 4b4104f0 sub w16, w7, w1, lsr #1 + 1cd4: 4b4108f0 sub w16, w7, w1, lsr #2 + 1cd8: 4b410cf0 sub w16, w7, w1, lsr #3 + 1cdc: 4b4110f0 sub w16, w7, w1, lsr #4 + 1ce0: 4b4114f0 sub w16, w7, w1, lsr #5 + 1ce4: 4b4140f0 sub w16, w7, w1, lsr #16 + 1ce8: 4b417cf0 sub w16, w7, w1, lsr #31 + 1cec: 4b8100f0 sub w16, w7, w1, asr #0 + 1cf0: 4b8104f0 sub w16, w7, w1, asr #1 + 1cf4: 4b8108f0 sub w16, w7, w1, asr #2 + 1cf8: 4b810cf0 sub w16, w7, w1, asr #3 + 1cfc: 4b8110f0 sub w16, w7, w1, asr #4 + 1d00: 4b8114f0 sub w16, w7, w1, asr #5 + 1d04: 4b8140f0 sub w16, w7, w1, asr #16 + 1d08: 4b817cf0 sub w16, w7, w1, asr #31 + 1d0c: cb0100f0 sub x16, x7, x1 + 1d10: cb0100f0 sub x16, x7, x1 + 1d14: cb0104f0 sub x16, x7, x1, lsl #1 + 1d18: cb0108f0 sub x16, x7, x1, lsl #2 + 1d1c: cb010cf0 sub x16, x7, x1, lsl #3 + 1d20: cb0110f0 sub x16, x7, x1, lsl #4 + 1d24: cb0114f0 sub x16, x7, x1, lsl #5 + 1d28: cb0140f0 sub x16, x7, x1, lsl #16 + 1d2c: cb017cf0 sub x16, x7, x1, lsl #31 + 1d30: cb01fcf0 sub x16, x7, x1, lsl #63 + 1d34: cb4100f0 sub x16, x7, x1, lsr #0 + 1d38: cb4104f0 sub x16, x7, x1, lsr #1 + 1d3c: cb4108f0 sub x16, x7, x1, lsr #2 + 1d40: cb410cf0 sub x16, x7, x1, lsr #3 + 1d44: cb4110f0 sub x16, x7, x1, lsr #4 + 1d48: cb4114f0 sub x16, x7, x1, lsr #5 + 1d4c: cb4140f0 sub x16, x7, x1, lsr #16 + 1d50: cb417cf0 sub x16, x7, x1, lsr #31 + 1d54: cb41fcf0 sub x16, x7, x1, lsr #63 + 1d58: cb8100f0 sub x16, x7, x1, asr #0 + 1d5c: cb8104f0 sub x16, x7, x1, asr #1 + 1d60: cb8108f0 sub x16, x7, x1, asr #2 + 1d64: cb810cf0 sub x16, x7, x1, asr #3 + 1d68: cb8110f0 sub x16, x7, x1, asr #4 + 1d6c: cb8114f0 sub x16, x7, x1, asr #5 + 1d70: cb8140f0 sub x16, x7, x1, asr #16 + 1d74: cb817cf0 sub x16, x7, x1, asr #31 + 1d78: cb81fcf0 sub x16, x7, x1, asr #63 + 1d7c: 6b0100f0 subs w16, w7, w1 + 1d80: 6b0100f0 subs w16, w7, w1 + 1d84: 6b0104f0 subs w16, w7, w1, lsl #1 + 1d88: 6b0108f0 subs w16, w7, w1, lsl #2 + 1d8c: 6b010cf0 subs w16, w7, w1, lsl #3 + 1d90: 6b0110f0 subs w16, w7, w1, lsl #4 + 1d94: 6b0114f0 subs w16, w7, w1, lsl #5 + 1d98: 6b0140f0 subs w16, w7, w1, lsl #16 + 1d9c: 6b017cf0 subs w16, w7, w1, lsl #31 + 1da0: 6b4100f0 subs w16, w7, w1, lsr #0 + 1da4: 6b4104f0 subs w16, w7, w1, lsr #1 + 1da8: 6b4108f0 subs w16, w7, w1, lsr #2 + 1dac: 6b410cf0 subs w16, w7, w1, lsr #3 + 1db0: 6b4110f0 subs w16, w7, w1, lsr #4 + 1db4: 6b4114f0 subs w16, w7, w1, lsr #5 + 1db8: 6b4140f0 subs w16, w7, w1, lsr #16 + 1dbc: 6b417cf0 subs w16, w7, w1, lsr #31 + 1dc0: 6b8100f0 subs w16, w7, w1, asr #0 + 1dc4: 6b8104f0 subs w16, w7, w1, asr #1 + 1dc8: 6b8108f0 subs w16, w7, w1, asr #2 + 1dcc: 6b810cf0 subs w16, w7, w1, asr #3 + 1dd0: 6b8110f0 subs w16, w7, w1, asr #4 + 1dd4: 6b8114f0 subs w16, w7, w1, asr #5 + 1dd8: 6b8140f0 subs w16, w7, w1, asr #16 + 1ddc: 6b817cf0 subs w16, w7, w1, asr #31 + 1de0: eb0100f0 subs x16, x7, x1 + 1de4: eb0100f0 subs x16, x7, x1 + 1de8: eb0104f0 subs x16, x7, x1, lsl #1 + 1dec: eb0108f0 subs x16, x7, x1, lsl #2 + 1df0: eb010cf0 subs x16, x7, x1, lsl #3 + 1df4: eb0110f0 subs x16, x7, x1, lsl #4 + 1df8: eb0114f0 subs x16, x7, x1, lsl #5 + 1dfc: eb0140f0 subs x16, x7, x1, lsl #16 + 1e00: eb017cf0 subs x16, x7, x1, lsl #31 + 1e04: eb01fcf0 subs x16, x7, x1, lsl #63 + 1e08: eb4100f0 subs x16, x7, x1, lsr #0 + 1e0c: eb4104f0 subs x16, x7, x1, lsr #1 + 1e10: eb4108f0 subs x16, x7, x1, lsr #2 + 1e14: eb410cf0 subs x16, x7, x1, lsr #3 + 1e18: eb4110f0 subs x16, x7, x1, lsr #4 + 1e1c: eb4114f0 subs x16, x7, x1, lsr #5 + 1e20: eb4140f0 subs x16, x7, x1, lsr #16 + 1e24: eb417cf0 subs x16, x7, x1, lsr #31 + 1e28: eb41fcf0 subs x16, x7, x1, lsr #63 + 1e2c: eb8100f0 subs x16, x7, x1, asr #0 + 1e30: eb8104f0 subs x16, x7, x1, asr #1 + 1e34: eb8108f0 subs x16, x7, x1, asr #2 + 1e38: eb810cf0 subs x16, x7, x1, asr #3 + 1e3c: eb8110f0 subs x16, x7, x1, asr #4 + 1e40: eb8114f0 subs x16, x7, x1, asr #5 + 1e44: eb8140f0 subs x16, x7, x1, asr #16 + 1e48: eb817cf0 subs x16, x7, x1, asr #31 + 1e4c: eb81fcf0 subs x16, x7, x1, asr #63 + 1e50: 2b0100ff cmn w7, w1 + 1e54: 2b0100ff cmn w7, w1 + 1e58: 2b0104ff cmn w7, w1, lsl #1 + 1e5c: 2b0108ff cmn w7, w1, lsl #2 + 1e60: 2b010cff cmn w7, w1, lsl #3 + 1e64: 2b0110ff cmn w7, w1, lsl #4 + 1e68: 2b0114ff cmn w7, w1, lsl #5 + 1e6c: 2b0140ff cmn w7, w1, lsl #16 + 1e70: 2b017cff cmn w7, w1, lsl #31 + 1e74: 2b4100ff cmn w7, w1, lsr #0 + 1e78: 2b4104ff cmn w7, w1, lsr #1 + 1e7c: 2b4108ff cmn w7, w1, lsr #2 + 1e80: 2b410cff cmn w7, w1, lsr #3 + 1e84: 2b4110ff cmn w7, w1, lsr #4 + 1e88: 2b4114ff cmn w7, w1, lsr #5 + 1e8c: 2b4140ff cmn w7, w1, lsr #16 + 1e90: 2b417cff cmn w7, w1, lsr #31 + 1e94: 2b8100ff cmn w7, w1, asr #0 + 1e98: 2b8104ff cmn w7, w1, asr #1 + 1e9c: 2b8108ff cmn w7, w1, asr #2 + 1ea0: 2b810cff cmn w7, w1, asr #3 + 1ea4: 2b8110ff cmn w7, w1, asr #4 + 1ea8: 2b8114ff cmn w7, w1, asr #5 + 1eac: 2b8140ff cmn w7, w1, asr #16 + 1eb0: 2b817cff cmn w7, w1, asr #31 + 1eb4: ab0100ff cmn x7, x1 + 1eb8: ab0100ff cmn x7, x1 + 1ebc: ab0104ff cmn x7, x1, lsl #1 + 1ec0: ab0108ff cmn x7, x1, lsl #2 + 1ec4: ab010cff cmn x7, x1, lsl #3 + 1ec8: ab0110ff cmn x7, x1, lsl #4 + 1ecc: ab0114ff cmn x7, x1, lsl #5 + 1ed0: ab0140ff cmn x7, x1, lsl #16 + 1ed4: ab017cff cmn x7, x1, lsl #31 + 1ed8: ab01fcff cmn x7, x1, lsl #63 + 1edc: ab4100ff cmn x7, x1, lsr #0 + 1ee0: ab4104ff cmn x7, x1, lsr #1 + 1ee4: ab4108ff cmn x7, x1, lsr #2 + 1ee8: ab410cff cmn x7, x1, lsr #3 + 1eec: ab4110ff cmn x7, x1, lsr #4 + 1ef0: ab4114ff cmn x7, x1, lsr #5 + 1ef4: ab4140ff cmn x7, x1, lsr #16 + 1ef8: ab417cff cmn x7, x1, lsr #31 + 1efc: ab41fcff cmn x7, x1, lsr #63 + 1f00: ab8100ff cmn x7, x1, asr #0 + 1f04: ab8104ff cmn x7, x1, asr #1 + 1f08: ab8108ff cmn x7, x1, asr #2 + 1f0c: ab810cff cmn x7, x1, asr #3 + 1f10: ab8110ff cmn x7, x1, asr #4 + 1f14: ab8114ff cmn x7, x1, asr #5 + 1f18: ab8140ff cmn x7, x1, asr #16 + 1f1c: ab817cff cmn x7, x1, asr #31 + 1f20: ab81fcff cmn x7, x1, asr #63 + 1f24: 6b0100ff cmp w7, w1 + 1f28: 6b0100ff cmp w7, w1 + 1f2c: 6b0104ff cmp w7, w1, lsl #1 + 1f30: 6b0108ff cmp w7, w1, lsl #2 + 1f34: 6b010cff cmp w7, w1, lsl #3 + 1f38: 6b0110ff cmp w7, w1, lsl #4 + 1f3c: 6b0114ff cmp w7, w1, lsl #5 + 1f40: 6b0140ff cmp w7, w1, lsl #16 + 1f44: 6b017cff cmp w7, w1, lsl #31 + 1f48: 6b4100ff cmp w7, w1, lsr #0 + 1f4c: 6b4104ff cmp w7, w1, lsr #1 + 1f50: 6b4108ff cmp w7, w1, lsr #2 + 1f54: 6b410cff cmp w7, w1, lsr #3 + 1f58: 6b4110ff cmp w7, w1, lsr #4 + 1f5c: 6b4114ff cmp w7, w1, lsr #5 + 1f60: 6b4140ff cmp w7, w1, lsr #16 + 1f64: 6b417cff cmp w7, w1, lsr #31 + 1f68: 6b8100ff cmp w7, w1, asr #0 + 1f6c: 6b8104ff cmp w7, w1, asr #1 + 1f70: 6b8108ff cmp w7, w1, asr #2 + 1f74: 6b810cff cmp w7, w1, asr #3 + 1f78: 6b8110ff cmp w7, w1, asr #4 + 1f7c: 6b8114ff cmp w7, w1, asr #5 + 1f80: 6b8140ff cmp w7, w1, asr #16 + 1f84: 6b817cff cmp w7, w1, asr #31 + 1f88: eb0100ff cmp x7, x1 + 1f8c: eb0100ff cmp x7, x1 + 1f90: eb0104ff cmp x7, x1, lsl #1 + 1f94: eb0108ff cmp x7, x1, lsl #2 + 1f98: eb010cff cmp x7, x1, lsl #3 + 1f9c: eb0110ff cmp x7, x1, lsl #4 + 1fa0: eb0114ff cmp x7, x1, lsl #5 + 1fa4: eb0140ff cmp x7, x1, lsl #16 + 1fa8: eb017cff cmp x7, x1, lsl #31 + 1fac: eb01fcff cmp x7, x1, lsl #63 + 1fb0: eb4100ff cmp x7, x1, lsr #0 + 1fb4: eb4104ff cmp x7, x1, lsr #1 + 1fb8: eb4108ff cmp x7, x1, lsr #2 + 1fbc: eb410cff cmp x7, x1, lsr #3 + 1fc0: eb4110ff cmp x7, x1, lsr #4 + 1fc4: eb4114ff cmp x7, x1, lsr #5 + 1fc8: eb4140ff cmp x7, x1, lsr #16 + 1fcc: eb417cff cmp x7, x1, lsr #31 + 1fd0: eb41fcff cmp x7, x1, lsr #63 + 1fd4: eb8100ff cmp x7, x1, asr #0 + 1fd8: eb8104ff cmp x7, x1, asr #1 + 1fdc: eb8108ff cmp x7, x1, asr #2 + 1fe0: eb810cff cmp x7, x1, asr #3 + 1fe4: eb8110ff cmp x7, x1, asr #4 + 1fe8: eb8114ff cmp x7, x1, asr #5 + 1fec: eb8140ff cmp x7, x1, asr #16 + 1ff0: eb817cff cmp x7, x1, asr #31 + 1ff4: eb81fcff cmp x7, x1, asr #63 + 1ff8: 2b0100ff cmn w7, w1 + 1ffc: 2b0100ff cmn w7, w1 + 2000: 2b0104ff cmn w7, w1, lsl #1 + 2004: 2b0108ff cmn w7, w1, lsl #2 + 2008: 2b010cff cmn w7, w1, lsl #3 + 200c: 2b0110ff cmn w7, w1, lsl #4 + 2010: 2b0114ff cmn w7, w1, lsl #5 + 2014: 2b0140ff cmn w7, w1, lsl #16 + 2018: 2b017cff cmn w7, w1, lsl #31 + 201c: 2b4100ff cmn w7, w1, lsr #0 + 2020: 2b4104ff cmn w7, w1, lsr #1 + 2024: 2b4108ff cmn w7, w1, lsr #2 + 2028: 2b410cff cmn w7, w1, lsr #3 + 202c: 2b4110ff cmn w7, w1, lsr #4 + 2030: 2b4114ff cmn w7, w1, lsr #5 + 2034: 2b4140ff cmn w7, w1, lsr #16 + 2038: 2b417cff cmn w7, w1, lsr #31 + 203c: 2b8100ff cmn w7, w1, asr #0 + 2040: 2b8104ff cmn w7, w1, asr #1 + 2044: 2b8108ff cmn w7, w1, asr #2 + 2048: 2b810cff cmn w7, w1, asr #3 + 204c: 2b8110ff cmn w7, w1, asr #4 + 2050: 2b8114ff cmn w7, w1, asr #5 + 2054: 2b8140ff cmn w7, w1, asr #16 + 2058: 2b817cff cmn w7, w1, asr #31 + 205c: ab0100ff cmn x7, x1 + 2060: ab0100ff cmn x7, x1 + 2064: ab0104ff cmn x7, x1, lsl #1 + 2068: ab0108ff cmn x7, x1, lsl #2 + 206c: ab010cff cmn x7, x1, lsl #3 + 2070: ab0110ff cmn x7, x1, lsl #4 + 2074: ab0114ff cmn x7, x1, lsl #5 + 2078: ab0140ff cmn x7, x1, lsl #16 + 207c: ab017cff cmn x7, x1, lsl #31 + 2080: ab01fcff cmn x7, x1, lsl #63 + 2084: ab4100ff cmn x7, x1, lsr #0 + 2088: ab4104ff cmn x7, x1, lsr #1 + 208c: ab4108ff cmn x7, x1, lsr #2 + 2090: ab410cff cmn x7, x1, lsr #3 + 2094: ab4110ff cmn x7, x1, lsr #4 + 2098: ab4114ff cmn x7, x1, lsr #5 + 209c: ab4140ff cmn x7, x1, lsr #16 + 20a0: ab417cff cmn x7, x1, lsr #31 + 20a4: ab41fcff cmn x7, x1, lsr #63 + 20a8: ab8100ff cmn x7, x1, asr #0 + 20ac: ab8104ff cmn x7, x1, asr #1 + 20b0: ab8108ff cmn x7, x1, asr #2 + 20b4: ab810cff cmn x7, x1, asr #3 + 20b8: ab8110ff cmn x7, x1, asr #4 + 20bc: ab8114ff cmn x7, x1, asr #5 + 20c0: ab8140ff cmn x7, x1, asr #16 + 20c4: ab817cff cmn x7, x1, asr #31 + 20c8: ab81fcff cmn x7, x1, asr #63 + 20cc: 6b0100ff cmp w7, w1 + 20d0: 6b0100ff cmp w7, w1 + 20d4: 6b0104ff cmp w7, w1, lsl #1 + 20d8: 6b0108ff cmp w7, w1, lsl #2 + 20dc: 6b010cff cmp w7, w1, lsl #3 + 20e0: 6b0110ff cmp w7, w1, lsl #4 + 20e4: 6b0114ff cmp w7, w1, lsl #5 + 20e8: 6b0140ff cmp w7, w1, lsl #16 + 20ec: 6b017cff cmp w7, w1, lsl #31 + 20f0: 6b4100ff cmp w7, w1, lsr #0 + 20f4: 6b4104ff cmp w7, w1, lsr #1 + 20f8: 6b4108ff cmp w7, w1, lsr #2 + 20fc: 6b410cff cmp w7, w1, lsr #3 + 2100: 6b4110ff cmp w7, w1, lsr #4 + 2104: 6b4114ff cmp w7, w1, lsr #5 + 2108: 6b4140ff cmp w7, w1, lsr #16 + 210c: 6b417cff cmp w7, w1, lsr #31 + 2110: 6b8100ff cmp w7, w1, asr #0 + 2114: 6b8104ff cmp w7, w1, asr #1 + 2118: 6b8108ff cmp w7, w1, asr #2 + 211c: 6b810cff cmp w7, w1, asr #3 + 2120: 6b8110ff cmp w7, w1, asr #4 + 2124: 6b8114ff cmp w7, w1, asr #5 + 2128: 6b8140ff cmp w7, w1, asr #16 + 212c: 6b817cff cmp w7, w1, asr #31 + 2130: eb0100ff cmp x7, x1 + 2134: eb0100ff cmp x7, x1 + 2138: eb0104ff cmp x7, x1, lsl #1 + 213c: eb0108ff cmp x7, x1, lsl #2 + 2140: eb010cff cmp x7, x1, lsl #3 + 2144: eb0110ff cmp x7, x1, lsl #4 + 2148: eb0114ff cmp x7, x1, lsl #5 + 214c: eb0140ff cmp x7, x1, lsl #16 + 2150: eb017cff cmp x7, x1, lsl #31 + 2154: eb01fcff cmp x7, x1, lsl #63 + 2158: eb4100ff cmp x7, x1, lsr #0 + 215c: eb4104ff cmp x7, x1, lsr #1 + 2160: eb4108ff cmp x7, x1, lsr #2 + 2164: eb410cff cmp x7, x1, lsr #3 + 2168: eb4110ff cmp x7, x1, lsr #4 + 216c: eb4114ff cmp x7, x1, lsr #5 + 2170: eb4140ff cmp x7, x1, lsr #16 + 2174: eb417cff cmp x7, x1, lsr #31 + 2178: eb41fcff cmp x7, x1, lsr #63 + 217c: eb8100ff cmp x7, x1, asr #0 + 2180: eb8104ff cmp x7, x1, asr #1 + 2184: eb8108ff cmp x7, x1, asr #2 + 2188: eb810cff cmp x7, x1, asr #3 + 218c: eb8110ff cmp x7, x1, asr #4 + 2190: eb8114ff cmp x7, x1, asr #5 + 2194: eb8140ff cmp x7, x1, asr #16 + 2198: eb817cff cmp x7, x1, asr #31 + 219c: eb81fcff cmp x7, x1, asr #63 + 21a0: 4b0103e7 neg w7, w1 + 21a4: 4b0103e7 neg w7, w1 + 21a8: 4b0107e7 neg w7, w1, lsl #1 + 21ac: 4b010be7 neg w7, w1, lsl #2 + 21b0: 4b010fe7 neg w7, w1, lsl #3 + 21b4: 4b0113e7 neg w7, w1, lsl #4 + 21b8: 4b0117e7 neg w7, w1, lsl #5 + 21bc: 4b0143e7 neg w7, w1, lsl #16 + 21c0: 4b017fe7 neg w7, w1, lsl #31 + 21c4: 4b4103e7 neg w7, w1, lsr #0 + 21c8: 4b4107e7 neg w7, w1, lsr #1 + 21cc: 4b410be7 neg w7, w1, lsr #2 + 21d0: 4b410fe7 neg w7, w1, lsr #3 + 21d4: 4b4113e7 neg w7, w1, lsr #4 + 21d8: 4b4117e7 neg w7, w1, lsr #5 + 21dc: 4b4143e7 neg w7, w1, lsr #16 + 21e0: 4b417fe7 neg w7, w1, lsr #31 + 21e4: 4b8103e7 neg w7, w1, asr #0 + 21e8: 4b8107e7 neg w7, w1, asr #1 + 21ec: 4b810be7 neg w7, w1, asr #2 + 21f0: 4b810fe7 neg w7, w1, asr #3 + 21f4: 4b8113e7 neg w7, w1, asr #4 + 21f8: 4b8117e7 neg w7, w1, asr #5 + 21fc: 4b8143e7 neg w7, w1, asr #16 + 2200: 4b817fe7 neg w7, w1, asr #31 + 2204: cb0103e7 neg x7, x1 + 2208: cb0103e7 neg x7, x1 + 220c: cb0107e7 neg x7, x1, lsl #1 + 2210: cb010be7 neg x7, x1, lsl #2 + 2214: cb010fe7 neg x7, x1, lsl #3 + 2218: cb0113e7 neg x7, x1, lsl #4 + 221c: cb0117e7 neg x7, x1, lsl #5 + 2220: cb0143e7 neg x7, x1, lsl #16 + 2224: cb017fe7 neg x7, x1, lsl #31 + 2228: cb01ffe7 neg x7, x1, lsl #63 + 222c: cb4103e7 neg x7, x1, lsr #0 + 2230: cb4107e7 neg x7, x1, lsr #1 + 2234: cb410be7 neg x7, x1, lsr #2 + 2238: cb410fe7 neg x7, x1, lsr #3 + 223c: cb4113e7 neg x7, x1, lsr #4 + 2240: cb4117e7 neg x7, x1, lsr #5 + 2244: cb4143e7 neg x7, x1, lsr #16 + 2248: cb417fe7 neg x7, x1, lsr #31 + 224c: cb41ffe7 neg x7, x1, lsr #63 + 2250: cb8103e7 neg x7, x1, asr #0 + 2254: cb8107e7 neg x7, x1, asr #1 + 2258: cb810be7 neg x7, x1, asr #2 + 225c: cb810fe7 neg x7, x1, asr #3 + 2260: cb8113e7 neg x7, x1, asr #4 + 2264: cb8117e7 neg x7, x1, asr #5 + 2268: cb8143e7 neg x7, x1, asr #16 + 226c: cb817fe7 neg x7, x1, asr #31 + 2270: cb81ffe7 neg x7, x1, asr #63 + 2274: 6b0103e7 negs w7, w1 + 2278: 6b0103e7 negs w7, w1 + 227c: 6b0107e7 negs w7, w1, lsl #1 + 2280: 6b010be7 negs w7, w1, lsl #2 + 2284: 6b010fe7 negs w7, w1, lsl #3 + 2288: 6b0113e7 negs w7, w1, lsl #4 + 228c: 6b0117e7 negs w7, w1, lsl #5 + 2290: 6b0143e7 negs w7, w1, lsl #16 + 2294: 6b017fe7 negs w7, w1, lsl #31 + 2298: 6b4103e7 negs w7, w1, lsr #0 + 229c: 6b4107e7 negs w7, w1, lsr #1 + 22a0: 6b410be7 negs w7, w1, lsr #2 + 22a4: 6b410fe7 negs w7, w1, lsr #3 + 22a8: 6b4113e7 negs w7, w1, lsr #4 + 22ac: 6b4117e7 negs w7, w1, lsr #5 + 22b0: 6b4143e7 negs w7, w1, lsr #16 + 22b4: 6b417fe7 negs w7, w1, lsr #31 + 22b8: 6b8103e7 negs w7, w1, asr #0 + 22bc: 6b8107e7 negs w7, w1, asr #1 + 22c0: 6b810be7 negs w7, w1, asr #2 + 22c4: 6b810fe7 negs w7, w1, asr #3 + 22c8: 6b8113e7 negs w7, w1, asr #4 + 22cc: 6b8117e7 negs w7, w1, asr #5 + 22d0: 6b8143e7 negs w7, w1, asr #16 + 22d4: 6b817fe7 negs w7, w1, asr #31 + 22d8: eb0103e7 negs x7, x1 + 22dc: eb0103e7 negs x7, x1 + 22e0: eb0107e7 negs x7, x1, lsl #1 + 22e4: eb010be7 negs x7, x1, lsl #2 + 22e8: eb010fe7 negs x7, x1, lsl #3 + 22ec: eb0113e7 negs x7, x1, lsl #4 + 22f0: eb0117e7 negs x7, x1, lsl #5 + 22f4: eb0143e7 negs x7, x1, lsl #16 + 22f8: eb017fe7 negs x7, x1, lsl #31 + 22fc: eb01ffe7 negs x7, x1, lsl #63 + 2300: eb4103e7 negs x7, x1, lsr #0 + 2304: eb4107e7 negs x7, x1, lsr #1 + 2308: eb410be7 negs x7, x1, lsr #2 + 230c: eb410fe7 negs x7, x1, lsr #3 + 2310: eb4113e7 negs x7, x1, lsr #4 + 2314: eb4117e7 negs x7, x1, lsr #5 + 2318: eb4143e7 negs x7, x1, lsr #16 + 231c: eb417fe7 negs x7, x1, lsr #31 + 2320: eb41ffe7 negs x7, x1, lsr #63 + 2324: eb8103e7 negs x7, x1, asr #0 + 2328: eb8107e7 negs x7, x1, asr #1 + 232c: eb810be7 negs x7, x1, asr #2 + 2330: eb810fe7 negs x7, x1, asr #3 + 2334: eb8113e7 negs x7, x1, asr #4 + 2338: eb8117e7 negs x7, x1, asr #5 + 233c: eb8143e7 negs x7, x1, asr #16 + 2340: eb817fe7 negs x7, x1, asr #31 + 2344: eb81ffe7 negs x7, x1, asr #63 + 2348: 4b0103e7 neg w7, w1 + 234c: 4b0103e7 neg w7, w1 + 2350: 4b0107e7 neg w7, w1, lsl #1 + 2354: 4b010be7 neg w7, w1, lsl #2 + 2358: 4b010fe7 neg w7, w1, lsl #3 + 235c: 4b0113e7 neg w7, w1, lsl #4 + 2360: 4b0117e7 neg w7, w1, lsl #5 + 2364: 4b0143e7 neg w7, w1, lsl #16 + 2368: 4b017fe7 neg w7, w1, lsl #31 + 236c: 4b4103e7 neg w7, w1, lsr #0 + 2370: 4b4107e7 neg w7, w1, lsr #1 + 2374: 4b410be7 neg w7, w1, lsr #2 + 2378: 4b410fe7 neg w7, w1, lsr #3 + 237c: 4b4113e7 neg w7, w1, lsr #4 + 2380: 4b4117e7 neg w7, w1, lsr #5 + 2384: 4b4143e7 neg w7, w1, lsr #16 + 2388: 4b417fe7 neg w7, w1, lsr #31 + 238c: 4b8103e7 neg w7, w1, asr #0 + 2390: 4b8107e7 neg w7, w1, asr #1 + 2394: 4b810be7 neg w7, w1, asr #2 + 2398: 4b810fe7 neg w7, w1, asr #3 + 239c: 4b8113e7 neg w7, w1, asr #4 + 23a0: 4b8117e7 neg w7, w1, asr #5 + 23a4: 4b8143e7 neg w7, w1, asr #16 + 23a8: 4b817fe7 neg w7, w1, asr #31 + 23ac: cb0103e7 neg x7, x1 + 23b0: cb0103e7 neg x7, x1 + 23b4: cb0107e7 neg x7, x1, lsl #1 + 23b8: cb010be7 neg x7, x1, lsl #2 + 23bc: cb010fe7 neg x7, x1, lsl #3 + 23c0: cb0113e7 neg x7, x1, lsl #4 + 23c4: cb0117e7 neg x7, x1, lsl #5 + 23c8: cb0143e7 neg x7, x1, lsl #16 + 23cc: cb017fe7 neg x7, x1, lsl #31 + 23d0: cb01ffe7 neg x7, x1, lsl #63 + 23d4: cb4103e7 neg x7, x1, lsr #0 + 23d8: cb4107e7 neg x7, x1, lsr #1 + 23dc: cb410be7 neg x7, x1, lsr #2 + 23e0: cb410fe7 neg x7, x1, lsr #3 + 23e4: cb4113e7 neg x7, x1, lsr #4 + 23e8: cb4117e7 neg x7, x1, lsr #5 + 23ec: cb4143e7 neg x7, x1, lsr #16 + 23f0: cb417fe7 neg x7, x1, lsr #31 + 23f4: cb41ffe7 neg x7, x1, lsr #63 + 23f8: cb8103e7 neg x7, x1, asr #0 + 23fc: cb8107e7 neg x7, x1, asr #1 + 2400: cb810be7 neg x7, x1, asr #2 + 2404: cb810fe7 neg x7, x1, asr #3 + 2408: cb8113e7 neg x7, x1, asr #4 + 240c: cb8117e7 neg x7, x1, asr #5 + 2410: cb8143e7 neg x7, x1, asr #16 + 2414: cb817fe7 neg x7, x1, asr #31 + 2418: cb81ffe7 neg x7, x1, asr #63 + 241c: 6b0103e7 negs w7, w1 + 2420: 6b0103e7 negs w7, w1 + 2424: 6b0107e7 negs w7, w1, lsl #1 + 2428: 6b010be7 negs w7, w1, lsl #2 + 242c: 6b010fe7 negs w7, w1, lsl #3 + 2430: 6b0113e7 negs w7, w1, lsl #4 + 2434: 6b0117e7 negs w7, w1, lsl #5 + 2438: 6b0143e7 negs w7, w1, lsl #16 + 243c: 6b017fe7 negs w7, w1, lsl #31 + 2440: 6b4103e7 negs w7, w1, lsr #0 + 2444: 6b4107e7 negs w7, w1, lsr #1 + 2448: 6b410be7 negs w7, w1, lsr #2 + 244c: 6b410fe7 negs w7, w1, lsr #3 + 2450: 6b4113e7 negs w7, w1, lsr #4 + 2454: 6b4117e7 negs w7, w1, lsr #5 + 2458: 6b4143e7 negs w7, w1, lsr #16 + 245c: 6b417fe7 negs w7, w1, lsr #31 + 2460: 6b8103e7 negs w7, w1, asr #0 + 2464: 6b8107e7 negs w7, w1, asr #1 + 2468: 6b810be7 negs w7, w1, asr #2 + 246c: 6b810fe7 negs w7, w1, asr #3 + 2470: 6b8113e7 negs w7, w1, asr #4 + 2474: 6b8117e7 negs w7, w1, asr #5 + 2478: 6b8143e7 negs w7, w1, asr #16 + 247c: 6b817fe7 negs w7, w1, asr #31 + 2480: eb0103e7 negs x7, x1 + 2484: eb0103e7 negs x7, x1 + 2488: eb0107e7 negs x7, x1, lsl #1 + 248c: eb010be7 negs x7, x1, lsl #2 + 2490: eb010fe7 negs x7, x1, lsl #3 + 2494: eb0113e7 negs x7, x1, lsl #4 + 2498: eb0117e7 negs x7, x1, lsl #5 + 249c: eb0143e7 negs x7, x1, lsl #16 + 24a0: eb017fe7 negs x7, x1, lsl #31 + 24a4: eb01ffe7 negs x7, x1, lsl #63 + 24a8: eb4103e7 negs x7, x1, lsr #0 + 24ac: eb4107e7 negs x7, x1, lsr #1 + 24b0: eb410be7 negs x7, x1, lsr #2 + 24b4: eb410fe7 negs x7, x1, lsr #3 + 24b8: eb4113e7 negs x7, x1, lsr #4 + 24bc: eb4117e7 negs x7, x1, lsr #5 + 24c0: eb4143e7 negs x7, x1, lsr #16 + 24c4: eb417fe7 negs x7, x1, lsr #31 + 24c8: eb41ffe7 negs x7, x1, lsr #63 + 24cc: eb8103e7 negs x7, x1, asr #0 + 24d0: eb8107e7 negs x7, x1, asr #1 + 24d4: eb810be7 negs x7, x1, asr #2 + 24d8: eb810fe7 negs x7, x1, asr #3 + 24dc: eb8113e7 negs x7, x1, asr #4 + 24e0: eb8117e7 negs x7, x1, asr #5 + 24e4: eb8143e7 negs x7, x1, asr #16 + 24e8: eb817fe7 negs x7, x1, asr #31 + 24ec: eb81ffe7 negs x7, x1, asr #63 diff --git a/gas/testsuite/gas/aarch64/addsub.s b/gas/testsuite/gas/aarch64/addsub.s new file mode 100644 index 0000000..568bbce --- /dev/null +++ b/gas/testsuite/gas/aarch64/addsub.s @@ -0,0 +1,224 @@ +/* addsub.s Test file for AArch64 add-subtract instructions. + + Copyright 2012 Free Software Foundation, Inc. + Contributed by ARM Ltd. + + This file is part of GAS. + + GAS 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. + + GAS 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; see the file COPYING3. If not, + see <http://www.gnu.org/licenses/>. */ + +// TODO: also cover the addsub_imm instructions. + + /* + * Adjust Rm + */ + .macro adjust_rm op, rd, rn, rm_r, rm_n, extend, amount + // for 64-bit instruction, Rm is Xm when <extend> is explicitely + // or implicitly UXTX, SXTX or LSL; otherwise it Wm. + .ifc \rm_r, X + .ifnc \extend, UXTX + .ifnc \extend, SXTX + .ifnc \extend, LSL + .ifb \amount + \op \rd, \rn, W\()\rm_n, \extend + .else + \op \rd, \rn, W\()\rm_n, \extend #\amount + .endif + .exitm + .endif + .endif + .endif + .endif + + .ifb \amount + \op \rd, \rn, \rm_r\()\rm_n, \extend + .else + \op \rd, \rn, \rm_r\()\rm_n, \extend #\amount + .endif + .endm + + /* + * Emitting addsub_ext instruction + */ + .macro do_addsub_ext type, op, Rn, reg, extend, amount + .ifc \type, 0 + // normal add/adds/sub/subs + .ifb \extend + \op \reg\()16, \Rn, \reg\()1 + .else + .ifb \amount + adjust_rm \op, \reg\()16, \Rn, \reg, 1, \extend + .else + adjust_rm \op, \reg\()16, \Rn, \reg, 1, \extend, \amount + .endif + .endif + .else + .ifc \type, 1 + // adds/subs with ZR as Rd + .ifb \extend + \op \reg\()ZR, \Rn, \reg\()1 + .else + .ifb \amount + adjust_rm \op, \reg\()ZR, \Rn, \reg, 1, \extend + .else + adjust_rm \op, \reg\()ZR, \Rn, \reg, 1, \extend, \amount + .endif + .endif + .else + // cmn/cmp + .ifb \extend + \op \Rn, \reg\()1 + .else + .ifb \amount + \op \Rn, \reg\()1, \extend + .else + \op \Rn, \reg\()1, \extend #\amount + .endif + .endif + .endif + .endif + .endm + + /* + * Optional extension and optional shift amount + */ + .macro do_extend type, op, Rn, reg + // <extend> absent + // note that when SP is not used, the GAS will encode it as addsub_shift + do_addsub_ext \type, \op, \Rn, \reg + // optional absent <amount> + .irp extend, UXTB, UXTH, UXTW, UXTX, SXTB, SXTH, SXTW, SXTX + .irp amount, , 0, 1, 2, 3, 4 + do_addsub_ext \type, \op, \Rn, \reg, \extend, \amount + .endr + .endr + // when <extend> is LSL, <amount> cannot be absent + // note that when SP is not used, the GAS will encode it as addsub_shift + .irp amount, 0, 1, 2, 3, 4 + do_addsub_ext \type, \op, \Rn, \reg, LSL, \amount + .endr + .endm + + /* + * Leaf macro emitting addsub_shift instruction + */ + .macro do_addsub_shift type, op, R, reg, shift, amount + .ifc \type, 0 + // normal add/adds/sub/subs + .ifb \shift + \op \reg\()16, \R, \reg\()1 + .else + \op \reg\()16, \R, \reg\()1, \shift #\amount + .endif + .else + .ifc \type, 1 + // adds/subs with ZR as Rd + .ifb \shift + \op \reg\()ZR, \R, \reg\()1 + .else + \op \reg\()ZR, \R, \reg\()1, \shift #\amount + .endif + .else + .ifc \type, 2 + // cmn/cmp/neg/negs + .ifb \shift + \op \R, \reg\()1 + .else + \op \R, \reg\()1, \shift #\amount + .endif + .else + // sub/subs with ZR as Rn + .ifb \shift + \op \R, \reg\()ZR, \reg\()1 + .else + \op \R, \reg\()ZR, \reg\()1, \shift #\amount + .endif + .endif + .endif + .endif + .endm + + /* + * Optional shift and optional shift amount + */ + .macro do_shift type, op, R, reg + // <shift> absent + do_addsub_shift \type, \op, \R, \reg + // optional absent <amount> + .irp shift, LSL, LSR, ASR + .irp amount, 0, 1, 2, 3, 4, 5, 16, 31 + // amount cannot be absent when shift is present. + do_addsub_shift \type, \op, \R, \reg, \shift, \amount + .endr + .ifc \reg, X + do_addsub_shift \type, \op, \R, \reg, \shift, 63 + .endif + .endr + .endm + +func: + /* + * Add-subtract (extended register) + */ + + .irp op, ADD, ADDS, SUB, SUBS + do_extend 0, \op, W7, W + do_extend 0, \op, WSP, W + do_extend 0, \op, X7, X + do_extend 0, \op, SP, X + .endr + + .irp op, ADDS, SUBS + do_extend 1, \op, W7, W + do_extend 1, \op, WSP, W + do_extend 1, \op, X7, X + do_extend 1, \op, SP, X + .endr + + .irp op, CMN, CMP + do_extend 2, \op, W7, W + do_extend 2, \op, WSP, W + do_extend 2, \op, X7, X + do_extend 2, \op, SP, X + .endr + + /* + * Add-subtract (shift register) + */ + + .irp op, ADD, ADDS, SUB, SUBS + do_shift 0, \op, W7, W + do_shift 0, \op, X7, X + .endr + + .irp op, ADDS, SUBS + do_shift 1, \op, W7, W + do_shift 1, \op, X7, X + .endr + + .irp op, CMN, CMP + do_shift 2, \op, W7, W + do_shift 2, \op, X7, X + .endr + + .irp op, SUB, SUBS + do_shift 3, \op, W7, W + do_shift 3, \op, X7, X + .endr + + .irp op, NEG, NEGS + do_shift 2, \op, W7, W + do_shift 2, \op, X7, X + .endr diff --git a/gas/testsuite/gas/aarch64/advsimd-across.d b/gas/testsuite/gas/aarch64/advsimd-across.d new file mode 100644 index 0000000..b099ce0 --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsimd-across.d @@ -0,0 +1,46 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: 0e303be7 saddlv h7, v31.8b + 4: 4e303be7 saddlv h7, v31.16b + 8: 0e703be7 saddlv s7, v31.4h + c: 4e703be7 saddlv s7, v31.8h + 10: 4eb03be7 saddlv d7, v31.4s + 14: 2e303be7 uaddlv h7, v31.8b + 18: 6e303be7 uaddlv h7, v31.16b + 1c: 2e703be7 uaddlv s7, v31.4h + 20: 6e703be7 uaddlv s7, v31.8h + 24: 6eb03be7 uaddlv d7, v31.4s + 28: 0e30abe7 smaxv b7, v31.8b + 2c: 4e30abe7 smaxv b7, v31.16b + 30: 0e70abe7 smaxv h7, v31.4h + 34: 4e70abe7 smaxv h7, v31.8h + 38: 4eb0abe7 smaxv s7, v31.4s + 3c: 2e30abe7 umaxv b7, v31.8b + 40: 6e30abe7 umaxv b7, v31.16b + 44: 2e70abe7 umaxv h7, v31.4h + 48: 6e70abe7 umaxv h7, v31.8h + 4c: 6eb0abe7 umaxv s7, v31.4s + 50: 0e31abe7 sminv b7, v31.8b + 54: 4e31abe7 sminv b7, v31.16b + 58: 0e71abe7 sminv h7, v31.4h + 5c: 4e71abe7 sminv h7, v31.8h + 60: 4eb1abe7 sminv s7, v31.4s + 64: 2e31abe7 uminv b7, v31.8b + 68: 6e31abe7 uminv b7, v31.16b + 6c: 2e71abe7 uminv h7, v31.4h + 70: 6e71abe7 uminv h7, v31.8h + 74: 6eb1abe7 uminv s7, v31.4s + 78: 0e31bbe7 addv b7, v31.8b + 7c: 4e31bbe7 addv b7, v31.16b + 80: 0e71bbe7 addv h7, v31.4h + 84: 4e71bbe7 addv h7, v31.8h + 88: 4eb1bbe7 addv s7, v31.4s + 8c: 6e30cbe7 fmaxnmv s7, v31.4s + 90: 6eb0cbe7 fminnmv s7, v31.4s + 94: 6e30fbe7 fmaxv s7, v31.4s + 98: 6eb0fbe7 fminv s7, v31.4s diff --git a/gas/testsuite/gas/aarch64/advsimd-across.s b/gas/testsuite/gas/aarch64/advsimd-across.s new file mode 100644 index 0000000..b8c7d27 --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsimd-across.s @@ -0,0 +1,46 @@ +/* advsimd-across.s Test file for AArch64 Advanced-SIMD across + instructions. + + Copyright 2011, 2012 Free Software Foundation, Inc. + Contributed by ARM Ltd. + + This file is part of GAS. + + GAS 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. + + GAS 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; see the file COPYING3. If not, + see <http://www.gnu.org/licenses/>. */ + + .macro asimdall op, V, T + \op \V\()7, v31.\()\T + .endm + +.text + .irp op, saddlv, uaddlv + asimdall \op, h, 8b + asimdall \op, h, 16b + asimdall \op, s, 4h + asimdall \op, s, 8h + asimdall \op, d, 4s + .endr + + .irp op, smaxv, umaxv, sminv, uminv, addv + asimdall \op, b, 8b + asimdall \op, b, 16b + asimdall \op, h, 4h + asimdall \op, h, 8h + asimdall \op, s, 4s + .endr + + .irp op, fmaxnmv, fminnmv, fmaxv, fminv + asimdall \op, s, 4s + .endr diff --git a/gas/testsuite/gas/aarch64/advsimd-misc.d b/gas/testsuite/gas/aarch64/advsimd-misc.d new file mode 100644 index 0000000..e4de2c6 --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsimd-misc.d @@ -0,0 +1,35 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: 0e20bbe0 abs v0.8b, v31.8b + 4: 4e20bbe0 abs v0.16b, v31.16b + 8: 0e60bbe0 abs v0.4h, v31.4h + c: 4e60bbe0 abs v0.8h, v31.8h + 10: 0ea0bbe0 abs v0.2s, v31.2s + 14: 4ea0bbe0 abs v0.4s, v31.4s + 18: 4ee0bbe0 abs v0.2d, v31.2d + 1c: 2e20bbe0 neg v0.8b, v31.8b + 20: 6e20bbe0 neg v0.16b, v31.16b + 24: 2e60bbe0 neg v0.4h, v31.4h + 28: 6e60bbe0 neg v0.8h, v31.8h + 2c: 2ea0bbe0 neg v0.2s, v31.2s + 30: 6ea0bbe0 neg v0.4s, v31.4s + 34: 6ee0bbe0 neg v0.2d, v31.2d + 38: 0e207be0 sqabs v0.8b, v31.8b + 3c: 4e207be0 sqabs v0.16b, v31.16b + 40: 0e607be0 sqabs v0.4h, v31.4h + 44: 4e607be0 sqabs v0.8h, v31.8h + 48: 0ea07be0 sqabs v0.2s, v31.2s + 4c: 4ea07be0 sqabs v0.4s, v31.4s + 50: 4ee07be0 sqabs v0.2d, v31.2d + 54: 2e207be0 sqneg v0.8b, v31.8b + 58: 6e207be0 sqneg v0.16b, v31.16b + 5c: 2e607be0 sqneg v0.4h, v31.4h + 60: 6e607be0 sqneg v0.8h, v31.8h + 64: 2ea07be0 sqneg v0.2s, v31.2s + 68: 6ea07be0 sqneg v0.4s, v31.4s + 6c: 6ee07be0 sqneg v0.2d, v31.2d diff --git a/gas/testsuite/gas/aarch64/advsimd-misc.s b/gas/testsuite/gas/aarch64/advsimd-misc.s new file mode 100644 index 0000000..a9402e49 --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsimd-misc.s @@ -0,0 +1,32 @@ +/* advsimd-abs.s Test file for AArch64 Advanced-SIMD Integer absolute + instruction. + + Copyright 2011, 2012 Free Software Foundation, Inc. + Contributed by ARM Ltd. + + This file is part of GAS. + + GAS 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. + + GAS 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; see the file COPYING3. If not, + see <http://www.gnu.org/licenses/>. */ + + .macro asimdabs op, T + \op v0.\()\T, v31.\()\T + .endm + + .text + .irp op, abs, neg, sqabs, sqneg + .irp type, 8b, 16b, 4h, 8h, 2s, 4s, 2d + asimdabs \op \type + .endr + .endr diff --git a/gas/testsuite/gas/aarch64/advsisd-copy.d b/gas/testsuite/gas/aarch64/advsisd-copy.d new file mode 100644 index 0000000..c90dc87 --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsisd-copy.d @@ -0,0 +1,67 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: 5e0104ff mov b31, v7.b\[0\] + 4: 5e0304ff mov b31, v7.b\[1\] + 8: 5e0504ff mov b31, v7.b\[2\] + c: 5e0704ff mov b31, v7.b\[3\] + 10: 5e0904ff mov b31, v7.b\[4\] + 14: 5e0b04ff mov b31, v7.b\[5\] + 18: 5e0d04ff mov b31, v7.b\[6\] + 1c: 5e0f04ff mov b31, v7.b\[7\] + 20: 5e1104ff mov b31, v7.b\[8\] + 24: 5e1304ff mov b31, v7.b\[9\] + 28: 5e1504ff mov b31, v7.b\[10\] + 2c: 5e1704ff mov b31, v7.b\[11\] + 30: 5e1904ff mov b31, v7.b\[12\] + 34: 5e1b04ff mov b31, v7.b\[13\] + 38: 5e1d04ff mov b31, v7.b\[14\] + 3c: 5e1f04ff mov b31, v7.b\[15\] + 40: 5e0204ff mov h31, v7.h\[0\] + 44: 5e0604ff mov h31, v7.h\[1\] + 48: 5e0a04ff mov h31, v7.h\[2\] + 4c: 5e0e04ff mov h31, v7.h\[3\] + 50: 5e1204ff mov h31, v7.h\[4\] + 54: 5e1604ff mov h31, v7.h\[5\] + 58: 5e1a04ff mov h31, v7.h\[6\] + 5c: 5e1e04ff mov h31, v7.h\[7\] + 60: 5e0404ff mov s31, v7.s\[0\] + 64: 5e0c04ff mov s31, v7.s\[1\] + 68: 5e1404ff mov s31, v7.s\[2\] + 6c: 5e1c04ff mov s31, v7.s\[3\] + 70: 5e0804ff mov d31, v7.d\[0\] + 74: 5e1804ff mov d31, v7.d\[1\] + 78: 5e0104ff mov b31, v7.b\[0\] + 7c: 5e0304ff mov b31, v7.b\[1\] + 80: 5e0504ff mov b31, v7.b\[2\] + 84: 5e0704ff mov b31, v7.b\[3\] + 88: 5e0904ff mov b31, v7.b\[4\] + 8c: 5e0b04ff mov b31, v7.b\[5\] + 90: 5e0d04ff mov b31, v7.b\[6\] + 94: 5e0f04ff mov b31, v7.b\[7\] + 98: 5e1104ff mov b31, v7.b\[8\] + 9c: 5e1304ff mov b31, v7.b\[9\] + a0: 5e1504ff mov b31, v7.b\[10\] + a4: 5e1704ff mov b31, v7.b\[11\] + a8: 5e1904ff mov b31, v7.b\[12\] + ac: 5e1b04ff mov b31, v7.b\[13\] + b0: 5e1d04ff mov b31, v7.b\[14\] + b4: 5e1f04ff mov b31, v7.b\[15\] + b8: 5e0204ff mov h31, v7.h\[0\] + bc: 5e0604ff mov h31, v7.h\[1\] + c0: 5e0a04ff mov h31, v7.h\[2\] + c4: 5e0e04ff mov h31, v7.h\[3\] + c8: 5e1204ff mov h31, v7.h\[4\] + cc: 5e1604ff mov h31, v7.h\[5\] + d0: 5e1a04ff mov h31, v7.h\[6\] + d4: 5e1e04ff mov h31, v7.h\[7\] + d8: 5e0404ff mov s31, v7.s\[0\] + dc: 5e0c04ff mov s31, v7.s\[1\] + e0: 5e1404ff mov s31, v7.s\[2\] + e4: 5e1c04ff mov s31, v7.s\[3\] + e8: 5e0804ff mov d31, v7.d\[0\] + ec: 5e1804ff mov d31, v7.d\[1\] diff --git a/gas/testsuite/gas/aarch64/advsisd-copy.s b/gas/testsuite/gas/aarch64/advsisd-copy.s new file mode 100644 index 0000000..a76865f --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsisd-copy.s @@ -0,0 +1,39 @@ +/* advsisd-copy.s Test file for AArch64 Advanced-SISD copy instructions. + + Copyright 2011, 2012 Free Software Foundation, Inc. + Contributed by ARM Ltd. + + This file is part of GAS. + + GAS 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. + + GAS 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; see the file COPYING3. If not, + see <http://www.gnu.org/licenses/>. */ + + .macro element2scalar op, type, index + \op \type\()31, V7.\type[\index] + .endm + + .macro iterate op, type, from, to + element2scalar \op, \type, \from + .if \to-\from + iterate \op, \type, "(\from+1)", \to + .endif + .endm + +.text + .irp op, dup, mov + iterate \op, b, 0, 15 + iterate \op, h, 0, 7 + iterate \op, s, 0, 3 + iterate \op, d, 0, 1 + .endr diff --git a/gas/testsuite/gas/aarch64/advsisd-misc.d b/gas/testsuite/gas/aarch64/advsisd-misc.d new file mode 100644 index 0000000..c07002c --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsisd-misc.d @@ -0,0 +1,17 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: 5ee0bbe0 abs d0, d31 + 4: 7ee0bbe0 neg d0, d31 + 8: 5e207be0 sqabs b0, b31 + c: 7e207be0 sqneg b0, b31 + 10: 5e607be0 sqabs h0, h31 + 14: 7e607be0 sqneg h0, h31 + 18: 5ea07be0 sqabs s0, s31 + 1c: 7ea07be0 sqneg s0, s31 + 20: 5ee07be0 sqabs d0, d31 + 24: 7ee07be0 sqneg d0, d31 diff --git a/gas/testsuite/gas/aarch64/advsisd-misc.s b/gas/testsuite/gas/aarch64/advsisd-misc.s new file mode 100644 index 0000000..50754f5 --- /dev/null +++ b/gas/testsuite/gas/aarch64/advsisd-misc.s @@ -0,0 +1,36 @@ +/* advsimd-abs.s Test file for AArch64 AdvSISD Scalar Misc + instructions. + + Copyright 2011, 2012 Free Software Foundation, Inc. + Contributed by ARM Ltd. + + This file is part of GAS. + + GAS 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. + + GAS 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; see the file COPYING3. If not, + see <http://www.gnu.org/licenses/>. */ + + .macro asisd op T + \op \T\()0, \T\()31 + .endm + + .text + .irp op, abs, neg + asisd \op d + .endr + + .irp type, b, h, s, d + .irp op, sqabs, sqneg + asisd \op \type + .endr + .endr diff --git a/gas/testsuite/gas/aarch64/alias.d b/gas/testsuite/gas/aarch64/alias.d new file mode 100644 index 0000000..ddc2157 --- /dev/null +++ b/gas/testsuite/gas/aarch64/alias.d @@ -0,0 +1,74 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: 13823c20 extr w0, w1, w2, #15 + 4: 93c23c20 extr x0, x1, x2, #15 + 8: 13831c60 ror w0, w3, #7 + c: 93c51ca0 ror x0, x5, #7 + 10: 138748e6 ror w6, w7, #18 + 14: 93c7a0e6 ror x6, x7, #40 + 18: 1b020c20 madd w0, w1, w2, w3 + 1c: 1b027c20 mul w0, w1, w2 + 20: 1b027c20 mul w0, w1, w2 + 24: 9b028c20 msub x0, x1, x2, x3 + 28: 9b02fc20 mneg x0, x1, x2 + 2c: 9b02fc20 mneg x0, x1, x2 + 30: 9b220c20 smaddl x0, w1, w2, x3 + 34: 9b227c20 smull x0, w1, w2 + 38: 9b227c20 smull x0, w1, w2 + 3c: 9b228c20 smsubl x0, w1, w2, x3 + 40: 9b22fc20 smnegl x0, w1, w2 + 44: 9b22fc20 smnegl x0, w1, w2 + 48: 9ba20c20 umaddl x0, w1, w2, x3 + 4c: 9ba27c20 umull x0, w1, w2 + 50: 9ba27c20 umull x0, w1, w2 + 54: 9ba28c20 umsubl x0, w1, w2, x3 + 58: 9ba2fc20 umnegl x0, w1, w2 + 5c: 9ba2fc20 umnegl x0, w1, w2 + 60: 1a9f0420 csinc w0, w1, wzr, eq + 64: 1a810420 cinc w0, w1, ne + 68: 1a810420 cinc w0, w1, ne + 6c: 1a9f37e0 cset w0, cs + 70: 1a9f37e0 cset w0, cs + 74: da9f2020 csinv x0, x1, xzr, cs + 78: da812020 cinv x0, x1, cc + 7c: da812020 cinv x0, x1, cc + 80: da9f43e0 csetm x0, pl + 84: da9f43e0 csetm x0, pl + 88: da9eb7e0 csneg x0, xzr, x30, lt + 8c: da9eb7c0 cneg x0, x30, ge + 90: da9eb7c0 cneg x0, x30, ge + 94: ea020020 ands x0, x1, x2 + 98: ea02003f tst x1, x2 + 9c: ea02003f tst x1, x2 + a0: 6ac27c3f tst w1, w2, ror #31 + a4: 6ac27c3f tst w1, w2, ror #31 + a8: aa220020 orn x0, x1, x2 + ac: aa22003f orn xzr, x1, x2 + b0: aa2203e0 mvn x0, x2 + b4: aa2203e0 mvn x0, x2 + b8: 2aa23c3f orn wzr, w1, w2, asr #15 + bc: 2aa23fe0 mvn w0, w2, asr #15 + c0: 2aa23fe0 mvn w0, w2, asr #15 + c4: 0ea11c20 mov v0.8b, v1.8b + c8: 0ea21c20 orr v0.8b, v1.8b, v2.8b + cc: 0ea11c20 mov v0.8b, v1.8b + d0: aa1103e3 mov x3, x17 + d4: aa110003 orr x3, x0, x17 + d8: aa1103e3 mov x3, x17 + dc: 92628421 and x1, x1, #0xffffffffc0000000 + e0: 927ef800 and x0, x0, #0xfffffffffffffffd + e4: 121e7800 and w0, w0, #0xfffffffd + e8: 721d1f1f tst w24, #0x7f8 + ec: 721d1f00 ands w0, w24, #0x7f8 + f0: 721d1f1f tst w24, #0x7f8 + f4: 7100807f cmp w3, #0x20 + f8: 710083e3 subs w3, wsp, #0x20 + fc: 7100807f cmp w3, #0x20 + 100: b13ffdff cmn x15, #0xfff + 104: f13fffef subs x15, sp, #0xfff + 108: b13ffdff cmn x15, #0xfff diff --git a/gas/testsuite/gas/aarch64/alias.s b/gas/testsuite/gas/aarch64/alias.s new file mode 100644 index 0000000..c2b71b9 --- /dev/null +++ b/gas/testsuite/gas/aarch64/alias.s @@ -0,0 +1,101 @@ +/* alias.s Test file for AArch64 instructions aliases or disassembly + preference. It is also used to test the -Mno-aliases option in + the disassemler. + + Copyright 2012 Free Software Foundation, Inc. + Contributed by ARM Ltd. + + This file is part of GAS. + + GAS 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. + + GAS 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; see the file COPYING3. If not, + see <http://www.gnu.org/licenses/>. */ + +.text + extr w0, w1, w2, #15 + extr x0, x1, x2, #15 + extr w0, w3, w3, #7 + extr x0, x5, x5, #7 + ror w6, w7, #18 + ror x6, x7, #40 + + madd w0, w1, w2, w3 + madd w0, w1, w2, wzr + mul w0, w1, w2 + msub x0, x1, x2, x3 + msub x0, x1, x2, xzr + mneg x0, x1, x2 + smaddl x0, w1, w2, x3 + smaddl x0, w1, w2, xzr + smull x0, w1, w2 + smsubl x0, w1, w2, x3 + smsubl x0, w1, w2, xzr + smnegl x0, w1, w2 + umaddl x0, w1, w2, x3 + umaddl x0, w1, w2, xzr + umull x0, w1, w2 + umsubl x0, w1, w2, x3 + umsubl x0, w1, w2, xzr + umnegl x0, w1, w2 + + csinc w0, w1, wzr, eq + csinc w0, w1, w1, eq + cinc w0, w1, ne + csinc w0, wzr, wzr, lo + cset w0, cs + csinv x0, x1, xzr, hs + csinv x0, x1, x1, hs + cinv x0, x1, cc + csinv x0, xzr, xzr, mi + csetm x0, pl + csneg x0, xzr, x30, lt + csneg x0, x30, x30, lt + cneg x0, x30, ge + + ands x0, x1, x2 + ands xzr, x1, x2 + tst x1, x2 + ands wzr, w1, w2, ror #31 + tst w1, w2, ror #31 + + orn x0, x1, x2 + orn xzr, x1, x2 + orn x0, xzr, x2 + mvn x0, x2 + orn wzr, w1, w2, asr #15 + orn w0, wzr, w2, asr #15 + mvn w0, w2, asr #15 + + mov v0.8b, v1.8b + orr v0.8b, v1.8b, v2.8b + orr v0.8b, v1.8b, v1.8b + + mov x3, x17 + orr x3, x0, x17 + orr x3, xzr, x17 + + bic x1, x1, #(1<<30)-1 + bic x0, x0, #2 + bic w0, w0, #2 + + ands wzr, w24, #0x7f8 + ands w0, w24, #0x7f8 + tst w24, #0x7f8 + + subs wzr, w3, #0x20 + subs w3, wsp, #0x20 + cmp w3, #0x20 + + adds xzr, x15, #0xfff + subs x15, sp, #0xfff + cmn x15, #0xfff diff --git a/gas/testsuite/gas/aarch64/bitfield-alias.d b/gas/testsuite/gas/aarch64/bitfield-alias.d new file mode 100644 index 0000000..a24b69a --- /dev/null +++ b/gas/testsuite/gas/aarch64/bitfield-alias.d @@ -0,0 +1,2 @@ +#objdump: -dr +#dump: bitfield-dump diff --git a/gas/testsuite/gas/aarch64/bitfield-alias.s b/gas/testsuite/gas/aarch64/bitfield-alias.s new file mode 100644 index 0000000..b2a0fc0 --- /dev/null +++ b/gas/testsuite/gas/aarch64/bitfield-alias.s @@ -0,0 +1,112 @@ +/* bitfield-alias.s Test file for AArch64 bitfield instructions + alias mnemonics. + + Copyright 2011, 2012 Free Software Foundation, Inc. + Contributed by ARM Ltd. + + This file is part of GAS. + + GAS 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. + + GAS 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; see the file COPYING3. If not, + see <http://www.gnu.org/licenses/>. */ + +/* This file tests the GAS's ability in assembling the alias mnemonics + of sbfm, bfm and ubfm. Disassembler should prefer to use alias + mnemonics to display {[u|s]}bfm instructions. + bitfield-bfm.s and bitfield-alias.s will be assembled into idential + binary, which is why the two tests share the same dump match + file 'bitfield-dump'. + This assembly file is also used for the bitfield-no-aliases test. */ + + // <op> <Wd>, <Wn> + .macro bf_32r op + \op wzr, w7 + .endm + + // <op> <Xd>, <Wn> + .macro bf_64x op + \op xzr, w7 + .endm + + // <op> <Wd>, <Wn>, #<shift> + .macro bf_32s op, shift + \op wzr, w7, \shift + .endm + + // <op> <Xd>, <Xn>, #<shift> + .macro bf_64s op, shift + \op xzr, x7, \shift + .endm + + // <op> <Wd>, <Wn>, #<lsb>, #<width> + .macro bf_32 op, lsb, width + \op wzr, w7, #\lsb, #\width + .endm + + // <op> <Xd>, <Xn>, #<lsb>, #<width> + .macro bf_64 op, lsb, width + \op xzr, x7, #\lsb, #\width + .endm + +.text + /* + * extend + */ + + bf_32r sxtb + bf_64x sxtb + bf_32r sxth + bf_64x sxth + bf_64x sxtw + + bf_32r uxtb + bf_64x uxtb + bf_32r uxth + bf_64x uxth + bf_32r uxtw + bf_64x uxtw + + /* + * shift + */ + + .irp op, asr, lsr, lsl + .irp shift, 0, 16, 31 + bf_32s \op, \shift + .endr + .irp shift, 0, 31, 63 + bf_64s \op, \shift + .endr + .endr + + /* + * Insert & Extract + */ + + .irp op, sbfiz, sbfx, bfi, bfxil, ubfiz, ubfx + bf_32 \op, 0, 1 + bf_32 \op, 0, 16 + bf_32 \op, 0, 32 + bf_32 \op, 16, 1 + bf_32 \op, 16, 8 + bf_32 \op, 16, 16 + bf_32 \op, 31, 1 + + bf_64 \op, 0, 1 + bf_64 \op, 0, 32 + bf_64 \op, 0, 64 + bf_64 \op, 32, 1 + bf_64 \op, 32, 16 + bf_64 \op, 32, 32 + bf_64 \op, 63, 1 + .endr diff --git a/gas/testsuite/gas/aarch64/bitfield-bfm.d b/gas/testsuite/gas/aarch64/bitfield-bfm.d new file mode 100644 index 0000000..a24b69a --- /dev/null +++ b/gas/testsuite/gas/aarch64/bitfield-bfm.d @@ -0,0 +1,2 @@ +#objdump: -dr +#dump: bitfield-dump diff --git a/gas/testsuite/gas/aarch64/bitfield-bfm.s b/gas/testsuite/gas/aarch64/bitfield-bfm.s new file mode 100644 index 0000000..af107ea --- /dev/null +++ b/gas/testsuite/gas/aarch64/bitfield-bfm.s @@ -0,0 +1,154 @@ +/* bitfield-bfm.s Test file for AArch64 bitfield instructions + sbfm, bfm and ubfm mnemonics. + + Copyright 2011, 2012 Free Software Foundation, Inc. + Contributed by ARM Ltd. + + This file is part of GAS. + + GAS 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. + + GAS 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; see the file COPYING3. If not, + see <http://www.gnu.org/licenses/>. */ + +/* This file tests the GAS's ability in assembling sbfm, bfm and ubfm + instructions. Disassembler should use alias mnemonics to display + {[u|s]}bfm instructions. bitfield-bfm.s and bitfield-alias.s will be + assembled into idential binary, which is why the two tests share the + same dump match file 'bitfield-dump'. */ + + // <op> <Wd>, <Wn> + .macro bf_32r op + \op wzr, w7 + .endm + + // <op> <Xd>, <Wn> + .macro bf_64x op + \op xzr, w7 + .endm + + // <op> <Wd>, <Wn>, #<shift> + .macro bf_32s op, shift + \op wzr, w7, \shift + .endm + + // <op> <Xd>, <Xn>, #<shift> + .macro bf_64s op, shift + \op xzr, x7, \shift + .endm + + + .macro op_bfm signed, reg, immr, imms + \signed\()bfm \reg\()zr, \reg\()7, #\immr, #\imms // e.g. sbfm xzr, x7, #0, #15 + .endm + + .macro ext2bfm signed, reg, imms + op_bfm signed=\signed, reg=\reg, immr=0, imms=\imms + .endm + + // shift right -> bfm + .macro sr2bfm signed, reg, shift, imms + op_bfm signed=\signed, reg=\reg, immr=\shift, imms=\imms + .endm + + // shift left -> bfm + .macro sl2bfm signed, reg, shift + .ifc \reg, w + op_bfm signed=\signed, reg=\reg, immr="((32-\shift)&31)", imms="(31-\shift)" + .else + op_bfm signed=\signed, reg=\reg, immr="((64-\shift)&63)", imms="(63-\shift)" + .endif + .endm + + // bitfield insert -> bfm + .macro ins2bfm signed, reg, lsb, width + .ifc \reg, w + op_bfm signed=\signed, reg=\reg, immr="((32-\lsb)&31)", imms="(\width-1)" + .else + op_bfm signed=\signed, reg=\reg, immr="((64-\lsb)&63)", imms="(\width-1)" + .endif + .endm + + // bitfield extract -> bfm + .macro x2bfm signed, reg, lsb, width + op_bfm signed=\signed, reg=\reg, immr=\lsb, imms="(\lsb+\width-1)" + .endm + +.text + /* + * aliasing extend + */ + + ext2bfm s, w, 7 // sxtb wzr, w7 + ext2bfm s, x, 7 // sxtb xzr, x7 + ext2bfm s, w, 15 // sxth wzr, w7 + ext2bfm s, x, 15 // sxth xzr, x7 + ext2bfm s, x, 31 // sxtw xzr, x7 + + ext2bfm u, w, 7 // uxtb wzr, w7 + ext2bfm u, w, 7 // uxtb xzr, w7 + ext2bfm u, w, 15 // uxth wzr, w7 + ext2bfm u, w, 15 // uxth xzr, w7 + orr wzr, wzr, w7 // uxtw wzr, w7 + orr wzr, wzr, w7 // uxtw wzr, w7 + + /* + * aliasing shift + */ + + .irp shift 0, 16, 31 // asr wzr, w7, #\shift + sr2bfm s, w, \shift, 31 + .endr + + .irp shift 0, 31, 63 // asr xzr, x7, #\shift + sr2bfm s, x, \shift, 63 + .endr + + .irp shift 0, 16, 31 // lsr wzr, w7, #\shift + sr2bfm u, w, \shift, 31 + .endr + + .irp shift 0, 31, 63 // lsr xzr, x7, #\shift + sr2bfm u, x, \shift, 63 + .endr + + .irp shift 0, 16, 31 // lsl wzr, w7, #\shift + sl2bfm u, w, \shift + .endr + + .irp shift 0, 31, 63 // lsl xzr, x7, #\shift + sl2bfm u, x, \shift + .endr + + /* + * aliasing insert and extract + */ + + .irp signed, s, , u + .irp whichm, ins2bfm, x2bfm + \whichm \signed, w, 0, 1 + \whichm \signed, w, 0, 16 + \whichm \signed, w, 0, 32 + \whichm \signed, w, 16, 1 + \whichm \signed, w, 16, 8 + \whichm \signed, w, 16, 16 + \whichm \signed, w, 31, 1 + + \whichm \signed, x, 0, 1 + \whichm \signed, x, 0, 32 + \whichm \signed, x, 0, 64 + \whichm \signed, x, 32, 1 + \whichm \signed, x, 32, 16 + \whichm \signed, x, 32, 32 + \whichm \signed, x, 63, 1 + .endr + .endr diff --git a/gas/testsuite/gas/aarch64/bitfield-dump b/gas/testsuite/gas/aarch64/bitfield-dump new file mode 100644 index 0000000..02422c5 --- /dev/null +++ b/gas/testsuite/gas/aarch64/bitfield-dump @@ -0,0 +1,118 @@ +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: 13001cff sxtb wzr, w7 + 4: 93401cff sxtb xzr, w7 + 8: 13003cff sxth wzr, w7 + c: 93403cff sxth xzr, w7 + 10: 93407cff sxtw xzr, w7 + 14: 53001cff uxtb wzr, w7 + 18: 53001cff uxtb wzr, w7 + 1c: 53003cff uxth wzr, w7 + 20: 53003cff uxth wzr, w7 + 24: 2a0703ff mov wzr, w7 + 28: 2a0703ff mov wzr, w7 + 2c: 13007cff asr wzr, w7, #0 + 30: 13107cff asr wzr, w7, #16 + 34: 131f7cff asr wzr, w7, #31 + 38: 9340fcff asr xzr, x7, #0 + 3c: 935ffcff asr xzr, x7, #31 + 40: 937ffcff asr xzr, x7, #63 + 44: 53007cff lsr wzr, w7, #0 + 48: 53107cff lsr wzr, w7, #16 + 4c: 531f7cff lsr wzr, w7, #31 + 50: d340fcff lsr xzr, x7, #0 + 54: d35ffcff lsr xzr, x7, #31 + 58: d37ffcff lsr xzr, x7, #63 + 5c: 53007cff lsr wzr, w7, #0 + 60: 53103cff lsl wzr, w7, #16 + 64: 530100ff lsl wzr, w7, #31 + 68: d340fcff lsr xzr, x7, #0 + 6c: d36180ff lsl xzr, x7, #31 + 70: d34100ff lsl xzr, x7, #63 + 74: 130000ff sbfx wzr, w7, #0, #1 + 78: 13003cff sxth wzr, w7 + 7c: 13007cff asr wzr, w7, #0 + 80: 131000ff sbfiz wzr, w7, #16, #1 + 84: 13101cff sbfiz wzr, w7, #16, #8 + 88: 13103cff sbfiz wzr, w7, #16, #16 + 8c: 130100ff sbfiz wzr, w7, #31, #1 + 90: 934000ff sbfx xzr, x7, #0, #1 + 94: 93407cff sxtw xzr, w7 + 98: 9340fcff asr xzr, x7, #0 + 9c: 936000ff sbfiz xzr, x7, #32, #1 + a0: 93603cff sbfiz xzr, x7, #32, #16 + a4: 93607cff sbfiz xzr, x7, #32, #32 + a8: 934100ff sbfiz xzr, x7, #63, #1 + ac: 130000ff sbfx wzr, w7, #0, #1 + b0: 13003cff sxth wzr, w7 + b4: 13007cff asr wzr, w7, #0 + b8: 131040ff sbfx wzr, w7, #16, #1 + bc: 13105cff sbfx wzr, w7, #16, #8 + c0: 13107cff asr wzr, w7, #16 + c4: 131f7cff asr wzr, w7, #31 + c8: 934000ff sbfx xzr, x7, #0, #1 + cc: 93407cff sxtw xzr, w7 + d0: 9340fcff asr xzr, x7, #0 + d4: 936080ff sbfx xzr, x7, #32, #1 + d8: 9360bcff sbfx xzr, x7, #32, #16 + dc: 9360fcff asr xzr, x7, #32 + e0: 937ffcff asr xzr, x7, #63 + e4: 330000ff bfxil wzr, w7, #0, #1 + e8: 33003cff bfxil wzr, w7, #0, #16 + ec: 33007cff bfxil wzr, w7, #0, #32 + f0: 331000ff bfi wzr, w7, #16, #1 + f4: 33101cff bfi wzr, w7, #16, #8 + f8: 33103cff bfi wzr, w7, #16, #16 + fc: 330100ff bfi wzr, w7, #31, #1 + 100: b34000ff bfxil xzr, x7, #0, #1 + 104: b3407cff bfxil xzr, x7, #0, #32 + 108: b340fcff bfxil xzr, x7, #0, #64 + 10c: b36000ff bfi xzr, x7, #32, #1 + 110: b3603cff bfi xzr, x7, #32, #16 + 114: b3607cff bfi xzr, x7, #32, #32 + 118: b34100ff bfi xzr, x7, #63, #1 + 11c: 330000ff bfxil wzr, w7, #0, #1 + 120: 33003cff bfxil wzr, w7, #0, #16 + 124: 33007cff bfxil wzr, w7, #0, #32 + 128: 331040ff bfxil wzr, w7, #16, #1 + 12c: 33105cff bfxil wzr, w7, #16, #8 + 130: 33107cff bfxil wzr, w7, #16, #16 + 134: 331f7cff bfxil wzr, w7, #31, #1 + 138: b34000ff bfxil xzr, x7, #0, #1 + 13c: b3407cff bfxil xzr, x7, #0, #32 + 140: b340fcff bfxil xzr, x7, #0, #64 + 144: b36080ff bfxil xzr, x7, #32, #1 + 148: b360bcff bfxil xzr, x7, #32, #16 + 14c: b360fcff bfxil xzr, x7, #32, #32 + 150: b37ffcff bfxil xzr, x7, #63, #1 + 154: 530000ff ubfx wzr, w7, #0, #1 + 158: 53003cff uxth wzr, w7 + 15c: 53007cff lsr wzr, w7, #0 + 160: 531000ff ubfiz wzr, w7, #16, #1 + 164: 53101cff ubfiz wzr, w7, #16, #8 + 168: 53103cff lsl wzr, w7, #16 + 16c: 530100ff lsl wzr, w7, #31 + 170: d34000ff ubfx xzr, x7, #0, #1 + 174: d3407cff ubfx xzr, x7, #0, #32 + 178: d340fcff lsr xzr, x7, #0 + 17c: d36000ff ubfiz xzr, x7, #32, #1 + 180: d3603cff ubfiz xzr, x7, #32, #16 + 184: d3607cff lsl xzr, x7, #32 + 188: d34100ff lsl xzr, x7, #63 + 18c: 530000ff ubfx wzr, w7, #0, #1 + 190: 53003cff uxth wzr, w7 + 194: 53007cff lsr wzr, w7, #0 + 198: 531040ff ubfx wzr, w7, #16, #1 + 19c: 53105cff ubfx wzr, w7, #16, #8 + 1a0: 53107cff lsr wzr, w7, #16 + 1a4: 531f7cff lsr wzr, w7, #31 + 1a8: d34000ff ubfx xzr, x7, #0, #1 + 1ac: d3407cff ubfx xzr, x7, #0, #32 + 1b0: d340fcff lsr xzr, x7, #0 + 1b4: d36080ff ubfx xzr, x7, #32, #1 + 1b8: d360bcff ubfx xzr, x7, #32, #16 + 1bc: d360fcff lsr xzr, x7, #32 + 1c0: d37ffcff lsr xzr, x7, #63 diff --git a/gas/testsuite/gas/aarch64/bitfield-no-aliases.d b/gas/testsuite/gas/aarch64/bitfield-no-aliases.d new file mode 100644 index 0000000..c75d215 --- /dev/null +++ b/gas/testsuite/gas/aarch64/bitfield-no-aliases.d @@ -0,0 +1,121 @@ +#source: bitfield-alias.s +#objdump: -dr -Mno-aliases + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: 13001cff sbfm wzr, w7, #0, #7 + 4: 93401cff sbfm xzr, x7, #0, #7 + 8: 13003cff sbfm wzr, w7, #0, #15 + c: 93403cff sbfm xzr, x7, #0, #15 + 10: 93407cff sbfm xzr, x7, #0, #31 + 14: 53001cff ubfm wzr, w7, #0, #7 + 18: 53001cff ubfm wzr, w7, #0, #7 + 1c: 53003cff ubfm wzr, w7, #0, #15 + 20: 53003cff ubfm wzr, w7, #0, #15 + 24: 2a0703ff orr wzr, wzr, w7 + 28: 2a0703ff orr wzr, wzr, w7 + 2c: 13007cff sbfm wzr, w7, #0, #31 + 30: 13107cff sbfm wzr, w7, #16, #31 + 34: 131f7cff sbfm wzr, w7, #31, #31 + 38: 9340fcff sbfm xzr, x7, #0, #63 + 3c: 935ffcff sbfm xzr, x7, #31, #63 + 40: 937ffcff sbfm xzr, x7, #63, #63 + 44: 53007cff ubfm wzr, w7, #0, #31 + 48: 53107cff ubfm wzr, w7, #16, #31 + 4c: 531f7cff ubfm wzr, w7, #31, #31 + 50: d340fcff ubfm xzr, x7, #0, #63 + 54: d35ffcff ubfm xzr, x7, #31, #63 + 58: d37ffcff ubfm xzr, x7, #63, #63 + 5c: 53007cff ubfm wzr, w7, #0, #31 + 60: 53103cff ubfm wzr, w7, #16, #15 + 64: 530100ff ubfm wzr, w7, #1, #0 + 68: d340fcff ubfm xzr, x7, #0, #63 + 6c: d36180ff ubfm xzr, x7, #33, #32 + 70: d34100ff ubfm xzr, x7, #1, #0 + 74: 130000ff sbfm wzr, w7, #0, #0 + 78: 13003cff sbfm wzr, w7, #0, #15 + 7c: 13007cff sbfm wzr, w7, #0, #31 + 80: 131000ff sbfm wzr, w7, #16, #0 + 84: 13101cff sbfm wzr, w7, #16, #7 + 88: 13103cff sbfm wzr, w7, #16, #15 + 8c: 130100ff sbfm wzr, w7, #1, #0 + 90: 934000ff sbfm xzr, x7, #0, #0 + 94: 93407cff sbfm xzr, x7, #0, #31 + 98: 9340fcff sbfm xzr, x7, #0, #63 + 9c: 936000ff sbfm xzr, x7, #32, #0 + a0: 93603cff sbfm xzr, x7, #32, #15 + a4: 93607cff sbfm xzr, x7, #32, #31 + a8: 934100ff sbfm xzr, x7, #1, #0 + ac: 130000ff sbfm wzr, w7, #0, #0 + b0: 13003cff sbfm wzr, w7, #0, #15 + b4: 13007cff sbfm wzr, w7, #0, #31 + b8: 131040ff sbfm wzr, w7, #16, #16 + bc: 13105cff sbfm wzr, w7, #16, #23 + c0: 13107cff sbfm wzr, w7, #16, #31 + c4: 131f7cff sbfm wzr, w7, #31, #31 + c8: 934000ff sbfm xzr, x7, #0, #0 + cc: 93407cff sbfm xzr, x7, #0, #31 + d0: 9340fcff sbfm xzr, x7, #0, #63 + d4: 936080ff sbfm xzr, x7, #32, #32 + d8: 9360bcff sbfm xzr, x7, #32, #47 + dc: 9360fcff sbfm xzr, x7, #32, #63 + e0: 937ffcff sbfm xzr, x7, #63, #63 + e4: 330000ff bfm wzr, w7, #0, #0 + e8: 33003cff bfm wzr, w7, #0, #15 + ec: 33007cff bfm wzr, w7, #0, #31 + f0: 331000ff bfm wzr, w7, #16, #0 + f4: 33101cff bfm wzr, w7, #16, #7 + f8: 33103cff bfm wzr, w7, #16, #15 + fc: 330100ff bfm wzr, w7, #1, #0 + 100: b34000ff bfm xzr, x7, #0, #0 + 104: b3407cff bfm xzr, x7, #0, #31 + 108: b340fcff bfm xzr, x7, #0, #63 + 10c: b36000ff bfm xzr, x7, #32, #0 + 110: b3603cff bfm xzr, x7, #32, #15 + 114: b3607cff bfm xzr, x7, #32, #31 + 118: b34100ff bfm xzr, x7, #1, #0 + 11c: 330000ff bfm wzr, w7, #0, #0 + 120: 33003cff bfm wzr, w7, #0, #15 + 124: 33007cff bfm wzr, w7, #0, #31 + 128: 331040ff bfm wzr, w7, #16, #16 + 12c: 33105cff bfm wzr, w7, #16, #23 + 130: 33107cff bfm wzr, w7, #16, #31 + 134: 331f7cff bfm wzr, w7, #31, #31 + 138: b34000ff bfm xzr, x7, #0, #0 + 13c: b3407cff bfm xzr, x7, #0, #31 + 140: b340fcff bfm xzr, x7, #0, #63 + 144: b36080ff bfm xzr, x7, #32, #32 + 148: b360bcff bfm xzr, x7, #32, #47 + 14c: b360fcff bfm xzr, x7, #32, #63 + 150: b37ffcff bfm xzr, x7, #63, #63 + 154: 530000ff ubfm wzr, w7, #0, #0 + 158: 53003cff ubfm wzr, w7, #0, #15 + 15c: 53007cff ubfm wzr, w7, #0, #31 + 160: 531000ff ubfm wzr, w7, #16, #0 + 164: 53101cff ubfm wzr, w7, #16, #7 + 168: 53103cff ubfm wzr, w7, #16, #15 + 16c: 530100ff ubfm wzr, w7, #1, #0 + 170: d34000ff ubfm xzr, x7, #0, #0 + 174: d3407cff ubfm xzr, x7, #0, #31 + 178: d340fcff ubfm xzr, x7, #0, #63 + 17c: d36000ff ubfm xzr, x7, #32, #0 + 180: d3603cff ubfm xzr, x7, #32, #15 + 184: d3607cff ubfm xzr, x7, #32, #31 + 188: d34100ff ubfm xzr, x7, #1, #0 + 18c: 530000ff ubfm wzr, w7, #0, #0 + 190: 53003cff ubfm wzr, w7, #0, #15 + 194: 53007cff ubfm wzr, w7, #0, #31 + 198: 531040ff ubfm wzr, w7, #16, #16 + 19c: 53105cff ubfm wzr, w7, #16, #23 + 1a0: 53107cff ubfm wzr, w7, #16, #31 + 1a4: 531f7cff ubfm wzr, w7, #31, #31 + 1a8: d34000ff ubfm xzr, x7, #0, #0 + 1ac: d3407cff ubfm xzr, x7, #0, #31 + 1b0: d340fcff ubfm xzr, x7, #0, #63 + 1b4: d36080ff ubfm xzr, x7, #32, #32 + 1b8: d360bcff ubfm xzr, x7, #32, #47 + 1bc: d360fcff ubfm xzr, x7, #32, #63 + 1c0: d37ffcff ubfm xzr, x7, #63, #63 diff --git a/gas/testsuite/gas/aarch64/crypto.d b/gas/testsuite/gas/aarch64/crypto.d new file mode 100644 index 0000000..7e12b1a --- /dev/null +++ b/gas/testsuite/gas/aarch64/crypto.d @@ -0,0 +1,26 @@ +#objdump: -dr +#as: -march=armv8+crypto + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: 4e284be7 aese v7.16b, v31.16b + 4: 4e285be7 aesd v7.16b, v31.16b + 8: 4e286be7 aesmc v7.16b, v31.16b + c: 4e287be7 aesimc v7.16b, v31.16b + 10: 5e280be7 sha1h s7, s31 + 14: 5e281be7 sha1su1 v7.4s, v31.4s + 18: 5e282be7 sha256su0 v7.4s, v31.4s + 1c: 5e1f01e7 sha1c q7, s15, v31.4s + 20: 5e1f11e7 sha1p q7, s15, v31.4s + 24: 5e1f21e7 sha1m q7, s15, v31.4s + 28: 5e1f31e7 sha1su0 v7.4s, v15.4s, v31.4s + 2c: 5e1f41e7 sha256h q7, q15, v31.4s + 30: 5e1f51e7 sha256h2 q7, q15, v31.4s + 34: 5e1f61e7 sha256su1 v7.4s, v15.4s, v31.4s + 38: 0e3fe1e7 pmull v7.8h, v15.8b, v31.8b + 3c: 0effe1e7 pmull v7.1q, v15.1d, v31.1d + 40: 4e3fe1e7 pmull2 v7.8h, v15.16b, v31.16b + 44: 4effe1e7 pmull2 v7.1q, v15.2d, v31.2d diff --git a/gas/testsuite/gas/aarch64/crypto.s b/gas/testsuite/gas/aarch64/crypto.s new file mode 100644 index 0000000..9a1fe67 --- /dev/null +++ b/gas/testsuite/gas/aarch64/crypto.s @@ -0,0 +1,44 @@ +/* crypto.s Test file for AArch64 Advanced-SIMD Crypto instructions. + + Copyright 2012 Free Software Foundation, Inc. Contributed by ARM Ltd. + + This file is part of GAS. + + GAS 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. + + GAS 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; see the file COPYING3. If not, + see <http://www.gnu.org/licenses/>. */ + + + .text + aese v7.16b, v31.16b + aesd v7.16b, v31.16b + aesmc v7.16b, v31.16b + aesimc v7.16b, v31.16b + + sha1h s7, s31 + sha1su1 v7.4s, v31.4s + sha256su0 v7.4s, v31.4s + + sha1c q7, s15, v31.4s + sha1p q7, s15, v31.4s + sha1m q7, s15, v31.4s + + sha1su0 v7.4s, v15.4s, v31.4s + sha256h q7, q15, v31.4s + sha256h2 q7, q15, v31.4s + sha256su1 v7.4s, v15.4s, v31.4s + + pmull v7.8h, v15.8b, v31.8b + pmull v7.1q, v15.1d, v31.1d + pmull2 v7.8h, v15.16b, v31.16b + pmull2 v7.1q, v15.2d, v31.2d diff --git a/gas/testsuite/gas/aarch64/diagnostic.d b/gas/testsuite/gas/aarch64/diagnostic.d new file mode 100644 index 0000000..e0f9718 --- /dev/null +++ b/gas/testsuite/gas/aarch64/diagnostic.d @@ -0,0 +1,3 @@ +#name: Diagnostics Quality +#source: diagnostic.s +#error-output: diagnostic.l diff --git a/gas/testsuite/gas/aarch64/diagnostic.l b/gas/testsuite/gas/aarch64/diagnostic.l new file mode 100644 index 0000000..714a2f0 --- /dev/null +++ b/gas/testsuite/gas/aarch64/diagnostic.l @@ -0,0 +1,87 @@ +[^:]*: Assembler messages: +[^:]*:4: Error: unexpected comma after the mnemonic name `fmul' -- `fmul, s0,s1,s2' +[^:]*:5: Error: unexpected comma after the mnemonic name `fmul' -- `fmul ,s0,s1,s2' +[^:]*:6: Error: unexpected comma after the mnemonic name `fmul' -- `fmul ,s0,s1,s2' +[^:]*:7: Error: unknown mnemonic `b\.random' -- `b\.random label1' +[^:]*:8: Error: unknown mnemonic `fmull' -- `fmull s0' +[^:]*:9: Error: unknown mnemonic `aaaaaaaaaaaaaaaaaaaaaaaaaaaa\.\.\.' -- `aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' +[^:]*:10: Error: unexpected comma before the omitted optional operand at operand 5 -- `sys 1,c1,c3,3,' +[^:]*:11: Error: immediate value out of range 0 to 7 at operand 4 -- `ext v0.8b,v1.8b,v2.8b,8' +[^:]*:12: Error: immediate value out of range 0 to 15 at operand 4 -- `ext v0.16b,v1.16b,v2.16b,20' +[^:]*:13: Error: immediate value out of range 0 to 65535 at operand 1 -- `svc -1' +[^:]*:14: Error: immediate value out of range 0 to 65535 at operand 1 -- `svc 65536' +[^:]*:15: Error: immediate value out of range 0 to 31 at operand 2 -- `ccmp w0,32,10,le' +[^:]*:16: Error: immediate value out of range 0 to 31 at operand 2 -- `ccmp x0,-1,10,le' +[^:]*:17: Error: extraneous register at operand 2 -- `tlbi alle3is,x0' +[^:]*:18: Error: missing register at operand 2 -- `tlbi vaale1is' +[^:]*:19: Error: unexpected characters following instruction at operand 1 -- `tlbi vaale1is x0' +[^:]*:20: Error: immediate value out of range 0 to 1 at operand 1 -- `msr spsel,3' +[^:]*:21: Error: immediate value out of range 1 to 64 at operand 3 -- `fcvtzu x15,d31,#66' +[^:]*:22: Error: immediate value out of range 1 to 32 at operand 3 -- `scvtf s0,w0,33' +[^:]*:23: Error: immediate value out of range 1 to 32 at operand 3 -- `scvtf s0,w0,0' +[^:]*:24: Error: register number out of range 0 to 15 at operand 3 -- `smlal v0.4s,v31.4h,v16.h\[1\]' +[^:]*:25: Error: register element index out of range 0 to 7 at operand 3 -- `smlal v0.4s,v31.4h,v15.h\[8\]' +[^:]*:26: Error: extend operator expected at operand 3 -- `add sp,x0,x7,lsr#2' +[^:]*:27: Error: shift amount out of range 0 to 4 at operand 3 -- `add x0,x0,x7,uxtx#5' +[^:]*:28: Error: 'ROR' operator not allowed at operand 3 -- `add x0,xzr,x7,ror#5' +[^:]*:29: Error: shift amount out of range 0 to 31 at operand 3 -- `add w0,wzr,w7,asr#32' +[^:]*:30: Error: invalid post-increment amount at operand 2 -- `st2 \{v0.4s,v1.4s\},\[sp\],#24' +[^:]*:31: Error: invalid shift amount at operand 2 -- `ldr q0,\[x0,w0,uxtw#5\]' +[^:]*:32: Error: invalid number of registers in the list; 2 registers are expected at operand 1 -- `st2 \{v0.4s,v1.4s,v2.4s,v3.4s\},\[sp\],#64' +[^:]*:33: Error: shift amount expected to be 0 or 12 at operand 3 -- `adds x1,sp,2134,lsl#4' +[^:]*:34: Error: shift amount should be a multiple of 16 at operand 2 -- `movz w0,2134,lsl#8' +[^:]*:35: Error: shift amount out of range 0 to 16 at operand 2 -- `movz w0,2134,lsl#32' +[^:]*:36: Error: shift amount should be a multiple of 16 at operand 2 -- `movz x0,2134,lsl#47' +[^:]*:37: Error: immediate value out of range 1 to 17 at operand 4 -- `sbfiz w0,w7,15,18' +[^:]*:38: Error: immediate value out of range 1 to 32 at operand 4 -- `sbfiz w0,w7,15,0' +[^:]*:39: Error: invalid shift amount at operand 3 -- `shll v1.4s,v2.4h,#15' +[^:]*:40: Error: invalid shift amount at operand 3 -- `shll v1.4s,v2.4h,#32' +[^:]*:41: Error: immediate value out of range 0 to 31 at operand 3 -- `shl v1.2s,v2.2s,32' +[^:]*:42: Error: immediate value out of range 1 to 8 at operand 3 -- `sqshrn2 v2.16b,v3.8h,#17' +[^:]*:43: Error: immediate value out of range 0 to 255 at operand 2 -- `movi v1.4h,256' +[^:]*:44: Error: immediate value out of range 0 to 255 at operand 2 -- `movi v1.4h,-1' +[^:]*:45: Error: invalid shift operator at operand 2 -- `movi v1.4h,255,msl#8' +[^:]*:46: Error: invalid value for immediate at operand 2 -- `movi d0,256' +[^:]*:47: Error: immediate value should be a multiple of 8 at operand 2 -- `movi v1.4h,255,lsl#7' +[^:]*:48: Error: immediate value out of range 0 to 8 at operand 2 -- `movi v1.4h,255,lsl#16' +[^:]*:49: Error: shift amount expected to be 0 or 16 at operand 2 -- `movi v2.2s,255,msl#0' +[^:]*:50: Error: shift amount expected to be 0 or 16 at operand 2 -- `movi v2.2s,255,msl#15' +[^:]*:51: Error: invalid floating-point constant at operand 2 -- `fmov v1.2s,1.01' +[^:]*:52: Error: invalid floating-point constant at operand 2 -- `fmov v1.2d,1.01' +[^:]*:53: Error: invalid floating-point constant at operand 2 -- `fmov s3,1.01' +[^:]*:54: Error: invalid floating-point constant at operand 2 -- `fmov d3,1.01' +[^:]*:55: Error: immediate zero expected at operand 2 -- `fcmp d0,#1.0' +[^:]*:56: Error: operand 2 should be a floating-point register -- `fcmp d0,x0' +[^:]*:57: Error: immediate zero expected at operand 3 -- `cmgt v0.4s,v2.4s,#1' +[^:]*:58: Error: unexpected characters following instruction at operand 2 -- `fmov d3,1.00,lsl#3' +[^:]*:59: Error: writeback value should be an immediate constant at operand 2 -- `st2 {v0.4s,v1.4s},\[sp\],sp' +[^:]*:60: Error: writeback value should be an immediate constant at operand 2 -- `st2 {v0.4s,v1.4s},\[sp\],zr' +[^:]*:61: Error: invalid shift for the register offset addressing mode at operand 2 -- `ldr q0,\[x0,w0,lsr#4\]' +[^:]*:62: Error: only 'LSL' shift is permitted at operand 3 -- `adds x1,sp,2134,uxtw#12' +[^:]*:63: Error: shift amount out of range 0 to 63 at operand 2 -- `movz x0,2134,lsl#64' +[^:]*:64: Error: operand 1 should be an integer register -- `adds sp,sp,2134,lsl#12' +[^:]*:65: Error: the optional immediate offset can only be 0 at operand 2 -- `ldxrb w2,\[x0,#1\]' +[^:]*:66: Error: invalid addressing mode at operand 2 -- `ldrb w0,x1,x2,sxtx' +[^:]*:67: Error: invalid shift amount at operand 2 -- `prfm PLDL3KEEP,\[x9,x15,sxtx#2\]' +[^:]*:68: Error: C0 - C15 expected at operand 3 -- `sysl x7,#1,C16,C30,#1' +[^:]*:69: Error: operand 4 should be a 4-bit opcode field named for historical reasons C0 - C15 -- `sysl x7,#1,C15,C77,#1' +[^:]*:70: Error: extending shift is not permitted at operand 3 -- `add x0,xzr,x7,uxtx#5' +[^:]*:71: Error: bad expression at operand 2 -- `mov x0,##5' +[^:]*:72: Error: unknown mnemonic `bad' -- `bad expression' +[^:]*:73: Error: unknown mnemonic `mockup' -- `mockup-op' +[^:]*:74: Error: comma expected between operands at operand 2 -- `orr x0. x0,#0xff,lsl#1' +[^:]*:75: Error: the specified relocation type is not allowed for MOVK at operand 2 -- `movk x1,#:abs_g1_s:s12' +[^:]*:76: Error: can't mix relocation modifier with explicit shift at operand 2 -- `movz x1,#:abs_g1_s:s12,lsl#16' +[^:]*:77: Error: register offset not allowed in pre-indexed addressing mode at operand 2 -- `prfm pldl3strm,\[sp,w0,sxtw#3\]!' +[^:]*:78: Error: immediate value out of range 0 to 31 at operand 1 -- `prfm 0x2f,LABEL1' +[^:]*:79: Error: immediate value out of range 0 to 15 at operand 1 -- `dmb #16' +[^:]*:80: Error: immediate value out of range 0 to 31 at operand 2 -- `tbz w0,#40,0x17c' +[^:]*:81: Error: invalid number of registers in the list; 2 registers are expected at operand 1 -- `st2 \{v4.2d,v5.2d,v6.2d\},\[x3\]' +[^:]*:82: Error: invalid register list at operand 1 -- `ld2 \{v1.4h,v0.4h\},\[x1\]' +[^:]*:83: Error: the specified option is not accepted in ISB at operand 1 -- `isb osh' +[^:]*:84: Error: invalid address at operand 2 -- `st2 \{v4.2d,v5.2d,v6.2d\},\\\[x3\\\]' +[^:]*:85: Error: immediate value should be a multiple of 4 at operand 3 -- `ldnp w7,w15,\[x3,#3\]' +[^:]*:86: Error: unexpected address writeback at operand 3 -- `stnp x7,x15,\[x3,#32\]!' +[^:]*:87: Error: immediate offset out of range -256 to 252 at operand 3 -- `ldnp w7,w15,\[x3,#256\]' +[^:]*:88: Error: shift is not permitted at operand 2 -- `movi v1.2d,4294967295,lsl#0' +[^:]*:89: Error: shift amount non-zero at operand 2 -- `movi v1.8b,97,lsl#8' diff --git a/gas/testsuite/gas/aarch64/diagnostic.s b/gas/testsuite/gas/aarch64/diagnostic.s new file mode 100644 index 0000000..2b1c01c --- /dev/null +++ b/gas/testsuite/gas/aarch64/diagnostic.s @@ -0,0 +1,89 @@ +// diagnostic.s Test file for diagnostic quality. + +.text + fmul, s0, s1, s2 + fmul , s0, s1, s2 + fmul , s0, s1, s2 + b.random label1 + fmull s0 + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + sys 1,c1,c3,3, + ext v0.8b, v1.8b, v2.8b, 8 + ext v0.16b, v1.16b, v2.16b, 20 + svc -1 + svc 65536 + ccmp w0, 32, 10, le + ccmp x0, -1, 10, le + tlbi alle3is, x0 + tlbi vaale1is + tlbi vaale1is x0 + msr spsel, 3 + fcvtzu x15, d31, #66 + scvtf s0, w0, 33 + scvtf s0, w0, 0 + smlal v0.4s, v31.4h, v16.h[1] + smlal v0.4s, v31.4h, v15.h[8] + add sp, x0, x7, lsr #2 + add x0, x0, x7, uxtx #5 + add x0, xzr, x7, ror #5 + add w0, wzr, w7, asr #32 + st2 {v0.4s, v1.4s}, [sp], #24 + ldr q0, [x0, w0, uxtw #5] + st2 {v0.4s, v1.4s, v2.4s, v3.4s}, [sp], #64 + adds x1, sp, 2134, lsl #4 + movz w0, 2134, lsl #8 + movz w0, 2134, lsl #32 + movz x0, 2134, lsl #47 + sbfiz w0, w7, 15, 18 + sbfiz w0, w7, 15, 0 + shll v1.4s, v2.4h, #15 + shll v1.4s, v2.4h, #32 + shl v1.2s, v2.2s, 32 + sqshrn2 v2.16b, v3.8h, #17 + movi v1.4h, 256 + movi v1.4h, -1 + movi v1.4h, 255, msl #8 + movi d0, 256 + movi v1.4h, 255, lsl #7 + movi v1.4h, 255, lsl #16 + movi v2.2s, 255, msl #0 + movi v2.2s, 255, msl #15 + fmov v1.2s, 1.01 + fmov v1.2d, 1.01 + fmov s3, 1.01 + fmov d3, 1.01 + fcmp d0, #1.0 + fcmp d0, x0 + cmgt v0.4s, v2.4s, #1 + fmov d3, 1.00, lsl #3 + st2 {v0.4s, v1.4s}, [sp], sp + st2 {v0.4s, v1.4s}, [sp], zr + ldr q0, [x0, w0, lsr #4] + adds x1, sp, 2134, uxtw #12 + movz x0, 2134, lsl #64 + adds sp, sp, 2134, lsl #12 + ldxrb w2, [x0, #1] + ldrb w0, x1, x2, sxtx + prfm PLDL3KEEP, [x9, x15, sxtx #2] + sysl x7, #1, C16, C30, #1 + sysl x7, #1, C15, C77, #1 + add x0, xzr, x7, uxtx #5 + mov x0, ##5 + bad expression + mockup-op + orr x0. x0, #0xff, lsl #1 + movk x1, #:abs_g1_s:s12 + movz x1, #:abs_g1_s:s12, lsl #16 + prfm pldl3strm, [sp, w0, sxtw #3]! + prfm 0x2f, LABEL1 + dmb #16 + tbz w0, #40, 0x17c + st2 {v4.2d, v5.2d, v6.2d}, [x3] + ld2 {v1.4h, v0.4h}, [x1] + isb osh + st2 {v4.2d, v5.2d, v6.2d}, \[x3\] + ldnp w7, w15, [x3, #3] + stnp x7, x15, [x3, #32]! + ldnp w7, w15, [x3, #256] + movi v1.2d, 4294967295, lsl #0 + movi v1.8b, 97, lsl #8 diff --git a/gas/testsuite/gas/aarch64/floatdp2.d b/gas/testsuite/gas/aarch64/floatdp2.d new file mode 100644 index 0000000..e338af0 --- /dev/null +++ b/gas/testsuite/gas/aarch64/floatdp2.d @@ -0,0 +1,25 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: 1e2f08e0 fmul s0, s7, s15 + 4: 1e2f18e0 fdiv s0, s7, s15 + 8: 1e2f28e0 fadd s0, s7, s15 + c: 1e2f38e0 fsub s0, s7, s15 + 10: 1e2f48e0 fmax s0, s7, s15 + 14: 1e2f58e0 fmin s0, s7, s15 + 18: 1e2f68e0 fmaxnm s0, s7, s15 + 1c: 1e2f78e0 fminnm s0, s7, s15 + 20: 1e2f88e0 fnmul s0, s7, s15 + 24: 1e6f08e0 fmul d0, d7, d15 + 28: 1e6f18e0 fdiv d0, d7, d15 + 2c: 1e6f28e0 fadd d0, d7, d15 + 30: 1e6f38e0 fsub d0, d7, d15 + 34: 1e6f48e0 fmax d0, d7, d15 + 38: 1e6f58e0 fmin d0, d7, d15 + 3c: 1e6f68e0 fmaxnm d0, d7, d15 + 40: 1e6f78e0 fminnm d0, d7, d15 + 44: 1e6f88e0 fnmul d0, d7, d15 diff --git a/gas/testsuite/gas/aarch64/floatdp2.s b/gas/testsuite/gas/aarch64/floatdp2.s new file mode 100644 index 0000000..6a88e33 --- /dev/null +++ b/gas/testsuite/gas/aarch64/floatdp2.s @@ -0,0 +1,32 @@ +/* floatdp2.s Test file for AArch64 Floating-point data-processing + (2 source) instructions. + + Copyright 2011, 2012 Free Software Foundation, Inc. + Contributed by ARM Ltd. + + This file is part of GAS. + + GAS 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. + + GAS 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; see the file COPYING3. If not, + see <http://www.gnu.org/licenses/>. */ + + .macro floatdp2 op, type + \op \type\()0, \type\()7, \type\()15 + .endm + +.text + .irp type, S, D + .irp op, FMUL, FDIV, FADD, FSUB, FMAX, FMIN, FMAXNM, FMINNM, FNMUL + floatdp2 \op, \type + .endr + .endr diff --git a/gas/testsuite/gas/aarch64/fp_cvt_int.d b/gas/testsuite/gas/aarch64/fp_cvt_int.d new file mode 100644 index 0000000..edf39ae --- /dev/null +++ b/gas/testsuite/gas/aarch64/fp_cvt_int.d @@ -0,0 +1,829 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: 1e2000e7 fcvtns w7, s7 + 4: 9e2000e7 fcvtns x7, s7 + 8: 1e2100e7 fcvtnu w7, s7 + c: 9e2100e7 fcvtnu x7, s7 + 10: 1e2800e7 fcvtps w7, s7 + 14: 9e2800e7 fcvtps x7, s7 + 18: 1e2900e7 fcvtpu w7, s7 + 1c: 9e2900e7 fcvtpu x7, s7 + 20: 1e3000e7 fcvtms w7, s7 + 24: 9e3000e7 fcvtms x7, s7 + 28: 1e3100e7 fcvtmu w7, s7 + 2c: 9e3100e7 fcvtmu x7, s7 + 30: 1e3800e7 fcvtzs w7, s7 + 34: 9e3800e7 fcvtzs x7, s7 + 38: 1e3900e7 fcvtzu w7, s7 + 3c: 9e3900e7 fcvtzu x7, s7 + 40: 1e2200e7 scvtf s7, w7 + 44: 9e2200e7 scvtf s7, x7 + 48: 1e2300e7 ucvtf s7, w7 + 4c: 9e2300e7 ucvtf s7, x7 + 50: 1e2400e7 fcvtas w7, s7 + 54: 9e2400e7 fcvtas x7, s7 + 58: 1e2500e7 fcvtau w7, s7 + 5c: 9e2500e7 fcvtau x7, s7 + 60: 1e2600e7 fmov w7, s7 + 64: 1e2700e7 fmov s7, w7 + 68: 1e6000e7 fcvtns w7, d7 + 6c: 9e6000e7 fcvtns x7, d7 + 70: 1e6100e7 fcvtnu w7, d7 + 74: 9e6100e7 fcvtnu x7, d7 + 78: 1e6800e7 fcvtps w7, d7 + 7c: 9e6800e7 fcvtps x7, d7 + 80: 1e6900e7 fcvtpu w7, d7 + 84: 9e6900e7 fcvtpu x7, d7 + 88: 1e7000e7 fcvtms w7, d7 + 8c: 9e7000e7 fcvtms x7, d7 + 90: 1e7100e7 fcvtmu w7, d7 + 94: 9e7100e7 fcvtmu x7, d7 + 98: 1e7800e7 fcvtzs w7, d7 + 9c: 9e7800e7 fcvtzs x7, d7 + a0: 1e7900e7 fcvtzu w7, d7 + a4: 9e7900e7 fcvtzu x7, d7 + a8: 1e6200e7 scvtf d7, w7 + ac: 9e6200e7 scvtf d7, x7 + b0: 1e6300e7 ucvtf d7, w7 + b4: 9e6300e7 ucvtf d7, x7 + b8: 1e6400e7 fcvtas w7, d7 + bc: 9e6400e7 fcvtas x7, d7 + c0: 1e6500e7 fcvtau w7, d7 + c4: 9e6500e7 fcvtau x7, d7 + c8: 1e2600e7 fmov w7, s7 + cc: 1e2700e7 fmov s7, w7 + d0: 1e18fce7 fcvtzs w7, s7, #1 + d4: 9e18fce7 fcvtzs x7, s7, #1 + d8: 1e19fce7 fcvtzu w7, s7, #1 + dc: 9e19fce7 fcvtzu x7, s7, #1 + e0: 1e02fce7 scvtf s7, w7, #1 + e4: 9e02fce7 scvtf s7, x7, #1 + e8: 1e03fce7 ucvtf s7, w7, #1 + ec: 9e03fce7 ucvtf s7, x7, #1 + f0: 1e58fce7 fcvtzs w7, d7, #1 + f4: 9e58fce7 fcvtzs x7, d7, #1 + f8: 1e59fce7 fcvtzu w7, d7, #1 + fc: 9e59fce7 fcvtzu x7, d7, #1 + 100: 1e42fce7 scvtf d7, w7, #1 + 104: 9e42fce7 scvtf d7, x7, #1 + 108: 1e43fce7 ucvtf d7, w7, #1 + 10c: 9e43fce7 ucvtf d7, x7, #1 + 110: 1e18f8e7 fcvtzs w7, s7, #2 + 114: 9e18f8e7 fcvtzs x7, s7, #2 + 118: 1e19f8e7 fcvtzu w7, s7, #2 + 11c: 9e19f8e7 fcvtzu x7, s7, #2 + 120: 1e02f8e7 scvtf s7, w7, #2 + 124: 9e02f8e7 scvtf s7, x7, #2 + 128: 1e03f8e7 ucvtf s7, w7, #2 + 12c: 9e03f8e7 ucvtf s7, x7, #2 + 130: 1e58f8e7 fcvtzs w7, d7, #2 + 134: 9e58f8e7 fcvtzs x7, d7, #2 + 138: 1e59f8e7 fcvtzu w7, d7, #2 + 13c: 9e59f8e7 fcvtzu x7, d7, #2 + 140: 1e42f8e7 scvtf d7, w7, #2 + 144: 9e42f8e7 scvtf d7, x7, #2 + 148: 1e43f8e7 ucvtf d7, w7, #2 + 14c: 9e43f8e7 ucvtf d7, x7, #2 + 150: 1e18f4e7 fcvtzs w7, s7, #3 + 154: 9e18f4e7 fcvtzs x7, s7, #3 + 158: 1e19f4e7 fcvtzu w7, s7, #3 + 15c: 9e19f4e7 fcvtzu x7, s7, #3 + 160: 1e02f4e7 scvtf s7, w7, #3 + 164: 9e02f4e7 scvtf s7, x7, #3 + 168: 1e03f4e7 ucvtf s7, w7, #3 + 16c: 9e03f4e7 ucvtf s7, x7, #3 + 170: 1e58f4e7 fcvtzs w7, d7, #3 + 174: 9e58f4e7 fcvtzs x7, d7, #3 + 178: 1e59f4e7 fcvtzu w7, d7, #3 + 17c: 9e59f4e7 fcvtzu x7, d7, #3 + 180: 1e42f4e7 scvtf d7, w7, #3 + 184: 9e42f4e7 scvtf d7, x7, #3 + 188: 1e43f4e7 ucvtf d7, w7, #3 + 18c: 9e43f4e7 ucvtf d7, x7, #3 + 190: 1e18f0e7 fcvtzs w7, s7, #4 + 194: 9e18f0e7 fcvtzs x7, s7, #4 + 198: 1e19f0e7 fcvtzu w7, s7, #4 + 19c: 9e19f0e7 fcvtzu x7, s7, #4 + 1a0: 1e02f0e7 scvtf s7, w7, #4 + 1a4: 9e02f0e7 scvtf s7, x7, #4 + 1a8: 1e03f0e7 ucvtf s7, w7, #4 + 1ac: 9e03f0e7 ucvtf s7, x7, #4 + 1b0: 1e58f0e7 fcvtzs w7, d7, #4 + 1b4: 9e58f0e7 fcvtzs x7, d7, #4 + 1b8: 1e59f0e7 fcvtzu w7, d7, #4 + 1bc: 9e59f0e7 fcvtzu x7, d7, #4 + 1c0: 1e42f0e7 scvtf d7, w7, #4 + 1c4: 9e42f0e7 scvtf d7, x7, #4 + 1c8: 1e43f0e7 ucvtf d7, w7, #4 + 1cc: 9e43f0e7 ucvtf d7, x7, #4 + 1d0: 1e18ece7 fcvtzs w7, s7, #5 + 1d4: 9e18ece7 fcvtzs x7, s7, #5 + 1d8: 1e19ece7 fcvtzu w7, s7, #5 + 1dc: 9e19ece7 fcvtzu x7, s7, #5 + 1e0: 1e02ece7 scvtf s7, w7, #5 + 1e4: 9e02ece7 scvtf s7, x7, #5 + 1e8: 1e03ece7 ucvtf s7, w7, #5 + 1ec: 9e03ece7 ucvtf s7, x7, #5 + 1f0: 1e58ece7 fcvtzs w7, d7, #5 + 1f4: 9e58ece7 fcvtzs x7, d7, #5 + 1f8: 1e59ece7 fcvtzu w7, d7, #5 + 1fc: 9e59ece7 fcvtzu x7, d7, #5 + 200: 1e42ece7 scvtf d7, w7, #5 + 204: 9e42ece7 scvtf d7, x7, #5 + 208: 1e43ece7 ucvtf d7, w7, #5 + 20c: 9e43ece7 ucvtf d7, x7, #5 + 210: 1e18e8e7 fcvtzs w7, s7, #6 + 214: 9e18e8e7 fcvtzs x7, s7, #6 + 218: 1e19e8e7 fcvtzu w7, s7, #6 + 21c: 9e19e8e7 fcvtzu x7, s7, #6 + 220: 1e02e8e7 scvtf s7, w7, #6 + 224: 9e02e8e7 scvtf s7, x7, #6 + 228: 1e03e8e7 ucvtf s7, w7, #6 + 22c: 9e03e8e7 ucvtf s7, x7, #6 + 230: 1e58e8e7 fcvtzs w7, d7, #6 + 234: 9e58e8e7 fcvtzs x7, d7, #6 + 238: 1e59e8e7 fcvtzu w7, d7, #6 + 23c: 9e59e8e7 fcvtzu x7, d7, #6 + 240: 1e42e8e7 scvtf d7, w7, #6 + 244: 9e42e8e7 scvtf d7, x7, #6 + 248: 1e43e8e7 ucvtf d7, w7, #6 + 24c: 9e43e8e7 ucvtf d7, x7, #6 + 250: 1e18e4e7 fcvtzs w7, s7, #7 + 254: 9e18e4e7 fcvtzs x7, s7, #7 + 258: 1e19e4e7 fcvtzu w7, s7, #7 + 25c: 9e19e4e7 fcvtzu x7, s7, #7 + 260: 1e02e4e7 scvtf s7, w7, #7 + 264: 9e02e4e7 scvtf s7, x7, #7 + 268: 1e03e4e7 ucvtf s7, w7, #7 + 26c: 9e03e4e7 ucvtf s7, x7, #7 + 270: 1e58e4e7 fcvtzs w7, d7, #7 + 274: 9e58e4e7 fcvtzs x7, d7, #7 + 278: 1e59e4e7 fcvtzu w7, d7, #7 + 27c: 9e59e4e7 fcvtzu x7, d7, #7 + 280: 1e42e4e7 scvtf d7, w7, #7 + 284: 9e42e4e7 scvtf d7, x7, #7 + 288: 1e43e4e7 ucvtf d7, w7, #7 + 28c: 9e43e4e7 ucvtf d7, x7, #7 + 290: 1e18e0e7 fcvtzs w7, s7, #8 + 294: 9e18e0e7 fcvtzs x7, s7, #8 + 298: 1e19e0e7 fcvtzu w7, s7, #8 + 29c: 9e19e0e7 fcvtzu x7, s7, #8 + 2a0: 1e02e0e7 scvtf s7, w7, #8 + 2a4: 9e02e0e7 scvtf s7, x7, #8 + 2a8: 1e03e0e7 ucvtf s7, w7, #8 + 2ac: 9e03e0e7 ucvtf s7, x7, #8 + 2b0: 1e58e0e7 fcvtzs w7, d7, #8 + 2b4: 9e58e0e7 fcvtzs x7, d7, #8 + 2b8: 1e59e0e7 fcvtzu w7, d7, #8 + 2bc: 9e59e0e7 fcvtzu x7, d7, #8 + 2c0: 1e42e0e7 scvtf d7, w7, #8 + 2c4: 9e42e0e7 scvtf d7, x7, #8 + 2c8: 1e43e0e7 ucvtf d7, w7, #8 + 2cc: 9e43e0e7 ucvtf d7, x7, #8 + 2d0: 1e18dce7 fcvtzs w7, s7, #9 + 2d4: 9e18dce7 fcvtzs x7, s7, #9 + 2d8: 1e19dce7 fcvtzu w7, s7, #9 + 2dc: 9e19dce7 fcvtzu x7, s7, #9 + 2e0: 1e02dce7 scvtf s7, w7, #9 + 2e4: 9e02dce7 scvtf s7, x7, #9 + 2e8: 1e03dce7 ucvtf s7, w7, #9 + 2ec: 9e03dce7 ucvtf s7, x7, #9 + 2f0: 1e58dce7 fcvtzs w7, d7, #9 + 2f4: 9e58dce7 fcvtzs x7, d7, #9 + 2f8: 1e59dce7 fcvtzu w7, d7, #9 + 2fc: 9e59dce7 fcvtzu x7, d7, #9 + 300: 1e42dce7 scvtf d7, w7, #9 + 304: 9e42dce7 scvtf d7, x7, #9 + 308: 1e43dce7 ucvtf d7, w7, #9 + 30c: 9e43dce7 ucvtf d7, x7, #9 + 310: 1e18d8e7 fcvtzs w7, s7, #10 + 314: 9e18d8e7 fcvtzs x7, s7, #10 + 318: 1e19d8e7 fcvtzu w7, s7, #10 + 31c: 9e19d8e7 fcvtzu x7, s7, #10 + 320: 1e02d8e7 scvtf s7, w7, #10 + 324: 9e02d8e7 scvtf s7, x7, #10 + 328: 1e03d8e7 ucvtf s7, w7, #10 + 32c: 9e03d8e7 ucvtf s7, x7, #10 + 330: 1e58d8e7 fcvtzs w7, d7, #10 + 334: 9e58d8e7 fcvtzs x7, d7, #10 + 338: 1e59d8e7 fcvtzu w7, d7, #10 + 33c: 9e59d8e7 fcvtzu x7, d7, #10 + 340: 1e42d8e7 scvtf d7, w7, #10 + 344: 9e42d8e7 scvtf d7, x7, #10 + 348: 1e43d8e7 ucvtf d7, w7, #10 + 34c: 9e43d8e7 ucvtf d7, x7, #10 + 350: 1e18d4e7 fcvtzs w7, s7, #11 + 354: 9e18d4e7 fcvtzs x7, s7, #11 + 358: 1e19d4e7 fcvtzu w7, s7, #11 + 35c: 9e19d4e7 fcvtzu x7, s7, #11 + 360: 1e02d4e7 scvtf s7, w7, #11 + 364: 9e02d4e7 scvtf s7, x7, #11 + 368: 1e03d4e7 ucvtf s7, w7, #11 + 36c: 9e03d4e7 ucvtf s7, x7, #11 + 370: 1e58d4e7 fcvtzs w7, d7, #11 + 374: 9e58d4e7 fcvtzs x7, d7, #11 + 378: 1e59d4e7 fcvtzu w7, d7, #11 + 37c: 9e59d4e7 fcvtzu x7, d7, #11 + 380: 1e42d4e7 scvtf d7, w7, #11 + 384: 9e42d4e7 scvtf d7, x7, #11 + 388: 1e43d4e7 ucvtf d7, w7, #11 + 38c: 9e43d4e7 ucvtf d7, x7, #11 + 390: 1e18d0e7 fcvtzs w7, s7, #12 + 394: 9e18d0e7 fcvtzs x7, s7, #12 + 398: 1e19d0e7 fcvtzu w7, s7, #12 + 39c: 9e19d0e7 fcvtzu x7, s7, #12 + 3a0: 1e02d0e7 scvtf s7, w7, #12 + 3a4: 9e02d0e7 scvtf s7, x7, #12 + 3a8: 1e03d0e7 ucvtf s7, w7, #12 + 3ac: 9e03d0e7 ucvtf s7, x7, #12 + 3b0: 1e58d0e7 fcvtzs w7, d7, #12 + 3b4: 9e58d0e7 fcvtzs x7, d7, #12 + 3b8: 1e59d0e7 fcvtzu w7, d7, #12 + 3bc: 9e59d0e7 fcvtzu x7, d7, #12 + 3c0: 1e42d0e7 scvtf d7, w7, #12 + 3c4: 9e42d0e7 scvtf d7, x7, #12 + 3c8: 1e43d0e7 ucvtf d7, w7, #12 + 3cc: 9e43d0e7 ucvtf d7, x7, #12 + 3d0: 1e18cce7 fcvtzs w7, s7, #13 + 3d4: 9e18cce7 fcvtzs x7, s7, #13 + 3d8: 1e19cce7 fcvtzu w7, s7, #13 + 3dc: 9e19cce7 fcvtzu x7, s7, #13 + 3e0: 1e02cce7 scvtf s7, w7, #13 + 3e4: 9e02cce7 scvtf s7, x7, #13 + 3e8: 1e03cce7 ucvtf s7, w7, #13 + 3ec: 9e03cce7 ucvtf s7, x7, #13 + 3f0: 1e58cce7 fcvtzs w7, d7, #13 + 3f4: 9e58cce7 fcvtzs x7, d7, #13 + 3f8: 1e59cce7 fcvtzu w7, d7, #13 + 3fc: 9e59cce7 fcvtzu x7, d7, #13 + 400: 1e42cce7 scvtf d7, w7, #13 + 404: 9e42cce7 scvtf d7, x7, #13 + 408: 1e43cce7 ucvtf d7, w7, #13 + 40c: 9e43cce7 ucvtf d7, x7, #13 + 410: 1e18c8e7 fcvtzs w7, s7, #14 + 414: 9e18c8e7 fcvtzs x7, s7, #14 + 418: 1e19c8e7 fcvtzu w7, s7, #14 + 41c: 9e19c8e7 fcvtzu x7, s7, #14 + 420: 1e02c8e7 scvtf s7, w7, #14 + 424: 9e02c8e7 scvtf s7, x7, #14 + 428: 1e03c8e7 ucvtf s7, w7, #14 + 42c: 9e03c8e7 ucvtf s7, x7, #14 + 430: 1e58c8e7 fcvtzs w7, d7, #14 + 434: 9e58c8e7 fcvtzs x7, d7, #14 + 438: 1e59c8e7 fcvtzu w7, d7, #14 + 43c: 9e59c8e7 fcvtzu x7, d7, #14 + 440: 1e42c8e7 scvtf d7, w7, #14 + 444: 9e42c8e7 scvtf d7, x7, #14 + 448: 1e43c8e7 ucvtf d7, w7, #14 + 44c: 9e43c8e7 ucvtf d7, x7, #14 + 450: 1e18c4e7 fcvtzs w7, s7, #15 + 454: 9e18c4e7 fcvtzs x7, s7, #15 + 458: 1e19c4e7 fcvtzu w7, s7, #15 + 45c: 9e19c4e7 fcvtzu x7, s7, #15 + 460: 1e02c4e7 scvtf s7, w7, #15 + 464: 9e02c4e7 scvtf s7, x7, #15 + 468: 1e03c4e7 ucvtf s7, w7, #15 + 46c: 9e03c4e7 ucvtf s7, x7, #15 + 470: 1e58c4e7 fcvtzs w7, d7, #15 + 474: 9e58c4e7 fcvtzs x7, d7, #15 + 478: 1e59c4e7 fcvtzu w7, d7, #15 + 47c: 9e59c4e7 fcvtzu x7, d7, #15 + 480: 1e42c4e7 scvtf d7, w7, #15 + 484: 9e42c4e7 scvtf d7, x7, #15 + 488: 1e43c4e7 ucvtf d7, w7, #15 + 48c: 9e43c4e7 ucvtf d7, x7, #15 + 490: 1e18c0e7 fcvtzs w7, s7, #16 + 494: 9e18c0e7 fcvtzs x7, s7, #16 + 498: 1e19c0e7 fcvtzu w7, s7, #16 + 49c: 9e19c0e7 fcvtzu x7, s7, #16 + 4a0: 1e02c0e7 scvtf s7, w7, #16 + 4a4: 9e02c0e7 scvtf s7, x7, #16 + 4a8: 1e03c0e7 ucvtf s7, w7, #16 + 4ac: 9e03c0e7 ucvtf s7, x7, #16 + 4b0: 1e58c0e7 fcvtzs w7, d7, #16 + 4b4: 9e58c0e7 fcvtzs x7, d7, #16 + 4b8: 1e59c0e7 fcvtzu w7, d7, #16 + 4bc: 9e59c0e7 fcvtzu x7, d7, #16 + 4c0: 1e42c0e7 scvtf d7, w7, #16 + 4c4: 9e42c0e7 scvtf d7, x7, #16 + 4c8: 1e43c0e7 ucvtf d7, w7, #16 + 4cc: 9e43c0e7 ucvtf d7, x7, #16 + 4d0: 1e18bce7 fcvtzs w7, s7, #17 + 4d4: 9e18bce7 fcvtzs x7, s7, #17 + 4d8: 1e19bce7 fcvtzu w7, s7, #17 + 4dc: 9e19bce7 fcvtzu x7, s7, #17 + 4e0: 1e02bce7 scvtf s7, w7, #17 + 4e4: 9e02bce7 scvtf s7, x7, #17 + 4e8: 1e03bce7 ucvtf s7, w7, #17 + 4ec: 9e03bce7 ucvtf s7, x7, #17 + 4f0: 1e58bce7 fcvtzs w7, d7, #17 + 4f4: 9e58bce7 fcvtzs x7, d7, #17 + 4f8: 1e59bce7 fcvtzu w7, d7, #17 + 4fc: 9e59bce7 fcvtzu x7, d7, #17 + 500: 1e42bce7 scvtf d7, w7, #17 + 504: 9e42bce7 scvtf d7, x7, #17 + 508: 1e43bce7 ucvtf d7, w7, #17 + 50c: 9e43bce7 ucvtf d7, x7, #17 + 510: 1e18b8e7 fcvtzs w7, s7, #18 + 514: 9e18b8e7 fcvtzs x7, s7, #18 + 518: 1e19b8e7 fcvtzu w7, s7, #18 + 51c: 9e19b8e7 fcvtzu x7, s7, #18 + 520: 1e02b8e7 scvtf s7, w7, #18 + 524: 9e02b8e7 scvtf s7, x7, #18 + 528: 1e03b8e7 ucvtf s7, w7, #18 + 52c: 9e03b8e7 ucvtf s7, x7, #18 + 530: 1e58b8e7 fcvtzs w7, d7, #18 + 534: 9e58b8e7 fcvtzs x7, d7, #18 + 538: 1e59b8e7 fcvtzu w7, d7, #18 + 53c: 9e59b8e7 fcvtzu x7, d7, #18 + 540: 1e42b8e7 scvtf d7, w7, #18 + 544: 9e42b8e7 scvtf d7, x7, #18 + 548: 1e43b8e7 ucvtf d7, w7, #18 + 54c: 9e43b8e7 ucvtf d7, x7, #18 + 550: 1e18b4e7 fcvtzs w7, s7, #19 + 554: 9e18b4e7 fcvtzs x7, s7, #19 + 558: 1e19b4e7 fcvtzu w7, s7, #19 + 55c: 9e19b4e7 fcvtzu x7, s7, #19 + 560: 1e02b4e7 scvtf s7, w7, #19 + 564: 9e02b4e7 scvtf s7, x7, #19 + 568: 1e03b4e7 ucvtf s7, w7, #19 + 56c: 9e03b4e7 ucvtf s7, x7, #19 + 570: 1e58b4e7 fcvtzs w7, d7, #19 + 574: 9e58b4e7 fcvtzs x7, d7, #19 + 578: 1e59b4e7 fcvtzu w7, d7, #19 + 57c: 9e59b4e7 fcvtzu x7, d7, #19 + 580: 1e42b4e7 scvtf d7, w7, #19 + 584: 9e42b4e7 scvtf d7, x7, #19 + 588: 1e43b4e7 ucvtf d7, w7, #19 + 58c: 9e43b4e7 ucvtf d7, x7, #19 + 590: 1e18b0e7 fcvtzs w7, s7, #20 + 594: 9e18b0e7 fcvtzs x7, s7, #20 + 598: 1e19b0e7 fcvtzu w7, s7, #20 + 59c: 9e19b0e7 fcvtzu x7, s7, #20 + 5a0: 1e02b0e7 scvtf s7, w7, #20 + 5a4: 9e02b0e7 scvtf s7, x7, #20 + 5a8: 1e03b0e7 ucvtf s7, w7, #20 + 5ac: 9e03b0e7 ucvtf s7, x7, #20 + 5b0: 1e58b0e7 fcvtzs w7, d7, #20 + 5b4: 9e58b0e7 fcvtzs x7, d7, #20 + 5b8: 1e59b0e7 fcvtzu w7, d7, #20 + 5bc: 9e59b0e7 fcvtzu x7, d7, #20 + 5c0: 1e42b0e7 scvtf d7, w7, #20 + 5c4: 9e42b0e7 scvtf d7, x7, #20 + 5c8: 1e43b0e7 ucvtf d7, w7, #20 + 5cc: 9e43b0e7 ucvtf d7, x7, #20 + 5d0: 1e18ace7 fcvtzs w7, s7, #21 + 5d4: 9e18ace7 fcvtzs x7, s7, #21 + 5d8: 1e19ace7 fcvtzu w7, s7, #21 + 5dc: 9e19ace7 fcvtzu x7, s7, #21 + 5e0: 1e02ace7 scvtf s7, w7, #21 + 5e4: 9e02ace7 scvtf s7, x7, #21 + 5e8: 1e03ace7 ucvtf s7, w7, #21 + 5ec: 9e03ace7 ucvtf s7, x7, #21 + 5f0: 1e58ace7 fcvtzs w7, d7, #21 + 5f4: 9e58ace7 fcvtzs x7, d7, #21 + 5f8: 1e59ace7 fcvtzu w7, d7, #21 + 5fc: 9e59ace7 fcvtzu x7, d7, #21 + 600: 1e42ace7 scvtf d7, w7, #21 + 604: 9e42ace7 scvtf d7, x7, #21 + 608: 1e43ace7 ucvtf d7, w7, #21 + 60c: 9e43ace7 ucvtf d7, x7, #21 + 610: 1e18a8e7 fcvtzs w7, s7, #22 + 614: 9e18a8e7 fcvtzs x7, s7, #22 + 618: 1e19a8e7 fcvtzu w7, s7, #22 + 61c: 9e19a8e7 fcvtzu x7, s7, #22 + 620: 1e02a8e7 scvtf s7, w7, #22 + 624: 9e02a8e7 scvtf s7, x7, #22 + 628: 1e03a8e7 ucvtf s7, w7, #22 + 62c: 9e03a8e7 ucvtf s7, x7, #22 + 630: 1e58a8e7 fcvtzs w7, d7, #22 + 634: 9e58a8e7 fcvtzs x7, d7, #22 + 638: 1e59a8e7 fcvtzu w7, d7, #22 + 63c: 9e59a8e7 fcvtzu x7, d7, #22 + 640: 1e42a8e7 scvtf d7, w7, #22 + 644: 9e42a8e7 scvtf d7, x7, #22 + 648: 1e43a8e7 ucvtf d7, w7, #22 + 64c: 9e43a8e7 ucvtf d7, x7, #22 + 650: 1e18a4e7 fcvtzs w7, s7, #23 + 654: 9e18a4e7 fcvtzs x7, s7, #23 + 658: 1e19a4e7 fcvtzu w7, s7, #23 + 65c: 9e19a4e7 fcvtzu x7, s7, #23 + 660: 1e02a4e7 scvtf s7, w7, #23 + 664: 9e02a4e7 scvtf s7, x7, #23 + 668: 1e03a4e7 ucvtf s7, w7, #23 + 66c: 9e03a4e7 ucvtf s7, x7, #23 + 670: 1e58a4e7 fcvtzs w7, d7, #23 + 674: 9e58a4e7 fcvtzs x7, d7, #23 + 678: 1e59a4e7 fcvtzu w7, d7, #23 + 67c: 9e59a4e7 fcvtzu x7, d7, #23 + 680: 1e42a4e7 scvtf d7, w7, #23 + 684: 9e42a4e7 scvtf d7, x7, #23 + 688: 1e43a4e7 ucvtf d7, w7, #23 + 68c: 9e43a4e7 ucvtf d7, x7, #23 + 690: 1e18a0e7 fcvtzs w7, s7, #24 + 694: 9e18a0e7 fcvtzs x7, s7, #24 + 698: 1e19a0e7 fcvtzu w7, s7, #24 + 69c: 9e19a0e7 fcvtzu x7, s7, #24 + 6a0: 1e02a0e7 scvtf s7, w7, #24 + 6a4: 9e02a0e7 scvtf s7, x7, #24 + 6a8: 1e03a0e7 ucvtf s7, w7, #24 + 6ac: 9e03a0e7 ucvtf s7, x7, #24 + 6b0: 1e58a0e7 fcvtzs w7, d7, #24 + 6b4: 9e58a0e7 fcvtzs x7, d7, #24 + 6b8: 1e59a0e7 fcvtzu w7, d7, #24 + 6bc: 9e59a0e7 fcvtzu x7, d7, #24 + 6c0: 1e42a0e7 scvtf d7, w7, #24 + 6c4: 9e42a0e7 scvtf d7, x7, #24 + 6c8: 1e43a0e7 ucvtf d7, w7, #24 + 6cc: 9e43a0e7 ucvtf d7, x7, #24 + 6d0: 1e189ce7 fcvtzs w7, s7, #25 + 6d4: 9e189ce7 fcvtzs x7, s7, #25 + 6d8: 1e199ce7 fcvtzu w7, s7, #25 + 6dc: 9e199ce7 fcvtzu x7, s7, #25 + 6e0: 1e029ce7 scvtf s7, w7, #25 + 6e4: 9e029ce7 scvtf s7, x7, #25 + 6e8: 1e039ce7 ucvtf s7, w7, #25 + 6ec: 9e039ce7 ucvtf s7, x7, #25 + 6f0: 1e589ce7 fcvtzs w7, d7, #25 + 6f4: 9e589ce7 fcvtzs x7, d7, #25 + 6f8: 1e599ce7 fcvtzu w7, d7, #25 + 6fc: 9e599ce7 fcvtzu x7, d7, #25 + 700: 1e429ce7 scvtf d7, w7, #25 + 704: 9e429ce7 scvtf d7, x7, #25 + 708: 1e439ce7 ucvtf d7, w7, #25 + 70c: 9e439ce7 ucvtf d7, x7, #25 + 710: 1e1898e7 fcvtzs w7, s7, #26 + 714: 9e1898e7 fcvtzs x7, s7, #26 + 718: 1e1998e7 fcvtzu w7, s7, #26 + 71c: 9e1998e7 fcvtzu x7, s7, #26 + 720: 1e0298e7 scvtf s7, w7, #26 + 724: 9e0298e7 scvtf s7, x7, #26 + 728: 1e0398e7 ucvtf s7, w7, #26 + 72c: 9e0398e7 ucvtf s7, x7, #26 + 730: 1e5898e7 fcvtzs w7, d7, #26 + 734: 9e5898e7 fcvtzs x7, d7, #26 + 738: 1e5998e7 fcvtzu w7, d7, #26 + 73c: 9e5998e7 fcvtzu x7, d7, #26 + 740: 1e4298e7 scvtf d7, w7, #26 + 744: 9e4298e7 scvtf d7, x7, #26 + 748: 1e4398e7 ucvtf d7, w7, #26 + 74c: 9e4398e7 ucvtf d7, x7, #26 + 750: 1e1894e7 fcvtzs w7, s7, #27 + 754: 9e1894e7 fcvtzs x7, s7, #27 + 758: 1e1994e7 fcvtzu w7, s7, #27 + 75c: 9e1994e7 fcvtzu x7, s7, #27 + 760: 1e0294e7 scvtf s7, w7, #27 + 764: 9e0294e7 scvtf s7, x7, #27 + 768: 1e0394e7 ucvtf s7, w7, #27 + 76c: 9e0394e7 ucvtf s7, x7, #27 + 770: 1e5894e7 fcvtzs w7, d7, #27 + 774: 9e5894e7 fcvtzs x7, d7, #27 + 778: 1e5994e7 fcvtzu w7, d7, #27 + 77c: 9e5994e7 fcvtzu x7, d7, #27 + 780: 1e4294e7 scvtf d7, w7, #27 + 784: 9e4294e7 scvtf d7, x7, #27 + 788: 1e4394e7 ucvtf d7, w7, #27 + 78c: 9e4394e7 ucvtf d7, x7, #27 + 790: 1e1890e7 fcvtzs w7, s7, #28 + 794: 9e1890e7 fcvtzs x7, s7, #28 + 798: 1e1990e7 fcvtzu w7, s7, #28 + 79c: 9e1990e7 fcvtzu x7, s7, #28 + 7a0: 1e0290e7 scvtf s7, w7, #28 + 7a4: 9e0290e7 scvtf s7, x7, #28 + 7a8: 1e0390e7 ucvtf s7, w7, #28 + 7ac: 9e0390e7 ucvtf s7, x7, #28 + 7b0: 1e5890e7 fcvtzs w7, d7, #28 + 7b4: 9e5890e7 fcvtzs x7, d7, #28 + 7b8: 1e5990e7 fcvtzu w7, d7, #28 + 7bc: 9e5990e7 fcvtzu x7, d7, #28 + 7c0: 1e4290e7 scvtf d7, w7, #28 + 7c4: 9e4290e7 scvtf d7, x7, #28 + 7c8: 1e4390e7 ucvtf d7, w7, #28 + 7cc: 9e4390e7 ucvtf d7, x7, #28 + 7d0: 1e188ce7 fcvtzs w7, s7, #29 + 7d4: 9e188ce7 fcvtzs x7, s7, #29 + 7d8: 1e198ce7 fcvtzu w7, s7, #29 + 7dc: 9e198ce7 fcvtzu x7, s7, #29 + 7e0: 1e028ce7 scvtf s7, w7, #29 + 7e4: 9e028ce7 scvtf s7, x7, #29 + 7e8: 1e038ce7 ucvtf s7, w7, #29 + 7ec: 9e038ce7 ucvtf s7, x7, #29 + 7f0: 1e588ce7 fcvtzs w7, d7, #29 + 7f4: 9e588ce7 fcvtzs x7, d7, #29 + 7f8: 1e598ce7 fcvtzu w7, d7, #29 + 7fc: 9e598ce7 fcvtzu x7, d7, #29 + 800: 1e428ce7 scvtf d7, w7, #29 + 804: 9e428ce7 scvtf d7, x7, #29 + 808: 1e438ce7 ucvtf d7, w7, #29 + 80c: 9e438ce7 ucvtf d7, x7, #29 + 810: 1e1888e7 fcvtzs w7, s7, #30 + 814: 9e1888e7 fcvtzs x7, s7, #30 + 818: 1e1988e7 fcvtzu w7, s7, #30 + 81c: 9e1988e7 fcvtzu x7, s7, #30 + 820: 1e0288e7 scvtf s7, w7, #30 + 824: 9e0288e7 scvtf s7, x7, #30 + 828: 1e0388e7 ucvtf s7, w7, #30 + 82c: 9e0388e7 ucvtf s7, x7, #30 + 830: 1e5888e7 fcvtzs w7, d7, #30 + 834: 9e5888e7 fcvtzs x7, d7, #30 + 838: 1e5988e7 fcvtzu w7, d7, #30 + 83c: 9e5988e7 fcvtzu x7, d7, #30 + 840: 1e4288e7 scvtf d7, w7, #30 + 844: 9e4288e7 scvtf d7, x7, #30 + 848: 1e4388e7 ucvtf d7, w7, #30 + 84c: 9e4388e7 ucvtf d7, x7, #30 + 850: 1e1884e7 fcvtzs w7, s7, #31 + 854: 9e1884e7 fcvtzs x7, s7, #31 + 858: 1e1984e7 fcvtzu w7, s7, #31 + 85c: 9e1984e7 fcvtzu x7, s7, #31 + 860: 1e0284e7 scvtf s7, w7, #31 + 864: 9e0284e7 scvtf s7, x7, #31 + 868: 1e0384e7 ucvtf s7, w7, #31 + 86c: 9e0384e7 ucvtf s7, x7, #31 + 870: 1e5884e7 fcvtzs w7, d7, #31 + 874: 9e5884e7 fcvtzs x7, d7, #31 + 878: 1e5984e7 fcvtzu w7, d7, #31 + 87c: 9e5984e7 fcvtzu x7, d7, #31 + 880: 1e4284e7 scvtf d7, w7, #31 + 884: 9e4284e7 scvtf d7, x7, #31 + 888: 1e4384e7 ucvtf d7, w7, #31 + 88c: 9e4384e7 ucvtf d7, x7, #31 + 890: 1e1880e7 fcvtzs w7, s7, #32 + 894: 9e1880e7 fcvtzs x7, s7, #32 + 898: 1e1980e7 fcvtzu w7, s7, #32 + 89c: 9e1980e7 fcvtzu x7, s7, #32 + 8a0: 1e0280e7 scvtf s7, w7, #32 + 8a4: 9e0280e7 scvtf s7, x7, #32 + 8a8: 1e0380e7 ucvtf s7, w7, #32 + 8ac: 9e0380e7 ucvtf s7, x7, #32 + 8b0: 1e5880e7 fcvtzs w7, d7, #32 + 8b4: 9e5880e7 fcvtzs x7, d7, #32 + 8b8: 1e5980e7 fcvtzu w7, d7, #32 + 8bc: 9e5980e7 fcvtzu x7, d7, #32 + 8c0: 1e4280e7 scvtf d7, w7, #32 + 8c4: 9e4280e7 scvtf d7, x7, #32 + 8c8: 1e4380e7 ucvtf d7, w7, #32 + 8cc: 9e4380e7 ucvtf d7, x7, #32 + 8d0: 9e187ce7 fcvtzs x7, s7, #33 + 8d4: 9e197ce7 fcvtzu x7, s7, #33 + 8d8: 9e027ce7 scvtf s7, x7, #33 + 8dc: 9e037ce7 ucvtf s7, x7, #33 + 8e0: 9e587ce7 fcvtzs x7, d7, #33 + 8e4: 9e597ce7 fcvtzu x7, d7, #33 + 8e8: 9e427ce7 scvtf d7, x7, #33 + 8ec: 9e437ce7 ucvtf d7, x7, #33 + 8f0: 9e1878e7 fcvtzs x7, s7, #34 + 8f4: 9e1978e7 fcvtzu x7, s7, #34 + 8f8: 9e0278e7 scvtf s7, x7, #34 + 8fc: 9e0378e7 ucvtf s7, x7, #34 + 900: 9e5878e7 fcvtzs x7, d7, #34 + 904: 9e5978e7 fcvtzu x7, d7, #34 + 908: 9e4278e7 scvtf d7, x7, #34 + 90c: 9e4378e7 ucvtf d7, x7, #34 + 910: 9e1874e7 fcvtzs x7, s7, #35 + 914: 9e1974e7 fcvtzu x7, s7, #35 + 918: 9e0274e7 scvtf s7, x7, #35 + 91c: 9e0374e7 ucvtf s7, x7, #35 + 920: 9e5874e7 fcvtzs x7, d7, #35 + 924: 9e5974e7 fcvtzu x7, d7, #35 + 928: 9e4274e7 scvtf d7, x7, #35 + 92c: 9e4374e7 ucvtf d7, x7, #35 + 930: 9e1870e7 fcvtzs x7, s7, #36 + 934: 9e1970e7 fcvtzu x7, s7, #36 + 938: 9e0270e7 scvtf s7, x7, #36 + 93c: 9e0370e7 ucvtf s7, x7, #36 + 940: 9e5870e7 fcvtzs x7, d7, #36 + 944: 9e5970e7 fcvtzu x7, d7, #36 + 948: 9e4270e7 scvtf d7, x7, #36 + 94c: 9e4370e7 ucvtf d7, x7, #36 + 950: 9e186ce7 fcvtzs x7, s7, #37 + 954: 9e196ce7 fcvtzu x7, s7, #37 + 958: 9e026ce7 scvtf s7, x7, #37 + 95c: 9e036ce7 ucvtf s7, x7, #37 + 960: 9e586ce7 fcvtzs x7, d7, #37 + 964: 9e596ce7 fcvtzu x7, d7, #37 + 968: 9e426ce7 scvtf d7, x7, #37 + 96c: 9e436ce7 ucvtf d7, x7, #37 + 970: 9e1868e7 fcvtzs x7, s7, #38 + 974: 9e1968e7 fcvtzu x7, s7, #38 + 978: 9e0268e7 scvtf s7, x7, #38 + 97c: 9e0368e7 ucvtf s7, x7, #38 + 980: 9e5868e7 fcvtzs x7, d7, #38 + 984: 9e5968e7 fcvtzu x7, d7, #38 + 988: 9e4268e7 scvtf d7, x7, #38 + 98c: 9e4368e7 ucvtf d7, x7, #38 + 990: 9e1864e7 fcvtzs x7, s7, #39 + 994: 9e1964e7 fcvtzu x7, s7, #39 + 998: 9e0264e7 scvtf s7, x7, #39 + 99c: 9e0364e7 ucvtf s7, x7, #39 + 9a0: 9e5864e7 fcvtzs x7, d7, #39 + 9a4: 9e5964e7 fcvtzu x7, d7, #39 + 9a8: 9e4264e7 scvtf d7, x7, #39 + 9ac: 9e4364e7 ucvtf d7, x7, #39 + 9b0: 9e1860e7 fcvtzs x7, s7, #40 + 9b4: 9e1960e7 fcvtzu x7, s7, #40 + 9b8: 9e0260e7 scvtf s7, x7, #40 + 9bc: 9e0360e7 ucvtf s7, x7, #40 + 9c0: 9e5860e7 fcvtzs x7, d7, #40 + 9c4: 9e5960e7 fcvtzu x7, d7, #40 + 9c8: 9e4260e7 scvtf d7, x7, #40 + 9cc: 9e4360e7 ucvtf d7, x7, #40 + 9d0: 9e185ce7 fcvtzs x7, s7, #41 + 9d4: 9e195ce7 fcvtzu x7, s7, #41 + 9d8: 9e025ce7 scvtf s7, x7, #41 + 9dc: 9e035ce7 ucvtf s7, x7, #41 + 9e0: 9e585ce7 fcvtzs x7, d7, #41 + 9e4: 9e595ce7 fcvtzu x7, d7, #41 + 9e8: 9e425ce7 scvtf d7, x7, #41 + 9ec: 9e435ce7 ucvtf d7, x7, #41 + 9f0: 9e1858e7 fcvtzs x7, s7, #42 + 9f4: 9e1958e7 fcvtzu x7, s7, #42 + 9f8: 9e0258e7 scvtf s7, x7, #42 + 9fc: 9e0358e7 ucvtf s7, x7, #42 + a00: 9e5858e7 fcvtzs x7, d7, #42 + a04: 9e5958e7 fcvtzu x7, d7, #42 + a08: 9e4258e7 scvtf d7, x7, #42 + a0c: 9e4358e7 ucvtf d7, x7, #42 + a10: 9e1854e7 fcvtzs x7, s7, #43 + a14: 9e1954e7 fcvtzu x7, s7, #43 + a18: 9e0254e7 scvtf s7, x7, #43 + a1c: 9e0354e7 ucvtf s7, x7, #43 + a20: 9e5854e7 fcvtzs x7, d7, #43 + a24: 9e5954e7 fcvtzu x7, d7, #43 + a28: 9e4254e7 scvtf d7, x7, #43 + a2c: 9e4354e7 ucvtf d7, x7, #43 + a30: 9e1850e7 fcvtzs x7, s7, #44 + a34: 9e1950e7 fcvtzu x7, s7, #44 + a38: 9e0250e7 scvtf s7, x7, #44 + a3c: 9e0350e7 ucvtf s7, x7, #44 + a40: 9e5850e7 fcvtzs x7, d7, #44 + a44: 9e5950e7 fcvtzu x7, d7, #44 + a48: 9e4250e7 scvtf d7, x7, #44 + a4c: 9e4350e7 ucvtf d7, x7, #44 + a50: 9e184ce7 fcvtzs x7, s7, #45 + a54: 9e194ce7 fcvtzu x7, s7, #45 + a58: 9e024ce7 scvtf s7, x7, #45 + a5c: 9e034ce7 ucvtf s7, x7, #45 + a60: 9e584ce7 fcvtzs x7, d7, #45 + a64: 9e594ce7 fcvtzu x7, d7, #45 + a68: 9e424ce7 scvtf d7, x7, #45 + a6c: 9e434ce7 ucvtf d7, x7, #45 + a70: 9e1848e7 fcvtzs x7, s7, #46 + a74: 9e1948e7 fcvtzu x7, s7, #46 + a78: 9e0248e7 scvtf s7, x7, #46 + a7c: 9e0348e7 ucvtf s7, x7, #46 + a80: 9e5848e7 fcvtzs x7, d7, #46 + a84: 9e5948e7 fcvtzu x7, d7, #46 + a88: 9e4248e7 scvtf d7, x7, #46 + a8c: 9e4348e7 ucvtf d7, x7, #46 + a90: 9e1844e7 fcvtzs x7, s7, #47 + a94: 9e1944e7 fcvtzu x7, s7, #47 + a98: 9e0244e7 scvtf s7, x7, #47 + a9c: 9e0344e7 ucvtf s7, x7, #47 + aa0: 9e5844e7 fcvtzs x7, d7, #47 + aa4: 9e5944e7 fcvtzu x7, d7, #47 + aa8: 9e4244e7 scvtf d7, x7, #47 + aac: 9e4344e7 ucvtf d7, x7, #47 + ab0: 9e1840e7 fcvtzs x7, s7, #48 + ab4: 9e1940e7 fcvtzu x7, s7, #48 + ab8: 9e0240e7 scvtf s7, x7, #48 + abc: 9e0340e7 ucvtf s7, x7, #48 + ac0: 9e5840e7 fcvtzs x7, d7, #48 + ac4: 9e5940e7 fcvtzu x7, d7, #48 + ac8: 9e4240e7 scvtf d7, x7, #48 + acc: 9e4340e7 ucvtf d7, x7, #48 + ad0: 9e183ce7 fcvtzs x7, s7, #49 + ad4: 9e193ce7 fcvtzu x7, s7, #49 + ad8: 9e023ce7 scvtf s7, x7, #49 + adc: 9e033ce7 ucvtf s7, x7, #49 + ae0: 9e583ce7 fcvtzs x7, d7, #49 + ae4: 9e593ce7 fcvtzu x7, d7, #49 + ae8: 9e423ce7 scvtf d7, x7, #49 + aec: 9e433ce7 ucvtf d7, x7, #49 + af0: 9e1838e7 fcvtzs x7, s7, #50 + af4: 9e1938e7 fcvtzu x7, s7, #50 + af8: 9e0238e7 scvtf s7, x7, #50 + afc: 9e0338e7 ucvtf s7, x7, #50 + b00: 9e5838e7 fcvtzs x7, d7, #50 + b04: 9e5938e7 fcvtzu x7, d7, #50 + b08: 9e4238e7 scvtf d7, x7, #50 + b0c: 9e4338e7 ucvtf d7, x7, #50 + b10: 9e1834e7 fcvtzs x7, s7, #51 + b14: 9e1934e7 fcvtzu x7, s7, #51 + b18: 9e0234e7 scvtf s7, x7, #51 + b1c: 9e0334e7 ucvtf s7, x7, #51 + b20: 9e5834e7 fcvtzs x7, d7, #51 + b24: 9e5934e7 fcvtzu x7, d7, #51 + b28: 9e4234e7 scvtf d7, x7, #51 + b2c: 9e4334e7 ucvtf d7, x7, #51 + b30: 9e1830e7 fcvtzs x7, s7, #52 + b34: 9e1930e7 fcvtzu x7, s7, #52 + b38: 9e0230e7 scvtf s7, x7, #52 + b3c: 9e0330e7 ucvtf s7, x7, #52 + b40: 9e5830e7 fcvtzs x7, d7, #52 + b44: 9e5930e7 fcvtzu x7, d7, #52 + b48: 9e4230e7 scvtf d7, x7, #52 + b4c: 9e4330e7 ucvtf d7, x7, #52 + b50: 9e182ce7 fcvtzs x7, s7, #53 + b54: 9e192ce7 fcvtzu x7, s7, #53 + b58: 9e022ce7 scvtf s7, x7, #53 + b5c: 9e032ce7 ucvtf s7, x7, #53 + b60: 9e582ce7 fcvtzs x7, d7, #53 + b64: 9e592ce7 fcvtzu x7, d7, #53 + b68: 9e422ce7 scvtf d7, x7, #53 + b6c: 9e432ce7 ucvtf d7, x7, #53 + b70: 9e1828e7 fcvtzs x7, s7, #54 + b74: 9e1928e7 fcvtzu x7, s7, #54 + b78: 9e0228e7 scvtf s7, x7, #54 + b7c: 9e0328e7 ucvtf s7, x7, #54 + b80: 9e5828e7 fcvtzs x7, d7, #54 + b84: 9e5928e7 fcvtzu x7, d7, #54 + b88: 9e4228e7 scvtf d7, x7, #54 + b8c: 9e4328e7 ucvtf d7, x7, #54 + b90: 9e1824e7 fcvtzs x7, s7, #55 + b94: 9e1924e7 fcvtzu x7, s7, #55 + b98: 9e0224e7 scvtf s7, x7, #55 + b9c: 9e0324e7 ucvtf s7, x7, #55 + ba0: 9e5824e7 fcvtzs x7, d7, #55 + ba4: 9e5924e7 fcvtzu x7, d7, #55 + ba8: 9e4224e7 scvtf d7, x7, #55 + bac: 9e4324e7 ucvtf d7, x7, #55 + bb0: 9e1820e7 fcvtzs x7, s7, #56 + bb4: 9e1920e7 fcvtzu x7, s7, #56 + bb8: 9e0220e7 scvtf s7, x7, #56 + bbc: 9e0320e7 ucvtf s7, x7, #56 + bc0: 9e5820e7 fcvtzs x7, d7, #56 + bc4: 9e5920e7 fcvtzu x7, d7, #56 + bc8: 9e4220e7 scvtf d7, x7, #56 + bcc: 9e4320e7 ucvtf d7, x7, #56 + bd0: 9e181ce7 fcvtzs x7, s7, #57 + bd4: 9e191ce7 fcvtzu x7, s7, #57 + bd8: 9e021ce7 scvtf s7, x7, #57 + bdc: 9e031ce7 ucvtf s7, x7, #57 + be0: 9e581ce7 fcvtzs x7, d7, #57 + be4: 9e591ce7 fcvtzu x7, d7, #57 + be8: 9e421ce7 scvtf d7, x7, #57 + bec: 9e431ce7 ucvtf d7, x7, #57 + bf0: 9e1818e7 fcvtzs x7, s7, #58 + bf4: 9e1918e7 fcvtzu x7, s7, #58 + bf8: 9e0218e7 scvtf s7, x7, #58 + bfc: 9e0318e7 ucvtf s7, x7, #58 + c00: 9e5818e7 fcvtzs x7, d7, #58 + c04: 9e5918e7 fcvtzu x7, d7, #58 + c08: 9e4218e7 scvtf d7, x7, #58 + c0c: 9e4318e7 ucvtf d7, x7, #58 + c10: 9e1814e7 fcvtzs x7, s7, #59 + c14: 9e1914e7 fcvtzu x7, s7, #59 + c18: 9e0214e7 scvtf s7, x7, #59 + c1c: 9e0314e7 ucvtf s7, x7, #59 + c20: 9e5814e7 fcvtzs x7, d7, #59 + c24: 9e5914e7 fcvtzu x7, d7, #59 + c28: 9e4214e7 scvtf d7, x7, #59 + c2c: 9e4314e7 ucvtf d7, x7, #59 + c30: 9e1810e7 fcvtzs x7, s7, #60 + c34: 9e1910e7 fcvtzu x7, s7, #60 + c38: 9e0210e7 scvtf s7, x7, #60 + c3c: 9e0310e7 ucvtf s7, x7, #60 + c40: 9e5810e7 fcvtzs x7, d7, #60 + c44: 9e5910e7 fcvtzu x7, d7, #60 + c48: 9e4210e7 scvtf d7, x7, #60 + c4c: 9e4310e7 ucvtf d7, x7, #60 + c50: 9e180ce7 fcvtzs x7, s7, #61 + c54: 9e190ce7 fcvtzu x7, s7, #61 + c58: 9e020ce7 scvtf s7, x7, #61 + c5c: 9e030ce7 ucvtf s7, x7, #61 + c60: 9e580ce7 fcvtzs x7, d7, #61 + c64: 9e590ce7 fcvtzu x7, d7, #61 + c68: 9e420ce7 scvtf d7, x7, #61 + c6c: 9e430ce7 ucvtf d7, x7, #61 + c70: 9e1808e7 fcvtzs x7, s7, #62 + c74: 9e1908e7 fcvtzu x7, s7, #62 + c78: 9e0208e7 scvtf s7, x7, #62 + c7c: 9e0308e7 ucvtf s7, x7, #62 + c80: 9e5808e7 fcvtzs x7, d7, #62 + c84: 9e5908e7 fcvtzu x7, d7, #62 + c88: 9e4208e7 scvtf d7, x7, #62 + c8c: 9e4308e7 ucvtf d7, x7, #62 + c90: 9e1804e7 fcvtzs x7, s7, #63 + c94: 9e1904e7 fcvtzu x7, s7, #63 + c98: 9e0204e7 scvtf s7, x7, #63 + c9c: 9e0304e7 ucvtf s7, x7, #63 + ca0: 9e5804e7 fcvtzs x7, d7, #63 + ca4: 9e5904e7 fcvtzu x7, d7, #63 + ca8: 9e4204e7 scvtf d7, x7, #63 + cac: 9e4304e7 ucvtf d7, x7, #63 + cb0: 9e1800e7 fcvtzs x7, s7, #64 + cb4: 9e1900e7 fcvtzu x7, s7, #64 + cb8: 9e0200e7 scvtf s7, x7, #64 + cbc: 9e0300e7 ucvtf s7, x7, #64 + cc0: 9e5800e7 fcvtzs x7, d7, #64 + cc4: 9e5900e7 fcvtzu x7, d7, #64 + cc8: 9e4200e7 scvtf d7, x7, #64 + ccc: 9e4300e7 ucvtf d7, x7, #64 + cd0: 9eae00e7 fmov x7, v7.d\[1\] + cd4: 9eaf00e7 fmov v7.d\[1\], x7 diff --git a/gas/testsuite/gas/aarch64/fp_cvt_int.s b/gas/testsuite/gas/aarch64/fp_cvt_int.s new file mode 100644 index 0000000..f6888ba --- /dev/null +++ b/gas/testsuite/gas/aarch64/fp_cvt_int.s @@ -0,0 +1,117 @@ +/* fp_cvt_ins.s Test file for AArch64 floating-point<->fixed-point + conversion and floating-point<->integer conversion instructions. + + Copyright 2011, 2012 Free Software Foundation, Inc. + Contributed by ARM Ltd. + + This file is part of GAS. + + GAS 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. + + GAS 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; see the file COPYING3. If not, + see <http://www.gnu.org/licenses/>. */ + + // SCVTF & UCVTF + .macro do_cvtf fbits, reg + .ifc \fbits, 0 + // Floating-point<->integer conversions + SCVTF \reg\()7, W7 + SCVTF \reg\()7, X7 + UCVTF \reg\()7, W7 + UCVTF \reg\()7, X7 + .else + // Floating-point<->fixed-point conversions + .ifle \fbits-32 + SCVTF \reg\()7, W7, #\fbits + .endif + SCVTF \reg\()7, X7, #\fbits + .ifle \fbits-32 + UCVTF \reg\()7, W7, #\fbits + .endif + UCVTF \reg\()7, X7, #\fbits + .endif + .endm + + // FMOV + .macro do_fmov type + .ifc \type, S + // 32-bit + FMOV W7, S7 + FMOV S7, W7 + .elseif \type == D + // 64-bit + FMOV X7, D7 + FMOV D7, X7 + .else + // 64-bit with V reg element + FMOV X7, V7.D[1] + FMOV V7.D[1], X7 + .endif + .endm + + .macro do_fcvt suffix, fbits, reg + .ifc \fbits, 0 + // Floating-point<->integer conversions + FCVT\suffix W7, \reg\()7 + FCVT\suffix X7, \reg\()7 + .else + // Floating-point<->fixed-point conversions + .ifle \fbits-32 + FCVT\suffix W7, \reg\()7, #\fbits + .endif + FCVT\suffix X7, \reg\()7, #\fbits + .endif + .endm + + .macro fcvts_with_fbits fbits + .ifc \fbits, 0 + // fp <-> integer + .irp reg, S, D + // single-precision and double precision + do_fcvt NS, \fbits, \reg + do_fcvt NU, \fbits, \reg + do_fcvt PS, \fbits, \reg + do_fcvt PU, \fbits, \reg + do_fcvt MS, \fbits, \reg + do_fcvt MU, \fbits, \reg + do_fcvt ZS, \fbits, \reg + do_fcvt ZU, \fbits, \reg + do_cvtf \fbits, \reg + do_fcvt AS, \fbits, \reg + do_fcvt AU, \fbits, \reg + do_fmov S + .endr + .else + // fp <-> fixed-point + // After ISA 2.06, only FCVTZ[US] and [US]CVTF are available + .irp reg, S, D + // single-precision and double precision + do_fcvt ZS, \fbits, \reg + do_fcvt ZU, \fbits, \reg + do_cvtf \fbits, \reg + .endr + .endif + .endm + + .macro fcvts_with_fbits_wrapper from=0, to=64 + fcvts_with_fbits \from + .if \to-\from + fcvts_with_fbits_wrapper "(\from+1)", \to + .endif + .endm + +func: + // Generate fcvt instructions without fbits and + // with fbits from 1 to 64, also generate [us]cvtf + // and fmov. + fcvts_with_fbits_wrapper from=0, to=64 + do_fmov V diff --git a/gas/testsuite/gas/aarch64/illegal-2.d b/gas/testsuite/gas/aarch64/illegal-2.d new file mode 100644 index 0000000..e925739 --- /dev/null +++ b/gas/testsuite/gas/aarch64/illegal-2.d @@ -0,0 +1,4 @@ +#name: Illegal Instructions - 2 +#as: +#source: illegal-2.s +#error-output: illegal-2.l diff --git a/gas/testsuite/gas/aarch64/illegal-2.l b/gas/testsuite/gas/aarch64/illegal-2.l new file mode 100644 index 0000000..2ba6894 --- /dev/null +++ b/gas/testsuite/gas/aarch64/illegal-2.l @@ -0,0 +1,8 @@ +[^:]*: Assembler messages: +[^:]*:10: Error: .*$ +[^:]*:13: Error: .*$ +[^:]*:14: Error: .*$ +[^:]*:15: Error: .*$ +[^:]*:16: Error: .*$ +[^:]*:19: Error: .*$ +[^:]*:20: Error: .*$ diff --git a/gas/testsuite/gas/aarch64/illegal-2.s b/gas/testsuite/gas/aarch64/illegal-2.s new file mode 100644 index 0000000..3aa7283 --- /dev/null +++ b/gas/testsuite/gas/aarch64/illegal-2.s @@ -0,0 +1,22 @@ +// illegal-2.s Test file for AArch64 instructions that should be rejected +// by the assembler. This test is a complement to the illegal.s test. +// md_apply_fix will not run if there is any error occurred in an earlier +// stage, which means errors should be reported by md_apply_fix will not +// be issued. This test hosts instructions that will only incur error +// report from md_apply_fix. + + +.text + mov x0, #deliberately_undefined_symbol + + // immediate out of range + add wsp, w0, #0xfff0, LSL #12 + add wsp, w0, #0xfff0, LSL #0 + add wsp, w0, u16, LSL #12 + add wsp, w0, u16, LSL #0 + + // immediate cannot be moved by a single instruction + mov wzr, #0x0f0f0f0f + mov wsp, #0x33030000 + +.set u16, 0xfff0 diff --git a/gas/testsuite/gas/aarch64/illegal.d b/gas/testsuite/gas/aarch64/illegal.d new file mode 100644 index 0000000..ade139c --- /dev/null +++ b/gas/testsuite/gas/aarch64/illegal.d @@ -0,0 +1,4 @@ +#name: Illegal Instructions +#as: +#source: illegal.s +#error-output: illegal.l diff --git a/gas/testsuite/gas/aarch64/illegal.l b/gas/testsuite/gas/aarch64/illegal.l new file mode 100644 index 0000000..74386ff --- /dev/null +++ b/gas/testsuite/gas/aarch64/illegal.l @@ -0,0 +1,549 @@ +[^:]*: Assembler messages: +[^:]*:24: Error: .*`urecpe v0.1d,v7.1d' +[^:]*:25: Error: .*`urecpe v0.2d,v7.2d' +[^:]*:26: Error: .*`ursqrte v0.1d,v7.1d' +[^:]*:27: Error: .*`ursqrte v0.2d,v7.2d' +[^:]*:30: Error: .*`saddlv b7,v31.8b' +[^:]*:31: Error: .*`saddlv d7,v31.2s' +[^:]*:32: Error: .*`saddlv q7,v31.2d' +[^:]*:33: Error: .*`smaxv s7,v31.2s' +[^:]*:34: Error: .*`sminv d7,v31.2d' +[^:]*:35: Error: .*`fmaxv h7,v31.8h' +[^:]*:36: Error: .*`fmaxv h7,v31.4h' +[^:]*:37: Error: .*`fminv d7,v31.2d' +[^:]*:39: Error: .*`abs b0,b31' +[^:]*:40: Error: .*`neg b0,b31' +[^:]*:41: Error: .*`abs h0,h31' +[^:]*:42: Error: .*`neg h0,h31' +[^:]*:43: Error: .*`abs s0,s31' +[^:]*:44: Error: .*`neg s0,s31' +[^:]*:46: Error: .*`fcvt s0,s0' +[^:]*:48: Error: .*`bfm w0,w1,8,43' +[^:]*:49: Error: .*`ubfm w0,x1,8,31' +[^:]*:51: Error: .*`aese v1.8b,v2.8b' +[^:]*:52: Error: .*`sha1h s7,d31' +[^:]*:53: Error: .*`sha1h q7,d31' +[^:]*:54: Error: .*`sha1su1 v7.4s,v7.2s' +[^:]*:55: Error: .*`sha256su0 v7.2d,v7.2d' +[^:]*:56: Error: .*`sha1c q7,q3,v7.4s' +[^:]*:57: Error: .*`sha1p s7,q8,v9.4s' +[^:]*:58: Error: .*`sha1m v8.4s,v7.4s,q8' +[^:]*:59: Error: .*`sha1su0 v0.2d,v1.2d,v2.2d' +[^:]*:60: Error: .*`sha256h q7,s2,v8.4s' +[^:]*:62: Error: .*`pmull v7.8b,v15.8b,v31.8b' +[^:]*:63: Error: .*`pmull v7.1q,v15.1q,v31.1d' +[^:]*:64: Error: .*`pmull2 v7.8h,v15.8b,v31.8b' +[^:]*:65: Error: .*`pmull2 v7.1q,v15.2d,v31.1q' +[^:]*:67: Error: .*`ld2 {v1.4h,v0.4h},\[x1\]' +[^:]*:68: Error: .*`strb x0,\[sp,x1,lsl#0\]' +[^:]*:69: Error: .*`strb w7,\[x30,x0,lsl\]' +[^:]*:70: Error: .*`strb w7,\[x30,x0,lsl#1\]' +[^:]*:71: Error: .*`ldtr x7,\[x15,266\]' +[^:]*:72: Error: .*`sttr x7,\[x15,#1\]!' +[^:]*:73: Error: .*`stxrb x2,w1,\[sp\]' +[^:]*:74: Error: .*`stxp w2,x3,w4,\[x0\]' +[^:]*:75: Error: .*`ldxp w3,x4,\[x30\]' +[^:]*:77: Error: .*`st2 {v4.2d,v5.2d},\[x3,#3\]' +[^:]*:78: Error: .*`st2 {v4.2d,v5.2d,v6.2d},\[x3\]' +[^:]*:79: Error: .*`st1 {v4.2d,v6.2d,v8.2d},\[x3\]' +[^:]*:80: Error: .*`st3 {v4.2d,v6.2d},\[x3\]' +[^:]*:81: Error: .*`st4 {v4.2d,v6.2d},\[x3\]' +[^:]*:82: Error: .*`st2 {v4.2d,v6.2d,v8.2d,v10.2d},\[x3\]' +[^:]*:83: Error: .*`st2 {v4.2d,v6.2d,v8.2d,v10.2d},\[x3\],48' +[^:]*:85: Error: .*`ext v0.8b,v1.8b,v2.8b,8' +[^:]*:86: Error: .*`ext v0.16b,v1.16b,v2.16b,20' +[^:]*:88: Error: .*`tbz w0,#40,0x17c' +[^:]*:90: Error: .*`svc' +[^:]*:92: Error: .*`fmov v1.D\[0\],x0' +[^:]*:93: Error: .*`fmov v2.S\[2\],x0' +[^:]*:94: Error: .*`fmov v2.S\[1\],x0' +[^:]*:95: Error: .*`fmov v2.D\[1\],w0' +[^:]*:97: Error: .*`smaddl w0,w1,w2,x3' +[^:]*:98: Error: .*`smaddl x0,x1,w2,x3' +[^:]*:99: Error: .*`smaddl x0,w1,x2,x3' +[^:]*:100: Error: .*`smaddl x0,w1,w2,w3' +[^:]*:102: Error: .*`ld1 {v1.s,v2.s}\[1\],\[x3\]' +[^:]*:103: Error: .*`st1 {v2.s,v3.s}\[1\],\[x4\]' +[^:]*:104: Error: .*`ld2 {v1.s,v2.s,v3.s}\[1\],\[x3\]' +[^:]*:105: Error: .*`st2 {v2.s,v2.s,v3.s}\[1\],\[x4\]' +[^:]*:106: Error: .*`ld3 {v1.s,v2.s,v3.s,v4.s}\[1\],\[x3\]' +[^:]*:107: Error: .*`st3 {v2.s,v3.s,v4.s,v5.s}\[1\],\[x4\]' +[^:]*:108: Error: .*`ld4 {v1.s}\[1\],\[x3\]' +[^:]*:109: Error: .*`st4 {v2.s}\[1\],\[x4\]' +[^:]*:111: Error: .*`ld2 {v1.b,v3.b}\[1\],\[x3\]' +[^:]*:112: Error: .*`st2 {v2.b,v4.b}\[1\],\[x4\]' +[^:]*:113: Error: .*`ld3 {v1.b,v3.b,v5.b}\[1\],\[x3\]' +[^:]*:114: Error: .*`st3 {v2.b,v4.b,v6.b}\[1\],\[x4\]' +[^:]*:115: Error: .*`ld4 {v1.b,v3.b,v5.b,v7.b}\[1\],\[x3\]' +[^:]*:116: Error: .*`st4 {v2.b,v4.b,v6.b,v8.b}\[1\],\[x4\]' +[^:]*:118: Error: .*`ld1 {v1.q}\[1\],\[x3\]' +[^:]*:120: Error: .*`ld1r {v1.4s,v3.4s},\[x3\]' +[^:]*:121: Error: .*`ld1r {v1.4s,v2.4s,v3.4s},\[x3\]' +[^:]*:122: Error: .*`ld2r {v1.4s,v2.4s,v3.4s},\[x3\]' +[^:]*:123: Error: .*`ld3r {v1.4s,v2.4s,v3.4s,v4.4s},\[x3\]' +[^:]*:124: Error: .*`ld4r {v1.4s},\[x3\]' +[^:]*:126: Error: .*`ld1r {v1.4s,v3.4s},\[x3\],x4' +[^:]*:127: Error: .*`ld1r {v1.4s,v2.4s,v3.4s},\[x3\],x4' +[^:]*:128: Error: .*`ld2r {v1.4s,v2.4s,v3.4s},\[x3\],x4' +[^:]*:129: Error: .*`ld3r {v1.4s,v2.4s,v3.4s,v4.4s},\[x3\],x4' +[^:]*:130: Error: .*`ld4r {v1.4s},\[x3\],x4' +[^:]*:132: Error: .*`ld1r {v1.4s},\[x3\],#1' +[^:]*:133: Error: .*`ld1r {v1.4s,v2.4s},\[x3\],#8' +[^:]*:134: Error: .*`ld2r {v1.4s,v2.4s},\[x3\],#4' +[^:]*:135: Error: .*`ld3r {v1.4s,v2.4s,v3.4s},\[x3\],#16' +[^:]*:136: Error: .*`ld4r {v1.4s,v2.4s,v3.4s,v4.4s},\[x3\],#32' +[^:]*:138: Error: .*`addp s1,v2.2s' +[^:]*:139: Error: .*`addp s1,v2.2d' +[^:]*:140: Error: .*`addp d1,v2.2s' +[^:]*:141: Error: .*`fmaxp s1,v2.4s' +[^:]*:143: Error: .*`add s1,s2,s3' +[^:]*:144: Error: .*`cmhi d1,d2,s3' +[^:]*:146: Error: .*`shll v0.8h,v1.8b,16' +[^:]*:147: Error: .*`shll2 v0.2d,v1.4s,16' +[^:]*:149: Error: .*`dup s1,v2.d\[1\]' +[^:]*:150: Error: .*`dup s1,v2.s\[4\]' +[^:]*:151: Error: .*`mov s1,v2.h\[1\]' +[^:]*:153: Error: .*`clrex #16' +[^:]*:155: Error: .*`msr daif,w5' +[^:]*:156: Error: .*`mrs w15,midr_el1' +[^:]*:157: Error: .*`mrs x0,dummy' +[^:]*:159: Error: .*`sshr v0.4s,v1.4s,#0' +[^:]*:160: Error: .*`sshr v0.4s,v1.4s,#33' +[^:]*:161: Error: .*`sshr v0.4h,v1.4h,#20' +[^:]*:163: Error: .*`shl v0.4s,v1.4s,#32' +[^:]*:164: Error: .*`fcvtzs v0.4h,v1.4h,#2' +[^:]*:165: Error: .*`uqshrn v0.2s,v1.2d,33' +[^:]*:166: Error: .*`uqrshrn v0.2s,v1.2s,32' +[^:]*:167: Error: .*`sshll v8.8h,v2.8b,#8' +[^:]*:169: Error: .*`sysl x7,#10,C15,C7,#11' +[^:]*:170: Error: .*`sysl w7,#1,C15,C7,#1' +[^:]*:172: Error: .*`dsb dummy' +[^:]*:173: Error: .*`dmb #16' +[^:]*:174: Error: .*`isb osh' +[^:]*:176: Error: .*`prfm 0x2f,LABEL1' +[^:]*:177: Error: .*`prfm pldl3strm,\[sp,#8\]!' +[^:]*:178: Error: .*`prfm pldl3strm,\[sp\],#8' +[^:]*:179: Error: .*`prfm pldl3strm,\[sp,w0,sxtw#3\]!' +[^:]*:180: Error: .*`prfm pldl3strm,=0x100' +[^:]*:182: Error: .*`sttr x0,LABEL1' +[^:]*:183: Error: .*`sttr x0,\[sp,#16\]!' +[^:]*:184: Error: .*`sttr x0,\[sp\],#16' +[^:]*:185: Error: .*`sttr x0,\[sp,x1\]' +[^:]*:187: Error: .*`ldur x0,LABEL1' +[^:]*:188: Error: .*`ldur x0,\[sp,#16\]!' +[^:]*:189: Error: .*`ldur x0,\[sp\],#16' +[^:]*:190: Error: .*`ldur x0,\[sp,x1\]' +[^:]*:192: Error: .*`ldr b0,=0x100' +[^:]*:193: Error: .*`ldr h0,LABEL1' +[^:]*:195: Error: .*`ic ivau' +[^:]*:196: Error: .*`ic ivau,w0' +[^:]*:197: Error: .*`ic ialluis,xzr' +[^:]*:198: Error: .*`ic ialluis,x0' +[^:]*:199: Error: .*`sys #0,c0,c0,0,w0' +[^:]*:200: Error: .*`msr spsel,#16' +[^:]*:201: Error: .*`msr cptr_el2,#15' +[^:]*:203: Error: .*`movz x1,#:abs_g2:u48,lsl#16' +[^:]*:204: Error: .*`movz x1,0xddee,lsl#8' +[^:]*:205: Error: .*`movz w1,#:abs_g2:u48' +[^:]*:206: Error: .*`movz w1,#:abs_g3:u48' +[^:]*:207: Error: .*`movk x1,#:abs_g1_s:s12' +[^:]*:209: Error: .*`movi v0.4s,#256' +[^:]*:210: Error: .*`movi v0.2d,#0xabcdef' +[^:]*:212: Error: .*`bic v0.4s,#255,msl#8' +[^:]*:213: Error: .*`bic v0.4s,#512' +[^:]*:214: Error: .*`bic v0.4s,#1,lsl#31' +[^:]*:217: Error: .*`orr v0.4s,#255,msl#8' +[^:]*:218: Error: .*`orr v0.4s,#512' +[^:]*:220: Error: .*`movi v0.4s,#127,lsl#4' +[^:]*:221: Error: .*`movi v0.4s,#127,msl#24' +[^:]*:224: Error: .*`mvni v0.4s,#127,lsl#4' +[^:]*:225: Error: .*`mvni v0.4s,#127,msl#24' +[^:]*:228: Error: .*`fmov v0.2s,#3.1415926' +[^:]*:229: Error: .*`fmov v0.4s,#3.1415926' +[^:]*:230: Error: .*`fmov v0.2d,#3.1415926' +[^:]*:231: Error: .*`fmov x0,#1.0' +[^:]*:232: Error: .*`fmov w0,w1' +[^:]*:234: Error: .*`msr #5,#0' +[^:]*:235: Error: .*`msr SPSel,#2' +[^:]*:237: Error: .*`tbl v0.16b,{v1.16b,v3.16b,v5.16b},v2.16b' +[^:]*:238: Error: .*`tbx v0.8b,{v1.16b,v3.16b,v5.16b,v7.16b},v2.8b' +[^:]*:264: Error: .*`ld2 {v0.8b,v2.8b},\[x0\],#16' +[^:]*:264: Error: .*`ld2 {v0.8b,v1.8b,v2.8b,v3.8b},\[x0\],#32' +[^:]*:264: Error: .*`ld2 {v0.8b,v2.8b},\[x0\],x7' +[^:]*:264: Error: .*`ld2 {v0.8b,v1.8b,v2.8b,v3.8b},\[x0\],x7' +[^:]*:264: Error: .*`ld2 {v0.4h,v2.4h},\[x0\],#16' +[^:]*:264: Error: .*`ld2 {v0.4h,v1.4h,v2.4h,v3.4h},\[x0\],#32' +[^:]*:264: Error: .*`ld2 {v0.4h,v2.4h},\[x0\],x7' +[^:]*:264: Error: .*`ld2 {v0.4h,v1.4h,v2.4h,v3.4h},\[x0\],x7' +[^:]*:264: Error: .*`ld2 {v0.2s,v2.2s},\[x0\],#16' +[^:]*:264: Error: .*`ld2 {v0.2s,v1.2s,v2.2s,v3.2s},\[x0\],#32' +[^:]*:264: Error: .*`ld2 {v0.2s,v2.2s},\[x0\],x7' +[^:]*:264: Error: .*`ld2 {v0.2s,v1.2s,v2.2s,v3.2s},\[x0\],x7' +[^:]*:264: Error: .*`st2 {v0.8b,v2.8b},\[x0\],#16' +[^:]*:264: Error: .*`st2 {v0.8b,v1.8b,v2.8b,v3.8b},\[x0\],#32' +[^:]*:264: Error: .*`st2 {v0.8b,v2.8b},\[x0\],x7' +[^:]*:264: Error: .*`st2 {v0.8b,v1.8b,v2.8b,v3.8b},\[x0\],x7' +[^:]*:264: Error: .*`st2 {v0.4h,v2.4h},\[x0\],#16' +[^:]*:264: Error: .*`st2 {v0.4h,v1.4h,v2.4h,v3.4h},\[x0\],#32' +[^:]*:264: Error: .*`st2 {v0.4h,v2.4h},\[x0\],x7' +[^:]*:264: Error: .*`st2 {v0.4h,v1.4h,v2.4h,v3.4h},\[x0\],x7' +[^:]*:264: Error: .*`st2 {v0.2s,v2.2s},\[x0\],#16' +[^:]*:264: Error: .*`st2 {v0.2s,v1.2s,v2.2s,v3.2s},\[x0\],#32' +[^:]*:264: Error: .*`st2 {v0.2s,v2.2s},\[x0\],x7' +[^:]*:264: Error: .*`st2 {v0.2s,v1.2s,v2.2s,v3.2s},\[x0\],x7' +[^:]*:270: Error: .*`ld2 {v0.16b,v2.16b},\[x0\],#32' +[^:]*:270: Error: .*`ld2 {v0.16b,v1.16b,v2.16b,v3.16b},\[x0\],#64' +[^:]*:270: Error: .*`ld2 {v0.16b,v2.16b},\[x0\],x7' +[^:]*:270: Error: .*`ld2 {v0.16b,v1.16b,v2.16b,v3.16b},\[x0\],x7' +[^:]*:270: Error: .*`ld2 {v0.8h,v2.8h},\[x0\],#32' +[^:]*:270: Error: .*`ld2 {v0.8h,v1.8h,v2.8h,v3.8h},\[x0\],#64' +[^:]*:270: Error: .*`ld2 {v0.8h,v2.8h},\[x0\],x7' +[^:]*:270: Error: .*`ld2 {v0.8h,v1.8h,v2.8h,v3.8h},\[x0\],x7' +[^:]*:270: Error: .*`ld2 {v0.4s,v2.4s},\[x0\],#32' +[^:]*:270: Error: .*`ld2 {v0.4s,v1.4s,v2.4s,v3.4s},\[x0\],#64' +[^:]*:270: Error: .*`ld2 {v0.4s,v2.4s},\[x0\],x7' +[^:]*:270: Error: .*`ld2 {v0.4s,v1.4s,v2.4s,v3.4s},\[x0\],x7' +[^:]*:270: Error: .*`ld2 {v0.2d,v2.2d},\[x0\],#32' +[^:]*:270: Error: .*`ld2 {v0.2d,v1.2d,v2.2d,v3.2d},\[x0\],#64' +[^:]*:270: Error: .*`ld2 {v0.2d,v2.2d},\[x0\],x7' +[^:]*:270: Error: .*`ld2 {v0.2d,v1.2d,v2.2d,v3.2d},\[x0\],x7' +[^:]*:270: Error: .*`st2 {v0.16b,v2.16b},\[x0\],#32' +[^:]*:270: Error: .*`st2 {v0.16b,v1.16b,v2.16b,v3.16b},\[x0\],#64' +[^:]*:270: Error: .*`st2 {v0.16b,v2.16b},\[x0\],x7' +[^:]*:270: Error: .*`st2 {v0.16b,v1.16b,v2.16b,v3.16b},\[x0\],x7' +[^:]*:270: Error: .*`st2 {v0.8h,v2.8h},\[x0\],#32' +[^:]*:270: Error: .*`st2 {v0.8h,v1.8h,v2.8h,v3.8h},\[x0\],#64' +[^:]*:270: Error: .*`st2 {v0.8h,v2.8h},\[x0\],x7' +[^:]*:270: Error: .*`st2 {v0.8h,v1.8h,v2.8h,v3.8h},\[x0\],x7' +[^:]*:270: Error: .*`st2 {v0.4s,v2.4s},\[x0\],#32' +[^:]*:270: Error: .*`st2 {v0.4s,v1.4s,v2.4s,v3.4s},\[x0\],#64' +[^:]*:270: Error: .*`st2 {v0.4s,v2.4s},\[x0\],x7' +[^:]*:270: Error: .*`st2 {v0.4s,v1.4s,v2.4s,v3.4s},\[x0\],x7' +[^:]*:270: Error: .*`st2 {v0.2d,v2.2d},\[x0\],#32' +[^:]*:270: Error: .*`st2 {v0.2d,v1.2d,v2.2d,v3.2d},\[x0\],#64' +[^:]*:270: Error: .*`st2 {v0.2d,v2.2d},\[x0\],x7' +[^:]*:270: Error: .*`st2 {v0.2d,v1.2d,v2.2d,v3.2d},\[x0\],x7' +[^:]*:290: Error: .*`ld3 {v0.8b,v2.8b,v4.8b},\[x0\],#24' +[^:]*:290: Error: .*`ld4 {v0.8b,v2.8b,v4.8b,v6.8b},\[x0\],#32' +[^:]*:290: Error: .*`ld3 {v0.8b,v2.8b,v4.8b},\[x0\],x7' +[^:]*:290: Error: .*`ld4 {v0.8b,v2.8b,v4.8b,v6.8b},\[x0\],x7' +[^:]*:290: Error: .*`ld3 {v0.4h,v2.4h,v4.4h},\[x0\],#24' +[^:]*:290: Error: .*`ld4 {v0.4h,v2.4h,v4.4h,v6.4h},\[x0\],#32' +[^:]*:290: Error: .*`ld3 {v0.4h,v2.4h,v4.4h},\[x0\],x7' +[^:]*:290: Error: .*`ld4 {v0.4h,v2.4h,v4.4h,v6.4h},\[x0\],x7' +[^:]*:290: Error: .*`ld3 {v0.2s,v2.2s,v4.2s},\[x0\],#24' +[^:]*:290: Error: .*`ld4 {v0.2s,v2.2s,v4.2s,v6.2s},\[x0\],#32' +[^:]*:290: Error: .*`ld3 {v0.2s,v2.2s,v4.2s},\[x0\],x7' +[^:]*:290: Error: .*`ld4 {v0.2s,v2.2s,v4.2s,v6.2s},\[x0\],x7' +[^:]*:290: Error: .*`st3 {v0.8b,v2.8b,v4.8b},\[x0\],#24' +[^:]*:290: Error: .*`st4 {v0.8b,v2.8b,v4.8b,v6.8b},\[x0\],#32' +[^:]*:290: Error: .*`st3 {v0.8b,v2.8b,v4.8b},\[x0\],x7' +[^:]*:290: Error: .*`st4 {v0.8b,v2.8b,v4.8b,v6.8b},\[x0\],x7' +[^:]*:290: Error: .*`st3 {v0.4h,v2.4h,v4.4h},\[x0\],#24' +[^:]*:290: Error: .*`st4 {v0.4h,v2.4h,v4.4h,v6.4h},\[x0\],#32' +[^:]*:290: Error: .*`st3 {v0.4h,v2.4h,v4.4h},\[x0\],x7' +[^:]*:290: Error: .*`st4 {v0.4h,v2.4h,v4.4h,v6.4h},\[x0\],x7' +[^:]*:290: Error: .*`st3 {v0.2s,v2.2s,v4.2s},\[x0\],#24' +[^:]*:290: Error: .*`st4 {v0.2s,v2.2s,v4.2s,v6.2s},\[x0\],#32' +[^:]*:290: Error: .*`st3 {v0.2s,v2.2s,v4.2s},\[x0\],x7' +[^:]*:290: Error: .*`st4 {v0.2s,v2.2s,v4.2s,v6.2s},\[x0\],x7' +[^:]*:296: Error: .*`ld3 {v0.16b,v2.16b,v4.16b},\[x0\],#48' +[^:]*:296: Error: .*`ld4 {v0.16b,v2.16b,v4.16b,v6.16b},\[x0\],#64' +[^:]*:296: Error: .*`ld3 {v0.16b,v2.16b,v4.16b},\[x0\],x7' +[^:]*:296: Error: .*`ld4 {v0.16b,v2.16b,v4.16b,v6.16b},\[x0\],x7' +[^:]*:296: Error: .*`ld3 {v0.8h,v2.8h,v4.8h},\[x0\],#48' +[^:]*:296: Error: .*`ld4 {v0.8h,v2.8h,v4.8h,v6.8h},\[x0\],#64' +[^:]*:296: Error: .*`ld3 {v0.8h,v2.8h,v4.8h},\[x0\],x7' +[^:]*:296: Error: .*`ld4 {v0.8h,v2.8h,v4.8h,v6.8h},\[x0\],x7' +[^:]*:296: Error: .*`ld3 {v0.4s,v2.4s,v4.4s},\[x0\],#48' +[^:]*:296: Error: .*`ld4 {v0.4s,v2.4s,v4.4s,v6.4s},\[x0\],#64' +[^:]*:296: Error: .*`ld3 {v0.4s,v2.4s,v4.4s},\[x0\],x7' +[^:]*:296: Error: .*`ld4 {v0.4s,v2.4s,v4.4s,v6.4s},\[x0\],x7' +[^:]*:296: Error: .*`ld3 {v0.2d,v2.2d,v4.2d},\[x0\],#48' +[^:]*:296: Error: .*`ld4 {v0.2d,v2.2d,v4.2d,v6.2d},\[x0\],#64' +[^:]*:296: Error: .*`ld3 {v0.2d,v2.2d,v4.2d},\[x0\],x7' +[^:]*:296: Error: .*`ld4 {v0.2d,v2.2d,v4.2d,v6.2d},\[x0\],x7' +[^:]*:296: Error: .*`st3 {v0.16b,v2.16b,v4.16b},\[x0\],#48' +[^:]*:296: Error: .*`st4 {v0.16b,v2.16b,v4.16b,v6.16b},\[x0\],#64' +[^:]*:296: Error: .*`st3 {v0.16b,v2.16b,v4.16b},\[x0\],x7' +[^:]*:296: Error: .*`st4 {v0.16b,v2.16b,v4.16b,v6.16b},\[x0\],x7' +[^:]*:296: Error: .*`st3 {v0.8h,v2.8h,v4.8h},\[x0\],#48' +[^:]*:296: Error: .*`st4 {v0.8h,v2.8h,v4.8h,v6.8h},\[x0\],#64' +[^:]*:296: Error: .*`st3 {v0.8h,v2.8h,v4.8h},\[x0\],x7' +[^:]*:296: Error: .*`st4 {v0.8h,v2.8h,v4.8h,v6.8h},\[x0\],x7' +[^:]*:296: Error: .*`st3 {v0.4s,v2.4s,v4.4s},\[x0\],#48' +[^:]*:296: Error: .*`st4 {v0.4s,v2.4s,v4.4s,v6.4s},\[x0\],#64' +[^:]*:296: Error: .*`st3 {v0.4s,v2.4s,v4.4s},\[x0\],x7' +[^:]*:296: Error: .*`st4 {v0.4s,v2.4s,v4.4s,v6.4s},\[x0\],x7' +[^:]*:296: Error: .*`st3 {v0.2d,v2.2d,v4.2d},\[x0\],#48' +[^:]*:296: Error: .*`st4 {v0.2d,v2.2d,v4.2d,v6.2d},\[x0\],#64' +[^:]*:296: Error: .*`st3 {v0.2d,v2.2d,v4.2d},\[x0\],x7' +[^:]*:296: Error: .*`st4 {v0.2d,v2.2d,v4.2d,v6.2d},\[x0\],x7' +[^:]*:300: Error: .*`ld1r {v0.8b,v1.8b},\[x0\],#1' +[^:]*:301: Error: .*`ld1r {v0.16b,v1.16b},\[x0\],#1' +[^:]*:302: Error: .*`ld1r {v0.4h,v1.4h},\[x0\],#2' +[^:]*:303: Error: .*`ld1r {v0.8h,v1.8h},\[x0\],#2' +[^:]*:304: Error: .*`ld1r {v0.2s,v1.2s},\[x0\],#4' +[^:]*:305: Error: .*`ld1r {v0.4s,v1.4s},\[x0\],#4' +[^:]*:306: Error: .*`ld1r {v0.1d,v1.1d},\[x0\],#8' +[^:]*:307: Error: .*`ld1r {v0.2d,v1.2d},\[x0\],#8' +[^:]*:322: Error: .*`ld2 {v0.h,v2.h}\[1\],\[x0\],#4' +[^:]*:322: Error: .*`ld3 {v0.h,v2.h,v4.h}\[1\],\[x0\],#6' +[^:]*:322: Error: .*`ld4 {v0.h,v2.h,v4.h,v6.h}\[1\],\[x0\],#8' +[^:]*:322: Error: .*`ld2r {v0.4h,v2.4h},\[x0\],#4' +[^:]*:322: Error: .*`ld3r {v0.4h,v2.4h,v4.4h},\[x0\],#6' +[^:]*:322: Error: .*`ld4r {v0.4h,v2.4h,v4.4h,v6.4h},\[x0\],#8' +[^:]*:322: Error: .*`ld2r {v0.8h,v2.8h},\[x0\],#4' +[^:]*:322: Error: .*`ld3r {v0.8h,v2.8h,v4.8h},\[x0\],#6' +[^:]*:322: Error: .*`ld4r {v0.8h,v2.8h,v4.8h,v6.8h},\[x0\],#8' +[^:]*:322: Error: .*`st2 {v0.h,v2.h}\[1\],\[x0\],#4' +[^:]*:322: Error: .*`st3 {v0.h,v2.h,v4.h}\[1\],\[x0\],#6' +[^:]*:322: Error: .*`st4 {v0.h,v2.h,v4.h,v6.h}\[1\],\[x0\],#8' +[^:]*:337: Error: .*`ld2 {v0.s,v2.s}\[1\],\[x0\],#8' +[^:]*:337: Error: .*`ld3 {v0.s,v2.s,v4.s}\[1\],\[x0\],#12' +[^:]*:337: Error: .*`ld4 {v0.s,v2.s,v4.s,v6.s}\[1\],\[x0\],#16' +[^:]*:337: Error: .*`ld2r {v0.2s,v2.2s},\[x0\],#8' +[^:]*:337: Error: .*`ld3r {v0.2s,v2.2s,v4.2s},\[x0\],#12' +[^:]*:337: Error: .*`ld4r {v0.2s,v2.2s,v4.2s,v6.2s},\[x0\],#16' +[^:]*:337: Error: .*`ld2r {v0.4s,v2.4s},\[x0\],#8' +[^:]*:337: Error: .*`ld3r {v0.4s,v2.4s,v4.4s},\[x0\],#12' +[^:]*:337: Error: .*`ld4r {v0.4s,v2.4s,v4.4s,v6.4s},\[x0\],#16' +[^:]*:337: Error: .*`st2 {v0.s,v2.s}\[1\],\[x0\],#8' +[^:]*:337: Error: .*`st3 {v0.s,v2.s,v4.s}\[1\],\[x0\],#12' +[^:]*:337: Error: .*`st4 {v0.s,v2.s,v4.s,v6.s}\[1\],\[x0\],#16' +[^:]*:352: Error: .*`ld2 {v0.d,v2.d}\[1\],\[x0\],#16' +[^:]*:352: Error: .*`ld3 {v0.d,v2.d,v4.d}\[1\],\[x0\],#24' +[^:]*:352: Error: .*`ld4 {v0.d,v2.d,v4.d,v6.d}\[1\],\[x0\],#32' +[^:]*:352: Error: .*`ld2r {v0.1d,v2.1d},\[x0\],#16' +[^:]*:352: Error: .*`ld3r {v0.1d,v2.1d,v4.1d},\[x0\],#24' +[^:]*:352: Error: .*`ld4r {v0.1d,v2.1d,v4.1d,v6.1d},\[x0\],#32' +[^:]*:352: Error: .*`ld2r {v0.2d,v2.2d},\[x0\],#16' +[^:]*:352: Error: .*`ld3r {v0.2d,v2.2d,v4.2d},\[x0\],#24' +[^:]*:352: Error: .*`ld4r {v0.2d,v2.2d,v4.2d,v6.2d},\[x0\],#32' +[^:]*:352: Error: .*`st2 {v0.d,v2.d}\[1\],\[x0\],#16' +[^:]*:352: Error: .*`st3 {v0.d,v2.d,v4.d}\[1\],\[x0\],#24' +[^:]*:352: Error: .*`st4 {v0.d,v2.d,v4.d,v6.d}\[1\],\[x0\],#32' +[^:]*:356: Error: .*`ld1r {v0.8b,v1.8b},\[x0\],x7' +[^:]*:356: Error: .*`ld1r {v0.16b,v1.16b},\[x0\],x7' +[^:]*:356: Error: .*`ld1r {v0.4h,v1.4h},\[x0\],x7' +[^:]*:356: Error: .*`ld1r {v0.8h,v1.8h},\[x0\],x7' +[^:]*:356: Error: .*`ld1r {v0.2s,v1.2s},\[x0\],x7' +[^:]*:356: Error: .*`ld1r {v0.4s,v1.4s},\[x0\],x7' +[^:]*:356: Error: .*`ld1r {v0.1d,v1.1d},\[x0\],x7' +[^:]*:356: Error: .*`ld1r {v0.2d,v1.2d},\[x0\],x7' +[^:]*:373: Error: .*`ld2 {v0.b,v2.b}\[1\],\[x0\],x7' +[^:]*:373: Error: .*`ld3 {v0.b,v2.b,v4.b}\[1\],\[x0\],x7' +[^:]*:373: Error: .*`ld4 {v0.b,v2.b,v4.b,v6.b}\[1\],\[x0\],x7' +[^:]*:373: Error: .*`ld2 {v0.h,v2.h}\[1\],\[x0\],x7' +[^:]*:373: Error: .*`ld3 {v0.h,v2.h,v4.h}\[1\],\[x0\],x7' +[^:]*:373: Error: .*`ld4 {v0.h,v2.h,v4.h,v6.h}\[1\],\[x0\],x7' +[^:]*:373: Error: .*`ld2 {v0.s,v2.s}\[1\],\[x0\],x7' +[^:]*:373: Error: .*`ld3 {v0.s,v2.s,v4.s}\[1\],\[x0\],x7' +[^:]*:373: Error: .*`ld4 {v0.s,v2.s,v4.s,v6.s}\[1\],\[x0\],x7' +[^:]*:373: Error: .*`ld2 {v0.d,v2.d}\[1\],\[x0\],x7' +[^:]*:373: Error: .*`ld3 {v0.d,v2.d,v4.d}\[1\],\[x0\],x7' +[^:]*:373: Error: .*`ld4 {v0.d,v2.d,v4.d,v6.d}\[1\],\[x0\],x7' +[^:]*:373: Error: .*`ld2r {v0.8b,v2.8b},\[x0\],x7' +[^:]*:373: Error: .*`ld3r {v0.8b,v2.8b,v4.8b},\[x0\],x7' +[^:]*:373: Error: .*`ld4r {v0.8b,v2.8b,v4.8b,v6.8b},\[x0\],x7' +[^:]*:373: Error: .*`ld2r {v0.16b,v2.16b},\[x0\],x7' +[^:]*:373: Error: .*`ld3r {v0.16b,v2.16b,v4.16b},\[x0\],x7' +[^:]*:373: Error: .*`ld4r {v0.16b,v2.16b,v4.16b,v6.16b},\[x0\],x7' +[^:]*:373: Error: .*`ld2r {v0.4h,v2.4h},\[x0\],x7' +[^:]*:373: Error: .*`ld3r {v0.4h,v2.4h,v4.4h},\[x0\],x7' +[^:]*:373: Error: .*`ld4r {v0.4h,v2.4h,v4.4h,v6.4h},\[x0\],x7' +[^:]*:373: Error: .*`ld2r {v0.8h,v2.8h},\[x0\],x7' +[^:]*:373: Error: .*`ld3r {v0.8h,v2.8h,v4.8h},\[x0\],x7' +[^:]*:373: Error: .*`ld4r {v0.8h,v2.8h,v4.8h,v6.8h},\[x0\],x7' +[^:]*:373: Error: .*`ld2r {v0.2s,v2.2s},\[x0\],x7' +[^:]*:373: Error: .*`ld3r {v0.2s,v2.2s,v4.2s},\[x0\],x7' +[^:]*:373: Error: .*`ld4r {v0.2s,v2.2s,v4.2s,v6.2s},\[x0\],x7' +[^:]*:373: Error: .*`ld2r {v0.4s,v2.4s},\[x0\],x7' +[^:]*:373: Error: .*`ld3r {v0.4s,v2.4s,v4.4s},\[x0\],x7' +[^:]*:373: Error: .*`ld4r {v0.4s,v2.4s,v4.4s,v6.4s},\[x0\],x7' +[^:]*:373: Error: .*`ld2r {v0.1d,v2.1d},\[x0\],x7' +[^:]*:373: Error: .*`ld3r {v0.1d,v2.1d,v4.1d},\[x0\],x7' +[^:]*:373: Error: .*`ld4r {v0.1d,v2.1d,v4.1d,v6.1d},\[x0\],x7' +[^:]*:373: Error: .*`ld2r {v0.2d,v2.2d},\[x0\],x7' +[^:]*:373: Error: .*`ld3r {v0.2d,v2.2d,v4.2d},\[x0\],x7' +[^:]*:373: Error: .*`ld4r {v0.2d,v2.2d,v4.2d,v6.2d},\[x0\],x7' +[^:]*:373: Error: .*`st2 {v0.b,v2.b}\[1\],\[x0\],x7' +[^:]*:373: Error: .*`st3 {v0.b,v2.b,v4.b}\[1\],\[x0\],x7' +[^:]*:373: Error: .*`st4 {v0.b,v2.b,v4.b,v6.b}\[1\],\[x0\],x7' +[^:]*:373: Error: .*`st2 {v0.h,v2.h}\[1\],\[x0\],x7' +[^:]*:373: Error: .*`st3 {v0.h,v2.h,v4.h}\[1\],\[x0\],x7' +[^:]*:373: Error: .*`st4 {v0.h,v2.h,v4.h,v6.h}\[1\],\[x0\],x7' +[^:]*:373: Error: .*`st2 {v0.s,v2.s}\[1\],\[x0\],x7' +[^:]*:373: Error: .*`st3 {v0.s,v2.s,v4.s}\[1\],\[x0\],x7' +[^:]*:373: Error: .*`st4 {v0.s,v2.s,v4.s,v6.s}\[1\],\[x0\],x7' +[^:]*:373: Error: .*`st2 {v0.d,v2.d}\[1\],\[x0\],x7' +[^:]*:373: Error: .*`st3 {v0.d,v2.d,v4.d}\[1\],\[x0\],x7' +[^:]*:373: Error: .*`st4 {v0.d,v2.d,v4.d,v6.d}\[1\],\[x0\],x7' +[^:]*:396: Error: .*`ld2 {v0.8B,v2.8B},\[x0\]' +[^:]*:396: Error: .*`ld3 {v0.8B,v2.8B,v4.8B},\[x0\]' +[^:]*:396: Error: .*`ld4 {v0.8B,v2.8B,v4.8B,v6.8B},\[x0\]' +[^:]*:397: Error: .*`st2 {v0.8B,v2.8B},\[x0\]' +[^:]*:397: Error: .*`st3 {v0.8B,v2.8B,v4.8B},\[x0\]' +[^:]*:397: Error: .*`st4 {v0.8B,v2.8B,v4.8B,v6.8B},\[x0\]' +[^:]*:399: Error: .*`ld2 {v0.16B,v2.16B},\[x0\]' +[^:]*:399: Error: .*`ld3 {v0.16B,v2.16B,v4.16B},\[x0\]' +[^:]*:399: Error: .*`ld4 {v0.16B,v2.16B,v4.16B,v6.16B},\[x0\]' +[^:]*:400: Error: .*`st2 {v0.16B,v2.16B},\[x0\]' +[^:]*:400: Error: .*`st3 {v0.16B,v2.16B,v4.16B},\[x0\]' +[^:]*:400: Error: .*`st4 {v0.16B,v2.16B,v4.16B,v6.16B},\[x0\]' +[^:]*:402: Error: .*`ld2 {v0.4H,v2.4H},\[x0\]' +[^:]*:402: Error: .*`ld3 {v0.4H,v2.4H,v4.4H},\[x0\]' +[^:]*:402: Error: .*`ld4 {v0.4H,v2.4H,v4.4H,v6.4H},\[x0\]' +[^:]*:403: Error: .*`st2 {v0.4H,v2.4H},\[x0\]' +[^:]*:403: Error: .*`st3 {v0.4H,v2.4H,v4.4H},\[x0\]' +[^:]*:403: Error: .*`st4 {v0.4H,v2.4H,v4.4H,v6.4H},\[x0\]' +[^:]*:405: Error: .*`ld2 {v0.8H,v2.8H},\[x0\]' +[^:]*:405: Error: .*`ld3 {v0.8H,v2.8H,v4.8H},\[x0\]' +[^:]*:405: Error: .*`ld4 {v0.8H,v2.8H,v4.8H,v6.8H},\[x0\]' +[^:]*:406: Error: .*`st2 {v0.8H,v2.8H},\[x0\]' +[^:]*:406: Error: .*`st3 {v0.8H,v2.8H,v4.8H},\[x0\]' +[^:]*:406: Error: .*`st4 {v0.8H,v2.8H,v4.8H,v6.8H},\[x0\]' +[^:]*:408: Error: .*`ld2 {v0.2S,v2.2S},\[x0\]' +[^:]*:408: Error: .*`ld3 {v0.2S,v2.2S,v4.2S},\[x0\]' +[^:]*:408: Error: .*`ld4 {v0.2S,v2.2S,v4.2S,v6.2S},\[x0\]' +[^:]*:409: Error: .*`st2 {v0.2S,v2.2S},\[x0\]' +[^:]*:409: Error: .*`st3 {v0.2S,v2.2S,v4.2S},\[x0\]' +[^:]*:409: Error: .*`st4 {v0.2S,v2.2S,v4.2S,v6.2S},\[x0\]' +[^:]*:411: Error: .*`ld2 {v0.4S,v2.4S},\[x0\]' +[^:]*:411: Error: .*`ld3 {v0.4S,v2.4S,v4.4S},\[x0\]' +[^:]*:411: Error: .*`ld4 {v0.4S,v2.4S,v4.4S,v6.4S},\[x0\]' +[^:]*:412: Error: .*`st2 {v0.4S,v2.4S},\[x0\]' +[^:]*:412: Error: .*`st3 {v0.4S,v2.4S,v4.4S},\[x0\]' +[^:]*:412: Error: .*`st4 {v0.4S,v2.4S,v4.4S,v6.4S},\[x0\]' +[^:]*:414: Error: .*`ld2 {v0.2D,v2.2D},\[x0\]' +[^:]*:414: Error: .*`ld3 {v0.2D,v2.2D,v4.2D},\[x0\]' +[^:]*:414: Error: .*`ld4 {v0.2D,v2.2D,v4.2D,v6.2D},\[x0\]' +[^:]*:415: Error: .*`st2 {v0.2D,v2.2D},\[x0\]' +[^:]*:415: Error: .*`st3 {v0.2D,v2.2D,v4.2D},\[x0\]' +[^:]*:415: Error: .*`st4 {v0.2D,v2.2D,v4.2D,v6.2D},\[x0\]' +[^:]*:423: Error: .*`ld2 {v0.H,v2.H}\[1\],\[x0\]' +[^:]*:423: Error: .*`ld3 {v0.H,v2.H,v4.H}\[1\],\[x0\]' +[^:]*:423: Error: .*`ld4 {v0.H,v2.H,v4.H,v6.H}\[1\],\[x0\]' +[^:]*:424: Error: .*`st2 {v0.H,v2.H}\[1\],\[x0\]' +[^:]*:424: Error: .*`st3 {v0.H,v2.H,v4.H}\[1\],\[x0\]' +[^:]*:424: Error: .*`st4 {v0.H,v2.H,v4.H,v6.H}\[1\],\[x0\]' +[^:]*:426: Error: .*`ld2 {v0.H,v2.H}\[1\],\[x0\]' +[^:]*:426: Error: .*`ld3 {v0.H,v2.H,v4.H}\[1\],\[x0\]' +[^:]*:426: Error: .*`ld4 {v0.H,v2.H,v4.H,v6.H}\[1\],\[x0\]' +[^:]*:427: Error: .*`st2 {v0.H,v2.H}\[1\],\[x0\]' +[^:]*:427: Error: .*`st3 {v0.H,v2.H,v4.H}\[1\],\[x0\]' +[^:]*:427: Error: .*`st4 {v0.H,v2.H,v4.H,v6.H}\[1\],\[x0\]' +[^:]*:429: Error: .*`ld2 {v0.S,v2.S}\[1\],\[x0\]' +[^:]*:429: Error: .*`ld3 {v0.S,v2.S,v4.S}\[1\],\[x0\]' +[^:]*:429: Error: .*`ld4 {v0.S,v2.S,v4.S,v6.S}\[1\],\[x0\]' +[^:]*:430: Error: .*`st2 {v0.S,v2.S}\[1\],\[x0\]' +[^:]*:430: Error: .*`st3 {v0.S,v2.S,v4.S}\[1\],\[x0\]' +[^:]*:430: Error: .*`st4 {v0.S,v2.S,v4.S,v6.S}\[1\],\[x0\]' +[^:]*:432: Error: .*`ld2 {v0.S,v2.S}\[1\],\[x0\]' +[^:]*:432: Error: .*`ld3 {v0.S,v2.S,v4.S}\[1\],\[x0\]' +[^:]*:432: Error: .*`ld4 {v0.S,v2.S,v4.S,v6.S}\[1\],\[x0\]' +[^:]*:433: Error: .*`st2 {v0.S,v2.S}\[1\],\[x0\]' +[^:]*:433: Error: .*`st3 {v0.S,v2.S,v4.S}\[1\],\[x0\]' +[^:]*:433: Error: .*`st4 {v0.S,v2.S,v4.S,v6.S}\[1\],\[x0\]' +[^:]*:435: Error: .*`ld2 {v0.D,v2.D}\[1\],\[x0\]' +[^:]*:435: Error: .*`ld3 {v0.D,v2.D,v4.D}\[1\],\[x0\]' +[^:]*:435: Error: .*`ld4 {v0.D,v2.D,v4.D,v6.D}\[1\],\[x0\]' +[^:]*:436: Error: .*`st2 {v0.D,v2.D}\[1\],\[x0\]' +[^:]*:436: Error: .*`st3 {v0.D,v2.D,v4.D}\[1\],\[x0\]' +[^:]*:436: Error: .*`st4 {v0.D,v2.D,v4.D,v6.D}\[1\],\[x0\]' +[^:]*:438: Error: .*`ld1r {v0.8B,v1.8B},\[x0\]' +[^:]*:438: Error: .*`ld2r {v0.8B,v2.8B},\[x0\]' +[^:]*:438: Error: .*`ld3r {v0.8B,v2.8B,v4.8B},\[x0\]' +[^:]*:438: Error: .*`ld4r {v0.8B,v2.8B,v4.8B,v6.8B},\[x0\]' +[^:]*:440: Error: .*`ld1r {v0.16B,v1.16B},\[x0\]' +[^:]*:440: Error: .*`ld2r {v0.16B,v2.16B},\[x0\]' +[^:]*:440: Error: .*`ld3r {v0.16B,v2.16B,v4.16B},\[x0\]' +[^:]*:440: Error: .*`ld4r {v0.16B,v2.16B,v4.16B,v6.16B},\[x0\]' +[^:]*:442: Error: .*`ld1r {v0.4H,v1.4H},\[x0\]' +[^:]*:442: Error: .*`ld2r {v0.4H,v2.4H},\[x0\]' +[^:]*:442: Error: .*`ld3r {v0.4H,v2.4H,v4.4H},\[x0\]' +[^:]*:442: Error: .*`ld4r {v0.4H,v2.4H,v4.4H,v6.4H},\[x0\]' +[^:]*:444: Error: .*`ld1r {v0.8H,v1.8H},\[x0\]' +[^:]*:444: Error: .*`ld2r {v0.8H,v2.8H},\[x0\]' +[^:]*:444: Error: .*`ld3r {v0.8H,v2.8H,v4.8H},\[x0\]' +[^:]*:444: Error: .*`ld4r {v0.8H,v2.8H,v4.8H,v6.8H},\[x0\]' +[^:]*:446: Error: .*`ld1r {v0.2S,v1.2S},\[x0\]' +[^:]*:446: Error: .*`ld2r {v0.2S,v2.2S},\[x0\]' +[^:]*:446: Error: .*`ld3r {v0.2S,v2.2S,v4.2S},\[x0\]' +[^:]*:446: Error: .*`ld4r {v0.2S,v2.2S,v4.2S,v6.2S},\[x0\]' +[^:]*:448: Error: .*`ld1r {v0.4S,v1.4S},\[x0\]' +[^:]*:448: Error: .*`ld2r {v0.4S,v2.4S},\[x0\]' +[^:]*:448: Error: .*`ld3r {v0.4S,v2.4S,v4.4S},\[x0\]' +[^:]*:448: Error: .*`ld4r {v0.4S,v2.4S,v4.4S,v6.4S},\[x0\]' +[^:]*:450: Error: .*`ld1r {v0.1D,v1.1D},\[x0\]' +[^:]*:450: Error: .*`ld2r {v0.1D,v2.1D},\[x0\]' +[^:]*:450: Error: .*`ld3r {v0.1D,v2.1D,v4.1D},\[x0\]' +[^:]*:450: Error: .*`ld4r {v0.1D,v2.1D,v4.1D,v6.1D},\[x0\]' +[^:]*:452: Error: .*`ld1r {v0.2D,v1.2D},\[x0\]' +[^:]*:452: Error: .*`ld2r {v0.2D,v2.2D},\[x0\]' +[^:]*:452: Error: .*`ld3r {v0.2D,v2.2D,v4.2D},\[x0\]' +[^:]*:452: Error: .*`ld4r {v0.2D,v2.2D,v4.2D,v6.2D},\[x0\]' +[^:]*:454: Error: .*`pmull v0.1q,v1.1d,v2.1d' +[^:]*:455: Error: .*`pmull2 v0.1q,v1.2d,v2.2d' +[^:]*:463: Error: .*`scvtf d0,w1,33' +[^:]*:463: Error: .*`scvtf s0,w0,33' +[^:]*:463: Error: .*`scvtf d0,x1,65' +[^:]*:463: Error: .*`scvtf s0,x1,65' +[^:]*:463: Error: .*`ucvtf d0,w1,33' +[^:]*:463: Error: .*`ucvtf s0,w0,33' +[^:]*:463: Error: .*`ucvtf d0,x1,65' +[^:]*:463: Error: .*`ucvtf s0,x1,65' +[^:]*:469: Error: .*`fcvtzs w1,d0,33' +[^:]*:469: Error: .*`fcvtzs w0,s0,33' +[^:]*:469: Error: .*`fcvtzs x1,d0,65' +[^:]*:469: Error: .*`fcvtzs x1,s0,65' +[^:]*:469: Error: .*`fcvtzu w1,d0,33' +[^:]*:469: Error: .*`fcvtzu w0,s0,33' +[^:]*:469: Error: .*`fcvtzu x1,d0,65' +[^:]*:469: Error: .*`fcvtzu x1,s0,65' +[^:]*:472: Error: .* +[^:]*:475: Error: .*`ldrh w0,\[x1,x2,lsr#1\]' +[^:]*:477: Error: .*`add w0,w1,w2,ror#1' +[^:]*:478: Error: .*`sub w0,w1,w2,asr#32' +[^:]*:479: Error: .*`eor w0,w1,w2,ror#32' +[^:]*:481: Error: .*`add x0,x1,#20,LSL#16' +[^:]*:482: Error: .*`add x0,x1,#20,UXTX#12' +[^:]*:483: Error: .*`add x0,x1,#20,LSR' +[^:]*:484: Error: .*`add x0,x1,#20,LSL' +[^:]*:486: Error: .*`ldnp h7,h15,\[x0,#2\]' +[^:]*:487: Error: .*`ldnp b15,b31,\[x0\],#4' +[^:]*:488: Error: .*`ldnp h0,h1,\[x0,#6\]!' +[^:]*:490: Error: .*`uqrshrn h0,s1,#63' +[^:]*:491: Error: .*`sqshl b7,b15,#8' +[^:]*:493: Error: .*`bfxil w7,w15,#15,#30' +[^:]*:494: Error: .*`bfi x3,x7,#31,#48' +[^:]*:496: Error: .*`str x1,page_table_count' +[^:]*:498: Error: .*`prfm PLDL3KEEP,\[x9,x15,sxtx#2\]' +[^:]*:500: Error: .*`mrs x5,S1_0_C13_C8_0' +[^:]*:501: Error: .*`msr S3_1_C13_C15_1,x7' +[^:]*:502: Error: .*`msr S3_1_C11_C15_-1,x7' +[^:]*:503: Error: .*`msr S3_1_11_15_1,x7' +[^:]*:506: Error: .*`movi w1,#15' +[^:]*:509: Error: .*`uxtb x7,x15' +[^:]*:510: Error: .*`uxth x7,x15' +[^:]*:511: Error: .*`uxtw x7,x15' +[^:]*:512: Error: .*`sxtb w15,xzr' +[^:]*:513: Error: .*`sxth w15,xzr' +[^:]*:514: Error: .*`sxtw w15,xzr' +[^:]*:516: Error: .*`mov w0,v0.b\[0\]' +[^:]*:517: Error: .*`mov w0,v0.h\[0\]' +[^:]*:518: Error: .*`mov w0,v0.d\[0\]' +[^:]*:519: Error: .*`mov x0,v0.b\[0\]' +[^:]*:520: Error: .*`mov x0,v0.h\[0\]' +[^:]*:521: Error: .*`mov x0,v0.s\[0\]' +[^:]*:523: Error: .*`uabdl2 v20\.4S,v12\.8H,v29\.8' +[^:]*:525: Error: .*`movi d1,0xffff,lsl#16' +[^:]*:527: Error: .*`st3 {v18.D-v20.D}\[0\],\[x28\],x' +[^:]*:528: Error: .*`st1 {v7.B}\[2\],\[x4\],x' +[^:]*:529: Error: .*`st1 {v22.1D-v25.1D},\[x10\],x' +[^:]*:531: Error: .*`ldr w0,\[x0\]!' +[^:]*:532: Error: .*`ldr w0,\[x0\],\{127\}' +[^:]*:534: Error: .*`orr x0,x0,#0xff,lsl#1' +[^:]*:535: Error: .*`orr x0. x0,#0xff,lsl#1' +[^:]*:536: Error: .*`orr x0,x0,#0xff lsl#1' +[^:]*:538: Error: .*`mov x0,##5' diff --git a/gas/testsuite/gas/aarch64/illegal.s b/gas/testsuite/gas/aarch64/illegal.s new file mode 100644 index 0000000..ed31ee1 --- /dev/null +++ b/gas/testsuite/gas/aarch64/illegal.s @@ -0,0 +1,538 @@ +/* illegal.s Test file for AArch64 instructions that should be rejected + by the assembler. + + Copyright 2011, 2012 Free Software Foundation, Inc. Contributed by ARM Ltd. + + This file is part of GAS. + + GAS 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. + + GAS 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; see the file COPYING3. If not, + see <http://www.gnu.org/licenses/>. */ + +.text + // For urecpe and ursqrte, only 2s and 4s are accepted qualifiers. + urecpe v0.1d, v7.1d + urecpe v0.2d, v7.2d + ursqrte v0.1d, v7.1d + ursqrte v0.2d, v7.2d + + // For AdvSIMD (across) instructions, there are restraints on the register type and qualifiers. + saddlv b7, v31.8b + saddlv d7, v31.2s + saddlv q7, v31.2d + smaxv s7, v31.2s + sminv d7, v31.2d + fmaxv h7, v31.8h + fmaxv h7, v31.4h + fminv d7, v31.2d + + abs b0, b31 + neg b0, b31 + abs h0, h31 + neg h0, h31 + abs s0, s31 + neg s0, s31 + + fcvt s0, s0 + + bfm w0, w1, 8, 43 + ubfm w0, x1, 8, 31 + + aese v1.8b, v2.8b + sha1h s7, d31 + sha1h q7, d31 + sha1su1 v7.4s, v7.2s + sha256su0 v7.2d, v7.2d + sha1c q7, q3, v7.4s + sha1p s7, q8, v9.4s + sha1m v8.4s, v7.4s, q8 + sha1su0 v0.2d, v1.2d, v2.2d + sha256h q7, s2, v8.4s + + pmull v7.8b, v15.8b, v31.8b + pmull v7.1q, v15.1q, v31.1d + pmull2 v7.8h, v15.8b, v31.8b + pmull2 v7.1q, v15.2d, v31.1q + + ld2 {v1.4h, v0.4h}, [x1] + strb x0, [sp, x1, lsl #0] + strb w7, [x30, x0, lsl] + strb w7, [x30, x0, lsl #1] + ldtr x7, [x15, 266] + sttr x7, [x15, #1]! + stxrb x2, w1, [sp] + stxp w2, x3, w4, [x0] + ldxp w3, x4, [x30] + + st2 {v4.2d, v5.2d}, [x3, #3] + st2 {v4.2d, v5.2d, v6.2d}, [x3] + st1 {v4.2d, v6.2d, v8.2d}, [x3] + st3 {v4.2d, v6.2d}, [x3] + st4 {v4.2d, v6.2d}, [x3] + st2 {v4.2d, v6.2d, v8.2d, v10.2d}, [x3] + st2 {v4.2d, v6.2d, v8.2d, v10.2d}, [x3], 48 + + ext v0.8b, v1.8b, v2.8b, 8 + ext v0.16b, v1.16b, v2.16b, 20 + + tbz w0, #40, 0x17c + + svc + + fmov v1.D[0], x0 + fmov v2.S[2], x0 + fmov v2.S[1], x0 + fmov v2.D[1], w0 + + smaddl w0, w1, w2, x3 + smaddl x0, x1, w2, x3 + smaddl x0, w1, x2, x3 + smaddl x0, w1, w2, w3 + + ld1 {v1.s, v2.s}[1], [x3] + st1 {v2.s, v3.s}[1], [x4] + ld2 {v1.s, v2.s, v3.s}[1], [x3] + st2 {v2.s, v2.s, v3.s}[1], [x4] + ld3 {v1.s, v2.s, v3.s, v4.s}[1], [x3] + st3 {v2.s, v3.s, v4.s, v5.s}[1], [x4] + ld4 {v1.s}[1], [x3] + st4 {v2.s}[1], [x4] + + ld2 {v1.b, v3.b}[1], [x3] + st2 {v2.b, v4.b}[1], [x4] + ld3 {v1.b, v3.b, v5.b}[1], [x3] + st3 {v2.b, v4.b, v6.b}[1], [x4] + ld4 {v1.b, v3.b, v5.b, v7.b}[1], [x3] + st4 {v2.b, v4.b, v6.b, v8.b}[1], [x4] + + ld1 {v1.q}[1], [x3] + + ld1r {v1.4s, v3.4s}, [x3] + ld1r {v1.4s, v2.4s, v3.4s}, [x3] + ld2r {v1.4s, v2.4s, v3.4s}, [x3] + ld3r {v1.4s, v2.4s, v3.4s, v4.4s}, [x3] + ld4r {v1.4s}, [x3] + + ld1r {v1.4s, v3.4s}, [x3], x4 + ld1r {v1.4s, v2.4s, v3.4s}, [x3], x4 + ld2r {v1.4s, v2.4s, v3.4s}, [x3], x4 + ld3r {v1.4s, v2.4s, v3.4s, v4.4s}, [x3], x4 + ld4r {v1.4s}, [x3], x4 + + ld1r {v1.4s}, [x3], #1 + ld1r {v1.4s, v2.4s}, [x3], #8 + ld2r {v1.4s, v2.4s}, [x3], #4 + ld3r {v1.4s, v2.4s, v3.4s}, [x3], #16 + ld4r {v1.4s, v2.4s, v3.4s, v4.4s}, [x3], #32 + + addp s1, v2.2s + addp s1, v2.2d + addp d1, v2.2s + fmaxp s1, v2.4s + + add s1, s2, s3 + cmhi d1, d2, s3 + + shll v0.8h, v1.8b, 16 + shll2 v0.2d, v1.4s, 16 + + dup s1, v2.d[1] + dup s1, v2.s[4] + mov s1, v2.h[1] + + clrex #16 + + msr daif, w5 + mrs w15, midr_el1 + mrs x0, dummy + + sshr v0.4s, v1.4s, #0 + sshr v0.4s, v1.4s, #33 + sshr v0.4h, v1.4h, #20 + + shl v0.4s, v1.4s, #32 + fcvtzs v0.4h, v1.4h, #2 + uqshrn v0.2s, v1.2d, 33 + uqrshrn v0.2s, v1.2s, 32 + sshll v8.8h, v2.8b, #8 + + sysl x7, #10, C15, C7, #11 + sysl w7, #1, C15, C7, #1 + + dsb dummy + dmb #16 + isb osh + + prfm 0x2f, LABEL1 + prfm pldl3strm, [sp, #8]! + prfm pldl3strm, [sp], #8 + prfm pldl3strm, [sp, w0, sxtw #3]! + prfm pldl3strm, =0x100 + + sttr x0, LABEL1 + sttr x0, [sp, #16]! + sttr x0, [sp], #16 + sttr x0, [sp, x1] + + ldur x0, LABEL1 + ldur x0, [sp, #16]! + ldur x0, [sp], #16 + ldur x0, [sp, x1] + + ldr b0, =0x100 + ldr h0, LABEL1 + + ic ivau + ic ivau, w0 + ic ialluis, xzr + ic ialluis, x0 + sys #0, c0, c0, 0, w0 + msr spsel, #16 + msr cptr_el2, #15 + + movz x1,#:abs_g2:u48, lsl #16 + movz x1, 0xddee, lsl #8 + movz w1,#:abs_g2:u48 + movz w1,#:abs_g3:u48 + movk x1,#:abs_g1_s:s12 + + movi v0.4s, #256 + movi v0.2d, #0xabcdef + + bic v0.4s, #255, msl #8 + bic v0.4s, #512 + bic v0.4s, #1, lsl #31 +// bic v0.4h, #1, lsl #16 + + orr v0.4s, #255, msl #8 + orr v0.4s, #512 + + movi v0.4s, #127, lsl #4 + movi v0.4s, #127, msl #24 +// movi v0.4h, #127, lsl #16 + + mvni v0.4s, #127, lsl #4 + mvni v0.4s, #127, msl #24 +// mvni v0.4h, #127, lsl #16 + + fmov v0.2s, #3.1415926 + fmov v0.4s, #3.1415926 + fmov v0.2d, #3.1415926 + fmov x0, #1.0 + fmov w0, w1 + + msr #5, #0 + msr SPSel, #2 + + tbl v0.16b, {v1.16b, v3.16b, v5.16b}, v2.16b + tbx v0.8b, {v1.16b, v3.16b, v5.16b, v7.16b}, v2.8b + + // Alternating register list forms are no longer available A64 ISA + + .macro ldst2_reg_list_post_imm_reg_64 inst type postreg + \inst\()2 {v0.\type, v2.\type}, [x0], #16 + \inst\()2 {v0.\type, v1.\type, v2.\type, v3.\type}, [x0], #32 + .ifnb \postreg + \inst\()2 {v0.\type, v2.\type}, [x0], \postreg + \inst\()2 {v0.\type, v1.\type, v2.\type, v3.\type}, [x0], \postreg + .endif + .endm + + .macro ldst2_reg_list_post_imm_reg_128 inst type postreg + \inst\()2 {v0.\type, v2.\type}, [x0], #32 + \inst\()2 {v0.\type, v1.\type, v2.\type, v3.\type}, [x0], #64 + .ifnb \postreg + \inst\()2 {v0.\type, v2.\type}, [x0], \postreg + \inst\()2 {v0.\type, v1.\type, v2.\type, v3.\type}, [x0], \postreg + .endif + .endm + + .irp instr ld,st + .irp bits_64 8b, 4h, 2s + ldst2_reg_list_post_imm_reg_64 \instr \bits_64 x7 + .endr + .endr + + .irp instr ld,st + .irp bits_128 16b, 8h, 4s, 2d + ldst2_reg_list_post_imm_reg_128 \instr \bits_128 x7 + .endr + .endr + + .macro ldst34_reg_list_post_imm_reg_64 inst type postreg + \inst\()3 {v0.\type, v2.\type, v4.\type}, [x0], #24 + \inst\()4 {v0.\type, v2.\type, v4.\type, v6.\type}, [x0], #32 + \inst\()3 {v0.\type, v2.\type, v4.\type}, [x0], \postreg + \inst\()4 {v0.\type, v2.\type, v4.\type, v6.\type}, [x0], \postreg + .endm + + .macro ldst34_reg_list_post_imm_reg_128 inst type postreg + \inst\()3 {v0.\type, v2.\type, v4.\type}, [x0], #48 + \inst\()4 {v0.\type, v2.\type, v4.\type, v6.\type}, [x0], #64 + \inst\()3 {v0.\type, v2.\type, v4.\type}, [x0], \postreg + \inst\()4 {v0.\type, v2.\type, v4.\type, v6.\type}, [x0], \postreg + .endm + + .irp instr ld,st + .irp bits_64 8b, 4h, 2s + ldst34_reg_list_post_imm_reg_64 \instr \bits_64 x7 + .endr + .endr + + .irp instr ld,st + .irp bits_128 16b, 8h, 4s, 2d + ldst34_reg_list_post_imm_reg_128 \instr \bits_128 x7 + .endr + .endr + + // LD1R expects one register only. + + ld1r {v0.8b, v1.8b}, [x0], #1 + ld1r {v0.16b, v1.16b}, [x0], #1 + ld1r {v0.4h, v1.4h}, [x0], #2 + ld1r {v0.8h, v1.8h}, [x0], #2 + ld1r {v0.2s, v1.2s}, [x0], #4 + ld1r {v0.4s, v1.4s}, [x0], #4 + ld1r {v0.1d, v1.1d}, [x0], #8 + ld1r {v0.2d, v1.2d}, [x0], #8 + + .macro ldstn_index_rep_H_altreg_imm inst index type rep + \inst\()2\rep {v0.\type, v2.\type}\index, [x0], #4 + \inst\()3\rep {v0.\type, v2.\type, v4.\type}\index, [x0], #6 + \inst\()4\rep {v0.\type, v2.\type, v4.\type, v6.\type}\index, [x0], #8 + .endm + + .irp instr, ld, st + ldstn_index_rep_H_altreg_imm \instr index="[1]" type=h rep="" + .ifnc \instr, st + .irp types 4h, 8h + ldstn_index_rep_H_altreg_imm \instr index="" type=\types rep="r" + .endr + .endif + .endr + + .macro ldstn_index_rep_S_altreg_imm inst index type rep + \inst\()2\rep {v0.\type, v2.\type}\index, [x0], #8 + \inst\()3\rep {v0.\type, v2.\type, v4.\type}\index, [x0], #12 + \inst\()4\rep {v0.\type, v2.\type, v4.\type, v6.\type}\index, [x0], #16 + .endm + + .irp instr, ld, st + ldstn_index_rep_S_altreg_imm \instr index="[1]" type=s rep="" + .ifnc \instr, st + .irp types 2s, 4s + ldstn_index_rep_S_altreg_imm \instr index="" type=\types rep="r" + .endr + .endif + .endr + + .macro ldstn_index_rep_D_altreg_imm inst index type rep + \inst\()2\rep {v0.\type, v2.\type}\index, [x0], #16 + \inst\()3\rep {v0.\type, v2.\type, v4.\type}\index, [x0], #24 + \inst\()4\rep {v0.\type, v2.\type, v4.\type, v6.\type}\index, [x0], #32 + .endm + + .irp instr, ld, st + ldstn_index_rep_D_altreg_imm \instr index="[1]" type=d rep="" + .ifnc \instr, st + .irp types 1d, 2d + ldstn_index_rep_D_altreg_imm \instr index="" type=\types rep="r" + .endr + .endif + .endr + + .irp type 8b, 16b, 4h, 8h, 2s, 4s, 1d, 2d + ld1r {v0.\type, v1.\type}, [x0], x7 + .endr + + .macro ldstn_index_rep_reg_altreg inst index type rep postreg + \inst\()2\rep {v0.\type, v2.\type}\index, [x0], \postreg + \inst\()3\rep {v0.\type, v2.\type, v4.\type}\index, [x0], \postreg + \inst\()4\rep {v0.\type, v2.\type, v4.\type, v6.\type}\index, [x0], \postreg + .endm + + .irp instr, ld, st + .irp itypes b,h,s,d + ldstn_index_rep_reg_altreg \instr index="[1]" type=\itypes rep="" postreg=x7 + .endr + .ifnc \instr, st + .irp types 8b, 16b, 4h, 8h, 2s, 4s, 1d, 2d + ldstn_index_rep_reg_altreg \instr index="" type=\types rep="r" postreg=x7 + .endr + .endif + .endr + + .macro ldnstn_reg_list type inst index rep + .ifb \index + .ifnb \rep + \inst\()1\rep {v0.\type, v1.\type}\index, [x0] + .endif + .endif + + .ifnc \type, B + \inst\()2\rep {v0.\type, v2.\type}\index, [x0] + .endif + + .ifnc \type, B + \inst\()3\rep {v0.\type, v2.\type, v4.\type}\index, [x0] + .endif + + .ifnc \type, B + \inst\()4\rep {v0.\type, v2.\type, v4.\type, v6.\type}\index, [x0] + .endif + + .endm + + ldnstn_reg_list type="8B", inst="ld" index="" rep="" + ldnstn_reg_list type="8B", inst="st" index="" rep="" + + ldnstn_reg_list type="16B", inst="ld" index="" rep="" + ldnstn_reg_list type="16B", inst="st" index="" rep="" + + ldnstn_reg_list type="4H", inst="ld" index="" rep="" + ldnstn_reg_list type="4H", inst="st" index="" rep="" + + ldnstn_reg_list type="8H", inst="ld" index="" rep="" + ldnstn_reg_list type="8H", inst="st" index="" rep="" + + ldnstn_reg_list type="2S", inst="ld" index="" rep="" + ldnstn_reg_list type="2S", inst="st" index="" rep="" + + ldnstn_reg_list type="4S", inst="ld" index="" rep="" + ldnstn_reg_list type="4S", inst="st" index="" rep="" + + ldnstn_reg_list type="2D", inst="ld" index="" rep="" + ldnstn_reg_list type="2D", inst="st" index="" rep="" + + ldnstn_reg_list type="B", inst="ld" index="[1]" rep="" + ldnstn_reg_list type="B", inst="st" index="[1]" rep="" + + ldnstn_reg_list type="B", inst="ld" index="[1]" rep="" + ldnstn_reg_list type="B", inst="st" index="[1]" rep="" + + ldnstn_reg_list type="H", inst="ld" index="[1]" rep="" + ldnstn_reg_list type="H", inst="st" index="[1]" rep="" + + ldnstn_reg_list type="H", inst="ld" index="[1]" rep="" + ldnstn_reg_list type="H", inst="st" index="[1]" rep="" + + ldnstn_reg_list type="S", inst="ld" index="[1]" rep="" + ldnstn_reg_list type="S", inst="st" index="[1]" rep="" + + ldnstn_reg_list type="S", inst="ld" index="[1]" rep="" + ldnstn_reg_list type="S", inst="st" index="[1]" rep="" + + ldnstn_reg_list type="D", inst="ld" index="[1]" rep="" + ldnstn_reg_list type="D", inst="st" index="[1]" rep="" + + ldnstn_reg_list type="8B", inst="ld" index="" rep="r" + + ldnstn_reg_list type="16B", inst="ld" index="" rep="r" + + ldnstn_reg_list type="4H", inst="ld" index="" rep="r" + + ldnstn_reg_list type="8H", inst="ld" index="" rep="r" + + ldnstn_reg_list type="2S", inst="ld" index="" rep="r" + + ldnstn_reg_list type="4S", inst="ld" index="" rep="r" + + ldnstn_reg_list type="1D", inst="ld" index="" rep="r" + + ldnstn_reg_list type="2D", inst="ld" index="" rep="r" + + pmull v0.1q, v1.1d, v2.1d + pmull2 v0.1q, v1.2d, v2.2d + + // #<fbits> out of range + .irp instr, scvtf, ucvtf + \instr d0, w1, 33 + \instr s0, w0, 33 + \instr d0, x1, 65 + \instr s0, x1, 65 + .endr + .irp instr, fcvtzs, fcvtzu + \instr w1, d0, 33 + \instr w0, s0, 33 + \instr x1, d0, 65 + \instr x1, s0, 65 + .endr + + // Invalid instruction. + mockup-op + + + ldrh w0, [x1, x2, lsr #1] + + add w0, w1, w2, ror #1 + sub w0, w1, w2, asr #32 + eor w0, w1, w2, ror #32 + + add x0, x1, #20, LSL #16 + add x0, x1, #20, UXTX #12 + add x0, x1, #20, LSR + add x0, x1, #20, LSL + + ldnp h7, h15, [x0, #2] + ldnp b15, b31, [x0], #4 + ldnp h0, h1, [x0, #6]! + + uqrshrn h0, s1, #63 + sqshl b7, b15, #8 + + bfxil w7, w15, #15, #30 + bfi x3, x7, #31, #48 + + str x1,page_table_count + + prfm PLDL3KEEP, [x9, x15, sxtx #2] + + mrs x5, S1_0_C13_C8_0 + msr S3_1_C13_C15_1, x7 + msr S3_1_C11_C15_-1, x7 + msr S3_1_11_15_1, x7 + + // MOVI (alias of ORR immediate) is no longer supported. + movi w1, #15 +.set u48, 0xaabbccddeeff + + uxtb x7, x15 + uxth x7, x15 + uxtw x7, x15 + sxtb w15, xzr + sxth w15, xzr + sxtw w15, xzr + + mov w0, v0.b[0] + mov w0, v0.h[0] + mov w0, v0.d[0] + mov x0, v0.b[0] + mov x0, v0.h[0] + mov x0, v0.s[0] + + uabdl2 v20.4S, v12.8H, v29.8 + + movi d1, 0xffff, lsl #16 + + ST3 {v18.D-v20.D}[0],[x28],x + ST1 {v7.B}[2],[x4],x + ST1 {v22.1D-v25.1D},[x10],x + + ldr w0, [x0]! + ldr w0, [x0], {127} + + orr x0, x0, #0xff, lsl #1 + orr x0. x0, #0xff, lsl #1 + orr x0, x0, #0xff lsl #1 + + mov x0, ##5 diff --git a/gas/testsuite/gas/aarch64/inst-directive.d b/gas/testsuite/gas/aarch64/inst-directive.d new file mode 100644 index 0000000..e6066ee --- /dev/null +++ b/gas/testsuite/gas/aarch64/inst-directive.d @@ -0,0 +1,8 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: 3619194c tbz w12, #3, 2328 <\.text\+0x2328> diff --git a/gas/testsuite/gas/aarch64/inst-directive.s b/gas/testsuite/gas/aarch64/inst-directive.s new file mode 100644 index 0000000..e928362 --- /dev/null +++ b/gas/testsuite/gas/aarch64/inst-directive.s @@ -0,0 +1,5 @@ +// inst-directive.s Test file for AArch64 .inst directive. +// This test file is also useful in testing the disassembler. + +.text + .inst 0x3619194c diff --git a/gas/testsuite/gas/aarch64/int-insns.d b/gas/testsuite/gas/aarch64/int-insns.d new file mode 100644 index 0000000..d6ba840 --- /dev/null +++ b/gas/testsuite/gas/aarch64/int-insns.d @@ -0,0 +1,80 @@ +#objdump: -dr +#as: -march=armv8 + +.*: file format .* + +Disassembly of section .text: + +0000000000000000 <.*>: + 0: 9ac32041 lsl x1, x2, x3 + 4: d340fc41 lsr x1, x2, #0 + 8: d37ff841 lsl x1, x2, #1 + c: 93c30441 extr x1, x2, x3, #1 + 10: 93c3fc41 extr x1, x2, x3, #63 + 14: 93c30041 extr x1, x2, x3, #0 + 18: 13837c41 extr w1, w2, w3, #31 + 1c: 9a9f17e1 cset x1, eq + 20: da9f13e1 csetm x1, eq + 24: 71000021 subs w1, w1, #0x0 + 28: 7100003f cmp w1, #0x0 + 2c: 4b0203e1 neg w1, w2 + 30: 51000041 sub w1, w2, #0x0 + 34: f100003f cmp x1, #0x0 + 38: f1000021 subs x1, x1, #0x0 + 3c: 32000fe1 orr w1, wzr, #0xf + 40: aa0203e1 mov x1, x2 + 44: 18000061 ldr w1, 50 <sp> + 48: 18000621 ldr w1, 10c <sp\+0xbc> + 4c: 58000621 ldr x1, 110 <sp\+0xc0> + +0000000000000050 <sp>: + 50: 12345678 .word 0x12345678 + 54: d65f03c0 ret + 58: d65f03c0 ret + 5c: d65f0040 ret x2 + 60: 8b22603f add sp, x1, x2 + 64: 91401ca5 add x5, x5, #0x7, lsl #12 + 68: 8b430441 add x1, x2, x3, lsr #1 + 6c: 91001ca5 add x5, x5, #0x7 + 70: 71000421 subs w1, w1, #0x1 + 74: d2800c82 movz x2, #0x64 + 78: d2800c82 movz x2, #0x64 + 7c: d2800c82 movz x2, #0x64 + 80: d2a00c82 movz x2, #0x64, lsl #16 + 84: d2a00c82 movz x2, #0x64, lsl #16 + 88: d2c00c82 movz x2, #0x64, lsl #32 + 8c: d2c00c82 movz x2, #0x64, lsl #32 + 90: d2e00c82 movz x2, #0x64, lsl #48 + 94: d2e00c82 movz x2, #0x64, lsl #48 + 98: 52800c81 movz w1, #0x64 + 9c: 52800c81 movz w1, #0x64 + a0: 52a00c81 movz w1, #0x64, lsl #16 + a4: 8a030041 and x1, x2, x3 + a8: 0a0f015e and w30, w10, w15 + ac: 12000041 and w1, w2, #0x1 + b0: 8a430441 and x1, x2, x3, lsr #1 + b4: 32000021 orr w1, w1, #0x1 + b8: 32000021 orr w1, w1, #0x1 + bc: b2400021 orr x1, x1, #0x1 + c0: 92400c41 and x1, x2, #0xf + c4: 12000c41 and w1, w2, #0xf + c8: 92610041 and x1, x2, #0x80000000 + cc: 12010041 and w1, w2, #0x80000000 + d0: 925d0041 and x1, x2, #0x800000000 + d4: 92400c85 and x5, x4, #0xf + d8: 0a230041 bic w1, w2, w3 + dc: 8a230041 bic x1, x2, x3 + e0: 54000001 b.ne e0 <sp\+0x90> + e4: 17ffffff b e0 <sp\+0x90> + e8: 14000001 b ec <sp\+0x9c> + ec: 54ffffa0 b.eq e0 <sp\+0x90> + f0: 54000001 b.ne f0 <sp\+0xa0> + f4: 17ffffff b f0 <sp\+0xa0> + f8: 14000001 b fc <sp\+0xac> + fc: 54ffffa0 b.eq f0 <sp\+0xa0> + 100: d61f0040 br x2 + 104: 54ffffc2 b.cs fc <sp\+0xac> + 108: 54ffffa3 b.cc fc <sp\+0xac> + ... + 10c: R_AARCH64_ABS32 .text\+0x50 + 110: R_AARCH64_ABS64 .text\+0x50 diff --git a/gas/testsuite/gas/aarch64/int-insns.s b/gas/testsuite/gas/aarch64/int-insns.s new file mode 100644 index 0000000..2b8af60 --- /dev/null +++ b/gas/testsuite/gas/aarch64/int-insns.s @@ -0,0 +1,151 @@ +// Test file for AArch64 GAS -- basic integer instructions + +func: + lsl x1, x2, x3 + lsl x1, x2, #0 + lsl x1, x2, #1 + + extr x1, x2, x3, #1 + extr x1, x2, x3, #63 + + extr x1, x2, x3, #0 + extr w1, w2, w3, #31 + + CSET x1, eq + CSETM x1, eq + + subs w1,w1,#0 + cmp w1,#0 + + neg w1,w2 + sub w1,w2,#0 + + cmp x1,#0 + subs x1,x1,#0 + + orr w1,wzr,#15 + mov x1,x2 + + ldr w1, sp + ldr w1, =sp + ldr x1, =sp +sp: .word 0x12345678 + + ret x30 + ret + ret x2 + + add sp,x1,x2 + + add x5,x5,#0x7, lsl #12 + + add x1,x2,x3, lsr #1 + add x5,x5,#0x7 + + subs w1,w1,#1 + + movz x2,#0x64 + movz x2,#0x64, lsl #0 + movz x2,#:abs_g0:0x64 + movz x2,#0x64, lsl #16 + movz x2,#:abs_g1:(0x64 << 16) + movz x2,#0x64, lsl #32 + movz x2,#:abs_g2:(0x64 << 32) + movz x2,#0x64, lsl #48 + movz x2,#:abs_g3:(0x64 << 48) + movz w1,#0x64 + movz w1,#0x64, lsl #0 + movz w1,#0x64, lsl #16 + + and x1,x2,x3 + and w30,w10,w15 + and w1,w2,#1 + + and x1,x2,x3, lsr #1 + + orr w1,w1,#1 + orr w1,w1,#1 + orr x1,x1,#1 + and x1,x2,#0xf + and w1,w2,#0xf + and x1,x2,#0x80000000 + and w1,w2,#0x80000000 + and x1,x2,#0x800000000 + + // 00010010000101000000010100000011 + // 1 2 1 4 0 5 0 3 + and x5,x4,#0xf + + bic w1,w2,w3 + bic x1,x2,x3 + +1: b.ne 1b + b 1b + b 2f +2: b.eq 1b + + +3: bne 3b + b 3b + b 4f +4: beq 3b + + br x2 + + bcs 4b + bcc 4b + + .if 0 + + lsl x1, #0, #1 + + ext x1, x2, x3, #64 + ext w1, w2, w3, #63 + ext w1, w2, w3, #32 + + mov w1,#10 + neg w1,#1 + + ldm {x1},[sp] + ldm {x1-x2},[sp] + ldm {x1,x2,x3,x4},sp + ldm {x1-x3},[x1,w2] + + subs #0,#1 + + add x5,x5,#0x7, lsl #1 + add x5,x5,#0x7, lsr #1 + + movz x0,#0x64, lsl #1 + movz x0,#0x64, lsl #2 + movz x0,#0x64, lsl #3 + movz x0,#0x64, lsl #4 + movz x0,#0x64, lsl #64 + movz w1,#0x64, lsl #32 + movz w1,#0x64, lsl #48 + + orr #0,w1 + and sp,x1,x2 + and x1,sp,x2 + and x1,x2,sp + + and w1,#0,x2 + and x1,#0,w2 + + and x1,x2,w3 + and x1,w2,x3 + and x1,w2,w3 + and w1,x2,x3 + and w1,x2,w3 + and w1,w2,x3 + and w1,w2,w3 + + and x1,x2,#0 + and w1,w2,#0x800000000 + bic x1,x2,#1 + + br w2 + br sp + .endif + + .equ sh,2 diff --git a/gas/testsuite/gas/aarch64/ldst-exclusive.d b/gas/testsuite/gas/aarch64/ldst-exclusive.d new file mode 100644 index 0000000..e1774e9 --- /dev/null +++ b/gas/testsuite/gas/aarch64/ldst-exclusive.d @@ -0,0 +1,103 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: 080f7ce1 stxrb w15, w1, \[x7\] + 4: 080f7ce1 stxrb w15, w1, \[x7\] + 8: 080f7ce1 stxrb w15, w1, \[x7\] + c: 480f7ce1 stxrh w15, w1, \[x7\] + 10: 480f7ce1 stxrh w15, w1, \[x7\] + 14: 480f7ce1 stxrh w15, w1, \[x7\] + 18: 880f7ce1 stxr w15, w1, \[x7\] + 1c: 880f7ce1 stxr w15, w1, \[x7\] + 20: 880f7ce1 stxr w15, w1, \[x7\] + 24: c80f7ce1 stxr w15, x1, \[x7\] + 28: c80f7ce1 stxr w15, x1, \[x7\] + 2c: c80f7ce1 stxr w15, x1, \[x7\] + 30: 085f7ce1 ldxrb w1, \[x7\] + 34: 085f7ce1 ldxrb w1, \[x7\] + 38: 085f7ce1 ldxrb w1, \[x7\] + 3c: 485f7ce1 ldxrh w1, \[x7\] + 40: 485f7ce1 ldxrh w1, \[x7\] + 44: 485f7ce1 ldxrh w1, \[x7\] + 48: 885f7ce1 ldxr w1, \[x7\] + 4c: 885f7ce1 ldxr w1, \[x7\] + 50: 885f7ce1 ldxr w1, \[x7\] + 54: c85f7ce1 ldxr x1, \[x7\] + 58: c85f7ce1 ldxr x1, \[x7\] + 5c: c85f7ce1 ldxr x1, \[x7\] + 60: 882f08e1 stxp w15, w1, w2, \[x7\] + 64: 882f08e1 stxp w15, w1, w2, \[x7\] + 68: 882f08e1 stxp w15, w1, w2, \[x7\] + 6c: c82f08e1 stxp w15, x1, x2, \[x7\] + 70: c82f08e1 stxp w15, x1, x2, \[x7\] + 74: c82f08e1 stxp w15, x1, x2, \[x7\] + 78: 887f08e1 ldxp w1, w2, \[x7\] + 7c: 887f08e1 ldxp w1, w2, \[x7\] + 80: 887f08e1 ldxp w1, w2, \[x7\] + 84: c87f08e1 ldxp x1, x2, \[x7\] + 88: c87f08e1 ldxp x1, x2, \[x7\] + 8c: c87f08e1 ldxp x1, x2, \[x7\] + 90: 080ffce1 stlxrb w15, w1, \[x7\] + 94: 080ffce1 stlxrb w15, w1, \[x7\] + 98: 080ffce1 stlxrb w15, w1, \[x7\] + 9c: 480ffce1 stlxrh w15, w1, \[x7\] + a0: 480ffce1 stlxrh w15, w1, \[x7\] + a4: 480ffce1 stlxrh w15, w1, \[x7\] + a8: 880ffce1 stlxr w15, w1, \[x7\] + ac: 880ffce1 stlxr w15, w1, \[x7\] + b0: 880ffce1 stlxr w15, w1, \[x7\] + b4: c80ffce1 stlxr w15, x1, \[x7\] + b8: c80ffce1 stlxr w15, x1, \[x7\] + bc: c80ffce1 stlxr w15, x1, \[x7\] + c0: 085ffce1 ldaxrb w1, \[x7\] + c4: 085ffce1 ldaxrb w1, \[x7\] + c8: 085ffce1 ldaxrb w1, \[x7\] + cc: 485ffce1 ldaxrh w1, \[x7\] + d0: 485ffce1 ldaxrh w1, \[x7\] + d4: 485ffce1 ldaxrh w1, \[x7\] + d8: 885ffce1 ldaxr w1, \[x7\] + dc: 885ffce1 ldaxr w1, \[x7\] + e0: 885ffce1 ldaxr w1, \[x7\] + e4: c85ffce1 ldaxr x1, \[x7\] + e8: c85ffce1 ldaxr x1, \[x7\] + ec: c85ffce1 ldaxr x1, \[x7\] + f0: 882f88e1 stlxp w15, w1, w2, \[x7\] + f4: 882f88e1 stlxp w15, w1, w2, \[x7\] + f8: 882f88e1 stlxp w15, w1, w2, \[x7\] + fc: c82f88e1 stlxp w15, x1, x2, \[x7\] + 100: c82f88e1 stlxp w15, x1, x2, \[x7\] + 104: c82f88e1 stlxp w15, x1, x2, \[x7\] + 108: 887f88e1 ldaxp w1, w2, \[x7\] + 10c: 887f88e1 ldaxp w1, w2, \[x7\] + 110: 887f88e1 ldaxp w1, w2, \[x7\] + 114: c87f88e1 ldaxp x1, x2, \[x7\] + 118: c87f88e1 ldaxp x1, x2, \[x7\] + 11c: c87f88e1 ldaxp x1, x2, \[x7\] + 120: 089ffce1 stlrb w1, \[x7\] + 124: 089ffce1 stlrb w1, \[x7\] + 128: 089ffce1 stlrb w1, \[x7\] + 12c: 489ffce1 stlrh w1, \[x7\] + 130: 489ffce1 stlrh w1, \[x7\] + 134: 489ffce1 stlrh w1, \[x7\] + 138: 889ffce1 stlr w1, \[x7\] + 13c: 889ffce1 stlr w1, \[x7\] + 140: 889ffce1 stlr w1, \[x7\] + 144: c89ffce1 stlr x1, \[x7\] + 148: c89ffce1 stlr x1, \[x7\] + 14c: c89ffce1 stlr x1, \[x7\] + 150: 08dffce1 ldarb w1, \[x7\] + 154: 08dffce1 ldarb w1, \[x7\] + 158: 08dffce1 ldarb w1, \[x7\] + 15c: 48dffce1 ldarh w1, \[x7\] + 160: 48dffce1 ldarh w1, \[x7\] + 164: 48dffce1 ldarh w1, \[x7\] + 168: 88dffce1 ldar w1, \[x7\] + 16c: 88dffce1 ldar w1, \[x7\] + 170: 88dffce1 ldar w1, \[x7\] + 174: c8dffce1 ldar x1, \[x7\] + 178: c8dffce1 ldar x1, \[x7\] + 17c: c8dffce1 ldar x1, \[x7\] diff --git a/gas/testsuite/gas/aarch64/ldst-exclusive.s b/gas/testsuite/gas/aarch64/ldst-exclusive.s new file mode 100644 index 0000000..fd66f36 --- /dev/null +++ b/gas/testsuite/gas/aarch64/ldst-exclusive.s @@ -0,0 +1,139 @@ +/* ldst-exclusive.s Test file for AArch64 load-store exclusive + instructions. + + Copyright 2011, 2012 Free Software Foundation, Inc. + Contributed by ARM Ltd. + + This file is part of GAS. + + GAS 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. + + GAS 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; see the file COPYING3. If not, + see <http://www.gnu.org/licenses/>. */ + + + /* <mnemonic> <Wt>, [<Xn|SP>]{,#0}] */ + .macro LR32 op + \op w1, [x7] + \op w1, [x7, #0] + \op w1, [x7, 0] + .endm + + /* <mnemonic> <Xt>, [<Xn|SP>]{,#0}] */ + .macro LR64 op + \op x1, [x7] + \op x1, [x7, #0] + \op x1, [x7, 0] + .endm + + /* <mnemonic> <Ws>, <Wt>, [<Xn|SP>]{,#0}] */ + .macro SR32 op + \op w15, w1, [x7] + \op w15, w1, [x7, #0] + \op w15, w1, [x7, 0] + .endm + + /* <mnemonic> <Ws>, <Xt>, [<Xn|SP>]{,#0}] */ + .macro SR64 op + \op w15, x1, [x7] + \op w15, x1, [x7, #0] + \op w15, x1, [x7, 0] + .endm + + /* <mnemonic> <Wt1>, <Wt2>, [<Xn|SP>]{,#0}] */ + .macro LP32 op + \op w1, w2, [x7] + \op w1, w2, [x7, #0] + \op w1, w2, [x7, 0] + .endm + + /* <mnemonic> <Xt1>, <Xt2>, [<Xn|SP>]{,#0}] */ + .macro LP64 op + \op x1, x2, [x7] + \op x1, x2, [x7, #0] + \op x1, x2, [x7, 0] + .endm + + /* <mnemonic> <Ws>, <Wt1>, <Wt2>, [<Xn|SP>]{,#0}] */ + .macro SP32 op + \op w15, w1, w2, [x7] + \op w15, w1, w2, [x7, #0] + \op w15, w1, w2, [x7, 0] + .endm + + /* <mnemonic> <Ws>, <Xt1>, <Xt2>, [<Xn|SP>]{,#0}] */ + .macro SP64 op + \op w15, x1, x2, [x7] + \op w15, x1, x2, [x7, #0] + \op w15, x1, x2, [x7, 0] + .endm + + /* <mnemonic> <Wt>, [<Xn|SP>]{,#0}] */ + .macro SL32 op + \op w1, [x7] + \op w1, [x7, #0] + \op w1, [x7, 0] + .endm + + /* <mnemonic> <Xt>, [<Xn|SP>]{,#0}] */ + .macro SL64 op + \op x1, [x7] + \op x1, [x7, #0] + \op x1, [x7, 0] + .endm + +func: + .irp op, stxrb, stxrh, stxr + SR32 \op + .endr + + SR64 stxr + + .irp op, ldxrb, ldxrh, ldxr + LR32 \op + .endr + + LR64 ldxr + + SP32 stxp + SP64 stxp + LP32 ldxp + LP64 ldxp + + .irp op, stlxrb, stlxrh, stlxr + SR32 \op + .endr + + SR64 stlxr + + .irp op, ldaxrb, ldaxrh, ldaxr + LR32 \op + .endr + + LR64 ldaxr + + SP32 stlxp + SP64 stlxp + LP32 ldaxp + LP64 ldaxp + + .irp op, stlrb, stlrh, stlr + SL32 \op + .endr + + SL64 stlr + + .irp op, ldarb, ldarh, ldar + LR32 \op + .endr + + LR64 ldar diff --git a/gas/testsuite/gas/aarch64/ldst-reg-imm-post-ind.d b/gas/testsuite/gas/aarch64/ldst-reg-imm-post-ind.d new file mode 100644 index 0000000..37c8cb9 --- /dev/null +++ b/gas/testsuite/gas/aarch64/ldst-reg-imm-post-ind.d @@ -0,0 +1,214 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: 3c1007e7 str b7, \[sp\],#-256 + 4: 3c1557e7 str b7, \[sp\],#-171 + 8: 3c0007e7 str b7, \[sp\],#0 + c: 3c0027e7 str b7, \[sp\],#2 + 10: 3c0047e7 str b7, \[sp\],#4 + 14: 3c0087e7 str b7, \[sp\],#8 + 18: 3c0107e7 str b7, \[sp\],#16 + 1c: 3c0557e7 str b7, \[sp\],#85 + 20: 3c0ff7e7 str b7, \[sp\],#255 + 24: 7c1007e7 str h7, \[sp\],#-256 + 28: 7c1557e7 str h7, \[sp\],#-171 + 2c: 7c0007e7 str h7, \[sp\],#0 + 30: 7c0027e7 str h7, \[sp\],#2 + 34: 7c0047e7 str h7, \[sp\],#4 + 38: 7c0087e7 str h7, \[sp\],#8 + 3c: 7c0107e7 str h7, \[sp\],#16 + 40: 7c0557e7 str h7, \[sp\],#85 + 44: 7c0ff7e7 str h7, \[sp\],#255 + 48: bc1007e7 str s7, \[sp\],#-256 + 4c: bc1557e7 str s7, \[sp\],#-171 + 50: bc0007e7 str s7, \[sp\],#0 + 54: bc0027e7 str s7, \[sp\],#2 + 58: bc0047e7 str s7, \[sp\],#4 + 5c: bc0087e7 str s7, \[sp\],#8 + 60: bc0107e7 str s7, \[sp\],#16 + 64: bc0557e7 str s7, \[sp\],#85 + 68: bc0ff7e7 str s7, \[sp\],#255 + 6c: fc1007e7 str d7, \[sp\],#-256 + 70: fc1557e7 str d7, \[sp\],#-171 + 74: fc0007e7 str d7, \[sp\],#0 + 78: fc0027e7 str d7, \[sp\],#2 + 7c: fc0047e7 str d7, \[sp\],#4 + 80: fc0087e7 str d7, \[sp\],#8 + 84: fc0107e7 str d7, \[sp\],#16 + 88: fc0557e7 str d7, \[sp\],#85 + 8c: fc0ff7e7 str d7, \[sp\],#255 + 90: 3c9007e7 str q7, \[sp\],#-256 + 94: 3c9557e7 str q7, \[sp\],#-171 + 98: 3c8007e7 str q7, \[sp\],#0 + 9c: 3c8027e7 str q7, \[sp\],#2 + a0: 3c8047e7 str q7, \[sp\],#4 + a4: 3c8087e7 str q7, \[sp\],#8 + a8: 3c8107e7 str q7, \[sp\],#16 + ac: 3c8557e7 str q7, \[sp\],#85 + b0: 3c8ff7e7 str q7, \[sp\],#255 + b4: 3c5007e7 ldr b7, \[sp\],#-256 + b8: 3c5557e7 ldr b7, \[sp\],#-171 + bc: 3c4007e7 ldr b7, \[sp\],#0 + c0: 3c4027e7 ldr b7, \[sp\],#2 + c4: 3c4047e7 ldr b7, \[sp\],#4 + c8: 3c4087e7 ldr b7, \[sp\],#8 + cc: 3c4107e7 ldr b7, \[sp\],#16 + d0: 3c4557e7 ldr b7, \[sp\],#85 + d4: 3c4ff7e7 ldr b7, \[sp\],#255 + d8: 7c5007e7 ldr h7, \[sp\],#-256 + dc: 7c5557e7 ldr h7, \[sp\],#-171 + e0: 7c4007e7 ldr h7, \[sp\],#0 + e4: 7c4027e7 ldr h7, \[sp\],#2 + e8: 7c4047e7 ldr h7, \[sp\],#4 + ec: 7c4087e7 ldr h7, \[sp\],#8 + f0: 7c4107e7 ldr h7, \[sp\],#16 + f4: 7c4557e7 ldr h7, \[sp\],#85 + f8: 7c4ff7e7 ldr h7, \[sp\],#255 + fc: bc5007e7 ldr s7, \[sp\],#-256 + 100: bc5557e7 ldr s7, \[sp\],#-171 + 104: bc4007e7 ldr s7, \[sp\],#0 + 108: bc4027e7 ldr s7, \[sp\],#2 + 10c: bc4047e7 ldr s7, \[sp\],#4 + 110: bc4087e7 ldr s7, \[sp\],#8 + 114: bc4107e7 ldr s7, \[sp\],#16 + 118: bc4557e7 ldr s7, \[sp\],#85 + 11c: bc4ff7e7 ldr s7, \[sp\],#255 + 120: fc5007e7 ldr d7, \[sp\],#-256 + 124: fc5557e7 ldr d7, \[sp\],#-171 + 128: fc4007e7 ldr d7, \[sp\],#0 + 12c: fc4027e7 ldr d7, \[sp\],#2 + 130: fc4047e7 ldr d7, \[sp\],#4 + 134: fc4087e7 ldr d7, \[sp\],#8 + 138: fc4107e7 ldr d7, \[sp\],#16 + 13c: fc4557e7 ldr d7, \[sp\],#85 + 140: fc4ff7e7 ldr d7, \[sp\],#255 + 144: 3cd007e7 ldr q7, \[sp\],#-256 + 148: 3cd557e7 ldr q7, \[sp\],#-171 + 14c: 3cc007e7 ldr q7, \[sp\],#0 + 150: 3cc027e7 ldr q7, \[sp\],#2 + 154: 3cc047e7 ldr q7, \[sp\],#4 + 158: 3cc087e7 ldr q7, \[sp\],#8 + 15c: 3cc107e7 ldr q7, \[sp\],#16 + 160: 3cc557e7 ldr q7, \[sp\],#85 + 164: 3ccff7e7 ldr q7, \[sp\],#255 + 168: 381007e7 strb w7, \[sp\],#-256 + 16c: 381557e7 strb w7, \[sp\],#-171 + 170: 380007e7 strb w7, \[sp\],#0 + 174: 380027e7 strb w7, \[sp\],#2 + 178: 380047e7 strb w7, \[sp\],#4 + 17c: 380087e7 strb w7, \[sp\],#8 + 180: 380107e7 strb w7, \[sp\],#16 + 184: 380557e7 strb w7, \[sp\],#85 + 188: 380ff7e7 strb w7, \[sp\],#255 + 18c: 781007e7 strh w7, \[sp\],#-256 + 190: 781557e7 strh w7, \[sp\],#-171 + 194: 780007e7 strh w7, \[sp\],#0 + 198: 780027e7 strh w7, \[sp\],#2 + 19c: 780047e7 strh w7, \[sp\],#4 + 1a0: 780087e7 strh w7, \[sp\],#8 + 1a4: 780107e7 strh w7, \[sp\],#16 + 1a8: 780557e7 strh w7, \[sp\],#85 + 1ac: 780ff7e7 strh w7, \[sp\],#255 + 1b0: b81007e7 str w7, \[sp\],#-256 + 1b4: b81557e7 str w7, \[sp\],#-171 + 1b8: b80007e7 str w7, \[sp\],#0 + 1bc: b80027e7 str w7, \[sp\],#2 + 1c0: b80047e7 str w7, \[sp\],#4 + 1c4: b80087e7 str w7, \[sp\],#8 + 1c8: b80107e7 str w7, \[sp\],#16 + 1cc: b80557e7 str w7, \[sp\],#85 + 1d0: b80ff7e7 str w7, \[sp\],#255 + 1d4: f81007e7 str x7, \[sp\],#-256 + 1d8: f81557e7 str x7, \[sp\],#-171 + 1dc: f80007e7 str x7, \[sp\],#0 + 1e0: f80027e7 str x7, \[sp\],#2 + 1e4: f80047e7 str x7, \[sp\],#4 + 1e8: f80087e7 str x7, \[sp\],#8 + 1ec: f80107e7 str x7, \[sp\],#16 + 1f0: f80557e7 str x7, \[sp\],#85 + 1f4: f80ff7e7 str x7, \[sp\],#255 + 1f8: 385007e7 ldrb w7, \[sp\],#-256 + 1fc: 385557e7 ldrb w7, \[sp\],#-171 + 200: 384007e7 ldrb w7, \[sp\],#0 + 204: 384027e7 ldrb w7, \[sp\],#2 + 208: 384047e7 ldrb w7, \[sp\],#4 + 20c: 384087e7 ldrb w7, \[sp\],#8 + 210: 384107e7 ldrb w7, \[sp\],#16 + 214: 384557e7 ldrb w7, \[sp\],#85 + 218: 384ff7e7 ldrb w7, \[sp\],#255 + 21c: 785007e7 ldrh w7, \[sp\],#-256 + 220: 785557e7 ldrh w7, \[sp\],#-171 + 224: 784007e7 ldrh w7, \[sp\],#0 + 228: 784027e7 ldrh w7, \[sp\],#2 + 22c: 784047e7 ldrh w7, \[sp\],#4 + 230: 784087e7 ldrh w7, \[sp\],#8 + 234: 784107e7 ldrh w7, \[sp\],#16 + 238: 784557e7 ldrh w7, \[sp\],#85 + 23c: 784ff7e7 ldrh w7, \[sp\],#255 + 240: b85007e7 ldr w7, \[sp\],#-256 + 244: b85557e7 ldr w7, \[sp\],#-171 + 248: b84007e7 ldr w7, \[sp\],#0 + 24c: b84027e7 ldr w7, \[sp\],#2 + 250: b84047e7 ldr w7, \[sp\],#4 + 254: b84087e7 ldr w7, \[sp\],#8 + 258: b84107e7 ldr w7, \[sp\],#16 + 25c: b84557e7 ldr w7, \[sp\],#85 + 260: b84ff7e7 ldr w7, \[sp\],#255 + 264: f85007e7 ldr x7, \[sp\],#-256 + 268: f85557e7 ldr x7, \[sp\],#-171 + 26c: f84007e7 ldr x7, \[sp\],#0 + 270: f84027e7 ldr x7, \[sp\],#2 + 274: f84047e7 ldr x7, \[sp\],#4 + 278: f84087e7 ldr x7, \[sp\],#8 + 27c: f84107e7 ldr x7, \[sp\],#16 + 280: f84557e7 ldr x7, \[sp\],#85 + 284: f84ff7e7 ldr x7, \[sp\],#255 + 288: 389007e7 ldrsb x7, \[sp\],#-256 + 28c: 389557e7 ldrsb x7, \[sp\],#-171 + 290: 388007e7 ldrsb x7, \[sp\],#0 + 294: 388027e7 ldrsb x7, \[sp\],#2 + 298: 388047e7 ldrsb x7, \[sp\],#4 + 29c: 388087e7 ldrsb x7, \[sp\],#8 + 2a0: 388107e7 ldrsb x7, \[sp\],#16 + 2a4: 388557e7 ldrsb x7, \[sp\],#85 + 2a8: 388ff7e7 ldrsb x7, \[sp\],#255 + 2ac: 789007e7 ldrsh x7, \[sp\],#-256 + 2b0: 789557e7 ldrsh x7, \[sp\],#-171 + 2b4: 788007e7 ldrsh x7, \[sp\],#0 + 2b8: 788027e7 ldrsh x7, \[sp\],#2 + 2bc: 788047e7 ldrsh x7, \[sp\],#4 + 2c0: 788087e7 ldrsh x7, \[sp\],#8 + 2c4: 788107e7 ldrsh x7, \[sp\],#16 + 2c8: 788557e7 ldrsh x7, \[sp\],#85 + 2cc: 788ff7e7 ldrsh x7, \[sp\],#255 + 2d0: b89007e7 ldrsw x7, \[sp\],#-256 + 2d4: b89557e7 ldrsw x7, \[sp\],#-171 + 2d8: b88007e7 ldrsw x7, \[sp\],#0 + 2dc: b88027e7 ldrsw x7, \[sp\],#2 + 2e0: b88047e7 ldrsw x7, \[sp\],#4 + 2e4: b88087e7 ldrsw x7, \[sp\],#8 + 2e8: b88107e7 ldrsw x7, \[sp\],#16 + 2ec: b88557e7 ldrsw x7, \[sp\],#85 + 2f0: b88ff7e7 ldrsw x7, \[sp\],#255 + 2f4: 38d007e7 ldrsb w7, \[sp\],#-256 + 2f8: 38d557e7 ldrsb w7, \[sp\],#-171 + 2fc: 38c007e7 ldrsb w7, \[sp\],#0 + 300: 38c027e7 ldrsb w7, \[sp\],#2 + 304: 38c047e7 ldrsb w7, \[sp\],#4 + 308: 38c087e7 ldrsb w7, \[sp\],#8 + 30c: 38c107e7 ldrsb w7, \[sp\],#16 + 310: 38c557e7 ldrsb w7, \[sp\],#85 + 314: 38cff7e7 ldrsb w7, \[sp\],#255 + 318: 78d007e7 ldrsh w7, \[sp\],#-256 + 31c: 78d557e7 ldrsh w7, \[sp\],#-171 + 320: 78c007e7 ldrsh w7, \[sp\],#0 + 324: 78c027e7 ldrsh w7, \[sp\],#2 + 328: 78c047e7 ldrsh w7, \[sp\],#4 + 32c: 78c087e7 ldrsh w7, \[sp\],#8 + 330: 78c107e7 ldrsh w7, \[sp\],#16 + 334: 78c557e7 ldrsh w7, \[sp\],#85 + 338: 78cff7e7 ldrsh w7, \[sp\],#255 diff --git a/gas/testsuite/gas/aarch64/ldst-reg-imm-post-ind.s b/gas/testsuite/gas/aarch64/ldst-reg-imm-post-ind.s new file mode 100644 index 0000000..bedc157 --- /dev/null +++ b/gas/testsuite/gas/aarch64/ldst-reg-imm-post-ind.s @@ -0,0 +1,62 @@ +/* ldst-reg-imm-post-ind.s Test file for AArch64 + load-store reg. (imm.post-ind.) instructions. + + Copyright 2011, 2012 Free Software Foundation, Inc. + Contributed by ARM Ltd. + + This file is part of GAS. + + GAS 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. + + GAS 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; see the file COPYING3. If not, + see <http://www.gnu.org/licenses/>. */ + + .macro op2 op, reg, simm + \op \reg\()7, [sp], #\simm + .endm + + // load to or store from core register + .macro ld_or_st op, suffix, reg + .irp simm, -256, -171, 0, 2, 4, 8, 16, 85, 255 + op2 \op\suffix, \reg, \simm + .endr + .endm + + // load to or store from FP/SIMD register + .macro ld_or_st_v op + .irp reg, b, h, s, d, q + .irp simm, -256, -171, 0, 2, 4, 8, 16, 85, 255 + op2 \op, \reg, \simm + .endr + .endr + .endm + +func: + // load to or store from FP/SIMD register + ld_or_st_v str + ld_or_st_v ldr + + // load to or store from core register + // op, suffix, reg + ld_or_st str, b, w + ld_or_st str, h, w + ld_or_st str, , w + ld_or_st str, , x + ld_or_st ldr, b, w + ld_or_st ldr, h, w + ld_or_st ldr, , w + ld_or_st ldr, , x + ld_or_st ldr, sb, x + ld_or_st ldr, sh, x + ld_or_st ldr, sw, x + ld_or_st ldr, sb, w + ld_or_st ldr, sh, w diff --git a/gas/testsuite/gas/aarch64/ldst-reg-imm-pre-ind.d b/gas/testsuite/gas/aarch64/ldst-reg-imm-pre-ind.d new file mode 100644 index 0000000..423202c --- /dev/null +++ b/gas/testsuite/gas/aarch64/ldst-reg-imm-pre-ind.d @@ -0,0 +1,214 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: 3c100fe7 str b7, \[sp,#-256\]! + 4: 3c155fe7 str b7, \[sp,#-171\]! + 8: 3c000fe7 str b7, \[sp,#0\]! + c: 3c002fe7 str b7, \[sp,#2\]! + 10: 3c004fe7 str b7, \[sp,#4\]! + 14: 3c008fe7 str b7, \[sp,#8\]! + 18: 3c010fe7 str b7, \[sp,#16\]! + 1c: 3c055fe7 str b7, \[sp,#85\]! + 20: 3c0fffe7 str b7, \[sp,#255\]! + 24: 7c100fe7 str h7, \[sp,#-256\]! + 28: 7c155fe7 str h7, \[sp,#-171\]! + 2c: 7c000fe7 str h7, \[sp,#0\]! + 30: 7c002fe7 str h7, \[sp,#2\]! + 34: 7c004fe7 str h7, \[sp,#4\]! + 38: 7c008fe7 str h7, \[sp,#8\]! + 3c: 7c010fe7 str h7, \[sp,#16\]! + 40: 7c055fe7 str h7, \[sp,#85\]! + 44: 7c0fffe7 str h7, \[sp,#255\]! + 48: bc100fe7 str s7, \[sp,#-256\]! + 4c: bc155fe7 str s7, \[sp,#-171\]! + 50: bc000fe7 str s7, \[sp,#0\]! + 54: bc002fe7 str s7, \[sp,#2\]! + 58: bc004fe7 str s7, \[sp,#4\]! + 5c: bc008fe7 str s7, \[sp,#8\]! + 60: bc010fe7 str s7, \[sp,#16\]! + 64: bc055fe7 str s7, \[sp,#85\]! + 68: bc0fffe7 str s7, \[sp,#255\]! + 6c: fc100fe7 str d7, \[sp,#-256\]! + 70: fc155fe7 str d7, \[sp,#-171\]! + 74: fc000fe7 str d7, \[sp,#0\]! + 78: fc002fe7 str d7, \[sp,#2\]! + 7c: fc004fe7 str d7, \[sp,#4\]! + 80: fc008fe7 str d7, \[sp,#8\]! + 84: fc010fe7 str d7, \[sp,#16\]! + 88: fc055fe7 str d7, \[sp,#85\]! + 8c: fc0fffe7 str d7, \[sp,#255\]! + 90: 3c900fe7 str q7, \[sp,#-256\]! + 94: 3c955fe7 str q7, \[sp,#-171\]! + 98: 3c800fe7 str q7, \[sp,#0\]! + 9c: 3c802fe7 str q7, \[sp,#2\]! + a0: 3c804fe7 str q7, \[sp,#4\]! + a4: 3c808fe7 str q7, \[sp,#8\]! + a8: 3c810fe7 str q7, \[sp,#16\]! + ac: 3c855fe7 str q7, \[sp,#85\]! + b0: 3c8fffe7 str q7, \[sp,#255\]! + b4: 3c500fe7 ldr b7, \[sp,#-256\]! + b8: 3c555fe7 ldr b7, \[sp,#-171\]! + bc: 3c400fe7 ldr b7, \[sp,#0\]! + c0: 3c402fe7 ldr b7, \[sp,#2\]! + c4: 3c404fe7 ldr b7, \[sp,#4\]! + c8: 3c408fe7 ldr b7, \[sp,#8\]! + cc: 3c410fe7 ldr b7, \[sp,#16\]! + d0: 3c455fe7 ldr b7, \[sp,#85\]! + d4: 3c4fffe7 ldr b7, \[sp,#255\]! + d8: 7c500fe7 ldr h7, \[sp,#-256\]! + dc: 7c555fe7 ldr h7, \[sp,#-171\]! + e0: 7c400fe7 ldr h7, \[sp,#0\]! + e4: 7c402fe7 ldr h7, \[sp,#2\]! + e8: 7c404fe7 ldr h7, \[sp,#4\]! + ec: 7c408fe7 ldr h7, \[sp,#8\]! + f0: 7c410fe7 ldr h7, \[sp,#16\]! + f4: 7c455fe7 ldr h7, \[sp,#85\]! + f8: 7c4fffe7 ldr h7, \[sp,#255\]! + fc: bc500fe7 ldr s7, \[sp,#-256\]! + 100: bc555fe7 ldr s7, \[sp,#-171\]! + 104: bc400fe7 ldr s7, \[sp,#0\]! + 108: bc402fe7 ldr s7, \[sp,#2\]! + 10c: bc404fe7 ldr s7, \[sp,#4\]! + 110: bc408fe7 ldr s7, \[sp,#8\]! + 114: bc410fe7 ldr s7, \[sp,#16\]! + 118: bc455fe7 ldr s7, \[sp,#85\]! + 11c: bc4fffe7 ldr s7, \[sp,#255\]! + 120: fc500fe7 ldr d7, \[sp,#-256\]! + 124: fc555fe7 ldr d7, \[sp,#-171\]! + 128: fc400fe7 ldr d7, \[sp,#0\]! + 12c: fc402fe7 ldr d7, \[sp,#2\]! + 130: fc404fe7 ldr d7, \[sp,#4\]! + 134: fc408fe7 ldr d7, \[sp,#8\]! + 138: fc410fe7 ldr d7, \[sp,#16\]! + 13c: fc455fe7 ldr d7, \[sp,#85\]! + 140: fc4fffe7 ldr d7, \[sp,#255\]! + 144: 3cd00fe7 ldr q7, \[sp,#-256\]! + 148: 3cd55fe7 ldr q7, \[sp,#-171\]! + 14c: 3cc00fe7 ldr q7, \[sp,#0\]! + 150: 3cc02fe7 ldr q7, \[sp,#2\]! + 154: 3cc04fe7 ldr q7, \[sp,#4\]! + 158: 3cc08fe7 ldr q7, \[sp,#8\]! + 15c: 3cc10fe7 ldr q7, \[sp,#16\]! + 160: 3cc55fe7 ldr q7, \[sp,#85\]! + 164: 3ccfffe7 ldr q7, \[sp,#255\]! + 168: 38100fe7 strb w7, \[sp,#-256\]! + 16c: 38155fe7 strb w7, \[sp,#-171\]! + 170: 38000fe7 strb w7, \[sp,#0\]! + 174: 38002fe7 strb w7, \[sp,#2\]! + 178: 38004fe7 strb w7, \[sp,#4\]! + 17c: 38008fe7 strb w7, \[sp,#8\]! + 180: 38010fe7 strb w7, \[sp,#16\]! + 184: 38055fe7 strb w7, \[sp,#85\]! + 188: 380fffe7 strb w7, \[sp,#255\]! + 18c: 78100fe7 strh w7, \[sp,#-256\]! + 190: 78155fe7 strh w7, \[sp,#-171\]! + 194: 78000fe7 strh w7, \[sp,#0\]! + 198: 78002fe7 strh w7, \[sp,#2\]! + 19c: 78004fe7 strh w7, \[sp,#4\]! + 1a0: 78008fe7 strh w7, \[sp,#8\]! + 1a4: 78010fe7 strh w7, \[sp,#16\]! + 1a8: 78055fe7 strh w7, \[sp,#85\]! + 1ac: 780fffe7 strh w7, \[sp,#255\]! + 1b0: b8100fe7 str w7, \[sp,#-256\]! + 1b4: b8155fe7 str w7, \[sp,#-171\]! + 1b8: b8000fe7 str w7, \[sp,#0\]! + 1bc: b8002fe7 str w7, \[sp,#2\]! + 1c0: b8004fe7 str w7, \[sp,#4\]! + 1c4: b8008fe7 str w7, \[sp,#8\]! + 1c8: b8010fe7 str w7, \[sp,#16\]! + 1cc: b8055fe7 str w7, \[sp,#85\]! + 1d0: b80fffe7 str w7, \[sp,#255\]! + 1d4: f8100fe7 str x7, \[sp,#-256\]! + 1d8: f8155fe7 str x7, \[sp,#-171\]! + 1dc: f8000fe7 str x7, \[sp,#0\]! + 1e0: f8002fe7 str x7, \[sp,#2\]! + 1e4: f8004fe7 str x7, \[sp,#4\]! + 1e8: f8008fe7 str x7, \[sp,#8\]! + 1ec: f8010fe7 str x7, \[sp,#16\]! + 1f0: f8055fe7 str x7, \[sp,#85\]! + 1f4: f80fffe7 str x7, \[sp,#255\]! + 1f8: 38500fe7 ldrb w7, \[sp,#-256\]! + 1fc: 38555fe7 ldrb w7, \[sp,#-171\]! + 200: 38400fe7 ldrb w7, \[sp,#0\]! + 204: 38402fe7 ldrb w7, \[sp,#2\]! + 208: 38404fe7 ldrb w7, \[sp,#4\]! + 20c: 38408fe7 ldrb w7, \[sp,#8\]! + 210: 38410fe7 ldrb w7, \[sp,#16\]! + 214: 38455fe7 ldrb w7, \[sp,#85\]! + 218: 384fffe7 ldrb w7, \[sp,#255\]! + 21c: 78500fe7 ldrh w7, \[sp,#-256\]! + 220: 78555fe7 ldrh w7, \[sp,#-171\]! + 224: 78400fe7 ldrh w7, \[sp,#0\]! + 228: 78402fe7 ldrh w7, \[sp,#2\]! + 22c: 78404fe7 ldrh w7, \[sp,#4\]! + 230: 78408fe7 ldrh w7, \[sp,#8\]! + 234: 78410fe7 ldrh w7, \[sp,#16\]! + 238: 78455fe7 ldrh w7, \[sp,#85\]! + 23c: 784fffe7 ldrh w7, \[sp,#255\]! + 240: b8500fe7 ldr w7, \[sp,#-256\]! + 244: b8555fe7 ldr w7, \[sp,#-171\]! + 248: b8400fe7 ldr w7, \[sp,#0\]! + 24c: b8402fe7 ldr w7, \[sp,#2\]! + 250: b8404fe7 ldr w7, \[sp,#4\]! + 254: b8408fe7 ldr w7, \[sp,#8\]! + 258: b8410fe7 ldr w7, \[sp,#16\]! + 25c: b8455fe7 ldr w7, \[sp,#85\]! + 260: b84fffe7 ldr w7, \[sp,#255\]! + 264: f8500fe7 ldr x7, \[sp,#-256\]! + 268: f8555fe7 ldr x7, \[sp,#-171\]! + 26c: f8400fe7 ldr x7, \[sp,#0\]! + 270: f8402fe7 ldr x7, \[sp,#2\]! + 274: f8404fe7 ldr x7, \[sp,#4\]! + 278: f8408fe7 ldr x7, \[sp,#8\]! + 27c: f8410fe7 ldr x7, \[sp,#16\]! + 280: f8455fe7 ldr x7, \[sp,#85\]! + 284: f84fffe7 ldr x7, \[sp,#255\]! + 288: 38900fe7 ldrsb x7, \[sp,#-256\]! + 28c: 38955fe7 ldrsb x7, \[sp,#-171\]! + 290: 38800fe7 ldrsb x7, \[sp,#0\]! + 294: 38802fe7 ldrsb x7, \[sp,#2\]! + 298: 38804fe7 ldrsb x7, \[sp,#4\]! + 29c: 38808fe7 ldrsb x7, \[sp,#8\]! + 2a0: 38810fe7 ldrsb x7, \[sp,#16\]! + 2a4: 38855fe7 ldrsb x7, \[sp,#85\]! + 2a8: 388fffe7 ldrsb x7, \[sp,#255\]! + 2ac: 78900fe7 ldrsh x7, \[sp,#-256\]! + 2b0: 78955fe7 ldrsh x7, \[sp,#-171\]! + 2b4: 78800fe7 ldrsh x7, \[sp,#0\]! + 2b8: 78802fe7 ldrsh x7, \[sp,#2\]! + 2bc: 78804fe7 ldrsh x7, \[sp,#4\]! + 2c0: 78808fe7 ldrsh x7, \[sp,#8\]! + 2c4: 78810fe7 ldrsh x7, \[sp,#16\]! + 2c8: 78855fe7 ldrsh x7, \[sp,#85\]! + 2cc: 788fffe7 ldrsh x7, \[sp,#255\]! + 2d0: b8900fe7 ldrsw x7, \[sp,#-256\]! + 2d4: b8955fe7 ldrsw x7, \[sp,#-171\]! + 2d8: b8800fe7 ldrsw x7, \[sp,#0\]! + 2dc: b8802fe7 ldrsw x7, \[sp,#2\]! + 2e0: b8804fe7 ldrsw x7, \[sp,#4\]! + 2e4: b8808fe7 ldrsw x7, \[sp,#8\]! + 2e8: b8810fe7 ldrsw x7, \[sp,#16\]! + 2ec: b8855fe7 ldrsw x7, \[sp,#85\]! + 2f0: b88fffe7 ldrsw x7, \[sp,#255\]! + 2f4: 38d00fe7 ldrsb w7, \[sp,#-256\]! + 2f8: 38d55fe7 ldrsb w7, \[sp,#-171\]! + 2fc: 38c00fe7 ldrsb w7, \[sp,#0\]! + 300: 38c02fe7 ldrsb w7, \[sp,#2\]! + 304: 38c04fe7 ldrsb w7, \[sp,#4\]! + 308: 38c08fe7 ldrsb w7, \[sp,#8\]! + 30c: 38c10fe7 ldrsb w7, \[sp,#16\]! + 310: 38c55fe7 ldrsb w7, \[sp,#85\]! + 314: 38cfffe7 ldrsb w7, \[sp,#255\]! + 318: 78d00fe7 ldrsh w7, \[sp,#-256\]! + 31c: 78d55fe7 ldrsh w7, \[sp,#-171\]! + 320: 78c00fe7 ldrsh w7, \[sp,#0\]! + 324: 78c02fe7 ldrsh w7, \[sp,#2\]! + 328: 78c04fe7 ldrsh w7, \[sp,#4\]! + 32c: 78c08fe7 ldrsh w7, \[sp,#8\]! + 330: 78c10fe7 ldrsh w7, \[sp,#16\]! + 334: 78c55fe7 ldrsh w7, \[sp,#85\]! + 338: 78cfffe7 ldrsh w7, \[sp,#255\]! diff --git a/gas/testsuite/gas/aarch64/ldst-reg-imm-pre-ind.s b/gas/testsuite/gas/aarch64/ldst-reg-imm-pre-ind.s new file mode 100644 index 0000000..2265869 --- /dev/null +++ b/gas/testsuite/gas/aarch64/ldst-reg-imm-pre-ind.s @@ -0,0 +1,62 @@ +/* ldst-reg-imm-pre-ind.s Test file for AArch64 + load-store reg. (imm.pre-ind.) instructions. + + Copyright 2011, 2012 Free Software Foundation, Inc. + Contributed by ARM Ltd. + + This file is part of GAS. + + GAS 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. + + GAS 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; see the file COPYING3. If not, + see <http://www.gnu.org/licenses/>. */ + + .macro op2 op, reg, simm + \op \reg\()7, [sp, #\simm]! + .endm + + // load to or store from core register + .macro ld_or_st op, suffix, reg + .irp simm, -256, -171, 0, 2, 4, 8, 16, 85, 255 + op2 \op\suffix, \reg, \simm + .endr + .endm + + // load to or store from FP/SIMD register + .macro ld_or_st_v op + .irp reg, b, h, s, d, q + .irp simm, -256, -171, 0, 2, 4, 8, 16, 85, 255 + op2 \op, \reg, \simm + .endr + .endr + .endm + +func: + // load to or store from FP/SIMD register + ld_or_st_v str + ld_or_st_v ldr + + // load to or store from core register + // op, suffix, reg + ld_or_st str, b, w + ld_or_st str, h, w + ld_or_st str, , w + ld_or_st str, , x + ld_or_st ldr, b, w + ld_or_st ldr, h, w + ld_or_st ldr, , w + ld_or_st ldr, , x + ld_or_st ldr, sb, x + ld_or_st ldr, sh, x + ld_or_st ldr, sw, x + ld_or_st ldr, sb, w + ld_or_st ldr, sh, w diff --git a/gas/testsuite/gas/aarch64/ldst-reg-pair.d b/gas/testsuite/gas/aarch64/ldst-reg-pair.d new file mode 100644 index 0000000..4b24a9f --- /dev/null +++ b/gas/testsuite/gas/aarch64/ldst-reg-pair.d @@ -0,0 +1,265 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: 29203fe7 stp w7, w15, \[sp,#-256\] + 4: 2930bfe7 stp w7, w15, \[sp,#-124\] + 8: 293fbfe7 stp w7, w15, \[sp,#-4\] + c: 29003fe7 stp w7, w15, \[sp\] + 10: 2907bfe7 stp w7, w15, \[sp,#60\] + 14: 291fbfe7 stp w7, w15, \[sp,#252\] + 18: 29603fe7 ldp w7, w15, \[sp,#-256\] + 1c: 2970bfe7 ldp w7, w15, \[sp,#-124\] + 20: 297fbfe7 ldp w7, w15, \[sp,#-4\] + 24: 29403fe7 ldp w7, w15, \[sp\] + 28: 2947bfe7 ldp w7, w15, \[sp,#60\] + 2c: 295fbfe7 ldp w7, w15, \[sp,#252\] + 30: 69603fe7 ldpsw x7, x15, \[sp,#-256\] + 34: 6970bfe7 ldpsw x7, x15, \[sp,#-124\] + 38: 697fbfe7 ldpsw x7, x15, \[sp,#-4\] + 3c: 69403fe7 ldpsw x7, x15, \[sp\] + 40: 6947bfe7 ldpsw x7, x15, \[sp,#60\] + 44: 695fbfe7 ldpsw x7, x15, \[sp,#252\] + 48: a9203fe7 stp x7, x15, \[sp,#-512\] + 4c: a930bfe7 stp x7, x15, \[sp,#-248\] + 50: a93fbfe7 stp x7, x15, \[sp,#-8\] + 54: a9003fe7 stp x7, x15, \[sp\] + 58: a907bfe7 stp x7, x15, \[sp,#120\] + 5c: a91fbfe7 stp x7, x15, \[sp,#504\] + 60: a9603fe7 ldp x7, x15, \[sp,#-512\] + 64: a970bfe7 ldp x7, x15, \[sp,#-248\] + 68: a97fbfe7 ldp x7, x15, \[sp,#-8\] + 6c: a9403fe7 ldp x7, x15, \[sp\] + 70: a947bfe7 ldp x7, x15, \[sp,#120\] + 74: a95fbfe7 ldp x7, x15, \[sp,#504\] + 78: 2d203fe7 stp s7, s15, \[sp,#-256\] + 7c: 2d30bfe7 stp s7, s15, \[sp,#-124\] + 80: 2d3fbfe7 stp s7, s15, \[sp,#-4\] + 84: 2d003fe7 stp s7, s15, \[sp\] + 88: 2d07bfe7 stp s7, s15, \[sp,#60\] + 8c: 2d1fbfe7 stp s7, s15, \[sp,#252\] + 90: 2d603fe7 ldp s7, s15, \[sp,#-256\] + 94: 2d70bfe7 ldp s7, s15, \[sp,#-124\] + 98: 2d7fbfe7 ldp s7, s15, \[sp,#-4\] + 9c: 2d403fe7 ldp s7, s15, \[sp\] + a0: 2d47bfe7 ldp s7, s15, \[sp,#60\] + a4: 2d5fbfe7 ldp s7, s15, \[sp,#252\] + a8: 6d203fe7 stp d7, d15, \[sp,#-512\] + ac: 6d30bfe7 stp d7, d15, \[sp,#-248\] + b0: 6d3fbfe7 stp d7, d15, \[sp,#-8\] + b4: 6d003fe7 stp d7, d15, \[sp\] + b8: 6d07bfe7 stp d7, d15, \[sp,#120\] + bc: 6d1fbfe7 stp d7, d15, \[sp,#504\] + c0: 6d603fe7 ldp d7, d15, \[sp,#-512\] + c4: 6d70bfe7 ldp d7, d15, \[sp,#-248\] + c8: 6d7fbfe7 ldp d7, d15, \[sp,#-8\] + cc: 6d403fe7 ldp d7, d15, \[sp\] + d0: 6d47bfe7 ldp d7, d15, \[sp,#120\] + d4: 6d5fbfe7 ldp d7, d15, \[sp,#504\] + d8: ad203fe7 stp q7, q15, \[sp,#-1024\] + dc: ad30bfe7 stp q7, q15, \[sp,#-496\] + e0: ad3fbfe7 stp q7, q15, \[sp,#-16\] + e4: ad003fe7 stp q7, q15, \[sp\] + e8: ad07bfe7 stp q7, q15, \[sp,#240\] + ec: ad1fbfe7 stp q7, q15, \[sp,#1008\] + f0: ad603fe7 ldp q7, q15, \[sp,#-1024\] + f4: ad70bfe7 ldp q7, q15, \[sp,#-496\] + f8: ad7fbfe7 ldp q7, q15, \[sp,#-16\] + fc: ad403fe7 ldp q7, q15, \[sp\] + 100: ad47bfe7 ldp q7, q15, \[sp,#240\] + 104: ad5fbfe7 ldp q7, q15, \[sp,#1008\] + 108: 28a03fe7 stp w7, w15, \[sp\],#-256 + 10c: 28b0bfe7 stp w7, w15, \[sp\],#-124 + 110: 28bfbfe7 stp w7, w15, \[sp\],#-4 + 114: 28803fe7 stp w7, w15, \[sp\],#0 + 118: 2887bfe7 stp w7, w15, \[sp\],#60 + 11c: 289fbfe7 stp w7, w15, \[sp\],#252 + 120: 28e03fe7 ldp w7, w15, \[sp\],#-256 + 124: 28f0bfe7 ldp w7, w15, \[sp\],#-124 + 128: 28ffbfe7 ldp w7, w15, \[sp\],#-4 + 12c: 28c03fe7 ldp w7, w15, \[sp\],#0 + 130: 28c7bfe7 ldp w7, w15, \[sp\],#60 + 134: 28dfbfe7 ldp w7, w15, \[sp\],#252 + 138: 68e03fe7 ldpsw x7, x15, \[sp\],#-256 + 13c: 68f0bfe7 ldpsw x7, x15, \[sp\],#-124 + 140: 68ffbfe7 ldpsw x7, x15, \[sp\],#-4 + 144: 68c03fe7 ldpsw x7, x15, \[sp\],#0 + 148: 68c7bfe7 ldpsw x7, x15, \[sp\],#60 + 14c: 68dfbfe7 ldpsw x7, x15, \[sp\],#252 + 150: a8a03fe7 stp x7, x15, \[sp\],#-512 + 154: a8b0bfe7 stp x7, x15, \[sp\],#-248 + 158: a8bfbfe7 stp x7, x15, \[sp\],#-8 + 15c: a8803fe7 stp x7, x15, \[sp\],#0 + 160: a887bfe7 stp x7, x15, \[sp\],#120 + 164: a89fbfe7 stp x7, x15, \[sp\],#504 + 168: a8e03fe7 ldp x7, x15, \[sp\],#-512 + 16c: a8f0bfe7 ldp x7, x15, \[sp\],#-248 + 170: a8ffbfe7 ldp x7, x15, \[sp\],#-8 + 174: a8c03fe7 ldp x7, x15, \[sp\],#0 + 178: a8c7bfe7 ldp x7, x15, \[sp\],#120 + 17c: a8dfbfe7 ldp x7, x15, \[sp\],#504 + 180: 2ca03fe7 stp s7, s15, \[sp\],#-256 + 184: 2cb0bfe7 stp s7, s15, \[sp\],#-124 + 188: 2cbfbfe7 stp s7, s15, \[sp\],#-4 + 18c: 2c803fe7 stp s7, s15, \[sp\],#0 + 190: 2c87bfe7 stp s7, s15, \[sp\],#60 + 194: 2c9fbfe7 stp s7, s15, \[sp\],#252 + 198: 2ce03fe7 ldp s7, s15, \[sp\],#-256 + 19c: 2cf0bfe7 ldp s7, s15, \[sp\],#-124 + 1a0: 2cffbfe7 ldp s7, s15, \[sp\],#-4 + 1a4: 2cc03fe7 ldp s7, s15, \[sp\],#0 + 1a8: 2cc7bfe7 ldp s7, s15, \[sp\],#60 + 1ac: 2cdfbfe7 ldp s7, s15, \[sp\],#252 + 1b0: 6ca03fe7 stp d7, d15, \[sp\],#-512 + 1b4: 6cb0bfe7 stp d7, d15, \[sp\],#-248 + 1b8: 6cbfbfe7 stp d7, d15, \[sp\],#-8 + 1bc: 6c803fe7 stp d7, d15, \[sp\],#0 + 1c0: 6c87bfe7 stp d7, d15, \[sp\],#120 + 1c4: 6c9fbfe7 stp d7, d15, \[sp\],#504 + 1c8: 6ce03fe7 ldp d7, d15, \[sp\],#-512 + 1cc: 6cf0bfe7 ldp d7, d15, \[sp\],#-248 + 1d0: 6cffbfe7 ldp d7, d15, \[sp\],#-8 + 1d4: 6cc03fe7 ldp d7, d15, \[sp\],#0 + 1d8: 6cc7bfe7 ldp d7, d15, \[sp\],#120 + 1dc: 6cdfbfe7 ldp d7, d15, \[sp\],#504 + 1e0: aca03fe7 stp q7, q15, \[sp\],#-1024 + 1e4: acb0bfe7 stp q7, q15, \[sp\],#-496 + 1e8: acbfbfe7 stp q7, q15, \[sp\],#-16 + 1ec: ac803fe7 stp q7, q15, \[sp\],#0 + 1f0: ac87bfe7 stp q7, q15, \[sp\],#240 + 1f4: ac9fbfe7 stp q7, q15, \[sp\],#1008 + 1f8: ace03fe7 ldp q7, q15, \[sp\],#-1024 + 1fc: acf0bfe7 ldp q7, q15, \[sp\],#-496 + 200: acffbfe7 ldp q7, q15, \[sp\],#-16 + 204: acc03fe7 ldp q7, q15, \[sp\],#0 + 208: acc7bfe7 ldp q7, q15, \[sp\],#240 + 20c: acdfbfe7 ldp q7, q15, \[sp\],#1008 + 210: 29a03fe7 stp w7, w15, \[sp,#-256\]! + 214: 29b0bfe7 stp w7, w15, \[sp,#-124\]! + 218: 29bfbfe7 stp w7, w15, \[sp,#-4\]! + 21c: 29803fe7 stp w7, w15, \[sp,#0\]! + 220: 2987bfe7 stp w7, w15, \[sp,#60\]! + 224: 299fbfe7 stp w7, w15, \[sp,#252\]! + 228: 29e03fe7 ldp w7, w15, \[sp,#-256\]! + 22c: 29f0bfe7 ldp w7, w15, \[sp,#-124\]! + 230: 29ffbfe7 ldp w7, w15, \[sp,#-4\]! + 234: 29c03fe7 ldp w7, w15, \[sp,#0\]! + 238: 29c7bfe7 ldp w7, w15, \[sp,#60\]! + 23c: 29dfbfe7 ldp w7, w15, \[sp,#252\]! + 240: 69e03fe7 ldpsw x7, x15, \[sp,#-256\]! + 244: 69f0bfe7 ldpsw x7, x15, \[sp,#-124\]! + 248: 69ffbfe7 ldpsw x7, x15, \[sp,#-4\]! + 24c: 69c03fe7 ldpsw x7, x15, \[sp,#0\]! + 250: 69c7bfe7 ldpsw x7, x15, \[sp,#60\]! + 254: 69dfbfe7 ldpsw x7, x15, \[sp,#252\]! + 258: a9a03fe7 stp x7, x15, \[sp,#-512\]! + 25c: a9b0bfe7 stp x7, x15, \[sp,#-248\]! + 260: a9bfbfe7 stp x7, x15, \[sp,#-8\]! + 264: a9803fe7 stp x7, x15, \[sp,#0\]! + 268: a987bfe7 stp x7, x15, \[sp,#120\]! + 26c: a99fbfe7 stp x7, x15, \[sp,#504\]! + 270: a9e03fe7 ldp x7, x15, \[sp,#-512\]! + 274: a9f0bfe7 ldp x7, x15, \[sp,#-248\]! + 278: a9ffbfe7 ldp x7, x15, \[sp,#-8\]! + 27c: a9c03fe7 ldp x7, x15, \[sp,#0\]! + 280: a9c7bfe7 ldp x7, x15, \[sp,#120\]! + 284: a9dfbfe7 ldp x7, x15, \[sp,#504\]! + 288: 2da03fe7 stp s7, s15, \[sp,#-256\]! + 28c: 2db0bfe7 stp s7, s15, \[sp,#-124\]! + 290: 2dbfbfe7 stp s7, s15, \[sp,#-4\]! + 294: 2d803fe7 stp s7, s15, \[sp,#0\]! + 298: 2d87bfe7 stp s7, s15, \[sp,#60\]! + 29c: 2d9fbfe7 stp s7, s15, \[sp,#252\]! + 2a0: 2de03fe7 ldp s7, s15, \[sp,#-256\]! + 2a4: 2df0bfe7 ldp s7, s15, \[sp,#-124\]! + 2a8: 2dffbfe7 ldp s7, s15, \[sp,#-4\]! + 2ac: 2dc03fe7 ldp s7, s15, \[sp,#0\]! + 2b0: 2dc7bfe7 ldp s7, s15, \[sp,#60\]! + 2b4: 2ddfbfe7 ldp s7, s15, \[sp,#252\]! + 2b8: 6da03fe7 stp d7, d15, \[sp,#-512\]! + 2bc: 6db0bfe7 stp d7, d15, \[sp,#-248\]! + 2c0: 6dbfbfe7 stp d7, d15, \[sp,#-8\]! + 2c4: 6d803fe7 stp d7, d15, \[sp,#0\]! + 2c8: 6d87bfe7 stp d7, d15, \[sp,#120\]! + 2cc: 6d9fbfe7 stp d7, d15, \[sp,#504\]! + 2d0: 6de03fe7 ldp d7, d15, \[sp,#-512\]! + 2d4: 6df0bfe7 ldp d7, d15, \[sp,#-248\]! + 2d8: 6dffbfe7 ldp d7, d15, \[sp,#-8\]! + 2dc: 6dc03fe7 ldp d7, d15, \[sp,#0\]! + 2e0: 6dc7bfe7 ldp d7, d15, \[sp,#120\]! + 2e4: 6ddfbfe7 ldp d7, d15, \[sp,#504\]! + 2e8: ada03fe7 stp q7, q15, \[sp,#-1024\]! + 2ec: adb0bfe7 stp q7, q15, \[sp,#-496\]! + 2f0: adbfbfe7 stp q7, q15, \[sp,#-16\]! + 2f4: ad803fe7 stp q7, q15, \[sp,#0\]! + 2f8: ad87bfe7 stp q7, q15, \[sp,#240\]! + 2fc: ad9fbfe7 stp q7, q15, \[sp,#1008\]! + 300: ade03fe7 ldp q7, q15, \[sp,#-1024\]! + 304: adf0bfe7 ldp q7, q15, \[sp,#-496\]! + 308: adffbfe7 ldp q7, q15, \[sp,#-16\]! + 30c: adc03fe7 ldp q7, q15, \[sp,#0\]! + 310: adc7bfe7 ldp q7, q15, \[sp,#240\]! + 314: addfbfe7 ldp q7, q15, \[sp,#1008\]! + 318: 28203fe7 stnp w7, w15, \[sp,#-256\] + 31c: 2830bfe7 stnp w7, w15, \[sp,#-124\] + 320: 283fbfe7 stnp w7, w15, \[sp,#-4\] + 324: 28003fe7 stnp w7, w15, \[sp\] + 328: 2807bfe7 stnp w7, w15, \[sp,#60\] + 32c: 281fbfe7 stnp w7, w15, \[sp,#252\] + 330: 28603fe7 ldnp w7, w15, \[sp,#-256\] + 334: 2870bfe7 ldnp w7, w15, \[sp,#-124\] + 338: 287fbfe7 ldnp w7, w15, \[sp,#-4\] + 33c: 28403fe7 ldnp w7, w15, \[sp\] + 340: 2847bfe7 ldnp w7, w15, \[sp,#60\] + 344: 285fbfe7 ldnp w7, w15, \[sp,#252\] + 348: a8203fe7 stnp x7, x15, \[sp,#-512\] + 34c: a830bfe7 stnp x7, x15, \[sp,#-248\] + 350: a83fbfe7 stnp x7, x15, \[sp,#-8\] + 354: a8003fe7 stnp x7, x15, \[sp\] + 358: a807bfe7 stnp x7, x15, \[sp,#120\] + 35c: a81fbfe7 stnp x7, x15, \[sp,#504\] + 360: a8603fe7 ldnp x7, x15, \[sp,#-512\] + 364: a870bfe7 ldnp x7, x15, \[sp,#-248\] + 368: a87fbfe7 ldnp x7, x15, \[sp,#-8\] + 36c: a8403fe7 ldnp x7, x15, \[sp\] + 370: a847bfe7 ldnp x7, x15, \[sp,#120\] + 374: a85fbfe7 ldnp x7, x15, \[sp,#504\] + 378: 2c203fe7 stnp s7, s15, \[sp,#-256\] + 37c: 2c30bfe7 stnp s7, s15, \[sp,#-124\] + 380: 2c3fbfe7 stnp s7, s15, \[sp,#-4\] + 384: 2c003fe7 stnp s7, s15, \[sp\] + 388: 2c07bfe7 stnp s7, s15, \[sp,#60\] + 38c: 2c1fbfe7 stnp s7, s15, \[sp,#252\] + 390: 2c603fe7 ldnp s7, s15, \[sp,#-256\] + 394: 2c70bfe7 ldnp s7, s15, \[sp,#-124\] + 398: 2c7fbfe7 ldnp s7, s15, \[sp,#-4\] + 39c: 2c403fe7 ldnp s7, s15, \[sp\] + 3a0: 2c47bfe7 ldnp s7, s15, \[sp,#60\] + 3a4: 2c5fbfe7 ldnp s7, s15, \[sp,#252\] + 3a8: 6c203fe7 stnp d7, d15, \[sp,#-512\] + 3ac: 6c30bfe7 stnp d7, d15, \[sp,#-248\] + 3b0: 6c3fbfe7 stnp d7, d15, \[sp,#-8\] + 3b4: 6c003fe7 stnp d7, d15, \[sp\] + 3b8: 6c07bfe7 stnp d7, d15, \[sp,#120\] + 3bc: 6c1fbfe7 stnp d7, d15, \[sp,#504\] + 3c0: 6c603fe7 ldnp d7, d15, \[sp,#-512\] + 3c4: 6c70bfe7 ldnp d7, d15, \[sp,#-248\] + 3c8: 6c7fbfe7 ldnp d7, d15, \[sp,#-8\] + 3cc: 6c403fe7 ldnp d7, d15, \[sp\] + 3d0: 6c47bfe7 ldnp d7, d15, \[sp,#120\] + 3d4: 6c5fbfe7 ldnp d7, d15, \[sp,#504\] + 3d8: ac203fe7 stnp q7, q15, \[sp,#-1024\] + 3dc: ac30bfe7 stnp q7, q15, \[sp,#-496\] + 3e0: ac3fbfe7 stnp q7, q15, \[sp,#-16\] + 3e4: ac003fe7 stnp q7, q15, \[sp\] + 3e8: ac07bfe7 stnp q7, q15, \[sp,#240\] + 3ec: ac1fbfe7 stnp q7, q15, \[sp,#1008\] + 3f0: ac603fe7 ldnp q7, q15, \[sp,#-1024\] + 3f4: ac70bfe7 ldnp q7, q15, \[sp,#-496\] + 3f8: ac7fbfe7 ldnp q7, q15, \[sp,#-16\] + 3fc: ac403fe7 ldnp q7, q15, \[sp\] + 400: ac47bfe7 ldnp q7, q15, \[sp,#240\] + 404: ac5fbfe7 ldnp q7, q15, \[sp,#1008\] diff --git a/gas/testsuite/gas/aarch64/ldst-reg-pair.s b/gas/testsuite/gas/aarch64/ldst-reg-pair.s new file mode 100644 index 0000000..2df333d --- /dev/null +++ b/gas/testsuite/gas/aarch64/ldst-reg-pair.s @@ -0,0 +1,111 @@ +/* ldst-reg-pair.s Test file for AArch64 load-store reg.pair instructions. + + Copyright 2011, 2012 Free Software Foundation, Inc. + Contributed by ARM Ltd. + + This file is part of GAS. + + GAS 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. + + GAS 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; see the file COPYING3. If not, + see <http://www.gnu.org/licenses/>. */ + +/* Includes: + * Load-store reg.pair (offset) + * Load-store reg.pair (post-ind.) + * Load-store reg.pair (pre-ind.) + * Load-store na.pair (pre-ind.) + */ + + // offset format + .macro op3_offset op, reg, imm + \op \reg\()7, \reg\()15, [sp, #\imm] + .endm + + // post-ind. format + .macro op3_post_ind op, reg, imm + \op \reg\()7, \reg\()15, [sp], #\imm + .endm + + // pre-ind. format + .macro op3_pre_ind op, reg, imm + \op \reg\()7, \reg\()15, [sp, #\imm]! + .endm + + .macro op3 op, reg, size, type + // a variety of values for the imm7 field + .irp imm7, -64, -31, -1, 0, 15, 63 + // offset format + .ifc \type, 1 + op3_offset \op, \reg, "(\imm7*\size)" + .endif + // post-ind. format + .ifc \type, 2 + op3_post_ind \op, \reg, "(\imm7*\size)" + .endif + // pre-ind. format + .ifc \type, 3 + op3_pre_ind \op, \reg, "(\imm7*\size)" + .endif + .endr + .endm + + .macro ldst_reg_pair type + // op, reg, size(in byte) of one of the pair, type + op3 stp, w, 4, \type + op3 ldp, w, 4, \type + + op3 ldpsw, x, 4, \type + + op3 stp, x, 8, \type + op3 ldp, x, 8, \type + + op3 stp, s, 4, \type + op3 ldp, s, 4, \type + + op3 stp, d, 8, \type + op3 ldp, d, 8, \type + + op3 stp, q, 16, \type + op3 ldp, q, 16, \type + .endm + + .macro ldst_reg_na_pair type + // op, reg, size(in byte) of one of the pair, type + op3 stnp, w, 4, \type + op3 ldnp, w, 4, \type + + op3 stnp, x, 8, \type + op3 ldnp, x, 8, \type + + op3 stnp, s, 4, \type + op3 ldnp, s, 4, \type + + op3 stnp, d, 8, \type + op3 ldnp, d, 8, \type + + op3 stnp, q, 16, \type + op3 ldnp, q, 16, \type + .endm + +func: + // Load-store reg.pair (offset) + ldst_reg_pair 1 + + // Load-store reg.pair (post-ind.) + ldst_reg_pair 2 + + // Load-store reg.pair (pre-ind.) + ldst_reg_pair 3 + + // Load-store na.pair (offset) + ldst_reg_na_pair 1 diff --git a/gas/testsuite/gas/aarch64/ldst-reg-reg-offset.d b/gas/testsuite/gas/aarch64/ldst-reg-reg-offset.d new file mode 100644 index 0000000..486d9c8 --- /dev/null +++ b/gas/testsuite/gas/aarch64/ldst-reg-reg-offset.d @@ -0,0 +1,87 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: 3c274be7 str b7, \[sp,w7,uxtw\] + 4: 3c275be7 str b7, \[sp,w7,uxtw #0\] + 8: 7c274be7 str h7, \[sp,w7,uxtw\] + c: 7c275be7 str h7, \[sp,w7,uxtw #1\] + 10: bc274be7 str s7, \[sp,w7,uxtw\] + 14: bc275be7 str s7, \[sp,w7,uxtw #2\] + 18: fc274be7 str d7, \[sp,w7,uxtw\] + 1c: fc275be7 str d7, \[sp,w7,uxtw #3\] + 20: 3ca74be7 str q7, \[sp,w7,uxtw\] + 24: 3ca75be7 str q7, \[sp,w7,uxtw #4\] + 28: 3c276be7 str b7, \[sp,x7\] + 2c: 3c277be7 str b7, \[sp,x7,lsl #0\] + 30: 7c276be7 str h7, \[sp,x7\] + 34: 7c277be7 str h7, \[sp,x7,lsl #1\] + 38: bc276be7 str s7, \[sp,x7\] + 3c: bc277be7 str s7, \[sp,x7,lsl #2\] + 40: fc276be7 str d7, \[sp,x7\] + 44: fc277be7 str d7, \[sp,x7,lsl #3\] + 48: 3ca76be7 str q7, \[sp,x7\] + 4c: 3ca77be7 str q7, \[sp,x7,lsl #4\] + 50: 3c27cbe7 str b7, \[sp,w7,sxtw\] + 54: 3c27dbe7 str b7, \[sp,w7,sxtw #0\] + 58: 7c27cbe7 str h7, \[sp,w7,sxtw\] + 5c: 7c27dbe7 str h7, \[sp,w7,sxtw #1\] + 60: bc27cbe7 str s7, \[sp,w7,sxtw\] + 64: bc27dbe7 str s7, \[sp,w7,sxtw #2\] + 68: fc27cbe7 str d7, \[sp,w7,sxtw\] + 6c: fc27dbe7 str d7, \[sp,w7,sxtw #3\] + 70: 3ca7cbe7 str q7, \[sp,w7,sxtw\] + 74: 3ca7dbe7 str q7, \[sp,w7,sxtw #4\] + 78: 3c27ebe7 str b7, \[sp,x7,sxtx\] + 7c: 3c27fbe7 str b7, \[sp,x7,sxtx #0\] + 80: 7c27ebe7 str h7, \[sp,x7,sxtx\] + 84: 7c27fbe7 str h7, \[sp,x7,sxtx #1\] + 88: bc27ebe7 str s7, \[sp,x7,sxtx\] + 8c: bc27fbe7 str s7, \[sp,x7,sxtx #2\] + 90: fc27ebe7 str d7, \[sp,x7,sxtx\] + 94: fc27fbe7 str d7, \[sp,x7,sxtx #3\] + 98: 3ca7ebe7 str q7, \[sp,x7,sxtx\] + 9c: 3ca7fbe7 str q7, \[sp,x7,sxtx #4\] + a0: 3c674be7 ldr b7, \[sp,w7,uxtw\] + a4: 3c675be7 ldr b7, \[sp,w7,uxtw #0\] + a8: 7c674be7 ldr h7, \[sp,w7,uxtw\] + ac: 7c675be7 ldr h7, \[sp,w7,uxtw #1\] + b0: bc674be7 ldr s7, \[sp,w7,uxtw\] + b4: bc675be7 ldr s7, \[sp,w7,uxtw #2\] + b8: fc674be7 ldr d7, \[sp,w7,uxtw\] + bc: fc675be7 ldr d7, \[sp,w7,uxtw #3\] + c0: 3ce74be7 ldr q7, \[sp,w7,uxtw\] + c4: 3ce75be7 ldr q7, \[sp,w7,uxtw #4\] + c8: 3c676be7 ldr b7, \[sp,x7\] + cc: 3c677be7 ldr b7, \[sp,x7,lsl #0\] + d0: 7c676be7 ldr h7, \[sp,x7\] + d4: 7c677be7 ldr h7, \[sp,x7,lsl #1\] + d8: bc676be7 ldr s7, \[sp,x7\] + dc: bc677be7 ldr s7, \[sp,x7,lsl #2\] + e0: fc676be7 ldr d7, \[sp,x7\] + e4: fc677be7 ldr d7, \[sp,x7,lsl #3\] + e8: 3ce76be7 ldr q7, \[sp,x7\] + ec: 3ce77be7 ldr q7, \[sp,x7,lsl #4\] + f0: 3c67cbe7 ldr b7, \[sp,w7,sxtw\] + f4: 3c67dbe7 ldr b7, \[sp,w7,sxtw #0\] + f8: 7c67cbe7 ldr h7, \[sp,w7,sxtw\] + fc: 7c67dbe7 ldr h7, \[sp,w7,sxtw #1\] + 100: bc67cbe7 ldr s7, \[sp,w7,sxtw\] + 104: bc67dbe7 ldr s7, \[sp,w7,sxtw #2\] + 108: fc67cbe7 ldr d7, \[sp,w7,sxtw\] + 10c: fc67dbe7 ldr d7, \[sp,w7,sxtw #3\] + 110: 3ce7cbe7 ldr q7, \[sp,w7,sxtw\] + 114: 3ce7dbe7 ldr q7, \[sp,w7,sxtw #4\] + 118: 3c67ebe7 ldr b7, \[sp,x7,sxtx\] + 11c: 3c67fbe7 ldr b7, \[sp,x7,sxtx #0\] + 120: 7c67ebe7 ldr h7, \[sp,x7,sxtx\] + 124: 7c67fbe7 ldr h7, \[sp,x7,sxtx #1\] + 128: bc67ebe7 ldr s7, \[sp,x7,sxtx\] + 12c: bc67fbe7 ldr s7, \[sp,x7,sxtx #2\] + 130: fc67ebe7 ldr d7, \[sp,x7,sxtx\] + 134: fc67fbe7 ldr d7, \[sp,x7,sxtx #3\] + 138: 3ce7ebe7 ldr q7, \[sp,x7,sxtx\] + 13c: 3ce7fbe7 ldr q7, \[sp,x7,sxtx #4\] diff --git a/gas/testsuite/gas/aarch64/ldst-reg-reg-offset.s b/gas/testsuite/gas/aarch64/ldst-reg-reg-offset.s new file mode 100644 index 0000000..afa7c4d --- /dev/null +++ b/gas/testsuite/gas/aarch64/ldst-reg-reg-offset.s @@ -0,0 +1,88 @@ +/* ldst-reg-reg-offset.s Test file for AArch64 load-store reg. (reg.offset) + instructions. + + Copyright 2011, 2012 Free Software Foundation, Inc. + Contributed by ARM Ltd. + + This file is part of GAS. + + GAS 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. + + GAS 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; see the file COPYING3. If not, + see <http://www.gnu.org/licenses/>. */ + +/* Only instructions loading from/storing to FP/SIMD register are + tested here. */ + + .macro op3_32 op, reg, ext, imm + .ifc \imm, -1 + \op \reg\()7, [sp, w7, \ext] + .else + \op \reg\()7, [sp, w7, \ext #\imm] + .endif + .endm + + .macro op3_64 op, reg, ext, imm + .ifc \imm, -1 + \op \reg\()7, [sp, x7, \ext] + .else + \op \reg\()7, [sp, x7, \ext #\imm] + .endif + .endm + + .macro op3 op, reg, ext, imm=-1 + .ifc \ext, uxtw + op3_32 \op, \reg, \ext, \imm + .endif + .ifc \ext, sxtw + op3_32 \op, \reg, \ext, \imm + .endif + .ifc \ext, lsl + .ifnc \imm, -1 + // shift <amount> is mandatory when 'lsl' is used + op3_64 \op, \reg, \ext, \imm + .else + // absent shift; lsl by default + \op \reg\()7, [sp, x7] + .endif + .endif + .ifc \ext, sxtx + op3_64 \op, \reg, \ext, \imm + .endif + .endm + + .macro shift op, ext + op3 \op, b, \ext + op3 \op, b, \ext, 0 + op3 \op, h, \ext, 0 + op3 \op, h, \ext, 1 + op3 \op, s, \ext, 0 + op3 \op, s, \ext, 2 + op3 \op, d, \ext, 0 + op3 \op, d, \ext, 3 + op3 \op, q, \ext, 0 + op3 \op, q, \ext, 4 + .endm + + .macro extend op + .irp ext, uxtw, lsl, sxtw, sxtx + shift \op, \ext + .endr + .endm + + .macro ld_or_st op + extend \op + .endm + +func: + ld_or_st str + ld_or_st ldr diff --git a/gas/testsuite/gas/aarch64/ldst-reg-uns-imm.d b/gas/testsuite/gas/aarch64/ldst-reg-uns-imm.d new file mode 100644 index 0000000..caaea07 --- /dev/null +++ b/gas/testsuite/gas/aarch64/ldst-reg-uns-imm.d @@ -0,0 +1,260 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: 3c1003e7 str b7, \[sp,#-256\] + 4: 3c1553e7 str b7, \[sp,#-171\] + 8: 3d0003e7 str b7, \[sp\] + c: 3d0003e7 str b7, \[sp\] + 10: 3d000be7 str b7, \[sp,#2\] + 14: 3d0013e7 str b7, \[sp,#4\] + 18: 3d0023e7 str b7, \[sp,#8\] + 1c: 3d0043e7 str b7, \[sp,#16\] + 20: 3d0157e7 str b7, \[sp,#85\] + 24: 3d03ffe7 str b7, \[sp,#255\] + 28: 3d3fffe7 str b7, \[sp,#4095\] + 2c: 7c1003e7 str h7, \[sp,#-256\] + 30: 7c1553e7 str h7, \[sp,#-171\] + 34: 7d0003e7 str h7, \[sp\] + 38: 7d0003e7 str h7, \[sp\] + 3c: 7d0007e7 str h7, \[sp,#2\] + 40: 7d000be7 str h7, \[sp,#4\] + 44: 7d0013e7 str h7, \[sp,#8\] + 48: 7d0023e7 str h7, \[sp,#16\] + 4c: 7c0553e7 str h7, \[sp,#85\] + 50: 7c0ff3e7 str h7, \[sp,#255\] + 54: 7d3fffe7 str h7, \[sp,#8190\] + 58: bc1003e7 str s7, \[sp,#-256\] + 5c: bc1553e7 str s7, \[sp,#-171\] + 60: bd0003e7 str s7, \[sp\] + 64: bd0003e7 str s7, \[sp\] + 68: bc0023e7 str s7, \[sp,#2\] + 6c: bd0007e7 str s7, \[sp,#4\] + 70: bd000be7 str s7, \[sp,#8\] + 74: bd0013e7 str s7, \[sp,#16\] + 78: bc0553e7 str s7, \[sp,#85\] + 7c: bc0ff3e7 str s7, \[sp,#255\] + 80: bd3fffe7 str s7, \[sp,#16380\] + 84: fc1003e7 str d7, \[sp,#-256\] + 88: fc1553e7 str d7, \[sp,#-171\] + 8c: fd0003e7 str d7, \[sp\] + 90: fd0003e7 str d7, \[sp\] + 94: fc0023e7 str d7, \[sp,#2\] + 98: fc0043e7 str d7, \[sp,#4\] + 9c: fd0007e7 str d7, \[sp,#8\] + a0: fd000be7 str d7, \[sp,#16\] + a4: fc0553e7 str d7, \[sp,#85\] + a8: fc0ff3e7 str d7, \[sp,#255\] + ac: fd3fffe7 str d7, \[sp,#32760\] + b0: 3c9003e7 str q7, \[sp,#-256\] + b4: 3c9553e7 str q7, \[sp,#-171\] + b8: 3d8003e7 str q7, \[sp\] + bc: 3d8003e7 str q7, \[sp\] + c0: 3c8023e7 str q7, \[sp,#2\] + c4: 3c8043e7 str q7, \[sp,#4\] + c8: 3c8083e7 str q7, \[sp,#8\] + cc: 3d8007e7 str q7, \[sp,#16\] + d0: 3c8553e7 str q7, \[sp,#85\] + d4: 3c8ff3e7 str q7, \[sp,#255\] + d8: 3dbfffe7 str q7, \[sp,#65520\] + dc: 3c5003e7 ldr b7, \[sp,#-256\] + e0: 3c5553e7 ldr b7, \[sp,#-171\] + e4: 3d4003e7 ldr b7, \[sp\] + e8: 3d4003e7 ldr b7, \[sp\] + ec: 3d400be7 ldr b7, \[sp,#2\] + f0: 3d4013e7 ldr b7, \[sp,#4\] + f4: 3d4023e7 ldr b7, \[sp,#8\] + f8: 3d4043e7 ldr b7, \[sp,#16\] + fc: 3d4157e7 ldr b7, \[sp,#85\] + 100: 3d43ffe7 ldr b7, \[sp,#255\] + 104: 3d7fffe7 ldr b7, \[sp,#4095\] + 108: 7c5003e7 ldr h7, \[sp,#-256\] + 10c: 7c5553e7 ldr h7, \[sp,#-171\] + 110: 7d4003e7 ldr h7, \[sp\] + 114: 7d4003e7 ldr h7, \[sp\] + 118: 7d4007e7 ldr h7, \[sp,#2\] + 11c: 7d400be7 ldr h7, \[sp,#4\] + 120: 7d4013e7 ldr h7, \[sp,#8\] + 124: 7d4023e7 ldr h7, \[sp,#16\] + 128: 7c4553e7 ldr h7, \[sp,#85\] + 12c: 7c4ff3e7 ldr h7, \[sp,#255\] + 130: 7d7fffe7 ldr h7, \[sp,#8190\] + 134: bc5003e7 ldr s7, \[sp,#-256\] + 138: bc5553e7 ldr s7, \[sp,#-171\] + 13c: bd4003e7 ldr s7, \[sp\] + 140: bd4003e7 ldr s7, \[sp\] + 144: bc4023e7 ldr s7, \[sp,#2\] + 148: bd4007e7 ldr s7, \[sp,#4\] + 14c: bd400be7 ldr s7, \[sp,#8\] + 150: bd4013e7 ldr s7, \[sp,#16\] + 154: bc4553e7 ldr s7, \[sp,#85\] + 158: bc4ff3e7 ldr s7, \[sp,#255\] + 15c: bd7fffe7 ldr s7, \[sp,#16380\] + 160: fc5003e7 ldr d7, \[sp,#-256\] + 164: fc5553e7 ldr d7, \[sp,#-171\] + 168: fd4003e7 ldr d7, \[sp\] + 16c: fd4003e7 ldr d7, \[sp\] + 170: fc4023e7 ldr d7, \[sp,#2\] + 174: fc4043e7 ldr d7, \[sp,#4\] + 178: fd4007e7 ldr d7, \[sp,#8\] + 17c: fd400be7 ldr d7, \[sp,#16\] + 180: fc4553e7 ldr d7, \[sp,#85\] + 184: fc4ff3e7 ldr d7, \[sp,#255\] + 188: fd7fffe7 ldr d7, \[sp,#32760\] + 18c: 3cd003e7 ldr q7, \[sp,#-256\] + 190: 3cd553e7 ldr q7, \[sp,#-171\] + 194: 3dc003e7 ldr q7, \[sp\] + 198: 3dc003e7 ldr q7, \[sp\] + 19c: 3cc023e7 ldr q7, \[sp,#2\] + 1a0: 3cc043e7 ldr q7, \[sp,#4\] + 1a4: 3cc083e7 ldr q7, \[sp,#8\] + 1a8: 3dc007e7 ldr q7, \[sp,#16\] + 1ac: 3cc553e7 ldr q7, \[sp,#85\] + 1b0: 3ccff3e7 ldr q7, \[sp,#255\] + 1b4: 3dffffe7 ldr q7, \[sp,#65520\] + 1b8: 381003e7 strb w7, \[sp,#-256\] + 1bc: 381553e7 strb w7, \[sp,#-171\] + 1c0: 390003e7 strb w7, \[sp\] + 1c4: 390003e7 strb w7, \[sp\] + 1c8: 39000be7 strb w7, \[sp,#2\] + 1cc: 390013e7 strb w7, \[sp,#4\] + 1d0: 390023e7 strb w7, \[sp,#8\] + 1d4: 390043e7 strb w7, \[sp,#16\] + 1d8: 390157e7 strb w7, \[sp,#85\] + 1dc: 3903ffe7 strb w7, \[sp,#255\] + 1e0: 393fffe7 strb w7, \[sp,#4095\] + 1e4: 781003e7 strh w7, \[sp,#-256\] + 1e8: 781553e7 strh w7, \[sp,#-171\] + 1ec: 790003e7 strh w7, \[sp\] + 1f0: 790003e7 strh w7, \[sp\] + 1f4: 790007e7 strh w7, \[sp,#2\] + 1f8: 79000be7 strh w7, \[sp,#4\] + 1fc: 790013e7 strh w7, \[sp,#8\] + 200: 790023e7 strh w7, \[sp,#16\] + 204: 780553e7 strh w7, \[sp,#85\] + 208: 780ff3e7 strh w7, \[sp,#255\] + 20c: 793fffe7 strh w7, \[sp,#8190\] + 210: b81003e7 str w7, \[sp,#-256\] + 214: b81553e7 str w7, \[sp,#-171\] + 218: b90003e7 str w7, \[sp\] + 21c: b90003e7 str w7, \[sp\] + 220: b80023e7 str w7, \[sp,#2\] + 224: b90007e7 str w7, \[sp,#4\] + 228: b9000be7 str w7, \[sp,#8\] + 22c: b90013e7 str w7, \[sp,#16\] + 230: b80553e7 str w7, \[sp,#85\] + 234: b80ff3e7 str w7, \[sp,#255\] + 238: b93fffe7 str w7, \[sp,#16380\] + 23c: f81003e7 str x7, \[sp,#-256\] + 240: f81553e7 str x7, \[sp,#-171\] + 244: f90003e7 str x7, \[sp\] + 248: f90003e7 str x7, \[sp\] + 24c: f80023e7 str x7, \[sp,#2\] + 250: f80043e7 str x7, \[sp,#4\] + 254: f90007e7 str x7, \[sp,#8\] + 258: f9000be7 str x7, \[sp,#16\] + 25c: f80553e7 str x7, \[sp,#85\] + 260: f80ff3e7 str x7, \[sp,#255\] + 264: f93fffe7 str x7, \[sp,#32760\] + 268: 385003e7 ldrb w7, \[sp,#-256\] + 26c: 385553e7 ldrb w7, \[sp,#-171\] + 270: 394003e7 ldrb w7, \[sp\] + 274: 394003e7 ldrb w7, \[sp\] + 278: 39400be7 ldrb w7, \[sp,#2\] + 27c: 394013e7 ldrb w7, \[sp,#4\] + 280: 394023e7 ldrb w7, \[sp,#8\] + 284: 394043e7 ldrb w7, \[sp,#16\] + 288: 394157e7 ldrb w7, \[sp,#85\] + 28c: 3943ffe7 ldrb w7, \[sp,#255\] + 290: 397fffe7 ldrb w7, \[sp,#4095\] + 294: 785003e7 ldrh w7, \[sp,#-256\] + 298: 785553e7 ldrh w7, \[sp,#-171\] + 29c: 794003e7 ldrh w7, \[sp\] + 2a0: 794003e7 ldrh w7, \[sp\] + 2a4: 794007e7 ldrh w7, \[sp,#2\] + 2a8: 79400be7 ldrh w7, \[sp,#4\] + 2ac: 794013e7 ldrh w7, \[sp,#8\] + 2b0: 794023e7 ldrh w7, \[sp,#16\] + 2b4: 784553e7 ldrh w7, \[sp,#85\] + 2b8: 784ff3e7 ldrh w7, \[sp,#255\] + 2bc: 797fffe7 ldrh w7, \[sp,#8190\] + 2c0: b85003e7 ldr w7, \[sp,#-256\] + 2c4: b85553e7 ldr w7, \[sp,#-171\] + 2c8: b94003e7 ldr w7, \[sp\] + 2cc: b94003e7 ldr w7, \[sp\] + 2d0: b84023e7 ldr w7, \[sp,#2\] + 2d4: b94007e7 ldr w7, \[sp,#4\] + 2d8: b9400be7 ldr w7, \[sp,#8\] + 2dc: b94013e7 ldr w7, \[sp,#16\] + 2e0: b84553e7 ldr w7, \[sp,#85\] + 2e4: b84ff3e7 ldr w7, \[sp,#255\] + 2e8: b97fffe7 ldr w7, \[sp,#16380\] + 2ec: f85003e7 ldr x7, \[sp,#-256\] + 2f0: f85553e7 ldr x7, \[sp,#-171\] + 2f4: f94003e7 ldr x7, \[sp\] + 2f8: f94003e7 ldr x7, \[sp\] + 2fc: f84023e7 ldr x7, \[sp,#2\] + 300: f84043e7 ldr x7, \[sp,#4\] + 304: f94007e7 ldr x7, \[sp,#8\] + 308: f9400be7 ldr x7, \[sp,#16\] + 30c: f84553e7 ldr x7, \[sp,#85\] + 310: f84ff3e7 ldr x7, \[sp,#255\] + 314: f97fffe7 ldr x7, \[sp,#32760\] + 318: 389003e7 ldrsb x7, \[sp,#-256\] + 31c: 389553e7 ldrsb x7, \[sp,#-171\] + 320: 398003e7 ldrsb x7, \[sp\] + 324: 398003e7 ldrsb x7, \[sp\] + 328: 39800be7 ldrsb x7, \[sp,#2\] + 32c: 398013e7 ldrsb x7, \[sp,#4\] + 330: 398023e7 ldrsb x7, \[sp,#8\] + 334: 398043e7 ldrsb x7, \[sp,#16\] + 338: 398157e7 ldrsb x7, \[sp,#85\] + 33c: 3983ffe7 ldrsb x7, \[sp,#255\] + 340: 39bfffe7 ldrsb x7, \[sp,#4095\] + 344: 789003e7 ldrsh x7, \[sp,#-256\] + 348: 789553e7 ldrsh x7, \[sp,#-171\] + 34c: 798003e7 ldrsh x7, \[sp\] + 350: 798003e7 ldrsh x7, \[sp\] + 354: 798007e7 ldrsh x7, \[sp,#2\] + 358: 79800be7 ldrsh x7, \[sp,#4\] + 35c: 798013e7 ldrsh x7, \[sp,#8\] + 360: 798023e7 ldrsh x7, \[sp,#16\] + 364: 788553e7 ldrsh x7, \[sp,#85\] + 368: 788ff3e7 ldrsh x7, \[sp,#255\] + 36c: 79bfffe7 ldrsh x7, \[sp,#8190\] + 370: b89003e7 ldrsw x7, \[sp,#-256\] + 374: b89553e7 ldrsw x7, \[sp,#-171\] + 378: b98003e7 ldrsw x7, \[sp\] + 37c: b98003e7 ldrsw x7, \[sp\] + 380: b88023e7 ldrsw x7, \[sp,#2\] + 384: b98007e7 ldrsw x7, \[sp,#4\] + 388: b9800be7 ldrsw x7, \[sp,#8\] + 38c: b98013e7 ldrsw x7, \[sp,#16\] + 390: b88553e7 ldrsw x7, \[sp,#85\] + 394: b88ff3e7 ldrsw x7, \[sp,#255\] + 398: b9bfffe7 ldrsw x7, \[sp,#16380\] + 39c: 38d003e7 ldrsb w7, \[sp,#-256\] + 3a0: 38d553e7 ldrsb w7, \[sp,#-171\] + 3a4: 39c003e7 ldrsb w7, \[sp\] + 3a8: 39c003e7 ldrsb w7, \[sp\] + 3ac: 39c00be7 ldrsb w7, \[sp,#2\] + 3b0: 39c013e7 ldrsb w7, \[sp,#4\] + 3b4: 39c023e7 ldrsb w7, \[sp,#8\] + 3b8: 39c043e7 ldrsb w7, \[sp,#16\] + 3bc: 39c157e7 ldrsb w7, \[sp,#85\] + 3c0: 39c3ffe7 ldrsb w7, \[sp,#255\] + 3c4: 39ffffe7 ldrsb w7, \[sp,#4095\] + 3c8: 78d003e7 ldrsh w7, \[sp,#-256\] + 3cc: 78d553e7 ldrsh w7, \[sp,#-171\] + 3d0: 79c003e7 ldrsh w7, \[sp\] + 3d4: 79c003e7 ldrsh w7, \[sp\] + 3d8: 79c007e7 ldrsh w7, \[sp,#2\] + 3dc: 79c00be7 ldrsh w7, \[sp,#4\] + 3e0: 79c013e7 ldrsh w7, \[sp,#8\] + 3e4: 79c023e7 ldrsh w7, \[sp,#16\] + 3e8: 78c553e7 ldrsh w7, \[sp,#85\] + 3ec: 78cff3e7 ldrsh w7, \[sp,#255\] + 3f0: 79ffffe7 ldrsh w7, \[sp,#8190\] diff --git a/gas/testsuite/gas/aarch64/ldst-reg-uns-imm.s b/gas/testsuite/gas/aarch64/ldst-reg-uns-imm.s new file mode 100644 index 0000000..ad3f601 --- /dev/null +++ b/gas/testsuite/gas/aarch64/ldst-reg-uns-imm.s @@ -0,0 +1,102 @@ +/* ld-reg-uns-imm.s Test file for AArch64 load-store reg. (uns.imm) + instructions. + + Copyright 2011, 2012 Free Software Foundation, Inc. + Contributed by ARM Ltd. + + This file is part of GAS. + + GAS 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. + + GAS 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; see the file COPYING3. If not, + see <http://www.gnu.org/licenses/>. */ + +/* Prefetch memory instruction is not tested here. + + Also note that as a programmer-friendly assembler, GAS generates + LDUR/STUR instructions in response to the standard LDR/STR mnemonics + when the immediate offset is unambiguous, i.e. when it is negative + or unaligned. Similarly a disassembler could display these + instructions using the standard LDR/STR mnemonics when the encoded + immediate is negative or unaligned. However this behaviour is not + required by the architectural assembly language. */ + + .macro op2_no_imm op, reg + \op \reg\()7, [sp] + .endm + + .macro op2 op, reg, simm + \op \reg\()7, [sp, #\simm] + .endm + + // load to or store from core register + // size is the access size in byte + .macro ld_or_st op, suffix, reg, size + .irp simm, -256, -171 + op2 \op\suffix, \reg, \simm + .endr + op2_no_imm \op\suffix, \reg + .irp simm, 0, 2, 4, 8, 16, 85, 255 + op2 \op\suffix, \reg, \simm + .endr + op2 \op\suffix, \reg, "(4095*\size)" + .endm + + // load to or store from FP/SIMD register + .macro ld_or_st_v op + .irp reg, b, h, s, d, q + .irp simm, -256, -171 + op2 \op, \reg, \simm + .endr + op2_no_imm \op, \reg + .irp simm, 0, 2, 4, 8, 16, 85, 255 + op2 \op, \reg, \simm + .endr + .ifc \reg, b + op2 \op, \reg, 4095 + .endif + .ifc \reg, h + op2 \op, \reg, 8190 + .endif + .ifc \reg, s + op2 \op, \reg, 16380 + .endif + .ifc \reg, d + op2 \op, \reg, 32760 + .endif + .ifc \reg, q + op2 \op, \reg, 65520 + .endif + .endr + .endm + +func: + // load to or store from FP/SIMD register + ld_or_st_v str + ld_or_st_v ldr + + // load to or store from core register + // op, suffix, reg, size(in byte) + ld_or_st str, b, w, 1 + ld_or_st str, h, w, 2 + ld_or_st str, , w, 4 + ld_or_st str, , x, 8 + ld_or_st ldr, b, w, 1 + ld_or_st ldr, h, w, 2 + ld_or_st ldr, , w, 4 + ld_or_st ldr, , x, 8 + ld_or_st ldr, sb, x, 1 + ld_or_st ldr, sh, x, 2 + ld_or_st ldr, sw, x, 4 + ld_or_st ldr, sb, w, 1 + ld_or_st ldr, sh, w, 2 + diff --git a/gas/testsuite/gas/aarch64/ldst-reg-unscaled-imm.d b/gas/testsuite/gas/aarch64/ldst-reg-unscaled-imm.d new file mode 100644 index 0000000..39dba7b --- /dev/null +++ b/gas/testsuite/gas/aarch64/ldst-reg-unscaled-imm.d @@ -0,0 +1,237 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: 3c1003e7 str b7, \[sp,#-256\] + 4: 3c1553e7 str b7, \[sp,#-171\] + 8: 3c0003e7 stur b7, \[sp\] + c: 3c0003e7 stur b7, \[sp\] + 10: 3c0023e7 stur b7, \[sp,#2\] + 14: 3c0043e7 stur b7, \[sp,#4\] + 18: 3c0083e7 stur b7, \[sp,#8\] + 1c: 3c0103e7 stur b7, \[sp,#16\] + 20: 3c0553e7 stur b7, \[sp,#85\] + 24: 3c0ff3e7 stur b7, \[sp,#255\] + 28: 7c1003e7 str h7, \[sp,#-256\] + 2c: 7c1553e7 str h7, \[sp,#-171\] + 30: 7c0003e7 stur h7, \[sp\] + 34: 7c0003e7 stur h7, \[sp\] + 38: 7c0023e7 stur h7, \[sp,#2\] + 3c: 7c0043e7 stur h7, \[sp,#4\] + 40: 7c0083e7 stur h7, \[sp,#8\] + 44: 7c0103e7 stur h7, \[sp,#16\] + 48: 7c0553e7 str h7, \[sp,#85\] + 4c: 7c0ff3e7 str h7, \[sp,#255\] + 50: bc1003e7 str s7, \[sp,#-256\] + 54: bc1553e7 str s7, \[sp,#-171\] + 58: bc0003e7 stur s7, \[sp\] + 5c: bc0003e7 stur s7, \[sp\] + 60: bc0023e7 str s7, \[sp,#2\] + 64: bc0043e7 stur s7, \[sp,#4\] + 68: bc0083e7 stur s7, \[sp,#8\] + 6c: bc0103e7 stur s7, \[sp,#16\] + 70: bc0553e7 str s7, \[sp,#85\] + 74: bc0ff3e7 str s7, \[sp,#255\] + 78: fc1003e7 str d7, \[sp,#-256\] + 7c: fc1553e7 str d7, \[sp,#-171\] + 80: fc0003e7 stur d7, \[sp\] + 84: fc0003e7 stur d7, \[sp\] + 88: fc0023e7 str d7, \[sp,#2\] + 8c: fc0043e7 str d7, \[sp,#4\] + 90: fc0083e7 stur d7, \[sp,#8\] + 94: fc0103e7 stur d7, \[sp,#16\] + 98: fc0553e7 str d7, \[sp,#85\] + 9c: fc0ff3e7 str d7, \[sp,#255\] + a0: 3c9003e7 str q7, \[sp,#-256\] + a4: 3c9553e7 str q7, \[sp,#-171\] + a8: 3c8003e7 stur q7, \[sp\] + ac: 3c8003e7 stur q7, \[sp\] + b0: 3c8023e7 str q7, \[sp,#2\] + b4: 3c8043e7 str q7, \[sp,#4\] + b8: 3c8083e7 str q7, \[sp,#8\] + bc: 3c8103e7 stur q7, \[sp,#16\] + c0: 3c8553e7 str q7, \[sp,#85\] + c4: 3c8ff3e7 str q7, \[sp,#255\] + c8: 3c5003e7 ldr b7, \[sp,#-256\] + cc: 3c5553e7 ldr b7, \[sp,#-171\] + d0: 3c4003e7 ldur b7, \[sp\] + d4: 3c4003e7 ldur b7, \[sp\] + d8: 3c4023e7 ldur b7, \[sp,#2\] + dc: 3c4043e7 ldur b7, \[sp,#4\] + e0: 3c4083e7 ldur b7, \[sp,#8\] + e4: 3c4103e7 ldur b7, \[sp,#16\] + e8: 3c4553e7 ldur b7, \[sp,#85\] + ec: 3c4ff3e7 ldur b7, \[sp,#255\] + f0: 7c5003e7 ldr h7, \[sp,#-256\] + f4: 7c5553e7 ldr h7, \[sp,#-171\] + f8: 7c4003e7 ldur h7, \[sp\] + fc: 7c4003e7 ldur h7, \[sp\] + 100: 7c4023e7 ldur h7, \[sp,#2\] + 104: 7c4043e7 ldur h7, \[sp,#4\] + 108: 7c4083e7 ldur h7, \[sp,#8\] + 10c: 7c4103e7 ldur h7, \[sp,#16\] + 110: 7c4553e7 ldr h7, \[sp,#85\] + 114: 7c4ff3e7 ldr h7, \[sp,#255\] + 118: bc5003e7 ldr s7, \[sp,#-256\] + 11c: bc5553e7 ldr s7, \[sp,#-171\] + 120: bc4003e7 ldur s7, \[sp\] + 124: bc4003e7 ldur s7, \[sp\] + 128: bc4023e7 ldr s7, \[sp,#2\] + 12c: bc4043e7 ldur s7, \[sp,#4\] + 130: bc4083e7 ldur s7, \[sp,#8\] + 134: bc4103e7 ldur s7, \[sp,#16\] + 138: bc4553e7 ldr s7, \[sp,#85\] + 13c: bc4ff3e7 ldr s7, \[sp,#255\] + 140: fc5003e7 ldr d7, \[sp,#-256\] + 144: fc5553e7 ldr d7, \[sp,#-171\] + 148: fc4003e7 ldur d7, \[sp\] + 14c: fc4003e7 ldur d7, \[sp\] + 150: fc4023e7 ldr d7, \[sp,#2\] + 154: fc4043e7 ldr d7, \[sp,#4\] + 158: fc4083e7 ldur d7, \[sp,#8\] + 15c: fc4103e7 ldur d7, \[sp,#16\] + 160: fc4553e7 ldr d7, \[sp,#85\] + 164: fc4ff3e7 ldr d7, \[sp,#255\] + 168: 3cd003e7 ldr q7, \[sp,#-256\] + 16c: 3cd553e7 ldr q7, \[sp,#-171\] + 170: 3cc003e7 ldur q7, \[sp\] + 174: 3cc003e7 ldur q7, \[sp\] + 178: 3cc023e7 ldr q7, \[sp,#2\] + 17c: 3cc043e7 ldr q7, \[sp,#4\] + 180: 3cc083e7 ldr q7, \[sp,#8\] + 184: 3cc103e7 ldur q7, \[sp,#16\] + 188: 3cc553e7 ldr q7, \[sp,#85\] + 18c: 3ccff3e7 ldr q7, \[sp,#255\] + 190: 381003e7 strb w7, \[sp,#-256\] + 194: 381553e7 strb w7, \[sp,#-171\] + 198: 380003e7 sturb w7, \[sp\] + 19c: 380003e7 sturb w7, \[sp\] + 1a0: 380023e7 sturb w7, \[sp,#2\] + 1a4: 380043e7 sturb w7, \[sp,#4\] + 1a8: 380083e7 sturb w7, \[sp,#8\] + 1ac: 380103e7 sturb w7, \[sp,#16\] + 1b0: 380553e7 sturb w7, \[sp,#85\] + 1b4: 380ff3e7 sturb w7, \[sp,#255\] + 1b8: 781003e7 strh w7, \[sp,#-256\] + 1bc: 781553e7 strh w7, \[sp,#-171\] + 1c0: 780003e7 sturh w7, \[sp\] + 1c4: 780003e7 sturh w7, \[sp\] + 1c8: 780023e7 sturh w7, \[sp,#2\] + 1cc: 780043e7 sturh w7, \[sp,#4\] + 1d0: 780083e7 sturh w7, \[sp,#8\] + 1d4: 780103e7 sturh w7, \[sp,#16\] + 1d8: 780553e7 strh w7, \[sp,#85\] + 1dc: 780ff3e7 strh w7, \[sp,#255\] + 1e0: b81003e7 str w7, \[sp,#-256\] + 1e4: b81553e7 str w7, \[sp,#-171\] + 1e8: b80003e7 stur w7, \[sp\] + 1ec: b80003e7 stur w7, \[sp\] + 1f0: b80023e7 str w7, \[sp,#2\] + 1f4: b80043e7 stur w7, \[sp,#4\] + 1f8: b80083e7 stur w7, \[sp,#8\] + 1fc: b80103e7 stur w7, \[sp,#16\] + 200: b80553e7 str w7, \[sp,#85\] + 204: b80ff3e7 str w7, \[sp,#255\] + 208: f81003e7 str x7, \[sp,#-256\] + 20c: f81553e7 str x7, \[sp,#-171\] + 210: f80003e7 stur x7, \[sp\] + 214: f80003e7 stur x7, \[sp\] + 218: f80023e7 str x7, \[sp,#2\] + 21c: f80043e7 str x7, \[sp,#4\] + 220: f80083e7 stur x7, \[sp,#8\] + 224: f80103e7 stur x7, \[sp,#16\] + 228: f80553e7 str x7, \[sp,#85\] + 22c: f80ff3e7 str x7, \[sp,#255\] + 230: 385003e7 ldrb w7, \[sp,#-256\] + 234: 385553e7 ldrb w7, \[sp,#-171\] + 238: 384003e7 ldurb w7, \[sp\] + 23c: 384003e7 ldurb w7, \[sp\] + 240: 384023e7 ldurb w7, \[sp,#2\] + 244: 384043e7 ldurb w7, \[sp,#4\] + 248: 384083e7 ldurb w7, \[sp,#8\] + 24c: 384103e7 ldurb w7, \[sp,#16\] + 250: 384553e7 ldurb w7, \[sp,#85\] + 254: 384ff3e7 ldurb w7, \[sp,#255\] + 258: 785003e7 ldrh w7, \[sp,#-256\] + 25c: 785553e7 ldrh w7, \[sp,#-171\] + 260: 784003e7 ldurh w7, \[sp\] + 264: 784003e7 ldurh w7, \[sp\] + 268: 784023e7 ldurh w7, \[sp,#2\] + 26c: 784043e7 ldurh w7, \[sp,#4\] + 270: 784083e7 ldurh w7, \[sp,#8\] + 274: 784103e7 ldurh w7, \[sp,#16\] + 278: 784553e7 ldrh w7, \[sp,#85\] + 27c: 784ff3e7 ldrh w7, \[sp,#255\] + 280: b85003e7 ldr w7, \[sp,#-256\] + 284: b85553e7 ldr w7, \[sp,#-171\] + 288: b84003e7 ldur w7, \[sp\] + 28c: b84003e7 ldur w7, \[sp\] + 290: b84023e7 ldr w7, \[sp,#2\] + 294: b84043e7 ldur w7, \[sp,#4\] + 298: b84083e7 ldur w7, \[sp,#8\] + 29c: b84103e7 ldur w7, \[sp,#16\] + 2a0: b84553e7 ldr w7, \[sp,#85\] + 2a4: b84ff3e7 ldr w7, \[sp,#255\] + 2a8: f85003e7 ldr x7, \[sp,#-256\] + 2ac: f85553e7 ldr x7, \[sp,#-171\] + 2b0: f84003e7 ldur x7, \[sp\] + 2b4: f84003e7 ldur x7, \[sp\] + 2b8: f84023e7 ldr x7, \[sp,#2\] + 2bc: f84043e7 ldr x7, \[sp,#4\] + 2c0: f84083e7 ldur x7, \[sp,#8\] + 2c4: f84103e7 ldur x7, \[sp,#16\] + 2c8: f84553e7 ldr x7, \[sp,#85\] + 2cc: f84ff3e7 ldr x7, \[sp,#255\] + 2d0: 389003e7 ldrsb x7, \[sp,#-256\] + 2d4: 389553e7 ldrsb x7, \[sp,#-171\] + 2d8: 388003e7 ldursb x7, \[sp\] + 2dc: 388003e7 ldursb x7, \[sp\] + 2e0: 388023e7 ldursb x7, \[sp,#2\] + 2e4: 388043e7 ldursb x7, \[sp,#4\] + 2e8: 388083e7 ldursb x7, \[sp,#8\] + 2ec: 388103e7 ldursb x7, \[sp,#16\] + 2f0: 388553e7 ldursb x7, \[sp,#85\] + 2f4: 388ff3e7 ldursb x7, \[sp,#255\] + 2f8: 789003e7 ldrsh x7, \[sp,#-256\] + 2fc: 789553e7 ldrsh x7, \[sp,#-171\] + 300: 788003e7 ldursh x7, \[sp\] + 304: 788003e7 ldursh x7, \[sp\] + 308: 788023e7 ldursh x7, \[sp,#2\] + 30c: 788043e7 ldursh x7, \[sp,#4\] + 310: 788083e7 ldursh x7, \[sp,#8\] + 314: 788103e7 ldursh x7, \[sp,#16\] + 318: 788553e7 ldrsh x7, \[sp,#85\] + 31c: 788ff3e7 ldrsh x7, \[sp,#255\] + 320: b89003e7 ldrsw x7, \[sp,#-256\] + 324: b89553e7 ldrsw x7, \[sp,#-171\] + 328: b88003e7 ldursw x7, \[sp\] + 32c: b88003e7 ldursw x7, \[sp\] + 330: b88023e7 ldrsw x7, \[sp,#2\] + 334: b88043e7 ldursw x7, \[sp,#4\] + 338: b88083e7 ldursw x7, \[sp,#8\] + 33c: b88103e7 ldursw x7, \[sp,#16\] + 340: b88553e7 ldrsw x7, \[sp,#85\] + 344: b88ff3e7 ldrsw x7, \[sp,#255\] + 348: 38d003e7 ldrsb w7, \[sp,#-256\] + 34c: 38d553e7 ldrsb w7, \[sp,#-171\] + 350: 38c003e7 ldursb w7, \[sp\] + 354: 38c003e7 ldursb w7, \[sp\] + 358: 38c023e7 ldursb w7, \[sp,#2\] + 35c: 38c043e7 ldursb w7, \[sp,#4\] + 360: 38c083e7 ldursb w7, \[sp,#8\] + 364: 38c103e7 ldursb w7, \[sp,#16\] + 368: 38c553e7 ldursb w7, \[sp,#85\] + 36c: 38cff3e7 ldursb w7, \[sp,#255\] + 370: 78d003e7 ldrsh w7, \[sp,#-256\] + 374: 78d553e7 ldrsh w7, \[sp,#-171\] + 378: 78c003e7 ldursh w7, \[sp\] + 37c: 78c003e7 ldursh w7, \[sp\] + 380: 78c023e7 ldursh w7, \[sp,#2\] + 384: 78c043e7 ldursh w7, \[sp,#4\] + 388: 78c083e7 ldursh w7, \[sp,#8\] + 38c: 78c103e7 ldursh w7, \[sp,#16\] + 390: 78c553e7 ldrsh w7, \[sp,#85\] + 394: 78cff3e7 ldrsh w7, \[sp,#255\] diff --git a/gas/testsuite/gas/aarch64/ldst-reg-unscaled-imm.s b/gas/testsuite/gas/aarch64/ldst-reg-unscaled-imm.s new file mode 100644 index 0000000..72b0c97 --- /dev/null +++ b/gas/testsuite/gas/aarch64/ldst-reg-unscaled-imm.s @@ -0,0 +1,82 @@ +/* ldst-reg-unscaled-imm.s Test file for AArch64 + load-store reg. (unscaled imm.) instructions. + + Copyright 2011, 2012 Free Software Foundation, Inc. + Contributed by ARM Ltd. + + This file is part of GAS. + + GAS 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. + + GAS 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; see the file COPYING3. If not, + see <http://www.gnu.org/licenses/>. */ + + +/* Prefetch memory instruction is not tested here. + + Also note that a programmer-friendly disassembler could display + LDUR/STUR instructions using the standard LDR/STR mnemonics when + the encoded immediate is negative or unaligned. However this behaviour + is not required by the architectural assembly language. */ + + .macro op2_no_imm op, reg + \op \reg\()7, [sp] + .endm + + .macro op2 op, reg, simm + \op \reg\()7, [sp, #\simm] + .endm + + // load to or store from core register + .macro ld_or_st op, suffix, reg + .irp simm, -256, -171 + op2 \op\suffix, \reg, \simm + .endr + op2_no_imm \op\suffix, \reg + .irp simm, 0, 2, 4, 8, 16, 85, 255 + op2 \op\suffix, \reg, \simm + .endr + .endm + + // load to or store from FP/SIMD register + .macro ld_or_st_v op + .irp reg, b, h, s, d, q + .irp simm, -256, -171 + op2 \op, \reg, \simm + .endr + op2_no_imm \op, \reg + .irp simm, 0, 2, 4, 8, 16, 85, 255 + op2 \op, \reg, \simm + .endr + .endr + .endm + +func: + // load to or store from FP/SIMD register + ld_or_st_v stur + ld_or_st_v ldur + + // load to or store from core register + // op, suffix, reg + ld_or_st stur, b, w + ld_or_st stur, h, w + ld_or_st stur, , w + ld_or_st stur, , x + ld_or_st ldur, b, w + ld_or_st ldur, h, w + ld_or_st ldur, , w + ld_or_st ldur, , x + ld_or_st ldur, sb, x + ld_or_st ldur, sh, x + ld_or_st ldur, sw, x + ld_or_st ldur, sb, w + ld_or_st ldur, sh, w diff --git a/gas/testsuite/gas/aarch64/legacy_reg_names.d b/gas/testsuite/gas/aarch64/legacy_reg_names.d new file mode 100644 index 0000000..79caca7 --- /dev/null +++ b/gas/testsuite/gas/aarch64/legacy_reg_names.d @@ -0,0 +1,2 @@ +#name: Legacy register names errors +#error-output: legacy_reg_names.l diff --git a/gas/testsuite/gas/aarch64/legacy_reg_names.l b/gas/testsuite/gas/aarch64/legacy_reg_names.l new file mode 100644 index 0000000..239b458 --- /dev/null +++ b/gas/testsuite/gas/aarch64/legacy_reg_names.l @@ -0,0 +1,4 @@ +[^:]*: Assembler messages: +[^:]*:5: Error: indexed vector register expected at operand 1 -- `dup v0.b,v1.b\[7\]' +[^:]*:6: Error: operand 1 should be an integer register -- `mov r0.w,r1.w' +[^:]*:7: Error: operand 2 should be a SIMD vector element -- `dup s0,s1\[3\]' diff --git a/gas/testsuite/gas/aarch64/legacy_reg_names.s b/gas/testsuite/gas/aarch64/legacy_reg_names.s new file mode 100644 index 0000000..9426e61 --- /dev/null +++ b/gas/testsuite/gas/aarch64/legacy_reg_names.s @@ -0,0 +1,7 @@ + + .text + .arch armv8 + + dup v0.b, v1.b[7] + mov r0.w, r1.w + dup s0, s1[3] diff --git a/gas/testsuite/gas/aarch64/mapmisc.d b/gas/testsuite/gas/aarch64/mapmisc.d new file mode 100644 index 0000000..0822c5a --- /dev/null +++ b/gas/testsuite/gas/aarch64/mapmisc.d @@ -0,0 +1,96 @@ +#as: -EL -I$srcdir/$subdir +#objdump: --syms --special-syms -d +#name: AArch64 Mapping Symbols for miscellaneous directives +#source: mapmisc.s +# This test is only valid on ELF based ports. +#not-target: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd *-*-riscix* + + +.*: +file format .*aarch64.* + +SYMBOL TABLE: +0+00 l d .text 0000000000000000 .text +0+00 l d .data 0000000000000000 .data +0+00 l d .bss 0000000000000000 .bss +0+00 l F .text 0000000000000000 foo +0+00 l .text 0000000000000000 \$x +0+04 l .text 0000000000000000 \$d +0+08 l .text 0000000000000000 \$x +0+0c l .text 0000000000000000 \$d +0+10 l .text 0000000000000000 \$x +0+14 l .text 0000000000000000 \$d +0+18 l .text 0000000000000000 \$x +0+1c l .text 0000000000000000 \$d +0+20 l .text 0000000000000000 \$x +0+24 l .text 0000000000000000 \$d +0+28 l .text 0000000000000000 \$x +0+2c l .text 0000000000000000 \$d +0+34 l .text 0000000000000000 \$x +0+38 l .text 0000000000000000 \$d +0+48 l .text 0000000000000000 \$x +0+4c l .text 0000000000000000 \$d +0+50 l .text 0000000000000000 \$x +0+54 l .text 0000000000000000 \$d +0+58 l .text 0000000000000000 \$x +0+5c l .text 0000000000000000 \$d +0+64 l .text 0000000000000000 \$x +0+68 l .text 0000000000000000 \$d +0+70 l .text 0000000000000000 \$x +0+74 l .text 0000000000000000 \$d +0+84 l .text 0000000000000000 \$x +0+88 l .text 0000000000000000 \$d +0+8c l .text 0000000000000000 \$x +0+90 l .text 0000000000000000 \$d +0+94 l .text 0000000000000000 \$x +0+98 l .text 0000000000000000 \$d +0+9c l .text 0000000000000000 \$x +0+a0 l .text 0000000000000000 \$d +0+a4 l .text 0000000000000000 \$x +0+a8 l .text 0000000000000000 \$x + + + +Disassembly of section .text: + +0000000000000000 <foo>: + 0: d503201f nop + 4: 64636261 .word 0x64636261 + 8: d503201f nop + c: 00636261 .word 0x00636261 + 10: d503201f nop + 14: 00676665 .word 0x00676665 + 18: d503201f nop + 1c: 006a6968 .word 0x006a6968 + 20: d503201f nop + 24: 0000006b .word 0x0000006b + 28: d503201f nop + 2c: 0000006c .word 0x0000006c + 30: 00000000 .word 0x00000000 + 34: d503201f nop + 38: 0000006d .word 0x0000006d + ... + 48: d503201f nop + 4c: 3fc00000 .word 0x3fc00000 + 50: d503201f nop + 54: 40200000 .word 0x40200000 + 58: d503201f nop + 5c: 00000000 .word 0x00000000 + 60: 400c0000 .word 0x400c0000 + 64: d503201f nop + 68: 00000000 .word 0x00000000 + 6c: 40120000 .word 0x40120000 + 70: d503201f nop + 74: 00000004 .word 0x00000004 + 78: 00000004 .word 0x00000004 + 7c: 00000004 .word 0x00000004 + 80: 00000004 .word 0x00000004 + 84: d503201f nop + 88: 00000000 .word 0x00000000 + 8c: d503201f nop + 90: 00000000 .word 0x00000000 + 94: d503201f nop + 98: 00000000 .word 0x00000000 + 9c: d503201f nop + a0: 7778797a .word 0x7778797a + a4: d503201f nop + a8: d503201f nop diff --git a/gas/testsuite/gas/aarch64/mapmisc.dat b/gas/testsuite/gas/aarch64/mapmisc.dat new file mode 100644 index 0000000..450730b --- /dev/null +++ b/gas/testsuite/gas/aarch64/mapmisc.dat @@ -0,0 +1 @@ +zyxw
\ No newline at end of file diff --git a/gas/testsuite/gas/aarch64/mapmisc.s b/gas/testsuite/gas/aarch64/mapmisc.s new file mode 100644 index 0000000..1625515 --- /dev/null +++ b/gas/testsuite/gas/aarch64/mapmisc.s @@ -0,0 +1,40 @@ + .text + .type foo, %function +foo: + .align 2 + .fill 0, 0, 0 + nop + .ascii "abcd" + nop + .asciz "abc" + nop + .string "efg" + nop + .string8 "hij" + nop + .string16 "k" + nop + .string32 "l" + nop + .string64 "m" + nop + .float 0e1.5 + nop + .single 0e2.5 + nop + .double 0e3.5 + nop + .dcb.d 1, 4.5 + nop + .fill 4, 4, 4 + nop + .space 4 + nop + .skip 4 + nop + .zero 4 + nop + .incbin "mapmisc.dat" + nop + .fill 0, 0, 0 + nop diff --git a/gas/testsuite/gas/aarch64/mapping.d b/gas/testsuite/gas/aarch64/mapping.d new file mode 100644 index 0000000..d2b3d5b --- /dev/null +++ b/gas/testsuite/gas/aarch64/mapping.d @@ -0,0 +1,20 @@ +#objdump: --syms --special-syms +#name: AArch64 Mapping Symbols +# This test is only valid on ELF based ports. +#not-target: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd *-*-riscix* + +# Test the generation of AArch64 ELF Mapping Symbols + +.*: +file format.*aarch64.* + +SYMBOL TABLE: +0+00 l d .text 0+0 (|.text) +0+00 l d .data 0+0 (|.data) +0+00 l d .bss 0+0 (|.bss) +0+00 l .text 0+0 \$x +0+00 l d foo 0+0 (|foo) +0+00 l foo 0+0 \$x +#Maybe section symbol for .ARM.attributes +#... +0+00 g .text 0+0 mapping +0+08 g .text 0+0 another_mapping diff --git a/gas/testsuite/gas/aarch64/mapping.s b/gas/testsuite/gas/aarch64/mapping.s new file mode 100644 index 0000000..2bd8bff --- /dev/null +++ b/gas/testsuite/gas/aarch64/mapping.s @@ -0,0 +1,16 @@ + .text + .global mapping +mapping: + nop + bl mapping + + .global another_mapping +another_mapping: + nop + bl another_mapping + + .data + .word 0x123456 + + .section foo,"ax" + nop diff --git a/gas/testsuite/gas/aarch64/mapping2.d b/gas/testsuite/gas/aarch64/mapping2.d new file mode 100644 index 0000000..1d10e75 --- /dev/null +++ b/gas/testsuite/gas/aarch64/mapping2.d @@ -0,0 +1,17 @@ +#objdump: --syms --special-syms +#name: AArch64 Mapping Symbols Test 2 +# This test is only valid on ELF based ports. +#not-target: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd *-*-riscix* + +.*: +file format.*aarch64.* + +SYMBOL TABLE: +[0]+00 l d .text 0[0]+00 .text +[0]+00 l d .data 0[0]+00 .data +[0]+00 l d .bss 0[0]+00 .bss +[0]+00 l .text 0[0]+00 \$x +[0]+04 l .text 0[0]+00 foo +[0]+00 l d .comment 0[0]+00 .comment +[0]+00 g F .text 0[0]+0c main + + diff --git a/gas/testsuite/gas/aarch64/mapping2.s b/gas/testsuite/gas/aarch64/mapping2.s new file mode 100644 index 0000000..5738d0b --- /dev/null +++ b/gas/testsuite/gas/aarch64/mapping2.s @@ -0,0 +1,13 @@ + .text + .align 2 + .global main + .type main, %function +main: + nop +foo: + nop + nop + .size main, .-main + .ident "" + + nop diff --git a/gas/testsuite/gas/aarch64/mapping3.d b/gas/testsuite/gas/aarch64/mapping3.d new file mode 100644 index 0000000..06a3260 --- /dev/null +++ b/gas/testsuite/gas/aarch64/mapping3.d @@ -0,0 +1,15 @@ +#objdump: --syms --special-syms +#name: AArch64 Mapping Symbols Test 3 +# This test is only valid on ELF based ports. +#not-target: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd *-*-riscix* + +.*: +file format.*aarch64.* + +SYMBOL TABLE: +0[0]+00 l d .text 0[0]+00 .text +0[0]+00 l d .data 0[0]+00 .data +0[0]+00 l d .bss 0[0]+00 .bss +0[0]+00 l .text 0[0]+00 \$d +0[0]+04 l .text 0[0]+00 \$x + + diff --git a/gas/testsuite/gas/aarch64/mapping3.s b/gas/testsuite/gas/aarch64/mapping3.s new file mode 100644 index 0000000..d7dcfd0 --- /dev/null +++ b/gas/testsuite/gas/aarch64/mapping3.s @@ -0,0 +1,3 @@ +.text +.word 0 + nop diff --git a/gas/testsuite/gas/aarch64/mapping4.d b/gas/testsuite/gas/aarch64/mapping4.d new file mode 100644 index 0000000..2f1474a --- /dev/null +++ b/gas/testsuite/gas/aarch64/mapping4.d @@ -0,0 +1,14 @@ +#objdump: --syms --special-syms +#name: AArch64 Mapping Symbols Test 4 +# This test is only valid on ELF based ports. +#not-target: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd *-*-riscix* + +.*: +file format.*aarch64.* + +SYMBOL TABLE: +0[0]+00 l d .text 0[0]+00 .text +0[0]+00 l d .data 0[0]+00 .data +0[0]+00 l d .bss 0[0]+00 .bss +0[0]+00 l .text 0[0]+00 \$x + + diff --git a/gas/testsuite/gas/aarch64/mapping4.s b/gas/testsuite/gas/aarch64/mapping4.s new file mode 100644 index 0000000..8a24a4a --- /dev/null +++ b/gas/testsuite/gas/aarch64/mapping4.s @@ -0,0 +1,7 @@ + .text + nop + .data + .word 0 + .text + nop + diff --git a/gas/testsuite/gas/aarch64/mov-no-aliases.d b/gas/testsuite/gas/aarch64/mov-no-aliases.d new file mode 100644 index 0000000..214d39b --- /dev/null +++ b/gas/testsuite/gas/aarch64/mov-no-aliases.d @@ -0,0 +1,27 @@ +#source: mov.s +#objdump: -dr -Mno-aliases + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: 110003ef add w15, wsp, #0x0 + 4: 910003ef add x15, sp, #0x0 + 8: 110000ff add wsp, w7, #0x0 + c: 910000ff add sp, x7, #0x0 + 10: 110003ff add wsp, wsp, #0x0 + 14: 910003ff add sp, sp, #0x0 + 18: aa0f03e7 orr x7, xzr, x15 + 1c: 2a0f03e7 orr w7, wzr, w15 + 20: 52800b01 movz w1, #0x58 + 24: 12800000 movn w0, #0x0 + 28: b2607fe0 orr x0, xzr, #0xffffffff00000000 + 2c: b2400fff orr sp, xzr, #0xf + 30: 32000fff orr wsp, wzr, #0xf + 34: d28001ff movz xzr, #0xf + 38: 528001ff movz wzr, #0xf + 3c: 0e1c3de7 umov w7, v15\.s\[3\] + 40: 4e183fef umov x15, v31\.d\[1\] + 44: d2801fe0 movz x0, #0xff + 48: 320de400 orr w0, w0, #0x99999999 diff --git a/gas/testsuite/gas/aarch64/mov.d b/gas/testsuite/gas/aarch64/mov.d new file mode 100644 index 0000000..b344b8e --- /dev/null +++ b/gas/testsuite/gas/aarch64/mov.d @@ -0,0 +1,26 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: 110003ef mov w15, wsp + 4: 910003ef mov x15, sp + 8: 110000ff mov wsp, w7 + c: 910000ff mov sp, x7 + 10: 110003ff mov wsp, wsp + 14: 910003ff mov sp, sp + 18: aa0f03e7 mov x7, x15 + 1c: 2a0f03e7 mov w7, w15 + 20: 52800b01 movz w1, #0x58 + 24: 12800000 movn w0, #0x0 + 28: b2607fe0 orr x0, xzr, #0xffffffff00000000 + 2c: b2400fff orr sp, xzr, #0xf + 30: 32000fff orr wsp, wzr, #0xf + 34: d28001ff movz xzr, #0xf + 38: 528001ff movz wzr, #0xf + 3c: 0e1c3de7 mov w7, v15\.s\[3\] + 40: 4e183fef mov x15, v31\.d\[1\] + 44: d2801fe0 movz x0, #0xff + 48: 320de400 orr w0, w0, #0x99999999 diff --git a/gas/testsuite/gas/aarch64/mov.s b/gas/testsuite/gas/aarch64/mov.s new file mode 100644 index 0000000..3dcdd4f --- /dev/null +++ b/gas/testsuite/gas/aarch64/mov.s @@ -0,0 +1,40 @@ +// mov.s Test file for AArch64 mov aliases. +// This test file is also used for the mov-no-aliases test. + + .text + + // MOV/xr Xd|SP, Xn|SP + // Move (extended register) is an alias for ADD/xi Xd,Xn,#0, but + // only when one or other of the registers is SP. In other cases + // the ORR/xr Xd,#0,Xn instruction will be used. + + mov w15, wsp + mov x15, sp + mov wsp, w7 + mov sp, x7 + mov wsp, wsp + mov sp, sp + + mov x7, x15 + mov w7, w15 + + mov w1, 88 + mov w0, -1 + + mov x0, -4294967296 + + mov sp, #15 + mov wsp, #15 + mov xzr, #15 + mov wzr, #15 + + mov w7, v15.s[3] + mov x15, v31.d[1] + + mov x0, $$5 +.set $$5, 0xff + + // ORR w0,w0,#0x99999999 with a non-standard encoding, i.e. the top + // 4 bits in the 'immr' field is non-zero. The top bits are ignored + // during the decoding. + .inst 0x320de400 diff --git a/gas/testsuite/gas/aarch64/movi.d b/gas/testsuite/gas/aarch64/movi.d new file mode 100644 index 0000000..2c73cc4 --- /dev/null +++ b/gas/testsuite/gas/aarch64/movi.d @@ -0,0 +1,8203 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: 2f00e41f movi d31, #0x0 + 4: 2f00e43f movi d31, #0xff + 8: 2f00e45f movi d31, #0xff00 + c: 2f00e47f movi d31, #0xffff + 10: 2f00e49f movi d31, #0xff0000 + 14: 2f00e4bf movi d31, #0xff00ff + 18: 2f00e4df movi d31, #0xffff00 + 1c: 2f00e4ff movi d31, #0xffffff + 20: 2f00e51f movi d31, #0xff000000 + 24: 2f00e53f movi d31, #0xff0000ff + 28: 2f00e55f movi d31, #0xff00ff00 + 2c: 2f00e57f movi d31, #0xff00ffff + 30: 2f00e59f movi d31, #0xffff0000 + 34: 2f00e5bf movi d31, #0xffff00ff + 38: 2f00e5df movi d31, #0xffffff00 + 3c: 2f00e5ff movi d31, #0xffffffff + 40: 2f00e61f movi d31, #0xff00000000 + 44: 2f00e63f movi d31, #0xff000000ff + 48: 2f00e65f movi d31, #0xff0000ff00 + 4c: 2f00e67f movi d31, #0xff0000ffff + 50: 2f00e69f movi d31, #0xff00ff0000 + 54: 2f00e6bf movi d31, #0xff00ff00ff + 58: 2f00e6df movi d31, #0xff00ffff00 + 5c: 2f00e6ff movi d31, #0xff00ffffff + 60: 2f00e71f movi d31, #0xffff000000 + 64: 2f00e73f movi d31, #0xffff0000ff + 68: 2f00e75f movi d31, #0xffff00ff00 + 6c: 2f00e77f movi d31, #0xffff00ffff + 70: 2f00e79f movi d31, #0xffffff0000 + 74: 2f00e7bf movi d31, #0xffffff00ff + 78: 2f00e7df movi d31, #0xffffffff00 + 7c: 2f00e7ff movi d31, #0xffffffffff + 80: 2f01e41f movi d31, #0xff0000000000 + 84: 2f01e43f movi d31, #0xff00000000ff + 88: 2f01e45f movi d31, #0xff000000ff00 + 8c: 2f01e47f movi d31, #0xff000000ffff + 90: 2f01e49f movi d31, #0xff0000ff0000 + 94: 2f01e4bf movi d31, #0xff0000ff00ff + 98: 2f01e4df movi d31, #0xff0000ffff00 + 9c: 2f01e4ff movi d31, #0xff0000ffffff + a0: 2f01e51f movi d31, #0xff00ff000000 + a4: 2f01e53f movi d31, #0xff00ff0000ff + a8: 2f01e55f movi d31, #0xff00ff00ff00 + ac: 2f01e57f movi d31, #0xff00ff00ffff + b0: 2f01e59f movi d31, #0xff00ffff0000 + b4: 2f01e5bf movi d31, #0xff00ffff00ff + b8: 2f01e5df movi d31, #0xff00ffffff00 + bc: 2f01e5ff movi d31, #0xff00ffffffff + c0: 2f01e61f movi d31, #0xffff00000000 + c4: 2f01e63f movi d31, #0xffff000000ff + c8: 2f01e65f movi d31, #0xffff0000ff00 + cc: 2f01e67f movi d31, #0xffff0000ffff + d0: 2f01e69f movi d31, #0xffff00ff0000 + d4: 2f01e6bf movi d31, #0xffff00ff00ff + d8: 2f01e6df movi d31, #0xffff00ffff00 + dc: 2f01e6ff movi d31, #0xffff00ffffff + e0: 2f01e71f movi d31, #0xffffff000000 + e4: 2f01e73f movi d31, #0xffffff0000ff + e8: 2f01e75f movi d31, #0xffffff00ff00 + ec: 2f01e77f movi d31, #0xffffff00ffff + f0: 2f01e79f movi d31, #0xffffffff0000 + f4: 2f01e7bf movi d31, #0xffffffff00ff + f8: 2f01e7df movi d31, #0xffffffffff00 + fc: 2f01e7ff movi d31, #0xffffffffffff + 100: 2f02e41f movi d31, #0xff000000000000 + 104: 2f02e43f movi d31, #0xff0000000000ff + 108: 2f02e45f movi d31, #0xff00000000ff00 + 10c: 2f02e47f movi d31, #0xff00000000ffff + 110: 2f02e49f movi d31, #0xff000000ff0000 + 114: 2f02e4bf movi d31, #0xff000000ff00ff + 118: 2f02e4df movi d31, #0xff000000ffff00 + 11c: 2f02e4ff movi d31, #0xff000000ffffff + 120: 2f02e51f movi d31, #0xff0000ff000000 + 124: 2f02e53f movi d31, #0xff0000ff0000ff + 128: 2f02e55f movi d31, #0xff0000ff00ff00 + 12c: 2f02e57f movi d31, #0xff0000ff00ffff + 130: 2f02e59f movi d31, #0xff0000ffff0000 + 134: 2f02e5bf movi d31, #0xff0000ffff00ff + 138: 2f02e5df movi d31, #0xff0000ffffff00 + 13c: 2f02e5ff movi d31, #0xff0000ffffffff + 140: 2f02e61f movi d31, #0xff00ff00000000 + 144: 2f02e63f movi d31, #0xff00ff000000ff + 148: 2f02e65f movi d31, #0xff00ff0000ff00 + 14c: 2f02e67f movi d31, #0xff00ff0000ffff + 150: 2f02e69f movi d31, #0xff00ff00ff0000 + 154: 2f02e6bf movi d31, #0xff00ff00ff00ff + 158: 2f02e6df movi d31, #0xff00ff00ffff00 + 15c: 2f02e6ff movi d31, #0xff00ff00ffffff + 160: 2f02e71f movi d31, #0xff00ffff000000 + 164: 2f02e73f movi d31, #0xff00ffff0000ff + 168: 2f02e75f movi d31, #0xff00ffff00ff00 + 16c: 2f02e77f movi d31, #0xff00ffff00ffff + 170: 2f02e79f movi d31, #0xff00ffffff0000 + 174: 2f02e7bf movi d31, #0xff00ffffff00ff + 178: 2f02e7df movi d31, #0xff00ffffffff00 + 17c: 2f02e7ff movi d31, #0xff00ffffffffff + 180: 2f03e41f movi d31, #0xffff0000000000 + 184: 2f03e43f movi d31, #0xffff00000000ff + 188: 2f03e45f movi d31, #0xffff000000ff00 + 18c: 2f03e47f movi d31, #0xffff000000ffff + 190: 2f03e49f movi d31, #0xffff0000ff0000 + 194: 2f03e4bf movi d31, #0xffff0000ff00ff + 198: 2f03e4df movi d31, #0xffff0000ffff00 + 19c: 2f03e4ff movi d31, #0xffff0000ffffff + 1a0: 2f03e51f movi d31, #0xffff00ff000000 + 1a4: 2f03e53f movi d31, #0xffff00ff0000ff + 1a8: 2f03e55f movi d31, #0xffff00ff00ff00 + 1ac: 2f03e57f movi d31, #0xffff00ff00ffff + 1b0: 2f03e59f movi d31, #0xffff00ffff0000 + 1b4: 2f03e5bf movi d31, #0xffff00ffff00ff + 1b8: 2f03e5df movi d31, #0xffff00ffffff00 + 1bc: 2f03e5ff movi d31, #0xffff00ffffffff + 1c0: 2f03e61f movi d31, #0xffffff00000000 + 1c4: 2f03e63f movi d31, #0xffffff000000ff + 1c8: 2f03e65f movi d31, #0xffffff0000ff00 + 1cc: 2f03e67f movi d31, #0xffffff0000ffff + 1d0: 2f03e69f movi d31, #0xffffff00ff0000 + 1d4: 2f03e6bf movi d31, #0xffffff00ff00ff + 1d8: 2f03e6df movi d31, #0xffffff00ffff00 + 1dc: 2f03e6ff movi d31, #0xffffff00ffffff + 1e0: 2f03e71f movi d31, #0xffffffff000000 + 1e4: 2f03e73f movi d31, #0xffffffff0000ff + 1e8: 2f03e75f movi d31, #0xffffffff00ff00 + 1ec: 2f03e77f movi d31, #0xffffffff00ffff + 1f0: 2f03e79f movi d31, #0xffffffffff0000 + 1f4: 2f03e7bf movi d31, #0xffffffffff00ff + 1f8: 2f03e7df movi d31, #0xffffffffffff00 + 1fc: 2f03e7ff movi d31, #0xffffffffffffff + 200: 2f04e41f movi d31, #0xff00000000000000 + 204: 2f04e43f movi d31, #0xff000000000000ff + 208: 2f04e45f movi d31, #0xff0000000000ff00 + 20c: 2f04e47f movi d31, #0xff0000000000ffff + 210: 2f04e49f movi d31, #0xff00000000ff0000 + 214: 2f04e4bf movi d31, #0xff00000000ff00ff + 218: 2f04e4df movi d31, #0xff00000000ffff00 + 21c: 2f04e4ff movi d31, #0xff00000000ffffff + 220: 2f04e51f movi d31, #0xff000000ff000000 + 224: 2f04e53f movi d31, #0xff000000ff0000ff + 228: 2f04e55f movi d31, #0xff000000ff00ff00 + 22c: 2f04e57f movi d31, #0xff000000ff00ffff + 230: 2f04e59f movi d31, #0xff000000ffff0000 + 234: 2f04e5bf movi d31, #0xff000000ffff00ff + 238: 2f04e5df movi d31, #0xff000000ffffff00 + 23c: 2f04e5ff movi d31, #0xff000000ffffffff + 240: 2f04e61f movi d31, #0xff0000ff00000000 + 244: 2f04e63f movi d31, #0xff0000ff000000ff + 248: 2f04e65f movi d31, #0xff0000ff0000ff00 + 24c: 2f04e67f movi d31, #0xff0000ff0000ffff + 250: 2f04e69f movi d31, #0xff0000ff00ff0000 + 254: 2f04e6bf movi d31, #0xff0000ff00ff00ff + 258: 2f04e6df movi d31, #0xff0000ff00ffff00 + 25c: 2f04e6ff movi d31, #0xff0000ff00ffffff + 260: 2f04e71f movi d31, #0xff0000ffff000000 + 264: 2f04e73f movi d31, #0xff0000ffff0000ff + 268: 2f04e75f movi d31, #0xff0000ffff00ff00 + 26c: 2f04e77f movi d31, #0xff0000ffff00ffff + 270: 2f04e79f movi d31, #0xff0000ffffff0000 + 274: 2f04e7bf movi d31, #0xff0000ffffff00ff + 278: 2f04e7df movi d31, #0xff0000ffffffff00 + 27c: 2f04e7ff movi d31, #0xff0000ffffffffff + 280: 2f05e41f movi d31, #0xff00ff0000000000 + 284: 2f05e43f movi d31, #0xff00ff00000000ff + 288: 2f05e45f movi d31, #0xff00ff000000ff00 + 28c: 2f05e47f movi d31, #0xff00ff000000ffff + 290: 2f05e49f movi d31, #0xff00ff0000ff0000 + 294: 2f05e4bf movi d31, #0xff00ff0000ff00ff + 298: 2f05e4df movi d31, #0xff00ff0000ffff00 + 29c: 2f05e4ff movi d31, #0xff00ff0000ffffff + 2a0: 2f05e51f movi d31, #0xff00ff00ff000000 + 2a4: 2f05e53f movi d31, #0xff00ff00ff0000ff + 2a8: 2f05e55f movi d31, #0xff00ff00ff00ff00 + 2ac: 2f05e57f movi d31, #0xff00ff00ff00ffff + 2b0: 2f05e59f movi d31, #0xff00ff00ffff0000 + 2b4: 2f05e5bf movi d31, #0xff00ff00ffff00ff + 2b8: 2f05e5df movi d31, #0xff00ff00ffffff00 + 2bc: 2f05e5ff movi d31, #0xff00ff00ffffffff + 2c0: 2f05e61f movi d31, #0xff00ffff00000000 + 2c4: 2f05e63f movi d31, #0xff00ffff000000ff + 2c8: 2f05e65f movi d31, #0xff00ffff0000ff00 + 2cc: 2f05e67f movi d31, #0xff00ffff0000ffff + 2d0: 2f05e69f movi d31, #0xff00ffff00ff0000 + 2d4: 2f05e6bf movi d31, #0xff00ffff00ff00ff + 2d8: 2f05e6df movi d31, #0xff00ffff00ffff00 + 2dc: 2f05e6ff movi d31, #0xff00ffff00ffffff + 2e0: 2f05e71f movi d31, #0xff00ffffff000000 + 2e4: 2f05e73f movi d31, #0xff00ffffff0000ff + 2e8: 2f05e75f movi d31, #0xff00ffffff00ff00 + 2ec: 2f05e77f movi d31, #0xff00ffffff00ffff + 2f0: 2f05e79f movi d31, #0xff00ffffffff0000 + 2f4: 2f05e7bf movi d31, #0xff00ffffffff00ff + 2f8: 2f05e7df movi d31, #0xff00ffffffffff00 + 2fc: 2f05e7ff movi d31, #0xff00ffffffffffff + 300: 2f06e41f movi d31, #0xffff000000000000 + 304: 2f06e43f movi d31, #0xffff0000000000ff + 308: 2f06e45f movi d31, #0xffff00000000ff00 + 30c: 2f06e47f movi d31, #0xffff00000000ffff + 310: 2f06e49f movi d31, #0xffff000000ff0000 + 314: 2f06e4bf movi d31, #0xffff000000ff00ff + 318: 2f06e4df movi d31, #0xffff000000ffff00 + 31c: 2f06e4ff movi d31, #0xffff000000ffffff + 320: 2f06e51f movi d31, #0xffff0000ff000000 + 324: 2f06e53f movi d31, #0xffff0000ff0000ff + 328: 2f06e55f movi d31, #0xffff0000ff00ff00 + 32c: 2f06e57f movi d31, #0xffff0000ff00ffff + 330: 2f06e59f movi d31, #0xffff0000ffff0000 + 334: 2f06e5bf movi d31, #0xffff0000ffff00ff + 338: 2f06e5df movi d31, #0xffff0000ffffff00 + 33c: 2f06e5ff movi d31, #0xffff0000ffffffff + 340: 2f06e61f movi d31, #0xffff00ff00000000 + 344: 2f06e63f movi d31, #0xffff00ff000000ff + 348: 2f06e65f movi d31, #0xffff00ff0000ff00 + 34c: 2f06e67f movi d31, #0xffff00ff0000ffff + 350: 2f06e69f movi d31, #0xffff00ff00ff0000 + 354: 2f06e6bf movi d31, #0xffff00ff00ff00ff + 358: 2f06e6df movi d31, #0xffff00ff00ffff00 + 35c: 2f06e6ff movi d31, #0xffff00ff00ffffff + 360: 2f06e71f movi d31, #0xffff00ffff000000 + 364: 2f06e73f movi d31, #0xffff00ffff0000ff + 368: 2f06e75f movi d31, #0xffff00ffff00ff00 + 36c: 2f06e77f movi d31, #0xffff00ffff00ffff + 370: 2f06e79f movi d31, #0xffff00ffffff0000 + 374: 2f06e7bf movi d31, #0xffff00ffffff00ff + 378: 2f06e7df movi d31, #0xffff00ffffffff00 + 37c: 2f06e7ff movi d31, #0xffff00ffffffffff + 380: 2f07e41f movi d31, #0xffffff0000000000 + 384: 2f07e43f movi d31, #0xffffff00000000ff + 388: 2f07e45f movi d31, #0xffffff000000ff00 + 38c: 2f07e47f movi d31, #0xffffff000000ffff + 390: 2f07e49f movi d31, #0xffffff0000ff0000 + 394: 2f07e4bf movi d31, #0xffffff0000ff00ff + 398: 2f07e4df movi d31, #0xffffff0000ffff00 + 39c: 2f07e4ff movi d31, #0xffffff0000ffffff + 3a0: 2f07e51f movi d31, #0xffffff00ff000000 + 3a4: 2f07e53f movi d31, #0xffffff00ff0000ff + 3a8: 2f07e55f movi d31, #0xffffff00ff00ff00 + 3ac: 2f07e57f movi d31, #0xffffff00ff00ffff + 3b0: 2f07e59f movi d31, #0xffffff00ffff0000 + 3b4: 2f07e5bf movi d31, #0xffffff00ffff00ff + 3b8: 2f07e5df movi d31, #0xffffff00ffffff00 + 3bc: 2f07e5ff movi d31, #0xffffff00ffffffff + 3c0: 2f07e61f movi d31, #0xffffffff00000000 + 3c4: 2f07e63f movi d31, #0xffffffff000000ff + 3c8: 2f07e65f movi d31, #0xffffffff0000ff00 + 3cc: 2f07e67f movi d31, #0xffffffff0000ffff + 3d0: 2f07e69f movi d31, #0xffffffff00ff0000 + 3d4: 2f07e6bf movi d31, #0xffffffff00ff00ff + 3d8: 2f07e6df movi d31, #0xffffffff00ffff00 + 3dc: 2f07e6ff movi d31, #0xffffffff00ffffff + 3e0: 2f07e71f movi d31, #0xffffffffff000000 + 3e4: 2f07e73f movi d31, #0xffffffffff0000ff + 3e8: 2f07e75f movi d31, #0xffffffffff00ff00 + 3ec: 2f07e77f movi d31, #0xffffffffff00ffff + 3f0: 2f07e79f movi d31, #0xffffffffffff0000 + 3f4: 2f07e7bf movi d31, #0xffffffffffff00ff + 3f8: 2f07e7df movi d31, #0xffffffffffffff00 + 3fc: 2f07e7ff movi d31, #0xffffffffffffffff + 400: 6f00e40f movi v15.2d, #0x0 + 404: 6f00e42f movi v15.2d, #0xff + 408: 6f00e44f movi v15.2d, #0xff00 + 40c: 6f00e46f movi v15.2d, #0xffff + 410: 6f00e48f movi v15.2d, #0xff0000 + 414: 6f00e4af movi v15.2d, #0xff00ff + 418: 6f00e4cf movi v15.2d, #0xffff00 + 41c: 6f00e4ef movi v15.2d, #0xffffff + 420: 6f00e50f movi v15.2d, #0xff000000 + 424: 6f00e52f movi v15.2d, #0xff0000ff + 428: 6f00e54f movi v15.2d, #0xff00ff00 + 42c: 6f00e56f movi v15.2d, #0xff00ffff + 430: 6f00e58f movi v15.2d, #0xffff0000 + 434: 6f00e5af movi v15.2d, #0xffff00ff + 438: 6f00e5cf movi v15.2d, #0xffffff00 + 43c: 6f00e5ef movi v15.2d, #0xffffffff + 440: 6f00e60f movi v15.2d, #0xff00000000 + 444: 6f00e62f movi v15.2d, #0xff000000ff + 448: 6f00e64f movi v15.2d, #0xff0000ff00 + 44c: 6f00e66f movi v15.2d, #0xff0000ffff + 450: 6f00e68f movi v15.2d, #0xff00ff0000 + 454: 6f00e6af movi v15.2d, #0xff00ff00ff + 458: 6f00e6cf movi v15.2d, #0xff00ffff00 + 45c: 6f00e6ef movi v15.2d, #0xff00ffffff + 460: 6f00e70f movi v15.2d, #0xffff000000 + 464: 6f00e72f movi v15.2d, #0xffff0000ff + 468: 6f00e74f movi v15.2d, #0xffff00ff00 + 46c: 6f00e76f movi v15.2d, #0xffff00ffff + 470: 6f00e78f movi v15.2d, #0xffffff0000 + 474: 6f00e7af movi v15.2d, #0xffffff00ff + 478: 6f00e7cf movi v15.2d, #0xffffffff00 + 47c: 6f00e7ef movi v15.2d, #0xffffffffff + 480: 6f01e40f movi v15.2d, #0xff0000000000 + 484: 6f01e42f movi v15.2d, #0xff00000000ff + 488: 6f01e44f movi v15.2d, #0xff000000ff00 + 48c: 6f01e46f movi v15.2d, #0xff000000ffff + 490: 6f01e48f movi v15.2d, #0xff0000ff0000 + 494: 6f01e4af movi v15.2d, #0xff0000ff00ff + 498: 6f01e4cf movi v15.2d, #0xff0000ffff00 + 49c: 6f01e4ef movi v15.2d, #0xff0000ffffff + 4a0: 6f01e50f movi v15.2d, #0xff00ff000000 + 4a4: 6f01e52f movi v15.2d, #0xff00ff0000ff + 4a8: 6f01e54f movi v15.2d, #0xff00ff00ff00 + 4ac: 6f01e56f movi v15.2d, #0xff00ff00ffff + 4b0: 6f01e58f movi v15.2d, #0xff00ffff0000 + 4b4: 6f01e5af movi v15.2d, #0xff00ffff00ff + 4b8: 6f01e5cf movi v15.2d, #0xff00ffffff00 + 4bc: 6f01e5ef movi v15.2d, #0xff00ffffffff + 4c0: 6f01e60f movi v15.2d, #0xffff00000000 + 4c4: 6f01e62f movi v15.2d, #0xffff000000ff + 4c8: 6f01e64f movi v15.2d, #0xffff0000ff00 + 4cc: 6f01e66f movi v15.2d, #0xffff0000ffff + 4d0: 6f01e68f movi v15.2d, #0xffff00ff0000 + 4d4: 6f01e6af movi v15.2d, #0xffff00ff00ff + 4d8: 6f01e6cf movi v15.2d, #0xffff00ffff00 + 4dc: 6f01e6ef movi v15.2d, #0xffff00ffffff + 4e0: 6f01e70f movi v15.2d, #0xffffff000000 + 4e4: 6f01e72f movi v15.2d, #0xffffff0000ff + 4e8: 6f01e74f movi v15.2d, #0xffffff00ff00 + 4ec: 6f01e76f movi v15.2d, #0xffffff00ffff + 4f0: 6f01e78f movi v15.2d, #0xffffffff0000 + 4f4: 6f01e7af movi v15.2d, #0xffffffff00ff + 4f8: 6f01e7cf movi v15.2d, #0xffffffffff00 + 4fc: 6f01e7ef movi v15.2d, #0xffffffffffff + 500: 6f02e40f movi v15.2d, #0xff000000000000 + 504: 6f02e42f movi v15.2d, #0xff0000000000ff + 508: 6f02e44f movi v15.2d, #0xff00000000ff00 + 50c: 6f02e46f movi v15.2d, #0xff00000000ffff + 510: 6f02e48f movi v15.2d, #0xff000000ff0000 + 514: 6f02e4af movi v15.2d, #0xff000000ff00ff + 518: 6f02e4cf movi v15.2d, #0xff000000ffff00 + 51c: 6f02e4ef movi v15.2d, #0xff000000ffffff + 520: 6f02e50f movi v15.2d, #0xff0000ff000000 + 524: 6f02e52f movi v15.2d, #0xff0000ff0000ff + 528: 6f02e54f movi v15.2d, #0xff0000ff00ff00 + 52c: 6f02e56f movi v15.2d, #0xff0000ff00ffff + 530: 6f02e58f movi v15.2d, #0xff0000ffff0000 + 534: 6f02e5af movi v15.2d, #0xff0000ffff00ff + 538: 6f02e5cf movi v15.2d, #0xff0000ffffff00 + 53c: 6f02e5ef movi v15.2d, #0xff0000ffffffff + 540: 6f02e60f movi v15.2d, #0xff00ff00000000 + 544: 6f02e62f movi v15.2d, #0xff00ff000000ff + 548: 6f02e64f movi v15.2d, #0xff00ff0000ff00 + 54c: 6f02e66f movi v15.2d, #0xff00ff0000ffff + 550: 6f02e68f movi v15.2d, #0xff00ff00ff0000 + 554: 6f02e6af movi v15.2d, #0xff00ff00ff00ff + 558: 6f02e6cf movi v15.2d, #0xff00ff00ffff00 + 55c: 6f02e6ef movi v15.2d, #0xff00ff00ffffff + 560: 6f02e70f movi v15.2d, #0xff00ffff000000 + 564: 6f02e72f movi v15.2d, #0xff00ffff0000ff + 568: 6f02e74f movi v15.2d, #0xff00ffff00ff00 + 56c: 6f02e76f movi v15.2d, #0xff00ffff00ffff + 570: 6f02e78f movi v15.2d, #0xff00ffffff0000 + 574: 6f02e7af movi v15.2d, #0xff00ffffff00ff + 578: 6f02e7cf movi v15.2d, #0xff00ffffffff00 + 57c: 6f02e7ef movi v15.2d, #0xff00ffffffffff + 580: 6f03e40f movi v15.2d, #0xffff0000000000 + 584: 6f03e42f movi v15.2d, #0xffff00000000ff + 588: 6f03e44f movi v15.2d, #0xffff000000ff00 + 58c: 6f03e46f movi v15.2d, #0xffff000000ffff + 590: 6f03e48f movi v15.2d, #0xffff0000ff0000 + 594: 6f03e4af movi v15.2d, #0xffff0000ff00ff + 598: 6f03e4cf movi v15.2d, #0xffff0000ffff00 + 59c: 6f03e4ef movi v15.2d, #0xffff0000ffffff + 5a0: 6f03e50f movi v15.2d, #0xffff00ff000000 + 5a4: 6f03e52f movi v15.2d, #0xffff00ff0000ff + 5a8: 6f03e54f movi v15.2d, #0xffff00ff00ff00 + 5ac: 6f03e56f movi v15.2d, #0xffff00ff00ffff + 5b0: 6f03e58f movi v15.2d, #0xffff00ffff0000 + 5b4: 6f03e5af movi v15.2d, #0xffff00ffff00ff + 5b8: 6f03e5cf movi v15.2d, #0xffff00ffffff00 + 5bc: 6f03e5ef movi v15.2d, #0xffff00ffffffff + 5c0: 6f03e60f movi v15.2d, #0xffffff00000000 + 5c4: 6f03e62f movi v15.2d, #0xffffff000000ff + 5c8: 6f03e64f movi v15.2d, #0xffffff0000ff00 + 5cc: 6f03e66f movi v15.2d, #0xffffff0000ffff + 5d0: 6f03e68f movi v15.2d, #0xffffff00ff0000 + 5d4: 6f03e6af movi v15.2d, #0xffffff00ff00ff + 5d8: 6f03e6cf movi v15.2d, #0xffffff00ffff00 + 5dc: 6f03e6ef movi v15.2d, #0xffffff00ffffff + 5e0: 6f03e70f movi v15.2d, #0xffffffff000000 + 5e4: 6f03e72f movi v15.2d, #0xffffffff0000ff + 5e8: 6f03e74f movi v15.2d, #0xffffffff00ff00 + 5ec: 6f03e76f movi v15.2d, #0xffffffff00ffff + 5f0: 6f03e78f movi v15.2d, #0xffffffffff0000 + 5f4: 6f03e7af movi v15.2d, #0xffffffffff00ff + 5f8: 6f03e7cf movi v15.2d, #0xffffffffffff00 + 5fc: 6f03e7ef movi v15.2d, #0xffffffffffffff + 600: 6f04e40f movi v15.2d, #0xff00000000000000 + 604: 6f04e42f movi v15.2d, #0xff000000000000ff + 608: 6f04e44f movi v15.2d, #0xff0000000000ff00 + 60c: 6f04e46f movi v15.2d, #0xff0000000000ffff + 610: 6f04e48f movi v15.2d, #0xff00000000ff0000 + 614: 6f04e4af movi v15.2d, #0xff00000000ff00ff + 618: 6f04e4cf movi v15.2d, #0xff00000000ffff00 + 61c: 6f04e4ef movi v15.2d, #0xff00000000ffffff + 620: 6f04e50f movi v15.2d, #0xff000000ff000000 + 624: 6f04e52f movi v15.2d, #0xff000000ff0000ff + 628: 6f04e54f movi v15.2d, #0xff000000ff00ff00 + 62c: 6f04e56f movi v15.2d, #0xff000000ff00ffff + 630: 6f04e58f movi v15.2d, #0xff000000ffff0000 + 634: 6f04e5af movi v15.2d, #0xff000000ffff00ff + 638: 6f04e5cf movi v15.2d, #0xff000000ffffff00 + 63c: 6f04e5ef movi v15.2d, #0xff000000ffffffff + 640: 6f04e60f movi v15.2d, #0xff0000ff00000000 + 644: 6f04e62f movi v15.2d, #0xff0000ff000000ff + 648: 6f04e64f movi v15.2d, #0xff0000ff0000ff00 + 64c: 6f04e66f movi v15.2d, #0xff0000ff0000ffff + 650: 6f04e68f movi v15.2d, #0xff0000ff00ff0000 + 654: 6f04e6af movi v15.2d, #0xff0000ff00ff00ff + 658: 6f04e6cf movi v15.2d, #0xff0000ff00ffff00 + 65c: 6f04e6ef movi v15.2d, #0xff0000ff00ffffff + 660: 6f04e70f movi v15.2d, #0xff0000ffff000000 + 664: 6f04e72f movi v15.2d, #0xff0000ffff0000ff + 668: 6f04e74f movi v15.2d, #0xff0000ffff00ff00 + 66c: 6f04e76f movi v15.2d, #0xff0000ffff00ffff + 670: 6f04e78f movi v15.2d, #0xff0000ffffff0000 + 674: 6f04e7af movi v15.2d, #0xff0000ffffff00ff + 678: 6f04e7cf movi v15.2d, #0xff0000ffffffff00 + 67c: 6f04e7ef movi v15.2d, #0xff0000ffffffffff + 680: 6f05e40f movi v15.2d, #0xff00ff0000000000 + 684: 6f05e42f movi v15.2d, #0xff00ff00000000ff + 688: 6f05e44f movi v15.2d, #0xff00ff000000ff00 + 68c: 6f05e46f movi v15.2d, #0xff00ff000000ffff + 690: 6f05e48f movi v15.2d, #0xff00ff0000ff0000 + 694: 6f05e4af movi v15.2d, #0xff00ff0000ff00ff + 698: 6f05e4cf movi v15.2d, #0xff00ff0000ffff00 + 69c: 6f05e4ef movi v15.2d, #0xff00ff0000ffffff + 6a0: 6f05e50f movi v15.2d, #0xff00ff00ff000000 + 6a4: 6f05e52f movi v15.2d, #0xff00ff00ff0000ff + 6a8: 6f05e54f movi v15.2d, #0xff00ff00ff00ff00 + 6ac: 6f05e56f movi v15.2d, #0xff00ff00ff00ffff + 6b0: 6f05e58f movi v15.2d, #0xff00ff00ffff0000 + 6b4: 6f05e5af movi v15.2d, #0xff00ff00ffff00ff + 6b8: 6f05e5cf movi v15.2d, #0xff00ff00ffffff00 + 6bc: 6f05e5ef movi v15.2d, #0xff00ff00ffffffff + 6c0: 6f05e60f movi v15.2d, #0xff00ffff00000000 + 6c4: 6f05e62f movi v15.2d, #0xff00ffff000000ff + 6c8: 6f05e64f movi v15.2d, #0xff00ffff0000ff00 + 6cc: 6f05e66f movi v15.2d, #0xff00ffff0000ffff + 6d0: 6f05e68f movi v15.2d, #0xff00ffff00ff0000 + 6d4: 6f05e6af movi v15.2d, #0xff00ffff00ff00ff + 6d8: 6f05e6cf movi v15.2d, #0xff00ffff00ffff00 + 6dc: 6f05e6ef movi v15.2d, #0xff00ffff00ffffff + 6e0: 6f05e70f movi v15.2d, #0xff00ffffff000000 + 6e4: 6f05e72f movi v15.2d, #0xff00ffffff0000ff + 6e8: 6f05e74f movi v15.2d, #0xff00ffffff00ff00 + 6ec: 6f05e76f movi v15.2d, #0xff00ffffff00ffff + 6f0: 6f05e78f movi v15.2d, #0xff00ffffffff0000 + 6f4: 6f05e7af movi v15.2d, #0xff00ffffffff00ff + 6f8: 6f05e7cf movi v15.2d, #0xff00ffffffffff00 + 6fc: 6f05e7ef movi v15.2d, #0xff00ffffffffffff + 700: 6f06e40f movi v15.2d, #0xffff000000000000 + 704: 6f06e42f movi v15.2d, #0xffff0000000000ff + 708: 6f06e44f movi v15.2d, #0xffff00000000ff00 + 70c: 6f06e46f movi v15.2d, #0xffff00000000ffff + 710: 6f06e48f movi v15.2d, #0xffff000000ff0000 + 714: 6f06e4af movi v15.2d, #0xffff000000ff00ff + 718: 6f06e4cf movi v15.2d, #0xffff000000ffff00 + 71c: 6f06e4ef movi v15.2d, #0xffff000000ffffff + 720: 6f06e50f movi v15.2d, #0xffff0000ff000000 + 724: 6f06e52f movi v15.2d, #0xffff0000ff0000ff + 728: 6f06e54f movi v15.2d, #0xffff0000ff00ff00 + 72c: 6f06e56f movi v15.2d, #0xffff0000ff00ffff + 730: 6f06e58f movi v15.2d, #0xffff0000ffff0000 + 734: 6f06e5af movi v15.2d, #0xffff0000ffff00ff + 738: 6f06e5cf movi v15.2d, #0xffff0000ffffff00 + 73c: 6f06e5ef movi v15.2d, #0xffff0000ffffffff + 740: 6f06e60f movi v15.2d, #0xffff00ff00000000 + 744: 6f06e62f movi v15.2d, #0xffff00ff000000ff + 748: 6f06e64f movi v15.2d, #0xffff00ff0000ff00 + 74c: 6f06e66f movi v15.2d, #0xffff00ff0000ffff + 750: 6f06e68f movi v15.2d, #0xffff00ff00ff0000 + 754: 6f06e6af movi v15.2d, #0xffff00ff00ff00ff + 758: 6f06e6cf movi v15.2d, #0xffff00ff00ffff00 + 75c: 6f06e6ef movi v15.2d, #0xffff00ff00ffffff + 760: 6f06e70f movi v15.2d, #0xffff00ffff000000 + 764: 6f06e72f movi v15.2d, #0xffff00ffff0000ff + 768: 6f06e74f movi v15.2d, #0xffff00ffff00ff00 + 76c: 6f06e76f movi v15.2d, #0xffff00ffff00ffff + 770: 6f06e78f movi v15.2d, #0xffff00ffffff0000 + 774: 6f06e7af movi v15.2d, #0xffff00ffffff00ff + 778: 6f06e7cf movi v15.2d, #0xffff00ffffffff00 + 77c: 6f06e7ef movi v15.2d, #0xffff00ffffffffff + 780: 6f07e40f movi v15.2d, #0xffffff0000000000 + 784: 6f07e42f movi v15.2d, #0xffffff00000000ff + 788: 6f07e44f movi v15.2d, #0xffffff000000ff00 + 78c: 6f07e46f movi v15.2d, #0xffffff000000ffff + 790: 6f07e48f movi v15.2d, #0xffffff0000ff0000 + 794: 6f07e4af movi v15.2d, #0xffffff0000ff00ff + 798: 6f07e4cf movi v15.2d, #0xffffff0000ffff00 + 79c: 6f07e4ef movi v15.2d, #0xffffff0000ffffff + 7a0: 6f07e50f movi v15.2d, #0xffffff00ff000000 + 7a4: 6f07e52f movi v15.2d, #0xffffff00ff0000ff + 7a8: 6f07e54f movi v15.2d, #0xffffff00ff00ff00 + 7ac: 6f07e56f movi v15.2d, #0xffffff00ff00ffff + 7b0: 6f07e58f movi v15.2d, #0xffffff00ffff0000 + 7b4: 6f07e5af movi v15.2d, #0xffffff00ffff00ff + 7b8: 6f07e5cf movi v15.2d, #0xffffff00ffffff00 + 7bc: 6f07e5ef movi v15.2d, #0xffffff00ffffffff + 7c0: 6f07e60f movi v15.2d, #0xffffffff00000000 + 7c4: 6f07e62f movi v15.2d, #0xffffffff000000ff + 7c8: 6f07e64f movi v15.2d, #0xffffffff0000ff00 + 7cc: 6f07e66f movi v15.2d, #0xffffffff0000ffff + 7d0: 6f07e68f movi v15.2d, #0xffffffff00ff0000 + 7d4: 6f07e6af movi v15.2d, #0xffffffff00ff00ff + 7d8: 6f07e6cf movi v15.2d, #0xffffffff00ffff00 + 7dc: 6f07e6ef movi v15.2d, #0xffffffff00ffffff + 7e0: 6f07e70f movi v15.2d, #0xffffffffff000000 + 7e4: 6f07e72f movi v15.2d, #0xffffffffff0000ff + 7e8: 6f07e74f movi v15.2d, #0xffffffffff00ff00 + 7ec: 6f07e76f movi v15.2d, #0xffffffffff00ffff + 7f0: 6f07e78f movi v15.2d, #0xffffffffffff0000 + 7f4: 6f07e7af movi v15.2d, #0xffffffffffff00ff + 7f8: 6f07e7cf movi v15.2d, #0xffffffffffffff00 + 7fc: 6f07e7ef movi v15.2d, #0xffffffffffffffff + 800: 0f00e40f movi v15.8b, #0x0 + 804: 0f00e42f movi v15.8b, #0x1 + 808: 0f00e44f movi v15.8b, #0x2 + 80c: 0f00e46f movi v15.8b, #0x3 + 810: 0f00e48f movi v15.8b, #0x4 + 814: 0f00e4af movi v15.8b, #0x5 + 818: 0f00e4cf movi v15.8b, #0x6 + 81c: 0f00e4ef movi v15.8b, #0x7 + 820: 0f00e50f movi v15.8b, #0x8 + 824: 0f00e52f movi v15.8b, #0x9 + 828: 0f00e54f movi v15.8b, #0xa + 82c: 0f00e56f movi v15.8b, #0xb + 830: 0f00e58f movi v15.8b, #0xc + 834: 0f00e5af movi v15.8b, #0xd + 838: 0f00e5cf movi v15.8b, #0xe + 83c: 0f00e5ef movi v15.8b, #0xf + 840: 0f00e60f movi v15.8b, #0x10 + 844: 0f00e62f movi v15.8b, #0x11 + 848: 0f00e64f movi v15.8b, #0x12 + 84c: 0f00e66f movi v15.8b, #0x13 + 850: 0f00e68f movi v15.8b, #0x14 + 854: 0f00e6af movi v15.8b, #0x15 + 858: 0f00e6cf movi v15.8b, #0x16 + 85c: 0f00e6ef movi v15.8b, #0x17 + 860: 0f00e70f movi v15.8b, #0x18 + 864: 0f00e72f movi v15.8b, #0x19 + 868: 0f00e74f movi v15.8b, #0x1a + 86c: 0f00e76f movi v15.8b, #0x1b + 870: 0f00e78f movi v15.8b, #0x1c + 874: 0f00e7af movi v15.8b, #0x1d + 878: 0f00e7cf movi v15.8b, #0x1e + 87c: 0f00e7ef movi v15.8b, #0x1f + 880: 0f01e40f movi v15.8b, #0x20 + 884: 0f01e42f movi v15.8b, #0x21 + 888: 0f01e44f movi v15.8b, #0x22 + 88c: 0f01e46f movi v15.8b, #0x23 + 890: 0f01e48f movi v15.8b, #0x24 + 894: 0f01e4af movi v15.8b, #0x25 + 898: 0f01e4cf movi v15.8b, #0x26 + 89c: 0f01e4ef movi v15.8b, #0x27 + 8a0: 0f01e50f movi v15.8b, #0x28 + 8a4: 0f01e52f movi v15.8b, #0x29 + 8a8: 0f01e54f movi v15.8b, #0x2a + 8ac: 0f01e56f movi v15.8b, #0x2b + 8b0: 0f01e58f movi v15.8b, #0x2c + 8b4: 0f01e5af movi v15.8b, #0x2d + 8b8: 0f01e5cf movi v15.8b, #0x2e + 8bc: 0f01e5ef movi v15.8b, #0x2f + 8c0: 0f01e60f movi v15.8b, #0x30 + 8c4: 0f01e62f movi v15.8b, #0x31 + 8c8: 0f01e64f movi v15.8b, #0x32 + 8cc: 0f01e66f movi v15.8b, #0x33 + 8d0: 0f01e68f movi v15.8b, #0x34 + 8d4: 0f01e6af movi v15.8b, #0x35 + 8d8: 0f01e6cf movi v15.8b, #0x36 + 8dc: 0f01e6ef movi v15.8b, #0x37 + 8e0: 0f01e70f movi v15.8b, #0x38 + 8e4: 0f01e72f movi v15.8b, #0x39 + 8e8: 0f01e74f movi v15.8b, #0x3a + 8ec: 0f01e76f movi v15.8b, #0x3b + 8f0: 0f01e78f movi v15.8b, #0x3c + 8f4: 0f01e7af movi v15.8b, #0x3d + 8f8: 0f01e7cf movi v15.8b, #0x3e + 8fc: 0f01e7ef movi v15.8b, #0x3f + 900: 0f02e40f movi v15.8b, #0x40 + 904: 0f02e42f movi v15.8b, #0x41 + 908: 0f02e44f movi v15.8b, #0x42 + 90c: 0f02e46f movi v15.8b, #0x43 + 910: 0f02e48f movi v15.8b, #0x44 + 914: 0f02e4af movi v15.8b, #0x45 + 918: 0f02e4cf movi v15.8b, #0x46 + 91c: 0f02e4ef movi v15.8b, #0x47 + 920: 0f02e50f movi v15.8b, #0x48 + 924: 0f02e52f movi v15.8b, #0x49 + 928: 0f02e54f movi v15.8b, #0x4a + 92c: 0f02e56f movi v15.8b, #0x4b + 930: 0f02e58f movi v15.8b, #0x4c + 934: 0f02e5af movi v15.8b, #0x4d + 938: 0f02e5cf movi v15.8b, #0x4e + 93c: 0f02e5ef movi v15.8b, #0x4f + 940: 0f02e60f movi v15.8b, #0x50 + 944: 0f02e62f movi v15.8b, #0x51 + 948: 0f02e64f movi v15.8b, #0x52 + 94c: 0f02e66f movi v15.8b, #0x53 + 950: 0f02e68f movi v15.8b, #0x54 + 954: 0f02e6af movi v15.8b, #0x55 + 958: 0f02e6cf movi v15.8b, #0x56 + 95c: 0f02e6ef movi v15.8b, #0x57 + 960: 0f02e70f movi v15.8b, #0x58 + 964: 0f02e72f movi v15.8b, #0x59 + 968: 0f02e74f movi v15.8b, #0x5a + 96c: 0f02e76f movi v15.8b, #0x5b + 970: 0f02e78f movi v15.8b, #0x5c + 974: 0f02e7af movi v15.8b, #0x5d + 978: 0f02e7cf movi v15.8b, #0x5e + 97c: 0f02e7ef movi v15.8b, #0x5f + 980: 0f03e40f movi v15.8b, #0x60 + 984: 0f03e42f movi v15.8b, #0x61 + 988: 0f03e44f movi v15.8b, #0x62 + 98c: 0f03e46f movi v15.8b, #0x63 + 990: 0f03e48f movi v15.8b, #0x64 + 994: 0f03e4af movi v15.8b, #0x65 + 998: 0f03e4cf movi v15.8b, #0x66 + 99c: 0f03e4ef movi v15.8b, #0x67 + 9a0: 0f03e50f movi v15.8b, #0x68 + 9a4: 0f03e52f movi v15.8b, #0x69 + 9a8: 0f03e54f movi v15.8b, #0x6a + 9ac: 0f03e56f movi v15.8b, #0x6b + 9b0: 0f03e58f movi v15.8b, #0x6c + 9b4: 0f03e5af movi v15.8b, #0x6d + 9b8: 0f03e5cf movi v15.8b, #0x6e + 9bc: 0f03e5ef movi v15.8b, #0x6f + 9c0: 0f03e60f movi v15.8b, #0x70 + 9c4: 0f03e62f movi v15.8b, #0x71 + 9c8: 0f03e64f movi v15.8b, #0x72 + 9cc: 0f03e66f movi v15.8b, #0x73 + 9d0: 0f03e68f movi v15.8b, #0x74 + 9d4: 0f03e6af movi v15.8b, #0x75 + 9d8: 0f03e6cf movi v15.8b, #0x76 + 9dc: 0f03e6ef movi v15.8b, #0x77 + 9e0: 0f03e70f movi v15.8b, #0x78 + 9e4: 0f03e72f movi v15.8b, #0x79 + 9e8: 0f03e74f movi v15.8b, #0x7a + 9ec: 0f03e76f movi v15.8b, #0x7b + 9f0: 0f03e78f movi v15.8b, #0x7c + 9f4: 0f03e7af movi v15.8b, #0x7d + 9f8: 0f03e7cf movi v15.8b, #0x7e + 9fc: 0f03e7ef movi v15.8b, #0x7f + a00: 0f04e40f movi v15.8b, #0x80 + a04: 0f04e42f movi v15.8b, #0x81 + a08: 0f04e44f movi v15.8b, #0x82 + a0c: 0f04e46f movi v15.8b, #0x83 + a10: 0f04e48f movi v15.8b, #0x84 + a14: 0f04e4af movi v15.8b, #0x85 + a18: 0f04e4cf movi v15.8b, #0x86 + a1c: 0f04e4ef movi v15.8b, #0x87 + a20: 0f04e50f movi v15.8b, #0x88 + a24: 0f04e52f movi v15.8b, #0x89 + a28: 0f04e54f movi v15.8b, #0x8a + a2c: 0f04e56f movi v15.8b, #0x8b + a30: 0f04e58f movi v15.8b, #0x8c + a34: 0f04e5af movi v15.8b, #0x8d + a38: 0f04e5cf movi v15.8b, #0x8e + a3c: 0f04e5ef movi v15.8b, #0x8f + a40: 0f04e60f movi v15.8b, #0x90 + a44: 0f04e62f movi v15.8b, #0x91 + a48: 0f04e64f movi v15.8b, #0x92 + a4c: 0f04e66f movi v15.8b, #0x93 + a50: 0f04e68f movi v15.8b, #0x94 + a54: 0f04e6af movi v15.8b, #0x95 + a58: 0f04e6cf movi v15.8b, #0x96 + a5c: 0f04e6ef movi v15.8b, #0x97 + a60: 0f04e70f movi v15.8b, #0x98 + a64: 0f04e72f movi v15.8b, #0x99 + a68: 0f04e74f movi v15.8b, #0x9a + a6c: 0f04e76f movi v15.8b, #0x9b + a70: 0f04e78f movi v15.8b, #0x9c + a74: 0f04e7af movi v15.8b, #0x9d + a78: 0f04e7cf movi v15.8b, #0x9e + a7c: 0f04e7ef movi v15.8b, #0x9f + a80: 0f05e40f movi v15.8b, #0xa0 + a84: 0f05e42f movi v15.8b, #0xa1 + a88: 0f05e44f movi v15.8b, #0xa2 + a8c: 0f05e46f movi v15.8b, #0xa3 + a90: 0f05e48f movi v15.8b, #0xa4 + a94: 0f05e4af movi v15.8b, #0xa5 + a98: 0f05e4cf movi v15.8b, #0xa6 + a9c: 0f05e4ef movi v15.8b, #0xa7 + aa0: 0f05e50f movi v15.8b, #0xa8 + aa4: 0f05e52f movi v15.8b, #0xa9 + aa8: 0f05e54f movi v15.8b, #0xaa + aac: 0f05e56f movi v15.8b, #0xab + ab0: 0f05e58f movi v15.8b, #0xac + ab4: 0f05e5af movi v15.8b, #0xad + ab8: 0f05e5cf movi v15.8b, #0xae + abc: 0f05e5ef movi v15.8b, #0xaf + ac0: 0f05e60f movi v15.8b, #0xb0 + ac4: 0f05e62f movi v15.8b, #0xb1 + ac8: 0f05e64f movi v15.8b, #0xb2 + acc: 0f05e66f movi v15.8b, #0xb3 + ad0: 0f05e68f movi v15.8b, #0xb4 + ad4: 0f05e6af movi v15.8b, #0xb5 + ad8: 0f05e6cf movi v15.8b, #0xb6 + adc: 0f05e6ef movi v15.8b, #0xb7 + ae0: 0f05e70f movi v15.8b, #0xb8 + ae4: 0f05e72f movi v15.8b, #0xb9 + ae8: 0f05e74f movi v15.8b, #0xba + aec: 0f05e76f movi v15.8b, #0xbb + af0: 0f05e78f movi v15.8b, #0xbc + af4: 0f05e7af movi v15.8b, #0xbd + af8: 0f05e7cf movi v15.8b, #0xbe + afc: 0f05e7ef movi v15.8b, #0xbf + b00: 0f06e40f movi v15.8b, #0xc0 + b04: 0f06e42f movi v15.8b, #0xc1 + b08: 0f06e44f movi v15.8b, #0xc2 + b0c: 0f06e46f movi v15.8b, #0xc3 + b10: 0f06e48f movi v15.8b, #0xc4 + b14: 0f06e4af movi v15.8b, #0xc5 + b18: 0f06e4cf movi v15.8b, #0xc6 + b1c: 0f06e4ef movi v15.8b, #0xc7 + b20: 0f06e50f movi v15.8b, #0xc8 + b24: 0f06e52f movi v15.8b, #0xc9 + b28: 0f06e54f movi v15.8b, #0xca + b2c: 0f06e56f movi v15.8b, #0xcb + b30: 0f06e58f movi v15.8b, #0xcc + b34: 0f06e5af movi v15.8b, #0xcd + b38: 0f06e5cf movi v15.8b, #0xce + b3c: 0f06e5ef movi v15.8b, #0xcf + b40: 0f06e60f movi v15.8b, #0xd0 + b44: 0f06e62f movi v15.8b, #0xd1 + b48: 0f06e64f movi v15.8b, #0xd2 + b4c: 0f06e66f movi v15.8b, #0xd3 + b50: 0f06e68f movi v15.8b, #0xd4 + b54: 0f06e6af movi v15.8b, #0xd5 + b58: 0f06e6cf movi v15.8b, #0xd6 + b5c: 0f06e6ef movi v15.8b, #0xd7 + b60: 0f06e70f movi v15.8b, #0xd8 + b64: 0f06e72f movi v15.8b, #0xd9 + b68: 0f06e74f movi v15.8b, #0xda + b6c: 0f06e76f movi v15.8b, #0xdb + b70: 0f06e78f movi v15.8b, #0xdc + b74: 0f06e7af movi v15.8b, #0xdd + b78: 0f06e7cf movi v15.8b, #0xde + b7c: 0f06e7ef movi v15.8b, #0xdf + b80: 0f07e40f movi v15.8b, #0xe0 + b84: 0f07e42f movi v15.8b, #0xe1 + b88: 0f07e44f movi v15.8b, #0xe2 + b8c: 0f07e46f movi v15.8b, #0xe3 + b90: 0f07e48f movi v15.8b, #0xe4 + b94: 0f07e4af movi v15.8b, #0xe5 + b98: 0f07e4cf movi v15.8b, #0xe6 + b9c: 0f07e4ef movi v15.8b, #0xe7 + ba0: 0f07e50f movi v15.8b, #0xe8 + ba4: 0f07e52f movi v15.8b, #0xe9 + ba8: 0f07e54f movi v15.8b, #0xea + bac: 0f07e56f movi v15.8b, #0xeb + bb0: 0f07e58f movi v15.8b, #0xec + bb4: 0f07e5af movi v15.8b, #0xed + bb8: 0f07e5cf movi v15.8b, #0xee + bbc: 0f07e5ef movi v15.8b, #0xef + bc0: 0f07e60f movi v15.8b, #0xf0 + bc4: 0f07e62f movi v15.8b, #0xf1 + bc8: 0f07e64f movi v15.8b, #0xf2 + bcc: 0f07e66f movi v15.8b, #0xf3 + bd0: 0f07e68f movi v15.8b, #0xf4 + bd4: 0f07e6af movi v15.8b, #0xf5 + bd8: 0f07e6cf movi v15.8b, #0xf6 + bdc: 0f07e6ef movi v15.8b, #0xf7 + be0: 0f07e70f movi v15.8b, #0xf8 + be4: 0f07e72f movi v15.8b, #0xf9 + be8: 0f07e74f movi v15.8b, #0xfa + bec: 0f07e76f movi v15.8b, #0xfb + bf0: 0f07e78f movi v15.8b, #0xfc + bf4: 0f07e7af movi v15.8b, #0xfd + bf8: 0f07e7cf movi v15.8b, #0xfe + bfc: 0f07e7ef movi v15.8b, #0xff + c00: 4f00e40f movi v15.16b, #0x0 + c04: 4f00e42f movi v15.16b, #0x1 + c08: 4f00e44f movi v15.16b, #0x2 + c0c: 4f00e46f movi v15.16b, #0x3 + c10: 4f00e48f movi v15.16b, #0x4 + c14: 4f00e4af movi v15.16b, #0x5 + c18: 4f00e4cf movi v15.16b, #0x6 + c1c: 4f00e4ef movi v15.16b, #0x7 + c20: 4f00e50f movi v15.16b, #0x8 + c24: 4f00e52f movi v15.16b, #0x9 + c28: 4f00e54f movi v15.16b, #0xa + c2c: 4f00e56f movi v15.16b, #0xb + c30: 4f00e58f movi v15.16b, #0xc + c34: 4f00e5af movi v15.16b, #0xd + c38: 4f00e5cf movi v15.16b, #0xe + c3c: 4f00e5ef movi v15.16b, #0xf + c40: 4f00e60f movi v15.16b, #0x10 + c44: 4f00e62f movi v15.16b, #0x11 + c48: 4f00e64f movi v15.16b, #0x12 + c4c: 4f00e66f movi v15.16b, #0x13 + c50: 4f00e68f movi v15.16b, #0x14 + c54: 4f00e6af movi v15.16b, #0x15 + c58: 4f00e6cf movi v15.16b, #0x16 + c5c: 4f00e6ef movi v15.16b, #0x17 + c60: 4f00e70f movi v15.16b, #0x18 + c64: 4f00e72f movi v15.16b, #0x19 + c68: 4f00e74f movi v15.16b, #0x1a + c6c: 4f00e76f movi v15.16b, #0x1b + c70: 4f00e78f movi v15.16b, #0x1c + c74: 4f00e7af movi v15.16b, #0x1d + c78: 4f00e7cf movi v15.16b, #0x1e + c7c: 4f00e7ef movi v15.16b, #0x1f + c80: 4f01e40f movi v15.16b, #0x20 + c84: 4f01e42f movi v15.16b, #0x21 + c88: 4f01e44f movi v15.16b, #0x22 + c8c: 4f01e46f movi v15.16b, #0x23 + c90: 4f01e48f movi v15.16b, #0x24 + c94: 4f01e4af movi v15.16b, #0x25 + c98: 4f01e4cf movi v15.16b, #0x26 + c9c: 4f01e4ef movi v15.16b, #0x27 + ca0: 4f01e50f movi v15.16b, #0x28 + ca4: 4f01e52f movi v15.16b, #0x29 + ca8: 4f01e54f movi v15.16b, #0x2a + cac: 4f01e56f movi v15.16b, #0x2b + cb0: 4f01e58f movi v15.16b, #0x2c + cb4: 4f01e5af movi v15.16b, #0x2d + cb8: 4f01e5cf movi v15.16b, #0x2e + cbc: 4f01e5ef movi v15.16b, #0x2f + cc0: 4f01e60f movi v15.16b, #0x30 + cc4: 4f01e62f movi v15.16b, #0x31 + cc8: 4f01e64f movi v15.16b, #0x32 + ccc: 4f01e66f movi v15.16b, #0x33 + cd0: 4f01e68f movi v15.16b, #0x34 + cd4: 4f01e6af movi v15.16b, #0x35 + cd8: 4f01e6cf movi v15.16b, #0x36 + cdc: 4f01e6ef movi v15.16b, #0x37 + ce0: 4f01e70f movi v15.16b, #0x38 + ce4: 4f01e72f movi v15.16b, #0x39 + ce8: 4f01e74f movi v15.16b, #0x3a + cec: 4f01e76f movi v15.16b, #0x3b + cf0: 4f01e78f movi v15.16b, #0x3c + cf4: 4f01e7af movi v15.16b, #0x3d + cf8: 4f01e7cf movi v15.16b, #0x3e + cfc: 4f01e7ef movi v15.16b, #0x3f + d00: 4f02e40f movi v15.16b, #0x40 + d04: 4f02e42f movi v15.16b, #0x41 + d08: 4f02e44f movi v15.16b, #0x42 + d0c: 4f02e46f movi v15.16b, #0x43 + d10: 4f02e48f movi v15.16b, #0x44 + d14: 4f02e4af movi v15.16b, #0x45 + d18: 4f02e4cf movi v15.16b, #0x46 + d1c: 4f02e4ef movi v15.16b, #0x47 + d20: 4f02e50f movi v15.16b, #0x48 + d24: 4f02e52f movi v15.16b, #0x49 + d28: 4f02e54f movi v15.16b, #0x4a + d2c: 4f02e56f movi v15.16b, #0x4b + d30: 4f02e58f movi v15.16b, #0x4c + d34: 4f02e5af movi v15.16b, #0x4d + d38: 4f02e5cf movi v15.16b, #0x4e + d3c: 4f02e5ef movi v15.16b, #0x4f + d40: 4f02e60f movi v15.16b, #0x50 + d44: 4f02e62f movi v15.16b, #0x51 + d48: 4f02e64f movi v15.16b, #0x52 + d4c: 4f02e66f movi v15.16b, #0x53 + d50: 4f02e68f movi v15.16b, #0x54 + d54: 4f02e6af movi v15.16b, #0x55 + d58: 4f02e6cf movi v15.16b, #0x56 + d5c: 4f02e6ef movi v15.16b, #0x57 + d60: 4f02e70f movi v15.16b, #0x58 + d64: 4f02e72f movi v15.16b, #0x59 + d68: 4f02e74f movi v15.16b, #0x5a + d6c: 4f02e76f movi v15.16b, #0x5b + d70: 4f02e78f movi v15.16b, #0x5c + d74: 4f02e7af movi v15.16b, #0x5d + d78: 4f02e7cf movi v15.16b, #0x5e + d7c: 4f02e7ef movi v15.16b, #0x5f + d80: 4f03e40f movi v15.16b, #0x60 + d84: 4f03e42f movi v15.16b, #0x61 + d88: 4f03e44f movi v15.16b, #0x62 + d8c: 4f03e46f movi v15.16b, #0x63 + d90: 4f03e48f movi v15.16b, #0x64 + d94: 4f03e4af movi v15.16b, #0x65 + d98: 4f03e4cf movi v15.16b, #0x66 + d9c: 4f03e4ef movi v15.16b, #0x67 + da0: 4f03e50f movi v15.16b, #0x68 + da4: 4f03e52f movi v15.16b, #0x69 + da8: 4f03e54f movi v15.16b, #0x6a + dac: 4f03e56f movi v15.16b, #0x6b + db0: 4f03e58f movi v15.16b, #0x6c + db4: 4f03e5af movi v15.16b, #0x6d + db8: 4f03e5cf movi v15.16b, #0x6e + dbc: 4f03e5ef movi v15.16b, #0x6f + dc0: 4f03e60f movi v15.16b, #0x70 + dc4: 4f03e62f movi v15.16b, #0x71 + dc8: 4f03e64f movi v15.16b, #0x72 + dcc: 4f03e66f movi v15.16b, #0x73 + dd0: 4f03e68f movi v15.16b, #0x74 + dd4: 4f03e6af movi v15.16b, #0x75 + dd8: 4f03e6cf movi v15.16b, #0x76 + ddc: 4f03e6ef movi v15.16b, #0x77 + de0: 4f03e70f movi v15.16b, #0x78 + de4: 4f03e72f movi v15.16b, #0x79 + de8: 4f03e74f movi v15.16b, #0x7a + dec: 4f03e76f movi v15.16b, #0x7b + df0: 4f03e78f movi v15.16b, #0x7c + df4: 4f03e7af movi v15.16b, #0x7d + df8: 4f03e7cf movi v15.16b, #0x7e + dfc: 4f03e7ef movi v15.16b, #0x7f + e00: 4f04e40f movi v15.16b, #0x80 + e04: 4f04e42f movi v15.16b, #0x81 + e08: 4f04e44f movi v15.16b, #0x82 + e0c: 4f04e46f movi v15.16b, #0x83 + e10: 4f04e48f movi v15.16b, #0x84 + e14: 4f04e4af movi v15.16b, #0x85 + e18: 4f04e4cf movi v15.16b, #0x86 + e1c: 4f04e4ef movi v15.16b, #0x87 + e20: 4f04e50f movi v15.16b, #0x88 + e24: 4f04e52f movi v15.16b, #0x89 + e28: 4f04e54f movi v15.16b, #0x8a + e2c: 4f04e56f movi v15.16b, #0x8b + e30: 4f04e58f movi v15.16b, #0x8c + e34: 4f04e5af movi v15.16b, #0x8d + e38: 4f04e5cf movi v15.16b, #0x8e + e3c: 4f04e5ef movi v15.16b, #0x8f + e40: 4f04e60f movi v15.16b, #0x90 + e44: 4f04e62f movi v15.16b, #0x91 + e48: 4f04e64f movi v15.16b, #0x92 + e4c: 4f04e66f movi v15.16b, #0x93 + e50: 4f04e68f movi v15.16b, #0x94 + e54: 4f04e6af movi v15.16b, #0x95 + e58: 4f04e6cf movi v15.16b, #0x96 + e5c: 4f04e6ef movi v15.16b, #0x97 + e60: 4f04e70f movi v15.16b, #0x98 + e64: 4f04e72f movi v15.16b, #0x99 + e68: 4f04e74f movi v15.16b, #0x9a + e6c: 4f04e76f movi v15.16b, #0x9b + e70: 4f04e78f movi v15.16b, #0x9c + e74: 4f04e7af movi v15.16b, #0x9d + e78: 4f04e7cf movi v15.16b, #0x9e + e7c: 4f04e7ef movi v15.16b, #0x9f + e80: 4f05e40f movi v15.16b, #0xa0 + e84: 4f05e42f movi v15.16b, #0xa1 + e88: 4f05e44f movi v15.16b, #0xa2 + e8c: 4f05e46f movi v15.16b, #0xa3 + e90: 4f05e48f movi v15.16b, #0xa4 + e94: 4f05e4af movi v15.16b, #0xa5 + e98: 4f05e4cf movi v15.16b, #0xa6 + e9c: 4f05e4ef movi v15.16b, #0xa7 + ea0: 4f05e50f movi v15.16b, #0xa8 + ea4: 4f05e52f movi v15.16b, #0xa9 + ea8: 4f05e54f movi v15.16b, #0xaa + eac: 4f05e56f movi v15.16b, #0xab + eb0: 4f05e58f movi v15.16b, #0xac + eb4: 4f05e5af movi v15.16b, #0xad + eb8: 4f05e5cf movi v15.16b, #0xae + ebc: 4f05e5ef movi v15.16b, #0xaf + ec0: 4f05e60f movi v15.16b, #0xb0 + ec4: 4f05e62f movi v15.16b, #0xb1 + ec8: 4f05e64f movi v15.16b, #0xb2 + ecc: 4f05e66f movi v15.16b, #0xb3 + ed0: 4f05e68f movi v15.16b, #0xb4 + ed4: 4f05e6af movi v15.16b, #0xb5 + ed8: 4f05e6cf movi v15.16b, #0xb6 + edc: 4f05e6ef movi v15.16b, #0xb7 + ee0: 4f05e70f movi v15.16b, #0xb8 + ee4: 4f05e72f movi v15.16b, #0xb9 + ee8: 4f05e74f movi v15.16b, #0xba + eec: 4f05e76f movi v15.16b, #0xbb + ef0: 4f05e78f movi v15.16b, #0xbc + ef4: 4f05e7af movi v15.16b, #0xbd + ef8: 4f05e7cf movi v15.16b, #0xbe + efc: 4f05e7ef movi v15.16b, #0xbf + f00: 4f06e40f movi v15.16b, #0xc0 + f04: 4f06e42f movi v15.16b, #0xc1 + f08: 4f06e44f movi v15.16b, #0xc2 + f0c: 4f06e46f movi v15.16b, #0xc3 + f10: 4f06e48f movi v15.16b, #0xc4 + f14: 4f06e4af movi v15.16b, #0xc5 + f18: 4f06e4cf movi v15.16b, #0xc6 + f1c: 4f06e4ef movi v15.16b, #0xc7 + f20: 4f06e50f movi v15.16b, #0xc8 + f24: 4f06e52f movi v15.16b, #0xc9 + f28: 4f06e54f movi v15.16b, #0xca + f2c: 4f06e56f movi v15.16b, #0xcb + f30: 4f06e58f movi v15.16b, #0xcc + f34: 4f06e5af movi v15.16b, #0xcd + f38: 4f06e5cf movi v15.16b, #0xce + f3c: 4f06e5ef movi v15.16b, #0xcf + f40: 4f06e60f movi v15.16b, #0xd0 + f44: 4f06e62f movi v15.16b, #0xd1 + f48: 4f06e64f movi v15.16b, #0xd2 + f4c: 4f06e66f movi v15.16b, #0xd3 + f50: 4f06e68f movi v15.16b, #0xd4 + f54: 4f06e6af movi v15.16b, #0xd5 + f58: 4f06e6cf movi v15.16b, #0xd6 + f5c: 4f06e6ef movi v15.16b, #0xd7 + f60: 4f06e70f movi v15.16b, #0xd8 + f64: 4f06e72f movi v15.16b, #0xd9 + f68: 4f06e74f movi v15.16b, #0xda + f6c: 4f06e76f movi v15.16b, #0xdb + f70: 4f06e78f movi v15.16b, #0xdc + f74: 4f06e7af movi v15.16b, #0xdd + f78: 4f06e7cf movi v15.16b, #0xde + f7c: 4f06e7ef movi v15.16b, #0xdf + f80: 4f07e40f movi v15.16b, #0xe0 + f84: 4f07e42f movi v15.16b, #0xe1 + f88: 4f07e44f movi v15.16b, #0xe2 + f8c: 4f07e46f movi v15.16b, #0xe3 + f90: 4f07e48f movi v15.16b, #0xe4 + f94: 4f07e4af movi v15.16b, #0xe5 + f98: 4f07e4cf movi v15.16b, #0xe6 + f9c: 4f07e4ef movi v15.16b, #0xe7 + fa0: 4f07e50f movi v15.16b, #0xe8 + fa4: 4f07e52f movi v15.16b, #0xe9 + fa8: 4f07e54f movi v15.16b, #0xea + fac: 4f07e56f movi v15.16b, #0xeb + fb0: 4f07e58f movi v15.16b, #0xec + fb4: 4f07e5af movi v15.16b, #0xed + fb8: 4f07e5cf movi v15.16b, #0xee + fbc: 4f07e5ef movi v15.16b, #0xef + fc0: 4f07e60f movi v15.16b, #0xf0 + fc4: 4f07e62f movi v15.16b, #0xf1 + fc8: 4f07e64f movi v15.16b, #0xf2 + fcc: 4f07e66f movi v15.16b, #0xf3 + fd0: 4f07e68f movi v15.16b, #0xf4 + fd4: 4f07e6af movi v15.16b, #0xf5 + fd8: 4f07e6cf movi v15.16b, #0xf6 + fdc: 4f07e6ef movi v15.16b, #0xf7 + fe0: 4f07e70f movi v15.16b, #0xf8 + fe4: 4f07e72f movi v15.16b, #0xf9 + fe8: 4f07e74f movi v15.16b, #0xfa + fec: 4f07e76f movi v15.16b, #0xfb + ff0: 4f07e78f movi v15.16b, #0xfc + ff4: 4f07e7af movi v15.16b, #0xfd + ff8: 4f07e7cf movi v15.16b, #0xfe + ffc: 4f07e7ef movi v15.16b, #0xff + 1000: 0f00c407 movi v7.2s, #0x0, msl #8 + 1004: 0f00c427 movi v7.2s, #0x1, msl #8 + 1008: 0f00c447 movi v7.2s, #0x2, msl #8 + 100c: 0f00c467 movi v7.2s, #0x3, msl #8 + 1010: 0f00c487 movi v7.2s, #0x4, msl #8 + 1014: 0f00c4a7 movi v7.2s, #0x5, msl #8 + 1018: 0f00c4c7 movi v7.2s, #0x6, msl #8 + 101c: 0f00c4e7 movi v7.2s, #0x7, msl #8 + 1020: 0f00c507 movi v7.2s, #0x8, msl #8 + 1024: 0f00c527 movi v7.2s, #0x9, msl #8 + 1028: 0f00c547 movi v7.2s, #0xa, msl #8 + 102c: 0f00c567 movi v7.2s, #0xb, msl #8 + 1030: 0f00c587 movi v7.2s, #0xc, msl #8 + 1034: 0f00c5a7 movi v7.2s, #0xd, msl #8 + 1038: 0f00c5c7 movi v7.2s, #0xe, msl #8 + 103c: 0f00c5e7 movi v7.2s, #0xf, msl #8 + 1040: 0f00c607 movi v7.2s, #0x10, msl #8 + 1044: 0f00c627 movi v7.2s, #0x11, msl #8 + 1048: 0f00c647 movi v7.2s, #0x12, msl #8 + 104c: 0f00c667 movi v7.2s, #0x13, msl #8 + 1050: 0f00c687 movi v7.2s, #0x14, msl #8 + 1054: 0f00c6a7 movi v7.2s, #0x15, msl #8 + 1058: 0f00c6c7 movi v7.2s, #0x16, msl #8 + 105c: 0f00c6e7 movi v7.2s, #0x17, msl #8 + 1060: 0f00c707 movi v7.2s, #0x18, msl #8 + 1064: 0f00c727 movi v7.2s, #0x19, msl #8 + 1068: 0f00c747 movi v7.2s, #0x1a, msl #8 + 106c: 0f00c767 movi v7.2s, #0x1b, msl #8 + 1070: 0f00c787 movi v7.2s, #0x1c, msl #8 + 1074: 0f00c7a7 movi v7.2s, #0x1d, msl #8 + 1078: 0f00c7c7 movi v7.2s, #0x1e, msl #8 + 107c: 0f00c7e7 movi v7.2s, #0x1f, msl #8 + 1080: 0f01c407 movi v7.2s, #0x20, msl #8 + 1084: 0f01c427 movi v7.2s, #0x21, msl #8 + 1088: 0f01c447 movi v7.2s, #0x22, msl #8 + 108c: 0f01c467 movi v7.2s, #0x23, msl #8 + 1090: 0f01c487 movi v7.2s, #0x24, msl #8 + 1094: 0f01c4a7 movi v7.2s, #0x25, msl #8 + 1098: 0f01c4c7 movi v7.2s, #0x26, msl #8 + 109c: 0f01c4e7 movi v7.2s, #0x27, msl #8 + 10a0: 0f01c507 movi v7.2s, #0x28, msl #8 + 10a4: 0f01c527 movi v7.2s, #0x29, msl #8 + 10a8: 0f01c547 movi v7.2s, #0x2a, msl #8 + 10ac: 0f01c567 movi v7.2s, #0x2b, msl #8 + 10b0: 0f01c587 movi v7.2s, #0x2c, msl #8 + 10b4: 0f01c5a7 movi v7.2s, #0x2d, msl #8 + 10b8: 0f01c5c7 movi v7.2s, #0x2e, msl #8 + 10bc: 0f01c5e7 movi v7.2s, #0x2f, msl #8 + 10c0: 0f01c607 movi v7.2s, #0x30, msl #8 + 10c4: 0f01c627 movi v7.2s, #0x31, msl #8 + 10c8: 0f01c647 movi v7.2s, #0x32, msl #8 + 10cc: 0f01c667 movi v7.2s, #0x33, msl #8 + 10d0: 0f01c687 movi v7.2s, #0x34, msl #8 + 10d4: 0f01c6a7 movi v7.2s, #0x35, msl #8 + 10d8: 0f01c6c7 movi v7.2s, #0x36, msl #8 + 10dc: 0f01c6e7 movi v7.2s, #0x37, msl #8 + 10e0: 0f01c707 movi v7.2s, #0x38, msl #8 + 10e4: 0f01c727 movi v7.2s, #0x39, msl #8 + 10e8: 0f01c747 movi v7.2s, #0x3a, msl #8 + 10ec: 0f01c767 movi v7.2s, #0x3b, msl #8 + 10f0: 0f01c787 movi v7.2s, #0x3c, msl #8 + 10f4: 0f01c7a7 movi v7.2s, #0x3d, msl #8 + 10f8: 0f01c7c7 movi v7.2s, #0x3e, msl #8 + 10fc: 0f01c7e7 movi v7.2s, #0x3f, msl #8 + 1100: 0f02c407 movi v7.2s, #0x40, msl #8 + 1104: 0f02c427 movi v7.2s, #0x41, msl #8 + 1108: 0f02c447 movi v7.2s, #0x42, msl #8 + 110c: 0f02c467 movi v7.2s, #0x43, msl #8 + 1110: 0f02c487 movi v7.2s, #0x44, msl #8 + 1114: 0f02c4a7 movi v7.2s, #0x45, msl #8 + 1118: 0f02c4c7 movi v7.2s, #0x46, msl #8 + 111c: 0f02c4e7 movi v7.2s, #0x47, msl #8 + 1120: 0f02c507 movi v7.2s, #0x48, msl #8 + 1124: 0f02c527 movi v7.2s, #0x49, msl #8 + 1128: 0f02c547 movi v7.2s, #0x4a, msl #8 + 112c: 0f02c567 movi v7.2s, #0x4b, msl #8 + 1130: 0f02c587 movi v7.2s, #0x4c, msl #8 + 1134: 0f02c5a7 movi v7.2s, #0x4d, msl #8 + 1138: 0f02c5c7 movi v7.2s, #0x4e, msl #8 + 113c: 0f02c5e7 movi v7.2s, #0x4f, msl #8 + 1140: 0f02c607 movi v7.2s, #0x50, msl #8 + 1144: 0f02c627 movi v7.2s, #0x51, msl #8 + 1148: 0f02c647 movi v7.2s, #0x52, msl #8 + 114c: 0f02c667 movi v7.2s, #0x53, msl #8 + 1150: 0f02c687 movi v7.2s, #0x54, msl #8 + 1154: 0f02c6a7 movi v7.2s, #0x55, msl #8 + 1158: 0f02c6c7 movi v7.2s, #0x56, msl #8 + 115c: 0f02c6e7 movi v7.2s, #0x57, msl #8 + 1160: 0f02c707 movi v7.2s, #0x58, msl #8 + 1164: 0f02c727 movi v7.2s, #0x59, msl #8 + 1168: 0f02c747 movi v7.2s, #0x5a, msl #8 + 116c: 0f02c767 movi v7.2s, #0x5b, msl #8 + 1170: 0f02c787 movi v7.2s, #0x5c, msl #8 + 1174: 0f02c7a7 movi v7.2s, #0x5d, msl #8 + 1178: 0f02c7c7 movi v7.2s, #0x5e, msl #8 + 117c: 0f02c7e7 movi v7.2s, #0x5f, msl #8 + 1180: 0f03c407 movi v7.2s, #0x60, msl #8 + 1184: 0f03c427 movi v7.2s, #0x61, msl #8 + 1188: 0f03c447 movi v7.2s, #0x62, msl #8 + 118c: 0f03c467 movi v7.2s, #0x63, msl #8 + 1190: 0f03c487 movi v7.2s, #0x64, msl #8 + 1194: 0f03c4a7 movi v7.2s, #0x65, msl #8 + 1198: 0f03c4c7 movi v7.2s, #0x66, msl #8 + 119c: 0f03c4e7 movi v7.2s, #0x67, msl #8 + 11a0: 0f03c507 movi v7.2s, #0x68, msl #8 + 11a4: 0f03c527 movi v7.2s, #0x69, msl #8 + 11a8: 0f03c547 movi v7.2s, #0x6a, msl #8 + 11ac: 0f03c567 movi v7.2s, #0x6b, msl #8 + 11b0: 0f03c587 movi v7.2s, #0x6c, msl #8 + 11b4: 0f03c5a7 movi v7.2s, #0x6d, msl #8 + 11b8: 0f03c5c7 movi v7.2s, #0x6e, msl #8 + 11bc: 0f03c5e7 movi v7.2s, #0x6f, msl #8 + 11c0: 0f03c607 movi v7.2s, #0x70, msl #8 + 11c4: 0f03c627 movi v7.2s, #0x71, msl #8 + 11c8: 0f03c647 movi v7.2s, #0x72, msl #8 + 11cc: 0f03c667 movi v7.2s, #0x73, msl #8 + 11d0: 0f03c687 movi v7.2s, #0x74, msl #8 + 11d4: 0f03c6a7 movi v7.2s, #0x75, msl #8 + 11d8: 0f03c6c7 movi v7.2s, #0x76, msl #8 + 11dc: 0f03c6e7 movi v7.2s, #0x77, msl #8 + 11e0: 0f03c707 movi v7.2s, #0x78, msl #8 + 11e4: 0f03c727 movi v7.2s, #0x79, msl #8 + 11e8: 0f03c747 movi v7.2s, #0x7a, msl #8 + 11ec: 0f03c767 movi v7.2s, #0x7b, msl #8 + 11f0: 0f03c787 movi v7.2s, #0x7c, msl #8 + 11f4: 0f03c7a7 movi v7.2s, #0x7d, msl #8 + 11f8: 0f03c7c7 movi v7.2s, #0x7e, msl #8 + 11fc: 0f03c7e7 movi v7.2s, #0x7f, msl #8 + 1200: 0f04c407 movi v7.2s, #0x80, msl #8 + 1204: 0f04c427 movi v7.2s, #0x81, msl #8 + 1208: 0f04c447 movi v7.2s, #0x82, msl #8 + 120c: 0f04c467 movi v7.2s, #0x83, msl #8 + 1210: 0f04c487 movi v7.2s, #0x84, msl #8 + 1214: 0f04c4a7 movi v7.2s, #0x85, msl #8 + 1218: 0f04c4c7 movi v7.2s, #0x86, msl #8 + 121c: 0f04c4e7 movi v7.2s, #0x87, msl #8 + 1220: 0f04c507 movi v7.2s, #0x88, msl #8 + 1224: 0f04c527 movi v7.2s, #0x89, msl #8 + 1228: 0f04c547 movi v7.2s, #0x8a, msl #8 + 122c: 0f04c567 movi v7.2s, #0x8b, msl #8 + 1230: 0f04c587 movi v7.2s, #0x8c, msl #8 + 1234: 0f04c5a7 movi v7.2s, #0x8d, msl #8 + 1238: 0f04c5c7 movi v7.2s, #0x8e, msl #8 + 123c: 0f04c5e7 movi v7.2s, #0x8f, msl #8 + 1240: 0f04c607 movi v7.2s, #0x90, msl #8 + 1244: 0f04c627 movi v7.2s, #0x91, msl #8 + 1248: 0f04c647 movi v7.2s, #0x92, msl #8 + 124c: 0f04c667 movi v7.2s, #0x93, msl #8 + 1250: 0f04c687 movi v7.2s, #0x94, msl #8 + 1254: 0f04c6a7 movi v7.2s, #0x95, msl #8 + 1258: 0f04c6c7 movi v7.2s, #0x96, msl #8 + 125c: 0f04c6e7 movi v7.2s, #0x97, msl #8 + 1260: 0f04c707 movi v7.2s, #0x98, msl #8 + 1264: 0f04c727 movi v7.2s, #0x99, msl #8 + 1268: 0f04c747 movi v7.2s, #0x9a, msl #8 + 126c: 0f04c767 movi v7.2s, #0x9b, msl #8 + 1270: 0f04c787 movi v7.2s, #0x9c, msl #8 + 1274: 0f04c7a7 movi v7.2s, #0x9d, msl #8 + 1278: 0f04c7c7 movi v7.2s, #0x9e, msl #8 + 127c: 0f04c7e7 movi v7.2s, #0x9f, msl #8 + 1280: 0f05c407 movi v7.2s, #0xa0, msl #8 + 1284: 0f05c427 movi v7.2s, #0xa1, msl #8 + 1288: 0f05c447 movi v7.2s, #0xa2, msl #8 + 128c: 0f05c467 movi v7.2s, #0xa3, msl #8 + 1290: 0f05c487 movi v7.2s, #0xa4, msl #8 + 1294: 0f05c4a7 movi v7.2s, #0xa5, msl #8 + 1298: 0f05c4c7 movi v7.2s, #0xa6, msl #8 + 129c: 0f05c4e7 movi v7.2s, #0xa7, msl #8 + 12a0: 0f05c507 movi v7.2s, #0xa8, msl #8 + 12a4: 0f05c527 movi v7.2s, #0xa9, msl #8 + 12a8: 0f05c547 movi v7.2s, #0xaa, msl #8 + 12ac: 0f05c567 movi v7.2s, #0xab, msl #8 + 12b0: 0f05c587 movi v7.2s, #0xac, msl #8 + 12b4: 0f05c5a7 movi v7.2s, #0xad, msl #8 + 12b8: 0f05c5c7 movi v7.2s, #0xae, msl #8 + 12bc: 0f05c5e7 movi v7.2s, #0xaf, msl #8 + 12c0: 0f05c607 movi v7.2s, #0xb0, msl #8 + 12c4: 0f05c627 movi v7.2s, #0xb1, msl #8 + 12c8: 0f05c647 movi v7.2s, #0xb2, msl #8 + 12cc: 0f05c667 movi v7.2s, #0xb3, msl #8 + 12d0: 0f05c687 movi v7.2s, #0xb4, msl #8 + 12d4: 0f05c6a7 movi v7.2s, #0xb5, msl #8 + 12d8: 0f05c6c7 movi v7.2s, #0xb6, msl #8 + 12dc: 0f05c6e7 movi v7.2s, #0xb7, msl #8 + 12e0: 0f05c707 movi v7.2s, #0xb8, msl #8 + 12e4: 0f05c727 movi v7.2s, #0xb9, msl #8 + 12e8: 0f05c747 movi v7.2s, #0xba, msl #8 + 12ec: 0f05c767 movi v7.2s, #0xbb, msl #8 + 12f0: 0f05c787 movi v7.2s, #0xbc, msl #8 + 12f4: 0f05c7a7 movi v7.2s, #0xbd, msl #8 + 12f8: 0f05c7c7 movi v7.2s, #0xbe, msl #8 + 12fc: 0f05c7e7 movi v7.2s, #0xbf, msl #8 + 1300: 0f06c407 movi v7.2s, #0xc0, msl #8 + 1304: 0f06c427 movi v7.2s, #0xc1, msl #8 + 1308: 0f06c447 movi v7.2s, #0xc2, msl #8 + 130c: 0f06c467 movi v7.2s, #0xc3, msl #8 + 1310: 0f06c487 movi v7.2s, #0xc4, msl #8 + 1314: 0f06c4a7 movi v7.2s, #0xc5, msl #8 + 1318: 0f06c4c7 movi v7.2s, #0xc6, msl #8 + 131c: 0f06c4e7 movi v7.2s, #0xc7, msl #8 + 1320: 0f06c507 movi v7.2s, #0xc8, msl #8 + 1324: 0f06c527 movi v7.2s, #0xc9, msl #8 + 1328: 0f06c547 movi v7.2s, #0xca, msl #8 + 132c: 0f06c567 movi v7.2s, #0xcb, msl #8 + 1330: 0f06c587 movi v7.2s, #0xcc, msl #8 + 1334: 0f06c5a7 movi v7.2s, #0xcd, msl #8 + 1338: 0f06c5c7 movi v7.2s, #0xce, msl #8 + 133c: 0f06c5e7 movi v7.2s, #0xcf, msl #8 + 1340: 0f06c607 movi v7.2s, #0xd0, msl #8 + 1344: 0f06c627 movi v7.2s, #0xd1, msl #8 + 1348: 0f06c647 movi v7.2s, #0xd2, msl #8 + 134c: 0f06c667 movi v7.2s, #0xd3, msl #8 + 1350: 0f06c687 movi v7.2s, #0xd4, msl #8 + 1354: 0f06c6a7 movi v7.2s, #0xd5, msl #8 + 1358: 0f06c6c7 movi v7.2s, #0xd6, msl #8 + 135c: 0f06c6e7 movi v7.2s, #0xd7, msl #8 + 1360: 0f06c707 movi v7.2s, #0xd8, msl #8 + 1364: 0f06c727 movi v7.2s, #0xd9, msl #8 + 1368: 0f06c747 movi v7.2s, #0xda, msl #8 + 136c: 0f06c767 movi v7.2s, #0xdb, msl #8 + 1370: 0f06c787 movi v7.2s, #0xdc, msl #8 + 1374: 0f06c7a7 movi v7.2s, #0xdd, msl #8 + 1378: 0f06c7c7 movi v7.2s, #0xde, msl #8 + 137c: 0f06c7e7 movi v7.2s, #0xdf, msl #8 + 1380: 0f07c407 movi v7.2s, #0xe0, msl #8 + 1384: 0f07c427 movi v7.2s, #0xe1, msl #8 + 1388: 0f07c447 movi v7.2s, #0xe2, msl #8 + 138c: 0f07c467 movi v7.2s, #0xe3, msl #8 + 1390: 0f07c487 movi v7.2s, #0xe4, msl #8 + 1394: 0f07c4a7 movi v7.2s, #0xe5, msl #8 + 1398: 0f07c4c7 movi v7.2s, #0xe6, msl #8 + 139c: 0f07c4e7 movi v7.2s, #0xe7, msl #8 + 13a0: 0f07c507 movi v7.2s, #0xe8, msl #8 + 13a4: 0f07c527 movi v7.2s, #0xe9, msl #8 + 13a8: 0f07c547 movi v7.2s, #0xea, msl #8 + 13ac: 0f07c567 movi v7.2s, #0xeb, msl #8 + 13b0: 0f07c587 movi v7.2s, #0xec, msl #8 + 13b4: 0f07c5a7 movi v7.2s, #0xed, msl #8 + 13b8: 0f07c5c7 movi v7.2s, #0xee, msl #8 + 13bc: 0f07c5e7 movi v7.2s, #0xef, msl #8 + 13c0: 0f07c607 movi v7.2s, #0xf0, msl #8 + 13c4: 0f07c627 movi v7.2s, #0xf1, msl #8 + 13c8: 0f07c647 movi v7.2s, #0xf2, msl #8 + 13cc: 0f07c667 movi v7.2s, #0xf3, msl #8 + 13d0: 0f07c687 movi v7.2s, #0xf4, msl #8 + 13d4: 0f07c6a7 movi v7.2s, #0xf5, msl #8 + 13d8: 0f07c6c7 movi v7.2s, #0xf6, msl #8 + 13dc: 0f07c6e7 movi v7.2s, #0xf7, msl #8 + 13e0: 0f07c707 movi v7.2s, #0xf8, msl #8 + 13e4: 0f07c727 movi v7.2s, #0xf9, msl #8 + 13e8: 0f07c747 movi v7.2s, #0xfa, msl #8 + 13ec: 0f07c767 movi v7.2s, #0xfb, msl #8 + 13f0: 0f07c787 movi v7.2s, #0xfc, msl #8 + 13f4: 0f07c7a7 movi v7.2s, #0xfd, msl #8 + 13f8: 0f07c7c7 movi v7.2s, #0xfe, msl #8 + 13fc: 0f07c7e7 movi v7.2s, #0xff, msl #8 + 1400: 0f00d407 movi v7.2s, #0x0, msl #16 + 1404: 0f00d427 movi v7.2s, #0x1, msl #16 + 1408: 0f00d447 movi v7.2s, #0x2, msl #16 + 140c: 0f00d467 movi v7.2s, #0x3, msl #16 + 1410: 0f00d487 movi v7.2s, #0x4, msl #16 + 1414: 0f00d4a7 movi v7.2s, #0x5, msl #16 + 1418: 0f00d4c7 movi v7.2s, #0x6, msl #16 + 141c: 0f00d4e7 movi v7.2s, #0x7, msl #16 + 1420: 0f00d507 movi v7.2s, #0x8, msl #16 + 1424: 0f00d527 movi v7.2s, #0x9, msl #16 + 1428: 0f00d547 movi v7.2s, #0xa, msl #16 + 142c: 0f00d567 movi v7.2s, #0xb, msl #16 + 1430: 0f00d587 movi v7.2s, #0xc, msl #16 + 1434: 0f00d5a7 movi v7.2s, #0xd, msl #16 + 1438: 0f00d5c7 movi v7.2s, #0xe, msl #16 + 143c: 0f00d5e7 movi v7.2s, #0xf, msl #16 + 1440: 0f00d607 movi v7.2s, #0x10, msl #16 + 1444: 0f00d627 movi v7.2s, #0x11, msl #16 + 1448: 0f00d647 movi v7.2s, #0x12, msl #16 + 144c: 0f00d667 movi v7.2s, #0x13, msl #16 + 1450: 0f00d687 movi v7.2s, #0x14, msl #16 + 1454: 0f00d6a7 movi v7.2s, #0x15, msl #16 + 1458: 0f00d6c7 movi v7.2s, #0x16, msl #16 + 145c: 0f00d6e7 movi v7.2s, #0x17, msl #16 + 1460: 0f00d707 movi v7.2s, #0x18, msl #16 + 1464: 0f00d727 movi v7.2s, #0x19, msl #16 + 1468: 0f00d747 movi v7.2s, #0x1a, msl #16 + 146c: 0f00d767 movi v7.2s, #0x1b, msl #16 + 1470: 0f00d787 movi v7.2s, #0x1c, msl #16 + 1474: 0f00d7a7 movi v7.2s, #0x1d, msl #16 + 1478: 0f00d7c7 movi v7.2s, #0x1e, msl #16 + 147c: 0f00d7e7 movi v7.2s, #0x1f, msl #16 + 1480: 0f01d407 movi v7.2s, #0x20, msl #16 + 1484: 0f01d427 movi v7.2s, #0x21, msl #16 + 1488: 0f01d447 movi v7.2s, #0x22, msl #16 + 148c: 0f01d467 movi v7.2s, #0x23, msl #16 + 1490: 0f01d487 movi v7.2s, #0x24, msl #16 + 1494: 0f01d4a7 movi v7.2s, #0x25, msl #16 + 1498: 0f01d4c7 movi v7.2s, #0x26, msl #16 + 149c: 0f01d4e7 movi v7.2s, #0x27, msl #16 + 14a0: 0f01d507 movi v7.2s, #0x28, msl #16 + 14a4: 0f01d527 movi v7.2s, #0x29, msl #16 + 14a8: 0f01d547 movi v7.2s, #0x2a, msl #16 + 14ac: 0f01d567 movi v7.2s, #0x2b, msl #16 + 14b0: 0f01d587 movi v7.2s, #0x2c, msl #16 + 14b4: 0f01d5a7 movi v7.2s, #0x2d, msl #16 + 14b8: 0f01d5c7 movi v7.2s, #0x2e, msl #16 + 14bc: 0f01d5e7 movi v7.2s, #0x2f, msl #16 + 14c0: 0f01d607 movi v7.2s, #0x30, msl #16 + 14c4: 0f01d627 movi v7.2s, #0x31, msl #16 + 14c8: 0f01d647 movi v7.2s, #0x32, msl #16 + 14cc: 0f01d667 movi v7.2s, #0x33, msl #16 + 14d0: 0f01d687 movi v7.2s, #0x34, msl #16 + 14d4: 0f01d6a7 movi v7.2s, #0x35, msl #16 + 14d8: 0f01d6c7 movi v7.2s, #0x36, msl #16 + 14dc: 0f01d6e7 movi v7.2s, #0x37, msl #16 + 14e0: 0f01d707 movi v7.2s, #0x38, msl #16 + 14e4: 0f01d727 movi v7.2s, #0x39, msl #16 + 14e8: 0f01d747 movi v7.2s, #0x3a, msl #16 + 14ec: 0f01d767 movi v7.2s, #0x3b, msl #16 + 14f0: 0f01d787 movi v7.2s, #0x3c, msl #16 + 14f4: 0f01d7a7 movi v7.2s, #0x3d, msl #16 + 14f8: 0f01d7c7 movi v7.2s, #0x3e, msl #16 + 14fc: 0f01d7e7 movi v7.2s, #0x3f, msl #16 + 1500: 0f02d407 movi v7.2s, #0x40, msl #16 + 1504: 0f02d427 movi v7.2s, #0x41, msl #16 + 1508: 0f02d447 movi v7.2s, #0x42, msl #16 + 150c: 0f02d467 movi v7.2s, #0x43, msl #16 + 1510: 0f02d487 movi v7.2s, #0x44, msl #16 + 1514: 0f02d4a7 movi v7.2s, #0x45, msl #16 + 1518: 0f02d4c7 movi v7.2s, #0x46, msl #16 + 151c: 0f02d4e7 movi v7.2s, #0x47, msl #16 + 1520: 0f02d507 movi v7.2s, #0x48, msl #16 + 1524: 0f02d527 movi v7.2s, #0x49, msl #16 + 1528: 0f02d547 movi v7.2s, #0x4a, msl #16 + 152c: 0f02d567 movi v7.2s, #0x4b, msl #16 + 1530: 0f02d587 movi v7.2s, #0x4c, msl #16 + 1534: 0f02d5a7 movi v7.2s, #0x4d, msl #16 + 1538: 0f02d5c7 movi v7.2s, #0x4e, msl #16 + 153c: 0f02d5e7 movi v7.2s, #0x4f, msl #16 + 1540: 0f02d607 movi v7.2s, #0x50, msl #16 + 1544: 0f02d627 movi v7.2s, #0x51, msl #16 + 1548: 0f02d647 movi v7.2s, #0x52, msl #16 + 154c: 0f02d667 movi v7.2s, #0x53, msl #16 + 1550: 0f02d687 movi v7.2s, #0x54, msl #16 + 1554: 0f02d6a7 movi v7.2s, #0x55, msl #16 + 1558: 0f02d6c7 movi v7.2s, #0x56, msl #16 + 155c: 0f02d6e7 movi v7.2s, #0x57, msl #16 + 1560: 0f02d707 movi v7.2s, #0x58, msl #16 + 1564: 0f02d727 movi v7.2s, #0x59, msl #16 + 1568: 0f02d747 movi v7.2s, #0x5a, msl #16 + 156c: 0f02d767 movi v7.2s, #0x5b, msl #16 + 1570: 0f02d787 movi v7.2s, #0x5c, msl #16 + 1574: 0f02d7a7 movi v7.2s, #0x5d, msl #16 + 1578: 0f02d7c7 movi v7.2s, #0x5e, msl #16 + 157c: 0f02d7e7 movi v7.2s, #0x5f, msl #16 + 1580: 0f03d407 movi v7.2s, #0x60, msl #16 + 1584: 0f03d427 movi v7.2s, #0x61, msl #16 + 1588: 0f03d447 movi v7.2s, #0x62, msl #16 + 158c: 0f03d467 movi v7.2s, #0x63, msl #16 + 1590: 0f03d487 movi v7.2s, #0x64, msl #16 + 1594: 0f03d4a7 movi v7.2s, #0x65, msl #16 + 1598: 0f03d4c7 movi v7.2s, #0x66, msl #16 + 159c: 0f03d4e7 movi v7.2s, #0x67, msl #16 + 15a0: 0f03d507 movi v7.2s, #0x68, msl #16 + 15a4: 0f03d527 movi v7.2s, #0x69, msl #16 + 15a8: 0f03d547 movi v7.2s, #0x6a, msl #16 + 15ac: 0f03d567 movi v7.2s, #0x6b, msl #16 + 15b0: 0f03d587 movi v7.2s, #0x6c, msl #16 + 15b4: 0f03d5a7 movi v7.2s, #0x6d, msl #16 + 15b8: 0f03d5c7 movi v7.2s, #0x6e, msl #16 + 15bc: 0f03d5e7 movi v7.2s, #0x6f, msl #16 + 15c0: 0f03d607 movi v7.2s, #0x70, msl #16 + 15c4: 0f03d627 movi v7.2s, #0x71, msl #16 + 15c8: 0f03d647 movi v7.2s, #0x72, msl #16 + 15cc: 0f03d667 movi v7.2s, #0x73, msl #16 + 15d0: 0f03d687 movi v7.2s, #0x74, msl #16 + 15d4: 0f03d6a7 movi v7.2s, #0x75, msl #16 + 15d8: 0f03d6c7 movi v7.2s, #0x76, msl #16 + 15dc: 0f03d6e7 movi v7.2s, #0x77, msl #16 + 15e0: 0f03d707 movi v7.2s, #0x78, msl #16 + 15e4: 0f03d727 movi v7.2s, #0x79, msl #16 + 15e8: 0f03d747 movi v7.2s, #0x7a, msl #16 + 15ec: 0f03d767 movi v7.2s, #0x7b, msl #16 + 15f0: 0f03d787 movi v7.2s, #0x7c, msl #16 + 15f4: 0f03d7a7 movi v7.2s, #0x7d, msl #16 + 15f8: 0f03d7c7 movi v7.2s, #0x7e, msl #16 + 15fc: 0f03d7e7 movi v7.2s, #0x7f, msl #16 + 1600: 0f04d407 movi v7.2s, #0x80, msl #16 + 1604: 0f04d427 movi v7.2s, #0x81, msl #16 + 1608: 0f04d447 movi v7.2s, #0x82, msl #16 + 160c: 0f04d467 movi v7.2s, #0x83, msl #16 + 1610: 0f04d487 movi v7.2s, #0x84, msl #16 + 1614: 0f04d4a7 movi v7.2s, #0x85, msl #16 + 1618: 0f04d4c7 movi v7.2s, #0x86, msl #16 + 161c: 0f04d4e7 movi v7.2s, #0x87, msl #16 + 1620: 0f04d507 movi v7.2s, #0x88, msl #16 + 1624: 0f04d527 movi v7.2s, #0x89, msl #16 + 1628: 0f04d547 movi v7.2s, #0x8a, msl #16 + 162c: 0f04d567 movi v7.2s, #0x8b, msl #16 + 1630: 0f04d587 movi v7.2s, #0x8c, msl #16 + 1634: 0f04d5a7 movi v7.2s, #0x8d, msl #16 + 1638: 0f04d5c7 movi v7.2s, #0x8e, msl #16 + 163c: 0f04d5e7 movi v7.2s, #0x8f, msl #16 + 1640: 0f04d607 movi v7.2s, #0x90, msl #16 + 1644: 0f04d627 movi v7.2s, #0x91, msl #16 + 1648: 0f04d647 movi v7.2s, #0x92, msl #16 + 164c: 0f04d667 movi v7.2s, #0x93, msl #16 + 1650: 0f04d687 movi v7.2s, #0x94, msl #16 + 1654: 0f04d6a7 movi v7.2s, #0x95, msl #16 + 1658: 0f04d6c7 movi v7.2s, #0x96, msl #16 + 165c: 0f04d6e7 movi v7.2s, #0x97, msl #16 + 1660: 0f04d707 movi v7.2s, #0x98, msl #16 + 1664: 0f04d727 movi v7.2s, #0x99, msl #16 + 1668: 0f04d747 movi v7.2s, #0x9a, msl #16 + 166c: 0f04d767 movi v7.2s, #0x9b, msl #16 + 1670: 0f04d787 movi v7.2s, #0x9c, msl #16 + 1674: 0f04d7a7 movi v7.2s, #0x9d, msl #16 + 1678: 0f04d7c7 movi v7.2s, #0x9e, msl #16 + 167c: 0f04d7e7 movi v7.2s, #0x9f, msl #16 + 1680: 0f05d407 movi v7.2s, #0xa0, msl #16 + 1684: 0f05d427 movi v7.2s, #0xa1, msl #16 + 1688: 0f05d447 movi v7.2s, #0xa2, msl #16 + 168c: 0f05d467 movi v7.2s, #0xa3, msl #16 + 1690: 0f05d487 movi v7.2s, #0xa4, msl #16 + 1694: 0f05d4a7 movi v7.2s, #0xa5, msl #16 + 1698: 0f05d4c7 movi v7.2s, #0xa6, msl #16 + 169c: 0f05d4e7 movi v7.2s, #0xa7, msl #16 + 16a0: 0f05d507 movi v7.2s, #0xa8, msl #16 + 16a4: 0f05d527 movi v7.2s, #0xa9, msl #16 + 16a8: 0f05d547 movi v7.2s, #0xaa, msl #16 + 16ac: 0f05d567 movi v7.2s, #0xab, msl #16 + 16b0: 0f05d587 movi v7.2s, #0xac, msl #16 + 16b4: 0f05d5a7 movi v7.2s, #0xad, msl #16 + 16b8: 0f05d5c7 movi v7.2s, #0xae, msl #16 + 16bc: 0f05d5e7 movi v7.2s, #0xaf, msl #16 + 16c0: 0f05d607 movi v7.2s, #0xb0, msl #16 + 16c4: 0f05d627 movi v7.2s, #0xb1, msl #16 + 16c8: 0f05d647 movi v7.2s, #0xb2, msl #16 + 16cc: 0f05d667 movi v7.2s, #0xb3, msl #16 + 16d0: 0f05d687 movi v7.2s, #0xb4, msl #16 + 16d4: 0f05d6a7 movi v7.2s, #0xb5, msl #16 + 16d8: 0f05d6c7 movi v7.2s, #0xb6, msl #16 + 16dc: 0f05d6e7 movi v7.2s, #0xb7, msl #16 + 16e0: 0f05d707 movi v7.2s, #0xb8, msl #16 + 16e4: 0f05d727 movi v7.2s, #0xb9, msl #16 + 16e8: 0f05d747 movi v7.2s, #0xba, msl #16 + 16ec: 0f05d767 movi v7.2s, #0xbb, msl #16 + 16f0: 0f05d787 movi v7.2s, #0xbc, msl #16 + 16f4: 0f05d7a7 movi v7.2s, #0xbd, msl #16 + 16f8: 0f05d7c7 movi v7.2s, #0xbe, msl #16 + 16fc: 0f05d7e7 movi v7.2s, #0xbf, msl #16 + 1700: 0f06d407 movi v7.2s, #0xc0, msl #16 + 1704: 0f06d427 movi v7.2s, #0xc1, msl #16 + 1708: 0f06d447 movi v7.2s, #0xc2, msl #16 + 170c: 0f06d467 movi v7.2s, #0xc3, msl #16 + 1710: 0f06d487 movi v7.2s, #0xc4, msl #16 + 1714: 0f06d4a7 movi v7.2s, #0xc5, msl #16 + 1718: 0f06d4c7 movi v7.2s, #0xc6, msl #16 + 171c: 0f06d4e7 movi v7.2s, #0xc7, msl #16 + 1720: 0f06d507 movi v7.2s, #0xc8, msl #16 + 1724: 0f06d527 movi v7.2s, #0xc9, msl #16 + 1728: 0f06d547 movi v7.2s, #0xca, msl #16 + 172c: 0f06d567 movi v7.2s, #0xcb, msl #16 + 1730: 0f06d587 movi v7.2s, #0xcc, msl #16 + 1734: 0f06d5a7 movi v7.2s, #0xcd, msl #16 + 1738: 0f06d5c7 movi v7.2s, #0xce, msl #16 + 173c: 0f06d5e7 movi v7.2s, #0xcf, msl #16 + 1740: 0f06d607 movi v7.2s, #0xd0, msl #16 + 1744: 0f06d627 movi v7.2s, #0xd1, msl #16 + 1748: 0f06d647 movi v7.2s, #0xd2, msl #16 + 174c: 0f06d667 movi v7.2s, #0xd3, msl #16 + 1750: 0f06d687 movi v7.2s, #0xd4, msl #16 + 1754: 0f06d6a7 movi v7.2s, #0xd5, msl #16 + 1758: 0f06d6c7 movi v7.2s, #0xd6, msl #16 + 175c: 0f06d6e7 movi v7.2s, #0xd7, msl #16 + 1760: 0f06d707 movi v7.2s, #0xd8, msl #16 + 1764: 0f06d727 movi v7.2s, #0xd9, msl #16 + 1768: 0f06d747 movi v7.2s, #0xda, msl #16 + 176c: 0f06d767 movi v7.2s, #0xdb, msl #16 + 1770: 0f06d787 movi v7.2s, #0xdc, msl #16 + 1774: 0f06d7a7 movi v7.2s, #0xdd, msl #16 + 1778: 0f06d7c7 movi v7.2s, #0xde, msl #16 + 177c: 0f06d7e7 movi v7.2s, #0xdf, msl #16 + 1780: 0f07d407 movi v7.2s, #0xe0, msl #16 + 1784: 0f07d427 movi v7.2s, #0xe1, msl #16 + 1788: 0f07d447 movi v7.2s, #0xe2, msl #16 + 178c: 0f07d467 movi v7.2s, #0xe3, msl #16 + 1790: 0f07d487 movi v7.2s, #0xe4, msl #16 + 1794: 0f07d4a7 movi v7.2s, #0xe5, msl #16 + 1798: 0f07d4c7 movi v7.2s, #0xe6, msl #16 + 179c: 0f07d4e7 movi v7.2s, #0xe7, msl #16 + 17a0: 0f07d507 movi v7.2s, #0xe8, msl #16 + 17a4: 0f07d527 movi v7.2s, #0xe9, msl #16 + 17a8: 0f07d547 movi v7.2s, #0xea, msl #16 + 17ac: 0f07d567 movi v7.2s, #0xeb, msl #16 + 17b0: 0f07d587 movi v7.2s, #0xec, msl #16 + 17b4: 0f07d5a7 movi v7.2s, #0xed, msl #16 + 17b8: 0f07d5c7 movi v7.2s, #0xee, msl #16 + 17bc: 0f07d5e7 movi v7.2s, #0xef, msl #16 + 17c0: 0f07d607 movi v7.2s, #0xf0, msl #16 + 17c4: 0f07d627 movi v7.2s, #0xf1, msl #16 + 17c8: 0f07d647 movi v7.2s, #0xf2, msl #16 + 17cc: 0f07d667 movi v7.2s, #0xf3, msl #16 + 17d0: 0f07d687 movi v7.2s, #0xf4, msl #16 + 17d4: 0f07d6a7 movi v7.2s, #0xf5, msl #16 + 17d8: 0f07d6c7 movi v7.2s, #0xf6, msl #16 + 17dc: 0f07d6e7 movi v7.2s, #0xf7, msl #16 + 17e0: 0f07d707 movi v7.2s, #0xf8, msl #16 + 17e4: 0f07d727 movi v7.2s, #0xf9, msl #16 + 17e8: 0f07d747 movi v7.2s, #0xfa, msl #16 + 17ec: 0f07d767 movi v7.2s, #0xfb, msl #16 + 17f0: 0f07d787 movi v7.2s, #0xfc, msl #16 + 17f4: 0f07d7a7 movi v7.2s, #0xfd, msl #16 + 17f8: 0f07d7c7 movi v7.2s, #0xfe, msl #16 + 17fc: 0f07d7e7 movi v7.2s, #0xff, msl #16 + 1800: 4f00c407 movi v7.4s, #0x0, msl #8 + 1804: 4f00c427 movi v7.4s, #0x1, msl #8 + 1808: 4f00c447 movi v7.4s, #0x2, msl #8 + 180c: 4f00c467 movi v7.4s, #0x3, msl #8 + 1810: 4f00c487 movi v7.4s, #0x4, msl #8 + 1814: 4f00c4a7 movi v7.4s, #0x5, msl #8 + 1818: 4f00c4c7 movi v7.4s, #0x6, msl #8 + 181c: 4f00c4e7 movi v7.4s, #0x7, msl #8 + 1820: 4f00c507 movi v7.4s, #0x8, msl #8 + 1824: 4f00c527 movi v7.4s, #0x9, msl #8 + 1828: 4f00c547 movi v7.4s, #0xa, msl #8 + 182c: 4f00c567 movi v7.4s, #0xb, msl #8 + 1830: 4f00c587 movi v7.4s, #0xc, msl #8 + 1834: 4f00c5a7 movi v7.4s, #0xd, msl #8 + 1838: 4f00c5c7 movi v7.4s, #0xe, msl #8 + 183c: 4f00c5e7 movi v7.4s, #0xf, msl #8 + 1840: 4f00c607 movi v7.4s, #0x10, msl #8 + 1844: 4f00c627 movi v7.4s, #0x11, msl #8 + 1848: 4f00c647 movi v7.4s, #0x12, msl #8 + 184c: 4f00c667 movi v7.4s, #0x13, msl #8 + 1850: 4f00c687 movi v7.4s, #0x14, msl #8 + 1854: 4f00c6a7 movi v7.4s, #0x15, msl #8 + 1858: 4f00c6c7 movi v7.4s, #0x16, msl #8 + 185c: 4f00c6e7 movi v7.4s, #0x17, msl #8 + 1860: 4f00c707 movi v7.4s, #0x18, msl #8 + 1864: 4f00c727 movi v7.4s, #0x19, msl #8 + 1868: 4f00c747 movi v7.4s, #0x1a, msl #8 + 186c: 4f00c767 movi v7.4s, #0x1b, msl #8 + 1870: 4f00c787 movi v7.4s, #0x1c, msl #8 + 1874: 4f00c7a7 movi v7.4s, #0x1d, msl #8 + 1878: 4f00c7c7 movi v7.4s, #0x1e, msl #8 + 187c: 4f00c7e7 movi v7.4s, #0x1f, msl #8 + 1880: 4f01c407 movi v7.4s, #0x20, msl #8 + 1884: 4f01c427 movi v7.4s, #0x21, msl #8 + 1888: 4f01c447 movi v7.4s, #0x22, msl #8 + 188c: 4f01c467 movi v7.4s, #0x23, msl #8 + 1890: 4f01c487 movi v7.4s, #0x24, msl #8 + 1894: 4f01c4a7 movi v7.4s, #0x25, msl #8 + 1898: 4f01c4c7 movi v7.4s, #0x26, msl #8 + 189c: 4f01c4e7 movi v7.4s, #0x27, msl #8 + 18a0: 4f01c507 movi v7.4s, #0x28, msl #8 + 18a4: 4f01c527 movi v7.4s, #0x29, msl #8 + 18a8: 4f01c547 movi v7.4s, #0x2a, msl #8 + 18ac: 4f01c567 movi v7.4s, #0x2b, msl #8 + 18b0: 4f01c587 movi v7.4s, #0x2c, msl #8 + 18b4: 4f01c5a7 movi v7.4s, #0x2d, msl #8 + 18b8: 4f01c5c7 movi v7.4s, #0x2e, msl #8 + 18bc: 4f01c5e7 movi v7.4s, #0x2f, msl #8 + 18c0: 4f01c607 movi v7.4s, #0x30, msl #8 + 18c4: 4f01c627 movi v7.4s, #0x31, msl #8 + 18c8: 4f01c647 movi v7.4s, #0x32, msl #8 + 18cc: 4f01c667 movi v7.4s, #0x33, msl #8 + 18d0: 4f01c687 movi v7.4s, #0x34, msl #8 + 18d4: 4f01c6a7 movi v7.4s, #0x35, msl #8 + 18d8: 4f01c6c7 movi v7.4s, #0x36, msl #8 + 18dc: 4f01c6e7 movi v7.4s, #0x37, msl #8 + 18e0: 4f01c707 movi v7.4s, #0x38, msl #8 + 18e4: 4f01c727 movi v7.4s, #0x39, msl #8 + 18e8: 4f01c747 movi v7.4s, #0x3a, msl #8 + 18ec: 4f01c767 movi v7.4s, #0x3b, msl #8 + 18f0: 4f01c787 movi v7.4s, #0x3c, msl #8 + 18f4: 4f01c7a7 movi v7.4s, #0x3d, msl #8 + 18f8: 4f01c7c7 movi v7.4s, #0x3e, msl #8 + 18fc: 4f01c7e7 movi v7.4s, #0x3f, msl #8 + 1900: 4f02c407 movi v7.4s, #0x40, msl #8 + 1904: 4f02c427 movi v7.4s, #0x41, msl #8 + 1908: 4f02c447 movi v7.4s, #0x42, msl #8 + 190c: 4f02c467 movi v7.4s, #0x43, msl #8 + 1910: 4f02c487 movi v7.4s, #0x44, msl #8 + 1914: 4f02c4a7 movi v7.4s, #0x45, msl #8 + 1918: 4f02c4c7 movi v7.4s, #0x46, msl #8 + 191c: 4f02c4e7 movi v7.4s, #0x47, msl #8 + 1920: 4f02c507 movi v7.4s, #0x48, msl #8 + 1924: 4f02c527 movi v7.4s, #0x49, msl #8 + 1928: 4f02c547 movi v7.4s, #0x4a, msl #8 + 192c: 4f02c567 movi v7.4s, #0x4b, msl #8 + 1930: 4f02c587 movi v7.4s, #0x4c, msl #8 + 1934: 4f02c5a7 movi v7.4s, #0x4d, msl #8 + 1938: 4f02c5c7 movi v7.4s, #0x4e, msl #8 + 193c: 4f02c5e7 movi v7.4s, #0x4f, msl #8 + 1940: 4f02c607 movi v7.4s, #0x50, msl #8 + 1944: 4f02c627 movi v7.4s, #0x51, msl #8 + 1948: 4f02c647 movi v7.4s, #0x52, msl #8 + 194c: 4f02c667 movi v7.4s, #0x53, msl #8 + 1950: 4f02c687 movi v7.4s, #0x54, msl #8 + 1954: 4f02c6a7 movi v7.4s, #0x55, msl #8 + 1958: 4f02c6c7 movi v7.4s, #0x56, msl #8 + 195c: 4f02c6e7 movi v7.4s, #0x57, msl #8 + 1960: 4f02c707 movi v7.4s, #0x58, msl #8 + 1964: 4f02c727 movi v7.4s, #0x59, msl #8 + 1968: 4f02c747 movi v7.4s, #0x5a, msl #8 + 196c: 4f02c767 movi v7.4s, #0x5b, msl #8 + 1970: 4f02c787 movi v7.4s, #0x5c, msl #8 + 1974: 4f02c7a7 movi v7.4s, #0x5d, msl #8 + 1978: 4f02c7c7 movi v7.4s, #0x5e, msl #8 + 197c: 4f02c7e7 movi v7.4s, #0x5f, msl #8 + 1980: 4f03c407 movi v7.4s, #0x60, msl #8 + 1984: 4f03c427 movi v7.4s, #0x61, msl #8 + 1988: 4f03c447 movi v7.4s, #0x62, msl #8 + 198c: 4f03c467 movi v7.4s, #0x63, msl #8 + 1990: 4f03c487 movi v7.4s, #0x64, msl #8 + 1994: 4f03c4a7 movi v7.4s, #0x65, msl #8 + 1998: 4f03c4c7 movi v7.4s, #0x66, msl #8 + 199c: 4f03c4e7 movi v7.4s, #0x67, msl #8 + 19a0: 4f03c507 movi v7.4s, #0x68, msl #8 + 19a4: 4f03c527 movi v7.4s, #0x69, msl #8 + 19a8: 4f03c547 movi v7.4s, #0x6a, msl #8 + 19ac: 4f03c567 movi v7.4s, #0x6b, msl #8 + 19b0: 4f03c587 movi v7.4s, #0x6c, msl #8 + 19b4: 4f03c5a7 movi v7.4s, #0x6d, msl #8 + 19b8: 4f03c5c7 movi v7.4s, #0x6e, msl #8 + 19bc: 4f03c5e7 movi v7.4s, #0x6f, msl #8 + 19c0: 4f03c607 movi v7.4s, #0x70, msl #8 + 19c4: 4f03c627 movi v7.4s, #0x71, msl #8 + 19c8: 4f03c647 movi v7.4s, #0x72, msl #8 + 19cc: 4f03c667 movi v7.4s, #0x73, msl #8 + 19d0: 4f03c687 movi v7.4s, #0x74, msl #8 + 19d4: 4f03c6a7 movi v7.4s, #0x75, msl #8 + 19d8: 4f03c6c7 movi v7.4s, #0x76, msl #8 + 19dc: 4f03c6e7 movi v7.4s, #0x77, msl #8 + 19e0: 4f03c707 movi v7.4s, #0x78, msl #8 + 19e4: 4f03c727 movi v7.4s, #0x79, msl #8 + 19e8: 4f03c747 movi v7.4s, #0x7a, msl #8 + 19ec: 4f03c767 movi v7.4s, #0x7b, msl #8 + 19f0: 4f03c787 movi v7.4s, #0x7c, msl #8 + 19f4: 4f03c7a7 movi v7.4s, #0x7d, msl #8 + 19f8: 4f03c7c7 movi v7.4s, #0x7e, msl #8 + 19fc: 4f03c7e7 movi v7.4s, #0x7f, msl #8 + 1a00: 4f04c407 movi v7.4s, #0x80, msl #8 + 1a04: 4f04c427 movi v7.4s, #0x81, msl #8 + 1a08: 4f04c447 movi v7.4s, #0x82, msl #8 + 1a0c: 4f04c467 movi v7.4s, #0x83, msl #8 + 1a10: 4f04c487 movi v7.4s, #0x84, msl #8 + 1a14: 4f04c4a7 movi v7.4s, #0x85, msl #8 + 1a18: 4f04c4c7 movi v7.4s, #0x86, msl #8 + 1a1c: 4f04c4e7 movi v7.4s, #0x87, msl #8 + 1a20: 4f04c507 movi v7.4s, #0x88, msl #8 + 1a24: 4f04c527 movi v7.4s, #0x89, msl #8 + 1a28: 4f04c547 movi v7.4s, #0x8a, msl #8 + 1a2c: 4f04c567 movi v7.4s, #0x8b, msl #8 + 1a30: 4f04c587 movi v7.4s, #0x8c, msl #8 + 1a34: 4f04c5a7 movi v7.4s, #0x8d, msl #8 + 1a38: 4f04c5c7 movi v7.4s, #0x8e, msl #8 + 1a3c: 4f04c5e7 movi v7.4s, #0x8f, msl #8 + 1a40: 4f04c607 movi v7.4s, #0x90, msl #8 + 1a44: 4f04c627 movi v7.4s, #0x91, msl #8 + 1a48: 4f04c647 movi v7.4s, #0x92, msl #8 + 1a4c: 4f04c667 movi v7.4s, #0x93, msl #8 + 1a50: 4f04c687 movi v7.4s, #0x94, msl #8 + 1a54: 4f04c6a7 movi v7.4s, #0x95, msl #8 + 1a58: 4f04c6c7 movi v7.4s, #0x96, msl #8 + 1a5c: 4f04c6e7 movi v7.4s, #0x97, msl #8 + 1a60: 4f04c707 movi v7.4s, #0x98, msl #8 + 1a64: 4f04c727 movi v7.4s, #0x99, msl #8 + 1a68: 4f04c747 movi v7.4s, #0x9a, msl #8 + 1a6c: 4f04c767 movi v7.4s, #0x9b, msl #8 + 1a70: 4f04c787 movi v7.4s, #0x9c, msl #8 + 1a74: 4f04c7a7 movi v7.4s, #0x9d, msl #8 + 1a78: 4f04c7c7 movi v7.4s, #0x9e, msl #8 + 1a7c: 4f04c7e7 movi v7.4s, #0x9f, msl #8 + 1a80: 4f05c407 movi v7.4s, #0xa0, msl #8 + 1a84: 4f05c427 movi v7.4s, #0xa1, msl #8 + 1a88: 4f05c447 movi v7.4s, #0xa2, msl #8 + 1a8c: 4f05c467 movi v7.4s, #0xa3, msl #8 + 1a90: 4f05c487 movi v7.4s, #0xa4, msl #8 + 1a94: 4f05c4a7 movi v7.4s, #0xa5, msl #8 + 1a98: 4f05c4c7 movi v7.4s, #0xa6, msl #8 + 1a9c: 4f05c4e7 movi v7.4s, #0xa7, msl #8 + 1aa0: 4f05c507 movi v7.4s, #0xa8, msl #8 + 1aa4: 4f05c527 movi v7.4s, #0xa9, msl #8 + 1aa8: 4f05c547 movi v7.4s, #0xaa, msl #8 + 1aac: 4f05c567 movi v7.4s, #0xab, msl #8 + 1ab0: 4f05c587 movi v7.4s, #0xac, msl #8 + 1ab4: 4f05c5a7 movi v7.4s, #0xad, msl #8 + 1ab8: 4f05c5c7 movi v7.4s, #0xae, msl #8 + 1abc: 4f05c5e7 movi v7.4s, #0xaf, msl #8 + 1ac0: 4f05c607 movi v7.4s, #0xb0, msl #8 + 1ac4: 4f05c627 movi v7.4s, #0xb1, msl #8 + 1ac8: 4f05c647 movi v7.4s, #0xb2, msl #8 + 1acc: 4f05c667 movi v7.4s, #0xb3, msl #8 + 1ad0: 4f05c687 movi v7.4s, #0xb4, msl #8 + 1ad4: 4f05c6a7 movi v7.4s, #0xb5, msl #8 + 1ad8: 4f05c6c7 movi v7.4s, #0xb6, msl #8 + 1adc: 4f05c6e7 movi v7.4s, #0xb7, msl #8 + 1ae0: 4f05c707 movi v7.4s, #0xb8, msl #8 + 1ae4: 4f05c727 movi v7.4s, #0xb9, msl #8 + 1ae8: 4f05c747 movi v7.4s, #0xba, msl #8 + 1aec: 4f05c767 movi v7.4s, #0xbb, msl #8 + 1af0: 4f05c787 movi v7.4s, #0xbc, msl #8 + 1af4: 4f05c7a7 movi v7.4s, #0xbd, msl #8 + 1af8: 4f05c7c7 movi v7.4s, #0xbe, msl #8 + 1afc: 4f05c7e7 movi v7.4s, #0xbf, msl #8 + 1b00: 4f06c407 movi v7.4s, #0xc0, msl #8 + 1b04: 4f06c427 movi v7.4s, #0xc1, msl #8 + 1b08: 4f06c447 movi v7.4s, #0xc2, msl #8 + 1b0c: 4f06c467 movi v7.4s, #0xc3, msl #8 + 1b10: 4f06c487 movi v7.4s, #0xc4, msl #8 + 1b14: 4f06c4a7 movi v7.4s, #0xc5, msl #8 + 1b18: 4f06c4c7 movi v7.4s, #0xc6, msl #8 + 1b1c: 4f06c4e7 movi v7.4s, #0xc7, msl #8 + 1b20: 4f06c507 movi v7.4s, #0xc8, msl #8 + 1b24: 4f06c527 movi v7.4s, #0xc9, msl #8 + 1b28: 4f06c547 movi v7.4s, #0xca, msl #8 + 1b2c: 4f06c567 movi v7.4s, #0xcb, msl #8 + 1b30: 4f06c587 movi v7.4s, #0xcc, msl #8 + 1b34: 4f06c5a7 movi v7.4s, #0xcd, msl #8 + 1b38: 4f06c5c7 movi v7.4s, #0xce, msl #8 + 1b3c: 4f06c5e7 movi v7.4s, #0xcf, msl #8 + 1b40: 4f06c607 movi v7.4s, #0xd0, msl #8 + 1b44: 4f06c627 movi v7.4s, #0xd1, msl #8 + 1b48: 4f06c647 movi v7.4s, #0xd2, msl #8 + 1b4c: 4f06c667 movi v7.4s, #0xd3, msl #8 + 1b50: 4f06c687 movi v7.4s, #0xd4, msl #8 + 1b54: 4f06c6a7 movi v7.4s, #0xd5, msl #8 + 1b58: 4f06c6c7 movi v7.4s, #0xd6, msl #8 + 1b5c: 4f06c6e7 movi v7.4s, #0xd7, msl #8 + 1b60: 4f06c707 movi v7.4s, #0xd8, msl #8 + 1b64: 4f06c727 movi v7.4s, #0xd9, msl #8 + 1b68: 4f06c747 movi v7.4s, #0xda, msl #8 + 1b6c: 4f06c767 movi v7.4s, #0xdb, msl #8 + 1b70: 4f06c787 movi v7.4s, #0xdc, msl #8 + 1b74: 4f06c7a7 movi v7.4s, #0xdd, msl #8 + 1b78: 4f06c7c7 movi v7.4s, #0xde, msl #8 + 1b7c: 4f06c7e7 movi v7.4s, #0xdf, msl #8 + 1b80: 4f07c407 movi v7.4s, #0xe0, msl #8 + 1b84: 4f07c427 movi v7.4s, #0xe1, msl #8 + 1b88: 4f07c447 movi v7.4s, #0xe2, msl #8 + 1b8c: 4f07c467 movi v7.4s, #0xe3, msl #8 + 1b90: 4f07c487 movi v7.4s, #0xe4, msl #8 + 1b94: 4f07c4a7 movi v7.4s, #0xe5, msl #8 + 1b98: 4f07c4c7 movi v7.4s, #0xe6, msl #8 + 1b9c: 4f07c4e7 movi v7.4s, #0xe7, msl #8 + 1ba0: 4f07c507 movi v7.4s, #0xe8, msl #8 + 1ba4: 4f07c527 movi v7.4s, #0xe9, msl #8 + 1ba8: 4f07c547 movi v7.4s, #0xea, msl #8 + 1bac: 4f07c567 movi v7.4s, #0xeb, msl #8 + 1bb0: 4f07c587 movi v7.4s, #0xec, msl #8 + 1bb4: 4f07c5a7 movi v7.4s, #0xed, msl #8 + 1bb8: 4f07c5c7 movi v7.4s, #0xee, msl #8 + 1bbc: 4f07c5e7 movi v7.4s, #0xef, msl #8 + 1bc0: 4f07c607 movi v7.4s, #0xf0, msl #8 + 1bc4: 4f07c627 movi v7.4s, #0xf1, msl #8 + 1bc8: 4f07c647 movi v7.4s, #0xf2, msl #8 + 1bcc: 4f07c667 movi v7.4s, #0xf3, msl #8 + 1bd0: 4f07c687 movi v7.4s, #0xf4, msl #8 + 1bd4: 4f07c6a7 movi v7.4s, #0xf5, msl #8 + 1bd8: 4f07c6c7 movi v7.4s, #0xf6, msl #8 + 1bdc: 4f07c6e7 movi v7.4s, #0xf7, msl #8 + 1be0: 4f07c707 movi v7.4s, #0xf8, msl #8 + 1be4: 4f07c727 movi v7.4s, #0xf9, msl #8 + 1be8: 4f07c747 movi v7.4s, #0xfa, msl #8 + 1bec: 4f07c767 movi v7.4s, #0xfb, msl #8 + 1bf0: 4f07c787 movi v7.4s, #0xfc, msl #8 + 1bf4: 4f07c7a7 movi v7.4s, #0xfd, msl #8 + 1bf8: 4f07c7c7 movi v7.4s, #0xfe, msl #8 + 1bfc: 4f07c7e7 movi v7.4s, #0xff, msl #8 + 1c00: 4f00d407 movi v7.4s, #0x0, msl #16 + 1c04: 4f00d427 movi v7.4s, #0x1, msl #16 + 1c08: 4f00d447 movi v7.4s, #0x2, msl #16 + 1c0c: 4f00d467 movi v7.4s, #0x3, msl #16 + 1c10: 4f00d487 movi v7.4s, #0x4, msl #16 + 1c14: 4f00d4a7 movi v7.4s, #0x5, msl #16 + 1c18: 4f00d4c7 movi v7.4s, #0x6, msl #16 + 1c1c: 4f00d4e7 movi v7.4s, #0x7, msl #16 + 1c20: 4f00d507 movi v7.4s, #0x8, msl #16 + 1c24: 4f00d527 movi v7.4s, #0x9, msl #16 + 1c28: 4f00d547 movi v7.4s, #0xa, msl #16 + 1c2c: 4f00d567 movi v7.4s, #0xb, msl #16 + 1c30: 4f00d587 movi v7.4s, #0xc, msl #16 + 1c34: 4f00d5a7 movi v7.4s, #0xd, msl #16 + 1c38: 4f00d5c7 movi v7.4s, #0xe, msl #16 + 1c3c: 4f00d5e7 movi v7.4s, #0xf, msl #16 + 1c40: 4f00d607 movi v7.4s, #0x10, msl #16 + 1c44: 4f00d627 movi v7.4s, #0x11, msl #16 + 1c48: 4f00d647 movi v7.4s, #0x12, msl #16 + 1c4c: 4f00d667 movi v7.4s, #0x13, msl #16 + 1c50: 4f00d687 movi v7.4s, #0x14, msl #16 + 1c54: 4f00d6a7 movi v7.4s, #0x15, msl #16 + 1c58: 4f00d6c7 movi v7.4s, #0x16, msl #16 + 1c5c: 4f00d6e7 movi v7.4s, #0x17, msl #16 + 1c60: 4f00d707 movi v7.4s, #0x18, msl #16 + 1c64: 4f00d727 movi v7.4s, #0x19, msl #16 + 1c68: 4f00d747 movi v7.4s, #0x1a, msl #16 + 1c6c: 4f00d767 movi v7.4s, #0x1b, msl #16 + 1c70: 4f00d787 movi v7.4s, #0x1c, msl #16 + 1c74: 4f00d7a7 movi v7.4s, #0x1d, msl #16 + 1c78: 4f00d7c7 movi v7.4s, #0x1e, msl #16 + 1c7c: 4f00d7e7 movi v7.4s, #0x1f, msl #16 + 1c80: 4f01d407 movi v7.4s, #0x20, msl #16 + 1c84: 4f01d427 movi v7.4s, #0x21, msl #16 + 1c88: 4f01d447 movi v7.4s, #0x22, msl #16 + 1c8c: 4f01d467 movi v7.4s, #0x23, msl #16 + 1c90: 4f01d487 movi v7.4s, #0x24, msl #16 + 1c94: 4f01d4a7 movi v7.4s, #0x25, msl #16 + 1c98: 4f01d4c7 movi v7.4s, #0x26, msl #16 + 1c9c: 4f01d4e7 movi v7.4s, #0x27, msl #16 + 1ca0: 4f01d507 movi v7.4s, #0x28, msl #16 + 1ca4: 4f01d527 movi v7.4s, #0x29, msl #16 + 1ca8: 4f01d547 movi v7.4s, #0x2a, msl #16 + 1cac: 4f01d567 movi v7.4s, #0x2b, msl #16 + 1cb0: 4f01d587 movi v7.4s, #0x2c, msl #16 + 1cb4: 4f01d5a7 movi v7.4s, #0x2d, msl #16 + 1cb8: 4f01d5c7 movi v7.4s, #0x2e, msl #16 + 1cbc: 4f01d5e7 movi v7.4s, #0x2f, msl #16 + 1cc0: 4f01d607 movi v7.4s, #0x30, msl #16 + 1cc4: 4f01d627 movi v7.4s, #0x31, msl #16 + 1cc8: 4f01d647 movi v7.4s, #0x32, msl #16 + 1ccc: 4f01d667 movi v7.4s, #0x33, msl #16 + 1cd0: 4f01d687 movi v7.4s, #0x34, msl #16 + 1cd4: 4f01d6a7 movi v7.4s, #0x35, msl #16 + 1cd8: 4f01d6c7 movi v7.4s, #0x36, msl #16 + 1cdc: 4f01d6e7 movi v7.4s, #0x37, msl #16 + 1ce0: 4f01d707 movi v7.4s, #0x38, msl #16 + 1ce4: 4f01d727 movi v7.4s, #0x39, msl #16 + 1ce8: 4f01d747 movi v7.4s, #0x3a, msl #16 + 1cec: 4f01d767 movi v7.4s, #0x3b, msl #16 + 1cf0: 4f01d787 movi v7.4s, #0x3c, msl #16 + 1cf4: 4f01d7a7 movi v7.4s, #0x3d, msl #16 + 1cf8: 4f01d7c7 movi v7.4s, #0x3e, msl #16 + 1cfc: 4f01d7e7 movi v7.4s, #0x3f, msl #16 + 1d00: 4f02d407 movi v7.4s, #0x40, msl #16 + 1d04: 4f02d427 movi v7.4s, #0x41, msl #16 + 1d08: 4f02d447 movi v7.4s, #0x42, msl #16 + 1d0c: 4f02d467 movi v7.4s, #0x43, msl #16 + 1d10: 4f02d487 movi v7.4s, #0x44, msl #16 + 1d14: 4f02d4a7 movi v7.4s, #0x45, msl #16 + 1d18: 4f02d4c7 movi v7.4s, #0x46, msl #16 + 1d1c: 4f02d4e7 movi v7.4s, #0x47, msl #16 + 1d20: 4f02d507 movi v7.4s, #0x48, msl #16 + 1d24: 4f02d527 movi v7.4s, #0x49, msl #16 + 1d28: 4f02d547 movi v7.4s, #0x4a, msl #16 + 1d2c: 4f02d567 movi v7.4s, #0x4b, msl #16 + 1d30: 4f02d587 movi v7.4s, #0x4c, msl #16 + 1d34: 4f02d5a7 movi v7.4s, #0x4d, msl #16 + 1d38: 4f02d5c7 movi v7.4s, #0x4e, msl #16 + 1d3c: 4f02d5e7 movi v7.4s, #0x4f, msl #16 + 1d40: 4f02d607 movi v7.4s, #0x50, msl #16 + 1d44: 4f02d627 movi v7.4s, #0x51, msl #16 + 1d48: 4f02d647 movi v7.4s, #0x52, msl #16 + 1d4c: 4f02d667 movi v7.4s, #0x53, msl #16 + 1d50: 4f02d687 movi v7.4s, #0x54, msl #16 + 1d54: 4f02d6a7 movi v7.4s, #0x55, msl #16 + 1d58: 4f02d6c7 movi v7.4s, #0x56, msl #16 + 1d5c: 4f02d6e7 movi v7.4s, #0x57, msl #16 + 1d60: 4f02d707 movi v7.4s, #0x58, msl #16 + 1d64: 4f02d727 movi v7.4s, #0x59, msl #16 + 1d68: 4f02d747 movi v7.4s, #0x5a, msl #16 + 1d6c: 4f02d767 movi v7.4s, #0x5b, msl #16 + 1d70: 4f02d787 movi v7.4s, #0x5c, msl #16 + 1d74: 4f02d7a7 movi v7.4s, #0x5d, msl #16 + 1d78: 4f02d7c7 movi v7.4s, #0x5e, msl #16 + 1d7c: 4f02d7e7 movi v7.4s, #0x5f, msl #16 + 1d80: 4f03d407 movi v7.4s, #0x60, msl #16 + 1d84: 4f03d427 movi v7.4s, #0x61, msl #16 + 1d88: 4f03d447 movi v7.4s, #0x62, msl #16 + 1d8c: 4f03d467 movi v7.4s, #0x63, msl #16 + 1d90: 4f03d487 movi v7.4s, #0x64, msl #16 + 1d94: 4f03d4a7 movi v7.4s, #0x65, msl #16 + 1d98: 4f03d4c7 movi v7.4s, #0x66, msl #16 + 1d9c: 4f03d4e7 movi v7.4s, #0x67, msl #16 + 1da0: 4f03d507 movi v7.4s, #0x68, msl #16 + 1da4: 4f03d527 movi v7.4s, #0x69, msl #16 + 1da8: 4f03d547 movi v7.4s, #0x6a, msl #16 + 1dac: 4f03d567 movi v7.4s, #0x6b, msl #16 + 1db0: 4f03d587 movi v7.4s, #0x6c, msl #16 + 1db4: 4f03d5a7 movi v7.4s, #0x6d, msl #16 + 1db8: 4f03d5c7 movi v7.4s, #0x6e, msl #16 + 1dbc: 4f03d5e7 movi v7.4s, #0x6f, msl #16 + 1dc0: 4f03d607 movi v7.4s, #0x70, msl #16 + 1dc4: 4f03d627 movi v7.4s, #0x71, msl #16 + 1dc8: 4f03d647 movi v7.4s, #0x72, msl #16 + 1dcc: 4f03d667 movi v7.4s, #0x73, msl #16 + 1dd0: 4f03d687 movi v7.4s, #0x74, msl #16 + 1dd4: 4f03d6a7 movi v7.4s, #0x75, msl #16 + 1dd8: 4f03d6c7 movi v7.4s, #0x76, msl #16 + 1ddc: 4f03d6e7 movi v7.4s, #0x77, msl #16 + 1de0: 4f03d707 movi v7.4s, #0x78, msl #16 + 1de4: 4f03d727 movi v7.4s, #0x79, msl #16 + 1de8: 4f03d747 movi v7.4s, #0x7a, msl #16 + 1dec: 4f03d767 movi v7.4s, #0x7b, msl #16 + 1df0: 4f03d787 movi v7.4s, #0x7c, msl #16 + 1df4: 4f03d7a7 movi v7.4s, #0x7d, msl #16 + 1df8: 4f03d7c7 movi v7.4s, #0x7e, msl #16 + 1dfc: 4f03d7e7 movi v7.4s, #0x7f, msl #16 + 1e00: 4f04d407 movi v7.4s, #0x80, msl #16 + 1e04: 4f04d427 movi v7.4s, #0x81, msl #16 + 1e08: 4f04d447 movi v7.4s, #0x82, msl #16 + 1e0c: 4f04d467 movi v7.4s, #0x83, msl #16 + 1e10: 4f04d487 movi v7.4s, #0x84, msl #16 + 1e14: 4f04d4a7 movi v7.4s, #0x85, msl #16 + 1e18: 4f04d4c7 movi v7.4s, #0x86, msl #16 + 1e1c: 4f04d4e7 movi v7.4s, #0x87, msl #16 + 1e20: 4f04d507 movi v7.4s, #0x88, msl #16 + 1e24: 4f04d527 movi v7.4s, #0x89, msl #16 + 1e28: 4f04d547 movi v7.4s, #0x8a, msl #16 + 1e2c: 4f04d567 movi v7.4s, #0x8b, msl #16 + 1e30: 4f04d587 movi v7.4s, #0x8c, msl #16 + 1e34: 4f04d5a7 movi v7.4s, #0x8d, msl #16 + 1e38: 4f04d5c7 movi v7.4s, #0x8e, msl #16 + 1e3c: 4f04d5e7 movi v7.4s, #0x8f, msl #16 + 1e40: 4f04d607 movi v7.4s, #0x90, msl #16 + 1e44: 4f04d627 movi v7.4s, #0x91, msl #16 + 1e48: 4f04d647 movi v7.4s, #0x92, msl #16 + 1e4c: 4f04d667 movi v7.4s, #0x93, msl #16 + 1e50: 4f04d687 movi v7.4s, #0x94, msl #16 + 1e54: 4f04d6a7 movi v7.4s, #0x95, msl #16 + 1e58: 4f04d6c7 movi v7.4s, #0x96, msl #16 + 1e5c: 4f04d6e7 movi v7.4s, #0x97, msl #16 + 1e60: 4f04d707 movi v7.4s, #0x98, msl #16 + 1e64: 4f04d727 movi v7.4s, #0x99, msl #16 + 1e68: 4f04d747 movi v7.4s, #0x9a, msl #16 + 1e6c: 4f04d767 movi v7.4s, #0x9b, msl #16 + 1e70: 4f04d787 movi v7.4s, #0x9c, msl #16 + 1e74: 4f04d7a7 movi v7.4s, #0x9d, msl #16 + 1e78: 4f04d7c7 movi v7.4s, #0x9e, msl #16 + 1e7c: 4f04d7e7 movi v7.4s, #0x9f, msl #16 + 1e80: 4f05d407 movi v7.4s, #0xa0, msl #16 + 1e84: 4f05d427 movi v7.4s, #0xa1, msl #16 + 1e88: 4f05d447 movi v7.4s, #0xa2, msl #16 + 1e8c: 4f05d467 movi v7.4s, #0xa3, msl #16 + 1e90: 4f05d487 movi v7.4s, #0xa4, msl #16 + 1e94: 4f05d4a7 movi v7.4s, #0xa5, msl #16 + 1e98: 4f05d4c7 movi v7.4s, #0xa6, msl #16 + 1e9c: 4f05d4e7 movi v7.4s, #0xa7, msl #16 + 1ea0: 4f05d507 movi v7.4s, #0xa8, msl #16 + 1ea4: 4f05d527 movi v7.4s, #0xa9, msl #16 + 1ea8: 4f05d547 movi v7.4s, #0xaa, msl #16 + 1eac: 4f05d567 movi v7.4s, #0xab, msl #16 + 1eb0: 4f05d587 movi v7.4s, #0xac, msl #16 + 1eb4: 4f05d5a7 movi v7.4s, #0xad, msl #16 + 1eb8: 4f05d5c7 movi v7.4s, #0xae, msl #16 + 1ebc: 4f05d5e7 movi v7.4s, #0xaf, msl #16 + 1ec0: 4f05d607 movi v7.4s, #0xb0, msl #16 + 1ec4: 4f05d627 movi v7.4s, #0xb1, msl #16 + 1ec8: 4f05d647 movi v7.4s, #0xb2, msl #16 + 1ecc: 4f05d667 movi v7.4s, #0xb3, msl #16 + 1ed0: 4f05d687 movi v7.4s, #0xb4, msl #16 + 1ed4: 4f05d6a7 movi v7.4s, #0xb5, msl #16 + 1ed8: 4f05d6c7 movi v7.4s, #0xb6, msl #16 + 1edc: 4f05d6e7 movi v7.4s, #0xb7, msl #16 + 1ee0: 4f05d707 movi v7.4s, #0xb8, msl #16 + 1ee4: 4f05d727 movi v7.4s, #0xb9, msl #16 + 1ee8: 4f05d747 movi v7.4s, #0xba, msl #16 + 1eec: 4f05d767 movi v7.4s, #0xbb, msl #16 + 1ef0: 4f05d787 movi v7.4s, #0xbc, msl #16 + 1ef4: 4f05d7a7 movi v7.4s, #0xbd, msl #16 + 1ef8: 4f05d7c7 movi v7.4s, #0xbe, msl #16 + 1efc: 4f05d7e7 movi v7.4s, #0xbf, msl #16 + 1f00: 4f06d407 movi v7.4s, #0xc0, msl #16 + 1f04: 4f06d427 movi v7.4s, #0xc1, msl #16 + 1f08: 4f06d447 movi v7.4s, #0xc2, msl #16 + 1f0c: 4f06d467 movi v7.4s, #0xc3, msl #16 + 1f10: 4f06d487 movi v7.4s, #0xc4, msl #16 + 1f14: 4f06d4a7 movi v7.4s, #0xc5, msl #16 + 1f18: 4f06d4c7 movi v7.4s, #0xc6, msl #16 + 1f1c: 4f06d4e7 movi v7.4s, #0xc7, msl #16 + 1f20: 4f06d507 movi v7.4s, #0xc8, msl #16 + 1f24: 4f06d527 movi v7.4s, #0xc9, msl #16 + 1f28: 4f06d547 movi v7.4s, #0xca, msl #16 + 1f2c: 4f06d567 movi v7.4s, #0xcb, msl #16 + 1f30: 4f06d587 movi v7.4s, #0xcc, msl #16 + 1f34: 4f06d5a7 movi v7.4s, #0xcd, msl #16 + 1f38: 4f06d5c7 movi v7.4s, #0xce, msl #16 + 1f3c: 4f06d5e7 movi v7.4s, #0xcf, msl #16 + 1f40: 4f06d607 movi v7.4s, #0xd0, msl #16 + 1f44: 4f06d627 movi v7.4s, #0xd1, msl #16 + 1f48: 4f06d647 movi v7.4s, #0xd2, msl #16 + 1f4c: 4f06d667 movi v7.4s, #0xd3, msl #16 + 1f50: 4f06d687 movi v7.4s, #0xd4, msl #16 + 1f54: 4f06d6a7 movi v7.4s, #0xd5, msl #16 + 1f58: 4f06d6c7 movi v7.4s, #0xd6, msl #16 + 1f5c: 4f06d6e7 movi v7.4s, #0xd7, msl #16 + 1f60: 4f06d707 movi v7.4s, #0xd8, msl #16 + 1f64: 4f06d727 movi v7.4s, #0xd9, msl #16 + 1f68: 4f06d747 movi v7.4s, #0xda, msl #16 + 1f6c: 4f06d767 movi v7.4s, #0xdb, msl #16 + 1f70: 4f06d787 movi v7.4s, #0xdc, msl #16 + 1f74: 4f06d7a7 movi v7.4s, #0xdd, msl #16 + 1f78: 4f06d7c7 movi v7.4s, #0xde, msl #16 + 1f7c: 4f06d7e7 movi v7.4s, #0xdf, msl #16 + 1f80: 4f07d407 movi v7.4s, #0xe0, msl #16 + 1f84: 4f07d427 movi v7.4s, #0xe1, msl #16 + 1f88: 4f07d447 movi v7.4s, #0xe2, msl #16 + 1f8c: 4f07d467 movi v7.4s, #0xe3, msl #16 + 1f90: 4f07d487 movi v7.4s, #0xe4, msl #16 + 1f94: 4f07d4a7 movi v7.4s, #0xe5, msl #16 + 1f98: 4f07d4c7 movi v7.4s, #0xe6, msl #16 + 1f9c: 4f07d4e7 movi v7.4s, #0xe7, msl #16 + 1fa0: 4f07d507 movi v7.4s, #0xe8, msl #16 + 1fa4: 4f07d527 movi v7.4s, #0xe9, msl #16 + 1fa8: 4f07d547 movi v7.4s, #0xea, msl #16 + 1fac: 4f07d567 movi v7.4s, #0xeb, msl #16 + 1fb0: 4f07d587 movi v7.4s, #0xec, msl #16 + 1fb4: 4f07d5a7 movi v7.4s, #0xed, msl #16 + 1fb8: 4f07d5c7 movi v7.4s, #0xee, msl #16 + 1fbc: 4f07d5e7 movi v7.4s, #0xef, msl #16 + 1fc0: 4f07d607 movi v7.4s, #0xf0, msl #16 + 1fc4: 4f07d627 movi v7.4s, #0xf1, msl #16 + 1fc8: 4f07d647 movi v7.4s, #0xf2, msl #16 + 1fcc: 4f07d667 movi v7.4s, #0xf3, msl #16 + 1fd0: 4f07d687 movi v7.4s, #0xf4, msl #16 + 1fd4: 4f07d6a7 movi v7.4s, #0xf5, msl #16 + 1fd8: 4f07d6c7 movi v7.4s, #0xf6, msl #16 + 1fdc: 4f07d6e7 movi v7.4s, #0xf7, msl #16 + 1fe0: 4f07d707 movi v7.4s, #0xf8, msl #16 + 1fe4: 4f07d727 movi v7.4s, #0xf9, msl #16 + 1fe8: 4f07d747 movi v7.4s, #0xfa, msl #16 + 1fec: 4f07d767 movi v7.4s, #0xfb, msl #16 + 1ff0: 4f07d787 movi v7.4s, #0xfc, msl #16 + 1ff4: 4f07d7a7 movi v7.4s, #0xfd, msl #16 + 1ff8: 4f07d7c7 movi v7.4s, #0xfe, msl #16 + 1ffc: 4f07d7e7 movi v7.4s, #0xff, msl #16 + 2000: 0f008407 movi v7.4h, #0x0 + 2004: 0f008427 movi v7.4h, #0x1 + 2008: 0f008447 movi v7.4h, #0x2 + 200c: 0f008467 movi v7.4h, #0x3 + 2010: 0f008487 movi v7.4h, #0x4 + 2014: 0f0084a7 movi v7.4h, #0x5 + 2018: 0f0084c7 movi v7.4h, #0x6 + 201c: 0f0084e7 movi v7.4h, #0x7 + 2020: 0f008507 movi v7.4h, #0x8 + 2024: 0f008527 movi v7.4h, #0x9 + 2028: 0f008547 movi v7.4h, #0xa + 202c: 0f008567 movi v7.4h, #0xb + 2030: 0f008587 movi v7.4h, #0xc + 2034: 0f0085a7 movi v7.4h, #0xd + 2038: 0f0085c7 movi v7.4h, #0xe + 203c: 0f0085e7 movi v7.4h, #0xf + 2040: 0f008607 movi v7.4h, #0x10 + 2044: 0f008627 movi v7.4h, #0x11 + 2048: 0f008647 movi v7.4h, #0x12 + 204c: 0f008667 movi v7.4h, #0x13 + 2050: 0f008687 movi v7.4h, #0x14 + 2054: 0f0086a7 movi v7.4h, #0x15 + 2058: 0f0086c7 movi v7.4h, #0x16 + 205c: 0f0086e7 movi v7.4h, #0x17 + 2060: 0f008707 movi v7.4h, #0x18 + 2064: 0f008727 movi v7.4h, #0x19 + 2068: 0f008747 movi v7.4h, #0x1a + 206c: 0f008767 movi v7.4h, #0x1b + 2070: 0f008787 movi v7.4h, #0x1c + 2074: 0f0087a7 movi v7.4h, #0x1d + 2078: 0f0087c7 movi v7.4h, #0x1e + 207c: 0f0087e7 movi v7.4h, #0x1f + 2080: 0f018407 movi v7.4h, #0x20 + 2084: 0f018427 movi v7.4h, #0x21 + 2088: 0f018447 movi v7.4h, #0x22 + 208c: 0f018467 movi v7.4h, #0x23 + 2090: 0f018487 movi v7.4h, #0x24 + 2094: 0f0184a7 movi v7.4h, #0x25 + 2098: 0f0184c7 movi v7.4h, #0x26 + 209c: 0f0184e7 movi v7.4h, #0x27 + 20a0: 0f018507 movi v7.4h, #0x28 + 20a4: 0f018527 movi v7.4h, #0x29 + 20a8: 0f018547 movi v7.4h, #0x2a + 20ac: 0f018567 movi v7.4h, #0x2b + 20b0: 0f018587 movi v7.4h, #0x2c + 20b4: 0f0185a7 movi v7.4h, #0x2d + 20b8: 0f0185c7 movi v7.4h, #0x2e + 20bc: 0f0185e7 movi v7.4h, #0x2f + 20c0: 0f018607 movi v7.4h, #0x30 + 20c4: 0f018627 movi v7.4h, #0x31 + 20c8: 0f018647 movi v7.4h, #0x32 + 20cc: 0f018667 movi v7.4h, #0x33 + 20d0: 0f018687 movi v7.4h, #0x34 + 20d4: 0f0186a7 movi v7.4h, #0x35 + 20d8: 0f0186c7 movi v7.4h, #0x36 + 20dc: 0f0186e7 movi v7.4h, #0x37 + 20e0: 0f018707 movi v7.4h, #0x38 + 20e4: 0f018727 movi v7.4h, #0x39 + 20e8: 0f018747 movi v7.4h, #0x3a + 20ec: 0f018767 movi v7.4h, #0x3b + 20f0: 0f018787 movi v7.4h, #0x3c + 20f4: 0f0187a7 movi v7.4h, #0x3d + 20f8: 0f0187c7 movi v7.4h, #0x3e + 20fc: 0f0187e7 movi v7.4h, #0x3f + 2100: 0f028407 movi v7.4h, #0x40 + 2104: 0f028427 movi v7.4h, #0x41 + 2108: 0f028447 movi v7.4h, #0x42 + 210c: 0f028467 movi v7.4h, #0x43 + 2110: 0f028487 movi v7.4h, #0x44 + 2114: 0f0284a7 movi v7.4h, #0x45 + 2118: 0f0284c7 movi v7.4h, #0x46 + 211c: 0f0284e7 movi v7.4h, #0x47 + 2120: 0f028507 movi v7.4h, #0x48 + 2124: 0f028527 movi v7.4h, #0x49 + 2128: 0f028547 movi v7.4h, #0x4a + 212c: 0f028567 movi v7.4h, #0x4b + 2130: 0f028587 movi v7.4h, #0x4c + 2134: 0f0285a7 movi v7.4h, #0x4d + 2138: 0f0285c7 movi v7.4h, #0x4e + 213c: 0f0285e7 movi v7.4h, #0x4f + 2140: 0f028607 movi v7.4h, #0x50 + 2144: 0f028627 movi v7.4h, #0x51 + 2148: 0f028647 movi v7.4h, #0x52 + 214c: 0f028667 movi v7.4h, #0x53 + 2150: 0f028687 movi v7.4h, #0x54 + 2154: 0f0286a7 movi v7.4h, #0x55 + 2158: 0f0286c7 movi v7.4h, #0x56 + 215c: 0f0286e7 movi v7.4h, #0x57 + 2160: 0f028707 movi v7.4h, #0x58 + 2164: 0f028727 movi v7.4h, #0x59 + 2168: 0f028747 movi v7.4h, #0x5a + 216c: 0f028767 movi v7.4h, #0x5b + 2170: 0f028787 movi v7.4h, #0x5c + 2174: 0f0287a7 movi v7.4h, #0x5d + 2178: 0f0287c7 movi v7.4h, #0x5e + 217c: 0f0287e7 movi v7.4h, #0x5f + 2180: 0f038407 movi v7.4h, #0x60 + 2184: 0f038427 movi v7.4h, #0x61 + 2188: 0f038447 movi v7.4h, #0x62 + 218c: 0f038467 movi v7.4h, #0x63 + 2190: 0f038487 movi v7.4h, #0x64 + 2194: 0f0384a7 movi v7.4h, #0x65 + 2198: 0f0384c7 movi v7.4h, #0x66 + 219c: 0f0384e7 movi v7.4h, #0x67 + 21a0: 0f038507 movi v7.4h, #0x68 + 21a4: 0f038527 movi v7.4h, #0x69 + 21a8: 0f038547 movi v7.4h, #0x6a + 21ac: 0f038567 movi v7.4h, #0x6b + 21b0: 0f038587 movi v7.4h, #0x6c + 21b4: 0f0385a7 movi v7.4h, #0x6d + 21b8: 0f0385c7 movi v7.4h, #0x6e + 21bc: 0f0385e7 movi v7.4h, #0x6f + 21c0: 0f038607 movi v7.4h, #0x70 + 21c4: 0f038627 movi v7.4h, #0x71 + 21c8: 0f038647 movi v7.4h, #0x72 + 21cc: 0f038667 movi v7.4h, #0x73 + 21d0: 0f038687 movi v7.4h, #0x74 + 21d4: 0f0386a7 movi v7.4h, #0x75 + 21d8: 0f0386c7 movi v7.4h, #0x76 + 21dc: 0f0386e7 movi v7.4h, #0x77 + 21e0: 0f038707 movi v7.4h, #0x78 + 21e4: 0f038727 movi v7.4h, #0x79 + 21e8: 0f038747 movi v7.4h, #0x7a + 21ec: 0f038767 movi v7.4h, #0x7b + 21f0: 0f038787 movi v7.4h, #0x7c + 21f4: 0f0387a7 movi v7.4h, #0x7d + 21f8: 0f0387c7 movi v7.4h, #0x7e + 21fc: 0f0387e7 movi v7.4h, #0x7f + 2200: 0f048407 movi v7.4h, #0x80 + 2204: 0f048427 movi v7.4h, #0x81 + 2208: 0f048447 movi v7.4h, #0x82 + 220c: 0f048467 movi v7.4h, #0x83 + 2210: 0f048487 movi v7.4h, #0x84 + 2214: 0f0484a7 movi v7.4h, #0x85 + 2218: 0f0484c7 movi v7.4h, #0x86 + 221c: 0f0484e7 movi v7.4h, #0x87 + 2220: 0f048507 movi v7.4h, #0x88 + 2224: 0f048527 movi v7.4h, #0x89 + 2228: 0f048547 movi v7.4h, #0x8a + 222c: 0f048567 movi v7.4h, #0x8b + 2230: 0f048587 movi v7.4h, #0x8c + 2234: 0f0485a7 movi v7.4h, #0x8d + 2238: 0f0485c7 movi v7.4h, #0x8e + 223c: 0f0485e7 movi v7.4h, #0x8f + 2240: 0f048607 movi v7.4h, #0x90 + 2244: 0f048627 movi v7.4h, #0x91 + 2248: 0f048647 movi v7.4h, #0x92 + 224c: 0f048667 movi v7.4h, #0x93 + 2250: 0f048687 movi v7.4h, #0x94 + 2254: 0f0486a7 movi v7.4h, #0x95 + 2258: 0f0486c7 movi v7.4h, #0x96 + 225c: 0f0486e7 movi v7.4h, #0x97 + 2260: 0f048707 movi v7.4h, #0x98 + 2264: 0f048727 movi v7.4h, #0x99 + 2268: 0f048747 movi v7.4h, #0x9a + 226c: 0f048767 movi v7.4h, #0x9b + 2270: 0f048787 movi v7.4h, #0x9c + 2274: 0f0487a7 movi v7.4h, #0x9d + 2278: 0f0487c7 movi v7.4h, #0x9e + 227c: 0f0487e7 movi v7.4h, #0x9f + 2280: 0f058407 movi v7.4h, #0xa0 + 2284: 0f058427 movi v7.4h, #0xa1 + 2288: 0f058447 movi v7.4h, #0xa2 + 228c: 0f058467 movi v7.4h, #0xa3 + 2290: 0f058487 movi v7.4h, #0xa4 + 2294: 0f0584a7 movi v7.4h, #0xa5 + 2298: 0f0584c7 movi v7.4h, #0xa6 + 229c: 0f0584e7 movi v7.4h, #0xa7 + 22a0: 0f058507 movi v7.4h, #0xa8 + 22a4: 0f058527 movi v7.4h, #0xa9 + 22a8: 0f058547 movi v7.4h, #0xaa + 22ac: 0f058567 movi v7.4h, #0xab + 22b0: 0f058587 movi v7.4h, #0xac + 22b4: 0f0585a7 movi v7.4h, #0xad + 22b8: 0f0585c7 movi v7.4h, #0xae + 22bc: 0f0585e7 movi v7.4h, #0xaf + 22c0: 0f058607 movi v7.4h, #0xb0 + 22c4: 0f058627 movi v7.4h, #0xb1 + 22c8: 0f058647 movi v7.4h, #0xb2 + 22cc: 0f058667 movi v7.4h, #0xb3 + 22d0: 0f058687 movi v7.4h, #0xb4 + 22d4: 0f0586a7 movi v7.4h, #0xb5 + 22d8: 0f0586c7 movi v7.4h, #0xb6 + 22dc: 0f0586e7 movi v7.4h, #0xb7 + 22e0: 0f058707 movi v7.4h, #0xb8 + 22e4: 0f058727 movi v7.4h, #0xb9 + 22e8: 0f058747 movi v7.4h, #0xba + 22ec: 0f058767 movi v7.4h, #0xbb + 22f0: 0f058787 movi v7.4h, #0xbc + 22f4: 0f0587a7 movi v7.4h, #0xbd + 22f8: 0f0587c7 movi v7.4h, #0xbe + 22fc: 0f0587e7 movi v7.4h, #0xbf + 2300: 0f068407 movi v7.4h, #0xc0 + 2304: 0f068427 movi v7.4h, #0xc1 + 2308: 0f068447 movi v7.4h, #0xc2 + 230c: 0f068467 movi v7.4h, #0xc3 + 2310: 0f068487 movi v7.4h, #0xc4 + 2314: 0f0684a7 movi v7.4h, #0xc5 + 2318: 0f0684c7 movi v7.4h, #0xc6 + 231c: 0f0684e7 movi v7.4h, #0xc7 + 2320: 0f068507 movi v7.4h, #0xc8 + 2324: 0f068527 movi v7.4h, #0xc9 + 2328: 0f068547 movi v7.4h, #0xca + 232c: 0f068567 movi v7.4h, #0xcb + 2330: 0f068587 movi v7.4h, #0xcc + 2334: 0f0685a7 movi v7.4h, #0xcd + 2338: 0f0685c7 movi v7.4h, #0xce + 233c: 0f0685e7 movi v7.4h, #0xcf + 2340: 0f068607 movi v7.4h, #0xd0 + 2344: 0f068627 movi v7.4h, #0xd1 + 2348: 0f068647 movi v7.4h, #0xd2 + 234c: 0f068667 movi v7.4h, #0xd3 + 2350: 0f068687 movi v7.4h, #0xd4 + 2354: 0f0686a7 movi v7.4h, #0xd5 + 2358: 0f0686c7 movi v7.4h, #0xd6 + 235c: 0f0686e7 movi v7.4h, #0xd7 + 2360: 0f068707 movi v7.4h, #0xd8 + 2364: 0f068727 movi v7.4h, #0xd9 + 2368: 0f068747 movi v7.4h, #0xda + 236c: 0f068767 movi v7.4h, #0xdb + 2370: 0f068787 movi v7.4h, #0xdc + 2374: 0f0687a7 movi v7.4h, #0xdd + 2378: 0f0687c7 movi v7.4h, #0xde + 237c: 0f0687e7 movi v7.4h, #0xdf + 2380: 0f078407 movi v7.4h, #0xe0 + 2384: 0f078427 movi v7.4h, #0xe1 + 2388: 0f078447 movi v7.4h, #0xe2 + 238c: 0f078467 movi v7.4h, #0xe3 + 2390: 0f078487 movi v7.4h, #0xe4 + 2394: 0f0784a7 movi v7.4h, #0xe5 + 2398: 0f0784c7 movi v7.4h, #0xe6 + 239c: 0f0784e7 movi v7.4h, #0xe7 + 23a0: 0f078507 movi v7.4h, #0xe8 + 23a4: 0f078527 movi v7.4h, #0xe9 + 23a8: 0f078547 movi v7.4h, #0xea + 23ac: 0f078567 movi v7.4h, #0xeb + 23b0: 0f078587 movi v7.4h, #0xec + 23b4: 0f0785a7 movi v7.4h, #0xed + 23b8: 0f0785c7 movi v7.4h, #0xee + 23bc: 0f0785e7 movi v7.4h, #0xef + 23c0: 0f078607 movi v7.4h, #0xf0 + 23c4: 0f078627 movi v7.4h, #0xf1 + 23c8: 0f078647 movi v7.4h, #0xf2 + 23cc: 0f078667 movi v7.4h, #0xf3 + 23d0: 0f078687 movi v7.4h, #0xf4 + 23d4: 0f0786a7 movi v7.4h, #0xf5 + 23d8: 0f0786c7 movi v7.4h, #0xf6 + 23dc: 0f0786e7 movi v7.4h, #0xf7 + 23e0: 0f078707 movi v7.4h, #0xf8 + 23e4: 0f078727 movi v7.4h, #0xf9 + 23e8: 0f078747 movi v7.4h, #0xfa + 23ec: 0f078767 movi v7.4h, #0xfb + 23f0: 0f078787 movi v7.4h, #0xfc + 23f4: 0f0787a7 movi v7.4h, #0xfd + 23f8: 0f0787c7 movi v7.4h, #0xfe + 23fc: 0f0787e7 movi v7.4h, #0xff + 2400: 0f00840f movi v15.4h, #0x0 + 2404: 0f00842f movi v15.4h, #0x1 + 2408: 0f00844f movi v15.4h, #0x2 + 240c: 0f00846f movi v15.4h, #0x3 + 2410: 0f00848f movi v15.4h, #0x4 + 2414: 0f0084af movi v15.4h, #0x5 + 2418: 0f0084cf movi v15.4h, #0x6 + 241c: 0f0084ef movi v15.4h, #0x7 + 2420: 0f00850f movi v15.4h, #0x8 + 2424: 0f00852f movi v15.4h, #0x9 + 2428: 0f00854f movi v15.4h, #0xa + 242c: 0f00856f movi v15.4h, #0xb + 2430: 0f00858f movi v15.4h, #0xc + 2434: 0f0085af movi v15.4h, #0xd + 2438: 0f0085cf movi v15.4h, #0xe + 243c: 0f0085ef movi v15.4h, #0xf + 2440: 0f00860f movi v15.4h, #0x10 + 2444: 0f00862f movi v15.4h, #0x11 + 2448: 0f00864f movi v15.4h, #0x12 + 244c: 0f00866f movi v15.4h, #0x13 + 2450: 0f00868f movi v15.4h, #0x14 + 2454: 0f0086af movi v15.4h, #0x15 + 2458: 0f0086cf movi v15.4h, #0x16 + 245c: 0f0086ef movi v15.4h, #0x17 + 2460: 0f00870f movi v15.4h, #0x18 + 2464: 0f00872f movi v15.4h, #0x19 + 2468: 0f00874f movi v15.4h, #0x1a + 246c: 0f00876f movi v15.4h, #0x1b + 2470: 0f00878f movi v15.4h, #0x1c + 2474: 0f0087af movi v15.4h, #0x1d + 2478: 0f0087cf movi v15.4h, #0x1e + 247c: 0f0087ef movi v15.4h, #0x1f + 2480: 0f01840f movi v15.4h, #0x20 + 2484: 0f01842f movi v15.4h, #0x21 + 2488: 0f01844f movi v15.4h, #0x22 + 248c: 0f01846f movi v15.4h, #0x23 + 2490: 0f01848f movi v15.4h, #0x24 + 2494: 0f0184af movi v15.4h, #0x25 + 2498: 0f0184cf movi v15.4h, #0x26 + 249c: 0f0184ef movi v15.4h, #0x27 + 24a0: 0f01850f movi v15.4h, #0x28 + 24a4: 0f01852f movi v15.4h, #0x29 + 24a8: 0f01854f movi v15.4h, #0x2a + 24ac: 0f01856f movi v15.4h, #0x2b + 24b0: 0f01858f movi v15.4h, #0x2c + 24b4: 0f0185af movi v15.4h, #0x2d + 24b8: 0f0185cf movi v15.4h, #0x2e + 24bc: 0f0185ef movi v15.4h, #0x2f + 24c0: 0f01860f movi v15.4h, #0x30 + 24c4: 0f01862f movi v15.4h, #0x31 + 24c8: 0f01864f movi v15.4h, #0x32 + 24cc: 0f01866f movi v15.4h, #0x33 + 24d0: 0f01868f movi v15.4h, #0x34 + 24d4: 0f0186af movi v15.4h, #0x35 + 24d8: 0f0186cf movi v15.4h, #0x36 + 24dc: 0f0186ef movi v15.4h, #0x37 + 24e0: 0f01870f movi v15.4h, #0x38 + 24e4: 0f01872f movi v15.4h, #0x39 + 24e8: 0f01874f movi v15.4h, #0x3a + 24ec: 0f01876f movi v15.4h, #0x3b + 24f0: 0f01878f movi v15.4h, #0x3c + 24f4: 0f0187af movi v15.4h, #0x3d + 24f8: 0f0187cf movi v15.4h, #0x3e + 24fc: 0f0187ef movi v15.4h, #0x3f + 2500: 0f02840f movi v15.4h, #0x40 + 2504: 0f02842f movi v15.4h, #0x41 + 2508: 0f02844f movi v15.4h, #0x42 + 250c: 0f02846f movi v15.4h, #0x43 + 2510: 0f02848f movi v15.4h, #0x44 + 2514: 0f0284af movi v15.4h, #0x45 + 2518: 0f0284cf movi v15.4h, #0x46 + 251c: 0f0284ef movi v15.4h, #0x47 + 2520: 0f02850f movi v15.4h, #0x48 + 2524: 0f02852f movi v15.4h, #0x49 + 2528: 0f02854f movi v15.4h, #0x4a + 252c: 0f02856f movi v15.4h, #0x4b + 2530: 0f02858f movi v15.4h, #0x4c + 2534: 0f0285af movi v15.4h, #0x4d + 2538: 0f0285cf movi v15.4h, #0x4e + 253c: 0f0285ef movi v15.4h, #0x4f + 2540: 0f02860f movi v15.4h, #0x50 + 2544: 0f02862f movi v15.4h, #0x51 + 2548: 0f02864f movi v15.4h, #0x52 + 254c: 0f02866f movi v15.4h, #0x53 + 2550: 0f02868f movi v15.4h, #0x54 + 2554: 0f0286af movi v15.4h, #0x55 + 2558: 0f0286cf movi v15.4h, #0x56 + 255c: 0f0286ef movi v15.4h, #0x57 + 2560: 0f02870f movi v15.4h, #0x58 + 2564: 0f02872f movi v15.4h, #0x59 + 2568: 0f02874f movi v15.4h, #0x5a + 256c: 0f02876f movi v15.4h, #0x5b + 2570: 0f02878f movi v15.4h, #0x5c + 2574: 0f0287af movi v15.4h, #0x5d + 2578: 0f0287cf movi v15.4h, #0x5e + 257c: 0f0287ef movi v15.4h, #0x5f + 2580: 0f03840f movi v15.4h, #0x60 + 2584: 0f03842f movi v15.4h, #0x61 + 2588: 0f03844f movi v15.4h, #0x62 + 258c: 0f03846f movi v15.4h, #0x63 + 2590: 0f03848f movi v15.4h, #0x64 + 2594: 0f0384af movi v15.4h, #0x65 + 2598: 0f0384cf movi v15.4h, #0x66 + 259c: 0f0384ef movi v15.4h, #0x67 + 25a0: 0f03850f movi v15.4h, #0x68 + 25a4: 0f03852f movi v15.4h, #0x69 + 25a8: 0f03854f movi v15.4h, #0x6a + 25ac: 0f03856f movi v15.4h, #0x6b + 25b0: 0f03858f movi v15.4h, #0x6c + 25b4: 0f0385af movi v15.4h, #0x6d + 25b8: 0f0385cf movi v15.4h, #0x6e + 25bc: 0f0385ef movi v15.4h, #0x6f + 25c0: 0f03860f movi v15.4h, #0x70 + 25c4: 0f03862f movi v15.4h, #0x71 + 25c8: 0f03864f movi v15.4h, #0x72 + 25cc: 0f03866f movi v15.4h, #0x73 + 25d0: 0f03868f movi v15.4h, #0x74 + 25d4: 0f0386af movi v15.4h, #0x75 + 25d8: 0f0386cf movi v15.4h, #0x76 + 25dc: 0f0386ef movi v15.4h, #0x77 + 25e0: 0f03870f movi v15.4h, #0x78 + 25e4: 0f03872f movi v15.4h, #0x79 + 25e8: 0f03874f movi v15.4h, #0x7a + 25ec: 0f03876f movi v15.4h, #0x7b + 25f0: 0f03878f movi v15.4h, #0x7c + 25f4: 0f0387af movi v15.4h, #0x7d + 25f8: 0f0387cf movi v15.4h, #0x7e + 25fc: 0f0387ef movi v15.4h, #0x7f + 2600: 0f04840f movi v15.4h, #0x80 + 2604: 0f04842f movi v15.4h, #0x81 + 2608: 0f04844f movi v15.4h, #0x82 + 260c: 0f04846f movi v15.4h, #0x83 + 2610: 0f04848f movi v15.4h, #0x84 + 2614: 0f0484af movi v15.4h, #0x85 + 2618: 0f0484cf movi v15.4h, #0x86 + 261c: 0f0484ef movi v15.4h, #0x87 + 2620: 0f04850f movi v15.4h, #0x88 + 2624: 0f04852f movi v15.4h, #0x89 + 2628: 0f04854f movi v15.4h, #0x8a + 262c: 0f04856f movi v15.4h, #0x8b + 2630: 0f04858f movi v15.4h, #0x8c + 2634: 0f0485af movi v15.4h, #0x8d + 2638: 0f0485cf movi v15.4h, #0x8e + 263c: 0f0485ef movi v15.4h, #0x8f + 2640: 0f04860f movi v15.4h, #0x90 + 2644: 0f04862f movi v15.4h, #0x91 + 2648: 0f04864f movi v15.4h, #0x92 + 264c: 0f04866f movi v15.4h, #0x93 + 2650: 0f04868f movi v15.4h, #0x94 + 2654: 0f0486af movi v15.4h, #0x95 + 2658: 0f0486cf movi v15.4h, #0x96 + 265c: 0f0486ef movi v15.4h, #0x97 + 2660: 0f04870f movi v15.4h, #0x98 + 2664: 0f04872f movi v15.4h, #0x99 + 2668: 0f04874f movi v15.4h, #0x9a + 266c: 0f04876f movi v15.4h, #0x9b + 2670: 0f04878f movi v15.4h, #0x9c + 2674: 0f0487af movi v15.4h, #0x9d + 2678: 0f0487cf movi v15.4h, #0x9e + 267c: 0f0487ef movi v15.4h, #0x9f + 2680: 0f05840f movi v15.4h, #0xa0 + 2684: 0f05842f movi v15.4h, #0xa1 + 2688: 0f05844f movi v15.4h, #0xa2 + 268c: 0f05846f movi v15.4h, #0xa3 + 2690: 0f05848f movi v15.4h, #0xa4 + 2694: 0f0584af movi v15.4h, #0xa5 + 2698: 0f0584cf movi v15.4h, #0xa6 + 269c: 0f0584ef movi v15.4h, #0xa7 + 26a0: 0f05850f movi v15.4h, #0xa8 + 26a4: 0f05852f movi v15.4h, #0xa9 + 26a8: 0f05854f movi v15.4h, #0xaa + 26ac: 0f05856f movi v15.4h, #0xab + 26b0: 0f05858f movi v15.4h, #0xac + 26b4: 0f0585af movi v15.4h, #0xad + 26b8: 0f0585cf movi v15.4h, #0xae + 26bc: 0f0585ef movi v15.4h, #0xaf + 26c0: 0f05860f movi v15.4h, #0xb0 + 26c4: 0f05862f movi v15.4h, #0xb1 + 26c8: 0f05864f movi v15.4h, #0xb2 + 26cc: 0f05866f movi v15.4h, #0xb3 + 26d0: 0f05868f movi v15.4h, #0xb4 + 26d4: 0f0586af movi v15.4h, #0xb5 + 26d8: 0f0586cf movi v15.4h, #0xb6 + 26dc: 0f0586ef movi v15.4h, #0xb7 + 26e0: 0f05870f movi v15.4h, #0xb8 + 26e4: 0f05872f movi v15.4h, #0xb9 + 26e8: 0f05874f movi v15.4h, #0xba + 26ec: 0f05876f movi v15.4h, #0xbb + 26f0: 0f05878f movi v15.4h, #0xbc + 26f4: 0f0587af movi v15.4h, #0xbd + 26f8: 0f0587cf movi v15.4h, #0xbe + 26fc: 0f0587ef movi v15.4h, #0xbf + 2700: 0f06840f movi v15.4h, #0xc0 + 2704: 0f06842f movi v15.4h, #0xc1 + 2708: 0f06844f movi v15.4h, #0xc2 + 270c: 0f06846f movi v15.4h, #0xc3 + 2710: 0f06848f movi v15.4h, #0xc4 + 2714: 0f0684af movi v15.4h, #0xc5 + 2718: 0f0684cf movi v15.4h, #0xc6 + 271c: 0f0684ef movi v15.4h, #0xc7 + 2720: 0f06850f movi v15.4h, #0xc8 + 2724: 0f06852f movi v15.4h, #0xc9 + 2728: 0f06854f movi v15.4h, #0xca + 272c: 0f06856f movi v15.4h, #0xcb + 2730: 0f06858f movi v15.4h, #0xcc + 2734: 0f0685af movi v15.4h, #0xcd + 2738: 0f0685cf movi v15.4h, #0xce + 273c: 0f0685ef movi v15.4h, #0xcf + 2740: 0f06860f movi v15.4h, #0xd0 + 2744: 0f06862f movi v15.4h, #0xd1 + 2748: 0f06864f movi v15.4h, #0xd2 + 274c: 0f06866f movi v15.4h, #0xd3 + 2750: 0f06868f movi v15.4h, #0xd4 + 2754: 0f0686af movi v15.4h, #0xd5 + 2758: 0f0686cf movi v15.4h, #0xd6 + 275c: 0f0686ef movi v15.4h, #0xd7 + 2760: 0f06870f movi v15.4h, #0xd8 + 2764: 0f06872f movi v15.4h, #0xd9 + 2768: 0f06874f movi v15.4h, #0xda + 276c: 0f06876f movi v15.4h, #0xdb + 2770: 0f06878f movi v15.4h, #0xdc + 2774: 0f0687af movi v15.4h, #0xdd + 2778: 0f0687cf movi v15.4h, #0xde + 277c: 0f0687ef movi v15.4h, #0xdf + 2780: 0f07840f movi v15.4h, #0xe0 + 2784: 0f07842f movi v15.4h, #0xe1 + 2788: 0f07844f movi v15.4h, #0xe2 + 278c: 0f07846f movi v15.4h, #0xe3 + 2790: 0f07848f movi v15.4h, #0xe4 + 2794: 0f0784af movi v15.4h, #0xe5 + 2798: 0f0784cf movi v15.4h, #0xe6 + 279c: 0f0784ef movi v15.4h, #0xe7 + 27a0: 0f07850f movi v15.4h, #0xe8 + 27a4: 0f07852f movi v15.4h, #0xe9 + 27a8: 0f07854f movi v15.4h, #0xea + 27ac: 0f07856f movi v15.4h, #0xeb + 27b0: 0f07858f movi v15.4h, #0xec + 27b4: 0f0785af movi v15.4h, #0xed + 27b8: 0f0785cf movi v15.4h, #0xee + 27bc: 0f0785ef movi v15.4h, #0xef + 27c0: 0f07860f movi v15.4h, #0xf0 + 27c4: 0f07862f movi v15.4h, #0xf1 + 27c8: 0f07864f movi v15.4h, #0xf2 + 27cc: 0f07866f movi v15.4h, #0xf3 + 27d0: 0f07868f movi v15.4h, #0xf4 + 27d4: 0f0786af movi v15.4h, #0xf5 + 27d8: 0f0786cf movi v15.4h, #0xf6 + 27dc: 0f0786ef movi v15.4h, #0xf7 + 27e0: 0f07870f movi v15.4h, #0xf8 + 27e4: 0f07872f movi v15.4h, #0xf9 + 27e8: 0f07874f movi v15.4h, #0xfa + 27ec: 0f07876f movi v15.4h, #0xfb + 27f0: 0f07878f movi v15.4h, #0xfc + 27f4: 0f0787af movi v15.4h, #0xfd + 27f8: 0f0787cf movi v15.4h, #0xfe + 27fc: 0f0787ef movi v15.4h, #0xff + 2800: 0f00a407 movi v7.4h, #0x0, lsl #8 + 2804: 0f00a427 movi v7.4h, #0x1, lsl #8 + 2808: 0f00a447 movi v7.4h, #0x2, lsl #8 + 280c: 0f00a467 movi v7.4h, #0x3, lsl #8 + 2810: 0f00a487 movi v7.4h, #0x4, lsl #8 + 2814: 0f00a4a7 movi v7.4h, #0x5, lsl #8 + 2818: 0f00a4c7 movi v7.4h, #0x6, lsl #8 + 281c: 0f00a4e7 movi v7.4h, #0x7, lsl #8 + 2820: 0f00a507 movi v7.4h, #0x8, lsl #8 + 2824: 0f00a527 movi v7.4h, #0x9, lsl #8 + 2828: 0f00a547 movi v7.4h, #0xa, lsl #8 + 282c: 0f00a567 movi v7.4h, #0xb, lsl #8 + 2830: 0f00a587 movi v7.4h, #0xc, lsl #8 + 2834: 0f00a5a7 movi v7.4h, #0xd, lsl #8 + 2838: 0f00a5c7 movi v7.4h, #0xe, lsl #8 + 283c: 0f00a5e7 movi v7.4h, #0xf, lsl #8 + 2840: 0f00a607 movi v7.4h, #0x10, lsl #8 + 2844: 0f00a627 movi v7.4h, #0x11, lsl #8 + 2848: 0f00a647 movi v7.4h, #0x12, lsl #8 + 284c: 0f00a667 movi v7.4h, #0x13, lsl #8 + 2850: 0f00a687 movi v7.4h, #0x14, lsl #8 + 2854: 0f00a6a7 movi v7.4h, #0x15, lsl #8 + 2858: 0f00a6c7 movi v7.4h, #0x16, lsl #8 + 285c: 0f00a6e7 movi v7.4h, #0x17, lsl #8 + 2860: 0f00a707 movi v7.4h, #0x18, lsl #8 + 2864: 0f00a727 movi v7.4h, #0x19, lsl #8 + 2868: 0f00a747 movi v7.4h, #0x1a, lsl #8 + 286c: 0f00a767 movi v7.4h, #0x1b, lsl #8 + 2870: 0f00a787 movi v7.4h, #0x1c, lsl #8 + 2874: 0f00a7a7 movi v7.4h, #0x1d, lsl #8 + 2878: 0f00a7c7 movi v7.4h, #0x1e, lsl #8 + 287c: 0f00a7e7 movi v7.4h, #0x1f, lsl #8 + 2880: 0f01a407 movi v7.4h, #0x20, lsl #8 + 2884: 0f01a427 movi v7.4h, #0x21, lsl #8 + 2888: 0f01a447 movi v7.4h, #0x22, lsl #8 + 288c: 0f01a467 movi v7.4h, #0x23, lsl #8 + 2890: 0f01a487 movi v7.4h, #0x24, lsl #8 + 2894: 0f01a4a7 movi v7.4h, #0x25, lsl #8 + 2898: 0f01a4c7 movi v7.4h, #0x26, lsl #8 + 289c: 0f01a4e7 movi v7.4h, #0x27, lsl #8 + 28a0: 0f01a507 movi v7.4h, #0x28, lsl #8 + 28a4: 0f01a527 movi v7.4h, #0x29, lsl #8 + 28a8: 0f01a547 movi v7.4h, #0x2a, lsl #8 + 28ac: 0f01a567 movi v7.4h, #0x2b, lsl #8 + 28b0: 0f01a587 movi v7.4h, #0x2c, lsl #8 + 28b4: 0f01a5a7 movi v7.4h, #0x2d, lsl #8 + 28b8: 0f01a5c7 movi v7.4h, #0x2e, lsl #8 + 28bc: 0f01a5e7 movi v7.4h, #0x2f, lsl #8 + 28c0: 0f01a607 movi v7.4h, #0x30, lsl #8 + 28c4: 0f01a627 movi v7.4h, #0x31, lsl #8 + 28c8: 0f01a647 movi v7.4h, #0x32, lsl #8 + 28cc: 0f01a667 movi v7.4h, #0x33, lsl #8 + 28d0: 0f01a687 movi v7.4h, #0x34, lsl #8 + 28d4: 0f01a6a7 movi v7.4h, #0x35, lsl #8 + 28d8: 0f01a6c7 movi v7.4h, #0x36, lsl #8 + 28dc: 0f01a6e7 movi v7.4h, #0x37, lsl #8 + 28e0: 0f01a707 movi v7.4h, #0x38, lsl #8 + 28e4: 0f01a727 movi v7.4h, #0x39, lsl #8 + 28e8: 0f01a747 movi v7.4h, #0x3a, lsl #8 + 28ec: 0f01a767 movi v7.4h, #0x3b, lsl #8 + 28f0: 0f01a787 movi v7.4h, #0x3c, lsl #8 + 28f4: 0f01a7a7 movi v7.4h, #0x3d, lsl #8 + 28f8: 0f01a7c7 movi v7.4h, #0x3e, lsl #8 + 28fc: 0f01a7e7 movi v7.4h, #0x3f, lsl #8 + 2900: 0f02a407 movi v7.4h, #0x40, lsl #8 + 2904: 0f02a427 movi v7.4h, #0x41, lsl #8 + 2908: 0f02a447 movi v7.4h, #0x42, lsl #8 + 290c: 0f02a467 movi v7.4h, #0x43, lsl #8 + 2910: 0f02a487 movi v7.4h, #0x44, lsl #8 + 2914: 0f02a4a7 movi v7.4h, #0x45, lsl #8 + 2918: 0f02a4c7 movi v7.4h, #0x46, lsl #8 + 291c: 0f02a4e7 movi v7.4h, #0x47, lsl #8 + 2920: 0f02a507 movi v7.4h, #0x48, lsl #8 + 2924: 0f02a527 movi v7.4h, #0x49, lsl #8 + 2928: 0f02a547 movi v7.4h, #0x4a, lsl #8 + 292c: 0f02a567 movi v7.4h, #0x4b, lsl #8 + 2930: 0f02a587 movi v7.4h, #0x4c, lsl #8 + 2934: 0f02a5a7 movi v7.4h, #0x4d, lsl #8 + 2938: 0f02a5c7 movi v7.4h, #0x4e, lsl #8 + 293c: 0f02a5e7 movi v7.4h, #0x4f, lsl #8 + 2940: 0f02a607 movi v7.4h, #0x50, lsl #8 + 2944: 0f02a627 movi v7.4h, #0x51, lsl #8 + 2948: 0f02a647 movi v7.4h, #0x52, lsl #8 + 294c: 0f02a667 movi v7.4h, #0x53, lsl #8 + 2950: 0f02a687 movi v7.4h, #0x54, lsl #8 + 2954: 0f02a6a7 movi v7.4h, #0x55, lsl #8 + 2958: 0f02a6c7 movi v7.4h, #0x56, lsl #8 + 295c: 0f02a6e7 movi v7.4h, #0x57, lsl #8 + 2960: 0f02a707 movi v7.4h, #0x58, lsl #8 + 2964: 0f02a727 movi v7.4h, #0x59, lsl #8 + 2968: 0f02a747 movi v7.4h, #0x5a, lsl #8 + 296c: 0f02a767 movi v7.4h, #0x5b, lsl #8 + 2970: 0f02a787 movi v7.4h, #0x5c, lsl #8 + 2974: 0f02a7a7 movi v7.4h, #0x5d, lsl #8 + 2978: 0f02a7c7 movi v7.4h, #0x5e, lsl #8 + 297c: 0f02a7e7 movi v7.4h, #0x5f, lsl #8 + 2980: 0f03a407 movi v7.4h, #0x60, lsl #8 + 2984: 0f03a427 movi v7.4h, #0x61, lsl #8 + 2988: 0f03a447 movi v7.4h, #0x62, lsl #8 + 298c: 0f03a467 movi v7.4h, #0x63, lsl #8 + 2990: 0f03a487 movi v7.4h, #0x64, lsl #8 + 2994: 0f03a4a7 movi v7.4h, #0x65, lsl #8 + 2998: 0f03a4c7 movi v7.4h, #0x66, lsl #8 + 299c: 0f03a4e7 movi v7.4h, #0x67, lsl #8 + 29a0: 0f03a507 movi v7.4h, #0x68, lsl #8 + 29a4: 0f03a527 movi v7.4h, #0x69, lsl #8 + 29a8: 0f03a547 movi v7.4h, #0x6a, lsl #8 + 29ac: 0f03a567 movi v7.4h, #0x6b, lsl #8 + 29b0: 0f03a587 movi v7.4h, #0x6c, lsl #8 + 29b4: 0f03a5a7 movi v7.4h, #0x6d, lsl #8 + 29b8: 0f03a5c7 movi v7.4h, #0x6e, lsl #8 + 29bc: 0f03a5e7 movi v7.4h, #0x6f, lsl #8 + 29c0: 0f03a607 movi v7.4h, #0x70, lsl #8 + 29c4: 0f03a627 movi v7.4h, #0x71, lsl #8 + 29c8: 0f03a647 movi v7.4h, #0x72, lsl #8 + 29cc: 0f03a667 movi v7.4h, #0x73, lsl #8 + 29d0: 0f03a687 movi v7.4h, #0x74, lsl #8 + 29d4: 0f03a6a7 movi v7.4h, #0x75, lsl #8 + 29d8: 0f03a6c7 movi v7.4h, #0x76, lsl #8 + 29dc: 0f03a6e7 movi v7.4h, #0x77, lsl #8 + 29e0: 0f03a707 movi v7.4h, #0x78, lsl #8 + 29e4: 0f03a727 movi v7.4h, #0x79, lsl #8 + 29e8: 0f03a747 movi v7.4h, #0x7a, lsl #8 + 29ec: 0f03a767 movi v7.4h, #0x7b, lsl #8 + 29f0: 0f03a787 movi v7.4h, #0x7c, lsl #8 + 29f4: 0f03a7a7 movi v7.4h, #0x7d, lsl #8 + 29f8: 0f03a7c7 movi v7.4h, #0x7e, lsl #8 + 29fc: 0f03a7e7 movi v7.4h, #0x7f, lsl #8 + 2a00: 0f04a407 movi v7.4h, #0x80, lsl #8 + 2a04: 0f04a427 movi v7.4h, #0x81, lsl #8 + 2a08: 0f04a447 movi v7.4h, #0x82, lsl #8 + 2a0c: 0f04a467 movi v7.4h, #0x83, lsl #8 + 2a10: 0f04a487 movi v7.4h, #0x84, lsl #8 + 2a14: 0f04a4a7 movi v7.4h, #0x85, lsl #8 + 2a18: 0f04a4c7 movi v7.4h, #0x86, lsl #8 + 2a1c: 0f04a4e7 movi v7.4h, #0x87, lsl #8 + 2a20: 0f04a507 movi v7.4h, #0x88, lsl #8 + 2a24: 0f04a527 movi v7.4h, #0x89, lsl #8 + 2a28: 0f04a547 movi v7.4h, #0x8a, lsl #8 + 2a2c: 0f04a567 movi v7.4h, #0x8b, lsl #8 + 2a30: 0f04a587 movi v7.4h, #0x8c, lsl #8 + 2a34: 0f04a5a7 movi v7.4h, #0x8d, lsl #8 + 2a38: 0f04a5c7 movi v7.4h, #0x8e, lsl #8 + 2a3c: 0f04a5e7 movi v7.4h, #0x8f, lsl #8 + 2a40: 0f04a607 movi v7.4h, #0x90, lsl #8 + 2a44: 0f04a627 movi v7.4h, #0x91, lsl #8 + 2a48: 0f04a647 movi v7.4h, #0x92, lsl #8 + 2a4c: 0f04a667 movi v7.4h, #0x93, lsl #8 + 2a50: 0f04a687 movi v7.4h, #0x94, lsl #8 + 2a54: 0f04a6a7 movi v7.4h, #0x95, lsl #8 + 2a58: 0f04a6c7 movi v7.4h, #0x96, lsl #8 + 2a5c: 0f04a6e7 movi v7.4h, #0x97, lsl #8 + 2a60: 0f04a707 movi v7.4h, #0x98, lsl #8 + 2a64: 0f04a727 movi v7.4h, #0x99, lsl #8 + 2a68: 0f04a747 movi v7.4h, #0x9a, lsl #8 + 2a6c: 0f04a767 movi v7.4h, #0x9b, lsl #8 + 2a70: 0f04a787 movi v7.4h, #0x9c, lsl #8 + 2a74: 0f04a7a7 movi v7.4h, #0x9d, lsl #8 + 2a78: 0f04a7c7 movi v7.4h, #0x9e, lsl #8 + 2a7c: 0f04a7e7 movi v7.4h, #0x9f, lsl #8 + 2a80: 0f05a407 movi v7.4h, #0xa0, lsl #8 + 2a84: 0f05a427 movi v7.4h, #0xa1, lsl #8 + 2a88: 0f05a447 movi v7.4h, #0xa2, lsl #8 + 2a8c: 0f05a467 movi v7.4h, #0xa3, lsl #8 + 2a90: 0f05a487 movi v7.4h, #0xa4, lsl #8 + 2a94: 0f05a4a7 movi v7.4h, #0xa5, lsl #8 + 2a98: 0f05a4c7 movi v7.4h, #0xa6, lsl #8 + 2a9c: 0f05a4e7 movi v7.4h, #0xa7, lsl #8 + 2aa0: 0f05a507 movi v7.4h, #0xa8, lsl #8 + 2aa4: 0f05a527 movi v7.4h, #0xa9, lsl #8 + 2aa8: 0f05a547 movi v7.4h, #0xaa, lsl #8 + 2aac: 0f05a567 movi v7.4h, #0xab, lsl #8 + 2ab0: 0f05a587 movi v7.4h, #0xac, lsl #8 + 2ab4: 0f05a5a7 movi v7.4h, #0xad, lsl #8 + 2ab8: 0f05a5c7 movi v7.4h, #0xae, lsl #8 + 2abc: 0f05a5e7 movi v7.4h, #0xaf, lsl #8 + 2ac0: 0f05a607 movi v7.4h, #0xb0, lsl #8 + 2ac4: 0f05a627 movi v7.4h, #0xb1, lsl #8 + 2ac8: 0f05a647 movi v7.4h, #0xb2, lsl #8 + 2acc: 0f05a667 movi v7.4h, #0xb3, lsl #8 + 2ad0: 0f05a687 movi v7.4h, #0xb4, lsl #8 + 2ad4: 0f05a6a7 movi v7.4h, #0xb5, lsl #8 + 2ad8: 0f05a6c7 movi v7.4h, #0xb6, lsl #8 + 2adc: 0f05a6e7 movi v7.4h, #0xb7, lsl #8 + 2ae0: 0f05a707 movi v7.4h, #0xb8, lsl #8 + 2ae4: 0f05a727 movi v7.4h, #0xb9, lsl #8 + 2ae8: 0f05a747 movi v7.4h, #0xba, lsl #8 + 2aec: 0f05a767 movi v7.4h, #0xbb, lsl #8 + 2af0: 0f05a787 movi v7.4h, #0xbc, lsl #8 + 2af4: 0f05a7a7 movi v7.4h, #0xbd, lsl #8 + 2af8: 0f05a7c7 movi v7.4h, #0xbe, lsl #8 + 2afc: 0f05a7e7 movi v7.4h, #0xbf, lsl #8 + 2b00: 0f06a407 movi v7.4h, #0xc0, lsl #8 + 2b04: 0f06a427 movi v7.4h, #0xc1, lsl #8 + 2b08: 0f06a447 movi v7.4h, #0xc2, lsl #8 + 2b0c: 0f06a467 movi v7.4h, #0xc3, lsl #8 + 2b10: 0f06a487 movi v7.4h, #0xc4, lsl #8 + 2b14: 0f06a4a7 movi v7.4h, #0xc5, lsl #8 + 2b18: 0f06a4c7 movi v7.4h, #0xc6, lsl #8 + 2b1c: 0f06a4e7 movi v7.4h, #0xc7, lsl #8 + 2b20: 0f06a507 movi v7.4h, #0xc8, lsl #8 + 2b24: 0f06a527 movi v7.4h, #0xc9, lsl #8 + 2b28: 0f06a547 movi v7.4h, #0xca, lsl #8 + 2b2c: 0f06a567 movi v7.4h, #0xcb, lsl #8 + 2b30: 0f06a587 movi v7.4h, #0xcc, lsl #8 + 2b34: 0f06a5a7 movi v7.4h, #0xcd, lsl #8 + 2b38: 0f06a5c7 movi v7.4h, #0xce, lsl #8 + 2b3c: 0f06a5e7 movi v7.4h, #0xcf, lsl #8 + 2b40: 0f06a607 movi v7.4h, #0xd0, lsl #8 + 2b44: 0f06a627 movi v7.4h, #0xd1, lsl #8 + 2b48: 0f06a647 movi v7.4h, #0xd2, lsl #8 + 2b4c: 0f06a667 movi v7.4h, #0xd3, lsl #8 + 2b50: 0f06a687 movi v7.4h, #0xd4, lsl #8 + 2b54: 0f06a6a7 movi v7.4h, #0xd5, lsl #8 + 2b58: 0f06a6c7 movi v7.4h, #0xd6, lsl #8 + 2b5c: 0f06a6e7 movi v7.4h, #0xd7, lsl #8 + 2b60: 0f06a707 movi v7.4h, #0xd8, lsl #8 + 2b64: 0f06a727 movi v7.4h, #0xd9, lsl #8 + 2b68: 0f06a747 movi v7.4h, #0xda, lsl #8 + 2b6c: 0f06a767 movi v7.4h, #0xdb, lsl #8 + 2b70: 0f06a787 movi v7.4h, #0xdc, lsl #8 + 2b74: 0f06a7a7 movi v7.4h, #0xdd, lsl #8 + 2b78: 0f06a7c7 movi v7.4h, #0xde, lsl #8 + 2b7c: 0f06a7e7 movi v7.4h, #0xdf, lsl #8 + 2b80: 0f07a407 movi v7.4h, #0xe0, lsl #8 + 2b84: 0f07a427 movi v7.4h, #0xe1, lsl #8 + 2b88: 0f07a447 movi v7.4h, #0xe2, lsl #8 + 2b8c: 0f07a467 movi v7.4h, #0xe3, lsl #8 + 2b90: 0f07a487 movi v7.4h, #0xe4, lsl #8 + 2b94: 0f07a4a7 movi v7.4h, #0xe5, lsl #8 + 2b98: 0f07a4c7 movi v7.4h, #0xe6, lsl #8 + 2b9c: 0f07a4e7 movi v7.4h, #0xe7, lsl #8 + 2ba0: 0f07a507 movi v7.4h, #0xe8, lsl #8 + 2ba4: 0f07a527 movi v7.4h, #0xe9, lsl #8 + 2ba8: 0f07a547 movi v7.4h, #0xea, lsl #8 + 2bac: 0f07a567 movi v7.4h, #0xeb, lsl #8 + 2bb0: 0f07a587 movi v7.4h, #0xec, lsl #8 + 2bb4: 0f07a5a7 movi v7.4h, #0xed, lsl #8 + 2bb8: 0f07a5c7 movi v7.4h, #0xee, lsl #8 + 2bbc: 0f07a5e7 movi v7.4h, #0xef, lsl #8 + 2bc0: 0f07a607 movi v7.4h, #0xf0, lsl #8 + 2bc4: 0f07a627 movi v7.4h, #0xf1, lsl #8 + 2bc8: 0f07a647 movi v7.4h, #0xf2, lsl #8 + 2bcc: 0f07a667 movi v7.4h, #0xf3, lsl #8 + 2bd0: 0f07a687 movi v7.4h, #0xf4, lsl #8 + 2bd4: 0f07a6a7 movi v7.4h, #0xf5, lsl #8 + 2bd8: 0f07a6c7 movi v7.4h, #0xf6, lsl #8 + 2bdc: 0f07a6e7 movi v7.4h, #0xf7, lsl #8 + 2be0: 0f07a707 movi v7.4h, #0xf8, lsl #8 + 2be4: 0f07a727 movi v7.4h, #0xf9, lsl #8 + 2be8: 0f07a747 movi v7.4h, #0xfa, lsl #8 + 2bec: 0f07a767 movi v7.4h, #0xfb, lsl #8 + 2bf0: 0f07a787 movi v7.4h, #0xfc, lsl #8 + 2bf4: 0f07a7a7 movi v7.4h, #0xfd, lsl #8 + 2bf8: 0f07a7c7 movi v7.4h, #0xfe, lsl #8 + 2bfc: 0f07a7e7 movi v7.4h, #0xff, lsl #8 + 2c00: 0f00840f movi v15.4h, #0x0 + 2c04: 0f00842f movi v15.4h, #0x1 + 2c08: 0f00844f movi v15.4h, #0x2 + 2c0c: 0f00846f movi v15.4h, #0x3 + 2c10: 0f00848f movi v15.4h, #0x4 + 2c14: 0f0084af movi v15.4h, #0x5 + 2c18: 0f0084cf movi v15.4h, #0x6 + 2c1c: 0f0084ef movi v15.4h, #0x7 + 2c20: 0f00850f movi v15.4h, #0x8 + 2c24: 0f00852f movi v15.4h, #0x9 + 2c28: 0f00854f movi v15.4h, #0xa + 2c2c: 0f00856f movi v15.4h, #0xb + 2c30: 0f00858f movi v15.4h, #0xc + 2c34: 0f0085af movi v15.4h, #0xd + 2c38: 0f0085cf movi v15.4h, #0xe + 2c3c: 0f0085ef movi v15.4h, #0xf + 2c40: 0f00860f movi v15.4h, #0x10 + 2c44: 0f00862f movi v15.4h, #0x11 + 2c48: 0f00864f movi v15.4h, #0x12 + 2c4c: 0f00866f movi v15.4h, #0x13 + 2c50: 0f00868f movi v15.4h, #0x14 + 2c54: 0f0086af movi v15.4h, #0x15 + 2c58: 0f0086cf movi v15.4h, #0x16 + 2c5c: 0f0086ef movi v15.4h, #0x17 + 2c60: 0f00870f movi v15.4h, #0x18 + 2c64: 0f00872f movi v15.4h, #0x19 + 2c68: 0f00874f movi v15.4h, #0x1a + 2c6c: 0f00876f movi v15.4h, #0x1b + 2c70: 0f00878f movi v15.4h, #0x1c + 2c74: 0f0087af movi v15.4h, #0x1d + 2c78: 0f0087cf movi v15.4h, #0x1e + 2c7c: 0f0087ef movi v15.4h, #0x1f + 2c80: 0f01840f movi v15.4h, #0x20 + 2c84: 0f01842f movi v15.4h, #0x21 + 2c88: 0f01844f movi v15.4h, #0x22 + 2c8c: 0f01846f movi v15.4h, #0x23 + 2c90: 0f01848f movi v15.4h, #0x24 + 2c94: 0f0184af movi v15.4h, #0x25 + 2c98: 0f0184cf movi v15.4h, #0x26 + 2c9c: 0f0184ef movi v15.4h, #0x27 + 2ca0: 0f01850f movi v15.4h, #0x28 + 2ca4: 0f01852f movi v15.4h, #0x29 + 2ca8: 0f01854f movi v15.4h, #0x2a + 2cac: 0f01856f movi v15.4h, #0x2b + 2cb0: 0f01858f movi v15.4h, #0x2c + 2cb4: 0f0185af movi v15.4h, #0x2d + 2cb8: 0f0185cf movi v15.4h, #0x2e + 2cbc: 0f0185ef movi v15.4h, #0x2f + 2cc0: 0f01860f movi v15.4h, #0x30 + 2cc4: 0f01862f movi v15.4h, #0x31 + 2cc8: 0f01864f movi v15.4h, #0x32 + 2ccc: 0f01866f movi v15.4h, #0x33 + 2cd0: 0f01868f movi v15.4h, #0x34 + 2cd4: 0f0186af movi v15.4h, #0x35 + 2cd8: 0f0186cf movi v15.4h, #0x36 + 2cdc: 0f0186ef movi v15.4h, #0x37 + 2ce0: 0f01870f movi v15.4h, #0x38 + 2ce4: 0f01872f movi v15.4h, #0x39 + 2ce8: 0f01874f movi v15.4h, #0x3a + 2cec: 0f01876f movi v15.4h, #0x3b + 2cf0: 0f01878f movi v15.4h, #0x3c + 2cf4: 0f0187af movi v15.4h, #0x3d + 2cf8: 0f0187cf movi v15.4h, #0x3e + 2cfc: 0f0187ef movi v15.4h, #0x3f + 2d00: 0f02840f movi v15.4h, #0x40 + 2d04: 0f02842f movi v15.4h, #0x41 + 2d08: 0f02844f movi v15.4h, #0x42 + 2d0c: 0f02846f movi v15.4h, #0x43 + 2d10: 0f02848f movi v15.4h, #0x44 + 2d14: 0f0284af movi v15.4h, #0x45 + 2d18: 0f0284cf movi v15.4h, #0x46 + 2d1c: 0f0284ef movi v15.4h, #0x47 + 2d20: 0f02850f movi v15.4h, #0x48 + 2d24: 0f02852f movi v15.4h, #0x49 + 2d28: 0f02854f movi v15.4h, #0x4a + 2d2c: 0f02856f movi v15.4h, #0x4b + 2d30: 0f02858f movi v15.4h, #0x4c + 2d34: 0f0285af movi v15.4h, #0x4d + 2d38: 0f0285cf movi v15.4h, #0x4e + 2d3c: 0f0285ef movi v15.4h, #0x4f + 2d40: 0f02860f movi v15.4h, #0x50 + 2d44: 0f02862f movi v15.4h, #0x51 + 2d48: 0f02864f movi v15.4h, #0x52 + 2d4c: 0f02866f movi v15.4h, #0x53 + 2d50: 0f02868f movi v15.4h, #0x54 + 2d54: 0f0286af movi v15.4h, #0x55 + 2d58: 0f0286cf movi v15.4h, #0x56 + 2d5c: 0f0286ef movi v15.4h, #0x57 + 2d60: 0f02870f movi v15.4h, #0x58 + 2d64: 0f02872f movi v15.4h, #0x59 + 2d68: 0f02874f movi v15.4h, #0x5a + 2d6c: 0f02876f movi v15.4h, #0x5b + 2d70: 0f02878f movi v15.4h, #0x5c + 2d74: 0f0287af movi v15.4h, #0x5d + 2d78: 0f0287cf movi v15.4h, #0x5e + 2d7c: 0f0287ef movi v15.4h, #0x5f + 2d80: 0f03840f movi v15.4h, #0x60 + 2d84: 0f03842f movi v15.4h, #0x61 + 2d88: 0f03844f movi v15.4h, #0x62 + 2d8c: 0f03846f movi v15.4h, #0x63 + 2d90: 0f03848f movi v15.4h, #0x64 + 2d94: 0f0384af movi v15.4h, #0x65 + 2d98: 0f0384cf movi v15.4h, #0x66 + 2d9c: 0f0384ef movi v15.4h, #0x67 + 2da0: 0f03850f movi v15.4h, #0x68 + 2da4: 0f03852f movi v15.4h, #0x69 + 2da8: 0f03854f movi v15.4h, #0x6a + 2dac: 0f03856f movi v15.4h, #0x6b + 2db0: 0f03858f movi v15.4h, #0x6c + 2db4: 0f0385af movi v15.4h, #0x6d + 2db8: 0f0385cf movi v15.4h, #0x6e + 2dbc: 0f0385ef movi v15.4h, #0x6f + 2dc0: 0f03860f movi v15.4h, #0x70 + 2dc4: 0f03862f movi v15.4h, #0x71 + 2dc8: 0f03864f movi v15.4h, #0x72 + 2dcc: 0f03866f movi v15.4h, #0x73 + 2dd0: 0f03868f movi v15.4h, #0x74 + 2dd4: 0f0386af movi v15.4h, #0x75 + 2dd8: 0f0386cf movi v15.4h, #0x76 + 2ddc: 0f0386ef movi v15.4h, #0x77 + 2de0: 0f03870f movi v15.4h, #0x78 + 2de4: 0f03872f movi v15.4h, #0x79 + 2de8: 0f03874f movi v15.4h, #0x7a + 2dec: 0f03876f movi v15.4h, #0x7b + 2df0: 0f03878f movi v15.4h, #0x7c + 2df4: 0f0387af movi v15.4h, #0x7d + 2df8: 0f0387cf movi v15.4h, #0x7e + 2dfc: 0f0387ef movi v15.4h, #0x7f + 2e00: 0f04840f movi v15.4h, #0x80 + 2e04: 0f04842f movi v15.4h, #0x81 + 2e08: 0f04844f movi v15.4h, #0x82 + 2e0c: 0f04846f movi v15.4h, #0x83 + 2e10: 0f04848f movi v15.4h, #0x84 + 2e14: 0f0484af movi v15.4h, #0x85 + 2e18: 0f0484cf movi v15.4h, #0x86 + 2e1c: 0f0484ef movi v15.4h, #0x87 + 2e20: 0f04850f movi v15.4h, #0x88 + 2e24: 0f04852f movi v15.4h, #0x89 + 2e28: 0f04854f movi v15.4h, #0x8a + 2e2c: 0f04856f movi v15.4h, #0x8b + 2e30: 0f04858f movi v15.4h, #0x8c + 2e34: 0f0485af movi v15.4h, #0x8d + 2e38: 0f0485cf movi v15.4h, #0x8e + 2e3c: 0f0485ef movi v15.4h, #0x8f + 2e40: 0f04860f movi v15.4h, #0x90 + 2e44: 0f04862f movi v15.4h, #0x91 + 2e48: 0f04864f movi v15.4h, #0x92 + 2e4c: 0f04866f movi v15.4h, #0x93 + 2e50: 0f04868f movi v15.4h, #0x94 + 2e54: 0f0486af movi v15.4h, #0x95 + 2e58: 0f0486cf movi v15.4h, #0x96 + 2e5c: 0f0486ef movi v15.4h, #0x97 + 2e60: 0f04870f movi v15.4h, #0x98 + 2e64: 0f04872f movi v15.4h, #0x99 + 2e68: 0f04874f movi v15.4h, #0x9a + 2e6c: 0f04876f movi v15.4h, #0x9b + 2e70: 0f04878f movi v15.4h, #0x9c + 2e74: 0f0487af movi v15.4h, #0x9d + 2e78: 0f0487cf movi v15.4h, #0x9e + 2e7c: 0f0487ef movi v15.4h, #0x9f + 2e80: 0f05840f movi v15.4h, #0xa0 + 2e84: 0f05842f movi v15.4h, #0xa1 + 2e88: 0f05844f movi v15.4h, #0xa2 + 2e8c: 0f05846f movi v15.4h, #0xa3 + 2e90: 0f05848f movi v15.4h, #0xa4 + 2e94: 0f0584af movi v15.4h, #0xa5 + 2e98: 0f0584cf movi v15.4h, #0xa6 + 2e9c: 0f0584ef movi v15.4h, #0xa7 + 2ea0: 0f05850f movi v15.4h, #0xa8 + 2ea4: 0f05852f movi v15.4h, #0xa9 + 2ea8: 0f05854f movi v15.4h, #0xaa + 2eac: 0f05856f movi v15.4h, #0xab + 2eb0: 0f05858f movi v15.4h, #0xac + 2eb4: 0f0585af movi v15.4h, #0xad + 2eb8: 0f0585cf movi v15.4h, #0xae + 2ebc: 0f0585ef movi v15.4h, #0xaf + 2ec0: 0f05860f movi v15.4h, #0xb0 + 2ec4: 0f05862f movi v15.4h, #0xb1 + 2ec8: 0f05864f movi v15.4h, #0xb2 + 2ecc: 0f05866f movi v15.4h, #0xb3 + 2ed0: 0f05868f movi v15.4h, #0xb4 + 2ed4: 0f0586af movi v15.4h, #0xb5 + 2ed8: 0f0586cf movi v15.4h, #0xb6 + 2edc: 0f0586ef movi v15.4h, #0xb7 + 2ee0: 0f05870f movi v15.4h, #0xb8 + 2ee4: 0f05872f movi v15.4h, #0xb9 + 2ee8: 0f05874f movi v15.4h, #0xba + 2eec: 0f05876f movi v15.4h, #0xbb + 2ef0: 0f05878f movi v15.4h, #0xbc + 2ef4: 0f0587af movi v15.4h, #0xbd + 2ef8: 0f0587cf movi v15.4h, #0xbe + 2efc: 0f0587ef movi v15.4h, #0xbf + 2f00: 0f06840f movi v15.4h, #0xc0 + 2f04: 0f06842f movi v15.4h, #0xc1 + 2f08: 0f06844f movi v15.4h, #0xc2 + 2f0c: 0f06846f movi v15.4h, #0xc3 + 2f10: 0f06848f movi v15.4h, #0xc4 + 2f14: 0f0684af movi v15.4h, #0xc5 + 2f18: 0f0684cf movi v15.4h, #0xc6 + 2f1c: 0f0684ef movi v15.4h, #0xc7 + 2f20: 0f06850f movi v15.4h, #0xc8 + 2f24: 0f06852f movi v15.4h, #0xc9 + 2f28: 0f06854f movi v15.4h, #0xca + 2f2c: 0f06856f movi v15.4h, #0xcb + 2f30: 0f06858f movi v15.4h, #0xcc + 2f34: 0f0685af movi v15.4h, #0xcd + 2f38: 0f0685cf movi v15.4h, #0xce + 2f3c: 0f0685ef movi v15.4h, #0xcf + 2f40: 0f06860f movi v15.4h, #0xd0 + 2f44: 0f06862f movi v15.4h, #0xd1 + 2f48: 0f06864f movi v15.4h, #0xd2 + 2f4c: 0f06866f movi v15.4h, #0xd3 + 2f50: 0f06868f movi v15.4h, #0xd4 + 2f54: 0f0686af movi v15.4h, #0xd5 + 2f58: 0f0686cf movi v15.4h, #0xd6 + 2f5c: 0f0686ef movi v15.4h, #0xd7 + 2f60: 0f06870f movi v15.4h, #0xd8 + 2f64: 0f06872f movi v15.4h, #0xd9 + 2f68: 0f06874f movi v15.4h, #0xda + 2f6c: 0f06876f movi v15.4h, #0xdb + 2f70: 0f06878f movi v15.4h, #0xdc + 2f74: 0f0687af movi v15.4h, #0xdd + 2f78: 0f0687cf movi v15.4h, #0xde + 2f7c: 0f0687ef movi v15.4h, #0xdf + 2f80: 0f07840f movi v15.4h, #0xe0 + 2f84: 0f07842f movi v15.4h, #0xe1 + 2f88: 0f07844f movi v15.4h, #0xe2 + 2f8c: 0f07846f movi v15.4h, #0xe3 + 2f90: 0f07848f movi v15.4h, #0xe4 + 2f94: 0f0784af movi v15.4h, #0xe5 + 2f98: 0f0784cf movi v15.4h, #0xe6 + 2f9c: 0f0784ef movi v15.4h, #0xe7 + 2fa0: 0f07850f movi v15.4h, #0xe8 + 2fa4: 0f07852f movi v15.4h, #0xe9 + 2fa8: 0f07854f movi v15.4h, #0xea + 2fac: 0f07856f movi v15.4h, #0xeb + 2fb0: 0f07858f movi v15.4h, #0xec + 2fb4: 0f0785af movi v15.4h, #0xed + 2fb8: 0f0785cf movi v15.4h, #0xee + 2fbc: 0f0785ef movi v15.4h, #0xef + 2fc0: 0f07860f movi v15.4h, #0xf0 + 2fc4: 0f07862f movi v15.4h, #0xf1 + 2fc8: 0f07864f movi v15.4h, #0xf2 + 2fcc: 0f07866f movi v15.4h, #0xf3 + 2fd0: 0f07868f movi v15.4h, #0xf4 + 2fd4: 0f0786af movi v15.4h, #0xf5 + 2fd8: 0f0786cf movi v15.4h, #0xf6 + 2fdc: 0f0786ef movi v15.4h, #0xf7 + 2fe0: 0f07870f movi v15.4h, #0xf8 + 2fe4: 0f07872f movi v15.4h, #0xf9 + 2fe8: 0f07874f movi v15.4h, #0xfa + 2fec: 0f07876f movi v15.4h, #0xfb + 2ff0: 0f07878f movi v15.4h, #0xfc + 2ff4: 0f0787af movi v15.4h, #0xfd + 2ff8: 0f0787cf movi v15.4h, #0xfe + 2ffc: 0f0787ef movi v15.4h, #0xff + 3000: 4f008407 movi v7.8h, #0x0 + 3004: 4f008427 movi v7.8h, #0x1 + 3008: 4f008447 movi v7.8h, #0x2 + 300c: 4f008467 movi v7.8h, #0x3 + 3010: 4f008487 movi v7.8h, #0x4 + 3014: 4f0084a7 movi v7.8h, #0x5 + 3018: 4f0084c7 movi v7.8h, #0x6 + 301c: 4f0084e7 movi v7.8h, #0x7 + 3020: 4f008507 movi v7.8h, #0x8 + 3024: 4f008527 movi v7.8h, #0x9 + 3028: 4f008547 movi v7.8h, #0xa + 302c: 4f008567 movi v7.8h, #0xb + 3030: 4f008587 movi v7.8h, #0xc + 3034: 4f0085a7 movi v7.8h, #0xd + 3038: 4f0085c7 movi v7.8h, #0xe + 303c: 4f0085e7 movi v7.8h, #0xf + 3040: 4f008607 movi v7.8h, #0x10 + 3044: 4f008627 movi v7.8h, #0x11 + 3048: 4f008647 movi v7.8h, #0x12 + 304c: 4f008667 movi v7.8h, #0x13 + 3050: 4f008687 movi v7.8h, #0x14 + 3054: 4f0086a7 movi v7.8h, #0x15 + 3058: 4f0086c7 movi v7.8h, #0x16 + 305c: 4f0086e7 movi v7.8h, #0x17 + 3060: 4f008707 movi v7.8h, #0x18 + 3064: 4f008727 movi v7.8h, #0x19 + 3068: 4f008747 movi v7.8h, #0x1a + 306c: 4f008767 movi v7.8h, #0x1b + 3070: 4f008787 movi v7.8h, #0x1c + 3074: 4f0087a7 movi v7.8h, #0x1d + 3078: 4f0087c7 movi v7.8h, #0x1e + 307c: 4f0087e7 movi v7.8h, #0x1f + 3080: 4f018407 movi v7.8h, #0x20 + 3084: 4f018427 movi v7.8h, #0x21 + 3088: 4f018447 movi v7.8h, #0x22 + 308c: 4f018467 movi v7.8h, #0x23 + 3090: 4f018487 movi v7.8h, #0x24 + 3094: 4f0184a7 movi v7.8h, #0x25 + 3098: 4f0184c7 movi v7.8h, #0x26 + 309c: 4f0184e7 movi v7.8h, #0x27 + 30a0: 4f018507 movi v7.8h, #0x28 + 30a4: 4f018527 movi v7.8h, #0x29 + 30a8: 4f018547 movi v7.8h, #0x2a + 30ac: 4f018567 movi v7.8h, #0x2b + 30b0: 4f018587 movi v7.8h, #0x2c + 30b4: 4f0185a7 movi v7.8h, #0x2d + 30b8: 4f0185c7 movi v7.8h, #0x2e + 30bc: 4f0185e7 movi v7.8h, #0x2f + 30c0: 4f018607 movi v7.8h, #0x30 + 30c4: 4f018627 movi v7.8h, #0x31 + 30c8: 4f018647 movi v7.8h, #0x32 + 30cc: 4f018667 movi v7.8h, #0x33 + 30d0: 4f018687 movi v7.8h, #0x34 + 30d4: 4f0186a7 movi v7.8h, #0x35 + 30d8: 4f0186c7 movi v7.8h, #0x36 + 30dc: 4f0186e7 movi v7.8h, #0x37 + 30e0: 4f018707 movi v7.8h, #0x38 + 30e4: 4f018727 movi v7.8h, #0x39 + 30e8: 4f018747 movi v7.8h, #0x3a + 30ec: 4f018767 movi v7.8h, #0x3b + 30f0: 4f018787 movi v7.8h, #0x3c + 30f4: 4f0187a7 movi v7.8h, #0x3d + 30f8: 4f0187c7 movi v7.8h, #0x3e + 30fc: 4f0187e7 movi v7.8h, #0x3f + 3100: 4f028407 movi v7.8h, #0x40 + 3104: 4f028427 movi v7.8h, #0x41 + 3108: 4f028447 movi v7.8h, #0x42 + 310c: 4f028467 movi v7.8h, #0x43 + 3110: 4f028487 movi v7.8h, #0x44 + 3114: 4f0284a7 movi v7.8h, #0x45 + 3118: 4f0284c7 movi v7.8h, #0x46 + 311c: 4f0284e7 movi v7.8h, #0x47 + 3120: 4f028507 movi v7.8h, #0x48 + 3124: 4f028527 movi v7.8h, #0x49 + 3128: 4f028547 movi v7.8h, #0x4a + 312c: 4f028567 movi v7.8h, #0x4b + 3130: 4f028587 movi v7.8h, #0x4c + 3134: 4f0285a7 movi v7.8h, #0x4d + 3138: 4f0285c7 movi v7.8h, #0x4e + 313c: 4f0285e7 movi v7.8h, #0x4f + 3140: 4f028607 movi v7.8h, #0x50 + 3144: 4f028627 movi v7.8h, #0x51 + 3148: 4f028647 movi v7.8h, #0x52 + 314c: 4f028667 movi v7.8h, #0x53 + 3150: 4f028687 movi v7.8h, #0x54 + 3154: 4f0286a7 movi v7.8h, #0x55 + 3158: 4f0286c7 movi v7.8h, #0x56 + 315c: 4f0286e7 movi v7.8h, #0x57 + 3160: 4f028707 movi v7.8h, #0x58 + 3164: 4f028727 movi v7.8h, #0x59 + 3168: 4f028747 movi v7.8h, #0x5a + 316c: 4f028767 movi v7.8h, #0x5b + 3170: 4f028787 movi v7.8h, #0x5c + 3174: 4f0287a7 movi v7.8h, #0x5d + 3178: 4f0287c7 movi v7.8h, #0x5e + 317c: 4f0287e7 movi v7.8h, #0x5f + 3180: 4f038407 movi v7.8h, #0x60 + 3184: 4f038427 movi v7.8h, #0x61 + 3188: 4f038447 movi v7.8h, #0x62 + 318c: 4f038467 movi v7.8h, #0x63 + 3190: 4f038487 movi v7.8h, #0x64 + 3194: 4f0384a7 movi v7.8h, #0x65 + 3198: 4f0384c7 movi v7.8h, #0x66 + 319c: 4f0384e7 movi v7.8h, #0x67 + 31a0: 4f038507 movi v7.8h, #0x68 + 31a4: 4f038527 movi v7.8h, #0x69 + 31a8: 4f038547 movi v7.8h, #0x6a + 31ac: 4f038567 movi v7.8h, #0x6b + 31b0: 4f038587 movi v7.8h, #0x6c + 31b4: 4f0385a7 movi v7.8h, #0x6d + 31b8: 4f0385c7 movi v7.8h, #0x6e + 31bc: 4f0385e7 movi v7.8h, #0x6f + 31c0: 4f038607 movi v7.8h, #0x70 + 31c4: 4f038627 movi v7.8h, #0x71 + 31c8: 4f038647 movi v7.8h, #0x72 + 31cc: 4f038667 movi v7.8h, #0x73 + 31d0: 4f038687 movi v7.8h, #0x74 + 31d4: 4f0386a7 movi v7.8h, #0x75 + 31d8: 4f0386c7 movi v7.8h, #0x76 + 31dc: 4f0386e7 movi v7.8h, #0x77 + 31e0: 4f038707 movi v7.8h, #0x78 + 31e4: 4f038727 movi v7.8h, #0x79 + 31e8: 4f038747 movi v7.8h, #0x7a + 31ec: 4f038767 movi v7.8h, #0x7b + 31f0: 4f038787 movi v7.8h, #0x7c + 31f4: 4f0387a7 movi v7.8h, #0x7d + 31f8: 4f0387c7 movi v7.8h, #0x7e + 31fc: 4f0387e7 movi v7.8h, #0x7f + 3200: 4f048407 movi v7.8h, #0x80 + 3204: 4f048427 movi v7.8h, #0x81 + 3208: 4f048447 movi v7.8h, #0x82 + 320c: 4f048467 movi v7.8h, #0x83 + 3210: 4f048487 movi v7.8h, #0x84 + 3214: 4f0484a7 movi v7.8h, #0x85 + 3218: 4f0484c7 movi v7.8h, #0x86 + 321c: 4f0484e7 movi v7.8h, #0x87 + 3220: 4f048507 movi v7.8h, #0x88 + 3224: 4f048527 movi v7.8h, #0x89 + 3228: 4f048547 movi v7.8h, #0x8a + 322c: 4f048567 movi v7.8h, #0x8b + 3230: 4f048587 movi v7.8h, #0x8c + 3234: 4f0485a7 movi v7.8h, #0x8d + 3238: 4f0485c7 movi v7.8h, #0x8e + 323c: 4f0485e7 movi v7.8h, #0x8f + 3240: 4f048607 movi v7.8h, #0x90 + 3244: 4f048627 movi v7.8h, #0x91 + 3248: 4f048647 movi v7.8h, #0x92 + 324c: 4f048667 movi v7.8h, #0x93 + 3250: 4f048687 movi v7.8h, #0x94 + 3254: 4f0486a7 movi v7.8h, #0x95 + 3258: 4f0486c7 movi v7.8h, #0x96 + 325c: 4f0486e7 movi v7.8h, #0x97 + 3260: 4f048707 movi v7.8h, #0x98 + 3264: 4f048727 movi v7.8h, #0x99 + 3268: 4f048747 movi v7.8h, #0x9a + 326c: 4f048767 movi v7.8h, #0x9b + 3270: 4f048787 movi v7.8h, #0x9c + 3274: 4f0487a7 movi v7.8h, #0x9d + 3278: 4f0487c7 movi v7.8h, #0x9e + 327c: 4f0487e7 movi v7.8h, #0x9f + 3280: 4f058407 movi v7.8h, #0xa0 + 3284: 4f058427 movi v7.8h, #0xa1 + 3288: 4f058447 movi v7.8h, #0xa2 + 328c: 4f058467 movi v7.8h, #0xa3 + 3290: 4f058487 movi v7.8h, #0xa4 + 3294: 4f0584a7 movi v7.8h, #0xa5 + 3298: 4f0584c7 movi v7.8h, #0xa6 + 329c: 4f0584e7 movi v7.8h, #0xa7 + 32a0: 4f058507 movi v7.8h, #0xa8 + 32a4: 4f058527 movi v7.8h, #0xa9 + 32a8: 4f058547 movi v7.8h, #0xaa + 32ac: 4f058567 movi v7.8h, #0xab + 32b0: 4f058587 movi v7.8h, #0xac + 32b4: 4f0585a7 movi v7.8h, #0xad + 32b8: 4f0585c7 movi v7.8h, #0xae + 32bc: 4f0585e7 movi v7.8h, #0xaf + 32c0: 4f058607 movi v7.8h, #0xb0 + 32c4: 4f058627 movi v7.8h, #0xb1 + 32c8: 4f058647 movi v7.8h, #0xb2 + 32cc: 4f058667 movi v7.8h, #0xb3 + 32d0: 4f058687 movi v7.8h, #0xb4 + 32d4: 4f0586a7 movi v7.8h, #0xb5 + 32d8: 4f0586c7 movi v7.8h, #0xb6 + 32dc: 4f0586e7 movi v7.8h, #0xb7 + 32e0: 4f058707 movi v7.8h, #0xb8 + 32e4: 4f058727 movi v7.8h, #0xb9 + 32e8: 4f058747 movi v7.8h, #0xba + 32ec: 4f058767 movi v7.8h, #0xbb + 32f0: 4f058787 movi v7.8h, #0xbc + 32f4: 4f0587a7 movi v7.8h, #0xbd + 32f8: 4f0587c7 movi v7.8h, #0xbe + 32fc: 4f0587e7 movi v7.8h, #0xbf + 3300: 4f068407 movi v7.8h, #0xc0 + 3304: 4f068427 movi v7.8h, #0xc1 + 3308: 4f068447 movi v7.8h, #0xc2 + 330c: 4f068467 movi v7.8h, #0xc3 + 3310: 4f068487 movi v7.8h, #0xc4 + 3314: 4f0684a7 movi v7.8h, #0xc5 + 3318: 4f0684c7 movi v7.8h, #0xc6 + 331c: 4f0684e7 movi v7.8h, #0xc7 + 3320: 4f068507 movi v7.8h, #0xc8 + 3324: 4f068527 movi v7.8h, #0xc9 + 3328: 4f068547 movi v7.8h, #0xca + 332c: 4f068567 movi v7.8h, #0xcb + 3330: 4f068587 movi v7.8h, #0xcc + 3334: 4f0685a7 movi v7.8h, #0xcd + 3338: 4f0685c7 movi v7.8h, #0xce + 333c: 4f0685e7 movi v7.8h, #0xcf + 3340: 4f068607 movi v7.8h, #0xd0 + 3344: 4f068627 movi v7.8h, #0xd1 + 3348: 4f068647 movi v7.8h, #0xd2 + 334c: 4f068667 movi v7.8h, #0xd3 + 3350: 4f068687 movi v7.8h, #0xd4 + 3354: 4f0686a7 movi v7.8h, #0xd5 + 3358: 4f0686c7 movi v7.8h, #0xd6 + 335c: 4f0686e7 movi v7.8h, #0xd7 + 3360: 4f068707 movi v7.8h, #0xd8 + 3364: 4f068727 movi v7.8h, #0xd9 + 3368: 4f068747 movi v7.8h, #0xda + 336c: 4f068767 movi v7.8h, #0xdb + 3370: 4f068787 movi v7.8h, #0xdc + 3374: 4f0687a7 movi v7.8h, #0xdd + 3378: 4f0687c7 movi v7.8h, #0xde + 337c: 4f0687e7 movi v7.8h, #0xdf + 3380: 4f078407 movi v7.8h, #0xe0 + 3384: 4f078427 movi v7.8h, #0xe1 + 3388: 4f078447 movi v7.8h, #0xe2 + 338c: 4f078467 movi v7.8h, #0xe3 + 3390: 4f078487 movi v7.8h, #0xe4 + 3394: 4f0784a7 movi v7.8h, #0xe5 + 3398: 4f0784c7 movi v7.8h, #0xe6 + 339c: 4f0784e7 movi v7.8h, #0xe7 + 33a0: 4f078507 movi v7.8h, #0xe8 + 33a4: 4f078527 movi v7.8h, #0xe9 + 33a8: 4f078547 movi v7.8h, #0xea + 33ac: 4f078567 movi v7.8h, #0xeb + 33b0: 4f078587 movi v7.8h, #0xec + 33b4: 4f0785a7 movi v7.8h, #0xed + 33b8: 4f0785c7 movi v7.8h, #0xee + 33bc: 4f0785e7 movi v7.8h, #0xef + 33c0: 4f078607 movi v7.8h, #0xf0 + 33c4: 4f078627 movi v7.8h, #0xf1 + 33c8: 4f078647 movi v7.8h, #0xf2 + 33cc: 4f078667 movi v7.8h, #0xf3 + 33d0: 4f078687 movi v7.8h, #0xf4 + 33d4: 4f0786a7 movi v7.8h, #0xf5 + 33d8: 4f0786c7 movi v7.8h, #0xf6 + 33dc: 4f0786e7 movi v7.8h, #0xf7 + 33e0: 4f078707 movi v7.8h, #0xf8 + 33e4: 4f078727 movi v7.8h, #0xf9 + 33e8: 4f078747 movi v7.8h, #0xfa + 33ec: 4f078767 movi v7.8h, #0xfb + 33f0: 4f078787 movi v7.8h, #0xfc + 33f4: 4f0787a7 movi v7.8h, #0xfd + 33f8: 4f0787c7 movi v7.8h, #0xfe + 33fc: 4f0787e7 movi v7.8h, #0xff + 3400: 4f00840f movi v15.8h, #0x0 + 3404: 4f00842f movi v15.8h, #0x1 + 3408: 4f00844f movi v15.8h, #0x2 + 340c: 4f00846f movi v15.8h, #0x3 + 3410: 4f00848f movi v15.8h, #0x4 + 3414: 4f0084af movi v15.8h, #0x5 + 3418: 4f0084cf movi v15.8h, #0x6 + 341c: 4f0084ef movi v15.8h, #0x7 + 3420: 4f00850f movi v15.8h, #0x8 + 3424: 4f00852f movi v15.8h, #0x9 + 3428: 4f00854f movi v15.8h, #0xa + 342c: 4f00856f movi v15.8h, #0xb + 3430: 4f00858f movi v15.8h, #0xc + 3434: 4f0085af movi v15.8h, #0xd + 3438: 4f0085cf movi v15.8h, #0xe + 343c: 4f0085ef movi v15.8h, #0xf + 3440: 4f00860f movi v15.8h, #0x10 + 3444: 4f00862f movi v15.8h, #0x11 + 3448: 4f00864f movi v15.8h, #0x12 + 344c: 4f00866f movi v15.8h, #0x13 + 3450: 4f00868f movi v15.8h, #0x14 + 3454: 4f0086af movi v15.8h, #0x15 + 3458: 4f0086cf movi v15.8h, #0x16 + 345c: 4f0086ef movi v15.8h, #0x17 + 3460: 4f00870f movi v15.8h, #0x18 + 3464: 4f00872f movi v15.8h, #0x19 + 3468: 4f00874f movi v15.8h, #0x1a + 346c: 4f00876f movi v15.8h, #0x1b + 3470: 4f00878f movi v15.8h, #0x1c + 3474: 4f0087af movi v15.8h, #0x1d + 3478: 4f0087cf movi v15.8h, #0x1e + 347c: 4f0087ef movi v15.8h, #0x1f + 3480: 4f01840f movi v15.8h, #0x20 + 3484: 4f01842f movi v15.8h, #0x21 + 3488: 4f01844f movi v15.8h, #0x22 + 348c: 4f01846f movi v15.8h, #0x23 + 3490: 4f01848f movi v15.8h, #0x24 + 3494: 4f0184af movi v15.8h, #0x25 + 3498: 4f0184cf movi v15.8h, #0x26 + 349c: 4f0184ef movi v15.8h, #0x27 + 34a0: 4f01850f movi v15.8h, #0x28 + 34a4: 4f01852f movi v15.8h, #0x29 + 34a8: 4f01854f movi v15.8h, #0x2a + 34ac: 4f01856f movi v15.8h, #0x2b + 34b0: 4f01858f movi v15.8h, #0x2c + 34b4: 4f0185af movi v15.8h, #0x2d + 34b8: 4f0185cf movi v15.8h, #0x2e + 34bc: 4f0185ef movi v15.8h, #0x2f + 34c0: 4f01860f movi v15.8h, #0x30 + 34c4: 4f01862f movi v15.8h, #0x31 + 34c8: 4f01864f movi v15.8h, #0x32 + 34cc: 4f01866f movi v15.8h, #0x33 + 34d0: 4f01868f movi v15.8h, #0x34 + 34d4: 4f0186af movi v15.8h, #0x35 + 34d8: 4f0186cf movi v15.8h, #0x36 + 34dc: 4f0186ef movi v15.8h, #0x37 + 34e0: 4f01870f movi v15.8h, #0x38 + 34e4: 4f01872f movi v15.8h, #0x39 + 34e8: 4f01874f movi v15.8h, #0x3a + 34ec: 4f01876f movi v15.8h, #0x3b + 34f0: 4f01878f movi v15.8h, #0x3c + 34f4: 4f0187af movi v15.8h, #0x3d + 34f8: 4f0187cf movi v15.8h, #0x3e + 34fc: 4f0187ef movi v15.8h, #0x3f + 3500: 4f02840f movi v15.8h, #0x40 + 3504: 4f02842f movi v15.8h, #0x41 + 3508: 4f02844f movi v15.8h, #0x42 + 350c: 4f02846f movi v15.8h, #0x43 + 3510: 4f02848f movi v15.8h, #0x44 + 3514: 4f0284af movi v15.8h, #0x45 + 3518: 4f0284cf movi v15.8h, #0x46 + 351c: 4f0284ef movi v15.8h, #0x47 + 3520: 4f02850f movi v15.8h, #0x48 + 3524: 4f02852f movi v15.8h, #0x49 + 3528: 4f02854f movi v15.8h, #0x4a + 352c: 4f02856f movi v15.8h, #0x4b + 3530: 4f02858f movi v15.8h, #0x4c + 3534: 4f0285af movi v15.8h, #0x4d + 3538: 4f0285cf movi v15.8h, #0x4e + 353c: 4f0285ef movi v15.8h, #0x4f + 3540: 4f02860f movi v15.8h, #0x50 + 3544: 4f02862f movi v15.8h, #0x51 + 3548: 4f02864f movi v15.8h, #0x52 + 354c: 4f02866f movi v15.8h, #0x53 + 3550: 4f02868f movi v15.8h, #0x54 + 3554: 4f0286af movi v15.8h, #0x55 + 3558: 4f0286cf movi v15.8h, #0x56 + 355c: 4f0286ef movi v15.8h, #0x57 + 3560: 4f02870f movi v15.8h, #0x58 + 3564: 4f02872f movi v15.8h, #0x59 + 3568: 4f02874f movi v15.8h, #0x5a + 356c: 4f02876f movi v15.8h, #0x5b + 3570: 4f02878f movi v15.8h, #0x5c + 3574: 4f0287af movi v15.8h, #0x5d + 3578: 4f0287cf movi v15.8h, #0x5e + 357c: 4f0287ef movi v15.8h, #0x5f + 3580: 4f03840f movi v15.8h, #0x60 + 3584: 4f03842f movi v15.8h, #0x61 + 3588: 4f03844f movi v15.8h, #0x62 + 358c: 4f03846f movi v15.8h, #0x63 + 3590: 4f03848f movi v15.8h, #0x64 + 3594: 4f0384af movi v15.8h, #0x65 + 3598: 4f0384cf movi v15.8h, #0x66 + 359c: 4f0384ef movi v15.8h, #0x67 + 35a0: 4f03850f movi v15.8h, #0x68 + 35a4: 4f03852f movi v15.8h, #0x69 + 35a8: 4f03854f movi v15.8h, #0x6a + 35ac: 4f03856f movi v15.8h, #0x6b + 35b0: 4f03858f movi v15.8h, #0x6c + 35b4: 4f0385af movi v15.8h, #0x6d + 35b8: 4f0385cf movi v15.8h, #0x6e + 35bc: 4f0385ef movi v15.8h, #0x6f + 35c0: 4f03860f movi v15.8h, #0x70 + 35c4: 4f03862f movi v15.8h, #0x71 + 35c8: 4f03864f movi v15.8h, #0x72 + 35cc: 4f03866f movi v15.8h, #0x73 + 35d0: 4f03868f movi v15.8h, #0x74 + 35d4: 4f0386af movi v15.8h, #0x75 + 35d8: 4f0386cf movi v15.8h, #0x76 + 35dc: 4f0386ef movi v15.8h, #0x77 + 35e0: 4f03870f movi v15.8h, #0x78 + 35e4: 4f03872f movi v15.8h, #0x79 + 35e8: 4f03874f movi v15.8h, #0x7a + 35ec: 4f03876f movi v15.8h, #0x7b + 35f0: 4f03878f movi v15.8h, #0x7c + 35f4: 4f0387af movi v15.8h, #0x7d + 35f8: 4f0387cf movi v15.8h, #0x7e + 35fc: 4f0387ef movi v15.8h, #0x7f + 3600: 4f04840f movi v15.8h, #0x80 + 3604: 4f04842f movi v15.8h, #0x81 + 3608: 4f04844f movi v15.8h, #0x82 + 360c: 4f04846f movi v15.8h, #0x83 + 3610: 4f04848f movi v15.8h, #0x84 + 3614: 4f0484af movi v15.8h, #0x85 + 3618: 4f0484cf movi v15.8h, #0x86 + 361c: 4f0484ef movi v15.8h, #0x87 + 3620: 4f04850f movi v15.8h, #0x88 + 3624: 4f04852f movi v15.8h, #0x89 + 3628: 4f04854f movi v15.8h, #0x8a + 362c: 4f04856f movi v15.8h, #0x8b + 3630: 4f04858f movi v15.8h, #0x8c + 3634: 4f0485af movi v15.8h, #0x8d + 3638: 4f0485cf movi v15.8h, #0x8e + 363c: 4f0485ef movi v15.8h, #0x8f + 3640: 4f04860f movi v15.8h, #0x90 + 3644: 4f04862f movi v15.8h, #0x91 + 3648: 4f04864f movi v15.8h, #0x92 + 364c: 4f04866f movi v15.8h, #0x93 + 3650: 4f04868f movi v15.8h, #0x94 + 3654: 4f0486af movi v15.8h, #0x95 + 3658: 4f0486cf movi v15.8h, #0x96 + 365c: 4f0486ef movi v15.8h, #0x97 + 3660: 4f04870f movi v15.8h, #0x98 + 3664: 4f04872f movi v15.8h, #0x99 + 3668: 4f04874f movi v15.8h, #0x9a + 366c: 4f04876f movi v15.8h, #0x9b + 3670: 4f04878f movi v15.8h, #0x9c + 3674: 4f0487af movi v15.8h, #0x9d + 3678: 4f0487cf movi v15.8h, #0x9e + 367c: 4f0487ef movi v15.8h, #0x9f + 3680: 4f05840f movi v15.8h, #0xa0 + 3684: 4f05842f movi v15.8h, #0xa1 + 3688: 4f05844f movi v15.8h, #0xa2 + 368c: 4f05846f movi v15.8h, #0xa3 + 3690: 4f05848f movi v15.8h, #0xa4 + 3694: 4f0584af movi v15.8h, #0xa5 + 3698: 4f0584cf movi v15.8h, #0xa6 + 369c: 4f0584ef movi v15.8h, #0xa7 + 36a0: 4f05850f movi v15.8h, #0xa8 + 36a4: 4f05852f movi v15.8h, #0xa9 + 36a8: 4f05854f movi v15.8h, #0xaa + 36ac: 4f05856f movi v15.8h, #0xab + 36b0: 4f05858f movi v15.8h, #0xac + 36b4: 4f0585af movi v15.8h, #0xad + 36b8: 4f0585cf movi v15.8h, #0xae + 36bc: 4f0585ef movi v15.8h, #0xaf + 36c0: 4f05860f movi v15.8h, #0xb0 + 36c4: 4f05862f movi v15.8h, #0xb1 + 36c8: 4f05864f movi v15.8h, #0xb2 + 36cc: 4f05866f movi v15.8h, #0xb3 + 36d0: 4f05868f movi v15.8h, #0xb4 + 36d4: 4f0586af movi v15.8h, #0xb5 + 36d8: 4f0586cf movi v15.8h, #0xb6 + 36dc: 4f0586ef movi v15.8h, #0xb7 + 36e0: 4f05870f movi v15.8h, #0xb8 + 36e4: 4f05872f movi v15.8h, #0xb9 + 36e8: 4f05874f movi v15.8h, #0xba + 36ec: 4f05876f movi v15.8h, #0xbb + 36f0: 4f05878f movi v15.8h, #0xbc + 36f4: 4f0587af movi v15.8h, #0xbd + 36f8: 4f0587cf movi v15.8h, #0xbe + 36fc: 4f0587ef movi v15.8h, #0xbf + 3700: 4f06840f movi v15.8h, #0xc0 + 3704: 4f06842f movi v15.8h, #0xc1 + 3708: 4f06844f movi v15.8h, #0xc2 + 370c: 4f06846f movi v15.8h, #0xc3 + 3710: 4f06848f movi v15.8h, #0xc4 + 3714: 4f0684af movi v15.8h, #0xc5 + 3718: 4f0684cf movi v15.8h, #0xc6 + 371c: 4f0684ef movi v15.8h, #0xc7 + 3720: 4f06850f movi v15.8h, #0xc8 + 3724: 4f06852f movi v15.8h, #0xc9 + 3728: 4f06854f movi v15.8h, #0xca + 372c: 4f06856f movi v15.8h, #0xcb + 3730: 4f06858f movi v15.8h, #0xcc + 3734: 4f0685af movi v15.8h, #0xcd + 3738: 4f0685cf movi v15.8h, #0xce + 373c: 4f0685ef movi v15.8h, #0xcf + 3740: 4f06860f movi v15.8h, #0xd0 + 3744: 4f06862f movi v15.8h, #0xd1 + 3748: 4f06864f movi v15.8h, #0xd2 + 374c: 4f06866f movi v15.8h, #0xd3 + 3750: 4f06868f movi v15.8h, #0xd4 + 3754: 4f0686af movi v15.8h, #0xd5 + 3758: 4f0686cf movi v15.8h, #0xd6 + 375c: 4f0686ef movi v15.8h, #0xd7 + 3760: 4f06870f movi v15.8h, #0xd8 + 3764: 4f06872f movi v15.8h, #0xd9 + 3768: 4f06874f movi v15.8h, #0xda + 376c: 4f06876f movi v15.8h, #0xdb + 3770: 4f06878f movi v15.8h, #0xdc + 3774: 4f0687af movi v15.8h, #0xdd + 3778: 4f0687cf movi v15.8h, #0xde + 377c: 4f0687ef movi v15.8h, #0xdf + 3780: 4f07840f movi v15.8h, #0xe0 + 3784: 4f07842f movi v15.8h, #0xe1 + 3788: 4f07844f movi v15.8h, #0xe2 + 378c: 4f07846f movi v15.8h, #0xe3 + 3790: 4f07848f movi v15.8h, #0xe4 + 3794: 4f0784af movi v15.8h, #0xe5 + 3798: 4f0784cf movi v15.8h, #0xe6 + 379c: 4f0784ef movi v15.8h, #0xe7 + 37a0: 4f07850f movi v15.8h, #0xe8 + 37a4: 4f07852f movi v15.8h, #0xe9 + 37a8: 4f07854f movi v15.8h, #0xea + 37ac: 4f07856f movi v15.8h, #0xeb + 37b0: 4f07858f movi v15.8h, #0xec + 37b4: 4f0785af movi v15.8h, #0xed + 37b8: 4f0785cf movi v15.8h, #0xee + 37bc: 4f0785ef movi v15.8h, #0xef + 37c0: 4f07860f movi v15.8h, #0xf0 + 37c4: 4f07862f movi v15.8h, #0xf1 + 37c8: 4f07864f movi v15.8h, #0xf2 + 37cc: 4f07866f movi v15.8h, #0xf3 + 37d0: 4f07868f movi v15.8h, #0xf4 + 37d4: 4f0786af movi v15.8h, #0xf5 + 37d8: 4f0786cf movi v15.8h, #0xf6 + 37dc: 4f0786ef movi v15.8h, #0xf7 + 37e0: 4f07870f movi v15.8h, #0xf8 + 37e4: 4f07872f movi v15.8h, #0xf9 + 37e8: 4f07874f movi v15.8h, #0xfa + 37ec: 4f07876f movi v15.8h, #0xfb + 37f0: 4f07878f movi v15.8h, #0xfc + 37f4: 4f0787af movi v15.8h, #0xfd + 37f8: 4f0787cf movi v15.8h, #0xfe + 37fc: 4f0787ef movi v15.8h, #0xff + 3800: 4f00a407 movi v7.8h, #0x0, lsl #8 + 3804: 4f00a427 movi v7.8h, #0x1, lsl #8 + 3808: 4f00a447 movi v7.8h, #0x2, lsl #8 + 380c: 4f00a467 movi v7.8h, #0x3, lsl #8 + 3810: 4f00a487 movi v7.8h, #0x4, lsl #8 + 3814: 4f00a4a7 movi v7.8h, #0x5, lsl #8 + 3818: 4f00a4c7 movi v7.8h, #0x6, lsl #8 + 381c: 4f00a4e7 movi v7.8h, #0x7, lsl #8 + 3820: 4f00a507 movi v7.8h, #0x8, lsl #8 + 3824: 4f00a527 movi v7.8h, #0x9, lsl #8 + 3828: 4f00a547 movi v7.8h, #0xa, lsl #8 + 382c: 4f00a567 movi v7.8h, #0xb, lsl #8 + 3830: 4f00a587 movi v7.8h, #0xc, lsl #8 + 3834: 4f00a5a7 movi v7.8h, #0xd, lsl #8 + 3838: 4f00a5c7 movi v7.8h, #0xe, lsl #8 + 383c: 4f00a5e7 movi v7.8h, #0xf, lsl #8 + 3840: 4f00a607 movi v7.8h, #0x10, lsl #8 + 3844: 4f00a627 movi v7.8h, #0x11, lsl #8 + 3848: 4f00a647 movi v7.8h, #0x12, lsl #8 + 384c: 4f00a667 movi v7.8h, #0x13, lsl #8 + 3850: 4f00a687 movi v7.8h, #0x14, lsl #8 + 3854: 4f00a6a7 movi v7.8h, #0x15, lsl #8 + 3858: 4f00a6c7 movi v7.8h, #0x16, lsl #8 + 385c: 4f00a6e7 movi v7.8h, #0x17, lsl #8 + 3860: 4f00a707 movi v7.8h, #0x18, lsl #8 + 3864: 4f00a727 movi v7.8h, #0x19, lsl #8 + 3868: 4f00a747 movi v7.8h, #0x1a, lsl #8 + 386c: 4f00a767 movi v7.8h, #0x1b, lsl #8 + 3870: 4f00a787 movi v7.8h, #0x1c, lsl #8 + 3874: 4f00a7a7 movi v7.8h, #0x1d, lsl #8 + 3878: 4f00a7c7 movi v7.8h, #0x1e, lsl #8 + 387c: 4f00a7e7 movi v7.8h, #0x1f, lsl #8 + 3880: 4f01a407 movi v7.8h, #0x20, lsl #8 + 3884: 4f01a427 movi v7.8h, #0x21, lsl #8 + 3888: 4f01a447 movi v7.8h, #0x22, lsl #8 + 388c: 4f01a467 movi v7.8h, #0x23, lsl #8 + 3890: 4f01a487 movi v7.8h, #0x24, lsl #8 + 3894: 4f01a4a7 movi v7.8h, #0x25, lsl #8 + 3898: 4f01a4c7 movi v7.8h, #0x26, lsl #8 + 389c: 4f01a4e7 movi v7.8h, #0x27, lsl #8 + 38a0: 4f01a507 movi v7.8h, #0x28, lsl #8 + 38a4: 4f01a527 movi v7.8h, #0x29, lsl #8 + 38a8: 4f01a547 movi v7.8h, #0x2a, lsl #8 + 38ac: 4f01a567 movi v7.8h, #0x2b, lsl #8 + 38b0: 4f01a587 movi v7.8h, #0x2c, lsl #8 + 38b4: 4f01a5a7 movi v7.8h, #0x2d, lsl #8 + 38b8: 4f01a5c7 movi v7.8h, #0x2e, lsl #8 + 38bc: 4f01a5e7 movi v7.8h, #0x2f, lsl #8 + 38c0: 4f01a607 movi v7.8h, #0x30, lsl #8 + 38c4: 4f01a627 movi v7.8h, #0x31, lsl #8 + 38c8: 4f01a647 movi v7.8h, #0x32, lsl #8 + 38cc: 4f01a667 movi v7.8h, #0x33, lsl #8 + 38d0: 4f01a687 movi v7.8h, #0x34, lsl #8 + 38d4: 4f01a6a7 movi v7.8h, #0x35, lsl #8 + 38d8: 4f01a6c7 movi v7.8h, #0x36, lsl #8 + 38dc: 4f01a6e7 movi v7.8h, #0x37, lsl #8 + 38e0: 4f01a707 movi v7.8h, #0x38, lsl #8 + 38e4: 4f01a727 movi v7.8h, #0x39, lsl #8 + 38e8: 4f01a747 movi v7.8h, #0x3a, lsl #8 + 38ec: 4f01a767 movi v7.8h, #0x3b, lsl #8 + 38f0: 4f01a787 movi v7.8h, #0x3c, lsl #8 + 38f4: 4f01a7a7 movi v7.8h, #0x3d, lsl #8 + 38f8: 4f01a7c7 movi v7.8h, #0x3e, lsl #8 + 38fc: 4f01a7e7 movi v7.8h, #0x3f, lsl #8 + 3900: 4f02a407 movi v7.8h, #0x40, lsl #8 + 3904: 4f02a427 movi v7.8h, #0x41, lsl #8 + 3908: 4f02a447 movi v7.8h, #0x42, lsl #8 + 390c: 4f02a467 movi v7.8h, #0x43, lsl #8 + 3910: 4f02a487 movi v7.8h, #0x44, lsl #8 + 3914: 4f02a4a7 movi v7.8h, #0x45, lsl #8 + 3918: 4f02a4c7 movi v7.8h, #0x46, lsl #8 + 391c: 4f02a4e7 movi v7.8h, #0x47, lsl #8 + 3920: 4f02a507 movi v7.8h, #0x48, lsl #8 + 3924: 4f02a527 movi v7.8h, #0x49, lsl #8 + 3928: 4f02a547 movi v7.8h, #0x4a, lsl #8 + 392c: 4f02a567 movi v7.8h, #0x4b, lsl #8 + 3930: 4f02a587 movi v7.8h, #0x4c, lsl #8 + 3934: 4f02a5a7 movi v7.8h, #0x4d, lsl #8 + 3938: 4f02a5c7 movi v7.8h, #0x4e, lsl #8 + 393c: 4f02a5e7 movi v7.8h, #0x4f, lsl #8 + 3940: 4f02a607 movi v7.8h, #0x50, lsl #8 + 3944: 4f02a627 movi v7.8h, #0x51, lsl #8 + 3948: 4f02a647 movi v7.8h, #0x52, lsl #8 + 394c: 4f02a667 movi v7.8h, #0x53, lsl #8 + 3950: 4f02a687 movi v7.8h, #0x54, lsl #8 + 3954: 4f02a6a7 movi v7.8h, #0x55, lsl #8 + 3958: 4f02a6c7 movi v7.8h, #0x56, lsl #8 + 395c: 4f02a6e7 movi v7.8h, #0x57, lsl #8 + 3960: 4f02a707 movi v7.8h, #0x58, lsl #8 + 3964: 4f02a727 movi v7.8h, #0x59, lsl #8 + 3968: 4f02a747 movi v7.8h, #0x5a, lsl #8 + 396c: 4f02a767 movi v7.8h, #0x5b, lsl #8 + 3970: 4f02a787 movi v7.8h, #0x5c, lsl #8 + 3974: 4f02a7a7 movi v7.8h, #0x5d, lsl #8 + 3978: 4f02a7c7 movi v7.8h, #0x5e, lsl #8 + 397c: 4f02a7e7 movi v7.8h, #0x5f, lsl #8 + 3980: 4f03a407 movi v7.8h, #0x60, lsl #8 + 3984: 4f03a427 movi v7.8h, #0x61, lsl #8 + 3988: 4f03a447 movi v7.8h, #0x62, lsl #8 + 398c: 4f03a467 movi v7.8h, #0x63, lsl #8 + 3990: 4f03a487 movi v7.8h, #0x64, lsl #8 + 3994: 4f03a4a7 movi v7.8h, #0x65, lsl #8 + 3998: 4f03a4c7 movi v7.8h, #0x66, lsl #8 + 399c: 4f03a4e7 movi v7.8h, #0x67, lsl #8 + 39a0: 4f03a507 movi v7.8h, #0x68, lsl #8 + 39a4: 4f03a527 movi v7.8h, #0x69, lsl #8 + 39a8: 4f03a547 movi v7.8h, #0x6a, lsl #8 + 39ac: 4f03a567 movi v7.8h, #0x6b, lsl #8 + 39b0: 4f03a587 movi v7.8h, #0x6c, lsl #8 + 39b4: 4f03a5a7 movi v7.8h, #0x6d, lsl #8 + 39b8: 4f03a5c7 movi v7.8h, #0x6e, lsl #8 + 39bc: 4f03a5e7 movi v7.8h, #0x6f, lsl #8 + 39c0: 4f03a607 movi v7.8h, #0x70, lsl #8 + 39c4: 4f03a627 movi v7.8h, #0x71, lsl #8 + 39c8: 4f03a647 movi v7.8h, #0x72, lsl #8 + 39cc: 4f03a667 movi v7.8h, #0x73, lsl #8 + 39d0: 4f03a687 movi v7.8h, #0x74, lsl #8 + 39d4: 4f03a6a7 movi v7.8h, #0x75, lsl #8 + 39d8: 4f03a6c7 movi v7.8h, #0x76, lsl #8 + 39dc: 4f03a6e7 movi v7.8h, #0x77, lsl #8 + 39e0: 4f03a707 movi v7.8h, #0x78, lsl #8 + 39e4: 4f03a727 movi v7.8h, #0x79, lsl #8 + 39e8: 4f03a747 movi v7.8h, #0x7a, lsl #8 + 39ec: 4f03a767 movi v7.8h, #0x7b, lsl #8 + 39f0: 4f03a787 movi v7.8h, #0x7c, lsl #8 + 39f4: 4f03a7a7 movi v7.8h, #0x7d, lsl #8 + 39f8: 4f03a7c7 movi v7.8h, #0x7e, lsl #8 + 39fc: 4f03a7e7 movi v7.8h, #0x7f, lsl #8 + 3a00: 4f04a407 movi v7.8h, #0x80, lsl #8 + 3a04: 4f04a427 movi v7.8h, #0x81, lsl #8 + 3a08: 4f04a447 movi v7.8h, #0x82, lsl #8 + 3a0c: 4f04a467 movi v7.8h, #0x83, lsl #8 + 3a10: 4f04a487 movi v7.8h, #0x84, lsl #8 + 3a14: 4f04a4a7 movi v7.8h, #0x85, lsl #8 + 3a18: 4f04a4c7 movi v7.8h, #0x86, lsl #8 + 3a1c: 4f04a4e7 movi v7.8h, #0x87, lsl #8 + 3a20: 4f04a507 movi v7.8h, #0x88, lsl #8 + 3a24: 4f04a527 movi v7.8h, #0x89, lsl #8 + 3a28: 4f04a547 movi v7.8h, #0x8a, lsl #8 + 3a2c: 4f04a567 movi v7.8h, #0x8b, lsl #8 + 3a30: 4f04a587 movi v7.8h, #0x8c, lsl #8 + 3a34: 4f04a5a7 movi v7.8h, #0x8d, lsl #8 + 3a38: 4f04a5c7 movi v7.8h, #0x8e, lsl #8 + 3a3c: 4f04a5e7 movi v7.8h, #0x8f, lsl #8 + 3a40: 4f04a607 movi v7.8h, #0x90, lsl #8 + 3a44: 4f04a627 movi v7.8h, #0x91, lsl #8 + 3a48: 4f04a647 movi v7.8h, #0x92, lsl #8 + 3a4c: 4f04a667 movi v7.8h, #0x93, lsl #8 + 3a50: 4f04a687 movi v7.8h, #0x94, lsl #8 + 3a54: 4f04a6a7 movi v7.8h, #0x95, lsl #8 + 3a58: 4f04a6c7 movi v7.8h, #0x96, lsl #8 + 3a5c: 4f04a6e7 movi v7.8h, #0x97, lsl #8 + 3a60: 4f04a707 movi v7.8h, #0x98, lsl #8 + 3a64: 4f04a727 movi v7.8h, #0x99, lsl #8 + 3a68: 4f04a747 movi v7.8h, #0x9a, lsl #8 + 3a6c: 4f04a767 movi v7.8h, #0x9b, lsl #8 + 3a70: 4f04a787 movi v7.8h, #0x9c, lsl #8 + 3a74: 4f04a7a7 movi v7.8h, #0x9d, lsl #8 + 3a78: 4f04a7c7 movi v7.8h, #0x9e, lsl #8 + 3a7c: 4f04a7e7 movi v7.8h, #0x9f, lsl #8 + 3a80: 4f05a407 movi v7.8h, #0xa0, lsl #8 + 3a84: 4f05a427 movi v7.8h, #0xa1, lsl #8 + 3a88: 4f05a447 movi v7.8h, #0xa2, lsl #8 + 3a8c: 4f05a467 movi v7.8h, #0xa3, lsl #8 + 3a90: 4f05a487 movi v7.8h, #0xa4, lsl #8 + 3a94: 4f05a4a7 movi v7.8h, #0xa5, lsl #8 + 3a98: 4f05a4c7 movi v7.8h, #0xa6, lsl #8 + 3a9c: 4f05a4e7 movi v7.8h, #0xa7, lsl #8 + 3aa0: 4f05a507 movi v7.8h, #0xa8, lsl #8 + 3aa4: 4f05a527 movi v7.8h, #0xa9, lsl #8 + 3aa8: 4f05a547 movi v7.8h, #0xaa, lsl #8 + 3aac: 4f05a567 movi v7.8h, #0xab, lsl #8 + 3ab0: 4f05a587 movi v7.8h, #0xac, lsl #8 + 3ab4: 4f05a5a7 movi v7.8h, #0xad, lsl #8 + 3ab8: 4f05a5c7 movi v7.8h, #0xae, lsl #8 + 3abc: 4f05a5e7 movi v7.8h, #0xaf, lsl #8 + 3ac0: 4f05a607 movi v7.8h, #0xb0, lsl #8 + 3ac4: 4f05a627 movi v7.8h, #0xb1, lsl #8 + 3ac8: 4f05a647 movi v7.8h, #0xb2, lsl #8 + 3acc: 4f05a667 movi v7.8h, #0xb3, lsl #8 + 3ad0: 4f05a687 movi v7.8h, #0xb4, lsl #8 + 3ad4: 4f05a6a7 movi v7.8h, #0xb5, lsl #8 + 3ad8: 4f05a6c7 movi v7.8h, #0xb6, lsl #8 + 3adc: 4f05a6e7 movi v7.8h, #0xb7, lsl #8 + 3ae0: 4f05a707 movi v7.8h, #0xb8, lsl #8 + 3ae4: 4f05a727 movi v7.8h, #0xb9, lsl #8 + 3ae8: 4f05a747 movi v7.8h, #0xba, lsl #8 + 3aec: 4f05a767 movi v7.8h, #0xbb, lsl #8 + 3af0: 4f05a787 movi v7.8h, #0xbc, lsl #8 + 3af4: 4f05a7a7 movi v7.8h, #0xbd, lsl #8 + 3af8: 4f05a7c7 movi v7.8h, #0xbe, lsl #8 + 3afc: 4f05a7e7 movi v7.8h, #0xbf, lsl #8 + 3b00: 4f06a407 movi v7.8h, #0xc0, lsl #8 + 3b04: 4f06a427 movi v7.8h, #0xc1, lsl #8 + 3b08: 4f06a447 movi v7.8h, #0xc2, lsl #8 + 3b0c: 4f06a467 movi v7.8h, #0xc3, lsl #8 + 3b10: 4f06a487 movi v7.8h, #0xc4, lsl #8 + 3b14: 4f06a4a7 movi v7.8h, #0xc5, lsl #8 + 3b18: 4f06a4c7 movi v7.8h, #0xc6, lsl #8 + 3b1c: 4f06a4e7 movi v7.8h, #0xc7, lsl #8 + 3b20: 4f06a507 movi v7.8h, #0xc8, lsl #8 + 3b24: 4f06a527 movi v7.8h, #0xc9, lsl #8 + 3b28: 4f06a547 movi v7.8h, #0xca, lsl #8 + 3b2c: 4f06a567 movi v7.8h, #0xcb, lsl #8 + 3b30: 4f06a587 movi v7.8h, #0xcc, lsl #8 + 3b34: 4f06a5a7 movi v7.8h, #0xcd, lsl #8 + 3b38: 4f06a5c7 movi v7.8h, #0xce, lsl #8 + 3b3c: 4f06a5e7 movi v7.8h, #0xcf, lsl #8 + 3b40: 4f06a607 movi v7.8h, #0xd0, lsl #8 + 3b44: 4f06a627 movi v7.8h, #0xd1, lsl #8 + 3b48: 4f06a647 movi v7.8h, #0xd2, lsl #8 + 3b4c: 4f06a667 movi v7.8h, #0xd3, lsl #8 + 3b50: 4f06a687 movi v7.8h, #0xd4, lsl #8 + 3b54: 4f06a6a7 movi v7.8h, #0xd5, lsl #8 + 3b58: 4f06a6c7 movi v7.8h, #0xd6, lsl #8 + 3b5c: 4f06a6e7 movi v7.8h, #0xd7, lsl #8 + 3b60: 4f06a707 movi v7.8h, #0xd8, lsl #8 + 3b64: 4f06a727 movi v7.8h, #0xd9, lsl #8 + 3b68: 4f06a747 movi v7.8h, #0xda, lsl #8 + 3b6c: 4f06a767 movi v7.8h, #0xdb, lsl #8 + 3b70: 4f06a787 movi v7.8h, #0xdc, lsl #8 + 3b74: 4f06a7a7 movi v7.8h, #0xdd, lsl #8 + 3b78: 4f06a7c7 movi v7.8h, #0xde, lsl #8 + 3b7c: 4f06a7e7 movi v7.8h, #0xdf, lsl #8 + 3b80: 4f07a407 movi v7.8h, #0xe0, lsl #8 + 3b84: 4f07a427 movi v7.8h, #0xe1, lsl #8 + 3b88: 4f07a447 movi v7.8h, #0xe2, lsl #8 + 3b8c: 4f07a467 movi v7.8h, #0xe3, lsl #8 + 3b90: 4f07a487 movi v7.8h, #0xe4, lsl #8 + 3b94: 4f07a4a7 movi v7.8h, #0xe5, lsl #8 + 3b98: 4f07a4c7 movi v7.8h, #0xe6, lsl #8 + 3b9c: 4f07a4e7 movi v7.8h, #0xe7, lsl #8 + 3ba0: 4f07a507 movi v7.8h, #0xe8, lsl #8 + 3ba4: 4f07a527 movi v7.8h, #0xe9, lsl #8 + 3ba8: 4f07a547 movi v7.8h, #0xea, lsl #8 + 3bac: 4f07a567 movi v7.8h, #0xeb, lsl #8 + 3bb0: 4f07a587 movi v7.8h, #0xec, lsl #8 + 3bb4: 4f07a5a7 movi v7.8h, #0xed, lsl #8 + 3bb8: 4f07a5c7 movi v7.8h, #0xee, lsl #8 + 3bbc: 4f07a5e7 movi v7.8h, #0xef, lsl #8 + 3bc0: 4f07a607 movi v7.8h, #0xf0, lsl #8 + 3bc4: 4f07a627 movi v7.8h, #0xf1, lsl #8 + 3bc8: 4f07a647 movi v7.8h, #0xf2, lsl #8 + 3bcc: 4f07a667 movi v7.8h, #0xf3, lsl #8 + 3bd0: 4f07a687 movi v7.8h, #0xf4, lsl #8 + 3bd4: 4f07a6a7 movi v7.8h, #0xf5, lsl #8 + 3bd8: 4f07a6c7 movi v7.8h, #0xf6, lsl #8 + 3bdc: 4f07a6e7 movi v7.8h, #0xf7, lsl #8 + 3be0: 4f07a707 movi v7.8h, #0xf8, lsl #8 + 3be4: 4f07a727 movi v7.8h, #0xf9, lsl #8 + 3be8: 4f07a747 movi v7.8h, #0xfa, lsl #8 + 3bec: 4f07a767 movi v7.8h, #0xfb, lsl #8 + 3bf0: 4f07a787 movi v7.8h, #0xfc, lsl #8 + 3bf4: 4f07a7a7 movi v7.8h, #0xfd, lsl #8 + 3bf8: 4f07a7c7 movi v7.8h, #0xfe, lsl #8 + 3bfc: 4f07a7e7 movi v7.8h, #0xff, lsl #8 + 3c00: 4f00840f movi v15.8h, #0x0 + 3c04: 4f00842f movi v15.8h, #0x1 + 3c08: 4f00844f movi v15.8h, #0x2 + 3c0c: 4f00846f movi v15.8h, #0x3 + 3c10: 4f00848f movi v15.8h, #0x4 + 3c14: 4f0084af movi v15.8h, #0x5 + 3c18: 4f0084cf movi v15.8h, #0x6 + 3c1c: 4f0084ef movi v15.8h, #0x7 + 3c20: 4f00850f movi v15.8h, #0x8 + 3c24: 4f00852f movi v15.8h, #0x9 + 3c28: 4f00854f movi v15.8h, #0xa + 3c2c: 4f00856f movi v15.8h, #0xb + 3c30: 4f00858f movi v15.8h, #0xc + 3c34: 4f0085af movi v15.8h, #0xd + 3c38: 4f0085cf movi v15.8h, #0xe + 3c3c: 4f0085ef movi v15.8h, #0xf + 3c40: 4f00860f movi v15.8h, #0x10 + 3c44: 4f00862f movi v15.8h, #0x11 + 3c48: 4f00864f movi v15.8h, #0x12 + 3c4c: 4f00866f movi v15.8h, #0x13 + 3c50: 4f00868f movi v15.8h, #0x14 + 3c54: 4f0086af movi v15.8h, #0x15 + 3c58: 4f0086cf movi v15.8h, #0x16 + 3c5c: 4f0086ef movi v15.8h, #0x17 + 3c60: 4f00870f movi v15.8h, #0x18 + 3c64: 4f00872f movi v15.8h, #0x19 + 3c68: 4f00874f movi v15.8h, #0x1a + 3c6c: 4f00876f movi v15.8h, #0x1b + 3c70: 4f00878f movi v15.8h, #0x1c + 3c74: 4f0087af movi v15.8h, #0x1d + 3c78: 4f0087cf movi v15.8h, #0x1e + 3c7c: 4f0087ef movi v15.8h, #0x1f + 3c80: 4f01840f movi v15.8h, #0x20 + 3c84: 4f01842f movi v15.8h, #0x21 + 3c88: 4f01844f movi v15.8h, #0x22 + 3c8c: 4f01846f movi v15.8h, #0x23 + 3c90: 4f01848f movi v15.8h, #0x24 + 3c94: 4f0184af movi v15.8h, #0x25 + 3c98: 4f0184cf movi v15.8h, #0x26 + 3c9c: 4f0184ef movi v15.8h, #0x27 + 3ca0: 4f01850f movi v15.8h, #0x28 + 3ca4: 4f01852f movi v15.8h, #0x29 + 3ca8: 4f01854f movi v15.8h, #0x2a + 3cac: 4f01856f movi v15.8h, #0x2b + 3cb0: 4f01858f movi v15.8h, #0x2c + 3cb4: 4f0185af movi v15.8h, #0x2d + 3cb8: 4f0185cf movi v15.8h, #0x2e + 3cbc: 4f0185ef movi v15.8h, #0x2f + 3cc0: 4f01860f movi v15.8h, #0x30 + 3cc4: 4f01862f movi v15.8h, #0x31 + 3cc8: 4f01864f movi v15.8h, #0x32 + 3ccc: 4f01866f movi v15.8h, #0x33 + 3cd0: 4f01868f movi v15.8h, #0x34 + 3cd4: 4f0186af movi v15.8h, #0x35 + 3cd8: 4f0186cf movi v15.8h, #0x36 + 3cdc: 4f0186ef movi v15.8h, #0x37 + 3ce0: 4f01870f movi v15.8h, #0x38 + 3ce4: 4f01872f movi v15.8h, #0x39 + 3ce8: 4f01874f movi v15.8h, #0x3a + 3cec: 4f01876f movi v15.8h, #0x3b + 3cf0: 4f01878f movi v15.8h, #0x3c + 3cf4: 4f0187af movi v15.8h, #0x3d + 3cf8: 4f0187cf movi v15.8h, #0x3e + 3cfc: 4f0187ef movi v15.8h, #0x3f + 3d00: 4f02840f movi v15.8h, #0x40 + 3d04: 4f02842f movi v15.8h, #0x41 + 3d08: 4f02844f movi v15.8h, #0x42 + 3d0c: 4f02846f movi v15.8h, #0x43 + 3d10: 4f02848f movi v15.8h, #0x44 + 3d14: 4f0284af movi v15.8h, #0x45 + 3d18: 4f0284cf movi v15.8h, #0x46 + 3d1c: 4f0284ef movi v15.8h, #0x47 + 3d20: 4f02850f movi v15.8h, #0x48 + 3d24: 4f02852f movi v15.8h, #0x49 + 3d28: 4f02854f movi v15.8h, #0x4a + 3d2c: 4f02856f movi v15.8h, #0x4b + 3d30: 4f02858f movi v15.8h, #0x4c + 3d34: 4f0285af movi v15.8h, #0x4d + 3d38: 4f0285cf movi v15.8h, #0x4e + 3d3c: 4f0285ef movi v15.8h, #0x4f + 3d40: 4f02860f movi v15.8h, #0x50 + 3d44: 4f02862f movi v15.8h, #0x51 + 3d48: 4f02864f movi v15.8h, #0x52 + 3d4c: 4f02866f movi v15.8h, #0x53 + 3d50: 4f02868f movi v15.8h, #0x54 + 3d54: 4f0286af movi v15.8h, #0x55 + 3d58: 4f0286cf movi v15.8h, #0x56 + 3d5c: 4f0286ef movi v15.8h, #0x57 + 3d60: 4f02870f movi v15.8h, #0x58 + 3d64: 4f02872f movi v15.8h, #0x59 + 3d68: 4f02874f movi v15.8h, #0x5a + 3d6c: 4f02876f movi v15.8h, #0x5b + 3d70: 4f02878f movi v15.8h, #0x5c + 3d74: 4f0287af movi v15.8h, #0x5d + 3d78: 4f0287cf movi v15.8h, #0x5e + 3d7c: 4f0287ef movi v15.8h, #0x5f + 3d80: 4f03840f movi v15.8h, #0x60 + 3d84: 4f03842f movi v15.8h, #0x61 + 3d88: 4f03844f movi v15.8h, #0x62 + 3d8c: 4f03846f movi v15.8h, #0x63 + 3d90: 4f03848f movi v15.8h, #0x64 + 3d94: 4f0384af movi v15.8h, #0x65 + 3d98: 4f0384cf movi v15.8h, #0x66 + 3d9c: 4f0384ef movi v15.8h, #0x67 + 3da0: 4f03850f movi v15.8h, #0x68 + 3da4: 4f03852f movi v15.8h, #0x69 + 3da8: 4f03854f movi v15.8h, #0x6a + 3dac: 4f03856f movi v15.8h, #0x6b + 3db0: 4f03858f movi v15.8h, #0x6c + 3db4: 4f0385af movi v15.8h, #0x6d + 3db8: 4f0385cf movi v15.8h, #0x6e + 3dbc: 4f0385ef movi v15.8h, #0x6f + 3dc0: 4f03860f movi v15.8h, #0x70 + 3dc4: 4f03862f movi v15.8h, #0x71 + 3dc8: 4f03864f movi v15.8h, #0x72 + 3dcc: 4f03866f movi v15.8h, #0x73 + 3dd0: 4f03868f movi v15.8h, #0x74 + 3dd4: 4f0386af movi v15.8h, #0x75 + 3dd8: 4f0386cf movi v15.8h, #0x76 + 3ddc: 4f0386ef movi v15.8h, #0x77 + 3de0: 4f03870f movi v15.8h, #0x78 + 3de4: 4f03872f movi v15.8h, #0x79 + 3de8: 4f03874f movi v15.8h, #0x7a + 3dec: 4f03876f movi v15.8h, #0x7b + 3df0: 4f03878f movi v15.8h, #0x7c + 3df4: 4f0387af movi v15.8h, #0x7d + 3df8: 4f0387cf movi v15.8h, #0x7e + 3dfc: 4f0387ef movi v15.8h, #0x7f + 3e00: 4f04840f movi v15.8h, #0x80 + 3e04: 4f04842f movi v15.8h, #0x81 + 3e08: 4f04844f movi v15.8h, #0x82 + 3e0c: 4f04846f movi v15.8h, #0x83 + 3e10: 4f04848f movi v15.8h, #0x84 + 3e14: 4f0484af movi v15.8h, #0x85 + 3e18: 4f0484cf movi v15.8h, #0x86 + 3e1c: 4f0484ef movi v15.8h, #0x87 + 3e20: 4f04850f movi v15.8h, #0x88 + 3e24: 4f04852f movi v15.8h, #0x89 + 3e28: 4f04854f movi v15.8h, #0x8a + 3e2c: 4f04856f movi v15.8h, #0x8b + 3e30: 4f04858f movi v15.8h, #0x8c + 3e34: 4f0485af movi v15.8h, #0x8d + 3e38: 4f0485cf movi v15.8h, #0x8e + 3e3c: 4f0485ef movi v15.8h, #0x8f + 3e40: 4f04860f movi v15.8h, #0x90 + 3e44: 4f04862f movi v15.8h, #0x91 + 3e48: 4f04864f movi v15.8h, #0x92 + 3e4c: 4f04866f movi v15.8h, #0x93 + 3e50: 4f04868f movi v15.8h, #0x94 + 3e54: 4f0486af movi v15.8h, #0x95 + 3e58: 4f0486cf movi v15.8h, #0x96 + 3e5c: 4f0486ef movi v15.8h, #0x97 + 3e60: 4f04870f movi v15.8h, #0x98 + 3e64: 4f04872f movi v15.8h, #0x99 + 3e68: 4f04874f movi v15.8h, #0x9a + 3e6c: 4f04876f movi v15.8h, #0x9b + 3e70: 4f04878f movi v15.8h, #0x9c + 3e74: 4f0487af movi v15.8h, #0x9d + 3e78: 4f0487cf movi v15.8h, #0x9e + 3e7c: 4f0487ef movi v15.8h, #0x9f + 3e80: 4f05840f movi v15.8h, #0xa0 + 3e84: 4f05842f movi v15.8h, #0xa1 + 3e88: 4f05844f movi v15.8h, #0xa2 + 3e8c: 4f05846f movi v15.8h, #0xa3 + 3e90: 4f05848f movi v15.8h, #0xa4 + 3e94: 4f0584af movi v15.8h, #0xa5 + 3e98: 4f0584cf movi v15.8h, #0xa6 + 3e9c: 4f0584ef movi v15.8h, #0xa7 + 3ea0: 4f05850f movi v15.8h, #0xa8 + 3ea4: 4f05852f movi v15.8h, #0xa9 + 3ea8: 4f05854f movi v15.8h, #0xaa + 3eac: 4f05856f movi v15.8h, #0xab + 3eb0: 4f05858f movi v15.8h, #0xac + 3eb4: 4f0585af movi v15.8h, #0xad + 3eb8: 4f0585cf movi v15.8h, #0xae + 3ebc: 4f0585ef movi v15.8h, #0xaf + 3ec0: 4f05860f movi v15.8h, #0xb0 + 3ec4: 4f05862f movi v15.8h, #0xb1 + 3ec8: 4f05864f movi v15.8h, #0xb2 + 3ecc: 4f05866f movi v15.8h, #0xb3 + 3ed0: 4f05868f movi v15.8h, #0xb4 + 3ed4: 4f0586af movi v15.8h, #0xb5 + 3ed8: 4f0586cf movi v15.8h, #0xb6 + 3edc: 4f0586ef movi v15.8h, #0xb7 + 3ee0: 4f05870f movi v15.8h, #0xb8 + 3ee4: 4f05872f movi v15.8h, #0xb9 + 3ee8: 4f05874f movi v15.8h, #0xba + 3eec: 4f05876f movi v15.8h, #0xbb + 3ef0: 4f05878f movi v15.8h, #0xbc + 3ef4: 4f0587af movi v15.8h, #0xbd + 3ef8: 4f0587cf movi v15.8h, #0xbe + 3efc: 4f0587ef movi v15.8h, #0xbf + 3f00: 4f06840f movi v15.8h, #0xc0 + 3f04: 4f06842f movi v15.8h, #0xc1 + 3f08: 4f06844f movi v15.8h, #0xc2 + 3f0c: 4f06846f movi v15.8h, #0xc3 + 3f10: 4f06848f movi v15.8h, #0xc4 + 3f14: 4f0684af movi v15.8h, #0xc5 + 3f18: 4f0684cf movi v15.8h, #0xc6 + 3f1c: 4f0684ef movi v15.8h, #0xc7 + 3f20: 4f06850f movi v15.8h, #0xc8 + 3f24: 4f06852f movi v15.8h, #0xc9 + 3f28: 4f06854f movi v15.8h, #0xca + 3f2c: 4f06856f movi v15.8h, #0xcb + 3f30: 4f06858f movi v15.8h, #0xcc + 3f34: 4f0685af movi v15.8h, #0xcd + 3f38: 4f0685cf movi v15.8h, #0xce + 3f3c: 4f0685ef movi v15.8h, #0xcf + 3f40: 4f06860f movi v15.8h, #0xd0 + 3f44: 4f06862f movi v15.8h, #0xd1 + 3f48: 4f06864f movi v15.8h, #0xd2 + 3f4c: 4f06866f movi v15.8h, #0xd3 + 3f50: 4f06868f movi v15.8h, #0xd4 + 3f54: 4f0686af movi v15.8h, #0xd5 + 3f58: 4f0686cf movi v15.8h, #0xd6 + 3f5c: 4f0686ef movi v15.8h, #0xd7 + 3f60: 4f06870f movi v15.8h, #0xd8 + 3f64: 4f06872f movi v15.8h, #0xd9 + 3f68: 4f06874f movi v15.8h, #0xda + 3f6c: 4f06876f movi v15.8h, #0xdb + 3f70: 4f06878f movi v15.8h, #0xdc + 3f74: 4f0687af movi v15.8h, #0xdd + 3f78: 4f0687cf movi v15.8h, #0xde + 3f7c: 4f0687ef movi v15.8h, #0xdf + 3f80: 4f07840f movi v15.8h, #0xe0 + 3f84: 4f07842f movi v15.8h, #0xe1 + 3f88: 4f07844f movi v15.8h, #0xe2 + 3f8c: 4f07846f movi v15.8h, #0xe3 + 3f90: 4f07848f movi v15.8h, #0xe4 + 3f94: 4f0784af movi v15.8h, #0xe5 + 3f98: 4f0784cf movi v15.8h, #0xe6 + 3f9c: 4f0784ef movi v15.8h, #0xe7 + 3fa0: 4f07850f movi v15.8h, #0xe8 + 3fa4: 4f07852f movi v15.8h, #0xe9 + 3fa8: 4f07854f movi v15.8h, #0xea + 3fac: 4f07856f movi v15.8h, #0xeb + 3fb0: 4f07858f movi v15.8h, #0xec + 3fb4: 4f0785af movi v15.8h, #0xed + 3fb8: 4f0785cf movi v15.8h, #0xee + 3fbc: 4f0785ef movi v15.8h, #0xef + 3fc0: 4f07860f movi v15.8h, #0xf0 + 3fc4: 4f07862f movi v15.8h, #0xf1 + 3fc8: 4f07864f movi v15.8h, #0xf2 + 3fcc: 4f07866f movi v15.8h, #0xf3 + 3fd0: 4f07868f movi v15.8h, #0xf4 + 3fd4: 4f0786af movi v15.8h, #0xf5 + 3fd8: 4f0786cf movi v15.8h, #0xf6 + 3fdc: 4f0786ef movi v15.8h, #0xf7 + 3fe0: 4f07870f movi v15.8h, #0xf8 + 3fe4: 4f07872f movi v15.8h, #0xf9 + 3fe8: 4f07874f movi v15.8h, #0xfa + 3fec: 4f07876f movi v15.8h, #0xfb + 3ff0: 4f07878f movi v15.8h, #0xfc + 3ff4: 4f0787af movi v15.8h, #0xfd + 3ff8: 4f0787cf movi v15.8h, #0xfe + 3ffc: 4f0787ef movi v15.8h, #0xff + 4000: 0f000407 movi v7.2s, #0x0 + 4004: 0f000427 movi v7.2s, #0x1 + 4008: 0f000447 movi v7.2s, #0x2 + 400c: 0f000467 movi v7.2s, #0x3 + 4010: 0f000487 movi v7.2s, #0x4 + 4014: 0f0004a7 movi v7.2s, #0x5 + 4018: 0f0004c7 movi v7.2s, #0x6 + 401c: 0f0004e7 movi v7.2s, #0x7 + 4020: 0f000507 movi v7.2s, #0x8 + 4024: 0f000527 movi v7.2s, #0x9 + 4028: 0f000547 movi v7.2s, #0xa + 402c: 0f000567 movi v7.2s, #0xb + 4030: 0f000587 movi v7.2s, #0xc + 4034: 0f0005a7 movi v7.2s, #0xd + 4038: 0f0005c7 movi v7.2s, #0xe + 403c: 0f0005e7 movi v7.2s, #0xf + 4040: 0f000607 movi v7.2s, #0x10 + 4044: 0f000627 movi v7.2s, #0x11 + 4048: 0f000647 movi v7.2s, #0x12 + 404c: 0f000667 movi v7.2s, #0x13 + 4050: 0f000687 movi v7.2s, #0x14 + 4054: 0f0006a7 movi v7.2s, #0x15 + 4058: 0f0006c7 movi v7.2s, #0x16 + 405c: 0f0006e7 movi v7.2s, #0x17 + 4060: 0f000707 movi v7.2s, #0x18 + 4064: 0f000727 movi v7.2s, #0x19 + 4068: 0f000747 movi v7.2s, #0x1a + 406c: 0f000767 movi v7.2s, #0x1b + 4070: 0f000787 movi v7.2s, #0x1c + 4074: 0f0007a7 movi v7.2s, #0x1d + 4078: 0f0007c7 movi v7.2s, #0x1e + 407c: 0f0007e7 movi v7.2s, #0x1f + 4080: 0f010407 movi v7.2s, #0x20 + 4084: 0f010427 movi v7.2s, #0x21 + 4088: 0f010447 movi v7.2s, #0x22 + 408c: 0f010467 movi v7.2s, #0x23 + 4090: 0f010487 movi v7.2s, #0x24 + 4094: 0f0104a7 movi v7.2s, #0x25 + 4098: 0f0104c7 movi v7.2s, #0x26 + 409c: 0f0104e7 movi v7.2s, #0x27 + 40a0: 0f010507 movi v7.2s, #0x28 + 40a4: 0f010527 movi v7.2s, #0x29 + 40a8: 0f010547 movi v7.2s, #0x2a + 40ac: 0f010567 movi v7.2s, #0x2b + 40b0: 0f010587 movi v7.2s, #0x2c + 40b4: 0f0105a7 movi v7.2s, #0x2d + 40b8: 0f0105c7 movi v7.2s, #0x2e + 40bc: 0f0105e7 movi v7.2s, #0x2f + 40c0: 0f010607 movi v7.2s, #0x30 + 40c4: 0f010627 movi v7.2s, #0x31 + 40c8: 0f010647 movi v7.2s, #0x32 + 40cc: 0f010667 movi v7.2s, #0x33 + 40d0: 0f010687 movi v7.2s, #0x34 + 40d4: 0f0106a7 movi v7.2s, #0x35 + 40d8: 0f0106c7 movi v7.2s, #0x36 + 40dc: 0f0106e7 movi v7.2s, #0x37 + 40e0: 0f010707 movi v7.2s, #0x38 + 40e4: 0f010727 movi v7.2s, #0x39 + 40e8: 0f010747 movi v7.2s, #0x3a + 40ec: 0f010767 movi v7.2s, #0x3b + 40f0: 0f010787 movi v7.2s, #0x3c + 40f4: 0f0107a7 movi v7.2s, #0x3d + 40f8: 0f0107c7 movi v7.2s, #0x3e + 40fc: 0f0107e7 movi v7.2s, #0x3f + 4100: 0f020407 movi v7.2s, #0x40 + 4104: 0f020427 movi v7.2s, #0x41 + 4108: 0f020447 movi v7.2s, #0x42 + 410c: 0f020467 movi v7.2s, #0x43 + 4110: 0f020487 movi v7.2s, #0x44 + 4114: 0f0204a7 movi v7.2s, #0x45 + 4118: 0f0204c7 movi v7.2s, #0x46 + 411c: 0f0204e7 movi v7.2s, #0x47 + 4120: 0f020507 movi v7.2s, #0x48 + 4124: 0f020527 movi v7.2s, #0x49 + 4128: 0f020547 movi v7.2s, #0x4a + 412c: 0f020567 movi v7.2s, #0x4b + 4130: 0f020587 movi v7.2s, #0x4c + 4134: 0f0205a7 movi v7.2s, #0x4d + 4138: 0f0205c7 movi v7.2s, #0x4e + 413c: 0f0205e7 movi v7.2s, #0x4f + 4140: 0f020607 movi v7.2s, #0x50 + 4144: 0f020627 movi v7.2s, #0x51 + 4148: 0f020647 movi v7.2s, #0x52 + 414c: 0f020667 movi v7.2s, #0x53 + 4150: 0f020687 movi v7.2s, #0x54 + 4154: 0f0206a7 movi v7.2s, #0x55 + 4158: 0f0206c7 movi v7.2s, #0x56 + 415c: 0f0206e7 movi v7.2s, #0x57 + 4160: 0f020707 movi v7.2s, #0x58 + 4164: 0f020727 movi v7.2s, #0x59 + 4168: 0f020747 movi v7.2s, #0x5a + 416c: 0f020767 movi v7.2s, #0x5b + 4170: 0f020787 movi v7.2s, #0x5c + 4174: 0f0207a7 movi v7.2s, #0x5d + 4178: 0f0207c7 movi v7.2s, #0x5e + 417c: 0f0207e7 movi v7.2s, #0x5f + 4180: 0f030407 movi v7.2s, #0x60 + 4184: 0f030427 movi v7.2s, #0x61 + 4188: 0f030447 movi v7.2s, #0x62 + 418c: 0f030467 movi v7.2s, #0x63 + 4190: 0f030487 movi v7.2s, #0x64 + 4194: 0f0304a7 movi v7.2s, #0x65 + 4198: 0f0304c7 movi v7.2s, #0x66 + 419c: 0f0304e7 movi v7.2s, #0x67 + 41a0: 0f030507 movi v7.2s, #0x68 + 41a4: 0f030527 movi v7.2s, #0x69 + 41a8: 0f030547 movi v7.2s, #0x6a + 41ac: 0f030567 movi v7.2s, #0x6b + 41b0: 0f030587 movi v7.2s, #0x6c + 41b4: 0f0305a7 movi v7.2s, #0x6d + 41b8: 0f0305c7 movi v7.2s, #0x6e + 41bc: 0f0305e7 movi v7.2s, #0x6f + 41c0: 0f030607 movi v7.2s, #0x70 + 41c4: 0f030627 movi v7.2s, #0x71 + 41c8: 0f030647 movi v7.2s, #0x72 + 41cc: 0f030667 movi v7.2s, #0x73 + 41d0: 0f030687 movi v7.2s, #0x74 + 41d4: 0f0306a7 movi v7.2s, #0x75 + 41d8: 0f0306c7 movi v7.2s, #0x76 + 41dc: 0f0306e7 movi v7.2s, #0x77 + 41e0: 0f030707 movi v7.2s, #0x78 + 41e4: 0f030727 movi v7.2s, #0x79 + 41e8: 0f030747 movi v7.2s, #0x7a + 41ec: 0f030767 movi v7.2s, #0x7b + 41f0: 0f030787 movi v7.2s, #0x7c + 41f4: 0f0307a7 movi v7.2s, #0x7d + 41f8: 0f0307c7 movi v7.2s, #0x7e + 41fc: 0f0307e7 movi v7.2s, #0x7f + 4200: 0f040407 movi v7.2s, #0x80 + 4204: 0f040427 movi v7.2s, #0x81 + 4208: 0f040447 movi v7.2s, #0x82 + 420c: 0f040467 movi v7.2s, #0x83 + 4210: 0f040487 movi v7.2s, #0x84 + 4214: 0f0404a7 movi v7.2s, #0x85 + 4218: 0f0404c7 movi v7.2s, #0x86 + 421c: 0f0404e7 movi v7.2s, #0x87 + 4220: 0f040507 movi v7.2s, #0x88 + 4224: 0f040527 movi v7.2s, #0x89 + 4228: 0f040547 movi v7.2s, #0x8a + 422c: 0f040567 movi v7.2s, #0x8b + 4230: 0f040587 movi v7.2s, #0x8c + 4234: 0f0405a7 movi v7.2s, #0x8d + 4238: 0f0405c7 movi v7.2s, #0x8e + 423c: 0f0405e7 movi v7.2s, #0x8f + 4240: 0f040607 movi v7.2s, #0x90 + 4244: 0f040627 movi v7.2s, #0x91 + 4248: 0f040647 movi v7.2s, #0x92 + 424c: 0f040667 movi v7.2s, #0x93 + 4250: 0f040687 movi v7.2s, #0x94 + 4254: 0f0406a7 movi v7.2s, #0x95 + 4258: 0f0406c7 movi v7.2s, #0x96 + 425c: 0f0406e7 movi v7.2s, #0x97 + 4260: 0f040707 movi v7.2s, #0x98 + 4264: 0f040727 movi v7.2s, #0x99 + 4268: 0f040747 movi v7.2s, #0x9a + 426c: 0f040767 movi v7.2s, #0x9b + 4270: 0f040787 movi v7.2s, #0x9c + 4274: 0f0407a7 movi v7.2s, #0x9d + 4278: 0f0407c7 movi v7.2s, #0x9e + 427c: 0f0407e7 movi v7.2s, #0x9f + 4280: 0f050407 movi v7.2s, #0xa0 + 4284: 0f050427 movi v7.2s, #0xa1 + 4288: 0f050447 movi v7.2s, #0xa2 + 428c: 0f050467 movi v7.2s, #0xa3 + 4290: 0f050487 movi v7.2s, #0xa4 + 4294: 0f0504a7 movi v7.2s, #0xa5 + 4298: 0f0504c7 movi v7.2s, #0xa6 + 429c: 0f0504e7 movi v7.2s, #0xa7 + 42a0: 0f050507 movi v7.2s, #0xa8 + 42a4: 0f050527 movi v7.2s, #0xa9 + 42a8: 0f050547 movi v7.2s, #0xaa + 42ac: 0f050567 movi v7.2s, #0xab + 42b0: 0f050587 movi v7.2s, #0xac + 42b4: 0f0505a7 movi v7.2s, #0xad + 42b8: 0f0505c7 movi v7.2s, #0xae + 42bc: 0f0505e7 movi v7.2s, #0xaf + 42c0: 0f050607 movi v7.2s, #0xb0 + 42c4: 0f050627 movi v7.2s, #0xb1 + 42c8: 0f050647 movi v7.2s, #0xb2 + 42cc: 0f050667 movi v7.2s, #0xb3 + 42d0: 0f050687 movi v7.2s, #0xb4 + 42d4: 0f0506a7 movi v7.2s, #0xb5 + 42d8: 0f0506c7 movi v7.2s, #0xb6 + 42dc: 0f0506e7 movi v7.2s, #0xb7 + 42e0: 0f050707 movi v7.2s, #0xb8 + 42e4: 0f050727 movi v7.2s, #0xb9 + 42e8: 0f050747 movi v7.2s, #0xba + 42ec: 0f050767 movi v7.2s, #0xbb + 42f0: 0f050787 movi v7.2s, #0xbc + 42f4: 0f0507a7 movi v7.2s, #0xbd + 42f8: 0f0507c7 movi v7.2s, #0xbe + 42fc: 0f0507e7 movi v7.2s, #0xbf + 4300: 0f060407 movi v7.2s, #0xc0 + 4304: 0f060427 movi v7.2s, #0xc1 + 4308: 0f060447 movi v7.2s, #0xc2 + 430c: 0f060467 movi v7.2s, #0xc3 + 4310: 0f060487 movi v7.2s, #0xc4 + 4314: 0f0604a7 movi v7.2s, #0xc5 + 4318: 0f0604c7 movi v7.2s, #0xc6 + 431c: 0f0604e7 movi v7.2s, #0xc7 + 4320: 0f060507 movi v7.2s, #0xc8 + 4324: 0f060527 movi v7.2s, #0xc9 + 4328: 0f060547 movi v7.2s, #0xca + 432c: 0f060567 movi v7.2s, #0xcb + 4330: 0f060587 movi v7.2s, #0xcc + 4334: 0f0605a7 movi v7.2s, #0xcd + 4338: 0f0605c7 movi v7.2s, #0xce + 433c: 0f0605e7 movi v7.2s, #0xcf + 4340: 0f060607 movi v7.2s, #0xd0 + 4344: 0f060627 movi v7.2s, #0xd1 + 4348: 0f060647 movi v7.2s, #0xd2 + 434c: 0f060667 movi v7.2s, #0xd3 + 4350: 0f060687 movi v7.2s, #0xd4 + 4354: 0f0606a7 movi v7.2s, #0xd5 + 4358: 0f0606c7 movi v7.2s, #0xd6 + 435c: 0f0606e7 movi v7.2s, #0xd7 + 4360: 0f060707 movi v7.2s, #0xd8 + 4364: 0f060727 movi v7.2s, #0xd9 + 4368: 0f060747 movi v7.2s, #0xda + 436c: 0f060767 movi v7.2s, #0xdb + 4370: 0f060787 movi v7.2s, #0xdc + 4374: 0f0607a7 movi v7.2s, #0xdd + 4378: 0f0607c7 movi v7.2s, #0xde + 437c: 0f0607e7 movi v7.2s, #0xdf + 4380: 0f070407 movi v7.2s, #0xe0 + 4384: 0f070427 movi v7.2s, #0xe1 + 4388: 0f070447 movi v7.2s, #0xe2 + 438c: 0f070467 movi v7.2s, #0xe3 + 4390: 0f070487 movi v7.2s, #0xe4 + 4394: 0f0704a7 movi v7.2s, #0xe5 + 4398: 0f0704c7 movi v7.2s, #0xe6 + 439c: 0f0704e7 movi v7.2s, #0xe7 + 43a0: 0f070507 movi v7.2s, #0xe8 + 43a4: 0f070527 movi v7.2s, #0xe9 + 43a8: 0f070547 movi v7.2s, #0xea + 43ac: 0f070567 movi v7.2s, #0xeb + 43b0: 0f070587 movi v7.2s, #0xec + 43b4: 0f0705a7 movi v7.2s, #0xed + 43b8: 0f0705c7 movi v7.2s, #0xee + 43bc: 0f0705e7 movi v7.2s, #0xef + 43c0: 0f070607 movi v7.2s, #0xf0 + 43c4: 0f070627 movi v7.2s, #0xf1 + 43c8: 0f070647 movi v7.2s, #0xf2 + 43cc: 0f070667 movi v7.2s, #0xf3 + 43d0: 0f070687 movi v7.2s, #0xf4 + 43d4: 0f0706a7 movi v7.2s, #0xf5 + 43d8: 0f0706c7 movi v7.2s, #0xf6 + 43dc: 0f0706e7 movi v7.2s, #0xf7 + 43e0: 0f070707 movi v7.2s, #0xf8 + 43e4: 0f070727 movi v7.2s, #0xf9 + 43e8: 0f070747 movi v7.2s, #0xfa + 43ec: 0f070767 movi v7.2s, #0xfb + 43f0: 0f070787 movi v7.2s, #0xfc + 43f4: 0f0707a7 movi v7.2s, #0xfd + 43f8: 0f0707c7 movi v7.2s, #0xfe + 43fc: 0f0707e7 movi v7.2s, #0xff + 4400: 0f00040f movi v15.2s, #0x0 + 4404: 0f00042f movi v15.2s, #0x1 + 4408: 0f00044f movi v15.2s, #0x2 + 440c: 0f00046f movi v15.2s, #0x3 + 4410: 0f00048f movi v15.2s, #0x4 + 4414: 0f0004af movi v15.2s, #0x5 + 4418: 0f0004cf movi v15.2s, #0x6 + 441c: 0f0004ef movi v15.2s, #0x7 + 4420: 0f00050f movi v15.2s, #0x8 + 4424: 0f00052f movi v15.2s, #0x9 + 4428: 0f00054f movi v15.2s, #0xa + 442c: 0f00056f movi v15.2s, #0xb + 4430: 0f00058f movi v15.2s, #0xc + 4434: 0f0005af movi v15.2s, #0xd + 4438: 0f0005cf movi v15.2s, #0xe + 443c: 0f0005ef movi v15.2s, #0xf + 4440: 0f00060f movi v15.2s, #0x10 + 4444: 0f00062f movi v15.2s, #0x11 + 4448: 0f00064f movi v15.2s, #0x12 + 444c: 0f00066f movi v15.2s, #0x13 + 4450: 0f00068f movi v15.2s, #0x14 + 4454: 0f0006af movi v15.2s, #0x15 + 4458: 0f0006cf movi v15.2s, #0x16 + 445c: 0f0006ef movi v15.2s, #0x17 + 4460: 0f00070f movi v15.2s, #0x18 + 4464: 0f00072f movi v15.2s, #0x19 + 4468: 0f00074f movi v15.2s, #0x1a + 446c: 0f00076f movi v15.2s, #0x1b + 4470: 0f00078f movi v15.2s, #0x1c + 4474: 0f0007af movi v15.2s, #0x1d + 4478: 0f0007cf movi v15.2s, #0x1e + 447c: 0f0007ef movi v15.2s, #0x1f + 4480: 0f01040f movi v15.2s, #0x20 + 4484: 0f01042f movi v15.2s, #0x21 + 4488: 0f01044f movi v15.2s, #0x22 + 448c: 0f01046f movi v15.2s, #0x23 + 4490: 0f01048f movi v15.2s, #0x24 + 4494: 0f0104af movi v15.2s, #0x25 + 4498: 0f0104cf movi v15.2s, #0x26 + 449c: 0f0104ef movi v15.2s, #0x27 + 44a0: 0f01050f movi v15.2s, #0x28 + 44a4: 0f01052f movi v15.2s, #0x29 + 44a8: 0f01054f movi v15.2s, #0x2a + 44ac: 0f01056f movi v15.2s, #0x2b + 44b0: 0f01058f movi v15.2s, #0x2c + 44b4: 0f0105af movi v15.2s, #0x2d + 44b8: 0f0105cf movi v15.2s, #0x2e + 44bc: 0f0105ef movi v15.2s, #0x2f + 44c0: 0f01060f movi v15.2s, #0x30 + 44c4: 0f01062f movi v15.2s, #0x31 + 44c8: 0f01064f movi v15.2s, #0x32 + 44cc: 0f01066f movi v15.2s, #0x33 + 44d0: 0f01068f movi v15.2s, #0x34 + 44d4: 0f0106af movi v15.2s, #0x35 + 44d8: 0f0106cf movi v15.2s, #0x36 + 44dc: 0f0106ef movi v15.2s, #0x37 + 44e0: 0f01070f movi v15.2s, #0x38 + 44e4: 0f01072f movi v15.2s, #0x39 + 44e8: 0f01074f movi v15.2s, #0x3a + 44ec: 0f01076f movi v15.2s, #0x3b + 44f0: 0f01078f movi v15.2s, #0x3c + 44f4: 0f0107af movi v15.2s, #0x3d + 44f8: 0f0107cf movi v15.2s, #0x3e + 44fc: 0f0107ef movi v15.2s, #0x3f + 4500: 0f02040f movi v15.2s, #0x40 + 4504: 0f02042f movi v15.2s, #0x41 + 4508: 0f02044f movi v15.2s, #0x42 + 450c: 0f02046f movi v15.2s, #0x43 + 4510: 0f02048f movi v15.2s, #0x44 + 4514: 0f0204af movi v15.2s, #0x45 + 4518: 0f0204cf movi v15.2s, #0x46 + 451c: 0f0204ef movi v15.2s, #0x47 + 4520: 0f02050f movi v15.2s, #0x48 + 4524: 0f02052f movi v15.2s, #0x49 + 4528: 0f02054f movi v15.2s, #0x4a + 452c: 0f02056f movi v15.2s, #0x4b + 4530: 0f02058f movi v15.2s, #0x4c + 4534: 0f0205af movi v15.2s, #0x4d + 4538: 0f0205cf movi v15.2s, #0x4e + 453c: 0f0205ef movi v15.2s, #0x4f + 4540: 0f02060f movi v15.2s, #0x50 + 4544: 0f02062f movi v15.2s, #0x51 + 4548: 0f02064f movi v15.2s, #0x52 + 454c: 0f02066f movi v15.2s, #0x53 + 4550: 0f02068f movi v15.2s, #0x54 + 4554: 0f0206af movi v15.2s, #0x55 + 4558: 0f0206cf movi v15.2s, #0x56 + 455c: 0f0206ef movi v15.2s, #0x57 + 4560: 0f02070f movi v15.2s, #0x58 + 4564: 0f02072f movi v15.2s, #0x59 + 4568: 0f02074f movi v15.2s, #0x5a + 456c: 0f02076f movi v15.2s, #0x5b + 4570: 0f02078f movi v15.2s, #0x5c + 4574: 0f0207af movi v15.2s, #0x5d + 4578: 0f0207cf movi v15.2s, #0x5e + 457c: 0f0207ef movi v15.2s, #0x5f + 4580: 0f03040f movi v15.2s, #0x60 + 4584: 0f03042f movi v15.2s, #0x61 + 4588: 0f03044f movi v15.2s, #0x62 + 458c: 0f03046f movi v15.2s, #0x63 + 4590: 0f03048f movi v15.2s, #0x64 + 4594: 0f0304af movi v15.2s, #0x65 + 4598: 0f0304cf movi v15.2s, #0x66 + 459c: 0f0304ef movi v15.2s, #0x67 + 45a0: 0f03050f movi v15.2s, #0x68 + 45a4: 0f03052f movi v15.2s, #0x69 + 45a8: 0f03054f movi v15.2s, #0x6a + 45ac: 0f03056f movi v15.2s, #0x6b + 45b0: 0f03058f movi v15.2s, #0x6c + 45b4: 0f0305af movi v15.2s, #0x6d + 45b8: 0f0305cf movi v15.2s, #0x6e + 45bc: 0f0305ef movi v15.2s, #0x6f + 45c0: 0f03060f movi v15.2s, #0x70 + 45c4: 0f03062f movi v15.2s, #0x71 + 45c8: 0f03064f movi v15.2s, #0x72 + 45cc: 0f03066f movi v15.2s, #0x73 + 45d0: 0f03068f movi v15.2s, #0x74 + 45d4: 0f0306af movi v15.2s, #0x75 + 45d8: 0f0306cf movi v15.2s, #0x76 + 45dc: 0f0306ef movi v15.2s, #0x77 + 45e0: 0f03070f movi v15.2s, #0x78 + 45e4: 0f03072f movi v15.2s, #0x79 + 45e8: 0f03074f movi v15.2s, #0x7a + 45ec: 0f03076f movi v15.2s, #0x7b + 45f0: 0f03078f movi v15.2s, #0x7c + 45f4: 0f0307af movi v15.2s, #0x7d + 45f8: 0f0307cf movi v15.2s, #0x7e + 45fc: 0f0307ef movi v15.2s, #0x7f + 4600: 0f04040f movi v15.2s, #0x80 + 4604: 0f04042f movi v15.2s, #0x81 + 4608: 0f04044f movi v15.2s, #0x82 + 460c: 0f04046f movi v15.2s, #0x83 + 4610: 0f04048f movi v15.2s, #0x84 + 4614: 0f0404af movi v15.2s, #0x85 + 4618: 0f0404cf movi v15.2s, #0x86 + 461c: 0f0404ef movi v15.2s, #0x87 + 4620: 0f04050f movi v15.2s, #0x88 + 4624: 0f04052f movi v15.2s, #0x89 + 4628: 0f04054f movi v15.2s, #0x8a + 462c: 0f04056f movi v15.2s, #0x8b + 4630: 0f04058f movi v15.2s, #0x8c + 4634: 0f0405af movi v15.2s, #0x8d + 4638: 0f0405cf movi v15.2s, #0x8e + 463c: 0f0405ef movi v15.2s, #0x8f + 4640: 0f04060f movi v15.2s, #0x90 + 4644: 0f04062f movi v15.2s, #0x91 + 4648: 0f04064f movi v15.2s, #0x92 + 464c: 0f04066f movi v15.2s, #0x93 + 4650: 0f04068f movi v15.2s, #0x94 + 4654: 0f0406af movi v15.2s, #0x95 + 4658: 0f0406cf movi v15.2s, #0x96 + 465c: 0f0406ef movi v15.2s, #0x97 + 4660: 0f04070f movi v15.2s, #0x98 + 4664: 0f04072f movi v15.2s, #0x99 + 4668: 0f04074f movi v15.2s, #0x9a + 466c: 0f04076f movi v15.2s, #0x9b + 4670: 0f04078f movi v15.2s, #0x9c + 4674: 0f0407af movi v15.2s, #0x9d + 4678: 0f0407cf movi v15.2s, #0x9e + 467c: 0f0407ef movi v15.2s, #0x9f + 4680: 0f05040f movi v15.2s, #0xa0 + 4684: 0f05042f movi v15.2s, #0xa1 + 4688: 0f05044f movi v15.2s, #0xa2 + 468c: 0f05046f movi v15.2s, #0xa3 + 4690: 0f05048f movi v15.2s, #0xa4 + 4694: 0f0504af movi v15.2s, #0xa5 + 4698: 0f0504cf movi v15.2s, #0xa6 + 469c: 0f0504ef movi v15.2s, #0xa7 + 46a0: 0f05050f movi v15.2s, #0xa8 + 46a4: 0f05052f movi v15.2s, #0xa9 + 46a8: 0f05054f movi v15.2s, #0xaa + 46ac: 0f05056f movi v15.2s, #0xab + 46b0: 0f05058f movi v15.2s, #0xac + 46b4: 0f0505af movi v15.2s, #0xad + 46b8: 0f0505cf movi v15.2s, #0xae + 46bc: 0f0505ef movi v15.2s, #0xaf + 46c0: 0f05060f movi v15.2s, #0xb0 + 46c4: 0f05062f movi v15.2s, #0xb1 + 46c8: 0f05064f movi v15.2s, #0xb2 + 46cc: 0f05066f movi v15.2s, #0xb3 + 46d0: 0f05068f movi v15.2s, #0xb4 + 46d4: 0f0506af movi v15.2s, #0xb5 + 46d8: 0f0506cf movi v15.2s, #0xb6 + 46dc: 0f0506ef movi v15.2s, #0xb7 + 46e0: 0f05070f movi v15.2s, #0xb8 + 46e4: 0f05072f movi v15.2s, #0xb9 + 46e8: 0f05074f movi v15.2s, #0xba + 46ec: 0f05076f movi v15.2s, #0xbb + 46f0: 0f05078f movi v15.2s, #0xbc + 46f4: 0f0507af movi v15.2s, #0xbd + 46f8: 0f0507cf movi v15.2s, #0xbe + 46fc: 0f0507ef movi v15.2s, #0xbf + 4700: 0f06040f movi v15.2s, #0xc0 + 4704: 0f06042f movi v15.2s, #0xc1 + 4708: 0f06044f movi v15.2s, #0xc2 + 470c: 0f06046f movi v15.2s, #0xc3 + 4710: 0f06048f movi v15.2s, #0xc4 + 4714: 0f0604af movi v15.2s, #0xc5 + 4718: 0f0604cf movi v15.2s, #0xc6 + 471c: 0f0604ef movi v15.2s, #0xc7 + 4720: 0f06050f movi v15.2s, #0xc8 + 4724: 0f06052f movi v15.2s, #0xc9 + 4728: 0f06054f movi v15.2s, #0xca + 472c: 0f06056f movi v15.2s, #0xcb + 4730: 0f06058f movi v15.2s, #0xcc + 4734: 0f0605af movi v15.2s, #0xcd + 4738: 0f0605cf movi v15.2s, #0xce + 473c: 0f0605ef movi v15.2s, #0xcf + 4740: 0f06060f movi v15.2s, #0xd0 + 4744: 0f06062f movi v15.2s, #0xd1 + 4748: 0f06064f movi v15.2s, #0xd2 + 474c: 0f06066f movi v15.2s, #0xd3 + 4750: 0f06068f movi v15.2s, #0xd4 + 4754: 0f0606af movi v15.2s, #0xd5 + 4758: 0f0606cf movi v15.2s, #0xd6 + 475c: 0f0606ef movi v15.2s, #0xd7 + 4760: 0f06070f movi v15.2s, #0xd8 + 4764: 0f06072f movi v15.2s, #0xd9 + 4768: 0f06074f movi v15.2s, #0xda + 476c: 0f06076f movi v15.2s, #0xdb + 4770: 0f06078f movi v15.2s, #0xdc + 4774: 0f0607af movi v15.2s, #0xdd + 4778: 0f0607cf movi v15.2s, #0xde + 477c: 0f0607ef movi v15.2s, #0xdf + 4780: 0f07040f movi v15.2s, #0xe0 + 4784: 0f07042f movi v15.2s, #0xe1 + 4788: 0f07044f movi v15.2s, #0xe2 + 478c: 0f07046f movi v15.2s, #0xe3 + 4790: 0f07048f movi v15.2s, #0xe4 + 4794: 0f0704af movi v15.2s, #0xe5 + 4798: 0f0704cf movi v15.2s, #0xe6 + 479c: 0f0704ef movi v15.2s, #0xe7 + 47a0: 0f07050f movi v15.2s, #0xe8 + 47a4: 0f07052f movi v15.2s, #0xe9 + 47a8: 0f07054f movi v15.2s, #0xea + 47ac: 0f07056f movi v15.2s, #0xeb + 47b0: 0f07058f movi v15.2s, #0xec + 47b4: 0f0705af movi v15.2s, #0xed + 47b8: 0f0705cf movi v15.2s, #0xee + 47bc: 0f0705ef movi v15.2s, #0xef + 47c0: 0f07060f movi v15.2s, #0xf0 + 47c4: 0f07062f movi v15.2s, #0xf1 + 47c8: 0f07064f movi v15.2s, #0xf2 + 47cc: 0f07066f movi v15.2s, #0xf3 + 47d0: 0f07068f movi v15.2s, #0xf4 + 47d4: 0f0706af movi v15.2s, #0xf5 + 47d8: 0f0706cf movi v15.2s, #0xf6 + 47dc: 0f0706ef movi v15.2s, #0xf7 + 47e0: 0f07070f movi v15.2s, #0xf8 + 47e4: 0f07072f movi v15.2s, #0xf9 + 47e8: 0f07074f movi v15.2s, #0xfa + 47ec: 0f07076f movi v15.2s, #0xfb + 47f0: 0f07078f movi v15.2s, #0xfc + 47f4: 0f0707af movi v15.2s, #0xfd + 47f8: 0f0707cf movi v15.2s, #0xfe + 47fc: 0f0707ef movi v15.2s, #0xff + 4800: 0f002407 movi v7.2s, #0x0, lsl #8 + 4804: 0f002427 movi v7.2s, #0x1, lsl #8 + 4808: 0f002447 movi v7.2s, #0x2, lsl #8 + 480c: 0f002467 movi v7.2s, #0x3, lsl #8 + 4810: 0f002487 movi v7.2s, #0x4, lsl #8 + 4814: 0f0024a7 movi v7.2s, #0x5, lsl #8 + 4818: 0f0024c7 movi v7.2s, #0x6, lsl #8 + 481c: 0f0024e7 movi v7.2s, #0x7, lsl #8 + 4820: 0f002507 movi v7.2s, #0x8, lsl #8 + 4824: 0f002527 movi v7.2s, #0x9, lsl #8 + 4828: 0f002547 movi v7.2s, #0xa, lsl #8 + 482c: 0f002567 movi v7.2s, #0xb, lsl #8 + 4830: 0f002587 movi v7.2s, #0xc, lsl #8 + 4834: 0f0025a7 movi v7.2s, #0xd, lsl #8 + 4838: 0f0025c7 movi v7.2s, #0xe, lsl #8 + 483c: 0f0025e7 movi v7.2s, #0xf, lsl #8 + 4840: 0f002607 movi v7.2s, #0x10, lsl #8 + 4844: 0f002627 movi v7.2s, #0x11, lsl #8 + 4848: 0f002647 movi v7.2s, #0x12, lsl #8 + 484c: 0f002667 movi v7.2s, #0x13, lsl #8 + 4850: 0f002687 movi v7.2s, #0x14, lsl #8 + 4854: 0f0026a7 movi v7.2s, #0x15, lsl #8 + 4858: 0f0026c7 movi v7.2s, #0x16, lsl #8 + 485c: 0f0026e7 movi v7.2s, #0x17, lsl #8 + 4860: 0f002707 movi v7.2s, #0x18, lsl #8 + 4864: 0f002727 movi v7.2s, #0x19, lsl #8 + 4868: 0f002747 movi v7.2s, #0x1a, lsl #8 + 486c: 0f002767 movi v7.2s, #0x1b, lsl #8 + 4870: 0f002787 movi v7.2s, #0x1c, lsl #8 + 4874: 0f0027a7 movi v7.2s, #0x1d, lsl #8 + 4878: 0f0027c7 movi v7.2s, #0x1e, lsl #8 + 487c: 0f0027e7 movi v7.2s, #0x1f, lsl #8 + 4880: 0f012407 movi v7.2s, #0x20, lsl #8 + 4884: 0f012427 movi v7.2s, #0x21, lsl #8 + 4888: 0f012447 movi v7.2s, #0x22, lsl #8 + 488c: 0f012467 movi v7.2s, #0x23, lsl #8 + 4890: 0f012487 movi v7.2s, #0x24, lsl #8 + 4894: 0f0124a7 movi v7.2s, #0x25, lsl #8 + 4898: 0f0124c7 movi v7.2s, #0x26, lsl #8 + 489c: 0f0124e7 movi v7.2s, #0x27, lsl #8 + 48a0: 0f012507 movi v7.2s, #0x28, lsl #8 + 48a4: 0f012527 movi v7.2s, #0x29, lsl #8 + 48a8: 0f012547 movi v7.2s, #0x2a, lsl #8 + 48ac: 0f012567 movi v7.2s, #0x2b, lsl #8 + 48b0: 0f012587 movi v7.2s, #0x2c, lsl #8 + 48b4: 0f0125a7 movi v7.2s, #0x2d, lsl #8 + 48b8: 0f0125c7 movi v7.2s, #0x2e, lsl #8 + 48bc: 0f0125e7 movi v7.2s, #0x2f, lsl #8 + 48c0: 0f012607 movi v7.2s, #0x30, lsl #8 + 48c4: 0f012627 movi v7.2s, #0x31, lsl #8 + 48c8: 0f012647 movi v7.2s, #0x32, lsl #8 + 48cc: 0f012667 movi v7.2s, #0x33, lsl #8 + 48d0: 0f012687 movi v7.2s, #0x34, lsl #8 + 48d4: 0f0126a7 movi v7.2s, #0x35, lsl #8 + 48d8: 0f0126c7 movi v7.2s, #0x36, lsl #8 + 48dc: 0f0126e7 movi v7.2s, #0x37, lsl #8 + 48e0: 0f012707 movi v7.2s, #0x38, lsl #8 + 48e4: 0f012727 movi v7.2s, #0x39, lsl #8 + 48e8: 0f012747 movi v7.2s, #0x3a, lsl #8 + 48ec: 0f012767 movi v7.2s, #0x3b, lsl #8 + 48f0: 0f012787 movi v7.2s, #0x3c, lsl #8 + 48f4: 0f0127a7 movi v7.2s, #0x3d, lsl #8 + 48f8: 0f0127c7 movi v7.2s, #0x3e, lsl #8 + 48fc: 0f0127e7 movi v7.2s, #0x3f, lsl #8 + 4900: 0f022407 movi v7.2s, #0x40, lsl #8 + 4904: 0f022427 movi v7.2s, #0x41, lsl #8 + 4908: 0f022447 movi v7.2s, #0x42, lsl #8 + 490c: 0f022467 movi v7.2s, #0x43, lsl #8 + 4910: 0f022487 movi v7.2s, #0x44, lsl #8 + 4914: 0f0224a7 movi v7.2s, #0x45, lsl #8 + 4918: 0f0224c7 movi v7.2s, #0x46, lsl #8 + 491c: 0f0224e7 movi v7.2s, #0x47, lsl #8 + 4920: 0f022507 movi v7.2s, #0x48, lsl #8 + 4924: 0f022527 movi v7.2s, #0x49, lsl #8 + 4928: 0f022547 movi v7.2s, #0x4a, lsl #8 + 492c: 0f022567 movi v7.2s, #0x4b, lsl #8 + 4930: 0f022587 movi v7.2s, #0x4c, lsl #8 + 4934: 0f0225a7 movi v7.2s, #0x4d, lsl #8 + 4938: 0f0225c7 movi v7.2s, #0x4e, lsl #8 + 493c: 0f0225e7 movi v7.2s, #0x4f, lsl #8 + 4940: 0f022607 movi v7.2s, #0x50, lsl #8 + 4944: 0f022627 movi v7.2s, #0x51, lsl #8 + 4948: 0f022647 movi v7.2s, #0x52, lsl #8 + 494c: 0f022667 movi v7.2s, #0x53, lsl #8 + 4950: 0f022687 movi v7.2s, #0x54, lsl #8 + 4954: 0f0226a7 movi v7.2s, #0x55, lsl #8 + 4958: 0f0226c7 movi v7.2s, #0x56, lsl #8 + 495c: 0f0226e7 movi v7.2s, #0x57, lsl #8 + 4960: 0f022707 movi v7.2s, #0x58, lsl #8 + 4964: 0f022727 movi v7.2s, #0x59, lsl #8 + 4968: 0f022747 movi v7.2s, #0x5a, lsl #8 + 496c: 0f022767 movi v7.2s, #0x5b, lsl #8 + 4970: 0f022787 movi v7.2s, #0x5c, lsl #8 + 4974: 0f0227a7 movi v7.2s, #0x5d, lsl #8 + 4978: 0f0227c7 movi v7.2s, #0x5e, lsl #8 + 497c: 0f0227e7 movi v7.2s, #0x5f, lsl #8 + 4980: 0f032407 movi v7.2s, #0x60, lsl #8 + 4984: 0f032427 movi v7.2s, #0x61, lsl #8 + 4988: 0f032447 movi v7.2s, #0x62, lsl #8 + 498c: 0f032467 movi v7.2s, #0x63, lsl #8 + 4990: 0f032487 movi v7.2s, #0x64, lsl #8 + 4994: 0f0324a7 movi v7.2s, #0x65, lsl #8 + 4998: 0f0324c7 movi v7.2s, #0x66, lsl #8 + 499c: 0f0324e7 movi v7.2s, #0x67, lsl #8 + 49a0: 0f032507 movi v7.2s, #0x68, lsl #8 + 49a4: 0f032527 movi v7.2s, #0x69, lsl #8 + 49a8: 0f032547 movi v7.2s, #0x6a, lsl #8 + 49ac: 0f032567 movi v7.2s, #0x6b, lsl #8 + 49b0: 0f032587 movi v7.2s, #0x6c, lsl #8 + 49b4: 0f0325a7 movi v7.2s, #0x6d, lsl #8 + 49b8: 0f0325c7 movi v7.2s, #0x6e, lsl #8 + 49bc: 0f0325e7 movi v7.2s, #0x6f, lsl #8 + 49c0: 0f032607 movi v7.2s, #0x70, lsl #8 + 49c4: 0f032627 movi v7.2s, #0x71, lsl #8 + 49c8: 0f032647 movi v7.2s, #0x72, lsl #8 + 49cc: 0f032667 movi v7.2s, #0x73, lsl #8 + 49d0: 0f032687 movi v7.2s, #0x74, lsl #8 + 49d4: 0f0326a7 movi v7.2s, #0x75, lsl #8 + 49d8: 0f0326c7 movi v7.2s, #0x76, lsl #8 + 49dc: 0f0326e7 movi v7.2s, #0x77, lsl #8 + 49e0: 0f032707 movi v7.2s, #0x78, lsl #8 + 49e4: 0f032727 movi v7.2s, #0x79, lsl #8 + 49e8: 0f032747 movi v7.2s, #0x7a, lsl #8 + 49ec: 0f032767 movi v7.2s, #0x7b, lsl #8 + 49f0: 0f032787 movi v7.2s, #0x7c, lsl #8 + 49f4: 0f0327a7 movi v7.2s, #0x7d, lsl #8 + 49f8: 0f0327c7 movi v7.2s, #0x7e, lsl #8 + 49fc: 0f0327e7 movi v7.2s, #0x7f, lsl #8 + 4a00: 0f042407 movi v7.2s, #0x80, lsl #8 + 4a04: 0f042427 movi v7.2s, #0x81, lsl #8 + 4a08: 0f042447 movi v7.2s, #0x82, lsl #8 + 4a0c: 0f042467 movi v7.2s, #0x83, lsl #8 + 4a10: 0f042487 movi v7.2s, #0x84, lsl #8 + 4a14: 0f0424a7 movi v7.2s, #0x85, lsl #8 + 4a18: 0f0424c7 movi v7.2s, #0x86, lsl #8 + 4a1c: 0f0424e7 movi v7.2s, #0x87, lsl #8 + 4a20: 0f042507 movi v7.2s, #0x88, lsl #8 + 4a24: 0f042527 movi v7.2s, #0x89, lsl #8 + 4a28: 0f042547 movi v7.2s, #0x8a, lsl #8 + 4a2c: 0f042567 movi v7.2s, #0x8b, lsl #8 + 4a30: 0f042587 movi v7.2s, #0x8c, lsl #8 + 4a34: 0f0425a7 movi v7.2s, #0x8d, lsl #8 + 4a38: 0f0425c7 movi v7.2s, #0x8e, lsl #8 + 4a3c: 0f0425e7 movi v7.2s, #0x8f, lsl #8 + 4a40: 0f042607 movi v7.2s, #0x90, lsl #8 + 4a44: 0f042627 movi v7.2s, #0x91, lsl #8 + 4a48: 0f042647 movi v7.2s, #0x92, lsl #8 + 4a4c: 0f042667 movi v7.2s, #0x93, lsl #8 + 4a50: 0f042687 movi v7.2s, #0x94, lsl #8 + 4a54: 0f0426a7 movi v7.2s, #0x95, lsl #8 + 4a58: 0f0426c7 movi v7.2s, #0x96, lsl #8 + 4a5c: 0f0426e7 movi v7.2s, #0x97, lsl #8 + 4a60: 0f042707 movi v7.2s, #0x98, lsl #8 + 4a64: 0f042727 movi v7.2s, #0x99, lsl #8 + 4a68: 0f042747 movi v7.2s, #0x9a, lsl #8 + 4a6c: 0f042767 movi v7.2s, #0x9b, lsl #8 + 4a70: 0f042787 movi v7.2s, #0x9c, lsl #8 + 4a74: 0f0427a7 movi v7.2s, #0x9d, lsl #8 + 4a78: 0f0427c7 movi v7.2s, #0x9e, lsl #8 + 4a7c: 0f0427e7 movi v7.2s, #0x9f, lsl #8 + 4a80: 0f052407 movi v7.2s, #0xa0, lsl #8 + 4a84: 0f052427 movi v7.2s, #0xa1, lsl #8 + 4a88: 0f052447 movi v7.2s, #0xa2, lsl #8 + 4a8c: 0f052467 movi v7.2s, #0xa3, lsl #8 + 4a90: 0f052487 movi v7.2s, #0xa4, lsl #8 + 4a94: 0f0524a7 movi v7.2s, #0xa5, lsl #8 + 4a98: 0f0524c7 movi v7.2s, #0xa6, lsl #8 + 4a9c: 0f0524e7 movi v7.2s, #0xa7, lsl #8 + 4aa0: 0f052507 movi v7.2s, #0xa8, lsl #8 + 4aa4: 0f052527 movi v7.2s, #0xa9, lsl #8 + 4aa8: 0f052547 movi v7.2s, #0xaa, lsl #8 + 4aac: 0f052567 movi v7.2s, #0xab, lsl #8 + 4ab0: 0f052587 movi v7.2s, #0xac, lsl #8 + 4ab4: 0f0525a7 movi v7.2s, #0xad, lsl #8 + 4ab8: 0f0525c7 movi v7.2s, #0xae, lsl #8 + 4abc: 0f0525e7 movi v7.2s, #0xaf, lsl #8 + 4ac0: 0f052607 movi v7.2s, #0xb0, lsl #8 + 4ac4: 0f052627 movi v7.2s, #0xb1, lsl #8 + 4ac8: 0f052647 movi v7.2s, #0xb2, lsl #8 + 4acc: 0f052667 movi v7.2s, #0xb3, lsl #8 + 4ad0: 0f052687 movi v7.2s, #0xb4, lsl #8 + 4ad4: 0f0526a7 movi v7.2s, #0xb5, lsl #8 + 4ad8: 0f0526c7 movi v7.2s, #0xb6, lsl #8 + 4adc: 0f0526e7 movi v7.2s, #0xb7, lsl #8 + 4ae0: 0f052707 movi v7.2s, #0xb8, lsl #8 + 4ae4: 0f052727 movi v7.2s, #0xb9, lsl #8 + 4ae8: 0f052747 movi v7.2s, #0xba, lsl #8 + 4aec: 0f052767 movi v7.2s, #0xbb, lsl #8 + 4af0: 0f052787 movi v7.2s, #0xbc, lsl #8 + 4af4: 0f0527a7 movi v7.2s, #0xbd, lsl #8 + 4af8: 0f0527c7 movi v7.2s, #0xbe, lsl #8 + 4afc: 0f0527e7 movi v7.2s, #0xbf, lsl #8 + 4b00: 0f062407 movi v7.2s, #0xc0, lsl #8 + 4b04: 0f062427 movi v7.2s, #0xc1, lsl #8 + 4b08: 0f062447 movi v7.2s, #0xc2, lsl #8 + 4b0c: 0f062467 movi v7.2s, #0xc3, lsl #8 + 4b10: 0f062487 movi v7.2s, #0xc4, lsl #8 + 4b14: 0f0624a7 movi v7.2s, #0xc5, lsl #8 + 4b18: 0f0624c7 movi v7.2s, #0xc6, lsl #8 + 4b1c: 0f0624e7 movi v7.2s, #0xc7, lsl #8 + 4b20: 0f062507 movi v7.2s, #0xc8, lsl #8 + 4b24: 0f062527 movi v7.2s, #0xc9, lsl #8 + 4b28: 0f062547 movi v7.2s, #0xca, lsl #8 + 4b2c: 0f062567 movi v7.2s, #0xcb, lsl #8 + 4b30: 0f062587 movi v7.2s, #0xcc, lsl #8 + 4b34: 0f0625a7 movi v7.2s, #0xcd, lsl #8 + 4b38: 0f0625c7 movi v7.2s, #0xce, lsl #8 + 4b3c: 0f0625e7 movi v7.2s, #0xcf, lsl #8 + 4b40: 0f062607 movi v7.2s, #0xd0, lsl #8 + 4b44: 0f062627 movi v7.2s, #0xd1, lsl #8 + 4b48: 0f062647 movi v7.2s, #0xd2, lsl #8 + 4b4c: 0f062667 movi v7.2s, #0xd3, lsl #8 + 4b50: 0f062687 movi v7.2s, #0xd4, lsl #8 + 4b54: 0f0626a7 movi v7.2s, #0xd5, lsl #8 + 4b58: 0f0626c7 movi v7.2s, #0xd6, lsl #8 + 4b5c: 0f0626e7 movi v7.2s, #0xd7, lsl #8 + 4b60: 0f062707 movi v7.2s, #0xd8, lsl #8 + 4b64: 0f062727 movi v7.2s, #0xd9, lsl #8 + 4b68: 0f062747 movi v7.2s, #0xda, lsl #8 + 4b6c: 0f062767 movi v7.2s, #0xdb, lsl #8 + 4b70: 0f062787 movi v7.2s, #0xdc, lsl #8 + 4b74: 0f0627a7 movi v7.2s, #0xdd, lsl #8 + 4b78: 0f0627c7 movi v7.2s, #0xde, lsl #8 + 4b7c: 0f0627e7 movi v7.2s, #0xdf, lsl #8 + 4b80: 0f072407 movi v7.2s, #0xe0, lsl #8 + 4b84: 0f072427 movi v7.2s, #0xe1, lsl #8 + 4b88: 0f072447 movi v7.2s, #0xe2, lsl #8 + 4b8c: 0f072467 movi v7.2s, #0xe3, lsl #8 + 4b90: 0f072487 movi v7.2s, #0xe4, lsl #8 + 4b94: 0f0724a7 movi v7.2s, #0xe5, lsl #8 + 4b98: 0f0724c7 movi v7.2s, #0xe6, lsl #8 + 4b9c: 0f0724e7 movi v7.2s, #0xe7, lsl #8 + 4ba0: 0f072507 movi v7.2s, #0xe8, lsl #8 + 4ba4: 0f072527 movi v7.2s, #0xe9, lsl #8 + 4ba8: 0f072547 movi v7.2s, #0xea, lsl #8 + 4bac: 0f072567 movi v7.2s, #0xeb, lsl #8 + 4bb0: 0f072587 movi v7.2s, #0xec, lsl #8 + 4bb4: 0f0725a7 movi v7.2s, #0xed, lsl #8 + 4bb8: 0f0725c7 movi v7.2s, #0xee, lsl #8 + 4bbc: 0f0725e7 movi v7.2s, #0xef, lsl #8 + 4bc0: 0f072607 movi v7.2s, #0xf0, lsl #8 + 4bc4: 0f072627 movi v7.2s, #0xf1, lsl #8 + 4bc8: 0f072647 movi v7.2s, #0xf2, lsl #8 + 4bcc: 0f072667 movi v7.2s, #0xf3, lsl #8 + 4bd0: 0f072687 movi v7.2s, #0xf4, lsl #8 + 4bd4: 0f0726a7 movi v7.2s, #0xf5, lsl #8 + 4bd8: 0f0726c7 movi v7.2s, #0xf6, lsl #8 + 4bdc: 0f0726e7 movi v7.2s, #0xf7, lsl #8 + 4be0: 0f072707 movi v7.2s, #0xf8, lsl #8 + 4be4: 0f072727 movi v7.2s, #0xf9, lsl #8 + 4be8: 0f072747 movi v7.2s, #0xfa, lsl #8 + 4bec: 0f072767 movi v7.2s, #0xfb, lsl #8 + 4bf0: 0f072787 movi v7.2s, #0xfc, lsl #8 + 4bf4: 0f0727a7 movi v7.2s, #0xfd, lsl #8 + 4bf8: 0f0727c7 movi v7.2s, #0xfe, lsl #8 + 4bfc: 0f0727e7 movi v7.2s, #0xff, lsl #8 + 4c00: 0f00040f movi v15.2s, #0x0 + 4c04: 0f00042f movi v15.2s, #0x1 + 4c08: 0f00044f movi v15.2s, #0x2 + 4c0c: 0f00046f movi v15.2s, #0x3 + 4c10: 0f00048f movi v15.2s, #0x4 + 4c14: 0f0004af movi v15.2s, #0x5 + 4c18: 0f0004cf movi v15.2s, #0x6 + 4c1c: 0f0004ef movi v15.2s, #0x7 + 4c20: 0f00050f movi v15.2s, #0x8 + 4c24: 0f00052f movi v15.2s, #0x9 + 4c28: 0f00054f movi v15.2s, #0xa + 4c2c: 0f00056f movi v15.2s, #0xb + 4c30: 0f00058f movi v15.2s, #0xc + 4c34: 0f0005af movi v15.2s, #0xd + 4c38: 0f0005cf movi v15.2s, #0xe + 4c3c: 0f0005ef movi v15.2s, #0xf + 4c40: 0f00060f movi v15.2s, #0x10 + 4c44: 0f00062f movi v15.2s, #0x11 + 4c48: 0f00064f movi v15.2s, #0x12 + 4c4c: 0f00066f movi v15.2s, #0x13 + 4c50: 0f00068f movi v15.2s, #0x14 + 4c54: 0f0006af movi v15.2s, #0x15 + 4c58: 0f0006cf movi v15.2s, #0x16 + 4c5c: 0f0006ef movi v15.2s, #0x17 + 4c60: 0f00070f movi v15.2s, #0x18 + 4c64: 0f00072f movi v15.2s, #0x19 + 4c68: 0f00074f movi v15.2s, #0x1a + 4c6c: 0f00076f movi v15.2s, #0x1b + 4c70: 0f00078f movi v15.2s, #0x1c + 4c74: 0f0007af movi v15.2s, #0x1d + 4c78: 0f0007cf movi v15.2s, #0x1e + 4c7c: 0f0007ef movi v15.2s, #0x1f + 4c80: 0f01040f movi v15.2s, #0x20 + 4c84: 0f01042f movi v15.2s, #0x21 + 4c88: 0f01044f movi v15.2s, #0x22 + 4c8c: 0f01046f movi v15.2s, #0x23 + 4c90: 0f01048f movi v15.2s, #0x24 + 4c94: 0f0104af movi v15.2s, #0x25 + 4c98: 0f0104cf movi v15.2s, #0x26 + 4c9c: 0f0104ef movi v15.2s, #0x27 + 4ca0: 0f01050f movi v15.2s, #0x28 + 4ca4: 0f01052f movi v15.2s, #0x29 + 4ca8: 0f01054f movi v15.2s, #0x2a + 4cac: 0f01056f movi v15.2s, #0x2b + 4cb0: 0f01058f movi v15.2s, #0x2c + 4cb4: 0f0105af movi v15.2s, #0x2d + 4cb8: 0f0105cf movi v15.2s, #0x2e + 4cbc: 0f0105ef movi v15.2s, #0x2f + 4cc0: 0f01060f movi v15.2s, #0x30 + 4cc4: 0f01062f movi v15.2s, #0x31 + 4cc8: 0f01064f movi v15.2s, #0x32 + 4ccc: 0f01066f movi v15.2s, #0x33 + 4cd0: 0f01068f movi v15.2s, #0x34 + 4cd4: 0f0106af movi v15.2s, #0x35 + 4cd8: 0f0106cf movi v15.2s, #0x36 + 4cdc: 0f0106ef movi v15.2s, #0x37 + 4ce0: 0f01070f movi v15.2s, #0x38 + 4ce4: 0f01072f movi v15.2s, #0x39 + 4ce8: 0f01074f movi v15.2s, #0x3a + 4cec: 0f01076f movi v15.2s, #0x3b + 4cf0: 0f01078f movi v15.2s, #0x3c + 4cf4: 0f0107af movi v15.2s, #0x3d + 4cf8: 0f0107cf movi v15.2s, #0x3e + 4cfc: 0f0107ef movi v15.2s, #0x3f + 4d00: 0f02040f movi v15.2s, #0x40 + 4d04: 0f02042f movi v15.2s, #0x41 + 4d08: 0f02044f movi v15.2s, #0x42 + 4d0c: 0f02046f movi v15.2s, #0x43 + 4d10: 0f02048f movi v15.2s, #0x44 + 4d14: 0f0204af movi v15.2s, #0x45 + 4d18: 0f0204cf movi v15.2s, #0x46 + 4d1c: 0f0204ef movi v15.2s, #0x47 + 4d20: 0f02050f movi v15.2s, #0x48 + 4d24: 0f02052f movi v15.2s, #0x49 + 4d28: 0f02054f movi v15.2s, #0x4a + 4d2c: 0f02056f movi v15.2s, #0x4b + 4d30: 0f02058f movi v15.2s, #0x4c + 4d34: 0f0205af movi v15.2s, #0x4d + 4d38: 0f0205cf movi v15.2s, #0x4e + 4d3c: 0f0205ef movi v15.2s, #0x4f + 4d40: 0f02060f movi v15.2s, #0x50 + 4d44: 0f02062f movi v15.2s, #0x51 + 4d48: 0f02064f movi v15.2s, #0x52 + 4d4c: 0f02066f movi v15.2s, #0x53 + 4d50: 0f02068f movi v15.2s, #0x54 + 4d54: 0f0206af movi v15.2s, #0x55 + 4d58: 0f0206cf movi v15.2s, #0x56 + 4d5c: 0f0206ef movi v15.2s, #0x57 + 4d60: 0f02070f movi v15.2s, #0x58 + 4d64: 0f02072f movi v15.2s, #0x59 + 4d68: 0f02074f movi v15.2s, #0x5a + 4d6c: 0f02076f movi v15.2s, #0x5b + 4d70: 0f02078f movi v15.2s, #0x5c + 4d74: 0f0207af movi v15.2s, #0x5d + 4d78: 0f0207cf movi v15.2s, #0x5e + 4d7c: 0f0207ef movi v15.2s, #0x5f + 4d80: 0f03040f movi v15.2s, #0x60 + 4d84: 0f03042f movi v15.2s, #0x61 + 4d88: 0f03044f movi v15.2s, #0x62 + 4d8c: 0f03046f movi v15.2s, #0x63 + 4d90: 0f03048f movi v15.2s, #0x64 + 4d94: 0f0304af movi v15.2s, #0x65 + 4d98: 0f0304cf movi v15.2s, #0x66 + 4d9c: 0f0304ef movi v15.2s, #0x67 + 4da0: 0f03050f movi v15.2s, #0x68 + 4da4: 0f03052f movi v15.2s, #0x69 + 4da8: 0f03054f movi v15.2s, #0x6a + 4dac: 0f03056f movi v15.2s, #0x6b + 4db0: 0f03058f movi v15.2s, #0x6c + 4db4: 0f0305af movi v15.2s, #0x6d + 4db8: 0f0305cf movi v15.2s, #0x6e + 4dbc: 0f0305ef movi v15.2s, #0x6f + 4dc0: 0f03060f movi v15.2s, #0x70 + 4dc4: 0f03062f movi v15.2s, #0x71 + 4dc8: 0f03064f movi v15.2s, #0x72 + 4dcc: 0f03066f movi v15.2s, #0x73 + 4dd0: 0f03068f movi v15.2s, #0x74 + 4dd4: 0f0306af movi v15.2s, #0x75 + 4dd8: 0f0306cf movi v15.2s, #0x76 + 4ddc: 0f0306ef movi v15.2s, #0x77 + 4de0: 0f03070f movi v15.2s, #0x78 + 4de4: 0f03072f movi v15.2s, #0x79 + 4de8: 0f03074f movi v15.2s, #0x7a + 4dec: 0f03076f movi v15.2s, #0x7b + 4df0: 0f03078f movi v15.2s, #0x7c + 4df4: 0f0307af movi v15.2s, #0x7d + 4df8: 0f0307cf movi v15.2s, #0x7e + 4dfc: 0f0307ef movi v15.2s, #0x7f + 4e00: 0f04040f movi v15.2s, #0x80 + 4e04: 0f04042f movi v15.2s, #0x81 + 4e08: 0f04044f movi v15.2s, #0x82 + 4e0c: 0f04046f movi v15.2s, #0x83 + 4e10: 0f04048f movi v15.2s, #0x84 + 4e14: 0f0404af movi v15.2s, #0x85 + 4e18: 0f0404cf movi v15.2s, #0x86 + 4e1c: 0f0404ef movi v15.2s, #0x87 + 4e20: 0f04050f movi v15.2s, #0x88 + 4e24: 0f04052f movi v15.2s, #0x89 + 4e28: 0f04054f movi v15.2s, #0x8a + 4e2c: 0f04056f movi v15.2s, #0x8b + 4e30: 0f04058f movi v15.2s, #0x8c + 4e34: 0f0405af movi v15.2s, #0x8d + 4e38: 0f0405cf movi v15.2s, #0x8e + 4e3c: 0f0405ef movi v15.2s, #0x8f + 4e40: 0f04060f movi v15.2s, #0x90 + 4e44: 0f04062f movi v15.2s, #0x91 + 4e48: 0f04064f movi v15.2s, #0x92 + 4e4c: 0f04066f movi v15.2s, #0x93 + 4e50: 0f04068f movi v15.2s, #0x94 + 4e54: 0f0406af movi v15.2s, #0x95 + 4e58: 0f0406cf movi v15.2s, #0x96 + 4e5c: 0f0406ef movi v15.2s, #0x97 + 4e60: 0f04070f movi v15.2s, #0x98 + 4e64: 0f04072f movi v15.2s, #0x99 + 4e68: 0f04074f movi v15.2s, #0x9a + 4e6c: 0f04076f movi v15.2s, #0x9b + 4e70: 0f04078f movi v15.2s, #0x9c + 4e74: 0f0407af movi v15.2s, #0x9d + 4e78: 0f0407cf movi v15.2s, #0x9e + 4e7c: 0f0407ef movi v15.2s, #0x9f + 4e80: 0f05040f movi v15.2s, #0xa0 + 4e84: 0f05042f movi v15.2s, #0xa1 + 4e88: 0f05044f movi v15.2s, #0xa2 + 4e8c: 0f05046f movi v15.2s, #0xa3 + 4e90: 0f05048f movi v15.2s, #0xa4 + 4e94: 0f0504af movi v15.2s, #0xa5 + 4e98: 0f0504cf movi v15.2s, #0xa6 + 4e9c: 0f0504ef movi v15.2s, #0xa7 + 4ea0: 0f05050f movi v15.2s, #0xa8 + 4ea4: 0f05052f movi v15.2s, #0xa9 + 4ea8: 0f05054f movi v15.2s, #0xaa + 4eac: 0f05056f movi v15.2s, #0xab + 4eb0: 0f05058f movi v15.2s, #0xac + 4eb4: 0f0505af movi v15.2s, #0xad + 4eb8: 0f0505cf movi v15.2s, #0xae + 4ebc: 0f0505ef movi v15.2s, #0xaf + 4ec0: 0f05060f movi v15.2s, #0xb0 + 4ec4: 0f05062f movi v15.2s, #0xb1 + 4ec8: 0f05064f movi v15.2s, #0xb2 + 4ecc: 0f05066f movi v15.2s, #0xb3 + 4ed0: 0f05068f movi v15.2s, #0xb4 + 4ed4: 0f0506af movi v15.2s, #0xb5 + 4ed8: 0f0506cf movi v15.2s, #0xb6 + 4edc: 0f0506ef movi v15.2s, #0xb7 + 4ee0: 0f05070f movi v15.2s, #0xb8 + 4ee4: 0f05072f movi v15.2s, #0xb9 + 4ee8: 0f05074f movi v15.2s, #0xba + 4eec: 0f05076f movi v15.2s, #0xbb + 4ef0: 0f05078f movi v15.2s, #0xbc + 4ef4: 0f0507af movi v15.2s, #0xbd + 4ef8: 0f0507cf movi v15.2s, #0xbe + 4efc: 0f0507ef movi v15.2s, #0xbf + 4f00: 0f06040f movi v15.2s, #0xc0 + 4f04: 0f06042f movi v15.2s, #0xc1 + 4f08: 0f06044f movi v15.2s, #0xc2 + 4f0c: 0f06046f movi v15.2s, #0xc3 + 4f10: 0f06048f movi v15.2s, #0xc4 + 4f14: 0f0604af movi v15.2s, #0xc5 + 4f18: 0f0604cf movi v15.2s, #0xc6 + 4f1c: 0f0604ef movi v15.2s, #0xc7 + 4f20: 0f06050f movi v15.2s, #0xc8 + 4f24: 0f06052f movi v15.2s, #0xc9 + 4f28: 0f06054f movi v15.2s, #0xca + 4f2c: 0f06056f movi v15.2s, #0xcb + 4f30: 0f06058f movi v15.2s, #0xcc + 4f34: 0f0605af movi v15.2s, #0xcd + 4f38: 0f0605cf movi v15.2s, #0xce + 4f3c: 0f0605ef movi v15.2s, #0xcf + 4f40: 0f06060f movi v15.2s, #0xd0 + 4f44: 0f06062f movi v15.2s, #0xd1 + 4f48: 0f06064f movi v15.2s, #0xd2 + 4f4c: 0f06066f movi v15.2s, #0xd3 + 4f50: 0f06068f movi v15.2s, #0xd4 + 4f54: 0f0606af movi v15.2s, #0xd5 + 4f58: 0f0606cf movi v15.2s, #0xd6 + 4f5c: 0f0606ef movi v15.2s, #0xd7 + 4f60: 0f06070f movi v15.2s, #0xd8 + 4f64: 0f06072f movi v15.2s, #0xd9 + 4f68: 0f06074f movi v15.2s, #0xda + 4f6c: 0f06076f movi v15.2s, #0xdb + 4f70: 0f06078f movi v15.2s, #0xdc + 4f74: 0f0607af movi v15.2s, #0xdd + 4f78: 0f0607cf movi v15.2s, #0xde + 4f7c: 0f0607ef movi v15.2s, #0xdf + 4f80: 0f07040f movi v15.2s, #0xe0 + 4f84: 0f07042f movi v15.2s, #0xe1 + 4f88: 0f07044f movi v15.2s, #0xe2 + 4f8c: 0f07046f movi v15.2s, #0xe3 + 4f90: 0f07048f movi v15.2s, #0xe4 + 4f94: 0f0704af movi v15.2s, #0xe5 + 4f98: 0f0704cf movi v15.2s, #0xe6 + 4f9c: 0f0704ef movi v15.2s, #0xe7 + 4fa0: 0f07050f movi v15.2s, #0xe8 + 4fa4: 0f07052f movi v15.2s, #0xe9 + 4fa8: 0f07054f movi v15.2s, #0xea + 4fac: 0f07056f movi v15.2s, #0xeb + 4fb0: 0f07058f movi v15.2s, #0xec + 4fb4: 0f0705af movi v15.2s, #0xed + 4fb8: 0f0705cf movi v15.2s, #0xee + 4fbc: 0f0705ef movi v15.2s, #0xef + 4fc0: 0f07060f movi v15.2s, #0xf0 + 4fc4: 0f07062f movi v15.2s, #0xf1 + 4fc8: 0f07064f movi v15.2s, #0xf2 + 4fcc: 0f07066f movi v15.2s, #0xf3 + 4fd0: 0f07068f movi v15.2s, #0xf4 + 4fd4: 0f0706af movi v15.2s, #0xf5 + 4fd8: 0f0706cf movi v15.2s, #0xf6 + 4fdc: 0f0706ef movi v15.2s, #0xf7 + 4fe0: 0f07070f movi v15.2s, #0xf8 + 4fe4: 0f07072f movi v15.2s, #0xf9 + 4fe8: 0f07074f movi v15.2s, #0xfa + 4fec: 0f07076f movi v15.2s, #0xfb + 4ff0: 0f07078f movi v15.2s, #0xfc + 4ff4: 0f0707af movi v15.2s, #0xfd + 4ff8: 0f0707cf movi v15.2s, #0xfe + 4ffc: 0f0707ef movi v15.2s, #0xff + 5000: 0f004407 movi v7.2s, #0x0, lsl #16 + 5004: 0f004427 movi v7.2s, #0x1, lsl #16 + 5008: 0f004447 movi v7.2s, #0x2, lsl #16 + 500c: 0f004467 movi v7.2s, #0x3, lsl #16 + 5010: 0f004487 movi v7.2s, #0x4, lsl #16 + 5014: 0f0044a7 movi v7.2s, #0x5, lsl #16 + 5018: 0f0044c7 movi v7.2s, #0x6, lsl #16 + 501c: 0f0044e7 movi v7.2s, #0x7, lsl #16 + 5020: 0f004507 movi v7.2s, #0x8, lsl #16 + 5024: 0f004527 movi v7.2s, #0x9, lsl #16 + 5028: 0f004547 movi v7.2s, #0xa, lsl #16 + 502c: 0f004567 movi v7.2s, #0xb, lsl #16 + 5030: 0f004587 movi v7.2s, #0xc, lsl #16 + 5034: 0f0045a7 movi v7.2s, #0xd, lsl #16 + 5038: 0f0045c7 movi v7.2s, #0xe, lsl #16 + 503c: 0f0045e7 movi v7.2s, #0xf, lsl #16 + 5040: 0f004607 movi v7.2s, #0x10, lsl #16 + 5044: 0f004627 movi v7.2s, #0x11, lsl #16 + 5048: 0f004647 movi v7.2s, #0x12, lsl #16 + 504c: 0f004667 movi v7.2s, #0x13, lsl #16 + 5050: 0f004687 movi v7.2s, #0x14, lsl #16 + 5054: 0f0046a7 movi v7.2s, #0x15, lsl #16 + 5058: 0f0046c7 movi v7.2s, #0x16, lsl #16 + 505c: 0f0046e7 movi v7.2s, #0x17, lsl #16 + 5060: 0f004707 movi v7.2s, #0x18, lsl #16 + 5064: 0f004727 movi v7.2s, #0x19, lsl #16 + 5068: 0f004747 movi v7.2s, #0x1a, lsl #16 + 506c: 0f004767 movi v7.2s, #0x1b, lsl #16 + 5070: 0f004787 movi v7.2s, #0x1c, lsl #16 + 5074: 0f0047a7 movi v7.2s, #0x1d, lsl #16 + 5078: 0f0047c7 movi v7.2s, #0x1e, lsl #16 + 507c: 0f0047e7 movi v7.2s, #0x1f, lsl #16 + 5080: 0f014407 movi v7.2s, #0x20, lsl #16 + 5084: 0f014427 movi v7.2s, #0x21, lsl #16 + 5088: 0f014447 movi v7.2s, #0x22, lsl #16 + 508c: 0f014467 movi v7.2s, #0x23, lsl #16 + 5090: 0f014487 movi v7.2s, #0x24, lsl #16 + 5094: 0f0144a7 movi v7.2s, #0x25, lsl #16 + 5098: 0f0144c7 movi v7.2s, #0x26, lsl #16 + 509c: 0f0144e7 movi v7.2s, #0x27, lsl #16 + 50a0: 0f014507 movi v7.2s, #0x28, lsl #16 + 50a4: 0f014527 movi v7.2s, #0x29, lsl #16 + 50a8: 0f014547 movi v7.2s, #0x2a, lsl #16 + 50ac: 0f014567 movi v7.2s, #0x2b, lsl #16 + 50b0: 0f014587 movi v7.2s, #0x2c, lsl #16 + 50b4: 0f0145a7 movi v7.2s, #0x2d, lsl #16 + 50b8: 0f0145c7 movi v7.2s, #0x2e, lsl #16 + 50bc: 0f0145e7 movi v7.2s, #0x2f, lsl #16 + 50c0: 0f014607 movi v7.2s, #0x30, lsl #16 + 50c4: 0f014627 movi v7.2s, #0x31, lsl #16 + 50c8: 0f014647 movi v7.2s, #0x32, lsl #16 + 50cc: 0f014667 movi v7.2s, #0x33, lsl #16 + 50d0: 0f014687 movi v7.2s, #0x34, lsl #16 + 50d4: 0f0146a7 movi v7.2s, #0x35, lsl #16 + 50d8: 0f0146c7 movi v7.2s, #0x36, lsl #16 + 50dc: 0f0146e7 movi v7.2s, #0x37, lsl #16 + 50e0: 0f014707 movi v7.2s, #0x38, lsl #16 + 50e4: 0f014727 movi v7.2s, #0x39, lsl #16 + 50e8: 0f014747 movi v7.2s, #0x3a, lsl #16 + 50ec: 0f014767 movi v7.2s, #0x3b, lsl #16 + 50f0: 0f014787 movi v7.2s, #0x3c, lsl #16 + 50f4: 0f0147a7 movi v7.2s, #0x3d, lsl #16 + 50f8: 0f0147c7 movi v7.2s, #0x3e, lsl #16 + 50fc: 0f0147e7 movi v7.2s, #0x3f, lsl #16 + 5100: 0f024407 movi v7.2s, #0x40, lsl #16 + 5104: 0f024427 movi v7.2s, #0x41, lsl #16 + 5108: 0f024447 movi v7.2s, #0x42, lsl #16 + 510c: 0f024467 movi v7.2s, #0x43, lsl #16 + 5110: 0f024487 movi v7.2s, #0x44, lsl #16 + 5114: 0f0244a7 movi v7.2s, #0x45, lsl #16 + 5118: 0f0244c7 movi v7.2s, #0x46, lsl #16 + 511c: 0f0244e7 movi v7.2s, #0x47, lsl #16 + 5120: 0f024507 movi v7.2s, #0x48, lsl #16 + 5124: 0f024527 movi v7.2s, #0x49, lsl #16 + 5128: 0f024547 movi v7.2s, #0x4a, lsl #16 + 512c: 0f024567 movi v7.2s, #0x4b, lsl #16 + 5130: 0f024587 movi v7.2s, #0x4c, lsl #16 + 5134: 0f0245a7 movi v7.2s, #0x4d, lsl #16 + 5138: 0f0245c7 movi v7.2s, #0x4e, lsl #16 + 513c: 0f0245e7 movi v7.2s, #0x4f, lsl #16 + 5140: 0f024607 movi v7.2s, #0x50, lsl #16 + 5144: 0f024627 movi v7.2s, #0x51, lsl #16 + 5148: 0f024647 movi v7.2s, #0x52, lsl #16 + 514c: 0f024667 movi v7.2s, #0x53, lsl #16 + 5150: 0f024687 movi v7.2s, #0x54, lsl #16 + 5154: 0f0246a7 movi v7.2s, #0x55, lsl #16 + 5158: 0f0246c7 movi v7.2s, #0x56, lsl #16 + 515c: 0f0246e7 movi v7.2s, #0x57, lsl #16 + 5160: 0f024707 movi v7.2s, #0x58, lsl #16 + 5164: 0f024727 movi v7.2s, #0x59, lsl #16 + 5168: 0f024747 movi v7.2s, #0x5a, lsl #16 + 516c: 0f024767 movi v7.2s, #0x5b, lsl #16 + 5170: 0f024787 movi v7.2s, #0x5c, lsl #16 + 5174: 0f0247a7 movi v7.2s, #0x5d, lsl #16 + 5178: 0f0247c7 movi v7.2s, #0x5e, lsl #16 + 517c: 0f0247e7 movi v7.2s, #0x5f, lsl #16 + 5180: 0f034407 movi v7.2s, #0x60, lsl #16 + 5184: 0f034427 movi v7.2s, #0x61, lsl #16 + 5188: 0f034447 movi v7.2s, #0x62, lsl #16 + 518c: 0f034467 movi v7.2s, #0x63, lsl #16 + 5190: 0f034487 movi v7.2s, #0x64, lsl #16 + 5194: 0f0344a7 movi v7.2s, #0x65, lsl #16 + 5198: 0f0344c7 movi v7.2s, #0x66, lsl #16 + 519c: 0f0344e7 movi v7.2s, #0x67, lsl #16 + 51a0: 0f034507 movi v7.2s, #0x68, lsl #16 + 51a4: 0f034527 movi v7.2s, #0x69, lsl #16 + 51a8: 0f034547 movi v7.2s, #0x6a, lsl #16 + 51ac: 0f034567 movi v7.2s, #0x6b, lsl #16 + 51b0: 0f034587 movi v7.2s, #0x6c, lsl #16 + 51b4: 0f0345a7 movi v7.2s, #0x6d, lsl #16 + 51b8: 0f0345c7 movi v7.2s, #0x6e, lsl #16 + 51bc: 0f0345e7 movi v7.2s, #0x6f, lsl #16 + 51c0: 0f034607 movi v7.2s, #0x70, lsl #16 + 51c4: 0f034627 movi v7.2s, #0x71, lsl #16 + 51c8: 0f034647 movi v7.2s, #0x72, lsl #16 + 51cc: 0f034667 movi v7.2s, #0x73, lsl #16 + 51d0: 0f034687 movi v7.2s, #0x74, lsl #16 + 51d4: 0f0346a7 movi v7.2s, #0x75, lsl #16 + 51d8: 0f0346c7 movi v7.2s, #0x76, lsl #16 + 51dc: 0f0346e7 movi v7.2s, #0x77, lsl #16 + 51e0: 0f034707 movi v7.2s, #0x78, lsl #16 + 51e4: 0f034727 movi v7.2s, #0x79, lsl #16 + 51e8: 0f034747 movi v7.2s, #0x7a, lsl #16 + 51ec: 0f034767 movi v7.2s, #0x7b, lsl #16 + 51f0: 0f034787 movi v7.2s, #0x7c, lsl #16 + 51f4: 0f0347a7 movi v7.2s, #0x7d, lsl #16 + 51f8: 0f0347c7 movi v7.2s, #0x7e, lsl #16 + 51fc: 0f0347e7 movi v7.2s, #0x7f, lsl #16 + 5200: 0f044407 movi v7.2s, #0x80, lsl #16 + 5204: 0f044427 movi v7.2s, #0x81, lsl #16 + 5208: 0f044447 movi v7.2s, #0x82, lsl #16 + 520c: 0f044467 movi v7.2s, #0x83, lsl #16 + 5210: 0f044487 movi v7.2s, #0x84, lsl #16 + 5214: 0f0444a7 movi v7.2s, #0x85, lsl #16 + 5218: 0f0444c7 movi v7.2s, #0x86, lsl #16 + 521c: 0f0444e7 movi v7.2s, #0x87, lsl #16 + 5220: 0f044507 movi v7.2s, #0x88, lsl #16 + 5224: 0f044527 movi v7.2s, #0x89, lsl #16 + 5228: 0f044547 movi v7.2s, #0x8a, lsl #16 + 522c: 0f044567 movi v7.2s, #0x8b, lsl #16 + 5230: 0f044587 movi v7.2s, #0x8c, lsl #16 + 5234: 0f0445a7 movi v7.2s, #0x8d, lsl #16 + 5238: 0f0445c7 movi v7.2s, #0x8e, lsl #16 + 523c: 0f0445e7 movi v7.2s, #0x8f, lsl #16 + 5240: 0f044607 movi v7.2s, #0x90, lsl #16 + 5244: 0f044627 movi v7.2s, #0x91, lsl #16 + 5248: 0f044647 movi v7.2s, #0x92, lsl #16 + 524c: 0f044667 movi v7.2s, #0x93, lsl #16 + 5250: 0f044687 movi v7.2s, #0x94, lsl #16 + 5254: 0f0446a7 movi v7.2s, #0x95, lsl #16 + 5258: 0f0446c7 movi v7.2s, #0x96, lsl #16 + 525c: 0f0446e7 movi v7.2s, #0x97, lsl #16 + 5260: 0f044707 movi v7.2s, #0x98, lsl #16 + 5264: 0f044727 movi v7.2s, #0x99, lsl #16 + 5268: 0f044747 movi v7.2s, #0x9a, lsl #16 + 526c: 0f044767 movi v7.2s, #0x9b, lsl #16 + 5270: 0f044787 movi v7.2s, #0x9c, lsl #16 + 5274: 0f0447a7 movi v7.2s, #0x9d, lsl #16 + 5278: 0f0447c7 movi v7.2s, #0x9e, lsl #16 + 527c: 0f0447e7 movi v7.2s, #0x9f, lsl #16 + 5280: 0f054407 movi v7.2s, #0xa0, lsl #16 + 5284: 0f054427 movi v7.2s, #0xa1, lsl #16 + 5288: 0f054447 movi v7.2s, #0xa2, lsl #16 + 528c: 0f054467 movi v7.2s, #0xa3, lsl #16 + 5290: 0f054487 movi v7.2s, #0xa4, lsl #16 + 5294: 0f0544a7 movi v7.2s, #0xa5, lsl #16 + 5298: 0f0544c7 movi v7.2s, #0xa6, lsl #16 + 529c: 0f0544e7 movi v7.2s, #0xa7, lsl #16 + 52a0: 0f054507 movi v7.2s, #0xa8, lsl #16 + 52a4: 0f054527 movi v7.2s, #0xa9, lsl #16 + 52a8: 0f054547 movi v7.2s, #0xaa, lsl #16 + 52ac: 0f054567 movi v7.2s, #0xab, lsl #16 + 52b0: 0f054587 movi v7.2s, #0xac, lsl #16 + 52b4: 0f0545a7 movi v7.2s, #0xad, lsl #16 + 52b8: 0f0545c7 movi v7.2s, #0xae, lsl #16 + 52bc: 0f0545e7 movi v7.2s, #0xaf, lsl #16 + 52c0: 0f054607 movi v7.2s, #0xb0, lsl #16 + 52c4: 0f054627 movi v7.2s, #0xb1, lsl #16 + 52c8: 0f054647 movi v7.2s, #0xb2, lsl #16 + 52cc: 0f054667 movi v7.2s, #0xb3, lsl #16 + 52d0: 0f054687 movi v7.2s, #0xb4, lsl #16 + 52d4: 0f0546a7 movi v7.2s, #0xb5, lsl #16 + 52d8: 0f0546c7 movi v7.2s, #0xb6, lsl #16 + 52dc: 0f0546e7 movi v7.2s, #0xb7, lsl #16 + 52e0: 0f054707 movi v7.2s, #0xb8, lsl #16 + 52e4: 0f054727 movi v7.2s, #0xb9, lsl #16 + 52e8: 0f054747 movi v7.2s, #0xba, lsl #16 + 52ec: 0f054767 movi v7.2s, #0xbb, lsl #16 + 52f0: 0f054787 movi v7.2s, #0xbc, lsl #16 + 52f4: 0f0547a7 movi v7.2s, #0xbd, lsl #16 + 52f8: 0f0547c7 movi v7.2s, #0xbe, lsl #16 + 52fc: 0f0547e7 movi v7.2s, #0xbf, lsl #16 + 5300: 0f064407 movi v7.2s, #0xc0, lsl #16 + 5304: 0f064427 movi v7.2s, #0xc1, lsl #16 + 5308: 0f064447 movi v7.2s, #0xc2, lsl #16 + 530c: 0f064467 movi v7.2s, #0xc3, lsl #16 + 5310: 0f064487 movi v7.2s, #0xc4, lsl #16 + 5314: 0f0644a7 movi v7.2s, #0xc5, lsl #16 + 5318: 0f0644c7 movi v7.2s, #0xc6, lsl #16 + 531c: 0f0644e7 movi v7.2s, #0xc7, lsl #16 + 5320: 0f064507 movi v7.2s, #0xc8, lsl #16 + 5324: 0f064527 movi v7.2s, #0xc9, lsl #16 + 5328: 0f064547 movi v7.2s, #0xca, lsl #16 + 532c: 0f064567 movi v7.2s, #0xcb, lsl #16 + 5330: 0f064587 movi v7.2s, #0xcc, lsl #16 + 5334: 0f0645a7 movi v7.2s, #0xcd, lsl #16 + 5338: 0f0645c7 movi v7.2s, #0xce, lsl #16 + 533c: 0f0645e7 movi v7.2s, #0xcf, lsl #16 + 5340: 0f064607 movi v7.2s, #0xd0, lsl #16 + 5344: 0f064627 movi v7.2s, #0xd1, lsl #16 + 5348: 0f064647 movi v7.2s, #0xd2, lsl #16 + 534c: 0f064667 movi v7.2s, #0xd3, lsl #16 + 5350: 0f064687 movi v7.2s, #0xd4, lsl #16 + 5354: 0f0646a7 movi v7.2s, #0xd5, lsl #16 + 5358: 0f0646c7 movi v7.2s, #0xd6, lsl #16 + 535c: 0f0646e7 movi v7.2s, #0xd7, lsl #16 + 5360: 0f064707 movi v7.2s, #0xd8, lsl #16 + 5364: 0f064727 movi v7.2s, #0xd9, lsl #16 + 5368: 0f064747 movi v7.2s, #0xda, lsl #16 + 536c: 0f064767 movi v7.2s, #0xdb, lsl #16 + 5370: 0f064787 movi v7.2s, #0xdc, lsl #16 + 5374: 0f0647a7 movi v7.2s, #0xdd, lsl #16 + 5378: 0f0647c7 movi v7.2s, #0xde, lsl #16 + 537c: 0f0647e7 movi v7.2s, #0xdf, lsl #16 + 5380: 0f074407 movi v7.2s, #0xe0, lsl #16 + 5384: 0f074427 movi v7.2s, #0xe1, lsl #16 + 5388: 0f074447 movi v7.2s, #0xe2, lsl #16 + 538c: 0f074467 movi v7.2s, #0xe3, lsl #16 + 5390: 0f074487 movi v7.2s, #0xe4, lsl #16 + 5394: 0f0744a7 movi v7.2s, #0xe5, lsl #16 + 5398: 0f0744c7 movi v7.2s, #0xe6, lsl #16 + 539c: 0f0744e7 movi v7.2s, #0xe7, lsl #16 + 53a0: 0f074507 movi v7.2s, #0xe8, lsl #16 + 53a4: 0f074527 movi v7.2s, #0xe9, lsl #16 + 53a8: 0f074547 movi v7.2s, #0xea, lsl #16 + 53ac: 0f074567 movi v7.2s, #0xeb, lsl #16 + 53b0: 0f074587 movi v7.2s, #0xec, lsl #16 + 53b4: 0f0745a7 movi v7.2s, #0xed, lsl #16 + 53b8: 0f0745c7 movi v7.2s, #0xee, lsl #16 + 53bc: 0f0745e7 movi v7.2s, #0xef, lsl #16 + 53c0: 0f074607 movi v7.2s, #0xf0, lsl #16 + 53c4: 0f074627 movi v7.2s, #0xf1, lsl #16 + 53c8: 0f074647 movi v7.2s, #0xf2, lsl #16 + 53cc: 0f074667 movi v7.2s, #0xf3, lsl #16 + 53d0: 0f074687 movi v7.2s, #0xf4, lsl #16 + 53d4: 0f0746a7 movi v7.2s, #0xf5, lsl #16 + 53d8: 0f0746c7 movi v7.2s, #0xf6, lsl #16 + 53dc: 0f0746e7 movi v7.2s, #0xf7, lsl #16 + 53e0: 0f074707 movi v7.2s, #0xf8, lsl #16 + 53e4: 0f074727 movi v7.2s, #0xf9, lsl #16 + 53e8: 0f074747 movi v7.2s, #0xfa, lsl #16 + 53ec: 0f074767 movi v7.2s, #0xfb, lsl #16 + 53f0: 0f074787 movi v7.2s, #0xfc, lsl #16 + 53f4: 0f0747a7 movi v7.2s, #0xfd, lsl #16 + 53f8: 0f0747c7 movi v7.2s, #0xfe, lsl #16 + 53fc: 0f0747e7 movi v7.2s, #0xff, lsl #16 + 5400: 0f00040f movi v15.2s, #0x0 + 5404: 0f00042f movi v15.2s, #0x1 + 5408: 0f00044f movi v15.2s, #0x2 + 540c: 0f00046f movi v15.2s, #0x3 + 5410: 0f00048f movi v15.2s, #0x4 + 5414: 0f0004af movi v15.2s, #0x5 + 5418: 0f0004cf movi v15.2s, #0x6 + 541c: 0f0004ef movi v15.2s, #0x7 + 5420: 0f00050f movi v15.2s, #0x8 + 5424: 0f00052f movi v15.2s, #0x9 + 5428: 0f00054f movi v15.2s, #0xa + 542c: 0f00056f movi v15.2s, #0xb + 5430: 0f00058f movi v15.2s, #0xc + 5434: 0f0005af movi v15.2s, #0xd + 5438: 0f0005cf movi v15.2s, #0xe + 543c: 0f0005ef movi v15.2s, #0xf + 5440: 0f00060f movi v15.2s, #0x10 + 5444: 0f00062f movi v15.2s, #0x11 + 5448: 0f00064f movi v15.2s, #0x12 + 544c: 0f00066f movi v15.2s, #0x13 + 5450: 0f00068f movi v15.2s, #0x14 + 5454: 0f0006af movi v15.2s, #0x15 + 5458: 0f0006cf movi v15.2s, #0x16 + 545c: 0f0006ef movi v15.2s, #0x17 + 5460: 0f00070f movi v15.2s, #0x18 + 5464: 0f00072f movi v15.2s, #0x19 + 5468: 0f00074f movi v15.2s, #0x1a + 546c: 0f00076f movi v15.2s, #0x1b + 5470: 0f00078f movi v15.2s, #0x1c + 5474: 0f0007af movi v15.2s, #0x1d + 5478: 0f0007cf movi v15.2s, #0x1e + 547c: 0f0007ef movi v15.2s, #0x1f + 5480: 0f01040f movi v15.2s, #0x20 + 5484: 0f01042f movi v15.2s, #0x21 + 5488: 0f01044f movi v15.2s, #0x22 + 548c: 0f01046f movi v15.2s, #0x23 + 5490: 0f01048f movi v15.2s, #0x24 + 5494: 0f0104af movi v15.2s, #0x25 + 5498: 0f0104cf movi v15.2s, #0x26 + 549c: 0f0104ef movi v15.2s, #0x27 + 54a0: 0f01050f movi v15.2s, #0x28 + 54a4: 0f01052f movi v15.2s, #0x29 + 54a8: 0f01054f movi v15.2s, #0x2a + 54ac: 0f01056f movi v15.2s, #0x2b + 54b0: 0f01058f movi v15.2s, #0x2c + 54b4: 0f0105af movi v15.2s, #0x2d + 54b8: 0f0105cf movi v15.2s, #0x2e + 54bc: 0f0105ef movi v15.2s, #0x2f + 54c0: 0f01060f movi v15.2s, #0x30 + 54c4: 0f01062f movi v15.2s, #0x31 + 54c8: 0f01064f movi v15.2s, #0x32 + 54cc: 0f01066f movi v15.2s, #0x33 + 54d0: 0f01068f movi v15.2s, #0x34 + 54d4: 0f0106af movi v15.2s, #0x35 + 54d8: 0f0106cf movi v15.2s, #0x36 + 54dc: 0f0106ef movi v15.2s, #0x37 + 54e0: 0f01070f movi v15.2s, #0x38 + 54e4: 0f01072f movi v15.2s, #0x39 + 54e8: 0f01074f movi v15.2s, #0x3a + 54ec: 0f01076f movi v15.2s, #0x3b + 54f0: 0f01078f movi v15.2s, #0x3c + 54f4: 0f0107af movi v15.2s, #0x3d + 54f8: 0f0107cf movi v15.2s, #0x3e + 54fc: 0f0107ef movi v15.2s, #0x3f + 5500: 0f02040f movi v15.2s, #0x40 + 5504: 0f02042f movi v15.2s, #0x41 + 5508: 0f02044f movi v15.2s, #0x42 + 550c: 0f02046f movi v15.2s, #0x43 + 5510: 0f02048f movi v15.2s, #0x44 + 5514: 0f0204af movi v15.2s, #0x45 + 5518: 0f0204cf movi v15.2s, #0x46 + 551c: 0f0204ef movi v15.2s, #0x47 + 5520: 0f02050f movi v15.2s, #0x48 + 5524: 0f02052f movi v15.2s, #0x49 + 5528: 0f02054f movi v15.2s, #0x4a + 552c: 0f02056f movi v15.2s, #0x4b + 5530: 0f02058f movi v15.2s, #0x4c + 5534: 0f0205af movi v15.2s, #0x4d + 5538: 0f0205cf movi v15.2s, #0x4e + 553c: 0f0205ef movi v15.2s, #0x4f + 5540: 0f02060f movi v15.2s, #0x50 + 5544: 0f02062f movi v15.2s, #0x51 + 5548: 0f02064f movi v15.2s, #0x52 + 554c: 0f02066f movi v15.2s, #0x53 + 5550: 0f02068f movi v15.2s, #0x54 + 5554: 0f0206af movi v15.2s, #0x55 + 5558: 0f0206cf movi v15.2s, #0x56 + 555c: 0f0206ef movi v15.2s, #0x57 + 5560: 0f02070f movi v15.2s, #0x58 + 5564: 0f02072f movi v15.2s, #0x59 + 5568: 0f02074f movi v15.2s, #0x5a + 556c: 0f02076f movi v15.2s, #0x5b + 5570: 0f02078f movi v15.2s, #0x5c + 5574: 0f0207af movi v15.2s, #0x5d + 5578: 0f0207cf movi v15.2s, #0x5e + 557c: 0f0207ef movi v15.2s, #0x5f + 5580: 0f03040f movi v15.2s, #0x60 + 5584: 0f03042f movi v15.2s, #0x61 + 5588: 0f03044f movi v15.2s, #0x62 + 558c: 0f03046f movi v15.2s, #0x63 + 5590: 0f03048f movi v15.2s, #0x64 + 5594: 0f0304af movi v15.2s, #0x65 + 5598: 0f0304cf movi v15.2s, #0x66 + 559c: 0f0304ef movi v15.2s, #0x67 + 55a0: 0f03050f movi v15.2s, #0x68 + 55a4: 0f03052f movi v15.2s, #0x69 + 55a8: 0f03054f movi v15.2s, #0x6a + 55ac: 0f03056f movi v15.2s, #0x6b + 55b0: 0f03058f movi v15.2s, #0x6c + 55b4: 0f0305af movi v15.2s, #0x6d + 55b8: 0f0305cf movi v15.2s, #0x6e + 55bc: 0f0305ef movi v15.2s, #0x6f + 55c0: 0f03060f movi v15.2s, #0x70 + 55c4: 0f03062f movi v15.2s, #0x71 + 55c8: 0f03064f movi v15.2s, #0x72 + 55cc: 0f03066f movi v15.2s, #0x73 + 55d0: 0f03068f movi v15.2s, #0x74 + 55d4: 0f0306af movi v15.2s, #0x75 + 55d8: 0f0306cf movi v15.2s, #0x76 + 55dc: 0f0306ef movi v15.2s, #0x77 + 55e0: 0f03070f movi v15.2s, #0x78 + 55e4: 0f03072f movi v15.2s, #0x79 + 55e8: 0f03074f movi v15.2s, #0x7a + 55ec: 0f03076f movi v15.2s, #0x7b + 55f0: 0f03078f movi v15.2s, #0x7c + 55f4: 0f0307af movi v15.2s, #0x7d + 55f8: 0f0307cf movi v15.2s, #0x7e + 55fc: 0f0307ef movi v15.2s, #0x7f + 5600: 0f04040f movi v15.2s, #0x80 + 5604: 0f04042f movi v15.2s, #0x81 + 5608: 0f04044f movi v15.2s, #0x82 + 560c: 0f04046f movi v15.2s, #0x83 + 5610: 0f04048f movi v15.2s, #0x84 + 5614: 0f0404af movi v15.2s, #0x85 + 5618: 0f0404cf movi v15.2s, #0x86 + 561c: 0f0404ef movi v15.2s, #0x87 + 5620: 0f04050f movi v15.2s, #0x88 + 5624: 0f04052f movi v15.2s, #0x89 + 5628: 0f04054f movi v15.2s, #0x8a + 562c: 0f04056f movi v15.2s, #0x8b + 5630: 0f04058f movi v15.2s, #0x8c + 5634: 0f0405af movi v15.2s, #0x8d + 5638: 0f0405cf movi v15.2s, #0x8e + 563c: 0f0405ef movi v15.2s, #0x8f + 5640: 0f04060f movi v15.2s, #0x90 + 5644: 0f04062f movi v15.2s, #0x91 + 5648: 0f04064f movi v15.2s, #0x92 + 564c: 0f04066f movi v15.2s, #0x93 + 5650: 0f04068f movi v15.2s, #0x94 + 5654: 0f0406af movi v15.2s, #0x95 + 5658: 0f0406cf movi v15.2s, #0x96 + 565c: 0f0406ef movi v15.2s, #0x97 + 5660: 0f04070f movi v15.2s, #0x98 + 5664: 0f04072f movi v15.2s, #0x99 + 5668: 0f04074f movi v15.2s, #0x9a + 566c: 0f04076f movi v15.2s, #0x9b + 5670: 0f04078f movi v15.2s, #0x9c + 5674: 0f0407af movi v15.2s, #0x9d + 5678: 0f0407cf movi v15.2s, #0x9e + 567c: 0f0407ef movi v15.2s, #0x9f + 5680: 0f05040f movi v15.2s, #0xa0 + 5684: 0f05042f movi v15.2s, #0xa1 + 5688: 0f05044f movi v15.2s, #0xa2 + 568c: 0f05046f movi v15.2s, #0xa3 + 5690: 0f05048f movi v15.2s, #0xa4 + 5694: 0f0504af movi v15.2s, #0xa5 + 5698: 0f0504cf movi v15.2s, #0xa6 + 569c: 0f0504ef movi v15.2s, #0xa7 + 56a0: 0f05050f movi v15.2s, #0xa8 + 56a4: 0f05052f movi v15.2s, #0xa9 + 56a8: 0f05054f movi v15.2s, #0xaa + 56ac: 0f05056f movi v15.2s, #0xab + 56b0: 0f05058f movi v15.2s, #0xac + 56b4: 0f0505af movi v15.2s, #0xad + 56b8: 0f0505cf movi v15.2s, #0xae + 56bc: 0f0505ef movi v15.2s, #0xaf + 56c0: 0f05060f movi v15.2s, #0xb0 + 56c4: 0f05062f movi v15.2s, #0xb1 + 56c8: 0f05064f movi v15.2s, #0xb2 + 56cc: 0f05066f movi v15.2s, #0xb3 + 56d0: 0f05068f movi v15.2s, #0xb4 + 56d4: 0f0506af movi v15.2s, #0xb5 + 56d8: 0f0506cf movi v15.2s, #0xb6 + 56dc: 0f0506ef movi v15.2s, #0xb7 + 56e0: 0f05070f movi v15.2s, #0xb8 + 56e4: 0f05072f movi v15.2s, #0xb9 + 56e8: 0f05074f movi v15.2s, #0xba + 56ec: 0f05076f movi v15.2s, #0xbb + 56f0: 0f05078f movi v15.2s, #0xbc + 56f4: 0f0507af movi v15.2s, #0xbd + 56f8: 0f0507cf movi v15.2s, #0xbe + 56fc: 0f0507ef movi v15.2s, #0xbf + 5700: 0f06040f movi v15.2s, #0xc0 + 5704: 0f06042f movi v15.2s, #0xc1 + 5708: 0f06044f movi v15.2s, #0xc2 + 570c: 0f06046f movi v15.2s, #0xc3 + 5710: 0f06048f movi v15.2s, #0xc4 + 5714: 0f0604af movi v15.2s, #0xc5 + 5718: 0f0604cf movi v15.2s, #0xc6 + 571c: 0f0604ef movi v15.2s, #0xc7 + 5720: 0f06050f movi v15.2s, #0xc8 + 5724: 0f06052f movi v15.2s, #0xc9 + 5728: 0f06054f movi v15.2s, #0xca + 572c: 0f06056f movi v15.2s, #0xcb + 5730: 0f06058f movi v15.2s, #0xcc + 5734: 0f0605af movi v15.2s, #0xcd + 5738: 0f0605cf movi v15.2s, #0xce + 573c: 0f0605ef movi v15.2s, #0xcf + 5740: 0f06060f movi v15.2s, #0xd0 + 5744: 0f06062f movi v15.2s, #0xd1 + 5748: 0f06064f movi v15.2s, #0xd2 + 574c: 0f06066f movi v15.2s, #0xd3 + 5750: 0f06068f movi v15.2s, #0xd4 + 5754: 0f0606af movi v15.2s, #0xd5 + 5758: 0f0606cf movi v15.2s, #0xd6 + 575c: 0f0606ef movi v15.2s, #0xd7 + 5760: 0f06070f movi v15.2s, #0xd8 + 5764: 0f06072f movi v15.2s, #0xd9 + 5768: 0f06074f movi v15.2s, #0xda + 576c: 0f06076f movi v15.2s, #0xdb + 5770: 0f06078f movi v15.2s, #0xdc + 5774: 0f0607af movi v15.2s, #0xdd + 5778: 0f0607cf movi v15.2s, #0xde + 577c: 0f0607ef movi v15.2s, #0xdf + 5780: 0f07040f movi v15.2s, #0xe0 + 5784: 0f07042f movi v15.2s, #0xe1 + 5788: 0f07044f movi v15.2s, #0xe2 + 578c: 0f07046f movi v15.2s, #0xe3 + 5790: 0f07048f movi v15.2s, #0xe4 + 5794: 0f0704af movi v15.2s, #0xe5 + 5798: 0f0704cf movi v15.2s, #0xe6 + 579c: 0f0704ef movi v15.2s, #0xe7 + 57a0: 0f07050f movi v15.2s, #0xe8 + 57a4: 0f07052f movi v15.2s, #0xe9 + 57a8: 0f07054f movi v15.2s, #0xea + 57ac: 0f07056f movi v15.2s, #0xeb + 57b0: 0f07058f movi v15.2s, #0xec + 57b4: 0f0705af movi v15.2s, #0xed + 57b8: 0f0705cf movi v15.2s, #0xee + 57bc: 0f0705ef movi v15.2s, #0xef + 57c0: 0f07060f movi v15.2s, #0xf0 + 57c4: 0f07062f movi v15.2s, #0xf1 + 57c8: 0f07064f movi v15.2s, #0xf2 + 57cc: 0f07066f movi v15.2s, #0xf3 + 57d0: 0f07068f movi v15.2s, #0xf4 + 57d4: 0f0706af movi v15.2s, #0xf5 + 57d8: 0f0706cf movi v15.2s, #0xf6 + 57dc: 0f0706ef movi v15.2s, #0xf7 + 57e0: 0f07070f movi v15.2s, #0xf8 + 57e4: 0f07072f movi v15.2s, #0xf9 + 57e8: 0f07074f movi v15.2s, #0xfa + 57ec: 0f07076f movi v15.2s, #0xfb + 57f0: 0f07078f movi v15.2s, #0xfc + 57f4: 0f0707af movi v15.2s, #0xfd + 57f8: 0f0707cf movi v15.2s, #0xfe + 57fc: 0f0707ef movi v15.2s, #0xff + 5800: 0f006407 movi v7.2s, #0x0, lsl #24 + 5804: 0f006427 movi v7.2s, #0x1, lsl #24 + 5808: 0f006447 movi v7.2s, #0x2, lsl #24 + 580c: 0f006467 movi v7.2s, #0x3, lsl #24 + 5810: 0f006487 movi v7.2s, #0x4, lsl #24 + 5814: 0f0064a7 movi v7.2s, #0x5, lsl #24 + 5818: 0f0064c7 movi v7.2s, #0x6, lsl #24 + 581c: 0f0064e7 movi v7.2s, #0x7, lsl #24 + 5820: 0f006507 movi v7.2s, #0x8, lsl #24 + 5824: 0f006527 movi v7.2s, #0x9, lsl #24 + 5828: 0f006547 movi v7.2s, #0xa, lsl #24 + 582c: 0f006567 movi v7.2s, #0xb, lsl #24 + 5830: 0f006587 movi v7.2s, #0xc, lsl #24 + 5834: 0f0065a7 movi v7.2s, #0xd, lsl #24 + 5838: 0f0065c7 movi v7.2s, #0xe, lsl #24 + 583c: 0f0065e7 movi v7.2s, #0xf, lsl #24 + 5840: 0f006607 movi v7.2s, #0x10, lsl #24 + 5844: 0f006627 movi v7.2s, #0x11, lsl #24 + 5848: 0f006647 movi v7.2s, #0x12, lsl #24 + 584c: 0f006667 movi v7.2s, #0x13, lsl #24 + 5850: 0f006687 movi v7.2s, #0x14, lsl #24 + 5854: 0f0066a7 movi v7.2s, #0x15, lsl #24 + 5858: 0f0066c7 movi v7.2s, #0x16, lsl #24 + 585c: 0f0066e7 movi v7.2s, #0x17, lsl #24 + 5860: 0f006707 movi v7.2s, #0x18, lsl #24 + 5864: 0f006727 movi v7.2s, #0x19, lsl #24 + 5868: 0f006747 movi v7.2s, #0x1a, lsl #24 + 586c: 0f006767 movi v7.2s, #0x1b, lsl #24 + 5870: 0f006787 movi v7.2s, #0x1c, lsl #24 + 5874: 0f0067a7 movi v7.2s, #0x1d, lsl #24 + 5878: 0f0067c7 movi v7.2s, #0x1e, lsl #24 + 587c: 0f0067e7 movi v7.2s, #0x1f, lsl #24 + 5880: 0f016407 movi v7.2s, #0x20, lsl #24 + 5884: 0f016427 movi v7.2s, #0x21, lsl #24 + 5888: 0f016447 movi v7.2s, #0x22, lsl #24 + 588c: 0f016467 movi v7.2s, #0x23, lsl #24 + 5890: 0f016487 movi v7.2s, #0x24, lsl #24 + 5894: 0f0164a7 movi v7.2s, #0x25, lsl #24 + 5898: 0f0164c7 movi v7.2s, #0x26, lsl #24 + 589c: 0f0164e7 movi v7.2s, #0x27, lsl #24 + 58a0: 0f016507 movi v7.2s, #0x28, lsl #24 + 58a4: 0f016527 movi v7.2s, #0x29, lsl #24 + 58a8: 0f016547 movi v7.2s, #0x2a, lsl #24 + 58ac: 0f016567 movi v7.2s, #0x2b, lsl #24 + 58b0: 0f016587 movi v7.2s, #0x2c, lsl #24 + 58b4: 0f0165a7 movi v7.2s, #0x2d, lsl #24 + 58b8: 0f0165c7 movi v7.2s, #0x2e, lsl #24 + 58bc: 0f0165e7 movi v7.2s, #0x2f, lsl #24 + 58c0: 0f016607 movi v7.2s, #0x30, lsl #24 + 58c4: 0f016627 movi v7.2s, #0x31, lsl #24 + 58c8: 0f016647 movi v7.2s, #0x32, lsl #24 + 58cc: 0f016667 movi v7.2s, #0x33, lsl #24 + 58d0: 0f016687 movi v7.2s, #0x34, lsl #24 + 58d4: 0f0166a7 movi v7.2s, #0x35, lsl #24 + 58d8: 0f0166c7 movi v7.2s, #0x36, lsl #24 + 58dc: 0f0166e7 movi v7.2s, #0x37, lsl #24 + 58e0: 0f016707 movi v7.2s, #0x38, lsl #24 + 58e4: 0f016727 movi v7.2s, #0x39, lsl #24 + 58e8: 0f016747 movi v7.2s, #0x3a, lsl #24 + 58ec: 0f016767 movi v7.2s, #0x3b, lsl #24 + 58f0: 0f016787 movi v7.2s, #0x3c, lsl #24 + 58f4: 0f0167a7 movi v7.2s, #0x3d, lsl #24 + 58f8: 0f0167c7 movi v7.2s, #0x3e, lsl #24 + 58fc: 0f0167e7 movi v7.2s, #0x3f, lsl #24 + 5900: 0f026407 movi v7.2s, #0x40, lsl #24 + 5904: 0f026427 movi v7.2s, #0x41, lsl #24 + 5908: 0f026447 movi v7.2s, #0x42, lsl #24 + 590c: 0f026467 movi v7.2s, #0x43, lsl #24 + 5910: 0f026487 movi v7.2s, #0x44, lsl #24 + 5914: 0f0264a7 movi v7.2s, #0x45, lsl #24 + 5918: 0f0264c7 movi v7.2s, #0x46, lsl #24 + 591c: 0f0264e7 movi v7.2s, #0x47, lsl #24 + 5920: 0f026507 movi v7.2s, #0x48, lsl #24 + 5924: 0f026527 movi v7.2s, #0x49, lsl #24 + 5928: 0f026547 movi v7.2s, #0x4a, lsl #24 + 592c: 0f026567 movi v7.2s, #0x4b, lsl #24 + 5930: 0f026587 movi v7.2s, #0x4c, lsl #24 + 5934: 0f0265a7 movi v7.2s, #0x4d, lsl #24 + 5938: 0f0265c7 movi v7.2s, #0x4e, lsl #24 + 593c: 0f0265e7 movi v7.2s, #0x4f, lsl #24 + 5940: 0f026607 movi v7.2s, #0x50, lsl #24 + 5944: 0f026627 movi v7.2s, #0x51, lsl #24 + 5948: 0f026647 movi v7.2s, #0x52, lsl #24 + 594c: 0f026667 movi v7.2s, #0x53, lsl #24 + 5950: 0f026687 movi v7.2s, #0x54, lsl #24 + 5954: 0f0266a7 movi v7.2s, #0x55, lsl #24 + 5958: 0f0266c7 movi v7.2s, #0x56, lsl #24 + 595c: 0f0266e7 movi v7.2s, #0x57, lsl #24 + 5960: 0f026707 movi v7.2s, #0x58, lsl #24 + 5964: 0f026727 movi v7.2s, #0x59, lsl #24 + 5968: 0f026747 movi v7.2s, #0x5a, lsl #24 + 596c: 0f026767 movi v7.2s, #0x5b, lsl #24 + 5970: 0f026787 movi v7.2s, #0x5c, lsl #24 + 5974: 0f0267a7 movi v7.2s, #0x5d, lsl #24 + 5978: 0f0267c7 movi v7.2s, #0x5e, lsl #24 + 597c: 0f0267e7 movi v7.2s, #0x5f, lsl #24 + 5980: 0f036407 movi v7.2s, #0x60, lsl #24 + 5984: 0f036427 movi v7.2s, #0x61, lsl #24 + 5988: 0f036447 movi v7.2s, #0x62, lsl #24 + 598c: 0f036467 movi v7.2s, #0x63, lsl #24 + 5990: 0f036487 movi v7.2s, #0x64, lsl #24 + 5994: 0f0364a7 movi v7.2s, #0x65, lsl #24 + 5998: 0f0364c7 movi v7.2s, #0x66, lsl #24 + 599c: 0f0364e7 movi v7.2s, #0x67, lsl #24 + 59a0: 0f036507 movi v7.2s, #0x68, lsl #24 + 59a4: 0f036527 movi v7.2s, #0x69, lsl #24 + 59a8: 0f036547 movi v7.2s, #0x6a, lsl #24 + 59ac: 0f036567 movi v7.2s, #0x6b, lsl #24 + 59b0: 0f036587 movi v7.2s, #0x6c, lsl #24 + 59b4: 0f0365a7 movi v7.2s, #0x6d, lsl #24 + 59b8: 0f0365c7 movi v7.2s, #0x6e, lsl #24 + 59bc: 0f0365e7 movi v7.2s, #0x6f, lsl #24 + 59c0: 0f036607 movi v7.2s, #0x70, lsl #24 + 59c4: 0f036627 movi v7.2s, #0x71, lsl #24 + 59c8: 0f036647 movi v7.2s, #0x72, lsl #24 + 59cc: 0f036667 movi v7.2s, #0x73, lsl #24 + 59d0: 0f036687 movi v7.2s, #0x74, lsl #24 + 59d4: 0f0366a7 movi v7.2s, #0x75, lsl #24 + 59d8: 0f0366c7 movi v7.2s, #0x76, lsl #24 + 59dc: 0f0366e7 movi v7.2s, #0x77, lsl #24 + 59e0: 0f036707 movi v7.2s, #0x78, lsl #24 + 59e4: 0f036727 movi v7.2s, #0x79, lsl #24 + 59e8: 0f036747 movi v7.2s, #0x7a, lsl #24 + 59ec: 0f036767 movi v7.2s, #0x7b, lsl #24 + 59f0: 0f036787 movi v7.2s, #0x7c, lsl #24 + 59f4: 0f0367a7 movi v7.2s, #0x7d, lsl #24 + 59f8: 0f0367c7 movi v7.2s, #0x7e, lsl #24 + 59fc: 0f0367e7 movi v7.2s, #0x7f, lsl #24 + 5a00: 0f046407 movi v7.2s, #0x80, lsl #24 + 5a04: 0f046427 movi v7.2s, #0x81, lsl #24 + 5a08: 0f046447 movi v7.2s, #0x82, lsl #24 + 5a0c: 0f046467 movi v7.2s, #0x83, lsl #24 + 5a10: 0f046487 movi v7.2s, #0x84, lsl #24 + 5a14: 0f0464a7 movi v7.2s, #0x85, lsl #24 + 5a18: 0f0464c7 movi v7.2s, #0x86, lsl #24 + 5a1c: 0f0464e7 movi v7.2s, #0x87, lsl #24 + 5a20: 0f046507 movi v7.2s, #0x88, lsl #24 + 5a24: 0f046527 movi v7.2s, #0x89, lsl #24 + 5a28: 0f046547 movi v7.2s, #0x8a, lsl #24 + 5a2c: 0f046567 movi v7.2s, #0x8b, lsl #24 + 5a30: 0f046587 movi v7.2s, #0x8c, lsl #24 + 5a34: 0f0465a7 movi v7.2s, #0x8d, lsl #24 + 5a38: 0f0465c7 movi v7.2s, #0x8e, lsl #24 + 5a3c: 0f0465e7 movi v7.2s, #0x8f, lsl #24 + 5a40: 0f046607 movi v7.2s, #0x90, lsl #24 + 5a44: 0f046627 movi v7.2s, #0x91, lsl #24 + 5a48: 0f046647 movi v7.2s, #0x92, lsl #24 + 5a4c: 0f046667 movi v7.2s, #0x93, lsl #24 + 5a50: 0f046687 movi v7.2s, #0x94, lsl #24 + 5a54: 0f0466a7 movi v7.2s, #0x95, lsl #24 + 5a58: 0f0466c7 movi v7.2s, #0x96, lsl #24 + 5a5c: 0f0466e7 movi v7.2s, #0x97, lsl #24 + 5a60: 0f046707 movi v7.2s, #0x98, lsl #24 + 5a64: 0f046727 movi v7.2s, #0x99, lsl #24 + 5a68: 0f046747 movi v7.2s, #0x9a, lsl #24 + 5a6c: 0f046767 movi v7.2s, #0x9b, lsl #24 + 5a70: 0f046787 movi v7.2s, #0x9c, lsl #24 + 5a74: 0f0467a7 movi v7.2s, #0x9d, lsl #24 + 5a78: 0f0467c7 movi v7.2s, #0x9e, lsl #24 + 5a7c: 0f0467e7 movi v7.2s, #0x9f, lsl #24 + 5a80: 0f056407 movi v7.2s, #0xa0, lsl #24 + 5a84: 0f056427 movi v7.2s, #0xa1, lsl #24 + 5a88: 0f056447 movi v7.2s, #0xa2, lsl #24 + 5a8c: 0f056467 movi v7.2s, #0xa3, lsl #24 + 5a90: 0f056487 movi v7.2s, #0xa4, lsl #24 + 5a94: 0f0564a7 movi v7.2s, #0xa5, lsl #24 + 5a98: 0f0564c7 movi v7.2s, #0xa6, lsl #24 + 5a9c: 0f0564e7 movi v7.2s, #0xa7, lsl #24 + 5aa0: 0f056507 movi v7.2s, #0xa8, lsl #24 + 5aa4: 0f056527 movi v7.2s, #0xa9, lsl #24 + 5aa8: 0f056547 movi v7.2s, #0xaa, lsl #24 + 5aac: 0f056567 movi v7.2s, #0xab, lsl #24 + 5ab0: 0f056587 movi v7.2s, #0xac, lsl #24 + 5ab4: 0f0565a7 movi v7.2s, #0xad, lsl #24 + 5ab8: 0f0565c7 movi v7.2s, #0xae, lsl #24 + 5abc: 0f0565e7 movi v7.2s, #0xaf, lsl #24 + 5ac0: 0f056607 movi v7.2s, #0xb0, lsl #24 + 5ac4: 0f056627 movi v7.2s, #0xb1, lsl #24 + 5ac8: 0f056647 movi v7.2s, #0xb2, lsl #24 + 5acc: 0f056667 movi v7.2s, #0xb3, lsl #24 + 5ad0: 0f056687 movi v7.2s, #0xb4, lsl #24 + 5ad4: 0f0566a7 movi v7.2s, #0xb5, lsl #24 + 5ad8: 0f0566c7 movi v7.2s, #0xb6, lsl #24 + 5adc: 0f0566e7 movi v7.2s, #0xb7, lsl #24 + 5ae0: 0f056707 movi v7.2s, #0xb8, lsl #24 + 5ae4: 0f056727 movi v7.2s, #0xb9, lsl #24 + 5ae8: 0f056747 movi v7.2s, #0xba, lsl #24 + 5aec: 0f056767 movi v7.2s, #0xbb, lsl #24 + 5af0: 0f056787 movi v7.2s, #0xbc, lsl #24 + 5af4: 0f0567a7 movi v7.2s, #0xbd, lsl #24 + 5af8: 0f0567c7 movi v7.2s, #0xbe, lsl #24 + 5afc: 0f0567e7 movi v7.2s, #0xbf, lsl #24 + 5b00: 0f066407 movi v7.2s, #0xc0, lsl #24 + 5b04: 0f066427 movi v7.2s, #0xc1, lsl #24 + 5b08: 0f066447 movi v7.2s, #0xc2, lsl #24 + 5b0c: 0f066467 movi v7.2s, #0xc3, lsl #24 + 5b10: 0f066487 movi v7.2s, #0xc4, lsl #24 + 5b14: 0f0664a7 movi v7.2s, #0xc5, lsl #24 + 5b18: 0f0664c7 movi v7.2s, #0xc6, lsl #24 + 5b1c: 0f0664e7 movi v7.2s, #0xc7, lsl #24 + 5b20: 0f066507 movi v7.2s, #0xc8, lsl #24 + 5b24: 0f066527 movi v7.2s, #0xc9, lsl #24 + 5b28: 0f066547 movi v7.2s, #0xca, lsl #24 + 5b2c: 0f066567 movi v7.2s, #0xcb, lsl #24 + 5b30: 0f066587 movi v7.2s, #0xcc, lsl #24 + 5b34: 0f0665a7 movi v7.2s, #0xcd, lsl #24 + 5b38: 0f0665c7 movi v7.2s, #0xce, lsl #24 + 5b3c: 0f0665e7 movi v7.2s, #0xcf, lsl #24 + 5b40: 0f066607 movi v7.2s, #0xd0, lsl #24 + 5b44: 0f066627 movi v7.2s, #0xd1, lsl #24 + 5b48: 0f066647 movi v7.2s, #0xd2, lsl #24 + 5b4c: 0f066667 movi v7.2s, #0xd3, lsl #24 + 5b50: 0f066687 movi v7.2s, #0xd4, lsl #24 + 5b54: 0f0666a7 movi v7.2s, #0xd5, lsl #24 + 5b58: 0f0666c7 movi v7.2s, #0xd6, lsl #24 + 5b5c: 0f0666e7 movi v7.2s, #0xd7, lsl #24 + 5b60: 0f066707 movi v7.2s, #0xd8, lsl #24 + 5b64: 0f066727 movi v7.2s, #0xd9, lsl #24 + 5b68: 0f066747 movi v7.2s, #0xda, lsl #24 + 5b6c: 0f066767 movi v7.2s, #0xdb, lsl #24 + 5b70: 0f066787 movi v7.2s, #0xdc, lsl #24 + 5b74: 0f0667a7 movi v7.2s, #0xdd, lsl #24 + 5b78: 0f0667c7 movi v7.2s, #0xde, lsl #24 + 5b7c: 0f0667e7 movi v7.2s, #0xdf, lsl #24 + 5b80: 0f076407 movi v7.2s, #0xe0, lsl #24 + 5b84: 0f076427 movi v7.2s, #0xe1, lsl #24 + 5b88: 0f076447 movi v7.2s, #0xe2, lsl #24 + 5b8c: 0f076467 movi v7.2s, #0xe3, lsl #24 + 5b90: 0f076487 movi v7.2s, #0xe4, lsl #24 + 5b94: 0f0764a7 movi v7.2s, #0xe5, lsl #24 + 5b98: 0f0764c7 movi v7.2s, #0xe6, lsl #24 + 5b9c: 0f0764e7 movi v7.2s, #0xe7, lsl #24 + 5ba0: 0f076507 movi v7.2s, #0xe8, lsl #24 + 5ba4: 0f076527 movi v7.2s, #0xe9, lsl #24 + 5ba8: 0f076547 movi v7.2s, #0xea, lsl #24 + 5bac: 0f076567 movi v7.2s, #0xeb, lsl #24 + 5bb0: 0f076587 movi v7.2s, #0xec, lsl #24 + 5bb4: 0f0765a7 movi v7.2s, #0xed, lsl #24 + 5bb8: 0f0765c7 movi v7.2s, #0xee, lsl #24 + 5bbc: 0f0765e7 movi v7.2s, #0xef, lsl #24 + 5bc0: 0f076607 movi v7.2s, #0xf0, lsl #24 + 5bc4: 0f076627 movi v7.2s, #0xf1, lsl #24 + 5bc8: 0f076647 movi v7.2s, #0xf2, lsl #24 + 5bcc: 0f076667 movi v7.2s, #0xf3, lsl #24 + 5bd0: 0f076687 movi v7.2s, #0xf4, lsl #24 + 5bd4: 0f0766a7 movi v7.2s, #0xf5, lsl #24 + 5bd8: 0f0766c7 movi v7.2s, #0xf6, lsl #24 + 5bdc: 0f0766e7 movi v7.2s, #0xf7, lsl #24 + 5be0: 0f076707 movi v7.2s, #0xf8, lsl #24 + 5be4: 0f076727 movi v7.2s, #0xf9, lsl #24 + 5be8: 0f076747 movi v7.2s, #0xfa, lsl #24 + 5bec: 0f076767 movi v7.2s, #0xfb, lsl #24 + 5bf0: 0f076787 movi v7.2s, #0xfc, lsl #24 + 5bf4: 0f0767a7 movi v7.2s, #0xfd, lsl #24 + 5bf8: 0f0767c7 movi v7.2s, #0xfe, lsl #24 + 5bfc: 0f0767e7 movi v7.2s, #0xff, lsl #24 + 5c00: 0f00040f movi v15.2s, #0x0 + 5c04: 0f00042f movi v15.2s, #0x1 + 5c08: 0f00044f movi v15.2s, #0x2 + 5c0c: 0f00046f movi v15.2s, #0x3 + 5c10: 0f00048f movi v15.2s, #0x4 + 5c14: 0f0004af movi v15.2s, #0x5 + 5c18: 0f0004cf movi v15.2s, #0x6 + 5c1c: 0f0004ef movi v15.2s, #0x7 + 5c20: 0f00050f movi v15.2s, #0x8 + 5c24: 0f00052f movi v15.2s, #0x9 + 5c28: 0f00054f movi v15.2s, #0xa + 5c2c: 0f00056f movi v15.2s, #0xb + 5c30: 0f00058f movi v15.2s, #0xc + 5c34: 0f0005af movi v15.2s, #0xd + 5c38: 0f0005cf movi v15.2s, #0xe + 5c3c: 0f0005ef movi v15.2s, #0xf + 5c40: 0f00060f movi v15.2s, #0x10 + 5c44: 0f00062f movi v15.2s, #0x11 + 5c48: 0f00064f movi v15.2s, #0x12 + 5c4c: 0f00066f movi v15.2s, #0x13 + 5c50: 0f00068f movi v15.2s, #0x14 + 5c54: 0f0006af movi v15.2s, #0x15 + 5c58: 0f0006cf movi v15.2s, #0x16 + 5c5c: 0f0006ef movi v15.2s, #0x17 + 5c60: 0f00070f movi v15.2s, #0x18 + 5c64: 0f00072f movi v15.2s, #0x19 + 5c68: 0f00074f movi v15.2s, #0x1a + 5c6c: 0f00076f movi v15.2s, #0x1b + 5c70: 0f00078f movi v15.2s, #0x1c + 5c74: 0f0007af movi v15.2s, #0x1d + 5c78: 0f0007cf movi v15.2s, #0x1e + 5c7c: 0f0007ef movi v15.2s, #0x1f + 5c80: 0f01040f movi v15.2s, #0x20 + 5c84: 0f01042f movi v15.2s, #0x21 + 5c88: 0f01044f movi v15.2s, #0x22 + 5c8c: 0f01046f movi v15.2s, #0x23 + 5c90: 0f01048f movi v15.2s, #0x24 + 5c94: 0f0104af movi v15.2s, #0x25 + 5c98: 0f0104cf movi v15.2s, #0x26 + 5c9c: 0f0104ef movi v15.2s, #0x27 + 5ca0: 0f01050f movi v15.2s, #0x28 + 5ca4: 0f01052f movi v15.2s, #0x29 + 5ca8: 0f01054f movi v15.2s, #0x2a + 5cac: 0f01056f movi v15.2s, #0x2b + 5cb0: 0f01058f movi v15.2s, #0x2c + 5cb4: 0f0105af movi v15.2s, #0x2d + 5cb8: 0f0105cf movi v15.2s, #0x2e + 5cbc: 0f0105ef movi v15.2s, #0x2f + 5cc0: 0f01060f movi v15.2s, #0x30 + 5cc4: 0f01062f movi v15.2s, #0x31 + 5cc8: 0f01064f movi v15.2s, #0x32 + 5ccc: 0f01066f movi v15.2s, #0x33 + 5cd0: 0f01068f movi v15.2s, #0x34 + 5cd4: 0f0106af movi v15.2s, #0x35 + 5cd8: 0f0106cf movi v15.2s, #0x36 + 5cdc: 0f0106ef movi v15.2s, #0x37 + 5ce0: 0f01070f movi v15.2s, #0x38 + 5ce4: 0f01072f movi v15.2s, #0x39 + 5ce8: 0f01074f movi v15.2s, #0x3a + 5cec: 0f01076f movi v15.2s, #0x3b + 5cf0: 0f01078f movi v15.2s, #0x3c + 5cf4: 0f0107af movi v15.2s, #0x3d + 5cf8: 0f0107cf movi v15.2s, #0x3e + 5cfc: 0f0107ef movi v15.2s, #0x3f + 5d00: 0f02040f movi v15.2s, #0x40 + 5d04: 0f02042f movi v15.2s, #0x41 + 5d08: 0f02044f movi v15.2s, #0x42 + 5d0c: 0f02046f movi v15.2s, #0x43 + 5d10: 0f02048f movi v15.2s, #0x44 + 5d14: 0f0204af movi v15.2s, #0x45 + 5d18: 0f0204cf movi v15.2s, #0x46 + 5d1c: 0f0204ef movi v15.2s, #0x47 + 5d20: 0f02050f movi v15.2s, #0x48 + 5d24: 0f02052f movi v15.2s, #0x49 + 5d28: 0f02054f movi v15.2s, #0x4a + 5d2c: 0f02056f movi v15.2s, #0x4b + 5d30: 0f02058f movi v15.2s, #0x4c + 5d34: 0f0205af movi v15.2s, #0x4d + 5d38: 0f0205cf movi v15.2s, #0x4e + 5d3c: 0f0205ef movi v15.2s, #0x4f + 5d40: 0f02060f movi v15.2s, #0x50 + 5d44: 0f02062f movi v15.2s, #0x51 + 5d48: 0f02064f movi v15.2s, #0x52 + 5d4c: 0f02066f movi v15.2s, #0x53 + 5d50: 0f02068f movi v15.2s, #0x54 + 5d54: 0f0206af movi v15.2s, #0x55 + 5d58: 0f0206cf movi v15.2s, #0x56 + 5d5c: 0f0206ef movi v15.2s, #0x57 + 5d60: 0f02070f movi v15.2s, #0x58 + 5d64: 0f02072f movi v15.2s, #0x59 + 5d68: 0f02074f movi v15.2s, #0x5a + 5d6c: 0f02076f movi v15.2s, #0x5b + 5d70: 0f02078f movi v15.2s, #0x5c + 5d74: 0f0207af movi v15.2s, #0x5d + 5d78: 0f0207cf movi v15.2s, #0x5e + 5d7c: 0f0207ef movi v15.2s, #0x5f + 5d80: 0f03040f movi v15.2s, #0x60 + 5d84: 0f03042f movi v15.2s, #0x61 + 5d88: 0f03044f movi v15.2s, #0x62 + 5d8c: 0f03046f movi v15.2s, #0x63 + 5d90: 0f03048f movi v15.2s, #0x64 + 5d94: 0f0304af movi v15.2s, #0x65 + 5d98: 0f0304cf movi v15.2s, #0x66 + 5d9c: 0f0304ef movi v15.2s, #0x67 + 5da0: 0f03050f movi v15.2s, #0x68 + 5da4: 0f03052f movi v15.2s, #0x69 + 5da8: 0f03054f movi v15.2s, #0x6a + 5dac: 0f03056f movi v15.2s, #0x6b + 5db0: 0f03058f movi v15.2s, #0x6c + 5db4: 0f0305af movi v15.2s, #0x6d + 5db8: 0f0305cf movi v15.2s, #0x6e + 5dbc: 0f0305ef movi v15.2s, #0x6f + 5dc0: 0f03060f movi v15.2s, #0x70 + 5dc4: 0f03062f movi v15.2s, #0x71 + 5dc8: 0f03064f movi v15.2s, #0x72 + 5dcc: 0f03066f movi v15.2s, #0x73 + 5dd0: 0f03068f movi v15.2s, #0x74 + 5dd4: 0f0306af movi v15.2s, #0x75 + 5dd8: 0f0306cf movi v15.2s, #0x76 + 5ddc: 0f0306ef movi v15.2s, #0x77 + 5de0: 0f03070f movi v15.2s, #0x78 + 5de4: 0f03072f movi v15.2s, #0x79 + 5de8: 0f03074f movi v15.2s, #0x7a + 5dec: 0f03076f movi v15.2s, #0x7b + 5df0: 0f03078f movi v15.2s, #0x7c + 5df4: 0f0307af movi v15.2s, #0x7d + 5df8: 0f0307cf movi v15.2s, #0x7e + 5dfc: 0f0307ef movi v15.2s, #0x7f + 5e00: 0f04040f movi v15.2s, #0x80 + 5e04: 0f04042f movi v15.2s, #0x81 + 5e08: 0f04044f movi v15.2s, #0x82 + 5e0c: 0f04046f movi v15.2s, #0x83 + 5e10: 0f04048f movi v15.2s, #0x84 + 5e14: 0f0404af movi v15.2s, #0x85 + 5e18: 0f0404cf movi v15.2s, #0x86 + 5e1c: 0f0404ef movi v15.2s, #0x87 + 5e20: 0f04050f movi v15.2s, #0x88 + 5e24: 0f04052f movi v15.2s, #0x89 + 5e28: 0f04054f movi v15.2s, #0x8a + 5e2c: 0f04056f movi v15.2s, #0x8b + 5e30: 0f04058f movi v15.2s, #0x8c + 5e34: 0f0405af movi v15.2s, #0x8d + 5e38: 0f0405cf movi v15.2s, #0x8e + 5e3c: 0f0405ef movi v15.2s, #0x8f + 5e40: 0f04060f movi v15.2s, #0x90 + 5e44: 0f04062f movi v15.2s, #0x91 + 5e48: 0f04064f movi v15.2s, #0x92 + 5e4c: 0f04066f movi v15.2s, #0x93 + 5e50: 0f04068f movi v15.2s, #0x94 + 5e54: 0f0406af movi v15.2s, #0x95 + 5e58: 0f0406cf movi v15.2s, #0x96 + 5e5c: 0f0406ef movi v15.2s, #0x97 + 5e60: 0f04070f movi v15.2s, #0x98 + 5e64: 0f04072f movi v15.2s, #0x99 + 5e68: 0f04074f movi v15.2s, #0x9a + 5e6c: 0f04076f movi v15.2s, #0x9b + 5e70: 0f04078f movi v15.2s, #0x9c + 5e74: 0f0407af movi v15.2s, #0x9d + 5e78: 0f0407cf movi v15.2s, #0x9e + 5e7c: 0f0407ef movi v15.2s, #0x9f + 5e80: 0f05040f movi v15.2s, #0xa0 + 5e84: 0f05042f movi v15.2s, #0xa1 + 5e88: 0f05044f movi v15.2s, #0xa2 + 5e8c: 0f05046f movi v15.2s, #0xa3 + 5e90: 0f05048f movi v15.2s, #0xa4 + 5e94: 0f0504af movi v15.2s, #0xa5 + 5e98: 0f0504cf movi v15.2s, #0xa6 + 5e9c: 0f0504ef movi v15.2s, #0xa7 + 5ea0: 0f05050f movi v15.2s, #0xa8 + 5ea4: 0f05052f movi v15.2s, #0xa9 + 5ea8: 0f05054f movi v15.2s, #0xaa + 5eac: 0f05056f movi v15.2s, #0xab + 5eb0: 0f05058f movi v15.2s, #0xac + 5eb4: 0f0505af movi v15.2s, #0xad + 5eb8: 0f0505cf movi v15.2s, #0xae + 5ebc: 0f0505ef movi v15.2s, #0xaf + 5ec0: 0f05060f movi v15.2s, #0xb0 + 5ec4: 0f05062f movi v15.2s, #0xb1 + 5ec8: 0f05064f movi v15.2s, #0xb2 + 5ecc: 0f05066f movi v15.2s, #0xb3 + 5ed0: 0f05068f movi v15.2s, #0xb4 + 5ed4: 0f0506af movi v15.2s, #0xb5 + 5ed8: 0f0506cf movi v15.2s, #0xb6 + 5edc: 0f0506ef movi v15.2s, #0xb7 + 5ee0: 0f05070f movi v15.2s, #0xb8 + 5ee4: 0f05072f movi v15.2s, #0xb9 + 5ee8: 0f05074f movi v15.2s, #0xba + 5eec: 0f05076f movi v15.2s, #0xbb + 5ef0: 0f05078f movi v15.2s, #0xbc + 5ef4: 0f0507af movi v15.2s, #0xbd + 5ef8: 0f0507cf movi v15.2s, #0xbe + 5efc: 0f0507ef movi v15.2s, #0xbf + 5f00: 0f06040f movi v15.2s, #0xc0 + 5f04: 0f06042f movi v15.2s, #0xc1 + 5f08: 0f06044f movi v15.2s, #0xc2 + 5f0c: 0f06046f movi v15.2s, #0xc3 + 5f10: 0f06048f movi v15.2s, #0xc4 + 5f14: 0f0604af movi v15.2s, #0xc5 + 5f18: 0f0604cf movi v15.2s, #0xc6 + 5f1c: 0f0604ef movi v15.2s, #0xc7 + 5f20: 0f06050f movi v15.2s, #0xc8 + 5f24: 0f06052f movi v15.2s, #0xc9 + 5f28: 0f06054f movi v15.2s, #0xca + 5f2c: 0f06056f movi v15.2s, #0xcb + 5f30: 0f06058f movi v15.2s, #0xcc + 5f34: 0f0605af movi v15.2s, #0xcd + 5f38: 0f0605cf movi v15.2s, #0xce + 5f3c: 0f0605ef movi v15.2s, #0xcf + 5f40: 0f06060f movi v15.2s, #0xd0 + 5f44: 0f06062f movi v15.2s, #0xd1 + 5f48: 0f06064f movi v15.2s, #0xd2 + 5f4c: 0f06066f movi v15.2s, #0xd3 + 5f50: 0f06068f movi v15.2s, #0xd4 + 5f54: 0f0606af movi v15.2s, #0xd5 + 5f58: 0f0606cf movi v15.2s, #0xd6 + 5f5c: 0f0606ef movi v15.2s, #0xd7 + 5f60: 0f06070f movi v15.2s, #0xd8 + 5f64: 0f06072f movi v15.2s, #0xd9 + 5f68: 0f06074f movi v15.2s, #0xda + 5f6c: 0f06076f movi v15.2s, #0xdb + 5f70: 0f06078f movi v15.2s, #0xdc + 5f74: 0f0607af movi v15.2s, #0xdd + 5f78: 0f0607cf movi v15.2s, #0xde + 5f7c: 0f0607ef movi v15.2s, #0xdf + 5f80: 0f07040f movi v15.2s, #0xe0 + 5f84: 0f07042f movi v15.2s, #0xe1 + 5f88: 0f07044f movi v15.2s, #0xe2 + 5f8c: 0f07046f movi v15.2s, #0xe3 + 5f90: 0f07048f movi v15.2s, #0xe4 + 5f94: 0f0704af movi v15.2s, #0xe5 + 5f98: 0f0704cf movi v15.2s, #0xe6 + 5f9c: 0f0704ef movi v15.2s, #0xe7 + 5fa0: 0f07050f movi v15.2s, #0xe8 + 5fa4: 0f07052f movi v15.2s, #0xe9 + 5fa8: 0f07054f movi v15.2s, #0xea + 5fac: 0f07056f movi v15.2s, #0xeb + 5fb0: 0f07058f movi v15.2s, #0xec + 5fb4: 0f0705af movi v15.2s, #0xed + 5fb8: 0f0705cf movi v15.2s, #0xee + 5fbc: 0f0705ef movi v15.2s, #0xef + 5fc0: 0f07060f movi v15.2s, #0xf0 + 5fc4: 0f07062f movi v15.2s, #0xf1 + 5fc8: 0f07064f movi v15.2s, #0xf2 + 5fcc: 0f07066f movi v15.2s, #0xf3 + 5fd0: 0f07068f movi v15.2s, #0xf4 + 5fd4: 0f0706af movi v15.2s, #0xf5 + 5fd8: 0f0706cf movi v15.2s, #0xf6 + 5fdc: 0f0706ef movi v15.2s, #0xf7 + 5fe0: 0f07070f movi v15.2s, #0xf8 + 5fe4: 0f07072f movi v15.2s, #0xf9 + 5fe8: 0f07074f movi v15.2s, #0xfa + 5fec: 0f07076f movi v15.2s, #0xfb + 5ff0: 0f07078f movi v15.2s, #0xfc + 5ff4: 0f0707af movi v15.2s, #0xfd + 5ff8: 0f0707cf movi v15.2s, #0xfe + 5ffc: 0f0707ef movi v15.2s, #0xff + 6000: 4f000407 movi v7.4s, #0x0 + 6004: 4f000427 movi v7.4s, #0x1 + 6008: 4f000447 movi v7.4s, #0x2 + 600c: 4f000467 movi v7.4s, #0x3 + 6010: 4f000487 movi v7.4s, #0x4 + 6014: 4f0004a7 movi v7.4s, #0x5 + 6018: 4f0004c7 movi v7.4s, #0x6 + 601c: 4f0004e7 movi v7.4s, #0x7 + 6020: 4f000507 movi v7.4s, #0x8 + 6024: 4f000527 movi v7.4s, #0x9 + 6028: 4f000547 movi v7.4s, #0xa + 602c: 4f000567 movi v7.4s, #0xb + 6030: 4f000587 movi v7.4s, #0xc + 6034: 4f0005a7 movi v7.4s, #0xd + 6038: 4f0005c7 movi v7.4s, #0xe + 603c: 4f0005e7 movi v7.4s, #0xf + 6040: 4f000607 movi v7.4s, #0x10 + 6044: 4f000627 movi v7.4s, #0x11 + 6048: 4f000647 movi v7.4s, #0x12 + 604c: 4f000667 movi v7.4s, #0x13 + 6050: 4f000687 movi v7.4s, #0x14 + 6054: 4f0006a7 movi v7.4s, #0x15 + 6058: 4f0006c7 movi v7.4s, #0x16 + 605c: 4f0006e7 movi v7.4s, #0x17 + 6060: 4f000707 movi v7.4s, #0x18 + 6064: 4f000727 movi v7.4s, #0x19 + 6068: 4f000747 movi v7.4s, #0x1a + 606c: 4f000767 movi v7.4s, #0x1b + 6070: 4f000787 movi v7.4s, #0x1c + 6074: 4f0007a7 movi v7.4s, #0x1d + 6078: 4f0007c7 movi v7.4s, #0x1e + 607c: 4f0007e7 movi v7.4s, #0x1f + 6080: 4f010407 movi v7.4s, #0x20 + 6084: 4f010427 movi v7.4s, #0x21 + 6088: 4f010447 movi v7.4s, #0x22 + 608c: 4f010467 movi v7.4s, #0x23 + 6090: 4f010487 movi v7.4s, #0x24 + 6094: 4f0104a7 movi v7.4s, #0x25 + 6098: 4f0104c7 movi v7.4s, #0x26 + 609c: 4f0104e7 movi v7.4s, #0x27 + 60a0: 4f010507 movi v7.4s, #0x28 + 60a4: 4f010527 movi v7.4s, #0x29 + 60a8: 4f010547 movi v7.4s, #0x2a + 60ac: 4f010567 movi v7.4s, #0x2b + 60b0: 4f010587 movi v7.4s, #0x2c + 60b4: 4f0105a7 movi v7.4s, #0x2d + 60b8: 4f0105c7 movi v7.4s, #0x2e + 60bc: 4f0105e7 movi v7.4s, #0x2f + 60c0: 4f010607 movi v7.4s, #0x30 + 60c4: 4f010627 movi v7.4s, #0x31 + 60c8: 4f010647 movi v7.4s, #0x32 + 60cc: 4f010667 movi v7.4s, #0x33 + 60d0: 4f010687 movi v7.4s, #0x34 + 60d4: 4f0106a7 movi v7.4s, #0x35 + 60d8: 4f0106c7 movi v7.4s, #0x36 + 60dc: 4f0106e7 movi v7.4s, #0x37 + 60e0: 4f010707 movi v7.4s, #0x38 + 60e4: 4f010727 movi v7.4s, #0x39 + 60e8: 4f010747 movi v7.4s, #0x3a + 60ec: 4f010767 movi v7.4s, #0x3b + 60f0: 4f010787 movi v7.4s, #0x3c + 60f4: 4f0107a7 movi v7.4s, #0x3d + 60f8: 4f0107c7 movi v7.4s, #0x3e + 60fc: 4f0107e7 movi v7.4s, #0x3f + 6100: 4f020407 movi v7.4s, #0x40 + 6104: 4f020427 movi v7.4s, #0x41 + 6108: 4f020447 movi v7.4s, #0x42 + 610c: 4f020467 movi v7.4s, #0x43 + 6110: 4f020487 movi v7.4s, #0x44 + 6114: 4f0204a7 movi v7.4s, #0x45 + 6118: 4f0204c7 movi v7.4s, #0x46 + 611c: 4f0204e7 movi v7.4s, #0x47 + 6120: 4f020507 movi v7.4s, #0x48 + 6124: 4f020527 movi v7.4s, #0x49 + 6128: 4f020547 movi v7.4s, #0x4a + 612c: 4f020567 movi v7.4s, #0x4b + 6130: 4f020587 movi v7.4s, #0x4c + 6134: 4f0205a7 movi v7.4s, #0x4d + 6138: 4f0205c7 movi v7.4s, #0x4e + 613c: 4f0205e7 movi v7.4s, #0x4f + 6140: 4f020607 movi v7.4s, #0x50 + 6144: 4f020627 movi v7.4s, #0x51 + 6148: 4f020647 movi v7.4s, #0x52 + 614c: 4f020667 movi v7.4s, #0x53 + 6150: 4f020687 movi v7.4s, #0x54 + 6154: 4f0206a7 movi v7.4s, #0x55 + 6158: 4f0206c7 movi v7.4s, #0x56 + 615c: 4f0206e7 movi v7.4s, #0x57 + 6160: 4f020707 movi v7.4s, #0x58 + 6164: 4f020727 movi v7.4s, #0x59 + 6168: 4f020747 movi v7.4s, #0x5a + 616c: 4f020767 movi v7.4s, #0x5b + 6170: 4f020787 movi v7.4s, #0x5c + 6174: 4f0207a7 movi v7.4s, #0x5d + 6178: 4f0207c7 movi v7.4s, #0x5e + 617c: 4f0207e7 movi v7.4s, #0x5f + 6180: 4f030407 movi v7.4s, #0x60 + 6184: 4f030427 movi v7.4s, #0x61 + 6188: 4f030447 movi v7.4s, #0x62 + 618c: 4f030467 movi v7.4s, #0x63 + 6190: 4f030487 movi v7.4s, #0x64 + 6194: 4f0304a7 movi v7.4s, #0x65 + 6198: 4f0304c7 movi v7.4s, #0x66 + 619c: 4f0304e7 movi v7.4s, #0x67 + 61a0: 4f030507 movi v7.4s, #0x68 + 61a4: 4f030527 movi v7.4s, #0x69 + 61a8: 4f030547 movi v7.4s, #0x6a + 61ac: 4f030567 movi v7.4s, #0x6b + 61b0: 4f030587 movi v7.4s, #0x6c + 61b4: 4f0305a7 movi v7.4s, #0x6d + 61b8: 4f0305c7 movi v7.4s, #0x6e + 61bc: 4f0305e7 movi v7.4s, #0x6f + 61c0: 4f030607 movi v7.4s, #0x70 + 61c4: 4f030627 movi v7.4s, #0x71 + 61c8: 4f030647 movi v7.4s, #0x72 + 61cc: 4f030667 movi v7.4s, #0x73 + 61d0: 4f030687 movi v7.4s, #0x74 + 61d4: 4f0306a7 movi v7.4s, #0x75 + 61d8: 4f0306c7 movi v7.4s, #0x76 + 61dc: 4f0306e7 movi v7.4s, #0x77 + 61e0: 4f030707 movi v7.4s, #0x78 + 61e4: 4f030727 movi v7.4s, #0x79 + 61e8: 4f030747 movi v7.4s, #0x7a + 61ec: 4f030767 movi v7.4s, #0x7b + 61f0: 4f030787 movi v7.4s, #0x7c + 61f4: 4f0307a7 movi v7.4s, #0x7d + 61f8: 4f0307c7 movi v7.4s, #0x7e + 61fc: 4f0307e7 movi v7.4s, #0x7f + 6200: 4f040407 movi v7.4s, #0x80 + 6204: 4f040427 movi v7.4s, #0x81 + 6208: 4f040447 movi v7.4s, #0x82 + 620c: 4f040467 movi v7.4s, #0x83 + 6210: 4f040487 movi v7.4s, #0x84 + 6214: 4f0404a7 movi v7.4s, #0x85 + 6218: 4f0404c7 movi v7.4s, #0x86 + 621c: 4f0404e7 movi v7.4s, #0x87 + 6220: 4f040507 movi v7.4s, #0x88 + 6224: 4f040527 movi v7.4s, #0x89 + 6228: 4f040547 movi v7.4s, #0x8a + 622c: 4f040567 movi v7.4s, #0x8b + 6230: 4f040587 movi v7.4s, #0x8c + 6234: 4f0405a7 movi v7.4s, #0x8d + 6238: 4f0405c7 movi v7.4s, #0x8e + 623c: 4f0405e7 movi v7.4s, #0x8f + 6240: 4f040607 movi v7.4s, #0x90 + 6244: 4f040627 movi v7.4s, #0x91 + 6248: 4f040647 movi v7.4s, #0x92 + 624c: 4f040667 movi v7.4s, #0x93 + 6250: 4f040687 movi v7.4s, #0x94 + 6254: 4f0406a7 movi v7.4s, #0x95 + 6258: 4f0406c7 movi v7.4s, #0x96 + 625c: 4f0406e7 movi v7.4s, #0x97 + 6260: 4f040707 movi v7.4s, #0x98 + 6264: 4f040727 movi v7.4s, #0x99 + 6268: 4f040747 movi v7.4s, #0x9a + 626c: 4f040767 movi v7.4s, #0x9b + 6270: 4f040787 movi v7.4s, #0x9c + 6274: 4f0407a7 movi v7.4s, #0x9d + 6278: 4f0407c7 movi v7.4s, #0x9e + 627c: 4f0407e7 movi v7.4s, #0x9f + 6280: 4f050407 movi v7.4s, #0xa0 + 6284: 4f050427 movi v7.4s, #0xa1 + 6288: 4f050447 movi v7.4s, #0xa2 + 628c: 4f050467 movi v7.4s, #0xa3 + 6290: 4f050487 movi v7.4s, #0xa4 + 6294: 4f0504a7 movi v7.4s, #0xa5 + 6298: 4f0504c7 movi v7.4s, #0xa6 + 629c: 4f0504e7 movi v7.4s, #0xa7 + 62a0: 4f050507 movi v7.4s, #0xa8 + 62a4: 4f050527 movi v7.4s, #0xa9 + 62a8: 4f050547 movi v7.4s, #0xaa + 62ac: 4f050567 movi v7.4s, #0xab + 62b0: 4f050587 movi v7.4s, #0xac + 62b4: 4f0505a7 movi v7.4s, #0xad + 62b8: 4f0505c7 movi v7.4s, #0xae + 62bc: 4f0505e7 movi v7.4s, #0xaf + 62c0: 4f050607 movi v7.4s, #0xb0 + 62c4: 4f050627 movi v7.4s, #0xb1 + 62c8: 4f050647 movi v7.4s, #0xb2 + 62cc: 4f050667 movi v7.4s, #0xb3 + 62d0: 4f050687 movi v7.4s, #0xb4 + 62d4: 4f0506a7 movi v7.4s, #0xb5 + 62d8: 4f0506c7 movi v7.4s, #0xb6 + 62dc: 4f0506e7 movi v7.4s, #0xb7 + 62e0: 4f050707 movi v7.4s, #0xb8 + 62e4: 4f050727 movi v7.4s, #0xb9 + 62e8: 4f050747 movi v7.4s, #0xba + 62ec: 4f050767 movi v7.4s, #0xbb + 62f0: 4f050787 movi v7.4s, #0xbc + 62f4: 4f0507a7 movi v7.4s, #0xbd + 62f8: 4f0507c7 movi v7.4s, #0xbe + 62fc: 4f0507e7 movi v7.4s, #0xbf + 6300: 4f060407 movi v7.4s, #0xc0 + 6304: 4f060427 movi v7.4s, #0xc1 + 6308: 4f060447 movi v7.4s, #0xc2 + 630c: 4f060467 movi v7.4s, #0xc3 + 6310: 4f060487 movi v7.4s, #0xc4 + 6314: 4f0604a7 movi v7.4s, #0xc5 + 6318: 4f0604c7 movi v7.4s, #0xc6 + 631c: 4f0604e7 movi v7.4s, #0xc7 + 6320: 4f060507 movi v7.4s, #0xc8 + 6324: 4f060527 movi v7.4s, #0xc9 + 6328: 4f060547 movi v7.4s, #0xca + 632c: 4f060567 movi v7.4s, #0xcb + 6330: 4f060587 movi v7.4s, #0xcc + 6334: 4f0605a7 movi v7.4s, #0xcd + 6338: 4f0605c7 movi v7.4s, #0xce + 633c: 4f0605e7 movi v7.4s, #0xcf + 6340: 4f060607 movi v7.4s, #0xd0 + 6344: 4f060627 movi v7.4s, #0xd1 + 6348: 4f060647 movi v7.4s, #0xd2 + 634c: 4f060667 movi v7.4s, #0xd3 + 6350: 4f060687 movi v7.4s, #0xd4 + 6354: 4f0606a7 movi v7.4s, #0xd5 + 6358: 4f0606c7 movi v7.4s, #0xd6 + 635c: 4f0606e7 movi v7.4s, #0xd7 + 6360: 4f060707 movi v7.4s, #0xd8 + 6364: 4f060727 movi v7.4s, #0xd9 + 6368: 4f060747 movi v7.4s, #0xda + 636c: 4f060767 movi v7.4s, #0xdb + 6370: 4f060787 movi v7.4s, #0xdc + 6374: 4f0607a7 movi v7.4s, #0xdd + 6378: 4f0607c7 movi v7.4s, #0xde + 637c: 4f0607e7 movi v7.4s, #0xdf + 6380: 4f070407 movi v7.4s, #0xe0 + 6384: 4f070427 movi v7.4s, #0xe1 + 6388: 4f070447 movi v7.4s, #0xe2 + 638c: 4f070467 movi v7.4s, #0xe3 + 6390: 4f070487 movi v7.4s, #0xe4 + 6394: 4f0704a7 movi v7.4s, #0xe5 + 6398: 4f0704c7 movi v7.4s, #0xe6 + 639c: 4f0704e7 movi v7.4s, #0xe7 + 63a0: 4f070507 movi v7.4s, #0xe8 + 63a4: 4f070527 movi v7.4s, #0xe9 + 63a8: 4f070547 movi v7.4s, #0xea + 63ac: 4f070567 movi v7.4s, #0xeb + 63b0: 4f070587 movi v7.4s, #0xec + 63b4: 4f0705a7 movi v7.4s, #0xed + 63b8: 4f0705c7 movi v7.4s, #0xee + 63bc: 4f0705e7 movi v7.4s, #0xef + 63c0: 4f070607 movi v7.4s, #0xf0 + 63c4: 4f070627 movi v7.4s, #0xf1 + 63c8: 4f070647 movi v7.4s, #0xf2 + 63cc: 4f070667 movi v7.4s, #0xf3 + 63d0: 4f070687 movi v7.4s, #0xf4 + 63d4: 4f0706a7 movi v7.4s, #0xf5 + 63d8: 4f0706c7 movi v7.4s, #0xf6 + 63dc: 4f0706e7 movi v7.4s, #0xf7 + 63e0: 4f070707 movi v7.4s, #0xf8 + 63e4: 4f070727 movi v7.4s, #0xf9 + 63e8: 4f070747 movi v7.4s, #0xfa + 63ec: 4f070767 movi v7.4s, #0xfb + 63f0: 4f070787 movi v7.4s, #0xfc + 63f4: 4f0707a7 movi v7.4s, #0xfd + 63f8: 4f0707c7 movi v7.4s, #0xfe + 63fc: 4f0707e7 movi v7.4s, #0xff + 6400: 4f00040f movi v15.4s, #0x0 + 6404: 4f00042f movi v15.4s, #0x1 + 6408: 4f00044f movi v15.4s, #0x2 + 640c: 4f00046f movi v15.4s, #0x3 + 6410: 4f00048f movi v15.4s, #0x4 + 6414: 4f0004af movi v15.4s, #0x5 + 6418: 4f0004cf movi v15.4s, #0x6 + 641c: 4f0004ef movi v15.4s, #0x7 + 6420: 4f00050f movi v15.4s, #0x8 + 6424: 4f00052f movi v15.4s, #0x9 + 6428: 4f00054f movi v15.4s, #0xa + 642c: 4f00056f movi v15.4s, #0xb + 6430: 4f00058f movi v15.4s, #0xc + 6434: 4f0005af movi v15.4s, #0xd + 6438: 4f0005cf movi v15.4s, #0xe + 643c: 4f0005ef movi v15.4s, #0xf + 6440: 4f00060f movi v15.4s, #0x10 + 6444: 4f00062f movi v15.4s, #0x11 + 6448: 4f00064f movi v15.4s, #0x12 + 644c: 4f00066f movi v15.4s, #0x13 + 6450: 4f00068f movi v15.4s, #0x14 + 6454: 4f0006af movi v15.4s, #0x15 + 6458: 4f0006cf movi v15.4s, #0x16 + 645c: 4f0006ef movi v15.4s, #0x17 + 6460: 4f00070f movi v15.4s, #0x18 + 6464: 4f00072f movi v15.4s, #0x19 + 6468: 4f00074f movi v15.4s, #0x1a + 646c: 4f00076f movi v15.4s, #0x1b + 6470: 4f00078f movi v15.4s, #0x1c + 6474: 4f0007af movi v15.4s, #0x1d + 6478: 4f0007cf movi v15.4s, #0x1e + 647c: 4f0007ef movi v15.4s, #0x1f + 6480: 4f01040f movi v15.4s, #0x20 + 6484: 4f01042f movi v15.4s, #0x21 + 6488: 4f01044f movi v15.4s, #0x22 + 648c: 4f01046f movi v15.4s, #0x23 + 6490: 4f01048f movi v15.4s, #0x24 + 6494: 4f0104af movi v15.4s, #0x25 + 6498: 4f0104cf movi v15.4s, #0x26 + 649c: 4f0104ef movi v15.4s, #0x27 + 64a0: 4f01050f movi v15.4s, #0x28 + 64a4: 4f01052f movi v15.4s, #0x29 + 64a8: 4f01054f movi v15.4s, #0x2a + 64ac: 4f01056f movi v15.4s, #0x2b + 64b0: 4f01058f movi v15.4s, #0x2c + 64b4: 4f0105af movi v15.4s, #0x2d + 64b8: 4f0105cf movi v15.4s, #0x2e + 64bc: 4f0105ef movi v15.4s, #0x2f + 64c0: 4f01060f movi v15.4s, #0x30 + 64c4: 4f01062f movi v15.4s, #0x31 + 64c8: 4f01064f movi v15.4s, #0x32 + 64cc: 4f01066f movi v15.4s, #0x33 + 64d0: 4f01068f movi v15.4s, #0x34 + 64d4: 4f0106af movi v15.4s, #0x35 + 64d8: 4f0106cf movi v15.4s, #0x36 + 64dc: 4f0106ef movi v15.4s, #0x37 + 64e0: 4f01070f movi v15.4s, #0x38 + 64e4: 4f01072f movi v15.4s, #0x39 + 64e8: 4f01074f movi v15.4s, #0x3a + 64ec: 4f01076f movi v15.4s, #0x3b + 64f0: 4f01078f movi v15.4s, #0x3c + 64f4: 4f0107af movi v15.4s, #0x3d + 64f8: 4f0107cf movi v15.4s, #0x3e + 64fc: 4f0107ef movi v15.4s, #0x3f + 6500: 4f02040f movi v15.4s, #0x40 + 6504: 4f02042f movi v15.4s, #0x41 + 6508: 4f02044f movi v15.4s, #0x42 + 650c: 4f02046f movi v15.4s, #0x43 + 6510: 4f02048f movi v15.4s, #0x44 + 6514: 4f0204af movi v15.4s, #0x45 + 6518: 4f0204cf movi v15.4s, #0x46 + 651c: 4f0204ef movi v15.4s, #0x47 + 6520: 4f02050f movi v15.4s, #0x48 + 6524: 4f02052f movi v15.4s, #0x49 + 6528: 4f02054f movi v15.4s, #0x4a + 652c: 4f02056f movi v15.4s, #0x4b + 6530: 4f02058f movi v15.4s, #0x4c + 6534: 4f0205af movi v15.4s, #0x4d + 6538: 4f0205cf movi v15.4s, #0x4e + 653c: 4f0205ef movi v15.4s, #0x4f + 6540: 4f02060f movi v15.4s, #0x50 + 6544: 4f02062f movi v15.4s, #0x51 + 6548: 4f02064f movi v15.4s, #0x52 + 654c: 4f02066f movi v15.4s, #0x53 + 6550: 4f02068f movi v15.4s, #0x54 + 6554: 4f0206af movi v15.4s, #0x55 + 6558: 4f0206cf movi v15.4s, #0x56 + 655c: 4f0206ef movi v15.4s, #0x57 + 6560: 4f02070f movi v15.4s, #0x58 + 6564: 4f02072f movi v15.4s, #0x59 + 6568: 4f02074f movi v15.4s, #0x5a + 656c: 4f02076f movi v15.4s, #0x5b + 6570: 4f02078f movi v15.4s, #0x5c + 6574: 4f0207af movi v15.4s, #0x5d + 6578: 4f0207cf movi v15.4s, #0x5e + 657c: 4f0207ef movi v15.4s, #0x5f + 6580: 4f03040f movi v15.4s, #0x60 + 6584: 4f03042f movi v15.4s, #0x61 + 6588: 4f03044f movi v15.4s, #0x62 + 658c: 4f03046f movi v15.4s, #0x63 + 6590: 4f03048f movi v15.4s, #0x64 + 6594: 4f0304af movi v15.4s, #0x65 + 6598: 4f0304cf movi v15.4s, #0x66 + 659c: 4f0304ef movi v15.4s, #0x67 + 65a0: 4f03050f movi v15.4s, #0x68 + 65a4: 4f03052f movi v15.4s, #0x69 + 65a8: 4f03054f movi v15.4s, #0x6a + 65ac: 4f03056f movi v15.4s, #0x6b + 65b0: 4f03058f movi v15.4s, #0x6c + 65b4: 4f0305af movi v15.4s, #0x6d + 65b8: 4f0305cf movi v15.4s, #0x6e + 65bc: 4f0305ef movi v15.4s, #0x6f + 65c0: 4f03060f movi v15.4s, #0x70 + 65c4: 4f03062f movi v15.4s, #0x71 + 65c8: 4f03064f movi v15.4s, #0x72 + 65cc: 4f03066f movi v15.4s, #0x73 + 65d0: 4f03068f movi v15.4s, #0x74 + 65d4: 4f0306af movi v15.4s, #0x75 + 65d8: 4f0306cf movi v15.4s, #0x76 + 65dc: 4f0306ef movi v15.4s, #0x77 + 65e0: 4f03070f movi v15.4s, #0x78 + 65e4: 4f03072f movi v15.4s, #0x79 + 65e8: 4f03074f movi v15.4s, #0x7a + 65ec: 4f03076f movi v15.4s, #0x7b + 65f0: 4f03078f movi v15.4s, #0x7c + 65f4: 4f0307af movi v15.4s, #0x7d + 65f8: 4f0307cf movi v15.4s, #0x7e + 65fc: 4f0307ef movi v15.4s, #0x7f + 6600: 4f04040f movi v15.4s, #0x80 + 6604: 4f04042f movi v15.4s, #0x81 + 6608: 4f04044f movi v15.4s, #0x82 + 660c: 4f04046f movi v15.4s, #0x83 + 6610: 4f04048f movi v15.4s, #0x84 + 6614: 4f0404af movi v15.4s, #0x85 + 6618: 4f0404cf movi v15.4s, #0x86 + 661c: 4f0404ef movi v15.4s, #0x87 + 6620: 4f04050f movi v15.4s, #0x88 + 6624: 4f04052f movi v15.4s, #0x89 + 6628: 4f04054f movi v15.4s, #0x8a + 662c: 4f04056f movi v15.4s, #0x8b + 6630: 4f04058f movi v15.4s, #0x8c + 6634: 4f0405af movi v15.4s, #0x8d + 6638: 4f0405cf movi v15.4s, #0x8e + 663c: 4f0405ef movi v15.4s, #0x8f + 6640: 4f04060f movi v15.4s, #0x90 + 6644: 4f04062f movi v15.4s, #0x91 + 6648: 4f04064f movi v15.4s, #0x92 + 664c: 4f04066f movi v15.4s, #0x93 + 6650: 4f04068f movi v15.4s, #0x94 + 6654: 4f0406af movi v15.4s, #0x95 + 6658: 4f0406cf movi v15.4s, #0x96 + 665c: 4f0406ef movi v15.4s, #0x97 + 6660: 4f04070f movi v15.4s, #0x98 + 6664: 4f04072f movi v15.4s, #0x99 + 6668: 4f04074f movi v15.4s, #0x9a + 666c: 4f04076f movi v15.4s, #0x9b + 6670: 4f04078f movi v15.4s, #0x9c + 6674: 4f0407af movi v15.4s, #0x9d + 6678: 4f0407cf movi v15.4s, #0x9e + 667c: 4f0407ef movi v15.4s, #0x9f + 6680: 4f05040f movi v15.4s, #0xa0 + 6684: 4f05042f movi v15.4s, #0xa1 + 6688: 4f05044f movi v15.4s, #0xa2 + 668c: 4f05046f movi v15.4s, #0xa3 + 6690: 4f05048f movi v15.4s, #0xa4 + 6694: 4f0504af movi v15.4s, #0xa5 + 6698: 4f0504cf movi v15.4s, #0xa6 + 669c: 4f0504ef movi v15.4s, #0xa7 + 66a0: 4f05050f movi v15.4s, #0xa8 + 66a4: 4f05052f movi v15.4s, #0xa9 + 66a8: 4f05054f movi v15.4s, #0xaa + 66ac: 4f05056f movi v15.4s, #0xab + 66b0: 4f05058f movi v15.4s, #0xac + 66b4: 4f0505af movi v15.4s, #0xad + 66b8: 4f0505cf movi v15.4s, #0xae + 66bc: 4f0505ef movi v15.4s, #0xaf + 66c0: 4f05060f movi v15.4s, #0xb0 + 66c4: 4f05062f movi v15.4s, #0xb1 + 66c8: 4f05064f movi v15.4s, #0xb2 + 66cc: 4f05066f movi v15.4s, #0xb3 + 66d0: 4f05068f movi v15.4s, #0xb4 + 66d4: 4f0506af movi v15.4s, #0xb5 + 66d8: 4f0506cf movi v15.4s, #0xb6 + 66dc: 4f0506ef movi v15.4s, #0xb7 + 66e0: 4f05070f movi v15.4s, #0xb8 + 66e4: 4f05072f movi v15.4s, #0xb9 + 66e8: 4f05074f movi v15.4s, #0xba + 66ec: 4f05076f movi v15.4s, #0xbb + 66f0: 4f05078f movi v15.4s, #0xbc + 66f4: 4f0507af movi v15.4s, #0xbd + 66f8: 4f0507cf movi v15.4s, #0xbe + 66fc: 4f0507ef movi v15.4s, #0xbf + 6700: 4f06040f movi v15.4s, #0xc0 + 6704: 4f06042f movi v15.4s, #0xc1 + 6708: 4f06044f movi v15.4s, #0xc2 + 670c: 4f06046f movi v15.4s, #0xc3 + 6710: 4f06048f movi v15.4s, #0xc4 + 6714: 4f0604af movi v15.4s, #0xc5 + 6718: 4f0604cf movi v15.4s, #0xc6 + 671c: 4f0604ef movi v15.4s, #0xc7 + 6720: 4f06050f movi v15.4s, #0xc8 + 6724: 4f06052f movi v15.4s, #0xc9 + 6728: 4f06054f movi v15.4s, #0xca + 672c: 4f06056f movi v15.4s, #0xcb + 6730: 4f06058f movi v15.4s, #0xcc + 6734: 4f0605af movi v15.4s, #0xcd + 6738: 4f0605cf movi v15.4s, #0xce + 673c: 4f0605ef movi v15.4s, #0xcf + 6740: 4f06060f movi v15.4s, #0xd0 + 6744: 4f06062f movi v15.4s, #0xd1 + 6748: 4f06064f movi v15.4s, #0xd2 + 674c: 4f06066f movi v15.4s, #0xd3 + 6750: 4f06068f movi v15.4s, #0xd4 + 6754: 4f0606af movi v15.4s, #0xd5 + 6758: 4f0606cf movi v15.4s, #0xd6 + 675c: 4f0606ef movi v15.4s, #0xd7 + 6760: 4f06070f movi v15.4s, #0xd8 + 6764: 4f06072f movi v15.4s, #0xd9 + 6768: 4f06074f movi v15.4s, #0xda + 676c: 4f06076f movi v15.4s, #0xdb + 6770: 4f06078f movi v15.4s, #0xdc + 6774: 4f0607af movi v15.4s, #0xdd + 6778: 4f0607cf movi v15.4s, #0xde + 677c: 4f0607ef movi v15.4s, #0xdf + 6780: 4f07040f movi v15.4s, #0xe0 + 6784: 4f07042f movi v15.4s, #0xe1 + 6788: 4f07044f movi v15.4s, #0xe2 + 678c: 4f07046f movi v15.4s, #0xe3 + 6790: 4f07048f movi v15.4s, #0xe4 + 6794: 4f0704af movi v15.4s, #0xe5 + 6798: 4f0704cf movi v15.4s, #0xe6 + 679c: 4f0704ef movi v15.4s, #0xe7 + 67a0: 4f07050f movi v15.4s, #0xe8 + 67a4: 4f07052f movi v15.4s, #0xe9 + 67a8: 4f07054f movi v15.4s, #0xea + 67ac: 4f07056f movi v15.4s, #0xeb + 67b0: 4f07058f movi v15.4s, #0xec + 67b4: 4f0705af movi v15.4s, #0xed + 67b8: 4f0705cf movi v15.4s, #0xee + 67bc: 4f0705ef movi v15.4s, #0xef + 67c0: 4f07060f movi v15.4s, #0xf0 + 67c4: 4f07062f movi v15.4s, #0xf1 + 67c8: 4f07064f movi v15.4s, #0xf2 + 67cc: 4f07066f movi v15.4s, #0xf3 + 67d0: 4f07068f movi v15.4s, #0xf4 + 67d4: 4f0706af movi v15.4s, #0xf5 + 67d8: 4f0706cf movi v15.4s, #0xf6 + 67dc: 4f0706ef movi v15.4s, #0xf7 + 67e0: 4f07070f movi v15.4s, #0xf8 + 67e4: 4f07072f movi v15.4s, #0xf9 + 67e8: 4f07074f movi v15.4s, #0xfa + 67ec: 4f07076f movi v15.4s, #0xfb + 67f0: 4f07078f movi v15.4s, #0xfc + 67f4: 4f0707af movi v15.4s, #0xfd + 67f8: 4f0707cf movi v15.4s, #0xfe + 67fc: 4f0707ef movi v15.4s, #0xff + 6800: 4f002407 movi v7.4s, #0x0, lsl #8 + 6804: 4f002427 movi v7.4s, #0x1, lsl #8 + 6808: 4f002447 movi v7.4s, #0x2, lsl #8 + 680c: 4f002467 movi v7.4s, #0x3, lsl #8 + 6810: 4f002487 movi v7.4s, #0x4, lsl #8 + 6814: 4f0024a7 movi v7.4s, #0x5, lsl #8 + 6818: 4f0024c7 movi v7.4s, #0x6, lsl #8 + 681c: 4f0024e7 movi v7.4s, #0x7, lsl #8 + 6820: 4f002507 movi v7.4s, #0x8, lsl #8 + 6824: 4f002527 movi v7.4s, #0x9, lsl #8 + 6828: 4f002547 movi v7.4s, #0xa, lsl #8 + 682c: 4f002567 movi v7.4s, #0xb, lsl #8 + 6830: 4f002587 movi v7.4s, #0xc, lsl #8 + 6834: 4f0025a7 movi v7.4s, #0xd, lsl #8 + 6838: 4f0025c7 movi v7.4s, #0xe, lsl #8 + 683c: 4f0025e7 movi v7.4s, #0xf, lsl #8 + 6840: 4f002607 movi v7.4s, #0x10, lsl #8 + 6844: 4f002627 movi v7.4s, #0x11, lsl #8 + 6848: 4f002647 movi v7.4s, #0x12, lsl #8 + 684c: 4f002667 movi v7.4s, #0x13, lsl #8 + 6850: 4f002687 movi v7.4s, #0x14, lsl #8 + 6854: 4f0026a7 movi v7.4s, #0x15, lsl #8 + 6858: 4f0026c7 movi v7.4s, #0x16, lsl #8 + 685c: 4f0026e7 movi v7.4s, #0x17, lsl #8 + 6860: 4f002707 movi v7.4s, #0x18, lsl #8 + 6864: 4f002727 movi v7.4s, #0x19, lsl #8 + 6868: 4f002747 movi v7.4s, #0x1a, lsl #8 + 686c: 4f002767 movi v7.4s, #0x1b, lsl #8 + 6870: 4f002787 movi v7.4s, #0x1c, lsl #8 + 6874: 4f0027a7 movi v7.4s, #0x1d, lsl #8 + 6878: 4f0027c7 movi v7.4s, #0x1e, lsl #8 + 687c: 4f0027e7 movi v7.4s, #0x1f, lsl #8 + 6880: 4f012407 movi v7.4s, #0x20, lsl #8 + 6884: 4f012427 movi v7.4s, #0x21, lsl #8 + 6888: 4f012447 movi v7.4s, #0x22, lsl #8 + 688c: 4f012467 movi v7.4s, #0x23, lsl #8 + 6890: 4f012487 movi v7.4s, #0x24, lsl #8 + 6894: 4f0124a7 movi v7.4s, #0x25, lsl #8 + 6898: 4f0124c7 movi v7.4s, #0x26, lsl #8 + 689c: 4f0124e7 movi v7.4s, #0x27, lsl #8 + 68a0: 4f012507 movi v7.4s, #0x28, lsl #8 + 68a4: 4f012527 movi v7.4s, #0x29, lsl #8 + 68a8: 4f012547 movi v7.4s, #0x2a, lsl #8 + 68ac: 4f012567 movi v7.4s, #0x2b, lsl #8 + 68b0: 4f012587 movi v7.4s, #0x2c, lsl #8 + 68b4: 4f0125a7 movi v7.4s, #0x2d, lsl #8 + 68b8: 4f0125c7 movi v7.4s, #0x2e, lsl #8 + 68bc: 4f0125e7 movi v7.4s, #0x2f, lsl #8 + 68c0: 4f012607 movi v7.4s, #0x30, lsl #8 + 68c4: 4f012627 movi v7.4s, #0x31, lsl #8 + 68c8: 4f012647 movi v7.4s, #0x32, lsl #8 + 68cc: 4f012667 movi v7.4s, #0x33, lsl #8 + 68d0: 4f012687 movi v7.4s, #0x34, lsl #8 + 68d4: 4f0126a7 movi v7.4s, #0x35, lsl #8 + 68d8: 4f0126c7 movi v7.4s, #0x36, lsl #8 + 68dc: 4f0126e7 movi v7.4s, #0x37, lsl #8 + 68e0: 4f012707 movi v7.4s, #0x38, lsl #8 + 68e4: 4f012727 movi v7.4s, #0x39, lsl #8 + 68e8: 4f012747 movi v7.4s, #0x3a, lsl #8 + 68ec: 4f012767 movi v7.4s, #0x3b, lsl #8 + 68f0: 4f012787 movi v7.4s, #0x3c, lsl #8 + 68f4: 4f0127a7 movi v7.4s, #0x3d, lsl #8 + 68f8: 4f0127c7 movi v7.4s, #0x3e, lsl #8 + 68fc: 4f0127e7 movi v7.4s, #0x3f, lsl #8 + 6900: 4f022407 movi v7.4s, #0x40, lsl #8 + 6904: 4f022427 movi v7.4s, #0x41, lsl #8 + 6908: 4f022447 movi v7.4s, #0x42, lsl #8 + 690c: 4f022467 movi v7.4s, #0x43, lsl #8 + 6910: 4f022487 movi v7.4s, #0x44, lsl #8 + 6914: 4f0224a7 movi v7.4s, #0x45, lsl #8 + 6918: 4f0224c7 movi v7.4s, #0x46, lsl #8 + 691c: 4f0224e7 movi v7.4s, #0x47, lsl #8 + 6920: 4f022507 movi v7.4s, #0x48, lsl #8 + 6924: 4f022527 movi v7.4s, #0x49, lsl #8 + 6928: 4f022547 movi v7.4s, #0x4a, lsl #8 + 692c: 4f022567 movi v7.4s, #0x4b, lsl #8 + 6930: 4f022587 movi v7.4s, #0x4c, lsl #8 + 6934: 4f0225a7 movi v7.4s, #0x4d, lsl #8 + 6938: 4f0225c7 movi v7.4s, #0x4e, lsl #8 + 693c: 4f0225e7 movi v7.4s, #0x4f, lsl #8 + 6940: 4f022607 movi v7.4s, #0x50, lsl #8 + 6944: 4f022627 movi v7.4s, #0x51, lsl #8 + 6948: 4f022647 movi v7.4s, #0x52, lsl #8 + 694c: 4f022667 movi v7.4s, #0x53, lsl #8 + 6950: 4f022687 movi v7.4s, #0x54, lsl #8 + 6954: 4f0226a7 movi v7.4s, #0x55, lsl #8 + 6958: 4f0226c7 movi v7.4s, #0x56, lsl #8 + 695c: 4f0226e7 movi v7.4s, #0x57, lsl #8 + 6960: 4f022707 movi v7.4s, #0x58, lsl #8 + 6964: 4f022727 movi v7.4s, #0x59, lsl #8 + 6968: 4f022747 movi v7.4s, #0x5a, lsl #8 + 696c: 4f022767 movi v7.4s, #0x5b, lsl #8 + 6970: 4f022787 movi v7.4s, #0x5c, lsl #8 + 6974: 4f0227a7 movi v7.4s, #0x5d, lsl #8 + 6978: 4f0227c7 movi v7.4s, #0x5e, lsl #8 + 697c: 4f0227e7 movi v7.4s, #0x5f, lsl #8 + 6980: 4f032407 movi v7.4s, #0x60, lsl #8 + 6984: 4f032427 movi v7.4s, #0x61, lsl #8 + 6988: 4f032447 movi v7.4s, #0x62, lsl #8 + 698c: 4f032467 movi v7.4s, #0x63, lsl #8 + 6990: 4f032487 movi v7.4s, #0x64, lsl #8 + 6994: 4f0324a7 movi v7.4s, #0x65, lsl #8 + 6998: 4f0324c7 movi v7.4s, #0x66, lsl #8 + 699c: 4f0324e7 movi v7.4s, #0x67, lsl #8 + 69a0: 4f032507 movi v7.4s, #0x68, lsl #8 + 69a4: 4f032527 movi v7.4s, #0x69, lsl #8 + 69a8: 4f032547 movi v7.4s, #0x6a, lsl #8 + 69ac: 4f032567 movi v7.4s, #0x6b, lsl #8 + 69b0: 4f032587 movi v7.4s, #0x6c, lsl #8 + 69b4: 4f0325a7 movi v7.4s, #0x6d, lsl #8 + 69b8: 4f0325c7 movi v7.4s, #0x6e, lsl #8 + 69bc: 4f0325e7 movi v7.4s, #0x6f, lsl #8 + 69c0: 4f032607 movi v7.4s, #0x70, lsl #8 + 69c4: 4f032627 movi v7.4s, #0x71, lsl #8 + 69c8: 4f032647 movi v7.4s, #0x72, lsl #8 + 69cc: 4f032667 movi v7.4s, #0x73, lsl #8 + 69d0: 4f032687 movi v7.4s, #0x74, lsl #8 + 69d4: 4f0326a7 movi v7.4s, #0x75, lsl #8 + 69d8: 4f0326c7 movi v7.4s, #0x76, lsl #8 + 69dc: 4f0326e7 movi v7.4s, #0x77, lsl #8 + 69e0: 4f032707 movi v7.4s, #0x78, lsl #8 + 69e4: 4f032727 movi v7.4s, #0x79, lsl #8 + 69e8: 4f032747 movi v7.4s, #0x7a, lsl #8 + 69ec: 4f032767 movi v7.4s, #0x7b, lsl #8 + 69f0: 4f032787 movi v7.4s, #0x7c, lsl #8 + 69f4: 4f0327a7 movi v7.4s, #0x7d, lsl #8 + 69f8: 4f0327c7 movi v7.4s, #0x7e, lsl #8 + 69fc: 4f0327e7 movi v7.4s, #0x7f, lsl #8 + 6a00: 4f042407 movi v7.4s, #0x80, lsl #8 + 6a04: 4f042427 movi v7.4s, #0x81, lsl #8 + 6a08: 4f042447 movi v7.4s, #0x82, lsl #8 + 6a0c: 4f042467 movi v7.4s, #0x83, lsl #8 + 6a10: 4f042487 movi v7.4s, #0x84, lsl #8 + 6a14: 4f0424a7 movi v7.4s, #0x85, lsl #8 + 6a18: 4f0424c7 movi v7.4s, #0x86, lsl #8 + 6a1c: 4f0424e7 movi v7.4s, #0x87, lsl #8 + 6a20: 4f042507 movi v7.4s, #0x88, lsl #8 + 6a24: 4f042527 movi v7.4s, #0x89, lsl #8 + 6a28: 4f042547 movi v7.4s, #0x8a, lsl #8 + 6a2c: 4f042567 movi v7.4s, #0x8b, lsl #8 + 6a30: 4f042587 movi v7.4s, #0x8c, lsl #8 + 6a34: 4f0425a7 movi v7.4s, #0x8d, lsl #8 + 6a38: 4f0425c7 movi v7.4s, #0x8e, lsl #8 + 6a3c: 4f0425e7 movi v7.4s, #0x8f, lsl #8 + 6a40: 4f042607 movi v7.4s, #0x90, lsl #8 + 6a44: 4f042627 movi v7.4s, #0x91, lsl #8 + 6a48: 4f042647 movi v7.4s, #0x92, lsl #8 + 6a4c: 4f042667 movi v7.4s, #0x93, lsl #8 + 6a50: 4f042687 movi v7.4s, #0x94, lsl #8 + 6a54: 4f0426a7 movi v7.4s, #0x95, lsl #8 + 6a58: 4f0426c7 movi v7.4s, #0x96, lsl #8 + 6a5c: 4f0426e7 movi v7.4s, #0x97, lsl #8 + 6a60: 4f042707 movi v7.4s, #0x98, lsl #8 + 6a64: 4f042727 movi v7.4s, #0x99, lsl #8 + 6a68: 4f042747 movi v7.4s, #0x9a, lsl #8 + 6a6c: 4f042767 movi v7.4s, #0x9b, lsl #8 + 6a70: 4f042787 movi v7.4s, #0x9c, lsl #8 + 6a74: 4f0427a7 movi v7.4s, #0x9d, lsl #8 + 6a78: 4f0427c7 movi v7.4s, #0x9e, lsl #8 + 6a7c: 4f0427e7 movi v7.4s, #0x9f, lsl #8 + 6a80: 4f052407 movi v7.4s, #0xa0, lsl #8 + 6a84: 4f052427 movi v7.4s, #0xa1, lsl #8 + 6a88: 4f052447 movi v7.4s, #0xa2, lsl #8 + 6a8c: 4f052467 movi v7.4s, #0xa3, lsl #8 + 6a90: 4f052487 movi v7.4s, #0xa4, lsl #8 + 6a94: 4f0524a7 movi v7.4s, #0xa5, lsl #8 + 6a98: 4f0524c7 movi v7.4s, #0xa6, lsl #8 + 6a9c: 4f0524e7 movi v7.4s, #0xa7, lsl #8 + 6aa0: 4f052507 movi v7.4s, #0xa8, lsl #8 + 6aa4: 4f052527 movi v7.4s, #0xa9, lsl #8 + 6aa8: 4f052547 movi v7.4s, #0xaa, lsl #8 + 6aac: 4f052567 movi v7.4s, #0xab, lsl #8 + 6ab0: 4f052587 movi v7.4s, #0xac, lsl #8 + 6ab4: 4f0525a7 movi v7.4s, #0xad, lsl #8 + 6ab8: 4f0525c7 movi v7.4s, #0xae, lsl #8 + 6abc: 4f0525e7 movi v7.4s, #0xaf, lsl #8 + 6ac0: 4f052607 movi v7.4s, #0xb0, lsl #8 + 6ac4: 4f052627 movi v7.4s, #0xb1, lsl #8 + 6ac8: 4f052647 movi v7.4s, #0xb2, lsl #8 + 6acc: 4f052667 movi v7.4s, #0xb3, lsl #8 + 6ad0: 4f052687 movi v7.4s, #0xb4, lsl #8 + 6ad4: 4f0526a7 movi v7.4s, #0xb5, lsl #8 + 6ad8: 4f0526c7 movi v7.4s, #0xb6, lsl #8 + 6adc: 4f0526e7 movi v7.4s, #0xb7, lsl #8 + 6ae0: 4f052707 movi v7.4s, #0xb8, lsl #8 + 6ae4: 4f052727 movi v7.4s, #0xb9, lsl #8 + 6ae8: 4f052747 movi v7.4s, #0xba, lsl #8 + 6aec: 4f052767 movi v7.4s, #0xbb, lsl #8 + 6af0: 4f052787 movi v7.4s, #0xbc, lsl #8 + 6af4: 4f0527a7 movi v7.4s, #0xbd, lsl #8 + 6af8: 4f0527c7 movi v7.4s, #0xbe, lsl #8 + 6afc: 4f0527e7 movi v7.4s, #0xbf, lsl #8 + 6b00: 4f062407 movi v7.4s, #0xc0, lsl #8 + 6b04: 4f062427 movi v7.4s, #0xc1, lsl #8 + 6b08: 4f062447 movi v7.4s, #0xc2, lsl #8 + 6b0c: 4f062467 movi v7.4s, #0xc3, lsl #8 + 6b10: 4f062487 movi v7.4s, #0xc4, lsl #8 + 6b14: 4f0624a7 movi v7.4s, #0xc5, lsl #8 + 6b18: 4f0624c7 movi v7.4s, #0xc6, lsl #8 + 6b1c: 4f0624e7 movi v7.4s, #0xc7, lsl #8 + 6b20: 4f062507 movi v7.4s, #0xc8, lsl #8 + 6b24: 4f062527 movi v7.4s, #0xc9, lsl #8 + 6b28: 4f062547 movi v7.4s, #0xca, lsl #8 + 6b2c: 4f062567 movi v7.4s, #0xcb, lsl #8 + 6b30: 4f062587 movi v7.4s, #0xcc, lsl #8 + 6b34: 4f0625a7 movi v7.4s, #0xcd, lsl #8 + 6b38: 4f0625c7 movi v7.4s, #0xce, lsl #8 + 6b3c: 4f0625e7 movi v7.4s, #0xcf, lsl #8 + 6b40: 4f062607 movi v7.4s, #0xd0, lsl #8 + 6b44: 4f062627 movi v7.4s, #0xd1, lsl #8 + 6b48: 4f062647 movi v7.4s, #0xd2, lsl #8 + 6b4c: 4f062667 movi v7.4s, #0xd3, lsl #8 + 6b50: 4f062687 movi v7.4s, #0xd4, lsl #8 + 6b54: 4f0626a7 movi v7.4s, #0xd5, lsl #8 + 6b58: 4f0626c7 movi v7.4s, #0xd6, lsl #8 + 6b5c: 4f0626e7 movi v7.4s, #0xd7, lsl #8 + 6b60: 4f062707 movi v7.4s, #0xd8, lsl #8 + 6b64: 4f062727 movi v7.4s, #0xd9, lsl #8 + 6b68: 4f062747 movi v7.4s, #0xda, lsl #8 + 6b6c: 4f062767 movi v7.4s, #0xdb, lsl #8 + 6b70: 4f062787 movi v7.4s, #0xdc, lsl #8 + 6b74: 4f0627a7 movi v7.4s, #0xdd, lsl #8 + 6b78: 4f0627c7 movi v7.4s, #0xde, lsl #8 + 6b7c: 4f0627e7 movi v7.4s, #0xdf, lsl #8 + 6b80: 4f072407 movi v7.4s, #0xe0, lsl #8 + 6b84: 4f072427 movi v7.4s, #0xe1, lsl #8 + 6b88: 4f072447 movi v7.4s, #0xe2, lsl #8 + 6b8c: 4f072467 movi v7.4s, #0xe3, lsl #8 + 6b90: 4f072487 movi v7.4s, #0xe4, lsl #8 + 6b94: 4f0724a7 movi v7.4s, #0xe5, lsl #8 + 6b98: 4f0724c7 movi v7.4s, #0xe6, lsl #8 + 6b9c: 4f0724e7 movi v7.4s, #0xe7, lsl #8 + 6ba0: 4f072507 movi v7.4s, #0xe8, lsl #8 + 6ba4: 4f072527 movi v7.4s, #0xe9, lsl #8 + 6ba8: 4f072547 movi v7.4s, #0xea, lsl #8 + 6bac: 4f072567 movi v7.4s, #0xeb, lsl #8 + 6bb0: 4f072587 movi v7.4s, #0xec, lsl #8 + 6bb4: 4f0725a7 movi v7.4s, #0xed, lsl #8 + 6bb8: 4f0725c7 movi v7.4s, #0xee, lsl #8 + 6bbc: 4f0725e7 movi v7.4s, #0xef, lsl #8 + 6bc0: 4f072607 movi v7.4s, #0xf0, lsl #8 + 6bc4: 4f072627 movi v7.4s, #0xf1, lsl #8 + 6bc8: 4f072647 movi v7.4s, #0xf2, lsl #8 + 6bcc: 4f072667 movi v7.4s, #0xf3, lsl #8 + 6bd0: 4f072687 movi v7.4s, #0xf4, lsl #8 + 6bd4: 4f0726a7 movi v7.4s, #0xf5, lsl #8 + 6bd8: 4f0726c7 movi v7.4s, #0xf6, lsl #8 + 6bdc: 4f0726e7 movi v7.4s, #0xf7, lsl #8 + 6be0: 4f072707 movi v7.4s, #0xf8, lsl #8 + 6be4: 4f072727 movi v7.4s, #0xf9, lsl #8 + 6be8: 4f072747 movi v7.4s, #0xfa, lsl #8 + 6bec: 4f072767 movi v7.4s, #0xfb, lsl #8 + 6bf0: 4f072787 movi v7.4s, #0xfc, lsl #8 + 6bf4: 4f0727a7 movi v7.4s, #0xfd, lsl #8 + 6bf8: 4f0727c7 movi v7.4s, #0xfe, lsl #8 + 6bfc: 4f0727e7 movi v7.4s, #0xff, lsl #8 + 6c00: 4f00040f movi v15.4s, #0x0 + 6c04: 4f00042f movi v15.4s, #0x1 + 6c08: 4f00044f movi v15.4s, #0x2 + 6c0c: 4f00046f movi v15.4s, #0x3 + 6c10: 4f00048f movi v15.4s, #0x4 + 6c14: 4f0004af movi v15.4s, #0x5 + 6c18: 4f0004cf movi v15.4s, #0x6 + 6c1c: 4f0004ef movi v15.4s, #0x7 + 6c20: 4f00050f movi v15.4s, #0x8 + 6c24: 4f00052f movi v15.4s, #0x9 + 6c28: 4f00054f movi v15.4s, #0xa + 6c2c: 4f00056f movi v15.4s, #0xb + 6c30: 4f00058f movi v15.4s, #0xc + 6c34: 4f0005af movi v15.4s, #0xd + 6c38: 4f0005cf movi v15.4s, #0xe + 6c3c: 4f0005ef movi v15.4s, #0xf + 6c40: 4f00060f movi v15.4s, #0x10 + 6c44: 4f00062f movi v15.4s, #0x11 + 6c48: 4f00064f movi v15.4s, #0x12 + 6c4c: 4f00066f movi v15.4s, #0x13 + 6c50: 4f00068f movi v15.4s, #0x14 + 6c54: 4f0006af movi v15.4s, #0x15 + 6c58: 4f0006cf movi v15.4s, #0x16 + 6c5c: 4f0006ef movi v15.4s, #0x17 + 6c60: 4f00070f movi v15.4s, #0x18 + 6c64: 4f00072f movi v15.4s, #0x19 + 6c68: 4f00074f movi v15.4s, #0x1a + 6c6c: 4f00076f movi v15.4s, #0x1b + 6c70: 4f00078f movi v15.4s, #0x1c + 6c74: 4f0007af movi v15.4s, #0x1d + 6c78: 4f0007cf movi v15.4s, #0x1e + 6c7c: 4f0007ef movi v15.4s, #0x1f + 6c80: 4f01040f movi v15.4s, #0x20 + 6c84: 4f01042f movi v15.4s, #0x21 + 6c88: 4f01044f movi v15.4s, #0x22 + 6c8c: 4f01046f movi v15.4s, #0x23 + 6c90: 4f01048f movi v15.4s, #0x24 + 6c94: 4f0104af movi v15.4s, #0x25 + 6c98: 4f0104cf movi v15.4s, #0x26 + 6c9c: 4f0104ef movi v15.4s, #0x27 + 6ca0: 4f01050f movi v15.4s, #0x28 + 6ca4: 4f01052f movi v15.4s, #0x29 + 6ca8: 4f01054f movi v15.4s, #0x2a + 6cac: 4f01056f movi v15.4s, #0x2b + 6cb0: 4f01058f movi v15.4s, #0x2c + 6cb4: 4f0105af movi v15.4s, #0x2d + 6cb8: 4f0105cf movi v15.4s, #0x2e + 6cbc: 4f0105ef movi v15.4s, #0x2f + 6cc0: 4f01060f movi v15.4s, #0x30 + 6cc4: 4f01062f movi v15.4s, #0x31 + 6cc8: 4f01064f movi v15.4s, #0x32 + 6ccc: 4f01066f movi v15.4s, #0x33 + 6cd0: 4f01068f movi v15.4s, #0x34 + 6cd4: 4f0106af movi v15.4s, #0x35 + 6cd8: 4f0106cf movi v15.4s, #0x36 + 6cdc: 4f0106ef movi v15.4s, #0x37 + 6ce0: 4f01070f movi v15.4s, #0x38 + 6ce4: 4f01072f movi v15.4s, #0x39 + 6ce8: 4f01074f movi v15.4s, #0x3a + 6cec: 4f01076f movi v15.4s, #0x3b + 6cf0: 4f01078f movi v15.4s, #0x3c + 6cf4: 4f0107af movi v15.4s, #0x3d + 6cf8: 4f0107cf movi v15.4s, #0x3e + 6cfc: 4f0107ef movi v15.4s, #0x3f + 6d00: 4f02040f movi v15.4s, #0x40 + 6d04: 4f02042f movi v15.4s, #0x41 + 6d08: 4f02044f movi v15.4s, #0x42 + 6d0c: 4f02046f movi v15.4s, #0x43 + 6d10: 4f02048f movi v15.4s, #0x44 + 6d14: 4f0204af movi v15.4s, #0x45 + 6d18: 4f0204cf movi v15.4s, #0x46 + 6d1c: 4f0204ef movi v15.4s, #0x47 + 6d20: 4f02050f movi v15.4s, #0x48 + 6d24: 4f02052f movi v15.4s, #0x49 + 6d28: 4f02054f movi v15.4s, #0x4a + 6d2c: 4f02056f movi v15.4s, #0x4b + 6d30: 4f02058f movi v15.4s, #0x4c + 6d34: 4f0205af movi v15.4s, #0x4d + 6d38: 4f0205cf movi v15.4s, #0x4e + 6d3c: 4f0205ef movi v15.4s, #0x4f + 6d40: 4f02060f movi v15.4s, #0x50 + 6d44: 4f02062f movi v15.4s, #0x51 + 6d48: 4f02064f movi v15.4s, #0x52 + 6d4c: 4f02066f movi v15.4s, #0x53 + 6d50: 4f02068f movi v15.4s, #0x54 + 6d54: 4f0206af movi v15.4s, #0x55 + 6d58: 4f0206cf movi v15.4s, #0x56 + 6d5c: 4f0206ef movi v15.4s, #0x57 + 6d60: 4f02070f movi v15.4s, #0x58 + 6d64: 4f02072f movi v15.4s, #0x59 + 6d68: 4f02074f movi v15.4s, #0x5a + 6d6c: 4f02076f movi v15.4s, #0x5b + 6d70: 4f02078f movi v15.4s, #0x5c + 6d74: 4f0207af movi v15.4s, #0x5d + 6d78: 4f0207cf movi v15.4s, #0x5e + 6d7c: 4f0207ef movi v15.4s, #0x5f + 6d80: 4f03040f movi v15.4s, #0x60 + 6d84: 4f03042f movi v15.4s, #0x61 + 6d88: 4f03044f movi v15.4s, #0x62 + 6d8c: 4f03046f movi v15.4s, #0x63 + 6d90: 4f03048f movi v15.4s, #0x64 + 6d94: 4f0304af movi v15.4s, #0x65 + 6d98: 4f0304cf movi v15.4s, #0x66 + 6d9c: 4f0304ef movi v15.4s, #0x67 + 6da0: 4f03050f movi v15.4s, #0x68 + 6da4: 4f03052f movi v15.4s, #0x69 + 6da8: 4f03054f movi v15.4s, #0x6a + 6dac: 4f03056f movi v15.4s, #0x6b + 6db0: 4f03058f movi v15.4s, #0x6c + 6db4: 4f0305af movi v15.4s, #0x6d + 6db8: 4f0305cf movi v15.4s, #0x6e + 6dbc: 4f0305ef movi v15.4s, #0x6f + 6dc0: 4f03060f movi v15.4s, #0x70 + 6dc4: 4f03062f movi v15.4s, #0x71 + 6dc8: 4f03064f movi v15.4s, #0x72 + 6dcc: 4f03066f movi v15.4s, #0x73 + 6dd0: 4f03068f movi v15.4s, #0x74 + 6dd4: 4f0306af movi v15.4s, #0x75 + 6dd8: 4f0306cf movi v15.4s, #0x76 + 6ddc: 4f0306ef movi v15.4s, #0x77 + 6de0: 4f03070f movi v15.4s, #0x78 + 6de4: 4f03072f movi v15.4s, #0x79 + 6de8: 4f03074f movi v15.4s, #0x7a + 6dec: 4f03076f movi v15.4s, #0x7b + 6df0: 4f03078f movi v15.4s, #0x7c + 6df4: 4f0307af movi v15.4s, #0x7d + 6df8: 4f0307cf movi v15.4s, #0x7e + 6dfc: 4f0307ef movi v15.4s, #0x7f + 6e00: 4f04040f movi v15.4s, #0x80 + 6e04: 4f04042f movi v15.4s, #0x81 + 6e08: 4f04044f movi v15.4s, #0x82 + 6e0c: 4f04046f movi v15.4s, #0x83 + 6e10: 4f04048f movi v15.4s, #0x84 + 6e14: 4f0404af movi v15.4s, #0x85 + 6e18: 4f0404cf movi v15.4s, #0x86 + 6e1c: 4f0404ef movi v15.4s, #0x87 + 6e20: 4f04050f movi v15.4s, #0x88 + 6e24: 4f04052f movi v15.4s, #0x89 + 6e28: 4f04054f movi v15.4s, #0x8a + 6e2c: 4f04056f movi v15.4s, #0x8b + 6e30: 4f04058f movi v15.4s, #0x8c + 6e34: 4f0405af movi v15.4s, #0x8d + 6e38: 4f0405cf movi v15.4s, #0x8e + 6e3c: 4f0405ef movi v15.4s, #0x8f + 6e40: 4f04060f movi v15.4s, #0x90 + 6e44: 4f04062f movi v15.4s, #0x91 + 6e48: 4f04064f movi v15.4s, #0x92 + 6e4c: 4f04066f movi v15.4s, #0x93 + 6e50: 4f04068f movi v15.4s, #0x94 + 6e54: 4f0406af movi v15.4s, #0x95 + 6e58: 4f0406cf movi v15.4s, #0x96 + 6e5c: 4f0406ef movi v15.4s, #0x97 + 6e60: 4f04070f movi v15.4s, #0x98 + 6e64: 4f04072f movi v15.4s, #0x99 + 6e68: 4f04074f movi v15.4s, #0x9a + 6e6c: 4f04076f movi v15.4s, #0x9b + 6e70: 4f04078f movi v15.4s, #0x9c + 6e74: 4f0407af movi v15.4s, #0x9d + 6e78: 4f0407cf movi v15.4s, #0x9e + 6e7c: 4f0407ef movi v15.4s, #0x9f + 6e80: 4f05040f movi v15.4s, #0xa0 + 6e84: 4f05042f movi v15.4s, #0xa1 + 6e88: 4f05044f movi v15.4s, #0xa2 + 6e8c: 4f05046f movi v15.4s, #0xa3 + 6e90: 4f05048f movi v15.4s, #0xa4 + 6e94: 4f0504af movi v15.4s, #0xa5 + 6e98: 4f0504cf movi v15.4s, #0xa6 + 6e9c: 4f0504ef movi v15.4s, #0xa7 + 6ea0: 4f05050f movi v15.4s, #0xa8 + 6ea4: 4f05052f movi v15.4s, #0xa9 + 6ea8: 4f05054f movi v15.4s, #0xaa + 6eac: 4f05056f movi v15.4s, #0xab + 6eb0: 4f05058f movi v15.4s, #0xac + 6eb4: 4f0505af movi v15.4s, #0xad + 6eb8: 4f0505cf movi v15.4s, #0xae + 6ebc: 4f0505ef movi v15.4s, #0xaf + 6ec0: 4f05060f movi v15.4s, #0xb0 + 6ec4: 4f05062f movi v15.4s, #0xb1 + 6ec8: 4f05064f movi v15.4s, #0xb2 + 6ecc: 4f05066f movi v15.4s, #0xb3 + 6ed0: 4f05068f movi v15.4s, #0xb4 + 6ed4: 4f0506af movi v15.4s, #0xb5 + 6ed8: 4f0506cf movi v15.4s, #0xb6 + 6edc: 4f0506ef movi v15.4s, #0xb7 + 6ee0: 4f05070f movi v15.4s, #0xb8 + 6ee4: 4f05072f movi v15.4s, #0xb9 + 6ee8: 4f05074f movi v15.4s, #0xba + 6eec: 4f05076f movi v15.4s, #0xbb + 6ef0: 4f05078f movi v15.4s, #0xbc + 6ef4: 4f0507af movi v15.4s, #0xbd + 6ef8: 4f0507cf movi v15.4s, #0xbe + 6efc: 4f0507ef movi v15.4s, #0xbf + 6f00: 4f06040f movi v15.4s, #0xc0 + 6f04: 4f06042f movi v15.4s, #0xc1 + 6f08: 4f06044f movi v15.4s, #0xc2 + 6f0c: 4f06046f movi v15.4s, #0xc3 + 6f10: 4f06048f movi v15.4s, #0xc4 + 6f14: 4f0604af movi v15.4s, #0xc5 + 6f18: 4f0604cf movi v15.4s, #0xc6 + 6f1c: 4f0604ef movi v15.4s, #0xc7 + 6f20: 4f06050f movi v15.4s, #0xc8 + 6f24: 4f06052f movi v15.4s, #0xc9 + 6f28: 4f06054f movi v15.4s, #0xca + 6f2c: 4f06056f movi v15.4s, #0xcb + 6f30: 4f06058f movi v15.4s, #0xcc + 6f34: 4f0605af movi v15.4s, #0xcd + 6f38: 4f0605cf movi v15.4s, #0xce + 6f3c: 4f0605ef movi v15.4s, #0xcf + 6f40: 4f06060f movi v15.4s, #0xd0 + 6f44: 4f06062f movi v15.4s, #0xd1 + 6f48: 4f06064f movi v15.4s, #0xd2 + 6f4c: 4f06066f movi v15.4s, #0xd3 + 6f50: 4f06068f movi v15.4s, #0xd4 + 6f54: 4f0606af movi v15.4s, #0xd5 + 6f58: 4f0606cf movi v15.4s, #0xd6 + 6f5c: 4f0606ef movi v15.4s, #0xd7 + 6f60: 4f06070f movi v15.4s, #0xd8 + 6f64: 4f06072f movi v15.4s, #0xd9 + 6f68: 4f06074f movi v15.4s, #0xda + 6f6c: 4f06076f movi v15.4s, #0xdb + 6f70: 4f06078f movi v15.4s, #0xdc + 6f74: 4f0607af movi v15.4s, #0xdd + 6f78: 4f0607cf movi v15.4s, #0xde + 6f7c: 4f0607ef movi v15.4s, #0xdf + 6f80: 4f07040f movi v15.4s, #0xe0 + 6f84: 4f07042f movi v15.4s, #0xe1 + 6f88: 4f07044f movi v15.4s, #0xe2 + 6f8c: 4f07046f movi v15.4s, #0xe3 + 6f90: 4f07048f movi v15.4s, #0xe4 + 6f94: 4f0704af movi v15.4s, #0xe5 + 6f98: 4f0704cf movi v15.4s, #0xe6 + 6f9c: 4f0704ef movi v15.4s, #0xe7 + 6fa0: 4f07050f movi v15.4s, #0xe8 + 6fa4: 4f07052f movi v15.4s, #0xe9 + 6fa8: 4f07054f movi v15.4s, #0xea + 6fac: 4f07056f movi v15.4s, #0xeb + 6fb0: 4f07058f movi v15.4s, #0xec + 6fb4: 4f0705af movi v15.4s, #0xed + 6fb8: 4f0705cf movi v15.4s, #0xee + 6fbc: 4f0705ef movi v15.4s, #0xef + 6fc0: 4f07060f movi v15.4s, #0xf0 + 6fc4: 4f07062f movi v15.4s, #0xf1 + 6fc8: 4f07064f movi v15.4s, #0xf2 + 6fcc: 4f07066f movi v15.4s, #0xf3 + 6fd0: 4f07068f movi v15.4s, #0xf4 + 6fd4: 4f0706af movi v15.4s, #0xf5 + 6fd8: 4f0706cf movi v15.4s, #0xf6 + 6fdc: 4f0706ef movi v15.4s, #0xf7 + 6fe0: 4f07070f movi v15.4s, #0xf8 + 6fe4: 4f07072f movi v15.4s, #0xf9 + 6fe8: 4f07074f movi v15.4s, #0xfa + 6fec: 4f07076f movi v15.4s, #0xfb + 6ff0: 4f07078f movi v15.4s, #0xfc + 6ff4: 4f0707af movi v15.4s, #0xfd + 6ff8: 4f0707cf movi v15.4s, #0xfe + 6ffc: 4f0707ef movi v15.4s, #0xff + 7000: 4f004407 movi v7.4s, #0x0, lsl #16 + 7004: 4f004427 movi v7.4s, #0x1, lsl #16 + 7008: 4f004447 movi v7.4s, #0x2, lsl #16 + 700c: 4f004467 movi v7.4s, #0x3, lsl #16 + 7010: 4f004487 movi v7.4s, #0x4, lsl #16 + 7014: 4f0044a7 movi v7.4s, #0x5, lsl #16 + 7018: 4f0044c7 movi v7.4s, #0x6, lsl #16 + 701c: 4f0044e7 movi v7.4s, #0x7, lsl #16 + 7020: 4f004507 movi v7.4s, #0x8, lsl #16 + 7024: 4f004527 movi v7.4s, #0x9, lsl #16 + 7028: 4f004547 movi v7.4s, #0xa, lsl #16 + 702c: 4f004567 movi v7.4s, #0xb, lsl #16 + 7030: 4f004587 movi v7.4s, #0xc, lsl #16 + 7034: 4f0045a7 movi v7.4s, #0xd, lsl #16 + 7038: 4f0045c7 movi v7.4s, #0xe, lsl #16 + 703c: 4f0045e7 movi v7.4s, #0xf, lsl #16 + 7040: 4f004607 movi v7.4s, #0x10, lsl #16 + 7044: 4f004627 movi v7.4s, #0x11, lsl #16 + 7048: 4f004647 movi v7.4s, #0x12, lsl #16 + 704c: 4f004667 movi v7.4s, #0x13, lsl #16 + 7050: 4f004687 movi v7.4s, #0x14, lsl #16 + 7054: 4f0046a7 movi v7.4s, #0x15, lsl #16 + 7058: 4f0046c7 movi v7.4s, #0x16, lsl #16 + 705c: 4f0046e7 movi v7.4s, #0x17, lsl #16 + 7060: 4f004707 movi v7.4s, #0x18, lsl #16 + 7064: 4f004727 movi v7.4s, #0x19, lsl #16 + 7068: 4f004747 movi v7.4s, #0x1a, lsl #16 + 706c: 4f004767 movi v7.4s, #0x1b, lsl #16 + 7070: 4f004787 movi v7.4s, #0x1c, lsl #16 + 7074: 4f0047a7 movi v7.4s, #0x1d, lsl #16 + 7078: 4f0047c7 movi v7.4s, #0x1e, lsl #16 + 707c: 4f0047e7 movi v7.4s, #0x1f, lsl #16 + 7080: 4f014407 movi v7.4s, #0x20, lsl #16 + 7084: 4f014427 movi v7.4s, #0x21, lsl #16 + 7088: 4f014447 movi v7.4s, #0x22, lsl #16 + 708c: 4f014467 movi v7.4s, #0x23, lsl #16 + 7090: 4f014487 movi v7.4s, #0x24, lsl #16 + 7094: 4f0144a7 movi v7.4s, #0x25, lsl #16 + 7098: 4f0144c7 movi v7.4s, #0x26, lsl #16 + 709c: 4f0144e7 movi v7.4s, #0x27, lsl #16 + 70a0: 4f014507 movi v7.4s, #0x28, lsl #16 + 70a4: 4f014527 movi v7.4s, #0x29, lsl #16 + 70a8: 4f014547 movi v7.4s, #0x2a, lsl #16 + 70ac: 4f014567 movi v7.4s, #0x2b, lsl #16 + 70b0: 4f014587 movi v7.4s, #0x2c, lsl #16 + 70b4: 4f0145a7 movi v7.4s, #0x2d, lsl #16 + 70b8: 4f0145c7 movi v7.4s, #0x2e, lsl #16 + 70bc: 4f0145e7 movi v7.4s, #0x2f, lsl #16 + 70c0: 4f014607 movi v7.4s, #0x30, lsl #16 + 70c4: 4f014627 movi v7.4s, #0x31, lsl #16 + 70c8: 4f014647 movi v7.4s, #0x32, lsl #16 + 70cc: 4f014667 movi v7.4s, #0x33, lsl #16 + 70d0: 4f014687 movi v7.4s, #0x34, lsl #16 + 70d4: 4f0146a7 movi v7.4s, #0x35, lsl #16 + 70d8: 4f0146c7 movi v7.4s, #0x36, lsl #16 + 70dc: 4f0146e7 movi v7.4s, #0x37, lsl #16 + 70e0: 4f014707 movi v7.4s, #0x38, lsl #16 + 70e4: 4f014727 movi v7.4s, #0x39, lsl #16 + 70e8: 4f014747 movi v7.4s, #0x3a, lsl #16 + 70ec: 4f014767 movi v7.4s, #0x3b, lsl #16 + 70f0: 4f014787 movi v7.4s, #0x3c, lsl #16 + 70f4: 4f0147a7 movi v7.4s, #0x3d, lsl #16 + 70f8: 4f0147c7 movi v7.4s, #0x3e, lsl #16 + 70fc: 4f0147e7 movi v7.4s, #0x3f, lsl #16 + 7100: 4f024407 movi v7.4s, #0x40, lsl #16 + 7104: 4f024427 movi v7.4s, #0x41, lsl #16 + 7108: 4f024447 movi v7.4s, #0x42, lsl #16 + 710c: 4f024467 movi v7.4s, #0x43, lsl #16 + 7110: 4f024487 movi v7.4s, #0x44, lsl #16 + 7114: 4f0244a7 movi v7.4s, #0x45, lsl #16 + 7118: 4f0244c7 movi v7.4s, #0x46, lsl #16 + 711c: 4f0244e7 movi v7.4s, #0x47, lsl #16 + 7120: 4f024507 movi v7.4s, #0x48, lsl #16 + 7124: 4f024527 movi v7.4s, #0x49, lsl #16 + 7128: 4f024547 movi v7.4s, #0x4a, lsl #16 + 712c: 4f024567 movi v7.4s, #0x4b, lsl #16 + 7130: 4f024587 movi v7.4s, #0x4c, lsl #16 + 7134: 4f0245a7 movi v7.4s, #0x4d, lsl #16 + 7138: 4f0245c7 movi v7.4s, #0x4e, lsl #16 + 713c: 4f0245e7 movi v7.4s, #0x4f, lsl #16 + 7140: 4f024607 movi v7.4s, #0x50, lsl #16 + 7144: 4f024627 movi v7.4s, #0x51, lsl #16 + 7148: 4f024647 movi v7.4s, #0x52, lsl #16 + 714c: 4f024667 movi v7.4s, #0x53, lsl #16 + 7150: 4f024687 movi v7.4s, #0x54, lsl #16 + 7154: 4f0246a7 movi v7.4s, #0x55, lsl #16 + 7158: 4f0246c7 movi v7.4s, #0x56, lsl #16 + 715c: 4f0246e7 movi v7.4s, #0x57, lsl #16 + 7160: 4f024707 movi v7.4s, #0x58, lsl #16 + 7164: 4f024727 movi v7.4s, #0x59, lsl #16 + 7168: 4f024747 movi v7.4s, #0x5a, lsl #16 + 716c: 4f024767 movi v7.4s, #0x5b, lsl #16 + 7170: 4f024787 movi v7.4s, #0x5c, lsl #16 + 7174: 4f0247a7 movi v7.4s, #0x5d, lsl #16 + 7178: 4f0247c7 movi v7.4s, #0x5e, lsl #16 + 717c: 4f0247e7 movi v7.4s, #0x5f, lsl #16 + 7180: 4f034407 movi v7.4s, #0x60, lsl #16 + 7184: 4f034427 movi v7.4s, #0x61, lsl #16 + 7188: 4f034447 movi v7.4s, #0x62, lsl #16 + 718c: 4f034467 movi v7.4s, #0x63, lsl #16 + 7190: 4f034487 movi v7.4s, #0x64, lsl #16 + 7194: 4f0344a7 movi v7.4s, #0x65, lsl #16 + 7198: 4f0344c7 movi v7.4s, #0x66, lsl #16 + 719c: 4f0344e7 movi v7.4s, #0x67, lsl #16 + 71a0: 4f034507 movi v7.4s, #0x68, lsl #16 + 71a4: 4f034527 movi v7.4s, #0x69, lsl #16 + 71a8: 4f034547 movi v7.4s, #0x6a, lsl #16 + 71ac: 4f034567 movi v7.4s, #0x6b, lsl #16 + 71b0: 4f034587 movi v7.4s, #0x6c, lsl #16 + 71b4: 4f0345a7 movi v7.4s, #0x6d, lsl #16 + 71b8: 4f0345c7 movi v7.4s, #0x6e, lsl #16 + 71bc: 4f0345e7 movi v7.4s, #0x6f, lsl #16 + 71c0: 4f034607 movi v7.4s, #0x70, lsl #16 + 71c4: 4f034627 movi v7.4s, #0x71, lsl #16 + 71c8: 4f034647 movi v7.4s, #0x72, lsl #16 + 71cc: 4f034667 movi v7.4s, #0x73, lsl #16 + 71d0: 4f034687 movi v7.4s, #0x74, lsl #16 + 71d4: 4f0346a7 movi v7.4s, #0x75, lsl #16 + 71d8: 4f0346c7 movi v7.4s, #0x76, lsl #16 + 71dc: 4f0346e7 movi v7.4s, #0x77, lsl #16 + 71e0: 4f034707 movi v7.4s, #0x78, lsl #16 + 71e4: 4f034727 movi v7.4s, #0x79, lsl #16 + 71e8: 4f034747 movi v7.4s, #0x7a, lsl #16 + 71ec: 4f034767 movi v7.4s, #0x7b, lsl #16 + 71f0: 4f034787 movi v7.4s, #0x7c, lsl #16 + 71f4: 4f0347a7 movi v7.4s, #0x7d, lsl #16 + 71f8: 4f0347c7 movi v7.4s, #0x7e, lsl #16 + 71fc: 4f0347e7 movi v7.4s, #0x7f, lsl #16 + 7200: 4f044407 movi v7.4s, #0x80, lsl #16 + 7204: 4f044427 movi v7.4s, #0x81, lsl #16 + 7208: 4f044447 movi v7.4s, #0x82, lsl #16 + 720c: 4f044467 movi v7.4s, #0x83, lsl #16 + 7210: 4f044487 movi v7.4s, #0x84, lsl #16 + 7214: 4f0444a7 movi v7.4s, #0x85, lsl #16 + 7218: 4f0444c7 movi v7.4s, #0x86, lsl #16 + 721c: 4f0444e7 movi v7.4s, #0x87, lsl #16 + 7220: 4f044507 movi v7.4s, #0x88, lsl #16 + 7224: 4f044527 movi v7.4s, #0x89, lsl #16 + 7228: 4f044547 movi v7.4s, #0x8a, lsl #16 + 722c: 4f044567 movi v7.4s, #0x8b, lsl #16 + 7230: 4f044587 movi v7.4s, #0x8c, lsl #16 + 7234: 4f0445a7 movi v7.4s, #0x8d, lsl #16 + 7238: 4f0445c7 movi v7.4s, #0x8e, lsl #16 + 723c: 4f0445e7 movi v7.4s, #0x8f, lsl #16 + 7240: 4f044607 movi v7.4s, #0x90, lsl #16 + 7244: 4f044627 movi v7.4s, #0x91, lsl #16 + 7248: 4f044647 movi v7.4s, #0x92, lsl #16 + 724c: 4f044667 movi v7.4s, #0x93, lsl #16 + 7250: 4f044687 movi v7.4s, #0x94, lsl #16 + 7254: 4f0446a7 movi v7.4s, #0x95, lsl #16 + 7258: 4f0446c7 movi v7.4s, #0x96, lsl #16 + 725c: 4f0446e7 movi v7.4s, #0x97, lsl #16 + 7260: 4f044707 movi v7.4s, #0x98, lsl #16 + 7264: 4f044727 movi v7.4s, #0x99, lsl #16 + 7268: 4f044747 movi v7.4s, #0x9a, lsl #16 + 726c: 4f044767 movi v7.4s, #0x9b, lsl #16 + 7270: 4f044787 movi v7.4s, #0x9c, lsl #16 + 7274: 4f0447a7 movi v7.4s, #0x9d, lsl #16 + 7278: 4f0447c7 movi v7.4s, #0x9e, lsl #16 + 727c: 4f0447e7 movi v7.4s, #0x9f, lsl #16 + 7280: 4f054407 movi v7.4s, #0xa0, lsl #16 + 7284: 4f054427 movi v7.4s, #0xa1, lsl #16 + 7288: 4f054447 movi v7.4s, #0xa2, lsl #16 + 728c: 4f054467 movi v7.4s, #0xa3, lsl #16 + 7290: 4f054487 movi v7.4s, #0xa4, lsl #16 + 7294: 4f0544a7 movi v7.4s, #0xa5, lsl #16 + 7298: 4f0544c7 movi v7.4s, #0xa6, lsl #16 + 729c: 4f0544e7 movi v7.4s, #0xa7, lsl #16 + 72a0: 4f054507 movi v7.4s, #0xa8, lsl #16 + 72a4: 4f054527 movi v7.4s, #0xa9, lsl #16 + 72a8: 4f054547 movi v7.4s, #0xaa, lsl #16 + 72ac: 4f054567 movi v7.4s, #0xab, lsl #16 + 72b0: 4f054587 movi v7.4s, #0xac, lsl #16 + 72b4: 4f0545a7 movi v7.4s, #0xad, lsl #16 + 72b8: 4f0545c7 movi v7.4s, #0xae, lsl #16 + 72bc: 4f0545e7 movi v7.4s, #0xaf, lsl #16 + 72c0: 4f054607 movi v7.4s, #0xb0, lsl #16 + 72c4: 4f054627 movi v7.4s, #0xb1, lsl #16 + 72c8: 4f054647 movi v7.4s, #0xb2, lsl #16 + 72cc: 4f054667 movi v7.4s, #0xb3, lsl #16 + 72d0: 4f054687 movi v7.4s, #0xb4, lsl #16 + 72d4: 4f0546a7 movi v7.4s, #0xb5, lsl #16 + 72d8: 4f0546c7 movi v7.4s, #0xb6, lsl #16 + 72dc: 4f0546e7 movi v7.4s, #0xb7, lsl #16 + 72e0: 4f054707 movi v7.4s, #0xb8, lsl #16 + 72e4: 4f054727 movi v7.4s, #0xb9, lsl #16 + 72e8: 4f054747 movi v7.4s, #0xba, lsl #16 + 72ec: 4f054767 movi v7.4s, #0xbb, lsl #16 + 72f0: 4f054787 movi v7.4s, #0xbc, lsl #16 + 72f4: 4f0547a7 movi v7.4s, #0xbd, lsl #16 + 72f8: 4f0547c7 movi v7.4s, #0xbe, lsl #16 + 72fc: 4f0547e7 movi v7.4s, #0xbf, lsl #16 + 7300: 4f064407 movi v7.4s, #0xc0, lsl #16 + 7304: 4f064427 movi v7.4s, #0xc1, lsl #16 + 7308: 4f064447 movi v7.4s, #0xc2, lsl #16 + 730c: 4f064467 movi v7.4s, #0xc3, lsl #16 + 7310: 4f064487 movi v7.4s, #0xc4, lsl #16 + 7314: 4f0644a7 movi v7.4s, #0xc5, lsl #16 + 7318: 4f0644c7 movi v7.4s, #0xc6, lsl #16 + 731c: 4f0644e7 movi v7.4s, #0xc7, lsl #16 + 7320: 4f064507 movi v7.4s, #0xc8, lsl #16 + 7324: 4f064527 movi v7.4s, #0xc9, lsl #16 + 7328: 4f064547 movi v7.4s, #0xca, lsl #16 + 732c: 4f064567 movi v7.4s, #0xcb, lsl #16 + 7330: 4f064587 movi v7.4s, #0xcc, lsl #16 + 7334: 4f0645a7 movi v7.4s, #0xcd, lsl #16 + 7338: 4f0645c7 movi v7.4s, #0xce, lsl #16 + 733c: 4f0645e7 movi v7.4s, #0xcf, lsl #16 + 7340: 4f064607 movi v7.4s, #0xd0, lsl #16 + 7344: 4f064627 movi v7.4s, #0xd1, lsl #16 + 7348: 4f064647 movi v7.4s, #0xd2, lsl #16 + 734c: 4f064667 movi v7.4s, #0xd3, lsl #16 + 7350: 4f064687 movi v7.4s, #0xd4, lsl #16 + 7354: 4f0646a7 movi v7.4s, #0xd5, lsl #16 + 7358: 4f0646c7 movi v7.4s, #0xd6, lsl #16 + 735c: 4f0646e7 movi v7.4s, #0xd7, lsl #16 + 7360: 4f064707 movi v7.4s, #0xd8, lsl #16 + 7364: 4f064727 movi v7.4s, #0xd9, lsl #16 + 7368: 4f064747 movi v7.4s, #0xda, lsl #16 + 736c: 4f064767 movi v7.4s, #0xdb, lsl #16 + 7370: 4f064787 movi v7.4s, #0xdc, lsl #16 + 7374: 4f0647a7 movi v7.4s, #0xdd, lsl #16 + 7378: 4f0647c7 movi v7.4s, #0xde, lsl #16 + 737c: 4f0647e7 movi v7.4s, #0xdf, lsl #16 + 7380: 4f074407 movi v7.4s, #0xe0, lsl #16 + 7384: 4f074427 movi v7.4s, #0xe1, lsl #16 + 7388: 4f074447 movi v7.4s, #0xe2, lsl #16 + 738c: 4f074467 movi v7.4s, #0xe3, lsl #16 + 7390: 4f074487 movi v7.4s, #0xe4, lsl #16 + 7394: 4f0744a7 movi v7.4s, #0xe5, lsl #16 + 7398: 4f0744c7 movi v7.4s, #0xe6, lsl #16 + 739c: 4f0744e7 movi v7.4s, #0xe7, lsl #16 + 73a0: 4f074507 movi v7.4s, #0xe8, lsl #16 + 73a4: 4f074527 movi v7.4s, #0xe9, lsl #16 + 73a8: 4f074547 movi v7.4s, #0xea, lsl #16 + 73ac: 4f074567 movi v7.4s, #0xeb, lsl #16 + 73b0: 4f074587 movi v7.4s, #0xec, lsl #16 + 73b4: 4f0745a7 movi v7.4s, #0xed, lsl #16 + 73b8: 4f0745c7 movi v7.4s, #0xee, lsl #16 + 73bc: 4f0745e7 movi v7.4s, #0xef, lsl #16 + 73c0: 4f074607 movi v7.4s, #0xf0, lsl #16 + 73c4: 4f074627 movi v7.4s, #0xf1, lsl #16 + 73c8: 4f074647 movi v7.4s, #0xf2, lsl #16 + 73cc: 4f074667 movi v7.4s, #0xf3, lsl #16 + 73d0: 4f074687 movi v7.4s, #0xf4, lsl #16 + 73d4: 4f0746a7 movi v7.4s, #0xf5, lsl #16 + 73d8: 4f0746c7 movi v7.4s, #0xf6, lsl #16 + 73dc: 4f0746e7 movi v7.4s, #0xf7, lsl #16 + 73e0: 4f074707 movi v7.4s, #0xf8, lsl #16 + 73e4: 4f074727 movi v7.4s, #0xf9, lsl #16 + 73e8: 4f074747 movi v7.4s, #0xfa, lsl #16 + 73ec: 4f074767 movi v7.4s, #0xfb, lsl #16 + 73f0: 4f074787 movi v7.4s, #0xfc, lsl #16 + 73f4: 4f0747a7 movi v7.4s, #0xfd, lsl #16 + 73f8: 4f0747c7 movi v7.4s, #0xfe, lsl #16 + 73fc: 4f0747e7 movi v7.4s, #0xff, lsl #16 + 7400: 4f00040f movi v15.4s, #0x0 + 7404: 4f00042f movi v15.4s, #0x1 + 7408: 4f00044f movi v15.4s, #0x2 + 740c: 4f00046f movi v15.4s, #0x3 + 7410: 4f00048f movi v15.4s, #0x4 + 7414: 4f0004af movi v15.4s, #0x5 + 7418: 4f0004cf movi v15.4s, #0x6 + 741c: 4f0004ef movi v15.4s, #0x7 + 7420: 4f00050f movi v15.4s, #0x8 + 7424: 4f00052f movi v15.4s, #0x9 + 7428: 4f00054f movi v15.4s, #0xa + 742c: 4f00056f movi v15.4s, #0xb + 7430: 4f00058f movi v15.4s, #0xc + 7434: 4f0005af movi v15.4s, #0xd + 7438: 4f0005cf movi v15.4s, #0xe + 743c: 4f0005ef movi v15.4s, #0xf + 7440: 4f00060f movi v15.4s, #0x10 + 7444: 4f00062f movi v15.4s, #0x11 + 7448: 4f00064f movi v15.4s, #0x12 + 744c: 4f00066f movi v15.4s, #0x13 + 7450: 4f00068f movi v15.4s, #0x14 + 7454: 4f0006af movi v15.4s, #0x15 + 7458: 4f0006cf movi v15.4s, #0x16 + 745c: 4f0006ef movi v15.4s, #0x17 + 7460: 4f00070f movi v15.4s, #0x18 + 7464: 4f00072f movi v15.4s, #0x19 + 7468: 4f00074f movi v15.4s, #0x1a + 746c: 4f00076f movi v15.4s, #0x1b + 7470: 4f00078f movi v15.4s, #0x1c + 7474: 4f0007af movi v15.4s, #0x1d + 7478: 4f0007cf movi v15.4s, #0x1e + 747c: 4f0007ef movi v15.4s, #0x1f + 7480: 4f01040f movi v15.4s, #0x20 + 7484: 4f01042f movi v15.4s, #0x21 + 7488: 4f01044f movi v15.4s, #0x22 + 748c: 4f01046f movi v15.4s, #0x23 + 7490: 4f01048f movi v15.4s, #0x24 + 7494: 4f0104af movi v15.4s, #0x25 + 7498: 4f0104cf movi v15.4s, #0x26 + 749c: 4f0104ef movi v15.4s, #0x27 + 74a0: 4f01050f movi v15.4s, #0x28 + 74a4: 4f01052f movi v15.4s, #0x29 + 74a8: 4f01054f movi v15.4s, #0x2a + 74ac: 4f01056f movi v15.4s, #0x2b + 74b0: 4f01058f movi v15.4s, #0x2c + 74b4: 4f0105af movi v15.4s, #0x2d + 74b8: 4f0105cf movi v15.4s, #0x2e + 74bc: 4f0105ef movi v15.4s, #0x2f + 74c0: 4f01060f movi v15.4s, #0x30 + 74c4: 4f01062f movi v15.4s, #0x31 + 74c8: 4f01064f movi v15.4s, #0x32 + 74cc: 4f01066f movi v15.4s, #0x33 + 74d0: 4f01068f movi v15.4s, #0x34 + 74d4: 4f0106af movi v15.4s, #0x35 + 74d8: 4f0106cf movi v15.4s, #0x36 + 74dc: 4f0106ef movi v15.4s, #0x37 + 74e0: 4f01070f movi v15.4s, #0x38 + 74e4: 4f01072f movi v15.4s, #0x39 + 74e8: 4f01074f movi v15.4s, #0x3a + 74ec: 4f01076f movi v15.4s, #0x3b + 74f0: 4f01078f movi v15.4s, #0x3c + 74f4: 4f0107af movi v15.4s, #0x3d + 74f8: 4f0107cf movi v15.4s, #0x3e + 74fc: 4f0107ef movi v15.4s, #0x3f + 7500: 4f02040f movi v15.4s, #0x40 + 7504: 4f02042f movi v15.4s, #0x41 + 7508: 4f02044f movi v15.4s, #0x42 + 750c: 4f02046f movi v15.4s, #0x43 + 7510: 4f02048f movi v15.4s, #0x44 + 7514: 4f0204af movi v15.4s, #0x45 + 7518: 4f0204cf movi v15.4s, #0x46 + 751c: 4f0204ef movi v15.4s, #0x47 + 7520: 4f02050f movi v15.4s, #0x48 + 7524: 4f02052f movi v15.4s, #0x49 + 7528: 4f02054f movi v15.4s, #0x4a + 752c: 4f02056f movi v15.4s, #0x4b + 7530: 4f02058f movi v15.4s, #0x4c + 7534: 4f0205af movi v15.4s, #0x4d + 7538: 4f0205cf movi v15.4s, #0x4e + 753c: 4f0205ef movi v15.4s, #0x4f + 7540: 4f02060f movi v15.4s, #0x50 + 7544: 4f02062f movi v15.4s, #0x51 + 7548: 4f02064f movi v15.4s, #0x52 + 754c: 4f02066f movi v15.4s, #0x53 + 7550: 4f02068f movi v15.4s, #0x54 + 7554: 4f0206af movi v15.4s, #0x55 + 7558: 4f0206cf movi v15.4s, #0x56 + 755c: 4f0206ef movi v15.4s, #0x57 + 7560: 4f02070f movi v15.4s, #0x58 + 7564: 4f02072f movi v15.4s, #0x59 + 7568: 4f02074f movi v15.4s, #0x5a + 756c: 4f02076f movi v15.4s, #0x5b + 7570: 4f02078f movi v15.4s, #0x5c + 7574: 4f0207af movi v15.4s, #0x5d + 7578: 4f0207cf movi v15.4s, #0x5e + 757c: 4f0207ef movi v15.4s, #0x5f + 7580: 4f03040f movi v15.4s, #0x60 + 7584: 4f03042f movi v15.4s, #0x61 + 7588: 4f03044f movi v15.4s, #0x62 + 758c: 4f03046f movi v15.4s, #0x63 + 7590: 4f03048f movi v15.4s, #0x64 + 7594: 4f0304af movi v15.4s, #0x65 + 7598: 4f0304cf movi v15.4s, #0x66 + 759c: 4f0304ef movi v15.4s, #0x67 + 75a0: 4f03050f movi v15.4s, #0x68 + 75a4: 4f03052f movi v15.4s, #0x69 + 75a8: 4f03054f movi v15.4s, #0x6a + 75ac: 4f03056f movi v15.4s, #0x6b + 75b0: 4f03058f movi v15.4s, #0x6c + 75b4: 4f0305af movi v15.4s, #0x6d + 75b8: 4f0305cf movi v15.4s, #0x6e + 75bc: 4f0305ef movi v15.4s, #0x6f + 75c0: 4f03060f movi v15.4s, #0x70 + 75c4: 4f03062f movi v15.4s, #0x71 + 75c8: 4f03064f movi v15.4s, #0x72 + 75cc: 4f03066f movi v15.4s, #0x73 + 75d0: 4f03068f movi v15.4s, #0x74 + 75d4: 4f0306af movi v15.4s, #0x75 + 75d8: 4f0306cf movi v15.4s, #0x76 + 75dc: 4f0306ef movi v15.4s, #0x77 + 75e0: 4f03070f movi v15.4s, #0x78 + 75e4: 4f03072f movi v15.4s, #0x79 + 75e8: 4f03074f movi v15.4s, #0x7a + 75ec: 4f03076f movi v15.4s, #0x7b + 75f0: 4f03078f movi v15.4s, #0x7c + 75f4: 4f0307af movi v15.4s, #0x7d + 75f8: 4f0307cf movi v15.4s, #0x7e + 75fc: 4f0307ef movi v15.4s, #0x7f + 7600: 4f04040f movi v15.4s, #0x80 + 7604: 4f04042f movi v15.4s, #0x81 + 7608: 4f04044f movi v15.4s, #0x82 + 760c: 4f04046f movi v15.4s, #0x83 + 7610: 4f04048f movi v15.4s, #0x84 + 7614: 4f0404af movi v15.4s, #0x85 + 7618: 4f0404cf movi v15.4s, #0x86 + 761c: 4f0404ef movi v15.4s, #0x87 + 7620: 4f04050f movi v15.4s, #0x88 + 7624: 4f04052f movi v15.4s, #0x89 + 7628: 4f04054f movi v15.4s, #0x8a + 762c: 4f04056f movi v15.4s, #0x8b + 7630: 4f04058f movi v15.4s, #0x8c + 7634: 4f0405af movi v15.4s, #0x8d + 7638: 4f0405cf movi v15.4s, #0x8e + 763c: 4f0405ef movi v15.4s, #0x8f + 7640: 4f04060f movi v15.4s, #0x90 + 7644: 4f04062f movi v15.4s, #0x91 + 7648: 4f04064f movi v15.4s, #0x92 + 764c: 4f04066f movi v15.4s, #0x93 + 7650: 4f04068f movi v15.4s, #0x94 + 7654: 4f0406af movi v15.4s, #0x95 + 7658: 4f0406cf movi v15.4s, #0x96 + 765c: 4f0406ef movi v15.4s, #0x97 + 7660: 4f04070f movi v15.4s, #0x98 + 7664: 4f04072f movi v15.4s, #0x99 + 7668: 4f04074f movi v15.4s, #0x9a + 766c: 4f04076f movi v15.4s, #0x9b + 7670: 4f04078f movi v15.4s, #0x9c + 7674: 4f0407af movi v15.4s, #0x9d + 7678: 4f0407cf movi v15.4s, #0x9e + 767c: 4f0407ef movi v15.4s, #0x9f + 7680: 4f05040f movi v15.4s, #0xa0 + 7684: 4f05042f movi v15.4s, #0xa1 + 7688: 4f05044f movi v15.4s, #0xa2 + 768c: 4f05046f movi v15.4s, #0xa3 + 7690: 4f05048f movi v15.4s, #0xa4 + 7694: 4f0504af movi v15.4s, #0xa5 + 7698: 4f0504cf movi v15.4s, #0xa6 + 769c: 4f0504ef movi v15.4s, #0xa7 + 76a0: 4f05050f movi v15.4s, #0xa8 + 76a4: 4f05052f movi v15.4s, #0xa9 + 76a8: 4f05054f movi v15.4s, #0xaa + 76ac: 4f05056f movi v15.4s, #0xab + 76b0: 4f05058f movi v15.4s, #0xac + 76b4: 4f0505af movi v15.4s, #0xad + 76b8: 4f0505cf movi v15.4s, #0xae + 76bc: 4f0505ef movi v15.4s, #0xaf + 76c0: 4f05060f movi v15.4s, #0xb0 + 76c4: 4f05062f movi v15.4s, #0xb1 + 76c8: 4f05064f movi v15.4s, #0xb2 + 76cc: 4f05066f movi v15.4s, #0xb3 + 76d0: 4f05068f movi v15.4s, #0xb4 + 76d4: 4f0506af movi v15.4s, #0xb5 + 76d8: 4f0506cf movi v15.4s, #0xb6 + 76dc: 4f0506ef movi v15.4s, #0xb7 + 76e0: 4f05070f movi v15.4s, #0xb8 + 76e4: 4f05072f movi v15.4s, #0xb9 + 76e8: 4f05074f movi v15.4s, #0xba + 76ec: 4f05076f movi v15.4s, #0xbb + 76f0: 4f05078f movi v15.4s, #0xbc + 76f4: 4f0507af movi v15.4s, #0xbd + 76f8: 4f0507cf movi v15.4s, #0xbe + 76fc: 4f0507ef movi v15.4s, #0xbf + 7700: 4f06040f movi v15.4s, #0xc0 + 7704: 4f06042f movi v15.4s, #0xc1 + 7708: 4f06044f movi v15.4s, #0xc2 + 770c: 4f06046f movi v15.4s, #0xc3 + 7710: 4f06048f movi v15.4s, #0xc4 + 7714: 4f0604af movi v15.4s, #0xc5 + 7718: 4f0604cf movi v15.4s, #0xc6 + 771c: 4f0604ef movi v15.4s, #0xc7 + 7720: 4f06050f movi v15.4s, #0xc8 + 7724: 4f06052f movi v15.4s, #0xc9 + 7728: 4f06054f movi v15.4s, #0xca + 772c: 4f06056f movi v15.4s, #0xcb + 7730: 4f06058f movi v15.4s, #0xcc + 7734: 4f0605af movi v15.4s, #0xcd + 7738: 4f0605cf movi v15.4s, #0xce + 773c: 4f0605ef movi v15.4s, #0xcf + 7740: 4f06060f movi v15.4s, #0xd0 + 7744: 4f06062f movi v15.4s, #0xd1 + 7748: 4f06064f movi v15.4s, #0xd2 + 774c: 4f06066f movi v15.4s, #0xd3 + 7750: 4f06068f movi v15.4s, #0xd4 + 7754: 4f0606af movi v15.4s, #0xd5 + 7758: 4f0606cf movi v15.4s, #0xd6 + 775c: 4f0606ef movi v15.4s, #0xd7 + 7760: 4f06070f movi v15.4s, #0xd8 + 7764: 4f06072f movi v15.4s, #0xd9 + 7768: 4f06074f movi v15.4s, #0xda + 776c: 4f06076f movi v15.4s, #0xdb + 7770: 4f06078f movi v15.4s, #0xdc + 7774: 4f0607af movi v15.4s, #0xdd + 7778: 4f0607cf movi v15.4s, #0xde + 777c: 4f0607ef movi v15.4s, #0xdf + 7780: 4f07040f movi v15.4s, #0xe0 + 7784: 4f07042f movi v15.4s, #0xe1 + 7788: 4f07044f movi v15.4s, #0xe2 + 778c: 4f07046f movi v15.4s, #0xe3 + 7790: 4f07048f movi v15.4s, #0xe4 + 7794: 4f0704af movi v15.4s, #0xe5 + 7798: 4f0704cf movi v15.4s, #0xe6 + 779c: 4f0704ef movi v15.4s, #0xe7 + 77a0: 4f07050f movi v15.4s, #0xe8 + 77a4: 4f07052f movi v15.4s, #0xe9 + 77a8: 4f07054f movi v15.4s, #0xea + 77ac: 4f07056f movi v15.4s, #0xeb + 77b0: 4f07058f movi v15.4s, #0xec + 77b4: 4f0705af movi v15.4s, #0xed + 77b8: 4f0705cf movi v15.4s, #0xee + 77bc: 4f0705ef movi v15.4s, #0xef + 77c0: 4f07060f movi v15.4s, #0xf0 + 77c4: 4f07062f movi v15.4s, #0xf1 + 77c8: 4f07064f movi v15.4s, #0xf2 + 77cc: 4f07066f movi v15.4s, #0xf3 + 77d0: 4f07068f movi v15.4s, #0xf4 + 77d4: 4f0706af movi v15.4s, #0xf5 + 77d8: 4f0706cf movi v15.4s, #0xf6 + 77dc: 4f0706ef movi v15.4s, #0xf7 + 77e0: 4f07070f movi v15.4s, #0xf8 + 77e4: 4f07072f movi v15.4s, #0xf9 + 77e8: 4f07074f movi v15.4s, #0xfa + 77ec: 4f07076f movi v15.4s, #0xfb + 77f0: 4f07078f movi v15.4s, #0xfc + 77f4: 4f0707af movi v15.4s, #0xfd + 77f8: 4f0707cf movi v15.4s, #0xfe + 77fc: 4f0707ef movi v15.4s, #0xff + 7800: 4f006407 movi v7.4s, #0x0, lsl #24 + 7804: 4f006427 movi v7.4s, #0x1, lsl #24 + 7808: 4f006447 movi v7.4s, #0x2, lsl #24 + 780c: 4f006467 movi v7.4s, #0x3, lsl #24 + 7810: 4f006487 movi v7.4s, #0x4, lsl #24 + 7814: 4f0064a7 movi v7.4s, #0x5, lsl #24 + 7818: 4f0064c7 movi v7.4s, #0x6, lsl #24 + 781c: 4f0064e7 movi v7.4s, #0x7, lsl #24 + 7820: 4f006507 movi v7.4s, #0x8, lsl #24 + 7824: 4f006527 movi v7.4s, #0x9, lsl #24 + 7828: 4f006547 movi v7.4s, #0xa, lsl #24 + 782c: 4f006567 movi v7.4s, #0xb, lsl #24 + 7830: 4f006587 movi v7.4s, #0xc, lsl #24 + 7834: 4f0065a7 movi v7.4s, #0xd, lsl #24 + 7838: 4f0065c7 movi v7.4s, #0xe, lsl #24 + 783c: 4f0065e7 movi v7.4s, #0xf, lsl #24 + 7840: 4f006607 movi v7.4s, #0x10, lsl #24 + 7844: 4f006627 movi v7.4s, #0x11, lsl #24 + 7848: 4f006647 movi v7.4s, #0x12, lsl #24 + 784c: 4f006667 movi v7.4s, #0x13, lsl #24 + 7850: 4f006687 movi v7.4s, #0x14, lsl #24 + 7854: 4f0066a7 movi v7.4s, #0x15, lsl #24 + 7858: 4f0066c7 movi v7.4s, #0x16, lsl #24 + 785c: 4f0066e7 movi v7.4s, #0x17, lsl #24 + 7860: 4f006707 movi v7.4s, #0x18, lsl #24 + 7864: 4f006727 movi v7.4s, #0x19, lsl #24 + 7868: 4f006747 movi v7.4s, #0x1a, lsl #24 + 786c: 4f006767 movi v7.4s, #0x1b, lsl #24 + 7870: 4f006787 movi v7.4s, #0x1c, lsl #24 + 7874: 4f0067a7 movi v7.4s, #0x1d, lsl #24 + 7878: 4f0067c7 movi v7.4s, #0x1e, lsl #24 + 787c: 4f0067e7 movi v7.4s, #0x1f, lsl #24 + 7880: 4f016407 movi v7.4s, #0x20, lsl #24 + 7884: 4f016427 movi v7.4s, #0x21, lsl #24 + 7888: 4f016447 movi v7.4s, #0x22, lsl #24 + 788c: 4f016467 movi v7.4s, #0x23, lsl #24 + 7890: 4f016487 movi v7.4s, #0x24, lsl #24 + 7894: 4f0164a7 movi v7.4s, #0x25, lsl #24 + 7898: 4f0164c7 movi v7.4s, #0x26, lsl #24 + 789c: 4f0164e7 movi v7.4s, #0x27, lsl #24 + 78a0: 4f016507 movi v7.4s, #0x28, lsl #24 + 78a4: 4f016527 movi v7.4s, #0x29, lsl #24 + 78a8: 4f016547 movi v7.4s, #0x2a, lsl #24 + 78ac: 4f016567 movi v7.4s, #0x2b, lsl #24 + 78b0: 4f016587 movi v7.4s, #0x2c, lsl #24 + 78b4: 4f0165a7 movi v7.4s, #0x2d, lsl #24 + 78b8: 4f0165c7 movi v7.4s, #0x2e, lsl #24 + 78bc: 4f0165e7 movi v7.4s, #0x2f, lsl #24 + 78c0: 4f016607 movi v7.4s, #0x30, lsl #24 + 78c4: 4f016627 movi v7.4s, #0x31, lsl #24 + 78c8: 4f016647 movi v7.4s, #0x32, lsl #24 + 78cc: 4f016667 movi v7.4s, #0x33, lsl #24 + 78d0: 4f016687 movi v7.4s, #0x34, lsl #24 + 78d4: 4f0166a7 movi v7.4s, #0x35, lsl #24 + 78d8: 4f0166c7 movi v7.4s, #0x36, lsl #24 + 78dc: 4f0166e7 movi v7.4s, #0x37, lsl #24 + 78e0: 4f016707 movi v7.4s, #0x38, lsl #24 + 78e4: 4f016727 movi v7.4s, #0x39, lsl #24 + 78e8: 4f016747 movi v7.4s, #0x3a, lsl #24 + 78ec: 4f016767 movi v7.4s, #0x3b, lsl #24 + 78f0: 4f016787 movi v7.4s, #0x3c, lsl #24 + 78f4: 4f0167a7 movi v7.4s, #0x3d, lsl #24 + 78f8: 4f0167c7 movi v7.4s, #0x3e, lsl #24 + 78fc: 4f0167e7 movi v7.4s, #0x3f, lsl #24 + 7900: 4f026407 movi v7.4s, #0x40, lsl #24 + 7904: 4f026427 movi v7.4s, #0x41, lsl #24 + 7908: 4f026447 movi v7.4s, #0x42, lsl #24 + 790c: 4f026467 movi v7.4s, #0x43, lsl #24 + 7910: 4f026487 movi v7.4s, #0x44, lsl #24 + 7914: 4f0264a7 movi v7.4s, #0x45, lsl #24 + 7918: 4f0264c7 movi v7.4s, #0x46, lsl #24 + 791c: 4f0264e7 movi v7.4s, #0x47, lsl #24 + 7920: 4f026507 movi v7.4s, #0x48, lsl #24 + 7924: 4f026527 movi v7.4s, #0x49, lsl #24 + 7928: 4f026547 movi v7.4s, #0x4a, lsl #24 + 792c: 4f026567 movi v7.4s, #0x4b, lsl #24 + 7930: 4f026587 movi v7.4s, #0x4c, lsl #24 + 7934: 4f0265a7 movi v7.4s, #0x4d, lsl #24 + 7938: 4f0265c7 movi v7.4s, #0x4e, lsl #24 + 793c: 4f0265e7 movi v7.4s, #0x4f, lsl #24 + 7940: 4f026607 movi v7.4s, #0x50, lsl #24 + 7944: 4f026627 movi v7.4s, #0x51, lsl #24 + 7948: 4f026647 movi v7.4s, #0x52, lsl #24 + 794c: 4f026667 movi v7.4s, #0x53, lsl #24 + 7950: 4f026687 movi v7.4s, #0x54, lsl #24 + 7954: 4f0266a7 movi v7.4s, #0x55, lsl #24 + 7958: 4f0266c7 movi v7.4s, #0x56, lsl #24 + 795c: 4f0266e7 movi v7.4s, #0x57, lsl #24 + 7960: 4f026707 movi v7.4s, #0x58, lsl #24 + 7964: 4f026727 movi v7.4s, #0x59, lsl #24 + 7968: 4f026747 movi v7.4s, #0x5a, lsl #24 + 796c: 4f026767 movi v7.4s, #0x5b, lsl #24 + 7970: 4f026787 movi v7.4s, #0x5c, lsl #24 + 7974: 4f0267a7 movi v7.4s, #0x5d, lsl #24 + 7978: 4f0267c7 movi v7.4s, #0x5e, lsl #24 + 797c: 4f0267e7 movi v7.4s, #0x5f, lsl #24 + 7980: 4f036407 movi v7.4s, #0x60, lsl #24 + 7984: 4f036427 movi v7.4s, #0x61, lsl #24 + 7988: 4f036447 movi v7.4s, #0x62, lsl #24 + 798c: 4f036467 movi v7.4s, #0x63, lsl #24 + 7990: 4f036487 movi v7.4s, #0x64, lsl #24 + 7994: 4f0364a7 movi v7.4s, #0x65, lsl #24 + 7998: 4f0364c7 movi v7.4s, #0x66, lsl #24 + 799c: 4f0364e7 movi v7.4s, #0x67, lsl #24 + 79a0: 4f036507 movi v7.4s, #0x68, lsl #24 + 79a4: 4f036527 movi v7.4s, #0x69, lsl #24 + 79a8: 4f036547 movi v7.4s, #0x6a, lsl #24 + 79ac: 4f036567 movi v7.4s, #0x6b, lsl #24 + 79b0: 4f036587 movi v7.4s, #0x6c, lsl #24 + 79b4: 4f0365a7 movi v7.4s, #0x6d, lsl #24 + 79b8: 4f0365c7 movi v7.4s, #0x6e, lsl #24 + 79bc: 4f0365e7 movi v7.4s, #0x6f, lsl #24 + 79c0: 4f036607 movi v7.4s, #0x70, lsl #24 + 79c4: 4f036627 movi v7.4s, #0x71, lsl #24 + 79c8: 4f036647 movi v7.4s, #0x72, lsl #24 + 79cc: 4f036667 movi v7.4s, #0x73, lsl #24 + 79d0: 4f036687 movi v7.4s, #0x74, lsl #24 + 79d4: 4f0366a7 movi v7.4s, #0x75, lsl #24 + 79d8: 4f0366c7 movi v7.4s, #0x76, lsl #24 + 79dc: 4f0366e7 movi v7.4s, #0x77, lsl #24 + 79e0: 4f036707 movi v7.4s, #0x78, lsl #24 + 79e4: 4f036727 movi v7.4s, #0x79, lsl #24 + 79e8: 4f036747 movi v7.4s, #0x7a, lsl #24 + 79ec: 4f036767 movi v7.4s, #0x7b, lsl #24 + 79f0: 4f036787 movi v7.4s, #0x7c, lsl #24 + 79f4: 4f0367a7 movi v7.4s, #0x7d, lsl #24 + 79f8: 4f0367c7 movi v7.4s, #0x7e, lsl #24 + 79fc: 4f0367e7 movi v7.4s, #0x7f, lsl #24 + 7a00: 4f046407 movi v7.4s, #0x80, lsl #24 + 7a04: 4f046427 movi v7.4s, #0x81, lsl #24 + 7a08: 4f046447 movi v7.4s, #0x82, lsl #24 + 7a0c: 4f046467 movi v7.4s, #0x83, lsl #24 + 7a10: 4f046487 movi v7.4s, #0x84, lsl #24 + 7a14: 4f0464a7 movi v7.4s, #0x85, lsl #24 + 7a18: 4f0464c7 movi v7.4s, #0x86, lsl #24 + 7a1c: 4f0464e7 movi v7.4s, #0x87, lsl #24 + 7a20: 4f046507 movi v7.4s, #0x88, lsl #24 + 7a24: 4f046527 movi v7.4s, #0x89, lsl #24 + 7a28: 4f046547 movi v7.4s, #0x8a, lsl #24 + 7a2c: 4f046567 movi v7.4s, #0x8b, lsl #24 + 7a30: 4f046587 movi v7.4s, #0x8c, lsl #24 + 7a34: 4f0465a7 movi v7.4s, #0x8d, lsl #24 + 7a38: 4f0465c7 movi v7.4s, #0x8e, lsl #24 + 7a3c: 4f0465e7 movi v7.4s, #0x8f, lsl #24 + 7a40: 4f046607 movi v7.4s, #0x90, lsl #24 + 7a44: 4f046627 movi v7.4s, #0x91, lsl #24 + 7a48: 4f046647 movi v7.4s, #0x92, lsl #24 + 7a4c: 4f046667 movi v7.4s, #0x93, lsl #24 + 7a50: 4f046687 movi v7.4s, #0x94, lsl #24 + 7a54: 4f0466a7 movi v7.4s, #0x95, lsl #24 + 7a58: 4f0466c7 movi v7.4s, #0x96, lsl #24 + 7a5c: 4f0466e7 movi v7.4s, #0x97, lsl #24 + 7a60: 4f046707 movi v7.4s, #0x98, lsl #24 + 7a64: 4f046727 movi v7.4s, #0x99, lsl #24 + 7a68: 4f046747 movi v7.4s, #0x9a, lsl #24 + 7a6c: 4f046767 movi v7.4s, #0x9b, lsl #24 + 7a70: 4f046787 movi v7.4s, #0x9c, lsl #24 + 7a74: 4f0467a7 movi v7.4s, #0x9d, lsl #24 + 7a78: 4f0467c7 movi v7.4s, #0x9e, lsl #24 + 7a7c: 4f0467e7 movi v7.4s, #0x9f, lsl #24 + 7a80: 4f056407 movi v7.4s, #0xa0, lsl #24 + 7a84: 4f056427 movi v7.4s, #0xa1, lsl #24 + 7a88: 4f056447 movi v7.4s, #0xa2, lsl #24 + 7a8c: 4f056467 movi v7.4s, #0xa3, lsl #24 + 7a90: 4f056487 movi v7.4s, #0xa4, lsl #24 + 7a94: 4f0564a7 movi v7.4s, #0xa5, lsl #24 + 7a98: 4f0564c7 movi v7.4s, #0xa6, lsl #24 + 7a9c: 4f0564e7 movi v7.4s, #0xa7, lsl #24 + 7aa0: 4f056507 movi v7.4s, #0xa8, lsl #24 + 7aa4: 4f056527 movi v7.4s, #0xa9, lsl #24 + 7aa8: 4f056547 movi v7.4s, #0xaa, lsl #24 + 7aac: 4f056567 movi v7.4s, #0xab, lsl #24 + 7ab0: 4f056587 movi v7.4s, #0xac, lsl #24 + 7ab4: 4f0565a7 movi v7.4s, #0xad, lsl #24 + 7ab8: 4f0565c7 movi v7.4s, #0xae, lsl #24 + 7abc: 4f0565e7 movi v7.4s, #0xaf, lsl #24 + 7ac0: 4f056607 movi v7.4s, #0xb0, lsl #24 + 7ac4: 4f056627 movi v7.4s, #0xb1, lsl #24 + 7ac8: 4f056647 movi v7.4s, #0xb2, lsl #24 + 7acc: 4f056667 movi v7.4s, #0xb3, lsl #24 + 7ad0: 4f056687 movi v7.4s, #0xb4, lsl #24 + 7ad4: 4f0566a7 movi v7.4s, #0xb5, lsl #24 + 7ad8: 4f0566c7 movi v7.4s, #0xb6, lsl #24 + 7adc: 4f0566e7 movi v7.4s, #0xb7, lsl #24 + 7ae0: 4f056707 movi v7.4s, #0xb8, lsl #24 + 7ae4: 4f056727 movi v7.4s, #0xb9, lsl #24 + 7ae8: 4f056747 movi v7.4s, #0xba, lsl #24 + 7aec: 4f056767 movi v7.4s, #0xbb, lsl #24 + 7af0: 4f056787 movi v7.4s, #0xbc, lsl #24 + 7af4: 4f0567a7 movi v7.4s, #0xbd, lsl #24 + 7af8: 4f0567c7 movi v7.4s, #0xbe, lsl #24 + 7afc: 4f0567e7 movi v7.4s, #0xbf, lsl #24 + 7b00: 4f066407 movi v7.4s, #0xc0, lsl #24 + 7b04: 4f066427 movi v7.4s, #0xc1, lsl #24 + 7b08: 4f066447 movi v7.4s, #0xc2, lsl #24 + 7b0c: 4f066467 movi v7.4s, #0xc3, lsl #24 + 7b10: 4f066487 movi v7.4s, #0xc4, lsl #24 + 7b14: 4f0664a7 movi v7.4s, #0xc5, lsl #24 + 7b18: 4f0664c7 movi v7.4s, #0xc6, lsl #24 + 7b1c: 4f0664e7 movi v7.4s, #0xc7, lsl #24 + 7b20: 4f066507 movi v7.4s, #0xc8, lsl #24 + 7b24: 4f066527 movi v7.4s, #0xc9, lsl #24 + 7b28: 4f066547 movi v7.4s, #0xca, lsl #24 + 7b2c: 4f066567 movi v7.4s, #0xcb, lsl #24 + 7b30: 4f066587 movi v7.4s, #0xcc, lsl #24 + 7b34: 4f0665a7 movi v7.4s, #0xcd, lsl #24 + 7b38: 4f0665c7 movi v7.4s, #0xce, lsl #24 + 7b3c: 4f0665e7 movi v7.4s, #0xcf, lsl #24 + 7b40: 4f066607 movi v7.4s, #0xd0, lsl #24 + 7b44: 4f066627 movi v7.4s, #0xd1, lsl #24 + 7b48: 4f066647 movi v7.4s, #0xd2, lsl #24 + 7b4c: 4f066667 movi v7.4s, #0xd3, lsl #24 + 7b50: 4f066687 movi v7.4s, #0xd4, lsl #24 + 7b54: 4f0666a7 movi v7.4s, #0xd5, lsl #24 + 7b58: 4f0666c7 movi v7.4s, #0xd6, lsl #24 + 7b5c: 4f0666e7 movi v7.4s, #0xd7, lsl #24 + 7b60: 4f066707 movi v7.4s, #0xd8, lsl #24 + 7b64: 4f066727 movi v7.4s, #0xd9, lsl #24 + 7b68: 4f066747 movi v7.4s, #0xda, lsl #24 + 7b6c: 4f066767 movi v7.4s, #0xdb, lsl #24 + 7b70: 4f066787 movi v7.4s, #0xdc, lsl #24 + 7b74: 4f0667a7 movi v7.4s, #0xdd, lsl #24 + 7b78: 4f0667c7 movi v7.4s, #0xde, lsl #24 + 7b7c: 4f0667e7 movi v7.4s, #0xdf, lsl #24 + 7b80: 4f076407 movi v7.4s, #0xe0, lsl #24 + 7b84: 4f076427 movi v7.4s, #0xe1, lsl #24 + 7b88: 4f076447 movi v7.4s, #0xe2, lsl #24 + 7b8c: 4f076467 movi v7.4s, #0xe3, lsl #24 + 7b90: 4f076487 movi v7.4s, #0xe4, lsl #24 + 7b94: 4f0764a7 movi v7.4s, #0xe5, lsl #24 + 7b98: 4f0764c7 movi v7.4s, #0xe6, lsl #24 + 7b9c: 4f0764e7 movi v7.4s, #0xe7, lsl #24 + 7ba0: 4f076507 movi v7.4s, #0xe8, lsl #24 + 7ba4: 4f076527 movi v7.4s, #0xe9, lsl #24 + 7ba8: 4f076547 movi v7.4s, #0xea, lsl #24 + 7bac: 4f076567 movi v7.4s, #0xeb, lsl #24 + 7bb0: 4f076587 movi v7.4s, #0xec, lsl #24 + 7bb4: 4f0765a7 movi v7.4s, #0xed, lsl #24 + 7bb8: 4f0765c7 movi v7.4s, #0xee, lsl #24 + 7bbc: 4f0765e7 movi v7.4s, #0xef, lsl #24 + 7bc0: 4f076607 movi v7.4s, #0xf0, lsl #24 + 7bc4: 4f076627 movi v7.4s, #0xf1, lsl #24 + 7bc8: 4f076647 movi v7.4s, #0xf2, lsl #24 + 7bcc: 4f076667 movi v7.4s, #0xf3, lsl #24 + 7bd0: 4f076687 movi v7.4s, #0xf4, lsl #24 + 7bd4: 4f0766a7 movi v7.4s, #0xf5, lsl #24 + 7bd8: 4f0766c7 movi v7.4s, #0xf6, lsl #24 + 7bdc: 4f0766e7 movi v7.4s, #0xf7, lsl #24 + 7be0: 4f076707 movi v7.4s, #0xf8, lsl #24 + 7be4: 4f076727 movi v7.4s, #0xf9, lsl #24 + 7be8: 4f076747 movi v7.4s, #0xfa, lsl #24 + 7bec: 4f076767 movi v7.4s, #0xfb, lsl #24 + 7bf0: 4f076787 movi v7.4s, #0xfc, lsl #24 + 7bf4: 4f0767a7 movi v7.4s, #0xfd, lsl #24 + 7bf8: 4f0767c7 movi v7.4s, #0xfe, lsl #24 + 7bfc: 4f0767e7 movi v7.4s, #0xff, lsl #24 + 7c00: 4f00040f movi v15.4s, #0x0 + 7c04: 4f00042f movi v15.4s, #0x1 + 7c08: 4f00044f movi v15.4s, #0x2 + 7c0c: 4f00046f movi v15.4s, #0x3 + 7c10: 4f00048f movi v15.4s, #0x4 + 7c14: 4f0004af movi v15.4s, #0x5 + 7c18: 4f0004cf movi v15.4s, #0x6 + 7c1c: 4f0004ef movi v15.4s, #0x7 + 7c20: 4f00050f movi v15.4s, #0x8 + 7c24: 4f00052f movi v15.4s, #0x9 + 7c28: 4f00054f movi v15.4s, #0xa + 7c2c: 4f00056f movi v15.4s, #0xb + 7c30: 4f00058f movi v15.4s, #0xc + 7c34: 4f0005af movi v15.4s, #0xd + 7c38: 4f0005cf movi v15.4s, #0xe + 7c3c: 4f0005ef movi v15.4s, #0xf + 7c40: 4f00060f movi v15.4s, #0x10 + 7c44: 4f00062f movi v15.4s, #0x11 + 7c48: 4f00064f movi v15.4s, #0x12 + 7c4c: 4f00066f movi v15.4s, #0x13 + 7c50: 4f00068f movi v15.4s, #0x14 + 7c54: 4f0006af movi v15.4s, #0x15 + 7c58: 4f0006cf movi v15.4s, #0x16 + 7c5c: 4f0006ef movi v15.4s, #0x17 + 7c60: 4f00070f movi v15.4s, #0x18 + 7c64: 4f00072f movi v15.4s, #0x19 + 7c68: 4f00074f movi v15.4s, #0x1a + 7c6c: 4f00076f movi v15.4s, #0x1b + 7c70: 4f00078f movi v15.4s, #0x1c + 7c74: 4f0007af movi v15.4s, #0x1d + 7c78: 4f0007cf movi v15.4s, #0x1e + 7c7c: 4f0007ef movi v15.4s, #0x1f + 7c80: 4f01040f movi v15.4s, #0x20 + 7c84: 4f01042f movi v15.4s, #0x21 + 7c88: 4f01044f movi v15.4s, #0x22 + 7c8c: 4f01046f movi v15.4s, #0x23 + 7c90: 4f01048f movi v15.4s, #0x24 + 7c94: 4f0104af movi v15.4s, #0x25 + 7c98: 4f0104cf movi v15.4s, #0x26 + 7c9c: 4f0104ef movi v15.4s, #0x27 + 7ca0: 4f01050f movi v15.4s, #0x28 + 7ca4: 4f01052f movi v15.4s, #0x29 + 7ca8: 4f01054f movi v15.4s, #0x2a + 7cac: 4f01056f movi v15.4s, #0x2b + 7cb0: 4f01058f movi v15.4s, #0x2c + 7cb4: 4f0105af movi v15.4s, #0x2d + 7cb8: 4f0105cf movi v15.4s, #0x2e + 7cbc: 4f0105ef movi v15.4s, #0x2f + 7cc0: 4f01060f movi v15.4s, #0x30 + 7cc4: 4f01062f movi v15.4s, #0x31 + 7cc8: 4f01064f movi v15.4s, #0x32 + 7ccc: 4f01066f movi v15.4s, #0x33 + 7cd0: 4f01068f movi v15.4s, #0x34 + 7cd4: 4f0106af movi v15.4s, #0x35 + 7cd8: 4f0106cf movi v15.4s, #0x36 + 7cdc: 4f0106ef movi v15.4s, #0x37 + 7ce0: 4f01070f movi v15.4s, #0x38 + 7ce4: 4f01072f movi v15.4s, #0x39 + 7ce8: 4f01074f movi v15.4s, #0x3a + 7cec: 4f01076f movi v15.4s, #0x3b + 7cf0: 4f01078f movi v15.4s, #0x3c + 7cf4: 4f0107af movi v15.4s, #0x3d + 7cf8: 4f0107cf movi v15.4s, #0x3e + 7cfc: 4f0107ef movi v15.4s, #0x3f + 7d00: 4f02040f movi v15.4s, #0x40 + 7d04: 4f02042f movi v15.4s, #0x41 + 7d08: 4f02044f movi v15.4s, #0x42 + 7d0c: 4f02046f movi v15.4s, #0x43 + 7d10: 4f02048f movi v15.4s, #0x44 + 7d14: 4f0204af movi v15.4s, #0x45 + 7d18: 4f0204cf movi v15.4s, #0x46 + 7d1c: 4f0204ef movi v15.4s, #0x47 + 7d20: 4f02050f movi v15.4s, #0x48 + 7d24: 4f02052f movi v15.4s, #0x49 + 7d28: 4f02054f movi v15.4s, #0x4a + 7d2c: 4f02056f movi v15.4s, #0x4b + 7d30: 4f02058f movi v15.4s, #0x4c + 7d34: 4f0205af movi v15.4s, #0x4d + 7d38: 4f0205cf movi v15.4s, #0x4e + 7d3c: 4f0205ef movi v15.4s, #0x4f + 7d40: 4f02060f movi v15.4s, #0x50 + 7d44: 4f02062f movi v15.4s, #0x51 + 7d48: 4f02064f movi v15.4s, #0x52 + 7d4c: 4f02066f movi v15.4s, #0x53 + 7d50: 4f02068f movi v15.4s, #0x54 + 7d54: 4f0206af movi v15.4s, #0x55 + 7d58: 4f0206cf movi v15.4s, #0x56 + 7d5c: 4f0206ef movi v15.4s, #0x57 + 7d60: 4f02070f movi v15.4s, #0x58 + 7d64: 4f02072f movi v15.4s, #0x59 + 7d68: 4f02074f movi v15.4s, #0x5a + 7d6c: 4f02076f movi v15.4s, #0x5b + 7d70: 4f02078f movi v15.4s, #0x5c + 7d74: 4f0207af movi v15.4s, #0x5d + 7d78: 4f0207cf movi v15.4s, #0x5e + 7d7c: 4f0207ef movi v15.4s, #0x5f + 7d80: 4f03040f movi v15.4s, #0x60 + 7d84: 4f03042f movi v15.4s, #0x61 + 7d88: 4f03044f movi v15.4s, #0x62 + 7d8c: 4f03046f movi v15.4s, #0x63 + 7d90: 4f03048f movi v15.4s, #0x64 + 7d94: 4f0304af movi v15.4s, #0x65 + 7d98: 4f0304cf movi v15.4s, #0x66 + 7d9c: 4f0304ef movi v15.4s, #0x67 + 7da0: 4f03050f movi v15.4s, #0x68 + 7da4: 4f03052f movi v15.4s, #0x69 + 7da8: 4f03054f movi v15.4s, #0x6a + 7dac: 4f03056f movi v15.4s, #0x6b + 7db0: 4f03058f movi v15.4s, #0x6c + 7db4: 4f0305af movi v15.4s, #0x6d + 7db8: 4f0305cf movi v15.4s, #0x6e + 7dbc: 4f0305ef movi v15.4s, #0x6f + 7dc0: 4f03060f movi v15.4s, #0x70 + 7dc4: 4f03062f movi v15.4s, #0x71 + 7dc8: 4f03064f movi v15.4s, #0x72 + 7dcc: 4f03066f movi v15.4s, #0x73 + 7dd0: 4f03068f movi v15.4s, #0x74 + 7dd4: 4f0306af movi v15.4s, #0x75 + 7dd8: 4f0306cf movi v15.4s, #0x76 + 7ddc: 4f0306ef movi v15.4s, #0x77 + 7de0: 4f03070f movi v15.4s, #0x78 + 7de4: 4f03072f movi v15.4s, #0x79 + 7de8: 4f03074f movi v15.4s, #0x7a + 7dec: 4f03076f movi v15.4s, #0x7b + 7df0: 4f03078f movi v15.4s, #0x7c + 7df4: 4f0307af movi v15.4s, #0x7d + 7df8: 4f0307cf movi v15.4s, #0x7e + 7dfc: 4f0307ef movi v15.4s, #0x7f + 7e00: 4f04040f movi v15.4s, #0x80 + 7e04: 4f04042f movi v15.4s, #0x81 + 7e08: 4f04044f movi v15.4s, #0x82 + 7e0c: 4f04046f movi v15.4s, #0x83 + 7e10: 4f04048f movi v15.4s, #0x84 + 7e14: 4f0404af movi v15.4s, #0x85 + 7e18: 4f0404cf movi v15.4s, #0x86 + 7e1c: 4f0404ef movi v15.4s, #0x87 + 7e20: 4f04050f movi v15.4s, #0x88 + 7e24: 4f04052f movi v15.4s, #0x89 + 7e28: 4f04054f movi v15.4s, #0x8a + 7e2c: 4f04056f movi v15.4s, #0x8b + 7e30: 4f04058f movi v15.4s, #0x8c + 7e34: 4f0405af movi v15.4s, #0x8d + 7e38: 4f0405cf movi v15.4s, #0x8e + 7e3c: 4f0405ef movi v15.4s, #0x8f + 7e40: 4f04060f movi v15.4s, #0x90 + 7e44: 4f04062f movi v15.4s, #0x91 + 7e48: 4f04064f movi v15.4s, #0x92 + 7e4c: 4f04066f movi v15.4s, #0x93 + 7e50: 4f04068f movi v15.4s, #0x94 + 7e54: 4f0406af movi v15.4s, #0x95 + 7e58: 4f0406cf movi v15.4s, #0x96 + 7e5c: 4f0406ef movi v15.4s, #0x97 + 7e60: 4f04070f movi v15.4s, #0x98 + 7e64: 4f04072f movi v15.4s, #0x99 + 7e68: 4f04074f movi v15.4s, #0x9a + 7e6c: 4f04076f movi v15.4s, #0x9b + 7e70: 4f04078f movi v15.4s, #0x9c + 7e74: 4f0407af movi v15.4s, #0x9d + 7e78: 4f0407cf movi v15.4s, #0x9e + 7e7c: 4f0407ef movi v15.4s, #0x9f + 7e80: 4f05040f movi v15.4s, #0xa0 + 7e84: 4f05042f movi v15.4s, #0xa1 + 7e88: 4f05044f movi v15.4s, #0xa2 + 7e8c: 4f05046f movi v15.4s, #0xa3 + 7e90: 4f05048f movi v15.4s, #0xa4 + 7e94: 4f0504af movi v15.4s, #0xa5 + 7e98: 4f0504cf movi v15.4s, #0xa6 + 7e9c: 4f0504ef movi v15.4s, #0xa7 + 7ea0: 4f05050f movi v15.4s, #0xa8 + 7ea4: 4f05052f movi v15.4s, #0xa9 + 7ea8: 4f05054f movi v15.4s, #0xaa + 7eac: 4f05056f movi v15.4s, #0xab + 7eb0: 4f05058f movi v15.4s, #0xac + 7eb4: 4f0505af movi v15.4s, #0xad + 7eb8: 4f0505cf movi v15.4s, #0xae + 7ebc: 4f0505ef movi v15.4s, #0xaf + 7ec0: 4f05060f movi v15.4s, #0xb0 + 7ec4: 4f05062f movi v15.4s, #0xb1 + 7ec8: 4f05064f movi v15.4s, #0xb2 + 7ecc: 4f05066f movi v15.4s, #0xb3 + 7ed0: 4f05068f movi v15.4s, #0xb4 + 7ed4: 4f0506af movi v15.4s, #0xb5 + 7ed8: 4f0506cf movi v15.4s, #0xb6 + 7edc: 4f0506ef movi v15.4s, #0xb7 + 7ee0: 4f05070f movi v15.4s, #0xb8 + 7ee4: 4f05072f movi v15.4s, #0xb9 + 7ee8: 4f05074f movi v15.4s, #0xba + 7eec: 4f05076f movi v15.4s, #0xbb + 7ef0: 4f05078f movi v15.4s, #0xbc + 7ef4: 4f0507af movi v15.4s, #0xbd + 7ef8: 4f0507cf movi v15.4s, #0xbe + 7efc: 4f0507ef movi v15.4s, #0xbf + 7f00: 4f06040f movi v15.4s, #0xc0 + 7f04: 4f06042f movi v15.4s, #0xc1 + 7f08: 4f06044f movi v15.4s, #0xc2 + 7f0c: 4f06046f movi v15.4s, #0xc3 + 7f10: 4f06048f movi v15.4s, #0xc4 + 7f14: 4f0604af movi v15.4s, #0xc5 + 7f18: 4f0604cf movi v15.4s, #0xc6 + 7f1c: 4f0604ef movi v15.4s, #0xc7 + 7f20: 4f06050f movi v15.4s, #0xc8 + 7f24: 4f06052f movi v15.4s, #0xc9 + 7f28: 4f06054f movi v15.4s, #0xca + 7f2c: 4f06056f movi v15.4s, #0xcb + 7f30: 4f06058f movi v15.4s, #0xcc + 7f34: 4f0605af movi v15.4s, #0xcd + 7f38: 4f0605cf movi v15.4s, #0xce + 7f3c: 4f0605ef movi v15.4s, #0xcf + 7f40: 4f06060f movi v15.4s, #0xd0 + 7f44: 4f06062f movi v15.4s, #0xd1 + 7f48: 4f06064f movi v15.4s, #0xd2 + 7f4c: 4f06066f movi v15.4s, #0xd3 + 7f50: 4f06068f movi v15.4s, #0xd4 + 7f54: 4f0606af movi v15.4s, #0xd5 + 7f58: 4f0606cf movi v15.4s, #0xd6 + 7f5c: 4f0606ef movi v15.4s, #0xd7 + 7f60: 4f06070f movi v15.4s, #0xd8 + 7f64: 4f06072f movi v15.4s, #0xd9 + 7f68: 4f06074f movi v15.4s, #0xda + 7f6c: 4f06076f movi v15.4s, #0xdb + 7f70: 4f06078f movi v15.4s, #0xdc + 7f74: 4f0607af movi v15.4s, #0xdd + 7f78: 4f0607cf movi v15.4s, #0xde + 7f7c: 4f0607ef movi v15.4s, #0xdf + 7f80: 4f07040f movi v15.4s, #0xe0 + 7f84: 4f07042f movi v15.4s, #0xe1 + 7f88: 4f07044f movi v15.4s, #0xe2 + 7f8c: 4f07046f movi v15.4s, #0xe3 + 7f90: 4f07048f movi v15.4s, #0xe4 + 7f94: 4f0704af movi v15.4s, #0xe5 + 7f98: 4f0704cf movi v15.4s, #0xe6 + 7f9c: 4f0704ef movi v15.4s, #0xe7 + 7fa0: 4f07050f movi v15.4s, #0xe8 + 7fa4: 4f07052f movi v15.4s, #0xe9 + 7fa8: 4f07054f movi v15.4s, #0xea + 7fac: 4f07056f movi v15.4s, #0xeb + 7fb0: 4f07058f movi v15.4s, #0xec + 7fb4: 4f0705af movi v15.4s, #0xed + 7fb8: 4f0705cf movi v15.4s, #0xee + 7fbc: 4f0705ef movi v15.4s, #0xef + 7fc0: 4f07060f movi v15.4s, #0xf0 + 7fc4: 4f07062f movi v15.4s, #0xf1 + 7fc8: 4f07064f movi v15.4s, #0xf2 + 7fcc: 4f07066f movi v15.4s, #0xf3 + 7fd0: 4f07068f movi v15.4s, #0xf4 + 7fd4: 4f0706af movi v15.4s, #0xf5 + 7fd8: 4f0706cf movi v15.4s, #0xf6 + 7fdc: 4f0706ef movi v15.4s, #0xf7 + 7fe0: 4f07070f movi v15.4s, #0xf8 + 7fe4: 4f07072f movi v15.4s, #0xf9 + 7fe8: 4f07074f movi v15.4s, #0xfa + 7fec: 4f07076f movi v15.4s, #0xfb + 7ff0: 4f07078f movi v15.4s, #0xfc + 7ff4: 4f0707af movi v15.4s, #0xfd + 7ff8: 4f0707cf movi v15.4s, #0xfe + 7ffc: 4f0707ef movi v15.4s, #0xff + 8000: 6f07e7e0 movi v0.2d, #0xffffffffffffffff + 8004: 6f07e7e0 movi v0.2d, #0xffffffffffffffff + 8008: 6f07e7e0 movi v0.2d, #0xffffffffffffffff + 800c: 2f07e7ff movi d31, #0xffffffffffffffff diff --git a/gas/testsuite/gas/aarch64/movi.s b/gas/testsuite/gas/aarch64/movi.s new file mode 100644 index 0000000..99ca34a --- /dev/null +++ b/gas/testsuite/gas/aarch64/movi.s @@ -0,0 +1,104 @@ +// movi.s Test file for AArch64 AdvSIMD modified immediate instruction MOVI + + .text + + .macro all_64bit_mask_movi dst + .irp b7, 0, 0xff00000000000000 + .irp b6, 0, 0xff000000000000 + .irp b5, 0, 0xff0000000000 + .irp b4, 0, 0xff00000000 + .irp b3, 0, 0xff000000 + .irp b2, 0, 0xff0000 + .irp b1, 0, 0xff00 + .irp b0, 0, 0xff + movi \dst, \b7 + \b6 + \b5 + \b4 + \b3 + \b2 + \b1 + \b0 + .endr + .endr + .endr + .endr + .endr + .endr + .endr + .endr + .endm + + // MOVI <Dd>, #<imm> + // MOVI <Vd>.2D, #<imm> + all_64bit_mask_movi d31 + all_64bit_mask_movi v15.2d + + + .macro all_8bit_imm_movi dst, from=0, to=255 + movi \dst, \from + .if \to-\from + all_8bit_imm_movi \dst, "(\from+1)", \to + .endif + .endm + + // Per byte + // MOVI <Vd>.<T>, #<imm8> + .irp T, 8b, 16b + all_8bit_imm_movi v15.\T, 0, 63 + all_8bit_imm_movi v15.\T, 64, 127 + all_8bit_imm_movi v15.\T, 128, 191 + all_8bit_imm_movi v15.\T, 192, 255 + .endr + + + .macro all_8bit_imm_movi_sft dst, from=0, to=255, shift_op, amount + movi \dst, \from, \shift_op \amount + .if \to-\from + all_8bit_imm_movi_sft \dst, "(\from+1)", \to, \shift_op, \amount + .endif + .endm + + // Shift ones, per word + // MOVI <Vd>.<T>, #<imm8>, MSL #<amount> + .irp T, 2s, 4s + .irp amount, 8, 16 + // Have to break into four chunks to avoid "Fatal error: macros nested + // too deeply". + all_8bit_imm_movi_sft v7.\T, 0, 63, MSL, \amount + all_8bit_imm_movi_sft v7.\T, 64, 127, MSL, \amount + all_8bit_imm_movi_sft v7.\T, 128, 191, MSL, \amount + all_8bit_imm_movi_sft v7.\T, 192, 255, MSL, \amount + .endr + .endr + + + // Shift zeros, per halfword + // MOVI <Vd>.<T>, #<imm8> {, LSL #<amount>} + .irp T, 4h, 8h + .irp amount, 0, 8 + all_8bit_imm_movi_sft v7.\T, 0, 63, LSL, \amount + all_8bit_imm_movi_sft v7.\T, 64, 127, LSL, \amount + all_8bit_imm_movi_sft v7.\T, 128, 191, LSL, \amount + all_8bit_imm_movi_sft v7.\T, 192, 255, LSL, \amount + all_8bit_imm_movi v15.\T, 0, 63 + all_8bit_imm_movi v15.\T, 64, 127 + all_8bit_imm_movi v15.\T, 128, 191 + all_8bit_imm_movi v15.\T, 192, 255 + .endr + .endr + + + // Shift zeros, per word + // MOVI <Vd>.<T>, #<imm8> {, LSL #<amount>} + .irp T, 2s, 4s + .irp amount, 0, 8, 16, 24 + all_8bit_imm_movi_sft v7.\T, 0, 63, LSL, \amount + all_8bit_imm_movi_sft v7.\T, 64, 127, LSL, \amount + all_8bit_imm_movi_sft v7.\T, 128, 191, LSL, \amount + all_8bit_imm_movi_sft v7.\T, 192, 255, LSL, \amount + all_8bit_imm_movi v15.\T, 0, 63 + all_8bit_imm_movi v15.\T, 64, 127 + all_8bit_imm_movi v15.\T, 128, 191 + all_8bit_imm_movi v15.\T, 192, 255 + .endr + .endr + + movi v0.2d, 18446744073709551615 + movi v0.2d, -1 + movi v0.2d, bignum + movi d31, 18446744073709551615 +.set bignum, 0xffffffffffffffff diff --git a/gas/testsuite/gas/aarch64/msr.d b/gas/testsuite/gas/aarch64/msr.d new file mode 100644 index 0000000..c6c3220 --- /dev/null +++ b/gas/testsuite/gas/aarch64/msr.d @@ -0,0 +1,15 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: d50340df msr daifset, #0x0 + 4: d50341df msr daifset, #0x1 + 8: d5034fdf msr daifset, #0xf + c: d50340ff msr daifclr, #0x0 + 10: d50341ff msr daifclr, #0x1 + 14: d5034fff msr daifclr, #0xf + 18: d51b4220 msr daif, x0 + 1c: d53b4220 mrs x0, daif diff --git a/gas/testsuite/gas/aarch64/msr.s b/gas/testsuite/gas/aarch64/msr.s new file mode 100644 index 0000000..9f67d98 --- /dev/null +++ b/gas/testsuite/gas/aarch64/msr.s @@ -0,0 +1,33 @@ +/* + Copyright 2011, 2012 Free Software Foundation, Inc. + Contributed by ARM Ltd. + + This file is part of GAS. + + GAS 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. + + GAS 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; see the file COPYING3. If not, + see <http://www.gnu.org/licenses/>. */ + +func: + msr daifset, #0 + msr daifset, #1 + msr daifset, #15 + + + + msr daifclr, #0 + msr daifclr, #1 + msr daifclr, #15 + + msr daif, x0 + mrs x0, daif diff --git a/gas/testsuite/gas/aarch64/neon-fp-cvt-int.d b/gas/testsuite/gas/aarch64/neon-fp-cvt-int.d new file mode 100644 index 0000000..96441af --- /dev/null +++ b/gas/testsuite/gas/aarch64/neon-fp-cvt-int.d @@ -0,0 +1,963 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: 0e21a8e7 fcvtns v7.2s, v7.2s + 4: 2e21a8e7 fcvtnu v7.2s, v7.2s + 8: 0ea1a8e7 fcvtps v7.2s, v7.2s + c: 2ea1a8e7 fcvtpu v7.2s, v7.2s + 10: 0e21d8e7 scvtf v7.2s, v7.2s + 14: 2e21d8e7 ucvtf v7.2s, v7.2s + 18: 0e21b8e7 fcvtms v7.2s, v7.2s + 1c: 2e21b8e7 fcvtmu v7.2s, v7.2s + 20: 0ea1b8e7 fcvtzs v7.2s, v7.2s + 24: 2ea1b8e7 fcvtzu v7.2s, v7.2s + 28: 0e21c8e7 fcvtas v7.2s, v7.2s + 2c: 2e21c8e7 fcvtau v7.2s, v7.2s + 30: 4e21a8e7 fcvtns v7.4s, v7.4s + 34: 6e21a8e7 fcvtnu v7.4s, v7.4s + 38: 4ea1a8e7 fcvtps v7.4s, v7.4s + 3c: 6ea1a8e7 fcvtpu v7.4s, v7.4s + 40: 4e21d8e7 scvtf v7.4s, v7.4s + 44: 6e21d8e7 ucvtf v7.4s, v7.4s + 48: 4e21b8e7 fcvtms v7.4s, v7.4s + 4c: 6e21b8e7 fcvtmu v7.4s, v7.4s + 50: 4ea1b8e7 fcvtzs v7.4s, v7.4s + 54: 6ea1b8e7 fcvtzu v7.4s, v7.4s + 58: 4e21c8e7 fcvtas v7.4s, v7.4s + 5c: 6e21c8e7 fcvtau v7.4s, v7.4s + 60: 4e61a8e7 fcvtns v7.2d, v7.2d + 64: 6e61a8e7 fcvtnu v7.2d, v7.2d + 68: 4ee1a8e7 fcvtps v7.2d, v7.2d + 6c: 6ee1a8e7 fcvtpu v7.2d, v7.2d + 70: 4e61d8e7 scvtf v7.2d, v7.2d + 74: 6e61d8e7 ucvtf v7.2d, v7.2d + 78: 4e61b8e7 fcvtms v7.2d, v7.2d + 7c: 6e61b8e7 fcvtmu v7.2d, v7.2d + 80: 4ee1b8e7 fcvtzs v7.2d, v7.2d + 84: 6ee1b8e7 fcvtzu v7.2d, v7.2d + 88: 4e61c8e7 fcvtas v7.2d, v7.2d + 8c: 6e61c8e7 fcvtau v7.2d, v7.2d + 90: 5e21a8e7 fcvtns s7, s7 + 94: 7e21a8e7 fcvtnu s7, s7 + 98: 5ea1a8e7 fcvtps s7, s7 + 9c: 7ea1a8e7 fcvtpu s7, s7 + a0: 5e21d8e7 scvtf s7, s7 + a4: 7e21d8e7 ucvtf s7, s7 + a8: 5e21b8e7 fcvtms s7, s7 + ac: 7e21b8e7 fcvtmu s7, s7 + b0: 5ea1b8e7 fcvtzs s7, s7 + b4: 7ea1b8e7 fcvtzu s7, s7 + b8: 5e21c8e7 fcvtas s7, s7 + bc: 7e21c8e7 fcvtau s7, s7 + c0: 5e61a8e7 fcvtns d7, d7 + c4: 7e61a8e7 fcvtnu d7, d7 + c8: 5ee1a8e7 fcvtps d7, d7 + cc: 7ee1a8e7 fcvtpu d7, d7 + d0: 5e61d8e7 scvtf d7, d7 + d4: 7e61d8e7 ucvtf d7, d7 + d8: 5e61b8e7 fcvtms d7, d7 + dc: 7e61b8e7 fcvtmu d7, d7 + e0: 5ee1b8e7 fcvtzs d7, d7 + e4: 7ee1b8e7 fcvtzu d7, d7 + e8: 5e61c8e7 fcvtas d7, d7 + ec: 7e61c8e7 fcvtau d7, d7 + f0: 0f3fe4e7 scvtf v7.2s, v7.2s, #1 + f4: 2f3fe4e7 ucvtf v7.2s, v7.2s, #1 + f8: 0f3ffce7 fcvtzs v7.2s, v7.2s, #1 + fc: 2f3ffce7 fcvtzu v7.2s, v7.2s, #1 + 100: 4f3fe4e7 scvtf v7.4s, v7.4s, #1 + 104: 6f3fe4e7 ucvtf v7.4s, v7.4s, #1 + 108: 4f3ffce7 fcvtzs v7.4s, v7.4s, #1 + 10c: 6f3ffce7 fcvtzu v7.4s, v7.4s, #1 + 110: 4f7fe4e7 scvtf v7.2d, v7.2d, #1 + 114: 6f7fe4e7 ucvtf v7.2d, v7.2d, #1 + 118: 4f7ffce7 fcvtzs v7.2d, v7.2d, #1 + 11c: 6f7ffce7 fcvtzu v7.2d, v7.2d, #1 + 120: 5f3fe4e7 scvtf s7, s7, #1 + 124: 7f3fe4e7 ucvtf s7, s7, #1 + 128: 5f3ffce7 fcvtzs s7, s7, #1 + 12c: 7f3ffce7 fcvtzu s7, s7, #1 + 130: 5f7fe4e7 scvtf d7, d7, #1 + 134: 7f7fe4e7 ucvtf d7, d7, #1 + 138: 5f7ffce7 fcvtzs d7, d7, #1 + 13c: 7f7ffce7 fcvtzu d7, d7, #1 + 140: 0f3ee4e7 scvtf v7.2s, v7.2s, #2 + 144: 2f3ee4e7 ucvtf v7.2s, v7.2s, #2 + 148: 0f3efce7 fcvtzs v7.2s, v7.2s, #2 + 14c: 2f3efce7 fcvtzu v7.2s, v7.2s, #2 + 150: 4f3ee4e7 scvtf v7.4s, v7.4s, #2 + 154: 6f3ee4e7 ucvtf v7.4s, v7.4s, #2 + 158: 4f3efce7 fcvtzs v7.4s, v7.4s, #2 + 15c: 6f3efce7 fcvtzu v7.4s, v7.4s, #2 + 160: 4f7ee4e7 scvtf v7.2d, v7.2d, #2 + 164: 6f7ee4e7 ucvtf v7.2d, v7.2d, #2 + 168: 4f7efce7 fcvtzs v7.2d, v7.2d, #2 + 16c: 6f7efce7 fcvtzu v7.2d, v7.2d, #2 + 170: 5f3ee4e7 scvtf s7, s7, #2 + 174: 7f3ee4e7 ucvtf s7, s7, #2 + 178: 5f3efce7 fcvtzs s7, s7, #2 + 17c: 7f3efce7 fcvtzu s7, s7, #2 + 180: 5f7ee4e7 scvtf d7, d7, #2 + 184: 7f7ee4e7 ucvtf d7, d7, #2 + 188: 5f7efce7 fcvtzs d7, d7, #2 + 18c: 7f7efce7 fcvtzu d7, d7, #2 + 190: 0f3de4e7 scvtf v7.2s, v7.2s, #3 + 194: 2f3de4e7 ucvtf v7.2s, v7.2s, #3 + 198: 0f3dfce7 fcvtzs v7.2s, v7.2s, #3 + 19c: 2f3dfce7 fcvtzu v7.2s, v7.2s, #3 + 1a0: 4f3de4e7 scvtf v7.4s, v7.4s, #3 + 1a4: 6f3de4e7 ucvtf v7.4s, v7.4s, #3 + 1a8: 4f3dfce7 fcvtzs v7.4s, v7.4s, #3 + 1ac: 6f3dfce7 fcvtzu v7.4s, v7.4s, #3 + 1b0: 4f7de4e7 scvtf v7.2d, v7.2d, #3 + 1b4: 6f7de4e7 ucvtf v7.2d, v7.2d, #3 + 1b8: 4f7dfce7 fcvtzs v7.2d, v7.2d, #3 + 1bc: 6f7dfce7 fcvtzu v7.2d, v7.2d, #3 + 1c0: 5f3de4e7 scvtf s7, s7, #3 + 1c4: 7f3de4e7 ucvtf s7, s7, #3 + 1c8: 5f3dfce7 fcvtzs s7, s7, #3 + 1cc: 7f3dfce7 fcvtzu s7, s7, #3 + 1d0: 5f7de4e7 scvtf d7, d7, #3 + 1d4: 7f7de4e7 ucvtf d7, d7, #3 + 1d8: 5f7dfce7 fcvtzs d7, d7, #3 + 1dc: 7f7dfce7 fcvtzu d7, d7, #3 + 1e0: 0f3ce4e7 scvtf v7.2s, v7.2s, #4 + 1e4: 2f3ce4e7 ucvtf v7.2s, v7.2s, #4 + 1e8: 0f3cfce7 fcvtzs v7.2s, v7.2s, #4 + 1ec: 2f3cfce7 fcvtzu v7.2s, v7.2s, #4 + 1f0: 4f3ce4e7 scvtf v7.4s, v7.4s, #4 + 1f4: 6f3ce4e7 ucvtf v7.4s, v7.4s, #4 + 1f8: 4f3cfce7 fcvtzs v7.4s, v7.4s, #4 + 1fc: 6f3cfce7 fcvtzu v7.4s, v7.4s, #4 + 200: 4f7ce4e7 scvtf v7.2d, v7.2d, #4 + 204: 6f7ce4e7 ucvtf v7.2d, v7.2d, #4 + 208: 4f7cfce7 fcvtzs v7.2d, v7.2d, #4 + 20c: 6f7cfce7 fcvtzu v7.2d, v7.2d, #4 + 210: 5f3ce4e7 scvtf s7, s7, #4 + 214: 7f3ce4e7 ucvtf s7, s7, #4 + 218: 5f3cfce7 fcvtzs s7, s7, #4 + 21c: 7f3cfce7 fcvtzu s7, s7, #4 + 220: 5f7ce4e7 scvtf d7, d7, #4 + 224: 7f7ce4e7 ucvtf d7, d7, #4 + 228: 5f7cfce7 fcvtzs d7, d7, #4 + 22c: 7f7cfce7 fcvtzu d7, d7, #4 + 230: 0f3be4e7 scvtf v7.2s, v7.2s, #5 + 234: 2f3be4e7 ucvtf v7.2s, v7.2s, #5 + 238: 0f3bfce7 fcvtzs v7.2s, v7.2s, #5 + 23c: 2f3bfce7 fcvtzu v7.2s, v7.2s, #5 + 240: 4f3be4e7 scvtf v7.4s, v7.4s, #5 + 244: 6f3be4e7 ucvtf v7.4s, v7.4s, #5 + 248: 4f3bfce7 fcvtzs v7.4s, v7.4s, #5 + 24c: 6f3bfce7 fcvtzu v7.4s, v7.4s, #5 + 250: 4f7be4e7 scvtf v7.2d, v7.2d, #5 + 254: 6f7be4e7 ucvtf v7.2d, v7.2d, #5 + 258: 4f7bfce7 fcvtzs v7.2d, v7.2d, #5 + 25c: 6f7bfce7 fcvtzu v7.2d, v7.2d, #5 + 260: 5f3be4e7 scvtf s7, s7, #5 + 264: 7f3be4e7 ucvtf s7, s7, #5 + 268: 5f3bfce7 fcvtzs s7, s7, #5 + 26c: 7f3bfce7 fcvtzu s7, s7, #5 + 270: 5f7be4e7 scvtf d7, d7, #5 + 274: 7f7be4e7 ucvtf d7, d7, #5 + 278: 5f7bfce7 fcvtzs d7, d7, #5 + 27c: 7f7bfce7 fcvtzu d7, d7, #5 + 280: 0f3ae4e7 scvtf v7.2s, v7.2s, #6 + 284: 2f3ae4e7 ucvtf v7.2s, v7.2s, #6 + 288: 0f3afce7 fcvtzs v7.2s, v7.2s, #6 + 28c: 2f3afce7 fcvtzu v7.2s, v7.2s, #6 + 290: 4f3ae4e7 scvtf v7.4s, v7.4s, #6 + 294: 6f3ae4e7 ucvtf v7.4s, v7.4s, #6 + 298: 4f3afce7 fcvtzs v7.4s, v7.4s, #6 + 29c: 6f3afce7 fcvtzu v7.4s, v7.4s, #6 + 2a0: 4f7ae4e7 scvtf v7.2d, v7.2d, #6 + 2a4: 6f7ae4e7 ucvtf v7.2d, v7.2d, #6 + 2a8: 4f7afce7 fcvtzs v7.2d, v7.2d, #6 + 2ac: 6f7afce7 fcvtzu v7.2d, v7.2d, #6 + 2b0: 5f3ae4e7 scvtf s7, s7, #6 + 2b4: 7f3ae4e7 ucvtf s7, s7, #6 + 2b8: 5f3afce7 fcvtzs s7, s7, #6 + 2bc: 7f3afce7 fcvtzu s7, s7, #6 + 2c0: 5f7ae4e7 scvtf d7, d7, #6 + 2c4: 7f7ae4e7 ucvtf d7, d7, #6 + 2c8: 5f7afce7 fcvtzs d7, d7, #6 + 2cc: 7f7afce7 fcvtzu d7, d7, #6 + 2d0: 0f39e4e7 scvtf v7.2s, v7.2s, #7 + 2d4: 2f39e4e7 ucvtf v7.2s, v7.2s, #7 + 2d8: 0f39fce7 fcvtzs v7.2s, v7.2s, #7 + 2dc: 2f39fce7 fcvtzu v7.2s, v7.2s, #7 + 2e0: 4f39e4e7 scvtf v7.4s, v7.4s, #7 + 2e4: 6f39e4e7 ucvtf v7.4s, v7.4s, #7 + 2e8: 4f39fce7 fcvtzs v7.4s, v7.4s, #7 + 2ec: 6f39fce7 fcvtzu v7.4s, v7.4s, #7 + 2f0: 4f79e4e7 scvtf v7.2d, v7.2d, #7 + 2f4: 6f79e4e7 ucvtf v7.2d, v7.2d, #7 + 2f8: 4f79fce7 fcvtzs v7.2d, v7.2d, #7 + 2fc: 6f79fce7 fcvtzu v7.2d, v7.2d, #7 + 300: 5f39e4e7 scvtf s7, s7, #7 + 304: 7f39e4e7 ucvtf s7, s7, #7 + 308: 5f39fce7 fcvtzs s7, s7, #7 + 30c: 7f39fce7 fcvtzu s7, s7, #7 + 310: 5f79e4e7 scvtf d7, d7, #7 + 314: 7f79e4e7 ucvtf d7, d7, #7 + 318: 5f79fce7 fcvtzs d7, d7, #7 + 31c: 7f79fce7 fcvtzu d7, d7, #7 + 320: 0f38e4e7 scvtf v7.2s, v7.2s, #8 + 324: 2f38e4e7 ucvtf v7.2s, v7.2s, #8 + 328: 0f38fce7 fcvtzs v7.2s, v7.2s, #8 + 32c: 2f38fce7 fcvtzu v7.2s, v7.2s, #8 + 330: 4f38e4e7 scvtf v7.4s, v7.4s, #8 + 334: 6f38e4e7 ucvtf v7.4s, v7.4s, #8 + 338: 4f38fce7 fcvtzs v7.4s, v7.4s, #8 + 33c: 6f38fce7 fcvtzu v7.4s, v7.4s, #8 + 340: 4f78e4e7 scvtf v7.2d, v7.2d, #8 + 344: 6f78e4e7 ucvtf v7.2d, v7.2d, #8 + 348: 4f78fce7 fcvtzs v7.2d, v7.2d, #8 + 34c: 6f78fce7 fcvtzu v7.2d, v7.2d, #8 + 350: 5f38e4e7 scvtf s7, s7, #8 + 354: 7f38e4e7 ucvtf s7, s7, #8 + 358: 5f38fce7 fcvtzs s7, s7, #8 + 35c: 7f38fce7 fcvtzu s7, s7, #8 + 360: 5f78e4e7 scvtf d7, d7, #8 + 364: 7f78e4e7 ucvtf d7, d7, #8 + 368: 5f78fce7 fcvtzs d7, d7, #8 + 36c: 7f78fce7 fcvtzu d7, d7, #8 + 370: 0f37e4e7 scvtf v7.2s, v7.2s, #9 + 374: 2f37e4e7 ucvtf v7.2s, v7.2s, #9 + 378: 0f37fce7 fcvtzs v7.2s, v7.2s, #9 + 37c: 2f37fce7 fcvtzu v7.2s, v7.2s, #9 + 380: 4f37e4e7 scvtf v7.4s, v7.4s, #9 + 384: 6f37e4e7 ucvtf v7.4s, v7.4s, #9 + 388: 4f37fce7 fcvtzs v7.4s, v7.4s, #9 + 38c: 6f37fce7 fcvtzu v7.4s, v7.4s, #9 + 390: 4f77e4e7 scvtf v7.2d, v7.2d, #9 + 394: 6f77e4e7 ucvtf v7.2d, v7.2d, #9 + 398: 4f77fce7 fcvtzs v7.2d, v7.2d, #9 + 39c: 6f77fce7 fcvtzu v7.2d, v7.2d, #9 + 3a0: 5f37e4e7 scvtf s7, s7, #9 + 3a4: 7f37e4e7 ucvtf s7, s7, #9 + 3a8: 5f37fce7 fcvtzs s7, s7, #9 + 3ac: 7f37fce7 fcvtzu s7, s7, #9 + 3b0: 5f77e4e7 scvtf d7, d7, #9 + 3b4: 7f77e4e7 ucvtf d7, d7, #9 + 3b8: 5f77fce7 fcvtzs d7, d7, #9 + 3bc: 7f77fce7 fcvtzu d7, d7, #9 + 3c0: 0f36e4e7 scvtf v7.2s, v7.2s, #10 + 3c4: 2f36e4e7 ucvtf v7.2s, v7.2s, #10 + 3c8: 0f36fce7 fcvtzs v7.2s, v7.2s, #10 + 3cc: 2f36fce7 fcvtzu v7.2s, v7.2s, #10 + 3d0: 4f36e4e7 scvtf v7.4s, v7.4s, #10 + 3d4: 6f36e4e7 ucvtf v7.4s, v7.4s, #10 + 3d8: 4f36fce7 fcvtzs v7.4s, v7.4s, #10 + 3dc: 6f36fce7 fcvtzu v7.4s, v7.4s, #10 + 3e0: 4f76e4e7 scvtf v7.2d, v7.2d, #10 + 3e4: 6f76e4e7 ucvtf v7.2d, v7.2d, #10 + 3e8: 4f76fce7 fcvtzs v7.2d, v7.2d, #10 + 3ec: 6f76fce7 fcvtzu v7.2d, v7.2d, #10 + 3f0: 5f36e4e7 scvtf s7, s7, #10 + 3f4: 7f36e4e7 ucvtf s7, s7, #10 + 3f8: 5f36fce7 fcvtzs s7, s7, #10 + 3fc: 7f36fce7 fcvtzu s7, s7, #10 + 400: 5f76e4e7 scvtf d7, d7, #10 + 404: 7f76e4e7 ucvtf d7, d7, #10 + 408: 5f76fce7 fcvtzs d7, d7, #10 + 40c: 7f76fce7 fcvtzu d7, d7, #10 + 410: 0f35e4e7 scvtf v7.2s, v7.2s, #11 + 414: 2f35e4e7 ucvtf v7.2s, v7.2s, #11 + 418: 0f35fce7 fcvtzs v7.2s, v7.2s, #11 + 41c: 2f35fce7 fcvtzu v7.2s, v7.2s, #11 + 420: 4f35e4e7 scvtf v7.4s, v7.4s, #11 + 424: 6f35e4e7 ucvtf v7.4s, v7.4s, #11 + 428: 4f35fce7 fcvtzs v7.4s, v7.4s, #11 + 42c: 6f35fce7 fcvtzu v7.4s, v7.4s, #11 + 430: 4f75e4e7 scvtf v7.2d, v7.2d, #11 + 434: 6f75e4e7 ucvtf v7.2d, v7.2d, #11 + 438: 4f75fce7 fcvtzs v7.2d, v7.2d, #11 + 43c: 6f75fce7 fcvtzu v7.2d, v7.2d, #11 + 440: 5f35e4e7 scvtf s7, s7, #11 + 444: 7f35e4e7 ucvtf s7, s7, #11 + 448: 5f35fce7 fcvtzs s7, s7, #11 + 44c: 7f35fce7 fcvtzu s7, s7, #11 + 450: 5f75e4e7 scvtf d7, d7, #11 + 454: 7f75e4e7 ucvtf d7, d7, #11 + 458: 5f75fce7 fcvtzs d7, d7, #11 + 45c: 7f75fce7 fcvtzu d7, d7, #11 + 460: 0f34e4e7 scvtf v7.2s, v7.2s, #12 + 464: 2f34e4e7 ucvtf v7.2s, v7.2s, #12 + 468: 0f34fce7 fcvtzs v7.2s, v7.2s, #12 + 46c: 2f34fce7 fcvtzu v7.2s, v7.2s, #12 + 470: 4f34e4e7 scvtf v7.4s, v7.4s, #12 + 474: 6f34e4e7 ucvtf v7.4s, v7.4s, #12 + 478: 4f34fce7 fcvtzs v7.4s, v7.4s, #12 + 47c: 6f34fce7 fcvtzu v7.4s, v7.4s, #12 + 480: 4f74e4e7 scvtf v7.2d, v7.2d, #12 + 484: 6f74e4e7 ucvtf v7.2d, v7.2d, #12 + 488: 4f74fce7 fcvtzs v7.2d, v7.2d, #12 + 48c: 6f74fce7 fcvtzu v7.2d, v7.2d, #12 + 490: 5f34e4e7 scvtf s7, s7, #12 + 494: 7f34e4e7 ucvtf s7, s7, #12 + 498: 5f34fce7 fcvtzs s7, s7, #12 + 49c: 7f34fce7 fcvtzu s7, s7, #12 + 4a0: 5f74e4e7 scvtf d7, d7, #12 + 4a4: 7f74e4e7 ucvtf d7, d7, #12 + 4a8: 5f74fce7 fcvtzs d7, d7, #12 + 4ac: 7f74fce7 fcvtzu d7, d7, #12 + 4b0: 0f33e4e7 scvtf v7.2s, v7.2s, #13 + 4b4: 2f33e4e7 ucvtf v7.2s, v7.2s, #13 + 4b8: 0f33fce7 fcvtzs v7.2s, v7.2s, #13 + 4bc: 2f33fce7 fcvtzu v7.2s, v7.2s, #13 + 4c0: 4f33e4e7 scvtf v7.4s, v7.4s, #13 + 4c4: 6f33e4e7 ucvtf v7.4s, v7.4s, #13 + 4c8: 4f33fce7 fcvtzs v7.4s, v7.4s, #13 + 4cc: 6f33fce7 fcvtzu v7.4s, v7.4s, #13 + 4d0: 4f73e4e7 scvtf v7.2d, v7.2d, #13 + 4d4: 6f73e4e7 ucvtf v7.2d, v7.2d, #13 + 4d8: 4f73fce7 fcvtzs v7.2d, v7.2d, #13 + 4dc: 6f73fce7 fcvtzu v7.2d, v7.2d, #13 + 4e0: 5f33e4e7 scvtf s7, s7, #13 + 4e4: 7f33e4e7 ucvtf s7, s7, #13 + 4e8: 5f33fce7 fcvtzs s7, s7, #13 + 4ec: 7f33fce7 fcvtzu s7, s7, #13 + 4f0: 5f73e4e7 scvtf d7, d7, #13 + 4f4: 7f73e4e7 ucvtf d7, d7, #13 + 4f8: 5f73fce7 fcvtzs d7, d7, #13 + 4fc: 7f73fce7 fcvtzu d7, d7, #13 + 500: 0f32e4e7 scvtf v7.2s, v7.2s, #14 + 504: 2f32e4e7 ucvtf v7.2s, v7.2s, #14 + 508: 0f32fce7 fcvtzs v7.2s, v7.2s, #14 + 50c: 2f32fce7 fcvtzu v7.2s, v7.2s, #14 + 510: 4f32e4e7 scvtf v7.4s, v7.4s, #14 + 514: 6f32e4e7 ucvtf v7.4s, v7.4s, #14 + 518: 4f32fce7 fcvtzs v7.4s, v7.4s, #14 + 51c: 6f32fce7 fcvtzu v7.4s, v7.4s, #14 + 520: 4f72e4e7 scvtf v7.2d, v7.2d, #14 + 524: 6f72e4e7 ucvtf v7.2d, v7.2d, #14 + 528: 4f72fce7 fcvtzs v7.2d, v7.2d, #14 + 52c: 6f72fce7 fcvtzu v7.2d, v7.2d, #14 + 530: 5f32e4e7 scvtf s7, s7, #14 + 534: 7f32e4e7 ucvtf s7, s7, #14 + 538: 5f32fce7 fcvtzs s7, s7, #14 + 53c: 7f32fce7 fcvtzu s7, s7, #14 + 540: 5f72e4e7 scvtf d7, d7, #14 + 544: 7f72e4e7 ucvtf d7, d7, #14 + 548: 5f72fce7 fcvtzs d7, d7, #14 + 54c: 7f72fce7 fcvtzu d7, d7, #14 + 550: 0f31e4e7 scvtf v7.2s, v7.2s, #15 + 554: 2f31e4e7 ucvtf v7.2s, v7.2s, #15 + 558: 0f31fce7 fcvtzs v7.2s, v7.2s, #15 + 55c: 2f31fce7 fcvtzu v7.2s, v7.2s, #15 + 560: 4f31e4e7 scvtf v7.4s, v7.4s, #15 + 564: 6f31e4e7 ucvtf v7.4s, v7.4s, #15 + 568: 4f31fce7 fcvtzs v7.4s, v7.4s, #15 + 56c: 6f31fce7 fcvtzu v7.4s, v7.4s, #15 + 570: 4f71e4e7 scvtf v7.2d, v7.2d, #15 + 574: 6f71e4e7 ucvtf v7.2d, v7.2d, #15 + 578: 4f71fce7 fcvtzs v7.2d, v7.2d, #15 + 57c: 6f71fce7 fcvtzu v7.2d, v7.2d, #15 + 580: 5f31e4e7 scvtf s7, s7, #15 + 584: 7f31e4e7 ucvtf s7, s7, #15 + 588: 5f31fce7 fcvtzs s7, s7, #15 + 58c: 7f31fce7 fcvtzu s7, s7, #15 + 590: 5f71e4e7 scvtf d7, d7, #15 + 594: 7f71e4e7 ucvtf d7, d7, #15 + 598: 5f71fce7 fcvtzs d7, d7, #15 + 59c: 7f71fce7 fcvtzu d7, d7, #15 + 5a0: 0f30e4e7 scvtf v7.2s, v7.2s, #16 + 5a4: 2f30e4e7 ucvtf v7.2s, v7.2s, #16 + 5a8: 0f30fce7 fcvtzs v7.2s, v7.2s, #16 + 5ac: 2f30fce7 fcvtzu v7.2s, v7.2s, #16 + 5b0: 4f30e4e7 scvtf v7.4s, v7.4s, #16 + 5b4: 6f30e4e7 ucvtf v7.4s, v7.4s, #16 + 5b8: 4f30fce7 fcvtzs v7.4s, v7.4s, #16 + 5bc: 6f30fce7 fcvtzu v7.4s, v7.4s, #16 + 5c0: 4f70e4e7 scvtf v7.2d, v7.2d, #16 + 5c4: 6f70e4e7 ucvtf v7.2d, v7.2d, #16 + 5c8: 4f70fce7 fcvtzs v7.2d, v7.2d, #16 + 5cc: 6f70fce7 fcvtzu v7.2d, v7.2d, #16 + 5d0: 5f30e4e7 scvtf s7, s7, #16 + 5d4: 7f30e4e7 ucvtf s7, s7, #16 + 5d8: 5f30fce7 fcvtzs s7, s7, #16 + 5dc: 7f30fce7 fcvtzu s7, s7, #16 + 5e0: 5f70e4e7 scvtf d7, d7, #16 + 5e4: 7f70e4e7 ucvtf d7, d7, #16 + 5e8: 5f70fce7 fcvtzs d7, d7, #16 + 5ec: 7f70fce7 fcvtzu d7, d7, #16 + 5f0: 0f2fe4e7 scvtf v7.2s, v7.2s, #17 + 5f4: 2f2fe4e7 ucvtf v7.2s, v7.2s, #17 + 5f8: 0f2ffce7 fcvtzs v7.2s, v7.2s, #17 + 5fc: 2f2ffce7 fcvtzu v7.2s, v7.2s, #17 + 600: 4f2fe4e7 scvtf v7.4s, v7.4s, #17 + 604: 6f2fe4e7 ucvtf v7.4s, v7.4s, #17 + 608: 4f2ffce7 fcvtzs v7.4s, v7.4s, #17 + 60c: 6f2ffce7 fcvtzu v7.4s, v7.4s, #17 + 610: 4f6fe4e7 scvtf v7.2d, v7.2d, #17 + 614: 6f6fe4e7 ucvtf v7.2d, v7.2d, #17 + 618: 4f6ffce7 fcvtzs v7.2d, v7.2d, #17 + 61c: 6f6ffce7 fcvtzu v7.2d, v7.2d, #17 + 620: 5f2fe4e7 scvtf s7, s7, #17 + 624: 7f2fe4e7 ucvtf s7, s7, #17 + 628: 5f2ffce7 fcvtzs s7, s7, #17 + 62c: 7f2ffce7 fcvtzu s7, s7, #17 + 630: 5f6fe4e7 scvtf d7, d7, #17 + 634: 7f6fe4e7 ucvtf d7, d7, #17 + 638: 5f6ffce7 fcvtzs d7, d7, #17 + 63c: 7f6ffce7 fcvtzu d7, d7, #17 + 640: 0f2ee4e7 scvtf v7.2s, v7.2s, #18 + 644: 2f2ee4e7 ucvtf v7.2s, v7.2s, #18 + 648: 0f2efce7 fcvtzs v7.2s, v7.2s, #18 + 64c: 2f2efce7 fcvtzu v7.2s, v7.2s, #18 + 650: 4f2ee4e7 scvtf v7.4s, v7.4s, #18 + 654: 6f2ee4e7 ucvtf v7.4s, v7.4s, #18 + 658: 4f2efce7 fcvtzs v7.4s, v7.4s, #18 + 65c: 6f2efce7 fcvtzu v7.4s, v7.4s, #18 + 660: 4f6ee4e7 scvtf v7.2d, v7.2d, #18 + 664: 6f6ee4e7 ucvtf v7.2d, v7.2d, #18 + 668: 4f6efce7 fcvtzs v7.2d, v7.2d, #18 + 66c: 6f6efce7 fcvtzu v7.2d, v7.2d, #18 + 670: 5f2ee4e7 scvtf s7, s7, #18 + 674: 7f2ee4e7 ucvtf s7, s7, #18 + 678: 5f2efce7 fcvtzs s7, s7, #18 + 67c: 7f2efce7 fcvtzu s7, s7, #18 + 680: 5f6ee4e7 scvtf d7, d7, #18 + 684: 7f6ee4e7 ucvtf d7, d7, #18 + 688: 5f6efce7 fcvtzs d7, d7, #18 + 68c: 7f6efce7 fcvtzu d7, d7, #18 + 690: 0f2de4e7 scvtf v7.2s, v7.2s, #19 + 694: 2f2de4e7 ucvtf v7.2s, v7.2s, #19 + 698: 0f2dfce7 fcvtzs v7.2s, v7.2s, #19 + 69c: 2f2dfce7 fcvtzu v7.2s, v7.2s, #19 + 6a0: 4f2de4e7 scvtf v7.4s, v7.4s, #19 + 6a4: 6f2de4e7 ucvtf v7.4s, v7.4s, #19 + 6a8: 4f2dfce7 fcvtzs v7.4s, v7.4s, #19 + 6ac: 6f2dfce7 fcvtzu v7.4s, v7.4s, #19 + 6b0: 4f6de4e7 scvtf v7.2d, v7.2d, #19 + 6b4: 6f6de4e7 ucvtf v7.2d, v7.2d, #19 + 6b8: 4f6dfce7 fcvtzs v7.2d, v7.2d, #19 + 6bc: 6f6dfce7 fcvtzu v7.2d, v7.2d, #19 + 6c0: 5f2de4e7 scvtf s7, s7, #19 + 6c4: 7f2de4e7 ucvtf s7, s7, #19 + 6c8: 5f2dfce7 fcvtzs s7, s7, #19 + 6cc: 7f2dfce7 fcvtzu s7, s7, #19 + 6d0: 5f6de4e7 scvtf d7, d7, #19 + 6d4: 7f6de4e7 ucvtf d7, d7, #19 + 6d8: 5f6dfce7 fcvtzs d7, d7, #19 + 6dc: 7f6dfce7 fcvtzu d7, d7, #19 + 6e0: 0f2ce4e7 scvtf v7.2s, v7.2s, #20 + 6e4: 2f2ce4e7 ucvtf v7.2s, v7.2s, #20 + 6e8: 0f2cfce7 fcvtzs v7.2s, v7.2s, #20 + 6ec: 2f2cfce7 fcvtzu v7.2s, v7.2s, #20 + 6f0: 4f2ce4e7 scvtf v7.4s, v7.4s, #20 + 6f4: 6f2ce4e7 ucvtf v7.4s, v7.4s, #20 + 6f8: 4f2cfce7 fcvtzs v7.4s, v7.4s, #20 + 6fc: 6f2cfce7 fcvtzu v7.4s, v7.4s, #20 + 700: 4f6ce4e7 scvtf v7.2d, v7.2d, #20 + 704: 6f6ce4e7 ucvtf v7.2d, v7.2d, #20 + 708: 4f6cfce7 fcvtzs v7.2d, v7.2d, #20 + 70c: 6f6cfce7 fcvtzu v7.2d, v7.2d, #20 + 710: 5f2ce4e7 scvtf s7, s7, #20 + 714: 7f2ce4e7 ucvtf s7, s7, #20 + 718: 5f2cfce7 fcvtzs s7, s7, #20 + 71c: 7f2cfce7 fcvtzu s7, s7, #20 + 720: 5f6ce4e7 scvtf d7, d7, #20 + 724: 7f6ce4e7 ucvtf d7, d7, #20 + 728: 5f6cfce7 fcvtzs d7, d7, #20 + 72c: 7f6cfce7 fcvtzu d7, d7, #20 + 730: 0f2be4e7 scvtf v7.2s, v7.2s, #21 + 734: 2f2be4e7 ucvtf v7.2s, v7.2s, #21 + 738: 0f2bfce7 fcvtzs v7.2s, v7.2s, #21 + 73c: 2f2bfce7 fcvtzu v7.2s, v7.2s, #21 + 740: 4f2be4e7 scvtf v7.4s, v7.4s, #21 + 744: 6f2be4e7 ucvtf v7.4s, v7.4s, #21 + 748: 4f2bfce7 fcvtzs v7.4s, v7.4s, #21 + 74c: 6f2bfce7 fcvtzu v7.4s, v7.4s, #21 + 750: 4f6be4e7 scvtf v7.2d, v7.2d, #21 + 754: 6f6be4e7 ucvtf v7.2d, v7.2d, #21 + 758: 4f6bfce7 fcvtzs v7.2d, v7.2d, #21 + 75c: 6f6bfce7 fcvtzu v7.2d, v7.2d, #21 + 760: 5f2be4e7 scvtf s7, s7, #21 + 764: 7f2be4e7 ucvtf s7, s7, #21 + 768: 5f2bfce7 fcvtzs s7, s7, #21 + 76c: 7f2bfce7 fcvtzu s7, s7, #21 + 770: 5f6be4e7 scvtf d7, d7, #21 + 774: 7f6be4e7 ucvtf d7, d7, #21 + 778: 5f6bfce7 fcvtzs d7, d7, #21 + 77c: 7f6bfce7 fcvtzu d7, d7, #21 + 780: 0f2ae4e7 scvtf v7.2s, v7.2s, #22 + 784: 2f2ae4e7 ucvtf v7.2s, v7.2s, #22 + 788: 0f2afce7 fcvtzs v7.2s, v7.2s, #22 + 78c: 2f2afce7 fcvtzu v7.2s, v7.2s, #22 + 790: 4f2ae4e7 scvtf v7.4s, v7.4s, #22 + 794: 6f2ae4e7 ucvtf v7.4s, v7.4s, #22 + 798: 4f2afce7 fcvtzs v7.4s, v7.4s, #22 + 79c: 6f2afce7 fcvtzu v7.4s, v7.4s, #22 + 7a0: 4f6ae4e7 scvtf v7.2d, v7.2d, #22 + 7a4: 6f6ae4e7 ucvtf v7.2d, v7.2d, #22 + 7a8: 4f6afce7 fcvtzs v7.2d, v7.2d, #22 + 7ac: 6f6afce7 fcvtzu v7.2d, v7.2d, #22 + 7b0: 5f2ae4e7 scvtf s7, s7, #22 + 7b4: 7f2ae4e7 ucvtf s7, s7, #22 + 7b8: 5f2afce7 fcvtzs s7, s7, #22 + 7bc: 7f2afce7 fcvtzu s7, s7, #22 + 7c0: 5f6ae4e7 scvtf d7, d7, #22 + 7c4: 7f6ae4e7 ucvtf d7, d7, #22 + 7c8: 5f6afce7 fcvtzs d7, d7, #22 + 7cc: 7f6afce7 fcvtzu d7, d7, #22 + 7d0: 0f29e4e7 scvtf v7.2s, v7.2s, #23 + 7d4: 2f29e4e7 ucvtf v7.2s, v7.2s, #23 + 7d8: 0f29fce7 fcvtzs v7.2s, v7.2s, #23 + 7dc: 2f29fce7 fcvtzu v7.2s, v7.2s, #23 + 7e0: 4f29e4e7 scvtf v7.4s, v7.4s, #23 + 7e4: 6f29e4e7 ucvtf v7.4s, v7.4s, #23 + 7e8: 4f29fce7 fcvtzs v7.4s, v7.4s, #23 + 7ec: 6f29fce7 fcvtzu v7.4s, v7.4s, #23 + 7f0: 4f69e4e7 scvtf v7.2d, v7.2d, #23 + 7f4: 6f69e4e7 ucvtf v7.2d, v7.2d, #23 + 7f8: 4f69fce7 fcvtzs v7.2d, v7.2d, #23 + 7fc: 6f69fce7 fcvtzu v7.2d, v7.2d, #23 + 800: 5f29e4e7 scvtf s7, s7, #23 + 804: 7f29e4e7 ucvtf s7, s7, #23 + 808: 5f29fce7 fcvtzs s7, s7, #23 + 80c: 7f29fce7 fcvtzu s7, s7, #23 + 810: 5f69e4e7 scvtf d7, d7, #23 + 814: 7f69e4e7 ucvtf d7, d7, #23 + 818: 5f69fce7 fcvtzs d7, d7, #23 + 81c: 7f69fce7 fcvtzu d7, d7, #23 + 820: 0f28e4e7 scvtf v7.2s, v7.2s, #24 + 824: 2f28e4e7 ucvtf v7.2s, v7.2s, #24 + 828: 0f28fce7 fcvtzs v7.2s, v7.2s, #24 + 82c: 2f28fce7 fcvtzu v7.2s, v7.2s, #24 + 830: 4f28e4e7 scvtf v7.4s, v7.4s, #24 + 834: 6f28e4e7 ucvtf v7.4s, v7.4s, #24 + 838: 4f28fce7 fcvtzs v7.4s, v7.4s, #24 + 83c: 6f28fce7 fcvtzu v7.4s, v7.4s, #24 + 840: 4f68e4e7 scvtf v7.2d, v7.2d, #24 + 844: 6f68e4e7 ucvtf v7.2d, v7.2d, #24 + 848: 4f68fce7 fcvtzs v7.2d, v7.2d, #24 + 84c: 6f68fce7 fcvtzu v7.2d, v7.2d, #24 + 850: 5f28e4e7 scvtf s7, s7, #24 + 854: 7f28e4e7 ucvtf s7, s7, #24 + 858: 5f28fce7 fcvtzs s7, s7, #24 + 85c: 7f28fce7 fcvtzu s7, s7, #24 + 860: 5f68e4e7 scvtf d7, d7, #24 + 864: 7f68e4e7 ucvtf d7, d7, #24 + 868: 5f68fce7 fcvtzs d7, d7, #24 + 86c: 7f68fce7 fcvtzu d7, d7, #24 + 870: 0f27e4e7 scvtf v7.2s, v7.2s, #25 + 874: 2f27e4e7 ucvtf v7.2s, v7.2s, #25 + 878: 0f27fce7 fcvtzs v7.2s, v7.2s, #25 + 87c: 2f27fce7 fcvtzu v7.2s, v7.2s, #25 + 880: 4f27e4e7 scvtf v7.4s, v7.4s, #25 + 884: 6f27e4e7 ucvtf v7.4s, v7.4s, #25 + 888: 4f27fce7 fcvtzs v7.4s, v7.4s, #25 + 88c: 6f27fce7 fcvtzu v7.4s, v7.4s, #25 + 890: 4f67e4e7 scvtf v7.2d, v7.2d, #25 + 894: 6f67e4e7 ucvtf v7.2d, v7.2d, #25 + 898: 4f67fce7 fcvtzs v7.2d, v7.2d, #25 + 89c: 6f67fce7 fcvtzu v7.2d, v7.2d, #25 + 8a0: 5f27e4e7 scvtf s7, s7, #25 + 8a4: 7f27e4e7 ucvtf s7, s7, #25 + 8a8: 5f27fce7 fcvtzs s7, s7, #25 + 8ac: 7f27fce7 fcvtzu s7, s7, #25 + 8b0: 5f67e4e7 scvtf d7, d7, #25 + 8b4: 7f67e4e7 ucvtf d7, d7, #25 + 8b8: 5f67fce7 fcvtzs d7, d7, #25 + 8bc: 7f67fce7 fcvtzu d7, d7, #25 + 8c0: 0f26e4e7 scvtf v7.2s, v7.2s, #26 + 8c4: 2f26e4e7 ucvtf v7.2s, v7.2s, #26 + 8c8: 0f26fce7 fcvtzs v7.2s, v7.2s, #26 + 8cc: 2f26fce7 fcvtzu v7.2s, v7.2s, #26 + 8d0: 4f26e4e7 scvtf v7.4s, v7.4s, #26 + 8d4: 6f26e4e7 ucvtf v7.4s, v7.4s, #26 + 8d8: 4f26fce7 fcvtzs v7.4s, v7.4s, #26 + 8dc: 6f26fce7 fcvtzu v7.4s, v7.4s, #26 + 8e0: 4f66e4e7 scvtf v7.2d, v7.2d, #26 + 8e4: 6f66e4e7 ucvtf v7.2d, v7.2d, #26 + 8e8: 4f66fce7 fcvtzs v7.2d, v7.2d, #26 + 8ec: 6f66fce7 fcvtzu v7.2d, v7.2d, #26 + 8f0: 5f26e4e7 scvtf s7, s7, #26 + 8f4: 7f26e4e7 ucvtf s7, s7, #26 + 8f8: 5f26fce7 fcvtzs s7, s7, #26 + 8fc: 7f26fce7 fcvtzu s7, s7, #26 + 900: 5f66e4e7 scvtf d7, d7, #26 + 904: 7f66e4e7 ucvtf d7, d7, #26 + 908: 5f66fce7 fcvtzs d7, d7, #26 + 90c: 7f66fce7 fcvtzu d7, d7, #26 + 910: 0f25e4e7 scvtf v7.2s, v7.2s, #27 + 914: 2f25e4e7 ucvtf v7.2s, v7.2s, #27 + 918: 0f25fce7 fcvtzs v7.2s, v7.2s, #27 + 91c: 2f25fce7 fcvtzu v7.2s, v7.2s, #27 + 920: 4f25e4e7 scvtf v7.4s, v7.4s, #27 + 924: 6f25e4e7 ucvtf v7.4s, v7.4s, #27 + 928: 4f25fce7 fcvtzs v7.4s, v7.4s, #27 + 92c: 6f25fce7 fcvtzu v7.4s, v7.4s, #27 + 930: 4f65e4e7 scvtf v7.2d, v7.2d, #27 + 934: 6f65e4e7 ucvtf v7.2d, v7.2d, #27 + 938: 4f65fce7 fcvtzs v7.2d, v7.2d, #27 + 93c: 6f65fce7 fcvtzu v7.2d, v7.2d, #27 + 940: 5f25e4e7 scvtf s7, s7, #27 + 944: 7f25e4e7 ucvtf s7, s7, #27 + 948: 5f25fce7 fcvtzs s7, s7, #27 + 94c: 7f25fce7 fcvtzu s7, s7, #27 + 950: 5f65e4e7 scvtf d7, d7, #27 + 954: 7f65e4e7 ucvtf d7, d7, #27 + 958: 5f65fce7 fcvtzs d7, d7, #27 + 95c: 7f65fce7 fcvtzu d7, d7, #27 + 960: 0f24e4e7 scvtf v7.2s, v7.2s, #28 + 964: 2f24e4e7 ucvtf v7.2s, v7.2s, #28 + 968: 0f24fce7 fcvtzs v7.2s, v7.2s, #28 + 96c: 2f24fce7 fcvtzu v7.2s, v7.2s, #28 + 970: 4f24e4e7 scvtf v7.4s, v7.4s, #28 + 974: 6f24e4e7 ucvtf v7.4s, v7.4s, #28 + 978: 4f24fce7 fcvtzs v7.4s, v7.4s, #28 + 97c: 6f24fce7 fcvtzu v7.4s, v7.4s, #28 + 980: 4f64e4e7 scvtf v7.2d, v7.2d, #28 + 984: 6f64e4e7 ucvtf v7.2d, v7.2d, #28 + 988: 4f64fce7 fcvtzs v7.2d, v7.2d, #28 + 98c: 6f64fce7 fcvtzu v7.2d, v7.2d, #28 + 990: 5f24e4e7 scvtf s7, s7, #28 + 994: 7f24e4e7 ucvtf s7, s7, #28 + 998: 5f24fce7 fcvtzs s7, s7, #28 + 99c: 7f24fce7 fcvtzu s7, s7, #28 + 9a0: 5f64e4e7 scvtf d7, d7, #28 + 9a4: 7f64e4e7 ucvtf d7, d7, #28 + 9a8: 5f64fce7 fcvtzs d7, d7, #28 + 9ac: 7f64fce7 fcvtzu d7, d7, #28 + 9b0: 0f23e4e7 scvtf v7.2s, v7.2s, #29 + 9b4: 2f23e4e7 ucvtf v7.2s, v7.2s, #29 + 9b8: 0f23fce7 fcvtzs v7.2s, v7.2s, #29 + 9bc: 2f23fce7 fcvtzu v7.2s, v7.2s, #29 + 9c0: 4f23e4e7 scvtf v7.4s, v7.4s, #29 + 9c4: 6f23e4e7 ucvtf v7.4s, v7.4s, #29 + 9c8: 4f23fce7 fcvtzs v7.4s, v7.4s, #29 + 9cc: 6f23fce7 fcvtzu v7.4s, v7.4s, #29 + 9d0: 4f63e4e7 scvtf v7.2d, v7.2d, #29 + 9d4: 6f63e4e7 ucvtf v7.2d, v7.2d, #29 + 9d8: 4f63fce7 fcvtzs v7.2d, v7.2d, #29 + 9dc: 6f63fce7 fcvtzu v7.2d, v7.2d, #29 + 9e0: 5f23e4e7 scvtf s7, s7, #29 + 9e4: 7f23e4e7 ucvtf s7, s7, #29 + 9e8: 5f23fce7 fcvtzs s7, s7, #29 + 9ec: 7f23fce7 fcvtzu s7, s7, #29 + 9f0: 5f63e4e7 scvtf d7, d7, #29 + 9f4: 7f63e4e7 ucvtf d7, d7, #29 + 9f8: 5f63fce7 fcvtzs d7, d7, #29 + 9fc: 7f63fce7 fcvtzu d7, d7, #29 + a00: 0f22e4e7 scvtf v7.2s, v7.2s, #30 + a04: 2f22e4e7 ucvtf v7.2s, v7.2s, #30 + a08: 0f22fce7 fcvtzs v7.2s, v7.2s, #30 + a0c: 2f22fce7 fcvtzu v7.2s, v7.2s, #30 + a10: 4f22e4e7 scvtf v7.4s, v7.4s, #30 + a14: 6f22e4e7 ucvtf v7.4s, v7.4s, #30 + a18: 4f22fce7 fcvtzs v7.4s, v7.4s, #30 + a1c: 6f22fce7 fcvtzu v7.4s, v7.4s, #30 + a20: 4f62e4e7 scvtf v7.2d, v7.2d, #30 + a24: 6f62e4e7 ucvtf v7.2d, v7.2d, #30 + a28: 4f62fce7 fcvtzs v7.2d, v7.2d, #30 + a2c: 6f62fce7 fcvtzu v7.2d, v7.2d, #30 + a30: 5f22e4e7 scvtf s7, s7, #30 + a34: 7f22e4e7 ucvtf s7, s7, #30 + a38: 5f22fce7 fcvtzs s7, s7, #30 + a3c: 7f22fce7 fcvtzu s7, s7, #30 + a40: 5f62e4e7 scvtf d7, d7, #30 + a44: 7f62e4e7 ucvtf d7, d7, #30 + a48: 5f62fce7 fcvtzs d7, d7, #30 + a4c: 7f62fce7 fcvtzu d7, d7, #30 + a50: 0f21e4e7 scvtf v7.2s, v7.2s, #31 + a54: 2f21e4e7 ucvtf v7.2s, v7.2s, #31 + a58: 0f21fce7 fcvtzs v7.2s, v7.2s, #31 + a5c: 2f21fce7 fcvtzu v7.2s, v7.2s, #31 + a60: 4f21e4e7 scvtf v7.4s, v7.4s, #31 + a64: 6f21e4e7 ucvtf v7.4s, v7.4s, #31 + a68: 4f21fce7 fcvtzs v7.4s, v7.4s, #31 + a6c: 6f21fce7 fcvtzu v7.4s, v7.4s, #31 + a70: 4f61e4e7 scvtf v7.2d, v7.2d, #31 + a74: 6f61e4e7 ucvtf v7.2d, v7.2d, #31 + a78: 4f61fce7 fcvtzs v7.2d, v7.2d, #31 + a7c: 6f61fce7 fcvtzu v7.2d, v7.2d, #31 + a80: 5f21e4e7 scvtf s7, s7, #31 + a84: 7f21e4e7 ucvtf s7, s7, #31 + a88: 5f21fce7 fcvtzs s7, s7, #31 + a8c: 7f21fce7 fcvtzu s7, s7, #31 + a90: 5f61e4e7 scvtf d7, d7, #31 + a94: 7f61e4e7 ucvtf d7, d7, #31 + a98: 5f61fce7 fcvtzs d7, d7, #31 + a9c: 7f61fce7 fcvtzu d7, d7, #31 + aa0: 0f20e4e7 scvtf v7.2s, v7.2s, #32 + aa4: 2f20e4e7 ucvtf v7.2s, v7.2s, #32 + aa8: 0f20fce7 fcvtzs v7.2s, v7.2s, #32 + aac: 2f20fce7 fcvtzu v7.2s, v7.2s, #32 + ab0: 4f20e4e7 scvtf v7.4s, v7.4s, #32 + ab4: 6f20e4e7 ucvtf v7.4s, v7.4s, #32 + ab8: 4f20fce7 fcvtzs v7.4s, v7.4s, #32 + abc: 6f20fce7 fcvtzu v7.4s, v7.4s, #32 + ac0: 4f60e4e7 scvtf v7.2d, v7.2d, #32 + ac4: 6f60e4e7 ucvtf v7.2d, v7.2d, #32 + ac8: 4f60fce7 fcvtzs v7.2d, v7.2d, #32 + acc: 6f60fce7 fcvtzu v7.2d, v7.2d, #32 + ad0: 5f20e4e7 scvtf s7, s7, #32 + ad4: 7f20e4e7 ucvtf s7, s7, #32 + ad8: 5f20fce7 fcvtzs s7, s7, #32 + adc: 7f20fce7 fcvtzu s7, s7, #32 + ae0: 5f60e4e7 scvtf d7, d7, #32 + ae4: 7f60e4e7 ucvtf d7, d7, #32 + ae8: 5f60fce7 fcvtzs d7, d7, #32 + aec: 7f60fce7 fcvtzu d7, d7, #32 + af0: 4f5fe4e7 scvtf v7.2d, v7.2d, #33 + af4: 6f5fe4e7 ucvtf v7.2d, v7.2d, #33 + af8: 4f5ffce7 fcvtzs v7.2d, v7.2d, #33 + afc: 6f5ffce7 fcvtzu v7.2d, v7.2d, #33 + b00: 5f5fe4e7 scvtf d7, d7, #33 + b04: 7f5fe4e7 ucvtf d7, d7, #33 + b08: 5f5ffce7 fcvtzs d7, d7, #33 + b0c: 7f5ffce7 fcvtzu d7, d7, #33 + b10: 4f5ee4e7 scvtf v7.2d, v7.2d, #34 + b14: 6f5ee4e7 ucvtf v7.2d, v7.2d, #34 + b18: 4f5efce7 fcvtzs v7.2d, v7.2d, #34 + b1c: 6f5efce7 fcvtzu v7.2d, v7.2d, #34 + b20: 5f5ee4e7 scvtf d7, d7, #34 + b24: 7f5ee4e7 ucvtf d7, d7, #34 + b28: 5f5efce7 fcvtzs d7, d7, #34 + b2c: 7f5efce7 fcvtzu d7, d7, #34 + b30: 4f5de4e7 scvtf v7.2d, v7.2d, #35 + b34: 6f5de4e7 ucvtf v7.2d, v7.2d, #35 + b38: 4f5dfce7 fcvtzs v7.2d, v7.2d, #35 + b3c: 6f5dfce7 fcvtzu v7.2d, v7.2d, #35 + b40: 5f5de4e7 scvtf d7, d7, #35 + b44: 7f5de4e7 ucvtf d7, d7, #35 + b48: 5f5dfce7 fcvtzs d7, d7, #35 + b4c: 7f5dfce7 fcvtzu d7, d7, #35 + b50: 4f5ce4e7 scvtf v7.2d, v7.2d, #36 + b54: 6f5ce4e7 ucvtf v7.2d, v7.2d, #36 + b58: 4f5cfce7 fcvtzs v7.2d, v7.2d, #36 + b5c: 6f5cfce7 fcvtzu v7.2d, v7.2d, #36 + b60: 5f5ce4e7 scvtf d7, d7, #36 + b64: 7f5ce4e7 ucvtf d7, d7, #36 + b68: 5f5cfce7 fcvtzs d7, d7, #36 + b6c: 7f5cfce7 fcvtzu d7, d7, #36 + b70: 4f5be4e7 scvtf v7.2d, v7.2d, #37 + b74: 6f5be4e7 ucvtf v7.2d, v7.2d, #37 + b78: 4f5bfce7 fcvtzs v7.2d, v7.2d, #37 + b7c: 6f5bfce7 fcvtzu v7.2d, v7.2d, #37 + b80: 5f5be4e7 scvtf d7, d7, #37 + b84: 7f5be4e7 ucvtf d7, d7, #37 + b88: 5f5bfce7 fcvtzs d7, d7, #37 + b8c: 7f5bfce7 fcvtzu d7, d7, #37 + b90: 4f5ae4e7 scvtf v7.2d, v7.2d, #38 + b94: 6f5ae4e7 ucvtf v7.2d, v7.2d, #38 + b98: 4f5afce7 fcvtzs v7.2d, v7.2d, #38 + b9c: 6f5afce7 fcvtzu v7.2d, v7.2d, #38 + ba0: 5f5ae4e7 scvtf d7, d7, #38 + ba4: 7f5ae4e7 ucvtf d7, d7, #38 + ba8: 5f5afce7 fcvtzs d7, d7, #38 + bac: 7f5afce7 fcvtzu d7, d7, #38 + bb0: 4f59e4e7 scvtf v7.2d, v7.2d, #39 + bb4: 6f59e4e7 ucvtf v7.2d, v7.2d, #39 + bb8: 4f59fce7 fcvtzs v7.2d, v7.2d, #39 + bbc: 6f59fce7 fcvtzu v7.2d, v7.2d, #39 + bc0: 5f59e4e7 scvtf d7, d7, #39 + bc4: 7f59e4e7 ucvtf d7, d7, #39 + bc8: 5f59fce7 fcvtzs d7, d7, #39 + bcc: 7f59fce7 fcvtzu d7, d7, #39 + bd0: 4f58e4e7 scvtf v7.2d, v7.2d, #40 + bd4: 6f58e4e7 ucvtf v7.2d, v7.2d, #40 + bd8: 4f58fce7 fcvtzs v7.2d, v7.2d, #40 + bdc: 6f58fce7 fcvtzu v7.2d, v7.2d, #40 + be0: 5f58e4e7 scvtf d7, d7, #40 + be4: 7f58e4e7 ucvtf d7, d7, #40 + be8: 5f58fce7 fcvtzs d7, d7, #40 + bec: 7f58fce7 fcvtzu d7, d7, #40 + bf0: 4f57e4e7 scvtf v7.2d, v7.2d, #41 + bf4: 6f57e4e7 ucvtf v7.2d, v7.2d, #41 + bf8: 4f57fce7 fcvtzs v7.2d, v7.2d, #41 + bfc: 6f57fce7 fcvtzu v7.2d, v7.2d, #41 + c00: 5f57e4e7 scvtf d7, d7, #41 + c04: 7f57e4e7 ucvtf d7, d7, #41 + c08: 5f57fce7 fcvtzs d7, d7, #41 + c0c: 7f57fce7 fcvtzu d7, d7, #41 + c10: 4f56e4e7 scvtf v7.2d, v7.2d, #42 + c14: 6f56e4e7 ucvtf v7.2d, v7.2d, #42 + c18: 4f56fce7 fcvtzs v7.2d, v7.2d, #42 + c1c: 6f56fce7 fcvtzu v7.2d, v7.2d, #42 + c20: 5f56e4e7 scvtf d7, d7, #42 + c24: 7f56e4e7 ucvtf d7, d7, #42 + c28: 5f56fce7 fcvtzs d7, d7, #42 + c2c: 7f56fce7 fcvtzu d7, d7, #42 + c30: 4f55e4e7 scvtf v7.2d, v7.2d, #43 + c34: 6f55e4e7 ucvtf v7.2d, v7.2d, #43 + c38: 4f55fce7 fcvtzs v7.2d, v7.2d, #43 + c3c: 6f55fce7 fcvtzu v7.2d, v7.2d, #43 + c40: 5f55e4e7 scvtf d7, d7, #43 + c44: 7f55e4e7 ucvtf d7, d7, #43 + c48: 5f55fce7 fcvtzs d7, d7, #43 + c4c: 7f55fce7 fcvtzu d7, d7, #43 + c50: 4f54e4e7 scvtf v7.2d, v7.2d, #44 + c54: 6f54e4e7 ucvtf v7.2d, v7.2d, #44 + c58: 4f54fce7 fcvtzs v7.2d, v7.2d, #44 + c5c: 6f54fce7 fcvtzu v7.2d, v7.2d, #44 + c60: 5f54e4e7 scvtf d7, d7, #44 + c64: 7f54e4e7 ucvtf d7, d7, #44 + c68: 5f54fce7 fcvtzs d7, d7, #44 + c6c: 7f54fce7 fcvtzu d7, d7, #44 + c70: 4f53e4e7 scvtf v7.2d, v7.2d, #45 + c74: 6f53e4e7 ucvtf v7.2d, v7.2d, #45 + c78: 4f53fce7 fcvtzs v7.2d, v7.2d, #45 + c7c: 6f53fce7 fcvtzu v7.2d, v7.2d, #45 + c80: 5f53e4e7 scvtf d7, d7, #45 + c84: 7f53e4e7 ucvtf d7, d7, #45 + c88: 5f53fce7 fcvtzs d7, d7, #45 + c8c: 7f53fce7 fcvtzu d7, d7, #45 + c90: 4f52e4e7 scvtf v7.2d, v7.2d, #46 + c94: 6f52e4e7 ucvtf v7.2d, v7.2d, #46 + c98: 4f52fce7 fcvtzs v7.2d, v7.2d, #46 + c9c: 6f52fce7 fcvtzu v7.2d, v7.2d, #46 + ca0: 5f52e4e7 scvtf d7, d7, #46 + ca4: 7f52e4e7 ucvtf d7, d7, #46 + ca8: 5f52fce7 fcvtzs d7, d7, #46 + cac: 7f52fce7 fcvtzu d7, d7, #46 + cb0: 4f51e4e7 scvtf v7.2d, v7.2d, #47 + cb4: 6f51e4e7 ucvtf v7.2d, v7.2d, #47 + cb8: 4f51fce7 fcvtzs v7.2d, v7.2d, #47 + cbc: 6f51fce7 fcvtzu v7.2d, v7.2d, #47 + cc0: 5f51e4e7 scvtf d7, d7, #47 + cc4: 7f51e4e7 ucvtf d7, d7, #47 + cc8: 5f51fce7 fcvtzs d7, d7, #47 + ccc: 7f51fce7 fcvtzu d7, d7, #47 + cd0: 4f50e4e7 scvtf v7.2d, v7.2d, #48 + cd4: 6f50e4e7 ucvtf v7.2d, v7.2d, #48 + cd8: 4f50fce7 fcvtzs v7.2d, v7.2d, #48 + cdc: 6f50fce7 fcvtzu v7.2d, v7.2d, #48 + ce0: 5f50e4e7 scvtf d7, d7, #48 + ce4: 7f50e4e7 ucvtf d7, d7, #48 + ce8: 5f50fce7 fcvtzs d7, d7, #48 + cec: 7f50fce7 fcvtzu d7, d7, #48 + cf0: 4f4fe4e7 scvtf v7.2d, v7.2d, #49 + cf4: 6f4fe4e7 ucvtf v7.2d, v7.2d, #49 + cf8: 4f4ffce7 fcvtzs v7.2d, v7.2d, #49 + cfc: 6f4ffce7 fcvtzu v7.2d, v7.2d, #49 + d00: 5f4fe4e7 scvtf d7, d7, #49 + d04: 7f4fe4e7 ucvtf d7, d7, #49 + d08: 5f4ffce7 fcvtzs d7, d7, #49 + d0c: 7f4ffce7 fcvtzu d7, d7, #49 + d10: 4f4ee4e7 scvtf v7.2d, v7.2d, #50 + d14: 6f4ee4e7 ucvtf v7.2d, v7.2d, #50 + d18: 4f4efce7 fcvtzs v7.2d, v7.2d, #50 + d1c: 6f4efce7 fcvtzu v7.2d, v7.2d, #50 + d20: 5f4ee4e7 scvtf d7, d7, #50 + d24: 7f4ee4e7 ucvtf d7, d7, #50 + d28: 5f4efce7 fcvtzs d7, d7, #50 + d2c: 7f4efce7 fcvtzu d7, d7, #50 + d30: 4f4de4e7 scvtf v7.2d, v7.2d, #51 + d34: 6f4de4e7 ucvtf v7.2d, v7.2d, #51 + d38: 4f4dfce7 fcvtzs v7.2d, v7.2d, #51 + d3c: 6f4dfce7 fcvtzu v7.2d, v7.2d, #51 + d40: 5f4de4e7 scvtf d7, d7, #51 + d44: 7f4de4e7 ucvtf d7, d7, #51 + d48: 5f4dfce7 fcvtzs d7, d7, #51 + d4c: 7f4dfce7 fcvtzu d7, d7, #51 + d50: 4f4ce4e7 scvtf v7.2d, v7.2d, #52 + d54: 6f4ce4e7 ucvtf v7.2d, v7.2d, #52 + d58: 4f4cfce7 fcvtzs v7.2d, v7.2d, #52 + d5c: 6f4cfce7 fcvtzu v7.2d, v7.2d, #52 + d60: 5f4ce4e7 scvtf d7, d7, #52 + d64: 7f4ce4e7 ucvtf d7, d7, #52 + d68: 5f4cfce7 fcvtzs d7, d7, #52 + d6c: 7f4cfce7 fcvtzu d7, d7, #52 + d70: 4f4be4e7 scvtf v7.2d, v7.2d, #53 + d74: 6f4be4e7 ucvtf v7.2d, v7.2d, #53 + d78: 4f4bfce7 fcvtzs v7.2d, v7.2d, #53 + d7c: 6f4bfce7 fcvtzu v7.2d, v7.2d, #53 + d80: 5f4be4e7 scvtf d7, d7, #53 + d84: 7f4be4e7 ucvtf d7, d7, #53 + d88: 5f4bfce7 fcvtzs d7, d7, #53 + d8c: 7f4bfce7 fcvtzu d7, d7, #53 + d90: 4f4ae4e7 scvtf v7.2d, v7.2d, #54 + d94: 6f4ae4e7 ucvtf v7.2d, v7.2d, #54 + d98: 4f4afce7 fcvtzs v7.2d, v7.2d, #54 + d9c: 6f4afce7 fcvtzu v7.2d, v7.2d, #54 + da0: 5f4ae4e7 scvtf d7, d7, #54 + da4: 7f4ae4e7 ucvtf d7, d7, #54 + da8: 5f4afce7 fcvtzs d7, d7, #54 + dac: 7f4afce7 fcvtzu d7, d7, #54 + db0: 4f49e4e7 scvtf v7.2d, v7.2d, #55 + db4: 6f49e4e7 ucvtf v7.2d, v7.2d, #55 + db8: 4f49fce7 fcvtzs v7.2d, v7.2d, #55 + dbc: 6f49fce7 fcvtzu v7.2d, v7.2d, #55 + dc0: 5f49e4e7 scvtf d7, d7, #55 + dc4: 7f49e4e7 ucvtf d7, d7, #55 + dc8: 5f49fce7 fcvtzs d7, d7, #55 + dcc: 7f49fce7 fcvtzu d7, d7, #55 + dd0: 4f48e4e7 scvtf v7.2d, v7.2d, #56 + dd4: 6f48e4e7 ucvtf v7.2d, v7.2d, #56 + dd8: 4f48fce7 fcvtzs v7.2d, v7.2d, #56 + ddc: 6f48fce7 fcvtzu v7.2d, v7.2d, #56 + de0: 5f48e4e7 scvtf d7, d7, #56 + de4: 7f48e4e7 ucvtf d7, d7, #56 + de8: 5f48fce7 fcvtzs d7, d7, #56 + dec: 7f48fce7 fcvtzu d7, d7, #56 + df0: 4f47e4e7 scvtf v7.2d, v7.2d, #57 + df4: 6f47e4e7 ucvtf v7.2d, v7.2d, #57 + df8: 4f47fce7 fcvtzs v7.2d, v7.2d, #57 + dfc: 6f47fce7 fcvtzu v7.2d, v7.2d, #57 + e00: 5f47e4e7 scvtf d7, d7, #57 + e04: 7f47e4e7 ucvtf d7, d7, #57 + e08: 5f47fce7 fcvtzs d7, d7, #57 + e0c: 7f47fce7 fcvtzu d7, d7, #57 + e10: 4f46e4e7 scvtf v7.2d, v7.2d, #58 + e14: 6f46e4e7 ucvtf v7.2d, v7.2d, #58 + e18: 4f46fce7 fcvtzs v7.2d, v7.2d, #58 + e1c: 6f46fce7 fcvtzu v7.2d, v7.2d, #58 + e20: 5f46e4e7 scvtf d7, d7, #58 + e24: 7f46e4e7 ucvtf d7, d7, #58 + e28: 5f46fce7 fcvtzs d7, d7, #58 + e2c: 7f46fce7 fcvtzu d7, d7, #58 + e30: 4f45e4e7 scvtf v7.2d, v7.2d, #59 + e34: 6f45e4e7 ucvtf v7.2d, v7.2d, #59 + e38: 4f45fce7 fcvtzs v7.2d, v7.2d, #59 + e3c: 6f45fce7 fcvtzu v7.2d, v7.2d, #59 + e40: 5f45e4e7 scvtf d7, d7, #59 + e44: 7f45e4e7 ucvtf d7, d7, #59 + e48: 5f45fce7 fcvtzs d7, d7, #59 + e4c: 7f45fce7 fcvtzu d7, d7, #59 + e50: 4f44e4e7 scvtf v7.2d, v7.2d, #60 + e54: 6f44e4e7 ucvtf v7.2d, v7.2d, #60 + e58: 4f44fce7 fcvtzs v7.2d, v7.2d, #60 + e5c: 6f44fce7 fcvtzu v7.2d, v7.2d, #60 + e60: 5f44e4e7 scvtf d7, d7, #60 + e64: 7f44e4e7 ucvtf d7, d7, #60 + e68: 5f44fce7 fcvtzs d7, d7, #60 + e6c: 7f44fce7 fcvtzu d7, d7, #60 + e70: 4f43e4e7 scvtf v7.2d, v7.2d, #61 + e74: 6f43e4e7 ucvtf v7.2d, v7.2d, #61 + e78: 4f43fce7 fcvtzs v7.2d, v7.2d, #61 + e7c: 6f43fce7 fcvtzu v7.2d, v7.2d, #61 + e80: 5f43e4e7 scvtf d7, d7, #61 + e84: 7f43e4e7 ucvtf d7, d7, #61 + e88: 5f43fce7 fcvtzs d7, d7, #61 + e8c: 7f43fce7 fcvtzu d7, d7, #61 + e90: 4f42e4e7 scvtf v7.2d, v7.2d, #62 + e94: 6f42e4e7 ucvtf v7.2d, v7.2d, #62 + e98: 4f42fce7 fcvtzs v7.2d, v7.2d, #62 + e9c: 6f42fce7 fcvtzu v7.2d, v7.2d, #62 + ea0: 5f42e4e7 scvtf d7, d7, #62 + ea4: 7f42e4e7 ucvtf d7, d7, #62 + ea8: 5f42fce7 fcvtzs d7, d7, #62 + eac: 7f42fce7 fcvtzu d7, d7, #62 + eb0: 4f41e4e7 scvtf v7.2d, v7.2d, #63 + eb4: 6f41e4e7 ucvtf v7.2d, v7.2d, #63 + eb8: 4f41fce7 fcvtzs v7.2d, v7.2d, #63 + ebc: 6f41fce7 fcvtzu v7.2d, v7.2d, #63 + ec0: 5f41e4e7 scvtf d7, d7, #63 + ec4: 7f41e4e7 ucvtf d7, d7, #63 + ec8: 5f41fce7 fcvtzs d7, d7, #63 + ecc: 7f41fce7 fcvtzu d7, d7, #63 + ed0: 4f40e4e7 scvtf v7.2d, v7.2d, #64 + ed4: 6f40e4e7 ucvtf v7.2d, v7.2d, #64 + ed8: 4f40fce7 fcvtzs v7.2d, v7.2d, #64 + edc: 6f40fce7 fcvtzu v7.2d, v7.2d, #64 + ee0: 5f40e4e7 scvtf d7, d7, #64 + ee4: 7f40e4e7 ucvtf d7, d7, #64 + ee8: 5f40fce7 fcvtzs d7, d7, #64 + eec: 7f40fce7 fcvtzu d7, d7, #64 diff --git a/gas/testsuite/gas/aarch64/neon-fp-cvt-int.s b/gas/testsuite/gas/aarch64/neon-fp-cvt-int.s new file mode 100644 index 0000000..437d999 --- /dev/null +++ b/gas/testsuite/gas/aarch64/neon-fp-cvt-int.s @@ -0,0 +1,122 @@ +/* neon-fp-cvt-ins.s Test file for AArch64 NEON + floating-point<->fixed-point conversion and + floating-point<->integer conversion instructions. + + Copyright 2011, 2012 Free Software Foundation, Inc. + Contributed by ARM Ltd. + + This file is part of GAS. + + GAS 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. + + GAS 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; see the file COPYING3. If not, + see <http://www.gnu.org/licenses/>. */ + + .macro do_cvt op, fbits, reg, reg_shape + .ifc \fbits, 0 + // Floating-point<->integer conversions + .ifc \reg, V + \op V7.\()\reg_shape, V7.\()\reg_shape + .else + \op \reg\()7, \reg\()7 + .endif + .else + // Floating-point<->fixed-point conversions + .ifc \reg, V + .ifle \fbits-32 + .ifc \reg_shape, 2S + \op V7.2S, V7.2S, #\fbits + .endif + .ifc \reg_shape, 4S + \op V7.4S, V7.4S, #\fbits + .endif + .endif + .ifc \reg_shape, 2D + \op V7.2D, V7.2D, #\fbits + .endif + .else + .ifc \reg, S + .ifle \fbits-32 + \op S7, S7, #\fbits + .endif + .endif + .ifc \reg, D + \op D7, D7, #\fbits + .endif + .endif + .endif + .endm + + .macro fcvts_with_fbits fbits + .ifc \fbits, 0 + // fp <-> int + // AdvSIMD + .irp reg_shape, 2S, 4S, 2D + do_cvt FCVTNS, \fbits, V, \reg_shape + do_cvt FCVTNU, \fbits, V, \reg_shape + do_cvt FCVTPS, \fbits, V, \reg_shape + do_cvt FCVTPU, \fbits, V, \reg_shape + do_cvt SCVTF, \fbits, V, \reg_shape + do_cvt UCVTF, \fbits, V, \reg_shape + do_cvt FCVTMS, \fbits, V, \reg_shape + do_cvt FCVTMU, \fbits, V, \reg_shape + do_cvt FCVTZS, \fbits, V, \reg_shape + do_cvt FCVTZU, \fbits, V, \reg_shape + do_cvt FCVTAS, \fbits, V, \reg_shape + do_cvt FCVTAU, \fbits, V, \reg_shape + .endr + // AdvSISD + .irp reg, S, D + do_cvt FCVTNS, \fbits, \reg + do_cvt FCVTNU, \fbits, \reg + do_cvt FCVTPS, \fbits, \reg + do_cvt FCVTPU, \fbits, \reg + do_cvt SCVTF, \fbits, \reg + do_cvt UCVTF, \fbits, \reg + do_cvt FCVTMS, \fbits, \reg + do_cvt FCVTMU, \fbits, \reg + do_cvt FCVTZS, \fbits, \reg + do_cvt FCVTZU, \fbits, \reg + do_cvt FCVTAS, \fbits, \reg + do_cvt FCVTAU, \fbits, \reg + .endr + .else + // fp <-> fixed-point + // AdvSIMD + .irp reg_shape, 2S, 4S, 2D + do_cvt SCVTF, \fbits, V, \reg_shape + do_cvt UCVTF, \fbits, V, \reg_shape + do_cvt FCVTZS, \fbits, V, \reg_shape + do_cvt FCVTZU, \fbits, V, \reg_shape + .endr + // AdvSISD + .irp reg, S, D + do_cvt SCVTF, \fbits, \reg + do_cvt UCVTF, \fbits, \reg + do_cvt FCVTZS, \fbits, \reg + do_cvt FCVTZU, \fbits, \reg + .endr + .endif + .endm + + + .macro fcvts_with_fbits_wrapper from=0, to=64 + fcvts_with_fbits \from + .if \to-\from + fcvts_with_fbits_wrapper "(\from+1)", \to + .endif + .endm + +func: + // Generate fcvt instructions without fbits and + // with fbits from 1 to 64, also generate [us]cvtf + fcvts_with_fbits_wrapper from=0, to=64 diff --git a/gas/testsuite/gas/aarch64/neon-frint.d b/gas/testsuite/gas/aarch64/neon-frint.d new file mode 100644 index 0000000..c7a237e --- /dev/null +++ b/gas/testsuite/gas/aarch64/neon-frint.d @@ -0,0 +1,28 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: 0e2188e7 frintn v7.2s, v7.2s + 4: 4e2188e7 frintn v7.4s, v7.4s + 8: 4e6188e7 frintn v7.2d, v7.2d + c: 2e2188e7 frinta v7.2s, v7.2s + 10: 6e2188e7 frinta v7.4s, v7.4s + 14: 6e6188e7 frinta v7.2d, v7.2d + 18: 0ea188e7 frintp v7.2s, v7.2s + 1c: 4ea188e7 frintp v7.4s, v7.4s + 20: 4ee188e7 frintp v7.2d, v7.2d + 24: 0e2198e7 frintm v7.2s, v7.2s + 28: 4e2198e7 frintm v7.4s, v7.4s + 2c: 4e6198e7 frintm v7.2d, v7.2d + 30: 2e2198e7 frintx v7.2s, v7.2s + 34: 6e2198e7 frintx v7.4s, v7.4s + 38: 6e6198e7 frintx v7.2d, v7.2d + 3c: 0ea198e7 frintz v7.2s, v7.2s + 40: 4ea198e7 frintz v7.4s, v7.4s + 44: 4ee198e7 frintz v7.2d, v7.2d + 48: 2ea198e7 frinti v7.2s, v7.2s + 4c: 6ea198e7 frinti v7.4s, v7.4s + 50: 6ee198e7 frinti v7.2d, v7.2d diff --git a/gas/testsuite/gas/aarch64/neon-frint.s b/gas/testsuite/gas/aarch64/neon-frint.s new file mode 100644 index 0000000..6c8f2f7 --- /dev/null +++ b/gas/testsuite/gas/aarch64/neon-frint.s @@ -0,0 +1,13 @@ +// Test file for AArch64 GAS -- Advanced SIMD floating-point round to integral +// instructions. + + .macro frint_main rd rn + .irp rounding_mode, N, A, P, M, X, Z, I + .irp reg_shape, 2S, 4S, 2D + frint\rounding_mode \rd\().\reg_shape, \rn\().\reg_shape + .endr + .endr + .endm + + .text + frint_main v7, v7 diff --git a/gas/testsuite/gas/aarch64/neon-ins.d b/gas/testsuite/gas/aarch64/neon-ins.d new file mode 100644 index 0000000..6e1b528 --- /dev/null +++ b/gas/testsuite/gas/aarch64/neon-ins.d @@ -0,0 +1,3607 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: 4e011c21 mov v1.b\[0\], w1 + 4: 4e011c21 mov v1.b\[0\], w1 + 8: 4e011c42 mov v2.b\[0\], w2 + c: 4e011c42 mov v2.b\[0\], w2 + 10: 4e011c63 mov v3.b\[0\], w3 + 14: 4e011c63 mov v3.b\[0\], w3 + 18: 4e011c84 mov v4.b\[0\], w4 + 1c: 4e011c84 mov v4.b\[0\], w4 + 20: 4e011ca5 mov v5.b\[0\], w5 + 24: 4e011ca5 mov v5.b\[0\], w5 + 28: 4e011cc6 mov v6.b\[0\], w6 + 2c: 4e011cc6 mov v6.b\[0\], w6 + 30: 4e011ce7 mov v7.b\[0\], w7 + 34: 4e011ce7 mov v7.b\[0\], w7 + 38: 4e011d08 mov v8.b\[0\], w8 + 3c: 4e011d08 mov v8.b\[0\], w8 + 40: 4e011d29 mov v9.b\[0\], w9 + 44: 4e011d29 mov v9.b\[0\], w9 + 48: 4e011d4a mov v10.b\[0\], w10 + 4c: 4e011d4a mov v10.b\[0\], w10 + 50: 4e011d6b mov v11.b\[0\], w11 + 54: 4e011d6b mov v11.b\[0\], w11 + 58: 4e011d8c mov v12.b\[0\], w12 + 5c: 4e011d8c mov v12.b\[0\], w12 + 60: 4e011dad mov v13.b\[0\], w13 + 64: 4e011dad mov v13.b\[0\], w13 + 68: 4e011dce mov v14.b\[0\], w14 + 6c: 4e011dce mov v14.b\[0\], w14 + 70: 4e011def mov v15.b\[0\], w15 + 74: 4e011def mov v15.b\[0\], w15 + 78: 4e011e10 mov v16.b\[0\], w16 + 7c: 4e011e10 mov v16.b\[0\], w16 + 80: 4e011e31 mov v17.b\[0\], w17 + 84: 4e011e31 mov v17.b\[0\], w17 + 88: 4e011e52 mov v18.b\[0\], w18 + 8c: 4e011e52 mov v18.b\[0\], w18 + 90: 4e011e73 mov v19.b\[0\], w19 + 94: 4e011e73 mov v19.b\[0\], w19 + 98: 4e011e94 mov v20.b\[0\], w20 + 9c: 4e011e94 mov v20.b\[0\], w20 + a0: 4e011eb5 mov v21.b\[0\], w21 + a4: 4e011eb5 mov v21.b\[0\], w21 + a8: 4e011ed6 mov v22.b\[0\], w22 + ac: 4e011ed6 mov v22.b\[0\], w22 + b0: 4e011ef7 mov v23.b\[0\], w23 + b4: 4e011ef7 mov v23.b\[0\], w23 + b8: 4e011f18 mov v24.b\[0\], w24 + bc: 4e011f18 mov v24.b\[0\], w24 + c0: 4e011f39 mov v25.b\[0\], w25 + c4: 4e011f39 mov v25.b\[0\], w25 + c8: 4e011f5a mov v26.b\[0\], w26 + cc: 4e011f5a mov v26.b\[0\], w26 + d0: 4e011f7b mov v27.b\[0\], w27 + d4: 4e011f7b mov v27.b\[0\], w27 + d8: 4e011f9c mov v28.b\[0\], w28 + dc: 4e011f9c mov v28.b\[0\], w28 + e0: 4e011fbd mov v29.b\[0\], w29 + e4: 4e011fbd mov v29.b\[0\], w29 + e8: 4e011fde mov v30.b\[0\], w30 + ec: 4e011fde mov v30.b\[0\], w30 + f0: 4e031c21 mov v1.b\[1\], w1 + f4: 4e031c21 mov v1.b\[1\], w1 + f8: 4e031c42 mov v2.b\[1\], w2 + fc: 4e031c42 mov v2.b\[1\], w2 + 100: 4e031c63 mov v3.b\[1\], w3 + 104: 4e031c63 mov v3.b\[1\], w3 + 108: 4e031c84 mov v4.b\[1\], w4 + 10c: 4e031c84 mov v4.b\[1\], w4 + 110: 4e031ca5 mov v5.b\[1\], w5 + 114: 4e031ca5 mov v5.b\[1\], w5 + 118: 4e031cc6 mov v6.b\[1\], w6 + 11c: 4e031cc6 mov v6.b\[1\], w6 + 120: 4e031ce7 mov v7.b\[1\], w7 + 124: 4e031ce7 mov v7.b\[1\], w7 + 128: 4e031d08 mov v8.b\[1\], w8 + 12c: 4e031d08 mov v8.b\[1\], w8 + 130: 4e031d29 mov v9.b\[1\], w9 + 134: 4e031d29 mov v9.b\[1\], w9 + 138: 4e031d4a mov v10.b\[1\], w10 + 13c: 4e031d4a mov v10.b\[1\], w10 + 140: 4e031d6b mov v11.b\[1\], w11 + 144: 4e031d6b mov v11.b\[1\], w11 + 148: 4e031d8c mov v12.b\[1\], w12 + 14c: 4e031d8c mov v12.b\[1\], w12 + 150: 4e031dad mov v13.b\[1\], w13 + 154: 4e031dad mov v13.b\[1\], w13 + 158: 4e031dce mov v14.b\[1\], w14 + 15c: 4e031dce mov v14.b\[1\], w14 + 160: 4e031def mov v15.b\[1\], w15 + 164: 4e031def mov v15.b\[1\], w15 + 168: 4e031e10 mov v16.b\[1\], w16 + 16c: 4e031e10 mov v16.b\[1\], w16 + 170: 4e031e31 mov v17.b\[1\], w17 + 174: 4e031e31 mov v17.b\[1\], w17 + 178: 4e031e52 mov v18.b\[1\], w18 + 17c: 4e031e52 mov v18.b\[1\], w18 + 180: 4e031e73 mov v19.b\[1\], w19 + 184: 4e031e73 mov v19.b\[1\], w19 + 188: 4e031e94 mov v20.b\[1\], w20 + 18c: 4e031e94 mov v20.b\[1\], w20 + 190: 4e031eb5 mov v21.b\[1\], w21 + 194: 4e031eb5 mov v21.b\[1\], w21 + 198: 4e031ed6 mov v22.b\[1\], w22 + 19c: 4e031ed6 mov v22.b\[1\], w22 + 1a0: 4e031ef7 mov v23.b\[1\], w23 + 1a4: 4e031ef7 mov v23.b\[1\], w23 + 1a8: 4e031f18 mov v24.b\[1\], w24 + 1ac: 4e031f18 mov v24.b\[1\], w24 + 1b0: 4e031f39 mov v25.b\[1\], w25 + 1b4: 4e031f39 mov v25.b\[1\], w25 + 1b8: 4e031f5a mov v26.b\[1\], w26 + 1bc: 4e031f5a mov v26.b\[1\], w26 + 1c0: 4e031f7b mov v27.b\[1\], w27 + 1c4: 4e031f7b mov v27.b\[1\], w27 + 1c8: 4e031f9c mov v28.b\[1\], w28 + 1cc: 4e031f9c mov v28.b\[1\], w28 + 1d0: 4e031fbd mov v29.b\[1\], w29 + 1d4: 4e031fbd mov v29.b\[1\], w29 + 1d8: 4e031fde mov v30.b\[1\], w30 + 1dc: 4e031fde mov v30.b\[1\], w30 + 1e0: 4e051c21 mov v1.b\[2\], w1 + 1e4: 4e051c21 mov v1.b\[2\], w1 + 1e8: 4e051c42 mov v2.b\[2\], w2 + 1ec: 4e051c42 mov v2.b\[2\], w2 + 1f0: 4e051c63 mov v3.b\[2\], w3 + 1f4: 4e051c63 mov v3.b\[2\], w3 + 1f8: 4e051c84 mov v4.b\[2\], w4 + 1fc: 4e051c84 mov v4.b\[2\], w4 + 200: 4e051ca5 mov v5.b\[2\], w5 + 204: 4e051ca5 mov v5.b\[2\], w5 + 208: 4e051cc6 mov v6.b\[2\], w6 + 20c: 4e051cc6 mov v6.b\[2\], w6 + 210: 4e051ce7 mov v7.b\[2\], w7 + 214: 4e051ce7 mov v7.b\[2\], w7 + 218: 4e051d08 mov v8.b\[2\], w8 + 21c: 4e051d08 mov v8.b\[2\], w8 + 220: 4e051d29 mov v9.b\[2\], w9 + 224: 4e051d29 mov v9.b\[2\], w9 + 228: 4e051d4a mov v10.b\[2\], w10 + 22c: 4e051d4a mov v10.b\[2\], w10 + 230: 4e051d6b mov v11.b\[2\], w11 + 234: 4e051d6b mov v11.b\[2\], w11 + 238: 4e051d8c mov v12.b\[2\], w12 + 23c: 4e051d8c mov v12.b\[2\], w12 + 240: 4e051dad mov v13.b\[2\], w13 + 244: 4e051dad mov v13.b\[2\], w13 + 248: 4e051dce mov v14.b\[2\], w14 + 24c: 4e051dce mov v14.b\[2\], w14 + 250: 4e051def mov v15.b\[2\], w15 + 254: 4e051def mov v15.b\[2\], w15 + 258: 4e051e10 mov v16.b\[2\], w16 + 25c: 4e051e10 mov v16.b\[2\], w16 + 260: 4e051e31 mov v17.b\[2\], w17 + 264: 4e051e31 mov v17.b\[2\], w17 + 268: 4e051e52 mov v18.b\[2\], w18 + 26c: 4e051e52 mov v18.b\[2\], w18 + 270: 4e051e73 mov v19.b\[2\], w19 + 274: 4e051e73 mov v19.b\[2\], w19 + 278: 4e051e94 mov v20.b\[2\], w20 + 27c: 4e051e94 mov v20.b\[2\], w20 + 280: 4e051eb5 mov v21.b\[2\], w21 + 284: 4e051eb5 mov v21.b\[2\], w21 + 288: 4e051ed6 mov v22.b\[2\], w22 + 28c: 4e051ed6 mov v22.b\[2\], w22 + 290: 4e051ef7 mov v23.b\[2\], w23 + 294: 4e051ef7 mov v23.b\[2\], w23 + 298: 4e051f18 mov v24.b\[2\], w24 + 29c: 4e051f18 mov v24.b\[2\], w24 + 2a0: 4e051f39 mov v25.b\[2\], w25 + 2a4: 4e051f39 mov v25.b\[2\], w25 + 2a8: 4e051f5a mov v26.b\[2\], w26 + 2ac: 4e051f5a mov v26.b\[2\], w26 + 2b0: 4e051f7b mov v27.b\[2\], w27 + 2b4: 4e051f7b mov v27.b\[2\], w27 + 2b8: 4e051f9c mov v28.b\[2\], w28 + 2bc: 4e051f9c mov v28.b\[2\], w28 + 2c0: 4e051fbd mov v29.b\[2\], w29 + 2c4: 4e051fbd mov v29.b\[2\], w29 + 2c8: 4e051fde mov v30.b\[2\], w30 + 2cc: 4e051fde mov v30.b\[2\], w30 + 2d0: 4e071c21 mov v1.b\[3\], w1 + 2d4: 4e071c21 mov v1.b\[3\], w1 + 2d8: 4e071c42 mov v2.b\[3\], w2 + 2dc: 4e071c42 mov v2.b\[3\], w2 + 2e0: 4e071c63 mov v3.b\[3\], w3 + 2e4: 4e071c63 mov v3.b\[3\], w3 + 2e8: 4e071c84 mov v4.b\[3\], w4 + 2ec: 4e071c84 mov v4.b\[3\], w4 + 2f0: 4e071ca5 mov v5.b\[3\], w5 + 2f4: 4e071ca5 mov v5.b\[3\], w5 + 2f8: 4e071cc6 mov v6.b\[3\], w6 + 2fc: 4e071cc6 mov v6.b\[3\], w6 + 300: 4e071ce7 mov v7.b\[3\], w7 + 304: 4e071ce7 mov v7.b\[3\], w7 + 308: 4e071d08 mov v8.b\[3\], w8 + 30c: 4e071d08 mov v8.b\[3\], w8 + 310: 4e071d29 mov v9.b\[3\], w9 + 314: 4e071d29 mov v9.b\[3\], w9 + 318: 4e071d4a mov v10.b\[3\], w10 + 31c: 4e071d4a mov v10.b\[3\], w10 + 320: 4e071d6b mov v11.b\[3\], w11 + 324: 4e071d6b mov v11.b\[3\], w11 + 328: 4e071d8c mov v12.b\[3\], w12 + 32c: 4e071d8c mov v12.b\[3\], w12 + 330: 4e071dad mov v13.b\[3\], w13 + 334: 4e071dad mov v13.b\[3\], w13 + 338: 4e071dce mov v14.b\[3\], w14 + 33c: 4e071dce mov v14.b\[3\], w14 + 340: 4e071def mov v15.b\[3\], w15 + 344: 4e071def mov v15.b\[3\], w15 + 348: 4e071e10 mov v16.b\[3\], w16 + 34c: 4e071e10 mov v16.b\[3\], w16 + 350: 4e071e31 mov v17.b\[3\], w17 + 354: 4e071e31 mov v17.b\[3\], w17 + 358: 4e071e52 mov v18.b\[3\], w18 + 35c: 4e071e52 mov v18.b\[3\], w18 + 360: 4e071e73 mov v19.b\[3\], w19 + 364: 4e071e73 mov v19.b\[3\], w19 + 368: 4e071e94 mov v20.b\[3\], w20 + 36c: 4e071e94 mov v20.b\[3\], w20 + 370: 4e071eb5 mov v21.b\[3\], w21 + 374: 4e071eb5 mov v21.b\[3\], w21 + 378: 4e071ed6 mov v22.b\[3\], w22 + 37c: 4e071ed6 mov v22.b\[3\], w22 + 380: 4e071ef7 mov v23.b\[3\], w23 + 384: 4e071ef7 mov v23.b\[3\], w23 + 388: 4e071f18 mov v24.b\[3\], w24 + 38c: 4e071f18 mov v24.b\[3\], w24 + 390: 4e071f39 mov v25.b\[3\], w25 + 394: 4e071f39 mov v25.b\[3\], w25 + 398: 4e071f5a mov v26.b\[3\], w26 + 39c: 4e071f5a mov v26.b\[3\], w26 + 3a0: 4e071f7b mov v27.b\[3\], w27 + 3a4: 4e071f7b mov v27.b\[3\], w27 + 3a8: 4e071f9c mov v28.b\[3\], w28 + 3ac: 4e071f9c mov v28.b\[3\], w28 + 3b0: 4e071fbd mov v29.b\[3\], w29 + 3b4: 4e071fbd mov v29.b\[3\], w29 + 3b8: 4e071fde mov v30.b\[3\], w30 + 3bc: 4e071fde mov v30.b\[3\], w30 + 3c0: 4e091c21 mov v1.b\[4\], w1 + 3c4: 4e091c21 mov v1.b\[4\], w1 + 3c8: 4e091c42 mov v2.b\[4\], w2 + 3cc: 4e091c42 mov v2.b\[4\], w2 + 3d0: 4e091c63 mov v3.b\[4\], w3 + 3d4: 4e091c63 mov v3.b\[4\], w3 + 3d8: 4e091c84 mov v4.b\[4\], w4 + 3dc: 4e091c84 mov v4.b\[4\], w4 + 3e0: 4e091ca5 mov v5.b\[4\], w5 + 3e4: 4e091ca5 mov v5.b\[4\], w5 + 3e8: 4e091cc6 mov v6.b\[4\], w6 + 3ec: 4e091cc6 mov v6.b\[4\], w6 + 3f0: 4e091ce7 mov v7.b\[4\], w7 + 3f4: 4e091ce7 mov v7.b\[4\], w7 + 3f8: 4e091d08 mov v8.b\[4\], w8 + 3fc: 4e091d08 mov v8.b\[4\], w8 + 400: 4e091d29 mov v9.b\[4\], w9 + 404: 4e091d29 mov v9.b\[4\], w9 + 408: 4e091d4a mov v10.b\[4\], w10 + 40c: 4e091d4a mov v10.b\[4\], w10 + 410: 4e091d6b mov v11.b\[4\], w11 + 414: 4e091d6b mov v11.b\[4\], w11 + 418: 4e091d8c mov v12.b\[4\], w12 + 41c: 4e091d8c mov v12.b\[4\], w12 + 420: 4e091dad mov v13.b\[4\], w13 + 424: 4e091dad mov v13.b\[4\], w13 + 428: 4e091dce mov v14.b\[4\], w14 + 42c: 4e091dce mov v14.b\[4\], w14 + 430: 4e091def mov v15.b\[4\], w15 + 434: 4e091def mov v15.b\[4\], w15 + 438: 4e091e10 mov v16.b\[4\], w16 + 43c: 4e091e10 mov v16.b\[4\], w16 + 440: 4e091e31 mov v17.b\[4\], w17 + 444: 4e091e31 mov v17.b\[4\], w17 + 448: 4e091e52 mov v18.b\[4\], w18 + 44c: 4e091e52 mov v18.b\[4\], w18 + 450: 4e091e73 mov v19.b\[4\], w19 + 454: 4e091e73 mov v19.b\[4\], w19 + 458: 4e091e94 mov v20.b\[4\], w20 + 45c: 4e091e94 mov v20.b\[4\], w20 + 460: 4e091eb5 mov v21.b\[4\], w21 + 464: 4e091eb5 mov v21.b\[4\], w21 + 468: 4e091ed6 mov v22.b\[4\], w22 + 46c: 4e091ed6 mov v22.b\[4\], w22 + 470: 4e091ef7 mov v23.b\[4\], w23 + 474: 4e091ef7 mov v23.b\[4\], w23 + 478: 4e091f18 mov v24.b\[4\], w24 + 47c: 4e091f18 mov v24.b\[4\], w24 + 480: 4e091f39 mov v25.b\[4\], w25 + 484: 4e091f39 mov v25.b\[4\], w25 + 488: 4e091f5a mov v26.b\[4\], w26 + 48c: 4e091f5a mov v26.b\[4\], w26 + 490: 4e091f7b mov v27.b\[4\], w27 + 494: 4e091f7b mov v27.b\[4\], w27 + 498: 4e091f9c mov v28.b\[4\], w28 + 49c: 4e091f9c mov v28.b\[4\], w28 + 4a0: 4e091fbd mov v29.b\[4\], w29 + 4a4: 4e091fbd mov v29.b\[4\], w29 + 4a8: 4e091fde mov v30.b\[4\], w30 + 4ac: 4e091fde mov v30.b\[4\], w30 + 4b0: 4e0b1c21 mov v1.b\[5\], w1 + 4b4: 4e0b1c21 mov v1.b\[5\], w1 + 4b8: 4e0b1c42 mov v2.b\[5\], w2 + 4bc: 4e0b1c42 mov v2.b\[5\], w2 + 4c0: 4e0b1c63 mov v3.b\[5\], w3 + 4c4: 4e0b1c63 mov v3.b\[5\], w3 + 4c8: 4e0b1c84 mov v4.b\[5\], w4 + 4cc: 4e0b1c84 mov v4.b\[5\], w4 + 4d0: 4e0b1ca5 mov v5.b\[5\], w5 + 4d4: 4e0b1ca5 mov v5.b\[5\], w5 + 4d8: 4e0b1cc6 mov v6.b\[5\], w6 + 4dc: 4e0b1cc6 mov v6.b\[5\], w6 + 4e0: 4e0b1ce7 mov v7.b\[5\], w7 + 4e4: 4e0b1ce7 mov v7.b\[5\], w7 + 4e8: 4e0b1d08 mov v8.b\[5\], w8 + 4ec: 4e0b1d08 mov v8.b\[5\], w8 + 4f0: 4e0b1d29 mov v9.b\[5\], w9 + 4f4: 4e0b1d29 mov v9.b\[5\], w9 + 4f8: 4e0b1d4a mov v10.b\[5\], w10 + 4fc: 4e0b1d4a mov v10.b\[5\], w10 + 500: 4e0b1d6b mov v11.b\[5\], w11 + 504: 4e0b1d6b mov v11.b\[5\], w11 + 508: 4e0b1d8c mov v12.b\[5\], w12 + 50c: 4e0b1d8c mov v12.b\[5\], w12 + 510: 4e0b1dad mov v13.b\[5\], w13 + 514: 4e0b1dad mov v13.b\[5\], w13 + 518: 4e0b1dce mov v14.b\[5\], w14 + 51c: 4e0b1dce mov v14.b\[5\], w14 + 520: 4e0b1def mov v15.b\[5\], w15 + 524: 4e0b1def mov v15.b\[5\], w15 + 528: 4e0b1e10 mov v16.b\[5\], w16 + 52c: 4e0b1e10 mov v16.b\[5\], w16 + 530: 4e0b1e31 mov v17.b\[5\], w17 + 534: 4e0b1e31 mov v17.b\[5\], w17 + 538: 4e0b1e52 mov v18.b\[5\], w18 + 53c: 4e0b1e52 mov v18.b\[5\], w18 + 540: 4e0b1e73 mov v19.b\[5\], w19 + 544: 4e0b1e73 mov v19.b\[5\], w19 + 548: 4e0b1e94 mov v20.b\[5\], w20 + 54c: 4e0b1e94 mov v20.b\[5\], w20 + 550: 4e0b1eb5 mov v21.b\[5\], w21 + 554: 4e0b1eb5 mov v21.b\[5\], w21 + 558: 4e0b1ed6 mov v22.b\[5\], w22 + 55c: 4e0b1ed6 mov v22.b\[5\], w22 + 560: 4e0b1ef7 mov v23.b\[5\], w23 + 564: 4e0b1ef7 mov v23.b\[5\], w23 + 568: 4e0b1f18 mov v24.b\[5\], w24 + 56c: 4e0b1f18 mov v24.b\[5\], w24 + 570: 4e0b1f39 mov v25.b\[5\], w25 + 574: 4e0b1f39 mov v25.b\[5\], w25 + 578: 4e0b1f5a mov v26.b\[5\], w26 + 57c: 4e0b1f5a mov v26.b\[5\], w26 + 580: 4e0b1f7b mov v27.b\[5\], w27 + 584: 4e0b1f7b mov v27.b\[5\], w27 + 588: 4e0b1f9c mov v28.b\[5\], w28 + 58c: 4e0b1f9c mov v28.b\[5\], w28 + 590: 4e0b1fbd mov v29.b\[5\], w29 + 594: 4e0b1fbd mov v29.b\[5\], w29 + 598: 4e0b1fde mov v30.b\[5\], w30 + 59c: 4e0b1fde mov v30.b\[5\], w30 + 5a0: 4e0d1c21 mov v1.b\[6\], w1 + 5a4: 4e0d1c21 mov v1.b\[6\], w1 + 5a8: 4e0d1c42 mov v2.b\[6\], w2 + 5ac: 4e0d1c42 mov v2.b\[6\], w2 + 5b0: 4e0d1c63 mov v3.b\[6\], w3 + 5b4: 4e0d1c63 mov v3.b\[6\], w3 + 5b8: 4e0d1c84 mov v4.b\[6\], w4 + 5bc: 4e0d1c84 mov v4.b\[6\], w4 + 5c0: 4e0d1ca5 mov v5.b\[6\], w5 + 5c4: 4e0d1ca5 mov v5.b\[6\], w5 + 5c8: 4e0d1cc6 mov v6.b\[6\], w6 + 5cc: 4e0d1cc6 mov v6.b\[6\], w6 + 5d0: 4e0d1ce7 mov v7.b\[6\], w7 + 5d4: 4e0d1ce7 mov v7.b\[6\], w7 + 5d8: 4e0d1d08 mov v8.b\[6\], w8 + 5dc: 4e0d1d08 mov v8.b\[6\], w8 + 5e0: 4e0d1d29 mov v9.b\[6\], w9 + 5e4: 4e0d1d29 mov v9.b\[6\], w9 + 5e8: 4e0d1d4a mov v10.b\[6\], w10 + 5ec: 4e0d1d4a mov v10.b\[6\], w10 + 5f0: 4e0d1d6b mov v11.b\[6\], w11 + 5f4: 4e0d1d6b mov v11.b\[6\], w11 + 5f8: 4e0d1d8c mov v12.b\[6\], w12 + 5fc: 4e0d1d8c mov v12.b\[6\], w12 + 600: 4e0d1dad mov v13.b\[6\], w13 + 604: 4e0d1dad mov v13.b\[6\], w13 + 608: 4e0d1dce mov v14.b\[6\], w14 + 60c: 4e0d1dce mov v14.b\[6\], w14 + 610: 4e0d1def mov v15.b\[6\], w15 + 614: 4e0d1def mov v15.b\[6\], w15 + 618: 4e0d1e10 mov v16.b\[6\], w16 + 61c: 4e0d1e10 mov v16.b\[6\], w16 + 620: 4e0d1e31 mov v17.b\[6\], w17 + 624: 4e0d1e31 mov v17.b\[6\], w17 + 628: 4e0d1e52 mov v18.b\[6\], w18 + 62c: 4e0d1e52 mov v18.b\[6\], w18 + 630: 4e0d1e73 mov v19.b\[6\], w19 + 634: 4e0d1e73 mov v19.b\[6\], w19 + 638: 4e0d1e94 mov v20.b\[6\], w20 + 63c: 4e0d1e94 mov v20.b\[6\], w20 + 640: 4e0d1eb5 mov v21.b\[6\], w21 + 644: 4e0d1eb5 mov v21.b\[6\], w21 + 648: 4e0d1ed6 mov v22.b\[6\], w22 + 64c: 4e0d1ed6 mov v22.b\[6\], w22 + 650: 4e0d1ef7 mov v23.b\[6\], w23 + 654: 4e0d1ef7 mov v23.b\[6\], w23 + 658: 4e0d1f18 mov v24.b\[6\], w24 + 65c: 4e0d1f18 mov v24.b\[6\], w24 + 660: 4e0d1f39 mov v25.b\[6\], w25 + 664: 4e0d1f39 mov v25.b\[6\], w25 + 668: 4e0d1f5a mov v26.b\[6\], w26 + 66c: 4e0d1f5a mov v26.b\[6\], w26 + 670: 4e0d1f7b mov v27.b\[6\], w27 + 674: 4e0d1f7b mov v27.b\[6\], w27 + 678: 4e0d1f9c mov v28.b\[6\], w28 + 67c: 4e0d1f9c mov v28.b\[6\], w28 + 680: 4e0d1fbd mov v29.b\[6\], w29 + 684: 4e0d1fbd mov v29.b\[6\], w29 + 688: 4e0d1fde mov v30.b\[6\], w30 + 68c: 4e0d1fde mov v30.b\[6\], w30 + 690: 4e0f1c21 mov v1.b\[7\], w1 + 694: 4e0f1c21 mov v1.b\[7\], w1 + 698: 4e0f1c42 mov v2.b\[7\], w2 + 69c: 4e0f1c42 mov v2.b\[7\], w2 + 6a0: 4e0f1c63 mov v3.b\[7\], w3 + 6a4: 4e0f1c63 mov v3.b\[7\], w3 + 6a8: 4e0f1c84 mov v4.b\[7\], w4 + 6ac: 4e0f1c84 mov v4.b\[7\], w4 + 6b0: 4e0f1ca5 mov v5.b\[7\], w5 + 6b4: 4e0f1ca5 mov v5.b\[7\], w5 + 6b8: 4e0f1cc6 mov v6.b\[7\], w6 + 6bc: 4e0f1cc6 mov v6.b\[7\], w6 + 6c0: 4e0f1ce7 mov v7.b\[7\], w7 + 6c4: 4e0f1ce7 mov v7.b\[7\], w7 + 6c8: 4e0f1d08 mov v8.b\[7\], w8 + 6cc: 4e0f1d08 mov v8.b\[7\], w8 + 6d0: 4e0f1d29 mov v9.b\[7\], w9 + 6d4: 4e0f1d29 mov v9.b\[7\], w9 + 6d8: 4e0f1d4a mov v10.b\[7\], w10 + 6dc: 4e0f1d4a mov v10.b\[7\], w10 + 6e0: 4e0f1d6b mov v11.b\[7\], w11 + 6e4: 4e0f1d6b mov v11.b\[7\], w11 + 6e8: 4e0f1d8c mov v12.b\[7\], w12 + 6ec: 4e0f1d8c mov v12.b\[7\], w12 + 6f0: 4e0f1dad mov v13.b\[7\], w13 + 6f4: 4e0f1dad mov v13.b\[7\], w13 + 6f8: 4e0f1dce mov v14.b\[7\], w14 + 6fc: 4e0f1dce mov v14.b\[7\], w14 + 700: 4e0f1def mov v15.b\[7\], w15 + 704: 4e0f1def mov v15.b\[7\], w15 + 708: 4e0f1e10 mov v16.b\[7\], w16 + 70c: 4e0f1e10 mov v16.b\[7\], w16 + 710: 4e0f1e31 mov v17.b\[7\], w17 + 714: 4e0f1e31 mov v17.b\[7\], w17 + 718: 4e0f1e52 mov v18.b\[7\], w18 + 71c: 4e0f1e52 mov v18.b\[7\], w18 + 720: 4e0f1e73 mov v19.b\[7\], w19 + 724: 4e0f1e73 mov v19.b\[7\], w19 + 728: 4e0f1e94 mov v20.b\[7\], w20 + 72c: 4e0f1e94 mov v20.b\[7\], w20 + 730: 4e0f1eb5 mov v21.b\[7\], w21 + 734: 4e0f1eb5 mov v21.b\[7\], w21 + 738: 4e0f1ed6 mov v22.b\[7\], w22 + 73c: 4e0f1ed6 mov v22.b\[7\], w22 + 740: 4e0f1ef7 mov v23.b\[7\], w23 + 744: 4e0f1ef7 mov v23.b\[7\], w23 + 748: 4e0f1f18 mov v24.b\[7\], w24 + 74c: 4e0f1f18 mov v24.b\[7\], w24 + 750: 4e0f1f39 mov v25.b\[7\], w25 + 754: 4e0f1f39 mov v25.b\[7\], w25 + 758: 4e0f1f5a mov v26.b\[7\], w26 + 75c: 4e0f1f5a mov v26.b\[7\], w26 + 760: 4e0f1f7b mov v27.b\[7\], w27 + 764: 4e0f1f7b mov v27.b\[7\], w27 + 768: 4e0f1f9c mov v28.b\[7\], w28 + 76c: 4e0f1f9c mov v28.b\[7\], w28 + 770: 4e0f1fbd mov v29.b\[7\], w29 + 774: 4e0f1fbd mov v29.b\[7\], w29 + 778: 4e0f1fde mov v30.b\[7\], w30 + 77c: 4e0f1fde mov v30.b\[7\], w30 + 780: 4e111c21 mov v1.b\[8\], w1 + 784: 4e111c21 mov v1.b\[8\], w1 + 788: 4e111c42 mov v2.b\[8\], w2 + 78c: 4e111c42 mov v2.b\[8\], w2 + 790: 4e111c63 mov v3.b\[8\], w3 + 794: 4e111c63 mov v3.b\[8\], w3 + 798: 4e111c84 mov v4.b\[8\], w4 + 79c: 4e111c84 mov v4.b\[8\], w4 + 7a0: 4e111ca5 mov v5.b\[8\], w5 + 7a4: 4e111ca5 mov v5.b\[8\], w5 + 7a8: 4e111cc6 mov v6.b\[8\], w6 + 7ac: 4e111cc6 mov v6.b\[8\], w6 + 7b0: 4e111ce7 mov v7.b\[8\], w7 + 7b4: 4e111ce7 mov v7.b\[8\], w7 + 7b8: 4e111d08 mov v8.b\[8\], w8 + 7bc: 4e111d08 mov v8.b\[8\], w8 + 7c0: 4e111d29 mov v9.b\[8\], w9 + 7c4: 4e111d29 mov v9.b\[8\], w9 + 7c8: 4e111d4a mov v10.b\[8\], w10 + 7cc: 4e111d4a mov v10.b\[8\], w10 + 7d0: 4e111d6b mov v11.b\[8\], w11 + 7d4: 4e111d6b mov v11.b\[8\], w11 + 7d8: 4e111d8c mov v12.b\[8\], w12 + 7dc: 4e111d8c mov v12.b\[8\], w12 + 7e0: 4e111dad mov v13.b\[8\], w13 + 7e4: 4e111dad mov v13.b\[8\], w13 + 7e8: 4e111dce mov v14.b\[8\], w14 + 7ec: 4e111dce mov v14.b\[8\], w14 + 7f0: 4e111def mov v15.b\[8\], w15 + 7f4: 4e111def mov v15.b\[8\], w15 + 7f8: 4e111e10 mov v16.b\[8\], w16 + 7fc: 4e111e10 mov v16.b\[8\], w16 + 800: 4e111e31 mov v17.b\[8\], w17 + 804: 4e111e31 mov v17.b\[8\], w17 + 808: 4e111e52 mov v18.b\[8\], w18 + 80c: 4e111e52 mov v18.b\[8\], w18 + 810: 4e111e73 mov v19.b\[8\], w19 + 814: 4e111e73 mov v19.b\[8\], w19 + 818: 4e111e94 mov v20.b\[8\], w20 + 81c: 4e111e94 mov v20.b\[8\], w20 + 820: 4e111eb5 mov v21.b\[8\], w21 + 824: 4e111eb5 mov v21.b\[8\], w21 + 828: 4e111ed6 mov v22.b\[8\], w22 + 82c: 4e111ed6 mov v22.b\[8\], w22 + 830: 4e111ef7 mov v23.b\[8\], w23 + 834: 4e111ef7 mov v23.b\[8\], w23 + 838: 4e111f18 mov v24.b\[8\], w24 + 83c: 4e111f18 mov v24.b\[8\], w24 + 840: 4e111f39 mov v25.b\[8\], w25 + 844: 4e111f39 mov v25.b\[8\], w25 + 848: 4e111f5a mov v26.b\[8\], w26 + 84c: 4e111f5a mov v26.b\[8\], w26 + 850: 4e111f7b mov v27.b\[8\], w27 + 854: 4e111f7b mov v27.b\[8\], w27 + 858: 4e111f9c mov v28.b\[8\], w28 + 85c: 4e111f9c mov v28.b\[8\], w28 + 860: 4e111fbd mov v29.b\[8\], w29 + 864: 4e111fbd mov v29.b\[8\], w29 + 868: 4e111fde mov v30.b\[8\], w30 + 86c: 4e111fde mov v30.b\[8\], w30 + 870: 4e131c21 mov v1.b\[9\], w1 + 874: 4e131c21 mov v1.b\[9\], w1 + 878: 4e131c42 mov v2.b\[9\], w2 + 87c: 4e131c42 mov v2.b\[9\], w2 + 880: 4e131c63 mov v3.b\[9\], w3 + 884: 4e131c63 mov v3.b\[9\], w3 + 888: 4e131c84 mov v4.b\[9\], w4 + 88c: 4e131c84 mov v4.b\[9\], w4 + 890: 4e131ca5 mov v5.b\[9\], w5 + 894: 4e131ca5 mov v5.b\[9\], w5 + 898: 4e131cc6 mov v6.b\[9\], w6 + 89c: 4e131cc6 mov v6.b\[9\], w6 + 8a0: 4e131ce7 mov v7.b\[9\], w7 + 8a4: 4e131ce7 mov v7.b\[9\], w7 + 8a8: 4e131d08 mov v8.b\[9\], w8 + 8ac: 4e131d08 mov v8.b\[9\], w8 + 8b0: 4e131d29 mov v9.b\[9\], w9 + 8b4: 4e131d29 mov v9.b\[9\], w9 + 8b8: 4e131d4a mov v10.b\[9\], w10 + 8bc: 4e131d4a mov v10.b\[9\], w10 + 8c0: 4e131d6b mov v11.b\[9\], w11 + 8c4: 4e131d6b mov v11.b\[9\], w11 + 8c8: 4e131d8c mov v12.b\[9\], w12 + 8cc: 4e131d8c mov v12.b\[9\], w12 + 8d0: 4e131dad mov v13.b\[9\], w13 + 8d4: 4e131dad mov v13.b\[9\], w13 + 8d8: 4e131dce mov v14.b\[9\], w14 + 8dc: 4e131dce mov v14.b\[9\], w14 + 8e0: 4e131def mov v15.b\[9\], w15 + 8e4: 4e131def mov v15.b\[9\], w15 + 8e8: 4e131e10 mov v16.b\[9\], w16 + 8ec: 4e131e10 mov v16.b\[9\], w16 + 8f0: 4e131e31 mov v17.b\[9\], w17 + 8f4: 4e131e31 mov v17.b\[9\], w17 + 8f8: 4e131e52 mov v18.b\[9\], w18 + 8fc: 4e131e52 mov v18.b\[9\], w18 + 900: 4e131e73 mov v19.b\[9\], w19 + 904: 4e131e73 mov v19.b\[9\], w19 + 908: 4e131e94 mov v20.b\[9\], w20 + 90c: 4e131e94 mov v20.b\[9\], w20 + 910: 4e131eb5 mov v21.b\[9\], w21 + 914: 4e131eb5 mov v21.b\[9\], w21 + 918: 4e131ed6 mov v22.b\[9\], w22 + 91c: 4e131ed6 mov v22.b\[9\], w22 + 920: 4e131ef7 mov v23.b\[9\], w23 + 924: 4e131ef7 mov v23.b\[9\], w23 + 928: 4e131f18 mov v24.b\[9\], w24 + 92c: 4e131f18 mov v24.b\[9\], w24 + 930: 4e131f39 mov v25.b\[9\], w25 + 934: 4e131f39 mov v25.b\[9\], w25 + 938: 4e131f5a mov v26.b\[9\], w26 + 93c: 4e131f5a mov v26.b\[9\], w26 + 940: 4e131f7b mov v27.b\[9\], w27 + 944: 4e131f7b mov v27.b\[9\], w27 + 948: 4e131f9c mov v28.b\[9\], w28 + 94c: 4e131f9c mov v28.b\[9\], w28 + 950: 4e131fbd mov v29.b\[9\], w29 + 954: 4e131fbd mov v29.b\[9\], w29 + 958: 4e131fde mov v30.b\[9\], w30 + 95c: 4e131fde mov v30.b\[9\], w30 + 960: 4e151c21 mov v1.b\[10\], w1 + 964: 4e151c21 mov v1.b\[10\], w1 + 968: 4e151c42 mov v2.b\[10\], w2 + 96c: 4e151c42 mov v2.b\[10\], w2 + 970: 4e151c63 mov v3.b\[10\], w3 + 974: 4e151c63 mov v3.b\[10\], w3 + 978: 4e151c84 mov v4.b\[10\], w4 + 97c: 4e151c84 mov v4.b\[10\], w4 + 980: 4e151ca5 mov v5.b\[10\], w5 + 984: 4e151ca5 mov v5.b\[10\], w5 + 988: 4e151cc6 mov v6.b\[10\], w6 + 98c: 4e151cc6 mov v6.b\[10\], w6 + 990: 4e151ce7 mov v7.b\[10\], w7 + 994: 4e151ce7 mov v7.b\[10\], w7 + 998: 4e151d08 mov v8.b\[10\], w8 + 99c: 4e151d08 mov v8.b\[10\], w8 + 9a0: 4e151d29 mov v9.b\[10\], w9 + 9a4: 4e151d29 mov v9.b\[10\], w9 + 9a8: 4e151d4a mov v10.b\[10\], w10 + 9ac: 4e151d4a mov v10.b\[10\], w10 + 9b0: 4e151d6b mov v11.b\[10\], w11 + 9b4: 4e151d6b mov v11.b\[10\], w11 + 9b8: 4e151d8c mov v12.b\[10\], w12 + 9bc: 4e151d8c mov v12.b\[10\], w12 + 9c0: 4e151dad mov v13.b\[10\], w13 + 9c4: 4e151dad mov v13.b\[10\], w13 + 9c8: 4e151dce mov v14.b\[10\], w14 + 9cc: 4e151dce mov v14.b\[10\], w14 + 9d0: 4e151def mov v15.b\[10\], w15 + 9d4: 4e151def mov v15.b\[10\], w15 + 9d8: 4e151e10 mov v16.b\[10\], w16 + 9dc: 4e151e10 mov v16.b\[10\], w16 + 9e0: 4e151e31 mov v17.b\[10\], w17 + 9e4: 4e151e31 mov v17.b\[10\], w17 + 9e8: 4e151e52 mov v18.b\[10\], w18 + 9ec: 4e151e52 mov v18.b\[10\], w18 + 9f0: 4e151e73 mov v19.b\[10\], w19 + 9f4: 4e151e73 mov v19.b\[10\], w19 + 9f8: 4e151e94 mov v20.b\[10\], w20 + 9fc: 4e151e94 mov v20.b\[10\], w20 + a00: 4e151eb5 mov v21.b\[10\], w21 + a04: 4e151eb5 mov v21.b\[10\], w21 + a08: 4e151ed6 mov v22.b\[10\], w22 + a0c: 4e151ed6 mov v22.b\[10\], w22 + a10: 4e151ef7 mov v23.b\[10\], w23 + a14: 4e151ef7 mov v23.b\[10\], w23 + a18: 4e151f18 mov v24.b\[10\], w24 + a1c: 4e151f18 mov v24.b\[10\], w24 + a20: 4e151f39 mov v25.b\[10\], w25 + a24: 4e151f39 mov v25.b\[10\], w25 + a28: 4e151f5a mov v26.b\[10\], w26 + a2c: 4e151f5a mov v26.b\[10\], w26 + a30: 4e151f7b mov v27.b\[10\], w27 + a34: 4e151f7b mov v27.b\[10\], w27 + a38: 4e151f9c mov v28.b\[10\], w28 + a3c: 4e151f9c mov v28.b\[10\], w28 + a40: 4e151fbd mov v29.b\[10\], w29 + a44: 4e151fbd mov v29.b\[10\], w29 + a48: 4e151fde mov v30.b\[10\], w30 + a4c: 4e151fde mov v30.b\[10\], w30 + a50: 4e171c21 mov v1.b\[11\], w1 + a54: 4e171c21 mov v1.b\[11\], w1 + a58: 4e171c42 mov v2.b\[11\], w2 + a5c: 4e171c42 mov v2.b\[11\], w2 + a60: 4e171c63 mov v3.b\[11\], w3 + a64: 4e171c63 mov v3.b\[11\], w3 + a68: 4e171c84 mov v4.b\[11\], w4 + a6c: 4e171c84 mov v4.b\[11\], w4 + a70: 4e171ca5 mov v5.b\[11\], w5 + a74: 4e171ca5 mov v5.b\[11\], w5 + a78: 4e171cc6 mov v6.b\[11\], w6 + a7c: 4e171cc6 mov v6.b\[11\], w6 + a80: 4e171ce7 mov v7.b\[11\], w7 + a84: 4e171ce7 mov v7.b\[11\], w7 + a88: 4e171d08 mov v8.b\[11\], w8 + a8c: 4e171d08 mov v8.b\[11\], w8 + a90: 4e171d29 mov v9.b\[11\], w9 + a94: 4e171d29 mov v9.b\[11\], w9 + a98: 4e171d4a mov v10.b\[11\], w10 + a9c: 4e171d4a mov v10.b\[11\], w10 + aa0: 4e171d6b mov v11.b\[11\], w11 + aa4: 4e171d6b mov v11.b\[11\], w11 + aa8: 4e171d8c mov v12.b\[11\], w12 + aac: 4e171d8c mov v12.b\[11\], w12 + ab0: 4e171dad mov v13.b\[11\], w13 + ab4: 4e171dad mov v13.b\[11\], w13 + ab8: 4e171dce mov v14.b\[11\], w14 + abc: 4e171dce mov v14.b\[11\], w14 + ac0: 4e171def mov v15.b\[11\], w15 + ac4: 4e171def mov v15.b\[11\], w15 + ac8: 4e171e10 mov v16.b\[11\], w16 + acc: 4e171e10 mov v16.b\[11\], w16 + ad0: 4e171e31 mov v17.b\[11\], w17 + ad4: 4e171e31 mov v17.b\[11\], w17 + ad8: 4e171e52 mov v18.b\[11\], w18 + adc: 4e171e52 mov v18.b\[11\], w18 + ae0: 4e171e73 mov v19.b\[11\], w19 + ae4: 4e171e73 mov v19.b\[11\], w19 + ae8: 4e171e94 mov v20.b\[11\], w20 + aec: 4e171e94 mov v20.b\[11\], w20 + af0: 4e171eb5 mov v21.b\[11\], w21 + af4: 4e171eb5 mov v21.b\[11\], w21 + af8: 4e171ed6 mov v22.b\[11\], w22 + afc: 4e171ed6 mov v22.b\[11\], w22 + b00: 4e171ef7 mov v23.b\[11\], w23 + b04: 4e171ef7 mov v23.b\[11\], w23 + b08: 4e171f18 mov v24.b\[11\], w24 + b0c: 4e171f18 mov v24.b\[11\], w24 + b10: 4e171f39 mov v25.b\[11\], w25 + b14: 4e171f39 mov v25.b\[11\], w25 + b18: 4e171f5a mov v26.b\[11\], w26 + b1c: 4e171f5a mov v26.b\[11\], w26 + b20: 4e171f7b mov v27.b\[11\], w27 + b24: 4e171f7b mov v27.b\[11\], w27 + b28: 4e171f9c mov v28.b\[11\], w28 + b2c: 4e171f9c mov v28.b\[11\], w28 + b30: 4e171fbd mov v29.b\[11\], w29 + b34: 4e171fbd mov v29.b\[11\], w29 + b38: 4e171fde mov v30.b\[11\], w30 + b3c: 4e171fde mov v30.b\[11\], w30 + b40: 4e191c21 mov v1.b\[12\], w1 + b44: 4e191c21 mov v1.b\[12\], w1 + b48: 4e191c42 mov v2.b\[12\], w2 + b4c: 4e191c42 mov v2.b\[12\], w2 + b50: 4e191c63 mov v3.b\[12\], w3 + b54: 4e191c63 mov v3.b\[12\], w3 + b58: 4e191c84 mov v4.b\[12\], w4 + b5c: 4e191c84 mov v4.b\[12\], w4 + b60: 4e191ca5 mov v5.b\[12\], w5 + b64: 4e191ca5 mov v5.b\[12\], w5 + b68: 4e191cc6 mov v6.b\[12\], w6 + b6c: 4e191cc6 mov v6.b\[12\], w6 + b70: 4e191ce7 mov v7.b\[12\], w7 + b74: 4e191ce7 mov v7.b\[12\], w7 + b78: 4e191d08 mov v8.b\[12\], w8 + b7c: 4e191d08 mov v8.b\[12\], w8 + b80: 4e191d29 mov v9.b\[12\], w9 + b84: 4e191d29 mov v9.b\[12\], w9 + b88: 4e191d4a mov v10.b\[12\], w10 + b8c: 4e191d4a mov v10.b\[12\], w10 + b90: 4e191d6b mov v11.b\[12\], w11 + b94: 4e191d6b mov v11.b\[12\], w11 + b98: 4e191d8c mov v12.b\[12\], w12 + b9c: 4e191d8c mov v12.b\[12\], w12 + ba0: 4e191dad mov v13.b\[12\], w13 + ba4: 4e191dad mov v13.b\[12\], w13 + ba8: 4e191dce mov v14.b\[12\], w14 + bac: 4e191dce mov v14.b\[12\], w14 + bb0: 4e191def mov v15.b\[12\], w15 + bb4: 4e191def mov v15.b\[12\], w15 + bb8: 4e191e10 mov v16.b\[12\], w16 + bbc: 4e191e10 mov v16.b\[12\], w16 + bc0: 4e191e31 mov v17.b\[12\], w17 + bc4: 4e191e31 mov v17.b\[12\], w17 + bc8: 4e191e52 mov v18.b\[12\], w18 + bcc: 4e191e52 mov v18.b\[12\], w18 + bd0: 4e191e73 mov v19.b\[12\], w19 + bd4: 4e191e73 mov v19.b\[12\], w19 + bd8: 4e191e94 mov v20.b\[12\], w20 + bdc: 4e191e94 mov v20.b\[12\], w20 + be0: 4e191eb5 mov v21.b\[12\], w21 + be4: 4e191eb5 mov v21.b\[12\], w21 + be8: 4e191ed6 mov v22.b\[12\], w22 + bec: 4e191ed6 mov v22.b\[12\], w22 + bf0: 4e191ef7 mov v23.b\[12\], w23 + bf4: 4e191ef7 mov v23.b\[12\], w23 + bf8: 4e191f18 mov v24.b\[12\], w24 + bfc: 4e191f18 mov v24.b\[12\], w24 + c00: 4e191f39 mov v25.b\[12\], w25 + c04: 4e191f39 mov v25.b\[12\], w25 + c08: 4e191f5a mov v26.b\[12\], w26 + c0c: 4e191f5a mov v26.b\[12\], w26 + c10: 4e191f7b mov v27.b\[12\], w27 + c14: 4e191f7b mov v27.b\[12\], w27 + c18: 4e191f9c mov v28.b\[12\], w28 + c1c: 4e191f9c mov v28.b\[12\], w28 + c20: 4e191fbd mov v29.b\[12\], w29 + c24: 4e191fbd mov v29.b\[12\], w29 + c28: 4e191fde mov v30.b\[12\], w30 + c2c: 4e191fde mov v30.b\[12\], w30 + c30: 4e1b1c21 mov v1.b\[13\], w1 + c34: 4e1b1c21 mov v1.b\[13\], w1 + c38: 4e1b1c42 mov v2.b\[13\], w2 + c3c: 4e1b1c42 mov v2.b\[13\], w2 + c40: 4e1b1c63 mov v3.b\[13\], w3 + c44: 4e1b1c63 mov v3.b\[13\], w3 + c48: 4e1b1c84 mov v4.b\[13\], w4 + c4c: 4e1b1c84 mov v4.b\[13\], w4 + c50: 4e1b1ca5 mov v5.b\[13\], w5 + c54: 4e1b1ca5 mov v5.b\[13\], w5 + c58: 4e1b1cc6 mov v6.b\[13\], w6 + c5c: 4e1b1cc6 mov v6.b\[13\], w6 + c60: 4e1b1ce7 mov v7.b\[13\], w7 + c64: 4e1b1ce7 mov v7.b\[13\], w7 + c68: 4e1b1d08 mov v8.b\[13\], w8 + c6c: 4e1b1d08 mov v8.b\[13\], w8 + c70: 4e1b1d29 mov v9.b\[13\], w9 + c74: 4e1b1d29 mov v9.b\[13\], w9 + c78: 4e1b1d4a mov v10.b\[13\], w10 + c7c: 4e1b1d4a mov v10.b\[13\], w10 + c80: 4e1b1d6b mov v11.b\[13\], w11 + c84: 4e1b1d6b mov v11.b\[13\], w11 + c88: 4e1b1d8c mov v12.b\[13\], w12 + c8c: 4e1b1d8c mov v12.b\[13\], w12 + c90: 4e1b1dad mov v13.b\[13\], w13 + c94: 4e1b1dad mov v13.b\[13\], w13 + c98: 4e1b1dce mov v14.b\[13\], w14 + c9c: 4e1b1dce mov v14.b\[13\], w14 + ca0: 4e1b1def mov v15.b\[13\], w15 + ca4: 4e1b1def mov v15.b\[13\], w15 + ca8: 4e1b1e10 mov v16.b\[13\], w16 + cac: 4e1b1e10 mov v16.b\[13\], w16 + cb0: 4e1b1e31 mov v17.b\[13\], w17 + cb4: 4e1b1e31 mov v17.b\[13\], w17 + cb8: 4e1b1e52 mov v18.b\[13\], w18 + cbc: 4e1b1e52 mov v18.b\[13\], w18 + cc0: 4e1b1e73 mov v19.b\[13\], w19 + cc4: 4e1b1e73 mov v19.b\[13\], w19 + cc8: 4e1b1e94 mov v20.b\[13\], w20 + ccc: 4e1b1e94 mov v20.b\[13\], w20 + cd0: 4e1b1eb5 mov v21.b\[13\], w21 + cd4: 4e1b1eb5 mov v21.b\[13\], w21 + cd8: 4e1b1ed6 mov v22.b\[13\], w22 + cdc: 4e1b1ed6 mov v22.b\[13\], w22 + ce0: 4e1b1ef7 mov v23.b\[13\], w23 + ce4: 4e1b1ef7 mov v23.b\[13\], w23 + ce8: 4e1b1f18 mov v24.b\[13\], w24 + cec: 4e1b1f18 mov v24.b\[13\], w24 + cf0: 4e1b1f39 mov v25.b\[13\], w25 + cf4: 4e1b1f39 mov v25.b\[13\], w25 + cf8: 4e1b1f5a mov v26.b\[13\], w26 + cfc: 4e1b1f5a mov v26.b\[13\], w26 + d00: 4e1b1f7b mov v27.b\[13\], w27 + d04: 4e1b1f7b mov v27.b\[13\], w27 + d08: 4e1b1f9c mov v28.b\[13\], w28 + d0c: 4e1b1f9c mov v28.b\[13\], w28 + d10: 4e1b1fbd mov v29.b\[13\], w29 + d14: 4e1b1fbd mov v29.b\[13\], w29 + d18: 4e1b1fde mov v30.b\[13\], w30 + d1c: 4e1b1fde mov v30.b\[13\], w30 + d20: 4e1d1c21 mov v1.b\[14\], w1 + d24: 4e1d1c21 mov v1.b\[14\], w1 + d28: 4e1d1c42 mov v2.b\[14\], w2 + d2c: 4e1d1c42 mov v2.b\[14\], w2 + d30: 4e1d1c63 mov v3.b\[14\], w3 + d34: 4e1d1c63 mov v3.b\[14\], w3 + d38: 4e1d1c84 mov v4.b\[14\], w4 + d3c: 4e1d1c84 mov v4.b\[14\], w4 + d40: 4e1d1ca5 mov v5.b\[14\], w5 + d44: 4e1d1ca5 mov v5.b\[14\], w5 + d48: 4e1d1cc6 mov v6.b\[14\], w6 + d4c: 4e1d1cc6 mov v6.b\[14\], w6 + d50: 4e1d1ce7 mov v7.b\[14\], w7 + d54: 4e1d1ce7 mov v7.b\[14\], w7 + d58: 4e1d1d08 mov v8.b\[14\], w8 + d5c: 4e1d1d08 mov v8.b\[14\], w8 + d60: 4e1d1d29 mov v9.b\[14\], w9 + d64: 4e1d1d29 mov v9.b\[14\], w9 + d68: 4e1d1d4a mov v10.b\[14\], w10 + d6c: 4e1d1d4a mov v10.b\[14\], w10 + d70: 4e1d1d6b mov v11.b\[14\], w11 + d74: 4e1d1d6b mov v11.b\[14\], w11 + d78: 4e1d1d8c mov v12.b\[14\], w12 + d7c: 4e1d1d8c mov v12.b\[14\], w12 + d80: 4e1d1dad mov v13.b\[14\], w13 + d84: 4e1d1dad mov v13.b\[14\], w13 + d88: 4e1d1dce mov v14.b\[14\], w14 + d8c: 4e1d1dce mov v14.b\[14\], w14 + d90: 4e1d1def mov v15.b\[14\], w15 + d94: 4e1d1def mov v15.b\[14\], w15 + d98: 4e1d1e10 mov v16.b\[14\], w16 + d9c: 4e1d1e10 mov v16.b\[14\], w16 + da0: 4e1d1e31 mov v17.b\[14\], w17 + da4: 4e1d1e31 mov v17.b\[14\], w17 + da8: 4e1d1e52 mov v18.b\[14\], w18 + dac: 4e1d1e52 mov v18.b\[14\], w18 + db0: 4e1d1e73 mov v19.b\[14\], w19 + db4: 4e1d1e73 mov v19.b\[14\], w19 + db8: 4e1d1e94 mov v20.b\[14\], w20 + dbc: 4e1d1e94 mov v20.b\[14\], w20 + dc0: 4e1d1eb5 mov v21.b\[14\], w21 + dc4: 4e1d1eb5 mov v21.b\[14\], w21 + dc8: 4e1d1ed6 mov v22.b\[14\], w22 + dcc: 4e1d1ed6 mov v22.b\[14\], w22 + dd0: 4e1d1ef7 mov v23.b\[14\], w23 + dd4: 4e1d1ef7 mov v23.b\[14\], w23 + dd8: 4e1d1f18 mov v24.b\[14\], w24 + ddc: 4e1d1f18 mov v24.b\[14\], w24 + de0: 4e1d1f39 mov v25.b\[14\], w25 + de4: 4e1d1f39 mov v25.b\[14\], w25 + de8: 4e1d1f5a mov v26.b\[14\], w26 + dec: 4e1d1f5a mov v26.b\[14\], w26 + df0: 4e1d1f7b mov v27.b\[14\], w27 + df4: 4e1d1f7b mov v27.b\[14\], w27 + df8: 4e1d1f9c mov v28.b\[14\], w28 + dfc: 4e1d1f9c mov v28.b\[14\], w28 + e00: 4e1d1fbd mov v29.b\[14\], w29 + e04: 4e1d1fbd mov v29.b\[14\], w29 + e08: 4e1d1fde mov v30.b\[14\], w30 + e0c: 4e1d1fde mov v30.b\[14\], w30 + e10: 4e1f1c21 mov v1.b\[15\], w1 + e14: 4e1f1c21 mov v1.b\[15\], w1 + e18: 4e1f1c42 mov v2.b\[15\], w2 + e1c: 4e1f1c42 mov v2.b\[15\], w2 + e20: 4e1f1c63 mov v3.b\[15\], w3 + e24: 4e1f1c63 mov v3.b\[15\], w3 + e28: 4e1f1c84 mov v4.b\[15\], w4 + e2c: 4e1f1c84 mov v4.b\[15\], w4 + e30: 4e1f1ca5 mov v5.b\[15\], w5 + e34: 4e1f1ca5 mov v5.b\[15\], w5 + e38: 4e1f1cc6 mov v6.b\[15\], w6 + e3c: 4e1f1cc6 mov v6.b\[15\], w6 + e40: 4e1f1ce7 mov v7.b\[15\], w7 + e44: 4e1f1ce7 mov v7.b\[15\], w7 + e48: 4e1f1d08 mov v8.b\[15\], w8 + e4c: 4e1f1d08 mov v8.b\[15\], w8 + e50: 4e1f1d29 mov v9.b\[15\], w9 + e54: 4e1f1d29 mov v9.b\[15\], w9 + e58: 4e1f1d4a mov v10.b\[15\], w10 + e5c: 4e1f1d4a mov v10.b\[15\], w10 + e60: 4e1f1d6b mov v11.b\[15\], w11 + e64: 4e1f1d6b mov v11.b\[15\], w11 + e68: 4e1f1d8c mov v12.b\[15\], w12 + e6c: 4e1f1d8c mov v12.b\[15\], w12 + e70: 4e1f1dad mov v13.b\[15\], w13 + e74: 4e1f1dad mov v13.b\[15\], w13 + e78: 4e1f1dce mov v14.b\[15\], w14 + e7c: 4e1f1dce mov v14.b\[15\], w14 + e80: 4e1f1def mov v15.b\[15\], w15 + e84: 4e1f1def mov v15.b\[15\], w15 + e88: 4e1f1e10 mov v16.b\[15\], w16 + e8c: 4e1f1e10 mov v16.b\[15\], w16 + e90: 4e1f1e31 mov v17.b\[15\], w17 + e94: 4e1f1e31 mov v17.b\[15\], w17 + e98: 4e1f1e52 mov v18.b\[15\], w18 + e9c: 4e1f1e52 mov v18.b\[15\], w18 + ea0: 4e1f1e73 mov v19.b\[15\], w19 + ea4: 4e1f1e73 mov v19.b\[15\], w19 + ea8: 4e1f1e94 mov v20.b\[15\], w20 + eac: 4e1f1e94 mov v20.b\[15\], w20 + eb0: 4e1f1eb5 mov v21.b\[15\], w21 + eb4: 4e1f1eb5 mov v21.b\[15\], w21 + eb8: 4e1f1ed6 mov v22.b\[15\], w22 + ebc: 4e1f1ed6 mov v22.b\[15\], w22 + ec0: 4e1f1ef7 mov v23.b\[15\], w23 + ec4: 4e1f1ef7 mov v23.b\[15\], w23 + ec8: 4e1f1f18 mov v24.b\[15\], w24 + ecc: 4e1f1f18 mov v24.b\[15\], w24 + ed0: 4e1f1f39 mov v25.b\[15\], w25 + ed4: 4e1f1f39 mov v25.b\[15\], w25 + ed8: 4e1f1f5a mov v26.b\[15\], w26 + edc: 4e1f1f5a mov v26.b\[15\], w26 + ee0: 4e1f1f7b mov v27.b\[15\], w27 + ee4: 4e1f1f7b mov v27.b\[15\], w27 + ee8: 4e1f1f9c mov v28.b\[15\], w28 + eec: 4e1f1f9c mov v28.b\[15\], w28 + ef0: 4e1f1fbd mov v29.b\[15\], w29 + ef4: 4e1f1fbd mov v29.b\[15\], w29 + ef8: 4e1f1fde mov v30.b\[15\], w30 + efc: 4e1f1fde mov v30.b\[15\], w30 + f00: 4e021c21 mov v1.h\[0\], w1 + f04: 4e021c21 mov v1.h\[0\], w1 + f08: 4e021c42 mov v2.h\[0\], w2 + f0c: 4e021c42 mov v2.h\[0\], w2 + f10: 4e021c63 mov v3.h\[0\], w3 + f14: 4e021c63 mov v3.h\[0\], w3 + f18: 4e021c84 mov v4.h\[0\], w4 + f1c: 4e021c84 mov v4.h\[0\], w4 + f20: 4e021ca5 mov v5.h\[0\], w5 + f24: 4e021ca5 mov v5.h\[0\], w5 + f28: 4e021cc6 mov v6.h\[0\], w6 + f2c: 4e021cc6 mov v6.h\[0\], w6 + f30: 4e021ce7 mov v7.h\[0\], w7 + f34: 4e021ce7 mov v7.h\[0\], w7 + f38: 4e021d08 mov v8.h\[0\], w8 + f3c: 4e021d08 mov v8.h\[0\], w8 + f40: 4e021d29 mov v9.h\[0\], w9 + f44: 4e021d29 mov v9.h\[0\], w9 + f48: 4e021d4a mov v10.h\[0\], w10 + f4c: 4e021d4a mov v10.h\[0\], w10 + f50: 4e021d6b mov v11.h\[0\], w11 + f54: 4e021d6b mov v11.h\[0\], w11 + f58: 4e021d8c mov v12.h\[0\], w12 + f5c: 4e021d8c mov v12.h\[0\], w12 + f60: 4e021dad mov v13.h\[0\], w13 + f64: 4e021dad mov v13.h\[0\], w13 + f68: 4e021dce mov v14.h\[0\], w14 + f6c: 4e021dce mov v14.h\[0\], w14 + f70: 4e021def mov v15.h\[0\], w15 + f74: 4e021def mov v15.h\[0\], w15 + f78: 4e021e10 mov v16.h\[0\], w16 + f7c: 4e021e10 mov v16.h\[0\], w16 + f80: 4e021e31 mov v17.h\[0\], w17 + f84: 4e021e31 mov v17.h\[0\], w17 + f88: 4e021e52 mov v18.h\[0\], w18 + f8c: 4e021e52 mov v18.h\[0\], w18 + f90: 4e021e73 mov v19.h\[0\], w19 + f94: 4e021e73 mov v19.h\[0\], w19 + f98: 4e021e94 mov v20.h\[0\], w20 + f9c: 4e021e94 mov v20.h\[0\], w20 + fa0: 4e021eb5 mov v21.h\[0\], w21 + fa4: 4e021eb5 mov v21.h\[0\], w21 + fa8: 4e021ed6 mov v22.h\[0\], w22 + fac: 4e021ed6 mov v22.h\[0\], w22 + fb0: 4e021ef7 mov v23.h\[0\], w23 + fb4: 4e021ef7 mov v23.h\[0\], w23 + fb8: 4e021f18 mov v24.h\[0\], w24 + fbc: 4e021f18 mov v24.h\[0\], w24 + fc0: 4e021f39 mov v25.h\[0\], w25 + fc4: 4e021f39 mov v25.h\[0\], w25 + fc8: 4e021f5a mov v26.h\[0\], w26 + fcc: 4e021f5a mov v26.h\[0\], w26 + fd0: 4e021f7b mov v27.h\[0\], w27 + fd4: 4e021f7b mov v27.h\[0\], w27 + fd8: 4e021f9c mov v28.h\[0\], w28 + fdc: 4e021f9c mov v28.h\[0\], w28 + fe0: 4e021fbd mov v29.h\[0\], w29 + fe4: 4e021fbd mov v29.h\[0\], w29 + fe8: 4e021fde mov v30.h\[0\], w30 + fec: 4e021fde mov v30.h\[0\], w30 + ff0: 4e061c21 mov v1.h\[1\], w1 + ff4: 4e061c21 mov v1.h\[1\], w1 + ff8: 4e061c42 mov v2.h\[1\], w2 + ffc: 4e061c42 mov v2.h\[1\], w2 + 1000: 4e061c63 mov v3.h\[1\], w3 + 1004: 4e061c63 mov v3.h\[1\], w3 + 1008: 4e061c84 mov v4.h\[1\], w4 + 100c: 4e061c84 mov v4.h\[1\], w4 + 1010: 4e061ca5 mov v5.h\[1\], w5 + 1014: 4e061ca5 mov v5.h\[1\], w5 + 1018: 4e061cc6 mov v6.h\[1\], w6 + 101c: 4e061cc6 mov v6.h\[1\], w6 + 1020: 4e061ce7 mov v7.h\[1\], w7 + 1024: 4e061ce7 mov v7.h\[1\], w7 + 1028: 4e061d08 mov v8.h\[1\], w8 + 102c: 4e061d08 mov v8.h\[1\], w8 + 1030: 4e061d29 mov v9.h\[1\], w9 + 1034: 4e061d29 mov v9.h\[1\], w9 + 1038: 4e061d4a mov v10.h\[1\], w10 + 103c: 4e061d4a mov v10.h\[1\], w10 + 1040: 4e061d6b mov v11.h\[1\], w11 + 1044: 4e061d6b mov v11.h\[1\], w11 + 1048: 4e061d8c mov v12.h\[1\], w12 + 104c: 4e061d8c mov v12.h\[1\], w12 + 1050: 4e061dad mov v13.h\[1\], w13 + 1054: 4e061dad mov v13.h\[1\], w13 + 1058: 4e061dce mov v14.h\[1\], w14 + 105c: 4e061dce mov v14.h\[1\], w14 + 1060: 4e061def mov v15.h\[1\], w15 + 1064: 4e061def mov v15.h\[1\], w15 + 1068: 4e061e10 mov v16.h\[1\], w16 + 106c: 4e061e10 mov v16.h\[1\], w16 + 1070: 4e061e31 mov v17.h\[1\], w17 + 1074: 4e061e31 mov v17.h\[1\], w17 + 1078: 4e061e52 mov v18.h\[1\], w18 + 107c: 4e061e52 mov v18.h\[1\], w18 + 1080: 4e061e73 mov v19.h\[1\], w19 + 1084: 4e061e73 mov v19.h\[1\], w19 + 1088: 4e061e94 mov v20.h\[1\], w20 + 108c: 4e061e94 mov v20.h\[1\], w20 + 1090: 4e061eb5 mov v21.h\[1\], w21 + 1094: 4e061eb5 mov v21.h\[1\], w21 + 1098: 4e061ed6 mov v22.h\[1\], w22 + 109c: 4e061ed6 mov v22.h\[1\], w22 + 10a0: 4e061ef7 mov v23.h\[1\], w23 + 10a4: 4e061ef7 mov v23.h\[1\], w23 + 10a8: 4e061f18 mov v24.h\[1\], w24 + 10ac: 4e061f18 mov v24.h\[1\], w24 + 10b0: 4e061f39 mov v25.h\[1\], w25 + 10b4: 4e061f39 mov v25.h\[1\], w25 + 10b8: 4e061f5a mov v26.h\[1\], w26 + 10bc: 4e061f5a mov v26.h\[1\], w26 + 10c0: 4e061f7b mov v27.h\[1\], w27 + 10c4: 4e061f7b mov v27.h\[1\], w27 + 10c8: 4e061f9c mov v28.h\[1\], w28 + 10cc: 4e061f9c mov v28.h\[1\], w28 + 10d0: 4e061fbd mov v29.h\[1\], w29 + 10d4: 4e061fbd mov v29.h\[1\], w29 + 10d8: 4e061fde mov v30.h\[1\], w30 + 10dc: 4e061fde mov v30.h\[1\], w30 + 10e0: 4e0a1c21 mov v1.h\[2\], w1 + 10e4: 4e0a1c21 mov v1.h\[2\], w1 + 10e8: 4e0a1c42 mov v2.h\[2\], w2 + 10ec: 4e0a1c42 mov v2.h\[2\], w2 + 10f0: 4e0a1c63 mov v3.h\[2\], w3 + 10f4: 4e0a1c63 mov v3.h\[2\], w3 + 10f8: 4e0a1c84 mov v4.h\[2\], w4 + 10fc: 4e0a1c84 mov v4.h\[2\], w4 + 1100: 4e0a1ca5 mov v5.h\[2\], w5 + 1104: 4e0a1ca5 mov v5.h\[2\], w5 + 1108: 4e0a1cc6 mov v6.h\[2\], w6 + 110c: 4e0a1cc6 mov v6.h\[2\], w6 + 1110: 4e0a1ce7 mov v7.h\[2\], w7 + 1114: 4e0a1ce7 mov v7.h\[2\], w7 + 1118: 4e0a1d08 mov v8.h\[2\], w8 + 111c: 4e0a1d08 mov v8.h\[2\], w8 + 1120: 4e0a1d29 mov v9.h\[2\], w9 + 1124: 4e0a1d29 mov v9.h\[2\], w9 + 1128: 4e0a1d4a mov v10.h\[2\], w10 + 112c: 4e0a1d4a mov v10.h\[2\], w10 + 1130: 4e0a1d6b mov v11.h\[2\], w11 + 1134: 4e0a1d6b mov v11.h\[2\], w11 + 1138: 4e0a1d8c mov v12.h\[2\], w12 + 113c: 4e0a1d8c mov v12.h\[2\], w12 + 1140: 4e0a1dad mov v13.h\[2\], w13 + 1144: 4e0a1dad mov v13.h\[2\], w13 + 1148: 4e0a1dce mov v14.h\[2\], w14 + 114c: 4e0a1dce mov v14.h\[2\], w14 + 1150: 4e0a1def mov v15.h\[2\], w15 + 1154: 4e0a1def mov v15.h\[2\], w15 + 1158: 4e0a1e10 mov v16.h\[2\], w16 + 115c: 4e0a1e10 mov v16.h\[2\], w16 + 1160: 4e0a1e31 mov v17.h\[2\], w17 + 1164: 4e0a1e31 mov v17.h\[2\], w17 + 1168: 4e0a1e52 mov v18.h\[2\], w18 + 116c: 4e0a1e52 mov v18.h\[2\], w18 + 1170: 4e0a1e73 mov v19.h\[2\], w19 + 1174: 4e0a1e73 mov v19.h\[2\], w19 + 1178: 4e0a1e94 mov v20.h\[2\], w20 + 117c: 4e0a1e94 mov v20.h\[2\], w20 + 1180: 4e0a1eb5 mov v21.h\[2\], w21 + 1184: 4e0a1eb5 mov v21.h\[2\], w21 + 1188: 4e0a1ed6 mov v22.h\[2\], w22 + 118c: 4e0a1ed6 mov v22.h\[2\], w22 + 1190: 4e0a1ef7 mov v23.h\[2\], w23 + 1194: 4e0a1ef7 mov v23.h\[2\], w23 + 1198: 4e0a1f18 mov v24.h\[2\], w24 + 119c: 4e0a1f18 mov v24.h\[2\], w24 + 11a0: 4e0a1f39 mov v25.h\[2\], w25 + 11a4: 4e0a1f39 mov v25.h\[2\], w25 + 11a8: 4e0a1f5a mov v26.h\[2\], w26 + 11ac: 4e0a1f5a mov v26.h\[2\], w26 + 11b0: 4e0a1f7b mov v27.h\[2\], w27 + 11b4: 4e0a1f7b mov v27.h\[2\], w27 + 11b8: 4e0a1f9c mov v28.h\[2\], w28 + 11bc: 4e0a1f9c mov v28.h\[2\], w28 + 11c0: 4e0a1fbd mov v29.h\[2\], w29 + 11c4: 4e0a1fbd mov v29.h\[2\], w29 + 11c8: 4e0a1fde mov v30.h\[2\], w30 + 11cc: 4e0a1fde mov v30.h\[2\], w30 + 11d0: 4e0e1c21 mov v1.h\[3\], w1 + 11d4: 4e0e1c21 mov v1.h\[3\], w1 + 11d8: 4e0e1c42 mov v2.h\[3\], w2 + 11dc: 4e0e1c42 mov v2.h\[3\], w2 + 11e0: 4e0e1c63 mov v3.h\[3\], w3 + 11e4: 4e0e1c63 mov v3.h\[3\], w3 + 11e8: 4e0e1c84 mov v4.h\[3\], w4 + 11ec: 4e0e1c84 mov v4.h\[3\], w4 + 11f0: 4e0e1ca5 mov v5.h\[3\], w5 + 11f4: 4e0e1ca5 mov v5.h\[3\], w5 + 11f8: 4e0e1cc6 mov v6.h\[3\], w6 + 11fc: 4e0e1cc6 mov v6.h\[3\], w6 + 1200: 4e0e1ce7 mov v7.h\[3\], w7 + 1204: 4e0e1ce7 mov v7.h\[3\], w7 + 1208: 4e0e1d08 mov v8.h\[3\], w8 + 120c: 4e0e1d08 mov v8.h\[3\], w8 + 1210: 4e0e1d29 mov v9.h\[3\], w9 + 1214: 4e0e1d29 mov v9.h\[3\], w9 + 1218: 4e0e1d4a mov v10.h\[3\], w10 + 121c: 4e0e1d4a mov v10.h\[3\], w10 + 1220: 4e0e1d6b mov v11.h\[3\], w11 + 1224: 4e0e1d6b mov v11.h\[3\], w11 + 1228: 4e0e1d8c mov v12.h\[3\], w12 + 122c: 4e0e1d8c mov v12.h\[3\], w12 + 1230: 4e0e1dad mov v13.h\[3\], w13 + 1234: 4e0e1dad mov v13.h\[3\], w13 + 1238: 4e0e1dce mov v14.h\[3\], w14 + 123c: 4e0e1dce mov v14.h\[3\], w14 + 1240: 4e0e1def mov v15.h\[3\], w15 + 1244: 4e0e1def mov v15.h\[3\], w15 + 1248: 4e0e1e10 mov v16.h\[3\], w16 + 124c: 4e0e1e10 mov v16.h\[3\], w16 + 1250: 4e0e1e31 mov v17.h\[3\], w17 + 1254: 4e0e1e31 mov v17.h\[3\], w17 + 1258: 4e0e1e52 mov v18.h\[3\], w18 + 125c: 4e0e1e52 mov v18.h\[3\], w18 + 1260: 4e0e1e73 mov v19.h\[3\], w19 + 1264: 4e0e1e73 mov v19.h\[3\], w19 + 1268: 4e0e1e94 mov v20.h\[3\], w20 + 126c: 4e0e1e94 mov v20.h\[3\], w20 + 1270: 4e0e1eb5 mov v21.h\[3\], w21 + 1274: 4e0e1eb5 mov v21.h\[3\], w21 + 1278: 4e0e1ed6 mov v22.h\[3\], w22 + 127c: 4e0e1ed6 mov v22.h\[3\], w22 + 1280: 4e0e1ef7 mov v23.h\[3\], w23 + 1284: 4e0e1ef7 mov v23.h\[3\], w23 + 1288: 4e0e1f18 mov v24.h\[3\], w24 + 128c: 4e0e1f18 mov v24.h\[3\], w24 + 1290: 4e0e1f39 mov v25.h\[3\], w25 + 1294: 4e0e1f39 mov v25.h\[3\], w25 + 1298: 4e0e1f5a mov v26.h\[3\], w26 + 129c: 4e0e1f5a mov v26.h\[3\], w26 + 12a0: 4e0e1f7b mov v27.h\[3\], w27 + 12a4: 4e0e1f7b mov v27.h\[3\], w27 + 12a8: 4e0e1f9c mov v28.h\[3\], w28 + 12ac: 4e0e1f9c mov v28.h\[3\], w28 + 12b0: 4e0e1fbd mov v29.h\[3\], w29 + 12b4: 4e0e1fbd mov v29.h\[3\], w29 + 12b8: 4e0e1fde mov v30.h\[3\], w30 + 12bc: 4e0e1fde mov v30.h\[3\], w30 + 12c0: 4e121c21 mov v1.h\[4\], w1 + 12c4: 4e121c21 mov v1.h\[4\], w1 + 12c8: 4e121c42 mov v2.h\[4\], w2 + 12cc: 4e121c42 mov v2.h\[4\], w2 + 12d0: 4e121c63 mov v3.h\[4\], w3 + 12d4: 4e121c63 mov v3.h\[4\], w3 + 12d8: 4e121c84 mov v4.h\[4\], w4 + 12dc: 4e121c84 mov v4.h\[4\], w4 + 12e0: 4e121ca5 mov v5.h\[4\], w5 + 12e4: 4e121ca5 mov v5.h\[4\], w5 + 12e8: 4e121cc6 mov v6.h\[4\], w6 + 12ec: 4e121cc6 mov v6.h\[4\], w6 + 12f0: 4e121ce7 mov v7.h\[4\], w7 + 12f4: 4e121ce7 mov v7.h\[4\], w7 + 12f8: 4e121d08 mov v8.h\[4\], w8 + 12fc: 4e121d08 mov v8.h\[4\], w8 + 1300: 4e121d29 mov v9.h\[4\], w9 + 1304: 4e121d29 mov v9.h\[4\], w9 + 1308: 4e121d4a mov v10.h\[4\], w10 + 130c: 4e121d4a mov v10.h\[4\], w10 + 1310: 4e121d6b mov v11.h\[4\], w11 + 1314: 4e121d6b mov v11.h\[4\], w11 + 1318: 4e121d8c mov v12.h\[4\], w12 + 131c: 4e121d8c mov v12.h\[4\], w12 + 1320: 4e121dad mov v13.h\[4\], w13 + 1324: 4e121dad mov v13.h\[4\], w13 + 1328: 4e121dce mov v14.h\[4\], w14 + 132c: 4e121dce mov v14.h\[4\], w14 + 1330: 4e121def mov v15.h\[4\], w15 + 1334: 4e121def mov v15.h\[4\], w15 + 1338: 4e121e10 mov v16.h\[4\], w16 + 133c: 4e121e10 mov v16.h\[4\], w16 + 1340: 4e121e31 mov v17.h\[4\], w17 + 1344: 4e121e31 mov v17.h\[4\], w17 + 1348: 4e121e52 mov v18.h\[4\], w18 + 134c: 4e121e52 mov v18.h\[4\], w18 + 1350: 4e121e73 mov v19.h\[4\], w19 + 1354: 4e121e73 mov v19.h\[4\], w19 + 1358: 4e121e94 mov v20.h\[4\], w20 + 135c: 4e121e94 mov v20.h\[4\], w20 + 1360: 4e121eb5 mov v21.h\[4\], w21 + 1364: 4e121eb5 mov v21.h\[4\], w21 + 1368: 4e121ed6 mov v22.h\[4\], w22 + 136c: 4e121ed6 mov v22.h\[4\], w22 + 1370: 4e121ef7 mov v23.h\[4\], w23 + 1374: 4e121ef7 mov v23.h\[4\], w23 + 1378: 4e121f18 mov v24.h\[4\], w24 + 137c: 4e121f18 mov v24.h\[4\], w24 + 1380: 4e121f39 mov v25.h\[4\], w25 + 1384: 4e121f39 mov v25.h\[4\], w25 + 1388: 4e121f5a mov v26.h\[4\], w26 + 138c: 4e121f5a mov v26.h\[4\], w26 + 1390: 4e121f7b mov v27.h\[4\], w27 + 1394: 4e121f7b mov v27.h\[4\], w27 + 1398: 4e121f9c mov v28.h\[4\], w28 + 139c: 4e121f9c mov v28.h\[4\], w28 + 13a0: 4e121fbd mov v29.h\[4\], w29 + 13a4: 4e121fbd mov v29.h\[4\], w29 + 13a8: 4e121fde mov v30.h\[4\], w30 + 13ac: 4e121fde mov v30.h\[4\], w30 + 13b0: 4e161c21 mov v1.h\[5\], w1 + 13b4: 4e161c21 mov v1.h\[5\], w1 + 13b8: 4e161c42 mov v2.h\[5\], w2 + 13bc: 4e161c42 mov v2.h\[5\], w2 + 13c0: 4e161c63 mov v3.h\[5\], w3 + 13c4: 4e161c63 mov v3.h\[5\], w3 + 13c8: 4e161c84 mov v4.h\[5\], w4 + 13cc: 4e161c84 mov v4.h\[5\], w4 + 13d0: 4e161ca5 mov v5.h\[5\], w5 + 13d4: 4e161ca5 mov v5.h\[5\], w5 + 13d8: 4e161cc6 mov v6.h\[5\], w6 + 13dc: 4e161cc6 mov v6.h\[5\], w6 + 13e0: 4e161ce7 mov v7.h\[5\], w7 + 13e4: 4e161ce7 mov v7.h\[5\], w7 + 13e8: 4e161d08 mov v8.h\[5\], w8 + 13ec: 4e161d08 mov v8.h\[5\], w8 + 13f0: 4e161d29 mov v9.h\[5\], w9 + 13f4: 4e161d29 mov v9.h\[5\], w9 + 13f8: 4e161d4a mov v10.h\[5\], w10 + 13fc: 4e161d4a mov v10.h\[5\], w10 + 1400: 4e161d6b mov v11.h\[5\], w11 + 1404: 4e161d6b mov v11.h\[5\], w11 + 1408: 4e161d8c mov v12.h\[5\], w12 + 140c: 4e161d8c mov v12.h\[5\], w12 + 1410: 4e161dad mov v13.h\[5\], w13 + 1414: 4e161dad mov v13.h\[5\], w13 + 1418: 4e161dce mov v14.h\[5\], w14 + 141c: 4e161dce mov v14.h\[5\], w14 + 1420: 4e161def mov v15.h\[5\], w15 + 1424: 4e161def mov v15.h\[5\], w15 + 1428: 4e161e10 mov v16.h\[5\], w16 + 142c: 4e161e10 mov v16.h\[5\], w16 + 1430: 4e161e31 mov v17.h\[5\], w17 + 1434: 4e161e31 mov v17.h\[5\], w17 + 1438: 4e161e52 mov v18.h\[5\], w18 + 143c: 4e161e52 mov v18.h\[5\], w18 + 1440: 4e161e73 mov v19.h\[5\], w19 + 1444: 4e161e73 mov v19.h\[5\], w19 + 1448: 4e161e94 mov v20.h\[5\], w20 + 144c: 4e161e94 mov v20.h\[5\], w20 + 1450: 4e161eb5 mov v21.h\[5\], w21 + 1454: 4e161eb5 mov v21.h\[5\], w21 + 1458: 4e161ed6 mov v22.h\[5\], w22 + 145c: 4e161ed6 mov v22.h\[5\], w22 + 1460: 4e161ef7 mov v23.h\[5\], w23 + 1464: 4e161ef7 mov v23.h\[5\], w23 + 1468: 4e161f18 mov v24.h\[5\], w24 + 146c: 4e161f18 mov v24.h\[5\], w24 + 1470: 4e161f39 mov v25.h\[5\], w25 + 1474: 4e161f39 mov v25.h\[5\], w25 + 1478: 4e161f5a mov v26.h\[5\], w26 + 147c: 4e161f5a mov v26.h\[5\], w26 + 1480: 4e161f7b mov v27.h\[5\], w27 + 1484: 4e161f7b mov v27.h\[5\], w27 + 1488: 4e161f9c mov v28.h\[5\], w28 + 148c: 4e161f9c mov v28.h\[5\], w28 + 1490: 4e161fbd mov v29.h\[5\], w29 + 1494: 4e161fbd mov v29.h\[5\], w29 + 1498: 4e161fde mov v30.h\[5\], w30 + 149c: 4e161fde mov v30.h\[5\], w30 + 14a0: 4e1a1c21 mov v1.h\[6\], w1 + 14a4: 4e1a1c21 mov v1.h\[6\], w1 + 14a8: 4e1a1c42 mov v2.h\[6\], w2 + 14ac: 4e1a1c42 mov v2.h\[6\], w2 + 14b0: 4e1a1c63 mov v3.h\[6\], w3 + 14b4: 4e1a1c63 mov v3.h\[6\], w3 + 14b8: 4e1a1c84 mov v4.h\[6\], w4 + 14bc: 4e1a1c84 mov v4.h\[6\], w4 + 14c0: 4e1a1ca5 mov v5.h\[6\], w5 + 14c4: 4e1a1ca5 mov v5.h\[6\], w5 + 14c8: 4e1a1cc6 mov v6.h\[6\], w6 + 14cc: 4e1a1cc6 mov v6.h\[6\], w6 + 14d0: 4e1a1ce7 mov v7.h\[6\], w7 + 14d4: 4e1a1ce7 mov v7.h\[6\], w7 + 14d8: 4e1a1d08 mov v8.h\[6\], w8 + 14dc: 4e1a1d08 mov v8.h\[6\], w8 + 14e0: 4e1a1d29 mov v9.h\[6\], w9 + 14e4: 4e1a1d29 mov v9.h\[6\], w9 + 14e8: 4e1a1d4a mov v10.h\[6\], w10 + 14ec: 4e1a1d4a mov v10.h\[6\], w10 + 14f0: 4e1a1d6b mov v11.h\[6\], w11 + 14f4: 4e1a1d6b mov v11.h\[6\], w11 + 14f8: 4e1a1d8c mov v12.h\[6\], w12 + 14fc: 4e1a1d8c mov v12.h\[6\], w12 + 1500: 4e1a1dad mov v13.h\[6\], w13 + 1504: 4e1a1dad mov v13.h\[6\], w13 + 1508: 4e1a1dce mov v14.h\[6\], w14 + 150c: 4e1a1dce mov v14.h\[6\], w14 + 1510: 4e1a1def mov v15.h\[6\], w15 + 1514: 4e1a1def mov v15.h\[6\], w15 + 1518: 4e1a1e10 mov v16.h\[6\], w16 + 151c: 4e1a1e10 mov v16.h\[6\], w16 + 1520: 4e1a1e31 mov v17.h\[6\], w17 + 1524: 4e1a1e31 mov v17.h\[6\], w17 + 1528: 4e1a1e52 mov v18.h\[6\], w18 + 152c: 4e1a1e52 mov v18.h\[6\], w18 + 1530: 4e1a1e73 mov v19.h\[6\], w19 + 1534: 4e1a1e73 mov v19.h\[6\], w19 + 1538: 4e1a1e94 mov v20.h\[6\], w20 + 153c: 4e1a1e94 mov v20.h\[6\], w20 + 1540: 4e1a1eb5 mov v21.h\[6\], w21 + 1544: 4e1a1eb5 mov v21.h\[6\], w21 + 1548: 4e1a1ed6 mov v22.h\[6\], w22 + 154c: 4e1a1ed6 mov v22.h\[6\], w22 + 1550: 4e1a1ef7 mov v23.h\[6\], w23 + 1554: 4e1a1ef7 mov v23.h\[6\], w23 + 1558: 4e1a1f18 mov v24.h\[6\], w24 + 155c: 4e1a1f18 mov v24.h\[6\], w24 + 1560: 4e1a1f39 mov v25.h\[6\], w25 + 1564: 4e1a1f39 mov v25.h\[6\], w25 + 1568: 4e1a1f5a mov v26.h\[6\], w26 + 156c: 4e1a1f5a mov v26.h\[6\], w26 + 1570: 4e1a1f7b mov v27.h\[6\], w27 + 1574: 4e1a1f7b mov v27.h\[6\], w27 + 1578: 4e1a1f9c mov v28.h\[6\], w28 + 157c: 4e1a1f9c mov v28.h\[6\], w28 + 1580: 4e1a1fbd mov v29.h\[6\], w29 + 1584: 4e1a1fbd mov v29.h\[6\], w29 + 1588: 4e1a1fde mov v30.h\[6\], w30 + 158c: 4e1a1fde mov v30.h\[6\], w30 + 1590: 4e1e1c21 mov v1.h\[7\], w1 + 1594: 4e1e1c21 mov v1.h\[7\], w1 + 1598: 4e1e1c42 mov v2.h\[7\], w2 + 159c: 4e1e1c42 mov v2.h\[7\], w2 + 15a0: 4e1e1c63 mov v3.h\[7\], w3 + 15a4: 4e1e1c63 mov v3.h\[7\], w3 + 15a8: 4e1e1c84 mov v4.h\[7\], w4 + 15ac: 4e1e1c84 mov v4.h\[7\], w4 + 15b0: 4e1e1ca5 mov v5.h\[7\], w5 + 15b4: 4e1e1ca5 mov v5.h\[7\], w5 + 15b8: 4e1e1cc6 mov v6.h\[7\], w6 + 15bc: 4e1e1cc6 mov v6.h\[7\], w6 + 15c0: 4e1e1ce7 mov v7.h\[7\], w7 + 15c4: 4e1e1ce7 mov v7.h\[7\], w7 + 15c8: 4e1e1d08 mov v8.h\[7\], w8 + 15cc: 4e1e1d08 mov v8.h\[7\], w8 + 15d0: 4e1e1d29 mov v9.h\[7\], w9 + 15d4: 4e1e1d29 mov v9.h\[7\], w9 + 15d8: 4e1e1d4a mov v10.h\[7\], w10 + 15dc: 4e1e1d4a mov v10.h\[7\], w10 + 15e0: 4e1e1d6b mov v11.h\[7\], w11 + 15e4: 4e1e1d6b mov v11.h\[7\], w11 + 15e8: 4e1e1d8c mov v12.h\[7\], w12 + 15ec: 4e1e1d8c mov v12.h\[7\], w12 + 15f0: 4e1e1dad mov v13.h\[7\], w13 + 15f4: 4e1e1dad mov v13.h\[7\], w13 + 15f8: 4e1e1dce mov v14.h\[7\], w14 + 15fc: 4e1e1dce mov v14.h\[7\], w14 + 1600: 4e1e1def mov v15.h\[7\], w15 + 1604: 4e1e1def mov v15.h\[7\], w15 + 1608: 4e1e1e10 mov v16.h\[7\], w16 + 160c: 4e1e1e10 mov v16.h\[7\], w16 + 1610: 4e1e1e31 mov v17.h\[7\], w17 + 1614: 4e1e1e31 mov v17.h\[7\], w17 + 1618: 4e1e1e52 mov v18.h\[7\], w18 + 161c: 4e1e1e52 mov v18.h\[7\], w18 + 1620: 4e1e1e73 mov v19.h\[7\], w19 + 1624: 4e1e1e73 mov v19.h\[7\], w19 + 1628: 4e1e1e94 mov v20.h\[7\], w20 + 162c: 4e1e1e94 mov v20.h\[7\], w20 + 1630: 4e1e1eb5 mov v21.h\[7\], w21 + 1634: 4e1e1eb5 mov v21.h\[7\], w21 + 1638: 4e1e1ed6 mov v22.h\[7\], w22 + 163c: 4e1e1ed6 mov v22.h\[7\], w22 + 1640: 4e1e1ef7 mov v23.h\[7\], w23 + 1644: 4e1e1ef7 mov v23.h\[7\], w23 + 1648: 4e1e1f18 mov v24.h\[7\], w24 + 164c: 4e1e1f18 mov v24.h\[7\], w24 + 1650: 4e1e1f39 mov v25.h\[7\], w25 + 1654: 4e1e1f39 mov v25.h\[7\], w25 + 1658: 4e1e1f5a mov v26.h\[7\], w26 + 165c: 4e1e1f5a mov v26.h\[7\], w26 + 1660: 4e1e1f7b mov v27.h\[7\], w27 + 1664: 4e1e1f7b mov v27.h\[7\], w27 + 1668: 4e1e1f9c mov v28.h\[7\], w28 + 166c: 4e1e1f9c mov v28.h\[7\], w28 + 1670: 4e1e1fbd mov v29.h\[7\], w29 + 1674: 4e1e1fbd mov v29.h\[7\], w29 + 1678: 4e1e1fde mov v30.h\[7\], w30 + 167c: 4e1e1fde mov v30.h\[7\], w30 + 1680: 4e041c21 mov v1.s\[0\], w1 + 1684: 4e041c21 mov v1.s\[0\], w1 + 1688: 4e041c42 mov v2.s\[0\], w2 + 168c: 4e041c42 mov v2.s\[0\], w2 + 1690: 4e041c63 mov v3.s\[0\], w3 + 1694: 4e041c63 mov v3.s\[0\], w3 + 1698: 4e041c84 mov v4.s\[0\], w4 + 169c: 4e041c84 mov v4.s\[0\], w4 + 16a0: 4e041ca5 mov v5.s\[0\], w5 + 16a4: 4e041ca5 mov v5.s\[0\], w5 + 16a8: 4e041cc6 mov v6.s\[0\], w6 + 16ac: 4e041cc6 mov v6.s\[0\], w6 + 16b0: 4e041ce7 mov v7.s\[0\], w7 + 16b4: 4e041ce7 mov v7.s\[0\], w7 + 16b8: 4e041d08 mov v8.s\[0\], w8 + 16bc: 4e041d08 mov v8.s\[0\], w8 + 16c0: 4e041d29 mov v9.s\[0\], w9 + 16c4: 4e041d29 mov v9.s\[0\], w9 + 16c8: 4e041d4a mov v10.s\[0\], w10 + 16cc: 4e041d4a mov v10.s\[0\], w10 + 16d0: 4e041d6b mov v11.s\[0\], w11 + 16d4: 4e041d6b mov v11.s\[0\], w11 + 16d8: 4e041d8c mov v12.s\[0\], w12 + 16dc: 4e041d8c mov v12.s\[0\], w12 + 16e0: 4e041dad mov v13.s\[0\], w13 + 16e4: 4e041dad mov v13.s\[0\], w13 + 16e8: 4e041dce mov v14.s\[0\], w14 + 16ec: 4e041dce mov v14.s\[0\], w14 + 16f0: 4e041def mov v15.s\[0\], w15 + 16f4: 4e041def mov v15.s\[0\], w15 + 16f8: 4e041e10 mov v16.s\[0\], w16 + 16fc: 4e041e10 mov v16.s\[0\], w16 + 1700: 4e041e31 mov v17.s\[0\], w17 + 1704: 4e041e31 mov v17.s\[0\], w17 + 1708: 4e041e52 mov v18.s\[0\], w18 + 170c: 4e041e52 mov v18.s\[0\], w18 + 1710: 4e041e73 mov v19.s\[0\], w19 + 1714: 4e041e73 mov v19.s\[0\], w19 + 1718: 4e041e94 mov v20.s\[0\], w20 + 171c: 4e041e94 mov v20.s\[0\], w20 + 1720: 4e041eb5 mov v21.s\[0\], w21 + 1724: 4e041eb5 mov v21.s\[0\], w21 + 1728: 4e041ed6 mov v22.s\[0\], w22 + 172c: 4e041ed6 mov v22.s\[0\], w22 + 1730: 4e041ef7 mov v23.s\[0\], w23 + 1734: 4e041ef7 mov v23.s\[0\], w23 + 1738: 4e041f18 mov v24.s\[0\], w24 + 173c: 4e041f18 mov v24.s\[0\], w24 + 1740: 4e041f39 mov v25.s\[0\], w25 + 1744: 4e041f39 mov v25.s\[0\], w25 + 1748: 4e041f5a mov v26.s\[0\], w26 + 174c: 4e041f5a mov v26.s\[0\], w26 + 1750: 4e041f7b mov v27.s\[0\], w27 + 1754: 4e041f7b mov v27.s\[0\], w27 + 1758: 4e041f9c mov v28.s\[0\], w28 + 175c: 4e041f9c mov v28.s\[0\], w28 + 1760: 4e041fbd mov v29.s\[0\], w29 + 1764: 4e041fbd mov v29.s\[0\], w29 + 1768: 4e041fde mov v30.s\[0\], w30 + 176c: 4e041fde mov v30.s\[0\], w30 + 1770: 4e0c1c21 mov v1.s\[1\], w1 + 1774: 4e0c1c21 mov v1.s\[1\], w1 + 1778: 4e0c1c42 mov v2.s\[1\], w2 + 177c: 4e0c1c42 mov v2.s\[1\], w2 + 1780: 4e0c1c63 mov v3.s\[1\], w3 + 1784: 4e0c1c63 mov v3.s\[1\], w3 + 1788: 4e0c1c84 mov v4.s\[1\], w4 + 178c: 4e0c1c84 mov v4.s\[1\], w4 + 1790: 4e0c1ca5 mov v5.s\[1\], w5 + 1794: 4e0c1ca5 mov v5.s\[1\], w5 + 1798: 4e0c1cc6 mov v6.s\[1\], w6 + 179c: 4e0c1cc6 mov v6.s\[1\], w6 + 17a0: 4e0c1ce7 mov v7.s\[1\], w7 + 17a4: 4e0c1ce7 mov v7.s\[1\], w7 + 17a8: 4e0c1d08 mov v8.s\[1\], w8 + 17ac: 4e0c1d08 mov v8.s\[1\], w8 + 17b0: 4e0c1d29 mov v9.s\[1\], w9 + 17b4: 4e0c1d29 mov v9.s\[1\], w9 + 17b8: 4e0c1d4a mov v10.s\[1\], w10 + 17bc: 4e0c1d4a mov v10.s\[1\], w10 + 17c0: 4e0c1d6b mov v11.s\[1\], w11 + 17c4: 4e0c1d6b mov v11.s\[1\], w11 + 17c8: 4e0c1d8c mov v12.s\[1\], w12 + 17cc: 4e0c1d8c mov v12.s\[1\], w12 + 17d0: 4e0c1dad mov v13.s\[1\], w13 + 17d4: 4e0c1dad mov v13.s\[1\], w13 + 17d8: 4e0c1dce mov v14.s\[1\], w14 + 17dc: 4e0c1dce mov v14.s\[1\], w14 + 17e0: 4e0c1def mov v15.s\[1\], w15 + 17e4: 4e0c1def mov v15.s\[1\], w15 + 17e8: 4e0c1e10 mov v16.s\[1\], w16 + 17ec: 4e0c1e10 mov v16.s\[1\], w16 + 17f0: 4e0c1e31 mov v17.s\[1\], w17 + 17f4: 4e0c1e31 mov v17.s\[1\], w17 + 17f8: 4e0c1e52 mov v18.s\[1\], w18 + 17fc: 4e0c1e52 mov v18.s\[1\], w18 + 1800: 4e0c1e73 mov v19.s\[1\], w19 + 1804: 4e0c1e73 mov v19.s\[1\], w19 + 1808: 4e0c1e94 mov v20.s\[1\], w20 + 180c: 4e0c1e94 mov v20.s\[1\], w20 + 1810: 4e0c1eb5 mov v21.s\[1\], w21 + 1814: 4e0c1eb5 mov v21.s\[1\], w21 + 1818: 4e0c1ed6 mov v22.s\[1\], w22 + 181c: 4e0c1ed6 mov v22.s\[1\], w22 + 1820: 4e0c1ef7 mov v23.s\[1\], w23 + 1824: 4e0c1ef7 mov v23.s\[1\], w23 + 1828: 4e0c1f18 mov v24.s\[1\], w24 + 182c: 4e0c1f18 mov v24.s\[1\], w24 + 1830: 4e0c1f39 mov v25.s\[1\], w25 + 1834: 4e0c1f39 mov v25.s\[1\], w25 + 1838: 4e0c1f5a mov v26.s\[1\], w26 + 183c: 4e0c1f5a mov v26.s\[1\], w26 + 1840: 4e0c1f7b mov v27.s\[1\], w27 + 1844: 4e0c1f7b mov v27.s\[1\], w27 + 1848: 4e0c1f9c mov v28.s\[1\], w28 + 184c: 4e0c1f9c mov v28.s\[1\], w28 + 1850: 4e0c1fbd mov v29.s\[1\], w29 + 1854: 4e0c1fbd mov v29.s\[1\], w29 + 1858: 4e0c1fde mov v30.s\[1\], w30 + 185c: 4e0c1fde mov v30.s\[1\], w30 + 1860: 4e141c21 mov v1.s\[2\], w1 + 1864: 4e141c21 mov v1.s\[2\], w1 + 1868: 4e141c42 mov v2.s\[2\], w2 + 186c: 4e141c42 mov v2.s\[2\], w2 + 1870: 4e141c63 mov v3.s\[2\], w3 + 1874: 4e141c63 mov v3.s\[2\], w3 + 1878: 4e141c84 mov v4.s\[2\], w4 + 187c: 4e141c84 mov v4.s\[2\], w4 + 1880: 4e141ca5 mov v5.s\[2\], w5 + 1884: 4e141ca5 mov v5.s\[2\], w5 + 1888: 4e141cc6 mov v6.s\[2\], w6 + 188c: 4e141cc6 mov v6.s\[2\], w6 + 1890: 4e141ce7 mov v7.s\[2\], w7 + 1894: 4e141ce7 mov v7.s\[2\], w7 + 1898: 4e141d08 mov v8.s\[2\], w8 + 189c: 4e141d08 mov v8.s\[2\], w8 + 18a0: 4e141d29 mov v9.s\[2\], w9 + 18a4: 4e141d29 mov v9.s\[2\], w9 + 18a8: 4e141d4a mov v10.s\[2\], w10 + 18ac: 4e141d4a mov v10.s\[2\], w10 + 18b0: 4e141d6b mov v11.s\[2\], w11 + 18b4: 4e141d6b mov v11.s\[2\], w11 + 18b8: 4e141d8c mov v12.s\[2\], w12 + 18bc: 4e141d8c mov v12.s\[2\], w12 + 18c0: 4e141dad mov v13.s\[2\], w13 + 18c4: 4e141dad mov v13.s\[2\], w13 + 18c8: 4e141dce mov v14.s\[2\], w14 + 18cc: 4e141dce mov v14.s\[2\], w14 + 18d0: 4e141def mov v15.s\[2\], w15 + 18d4: 4e141def mov v15.s\[2\], w15 + 18d8: 4e141e10 mov v16.s\[2\], w16 + 18dc: 4e141e10 mov v16.s\[2\], w16 + 18e0: 4e141e31 mov v17.s\[2\], w17 + 18e4: 4e141e31 mov v17.s\[2\], w17 + 18e8: 4e141e52 mov v18.s\[2\], w18 + 18ec: 4e141e52 mov v18.s\[2\], w18 + 18f0: 4e141e73 mov v19.s\[2\], w19 + 18f4: 4e141e73 mov v19.s\[2\], w19 + 18f8: 4e141e94 mov v20.s\[2\], w20 + 18fc: 4e141e94 mov v20.s\[2\], w20 + 1900: 4e141eb5 mov v21.s\[2\], w21 + 1904: 4e141eb5 mov v21.s\[2\], w21 + 1908: 4e141ed6 mov v22.s\[2\], w22 + 190c: 4e141ed6 mov v22.s\[2\], w22 + 1910: 4e141ef7 mov v23.s\[2\], w23 + 1914: 4e141ef7 mov v23.s\[2\], w23 + 1918: 4e141f18 mov v24.s\[2\], w24 + 191c: 4e141f18 mov v24.s\[2\], w24 + 1920: 4e141f39 mov v25.s\[2\], w25 + 1924: 4e141f39 mov v25.s\[2\], w25 + 1928: 4e141f5a mov v26.s\[2\], w26 + 192c: 4e141f5a mov v26.s\[2\], w26 + 1930: 4e141f7b mov v27.s\[2\], w27 + 1934: 4e141f7b mov v27.s\[2\], w27 + 1938: 4e141f9c mov v28.s\[2\], w28 + 193c: 4e141f9c mov v28.s\[2\], w28 + 1940: 4e141fbd mov v29.s\[2\], w29 + 1944: 4e141fbd mov v29.s\[2\], w29 + 1948: 4e141fde mov v30.s\[2\], w30 + 194c: 4e141fde mov v30.s\[2\], w30 + 1950: 4e1c1c21 mov v1.s\[3\], w1 + 1954: 4e1c1c21 mov v1.s\[3\], w1 + 1958: 4e1c1c42 mov v2.s\[3\], w2 + 195c: 4e1c1c42 mov v2.s\[3\], w2 + 1960: 4e1c1c63 mov v3.s\[3\], w3 + 1964: 4e1c1c63 mov v3.s\[3\], w3 + 1968: 4e1c1c84 mov v4.s\[3\], w4 + 196c: 4e1c1c84 mov v4.s\[3\], w4 + 1970: 4e1c1ca5 mov v5.s\[3\], w5 + 1974: 4e1c1ca5 mov v5.s\[3\], w5 + 1978: 4e1c1cc6 mov v6.s\[3\], w6 + 197c: 4e1c1cc6 mov v6.s\[3\], w6 + 1980: 4e1c1ce7 mov v7.s\[3\], w7 + 1984: 4e1c1ce7 mov v7.s\[3\], w7 + 1988: 4e1c1d08 mov v8.s\[3\], w8 + 198c: 4e1c1d08 mov v8.s\[3\], w8 + 1990: 4e1c1d29 mov v9.s\[3\], w9 + 1994: 4e1c1d29 mov v9.s\[3\], w9 + 1998: 4e1c1d4a mov v10.s\[3\], w10 + 199c: 4e1c1d4a mov v10.s\[3\], w10 + 19a0: 4e1c1d6b mov v11.s\[3\], w11 + 19a4: 4e1c1d6b mov v11.s\[3\], w11 + 19a8: 4e1c1d8c mov v12.s\[3\], w12 + 19ac: 4e1c1d8c mov v12.s\[3\], w12 + 19b0: 4e1c1dad mov v13.s\[3\], w13 + 19b4: 4e1c1dad mov v13.s\[3\], w13 + 19b8: 4e1c1dce mov v14.s\[3\], w14 + 19bc: 4e1c1dce mov v14.s\[3\], w14 + 19c0: 4e1c1def mov v15.s\[3\], w15 + 19c4: 4e1c1def mov v15.s\[3\], w15 + 19c8: 4e1c1e10 mov v16.s\[3\], w16 + 19cc: 4e1c1e10 mov v16.s\[3\], w16 + 19d0: 4e1c1e31 mov v17.s\[3\], w17 + 19d4: 4e1c1e31 mov v17.s\[3\], w17 + 19d8: 4e1c1e52 mov v18.s\[3\], w18 + 19dc: 4e1c1e52 mov v18.s\[3\], w18 + 19e0: 4e1c1e73 mov v19.s\[3\], w19 + 19e4: 4e1c1e73 mov v19.s\[3\], w19 + 19e8: 4e1c1e94 mov v20.s\[3\], w20 + 19ec: 4e1c1e94 mov v20.s\[3\], w20 + 19f0: 4e1c1eb5 mov v21.s\[3\], w21 + 19f4: 4e1c1eb5 mov v21.s\[3\], w21 + 19f8: 4e1c1ed6 mov v22.s\[3\], w22 + 19fc: 4e1c1ed6 mov v22.s\[3\], w22 + 1a00: 4e1c1ef7 mov v23.s\[3\], w23 + 1a04: 4e1c1ef7 mov v23.s\[3\], w23 + 1a08: 4e1c1f18 mov v24.s\[3\], w24 + 1a0c: 4e1c1f18 mov v24.s\[3\], w24 + 1a10: 4e1c1f39 mov v25.s\[3\], w25 + 1a14: 4e1c1f39 mov v25.s\[3\], w25 + 1a18: 4e1c1f5a mov v26.s\[3\], w26 + 1a1c: 4e1c1f5a mov v26.s\[3\], w26 + 1a20: 4e1c1f7b mov v27.s\[3\], w27 + 1a24: 4e1c1f7b mov v27.s\[3\], w27 + 1a28: 4e1c1f9c mov v28.s\[3\], w28 + 1a2c: 4e1c1f9c mov v28.s\[3\], w28 + 1a30: 4e1c1fbd mov v29.s\[3\], w29 + 1a34: 4e1c1fbd mov v29.s\[3\], w29 + 1a38: 4e1c1fde mov v30.s\[3\], w30 + 1a3c: 4e1c1fde mov v30.s\[3\], w30 + 1a40: 6e010421 mov v1.b\[0\], v1.b\[0\] + 1a44: 6e010421 mov v1.b\[0\], v1.b\[0\] + 1a48: 6e010442 mov v2.b\[0\], v2.b\[0\] + 1a4c: 6e010442 mov v2.b\[0\], v2.b\[0\] + 1a50: 6e010463 mov v3.b\[0\], v3.b\[0\] + 1a54: 6e010463 mov v3.b\[0\], v3.b\[0\] + 1a58: 6e010484 mov v4.b\[0\], v4.b\[0\] + 1a5c: 6e010484 mov v4.b\[0\], v4.b\[0\] + 1a60: 6e0104a5 mov v5.b\[0\], v5.b\[0\] + 1a64: 6e0104a5 mov v5.b\[0\], v5.b\[0\] + 1a68: 6e0104c6 mov v6.b\[0\], v6.b\[0\] + 1a6c: 6e0104c6 mov v6.b\[0\], v6.b\[0\] + 1a70: 6e0104e7 mov v7.b\[0\], v7.b\[0\] + 1a74: 6e0104e7 mov v7.b\[0\], v7.b\[0\] + 1a78: 6e010508 mov v8.b\[0\], v8.b\[0\] + 1a7c: 6e010508 mov v8.b\[0\], v8.b\[0\] + 1a80: 6e010529 mov v9.b\[0\], v9.b\[0\] + 1a84: 6e010529 mov v9.b\[0\], v9.b\[0\] + 1a88: 6e01054a mov v10.b\[0\], v10.b\[0\] + 1a8c: 6e01054a mov v10.b\[0\], v10.b\[0\] + 1a90: 6e01056b mov v11.b\[0\], v11.b\[0\] + 1a94: 6e01056b mov v11.b\[0\], v11.b\[0\] + 1a98: 6e01058c mov v12.b\[0\], v12.b\[0\] + 1a9c: 6e01058c mov v12.b\[0\], v12.b\[0\] + 1aa0: 6e0105ad mov v13.b\[0\], v13.b\[0\] + 1aa4: 6e0105ad mov v13.b\[0\], v13.b\[0\] + 1aa8: 6e0105ce mov v14.b\[0\], v14.b\[0\] + 1aac: 6e0105ce mov v14.b\[0\], v14.b\[0\] + 1ab0: 6e0105ef mov v15.b\[0\], v15.b\[0\] + 1ab4: 6e0105ef mov v15.b\[0\], v15.b\[0\] + 1ab8: 6e010610 mov v16.b\[0\], v16.b\[0\] + 1abc: 6e010610 mov v16.b\[0\], v16.b\[0\] + 1ac0: 6e010631 mov v17.b\[0\], v17.b\[0\] + 1ac4: 6e010631 mov v17.b\[0\], v17.b\[0\] + 1ac8: 6e010652 mov v18.b\[0\], v18.b\[0\] + 1acc: 6e010652 mov v18.b\[0\], v18.b\[0\] + 1ad0: 6e010673 mov v19.b\[0\], v19.b\[0\] + 1ad4: 6e010673 mov v19.b\[0\], v19.b\[0\] + 1ad8: 6e010694 mov v20.b\[0\], v20.b\[0\] + 1adc: 6e010694 mov v20.b\[0\], v20.b\[0\] + 1ae0: 6e0106b5 mov v21.b\[0\], v21.b\[0\] + 1ae4: 6e0106b5 mov v21.b\[0\], v21.b\[0\] + 1ae8: 6e0106d6 mov v22.b\[0\], v22.b\[0\] + 1aec: 6e0106d6 mov v22.b\[0\], v22.b\[0\] + 1af0: 6e0106f7 mov v23.b\[0\], v23.b\[0\] + 1af4: 6e0106f7 mov v23.b\[0\], v23.b\[0\] + 1af8: 6e010718 mov v24.b\[0\], v24.b\[0\] + 1afc: 6e010718 mov v24.b\[0\], v24.b\[0\] + 1b00: 6e010739 mov v25.b\[0\], v25.b\[0\] + 1b04: 6e010739 mov v25.b\[0\], v25.b\[0\] + 1b08: 6e01075a mov v26.b\[0\], v26.b\[0\] + 1b0c: 6e01075a mov v26.b\[0\], v26.b\[0\] + 1b10: 6e01077b mov v27.b\[0\], v27.b\[0\] + 1b14: 6e01077b mov v27.b\[0\], v27.b\[0\] + 1b18: 6e01079c mov v28.b\[0\], v28.b\[0\] + 1b1c: 6e01079c mov v28.b\[0\], v28.b\[0\] + 1b20: 6e0107bd mov v29.b\[0\], v29.b\[0\] + 1b24: 6e0107bd mov v29.b\[0\], v29.b\[0\] + 1b28: 6e0107de mov v30.b\[0\], v30.b\[0\] + 1b2c: 6e0107de mov v30.b\[0\], v30.b\[0\] + 1b30: 6e030c21 mov v1.b\[1\], v1.b\[1\] + 1b34: 6e030c21 mov v1.b\[1\], v1.b\[1\] + 1b38: 6e030c42 mov v2.b\[1\], v2.b\[1\] + 1b3c: 6e030c42 mov v2.b\[1\], v2.b\[1\] + 1b40: 6e030c63 mov v3.b\[1\], v3.b\[1\] + 1b44: 6e030c63 mov v3.b\[1\], v3.b\[1\] + 1b48: 6e030c84 mov v4.b\[1\], v4.b\[1\] + 1b4c: 6e030c84 mov v4.b\[1\], v4.b\[1\] + 1b50: 6e030ca5 mov v5.b\[1\], v5.b\[1\] + 1b54: 6e030ca5 mov v5.b\[1\], v5.b\[1\] + 1b58: 6e030cc6 mov v6.b\[1\], v6.b\[1\] + 1b5c: 6e030cc6 mov v6.b\[1\], v6.b\[1\] + 1b60: 6e030ce7 mov v7.b\[1\], v7.b\[1\] + 1b64: 6e030ce7 mov v7.b\[1\], v7.b\[1\] + 1b68: 6e030d08 mov v8.b\[1\], v8.b\[1\] + 1b6c: 6e030d08 mov v8.b\[1\], v8.b\[1\] + 1b70: 6e030d29 mov v9.b\[1\], v9.b\[1\] + 1b74: 6e030d29 mov v9.b\[1\], v9.b\[1\] + 1b78: 6e030d4a mov v10.b\[1\], v10.b\[1\] + 1b7c: 6e030d4a mov v10.b\[1\], v10.b\[1\] + 1b80: 6e030d6b mov v11.b\[1\], v11.b\[1\] + 1b84: 6e030d6b mov v11.b\[1\], v11.b\[1\] + 1b88: 6e030d8c mov v12.b\[1\], v12.b\[1\] + 1b8c: 6e030d8c mov v12.b\[1\], v12.b\[1\] + 1b90: 6e030dad mov v13.b\[1\], v13.b\[1\] + 1b94: 6e030dad mov v13.b\[1\], v13.b\[1\] + 1b98: 6e030dce mov v14.b\[1\], v14.b\[1\] + 1b9c: 6e030dce mov v14.b\[1\], v14.b\[1\] + 1ba0: 6e030def mov v15.b\[1\], v15.b\[1\] + 1ba4: 6e030def mov v15.b\[1\], v15.b\[1\] + 1ba8: 6e030e10 mov v16.b\[1\], v16.b\[1\] + 1bac: 6e030e10 mov v16.b\[1\], v16.b\[1\] + 1bb0: 6e030e31 mov v17.b\[1\], v17.b\[1\] + 1bb4: 6e030e31 mov v17.b\[1\], v17.b\[1\] + 1bb8: 6e030e52 mov v18.b\[1\], v18.b\[1\] + 1bbc: 6e030e52 mov v18.b\[1\], v18.b\[1\] + 1bc0: 6e030e73 mov v19.b\[1\], v19.b\[1\] + 1bc4: 6e030e73 mov v19.b\[1\], v19.b\[1\] + 1bc8: 6e030e94 mov v20.b\[1\], v20.b\[1\] + 1bcc: 6e030e94 mov v20.b\[1\], v20.b\[1\] + 1bd0: 6e030eb5 mov v21.b\[1\], v21.b\[1\] + 1bd4: 6e030eb5 mov v21.b\[1\], v21.b\[1\] + 1bd8: 6e030ed6 mov v22.b\[1\], v22.b\[1\] + 1bdc: 6e030ed6 mov v22.b\[1\], v22.b\[1\] + 1be0: 6e030ef7 mov v23.b\[1\], v23.b\[1\] + 1be4: 6e030ef7 mov v23.b\[1\], v23.b\[1\] + 1be8: 6e030f18 mov v24.b\[1\], v24.b\[1\] + 1bec: 6e030f18 mov v24.b\[1\], v24.b\[1\] + 1bf0: 6e030f39 mov v25.b\[1\], v25.b\[1\] + 1bf4: 6e030f39 mov v25.b\[1\], v25.b\[1\] + 1bf8: 6e030f5a mov v26.b\[1\], v26.b\[1\] + 1bfc: 6e030f5a mov v26.b\[1\], v26.b\[1\] + 1c00: 6e030f7b mov v27.b\[1\], v27.b\[1\] + 1c04: 6e030f7b mov v27.b\[1\], v27.b\[1\] + 1c08: 6e030f9c mov v28.b\[1\], v28.b\[1\] + 1c0c: 6e030f9c mov v28.b\[1\], v28.b\[1\] + 1c10: 6e030fbd mov v29.b\[1\], v29.b\[1\] + 1c14: 6e030fbd mov v29.b\[1\], v29.b\[1\] + 1c18: 6e030fde mov v30.b\[1\], v30.b\[1\] + 1c1c: 6e030fde mov v30.b\[1\], v30.b\[1\] + 1c20: 6e051421 mov v1.b\[2\], v1.b\[2\] + 1c24: 6e051421 mov v1.b\[2\], v1.b\[2\] + 1c28: 6e051442 mov v2.b\[2\], v2.b\[2\] + 1c2c: 6e051442 mov v2.b\[2\], v2.b\[2\] + 1c30: 6e051463 mov v3.b\[2\], v3.b\[2\] + 1c34: 6e051463 mov v3.b\[2\], v3.b\[2\] + 1c38: 6e051484 mov v4.b\[2\], v4.b\[2\] + 1c3c: 6e051484 mov v4.b\[2\], v4.b\[2\] + 1c40: 6e0514a5 mov v5.b\[2\], v5.b\[2\] + 1c44: 6e0514a5 mov v5.b\[2\], v5.b\[2\] + 1c48: 6e0514c6 mov v6.b\[2\], v6.b\[2\] + 1c4c: 6e0514c6 mov v6.b\[2\], v6.b\[2\] + 1c50: 6e0514e7 mov v7.b\[2\], v7.b\[2\] + 1c54: 6e0514e7 mov v7.b\[2\], v7.b\[2\] + 1c58: 6e051508 mov v8.b\[2\], v8.b\[2\] + 1c5c: 6e051508 mov v8.b\[2\], v8.b\[2\] + 1c60: 6e051529 mov v9.b\[2\], v9.b\[2\] + 1c64: 6e051529 mov v9.b\[2\], v9.b\[2\] + 1c68: 6e05154a mov v10.b\[2\], v10.b\[2\] + 1c6c: 6e05154a mov v10.b\[2\], v10.b\[2\] + 1c70: 6e05156b mov v11.b\[2\], v11.b\[2\] + 1c74: 6e05156b mov v11.b\[2\], v11.b\[2\] + 1c78: 6e05158c mov v12.b\[2\], v12.b\[2\] + 1c7c: 6e05158c mov v12.b\[2\], v12.b\[2\] + 1c80: 6e0515ad mov v13.b\[2\], v13.b\[2\] + 1c84: 6e0515ad mov v13.b\[2\], v13.b\[2\] + 1c88: 6e0515ce mov v14.b\[2\], v14.b\[2\] + 1c8c: 6e0515ce mov v14.b\[2\], v14.b\[2\] + 1c90: 6e0515ef mov v15.b\[2\], v15.b\[2\] + 1c94: 6e0515ef mov v15.b\[2\], v15.b\[2\] + 1c98: 6e051610 mov v16.b\[2\], v16.b\[2\] + 1c9c: 6e051610 mov v16.b\[2\], v16.b\[2\] + 1ca0: 6e051631 mov v17.b\[2\], v17.b\[2\] + 1ca4: 6e051631 mov v17.b\[2\], v17.b\[2\] + 1ca8: 6e051652 mov v18.b\[2\], v18.b\[2\] + 1cac: 6e051652 mov v18.b\[2\], v18.b\[2\] + 1cb0: 6e051673 mov v19.b\[2\], v19.b\[2\] + 1cb4: 6e051673 mov v19.b\[2\], v19.b\[2\] + 1cb8: 6e051694 mov v20.b\[2\], v20.b\[2\] + 1cbc: 6e051694 mov v20.b\[2\], v20.b\[2\] + 1cc0: 6e0516b5 mov v21.b\[2\], v21.b\[2\] + 1cc4: 6e0516b5 mov v21.b\[2\], v21.b\[2\] + 1cc8: 6e0516d6 mov v22.b\[2\], v22.b\[2\] + 1ccc: 6e0516d6 mov v22.b\[2\], v22.b\[2\] + 1cd0: 6e0516f7 mov v23.b\[2\], v23.b\[2\] + 1cd4: 6e0516f7 mov v23.b\[2\], v23.b\[2\] + 1cd8: 6e051718 mov v24.b\[2\], v24.b\[2\] + 1cdc: 6e051718 mov v24.b\[2\], v24.b\[2\] + 1ce0: 6e051739 mov v25.b\[2\], v25.b\[2\] + 1ce4: 6e051739 mov v25.b\[2\], v25.b\[2\] + 1ce8: 6e05175a mov v26.b\[2\], v26.b\[2\] + 1cec: 6e05175a mov v26.b\[2\], v26.b\[2\] + 1cf0: 6e05177b mov v27.b\[2\], v27.b\[2\] + 1cf4: 6e05177b mov v27.b\[2\], v27.b\[2\] + 1cf8: 6e05179c mov v28.b\[2\], v28.b\[2\] + 1cfc: 6e05179c mov v28.b\[2\], v28.b\[2\] + 1d00: 6e0517bd mov v29.b\[2\], v29.b\[2\] + 1d04: 6e0517bd mov v29.b\[2\], v29.b\[2\] + 1d08: 6e0517de mov v30.b\[2\], v30.b\[2\] + 1d0c: 6e0517de mov v30.b\[2\], v30.b\[2\] + 1d10: 6e071c21 mov v1.b\[3\], v1.b\[3\] + 1d14: 6e071c21 mov v1.b\[3\], v1.b\[3\] + 1d18: 6e071c42 mov v2.b\[3\], v2.b\[3\] + 1d1c: 6e071c42 mov v2.b\[3\], v2.b\[3\] + 1d20: 6e071c63 mov v3.b\[3\], v3.b\[3\] + 1d24: 6e071c63 mov v3.b\[3\], v3.b\[3\] + 1d28: 6e071c84 mov v4.b\[3\], v4.b\[3\] + 1d2c: 6e071c84 mov v4.b\[3\], v4.b\[3\] + 1d30: 6e071ca5 mov v5.b\[3\], v5.b\[3\] + 1d34: 6e071ca5 mov v5.b\[3\], v5.b\[3\] + 1d38: 6e071cc6 mov v6.b\[3\], v6.b\[3\] + 1d3c: 6e071cc6 mov v6.b\[3\], v6.b\[3\] + 1d40: 6e071ce7 mov v7.b\[3\], v7.b\[3\] + 1d44: 6e071ce7 mov v7.b\[3\], v7.b\[3\] + 1d48: 6e071d08 mov v8.b\[3\], v8.b\[3\] + 1d4c: 6e071d08 mov v8.b\[3\], v8.b\[3\] + 1d50: 6e071d29 mov v9.b\[3\], v9.b\[3\] + 1d54: 6e071d29 mov v9.b\[3\], v9.b\[3\] + 1d58: 6e071d4a mov v10.b\[3\], v10.b\[3\] + 1d5c: 6e071d4a mov v10.b\[3\], v10.b\[3\] + 1d60: 6e071d6b mov v11.b\[3\], v11.b\[3\] + 1d64: 6e071d6b mov v11.b\[3\], v11.b\[3\] + 1d68: 6e071d8c mov v12.b\[3\], v12.b\[3\] + 1d6c: 6e071d8c mov v12.b\[3\], v12.b\[3\] + 1d70: 6e071dad mov v13.b\[3\], v13.b\[3\] + 1d74: 6e071dad mov v13.b\[3\], v13.b\[3\] + 1d78: 6e071dce mov v14.b\[3\], v14.b\[3\] + 1d7c: 6e071dce mov v14.b\[3\], v14.b\[3\] + 1d80: 6e071def mov v15.b\[3\], v15.b\[3\] + 1d84: 6e071def mov v15.b\[3\], v15.b\[3\] + 1d88: 6e071e10 mov v16.b\[3\], v16.b\[3\] + 1d8c: 6e071e10 mov v16.b\[3\], v16.b\[3\] + 1d90: 6e071e31 mov v17.b\[3\], v17.b\[3\] + 1d94: 6e071e31 mov v17.b\[3\], v17.b\[3\] + 1d98: 6e071e52 mov v18.b\[3\], v18.b\[3\] + 1d9c: 6e071e52 mov v18.b\[3\], v18.b\[3\] + 1da0: 6e071e73 mov v19.b\[3\], v19.b\[3\] + 1da4: 6e071e73 mov v19.b\[3\], v19.b\[3\] + 1da8: 6e071e94 mov v20.b\[3\], v20.b\[3\] + 1dac: 6e071e94 mov v20.b\[3\], v20.b\[3\] + 1db0: 6e071eb5 mov v21.b\[3\], v21.b\[3\] + 1db4: 6e071eb5 mov v21.b\[3\], v21.b\[3\] + 1db8: 6e071ed6 mov v22.b\[3\], v22.b\[3\] + 1dbc: 6e071ed6 mov v22.b\[3\], v22.b\[3\] + 1dc0: 6e071ef7 mov v23.b\[3\], v23.b\[3\] + 1dc4: 6e071ef7 mov v23.b\[3\], v23.b\[3\] + 1dc8: 6e071f18 mov v24.b\[3\], v24.b\[3\] + 1dcc: 6e071f18 mov v24.b\[3\], v24.b\[3\] + 1dd0: 6e071f39 mov v25.b\[3\], v25.b\[3\] + 1dd4: 6e071f39 mov v25.b\[3\], v25.b\[3\] + 1dd8: 6e071f5a mov v26.b\[3\], v26.b\[3\] + 1ddc: 6e071f5a mov v26.b\[3\], v26.b\[3\] + 1de0: 6e071f7b mov v27.b\[3\], v27.b\[3\] + 1de4: 6e071f7b mov v27.b\[3\], v27.b\[3\] + 1de8: 6e071f9c mov v28.b\[3\], v28.b\[3\] + 1dec: 6e071f9c mov v28.b\[3\], v28.b\[3\] + 1df0: 6e071fbd mov v29.b\[3\], v29.b\[3\] + 1df4: 6e071fbd mov v29.b\[3\], v29.b\[3\] + 1df8: 6e071fde mov v30.b\[3\], v30.b\[3\] + 1dfc: 6e071fde mov v30.b\[3\], v30.b\[3\] + 1e00: 6e092421 mov v1.b\[4\], v1.b\[4\] + 1e04: 6e092421 mov v1.b\[4\], v1.b\[4\] + 1e08: 6e092442 mov v2.b\[4\], v2.b\[4\] + 1e0c: 6e092442 mov v2.b\[4\], v2.b\[4\] + 1e10: 6e092463 mov v3.b\[4\], v3.b\[4\] + 1e14: 6e092463 mov v3.b\[4\], v3.b\[4\] + 1e18: 6e092484 mov v4.b\[4\], v4.b\[4\] + 1e1c: 6e092484 mov v4.b\[4\], v4.b\[4\] + 1e20: 6e0924a5 mov v5.b\[4\], v5.b\[4\] + 1e24: 6e0924a5 mov v5.b\[4\], v5.b\[4\] + 1e28: 6e0924c6 mov v6.b\[4\], v6.b\[4\] + 1e2c: 6e0924c6 mov v6.b\[4\], v6.b\[4\] + 1e30: 6e0924e7 mov v7.b\[4\], v7.b\[4\] + 1e34: 6e0924e7 mov v7.b\[4\], v7.b\[4\] + 1e38: 6e092508 mov v8.b\[4\], v8.b\[4\] + 1e3c: 6e092508 mov v8.b\[4\], v8.b\[4\] + 1e40: 6e092529 mov v9.b\[4\], v9.b\[4\] + 1e44: 6e092529 mov v9.b\[4\], v9.b\[4\] + 1e48: 6e09254a mov v10.b\[4\], v10.b\[4\] + 1e4c: 6e09254a mov v10.b\[4\], v10.b\[4\] + 1e50: 6e09256b mov v11.b\[4\], v11.b\[4\] + 1e54: 6e09256b mov v11.b\[4\], v11.b\[4\] + 1e58: 6e09258c mov v12.b\[4\], v12.b\[4\] + 1e5c: 6e09258c mov v12.b\[4\], v12.b\[4\] + 1e60: 6e0925ad mov v13.b\[4\], v13.b\[4\] + 1e64: 6e0925ad mov v13.b\[4\], v13.b\[4\] + 1e68: 6e0925ce mov v14.b\[4\], v14.b\[4\] + 1e6c: 6e0925ce mov v14.b\[4\], v14.b\[4\] + 1e70: 6e0925ef mov v15.b\[4\], v15.b\[4\] + 1e74: 6e0925ef mov v15.b\[4\], v15.b\[4\] + 1e78: 6e092610 mov v16.b\[4\], v16.b\[4\] + 1e7c: 6e092610 mov v16.b\[4\], v16.b\[4\] + 1e80: 6e092631 mov v17.b\[4\], v17.b\[4\] + 1e84: 6e092631 mov v17.b\[4\], v17.b\[4\] + 1e88: 6e092652 mov v18.b\[4\], v18.b\[4\] + 1e8c: 6e092652 mov v18.b\[4\], v18.b\[4\] + 1e90: 6e092673 mov v19.b\[4\], v19.b\[4\] + 1e94: 6e092673 mov v19.b\[4\], v19.b\[4\] + 1e98: 6e092694 mov v20.b\[4\], v20.b\[4\] + 1e9c: 6e092694 mov v20.b\[4\], v20.b\[4\] + 1ea0: 6e0926b5 mov v21.b\[4\], v21.b\[4\] + 1ea4: 6e0926b5 mov v21.b\[4\], v21.b\[4\] + 1ea8: 6e0926d6 mov v22.b\[4\], v22.b\[4\] + 1eac: 6e0926d6 mov v22.b\[4\], v22.b\[4\] + 1eb0: 6e0926f7 mov v23.b\[4\], v23.b\[4\] + 1eb4: 6e0926f7 mov v23.b\[4\], v23.b\[4\] + 1eb8: 6e092718 mov v24.b\[4\], v24.b\[4\] + 1ebc: 6e092718 mov v24.b\[4\], v24.b\[4\] + 1ec0: 6e092739 mov v25.b\[4\], v25.b\[4\] + 1ec4: 6e092739 mov v25.b\[4\], v25.b\[4\] + 1ec8: 6e09275a mov v26.b\[4\], v26.b\[4\] + 1ecc: 6e09275a mov v26.b\[4\], v26.b\[4\] + 1ed0: 6e09277b mov v27.b\[4\], v27.b\[4\] + 1ed4: 6e09277b mov v27.b\[4\], v27.b\[4\] + 1ed8: 6e09279c mov v28.b\[4\], v28.b\[4\] + 1edc: 6e09279c mov v28.b\[4\], v28.b\[4\] + 1ee0: 6e0927bd mov v29.b\[4\], v29.b\[4\] + 1ee4: 6e0927bd mov v29.b\[4\], v29.b\[4\] + 1ee8: 6e0927de mov v30.b\[4\], v30.b\[4\] + 1eec: 6e0927de mov v30.b\[4\], v30.b\[4\] + 1ef0: 6e0b2c21 mov v1.b\[5\], v1.b\[5\] + 1ef4: 6e0b2c21 mov v1.b\[5\], v1.b\[5\] + 1ef8: 6e0b2c42 mov v2.b\[5\], v2.b\[5\] + 1efc: 6e0b2c42 mov v2.b\[5\], v2.b\[5\] + 1f00: 6e0b2c63 mov v3.b\[5\], v3.b\[5\] + 1f04: 6e0b2c63 mov v3.b\[5\], v3.b\[5\] + 1f08: 6e0b2c84 mov v4.b\[5\], v4.b\[5\] + 1f0c: 6e0b2c84 mov v4.b\[5\], v4.b\[5\] + 1f10: 6e0b2ca5 mov v5.b\[5\], v5.b\[5\] + 1f14: 6e0b2ca5 mov v5.b\[5\], v5.b\[5\] + 1f18: 6e0b2cc6 mov v6.b\[5\], v6.b\[5\] + 1f1c: 6e0b2cc6 mov v6.b\[5\], v6.b\[5\] + 1f20: 6e0b2ce7 mov v7.b\[5\], v7.b\[5\] + 1f24: 6e0b2ce7 mov v7.b\[5\], v7.b\[5\] + 1f28: 6e0b2d08 mov v8.b\[5\], v8.b\[5\] + 1f2c: 6e0b2d08 mov v8.b\[5\], v8.b\[5\] + 1f30: 6e0b2d29 mov v9.b\[5\], v9.b\[5\] + 1f34: 6e0b2d29 mov v9.b\[5\], v9.b\[5\] + 1f38: 6e0b2d4a mov v10.b\[5\], v10.b\[5\] + 1f3c: 6e0b2d4a mov v10.b\[5\], v10.b\[5\] + 1f40: 6e0b2d6b mov v11.b\[5\], v11.b\[5\] + 1f44: 6e0b2d6b mov v11.b\[5\], v11.b\[5\] + 1f48: 6e0b2d8c mov v12.b\[5\], v12.b\[5\] + 1f4c: 6e0b2d8c mov v12.b\[5\], v12.b\[5\] + 1f50: 6e0b2dad mov v13.b\[5\], v13.b\[5\] + 1f54: 6e0b2dad mov v13.b\[5\], v13.b\[5\] + 1f58: 6e0b2dce mov v14.b\[5\], v14.b\[5\] + 1f5c: 6e0b2dce mov v14.b\[5\], v14.b\[5\] + 1f60: 6e0b2def mov v15.b\[5\], v15.b\[5\] + 1f64: 6e0b2def mov v15.b\[5\], v15.b\[5\] + 1f68: 6e0b2e10 mov v16.b\[5\], v16.b\[5\] + 1f6c: 6e0b2e10 mov v16.b\[5\], v16.b\[5\] + 1f70: 6e0b2e31 mov v17.b\[5\], v17.b\[5\] + 1f74: 6e0b2e31 mov v17.b\[5\], v17.b\[5\] + 1f78: 6e0b2e52 mov v18.b\[5\], v18.b\[5\] + 1f7c: 6e0b2e52 mov v18.b\[5\], v18.b\[5\] + 1f80: 6e0b2e73 mov v19.b\[5\], v19.b\[5\] + 1f84: 6e0b2e73 mov v19.b\[5\], v19.b\[5\] + 1f88: 6e0b2e94 mov v20.b\[5\], v20.b\[5\] + 1f8c: 6e0b2e94 mov v20.b\[5\], v20.b\[5\] + 1f90: 6e0b2eb5 mov v21.b\[5\], v21.b\[5\] + 1f94: 6e0b2eb5 mov v21.b\[5\], v21.b\[5\] + 1f98: 6e0b2ed6 mov v22.b\[5\], v22.b\[5\] + 1f9c: 6e0b2ed6 mov v22.b\[5\], v22.b\[5\] + 1fa0: 6e0b2ef7 mov v23.b\[5\], v23.b\[5\] + 1fa4: 6e0b2ef7 mov v23.b\[5\], v23.b\[5\] + 1fa8: 6e0b2f18 mov v24.b\[5\], v24.b\[5\] + 1fac: 6e0b2f18 mov v24.b\[5\], v24.b\[5\] + 1fb0: 6e0b2f39 mov v25.b\[5\], v25.b\[5\] + 1fb4: 6e0b2f39 mov v25.b\[5\], v25.b\[5\] + 1fb8: 6e0b2f5a mov v26.b\[5\], v26.b\[5\] + 1fbc: 6e0b2f5a mov v26.b\[5\], v26.b\[5\] + 1fc0: 6e0b2f7b mov v27.b\[5\], v27.b\[5\] + 1fc4: 6e0b2f7b mov v27.b\[5\], v27.b\[5\] + 1fc8: 6e0b2f9c mov v28.b\[5\], v28.b\[5\] + 1fcc: 6e0b2f9c mov v28.b\[5\], v28.b\[5\] + 1fd0: 6e0b2fbd mov v29.b\[5\], v29.b\[5\] + 1fd4: 6e0b2fbd mov v29.b\[5\], v29.b\[5\] + 1fd8: 6e0b2fde mov v30.b\[5\], v30.b\[5\] + 1fdc: 6e0b2fde mov v30.b\[5\], v30.b\[5\] + 1fe0: 6e0d3421 mov v1.b\[6\], v1.b\[6\] + 1fe4: 6e0d3421 mov v1.b\[6\], v1.b\[6\] + 1fe8: 6e0d3442 mov v2.b\[6\], v2.b\[6\] + 1fec: 6e0d3442 mov v2.b\[6\], v2.b\[6\] + 1ff0: 6e0d3463 mov v3.b\[6\], v3.b\[6\] + 1ff4: 6e0d3463 mov v3.b\[6\], v3.b\[6\] + 1ff8: 6e0d3484 mov v4.b\[6\], v4.b\[6\] + 1ffc: 6e0d3484 mov v4.b\[6\], v4.b\[6\] + 2000: 6e0d34a5 mov v5.b\[6\], v5.b\[6\] + 2004: 6e0d34a5 mov v5.b\[6\], v5.b\[6\] + 2008: 6e0d34c6 mov v6.b\[6\], v6.b\[6\] + 200c: 6e0d34c6 mov v6.b\[6\], v6.b\[6\] + 2010: 6e0d34e7 mov v7.b\[6\], v7.b\[6\] + 2014: 6e0d34e7 mov v7.b\[6\], v7.b\[6\] + 2018: 6e0d3508 mov v8.b\[6\], v8.b\[6\] + 201c: 6e0d3508 mov v8.b\[6\], v8.b\[6\] + 2020: 6e0d3529 mov v9.b\[6\], v9.b\[6\] + 2024: 6e0d3529 mov v9.b\[6\], v9.b\[6\] + 2028: 6e0d354a mov v10.b\[6\], v10.b\[6\] + 202c: 6e0d354a mov v10.b\[6\], v10.b\[6\] + 2030: 6e0d356b mov v11.b\[6\], v11.b\[6\] + 2034: 6e0d356b mov v11.b\[6\], v11.b\[6\] + 2038: 6e0d358c mov v12.b\[6\], v12.b\[6\] + 203c: 6e0d358c mov v12.b\[6\], v12.b\[6\] + 2040: 6e0d35ad mov v13.b\[6\], v13.b\[6\] + 2044: 6e0d35ad mov v13.b\[6\], v13.b\[6\] + 2048: 6e0d35ce mov v14.b\[6\], v14.b\[6\] + 204c: 6e0d35ce mov v14.b\[6\], v14.b\[6\] + 2050: 6e0d35ef mov v15.b\[6\], v15.b\[6\] + 2054: 6e0d35ef mov v15.b\[6\], v15.b\[6\] + 2058: 6e0d3610 mov v16.b\[6\], v16.b\[6\] + 205c: 6e0d3610 mov v16.b\[6\], v16.b\[6\] + 2060: 6e0d3631 mov v17.b\[6\], v17.b\[6\] + 2064: 6e0d3631 mov v17.b\[6\], v17.b\[6\] + 2068: 6e0d3652 mov v18.b\[6\], v18.b\[6\] + 206c: 6e0d3652 mov v18.b\[6\], v18.b\[6\] + 2070: 6e0d3673 mov v19.b\[6\], v19.b\[6\] + 2074: 6e0d3673 mov v19.b\[6\], v19.b\[6\] + 2078: 6e0d3694 mov v20.b\[6\], v20.b\[6\] + 207c: 6e0d3694 mov v20.b\[6\], v20.b\[6\] + 2080: 6e0d36b5 mov v21.b\[6\], v21.b\[6\] + 2084: 6e0d36b5 mov v21.b\[6\], v21.b\[6\] + 2088: 6e0d36d6 mov v22.b\[6\], v22.b\[6\] + 208c: 6e0d36d6 mov v22.b\[6\], v22.b\[6\] + 2090: 6e0d36f7 mov v23.b\[6\], v23.b\[6\] + 2094: 6e0d36f7 mov v23.b\[6\], v23.b\[6\] + 2098: 6e0d3718 mov v24.b\[6\], v24.b\[6\] + 209c: 6e0d3718 mov v24.b\[6\], v24.b\[6\] + 20a0: 6e0d3739 mov v25.b\[6\], v25.b\[6\] + 20a4: 6e0d3739 mov v25.b\[6\], v25.b\[6\] + 20a8: 6e0d375a mov v26.b\[6\], v26.b\[6\] + 20ac: 6e0d375a mov v26.b\[6\], v26.b\[6\] + 20b0: 6e0d377b mov v27.b\[6\], v27.b\[6\] + 20b4: 6e0d377b mov v27.b\[6\], v27.b\[6\] + 20b8: 6e0d379c mov v28.b\[6\], v28.b\[6\] + 20bc: 6e0d379c mov v28.b\[6\], v28.b\[6\] + 20c0: 6e0d37bd mov v29.b\[6\], v29.b\[6\] + 20c4: 6e0d37bd mov v29.b\[6\], v29.b\[6\] + 20c8: 6e0d37de mov v30.b\[6\], v30.b\[6\] + 20cc: 6e0d37de mov v30.b\[6\], v30.b\[6\] + 20d0: 6e0f3c21 mov v1.b\[7\], v1.b\[7\] + 20d4: 6e0f3c21 mov v1.b\[7\], v1.b\[7\] + 20d8: 6e0f3c42 mov v2.b\[7\], v2.b\[7\] + 20dc: 6e0f3c42 mov v2.b\[7\], v2.b\[7\] + 20e0: 6e0f3c63 mov v3.b\[7\], v3.b\[7\] + 20e4: 6e0f3c63 mov v3.b\[7\], v3.b\[7\] + 20e8: 6e0f3c84 mov v4.b\[7\], v4.b\[7\] + 20ec: 6e0f3c84 mov v4.b\[7\], v4.b\[7\] + 20f0: 6e0f3ca5 mov v5.b\[7\], v5.b\[7\] + 20f4: 6e0f3ca5 mov v5.b\[7\], v5.b\[7\] + 20f8: 6e0f3cc6 mov v6.b\[7\], v6.b\[7\] + 20fc: 6e0f3cc6 mov v6.b\[7\], v6.b\[7\] + 2100: 6e0f3ce7 mov v7.b\[7\], v7.b\[7\] + 2104: 6e0f3ce7 mov v7.b\[7\], v7.b\[7\] + 2108: 6e0f3d08 mov v8.b\[7\], v8.b\[7\] + 210c: 6e0f3d08 mov v8.b\[7\], v8.b\[7\] + 2110: 6e0f3d29 mov v9.b\[7\], v9.b\[7\] + 2114: 6e0f3d29 mov v9.b\[7\], v9.b\[7\] + 2118: 6e0f3d4a mov v10.b\[7\], v10.b\[7\] + 211c: 6e0f3d4a mov v10.b\[7\], v10.b\[7\] + 2120: 6e0f3d6b mov v11.b\[7\], v11.b\[7\] + 2124: 6e0f3d6b mov v11.b\[7\], v11.b\[7\] + 2128: 6e0f3d8c mov v12.b\[7\], v12.b\[7\] + 212c: 6e0f3d8c mov v12.b\[7\], v12.b\[7\] + 2130: 6e0f3dad mov v13.b\[7\], v13.b\[7\] + 2134: 6e0f3dad mov v13.b\[7\], v13.b\[7\] + 2138: 6e0f3dce mov v14.b\[7\], v14.b\[7\] + 213c: 6e0f3dce mov v14.b\[7\], v14.b\[7\] + 2140: 6e0f3def mov v15.b\[7\], v15.b\[7\] + 2144: 6e0f3def mov v15.b\[7\], v15.b\[7\] + 2148: 6e0f3e10 mov v16.b\[7\], v16.b\[7\] + 214c: 6e0f3e10 mov v16.b\[7\], v16.b\[7\] + 2150: 6e0f3e31 mov v17.b\[7\], v17.b\[7\] + 2154: 6e0f3e31 mov v17.b\[7\], v17.b\[7\] + 2158: 6e0f3e52 mov v18.b\[7\], v18.b\[7\] + 215c: 6e0f3e52 mov v18.b\[7\], v18.b\[7\] + 2160: 6e0f3e73 mov v19.b\[7\], v19.b\[7\] + 2164: 6e0f3e73 mov v19.b\[7\], v19.b\[7\] + 2168: 6e0f3e94 mov v20.b\[7\], v20.b\[7\] + 216c: 6e0f3e94 mov v20.b\[7\], v20.b\[7\] + 2170: 6e0f3eb5 mov v21.b\[7\], v21.b\[7\] + 2174: 6e0f3eb5 mov v21.b\[7\], v21.b\[7\] + 2178: 6e0f3ed6 mov v22.b\[7\], v22.b\[7\] + 217c: 6e0f3ed6 mov v22.b\[7\], v22.b\[7\] + 2180: 6e0f3ef7 mov v23.b\[7\], v23.b\[7\] + 2184: 6e0f3ef7 mov v23.b\[7\], v23.b\[7\] + 2188: 6e0f3f18 mov v24.b\[7\], v24.b\[7\] + 218c: 6e0f3f18 mov v24.b\[7\], v24.b\[7\] + 2190: 6e0f3f39 mov v25.b\[7\], v25.b\[7\] + 2194: 6e0f3f39 mov v25.b\[7\], v25.b\[7\] + 2198: 6e0f3f5a mov v26.b\[7\], v26.b\[7\] + 219c: 6e0f3f5a mov v26.b\[7\], v26.b\[7\] + 21a0: 6e0f3f7b mov v27.b\[7\], v27.b\[7\] + 21a4: 6e0f3f7b mov v27.b\[7\], v27.b\[7\] + 21a8: 6e0f3f9c mov v28.b\[7\], v28.b\[7\] + 21ac: 6e0f3f9c mov v28.b\[7\], v28.b\[7\] + 21b0: 6e0f3fbd mov v29.b\[7\], v29.b\[7\] + 21b4: 6e0f3fbd mov v29.b\[7\], v29.b\[7\] + 21b8: 6e0f3fde mov v30.b\[7\], v30.b\[7\] + 21bc: 6e0f3fde mov v30.b\[7\], v30.b\[7\] + 21c0: 6e114421 mov v1.b\[8\], v1.b\[8\] + 21c4: 6e114421 mov v1.b\[8\], v1.b\[8\] + 21c8: 6e114442 mov v2.b\[8\], v2.b\[8\] + 21cc: 6e114442 mov v2.b\[8\], v2.b\[8\] + 21d0: 6e114463 mov v3.b\[8\], v3.b\[8\] + 21d4: 6e114463 mov v3.b\[8\], v3.b\[8\] + 21d8: 6e114484 mov v4.b\[8\], v4.b\[8\] + 21dc: 6e114484 mov v4.b\[8\], v4.b\[8\] + 21e0: 6e1144a5 mov v5.b\[8\], v5.b\[8\] + 21e4: 6e1144a5 mov v5.b\[8\], v5.b\[8\] + 21e8: 6e1144c6 mov v6.b\[8\], v6.b\[8\] + 21ec: 6e1144c6 mov v6.b\[8\], v6.b\[8\] + 21f0: 6e1144e7 mov v7.b\[8\], v7.b\[8\] + 21f4: 6e1144e7 mov v7.b\[8\], v7.b\[8\] + 21f8: 6e114508 mov v8.b\[8\], v8.b\[8\] + 21fc: 6e114508 mov v8.b\[8\], v8.b\[8\] + 2200: 6e114529 mov v9.b\[8\], v9.b\[8\] + 2204: 6e114529 mov v9.b\[8\], v9.b\[8\] + 2208: 6e11454a mov v10.b\[8\], v10.b\[8\] + 220c: 6e11454a mov v10.b\[8\], v10.b\[8\] + 2210: 6e11456b mov v11.b\[8\], v11.b\[8\] + 2214: 6e11456b mov v11.b\[8\], v11.b\[8\] + 2218: 6e11458c mov v12.b\[8\], v12.b\[8\] + 221c: 6e11458c mov v12.b\[8\], v12.b\[8\] + 2220: 6e1145ad mov v13.b\[8\], v13.b\[8\] + 2224: 6e1145ad mov v13.b\[8\], v13.b\[8\] + 2228: 6e1145ce mov v14.b\[8\], v14.b\[8\] + 222c: 6e1145ce mov v14.b\[8\], v14.b\[8\] + 2230: 6e1145ef mov v15.b\[8\], v15.b\[8\] + 2234: 6e1145ef mov v15.b\[8\], v15.b\[8\] + 2238: 6e114610 mov v16.b\[8\], v16.b\[8\] + 223c: 6e114610 mov v16.b\[8\], v16.b\[8\] + 2240: 6e114631 mov v17.b\[8\], v17.b\[8\] + 2244: 6e114631 mov v17.b\[8\], v17.b\[8\] + 2248: 6e114652 mov v18.b\[8\], v18.b\[8\] + 224c: 6e114652 mov v18.b\[8\], v18.b\[8\] + 2250: 6e114673 mov v19.b\[8\], v19.b\[8\] + 2254: 6e114673 mov v19.b\[8\], v19.b\[8\] + 2258: 6e114694 mov v20.b\[8\], v20.b\[8\] + 225c: 6e114694 mov v20.b\[8\], v20.b\[8\] + 2260: 6e1146b5 mov v21.b\[8\], v21.b\[8\] + 2264: 6e1146b5 mov v21.b\[8\], v21.b\[8\] + 2268: 6e1146d6 mov v22.b\[8\], v22.b\[8\] + 226c: 6e1146d6 mov v22.b\[8\], v22.b\[8\] + 2270: 6e1146f7 mov v23.b\[8\], v23.b\[8\] + 2274: 6e1146f7 mov v23.b\[8\], v23.b\[8\] + 2278: 6e114718 mov v24.b\[8\], v24.b\[8\] + 227c: 6e114718 mov v24.b\[8\], v24.b\[8\] + 2280: 6e114739 mov v25.b\[8\], v25.b\[8\] + 2284: 6e114739 mov v25.b\[8\], v25.b\[8\] + 2288: 6e11475a mov v26.b\[8\], v26.b\[8\] + 228c: 6e11475a mov v26.b\[8\], v26.b\[8\] + 2290: 6e11477b mov v27.b\[8\], v27.b\[8\] + 2294: 6e11477b mov v27.b\[8\], v27.b\[8\] + 2298: 6e11479c mov v28.b\[8\], v28.b\[8\] + 229c: 6e11479c mov v28.b\[8\], v28.b\[8\] + 22a0: 6e1147bd mov v29.b\[8\], v29.b\[8\] + 22a4: 6e1147bd mov v29.b\[8\], v29.b\[8\] + 22a8: 6e1147de mov v30.b\[8\], v30.b\[8\] + 22ac: 6e1147de mov v30.b\[8\], v30.b\[8\] + 22b0: 6e134c21 mov v1.b\[9\], v1.b\[9\] + 22b4: 6e134c21 mov v1.b\[9\], v1.b\[9\] + 22b8: 6e134c42 mov v2.b\[9\], v2.b\[9\] + 22bc: 6e134c42 mov v2.b\[9\], v2.b\[9\] + 22c0: 6e134c63 mov v3.b\[9\], v3.b\[9\] + 22c4: 6e134c63 mov v3.b\[9\], v3.b\[9\] + 22c8: 6e134c84 mov v4.b\[9\], v4.b\[9\] + 22cc: 6e134c84 mov v4.b\[9\], v4.b\[9\] + 22d0: 6e134ca5 mov v5.b\[9\], v5.b\[9\] + 22d4: 6e134ca5 mov v5.b\[9\], v5.b\[9\] + 22d8: 6e134cc6 mov v6.b\[9\], v6.b\[9\] + 22dc: 6e134cc6 mov v6.b\[9\], v6.b\[9\] + 22e0: 6e134ce7 mov v7.b\[9\], v7.b\[9\] + 22e4: 6e134ce7 mov v7.b\[9\], v7.b\[9\] + 22e8: 6e134d08 mov v8.b\[9\], v8.b\[9\] + 22ec: 6e134d08 mov v8.b\[9\], v8.b\[9\] + 22f0: 6e134d29 mov v9.b\[9\], v9.b\[9\] + 22f4: 6e134d29 mov v9.b\[9\], v9.b\[9\] + 22f8: 6e134d4a mov v10.b\[9\], v10.b\[9\] + 22fc: 6e134d4a mov v10.b\[9\], v10.b\[9\] + 2300: 6e134d6b mov v11.b\[9\], v11.b\[9\] + 2304: 6e134d6b mov v11.b\[9\], v11.b\[9\] + 2308: 6e134d8c mov v12.b\[9\], v12.b\[9\] + 230c: 6e134d8c mov v12.b\[9\], v12.b\[9\] + 2310: 6e134dad mov v13.b\[9\], v13.b\[9\] + 2314: 6e134dad mov v13.b\[9\], v13.b\[9\] + 2318: 6e134dce mov v14.b\[9\], v14.b\[9\] + 231c: 6e134dce mov v14.b\[9\], v14.b\[9\] + 2320: 6e134def mov v15.b\[9\], v15.b\[9\] + 2324: 6e134def mov v15.b\[9\], v15.b\[9\] + 2328: 6e134e10 mov v16.b\[9\], v16.b\[9\] + 232c: 6e134e10 mov v16.b\[9\], v16.b\[9\] + 2330: 6e134e31 mov v17.b\[9\], v17.b\[9\] + 2334: 6e134e31 mov v17.b\[9\], v17.b\[9\] + 2338: 6e134e52 mov v18.b\[9\], v18.b\[9\] + 233c: 6e134e52 mov v18.b\[9\], v18.b\[9\] + 2340: 6e134e73 mov v19.b\[9\], v19.b\[9\] + 2344: 6e134e73 mov v19.b\[9\], v19.b\[9\] + 2348: 6e134e94 mov v20.b\[9\], v20.b\[9\] + 234c: 6e134e94 mov v20.b\[9\], v20.b\[9\] + 2350: 6e134eb5 mov v21.b\[9\], v21.b\[9\] + 2354: 6e134eb5 mov v21.b\[9\], v21.b\[9\] + 2358: 6e134ed6 mov v22.b\[9\], v22.b\[9\] + 235c: 6e134ed6 mov v22.b\[9\], v22.b\[9\] + 2360: 6e134ef7 mov v23.b\[9\], v23.b\[9\] + 2364: 6e134ef7 mov v23.b\[9\], v23.b\[9\] + 2368: 6e134f18 mov v24.b\[9\], v24.b\[9\] + 236c: 6e134f18 mov v24.b\[9\], v24.b\[9\] + 2370: 6e134f39 mov v25.b\[9\], v25.b\[9\] + 2374: 6e134f39 mov v25.b\[9\], v25.b\[9\] + 2378: 6e134f5a mov v26.b\[9\], v26.b\[9\] + 237c: 6e134f5a mov v26.b\[9\], v26.b\[9\] + 2380: 6e134f7b mov v27.b\[9\], v27.b\[9\] + 2384: 6e134f7b mov v27.b\[9\], v27.b\[9\] + 2388: 6e134f9c mov v28.b\[9\], v28.b\[9\] + 238c: 6e134f9c mov v28.b\[9\], v28.b\[9\] + 2390: 6e134fbd mov v29.b\[9\], v29.b\[9\] + 2394: 6e134fbd mov v29.b\[9\], v29.b\[9\] + 2398: 6e134fde mov v30.b\[9\], v30.b\[9\] + 239c: 6e134fde mov v30.b\[9\], v30.b\[9\] + 23a0: 6e155421 mov v1.b\[10\], v1.b\[10\] + 23a4: 6e155421 mov v1.b\[10\], v1.b\[10\] + 23a8: 6e155442 mov v2.b\[10\], v2.b\[10\] + 23ac: 6e155442 mov v2.b\[10\], v2.b\[10\] + 23b0: 6e155463 mov v3.b\[10\], v3.b\[10\] + 23b4: 6e155463 mov v3.b\[10\], v3.b\[10\] + 23b8: 6e155484 mov v4.b\[10\], v4.b\[10\] + 23bc: 6e155484 mov v4.b\[10\], v4.b\[10\] + 23c0: 6e1554a5 mov v5.b\[10\], v5.b\[10\] + 23c4: 6e1554a5 mov v5.b\[10\], v5.b\[10\] + 23c8: 6e1554c6 mov v6.b\[10\], v6.b\[10\] + 23cc: 6e1554c6 mov v6.b\[10\], v6.b\[10\] + 23d0: 6e1554e7 mov v7.b\[10\], v7.b\[10\] + 23d4: 6e1554e7 mov v7.b\[10\], v7.b\[10\] + 23d8: 6e155508 mov v8.b\[10\], v8.b\[10\] + 23dc: 6e155508 mov v8.b\[10\], v8.b\[10\] + 23e0: 6e155529 mov v9.b\[10\], v9.b\[10\] + 23e4: 6e155529 mov v9.b\[10\], v9.b\[10\] + 23e8: 6e15554a mov v10.b\[10\], v10.b\[10\] + 23ec: 6e15554a mov v10.b\[10\], v10.b\[10\] + 23f0: 6e15556b mov v11.b\[10\], v11.b\[10\] + 23f4: 6e15556b mov v11.b\[10\], v11.b\[10\] + 23f8: 6e15558c mov v12.b\[10\], v12.b\[10\] + 23fc: 6e15558c mov v12.b\[10\], v12.b\[10\] + 2400: 6e1555ad mov v13.b\[10\], v13.b\[10\] + 2404: 6e1555ad mov v13.b\[10\], v13.b\[10\] + 2408: 6e1555ce mov v14.b\[10\], v14.b\[10\] + 240c: 6e1555ce mov v14.b\[10\], v14.b\[10\] + 2410: 6e1555ef mov v15.b\[10\], v15.b\[10\] + 2414: 6e1555ef mov v15.b\[10\], v15.b\[10\] + 2418: 6e155610 mov v16.b\[10\], v16.b\[10\] + 241c: 6e155610 mov v16.b\[10\], v16.b\[10\] + 2420: 6e155631 mov v17.b\[10\], v17.b\[10\] + 2424: 6e155631 mov v17.b\[10\], v17.b\[10\] + 2428: 6e155652 mov v18.b\[10\], v18.b\[10\] + 242c: 6e155652 mov v18.b\[10\], v18.b\[10\] + 2430: 6e155673 mov v19.b\[10\], v19.b\[10\] + 2434: 6e155673 mov v19.b\[10\], v19.b\[10\] + 2438: 6e155694 mov v20.b\[10\], v20.b\[10\] + 243c: 6e155694 mov v20.b\[10\], v20.b\[10\] + 2440: 6e1556b5 mov v21.b\[10\], v21.b\[10\] + 2444: 6e1556b5 mov v21.b\[10\], v21.b\[10\] + 2448: 6e1556d6 mov v22.b\[10\], v22.b\[10\] + 244c: 6e1556d6 mov v22.b\[10\], v22.b\[10\] + 2450: 6e1556f7 mov v23.b\[10\], v23.b\[10\] + 2454: 6e1556f7 mov v23.b\[10\], v23.b\[10\] + 2458: 6e155718 mov v24.b\[10\], v24.b\[10\] + 245c: 6e155718 mov v24.b\[10\], v24.b\[10\] + 2460: 6e155739 mov v25.b\[10\], v25.b\[10\] + 2464: 6e155739 mov v25.b\[10\], v25.b\[10\] + 2468: 6e15575a mov v26.b\[10\], v26.b\[10\] + 246c: 6e15575a mov v26.b\[10\], v26.b\[10\] + 2470: 6e15577b mov v27.b\[10\], v27.b\[10\] + 2474: 6e15577b mov v27.b\[10\], v27.b\[10\] + 2478: 6e15579c mov v28.b\[10\], v28.b\[10\] + 247c: 6e15579c mov v28.b\[10\], v28.b\[10\] + 2480: 6e1557bd mov v29.b\[10\], v29.b\[10\] + 2484: 6e1557bd mov v29.b\[10\], v29.b\[10\] + 2488: 6e1557de mov v30.b\[10\], v30.b\[10\] + 248c: 6e1557de mov v30.b\[10\], v30.b\[10\] + 2490: 6e175c21 mov v1.b\[11\], v1.b\[11\] + 2494: 6e175c21 mov v1.b\[11\], v1.b\[11\] + 2498: 6e175c42 mov v2.b\[11\], v2.b\[11\] + 249c: 6e175c42 mov v2.b\[11\], v2.b\[11\] + 24a0: 6e175c63 mov v3.b\[11\], v3.b\[11\] + 24a4: 6e175c63 mov v3.b\[11\], v3.b\[11\] + 24a8: 6e175c84 mov v4.b\[11\], v4.b\[11\] + 24ac: 6e175c84 mov v4.b\[11\], v4.b\[11\] + 24b0: 6e175ca5 mov v5.b\[11\], v5.b\[11\] + 24b4: 6e175ca5 mov v5.b\[11\], v5.b\[11\] + 24b8: 6e175cc6 mov v6.b\[11\], v6.b\[11\] + 24bc: 6e175cc6 mov v6.b\[11\], v6.b\[11\] + 24c0: 6e175ce7 mov v7.b\[11\], v7.b\[11\] + 24c4: 6e175ce7 mov v7.b\[11\], v7.b\[11\] + 24c8: 6e175d08 mov v8.b\[11\], v8.b\[11\] + 24cc: 6e175d08 mov v8.b\[11\], v8.b\[11\] + 24d0: 6e175d29 mov v9.b\[11\], v9.b\[11\] + 24d4: 6e175d29 mov v9.b\[11\], v9.b\[11\] + 24d8: 6e175d4a mov v10.b\[11\], v10.b\[11\] + 24dc: 6e175d4a mov v10.b\[11\], v10.b\[11\] + 24e0: 6e175d6b mov v11.b\[11\], v11.b\[11\] + 24e4: 6e175d6b mov v11.b\[11\], v11.b\[11\] + 24e8: 6e175d8c mov v12.b\[11\], v12.b\[11\] + 24ec: 6e175d8c mov v12.b\[11\], v12.b\[11\] + 24f0: 6e175dad mov v13.b\[11\], v13.b\[11\] + 24f4: 6e175dad mov v13.b\[11\], v13.b\[11\] + 24f8: 6e175dce mov v14.b\[11\], v14.b\[11\] + 24fc: 6e175dce mov v14.b\[11\], v14.b\[11\] + 2500: 6e175def mov v15.b\[11\], v15.b\[11\] + 2504: 6e175def mov v15.b\[11\], v15.b\[11\] + 2508: 6e175e10 mov v16.b\[11\], v16.b\[11\] + 250c: 6e175e10 mov v16.b\[11\], v16.b\[11\] + 2510: 6e175e31 mov v17.b\[11\], v17.b\[11\] + 2514: 6e175e31 mov v17.b\[11\], v17.b\[11\] + 2518: 6e175e52 mov v18.b\[11\], v18.b\[11\] + 251c: 6e175e52 mov v18.b\[11\], v18.b\[11\] + 2520: 6e175e73 mov v19.b\[11\], v19.b\[11\] + 2524: 6e175e73 mov v19.b\[11\], v19.b\[11\] + 2528: 6e175e94 mov v20.b\[11\], v20.b\[11\] + 252c: 6e175e94 mov v20.b\[11\], v20.b\[11\] + 2530: 6e175eb5 mov v21.b\[11\], v21.b\[11\] + 2534: 6e175eb5 mov v21.b\[11\], v21.b\[11\] + 2538: 6e175ed6 mov v22.b\[11\], v22.b\[11\] + 253c: 6e175ed6 mov v22.b\[11\], v22.b\[11\] + 2540: 6e175ef7 mov v23.b\[11\], v23.b\[11\] + 2544: 6e175ef7 mov v23.b\[11\], v23.b\[11\] + 2548: 6e175f18 mov v24.b\[11\], v24.b\[11\] + 254c: 6e175f18 mov v24.b\[11\], v24.b\[11\] + 2550: 6e175f39 mov v25.b\[11\], v25.b\[11\] + 2554: 6e175f39 mov v25.b\[11\], v25.b\[11\] + 2558: 6e175f5a mov v26.b\[11\], v26.b\[11\] + 255c: 6e175f5a mov v26.b\[11\], v26.b\[11\] + 2560: 6e175f7b mov v27.b\[11\], v27.b\[11\] + 2564: 6e175f7b mov v27.b\[11\], v27.b\[11\] + 2568: 6e175f9c mov v28.b\[11\], v28.b\[11\] + 256c: 6e175f9c mov v28.b\[11\], v28.b\[11\] + 2570: 6e175fbd mov v29.b\[11\], v29.b\[11\] + 2574: 6e175fbd mov v29.b\[11\], v29.b\[11\] + 2578: 6e175fde mov v30.b\[11\], v30.b\[11\] + 257c: 6e175fde mov v30.b\[11\], v30.b\[11\] + 2580: 6e196421 mov v1.b\[12\], v1.b\[12\] + 2584: 6e196421 mov v1.b\[12\], v1.b\[12\] + 2588: 6e196442 mov v2.b\[12\], v2.b\[12\] + 258c: 6e196442 mov v2.b\[12\], v2.b\[12\] + 2590: 6e196463 mov v3.b\[12\], v3.b\[12\] + 2594: 6e196463 mov v3.b\[12\], v3.b\[12\] + 2598: 6e196484 mov v4.b\[12\], v4.b\[12\] + 259c: 6e196484 mov v4.b\[12\], v4.b\[12\] + 25a0: 6e1964a5 mov v5.b\[12\], v5.b\[12\] + 25a4: 6e1964a5 mov v5.b\[12\], v5.b\[12\] + 25a8: 6e1964c6 mov v6.b\[12\], v6.b\[12\] + 25ac: 6e1964c6 mov v6.b\[12\], v6.b\[12\] + 25b0: 6e1964e7 mov v7.b\[12\], v7.b\[12\] + 25b4: 6e1964e7 mov v7.b\[12\], v7.b\[12\] + 25b8: 6e196508 mov v8.b\[12\], v8.b\[12\] + 25bc: 6e196508 mov v8.b\[12\], v8.b\[12\] + 25c0: 6e196529 mov v9.b\[12\], v9.b\[12\] + 25c4: 6e196529 mov v9.b\[12\], v9.b\[12\] + 25c8: 6e19654a mov v10.b\[12\], v10.b\[12\] + 25cc: 6e19654a mov v10.b\[12\], v10.b\[12\] + 25d0: 6e19656b mov v11.b\[12\], v11.b\[12\] + 25d4: 6e19656b mov v11.b\[12\], v11.b\[12\] + 25d8: 6e19658c mov v12.b\[12\], v12.b\[12\] + 25dc: 6e19658c mov v12.b\[12\], v12.b\[12\] + 25e0: 6e1965ad mov v13.b\[12\], v13.b\[12\] + 25e4: 6e1965ad mov v13.b\[12\], v13.b\[12\] + 25e8: 6e1965ce mov v14.b\[12\], v14.b\[12\] + 25ec: 6e1965ce mov v14.b\[12\], v14.b\[12\] + 25f0: 6e1965ef mov v15.b\[12\], v15.b\[12\] + 25f4: 6e1965ef mov v15.b\[12\], v15.b\[12\] + 25f8: 6e196610 mov v16.b\[12\], v16.b\[12\] + 25fc: 6e196610 mov v16.b\[12\], v16.b\[12\] + 2600: 6e196631 mov v17.b\[12\], v17.b\[12\] + 2604: 6e196631 mov v17.b\[12\], v17.b\[12\] + 2608: 6e196652 mov v18.b\[12\], v18.b\[12\] + 260c: 6e196652 mov v18.b\[12\], v18.b\[12\] + 2610: 6e196673 mov v19.b\[12\], v19.b\[12\] + 2614: 6e196673 mov v19.b\[12\], v19.b\[12\] + 2618: 6e196694 mov v20.b\[12\], v20.b\[12\] + 261c: 6e196694 mov v20.b\[12\], v20.b\[12\] + 2620: 6e1966b5 mov v21.b\[12\], v21.b\[12\] + 2624: 6e1966b5 mov v21.b\[12\], v21.b\[12\] + 2628: 6e1966d6 mov v22.b\[12\], v22.b\[12\] + 262c: 6e1966d6 mov v22.b\[12\], v22.b\[12\] + 2630: 6e1966f7 mov v23.b\[12\], v23.b\[12\] + 2634: 6e1966f7 mov v23.b\[12\], v23.b\[12\] + 2638: 6e196718 mov v24.b\[12\], v24.b\[12\] + 263c: 6e196718 mov v24.b\[12\], v24.b\[12\] + 2640: 6e196739 mov v25.b\[12\], v25.b\[12\] + 2644: 6e196739 mov v25.b\[12\], v25.b\[12\] + 2648: 6e19675a mov v26.b\[12\], v26.b\[12\] + 264c: 6e19675a mov v26.b\[12\], v26.b\[12\] + 2650: 6e19677b mov v27.b\[12\], v27.b\[12\] + 2654: 6e19677b mov v27.b\[12\], v27.b\[12\] + 2658: 6e19679c mov v28.b\[12\], v28.b\[12\] + 265c: 6e19679c mov v28.b\[12\], v28.b\[12\] + 2660: 6e1967bd mov v29.b\[12\], v29.b\[12\] + 2664: 6e1967bd mov v29.b\[12\], v29.b\[12\] + 2668: 6e1967de mov v30.b\[12\], v30.b\[12\] + 266c: 6e1967de mov v30.b\[12\], v30.b\[12\] + 2670: 6e1b6c21 mov v1.b\[13\], v1.b\[13\] + 2674: 6e1b6c21 mov v1.b\[13\], v1.b\[13\] + 2678: 6e1b6c42 mov v2.b\[13\], v2.b\[13\] + 267c: 6e1b6c42 mov v2.b\[13\], v2.b\[13\] + 2680: 6e1b6c63 mov v3.b\[13\], v3.b\[13\] + 2684: 6e1b6c63 mov v3.b\[13\], v3.b\[13\] + 2688: 6e1b6c84 mov v4.b\[13\], v4.b\[13\] + 268c: 6e1b6c84 mov v4.b\[13\], v4.b\[13\] + 2690: 6e1b6ca5 mov v5.b\[13\], v5.b\[13\] + 2694: 6e1b6ca5 mov v5.b\[13\], v5.b\[13\] + 2698: 6e1b6cc6 mov v6.b\[13\], v6.b\[13\] + 269c: 6e1b6cc6 mov v6.b\[13\], v6.b\[13\] + 26a0: 6e1b6ce7 mov v7.b\[13\], v7.b\[13\] + 26a4: 6e1b6ce7 mov v7.b\[13\], v7.b\[13\] + 26a8: 6e1b6d08 mov v8.b\[13\], v8.b\[13\] + 26ac: 6e1b6d08 mov v8.b\[13\], v8.b\[13\] + 26b0: 6e1b6d29 mov v9.b\[13\], v9.b\[13\] + 26b4: 6e1b6d29 mov v9.b\[13\], v9.b\[13\] + 26b8: 6e1b6d4a mov v10.b\[13\], v10.b\[13\] + 26bc: 6e1b6d4a mov v10.b\[13\], v10.b\[13\] + 26c0: 6e1b6d6b mov v11.b\[13\], v11.b\[13\] + 26c4: 6e1b6d6b mov v11.b\[13\], v11.b\[13\] + 26c8: 6e1b6d8c mov v12.b\[13\], v12.b\[13\] + 26cc: 6e1b6d8c mov v12.b\[13\], v12.b\[13\] + 26d0: 6e1b6dad mov v13.b\[13\], v13.b\[13\] + 26d4: 6e1b6dad mov v13.b\[13\], v13.b\[13\] + 26d8: 6e1b6dce mov v14.b\[13\], v14.b\[13\] + 26dc: 6e1b6dce mov v14.b\[13\], v14.b\[13\] + 26e0: 6e1b6def mov v15.b\[13\], v15.b\[13\] + 26e4: 6e1b6def mov v15.b\[13\], v15.b\[13\] + 26e8: 6e1b6e10 mov v16.b\[13\], v16.b\[13\] + 26ec: 6e1b6e10 mov v16.b\[13\], v16.b\[13\] + 26f0: 6e1b6e31 mov v17.b\[13\], v17.b\[13\] + 26f4: 6e1b6e31 mov v17.b\[13\], v17.b\[13\] + 26f8: 6e1b6e52 mov v18.b\[13\], v18.b\[13\] + 26fc: 6e1b6e52 mov v18.b\[13\], v18.b\[13\] + 2700: 6e1b6e73 mov v19.b\[13\], v19.b\[13\] + 2704: 6e1b6e73 mov v19.b\[13\], v19.b\[13\] + 2708: 6e1b6e94 mov v20.b\[13\], v20.b\[13\] + 270c: 6e1b6e94 mov v20.b\[13\], v20.b\[13\] + 2710: 6e1b6eb5 mov v21.b\[13\], v21.b\[13\] + 2714: 6e1b6eb5 mov v21.b\[13\], v21.b\[13\] + 2718: 6e1b6ed6 mov v22.b\[13\], v22.b\[13\] + 271c: 6e1b6ed6 mov v22.b\[13\], v22.b\[13\] + 2720: 6e1b6ef7 mov v23.b\[13\], v23.b\[13\] + 2724: 6e1b6ef7 mov v23.b\[13\], v23.b\[13\] + 2728: 6e1b6f18 mov v24.b\[13\], v24.b\[13\] + 272c: 6e1b6f18 mov v24.b\[13\], v24.b\[13\] + 2730: 6e1b6f39 mov v25.b\[13\], v25.b\[13\] + 2734: 6e1b6f39 mov v25.b\[13\], v25.b\[13\] + 2738: 6e1b6f5a mov v26.b\[13\], v26.b\[13\] + 273c: 6e1b6f5a mov v26.b\[13\], v26.b\[13\] + 2740: 6e1b6f7b mov v27.b\[13\], v27.b\[13\] + 2744: 6e1b6f7b mov v27.b\[13\], v27.b\[13\] + 2748: 6e1b6f9c mov v28.b\[13\], v28.b\[13\] + 274c: 6e1b6f9c mov v28.b\[13\], v28.b\[13\] + 2750: 6e1b6fbd mov v29.b\[13\], v29.b\[13\] + 2754: 6e1b6fbd mov v29.b\[13\], v29.b\[13\] + 2758: 6e1b6fde mov v30.b\[13\], v30.b\[13\] + 275c: 6e1b6fde mov v30.b\[13\], v30.b\[13\] + 2760: 6e1d7421 mov v1.b\[14\], v1.b\[14\] + 2764: 6e1d7421 mov v1.b\[14\], v1.b\[14\] + 2768: 6e1d7442 mov v2.b\[14\], v2.b\[14\] + 276c: 6e1d7442 mov v2.b\[14\], v2.b\[14\] + 2770: 6e1d7463 mov v3.b\[14\], v3.b\[14\] + 2774: 6e1d7463 mov v3.b\[14\], v3.b\[14\] + 2778: 6e1d7484 mov v4.b\[14\], v4.b\[14\] + 277c: 6e1d7484 mov v4.b\[14\], v4.b\[14\] + 2780: 6e1d74a5 mov v5.b\[14\], v5.b\[14\] + 2784: 6e1d74a5 mov v5.b\[14\], v5.b\[14\] + 2788: 6e1d74c6 mov v6.b\[14\], v6.b\[14\] + 278c: 6e1d74c6 mov v6.b\[14\], v6.b\[14\] + 2790: 6e1d74e7 mov v7.b\[14\], v7.b\[14\] + 2794: 6e1d74e7 mov v7.b\[14\], v7.b\[14\] + 2798: 6e1d7508 mov v8.b\[14\], v8.b\[14\] + 279c: 6e1d7508 mov v8.b\[14\], v8.b\[14\] + 27a0: 6e1d7529 mov v9.b\[14\], v9.b\[14\] + 27a4: 6e1d7529 mov v9.b\[14\], v9.b\[14\] + 27a8: 6e1d754a mov v10.b\[14\], v10.b\[14\] + 27ac: 6e1d754a mov v10.b\[14\], v10.b\[14\] + 27b0: 6e1d756b mov v11.b\[14\], v11.b\[14\] + 27b4: 6e1d756b mov v11.b\[14\], v11.b\[14\] + 27b8: 6e1d758c mov v12.b\[14\], v12.b\[14\] + 27bc: 6e1d758c mov v12.b\[14\], v12.b\[14\] + 27c0: 6e1d75ad mov v13.b\[14\], v13.b\[14\] + 27c4: 6e1d75ad mov v13.b\[14\], v13.b\[14\] + 27c8: 6e1d75ce mov v14.b\[14\], v14.b\[14\] + 27cc: 6e1d75ce mov v14.b\[14\], v14.b\[14\] + 27d0: 6e1d75ef mov v15.b\[14\], v15.b\[14\] + 27d4: 6e1d75ef mov v15.b\[14\], v15.b\[14\] + 27d8: 6e1d7610 mov v16.b\[14\], v16.b\[14\] + 27dc: 6e1d7610 mov v16.b\[14\], v16.b\[14\] + 27e0: 6e1d7631 mov v17.b\[14\], v17.b\[14\] + 27e4: 6e1d7631 mov v17.b\[14\], v17.b\[14\] + 27e8: 6e1d7652 mov v18.b\[14\], v18.b\[14\] + 27ec: 6e1d7652 mov v18.b\[14\], v18.b\[14\] + 27f0: 6e1d7673 mov v19.b\[14\], v19.b\[14\] + 27f4: 6e1d7673 mov v19.b\[14\], v19.b\[14\] + 27f8: 6e1d7694 mov v20.b\[14\], v20.b\[14\] + 27fc: 6e1d7694 mov v20.b\[14\], v20.b\[14\] + 2800: 6e1d76b5 mov v21.b\[14\], v21.b\[14\] + 2804: 6e1d76b5 mov v21.b\[14\], v21.b\[14\] + 2808: 6e1d76d6 mov v22.b\[14\], v22.b\[14\] + 280c: 6e1d76d6 mov v22.b\[14\], v22.b\[14\] + 2810: 6e1d76f7 mov v23.b\[14\], v23.b\[14\] + 2814: 6e1d76f7 mov v23.b\[14\], v23.b\[14\] + 2818: 6e1d7718 mov v24.b\[14\], v24.b\[14\] + 281c: 6e1d7718 mov v24.b\[14\], v24.b\[14\] + 2820: 6e1d7739 mov v25.b\[14\], v25.b\[14\] + 2824: 6e1d7739 mov v25.b\[14\], v25.b\[14\] + 2828: 6e1d775a mov v26.b\[14\], v26.b\[14\] + 282c: 6e1d775a mov v26.b\[14\], v26.b\[14\] + 2830: 6e1d777b mov v27.b\[14\], v27.b\[14\] + 2834: 6e1d777b mov v27.b\[14\], v27.b\[14\] + 2838: 6e1d779c mov v28.b\[14\], v28.b\[14\] + 283c: 6e1d779c mov v28.b\[14\], v28.b\[14\] + 2840: 6e1d77bd mov v29.b\[14\], v29.b\[14\] + 2844: 6e1d77bd mov v29.b\[14\], v29.b\[14\] + 2848: 6e1d77de mov v30.b\[14\], v30.b\[14\] + 284c: 6e1d77de mov v30.b\[14\], v30.b\[14\] + 2850: 6e1f7c21 mov v1.b\[15\], v1.b\[15\] + 2854: 6e1f7c21 mov v1.b\[15\], v1.b\[15\] + 2858: 6e1f7c42 mov v2.b\[15\], v2.b\[15\] + 285c: 6e1f7c42 mov v2.b\[15\], v2.b\[15\] + 2860: 6e1f7c63 mov v3.b\[15\], v3.b\[15\] + 2864: 6e1f7c63 mov v3.b\[15\], v3.b\[15\] + 2868: 6e1f7c84 mov v4.b\[15\], v4.b\[15\] + 286c: 6e1f7c84 mov v4.b\[15\], v4.b\[15\] + 2870: 6e1f7ca5 mov v5.b\[15\], v5.b\[15\] + 2874: 6e1f7ca5 mov v5.b\[15\], v5.b\[15\] + 2878: 6e1f7cc6 mov v6.b\[15\], v6.b\[15\] + 287c: 6e1f7cc6 mov v6.b\[15\], v6.b\[15\] + 2880: 6e1f7ce7 mov v7.b\[15\], v7.b\[15\] + 2884: 6e1f7ce7 mov v7.b\[15\], v7.b\[15\] + 2888: 6e1f7d08 mov v8.b\[15\], v8.b\[15\] + 288c: 6e1f7d08 mov v8.b\[15\], v8.b\[15\] + 2890: 6e1f7d29 mov v9.b\[15\], v9.b\[15\] + 2894: 6e1f7d29 mov v9.b\[15\], v9.b\[15\] + 2898: 6e1f7d4a mov v10.b\[15\], v10.b\[15\] + 289c: 6e1f7d4a mov v10.b\[15\], v10.b\[15\] + 28a0: 6e1f7d6b mov v11.b\[15\], v11.b\[15\] + 28a4: 6e1f7d6b mov v11.b\[15\], v11.b\[15\] + 28a8: 6e1f7d8c mov v12.b\[15\], v12.b\[15\] + 28ac: 6e1f7d8c mov v12.b\[15\], v12.b\[15\] + 28b0: 6e1f7dad mov v13.b\[15\], v13.b\[15\] + 28b4: 6e1f7dad mov v13.b\[15\], v13.b\[15\] + 28b8: 6e1f7dce mov v14.b\[15\], v14.b\[15\] + 28bc: 6e1f7dce mov v14.b\[15\], v14.b\[15\] + 28c0: 6e1f7def mov v15.b\[15\], v15.b\[15\] + 28c4: 6e1f7def mov v15.b\[15\], v15.b\[15\] + 28c8: 6e1f7e10 mov v16.b\[15\], v16.b\[15\] + 28cc: 6e1f7e10 mov v16.b\[15\], v16.b\[15\] + 28d0: 6e1f7e31 mov v17.b\[15\], v17.b\[15\] + 28d4: 6e1f7e31 mov v17.b\[15\], v17.b\[15\] + 28d8: 6e1f7e52 mov v18.b\[15\], v18.b\[15\] + 28dc: 6e1f7e52 mov v18.b\[15\], v18.b\[15\] + 28e0: 6e1f7e73 mov v19.b\[15\], v19.b\[15\] + 28e4: 6e1f7e73 mov v19.b\[15\], v19.b\[15\] + 28e8: 6e1f7e94 mov v20.b\[15\], v20.b\[15\] + 28ec: 6e1f7e94 mov v20.b\[15\], v20.b\[15\] + 28f0: 6e1f7eb5 mov v21.b\[15\], v21.b\[15\] + 28f4: 6e1f7eb5 mov v21.b\[15\], v21.b\[15\] + 28f8: 6e1f7ed6 mov v22.b\[15\], v22.b\[15\] + 28fc: 6e1f7ed6 mov v22.b\[15\], v22.b\[15\] + 2900: 6e1f7ef7 mov v23.b\[15\], v23.b\[15\] + 2904: 6e1f7ef7 mov v23.b\[15\], v23.b\[15\] + 2908: 6e1f7f18 mov v24.b\[15\], v24.b\[15\] + 290c: 6e1f7f18 mov v24.b\[15\], v24.b\[15\] + 2910: 6e1f7f39 mov v25.b\[15\], v25.b\[15\] + 2914: 6e1f7f39 mov v25.b\[15\], v25.b\[15\] + 2918: 6e1f7f5a mov v26.b\[15\], v26.b\[15\] + 291c: 6e1f7f5a mov v26.b\[15\], v26.b\[15\] + 2920: 6e1f7f7b mov v27.b\[15\], v27.b\[15\] + 2924: 6e1f7f7b mov v27.b\[15\], v27.b\[15\] + 2928: 6e1f7f9c mov v28.b\[15\], v28.b\[15\] + 292c: 6e1f7f9c mov v28.b\[15\], v28.b\[15\] + 2930: 6e1f7fbd mov v29.b\[15\], v29.b\[15\] + 2934: 6e1f7fbd mov v29.b\[15\], v29.b\[15\] + 2938: 6e1f7fde mov v30.b\[15\], v30.b\[15\] + 293c: 6e1f7fde mov v30.b\[15\], v30.b\[15\] + 2940: 6e020421 mov v1.h\[0\], v1.h\[0\] + 2944: 6e020421 mov v1.h\[0\], v1.h\[0\] + 2948: 6e020442 mov v2.h\[0\], v2.h\[0\] + 294c: 6e020442 mov v2.h\[0\], v2.h\[0\] + 2950: 6e020463 mov v3.h\[0\], v3.h\[0\] + 2954: 6e020463 mov v3.h\[0\], v3.h\[0\] + 2958: 6e020484 mov v4.h\[0\], v4.h\[0\] + 295c: 6e020484 mov v4.h\[0\], v4.h\[0\] + 2960: 6e0204a5 mov v5.h\[0\], v5.h\[0\] + 2964: 6e0204a5 mov v5.h\[0\], v5.h\[0\] + 2968: 6e0204c6 mov v6.h\[0\], v6.h\[0\] + 296c: 6e0204c6 mov v6.h\[0\], v6.h\[0\] + 2970: 6e0204e7 mov v7.h\[0\], v7.h\[0\] + 2974: 6e0204e7 mov v7.h\[0\], v7.h\[0\] + 2978: 6e020508 mov v8.h\[0\], v8.h\[0\] + 297c: 6e020508 mov v8.h\[0\], v8.h\[0\] + 2980: 6e020529 mov v9.h\[0\], v9.h\[0\] + 2984: 6e020529 mov v9.h\[0\], v9.h\[0\] + 2988: 6e02054a mov v10.h\[0\], v10.h\[0\] + 298c: 6e02054a mov v10.h\[0\], v10.h\[0\] + 2990: 6e02056b mov v11.h\[0\], v11.h\[0\] + 2994: 6e02056b mov v11.h\[0\], v11.h\[0\] + 2998: 6e02058c mov v12.h\[0\], v12.h\[0\] + 299c: 6e02058c mov v12.h\[0\], v12.h\[0\] + 29a0: 6e0205ad mov v13.h\[0\], v13.h\[0\] + 29a4: 6e0205ad mov v13.h\[0\], v13.h\[0\] + 29a8: 6e0205ce mov v14.h\[0\], v14.h\[0\] + 29ac: 6e0205ce mov v14.h\[0\], v14.h\[0\] + 29b0: 6e0205ef mov v15.h\[0\], v15.h\[0\] + 29b4: 6e0205ef mov v15.h\[0\], v15.h\[0\] + 29b8: 6e020610 mov v16.h\[0\], v16.h\[0\] + 29bc: 6e020610 mov v16.h\[0\], v16.h\[0\] + 29c0: 6e020631 mov v17.h\[0\], v17.h\[0\] + 29c4: 6e020631 mov v17.h\[0\], v17.h\[0\] + 29c8: 6e020652 mov v18.h\[0\], v18.h\[0\] + 29cc: 6e020652 mov v18.h\[0\], v18.h\[0\] + 29d0: 6e020673 mov v19.h\[0\], v19.h\[0\] + 29d4: 6e020673 mov v19.h\[0\], v19.h\[0\] + 29d8: 6e020694 mov v20.h\[0\], v20.h\[0\] + 29dc: 6e020694 mov v20.h\[0\], v20.h\[0\] + 29e0: 6e0206b5 mov v21.h\[0\], v21.h\[0\] + 29e4: 6e0206b5 mov v21.h\[0\], v21.h\[0\] + 29e8: 6e0206d6 mov v22.h\[0\], v22.h\[0\] + 29ec: 6e0206d6 mov v22.h\[0\], v22.h\[0\] + 29f0: 6e0206f7 mov v23.h\[0\], v23.h\[0\] + 29f4: 6e0206f7 mov v23.h\[0\], v23.h\[0\] + 29f8: 6e020718 mov v24.h\[0\], v24.h\[0\] + 29fc: 6e020718 mov v24.h\[0\], v24.h\[0\] + 2a00: 6e020739 mov v25.h\[0\], v25.h\[0\] + 2a04: 6e020739 mov v25.h\[0\], v25.h\[0\] + 2a08: 6e02075a mov v26.h\[0\], v26.h\[0\] + 2a0c: 6e02075a mov v26.h\[0\], v26.h\[0\] + 2a10: 6e02077b mov v27.h\[0\], v27.h\[0\] + 2a14: 6e02077b mov v27.h\[0\], v27.h\[0\] + 2a18: 6e02079c mov v28.h\[0\], v28.h\[0\] + 2a1c: 6e02079c mov v28.h\[0\], v28.h\[0\] + 2a20: 6e0207bd mov v29.h\[0\], v29.h\[0\] + 2a24: 6e0207bd mov v29.h\[0\], v29.h\[0\] + 2a28: 6e0207de mov v30.h\[0\], v30.h\[0\] + 2a2c: 6e0207de mov v30.h\[0\], v30.h\[0\] + 2a30: 6e061421 mov v1.h\[1\], v1.h\[1\] + 2a34: 6e061421 mov v1.h\[1\], v1.h\[1\] + 2a38: 6e061442 mov v2.h\[1\], v2.h\[1\] + 2a3c: 6e061442 mov v2.h\[1\], v2.h\[1\] + 2a40: 6e061463 mov v3.h\[1\], v3.h\[1\] + 2a44: 6e061463 mov v3.h\[1\], v3.h\[1\] + 2a48: 6e061484 mov v4.h\[1\], v4.h\[1\] + 2a4c: 6e061484 mov v4.h\[1\], v4.h\[1\] + 2a50: 6e0614a5 mov v5.h\[1\], v5.h\[1\] + 2a54: 6e0614a5 mov v5.h\[1\], v5.h\[1\] + 2a58: 6e0614c6 mov v6.h\[1\], v6.h\[1\] + 2a5c: 6e0614c6 mov v6.h\[1\], v6.h\[1\] + 2a60: 6e0614e7 mov v7.h\[1\], v7.h\[1\] + 2a64: 6e0614e7 mov v7.h\[1\], v7.h\[1\] + 2a68: 6e061508 mov v8.h\[1\], v8.h\[1\] + 2a6c: 6e061508 mov v8.h\[1\], v8.h\[1\] + 2a70: 6e061529 mov v9.h\[1\], v9.h\[1\] + 2a74: 6e061529 mov v9.h\[1\], v9.h\[1\] + 2a78: 6e06154a mov v10.h\[1\], v10.h\[1\] + 2a7c: 6e06154a mov v10.h\[1\], v10.h\[1\] + 2a80: 6e06156b mov v11.h\[1\], v11.h\[1\] + 2a84: 6e06156b mov v11.h\[1\], v11.h\[1\] + 2a88: 6e06158c mov v12.h\[1\], v12.h\[1\] + 2a8c: 6e06158c mov v12.h\[1\], v12.h\[1\] + 2a90: 6e0615ad mov v13.h\[1\], v13.h\[1\] + 2a94: 6e0615ad mov v13.h\[1\], v13.h\[1\] + 2a98: 6e0615ce mov v14.h\[1\], v14.h\[1\] + 2a9c: 6e0615ce mov v14.h\[1\], v14.h\[1\] + 2aa0: 6e0615ef mov v15.h\[1\], v15.h\[1\] + 2aa4: 6e0615ef mov v15.h\[1\], v15.h\[1\] + 2aa8: 6e061610 mov v16.h\[1\], v16.h\[1\] + 2aac: 6e061610 mov v16.h\[1\], v16.h\[1\] + 2ab0: 6e061631 mov v17.h\[1\], v17.h\[1\] + 2ab4: 6e061631 mov v17.h\[1\], v17.h\[1\] + 2ab8: 6e061652 mov v18.h\[1\], v18.h\[1\] + 2abc: 6e061652 mov v18.h\[1\], v18.h\[1\] + 2ac0: 6e061673 mov v19.h\[1\], v19.h\[1\] + 2ac4: 6e061673 mov v19.h\[1\], v19.h\[1\] + 2ac8: 6e061694 mov v20.h\[1\], v20.h\[1\] + 2acc: 6e061694 mov v20.h\[1\], v20.h\[1\] + 2ad0: 6e0616b5 mov v21.h\[1\], v21.h\[1\] + 2ad4: 6e0616b5 mov v21.h\[1\], v21.h\[1\] + 2ad8: 6e0616d6 mov v22.h\[1\], v22.h\[1\] + 2adc: 6e0616d6 mov v22.h\[1\], v22.h\[1\] + 2ae0: 6e0616f7 mov v23.h\[1\], v23.h\[1\] + 2ae4: 6e0616f7 mov v23.h\[1\], v23.h\[1\] + 2ae8: 6e061718 mov v24.h\[1\], v24.h\[1\] + 2aec: 6e061718 mov v24.h\[1\], v24.h\[1\] + 2af0: 6e061739 mov v25.h\[1\], v25.h\[1\] + 2af4: 6e061739 mov v25.h\[1\], v25.h\[1\] + 2af8: 6e06175a mov v26.h\[1\], v26.h\[1\] + 2afc: 6e06175a mov v26.h\[1\], v26.h\[1\] + 2b00: 6e06177b mov v27.h\[1\], v27.h\[1\] + 2b04: 6e06177b mov v27.h\[1\], v27.h\[1\] + 2b08: 6e06179c mov v28.h\[1\], v28.h\[1\] + 2b0c: 6e06179c mov v28.h\[1\], v28.h\[1\] + 2b10: 6e0617bd mov v29.h\[1\], v29.h\[1\] + 2b14: 6e0617bd mov v29.h\[1\], v29.h\[1\] + 2b18: 6e0617de mov v30.h\[1\], v30.h\[1\] + 2b1c: 6e0617de mov v30.h\[1\], v30.h\[1\] + 2b20: 6e0a2421 mov v1.h\[2\], v1.h\[2\] + 2b24: 6e0a2421 mov v1.h\[2\], v1.h\[2\] + 2b28: 6e0a2442 mov v2.h\[2\], v2.h\[2\] + 2b2c: 6e0a2442 mov v2.h\[2\], v2.h\[2\] + 2b30: 6e0a2463 mov v3.h\[2\], v3.h\[2\] + 2b34: 6e0a2463 mov v3.h\[2\], v3.h\[2\] + 2b38: 6e0a2484 mov v4.h\[2\], v4.h\[2\] + 2b3c: 6e0a2484 mov v4.h\[2\], v4.h\[2\] + 2b40: 6e0a24a5 mov v5.h\[2\], v5.h\[2\] + 2b44: 6e0a24a5 mov v5.h\[2\], v5.h\[2\] + 2b48: 6e0a24c6 mov v6.h\[2\], v6.h\[2\] + 2b4c: 6e0a24c6 mov v6.h\[2\], v6.h\[2\] + 2b50: 6e0a24e7 mov v7.h\[2\], v7.h\[2\] + 2b54: 6e0a24e7 mov v7.h\[2\], v7.h\[2\] + 2b58: 6e0a2508 mov v8.h\[2\], v8.h\[2\] + 2b5c: 6e0a2508 mov v8.h\[2\], v8.h\[2\] + 2b60: 6e0a2529 mov v9.h\[2\], v9.h\[2\] + 2b64: 6e0a2529 mov v9.h\[2\], v9.h\[2\] + 2b68: 6e0a254a mov v10.h\[2\], v10.h\[2\] + 2b6c: 6e0a254a mov v10.h\[2\], v10.h\[2\] + 2b70: 6e0a256b mov v11.h\[2\], v11.h\[2\] + 2b74: 6e0a256b mov v11.h\[2\], v11.h\[2\] + 2b78: 6e0a258c mov v12.h\[2\], v12.h\[2\] + 2b7c: 6e0a258c mov v12.h\[2\], v12.h\[2\] + 2b80: 6e0a25ad mov v13.h\[2\], v13.h\[2\] + 2b84: 6e0a25ad mov v13.h\[2\], v13.h\[2\] + 2b88: 6e0a25ce mov v14.h\[2\], v14.h\[2\] + 2b8c: 6e0a25ce mov v14.h\[2\], v14.h\[2\] + 2b90: 6e0a25ef mov v15.h\[2\], v15.h\[2\] + 2b94: 6e0a25ef mov v15.h\[2\], v15.h\[2\] + 2b98: 6e0a2610 mov v16.h\[2\], v16.h\[2\] + 2b9c: 6e0a2610 mov v16.h\[2\], v16.h\[2\] + 2ba0: 6e0a2631 mov v17.h\[2\], v17.h\[2\] + 2ba4: 6e0a2631 mov v17.h\[2\], v17.h\[2\] + 2ba8: 6e0a2652 mov v18.h\[2\], v18.h\[2\] + 2bac: 6e0a2652 mov v18.h\[2\], v18.h\[2\] + 2bb0: 6e0a2673 mov v19.h\[2\], v19.h\[2\] + 2bb4: 6e0a2673 mov v19.h\[2\], v19.h\[2\] + 2bb8: 6e0a2694 mov v20.h\[2\], v20.h\[2\] + 2bbc: 6e0a2694 mov v20.h\[2\], v20.h\[2\] + 2bc0: 6e0a26b5 mov v21.h\[2\], v21.h\[2\] + 2bc4: 6e0a26b5 mov v21.h\[2\], v21.h\[2\] + 2bc8: 6e0a26d6 mov v22.h\[2\], v22.h\[2\] + 2bcc: 6e0a26d6 mov v22.h\[2\], v22.h\[2\] + 2bd0: 6e0a26f7 mov v23.h\[2\], v23.h\[2\] + 2bd4: 6e0a26f7 mov v23.h\[2\], v23.h\[2\] + 2bd8: 6e0a2718 mov v24.h\[2\], v24.h\[2\] + 2bdc: 6e0a2718 mov v24.h\[2\], v24.h\[2\] + 2be0: 6e0a2739 mov v25.h\[2\], v25.h\[2\] + 2be4: 6e0a2739 mov v25.h\[2\], v25.h\[2\] + 2be8: 6e0a275a mov v26.h\[2\], v26.h\[2\] + 2bec: 6e0a275a mov v26.h\[2\], v26.h\[2\] + 2bf0: 6e0a277b mov v27.h\[2\], v27.h\[2\] + 2bf4: 6e0a277b mov v27.h\[2\], v27.h\[2\] + 2bf8: 6e0a279c mov v28.h\[2\], v28.h\[2\] + 2bfc: 6e0a279c mov v28.h\[2\], v28.h\[2\] + 2c00: 6e0a27bd mov v29.h\[2\], v29.h\[2\] + 2c04: 6e0a27bd mov v29.h\[2\], v29.h\[2\] + 2c08: 6e0a27de mov v30.h\[2\], v30.h\[2\] + 2c0c: 6e0a27de mov v30.h\[2\], v30.h\[2\] + 2c10: 6e0e3421 mov v1.h\[3\], v1.h\[3\] + 2c14: 6e0e3421 mov v1.h\[3\], v1.h\[3\] + 2c18: 6e0e3442 mov v2.h\[3\], v2.h\[3\] + 2c1c: 6e0e3442 mov v2.h\[3\], v2.h\[3\] + 2c20: 6e0e3463 mov v3.h\[3\], v3.h\[3\] + 2c24: 6e0e3463 mov v3.h\[3\], v3.h\[3\] + 2c28: 6e0e3484 mov v4.h\[3\], v4.h\[3\] + 2c2c: 6e0e3484 mov v4.h\[3\], v4.h\[3\] + 2c30: 6e0e34a5 mov v5.h\[3\], v5.h\[3\] + 2c34: 6e0e34a5 mov v5.h\[3\], v5.h\[3\] + 2c38: 6e0e34c6 mov v6.h\[3\], v6.h\[3\] + 2c3c: 6e0e34c6 mov v6.h\[3\], v6.h\[3\] + 2c40: 6e0e34e7 mov v7.h\[3\], v7.h\[3\] + 2c44: 6e0e34e7 mov v7.h\[3\], v7.h\[3\] + 2c48: 6e0e3508 mov v8.h\[3\], v8.h\[3\] + 2c4c: 6e0e3508 mov v8.h\[3\], v8.h\[3\] + 2c50: 6e0e3529 mov v9.h\[3\], v9.h\[3\] + 2c54: 6e0e3529 mov v9.h\[3\], v9.h\[3\] + 2c58: 6e0e354a mov v10.h\[3\], v10.h\[3\] + 2c5c: 6e0e354a mov v10.h\[3\], v10.h\[3\] + 2c60: 6e0e356b mov v11.h\[3\], v11.h\[3\] + 2c64: 6e0e356b mov v11.h\[3\], v11.h\[3\] + 2c68: 6e0e358c mov v12.h\[3\], v12.h\[3\] + 2c6c: 6e0e358c mov v12.h\[3\], v12.h\[3\] + 2c70: 6e0e35ad mov v13.h\[3\], v13.h\[3\] + 2c74: 6e0e35ad mov v13.h\[3\], v13.h\[3\] + 2c78: 6e0e35ce mov v14.h\[3\], v14.h\[3\] + 2c7c: 6e0e35ce mov v14.h\[3\], v14.h\[3\] + 2c80: 6e0e35ef mov v15.h\[3\], v15.h\[3\] + 2c84: 6e0e35ef mov v15.h\[3\], v15.h\[3\] + 2c88: 6e0e3610 mov v16.h\[3\], v16.h\[3\] + 2c8c: 6e0e3610 mov v16.h\[3\], v16.h\[3\] + 2c90: 6e0e3631 mov v17.h\[3\], v17.h\[3\] + 2c94: 6e0e3631 mov v17.h\[3\], v17.h\[3\] + 2c98: 6e0e3652 mov v18.h\[3\], v18.h\[3\] + 2c9c: 6e0e3652 mov v18.h\[3\], v18.h\[3\] + 2ca0: 6e0e3673 mov v19.h\[3\], v19.h\[3\] + 2ca4: 6e0e3673 mov v19.h\[3\], v19.h\[3\] + 2ca8: 6e0e3694 mov v20.h\[3\], v20.h\[3\] + 2cac: 6e0e3694 mov v20.h\[3\], v20.h\[3\] + 2cb0: 6e0e36b5 mov v21.h\[3\], v21.h\[3\] + 2cb4: 6e0e36b5 mov v21.h\[3\], v21.h\[3\] + 2cb8: 6e0e36d6 mov v22.h\[3\], v22.h\[3\] + 2cbc: 6e0e36d6 mov v22.h\[3\], v22.h\[3\] + 2cc0: 6e0e36f7 mov v23.h\[3\], v23.h\[3\] + 2cc4: 6e0e36f7 mov v23.h\[3\], v23.h\[3\] + 2cc8: 6e0e3718 mov v24.h\[3\], v24.h\[3\] + 2ccc: 6e0e3718 mov v24.h\[3\], v24.h\[3\] + 2cd0: 6e0e3739 mov v25.h\[3\], v25.h\[3\] + 2cd4: 6e0e3739 mov v25.h\[3\], v25.h\[3\] + 2cd8: 6e0e375a mov v26.h\[3\], v26.h\[3\] + 2cdc: 6e0e375a mov v26.h\[3\], v26.h\[3\] + 2ce0: 6e0e377b mov v27.h\[3\], v27.h\[3\] + 2ce4: 6e0e377b mov v27.h\[3\], v27.h\[3\] + 2ce8: 6e0e379c mov v28.h\[3\], v28.h\[3\] + 2cec: 6e0e379c mov v28.h\[3\], v28.h\[3\] + 2cf0: 6e0e37bd mov v29.h\[3\], v29.h\[3\] + 2cf4: 6e0e37bd mov v29.h\[3\], v29.h\[3\] + 2cf8: 6e0e37de mov v30.h\[3\], v30.h\[3\] + 2cfc: 6e0e37de mov v30.h\[3\], v30.h\[3\] + 2d00: 6e124421 mov v1.h\[4\], v1.h\[4\] + 2d04: 6e124421 mov v1.h\[4\], v1.h\[4\] + 2d08: 6e124442 mov v2.h\[4\], v2.h\[4\] + 2d0c: 6e124442 mov v2.h\[4\], v2.h\[4\] + 2d10: 6e124463 mov v3.h\[4\], v3.h\[4\] + 2d14: 6e124463 mov v3.h\[4\], v3.h\[4\] + 2d18: 6e124484 mov v4.h\[4\], v4.h\[4\] + 2d1c: 6e124484 mov v4.h\[4\], v4.h\[4\] + 2d20: 6e1244a5 mov v5.h\[4\], v5.h\[4\] + 2d24: 6e1244a5 mov v5.h\[4\], v5.h\[4\] + 2d28: 6e1244c6 mov v6.h\[4\], v6.h\[4\] + 2d2c: 6e1244c6 mov v6.h\[4\], v6.h\[4\] + 2d30: 6e1244e7 mov v7.h\[4\], v7.h\[4\] + 2d34: 6e1244e7 mov v7.h\[4\], v7.h\[4\] + 2d38: 6e124508 mov v8.h\[4\], v8.h\[4\] + 2d3c: 6e124508 mov v8.h\[4\], v8.h\[4\] + 2d40: 6e124529 mov v9.h\[4\], v9.h\[4\] + 2d44: 6e124529 mov v9.h\[4\], v9.h\[4\] + 2d48: 6e12454a mov v10.h\[4\], v10.h\[4\] + 2d4c: 6e12454a mov v10.h\[4\], v10.h\[4\] + 2d50: 6e12456b mov v11.h\[4\], v11.h\[4\] + 2d54: 6e12456b mov v11.h\[4\], v11.h\[4\] + 2d58: 6e12458c mov v12.h\[4\], v12.h\[4\] + 2d5c: 6e12458c mov v12.h\[4\], v12.h\[4\] + 2d60: 6e1245ad mov v13.h\[4\], v13.h\[4\] + 2d64: 6e1245ad mov v13.h\[4\], v13.h\[4\] + 2d68: 6e1245ce mov v14.h\[4\], v14.h\[4\] + 2d6c: 6e1245ce mov v14.h\[4\], v14.h\[4\] + 2d70: 6e1245ef mov v15.h\[4\], v15.h\[4\] + 2d74: 6e1245ef mov v15.h\[4\], v15.h\[4\] + 2d78: 6e124610 mov v16.h\[4\], v16.h\[4\] + 2d7c: 6e124610 mov v16.h\[4\], v16.h\[4\] + 2d80: 6e124631 mov v17.h\[4\], v17.h\[4\] + 2d84: 6e124631 mov v17.h\[4\], v17.h\[4\] + 2d88: 6e124652 mov v18.h\[4\], v18.h\[4\] + 2d8c: 6e124652 mov v18.h\[4\], v18.h\[4\] + 2d90: 6e124673 mov v19.h\[4\], v19.h\[4\] + 2d94: 6e124673 mov v19.h\[4\], v19.h\[4\] + 2d98: 6e124694 mov v20.h\[4\], v20.h\[4\] + 2d9c: 6e124694 mov v20.h\[4\], v20.h\[4\] + 2da0: 6e1246b5 mov v21.h\[4\], v21.h\[4\] + 2da4: 6e1246b5 mov v21.h\[4\], v21.h\[4\] + 2da8: 6e1246d6 mov v22.h\[4\], v22.h\[4\] + 2dac: 6e1246d6 mov v22.h\[4\], v22.h\[4\] + 2db0: 6e1246f7 mov v23.h\[4\], v23.h\[4\] + 2db4: 6e1246f7 mov v23.h\[4\], v23.h\[4\] + 2db8: 6e124718 mov v24.h\[4\], v24.h\[4\] + 2dbc: 6e124718 mov v24.h\[4\], v24.h\[4\] + 2dc0: 6e124739 mov v25.h\[4\], v25.h\[4\] + 2dc4: 6e124739 mov v25.h\[4\], v25.h\[4\] + 2dc8: 6e12475a mov v26.h\[4\], v26.h\[4\] + 2dcc: 6e12475a mov v26.h\[4\], v26.h\[4\] + 2dd0: 6e12477b mov v27.h\[4\], v27.h\[4\] + 2dd4: 6e12477b mov v27.h\[4\], v27.h\[4\] + 2dd8: 6e12479c mov v28.h\[4\], v28.h\[4\] + 2ddc: 6e12479c mov v28.h\[4\], v28.h\[4\] + 2de0: 6e1247bd mov v29.h\[4\], v29.h\[4\] + 2de4: 6e1247bd mov v29.h\[4\], v29.h\[4\] + 2de8: 6e1247de mov v30.h\[4\], v30.h\[4\] + 2dec: 6e1247de mov v30.h\[4\], v30.h\[4\] + 2df0: 6e165421 mov v1.h\[5\], v1.h\[5\] + 2df4: 6e165421 mov v1.h\[5\], v1.h\[5\] + 2df8: 6e165442 mov v2.h\[5\], v2.h\[5\] + 2dfc: 6e165442 mov v2.h\[5\], v2.h\[5\] + 2e00: 6e165463 mov v3.h\[5\], v3.h\[5\] + 2e04: 6e165463 mov v3.h\[5\], v3.h\[5\] + 2e08: 6e165484 mov v4.h\[5\], v4.h\[5\] + 2e0c: 6e165484 mov v4.h\[5\], v4.h\[5\] + 2e10: 6e1654a5 mov v5.h\[5\], v5.h\[5\] + 2e14: 6e1654a5 mov v5.h\[5\], v5.h\[5\] + 2e18: 6e1654c6 mov v6.h\[5\], v6.h\[5\] + 2e1c: 6e1654c6 mov v6.h\[5\], v6.h\[5\] + 2e20: 6e1654e7 mov v7.h\[5\], v7.h\[5\] + 2e24: 6e1654e7 mov v7.h\[5\], v7.h\[5\] + 2e28: 6e165508 mov v8.h\[5\], v8.h\[5\] + 2e2c: 6e165508 mov v8.h\[5\], v8.h\[5\] + 2e30: 6e165529 mov v9.h\[5\], v9.h\[5\] + 2e34: 6e165529 mov v9.h\[5\], v9.h\[5\] + 2e38: 6e16554a mov v10.h\[5\], v10.h\[5\] + 2e3c: 6e16554a mov v10.h\[5\], v10.h\[5\] + 2e40: 6e16556b mov v11.h\[5\], v11.h\[5\] + 2e44: 6e16556b mov v11.h\[5\], v11.h\[5\] + 2e48: 6e16558c mov v12.h\[5\], v12.h\[5\] + 2e4c: 6e16558c mov v12.h\[5\], v12.h\[5\] + 2e50: 6e1655ad mov v13.h\[5\], v13.h\[5\] + 2e54: 6e1655ad mov v13.h\[5\], v13.h\[5\] + 2e58: 6e1655ce mov v14.h\[5\], v14.h\[5\] + 2e5c: 6e1655ce mov v14.h\[5\], v14.h\[5\] + 2e60: 6e1655ef mov v15.h\[5\], v15.h\[5\] + 2e64: 6e1655ef mov v15.h\[5\], v15.h\[5\] + 2e68: 6e165610 mov v16.h\[5\], v16.h\[5\] + 2e6c: 6e165610 mov v16.h\[5\], v16.h\[5\] + 2e70: 6e165631 mov v17.h\[5\], v17.h\[5\] + 2e74: 6e165631 mov v17.h\[5\], v17.h\[5\] + 2e78: 6e165652 mov v18.h\[5\], v18.h\[5\] + 2e7c: 6e165652 mov v18.h\[5\], v18.h\[5\] + 2e80: 6e165673 mov v19.h\[5\], v19.h\[5\] + 2e84: 6e165673 mov v19.h\[5\], v19.h\[5\] + 2e88: 6e165694 mov v20.h\[5\], v20.h\[5\] + 2e8c: 6e165694 mov v20.h\[5\], v20.h\[5\] + 2e90: 6e1656b5 mov v21.h\[5\], v21.h\[5\] + 2e94: 6e1656b5 mov v21.h\[5\], v21.h\[5\] + 2e98: 6e1656d6 mov v22.h\[5\], v22.h\[5\] + 2e9c: 6e1656d6 mov v22.h\[5\], v22.h\[5\] + 2ea0: 6e1656f7 mov v23.h\[5\], v23.h\[5\] + 2ea4: 6e1656f7 mov v23.h\[5\], v23.h\[5\] + 2ea8: 6e165718 mov v24.h\[5\], v24.h\[5\] + 2eac: 6e165718 mov v24.h\[5\], v24.h\[5\] + 2eb0: 6e165739 mov v25.h\[5\], v25.h\[5\] + 2eb4: 6e165739 mov v25.h\[5\], v25.h\[5\] + 2eb8: 6e16575a mov v26.h\[5\], v26.h\[5\] + 2ebc: 6e16575a mov v26.h\[5\], v26.h\[5\] + 2ec0: 6e16577b mov v27.h\[5\], v27.h\[5\] + 2ec4: 6e16577b mov v27.h\[5\], v27.h\[5\] + 2ec8: 6e16579c mov v28.h\[5\], v28.h\[5\] + 2ecc: 6e16579c mov v28.h\[5\], v28.h\[5\] + 2ed0: 6e1657bd mov v29.h\[5\], v29.h\[5\] + 2ed4: 6e1657bd mov v29.h\[5\], v29.h\[5\] + 2ed8: 6e1657de mov v30.h\[5\], v30.h\[5\] + 2edc: 6e1657de mov v30.h\[5\], v30.h\[5\] + 2ee0: 6e1a6421 mov v1.h\[6\], v1.h\[6\] + 2ee4: 6e1a6421 mov v1.h\[6\], v1.h\[6\] + 2ee8: 6e1a6442 mov v2.h\[6\], v2.h\[6\] + 2eec: 6e1a6442 mov v2.h\[6\], v2.h\[6\] + 2ef0: 6e1a6463 mov v3.h\[6\], v3.h\[6\] + 2ef4: 6e1a6463 mov v3.h\[6\], v3.h\[6\] + 2ef8: 6e1a6484 mov v4.h\[6\], v4.h\[6\] + 2efc: 6e1a6484 mov v4.h\[6\], v4.h\[6\] + 2f00: 6e1a64a5 mov v5.h\[6\], v5.h\[6\] + 2f04: 6e1a64a5 mov v5.h\[6\], v5.h\[6\] + 2f08: 6e1a64c6 mov v6.h\[6\], v6.h\[6\] + 2f0c: 6e1a64c6 mov v6.h\[6\], v6.h\[6\] + 2f10: 6e1a64e7 mov v7.h\[6\], v7.h\[6\] + 2f14: 6e1a64e7 mov v7.h\[6\], v7.h\[6\] + 2f18: 6e1a6508 mov v8.h\[6\], v8.h\[6\] + 2f1c: 6e1a6508 mov v8.h\[6\], v8.h\[6\] + 2f20: 6e1a6529 mov v9.h\[6\], v9.h\[6\] + 2f24: 6e1a6529 mov v9.h\[6\], v9.h\[6\] + 2f28: 6e1a654a mov v10.h\[6\], v10.h\[6\] + 2f2c: 6e1a654a mov v10.h\[6\], v10.h\[6\] + 2f30: 6e1a656b mov v11.h\[6\], v11.h\[6\] + 2f34: 6e1a656b mov v11.h\[6\], v11.h\[6\] + 2f38: 6e1a658c mov v12.h\[6\], v12.h\[6\] + 2f3c: 6e1a658c mov v12.h\[6\], v12.h\[6\] + 2f40: 6e1a65ad mov v13.h\[6\], v13.h\[6\] + 2f44: 6e1a65ad mov v13.h\[6\], v13.h\[6\] + 2f48: 6e1a65ce mov v14.h\[6\], v14.h\[6\] + 2f4c: 6e1a65ce mov v14.h\[6\], v14.h\[6\] + 2f50: 6e1a65ef mov v15.h\[6\], v15.h\[6\] + 2f54: 6e1a65ef mov v15.h\[6\], v15.h\[6\] + 2f58: 6e1a6610 mov v16.h\[6\], v16.h\[6\] + 2f5c: 6e1a6610 mov v16.h\[6\], v16.h\[6\] + 2f60: 6e1a6631 mov v17.h\[6\], v17.h\[6\] + 2f64: 6e1a6631 mov v17.h\[6\], v17.h\[6\] + 2f68: 6e1a6652 mov v18.h\[6\], v18.h\[6\] + 2f6c: 6e1a6652 mov v18.h\[6\], v18.h\[6\] + 2f70: 6e1a6673 mov v19.h\[6\], v19.h\[6\] + 2f74: 6e1a6673 mov v19.h\[6\], v19.h\[6\] + 2f78: 6e1a6694 mov v20.h\[6\], v20.h\[6\] + 2f7c: 6e1a6694 mov v20.h\[6\], v20.h\[6\] + 2f80: 6e1a66b5 mov v21.h\[6\], v21.h\[6\] + 2f84: 6e1a66b5 mov v21.h\[6\], v21.h\[6\] + 2f88: 6e1a66d6 mov v22.h\[6\], v22.h\[6\] + 2f8c: 6e1a66d6 mov v22.h\[6\], v22.h\[6\] + 2f90: 6e1a66f7 mov v23.h\[6\], v23.h\[6\] + 2f94: 6e1a66f7 mov v23.h\[6\], v23.h\[6\] + 2f98: 6e1a6718 mov v24.h\[6\], v24.h\[6\] + 2f9c: 6e1a6718 mov v24.h\[6\], v24.h\[6\] + 2fa0: 6e1a6739 mov v25.h\[6\], v25.h\[6\] + 2fa4: 6e1a6739 mov v25.h\[6\], v25.h\[6\] + 2fa8: 6e1a675a mov v26.h\[6\], v26.h\[6\] + 2fac: 6e1a675a mov v26.h\[6\], v26.h\[6\] + 2fb0: 6e1a677b mov v27.h\[6\], v27.h\[6\] + 2fb4: 6e1a677b mov v27.h\[6\], v27.h\[6\] + 2fb8: 6e1a679c mov v28.h\[6\], v28.h\[6\] + 2fbc: 6e1a679c mov v28.h\[6\], v28.h\[6\] + 2fc0: 6e1a67bd mov v29.h\[6\], v29.h\[6\] + 2fc4: 6e1a67bd mov v29.h\[6\], v29.h\[6\] + 2fc8: 6e1a67de mov v30.h\[6\], v30.h\[6\] + 2fcc: 6e1a67de mov v30.h\[6\], v30.h\[6\] + 2fd0: 6e1e7421 mov v1.h\[7\], v1.h\[7\] + 2fd4: 6e1e7421 mov v1.h\[7\], v1.h\[7\] + 2fd8: 6e1e7442 mov v2.h\[7\], v2.h\[7\] + 2fdc: 6e1e7442 mov v2.h\[7\], v2.h\[7\] + 2fe0: 6e1e7463 mov v3.h\[7\], v3.h\[7\] + 2fe4: 6e1e7463 mov v3.h\[7\], v3.h\[7\] + 2fe8: 6e1e7484 mov v4.h\[7\], v4.h\[7\] + 2fec: 6e1e7484 mov v4.h\[7\], v4.h\[7\] + 2ff0: 6e1e74a5 mov v5.h\[7\], v5.h\[7\] + 2ff4: 6e1e74a5 mov v5.h\[7\], v5.h\[7\] + 2ff8: 6e1e74c6 mov v6.h\[7\], v6.h\[7\] + 2ffc: 6e1e74c6 mov v6.h\[7\], v6.h\[7\] + 3000: 6e1e74e7 mov v7.h\[7\], v7.h\[7\] + 3004: 6e1e74e7 mov v7.h\[7\], v7.h\[7\] + 3008: 6e1e7508 mov v8.h\[7\], v8.h\[7\] + 300c: 6e1e7508 mov v8.h\[7\], v8.h\[7\] + 3010: 6e1e7529 mov v9.h\[7\], v9.h\[7\] + 3014: 6e1e7529 mov v9.h\[7\], v9.h\[7\] + 3018: 6e1e754a mov v10.h\[7\], v10.h\[7\] + 301c: 6e1e754a mov v10.h\[7\], v10.h\[7\] + 3020: 6e1e756b mov v11.h\[7\], v11.h\[7\] + 3024: 6e1e756b mov v11.h\[7\], v11.h\[7\] + 3028: 6e1e758c mov v12.h\[7\], v12.h\[7\] + 302c: 6e1e758c mov v12.h\[7\], v12.h\[7\] + 3030: 6e1e75ad mov v13.h\[7\], v13.h\[7\] + 3034: 6e1e75ad mov v13.h\[7\], v13.h\[7\] + 3038: 6e1e75ce mov v14.h\[7\], v14.h\[7\] + 303c: 6e1e75ce mov v14.h\[7\], v14.h\[7\] + 3040: 6e1e75ef mov v15.h\[7\], v15.h\[7\] + 3044: 6e1e75ef mov v15.h\[7\], v15.h\[7\] + 3048: 6e1e7610 mov v16.h\[7\], v16.h\[7\] + 304c: 6e1e7610 mov v16.h\[7\], v16.h\[7\] + 3050: 6e1e7631 mov v17.h\[7\], v17.h\[7\] + 3054: 6e1e7631 mov v17.h\[7\], v17.h\[7\] + 3058: 6e1e7652 mov v18.h\[7\], v18.h\[7\] + 305c: 6e1e7652 mov v18.h\[7\], v18.h\[7\] + 3060: 6e1e7673 mov v19.h\[7\], v19.h\[7\] + 3064: 6e1e7673 mov v19.h\[7\], v19.h\[7\] + 3068: 6e1e7694 mov v20.h\[7\], v20.h\[7\] + 306c: 6e1e7694 mov v20.h\[7\], v20.h\[7\] + 3070: 6e1e76b5 mov v21.h\[7\], v21.h\[7\] + 3074: 6e1e76b5 mov v21.h\[7\], v21.h\[7\] + 3078: 6e1e76d6 mov v22.h\[7\], v22.h\[7\] + 307c: 6e1e76d6 mov v22.h\[7\], v22.h\[7\] + 3080: 6e1e76f7 mov v23.h\[7\], v23.h\[7\] + 3084: 6e1e76f7 mov v23.h\[7\], v23.h\[7\] + 3088: 6e1e7718 mov v24.h\[7\], v24.h\[7\] + 308c: 6e1e7718 mov v24.h\[7\], v24.h\[7\] + 3090: 6e1e7739 mov v25.h\[7\], v25.h\[7\] + 3094: 6e1e7739 mov v25.h\[7\], v25.h\[7\] + 3098: 6e1e775a mov v26.h\[7\], v26.h\[7\] + 309c: 6e1e775a mov v26.h\[7\], v26.h\[7\] + 30a0: 6e1e777b mov v27.h\[7\], v27.h\[7\] + 30a4: 6e1e777b mov v27.h\[7\], v27.h\[7\] + 30a8: 6e1e779c mov v28.h\[7\], v28.h\[7\] + 30ac: 6e1e779c mov v28.h\[7\], v28.h\[7\] + 30b0: 6e1e77bd mov v29.h\[7\], v29.h\[7\] + 30b4: 6e1e77bd mov v29.h\[7\], v29.h\[7\] + 30b8: 6e1e77de mov v30.h\[7\], v30.h\[7\] + 30bc: 6e1e77de mov v30.h\[7\], v30.h\[7\] + 30c0: 6e040421 mov v1.s\[0\], v1.s\[0\] + 30c4: 6e040421 mov v1.s\[0\], v1.s\[0\] + 30c8: 6e040442 mov v2.s\[0\], v2.s\[0\] + 30cc: 6e040442 mov v2.s\[0\], v2.s\[0\] + 30d0: 6e040463 mov v3.s\[0\], v3.s\[0\] + 30d4: 6e040463 mov v3.s\[0\], v3.s\[0\] + 30d8: 6e040484 mov v4.s\[0\], v4.s\[0\] + 30dc: 6e040484 mov v4.s\[0\], v4.s\[0\] + 30e0: 6e0404a5 mov v5.s\[0\], v5.s\[0\] + 30e4: 6e0404a5 mov v5.s\[0\], v5.s\[0\] + 30e8: 6e0404c6 mov v6.s\[0\], v6.s\[0\] + 30ec: 6e0404c6 mov v6.s\[0\], v6.s\[0\] + 30f0: 6e0404e7 mov v7.s\[0\], v7.s\[0\] + 30f4: 6e0404e7 mov v7.s\[0\], v7.s\[0\] + 30f8: 6e040508 mov v8.s\[0\], v8.s\[0\] + 30fc: 6e040508 mov v8.s\[0\], v8.s\[0\] + 3100: 6e040529 mov v9.s\[0\], v9.s\[0\] + 3104: 6e040529 mov v9.s\[0\], v9.s\[0\] + 3108: 6e04054a mov v10.s\[0\], v10.s\[0\] + 310c: 6e04054a mov v10.s\[0\], v10.s\[0\] + 3110: 6e04056b mov v11.s\[0\], v11.s\[0\] + 3114: 6e04056b mov v11.s\[0\], v11.s\[0\] + 3118: 6e04058c mov v12.s\[0\], v12.s\[0\] + 311c: 6e04058c mov v12.s\[0\], v12.s\[0\] + 3120: 6e0405ad mov v13.s\[0\], v13.s\[0\] + 3124: 6e0405ad mov v13.s\[0\], v13.s\[0\] + 3128: 6e0405ce mov v14.s\[0\], v14.s\[0\] + 312c: 6e0405ce mov v14.s\[0\], v14.s\[0\] + 3130: 6e0405ef mov v15.s\[0\], v15.s\[0\] + 3134: 6e0405ef mov v15.s\[0\], v15.s\[0\] + 3138: 6e040610 mov v16.s\[0\], v16.s\[0\] + 313c: 6e040610 mov v16.s\[0\], v16.s\[0\] + 3140: 6e040631 mov v17.s\[0\], v17.s\[0\] + 3144: 6e040631 mov v17.s\[0\], v17.s\[0\] + 3148: 6e040652 mov v18.s\[0\], v18.s\[0\] + 314c: 6e040652 mov v18.s\[0\], v18.s\[0\] + 3150: 6e040673 mov v19.s\[0\], v19.s\[0\] + 3154: 6e040673 mov v19.s\[0\], v19.s\[0\] + 3158: 6e040694 mov v20.s\[0\], v20.s\[0\] + 315c: 6e040694 mov v20.s\[0\], v20.s\[0\] + 3160: 6e0406b5 mov v21.s\[0\], v21.s\[0\] + 3164: 6e0406b5 mov v21.s\[0\], v21.s\[0\] + 3168: 6e0406d6 mov v22.s\[0\], v22.s\[0\] + 316c: 6e0406d6 mov v22.s\[0\], v22.s\[0\] + 3170: 6e0406f7 mov v23.s\[0\], v23.s\[0\] + 3174: 6e0406f7 mov v23.s\[0\], v23.s\[0\] + 3178: 6e040718 mov v24.s\[0\], v24.s\[0\] + 317c: 6e040718 mov v24.s\[0\], v24.s\[0\] + 3180: 6e040739 mov v25.s\[0\], v25.s\[0\] + 3184: 6e040739 mov v25.s\[0\], v25.s\[0\] + 3188: 6e04075a mov v26.s\[0\], v26.s\[0\] + 318c: 6e04075a mov v26.s\[0\], v26.s\[0\] + 3190: 6e04077b mov v27.s\[0\], v27.s\[0\] + 3194: 6e04077b mov v27.s\[0\], v27.s\[0\] + 3198: 6e04079c mov v28.s\[0\], v28.s\[0\] + 319c: 6e04079c mov v28.s\[0\], v28.s\[0\] + 31a0: 6e0407bd mov v29.s\[0\], v29.s\[0\] + 31a4: 6e0407bd mov v29.s\[0\], v29.s\[0\] + 31a8: 6e0407de mov v30.s\[0\], v30.s\[0\] + 31ac: 6e0407de mov v30.s\[0\], v30.s\[0\] + 31b0: 6e0c2421 mov v1.s\[1\], v1.s\[1\] + 31b4: 6e0c2421 mov v1.s\[1\], v1.s\[1\] + 31b8: 6e0c2442 mov v2.s\[1\], v2.s\[1\] + 31bc: 6e0c2442 mov v2.s\[1\], v2.s\[1\] + 31c0: 6e0c2463 mov v3.s\[1\], v3.s\[1\] + 31c4: 6e0c2463 mov v3.s\[1\], v3.s\[1\] + 31c8: 6e0c2484 mov v4.s\[1\], v4.s\[1\] + 31cc: 6e0c2484 mov v4.s\[1\], v4.s\[1\] + 31d0: 6e0c24a5 mov v5.s\[1\], v5.s\[1\] + 31d4: 6e0c24a5 mov v5.s\[1\], v5.s\[1\] + 31d8: 6e0c24c6 mov v6.s\[1\], v6.s\[1\] + 31dc: 6e0c24c6 mov v6.s\[1\], v6.s\[1\] + 31e0: 6e0c24e7 mov v7.s\[1\], v7.s\[1\] + 31e4: 6e0c24e7 mov v7.s\[1\], v7.s\[1\] + 31e8: 6e0c2508 mov v8.s\[1\], v8.s\[1\] + 31ec: 6e0c2508 mov v8.s\[1\], v8.s\[1\] + 31f0: 6e0c2529 mov v9.s\[1\], v9.s\[1\] + 31f4: 6e0c2529 mov v9.s\[1\], v9.s\[1\] + 31f8: 6e0c254a mov v10.s\[1\], v10.s\[1\] + 31fc: 6e0c254a mov v10.s\[1\], v10.s\[1\] + 3200: 6e0c256b mov v11.s\[1\], v11.s\[1\] + 3204: 6e0c256b mov v11.s\[1\], v11.s\[1\] + 3208: 6e0c258c mov v12.s\[1\], v12.s\[1\] + 320c: 6e0c258c mov v12.s\[1\], v12.s\[1\] + 3210: 6e0c25ad mov v13.s\[1\], v13.s\[1\] + 3214: 6e0c25ad mov v13.s\[1\], v13.s\[1\] + 3218: 6e0c25ce mov v14.s\[1\], v14.s\[1\] + 321c: 6e0c25ce mov v14.s\[1\], v14.s\[1\] + 3220: 6e0c25ef mov v15.s\[1\], v15.s\[1\] + 3224: 6e0c25ef mov v15.s\[1\], v15.s\[1\] + 3228: 6e0c2610 mov v16.s\[1\], v16.s\[1\] + 322c: 6e0c2610 mov v16.s\[1\], v16.s\[1\] + 3230: 6e0c2631 mov v17.s\[1\], v17.s\[1\] + 3234: 6e0c2631 mov v17.s\[1\], v17.s\[1\] + 3238: 6e0c2652 mov v18.s\[1\], v18.s\[1\] + 323c: 6e0c2652 mov v18.s\[1\], v18.s\[1\] + 3240: 6e0c2673 mov v19.s\[1\], v19.s\[1\] + 3244: 6e0c2673 mov v19.s\[1\], v19.s\[1\] + 3248: 6e0c2694 mov v20.s\[1\], v20.s\[1\] + 324c: 6e0c2694 mov v20.s\[1\], v20.s\[1\] + 3250: 6e0c26b5 mov v21.s\[1\], v21.s\[1\] + 3254: 6e0c26b5 mov v21.s\[1\], v21.s\[1\] + 3258: 6e0c26d6 mov v22.s\[1\], v22.s\[1\] + 325c: 6e0c26d6 mov v22.s\[1\], v22.s\[1\] + 3260: 6e0c26f7 mov v23.s\[1\], v23.s\[1\] + 3264: 6e0c26f7 mov v23.s\[1\], v23.s\[1\] + 3268: 6e0c2718 mov v24.s\[1\], v24.s\[1\] + 326c: 6e0c2718 mov v24.s\[1\], v24.s\[1\] + 3270: 6e0c2739 mov v25.s\[1\], v25.s\[1\] + 3274: 6e0c2739 mov v25.s\[1\], v25.s\[1\] + 3278: 6e0c275a mov v26.s\[1\], v26.s\[1\] + 327c: 6e0c275a mov v26.s\[1\], v26.s\[1\] + 3280: 6e0c277b mov v27.s\[1\], v27.s\[1\] + 3284: 6e0c277b mov v27.s\[1\], v27.s\[1\] + 3288: 6e0c279c mov v28.s\[1\], v28.s\[1\] + 328c: 6e0c279c mov v28.s\[1\], v28.s\[1\] + 3290: 6e0c27bd mov v29.s\[1\], v29.s\[1\] + 3294: 6e0c27bd mov v29.s\[1\], v29.s\[1\] + 3298: 6e0c27de mov v30.s\[1\], v30.s\[1\] + 329c: 6e0c27de mov v30.s\[1\], v30.s\[1\] + 32a0: 6e144421 mov v1.s\[2\], v1.s\[2\] + 32a4: 6e144421 mov v1.s\[2\], v1.s\[2\] + 32a8: 6e144442 mov v2.s\[2\], v2.s\[2\] + 32ac: 6e144442 mov v2.s\[2\], v2.s\[2\] + 32b0: 6e144463 mov v3.s\[2\], v3.s\[2\] + 32b4: 6e144463 mov v3.s\[2\], v3.s\[2\] + 32b8: 6e144484 mov v4.s\[2\], v4.s\[2\] + 32bc: 6e144484 mov v4.s\[2\], v4.s\[2\] + 32c0: 6e1444a5 mov v5.s\[2\], v5.s\[2\] + 32c4: 6e1444a5 mov v5.s\[2\], v5.s\[2\] + 32c8: 6e1444c6 mov v6.s\[2\], v6.s\[2\] + 32cc: 6e1444c6 mov v6.s\[2\], v6.s\[2\] + 32d0: 6e1444e7 mov v7.s\[2\], v7.s\[2\] + 32d4: 6e1444e7 mov v7.s\[2\], v7.s\[2\] + 32d8: 6e144508 mov v8.s\[2\], v8.s\[2\] + 32dc: 6e144508 mov v8.s\[2\], v8.s\[2\] + 32e0: 6e144529 mov v9.s\[2\], v9.s\[2\] + 32e4: 6e144529 mov v9.s\[2\], v9.s\[2\] + 32e8: 6e14454a mov v10.s\[2\], v10.s\[2\] + 32ec: 6e14454a mov v10.s\[2\], v10.s\[2\] + 32f0: 6e14456b mov v11.s\[2\], v11.s\[2\] + 32f4: 6e14456b mov v11.s\[2\], v11.s\[2\] + 32f8: 6e14458c mov v12.s\[2\], v12.s\[2\] + 32fc: 6e14458c mov v12.s\[2\], v12.s\[2\] + 3300: 6e1445ad mov v13.s\[2\], v13.s\[2\] + 3304: 6e1445ad mov v13.s\[2\], v13.s\[2\] + 3308: 6e1445ce mov v14.s\[2\], v14.s\[2\] + 330c: 6e1445ce mov v14.s\[2\], v14.s\[2\] + 3310: 6e1445ef mov v15.s\[2\], v15.s\[2\] + 3314: 6e1445ef mov v15.s\[2\], v15.s\[2\] + 3318: 6e144610 mov v16.s\[2\], v16.s\[2\] + 331c: 6e144610 mov v16.s\[2\], v16.s\[2\] + 3320: 6e144631 mov v17.s\[2\], v17.s\[2\] + 3324: 6e144631 mov v17.s\[2\], v17.s\[2\] + 3328: 6e144652 mov v18.s\[2\], v18.s\[2\] + 332c: 6e144652 mov v18.s\[2\], v18.s\[2\] + 3330: 6e144673 mov v19.s\[2\], v19.s\[2\] + 3334: 6e144673 mov v19.s\[2\], v19.s\[2\] + 3338: 6e144694 mov v20.s\[2\], v20.s\[2\] + 333c: 6e144694 mov v20.s\[2\], v20.s\[2\] + 3340: 6e1446b5 mov v21.s\[2\], v21.s\[2\] + 3344: 6e1446b5 mov v21.s\[2\], v21.s\[2\] + 3348: 6e1446d6 mov v22.s\[2\], v22.s\[2\] + 334c: 6e1446d6 mov v22.s\[2\], v22.s\[2\] + 3350: 6e1446f7 mov v23.s\[2\], v23.s\[2\] + 3354: 6e1446f7 mov v23.s\[2\], v23.s\[2\] + 3358: 6e144718 mov v24.s\[2\], v24.s\[2\] + 335c: 6e144718 mov v24.s\[2\], v24.s\[2\] + 3360: 6e144739 mov v25.s\[2\], v25.s\[2\] + 3364: 6e144739 mov v25.s\[2\], v25.s\[2\] + 3368: 6e14475a mov v26.s\[2\], v26.s\[2\] + 336c: 6e14475a mov v26.s\[2\], v26.s\[2\] + 3370: 6e14477b mov v27.s\[2\], v27.s\[2\] + 3374: 6e14477b mov v27.s\[2\], v27.s\[2\] + 3378: 6e14479c mov v28.s\[2\], v28.s\[2\] + 337c: 6e14479c mov v28.s\[2\], v28.s\[2\] + 3380: 6e1447bd mov v29.s\[2\], v29.s\[2\] + 3384: 6e1447bd mov v29.s\[2\], v29.s\[2\] + 3388: 6e1447de mov v30.s\[2\], v30.s\[2\] + 338c: 6e1447de mov v30.s\[2\], v30.s\[2\] + 3390: 6e1c6421 mov v1.s\[3\], v1.s\[3\] + 3394: 6e1c6421 mov v1.s\[3\], v1.s\[3\] + 3398: 6e1c6442 mov v2.s\[3\], v2.s\[3\] + 339c: 6e1c6442 mov v2.s\[3\], v2.s\[3\] + 33a0: 6e1c6463 mov v3.s\[3\], v3.s\[3\] + 33a4: 6e1c6463 mov v3.s\[3\], v3.s\[3\] + 33a8: 6e1c6484 mov v4.s\[3\], v4.s\[3\] + 33ac: 6e1c6484 mov v4.s\[3\], v4.s\[3\] + 33b0: 6e1c64a5 mov v5.s\[3\], v5.s\[3\] + 33b4: 6e1c64a5 mov v5.s\[3\], v5.s\[3\] + 33b8: 6e1c64c6 mov v6.s\[3\], v6.s\[3\] + 33bc: 6e1c64c6 mov v6.s\[3\], v6.s\[3\] + 33c0: 6e1c64e7 mov v7.s\[3\], v7.s\[3\] + 33c4: 6e1c64e7 mov v7.s\[3\], v7.s\[3\] + 33c8: 6e1c6508 mov v8.s\[3\], v8.s\[3\] + 33cc: 6e1c6508 mov v8.s\[3\], v8.s\[3\] + 33d0: 6e1c6529 mov v9.s\[3\], v9.s\[3\] + 33d4: 6e1c6529 mov v9.s\[3\], v9.s\[3\] + 33d8: 6e1c654a mov v10.s\[3\], v10.s\[3\] + 33dc: 6e1c654a mov v10.s\[3\], v10.s\[3\] + 33e0: 6e1c656b mov v11.s\[3\], v11.s\[3\] + 33e4: 6e1c656b mov v11.s\[3\], v11.s\[3\] + 33e8: 6e1c658c mov v12.s\[3\], v12.s\[3\] + 33ec: 6e1c658c mov v12.s\[3\], v12.s\[3\] + 33f0: 6e1c65ad mov v13.s\[3\], v13.s\[3\] + 33f4: 6e1c65ad mov v13.s\[3\], v13.s\[3\] + 33f8: 6e1c65ce mov v14.s\[3\], v14.s\[3\] + 33fc: 6e1c65ce mov v14.s\[3\], v14.s\[3\] + 3400: 6e1c65ef mov v15.s\[3\], v15.s\[3\] + 3404: 6e1c65ef mov v15.s\[3\], v15.s\[3\] + 3408: 6e1c6610 mov v16.s\[3\], v16.s\[3\] + 340c: 6e1c6610 mov v16.s\[3\], v16.s\[3\] + 3410: 6e1c6631 mov v17.s\[3\], v17.s\[3\] + 3414: 6e1c6631 mov v17.s\[3\], v17.s\[3\] + 3418: 6e1c6652 mov v18.s\[3\], v18.s\[3\] + 341c: 6e1c6652 mov v18.s\[3\], v18.s\[3\] + 3420: 6e1c6673 mov v19.s\[3\], v19.s\[3\] + 3424: 6e1c6673 mov v19.s\[3\], v19.s\[3\] + 3428: 6e1c6694 mov v20.s\[3\], v20.s\[3\] + 342c: 6e1c6694 mov v20.s\[3\], v20.s\[3\] + 3430: 6e1c66b5 mov v21.s\[3\], v21.s\[3\] + 3434: 6e1c66b5 mov v21.s\[3\], v21.s\[3\] + 3438: 6e1c66d6 mov v22.s\[3\], v22.s\[3\] + 343c: 6e1c66d6 mov v22.s\[3\], v22.s\[3\] + 3440: 6e1c66f7 mov v23.s\[3\], v23.s\[3\] + 3444: 6e1c66f7 mov v23.s\[3\], v23.s\[3\] + 3448: 6e1c6718 mov v24.s\[3\], v24.s\[3\] + 344c: 6e1c6718 mov v24.s\[3\], v24.s\[3\] + 3450: 6e1c6739 mov v25.s\[3\], v25.s\[3\] + 3454: 6e1c6739 mov v25.s\[3\], v25.s\[3\] + 3458: 6e1c675a mov v26.s\[3\], v26.s\[3\] + 345c: 6e1c675a mov v26.s\[3\], v26.s\[3\] + 3460: 6e1c677b mov v27.s\[3\], v27.s\[3\] + 3464: 6e1c677b mov v27.s\[3\], v27.s\[3\] + 3468: 6e1c679c mov v28.s\[3\], v28.s\[3\] + 346c: 6e1c679c mov v28.s\[3\], v28.s\[3\] + 3470: 6e1c67bd mov v29.s\[3\], v29.s\[3\] + 3474: 6e1c67bd mov v29.s\[3\], v29.s\[3\] + 3478: 6e1c67de mov v30.s\[3\], v30.s\[3\] + 347c: 6e1c67de mov v30.s\[3\], v30.s\[3\] + 3480: 4e081c21 mov v1.d\[0\], x1 + 3484: 4e081c21 mov v1.d\[0\], x1 + 3488: 4e181c21 mov v1.d\[1\], x1 + 348c: 4e181c21 mov v1.d\[1\], x1 + 3490: 6e084421 mov v1.d\[0\], v1.d\[1\] + 3494: 6e084421 mov v1.d\[0\], v1.d\[1\] + 3498: 6e180421 mov v1.d\[1\], v1.d\[0\] + 349c: 6e180421 mov v1.d\[1\], v1.d\[0\] + 34a0: 4e081c42 mov v2.d\[0\], x2 + 34a4: 4e081c42 mov v2.d\[0\], x2 + 34a8: 4e181c42 mov v2.d\[1\], x2 + 34ac: 4e181c42 mov v2.d\[1\], x2 + 34b0: 6e084442 mov v2.d\[0\], v2.d\[1\] + 34b4: 6e084442 mov v2.d\[0\], v2.d\[1\] + 34b8: 6e180442 mov v2.d\[1\], v2.d\[0\] + 34bc: 6e180442 mov v2.d\[1\], v2.d\[0\] + 34c0: 4e081c63 mov v3.d\[0\], x3 + 34c4: 4e081c63 mov v3.d\[0\], x3 + 34c8: 4e181c63 mov v3.d\[1\], x3 + 34cc: 4e181c63 mov v3.d\[1\], x3 + 34d0: 6e084463 mov v3.d\[0\], v3.d\[1\] + 34d4: 6e084463 mov v3.d\[0\], v3.d\[1\] + 34d8: 6e180463 mov v3.d\[1\], v3.d\[0\] + 34dc: 6e180463 mov v3.d\[1\], v3.d\[0\] + 34e0: 4e081c84 mov v4.d\[0\], x4 + 34e4: 4e081c84 mov v4.d\[0\], x4 + 34e8: 4e181c84 mov v4.d\[1\], x4 + 34ec: 4e181c84 mov v4.d\[1\], x4 + 34f0: 6e084484 mov v4.d\[0\], v4.d\[1\] + 34f4: 6e084484 mov v4.d\[0\], v4.d\[1\] + 34f8: 6e180484 mov v4.d\[1\], v4.d\[0\] + 34fc: 6e180484 mov v4.d\[1\], v4.d\[0\] + 3500: 4e081ca5 mov v5.d\[0\], x5 + 3504: 4e081ca5 mov v5.d\[0\], x5 + 3508: 4e181ca5 mov v5.d\[1\], x5 + 350c: 4e181ca5 mov v5.d\[1\], x5 + 3510: 6e0844a5 mov v5.d\[0\], v5.d\[1\] + 3514: 6e0844a5 mov v5.d\[0\], v5.d\[1\] + 3518: 6e1804a5 mov v5.d\[1\], v5.d\[0\] + 351c: 6e1804a5 mov v5.d\[1\], v5.d\[0\] + 3520: 4e081cc6 mov v6.d\[0\], x6 + 3524: 4e081cc6 mov v6.d\[0\], x6 + 3528: 4e181cc6 mov v6.d\[1\], x6 + 352c: 4e181cc6 mov v6.d\[1\], x6 + 3530: 6e0844c6 mov v6.d\[0\], v6.d\[1\] + 3534: 6e0844c6 mov v6.d\[0\], v6.d\[1\] + 3538: 6e1804c6 mov v6.d\[1\], v6.d\[0\] + 353c: 6e1804c6 mov v6.d\[1\], v6.d\[0\] + 3540: 4e081ce7 mov v7.d\[0\], x7 + 3544: 4e081ce7 mov v7.d\[0\], x7 + 3548: 4e181ce7 mov v7.d\[1\], x7 + 354c: 4e181ce7 mov v7.d\[1\], x7 + 3550: 6e0844e7 mov v7.d\[0\], v7.d\[1\] + 3554: 6e0844e7 mov v7.d\[0\], v7.d\[1\] + 3558: 6e1804e7 mov v7.d\[1\], v7.d\[0\] + 355c: 6e1804e7 mov v7.d\[1\], v7.d\[0\] + 3560: 4e081d08 mov v8.d\[0\], x8 + 3564: 4e081d08 mov v8.d\[0\], x8 + 3568: 4e181d08 mov v8.d\[1\], x8 + 356c: 4e181d08 mov v8.d\[1\], x8 + 3570: 6e084508 mov v8.d\[0\], v8.d\[1\] + 3574: 6e084508 mov v8.d\[0\], v8.d\[1\] + 3578: 6e180508 mov v8.d\[1\], v8.d\[0\] + 357c: 6e180508 mov v8.d\[1\], v8.d\[0\] + 3580: 4e081d29 mov v9.d\[0\], x9 + 3584: 4e081d29 mov v9.d\[0\], x9 + 3588: 4e181d29 mov v9.d\[1\], x9 + 358c: 4e181d29 mov v9.d\[1\], x9 + 3590: 6e084529 mov v9.d\[0\], v9.d\[1\] + 3594: 6e084529 mov v9.d\[0\], v9.d\[1\] + 3598: 6e180529 mov v9.d\[1\], v9.d\[0\] + 359c: 6e180529 mov v9.d\[1\], v9.d\[0\] + 35a0: 4e081d4a mov v10.d\[0\], x10 + 35a4: 4e081d4a mov v10.d\[0\], x10 + 35a8: 4e181d4a mov v10.d\[1\], x10 + 35ac: 4e181d4a mov v10.d\[1\], x10 + 35b0: 6e08454a mov v10.d\[0\], v10.d\[1\] + 35b4: 6e08454a mov v10.d\[0\], v10.d\[1\] + 35b8: 6e18054a mov v10.d\[1\], v10.d\[0\] + 35bc: 6e18054a mov v10.d\[1\], v10.d\[0\] + 35c0: 4e081d6b mov v11.d\[0\], x11 + 35c4: 4e081d6b mov v11.d\[0\], x11 + 35c8: 4e181d6b mov v11.d\[1\], x11 + 35cc: 4e181d6b mov v11.d\[1\], x11 + 35d0: 6e08456b mov v11.d\[0\], v11.d\[1\] + 35d4: 6e08456b mov v11.d\[0\], v11.d\[1\] + 35d8: 6e18056b mov v11.d\[1\], v11.d\[0\] + 35dc: 6e18056b mov v11.d\[1\], v11.d\[0\] + 35e0: 4e081d8c mov v12.d\[0\], x12 + 35e4: 4e081d8c mov v12.d\[0\], x12 + 35e8: 4e181d8c mov v12.d\[1\], x12 + 35ec: 4e181d8c mov v12.d\[1\], x12 + 35f0: 6e08458c mov v12.d\[0\], v12.d\[1\] + 35f4: 6e08458c mov v12.d\[0\], v12.d\[1\] + 35f8: 6e18058c mov v12.d\[1\], v12.d\[0\] + 35fc: 6e18058c mov v12.d\[1\], v12.d\[0\] + 3600: 4e081dad mov v13.d\[0\], x13 + 3604: 4e081dad mov v13.d\[0\], x13 + 3608: 4e181dad mov v13.d\[1\], x13 + 360c: 4e181dad mov v13.d\[1\], x13 + 3610: 6e0845ad mov v13.d\[0\], v13.d\[1\] + 3614: 6e0845ad mov v13.d\[0\], v13.d\[1\] + 3618: 6e1805ad mov v13.d\[1\], v13.d\[0\] + 361c: 6e1805ad mov v13.d\[1\], v13.d\[0\] + 3620: 4e081dce mov v14.d\[0\], x14 + 3624: 4e081dce mov v14.d\[0\], x14 + 3628: 4e181dce mov v14.d\[1\], x14 + 362c: 4e181dce mov v14.d\[1\], x14 + 3630: 6e0845ce mov v14.d\[0\], v14.d\[1\] + 3634: 6e0845ce mov v14.d\[0\], v14.d\[1\] + 3638: 6e1805ce mov v14.d\[1\], v14.d\[0\] + 363c: 6e1805ce mov v14.d\[1\], v14.d\[0\] + 3640: 4e081def mov v15.d\[0\], x15 + 3644: 4e081def mov v15.d\[0\], x15 + 3648: 4e181def mov v15.d\[1\], x15 + 364c: 4e181def mov v15.d\[1\], x15 + 3650: 6e0845ef mov v15.d\[0\], v15.d\[1\] + 3654: 6e0845ef mov v15.d\[0\], v15.d\[1\] + 3658: 6e1805ef mov v15.d\[1\], v15.d\[0\] + 365c: 6e1805ef mov v15.d\[1\], v15.d\[0\] + 3660: 4e081e10 mov v16.d\[0\], x16 + 3664: 4e081e10 mov v16.d\[0\], x16 + 3668: 4e181e10 mov v16.d\[1\], x16 + 366c: 4e181e10 mov v16.d\[1\], x16 + 3670: 6e084610 mov v16.d\[0\], v16.d\[1\] + 3674: 6e084610 mov v16.d\[0\], v16.d\[1\] + 3678: 6e180610 mov v16.d\[1\], v16.d\[0\] + 367c: 6e180610 mov v16.d\[1\], v16.d\[0\] + 3680: 4e081e31 mov v17.d\[0\], x17 + 3684: 4e081e31 mov v17.d\[0\], x17 + 3688: 4e181e31 mov v17.d\[1\], x17 + 368c: 4e181e31 mov v17.d\[1\], x17 + 3690: 6e084631 mov v17.d\[0\], v17.d\[1\] + 3694: 6e084631 mov v17.d\[0\], v17.d\[1\] + 3698: 6e180631 mov v17.d\[1\], v17.d\[0\] + 369c: 6e180631 mov v17.d\[1\], v17.d\[0\] + 36a0: 4e081e52 mov v18.d\[0\], x18 + 36a4: 4e081e52 mov v18.d\[0\], x18 + 36a8: 4e181e52 mov v18.d\[1\], x18 + 36ac: 4e181e52 mov v18.d\[1\], x18 + 36b0: 6e084652 mov v18.d\[0\], v18.d\[1\] + 36b4: 6e084652 mov v18.d\[0\], v18.d\[1\] + 36b8: 6e180652 mov v18.d\[1\], v18.d\[0\] + 36bc: 6e180652 mov v18.d\[1\], v18.d\[0\] + 36c0: 4e081e73 mov v19.d\[0\], x19 + 36c4: 4e081e73 mov v19.d\[0\], x19 + 36c8: 4e181e73 mov v19.d\[1\], x19 + 36cc: 4e181e73 mov v19.d\[1\], x19 + 36d0: 6e084673 mov v19.d\[0\], v19.d\[1\] + 36d4: 6e084673 mov v19.d\[0\], v19.d\[1\] + 36d8: 6e180673 mov v19.d\[1\], v19.d\[0\] + 36dc: 6e180673 mov v19.d\[1\], v19.d\[0\] + 36e0: 4e081e94 mov v20.d\[0\], x20 + 36e4: 4e081e94 mov v20.d\[0\], x20 + 36e8: 4e181e94 mov v20.d\[1\], x20 + 36ec: 4e181e94 mov v20.d\[1\], x20 + 36f0: 6e084694 mov v20.d\[0\], v20.d\[1\] + 36f4: 6e084694 mov v20.d\[0\], v20.d\[1\] + 36f8: 6e180694 mov v20.d\[1\], v20.d\[0\] + 36fc: 6e180694 mov v20.d\[1\], v20.d\[0\] + 3700: 4e081eb5 mov v21.d\[0\], x21 + 3704: 4e081eb5 mov v21.d\[0\], x21 + 3708: 4e181eb5 mov v21.d\[1\], x21 + 370c: 4e181eb5 mov v21.d\[1\], x21 + 3710: 6e0846b5 mov v21.d\[0\], v21.d\[1\] + 3714: 6e0846b5 mov v21.d\[0\], v21.d\[1\] + 3718: 6e1806b5 mov v21.d\[1\], v21.d\[0\] + 371c: 6e1806b5 mov v21.d\[1\], v21.d\[0\] + 3720: 4e081ed6 mov v22.d\[0\], x22 + 3724: 4e081ed6 mov v22.d\[0\], x22 + 3728: 4e181ed6 mov v22.d\[1\], x22 + 372c: 4e181ed6 mov v22.d\[1\], x22 + 3730: 6e0846d6 mov v22.d\[0\], v22.d\[1\] + 3734: 6e0846d6 mov v22.d\[0\], v22.d\[1\] + 3738: 6e1806d6 mov v22.d\[1\], v22.d\[0\] + 373c: 6e1806d6 mov v22.d\[1\], v22.d\[0\] + 3740: 4e081ef7 mov v23.d\[0\], x23 + 3744: 4e081ef7 mov v23.d\[0\], x23 + 3748: 4e181ef7 mov v23.d\[1\], x23 + 374c: 4e181ef7 mov v23.d\[1\], x23 + 3750: 6e0846f7 mov v23.d\[0\], v23.d\[1\] + 3754: 6e0846f7 mov v23.d\[0\], v23.d\[1\] + 3758: 6e1806f7 mov v23.d\[1\], v23.d\[0\] + 375c: 6e1806f7 mov v23.d\[1\], v23.d\[0\] + 3760: 4e081f18 mov v24.d\[0\], x24 + 3764: 4e081f18 mov v24.d\[0\], x24 + 3768: 4e181f18 mov v24.d\[1\], x24 + 376c: 4e181f18 mov v24.d\[1\], x24 + 3770: 6e084718 mov v24.d\[0\], v24.d\[1\] + 3774: 6e084718 mov v24.d\[0\], v24.d\[1\] + 3778: 6e180718 mov v24.d\[1\], v24.d\[0\] + 377c: 6e180718 mov v24.d\[1\], v24.d\[0\] + 3780: 4e081f39 mov v25.d\[0\], x25 + 3784: 4e081f39 mov v25.d\[0\], x25 + 3788: 4e181f39 mov v25.d\[1\], x25 + 378c: 4e181f39 mov v25.d\[1\], x25 + 3790: 6e084739 mov v25.d\[0\], v25.d\[1\] + 3794: 6e084739 mov v25.d\[0\], v25.d\[1\] + 3798: 6e180739 mov v25.d\[1\], v25.d\[0\] + 379c: 6e180739 mov v25.d\[1\], v25.d\[0\] + 37a0: 4e081f5a mov v26.d\[0\], x26 + 37a4: 4e081f5a mov v26.d\[0\], x26 + 37a8: 4e181f5a mov v26.d\[1\], x26 + 37ac: 4e181f5a mov v26.d\[1\], x26 + 37b0: 6e08475a mov v26.d\[0\], v26.d\[1\] + 37b4: 6e08475a mov v26.d\[0\], v26.d\[1\] + 37b8: 6e18075a mov v26.d\[1\], v26.d\[0\] + 37bc: 6e18075a mov v26.d\[1\], v26.d\[0\] + 37c0: 4e081f7b mov v27.d\[0\], x27 + 37c4: 4e081f7b mov v27.d\[0\], x27 + 37c8: 4e181f7b mov v27.d\[1\], x27 + 37cc: 4e181f7b mov v27.d\[1\], x27 + 37d0: 6e08477b mov v27.d\[0\], v27.d\[1\] + 37d4: 6e08477b mov v27.d\[0\], v27.d\[1\] + 37d8: 6e18077b mov v27.d\[1\], v27.d\[0\] + 37dc: 6e18077b mov v27.d\[1\], v27.d\[0\] + 37e0: 4e081f9c mov v28.d\[0\], x28 + 37e4: 4e081f9c mov v28.d\[0\], x28 + 37e8: 4e181f9c mov v28.d\[1\], x28 + 37ec: 4e181f9c mov v28.d\[1\], x28 + 37f0: 6e08479c mov v28.d\[0\], v28.d\[1\] + 37f4: 6e08479c mov v28.d\[0\], v28.d\[1\] + 37f8: 6e18079c mov v28.d\[1\], v28.d\[0\] + 37fc: 6e18079c mov v28.d\[1\], v28.d\[0\] + 3800: 4e081fbd mov v29.d\[0\], x29 + 3804: 4e081fbd mov v29.d\[0\], x29 + 3808: 4e181fbd mov v29.d\[1\], x29 + 380c: 4e181fbd mov v29.d\[1\], x29 + 3810: 6e0847bd mov v29.d\[0\], v29.d\[1\] + 3814: 6e0847bd mov v29.d\[0\], v29.d\[1\] + 3818: 6e1807bd mov v29.d\[1\], v29.d\[0\] + 381c: 6e1807bd mov v29.d\[1\], v29.d\[0\] + 3820: 4e081fde mov v30.d\[0\], x30 + 3824: 4e081fde mov v30.d\[0\], x30 + 3828: 4e181fde mov v30.d\[1\], x30 + 382c: 4e181fde mov v30.d\[1\], x30 + 3830: 6e0847de mov v30.d\[0\], v30.d\[1\] + 3834: 6e0847de mov v30.d\[0\], v30.d\[1\] + 3838: 6e1807de mov v30.d\[1\], v30.d\[0\] + 383c: 6e1807de mov v30.d\[1\], v30.d\[0\] diff --git a/gas/testsuite/gas/aarch64/neon-ins.s b/gas/testsuite/gas/aarch64/neon-ins.s new file mode 100644 index 0000000..0eac708 --- /dev/null +++ b/gas/testsuite/gas/aarch64/neon-ins.s @@ -0,0 +1,48 @@ + + + .macro iterate_regs_types macro_name reg + .irp index, 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 + .irp regs, 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30 + \macro_name \regs b \index \reg + .endr + .endr + + .irp index, 0,1,2,3,4,5,6,7 + .irp regs, 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30 + \macro_name \regs h \index \reg + .endr + .endr + + .irp index, 0,1,2,3 + .irp regs, 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30 + \macro_name \regs s \index \reg + .endr + .endr + .endm + + .macro ins_mov_main reg_num type index xw_reg + ins v\reg_num\().\type[\index], \xw_reg\reg_num + mov v\reg_num\().\type[\index], \xw_reg\reg_num + .endm + + .macro ins_mov_element reg_num type index null + ins v\reg_num\().\type[\index], v\reg_num\().\type[\index] + mov v\reg_num\().\type[\index], v\reg_num\().\type[\index] + .endm + + .text + iterate_regs_types macro_name=ins_mov_main reg=w + iterate_regs_types macro_name=ins_mov_element + + .irp reg, 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30 + ins v\reg\().d[0], x\reg + mov v\reg\().d[0], x\reg + ins v\reg\().d[1], x\reg + mov v\reg\().d[1], x\reg + + ins v\reg\().d[0], v\reg\().d[1] + mov v\reg\().d[0], v\reg\().d[1] + ins v\reg\().d[1], v\reg\().d[0] + mov v\reg\().d[1], v\reg\().d[0] + .endr + diff --git a/gas/testsuite/gas/aarch64/neon-not.d b/gas/testsuite/gas/aarch64/neon-not.d new file mode 100644 index 0000000..8994234 --- /dev/null +++ b/gas/testsuite/gas/aarch64/neon-not.d @@ -0,0 +1,131 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: 2e205821 mvn v1.8b, v1.8b + 4: 2e205821 mvn v1.8b, v1.8b + 8: 6e205821 mvn v1.16b, v1.16b + c: 6e205821 mvn v1.16b, v1.16b + 10: 2e205842 mvn v2.8b, v2.8b + 14: 2e205842 mvn v2.8b, v2.8b + 18: 6e205842 mvn v2.16b, v2.16b + 1c: 6e205842 mvn v2.16b, v2.16b + 20: 2e205863 mvn v3.8b, v3.8b + 24: 2e205863 mvn v3.8b, v3.8b + 28: 6e205863 mvn v3.16b, v3.16b + 2c: 6e205863 mvn v3.16b, v3.16b + 30: 2e205884 mvn v4.8b, v4.8b + 34: 2e205884 mvn v4.8b, v4.8b + 38: 6e205884 mvn v4.16b, v4.16b + 3c: 6e205884 mvn v4.16b, v4.16b + 40: 2e2058a5 mvn v5.8b, v5.8b + 44: 2e2058a5 mvn v5.8b, v5.8b + 48: 6e2058a5 mvn v5.16b, v5.16b + 4c: 6e2058a5 mvn v5.16b, v5.16b + 50: 2e2058c6 mvn v6.8b, v6.8b + 54: 2e2058c6 mvn v6.8b, v6.8b + 58: 6e2058c6 mvn v6.16b, v6.16b + 5c: 6e2058c6 mvn v6.16b, v6.16b + 60: 2e2058e7 mvn v7.8b, v7.8b + 64: 2e2058e7 mvn v7.8b, v7.8b + 68: 6e2058e7 mvn v7.16b, v7.16b + 6c: 6e2058e7 mvn v7.16b, v7.16b + 70: 2e205908 mvn v8.8b, v8.8b + 74: 2e205908 mvn v8.8b, v8.8b + 78: 6e205908 mvn v8.16b, v8.16b + 7c: 6e205908 mvn v8.16b, v8.16b + 80: 2e205929 mvn v9.8b, v9.8b + 84: 2e205929 mvn v9.8b, v9.8b + 88: 6e205929 mvn v9.16b, v9.16b + 8c: 6e205929 mvn v9.16b, v9.16b + 90: 2e20594a mvn v10.8b, v10.8b + 94: 2e20594a mvn v10.8b, v10.8b + 98: 6e20594a mvn v10.16b, v10.16b + 9c: 6e20594a mvn v10.16b, v10.16b + a0: 2e20596b mvn v11.8b, v11.8b + a4: 2e20596b mvn v11.8b, v11.8b + a8: 6e20596b mvn v11.16b, v11.16b + ac: 6e20596b mvn v11.16b, v11.16b + b0: 2e20598c mvn v12.8b, v12.8b + b4: 2e20598c mvn v12.8b, v12.8b + b8: 6e20598c mvn v12.16b, v12.16b + bc: 6e20598c mvn v12.16b, v12.16b + c0: 2e2059ad mvn v13.8b, v13.8b + c4: 2e2059ad mvn v13.8b, v13.8b + c8: 6e2059ad mvn v13.16b, v13.16b + cc: 6e2059ad mvn v13.16b, v13.16b + d0: 2e2059ce mvn v14.8b, v14.8b + d4: 2e2059ce mvn v14.8b, v14.8b + d8: 6e2059ce mvn v14.16b, v14.16b + dc: 6e2059ce mvn v14.16b, v14.16b + e0: 2e2059ef mvn v15.8b, v15.8b + e4: 2e2059ef mvn v15.8b, v15.8b + e8: 6e2059ef mvn v15.16b, v15.16b + ec: 6e2059ef mvn v15.16b, v15.16b + f0: 2e205a10 mvn v16.8b, v16.8b + f4: 2e205a10 mvn v16.8b, v16.8b + f8: 6e205a10 mvn v16.16b, v16.16b + fc: 6e205a10 mvn v16.16b, v16.16b + 100: 2e205a31 mvn v17.8b, v17.8b + 104: 2e205a31 mvn v17.8b, v17.8b + 108: 6e205a31 mvn v17.16b, v17.16b + 10c: 6e205a31 mvn v17.16b, v17.16b + 110: 2e205a52 mvn v18.8b, v18.8b + 114: 2e205a52 mvn v18.8b, v18.8b + 118: 6e205a52 mvn v18.16b, v18.16b + 11c: 6e205a52 mvn v18.16b, v18.16b + 120: 2e205a73 mvn v19.8b, v19.8b + 124: 2e205a73 mvn v19.8b, v19.8b + 128: 6e205a73 mvn v19.16b, v19.16b + 12c: 6e205a73 mvn v19.16b, v19.16b + 130: 2e205a94 mvn v20.8b, v20.8b + 134: 2e205a94 mvn v20.8b, v20.8b + 138: 6e205a94 mvn v20.16b, v20.16b + 13c: 6e205a94 mvn v20.16b, v20.16b + 140: 2e205ab5 mvn v21.8b, v21.8b + 144: 2e205ab5 mvn v21.8b, v21.8b + 148: 6e205ab5 mvn v21.16b, v21.16b + 14c: 6e205ab5 mvn v21.16b, v21.16b + 150: 2e205ad6 mvn v22.8b, v22.8b + 154: 2e205ad6 mvn v22.8b, v22.8b + 158: 6e205ad6 mvn v22.16b, v22.16b + 15c: 6e205ad6 mvn v22.16b, v22.16b + 160: 2e205af7 mvn v23.8b, v23.8b + 164: 2e205af7 mvn v23.8b, v23.8b + 168: 6e205af7 mvn v23.16b, v23.16b + 16c: 6e205af7 mvn v23.16b, v23.16b + 170: 2e205b18 mvn v24.8b, v24.8b + 174: 2e205b18 mvn v24.8b, v24.8b + 178: 6e205b18 mvn v24.16b, v24.16b + 17c: 6e205b18 mvn v24.16b, v24.16b + 180: 2e205b39 mvn v25.8b, v25.8b + 184: 2e205b39 mvn v25.8b, v25.8b + 188: 6e205b39 mvn v25.16b, v25.16b + 18c: 6e205b39 mvn v25.16b, v25.16b + 190: 2e205b5a mvn v26.8b, v26.8b + 194: 2e205b5a mvn v26.8b, v26.8b + 198: 6e205b5a mvn v26.16b, v26.16b + 19c: 6e205b5a mvn v26.16b, v26.16b + 1a0: 2e205b7b mvn v27.8b, v27.8b + 1a4: 2e205b7b mvn v27.8b, v27.8b + 1a8: 6e205b7b mvn v27.16b, v27.16b + 1ac: 6e205b7b mvn v27.16b, v27.16b + 1b0: 2e205b9c mvn v28.8b, v28.8b + 1b4: 2e205b9c mvn v28.8b, v28.8b + 1b8: 6e205b9c mvn v28.16b, v28.16b + 1bc: 6e205b9c mvn v28.16b, v28.16b + 1c0: 2e205bbd mvn v29.8b, v29.8b + 1c4: 2e205bbd mvn v29.8b, v29.8b + 1c8: 6e205bbd mvn v29.16b, v29.16b + 1cc: 6e205bbd mvn v29.16b, v29.16b + 1d0: 2e205bde mvn v30.8b, v30.8b + 1d4: 2e205bde mvn v30.8b, v30.8b + 1d8: 6e205bde mvn v30.16b, v30.16b + 1dc: 6e205bde mvn v30.16b, v30.16b + 1e0: 2e205bff mvn v31.8b, v31.8b + 1e4: 2e205bff mvn v31.8b, v31.8b + 1e8: 6e205bff mvn v31.16b, v31.16b + 1ec: 6e205bff mvn v31.16b, v31.16b diff --git a/gas/testsuite/gas/aarch64/neon-not.s b/gas/testsuite/gas/aarch64/neon-not.s new file mode 100644 index 0000000..50e62bc --- /dev/null +++ b/gas/testsuite/gas/aarch64/neon-not.s @@ -0,0 +1,13 @@ + + + .text + .arch armv8 + + .irp r, 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31 + not v\r\().8b, v\r\().8b + mvn v\r\().8b, v\r\().8b + + not v\r\().16b, v\r\().16b + mvn v\r\().16b, v\r\().16b + .endr + diff --git a/gas/testsuite/gas/aarch64/neon-vfp-reglist-post.d b/gas/testsuite/gas/aarch64/neon-vfp-reglist-post.d new file mode 100644 index 0000000..ba056f4 --- /dev/null +++ b/gas/testsuite/gas/aarch64/neon-vfp-reglist-post.d @@ -0,0 +1,347 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: 0cdf7000 ld1 {v0.8b}, \[x0\], #8 + 4: 0cdfa000 ld1 {v0.8b, v1.8b}, \[x0\], #16 + 8: 0cdf6000 ld1 {v0.8b-v2.8b}, \[x0\], #24 + c: 0cdf2000 ld1 {v0.8b-v3.8b}, \[x0\], #32 + 10: 0cdf7400 ld1 {v0.4h}, \[x0\], #8 + 14: 0cdfa400 ld1 {v0.4h, v1.4h}, \[x0\], #16 + 18: 0cdf6400 ld1 {v0.4h-v2.4h}, \[x0\], #24 + 1c: 0cdf2400 ld1 {v0.4h-v3.4h}, \[x0\], #32 + 20: 0cdf7800 ld1 {v0.2s}, \[x0\], #8 + 24: 0cdfa800 ld1 {v0.2s, v1.2s}, \[x0\], #16 + 28: 0cdf6800 ld1 {v0.2s-v2.2s}, \[x0\], #24 + 2c: 0cdf2800 ld1 {v0.2s-v3.2s}, \[x0\], #32 + 30: 0cdf7c00 ld1 {v0.1d}, \[x0\], #8 + 34: 0cdfac00 ld1 {v0.1d, v1.1d}, \[x0\], #16 + 38: 0cdf6c00 ld1 {v0.1d-v2.1d}, \[x0\], #24 + 3c: 0cdf2c00 ld1 {v0.1d-v3.1d}, \[x0\], #32 + 40: 0c9f7000 st1 {v0.8b}, \[x0\], #8 + 44: 0c9fa000 st1 {v0.8b, v1.8b}, \[x0\], #16 + 48: 0c9f6000 st1 {v0.8b-v2.8b}, \[x0\], #24 + 4c: 0c9f2000 st1 {v0.8b-v3.8b}, \[x0\], #32 + 50: 0c9f7400 st1 {v0.4h}, \[x0\], #8 + 54: 0c9fa400 st1 {v0.4h, v1.4h}, \[x0\], #16 + 58: 0c9f6400 st1 {v0.4h-v2.4h}, \[x0\], #24 + 5c: 0c9f2400 st1 {v0.4h-v3.4h}, \[x0\], #32 + 60: 0c9f7800 st1 {v0.2s}, \[x0\], #8 + 64: 0c9fa800 st1 {v0.2s, v1.2s}, \[x0\], #16 + 68: 0c9f6800 st1 {v0.2s-v2.2s}, \[x0\], #24 + 6c: 0c9f2800 st1 {v0.2s-v3.2s}, \[x0\], #32 + 70: 0c9f7c00 st1 {v0.1d}, \[x0\], #8 + 74: 0c9fac00 st1 {v0.1d, v1.1d}, \[x0\], #16 + 78: 0c9f6c00 st1 {v0.1d-v2.1d}, \[x0\], #24 + 7c: 0c9f2c00 st1 {v0.1d-v3.1d}, \[x0\], #32 + 80: 4cdf7000 ld1 {v0.16b}, \[x0\], #16 + 84: 4cdfa000 ld1 {v0.16b, v1.16b}, \[x0\], #32 + 88: 4cdf6000 ld1 {v0.16b-v2.16b}, \[x0\], #48 + 8c: 4cdf2000 ld1 {v0.16b-v3.16b}, \[x0\], #64 + 90: 4cdf7400 ld1 {v0.8h}, \[x0\], #16 + 94: 4cdfa400 ld1 {v0.8h, v1.8h}, \[x0\], #32 + 98: 4cdf6400 ld1 {v0.8h-v2.8h}, \[x0\], #48 + 9c: 4cdf2400 ld1 {v0.8h-v3.8h}, \[x0\], #64 + a0: 4cdf7800 ld1 {v0.4s}, \[x0\], #16 + a4: 4cdfa800 ld1 {v0.4s, v1.4s}, \[x0\], #32 + a8: 4cdf6800 ld1 {v0.4s-v2.4s}, \[x0\], #48 + ac: 4cdf2800 ld1 {v0.4s-v3.4s}, \[x0\], #64 + b0: 4cdf7c00 ld1 {v0.2d}, \[x0\], #16 + b4: 4cdfac00 ld1 {v0.2d, v1.2d}, \[x0\], #32 + b8: 4cdf6c00 ld1 {v0.2d-v2.2d}, \[x0\], #48 + bc: 4cdf2c00 ld1 {v0.2d-v3.2d}, \[x0\], #64 + c0: 4c9f7000 st1 {v0.16b}, \[x0\], #16 + c4: 4c9fa000 st1 {v0.16b, v1.16b}, \[x0\], #32 + c8: 4c9f6000 st1 {v0.16b-v2.16b}, \[x0\], #48 + cc: 4c9f2000 st1 {v0.16b-v3.16b}, \[x0\], #64 + d0: 4c9f7400 st1 {v0.8h}, \[x0\], #16 + d4: 4c9fa400 st1 {v0.8h, v1.8h}, \[x0\], #32 + d8: 4c9f6400 st1 {v0.8h-v2.8h}, \[x0\], #48 + dc: 4c9f2400 st1 {v0.8h-v3.8h}, \[x0\], #64 + e0: 4c9f7800 st1 {v0.4s}, \[x0\], #16 + e4: 4c9fa800 st1 {v0.4s, v1.4s}, \[x0\], #32 + e8: 4c9f6800 st1 {v0.4s-v2.4s}, \[x0\], #48 + ec: 4c9f2800 st1 {v0.4s-v3.4s}, \[x0\], #64 + f0: 4c9f7c00 st1 {v0.2d}, \[x0\], #16 + f4: 4c9fac00 st1 {v0.2d, v1.2d}, \[x0\], #32 + f8: 4c9f6c00 st1 {v0.2d-v2.2d}, \[x0\], #48 + fc: 4c9f2c00 st1 {v0.2d-v3.2d}, \[x0\], #64 + 100: 0cc77000 ld1 {v0.8b}, \[x0\], x7 + 104: 0cc7a000 ld1 {v0.8b, v1.8b}, \[x0\], x7 + 108: 0cc76000 ld1 {v0.8b-v2.8b}, \[x0\], x7 + 10c: 0cc72000 ld1 {v0.8b-v3.8b}, \[x0\], x7 + 110: 0cc77400 ld1 {v0.4h}, \[x0\], x7 + 114: 0cc7a400 ld1 {v0.4h, v1.4h}, \[x0\], x7 + 118: 0cc76400 ld1 {v0.4h-v2.4h}, \[x0\], x7 + 11c: 0cc72400 ld1 {v0.4h-v3.4h}, \[x0\], x7 + 120: 0cc77800 ld1 {v0.2s}, \[x0\], x7 + 124: 0cc7a800 ld1 {v0.2s, v1.2s}, \[x0\], x7 + 128: 0cc76800 ld1 {v0.2s-v2.2s}, \[x0\], x7 + 12c: 0cc72800 ld1 {v0.2s-v3.2s}, \[x0\], x7 + 130: 0cc77c00 ld1 {v0.1d}, \[x0\], x7 + 134: 0cc7ac00 ld1 {v0.1d, v1.1d}, \[x0\], x7 + 138: 0cc76c00 ld1 {v0.1d-v2.1d}, \[x0\], x7 + 13c: 0cc72c00 ld1 {v0.1d-v3.1d}, \[x0\], x7 + 140: 4cc77000 ld1 {v0.16b}, \[x0\], x7 + 144: 4cc7a000 ld1 {v0.16b, v1.16b}, \[x0\], x7 + 148: 4cc76000 ld1 {v0.16b-v2.16b}, \[x0\], x7 + 14c: 4cc72000 ld1 {v0.16b-v3.16b}, \[x0\], x7 + 150: 4cc77400 ld1 {v0.8h}, \[x0\], x7 + 154: 4cc7a400 ld1 {v0.8h, v1.8h}, \[x0\], x7 + 158: 4cc76400 ld1 {v0.8h-v2.8h}, \[x0\], x7 + 15c: 4cc72400 ld1 {v0.8h-v3.8h}, \[x0\], x7 + 160: 4cc77800 ld1 {v0.4s}, \[x0\], x7 + 164: 4cc7a800 ld1 {v0.4s, v1.4s}, \[x0\], x7 + 168: 4cc76800 ld1 {v0.4s-v2.4s}, \[x0\], x7 + 16c: 4cc72800 ld1 {v0.4s-v3.4s}, \[x0\], x7 + 170: 4cc77c00 ld1 {v0.2d}, \[x0\], x7 + 174: 4cc7ac00 ld1 {v0.2d, v1.2d}, \[x0\], x7 + 178: 4cc76c00 ld1 {v0.2d-v2.2d}, \[x0\], x7 + 17c: 4cc72c00 ld1 {v0.2d-v3.2d}, \[x0\], x7 + 180: 0c877000 st1 {v0.8b}, \[x0\], x7 + 184: 0c87a000 st1 {v0.8b, v1.8b}, \[x0\], x7 + 188: 0c876000 st1 {v0.8b-v2.8b}, \[x0\], x7 + 18c: 0c872000 st1 {v0.8b-v3.8b}, \[x0\], x7 + 190: 0c877400 st1 {v0.4h}, \[x0\], x7 + 194: 0c87a400 st1 {v0.4h, v1.4h}, \[x0\], x7 + 198: 0c876400 st1 {v0.4h-v2.4h}, \[x0\], x7 + 19c: 0c872400 st1 {v0.4h-v3.4h}, \[x0\], x7 + 1a0: 0c877800 st1 {v0.2s}, \[x0\], x7 + 1a4: 0c87a800 st1 {v0.2s, v1.2s}, \[x0\], x7 + 1a8: 0c876800 st1 {v0.2s-v2.2s}, \[x0\], x7 + 1ac: 0c872800 st1 {v0.2s-v3.2s}, \[x0\], x7 + 1b0: 0c877c00 st1 {v0.1d}, \[x0\], x7 + 1b4: 0c87ac00 st1 {v0.1d, v1.1d}, \[x0\], x7 + 1b8: 0c876c00 st1 {v0.1d-v2.1d}, \[x0\], x7 + 1bc: 0c872c00 st1 {v0.1d-v3.1d}, \[x0\], x7 + 1c0: 4c877000 st1 {v0.16b}, \[x0\], x7 + 1c4: 4c87a000 st1 {v0.16b, v1.16b}, \[x0\], x7 + 1c8: 4c876000 st1 {v0.16b-v2.16b}, \[x0\], x7 + 1cc: 4c872000 st1 {v0.16b-v3.16b}, \[x0\], x7 + 1d0: 4c877400 st1 {v0.8h}, \[x0\], x7 + 1d4: 4c87a400 st1 {v0.8h, v1.8h}, \[x0\], x7 + 1d8: 4c876400 st1 {v0.8h-v2.8h}, \[x0\], x7 + 1dc: 4c872400 st1 {v0.8h-v3.8h}, \[x0\], x7 + 1e0: 4c877800 st1 {v0.4s}, \[x0\], x7 + 1e4: 4c87a800 st1 {v0.4s, v1.4s}, \[x0\], x7 + 1e8: 4c876800 st1 {v0.4s-v2.4s}, \[x0\], x7 + 1ec: 4c872800 st1 {v0.4s-v3.4s}, \[x0\], x7 + 1f0: 4c877c00 st1 {v0.2d}, \[x0\], x7 + 1f4: 4c87ac00 st1 {v0.2d, v1.2d}, \[x0\], x7 + 1f8: 4c876c00 st1 {v0.2d-v2.2d}, \[x0\], x7 + 1fc: 4c872c00 st1 {v0.2d-v3.2d}, \[x0\], x7 + 200: 0cdf8000 ld2 {v0.8b, v1.8b}, \[x0\], #16 + 204: 0cc78000 ld2 {v0.8b, v1.8b}, \[x0\], x7 + 208: 0cdf8400 ld2 {v0.4h, v1.4h}, \[x0\], #16 + 20c: 0cc78400 ld2 {v0.4h, v1.4h}, \[x0\], x7 + 210: 0cdf8800 ld2 {v0.2s, v1.2s}, \[x0\], #16 + 214: 0cc78800 ld2 {v0.2s, v1.2s}, \[x0\], x7 + 218: 0c9f8000 st2 {v0.8b, v1.8b}, \[x0\], #16 + 21c: 0c878000 st2 {v0.8b, v1.8b}, \[x0\], x7 + 220: 0c9f8400 st2 {v0.4h, v1.4h}, \[x0\], #16 + 224: 0c878400 st2 {v0.4h, v1.4h}, \[x0\], x7 + 228: 0c9f8800 st2 {v0.2s, v1.2s}, \[x0\], #16 + 22c: 0c878800 st2 {v0.2s, v1.2s}, \[x0\], x7 + 230: 4cdf8000 ld2 {v0.16b, v1.16b}, \[x0\], #32 + 234: 4cc78000 ld2 {v0.16b, v1.16b}, \[x0\], x7 + 238: 4cdf8400 ld2 {v0.8h, v1.8h}, \[x0\], #32 + 23c: 4cc78400 ld2 {v0.8h, v1.8h}, \[x0\], x7 + 240: 4cdf8800 ld2 {v0.4s, v1.4s}, \[x0\], #32 + 244: 4cc78800 ld2 {v0.4s, v1.4s}, \[x0\], x7 + 248: 4cdf8c00 ld2 {v0.2d, v1.2d}, \[x0\], #32 + 24c: 4cc78c00 ld2 {v0.2d, v1.2d}, \[x0\], x7 + 250: 4c9f8000 st2 {v0.16b, v1.16b}, \[x0\], #32 + 254: 4c878000 st2 {v0.16b, v1.16b}, \[x0\], x7 + 258: 4c9f8400 st2 {v0.8h, v1.8h}, \[x0\], #32 + 25c: 4c878400 st2 {v0.8h, v1.8h}, \[x0\], x7 + 260: 4c9f8800 st2 {v0.4s, v1.4s}, \[x0\], #32 + 264: 4c878800 st2 {v0.4s, v1.4s}, \[x0\], x7 + 268: 4c9f8c00 st2 {v0.2d, v1.2d}, \[x0\], #32 + 26c: 4c878c00 st2 {v0.2d, v1.2d}, \[x0\], x7 + 270: 0cdf4000 ld3 {v0.8b-v2.8b}, \[x0\], #24 + 274: 0cdf0000 ld4 {v0.8b-v3.8b}, \[x0\], #32 + 278: 0cc74000 ld3 {v0.8b-v2.8b}, \[x0\], x7 + 27c: 0cc70000 ld4 {v0.8b-v3.8b}, \[x0\], x7 + 280: 0cdf4400 ld3 {v0.4h-v2.4h}, \[x0\], #24 + 284: 0cdf0400 ld4 {v0.4h-v3.4h}, \[x0\], #32 + 288: 0cc74400 ld3 {v0.4h-v2.4h}, \[x0\], x7 + 28c: 0cc70400 ld4 {v0.4h-v3.4h}, \[x0\], x7 + 290: 0cdf4800 ld3 {v0.2s-v2.2s}, \[x0\], #24 + 294: 0cdf0800 ld4 {v0.2s-v3.2s}, \[x0\], #32 + 298: 0cc74800 ld3 {v0.2s-v2.2s}, \[x0\], x7 + 29c: 0cc70800 ld4 {v0.2s-v3.2s}, \[x0\], x7 + 2a0: 0c9f4000 st3 {v0.8b-v2.8b}, \[x0\], #24 + 2a4: 0c9f0000 st4 {v0.8b-v3.8b}, \[x0\], #32 + 2a8: 0c874000 st3 {v0.8b-v2.8b}, \[x0\], x7 + 2ac: 0c870000 st4 {v0.8b-v3.8b}, \[x0\], x7 + 2b0: 0c9f4400 st3 {v0.4h-v2.4h}, \[x0\], #24 + 2b4: 0c9f0400 st4 {v0.4h-v3.4h}, \[x0\], #32 + 2b8: 0c874400 st3 {v0.4h-v2.4h}, \[x0\], x7 + 2bc: 0c870400 st4 {v0.4h-v3.4h}, \[x0\], x7 + 2c0: 0c9f4800 st3 {v0.2s-v2.2s}, \[x0\], #24 + 2c4: 0c9f0800 st4 {v0.2s-v3.2s}, \[x0\], #32 + 2c8: 0c874800 st3 {v0.2s-v2.2s}, \[x0\], x7 + 2cc: 0c870800 st4 {v0.2s-v3.2s}, \[x0\], x7 + 2d0: 4cdf4000 ld3 {v0.16b-v2.16b}, \[x0\], #48 + 2d4: 4cdf0000 ld4 {v0.16b-v3.16b}, \[x0\], #64 + 2d8: 4cc74000 ld3 {v0.16b-v2.16b}, \[x0\], x7 + 2dc: 4cc70000 ld4 {v0.16b-v3.16b}, \[x0\], x7 + 2e0: 4cdf4400 ld3 {v0.8h-v2.8h}, \[x0\], #48 + 2e4: 4cdf0400 ld4 {v0.8h-v3.8h}, \[x0\], #64 + 2e8: 4cc74400 ld3 {v0.8h-v2.8h}, \[x0\], x7 + 2ec: 4cc70400 ld4 {v0.8h-v3.8h}, \[x0\], x7 + 2f0: 4cdf4800 ld3 {v0.4s-v2.4s}, \[x0\], #48 + 2f4: 4cdf0800 ld4 {v0.4s-v3.4s}, \[x0\], #64 + 2f8: 4cc74800 ld3 {v0.4s-v2.4s}, \[x0\], x7 + 2fc: 4cc70800 ld4 {v0.4s-v3.4s}, \[x0\], x7 + 300: 4cdf4c00 ld3 {v0.2d-v2.2d}, \[x0\], #48 + 304: 4cdf0c00 ld4 {v0.2d-v3.2d}, \[x0\], #64 + 308: 4cc74c00 ld3 {v0.2d-v2.2d}, \[x0\], x7 + 30c: 4cc70c00 ld4 {v0.2d-v3.2d}, \[x0\], x7 + 310: 4c9f4000 st3 {v0.16b-v2.16b}, \[x0\], #48 + 314: 4c9f0000 st4 {v0.16b-v3.16b}, \[x0\], #64 + 318: 4c874000 st3 {v0.16b-v2.16b}, \[x0\], x7 + 31c: 4c870000 st4 {v0.16b-v3.16b}, \[x0\], x7 + 320: 4c9f4400 st3 {v0.8h-v2.8h}, \[x0\], #48 + 324: 4c9f0400 st4 {v0.8h-v3.8h}, \[x0\], #64 + 328: 4c874400 st3 {v0.8h-v2.8h}, \[x0\], x7 + 32c: 4c870400 st4 {v0.8h-v3.8h}, \[x0\], x7 + 330: 4c9f4800 st3 {v0.4s-v2.4s}, \[x0\], #48 + 334: 4c9f0800 st4 {v0.4s-v3.4s}, \[x0\], #64 + 338: 4c874800 st3 {v0.4s-v2.4s}, \[x0\], x7 + 33c: 4c870800 st4 {v0.4s-v3.4s}, \[x0\], x7 + 340: 4c9f4c00 st3 {v0.2d-v2.2d}, \[x0\], #48 + 344: 4c9f0c00 st4 {v0.2d-v3.2d}, \[x0\], #64 + 348: 4c874c00 st3 {v0.2d-v2.2d}, \[x0\], x7 + 34c: 4c870c00 st4 {v0.2d-v3.2d}, \[x0\], x7 + 350: 0ddf0400 ld1 {v0.b}\[1\], \[x0\], #1 + 354: 0dff0400 ld2 {v0.b, v1.b}\[1\], \[x0\], #2 + 358: 0ddf2400 ld3 {v0.b-v2.b}\[1\], \[x0\], #3 + 35c: 0dff2400 ld4 {v0.b-v3.b}\[1\], \[x0\], #4 + 360: 0ddfc000 ld1r {v0.8b}, \[x0\], #1 + 364: 0dffc000 ld2r {v0.8b, v1.8b}, \[x0\], #2 + 368: 0ddfe000 ld3r {v0.8b-v2.8b}, \[x0\], #3 + 36c: 0dffe000 ld4r {v0.8b-v3.8b}, \[x0\], #4 + 370: 4ddfc000 ld1r {v0.16b}, \[x0\], #1 + 374: 4dffc000 ld2r {v0.16b, v1.16b}, \[x0\], #2 + 378: 4ddfe000 ld3r {v0.16b-v2.16b}, \[x0\], #3 + 37c: 4dffe000 ld4r {v0.16b-v3.16b}, \[x0\], #4 + 380: 0d9f0400 st1 {v0.b}\[1\], \[x0\], #1 + 384: 0dbf0400 st2 {v0.b, v1.b}\[1\], \[x0\], #2 + 388: 0d9f2400 st3 {v0.b-v2.b}\[1\], \[x0\], #3 + 38c: 0dbf2400 st4 {v0.b-v3.b}\[1\], \[x0\], #4 + 390: 0ddf4800 ld1 {v0.h}\[1\], \[x0\], #2 + 394: 0dff4800 ld2 {v0.h, v1.h}\[1\], \[x0\], #4 + 398: 0ddf6800 ld3 {v0.h-v2.h}\[1\], \[x0\], #6 + 39c: 0dff6800 ld4 {v0.h-v3.h}\[1\], \[x0\], #8 + 3a0: 0ddfc400 ld1r {v0.4h}, \[x0\], #2 + 3a4: 0dffc400 ld2r {v0.4h, v1.4h}, \[x0\], #4 + 3a8: 0ddfe400 ld3r {v0.4h-v2.4h}, \[x0\], #6 + 3ac: 0dffe400 ld4r {v0.4h-v3.4h}, \[x0\], #8 + 3b0: 4ddfc400 ld1r {v0.8h}, \[x0\], #2 + 3b4: 4dffc400 ld2r {v0.8h, v1.8h}, \[x0\], #4 + 3b8: 4ddfe400 ld3r {v0.8h-v2.8h}, \[x0\], #6 + 3bc: 4dffe400 ld4r {v0.8h-v3.8h}, \[x0\], #8 + 3c0: 0d9f4800 st1 {v0.h}\[1\], \[x0\], #2 + 3c4: 0dbf4800 st2 {v0.h, v1.h}\[1\], \[x0\], #4 + 3c8: 0d9f6800 st3 {v0.h-v2.h}\[1\], \[x0\], #6 + 3cc: 0dbf6800 st4 {v0.h-v3.h}\[1\], \[x0\], #8 + 3d0: 0ddf9000 ld1 {v0.s}\[1\], \[x0\], #4 + 3d4: 0dff9000 ld2 {v0.s, v1.s}\[1\], \[x0\], #8 + 3d8: 0ddfb000 ld3 {v0.s-v2.s}\[1\], \[x0\], #12 + 3dc: 0dffb000 ld4 {v0.s-v3.s}\[1\], \[x0\], #16 + 3e0: 0ddfc800 ld1r {v0.2s}, \[x0\], #4 + 3e4: 0dffc800 ld2r {v0.2s, v1.2s}, \[x0\], #8 + 3e8: 0ddfe800 ld3r {v0.2s-v2.2s}, \[x0\], #12 + 3ec: 0dffe800 ld4r {v0.2s-v3.2s}, \[x0\], #16 + 3f0: 4ddfc800 ld1r {v0.4s}, \[x0\], #4 + 3f4: 4dffc800 ld2r {v0.4s, v1.4s}, \[x0\], #8 + 3f8: 4ddfe800 ld3r {v0.4s-v2.4s}, \[x0\], #12 + 3fc: 4dffe800 ld4r {v0.4s-v3.4s}, \[x0\], #16 + 400: 0d9f9000 st1 {v0.s}\[1\], \[x0\], #4 + 404: 0dbf9000 st2 {v0.s, v1.s}\[1\], \[x0\], #8 + 408: 0d9fb000 st3 {v0.s-v2.s}\[1\], \[x0\], #12 + 40c: 0dbfb000 st4 {v0.s-v3.s}\[1\], \[x0\], #16 + 410: 4ddf8400 ld1 {v0.d}\[1\], \[x0\], #8 + 414: 4dff8400 ld2 {v0.d, v1.d}\[1\], \[x0\], #16 + 418: 4ddfa400 ld3 {v0.d-v2.d}\[1\], \[x0\], #24 + 41c: 4dffa400 ld4 {v0.d-v3.d}\[1\], \[x0\], #32 + 420: 0ddfcc00 ld1r {v0.1d}, \[x0\], #8 + 424: 0dffcc00 ld2r {v0.1d, v1.1d}, \[x0\], #16 + 428: 0ddfec00 ld3r {v0.1d-v2.1d}, \[x0\], #24 + 42c: 0dffec00 ld4r {v0.1d-v3.1d}, \[x0\], #32 + 430: 4ddfcc00 ld1r {v0.2d}, \[x0\], #8 + 434: 4dffcc00 ld2r {v0.2d, v1.2d}, \[x0\], #16 + 438: 4ddfec00 ld3r {v0.2d-v2.2d}, \[x0\], #24 + 43c: 4dffec00 ld4r {v0.2d-v3.2d}, \[x0\], #32 + 440: 4d9f8400 st1 {v0.d}\[1\], \[x0\], #8 + 444: 4dbf8400 st2 {v0.d, v1.d}\[1\], \[x0\], #16 + 448: 4d9fa400 st3 {v0.d-v2.d}\[1\], \[x0\], #24 + 44c: 4dbfa400 st4 {v0.d-v3.d}\[1\], \[x0\], #32 + 450: 0dc70400 ld1 {v0.b}\[1\], \[x0\], x7 + 454: 0de70400 ld2 {v0.b, v1.b}\[1\], \[x0\], x7 + 458: 0dc72400 ld3 {v0.b-v2.b}\[1\], \[x0\], x7 + 45c: 0de72400 ld4 {v0.b-v3.b}\[1\], \[x0\], x7 + 460: 0dc74800 ld1 {v0.h}\[1\], \[x0\], x7 + 464: 0de74800 ld2 {v0.h, v1.h}\[1\], \[x0\], x7 + 468: 0dc76800 ld3 {v0.h-v2.h}\[1\], \[x0\], x7 + 46c: 0de76800 ld4 {v0.h-v3.h}\[1\], \[x0\], x7 + 470: 0dc79000 ld1 {v0.s}\[1\], \[x0\], x7 + 474: 0de79000 ld2 {v0.s, v1.s}\[1\], \[x0\], x7 + 478: 0dc7b000 ld3 {v0.s-v2.s}\[1\], \[x0\], x7 + 47c: 0de7b000 ld4 {v0.s-v3.s}\[1\], \[x0\], x7 + 480: 4dc78400 ld1 {v0.d}\[1\], \[x0\], x7 + 484: 4de78400 ld2 {v0.d, v1.d}\[1\], \[x0\], x7 + 488: 4dc7a400 ld3 {v0.d-v2.d}\[1\], \[x0\], x7 + 48c: 4de7a400 ld4 {v0.d-v3.d}\[1\], \[x0\], x7 + 490: 0dc7c000 ld1r {v0.8b}, \[x0\], x7 + 494: 0de7c000 ld2r {v0.8b, v1.8b}, \[x0\], x7 + 498: 0dc7e000 ld3r {v0.8b-v2.8b}, \[x0\], x7 + 49c: 0de7e000 ld4r {v0.8b-v3.8b}, \[x0\], x7 + 4a0: 4dc7c000 ld1r {v0.16b}, \[x0\], x7 + 4a4: 4de7c000 ld2r {v0.16b, v1.16b}, \[x0\], x7 + 4a8: 4dc7e000 ld3r {v0.16b-v2.16b}, \[x0\], x7 + 4ac: 4de7e000 ld4r {v0.16b-v3.16b}, \[x0\], x7 + 4b0: 0dc7c400 ld1r {v0.4h}, \[x0\], x7 + 4b4: 0de7c400 ld2r {v0.4h, v1.4h}, \[x0\], x7 + 4b8: 0dc7e400 ld3r {v0.4h-v2.4h}, \[x0\], x7 + 4bc: 0de7e400 ld4r {v0.4h-v3.4h}, \[x0\], x7 + 4c0: 4dc7c400 ld1r {v0.8h}, \[x0\], x7 + 4c4: 4de7c400 ld2r {v0.8h, v1.8h}, \[x0\], x7 + 4c8: 4dc7e400 ld3r {v0.8h-v2.8h}, \[x0\], x7 + 4cc: 4de7e400 ld4r {v0.8h-v3.8h}, \[x0\], x7 + 4d0: 0dc7c800 ld1r {v0.2s}, \[x0\], x7 + 4d4: 0de7c800 ld2r {v0.2s, v1.2s}, \[x0\], x7 + 4d8: 0dc7e800 ld3r {v0.2s-v2.2s}, \[x0\], x7 + 4dc: 0de7e800 ld4r {v0.2s-v3.2s}, \[x0\], x7 + 4e0: 4dc7c800 ld1r {v0.4s}, \[x0\], x7 + 4e4: 4de7c800 ld2r {v0.4s, v1.4s}, \[x0\], x7 + 4e8: 4dc7e800 ld3r {v0.4s-v2.4s}, \[x0\], x7 + 4ec: 4de7e800 ld4r {v0.4s-v3.4s}, \[x0\], x7 + 4f0: 0dc7cc00 ld1r {v0.1d}, \[x0\], x7 + 4f4: 0de7cc00 ld2r {v0.1d, v1.1d}, \[x0\], x7 + 4f8: 0dc7ec00 ld3r {v0.1d-v2.1d}, \[x0\], x7 + 4fc: 0de7ec00 ld4r {v0.1d-v3.1d}, \[x0\], x7 + 500: 4dc7cc00 ld1r {v0.2d}, \[x0\], x7 + 504: 4de7cc00 ld2r {v0.2d, v1.2d}, \[x0\], x7 + 508: 4dc7ec00 ld3r {v0.2d-v2.2d}, \[x0\], x7 + 50c: 4de7ec00 ld4r {v0.2d-v3.2d}, \[x0\], x7 + 510: 0d870400 st1 {v0.b}\[1\], \[x0\], x7 + 514: 0da70400 st2 {v0.b, v1.b}\[1\], \[x0\], x7 + 518: 0d872400 st3 {v0.b-v2.b}\[1\], \[x0\], x7 + 51c: 0da72400 st4 {v0.b-v3.b}\[1\], \[x0\], x7 + 520: 0d874800 st1 {v0.h}\[1\], \[x0\], x7 + 524: 0da74800 st2 {v0.h, v1.h}\[1\], \[x0\], x7 + 528: 0d876800 st3 {v0.h-v2.h}\[1\], \[x0\], x7 + 52c: 0da76800 st4 {v0.h-v3.h}\[1\], \[x0\], x7 + 530: 0d879000 st1 {v0.s}\[1\], \[x0\], x7 + 534: 0da79000 st2 {v0.s, v1.s}\[1\], \[x0\], x7 + 538: 0d87b000 st3 {v0.s-v2.s}\[1\], \[x0\], x7 + 53c: 0da7b000 st4 {v0.s-v3.s}\[1\], \[x0\], x7 + 540: 4d878400 st1 {v0.d}\[1\], \[x0\], x7 + 544: 4da78400 st2 {v0.d, v1.d}\[1\], \[x0\], x7 + 548: 4d87a400 st3 {v0.d-v2.d}\[1\], \[x0\], x7 + 54c: 4da7a400 st4 {v0.d-v3.d}\[1\], \[x0\], x7 diff --git a/gas/testsuite/gas/aarch64/neon-vfp-reglist-post.s b/gas/testsuite/gas/aarch64/neon-vfp-reglist-post.s new file mode 100644 index 0000000..5c77548 --- /dev/null +++ b/gas/testsuite/gas/aarch64/neon-vfp-reglist-post.s @@ -0,0 +1,196 @@ + + # ARMv8 tests to test neon register + # lists syntax. + .text + .arch armv8 + + # Post-index multiple elements + + .macro ldst1_reg_list_post_imm_64 inst type + \inst\()1 {v0.\type}, [x0], #8 + \inst\()1 {v0.\type, v1.\type}, [x0], #16 + \inst\()1 {v0.\type, v1.\type, v2.\type}, [x0], #24 + \inst\()1 {v0.\type, v1.\type, v2.\type, v3.\type}, [x0], #32 + .endm + + .irp instr ld,st + .irp bits_64 8b, 4h, 2s, 1d + ldst1_reg_list_post_imm_64 \instr \bits_64 + .endr + .endr + + .macro ldst1_reg_list_post_imm_128 inst type + \inst\()1 {v0.\type}, [x0], #16 + \inst\()1 {v0.\type, v1.\type}, [x0], #32 + \inst\()1 {v0.\type, v1.\type, v2.\type}, [x0], #48 + \inst\()1 {v0.\type, v1.\type, v2.\type, v3.\type}, [x0], #64 + .endm + + .irp instr ld,st + .irp bits_128 16b, 8h, 4s, 2d + ldst1_reg_list_post_imm_128 \instr \bits_128 + .endr + .endr + + .macro ldst1_reg_list_post_reg inst type postreg + \inst\()1 {v0.\type}, [x0], \postreg + \inst\()1 {v0.\type, v1.\type}, [x0], \postreg + \inst\()1 {v0.\type, v1.\type, v2.\type}, [x0], \postreg + \inst\()1 {v0.\type, v1.\type, v2.\type, v3.\type}, [x0], \postreg + .endm + + .irp instr ld,st + .irp bits 8b, 4h, 2s, 1d, 16b, 8h, 4s, 2d + ldst1_reg_list_post_reg \instr \bits x7 + .endr + .endr + + .macro ldst2_reg_list_post_imm_reg_64 inst type postreg + \inst\()2 {v0.\type, v1.\type}, [x0], #16 + .ifnb \postreg + \inst\()2 {v0.\type, v1.\type}, [x0], \postreg + .endif + .endm + + .macro ldst2_reg_list_post_imm_reg_128 inst type postreg + \inst\()2 {v0.\type, v1.\type}, [x0], #32 + .ifnb \postreg + \inst\()2 {v0.\type, v1.\type}, [x0], \postreg + .endif + .endm + + .irp instr ld,st + .irp bits_64 8b, 4h, 2s + ldst2_reg_list_post_imm_reg_64 \instr \bits_64 x7 + .endr + .endr + + .irp instr ld,st + .irp bits_128 16b, 8h, 4s, 2d + ldst2_reg_list_post_imm_reg_128 \instr \bits_128 x7 + .endr + .endr + + .macro ldst34_reg_list_post_imm_reg_64 inst type postreg + \inst\()3 {v0.\type, v1.\type, v2.\type}, [x0], #24 + \inst\()4 {v0.\type, v1.\type, v2.\type, v3.\type}, [x0], #32 + \inst\()3 {v0.\type, v1.\type, v2.\type}, [x0], \postreg + \inst\()4 {v0.\type, v1.\type, v2.\type, v3.\type}, [x0], \postreg + .endm + + .macro ldst34_reg_list_post_imm_reg_128 inst type postreg + \inst\()3 {v0.\type, v1.\type, v2.\type}, [x0], #48 + \inst\()4 {v0.\type, v1.\type, v2.\type, v3.\type}, [x0], #64 + \inst\()3 {v0.\type, v1.\type, v2.\type}, [x0], \postreg + \inst\()4 {v0.\type, v1.\type, v2.\type, v3.\type}, [x0], \postreg + .endm + + .irp instr ld,st + .irp bits_64 8b, 4h, 2s + ldst34_reg_list_post_imm_reg_64 \instr \bits_64 x7 + .endr + .endr + + .irp instr ld,st + .irp bits_128 16b, 8h, 4s, 2d + ldst34_reg_list_post_imm_reg_128 \instr \bits_128 x7 + .endr + .endr + + + # Post Index Vector-element form with replicate (Immediate offset) + + # Consecutive registers in reg list + + .macro ldstn_index_rep_B_imm inst index type rep + \inst\()1\rep {v0.\type}\index, [x0], #1 + \inst\()2\rep {v0.\type, v1.\type}\index, [x0], #2 + \inst\()3\rep {v0.\type, v1.\type, v2.\type}\index, [x0], #3 + \inst\()4\rep {v0.\type, v1.\type, v2.\type, v3.\type}\index, [x0], #4 + .endm + + # Vector element with index + + .irp instr, ld, st + ldstn_index_rep_B_imm \instr index="[1]" type=b rep="" + .ifnc \instr, st + .irp types 8b, 16b + ldstn_index_rep_B_imm \instr index="" type=\types rep="r" + .endr + .endif + .endr + + .macro ldstn_index_rep_H_imm inst index type rep + \inst\()1\rep {v0.\type}\index, [x0], #2 + \inst\()2\rep {v0.\type, v1.\type}\index, [x0], #4 + \inst\()3\rep {v0.\type, v1.\type, v2.\type}\index, [x0], #6 + \inst\()4\rep {v0.\type, v1.\type, v2.\type, v3.\type}\index, [x0], #8 + .endm + + .irp instr, ld, st + ldstn_index_rep_H_imm \instr index="[1]" type=h rep="" + .ifnc \instr, st + .irp types 4h, 8h + ldstn_index_rep_H_imm \instr index="" type=\types rep="r" + .endr + .endif + .endr + + .macro ldstn_index_rep_S_imm inst index type rep + \inst\()1\rep {v0.\type}\index, [x0], #4 + \inst\()2\rep {v0.\type, v1.\type}\index, [x0], #8 + \inst\()3\rep {v0.\type, v1.\type, v2.\type}\index, [x0], #12 + \inst\()4\rep {v0.\type, v1.\type, v2.\type, v3.\type}\index, [x0], #16 + .endm + + .irp instr, ld, st + ldstn_index_rep_S_imm \instr index="[1]" type=s rep="" + .ifnc \instr, st + .irp types 2s, 4s + ldstn_index_rep_S_imm \instr index="" type=\types rep="r" + .endr + .endif + .endr + + .macro ldstn_index_rep_D_imm inst index type rep + \inst\()1\rep {v0.\type}\index, [x0], #8 + \inst\()2\rep {v0.\type, v1.\type}\index, [x0], #16 + \inst\()3\rep {v0.\type, v1.\type, v2.\type}\index, [x0], #24 + \inst\()4\rep {v0.\type, v1.\type, v2.\type, v3.\type}\index, [x0], #32 + .endm + + .irp instr, ld, st + ldstn_index_rep_D_imm \instr index="[1]" type=d rep="" + .ifnc \instr, st + .irp types 1d, 2d + ldstn_index_rep_D_imm \instr index="" type=\types rep="r" + .endr + .endif + .endr + + # Post Index Vector-element form with replicate (Register offset) + # This could have been factored into Post-index multiple + # element macros but this would make this already-looking-complex + # testcase look more complex! + + # Consecutive registers in reg list + + .macro ldstn_index_rep_reg inst index type rep postreg + \inst\()1\rep {v0.\type}\index, [x0], \postreg + \inst\()2\rep {v0.\type, v1.\type}\index, [x0], \postreg + \inst\()3\rep {v0.\type, v1.\type, v2.\type}\index, [x0], \postreg + \inst\()4\rep {v0.\type, v1.\type, v2.\type, v3.\type}\index, [x0], \postreg + .endm + + .irp instr, ld, st + .irp itypes b,h,s,d + ldstn_index_rep_reg \instr index="[1]" type=\itypes rep="" postreg=x7 + .endr + .ifnc \instr, st + .irp types 8b, 16b, 4h, 8h, 2s, 4s, 1d, 2d + ldstn_index_rep_reg \instr index="" type=\types rep="r" postreg=x7 + .endr + .endif + .endr + + # ### End of test diff --git a/gas/testsuite/gas/aarch64/neon-vfp-reglist.d b/gas/testsuite/gas/aarch64/neon-vfp-reglist.d new file mode 100644 index 0000000..d58d1b7 --- /dev/null +++ b/gas/testsuite/gas/aarch64/neon-vfp-reglist.d @@ -0,0 +1,193 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: 0c407000 ld1 {v0.8b}, \[x0\] + 4: 0c40a000 ld1 {v0.8b, v1.8b}, \[x0\] + 8: 0c406000 ld1 {v0.8b-v2.8b}, \[x0\] + c: 0c402000 ld1 {v0.8b-v3.8b}, \[x0\] + 10: 0c408000 ld2 {v0.8b, v1.8b}, \[x0\] + 14: 0c404000 ld3 {v0.8b-v2.8b}, \[x0\] + 18: 0c400000 ld4 {v0.8b-v3.8b}, \[x0\] + 1c: 0c007000 st1 {v0.8b}, \[x0\] + 20: 0c00a000 st1 {v0.8b, v1.8b}, \[x0\] + 24: 0c006000 st1 {v0.8b-v2.8b}, \[x0\] + 28: 0c002000 st1 {v0.8b-v3.8b}, \[x0\] + 2c: 0c008000 st2 {v0.8b, v1.8b}, \[x0\] + 30: 0c004000 st3 {v0.8b-v2.8b}, \[x0\] + 34: 0c000000 st4 {v0.8b-v3.8b}, \[x0\] + 38: 4c407000 ld1 {v0.16b}, \[x0\] + 3c: 4c40a000 ld1 {v0.16b, v1.16b}, \[x0\] + 40: 4c406000 ld1 {v0.16b-v2.16b}, \[x0\] + 44: 4c402000 ld1 {v0.16b-v3.16b}, \[x0\] + 48: 4c408000 ld2 {v0.16b, v1.16b}, \[x0\] + 4c: 4c404000 ld3 {v0.16b-v2.16b}, \[x0\] + 50: 4c400000 ld4 {v0.16b-v3.16b}, \[x0\] + 54: 4c007000 st1 {v0.16b}, \[x0\] + 58: 4c00a000 st1 {v0.16b, v1.16b}, \[x0\] + 5c: 4c006000 st1 {v0.16b-v2.16b}, \[x0\] + 60: 4c002000 st1 {v0.16b-v3.16b}, \[x0\] + 64: 4c008000 st2 {v0.16b, v1.16b}, \[x0\] + 68: 4c004000 st3 {v0.16b-v2.16b}, \[x0\] + 6c: 4c000000 st4 {v0.16b-v3.16b}, \[x0\] + 70: 0c407400 ld1 {v0.4h}, \[x0\] + 74: 0c40a400 ld1 {v0.4h, v1.4h}, \[x0\] + 78: 0c406400 ld1 {v0.4h-v2.4h}, \[x0\] + 7c: 0c402400 ld1 {v0.4h-v3.4h}, \[x0\] + 80: 0c408400 ld2 {v0.4h, v1.4h}, \[x0\] + 84: 0c404400 ld3 {v0.4h-v2.4h}, \[x0\] + 88: 0c400400 ld4 {v0.4h-v3.4h}, \[x0\] + 8c: 0c007400 st1 {v0.4h}, \[x0\] + 90: 0c00a400 st1 {v0.4h, v1.4h}, \[x0\] + 94: 0c006400 st1 {v0.4h-v2.4h}, \[x0\] + 98: 0c002400 st1 {v0.4h-v3.4h}, \[x0\] + 9c: 0c008400 st2 {v0.4h, v1.4h}, \[x0\] + a0: 0c004400 st3 {v0.4h-v2.4h}, \[x0\] + a4: 0c000400 st4 {v0.4h-v3.4h}, \[x0\] + a8: 4c407400 ld1 {v0.8h}, \[x0\] + ac: 4c40a400 ld1 {v0.8h, v1.8h}, \[x0\] + b0: 4c406400 ld1 {v0.8h-v2.8h}, \[x0\] + b4: 4c402400 ld1 {v0.8h-v3.8h}, \[x0\] + b8: 4c408400 ld2 {v0.8h, v1.8h}, \[x0\] + bc: 4c404400 ld3 {v0.8h-v2.8h}, \[x0\] + c0: 4c400400 ld4 {v0.8h-v3.8h}, \[x0\] + c4: 4c007400 st1 {v0.8h}, \[x0\] + c8: 4c00a400 st1 {v0.8h, v1.8h}, \[x0\] + cc: 4c006400 st1 {v0.8h-v2.8h}, \[x0\] + d0: 4c002400 st1 {v0.8h-v3.8h}, \[x0\] + d4: 4c008400 st2 {v0.8h, v1.8h}, \[x0\] + d8: 4c004400 st3 {v0.8h-v2.8h}, \[x0\] + dc: 4c000400 st4 {v0.8h-v3.8h}, \[x0\] + e0: 0c407800 ld1 {v0.2s}, \[x0\] + e4: 0c40a800 ld1 {v0.2s, v1.2s}, \[x0\] + e8: 0c406800 ld1 {v0.2s-v2.2s}, \[x0\] + ec: 0c402800 ld1 {v0.2s-v3.2s}, \[x0\] + f0: 0c408800 ld2 {v0.2s, v1.2s}, \[x0\] + f4: 0c404800 ld3 {v0.2s-v2.2s}, \[x0\] + f8: 0c400800 ld4 {v0.2s-v3.2s}, \[x0\] + fc: 0c007800 st1 {v0.2s}, \[x0\] + 100: 0c00a800 st1 {v0.2s, v1.2s}, \[x0\] + 104: 0c006800 st1 {v0.2s-v2.2s}, \[x0\] + 108: 0c002800 st1 {v0.2s-v3.2s}, \[x0\] + 10c: 0c008800 st2 {v0.2s, v1.2s}, \[x0\] + 110: 0c004800 st3 {v0.2s-v2.2s}, \[x0\] + 114: 0c000800 st4 {v0.2s-v3.2s}, \[x0\] + 118: 4c407800 ld1 {v0.4s}, \[x0\] + 11c: 4c40a800 ld1 {v0.4s, v1.4s}, \[x0\] + 120: 4c406800 ld1 {v0.4s-v2.4s}, \[x0\] + 124: 4c402800 ld1 {v0.4s-v3.4s}, \[x0\] + 128: 4c408800 ld2 {v0.4s, v1.4s}, \[x0\] + 12c: 4c404800 ld3 {v0.4s-v2.4s}, \[x0\] + 130: 4c400800 ld4 {v0.4s-v3.4s}, \[x0\] + 134: 4c007800 st1 {v0.4s}, \[x0\] + 138: 4c00a800 st1 {v0.4s, v1.4s}, \[x0\] + 13c: 4c006800 st1 {v0.4s-v2.4s}, \[x0\] + 140: 4c002800 st1 {v0.4s-v3.4s}, \[x0\] + 144: 4c008800 st2 {v0.4s, v1.4s}, \[x0\] + 148: 4c004800 st3 {v0.4s-v2.4s}, \[x0\] + 14c: 4c000800 st4 {v0.4s-v3.4s}, \[x0\] + 150: 4c407c00 ld1 {v0.2d}, \[x0\] + 154: 4c40ac00 ld1 {v0.2d, v1.2d}, \[x0\] + 158: 4c406c00 ld1 {v0.2d-v2.2d}, \[x0\] + 15c: 4c402c00 ld1 {v0.2d-v3.2d}, \[x0\] + 160: 4c408c00 ld2 {v0.2d, v1.2d}, \[x0\] + 164: 4c404c00 ld3 {v0.2d-v2.2d}, \[x0\] + 168: 4c400c00 ld4 {v0.2d-v3.2d}, \[x0\] + 16c: 4c007c00 st1 {v0.2d}, \[x0\] + 170: 4c00ac00 st1 {v0.2d, v1.2d}, \[x0\] + 174: 4c006c00 st1 {v0.2d-v2.2d}, \[x0\] + 178: 4c002c00 st1 {v0.2d-v3.2d}, \[x0\] + 17c: 4c008c00 st2 {v0.2d, v1.2d}, \[x0\] + 180: 4c004c00 st3 {v0.2d-v2.2d}, \[x0\] + 184: 4c000c00 st4 {v0.2d-v3.2d}, \[x0\] + 188: 0d400400 ld1 {v0.b}\[1\], \[x0\] + 18c: 0d600400 ld2 {v0.b, v1.b}\[1\], \[x0\] + 190: 0d402400 ld3 {v0.b-v2.b}\[1\], \[x0\] + 194: 0d602400 ld4 {v0.b-v3.b}\[1\], \[x0\] + 198: 0d000400 st1 {v0.b}\[1\], \[x0\] + 19c: 0d200400 st2 {v0.b, v1.b}\[1\], \[x0\] + 1a0: 0d002400 st3 {v0.b-v2.b}\[1\], \[x0\] + 1a4: 0d202400 st4 {v0.b-v3.b}\[1\], \[x0\] + 1a8: 0d400400 ld1 {v0.b}\[1\], \[x0\] + 1ac: 0d600400 ld2 {v0.b, v1.b}\[1\], \[x0\] + 1b0: 0d402400 ld3 {v0.b-v2.b}\[1\], \[x0\] + 1b4: 0d602400 ld4 {v0.b-v3.b}\[1\], \[x0\] + 1b8: 0d000400 st1 {v0.b}\[1\], \[x0\] + 1bc: 0d200400 st2 {v0.b, v1.b}\[1\], \[x0\] + 1c0: 0d002400 st3 {v0.b-v2.b}\[1\], \[x0\] + 1c4: 0d202400 st4 {v0.b-v3.b}\[1\], \[x0\] + 1c8: 0d404800 ld1 {v0.h}\[1\], \[x0\] + 1cc: 0d604800 ld2 {v0.h, v1.h}\[1\], \[x0\] + 1d0: 0d406800 ld3 {v0.h-v2.h}\[1\], \[x0\] + 1d4: 0d606800 ld4 {v0.h-v3.h}\[1\], \[x0\] + 1d8: 0d004800 st1 {v0.h}\[1\], \[x0\] + 1dc: 0d204800 st2 {v0.h, v1.h}\[1\], \[x0\] + 1e0: 0d006800 st3 {v0.h-v2.h}\[1\], \[x0\] + 1e4: 0d206800 st4 {v0.h-v3.h}\[1\], \[x0\] + 1e8: 0d404800 ld1 {v0.h}\[1\], \[x0\] + 1ec: 0d604800 ld2 {v0.h, v1.h}\[1\], \[x0\] + 1f0: 0d406800 ld3 {v0.h-v2.h}\[1\], \[x0\] + 1f4: 0d606800 ld4 {v0.h-v3.h}\[1\], \[x0\] + 1f8: 0d004800 st1 {v0.h}\[1\], \[x0\] + 1fc: 0d204800 st2 {v0.h, v1.h}\[1\], \[x0\] + 200: 0d006800 st3 {v0.h-v2.h}\[1\], \[x0\] + 204: 0d206800 st4 {v0.h-v3.h}\[1\], \[x0\] + 208: 0d409000 ld1 {v0.s}\[1\], \[x0\] + 20c: 0d609000 ld2 {v0.s, v1.s}\[1\], \[x0\] + 210: 0d40b000 ld3 {v0.s-v2.s}\[1\], \[x0\] + 214: 0d60b000 ld4 {v0.s-v3.s}\[1\], \[x0\] + 218: 0d009000 st1 {v0.s}\[1\], \[x0\] + 21c: 0d209000 st2 {v0.s, v1.s}\[1\], \[x0\] + 220: 0d00b000 st3 {v0.s-v2.s}\[1\], \[x0\] + 224: 0d20b000 st4 {v0.s-v3.s}\[1\], \[x0\] + 228: 0d409000 ld1 {v0.s}\[1\], \[x0\] + 22c: 0d609000 ld2 {v0.s, v1.s}\[1\], \[x0\] + 230: 0d40b000 ld3 {v0.s-v2.s}\[1\], \[x0\] + 234: 0d60b000 ld4 {v0.s-v3.s}\[1\], \[x0\] + 238: 0d009000 st1 {v0.s}\[1\], \[x0\] + 23c: 0d209000 st2 {v0.s, v1.s}\[1\], \[x0\] + 240: 0d00b000 st3 {v0.s-v2.s}\[1\], \[x0\] + 244: 0d20b000 st4 {v0.s-v3.s}\[1\], \[x0\] + 248: 4d408400 ld1 {v0.d}\[1\], \[x0\] + 24c: 4d608400 ld2 {v0.d, v1.d}\[1\], \[x0\] + 250: 4d40a400 ld3 {v0.d-v2.d}\[1\], \[x0\] + 254: 4d60a400 ld4 {v0.d-v3.d}\[1\], \[x0\] + 258: 4d008400 st1 {v0.d}\[1\], \[x0\] + 25c: 4d208400 st2 {v0.d, v1.d}\[1\], \[x0\] + 260: 4d00a400 st3 {v0.d-v2.d}\[1\], \[x0\] + 264: 4d20a400 st4 {v0.d-v3.d}\[1\], \[x0\] + 268: 0d40c000 ld1r {v0.8b}, \[x0\] + 26c: 0d60c000 ld2r {v0.8b, v1.8b}, \[x0\] + 270: 0d40e000 ld3r {v0.8b-v2.8b}, \[x0\] + 274: 0d60e000 ld4r {v0.8b-v3.8b}, \[x0\] + 278: 4d40c000 ld1r {v0.16b}, \[x0\] + 27c: 4d60c000 ld2r {v0.16b, v1.16b}, \[x0\] + 280: 4d40e000 ld3r {v0.16b-v2.16b}, \[x0\] + 284: 4d60e000 ld4r {v0.16b-v3.16b}, \[x0\] + 288: 0d40c400 ld1r {v0.4h}, \[x0\] + 28c: 0d60c400 ld2r {v0.4h, v1.4h}, \[x0\] + 290: 0d40e400 ld3r {v0.4h-v2.4h}, \[x0\] + 294: 0d60e400 ld4r {v0.4h-v3.4h}, \[x0\] + 298: 4d40c400 ld1r {v0.8h}, \[x0\] + 29c: 4d60c400 ld2r {v0.8h, v1.8h}, \[x0\] + 2a0: 4d40e400 ld3r {v0.8h-v2.8h}, \[x0\] + 2a4: 4d60e400 ld4r {v0.8h-v3.8h}, \[x0\] + 2a8: 0d40c800 ld1r {v0.2s}, \[x0\] + 2ac: 0d60c800 ld2r {v0.2s, v1.2s}, \[x0\] + 2b0: 0d40e800 ld3r {v0.2s-v2.2s}, \[x0\] + 2b4: 0d60e800 ld4r {v0.2s-v3.2s}, \[x0\] + 2b8: 4d40c800 ld1r {v0.4s}, \[x0\] + 2bc: 4d60c800 ld2r {v0.4s, v1.4s}, \[x0\] + 2c0: 4d40e800 ld3r {v0.4s-v2.4s}, \[x0\] + 2c4: 4d60e800 ld4r {v0.4s-v3.4s}, \[x0\] + 2c8: 0d40cc00 ld1r {v0.1d}, \[x0\] + 2cc: 0d60cc00 ld2r {v0.1d, v1.1d}, \[x0\] + 2d0: 0d40ec00 ld3r {v0.1d-v2.1d}, \[x0\] + 2d4: 0d60ec00 ld4r {v0.1d-v3.1d}, \[x0\] + 2d8: 4d40cc00 ld1r {v0.2d}, \[x0\] + 2dc: 4d60cc00 ld2r {v0.2d, v1.2d}, \[x0\] + 2e0: 4d40ec00 ld3r {v0.2d-v2.2d}, \[x0\] + 2e4: 4d60ec00 ld4r {v0.2d-v3.2d}, \[x0\] diff --git a/gas/testsuite/gas/aarch64/neon-vfp-reglist.s b/gas/testsuite/gas/aarch64/neon-vfp-reglist.s new file mode 100644 index 0000000..00dbe61 --- /dev/null +++ b/gas/testsuite/gas/aarch64/neon-vfp-reglist.s @@ -0,0 +1,83 @@ + + # ARMv8 tests to test neon register + # lists syntax. + .macro ldnstn_reg_list type inst index rep + \inst\()1\rep {v0.\type}\index, [x0] + .ifb \index + .ifb \rep + \inst\()1 {v0.\type, v1.\type}\index, [x0] + \inst\()1 {v0.\type, v1.\type, v2.\type}\index, [x0] + \inst\()1 {v0.\type, v1.\type, v2.\type, v3.\type}\index, [x0] + .endif + .endif + + \inst\()2\rep {v0.\type, v1.\type}\index, [x0] + + \inst\()3\rep {v0.\type, v1.\type, v2.\type}\index, [x0] + + \inst\()4\rep {v0.\type, v1.\type, v2.\type, v3.\type}\index, [x0] + + .endm + + .text + .arch armv8 + + ldnstn_reg_list type="8B", inst="ld" index="" rep="" + ldnstn_reg_list type="8B", inst="st" index="" rep="" + + ldnstn_reg_list type="16B", inst="ld" index="" rep="" + ldnstn_reg_list type="16B", inst="st" index="" rep="" + + ldnstn_reg_list type="4H", inst="ld" index="" rep="" + ldnstn_reg_list type="4H", inst="st" index="" rep="" + + ldnstn_reg_list type="8H", inst="ld" index="" rep="" + ldnstn_reg_list type="8H", inst="st" index="" rep="" + + ldnstn_reg_list type="2S", inst="ld" index="" rep="" + ldnstn_reg_list type="2S", inst="st" index="" rep="" + + ldnstn_reg_list type="4S", inst="ld" index="" rep="" + ldnstn_reg_list type="4S", inst="st" index="" rep="" + + ldnstn_reg_list type="2D", inst="ld" index="" rep="" + ldnstn_reg_list type="2D", inst="st" index="" rep="" + + # vector-element form + ldnstn_reg_list type="B", inst="ld" index="[1]" rep="" + ldnstn_reg_list type="B", inst="st" index="[1]" rep="" + + ldnstn_reg_list type="B", inst="ld" index="[1]" rep="" + ldnstn_reg_list type="B", inst="st" index="[1]" rep="" + + ldnstn_reg_list type="H", inst="ld" index="[1]" rep="" + ldnstn_reg_list type="H", inst="st" index="[1]" rep="" + + ldnstn_reg_list type="H", inst="ld" index="[1]" rep="" + ldnstn_reg_list type="H", inst="st" index="[1]" rep="" + + ldnstn_reg_list type="S", inst="ld" index="[1]" rep="" + ldnstn_reg_list type="S", inst="st" index="[1]" rep="" + + ldnstn_reg_list type="S", inst="ld" index="[1]" rep="" + ldnstn_reg_list type="S", inst="st" index="[1]" rep="" + + ldnstn_reg_list type="D", inst="ld" index="[1]" rep="" + ldnstn_reg_list type="D", inst="st" index="[1]" rep="" + + # replicate form + ldnstn_reg_list type="8B", inst="ld" index="" rep="r" + + ldnstn_reg_list type="16B", inst="ld" index="" rep="r" + + ldnstn_reg_list type="4H", inst="ld" index="" rep="r" + + ldnstn_reg_list type="8H", inst="ld" index="" rep="r" + + ldnstn_reg_list type="2S", inst="ld" index="" rep="r" + + ldnstn_reg_list type="4S", inst="ld" index="" rep="r" + + ldnstn_reg_list type="1D", inst="ld" index="" rep="r" + + ldnstn_reg_list type="2D", inst="ld" index="" rep="r" diff --git a/gas/testsuite/gas/aarch64/no-aliases.d b/gas/testsuite/gas/aarch64/no-aliases.d new file mode 100644 index 0000000..5ccf80b --- /dev/null +++ b/gas/testsuite/gas/aarch64/no-aliases.d @@ -0,0 +1,75 @@ +#source: alias.s +#objdump: -dr -Mno-aliases + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: 13823c20 extr w0, w1, w2, #15 + 4: 93c23c20 extr x0, x1, x2, #15 + 8: 13831c60 extr w0, w3, w3, #7 + c: 93c51ca0 extr x0, x5, x5, #7 + 10: 138748e6 extr w6, w7, w7, #18 + 14: 93c7a0e6 extr x6, x7, x7, #40 + 18: 1b020c20 madd w0, w1, w2, w3 + 1c: 1b027c20 madd w0, w1, w2, wzr + 20: 1b027c20 madd w0, w1, w2, wzr + 24: 9b028c20 msub x0, x1, x2, x3 + 28: 9b02fc20 msub x0, x1, x2, xzr + 2c: 9b02fc20 msub x0, x1, x2, xzr + 30: 9b220c20 smaddl x0, w1, w2, x3 + 34: 9b227c20 smaddl x0, w1, w2, xzr + 38: 9b227c20 smaddl x0, w1, w2, xzr + 3c: 9b228c20 smsubl x0, w1, w2, x3 + 40: 9b22fc20 smsubl x0, w1, w2, xzr + 44: 9b22fc20 smsubl x0, w1, w2, xzr + 48: 9ba20c20 umaddl x0, w1, w2, x3 + 4c: 9ba27c20 umaddl x0, w1, w2, xzr + 50: 9ba27c20 umaddl x0, w1, w2, xzr + 54: 9ba28c20 umsubl x0, w1, w2, x3 + 58: 9ba2fc20 umsubl x0, w1, w2, xzr + 5c: 9ba2fc20 umsubl x0, w1, w2, xzr + 60: 1a9f0420 csinc w0, w1, wzr, eq + 64: 1a810420 csinc w0, w1, w1, eq + 68: 1a810420 csinc w0, w1, w1, eq + 6c: 1a9f37e0 csinc w0, wzr, wzr, cc + 70: 1a9f37e0 csinc w0, wzr, wzr, cc + 74: da9f2020 csinv x0, x1, xzr, cs + 78: da812020 csinv x0, x1, x1, cs + 7c: da812020 csinv x0, x1, x1, cs + 80: da9f43e0 csinv x0, xzr, xzr, mi + 84: da9f43e0 csinv x0, xzr, xzr, mi + 88: da9eb7e0 csneg x0, xzr, x30, lt + 8c: da9eb7c0 csneg x0, x30, x30, lt + 90: da9eb7c0 csneg x0, x30, x30, lt + 94: ea020020 ands x0, x1, x2 + 98: ea02003f ands xzr, x1, x2 + 9c: ea02003f ands xzr, x1, x2 + a0: 6ac27c3f ands wzr, w1, w2, ror #31 + a4: 6ac27c3f ands wzr, w1, w2, ror #31 + a8: aa220020 orn x0, x1, x2 + ac: aa22003f orn xzr, x1, x2 + b0: aa2203e0 orn x0, xzr, x2 + b4: aa2203e0 orn x0, xzr, x2 + b8: 2aa23c3f orn wzr, w1, w2, asr #15 + bc: 2aa23fe0 orn w0, wzr, w2, asr #15 + c0: 2aa23fe0 orn w0, wzr, w2, asr #15 + c4: 0ea11c20 orr v0.8b, v1.8b, v1.8b + c8: 0ea21c20 orr v0.8b, v1.8b, v2.8b + cc: 0ea11c20 orr v0.8b, v1.8b, v1.8b + d0: aa1103e3 orr x3, xzr, x17 + d4: aa110003 orr x3, x0, x17 + d8: aa1103e3 orr x3, xzr, x17 + dc: 92628421 and x1, x1, #0xffffffffc0000000 + e0: 927ef800 and x0, x0, #0xfffffffffffffffd + e4: 121e7800 and w0, w0, #0xfffffffd + e8: 721d1f1f ands wzr, w24, #0x7f8 + ec: 721d1f00 ands w0, w24, #0x7f8 + f0: 721d1f1f ands wzr, w24, #0x7f8 + f4: 7100807f subs wzr, w3, #0x20 + f8: 710083e3 subs w3, wsp, #0x20 + fc: 7100807f subs wzr, w3, #0x20 + 100: b13ffdff adds xzr, x15, #0xfff + 104: f13fffef subs x15, sp, #0xfff + 108: b13ffdff adds xzr, x15, #0xfff diff --git a/gas/testsuite/gas/aarch64/optional.d b/gas/testsuite/gas/aarch64/optional.d new file mode 100644 index 0000000..d81f846 --- /dev/null +++ b/gas/testsuite/gas/aarch64/optional.d @@ -0,0 +1,34 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: d4a001e1 dcps1 #0xf + 4: d4a00001 dcps1 + 8: d4a00001 dcps1 + c: d4a003e2 dcps2 #0x1f + 10: d4a00002 dcps2 + 14: d4a00002 dcps2 + 18: d4a007e3 dcps3 #0x3f + 1c: d4a00003 dcps3 + 20: d4a00003 dcps3 + 24: d65f00e0 ret x7 + 28: d65f03c0 ret + 2c: d65f03c0 ret + 30: d503305f clrex #0x0 + 34: d503395f clrex #0x9 + 38: d5033f5f clrex + 3c: d5033f5f clrex + 40: d508001f sys #0, C0, C0, #0 + 44: 10000000 adr x0, 0 <sym> + 44: R_AARCH64_ADR_PREL_LO21 sym + 48: f9400001 ldr x1, \[x0\] + 48: R_AARCH64_LDST64_ABS_LO12_NC sym + 4c: f9400001 ldr x1, \[x0\] + 4c: R_AARCH64_LDST64_ABS_LO12_NC sym + 50: f9000001 str x1, \[x0\] + 50: R_AARCH64_LDST64_ABS_LO12_NC sym + 54: f9000001 str x1, \[x0\] + 54: R_AARCH64_LDST64_ABS_LO12_NC sym diff --git a/gas/testsuite/gas/aarch64/optional.s b/gas/testsuite/gas/aarch64/optional.s new file mode 100644 index 0000000..5f2552b --- /dev/null +++ b/gas/testsuite/gas/aarch64/optional.s @@ -0,0 +1,30 @@ +// Test instructions with opertional operand or other optional element. + +.text + dcps1 #15 + dcps1 #0 + dcps1 + dcps2 #31 + dcps2 #0 + dcps2 + dcps3 #63 + dcps3 #0 + dcps3 + + ret x7 + ret x30 + ret + + clrex #0 + clrex #9 + clrex #15 + clrex + + sys #0, c0, c0, #0 + + // Optional leading # for symbolic load/store offsets. + adr x0, sym + ldr x1,[x0,:lo12:sym] + ldr x1,[x0,#:lo12:sym] + str x1,[x0,:lo12:sym] + str x1,[x0,#:lo12:sym] diff --git a/gas/testsuite/gas/aarch64/programmer-friendly.d b/gas/testsuite/gas/aarch64/programmer-friendly.d new file mode 100644 index 0000000..90cea5e --- /dev/null +++ b/gas/testsuite/gas/aarch64/programmer-friendly.d @@ -0,0 +1,22 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: 4f03e420 movi v0\.16b, #0x61 + 4: 98000181 ldrsw x1, 34 <\.text\+0x34> + 8: 98000007 ldrsw x7, 0 <\.text> + 8: R_AARCH64_LD_PREL_LO19 \.data\+0x4 + c: fa42a02a ccmp x1, x2, #0xa, ge + 10: 53001eaf uxtb w15, w21 + 14: 53003f67 uxth w7, w27 + 18: 2a1f03e8 mov w8, wzr + 1c: ab2013e0 adds x0, sp, w0, uxtb #4 + 20: ab2033e0 adds x0, sp, w0, uxth #4 + 24: ab2053e0 adds x0, sp, w0, uxtw #4 + 28: ab2083e0 adds x0, sp, w0, sxtb + 2c: ab20a7e0 adds x0, sp, w0, sxth #1 + 30: ab20cbe0 adds x0, sp, w0, sxtw #2 + 34: deadbeef \.word 0xdeadbeef diff --git a/gas/testsuite/gas/aarch64/programmer-friendly.s b/gas/testsuite/gas/aarch64/programmer-friendly.s new file mode 100644 index 0000000..f39ca5d --- /dev/null +++ b/gas/testsuite/gas/aarch64/programmer-friendly.s @@ -0,0 +1,54 @@ +// programmer-friendly.s Test file for AArch64 instructions variants that are +// not part of the architectural assembly syntax but are supported for the +// ease of assembly level programming. + +.text + // The preferred architectural syntax does not accept the shifter + // LSL or any other shift operator, when the destination register + // has the shape of 16B or 8B. + movi v0.16b, 97, lsl 0 + + // LDR Wt, label | =value + // As a convenience assemblers will typically permit the notation + // "=value" in conjunction with the pc-relative literal load + // instructions to automatically place an immediate value or + // symbolic address in a nearby literal pool and generate a hidden + // label which references it. + ldrsw x1, =0xdeadbeef + ldrsw x7, u16_lable + 4 + + // CCMN Xn, Xm, #uimm4, cond + // As a convenience, GAS accepts a string representation for #uimm4, + // e.g. NzCv for #0xa (0b1010). + ccmp x1, x2, NzCv, GE + +.data +u16_lable: + .word 0xdeadbeef + .word 0xcafebabe + +.text + // UXT[BHW] Wd, Wn + // Unsigned Extend Byte|Halfword|Word: UXT[BH] is architectural alias + // for UBFM Wd,Wn,#0,#7|15, while UXTW is pseudo instruction which is + // encoded using ORR Wd, WZR, Wn (MOV Wd,Wn). + // A programmer-friendly assembler should accept a destination Xd in + // place of Wd, however that is not the preferred form for disassembly. + uxtb x15, w21 + uxth x7, w27 + uxtw x8, wzr + + + // ADDS <Xd>, <Xn|SP>, <R><m>{, UXTB {#<amount>}} + // In the 64-bit form, the final register operand is written as Wm + // for all but the (possibly omitted) UXTX/LSL and SXTX + // operators. + // As a programmer-friendly assembler, we allow e.g. + // ADDS <Xd>, <Xn|SP>, <Xm>{, UXTB {#<amount>}} by changing it to + // ADDS <Xd>, <Xn|SP>, <Wm>{, UXTB {#<amount>}}. + adds x0, sp, x0, uxtb #4 + adds x0, sp, x0, uxth #4 + adds x0, sp, x0, uxtw #4 + adds x0, sp, x0, sxtb #0 + adds x0, sp, x0, sxth #1 + adds x0, sp, x0, sxtw #2 diff --git a/gas/testsuite/gas/aarch64/reloc-data.d b/gas/testsuite/gas/aarch64/reloc-data.d new file mode 100644 index 0000000..369fe33 --- /dev/null +++ b/gas/testsuite/gas/aarch64/reloc-data.d @@ -0,0 +1,34 @@ +#objdump: -dr +#skip: aarch64_be-*-* + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: d65f03c0 ret + 4: ffff005c \.word 0xffff005c + 8: 0000005c \.word 0x0000005c + c: ffffffff \.word 0xffffffff + 10: 0000005c \.word 0x0000005c + 14: 00000000 \.word 0x00000000 + 18: ffffffff \.word 0xffffffff + 1c: ffffffff \.word 0xffffffff + \.\.\. + 20: R_AARCH64_ABS64 \.text\+0x12345660 + 28: ffffffff \.word 0xffffffff + 2c: ffffffff \.word 0xffffffff + 30: ffff0000 \.word 0xffff0000 + 30: R_AARCH64_PREL16 global\+0x2c + 34: 00000000 \.word 0x00000000 + 34: R_AARCH64_PREL32 global\+0x30 + 38: ffffffff \.word 0xffffffff + 3c: d503201f nop + \.\.\. + 40: R_AARCH64_PREL64 global\+0x3c + 48: ffffffff \.word 0xffffffff + 4c: ffffffff \.word 0xffffffff + \.\.\. + 50: R_AARCH64_ABS64 global\+0x12345678 + 58: ffffffff \.word 0xffffffff + 5c: ffffffff \.word 0xffffffff diff --git a/gas/testsuite/gas/aarch64/reloc-data.s b/gas/testsuite/gas/aarch64/reloc-data.s new file mode 100644 index 0000000..918bcf3 --- /dev/null +++ b/gas/testsuite/gas/aarch64/reloc-data.s @@ -0,0 +1,29 @@ +func: + ret + +.L1: + .balign 2 + .hword local-.L1 + .hword 0xffff + .balign 4 + .word local-.L1 + .word 0xffffffff + .balign 8 + .xword local-.L1 + .xword 0xffffffffffffffff + .xword local+0x12345600 + .xword 0xffffffffffffffff + + .balign 2 + .hword global-.L1 + .hword 0xffff + .balign 4 + .word global-.L1 + .word 0xffffffff + .balign 8 + .xword global-.L1 + .xword 0xffffffffffffffff + .xword global+0x12345678 + .xword 0xffffffffffffffff + +local: diff --git a/gas/testsuite/gas/aarch64/reloc-insn.d b/gas/testsuite/gas/aarch64/reloc-insn.d new file mode 100644 index 0000000..ce37b92 --- /dev/null +++ b/gas/testsuite/gas/aarch64/reloc-insn.d @@ -0,0 +1,157 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: d281ffe0 movz x0, #0xfff + 4: 9280ffe0 movn x0, #0x7ff + 8: d2a24681 movz x1, #0x1234, lsl #16 + c: f28acf01 movk x1, #0x5678 + 10: 92a00001 movn x1, #0x0, lsl #16 + 14: f29f0001 movk x1, #0xf800 + 18: d2d55761 movz x1, #0xaabb, lsl #32 + 1c: f2b99ba1 movk x1, #0xccdd, lsl #16 + 20: f29ddfe1 movk x1, #0xeeff + 24: d2c00001 movz x1, #0x0, lsl #32 + 24: R_AARCH64_MOVW_UABS_G2 \.data\+0x8 + 28: f2a00001 movk x1, #0x0, lsl #16 + 28: R_AARCH64_MOVW_UABS_G1_NC \.data\+0x8 + 2c: f2800001 movk x1, #0x0 + 2c: R_AARCH64_MOVW_UABS_G0_NC \.data\+0x8 + 30: d2c00001 movz x1, #0x0, lsl #32 + 30: R_AARCH64_MOVW_UABS_G2 xdata + 34: f2a00001 movk x1, #0x0, lsl #16 + 34: R_AARCH64_MOVW_UABS_G1_NC xdata + 38: f2800001 movk x1, #0x0 + 38: R_AARCH64_MOVW_UABS_G0_NC xdata + 3c: 92c00001 movn x1, #0x0, lsl #32 + 40: f2bfffe1 movk x1, #0xffff, lsl #16 + 44: f29f0001 movk x1, #0xf800 + 48: d2ffffe1 movz x1, #0xffff, lsl #48 + 4c: f2dfffe1 movk x1, #0xffff, lsl #32 + 50: f2bfffe1 movk x1, #0xffff, lsl #16 + 54: f29f0001 movk x1, #0xf800 + 58: d2ffdb81 movz x1, #0xfedc, lsl #48 + 5c: f2d75301 movk x1, #0xba98, lsl #32 + 60: f2aeca81 movk x1, #0x7654, lsl #16 + 64: f2864201 movk x1, #0x3210 + 68: 58000920 ldr x0, 18c <llit> + 6c: 58000001 ldr x1, 0 <func> + 6c: R_AARCH64_LD_PREL_LO19 \.data\+0x8 + 70: 58000002 ldr x2, 0 <xdata> + 70: R_AARCH64_LD_PREL_LO19 xdata\+0xc + 74: 100008c0 adr x0, 18c <llit> + 78: 10000001 adr x1, 0 <func> + 78: R_AARCH64_ADR_PREL_LO21 \.data\+0x8 + 7c: 10000002 adr x2, 0 <func> + 7c: R_AARCH64_ADR_PREL_LO21 \.data\+0x1000 + 80: 10000003 adr x3, 0 <xlit> + 80: R_AARCH64_ADR_PREL_LO21 xlit + 84: 10000004 adr x4, 0 <xdata> + 84: R_AARCH64_ADR_PREL_LO21 xdata\+0x10 + 88: 10000005 adr x5, 0 <xdata> + 88: R_AARCH64_ADR_PREL_LO21 xdata\+0xff8 + 8c: 90000000 adrp x0, 0 <func> + 8c: R_AARCH64_ADR_PREL_PG_HI21 \.text\+0x18c + 90: 90000001 adrp x1, 0 <func> + 90: R_AARCH64_ADR_PREL_PG_HI21 \.data\+0x8 + 94: 90000002 adrp x2, 0 <func> + 94: R_AARCH64_ADR_PREL_PG_HI21 \.data\+0x1000 + 98: 90000003 adrp x3, 0 <xlit> + 98: R_AARCH64_ADR_PREL_PG_HI21 xlit + 9c: 90000004 adrp x4, 0 <xdata> + 9c: R_AARCH64_ADR_PREL_PG_HI21 xdata\+0x10 + a0: 90000005 adrp x5, 0 <xdata> + a0: R_AARCH64_ADR_PREL_PG_HI21 xdata\+0xff8 + a4: 90000000 adrp x0, 0 <func> + a4: R_AARCH64_ADR_PREL_PG_HI21 \.text\+0x18c + a8: 90000001 adrp x1, 0 <func> + a8: R_AARCH64_ADR_PREL_PG_HI21 \.data\+0x8 + ac: 90000002 adrp x2, 0 <func> + ac: R_AARCH64_ADR_PREL_PG_HI21 \.data\+0x1000 + b0: 90000003 adrp x3, 0 <xlit> + b0: R_AARCH64_ADR_PREL_PG_HI21 xlit + b4: 90000004 adrp x4, 0 <xdata> + b4: R_AARCH64_ADR_PREL_PG_HI21 xdata\+0x10 + b8: 90000005 adrp x5, 0 <xdata> + b8: R_AARCH64_ADR_PREL_PG_HI21 xdata\+0xff8 + bc: 91000000 add x0, x0, #0x0 + bc: R_AARCH64_ADD_ABS_LO12_NC \.text\+0x18c + c0: 91000021 add x1, x1, #0x0 + c0: R_AARCH64_ADD_ABS_LO12_NC \.data\+0x8 + c4: 91000042 add x2, x2, #0x0 + c4: R_AARCH64_ADD_ABS_LO12_NC \.data\+0x1000 + c8: 91000063 add x3, x3, #0x0 + c8: R_AARCH64_ADD_ABS_LO12_NC xlit + cc: 91000084 add x4, x4, #0x0 + cc: R_AARCH64_ADD_ABS_LO12_NC xdata\+0x10 + d0: 910000a5 add x5, x5, #0x0 + d0: R_AARCH64_ADD_ABS_LO12_NC xdata\+0xff8 + d4: 913ffcc6 add x6, x6, #0xfff + d8: 39400000 ldrb w0, \[x0\] + d8: R_AARCH64_LDST8_ABS_LO12_NC \.text\+0x18c + dc: 39400021 ldrb w1, \[x1\] + dc: R_AARCH64_LDST8_ABS_LO12_NC \.data\+0x8 + e0: 39400042 ldrb w2, \[x2\] + e0: R_AARCH64_LDST8_ABS_LO12_NC \.data\+0x1000 + e4: 39400063 ldrb w3, \[x3\] + e4: R_AARCH64_LDST8_ABS_LO12_NC xlit + e8: 39400084 ldrb w4, \[x4\] + e8: R_AARCH64_LDST8_ABS_LO12_NC xdata\+0x10 + ec: 394000a5 ldrb w5, \[x5\] + ec: R_AARCH64_LDST8_ABS_LO12_NC xdata\+0xff8 + f0: 397ffcc6 ldrb w6, \[x6,#4095\] + f4: 360004e0 tbz w0, #0, 190 <lab> + f8: b6f80001 tbz x1, #63, 0 <xlab> + f8: R_AARCH64_TSTBR14 xlab + fc: 374004a2 tbnz w2, #8, 190 <lab> + 100: b7780002 tbnz x2, #47, 0 <xlab> + 100: R_AARCH64_TSTBR14 xlab + 104: 54000460 b\.eq 190 <lab> + 108: 54000000 b\.eq 0 <xlab> + 108: R_AARCH64_CONDBR19 xlab + 10c: b4000420 cbz x0, 190 <lab> + 110: b500001e cbnz x30, 0 <xlab> + 110: R_AARCH64_CONDBR19 xlab + 114: 1400001f b 190 <lab> + 118: 14000000 b 0 <xlab> + 118: R_AARCH64_JUMP26 xlab + 11c: 9400001d bl 190 <lab> + 120: 94000000 bl 0 <xlab> + 120: R_AARCH64_CALL26 xlab + 124: d2e24680 movz x0, #0x1234, lsl #48 + 128: f2cacf00 movk x0, #0x5678, lsl #32 + 12c: f2b35780 movk x0, #0x9abc, lsl #16 + 130: f29bde00 movk x0, #0xdef0 + 134: d2ffdb80 movz x0, #0xfedc, lsl #48 + 138: f2d75300 movk x0, #0xba98, lsl #32 + 13c: f2aeca80 movk x0, #0x7654, lsl #16 + 140: f2864200 movk x0, #0x3210 + 144: b2440c00 orr x0, x0, #0xf000000000000000 + 148: 927cec00 and x0, x0, #0xfffffffffffffff0 + 14c: 121c6c00 and w0, w0, #0xfffffff0 + 150: d1200000 sub x0, x0, #0x800 + 154: 913ffc00 add x0, x0, #0xfff + 158: 91200000 add x0, x0, #0x800 + 15c: d13ffc00 sub x0, x0, #0xfff + 160: d41fffe1 svc #0xffff + 164: f8500420 ldr x0, \[x1\],#-256 + 168: f8500c20 ldr x0, \[x1,#-256\]! + 16c: f8500020 ldr x0, \[x1,#-256\] + 170: f97ffc20 ldr x0, \[x1,#32760\] + 174: 79400000 ldrh w0, \[x0\] + 174: R_AARCH64_LDST16_ABS_LO12_NC \.text\+0x18c + 178: b9400021 ldr w1, \[x1\] + 178: R_AARCH64_LDST32_ABS_LO12_NC \.data\+0x8 + 17c: f9400042 ldr x2, \[x2\] + 17c: R_AARCH64_LDST64_ABS_LO12_NC \.data\+0x1000 + 180: 3dc00063 ldr q3, \[x3\] + 180: R_AARCH64_LDST128_ABS_LO12_NC xlit + 184: f98000f0 prfm pstl1keep, \[x7\] + 184: R_AARCH64_LDST64_ABS_LO12_NC \.data\+0x100c + 188: d65f03c0 ret + +000000000000018c <llit>: + 18c: deadf00d \.word 0xdeadf00d diff --git a/gas/testsuite/gas/aarch64/reloc-insn.s b/gas/testsuite/gas/aarch64/reloc-insn.s new file mode 100644 index 0000000..d6e6aa6 --- /dev/null +++ b/gas/testsuite/gas/aarch64/reloc-insn.s @@ -0,0 +1,203 @@ +// Test file for AArch64 GAS -- instructions with relocation operators. + +func: + // BFD_RELOC_AARCH64_MOVW_G0 + // immediate + movz x0,#:abs_g0:u12 + + // BFD_RELOC_AARCH64_MOVW_G0_S + // immediate + movz x0,#:abs_g0_s:s12 + + // BFD_RELOC_AARCH64_MOVW_G1 + // immediate + movz x1,#:abs_g1:u32 + movk x1,#:abs_g0_nc:u32 + + // BFD_RELOC_AARCH64_MOVW_G1_S + // immediate + movz x1,#:abs_g1_s:s12 + movk x1,#:abs_g0_nc:s12 + + // BFD_RELOC_AARCH64_MOVW_G2 + // immediate + movz x1,#:abs_g2:u48 + movk x1,#:abs_g1_nc:u48 + movk x1,#:abs_g0_nc:u48 + + // local data (section relative) + movz x1,#:abs_g2:ldata + movk x1,#:abs_g1_nc:ldata + movk x1,#:abs_g0_nc:ldata + + // external data + movz x1,#:abs_g2:xdata + movk x1,#:abs_g1_nc:xdata + movk x1,#:abs_g0_nc:xdata + + // BFD_RELOC_AARCH64_MOVW_G2_S + // immediate + movz x1,#:abs_g2_s:s12 + movk x1,#:abs_g1_nc:s12 + movk x1,#:abs_g0_nc:s12 + + // BFD_RELOC_AARCH64_MOVW_G3 + // immediate + movz x1,#:abs_g3:s12 + movk x1,#:abs_g2_nc:s12 + movk x1,#:abs_g1_nc:s12 + movk x1,#:abs_g0_nc:s12 + + movz x1,#:abs_g3:u64 + movk x1,#:abs_g2_nc:u64 + movk x1,#:abs_g1_nc:u64 + movk x1,#:abs_g0_nc:u64 + + // BFD_RELOC_AARCH64_LD_LO19_PCREL + ldr x0,llit + ldr x1,ldata + ldr x2,xdata+12 + + // BFD_RELOC_AARCH64_ADR_LO21_PCREL + // AARCH64 ADR instruction, holding a simple 21 bit pc-relative byte offset. + adr x0,llit + adr x1,ldata + adr x2,ldata+4088 + adr x3,xlit + adr x4,xdata+16 + adr x5,xdata+4088 + + // BFD_RELOC_AARCH64_ADR_HI21_PCREL + adrp x0,llit + adrp x1,ldata + adrp x2,ldata+4088 + adrp x3,xlit + adrp x4,xdata+16 + adrp x5,xdata+4088 + + // BFD_RELOC_AARCH64_ADR_HI21_PCREL + adrp x0,:pg_hi21:llit + adrp x1,:pg_hi21:ldata + adrp x2,:pg_hi21:ldata+4088 + adrp x3,:pg_hi21:xlit + adrp x4,:pg_hi21:xdata+16 + adrp x5,:pg_hi21:xdata+4088 + + // BFD_RELOC_AARCH64_ADD_LO12 + add x0,x0,#:lo12:llit + add x1,x1,#:lo12:ldata + add x2,x2,#:lo12:ldata+4088 + add x3,x3,#:lo12:xlit + add x4,x4,#:lo12:xdata+16 + add x5,x5,#:lo12:xdata+4088 + add x6,x6,u12 + + // BFD_RELOC_AARCH64_LDST8_LO12 + ldrb w0, [x0, #:lo12:llit] + ldrb w1, [x1, #:lo12:ldata] + ldrb w2, [x2, #:lo12:ldata+4088] + ldrb w3, [x3, #:lo12:xlit] + ldrb w4, [x4, #:lo12:xdata+16] + ldrb w5, [x5, #:lo12:xdata+4088] + ldrb w6, [x6, u12] + + // BFD_RELOC_AARCH64_TSTBR14 + tbz x0,#0,lab + tbz x1,#63,xlab + tbnz x2,#8,lab + tbnz x2,#47,xlab + + // BFD_RELOC_AARCH64_BRANCH19 + b.eq lab + b.eq xlab + + // BFD_RELOC_AARCH64_COMPARE19 + cbz x0,lab + cbnz x30,xlab + + // BFD_RELOC_AARCH64_JUMP26 + b lab + b xlab + + // BFD_RELOC_AARCH64_CALL26 + bl lab + bl xlab + + // BFD_RELOC_AARCH64_MOVW_IMM + movz x0, #0x1234, lsl #48 + movk x0, #0x5678, lsl #32 + movk x0, #0x9abc, lsl #16 + movk x0, #0xdef0, lsl #0 + + movz x0, (u64>>48)&0xffff, lsl #48 + movk x0, (u64>>32)&0xffff, lsl #32 + movk x0, (u64>>16)&0xffff, lsl #16 + movk x0, (u64>>0)&0xffff, lsl #0 + + // BFD_RELOC_AARCH64_BIT_IMM + orr x0,x0,bit1 + and x0,x0,bit2 + and w0,w0,bit2 + + // BFD_RELOC_AARCH64_ADD_U12 + add x0,x0,s12 + add x0,x0,u12 + sub x0,x0,s12 + sub x0,x0,u12 + + // BFD_RELOC_AARCH64_EXC_U16 + svc u16 + + // BFD_RELOC_AARCH64_LDST_I9 + // Signed 9-bit byte offset for load/store single item with writeback options. + // Used internally by the AARCH64 assembler and not (currently) + // written to any object files. + ldr x0,[x1],#s9 + ldr x0,[x1,#s9]! + + // No writeback, but a negative offset should cause this + // to be converted to a LDST_I9 relocation + ldr x0,[x1,#s9] + + // BFD_RELOC_AARCH64_LDST_U12 + // Unsigned 12-bit byte offset for load/store single item without options. + // Used internally by the AARCH64 assembler and not (currently) + // written to any object files. + ldr x0,[x1,#(u12*8)] + + // BFD_RELOC_AARCH64_LDST16_LO12 + ldrh w0, [x0, #:lo12:llit] + // BFD_RELOC_AARCH64_LDST32_LO12 + ldr w1, [x1, #:lo12:ldata] + // BFD_RELOC_AARCH64_LDST64_LO12 + ldr x2, [x2, #:lo12:ldata+4088] + // BFD_RELOC_AARCH64_LDST128_LO12 + ldr q3, [x3, #:lo12:xlit] + + // BFD_RELOC_AARCH64_LDST64_LO12 + prfm pstl1keep, [x7, #:lo12:ldata+4100] + + ret + +llit: .word 0xdeadf00d + +lab: + + .data + .align 8 + +dummy: .xword 0 + +ldata: .xword 0x1122334455667788 + .space 8184 + +.set u8, 248 +.set s9, -256 +.set s12, -2048 +.set u12, 4095 +.set u16, 65535 +.set u32, 0x12345678 +.set u48, 0xaabbccddeeff +.set u64, 0xfedcba9876543210 +.set bit1,0xf000000000000000 +.set bit2,~0xf diff --git a/gas/testsuite/gas/aarch64/shifted.d b/gas/testsuite/gas/aarch64/shifted.d new file mode 100644 index 0000000..5c68ddc --- /dev/null +++ b/gas/testsuite/gas/aarch64/shifted.d @@ -0,0 +1,734 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 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 diff --git a/gas/testsuite/gas/aarch64/shifted.s b/gas/testsuite/gas/aarch64/shifted.s new file mode 100644 index 0000000..efa7eeb --- /dev/null +++ b/gas/testsuite/gas/aarch64/shifted.s @@ -0,0 +1,170 @@ +/* shifted.s Test file for AArch64 add-substract (extended reg.) and + add-substract (shifted reg.) instructions. + + Copyright 2011, 2012 Free Software Foundation, Inc. + Contributed by ARM Ltd. + + This file is part of GAS. + + GAS 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. + + GAS 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; see the file COPYING3. If not, + see <http://www.gnu.org/licenses/>. */ + + .macro op3_64 op, shift + \op x1, x2, x3, \shift #0 + \op x1, x2, x3, \shift #1 + \op x1, x2, x3, \shift #3 + \op x1, x2, x3, \shift #7 + \op x1, x2, x3, \shift #15 + \op x1, x2, x3, \shift #31 + \op x1, x2, x3, \shift #63 + .endm + + .macro op3_32 op, shift + \op w1, w2, w3, \shift #0 + \op w1, w2, w3, \shift #1 + \op w1, w2, w3, \shift #3 + \op w1, w2, w3, \shift #7 + \op w1, w2, w3, \shift #15 + \op w1, w2, w3, \shift #31 + .endm + + .macro op3_64x op, shift + \op x1, x2, w3, \shift + \op x1, x2, w3, \shift #1 + \op x1, x2, w3, \shift #2 + \op x1, x2, w3, \shift #3 + \op x1, x2, w3, \shift #4 + .endm + + .macro op3_64x_more op, shift + \op x1, x2, x3, \shift + \op x1, x2, x3, \shift #1 + \op x1, x2, x3, \shift #2 + \op x1, x2, x3, \shift #3 + \op x1, x2, x3, \shift #4 + .endm + + .macro op3_32x op, shift + \op w1, w2, w3, \shift + \op w1, w2, w3, \shift #1 + \op w1, w2, w3, \shift #2 + \op w1, w2, w3, \shift #3 + \op w1, w2, w3, \shift #4 + .endm + + .macro op2_64 op, shift + \op x2, x3, \shift #0 + \op x2, x3, \shift #1 + \op x2, x3, \shift #3 + \op x2, x3, \shift #7 + \op x2, x3, \shift #15 + \op x2, x3, \shift #31 + \op x2, x3, \shift #63 + .endm + + .macro op2_32 op, shift + \op w2, w3, \shift #0 + \op w2, w3, \shift #1 + \op w2, w3, \shift #3 + \op w2, w3, \shift #7 + \op w2, w3, \shift #15 + \op w2, w3, \shift #31 + .endm + + .macro op2_64x op, shift + \op x2, w3, \shift + \op x2, w3, \shift #1 + \op x2, w3, \shift #2 + \op x2, w3, \shift #3 + \op x2, w3, \shift #4 + .endm + + .macro op2_32x op, shift + \op w2, w3, \shift + \op w2, w3, \shift #1 + \op w2, w3, \shift #2 + \op w2, w3, \shift #3 + \op w2, w3, \shift #4 + .endm + + .macro logical op + op3_64 \op, lsl + op3_64 \op, lsr + op3_64 \op, asr + op3_64 \op, ror + op3_32 \op, lsl + op3_32 \op, lsr + op3_32 \op, asr + op3_32 \op, ror + .endm + + .macro arith3 op + op3_64 \op, lsl + op3_64 \op, lsr + op3_64 \op, asr + op3_64x \op, uxtb + op3_64x \op, uxth + op3_64x \op, uxtw + op3_64x_more \op, uxtx + op3_64x \op, sxtb + op3_64x \op, sxth + op3_64x \op, sxtw + op3_64x_more \op, sxtx + op3_32 \op, lsl + op3_32 \op, lsr + op3_32 \op, asr + op3_32x \op, uxtb + op3_32x \op, uxth + op3_32x \op, sxtb + op3_32x \op, sxth + .endm + + .macro arith2 op, if_ext=1 + op2_64 \op, lsl + op2_64 \op, lsr + op2_64 \op, asr + .if \if_ext + op2_64x \op, uxtb + op2_64x \op, uxth + op2_64x \op, uxtw + op2_64x \op, sxtb + op2_64x \op, sxth + op2_64x \op, sxtw + .endif + op2_32 \op, lsl + op2_32 \op, lsr + op2_32 \op, asr + .if \if_ext + op2_32x \op, uxtb + op2_32x \op, uxth + op2_32x \op, sxtb + op2_32x \op, sxth + .endif + .endm + +func: + logical orr + logical and + logical eor + + logical bic + logical orn + logical eon + + arith3 add + arith3 sub + + arith2 neg, 0 + arith2 cmp + arith2 cmn diff --git a/gas/testsuite/gas/aarch64/symbol.d b/gas/testsuite/gas/aarch64/symbol.d new file mode 100644 index 0000000..3d8b480 --- /dev/null +++ b/gas/testsuite/gas/aarch64/symbol.d @@ -0,0 +1,14 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: b9400401 ldr w1, \[x0,#4\] + 4: b9400401 ldr w1, \[x0,#4\] + 8: b9401001 ldr w1, \[x0,#16\] + c: b9401001 ldr w1, \[x0,#16\] + 10: 8b020020 add x0, x1, x2 + 14: 91002820 add x0, x1, #0xa + 18: d1002c20 sub x0, x1, #0xb diff --git a/gas/testsuite/gas/aarch64/symbol.s b/gas/testsuite/gas/aarch64/symbol.s new file mode 100644 index 0000000..35d10c0 --- /dev/null +++ b/gas/testsuite/gas/aarch64/symbol.s @@ -0,0 +1,25 @@ +// symbol.s Test file for the parsing of symbols + + .struct 0 +$codesize: + .space 4 +$CPU_mode: + .space 4 +$entry_point: + .space 8 +CPU_mode: + .space 4 + +.text + ldr w1, [x0, #$CPU_mode] + ldr w1, [x0, $CPU_mode] + ldr w1, [x0, #CPU_mode] + ldr w1, [x0, CPU_mode] + + // Symbol that has the same name as that of a register + // is allowed as long as there is no ambiguity. +.set x2, 10 + add x0, x1, x2 + add x0, x1, #x2 +.set s2, 11 + sub x0, x1, s2 diff --git a/gas/testsuite/gas/aarch64/sysreg-1.d b/gas/testsuite/gas/aarch64/sysreg-1.d new file mode 100644 index 0000000..684bf0b --- /dev/null +++ b/gas/testsuite/gas/aarch64/sysreg-1.d @@ -0,0 +1,4273 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: d5380587 mrs x7, id_aa64afr0_el1 + 4: d53805a7 mrs x7, id_aa64afr1_el1 + 8: d5380347 mrs x7, mvfr2_el1 + c: d51b4527 msr dlr_el0, x7 + 10: d53b4527 mrs x7, dlr_el0 + 14: d51b4507 msr dspsr_el0, x7 + 18: d53b4507 mrs x7, dspsr_el0 + 1c: d51e1127 msr sder32_el3, x7 + 20: d53e1127 mrs x7, sder32_el3 + 24: d51e1327 msr mdcr_el3, x7 + 28: d53e1327 mrs x7, mdcr_el3 + 2c: d5100207 msr mdccint_el1, x7 + 30: d5300207 mrs x7, mdccint_el1 + 34: d5140707 msr dbgvcr32_el2, x7 + 38: d5340707 mrs x7, dbgvcr32_el2 + 3c: d51c5307 msr fpexc32_el2, x7 + 40: d53c5307 mrs x7, fpexc32_el2 + 44: d5120007 msr teecr32_el1, x7 + 48: d5320007 mrs x7, teecr32_el1 + 4c: d5121007 msr teehbr32_el1, x7 + 50: d5321007 mrs x7, teehbr32_el1 + 54: d51be207 msr cntp_tval_el0, x7 + 58: d53be207 mrs x7, cntp_tval_el0 + 5c: d51be227 msr cntp_ctl_el0, x7 + 60: d53be227 mrs x7, cntp_ctl_el0 + 64: d51be247 msr cntp_cval_el0, x7 + 68: d53be247 mrs x7, cntp_cval_el0 + 6c: d51fe207 msr cntps_tval_el1, x7 + 70: d53fe207 mrs x7, cntps_tval_el1 + 74: d51fe227 msr cntps_ctl_el1, x7 + 78: d53fe227 mrs x7, cntps_ctl_el1 + 7c: d51fe247 msr cntps_cval_el1, x7 + 80: d53fe247 mrs x7, cntps_cval_el1 + 84: d51b9d07 msr pmccntr_el0, x7 + 88: d53b9d07 mrs x7, pmccntr_el0 + 8c: d51be807 msr pmevcntr0_el0, x7 + 90: d53be807 mrs x7, pmevcntr0_el0 + 94: d51be827 msr pmevcntr1_el0, x7 + 98: d53be827 mrs x7, pmevcntr1_el0 + 9c: d51be847 msr pmevcntr2_el0, x7 + a0: d53be847 mrs x7, pmevcntr2_el0 + a4: d51be867 msr pmevcntr3_el0, x7 + a8: d53be867 mrs x7, pmevcntr3_el0 + ac: d51be887 msr pmevcntr4_el0, x7 + b0: d53be887 mrs x7, pmevcntr4_el0 + b4: d51be8a7 msr pmevcntr5_el0, x7 + b8: d53be8a7 mrs x7, pmevcntr5_el0 + bc: d51be8c7 msr pmevcntr6_el0, x7 + c0: d53be8c7 mrs x7, pmevcntr6_el0 + c4: d51be8e7 msr pmevcntr7_el0, x7 + c8: d53be8e7 mrs x7, pmevcntr7_el0 + cc: d51be907 msr pmevcntr8_el0, x7 + d0: d53be907 mrs x7, pmevcntr8_el0 + d4: d51be927 msr pmevcntr9_el0, x7 + d8: d53be927 mrs x7, pmevcntr9_el0 + dc: d51be947 msr pmevcntr10_el0, x7 + e0: d53be947 mrs x7, pmevcntr10_el0 + e4: d51be967 msr pmevcntr11_el0, x7 + e8: d53be967 mrs x7, pmevcntr11_el0 + ec: d51be987 msr pmevcntr12_el0, x7 + f0: d53be987 mrs x7, pmevcntr12_el0 + f4: d51be9a7 msr pmevcntr13_el0, x7 + f8: d53be9a7 mrs x7, pmevcntr13_el0 + fc: d51be9c7 msr pmevcntr14_el0, x7 + 100: d53be9c7 mrs x7, pmevcntr14_el0 + 104: d51be9e7 msr pmevcntr15_el0, x7 + 108: d53be9e7 mrs x7, pmevcntr15_el0 + 10c: d51bea07 msr pmevcntr16_el0, x7 + 110: d53bea07 mrs x7, pmevcntr16_el0 + 114: d51bea27 msr pmevcntr17_el0, x7 + 118: d53bea27 mrs x7, pmevcntr17_el0 + 11c: d51bea47 msr pmevcntr18_el0, x7 + 120: d53bea47 mrs x7, pmevcntr18_el0 + 124: d51bea67 msr pmevcntr19_el0, x7 + 128: d53bea67 mrs x7, pmevcntr19_el0 + 12c: d51bea87 msr pmevcntr20_el0, x7 + 130: d53bea87 mrs x7, pmevcntr20_el0 + 134: d51beaa7 msr pmevcntr21_el0, x7 + 138: d53beaa7 mrs x7, pmevcntr21_el0 + 13c: d51beac7 msr pmevcntr22_el0, x7 + 140: d53beac7 mrs x7, pmevcntr22_el0 + 144: d51beae7 msr pmevcntr23_el0, x7 + 148: d53beae7 mrs x7, pmevcntr23_el0 + 14c: d51beb07 msr pmevcntr24_el0, x7 + 150: d53beb07 mrs x7, pmevcntr24_el0 + 154: d51beb27 msr pmevcntr25_el0, x7 + 158: d53beb27 mrs x7, pmevcntr25_el0 + 15c: d51beb47 msr pmevcntr26_el0, x7 + 160: d53beb47 mrs x7, pmevcntr26_el0 + 164: d51beb67 msr pmevcntr27_el0, x7 + 168: d53beb67 mrs x7, pmevcntr27_el0 + 16c: d51beb87 msr pmevcntr28_el0, x7 + 170: d53beb87 mrs x7, pmevcntr28_el0 + 174: d51beba7 msr pmevcntr29_el0, x7 + 178: d53beba7 mrs x7, pmevcntr29_el0 + 17c: d51bebc7 msr pmevcntr30_el0, x7 + 180: d53bebc7 mrs x7, pmevcntr30_el0 + 184: d51bec07 msr pmevtyper0_el0, x7 + 188: d53bec07 mrs x7, pmevtyper0_el0 + 18c: d51bec27 msr pmevtyper1_el0, x7 + 190: d53bec27 mrs x7, pmevtyper1_el0 + 194: d51bec47 msr pmevtyper2_el0, x7 + 198: d53bec47 mrs x7, pmevtyper2_el0 + 19c: d51bec67 msr pmevtyper3_el0, x7 + 1a0: d53bec67 mrs x7, pmevtyper3_el0 + 1a4: d51bec87 msr pmevtyper4_el0, x7 + 1a8: d53bec87 mrs x7, pmevtyper4_el0 + 1ac: d51beca7 msr pmevtyper5_el0, x7 + 1b0: d53beca7 mrs x7, pmevtyper5_el0 + 1b4: d51becc7 msr pmevtyper6_el0, x7 + 1b8: d53becc7 mrs x7, pmevtyper6_el0 + 1bc: d51bece7 msr pmevtyper7_el0, x7 + 1c0: d53bece7 mrs x7, pmevtyper7_el0 + 1c4: d51bed07 msr pmevtyper8_el0, x7 + 1c8: d53bed07 mrs x7, pmevtyper8_el0 + 1cc: d51bed27 msr pmevtyper9_el0, x7 + 1d0: d53bed27 mrs x7, pmevtyper9_el0 + 1d4: d51bed47 msr pmevtyper10_el0, x7 + 1d8: d53bed47 mrs x7, pmevtyper10_el0 + 1dc: d51bed67 msr pmevtyper11_el0, x7 + 1e0: d53bed67 mrs x7, pmevtyper11_el0 + 1e4: d51bed87 msr pmevtyper12_el0, x7 + 1e8: d53bed87 mrs x7, pmevtyper12_el0 + 1ec: d51beda7 msr pmevtyper13_el0, x7 + 1f0: d53beda7 mrs x7, pmevtyper13_el0 + 1f4: d51bedc7 msr pmevtyper14_el0, x7 + 1f8: d53bedc7 mrs x7, pmevtyper14_el0 + 1fc: d51bede7 msr pmevtyper15_el0, x7 + 200: d53bede7 mrs x7, pmevtyper15_el0 + 204: d51bee07 msr pmevtyper16_el0, x7 + 208: d53bee07 mrs x7, pmevtyper16_el0 + 20c: d51bee27 msr pmevtyper17_el0, x7 + 210: d53bee27 mrs x7, pmevtyper17_el0 + 214: d51bee47 msr pmevtyper18_el0, x7 + 218: d53bee47 mrs x7, pmevtyper18_el0 + 21c: d51bee67 msr pmevtyper19_el0, x7 + 220: d53bee67 mrs x7, pmevtyper19_el0 + 224: d51bee87 msr pmevtyper20_el0, x7 + 228: d53bee87 mrs x7, pmevtyper20_el0 + 22c: d51beea7 msr pmevtyper21_el0, x7 + 230: d53beea7 mrs x7, pmevtyper21_el0 + 234: d51beec7 msr pmevtyper22_el0, x7 + 238: d53beec7 mrs x7, pmevtyper22_el0 + 23c: d51beee7 msr pmevtyper23_el0, x7 + 240: d53beee7 mrs x7, pmevtyper23_el0 + 244: d51bef07 msr pmevtyper24_el0, x7 + 248: d53bef07 mrs x7, pmevtyper24_el0 + 24c: d51bef27 msr pmevtyper25_el0, x7 + 250: d53bef27 mrs x7, pmevtyper25_el0 + 254: d51bef47 msr pmevtyper26_el0, x7 + 258: d53bef47 mrs x7, pmevtyper26_el0 + 25c: d51bef67 msr pmevtyper27_el0, x7 + 260: d53bef67 mrs x7, pmevtyper27_el0 + 264: d51bef87 msr pmevtyper28_el0, x7 + 268: d53bef87 mrs x7, pmevtyper28_el0 + 26c: d51befa7 msr pmevtyper29_el0, x7 + 270: d53befa7 mrs x7, pmevtyper29_el0 + 274: d51befc7 msr pmevtyper30_el0, x7 + 278: d53befc7 mrs x7, pmevtyper30_el0 + 27c: d51befe7 msr pmccfiltr_el0, x7 + 280: d53befe7 mrs x7, pmccfiltr_el0 + 284: d51bd067 msr tpidrro_el0, x7 + 288: d53bd067 mrs x7, tpidrro_el0 + 28c: d51bd047 msr tpidr_el0, x7 + 290: d53bd047 mrs x7, tpidr_el0 + 294: d51be007 msr cntfrq_el0, x7 + 298: d53be007 mrs x7, cntfrq_el0 + 29c: d518b00f msr s3_0_c11_c0_0, x15 + 2a0: d538b00f mrs x15, s3_0_c11_c0_0 + 2a4: d518b02f msr s3_0_c11_c0_1, x15 + 2a8: d538b02f mrs x15, s3_0_c11_c0_1 + 2ac: d518b04f msr s3_0_c11_c0_2, x15 + 2b0: d538b04f mrs x15, s3_0_c11_c0_2 + 2b4: d518b06f msr s3_0_c11_c0_3, x15 + 2b8: d538b06f mrs x15, s3_0_c11_c0_3 + 2bc: d518b08f msr s3_0_c11_c0_4, x15 + 2c0: d538b08f mrs x15, s3_0_c11_c0_4 + 2c4: d518b0af msr s3_0_c11_c0_5, x15 + 2c8: d538b0af mrs x15, s3_0_c11_c0_5 + 2cc: d518b0cf msr s3_0_c11_c0_6, x15 + 2d0: d538b0cf mrs x15, s3_0_c11_c0_6 + 2d4: d518b0ef msr s3_0_c11_c0_7, x15 + 2d8: d538b0ef mrs x15, s3_0_c11_c0_7 + 2dc: d518b10f msr s3_0_c11_c1_0, x15 + 2e0: d538b10f mrs x15, s3_0_c11_c1_0 + 2e4: d518b12f msr s3_0_c11_c1_1, x15 + 2e8: d538b12f mrs x15, s3_0_c11_c1_1 + 2ec: d518b14f msr s3_0_c11_c1_2, x15 + 2f0: d538b14f mrs x15, s3_0_c11_c1_2 + 2f4: d518b16f msr s3_0_c11_c1_3, x15 + 2f8: d538b16f mrs x15, s3_0_c11_c1_3 + 2fc: d518b18f msr s3_0_c11_c1_4, x15 + 300: d538b18f mrs x15, s3_0_c11_c1_4 + 304: d518b1af msr s3_0_c11_c1_5, x15 + 308: d538b1af mrs x15, s3_0_c11_c1_5 + 30c: d518b1cf msr s3_0_c11_c1_6, x15 + 310: d538b1cf mrs x15, s3_0_c11_c1_6 + 314: d518b1ef msr s3_0_c11_c1_7, x15 + 318: d538b1ef mrs x15, s3_0_c11_c1_7 + 31c: d518b20f msr s3_0_c11_c2_0, x15 + 320: d538b20f mrs x15, s3_0_c11_c2_0 + 324: d518b22f msr s3_0_c11_c2_1, x15 + 328: d538b22f mrs x15, s3_0_c11_c2_1 + 32c: d518b24f msr s3_0_c11_c2_2, x15 + 330: d538b24f mrs x15, s3_0_c11_c2_2 + 334: d518b26f msr s3_0_c11_c2_3, x15 + 338: d538b26f mrs x15, s3_0_c11_c2_3 + 33c: d518b28f msr s3_0_c11_c2_4, x15 + 340: d538b28f mrs x15, s3_0_c11_c2_4 + 344: d518b2af msr s3_0_c11_c2_5, x15 + 348: d538b2af mrs x15, s3_0_c11_c2_5 + 34c: d518b2cf msr s3_0_c11_c2_6, x15 + 350: d538b2cf mrs x15, s3_0_c11_c2_6 + 354: d518b2ef msr s3_0_c11_c2_7, x15 + 358: d538b2ef mrs x15, s3_0_c11_c2_7 + 35c: d518b30f msr s3_0_c11_c3_0, x15 + 360: d538b30f mrs x15, s3_0_c11_c3_0 + 364: d518b32f msr s3_0_c11_c3_1, x15 + 368: d538b32f mrs x15, s3_0_c11_c3_1 + 36c: d518b34f msr s3_0_c11_c3_2, x15 + 370: d538b34f mrs x15, s3_0_c11_c3_2 + 374: d518b36f msr s3_0_c11_c3_3, x15 + 378: d538b36f mrs x15, s3_0_c11_c3_3 + 37c: d518b38f msr s3_0_c11_c3_4, x15 + 380: d538b38f mrs x15, s3_0_c11_c3_4 + 384: d518b3af msr s3_0_c11_c3_5, x15 + 388: d538b3af mrs x15, s3_0_c11_c3_5 + 38c: d518b3cf msr s3_0_c11_c3_6, x15 + 390: d538b3cf mrs x15, s3_0_c11_c3_6 + 394: d518b3ef msr s3_0_c11_c3_7, x15 + 398: d538b3ef mrs x15, s3_0_c11_c3_7 + 39c: d518b40f msr s3_0_c11_c4_0, x15 + 3a0: d538b40f mrs x15, s3_0_c11_c4_0 + 3a4: d518b42f msr s3_0_c11_c4_1, x15 + 3a8: d538b42f mrs x15, s3_0_c11_c4_1 + 3ac: d518b44f msr s3_0_c11_c4_2, x15 + 3b0: d538b44f mrs x15, s3_0_c11_c4_2 + 3b4: d518b46f msr s3_0_c11_c4_3, x15 + 3b8: d538b46f mrs x15, s3_0_c11_c4_3 + 3bc: d518b48f msr s3_0_c11_c4_4, x15 + 3c0: d538b48f mrs x15, s3_0_c11_c4_4 + 3c4: d518b4af msr s3_0_c11_c4_5, x15 + 3c8: d538b4af mrs x15, s3_0_c11_c4_5 + 3cc: d518b4cf msr s3_0_c11_c4_6, x15 + 3d0: d538b4cf mrs x15, s3_0_c11_c4_6 + 3d4: d518b4ef msr s3_0_c11_c4_7, x15 + 3d8: d538b4ef mrs x15, s3_0_c11_c4_7 + 3dc: d518b50f msr s3_0_c11_c5_0, x15 + 3e0: d538b50f mrs x15, s3_0_c11_c5_0 + 3e4: d518b52f msr s3_0_c11_c5_1, x15 + 3e8: d538b52f mrs x15, s3_0_c11_c5_1 + 3ec: d518b54f msr s3_0_c11_c5_2, x15 + 3f0: d538b54f mrs x15, s3_0_c11_c5_2 + 3f4: d518b56f msr s3_0_c11_c5_3, x15 + 3f8: d538b56f mrs x15, s3_0_c11_c5_3 + 3fc: d518b58f msr s3_0_c11_c5_4, x15 + 400: d538b58f mrs x15, s3_0_c11_c5_4 + 404: d518b5af msr s3_0_c11_c5_5, x15 + 408: d538b5af mrs x15, s3_0_c11_c5_5 + 40c: d518b5cf msr s3_0_c11_c5_6, x15 + 410: d538b5cf mrs x15, s3_0_c11_c5_6 + 414: d518b5ef msr s3_0_c11_c5_7, x15 + 418: d538b5ef mrs x15, s3_0_c11_c5_7 + 41c: d518b60f msr s3_0_c11_c6_0, x15 + 420: d538b60f mrs x15, s3_0_c11_c6_0 + 424: d518b62f msr s3_0_c11_c6_1, x15 + 428: d538b62f mrs x15, s3_0_c11_c6_1 + 42c: d518b64f msr s3_0_c11_c6_2, x15 + 430: d538b64f mrs x15, s3_0_c11_c6_2 + 434: d518b66f msr s3_0_c11_c6_3, x15 + 438: d538b66f mrs x15, s3_0_c11_c6_3 + 43c: d518b68f msr s3_0_c11_c6_4, x15 + 440: d538b68f mrs x15, s3_0_c11_c6_4 + 444: d518b6af msr s3_0_c11_c6_5, x15 + 448: d538b6af mrs x15, s3_0_c11_c6_5 + 44c: d518b6cf msr s3_0_c11_c6_6, x15 + 450: d538b6cf mrs x15, s3_0_c11_c6_6 + 454: d518b6ef msr s3_0_c11_c6_7, x15 + 458: d538b6ef mrs x15, s3_0_c11_c6_7 + 45c: d518b70f msr s3_0_c11_c7_0, x15 + 460: d538b70f mrs x15, s3_0_c11_c7_0 + 464: d518b72f msr s3_0_c11_c7_1, x15 + 468: d538b72f mrs x15, s3_0_c11_c7_1 + 46c: d518b74f msr s3_0_c11_c7_2, x15 + 470: d538b74f mrs x15, s3_0_c11_c7_2 + 474: d518b76f msr s3_0_c11_c7_3, x15 + 478: d538b76f mrs x15, s3_0_c11_c7_3 + 47c: d518b78f msr s3_0_c11_c7_4, x15 + 480: d538b78f mrs x15, s3_0_c11_c7_4 + 484: d518b7af msr s3_0_c11_c7_5, x15 + 488: d538b7af mrs x15, s3_0_c11_c7_5 + 48c: d518b7cf msr s3_0_c11_c7_6, x15 + 490: d538b7cf mrs x15, s3_0_c11_c7_6 + 494: d518b7ef msr s3_0_c11_c7_7, x15 + 498: d538b7ef mrs x15, s3_0_c11_c7_7 + 49c: d518b80f msr s3_0_c11_c8_0, x15 + 4a0: d538b80f mrs x15, s3_0_c11_c8_0 + 4a4: d518b82f msr s3_0_c11_c8_1, x15 + 4a8: d538b82f mrs x15, s3_0_c11_c8_1 + 4ac: d518b84f msr s3_0_c11_c8_2, x15 + 4b0: d538b84f mrs x15, s3_0_c11_c8_2 + 4b4: d518b86f msr s3_0_c11_c8_3, x15 + 4b8: d538b86f mrs x15, s3_0_c11_c8_3 + 4bc: d518b88f msr s3_0_c11_c8_4, x15 + 4c0: d538b88f mrs x15, s3_0_c11_c8_4 + 4c4: d518b8af msr s3_0_c11_c8_5, x15 + 4c8: d538b8af mrs x15, s3_0_c11_c8_5 + 4cc: d518b8cf msr s3_0_c11_c8_6, x15 + 4d0: d538b8cf mrs x15, s3_0_c11_c8_6 + 4d4: d518b8ef msr s3_0_c11_c8_7, x15 + 4d8: d538b8ef mrs x15, s3_0_c11_c8_7 + 4dc: d518b90f msr s3_0_c11_c9_0, x15 + 4e0: d538b90f mrs x15, s3_0_c11_c9_0 + 4e4: d518b92f msr s3_0_c11_c9_1, x15 + 4e8: d538b92f mrs x15, s3_0_c11_c9_1 + 4ec: d518b94f msr s3_0_c11_c9_2, x15 + 4f0: d538b94f mrs x15, s3_0_c11_c9_2 + 4f4: d518b96f msr s3_0_c11_c9_3, x15 + 4f8: d538b96f mrs x15, s3_0_c11_c9_3 + 4fc: d518b98f msr s3_0_c11_c9_4, x15 + 500: d538b98f mrs x15, s3_0_c11_c9_4 + 504: d518b9af msr s3_0_c11_c9_5, x15 + 508: d538b9af mrs x15, s3_0_c11_c9_5 + 50c: d518b9cf msr s3_0_c11_c9_6, x15 + 510: d538b9cf mrs x15, s3_0_c11_c9_6 + 514: d518b9ef msr s3_0_c11_c9_7, x15 + 518: d538b9ef mrs x15, s3_0_c11_c9_7 + 51c: d518ba0f msr s3_0_c11_c10_0, x15 + 520: d538ba0f mrs x15, s3_0_c11_c10_0 + 524: d518ba2f msr s3_0_c11_c10_1, x15 + 528: d538ba2f mrs x15, s3_0_c11_c10_1 + 52c: d518ba4f msr s3_0_c11_c10_2, x15 + 530: d538ba4f mrs x15, s3_0_c11_c10_2 + 534: d518ba6f msr s3_0_c11_c10_3, x15 + 538: d538ba6f mrs x15, s3_0_c11_c10_3 + 53c: d518ba8f msr s3_0_c11_c10_4, x15 + 540: d538ba8f mrs x15, s3_0_c11_c10_4 + 544: d518baaf msr s3_0_c11_c10_5, x15 + 548: d538baaf mrs x15, s3_0_c11_c10_5 + 54c: d518bacf msr s3_0_c11_c10_6, x15 + 550: d538bacf mrs x15, s3_0_c11_c10_6 + 554: d518baef msr s3_0_c11_c10_7, x15 + 558: d538baef mrs x15, s3_0_c11_c10_7 + 55c: d518bb0f msr s3_0_c11_c11_0, x15 + 560: d538bb0f mrs x15, s3_0_c11_c11_0 + 564: d518bb2f msr s3_0_c11_c11_1, x15 + 568: d538bb2f mrs x15, s3_0_c11_c11_1 + 56c: d518bb4f msr s3_0_c11_c11_2, x15 + 570: d538bb4f mrs x15, s3_0_c11_c11_2 + 574: d518bb6f msr s3_0_c11_c11_3, x15 + 578: d538bb6f mrs x15, s3_0_c11_c11_3 + 57c: d518bb8f msr s3_0_c11_c11_4, x15 + 580: d538bb8f mrs x15, s3_0_c11_c11_4 + 584: d518bbaf msr s3_0_c11_c11_5, x15 + 588: d538bbaf mrs x15, s3_0_c11_c11_5 + 58c: d518bbcf msr s3_0_c11_c11_6, x15 + 590: d538bbcf mrs x15, s3_0_c11_c11_6 + 594: d518bbef msr s3_0_c11_c11_7, x15 + 598: d538bbef mrs x15, s3_0_c11_c11_7 + 59c: d518bc0f msr s3_0_c11_c12_0, x15 + 5a0: d538bc0f mrs x15, s3_0_c11_c12_0 + 5a4: d518bc2f msr s3_0_c11_c12_1, x15 + 5a8: d538bc2f mrs x15, s3_0_c11_c12_1 + 5ac: d518bc4f msr s3_0_c11_c12_2, x15 + 5b0: d538bc4f mrs x15, s3_0_c11_c12_2 + 5b4: d518bc6f msr s3_0_c11_c12_3, x15 + 5b8: d538bc6f mrs x15, s3_0_c11_c12_3 + 5bc: d518bc8f msr s3_0_c11_c12_4, x15 + 5c0: d538bc8f mrs x15, s3_0_c11_c12_4 + 5c4: d518bcaf msr s3_0_c11_c12_5, x15 + 5c8: d538bcaf mrs x15, s3_0_c11_c12_5 + 5cc: d518bccf msr s3_0_c11_c12_6, x15 + 5d0: d538bccf mrs x15, s3_0_c11_c12_6 + 5d4: d518bcef msr s3_0_c11_c12_7, x15 + 5d8: d538bcef mrs x15, s3_0_c11_c12_7 + 5dc: d518bd0f msr s3_0_c11_c13_0, x15 + 5e0: d538bd0f mrs x15, s3_0_c11_c13_0 + 5e4: d518bd2f msr s3_0_c11_c13_1, x15 + 5e8: d538bd2f mrs x15, s3_0_c11_c13_1 + 5ec: d518bd4f msr s3_0_c11_c13_2, x15 + 5f0: d538bd4f mrs x15, s3_0_c11_c13_2 + 5f4: d518bd6f msr s3_0_c11_c13_3, x15 + 5f8: d538bd6f mrs x15, s3_0_c11_c13_3 + 5fc: d518bd8f msr s3_0_c11_c13_4, x15 + 600: d538bd8f mrs x15, s3_0_c11_c13_4 + 604: d518bdaf msr s3_0_c11_c13_5, x15 + 608: d538bdaf mrs x15, s3_0_c11_c13_5 + 60c: d518bdcf msr s3_0_c11_c13_6, x15 + 610: d538bdcf mrs x15, s3_0_c11_c13_6 + 614: d518bdef msr s3_0_c11_c13_7, x15 + 618: d538bdef mrs x15, s3_0_c11_c13_7 + 61c: d518be0f msr s3_0_c11_c14_0, x15 + 620: d538be0f mrs x15, s3_0_c11_c14_0 + 624: d518be2f msr s3_0_c11_c14_1, x15 + 628: d538be2f mrs x15, s3_0_c11_c14_1 + 62c: d518be4f msr s3_0_c11_c14_2, x15 + 630: d538be4f mrs x15, s3_0_c11_c14_2 + 634: d518be6f msr s3_0_c11_c14_3, x15 + 638: d538be6f mrs x15, s3_0_c11_c14_3 + 63c: d518be8f msr s3_0_c11_c14_4, x15 + 640: d538be8f mrs x15, s3_0_c11_c14_4 + 644: d518beaf msr s3_0_c11_c14_5, x15 + 648: d538beaf mrs x15, s3_0_c11_c14_5 + 64c: d518becf msr s3_0_c11_c14_6, x15 + 650: d538becf mrs x15, s3_0_c11_c14_6 + 654: d518beef msr s3_0_c11_c14_7, x15 + 658: d538beef mrs x15, s3_0_c11_c14_7 + 65c: d518bf0f msr s3_0_c11_c15_0, x15 + 660: d538bf0f mrs x15, s3_0_c11_c15_0 + 664: d518bf2f msr s3_0_c11_c15_1, x15 + 668: d538bf2f mrs x15, s3_0_c11_c15_1 + 66c: d518bf4f msr s3_0_c11_c15_2, x15 + 670: d538bf4f mrs x15, s3_0_c11_c15_2 + 674: d518bf6f msr s3_0_c11_c15_3, x15 + 678: d538bf6f mrs x15, s3_0_c11_c15_3 + 67c: d518bf8f msr s3_0_c11_c15_4, x15 + 680: d538bf8f mrs x15, s3_0_c11_c15_4 + 684: d518bfaf msr s3_0_c11_c15_5, x15 + 688: d538bfaf mrs x15, s3_0_c11_c15_5 + 68c: d518bfcf msr s3_0_c11_c15_6, x15 + 690: d538bfcf mrs x15, s3_0_c11_c15_6 + 694: d518bfef msr s3_0_c11_c15_7, x15 + 698: d538bfef mrs x15, s3_0_c11_c15_7 + 69c: d518f00f msr s3_0_c15_c0_0, x15 + 6a0: d538f00f mrs x15, s3_0_c15_c0_0 + 6a4: d518f02f msr s3_0_c15_c0_1, x15 + 6a8: d538f02f mrs x15, s3_0_c15_c0_1 + 6ac: d518f04f msr s3_0_c15_c0_2, x15 + 6b0: d538f04f mrs x15, s3_0_c15_c0_2 + 6b4: d518f06f msr s3_0_c15_c0_3, x15 + 6b8: d538f06f mrs x15, s3_0_c15_c0_3 + 6bc: d518f08f msr s3_0_c15_c0_4, x15 + 6c0: d538f08f mrs x15, s3_0_c15_c0_4 + 6c4: d518f0af msr s3_0_c15_c0_5, x15 + 6c8: d538f0af mrs x15, s3_0_c15_c0_5 + 6cc: d518f0cf msr s3_0_c15_c0_6, x15 + 6d0: d538f0cf mrs x15, s3_0_c15_c0_6 + 6d4: d518f0ef msr s3_0_c15_c0_7, x15 + 6d8: d538f0ef mrs x15, s3_0_c15_c0_7 + 6dc: d518f10f msr s3_0_c15_c1_0, x15 + 6e0: d538f10f mrs x15, s3_0_c15_c1_0 + 6e4: d518f12f msr s3_0_c15_c1_1, x15 + 6e8: d538f12f mrs x15, s3_0_c15_c1_1 + 6ec: d518f14f msr s3_0_c15_c1_2, x15 + 6f0: d538f14f mrs x15, s3_0_c15_c1_2 + 6f4: d518f16f msr s3_0_c15_c1_3, x15 + 6f8: d538f16f mrs x15, s3_0_c15_c1_3 + 6fc: d518f18f msr s3_0_c15_c1_4, x15 + 700: d538f18f mrs x15, s3_0_c15_c1_4 + 704: d518f1af msr s3_0_c15_c1_5, x15 + 708: d538f1af mrs x15, s3_0_c15_c1_5 + 70c: d518f1cf msr s3_0_c15_c1_6, x15 + 710: d538f1cf mrs x15, s3_0_c15_c1_6 + 714: d518f1ef msr s3_0_c15_c1_7, x15 + 718: d538f1ef mrs x15, s3_0_c15_c1_7 + 71c: d518f20f msr s3_0_c15_c2_0, x15 + 720: d538f20f mrs x15, s3_0_c15_c2_0 + 724: d518f22f msr s3_0_c15_c2_1, x15 + 728: d538f22f mrs x15, s3_0_c15_c2_1 + 72c: d518f24f msr s3_0_c15_c2_2, x15 + 730: d538f24f mrs x15, s3_0_c15_c2_2 + 734: d518f26f msr s3_0_c15_c2_3, x15 + 738: d538f26f mrs x15, s3_0_c15_c2_3 + 73c: d518f28f msr s3_0_c15_c2_4, x15 + 740: d538f28f mrs x15, s3_0_c15_c2_4 + 744: d518f2af msr s3_0_c15_c2_5, x15 + 748: d538f2af mrs x15, s3_0_c15_c2_5 + 74c: d518f2cf msr s3_0_c15_c2_6, x15 + 750: d538f2cf mrs x15, s3_0_c15_c2_6 + 754: d518f2ef msr s3_0_c15_c2_7, x15 + 758: d538f2ef mrs x15, s3_0_c15_c2_7 + 75c: d518f30f msr s3_0_c15_c3_0, x15 + 760: d538f30f mrs x15, s3_0_c15_c3_0 + 764: d518f32f msr s3_0_c15_c3_1, x15 + 768: d538f32f mrs x15, s3_0_c15_c3_1 + 76c: d518f34f msr s3_0_c15_c3_2, x15 + 770: d538f34f mrs x15, s3_0_c15_c3_2 + 774: d518f36f msr s3_0_c15_c3_3, x15 + 778: d538f36f mrs x15, s3_0_c15_c3_3 + 77c: d518f38f msr s3_0_c15_c3_4, x15 + 780: d538f38f mrs x15, s3_0_c15_c3_4 + 784: d518f3af msr s3_0_c15_c3_5, x15 + 788: d538f3af mrs x15, s3_0_c15_c3_5 + 78c: d518f3cf msr s3_0_c15_c3_6, x15 + 790: d538f3cf mrs x15, s3_0_c15_c3_6 + 794: d518f3ef msr s3_0_c15_c3_7, x15 + 798: d538f3ef mrs x15, s3_0_c15_c3_7 + 79c: d518f40f msr s3_0_c15_c4_0, x15 + 7a0: d538f40f mrs x15, s3_0_c15_c4_0 + 7a4: d518f42f msr s3_0_c15_c4_1, x15 + 7a8: d538f42f mrs x15, s3_0_c15_c4_1 + 7ac: d518f44f msr s3_0_c15_c4_2, x15 + 7b0: d538f44f mrs x15, s3_0_c15_c4_2 + 7b4: d518f46f msr s3_0_c15_c4_3, x15 + 7b8: d538f46f mrs x15, s3_0_c15_c4_3 + 7bc: d518f48f msr s3_0_c15_c4_4, x15 + 7c0: d538f48f mrs x15, s3_0_c15_c4_4 + 7c4: d518f4af msr s3_0_c15_c4_5, x15 + 7c8: d538f4af mrs x15, s3_0_c15_c4_5 + 7cc: d518f4cf msr s3_0_c15_c4_6, x15 + 7d0: d538f4cf mrs x15, s3_0_c15_c4_6 + 7d4: d518f4ef msr s3_0_c15_c4_7, x15 + 7d8: d538f4ef mrs x15, s3_0_c15_c4_7 + 7dc: d518f50f msr s3_0_c15_c5_0, x15 + 7e0: d538f50f mrs x15, s3_0_c15_c5_0 + 7e4: d518f52f msr s3_0_c15_c5_1, x15 + 7e8: d538f52f mrs x15, s3_0_c15_c5_1 + 7ec: d518f54f msr s3_0_c15_c5_2, x15 + 7f0: d538f54f mrs x15, s3_0_c15_c5_2 + 7f4: d518f56f msr s3_0_c15_c5_3, x15 + 7f8: d538f56f mrs x15, s3_0_c15_c5_3 + 7fc: d518f58f msr s3_0_c15_c5_4, x15 + 800: d538f58f mrs x15, s3_0_c15_c5_4 + 804: d518f5af msr s3_0_c15_c5_5, x15 + 808: d538f5af mrs x15, s3_0_c15_c5_5 + 80c: d518f5cf msr s3_0_c15_c5_6, x15 + 810: d538f5cf mrs x15, s3_0_c15_c5_6 + 814: d518f5ef msr s3_0_c15_c5_7, x15 + 818: d538f5ef mrs x15, s3_0_c15_c5_7 + 81c: d518f60f msr s3_0_c15_c6_0, x15 + 820: d538f60f mrs x15, s3_0_c15_c6_0 + 824: d518f62f msr s3_0_c15_c6_1, x15 + 828: d538f62f mrs x15, s3_0_c15_c6_1 + 82c: d518f64f msr s3_0_c15_c6_2, x15 + 830: d538f64f mrs x15, s3_0_c15_c6_2 + 834: d518f66f msr s3_0_c15_c6_3, x15 + 838: d538f66f mrs x15, s3_0_c15_c6_3 + 83c: d518f68f msr s3_0_c15_c6_4, x15 + 840: d538f68f mrs x15, s3_0_c15_c6_4 + 844: d518f6af msr s3_0_c15_c6_5, x15 + 848: d538f6af mrs x15, s3_0_c15_c6_5 + 84c: d518f6cf msr s3_0_c15_c6_6, x15 + 850: d538f6cf mrs x15, s3_0_c15_c6_6 + 854: d518f6ef msr s3_0_c15_c6_7, x15 + 858: d538f6ef mrs x15, s3_0_c15_c6_7 + 85c: d518f70f msr s3_0_c15_c7_0, x15 + 860: d538f70f mrs x15, s3_0_c15_c7_0 + 864: d518f72f msr s3_0_c15_c7_1, x15 + 868: d538f72f mrs x15, s3_0_c15_c7_1 + 86c: d518f74f msr s3_0_c15_c7_2, x15 + 870: d538f74f mrs x15, s3_0_c15_c7_2 + 874: d518f76f msr s3_0_c15_c7_3, x15 + 878: d538f76f mrs x15, s3_0_c15_c7_3 + 87c: d518f78f msr s3_0_c15_c7_4, x15 + 880: d538f78f mrs x15, s3_0_c15_c7_4 + 884: d518f7af msr s3_0_c15_c7_5, x15 + 888: d538f7af mrs x15, s3_0_c15_c7_5 + 88c: d518f7cf msr s3_0_c15_c7_6, x15 + 890: d538f7cf mrs x15, s3_0_c15_c7_6 + 894: d518f7ef msr s3_0_c15_c7_7, x15 + 898: d538f7ef mrs x15, s3_0_c15_c7_7 + 89c: d518f80f msr s3_0_c15_c8_0, x15 + 8a0: d538f80f mrs x15, s3_0_c15_c8_0 + 8a4: d518f82f msr s3_0_c15_c8_1, x15 + 8a8: d538f82f mrs x15, s3_0_c15_c8_1 + 8ac: d518f84f msr s3_0_c15_c8_2, x15 + 8b0: d538f84f mrs x15, s3_0_c15_c8_2 + 8b4: d518f86f msr s3_0_c15_c8_3, x15 + 8b8: d538f86f mrs x15, s3_0_c15_c8_3 + 8bc: d518f88f msr s3_0_c15_c8_4, x15 + 8c0: d538f88f mrs x15, s3_0_c15_c8_4 + 8c4: d518f8af msr s3_0_c15_c8_5, x15 + 8c8: d538f8af mrs x15, s3_0_c15_c8_5 + 8cc: d518f8cf msr s3_0_c15_c8_6, x15 + 8d0: d538f8cf mrs x15, s3_0_c15_c8_6 + 8d4: d518f8ef msr s3_0_c15_c8_7, x15 + 8d8: d538f8ef mrs x15, s3_0_c15_c8_7 + 8dc: d518f90f msr s3_0_c15_c9_0, x15 + 8e0: d538f90f mrs x15, s3_0_c15_c9_0 + 8e4: d518f92f msr s3_0_c15_c9_1, x15 + 8e8: d538f92f mrs x15, s3_0_c15_c9_1 + 8ec: d518f94f msr s3_0_c15_c9_2, x15 + 8f0: d538f94f mrs x15, s3_0_c15_c9_2 + 8f4: d518f96f msr s3_0_c15_c9_3, x15 + 8f8: d538f96f mrs x15, s3_0_c15_c9_3 + 8fc: d518f98f msr s3_0_c15_c9_4, x15 + 900: d538f98f mrs x15, s3_0_c15_c9_4 + 904: d518f9af msr s3_0_c15_c9_5, x15 + 908: d538f9af mrs x15, s3_0_c15_c9_5 + 90c: d518f9cf msr s3_0_c15_c9_6, x15 + 910: d538f9cf mrs x15, s3_0_c15_c9_6 + 914: d518f9ef msr s3_0_c15_c9_7, x15 + 918: d538f9ef mrs x15, s3_0_c15_c9_7 + 91c: d518fa0f msr s3_0_c15_c10_0, x15 + 920: d538fa0f mrs x15, s3_0_c15_c10_0 + 924: d518fa2f msr s3_0_c15_c10_1, x15 + 928: d538fa2f mrs x15, s3_0_c15_c10_1 + 92c: d518fa4f msr s3_0_c15_c10_2, x15 + 930: d538fa4f mrs x15, s3_0_c15_c10_2 + 934: d518fa6f msr s3_0_c15_c10_3, x15 + 938: d538fa6f mrs x15, s3_0_c15_c10_3 + 93c: d518fa8f msr s3_0_c15_c10_4, x15 + 940: d538fa8f mrs x15, s3_0_c15_c10_4 + 944: d518faaf msr s3_0_c15_c10_5, x15 + 948: d538faaf mrs x15, s3_0_c15_c10_5 + 94c: d518facf msr s3_0_c15_c10_6, x15 + 950: d538facf mrs x15, s3_0_c15_c10_6 + 954: d518faef msr s3_0_c15_c10_7, x15 + 958: d538faef mrs x15, s3_0_c15_c10_7 + 95c: d518fb0f msr s3_0_c15_c11_0, x15 + 960: d538fb0f mrs x15, s3_0_c15_c11_0 + 964: d518fb2f msr s3_0_c15_c11_1, x15 + 968: d538fb2f mrs x15, s3_0_c15_c11_1 + 96c: d518fb4f msr s3_0_c15_c11_2, x15 + 970: d538fb4f mrs x15, s3_0_c15_c11_2 + 974: d518fb6f msr s3_0_c15_c11_3, x15 + 978: d538fb6f mrs x15, s3_0_c15_c11_3 + 97c: d518fb8f msr s3_0_c15_c11_4, x15 + 980: d538fb8f mrs x15, s3_0_c15_c11_4 + 984: d518fbaf msr s3_0_c15_c11_5, x15 + 988: d538fbaf mrs x15, s3_0_c15_c11_5 + 98c: d518fbcf msr s3_0_c15_c11_6, x15 + 990: d538fbcf mrs x15, s3_0_c15_c11_6 + 994: d518fbef msr s3_0_c15_c11_7, x15 + 998: d538fbef mrs x15, s3_0_c15_c11_7 + 99c: d518fc0f msr s3_0_c15_c12_0, x15 + 9a0: d538fc0f mrs x15, s3_0_c15_c12_0 + 9a4: d518fc2f msr s3_0_c15_c12_1, x15 + 9a8: d538fc2f mrs x15, s3_0_c15_c12_1 + 9ac: d518fc4f msr s3_0_c15_c12_2, x15 + 9b0: d538fc4f mrs x15, s3_0_c15_c12_2 + 9b4: d518fc6f msr s3_0_c15_c12_3, x15 + 9b8: d538fc6f mrs x15, s3_0_c15_c12_3 + 9bc: d518fc8f msr s3_0_c15_c12_4, x15 + 9c0: d538fc8f mrs x15, s3_0_c15_c12_4 + 9c4: d518fcaf msr s3_0_c15_c12_5, x15 + 9c8: d538fcaf mrs x15, s3_0_c15_c12_5 + 9cc: d518fccf msr s3_0_c15_c12_6, x15 + 9d0: d538fccf mrs x15, s3_0_c15_c12_6 + 9d4: d518fcef msr s3_0_c15_c12_7, x15 + 9d8: d538fcef mrs x15, s3_0_c15_c12_7 + 9dc: d518fd0f msr s3_0_c15_c13_0, x15 + 9e0: d538fd0f mrs x15, s3_0_c15_c13_0 + 9e4: d518fd2f msr s3_0_c15_c13_1, x15 + 9e8: d538fd2f mrs x15, s3_0_c15_c13_1 + 9ec: d518fd4f msr s3_0_c15_c13_2, x15 + 9f0: d538fd4f mrs x15, s3_0_c15_c13_2 + 9f4: d518fd6f msr s3_0_c15_c13_3, x15 + 9f8: d538fd6f mrs x15, s3_0_c15_c13_3 + 9fc: d518fd8f msr s3_0_c15_c13_4, x15 + a00: d538fd8f mrs x15, s3_0_c15_c13_4 + a04: d518fdaf msr s3_0_c15_c13_5, x15 + a08: d538fdaf mrs x15, s3_0_c15_c13_5 + a0c: d518fdcf msr s3_0_c15_c13_6, x15 + a10: d538fdcf mrs x15, s3_0_c15_c13_6 + a14: d518fdef msr s3_0_c15_c13_7, x15 + a18: d538fdef mrs x15, s3_0_c15_c13_7 + a1c: d518fe0f msr s3_0_c15_c14_0, x15 + a20: d538fe0f mrs x15, s3_0_c15_c14_0 + a24: d518fe2f msr s3_0_c15_c14_1, x15 + a28: d538fe2f mrs x15, s3_0_c15_c14_1 + a2c: d518fe4f msr s3_0_c15_c14_2, x15 + a30: d538fe4f mrs x15, s3_0_c15_c14_2 + a34: d518fe6f msr s3_0_c15_c14_3, x15 + a38: d538fe6f mrs x15, s3_0_c15_c14_3 + a3c: d518fe8f msr s3_0_c15_c14_4, x15 + a40: d538fe8f mrs x15, s3_0_c15_c14_4 + a44: d518feaf msr s3_0_c15_c14_5, x15 + a48: d538feaf mrs x15, s3_0_c15_c14_5 + a4c: d518fecf msr s3_0_c15_c14_6, x15 + a50: d538fecf mrs x15, s3_0_c15_c14_6 + a54: d518feef msr s3_0_c15_c14_7, x15 + a58: d538feef mrs x15, s3_0_c15_c14_7 + a5c: d518ff0f msr s3_0_c15_c15_0, x15 + a60: d538ff0f mrs x15, s3_0_c15_c15_0 + a64: d518ff2f msr s3_0_c15_c15_1, x15 + a68: d538ff2f mrs x15, s3_0_c15_c15_1 + a6c: d518ff4f msr s3_0_c15_c15_2, x15 + a70: d538ff4f mrs x15, s3_0_c15_c15_2 + a74: d518ff6f msr s3_0_c15_c15_3, x15 + a78: d538ff6f mrs x15, s3_0_c15_c15_3 + a7c: d518ff8f msr s3_0_c15_c15_4, x15 + a80: d538ff8f mrs x15, s3_0_c15_c15_4 + a84: d518ffaf msr s3_0_c15_c15_5, x15 + a88: d538ffaf mrs x15, s3_0_c15_c15_5 + a8c: d518ffcf msr s3_0_c15_c15_6, x15 + a90: d538ffcf mrs x15, s3_0_c15_c15_6 + a94: d518ffef msr s3_0_c15_c15_7, x15 + a98: d538ffef mrs x15, s3_0_c15_c15_7 + a9c: d519b00f msr s3_1_c11_c0_0, x15 + aa0: d539b00f mrs x15, s3_1_c11_c0_0 + aa4: d519b02f msr s3_1_c11_c0_1, x15 + aa8: d539b02f mrs x15, s3_1_c11_c0_1 + aac: d519b04f msr s3_1_c11_c0_2, x15 + ab0: d539b04f mrs x15, s3_1_c11_c0_2 + ab4: d519b06f msr s3_1_c11_c0_3, x15 + ab8: d539b06f mrs x15, s3_1_c11_c0_3 + abc: d519b08f msr s3_1_c11_c0_4, x15 + ac0: d539b08f mrs x15, s3_1_c11_c0_4 + ac4: d519b0af msr s3_1_c11_c0_5, x15 + ac8: d539b0af mrs x15, s3_1_c11_c0_5 + acc: d519b0cf msr s3_1_c11_c0_6, x15 + ad0: d539b0cf mrs x15, s3_1_c11_c0_6 + ad4: d519b0ef msr s3_1_c11_c0_7, x15 + ad8: d539b0ef mrs x15, s3_1_c11_c0_7 + adc: d519b10f msr s3_1_c11_c1_0, x15 + ae0: d539b10f mrs x15, s3_1_c11_c1_0 + ae4: d519b12f msr s3_1_c11_c1_1, x15 + ae8: d539b12f mrs x15, s3_1_c11_c1_1 + aec: d519b14f msr s3_1_c11_c1_2, x15 + af0: d539b14f mrs x15, s3_1_c11_c1_2 + af4: d519b16f msr s3_1_c11_c1_3, x15 + af8: d539b16f mrs x15, s3_1_c11_c1_3 + afc: d519b18f msr s3_1_c11_c1_4, x15 + b00: d539b18f mrs x15, s3_1_c11_c1_4 + b04: d519b1af msr s3_1_c11_c1_5, x15 + b08: d539b1af mrs x15, s3_1_c11_c1_5 + b0c: d519b1cf msr s3_1_c11_c1_6, x15 + b10: d539b1cf mrs x15, s3_1_c11_c1_6 + b14: d519b1ef msr s3_1_c11_c1_7, x15 + b18: d539b1ef mrs x15, s3_1_c11_c1_7 + b1c: d519b20f msr s3_1_c11_c2_0, x15 + b20: d539b20f mrs x15, s3_1_c11_c2_0 + b24: d519b22f msr s3_1_c11_c2_1, x15 + b28: d539b22f mrs x15, s3_1_c11_c2_1 + b2c: d519b24f msr s3_1_c11_c2_2, x15 + b30: d539b24f mrs x15, s3_1_c11_c2_2 + b34: d519b26f msr s3_1_c11_c2_3, x15 + b38: d539b26f mrs x15, s3_1_c11_c2_3 + b3c: d519b28f msr s3_1_c11_c2_4, x15 + b40: d539b28f mrs x15, s3_1_c11_c2_4 + b44: d519b2af msr s3_1_c11_c2_5, x15 + b48: d539b2af mrs x15, s3_1_c11_c2_5 + b4c: d519b2cf msr s3_1_c11_c2_6, x15 + b50: d539b2cf mrs x15, s3_1_c11_c2_6 + b54: d519b2ef msr s3_1_c11_c2_7, x15 + b58: d539b2ef mrs x15, s3_1_c11_c2_7 + b5c: d519b30f msr s3_1_c11_c3_0, x15 + b60: d539b30f mrs x15, s3_1_c11_c3_0 + b64: d519b32f msr s3_1_c11_c3_1, x15 + b68: d539b32f mrs x15, s3_1_c11_c3_1 + b6c: d519b34f msr s3_1_c11_c3_2, x15 + b70: d539b34f mrs x15, s3_1_c11_c3_2 + b74: d519b36f msr s3_1_c11_c3_3, x15 + b78: d539b36f mrs x15, s3_1_c11_c3_3 + b7c: d519b38f msr s3_1_c11_c3_4, x15 + b80: d539b38f mrs x15, s3_1_c11_c3_4 + b84: d519b3af msr s3_1_c11_c3_5, x15 + b88: d539b3af mrs x15, s3_1_c11_c3_5 + b8c: d519b3cf msr s3_1_c11_c3_6, x15 + b90: d539b3cf mrs x15, s3_1_c11_c3_6 + b94: d519b3ef msr s3_1_c11_c3_7, x15 + b98: d539b3ef mrs x15, s3_1_c11_c3_7 + b9c: d519b40f msr s3_1_c11_c4_0, x15 + ba0: d539b40f mrs x15, s3_1_c11_c4_0 + ba4: d519b42f msr s3_1_c11_c4_1, x15 + ba8: d539b42f mrs x15, s3_1_c11_c4_1 + bac: d519b44f msr s3_1_c11_c4_2, x15 + bb0: d539b44f mrs x15, s3_1_c11_c4_2 + bb4: d519b46f msr s3_1_c11_c4_3, x15 + bb8: d539b46f mrs x15, s3_1_c11_c4_3 + bbc: d519b48f msr s3_1_c11_c4_4, x15 + bc0: d539b48f mrs x15, s3_1_c11_c4_4 + bc4: d519b4af msr s3_1_c11_c4_5, x15 + bc8: d539b4af mrs x15, s3_1_c11_c4_5 + bcc: d519b4cf msr s3_1_c11_c4_6, x15 + bd0: d539b4cf mrs x15, s3_1_c11_c4_6 + bd4: d519b4ef msr s3_1_c11_c4_7, x15 + bd8: d539b4ef mrs x15, s3_1_c11_c4_7 + bdc: d519b50f msr s3_1_c11_c5_0, x15 + be0: d539b50f mrs x15, s3_1_c11_c5_0 + be4: d519b52f msr s3_1_c11_c5_1, x15 + be8: d539b52f mrs x15, s3_1_c11_c5_1 + bec: d519b54f msr s3_1_c11_c5_2, x15 + bf0: d539b54f mrs x15, s3_1_c11_c5_2 + bf4: d519b56f msr s3_1_c11_c5_3, x15 + bf8: d539b56f mrs x15, s3_1_c11_c5_3 + bfc: d519b58f msr s3_1_c11_c5_4, x15 + c00: d539b58f mrs x15, s3_1_c11_c5_4 + c04: d519b5af msr s3_1_c11_c5_5, x15 + c08: d539b5af mrs x15, s3_1_c11_c5_5 + c0c: d519b5cf msr s3_1_c11_c5_6, x15 + c10: d539b5cf mrs x15, s3_1_c11_c5_6 + c14: d519b5ef msr s3_1_c11_c5_7, x15 + c18: d539b5ef mrs x15, s3_1_c11_c5_7 + c1c: d519b60f msr s3_1_c11_c6_0, x15 + c20: d539b60f mrs x15, s3_1_c11_c6_0 + c24: d519b62f msr s3_1_c11_c6_1, x15 + c28: d539b62f mrs x15, s3_1_c11_c6_1 + c2c: d519b64f msr s3_1_c11_c6_2, x15 + c30: d539b64f mrs x15, s3_1_c11_c6_2 + c34: d519b66f msr s3_1_c11_c6_3, x15 + c38: d539b66f mrs x15, s3_1_c11_c6_3 + c3c: d519b68f msr s3_1_c11_c6_4, x15 + c40: d539b68f mrs x15, s3_1_c11_c6_4 + c44: d519b6af msr s3_1_c11_c6_5, x15 + c48: d539b6af mrs x15, s3_1_c11_c6_5 + c4c: d519b6cf msr s3_1_c11_c6_6, x15 + c50: d539b6cf mrs x15, s3_1_c11_c6_6 + c54: d519b6ef msr s3_1_c11_c6_7, x15 + c58: d539b6ef mrs x15, s3_1_c11_c6_7 + c5c: d519b70f msr s3_1_c11_c7_0, x15 + c60: d539b70f mrs x15, s3_1_c11_c7_0 + c64: d519b72f msr s3_1_c11_c7_1, x15 + c68: d539b72f mrs x15, s3_1_c11_c7_1 + c6c: d519b74f msr s3_1_c11_c7_2, x15 + c70: d539b74f mrs x15, s3_1_c11_c7_2 + c74: d519b76f msr s3_1_c11_c7_3, x15 + c78: d539b76f mrs x15, s3_1_c11_c7_3 + c7c: d519b78f msr s3_1_c11_c7_4, x15 + c80: d539b78f mrs x15, s3_1_c11_c7_4 + c84: d519b7af msr s3_1_c11_c7_5, x15 + c88: d539b7af mrs x15, s3_1_c11_c7_5 + c8c: d519b7cf msr s3_1_c11_c7_6, x15 + c90: d539b7cf mrs x15, s3_1_c11_c7_6 + c94: d519b7ef msr s3_1_c11_c7_7, x15 + c98: d539b7ef mrs x15, s3_1_c11_c7_7 + c9c: d519b80f msr s3_1_c11_c8_0, x15 + ca0: d539b80f mrs x15, s3_1_c11_c8_0 + ca4: d519b82f msr s3_1_c11_c8_1, x15 + ca8: d539b82f mrs x15, s3_1_c11_c8_1 + cac: d519b84f msr s3_1_c11_c8_2, x15 + cb0: d539b84f mrs x15, s3_1_c11_c8_2 + cb4: d519b86f msr s3_1_c11_c8_3, x15 + cb8: d539b86f mrs x15, s3_1_c11_c8_3 + cbc: d519b88f msr s3_1_c11_c8_4, x15 + cc0: d539b88f mrs x15, s3_1_c11_c8_4 + cc4: d519b8af msr s3_1_c11_c8_5, x15 + cc8: d539b8af mrs x15, s3_1_c11_c8_5 + ccc: d519b8cf msr s3_1_c11_c8_6, x15 + cd0: d539b8cf mrs x15, s3_1_c11_c8_6 + cd4: d519b8ef msr s3_1_c11_c8_7, x15 + cd8: d539b8ef mrs x15, s3_1_c11_c8_7 + cdc: d519b90f msr s3_1_c11_c9_0, x15 + ce0: d539b90f mrs x15, s3_1_c11_c9_0 + ce4: d519b92f msr s3_1_c11_c9_1, x15 + ce8: d539b92f mrs x15, s3_1_c11_c9_1 + cec: d519b94f msr s3_1_c11_c9_2, x15 + cf0: d539b94f mrs x15, s3_1_c11_c9_2 + cf4: d519b96f msr s3_1_c11_c9_3, x15 + cf8: d539b96f mrs x15, s3_1_c11_c9_3 + cfc: d519b98f msr s3_1_c11_c9_4, x15 + d00: d539b98f mrs x15, s3_1_c11_c9_4 + d04: d519b9af msr s3_1_c11_c9_5, x15 + d08: d539b9af mrs x15, s3_1_c11_c9_5 + d0c: d519b9cf msr s3_1_c11_c9_6, x15 + d10: d539b9cf mrs x15, s3_1_c11_c9_6 + d14: d519b9ef msr s3_1_c11_c9_7, x15 + d18: d539b9ef mrs x15, s3_1_c11_c9_7 + d1c: d519ba0f msr s3_1_c11_c10_0, x15 + d20: d539ba0f mrs x15, s3_1_c11_c10_0 + d24: d519ba2f msr s3_1_c11_c10_1, x15 + d28: d539ba2f mrs x15, s3_1_c11_c10_1 + d2c: d519ba4f msr s3_1_c11_c10_2, x15 + d30: d539ba4f mrs x15, s3_1_c11_c10_2 + d34: d519ba6f msr s3_1_c11_c10_3, x15 + d38: d539ba6f mrs x15, s3_1_c11_c10_3 + d3c: d519ba8f msr s3_1_c11_c10_4, x15 + d40: d539ba8f mrs x15, s3_1_c11_c10_4 + d44: d519baaf msr s3_1_c11_c10_5, x15 + d48: d539baaf mrs x15, s3_1_c11_c10_5 + d4c: d519bacf msr s3_1_c11_c10_6, x15 + d50: d539bacf mrs x15, s3_1_c11_c10_6 + d54: d519baef msr s3_1_c11_c10_7, x15 + d58: d539baef mrs x15, s3_1_c11_c10_7 + d5c: d519bb0f msr s3_1_c11_c11_0, x15 + d60: d539bb0f mrs x15, s3_1_c11_c11_0 + d64: d519bb2f msr s3_1_c11_c11_1, x15 + d68: d539bb2f mrs x15, s3_1_c11_c11_1 + d6c: d519bb4f msr s3_1_c11_c11_2, x15 + d70: d539bb4f mrs x15, s3_1_c11_c11_2 + d74: d519bb6f msr s3_1_c11_c11_3, x15 + d78: d539bb6f mrs x15, s3_1_c11_c11_3 + d7c: d519bb8f msr s3_1_c11_c11_4, x15 + d80: d539bb8f mrs x15, s3_1_c11_c11_4 + d84: d519bbaf msr s3_1_c11_c11_5, x15 + d88: d539bbaf mrs x15, s3_1_c11_c11_5 + d8c: d519bbcf msr s3_1_c11_c11_6, x15 + d90: d539bbcf mrs x15, s3_1_c11_c11_6 + d94: d519bbef msr s3_1_c11_c11_7, x15 + d98: d539bbef mrs x15, s3_1_c11_c11_7 + d9c: d519bc0f msr s3_1_c11_c12_0, x15 + da0: d539bc0f mrs x15, s3_1_c11_c12_0 + da4: d519bc2f msr s3_1_c11_c12_1, x15 + da8: d539bc2f mrs x15, s3_1_c11_c12_1 + dac: d519bc4f msr s3_1_c11_c12_2, x15 + db0: d539bc4f mrs x15, s3_1_c11_c12_2 + db4: d519bc6f msr s3_1_c11_c12_3, x15 + db8: d539bc6f mrs x15, s3_1_c11_c12_3 + dbc: d519bc8f msr s3_1_c11_c12_4, x15 + dc0: d539bc8f mrs x15, s3_1_c11_c12_4 + dc4: d519bcaf msr s3_1_c11_c12_5, x15 + dc8: d539bcaf mrs x15, s3_1_c11_c12_5 + dcc: d519bccf msr s3_1_c11_c12_6, x15 + dd0: d539bccf mrs x15, s3_1_c11_c12_6 + dd4: d519bcef msr s3_1_c11_c12_7, x15 + dd8: d539bcef mrs x15, s3_1_c11_c12_7 + ddc: d519bd0f msr s3_1_c11_c13_0, x15 + de0: d539bd0f mrs x15, s3_1_c11_c13_0 + de4: d519bd2f msr s3_1_c11_c13_1, x15 + de8: d539bd2f mrs x15, s3_1_c11_c13_1 + dec: d519bd4f msr s3_1_c11_c13_2, x15 + df0: d539bd4f mrs x15, s3_1_c11_c13_2 + df4: d519bd6f msr s3_1_c11_c13_3, x15 + df8: d539bd6f mrs x15, s3_1_c11_c13_3 + dfc: d519bd8f msr s3_1_c11_c13_4, x15 + e00: d539bd8f mrs x15, s3_1_c11_c13_4 + e04: d519bdaf msr s3_1_c11_c13_5, x15 + e08: d539bdaf mrs x15, s3_1_c11_c13_5 + e0c: d519bdcf msr s3_1_c11_c13_6, x15 + e10: d539bdcf mrs x15, s3_1_c11_c13_6 + e14: d519bdef msr s3_1_c11_c13_7, x15 + e18: d539bdef mrs x15, s3_1_c11_c13_7 + e1c: d519be0f msr s3_1_c11_c14_0, x15 + e20: d539be0f mrs x15, s3_1_c11_c14_0 + e24: d519be2f msr s3_1_c11_c14_1, x15 + e28: d539be2f mrs x15, s3_1_c11_c14_1 + e2c: d519be4f msr s3_1_c11_c14_2, x15 + e30: d539be4f mrs x15, s3_1_c11_c14_2 + e34: d519be6f msr s3_1_c11_c14_3, x15 + e38: d539be6f mrs x15, s3_1_c11_c14_3 + e3c: d519be8f msr s3_1_c11_c14_4, x15 + e40: d539be8f mrs x15, s3_1_c11_c14_4 + e44: d519beaf msr s3_1_c11_c14_5, x15 + e48: d539beaf mrs x15, s3_1_c11_c14_5 + e4c: d519becf msr s3_1_c11_c14_6, x15 + e50: d539becf mrs x15, s3_1_c11_c14_6 + e54: d519beef msr s3_1_c11_c14_7, x15 + e58: d539beef mrs x15, s3_1_c11_c14_7 + e5c: d519bf0f msr s3_1_c11_c15_0, x15 + e60: d539bf0f mrs x15, s3_1_c11_c15_0 + e64: d519bf2f msr s3_1_c11_c15_1, x15 + e68: d539bf2f mrs x15, s3_1_c11_c15_1 + e6c: d519bf4f msr s3_1_c11_c15_2, x15 + e70: d539bf4f mrs x15, s3_1_c11_c15_2 + e74: d519bf6f msr s3_1_c11_c15_3, x15 + e78: d539bf6f mrs x15, s3_1_c11_c15_3 + e7c: d519bf8f msr s3_1_c11_c15_4, x15 + e80: d539bf8f mrs x15, s3_1_c11_c15_4 + e84: d519bfaf msr s3_1_c11_c15_5, x15 + e88: d539bfaf mrs x15, s3_1_c11_c15_5 + e8c: d519bfcf msr s3_1_c11_c15_6, x15 + e90: d539bfcf mrs x15, s3_1_c11_c15_6 + e94: d519bfef msr s3_1_c11_c15_7, x15 + e98: d539bfef mrs x15, s3_1_c11_c15_7 + e9c: d519f00f msr s3_1_c15_c0_0, x15 + ea0: d539f00f mrs x15, s3_1_c15_c0_0 + ea4: d519f02f msr s3_1_c15_c0_1, x15 + ea8: d539f02f mrs x15, s3_1_c15_c0_1 + eac: d519f04f msr s3_1_c15_c0_2, x15 + eb0: d539f04f mrs x15, s3_1_c15_c0_2 + eb4: d519f06f msr s3_1_c15_c0_3, x15 + eb8: d539f06f mrs x15, s3_1_c15_c0_3 + ebc: d519f08f msr s3_1_c15_c0_4, x15 + ec0: d539f08f mrs x15, s3_1_c15_c0_4 + ec4: d519f0af msr s3_1_c15_c0_5, x15 + ec8: d539f0af mrs x15, s3_1_c15_c0_5 + ecc: d519f0cf msr s3_1_c15_c0_6, x15 + ed0: d539f0cf mrs x15, s3_1_c15_c0_6 + ed4: d519f0ef msr s3_1_c15_c0_7, x15 + ed8: d539f0ef mrs x15, s3_1_c15_c0_7 + edc: d519f10f msr s3_1_c15_c1_0, x15 + ee0: d539f10f mrs x15, s3_1_c15_c1_0 + ee4: d519f12f msr s3_1_c15_c1_1, x15 + ee8: d539f12f mrs x15, s3_1_c15_c1_1 + eec: d519f14f msr s3_1_c15_c1_2, x15 + ef0: d539f14f mrs x15, s3_1_c15_c1_2 + ef4: d519f16f msr s3_1_c15_c1_3, x15 + ef8: d539f16f mrs x15, s3_1_c15_c1_3 + efc: d519f18f msr s3_1_c15_c1_4, x15 + f00: d539f18f mrs x15, s3_1_c15_c1_4 + f04: d519f1af msr s3_1_c15_c1_5, x15 + f08: d539f1af mrs x15, s3_1_c15_c1_5 + f0c: d519f1cf msr s3_1_c15_c1_6, x15 + f10: d539f1cf mrs x15, s3_1_c15_c1_6 + f14: d519f1ef msr s3_1_c15_c1_7, x15 + f18: d539f1ef mrs x15, s3_1_c15_c1_7 + f1c: d519f20f msr s3_1_c15_c2_0, x15 + f20: d539f20f mrs x15, s3_1_c15_c2_0 + f24: d519f22f msr s3_1_c15_c2_1, x15 + f28: d539f22f mrs x15, s3_1_c15_c2_1 + f2c: d519f24f msr s3_1_c15_c2_2, x15 + f30: d539f24f mrs x15, s3_1_c15_c2_2 + f34: d519f26f msr s3_1_c15_c2_3, x15 + f38: d539f26f mrs x15, s3_1_c15_c2_3 + f3c: d519f28f msr s3_1_c15_c2_4, x15 + f40: d539f28f mrs x15, s3_1_c15_c2_4 + f44: d519f2af msr s3_1_c15_c2_5, x15 + f48: d539f2af mrs x15, s3_1_c15_c2_5 + f4c: d519f2cf msr s3_1_c15_c2_6, x15 + f50: d539f2cf mrs x15, s3_1_c15_c2_6 + f54: d519f2ef msr s3_1_c15_c2_7, x15 + f58: d539f2ef mrs x15, s3_1_c15_c2_7 + f5c: d519f30f msr s3_1_c15_c3_0, x15 + f60: d539f30f mrs x15, s3_1_c15_c3_0 + f64: d519f32f msr s3_1_c15_c3_1, x15 + f68: d539f32f mrs x15, s3_1_c15_c3_1 + f6c: d519f34f msr s3_1_c15_c3_2, x15 + f70: d539f34f mrs x15, s3_1_c15_c3_2 + f74: d519f36f msr s3_1_c15_c3_3, x15 + f78: d539f36f mrs x15, s3_1_c15_c3_3 + f7c: d519f38f msr s3_1_c15_c3_4, x15 + f80: d539f38f mrs x15, s3_1_c15_c3_4 + f84: d519f3af msr s3_1_c15_c3_5, x15 + f88: d539f3af mrs x15, s3_1_c15_c3_5 + f8c: d519f3cf msr s3_1_c15_c3_6, x15 + f90: d539f3cf mrs x15, s3_1_c15_c3_6 + f94: d519f3ef msr s3_1_c15_c3_7, x15 + f98: d539f3ef mrs x15, s3_1_c15_c3_7 + f9c: d519f40f msr s3_1_c15_c4_0, x15 + fa0: d539f40f mrs x15, s3_1_c15_c4_0 + fa4: d519f42f msr s3_1_c15_c4_1, x15 + fa8: d539f42f mrs x15, s3_1_c15_c4_1 + fac: d519f44f msr s3_1_c15_c4_2, x15 + fb0: d539f44f mrs x15, s3_1_c15_c4_2 + fb4: d519f46f msr s3_1_c15_c4_3, x15 + fb8: d539f46f mrs x15, s3_1_c15_c4_3 + fbc: d519f48f msr s3_1_c15_c4_4, x15 + fc0: d539f48f mrs x15, s3_1_c15_c4_4 + fc4: d519f4af msr s3_1_c15_c4_5, x15 + fc8: d539f4af mrs x15, s3_1_c15_c4_5 + fcc: d519f4cf msr s3_1_c15_c4_6, x15 + fd0: d539f4cf mrs x15, s3_1_c15_c4_6 + fd4: d519f4ef msr s3_1_c15_c4_7, x15 + fd8: d539f4ef mrs x15, s3_1_c15_c4_7 + fdc: d519f50f msr s3_1_c15_c5_0, x15 + fe0: d539f50f mrs x15, s3_1_c15_c5_0 + fe4: d519f52f msr s3_1_c15_c5_1, x15 + fe8: d539f52f mrs x15, s3_1_c15_c5_1 + fec: d519f54f msr s3_1_c15_c5_2, x15 + ff0: d539f54f mrs x15, s3_1_c15_c5_2 + ff4: d519f56f msr s3_1_c15_c5_3, x15 + ff8: d539f56f mrs x15, s3_1_c15_c5_3 + ffc: d519f58f msr s3_1_c15_c5_4, x15 + 1000: d539f58f mrs x15, s3_1_c15_c5_4 + 1004: d519f5af msr s3_1_c15_c5_5, x15 + 1008: d539f5af mrs x15, s3_1_c15_c5_5 + 100c: d519f5cf msr s3_1_c15_c5_6, x15 + 1010: d539f5cf mrs x15, s3_1_c15_c5_6 + 1014: d519f5ef msr s3_1_c15_c5_7, x15 + 1018: d539f5ef mrs x15, s3_1_c15_c5_7 + 101c: d519f60f msr s3_1_c15_c6_0, x15 + 1020: d539f60f mrs x15, s3_1_c15_c6_0 + 1024: d519f62f msr s3_1_c15_c6_1, x15 + 1028: d539f62f mrs x15, s3_1_c15_c6_1 + 102c: d519f64f msr s3_1_c15_c6_2, x15 + 1030: d539f64f mrs x15, s3_1_c15_c6_2 + 1034: d519f66f msr s3_1_c15_c6_3, x15 + 1038: d539f66f mrs x15, s3_1_c15_c6_3 + 103c: d519f68f msr s3_1_c15_c6_4, x15 + 1040: d539f68f mrs x15, s3_1_c15_c6_4 + 1044: d519f6af msr s3_1_c15_c6_5, x15 + 1048: d539f6af mrs x15, s3_1_c15_c6_5 + 104c: d519f6cf msr s3_1_c15_c6_6, x15 + 1050: d539f6cf mrs x15, s3_1_c15_c6_6 + 1054: d519f6ef msr s3_1_c15_c6_7, x15 + 1058: d539f6ef mrs x15, s3_1_c15_c6_7 + 105c: d519f70f msr s3_1_c15_c7_0, x15 + 1060: d539f70f mrs x15, s3_1_c15_c7_0 + 1064: d519f72f msr s3_1_c15_c7_1, x15 + 1068: d539f72f mrs x15, s3_1_c15_c7_1 + 106c: d519f74f msr s3_1_c15_c7_2, x15 + 1070: d539f74f mrs x15, s3_1_c15_c7_2 + 1074: d519f76f msr s3_1_c15_c7_3, x15 + 1078: d539f76f mrs x15, s3_1_c15_c7_3 + 107c: d519f78f msr s3_1_c15_c7_4, x15 + 1080: d539f78f mrs x15, s3_1_c15_c7_4 + 1084: d519f7af msr s3_1_c15_c7_5, x15 + 1088: d539f7af mrs x15, s3_1_c15_c7_5 + 108c: d519f7cf msr s3_1_c15_c7_6, x15 + 1090: d539f7cf mrs x15, s3_1_c15_c7_6 + 1094: d519f7ef msr s3_1_c15_c7_7, x15 + 1098: d539f7ef mrs x15, s3_1_c15_c7_7 + 109c: d519f80f msr s3_1_c15_c8_0, x15 + 10a0: d539f80f mrs x15, s3_1_c15_c8_0 + 10a4: d519f82f msr s3_1_c15_c8_1, x15 + 10a8: d539f82f mrs x15, s3_1_c15_c8_1 + 10ac: d519f84f msr s3_1_c15_c8_2, x15 + 10b0: d539f84f mrs x15, s3_1_c15_c8_2 + 10b4: d519f86f msr s3_1_c15_c8_3, x15 + 10b8: d539f86f mrs x15, s3_1_c15_c8_3 + 10bc: d519f88f msr s3_1_c15_c8_4, x15 + 10c0: d539f88f mrs x15, s3_1_c15_c8_4 + 10c4: d519f8af msr s3_1_c15_c8_5, x15 + 10c8: d539f8af mrs x15, s3_1_c15_c8_5 + 10cc: d519f8cf msr s3_1_c15_c8_6, x15 + 10d0: d539f8cf mrs x15, s3_1_c15_c8_6 + 10d4: d519f8ef msr s3_1_c15_c8_7, x15 + 10d8: d539f8ef mrs x15, s3_1_c15_c8_7 + 10dc: d519f90f msr s3_1_c15_c9_0, x15 + 10e0: d539f90f mrs x15, s3_1_c15_c9_0 + 10e4: d519f92f msr s3_1_c15_c9_1, x15 + 10e8: d539f92f mrs x15, s3_1_c15_c9_1 + 10ec: d519f94f msr s3_1_c15_c9_2, x15 + 10f0: d539f94f mrs x15, s3_1_c15_c9_2 + 10f4: d519f96f msr s3_1_c15_c9_3, x15 + 10f8: d539f96f mrs x15, s3_1_c15_c9_3 + 10fc: d519f98f msr s3_1_c15_c9_4, x15 + 1100: d539f98f mrs x15, s3_1_c15_c9_4 + 1104: d519f9af msr s3_1_c15_c9_5, x15 + 1108: d539f9af mrs x15, s3_1_c15_c9_5 + 110c: d519f9cf msr s3_1_c15_c9_6, x15 + 1110: d539f9cf mrs x15, s3_1_c15_c9_6 + 1114: d519f9ef msr s3_1_c15_c9_7, x15 + 1118: d539f9ef mrs x15, s3_1_c15_c9_7 + 111c: d519fa0f msr s3_1_c15_c10_0, x15 + 1120: d539fa0f mrs x15, s3_1_c15_c10_0 + 1124: d519fa2f msr s3_1_c15_c10_1, x15 + 1128: d539fa2f mrs x15, s3_1_c15_c10_1 + 112c: d519fa4f msr s3_1_c15_c10_2, x15 + 1130: d539fa4f mrs x15, s3_1_c15_c10_2 + 1134: d519fa6f msr s3_1_c15_c10_3, x15 + 1138: d539fa6f mrs x15, s3_1_c15_c10_3 + 113c: d519fa8f msr s3_1_c15_c10_4, x15 + 1140: d539fa8f mrs x15, s3_1_c15_c10_4 + 1144: d519faaf msr s3_1_c15_c10_5, x15 + 1148: d539faaf mrs x15, s3_1_c15_c10_5 + 114c: d519facf msr s3_1_c15_c10_6, x15 + 1150: d539facf mrs x15, s3_1_c15_c10_6 + 1154: d519faef msr s3_1_c15_c10_7, x15 + 1158: d539faef mrs x15, s3_1_c15_c10_7 + 115c: d519fb0f msr s3_1_c15_c11_0, x15 + 1160: d539fb0f mrs x15, s3_1_c15_c11_0 + 1164: d519fb2f msr s3_1_c15_c11_1, x15 + 1168: d539fb2f mrs x15, s3_1_c15_c11_1 + 116c: d519fb4f msr s3_1_c15_c11_2, x15 + 1170: d539fb4f mrs x15, s3_1_c15_c11_2 + 1174: d519fb6f msr s3_1_c15_c11_3, x15 + 1178: d539fb6f mrs x15, s3_1_c15_c11_3 + 117c: d519fb8f msr s3_1_c15_c11_4, x15 + 1180: d539fb8f mrs x15, s3_1_c15_c11_4 + 1184: d519fbaf msr s3_1_c15_c11_5, x15 + 1188: d539fbaf mrs x15, s3_1_c15_c11_5 + 118c: d519fbcf msr s3_1_c15_c11_6, x15 + 1190: d539fbcf mrs x15, s3_1_c15_c11_6 + 1194: d519fbef msr s3_1_c15_c11_7, x15 + 1198: d539fbef mrs x15, s3_1_c15_c11_7 + 119c: d519fc0f msr s3_1_c15_c12_0, x15 + 11a0: d539fc0f mrs x15, s3_1_c15_c12_0 + 11a4: d519fc2f msr s3_1_c15_c12_1, x15 + 11a8: d539fc2f mrs x15, s3_1_c15_c12_1 + 11ac: d519fc4f msr s3_1_c15_c12_2, x15 + 11b0: d539fc4f mrs x15, s3_1_c15_c12_2 + 11b4: d519fc6f msr s3_1_c15_c12_3, x15 + 11b8: d539fc6f mrs x15, s3_1_c15_c12_3 + 11bc: d519fc8f msr s3_1_c15_c12_4, x15 + 11c0: d539fc8f mrs x15, s3_1_c15_c12_4 + 11c4: d519fcaf msr s3_1_c15_c12_5, x15 + 11c8: d539fcaf mrs x15, s3_1_c15_c12_5 + 11cc: d519fccf msr s3_1_c15_c12_6, x15 + 11d0: d539fccf mrs x15, s3_1_c15_c12_6 + 11d4: d519fcef msr s3_1_c15_c12_7, x15 + 11d8: d539fcef mrs x15, s3_1_c15_c12_7 + 11dc: d519fd0f msr s3_1_c15_c13_0, x15 + 11e0: d539fd0f mrs x15, s3_1_c15_c13_0 + 11e4: d519fd2f msr s3_1_c15_c13_1, x15 + 11e8: d539fd2f mrs x15, s3_1_c15_c13_1 + 11ec: d519fd4f msr s3_1_c15_c13_2, x15 + 11f0: d539fd4f mrs x15, s3_1_c15_c13_2 + 11f4: d519fd6f msr s3_1_c15_c13_3, x15 + 11f8: d539fd6f mrs x15, s3_1_c15_c13_3 + 11fc: d519fd8f msr s3_1_c15_c13_4, x15 + 1200: d539fd8f mrs x15, s3_1_c15_c13_4 + 1204: d519fdaf msr s3_1_c15_c13_5, x15 + 1208: d539fdaf mrs x15, s3_1_c15_c13_5 + 120c: d519fdcf msr s3_1_c15_c13_6, x15 + 1210: d539fdcf mrs x15, s3_1_c15_c13_6 + 1214: d519fdef msr s3_1_c15_c13_7, x15 + 1218: d539fdef mrs x15, s3_1_c15_c13_7 + 121c: d519fe0f msr s3_1_c15_c14_0, x15 + 1220: d539fe0f mrs x15, s3_1_c15_c14_0 + 1224: d519fe2f msr s3_1_c15_c14_1, x15 + 1228: d539fe2f mrs x15, s3_1_c15_c14_1 + 122c: d519fe4f msr s3_1_c15_c14_2, x15 + 1230: d539fe4f mrs x15, s3_1_c15_c14_2 + 1234: d519fe6f msr s3_1_c15_c14_3, x15 + 1238: d539fe6f mrs x15, s3_1_c15_c14_3 + 123c: d519fe8f msr s3_1_c15_c14_4, x15 + 1240: d539fe8f mrs x15, s3_1_c15_c14_4 + 1244: d519feaf msr s3_1_c15_c14_5, x15 + 1248: d539feaf mrs x15, s3_1_c15_c14_5 + 124c: d519fecf msr s3_1_c15_c14_6, x15 + 1250: d539fecf mrs x15, s3_1_c15_c14_6 + 1254: d519feef msr s3_1_c15_c14_7, x15 + 1258: d539feef mrs x15, s3_1_c15_c14_7 + 125c: d519ff0f msr s3_1_c15_c15_0, x15 + 1260: d539ff0f mrs x15, s3_1_c15_c15_0 + 1264: d519ff2f msr s3_1_c15_c15_1, x15 + 1268: d539ff2f mrs x15, s3_1_c15_c15_1 + 126c: d519ff4f msr s3_1_c15_c15_2, x15 + 1270: d539ff4f mrs x15, s3_1_c15_c15_2 + 1274: d519ff6f msr s3_1_c15_c15_3, x15 + 1278: d539ff6f mrs x15, s3_1_c15_c15_3 + 127c: d519ff8f msr s3_1_c15_c15_4, x15 + 1280: d539ff8f mrs x15, s3_1_c15_c15_4 + 1284: d519ffaf msr s3_1_c15_c15_5, x15 + 1288: d539ffaf mrs x15, s3_1_c15_c15_5 + 128c: d519ffcf msr s3_1_c15_c15_6, x15 + 1290: d539ffcf mrs x15, s3_1_c15_c15_6 + 1294: d519ffef msr s3_1_c15_c15_7, x15 + 1298: d539ffef mrs x15, s3_1_c15_c15_7 + 129c: d51ab00f msr s3_2_c11_c0_0, x15 + 12a0: d53ab00f mrs x15, s3_2_c11_c0_0 + 12a4: d51ab02f msr s3_2_c11_c0_1, x15 + 12a8: d53ab02f mrs x15, s3_2_c11_c0_1 + 12ac: d51ab04f msr s3_2_c11_c0_2, x15 + 12b0: d53ab04f mrs x15, s3_2_c11_c0_2 + 12b4: d51ab06f msr s3_2_c11_c0_3, x15 + 12b8: d53ab06f mrs x15, s3_2_c11_c0_3 + 12bc: d51ab08f msr s3_2_c11_c0_4, x15 + 12c0: d53ab08f mrs x15, s3_2_c11_c0_4 + 12c4: d51ab0af msr s3_2_c11_c0_5, x15 + 12c8: d53ab0af mrs x15, s3_2_c11_c0_5 + 12cc: d51ab0cf msr s3_2_c11_c0_6, x15 + 12d0: d53ab0cf mrs x15, s3_2_c11_c0_6 + 12d4: d51ab0ef msr s3_2_c11_c0_7, x15 + 12d8: d53ab0ef mrs x15, s3_2_c11_c0_7 + 12dc: d51ab10f msr s3_2_c11_c1_0, x15 + 12e0: d53ab10f mrs x15, s3_2_c11_c1_0 + 12e4: d51ab12f msr s3_2_c11_c1_1, x15 + 12e8: d53ab12f mrs x15, s3_2_c11_c1_1 + 12ec: d51ab14f msr s3_2_c11_c1_2, x15 + 12f0: d53ab14f mrs x15, s3_2_c11_c1_2 + 12f4: d51ab16f msr s3_2_c11_c1_3, x15 + 12f8: d53ab16f mrs x15, s3_2_c11_c1_3 + 12fc: d51ab18f msr s3_2_c11_c1_4, x15 + 1300: d53ab18f mrs x15, s3_2_c11_c1_4 + 1304: d51ab1af msr s3_2_c11_c1_5, x15 + 1308: d53ab1af mrs x15, s3_2_c11_c1_5 + 130c: d51ab1cf msr s3_2_c11_c1_6, x15 + 1310: d53ab1cf mrs x15, s3_2_c11_c1_6 + 1314: d51ab1ef msr s3_2_c11_c1_7, x15 + 1318: d53ab1ef mrs x15, s3_2_c11_c1_7 + 131c: d51ab20f msr s3_2_c11_c2_0, x15 + 1320: d53ab20f mrs x15, s3_2_c11_c2_0 + 1324: d51ab22f msr s3_2_c11_c2_1, x15 + 1328: d53ab22f mrs x15, s3_2_c11_c2_1 + 132c: d51ab24f msr s3_2_c11_c2_2, x15 + 1330: d53ab24f mrs x15, s3_2_c11_c2_2 + 1334: d51ab26f msr s3_2_c11_c2_3, x15 + 1338: d53ab26f mrs x15, s3_2_c11_c2_3 + 133c: d51ab28f msr s3_2_c11_c2_4, x15 + 1340: d53ab28f mrs x15, s3_2_c11_c2_4 + 1344: d51ab2af msr s3_2_c11_c2_5, x15 + 1348: d53ab2af mrs x15, s3_2_c11_c2_5 + 134c: d51ab2cf msr s3_2_c11_c2_6, x15 + 1350: d53ab2cf mrs x15, s3_2_c11_c2_6 + 1354: d51ab2ef msr s3_2_c11_c2_7, x15 + 1358: d53ab2ef mrs x15, s3_2_c11_c2_7 + 135c: d51ab30f msr s3_2_c11_c3_0, x15 + 1360: d53ab30f mrs x15, s3_2_c11_c3_0 + 1364: d51ab32f msr s3_2_c11_c3_1, x15 + 1368: d53ab32f mrs x15, s3_2_c11_c3_1 + 136c: d51ab34f msr s3_2_c11_c3_2, x15 + 1370: d53ab34f mrs x15, s3_2_c11_c3_2 + 1374: d51ab36f msr s3_2_c11_c3_3, x15 + 1378: d53ab36f mrs x15, s3_2_c11_c3_3 + 137c: d51ab38f msr s3_2_c11_c3_4, x15 + 1380: d53ab38f mrs x15, s3_2_c11_c3_4 + 1384: d51ab3af msr s3_2_c11_c3_5, x15 + 1388: d53ab3af mrs x15, s3_2_c11_c3_5 + 138c: d51ab3cf msr s3_2_c11_c3_6, x15 + 1390: d53ab3cf mrs x15, s3_2_c11_c3_6 + 1394: d51ab3ef msr s3_2_c11_c3_7, x15 + 1398: d53ab3ef mrs x15, s3_2_c11_c3_7 + 139c: d51ab40f msr s3_2_c11_c4_0, x15 + 13a0: d53ab40f mrs x15, s3_2_c11_c4_0 + 13a4: d51ab42f msr s3_2_c11_c4_1, x15 + 13a8: d53ab42f mrs x15, s3_2_c11_c4_1 + 13ac: d51ab44f msr s3_2_c11_c4_2, x15 + 13b0: d53ab44f mrs x15, s3_2_c11_c4_2 + 13b4: d51ab46f msr s3_2_c11_c4_3, x15 + 13b8: d53ab46f mrs x15, s3_2_c11_c4_3 + 13bc: d51ab48f msr s3_2_c11_c4_4, x15 + 13c0: d53ab48f mrs x15, s3_2_c11_c4_4 + 13c4: d51ab4af msr s3_2_c11_c4_5, x15 + 13c8: d53ab4af mrs x15, s3_2_c11_c4_5 + 13cc: d51ab4cf msr s3_2_c11_c4_6, x15 + 13d0: d53ab4cf mrs x15, s3_2_c11_c4_6 + 13d4: d51ab4ef msr s3_2_c11_c4_7, x15 + 13d8: d53ab4ef mrs x15, s3_2_c11_c4_7 + 13dc: d51ab50f msr s3_2_c11_c5_0, x15 + 13e0: d53ab50f mrs x15, s3_2_c11_c5_0 + 13e4: d51ab52f msr s3_2_c11_c5_1, x15 + 13e8: d53ab52f mrs x15, s3_2_c11_c5_1 + 13ec: d51ab54f msr s3_2_c11_c5_2, x15 + 13f0: d53ab54f mrs x15, s3_2_c11_c5_2 + 13f4: d51ab56f msr s3_2_c11_c5_3, x15 + 13f8: d53ab56f mrs x15, s3_2_c11_c5_3 + 13fc: d51ab58f msr s3_2_c11_c5_4, x15 + 1400: d53ab58f mrs x15, s3_2_c11_c5_4 + 1404: d51ab5af msr s3_2_c11_c5_5, x15 + 1408: d53ab5af mrs x15, s3_2_c11_c5_5 + 140c: d51ab5cf msr s3_2_c11_c5_6, x15 + 1410: d53ab5cf mrs x15, s3_2_c11_c5_6 + 1414: d51ab5ef msr s3_2_c11_c5_7, x15 + 1418: d53ab5ef mrs x15, s3_2_c11_c5_7 + 141c: d51ab60f msr s3_2_c11_c6_0, x15 + 1420: d53ab60f mrs x15, s3_2_c11_c6_0 + 1424: d51ab62f msr s3_2_c11_c6_1, x15 + 1428: d53ab62f mrs x15, s3_2_c11_c6_1 + 142c: d51ab64f msr s3_2_c11_c6_2, x15 + 1430: d53ab64f mrs x15, s3_2_c11_c6_2 + 1434: d51ab66f msr s3_2_c11_c6_3, x15 + 1438: d53ab66f mrs x15, s3_2_c11_c6_3 + 143c: d51ab68f msr s3_2_c11_c6_4, x15 + 1440: d53ab68f mrs x15, s3_2_c11_c6_4 + 1444: d51ab6af msr s3_2_c11_c6_5, x15 + 1448: d53ab6af mrs x15, s3_2_c11_c6_5 + 144c: d51ab6cf msr s3_2_c11_c6_6, x15 + 1450: d53ab6cf mrs x15, s3_2_c11_c6_6 + 1454: d51ab6ef msr s3_2_c11_c6_7, x15 + 1458: d53ab6ef mrs x15, s3_2_c11_c6_7 + 145c: d51ab70f msr s3_2_c11_c7_0, x15 + 1460: d53ab70f mrs x15, s3_2_c11_c7_0 + 1464: d51ab72f msr s3_2_c11_c7_1, x15 + 1468: d53ab72f mrs x15, s3_2_c11_c7_1 + 146c: d51ab74f msr s3_2_c11_c7_2, x15 + 1470: d53ab74f mrs x15, s3_2_c11_c7_2 + 1474: d51ab76f msr s3_2_c11_c7_3, x15 + 1478: d53ab76f mrs x15, s3_2_c11_c7_3 + 147c: d51ab78f msr s3_2_c11_c7_4, x15 + 1480: d53ab78f mrs x15, s3_2_c11_c7_4 + 1484: d51ab7af msr s3_2_c11_c7_5, x15 + 1488: d53ab7af mrs x15, s3_2_c11_c7_5 + 148c: d51ab7cf msr s3_2_c11_c7_6, x15 + 1490: d53ab7cf mrs x15, s3_2_c11_c7_6 + 1494: d51ab7ef msr s3_2_c11_c7_7, x15 + 1498: d53ab7ef mrs x15, s3_2_c11_c7_7 + 149c: d51ab80f msr s3_2_c11_c8_0, x15 + 14a0: d53ab80f mrs x15, s3_2_c11_c8_0 + 14a4: d51ab82f msr s3_2_c11_c8_1, x15 + 14a8: d53ab82f mrs x15, s3_2_c11_c8_1 + 14ac: d51ab84f msr s3_2_c11_c8_2, x15 + 14b0: d53ab84f mrs x15, s3_2_c11_c8_2 + 14b4: d51ab86f msr s3_2_c11_c8_3, x15 + 14b8: d53ab86f mrs x15, s3_2_c11_c8_3 + 14bc: d51ab88f msr s3_2_c11_c8_4, x15 + 14c0: d53ab88f mrs x15, s3_2_c11_c8_4 + 14c4: d51ab8af msr s3_2_c11_c8_5, x15 + 14c8: d53ab8af mrs x15, s3_2_c11_c8_5 + 14cc: d51ab8cf msr s3_2_c11_c8_6, x15 + 14d0: d53ab8cf mrs x15, s3_2_c11_c8_6 + 14d4: d51ab8ef msr s3_2_c11_c8_7, x15 + 14d8: d53ab8ef mrs x15, s3_2_c11_c8_7 + 14dc: d51ab90f msr s3_2_c11_c9_0, x15 + 14e0: d53ab90f mrs x15, s3_2_c11_c9_0 + 14e4: d51ab92f msr s3_2_c11_c9_1, x15 + 14e8: d53ab92f mrs x15, s3_2_c11_c9_1 + 14ec: d51ab94f msr s3_2_c11_c9_2, x15 + 14f0: d53ab94f mrs x15, s3_2_c11_c9_2 + 14f4: d51ab96f msr s3_2_c11_c9_3, x15 + 14f8: d53ab96f mrs x15, s3_2_c11_c9_3 + 14fc: d51ab98f msr s3_2_c11_c9_4, x15 + 1500: d53ab98f mrs x15, s3_2_c11_c9_4 + 1504: d51ab9af msr s3_2_c11_c9_5, x15 + 1508: d53ab9af mrs x15, s3_2_c11_c9_5 + 150c: d51ab9cf msr s3_2_c11_c9_6, x15 + 1510: d53ab9cf mrs x15, s3_2_c11_c9_6 + 1514: d51ab9ef msr s3_2_c11_c9_7, x15 + 1518: d53ab9ef mrs x15, s3_2_c11_c9_7 + 151c: d51aba0f msr s3_2_c11_c10_0, x15 + 1520: d53aba0f mrs x15, s3_2_c11_c10_0 + 1524: d51aba2f msr s3_2_c11_c10_1, x15 + 1528: d53aba2f mrs x15, s3_2_c11_c10_1 + 152c: d51aba4f msr s3_2_c11_c10_2, x15 + 1530: d53aba4f mrs x15, s3_2_c11_c10_2 + 1534: d51aba6f msr s3_2_c11_c10_3, x15 + 1538: d53aba6f mrs x15, s3_2_c11_c10_3 + 153c: d51aba8f msr s3_2_c11_c10_4, x15 + 1540: d53aba8f mrs x15, s3_2_c11_c10_4 + 1544: d51abaaf msr s3_2_c11_c10_5, x15 + 1548: d53abaaf mrs x15, s3_2_c11_c10_5 + 154c: d51abacf msr s3_2_c11_c10_6, x15 + 1550: d53abacf mrs x15, s3_2_c11_c10_6 + 1554: d51abaef msr s3_2_c11_c10_7, x15 + 1558: d53abaef mrs x15, s3_2_c11_c10_7 + 155c: d51abb0f msr s3_2_c11_c11_0, x15 + 1560: d53abb0f mrs x15, s3_2_c11_c11_0 + 1564: d51abb2f msr s3_2_c11_c11_1, x15 + 1568: d53abb2f mrs x15, s3_2_c11_c11_1 + 156c: d51abb4f msr s3_2_c11_c11_2, x15 + 1570: d53abb4f mrs x15, s3_2_c11_c11_2 + 1574: d51abb6f msr s3_2_c11_c11_3, x15 + 1578: d53abb6f mrs x15, s3_2_c11_c11_3 + 157c: d51abb8f msr s3_2_c11_c11_4, x15 + 1580: d53abb8f mrs x15, s3_2_c11_c11_4 + 1584: d51abbaf msr s3_2_c11_c11_5, x15 + 1588: d53abbaf mrs x15, s3_2_c11_c11_5 + 158c: d51abbcf msr s3_2_c11_c11_6, x15 + 1590: d53abbcf mrs x15, s3_2_c11_c11_6 + 1594: d51abbef msr s3_2_c11_c11_7, x15 + 1598: d53abbef mrs x15, s3_2_c11_c11_7 + 159c: d51abc0f msr s3_2_c11_c12_0, x15 + 15a0: d53abc0f mrs x15, s3_2_c11_c12_0 + 15a4: d51abc2f msr s3_2_c11_c12_1, x15 + 15a8: d53abc2f mrs x15, s3_2_c11_c12_1 + 15ac: d51abc4f msr s3_2_c11_c12_2, x15 + 15b0: d53abc4f mrs x15, s3_2_c11_c12_2 + 15b4: d51abc6f msr s3_2_c11_c12_3, x15 + 15b8: d53abc6f mrs x15, s3_2_c11_c12_3 + 15bc: d51abc8f msr s3_2_c11_c12_4, x15 + 15c0: d53abc8f mrs x15, s3_2_c11_c12_4 + 15c4: d51abcaf msr s3_2_c11_c12_5, x15 + 15c8: d53abcaf mrs x15, s3_2_c11_c12_5 + 15cc: d51abccf msr s3_2_c11_c12_6, x15 + 15d0: d53abccf mrs x15, s3_2_c11_c12_6 + 15d4: d51abcef msr s3_2_c11_c12_7, x15 + 15d8: d53abcef mrs x15, s3_2_c11_c12_7 + 15dc: d51abd0f msr s3_2_c11_c13_0, x15 + 15e0: d53abd0f mrs x15, s3_2_c11_c13_0 + 15e4: d51abd2f msr s3_2_c11_c13_1, x15 + 15e8: d53abd2f mrs x15, s3_2_c11_c13_1 + 15ec: d51abd4f msr s3_2_c11_c13_2, x15 + 15f0: d53abd4f mrs x15, s3_2_c11_c13_2 + 15f4: d51abd6f msr s3_2_c11_c13_3, x15 + 15f8: d53abd6f mrs x15, s3_2_c11_c13_3 + 15fc: d51abd8f msr s3_2_c11_c13_4, x15 + 1600: d53abd8f mrs x15, s3_2_c11_c13_4 + 1604: d51abdaf msr s3_2_c11_c13_5, x15 + 1608: d53abdaf mrs x15, s3_2_c11_c13_5 + 160c: d51abdcf msr s3_2_c11_c13_6, x15 + 1610: d53abdcf mrs x15, s3_2_c11_c13_6 + 1614: d51abdef msr s3_2_c11_c13_7, x15 + 1618: d53abdef mrs x15, s3_2_c11_c13_7 + 161c: d51abe0f msr s3_2_c11_c14_0, x15 + 1620: d53abe0f mrs x15, s3_2_c11_c14_0 + 1624: d51abe2f msr s3_2_c11_c14_1, x15 + 1628: d53abe2f mrs x15, s3_2_c11_c14_1 + 162c: d51abe4f msr s3_2_c11_c14_2, x15 + 1630: d53abe4f mrs x15, s3_2_c11_c14_2 + 1634: d51abe6f msr s3_2_c11_c14_3, x15 + 1638: d53abe6f mrs x15, s3_2_c11_c14_3 + 163c: d51abe8f msr s3_2_c11_c14_4, x15 + 1640: d53abe8f mrs x15, s3_2_c11_c14_4 + 1644: d51abeaf msr s3_2_c11_c14_5, x15 + 1648: d53abeaf mrs x15, s3_2_c11_c14_5 + 164c: d51abecf msr s3_2_c11_c14_6, x15 + 1650: d53abecf mrs x15, s3_2_c11_c14_6 + 1654: d51abeef msr s3_2_c11_c14_7, x15 + 1658: d53abeef mrs x15, s3_2_c11_c14_7 + 165c: d51abf0f msr s3_2_c11_c15_0, x15 + 1660: d53abf0f mrs x15, s3_2_c11_c15_0 + 1664: d51abf2f msr s3_2_c11_c15_1, x15 + 1668: d53abf2f mrs x15, s3_2_c11_c15_1 + 166c: d51abf4f msr s3_2_c11_c15_2, x15 + 1670: d53abf4f mrs x15, s3_2_c11_c15_2 + 1674: d51abf6f msr s3_2_c11_c15_3, x15 + 1678: d53abf6f mrs x15, s3_2_c11_c15_3 + 167c: d51abf8f msr s3_2_c11_c15_4, x15 + 1680: d53abf8f mrs x15, s3_2_c11_c15_4 + 1684: d51abfaf msr s3_2_c11_c15_5, x15 + 1688: d53abfaf mrs x15, s3_2_c11_c15_5 + 168c: d51abfcf msr s3_2_c11_c15_6, x15 + 1690: d53abfcf mrs x15, s3_2_c11_c15_6 + 1694: d51abfef msr s3_2_c11_c15_7, x15 + 1698: d53abfef mrs x15, s3_2_c11_c15_7 + 169c: d51af00f msr s3_2_c15_c0_0, x15 + 16a0: d53af00f mrs x15, s3_2_c15_c0_0 + 16a4: d51af02f msr s3_2_c15_c0_1, x15 + 16a8: d53af02f mrs x15, s3_2_c15_c0_1 + 16ac: d51af04f msr s3_2_c15_c0_2, x15 + 16b0: d53af04f mrs x15, s3_2_c15_c0_2 + 16b4: d51af06f msr s3_2_c15_c0_3, x15 + 16b8: d53af06f mrs x15, s3_2_c15_c0_3 + 16bc: d51af08f msr s3_2_c15_c0_4, x15 + 16c0: d53af08f mrs x15, s3_2_c15_c0_4 + 16c4: d51af0af msr s3_2_c15_c0_5, x15 + 16c8: d53af0af mrs x15, s3_2_c15_c0_5 + 16cc: d51af0cf msr s3_2_c15_c0_6, x15 + 16d0: d53af0cf mrs x15, s3_2_c15_c0_6 + 16d4: d51af0ef msr s3_2_c15_c0_7, x15 + 16d8: d53af0ef mrs x15, s3_2_c15_c0_7 + 16dc: d51af10f msr s3_2_c15_c1_0, x15 + 16e0: d53af10f mrs x15, s3_2_c15_c1_0 + 16e4: d51af12f msr s3_2_c15_c1_1, x15 + 16e8: d53af12f mrs x15, s3_2_c15_c1_1 + 16ec: d51af14f msr s3_2_c15_c1_2, x15 + 16f0: d53af14f mrs x15, s3_2_c15_c1_2 + 16f4: d51af16f msr s3_2_c15_c1_3, x15 + 16f8: d53af16f mrs x15, s3_2_c15_c1_3 + 16fc: d51af18f msr s3_2_c15_c1_4, x15 + 1700: d53af18f mrs x15, s3_2_c15_c1_4 + 1704: d51af1af msr s3_2_c15_c1_5, x15 + 1708: d53af1af mrs x15, s3_2_c15_c1_5 + 170c: d51af1cf msr s3_2_c15_c1_6, x15 + 1710: d53af1cf mrs x15, s3_2_c15_c1_6 + 1714: d51af1ef msr s3_2_c15_c1_7, x15 + 1718: d53af1ef mrs x15, s3_2_c15_c1_7 + 171c: d51af20f msr s3_2_c15_c2_0, x15 + 1720: d53af20f mrs x15, s3_2_c15_c2_0 + 1724: d51af22f msr s3_2_c15_c2_1, x15 + 1728: d53af22f mrs x15, s3_2_c15_c2_1 + 172c: d51af24f msr s3_2_c15_c2_2, x15 + 1730: d53af24f mrs x15, s3_2_c15_c2_2 + 1734: d51af26f msr s3_2_c15_c2_3, x15 + 1738: d53af26f mrs x15, s3_2_c15_c2_3 + 173c: d51af28f msr s3_2_c15_c2_4, x15 + 1740: d53af28f mrs x15, s3_2_c15_c2_4 + 1744: d51af2af msr s3_2_c15_c2_5, x15 + 1748: d53af2af mrs x15, s3_2_c15_c2_5 + 174c: d51af2cf msr s3_2_c15_c2_6, x15 + 1750: d53af2cf mrs x15, s3_2_c15_c2_6 + 1754: d51af2ef msr s3_2_c15_c2_7, x15 + 1758: d53af2ef mrs x15, s3_2_c15_c2_7 + 175c: d51af30f msr s3_2_c15_c3_0, x15 + 1760: d53af30f mrs x15, s3_2_c15_c3_0 + 1764: d51af32f msr s3_2_c15_c3_1, x15 + 1768: d53af32f mrs x15, s3_2_c15_c3_1 + 176c: d51af34f msr s3_2_c15_c3_2, x15 + 1770: d53af34f mrs x15, s3_2_c15_c3_2 + 1774: d51af36f msr s3_2_c15_c3_3, x15 + 1778: d53af36f mrs x15, s3_2_c15_c3_3 + 177c: d51af38f msr s3_2_c15_c3_4, x15 + 1780: d53af38f mrs x15, s3_2_c15_c3_4 + 1784: d51af3af msr s3_2_c15_c3_5, x15 + 1788: d53af3af mrs x15, s3_2_c15_c3_5 + 178c: d51af3cf msr s3_2_c15_c3_6, x15 + 1790: d53af3cf mrs x15, s3_2_c15_c3_6 + 1794: d51af3ef msr s3_2_c15_c3_7, x15 + 1798: d53af3ef mrs x15, s3_2_c15_c3_7 + 179c: d51af40f msr s3_2_c15_c4_0, x15 + 17a0: d53af40f mrs x15, s3_2_c15_c4_0 + 17a4: d51af42f msr s3_2_c15_c4_1, x15 + 17a8: d53af42f mrs x15, s3_2_c15_c4_1 + 17ac: d51af44f msr s3_2_c15_c4_2, x15 + 17b0: d53af44f mrs x15, s3_2_c15_c4_2 + 17b4: d51af46f msr s3_2_c15_c4_3, x15 + 17b8: d53af46f mrs x15, s3_2_c15_c4_3 + 17bc: d51af48f msr s3_2_c15_c4_4, x15 + 17c0: d53af48f mrs x15, s3_2_c15_c4_4 + 17c4: d51af4af msr s3_2_c15_c4_5, x15 + 17c8: d53af4af mrs x15, s3_2_c15_c4_5 + 17cc: d51af4cf msr s3_2_c15_c4_6, x15 + 17d0: d53af4cf mrs x15, s3_2_c15_c4_6 + 17d4: d51af4ef msr s3_2_c15_c4_7, x15 + 17d8: d53af4ef mrs x15, s3_2_c15_c4_7 + 17dc: d51af50f msr s3_2_c15_c5_0, x15 + 17e0: d53af50f mrs x15, s3_2_c15_c5_0 + 17e4: d51af52f msr s3_2_c15_c5_1, x15 + 17e8: d53af52f mrs x15, s3_2_c15_c5_1 + 17ec: d51af54f msr s3_2_c15_c5_2, x15 + 17f0: d53af54f mrs x15, s3_2_c15_c5_2 + 17f4: d51af56f msr s3_2_c15_c5_3, x15 + 17f8: d53af56f mrs x15, s3_2_c15_c5_3 + 17fc: d51af58f msr s3_2_c15_c5_4, x15 + 1800: d53af58f mrs x15, s3_2_c15_c5_4 + 1804: d51af5af msr s3_2_c15_c5_5, x15 + 1808: d53af5af mrs x15, s3_2_c15_c5_5 + 180c: d51af5cf msr s3_2_c15_c5_6, x15 + 1810: d53af5cf mrs x15, s3_2_c15_c5_6 + 1814: d51af5ef msr s3_2_c15_c5_7, x15 + 1818: d53af5ef mrs x15, s3_2_c15_c5_7 + 181c: d51af60f msr s3_2_c15_c6_0, x15 + 1820: d53af60f mrs x15, s3_2_c15_c6_0 + 1824: d51af62f msr s3_2_c15_c6_1, x15 + 1828: d53af62f mrs x15, s3_2_c15_c6_1 + 182c: d51af64f msr s3_2_c15_c6_2, x15 + 1830: d53af64f mrs x15, s3_2_c15_c6_2 + 1834: d51af66f msr s3_2_c15_c6_3, x15 + 1838: d53af66f mrs x15, s3_2_c15_c6_3 + 183c: d51af68f msr s3_2_c15_c6_4, x15 + 1840: d53af68f mrs x15, s3_2_c15_c6_4 + 1844: d51af6af msr s3_2_c15_c6_5, x15 + 1848: d53af6af mrs x15, s3_2_c15_c6_5 + 184c: d51af6cf msr s3_2_c15_c6_6, x15 + 1850: d53af6cf mrs x15, s3_2_c15_c6_6 + 1854: d51af6ef msr s3_2_c15_c6_7, x15 + 1858: d53af6ef mrs x15, s3_2_c15_c6_7 + 185c: d51af70f msr s3_2_c15_c7_0, x15 + 1860: d53af70f mrs x15, s3_2_c15_c7_0 + 1864: d51af72f msr s3_2_c15_c7_1, x15 + 1868: d53af72f mrs x15, s3_2_c15_c7_1 + 186c: d51af74f msr s3_2_c15_c7_2, x15 + 1870: d53af74f mrs x15, s3_2_c15_c7_2 + 1874: d51af76f msr s3_2_c15_c7_3, x15 + 1878: d53af76f mrs x15, s3_2_c15_c7_3 + 187c: d51af78f msr s3_2_c15_c7_4, x15 + 1880: d53af78f mrs x15, s3_2_c15_c7_4 + 1884: d51af7af msr s3_2_c15_c7_5, x15 + 1888: d53af7af mrs x15, s3_2_c15_c7_5 + 188c: d51af7cf msr s3_2_c15_c7_6, x15 + 1890: d53af7cf mrs x15, s3_2_c15_c7_6 + 1894: d51af7ef msr s3_2_c15_c7_7, x15 + 1898: d53af7ef mrs x15, s3_2_c15_c7_7 + 189c: d51af80f msr s3_2_c15_c8_0, x15 + 18a0: d53af80f mrs x15, s3_2_c15_c8_0 + 18a4: d51af82f msr s3_2_c15_c8_1, x15 + 18a8: d53af82f mrs x15, s3_2_c15_c8_1 + 18ac: d51af84f msr s3_2_c15_c8_2, x15 + 18b0: d53af84f mrs x15, s3_2_c15_c8_2 + 18b4: d51af86f msr s3_2_c15_c8_3, x15 + 18b8: d53af86f mrs x15, s3_2_c15_c8_3 + 18bc: d51af88f msr s3_2_c15_c8_4, x15 + 18c0: d53af88f mrs x15, s3_2_c15_c8_4 + 18c4: d51af8af msr s3_2_c15_c8_5, x15 + 18c8: d53af8af mrs x15, s3_2_c15_c8_5 + 18cc: d51af8cf msr s3_2_c15_c8_6, x15 + 18d0: d53af8cf mrs x15, s3_2_c15_c8_6 + 18d4: d51af8ef msr s3_2_c15_c8_7, x15 + 18d8: d53af8ef mrs x15, s3_2_c15_c8_7 + 18dc: d51af90f msr s3_2_c15_c9_0, x15 + 18e0: d53af90f mrs x15, s3_2_c15_c9_0 + 18e4: d51af92f msr s3_2_c15_c9_1, x15 + 18e8: d53af92f mrs x15, s3_2_c15_c9_1 + 18ec: d51af94f msr s3_2_c15_c9_2, x15 + 18f0: d53af94f mrs x15, s3_2_c15_c9_2 + 18f4: d51af96f msr s3_2_c15_c9_3, x15 + 18f8: d53af96f mrs x15, s3_2_c15_c9_3 + 18fc: d51af98f msr s3_2_c15_c9_4, x15 + 1900: d53af98f mrs x15, s3_2_c15_c9_4 + 1904: d51af9af msr s3_2_c15_c9_5, x15 + 1908: d53af9af mrs x15, s3_2_c15_c9_5 + 190c: d51af9cf msr s3_2_c15_c9_6, x15 + 1910: d53af9cf mrs x15, s3_2_c15_c9_6 + 1914: d51af9ef msr s3_2_c15_c9_7, x15 + 1918: d53af9ef mrs x15, s3_2_c15_c9_7 + 191c: d51afa0f msr s3_2_c15_c10_0, x15 + 1920: d53afa0f mrs x15, s3_2_c15_c10_0 + 1924: d51afa2f msr s3_2_c15_c10_1, x15 + 1928: d53afa2f mrs x15, s3_2_c15_c10_1 + 192c: d51afa4f msr s3_2_c15_c10_2, x15 + 1930: d53afa4f mrs x15, s3_2_c15_c10_2 + 1934: d51afa6f msr s3_2_c15_c10_3, x15 + 1938: d53afa6f mrs x15, s3_2_c15_c10_3 + 193c: d51afa8f msr s3_2_c15_c10_4, x15 + 1940: d53afa8f mrs x15, s3_2_c15_c10_4 + 1944: d51afaaf msr s3_2_c15_c10_5, x15 + 1948: d53afaaf mrs x15, s3_2_c15_c10_5 + 194c: d51afacf msr s3_2_c15_c10_6, x15 + 1950: d53afacf mrs x15, s3_2_c15_c10_6 + 1954: d51afaef msr s3_2_c15_c10_7, x15 + 1958: d53afaef mrs x15, s3_2_c15_c10_7 + 195c: d51afb0f msr s3_2_c15_c11_0, x15 + 1960: d53afb0f mrs x15, s3_2_c15_c11_0 + 1964: d51afb2f msr s3_2_c15_c11_1, x15 + 1968: d53afb2f mrs x15, s3_2_c15_c11_1 + 196c: d51afb4f msr s3_2_c15_c11_2, x15 + 1970: d53afb4f mrs x15, s3_2_c15_c11_2 + 1974: d51afb6f msr s3_2_c15_c11_3, x15 + 1978: d53afb6f mrs x15, s3_2_c15_c11_3 + 197c: d51afb8f msr s3_2_c15_c11_4, x15 + 1980: d53afb8f mrs x15, s3_2_c15_c11_4 + 1984: d51afbaf msr s3_2_c15_c11_5, x15 + 1988: d53afbaf mrs x15, s3_2_c15_c11_5 + 198c: d51afbcf msr s3_2_c15_c11_6, x15 + 1990: d53afbcf mrs x15, s3_2_c15_c11_6 + 1994: d51afbef msr s3_2_c15_c11_7, x15 + 1998: d53afbef mrs x15, s3_2_c15_c11_7 + 199c: d51afc0f msr s3_2_c15_c12_0, x15 + 19a0: d53afc0f mrs x15, s3_2_c15_c12_0 + 19a4: d51afc2f msr s3_2_c15_c12_1, x15 + 19a8: d53afc2f mrs x15, s3_2_c15_c12_1 + 19ac: d51afc4f msr s3_2_c15_c12_2, x15 + 19b0: d53afc4f mrs x15, s3_2_c15_c12_2 + 19b4: d51afc6f msr s3_2_c15_c12_3, x15 + 19b8: d53afc6f mrs x15, s3_2_c15_c12_3 + 19bc: d51afc8f msr s3_2_c15_c12_4, x15 + 19c0: d53afc8f mrs x15, s3_2_c15_c12_4 + 19c4: d51afcaf msr s3_2_c15_c12_5, x15 + 19c8: d53afcaf mrs x15, s3_2_c15_c12_5 + 19cc: d51afccf msr s3_2_c15_c12_6, x15 + 19d0: d53afccf mrs x15, s3_2_c15_c12_6 + 19d4: d51afcef msr s3_2_c15_c12_7, x15 + 19d8: d53afcef mrs x15, s3_2_c15_c12_7 + 19dc: d51afd0f msr s3_2_c15_c13_0, x15 + 19e0: d53afd0f mrs x15, s3_2_c15_c13_0 + 19e4: d51afd2f msr s3_2_c15_c13_1, x15 + 19e8: d53afd2f mrs x15, s3_2_c15_c13_1 + 19ec: d51afd4f msr s3_2_c15_c13_2, x15 + 19f0: d53afd4f mrs x15, s3_2_c15_c13_2 + 19f4: d51afd6f msr s3_2_c15_c13_3, x15 + 19f8: d53afd6f mrs x15, s3_2_c15_c13_3 + 19fc: d51afd8f msr s3_2_c15_c13_4, x15 + 1a00: d53afd8f mrs x15, s3_2_c15_c13_4 + 1a04: d51afdaf msr s3_2_c15_c13_5, x15 + 1a08: d53afdaf mrs x15, s3_2_c15_c13_5 + 1a0c: d51afdcf msr s3_2_c15_c13_6, x15 + 1a10: d53afdcf mrs x15, s3_2_c15_c13_6 + 1a14: d51afdef msr s3_2_c15_c13_7, x15 + 1a18: d53afdef mrs x15, s3_2_c15_c13_7 + 1a1c: d51afe0f msr s3_2_c15_c14_0, x15 + 1a20: d53afe0f mrs x15, s3_2_c15_c14_0 + 1a24: d51afe2f msr s3_2_c15_c14_1, x15 + 1a28: d53afe2f mrs x15, s3_2_c15_c14_1 + 1a2c: d51afe4f msr s3_2_c15_c14_2, x15 + 1a30: d53afe4f mrs x15, s3_2_c15_c14_2 + 1a34: d51afe6f msr s3_2_c15_c14_3, x15 + 1a38: d53afe6f mrs x15, s3_2_c15_c14_3 + 1a3c: d51afe8f msr s3_2_c15_c14_4, x15 + 1a40: d53afe8f mrs x15, s3_2_c15_c14_4 + 1a44: d51afeaf msr s3_2_c15_c14_5, x15 + 1a48: d53afeaf mrs x15, s3_2_c15_c14_5 + 1a4c: d51afecf msr s3_2_c15_c14_6, x15 + 1a50: d53afecf mrs x15, s3_2_c15_c14_6 + 1a54: d51afeef msr s3_2_c15_c14_7, x15 + 1a58: d53afeef mrs x15, s3_2_c15_c14_7 + 1a5c: d51aff0f msr s3_2_c15_c15_0, x15 + 1a60: d53aff0f mrs x15, s3_2_c15_c15_0 + 1a64: d51aff2f msr s3_2_c15_c15_1, x15 + 1a68: d53aff2f mrs x15, s3_2_c15_c15_1 + 1a6c: d51aff4f msr s3_2_c15_c15_2, x15 + 1a70: d53aff4f mrs x15, s3_2_c15_c15_2 + 1a74: d51aff6f msr s3_2_c15_c15_3, x15 + 1a78: d53aff6f mrs x15, s3_2_c15_c15_3 + 1a7c: d51aff8f msr s3_2_c15_c15_4, x15 + 1a80: d53aff8f mrs x15, s3_2_c15_c15_4 + 1a84: d51affaf msr s3_2_c15_c15_5, x15 + 1a88: d53affaf mrs x15, s3_2_c15_c15_5 + 1a8c: d51affcf msr s3_2_c15_c15_6, x15 + 1a90: d53affcf mrs x15, s3_2_c15_c15_6 + 1a94: d51affef msr s3_2_c15_c15_7, x15 + 1a98: d53affef mrs x15, s3_2_c15_c15_7 + 1a9c: d51bb00f msr s3_3_c11_c0_0, x15 + 1aa0: d53bb00f mrs x15, s3_3_c11_c0_0 + 1aa4: d51bb02f msr s3_3_c11_c0_1, x15 + 1aa8: d53bb02f mrs x15, s3_3_c11_c0_1 + 1aac: d51bb04f msr s3_3_c11_c0_2, x15 + 1ab0: d53bb04f mrs x15, s3_3_c11_c0_2 + 1ab4: d51bb06f msr s3_3_c11_c0_3, x15 + 1ab8: d53bb06f mrs x15, s3_3_c11_c0_3 + 1abc: d51bb08f msr s3_3_c11_c0_4, x15 + 1ac0: d53bb08f mrs x15, s3_3_c11_c0_4 + 1ac4: d51bb0af msr s3_3_c11_c0_5, x15 + 1ac8: d53bb0af mrs x15, s3_3_c11_c0_5 + 1acc: d51bb0cf msr s3_3_c11_c0_6, x15 + 1ad0: d53bb0cf mrs x15, s3_3_c11_c0_6 + 1ad4: d51bb0ef msr s3_3_c11_c0_7, x15 + 1ad8: d53bb0ef mrs x15, s3_3_c11_c0_7 + 1adc: d51bb10f msr s3_3_c11_c1_0, x15 + 1ae0: d53bb10f mrs x15, s3_3_c11_c1_0 + 1ae4: d51bb12f msr s3_3_c11_c1_1, x15 + 1ae8: d53bb12f mrs x15, s3_3_c11_c1_1 + 1aec: d51bb14f msr s3_3_c11_c1_2, x15 + 1af0: d53bb14f mrs x15, s3_3_c11_c1_2 + 1af4: d51bb16f msr s3_3_c11_c1_3, x15 + 1af8: d53bb16f mrs x15, s3_3_c11_c1_3 + 1afc: d51bb18f msr s3_3_c11_c1_4, x15 + 1b00: d53bb18f mrs x15, s3_3_c11_c1_4 + 1b04: d51bb1af msr s3_3_c11_c1_5, x15 + 1b08: d53bb1af mrs x15, s3_3_c11_c1_5 + 1b0c: d51bb1cf msr s3_3_c11_c1_6, x15 + 1b10: d53bb1cf mrs x15, s3_3_c11_c1_6 + 1b14: d51bb1ef msr s3_3_c11_c1_7, x15 + 1b18: d53bb1ef mrs x15, s3_3_c11_c1_7 + 1b1c: d51bb20f msr s3_3_c11_c2_0, x15 + 1b20: d53bb20f mrs x15, s3_3_c11_c2_0 + 1b24: d51bb22f msr s3_3_c11_c2_1, x15 + 1b28: d53bb22f mrs x15, s3_3_c11_c2_1 + 1b2c: d51bb24f msr s3_3_c11_c2_2, x15 + 1b30: d53bb24f mrs x15, s3_3_c11_c2_2 + 1b34: d51bb26f msr s3_3_c11_c2_3, x15 + 1b38: d53bb26f mrs x15, s3_3_c11_c2_3 + 1b3c: d51bb28f msr s3_3_c11_c2_4, x15 + 1b40: d53bb28f mrs x15, s3_3_c11_c2_4 + 1b44: d51bb2af msr s3_3_c11_c2_5, x15 + 1b48: d53bb2af mrs x15, s3_3_c11_c2_5 + 1b4c: d51bb2cf msr s3_3_c11_c2_6, x15 + 1b50: d53bb2cf mrs x15, s3_3_c11_c2_6 + 1b54: d51bb2ef msr s3_3_c11_c2_7, x15 + 1b58: d53bb2ef mrs x15, s3_3_c11_c2_7 + 1b5c: d51bb30f msr s3_3_c11_c3_0, x15 + 1b60: d53bb30f mrs x15, s3_3_c11_c3_0 + 1b64: d51bb32f msr s3_3_c11_c3_1, x15 + 1b68: d53bb32f mrs x15, s3_3_c11_c3_1 + 1b6c: d51bb34f msr s3_3_c11_c3_2, x15 + 1b70: d53bb34f mrs x15, s3_3_c11_c3_2 + 1b74: d51bb36f msr s3_3_c11_c3_3, x15 + 1b78: d53bb36f mrs x15, s3_3_c11_c3_3 + 1b7c: d51bb38f msr s3_3_c11_c3_4, x15 + 1b80: d53bb38f mrs x15, s3_3_c11_c3_4 + 1b84: d51bb3af msr s3_3_c11_c3_5, x15 + 1b88: d53bb3af mrs x15, s3_3_c11_c3_5 + 1b8c: d51bb3cf msr s3_3_c11_c3_6, x15 + 1b90: d53bb3cf mrs x15, s3_3_c11_c3_6 + 1b94: d51bb3ef msr s3_3_c11_c3_7, x15 + 1b98: d53bb3ef mrs x15, s3_3_c11_c3_7 + 1b9c: d51bb40f msr s3_3_c11_c4_0, x15 + 1ba0: d53bb40f mrs x15, s3_3_c11_c4_0 + 1ba4: d51bb42f msr s3_3_c11_c4_1, x15 + 1ba8: d53bb42f mrs x15, s3_3_c11_c4_1 + 1bac: d51bb44f msr s3_3_c11_c4_2, x15 + 1bb0: d53bb44f mrs x15, s3_3_c11_c4_2 + 1bb4: d51bb46f msr s3_3_c11_c4_3, x15 + 1bb8: d53bb46f mrs x15, s3_3_c11_c4_3 + 1bbc: d51bb48f msr s3_3_c11_c4_4, x15 + 1bc0: d53bb48f mrs x15, s3_3_c11_c4_4 + 1bc4: d51bb4af msr s3_3_c11_c4_5, x15 + 1bc8: d53bb4af mrs x15, s3_3_c11_c4_5 + 1bcc: d51bb4cf msr s3_3_c11_c4_6, x15 + 1bd0: d53bb4cf mrs x15, s3_3_c11_c4_6 + 1bd4: d51bb4ef msr s3_3_c11_c4_7, x15 + 1bd8: d53bb4ef mrs x15, s3_3_c11_c4_7 + 1bdc: d51bb50f msr s3_3_c11_c5_0, x15 + 1be0: d53bb50f mrs x15, s3_3_c11_c5_0 + 1be4: d51bb52f msr s3_3_c11_c5_1, x15 + 1be8: d53bb52f mrs x15, s3_3_c11_c5_1 + 1bec: d51bb54f msr s3_3_c11_c5_2, x15 + 1bf0: d53bb54f mrs x15, s3_3_c11_c5_2 + 1bf4: d51bb56f msr s3_3_c11_c5_3, x15 + 1bf8: d53bb56f mrs x15, s3_3_c11_c5_3 + 1bfc: d51bb58f msr s3_3_c11_c5_4, x15 + 1c00: d53bb58f mrs x15, s3_3_c11_c5_4 + 1c04: d51bb5af msr s3_3_c11_c5_5, x15 + 1c08: d53bb5af mrs x15, s3_3_c11_c5_5 + 1c0c: d51bb5cf msr s3_3_c11_c5_6, x15 + 1c10: d53bb5cf mrs x15, s3_3_c11_c5_6 + 1c14: d51bb5ef msr s3_3_c11_c5_7, x15 + 1c18: d53bb5ef mrs x15, s3_3_c11_c5_7 + 1c1c: d51bb60f msr s3_3_c11_c6_0, x15 + 1c20: d53bb60f mrs x15, s3_3_c11_c6_0 + 1c24: d51bb62f msr s3_3_c11_c6_1, x15 + 1c28: d53bb62f mrs x15, s3_3_c11_c6_1 + 1c2c: d51bb64f msr s3_3_c11_c6_2, x15 + 1c30: d53bb64f mrs x15, s3_3_c11_c6_2 + 1c34: d51bb66f msr s3_3_c11_c6_3, x15 + 1c38: d53bb66f mrs x15, s3_3_c11_c6_3 + 1c3c: d51bb68f msr s3_3_c11_c6_4, x15 + 1c40: d53bb68f mrs x15, s3_3_c11_c6_4 + 1c44: d51bb6af msr s3_3_c11_c6_5, x15 + 1c48: d53bb6af mrs x15, s3_3_c11_c6_5 + 1c4c: d51bb6cf msr s3_3_c11_c6_6, x15 + 1c50: d53bb6cf mrs x15, s3_3_c11_c6_6 + 1c54: d51bb6ef msr s3_3_c11_c6_7, x15 + 1c58: d53bb6ef mrs x15, s3_3_c11_c6_7 + 1c5c: d51bb70f msr s3_3_c11_c7_0, x15 + 1c60: d53bb70f mrs x15, s3_3_c11_c7_0 + 1c64: d51bb72f msr s3_3_c11_c7_1, x15 + 1c68: d53bb72f mrs x15, s3_3_c11_c7_1 + 1c6c: d51bb74f msr s3_3_c11_c7_2, x15 + 1c70: d53bb74f mrs x15, s3_3_c11_c7_2 + 1c74: d51bb76f msr s3_3_c11_c7_3, x15 + 1c78: d53bb76f mrs x15, s3_3_c11_c7_3 + 1c7c: d51bb78f msr s3_3_c11_c7_4, x15 + 1c80: d53bb78f mrs x15, s3_3_c11_c7_4 + 1c84: d51bb7af msr s3_3_c11_c7_5, x15 + 1c88: d53bb7af mrs x15, s3_3_c11_c7_5 + 1c8c: d51bb7cf msr s3_3_c11_c7_6, x15 + 1c90: d53bb7cf mrs x15, s3_3_c11_c7_6 + 1c94: d51bb7ef msr s3_3_c11_c7_7, x15 + 1c98: d53bb7ef mrs x15, s3_3_c11_c7_7 + 1c9c: d51bb80f msr s3_3_c11_c8_0, x15 + 1ca0: d53bb80f mrs x15, s3_3_c11_c8_0 + 1ca4: d51bb82f msr s3_3_c11_c8_1, x15 + 1ca8: d53bb82f mrs x15, s3_3_c11_c8_1 + 1cac: d51bb84f msr s3_3_c11_c8_2, x15 + 1cb0: d53bb84f mrs x15, s3_3_c11_c8_2 + 1cb4: d51bb86f msr s3_3_c11_c8_3, x15 + 1cb8: d53bb86f mrs x15, s3_3_c11_c8_3 + 1cbc: d51bb88f msr s3_3_c11_c8_4, x15 + 1cc0: d53bb88f mrs x15, s3_3_c11_c8_4 + 1cc4: d51bb8af msr s3_3_c11_c8_5, x15 + 1cc8: d53bb8af mrs x15, s3_3_c11_c8_5 + 1ccc: d51bb8cf msr s3_3_c11_c8_6, x15 + 1cd0: d53bb8cf mrs x15, s3_3_c11_c8_6 + 1cd4: d51bb8ef msr s3_3_c11_c8_7, x15 + 1cd8: d53bb8ef mrs x15, s3_3_c11_c8_7 + 1cdc: d51bb90f msr s3_3_c11_c9_0, x15 + 1ce0: d53bb90f mrs x15, s3_3_c11_c9_0 + 1ce4: d51bb92f msr s3_3_c11_c9_1, x15 + 1ce8: d53bb92f mrs x15, s3_3_c11_c9_1 + 1cec: d51bb94f msr s3_3_c11_c9_2, x15 + 1cf0: d53bb94f mrs x15, s3_3_c11_c9_2 + 1cf4: d51bb96f msr s3_3_c11_c9_3, x15 + 1cf8: d53bb96f mrs x15, s3_3_c11_c9_3 + 1cfc: d51bb98f msr s3_3_c11_c9_4, x15 + 1d00: d53bb98f mrs x15, s3_3_c11_c9_4 + 1d04: d51bb9af msr s3_3_c11_c9_5, x15 + 1d08: d53bb9af mrs x15, s3_3_c11_c9_5 + 1d0c: d51bb9cf msr s3_3_c11_c9_6, x15 + 1d10: d53bb9cf mrs x15, s3_3_c11_c9_6 + 1d14: d51bb9ef msr s3_3_c11_c9_7, x15 + 1d18: d53bb9ef mrs x15, s3_3_c11_c9_7 + 1d1c: d51bba0f msr s3_3_c11_c10_0, x15 + 1d20: d53bba0f mrs x15, s3_3_c11_c10_0 + 1d24: d51bba2f msr s3_3_c11_c10_1, x15 + 1d28: d53bba2f mrs x15, s3_3_c11_c10_1 + 1d2c: d51bba4f msr s3_3_c11_c10_2, x15 + 1d30: d53bba4f mrs x15, s3_3_c11_c10_2 + 1d34: d51bba6f msr s3_3_c11_c10_3, x15 + 1d38: d53bba6f mrs x15, s3_3_c11_c10_3 + 1d3c: d51bba8f msr s3_3_c11_c10_4, x15 + 1d40: d53bba8f mrs x15, s3_3_c11_c10_4 + 1d44: d51bbaaf msr s3_3_c11_c10_5, x15 + 1d48: d53bbaaf mrs x15, s3_3_c11_c10_5 + 1d4c: d51bbacf msr s3_3_c11_c10_6, x15 + 1d50: d53bbacf mrs x15, s3_3_c11_c10_6 + 1d54: d51bbaef msr s3_3_c11_c10_7, x15 + 1d58: d53bbaef mrs x15, s3_3_c11_c10_7 + 1d5c: d51bbb0f msr s3_3_c11_c11_0, x15 + 1d60: d53bbb0f mrs x15, s3_3_c11_c11_0 + 1d64: d51bbb2f msr s3_3_c11_c11_1, x15 + 1d68: d53bbb2f mrs x15, s3_3_c11_c11_1 + 1d6c: d51bbb4f msr s3_3_c11_c11_2, x15 + 1d70: d53bbb4f mrs x15, s3_3_c11_c11_2 + 1d74: d51bbb6f msr s3_3_c11_c11_3, x15 + 1d78: d53bbb6f mrs x15, s3_3_c11_c11_3 + 1d7c: d51bbb8f msr s3_3_c11_c11_4, x15 + 1d80: d53bbb8f mrs x15, s3_3_c11_c11_4 + 1d84: d51bbbaf msr s3_3_c11_c11_5, x15 + 1d88: d53bbbaf mrs x15, s3_3_c11_c11_5 + 1d8c: d51bbbcf msr s3_3_c11_c11_6, x15 + 1d90: d53bbbcf mrs x15, s3_3_c11_c11_6 + 1d94: d51bbbef msr s3_3_c11_c11_7, x15 + 1d98: d53bbbef mrs x15, s3_3_c11_c11_7 + 1d9c: d51bbc0f msr s3_3_c11_c12_0, x15 + 1da0: d53bbc0f mrs x15, s3_3_c11_c12_0 + 1da4: d51bbc2f msr s3_3_c11_c12_1, x15 + 1da8: d53bbc2f mrs x15, s3_3_c11_c12_1 + 1dac: d51bbc4f msr s3_3_c11_c12_2, x15 + 1db0: d53bbc4f mrs x15, s3_3_c11_c12_2 + 1db4: d51bbc6f msr s3_3_c11_c12_3, x15 + 1db8: d53bbc6f mrs x15, s3_3_c11_c12_3 + 1dbc: d51bbc8f msr s3_3_c11_c12_4, x15 + 1dc0: d53bbc8f mrs x15, s3_3_c11_c12_4 + 1dc4: d51bbcaf msr s3_3_c11_c12_5, x15 + 1dc8: d53bbcaf mrs x15, s3_3_c11_c12_5 + 1dcc: d51bbccf msr s3_3_c11_c12_6, x15 + 1dd0: d53bbccf mrs x15, s3_3_c11_c12_6 + 1dd4: d51bbcef msr s3_3_c11_c12_7, x15 + 1dd8: d53bbcef mrs x15, s3_3_c11_c12_7 + 1ddc: d51bbd0f msr s3_3_c11_c13_0, x15 + 1de0: d53bbd0f mrs x15, s3_3_c11_c13_0 + 1de4: d51bbd2f msr s3_3_c11_c13_1, x15 + 1de8: d53bbd2f mrs x15, s3_3_c11_c13_1 + 1dec: d51bbd4f msr s3_3_c11_c13_2, x15 + 1df0: d53bbd4f mrs x15, s3_3_c11_c13_2 + 1df4: d51bbd6f msr s3_3_c11_c13_3, x15 + 1df8: d53bbd6f mrs x15, s3_3_c11_c13_3 + 1dfc: d51bbd8f msr s3_3_c11_c13_4, x15 + 1e00: d53bbd8f mrs x15, s3_3_c11_c13_4 + 1e04: d51bbdaf msr s3_3_c11_c13_5, x15 + 1e08: d53bbdaf mrs x15, s3_3_c11_c13_5 + 1e0c: d51bbdcf msr s3_3_c11_c13_6, x15 + 1e10: d53bbdcf mrs x15, s3_3_c11_c13_6 + 1e14: d51bbdef msr s3_3_c11_c13_7, x15 + 1e18: d53bbdef mrs x15, s3_3_c11_c13_7 + 1e1c: d51bbe0f msr s3_3_c11_c14_0, x15 + 1e20: d53bbe0f mrs x15, s3_3_c11_c14_0 + 1e24: d51bbe2f msr s3_3_c11_c14_1, x15 + 1e28: d53bbe2f mrs x15, s3_3_c11_c14_1 + 1e2c: d51bbe4f msr s3_3_c11_c14_2, x15 + 1e30: d53bbe4f mrs x15, s3_3_c11_c14_2 + 1e34: d51bbe6f msr s3_3_c11_c14_3, x15 + 1e38: d53bbe6f mrs x15, s3_3_c11_c14_3 + 1e3c: d51bbe8f msr s3_3_c11_c14_4, x15 + 1e40: d53bbe8f mrs x15, s3_3_c11_c14_4 + 1e44: d51bbeaf msr s3_3_c11_c14_5, x15 + 1e48: d53bbeaf mrs x15, s3_3_c11_c14_5 + 1e4c: d51bbecf msr s3_3_c11_c14_6, x15 + 1e50: d53bbecf mrs x15, s3_3_c11_c14_6 + 1e54: d51bbeef msr s3_3_c11_c14_7, x15 + 1e58: d53bbeef mrs x15, s3_3_c11_c14_7 + 1e5c: d51bbf0f msr s3_3_c11_c15_0, x15 + 1e60: d53bbf0f mrs x15, s3_3_c11_c15_0 + 1e64: d51bbf2f msr s3_3_c11_c15_1, x15 + 1e68: d53bbf2f mrs x15, s3_3_c11_c15_1 + 1e6c: d51bbf4f msr s3_3_c11_c15_2, x15 + 1e70: d53bbf4f mrs x15, s3_3_c11_c15_2 + 1e74: d51bbf6f msr s3_3_c11_c15_3, x15 + 1e78: d53bbf6f mrs x15, s3_3_c11_c15_3 + 1e7c: d51bbf8f msr s3_3_c11_c15_4, x15 + 1e80: d53bbf8f mrs x15, s3_3_c11_c15_4 + 1e84: d51bbfaf msr s3_3_c11_c15_5, x15 + 1e88: d53bbfaf mrs x15, s3_3_c11_c15_5 + 1e8c: d51bbfcf msr s3_3_c11_c15_6, x15 + 1e90: d53bbfcf mrs x15, s3_3_c11_c15_6 + 1e94: d51bbfef msr s3_3_c11_c15_7, x15 + 1e98: d53bbfef mrs x15, s3_3_c11_c15_7 + 1e9c: d51bf00f msr s3_3_c15_c0_0, x15 + 1ea0: d53bf00f mrs x15, s3_3_c15_c0_0 + 1ea4: d51bf02f msr s3_3_c15_c0_1, x15 + 1ea8: d53bf02f mrs x15, s3_3_c15_c0_1 + 1eac: d51bf04f msr s3_3_c15_c0_2, x15 + 1eb0: d53bf04f mrs x15, s3_3_c15_c0_2 + 1eb4: d51bf06f msr s3_3_c15_c0_3, x15 + 1eb8: d53bf06f mrs x15, s3_3_c15_c0_3 + 1ebc: d51bf08f msr s3_3_c15_c0_4, x15 + 1ec0: d53bf08f mrs x15, s3_3_c15_c0_4 + 1ec4: d51bf0af msr s3_3_c15_c0_5, x15 + 1ec8: d53bf0af mrs x15, s3_3_c15_c0_5 + 1ecc: d51bf0cf msr s3_3_c15_c0_6, x15 + 1ed0: d53bf0cf mrs x15, s3_3_c15_c0_6 + 1ed4: d51bf0ef msr s3_3_c15_c0_7, x15 + 1ed8: d53bf0ef mrs x15, s3_3_c15_c0_7 + 1edc: d51bf10f msr s3_3_c15_c1_0, x15 + 1ee0: d53bf10f mrs x15, s3_3_c15_c1_0 + 1ee4: d51bf12f msr s3_3_c15_c1_1, x15 + 1ee8: d53bf12f mrs x15, s3_3_c15_c1_1 + 1eec: d51bf14f msr s3_3_c15_c1_2, x15 + 1ef0: d53bf14f mrs x15, s3_3_c15_c1_2 + 1ef4: d51bf16f msr s3_3_c15_c1_3, x15 + 1ef8: d53bf16f mrs x15, s3_3_c15_c1_3 + 1efc: d51bf18f msr s3_3_c15_c1_4, x15 + 1f00: d53bf18f mrs x15, s3_3_c15_c1_4 + 1f04: d51bf1af msr s3_3_c15_c1_5, x15 + 1f08: d53bf1af mrs x15, s3_3_c15_c1_5 + 1f0c: d51bf1cf msr s3_3_c15_c1_6, x15 + 1f10: d53bf1cf mrs x15, s3_3_c15_c1_6 + 1f14: d51bf1ef msr s3_3_c15_c1_7, x15 + 1f18: d53bf1ef mrs x15, s3_3_c15_c1_7 + 1f1c: d51bf20f msr s3_3_c15_c2_0, x15 + 1f20: d53bf20f mrs x15, s3_3_c15_c2_0 + 1f24: d51bf22f msr s3_3_c15_c2_1, x15 + 1f28: d53bf22f mrs x15, s3_3_c15_c2_1 + 1f2c: d51bf24f msr s3_3_c15_c2_2, x15 + 1f30: d53bf24f mrs x15, s3_3_c15_c2_2 + 1f34: d51bf26f msr s3_3_c15_c2_3, x15 + 1f38: d53bf26f mrs x15, s3_3_c15_c2_3 + 1f3c: d51bf28f msr s3_3_c15_c2_4, x15 + 1f40: d53bf28f mrs x15, s3_3_c15_c2_4 + 1f44: d51bf2af msr s3_3_c15_c2_5, x15 + 1f48: d53bf2af mrs x15, s3_3_c15_c2_5 + 1f4c: d51bf2cf msr s3_3_c15_c2_6, x15 + 1f50: d53bf2cf mrs x15, s3_3_c15_c2_6 + 1f54: d51bf2ef msr s3_3_c15_c2_7, x15 + 1f58: d53bf2ef mrs x15, s3_3_c15_c2_7 + 1f5c: d51bf30f msr s3_3_c15_c3_0, x15 + 1f60: d53bf30f mrs x15, s3_3_c15_c3_0 + 1f64: d51bf32f msr s3_3_c15_c3_1, x15 + 1f68: d53bf32f mrs x15, s3_3_c15_c3_1 + 1f6c: d51bf34f msr s3_3_c15_c3_2, x15 + 1f70: d53bf34f mrs x15, s3_3_c15_c3_2 + 1f74: d51bf36f msr s3_3_c15_c3_3, x15 + 1f78: d53bf36f mrs x15, s3_3_c15_c3_3 + 1f7c: d51bf38f msr s3_3_c15_c3_4, x15 + 1f80: d53bf38f mrs x15, s3_3_c15_c3_4 + 1f84: d51bf3af msr s3_3_c15_c3_5, x15 + 1f88: d53bf3af mrs x15, s3_3_c15_c3_5 + 1f8c: d51bf3cf msr s3_3_c15_c3_6, x15 + 1f90: d53bf3cf mrs x15, s3_3_c15_c3_6 + 1f94: d51bf3ef msr s3_3_c15_c3_7, x15 + 1f98: d53bf3ef mrs x15, s3_3_c15_c3_7 + 1f9c: d51bf40f msr s3_3_c15_c4_0, x15 + 1fa0: d53bf40f mrs x15, s3_3_c15_c4_0 + 1fa4: d51bf42f msr s3_3_c15_c4_1, x15 + 1fa8: d53bf42f mrs x15, s3_3_c15_c4_1 + 1fac: d51bf44f msr s3_3_c15_c4_2, x15 + 1fb0: d53bf44f mrs x15, s3_3_c15_c4_2 + 1fb4: d51bf46f msr s3_3_c15_c4_3, x15 + 1fb8: d53bf46f mrs x15, s3_3_c15_c4_3 + 1fbc: d51bf48f msr s3_3_c15_c4_4, x15 + 1fc0: d53bf48f mrs x15, s3_3_c15_c4_4 + 1fc4: d51bf4af msr s3_3_c15_c4_5, x15 + 1fc8: d53bf4af mrs x15, s3_3_c15_c4_5 + 1fcc: d51bf4cf msr s3_3_c15_c4_6, x15 + 1fd0: d53bf4cf mrs x15, s3_3_c15_c4_6 + 1fd4: d51bf4ef msr s3_3_c15_c4_7, x15 + 1fd8: d53bf4ef mrs x15, s3_3_c15_c4_7 + 1fdc: d51bf50f msr s3_3_c15_c5_0, x15 + 1fe0: d53bf50f mrs x15, s3_3_c15_c5_0 + 1fe4: d51bf52f msr s3_3_c15_c5_1, x15 + 1fe8: d53bf52f mrs x15, s3_3_c15_c5_1 + 1fec: d51bf54f msr s3_3_c15_c5_2, x15 + 1ff0: d53bf54f mrs x15, s3_3_c15_c5_2 + 1ff4: d51bf56f msr s3_3_c15_c5_3, x15 + 1ff8: d53bf56f mrs x15, s3_3_c15_c5_3 + 1ffc: d51bf58f msr s3_3_c15_c5_4, x15 + 2000: d53bf58f mrs x15, s3_3_c15_c5_4 + 2004: d51bf5af msr s3_3_c15_c5_5, x15 + 2008: d53bf5af mrs x15, s3_3_c15_c5_5 + 200c: d51bf5cf msr s3_3_c15_c5_6, x15 + 2010: d53bf5cf mrs x15, s3_3_c15_c5_6 + 2014: d51bf5ef msr s3_3_c15_c5_7, x15 + 2018: d53bf5ef mrs x15, s3_3_c15_c5_7 + 201c: d51bf60f msr s3_3_c15_c6_0, x15 + 2020: d53bf60f mrs x15, s3_3_c15_c6_0 + 2024: d51bf62f msr s3_3_c15_c6_1, x15 + 2028: d53bf62f mrs x15, s3_3_c15_c6_1 + 202c: d51bf64f msr s3_3_c15_c6_2, x15 + 2030: d53bf64f mrs x15, s3_3_c15_c6_2 + 2034: d51bf66f msr s3_3_c15_c6_3, x15 + 2038: d53bf66f mrs x15, s3_3_c15_c6_3 + 203c: d51bf68f msr s3_3_c15_c6_4, x15 + 2040: d53bf68f mrs x15, s3_3_c15_c6_4 + 2044: d51bf6af msr s3_3_c15_c6_5, x15 + 2048: d53bf6af mrs x15, s3_3_c15_c6_5 + 204c: d51bf6cf msr s3_3_c15_c6_6, x15 + 2050: d53bf6cf mrs x15, s3_3_c15_c6_6 + 2054: d51bf6ef msr s3_3_c15_c6_7, x15 + 2058: d53bf6ef mrs x15, s3_3_c15_c6_7 + 205c: d51bf70f msr s3_3_c15_c7_0, x15 + 2060: d53bf70f mrs x15, s3_3_c15_c7_0 + 2064: d51bf72f msr s3_3_c15_c7_1, x15 + 2068: d53bf72f mrs x15, s3_3_c15_c7_1 + 206c: d51bf74f msr s3_3_c15_c7_2, x15 + 2070: d53bf74f mrs x15, s3_3_c15_c7_2 + 2074: d51bf76f msr s3_3_c15_c7_3, x15 + 2078: d53bf76f mrs x15, s3_3_c15_c7_3 + 207c: d51bf78f msr s3_3_c15_c7_4, x15 + 2080: d53bf78f mrs x15, s3_3_c15_c7_4 + 2084: d51bf7af msr s3_3_c15_c7_5, x15 + 2088: d53bf7af mrs x15, s3_3_c15_c7_5 + 208c: d51bf7cf msr s3_3_c15_c7_6, x15 + 2090: d53bf7cf mrs x15, s3_3_c15_c7_6 + 2094: d51bf7ef msr s3_3_c15_c7_7, x15 + 2098: d53bf7ef mrs x15, s3_3_c15_c7_7 + 209c: d51bf80f msr s3_3_c15_c8_0, x15 + 20a0: d53bf80f mrs x15, s3_3_c15_c8_0 + 20a4: d51bf82f msr s3_3_c15_c8_1, x15 + 20a8: d53bf82f mrs x15, s3_3_c15_c8_1 + 20ac: d51bf84f msr s3_3_c15_c8_2, x15 + 20b0: d53bf84f mrs x15, s3_3_c15_c8_2 + 20b4: d51bf86f msr s3_3_c15_c8_3, x15 + 20b8: d53bf86f mrs x15, s3_3_c15_c8_3 + 20bc: d51bf88f msr s3_3_c15_c8_4, x15 + 20c0: d53bf88f mrs x15, s3_3_c15_c8_4 + 20c4: d51bf8af msr s3_3_c15_c8_5, x15 + 20c8: d53bf8af mrs x15, s3_3_c15_c8_5 + 20cc: d51bf8cf msr s3_3_c15_c8_6, x15 + 20d0: d53bf8cf mrs x15, s3_3_c15_c8_6 + 20d4: d51bf8ef msr s3_3_c15_c8_7, x15 + 20d8: d53bf8ef mrs x15, s3_3_c15_c8_7 + 20dc: d51bf90f msr s3_3_c15_c9_0, x15 + 20e0: d53bf90f mrs x15, s3_3_c15_c9_0 + 20e4: d51bf92f msr s3_3_c15_c9_1, x15 + 20e8: d53bf92f mrs x15, s3_3_c15_c9_1 + 20ec: d51bf94f msr s3_3_c15_c9_2, x15 + 20f0: d53bf94f mrs x15, s3_3_c15_c9_2 + 20f4: d51bf96f msr s3_3_c15_c9_3, x15 + 20f8: d53bf96f mrs x15, s3_3_c15_c9_3 + 20fc: d51bf98f msr s3_3_c15_c9_4, x15 + 2100: d53bf98f mrs x15, s3_3_c15_c9_4 + 2104: d51bf9af msr s3_3_c15_c9_5, x15 + 2108: d53bf9af mrs x15, s3_3_c15_c9_5 + 210c: d51bf9cf msr s3_3_c15_c9_6, x15 + 2110: d53bf9cf mrs x15, s3_3_c15_c9_6 + 2114: d51bf9ef msr s3_3_c15_c9_7, x15 + 2118: d53bf9ef mrs x15, s3_3_c15_c9_7 + 211c: d51bfa0f msr s3_3_c15_c10_0, x15 + 2120: d53bfa0f mrs x15, s3_3_c15_c10_0 + 2124: d51bfa2f msr s3_3_c15_c10_1, x15 + 2128: d53bfa2f mrs x15, s3_3_c15_c10_1 + 212c: d51bfa4f msr s3_3_c15_c10_2, x15 + 2130: d53bfa4f mrs x15, s3_3_c15_c10_2 + 2134: d51bfa6f msr s3_3_c15_c10_3, x15 + 2138: d53bfa6f mrs x15, s3_3_c15_c10_3 + 213c: d51bfa8f msr s3_3_c15_c10_4, x15 + 2140: d53bfa8f mrs x15, s3_3_c15_c10_4 + 2144: d51bfaaf msr s3_3_c15_c10_5, x15 + 2148: d53bfaaf mrs x15, s3_3_c15_c10_5 + 214c: d51bfacf msr s3_3_c15_c10_6, x15 + 2150: d53bfacf mrs x15, s3_3_c15_c10_6 + 2154: d51bfaef msr s3_3_c15_c10_7, x15 + 2158: d53bfaef mrs x15, s3_3_c15_c10_7 + 215c: d51bfb0f msr s3_3_c15_c11_0, x15 + 2160: d53bfb0f mrs x15, s3_3_c15_c11_0 + 2164: d51bfb2f msr s3_3_c15_c11_1, x15 + 2168: d53bfb2f mrs x15, s3_3_c15_c11_1 + 216c: d51bfb4f msr s3_3_c15_c11_2, x15 + 2170: d53bfb4f mrs x15, s3_3_c15_c11_2 + 2174: d51bfb6f msr s3_3_c15_c11_3, x15 + 2178: d53bfb6f mrs x15, s3_3_c15_c11_3 + 217c: d51bfb8f msr s3_3_c15_c11_4, x15 + 2180: d53bfb8f mrs x15, s3_3_c15_c11_4 + 2184: d51bfbaf msr s3_3_c15_c11_5, x15 + 2188: d53bfbaf mrs x15, s3_3_c15_c11_5 + 218c: d51bfbcf msr s3_3_c15_c11_6, x15 + 2190: d53bfbcf mrs x15, s3_3_c15_c11_6 + 2194: d51bfbef msr s3_3_c15_c11_7, x15 + 2198: d53bfbef mrs x15, s3_3_c15_c11_7 + 219c: d51bfc0f msr s3_3_c15_c12_0, x15 + 21a0: d53bfc0f mrs x15, s3_3_c15_c12_0 + 21a4: d51bfc2f msr s3_3_c15_c12_1, x15 + 21a8: d53bfc2f mrs x15, s3_3_c15_c12_1 + 21ac: d51bfc4f msr s3_3_c15_c12_2, x15 + 21b0: d53bfc4f mrs x15, s3_3_c15_c12_2 + 21b4: d51bfc6f msr s3_3_c15_c12_3, x15 + 21b8: d53bfc6f mrs x15, s3_3_c15_c12_3 + 21bc: d51bfc8f msr s3_3_c15_c12_4, x15 + 21c0: d53bfc8f mrs x15, s3_3_c15_c12_4 + 21c4: d51bfcaf msr s3_3_c15_c12_5, x15 + 21c8: d53bfcaf mrs x15, s3_3_c15_c12_5 + 21cc: d51bfccf msr s3_3_c15_c12_6, x15 + 21d0: d53bfccf mrs x15, s3_3_c15_c12_6 + 21d4: d51bfcef msr s3_3_c15_c12_7, x15 + 21d8: d53bfcef mrs x15, s3_3_c15_c12_7 + 21dc: d51bfd0f msr s3_3_c15_c13_0, x15 + 21e0: d53bfd0f mrs x15, s3_3_c15_c13_0 + 21e4: d51bfd2f msr s3_3_c15_c13_1, x15 + 21e8: d53bfd2f mrs x15, s3_3_c15_c13_1 + 21ec: d51bfd4f msr s3_3_c15_c13_2, x15 + 21f0: d53bfd4f mrs x15, s3_3_c15_c13_2 + 21f4: d51bfd6f msr s3_3_c15_c13_3, x15 + 21f8: d53bfd6f mrs x15, s3_3_c15_c13_3 + 21fc: d51bfd8f msr s3_3_c15_c13_4, x15 + 2200: d53bfd8f mrs x15, s3_3_c15_c13_4 + 2204: d51bfdaf msr s3_3_c15_c13_5, x15 + 2208: d53bfdaf mrs x15, s3_3_c15_c13_5 + 220c: d51bfdcf msr s3_3_c15_c13_6, x15 + 2210: d53bfdcf mrs x15, s3_3_c15_c13_6 + 2214: d51bfdef msr s3_3_c15_c13_7, x15 + 2218: d53bfdef mrs x15, s3_3_c15_c13_7 + 221c: d51bfe0f msr s3_3_c15_c14_0, x15 + 2220: d53bfe0f mrs x15, s3_3_c15_c14_0 + 2224: d51bfe2f msr s3_3_c15_c14_1, x15 + 2228: d53bfe2f mrs x15, s3_3_c15_c14_1 + 222c: d51bfe4f msr s3_3_c15_c14_2, x15 + 2230: d53bfe4f mrs x15, s3_3_c15_c14_2 + 2234: d51bfe6f msr s3_3_c15_c14_3, x15 + 2238: d53bfe6f mrs x15, s3_3_c15_c14_3 + 223c: d51bfe8f msr s3_3_c15_c14_4, x15 + 2240: d53bfe8f mrs x15, s3_3_c15_c14_4 + 2244: d51bfeaf msr s3_3_c15_c14_5, x15 + 2248: d53bfeaf mrs x15, s3_3_c15_c14_5 + 224c: d51bfecf msr s3_3_c15_c14_6, x15 + 2250: d53bfecf mrs x15, s3_3_c15_c14_6 + 2254: d51bfeef msr s3_3_c15_c14_7, x15 + 2258: d53bfeef mrs x15, s3_3_c15_c14_7 + 225c: d51bff0f msr s3_3_c15_c15_0, x15 + 2260: d53bff0f mrs x15, s3_3_c15_c15_0 + 2264: d51bff2f msr s3_3_c15_c15_1, x15 + 2268: d53bff2f mrs x15, s3_3_c15_c15_1 + 226c: d51bff4f msr s3_3_c15_c15_2, x15 + 2270: d53bff4f mrs x15, s3_3_c15_c15_2 + 2274: d51bff6f msr s3_3_c15_c15_3, x15 + 2278: d53bff6f mrs x15, s3_3_c15_c15_3 + 227c: d51bff8f msr s3_3_c15_c15_4, x15 + 2280: d53bff8f mrs x15, s3_3_c15_c15_4 + 2284: d51bffaf msr s3_3_c15_c15_5, x15 + 2288: d53bffaf mrs x15, s3_3_c15_c15_5 + 228c: d51bffcf msr s3_3_c15_c15_6, x15 + 2290: d53bffcf mrs x15, s3_3_c15_c15_6 + 2294: d51bffef msr s3_3_c15_c15_7, x15 + 2298: d53bffef mrs x15, s3_3_c15_c15_7 + 229c: d51cb00f msr s3_4_c11_c0_0, x15 + 22a0: d53cb00f mrs x15, s3_4_c11_c0_0 + 22a4: d51cb02f msr s3_4_c11_c0_1, x15 + 22a8: d53cb02f mrs x15, s3_4_c11_c0_1 + 22ac: d51cb04f msr s3_4_c11_c0_2, x15 + 22b0: d53cb04f mrs x15, s3_4_c11_c0_2 + 22b4: d51cb06f msr s3_4_c11_c0_3, x15 + 22b8: d53cb06f mrs x15, s3_4_c11_c0_3 + 22bc: d51cb08f msr s3_4_c11_c0_4, x15 + 22c0: d53cb08f mrs x15, s3_4_c11_c0_4 + 22c4: d51cb0af msr s3_4_c11_c0_5, x15 + 22c8: d53cb0af mrs x15, s3_4_c11_c0_5 + 22cc: d51cb0cf msr s3_4_c11_c0_6, x15 + 22d0: d53cb0cf mrs x15, s3_4_c11_c0_6 + 22d4: d51cb0ef msr s3_4_c11_c0_7, x15 + 22d8: d53cb0ef mrs x15, s3_4_c11_c0_7 + 22dc: d51cb10f msr s3_4_c11_c1_0, x15 + 22e0: d53cb10f mrs x15, s3_4_c11_c1_0 + 22e4: d51cb12f msr s3_4_c11_c1_1, x15 + 22e8: d53cb12f mrs x15, s3_4_c11_c1_1 + 22ec: d51cb14f msr s3_4_c11_c1_2, x15 + 22f0: d53cb14f mrs x15, s3_4_c11_c1_2 + 22f4: d51cb16f msr s3_4_c11_c1_3, x15 + 22f8: d53cb16f mrs x15, s3_4_c11_c1_3 + 22fc: d51cb18f msr s3_4_c11_c1_4, x15 + 2300: d53cb18f mrs x15, s3_4_c11_c1_4 + 2304: d51cb1af msr s3_4_c11_c1_5, x15 + 2308: d53cb1af mrs x15, s3_4_c11_c1_5 + 230c: d51cb1cf msr s3_4_c11_c1_6, x15 + 2310: d53cb1cf mrs x15, s3_4_c11_c1_6 + 2314: d51cb1ef msr s3_4_c11_c1_7, x15 + 2318: d53cb1ef mrs x15, s3_4_c11_c1_7 + 231c: d51cb20f msr s3_4_c11_c2_0, x15 + 2320: d53cb20f mrs x15, s3_4_c11_c2_0 + 2324: d51cb22f msr s3_4_c11_c2_1, x15 + 2328: d53cb22f mrs x15, s3_4_c11_c2_1 + 232c: d51cb24f msr s3_4_c11_c2_2, x15 + 2330: d53cb24f mrs x15, s3_4_c11_c2_2 + 2334: d51cb26f msr s3_4_c11_c2_3, x15 + 2338: d53cb26f mrs x15, s3_4_c11_c2_3 + 233c: d51cb28f msr s3_4_c11_c2_4, x15 + 2340: d53cb28f mrs x15, s3_4_c11_c2_4 + 2344: d51cb2af msr s3_4_c11_c2_5, x15 + 2348: d53cb2af mrs x15, s3_4_c11_c2_5 + 234c: d51cb2cf msr s3_4_c11_c2_6, x15 + 2350: d53cb2cf mrs x15, s3_4_c11_c2_6 + 2354: d51cb2ef msr s3_4_c11_c2_7, x15 + 2358: d53cb2ef mrs x15, s3_4_c11_c2_7 + 235c: d51cb30f msr s3_4_c11_c3_0, x15 + 2360: d53cb30f mrs x15, s3_4_c11_c3_0 + 2364: d51cb32f msr s3_4_c11_c3_1, x15 + 2368: d53cb32f mrs x15, s3_4_c11_c3_1 + 236c: d51cb34f msr s3_4_c11_c3_2, x15 + 2370: d53cb34f mrs x15, s3_4_c11_c3_2 + 2374: d51cb36f msr s3_4_c11_c3_3, x15 + 2378: d53cb36f mrs x15, s3_4_c11_c3_3 + 237c: d51cb38f msr s3_4_c11_c3_4, x15 + 2380: d53cb38f mrs x15, s3_4_c11_c3_4 + 2384: d51cb3af msr s3_4_c11_c3_5, x15 + 2388: d53cb3af mrs x15, s3_4_c11_c3_5 + 238c: d51cb3cf msr s3_4_c11_c3_6, x15 + 2390: d53cb3cf mrs x15, s3_4_c11_c3_6 + 2394: d51cb3ef msr s3_4_c11_c3_7, x15 + 2398: d53cb3ef mrs x15, s3_4_c11_c3_7 + 239c: d51cb40f msr s3_4_c11_c4_0, x15 + 23a0: d53cb40f mrs x15, s3_4_c11_c4_0 + 23a4: d51cb42f msr s3_4_c11_c4_1, x15 + 23a8: d53cb42f mrs x15, s3_4_c11_c4_1 + 23ac: d51cb44f msr s3_4_c11_c4_2, x15 + 23b0: d53cb44f mrs x15, s3_4_c11_c4_2 + 23b4: d51cb46f msr s3_4_c11_c4_3, x15 + 23b8: d53cb46f mrs x15, s3_4_c11_c4_3 + 23bc: d51cb48f msr s3_4_c11_c4_4, x15 + 23c0: d53cb48f mrs x15, s3_4_c11_c4_4 + 23c4: d51cb4af msr s3_4_c11_c4_5, x15 + 23c8: d53cb4af mrs x15, s3_4_c11_c4_5 + 23cc: d51cb4cf msr s3_4_c11_c4_6, x15 + 23d0: d53cb4cf mrs x15, s3_4_c11_c4_6 + 23d4: d51cb4ef msr s3_4_c11_c4_7, x15 + 23d8: d53cb4ef mrs x15, s3_4_c11_c4_7 + 23dc: d51cb50f msr s3_4_c11_c5_0, x15 + 23e0: d53cb50f mrs x15, s3_4_c11_c5_0 + 23e4: d51cb52f msr s3_4_c11_c5_1, x15 + 23e8: d53cb52f mrs x15, s3_4_c11_c5_1 + 23ec: d51cb54f msr s3_4_c11_c5_2, x15 + 23f0: d53cb54f mrs x15, s3_4_c11_c5_2 + 23f4: d51cb56f msr s3_4_c11_c5_3, x15 + 23f8: d53cb56f mrs x15, s3_4_c11_c5_3 + 23fc: d51cb58f msr s3_4_c11_c5_4, x15 + 2400: d53cb58f mrs x15, s3_4_c11_c5_4 + 2404: d51cb5af msr s3_4_c11_c5_5, x15 + 2408: d53cb5af mrs x15, s3_4_c11_c5_5 + 240c: d51cb5cf msr s3_4_c11_c5_6, x15 + 2410: d53cb5cf mrs x15, s3_4_c11_c5_6 + 2414: d51cb5ef msr s3_4_c11_c5_7, x15 + 2418: d53cb5ef mrs x15, s3_4_c11_c5_7 + 241c: d51cb60f msr s3_4_c11_c6_0, x15 + 2420: d53cb60f mrs x15, s3_4_c11_c6_0 + 2424: d51cb62f msr s3_4_c11_c6_1, x15 + 2428: d53cb62f mrs x15, s3_4_c11_c6_1 + 242c: d51cb64f msr s3_4_c11_c6_2, x15 + 2430: d53cb64f mrs x15, s3_4_c11_c6_2 + 2434: d51cb66f msr s3_4_c11_c6_3, x15 + 2438: d53cb66f mrs x15, s3_4_c11_c6_3 + 243c: d51cb68f msr s3_4_c11_c6_4, x15 + 2440: d53cb68f mrs x15, s3_4_c11_c6_4 + 2444: d51cb6af msr s3_4_c11_c6_5, x15 + 2448: d53cb6af mrs x15, s3_4_c11_c6_5 + 244c: d51cb6cf msr s3_4_c11_c6_6, x15 + 2450: d53cb6cf mrs x15, s3_4_c11_c6_6 + 2454: d51cb6ef msr s3_4_c11_c6_7, x15 + 2458: d53cb6ef mrs x15, s3_4_c11_c6_7 + 245c: d51cb70f msr s3_4_c11_c7_0, x15 + 2460: d53cb70f mrs x15, s3_4_c11_c7_0 + 2464: d51cb72f msr s3_4_c11_c7_1, x15 + 2468: d53cb72f mrs x15, s3_4_c11_c7_1 + 246c: d51cb74f msr s3_4_c11_c7_2, x15 + 2470: d53cb74f mrs x15, s3_4_c11_c7_2 + 2474: d51cb76f msr s3_4_c11_c7_3, x15 + 2478: d53cb76f mrs x15, s3_4_c11_c7_3 + 247c: d51cb78f msr s3_4_c11_c7_4, x15 + 2480: d53cb78f mrs x15, s3_4_c11_c7_4 + 2484: d51cb7af msr s3_4_c11_c7_5, x15 + 2488: d53cb7af mrs x15, s3_4_c11_c7_5 + 248c: d51cb7cf msr s3_4_c11_c7_6, x15 + 2490: d53cb7cf mrs x15, s3_4_c11_c7_6 + 2494: d51cb7ef msr s3_4_c11_c7_7, x15 + 2498: d53cb7ef mrs x15, s3_4_c11_c7_7 + 249c: d51cb80f msr s3_4_c11_c8_0, x15 + 24a0: d53cb80f mrs x15, s3_4_c11_c8_0 + 24a4: d51cb82f msr s3_4_c11_c8_1, x15 + 24a8: d53cb82f mrs x15, s3_4_c11_c8_1 + 24ac: d51cb84f msr s3_4_c11_c8_2, x15 + 24b0: d53cb84f mrs x15, s3_4_c11_c8_2 + 24b4: d51cb86f msr s3_4_c11_c8_3, x15 + 24b8: d53cb86f mrs x15, s3_4_c11_c8_3 + 24bc: d51cb88f msr s3_4_c11_c8_4, x15 + 24c0: d53cb88f mrs x15, s3_4_c11_c8_4 + 24c4: d51cb8af msr s3_4_c11_c8_5, x15 + 24c8: d53cb8af mrs x15, s3_4_c11_c8_5 + 24cc: d51cb8cf msr s3_4_c11_c8_6, x15 + 24d0: d53cb8cf mrs x15, s3_4_c11_c8_6 + 24d4: d51cb8ef msr s3_4_c11_c8_7, x15 + 24d8: d53cb8ef mrs x15, s3_4_c11_c8_7 + 24dc: d51cb90f msr s3_4_c11_c9_0, x15 + 24e0: d53cb90f mrs x15, s3_4_c11_c9_0 + 24e4: d51cb92f msr s3_4_c11_c9_1, x15 + 24e8: d53cb92f mrs x15, s3_4_c11_c9_1 + 24ec: d51cb94f msr s3_4_c11_c9_2, x15 + 24f0: d53cb94f mrs x15, s3_4_c11_c9_2 + 24f4: d51cb96f msr s3_4_c11_c9_3, x15 + 24f8: d53cb96f mrs x15, s3_4_c11_c9_3 + 24fc: d51cb98f msr s3_4_c11_c9_4, x15 + 2500: d53cb98f mrs x15, s3_4_c11_c9_4 + 2504: d51cb9af msr s3_4_c11_c9_5, x15 + 2508: d53cb9af mrs x15, s3_4_c11_c9_5 + 250c: d51cb9cf msr s3_4_c11_c9_6, x15 + 2510: d53cb9cf mrs x15, s3_4_c11_c9_6 + 2514: d51cb9ef msr s3_4_c11_c9_7, x15 + 2518: d53cb9ef mrs x15, s3_4_c11_c9_7 + 251c: d51cba0f msr s3_4_c11_c10_0, x15 + 2520: d53cba0f mrs x15, s3_4_c11_c10_0 + 2524: d51cba2f msr s3_4_c11_c10_1, x15 + 2528: d53cba2f mrs x15, s3_4_c11_c10_1 + 252c: d51cba4f msr s3_4_c11_c10_2, x15 + 2530: d53cba4f mrs x15, s3_4_c11_c10_2 + 2534: d51cba6f msr s3_4_c11_c10_3, x15 + 2538: d53cba6f mrs x15, s3_4_c11_c10_3 + 253c: d51cba8f msr s3_4_c11_c10_4, x15 + 2540: d53cba8f mrs x15, s3_4_c11_c10_4 + 2544: d51cbaaf msr s3_4_c11_c10_5, x15 + 2548: d53cbaaf mrs x15, s3_4_c11_c10_5 + 254c: d51cbacf msr s3_4_c11_c10_6, x15 + 2550: d53cbacf mrs x15, s3_4_c11_c10_6 + 2554: d51cbaef msr s3_4_c11_c10_7, x15 + 2558: d53cbaef mrs x15, s3_4_c11_c10_7 + 255c: d51cbb0f msr s3_4_c11_c11_0, x15 + 2560: d53cbb0f mrs x15, s3_4_c11_c11_0 + 2564: d51cbb2f msr s3_4_c11_c11_1, x15 + 2568: d53cbb2f mrs x15, s3_4_c11_c11_1 + 256c: d51cbb4f msr s3_4_c11_c11_2, x15 + 2570: d53cbb4f mrs x15, s3_4_c11_c11_2 + 2574: d51cbb6f msr s3_4_c11_c11_3, x15 + 2578: d53cbb6f mrs x15, s3_4_c11_c11_3 + 257c: d51cbb8f msr s3_4_c11_c11_4, x15 + 2580: d53cbb8f mrs x15, s3_4_c11_c11_4 + 2584: d51cbbaf msr s3_4_c11_c11_5, x15 + 2588: d53cbbaf mrs x15, s3_4_c11_c11_5 + 258c: d51cbbcf msr s3_4_c11_c11_6, x15 + 2590: d53cbbcf mrs x15, s3_4_c11_c11_6 + 2594: d51cbbef msr s3_4_c11_c11_7, x15 + 2598: d53cbbef mrs x15, s3_4_c11_c11_7 + 259c: d51cbc0f msr s3_4_c11_c12_0, x15 + 25a0: d53cbc0f mrs x15, s3_4_c11_c12_0 + 25a4: d51cbc2f msr s3_4_c11_c12_1, x15 + 25a8: d53cbc2f mrs x15, s3_4_c11_c12_1 + 25ac: d51cbc4f msr s3_4_c11_c12_2, x15 + 25b0: d53cbc4f mrs x15, s3_4_c11_c12_2 + 25b4: d51cbc6f msr s3_4_c11_c12_3, x15 + 25b8: d53cbc6f mrs x15, s3_4_c11_c12_3 + 25bc: d51cbc8f msr s3_4_c11_c12_4, x15 + 25c0: d53cbc8f mrs x15, s3_4_c11_c12_4 + 25c4: d51cbcaf msr s3_4_c11_c12_5, x15 + 25c8: d53cbcaf mrs x15, s3_4_c11_c12_5 + 25cc: d51cbccf msr s3_4_c11_c12_6, x15 + 25d0: d53cbccf mrs x15, s3_4_c11_c12_6 + 25d4: d51cbcef msr s3_4_c11_c12_7, x15 + 25d8: d53cbcef mrs x15, s3_4_c11_c12_7 + 25dc: d51cbd0f msr s3_4_c11_c13_0, x15 + 25e0: d53cbd0f mrs x15, s3_4_c11_c13_0 + 25e4: d51cbd2f msr s3_4_c11_c13_1, x15 + 25e8: d53cbd2f mrs x15, s3_4_c11_c13_1 + 25ec: d51cbd4f msr s3_4_c11_c13_2, x15 + 25f0: d53cbd4f mrs x15, s3_4_c11_c13_2 + 25f4: d51cbd6f msr s3_4_c11_c13_3, x15 + 25f8: d53cbd6f mrs x15, s3_4_c11_c13_3 + 25fc: d51cbd8f msr s3_4_c11_c13_4, x15 + 2600: d53cbd8f mrs x15, s3_4_c11_c13_4 + 2604: d51cbdaf msr s3_4_c11_c13_5, x15 + 2608: d53cbdaf mrs x15, s3_4_c11_c13_5 + 260c: d51cbdcf msr s3_4_c11_c13_6, x15 + 2610: d53cbdcf mrs x15, s3_4_c11_c13_6 + 2614: d51cbdef msr s3_4_c11_c13_7, x15 + 2618: d53cbdef mrs x15, s3_4_c11_c13_7 + 261c: d51cbe0f msr s3_4_c11_c14_0, x15 + 2620: d53cbe0f mrs x15, s3_4_c11_c14_0 + 2624: d51cbe2f msr s3_4_c11_c14_1, x15 + 2628: d53cbe2f mrs x15, s3_4_c11_c14_1 + 262c: d51cbe4f msr s3_4_c11_c14_2, x15 + 2630: d53cbe4f mrs x15, s3_4_c11_c14_2 + 2634: d51cbe6f msr s3_4_c11_c14_3, x15 + 2638: d53cbe6f mrs x15, s3_4_c11_c14_3 + 263c: d51cbe8f msr s3_4_c11_c14_4, x15 + 2640: d53cbe8f mrs x15, s3_4_c11_c14_4 + 2644: d51cbeaf msr s3_4_c11_c14_5, x15 + 2648: d53cbeaf mrs x15, s3_4_c11_c14_5 + 264c: d51cbecf msr s3_4_c11_c14_6, x15 + 2650: d53cbecf mrs x15, s3_4_c11_c14_6 + 2654: d51cbeef msr s3_4_c11_c14_7, x15 + 2658: d53cbeef mrs x15, s3_4_c11_c14_7 + 265c: d51cbf0f msr s3_4_c11_c15_0, x15 + 2660: d53cbf0f mrs x15, s3_4_c11_c15_0 + 2664: d51cbf2f msr s3_4_c11_c15_1, x15 + 2668: d53cbf2f mrs x15, s3_4_c11_c15_1 + 266c: d51cbf4f msr s3_4_c11_c15_2, x15 + 2670: d53cbf4f mrs x15, s3_4_c11_c15_2 + 2674: d51cbf6f msr s3_4_c11_c15_3, x15 + 2678: d53cbf6f mrs x15, s3_4_c11_c15_3 + 267c: d51cbf8f msr s3_4_c11_c15_4, x15 + 2680: d53cbf8f mrs x15, s3_4_c11_c15_4 + 2684: d51cbfaf msr s3_4_c11_c15_5, x15 + 2688: d53cbfaf mrs x15, s3_4_c11_c15_5 + 268c: d51cbfcf msr s3_4_c11_c15_6, x15 + 2690: d53cbfcf mrs x15, s3_4_c11_c15_6 + 2694: d51cbfef msr s3_4_c11_c15_7, x15 + 2698: d53cbfef mrs x15, s3_4_c11_c15_7 + 269c: d51cf00f msr s3_4_c15_c0_0, x15 + 26a0: d53cf00f mrs x15, s3_4_c15_c0_0 + 26a4: d51cf02f msr s3_4_c15_c0_1, x15 + 26a8: d53cf02f mrs x15, s3_4_c15_c0_1 + 26ac: d51cf04f msr s3_4_c15_c0_2, x15 + 26b0: d53cf04f mrs x15, s3_4_c15_c0_2 + 26b4: d51cf06f msr s3_4_c15_c0_3, x15 + 26b8: d53cf06f mrs x15, s3_4_c15_c0_3 + 26bc: d51cf08f msr s3_4_c15_c0_4, x15 + 26c0: d53cf08f mrs x15, s3_4_c15_c0_4 + 26c4: d51cf0af msr s3_4_c15_c0_5, x15 + 26c8: d53cf0af mrs x15, s3_4_c15_c0_5 + 26cc: d51cf0cf msr s3_4_c15_c0_6, x15 + 26d0: d53cf0cf mrs x15, s3_4_c15_c0_6 + 26d4: d51cf0ef msr s3_4_c15_c0_7, x15 + 26d8: d53cf0ef mrs x15, s3_4_c15_c0_7 + 26dc: d51cf10f msr s3_4_c15_c1_0, x15 + 26e0: d53cf10f mrs x15, s3_4_c15_c1_0 + 26e4: d51cf12f msr s3_4_c15_c1_1, x15 + 26e8: d53cf12f mrs x15, s3_4_c15_c1_1 + 26ec: d51cf14f msr s3_4_c15_c1_2, x15 + 26f0: d53cf14f mrs x15, s3_4_c15_c1_2 + 26f4: d51cf16f msr s3_4_c15_c1_3, x15 + 26f8: d53cf16f mrs x15, s3_4_c15_c1_3 + 26fc: d51cf18f msr s3_4_c15_c1_4, x15 + 2700: d53cf18f mrs x15, s3_4_c15_c1_4 + 2704: d51cf1af msr s3_4_c15_c1_5, x15 + 2708: d53cf1af mrs x15, s3_4_c15_c1_5 + 270c: d51cf1cf msr s3_4_c15_c1_6, x15 + 2710: d53cf1cf mrs x15, s3_4_c15_c1_6 + 2714: d51cf1ef msr s3_4_c15_c1_7, x15 + 2718: d53cf1ef mrs x15, s3_4_c15_c1_7 + 271c: d51cf20f msr s3_4_c15_c2_0, x15 + 2720: d53cf20f mrs x15, s3_4_c15_c2_0 + 2724: d51cf22f msr s3_4_c15_c2_1, x15 + 2728: d53cf22f mrs x15, s3_4_c15_c2_1 + 272c: d51cf24f msr s3_4_c15_c2_2, x15 + 2730: d53cf24f mrs x15, s3_4_c15_c2_2 + 2734: d51cf26f msr s3_4_c15_c2_3, x15 + 2738: d53cf26f mrs x15, s3_4_c15_c2_3 + 273c: d51cf28f msr s3_4_c15_c2_4, x15 + 2740: d53cf28f mrs x15, s3_4_c15_c2_4 + 2744: d51cf2af msr s3_4_c15_c2_5, x15 + 2748: d53cf2af mrs x15, s3_4_c15_c2_5 + 274c: d51cf2cf msr s3_4_c15_c2_6, x15 + 2750: d53cf2cf mrs x15, s3_4_c15_c2_6 + 2754: d51cf2ef msr s3_4_c15_c2_7, x15 + 2758: d53cf2ef mrs x15, s3_4_c15_c2_7 + 275c: d51cf30f msr s3_4_c15_c3_0, x15 + 2760: d53cf30f mrs x15, s3_4_c15_c3_0 + 2764: d51cf32f msr s3_4_c15_c3_1, x15 + 2768: d53cf32f mrs x15, s3_4_c15_c3_1 + 276c: d51cf34f msr s3_4_c15_c3_2, x15 + 2770: d53cf34f mrs x15, s3_4_c15_c3_2 + 2774: d51cf36f msr s3_4_c15_c3_3, x15 + 2778: d53cf36f mrs x15, s3_4_c15_c3_3 + 277c: d51cf38f msr s3_4_c15_c3_4, x15 + 2780: d53cf38f mrs x15, s3_4_c15_c3_4 + 2784: d51cf3af msr s3_4_c15_c3_5, x15 + 2788: d53cf3af mrs x15, s3_4_c15_c3_5 + 278c: d51cf3cf msr s3_4_c15_c3_6, x15 + 2790: d53cf3cf mrs x15, s3_4_c15_c3_6 + 2794: d51cf3ef msr s3_4_c15_c3_7, x15 + 2798: d53cf3ef mrs x15, s3_4_c15_c3_7 + 279c: d51cf40f msr s3_4_c15_c4_0, x15 + 27a0: d53cf40f mrs x15, s3_4_c15_c4_0 + 27a4: d51cf42f msr s3_4_c15_c4_1, x15 + 27a8: d53cf42f mrs x15, s3_4_c15_c4_1 + 27ac: d51cf44f msr s3_4_c15_c4_2, x15 + 27b0: d53cf44f mrs x15, s3_4_c15_c4_2 + 27b4: d51cf46f msr s3_4_c15_c4_3, x15 + 27b8: d53cf46f mrs x15, s3_4_c15_c4_3 + 27bc: d51cf48f msr s3_4_c15_c4_4, x15 + 27c0: d53cf48f mrs x15, s3_4_c15_c4_4 + 27c4: d51cf4af msr s3_4_c15_c4_5, x15 + 27c8: d53cf4af mrs x15, s3_4_c15_c4_5 + 27cc: d51cf4cf msr s3_4_c15_c4_6, x15 + 27d0: d53cf4cf mrs x15, s3_4_c15_c4_6 + 27d4: d51cf4ef msr s3_4_c15_c4_7, x15 + 27d8: d53cf4ef mrs x15, s3_4_c15_c4_7 + 27dc: d51cf50f msr s3_4_c15_c5_0, x15 + 27e0: d53cf50f mrs x15, s3_4_c15_c5_0 + 27e4: d51cf52f msr s3_4_c15_c5_1, x15 + 27e8: d53cf52f mrs x15, s3_4_c15_c5_1 + 27ec: d51cf54f msr s3_4_c15_c5_2, x15 + 27f0: d53cf54f mrs x15, s3_4_c15_c5_2 + 27f4: d51cf56f msr s3_4_c15_c5_3, x15 + 27f8: d53cf56f mrs x15, s3_4_c15_c5_3 + 27fc: d51cf58f msr s3_4_c15_c5_4, x15 + 2800: d53cf58f mrs x15, s3_4_c15_c5_4 + 2804: d51cf5af msr s3_4_c15_c5_5, x15 + 2808: d53cf5af mrs x15, s3_4_c15_c5_5 + 280c: d51cf5cf msr s3_4_c15_c5_6, x15 + 2810: d53cf5cf mrs x15, s3_4_c15_c5_6 + 2814: d51cf5ef msr s3_4_c15_c5_7, x15 + 2818: d53cf5ef mrs x15, s3_4_c15_c5_7 + 281c: d51cf60f msr s3_4_c15_c6_0, x15 + 2820: d53cf60f mrs x15, s3_4_c15_c6_0 + 2824: d51cf62f msr s3_4_c15_c6_1, x15 + 2828: d53cf62f mrs x15, s3_4_c15_c6_1 + 282c: d51cf64f msr s3_4_c15_c6_2, x15 + 2830: d53cf64f mrs x15, s3_4_c15_c6_2 + 2834: d51cf66f msr s3_4_c15_c6_3, x15 + 2838: d53cf66f mrs x15, s3_4_c15_c6_3 + 283c: d51cf68f msr s3_4_c15_c6_4, x15 + 2840: d53cf68f mrs x15, s3_4_c15_c6_4 + 2844: d51cf6af msr s3_4_c15_c6_5, x15 + 2848: d53cf6af mrs x15, s3_4_c15_c6_5 + 284c: d51cf6cf msr s3_4_c15_c6_6, x15 + 2850: d53cf6cf mrs x15, s3_4_c15_c6_6 + 2854: d51cf6ef msr s3_4_c15_c6_7, x15 + 2858: d53cf6ef mrs x15, s3_4_c15_c6_7 + 285c: d51cf70f msr s3_4_c15_c7_0, x15 + 2860: d53cf70f mrs x15, s3_4_c15_c7_0 + 2864: d51cf72f msr s3_4_c15_c7_1, x15 + 2868: d53cf72f mrs x15, s3_4_c15_c7_1 + 286c: d51cf74f msr s3_4_c15_c7_2, x15 + 2870: d53cf74f mrs x15, s3_4_c15_c7_2 + 2874: d51cf76f msr s3_4_c15_c7_3, x15 + 2878: d53cf76f mrs x15, s3_4_c15_c7_3 + 287c: d51cf78f msr s3_4_c15_c7_4, x15 + 2880: d53cf78f mrs x15, s3_4_c15_c7_4 + 2884: d51cf7af msr s3_4_c15_c7_5, x15 + 2888: d53cf7af mrs x15, s3_4_c15_c7_5 + 288c: d51cf7cf msr s3_4_c15_c7_6, x15 + 2890: d53cf7cf mrs x15, s3_4_c15_c7_6 + 2894: d51cf7ef msr s3_4_c15_c7_7, x15 + 2898: d53cf7ef mrs x15, s3_4_c15_c7_7 + 289c: d51cf80f msr s3_4_c15_c8_0, x15 + 28a0: d53cf80f mrs x15, s3_4_c15_c8_0 + 28a4: d51cf82f msr s3_4_c15_c8_1, x15 + 28a8: d53cf82f mrs x15, s3_4_c15_c8_1 + 28ac: d51cf84f msr s3_4_c15_c8_2, x15 + 28b0: d53cf84f mrs x15, s3_4_c15_c8_2 + 28b4: d51cf86f msr s3_4_c15_c8_3, x15 + 28b8: d53cf86f mrs x15, s3_4_c15_c8_3 + 28bc: d51cf88f msr s3_4_c15_c8_4, x15 + 28c0: d53cf88f mrs x15, s3_4_c15_c8_4 + 28c4: d51cf8af msr s3_4_c15_c8_5, x15 + 28c8: d53cf8af mrs x15, s3_4_c15_c8_5 + 28cc: d51cf8cf msr s3_4_c15_c8_6, x15 + 28d0: d53cf8cf mrs x15, s3_4_c15_c8_6 + 28d4: d51cf8ef msr s3_4_c15_c8_7, x15 + 28d8: d53cf8ef mrs x15, s3_4_c15_c8_7 + 28dc: d51cf90f msr s3_4_c15_c9_0, x15 + 28e0: d53cf90f mrs x15, s3_4_c15_c9_0 + 28e4: d51cf92f msr s3_4_c15_c9_1, x15 + 28e8: d53cf92f mrs x15, s3_4_c15_c9_1 + 28ec: d51cf94f msr s3_4_c15_c9_2, x15 + 28f0: d53cf94f mrs x15, s3_4_c15_c9_2 + 28f4: d51cf96f msr s3_4_c15_c9_3, x15 + 28f8: d53cf96f mrs x15, s3_4_c15_c9_3 + 28fc: d51cf98f msr s3_4_c15_c9_4, x15 + 2900: d53cf98f mrs x15, s3_4_c15_c9_4 + 2904: d51cf9af msr s3_4_c15_c9_5, x15 + 2908: d53cf9af mrs x15, s3_4_c15_c9_5 + 290c: d51cf9cf msr s3_4_c15_c9_6, x15 + 2910: d53cf9cf mrs x15, s3_4_c15_c9_6 + 2914: d51cf9ef msr s3_4_c15_c9_7, x15 + 2918: d53cf9ef mrs x15, s3_4_c15_c9_7 + 291c: d51cfa0f msr s3_4_c15_c10_0, x15 + 2920: d53cfa0f mrs x15, s3_4_c15_c10_0 + 2924: d51cfa2f msr s3_4_c15_c10_1, x15 + 2928: d53cfa2f mrs x15, s3_4_c15_c10_1 + 292c: d51cfa4f msr s3_4_c15_c10_2, x15 + 2930: d53cfa4f mrs x15, s3_4_c15_c10_2 + 2934: d51cfa6f msr s3_4_c15_c10_3, x15 + 2938: d53cfa6f mrs x15, s3_4_c15_c10_3 + 293c: d51cfa8f msr s3_4_c15_c10_4, x15 + 2940: d53cfa8f mrs x15, s3_4_c15_c10_4 + 2944: d51cfaaf msr s3_4_c15_c10_5, x15 + 2948: d53cfaaf mrs x15, s3_4_c15_c10_5 + 294c: d51cfacf msr s3_4_c15_c10_6, x15 + 2950: d53cfacf mrs x15, s3_4_c15_c10_6 + 2954: d51cfaef msr s3_4_c15_c10_7, x15 + 2958: d53cfaef mrs x15, s3_4_c15_c10_7 + 295c: d51cfb0f msr s3_4_c15_c11_0, x15 + 2960: d53cfb0f mrs x15, s3_4_c15_c11_0 + 2964: d51cfb2f msr s3_4_c15_c11_1, x15 + 2968: d53cfb2f mrs x15, s3_4_c15_c11_1 + 296c: d51cfb4f msr s3_4_c15_c11_2, x15 + 2970: d53cfb4f mrs x15, s3_4_c15_c11_2 + 2974: d51cfb6f msr s3_4_c15_c11_3, x15 + 2978: d53cfb6f mrs x15, s3_4_c15_c11_3 + 297c: d51cfb8f msr s3_4_c15_c11_4, x15 + 2980: d53cfb8f mrs x15, s3_4_c15_c11_4 + 2984: d51cfbaf msr s3_4_c15_c11_5, x15 + 2988: d53cfbaf mrs x15, s3_4_c15_c11_5 + 298c: d51cfbcf msr s3_4_c15_c11_6, x15 + 2990: d53cfbcf mrs x15, s3_4_c15_c11_6 + 2994: d51cfbef msr s3_4_c15_c11_7, x15 + 2998: d53cfbef mrs x15, s3_4_c15_c11_7 + 299c: d51cfc0f msr s3_4_c15_c12_0, x15 + 29a0: d53cfc0f mrs x15, s3_4_c15_c12_0 + 29a4: d51cfc2f msr s3_4_c15_c12_1, x15 + 29a8: d53cfc2f mrs x15, s3_4_c15_c12_1 + 29ac: d51cfc4f msr s3_4_c15_c12_2, x15 + 29b0: d53cfc4f mrs x15, s3_4_c15_c12_2 + 29b4: d51cfc6f msr s3_4_c15_c12_3, x15 + 29b8: d53cfc6f mrs x15, s3_4_c15_c12_3 + 29bc: d51cfc8f msr s3_4_c15_c12_4, x15 + 29c0: d53cfc8f mrs x15, s3_4_c15_c12_4 + 29c4: d51cfcaf msr s3_4_c15_c12_5, x15 + 29c8: d53cfcaf mrs x15, s3_4_c15_c12_5 + 29cc: d51cfccf msr s3_4_c15_c12_6, x15 + 29d0: d53cfccf mrs x15, s3_4_c15_c12_6 + 29d4: d51cfcef msr s3_4_c15_c12_7, x15 + 29d8: d53cfcef mrs x15, s3_4_c15_c12_7 + 29dc: d51cfd0f msr s3_4_c15_c13_0, x15 + 29e0: d53cfd0f mrs x15, s3_4_c15_c13_0 + 29e4: d51cfd2f msr s3_4_c15_c13_1, x15 + 29e8: d53cfd2f mrs x15, s3_4_c15_c13_1 + 29ec: d51cfd4f msr s3_4_c15_c13_2, x15 + 29f0: d53cfd4f mrs x15, s3_4_c15_c13_2 + 29f4: d51cfd6f msr s3_4_c15_c13_3, x15 + 29f8: d53cfd6f mrs x15, s3_4_c15_c13_3 + 29fc: d51cfd8f msr s3_4_c15_c13_4, x15 + 2a00: d53cfd8f mrs x15, s3_4_c15_c13_4 + 2a04: d51cfdaf msr s3_4_c15_c13_5, x15 + 2a08: d53cfdaf mrs x15, s3_4_c15_c13_5 + 2a0c: d51cfdcf msr s3_4_c15_c13_6, x15 + 2a10: d53cfdcf mrs x15, s3_4_c15_c13_6 + 2a14: d51cfdef msr s3_4_c15_c13_7, x15 + 2a18: d53cfdef mrs x15, s3_4_c15_c13_7 + 2a1c: d51cfe0f msr s3_4_c15_c14_0, x15 + 2a20: d53cfe0f mrs x15, s3_4_c15_c14_0 + 2a24: d51cfe2f msr s3_4_c15_c14_1, x15 + 2a28: d53cfe2f mrs x15, s3_4_c15_c14_1 + 2a2c: d51cfe4f msr s3_4_c15_c14_2, x15 + 2a30: d53cfe4f mrs x15, s3_4_c15_c14_2 + 2a34: d51cfe6f msr s3_4_c15_c14_3, x15 + 2a38: d53cfe6f mrs x15, s3_4_c15_c14_3 + 2a3c: d51cfe8f msr s3_4_c15_c14_4, x15 + 2a40: d53cfe8f mrs x15, s3_4_c15_c14_4 + 2a44: d51cfeaf msr s3_4_c15_c14_5, x15 + 2a48: d53cfeaf mrs x15, s3_4_c15_c14_5 + 2a4c: d51cfecf msr s3_4_c15_c14_6, x15 + 2a50: d53cfecf mrs x15, s3_4_c15_c14_6 + 2a54: d51cfeef msr s3_4_c15_c14_7, x15 + 2a58: d53cfeef mrs x15, s3_4_c15_c14_7 + 2a5c: d51cff0f msr s3_4_c15_c15_0, x15 + 2a60: d53cff0f mrs x15, s3_4_c15_c15_0 + 2a64: d51cff2f msr s3_4_c15_c15_1, x15 + 2a68: d53cff2f mrs x15, s3_4_c15_c15_1 + 2a6c: d51cff4f msr s3_4_c15_c15_2, x15 + 2a70: d53cff4f mrs x15, s3_4_c15_c15_2 + 2a74: d51cff6f msr s3_4_c15_c15_3, x15 + 2a78: d53cff6f mrs x15, s3_4_c15_c15_3 + 2a7c: d51cff8f msr s3_4_c15_c15_4, x15 + 2a80: d53cff8f mrs x15, s3_4_c15_c15_4 + 2a84: d51cffaf msr s3_4_c15_c15_5, x15 + 2a88: d53cffaf mrs x15, s3_4_c15_c15_5 + 2a8c: d51cffcf msr s3_4_c15_c15_6, x15 + 2a90: d53cffcf mrs x15, s3_4_c15_c15_6 + 2a94: d51cffef msr s3_4_c15_c15_7, x15 + 2a98: d53cffef mrs x15, s3_4_c15_c15_7 + 2a9c: d51db00f msr s3_5_c11_c0_0, x15 + 2aa0: d53db00f mrs x15, s3_5_c11_c0_0 + 2aa4: d51db02f msr s3_5_c11_c0_1, x15 + 2aa8: d53db02f mrs x15, s3_5_c11_c0_1 + 2aac: d51db04f msr s3_5_c11_c0_2, x15 + 2ab0: d53db04f mrs x15, s3_5_c11_c0_2 + 2ab4: d51db06f msr s3_5_c11_c0_3, x15 + 2ab8: d53db06f mrs x15, s3_5_c11_c0_3 + 2abc: d51db08f msr s3_5_c11_c0_4, x15 + 2ac0: d53db08f mrs x15, s3_5_c11_c0_4 + 2ac4: d51db0af msr s3_5_c11_c0_5, x15 + 2ac8: d53db0af mrs x15, s3_5_c11_c0_5 + 2acc: d51db0cf msr s3_5_c11_c0_6, x15 + 2ad0: d53db0cf mrs x15, s3_5_c11_c0_6 + 2ad4: d51db0ef msr s3_5_c11_c0_7, x15 + 2ad8: d53db0ef mrs x15, s3_5_c11_c0_7 + 2adc: d51db10f msr s3_5_c11_c1_0, x15 + 2ae0: d53db10f mrs x15, s3_5_c11_c1_0 + 2ae4: d51db12f msr s3_5_c11_c1_1, x15 + 2ae8: d53db12f mrs x15, s3_5_c11_c1_1 + 2aec: d51db14f msr s3_5_c11_c1_2, x15 + 2af0: d53db14f mrs x15, s3_5_c11_c1_2 + 2af4: d51db16f msr s3_5_c11_c1_3, x15 + 2af8: d53db16f mrs x15, s3_5_c11_c1_3 + 2afc: d51db18f msr s3_5_c11_c1_4, x15 + 2b00: d53db18f mrs x15, s3_5_c11_c1_4 + 2b04: d51db1af msr s3_5_c11_c1_5, x15 + 2b08: d53db1af mrs x15, s3_5_c11_c1_5 + 2b0c: d51db1cf msr s3_5_c11_c1_6, x15 + 2b10: d53db1cf mrs x15, s3_5_c11_c1_6 + 2b14: d51db1ef msr s3_5_c11_c1_7, x15 + 2b18: d53db1ef mrs x15, s3_5_c11_c1_7 + 2b1c: d51db20f msr s3_5_c11_c2_0, x15 + 2b20: d53db20f mrs x15, s3_5_c11_c2_0 + 2b24: d51db22f msr s3_5_c11_c2_1, x15 + 2b28: d53db22f mrs x15, s3_5_c11_c2_1 + 2b2c: d51db24f msr s3_5_c11_c2_2, x15 + 2b30: d53db24f mrs x15, s3_5_c11_c2_2 + 2b34: d51db26f msr s3_5_c11_c2_3, x15 + 2b38: d53db26f mrs x15, s3_5_c11_c2_3 + 2b3c: d51db28f msr s3_5_c11_c2_4, x15 + 2b40: d53db28f mrs x15, s3_5_c11_c2_4 + 2b44: d51db2af msr s3_5_c11_c2_5, x15 + 2b48: d53db2af mrs x15, s3_5_c11_c2_5 + 2b4c: d51db2cf msr s3_5_c11_c2_6, x15 + 2b50: d53db2cf mrs x15, s3_5_c11_c2_6 + 2b54: d51db2ef msr s3_5_c11_c2_7, x15 + 2b58: d53db2ef mrs x15, s3_5_c11_c2_7 + 2b5c: d51db30f msr s3_5_c11_c3_0, x15 + 2b60: d53db30f mrs x15, s3_5_c11_c3_0 + 2b64: d51db32f msr s3_5_c11_c3_1, x15 + 2b68: d53db32f mrs x15, s3_5_c11_c3_1 + 2b6c: d51db34f msr s3_5_c11_c3_2, x15 + 2b70: d53db34f mrs x15, s3_5_c11_c3_2 + 2b74: d51db36f msr s3_5_c11_c3_3, x15 + 2b78: d53db36f mrs x15, s3_5_c11_c3_3 + 2b7c: d51db38f msr s3_5_c11_c3_4, x15 + 2b80: d53db38f mrs x15, s3_5_c11_c3_4 + 2b84: d51db3af msr s3_5_c11_c3_5, x15 + 2b88: d53db3af mrs x15, s3_5_c11_c3_5 + 2b8c: d51db3cf msr s3_5_c11_c3_6, x15 + 2b90: d53db3cf mrs x15, s3_5_c11_c3_6 + 2b94: d51db3ef msr s3_5_c11_c3_7, x15 + 2b98: d53db3ef mrs x15, s3_5_c11_c3_7 + 2b9c: d51db40f msr s3_5_c11_c4_0, x15 + 2ba0: d53db40f mrs x15, s3_5_c11_c4_0 + 2ba4: d51db42f msr s3_5_c11_c4_1, x15 + 2ba8: d53db42f mrs x15, s3_5_c11_c4_1 + 2bac: d51db44f msr s3_5_c11_c4_2, x15 + 2bb0: d53db44f mrs x15, s3_5_c11_c4_2 + 2bb4: d51db46f msr s3_5_c11_c4_3, x15 + 2bb8: d53db46f mrs x15, s3_5_c11_c4_3 + 2bbc: d51db48f msr s3_5_c11_c4_4, x15 + 2bc0: d53db48f mrs x15, s3_5_c11_c4_4 + 2bc4: d51db4af msr s3_5_c11_c4_5, x15 + 2bc8: d53db4af mrs x15, s3_5_c11_c4_5 + 2bcc: d51db4cf msr s3_5_c11_c4_6, x15 + 2bd0: d53db4cf mrs x15, s3_5_c11_c4_6 + 2bd4: d51db4ef msr s3_5_c11_c4_7, x15 + 2bd8: d53db4ef mrs x15, s3_5_c11_c4_7 + 2bdc: d51db50f msr s3_5_c11_c5_0, x15 + 2be0: d53db50f mrs x15, s3_5_c11_c5_0 + 2be4: d51db52f msr s3_5_c11_c5_1, x15 + 2be8: d53db52f mrs x15, s3_5_c11_c5_1 + 2bec: d51db54f msr s3_5_c11_c5_2, x15 + 2bf0: d53db54f mrs x15, s3_5_c11_c5_2 + 2bf4: d51db56f msr s3_5_c11_c5_3, x15 + 2bf8: d53db56f mrs x15, s3_5_c11_c5_3 + 2bfc: d51db58f msr s3_5_c11_c5_4, x15 + 2c00: d53db58f mrs x15, s3_5_c11_c5_4 + 2c04: d51db5af msr s3_5_c11_c5_5, x15 + 2c08: d53db5af mrs x15, s3_5_c11_c5_5 + 2c0c: d51db5cf msr s3_5_c11_c5_6, x15 + 2c10: d53db5cf mrs x15, s3_5_c11_c5_6 + 2c14: d51db5ef msr s3_5_c11_c5_7, x15 + 2c18: d53db5ef mrs x15, s3_5_c11_c5_7 + 2c1c: d51db60f msr s3_5_c11_c6_0, x15 + 2c20: d53db60f mrs x15, s3_5_c11_c6_0 + 2c24: d51db62f msr s3_5_c11_c6_1, x15 + 2c28: d53db62f mrs x15, s3_5_c11_c6_1 + 2c2c: d51db64f msr s3_5_c11_c6_2, x15 + 2c30: d53db64f mrs x15, s3_5_c11_c6_2 + 2c34: d51db66f msr s3_5_c11_c6_3, x15 + 2c38: d53db66f mrs x15, s3_5_c11_c6_3 + 2c3c: d51db68f msr s3_5_c11_c6_4, x15 + 2c40: d53db68f mrs x15, s3_5_c11_c6_4 + 2c44: d51db6af msr s3_5_c11_c6_5, x15 + 2c48: d53db6af mrs x15, s3_5_c11_c6_5 + 2c4c: d51db6cf msr s3_5_c11_c6_6, x15 + 2c50: d53db6cf mrs x15, s3_5_c11_c6_6 + 2c54: d51db6ef msr s3_5_c11_c6_7, x15 + 2c58: d53db6ef mrs x15, s3_5_c11_c6_7 + 2c5c: d51db70f msr s3_5_c11_c7_0, x15 + 2c60: d53db70f mrs x15, s3_5_c11_c7_0 + 2c64: d51db72f msr s3_5_c11_c7_1, x15 + 2c68: d53db72f mrs x15, s3_5_c11_c7_1 + 2c6c: d51db74f msr s3_5_c11_c7_2, x15 + 2c70: d53db74f mrs x15, s3_5_c11_c7_2 + 2c74: d51db76f msr s3_5_c11_c7_3, x15 + 2c78: d53db76f mrs x15, s3_5_c11_c7_3 + 2c7c: d51db78f msr s3_5_c11_c7_4, x15 + 2c80: d53db78f mrs x15, s3_5_c11_c7_4 + 2c84: d51db7af msr s3_5_c11_c7_5, x15 + 2c88: d53db7af mrs x15, s3_5_c11_c7_5 + 2c8c: d51db7cf msr s3_5_c11_c7_6, x15 + 2c90: d53db7cf mrs x15, s3_5_c11_c7_6 + 2c94: d51db7ef msr s3_5_c11_c7_7, x15 + 2c98: d53db7ef mrs x15, s3_5_c11_c7_7 + 2c9c: d51db80f msr s3_5_c11_c8_0, x15 + 2ca0: d53db80f mrs x15, s3_5_c11_c8_0 + 2ca4: d51db82f msr s3_5_c11_c8_1, x15 + 2ca8: d53db82f mrs x15, s3_5_c11_c8_1 + 2cac: d51db84f msr s3_5_c11_c8_2, x15 + 2cb0: d53db84f mrs x15, s3_5_c11_c8_2 + 2cb4: d51db86f msr s3_5_c11_c8_3, x15 + 2cb8: d53db86f mrs x15, s3_5_c11_c8_3 + 2cbc: d51db88f msr s3_5_c11_c8_4, x15 + 2cc0: d53db88f mrs x15, s3_5_c11_c8_4 + 2cc4: d51db8af msr s3_5_c11_c8_5, x15 + 2cc8: d53db8af mrs x15, s3_5_c11_c8_5 + 2ccc: d51db8cf msr s3_5_c11_c8_6, x15 + 2cd0: d53db8cf mrs x15, s3_5_c11_c8_6 + 2cd4: d51db8ef msr s3_5_c11_c8_7, x15 + 2cd8: d53db8ef mrs x15, s3_5_c11_c8_7 + 2cdc: d51db90f msr s3_5_c11_c9_0, x15 + 2ce0: d53db90f mrs x15, s3_5_c11_c9_0 + 2ce4: d51db92f msr s3_5_c11_c9_1, x15 + 2ce8: d53db92f mrs x15, s3_5_c11_c9_1 + 2cec: d51db94f msr s3_5_c11_c9_2, x15 + 2cf0: d53db94f mrs x15, s3_5_c11_c9_2 + 2cf4: d51db96f msr s3_5_c11_c9_3, x15 + 2cf8: d53db96f mrs x15, s3_5_c11_c9_3 + 2cfc: d51db98f msr s3_5_c11_c9_4, x15 + 2d00: d53db98f mrs x15, s3_5_c11_c9_4 + 2d04: d51db9af msr s3_5_c11_c9_5, x15 + 2d08: d53db9af mrs x15, s3_5_c11_c9_5 + 2d0c: d51db9cf msr s3_5_c11_c9_6, x15 + 2d10: d53db9cf mrs x15, s3_5_c11_c9_6 + 2d14: d51db9ef msr s3_5_c11_c9_7, x15 + 2d18: d53db9ef mrs x15, s3_5_c11_c9_7 + 2d1c: d51dba0f msr s3_5_c11_c10_0, x15 + 2d20: d53dba0f mrs x15, s3_5_c11_c10_0 + 2d24: d51dba2f msr s3_5_c11_c10_1, x15 + 2d28: d53dba2f mrs x15, s3_5_c11_c10_1 + 2d2c: d51dba4f msr s3_5_c11_c10_2, x15 + 2d30: d53dba4f mrs x15, s3_5_c11_c10_2 + 2d34: d51dba6f msr s3_5_c11_c10_3, x15 + 2d38: d53dba6f mrs x15, s3_5_c11_c10_3 + 2d3c: d51dba8f msr s3_5_c11_c10_4, x15 + 2d40: d53dba8f mrs x15, s3_5_c11_c10_4 + 2d44: d51dbaaf msr s3_5_c11_c10_5, x15 + 2d48: d53dbaaf mrs x15, s3_5_c11_c10_5 + 2d4c: d51dbacf msr s3_5_c11_c10_6, x15 + 2d50: d53dbacf mrs x15, s3_5_c11_c10_6 + 2d54: d51dbaef msr s3_5_c11_c10_7, x15 + 2d58: d53dbaef mrs x15, s3_5_c11_c10_7 + 2d5c: d51dbb0f msr s3_5_c11_c11_0, x15 + 2d60: d53dbb0f mrs x15, s3_5_c11_c11_0 + 2d64: d51dbb2f msr s3_5_c11_c11_1, x15 + 2d68: d53dbb2f mrs x15, s3_5_c11_c11_1 + 2d6c: d51dbb4f msr s3_5_c11_c11_2, x15 + 2d70: d53dbb4f mrs x15, s3_5_c11_c11_2 + 2d74: d51dbb6f msr s3_5_c11_c11_3, x15 + 2d78: d53dbb6f mrs x15, s3_5_c11_c11_3 + 2d7c: d51dbb8f msr s3_5_c11_c11_4, x15 + 2d80: d53dbb8f mrs x15, s3_5_c11_c11_4 + 2d84: d51dbbaf msr s3_5_c11_c11_5, x15 + 2d88: d53dbbaf mrs x15, s3_5_c11_c11_5 + 2d8c: d51dbbcf msr s3_5_c11_c11_6, x15 + 2d90: d53dbbcf mrs x15, s3_5_c11_c11_6 + 2d94: d51dbbef msr s3_5_c11_c11_7, x15 + 2d98: d53dbbef mrs x15, s3_5_c11_c11_7 + 2d9c: d51dbc0f msr s3_5_c11_c12_0, x15 + 2da0: d53dbc0f mrs x15, s3_5_c11_c12_0 + 2da4: d51dbc2f msr s3_5_c11_c12_1, x15 + 2da8: d53dbc2f mrs x15, s3_5_c11_c12_1 + 2dac: d51dbc4f msr s3_5_c11_c12_2, x15 + 2db0: d53dbc4f mrs x15, s3_5_c11_c12_2 + 2db4: d51dbc6f msr s3_5_c11_c12_3, x15 + 2db8: d53dbc6f mrs x15, s3_5_c11_c12_3 + 2dbc: d51dbc8f msr s3_5_c11_c12_4, x15 + 2dc0: d53dbc8f mrs x15, s3_5_c11_c12_4 + 2dc4: d51dbcaf msr s3_5_c11_c12_5, x15 + 2dc8: d53dbcaf mrs x15, s3_5_c11_c12_5 + 2dcc: d51dbccf msr s3_5_c11_c12_6, x15 + 2dd0: d53dbccf mrs x15, s3_5_c11_c12_6 + 2dd4: d51dbcef msr s3_5_c11_c12_7, x15 + 2dd8: d53dbcef mrs x15, s3_5_c11_c12_7 + 2ddc: d51dbd0f msr s3_5_c11_c13_0, x15 + 2de0: d53dbd0f mrs x15, s3_5_c11_c13_0 + 2de4: d51dbd2f msr s3_5_c11_c13_1, x15 + 2de8: d53dbd2f mrs x15, s3_5_c11_c13_1 + 2dec: d51dbd4f msr s3_5_c11_c13_2, x15 + 2df0: d53dbd4f mrs x15, s3_5_c11_c13_2 + 2df4: d51dbd6f msr s3_5_c11_c13_3, x15 + 2df8: d53dbd6f mrs x15, s3_5_c11_c13_3 + 2dfc: d51dbd8f msr s3_5_c11_c13_4, x15 + 2e00: d53dbd8f mrs x15, s3_5_c11_c13_4 + 2e04: d51dbdaf msr s3_5_c11_c13_5, x15 + 2e08: d53dbdaf mrs x15, s3_5_c11_c13_5 + 2e0c: d51dbdcf msr s3_5_c11_c13_6, x15 + 2e10: d53dbdcf mrs x15, s3_5_c11_c13_6 + 2e14: d51dbdef msr s3_5_c11_c13_7, x15 + 2e18: d53dbdef mrs x15, s3_5_c11_c13_7 + 2e1c: d51dbe0f msr s3_5_c11_c14_0, x15 + 2e20: d53dbe0f mrs x15, s3_5_c11_c14_0 + 2e24: d51dbe2f msr s3_5_c11_c14_1, x15 + 2e28: d53dbe2f mrs x15, s3_5_c11_c14_1 + 2e2c: d51dbe4f msr s3_5_c11_c14_2, x15 + 2e30: d53dbe4f mrs x15, s3_5_c11_c14_2 + 2e34: d51dbe6f msr s3_5_c11_c14_3, x15 + 2e38: d53dbe6f mrs x15, s3_5_c11_c14_3 + 2e3c: d51dbe8f msr s3_5_c11_c14_4, x15 + 2e40: d53dbe8f mrs x15, s3_5_c11_c14_4 + 2e44: d51dbeaf msr s3_5_c11_c14_5, x15 + 2e48: d53dbeaf mrs x15, s3_5_c11_c14_5 + 2e4c: d51dbecf msr s3_5_c11_c14_6, x15 + 2e50: d53dbecf mrs x15, s3_5_c11_c14_6 + 2e54: d51dbeef msr s3_5_c11_c14_7, x15 + 2e58: d53dbeef mrs x15, s3_5_c11_c14_7 + 2e5c: d51dbf0f msr s3_5_c11_c15_0, x15 + 2e60: d53dbf0f mrs x15, s3_5_c11_c15_0 + 2e64: d51dbf2f msr s3_5_c11_c15_1, x15 + 2e68: d53dbf2f mrs x15, s3_5_c11_c15_1 + 2e6c: d51dbf4f msr s3_5_c11_c15_2, x15 + 2e70: d53dbf4f mrs x15, s3_5_c11_c15_2 + 2e74: d51dbf6f msr s3_5_c11_c15_3, x15 + 2e78: d53dbf6f mrs x15, s3_5_c11_c15_3 + 2e7c: d51dbf8f msr s3_5_c11_c15_4, x15 + 2e80: d53dbf8f mrs x15, s3_5_c11_c15_4 + 2e84: d51dbfaf msr s3_5_c11_c15_5, x15 + 2e88: d53dbfaf mrs x15, s3_5_c11_c15_5 + 2e8c: d51dbfcf msr s3_5_c11_c15_6, x15 + 2e90: d53dbfcf mrs x15, s3_5_c11_c15_6 + 2e94: d51dbfef msr s3_5_c11_c15_7, x15 + 2e98: d53dbfef mrs x15, s3_5_c11_c15_7 + 2e9c: d51df00f msr s3_5_c15_c0_0, x15 + 2ea0: d53df00f mrs x15, s3_5_c15_c0_0 + 2ea4: d51df02f msr s3_5_c15_c0_1, x15 + 2ea8: d53df02f mrs x15, s3_5_c15_c0_1 + 2eac: d51df04f msr s3_5_c15_c0_2, x15 + 2eb0: d53df04f mrs x15, s3_5_c15_c0_2 + 2eb4: d51df06f msr s3_5_c15_c0_3, x15 + 2eb8: d53df06f mrs x15, s3_5_c15_c0_3 + 2ebc: d51df08f msr s3_5_c15_c0_4, x15 + 2ec0: d53df08f mrs x15, s3_5_c15_c0_4 + 2ec4: d51df0af msr s3_5_c15_c0_5, x15 + 2ec8: d53df0af mrs x15, s3_5_c15_c0_5 + 2ecc: d51df0cf msr s3_5_c15_c0_6, x15 + 2ed0: d53df0cf mrs x15, s3_5_c15_c0_6 + 2ed4: d51df0ef msr s3_5_c15_c0_7, x15 + 2ed8: d53df0ef mrs x15, s3_5_c15_c0_7 + 2edc: d51df10f msr s3_5_c15_c1_0, x15 + 2ee0: d53df10f mrs x15, s3_5_c15_c1_0 + 2ee4: d51df12f msr s3_5_c15_c1_1, x15 + 2ee8: d53df12f mrs x15, s3_5_c15_c1_1 + 2eec: d51df14f msr s3_5_c15_c1_2, x15 + 2ef0: d53df14f mrs x15, s3_5_c15_c1_2 + 2ef4: d51df16f msr s3_5_c15_c1_3, x15 + 2ef8: d53df16f mrs x15, s3_5_c15_c1_3 + 2efc: d51df18f msr s3_5_c15_c1_4, x15 + 2f00: d53df18f mrs x15, s3_5_c15_c1_4 + 2f04: d51df1af msr s3_5_c15_c1_5, x15 + 2f08: d53df1af mrs x15, s3_5_c15_c1_5 + 2f0c: d51df1cf msr s3_5_c15_c1_6, x15 + 2f10: d53df1cf mrs x15, s3_5_c15_c1_6 + 2f14: d51df1ef msr s3_5_c15_c1_7, x15 + 2f18: d53df1ef mrs x15, s3_5_c15_c1_7 + 2f1c: d51df20f msr s3_5_c15_c2_0, x15 + 2f20: d53df20f mrs x15, s3_5_c15_c2_0 + 2f24: d51df22f msr s3_5_c15_c2_1, x15 + 2f28: d53df22f mrs x15, s3_5_c15_c2_1 + 2f2c: d51df24f msr s3_5_c15_c2_2, x15 + 2f30: d53df24f mrs x15, s3_5_c15_c2_2 + 2f34: d51df26f msr s3_5_c15_c2_3, x15 + 2f38: d53df26f mrs x15, s3_5_c15_c2_3 + 2f3c: d51df28f msr s3_5_c15_c2_4, x15 + 2f40: d53df28f mrs x15, s3_5_c15_c2_4 + 2f44: d51df2af msr s3_5_c15_c2_5, x15 + 2f48: d53df2af mrs x15, s3_5_c15_c2_5 + 2f4c: d51df2cf msr s3_5_c15_c2_6, x15 + 2f50: d53df2cf mrs x15, s3_5_c15_c2_6 + 2f54: d51df2ef msr s3_5_c15_c2_7, x15 + 2f58: d53df2ef mrs x15, s3_5_c15_c2_7 + 2f5c: d51df30f msr s3_5_c15_c3_0, x15 + 2f60: d53df30f mrs x15, s3_5_c15_c3_0 + 2f64: d51df32f msr s3_5_c15_c3_1, x15 + 2f68: d53df32f mrs x15, s3_5_c15_c3_1 + 2f6c: d51df34f msr s3_5_c15_c3_2, x15 + 2f70: d53df34f mrs x15, s3_5_c15_c3_2 + 2f74: d51df36f msr s3_5_c15_c3_3, x15 + 2f78: d53df36f mrs x15, s3_5_c15_c3_3 + 2f7c: d51df38f msr s3_5_c15_c3_4, x15 + 2f80: d53df38f mrs x15, s3_5_c15_c3_4 + 2f84: d51df3af msr s3_5_c15_c3_5, x15 + 2f88: d53df3af mrs x15, s3_5_c15_c3_5 + 2f8c: d51df3cf msr s3_5_c15_c3_6, x15 + 2f90: d53df3cf mrs x15, s3_5_c15_c3_6 + 2f94: d51df3ef msr s3_5_c15_c3_7, x15 + 2f98: d53df3ef mrs x15, s3_5_c15_c3_7 + 2f9c: d51df40f msr s3_5_c15_c4_0, x15 + 2fa0: d53df40f mrs x15, s3_5_c15_c4_0 + 2fa4: d51df42f msr s3_5_c15_c4_1, x15 + 2fa8: d53df42f mrs x15, s3_5_c15_c4_1 + 2fac: d51df44f msr s3_5_c15_c4_2, x15 + 2fb0: d53df44f mrs x15, s3_5_c15_c4_2 + 2fb4: d51df46f msr s3_5_c15_c4_3, x15 + 2fb8: d53df46f mrs x15, s3_5_c15_c4_3 + 2fbc: d51df48f msr s3_5_c15_c4_4, x15 + 2fc0: d53df48f mrs x15, s3_5_c15_c4_4 + 2fc4: d51df4af msr s3_5_c15_c4_5, x15 + 2fc8: d53df4af mrs x15, s3_5_c15_c4_5 + 2fcc: d51df4cf msr s3_5_c15_c4_6, x15 + 2fd0: d53df4cf mrs x15, s3_5_c15_c4_6 + 2fd4: d51df4ef msr s3_5_c15_c4_7, x15 + 2fd8: d53df4ef mrs x15, s3_5_c15_c4_7 + 2fdc: d51df50f msr s3_5_c15_c5_0, x15 + 2fe0: d53df50f mrs x15, s3_5_c15_c5_0 + 2fe4: d51df52f msr s3_5_c15_c5_1, x15 + 2fe8: d53df52f mrs x15, s3_5_c15_c5_1 + 2fec: d51df54f msr s3_5_c15_c5_2, x15 + 2ff0: d53df54f mrs x15, s3_5_c15_c5_2 + 2ff4: d51df56f msr s3_5_c15_c5_3, x15 + 2ff8: d53df56f mrs x15, s3_5_c15_c5_3 + 2ffc: d51df58f msr s3_5_c15_c5_4, x15 + 3000: d53df58f mrs x15, s3_5_c15_c5_4 + 3004: d51df5af msr s3_5_c15_c5_5, x15 + 3008: d53df5af mrs x15, s3_5_c15_c5_5 + 300c: d51df5cf msr s3_5_c15_c5_6, x15 + 3010: d53df5cf mrs x15, s3_5_c15_c5_6 + 3014: d51df5ef msr s3_5_c15_c5_7, x15 + 3018: d53df5ef mrs x15, s3_5_c15_c5_7 + 301c: d51df60f msr s3_5_c15_c6_0, x15 + 3020: d53df60f mrs x15, s3_5_c15_c6_0 + 3024: d51df62f msr s3_5_c15_c6_1, x15 + 3028: d53df62f mrs x15, s3_5_c15_c6_1 + 302c: d51df64f msr s3_5_c15_c6_2, x15 + 3030: d53df64f mrs x15, s3_5_c15_c6_2 + 3034: d51df66f msr s3_5_c15_c6_3, x15 + 3038: d53df66f mrs x15, s3_5_c15_c6_3 + 303c: d51df68f msr s3_5_c15_c6_4, x15 + 3040: d53df68f mrs x15, s3_5_c15_c6_4 + 3044: d51df6af msr s3_5_c15_c6_5, x15 + 3048: d53df6af mrs x15, s3_5_c15_c6_5 + 304c: d51df6cf msr s3_5_c15_c6_6, x15 + 3050: d53df6cf mrs x15, s3_5_c15_c6_6 + 3054: d51df6ef msr s3_5_c15_c6_7, x15 + 3058: d53df6ef mrs x15, s3_5_c15_c6_7 + 305c: d51df70f msr s3_5_c15_c7_0, x15 + 3060: d53df70f mrs x15, s3_5_c15_c7_0 + 3064: d51df72f msr s3_5_c15_c7_1, x15 + 3068: d53df72f mrs x15, s3_5_c15_c7_1 + 306c: d51df74f msr s3_5_c15_c7_2, x15 + 3070: d53df74f mrs x15, s3_5_c15_c7_2 + 3074: d51df76f msr s3_5_c15_c7_3, x15 + 3078: d53df76f mrs x15, s3_5_c15_c7_3 + 307c: d51df78f msr s3_5_c15_c7_4, x15 + 3080: d53df78f mrs x15, s3_5_c15_c7_4 + 3084: d51df7af msr s3_5_c15_c7_5, x15 + 3088: d53df7af mrs x15, s3_5_c15_c7_5 + 308c: d51df7cf msr s3_5_c15_c7_6, x15 + 3090: d53df7cf mrs x15, s3_5_c15_c7_6 + 3094: d51df7ef msr s3_5_c15_c7_7, x15 + 3098: d53df7ef mrs x15, s3_5_c15_c7_7 + 309c: d51df80f msr s3_5_c15_c8_0, x15 + 30a0: d53df80f mrs x15, s3_5_c15_c8_0 + 30a4: d51df82f msr s3_5_c15_c8_1, x15 + 30a8: d53df82f mrs x15, s3_5_c15_c8_1 + 30ac: d51df84f msr s3_5_c15_c8_2, x15 + 30b0: d53df84f mrs x15, s3_5_c15_c8_2 + 30b4: d51df86f msr s3_5_c15_c8_3, x15 + 30b8: d53df86f mrs x15, s3_5_c15_c8_3 + 30bc: d51df88f msr s3_5_c15_c8_4, x15 + 30c0: d53df88f mrs x15, s3_5_c15_c8_4 + 30c4: d51df8af msr s3_5_c15_c8_5, x15 + 30c8: d53df8af mrs x15, s3_5_c15_c8_5 + 30cc: d51df8cf msr s3_5_c15_c8_6, x15 + 30d0: d53df8cf mrs x15, s3_5_c15_c8_6 + 30d4: d51df8ef msr s3_5_c15_c8_7, x15 + 30d8: d53df8ef mrs x15, s3_5_c15_c8_7 + 30dc: d51df90f msr s3_5_c15_c9_0, x15 + 30e0: d53df90f mrs x15, s3_5_c15_c9_0 + 30e4: d51df92f msr s3_5_c15_c9_1, x15 + 30e8: d53df92f mrs x15, s3_5_c15_c9_1 + 30ec: d51df94f msr s3_5_c15_c9_2, x15 + 30f0: d53df94f mrs x15, s3_5_c15_c9_2 + 30f4: d51df96f msr s3_5_c15_c9_3, x15 + 30f8: d53df96f mrs x15, s3_5_c15_c9_3 + 30fc: d51df98f msr s3_5_c15_c9_4, x15 + 3100: d53df98f mrs x15, s3_5_c15_c9_4 + 3104: d51df9af msr s3_5_c15_c9_5, x15 + 3108: d53df9af mrs x15, s3_5_c15_c9_5 + 310c: d51df9cf msr s3_5_c15_c9_6, x15 + 3110: d53df9cf mrs x15, s3_5_c15_c9_6 + 3114: d51df9ef msr s3_5_c15_c9_7, x15 + 3118: d53df9ef mrs x15, s3_5_c15_c9_7 + 311c: d51dfa0f msr s3_5_c15_c10_0, x15 + 3120: d53dfa0f mrs x15, s3_5_c15_c10_0 + 3124: d51dfa2f msr s3_5_c15_c10_1, x15 + 3128: d53dfa2f mrs x15, s3_5_c15_c10_1 + 312c: d51dfa4f msr s3_5_c15_c10_2, x15 + 3130: d53dfa4f mrs x15, s3_5_c15_c10_2 + 3134: d51dfa6f msr s3_5_c15_c10_3, x15 + 3138: d53dfa6f mrs x15, s3_5_c15_c10_3 + 313c: d51dfa8f msr s3_5_c15_c10_4, x15 + 3140: d53dfa8f mrs x15, s3_5_c15_c10_4 + 3144: d51dfaaf msr s3_5_c15_c10_5, x15 + 3148: d53dfaaf mrs x15, s3_5_c15_c10_5 + 314c: d51dfacf msr s3_5_c15_c10_6, x15 + 3150: d53dfacf mrs x15, s3_5_c15_c10_6 + 3154: d51dfaef msr s3_5_c15_c10_7, x15 + 3158: d53dfaef mrs x15, s3_5_c15_c10_7 + 315c: d51dfb0f msr s3_5_c15_c11_0, x15 + 3160: d53dfb0f mrs x15, s3_5_c15_c11_0 + 3164: d51dfb2f msr s3_5_c15_c11_1, x15 + 3168: d53dfb2f mrs x15, s3_5_c15_c11_1 + 316c: d51dfb4f msr s3_5_c15_c11_2, x15 + 3170: d53dfb4f mrs x15, s3_5_c15_c11_2 + 3174: d51dfb6f msr s3_5_c15_c11_3, x15 + 3178: d53dfb6f mrs x15, s3_5_c15_c11_3 + 317c: d51dfb8f msr s3_5_c15_c11_4, x15 + 3180: d53dfb8f mrs x15, s3_5_c15_c11_4 + 3184: d51dfbaf msr s3_5_c15_c11_5, x15 + 3188: d53dfbaf mrs x15, s3_5_c15_c11_5 + 318c: d51dfbcf msr s3_5_c15_c11_6, x15 + 3190: d53dfbcf mrs x15, s3_5_c15_c11_6 + 3194: d51dfbef msr s3_5_c15_c11_7, x15 + 3198: d53dfbef mrs x15, s3_5_c15_c11_7 + 319c: d51dfc0f msr s3_5_c15_c12_0, x15 + 31a0: d53dfc0f mrs x15, s3_5_c15_c12_0 + 31a4: d51dfc2f msr s3_5_c15_c12_1, x15 + 31a8: d53dfc2f mrs x15, s3_5_c15_c12_1 + 31ac: d51dfc4f msr s3_5_c15_c12_2, x15 + 31b0: d53dfc4f mrs x15, s3_5_c15_c12_2 + 31b4: d51dfc6f msr s3_5_c15_c12_3, x15 + 31b8: d53dfc6f mrs x15, s3_5_c15_c12_3 + 31bc: d51dfc8f msr s3_5_c15_c12_4, x15 + 31c0: d53dfc8f mrs x15, s3_5_c15_c12_4 + 31c4: d51dfcaf msr s3_5_c15_c12_5, x15 + 31c8: d53dfcaf mrs x15, s3_5_c15_c12_5 + 31cc: d51dfccf msr s3_5_c15_c12_6, x15 + 31d0: d53dfccf mrs x15, s3_5_c15_c12_6 + 31d4: d51dfcef msr s3_5_c15_c12_7, x15 + 31d8: d53dfcef mrs x15, s3_5_c15_c12_7 + 31dc: d51dfd0f msr s3_5_c15_c13_0, x15 + 31e0: d53dfd0f mrs x15, s3_5_c15_c13_0 + 31e4: d51dfd2f msr s3_5_c15_c13_1, x15 + 31e8: d53dfd2f mrs x15, s3_5_c15_c13_1 + 31ec: d51dfd4f msr s3_5_c15_c13_2, x15 + 31f0: d53dfd4f mrs x15, s3_5_c15_c13_2 + 31f4: d51dfd6f msr s3_5_c15_c13_3, x15 + 31f8: d53dfd6f mrs x15, s3_5_c15_c13_3 + 31fc: d51dfd8f msr s3_5_c15_c13_4, x15 + 3200: d53dfd8f mrs x15, s3_5_c15_c13_4 + 3204: d51dfdaf msr s3_5_c15_c13_5, x15 + 3208: d53dfdaf mrs x15, s3_5_c15_c13_5 + 320c: d51dfdcf msr s3_5_c15_c13_6, x15 + 3210: d53dfdcf mrs x15, s3_5_c15_c13_6 + 3214: d51dfdef msr s3_5_c15_c13_7, x15 + 3218: d53dfdef mrs x15, s3_5_c15_c13_7 + 321c: d51dfe0f msr s3_5_c15_c14_0, x15 + 3220: d53dfe0f mrs x15, s3_5_c15_c14_0 + 3224: d51dfe2f msr s3_5_c15_c14_1, x15 + 3228: d53dfe2f mrs x15, s3_5_c15_c14_1 + 322c: d51dfe4f msr s3_5_c15_c14_2, x15 + 3230: d53dfe4f mrs x15, s3_5_c15_c14_2 + 3234: d51dfe6f msr s3_5_c15_c14_3, x15 + 3238: d53dfe6f mrs x15, s3_5_c15_c14_3 + 323c: d51dfe8f msr s3_5_c15_c14_4, x15 + 3240: d53dfe8f mrs x15, s3_5_c15_c14_4 + 3244: d51dfeaf msr s3_5_c15_c14_5, x15 + 3248: d53dfeaf mrs x15, s3_5_c15_c14_5 + 324c: d51dfecf msr s3_5_c15_c14_6, x15 + 3250: d53dfecf mrs x15, s3_5_c15_c14_6 + 3254: d51dfeef msr s3_5_c15_c14_7, x15 + 3258: d53dfeef mrs x15, s3_5_c15_c14_7 + 325c: d51dff0f msr s3_5_c15_c15_0, x15 + 3260: d53dff0f mrs x15, s3_5_c15_c15_0 + 3264: d51dff2f msr s3_5_c15_c15_1, x15 + 3268: d53dff2f mrs x15, s3_5_c15_c15_1 + 326c: d51dff4f msr s3_5_c15_c15_2, x15 + 3270: d53dff4f mrs x15, s3_5_c15_c15_2 + 3274: d51dff6f msr s3_5_c15_c15_3, x15 + 3278: d53dff6f mrs x15, s3_5_c15_c15_3 + 327c: d51dff8f msr s3_5_c15_c15_4, x15 + 3280: d53dff8f mrs x15, s3_5_c15_c15_4 + 3284: d51dffaf msr s3_5_c15_c15_5, x15 + 3288: d53dffaf mrs x15, s3_5_c15_c15_5 + 328c: d51dffcf msr s3_5_c15_c15_6, x15 + 3290: d53dffcf mrs x15, s3_5_c15_c15_6 + 3294: d51dffef msr s3_5_c15_c15_7, x15 + 3298: d53dffef mrs x15, s3_5_c15_c15_7 + 329c: d51eb00f msr s3_6_c11_c0_0, x15 + 32a0: d53eb00f mrs x15, s3_6_c11_c0_0 + 32a4: d51eb02f msr s3_6_c11_c0_1, x15 + 32a8: d53eb02f mrs x15, s3_6_c11_c0_1 + 32ac: d51eb04f msr s3_6_c11_c0_2, x15 + 32b0: d53eb04f mrs x15, s3_6_c11_c0_2 + 32b4: d51eb06f msr s3_6_c11_c0_3, x15 + 32b8: d53eb06f mrs x15, s3_6_c11_c0_3 + 32bc: d51eb08f msr s3_6_c11_c0_4, x15 + 32c0: d53eb08f mrs x15, s3_6_c11_c0_4 + 32c4: d51eb0af msr s3_6_c11_c0_5, x15 + 32c8: d53eb0af mrs x15, s3_6_c11_c0_5 + 32cc: d51eb0cf msr s3_6_c11_c0_6, x15 + 32d0: d53eb0cf mrs x15, s3_6_c11_c0_6 + 32d4: d51eb0ef msr s3_6_c11_c0_7, x15 + 32d8: d53eb0ef mrs x15, s3_6_c11_c0_7 + 32dc: d51eb10f msr s3_6_c11_c1_0, x15 + 32e0: d53eb10f mrs x15, s3_6_c11_c1_0 + 32e4: d51eb12f msr s3_6_c11_c1_1, x15 + 32e8: d53eb12f mrs x15, s3_6_c11_c1_1 + 32ec: d51eb14f msr s3_6_c11_c1_2, x15 + 32f0: d53eb14f mrs x15, s3_6_c11_c1_2 + 32f4: d51eb16f msr s3_6_c11_c1_3, x15 + 32f8: d53eb16f mrs x15, s3_6_c11_c1_3 + 32fc: d51eb18f msr s3_6_c11_c1_4, x15 + 3300: d53eb18f mrs x15, s3_6_c11_c1_4 + 3304: d51eb1af msr s3_6_c11_c1_5, x15 + 3308: d53eb1af mrs x15, s3_6_c11_c1_5 + 330c: d51eb1cf msr s3_6_c11_c1_6, x15 + 3310: d53eb1cf mrs x15, s3_6_c11_c1_6 + 3314: d51eb1ef msr s3_6_c11_c1_7, x15 + 3318: d53eb1ef mrs x15, s3_6_c11_c1_7 + 331c: d51eb20f msr s3_6_c11_c2_0, x15 + 3320: d53eb20f mrs x15, s3_6_c11_c2_0 + 3324: d51eb22f msr s3_6_c11_c2_1, x15 + 3328: d53eb22f mrs x15, s3_6_c11_c2_1 + 332c: d51eb24f msr s3_6_c11_c2_2, x15 + 3330: d53eb24f mrs x15, s3_6_c11_c2_2 + 3334: d51eb26f msr s3_6_c11_c2_3, x15 + 3338: d53eb26f mrs x15, s3_6_c11_c2_3 + 333c: d51eb28f msr s3_6_c11_c2_4, x15 + 3340: d53eb28f mrs x15, s3_6_c11_c2_4 + 3344: d51eb2af msr s3_6_c11_c2_5, x15 + 3348: d53eb2af mrs x15, s3_6_c11_c2_5 + 334c: d51eb2cf msr s3_6_c11_c2_6, x15 + 3350: d53eb2cf mrs x15, s3_6_c11_c2_6 + 3354: d51eb2ef msr s3_6_c11_c2_7, x15 + 3358: d53eb2ef mrs x15, s3_6_c11_c2_7 + 335c: d51eb30f msr s3_6_c11_c3_0, x15 + 3360: d53eb30f mrs x15, s3_6_c11_c3_0 + 3364: d51eb32f msr s3_6_c11_c3_1, x15 + 3368: d53eb32f mrs x15, s3_6_c11_c3_1 + 336c: d51eb34f msr s3_6_c11_c3_2, x15 + 3370: d53eb34f mrs x15, s3_6_c11_c3_2 + 3374: d51eb36f msr s3_6_c11_c3_3, x15 + 3378: d53eb36f mrs x15, s3_6_c11_c3_3 + 337c: d51eb38f msr s3_6_c11_c3_4, x15 + 3380: d53eb38f mrs x15, s3_6_c11_c3_4 + 3384: d51eb3af msr s3_6_c11_c3_5, x15 + 3388: d53eb3af mrs x15, s3_6_c11_c3_5 + 338c: d51eb3cf msr s3_6_c11_c3_6, x15 + 3390: d53eb3cf mrs x15, s3_6_c11_c3_6 + 3394: d51eb3ef msr s3_6_c11_c3_7, x15 + 3398: d53eb3ef mrs x15, s3_6_c11_c3_7 + 339c: d51eb40f msr s3_6_c11_c4_0, x15 + 33a0: d53eb40f mrs x15, s3_6_c11_c4_0 + 33a4: d51eb42f msr s3_6_c11_c4_1, x15 + 33a8: d53eb42f mrs x15, s3_6_c11_c4_1 + 33ac: d51eb44f msr s3_6_c11_c4_2, x15 + 33b0: d53eb44f mrs x15, s3_6_c11_c4_2 + 33b4: d51eb46f msr s3_6_c11_c4_3, x15 + 33b8: d53eb46f mrs x15, s3_6_c11_c4_3 + 33bc: d51eb48f msr s3_6_c11_c4_4, x15 + 33c0: d53eb48f mrs x15, s3_6_c11_c4_4 + 33c4: d51eb4af msr s3_6_c11_c4_5, x15 + 33c8: d53eb4af mrs x15, s3_6_c11_c4_5 + 33cc: d51eb4cf msr s3_6_c11_c4_6, x15 + 33d0: d53eb4cf mrs x15, s3_6_c11_c4_6 + 33d4: d51eb4ef msr s3_6_c11_c4_7, x15 + 33d8: d53eb4ef mrs x15, s3_6_c11_c4_7 + 33dc: d51eb50f msr s3_6_c11_c5_0, x15 + 33e0: d53eb50f mrs x15, s3_6_c11_c5_0 + 33e4: d51eb52f msr s3_6_c11_c5_1, x15 + 33e8: d53eb52f mrs x15, s3_6_c11_c5_1 + 33ec: d51eb54f msr s3_6_c11_c5_2, x15 + 33f0: d53eb54f mrs x15, s3_6_c11_c5_2 + 33f4: d51eb56f msr s3_6_c11_c5_3, x15 + 33f8: d53eb56f mrs x15, s3_6_c11_c5_3 + 33fc: d51eb58f msr s3_6_c11_c5_4, x15 + 3400: d53eb58f mrs x15, s3_6_c11_c5_4 + 3404: d51eb5af msr s3_6_c11_c5_5, x15 + 3408: d53eb5af mrs x15, s3_6_c11_c5_5 + 340c: d51eb5cf msr s3_6_c11_c5_6, x15 + 3410: d53eb5cf mrs x15, s3_6_c11_c5_6 + 3414: d51eb5ef msr s3_6_c11_c5_7, x15 + 3418: d53eb5ef mrs x15, s3_6_c11_c5_7 + 341c: d51eb60f msr s3_6_c11_c6_0, x15 + 3420: d53eb60f mrs x15, s3_6_c11_c6_0 + 3424: d51eb62f msr s3_6_c11_c6_1, x15 + 3428: d53eb62f mrs x15, s3_6_c11_c6_1 + 342c: d51eb64f msr s3_6_c11_c6_2, x15 + 3430: d53eb64f mrs x15, s3_6_c11_c6_2 + 3434: d51eb66f msr s3_6_c11_c6_3, x15 + 3438: d53eb66f mrs x15, s3_6_c11_c6_3 + 343c: d51eb68f msr s3_6_c11_c6_4, x15 + 3440: d53eb68f mrs x15, s3_6_c11_c6_4 + 3444: d51eb6af msr s3_6_c11_c6_5, x15 + 3448: d53eb6af mrs x15, s3_6_c11_c6_5 + 344c: d51eb6cf msr s3_6_c11_c6_6, x15 + 3450: d53eb6cf mrs x15, s3_6_c11_c6_6 + 3454: d51eb6ef msr s3_6_c11_c6_7, x15 + 3458: d53eb6ef mrs x15, s3_6_c11_c6_7 + 345c: d51eb70f msr s3_6_c11_c7_0, x15 + 3460: d53eb70f mrs x15, s3_6_c11_c7_0 + 3464: d51eb72f msr s3_6_c11_c7_1, x15 + 3468: d53eb72f mrs x15, s3_6_c11_c7_1 + 346c: d51eb74f msr s3_6_c11_c7_2, x15 + 3470: d53eb74f mrs x15, s3_6_c11_c7_2 + 3474: d51eb76f msr s3_6_c11_c7_3, x15 + 3478: d53eb76f mrs x15, s3_6_c11_c7_3 + 347c: d51eb78f msr s3_6_c11_c7_4, x15 + 3480: d53eb78f mrs x15, s3_6_c11_c7_4 + 3484: d51eb7af msr s3_6_c11_c7_5, x15 + 3488: d53eb7af mrs x15, s3_6_c11_c7_5 + 348c: d51eb7cf msr s3_6_c11_c7_6, x15 + 3490: d53eb7cf mrs x15, s3_6_c11_c7_6 + 3494: d51eb7ef msr s3_6_c11_c7_7, x15 + 3498: d53eb7ef mrs x15, s3_6_c11_c7_7 + 349c: d51eb80f msr s3_6_c11_c8_0, x15 + 34a0: d53eb80f mrs x15, s3_6_c11_c8_0 + 34a4: d51eb82f msr s3_6_c11_c8_1, x15 + 34a8: d53eb82f mrs x15, s3_6_c11_c8_1 + 34ac: d51eb84f msr s3_6_c11_c8_2, x15 + 34b0: d53eb84f mrs x15, s3_6_c11_c8_2 + 34b4: d51eb86f msr s3_6_c11_c8_3, x15 + 34b8: d53eb86f mrs x15, s3_6_c11_c8_3 + 34bc: d51eb88f msr s3_6_c11_c8_4, x15 + 34c0: d53eb88f mrs x15, s3_6_c11_c8_4 + 34c4: d51eb8af msr s3_6_c11_c8_5, x15 + 34c8: d53eb8af mrs x15, s3_6_c11_c8_5 + 34cc: d51eb8cf msr s3_6_c11_c8_6, x15 + 34d0: d53eb8cf mrs x15, s3_6_c11_c8_6 + 34d4: d51eb8ef msr s3_6_c11_c8_7, x15 + 34d8: d53eb8ef mrs x15, s3_6_c11_c8_7 + 34dc: d51eb90f msr s3_6_c11_c9_0, x15 + 34e0: d53eb90f mrs x15, s3_6_c11_c9_0 + 34e4: d51eb92f msr s3_6_c11_c9_1, x15 + 34e8: d53eb92f mrs x15, s3_6_c11_c9_1 + 34ec: d51eb94f msr s3_6_c11_c9_2, x15 + 34f0: d53eb94f mrs x15, s3_6_c11_c9_2 + 34f4: d51eb96f msr s3_6_c11_c9_3, x15 + 34f8: d53eb96f mrs x15, s3_6_c11_c9_3 + 34fc: d51eb98f msr s3_6_c11_c9_4, x15 + 3500: d53eb98f mrs x15, s3_6_c11_c9_4 + 3504: d51eb9af msr s3_6_c11_c9_5, x15 + 3508: d53eb9af mrs x15, s3_6_c11_c9_5 + 350c: d51eb9cf msr s3_6_c11_c9_6, x15 + 3510: d53eb9cf mrs x15, s3_6_c11_c9_6 + 3514: d51eb9ef msr s3_6_c11_c9_7, x15 + 3518: d53eb9ef mrs x15, s3_6_c11_c9_7 + 351c: d51eba0f msr s3_6_c11_c10_0, x15 + 3520: d53eba0f mrs x15, s3_6_c11_c10_0 + 3524: d51eba2f msr s3_6_c11_c10_1, x15 + 3528: d53eba2f mrs x15, s3_6_c11_c10_1 + 352c: d51eba4f msr s3_6_c11_c10_2, x15 + 3530: d53eba4f mrs x15, s3_6_c11_c10_2 + 3534: d51eba6f msr s3_6_c11_c10_3, x15 + 3538: d53eba6f mrs x15, s3_6_c11_c10_3 + 353c: d51eba8f msr s3_6_c11_c10_4, x15 + 3540: d53eba8f mrs x15, s3_6_c11_c10_4 + 3544: d51ebaaf msr s3_6_c11_c10_5, x15 + 3548: d53ebaaf mrs x15, s3_6_c11_c10_5 + 354c: d51ebacf msr s3_6_c11_c10_6, x15 + 3550: d53ebacf mrs x15, s3_6_c11_c10_6 + 3554: d51ebaef msr s3_6_c11_c10_7, x15 + 3558: d53ebaef mrs x15, s3_6_c11_c10_7 + 355c: d51ebb0f msr s3_6_c11_c11_0, x15 + 3560: d53ebb0f mrs x15, s3_6_c11_c11_0 + 3564: d51ebb2f msr s3_6_c11_c11_1, x15 + 3568: d53ebb2f mrs x15, s3_6_c11_c11_1 + 356c: d51ebb4f msr s3_6_c11_c11_2, x15 + 3570: d53ebb4f mrs x15, s3_6_c11_c11_2 + 3574: d51ebb6f msr s3_6_c11_c11_3, x15 + 3578: d53ebb6f mrs x15, s3_6_c11_c11_3 + 357c: d51ebb8f msr s3_6_c11_c11_4, x15 + 3580: d53ebb8f mrs x15, s3_6_c11_c11_4 + 3584: d51ebbaf msr s3_6_c11_c11_5, x15 + 3588: d53ebbaf mrs x15, s3_6_c11_c11_5 + 358c: d51ebbcf msr s3_6_c11_c11_6, x15 + 3590: d53ebbcf mrs x15, s3_6_c11_c11_6 + 3594: d51ebbef msr s3_6_c11_c11_7, x15 + 3598: d53ebbef mrs x15, s3_6_c11_c11_7 + 359c: d51ebc0f msr s3_6_c11_c12_0, x15 + 35a0: d53ebc0f mrs x15, s3_6_c11_c12_0 + 35a4: d51ebc2f msr s3_6_c11_c12_1, x15 + 35a8: d53ebc2f mrs x15, s3_6_c11_c12_1 + 35ac: d51ebc4f msr s3_6_c11_c12_2, x15 + 35b0: d53ebc4f mrs x15, s3_6_c11_c12_2 + 35b4: d51ebc6f msr s3_6_c11_c12_3, x15 + 35b8: d53ebc6f mrs x15, s3_6_c11_c12_3 + 35bc: d51ebc8f msr s3_6_c11_c12_4, x15 + 35c0: d53ebc8f mrs x15, s3_6_c11_c12_4 + 35c4: d51ebcaf msr s3_6_c11_c12_5, x15 + 35c8: d53ebcaf mrs x15, s3_6_c11_c12_5 + 35cc: d51ebccf msr s3_6_c11_c12_6, x15 + 35d0: d53ebccf mrs x15, s3_6_c11_c12_6 + 35d4: d51ebcef msr s3_6_c11_c12_7, x15 + 35d8: d53ebcef mrs x15, s3_6_c11_c12_7 + 35dc: d51ebd0f msr s3_6_c11_c13_0, x15 + 35e0: d53ebd0f mrs x15, s3_6_c11_c13_0 + 35e4: d51ebd2f msr s3_6_c11_c13_1, x15 + 35e8: d53ebd2f mrs x15, s3_6_c11_c13_1 + 35ec: d51ebd4f msr s3_6_c11_c13_2, x15 + 35f0: d53ebd4f mrs x15, s3_6_c11_c13_2 + 35f4: d51ebd6f msr s3_6_c11_c13_3, x15 + 35f8: d53ebd6f mrs x15, s3_6_c11_c13_3 + 35fc: d51ebd8f msr s3_6_c11_c13_4, x15 + 3600: d53ebd8f mrs x15, s3_6_c11_c13_4 + 3604: d51ebdaf msr s3_6_c11_c13_5, x15 + 3608: d53ebdaf mrs x15, s3_6_c11_c13_5 + 360c: d51ebdcf msr s3_6_c11_c13_6, x15 + 3610: d53ebdcf mrs x15, s3_6_c11_c13_6 + 3614: d51ebdef msr s3_6_c11_c13_7, x15 + 3618: d53ebdef mrs x15, s3_6_c11_c13_7 + 361c: d51ebe0f msr s3_6_c11_c14_0, x15 + 3620: d53ebe0f mrs x15, s3_6_c11_c14_0 + 3624: d51ebe2f msr s3_6_c11_c14_1, x15 + 3628: d53ebe2f mrs x15, s3_6_c11_c14_1 + 362c: d51ebe4f msr s3_6_c11_c14_2, x15 + 3630: d53ebe4f mrs x15, s3_6_c11_c14_2 + 3634: d51ebe6f msr s3_6_c11_c14_3, x15 + 3638: d53ebe6f mrs x15, s3_6_c11_c14_3 + 363c: d51ebe8f msr s3_6_c11_c14_4, x15 + 3640: d53ebe8f mrs x15, s3_6_c11_c14_4 + 3644: d51ebeaf msr s3_6_c11_c14_5, x15 + 3648: d53ebeaf mrs x15, s3_6_c11_c14_5 + 364c: d51ebecf msr s3_6_c11_c14_6, x15 + 3650: d53ebecf mrs x15, s3_6_c11_c14_6 + 3654: d51ebeef msr s3_6_c11_c14_7, x15 + 3658: d53ebeef mrs x15, s3_6_c11_c14_7 + 365c: d51ebf0f msr s3_6_c11_c15_0, x15 + 3660: d53ebf0f mrs x15, s3_6_c11_c15_0 + 3664: d51ebf2f msr s3_6_c11_c15_1, x15 + 3668: d53ebf2f mrs x15, s3_6_c11_c15_1 + 366c: d51ebf4f msr s3_6_c11_c15_2, x15 + 3670: d53ebf4f mrs x15, s3_6_c11_c15_2 + 3674: d51ebf6f msr s3_6_c11_c15_3, x15 + 3678: d53ebf6f mrs x15, s3_6_c11_c15_3 + 367c: d51ebf8f msr s3_6_c11_c15_4, x15 + 3680: d53ebf8f mrs x15, s3_6_c11_c15_4 + 3684: d51ebfaf msr s3_6_c11_c15_5, x15 + 3688: d53ebfaf mrs x15, s3_6_c11_c15_5 + 368c: d51ebfcf msr s3_6_c11_c15_6, x15 + 3690: d53ebfcf mrs x15, s3_6_c11_c15_6 + 3694: d51ebfef msr s3_6_c11_c15_7, x15 + 3698: d53ebfef mrs x15, s3_6_c11_c15_7 + 369c: d51ef00f msr s3_6_c15_c0_0, x15 + 36a0: d53ef00f mrs x15, s3_6_c15_c0_0 + 36a4: d51ef02f msr s3_6_c15_c0_1, x15 + 36a8: d53ef02f mrs x15, s3_6_c15_c0_1 + 36ac: d51ef04f msr s3_6_c15_c0_2, x15 + 36b0: d53ef04f mrs x15, s3_6_c15_c0_2 + 36b4: d51ef06f msr s3_6_c15_c0_3, x15 + 36b8: d53ef06f mrs x15, s3_6_c15_c0_3 + 36bc: d51ef08f msr s3_6_c15_c0_4, x15 + 36c0: d53ef08f mrs x15, s3_6_c15_c0_4 + 36c4: d51ef0af msr s3_6_c15_c0_5, x15 + 36c8: d53ef0af mrs x15, s3_6_c15_c0_5 + 36cc: d51ef0cf msr s3_6_c15_c0_6, x15 + 36d0: d53ef0cf mrs x15, s3_6_c15_c0_6 + 36d4: d51ef0ef msr s3_6_c15_c0_7, x15 + 36d8: d53ef0ef mrs x15, s3_6_c15_c0_7 + 36dc: d51ef10f msr s3_6_c15_c1_0, x15 + 36e0: d53ef10f mrs x15, s3_6_c15_c1_0 + 36e4: d51ef12f msr s3_6_c15_c1_1, x15 + 36e8: d53ef12f mrs x15, s3_6_c15_c1_1 + 36ec: d51ef14f msr s3_6_c15_c1_2, x15 + 36f0: d53ef14f mrs x15, s3_6_c15_c1_2 + 36f4: d51ef16f msr s3_6_c15_c1_3, x15 + 36f8: d53ef16f mrs x15, s3_6_c15_c1_3 + 36fc: d51ef18f msr s3_6_c15_c1_4, x15 + 3700: d53ef18f mrs x15, s3_6_c15_c1_4 + 3704: d51ef1af msr s3_6_c15_c1_5, x15 + 3708: d53ef1af mrs x15, s3_6_c15_c1_5 + 370c: d51ef1cf msr s3_6_c15_c1_6, x15 + 3710: d53ef1cf mrs x15, s3_6_c15_c1_6 + 3714: d51ef1ef msr s3_6_c15_c1_7, x15 + 3718: d53ef1ef mrs x15, s3_6_c15_c1_7 + 371c: d51ef20f msr s3_6_c15_c2_0, x15 + 3720: d53ef20f mrs x15, s3_6_c15_c2_0 + 3724: d51ef22f msr s3_6_c15_c2_1, x15 + 3728: d53ef22f mrs x15, s3_6_c15_c2_1 + 372c: d51ef24f msr s3_6_c15_c2_2, x15 + 3730: d53ef24f mrs x15, s3_6_c15_c2_2 + 3734: d51ef26f msr s3_6_c15_c2_3, x15 + 3738: d53ef26f mrs x15, s3_6_c15_c2_3 + 373c: d51ef28f msr s3_6_c15_c2_4, x15 + 3740: d53ef28f mrs x15, s3_6_c15_c2_4 + 3744: d51ef2af msr s3_6_c15_c2_5, x15 + 3748: d53ef2af mrs x15, s3_6_c15_c2_5 + 374c: d51ef2cf msr s3_6_c15_c2_6, x15 + 3750: d53ef2cf mrs x15, s3_6_c15_c2_6 + 3754: d51ef2ef msr s3_6_c15_c2_7, x15 + 3758: d53ef2ef mrs x15, s3_6_c15_c2_7 + 375c: d51ef30f msr s3_6_c15_c3_0, x15 + 3760: d53ef30f mrs x15, s3_6_c15_c3_0 + 3764: d51ef32f msr s3_6_c15_c3_1, x15 + 3768: d53ef32f mrs x15, s3_6_c15_c3_1 + 376c: d51ef34f msr s3_6_c15_c3_2, x15 + 3770: d53ef34f mrs x15, s3_6_c15_c3_2 + 3774: d51ef36f msr s3_6_c15_c3_3, x15 + 3778: d53ef36f mrs x15, s3_6_c15_c3_3 + 377c: d51ef38f msr s3_6_c15_c3_4, x15 + 3780: d53ef38f mrs x15, s3_6_c15_c3_4 + 3784: d51ef3af msr s3_6_c15_c3_5, x15 + 3788: d53ef3af mrs x15, s3_6_c15_c3_5 + 378c: d51ef3cf msr s3_6_c15_c3_6, x15 + 3790: d53ef3cf mrs x15, s3_6_c15_c3_6 + 3794: d51ef3ef msr s3_6_c15_c3_7, x15 + 3798: d53ef3ef mrs x15, s3_6_c15_c3_7 + 379c: d51ef40f msr s3_6_c15_c4_0, x15 + 37a0: d53ef40f mrs x15, s3_6_c15_c4_0 + 37a4: d51ef42f msr s3_6_c15_c4_1, x15 + 37a8: d53ef42f mrs x15, s3_6_c15_c4_1 + 37ac: d51ef44f msr s3_6_c15_c4_2, x15 + 37b0: d53ef44f mrs x15, s3_6_c15_c4_2 + 37b4: d51ef46f msr s3_6_c15_c4_3, x15 + 37b8: d53ef46f mrs x15, s3_6_c15_c4_3 + 37bc: d51ef48f msr s3_6_c15_c4_4, x15 + 37c0: d53ef48f mrs x15, s3_6_c15_c4_4 + 37c4: d51ef4af msr s3_6_c15_c4_5, x15 + 37c8: d53ef4af mrs x15, s3_6_c15_c4_5 + 37cc: d51ef4cf msr s3_6_c15_c4_6, x15 + 37d0: d53ef4cf mrs x15, s3_6_c15_c4_6 + 37d4: d51ef4ef msr s3_6_c15_c4_7, x15 + 37d8: d53ef4ef mrs x15, s3_6_c15_c4_7 + 37dc: d51ef50f msr s3_6_c15_c5_0, x15 + 37e0: d53ef50f mrs x15, s3_6_c15_c5_0 + 37e4: d51ef52f msr s3_6_c15_c5_1, x15 + 37e8: d53ef52f mrs x15, s3_6_c15_c5_1 + 37ec: d51ef54f msr s3_6_c15_c5_2, x15 + 37f0: d53ef54f mrs x15, s3_6_c15_c5_2 + 37f4: d51ef56f msr s3_6_c15_c5_3, x15 + 37f8: d53ef56f mrs x15, s3_6_c15_c5_3 + 37fc: d51ef58f msr s3_6_c15_c5_4, x15 + 3800: d53ef58f mrs x15, s3_6_c15_c5_4 + 3804: d51ef5af msr s3_6_c15_c5_5, x15 + 3808: d53ef5af mrs x15, s3_6_c15_c5_5 + 380c: d51ef5cf msr s3_6_c15_c5_6, x15 + 3810: d53ef5cf mrs x15, s3_6_c15_c5_6 + 3814: d51ef5ef msr s3_6_c15_c5_7, x15 + 3818: d53ef5ef mrs x15, s3_6_c15_c5_7 + 381c: d51ef60f msr s3_6_c15_c6_0, x15 + 3820: d53ef60f mrs x15, s3_6_c15_c6_0 + 3824: d51ef62f msr s3_6_c15_c6_1, x15 + 3828: d53ef62f mrs x15, s3_6_c15_c6_1 + 382c: d51ef64f msr s3_6_c15_c6_2, x15 + 3830: d53ef64f mrs x15, s3_6_c15_c6_2 + 3834: d51ef66f msr s3_6_c15_c6_3, x15 + 3838: d53ef66f mrs x15, s3_6_c15_c6_3 + 383c: d51ef68f msr s3_6_c15_c6_4, x15 + 3840: d53ef68f mrs x15, s3_6_c15_c6_4 + 3844: d51ef6af msr s3_6_c15_c6_5, x15 + 3848: d53ef6af mrs x15, s3_6_c15_c6_5 + 384c: d51ef6cf msr s3_6_c15_c6_6, x15 + 3850: d53ef6cf mrs x15, s3_6_c15_c6_6 + 3854: d51ef6ef msr s3_6_c15_c6_7, x15 + 3858: d53ef6ef mrs x15, s3_6_c15_c6_7 + 385c: d51ef70f msr s3_6_c15_c7_0, x15 + 3860: d53ef70f mrs x15, s3_6_c15_c7_0 + 3864: d51ef72f msr s3_6_c15_c7_1, x15 + 3868: d53ef72f mrs x15, s3_6_c15_c7_1 + 386c: d51ef74f msr s3_6_c15_c7_2, x15 + 3870: d53ef74f mrs x15, s3_6_c15_c7_2 + 3874: d51ef76f msr s3_6_c15_c7_3, x15 + 3878: d53ef76f mrs x15, s3_6_c15_c7_3 + 387c: d51ef78f msr s3_6_c15_c7_4, x15 + 3880: d53ef78f mrs x15, s3_6_c15_c7_4 + 3884: d51ef7af msr s3_6_c15_c7_5, x15 + 3888: d53ef7af mrs x15, s3_6_c15_c7_5 + 388c: d51ef7cf msr s3_6_c15_c7_6, x15 + 3890: d53ef7cf mrs x15, s3_6_c15_c7_6 + 3894: d51ef7ef msr s3_6_c15_c7_7, x15 + 3898: d53ef7ef mrs x15, s3_6_c15_c7_7 + 389c: d51ef80f msr s3_6_c15_c8_0, x15 + 38a0: d53ef80f mrs x15, s3_6_c15_c8_0 + 38a4: d51ef82f msr s3_6_c15_c8_1, x15 + 38a8: d53ef82f mrs x15, s3_6_c15_c8_1 + 38ac: d51ef84f msr s3_6_c15_c8_2, x15 + 38b0: d53ef84f mrs x15, s3_6_c15_c8_2 + 38b4: d51ef86f msr s3_6_c15_c8_3, x15 + 38b8: d53ef86f mrs x15, s3_6_c15_c8_3 + 38bc: d51ef88f msr s3_6_c15_c8_4, x15 + 38c0: d53ef88f mrs x15, s3_6_c15_c8_4 + 38c4: d51ef8af msr s3_6_c15_c8_5, x15 + 38c8: d53ef8af mrs x15, s3_6_c15_c8_5 + 38cc: d51ef8cf msr s3_6_c15_c8_6, x15 + 38d0: d53ef8cf mrs x15, s3_6_c15_c8_6 + 38d4: d51ef8ef msr s3_6_c15_c8_7, x15 + 38d8: d53ef8ef mrs x15, s3_6_c15_c8_7 + 38dc: d51ef90f msr s3_6_c15_c9_0, x15 + 38e0: d53ef90f mrs x15, s3_6_c15_c9_0 + 38e4: d51ef92f msr s3_6_c15_c9_1, x15 + 38e8: d53ef92f mrs x15, s3_6_c15_c9_1 + 38ec: d51ef94f msr s3_6_c15_c9_2, x15 + 38f0: d53ef94f mrs x15, s3_6_c15_c9_2 + 38f4: d51ef96f msr s3_6_c15_c9_3, x15 + 38f8: d53ef96f mrs x15, s3_6_c15_c9_3 + 38fc: d51ef98f msr s3_6_c15_c9_4, x15 + 3900: d53ef98f mrs x15, s3_6_c15_c9_4 + 3904: d51ef9af msr s3_6_c15_c9_5, x15 + 3908: d53ef9af mrs x15, s3_6_c15_c9_5 + 390c: d51ef9cf msr s3_6_c15_c9_6, x15 + 3910: d53ef9cf mrs x15, s3_6_c15_c9_6 + 3914: d51ef9ef msr s3_6_c15_c9_7, x15 + 3918: d53ef9ef mrs x15, s3_6_c15_c9_7 + 391c: d51efa0f msr s3_6_c15_c10_0, x15 + 3920: d53efa0f mrs x15, s3_6_c15_c10_0 + 3924: d51efa2f msr s3_6_c15_c10_1, x15 + 3928: d53efa2f mrs x15, s3_6_c15_c10_1 + 392c: d51efa4f msr s3_6_c15_c10_2, x15 + 3930: d53efa4f mrs x15, s3_6_c15_c10_2 + 3934: d51efa6f msr s3_6_c15_c10_3, x15 + 3938: d53efa6f mrs x15, s3_6_c15_c10_3 + 393c: d51efa8f msr s3_6_c15_c10_4, x15 + 3940: d53efa8f mrs x15, s3_6_c15_c10_4 + 3944: d51efaaf msr s3_6_c15_c10_5, x15 + 3948: d53efaaf mrs x15, s3_6_c15_c10_5 + 394c: d51efacf msr s3_6_c15_c10_6, x15 + 3950: d53efacf mrs x15, s3_6_c15_c10_6 + 3954: d51efaef msr s3_6_c15_c10_7, x15 + 3958: d53efaef mrs x15, s3_6_c15_c10_7 + 395c: d51efb0f msr s3_6_c15_c11_0, x15 + 3960: d53efb0f mrs x15, s3_6_c15_c11_0 + 3964: d51efb2f msr s3_6_c15_c11_1, x15 + 3968: d53efb2f mrs x15, s3_6_c15_c11_1 + 396c: d51efb4f msr s3_6_c15_c11_2, x15 + 3970: d53efb4f mrs x15, s3_6_c15_c11_2 + 3974: d51efb6f msr s3_6_c15_c11_3, x15 + 3978: d53efb6f mrs x15, s3_6_c15_c11_3 + 397c: d51efb8f msr s3_6_c15_c11_4, x15 + 3980: d53efb8f mrs x15, s3_6_c15_c11_4 + 3984: d51efbaf msr s3_6_c15_c11_5, x15 + 3988: d53efbaf mrs x15, s3_6_c15_c11_5 + 398c: d51efbcf msr s3_6_c15_c11_6, x15 + 3990: d53efbcf mrs x15, s3_6_c15_c11_6 + 3994: d51efbef msr s3_6_c15_c11_7, x15 + 3998: d53efbef mrs x15, s3_6_c15_c11_7 + 399c: d51efc0f msr s3_6_c15_c12_0, x15 + 39a0: d53efc0f mrs x15, s3_6_c15_c12_0 + 39a4: d51efc2f msr s3_6_c15_c12_1, x15 + 39a8: d53efc2f mrs x15, s3_6_c15_c12_1 + 39ac: d51efc4f msr s3_6_c15_c12_2, x15 + 39b0: d53efc4f mrs x15, s3_6_c15_c12_2 + 39b4: d51efc6f msr s3_6_c15_c12_3, x15 + 39b8: d53efc6f mrs x15, s3_6_c15_c12_3 + 39bc: d51efc8f msr s3_6_c15_c12_4, x15 + 39c0: d53efc8f mrs x15, s3_6_c15_c12_4 + 39c4: d51efcaf msr s3_6_c15_c12_5, x15 + 39c8: d53efcaf mrs x15, s3_6_c15_c12_5 + 39cc: d51efccf msr s3_6_c15_c12_6, x15 + 39d0: d53efccf mrs x15, s3_6_c15_c12_6 + 39d4: d51efcef msr s3_6_c15_c12_7, x15 + 39d8: d53efcef mrs x15, s3_6_c15_c12_7 + 39dc: d51efd0f msr s3_6_c15_c13_0, x15 + 39e0: d53efd0f mrs x15, s3_6_c15_c13_0 + 39e4: d51efd2f msr s3_6_c15_c13_1, x15 + 39e8: d53efd2f mrs x15, s3_6_c15_c13_1 + 39ec: d51efd4f msr s3_6_c15_c13_2, x15 + 39f0: d53efd4f mrs x15, s3_6_c15_c13_2 + 39f4: d51efd6f msr s3_6_c15_c13_3, x15 + 39f8: d53efd6f mrs x15, s3_6_c15_c13_3 + 39fc: d51efd8f msr s3_6_c15_c13_4, x15 + 3a00: d53efd8f mrs x15, s3_6_c15_c13_4 + 3a04: d51efdaf msr s3_6_c15_c13_5, x15 + 3a08: d53efdaf mrs x15, s3_6_c15_c13_5 + 3a0c: d51efdcf msr s3_6_c15_c13_6, x15 + 3a10: d53efdcf mrs x15, s3_6_c15_c13_6 + 3a14: d51efdef msr s3_6_c15_c13_7, x15 + 3a18: d53efdef mrs x15, s3_6_c15_c13_7 + 3a1c: d51efe0f msr s3_6_c15_c14_0, x15 + 3a20: d53efe0f mrs x15, s3_6_c15_c14_0 + 3a24: d51efe2f msr s3_6_c15_c14_1, x15 + 3a28: d53efe2f mrs x15, s3_6_c15_c14_1 + 3a2c: d51efe4f msr s3_6_c15_c14_2, x15 + 3a30: d53efe4f mrs x15, s3_6_c15_c14_2 + 3a34: d51efe6f msr s3_6_c15_c14_3, x15 + 3a38: d53efe6f mrs x15, s3_6_c15_c14_3 + 3a3c: d51efe8f msr s3_6_c15_c14_4, x15 + 3a40: d53efe8f mrs x15, s3_6_c15_c14_4 + 3a44: d51efeaf msr s3_6_c15_c14_5, x15 + 3a48: d53efeaf mrs x15, s3_6_c15_c14_5 + 3a4c: d51efecf msr s3_6_c15_c14_6, x15 + 3a50: d53efecf mrs x15, s3_6_c15_c14_6 + 3a54: d51efeef msr s3_6_c15_c14_7, x15 + 3a58: d53efeef mrs x15, s3_6_c15_c14_7 + 3a5c: d51eff0f msr s3_6_c15_c15_0, x15 + 3a60: d53eff0f mrs x15, s3_6_c15_c15_0 + 3a64: d51eff2f msr s3_6_c15_c15_1, x15 + 3a68: d53eff2f mrs x15, s3_6_c15_c15_1 + 3a6c: d51eff4f msr s3_6_c15_c15_2, x15 + 3a70: d53eff4f mrs x15, s3_6_c15_c15_2 + 3a74: d51eff6f msr s3_6_c15_c15_3, x15 + 3a78: d53eff6f mrs x15, s3_6_c15_c15_3 + 3a7c: d51eff8f msr s3_6_c15_c15_4, x15 + 3a80: d53eff8f mrs x15, s3_6_c15_c15_4 + 3a84: d51effaf msr s3_6_c15_c15_5, x15 + 3a88: d53effaf mrs x15, s3_6_c15_c15_5 + 3a8c: d51effcf msr s3_6_c15_c15_6, x15 + 3a90: d53effcf mrs x15, s3_6_c15_c15_6 + 3a94: d51effef msr s3_6_c15_c15_7, x15 + 3a98: d53effef mrs x15, s3_6_c15_c15_7 + 3a9c: d51fb00f msr s3_7_c11_c0_0, x15 + 3aa0: d53fb00f mrs x15, s3_7_c11_c0_0 + 3aa4: d51fb02f msr s3_7_c11_c0_1, x15 + 3aa8: d53fb02f mrs x15, s3_7_c11_c0_1 + 3aac: d51fb04f msr s3_7_c11_c0_2, x15 + 3ab0: d53fb04f mrs x15, s3_7_c11_c0_2 + 3ab4: d51fb06f msr s3_7_c11_c0_3, x15 + 3ab8: d53fb06f mrs x15, s3_7_c11_c0_3 + 3abc: d51fb08f msr s3_7_c11_c0_4, x15 + 3ac0: d53fb08f mrs x15, s3_7_c11_c0_4 + 3ac4: d51fb0af msr s3_7_c11_c0_5, x15 + 3ac8: d53fb0af mrs x15, s3_7_c11_c0_5 + 3acc: d51fb0cf msr s3_7_c11_c0_6, x15 + 3ad0: d53fb0cf mrs x15, s3_7_c11_c0_6 + 3ad4: d51fb0ef msr s3_7_c11_c0_7, x15 + 3ad8: d53fb0ef mrs x15, s3_7_c11_c0_7 + 3adc: d51fb10f msr s3_7_c11_c1_0, x15 + 3ae0: d53fb10f mrs x15, s3_7_c11_c1_0 + 3ae4: d51fb12f msr s3_7_c11_c1_1, x15 + 3ae8: d53fb12f mrs x15, s3_7_c11_c1_1 + 3aec: d51fb14f msr s3_7_c11_c1_2, x15 + 3af0: d53fb14f mrs x15, s3_7_c11_c1_2 + 3af4: d51fb16f msr s3_7_c11_c1_3, x15 + 3af8: d53fb16f mrs x15, s3_7_c11_c1_3 + 3afc: d51fb18f msr s3_7_c11_c1_4, x15 + 3b00: d53fb18f mrs x15, s3_7_c11_c1_4 + 3b04: d51fb1af msr s3_7_c11_c1_5, x15 + 3b08: d53fb1af mrs x15, s3_7_c11_c1_5 + 3b0c: d51fb1cf msr s3_7_c11_c1_6, x15 + 3b10: d53fb1cf mrs x15, s3_7_c11_c1_6 + 3b14: d51fb1ef msr s3_7_c11_c1_7, x15 + 3b18: d53fb1ef mrs x15, s3_7_c11_c1_7 + 3b1c: d51fb20f msr s3_7_c11_c2_0, x15 + 3b20: d53fb20f mrs x15, s3_7_c11_c2_0 + 3b24: d51fb22f msr s3_7_c11_c2_1, x15 + 3b28: d53fb22f mrs x15, s3_7_c11_c2_1 + 3b2c: d51fb24f msr s3_7_c11_c2_2, x15 + 3b30: d53fb24f mrs x15, s3_7_c11_c2_2 + 3b34: d51fb26f msr s3_7_c11_c2_3, x15 + 3b38: d53fb26f mrs x15, s3_7_c11_c2_3 + 3b3c: d51fb28f msr s3_7_c11_c2_4, x15 + 3b40: d53fb28f mrs x15, s3_7_c11_c2_4 + 3b44: d51fb2af msr s3_7_c11_c2_5, x15 + 3b48: d53fb2af mrs x15, s3_7_c11_c2_5 + 3b4c: d51fb2cf msr s3_7_c11_c2_6, x15 + 3b50: d53fb2cf mrs x15, s3_7_c11_c2_6 + 3b54: d51fb2ef msr s3_7_c11_c2_7, x15 + 3b58: d53fb2ef mrs x15, s3_7_c11_c2_7 + 3b5c: d51fb30f msr s3_7_c11_c3_0, x15 + 3b60: d53fb30f mrs x15, s3_7_c11_c3_0 + 3b64: d51fb32f msr s3_7_c11_c3_1, x15 + 3b68: d53fb32f mrs x15, s3_7_c11_c3_1 + 3b6c: d51fb34f msr s3_7_c11_c3_2, x15 + 3b70: d53fb34f mrs x15, s3_7_c11_c3_2 + 3b74: d51fb36f msr s3_7_c11_c3_3, x15 + 3b78: d53fb36f mrs x15, s3_7_c11_c3_3 + 3b7c: d51fb38f msr s3_7_c11_c3_4, x15 + 3b80: d53fb38f mrs x15, s3_7_c11_c3_4 + 3b84: d51fb3af msr s3_7_c11_c3_5, x15 + 3b88: d53fb3af mrs x15, s3_7_c11_c3_5 + 3b8c: d51fb3cf msr s3_7_c11_c3_6, x15 + 3b90: d53fb3cf mrs x15, s3_7_c11_c3_6 + 3b94: d51fb3ef msr s3_7_c11_c3_7, x15 + 3b98: d53fb3ef mrs x15, s3_7_c11_c3_7 + 3b9c: d51fb40f msr s3_7_c11_c4_0, x15 + 3ba0: d53fb40f mrs x15, s3_7_c11_c4_0 + 3ba4: d51fb42f msr s3_7_c11_c4_1, x15 + 3ba8: d53fb42f mrs x15, s3_7_c11_c4_1 + 3bac: d51fb44f msr s3_7_c11_c4_2, x15 + 3bb0: d53fb44f mrs x15, s3_7_c11_c4_2 + 3bb4: d51fb46f msr s3_7_c11_c4_3, x15 + 3bb8: d53fb46f mrs x15, s3_7_c11_c4_3 + 3bbc: d51fb48f msr s3_7_c11_c4_4, x15 + 3bc0: d53fb48f mrs x15, s3_7_c11_c4_4 + 3bc4: d51fb4af msr s3_7_c11_c4_5, x15 + 3bc8: d53fb4af mrs x15, s3_7_c11_c4_5 + 3bcc: d51fb4cf msr s3_7_c11_c4_6, x15 + 3bd0: d53fb4cf mrs x15, s3_7_c11_c4_6 + 3bd4: d51fb4ef msr s3_7_c11_c4_7, x15 + 3bd8: d53fb4ef mrs x15, s3_7_c11_c4_7 + 3bdc: d51fb50f msr s3_7_c11_c5_0, x15 + 3be0: d53fb50f mrs x15, s3_7_c11_c5_0 + 3be4: d51fb52f msr s3_7_c11_c5_1, x15 + 3be8: d53fb52f mrs x15, s3_7_c11_c5_1 + 3bec: d51fb54f msr s3_7_c11_c5_2, x15 + 3bf0: d53fb54f mrs x15, s3_7_c11_c5_2 + 3bf4: d51fb56f msr s3_7_c11_c5_3, x15 + 3bf8: d53fb56f mrs x15, s3_7_c11_c5_3 + 3bfc: d51fb58f msr s3_7_c11_c5_4, x15 + 3c00: d53fb58f mrs x15, s3_7_c11_c5_4 + 3c04: d51fb5af msr s3_7_c11_c5_5, x15 + 3c08: d53fb5af mrs x15, s3_7_c11_c5_5 + 3c0c: d51fb5cf msr s3_7_c11_c5_6, x15 + 3c10: d53fb5cf mrs x15, s3_7_c11_c5_6 + 3c14: d51fb5ef msr s3_7_c11_c5_7, x15 + 3c18: d53fb5ef mrs x15, s3_7_c11_c5_7 + 3c1c: d51fb60f msr s3_7_c11_c6_0, x15 + 3c20: d53fb60f mrs x15, s3_7_c11_c6_0 + 3c24: d51fb62f msr s3_7_c11_c6_1, x15 + 3c28: d53fb62f mrs x15, s3_7_c11_c6_1 + 3c2c: d51fb64f msr s3_7_c11_c6_2, x15 + 3c30: d53fb64f mrs x15, s3_7_c11_c6_2 + 3c34: d51fb66f msr s3_7_c11_c6_3, x15 + 3c38: d53fb66f mrs x15, s3_7_c11_c6_3 + 3c3c: d51fb68f msr s3_7_c11_c6_4, x15 + 3c40: d53fb68f mrs x15, s3_7_c11_c6_4 + 3c44: d51fb6af msr s3_7_c11_c6_5, x15 + 3c48: d53fb6af mrs x15, s3_7_c11_c6_5 + 3c4c: d51fb6cf msr s3_7_c11_c6_6, x15 + 3c50: d53fb6cf mrs x15, s3_7_c11_c6_6 + 3c54: d51fb6ef msr s3_7_c11_c6_7, x15 + 3c58: d53fb6ef mrs x15, s3_7_c11_c6_7 + 3c5c: d51fb70f msr s3_7_c11_c7_0, x15 + 3c60: d53fb70f mrs x15, s3_7_c11_c7_0 + 3c64: d51fb72f msr s3_7_c11_c7_1, x15 + 3c68: d53fb72f mrs x15, s3_7_c11_c7_1 + 3c6c: d51fb74f msr s3_7_c11_c7_2, x15 + 3c70: d53fb74f mrs x15, s3_7_c11_c7_2 + 3c74: d51fb76f msr s3_7_c11_c7_3, x15 + 3c78: d53fb76f mrs x15, s3_7_c11_c7_3 + 3c7c: d51fb78f msr s3_7_c11_c7_4, x15 + 3c80: d53fb78f mrs x15, s3_7_c11_c7_4 + 3c84: d51fb7af msr s3_7_c11_c7_5, x15 + 3c88: d53fb7af mrs x15, s3_7_c11_c7_5 + 3c8c: d51fb7cf msr s3_7_c11_c7_6, x15 + 3c90: d53fb7cf mrs x15, s3_7_c11_c7_6 + 3c94: d51fb7ef msr s3_7_c11_c7_7, x15 + 3c98: d53fb7ef mrs x15, s3_7_c11_c7_7 + 3c9c: d51fb80f msr s3_7_c11_c8_0, x15 + 3ca0: d53fb80f mrs x15, s3_7_c11_c8_0 + 3ca4: d51fb82f msr s3_7_c11_c8_1, x15 + 3ca8: d53fb82f mrs x15, s3_7_c11_c8_1 + 3cac: d51fb84f msr s3_7_c11_c8_2, x15 + 3cb0: d53fb84f mrs x15, s3_7_c11_c8_2 + 3cb4: d51fb86f msr s3_7_c11_c8_3, x15 + 3cb8: d53fb86f mrs x15, s3_7_c11_c8_3 + 3cbc: d51fb88f msr s3_7_c11_c8_4, x15 + 3cc0: d53fb88f mrs x15, s3_7_c11_c8_4 + 3cc4: d51fb8af msr s3_7_c11_c8_5, x15 + 3cc8: d53fb8af mrs x15, s3_7_c11_c8_5 + 3ccc: d51fb8cf msr s3_7_c11_c8_6, x15 + 3cd0: d53fb8cf mrs x15, s3_7_c11_c8_6 + 3cd4: d51fb8ef msr s3_7_c11_c8_7, x15 + 3cd8: d53fb8ef mrs x15, s3_7_c11_c8_7 + 3cdc: d51fb90f msr s3_7_c11_c9_0, x15 + 3ce0: d53fb90f mrs x15, s3_7_c11_c9_0 + 3ce4: d51fb92f msr s3_7_c11_c9_1, x15 + 3ce8: d53fb92f mrs x15, s3_7_c11_c9_1 + 3cec: d51fb94f msr s3_7_c11_c9_2, x15 + 3cf0: d53fb94f mrs x15, s3_7_c11_c9_2 + 3cf4: d51fb96f msr s3_7_c11_c9_3, x15 + 3cf8: d53fb96f mrs x15, s3_7_c11_c9_3 + 3cfc: d51fb98f msr s3_7_c11_c9_4, x15 + 3d00: d53fb98f mrs x15, s3_7_c11_c9_4 + 3d04: d51fb9af msr s3_7_c11_c9_5, x15 + 3d08: d53fb9af mrs x15, s3_7_c11_c9_5 + 3d0c: d51fb9cf msr s3_7_c11_c9_6, x15 + 3d10: d53fb9cf mrs x15, s3_7_c11_c9_6 + 3d14: d51fb9ef msr s3_7_c11_c9_7, x15 + 3d18: d53fb9ef mrs x15, s3_7_c11_c9_7 + 3d1c: d51fba0f msr s3_7_c11_c10_0, x15 + 3d20: d53fba0f mrs x15, s3_7_c11_c10_0 + 3d24: d51fba2f msr s3_7_c11_c10_1, x15 + 3d28: d53fba2f mrs x15, s3_7_c11_c10_1 + 3d2c: d51fba4f msr s3_7_c11_c10_2, x15 + 3d30: d53fba4f mrs x15, s3_7_c11_c10_2 + 3d34: d51fba6f msr s3_7_c11_c10_3, x15 + 3d38: d53fba6f mrs x15, s3_7_c11_c10_3 + 3d3c: d51fba8f msr s3_7_c11_c10_4, x15 + 3d40: d53fba8f mrs x15, s3_7_c11_c10_4 + 3d44: d51fbaaf msr s3_7_c11_c10_5, x15 + 3d48: d53fbaaf mrs x15, s3_7_c11_c10_5 + 3d4c: d51fbacf msr s3_7_c11_c10_6, x15 + 3d50: d53fbacf mrs x15, s3_7_c11_c10_6 + 3d54: d51fbaef msr s3_7_c11_c10_7, x15 + 3d58: d53fbaef mrs x15, s3_7_c11_c10_7 + 3d5c: d51fbb0f msr s3_7_c11_c11_0, x15 + 3d60: d53fbb0f mrs x15, s3_7_c11_c11_0 + 3d64: d51fbb2f msr s3_7_c11_c11_1, x15 + 3d68: d53fbb2f mrs x15, s3_7_c11_c11_1 + 3d6c: d51fbb4f msr s3_7_c11_c11_2, x15 + 3d70: d53fbb4f mrs x15, s3_7_c11_c11_2 + 3d74: d51fbb6f msr s3_7_c11_c11_3, x15 + 3d78: d53fbb6f mrs x15, s3_7_c11_c11_3 + 3d7c: d51fbb8f msr s3_7_c11_c11_4, x15 + 3d80: d53fbb8f mrs x15, s3_7_c11_c11_4 + 3d84: d51fbbaf msr s3_7_c11_c11_5, x15 + 3d88: d53fbbaf mrs x15, s3_7_c11_c11_5 + 3d8c: d51fbbcf msr s3_7_c11_c11_6, x15 + 3d90: d53fbbcf mrs x15, s3_7_c11_c11_6 + 3d94: d51fbbef msr s3_7_c11_c11_7, x15 + 3d98: d53fbbef mrs x15, s3_7_c11_c11_7 + 3d9c: d51fbc0f msr s3_7_c11_c12_0, x15 + 3da0: d53fbc0f mrs x15, s3_7_c11_c12_0 + 3da4: d51fbc2f msr s3_7_c11_c12_1, x15 + 3da8: d53fbc2f mrs x15, s3_7_c11_c12_1 + 3dac: d51fbc4f msr s3_7_c11_c12_2, x15 + 3db0: d53fbc4f mrs x15, s3_7_c11_c12_2 + 3db4: d51fbc6f msr s3_7_c11_c12_3, x15 + 3db8: d53fbc6f mrs x15, s3_7_c11_c12_3 + 3dbc: d51fbc8f msr s3_7_c11_c12_4, x15 + 3dc0: d53fbc8f mrs x15, s3_7_c11_c12_4 + 3dc4: d51fbcaf msr s3_7_c11_c12_5, x15 + 3dc8: d53fbcaf mrs x15, s3_7_c11_c12_5 + 3dcc: d51fbccf msr s3_7_c11_c12_6, x15 + 3dd0: d53fbccf mrs x15, s3_7_c11_c12_6 + 3dd4: d51fbcef msr s3_7_c11_c12_7, x15 + 3dd8: d53fbcef mrs x15, s3_7_c11_c12_7 + 3ddc: d51fbd0f msr s3_7_c11_c13_0, x15 + 3de0: d53fbd0f mrs x15, s3_7_c11_c13_0 + 3de4: d51fbd2f msr s3_7_c11_c13_1, x15 + 3de8: d53fbd2f mrs x15, s3_7_c11_c13_1 + 3dec: d51fbd4f msr s3_7_c11_c13_2, x15 + 3df0: d53fbd4f mrs x15, s3_7_c11_c13_2 + 3df4: d51fbd6f msr s3_7_c11_c13_3, x15 + 3df8: d53fbd6f mrs x15, s3_7_c11_c13_3 + 3dfc: d51fbd8f msr s3_7_c11_c13_4, x15 + 3e00: d53fbd8f mrs x15, s3_7_c11_c13_4 + 3e04: d51fbdaf msr s3_7_c11_c13_5, x15 + 3e08: d53fbdaf mrs x15, s3_7_c11_c13_5 + 3e0c: d51fbdcf msr s3_7_c11_c13_6, x15 + 3e10: d53fbdcf mrs x15, s3_7_c11_c13_6 + 3e14: d51fbdef msr s3_7_c11_c13_7, x15 + 3e18: d53fbdef mrs x15, s3_7_c11_c13_7 + 3e1c: d51fbe0f msr s3_7_c11_c14_0, x15 + 3e20: d53fbe0f mrs x15, s3_7_c11_c14_0 + 3e24: d51fbe2f msr s3_7_c11_c14_1, x15 + 3e28: d53fbe2f mrs x15, s3_7_c11_c14_1 + 3e2c: d51fbe4f msr s3_7_c11_c14_2, x15 + 3e30: d53fbe4f mrs x15, s3_7_c11_c14_2 + 3e34: d51fbe6f msr s3_7_c11_c14_3, x15 + 3e38: d53fbe6f mrs x15, s3_7_c11_c14_3 + 3e3c: d51fbe8f msr s3_7_c11_c14_4, x15 + 3e40: d53fbe8f mrs x15, s3_7_c11_c14_4 + 3e44: d51fbeaf msr s3_7_c11_c14_5, x15 + 3e48: d53fbeaf mrs x15, s3_7_c11_c14_5 + 3e4c: d51fbecf msr s3_7_c11_c14_6, x15 + 3e50: d53fbecf mrs x15, s3_7_c11_c14_6 + 3e54: d51fbeef msr s3_7_c11_c14_7, x15 + 3e58: d53fbeef mrs x15, s3_7_c11_c14_7 + 3e5c: d51fbf0f msr s3_7_c11_c15_0, x15 + 3e60: d53fbf0f mrs x15, s3_7_c11_c15_0 + 3e64: d51fbf2f msr s3_7_c11_c15_1, x15 + 3e68: d53fbf2f mrs x15, s3_7_c11_c15_1 + 3e6c: d51fbf4f msr s3_7_c11_c15_2, x15 + 3e70: d53fbf4f mrs x15, s3_7_c11_c15_2 + 3e74: d51fbf6f msr s3_7_c11_c15_3, x15 + 3e78: d53fbf6f mrs x15, s3_7_c11_c15_3 + 3e7c: d51fbf8f msr s3_7_c11_c15_4, x15 + 3e80: d53fbf8f mrs x15, s3_7_c11_c15_4 + 3e84: d51fbfaf msr s3_7_c11_c15_5, x15 + 3e88: d53fbfaf mrs x15, s3_7_c11_c15_5 + 3e8c: d51fbfcf msr s3_7_c11_c15_6, x15 + 3e90: d53fbfcf mrs x15, s3_7_c11_c15_6 + 3e94: d51fbfef msr s3_7_c11_c15_7, x15 + 3e98: d53fbfef mrs x15, s3_7_c11_c15_7 + 3e9c: d51ff00f msr s3_7_c15_c0_0, x15 + 3ea0: d53ff00f mrs x15, s3_7_c15_c0_0 + 3ea4: d51ff02f msr s3_7_c15_c0_1, x15 + 3ea8: d53ff02f mrs x15, s3_7_c15_c0_1 + 3eac: d51ff04f msr s3_7_c15_c0_2, x15 + 3eb0: d53ff04f mrs x15, s3_7_c15_c0_2 + 3eb4: d51ff06f msr s3_7_c15_c0_3, x15 + 3eb8: d53ff06f mrs x15, s3_7_c15_c0_3 + 3ebc: d51ff08f msr s3_7_c15_c0_4, x15 + 3ec0: d53ff08f mrs x15, s3_7_c15_c0_4 + 3ec4: d51ff0af msr s3_7_c15_c0_5, x15 + 3ec8: d53ff0af mrs x15, s3_7_c15_c0_5 + 3ecc: d51ff0cf msr s3_7_c15_c0_6, x15 + 3ed0: d53ff0cf mrs x15, s3_7_c15_c0_6 + 3ed4: d51ff0ef msr s3_7_c15_c0_7, x15 + 3ed8: d53ff0ef mrs x15, s3_7_c15_c0_7 + 3edc: d51ff10f msr s3_7_c15_c1_0, x15 + 3ee0: d53ff10f mrs x15, s3_7_c15_c1_0 + 3ee4: d51ff12f msr s3_7_c15_c1_1, x15 + 3ee8: d53ff12f mrs x15, s3_7_c15_c1_1 + 3eec: d51ff14f msr s3_7_c15_c1_2, x15 + 3ef0: d53ff14f mrs x15, s3_7_c15_c1_2 + 3ef4: d51ff16f msr s3_7_c15_c1_3, x15 + 3ef8: d53ff16f mrs x15, s3_7_c15_c1_3 + 3efc: d51ff18f msr s3_7_c15_c1_4, x15 + 3f00: d53ff18f mrs x15, s3_7_c15_c1_4 + 3f04: d51ff1af msr s3_7_c15_c1_5, x15 + 3f08: d53ff1af mrs x15, s3_7_c15_c1_5 + 3f0c: d51ff1cf msr s3_7_c15_c1_6, x15 + 3f10: d53ff1cf mrs x15, s3_7_c15_c1_6 + 3f14: d51ff1ef msr s3_7_c15_c1_7, x15 + 3f18: d53ff1ef mrs x15, s3_7_c15_c1_7 + 3f1c: d51ff20f msr s3_7_c15_c2_0, x15 + 3f20: d53ff20f mrs x15, s3_7_c15_c2_0 + 3f24: d51ff22f msr s3_7_c15_c2_1, x15 + 3f28: d53ff22f mrs x15, s3_7_c15_c2_1 + 3f2c: d51ff24f msr s3_7_c15_c2_2, x15 + 3f30: d53ff24f mrs x15, s3_7_c15_c2_2 + 3f34: d51ff26f msr s3_7_c15_c2_3, x15 + 3f38: d53ff26f mrs x15, s3_7_c15_c2_3 + 3f3c: d51ff28f msr s3_7_c15_c2_4, x15 + 3f40: d53ff28f mrs x15, s3_7_c15_c2_4 + 3f44: d51ff2af msr s3_7_c15_c2_5, x15 + 3f48: d53ff2af mrs x15, s3_7_c15_c2_5 + 3f4c: d51ff2cf msr s3_7_c15_c2_6, x15 + 3f50: d53ff2cf mrs x15, s3_7_c15_c2_6 + 3f54: d51ff2ef msr s3_7_c15_c2_7, x15 + 3f58: d53ff2ef mrs x15, s3_7_c15_c2_7 + 3f5c: d51ff30f msr s3_7_c15_c3_0, x15 + 3f60: d53ff30f mrs x15, s3_7_c15_c3_0 + 3f64: d51ff32f msr s3_7_c15_c3_1, x15 + 3f68: d53ff32f mrs x15, s3_7_c15_c3_1 + 3f6c: d51ff34f msr s3_7_c15_c3_2, x15 + 3f70: d53ff34f mrs x15, s3_7_c15_c3_2 + 3f74: d51ff36f msr s3_7_c15_c3_3, x15 + 3f78: d53ff36f mrs x15, s3_7_c15_c3_3 + 3f7c: d51ff38f msr s3_7_c15_c3_4, x15 + 3f80: d53ff38f mrs x15, s3_7_c15_c3_4 + 3f84: d51ff3af msr s3_7_c15_c3_5, x15 + 3f88: d53ff3af mrs x15, s3_7_c15_c3_5 + 3f8c: d51ff3cf msr s3_7_c15_c3_6, x15 + 3f90: d53ff3cf mrs x15, s3_7_c15_c3_6 + 3f94: d51ff3ef msr s3_7_c15_c3_7, x15 + 3f98: d53ff3ef mrs x15, s3_7_c15_c3_7 + 3f9c: d51ff40f msr s3_7_c15_c4_0, x15 + 3fa0: d53ff40f mrs x15, s3_7_c15_c4_0 + 3fa4: d51ff42f msr s3_7_c15_c4_1, x15 + 3fa8: d53ff42f mrs x15, s3_7_c15_c4_1 + 3fac: d51ff44f msr s3_7_c15_c4_2, x15 + 3fb0: d53ff44f mrs x15, s3_7_c15_c4_2 + 3fb4: d51ff46f msr s3_7_c15_c4_3, x15 + 3fb8: d53ff46f mrs x15, s3_7_c15_c4_3 + 3fbc: d51ff48f msr s3_7_c15_c4_4, x15 + 3fc0: d53ff48f mrs x15, s3_7_c15_c4_4 + 3fc4: d51ff4af msr s3_7_c15_c4_5, x15 + 3fc8: d53ff4af mrs x15, s3_7_c15_c4_5 + 3fcc: d51ff4cf msr s3_7_c15_c4_6, x15 + 3fd0: d53ff4cf mrs x15, s3_7_c15_c4_6 + 3fd4: d51ff4ef msr s3_7_c15_c4_7, x15 + 3fd8: d53ff4ef mrs x15, s3_7_c15_c4_7 + 3fdc: d51ff50f msr s3_7_c15_c5_0, x15 + 3fe0: d53ff50f mrs x15, s3_7_c15_c5_0 + 3fe4: d51ff52f msr s3_7_c15_c5_1, x15 + 3fe8: d53ff52f mrs x15, s3_7_c15_c5_1 + 3fec: d51ff54f msr s3_7_c15_c5_2, x15 + 3ff0: d53ff54f mrs x15, s3_7_c15_c5_2 + 3ff4: d51ff56f msr s3_7_c15_c5_3, x15 + 3ff8: d53ff56f mrs x15, s3_7_c15_c5_3 + 3ffc: d51ff58f msr s3_7_c15_c5_4, x15 + 4000: d53ff58f mrs x15, s3_7_c15_c5_4 + 4004: d51ff5af msr s3_7_c15_c5_5, x15 + 4008: d53ff5af mrs x15, s3_7_c15_c5_5 + 400c: d51ff5cf msr s3_7_c15_c5_6, x15 + 4010: d53ff5cf mrs x15, s3_7_c15_c5_6 + 4014: d51ff5ef msr s3_7_c15_c5_7, x15 + 4018: d53ff5ef mrs x15, s3_7_c15_c5_7 + 401c: d51ff60f msr s3_7_c15_c6_0, x15 + 4020: d53ff60f mrs x15, s3_7_c15_c6_0 + 4024: d51ff62f msr s3_7_c15_c6_1, x15 + 4028: d53ff62f mrs x15, s3_7_c15_c6_1 + 402c: d51ff64f msr s3_7_c15_c6_2, x15 + 4030: d53ff64f mrs x15, s3_7_c15_c6_2 + 4034: d51ff66f msr s3_7_c15_c6_3, x15 + 4038: d53ff66f mrs x15, s3_7_c15_c6_3 + 403c: d51ff68f msr s3_7_c15_c6_4, x15 + 4040: d53ff68f mrs x15, s3_7_c15_c6_4 + 4044: d51ff6af msr s3_7_c15_c6_5, x15 + 4048: d53ff6af mrs x15, s3_7_c15_c6_5 + 404c: d51ff6cf msr s3_7_c15_c6_6, x15 + 4050: d53ff6cf mrs x15, s3_7_c15_c6_6 + 4054: d51ff6ef msr s3_7_c15_c6_7, x15 + 4058: d53ff6ef mrs x15, s3_7_c15_c6_7 + 405c: d51ff70f msr s3_7_c15_c7_0, x15 + 4060: d53ff70f mrs x15, s3_7_c15_c7_0 + 4064: d51ff72f msr s3_7_c15_c7_1, x15 + 4068: d53ff72f mrs x15, s3_7_c15_c7_1 + 406c: d51ff74f msr s3_7_c15_c7_2, x15 + 4070: d53ff74f mrs x15, s3_7_c15_c7_2 + 4074: d51ff76f msr s3_7_c15_c7_3, x15 + 4078: d53ff76f mrs x15, s3_7_c15_c7_3 + 407c: d51ff78f msr s3_7_c15_c7_4, x15 + 4080: d53ff78f mrs x15, s3_7_c15_c7_4 + 4084: d51ff7af msr s3_7_c15_c7_5, x15 + 4088: d53ff7af mrs x15, s3_7_c15_c7_5 + 408c: d51ff7cf msr s3_7_c15_c7_6, x15 + 4090: d53ff7cf mrs x15, s3_7_c15_c7_6 + 4094: d51ff7ef msr s3_7_c15_c7_7, x15 + 4098: d53ff7ef mrs x15, s3_7_c15_c7_7 + 409c: d51ff80f msr s3_7_c15_c8_0, x15 + 40a0: d53ff80f mrs x15, s3_7_c15_c8_0 + 40a4: d51ff82f msr s3_7_c15_c8_1, x15 + 40a8: d53ff82f mrs x15, s3_7_c15_c8_1 + 40ac: d51ff84f msr s3_7_c15_c8_2, x15 + 40b0: d53ff84f mrs x15, s3_7_c15_c8_2 + 40b4: d51ff86f msr s3_7_c15_c8_3, x15 + 40b8: d53ff86f mrs x15, s3_7_c15_c8_3 + 40bc: d51ff88f msr s3_7_c15_c8_4, x15 + 40c0: d53ff88f mrs x15, s3_7_c15_c8_4 + 40c4: d51ff8af msr s3_7_c15_c8_5, x15 + 40c8: d53ff8af mrs x15, s3_7_c15_c8_5 + 40cc: d51ff8cf msr s3_7_c15_c8_6, x15 + 40d0: d53ff8cf mrs x15, s3_7_c15_c8_6 + 40d4: d51ff8ef msr s3_7_c15_c8_7, x15 + 40d8: d53ff8ef mrs x15, s3_7_c15_c8_7 + 40dc: d51ff90f msr s3_7_c15_c9_0, x15 + 40e0: d53ff90f mrs x15, s3_7_c15_c9_0 + 40e4: d51ff92f msr s3_7_c15_c9_1, x15 + 40e8: d53ff92f mrs x15, s3_7_c15_c9_1 + 40ec: d51ff94f msr s3_7_c15_c9_2, x15 + 40f0: d53ff94f mrs x15, s3_7_c15_c9_2 + 40f4: d51ff96f msr s3_7_c15_c9_3, x15 + 40f8: d53ff96f mrs x15, s3_7_c15_c9_3 + 40fc: d51ff98f msr s3_7_c15_c9_4, x15 + 4100: d53ff98f mrs x15, s3_7_c15_c9_4 + 4104: d51ff9af msr s3_7_c15_c9_5, x15 + 4108: d53ff9af mrs x15, s3_7_c15_c9_5 + 410c: d51ff9cf msr s3_7_c15_c9_6, x15 + 4110: d53ff9cf mrs x15, s3_7_c15_c9_6 + 4114: d51ff9ef msr s3_7_c15_c9_7, x15 + 4118: d53ff9ef mrs x15, s3_7_c15_c9_7 + 411c: d51ffa0f msr s3_7_c15_c10_0, x15 + 4120: d53ffa0f mrs x15, s3_7_c15_c10_0 + 4124: d51ffa2f msr s3_7_c15_c10_1, x15 + 4128: d53ffa2f mrs x15, s3_7_c15_c10_1 + 412c: d51ffa4f msr s3_7_c15_c10_2, x15 + 4130: d53ffa4f mrs x15, s3_7_c15_c10_2 + 4134: d51ffa6f msr s3_7_c15_c10_3, x15 + 4138: d53ffa6f mrs x15, s3_7_c15_c10_3 + 413c: d51ffa8f msr s3_7_c15_c10_4, x15 + 4140: d53ffa8f mrs x15, s3_7_c15_c10_4 + 4144: d51ffaaf msr s3_7_c15_c10_5, x15 + 4148: d53ffaaf mrs x15, s3_7_c15_c10_5 + 414c: d51ffacf msr s3_7_c15_c10_6, x15 + 4150: d53ffacf mrs x15, s3_7_c15_c10_6 + 4154: d51ffaef msr s3_7_c15_c10_7, x15 + 4158: d53ffaef mrs x15, s3_7_c15_c10_7 + 415c: d51ffb0f msr s3_7_c15_c11_0, x15 + 4160: d53ffb0f mrs x15, s3_7_c15_c11_0 + 4164: d51ffb2f msr s3_7_c15_c11_1, x15 + 4168: d53ffb2f mrs x15, s3_7_c15_c11_1 + 416c: d51ffb4f msr s3_7_c15_c11_2, x15 + 4170: d53ffb4f mrs x15, s3_7_c15_c11_2 + 4174: d51ffb6f msr s3_7_c15_c11_3, x15 + 4178: d53ffb6f mrs x15, s3_7_c15_c11_3 + 417c: d51ffb8f msr s3_7_c15_c11_4, x15 + 4180: d53ffb8f mrs x15, s3_7_c15_c11_4 + 4184: d51ffbaf msr s3_7_c15_c11_5, x15 + 4188: d53ffbaf mrs x15, s3_7_c15_c11_5 + 418c: d51ffbcf msr s3_7_c15_c11_6, x15 + 4190: d53ffbcf mrs x15, s3_7_c15_c11_6 + 4194: d51ffbef msr s3_7_c15_c11_7, x15 + 4198: d53ffbef mrs x15, s3_7_c15_c11_7 + 419c: d51ffc0f msr s3_7_c15_c12_0, x15 + 41a0: d53ffc0f mrs x15, s3_7_c15_c12_0 + 41a4: d51ffc2f msr s3_7_c15_c12_1, x15 + 41a8: d53ffc2f mrs x15, s3_7_c15_c12_1 + 41ac: d51ffc4f msr s3_7_c15_c12_2, x15 + 41b0: d53ffc4f mrs x15, s3_7_c15_c12_2 + 41b4: d51ffc6f msr s3_7_c15_c12_3, x15 + 41b8: d53ffc6f mrs x15, s3_7_c15_c12_3 + 41bc: d51ffc8f msr s3_7_c15_c12_4, x15 + 41c0: d53ffc8f mrs x15, s3_7_c15_c12_4 + 41c4: d51ffcaf msr s3_7_c15_c12_5, x15 + 41c8: d53ffcaf mrs x15, s3_7_c15_c12_5 + 41cc: d51ffccf msr s3_7_c15_c12_6, x15 + 41d0: d53ffccf mrs x15, s3_7_c15_c12_6 + 41d4: d51ffcef msr s3_7_c15_c12_7, x15 + 41d8: d53ffcef mrs x15, s3_7_c15_c12_7 + 41dc: d51ffd0f msr s3_7_c15_c13_0, x15 + 41e0: d53ffd0f mrs x15, s3_7_c15_c13_0 + 41e4: d51ffd2f msr s3_7_c15_c13_1, x15 + 41e8: d53ffd2f mrs x15, s3_7_c15_c13_1 + 41ec: d51ffd4f msr s3_7_c15_c13_2, x15 + 41f0: d53ffd4f mrs x15, s3_7_c15_c13_2 + 41f4: d51ffd6f msr s3_7_c15_c13_3, x15 + 41f8: d53ffd6f mrs x15, s3_7_c15_c13_3 + 41fc: d51ffd8f msr s3_7_c15_c13_4, x15 + 4200: d53ffd8f mrs x15, s3_7_c15_c13_4 + 4204: d51ffdaf msr s3_7_c15_c13_5, x15 + 4208: d53ffdaf mrs x15, s3_7_c15_c13_5 + 420c: d51ffdcf msr s3_7_c15_c13_6, x15 + 4210: d53ffdcf mrs x15, s3_7_c15_c13_6 + 4214: d51ffdef msr s3_7_c15_c13_7, x15 + 4218: d53ffdef mrs x15, s3_7_c15_c13_7 + 421c: d51ffe0f msr s3_7_c15_c14_0, x15 + 4220: d53ffe0f mrs x15, s3_7_c15_c14_0 + 4224: d51ffe2f msr s3_7_c15_c14_1, x15 + 4228: d53ffe2f mrs x15, s3_7_c15_c14_1 + 422c: d51ffe4f msr s3_7_c15_c14_2, x15 + 4230: d53ffe4f mrs x15, s3_7_c15_c14_2 + 4234: d51ffe6f msr s3_7_c15_c14_3, x15 + 4238: d53ffe6f mrs x15, s3_7_c15_c14_3 + 423c: d51ffe8f msr s3_7_c15_c14_4, x15 + 4240: d53ffe8f mrs x15, s3_7_c15_c14_4 + 4244: d51ffeaf msr s3_7_c15_c14_5, x15 + 4248: d53ffeaf mrs x15, s3_7_c15_c14_5 + 424c: d51ffecf msr s3_7_c15_c14_6, x15 + 4250: d53ffecf mrs x15, s3_7_c15_c14_6 + 4254: d51ffeef msr s3_7_c15_c14_7, x15 + 4258: d53ffeef mrs x15, s3_7_c15_c14_7 + 425c: d51fff0f msr s3_7_c15_c15_0, x15 + 4260: d53fff0f mrs x15, s3_7_c15_c15_0 + 4264: d51fff2f msr s3_7_c15_c15_1, x15 + 4268: d53fff2f mrs x15, s3_7_c15_c15_1 + 426c: d51fff4f msr s3_7_c15_c15_2, x15 + 4270: d53fff4f mrs x15, s3_7_c15_c15_2 + 4274: d51fff6f msr s3_7_c15_c15_3, x15 + 4278: d53fff6f mrs x15, s3_7_c15_c15_3 + 427c: d51fff8f msr s3_7_c15_c15_4, x15 + 4280: d53fff8f mrs x15, s3_7_c15_c15_4 + 4284: d51fffaf msr s3_7_c15_c15_5, x15 + 4288: d53fffaf mrs x15, s3_7_c15_c15_5 + 428c: d51fffcf msr s3_7_c15_c15_6, x15 + 4290: d53fffcf mrs x15, s3_7_c15_c15_6 + 4294: d51fffef msr s3_7_c15_c15_7, x15 + 4298: d53fffef mrs x15, s3_7_c15_c15_7 + 429c: d513040f msr dbgdtr_el0, x15 + 42a0: d533040f mrs x15, dbgdtr_el0 + 42a4: d533050f mrs x15, dbgdtrrx_el0 diff --git a/gas/testsuite/gas/aarch64/sysreg-1.s b/gas/testsuite/gas/aarch64/sysreg-1.s new file mode 100644 index 0000000..eb8649b --- /dev/null +++ b/gas/testsuite/gas/aarch64/sysreg-1.s @@ -0,0 +1,160 @@ +/* sysreg-1.s Test file for AArch64 system registers. + + Copyright 2011, 2012 Free Software Foundation, Inc. + Contributed by ARM Ltd. + + This file is part of GAS. + + GAS 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. + + GAS 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; see the file COPYING3. If not, + see <http://www.gnu.org/licenses/>. */ + + .macro rw_sys_reg sys_reg xreg r w + .ifc \w, 1 + msr \sys_reg, \xreg + .endif + .ifc \r, 1 + mrs \xreg, \sys_reg + .endif + .endm + + .text + + rw_sys_reg sys_reg=id_aa64afr0_el1 xreg=x7 r=1 w=0 + rw_sys_reg sys_reg=id_aa64afr1_el1 xreg=x7 r=1 w=0 + rw_sys_reg sys_reg=mvfr2_el1 xreg=x7 r=1 w=0 + rw_sys_reg sys_reg=dlr_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=dspsr_el0 xreg=x7 r=1 w=1 + + rw_sys_reg sys_reg=sder32_el3 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=mdcr_el3 xreg=x7 r=1 w=1 + + rw_sys_reg sys_reg=mdccint_el1 xreg=x7 r=1 w=1 + + rw_sys_reg sys_reg=dbgvcr32_el2 xreg=x7 r=1 w=1 + + rw_sys_reg sys_reg=fpexc32_el2 xreg=x7 r=1 w=1 + + rw_sys_reg sys_reg=teecr32_el1 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=teehbr32_el1 xreg=x7 r=1 w=1 + + rw_sys_reg sys_reg=cntp_tval_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=cntp_ctl_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=cntp_cval_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=cntps_tval_el1 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=cntps_ctl_el1 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=cntps_cval_el1 xreg=x7 r=1 w=1 + + rw_sys_reg sys_reg=pmccntr_el0 xreg=x7 r=1 w=1 + + rw_sys_reg sys_reg=pmevcntr0_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevcntr1_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevcntr2_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevcntr3_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevcntr4_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevcntr5_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevcntr6_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevcntr7_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevcntr8_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevcntr9_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevcntr10_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevcntr11_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevcntr12_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevcntr13_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevcntr14_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevcntr15_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevcntr16_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevcntr17_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevcntr18_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevcntr19_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevcntr20_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevcntr21_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevcntr22_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevcntr23_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevcntr24_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevcntr25_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevcntr26_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevcntr27_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevcntr28_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevcntr29_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevcntr30_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevtyper0_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevtyper1_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevtyper2_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevtyper3_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevtyper4_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevtyper5_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevtyper6_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevtyper7_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevtyper8_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevtyper9_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevtyper10_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevtyper11_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevtyper12_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevtyper13_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevtyper14_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevtyper15_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevtyper16_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevtyper17_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevtyper18_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevtyper19_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevtyper20_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevtyper21_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevtyper22_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevtyper23_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevtyper24_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevtyper25_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevtyper26_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevtyper27_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevtyper28_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevtyper29_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmevtyper30_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=pmccfiltr_el0 xreg=x7 r=1 w=1 + + rw_sys_reg sys_reg=tpidrro_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=tpidr_el0 xreg=x7 r=1 w=1 + rw_sys_reg sys_reg=cntfrq_el0 xreg=x7 r=1 w=1 + + // + // Macros to generate MRS and MSR with all the implementation defined + // system registers in the form of S3_<op1>_<Cn>_<Cm>_<op2>. + + .altmacro + .macro all_op2 op1, crn, crm, from=0, to=7 + rw_sys_reg S3_\op1\()_C\crn\()_C\crm\()_\from x15 1 1 + .if (\to-\from > 0) + all_op2 \op1, \crn, \crm, %(\from+1), \to + .endif + .endm + + .macro all_crm op1, crn, from=0, to=15 + all_op2 \op1, \crn, \from, 0, 7 + .if (\to-\from > 0) + all_crm \op1, \crn, %(\from+1), \to + .endif + .endm + + .macro all_imple_defined from=0, to=7 + .irp crn, 11, 15 + all_crm \from, \crn, 0, 15 + .endr + .if \to-\from + all_imple_defined %(\from+1), \to + .endif + .endm + + all_imple_defined 0, 7 + .noaltmacro + + rw_sys_reg sys_reg=dbgdtr_el0 xreg=x15 r=1 w=1 + rw_sys_reg sys_reg=dbgdtrrx_el0 xreg=x15 r=1 w=0 diff --git a/gas/testsuite/gas/aarch64/sysreg.d b/gas/testsuite/gas/aarch64/sysreg.d new file mode 100644 index 0000000..b83b270 --- /dev/null +++ b/gas/testsuite/gas/aarch64/sysreg.d @@ -0,0 +1,25 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: d51b9c67 msr pmovsclr_el0, x7 + 4: d53b9c60 mrs x0, pmovsclr_el0 + 8: d51b9e67 msr pmovsset_el0, x7 + c: d53b9e60 mrs x0, pmovsset_el0 + 10: d5380140 mrs x0, id_dfr0_el1 + 14: d5380100 mrs x0, id_pfr0_el1 + 18: d5380120 mrs x0, id_pfr1_el1 + 1c: d5380160 mrs x0, id_afr0_el1 + 20: d5380180 mrs x0, id_mmfr0_el1 + 24: d53801a0 mrs x0, id_mmfr1_el1 + 28: d53801c0 mrs x0, id_mmfr2_el1 + 2c: d53801e0 mrs x0, id_mmfr3_el1 + 30: d5380200 mrs x0, id_isar0_el1 + 34: d5380220 mrs x0, id_isar1_el1 + 38: d5380240 mrs x0, id_isar2_el1 + 3c: d5380260 mrs x0, id_isar3_el1 + 40: d5380280 mrs x0, id_isar4_el1 + 44: d53802a0 mrs x0, id_isar5_el1 diff --git a/gas/testsuite/gas/aarch64/sysreg.s b/gas/testsuite/gas/aarch64/sysreg.s new file mode 100644 index 0000000..e6f770e --- /dev/null +++ b/gas/testsuite/gas/aarch64/sysreg.s @@ -0,0 +1,24 @@ + + # Test case for system registers + .text + + msr pmovsclr_el0, x7 + mrs x0, pmovsclr_el0 + + msr pmovsset_el0, x7 + mrs x0, pmovsset_el0 + + mrs x0, id_dfr0_el1 + mrs x0, id_pfr0_el1 + mrs x0, id_pfr1_el1 + mrs x0, id_afr0_el1 + mrs x0, id_mmfr0_el1 + mrs x0, id_mmfr1_el1 + mrs x0, id_mmfr2_el1 + mrs x0, id_mmfr3_el1 + mrs x0, id_isar0_el1 + mrs x0, id_isar1_el1 + mrs x0, id_isar2_el1 + mrs x0, id_isar3_el1 + mrs x0, id_isar4_el1 + mrs x0, id_isar5_el1 diff --git a/gas/testsuite/gas/aarch64/system.d b/gas/testsuite/gas/aarch64/system.d new file mode 100644 index 0000000..8192c71 --- /dev/null +++ b/gas/testsuite/gas/aarch64/system.d @@ -0,0 +1,352 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: d6bf03e0 drps + 4: d503201f nop + 8: d503203f yield + c: d503205f wfe + 10: d503207f wfi + 14: d503209f sev + 18: d50320bf sevl + 1c: d503201f nop + 20: d503203f yield + 24: d503205f wfe + 28: d503207f wfi + 2c: d503209f sev + 30: d50320bf sevl + 34: d50320df hint #0x6 + 38: d50320ff hint #0x7 + 3c: d503211f hint #0x8 + 40: d503213f hint #0x9 + 44: d503215f hint #0xa + 48: d503217f hint #0xb + 4c: d503219f hint #0xc + 50: d50321bf hint #0xd + 54: d50321df hint #0xe + 58: d50321ff hint #0xf + 5c: d503221f hint #0x10 + 60: d503223f hint #0x11 + 64: d503225f hint #0x12 + 68: d503227f hint #0x13 + 6c: d503229f hint #0x14 + 70: d50322bf hint #0x15 + 74: d50322df hint #0x16 + 78: d50322ff hint #0x17 + 7c: d503231f hint #0x18 + 80: d503233f hint #0x19 + 84: d503235f hint #0x1a + 88: d503237f hint #0x1b + 8c: d503239f hint #0x1c + 90: d50323bf hint #0x1d + 94: d50323df hint #0x1e + 98: d50323ff hint #0x1f + 9c: d503241f hint #0x20 + a0: d503243f hint #0x21 + a4: d503245f hint #0x22 + a8: d503247f hint #0x23 + ac: d503249f hint #0x24 + b0: d50324bf hint #0x25 + b4: d50324df hint #0x26 + b8: d50324ff hint #0x27 + bc: d503251f hint #0x28 + c0: d503253f hint #0x29 + c4: d503255f hint #0x2a + c8: d503257f hint #0x2b + cc: d503259f hint #0x2c + d0: d50325bf hint #0x2d + d4: d50325df hint #0x2e + d8: d50325ff hint #0x2f + dc: d503261f hint #0x30 + e0: d503263f hint #0x31 + e4: d503265f hint #0x32 + e8: d503267f hint #0x33 + ec: d503269f hint #0x34 + f0: d50326bf hint #0x35 + f4: d50326df hint #0x36 + f8: d50326ff hint #0x37 + fc: d503271f hint #0x38 + 100: d503273f hint #0x39 + 104: d503275f hint #0x3a + 108: d503277f hint #0x3b + 10c: d503279f hint #0x3c + 110: d50327bf hint #0x3d + 114: d50327df hint #0x3e + 118: d50327ff hint #0x3f + 11c: d503281f hint #0x40 + 120: d503283f hint #0x41 + 124: d503285f hint #0x42 + 128: d503287f hint #0x43 + 12c: d503289f hint #0x44 + 130: d50328bf hint #0x45 + 134: d50328df hint #0x46 + 138: d50328ff hint #0x47 + 13c: d503291f hint #0x48 + 140: d503293f hint #0x49 + 144: d503295f hint #0x4a + 148: d503297f hint #0x4b + 14c: d503299f hint #0x4c + 150: d50329bf hint #0x4d + 154: d50329df hint #0x4e + 158: d50329ff hint #0x4f + 15c: d5032a1f hint #0x50 + 160: d5032a3f hint #0x51 + 164: d5032a5f hint #0x52 + 168: d5032a7f hint #0x53 + 16c: d5032a9f hint #0x54 + 170: d5032abf hint #0x55 + 174: d5032adf hint #0x56 + 178: d5032aff hint #0x57 + 17c: d5032b1f hint #0x58 + 180: d5032b3f hint #0x59 + 184: d5032b5f hint #0x5a + 188: d5032b7f hint #0x5b + 18c: d5032b9f hint #0x5c + 190: d5032bbf hint #0x5d + 194: d5032bdf hint #0x5e + 198: d5032bff hint #0x5f + 19c: d5032c1f hint #0x60 + 1a0: d5032c3f hint #0x61 + 1a4: d5032c5f hint #0x62 + 1a8: d5032c7f hint #0x63 + 1ac: d5032c9f hint #0x64 + 1b0: d5032cbf hint #0x65 + 1b4: d5032cdf hint #0x66 + 1b8: d5032cff hint #0x67 + 1bc: d5032d1f hint #0x68 + 1c0: d5032d3f hint #0x69 + 1c4: d5032d5f hint #0x6a + 1c8: d5032d7f hint #0x6b + 1cc: d5032d9f hint #0x6c + 1d0: d5032dbf hint #0x6d + 1d4: d5032ddf hint #0x6e + 1d8: d5032dff hint #0x6f + 1dc: d5032e1f hint #0x70 + 1e0: d5032e3f hint #0x71 + 1e4: d5032e5f hint #0x72 + 1e8: d5032e7f hint #0x73 + 1ec: d5032e9f hint #0x74 + 1f0: d5032ebf hint #0x75 + 1f4: d5032edf hint #0x76 + 1f8: d5032eff hint #0x77 + 1fc: d5032f1f hint #0x78 + 200: d5032f3f hint #0x79 + 204: d5032f5f hint #0x7a + 208: d5032f7f hint #0x7b + 20c: d5032f9f hint #0x7c + 210: d5032fbf hint #0x7d + 214: d5032fdf hint #0x7e + 218: d5032fff hint #0x7f + 21c: d52bf7e7 sysl x7, #3, C15, C7, #7 + 220: d503309f dsb #0x00 + 224: d503319f dsb oshld + 228: d503329f dsb oshst + 22c: d503339f dsb osh + 230: d503349f dsb #0x04 + 234: d503359f dsb nshld + 238: d503369f dsb nshst + 23c: d503379f dsb nsh + 240: d503389f dsb #0x08 + 244: d503399f dsb ishld + 248: d5033a9f dsb ishst + 24c: d5033b9f dsb ish + 250: d5033c9f dsb #0x0c + 254: d5033d9f dsb ld + 258: d5033e9f dsb st + 25c: d5033f9f dsb sy + 260: d50330bf dmb #0x00 + 264: d50331bf dmb oshld + 268: d50332bf dmb oshst + 26c: d50333bf dmb osh + 270: d50334bf dmb #0x04 + 274: d50335bf dmb nshld + 278: d50336bf dmb nshst + 27c: d50337bf dmb nsh + 280: d50338bf dmb #0x08 + 284: d50339bf dmb ishld + 288: d5033abf dmb ishst + 28c: d5033bbf dmb ish + 290: d5033cbf dmb #0x0c + 294: d5033dbf dmb ld + 298: d5033ebf dmb st + 29c: d5033fbf dmb sy + 2a0: d50330df isb #0x0 + 2a4: d50331df isb #0x1 + 2a8: d50332df isb #0x2 + 2ac: d50333df isb #0x3 + 2b0: d50334df isb #0x4 + 2b4: d50335df isb #0x5 + 2b8: d50336df isb #0x6 + 2bc: d50337df isb #0x7 + 2c0: d50338df isb #0x8 + 2c4: d50339df isb #0x9 + 2c8: d5033adf isb #0xa + 2cc: d5033bdf isb #0xb + 2d0: d5033cdf isb #0xc + 2d4: d5033ddf isb #0xd + 2d8: d5033edf isb #0xe + 2dc: d5033fdf isb + 2e0: d5033fdf isb + 2e4: d8000000 prfm pldl1keep, 0 <LABEL1> + 2e4: R_AARCH64_LD_PREL_LO19 LABEL1 + 2e8: f8af6be0 prfm pldl1keep, \[sp,x15\] + 2ec: f8be58e0 prfm pldl1keep, \[x7,w30,uxtw #3\] + 2f0: f9800c60 prfm pldl1keep, \[x3,#24\] + 2f4: d8000001 prfm pldl1strm, 0 <LABEL1> + 2f4: R_AARCH64_LD_PREL_LO19 LABEL1 + 2f8: f8af6be1 prfm pldl1strm, \[sp,x15\] + 2fc: f8be58e1 prfm pldl1strm, \[x7,w30,uxtw #3\] + 300: f9800c61 prfm pldl1strm, \[x3,#24\] + 304: d8000002 prfm pldl2keep, 0 <LABEL1> + 304: R_AARCH64_LD_PREL_LO19 LABEL1 + 308: f8af6be2 prfm pldl2keep, \[sp,x15\] + 30c: f8be58e2 prfm pldl2keep, \[x7,w30,uxtw #3\] + 310: f9800c62 prfm pldl2keep, \[x3,#24\] + 314: d8000003 prfm pldl2strm, 0 <LABEL1> + 314: R_AARCH64_LD_PREL_LO19 LABEL1 + 318: f8af6be3 prfm pldl2strm, \[sp,x15\] + 31c: f8be58e3 prfm pldl2strm, \[x7,w30,uxtw #3\] + 320: f9800c63 prfm pldl2strm, \[x3,#24\] + 324: d8000004 prfm pldl3keep, 0 <LABEL1> + 324: R_AARCH64_LD_PREL_LO19 LABEL1 + 328: f8af6be4 prfm pldl3keep, \[sp,x15\] + 32c: f8be58e4 prfm pldl3keep, \[x7,w30,uxtw #3\] + 330: f9800c64 prfm pldl3keep, \[x3,#24\] + 334: d8000005 prfm pldl3strm, 0 <LABEL1> + 334: R_AARCH64_LD_PREL_LO19 LABEL1 + 338: f8af6be5 prfm pldl3strm, \[sp,x15\] + 33c: f8be58e5 prfm pldl3strm, \[x7,w30,uxtw #3\] + 340: f9800c65 prfm pldl3strm, \[x3,#24\] + 344: d8000006 prfm #0x06, 0 <LABEL1> + 344: R_AARCH64_LD_PREL_LO19 LABEL1 + 348: f8af6be6 prfm #0x06, \[sp,x15\] + 34c: f8be58e6 prfm #0x06, \[x7,w30,uxtw #3\] + 350: f9800c66 prfm #0x06, \[x3,#24\] + 354: d8000007 prfm #0x07, 0 <LABEL1> + 354: R_AARCH64_LD_PREL_LO19 LABEL1 + 358: f8af6be7 prfm #0x07, \[sp,x15\] + 35c: f8be58e7 prfm #0x07, \[x7,w30,uxtw #3\] + 360: f9800c67 prfm #0x07, \[x3,#24\] + 364: d8000008 prfm #0x08, 0 <LABEL1> + 364: R_AARCH64_LD_PREL_LO19 LABEL1 + 368: f8af6be8 prfm #0x08, \[sp,x15\] + 36c: f8be58e8 prfm #0x08, \[x7,w30,uxtw #3\] + 370: f9800c68 prfm #0x08, \[x3,#24\] + 374: d8000009 prfm #0x09, 0 <LABEL1> + 374: R_AARCH64_LD_PREL_LO19 LABEL1 + 378: f8af6be9 prfm #0x09, \[sp,x15\] + 37c: f8be58e9 prfm #0x09, \[x7,w30,uxtw #3\] + 380: f9800c69 prfm #0x09, \[x3,#24\] + 384: d800000a prfm #0x0a, 0 <LABEL1> + 384: R_AARCH64_LD_PREL_LO19 LABEL1 + 388: f8af6bea prfm #0x0a, \[sp,x15\] + 38c: f8be58ea prfm #0x0a, \[x7,w30,uxtw #3\] + 390: f9800c6a prfm #0x0a, \[x3,#24\] + 394: d800000b prfm #0x0b, 0 <LABEL1> + 394: R_AARCH64_LD_PREL_LO19 LABEL1 + 398: f8af6beb prfm #0x0b, \[sp,x15\] + 39c: f8be58eb prfm #0x0b, \[x7,w30,uxtw #3\] + 3a0: f9800c6b prfm #0x0b, \[x3,#24\] + 3a4: d800000c prfm #0x0c, 0 <LABEL1> + 3a4: R_AARCH64_LD_PREL_LO19 LABEL1 + 3a8: f8af6bec prfm #0x0c, \[sp,x15\] + 3ac: f8be58ec prfm #0x0c, \[x7,w30,uxtw #3\] + 3b0: f9800c6c prfm #0x0c, \[x3,#24\] + 3b4: d800000d prfm #0x0d, 0 <LABEL1> + 3b4: R_AARCH64_LD_PREL_LO19 LABEL1 + 3b8: f8af6bed prfm #0x0d, \[sp,x15\] + 3bc: f8be58ed prfm #0x0d, \[x7,w30,uxtw #3\] + 3c0: f9800c6d prfm #0x0d, \[x3,#24\] + 3c4: d800000e prfm #0x0e, 0 <LABEL1> + 3c4: R_AARCH64_LD_PREL_LO19 LABEL1 + 3c8: f8af6bee prfm #0x0e, \[sp,x15\] + 3cc: f8be58ee prfm #0x0e, \[x7,w30,uxtw #3\] + 3d0: f9800c6e prfm #0x0e, \[x3,#24\] + 3d4: d800000f prfm #0x0f, 0 <LABEL1> + 3d4: R_AARCH64_LD_PREL_LO19 LABEL1 + 3d8: f8af6bef prfm #0x0f, \[sp,x15\] + 3dc: f8be58ef prfm #0x0f, \[x7,w30,uxtw #3\] + 3e0: f9800c6f prfm #0x0f, \[x3,#24\] + 3e4: d8000010 prfm pstl1keep, 0 <LABEL1> + 3e4: R_AARCH64_LD_PREL_LO19 LABEL1 + 3e8: f8af6bf0 prfm pstl1keep, \[sp,x15\] + 3ec: f8be58f0 prfm pstl1keep, \[x7,w30,uxtw #3\] + 3f0: f9800c70 prfm pstl1keep, \[x3,#24\] + 3f4: d8000011 prfm pstl1strm, 0 <LABEL1> + 3f4: R_AARCH64_LD_PREL_LO19 LABEL1 + 3f8: f8af6bf1 prfm pstl1strm, \[sp,x15\] + 3fc: f8be58f1 prfm pstl1strm, \[x7,w30,uxtw #3\] + 400: f9800c71 prfm pstl1strm, \[x3,#24\] + 404: d8000012 prfm pstl2keep, 0 <LABEL1> + 404: R_AARCH64_LD_PREL_LO19 LABEL1 + 408: f8af6bf2 prfm pstl2keep, \[sp,x15\] + 40c: f8be58f2 prfm pstl2keep, \[x7,w30,uxtw #3\] + 410: f9800c72 prfm pstl2keep, \[x3,#24\] + 414: d8000013 prfm pstl2strm, 0 <LABEL1> + 414: R_AARCH64_LD_PREL_LO19 LABEL1 + 418: f8af6bf3 prfm pstl2strm, \[sp,x15\] + 41c: f8be58f3 prfm pstl2strm, \[x7,w30,uxtw #3\] + 420: f9800c73 prfm pstl2strm, \[x3,#24\] + 424: d8000014 prfm pstl3keep, 0 <LABEL1> + 424: R_AARCH64_LD_PREL_LO19 LABEL1 + 428: f8af6bf4 prfm pstl3keep, \[sp,x15\] + 42c: f8be58f4 prfm pstl3keep, \[x7,w30,uxtw #3\] + 430: f9800c74 prfm pstl3keep, \[x3,#24\] + 434: d8000015 prfm pstl3strm, 0 <LABEL1> + 434: R_AARCH64_LD_PREL_LO19 LABEL1 + 438: f8af6bf5 prfm pstl3strm, \[sp,x15\] + 43c: f8be58f5 prfm pstl3strm, \[x7,w30,uxtw #3\] + 440: f9800c75 prfm pstl3strm, \[x3,#24\] + 444: d8000016 prfm #0x16, 0 <LABEL1> + 444: R_AARCH64_LD_PREL_LO19 LABEL1 + 448: f8af6bf6 prfm #0x16, \[sp,x15\] + 44c: f8be58f6 prfm #0x16, \[x7,w30,uxtw #3\] + 450: f9800c76 prfm #0x16, \[x3,#24\] + 454: d8000017 prfm #0x17, 0 <LABEL1> + 454: R_AARCH64_LD_PREL_LO19 LABEL1 + 458: f8af6bf7 prfm #0x17, \[sp,x15\] + 45c: f8be58f7 prfm #0x17, \[x7,w30,uxtw #3\] + 460: f9800c77 prfm #0x17, \[x3,#24\] + 464: d8000018 prfm #0x18, 0 <LABEL1> + 464: R_AARCH64_LD_PREL_LO19 LABEL1 + 468: f8af6bf8 prfm #0x18, \[sp,x15\] + 46c: f8be58f8 prfm #0x18, \[x7,w30,uxtw #3\] + 470: f9800c78 prfm #0x18, \[x3,#24\] + 474: d8000019 prfm #0x19, 0 <LABEL1> + 474: R_AARCH64_LD_PREL_LO19 LABEL1 + 478: f8af6bf9 prfm #0x19, \[sp,x15\] + 47c: f8be58f9 prfm #0x19, \[x7,w30,uxtw #3\] + 480: f9800c79 prfm #0x19, \[x3,#24\] + 484: d800001a prfm #0x1a, 0 <LABEL1> + 484: R_AARCH64_LD_PREL_LO19 LABEL1 + 488: f8af6bfa prfm #0x1a, \[sp,x15\] + 48c: f8be58fa prfm #0x1a, \[x7,w30,uxtw #3\] + 490: f9800c7a prfm #0x1a, \[x3,#24\] + 494: d800001b prfm #0x1b, 0 <LABEL1> + 494: R_AARCH64_LD_PREL_LO19 LABEL1 + 498: f8af6bfb prfm #0x1b, \[sp,x15\] + 49c: f8be58fb prfm #0x1b, \[x7,w30,uxtw #3\] + 4a0: f9800c7b prfm #0x1b, \[x3,#24\] + 4a4: d800001c prfm #0x1c, 0 <LABEL1> + 4a4: R_AARCH64_LD_PREL_LO19 LABEL1 + 4a8: f8af6bfc prfm #0x1c, \[sp,x15\] + 4ac: f8be58fc prfm #0x1c, \[x7,w30,uxtw #3\] + 4b0: f9800c7c prfm #0x1c, \[x3,#24\] + 4b4: d800001d prfm #0x1d, 0 <LABEL1> + 4b4: R_AARCH64_LD_PREL_LO19 LABEL1 + 4b8: f8af6bfd prfm #0x1d, \[sp,x15\] + 4bc: f8be58fd prfm #0x1d, \[x7,w30,uxtw #3\] + 4c0: f9800c7d prfm #0x1d, \[x3,#24\] + 4c4: d800001e prfm #0x1e, 0 <LABEL1> + 4c4: R_AARCH64_LD_PREL_LO19 LABEL1 + 4c8: f8af6bfe prfm #0x1e, \[sp,x15\] + 4cc: f8be58fe prfm #0x1e, \[x7,w30,uxtw #3\] + 4d0: f9800c7e prfm #0x1e, \[x3,#24\] + 4d4: d800001f prfm #0x1f, 0 <LABEL1> + 4d4: R_AARCH64_LD_PREL_LO19 LABEL1 + 4d8: f8af6bff prfm #0x1f, \[sp,x15\] + 4dc: f8be58ff prfm #0x1f, \[x7,w30,uxtw #3\] + 4e0: f9800c7f prfm #0x1f, \[x3,#24\] diff --git a/gas/testsuite/gas/aarch64/system.s b/gas/testsuite/gas/aarch64/system.s new file mode 100644 index 0000000..7fca5c2 --- /dev/null +++ b/gas/testsuite/gas/aarch64/system.s @@ -0,0 +1,62 @@ + .text + drps + + // + // HINTS + // + + nop + yield + wfe + wfi + sev + sevl + + .macro all_hints from=0, to=127 + hint \from + .if \to-\from + all_hints "(\from+1)", \to + .endif + .endm + + all_hints from=0, to=63 + all_hints from=64, to=127 + + // + // SYSL + // + + sysl x7, #3, C15, C7, #7 + + // + // BARRIERS + // + + .macro all_barriers op, from=0, to=15 + \op \from + .if \to-\from + all_barriers \op, "(\from+1)", \to + .endif + .endm + + all_barriers op=dsb, from=0, to=15 + all_barriers op=dmb, from=0, to=15 + all_barriers op=isb, from=0, to=15 + + isb + + // + // PREFETCHS + // + + .macro all_prefetchs op, from=0, to=31 + \op \from, LABEL1 + \op \from, [sp, x15, lsl #0] + \op \from, [x7, w30, uxtw #3] + \op \from, [x3, #24] + .if \to-\from + all_prefetchs \op, "(\from+1)", \to + .endif + .endm + + all_prefetchs op=prfm, from=0, to=31 diff --git a/gas/testsuite/gas/aarch64/tlbi_op.d b/gas/testsuite/gas/aarch64/tlbi_op.d new file mode 100644 index 0000000..b929612 --- /dev/null +++ b/gas/testsuite/gas/aarch64/tlbi_op.d @@ -0,0 +1,39 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: d50c8027 tlbi ipas2e1is, x7 + 4: d50c80a7 tlbi ipas2le1is, x7 + 8: d508831f tlbi vmalle1is + c: d50c831f tlbi alle2is + 10: d50e831f tlbi alle3is + 14: d5088327 tlbi vae1is, x7 + 18: d50c8327 tlbi vae2is, x7 + 1c: d50e8327 tlbi vae3is, x7 + 20: d5088347 tlbi aside1is, x7 + 24: d5088367 tlbi vaae1is, x7 + 28: d50c839f tlbi alle1is + 2c: d50883a7 tlbi vale1is, x7 + 30: d50c83a7 tlbi vale2is, x7 + 34: d50e83a7 tlbi vale3is, x7 + 38: d50c83df tlbi vmalls12e1is + 3c: d50883e7 tlbi vaale1is, x7 + 40: d50c8427 tlbi ipas2e1, x7 + 44: d50c84a7 tlbi ipas2le1, x7 + 48: d508871f tlbi vmalle1 + 4c: d50c871f tlbi alle2 + 50: d50e871f tlbi alle3 + 54: d5088727 tlbi vae1, x7 + 58: d50c8727 tlbi vae2, x7 + 5c: d50e8727 tlbi vae3, x7 + 60: d5088747 tlbi aside1, x7 + 64: d5088767 tlbi vaae1, x7 + 68: d50c879f tlbi alle1 + 6c: d50887a7 tlbi vale1, x7 + 70: d50c87a7 tlbi vale2, x7 + 74: d50e87a7 tlbi vale3, x7 + 78: d50c87df tlbi vmalls12e1 + 7c: d50887e7 tlbi vaale1, x7 diff --git a/gas/testsuite/gas/aarch64/tlbi_op.s b/gas/testsuite/gas/aarch64/tlbi_op.s new file mode 100644 index 0000000..928b223 --- /dev/null +++ b/gas/testsuite/gas/aarch64/tlbi_op.s @@ -0,0 +1,45 @@ +// Test file for AArch64 GAS -- TLB invalidation instructions. + + .macro tlbi_m op has_xt + .ifc \has_xt, 1 + tlbi \op, x7 + .else + tlbi \op + .endif + .endm + + # Test case for tlbi operations + .text + + tlbi_m IPAS2E1IS, 1 + tlbi_m IPAS2LE1IS, 1 + tlbi_m VMALLE1IS , 0 + tlbi_m ALLE2IS, 0 + tlbi_m ALLE3IS, 0 + tlbi_m VAE1IS, 1 + tlbi_m VAE2IS, 1 + tlbi_m VAE3IS, 1 + tlbi_m ASIDE1IS, 1 + tlbi_m VAAE1IS, 1 + tlbi_m ALLE1IS, 0 + tlbi_m VALE1IS, 1 + tlbi_m VALE2IS, 1 + tlbi_m VALE3IS, 1 + tlbi_m VMALLS12E1IS, 0 + tlbi_m VAALE1IS, 1 + tlbi_m IPAS2E1, 1 + tlbi_m IPAS2LE1, 1 + tlbi_m VMALLE1 , 0 + tlbi_m ALLE2 , 0 + tlbi_m ALLE3, 0 + tlbi_m VAE1, 1 + tlbi_m VAE2, 1 + tlbi_m VAE3, 1 + tlbi_m ASIDE1, 1 + tlbi_m VAAE1, 1 + tlbi_m ALLE1, 0 + tlbi_m VALE1, 1 + tlbi_m VALE2, 1 + tlbi_m VALE3, 1 + tlbi_m VMALLS12E1, 0 + tlbi_m VAALE1, 1 diff --git a/gas/testsuite/gas/aarch64/tls.d b/gas/testsuite/gas/aarch64/tls.d new file mode 100644 index 0000000..2934519 --- /dev/null +++ b/gas/testsuite/gas/aarch64/tls.d @@ -0,0 +1,33 @@ +#objdump: -dr + +.*: file format .* + +Disassembly of section \.text: + +0000000000000000 <.*>: + 0: 90000000 adrp x0, 0 <var> + 0: R_AARCH64_TLSDESC_ADR_PAGE var + 4: f9400001 ldr x1, \[x0\] + 4: R_AARCH64_TLSDESC_LD64_LO12_NC var + 8: 91000000 add x0, x0, #0x0 + 8: R_AARCH64_TLSDESC_ADD_LO12_NC var + c: d63f0020 blr x1 + c: R_AARCH64_TLSDESC_CALL var + 10: 90000000 adrp x0, 0 <var> + 10: R_AARCH64_TLSGD_ADR_PAGE21 var + 14: 91000000 add x0, x0, #0x0 + 14: R_AARCH64_TLSGD_ADD_LO12_NC var + 18: 94000000 bl 0 <__tls_get_addr> + 18: R_AARCH64_CALL26 __tls_get_addr + 1c: 90000000 adrp x0, 0 <var> + 1c: R_AARCH64_TLSIE_ADR_GOTTPREL_PAGE21 var + 20: f9400000 ldr x0, \[x0\] + 20: R_AARCH64_TLSIE_LD64_GOTTPREL_LO12_NC var + 24: 91000020 add x0, x1, #0x0 + 24: R_AARCH64_TLSLE_ADD_TPREL_LO12 var + 28: 91400020 add x0, x1, #0x0, lsl #12 + 28: R_AARCH64_TLSLE_ADD_TPREL_HI12 var + 2c: 91400020 add x0, x1, #0x0, lsl #12 + 2c: R_AARCH64_TLSLE_ADD_TPREL_HI12 var + 30: 91000020 add x0, x1, #0x0 + 30: R_AARCH64_TLSLE_ADD_TPREL_LO12_NC var diff --git a/gas/testsuite/gas/aarch64/tls.s b/gas/testsuite/gas/aarch64/tls.s new file mode 100644 index 0000000..6bf75b4 --- /dev/null +++ b/gas/testsuite/gas/aarch64/tls.s @@ -0,0 +1,53 @@ +/* tls.s Test file for AArch64 TLS relocations. + + Copyright 2011, 2012 Free Software Foundation, Inc. + Contributed by ARM Ltd. + + This file is part of GAS. + + GAS 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. + + GAS 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; see the file COPYING3. If not, + see <http://www.gnu.org/licenses/>. */ + +func: + + // R_AARCH64_TLSDESC_ADR_PAGE var + adrp x0, :tlsdesc:var + // R_AARCH64_TLSDESC_LD64_LO12 var + ldr x1, [x0, #:tlsdesc_lo12:var] + // R_AARCH64_TLSDESC_ADD_LO12 var + add x0, x0, #:tlsdesc_lo12:var + // R_AARCH64_TLSDESC_CALL var + .tlsdesccall var + blr x1 + + // R_AARCH64_TLSGD_ADR_PAGE21 var + adrp x0, :tlsgd:var + // R_AARCH64_TLSGD_ADD_LO12_NC var + add x0, x0, #:tlsgd_lo12:var + // R_AARCH64_CALL26 + bl __tls_get_addr + + // R_AARCH64_TLSIE_ADR_GOTTPREL_PAGE21 var + adrp x0, :gottprel:var + // R_AARCH64_TLSUE_GOTTPREL_LO12_NC var + ldr x0, [x0, #:gottprel_lo12:var] + + // R_AARCH64_TLSLE_ADD_TPREL_LO12 var + add x0, x1, #:tprel_lo12:var + // R_AARCH64_TLSLE_ADD_TPREL_HI12 var + add x0, x1, #:tprel_hi12:var + // R_AARCH64_TLSLE_ADD_TPREL_HI12 var + add x0, x1, #:tprel_hi12:var, lsl #12 + // R_AARCH64_TLSLE_ADD_TPREL_LO12_NC var + add x0, x1, #:tprel_lo12_nc:var diff --git a/gas/testsuite/gas/aarch64/verbose-error.d b/gas/testsuite/gas/aarch64/verbose-error.d new file mode 100644 index 0000000..5e5f78a --- /dev/null +++ b/gas/testsuite/gas/aarch64/verbose-error.d @@ -0,0 +1,4 @@ +#name: Verbose Error Messages +#as: -mverbose-error +#source: verbose-error.s +#error-output: verbose-error.l diff --git a/gas/testsuite/gas/aarch64/verbose-error.l b/gas/testsuite/gas/aarch64/verbose-error.l new file mode 100644 index 0000000..b7f713e --- /dev/null +++ b/gas/testsuite/gas/aarch64/verbose-error.l @@ -0,0 +1,45 @@ +[^:]*: Assembler messages: +[^:]*:4: Error: missing shift amount at operand 2 -- `strb w7,\[x30,x0,lsl\]' +[^:]*:5: Error: operand mismatch -- `ubfm w0,x1,8,31' +[^:]*:5: Info: did you mean this\? +[^:]*:5: Info: ubfm w0,w1,#8,#31 +[^:]*:5: Info: other valid variant\(s\): +[^:]*:5: Info: ubfm x0,x1,#8,#31 +[^:]*:6: Error: immediate value out of range 0 to 31 at operand 4 -- `bfm w0,w1,8,43' +[^:]*:7: Error: invalid shift amount at operand 2 -- `strb w7,\[x30,x0,lsl#1\]' +[^:]*:8: Error: invalid addressing mode at operand 2 -- `st2 {v4.2d,v5.2d},\[x3,#3\]' +[^:]*:9: Error: the top half of a 128-bit FP/SIMD register is expected at operand 1 -- `fmov v1.D\[0\],x0' +[^:]*:10: Error: invalid number of registers in the list; only 1 register is expected at operand 1 -- `ld1r \{v1.4s,v2.4s,v3.4s\},\[x3\],x4' +[^:]*:11: Error: missing immediate expression at operand 1 -- `svc' +[^:]*:12: Error: operand mismatch -- `add v0.4s,v1.4s,v2.2s' +[^:]*:12: Info: did you mean this\? +[^:]*:12: Info: add v0.4s,v1.4s,v2.4s +[^:]*:12: Info: other valid variant\(s\): +[^:]*:12: Info: add v0.8b,v1.8b,v2.8b +[^:]*:12: Info: add v0.16b,v1.16b,v2.16b +[^:]*:12: Info: add v0.4h,v1.4h,v2.4h +[^:]*:12: Info: add v0.8h,v1.8h,v2.8h +[^:]*:12: Info: add v0.2s,v1.2s,v2.2s +[^:]*:12: Info: add v0.2d,v1.2d,v2.2d +[^:]*:13: Error: operand mismatch -- `urecpe v0.1d,v7.1d' +[^:]*:13: Info: did you mean this\? +[^:]*:13: Info: urecpe v0.2s,v7.2s +[^:]*:13: Info: other valid variant\(s\): +[^:]*:13: Info: urecpe v0.4s,v7.4s +[^:]*:14: Error: operand mismatch -- `adds w0,wsp,x0,uxtx#1' +[^:]*:14: Info: did you mean this\? +[^:]*:14: Info: adds w0,wsp,w0, uxtx #1 +[^:]*:14: Info: other valid variant\(s\): +[^:]*:14: Info: adds x0,sp,w0, uxtx #1 +[^:]*:14: Info: adds x0,sp,x0, lsl #1 +[^:]*:15: Error: operand mismatch -- `fmov d0,s0' +[^:]*:15: Info: did you mean this\? +[^:]*:15: Info: fmov s0,s0 +[^:]*:15: Info: other valid variant\(s\): +[^:]*:15: Info: fmov d0,d0 +[^:]*:16: Error: operand mismatch -- `ldnp h3,h7,\[sp\],#16' +[^:]*:16: Info: did you mean this\? +[^:]*:16: Info: ldnp s3,s7,\[sp\],#16 +[^:]*:16: Info: other valid variant\(s\): +[^:]*:16: Info: ldnp d3,d7,\[sp\],#16 +[^:]*:16: Info: ldnp q3,q7,\[sp\],#16 diff --git a/gas/testsuite/gas/aarch64/verbose-error.s b/gas/testsuite/gas/aarch64/verbose-error.s new file mode 100644 index 0000000..5a2c2f1 --- /dev/null +++ b/gas/testsuite/gas/aarch64/verbose-error.s @@ -0,0 +1,16 @@ +// verbose-error.s Test file for -mverbose-error + +.text + strb w7, [x30, x0, lsl] + ubfm w0, x1, 8, 31 + bfm w0, w1, 8, 43 + strb w7, [x30, x0, lsl #1] + st2 {v4.2d,v5.2d},[x3,#3] + fmov v1.D[0],x0 + ld1r {v1.4s, v2.4s, v3.4s}, [x3], x4 + svc + add v0.4s, v1.4s, v2.2s + urecpe v0.1d,v7.1d + adds w0, wsp, x0, uxtx #1 + fmov d0, s0 + ldnp h3, h7, [sp], #16 |