Text file src/cmd/asm/internal/asm/testdata/arm64enc.s

     1  // Copyright 2017 The Go Authors. All rights reserved.
     2  // Use of this source code is governed by a BSD-style
     3  // license that can be found in the LICENSE file.
     4  
     5  // The cases are auto-generated by disassembler.
     6  // The uncommented cases means they can be handled by assembler
     7  // and they are consistent with disassembler decoding.
     8  // TODO means they cannot be handled by current assembler.
     9  
    10  #include "../../../../../runtime/textflag.h"
    11  
    12  TEXT asmtest(SB),DUPOK|NOSPLIT,$-8
    13  
    14  	AND $(1<<63), R1                           // AND $-9223372036854775808, R1     // 21004192
    15  	ADCW ZR, R8, R10                           // 0a011f1a
    16  	ADC R0, R2, R12                            // 4c00009a
    17  	ADCSW R9, R21, R6                          // a602093a
    18  	ADCS R23, R22, R22                         // d60217ba
    19  	ADDW R5.UXTH, R8, R9                       // 0921250b
    20  	ADD R8.SXTB<<3, R23, R14                   // ee8e288b
    21  	ADDW $3076, R17, R3                        // 23123011
    22  	ADDW $(3076<<12), R17, R3                  // ADDW $12599296, R17, R3           // 23127011
    23  	ADD $2280, R25, R11                        // 2ba32391
    24  	ADD $(2280<<12), R25, R11                  // ADD $9338880, R25, R11            // 2ba36391
    25  	ADDW R13->5, R11, R7                       // 67158d0b
    26  	ADD R25<<54, R17, R16                      // 30da198b
    27  	ADDSW R12.SXTX<<1, R29, R7                 // a7e72c2b
    28  	ADDS R24.UXTX<<4, R25, R21                 // 357338ab
    29  	ADDSW $(3525<<12), R3, R11                 // ADDSW $14438400, R3, R11          // 6b147731
    30  	ADDS $(3525<<12), R3, R11                  // ADDS $14438400, R3, R11           // 6b1477b1
    31  	ADDSW R7->22, R14, R13                     // cd59872b
    32  	ADDS R14>>7, ZR, R4                        // e41f4eab
    33  	AND $-9223372036854775808, R1, R1          // 21004192
    34  	ANDW $4026540031, R29, R2                  // a2430412
    35  	AND $34903429696192636, R12, R19           // 93910e92
    36  	ANDW R9@>7, R19, R26                       // 7a1ec90a
    37  	AND R9@>7, R19, R26                        // 7a1ec98a
    38  	TSTW $2863311530, R24                      // 1ff30172
    39  	TST R2, R0                                 // 1f0002ea
    40  	TST $7, R2                                 // 5f0840f2
    41  	ANDS R2, R0, ZR                            // 1f0002ea
    42  	ANDS $7, R2, ZR                            // 5f0840f2
    43  	ANDSW $2863311530, R24, ZR                 // 1ff30172
    44  	ANDSW $2863311530, R24, R23                // 17f30172
    45  	ANDS $-140737488289793, R2, R5             // 458051f2
    46  	ANDSW R26->24, R21, R15                    // af629a6a
    47  	ANDS R30@>44, R3, R26                      // 7ab0deea
    48  	ASRW R12, R27, R25                         // 792bcc1a
    49  	ASR R14, R27, R7                           // 672bce9a
    50  	ASR $11, R27, R25                          // 79ff4b93
    51  	ASRW $11, R27, R25                         // 797f0b13
    52  	BLT -1(PC)                                 // ebffff54
    53  	JMP -1(PC)                                 // ffffff17
    54  	BFIW $16, R20, $6, R0                      // 80161033
    55  	BFI $27, R21, $21, R25                     // b95265b3
    56  	BFXILW $3, R27, $23, R14                   // 6e670333
    57  	BFXIL $26, R8, $16, R20                    // 14a55ab3
    58  	BICW R7@>15, R5, R16                       // b03ce70a
    59  	BIC R12@>13, R12, R19                      // 9335ec8a
    60  	BICSW R25->20, R3, R20                     // 7450b96a
    61  	BICS R19->12, R1, R23                      // 3730b3ea
    62  	BICS R19, R1, R23                          // 370033ea
    63  	BICS R19>>0, R1, R23                       // 370073ea
    64  	CALL -1(PC)                                // ffffff97
    65  	CALL (R15)                                 // e0013fd6
    66  	JMP  (R29)                                 // a0031fd6
    67  	BRK $35943                                 // e08c31d4
    68  	CBNZW R2, -1(PC)                           // e2ffff35
    69  	CBNZ R7, -1(PC)                            // e7ffffb5
    70  	CBZW R15, -1(PC)                           // efffff34
    71  	CBZ R1, -1(PC)                             // e1ffffb4
    72  	CCMN MI, ZR, R1, $4                        // e44341ba
    73  	CCMNW AL, R26, $20, $11                    // 4beb543a
    74  	CCMN PL, R24, $6, $1                       // 015b46ba
    75  	CCMNW EQ, R20, R6, $6                      // 8602463a
    76  	CCMN LE, R30, R12, $6                      // c6d34cba
    77  	CCMPW VS, R29, $15, $7                     // a76b4f7a
    78  	CCMP LE, R7, $19, $3                       // e3d853fa
    79  	CCMPW HS, R19, R6, $0                      // 6022467a
    80  	CCMP LT, R30, R6, $7                       // c7b346fa
    81  	CCMN  MI, ZR, R1, $4                       // e44341ba
    82  	CSINCW HS, ZR, R27, R14                    // ee279b1a
    83  	CSINC VC, R2, R1, R1                       // 4174819a
    84  	CSINVW EQ, R2, R21, R17                    // 5100955a
    85  	CSINV LO, R2, R19, R23                     // 573093da
    86  	CINCW LO, R27, R14                         // 6e279b1a
    87  	CINCW HS, R27, ZR                          // 7f379b1a
    88  	CINVW EQ, R2, R17                          // 5110825a
    89  	CINV VS, R12, R7                           // 87718cda
    90  	CINV VS, R30, R30                          // de739eda
    91  	CLREX $4                                   // 5f3403d5
    92  	CLREX $0                                   // 5f3003d5
    93  	CLSW R15, R6                               // e615c05a
    94  	CLS R15, ZR                                // ff15c0da
    95  	CLZW R1, R14                               // 2e10c05a
    96  	CLZ R21, R9                                // a912c0da
    97  	CMNW R21.UXTB<<4, R15                      // ff11352b
    98  	CMN R0.UXTW<<4, R16                        // 1f5220ab
    99  	CMNW R13>>8, R9                            // 3f214d2b
   100  	CMN R6->17, R3                             // 7f4486ab
   101  	CMNW $(2<<12), R5                          // CMNW $8192, R5                // bf084031
   102  	CMN $(8<<12), R12                          // CMN $32768, R12               // 9f2140b1
   103  	CMN R6->0, R3                              // 7f0086ab
   104  	CMN R6, R3                                 // 7f0006ab
   105  	CMNW R30, R5                               // bf001e2b
   106  	CMNW $2, R5                                // bf080031
   107  	CMN ZR, R3                                 // 7f001fab
   108  	CMN R0, R3                                 // 7f0000ab
   109  	CMPW R6.UXTB, R23                          // ff02266b
   110  	CMP R25.SXTH<<2, R26                       // 5fab39eb
   111  	CMP $3817, R29                             // bfa73bf1
   112  	CMP R7>>23, R3                             // 7f5c47eb
   113  	CNEGW PL, R9, R14                          // 2e45895a
   114  	CSNEGW HS, R5, R9, R14                     // ae24895a
   115  	CSNEG PL, R14, R21, R3                     // c35595da
   116  	CNEG  LO, R7, R15                          // ef2487da
   117  	CRC32B R17, R8, R16                        // 1041d11a
   118  	CRC32H R3, R21, R27                        // bb46c31a
   119  	CRC32W R22, R30, R9                        // c94bd61a
   120  	CRC32X R20, R4, R15                        // 8f4cd49a
   121  	CRC32CB R19, R27, R22                      // 7653d31a
   122  	CRC32CH R21, R0, R20                       // 1454d51a
   123  	CRC32CW R9, R3, R21                        // 7558c91a
   124  	CRC32CX R11, R0, R24                       // 185ccb9a
   125  	CSELW LO, R4, R20, R12                     // 8c30941a
   126  	CSEL GE, R0, R12, R14                      // 0ea08c9a
   127  	CSETW GE, R3                               // e3b79f1a
   128  	CSET LT, R30                               // fea79f9a
   129  	CSETMW VC, R5                              // e5639f5a
   130  	CSETM VS, R4                               // e4739fda
   131  	CSINCW LE, R5, R24, R26                    // bad4981a
   132  	CSINC VS, R26, R16, R17                    // 5167909a
   133  	CSINVW AL, R23, R21, R5                    // e5e2955a
   134  	CSINV LO, R2, R11, R14                     // 4e308bda
   135  	CSNEGW HS, R16, R29, R10                   // 0a269d5a
   136  	CSNEG NE, R21, R19, R11                    // ab1693da
   137  	DC IVAC, R1                                // 217608d5
   138  	DCPS1 $11378                               // 418ea5d4
   139  	DCPS2 $10699                               // 6239a5d4
   140  	DCPS3 $24415                               // e3ebabd4
   141  	DMB $1                                     // bf3103d5
   142  	DMB $0                                     // bf3003d5
   143  	DRPS                                       // e003bfd6
   144  	DSB  $1                                    // 9f3103d5
   145  	EONW R21<<29, R6, R9                       // c974354a
   146  	EON R14>>46, R4, R9                        // 89b86eca
   147  	EOR $-2287828610704211969, R27, R22        // 76e343d2
   148  	EORW R12->27, R10, R19                     // 536d8c4a
   149  	EOR R2<<59, R30, R17                       // d1ef02ca
   150  	ERET                                       // e0039fd6
   151  	EXTRW $7, R8, R10, R25                     // 591d8813
   152  	EXTR $35, R22, R12, R8                     // 888dd693
   153  	SEVL                                       // bf2003d5
   154  	HINT $6                                    // df2003d5
   155  	HINT $0                                    // 1f2003d5
   156  	HLT $65509                                 // a0fc5fd4
   157  	HVC $61428                                 // 82fe1dd4
   158  	ISB $1                                     // df3103d5
   159  	ISB $15                                    // df3f03d5
   160  	LDARW (R12), R29                           // 9dfddf88
   161  	LDARW (R30), R22                           // d6ffdf88
   162  	LDARW (RSP), R22                           // f6ffdf88
   163  	LDAR (R27), R22                            // 76ffdfc8
   164  	LDARB (R25), R2                            // 22ffdf08
   165  	LDARH (R5), R7                             // a7fcdf48
   166  	LDAXPW (R10), (R20, R16)                   // 54c17f88
   167  	LDAXP (R25), (R30, R11)                    // 3eaf7fc8
   168  	LDAXRW (R15), R2                           // e2fd5f88
   169  	LDAXR (R15), R21                           // f5fd5fc8
   170  	LDAXRB (R19), R16                          // 70fe5f08
   171  	LDAXRH (R5), R8                            // a8fc5f48
   172  	//TODO LDNP 0xcc(RSP), ZR, R12             // ecff5928
   173  	//TODO LDNP 0x40(R28), R9, R5              // 852744a8
   174  	//TODO LDPSW -0xd0(R2), R0, R12            // 4c00e668
   175  	//TODO LDPSW 0x5c(R4), R8, R5              // 85a0cb69
   176  	//TODO LDPSW 0x6c(R12), R2, R27            // 9b894d69
   177  	MOVWU.P -84(R15), R9                       // e9c55ab8
   178  	MOVD.P -46(R10), R8                        // 48255df8
   179  	MOVD.P (R10), R8                           // 480540f8
   180  	MOVWU.W -141(R3), R16                      // 703c57b8
   181  	MOVD.W -134(R0), R29                       // 1dac57f8
   182  	MOVWU 4156(R1), R25                        // 393c50b9
   183  	MOVD 14616(R10), R9                        // 498d5cf9
   184  	MOVWU (R4)(R12.SXTW<<2), R7                // 87d86cb8
   185  	MOVD (R7)(R11.UXTW<<3), R25                // f9586bf8
   186  	MOVBU.P 42(R2), R12                        // 4ca44238
   187  	MOVBU.W -27(R2), R14                       // 4e5c5e38
   188  	MOVBU 2916(R24), R3                        // 03936d39
   189  	MOVBU (R19)(R14<<0), R23                   // 776a6e38
   190  	MOVBU (R2)(R8.SXTX), R19                   // 53e86838
   191  	MOVBU (R27)(R23), R14                      // 6e6b7738
   192  	MOVHU.P 107(R14), R13                      // cdb54678
   193  	MOVHU.W 192(R3), R2                        // 620c4c78
   194  	MOVHU 6844(R4), R19                        // 93787579
   195  	MOVHU (R5)(R25.SXTW), R15                  // afc87978
   196  	//TODO MOVBW.P 77(R19), R11                // 6bd6c438
   197  	MOVB.P 36(RSP), R27                        // fb478238
   198  	//TODO MOVBW.W -57(R19), R13               // 6d7edc38
   199  	MOVB.W -178(R16), R24                      // 18ee9438
   200  	//TODO MOVBW 430(R8), R22                  // 16b9c639
   201  	MOVB 997(R9), R23                          // 37958f39
   202  	//TODO MOVBW (R2<<1)(R21), R15             // af7ae238
   203  	//TODO MOVBW (R26)(R0), R21                // 1568fa38
   204  	MOVB (R5)(R15), R16                        // b068af38
   205  	MOVB (R19)(R26.SXTW), R19                  // 73caba38
   206  	MOVB (R29)(R30), R14                       // ae6bbe38
   207  	//TODO MOVHW.P 218(R22), R25               // d9a6cd78
   208  	MOVH.P 179(R23), R5                        // e5368b78
   209  	//TODO MOVHW.W 136(R2), R27                // 5b8cc878
   210  	MOVH.W -63(R25), R22                       // 361f9c78
   211  	//TODO MOVHW 5708(R25), R21                // 359bec79
   212  	MOVH 54(R2), R13                           // 4d6c8079
   213  	//TODO MOVHW (R22)(R24.SXTX), R4           // c4eaf878
   214  	MOVH (R26)(R30.UXTW<<1), ZR                // 5f5bbe78
   215  	MOVW.P -58(R16), R2                        // 02669cb8
   216  	MOVW.W -216(R19), R8                       // 688e92b8
   217  	MOVW 4764(R23), R10                        // ea9e92b9
   218  	MOVW (R8)(R3.UXTW), R17                    // 1149a3b8
   219  	//TODO LDTR -0x1e(R3), R4                  // 64285eb8
   220  	//TODO LDTR -0xe5(R3), R10                 // 6ab851f8
   221  	//TODO LDTRB 0xf0(R13), R10                // aa094f38
   222  	//TODO LDTRH 0xe8(R13), R23                // b7894e78
   223  	//TODO LDTRSB -0x24(R20), R5               // 85cadd38
   224  	//TODO LDTRSB -0x75(R9), R13               // 2db99838
   225  	//TODO LDTRSH 0xef(R3), LR                 // 7ef8ce78
   226  	//TODO LDTRSH 0x96(R19), R24               // 786a8978
   227  	//TODO LDTRSW 0x1e(LR), R5                 // c5eb81b8
   228  	//TODO LDUR 0xbf(R13), R1                  // a1f14bb8
   229  	//TODO LDUR -0x3c(R22), R3                 // c3425cf8
   230  	//TODO LDURB -0xff(R17), R14               // 2e125038
   231  	//TODO LDURH 0x80(R1), R6                  // 26004878
   232  	//TODO LDURSB 0xde(LR), R3                 // c3e3cd38
   233  	//TODO LDURSB 0x96(R9), R7                 // 27618938
   234  	//TODO LDURSH -0x49(R11), R28              // 7c71db78
   235  	//TODO LDURSH -0x1f(R0), R29               // 1d109e78
   236  	//TODO LDURSW 0x48(R6), R20                // d48084b8
   237  	LDXPW (R24), (R23, R11)                    // 172f7f88
   238  	LDXP (R0), (R16, R13)                      // 10347fc8
   239  	LDXRW (RSP), R30                           // fe7f5f88
   240  	LDXR (R27), R12                            // 6c7f5fc8
   241  	LDXRB (R0), R4                             // 047c5f08
   242  	LDXRH (R12), R26                           // 9a7d5f48
   243  	LSLW R11, R10, R15                         // 4f21cb1a
   244  	LSL R27, R24, R21                          // 1523db9a
   245  	LSLW $5, R7, R22                           // f6681b53
   246  	LSL $57, R17, R2                           // 221a47d3
   247  	LSRW R9, R3, R12                           // 6c24c91a
   248  	LSR R10, R5, R2                            // a224ca9a
   249  	LSRW $1, R3, R16                           // 707c0153
   250  	LSR $12, R1, R20                           // 34fc4cd3
   251  	MADDW R13, R23, R3, R10                    // 6a5c0d1b
   252  	MADD R5, R23, R10, R4                      // 445d059b
   253  	MNEGW R0, R9, R21                          // 35fd001b
   254  	MNEG R14, R27, R23                         // 77ff0e9b
   255  	MOVD  R2, R7                               // e70302aa
   256  	MOVW $-24, R20                             // f4028012
   257  	MOVD $-51096, ZR                           // fff29892
   258  	MOVW $2507014144, R20                      // d4adb252
   259  	MOVD $1313925191285342208, R7              // 8747e2d2
   260  	ORRW $16252928, ZR, R21                    // f5130d32
   261  	MOVD $-4260607558625, R11                  // eb6b16b2
   262  	MOVD R30, R7                               // e7031eaa
   263  	MOVKW $(3905<<0), R21                      // MOVKW $3905, R21              // 35e88172
   264  	MOVKW $(3905<<16), R21                     // MOVKW $255918080, R21         // 35e8a172
   265  	MOVK $(3905<<32), R21                      // MOVK $16771847290880, R21     // 35e8c1f2
   266  	MOVD $0, R5                                // e5031faa
   267  	MSR $1, SPSel                              // bf4100d5
   268  	MSR $9, DAIFSet                            // df4903d5
   269  	MSR $6, DAIFClr                            // ff4603d5
   270  	MRS ELR_EL1, R8                            // 284038d5
   271  	MSR R16, ELR_EL1                           // 304018d5
   272  	MRS DCZID_EL0, R3                          // e3003bd5
   273  	MSUBW R1, R1, R12, R5                      // 8585011b
   274  	MSUB R19, R16, R26, R2                     // 42c3139b
   275  	MULW R26, R5, R22                          // b67c1a1b
   276  	MUL R4, R3, R0                             // 607c049b
   277  	MVNW R3@>13, R8                            // e837e32a
   278  	MVN R13>>31, R9                            // e97f6daa
   279  	NEGSW R23<<1, R30                          // fe07176b
   280  	NEGS R20>>35, R22                          // f68f54eb
   281  	NGCW R13, R8                               // e8030d5a
   282  	NGC R2, R7                                 // e70302da
   283  	NGCSW R10, R5                              // e5030a7a
   284  	NGCS R24, R16                              // f00318fa
   285  	NOOP                                        // 1f2003d5
   286  	ORNW R4@>11, R16, R3                       // 032ee42a
   287  	ORN R22@>19, R3, R3                        // 634cf6aa
   288  	ORRW $4294443071, R15, R24                 // f8490d32
   289  	ORR $-3458764513820540929, R12, R22        // 96f542b2
   290  	ORRW R13<<4, R8, R26                       // 1a110d2a
   291  	ORR R3<<22, R5, R6                         // a65803aa
   292  	PRFM (R8), $25                             // 190180f9
   293  	PRFM (R2), PLDL1KEEP                       // 400080f9
   294  	//TODO PRFM (R27)(R30.SXTW<<3), PLDL2STRM  // 63dbbff8
   295  	//TODO PRFUM 22(R16), PSTL1KEEP            // 106281f8
   296  	RBITW R9, R22                              // 3601c05a
   297  	RBIT R11, R4                               // 6401c0da
   298  	RET                                        // c0035fd6
   299  	REVW R8, R10                               // 0a09c05a
   300  	REV R1, R2                                 // 220cc0da
   301  	REV16W R21, R19                            // b306c05a
   302  	REV16 R25, R4                              // 2407c0da
   303  	REV32 R27, R21                             // 750bc0da
   304  	EXTRW $27, R4, R25, R19                    // 336f8413
   305  	EXTR $17, R10, R29, R15                    // af47ca93
   306  	ROR $14, R14, R15                          // cf39ce93
   307  	RORW $28, R14, R15                         // cf718e13
   308  	RORW R3, R12, R3                           // 832dc31a
   309  	ROR R0, R23, R2                            // e22ec09a
   310  	SBCW R4, R8, R24                           // 1801045a
   311  	SBC R25, R10, R26                          // 5a0119da
   312  	SBCSW R27, R19, R19                        // 73021b7a
   313  	SBCS R5, R9, R5                            // 250105fa
   314  	SBFIZW $9, R10, $18, R22                   // 56451713
   315  	SBFIZ $6, R11, $15, R20                    // 74397a93
   316  	SBFXW $8, R15, $10, R20                    // f4450813
   317  	SBFX $2, R27, $54, R7                      // 67df4293
   318  	SDIVW R22, R14, R9                         // c90dd61a
   319  	SDIV R13, R21, R9                          // a90ecd9a
   320  	SEV                                        // 9f2003d5
   321  	SEVL                                       // bf2003d5
   322  	SMADDL R3, R7, R11, R9                     // 691d239b
   323  	SMSUBL R5, R19, R11, R29                   // 7dcd259b
   324  	SMNEGL R26, R3, R15                        // 6ffc3a9b
   325  	SMULH R17, R21, R21                        // b57e519b
   326  	SMULL R0, R5, R0                           // a07c209b
   327  	SMC $37977                                 // 238b12d4
   328  	STLRW R16, (R22)                           // d0fe9f88
   329  	STLR R3, (R24)                             // 03ff9fc8
   330  	STLRB R11, (R22)                           // cbfe9f08
   331  	STLRH R16, (R23)                           // f0fe9f48
   332  	STLXR R7, (R27), R8                        // 67ff08c8
   333  	STLXRW R13, (R15), R14                     // edfd0e88
   334  	STLXRB R24, (R23), R8                      // f8fe0808
   335  	STLXRH R19, (R27), R11                     // 73ff0b48
   336  	STLXP (R6, R3), (R10), R2                  // 468d22c8
   337  	STLXPW (R6, R11), (R22), R21               // c6ae3588
   338  	//TODO STNPW 44(R1), R3, R10               // 2a8c0528
   339  	//TODO STNP 0x108(R3), ZR, R7              // 67fc10a8
   340  	LDP.P -384(R3), (R22, R26)                 // 7668e8a8
   341  	LDP.W 280(R8), (R19, R11)                  // 13add1a9
   342  	STP.P (R22, R27), 352(R0)                  // 166c96a8
   343  	STP.W (R17, R11), 96(R8)                   // 112d86a9
   344  	MOVW.P R20, -28(R1)                        // 34441eb8
   345  	MOVD.P R17, 191(R16)                       // 11f60bf8
   346  	MOVW.W R1, -171(R14)                       // c15d15b8
   347  	MOVD.W R14, -220(R13)                      // ae4d12f8
   348  	MOVW R3, 14828(R24)                        // 03ef39b9
   349  	MOVD R0, 20736(R17)                        // 208228f9
   350  	MOVB.P ZR, -117(R7)                        // ffb41838
   351  	MOVB.W R27, -96(R13)                       // bb0d1a38
   352  	MOVB R17, 2200(R13)                        // b1612239
   353  	MOVH.P R7, -72(R4)                         // 87841b78
   354  	MOVH.W R12, -125(R14)                      // cc3d1878
   355  	MOVH R19, 3686(R26)                        // 53cf1c79
   356  	MOVW R21, 34(R0)                           // 152002b8
   357  	MOVD R25, -137(R17)                        // 397217f8
   358  	MOVW R4, (R12)(R22.UXTW<<2)                // 845936b8
   359  	MOVD R27, (R5)(R15.UXTW<<3)                // bb582ff8
   360  	MOVB R2, (R10)(R16)                        // 42693038
   361  	MOVB R2, (R29)(R26)                        // a26b3a38
   362  	MOVH R11, -80(R23)                         // eb021b78
   363  	MOVH R11, (R27)(R14.SXTW<<1)               // 6bdb2e78
   364  	MOVB R19, (R0)(R4)                         // 13682438
   365  	MOVB R1, (R6)(R4)                          // c1682438
   366  	MOVH R3, (R11)(R13<<1)                     // 63792d78
   367  	//TODO STTR 55(R4), R29                    // 9d7803b8
   368  	//TODO STTR 124(R5), R25                   // b9c807f8
   369  	//TODO STTRB -28(R23), R16                 // f04a1e38
   370  	//TODO STTRH 9(R10), R19                   // 53990078
   371  	STXP (R1, R2), (R3), R10                   // 61082ac8
   372  	STXP (R1, R2), (RSP), R10                  // e10b2ac8
   373  	STXPW (R1, R2), (R3), R10                  // 61082a88
   374  	STXPW (R1, R2), (RSP), R10                 // e10b2a88
   375  	STXRW R2, (R19), R20                       // 627e1488
   376  	STXR R15, (R21), R13                       // af7e0dc8
   377  	STXRB R7, (R9), R24                        // 277d1808
   378  	STXRH R12, (R3), R8                        // 6c7c0848
   379  	SUBW R20.UXTW<<2, R23, R19                 // f34a344b
   380  	SUB R5.SXTW<<2, R1, R26                    // 3ac825cb
   381  	SUB $(1923<<12), R4, R27                   // SUB $7876608, R4, R27         // 9b0c5ed1
   382  	SUBW $(1923<<12), R4, R27                  // SUBW $7876608, R4, R27        // 9b0c5e51
   383  	SUBW R12<<29, R7, R8                       // e8740c4b
   384  	SUB R12<<61, R7, R8                        // e8f40ccb
   385  	SUBSW R2.SXTH<<3, R13, R6                  // a6ad226b
   386  	SUBS R21.UXTX<<2, R27, R4                  // 646b35eb
   387  	SUBSW $(44<<12), R6, R9                    // SUBSW $180224, R6, R9         // c9b04071
   388  	SUBS $(1804<<12), R13, R9                  // SUBS $7389184, R13, R9        // a9315cf1
   389  	SUBSW R22->28, R6, R7                      // c770966b
   390  	SUBSW R22>>28, R6, R7                      // c770566b
   391  	SUBS R26<<15, R6, R16                      // d03c1aeb
   392  	SVC $0                                     // 010000d4
   393  	SVC $7165                                  // a17f03d4
   394  	SXTBW R8, R25                              // 191d0013
   395  	SXTB R13, R9                               // a91d4093
   396  	SXTHW R8, R8                               // 083d0013
   397  	SXTH R17, R25                              // 393e4093
   398  	SXTW R0, R27                               // 1b7c4093
   399  	SYSL $285440, R12                          // 0c5b2cd5
   400  	TLBI VAE1IS, R1                            // 218308d5
   401  	TSTW $0x80000007, R9                       // TSTW $2147483655, R9          // 3f0d0172
   402  	TST $0xfffffff0, LR                        // TST $4294967280, R30          // df6f7cf2
   403  	TSTW R10@>21, R2                           // 5f54ca6a
   404  	TST R17<<11, R24                           // 1f2f11ea
   405  	ANDSW $0x80000007, R9, ZR                  // ANDSW   $2147483655, R9, ZR   // 3f0d0172
   406  	ANDS $0xfffffff0, LR, ZR                   // ANDS    $4294967280, R30, ZR  // df6f7cf2
   407  	ANDSW R10@>21, R2, ZR                      // 5f54ca6a
   408  	ANDS R17<<11, R24, ZR                      // 1f2f11ea
   409  	UBFIZW $3, R19, $14, R14                   // 6e361d53
   410  	UBFIZ $3, R22, $14, R4                     // c4367dd3
   411  	UBFXW $3, R7, $20, R15                     // ef580353
   412  	UBFX $33, R17, $25, R5                     // 25e661d3
   413  	UDIVW R8, R21, R15                         // af0ac81a
   414  	UDIV R2, R19, R21                          // 750ac29a
   415  	UMADDL R0, R20, R17, R17                   // 3152a09b
   416  	UMSUBL R22, R4, R3, R7                     // 6790b69b
   417  	UMNEGL R3, R19, R1                         // 61fea39b
   418  	UMULH R24, R20, R24                        // 987ed89b
   419  	UMULL R19, R22, R19                        // d37eb39b
   420  	UXTBW R2, R6                               // 461c0053
   421  	UXTHW R7, R20                              // f43c0053
   422  	VCNT V0.B8, V0.B8                          // 0058200e
   423  	VCNT V0.B16, V0.B16                        // 0058204e
   424  	WFE                                        // 5f2003d5
   425  	WFI                                        // 7f2003d5
   426  	YIELD                                      // 3f2003d5
   427  	//TODO FABD F0, F5, F11                    // abd4a07e
   428  	//TODO VFABD V30.S2, V8.S2, V24.S2         // 18d5be2e
   429  	//TODO VFABS V5.S4, V24.S4                 // b8f8a04e
   430  	FABSS F2, F28                              // 5cc0201e
   431  	FABSD F0, F14                              // 0ec0601e
   432  	//TODO FACGE F25, F16, F0                  // 00ee797e
   433  	//TODO VFACGE V11.S2, V15.S2, V9.S2        // e9ed2b2e
   434  	//TODO FACGT F20, F16, F27                 // 1beef47e
   435  	//TODO VFACGT V15.S4, V25.S4, V22.S4       // 36efaf6e
   436  	//TODO VFADD V21.D2, V10.D2, V21.D2        // 55d5754e
   437  	FADDS F12, F2, F10                         // 4a282c1e
   438  	FADDD F24, F14, F12                        // cc29781e
   439  	//TODO VFADDP V4.D2, F13                   // 8dd8707e
   440  	//TODO VFADDP V30.S4, V3.S4, V11.S4        // 6bd43e6e
   441  	FCCMPS LE, F17, F12, $14                   // 8ed5311e
   442  	FCCMPD HI, F11, F15, $15                   // ef856b1e
   443  	FCCMPES HS, F28, F13, $13                  // bd253c1e
   444  	FCCMPED LT, F20, F4, $9                    // 99b4741e
   445  	//TODO FCMEQ F7, F11, F26                  // 7ae5675e
   446  	//TODO VFCMEQ V29.S4, V26.S4, V30.S4       // 5ee73d4e
   447  	//TODO FCMEQ $0, F17, F22                  // 36daa05e
   448  	//TODO VFCMEQ $0, V17.D2, V22.D2           // 36dae04e
   449  	//TODO FCMGE F29, F31, F13                 // ede77d7e
   450  	//TODO VFCMGE V8.S2, V31.S2, V2.S2         // e2e7282e
   451  	//TODO FCMGE $0, F18, F27                  // e2e7282e
   452  	//TODO VFCMGE $0, V14.S2, V8.S2            // c8c9a02e
   453  	//TODO FCMGT F20, F2, F8                   // 48e4b47e
   454  	//TODO VFCMGT V26.D2, V15.D2, V23.D2       // f7e5fa6e
   455  	//TODO FCMGT $0, F14, F3                   // c3c9e05e
   456  	//TODO VFCMGT $0, V6.S2, V28.S2            // dcc8a00e
   457  	//TODO FCMLE $0, F26, F25                  // 59dba07e
   458  	//TODO VFCMLE $0, V28.S2, V20.S2           // 94dba02e
   459  	//TODO FCMLT $0, F17, F3                   // 23eae05e
   460  	//TODO VFCMLT $0, V8.S4, V7.S4             // 07e9a04e
   461  	FCMPS F3, F17                              // 2022231e
   462  	FCMPS $(0.0), F8                           // 0821201e
   463  	FCMPD F11, F27                             // 60236b1e
   464  	FCMPD $(0.0), F25                          // 2823601e
   465  	FCMPES F16, F30                            // d023301e
   466  	FCMPES $(0.0), F29                         // b823201e
   467  	FCMPED F13, F10                            // 50216d1e
   468  	FCMPED $(0.0), F25                         // 3823601e
   469  	FCSELS EQ, F26, F27, F25                   // 590f3b1e
   470  	FCSELD PL, F8, F22, F7                     // 075d761e
   471  	//TODO FCVTAS F4, F28                      // 9cc8215e
   472  	//TODO VFCVTAS V21.D2, V27.D2              // bbca614e
   473  	//TODO FCVTAS F27, R7                      // 6703241e
   474  	//TODO FCVTAS F19, R26                     // 7a02249e
   475  	//TODO FCVTAS F4, R0                       // 8000641e
   476  	//TODO FCVTAS F3, R19                      // 7300649e
   477  	//TODO FCVTAU F18, F28                     // 5cca217e
   478  	//TODO VFCVTAU V30.S4, V27.S4              // dbcb216e
   479  	//TODO FCVTAU F0, R2                       // 0200251e
   480  	//TODO FCVTAU F0, R24                      // 1800259e
   481  	//TODO FCVTAU F31, R10                     // ea03651e
   482  	//TODO FCVTAU F3, R8                       // 6800659e
   483  	//TODO VFCVTL V11.S2, V21.D2               // 7579610e
   484  	//TODO VFCVTL2 V15.H8, V25.S4              // f979214e
   485  	//TODO FCVTMS F21, F28                     // bcba215e
   486  	//TODO VFCVTMS V5.D2, V2.D2                // a2b8614e
   487  	//TODO FCVTMS F31, R19                     // f303301e
   488  	//TODO FCVTMS F23, R16                     // f002309e
   489  	//TODO FCVTMS F16, R22                     // 1602701e
   490  	//TODO FCVTMS F14, R19                     // d301709e
   491  	//TODO FCVTMU F14, F8                      // c8b9217e
   492  	//TODO VFCVTMU V7.D2, V1.D2                // e1b8616e
   493  	//TODO FCVTMU F2, R0                       // 4000311e
   494  	//TODO FCVTMU F23, R19                     // f302319e
   495  	//TODO FCVTMU F16, R17                     // 1102711e
   496  	//TODO FCVTMU F12, R19                     // 9301719e
   497  	//TODO VFCVTN V23.D2, V26.S2               // fa6a610e
   498  	//TODO VFCVTN2 V2.D2, V31.S4               // 5f68614e
   499  	//TODO FCVTNS F3, F27                      // 7ba8215e
   500  	//TODO VFCVTNS V11.S2, V12.S2              // 6ca9210e
   501  	//TODO FCVTNS F14, R9                      // c901201e
   502  	//TODO FCVTNS F0, R27                      // 1b00209e
   503  	//TODO FCVTNS F23, R0                      // e002601e
   504  	//TODO FCVTNS F6, R30                      // de00609e
   505  	//TODO FCVTNU F12, F9                      // 89a9217e
   506  	//TODO VFCVTNU V3.D2, V20.D2               // 74a8616e
   507  	//TODO FCVTNU F20, R11                     // 8b02211e
   508  	//TODO FCVTNU F23, R19                     // f302219e
   509  	//TODO FCVTNU F4, R5                       // 8500611e
   510  	//TODO FCVTNU F11, R19                     // 7301619e
   511  	//TODO FCVTPS F20, F26                     // 9aaae15e
   512  	//TODO VFCVTPS V29.S4, V13.S4              // adaba14e
   513  	//TODO FCVTPS F5, R29                      // bd00281e
   514  	//TODO FCVTPS F3, R3                       // 6300289e
   515  	//TODO FCVTPS F4, R25                      // 9900681e
   516  	//TODO FCVTPS F29, R15                     // af03689e
   517  	//TODO FCVTPU F13, F3                      // a3a9e17e
   518  	//TODO VFCVTPU V6.S4, V24.S4               // d8a8a16e
   519  	//TODO FCVTPU F17, R17                     // 3102291e
   520  	//TODO FCVTPU F7, R23                      // f700299e
   521  	//TODO FCVTPU F10, R3                      // 4301691e
   522  	//TODO FCVTPU F24, R27                     // 1b03699e
   523  	//TODO FCVTXN F14, F0                      // c069617e
   524  	//TODO VFCVTXN V1.D2, V17.S2               // 3168612e
   525  	//TODO VFCVTXN2 V0.D2, V21.S4              // 1568616e
   526  	//TODO FCVTZS $26, F29, F19                // b3ff665f
   527  	//TODO VFCVTZS $45, V14.D2, V18.D2         // d2fd534f
   528  	//TODO FCVTZS F8, F7                       // 07b9a15e
   529  	//TODO VFCVTZS V2.S2, V4.S2                // 44b8a10e
   530  	//TODO FCVTZS $26, F7, R11                 // eb98181e
   531  	//TODO FCVTZS $7, F4, ZR                   // 9fe4189e
   532  	//TODO FCVTZS $28, F13, R14                // ae91581e
   533  	//TODO FCVTZS $8, F27, R3                  // 63e3589e
   534  	FCVTZSSW F7, R15                           // ef00381e
   535  	FCVTZSS F16, ZR                            // 1f02389e
   536  	FCVTZSDW F19, R3                           // 6302781e
   537  	FCVTZSD F7, R7                             // e700789e
   538  	//TODO FCVTZU $17, F18, F28                // 5cfe2f7f
   539  	//TODO VFCVTZU $19, V20.D2, V11.D2         // 8bfe6d6f
   540  	//TODO FCVTZU F22, F8                      // c8bae17e
   541  	//TODO VFCVTZU V0.S4, V1.S4                // 01b8a16e
   542  	//TODO FCVTZU $14, F24, R20                // 14cb191e
   543  	//TODO FCVTZU $6, F25, R17                 // 31eb199e
   544  	//TODO FCVTZU $5, F17, R10                 // 2aee591e
   545  	//TODO FCVTZU $6, F7, R19                  // f3e8599e
   546  	FCVTZUSW F2, R9                            // 4900391e
   547  	FCVTZUS F12, R29                           // 9d01399e
   548  	FCVTZUDW F27, R22                          // 7603791e
   549  	FCVTZUD F25, R22                           // 3603799e
   550  	//TODO VFDIV V6.D2, V1.D2, V27.D2          // 3bfc666e
   551  	FDIVS F16, F10, F20                        // 5419301e
   552  	FDIVD F11, F25, F30                        // 3e1b6b1e
   553  	FMADDS F15, F2, F8, F1                     // 01090f1f
   554  	FMADDD F15, F21, F25, F9                   // 29574f1f
   555  	//TODO VFMAX V23.D2, V27.D2, V14.D2        // 6ef7774e
   556  	FMAXS F5, F28, F27                         // 9b4b251e
   557  	FMAXD F12, F31, F31                        // ff4b6c1e
   558  	//TODO VFMAXNM V3.D2, V12.D2, V27.D2       // 9bc5634e
   559  	FMAXNMS F11, F24, F12                      // 0c6b2b1e
   560  	FMAXNMD F20, F6, F16                       // d068741e
   561  	//TODO VFMAXNMP V3.S2, F2                  // 62c8307e
   562  	//TODO VFMAXNMP V25.S2, V4.S2, V2.S2       // 82c4392e
   563  	//TODO VFMAXNMV V14.S4, F15                // cfc9306e
   564  	//TODO VFMAXP V3.S2, F27                   // 7bf8307e
   565  	//TODO VFMAXP V29.S2, V30.S2, V9.S2        // c9f73d2e
   566  	//TODO VFMAXV V13.S4, F14                  // aef9306e
   567  	//TODO VFMIN V19.D2, V30.D2, V7.D2         // c7f7f34e
   568  	FMINS F26, F18, F30                        // 5e5a3a1e
   569  	FMIND F29, F4, F21                         // 95587d1e
   570  	//TODO VFMINNM V21.S4, V5.S4, V1.S4        // a1c4b54e
   571  	FMINNMS F23, F20, F1                       // 817a371e
   572  	FMINNMD F8, F3, F24                        // 7878681e
   573  	//TODO VFMINNMP V16.D2, F12                // 0ccaf07e
   574  	//TODO VFMINNMP V10.S4, V25.S4, V27.S4     // 3bc7aa6e
   575  	//TODO VFMINNMV V8.S4, F3                  // 03c9b06e
   576  	//TODO VFMINP V10.S2, F20                  // 54f9b07e
   577  	//TODO VFMINP V1.D2, V10.D2, V3.D2         // 43f5e16e
   578  	//TODO VFMINV V11.S4, F9                   // 69f9b06e
   579  	//TODO VFMLA V6.S[0], F2, F14              // 4e10865f
   580  	//TODO VFMLA V28.S[2], V2.S2, V30.S2       // 5e189c0f
   581  	VFMLA V29.S2, V20.S2, V14.S2               // 8ece3d0e
   582  	//TODO VFMLS V24.D[1], F3, F17             // 7158d85f
   583  	//TODO VFMLS V10.S[0], V11.S2, V10.S2      // 6a518a0f
   584  	VFMLS V29.S2, V27.S2, V17.S2               // 71cfbd0e
   585  	//TODO FMOVS $(-1.625), F13                // 0d503f1e
   586  	//TODO FMOVD $12.5, F30                    // 1e30651e
   587  	//TODO VFMOV R7, V25.D[1]                  // f900af9e
   588  	FMOVD F2, R15                              // 4f00669e
   589  	FMOVD R3, F11                              // 6b00679e
   590  	FMOVS F20, R29                             // 9d02261e
   591  	FMOVS R8, F15                              // 0f01271e
   592  	FMOVD F2, F9                               // 4940601e
   593  	FMOVS F4, F27                              // 9b40201e
   594  	//TODO VFMOV $3.125, V8.D2                 // 28f5006f
   595  	FMSUBS F13, F21, F13, F19                  // b3d50d1f
   596  	FMSUBD F11, F7, F15, F31                   // ff9d4b1f
   597  	//TODO VFMUL V9.S[2], F21, F19             // b39a895f
   598  	//TODO VFMUL V26.S[2], V26.S2, V2.S2       // 429b9a0f
   599  	//TODO VFMUL V21.D2, V17.D2, V25.D2        // 39de756e
   600  	FMULS F0, F6, F24                          // d808201e
   601  	FMULD F5, F29, F9                          // a90b651e
   602  	//TODO VFMULX V26.S[2], F20, F8            // 889a9a7f
   603  	//TODO VFMULX V12.D[1], V21.D2, V31.D2     // bf9acc6f
   604  	//TODO FMULX F16, F1, F31                  // 3fdc705e
   605  	//TODO VFMULX V29.S2, V13.S2, V31.S2       // bfdd3d0e
   606  	//TODO VFNEG V18.S2, V12.S2                // 4cfaa02e
   607  	FNEGS F16, F5                              // 0542211e
   608  	FNEGD F31, F31                             // ff43611e
   609  	FNMADDS F17, F22, F6, F20                  // d458311f
   610  	FNMADDD F15, F0, F26, F20                  // 54036f1f
   611  	FNMSUBS F14, F16, F27, F14                 // 6ec32e1f
   612  	FNMSUBD F29, F25, F8, F10                  // 0ae57d1f
   613  	FNMULS F24, F22, F18                       // d28a381e
   614  	FNMULD F14, F30, F7                        // c78b6e1e
   615  	//TODO FRECPE F9, F2                       // 22d9e15e
   616  	//TODO VFRECPE V0.S2, V28.S2               // 1cd8a10e
   617  	//TODO FRECPS F28, F10, F9                 // 49fd3c5e
   618  	//TODO VFRECPS V27.D2, V12.D2, V24.D2      // 98fd7b4e
   619  	//TODO FRECPX F28, F3                      // 83fbe15e
   620  	//TODO VFRINTA V14.S2, V25.S2              // d989212e
   621  	FRINTAS F0, F21                            // 1540261e
   622  	FRINTAD F8, F22                            // 1641661e
   623  	//TODO VFRINTI V21.D2, V31.D2              // bf9ae16e
   624  	FRINTIS F17, F17                           // 31c2271e
   625  	FRINTID F9, F15                            // 2fc1671e
   626  	//TODO VFRINTM V9.D2, V27.D2               // 3b99614e
   627  	FRINTMS F24, F16                           // 1043251e
   628  	FRINTMD F5, F2                             // a240651e
   629  	//TODO VFRINTN V30.S4, V2.S4               // c28b214e
   630  	FRINTNS F26, F14                           // 4e43241e
   631  	FRINTND F28, F12                           // 8c43641e
   632  	//TODO VFRINTP V27.D2, V31.D2              // 7f8be14e
   633  	FRINTPS F27, F4                            // 64c3241e
   634  	FRINTPD F6, F22                            // d6c0641e
   635  	//TODO VFRINTX V25.D2, V0.D2               // 209b616e
   636  	FRINTXS F26, F10                           // 4a43271e
   637  	FRINTXD F16, F12                           // 0c42671e
   638  	//TODO VFRINTZ V25.S4, V27.S4              // 3b9ba14e
   639  	FRINTZS F3, F28                            // 7cc0251e
   640  	FRINTZD F24, F6                            // 06c3651e
   641  	//TODO FRSQRTE F29, F5                     // a5dbe17e
   642  	//TODO VFRSQRTE V18.S2, V1.S2              // 41daa12e
   643  	//TODO FRSQRTS F17, F7, F24                // f8fcf15e
   644  	//TODO VFRSQRTS V14.S2, V10.S2, V24.S2     // 58fdae0e
   645  	//TODO VFSQRT V2.D2, V21.D2                // 55f8e16e
   646  	FSQRTS F0, F9                              // 09c0211e
   647  	FSQRTD F14, F27                            // dbc1611e
   648  	FSUBS F25, F23, F0                         // e03a391e
   649  	FSUBD F11, F13, F24                        // b8396b1e
   650  	//TODO SCVTFSS F30, F20                    // d4db215e
   651  	//TODO VSCVTF V7.S2, V17.S2                // f1d8210e
   652  	SCVTFWS R3, F16                            // 7000221e
   653  	SCVTFWD R20, F4                            // 8402621e
   654  	SCVTFS R16, F12                            // 0c02229e
   655  	SCVTFD R26, F14                            // 4e03629e
   656  	UCVTFWS R6, F4                             // c400231e
   657  	UCVTFWD R10, F23                           // 5701631e
   658  	UCVTFS R24, F29                            // 1d03239e
   659  	UCVTFD R20, F11                            // 8b02639e
   660  	VADD V16, V19, V14                                          // 6e86f05e
   661  	VADD V5.H8, V18.H8, V9.H8                                   // 4986654e
   662  	VADDP V7.H8, V25.H8, V17.H8                                 // 31bf674e
   663  	VADDV V3.H8, V0                                             // 60b8714e
   664  	AESD V22.B16, V19.B16                                       // d35a284e
   665  	AESE V31.B16, V29.B16                                       // fd4b284e
   666  	AESIMC V12.B16, V27.B16                                     // 9b79284e
   667  	AESMC V14.B16, V28.B16                                      // dc69284e
   668  	VAND V4.B16, V4.B16, V9.B16                                 // 891c244e
   669  	VCMEQ V24.S4, V13.S4, V12.S4                                // ac8db86e
   670  	VCNT V13.B8, V11.B8                                         // ab59200e
   671  	VMOV V31.B[15], V18                                         // f2071f5e
   672  	VDUP V31.B[15], V18                                         // f2071f5e
   673  	VDUP V31.B[13], V20.B16                                     // f4071b4e
   674  	VEOR V4.B8, V18.B8, V7.B8                                   // 471e242e
   675  	VEXT $4, V2.B8, V1.B8, V3.B8                                // 2320022e
   676  	VEXT $8, V2.B16, V1.B16, V3.B16                             // 2340026e
   677  	VMOV V11.B[11], V16.B[12]                                   // 705d196e
   678  	VMOV R20, V21.B[2]                                          // 951e054e
   679  	VLD1 (R2), [V21.B16]                                        // 5570404c
   680  	VLD1 (R24), [V18.D1, V19.D1, V20.D1]                        // 126f400c
   681  	VLD1 (R29), [V14.D1, V15.D1, V16.D1, V17.D1]                // ae2f400c
   682  	VLD1.P 16(R23), [V1.B16]                                    // e172df4c
   683  	VLD1.P (R6)(R11), [V31.D1]                                  // df7ccb0c
   684  	VLD1.P 16(R7), [V31.D1, V0.D1]                              // ffacdf0c
   685  	VLD1.P (R19)(R4), [V24.B8, V25.B8]                          // 78a2c40c
   686  	VLD1.P (R20)(R8), [V7.H8, V8.H8, V9.H8]                     // 8766c84c
   687  	VLD1.P 32(R30), [V5.B8, V6.B8, V7.B8, V8.B8]                // c523df0c
   688  	VLD1 (R19), V14.B[15]                                       // 6e1e404d
   689  	VLD1 (R29), V0.H[1]                                         // a04b400d
   690  	VLD1 (R27), V2.S[0]                                         // 6283400d
   691  	VLD1 (R21), V5.D[1]                                         // a586404d
   692  	VLD1.P 1(R19), V10.B[14]                                    // 6a1adf4d
   693  	VLD1.P (R3)(R14), V16.B[11]                                 // 700cce4d
   694  	VLD1.P 2(R1), V28.H[2]                                      // 3c50df0d
   695  	VLD1.P (R13)(R20), V9.H[2]                                  // a951d40d
   696  	VLD1.P 4(R17), V1.S[3]                                      // 2192df4d
   697  	VLD1.P (R14)(R2), V17.S[2]                                  // d181c24d
   698  	VLD1.P 8(R5), V30.D[1]                                      // be84df4d
   699  	VLD1.P (R27)(R13), V27.D[0]                                 // 7b87cd0d
   700  	//TODO FMOVS.P -29(RSP), F8                                 // e8375ebc
   701  	//TODO FMOVS.W 71(R29), F28                                 // bc7f44bc
   702  	FMOVS 6160(R4), F23                                         // 971058bd
   703  	VMOV V18.B[10], V27                                         // 5b06155e
   704  	VDUP V18.B[10], V27                                         // 5b06155e
   705  	VMOV V12.B[2], V28.B[12]                                    // 9c15196e
   706  	VMOV R30, V4.B[13]                                          // c41f1b4e
   707  	VMOV V2.B16, V4.B16                                         // 441ca24e
   708  	VMOV V13.S[0], R20                                          // b43d040e
   709  	VMOV V13.D[0], R20                                          // b43d084e
   710  	VMOVI $146, V22.B16                                         // 56e6044f
   711  	VORR V25.B16, V22.B16, V15.B16                              // cf1eb94e
   712  	VPMULL V2.D1, V1.D1, V3.Q1                                  // 23e0e20e
   713  	VPMULL2 V2.D2, V1.D2, V4.Q1                                 // 24e0e24e
   714  	VPMULL V2.B8, V1.B8, V3.H8                                  // 23e0220e
   715  	VPMULL2 V2.B16, V1.B16, V4.H8                               // 24e0224e
   716  	VRBIT V10.B16, V21.B16                                      // 5559606e
   717  	VREV32 V2.H8, V1.H8                                         // 4108606e
   718  	VREV16 V2.B8, V1.B8                                         // 4118200e
   719  	VREV16 V5.B16, V16.B16                                      // b018204e
   720  	SCVTFWS R6, F17                                             // d100221e
   721  	SCVTFWD R3, F15                                             // 6f00621e
   722  	SCVTFS R20, F25                                             // 9902229e
   723  	SCVTFD R13, F9                                              // a901629e
   724  	SHA1C V8.S4, V8, V2                                         // 0201085e
   725  	SHA1H V17, V25                                              // 390a285e
   726  	SHA1M V0.S4, V27, V27                                       // 7b23005e
   727  	SHA1P V3.S4, V20, V27                                       // 9b12035e
   728  	SHA1SU0 V17.S4, V13.S4, V16.S4                              // b031115e
   729  	SHA1SU1 V24.S4, V23.S4                                      // 171b285e
   730  	SHA256H2 V6.S4, V16, V11                                    // 0b52065e
   731  	SHA256H V4.S4, V2, V11                                      // 4b40045e
   732  	SHA256SU0 V0.S4, V16.S4                                     // 1028285e
   733  	SHA256SU1 V31.S4, V3.S4, V15.S4                             // 6f601f5e
   734  	VSHL $7, V22.D2, V25.D2                                     // d956474f
   735  	VST1 [V14.H4, V15.H4, V16.H4], (R27)                        // 6e67000c
   736  	VST1 [V2.S4, V3.S4, V4.S4, V5.S4], (R14)                    // c229004c
   737  	VST1.P [V25.S4], (R7)(R29)                                  // f9789d4c
   738  	VST1.P [V25.D2, V26.D2], 32(R7)                             // f9ac9f4c
   739  	VST1.P [V14.D1, V15.D1], (R7)(R23)                          // eeac970c
   740  	VST1.P [V25.D2, V26.D2, V27.D2], 48(R27)                    // 796f9f4c
   741  	VST1.P [V13.H8, V14.H8, V15.H8], (R3)(R14)                  // 6d648e4c
   742  	VST1.P [V16.S4, V17.S4, V18.S4, V19.S4], 64(R6)             // d0289f4c
   743  	VST1.P [V19.H4, V20.H4, V21.H4, V22.H4], (R4)(R16)          // 9324900c
   744  	VST1 V12.B[3], (R1)                                         // 2c0c000d
   745  	VST1 V12.B[3], (R1)                                         // 2c0c000d
   746  	VST1 V25.S[2], (R20)                                        // 9982004d
   747  	VST1 V9.D[1], (RSP)                                         // e987004d
   748  	VST1.P V30.B[6], 1(R3)                                      // 7e189f0d
   749  	VST1.P V8.B[0], (R3)(R21)                                   // 6800950d
   750  	VST1.P V15.H[5], 2(R10)                                     // 4f499f4d
   751  	VST1.P V1.H[7], (R23)(R11)                                  // e15a8b4d
   752  	VST1.P V26.S[0], 4(R11)                                     // 7a819f0d
   753  	VST1.P V9.S[1], (R16)(R21)                                  // 0992950d
   754  	VST1.P V16.D[0], 8(R9)                                      // 30859f0d
   755  	VST1.P V23.D[1], (R21)(R16)                                 // b786904d
   756  	VSUB V1, V12, V23                                           // 9785e17e
   757  	VUADDLV V31.S4, V11                                         // eb3bb06e
   758  	UCVTFWS R11, F19                                            // 7301231e
   759  	UCVTFWD R26, F13                                            // 4d03631e
   760  	UCVTFS R23, F11                                             // eb02239e
   761  	UCVTFD R5, F29                                              // bd00639e
   762  	VMOV V0.B[1], R11                                           // 0b3c030e
   763  	VMOV V1.H[3], R12                                           // 2c3c0e0e
   764  	VUSHR $6, V22.H8, V23.H8                                    // d7061a6f
   765  
   766  	RET
   767  

View as plain text