1*9880d681SAndroid Build Coastguard Worker// RUN: llvm-mc -triple aarch64-none-linux-gnu -show-encoding -mattr=+fp-armv8 < %s | FileCheck %s 2*9880d681SAndroid Build Coastguard Worker .globl _func 3*9880d681SAndroid Build Coastguard Worker 4*9880d681SAndroid Build Coastguard Worker// Check that the assembler can handle the documented syntax from the ARM ARM. 5*9880d681SAndroid Build Coastguard Worker// For complex constructs like shifter operands, check more thoroughly for them 6*9880d681SAndroid Build Coastguard Worker// once then spot check that following instructions accept the form generally. 7*9880d681SAndroid Build Coastguard Worker// This gives us good coverage while keeping the overall size of the test 8*9880d681SAndroid Build Coastguard Worker// more reasonable. 9*9880d681SAndroid Build Coastguard Worker 10*9880d681SAndroid Build Coastguard Worker 11*9880d681SAndroid Build Coastguard Worker_func: 12*9880d681SAndroid Build Coastguard Worker// CHECK: _func 13*9880d681SAndroid Build Coastguard Worker 14*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 15*9880d681SAndroid Build Coastguard Worker// Add/sub (extended register) 16*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 17*9880d681SAndroid Build Coastguard Worker // Basic extends 64-bit ops 18*9880d681SAndroid Build Coastguard Worker add x2, x4, w5, uxtb 19*9880d681SAndroid Build Coastguard Worker add x20, sp, w19, uxth 20*9880d681SAndroid Build Coastguard Worker add x12, x1, w20, uxtw 21*9880d681SAndroid Build Coastguard Worker add x20, x3, x13, uxtx 22*9880d681SAndroid Build Coastguard Worker add x17, x25, w20, sxtb 23*9880d681SAndroid Build Coastguard Worker add x18, x13, w19, sxth 24*9880d681SAndroid Build Coastguard Worker add sp, x2, w3, sxtw 25*9880d681SAndroid Build Coastguard Worker add x3, x5, x9, sxtx 26*9880d681SAndroid Build Coastguard Worker// CHECK: add x2, x4, w5, uxtb // encoding: [0x82,0x00,0x25,0x8b] 27*9880d681SAndroid Build Coastguard Worker// CHECK: add x20, sp, w19, uxth // encoding: [0xf4,0x23,0x33,0x8b] 28*9880d681SAndroid Build Coastguard Worker// CHECK: add x12, x1, w20, uxtw // encoding: [0x2c,0x40,0x34,0x8b] 29*9880d681SAndroid Build Coastguard Worker// CHECK: add x20, x3, x13, uxtx // encoding: [0x74,0x60,0x2d,0x8b] 30*9880d681SAndroid Build Coastguard Worker// CHECK: add x17, x25, w20, sxtb // encoding: [0x31,0x83,0x34,0x8b] 31*9880d681SAndroid Build Coastguard Worker// CHECK: add x18, x13, w19, sxth // encoding: [0xb2,0xa1,0x33,0x8b] 32*9880d681SAndroid Build Coastguard Worker// CHECK: add sp, x2, w3, sxtw // encoding: [0x5f,0xc0,0x23,0x8b] 33*9880d681SAndroid Build Coastguard Worker// CHECK: add x3, x5, x9, sxtx // encoding: [0xa3,0xe0,0x29,0x8b] 34*9880d681SAndroid Build Coastguard Worker 35*9880d681SAndroid Build Coastguard Worker // Basic extends, 32-bit ops 36*9880d681SAndroid Build Coastguard Worker add w2, w5, w7, uxtb 37*9880d681SAndroid Build Coastguard Worker add w21, w15, w17, uxth 38*9880d681SAndroid Build Coastguard Worker add w30, w29, wzr, uxtw 39*9880d681SAndroid Build Coastguard Worker add w19, w17, w1, uxtx // Goodness knows what this means 40*9880d681SAndroid Build Coastguard Worker add w2, w5, w1, sxtb 41*9880d681SAndroid Build Coastguard Worker add w26, w17, w19, sxth 42*9880d681SAndroid Build Coastguard Worker add w0, w2, w3, sxtw 43*9880d681SAndroid Build Coastguard Worker add w2, w3, w5, sxtx 44*9880d681SAndroid Build Coastguard Worker// CHECK: add w2, w5, w7, uxtb // encoding: [0xa2,0x00,0x27,0x0b] 45*9880d681SAndroid Build Coastguard Worker// CHECK: add w21, w15, w17, uxth // encoding: [0xf5,0x21,0x31,0x0b] 46*9880d681SAndroid Build Coastguard Worker// CHECK: add w30, w29, wzr, uxtw // encoding: [0xbe,0x43,0x3f,0x0b] 47*9880d681SAndroid Build Coastguard Worker// CHECK: add w19, w17, w1, uxtx // encoding: [0x33,0x62,0x21,0x0b] 48*9880d681SAndroid Build Coastguard Worker// CHECK: add w2, w5, w1, sxtb // encoding: [0xa2,0x80,0x21,0x0b] 49*9880d681SAndroid Build Coastguard Worker// CHECK: add w26, w17, w19, sxth // encoding: [0x3a,0xa2,0x33,0x0b] 50*9880d681SAndroid Build Coastguard Worker// CHECK: add w0, w2, w3, sxtw // encoding: [0x40,0xc0,0x23,0x0b] 51*9880d681SAndroid Build Coastguard Worker// CHECK: add w2, w3, w5, sxtx // encoding: [0x62,0xe0,0x25,0x0b] 52*9880d681SAndroid Build Coastguard Worker 53*9880d681SAndroid Build Coastguard Worker // Nonzero shift amounts 54*9880d681SAndroid Build Coastguard Worker add x2, x3, w5, sxtb #0 55*9880d681SAndroid Build Coastguard Worker add x7, x11, w13, uxth #4 56*9880d681SAndroid Build Coastguard Worker add w17, w19, w23, uxtw #2 57*9880d681SAndroid Build Coastguard Worker add w29, w23, w17, uxtx #1 58*9880d681SAndroid Build Coastguard Worker// CHECK: add x2, x3, w5, sxtb // encoding: [0x62,0x80,0x25,0x8b] 59*9880d681SAndroid Build Coastguard Worker// CHECK: add x7, x11, w13, uxth #4 // encoding: [0x67,0x31,0x2d,0x8b] 60*9880d681SAndroid Build Coastguard Worker// CHECK: add w17, w19, w23, uxtw #2 // encoding: [0x71,0x4a,0x37,0x0b] 61*9880d681SAndroid Build Coastguard Worker// CHECK: add w29, w23, w17, uxtx #1 // encoding: [0xfd,0x66,0x31,0x0b] 62*9880d681SAndroid Build Coastguard Worker 63*9880d681SAndroid Build Coastguard Worker // Sub 64*9880d681SAndroid Build Coastguard Worker sub x2, x4, w5, uxtb #2 65*9880d681SAndroid Build Coastguard Worker sub x20, sp, w19, uxth #4 66*9880d681SAndroid Build Coastguard Worker sub x12, x1, w20, uxtw 67*9880d681SAndroid Build Coastguard Worker sub x20, x3, x13, uxtx #0 68*9880d681SAndroid Build Coastguard Worker sub x17, x25, w20, sxtb 69*9880d681SAndroid Build Coastguard Worker sub x18, x13, w19, sxth 70*9880d681SAndroid Build Coastguard Worker sub sp, x2, w3, sxtw 71*9880d681SAndroid Build Coastguard Worker sub x3, x5, x9, sxtx 72*9880d681SAndroid Build Coastguard Worker// CHECK: sub x2, x4, w5, uxtb #2 // encoding: [0x82,0x08,0x25,0xcb] 73*9880d681SAndroid Build Coastguard Worker// CHECK: sub x20, sp, w19, uxth #4 // encoding: [0xf4,0x33,0x33,0xcb] 74*9880d681SAndroid Build Coastguard Worker// CHECK: sub x12, x1, w20, uxtw // encoding: [0x2c,0x40,0x34,0xcb] 75*9880d681SAndroid Build Coastguard Worker// CHECK: sub x20, x3, x13, uxtx // encoding: [0x74,0x60,0x2d,0xcb] 76*9880d681SAndroid Build Coastguard Worker// CHECK: sub x17, x25, w20, sxtb // encoding: [0x31,0x83,0x34,0xcb] 77*9880d681SAndroid Build Coastguard Worker// CHECK: sub x18, x13, w19, sxth // encoding: [0xb2,0xa1,0x33,0xcb] 78*9880d681SAndroid Build Coastguard Worker// CHECK: sub sp, x2, w3, sxtw // encoding: [0x5f,0xc0,0x23,0xcb] 79*9880d681SAndroid Build Coastguard Worker// CHECK: sub x3, x5, x9, sxtx // encoding: [0xa3,0xe0,0x29,0xcb] 80*9880d681SAndroid Build Coastguard Worker 81*9880d681SAndroid Build Coastguard Worker sub w2, w5, w7, uxtb 82*9880d681SAndroid Build Coastguard Worker sub w21, w15, w17, uxth 83*9880d681SAndroid Build Coastguard Worker sub w30, w29, wzr, uxtw 84*9880d681SAndroid Build Coastguard Worker sub w19, w17, w1, uxtx // Goodness knows what this means 85*9880d681SAndroid Build Coastguard Worker sub w2, w5, w1, sxtb 86*9880d681SAndroid Build Coastguard Worker sub w26, wsp, w19, sxth 87*9880d681SAndroid Build Coastguard Worker sub wsp, w2, w3, sxtw 88*9880d681SAndroid Build Coastguard Worker sub w2, w3, w5, sxtx 89*9880d681SAndroid Build Coastguard Worker// CHECK: sub w2, w5, w7, uxtb // encoding: [0xa2,0x00,0x27,0x4b] 90*9880d681SAndroid Build Coastguard Worker// CHECK: sub w21, w15, w17, uxth // encoding: [0xf5,0x21,0x31,0x4b] 91*9880d681SAndroid Build Coastguard Worker// CHECK: sub w30, w29, wzr, uxtw // encoding: [0xbe,0x43,0x3f,0x4b] 92*9880d681SAndroid Build Coastguard Worker// CHECK: sub w19, w17, w1, uxtx // encoding: [0x33,0x62,0x21,0x4b] 93*9880d681SAndroid Build Coastguard Worker// CHECK: sub w2, w5, w1, sxtb // encoding: [0xa2,0x80,0x21,0x4b] 94*9880d681SAndroid Build Coastguard Worker// CHECK: sub w26, wsp, w19, sxth // encoding: [0xfa,0xa3,0x33,0x4b] 95*9880d681SAndroid Build Coastguard Worker// CHECK: sub wsp, w2, w3, sxtw // encoding: [0x5f,0xc0,0x23,0x4b] 96*9880d681SAndroid Build Coastguard Worker// CHECK: sub w2, w3, w5, sxtx // encoding: [0x62,0xe0,0x25,0x4b] 97*9880d681SAndroid Build Coastguard Worker 98*9880d681SAndroid Build Coastguard Worker // Adds 99*9880d681SAndroid Build Coastguard Worker adds x2, x4, w5, uxtb #2 100*9880d681SAndroid Build Coastguard Worker adds x20, sp, w19, uxth #4 101*9880d681SAndroid Build Coastguard Worker adds x12, x1, w20, uxtw 102*9880d681SAndroid Build Coastguard Worker adds x20, x3, x13, uxtx #0 103*9880d681SAndroid Build Coastguard Worker adds xzr, x25, w20, sxtb #3 104*9880d681SAndroid Build Coastguard Worker adds x18, sp, w19, sxth 105*9880d681SAndroid Build Coastguard Worker adds xzr, x2, w3, sxtw 106*9880d681SAndroid Build Coastguard Worker adds x3, x5, x9, sxtx #2 107*9880d681SAndroid Build Coastguard Worker// CHECK: adds x2, x4, w5, uxtb #2 // encoding: [0x82,0x08,0x25,0xab] 108*9880d681SAndroid Build Coastguard Worker// CHECK: adds x20, sp, w19, uxth #4 // encoding: [0xf4,0x33,0x33,0xab] 109*9880d681SAndroid Build Coastguard Worker// CHECK: adds x12, x1, w20, uxtw // encoding: [0x2c,0x40,0x34,0xab] 110*9880d681SAndroid Build Coastguard Worker// CHECK: adds x20, x3, x13, uxtx // encoding: [0x74,0x60,0x2d,0xab] 111*9880d681SAndroid Build Coastguard Worker// CHECK: {{adds xzr,|cmn}} x25, w20, sxtb #3 // encoding: [0x3f,0x8f,0x34,0xab] 112*9880d681SAndroid Build Coastguard Worker// CHECK: adds x18, sp, w19, sxth // encoding: [0xf2,0xa3,0x33,0xab] 113*9880d681SAndroid Build Coastguard Worker// CHECK: {{adds xzr,|cmn}} x2, w3, sxtw // encoding: [0x5f,0xc0,0x23,0xab] 114*9880d681SAndroid Build Coastguard Worker// CHECK: adds x3, x5, x9, sxtx #2 // encoding: [0xa3,0xe8,0x29,0xab] 115*9880d681SAndroid Build Coastguard Worker 116*9880d681SAndroid Build Coastguard Worker adds w2, w5, w7, uxtb 117*9880d681SAndroid Build Coastguard Worker adds w21, w15, w17, uxth 118*9880d681SAndroid Build Coastguard Worker adds w30, w29, wzr, uxtw 119*9880d681SAndroid Build Coastguard Worker adds w19, w17, w1, uxtx // Goodness knows what this means 120*9880d681SAndroid Build Coastguard Worker adds w2, w5, w1, sxtb #1 121*9880d681SAndroid Build Coastguard Worker adds w26, wsp, w19, sxth 122*9880d681SAndroid Build Coastguard Worker adds wzr, w2, w3, sxtw 123*9880d681SAndroid Build Coastguard Worker adds w2, w3, w5, sxtx 124*9880d681SAndroid Build Coastguard Worker// CHECK: adds w2, w5, w7, uxtb // encoding: [0xa2,0x00,0x27,0x2b] 125*9880d681SAndroid Build Coastguard Worker// CHECK: adds w21, w15, w17, uxth // encoding: [0xf5,0x21,0x31,0x2b] 126*9880d681SAndroid Build Coastguard Worker// CHECK: adds w30, w29, wzr, uxtw // encoding: [0xbe,0x43,0x3f,0x2b] 127*9880d681SAndroid Build Coastguard Worker// CHECK: adds w19, w17, w1, uxtx // encoding: [0x33,0x62,0x21,0x2b] 128*9880d681SAndroid Build Coastguard Worker// CHECK: adds w2, w5, w1, sxtb #1 // encoding: [0xa2,0x84,0x21,0x2b] 129*9880d681SAndroid Build Coastguard Worker// CHECK: adds w26, wsp, w19, sxth // encoding: [0xfa,0xa3,0x33,0x2b] 130*9880d681SAndroid Build Coastguard Worker// CHECK: cmn w2, w3, sxtw // encoding: [0x5f,0xc0,0x23,0x2b] 131*9880d681SAndroid Build Coastguard Worker// CHECK: adds w2, w3, w5, sxtx // encoding: [0x62,0xe0,0x25,0x2b] 132*9880d681SAndroid Build Coastguard Worker 133*9880d681SAndroid Build Coastguard Worker // subs 134*9880d681SAndroid Build Coastguard Worker subs x2, x4, w5, uxtb #2 135*9880d681SAndroid Build Coastguard Worker subs x20, sp, w19, uxth #4 136*9880d681SAndroid Build Coastguard Worker subs x12, x1, w20, uxtw 137*9880d681SAndroid Build Coastguard Worker subs x20, x3, x13, uxtx #0 138*9880d681SAndroid Build Coastguard Worker subs xzr, x25, w20, sxtb #3 139*9880d681SAndroid Build Coastguard Worker subs x18, sp, w19, sxth 140*9880d681SAndroid Build Coastguard Worker subs xzr, x2, w3, sxtw 141*9880d681SAndroid Build Coastguard Worker subs x3, x5, x9, sxtx #2 142*9880d681SAndroid Build Coastguard Worker// CHECK: subs x2, x4, w5, uxtb #2 // encoding: [0x82,0x08,0x25,0xeb] 143*9880d681SAndroid Build Coastguard Worker// CHECK: subs x20, sp, w19, uxth #4 // encoding: [0xf4,0x33,0x33,0xeb] 144*9880d681SAndroid Build Coastguard Worker// CHECK: subs x12, x1, w20, uxtw // encoding: [0x2c,0x40,0x34,0xeb] 145*9880d681SAndroid Build Coastguard Worker// CHECK: subs x20, x3, x13, uxtx // encoding: [0x74,0x60,0x2d,0xeb] 146*9880d681SAndroid Build Coastguard Worker// CHECK: {{subs xzr,|cmp}} x25, w20, sxtb #3 // encoding: [0x3f,0x8f,0x34,0xeb] 147*9880d681SAndroid Build Coastguard Worker// CHECK: subs x18, sp, w19, sxth // encoding: [0xf2,0xa3,0x33,0xeb] 148*9880d681SAndroid Build Coastguard Worker// CHECK: {{subs xzr,|cmp}} x2, w3, sxtw // encoding: [0x5f,0xc0,0x23,0xeb] 149*9880d681SAndroid Build Coastguard Worker// CHECK: subs x3, x5, x9, sxtx #2 // encoding: [0xa3,0xe8,0x29,0xeb] 150*9880d681SAndroid Build Coastguard Worker 151*9880d681SAndroid Build Coastguard Worker subs w2, w5, w7, uxtb 152*9880d681SAndroid Build Coastguard Worker subs w21, w15, w17, uxth 153*9880d681SAndroid Build Coastguard Worker subs w30, w29, wzr, uxtw 154*9880d681SAndroid Build Coastguard Worker subs w19, w17, w1, uxtx // Goodness knows what this means 155*9880d681SAndroid Build Coastguard Worker subs w2, w5, w1, sxtb #1 156*9880d681SAndroid Build Coastguard Worker subs w26, wsp, w19, sxth 157*9880d681SAndroid Build Coastguard Worker subs wzr, w2, w3, sxtw 158*9880d681SAndroid Build Coastguard Worker subs w2, w3, w5, sxtx 159*9880d681SAndroid Build Coastguard Worker// CHECK: subs w2, w5, w7, uxtb // encoding: [0xa2,0x00,0x27,0x6b] 160*9880d681SAndroid Build Coastguard Worker// CHECK: subs w21, w15, w17, uxth // encoding: [0xf5,0x21,0x31,0x6b] 161*9880d681SAndroid Build Coastguard Worker// CHECK: subs w30, w29, wzr, uxtw // encoding: [0xbe,0x43,0x3f,0x6b] 162*9880d681SAndroid Build Coastguard Worker// CHECK: subs w19, w17, w1, uxtx // encoding: [0x33,0x62,0x21,0x6b] 163*9880d681SAndroid Build Coastguard Worker// CHECK: subs w2, w5, w1, sxtb #1 // encoding: [0xa2,0x84,0x21,0x6b] 164*9880d681SAndroid Build Coastguard Worker// CHECK: subs w26, wsp, w19, sxth // encoding: [0xfa,0xa3,0x33,0x6b] 165*9880d681SAndroid Build Coastguard Worker// CHECK: {{subs wzr,|cmp}} w2, w3, sxtw // encoding: [0x5f,0xc0,0x23,0x6b] 166*9880d681SAndroid Build Coastguard Worker// CHECK: subs w2, w3, w5, sxtx // encoding: [0x62,0xe0,0x25,0x6b] 167*9880d681SAndroid Build Coastguard Worker 168*9880d681SAndroid Build Coastguard Worker // cmp 169*9880d681SAndroid Build Coastguard Worker cmp x4, w5, uxtb #2 170*9880d681SAndroid Build Coastguard Worker cmp sp, w19, uxth #4 171*9880d681SAndroid Build Coastguard Worker cmp x1, w20, uxtw 172*9880d681SAndroid Build Coastguard Worker cmp x3, x13, uxtx #0 173*9880d681SAndroid Build Coastguard Worker cmp x25, w20, sxtb #3 174*9880d681SAndroid Build Coastguard Worker cmp sp, w19, sxth 175*9880d681SAndroid Build Coastguard Worker cmp x2, w3, sxtw 176*9880d681SAndroid Build Coastguard Worker cmp x5, x9, sxtx #2 177*9880d681SAndroid Build Coastguard Worker// CHECK: cmp x4, w5, uxtb #2 // encoding: [0x9f,0x08,0x25,0xeb] 178*9880d681SAndroid Build Coastguard Worker// CHECK: cmp sp, w19, uxth #4 // encoding: [0xff,0x33,0x33,0xeb] 179*9880d681SAndroid Build Coastguard Worker// CHECK: cmp x1, w20, uxtw // encoding: [0x3f,0x40,0x34,0xeb] 180*9880d681SAndroid Build Coastguard Worker// CHECK: cmp x3, x13, uxtx // encoding: [0x7f,0x60,0x2d,0xeb] 181*9880d681SAndroid Build Coastguard Worker// CHECK: cmp x25, w20, sxtb #3 // encoding: [0x3f,0x8f,0x34,0xeb] 182*9880d681SAndroid Build Coastguard Worker// CHECK: cmp sp, w19, sxth // encoding: [0xff,0xa3,0x33,0xeb] 183*9880d681SAndroid Build Coastguard Worker// CHECK: cmp x2, w3, sxtw // encoding: [0x5f,0xc0,0x23,0xeb] 184*9880d681SAndroid Build Coastguard Worker// CHECK: cmp x5, x9, sxtx #2 // encoding: [0xbf,0xe8,0x29,0xeb] 185*9880d681SAndroid Build Coastguard Worker 186*9880d681SAndroid Build Coastguard Worker cmp w5, w7, uxtb 187*9880d681SAndroid Build Coastguard Worker cmp w15, w17, uxth 188*9880d681SAndroid Build Coastguard Worker cmp w29, wzr, uxtw 189*9880d681SAndroid Build Coastguard Worker cmp w17, w1, uxtx // Goodness knows what this means 190*9880d681SAndroid Build Coastguard Worker cmp w5, w1, sxtb #1 191*9880d681SAndroid Build Coastguard Worker cmp wsp, w19, sxth 192*9880d681SAndroid Build Coastguard Worker cmp w2, w3, sxtw 193*9880d681SAndroid Build Coastguard Worker cmp w3, w5, sxtx 194*9880d681SAndroid Build Coastguard Worker// CHECK: cmp w5, w7, uxtb // encoding: [0xbf,0x00,0x27,0x6b] 195*9880d681SAndroid Build Coastguard Worker// CHECK: cmp w15, w17, uxth // encoding: [0xff,0x21,0x31,0x6b] 196*9880d681SAndroid Build Coastguard Worker// CHECK: cmp w29, wzr, uxtw // encoding: [0xbf,0x43,0x3f,0x6b] 197*9880d681SAndroid Build Coastguard Worker// CHECK: cmp w17, w1, uxtx // encoding: [0x3f,0x62,0x21,0x6b] 198*9880d681SAndroid Build Coastguard Worker// CHECK: cmp w5, w1, sxtb #1 // encoding: [0xbf,0x84,0x21,0x6b] 199*9880d681SAndroid Build Coastguard Worker// CHECK: cmp wsp, w19, sxth // encoding: [0xff,0xa3,0x33,0x6b] 200*9880d681SAndroid Build Coastguard Worker// CHECK: cmp w2, w3, sxtw // encoding: [0x5f,0xc0,0x23,0x6b] 201*9880d681SAndroid Build Coastguard Worker// CHECK: cmp w3, w5, sxtx // encoding: [0x7f,0xe0,0x25,0x6b] 202*9880d681SAndroid Build Coastguard Worker 203*9880d681SAndroid Build Coastguard Worker 204*9880d681SAndroid Build Coastguard Worker // cmn 205*9880d681SAndroid Build Coastguard Worker cmn x4, w5, uxtb #2 206*9880d681SAndroid Build Coastguard Worker cmn sp, w19, uxth #4 207*9880d681SAndroid Build Coastguard Worker cmn x1, w20, uxtw 208*9880d681SAndroid Build Coastguard Worker cmn x3, x13, uxtx #0 209*9880d681SAndroid Build Coastguard Worker cmn x25, w20, sxtb #3 210*9880d681SAndroid Build Coastguard Worker cmn sp, w19, sxth 211*9880d681SAndroid Build Coastguard Worker cmn x2, w3, sxtw 212*9880d681SAndroid Build Coastguard Worker cmn x5, x9, sxtx #2 213*9880d681SAndroid Build Coastguard Worker// CHECK: cmn x4, w5, uxtb #2 // encoding: [0x9f,0x08,0x25,0xab] 214*9880d681SAndroid Build Coastguard Worker// CHECK: cmn sp, w19, uxth #4 // encoding: [0xff,0x33,0x33,0xab] 215*9880d681SAndroid Build Coastguard Worker// CHECK: cmn x1, w20, uxtw // encoding: [0x3f,0x40,0x34,0xab] 216*9880d681SAndroid Build Coastguard Worker// CHECK: cmn x3, x13, uxtx // encoding: [0x7f,0x60,0x2d,0xab] 217*9880d681SAndroid Build Coastguard Worker// CHECK: cmn x25, w20, sxtb #3 // encoding: [0x3f,0x8f,0x34,0xab] 218*9880d681SAndroid Build Coastguard Worker// CHECK: cmn sp, w19, sxth // encoding: [0xff,0xa3,0x33,0xab] 219*9880d681SAndroid Build Coastguard Worker// CHECK: cmn x2, w3, sxtw // encoding: [0x5f,0xc0,0x23,0xab] 220*9880d681SAndroid Build Coastguard Worker// CHECK: cmn x5, x9, sxtx #2 // encoding: [0xbf,0xe8,0x29,0xab] 221*9880d681SAndroid Build Coastguard Worker 222*9880d681SAndroid Build Coastguard Worker cmn w5, w7, uxtb 223*9880d681SAndroid Build Coastguard Worker cmn w15, w17, uxth 224*9880d681SAndroid Build Coastguard Worker cmn w29, wzr, uxtw 225*9880d681SAndroid Build Coastguard Worker cmn w17, w1, uxtx // Goodness knows what this means 226*9880d681SAndroid Build Coastguard Worker cmn w5, w1, sxtb #1 227*9880d681SAndroid Build Coastguard Worker cmn wsp, w19, sxth 228*9880d681SAndroid Build Coastguard Worker cmn w2, w3, sxtw 229*9880d681SAndroid Build Coastguard Worker cmn w3, w5, sxtx 230*9880d681SAndroid Build Coastguard Worker// CHECK: {{cmn|adds wzr,}} w5, w7, uxtb // encoding: [0xbf,0x00,0x27,0x2b] 231*9880d681SAndroid Build Coastguard Worker// CHECK: {{cmn|adds wzr,}} w15, w17, uxth // encoding: [0xff,0x21,0x31,0x2b] 232*9880d681SAndroid Build Coastguard Worker// CHECK: {{cmn|adds wzr,}} w29, wzr, uxtw // encoding: [0xbf,0x43,0x3f,0x2b] 233*9880d681SAndroid Build Coastguard Worker// CHECK: {{cmn|adds wzr,}} w17, w1, uxtx // encoding: [0x3f,0x62,0x21,0x2b] 234*9880d681SAndroid Build Coastguard Worker// CHECK: {{cmn|adds wzr,}} w5, w1, sxtb #1 // encoding: [0xbf,0x84,0x21,0x2b] 235*9880d681SAndroid Build Coastguard Worker// CHECK: {{cmn|adds wzr,}} wsp, w19, sxth // encoding: [0xff,0xa3,0x33,0x2b] 236*9880d681SAndroid Build Coastguard Worker// CHECK: {{cmn|adds wzr,}} w2, w3, sxtw // encoding: [0x5f,0xc0,0x23,0x2b] 237*9880d681SAndroid Build Coastguard Worker// CHECK: {{cmn|adds wzr,}} w3, w5, sxtx // encoding: [0x7f,0xe0,0x25,0x2b] 238*9880d681SAndroid Build Coastguard Worker 239*9880d681SAndroid Build Coastguard Worker // operands for cmp 240*9880d681SAndroid Build Coastguard Worker cmp x20, w29, uxtb #3 241*9880d681SAndroid Build Coastguard Worker cmp x12, x13, uxtx #4 242*9880d681SAndroid Build Coastguard Worker cmp wsp, w1, uxtb 243*9880d681SAndroid Build Coastguard Worker cmn wsp, wzr, sxtw 244*9880d681SAndroid Build Coastguard Worker// CHECK: cmp x20, w29, uxtb #3 // encoding: [0x9f,0x0e,0x3d,0xeb] 245*9880d681SAndroid Build Coastguard Worker// CHECK: cmp x12, x13, uxtx #4 // encoding: [0x9f,0x71,0x2d,0xeb] 246*9880d681SAndroid Build Coastguard Worker// CHECK: cmp wsp, w1, uxtb // encoding: [0xff,0x03,0x21,0x6b] 247*9880d681SAndroid Build Coastguard Worker// CHECK: {{cmn|adds wzr,}} wsp, wzr, sxtw // encoding: [0xff,0xc3,0x3f,0x2b] 248*9880d681SAndroid Build Coastguard Worker 249*9880d681SAndroid Build Coastguard Worker // LSL variant if sp involved 250*9880d681SAndroid Build Coastguard Worker sub sp, x3, x7, lsl #4 251*9880d681SAndroid Build Coastguard Worker add w2, wsp, w3, lsl #1 252*9880d681SAndroid Build Coastguard Worker cmp wsp, w9, lsl #0 253*9880d681SAndroid Build Coastguard Worker adds wzr, wsp, w3, lsl #4 254*9880d681SAndroid Build Coastguard Worker subs x3, sp, x9, lsl #2 255*9880d681SAndroid Build Coastguard Worker// CHECK: sub sp, x3, x7, lsl #4 // encoding: [0x7f,0x70,0x27,0xcb] 256*9880d681SAndroid Build Coastguard Worker// CHECK: add w2, wsp, w3, lsl #1 // encoding: [0xe2,0x47,0x23,0x0b] 257*9880d681SAndroid Build Coastguard Worker// CHECK: cmp wsp, w9 // encoding: [0xff,0x43,0x29,0x6b] 258*9880d681SAndroid Build Coastguard Worker// CHECK: cmn wsp, w3, lsl #4 // encoding: [0xff,0x53,0x23,0x2b] 259*9880d681SAndroid Build Coastguard Worker// CHECK: subs x3, sp, x9, lsl #2 // encoding: [0xe3,0x6b,0x29,0xeb] 260*9880d681SAndroid Build Coastguard Worker 261*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 262*9880d681SAndroid Build Coastguard Worker// Add/sub (immediate) 263*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 264*9880d681SAndroid Build Coastguard Worker 265*9880d681SAndroid Build Coastguard Worker// Check basic immediate values: an unsigned 12-bit immediate, optionally 266*9880d681SAndroid Build Coastguard Worker// shifted left by 12 bits. 267*9880d681SAndroid Build Coastguard Worker add w4, w5, #0x0 268*9880d681SAndroid Build Coastguard Worker add w2, w3, #4095 269*9880d681SAndroid Build Coastguard Worker add w30, w29, #1, lsl #12 270*9880d681SAndroid Build Coastguard Worker add w13, w5, #4095, lsl #12 271*9880d681SAndroid Build Coastguard Worker add x5, x7, #1638 272*9880d681SAndroid Build Coastguard Worker// CHECK: add w4, w5, #0 // encoding: [0xa4,0x00,0x00,0x11] 273*9880d681SAndroid Build Coastguard Worker// CHECK: add w2, w3, #4095 // encoding: [0x62,0xfc,0x3f,0x11] 274*9880d681SAndroid Build Coastguard Worker// CHECK: add w30, w29, #1, lsl #12 // encoding: [0xbe,0x07,0x40,0x11] 275*9880d681SAndroid Build Coastguard Worker// CHECK: add w13, w5, #4095, lsl #12 // encoding: [0xad,0xfc,0x7f,0x11] 276*9880d681SAndroid Build Coastguard Worker// CHECK: add x5, x7, #1638 // encoding: [0xe5,0x98,0x19,0x91] 277*9880d681SAndroid Build Coastguard Worker 278*9880d681SAndroid Build Coastguard Worker// All registers involved in the non-S variants have 31 encoding sp rather than zr 279*9880d681SAndroid Build Coastguard Worker add w20, wsp, #801, lsl #0 280*9880d681SAndroid Build Coastguard Worker add wsp, wsp, #1104 281*9880d681SAndroid Build Coastguard Worker add wsp, w30, #4084 282*9880d681SAndroid Build Coastguard Worker// CHECK: add w20, wsp, #801 // encoding: [0xf4,0x87,0x0c,0x11] 283*9880d681SAndroid Build Coastguard Worker// CHECK: add wsp, wsp, #1104 // encoding: [0xff,0x43,0x11,0x11] 284*9880d681SAndroid Build Coastguard Worker// CHECK: add wsp, w30, #4084 // encoding: [0xdf,0xd3,0x3f,0x11] 285*9880d681SAndroid Build Coastguard Worker 286*9880d681SAndroid Build Coastguard Worker// A few checks on the sanity of 64-bit versions 287*9880d681SAndroid Build Coastguard Worker add x0, x24, #291 288*9880d681SAndroid Build Coastguard Worker add x3, x24, #4095, lsl #12 289*9880d681SAndroid Build Coastguard Worker add x8, sp, #1074 290*9880d681SAndroid Build Coastguard Worker add sp, x29, #3816 291*9880d681SAndroid Build Coastguard Worker// CHECK: add x0, x24, #291 // encoding: [0x00,0x8f,0x04,0x91] 292*9880d681SAndroid Build Coastguard Worker// CHECK: add x3, x24, #4095, lsl #12 // encoding: [0x03,0xff,0x7f,0x91] 293*9880d681SAndroid Build Coastguard Worker// CHECK: add x8, sp, #1074 // encoding: [0xe8,0xcb,0x10,0x91] 294*9880d681SAndroid Build Coastguard Worker// CHECK: add sp, x29, #3816 // encoding: [0xbf,0xa3,0x3b,0x91] 295*9880d681SAndroid Build Coastguard Worker 296*9880d681SAndroid Build Coastguard Worker// And on sub 297*9880d681SAndroid Build Coastguard Worker sub w0, wsp, #4077 298*9880d681SAndroid Build Coastguard Worker sub w4, w20, #546, lsl #12 299*9880d681SAndroid Build Coastguard Worker sub sp, sp, #288 300*9880d681SAndroid Build Coastguard Worker sub wsp, w19, #16 301*9880d681SAndroid Build Coastguard Worker// CHECK: sub w0, wsp, #4077 // encoding: [0xe0,0xb7,0x3f,0x51] 302*9880d681SAndroid Build Coastguard Worker// CHECK: sub w4, w20, #546, lsl #12 // encoding: [0x84,0x8a,0x48,0x51] 303*9880d681SAndroid Build Coastguard Worker// CHECK: sub sp, sp, #288 // encoding: [0xff,0x83,0x04,0xd1] 304*9880d681SAndroid Build Coastguard Worker// CHECK: sub wsp, w19, #16 // encoding: [0x7f,0x42,0x00,0x51] 305*9880d681SAndroid Build Coastguard Worker 306*9880d681SAndroid Build Coastguard Worker// ADDS/SUBS accept zr in the Rd position but sp in the Rn position 307*9880d681SAndroid Build Coastguard Worker adds w13, w23, #291, lsl #12 308*9880d681SAndroid Build Coastguard Worker adds wzr, w2, #4095 // FIXME: canonically should be cmn 309*9880d681SAndroid Build Coastguard Worker adds w20, wsp, #0x0 310*9880d681SAndroid Build Coastguard Worker adds xzr, x3, #0x1, lsl #12 // FIXME: canonically should be cmn 311*9880d681SAndroid Build Coastguard Worker// CHECK: adds w13, w23, #291, lsl #12 // encoding: [0xed,0x8e,0x44,0x31] 312*9880d681SAndroid Build Coastguard Worker// CHECK: {{adds wzr,|cmn}} w2, #4095 // encoding: [0x5f,0xfc,0x3f,0x31] 313*9880d681SAndroid Build Coastguard Worker// CHECK: adds w20, wsp, #0 // encoding: [0xf4,0x03,0x00,0x31] 314*9880d681SAndroid Build Coastguard Worker// CHECK: {{adds xzr,|cmn}} x3, #1, lsl #12 // encoding: [0x7f,0x04,0x40,0xb1] 315*9880d681SAndroid Build Coastguard Worker 316*9880d681SAndroid Build Coastguard Worker// Checks for subs 317*9880d681SAndroid Build Coastguard Worker subs xzr, sp, #20, lsl #12 // FIXME: canonically should be cmp 318*9880d681SAndroid Build Coastguard Worker subs xzr, x30, #4095, lsl #0 // FIXME: canonically should be cmp 319*9880d681SAndroid Build Coastguard Worker subs x4, sp, #3822 320*9880d681SAndroid Build Coastguard Worker// CHECK: {{subs xzr,|cmp}} sp, #20, lsl #12 // encoding: [0xff,0x53,0x40,0xf1] 321*9880d681SAndroid Build Coastguard Worker// CHECK: {{subs xzr,|cmp}} x30, #4095 // encoding: [0xdf,0xff,0x3f,0xf1] 322*9880d681SAndroid Build Coastguard Worker// CHECK: subs x4, sp, #3822 // encoding: [0xe4,0xbb,0x3b,0xf1] 323*9880d681SAndroid Build Coastguard Worker 324*9880d681SAndroid Build Coastguard Worker// cmn is an alias for adds zr, ... 325*9880d681SAndroid Build Coastguard Worker cmn w3, #291, lsl #12 326*9880d681SAndroid Build Coastguard Worker cmn wsp, #1365, lsl #0 327*9880d681SAndroid Build Coastguard Worker cmn sp, #1092, lsl #12 328*9880d681SAndroid Build Coastguard Worker// CHECK: cmn w3, #291, lsl #12 // encoding: [0x7f,0x8c,0x44,0x31] 329*9880d681SAndroid Build Coastguard Worker// CHECK: cmn wsp, #1365 // encoding: [0xff,0x57,0x15,0x31] 330*9880d681SAndroid Build Coastguard Worker// CHECK: cmn sp, #1092, lsl #12 // encoding: [0xff,0x13,0x51,0xb1] 331*9880d681SAndroid Build Coastguard Worker 332*9880d681SAndroid Build Coastguard Worker// cmp is an alias for subs zr, ... (FIXME: should always disassemble as such too). 333*9880d681SAndroid Build Coastguard Worker cmp x4, #300, lsl #12 334*9880d681SAndroid Build Coastguard Worker cmp wsp, #500 335*9880d681SAndroid Build Coastguard Worker cmp sp, #200, lsl #0 336*9880d681SAndroid Build Coastguard Worker// CHECK: cmp x4, #300, lsl #12 // encoding: [0x9f,0xb0,0x44,0xf1] 337*9880d681SAndroid Build Coastguard Worker// CHECK: cmp wsp, #500 // encoding: [0xff,0xd3,0x07,0x71] 338*9880d681SAndroid Build Coastguard Worker// CHECK: cmp sp, #200 // encoding: [0xff,0x23,0x03,0xf1] 339*9880d681SAndroid Build Coastguard Worker 340*9880d681SAndroid Build Coastguard Worker// A "MOV" involving sp is encoded in this manner: add Reg, Reg, #0 341*9880d681SAndroid Build Coastguard Worker mov sp, x30 342*9880d681SAndroid Build Coastguard Worker mov wsp, w20 343*9880d681SAndroid Build Coastguard Worker mov x11, sp 344*9880d681SAndroid Build Coastguard Worker mov w24, wsp 345*9880d681SAndroid Build Coastguard Worker// CHECK: mov sp, x30 // encoding: [0xdf,0x03,0x00,0x91] 346*9880d681SAndroid Build Coastguard Worker// CHECK: mov wsp, w20 // encoding: [0x9f,0x02,0x00,0x11] 347*9880d681SAndroid Build Coastguard Worker// CHECK: mov x11, sp // encoding: [0xeb,0x03,0x00,0x91] 348*9880d681SAndroid Build Coastguard Worker// CHECK: mov w24, wsp // encoding: [0xf8,0x03,0x00,0x11] 349*9880d681SAndroid Build Coastguard Worker 350*9880d681SAndroid Build Coastguard Worker// A relocation check (default to lo12, which is the only sane relocation anyway really) 351*9880d681SAndroid Build Coastguard Worker add x0, x4, #:lo12:var 352*9880d681SAndroid Build Coastguard Worker// CHECK: add x0, x4, :lo12:var // encoding: [0x80,0bAAAAAA00,0b00AAAAAA,0x91] 353*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: :lo12:var, kind: fixup_aarch64_add_imm12 354*9880d681SAndroid Build Coastguard Worker 355*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 356*9880d681SAndroid Build Coastguard Worker// Add-sub (shifted register) 357*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 358*9880d681SAndroid Build Coastguard Worker 359*9880d681SAndroid Build Coastguard Worker// As usual, we don't print the canonical forms of many instructions. 360*9880d681SAndroid Build Coastguard Worker 361*9880d681SAndroid Build Coastguard Worker add w3, w5, w7 362*9880d681SAndroid Build Coastguard Worker add wzr, w3, w5 363*9880d681SAndroid Build Coastguard Worker add w20, wzr, w4 364*9880d681SAndroid Build Coastguard Worker add w4, w6, wzr 365*9880d681SAndroid Build Coastguard Worker// CHECK: add w3, w5, w7 // encoding: [0xa3,0x00,0x07,0x0b] 366*9880d681SAndroid Build Coastguard Worker// CHECK: add wzr, w3, w5 // encoding: [0x7f,0x00,0x05,0x0b] 367*9880d681SAndroid Build Coastguard Worker// CHECK: add w20, wzr, w4 // encoding: [0xf4,0x03,0x04,0x0b] 368*9880d681SAndroid Build Coastguard Worker// CHECK: add w4, w6, wzr // encoding: [0xc4,0x00,0x1f,0x0b] 369*9880d681SAndroid Build Coastguard Worker 370*9880d681SAndroid Build Coastguard Worker add w11, w13, w15, lsl #0 371*9880d681SAndroid Build Coastguard Worker add w9, w3, wzr, lsl #10 372*9880d681SAndroid Build Coastguard Worker add w17, w29, w20, lsl #31 373*9880d681SAndroid Build Coastguard Worker add w17, w29, w20, lsl #(31-2) 374*9880d681SAndroid Build Coastguard Worker// CHECK: add w11, w13, w15 // encoding: [0xab,0x01,0x0f,0x0b] 375*9880d681SAndroid Build Coastguard Worker// CHECK: add w9, w3, wzr, lsl #10 // encoding: [0x69,0x28,0x1f,0x0b] 376*9880d681SAndroid Build Coastguard Worker// CHECK: add w17, w29, w20, lsl #31 // encoding: [0xb1,0x7f,0x14,0x0b] 377*9880d681SAndroid Build Coastguard Worker// CHECK: add w17, w29, w20, lsl #29 // encoding: [0xb1,0x77,0x14,0x0b] 378*9880d681SAndroid Build Coastguard Worker 379*9880d681SAndroid Build Coastguard Worker add w21, w22, w23, lsr #0 380*9880d681SAndroid Build Coastguard Worker add w24, w25, w26, lsr #18 381*9880d681SAndroid Build Coastguard Worker add w27, w28, w29, lsr #31 382*9880d681SAndroid Build Coastguard Worker add w27, w28, w29, lsr #(31-2) 383*9880d681SAndroid Build Coastguard Worker// CHECK: add w21, w22, w23, lsr #0 // encoding: [0xd5,0x02,0x57,0x0b] 384*9880d681SAndroid Build Coastguard Worker// CHECK: add w24, w25, w26, lsr #18 // encoding: [0x38,0x4b,0x5a,0x0b] 385*9880d681SAndroid Build Coastguard Worker// CHECK: add w27, w28, w29, lsr #31 // encoding: [0x9b,0x7f,0x5d,0x0b] 386*9880d681SAndroid Build Coastguard Worker// CHECK: add w27, w28, w29, lsr #29 // encoding: [0x9b,0x77,0x5d,0x0b] 387*9880d681SAndroid Build Coastguard Worker 388*9880d681SAndroid Build Coastguard Worker add w2, w3, w4, asr #0 389*9880d681SAndroid Build Coastguard Worker add w5, w6, w7, asr #21 390*9880d681SAndroid Build Coastguard Worker add w8, w9, w10, asr #31 391*9880d681SAndroid Build Coastguard Worker add w8, w9, w10, asr #(31-2) 392*9880d681SAndroid Build Coastguard Worker// CHECK: add w2, w3, w4, asr #0 // encoding: [0x62,0x00,0x84,0x0b] 393*9880d681SAndroid Build Coastguard Worker// CHECK: add w5, w6, w7, asr #21 // encoding: [0xc5,0x54,0x87,0x0b] 394*9880d681SAndroid Build Coastguard Worker// CHECK: add w8, w9, w10, asr #31 // encoding: [0x28,0x7d,0x8a,0x0b] 395*9880d681SAndroid Build Coastguard Worker// CHECK: add w8, w9, w10, asr #29 // encoding: [0x28,0x75,0x8a,0x0b] 396*9880d681SAndroid Build Coastguard Worker 397*9880d681SAndroid Build Coastguard Worker add x3, x5, x7 398*9880d681SAndroid Build Coastguard Worker add xzr, x3, x5 399*9880d681SAndroid Build Coastguard Worker add x20, xzr, x4 400*9880d681SAndroid Build Coastguard Worker add x4, x6, xzr 401*9880d681SAndroid Build Coastguard Worker// CHECK: add x3, x5, x7 // encoding: [0xa3,0x00,0x07,0x8b] 402*9880d681SAndroid Build Coastguard Worker// CHECK: add xzr, x3, x5 // encoding: [0x7f,0x00,0x05,0x8b] 403*9880d681SAndroid Build Coastguard Worker// CHECK: add x20, xzr, x4 // encoding: [0xf4,0x03,0x04,0x8b] 404*9880d681SAndroid Build Coastguard Worker// CHECK: add x4, x6, xzr // encoding: [0xc4,0x00,0x1f,0x8b] 405*9880d681SAndroid Build Coastguard Worker 406*9880d681SAndroid Build Coastguard Worker add x11, x13, x15, lsl #0 407*9880d681SAndroid Build Coastguard Worker add x9, x3, xzr, lsl #10 408*9880d681SAndroid Build Coastguard Worker add x17, x29, x20, lsl #63 409*9880d681SAndroid Build Coastguard Worker add x17, x29, x20, lsl #(63-5) 410*9880d681SAndroid Build Coastguard Worker// CHECK: add x11, x13, x15 // encoding: [0xab,0x01,0x0f,0x8b] 411*9880d681SAndroid Build Coastguard Worker// CHECK: add x9, x3, xzr, lsl #10 // encoding: [0x69,0x28,0x1f,0x8b] 412*9880d681SAndroid Build Coastguard Worker// CHECK: add x17, x29, x20, lsl #63 // encoding: [0xb1,0xff,0x14,0x8b] 413*9880d681SAndroid Build Coastguard Worker// CHECK: add x17, x29, x20, lsl #58 // encoding: [0xb1,0xeb,0x14,0x8b] 414*9880d681SAndroid Build Coastguard Worker 415*9880d681SAndroid Build Coastguard Worker add x21, x22, x23, lsr #0 416*9880d681SAndroid Build Coastguard Worker add x24, x25, x26, lsr #18 417*9880d681SAndroid Build Coastguard Worker add x27, x28, x29, lsr #63 418*9880d681SAndroid Build Coastguard Worker add x17, x29, x20, lsr #(63-5) 419*9880d681SAndroid Build Coastguard Worker// CHECK: add x21, x22, x23, lsr #0 // encoding: [0xd5,0x02,0x57,0x8b] 420*9880d681SAndroid Build Coastguard Worker// CHECK: add x24, x25, x26, lsr #18 // encoding: [0x38,0x4b,0x5a,0x8b] 421*9880d681SAndroid Build Coastguard Worker// CHECK: add x27, x28, x29, lsr #63 // encoding: [0x9b,0xff,0x5d,0x8b] 422*9880d681SAndroid Build Coastguard Worker// CHECK: add x17, x29, x20, lsr #58 // encoding: [0xb1,0xeb,0x54,0x8b] 423*9880d681SAndroid Build Coastguard Worker 424*9880d681SAndroid Build Coastguard Worker add x2, x3, x4, asr #0 425*9880d681SAndroid Build Coastguard Worker add x5, x6, x7, asr #21 426*9880d681SAndroid Build Coastguard Worker add x8, x9, x10, asr #63 427*9880d681SAndroid Build Coastguard Worker add x17, x29, x20, asr #(63-5) 428*9880d681SAndroid Build Coastguard Worker// CHECK: add x2, x3, x4, asr #0 // encoding: [0x62,0x00,0x84,0x8b] 429*9880d681SAndroid Build Coastguard Worker// CHECK: add x5, x6, x7, asr #21 // encoding: [0xc5,0x54,0x87,0x8b] 430*9880d681SAndroid Build Coastguard Worker// CHECK: add x8, x9, x10, asr #63 // encoding: [0x28,0xfd,0x8a,0x8b] 431*9880d681SAndroid Build Coastguard Worker// CHECK: add x17, x29, x20, asr #58 // encoding: [0xb1,0xeb,0x94,0x8b] 432*9880d681SAndroid Build Coastguard Worker 433*9880d681SAndroid Build Coastguard Worker adds w3, w5, w7 434*9880d681SAndroid Build Coastguard Worker adds wzr, w3, w5 435*9880d681SAndroid Build Coastguard Worker adds w20, wzr, w4 436*9880d681SAndroid Build Coastguard Worker adds w4, w6, wzr 437*9880d681SAndroid Build Coastguard Worker// CHECK: adds w3, w5, w7 // encoding: [0xa3,0x00,0x07,0x2b] 438*9880d681SAndroid Build Coastguard Worker// CHECK: {{adds wzr,|cmn}} w3, w5 // encoding: [0x7f,0x00,0x05,0x2b] 439*9880d681SAndroid Build Coastguard Worker// CHECK: adds w20, wzr, w4 // encoding: [0xf4,0x03,0x04,0x2b] 440*9880d681SAndroid Build Coastguard Worker// CHECK: adds w4, w6, wzr // encoding: [0xc4,0x00,0x1f,0x2b] 441*9880d681SAndroid Build Coastguard Worker 442*9880d681SAndroid Build Coastguard Worker adds w11, w13, w15, lsl #0 443*9880d681SAndroid Build Coastguard Worker adds w9, w3, wzr, lsl #10 444*9880d681SAndroid Build Coastguard Worker adds w17, w29, w20, lsl #31 445*9880d681SAndroid Build Coastguard Worker// CHECK: adds w11, w13, w15 // encoding: [0xab,0x01,0x0f,0x2b] 446*9880d681SAndroid Build Coastguard Worker// CHECK: adds w9, w3, wzr, lsl #10 // encoding: [0x69,0x28,0x1f,0x2b] 447*9880d681SAndroid Build Coastguard Worker// CHECK: adds w17, w29, w20, lsl #31 // encoding: [0xb1,0x7f,0x14,0x2b] 448*9880d681SAndroid Build Coastguard Worker 449*9880d681SAndroid Build Coastguard Worker adds w21, w22, w23, lsr #0 450*9880d681SAndroid Build Coastguard Worker adds w24, w25, w26, lsr #18 451*9880d681SAndroid Build Coastguard Worker adds w27, w28, w29, lsr #31 452*9880d681SAndroid Build Coastguard Worker// CHECK: adds w21, w22, w23, lsr #0 // encoding: [0xd5,0x02,0x57,0x2b] 453*9880d681SAndroid Build Coastguard Worker// CHECK: adds w24, w25, w26, lsr #18 // encoding: [0x38,0x4b,0x5a,0x2b] 454*9880d681SAndroid Build Coastguard Worker// CHECK: adds w27, w28, w29, lsr #31 // encoding: [0x9b,0x7f,0x5d,0x2b] 455*9880d681SAndroid Build Coastguard Worker 456*9880d681SAndroid Build Coastguard Worker adds w2, w3, w4, asr #0 457*9880d681SAndroid Build Coastguard Worker adds w5, w6, w7, asr #21 458*9880d681SAndroid Build Coastguard Worker adds w8, w9, w10, asr #31 459*9880d681SAndroid Build Coastguard Worker// CHECK: adds w2, w3, w4, asr #0 // encoding: [0x62,0x00,0x84,0x2b] 460*9880d681SAndroid Build Coastguard Worker// CHECK: adds w5, w6, w7, asr #21 // encoding: [0xc5,0x54,0x87,0x2b] 461*9880d681SAndroid Build Coastguard Worker// CHECK: adds w8, w9, w10, asr #31 // encoding: [0x28,0x7d,0x8a,0x2b] 462*9880d681SAndroid Build Coastguard Worker 463*9880d681SAndroid Build Coastguard Worker adds x3, x5, x7 464*9880d681SAndroid Build Coastguard Worker adds xzr, x3, x5 465*9880d681SAndroid Build Coastguard Worker adds x20, xzr, x4 466*9880d681SAndroid Build Coastguard Worker adds x4, x6, xzr 467*9880d681SAndroid Build Coastguard Worker// CHECK: adds x3, x5, x7 // encoding: [0xa3,0x00,0x07,0xab] 468*9880d681SAndroid Build Coastguard Worker// CHECK: {{adds xzr,|cmn}} x3, x5 // encoding: [0x7f,0x00,0x05,0xab] 469*9880d681SAndroid Build Coastguard Worker// CHECK: adds x20, xzr, x4 // encoding: [0xf4,0x03,0x04,0xab] 470*9880d681SAndroid Build Coastguard Worker// CHECK: adds x4, x6, xzr // encoding: [0xc4,0x00,0x1f,0xab] 471*9880d681SAndroid Build Coastguard Worker 472*9880d681SAndroid Build Coastguard Worker adds x11, x13, x15, lsl #0 473*9880d681SAndroid Build Coastguard Worker adds x9, x3, xzr, lsl #10 474*9880d681SAndroid Build Coastguard Worker adds x17, x29, x20, lsl #63 475*9880d681SAndroid Build Coastguard Worker// CHECK: adds x11, x13, x15 // encoding: [0xab,0x01,0x0f,0xab] 476*9880d681SAndroid Build Coastguard Worker// CHECK: adds x9, x3, xzr, lsl #10 // encoding: [0x69,0x28,0x1f,0xab] 477*9880d681SAndroid Build Coastguard Worker// CHECK: adds x17, x29, x20, lsl #63 // encoding: [0xb1,0xff,0x14,0xab] 478*9880d681SAndroid Build Coastguard Worker 479*9880d681SAndroid Build Coastguard Worker adds x21, x22, x23, lsr #0 480*9880d681SAndroid Build Coastguard Worker adds x24, x25, x26, lsr #18 481*9880d681SAndroid Build Coastguard Worker adds x27, x28, x29, lsr #63 482*9880d681SAndroid Build Coastguard Worker// CHECK: adds x21, x22, x23, lsr #0 // encoding: [0xd5,0x02,0x57,0xab] 483*9880d681SAndroid Build Coastguard Worker// CHECK: adds x24, x25, x26, lsr #18 // encoding: [0x38,0x4b,0x5a,0xab] 484*9880d681SAndroid Build Coastguard Worker// CHECK: adds x27, x28, x29, lsr #63 // encoding: [0x9b,0xff,0x5d,0xab] 485*9880d681SAndroid Build Coastguard Worker 486*9880d681SAndroid Build Coastguard Worker adds x2, x3, x4, asr #0 487*9880d681SAndroid Build Coastguard Worker adds x5, x6, x7, asr #21 488*9880d681SAndroid Build Coastguard Worker adds x8, x9, x10, asr #63 489*9880d681SAndroid Build Coastguard Worker// CHECK: adds x2, x3, x4, asr #0 // encoding: [0x62,0x00,0x84,0xab] 490*9880d681SAndroid Build Coastguard Worker// CHECK: adds x5, x6, x7, asr #21 // encoding: [0xc5,0x54,0x87,0xab] 491*9880d681SAndroid Build Coastguard Worker// CHECK: adds x8, x9, x10, asr #63 // encoding: [0x28,0xfd,0x8a,0xab] 492*9880d681SAndroid Build Coastguard Worker 493*9880d681SAndroid Build Coastguard Worker sub w3, w5, w7 494*9880d681SAndroid Build Coastguard Worker sub wzr, w3, w5 495*9880d681SAndroid Build Coastguard Worker sub w20, wzr, w4 496*9880d681SAndroid Build Coastguard Worker sub w4, w6, wzr 497*9880d681SAndroid Build Coastguard Worker// CHECK: sub w3, w5, w7 // encoding: [0xa3,0x00,0x07,0x4b] 498*9880d681SAndroid Build Coastguard Worker// CHECK: sub wzr, w3, w5 // encoding: [0x7f,0x00,0x05,0x4b] 499*9880d681SAndroid Build Coastguard Worker// CHECK: neg w20, w4 // encoding: [0xf4,0x03,0x04,0x4b] 500*9880d681SAndroid Build Coastguard Worker// CHECK: sub w4, w6, wzr // encoding: [0xc4,0x00,0x1f,0x4b] 501*9880d681SAndroid Build Coastguard Worker 502*9880d681SAndroid Build Coastguard Worker sub w11, w13, w15, lsl #0 503*9880d681SAndroid Build Coastguard Worker sub w9, w3, wzr, lsl #10 504*9880d681SAndroid Build Coastguard Worker sub w17, w29, w20, lsl #31 505*9880d681SAndroid Build Coastguard Worker// CHECK: sub w11, w13, w15 // encoding: [0xab,0x01,0x0f,0x4b] 506*9880d681SAndroid Build Coastguard Worker// CHECK: sub w9, w3, wzr, lsl #10 // encoding: [0x69,0x28,0x1f,0x4b] 507*9880d681SAndroid Build Coastguard Worker// CHECK: sub w17, w29, w20, lsl #31 // encoding: [0xb1,0x7f,0x14,0x4b] 508*9880d681SAndroid Build Coastguard Worker 509*9880d681SAndroid Build Coastguard Worker sub w21, w22, w23, lsr #0 510*9880d681SAndroid Build Coastguard Worker sub w24, w25, w26, lsr #18 511*9880d681SAndroid Build Coastguard Worker sub w27, w28, w29, lsr #31 512*9880d681SAndroid Build Coastguard Worker// CHECK: sub w21, w22, w23, lsr #0 // encoding: [0xd5,0x02,0x57,0x4b] 513*9880d681SAndroid Build Coastguard Worker// CHECK: sub w24, w25, w26, lsr #18 // encoding: [0x38,0x4b,0x5a,0x4b] 514*9880d681SAndroid Build Coastguard Worker// CHECK: sub w27, w28, w29, lsr #31 // encoding: [0x9b,0x7f,0x5d,0x4b] 515*9880d681SAndroid Build Coastguard Worker 516*9880d681SAndroid Build Coastguard Worker sub w2, w3, w4, asr #0 517*9880d681SAndroid Build Coastguard Worker sub w5, w6, w7, asr #21 518*9880d681SAndroid Build Coastguard Worker sub w8, w9, w10, asr #31 519*9880d681SAndroid Build Coastguard Worker// CHECK: sub w2, w3, w4, asr #0 // encoding: [0x62,0x00,0x84,0x4b] 520*9880d681SAndroid Build Coastguard Worker// CHECK: sub w5, w6, w7, asr #21 // encoding: [0xc5,0x54,0x87,0x4b] 521*9880d681SAndroid Build Coastguard Worker// CHECK: sub w8, w9, w10, asr #31 // encoding: [0x28,0x7d,0x8a,0x4b] 522*9880d681SAndroid Build Coastguard Worker 523*9880d681SAndroid Build Coastguard Worker sub x3, x5, x7 524*9880d681SAndroid Build Coastguard Worker sub xzr, x3, x5 525*9880d681SAndroid Build Coastguard Worker sub x20, xzr, x4 526*9880d681SAndroid Build Coastguard Worker sub x4, x6, xzr 527*9880d681SAndroid Build Coastguard Worker// CHECK: sub x3, x5, x7 // encoding: [0xa3,0x00,0x07,0xcb] 528*9880d681SAndroid Build Coastguard Worker// CHECK: sub xzr, x3, x5 // encoding: [0x7f,0x00,0x05,0xcb] 529*9880d681SAndroid Build Coastguard Worker// CHECK: neg x20, x4 // encoding: [0xf4,0x03,0x04,0xcb] 530*9880d681SAndroid Build Coastguard Worker// CHECK: sub x4, x6, xzr // encoding: [0xc4,0x00,0x1f,0xcb] 531*9880d681SAndroid Build Coastguard Worker 532*9880d681SAndroid Build Coastguard Worker sub x11, x13, x15, lsl #0 533*9880d681SAndroid Build Coastguard Worker sub x9, x3, xzr, lsl #10 534*9880d681SAndroid Build Coastguard Worker sub x17, x29, x20, lsl #63 535*9880d681SAndroid Build Coastguard Worker// CHECK: sub x11, x13, x15 // encoding: [0xab,0x01,0x0f,0xcb] 536*9880d681SAndroid Build Coastguard Worker// CHECK: sub x9, x3, xzr, lsl #10 // encoding: [0x69,0x28,0x1f,0xcb] 537*9880d681SAndroid Build Coastguard Worker// CHECK: sub x17, x29, x20, lsl #63 // encoding: [0xb1,0xff,0x14,0xcb] 538*9880d681SAndroid Build Coastguard Worker 539*9880d681SAndroid Build Coastguard Worker sub x21, x22, x23, lsr #0 540*9880d681SAndroid Build Coastguard Worker sub x24, x25, x26, lsr #18 541*9880d681SAndroid Build Coastguard Worker sub x27, x28, x29, lsr #63 542*9880d681SAndroid Build Coastguard Worker// CHECK: sub x21, x22, x23, lsr #0 // encoding: [0xd5,0x02,0x57,0xcb] 543*9880d681SAndroid Build Coastguard Worker// CHECK: sub x24, x25, x26, lsr #18 // encoding: [0x38,0x4b,0x5a,0xcb] 544*9880d681SAndroid Build Coastguard Worker// CHECK: sub x27, x28, x29, lsr #63 // encoding: [0x9b,0xff,0x5d,0xcb] 545*9880d681SAndroid Build Coastguard Worker 546*9880d681SAndroid Build Coastguard Worker sub x2, x3, x4, asr #0 547*9880d681SAndroid Build Coastguard Worker sub x5, x6, x7, asr #21 548*9880d681SAndroid Build Coastguard Worker sub x8, x9, x10, asr #63 549*9880d681SAndroid Build Coastguard Worker// CHECK: sub x2, x3, x4, asr #0 // encoding: [0x62,0x00,0x84,0xcb] 550*9880d681SAndroid Build Coastguard Worker// CHECK: sub x5, x6, x7, asr #21 // encoding: [0xc5,0x54,0x87,0xcb] 551*9880d681SAndroid Build Coastguard Worker// CHECK: sub x8, x9, x10, asr #63 // encoding: [0x28,0xfd,0x8a,0xcb] 552*9880d681SAndroid Build Coastguard Worker 553*9880d681SAndroid Build Coastguard Worker subs w3, w5, w7 554*9880d681SAndroid Build Coastguard Worker subs wzr, w3, w5 555*9880d681SAndroid Build Coastguard Worker subs w20, wzr, w4 556*9880d681SAndroid Build Coastguard Worker subs w4, w6, wzr 557*9880d681SAndroid Build Coastguard Worker// CHECK: subs w3, w5, w7 // encoding: [0xa3,0x00,0x07,0x6b] 558*9880d681SAndroid Build Coastguard Worker// CHECK: {{subs wzr,|cmp}} w3, w5 // encoding: [0x7f,0x00,0x05,0x6b] 559*9880d681SAndroid Build Coastguard Worker// CHECK: negs w20, w4 // encoding: [0xf4,0x03,0x04,0x6b] 560*9880d681SAndroid Build Coastguard Worker// CHECK: subs w4, w6, wzr // encoding: [0xc4,0x00,0x1f,0x6b] 561*9880d681SAndroid Build Coastguard Worker 562*9880d681SAndroid Build Coastguard Worker subs w11, w13, w15, lsl #0 563*9880d681SAndroid Build Coastguard Worker subs w9, w3, wzr, lsl #10 564*9880d681SAndroid Build Coastguard Worker subs w17, w29, w20, lsl #31 565*9880d681SAndroid Build Coastguard Worker// CHECK: subs w11, w13, w15 // encoding: [0xab,0x01,0x0f,0x6b] 566*9880d681SAndroid Build Coastguard Worker// CHECK: subs w9, w3, wzr, lsl #10 // encoding: [0x69,0x28,0x1f,0x6b] 567*9880d681SAndroid Build Coastguard Worker// CHECK: subs w17, w29, w20, lsl #31 // encoding: [0xb1,0x7f,0x14,0x6b] 568*9880d681SAndroid Build Coastguard Worker 569*9880d681SAndroid Build Coastguard Worker subs w21, w22, w23, lsr #0 570*9880d681SAndroid Build Coastguard Worker subs w24, w25, w26, lsr #18 571*9880d681SAndroid Build Coastguard Worker subs w27, w28, w29, lsr #31 572*9880d681SAndroid Build Coastguard Worker// CHECK: subs w21, w22, w23, lsr #0 // encoding: [0xd5,0x02,0x57,0x6b] 573*9880d681SAndroid Build Coastguard Worker// CHECK: subs w24, w25, w26, lsr #18 // encoding: [0x38,0x4b,0x5a,0x6b] 574*9880d681SAndroid Build Coastguard Worker// CHECK: subs w27, w28, w29, lsr #31 // encoding: [0x9b,0x7f,0x5d,0x6b] 575*9880d681SAndroid Build Coastguard Worker 576*9880d681SAndroid Build Coastguard Worker subs w2, w3, w4, asr #0 577*9880d681SAndroid Build Coastguard Worker subs w5, w6, w7, asr #21 578*9880d681SAndroid Build Coastguard Worker subs w8, w9, w10, asr #31 579*9880d681SAndroid Build Coastguard Worker// CHECK: subs w2, w3, w4, asr #0 // encoding: [0x62,0x00,0x84,0x6b] 580*9880d681SAndroid Build Coastguard Worker// CHECK: subs w5, w6, w7, asr #21 // encoding: [0xc5,0x54,0x87,0x6b] 581*9880d681SAndroid Build Coastguard Worker// CHECK: subs w8, w9, w10, asr #31 // encoding: [0x28,0x7d,0x8a,0x6b] 582*9880d681SAndroid Build Coastguard Worker 583*9880d681SAndroid Build Coastguard Worker subs x3, x5, x7 584*9880d681SAndroid Build Coastguard Worker subs xzr, x3, x5 585*9880d681SAndroid Build Coastguard Worker subs x20, xzr, x4 586*9880d681SAndroid Build Coastguard Worker subs x4, x6, xzr 587*9880d681SAndroid Build Coastguard Worker// CHECK: subs x3, x5, x7 // encoding: [0xa3,0x00,0x07,0xeb] 588*9880d681SAndroid Build Coastguard Worker// CHECK: {{subs xzr,|cmp}} x3, x5 // encoding: [0x7f,0x00,0x05,0xeb] 589*9880d681SAndroid Build Coastguard Worker// CHECK: negs x20, x4 // encoding: [0xf4,0x03,0x04,0xeb] 590*9880d681SAndroid Build Coastguard Worker// CHECK: subs x4, x6, xzr // encoding: [0xc4,0x00,0x1f,0xeb] 591*9880d681SAndroid Build Coastguard Worker 592*9880d681SAndroid Build Coastguard Worker subs x11, x13, x15, lsl #0 593*9880d681SAndroid Build Coastguard Worker subs x9, x3, xzr, lsl #10 594*9880d681SAndroid Build Coastguard Worker subs x17, x29, x20, lsl #63 595*9880d681SAndroid Build Coastguard Worker// CHECK: subs x11, x13, x15 // encoding: [0xab,0x01,0x0f,0xeb] 596*9880d681SAndroid Build Coastguard Worker// CHECK: subs x9, x3, xzr, lsl #10 // encoding: [0x69,0x28,0x1f,0xeb] 597*9880d681SAndroid Build Coastguard Worker// CHECK: subs x17, x29, x20, lsl #63 // encoding: [0xb1,0xff,0x14,0xeb] 598*9880d681SAndroid Build Coastguard Worker 599*9880d681SAndroid Build Coastguard Worker subs x21, x22, x23, lsr #0 600*9880d681SAndroid Build Coastguard Worker subs x24, x25, x26, lsr #18 601*9880d681SAndroid Build Coastguard Worker subs x27, x28, x29, lsr #63 602*9880d681SAndroid Build Coastguard Worker// CHECK: subs x21, x22, x23, lsr #0 // encoding: [0xd5,0x02,0x57,0xeb] 603*9880d681SAndroid Build Coastguard Worker// CHECK: subs x24, x25, x26, lsr #18 // encoding: [0x38,0x4b,0x5a,0xeb] 604*9880d681SAndroid Build Coastguard Worker// CHECK: subs x27, x28, x29, lsr #63 // encoding: [0x9b,0xff,0x5d,0xeb] 605*9880d681SAndroid Build Coastguard Worker 606*9880d681SAndroid Build Coastguard Worker subs x2, x3, x4, asr #0 607*9880d681SAndroid Build Coastguard Worker subs x5, x6, x7, asr #21 608*9880d681SAndroid Build Coastguard Worker subs x8, x9, x10, asr #63 609*9880d681SAndroid Build Coastguard Worker// CHECK: subs x2, x3, x4, asr #0 // encoding: [0x62,0x00,0x84,0xeb] 610*9880d681SAndroid Build Coastguard Worker// CHECK: subs x5, x6, x7, asr #21 // encoding: [0xc5,0x54,0x87,0xeb] 611*9880d681SAndroid Build Coastguard Worker// CHECK: subs x8, x9, x10, asr #63 // encoding: [0x28,0xfd,0x8a,0xeb] 612*9880d681SAndroid Build Coastguard Worker 613*9880d681SAndroid Build Coastguard Worker cmn w0, w3 614*9880d681SAndroid Build Coastguard Worker cmn wzr, w4 615*9880d681SAndroid Build Coastguard Worker cmn w5, wzr 616*9880d681SAndroid Build Coastguard Worker cmn wsp, w6 617*9880d681SAndroid Build Coastguard Worker// CHECK: cmn w0, w3 // encoding: [0x1f,0x00,0x03,0x2b] 618*9880d681SAndroid Build Coastguard Worker// CHECK: cmn wzr, w4 // encoding: [0xff,0x03,0x04,0x2b] 619*9880d681SAndroid Build Coastguard Worker// CHECK: cmn w5, wzr // encoding: [0xbf,0x00,0x1f,0x2b] 620*9880d681SAndroid Build Coastguard Worker// CHECK: cmn wsp, w6 // encoding: [0xff,0x43,0x26,0x2b] 621*9880d681SAndroid Build Coastguard Worker 622*9880d681SAndroid Build Coastguard Worker cmn w6, w7, lsl #0 623*9880d681SAndroid Build Coastguard Worker cmn w8, w9, lsl #15 624*9880d681SAndroid Build Coastguard Worker cmn w10, w11, lsl #31 625*9880d681SAndroid Build Coastguard Worker// CHECK: cmn w6, w7 // encoding: [0xdf,0x00,0x07,0x2b] 626*9880d681SAndroid Build Coastguard Worker// CHECK: cmn w8, w9, lsl #15 // encoding: [0x1f,0x3d,0x09,0x2b] 627*9880d681SAndroid Build Coastguard Worker// CHECK: cmn w10, w11, lsl #31 // encoding: [0x5f,0x7d,0x0b,0x2b] 628*9880d681SAndroid Build Coastguard Worker 629*9880d681SAndroid Build Coastguard Worker cmn w12, w13, lsr #0 630*9880d681SAndroid Build Coastguard Worker cmn w14, w15, lsr #21 631*9880d681SAndroid Build Coastguard Worker cmn w16, w17, lsr #31 632*9880d681SAndroid Build Coastguard Worker// CHECK: cmn w12, w13, lsr #0 // encoding: [0x9f,0x01,0x4d,0x2b] 633*9880d681SAndroid Build Coastguard Worker// CHECK: cmn w14, w15, lsr #21 // encoding: [0xdf,0x55,0x4f,0x2b] 634*9880d681SAndroid Build Coastguard Worker// CHECK: cmn w16, w17, lsr #31 // encoding: [0x1f,0x7e,0x51,0x2b] 635*9880d681SAndroid Build Coastguard Worker 636*9880d681SAndroid Build Coastguard Worker cmn w18, w19, asr #0 637*9880d681SAndroid Build Coastguard Worker cmn w20, w21, asr #22 638*9880d681SAndroid Build Coastguard Worker cmn w22, w23, asr #31 639*9880d681SAndroid Build Coastguard Worker// CHECK: cmn w18, w19, asr #0 // encoding: [0x5f,0x02,0x93,0x2b] 640*9880d681SAndroid Build Coastguard Worker// CHECK: cmn w20, w21, asr #22 // encoding: [0x9f,0x5a,0x95,0x2b] 641*9880d681SAndroid Build Coastguard Worker// CHECK: cmn w22, w23, asr #31 // encoding: [0xdf,0x7e,0x97,0x2b] 642*9880d681SAndroid Build Coastguard Worker 643*9880d681SAndroid Build Coastguard Worker cmn x0, x3 644*9880d681SAndroid Build Coastguard Worker cmn xzr, x4 645*9880d681SAndroid Build Coastguard Worker cmn x5, xzr 646*9880d681SAndroid Build Coastguard Worker cmn sp, x6 647*9880d681SAndroid Build Coastguard Worker// CHECK: cmn x0, x3 // encoding: [0x1f,0x00,0x03,0xab] 648*9880d681SAndroid Build Coastguard Worker// CHECK: cmn xzr, x4 // encoding: [0xff,0x03,0x04,0xab] 649*9880d681SAndroid Build Coastguard Worker// CHECK: cmn x5, xzr // encoding: [0xbf,0x00,0x1f,0xab] 650*9880d681SAndroid Build Coastguard Worker// CHECK: cmn sp, x6 // encoding: [0xff,0x63,0x26,0xab] 651*9880d681SAndroid Build Coastguard Worker 652*9880d681SAndroid Build Coastguard Worker cmn x6, x7, lsl #0 653*9880d681SAndroid Build Coastguard Worker cmn x8, x9, lsl #15 654*9880d681SAndroid Build Coastguard Worker cmn x10, x11, lsl #63 655*9880d681SAndroid Build Coastguard Worker// CHECK: cmn x6, x7 // encoding: [0xdf,0x00,0x07,0xab] 656*9880d681SAndroid Build Coastguard Worker// CHECK: cmn x8, x9, lsl #15 // encoding: [0x1f,0x3d,0x09,0xab] 657*9880d681SAndroid Build Coastguard Worker// CHECK: cmn x10, x11, lsl #63 // encoding: [0x5f,0xfd,0x0b,0xab] 658*9880d681SAndroid Build Coastguard Worker 659*9880d681SAndroid Build Coastguard Worker cmn x12, x13, lsr #0 660*9880d681SAndroid Build Coastguard Worker cmn x14, x15, lsr #41 661*9880d681SAndroid Build Coastguard Worker cmn x16, x17, lsr #63 662*9880d681SAndroid Build Coastguard Worker// CHECK: cmn x12, x13, lsr #0 // encoding: [0x9f,0x01,0x4d,0xab] 663*9880d681SAndroid Build Coastguard Worker// CHECK: cmn x14, x15, lsr #41 // encoding: [0xdf,0xa5,0x4f,0xab] 664*9880d681SAndroid Build Coastguard Worker// CHECK: cmn x16, x17, lsr #63 // encoding: [0x1f,0xfe,0x51,0xab] 665*9880d681SAndroid Build Coastguard Worker 666*9880d681SAndroid Build Coastguard Worker cmn x18, x19, asr #0 667*9880d681SAndroid Build Coastguard Worker cmn x20, x21, asr #55 668*9880d681SAndroid Build Coastguard Worker cmn x22, x23, asr #63 669*9880d681SAndroid Build Coastguard Worker// CHECK: cmn x18, x19, asr #0 // encoding: [0x5f,0x02,0x93,0xab] 670*9880d681SAndroid Build Coastguard Worker// CHECK: cmn x20, x21, asr #55 // encoding: [0x9f,0xde,0x95,0xab] 671*9880d681SAndroid Build Coastguard Worker// CHECK: cmn x22, x23, asr #63 // encoding: [0xdf,0xfe,0x97,0xab] 672*9880d681SAndroid Build Coastguard Worker 673*9880d681SAndroid Build Coastguard Worker cmp w0, w3 674*9880d681SAndroid Build Coastguard Worker cmp wzr, w4 675*9880d681SAndroid Build Coastguard Worker cmp w5, wzr 676*9880d681SAndroid Build Coastguard Worker cmp wsp, w6 677*9880d681SAndroid Build Coastguard Worker// CHECK: cmp w0, w3 // encoding: [0x1f,0x00,0x03,0x6b] 678*9880d681SAndroid Build Coastguard Worker// CHECK: cmp wzr, w4 // encoding: [0xff,0x03,0x04,0x6b] 679*9880d681SAndroid Build Coastguard Worker// CHECK: cmp w5, wzr // encoding: [0xbf,0x00,0x1f,0x6b] 680*9880d681SAndroid Build Coastguard Worker// CHECK: cmp wsp, w6 // encoding: [0xff,0x43,0x26,0x6b] 681*9880d681SAndroid Build Coastguard Worker 682*9880d681SAndroid Build Coastguard Worker cmp w6, w7, lsl #0 683*9880d681SAndroid Build Coastguard Worker cmp w8, w9, lsl #15 684*9880d681SAndroid Build Coastguard Worker cmp w10, w11, lsl #31 685*9880d681SAndroid Build Coastguard Worker// CHECK: cmp w6, w7 // encoding: [0xdf,0x00,0x07,0x6b] 686*9880d681SAndroid Build Coastguard Worker// CHECK: cmp w8, w9, lsl #15 // encoding: [0x1f,0x3d,0x09,0x6b] 687*9880d681SAndroid Build Coastguard Worker// CHECK: cmp w10, w11, lsl #31 // encoding: [0x5f,0x7d,0x0b,0x6b] 688*9880d681SAndroid Build Coastguard Worker 689*9880d681SAndroid Build Coastguard Worker cmp w12, w13, lsr #0 690*9880d681SAndroid Build Coastguard Worker cmp w14, w15, lsr #21 691*9880d681SAndroid Build Coastguard Worker cmp w16, w17, lsr #31 692*9880d681SAndroid Build Coastguard Worker// CHECK: cmp w12, w13, lsr #0 // encoding: [0x9f,0x01,0x4d,0x6b] 693*9880d681SAndroid Build Coastguard Worker// CHECK: cmp w14, w15, lsr #21 // encoding: [0xdf,0x55,0x4f,0x6b] 694*9880d681SAndroid Build Coastguard Worker// CHECK: cmp w16, w17, lsr #31 // encoding: [0x1f,0x7e,0x51,0x6b] 695*9880d681SAndroid Build Coastguard Worker 696*9880d681SAndroid Build Coastguard Worker cmp w18, w19, asr #0 697*9880d681SAndroid Build Coastguard Worker cmp w20, w21, asr #22 698*9880d681SAndroid Build Coastguard Worker cmp w22, w23, asr #31 699*9880d681SAndroid Build Coastguard Worker// CHECK: cmp w18, w19, asr #0 // encoding: [0x5f,0x02,0x93,0x6b] 700*9880d681SAndroid Build Coastguard Worker// CHECK: cmp w20, w21, asr #22 // encoding: [0x9f,0x5a,0x95,0x6b] 701*9880d681SAndroid Build Coastguard Worker// CHECK: cmp w22, w23, asr #31 // encoding: [0xdf,0x7e,0x97,0x6b] 702*9880d681SAndroid Build Coastguard Worker 703*9880d681SAndroid Build Coastguard Worker cmp x0, x3 704*9880d681SAndroid Build Coastguard Worker cmp xzr, x4 705*9880d681SAndroid Build Coastguard Worker cmp x5, xzr 706*9880d681SAndroid Build Coastguard Worker cmp sp, x6 707*9880d681SAndroid Build Coastguard Worker// CHECK: cmp x0, x3 // encoding: [0x1f,0x00,0x03,0xeb] 708*9880d681SAndroid Build Coastguard Worker// CHECK: cmp xzr, x4 // encoding: [0xff,0x03,0x04,0xeb] 709*9880d681SAndroid Build Coastguard Worker// CHECK: cmp x5, xzr // encoding: [0xbf,0x00,0x1f,0xeb] 710*9880d681SAndroid Build Coastguard Worker// CHECK: cmp sp, x6 // encoding: [0xff,0x63,0x26,0xeb] 711*9880d681SAndroid Build Coastguard Worker 712*9880d681SAndroid Build Coastguard Worker cmp x6, x7, lsl #0 713*9880d681SAndroid Build Coastguard Worker cmp x8, x9, lsl #15 714*9880d681SAndroid Build Coastguard Worker cmp x10, x11, lsl #63 715*9880d681SAndroid Build Coastguard Worker// CHECK: cmp x6, x7 // encoding: [0xdf,0x00,0x07,0xeb] 716*9880d681SAndroid Build Coastguard Worker// CHECK: cmp x8, x9, lsl #15 // encoding: [0x1f,0x3d,0x09,0xeb] 717*9880d681SAndroid Build Coastguard Worker// CHECK: cmp x10, x11, lsl #63 // encoding: [0x5f,0xfd,0x0b,0xeb] 718*9880d681SAndroid Build Coastguard Worker 719*9880d681SAndroid Build Coastguard Worker cmp x12, x13, lsr #0 720*9880d681SAndroid Build Coastguard Worker cmp x14, x15, lsr #41 721*9880d681SAndroid Build Coastguard Worker cmp x16, x17, lsr #63 722*9880d681SAndroid Build Coastguard Worker// CHECK: cmp x12, x13, lsr #0 // encoding: [0x9f,0x01,0x4d,0xeb] 723*9880d681SAndroid Build Coastguard Worker// CHECK: cmp x14, x15, lsr #41 // encoding: [0xdf,0xa5,0x4f,0xeb] 724*9880d681SAndroid Build Coastguard Worker// CHECK: cmp x16, x17, lsr #63 // encoding: [0x1f,0xfe,0x51,0xeb] 725*9880d681SAndroid Build Coastguard Worker 726*9880d681SAndroid Build Coastguard Worker cmp x18, x19, asr #0 727*9880d681SAndroid Build Coastguard Worker cmp x20, x21, asr #55 728*9880d681SAndroid Build Coastguard Worker cmp x22, x23, asr #63 729*9880d681SAndroid Build Coastguard Worker// CHECK: cmp x18, x19, asr #0 // encoding: [0x5f,0x02,0x93,0xeb] 730*9880d681SAndroid Build Coastguard Worker// CHECK: cmp x20, x21, asr #55 // encoding: [0x9f,0xde,0x95,0xeb] 731*9880d681SAndroid Build Coastguard Worker// CHECK: cmp x22, x23, asr #63 // encoding: [0xdf,0xfe,0x97,0xeb] 732*9880d681SAndroid Build Coastguard Worker 733*9880d681SAndroid Build Coastguard Worker neg w29, w30 734*9880d681SAndroid Build Coastguard Worker neg w30, wzr 735*9880d681SAndroid Build Coastguard Worker neg wzr, w0 736*9880d681SAndroid Build Coastguard Worker// CHECK: neg w29, w30 // encoding: [0xfd,0x03,0x1e,0x4b] 737*9880d681SAndroid Build Coastguard Worker// CHECK: neg w30, wzr // encoding: [0xfe,0x03,0x1f,0x4b] 738*9880d681SAndroid Build Coastguard Worker// CHECK: neg wzr, w0 // encoding: [0xff,0x03,0x00,0x4b] 739*9880d681SAndroid Build Coastguard Worker 740*9880d681SAndroid Build Coastguard Worker neg w28, w27, lsl #0 741*9880d681SAndroid Build Coastguard Worker neg w26, w25, lsl #29 742*9880d681SAndroid Build Coastguard Worker neg w24, w23, lsl #31 743*9880d681SAndroid Build Coastguard Worker 744*9880d681SAndroid Build Coastguard Worker// CHECK: neg w28, w27 // encoding: [0xfc,0x03,0x1b,0x4b] 745*9880d681SAndroid Build Coastguard Worker// CHECK: neg w26, w25, lsl #29 // encoding: [0xfa,0x77,0x19,0x4b] 746*9880d681SAndroid Build Coastguard Worker// CHECK: neg w24, w23, lsl #31 // encoding: [0xf8,0x7f,0x17,0x4b] 747*9880d681SAndroid Build Coastguard Worker 748*9880d681SAndroid Build Coastguard Worker neg w22, w21, lsr #0 749*9880d681SAndroid Build Coastguard Worker neg w20, w19, lsr #1 750*9880d681SAndroid Build Coastguard Worker neg w18, w17, lsr #31 751*9880d681SAndroid Build Coastguard Worker// CHECK: neg w22, w21, lsr #0 // encoding: [0xf6,0x03,0x55,0x4b] 752*9880d681SAndroid Build Coastguard Worker// CHECK: neg w20, w19, lsr #1 // encoding: [0xf4,0x07,0x53,0x4b] 753*9880d681SAndroid Build Coastguard Worker// CHECK: neg w18, w17, lsr #31 // encoding: [0xf2,0x7f,0x51,0x4b] 754*9880d681SAndroid Build Coastguard Worker 755*9880d681SAndroid Build Coastguard Worker neg w16, w15, asr #0 756*9880d681SAndroid Build Coastguard Worker neg w14, w13, asr #12 757*9880d681SAndroid Build Coastguard Worker neg w12, w11, asr #31 758*9880d681SAndroid Build Coastguard Worker// CHECK: neg w16, w15, asr #0 // encoding: [0xf0,0x03,0x8f,0x4b] 759*9880d681SAndroid Build Coastguard Worker// CHECK: neg w14, w13, asr #12 // encoding: [0xee,0x33,0x8d,0x4b] 760*9880d681SAndroid Build Coastguard Worker// CHECK: neg w12, w11, asr #31 // encoding: [0xec,0x7f,0x8b,0x4b] 761*9880d681SAndroid Build Coastguard Worker 762*9880d681SAndroid Build Coastguard Worker neg x29, x30 763*9880d681SAndroid Build Coastguard Worker neg x30, xzr 764*9880d681SAndroid Build Coastguard Worker neg xzr, x0 765*9880d681SAndroid Build Coastguard Worker// CHECK: neg x29, x30 // encoding: [0xfd,0x03,0x1e,0xcb] 766*9880d681SAndroid Build Coastguard Worker// CHECK: neg x30, xzr // encoding: [0xfe,0x03,0x1f,0xcb] 767*9880d681SAndroid Build Coastguard Worker// CHECK: neg xzr, x0 // encoding: [0xff,0x03,0x00,0xcb] 768*9880d681SAndroid Build Coastguard Worker 769*9880d681SAndroid Build Coastguard Worker neg x28, x27, lsl #0 770*9880d681SAndroid Build Coastguard Worker neg x26, x25, lsl #29 771*9880d681SAndroid Build Coastguard Worker neg x24, x23, lsl #31 772*9880d681SAndroid Build Coastguard Worker 773*9880d681SAndroid Build Coastguard Worker// CHECK: neg x28, x27 // encoding: [0xfc,0x03,0x1b,0xcb] 774*9880d681SAndroid Build Coastguard Worker// CHECK: neg x26, x25, lsl #29 // encoding: [0xfa,0x77,0x19,0xcb] 775*9880d681SAndroid Build Coastguard Worker// CHECK: neg x24, x23, lsl #31 // encoding: [0xf8,0x7f,0x17,0xcb] 776*9880d681SAndroid Build Coastguard Worker 777*9880d681SAndroid Build Coastguard Worker neg x22, x21, lsr #0 778*9880d681SAndroid Build Coastguard Worker neg x20, x19, lsr #1 779*9880d681SAndroid Build Coastguard Worker neg x18, x17, lsr #31 780*9880d681SAndroid Build Coastguard Worker// CHECK: neg x22, x21, lsr #0 // encoding: [0xf6,0x03,0x55,0xcb] 781*9880d681SAndroid Build Coastguard Worker// CHECK: neg x20, x19, lsr #1 // encoding: [0xf4,0x07,0x53,0xcb] 782*9880d681SAndroid Build Coastguard Worker// CHECK: neg x18, x17, lsr #31 // encoding: [0xf2,0x7f,0x51,0xcb] 783*9880d681SAndroid Build Coastguard Worker 784*9880d681SAndroid Build Coastguard Worker neg x16, x15, asr #0 785*9880d681SAndroid Build Coastguard Worker neg x14, x13, asr #12 786*9880d681SAndroid Build Coastguard Worker neg x12, x11, asr #31 787*9880d681SAndroid Build Coastguard Worker// CHECK: neg x16, x15, asr #0 // encoding: [0xf0,0x03,0x8f,0xcb] 788*9880d681SAndroid Build Coastguard Worker// CHECK: neg x14, x13, asr #12 // encoding: [0xee,0x33,0x8d,0xcb] 789*9880d681SAndroid Build Coastguard Worker// CHECK: neg x12, x11, asr #31 // encoding: [0xec,0x7f,0x8b,0xcb] 790*9880d681SAndroid Build Coastguard Worker 791*9880d681SAndroid Build Coastguard Worker negs w29, w30 792*9880d681SAndroid Build Coastguard Worker negs w30, wzr 793*9880d681SAndroid Build Coastguard Worker negs wzr, w0 794*9880d681SAndroid Build Coastguard Worker// CHECK: negs w29, w30 // encoding: [0xfd,0x03,0x1e,0x6b] 795*9880d681SAndroid Build Coastguard Worker// CHECK: negs w30, wzr // encoding: [0xfe,0x03,0x1f,0x6b] 796*9880d681SAndroid Build Coastguard Worker// CHECK: cmp wzr, w0 // encoding: [0xff,0x03,0x00,0x6b] 797*9880d681SAndroid Build Coastguard Worker 798*9880d681SAndroid Build Coastguard Worker negs w28, w27, lsl #0 799*9880d681SAndroid Build Coastguard Worker negs w26, w25, lsl #29 800*9880d681SAndroid Build Coastguard Worker negs w24, w23, lsl #31 801*9880d681SAndroid Build Coastguard Worker 802*9880d681SAndroid Build Coastguard Worker// CHECK: negs w28, w27 // encoding: [0xfc,0x03,0x1b,0x6b] 803*9880d681SAndroid Build Coastguard Worker// CHECK: negs w26, w25, lsl #29 // encoding: [0xfa,0x77,0x19,0x6b] 804*9880d681SAndroid Build Coastguard Worker// CHECK: negs w24, w23, lsl #31 // encoding: [0xf8,0x7f,0x17,0x6b] 805*9880d681SAndroid Build Coastguard Worker 806*9880d681SAndroid Build Coastguard Worker negs w22, w21, lsr #0 807*9880d681SAndroid Build Coastguard Worker negs w20, w19, lsr #1 808*9880d681SAndroid Build Coastguard Worker negs w18, w17, lsr #31 809*9880d681SAndroid Build Coastguard Worker// CHECK: negs w22, w21, lsr #0 // encoding: [0xf6,0x03,0x55,0x6b] 810*9880d681SAndroid Build Coastguard Worker// CHECK: negs w20, w19, lsr #1 // encoding: [0xf4,0x07,0x53,0x6b] 811*9880d681SAndroid Build Coastguard Worker// CHECK: negs w18, w17, lsr #31 // encoding: [0xf2,0x7f,0x51,0x6b] 812*9880d681SAndroid Build Coastguard Worker 813*9880d681SAndroid Build Coastguard Worker negs w16, w15, asr #0 814*9880d681SAndroid Build Coastguard Worker negs w14, w13, asr #12 815*9880d681SAndroid Build Coastguard Worker negs w12, w11, asr #31 816*9880d681SAndroid Build Coastguard Worker// CHECK: negs w16, w15, asr #0 // encoding: [0xf0,0x03,0x8f,0x6b] 817*9880d681SAndroid Build Coastguard Worker// CHECK: negs w14, w13, asr #12 // encoding: [0xee,0x33,0x8d,0x6b] 818*9880d681SAndroid Build Coastguard Worker// CHECK: negs w12, w11, asr #31 // encoding: [0xec,0x7f,0x8b,0x6b] 819*9880d681SAndroid Build Coastguard Worker 820*9880d681SAndroid Build Coastguard Worker negs x29, x30 821*9880d681SAndroid Build Coastguard Worker negs x30, xzr 822*9880d681SAndroid Build Coastguard Worker negs xzr, x0 823*9880d681SAndroid Build Coastguard Worker// CHECK: negs x29, x30 // encoding: [0xfd,0x03,0x1e,0xeb] 824*9880d681SAndroid Build Coastguard Worker// CHECK: negs x30, xzr // encoding: [0xfe,0x03,0x1f,0xeb] 825*9880d681SAndroid Build Coastguard Worker// CHECK: cmp xzr, x0 // encoding: [0xff,0x03,0x00,0xeb] 826*9880d681SAndroid Build Coastguard Worker 827*9880d681SAndroid Build Coastguard Worker negs x28, x27, lsl #0 828*9880d681SAndroid Build Coastguard Worker negs x26, x25, lsl #29 829*9880d681SAndroid Build Coastguard Worker negs x24, x23, lsl #31 830*9880d681SAndroid Build Coastguard Worker 831*9880d681SAndroid Build Coastguard Worker// CHECK: negs x28, x27 // encoding: [0xfc,0x03,0x1b,0xeb] 832*9880d681SAndroid Build Coastguard Worker// CHECK: negs x26, x25, lsl #29 // encoding: [0xfa,0x77,0x19,0xeb] 833*9880d681SAndroid Build Coastguard Worker// CHECK: negs x24, x23, lsl #31 // encoding: [0xf8,0x7f,0x17,0xeb] 834*9880d681SAndroid Build Coastguard Worker 835*9880d681SAndroid Build Coastguard Worker negs x22, x21, lsr #0 836*9880d681SAndroid Build Coastguard Worker negs x20, x19, lsr #1 837*9880d681SAndroid Build Coastguard Worker negs x18, x17, lsr #31 838*9880d681SAndroid Build Coastguard Worker// CHECK: negs x22, x21, lsr #0 // encoding: [0xf6,0x03,0x55,0xeb] 839*9880d681SAndroid Build Coastguard Worker// CHECK: negs x20, x19, lsr #1 // encoding: [0xf4,0x07,0x53,0xeb] 840*9880d681SAndroid Build Coastguard Worker// CHECK: negs x18, x17, lsr #31 // encoding: [0xf2,0x7f,0x51,0xeb] 841*9880d681SAndroid Build Coastguard Worker 842*9880d681SAndroid Build Coastguard Worker negs x16, x15, asr #0 843*9880d681SAndroid Build Coastguard Worker negs x14, x13, asr #12 844*9880d681SAndroid Build Coastguard Worker negs x12, x11, asr #31 845*9880d681SAndroid Build Coastguard Worker// CHECK: negs x16, x15, asr #0 // encoding: [0xf0,0x03,0x8f,0xeb] 846*9880d681SAndroid Build Coastguard Worker// CHECK: negs x14, x13, asr #12 // encoding: [0xee,0x33,0x8d,0xeb] 847*9880d681SAndroid Build Coastguard Worker// CHECK: negs x12, x11, asr #31 // encoding: [0xec,0x7f,0x8b,0xeb] 848*9880d681SAndroid Build Coastguard Worker 849*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 850*9880d681SAndroid Build Coastguard Worker// Add-sub (shifted register) 851*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 852*9880d681SAndroid Build Coastguard Worker adc w29, w27, w25 853*9880d681SAndroid Build Coastguard Worker adc wzr, w3, w4 854*9880d681SAndroid Build Coastguard Worker adc w9, wzr, w10 855*9880d681SAndroid Build Coastguard Worker adc w20, w0, wzr 856*9880d681SAndroid Build Coastguard Worker// CHECK: adc w29, w27, w25 // encoding: [0x7d,0x03,0x19,0x1a] 857*9880d681SAndroid Build Coastguard Worker// CHECK: adc wzr, w3, w4 // encoding: [0x7f,0x00,0x04,0x1a] 858*9880d681SAndroid Build Coastguard Worker// CHECK: adc w9, wzr, w10 // encoding: [0xe9,0x03,0x0a,0x1a] 859*9880d681SAndroid Build Coastguard Worker// CHECK: adc w20, w0, wzr // encoding: [0x14,0x00,0x1f,0x1a] 860*9880d681SAndroid Build Coastguard Worker 861*9880d681SAndroid Build Coastguard Worker adc x29, x27, x25 862*9880d681SAndroid Build Coastguard Worker adc xzr, x3, x4 863*9880d681SAndroid Build Coastguard Worker adc x9, xzr, x10 864*9880d681SAndroid Build Coastguard Worker adc x20, x0, xzr 865*9880d681SAndroid Build Coastguard Worker// CHECK: adc x29, x27, x25 // encoding: [0x7d,0x03,0x19,0x9a] 866*9880d681SAndroid Build Coastguard Worker// CHECK: adc xzr, x3, x4 // encoding: [0x7f,0x00,0x04,0x9a] 867*9880d681SAndroid Build Coastguard Worker// CHECK: adc x9, xzr, x10 // encoding: [0xe9,0x03,0x0a,0x9a] 868*9880d681SAndroid Build Coastguard Worker// CHECK: adc x20, x0, xzr // encoding: [0x14,0x00,0x1f,0x9a] 869*9880d681SAndroid Build Coastguard Worker 870*9880d681SAndroid Build Coastguard Worker adcs w29, w27, w25 871*9880d681SAndroid Build Coastguard Worker adcs wzr, w3, w4 872*9880d681SAndroid Build Coastguard Worker adcs w9, wzr, w10 873*9880d681SAndroid Build Coastguard Worker adcs w20, w0, wzr 874*9880d681SAndroid Build Coastguard Worker// CHECK: adcs w29, w27, w25 // encoding: [0x7d,0x03,0x19,0x3a] 875*9880d681SAndroid Build Coastguard Worker// CHECK: adcs wzr, w3, w4 // encoding: [0x7f,0x00,0x04,0x3a] 876*9880d681SAndroid Build Coastguard Worker// CHECK: adcs w9, wzr, w10 // encoding: [0xe9,0x03,0x0a,0x3a] 877*9880d681SAndroid Build Coastguard Worker// CHECK: adcs w20, w0, wzr // encoding: [0x14,0x00,0x1f,0x3a] 878*9880d681SAndroid Build Coastguard Worker 879*9880d681SAndroid Build Coastguard Worker adcs x29, x27, x25 880*9880d681SAndroid Build Coastguard Worker adcs xzr, x3, x4 881*9880d681SAndroid Build Coastguard Worker adcs x9, xzr, x10 882*9880d681SAndroid Build Coastguard Worker adcs x20, x0, xzr 883*9880d681SAndroid Build Coastguard Worker// CHECK: adcs x29, x27, x25 // encoding: [0x7d,0x03,0x19,0xba] 884*9880d681SAndroid Build Coastguard Worker// CHECK: adcs xzr, x3, x4 // encoding: [0x7f,0x00,0x04,0xba] 885*9880d681SAndroid Build Coastguard Worker// CHECK: adcs x9, xzr, x10 // encoding: [0xe9,0x03,0x0a,0xba] 886*9880d681SAndroid Build Coastguard Worker// CHECK: adcs x20, x0, xzr // encoding: [0x14,0x00,0x1f,0xba] 887*9880d681SAndroid Build Coastguard Worker 888*9880d681SAndroid Build Coastguard Worker sbc w29, w27, w25 889*9880d681SAndroid Build Coastguard Worker sbc wzr, w3, w4 890*9880d681SAndroid Build Coastguard Worker sbc w9, wzr, w10 891*9880d681SAndroid Build Coastguard Worker sbc w20, w0, wzr 892*9880d681SAndroid Build Coastguard Worker// CHECK: sbc w29, w27, w25 // encoding: [0x7d,0x03,0x19,0x5a] 893*9880d681SAndroid Build Coastguard Worker// CHECK: sbc wzr, w3, w4 // encoding: [0x7f,0x00,0x04,0x5a] 894*9880d681SAndroid Build Coastguard Worker// CHECK: ngc w9, w10 // encoding: [0xe9,0x03,0x0a,0x5a] 895*9880d681SAndroid Build Coastguard Worker// CHECK: sbc w20, w0, wzr // encoding: [0x14,0x00,0x1f,0x5a] 896*9880d681SAndroid Build Coastguard Worker 897*9880d681SAndroid Build Coastguard Worker sbc x29, x27, x25 898*9880d681SAndroid Build Coastguard Worker sbc xzr, x3, x4 899*9880d681SAndroid Build Coastguard Worker sbc x9, xzr, x10 900*9880d681SAndroid Build Coastguard Worker sbc x20, x0, xzr 901*9880d681SAndroid Build Coastguard Worker// CHECK: sbc x29, x27, x25 // encoding: [0x7d,0x03,0x19,0xda] 902*9880d681SAndroid Build Coastguard Worker// CHECK: sbc xzr, x3, x4 // encoding: [0x7f,0x00,0x04,0xda] 903*9880d681SAndroid Build Coastguard Worker// CHECK: ngc x9, x10 // encoding: [0xe9,0x03,0x0a,0xda] 904*9880d681SAndroid Build Coastguard Worker// CHECK: sbc x20, x0, xzr // encoding: [0x14,0x00,0x1f,0xda] 905*9880d681SAndroid Build Coastguard Worker 906*9880d681SAndroid Build Coastguard Worker sbcs w29, w27, w25 907*9880d681SAndroid Build Coastguard Worker sbcs wzr, w3, w4 908*9880d681SAndroid Build Coastguard Worker sbcs w9, wzr, w10 909*9880d681SAndroid Build Coastguard Worker sbcs w20, w0, wzr 910*9880d681SAndroid Build Coastguard Worker// CHECK: sbcs w29, w27, w25 // encoding: [0x7d,0x03,0x19,0x7a] 911*9880d681SAndroid Build Coastguard Worker// CHECK: sbcs wzr, w3, w4 // encoding: [0x7f,0x00,0x04,0x7a] 912*9880d681SAndroid Build Coastguard Worker// CHECK: ngcs w9, w10 // encoding: [0xe9,0x03,0x0a,0x7a] 913*9880d681SAndroid Build Coastguard Worker// CHECK: sbcs w20, w0, wzr // encoding: [0x14,0x00,0x1f,0x7a] 914*9880d681SAndroid Build Coastguard Worker 915*9880d681SAndroid Build Coastguard Worker sbcs x29, x27, x25 916*9880d681SAndroid Build Coastguard Worker sbcs xzr, x3, x4 917*9880d681SAndroid Build Coastguard Worker sbcs x9, xzr, x10 918*9880d681SAndroid Build Coastguard Worker sbcs x20, x0, xzr 919*9880d681SAndroid Build Coastguard Worker// CHECK: sbcs x29, x27, x25 // encoding: [0x7d,0x03,0x19,0xfa] 920*9880d681SAndroid Build Coastguard Worker// CHECK: sbcs xzr, x3, x4 // encoding: [0x7f,0x00,0x04,0xfa] 921*9880d681SAndroid Build Coastguard Worker// CHECK: ngcs x9, x10 // encoding: [0xe9,0x03,0x0a,0xfa] 922*9880d681SAndroid Build Coastguard Worker// CHECK: sbcs x20, x0, xzr // encoding: [0x14,0x00,0x1f,0xfa] 923*9880d681SAndroid Build Coastguard Worker 924*9880d681SAndroid Build Coastguard Worker ngc w3, w12 925*9880d681SAndroid Build Coastguard Worker ngc wzr, w9 926*9880d681SAndroid Build Coastguard Worker ngc w23, wzr 927*9880d681SAndroid Build Coastguard Worker// CHECK: ngc w3, w12 // encoding: [0xe3,0x03,0x0c,0x5a] 928*9880d681SAndroid Build Coastguard Worker// CHECK: ngc wzr, w9 // encoding: [0xff,0x03,0x09,0x5a] 929*9880d681SAndroid Build Coastguard Worker// CHECK: ngc w23, wzr // encoding: [0xf7,0x03,0x1f,0x5a] 930*9880d681SAndroid Build Coastguard Worker 931*9880d681SAndroid Build Coastguard Worker ngc x29, x30 932*9880d681SAndroid Build Coastguard Worker ngc xzr, x0 933*9880d681SAndroid Build Coastguard Worker ngc x0, xzr 934*9880d681SAndroid Build Coastguard Worker// CHECK: ngc x29, x30 // encoding: [0xfd,0x03,0x1e,0xda] 935*9880d681SAndroid Build Coastguard Worker// CHECK: ngc xzr, x0 // encoding: [0xff,0x03,0x00,0xda] 936*9880d681SAndroid Build Coastguard Worker// CHECK: ngc x0, xzr // encoding: [0xe0,0x03,0x1f,0xda] 937*9880d681SAndroid Build Coastguard Worker 938*9880d681SAndroid Build Coastguard Worker ngcs w3, w12 939*9880d681SAndroid Build Coastguard Worker ngcs wzr, w9 940*9880d681SAndroid Build Coastguard Worker ngcs w23, wzr 941*9880d681SAndroid Build Coastguard Worker// CHECK: ngcs w3, w12 // encoding: [0xe3,0x03,0x0c,0x7a] 942*9880d681SAndroid Build Coastguard Worker// CHECK: ngcs wzr, w9 // encoding: [0xff,0x03,0x09,0x7a] 943*9880d681SAndroid Build Coastguard Worker// CHECK: ngcs w23, wzr // encoding: [0xf7,0x03,0x1f,0x7a] 944*9880d681SAndroid Build Coastguard Worker 945*9880d681SAndroid Build Coastguard Worker ngcs x29, x30 946*9880d681SAndroid Build Coastguard Worker ngcs xzr, x0 947*9880d681SAndroid Build Coastguard Worker ngcs x0, xzr 948*9880d681SAndroid Build Coastguard Worker// CHECK: ngcs x29, x30 // encoding: [0xfd,0x03,0x1e,0xfa] 949*9880d681SAndroid Build Coastguard Worker// CHECK: ngcs xzr, x0 // encoding: [0xff,0x03,0x00,0xfa] 950*9880d681SAndroid Build Coastguard Worker// CHECK: ngcs x0, xzr // encoding: [0xe0,0x03,0x1f,0xfa] 951*9880d681SAndroid Build Coastguard Worker 952*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 953*9880d681SAndroid Build Coastguard Worker// Bitfield 954*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 955*9880d681SAndroid Build Coastguard Worker 956*9880d681SAndroid Build Coastguard Worker sbfm x1, x2, #3, #4 957*9880d681SAndroid Build Coastguard Worker sbfm x3, x4, #63, #63 958*9880d681SAndroid Build Coastguard Worker sbfm wzr, wzr, #31, #31 959*9880d681SAndroid Build Coastguard Worker sbfm w12, w9, #0, #0 960*9880d681SAndroid Build Coastguard Worker 961*9880d681SAndroid Build Coastguard Worker// CHECK: sbfx x1, x2, #3, #2 // encoding: [0x41,0x10,0x43,0x93] 962*9880d681SAndroid Build Coastguard Worker// CHECK: asr x3, x4, #63 // encoding: [0x83,0xfc,0x7f,0x93] 963*9880d681SAndroid Build Coastguard Worker// CHECK: asr wzr, wzr, #31 // encoding: [0xff,0x7f,0x1f,0x13] 964*9880d681SAndroid Build Coastguard Worker// CHECK: sbfx w12, w9, #0, #1 // encoding: [0x2c,0x01,0x00,0x13] 965*9880d681SAndroid Build Coastguard Worker 966*9880d681SAndroid Build Coastguard Worker ubfm x4, x5, #12, #10 967*9880d681SAndroid Build Coastguard Worker ubfm xzr, x4, #0, #0 968*9880d681SAndroid Build Coastguard Worker ubfm x4, xzr, #63, #5 969*9880d681SAndroid Build Coastguard Worker ubfm x5, x6, #12, #63 970*9880d681SAndroid Build Coastguard Worker// CHECK: ubfiz x4, x5, #52, #11 // encoding: [0xa4,0x28,0x4c,0xd3] 971*9880d681SAndroid Build Coastguard Worker// CHECK: ubfx xzr, x4, #0, #1 // encoding: [0x9f,0x00,0x40,0xd3] 972*9880d681SAndroid Build Coastguard Worker// CHECK: ubfiz x4, xzr, #1, #6 // encoding: [0xe4,0x17,0x7f,0xd3] 973*9880d681SAndroid Build Coastguard Worker// CHECK: lsr x5, x6, #12 // encoding: [0xc5,0xfc,0x4c,0xd3] 974*9880d681SAndroid Build Coastguard Worker 975*9880d681SAndroid Build Coastguard Worker bfm x4, x5, #12, #10 976*9880d681SAndroid Build Coastguard Worker bfm xzr, x4, #0, #0 977*9880d681SAndroid Build Coastguard Worker bfm x4, xzr, #63, #5 978*9880d681SAndroid Build Coastguard Worker bfm x5, x6, #12, #63 979*9880d681SAndroid Build Coastguard Worker// CHECK: bfi x4, x5, #52, #11 // encoding: [0xa4,0x28,0x4c,0xb3] 980*9880d681SAndroid Build Coastguard Worker// CHECK: bfxil xzr, x4, #0, #1 // encoding: [0x9f,0x00,0x40,0xb3] 981*9880d681SAndroid Build Coastguard Worker// CHECK: bfc x4, #1, #6 // encoding: [0xe4,0x17,0x7f,0xb3] 982*9880d681SAndroid Build Coastguard Worker// CHECK: bfxil x5, x6, #12, #52 // encoding: [0xc5,0xfc,0x4c,0xb3] 983*9880d681SAndroid Build Coastguard Worker 984*9880d681SAndroid Build Coastguard Worker sxtb w1, w2 985*9880d681SAndroid Build Coastguard Worker sxtb xzr, w3 986*9880d681SAndroid Build Coastguard Worker sxth w9, w10 987*9880d681SAndroid Build Coastguard Worker sxth x0, w1 988*9880d681SAndroid Build Coastguard Worker sxtw x3, w30 989*9880d681SAndroid Build Coastguard Worker// CHECK: sxtb w1, w2 // encoding: [0x41,0x1c,0x00,0x13] 990*9880d681SAndroid Build Coastguard Worker// CHECK: sxtb xzr, w3 // encoding: [0x7f,0x1c,0x40,0x93] 991*9880d681SAndroid Build Coastguard Worker// CHECK: sxth w9, w10 // encoding: [0x49,0x3d,0x00,0x13] 992*9880d681SAndroid Build Coastguard Worker// CHECK: sxth x0, w1 // encoding: [0x20,0x3c,0x40,0x93] 993*9880d681SAndroid Build Coastguard Worker// CHECK: sxtw x3, w30 // encoding: [0xc3,0x7f,0x40,0x93] 994*9880d681SAndroid Build Coastguard Worker 995*9880d681SAndroid Build Coastguard Worker uxtb w1, w2 996*9880d681SAndroid Build Coastguard Worker uxtb xzr, w3 997*9880d681SAndroid Build Coastguard Worker uxth w9, w10 998*9880d681SAndroid Build Coastguard Worker uxth x0, w1 999*9880d681SAndroid Build Coastguard Worker// CHECK: uxtb w1, w2 // encoding: [0x41,0x1c,0x00,0x53] 1000*9880d681SAndroid Build Coastguard Worker// CHECK: uxtb {{[wx]}}zr, w3 // encoding: [0x7f,0x1c,0x00,0x53] 1001*9880d681SAndroid Build Coastguard Worker// CHECK: uxth w9, w10 // encoding: [0x49,0x3d,0x00,0x53] 1002*9880d681SAndroid Build Coastguard Worker// CHECK: uxth {{[wx]}}0, w1 // encoding: [0x20,0x3c,0x00,0x53] 1003*9880d681SAndroid Build Coastguard Worker 1004*9880d681SAndroid Build Coastguard Worker asr w3, w2, #0 1005*9880d681SAndroid Build Coastguard Worker asr w9, w10, #31 1006*9880d681SAndroid Build Coastguard Worker asr x20, x21, #63 1007*9880d681SAndroid Build Coastguard Worker asr w1, wzr, #3 1008*9880d681SAndroid Build Coastguard Worker// CHECK: asr w3, w2, #0 // encoding: [0x43,0x7c,0x00,0x13] 1009*9880d681SAndroid Build Coastguard Worker// CHECK: asr w9, w10, #31 // encoding: [0x49,0x7d,0x1f,0x13] 1010*9880d681SAndroid Build Coastguard Worker// CHECK: asr x20, x21, #63 // encoding: [0xb4,0xfe,0x7f,0x93] 1011*9880d681SAndroid Build Coastguard Worker// CHECK: asr w1, wzr, #3 // encoding: [0xe1,0x7f,0x03,0x13] 1012*9880d681SAndroid Build Coastguard Worker 1013*9880d681SAndroid Build Coastguard Worker lsr w3, w2, #0 1014*9880d681SAndroid Build Coastguard Worker lsr w9, w10, #31 1015*9880d681SAndroid Build Coastguard Worker lsr x20, x21, #63 1016*9880d681SAndroid Build Coastguard Worker lsr wzr, wzr, #3 1017*9880d681SAndroid Build Coastguard Worker// CHECK: lsr w3, w2, #0 // encoding: [0x43,0x7c,0x00,0x53] 1018*9880d681SAndroid Build Coastguard Worker// CHECK: lsr w9, w10, #31 // encoding: [0x49,0x7d,0x1f,0x53] 1019*9880d681SAndroid Build Coastguard Worker// CHECK: lsr x20, x21, #63 // encoding: [0xb4,0xfe,0x7f,0xd3] 1020*9880d681SAndroid Build Coastguard Worker// CHECK: lsr wzr, wzr, #3 // encoding: [0xff,0x7f,0x03,0x53] 1021*9880d681SAndroid Build Coastguard Worker 1022*9880d681SAndroid Build Coastguard Worker lsl w3, w2, #0 1023*9880d681SAndroid Build Coastguard Worker lsl w9, w10, #31 1024*9880d681SAndroid Build Coastguard Worker lsl x20, x21, #63 1025*9880d681SAndroid Build Coastguard Worker lsl w1, wzr, #3 1026*9880d681SAndroid Build Coastguard Worker// CHECK: {{lsl|lsr}} w3, w2, #0 // encoding: [0x43,0x7c,0x00,0x53] 1027*9880d681SAndroid Build Coastguard Worker// CHECK: lsl w9, w10, #31 // encoding: [0x49,0x01,0x01,0x53] 1028*9880d681SAndroid Build Coastguard Worker// CHECK: lsl x20, x21, #63 // encoding: [0xb4,0x02,0x41,0xd3] 1029*9880d681SAndroid Build Coastguard Worker// CHECK: lsl w1, wzr, #3 // encoding: [0xe1,0x73,0x1d,0x53] 1030*9880d681SAndroid Build Coastguard Worker 1031*9880d681SAndroid Build Coastguard Worker sbfiz w9, w10, #0, #1 1032*9880d681SAndroid Build Coastguard Worker sbfiz x2, x3, #63, #1 1033*9880d681SAndroid Build Coastguard Worker sbfiz x19, x20, #0, #64 1034*9880d681SAndroid Build Coastguard Worker sbfiz x9, x10, #5, #59 1035*9880d681SAndroid Build Coastguard Worker sbfiz w9, w10, #0, #32 1036*9880d681SAndroid Build Coastguard Worker sbfiz w11, w12, #31, #1 1037*9880d681SAndroid Build Coastguard Worker sbfiz w13, w14, #29, #3 1038*9880d681SAndroid Build Coastguard Worker sbfiz xzr, xzr, #10, #11 1039*9880d681SAndroid Build Coastguard Worker// CHECK: {{sbfiz|sbfx}} w9, w10, #0, #1 // encoding: [0x49,0x01,0x00,0x13] 1040*9880d681SAndroid Build Coastguard Worker// CHECK: sbfiz x2, x3, #63, #1 // encoding: [0x62,0x00,0x41,0x93] 1041*9880d681SAndroid Build Coastguard Worker// CHECK: asr x19, x20, #0 // encoding: [0x93,0xfe,0x40,0x93] 1042*9880d681SAndroid Build Coastguard Worker// CHECK: sbfiz x9, x10, #5, #59 // encoding: [0x49,0xe9,0x7b,0x93] 1043*9880d681SAndroid Build Coastguard Worker// CHECK: asr w9, w10, #0 // encoding: [0x49,0x7d,0x00,0x13] 1044*9880d681SAndroid Build Coastguard Worker// CHECK: sbfiz w11, w12, #31, #1 // encoding: [0x8b,0x01,0x01,0x13] 1045*9880d681SAndroid Build Coastguard Worker// CHECK: sbfiz w13, w14, #29, #3 // encoding: [0xcd,0x09,0x03,0x13] 1046*9880d681SAndroid Build Coastguard Worker// CHECK: sbfiz xzr, xzr, #10, #11 // encoding: [0xff,0x2b,0x76,0x93] 1047*9880d681SAndroid Build Coastguard Worker 1048*9880d681SAndroid Build Coastguard Worker sbfx w9, w10, #0, #1 1049*9880d681SAndroid Build Coastguard Worker sbfx x2, x3, #63, #1 1050*9880d681SAndroid Build Coastguard Worker sbfx x19, x20, #0, #64 1051*9880d681SAndroid Build Coastguard Worker sbfx x9, x10, #5, #59 1052*9880d681SAndroid Build Coastguard Worker sbfx w9, w10, #0, #32 1053*9880d681SAndroid Build Coastguard Worker sbfx w11, w12, #31, #1 1054*9880d681SAndroid Build Coastguard Worker sbfx w13, w14, #29, #3 1055*9880d681SAndroid Build Coastguard Worker sbfx xzr, xzr, #10, #11 1056*9880d681SAndroid Build Coastguard Worker// CHECK: sbfx w9, w10, #0, #1 // encoding: [0x49,0x01,0x00,0x13] 1057*9880d681SAndroid Build Coastguard Worker// CHECK: asr x2, x3, #63 // encoding: [0x62,0xfc,0x7f,0x93] 1058*9880d681SAndroid Build Coastguard Worker// CHECK: asr x19, x20, #0 // encoding: [0x93,0xfe,0x40,0x93] 1059*9880d681SAndroid Build Coastguard Worker// CHECK: asr x9, x10, #5 // encoding: [0x49,0xfd,0x45,0x93] 1060*9880d681SAndroid Build Coastguard Worker// CHECK: asr w9, w10, #0 // encoding: [0x49,0x7d,0x00,0x13] 1061*9880d681SAndroid Build Coastguard Worker// CHECK: asr w11, w12, #31 // encoding: [0x8b,0x7d,0x1f,0x13] 1062*9880d681SAndroid Build Coastguard Worker// CHECK: asr w13, w14, #29 // encoding: [0xcd,0x7d,0x1d,0x13] 1063*9880d681SAndroid Build Coastguard Worker// CHECK: sbfx xzr, xzr, #10, #11 // encoding: [0xff,0x53,0x4a,0x93] 1064*9880d681SAndroid Build Coastguard Worker 1065*9880d681SAndroid Build Coastguard Worker bfi w9, w10, #0, #1 1066*9880d681SAndroid Build Coastguard Worker bfi x2, x3, #63, #1 1067*9880d681SAndroid Build Coastguard Worker bfi x19, x20, #0, #64 1068*9880d681SAndroid Build Coastguard Worker bfi x9, x10, #5, #59 1069*9880d681SAndroid Build Coastguard Worker bfi w9, w10, #0, #32 1070*9880d681SAndroid Build Coastguard Worker bfi w11, w12, #31, #1 1071*9880d681SAndroid Build Coastguard Worker bfi w13, w14, #29, #3 1072*9880d681SAndroid Build Coastguard Worker bfi xzr, xzr, #10, #11 1073*9880d681SAndroid Build Coastguard Worker 1074*9880d681SAndroid Build Coastguard Worker// CHECK: bfxil w9, w10, #0, #1 // encoding: [0x49,0x01,0x00,0x33] 1075*9880d681SAndroid Build Coastguard Worker// CHECK: bfi x2, x3, #63, #1 // encoding: [0x62,0x00,0x41,0xb3] 1076*9880d681SAndroid Build Coastguard Worker// CHECK: bfxil x19, x20, #0, #64 // encoding: [0x93,0xfe,0x40,0xb3] 1077*9880d681SAndroid Build Coastguard Worker// CHECK: bfi x9, x10, #5, #59 // encoding: [0x49,0xe9,0x7b,0xb3] 1078*9880d681SAndroid Build Coastguard Worker// CHECK: bfxil w9, w10, #0, #32 // encoding: [0x49,0x7d,0x00,0x33] 1079*9880d681SAndroid Build Coastguard Worker// CHECK: bfi w11, w12, #31, #1 // encoding: [0x8b,0x01,0x01,0x33] 1080*9880d681SAndroid Build Coastguard Worker// CHECK: bfi w13, w14, #29, #3 // encoding: [0xcd,0x09,0x03,0x33] 1081*9880d681SAndroid Build Coastguard Worker// CHECK: bfc xzr, #10, #11 // encoding: [0xff,0x2b,0x76,0xb3] 1082*9880d681SAndroid Build Coastguard Worker 1083*9880d681SAndroid Build Coastguard Worker bfxil w9, w10, #0, #1 1084*9880d681SAndroid Build Coastguard Worker bfxil x2, x3, #63, #1 1085*9880d681SAndroid Build Coastguard Worker bfxil x19, x20, #0, #64 1086*9880d681SAndroid Build Coastguard Worker bfxil x9, x10, #5, #59 1087*9880d681SAndroid Build Coastguard Worker bfxil w9, w10, #0, #32 1088*9880d681SAndroid Build Coastguard Worker bfxil w11, w12, #31, #1 1089*9880d681SAndroid Build Coastguard Worker bfxil w13, w14, #29, #3 1090*9880d681SAndroid Build Coastguard Worker bfxil xzr, xzr, #10, #11 1091*9880d681SAndroid Build Coastguard Worker// CHECK: bfxil w9, w10, #0, #1 // encoding: [0x49,0x01,0x00,0x33] 1092*9880d681SAndroid Build Coastguard Worker// CHECK: bfxil x2, x3, #63, #1 // encoding: [0x62,0xfc,0x7f,0xb3] 1093*9880d681SAndroid Build Coastguard Worker// CHECK: bfxil x19, x20, #0, #64 // encoding: [0x93,0xfe,0x40,0xb3] 1094*9880d681SAndroid Build Coastguard Worker// CHECK: bfxil x9, x10, #5, #59 // encoding: [0x49,0xfd,0x45,0xb3] 1095*9880d681SAndroid Build Coastguard Worker// CHECK: bfxil w9, w10, #0, #32 // encoding: [0x49,0x7d,0x00,0x33] 1096*9880d681SAndroid Build Coastguard Worker// CHECK: bfxil w11, w12, #31, #1 // encoding: [0x8b,0x7d,0x1f,0x33] 1097*9880d681SAndroid Build Coastguard Worker// CHECK: bfxil w13, w14, #29, #3 // encoding: [0xcd,0x7d,0x1d,0x33] 1098*9880d681SAndroid Build Coastguard Worker// CHECK: bfxil xzr, xzr, #10, #11 // encoding: [0xff,0x53,0x4a,0xb3] 1099*9880d681SAndroid Build Coastguard Worker 1100*9880d681SAndroid Build Coastguard Worker ubfiz w9, w10, #0, #1 1101*9880d681SAndroid Build Coastguard Worker ubfiz x2, x3, #63, #1 1102*9880d681SAndroid Build Coastguard Worker ubfiz x19, x20, #0, #64 1103*9880d681SAndroid Build Coastguard Worker ubfiz x9, x10, #5, #59 1104*9880d681SAndroid Build Coastguard Worker ubfiz w9, w10, #0, #32 1105*9880d681SAndroid Build Coastguard Worker ubfiz w11, w12, #31, #1 1106*9880d681SAndroid Build Coastguard Worker ubfiz w13, w14, #29, #3 1107*9880d681SAndroid Build Coastguard Worker ubfiz xzr, xzr, #10, #11 1108*9880d681SAndroid Build Coastguard Worker 1109*9880d681SAndroid Build Coastguard Worker// CHECK: ubfx w9, w10, #0, #1 // encoding: [0x49,0x01,0x00,0x53] 1110*9880d681SAndroid Build Coastguard Worker// CHECK: lsl x2, x3, #63 // encoding: [0x62,0x00,0x41,0xd3] 1111*9880d681SAndroid Build Coastguard Worker// CHECK: lsr x19, x20, #0 // encoding: [0x93,0xfe,0x40,0xd3] 1112*9880d681SAndroid Build Coastguard Worker// CHECK: lsl x9, x10, #5 // encoding: [0x49,0xe9,0x7b,0xd3] 1113*9880d681SAndroid Build Coastguard Worker// CHECK: lsr w9, w10, #0 // encoding: [0x49,0x7d,0x00,0x53] 1114*9880d681SAndroid Build Coastguard Worker// CHECK: lsl w11, w12, #31 // encoding: [0x8b,0x01,0x01,0x53] 1115*9880d681SAndroid Build Coastguard Worker// CHECK: lsl w13, w14, #29 // encoding: [0xcd,0x09,0x03,0x53] 1116*9880d681SAndroid Build Coastguard Worker// CHECK: ubfiz xzr, xzr, #10, #11 // encoding: [0xff,0x2b,0x76,0xd3] 1117*9880d681SAndroid Build Coastguard Worker 1118*9880d681SAndroid Build Coastguard Worker ubfx w9, w10, #0, #1 1119*9880d681SAndroid Build Coastguard Worker ubfx x2, x3, #63, #1 1120*9880d681SAndroid Build Coastguard Worker ubfx x19, x20, #0, #64 1121*9880d681SAndroid Build Coastguard Worker ubfx x9, x10, #5, #59 1122*9880d681SAndroid Build Coastguard Worker ubfx w9, w10, #0, #32 1123*9880d681SAndroid Build Coastguard Worker ubfx w11, w12, #31, #1 1124*9880d681SAndroid Build Coastguard Worker ubfx w13, w14, #29, #3 1125*9880d681SAndroid Build Coastguard Worker ubfx xzr, xzr, #10, #11 1126*9880d681SAndroid Build Coastguard Worker 1127*9880d681SAndroid Build Coastguard Worker// CHECK: ubfx w9, w10, #0, #1 // encoding: [0x49,0x01,0x00,0x53] 1128*9880d681SAndroid Build Coastguard Worker// CHECK: lsr x2, x3, #63 // encoding: [0x62,0xfc,0x7f,0xd3] 1129*9880d681SAndroid Build Coastguard Worker// CHECK: lsr x19, x20, #0 // encoding: [0x93,0xfe,0x40,0xd3] 1130*9880d681SAndroid Build Coastguard Worker// CHECK: lsr x9, x10, #5 // encoding: [0x49,0xfd,0x45,0xd3] 1131*9880d681SAndroid Build Coastguard Worker// CHECK: lsr w9, w10, #0 // encoding: [0x49,0x7d,0x00,0x53] 1132*9880d681SAndroid Build Coastguard Worker// CHECK: lsr w11, w12, #31 // encoding: [0x8b,0x7d,0x1f,0x53] 1133*9880d681SAndroid Build Coastguard Worker// CHECK: lsr w13, w14, #29 // encoding: [0xcd,0x7d,0x1d,0x53] 1134*9880d681SAndroid Build Coastguard Worker// CHECK: ubfx xzr, xzr, #10, #11 // encoding: [0xff,0x53,0x4a,0xd3] 1135*9880d681SAndroid Build Coastguard Worker 1136*9880d681SAndroid Build Coastguard Worker bfc w3, #0, #32 1137*9880d681SAndroid Build Coastguard Worker bfc wzr, #31, #1 1138*9880d681SAndroid Build Coastguard Worker bfc x0, #5, #9 1139*9880d681SAndroid Build Coastguard Worker bfc xzr, #63, #1 1140*9880d681SAndroid Build Coastguard Worker// CHECK: bfc w3, #0, #32 // encoding: [0xe3,0x7f,0x00,0x33] 1141*9880d681SAndroid Build Coastguard Worker// CHECK: bfc wzr, #31, #1 // encoding: [0xff,0x03,0x01,0x33] 1142*9880d681SAndroid Build Coastguard Worker// CHECK: bfc x0, #5, #9 // encoding: [0xe0,0x23,0x7b,0xb3] 1143*9880d681SAndroid Build Coastguard Worker// CHECK: bfc xzr, #63, #1 // encoding: [0xff,0x03,0x41,0xb3] 1144*9880d681SAndroid Build Coastguard Worker 1145*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 1146*9880d681SAndroid Build Coastguard Worker// Compare & branch (immediate) 1147*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 1148*9880d681SAndroid Build Coastguard Worker 1149*9880d681SAndroid Build Coastguard Worker cbz w5, lbl 1150*9880d681SAndroid Build Coastguard Worker cbz x5, lbl 1151*9880d681SAndroid Build Coastguard Worker cbnz x2, lbl 1152*9880d681SAndroid Build Coastguard Worker cbnz x26, lbl 1153*9880d681SAndroid Build Coastguard Worker// CHECK: cbz w5, lbl // encoding: [0bAAA00101,A,A,0x34] 1154*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch19 1155*9880d681SAndroid Build Coastguard Worker// CHECK: cbz x5, lbl // encoding: [0bAAA00101,A,A,0xb4] 1156*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch19 1157*9880d681SAndroid Build Coastguard Worker// CHECK: cbnz x2, lbl // encoding: [0bAAA00010,A,A,0xb5] 1158*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch19 1159*9880d681SAndroid Build Coastguard Worker// CHECK: cbnz x26, lbl // encoding: [0bAAA11010,A,A,0xb5] 1160*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch19 1161*9880d681SAndroid Build Coastguard Worker 1162*9880d681SAndroid Build Coastguard Worker cbz wzr, lbl 1163*9880d681SAndroid Build Coastguard Worker cbnz xzr, lbl 1164*9880d681SAndroid Build Coastguard Worker 1165*9880d681SAndroid Build Coastguard Worker// CHECK: cbz wzr, lbl // encoding: [0bAAA11111,A,A,0x34] 1166*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch19 1167*9880d681SAndroid Build Coastguard Worker// CHECK: cbnz xzr, lbl // encoding: [0bAAA11111,A,A,0xb5] 1168*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch19 1169*9880d681SAndroid Build Coastguard Worker 1170*9880d681SAndroid Build Coastguard Worker cbz w5, #0 1171*9880d681SAndroid Build Coastguard Worker cbnz x3, #-4 1172*9880d681SAndroid Build Coastguard Worker cbz w20, #1048572 1173*9880d681SAndroid Build Coastguard Worker cbnz xzr, #-1048576 1174*9880d681SAndroid Build Coastguard Worker// CHECK: cbz w5, #0 // encoding: [0x05,0x00,0x00,0x34] 1175*9880d681SAndroid Build Coastguard Worker// CHECK: cbnz x3, #-4 // encoding: [0xe3,0xff,0xff,0xb5] 1176*9880d681SAndroid Build Coastguard Worker// CHECK: cbz w20, #1048572 // encoding: [0xf4,0xff,0x7f,0x34] 1177*9880d681SAndroid Build Coastguard Worker// CHECK: cbnz xzr, #-1048576 // encoding: [0x1f,0x00,0x80,0xb5] 1178*9880d681SAndroid Build Coastguard Worker 1179*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 1180*9880d681SAndroid Build Coastguard Worker// Conditional branch (immediate) 1181*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 1182*9880d681SAndroid Build Coastguard Worker 1183*9880d681SAndroid Build Coastguard Worker b.eq lbl 1184*9880d681SAndroid Build Coastguard Worker b.ne lbl 1185*9880d681SAndroid Build Coastguard Worker b.cs lbl 1186*9880d681SAndroid Build Coastguard Worker b.hs lbl 1187*9880d681SAndroid Build Coastguard Worker b.lo lbl 1188*9880d681SAndroid Build Coastguard Worker b.cc lbl 1189*9880d681SAndroid Build Coastguard Worker b.mi lbl 1190*9880d681SAndroid Build Coastguard Worker b.pl lbl 1191*9880d681SAndroid Build Coastguard Worker b.vs lbl 1192*9880d681SAndroid Build Coastguard Worker b.vc lbl 1193*9880d681SAndroid Build Coastguard Worker b.hi lbl 1194*9880d681SAndroid Build Coastguard Worker b.ls lbl 1195*9880d681SAndroid Build Coastguard Worker b.ge lbl 1196*9880d681SAndroid Build Coastguard Worker b.lt lbl 1197*9880d681SAndroid Build Coastguard Worker b.gt lbl 1198*9880d681SAndroid Build Coastguard Worker b.le lbl 1199*9880d681SAndroid Build Coastguard Worker b.al lbl 1200*9880d681SAndroid Build Coastguard Worker 1201*9880d681SAndroid Build Coastguard Worker// CHECK: b.eq lbl // encoding: [0bAAA00000,A,A,0x54] 1202*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch19 1203*9880d681SAndroid Build Coastguard Worker// CHECK: b.ne lbl // encoding: [0bAAA00001,A,A,0x54] 1204*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch19 1205*9880d681SAndroid Build Coastguard Worker// CHECK: b.hs lbl // encoding: [0bAAA00010,A,A,0x54] 1206*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch19 1207*9880d681SAndroid Build Coastguard Worker// CHECK: b.hs lbl // encoding: [0bAAA00010,A,A,0x54] 1208*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch19 1209*9880d681SAndroid Build Coastguard Worker// CHECK: b.lo lbl // encoding: [0bAAA00011,A,A,0x54] 1210*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch19 1211*9880d681SAndroid Build Coastguard Worker// CHECK: b.lo lbl // encoding: [0bAAA00011,A,A,0x54] 1212*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch19 1213*9880d681SAndroid Build Coastguard Worker// CHECK: b.mi lbl // encoding: [0bAAA00100,A,A,0x54] 1214*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch19 1215*9880d681SAndroid Build Coastguard Worker// CHECK: b.pl lbl // encoding: [0bAAA00101,A,A,0x54] 1216*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch19 1217*9880d681SAndroid Build Coastguard Worker// CHECK: b.vs lbl // encoding: [0bAAA00110,A,A,0x54] 1218*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch19 1219*9880d681SAndroid Build Coastguard Worker// CHECK: b.vc lbl // encoding: [0bAAA00111,A,A,0x54] 1220*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch19 1221*9880d681SAndroid Build Coastguard Worker// CHECK: b.hi lbl // encoding: [0bAAA01000,A,A,0x54] 1222*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch19 1223*9880d681SAndroid Build Coastguard Worker// CHECK: b.ls lbl // encoding: [0bAAA01001,A,A,0x54] 1224*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch19 1225*9880d681SAndroid Build Coastguard Worker// CHECK: b.ge lbl // encoding: [0bAAA01010,A,A,0x54] 1226*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch19 1227*9880d681SAndroid Build Coastguard Worker// CHECK: b.lt lbl // encoding: [0bAAA01011,A,A,0x54] 1228*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch19 1229*9880d681SAndroid Build Coastguard Worker// CHECK: b.gt lbl // encoding: [0bAAA01100,A,A,0x54] 1230*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch19 1231*9880d681SAndroid Build Coastguard Worker// CHECK: b.le lbl // encoding: [0bAAA01101,A,A,0x54] 1232*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch19 1233*9880d681SAndroid Build Coastguard Worker// CHECK: b.al lbl // encoding: [0bAAA01110,A,A,0x54] 1234*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch19 1235*9880d681SAndroid Build Coastguard Worker 1236*9880d681SAndroid Build Coastguard Worker // ARM64 has these in a separate file 1237*9880d681SAndroid Build Coastguard Worker beq lbl 1238*9880d681SAndroid Build Coastguard Worker bne lbl 1239*9880d681SAndroid Build Coastguard Worker bcs lbl 1240*9880d681SAndroid Build Coastguard Worker bhs lbl 1241*9880d681SAndroid Build Coastguard Worker blo lbl 1242*9880d681SAndroid Build Coastguard Worker bcc lbl 1243*9880d681SAndroid Build Coastguard Worker bmi lbl 1244*9880d681SAndroid Build Coastguard Worker bpl lbl 1245*9880d681SAndroid Build Coastguard Worker bvs lbl 1246*9880d681SAndroid Build Coastguard Worker bvc lbl 1247*9880d681SAndroid Build Coastguard Worker bhi lbl 1248*9880d681SAndroid Build Coastguard Worker bls lbl 1249*9880d681SAndroid Build Coastguard Worker bge lbl 1250*9880d681SAndroid Build Coastguard Worker blt lbl 1251*9880d681SAndroid Build Coastguard Worker bgt lbl 1252*9880d681SAndroid Build Coastguard Worker ble lbl 1253*9880d681SAndroid Build Coastguard Worker bal lbl 1254*9880d681SAndroid Build Coastguard Worker 1255*9880d681SAndroid Build Coastguard Worker b.eq #0 1256*9880d681SAndroid Build Coastguard Worker b.lt #-4 1257*9880d681SAndroid Build Coastguard Worker b.cc #1048572 1258*9880d681SAndroid Build Coastguard Worker// CHECK: b.eq #0 // encoding: [0x00,0x00,0x00,0x54] 1259*9880d681SAndroid Build Coastguard Worker// CHECK: b.lt #-4 // encoding: [0xeb,0xff,0xff,0x54] 1260*9880d681SAndroid Build Coastguard Worker// CHECK: b.lo #1048572 // encoding: [0xe3,0xff,0x7f,0x54] 1261*9880d681SAndroid Build Coastguard Worker 1262*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 1263*9880d681SAndroid Build Coastguard Worker// Conditional compare (immediate) 1264*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 1265*9880d681SAndroid Build Coastguard Worker 1266*9880d681SAndroid Build Coastguard Worker ccmp w1, #31, #0, eq 1267*9880d681SAndroid Build Coastguard Worker ccmp w3, #0, #15, hs 1268*9880d681SAndroid Build Coastguard Worker ccmp wzr, #15, #13, cs 1269*9880d681SAndroid Build Coastguard Worker// CHECK: ccmp w1, #31, #0, eq // encoding: [0x20,0x08,0x5f,0x7a] 1270*9880d681SAndroid Build Coastguard Worker// CHECK: ccmp w3, #0, #15, hs // encoding: [0x6f,0x28,0x40,0x7a] 1271*9880d681SAndroid Build Coastguard Worker// CHECK: ccmp wzr, #15, #13, hs // encoding: [0xed,0x2b,0x4f,0x7a] 1272*9880d681SAndroid Build Coastguard Worker 1273*9880d681SAndroid Build Coastguard Worker ccmp x9, #31, #0, le 1274*9880d681SAndroid Build Coastguard Worker ccmp x3, #0, #15, gt 1275*9880d681SAndroid Build Coastguard Worker ccmp xzr, #5, #7, ne 1276*9880d681SAndroid Build Coastguard Worker// CHECK: ccmp x9, #31, #0, le // encoding: [0x20,0xd9,0x5f,0xfa] 1277*9880d681SAndroid Build Coastguard Worker// CHECK: ccmp x3, #0, #15, gt // encoding: [0x6f,0xc8,0x40,0xfa] 1278*9880d681SAndroid Build Coastguard Worker// CHECK: ccmp xzr, #5, #7, ne // encoding: [0xe7,0x1b,0x45,0xfa] 1279*9880d681SAndroid Build Coastguard Worker 1280*9880d681SAndroid Build Coastguard Worker ccmn w1, #31, #0, eq 1281*9880d681SAndroid Build Coastguard Worker ccmn w3, #0, #15, hs 1282*9880d681SAndroid Build Coastguard Worker ccmn wzr, #15, #13, cs 1283*9880d681SAndroid Build Coastguard Worker// CHECK: ccmn w1, #31, #0, eq // encoding: [0x20,0x08,0x5f,0x3a] 1284*9880d681SAndroid Build Coastguard Worker// CHECK: ccmn w3, #0, #15, hs // encoding: [0x6f,0x28,0x40,0x3a] 1285*9880d681SAndroid Build Coastguard Worker// CHECK: ccmn wzr, #15, #13, hs // encoding: [0xed,0x2b,0x4f,0x3a] 1286*9880d681SAndroid Build Coastguard Worker 1287*9880d681SAndroid Build Coastguard Worker ccmn x9, #31, #0, le 1288*9880d681SAndroid Build Coastguard Worker ccmn x3, #0, #15, gt 1289*9880d681SAndroid Build Coastguard Worker ccmn xzr, #5, #7, ne 1290*9880d681SAndroid Build Coastguard Worker// CHECK: ccmn x9, #31, #0, le // encoding: [0x20,0xd9,0x5f,0xba] 1291*9880d681SAndroid Build Coastguard Worker// CHECK: ccmn x3, #0, #15, gt // encoding: [0x6f,0xc8,0x40,0xba] 1292*9880d681SAndroid Build Coastguard Worker// CHECK: ccmn xzr, #5, #7, ne // encoding: [0xe7,0x1b,0x45,0xba] 1293*9880d681SAndroid Build Coastguard Worker 1294*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 1295*9880d681SAndroid Build Coastguard Worker// Conditional compare (register) 1296*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 1297*9880d681SAndroid Build Coastguard Worker 1298*9880d681SAndroid Build Coastguard Worker ccmp w1, wzr, #0, eq 1299*9880d681SAndroid Build Coastguard Worker ccmp w3, w0, #15, hs 1300*9880d681SAndroid Build Coastguard Worker ccmp wzr, w15, #13, cs 1301*9880d681SAndroid Build Coastguard Worker// CHECK: ccmp w1, wzr, #0, eq // encoding: [0x20,0x00,0x5f,0x7a] 1302*9880d681SAndroid Build Coastguard Worker// CHECK: ccmp w3, w0, #15, hs // encoding: [0x6f,0x20,0x40,0x7a] 1303*9880d681SAndroid Build Coastguard Worker// CHECK: ccmp wzr, w15, #13, hs // encoding: [0xed,0x23,0x4f,0x7a] 1304*9880d681SAndroid Build Coastguard Worker 1305*9880d681SAndroid Build Coastguard Worker ccmp x9, xzr, #0, le 1306*9880d681SAndroid Build Coastguard Worker ccmp x3, x0, #15, gt 1307*9880d681SAndroid Build Coastguard Worker ccmp xzr, x5, #7, ne 1308*9880d681SAndroid Build Coastguard Worker// CHECK: ccmp x9, xzr, #0, le // encoding: [0x20,0xd1,0x5f,0xfa] 1309*9880d681SAndroid Build Coastguard Worker// CHECK: ccmp x3, x0, #15, gt // encoding: [0x6f,0xc0,0x40,0xfa] 1310*9880d681SAndroid Build Coastguard Worker// CHECK: ccmp xzr, x5, #7, ne // encoding: [0xe7,0x13,0x45,0xfa] 1311*9880d681SAndroid Build Coastguard Worker 1312*9880d681SAndroid Build Coastguard Worker ccmn w1, wzr, #0, eq 1313*9880d681SAndroid Build Coastguard Worker ccmn w3, w0, #15, hs 1314*9880d681SAndroid Build Coastguard Worker ccmn wzr, w15, #13, cs 1315*9880d681SAndroid Build Coastguard Worker// CHECK: ccmn w1, wzr, #0, eq // encoding: [0x20,0x00,0x5f,0x3a] 1316*9880d681SAndroid Build Coastguard Worker// CHECK: ccmn w3, w0, #15, hs // encoding: [0x6f,0x20,0x40,0x3a] 1317*9880d681SAndroid Build Coastguard Worker// CHECK: ccmn wzr, w15, #13, hs // encoding: [0xed,0x23,0x4f,0x3a] 1318*9880d681SAndroid Build Coastguard Worker 1319*9880d681SAndroid Build Coastguard Worker ccmn x9, xzr, #0, le 1320*9880d681SAndroid Build Coastguard Worker ccmn x3, x0, #15, gt 1321*9880d681SAndroid Build Coastguard Worker ccmn xzr, x5, #7, ne 1322*9880d681SAndroid Build Coastguard Worker// CHECK: ccmn x9, xzr, #0, le // encoding: [0x20,0xd1,0x5f,0xba] 1323*9880d681SAndroid Build Coastguard Worker// CHECK: ccmn x3, x0, #15, gt // encoding: [0x6f,0xc0,0x40,0xba] 1324*9880d681SAndroid Build Coastguard Worker// CHECK: ccmn xzr, x5, #7, ne // encoding: [0xe7,0x13,0x45,0xba] 1325*9880d681SAndroid Build Coastguard Worker 1326*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 1327*9880d681SAndroid Build Coastguard Worker// Conditional select 1328*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 1329*9880d681SAndroid Build Coastguard Worker csel w1, w0, w19, ne 1330*9880d681SAndroid Build Coastguard Worker csel wzr, w5, w9, eq 1331*9880d681SAndroid Build Coastguard Worker csel w9, wzr, w30, gt 1332*9880d681SAndroid Build Coastguard Worker csel w1, w28, wzr, mi 1333*9880d681SAndroid Build Coastguard Worker// CHECK: csel w1, w0, w19, ne // encoding: [0x01,0x10,0x93,0x1a] 1334*9880d681SAndroid Build Coastguard Worker// CHECK: csel wzr, w5, w9, eq // encoding: [0xbf,0x00,0x89,0x1a] 1335*9880d681SAndroid Build Coastguard Worker// CHECK: csel w9, wzr, w30, gt // encoding: [0xe9,0xc3,0x9e,0x1a] 1336*9880d681SAndroid Build Coastguard Worker// CHECK: csel w1, w28, wzr, mi // encoding: [0x81,0x43,0x9f,0x1a] 1337*9880d681SAndroid Build Coastguard Worker 1338*9880d681SAndroid Build Coastguard Worker csel x19, x23, x29, lt 1339*9880d681SAndroid Build Coastguard Worker csel xzr, x3, x4, ge 1340*9880d681SAndroid Build Coastguard Worker csel x5, xzr, x6, cs 1341*9880d681SAndroid Build Coastguard Worker csel x7, x8, xzr, cc 1342*9880d681SAndroid Build Coastguard Worker// CHECK: csel x19, x23, x29, lt // encoding: [0xf3,0xb2,0x9d,0x9a] 1343*9880d681SAndroid Build Coastguard Worker// CHECK: csel xzr, x3, x4, ge // encoding: [0x7f,0xa0,0x84,0x9a] 1344*9880d681SAndroid Build Coastguard Worker// CHECK: csel x5, xzr, x6, hs // encoding: [0xe5,0x23,0x86,0x9a] 1345*9880d681SAndroid Build Coastguard Worker// CHECK: csel x7, x8, xzr, lo // encoding: [0x07,0x31,0x9f,0x9a] 1346*9880d681SAndroid Build Coastguard Worker 1347*9880d681SAndroid Build Coastguard Worker csinc w1, w0, w19, ne 1348*9880d681SAndroid Build Coastguard Worker csinc wzr, w5, w9, eq 1349*9880d681SAndroid Build Coastguard Worker csinc w9, wzr, w30, gt 1350*9880d681SAndroid Build Coastguard Worker csinc w1, w28, wzr, mi 1351*9880d681SAndroid Build Coastguard Worker// CHECK: csinc w1, w0, w19, ne // encoding: [0x01,0x14,0x93,0x1a] 1352*9880d681SAndroid Build Coastguard Worker// CHECK: csinc wzr, w5, w9, eq // encoding: [0xbf,0x04,0x89,0x1a] 1353*9880d681SAndroid Build Coastguard Worker// CHECK: csinc w9, wzr, w30, gt // encoding: [0xe9,0xc7,0x9e,0x1a] 1354*9880d681SAndroid Build Coastguard Worker// CHECK: csinc w1, w28, wzr, mi // encoding: [0x81,0x47,0x9f,0x1a] 1355*9880d681SAndroid Build Coastguard Worker 1356*9880d681SAndroid Build Coastguard Worker csinc x19, x23, x29, lt 1357*9880d681SAndroid Build Coastguard Worker csinc xzr, x3, x4, ge 1358*9880d681SAndroid Build Coastguard Worker csinc x5, xzr, x6, cs 1359*9880d681SAndroid Build Coastguard Worker csinc x7, x8, xzr, cc 1360*9880d681SAndroid Build Coastguard Worker// CHECK: csinc x19, x23, x29, lt // encoding: [0xf3,0xb6,0x9d,0x9a] 1361*9880d681SAndroid Build Coastguard Worker// CHECK: csinc xzr, x3, x4, ge // encoding: [0x7f,0xa4,0x84,0x9a] 1362*9880d681SAndroid Build Coastguard Worker// CHECK: csinc x5, xzr, x6, hs // encoding: [0xe5,0x27,0x86,0x9a] 1363*9880d681SAndroid Build Coastguard Worker// CHECK: csinc x7, x8, xzr, lo // encoding: [0x07,0x35,0x9f,0x9a] 1364*9880d681SAndroid Build Coastguard Worker 1365*9880d681SAndroid Build Coastguard Worker csinv w1, w0, w19, ne 1366*9880d681SAndroid Build Coastguard Worker csinv wzr, w5, w9, eq 1367*9880d681SAndroid Build Coastguard Worker csinv w9, wzr, w30, gt 1368*9880d681SAndroid Build Coastguard Worker csinv w1, w28, wzr, mi 1369*9880d681SAndroid Build Coastguard Worker// CHECK: csinv w1, w0, w19, ne // encoding: [0x01,0x10,0x93,0x5a] 1370*9880d681SAndroid Build Coastguard Worker// CHECK: csinv wzr, w5, w9, eq // encoding: [0xbf,0x00,0x89,0x5a] 1371*9880d681SAndroid Build Coastguard Worker// CHECK: csinv w9, wzr, w30, gt // encoding: [0xe9,0xc3,0x9e,0x5a] 1372*9880d681SAndroid Build Coastguard Worker// CHECK: csinv w1, w28, wzr, mi // encoding: [0x81,0x43,0x9f,0x5a] 1373*9880d681SAndroid Build Coastguard Worker 1374*9880d681SAndroid Build Coastguard Worker csinv x19, x23, x29, lt 1375*9880d681SAndroid Build Coastguard Worker csinv xzr, x3, x4, ge 1376*9880d681SAndroid Build Coastguard Worker csinv x5, xzr, x6, cs 1377*9880d681SAndroid Build Coastguard Worker csinv x7, x8, xzr, cc 1378*9880d681SAndroid Build Coastguard Worker// CHECK: csinv x19, x23, x29, lt // encoding: [0xf3,0xb2,0x9d,0xda] 1379*9880d681SAndroid Build Coastguard Worker// CHECK: csinv xzr, x3, x4, ge // encoding: [0x7f,0xa0,0x84,0xda] 1380*9880d681SAndroid Build Coastguard Worker// CHECK: csinv x5, xzr, x6, hs // encoding: [0xe5,0x23,0x86,0xda] 1381*9880d681SAndroid Build Coastguard Worker// CHECK: csinv x7, x8, xzr, lo // encoding: [0x07,0x31,0x9f,0xda] 1382*9880d681SAndroid Build Coastguard Worker 1383*9880d681SAndroid Build Coastguard Worker csneg w1, w0, w19, ne 1384*9880d681SAndroid Build Coastguard Worker csneg wzr, w5, w9, eq 1385*9880d681SAndroid Build Coastguard Worker csneg w9, wzr, w30, gt 1386*9880d681SAndroid Build Coastguard Worker csneg w1, w28, wzr, mi 1387*9880d681SAndroid Build Coastguard Worker// CHECK: csneg w1, w0, w19, ne // encoding: [0x01,0x14,0x93,0x5a] 1388*9880d681SAndroid Build Coastguard Worker// CHECK: csneg wzr, w5, w9, eq // encoding: [0xbf,0x04,0x89,0x5a] 1389*9880d681SAndroid Build Coastguard Worker// CHECK: csneg w9, wzr, w30, gt // encoding: [0xe9,0xc7,0x9e,0x5a] 1390*9880d681SAndroid Build Coastguard Worker// CHECK: csneg w1, w28, wzr, mi // encoding: [0x81,0x47,0x9f,0x5a] 1391*9880d681SAndroid Build Coastguard Worker 1392*9880d681SAndroid Build Coastguard Worker csneg x19, x23, x29, lt 1393*9880d681SAndroid Build Coastguard Worker csneg xzr, x3, x4, ge 1394*9880d681SAndroid Build Coastguard Worker csneg x5, xzr, x6, cs 1395*9880d681SAndroid Build Coastguard Worker csneg x7, x8, xzr, cc 1396*9880d681SAndroid Build Coastguard Worker// CHECK: csneg x19, x23, x29, lt // encoding: [0xf3,0xb6,0x9d,0xda] 1397*9880d681SAndroid Build Coastguard Worker// CHECK: csneg xzr, x3, x4, ge // encoding: [0x7f,0xa4,0x84,0xda] 1398*9880d681SAndroid Build Coastguard Worker// CHECK: csneg x5, xzr, x6, hs // encoding: [0xe5,0x27,0x86,0xda] 1399*9880d681SAndroid Build Coastguard Worker// CHECK: csneg x7, x8, xzr, lo // encoding: [0x07,0x35,0x9f,0xda] 1400*9880d681SAndroid Build Coastguard Worker 1401*9880d681SAndroid Build Coastguard Worker cset w3, eq 1402*9880d681SAndroid Build Coastguard Worker cset x9, pl 1403*9880d681SAndroid Build Coastguard Worker// CHECK: cset w3, eq // encoding: [0xe3,0x17,0x9f,0x1a] 1404*9880d681SAndroid Build Coastguard Worker// CHECK: cset x9, pl // encoding: [0xe9,0x47,0x9f,0x9a] 1405*9880d681SAndroid Build Coastguard Worker 1406*9880d681SAndroid Build Coastguard Worker csetm w20, ne 1407*9880d681SAndroid Build Coastguard Worker csetm x30, ge 1408*9880d681SAndroid Build Coastguard Worker// CHECK: csetm w20, ne // encoding: [0xf4,0x03,0x9f,0x5a] 1409*9880d681SAndroid Build Coastguard Worker// CHECK: csetm x30, ge // encoding: [0xfe,0xb3,0x9f,0xda] 1410*9880d681SAndroid Build Coastguard Worker 1411*9880d681SAndroid Build Coastguard Worker cinc w3, w5, gt 1412*9880d681SAndroid Build Coastguard Worker cinc wzr, w4, le 1413*9880d681SAndroid Build Coastguard Worker cinc w9, wzr, lt 1414*9880d681SAndroid Build Coastguard Worker// CHECK: cinc w3, w5, gt // encoding: [0xa3,0xd4,0x85,0x1a] 1415*9880d681SAndroid Build Coastguard Worker// CHECK: cinc wzr, w4, le // encoding: [0x9f,0xc4,0x84,0x1a] 1416*9880d681SAndroid Build Coastguard Worker// CHECK: cset w9, lt // encoding: [0xe9,0xa7,0x9f,0x1a] 1417*9880d681SAndroid Build Coastguard Worker 1418*9880d681SAndroid Build Coastguard Worker cinc x3, x5, gt 1419*9880d681SAndroid Build Coastguard Worker cinc xzr, x4, le 1420*9880d681SAndroid Build Coastguard Worker cinc x9, xzr, lt 1421*9880d681SAndroid Build Coastguard Worker// CHECK: cinc x3, x5, gt // encoding: [0xa3,0xd4,0x85,0x9a] 1422*9880d681SAndroid Build Coastguard Worker// CHECK: cinc xzr, x4, le // encoding: [0x9f,0xc4,0x84,0x9a] 1423*9880d681SAndroid Build Coastguard Worker// CHECK: cset x9, lt // encoding: [0xe9,0xa7,0x9f,0x9a] 1424*9880d681SAndroid Build Coastguard Worker 1425*9880d681SAndroid Build Coastguard Worker cinv w3, w5, gt 1426*9880d681SAndroid Build Coastguard Worker cinv wzr, w4, le 1427*9880d681SAndroid Build Coastguard Worker cinv w9, wzr, lt 1428*9880d681SAndroid Build Coastguard Worker// CHECK: cinv w3, w5, gt // encoding: [0xa3,0xd0,0x85,0x5a] 1429*9880d681SAndroid Build Coastguard Worker// CHECK: cinv wzr, w4, le // encoding: [0x9f,0xc0,0x84,0x5a] 1430*9880d681SAndroid Build Coastguard Worker// CHECK: csetm w9, lt // encoding: [0xe9,0xa3,0x9f,0x5a] 1431*9880d681SAndroid Build Coastguard Worker 1432*9880d681SAndroid Build Coastguard Worker cinv x3, x5, gt 1433*9880d681SAndroid Build Coastguard Worker cinv xzr, x4, le 1434*9880d681SAndroid Build Coastguard Worker cinv x9, xzr, lt 1435*9880d681SAndroid Build Coastguard Worker// CHECK: cinv x3, x5, gt // encoding: [0xa3,0xd0,0x85,0xda] 1436*9880d681SAndroid Build Coastguard Worker// CHECK: cinv xzr, x4, le // encoding: [0x9f,0xc0,0x84,0xda] 1437*9880d681SAndroid Build Coastguard Worker// CHECK: csetm x9, lt // encoding: [0xe9,0xa3,0x9f,0xda] 1438*9880d681SAndroid Build Coastguard Worker 1439*9880d681SAndroid Build Coastguard Worker cneg w3, w5, gt 1440*9880d681SAndroid Build Coastguard Worker cneg wzr, w4, le 1441*9880d681SAndroid Build Coastguard Worker cneg w9, wzr, lt 1442*9880d681SAndroid Build Coastguard Worker// CHECK: cneg w3, w5, gt // encoding: [0xa3,0xd4,0x85,0x5a] 1443*9880d681SAndroid Build Coastguard Worker// CHECK: cneg wzr, w4, le // encoding: [0x9f,0xc4,0x84,0x5a] 1444*9880d681SAndroid Build Coastguard Worker// CHECK: cneg w9, wzr, lt // encoding: [0xe9,0xa7,0x9f,0x5a] 1445*9880d681SAndroid Build Coastguard Worker 1446*9880d681SAndroid Build Coastguard Worker cneg x3, x5, gt 1447*9880d681SAndroid Build Coastguard Worker cneg xzr, x4, le 1448*9880d681SAndroid Build Coastguard Worker cneg x9, xzr, lt 1449*9880d681SAndroid Build Coastguard Worker// CHECK: cneg x3, x5, gt // encoding: [0xa3,0xd4,0x85,0xda] 1450*9880d681SAndroid Build Coastguard Worker// CHECK: cneg xzr, x4, le // encoding: [0x9f,0xc4,0x84,0xda] 1451*9880d681SAndroid Build Coastguard Worker// CHECK: cneg x9, xzr, lt // encoding: [0xe9,0xa7,0x9f,0xda] 1452*9880d681SAndroid Build Coastguard Worker 1453*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 1454*9880d681SAndroid Build Coastguard Worker// Data-processing (1 source) 1455*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 1456*9880d681SAndroid Build Coastguard Worker 1457*9880d681SAndroid Build Coastguard Worker rbit w0, w7 1458*9880d681SAndroid Build Coastguard Worker rbit x18, x3 1459*9880d681SAndroid Build Coastguard Worker rev16 w17, w1 1460*9880d681SAndroid Build Coastguard Worker rev16 x5, x2 1461*9880d681SAndroid Build Coastguard Worker rev w18, w0 1462*9880d681SAndroid Build Coastguard Worker rev32 x20, x1 1463*9880d681SAndroid Build Coastguard Worker rev32 x20, xzr 1464*9880d681SAndroid Build Coastguard Worker// CHECK: rbit w0, w7 // encoding: [0xe0,0x00,0xc0,0x5a] 1465*9880d681SAndroid Build Coastguard Worker// CHECK: rbit x18, x3 // encoding: [0x72,0x00,0xc0,0xda] 1466*9880d681SAndroid Build Coastguard Worker// CHECK: rev16 w17, w1 // encoding: [0x31,0x04,0xc0,0x5a] 1467*9880d681SAndroid Build Coastguard Worker// CHECK: rev16 x5, x2 // encoding: [0x45,0x04,0xc0,0xda] 1468*9880d681SAndroid Build Coastguard Worker// CHECK: rev w18, w0 // encoding: [0x12,0x08,0xc0,0x5a] 1469*9880d681SAndroid Build Coastguard Worker// CHECK: rev32 x20, x1 // encoding: [0x34,0x08,0xc0,0xda] 1470*9880d681SAndroid Build Coastguard Worker// CHECK: rev32 x20, xzr // encoding: [0xf4,0x0b,0xc0,0xda] 1471*9880d681SAndroid Build Coastguard Worker 1472*9880d681SAndroid Build Coastguard Worker rev x22, x2 1473*9880d681SAndroid Build Coastguard Worker rev x18, xzr 1474*9880d681SAndroid Build Coastguard Worker rev w7, wzr 1475*9880d681SAndroid Build Coastguard Worker clz w24, w3 1476*9880d681SAndroid Build Coastguard Worker clz x26, x4 1477*9880d681SAndroid Build Coastguard Worker cls w3, w5 1478*9880d681SAndroid Build Coastguard Worker cls x20, x5 1479*9880d681SAndroid Build Coastguard Worker// CHECK: rev x22, x2 // encoding: [0x56,0x0c,0xc0,0xda] 1480*9880d681SAndroid Build Coastguard Worker// CHECK: rev x18, xzr // encoding: [0xf2,0x0f,0xc0,0xda] 1481*9880d681SAndroid Build Coastguard Worker// CHECK: rev w7, wzr // encoding: [0xe7,0x0b,0xc0,0x5a] 1482*9880d681SAndroid Build Coastguard Worker// CHECK: clz w24, w3 // encoding: [0x78,0x10,0xc0,0x5a] 1483*9880d681SAndroid Build Coastguard Worker// CHECK: clz x26, x4 // encoding: [0x9a,0x10,0xc0,0xda] 1484*9880d681SAndroid Build Coastguard Worker// CHECK: cls w3, w5 // encoding: [0xa3,0x14,0xc0,0x5a] 1485*9880d681SAndroid Build Coastguard Worker// CHECK: cls x20, x5 // encoding: [0xb4,0x14,0xc0,0xda] 1486*9880d681SAndroid Build Coastguard Worker 1487*9880d681SAndroid Build Coastguard Worker clz w24, wzr 1488*9880d681SAndroid Build Coastguard Worker rev x22, xzr 1489*9880d681SAndroid Build Coastguard Worker// CHECK: clz w24, wzr // encoding: [0xf8,0x13,0xc0,0x5a] 1490*9880d681SAndroid Build Coastguard Worker// CHECK: rev x22, xzr // encoding: [0xf6,0x0f,0xc0,0xda] 1491*9880d681SAndroid Build Coastguard Worker 1492*9880d681SAndroid Build Coastguard Worker rev64 x13, x12 1493*9880d681SAndroid Build Coastguard Worker// CHECK: rev x13, x12 // encoding: [0x8d,0x0d,0xc0,0xda] 1494*9880d681SAndroid Build Coastguard Worker 1495*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 1496*9880d681SAndroid Build Coastguard Worker// Data-processing (2 source) 1497*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 1498*9880d681SAndroid Build Coastguard Worker 1499*9880d681SAndroid Build Coastguard Worker crc32b w5, w7, w20 1500*9880d681SAndroid Build Coastguard Worker crc32h w28, wzr, w30 1501*9880d681SAndroid Build Coastguard Worker crc32w w0, w1, w2 1502*9880d681SAndroid Build Coastguard Worker crc32x w7, w9, x20 1503*9880d681SAndroid Build Coastguard Worker crc32cb w9, w5, w4 1504*9880d681SAndroid Build Coastguard Worker crc32ch w13, w17, w25 1505*9880d681SAndroid Build Coastguard Worker crc32cw wzr, w3, w5 1506*9880d681SAndroid Build Coastguard Worker crc32cx w18, w16, xzr 1507*9880d681SAndroid Build Coastguard Worker// CHECK: crc32b w5, w7, w20 // encoding: [0xe5,0x40,0xd4,0x1a] 1508*9880d681SAndroid Build Coastguard Worker// CHECK: crc32h w28, wzr, w30 // encoding: [0xfc,0x47,0xde,0x1a] 1509*9880d681SAndroid Build Coastguard Worker// CHECK: crc32w w0, w1, w2 // encoding: [0x20,0x48,0xc2,0x1a] 1510*9880d681SAndroid Build Coastguard Worker// CHECK: crc32x w7, w9, x20 // encoding: [0x27,0x4d,0xd4,0x9a] 1511*9880d681SAndroid Build Coastguard Worker// CHECK: crc32cb w9, w5, w4 // encoding: [0xa9,0x50,0xc4,0x1a] 1512*9880d681SAndroid Build Coastguard Worker// CHECK: crc32ch w13, w17, w25 // encoding: [0x2d,0x56,0xd9,0x1a] 1513*9880d681SAndroid Build Coastguard Worker// CHECK: crc32cw wzr, w3, w5 // encoding: [0x7f,0x58,0xc5,0x1a] 1514*9880d681SAndroid Build Coastguard Worker// CHECK: crc32cx w18, w16, xzr // encoding: [0x12,0x5e,0xdf,0x9a] 1515*9880d681SAndroid Build Coastguard Worker 1516*9880d681SAndroid Build Coastguard Worker udiv w0, w7, w10 1517*9880d681SAndroid Build Coastguard Worker udiv x9, x22, x4 1518*9880d681SAndroid Build Coastguard Worker sdiv w12, w21, w0 1519*9880d681SAndroid Build Coastguard Worker sdiv x13, x2, x1 1520*9880d681SAndroid Build Coastguard Worker lslv w11, w12, w13 1521*9880d681SAndroid Build Coastguard Worker lslv x14, x15, x16 1522*9880d681SAndroid Build Coastguard Worker lsrv w17, w18, w19 1523*9880d681SAndroid Build Coastguard Worker lsrv x20, x21, x22 1524*9880d681SAndroid Build Coastguard Worker asrv w23, w24, w25 1525*9880d681SAndroid Build Coastguard Worker asrv x26, x27, x28 1526*9880d681SAndroid Build Coastguard Worker rorv w0, w1, w2 1527*9880d681SAndroid Build Coastguard Worker rorv x3, x4, x5 1528*9880d681SAndroid Build Coastguard Worker 1529*9880d681SAndroid Build Coastguard Worker 1530*9880d681SAndroid Build Coastguard Worker// CHECK: udiv w0, w7, w10 // encoding: [0xe0,0x08,0xca,0x1a] 1531*9880d681SAndroid Build Coastguard Worker// CHECK: udiv x9, x22, x4 // encoding: [0xc9,0x0a,0xc4,0x9a] 1532*9880d681SAndroid Build Coastguard Worker// CHECK: sdiv w12, w21, w0 // encoding: [0xac,0x0e,0xc0,0x1a] 1533*9880d681SAndroid Build Coastguard Worker// CHECK: sdiv x13, x2, x1 // encoding: [0x4d,0x0c,0xc1,0x9a] 1534*9880d681SAndroid Build Coastguard Worker// CHECK: lsl w11, w12, w13 // encoding: [0x8b,0x21,0xcd,0x1a] 1535*9880d681SAndroid Build Coastguard Worker// CHECK: lsl x14, x15, x16 // encoding: [0xee,0x21,0xd0,0x9a] 1536*9880d681SAndroid Build Coastguard Worker// CHECK: lsr w17, w18, w19 // encoding: [0x51,0x26,0xd3,0x1a] 1537*9880d681SAndroid Build Coastguard Worker// CHECK: lsr x20, x21, x22 // encoding: [0xb4,0x26,0xd6,0x9a] 1538*9880d681SAndroid Build Coastguard Worker// CHECK: asr w23, w24, w25 // encoding: [0x17,0x2b,0xd9,0x1a] 1539*9880d681SAndroid Build Coastguard Worker// CHECK: asr x26, x27, x28 // encoding: [0x7a,0x2b,0xdc,0x9a] 1540*9880d681SAndroid Build Coastguard Worker// CHECK: ror w0, w1, w2 // encoding: [0x20,0x2c,0xc2,0x1a] 1541*9880d681SAndroid Build Coastguard Worker// CHECK: ror x3, x4, x5 // encoding: [0x83,0x2c,0xc5,0x9a] 1542*9880d681SAndroid Build Coastguard Worker 1543*9880d681SAndroid Build Coastguard Worker 1544*9880d681SAndroid Build Coastguard Worker lsl w6, w7, w8 1545*9880d681SAndroid Build Coastguard Worker lsl x9, x10, x11 1546*9880d681SAndroid Build Coastguard Worker lsr w12, w13, w14 1547*9880d681SAndroid Build Coastguard Worker lsr x15, x16, x17 1548*9880d681SAndroid Build Coastguard Worker asr w18, w19, w20 1549*9880d681SAndroid Build Coastguard Worker asr x21, x22, x23 1550*9880d681SAndroid Build Coastguard Worker ror w24, w25, w26 1551*9880d681SAndroid Build Coastguard Worker ror x27, x28, x29 1552*9880d681SAndroid Build Coastguard Worker// CHECK: lsl w6, w7, w8 // encoding: [0xe6,0x20,0xc8,0x1a] 1553*9880d681SAndroid Build Coastguard Worker// CHECK: lsl x9, x10, x11 // encoding: [0x49,0x21,0xcb,0x9a] 1554*9880d681SAndroid Build Coastguard Worker// CHECK: lsr w12, w13, w14 // encoding: [0xac,0x25,0xce,0x1a] 1555*9880d681SAndroid Build Coastguard Worker// CHECK: lsr x15, x16, x17 // encoding: [0x0f,0x26,0xd1,0x9a] 1556*9880d681SAndroid Build Coastguard Worker// CHECK: asr w18, w19, w20 // encoding: [0x72,0x2a,0xd4,0x1a] 1557*9880d681SAndroid Build Coastguard Worker// CHECK: asr x21, x22, x23 // encoding: [0xd5,0x2a,0xd7,0x9a] 1558*9880d681SAndroid Build Coastguard Worker// CHECK: ror w24, w25, w26 // encoding: [0x38,0x2f,0xda,0x1a] 1559*9880d681SAndroid Build Coastguard Worker// CHECK: ror x27, x28, x29 // encoding: [0x9b,0x2f,0xdd,0x9a] 1560*9880d681SAndroid Build Coastguard Worker 1561*9880d681SAndroid Build Coastguard Worker madd w1, w3, w7, w4 1562*9880d681SAndroid Build Coastguard Worker madd wzr, w0, w9, w11 1563*9880d681SAndroid Build Coastguard Worker madd w13, wzr, w4, w4 1564*9880d681SAndroid Build Coastguard Worker madd w19, w30, wzr, w29 1565*9880d681SAndroid Build Coastguard Worker madd w4, w5, w6, wzr 1566*9880d681SAndroid Build Coastguard Worker// CHECK: madd w1, w3, w7, w4 // encoding: [0x61,0x10,0x07,0x1b] 1567*9880d681SAndroid Build Coastguard Worker// CHECK: madd wzr, w0, w9, w11 // encoding: [0x1f,0x2c,0x09,0x1b] 1568*9880d681SAndroid Build Coastguard Worker// CHECK: madd w13, wzr, w4, w4 // encoding: [0xed,0x13,0x04,0x1b] 1569*9880d681SAndroid Build Coastguard Worker// CHECK: madd w19, w30, wzr, w29 // encoding: [0xd3,0x77,0x1f,0x1b] 1570*9880d681SAndroid Build Coastguard Worker// CHECK: mul w4, w5, w6 // encoding: [0xa4,0x7c,0x06,0x1b] 1571*9880d681SAndroid Build Coastguard Worker 1572*9880d681SAndroid Build Coastguard Worker madd x1, x3, x7, x4 1573*9880d681SAndroid Build Coastguard Worker madd xzr, x0, x9, x11 1574*9880d681SAndroid Build Coastguard Worker madd x13, xzr, x4, x4 1575*9880d681SAndroid Build Coastguard Worker madd x19, x30, xzr, x29 1576*9880d681SAndroid Build Coastguard Worker madd x4, x5, x6, xzr 1577*9880d681SAndroid Build Coastguard Worker// CHECK: madd x1, x3, x7, x4 // encoding: [0x61,0x10,0x07,0x9b] 1578*9880d681SAndroid Build Coastguard Worker// CHECK: madd xzr, x0, x9, x11 // encoding: [0x1f,0x2c,0x09,0x9b] 1579*9880d681SAndroid Build Coastguard Worker// CHECK: madd x13, xzr, x4, x4 // encoding: [0xed,0x13,0x04,0x9b] 1580*9880d681SAndroid Build Coastguard Worker// CHECK: madd x19, x30, xzr, x29 // encoding: [0xd3,0x77,0x1f,0x9b] 1581*9880d681SAndroid Build Coastguard Worker// CHECK: mul x4, x5, x6 // encoding: [0xa4,0x7c,0x06,0x9b] 1582*9880d681SAndroid Build Coastguard Worker 1583*9880d681SAndroid Build Coastguard Worker msub w1, w3, w7, w4 1584*9880d681SAndroid Build Coastguard Worker msub wzr, w0, w9, w11 1585*9880d681SAndroid Build Coastguard Worker msub w13, wzr, w4, w4 1586*9880d681SAndroid Build Coastguard Worker msub w19, w30, wzr, w29 1587*9880d681SAndroid Build Coastguard Worker msub w4, w5, w6, wzr 1588*9880d681SAndroid Build Coastguard Worker// CHECK: msub w1, w3, w7, w4 // encoding: [0x61,0x90,0x07,0x1b] 1589*9880d681SAndroid Build Coastguard Worker// CHECK: msub wzr, w0, w9, w11 // encoding: [0x1f,0xac,0x09,0x1b] 1590*9880d681SAndroid Build Coastguard Worker// CHECK: msub w13, wzr, w4, w4 // encoding: [0xed,0x93,0x04,0x1b] 1591*9880d681SAndroid Build Coastguard Worker// CHECK: msub w19, w30, wzr, w29 // encoding: [0xd3,0xf7,0x1f,0x1b] 1592*9880d681SAndroid Build Coastguard Worker// CHECK: mneg w4, w5, w6 // encoding: [0xa4,0xfc,0x06,0x1b] 1593*9880d681SAndroid Build Coastguard Worker 1594*9880d681SAndroid Build Coastguard Worker msub x1, x3, x7, x4 1595*9880d681SAndroid Build Coastguard Worker msub xzr, x0, x9, x11 1596*9880d681SAndroid Build Coastguard Worker msub x13, xzr, x4, x4 1597*9880d681SAndroid Build Coastguard Worker msub x19, x30, xzr, x29 1598*9880d681SAndroid Build Coastguard Worker msub x4, x5, x6, xzr 1599*9880d681SAndroid Build Coastguard Worker// CHECK: msub x1, x3, x7, x4 // encoding: [0x61,0x90,0x07,0x9b] 1600*9880d681SAndroid Build Coastguard Worker// CHECK: msub xzr, x0, x9, x11 // encoding: [0x1f,0xac,0x09,0x9b] 1601*9880d681SAndroid Build Coastguard Worker// CHECK: msub x13, xzr, x4, x4 // encoding: [0xed,0x93,0x04,0x9b] 1602*9880d681SAndroid Build Coastguard Worker// CHECK: msub x19, x30, xzr, x29 // encoding: [0xd3,0xf7,0x1f,0x9b] 1603*9880d681SAndroid Build Coastguard Worker// CHECK: mneg x4, x5, x6 // encoding: [0xa4,0xfc,0x06,0x9b] 1604*9880d681SAndroid Build Coastguard Worker 1605*9880d681SAndroid Build Coastguard Worker smaddl x3, w5, w2, x9 1606*9880d681SAndroid Build Coastguard Worker smaddl xzr, w10, w11, x12 1607*9880d681SAndroid Build Coastguard Worker smaddl x13, wzr, w14, x15 1608*9880d681SAndroid Build Coastguard Worker smaddl x16, w17, wzr, x18 1609*9880d681SAndroid Build Coastguard Worker smaddl x19, w20, w21, xzr 1610*9880d681SAndroid Build Coastguard Worker// CHECK: smaddl x3, w5, w2, x9 // encoding: [0xa3,0x24,0x22,0x9b] 1611*9880d681SAndroid Build Coastguard Worker// CHECK: smaddl xzr, w10, w11, x12 // encoding: [0x5f,0x31,0x2b,0x9b] 1612*9880d681SAndroid Build Coastguard Worker// CHECK: smaddl x13, wzr, w14, x15 // encoding: [0xed,0x3f,0x2e,0x9b] 1613*9880d681SAndroid Build Coastguard Worker// CHECK: smaddl x16, w17, wzr, x18 // encoding: [0x30,0x4a,0x3f,0x9b] 1614*9880d681SAndroid Build Coastguard Worker// CHECK: smull x19, w20, w21 // encoding: [0x93,0x7e,0x35,0x9b] 1615*9880d681SAndroid Build Coastguard Worker 1616*9880d681SAndroid Build Coastguard Worker smsubl x3, w5, w2, x9 1617*9880d681SAndroid Build Coastguard Worker smsubl xzr, w10, w11, x12 1618*9880d681SAndroid Build Coastguard Worker smsubl x13, wzr, w14, x15 1619*9880d681SAndroid Build Coastguard Worker smsubl x16, w17, wzr, x18 1620*9880d681SAndroid Build Coastguard Worker smsubl x19, w20, w21, xzr 1621*9880d681SAndroid Build Coastguard Worker// CHECK: smsubl x3, w5, w2, x9 // encoding: [0xa3,0xa4,0x22,0x9b] 1622*9880d681SAndroid Build Coastguard Worker// CHECK: smsubl xzr, w10, w11, x12 // encoding: [0x5f,0xb1,0x2b,0x9b] 1623*9880d681SAndroid Build Coastguard Worker// CHECK: smsubl x13, wzr, w14, x15 // encoding: [0xed,0xbf,0x2e,0x9b] 1624*9880d681SAndroid Build Coastguard Worker// CHECK: smsubl x16, w17, wzr, x18 // encoding: [0x30,0xca,0x3f,0x9b] 1625*9880d681SAndroid Build Coastguard Worker// CHECK: smnegl x19, w20, w21 // encoding: [0x93,0xfe,0x35,0x9b] 1626*9880d681SAndroid Build Coastguard Worker 1627*9880d681SAndroid Build Coastguard Worker umaddl x3, w5, w2, x9 1628*9880d681SAndroid Build Coastguard Worker umaddl xzr, w10, w11, x12 1629*9880d681SAndroid Build Coastguard Worker umaddl x13, wzr, w14, x15 1630*9880d681SAndroid Build Coastguard Worker umaddl x16, w17, wzr, x18 1631*9880d681SAndroid Build Coastguard Worker umaddl x19, w20, w21, xzr 1632*9880d681SAndroid Build Coastguard Worker// CHECK: umaddl x3, w5, w2, x9 // encoding: [0xa3,0x24,0xa2,0x9b] 1633*9880d681SAndroid Build Coastguard Worker// CHECK: umaddl xzr, w10, w11, x12 // encoding: [0x5f,0x31,0xab,0x9b] 1634*9880d681SAndroid Build Coastguard Worker// CHECK: umaddl x13, wzr, w14, x15 // encoding: [0xed,0x3f,0xae,0x9b] 1635*9880d681SAndroid Build Coastguard Worker// CHECK: umaddl x16, w17, wzr, x18 // encoding: [0x30,0x4a,0xbf,0x9b] 1636*9880d681SAndroid Build Coastguard Worker// CHECK: umull x19, w20, w21 // encoding: [0x93,0x7e,0xb5,0x9b] 1637*9880d681SAndroid Build Coastguard Worker 1638*9880d681SAndroid Build Coastguard Worker 1639*9880d681SAndroid Build Coastguard Worker 1640*9880d681SAndroid Build Coastguard Worker umsubl x3, w5, w2, x9 1641*9880d681SAndroid Build Coastguard Worker umsubl xzr, w10, w11, x12 1642*9880d681SAndroid Build Coastguard Worker umsubl x13, wzr, w14, x15 1643*9880d681SAndroid Build Coastguard Worker umsubl x16, w17, wzr, x18 1644*9880d681SAndroid Build Coastguard Worker umsubl x19, w20, w21, xzr 1645*9880d681SAndroid Build Coastguard Worker// CHECK: umsubl x3, w5, w2, x9 // encoding: [0xa3,0xa4,0xa2,0x9b] 1646*9880d681SAndroid Build Coastguard Worker// CHECK: umsubl xzr, w10, w11, x12 // encoding: [0x5f,0xb1,0xab,0x9b] 1647*9880d681SAndroid Build Coastguard Worker// CHECK: umsubl x13, wzr, w14, x15 // encoding: [0xed,0xbf,0xae,0x9b] 1648*9880d681SAndroid Build Coastguard Worker// CHECK: umsubl x16, w17, wzr, x18 // encoding: [0x30,0xca,0xbf,0x9b] 1649*9880d681SAndroid Build Coastguard Worker// CHECK: umnegl x19, w20, w21 // encoding: [0x93,0xfe,0xb5,0x9b] 1650*9880d681SAndroid Build Coastguard Worker 1651*9880d681SAndroid Build Coastguard Worker smulh x30, x29, x28 1652*9880d681SAndroid Build Coastguard Worker smulh xzr, x27, x26 1653*9880d681SAndroid Build Coastguard Worker smulh x25, xzr, x24 1654*9880d681SAndroid Build Coastguard Worker smulh x23, x22, xzr 1655*9880d681SAndroid Build Coastguard Worker// CHECK: smulh x30, x29, x28 // encoding: [0xbe,0x7f,0x5c,0x9b] 1656*9880d681SAndroid Build Coastguard Worker// CHECK: smulh xzr, x27, x26 // encoding: [0x7f,0x7f,0x5a,0x9b] 1657*9880d681SAndroid Build Coastguard Worker// CHECK: smulh x25, xzr, x24 // encoding: [0xf9,0x7f,0x58,0x9b] 1658*9880d681SAndroid Build Coastguard Worker// CHECK: smulh x23, x22, xzr // encoding: [0xd7,0x7e,0x5f,0x9b] 1659*9880d681SAndroid Build Coastguard Worker 1660*9880d681SAndroid Build Coastguard Worker umulh x30, x29, x28 1661*9880d681SAndroid Build Coastguard Worker umulh xzr, x27, x26 1662*9880d681SAndroid Build Coastguard Worker umulh x25, xzr, x24 1663*9880d681SAndroid Build Coastguard Worker umulh x23, x22, xzr 1664*9880d681SAndroid Build Coastguard Worker// CHECK: umulh x30, x29, x28 // encoding: [0xbe,0x7f,0xdc,0x9b] 1665*9880d681SAndroid Build Coastguard Worker// CHECK: umulh xzr, x27, x26 // encoding: [0x7f,0x7f,0xda,0x9b] 1666*9880d681SAndroid Build Coastguard Worker// CHECK: umulh x25, xzr, x24 // encoding: [0xf9,0x7f,0xd8,0x9b] 1667*9880d681SAndroid Build Coastguard Worker// CHECK: umulh x23, x22, xzr // encoding: [0xd7,0x7e,0xdf,0x9b] 1668*9880d681SAndroid Build Coastguard Worker 1669*9880d681SAndroid Build Coastguard Worker mul w3, w4, w5 1670*9880d681SAndroid Build Coastguard Worker mul wzr, w6, w7 1671*9880d681SAndroid Build Coastguard Worker mul w8, wzr, w9 1672*9880d681SAndroid Build Coastguard Worker mul w10, w11, wzr 1673*9880d681SAndroid Build Coastguard Worker 1674*9880d681SAndroid Build Coastguard Worker mul x12, x13, x14 1675*9880d681SAndroid Build Coastguard Worker mul xzr, x15, x16 1676*9880d681SAndroid Build Coastguard Worker mul x17, xzr, x18 1677*9880d681SAndroid Build Coastguard Worker mul x19, x20, xzr 1678*9880d681SAndroid Build Coastguard Worker 1679*9880d681SAndroid Build Coastguard Worker mneg w21, w22, w23 1680*9880d681SAndroid Build Coastguard Worker mneg wzr, w24, w25 1681*9880d681SAndroid Build Coastguard Worker mneg w26, wzr, w27 1682*9880d681SAndroid Build Coastguard Worker mneg w28, w29, wzr 1683*9880d681SAndroid Build Coastguard Worker 1684*9880d681SAndroid Build Coastguard Worker smull x11, w13, w17 1685*9880d681SAndroid Build Coastguard Worker umull x11, w13, w17 1686*9880d681SAndroid Build Coastguard Worker smnegl x11, w13, w17 1687*9880d681SAndroid Build Coastguard Worker umnegl x11, w13, w17 1688*9880d681SAndroid Build Coastguard Worker// CHECK: mul w3, w4, w5 // encoding: [0x83,0x7c,0x05,0x1b] 1689*9880d681SAndroid Build Coastguard Worker// CHECK: mul wzr, w6, w7 // encoding: [0xdf,0x7c,0x07,0x1b] 1690*9880d681SAndroid Build Coastguard Worker// CHECK: mul w8, wzr, w9 // encoding: [0xe8,0x7f,0x09,0x1b] 1691*9880d681SAndroid Build Coastguard Worker// CHECK: mul w10, w11, wzr // encoding: [0x6a,0x7d,0x1f,0x1b] 1692*9880d681SAndroid Build Coastguard Worker// CHECK: mul x12, x13, x14 // encoding: [0xac,0x7d,0x0e,0x9b] 1693*9880d681SAndroid Build Coastguard Worker// CHECK: mul xzr, x15, x16 // encoding: [0xff,0x7d,0x10,0x9b] 1694*9880d681SAndroid Build Coastguard Worker// CHECK: mul x17, xzr, x18 // encoding: [0xf1,0x7f,0x12,0x9b] 1695*9880d681SAndroid Build Coastguard Worker// CHECK: mul x19, x20, xzr // encoding: [0x93,0x7e,0x1f,0x9b] 1696*9880d681SAndroid Build Coastguard Worker// CHECK: mneg w21, w22, w23 // encoding: [0xd5,0xfe,0x17,0x1b] 1697*9880d681SAndroid Build Coastguard Worker// CHECK: mneg wzr, w24, w25 // encoding: [0x1f,0xff,0x19,0x1b] 1698*9880d681SAndroid Build Coastguard Worker// CHECK: mneg w26, wzr, w27 // encoding: [0xfa,0xff,0x1b,0x1b] 1699*9880d681SAndroid Build Coastguard Worker// CHECK: mneg w28, w29, wzr // encoding: [0xbc,0xff,0x1f,0x1b] 1700*9880d681SAndroid Build Coastguard Worker// CHECK: smull x11, w13, w17 // encoding: [0xab,0x7d,0x31,0x9b] 1701*9880d681SAndroid Build Coastguard Worker// CHECK: umull x11, w13, w17 // encoding: [0xab,0x7d,0xb1,0x9b] 1702*9880d681SAndroid Build Coastguard Worker// CHECK: smnegl x11, w13, w17 // encoding: [0xab,0xfd,0x31,0x9b] 1703*9880d681SAndroid Build Coastguard Worker// CHECK: umnegl x11, w13, w17 // encoding: [0xab,0xfd,0xb1,0x9b] 1704*9880d681SAndroid Build Coastguard Worker 1705*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 1706*9880d681SAndroid Build Coastguard Worker// Exception generation 1707*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 1708*9880d681SAndroid Build Coastguard Worker svc #0 1709*9880d681SAndroid Build Coastguard Worker svc #65535 1710*9880d681SAndroid Build Coastguard Worker// CHECK: svc #0 // encoding: [0x01,0x00,0x00,0xd4] 1711*9880d681SAndroid Build Coastguard Worker// CHECK: svc #{{65535|0xffff}} // encoding: [0xe1,0xff,0x1f,0xd4] 1712*9880d681SAndroid Build Coastguard Worker 1713*9880d681SAndroid Build Coastguard Worker hvc #1 1714*9880d681SAndroid Build Coastguard Worker smc #12000 1715*9880d681SAndroid Build Coastguard Worker brk #12 1716*9880d681SAndroid Build Coastguard Worker hlt #123 1717*9880d681SAndroid Build Coastguard Worker// CHECK: hvc #{{1|0x1}} // encoding: [0x22,0x00,0x00,0xd4] 1718*9880d681SAndroid Build Coastguard Worker// CHECK: smc #{{12000|0x2ee0}} // encoding: [0x03,0xdc,0x05,0xd4] 1719*9880d681SAndroid Build Coastguard Worker// CHECK: brk #{{12|0xc}} // encoding: [0x80,0x01,0x20,0xd4] 1720*9880d681SAndroid Build Coastguard Worker// CHECK: hlt #{{123|0x7b}} // encoding: [0x60,0x0f,0x40,0xd4] 1721*9880d681SAndroid Build Coastguard Worker 1722*9880d681SAndroid Build Coastguard Worker dcps1 #42 1723*9880d681SAndroid Build Coastguard Worker dcps2 #9 1724*9880d681SAndroid Build Coastguard Worker dcps3 #1000 1725*9880d681SAndroid Build Coastguard Worker// CHECK: dcps1 #{{42|0x2a}} // encoding: [0x41,0x05,0xa0,0xd4] 1726*9880d681SAndroid Build Coastguard Worker// CHECK: dcps2 #{{9|0x9}} // encoding: [0x22,0x01,0xa0,0xd4] 1727*9880d681SAndroid Build Coastguard Worker// CHECK: dcps3 #{{1000|0x3e8}} // encoding: [0x03,0x7d,0xa0,0xd4] 1728*9880d681SAndroid Build Coastguard Worker 1729*9880d681SAndroid Build Coastguard Worker dcps1 1730*9880d681SAndroid Build Coastguard Worker dcps2 1731*9880d681SAndroid Build Coastguard Worker dcps3 1732*9880d681SAndroid Build Coastguard Worker// CHECK: dcps1 // encoding: [0x01,0x00,0xa0,0xd4] 1733*9880d681SAndroid Build Coastguard Worker// CHECK: dcps2 // encoding: [0x02,0x00,0xa0,0xd4] 1734*9880d681SAndroid Build Coastguard Worker// CHECK: dcps3 // encoding: [0x03,0x00,0xa0,0xd4] 1735*9880d681SAndroid Build Coastguard Worker 1736*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 1737*9880d681SAndroid Build Coastguard Worker// Extract (immediate) 1738*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 1739*9880d681SAndroid Build Coastguard Worker 1740*9880d681SAndroid Build Coastguard Worker extr w3, w5, w7, #0 1741*9880d681SAndroid Build Coastguard Worker extr w11, w13, w17, #31 1742*9880d681SAndroid Build Coastguard Worker// CHECK: extr w3, w5, w7, #0 // encoding: [0xa3,0x00,0x87,0x13] 1743*9880d681SAndroid Build Coastguard Worker// CHECK: extr w11, w13, w17, #31 // encoding: [0xab,0x7d,0x91,0x13] 1744*9880d681SAndroid Build Coastguard Worker 1745*9880d681SAndroid Build Coastguard Worker extr x3, x5, x7, #15 1746*9880d681SAndroid Build Coastguard Worker extr x11, x13, x17, #63 1747*9880d681SAndroid Build Coastguard Worker// CHECK: extr x3, x5, x7, #15 // encoding: [0xa3,0x3c,0xc7,0x93] 1748*9880d681SAndroid Build Coastguard Worker// CHECK: extr x11, x13, x17, #63 // encoding: [0xab,0xfd,0xd1,0x93] 1749*9880d681SAndroid Build Coastguard Worker 1750*9880d681SAndroid Build Coastguard Worker ror x19, x23, #24 1751*9880d681SAndroid Build Coastguard Worker ror x29, xzr, #63 1752*9880d681SAndroid Build Coastguard Worker// CHECK: ror x19, x23, #24 // encoding: [0xf3,0x62,0xd7,0x93] 1753*9880d681SAndroid Build Coastguard Worker// CHECK: ror x29, xzr, #63 // encoding: [0xfd,0xff,0xdf,0x93] 1754*9880d681SAndroid Build Coastguard Worker 1755*9880d681SAndroid Build Coastguard Worker ror w9, w13, #31 1756*9880d681SAndroid Build Coastguard Worker// CHECK: ror w9, w13, #31 // encoding: [0xa9,0x7d,0x8d,0x13] 1757*9880d681SAndroid Build Coastguard Worker 1758*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 1759*9880d681SAndroid Build Coastguard Worker// Floating-point compare 1760*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 1761*9880d681SAndroid Build Coastguard Worker 1762*9880d681SAndroid Build Coastguard Worker fcmp s3, s5 1763*9880d681SAndroid Build Coastguard Worker fcmp s31, #0.0 1764*9880d681SAndroid Build Coastguard Worker// CHECK: fcmp s3, s5 // encoding: [0x60,0x20,0x25,0x1e] 1765*9880d681SAndroid Build Coastguard Worker// CHECK: fcmp s31, #0.0 // encoding: [0xe8,0x23,0x20,0x1e] 1766*9880d681SAndroid Build Coastguard Worker 1767*9880d681SAndroid Build Coastguard Worker fcmpe s29, s30 1768*9880d681SAndroid Build Coastguard Worker fcmpe s15, #0.0 1769*9880d681SAndroid Build Coastguard Worker// CHECK: fcmpe s29, s30 // encoding: [0xb0,0x23,0x3e,0x1e] 1770*9880d681SAndroid Build Coastguard Worker// CHECK: fcmpe s15, #0.0 // encoding: [0xf8,0x21,0x20,0x1e] 1771*9880d681SAndroid Build Coastguard Worker 1772*9880d681SAndroid Build Coastguard Worker fcmp d4, d12 1773*9880d681SAndroid Build Coastguard Worker fcmp d23, #0.0 1774*9880d681SAndroid Build Coastguard Worker// CHECK: fcmp d4, d12 // encoding: [0x80,0x20,0x6c,0x1e] 1775*9880d681SAndroid Build Coastguard Worker// CHECK: fcmp d23, #0.0 // encoding: [0xe8,0x22,0x60,0x1e] 1776*9880d681SAndroid Build Coastguard Worker 1777*9880d681SAndroid Build Coastguard Worker fcmpe d26, d22 1778*9880d681SAndroid Build Coastguard Worker fcmpe d29, #0.0 1779*9880d681SAndroid Build Coastguard Worker// CHECK: fcmpe d26, d22 // encoding: [0x50,0x23,0x76,0x1e] 1780*9880d681SAndroid Build Coastguard Worker// CHECK: fcmpe d29, #0.0 // encoding: [0xb8,0x23,0x60,0x1e] 1781*9880d681SAndroid Build Coastguard Worker 1782*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 1783*9880d681SAndroid Build Coastguard Worker// Floating-point conditional compare 1784*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 1785*9880d681SAndroid Build Coastguard Worker 1786*9880d681SAndroid Build Coastguard Worker fccmp s1, s31, #0, eq 1787*9880d681SAndroid Build Coastguard Worker fccmp s3, s0, #15, hs 1788*9880d681SAndroid Build Coastguard Worker fccmp s31, s15, #13, cs 1789*9880d681SAndroid Build Coastguard Worker// CHECK: fccmp s1, s31, #0, eq // encoding: [0x20,0x04,0x3f,0x1e] 1790*9880d681SAndroid Build Coastguard Worker// CHECK: fccmp s3, s0, #15, hs // encoding: [0x6f,0x24,0x20,0x1e] 1791*9880d681SAndroid Build Coastguard Worker// CHECK: fccmp s31, s15, #13, hs // encoding: [0xed,0x27,0x2f,0x1e] 1792*9880d681SAndroid Build Coastguard Worker 1793*9880d681SAndroid Build Coastguard Worker fccmp d9, d31, #0, le 1794*9880d681SAndroid Build Coastguard Worker fccmp d3, d0, #15, gt 1795*9880d681SAndroid Build Coastguard Worker fccmp d31, d5, #7, ne 1796*9880d681SAndroid Build Coastguard Worker// CHECK: fccmp d9, d31, #0, le // encoding: [0x20,0xd5,0x7f,0x1e] 1797*9880d681SAndroid Build Coastguard Worker// CHECK: fccmp d3, d0, #15, gt // encoding: [0x6f,0xc4,0x60,0x1e] 1798*9880d681SAndroid Build Coastguard Worker// CHECK: fccmp d31, d5, #7, ne // encoding: [0xe7,0x17,0x65,0x1e] 1799*9880d681SAndroid Build Coastguard Worker 1800*9880d681SAndroid Build Coastguard Worker fccmpe s1, s31, #0, eq 1801*9880d681SAndroid Build Coastguard Worker fccmpe s3, s0, #15, hs 1802*9880d681SAndroid Build Coastguard Worker fccmpe s31, s15, #13, cs 1803*9880d681SAndroid Build Coastguard Worker// CHECK: fccmpe s1, s31, #0, eq // encoding: [0x30,0x04,0x3f,0x1e] 1804*9880d681SAndroid Build Coastguard Worker// CHECK: fccmpe s3, s0, #15, hs // encoding: [0x7f,0x24,0x20,0x1e] 1805*9880d681SAndroid Build Coastguard Worker// CHECK: fccmpe s31, s15, #13, hs // encoding: [0xfd,0x27,0x2f,0x1e] 1806*9880d681SAndroid Build Coastguard Worker 1807*9880d681SAndroid Build Coastguard Worker fccmpe d9, d31, #0, le 1808*9880d681SAndroid Build Coastguard Worker fccmpe d3, d0, #15, gt 1809*9880d681SAndroid Build Coastguard Worker fccmpe d31, d5, #7, ne 1810*9880d681SAndroid Build Coastguard Worker// CHECK: fccmpe d9, d31, #0, le // encoding: [0x30,0xd5,0x7f,0x1e] 1811*9880d681SAndroid Build Coastguard Worker// CHECK: fccmpe d3, d0, #15, gt // encoding: [0x7f,0xc4,0x60,0x1e] 1812*9880d681SAndroid Build Coastguard Worker// CHECK: fccmpe d31, d5, #7, ne // encoding: [0xf7,0x17,0x65,0x1e] 1813*9880d681SAndroid Build Coastguard Worker 1814*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 1815*9880d681SAndroid Build Coastguard Worker// Floating-point conditional compare 1816*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 1817*9880d681SAndroid Build Coastguard Worker 1818*9880d681SAndroid Build Coastguard Worker fcsel s3, s20, s9, pl 1819*9880d681SAndroid Build Coastguard Worker fcsel d9, d10, d11, mi 1820*9880d681SAndroid Build Coastguard Worker// CHECK: fcsel s3, s20, s9, pl // encoding: [0x83,0x5e,0x29,0x1e] 1821*9880d681SAndroid Build Coastguard Worker// CHECK: fcsel d9, d10, d11, mi // encoding: [0x49,0x4d,0x6b,0x1e] 1822*9880d681SAndroid Build Coastguard Worker 1823*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 1824*9880d681SAndroid Build Coastguard Worker// Floating-point data-processing (1 source) 1825*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 1826*9880d681SAndroid Build Coastguard Worker 1827*9880d681SAndroid Build Coastguard Worker fmov s0, s1 1828*9880d681SAndroid Build Coastguard Worker fabs s2, s3 1829*9880d681SAndroid Build Coastguard Worker fneg s4, s5 1830*9880d681SAndroid Build Coastguard Worker fsqrt s6, s7 1831*9880d681SAndroid Build Coastguard Worker fcvt d8, s9 1832*9880d681SAndroid Build Coastguard Worker fcvt h10, s11 1833*9880d681SAndroid Build Coastguard Worker frintn s12, s13 1834*9880d681SAndroid Build Coastguard Worker frintp s14, s15 1835*9880d681SAndroid Build Coastguard Worker frintm s16, s17 1836*9880d681SAndroid Build Coastguard Worker frintz s18, s19 1837*9880d681SAndroid Build Coastguard Worker frinta s20, s21 1838*9880d681SAndroid Build Coastguard Worker frintx s22, s23 1839*9880d681SAndroid Build Coastguard Worker frinti s24, s25 1840*9880d681SAndroid Build Coastguard Worker// CHECK: fmov s0, s1 // encoding: [0x20,0x40,0x20,0x1e] 1841*9880d681SAndroid Build Coastguard Worker// CHECK: fabs s2, s3 // encoding: [0x62,0xc0,0x20,0x1e] 1842*9880d681SAndroid Build Coastguard Worker// CHECK: fneg s4, s5 // encoding: [0xa4,0x40,0x21,0x1e] 1843*9880d681SAndroid Build Coastguard Worker// CHECK: fsqrt s6, s7 // encoding: [0xe6,0xc0,0x21,0x1e] 1844*9880d681SAndroid Build Coastguard Worker// CHECK: fcvt d8, s9 // encoding: [0x28,0xc1,0x22,0x1e] 1845*9880d681SAndroid Build Coastguard Worker// CHECK: fcvt h10, s11 // encoding: [0x6a,0xc1,0x23,0x1e] 1846*9880d681SAndroid Build Coastguard Worker// CHECK: frintn s12, s13 // encoding: [0xac,0x41,0x24,0x1e] 1847*9880d681SAndroid Build Coastguard Worker// CHECK: frintp s14, s15 // encoding: [0xee,0xc1,0x24,0x1e] 1848*9880d681SAndroid Build Coastguard Worker// CHECK: frintm s16, s17 // encoding: [0x30,0x42,0x25,0x1e] 1849*9880d681SAndroid Build Coastguard Worker// CHECK: frintz s18, s19 // encoding: [0x72,0xc2,0x25,0x1e] 1850*9880d681SAndroid Build Coastguard Worker// CHECK: frinta s20, s21 // encoding: [0xb4,0x42,0x26,0x1e] 1851*9880d681SAndroid Build Coastguard Worker// CHECK: frintx s22, s23 // encoding: [0xf6,0x42,0x27,0x1e] 1852*9880d681SAndroid Build Coastguard Worker// CHECK: frinti s24, s25 // encoding: [0x38,0xc3,0x27,0x1e] 1853*9880d681SAndroid Build Coastguard Worker 1854*9880d681SAndroid Build Coastguard Worker fmov d0, d1 1855*9880d681SAndroid Build Coastguard Worker fabs d2, d3 1856*9880d681SAndroid Build Coastguard Worker fneg d4, d5 1857*9880d681SAndroid Build Coastguard Worker fsqrt d6, d7 1858*9880d681SAndroid Build Coastguard Worker fcvt s8, d9 1859*9880d681SAndroid Build Coastguard Worker fcvt h10, d11 1860*9880d681SAndroid Build Coastguard Worker frintn d12, d13 1861*9880d681SAndroid Build Coastguard Worker frintp d14, d15 1862*9880d681SAndroid Build Coastguard Worker frintm d16, d17 1863*9880d681SAndroid Build Coastguard Worker frintz d18, d19 1864*9880d681SAndroid Build Coastguard Worker frinta d20, d21 1865*9880d681SAndroid Build Coastguard Worker frintx d22, d23 1866*9880d681SAndroid Build Coastguard Worker frinti d24, d25 1867*9880d681SAndroid Build Coastguard Worker// CHECK: fmov d0, d1 // encoding: [0x20,0x40,0x60,0x1e] 1868*9880d681SAndroid Build Coastguard Worker// CHECK: fabs d2, d3 // encoding: [0x62,0xc0,0x60,0x1e] 1869*9880d681SAndroid Build Coastguard Worker// CHECK: fneg d4, d5 // encoding: [0xa4,0x40,0x61,0x1e] 1870*9880d681SAndroid Build Coastguard Worker// CHECK: fsqrt d6, d7 // encoding: [0xe6,0xc0,0x61,0x1e] 1871*9880d681SAndroid Build Coastguard Worker// CHECK: fcvt s8, d9 // encoding: [0x28,0x41,0x62,0x1e] 1872*9880d681SAndroid Build Coastguard Worker// CHECK: fcvt h10, d11 // encoding: [0x6a,0xc1,0x63,0x1e] 1873*9880d681SAndroid Build Coastguard Worker// CHECK: frintn d12, d13 // encoding: [0xac,0x41,0x64,0x1e] 1874*9880d681SAndroid Build Coastguard Worker// CHECK: frintp d14, d15 // encoding: [0xee,0xc1,0x64,0x1e] 1875*9880d681SAndroid Build Coastguard Worker// CHECK: frintm d16, d17 // encoding: [0x30,0x42,0x65,0x1e] 1876*9880d681SAndroid Build Coastguard Worker// CHECK: frintz d18, d19 // encoding: [0x72,0xc2,0x65,0x1e] 1877*9880d681SAndroid Build Coastguard Worker// CHECK: frinta d20, d21 // encoding: [0xb4,0x42,0x66,0x1e] 1878*9880d681SAndroid Build Coastguard Worker// CHECK: frintx d22, d23 // encoding: [0xf6,0x42,0x67,0x1e] 1879*9880d681SAndroid Build Coastguard Worker// CHECK: frinti d24, d25 // encoding: [0x38,0xc3,0x67,0x1e] 1880*9880d681SAndroid Build Coastguard Worker 1881*9880d681SAndroid Build Coastguard Worker fcvt s26, h27 1882*9880d681SAndroid Build Coastguard Worker fcvt d28, h29 1883*9880d681SAndroid Build Coastguard Worker// CHECK: fcvt s26, h27 // encoding: [0x7a,0x43,0xe2,0x1e] 1884*9880d681SAndroid Build Coastguard Worker// CHECK: fcvt d28, h29 // encoding: [0xbc,0xc3,0xe2,0x1e] 1885*9880d681SAndroid Build Coastguard Worker 1886*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 1887*9880d681SAndroid Build Coastguard Worker// Floating-point data-processing (2 sources) 1888*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 1889*9880d681SAndroid Build Coastguard Worker 1890*9880d681SAndroid Build Coastguard Worker fmul s20, s19, s17 1891*9880d681SAndroid Build Coastguard Worker fdiv s1, s2, s3 1892*9880d681SAndroid Build Coastguard Worker fadd s4, s5, s6 1893*9880d681SAndroid Build Coastguard Worker fsub s7, s8, s9 1894*9880d681SAndroid Build Coastguard Worker fmax s10, s11, s12 1895*9880d681SAndroid Build Coastguard Worker fmin s13, s14, s15 1896*9880d681SAndroid Build Coastguard Worker fmaxnm s16, s17, s18 1897*9880d681SAndroid Build Coastguard Worker fminnm s19, s20, s21 1898*9880d681SAndroid Build Coastguard Worker fnmul s22, s23, s24 1899*9880d681SAndroid Build Coastguard Worker// CHECK: fmul s20, s19, s17 // encoding: [0x74,0x0a,0x31,0x1e] 1900*9880d681SAndroid Build Coastguard Worker// CHECK: fdiv s1, s2, s3 // encoding: [0x41,0x18,0x23,0x1e] 1901*9880d681SAndroid Build Coastguard Worker// CHECK: fadd s4, s5, s6 // encoding: [0xa4,0x28,0x26,0x1e] 1902*9880d681SAndroid Build Coastguard Worker// CHECK: fsub s7, s8, s9 // encoding: [0x07,0x39,0x29,0x1e] 1903*9880d681SAndroid Build Coastguard Worker// CHECK: fmax s10, s11, s12 // encoding: [0x6a,0x49,0x2c,0x1e] 1904*9880d681SAndroid Build Coastguard Worker// CHECK: fmin s13, s14, s15 // encoding: [0xcd,0x59,0x2f,0x1e] 1905*9880d681SAndroid Build Coastguard Worker// CHECK: fmaxnm s16, s17, s18 // encoding: [0x30,0x6a,0x32,0x1e] 1906*9880d681SAndroid Build Coastguard Worker// CHECK: fminnm s19, s20, s21 // encoding: [0x93,0x7a,0x35,0x1e] 1907*9880d681SAndroid Build Coastguard Worker// CHECK: fnmul s22, s23, s24 // encoding: [0xf6,0x8a,0x38,0x1e] 1908*9880d681SAndroid Build Coastguard Worker 1909*9880d681SAndroid Build Coastguard Worker fmul d20, d19, d17 1910*9880d681SAndroid Build Coastguard Worker fdiv d1, d2, d3 1911*9880d681SAndroid Build Coastguard Worker fadd d4, d5, d6 1912*9880d681SAndroid Build Coastguard Worker fsub d7, d8, d9 1913*9880d681SAndroid Build Coastguard Worker fmax d10, d11, d12 1914*9880d681SAndroid Build Coastguard Worker fmin d13, d14, d15 1915*9880d681SAndroid Build Coastguard Worker fmaxnm d16, d17, d18 1916*9880d681SAndroid Build Coastguard Worker fminnm d19, d20, d21 1917*9880d681SAndroid Build Coastguard Worker fnmul d22, d23, d24 1918*9880d681SAndroid Build Coastguard Worker// CHECK: fmul d20, d19, d17 // encoding: [0x74,0x0a,0x71,0x1e] 1919*9880d681SAndroid Build Coastguard Worker// CHECK: fdiv d1, d2, d3 // encoding: [0x41,0x18,0x63,0x1e] 1920*9880d681SAndroid Build Coastguard Worker// CHECK: fadd d4, d5, d6 // encoding: [0xa4,0x28,0x66,0x1e] 1921*9880d681SAndroid Build Coastguard Worker// CHECK: fsub d7, d8, d9 // encoding: [0x07,0x39,0x69,0x1e] 1922*9880d681SAndroid Build Coastguard Worker// CHECK: fmax d10, d11, d12 // encoding: [0x6a,0x49,0x6c,0x1e] 1923*9880d681SAndroid Build Coastguard Worker// CHECK: fmin d13, d14, d15 // encoding: [0xcd,0x59,0x6f,0x1e] 1924*9880d681SAndroid Build Coastguard Worker// CHECK: fmaxnm d16, d17, d18 // encoding: [0x30,0x6a,0x72,0x1e] 1925*9880d681SAndroid Build Coastguard Worker// CHECK: fminnm d19, d20, d21 // encoding: [0x93,0x7a,0x75,0x1e] 1926*9880d681SAndroid Build Coastguard Worker// CHECK: fnmul d22, d23, d24 // encoding: [0xf6,0x8a,0x78,0x1e] 1927*9880d681SAndroid Build Coastguard Worker 1928*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 1929*9880d681SAndroid Build Coastguard Worker// Floating-point data-processing (3 sources) 1930*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 1931*9880d681SAndroid Build Coastguard Worker 1932*9880d681SAndroid Build Coastguard Worker fmadd s3, s5, s6, s31 1933*9880d681SAndroid Build Coastguard Worker fmadd d3, d13, d0, d23 1934*9880d681SAndroid Build Coastguard Worker fmsub s3, s5, s6, s31 1935*9880d681SAndroid Build Coastguard Worker fmsub d3, d13, d0, d23 1936*9880d681SAndroid Build Coastguard Worker fnmadd s3, s5, s6, s31 1937*9880d681SAndroid Build Coastguard Worker fnmadd d3, d13, d0, d23 1938*9880d681SAndroid Build Coastguard Worker fnmsub s3, s5, s6, s31 1939*9880d681SAndroid Build Coastguard Worker fnmsub d3, d13, d0, d23 1940*9880d681SAndroid Build Coastguard Worker// CHECK: fmadd s3, s5, s6, s31 // encoding: [0xa3,0x7c,0x06,0x1f] 1941*9880d681SAndroid Build Coastguard Worker// CHECK: fmadd d3, d13, d0, d23 // encoding: [0xa3,0x5d,0x40,0x1f] 1942*9880d681SAndroid Build Coastguard Worker// CHECK: fmsub s3, s5, s6, s31 // encoding: [0xa3,0xfc,0x06,0x1f] 1943*9880d681SAndroid Build Coastguard Worker// CHECK: fmsub d3, d13, d0, d23 // encoding: [0xa3,0xdd,0x40,0x1f] 1944*9880d681SAndroid Build Coastguard Worker// CHECK: fnmadd s3, s5, s6, s31 // encoding: [0xa3,0x7c,0x26,0x1f] 1945*9880d681SAndroid Build Coastguard Worker// CHECK: fnmadd d3, d13, d0, d23 // encoding: [0xa3,0x5d,0x60,0x1f] 1946*9880d681SAndroid Build Coastguard Worker// CHECK: fnmsub s3, s5, s6, s31 // encoding: [0xa3,0xfc,0x26,0x1f] 1947*9880d681SAndroid Build Coastguard Worker// CHECK: fnmsub d3, d13, d0, d23 // encoding: [0xa3,0xdd,0x60,0x1f] 1948*9880d681SAndroid Build Coastguard Worker 1949*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 1950*9880d681SAndroid Build Coastguard Worker// Floating-point <-> fixed-point conversion 1951*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 1952*9880d681SAndroid Build Coastguard Worker 1953*9880d681SAndroid Build Coastguard Worker fcvtzs w3, s5, #1 1954*9880d681SAndroid Build Coastguard Worker fcvtzs wzr, s20, #13 1955*9880d681SAndroid Build Coastguard Worker fcvtzs w19, s0, #32 1956*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtzs w3, s5, #1 // encoding: [0xa3,0xfc,0x18,0x1e] 1957*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtzs wzr, s20, #13 // encoding: [0x9f,0xce,0x18,0x1e] 1958*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtzs w19, s0, #32 // encoding: [0x13,0x80,0x18,0x1e] 1959*9880d681SAndroid Build Coastguard Worker 1960*9880d681SAndroid Build Coastguard Worker fcvtzs x3, s5, #1 1961*9880d681SAndroid Build Coastguard Worker fcvtzs x12, s30, #45 1962*9880d681SAndroid Build Coastguard Worker fcvtzs x19, s0, #64 1963*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtzs x3, s5, #1 // encoding: [0xa3,0xfc,0x18,0x9e] 1964*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtzs x12, s30, #45 // encoding: [0xcc,0x4f,0x18,0x9e] 1965*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtzs x19, s0, #64 // encoding: [0x13,0x00,0x18,0x9e] 1966*9880d681SAndroid Build Coastguard Worker 1967*9880d681SAndroid Build Coastguard Worker fcvtzs w3, d5, #1 1968*9880d681SAndroid Build Coastguard Worker fcvtzs wzr, d20, #13 1969*9880d681SAndroid Build Coastguard Worker fcvtzs w19, d0, #32 1970*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtzs w3, d5, #1 // encoding: [0xa3,0xfc,0x58,0x1e] 1971*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtzs wzr, d20, #13 // encoding: [0x9f,0xce,0x58,0x1e] 1972*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtzs w19, d0, #32 // encoding: [0x13,0x80,0x58,0x1e] 1973*9880d681SAndroid Build Coastguard Worker 1974*9880d681SAndroid Build Coastguard Worker fcvtzs x3, d5, #1 1975*9880d681SAndroid Build Coastguard Worker fcvtzs x12, d30, #45 1976*9880d681SAndroid Build Coastguard Worker fcvtzs x19, d0, #64 1977*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtzs x3, d5, #1 // encoding: [0xa3,0xfc,0x58,0x9e] 1978*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtzs x12, d30, #45 // encoding: [0xcc,0x4f,0x58,0x9e] 1979*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtzs x19, d0, #64 // encoding: [0x13,0x00,0x58,0x9e] 1980*9880d681SAndroid Build Coastguard Worker 1981*9880d681SAndroid Build Coastguard Worker fcvtzu w3, s5, #1 1982*9880d681SAndroid Build Coastguard Worker fcvtzu wzr, s20, #13 1983*9880d681SAndroid Build Coastguard Worker fcvtzu w19, s0, #32 1984*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtzu w3, s5, #1 // encoding: [0xa3,0xfc,0x19,0x1e] 1985*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtzu wzr, s20, #13 // encoding: [0x9f,0xce,0x19,0x1e] 1986*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtzu w19, s0, #32 // encoding: [0x13,0x80,0x19,0x1e] 1987*9880d681SAndroid Build Coastguard Worker 1988*9880d681SAndroid Build Coastguard Worker fcvtzu x3, s5, #1 1989*9880d681SAndroid Build Coastguard Worker fcvtzu x12, s30, #45 1990*9880d681SAndroid Build Coastguard Worker fcvtzu x19, s0, #64 1991*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtzu x3, s5, #1 // encoding: [0xa3,0xfc,0x19,0x9e] 1992*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtzu x12, s30, #45 // encoding: [0xcc,0x4f,0x19,0x9e] 1993*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtzu x19, s0, #64 // encoding: [0x13,0x00,0x19,0x9e] 1994*9880d681SAndroid Build Coastguard Worker 1995*9880d681SAndroid Build Coastguard Worker fcvtzu w3, d5, #1 1996*9880d681SAndroid Build Coastguard Worker fcvtzu wzr, d20, #13 1997*9880d681SAndroid Build Coastguard Worker fcvtzu w19, d0, #32 1998*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtzu w3, d5, #1 // encoding: [0xa3,0xfc,0x59,0x1e] 1999*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtzu wzr, d20, #13 // encoding: [0x9f,0xce,0x59,0x1e] 2000*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtzu w19, d0, #32 // encoding: [0x13,0x80,0x59,0x1e] 2001*9880d681SAndroid Build Coastguard Worker 2002*9880d681SAndroid Build Coastguard Worker fcvtzu x3, d5, #1 2003*9880d681SAndroid Build Coastguard Worker fcvtzu x12, d30, #45 2004*9880d681SAndroid Build Coastguard Worker fcvtzu x19, d0, #64 2005*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtzu x3, d5, #1 // encoding: [0xa3,0xfc,0x59,0x9e] 2006*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtzu x12, d30, #45 // encoding: [0xcc,0x4f,0x59,0x9e] 2007*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtzu x19, d0, #64 // encoding: [0x13,0x00,0x59,0x9e] 2008*9880d681SAndroid Build Coastguard Worker 2009*9880d681SAndroid Build Coastguard Worker scvtf s23, w19, #1 2010*9880d681SAndroid Build Coastguard Worker scvtf s31, wzr, #20 2011*9880d681SAndroid Build Coastguard Worker scvtf s14, w0, #32 2012*9880d681SAndroid Build Coastguard Worker// CHECK: scvtf s23, w19, #1 // encoding: [0x77,0xfe,0x02,0x1e] 2013*9880d681SAndroid Build Coastguard Worker// CHECK: scvtf s31, wzr, #20 // encoding: [0xff,0xb3,0x02,0x1e] 2014*9880d681SAndroid Build Coastguard Worker// CHECK: scvtf s14, w0, #32 // encoding: [0x0e,0x80,0x02,0x1e] 2015*9880d681SAndroid Build Coastguard Worker 2016*9880d681SAndroid Build Coastguard Worker scvtf s23, x19, #1 2017*9880d681SAndroid Build Coastguard Worker scvtf s31, xzr, #20 2018*9880d681SAndroid Build Coastguard Worker scvtf s14, x0, #64 2019*9880d681SAndroid Build Coastguard Worker// CHECK: scvtf s23, x19, #1 // encoding: [0x77,0xfe,0x02,0x9e] 2020*9880d681SAndroid Build Coastguard Worker// CHECK: scvtf s31, xzr, #20 // encoding: [0xff,0xb3,0x02,0x9e] 2021*9880d681SAndroid Build Coastguard Worker// CHECK: scvtf s14, x0, #64 // encoding: [0x0e,0x00,0x02,0x9e] 2022*9880d681SAndroid Build Coastguard Worker 2023*9880d681SAndroid Build Coastguard Worker scvtf d23, w19, #1 2024*9880d681SAndroid Build Coastguard Worker scvtf d31, wzr, #20 2025*9880d681SAndroid Build Coastguard Worker scvtf d14, w0, #32 2026*9880d681SAndroid Build Coastguard Worker// CHECK: scvtf d23, w19, #1 // encoding: [0x77,0xfe,0x42,0x1e] 2027*9880d681SAndroid Build Coastguard Worker// CHECK: scvtf d31, wzr, #20 // encoding: [0xff,0xb3,0x42,0x1e] 2028*9880d681SAndroid Build Coastguard Worker// CHECK: scvtf d14, w0, #32 // encoding: [0x0e,0x80,0x42,0x1e] 2029*9880d681SAndroid Build Coastguard Worker 2030*9880d681SAndroid Build Coastguard Worker scvtf d23, x19, #1 2031*9880d681SAndroid Build Coastguard Worker scvtf d31, xzr, #20 2032*9880d681SAndroid Build Coastguard Worker scvtf d14, x0, #64 2033*9880d681SAndroid Build Coastguard Worker// CHECK: scvtf d23, x19, #1 // encoding: [0x77,0xfe,0x42,0x9e] 2034*9880d681SAndroid Build Coastguard Worker// CHECK: scvtf d31, xzr, #20 // encoding: [0xff,0xb3,0x42,0x9e] 2035*9880d681SAndroid Build Coastguard Worker// CHECK: scvtf d14, x0, #64 // encoding: [0x0e,0x00,0x42,0x9e] 2036*9880d681SAndroid Build Coastguard Worker 2037*9880d681SAndroid Build Coastguard Worker ucvtf s23, w19, #1 2038*9880d681SAndroid Build Coastguard Worker ucvtf s31, wzr, #20 2039*9880d681SAndroid Build Coastguard Worker ucvtf s14, w0, #32 2040*9880d681SAndroid Build Coastguard Worker// CHECK: ucvtf s23, w19, #1 // encoding: [0x77,0xfe,0x03,0x1e] 2041*9880d681SAndroid Build Coastguard Worker// CHECK: ucvtf s31, wzr, #20 // encoding: [0xff,0xb3,0x03,0x1e] 2042*9880d681SAndroid Build Coastguard Worker// CHECK: ucvtf s14, w0, #32 // encoding: [0x0e,0x80,0x03,0x1e] 2043*9880d681SAndroid Build Coastguard Worker 2044*9880d681SAndroid Build Coastguard Worker ucvtf s23, x19, #1 2045*9880d681SAndroid Build Coastguard Worker ucvtf s31, xzr, #20 2046*9880d681SAndroid Build Coastguard Worker ucvtf s14, x0, #64 2047*9880d681SAndroid Build Coastguard Worker// CHECK: ucvtf s23, x19, #1 // encoding: [0x77,0xfe,0x03,0x9e] 2048*9880d681SAndroid Build Coastguard Worker// CHECK: ucvtf s31, xzr, #20 // encoding: [0xff,0xb3,0x03,0x9e] 2049*9880d681SAndroid Build Coastguard Worker// CHECK: ucvtf s14, x0, #64 // encoding: [0x0e,0x00,0x03,0x9e] 2050*9880d681SAndroid Build Coastguard Worker 2051*9880d681SAndroid Build Coastguard Worker ucvtf d23, w19, #1 2052*9880d681SAndroid Build Coastguard Worker ucvtf d31, wzr, #20 2053*9880d681SAndroid Build Coastguard Worker ucvtf d14, w0, #32 2054*9880d681SAndroid Build Coastguard Worker// CHECK: ucvtf d23, w19, #1 // encoding: [0x77,0xfe,0x43,0x1e] 2055*9880d681SAndroid Build Coastguard Worker// CHECK: ucvtf d31, wzr, #20 // encoding: [0xff,0xb3,0x43,0x1e] 2056*9880d681SAndroid Build Coastguard Worker// CHECK: ucvtf d14, w0, #32 // encoding: [0x0e,0x80,0x43,0x1e] 2057*9880d681SAndroid Build Coastguard Worker 2058*9880d681SAndroid Build Coastguard Worker ucvtf d23, x19, #1 2059*9880d681SAndroid Build Coastguard Worker ucvtf d31, xzr, #20 2060*9880d681SAndroid Build Coastguard Worker ucvtf d14, x0, #64 2061*9880d681SAndroid Build Coastguard Worker// CHECK: ucvtf d23, x19, #1 // encoding: [0x77,0xfe,0x43,0x9e] 2062*9880d681SAndroid Build Coastguard Worker// CHECK: ucvtf d31, xzr, #20 // encoding: [0xff,0xb3,0x43,0x9e] 2063*9880d681SAndroid Build Coastguard Worker// CHECK: ucvtf d14, x0, #64 // encoding: [0x0e,0x00,0x43,0x9e] 2064*9880d681SAndroid Build Coastguard Worker 2065*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 2066*9880d681SAndroid Build Coastguard Worker// Floating-point <-> integer conversion 2067*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 2068*9880d681SAndroid Build Coastguard Worker fcvtns w3, s31 2069*9880d681SAndroid Build Coastguard Worker fcvtns xzr, s12 2070*9880d681SAndroid Build Coastguard Worker fcvtnu wzr, s12 2071*9880d681SAndroid Build Coastguard Worker fcvtnu x0, s0 2072*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtns w3, s31 // encoding: [0xe3,0x03,0x20,0x1e] 2073*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtns xzr, s12 // encoding: [0x9f,0x01,0x20,0x9e] 2074*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtnu wzr, s12 // encoding: [0x9f,0x01,0x21,0x1e] 2075*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtnu x0, s0 // encoding: [0x00,0x00,0x21,0x9e] 2076*9880d681SAndroid Build Coastguard Worker 2077*9880d681SAndroid Build Coastguard Worker fcvtps wzr, s9 2078*9880d681SAndroid Build Coastguard Worker fcvtps x12, s20 2079*9880d681SAndroid Build Coastguard Worker fcvtpu w30, s23 2080*9880d681SAndroid Build Coastguard Worker fcvtpu x29, s3 2081*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtps wzr, s9 // encoding: [0x3f,0x01,0x28,0x1e] 2082*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtps x12, s20 // encoding: [0x8c,0x02,0x28,0x9e] 2083*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtpu w30, s23 // encoding: [0xfe,0x02,0x29,0x1e] 2084*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtpu x29, s3 // encoding: [0x7d,0x00,0x29,0x9e] 2085*9880d681SAndroid Build Coastguard Worker 2086*9880d681SAndroid Build Coastguard Worker fcvtms w2, s3 2087*9880d681SAndroid Build Coastguard Worker fcvtms x4, s5 2088*9880d681SAndroid Build Coastguard Worker fcvtmu w6, s7 2089*9880d681SAndroid Build Coastguard Worker fcvtmu x8, s9 2090*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtms w2, s3 // encoding: [0x62,0x00,0x30,0x1e] 2091*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtms x4, s5 // encoding: [0xa4,0x00,0x30,0x9e] 2092*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtmu w6, s7 // encoding: [0xe6,0x00,0x31,0x1e] 2093*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtmu x8, s9 // encoding: [0x28,0x01,0x31,0x9e] 2094*9880d681SAndroid Build Coastguard Worker 2095*9880d681SAndroid Build Coastguard Worker fcvtzs w10, s11 2096*9880d681SAndroid Build Coastguard Worker fcvtzs x12, s13 2097*9880d681SAndroid Build Coastguard Worker fcvtzu w14, s15 2098*9880d681SAndroid Build Coastguard Worker fcvtzu x15, s16 2099*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtzs w10, s11 // encoding: [0x6a,0x01,0x38,0x1e] 2100*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtzs x12, s13 // encoding: [0xac,0x01,0x38,0x9e] 2101*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtzu w14, s15 // encoding: [0xee,0x01,0x39,0x1e] 2102*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtzu x15, s16 // encoding: [0x0f,0x02,0x39,0x9e] 2103*9880d681SAndroid Build Coastguard Worker 2104*9880d681SAndroid Build Coastguard Worker scvtf s17, w18 2105*9880d681SAndroid Build Coastguard Worker scvtf s19, x20 2106*9880d681SAndroid Build Coastguard Worker ucvtf s21, w22 2107*9880d681SAndroid Build Coastguard Worker scvtf s23, x24 2108*9880d681SAndroid Build Coastguard Worker// CHECK: scvtf s17, w18 // encoding: [0x51,0x02,0x22,0x1e] 2109*9880d681SAndroid Build Coastguard Worker// CHECK: scvtf s19, x20 // encoding: [0x93,0x02,0x22,0x9e] 2110*9880d681SAndroid Build Coastguard Worker// CHECK: ucvtf s21, w22 // encoding: [0xd5,0x02,0x23,0x1e] 2111*9880d681SAndroid Build Coastguard Worker// CHECK: scvtf s23, x24 // encoding: [0x17,0x03,0x22,0x9e] 2112*9880d681SAndroid Build Coastguard Worker 2113*9880d681SAndroid Build Coastguard Worker fcvtas w25, s26 2114*9880d681SAndroid Build Coastguard Worker fcvtas x27, s28 2115*9880d681SAndroid Build Coastguard Worker fcvtau w29, s30 2116*9880d681SAndroid Build Coastguard Worker fcvtau xzr, s0 2117*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtas w25, s26 // encoding: [0x59,0x03,0x24,0x1e] 2118*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtas x27, s28 // encoding: [0x9b,0x03,0x24,0x9e] 2119*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtau w29, s30 // encoding: [0xdd,0x03,0x25,0x1e] 2120*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtau xzr, s0 // encoding: [0x1f,0x00,0x25,0x9e] 2121*9880d681SAndroid Build Coastguard Worker 2122*9880d681SAndroid Build Coastguard Worker fcvtns w3, d31 2123*9880d681SAndroid Build Coastguard Worker fcvtns xzr, d12 2124*9880d681SAndroid Build Coastguard Worker fcvtnu wzr, d12 2125*9880d681SAndroid Build Coastguard Worker fcvtnu x0, d0 2126*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtns w3, d31 // encoding: [0xe3,0x03,0x60,0x1e] 2127*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtns xzr, d12 // encoding: [0x9f,0x01,0x60,0x9e] 2128*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtnu wzr, d12 // encoding: [0x9f,0x01,0x61,0x1e] 2129*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtnu x0, d0 // encoding: [0x00,0x00,0x61,0x9e] 2130*9880d681SAndroid Build Coastguard Worker 2131*9880d681SAndroid Build Coastguard Worker fcvtps wzr, d9 2132*9880d681SAndroid Build Coastguard Worker fcvtps x12, d20 2133*9880d681SAndroid Build Coastguard Worker fcvtpu w30, d23 2134*9880d681SAndroid Build Coastguard Worker fcvtpu x29, d3 2135*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtps wzr, d9 // encoding: [0x3f,0x01,0x68,0x1e] 2136*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtps x12, d20 // encoding: [0x8c,0x02,0x68,0x9e] 2137*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtpu w30, d23 // encoding: [0xfe,0x02,0x69,0x1e] 2138*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtpu x29, d3 // encoding: [0x7d,0x00,0x69,0x9e] 2139*9880d681SAndroid Build Coastguard Worker 2140*9880d681SAndroid Build Coastguard Worker fcvtms w2, d3 2141*9880d681SAndroid Build Coastguard Worker fcvtms x4, d5 2142*9880d681SAndroid Build Coastguard Worker fcvtmu w6, d7 2143*9880d681SAndroid Build Coastguard Worker fcvtmu x8, d9 2144*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtms w2, d3 // encoding: [0x62,0x00,0x70,0x1e] 2145*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtms x4, d5 // encoding: [0xa4,0x00,0x70,0x9e] 2146*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtmu w6, d7 // encoding: [0xe6,0x00,0x71,0x1e] 2147*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtmu x8, d9 // encoding: [0x28,0x01,0x71,0x9e] 2148*9880d681SAndroid Build Coastguard Worker 2149*9880d681SAndroid Build Coastguard Worker fcvtzs w10, d11 2150*9880d681SAndroid Build Coastguard Worker fcvtzs x12, d13 2151*9880d681SAndroid Build Coastguard Worker fcvtzu w14, d15 2152*9880d681SAndroid Build Coastguard Worker fcvtzu x15, d16 2153*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtzs w10, d11 // encoding: [0x6a,0x01,0x78,0x1e] 2154*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtzs x12, d13 // encoding: [0xac,0x01,0x78,0x9e] 2155*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtzu w14, d15 // encoding: [0xee,0x01,0x79,0x1e] 2156*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtzu x15, d16 // encoding: [0x0f,0x02,0x79,0x9e] 2157*9880d681SAndroid Build Coastguard Worker 2158*9880d681SAndroid Build Coastguard Worker scvtf d17, w18 2159*9880d681SAndroid Build Coastguard Worker scvtf d19, x20 2160*9880d681SAndroid Build Coastguard Worker ucvtf d21, w22 2161*9880d681SAndroid Build Coastguard Worker ucvtf d23, x24 2162*9880d681SAndroid Build Coastguard Worker// CHECK: scvtf d17, w18 // encoding: [0x51,0x02,0x62,0x1e] 2163*9880d681SAndroid Build Coastguard Worker// CHECK: scvtf d19, x20 // encoding: [0x93,0x02,0x62,0x9e] 2164*9880d681SAndroid Build Coastguard Worker// CHECK: ucvtf d21, w22 // encoding: [0xd5,0x02,0x63,0x1e] 2165*9880d681SAndroid Build Coastguard Worker// CHECK: ucvtf d23, x24 // encoding: [0x17,0x03,0x63,0x9e] 2166*9880d681SAndroid Build Coastguard Worker 2167*9880d681SAndroid Build Coastguard Worker fcvtas w25, d26 2168*9880d681SAndroid Build Coastguard Worker fcvtas x27, d28 2169*9880d681SAndroid Build Coastguard Worker fcvtau w29, d30 2170*9880d681SAndroid Build Coastguard Worker fcvtau xzr, d0 2171*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtas w25, d26 // encoding: [0x59,0x03,0x64,0x1e] 2172*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtas x27, d28 // encoding: [0x9b,0x03,0x64,0x9e] 2173*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtau w29, d30 // encoding: [0xdd,0x03,0x65,0x1e] 2174*9880d681SAndroid Build Coastguard Worker// CHECK: fcvtau xzr, d0 // encoding: [0x1f,0x00,0x65,0x9e] 2175*9880d681SAndroid Build Coastguard Worker 2176*9880d681SAndroid Build Coastguard Worker fmov w3, s9 2177*9880d681SAndroid Build Coastguard Worker fmov s9, w3 2178*9880d681SAndroid Build Coastguard Worker// CHECK: fmov w3, s9 // encoding: [0x23,0x01,0x26,0x1e] 2179*9880d681SAndroid Build Coastguard Worker// CHECK: fmov s9, w3 // encoding: [0x69,0x00,0x27,0x1e] 2180*9880d681SAndroid Build Coastguard Worker 2181*9880d681SAndroid Build Coastguard Worker fmov x20, d31 2182*9880d681SAndroid Build Coastguard Worker fmov d1, x15 2183*9880d681SAndroid Build Coastguard Worker// CHECK: fmov x20, d31 // encoding: [0xf4,0x03,0x66,0x9e] 2184*9880d681SAndroid Build Coastguard Worker// CHECK: fmov d1, x15 // encoding: [0xe1,0x01,0x67,0x9e] 2185*9880d681SAndroid Build Coastguard Worker 2186*9880d681SAndroid Build Coastguard Worker fmov x3, v12.d[1] 2187*9880d681SAndroid Build Coastguard Worker fmov v1.d[1], x19 2188*9880d681SAndroid Build Coastguard Worker fmov v3.d[1], xzr 2189*9880d681SAndroid Build Coastguard Worker// CHECK: fmov x3, v12.d[1] // encoding: [0x83,0x01,0xae,0x9e] 2190*9880d681SAndroid Build Coastguard Worker// CHECK: fmov v1.d[1], x19 // encoding: [0x61,0x02,0xaf,0x9e] 2191*9880d681SAndroid Build Coastguard Worker// CHECK: fmov v3.d[1], xzr // encoding: [0xe3,0x03,0xaf,0x9e] 2192*9880d681SAndroid Build Coastguard Worker 2193*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 2194*9880d681SAndroid Build Coastguard Worker// Floating-point immediate 2195*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 2196*9880d681SAndroid Build Coastguard Worker 2197*9880d681SAndroid Build Coastguard Worker fmov s2, #0.125 2198*9880d681SAndroid Build Coastguard Worker fmov s3, #1.0 2199*9880d681SAndroid Build Coastguard Worker fmov d30, #16.0 2200*9880d681SAndroid Build Coastguard Worker// CHECK: fmov s2, #{{0.12500000|1.250*e-01}} // encoding: [0x02,0x10,0x28,0x1e] 2201*9880d681SAndroid Build Coastguard Worker// CHECK: fmov s3, #{{1.00000000|1.0*e\+00}} // encoding: [0x03,0x10,0x2e,0x1e] 2202*9880d681SAndroid Build Coastguard Worker// CHECK: fmov d30, #{{16.00000000|1.60*e\+01}} // encoding: [0x1e,0x10,0x66,0x1e] 2203*9880d681SAndroid Build Coastguard Worker 2204*9880d681SAndroid Build Coastguard Worker fmov s4, #1.0625 2205*9880d681SAndroid Build Coastguard Worker fmov d10, #1.9375 2206*9880d681SAndroid Build Coastguard Worker// CHECK: fmov s4, #{{1.06250*(e\+00)?}} // encoding: [0x04,0x30,0x2e,0x1e] 2207*9880d681SAndroid Build Coastguard Worker// CHECK: fmov d10, #{{1.93750*(e\+00)?}} // encoding: [0x0a,0xf0,0x6f,0x1e] 2208*9880d681SAndroid Build Coastguard Worker 2209*9880d681SAndroid Build Coastguard Worker fmov s12, #-1.0 2210*9880d681SAndroid Build Coastguard Worker// CHECK: fmov s12, #{{-1.0*(e\+00)?}} // encoding: [0x0c,0x10,0x3e,0x1e] 2211*9880d681SAndroid Build Coastguard Worker 2212*9880d681SAndroid Build Coastguard Worker fmov d16, #8.5 2213*9880d681SAndroid Build Coastguard Worker// CHECK: fmov d16, #{{8.50*(e\+00)?}} // encoding: [0x10,0x30,0x64,0x1e] 2214*9880d681SAndroid Build Coastguard Worker 2215*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 2216*9880d681SAndroid Build Coastguard Worker// Load-register (literal) 2217*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 2218*9880d681SAndroid Build Coastguard Worker ldr w3, here 2219*9880d681SAndroid Build Coastguard Worker ldr x29, there 2220*9880d681SAndroid Build Coastguard Worker ldrsw xzr, everywhere 2221*9880d681SAndroid Build Coastguard Worker 2222*9880d681SAndroid Build Coastguard Worker// CHECK: ldr w3, here // encoding: [0bAAA00011,A,A,0x18] 2223*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: here, kind: fixup_aarch64_ldr_pcrel_imm19 2224*9880d681SAndroid Build Coastguard Worker// CHECK: ldr x29, there // encoding: [0bAAA11101,A,A,0x58] 2225*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: there, kind: fixup_aarch64_ldr_pcrel_imm19 2226*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsw xzr, everywhere // encoding: [0bAAA11111,A,A,0x98] 2227*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: everywhere, kind: fixup_aarch64_ldr_pcrel_imm19 2228*9880d681SAndroid Build Coastguard Worker 2229*9880d681SAndroid Build Coastguard Worker ldr s0, who_knows 2230*9880d681SAndroid Build Coastguard Worker ldr d0, i_dont 2231*9880d681SAndroid Build Coastguard Worker ldr q0, there_must_be_a_better_way 2232*9880d681SAndroid Build Coastguard Worker 2233*9880d681SAndroid Build Coastguard Worker// CHECK: ldr s0, who_knows // encoding: [0bAAA00000,A,A,0x1c] 2234*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: who_knows, kind: fixup_aarch64_ldr_pcrel_imm19 2235*9880d681SAndroid Build Coastguard Worker// CHECK: ldr d0, i_dont // encoding: [0bAAA00000,A,A,0x5c] 2236*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: i_dont, kind: fixup_aarch64_ldr_pcrel_imm19 2237*9880d681SAndroid Build Coastguard Worker// CHECK: ldr q0, there_must_be_a_better_way // encoding: [0bAAA00000,A,A,0x9c] 2238*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: there_must_be_a_better_way, kind: fixup_aarch64_ldr_pcrel_imm19 2239*9880d681SAndroid Build Coastguard Worker 2240*9880d681SAndroid Build Coastguard Worker ldr w0, #1048572 2241*9880d681SAndroid Build Coastguard Worker ldr x10, #-1048576 2242*9880d681SAndroid Build Coastguard Worker// CHECK: ldr w0, #1048572 // encoding: [0xe0,0xff,0x7f,0x18] 2243*9880d681SAndroid Build Coastguard Worker// CHECK: ldr x10, #-1048576 // encoding: [0x0a,0x00,0x80,0x58] 2244*9880d681SAndroid Build Coastguard Worker 2245*9880d681SAndroid Build Coastguard Worker prfm pldl1strm, nowhere 2246*9880d681SAndroid Build Coastguard Worker prfm #22, somewhere 2247*9880d681SAndroid Build Coastguard Worker 2248*9880d681SAndroid Build Coastguard Worker// CHECK: prfm pldl1strm, nowhere // encoding: [0bAAA00001,A,A,0xd8] 2249*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: nowhere, kind: fixup_aarch64_ldr_pcrel_imm19 2250*9880d681SAndroid Build Coastguard Worker// CHECK: prfm #22, somewhere // encoding: [0bAAA10110,A,A,0xd8] 2251*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: somewhere, kind: fixup_aarch64_ldr_pcrel_imm19 2252*9880d681SAndroid Build Coastguard Worker 2253*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 2254*9880d681SAndroid Build Coastguard Worker// Load/store exclusive 2255*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 2256*9880d681SAndroid Build Coastguard Worker 2257*9880d681SAndroid Build Coastguard Worker stxrb w1, w2, [x3, #0] 2258*9880d681SAndroid Build Coastguard Worker stxrh w2, w3, [x4] 2259*9880d681SAndroid Build Coastguard Worker stxr wzr, w4, [sp] 2260*9880d681SAndroid Build Coastguard Worker stxr w5, x6, [x7] 2261*9880d681SAndroid Build Coastguard Worker// CHECK: stxrb w1, w2, [x3] // encoding: [0x62,0x7c,0x01,0x08] 2262*9880d681SAndroid Build Coastguard Worker// CHECK: stxrh w2, w3, [x4] // encoding: [0x83,0x7c,0x02,0x48] 2263*9880d681SAndroid Build Coastguard Worker// CHECK: stxr wzr, w4, [sp] // encoding: [0xe4,0x7f,0x1f,0x88] 2264*9880d681SAndroid Build Coastguard Worker// CHECK: stxr w5, x6, [x7] // encoding: [0xe6,0x7c,0x05,0xc8] 2265*9880d681SAndroid Build Coastguard Worker 2266*9880d681SAndroid Build Coastguard Worker ldxrb w7, [x9] 2267*9880d681SAndroid Build Coastguard Worker ldxrh wzr, [x10] 2268*9880d681SAndroid Build Coastguard Worker ldxr w9, [sp] 2269*9880d681SAndroid Build Coastguard Worker ldxr x10, [x11] 2270*9880d681SAndroid Build Coastguard Worker// CHECK: ldxrb w7, [x9] // encoding: [0x27,0x7d,0x5f,0x08] 2271*9880d681SAndroid Build Coastguard Worker// CHECK: ldxrh wzr, [x10] // encoding: [0x5f,0x7d,0x5f,0x48] 2272*9880d681SAndroid Build Coastguard Worker// CHECK: ldxr w9, [sp] // encoding: [0xe9,0x7f,0x5f,0x88] 2273*9880d681SAndroid Build Coastguard Worker// CHECK: ldxr x10, [x11] // encoding: [0x6a,0x7d,0x5f,0xc8] 2274*9880d681SAndroid Build Coastguard Worker 2275*9880d681SAndroid Build Coastguard Worker stxp w11, w12, w13, [x14] 2276*9880d681SAndroid Build Coastguard Worker stxp wzr, x23, x14, [x15] 2277*9880d681SAndroid Build Coastguard Worker// CHECK: stxp w11, w12, w13, [x14] // encoding: [0xcc,0x35,0x2b,0x88] 2278*9880d681SAndroid Build Coastguard Worker// CHECK: stxp wzr, x23, x14, [x15] // encoding: [0xf7,0x39,0x3f,0xc8] 2279*9880d681SAndroid Build Coastguard Worker 2280*9880d681SAndroid Build Coastguard Worker ldxp w12, wzr, [sp] 2281*9880d681SAndroid Build Coastguard Worker ldxp x13, x14, [x15] 2282*9880d681SAndroid Build Coastguard Worker// CHECK: ldxp w12, wzr, [sp] // encoding: [0xec,0x7f,0x7f,0x88] 2283*9880d681SAndroid Build Coastguard Worker// CHECK: ldxp x13, x14, [x15] // encoding: [0xed,0x39,0x7f,0xc8] 2284*9880d681SAndroid Build Coastguard Worker 2285*9880d681SAndroid Build Coastguard Worker stlxrb w14, w15, [x16] 2286*9880d681SAndroid Build Coastguard Worker stlxrh w15, w16, [x17,#0] 2287*9880d681SAndroid Build Coastguard Worker stlxr wzr, w17, [sp] 2288*9880d681SAndroid Build Coastguard Worker stlxr w18, x19, [x20] 2289*9880d681SAndroid Build Coastguard Worker// CHECK: stlxrb w14, w15, [x16] // encoding: [0x0f,0xfe,0x0e,0x08] 2290*9880d681SAndroid Build Coastguard Worker// CHECK: stlxrh w15, w16, [x17] // encoding: [0x30,0xfe,0x0f,0x48] 2291*9880d681SAndroid Build Coastguard Worker// CHECK: stlxr wzr, w17, [sp] // encoding: [0xf1,0xff,0x1f,0x88] 2292*9880d681SAndroid Build Coastguard Worker// CHECK: stlxr w18, x19, [x20] // encoding: [0x93,0xfe,0x12,0xc8] 2293*9880d681SAndroid Build Coastguard Worker 2294*9880d681SAndroid Build Coastguard Worker ldaxrb w19, [x21] 2295*9880d681SAndroid Build Coastguard Worker ldaxrh w20, [sp] 2296*9880d681SAndroid Build Coastguard Worker ldaxr wzr, [x22] 2297*9880d681SAndroid Build Coastguard Worker ldaxr x21, [x23] 2298*9880d681SAndroid Build Coastguard Worker// CHECK: ldaxrb w19, [x21] // encoding: [0xb3,0xfe,0x5f,0x08] 2299*9880d681SAndroid Build Coastguard Worker// CHECK: ldaxrh w20, [sp] // encoding: [0xf4,0xff,0x5f,0x48] 2300*9880d681SAndroid Build Coastguard Worker// CHECK: ldaxr wzr, [x22] // encoding: [0xdf,0xfe,0x5f,0x88] 2301*9880d681SAndroid Build Coastguard Worker// CHECK: ldaxr x21, [x23] // encoding: [0xf5,0xfe,0x5f,0xc8] 2302*9880d681SAndroid Build Coastguard Worker 2303*9880d681SAndroid Build Coastguard Worker stlxp wzr, w22, w23, [x24] 2304*9880d681SAndroid Build Coastguard Worker stlxp w25, x26, x27, [sp] 2305*9880d681SAndroid Build Coastguard Worker// CHECK: stlxp wzr, w22, w23, [x24] // encoding: [0x16,0xdf,0x3f,0x88] 2306*9880d681SAndroid Build Coastguard Worker// CHECK: stlxp w25, x26, x27, [sp] // encoding: [0xfa,0xef,0x39,0xc8] 2307*9880d681SAndroid Build Coastguard Worker 2308*9880d681SAndroid Build Coastguard Worker ldaxp w26, wzr, [sp] 2309*9880d681SAndroid Build Coastguard Worker ldaxp x27, x28, [x30] 2310*9880d681SAndroid Build Coastguard Worker// CHECK: ldaxp w26, wzr, [sp] // encoding: [0xfa,0xff,0x7f,0x88] 2311*9880d681SAndroid Build Coastguard Worker// CHECK: ldaxp x27, x28, [x30] // encoding: [0xdb,0xf3,0x7f,0xc8] 2312*9880d681SAndroid Build Coastguard Worker 2313*9880d681SAndroid Build Coastguard Worker stlrb w27, [sp] 2314*9880d681SAndroid Build Coastguard Worker stlrh w28, [x0] 2315*9880d681SAndroid Build Coastguard Worker stlr wzr, [x1] 2316*9880d681SAndroid Build Coastguard Worker stlr x30, [x2] 2317*9880d681SAndroid Build Coastguard Worker// CHECK: stlrb w27, [sp] // encoding: [0xfb,0xff,0x9f,0x08] 2318*9880d681SAndroid Build Coastguard Worker// CHECK: stlrh w28, [x0] // encoding: [0x1c,0xfc,0x9f,0x48] 2319*9880d681SAndroid Build Coastguard Worker// CHECK: stlr wzr, [x1] // encoding: [0x3f,0xfc,0x9f,0x88] 2320*9880d681SAndroid Build Coastguard Worker// CHECK: stlr x30, [x2] // encoding: [0x5e,0xfc,0x9f,0xc8] 2321*9880d681SAndroid Build Coastguard Worker 2322*9880d681SAndroid Build Coastguard Worker ldarb w29, [sp] 2323*9880d681SAndroid Build Coastguard Worker ldarh w30, [x0] 2324*9880d681SAndroid Build Coastguard Worker ldar wzr, [x1] 2325*9880d681SAndroid Build Coastguard Worker ldar x1, [x2] 2326*9880d681SAndroid Build Coastguard Worker// CHECK: ldarb w29, [sp] // encoding: [0xfd,0xff,0xdf,0x08] 2327*9880d681SAndroid Build Coastguard Worker// CHECK: ldarh w30, [x0] // encoding: [0x1e,0xfc,0xdf,0x48] 2328*9880d681SAndroid Build Coastguard Worker// CHECK: ldar wzr, [x1] // encoding: [0x3f,0xfc,0xdf,0x88] 2329*9880d681SAndroid Build Coastguard Worker// CHECK: ldar x1, [x2] // encoding: [0x41,0xfc,0xdf,0xc8] 2330*9880d681SAndroid Build Coastguard Worker 2331*9880d681SAndroid Build Coastguard Worker stlxp wzr, w22, w23, [x24,#0] 2332*9880d681SAndroid Build Coastguard Worker// CHECK: stlxp wzr, w22, w23, [x24] // encoding: [0x16,0xdf,0x3f,0x88] 2333*9880d681SAndroid Build Coastguard Worker 2334*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 2335*9880d681SAndroid Build Coastguard Worker// Load/store (unaligned immediate) 2336*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 2337*9880d681SAndroid Build Coastguard Worker 2338*9880d681SAndroid Build Coastguard Worker sturb w9, [sp, #0] 2339*9880d681SAndroid Build Coastguard Worker sturh wzr, [x12, #255] 2340*9880d681SAndroid Build Coastguard Worker stur w16, [x0, #-256] 2341*9880d681SAndroid Build Coastguard Worker stur x28, [x14, #1] 2342*9880d681SAndroid Build Coastguard Worker// CHECK: sturb w9, [sp] // encoding: [0xe9,0x03,0x00,0x38] 2343*9880d681SAndroid Build Coastguard Worker// CHECK: sturh wzr, [x12, #255] // encoding: [0x9f,0xf1,0x0f,0x78] 2344*9880d681SAndroid Build Coastguard Worker// CHECK: stur w16, [x0, #-256] // encoding: [0x10,0x00,0x10,0xb8] 2345*9880d681SAndroid Build Coastguard Worker// CHECK: stur x28, [x14, #1] // encoding: [0xdc,0x11,0x00,0xf8] 2346*9880d681SAndroid Build Coastguard Worker 2347*9880d681SAndroid Build Coastguard Worker ldurb w1, [x20, #255] 2348*9880d681SAndroid Build Coastguard Worker ldurh w20, [x1, #255] 2349*9880d681SAndroid Build Coastguard Worker ldur w12, [sp, #255] 2350*9880d681SAndroid Build Coastguard Worker ldur xzr, [x12, #255] 2351*9880d681SAndroid Build Coastguard Worker// CHECK: ldurb w1, [x20, #255] // encoding: [0x81,0xf2,0x4f,0x38] 2352*9880d681SAndroid Build Coastguard Worker// CHECK: ldurh w20, [x1, #255] // encoding: [0x34,0xf0,0x4f,0x78] 2353*9880d681SAndroid Build Coastguard Worker// CHECK: ldur w12, [sp, #255] // encoding: [0xec,0xf3,0x4f,0xb8] 2354*9880d681SAndroid Build Coastguard Worker// CHECK: ldur xzr, [x12, #255] // encoding: [0x9f,0xf1,0x4f,0xf8] 2355*9880d681SAndroid Build Coastguard Worker 2356*9880d681SAndroid Build Coastguard Worker ldursb x9, [x7, #-256] 2357*9880d681SAndroid Build Coastguard Worker ldursh x17, [x19, #-256] 2358*9880d681SAndroid Build Coastguard Worker ldursw x20, [x15, #-256] 2359*9880d681SAndroid Build Coastguard Worker ldursw x13, [x2] 2360*9880d681SAndroid Build Coastguard Worker prfum pldl2keep, [sp, #-256] 2361*9880d681SAndroid Build Coastguard Worker ldursb w19, [x1, #-256] 2362*9880d681SAndroid Build Coastguard Worker ldursh w15, [x21, #-256] 2363*9880d681SAndroid Build Coastguard Worker// CHECK: ldursb x9, [x7, #-256] // encoding: [0xe9,0x00,0x90,0x38] 2364*9880d681SAndroid Build Coastguard Worker// CHECK: ldursh x17, [x19, #-256] // encoding: [0x71,0x02,0x90,0x78] 2365*9880d681SAndroid Build Coastguard Worker// CHECK: ldursw x20, [x15, #-256] // encoding: [0xf4,0x01,0x90,0xb8] 2366*9880d681SAndroid Build Coastguard Worker// CHECK: ldursw x13, [x2] // encoding: [0x4d,0x00,0x80,0xb8] 2367*9880d681SAndroid Build Coastguard Worker// CHECK: prfum pldl2keep, [sp, #-256] // encoding: [0xe2,0x03,0x90,0xf8] 2368*9880d681SAndroid Build Coastguard Worker// CHECK: ldursb w19, [x1, #-256] // encoding: [0x33,0x00,0xd0,0x38] 2369*9880d681SAndroid Build Coastguard Worker// CHECK: ldursh w15, [x21, #-256] // encoding: [0xaf,0x02,0xd0,0x78] 2370*9880d681SAndroid Build Coastguard Worker 2371*9880d681SAndroid Build Coastguard Worker stur b0, [sp, #1] 2372*9880d681SAndroid Build Coastguard Worker stur h12, [x12, #-1] 2373*9880d681SAndroid Build Coastguard Worker stur s15, [x0, #255] 2374*9880d681SAndroid Build Coastguard Worker stur d31, [x5, #25] 2375*9880d681SAndroid Build Coastguard Worker stur q9, [x5] 2376*9880d681SAndroid Build Coastguard Worker// CHECK: stur b0, [sp, #1] // encoding: [0xe0,0x13,0x00,0x3c] 2377*9880d681SAndroid Build Coastguard Worker// CHECK: stur h12, [x12, #-1] // encoding: [0x8c,0xf1,0x1f,0x7c] 2378*9880d681SAndroid Build Coastguard Worker// CHECK: stur s15, [x0, #255] // encoding: [0x0f,0xf0,0x0f,0xbc] 2379*9880d681SAndroid Build Coastguard Worker// CHECK: stur d31, [x5, #25] // encoding: [0xbf,0x90,0x01,0xfc] 2380*9880d681SAndroid Build Coastguard Worker// CHECK: stur q9, [x5] // encoding: [0xa9,0x00,0x80,0x3c] 2381*9880d681SAndroid Build Coastguard Worker 2382*9880d681SAndroid Build Coastguard Worker ldur b3, [sp] 2383*9880d681SAndroid Build Coastguard Worker ldur h5, [x4, #-256] 2384*9880d681SAndroid Build Coastguard Worker ldur s7, [x12, #-1] 2385*9880d681SAndroid Build Coastguard Worker ldur d11, [x19, #4] 2386*9880d681SAndroid Build Coastguard Worker ldur q13, [x1, #2] 2387*9880d681SAndroid Build Coastguard Worker// CHECK: ldur b3, [sp] // encoding: [0xe3,0x03,0x40,0x3c] 2388*9880d681SAndroid Build Coastguard Worker// CHECK: ldur h5, [x4, #-256] // encoding: [0x85,0x00,0x50,0x7c] 2389*9880d681SAndroid Build Coastguard Worker// CHECK: ldur s7, [x12, #-1] // encoding: [0x87,0xf1,0x5f,0xbc] 2390*9880d681SAndroid Build Coastguard Worker// CHECK: ldur d11, [x19, #4] // encoding: [0x6b,0x42,0x40,0xfc] 2391*9880d681SAndroid Build Coastguard Worker// CHECK: ldur q13, [x1, #2] // encoding: [0x2d,0x20,0xc0,0x3c] 2392*9880d681SAndroid Build Coastguard Worker 2393*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 2394*9880d681SAndroid Build Coastguard Worker// Load/store (unsigned immediate) 2395*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 2396*9880d681SAndroid Build Coastguard Worker 2397*9880d681SAndroid Build Coastguard Worker//// Basic addressing mode limits: 8 byte access 2398*9880d681SAndroid Build Coastguard Worker ldr x0, [x0] 2399*9880d681SAndroid Build Coastguard Worker ldr x4, [x29, #0] 2400*9880d681SAndroid Build Coastguard Worker ldr x30, [x12, #32760] 2401*9880d681SAndroid Build Coastguard Worker ldr x20, [sp, #8] 2402*9880d681SAndroid Build Coastguard Worker// CHECK: ldr x0, [x0] // encoding: [0x00,0x00,0x40,0xf9] 2403*9880d681SAndroid Build Coastguard Worker// CHECK: ldr x4, [x29] // encoding: [0xa4,0x03,0x40,0xf9] 2404*9880d681SAndroid Build Coastguard Worker// CHECK: ldr x30, [x12, #32760] // encoding: [0x9e,0xfd,0x7f,0xf9] 2405*9880d681SAndroid Build Coastguard Worker// CHECK: ldr x20, [sp, #8] // encoding: [0xf4,0x07,0x40,0xf9] 2406*9880d681SAndroid Build Coastguard Worker 2407*9880d681SAndroid Build Coastguard Worker//// Rt treats 31 as zero-register 2408*9880d681SAndroid Build Coastguard Worker ldr xzr, [sp] 2409*9880d681SAndroid Build Coastguard Worker// CHECK: ldr xzr, [sp] // encoding: [0xff,0x03,0x40,0xf9] 2410*9880d681SAndroid Build Coastguard Worker 2411*9880d681SAndroid Build Coastguard Worker //// 4-byte load, check still 64-bit address, limits 2412*9880d681SAndroid Build Coastguard Worker ldr w2, [sp] 2413*9880d681SAndroid Build Coastguard Worker ldr w17, [sp, #16380] 2414*9880d681SAndroid Build Coastguard Worker ldr w13, [x2, #4] 2415*9880d681SAndroid Build Coastguard Worker// CHECK: ldr w2, [sp] // encoding: [0xe2,0x03,0x40,0xb9] 2416*9880d681SAndroid Build Coastguard Worker// CHECK: ldr w17, [sp, #16380] // encoding: [0xf1,0xff,0x7f,0xb9] 2417*9880d681SAndroid Build Coastguard Worker// CHECK: ldr w13, [x2, #4] // encoding: [0x4d,0x04,0x40,0xb9] 2418*9880d681SAndroid Build Coastguard Worker 2419*9880d681SAndroid Build Coastguard Worker//// Signed 4-byte load. Limits. 2420*9880d681SAndroid Build Coastguard Worker ldrsw x2, [x5,#4] 2421*9880d681SAndroid Build Coastguard Worker ldrsw x23, [sp, #16380] 2422*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsw x2, [x5, #4] // encoding: [0xa2,0x04,0x80,0xb9] 2423*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsw x23, [sp, #16380] // encoding: [0xf7,0xff,0xbf,0xb9] 2424*9880d681SAndroid Build Coastguard Worker 2425*9880d681SAndroid Build Coastguard Worker//// 2-byte loads 2426*9880d681SAndroid Build Coastguard Worker ldrh w2, [x4] 2427*9880d681SAndroid Build Coastguard Worker ldrsh w23, [x6, #8190] 2428*9880d681SAndroid Build Coastguard Worker ldrsh wzr, [sp, #2] 2429*9880d681SAndroid Build Coastguard Worker ldrsh x29, [x2, #2] 2430*9880d681SAndroid Build Coastguard Worker// CHECK: ldrh w2, [x4] // encoding: [0x82,0x00,0x40,0x79] 2431*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsh w23, [x6, #8190] // encoding: [0xd7,0xfc,0xff,0x79] 2432*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsh wzr, [sp, #2] // encoding: [0xff,0x07,0xc0,0x79] 2433*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsh x29, [x2, #2] // encoding: [0x5d,0x04,0x80,0x79] 2434*9880d681SAndroid Build Coastguard Worker 2435*9880d681SAndroid Build Coastguard Worker//// 1-byte loads 2436*9880d681SAndroid Build Coastguard Worker ldrb w26, [x3, #121] 2437*9880d681SAndroid Build Coastguard Worker ldrb w12, [x2, #0] 2438*9880d681SAndroid Build Coastguard Worker ldrsb w27, [sp, #4095] 2439*9880d681SAndroid Build Coastguard Worker ldrsb xzr, [x15] 2440*9880d681SAndroid Build Coastguard Worker// CHECK: ldrb w26, [x3, #121] // encoding: [0x7a,0xe4,0x41,0x39] 2441*9880d681SAndroid Build Coastguard Worker// CHECK: ldrb w12, [x2] // encoding: [0x4c,0x00,0x40,0x39] 2442*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsb w27, [sp, #4095] // encoding: [0xfb,0xff,0xff,0x39] 2443*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsb xzr, [x15] // encoding: [0xff,0x01,0x80,0x39] 2444*9880d681SAndroid Build Coastguard Worker 2445*9880d681SAndroid Build Coastguard Worker//// Stores 2446*9880d681SAndroid Build Coastguard Worker str x30, [sp] 2447*9880d681SAndroid Build Coastguard Worker str w20, [x4, #16380] 2448*9880d681SAndroid Build Coastguard Worker strh w20, [x10, #14] 2449*9880d681SAndroid Build Coastguard Worker strh w17, [sp, #8190] 2450*9880d681SAndroid Build Coastguard Worker strb w23, [x3, #4095] 2451*9880d681SAndroid Build Coastguard Worker strb wzr, [x2] 2452*9880d681SAndroid Build Coastguard Worker// CHECK: str x30, [sp] // encoding: [0xfe,0x03,0x00,0xf9] 2453*9880d681SAndroid Build Coastguard Worker// CHECK: str w20, [x4, #16380] // encoding: [0x94,0xfc,0x3f,0xb9] 2454*9880d681SAndroid Build Coastguard Worker// CHECK: strh w20, [x10, #14] // encoding: [0x54,0x1d,0x00,0x79] 2455*9880d681SAndroid Build Coastguard Worker// CHECK: strh w17, [sp, #8190] // encoding: [0xf1,0xff,0x3f,0x79] 2456*9880d681SAndroid Build Coastguard Worker// CHECK: strb w23, [x3, #4095] // encoding: [0x77,0xfc,0x3f,0x39] 2457*9880d681SAndroid Build Coastguard Worker// CHECK: strb wzr, [x2] // encoding: [0x5f,0x00,0x00,0x39] 2458*9880d681SAndroid Build Coastguard Worker 2459*9880d681SAndroid Build Coastguard Worker//// Relocations 2460*9880d681SAndroid Build Coastguard Worker str x15, [x5, #:lo12:sym] 2461*9880d681SAndroid Build Coastguard Worker ldrb w15, [x5, #:lo12:sym] 2462*9880d681SAndroid Build Coastguard Worker ldrsh x15, [x5, #:lo12:sym] 2463*9880d681SAndroid Build Coastguard Worker ldrsw x15, [x5, #:lo12:sym] 2464*9880d681SAndroid Build Coastguard Worker ldr x15, [x5, #:lo12:sym] 2465*9880d681SAndroid Build Coastguard Worker ldr q3, [x2, #:lo12:sym] 2466*9880d681SAndroid Build Coastguard Worker 2467*9880d681SAndroid Build Coastguard Worker// CHECK: str x15, [x5, :lo12:sym] // encoding: [0xaf,0bAAAAAA00,0b00AAAAAA,0xf9] 2468*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: :lo12:sym, kind: fixup_aarch64_ldst_imm12_scale8 2469*9880d681SAndroid Build Coastguard Worker// CHECK: ldrb w15, [x5, :lo12:sym] // encoding: [0xaf,0bAAAAAA00,0b01AAAAAA,0x39] 2470*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: :lo12:sym, kind: fixup_aarch64_ldst_imm12_scale1 2471*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsh x15, [x5, :lo12:sym] // encoding: [0xaf,0bAAAAAA00,0b10AAAAAA,0x79] 2472*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: :lo12:sym, kind: fixup_aarch64_ldst_imm12_scale2 2473*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsw x15, [x5, :lo12:sym] // encoding: [0xaf,0bAAAAAA00,0b10AAAAAA,0xb9] 2474*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: :lo12:sym, kind: fixup_aarch64_ldst_imm12_scale4 2475*9880d681SAndroid Build Coastguard Worker// CHECK: ldr x15, [x5, :lo12:sym] // encoding: [0xaf,0bAAAAAA00,0b01AAAAAA,0xf9] 2476*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: :lo12:sym, kind: fixup_aarch64_ldst_imm12_scale8 2477*9880d681SAndroid Build Coastguard Worker// CHECK: ldr q3, [x2, :lo12:sym] // encoding: [0x43,0bAAAAAA00,0b11AAAAAA,0x3d] 2478*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: :lo12:sym, kind: fixup_aarch64_ldst_imm12_scale16 2479*9880d681SAndroid Build Coastguard Worker 2480*9880d681SAndroid Build Coastguard Worker prfm pldl1keep, [sp, #8] 2481*9880d681SAndroid Build Coastguard Worker prfm pldl1strm, [x3] 2482*9880d681SAndroid Build Coastguard Worker prfm pldl2keep, [x5,#16] 2483*9880d681SAndroid Build Coastguard Worker prfm pldl2strm, [x2] 2484*9880d681SAndroid Build Coastguard Worker prfm pldl3keep, [x5] 2485*9880d681SAndroid Build Coastguard Worker prfm pldl3strm, [x6] 2486*9880d681SAndroid Build Coastguard Worker prfm plil1keep, [sp, #8] 2487*9880d681SAndroid Build Coastguard Worker prfm plil1strm, [x3] 2488*9880d681SAndroid Build Coastguard Worker prfm plil2keep, [x5,#16] 2489*9880d681SAndroid Build Coastguard Worker prfm plil2strm, [x2] 2490*9880d681SAndroid Build Coastguard Worker prfm plil3keep, [x5] 2491*9880d681SAndroid Build Coastguard Worker prfm plil3strm, [x6] 2492*9880d681SAndroid Build Coastguard Worker prfm pstl1keep, [sp, #8] 2493*9880d681SAndroid Build Coastguard Worker prfm pstl1strm, [x3] 2494*9880d681SAndroid Build Coastguard Worker prfm pstl2keep, [x5,#16] 2495*9880d681SAndroid Build Coastguard Worker prfm pstl2strm, [x2] 2496*9880d681SAndroid Build Coastguard Worker prfm pstl3keep, [x5] 2497*9880d681SAndroid Build Coastguard Worker prfm pstl3strm, [x6] 2498*9880d681SAndroid Build Coastguard Worker prfm #15, [sp] 2499*9880d681SAndroid Build Coastguard Worker// CHECK: prfm pldl1keep, [sp, #8] // encoding: [0xe0,0x07,0x80,0xf9] 2500*9880d681SAndroid Build Coastguard Worker// CHECK: prfm pldl1strm, [x3{{(, #0)?}}] // encoding: [0x61,0x00,0x80,0xf9] 2501*9880d681SAndroid Build Coastguard Worker// CHECK: prfm pldl2keep, [x5, #16] // encoding: [0xa2,0x08,0x80,0xf9] 2502*9880d681SAndroid Build Coastguard Worker// CHECK: prfm pldl2strm, [x2{{(, #0)?}}] // encoding: [0x43,0x00,0x80,0xf9] 2503*9880d681SAndroid Build Coastguard Worker// CHECK: prfm pldl3keep, [x5{{(, #0)?}}] // encoding: [0xa4,0x00,0x80,0xf9] 2504*9880d681SAndroid Build Coastguard Worker// CHECK: prfm pldl3strm, [x6{{(, #0)?}}] // encoding: [0xc5,0x00,0x80,0xf9] 2505*9880d681SAndroid Build Coastguard Worker// CHECK: prfm plil1keep, [sp, #8] // encoding: [0xe8,0x07,0x80,0xf9] 2506*9880d681SAndroid Build Coastguard Worker// CHECK: prfm plil1strm, [x3{{(, #0)?}}] // encoding: [0x69,0x00,0x80,0xf9] 2507*9880d681SAndroid Build Coastguard Worker// CHECK: prfm plil2keep, [x5, #16] // encoding: [0xaa,0x08,0x80,0xf9] 2508*9880d681SAndroid Build Coastguard Worker// CHECK: prfm plil2strm, [x2{{(, #0)?}}] // encoding: [0x4b,0x00,0x80,0xf9] 2509*9880d681SAndroid Build Coastguard Worker// CHECK: prfm plil3keep, [x5{{(, #0)?}}] // encoding: [0xac,0x00,0x80,0xf9] 2510*9880d681SAndroid Build Coastguard Worker// CHECK: prfm plil3strm, [x6{{(, #0)?}}] // encoding: [0xcd,0x00,0x80,0xf9] 2511*9880d681SAndroid Build Coastguard Worker// CHECK: prfm pstl1keep, [sp, #8] // encoding: [0xf0,0x07,0x80,0xf9] 2512*9880d681SAndroid Build Coastguard Worker// CHECK: prfm pstl1strm, [x3{{(, #0)?}}] // encoding: [0x71,0x00,0x80,0xf9] 2513*9880d681SAndroid Build Coastguard Worker// CHECK: prfm pstl2keep, [x5, #16] // encoding: [0xb2,0x08,0x80,0xf9] 2514*9880d681SAndroid Build Coastguard Worker// CHECK: prfm pstl2strm, [x2{{(, #0)?}}] // encoding: [0x53,0x00,0x80,0xf9] 2515*9880d681SAndroid Build Coastguard Worker// CHECK: prfm pstl3keep, [x5{{(, #0)?}}] // encoding: [0xb4,0x00,0x80,0xf9] 2516*9880d681SAndroid Build Coastguard Worker// CHECK: prfm pstl3strm, [x6{{(, #0)?}}] // encoding: [0xd5,0x00,0x80,0xf9] 2517*9880d681SAndroid Build Coastguard Worker// CHECK: prfm #15, [sp{{(, #0)?}}] // encoding: [0xef,0x03,0x80,0xf9] 2518*9880d681SAndroid Build Coastguard Worker 2519*9880d681SAndroid Build Coastguard Worker//// Floating-point versions 2520*9880d681SAndroid Build Coastguard Worker 2521*9880d681SAndroid Build Coastguard Worker ldr b31, [sp, #4095] 2522*9880d681SAndroid Build Coastguard Worker ldr h20, [x2, #8190] 2523*9880d681SAndroid Build Coastguard Worker ldr s10, [x19, #16380] 2524*9880d681SAndroid Build Coastguard Worker ldr d3, [x10, #32760] 2525*9880d681SAndroid Build Coastguard Worker str q12, [sp, #65520] 2526*9880d681SAndroid Build Coastguard Worker// CHECK: ldr b31, [sp, #4095] // encoding: [0xff,0xff,0x7f,0x3d] 2527*9880d681SAndroid Build Coastguard Worker// CHECK: ldr h20, [x2, #8190] // encoding: [0x54,0xfc,0x7f,0x7d] 2528*9880d681SAndroid Build Coastguard Worker// CHECK: ldr s10, [x19, #16380] // encoding: [0x6a,0xfe,0x7f,0xbd] 2529*9880d681SAndroid Build Coastguard Worker// CHECK: ldr d3, [x10, #32760] // encoding: [0x43,0xfd,0x7f,0xfd] 2530*9880d681SAndroid Build Coastguard Worker// CHECK: str q12, [sp, #65520] // encoding: [0xec,0xff,0xbf,0x3d] 2531*9880d681SAndroid Build Coastguard Worker 2532*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 2533*9880d681SAndroid Build Coastguard Worker// Load/store register (register offset) 2534*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 2535*9880d681SAndroid Build Coastguard Worker 2536*9880d681SAndroid Build Coastguard Worker ldrb w3, [sp, x5] 2537*9880d681SAndroid Build Coastguard Worker ldrb w9, [x27, x6, lsl #0] 2538*9880d681SAndroid Build Coastguard Worker ldrsb w10, [x30, x7] 2539*9880d681SAndroid Build Coastguard Worker ldrb w11, [x29, x3, sxtx] 2540*9880d681SAndroid Build Coastguard Worker strb w12, [x28, xzr, sxtx #0] 2541*9880d681SAndroid Build Coastguard Worker ldrb w14, [x26, w6, uxtw] 2542*9880d681SAndroid Build Coastguard Worker ldrsb w15, [x25, w7, uxtw #0] 2543*9880d681SAndroid Build Coastguard Worker ldrb w17, [x23, w9, sxtw] 2544*9880d681SAndroid Build Coastguard Worker ldrsb x18, [x22, w10, sxtw #0] 2545*9880d681SAndroid Build Coastguard Worker// CHECK: ldrb w3, [sp, x5] // encoding: [0xe3,0x6b,0x65,0x38] 2546*9880d681SAndroid Build Coastguard Worker// CHECK: ldrb w9, [x27, x6, lsl #0] // encoding: [0x69,0x7b,0x66,0x38] 2547*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsb w10, [x30, x7] // encoding: [0xca,0x6b,0xe7,0x38] 2548*9880d681SAndroid Build Coastguard Worker// CHECK: ldrb w11, [x29, x3, sxtx] // encoding: [0xab,0xeb,0x63,0x38] 2549*9880d681SAndroid Build Coastguard Worker// CHECK: strb w12, [x28, xzr, sxtx #0] // encoding: [0x8c,0xfb,0x3f,0x38] 2550*9880d681SAndroid Build Coastguard Worker// CHECK: ldrb w14, [x26, w6, uxtw] // encoding: [0x4e,0x4b,0x66,0x38] 2551*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsb w15, [x25, w7, uxtw #0] // encoding: [0x2f,0x5b,0xe7,0x38] 2552*9880d681SAndroid Build Coastguard Worker// CHECK: ldrb w17, [x23, w9, sxtw] // encoding: [0xf1,0xca,0x69,0x38] 2553*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsb x18, [x22, w10, sxtw #0] // encoding: [0xd2,0xda,0xaa,0x38] 2554*9880d681SAndroid Build Coastguard Worker 2555*9880d681SAndroid Build Coastguard Worker ldrsh w3, [sp, x5] 2556*9880d681SAndroid Build Coastguard Worker ldrsh w9, [x27, x6, lsl #0] 2557*9880d681SAndroid Build Coastguard Worker ldrh w10, [x30, x7, lsl #1] 2558*9880d681SAndroid Build Coastguard Worker strh w11, [x29, x3, sxtx] 2559*9880d681SAndroid Build Coastguard Worker ldrh w12, [x28, xzr, sxtx #0] 2560*9880d681SAndroid Build Coastguard Worker ldrsh x13, [x27, x5, sxtx #1] 2561*9880d681SAndroid Build Coastguard Worker ldrh w14, [x26, w6, uxtw] 2562*9880d681SAndroid Build Coastguard Worker ldrh w15, [x25, w7, uxtw #0] 2563*9880d681SAndroid Build Coastguard Worker ldrsh w16, [x24, w8, uxtw #1] 2564*9880d681SAndroid Build Coastguard Worker ldrh w17, [x23, w9, sxtw] 2565*9880d681SAndroid Build Coastguard Worker ldrh w18, [x22, w10, sxtw #0] 2566*9880d681SAndroid Build Coastguard Worker strh w19, [x21, wzr, sxtw #1] 2567*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsh w3, [sp, x5] // encoding: [0xe3,0x6b,0xe5,0x78] 2568*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsh w9, [x27, x6] // encoding: [0x69,0x6b,0xe6,0x78] 2569*9880d681SAndroid Build Coastguard Worker// CHECK: ldrh w10, [x30, x7, lsl #1] // encoding: [0xca,0x7b,0x67,0x78] 2570*9880d681SAndroid Build Coastguard Worker// CHECK: strh w11, [x29, x3, sxtx] // encoding: [0xab,0xeb,0x23,0x78] 2571*9880d681SAndroid Build Coastguard Worker// CHECK: ldrh w12, [x28, xzr, sxtx] // encoding: [0x8c,0xeb,0x7f,0x78] 2572*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsh x13, [x27, x5, sxtx #1] // encoding: [0x6d,0xfb,0xa5,0x78] 2573*9880d681SAndroid Build Coastguard Worker// CHECK: ldrh w14, [x26, w6, uxtw] // encoding: [0x4e,0x4b,0x66,0x78] 2574*9880d681SAndroid Build Coastguard Worker// CHECK: ldrh w15, [x25, w7, uxtw] // encoding: [0x2f,0x4b,0x67,0x78] 2575*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsh w16, [x24, w8, uxtw #1] // encoding: [0x10,0x5b,0xe8,0x78] 2576*9880d681SAndroid Build Coastguard Worker// CHECK: ldrh w17, [x23, w9, sxtw] // encoding: [0xf1,0xca,0x69,0x78] 2577*9880d681SAndroid Build Coastguard Worker// CHECK: ldrh w18, [x22, w10, sxtw] // encoding: [0xd2,0xca,0x6a,0x78] 2578*9880d681SAndroid Build Coastguard Worker// CHECK: strh w19, [x21, wzr, sxtw #1] // encoding: [0xb3,0xda,0x3f,0x78] 2579*9880d681SAndroid Build Coastguard Worker 2580*9880d681SAndroid Build Coastguard Worker ldr w3, [sp, x5] 2581*9880d681SAndroid Build Coastguard Worker ldr s9, [x27, x6, lsl #0] 2582*9880d681SAndroid Build Coastguard Worker ldr w10, [x30, x7, lsl #2] 2583*9880d681SAndroid Build Coastguard Worker ldr w11, [x29, x3, sxtx] 2584*9880d681SAndroid Build Coastguard Worker str s12, [x28, xzr, sxtx #0] 2585*9880d681SAndroid Build Coastguard Worker str w13, [x27, x5, sxtx #2] 2586*9880d681SAndroid Build Coastguard Worker str w14, [x26, w6, uxtw] 2587*9880d681SAndroid Build Coastguard Worker ldr w15, [x25, w7, uxtw #0] 2588*9880d681SAndroid Build Coastguard Worker ldr w16, [x24, w8, uxtw #2] 2589*9880d681SAndroid Build Coastguard Worker ldrsw x17, [x23, w9, sxtw] 2590*9880d681SAndroid Build Coastguard Worker ldr w18, [x22, w10, sxtw #0] 2591*9880d681SAndroid Build Coastguard Worker ldrsw x19, [x21, wzr, sxtw #2] 2592*9880d681SAndroid Build Coastguard Worker// CHECK: ldr w3, [sp, x5] // encoding: [0xe3,0x6b,0x65,0xb8] 2593*9880d681SAndroid Build Coastguard Worker// CHECK: ldr s9, [x27, x6] // encoding: [0x69,0x6b,0x66,0xbc] 2594*9880d681SAndroid Build Coastguard Worker// CHECK: ldr w10, [x30, x7, lsl #2] // encoding: [0xca,0x7b,0x67,0xb8] 2595*9880d681SAndroid Build Coastguard Worker// CHECK: ldr w11, [x29, x3, sxtx] // encoding: [0xab,0xeb,0x63,0xb8] 2596*9880d681SAndroid Build Coastguard Worker// CHECK: str s12, [x28, xzr, sxtx] // encoding: [0x8c,0xeb,0x3f,0xbc] 2597*9880d681SAndroid Build Coastguard Worker// CHECK: str w13, [x27, x5, sxtx #2] // encoding: [0x6d,0xfb,0x25,0xb8] 2598*9880d681SAndroid Build Coastguard Worker// CHECK: str w14, [x26, w6, uxtw] // encoding: [0x4e,0x4b,0x26,0xb8] 2599*9880d681SAndroid Build Coastguard Worker// CHECK: ldr w15, [x25, w7, uxtw] // encoding: [0x2f,0x4b,0x67,0xb8] 2600*9880d681SAndroid Build Coastguard Worker// CHECK: ldr w16, [x24, w8, uxtw #2] // encoding: [0x10,0x5b,0x68,0xb8] 2601*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsw x17, [x23, w9, sxtw] // encoding: [0xf1,0xca,0xa9,0xb8] 2602*9880d681SAndroid Build Coastguard Worker// CHECK: ldr w18, [x22, w10, sxtw] // encoding: [0xd2,0xca,0x6a,0xb8] 2603*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsw x19, [x21, wzr, sxtw #2] // encoding: [0xb3,0xda,0xbf,0xb8] 2604*9880d681SAndroid Build Coastguard Worker 2605*9880d681SAndroid Build Coastguard Worker ldr x3, [sp, x5] 2606*9880d681SAndroid Build Coastguard Worker str x9, [x27, x6, lsl #0] 2607*9880d681SAndroid Build Coastguard Worker ldr d10, [x30, x7, lsl #3] 2608*9880d681SAndroid Build Coastguard Worker str x11, [x29, x3, sxtx] 2609*9880d681SAndroid Build Coastguard Worker ldr x12, [x28, xzr, sxtx #0] 2610*9880d681SAndroid Build Coastguard Worker ldr x13, [x27, x5, sxtx #3] 2611*9880d681SAndroid Build Coastguard Worker prfm pldl1keep, [x26, w6, uxtw] 2612*9880d681SAndroid Build Coastguard Worker ldr x15, [x25, w7, uxtw #0] 2613*9880d681SAndroid Build Coastguard Worker ldr x16, [x24, w8, uxtw #3] 2614*9880d681SAndroid Build Coastguard Worker ldr x17, [x23, w9, sxtw] 2615*9880d681SAndroid Build Coastguard Worker ldr x18, [x22, w10, sxtw #0] 2616*9880d681SAndroid Build Coastguard Worker str d19, [x21, wzr, sxtw #3] 2617*9880d681SAndroid Build Coastguard Worker prfm #6, [x0, x5] 2618*9880d681SAndroid Build Coastguard Worker// CHECK: ldr x3, [sp, x5] // encoding: [0xe3,0x6b,0x65,0xf8] 2619*9880d681SAndroid Build Coastguard Worker// CHECK: str x9, [x27, x6] // encoding: [0x69,0x6b,0x26,0xf8] 2620*9880d681SAndroid Build Coastguard Worker// CHECK: ldr d10, [x30, x7, lsl #3] // encoding: [0xca,0x7b,0x67,0xfc] 2621*9880d681SAndroid Build Coastguard Worker// CHECK: str x11, [x29, x3, sxtx] // encoding: [0xab,0xeb,0x23,0xf8] 2622*9880d681SAndroid Build Coastguard Worker// CHECK: ldr x12, [x28, xzr, sxtx] // encoding: [0x8c,0xeb,0x7f,0xf8] 2623*9880d681SAndroid Build Coastguard Worker// CHECK: ldr x13, [x27, x5, sxtx #3] // encoding: [0x6d,0xfb,0x65,0xf8] 2624*9880d681SAndroid Build Coastguard Worker// CHECK: prfm pldl1keep, [x26, w6, uxtw] // encoding: [0x40,0x4b,0xa6,0xf8] 2625*9880d681SAndroid Build Coastguard Worker// CHECK: ldr x15, [x25, w7, uxtw] // encoding: [0x2f,0x4b,0x67,0xf8] 2626*9880d681SAndroid Build Coastguard Worker// CHECK: ldr x16, [x24, w8, uxtw #3] // encoding: [0x10,0x5b,0x68,0xf8] 2627*9880d681SAndroid Build Coastguard Worker// CHECK: ldr x17, [x23, w9, sxtw] // encoding: [0xf1,0xca,0x69,0xf8] 2628*9880d681SAndroid Build Coastguard Worker// CHECK: ldr x18, [x22, w10, sxtw] // encoding: [0xd2,0xca,0x6a,0xf8] 2629*9880d681SAndroid Build Coastguard Worker// CHECK: str d19, [x21, wzr, sxtw #3] // encoding: [0xb3,0xda,0x3f,0xfc] 2630*9880d681SAndroid Build Coastguard Worker// CHECK: prfm #6, [x0, x5{{(, lsl #0)?}}] // encoding: [0x06,0x68,0xa5,0xf8] 2631*9880d681SAndroid Build Coastguard Worker 2632*9880d681SAndroid Build Coastguard Worker ldr q3, [sp, x5] 2633*9880d681SAndroid Build Coastguard Worker ldr q9, [x27, x6, lsl #0] 2634*9880d681SAndroid Build Coastguard Worker ldr q10, [x30, x7, lsl #4] 2635*9880d681SAndroid Build Coastguard Worker str q11, [x29, x3, sxtx] 2636*9880d681SAndroid Build Coastguard Worker str q12, [x28, xzr, sxtx #0] 2637*9880d681SAndroid Build Coastguard Worker str q13, [x27, x5, sxtx #4] 2638*9880d681SAndroid Build Coastguard Worker ldr q14, [x26, w6, uxtw] 2639*9880d681SAndroid Build Coastguard Worker ldr q15, [x25, w7, uxtw #0] 2640*9880d681SAndroid Build Coastguard Worker ldr q16, [x24, w8, uxtw #4] 2641*9880d681SAndroid Build Coastguard Worker ldr q17, [x23, w9, sxtw] 2642*9880d681SAndroid Build Coastguard Worker str q18, [x22, w10, sxtw #0] 2643*9880d681SAndroid Build Coastguard Worker ldr q19, [x21, wzr, sxtw #4] 2644*9880d681SAndroid Build Coastguard Worker// CHECK: ldr q3, [sp, x5] // encoding: [0xe3,0x6b,0xe5,0x3c] 2645*9880d681SAndroid Build Coastguard Worker// CHECK: ldr q9, [x27, x6] // encoding: [0x69,0x6b,0xe6,0x3c] 2646*9880d681SAndroid Build Coastguard Worker// CHECK: ldr q10, [x30, x7, lsl #4] // encoding: [0xca,0x7b,0xe7,0x3c] 2647*9880d681SAndroid Build Coastguard Worker// CHECK: str q11, [x29, x3, sxtx] // encoding: [0xab,0xeb,0xa3,0x3c] 2648*9880d681SAndroid Build Coastguard Worker// CHECK: str q12, [x28, xzr, sxtx] // encoding: [0x8c,0xeb,0xbf,0x3c] 2649*9880d681SAndroid Build Coastguard Worker// CHECK: str q13, [x27, x5, sxtx #4] // encoding: [0x6d,0xfb,0xa5,0x3c] 2650*9880d681SAndroid Build Coastguard Worker// CHECK: ldr q14, [x26, w6, uxtw] // encoding: [0x4e,0x4b,0xe6,0x3c] 2651*9880d681SAndroid Build Coastguard Worker// CHECK: ldr q15, [x25, w7, uxtw] // encoding: [0x2f,0x4b,0xe7,0x3c] 2652*9880d681SAndroid Build Coastguard Worker// CHECK: ldr q16, [x24, w8, uxtw #4] // encoding: [0x10,0x5b,0xe8,0x3c] 2653*9880d681SAndroid Build Coastguard Worker// CHECK: ldr q17, [x23, w9, sxtw] // encoding: [0xf1,0xca,0xe9,0x3c] 2654*9880d681SAndroid Build Coastguard Worker// CHECK: str q18, [x22, w10, sxtw] // encoding: [0xd2,0xca,0xaa,0x3c] 2655*9880d681SAndroid Build Coastguard Worker// CHECK: ldr q19, [x21, wzr, sxtw #4] // encoding: [0xb3,0xda,0xff,0x3c] 2656*9880d681SAndroid Build Coastguard Worker 2657*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 2658*9880d681SAndroid Build Coastguard Worker// Load/store register (immediate post-indexed) 2659*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 2660*9880d681SAndroid Build Coastguard Worker 2661*9880d681SAndroid Build Coastguard Worker strb w9, [x2], #255 2662*9880d681SAndroid Build Coastguard Worker strb w10, [x3], #1 2663*9880d681SAndroid Build Coastguard Worker strb w10, [x3], #-256 2664*9880d681SAndroid Build Coastguard Worker strh w9, [x2], #255 2665*9880d681SAndroid Build Coastguard Worker strh w9, [x2], #1 2666*9880d681SAndroid Build Coastguard Worker strh w10, [x3], #-256 2667*9880d681SAndroid Build Coastguard Worker// CHECK: strb w9, [x2], #255 // encoding: [0x49,0xf4,0x0f,0x38] 2668*9880d681SAndroid Build Coastguard Worker// CHECK: strb w10, [x3], #1 // encoding: [0x6a,0x14,0x00,0x38] 2669*9880d681SAndroid Build Coastguard Worker// CHECK: strb w10, [x3], #-256 // encoding: [0x6a,0x04,0x10,0x38] 2670*9880d681SAndroid Build Coastguard Worker// CHECK: strh w9, [x2], #255 // encoding: [0x49,0xf4,0x0f,0x78] 2671*9880d681SAndroid Build Coastguard Worker// CHECK: strh w9, [x2], #1 // encoding: [0x49,0x14,0x00,0x78] 2672*9880d681SAndroid Build Coastguard Worker// CHECK: strh w10, [x3], #-256 // encoding: [0x6a,0x04,0x10,0x78] 2673*9880d681SAndroid Build Coastguard Worker 2674*9880d681SAndroid Build Coastguard Worker str w19, [sp], #255 2675*9880d681SAndroid Build Coastguard Worker str w20, [x30], #1 2676*9880d681SAndroid Build Coastguard Worker str w21, [x12], #-256 2677*9880d681SAndroid Build Coastguard Worker str xzr, [x9], #255 2678*9880d681SAndroid Build Coastguard Worker str x2, [x3], #1 2679*9880d681SAndroid Build Coastguard Worker str x19, [x12], #-256 2680*9880d681SAndroid Build Coastguard Worker// CHECK: str w19, [sp], #255 // encoding: [0xf3,0xf7,0x0f,0xb8] 2681*9880d681SAndroid Build Coastguard Worker// CHECK: str w20, [x30], #1 // encoding: [0xd4,0x17,0x00,0xb8] 2682*9880d681SAndroid Build Coastguard Worker// CHECK: str w21, [x12], #-256 // encoding: [0x95,0x05,0x10,0xb8] 2683*9880d681SAndroid Build Coastguard Worker// CHECK: str xzr, [x9], #255 // encoding: [0x3f,0xf5,0x0f,0xf8] 2684*9880d681SAndroid Build Coastguard Worker// CHECK: str x2, [x3], #1 // encoding: [0x62,0x14,0x00,0xf8] 2685*9880d681SAndroid Build Coastguard Worker// CHECK: str x19, [x12], #-256 // encoding: [0x93,0x05,0x10,0xf8] 2686*9880d681SAndroid Build Coastguard Worker 2687*9880d681SAndroid Build Coastguard Worker ldrb w9, [x2], #255 2688*9880d681SAndroid Build Coastguard Worker ldrb w10, [x3], #1 2689*9880d681SAndroid Build Coastguard Worker ldrb w10, [x3], #-256 2690*9880d681SAndroid Build Coastguard Worker ldrh w9, [x2], #255 2691*9880d681SAndroid Build Coastguard Worker ldrh w9, [x2], #1 2692*9880d681SAndroid Build Coastguard Worker ldrh w10, [x3], #-256 2693*9880d681SAndroid Build Coastguard Worker// CHECK: ldrb w9, [x2], #255 // encoding: [0x49,0xf4,0x4f,0x38] 2694*9880d681SAndroid Build Coastguard Worker// CHECK: ldrb w10, [x3], #1 // encoding: [0x6a,0x14,0x40,0x38] 2695*9880d681SAndroid Build Coastguard Worker// CHECK: ldrb w10, [x3], #-256 // encoding: [0x6a,0x04,0x50,0x38] 2696*9880d681SAndroid Build Coastguard Worker// CHECK: ldrh w9, [x2], #255 // encoding: [0x49,0xf4,0x4f,0x78] 2697*9880d681SAndroid Build Coastguard Worker// CHECK: ldrh w9, [x2], #1 // encoding: [0x49,0x14,0x40,0x78] 2698*9880d681SAndroid Build Coastguard Worker// CHECK: ldrh w10, [x3], #-256 // encoding: [0x6a,0x04,0x50,0x78] 2699*9880d681SAndroid Build Coastguard Worker 2700*9880d681SAndroid Build Coastguard Worker ldr w19, [sp], #255 2701*9880d681SAndroid Build Coastguard Worker ldr w20, [x30], #1 2702*9880d681SAndroid Build Coastguard Worker ldr w21, [x12], #-256 2703*9880d681SAndroid Build Coastguard Worker ldr xzr, [x9], #255 2704*9880d681SAndroid Build Coastguard Worker ldr x2, [x3], #1 2705*9880d681SAndroid Build Coastguard Worker ldr x19, [x12], #-256 2706*9880d681SAndroid Build Coastguard Worker// CHECK: ldr w19, [sp], #255 // encoding: [0xf3,0xf7,0x4f,0xb8] 2707*9880d681SAndroid Build Coastguard Worker// CHECK: ldr w20, [x30], #1 // encoding: [0xd4,0x17,0x40,0xb8] 2708*9880d681SAndroid Build Coastguard Worker// CHECK: ldr w21, [x12], #-256 // encoding: [0x95,0x05,0x50,0xb8] 2709*9880d681SAndroid Build Coastguard Worker// CHECK: ldr xzr, [x9], #255 // encoding: [0x3f,0xf5,0x4f,0xf8] 2710*9880d681SAndroid Build Coastguard Worker// CHECK: ldr x2, [x3], #1 // encoding: [0x62,0x14,0x40,0xf8] 2711*9880d681SAndroid Build Coastguard Worker// CHECK: ldr x19, [x12], #-256 // encoding: [0x93,0x05,0x50,0xf8] 2712*9880d681SAndroid Build Coastguard Worker 2713*9880d681SAndroid Build Coastguard Worker ldrsb xzr, [x9], #255 2714*9880d681SAndroid Build Coastguard Worker ldrsb x2, [x3], #1 2715*9880d681SAndroid Build Coastguard Worker ldrsb x19, [x12], #-256 2716*9880d681SAndroid Build Coastguard Worker ldrsh xzr, [x9], #255 2717*9880d681SAndroid Build Coastguard Worker ldrsh x2, [x3], #1 2718*9880d681SAndroid Build Coastguard Worker ldrsh x19, [x12], #-256 2719*9880d681SAndroid Build Coastguard Worker ldrsw xzr, [x9], #255 2720*9880d681SAndroid Build Coastguard Worker ldrsw x2, [x3], #1 2721*9880d681SAndroid Build Coastguard Worker ldrsw x19, [x12], #-256 2722*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsb xzr, [x9], #255 // encoding: [0x3f,0xf5,0x8f,0x38] 2723*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsb x2, [x3], #1 // encoding: [0x62,0x14,0x80,0x38] 2724*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsb x19, [x12], #-256 // encoding: [0x93,0x05,0x90,0x38] 2725*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsh xzr, [x9], #255 // encoding: [0x3f,0xf5,0x8f,0x78] 2726*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsh x2, [x3], #1 // encoding: [0x62,0x14,0x80,0x78] 2727*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsh x19, [x12], #-256 // encoding: [0x93,0x05,0x90,0x78] 2728*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsw xzr, [x9], #255 // encoding: [0x3f,0xf5,0x8f,0xb8] 2729*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsw x2, [x3], #1 // encoding: [0x62,0x14,0x80,0xb8] 2730*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsw x19, [x12], #-256 // encoding: [0x93,0x05,0x90,0xb8] 2731*9880d681SAndroid Build Coastguard Worker 2732*9880d681SAndroid Build Coastguard Worker ldrsb wzr, [x9], #255 2733*9880d681SAndroid Build Coastguard Worker ldrsb w2, [x3], #1 2734*9880d681SAndroid Build Coastguard Worker ldrsb w19, [x12], #-256 2735*9880d681SAndroid Build Coastguard Worker ldrsh wzr, [x9], #255 2736*9880d681SAndroid Build Coastguard Worker ldrsh w2, [x3], #1 2737*9880d681SAndroid Build Coastguard Worker ldrsh w19, [x12], #-256 2738*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsb wzr, [x9], #255 // encoding: [0x3f,0xf5,0xcf,0x38] 2739*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsb w2, [x3], #1 // encoding: [0x62,0x14,0xc0,0x38] 2740*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsb w19, [x12], #-256 // encoding: [0x93,0x05,0xd0,0x38] 2741*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsh wzr, [x9], #255 // encoding: [0x3f,0xf5,0xcf,0x78] 2742*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsh w2, [x3], #1 // encoding: [0x62,0x14,0xc0,0x78] 2743*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsh w19, [x12], #-256 // encoding: [0x93,0x05,0xd0,0x78] 2744*9880d681SAndroid Build Coastguard Worker 2745*9880d681SAndroid Build Coastguard Worker str b0, [x0], #255 2746*9880d681SAndroid Build Coastguard Worker str b3, [x3], #1 2747*9880d681SAndroid Build Coastguard Worker str b5, [sp], #-256 2748*9880d681SAndroid Build Coastguard Worker str h10, [x10], #255 2749*9880d681SAndroid Build Coastguard Worker str h13, [x23], #1 2750*9880d681SAndroid Build Coastguard Worker str h15, [sp], #-256 2751*9880d681SAndroid Build Coastguard Worker str s20, [x20], #255 2752*9880d681SAndroid Build Coastguard Worker str s23, [x23], #1 2753*9880d681SAndroid Build Coastguard Worker str s25, [x0], #-256 2754*9880d681SAndroid Build Coastguard Worker str d20, [x20], #255 2755*9880d681SAndroid Build Coastguard Worker str d23, [x23], #1 2756*9880d681SAndroid Build Coastguard Worker str d25, [x0], #-256 2757*9880d681SAndroid Build Coastguard Worker// CHECK: str b0, [x0], #255 // encoding: [0x00,0xf4,0x0f,0x3c] 2758*9880d681SAndroid Build Coastguard Worker// CHECK: str b3, [x3], #1 // encoding: [0x63,0x14,0x00,0x3c] 2759*9880d681SAndroid Build Coastguard Worker// CHECK: str b5, [sp], #-256 // encoding: [0xe5,0x07,0x10,0x3c] 2760*9880d681SAndroid Build Coastguard Worker// CHECK: str h10, [x10], #255 // encoding: [0x4a,0xf5,0x0f,0x7c] 2761*9880d681SAndroid Build Coastguard Worker// CHECK: str h13, [x23], #1 // encoding: [0xed,0x16,0x00,0x7c] 2762*9880d681SAndroid Build Coastguard Worker// CHECK: str h15, [sp], #-256 // encoding: [0xef,0x07,0x10,0x7c] 2763*9880d681SAndroid Build Coastguard Worker// CHECK: str s20, [x20], #255 // encoding: [0x94,0xf6,0x0f,0xbc] 2764*9880d681SAndroid Build Coastguard Worker// CHECK: str s23, [x23], #1 // encoding: [0xf7,0x16,0x00,0xbc] 2765*9880d681SAndroid Build Coastguard Worker// CHECK: str s25, [x0], #-256 // encoding: [0x19,0x04,0x10,0xbc] 2766*9880d681SAndroid Build Coastguard Worker// CHECK: str d20, [x20], #255 // encoding: [0x94,0xf6,0x0f,0xfc] 2767*9880d681SAndroid Build Coastguard Worker// CHECK: str d23, [x23], #1 // encoding: [0xf7,0x16,0x00,0xfc] 2768*9880d681SAndroid Build Coastguard Worker// CHECK: str d25, [x0], #-256 // encoding: [0x19,0x04,0x10,0xfc] 2769*9880d681SAndroid Build Coastguard Worker 2770*9880d681SAndroid Build Coastguard Worker ldr b0, [x0], #255 2771*9880d681SAndroid Build Coastguard Worker ldr b3, [x3], #1 2772*9880d681SAndroid Build Coastguard Worker ldr b5, [sp], #-256 2773*9880d681SAndroid Build Coastguard Worker ldr h10, [x10], #255 2774*9880d681SAndroid Build Coastguard Worker ldr h13, [x23], #1 2775*9880d681SAndroid Build Coastguard Worker ldr h15, [sp], #-256 2776*9880d681SAndroid Build Coastguard Worker ldr s20, [x20], #255 2777*9880d681SAndroid Build Coastguard Worker ldr s23, [x23], #1 2778*9880d681SAndroid Build Coastguard Worker ldr s25, [x0], #-256 2779*9880d681SAndroid Build Coastguard Worker ldr d20, [x20], #255 2780*9880d681SAndroid Build Coastguard Worker ldr d23, [x23], #1 2781*9880d681SAndroid Build Coastguard Worker ldr d25, [x0], #-256 2782*9880d681SAndroid Build Coastguard Worker// CHECK: ldr b0, [x0], #255 // encoding: [0x00,0xf4,0x4f,0x3c] 2783*9880d681SAndroid Build Coastguard Worker// CHECK: ldr b3, [x3], #1 // encoding: [0x63,0x14,0x40,0x3c] 2784*9880d681SAndroid Build Coastguard Worker// CHECK: ldr b5, [sp], #-256 // encoding: [0xe5,0x07,0x50,0x3c] 2785*9880d681SAndroid Build Coastguard Worker// CHECK: ldr h10, [x10], #255 // encoding: [0x4a,0xf5,0x4f,0x7c] 2786*9880d681SAndroid Build Coastguard Worker// CHECK: ldr h13, [x23], #1 // encoding: [0xed,0x16,0x40,0x7c] 2787*9880d681SAndroid Build Coastguard Worker// CHECK: ldr h15, [sp], #-256 // encoding: [0xef,0x07,0x50,0x7c] 2788*9880d681SAndroid Build Coastguard Worker// CHECK: ldr s20, [x20], #255 // encoding: [0x94,0xf6,0x4f,0xbc] 2789*9880d681SAndroid Build Coastguard Worker// CHECK: ldr s23, [x23], #1 // encoding: [0xf7,0x16,0x40,0xbc] 2790*9880d681SAndroid Build Coastguard Worker// CHECK: ldr s25, [x0], #-256 // encoding: [0x19,0x04,0x50,0xbc] 2791*9880d681SAndroid Build Coastguard Worker// CHECK: ldr d20, [x20], #255 // encoding: [0x94,0xf6,0x4f,0xfc] 2792*9880d681SAndroid Build Coastguard Worker// CHECK: ldr d23, [x23], #1 // encoding: [0xf7,0x16,0x40,0xfc] 2793*9880d681SAndroid Build Coastguard Worker// CHECK: ldr d25, [x0], #-256 // encoding: [0x19,0x04,0x50,0xfc] 2794*9880d681SAndroid Build Coastguard Worker 2795*9880d681SAndroid Build Coastguard Worker ldr q20, [x1], #255 2796*9880d681SAndroid Build Coastguard Worker ldr q23, [x9], #1 2797*9880d681SAndroid Build Coastguard Worker ldr q25, [x20], #-256 2798*9880d681SAndroid Build Coastguard Worker str q10, [x1], #255 2799*9880d681SAndroid Build Coastguard Worker str q22, [sp], #1 2800*9880d681SAndroid Build Coastguard Worker str q21, [x20], #-256 2801*9880d681SAndroid Build Coastguard Worker// CHECK: ldr q20, [x1], #255 // encoding: [0x34,0xf4,0xcf,0x3c] 2802*9880d681SAndroid Build Coastguard Worker// CHECK: ldr q23, [x9], #1 // encoding: [0x37,0x15,0xc0,0x3c] 2803*9880d681SAndroid Build Coastguard Worker// CHECK: ldr q25, [x20], #-256 // encoding: [0x99,0x06,0xd0,0x3c] 2804*9880d681SAndroid Build Coastguard Worker// CHECK: str q10, [x1], #255 // encoding: [0x2a,0xf4,0x8f,0x3c] 2805*9880d681SAndroid Build Coastguard Worker// CHECK: str q22, [sp], #1 // encoding: [0xf6,0x17,0x80,0x3c] 2806*9880d681SAndroid Build Coastguard Worker// CHECK: str q21, [x20], #-256 // encoding: [0x95,0x06,0x90,0x3c] 2807*9880d681SAndroid Build Coastguard Worker 2808*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 2809*9880d681SAndroid Build Coastguard Worker// Load/store register (immediate pre-indexed) 2810*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 2811*9880d681SAndroid Build Coastguard Worker 2812*9880d681SAndroid Build Coastguard Worker ldr x3, [x4, #0]! 2813*9880d681SAndroid Build Coastguard Worker ldr xzr, [sp, #0]! 2814*9880d681SAndroid Build Coastguard Worker// CHECK: ldr x3, [x4, #0]! // encoding: [0x83,0x0c,0x40,0xf8] 2815*9880d681SAndroid Build Coastguard Worker// CHECK: ldr xzr, [sp, #0]! // encoding: [0xff,0x0f,0x40,0xf8] 2816*9880d681SAndroid Build Coastguard Worker 2817*9880d681SAndroid Build Coastguard Worker strb w9, [x2, #255]! 2818*9880d681SAndroid Build Coastguard Worker strb w10, [x3, #1]! 2819*9880d681SAndroid Build Coastguard Worker strb w10, [x3, #-256]! 2820*9880d681SAndroid Build Coastguard Worker strh w9, [x2, #255]! 2821*9880d681SAndroid Build Coastguard Worker strh w9, [x2, #1]! 2822*9880d681SAndroid Build Coastguard Worker strh w10, [x3, #-256]! 2823*9880d681SAndroid Build Coastguard Worker// CHECK: strb w9, [x2, #255]! // encoding: [0x49,0xfc,0x0f,0x38] 2824*9880d681SAndroid Build Coastguard Worker// CHECK: strb w10, [x3, #1]! // encoding: [0x6a,0x1c,0x00,0x38] 2825*9880d681SAndroid Build Coastguard Worker// CHECK: strb w10, [x3, #-256]! // encoding: [0x6a,0x0c,0x10,0x38] 2826*9880d681SAndroid Build Coastguard Worker// CHECK: strh w9, [x2, #255]! // encoding: [0x49,0xfc,0x0f,0x78] 2827*9880d681SAndroid Build Coastguard Worker// CHECK: strh w9, [x2, #1]! // encoding: [0x49,0x1c,0x00,0x78] 2828*9880d681SAndroid Build Coastguard Worker// CHECK: strh w10, [x3, #-256]! // encoding: [0x6a,0x0c,0x10,0x78] 2829*9880d681SAndroid Build Coastguard Worker 2830*9880d681SAndroid Build Coastguard Worker str w19, [sp, #255]! 2831*9880d681SAndroid Build Coastguard Worker str w20, [x30, #1]! 2832*9880d681SAndroid Build Coastguard Worker str w21, [x12, #-256]! 2833*9880d681SAndroid Build Coastguard Worker str xzr, [x9, #255]! 2834*9880d681SAndroid Build Coastguard Worker str x2, [x3, #1]! 2835*9880d681SAndroid Build Coastguard Worker str x19, [x12, #-256]! 2836*9880d681SAndroid Build Coastguard Worker// CHECK: str w19, [sp, #255]! // encoding: [0xf3,0xff,0x0f,0xb8] 2837*9880d681SAndroid Build Coastguard Worker// CHECK: str w20, [x30, #1]! // encoding: [0xd4,0x1f,0x00,0xb8] 2838*9880d681SAndroid Build Coastguard Worker// CHECK: str w21, [x12, #-256]! // encoding: [0x95,0x0d,0x10,0xb8] 2839*9880d681SAndroid Build Coastguard Worker// CHECK: str xzr, [x9, #255]! // encoding: [0x3f,0xfd,0x0f,0xf8] 2840*9880d681SAndroid Build Coastguard Worker// CHECK: str x2, [x3, #1]! // encoding: [0x62,0x1c,0x00,0xf8] 2841*9880d681SAndroid Build Coastguard Worker// CHECK: str x19, [x12, #-256]! // encoding: [0x93,0x0d,0x10,0xf8] 2842*9880d681SAndroid Build Coastguard Worker 2843*9880d681SAndroid Build Coastguard Worker ldrb w9, [x2, #255]! 2844*9880d681SAndroid Build Coastguard Worker ldrb w10, [x3, #1]! 2845*9880d681SAndroid Build Coastguard Worker ldrb w10, [x3, #-256]! 2846*9880d681SAndroid Build Coastguard Worker ldrh w9, [x2, #255]! 2847*9880d681SAndroid Build Coastguard Worker ldrh w9, [x2, #1]! 2848*9880d681SAndroid Build Coastguard Worker ldrh w10, [x3, #-256]! 2849*9880d681SAndroid Build Coastguard Worker// CHECK: ldrb w9, [x2, #255]! // encoding: [0x49,0xfc,0x4f,0x38] 2850*9880d681SAndroid Build Coastguard Worker// CHECK: ldrb w10, [x3, #1]! // encoding: [0x6a,0x1c,0x40,0x38] 2851*9880d681SAndroid Build Coastguard Worker// CHECK: ldrb w10, [x3, #-256]! // encoding: [0x6a,0x0c,0x50,0x38] 2852*9880d681SAndroid Build Coastguard Worker// CHECK: ldrh w9, [x2, #255]! // encoding: [0x49,0xfc,0x4f,0x78] 2853*9880d681SAndroid Build Coastguard Worker// CHECK: ldrh w9, [x2, #1]! // encoding: [0x49,0x1c,0x40,0x78] 2854*9880d681SAndroid Build Coastguard Worker// CHECK: ldrh w10, [x3, #-256]! // encoding: [0x6a,0x0c,0x50,0x78] 2855*9880d681SAndroid Build Coastguard Worker 2856*9880d681SAndroid Build Coastguard Worker ldr w19, [sp, #255]! 2857*9880d681SAndroid Build Coastguard Worker ldr w20, [x30, #1]! 2858*9880d681SAndroid Build Coastguard Worker ldr w21, [x12, #-256]! 2859*9880d681SAndroid Build Coastguard Worker ldr xzr, [x9, #255]! 2860*9880d681SAndroid Build Coastguard Worker ldr x2, [x3, #1]! 2861*9880d681SAndroid Build Coastguard Worker ldr x19, [x12, #-256]! 2862*9880d681SAndroid Build Coastguard Worker// CHECK: ldr w19, [sp, #255]! // encoding: [0xf3,0xff,0x4f,0xb8] 2863*9880d681SAndroid Build Coastguard Worker// CHECK: ldr w20, [x30, #1]! // encoding: [0xd4,0x1f,0x40,0xb8] 2864*9880d681SAndroid Build Coastguard Worker// CHECK: ldr w21, [x12, #-256]! // encoding: [0x95,0x0d,0x50,0xb8] 2865*9880d681SAndroid Build Coastguard Worker// CHECK: ldr xzr, [x9, #255]! // encoding: [0x3f,0xfd,0x4f,0xf8] 2866*9880d681SAndroid Build Coastguard Worker// CHECK: ldr x2, [x3, #1]! // encoding: [0x62,0x1c,0x40,0xf8] 2867*9880d681SAndroid Build Coastguard Worker// CHECK: ldr x19, [x12, #-256]! // encoding: [0x93,0x0d,0x50,0xf8] 2868*9880d681SAndroid Build Coastguard Worker 2869*9880d681SAndroid Build Coastguard Worker ldrsb xzr, [x9, #255]! 2870*9880d681SAndroid Build Coastguard Worker ldrsb x2, [x3, #1]! 2871*9880d681SAndroid Build Coastguard Worker ldrsb x19, [x12, #-256]! 2872*9880d681SAndroid Build Coastguard Worker ldrsh xzr, [x9, #255]! 2873*9880d681SAndroid Build Coastguard Worker ldrsh x2, [x3, #1]! 2874*9880d681SAndroid Build Coastguard Worker ldrsh x19, [x12, #-256]! 2875*9880d681SAndroid Build Coastguard Worker ldrsw xzr, [x9, #255]! 2876*9880d681SAndroid Build Coastguard Worker ldrsw x2, [x3, #1]! 2877*9880d681SAndroid Build Coastguard Worker ldrsw x19, [x12, #-256]! 2878*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsb xzr, [x9, #255]! // encoding: [0x3f,0xfd,0x8f,0x38] 2879*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsb x2, [x3, #1]! // encoding: [0x62,0x1c,0x80,0x38] 2880*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsb x19, [x12, #-256]! // encoding: [0x93,0x0d,0x90,0x38] 2881*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsh xzr, [x9, #255]! // encoding: [0x3f,0xfd,0x8f,0x78] 2882*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsh x2, [x3, #1]! // encoding: [0x62,0x1c,0x80,0x78] 2883*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsh x19, [x12, #-256]! // encoding: [0x93,0x0d,0x90,0x78] 2884*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsw xzr, [x9, #255]! // encoding: [0x3f,0xfd,0x8f,0xb8] 2885*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsw x2, [x3, #1]! // encoding: [0x62,0x1c,0x80,0xb8] 2886*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsw x19, [x12, #-256]! // encoding: [0x93,0x0d,0x90,0xb8] 2887*9880d681SAndroid Build Coastguard Worker 2888*9880d681SAndroid Build Coastguard Worker ldrsb wzr, [x9, #255]! 2889*9880d681SAndroid Build Coastguard Worker ldrsb w2, [x3, #1]! 2890*9880d681SAndroid Build Coastguard Worker ldrsb w19, [x12, #-256]! 2891*9880d681SAndroid Build Coastguard Worker ldrsh wzr, [x9, #255]! 2892*9880d681SAndroid Build Coastguard Worker ldrsh w2, [x3, #1]! 2893*9880d681SAndroid Build Coastguard Worker ldrsh w19, [x12, #-256]! 2894*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsb wzr, [x9, #255]! // encoding: [0x3f,0xfd,0xcf,0x38] 2895*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsb w2, [x3, #1]! // encoding: [0x62,0x1c,0xc0,0x38] 2896*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsb w19, [x12, #-256]! // encoding: [0x93,0x0d,0xd0,0x38] 2897*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsh wzr, [x9, #255]! // encoding: [0x3f,0xfd,0xcf,0x78] 2898*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsh w2, [x3, #1]! // encoding: [0x62,0x1c,0xc0,0x78] 2899*9880d681SAndroid Build Coastguard Worker// CHECK: ldrsh w19, [x12, #-256]! // encoding: [0x93,0x0d,0xd0,0x78] 2900*9880d681SAndroid Build Coastguard Worker 2901*9880d681SAndroid Build Coastguard Worker str b0, [x0, #255]! 2902*9880d681SAndroid Build Coastguard Worker str b3, [x3, #1]! 2903*9880d681SAndroid Build Coastguard Worker str b5, [sp, #-256]! 2904*9880d681SAndroid Build Coastguard Worker str h10, [x10, #255]! 2905*9880d681SAndroid Build Coastguard Worker str h13, [x23, #1]! 2906*9880d681SAndroid Build Coastguard Worker str h15, [sp, #-256]! 2907*9880d681SAndroid Build Coastguard Worker str s20, [x20, #255]! 2908*9880d681SAndroid Build Coastguard Worker str s23, [x23, #1]! 2909*9880d681SAndroid Build Coastguard Worker str s25, [x0, #-256]! 2910*9880d681SAndroid Build Coastguard Worker str d20, [x20, #255]! 2911*9880d681SAndroid Build Coastguard Worker str d23, [x23, #1]! 2912*9880d681SAndroid Build Coastguard Worker str d25, [x0, #-256]! 2913*9880d681SAndroid Build Coastguard Worker// CHECK: str b0, [x0, #255]! // encoding: [0x00,0xfc,0x0f,0x3c] 2914*9880d681SAndroid Build Coastguard Worker// CHECK: str b3, [x3, #1]! // encoding: [0x63,0x1c,0x00,0x3c] 2915*9880d681SAndroid Build Coastguard Worker// CHECK: str b5, [sp, #-256]! // encoding: [0xe5,0x0f,0x10,0x3c] 2916*9880d681SAndroid Build Coastguard Worker// CHECK: str h10, [x10, #255]! // encoding: [0x4a,0xfd,0x0f,0x7c] 2917*9880d681SAndroid Build Coastguard Worker// CHECK: str h13, [x23, #1]! // encoding: [0xed,0x1e,0x00,0x7c] 2918*9880d681SAndroid Build Coastguard Worker// CHECK: str h15, [sp, #-256]! // encoding: [0xef,0x0f,0x10,0x7c] 2919*9880d681SAndroid Build Coastguard Worker// CHECK: str s20, [x20, #255]! // encoding: [0x94,0xfe,0x0f,0xbc] 2920*9880d681SAndroid Build Coastguard Worker// CHECK: str s23, [x23, #1]! // encoding: [0xf7,0x1e,0x00,0xbc] 2921*9880d681SAndroid Build Coastguard Worker// CHECK: str s25, [x0, #-256]! // encoding: [0x19,0x0c,0x10,0xbc] 2922*9880d681SAndroid Build Coastguard Worker// CHECK: str d20, [x20, #255]! // encoding: [0x94,0xfe,0x0f,0xfc] 2923*9880d681SAndroid Build Coastguard Worker// CHECK: str d23, [x23, #1]! // encoding: [0xf7,0x1e,0x00,0xfc] 2924*9880d681SAndroid Build Coastguard Worker// CHECK: str d25, [x0, #-256]! // encoding: [0x19,0x0c,0x10,0xfc] 2925*9880d681SAndroid Build Coastguard Worker 2926*9880d681SAndroid Build Coastguard Worker ldr b0, [x0, #255]! 2927*9880d681SAndroid Build Coastguard Worker ldr b3, [x3, #1]! 2928*9880d681SAndroid Build Coastguard Worker ldr b5, [sp, #-256]! 2929*9880d681SAndroid Build Coastguard Worker ldr h10, [x10, #255]! 2930*9880d681SAndroid Build Coastguard Worker ldr h13, [x23, #1]! 2931*9880d681SAndroid Build Coastguard Worker ldr h15, [sp, #-256]! 2932*9880d681SAndroid Build Coastguard Worker ldr s20, [x20, #255]! 2933*9880d681SAndroid Build Coastguard Worker ldr s23, [x23, #1]! 2934*9880d681SAndroid Build Coastguard Worker ldr s25, [x0, #-256]! 2935*9880d681SAndroid Build Coastguard Worker ldr d20, [x20, #255]! 2936*9880d681SAndroid Build Coastguard Worker ldr d23, [x23, #1]! 2937*9880d681SAndroid Build Coastguard Worker ldr d25, [x0, #-256]! 2938*9880d681SAndroid Build Coastguard Worker// CHECK: ldr b0, [x0, #255]! // encoding: [0x00,0xfc,0x4f,0x3c] 2939*9880d681SAndroid Build Coastguard Worker// CHECK: ldr b3, [x3, #1]! // encoding: [0x63,0x1c,0x40,0x3c] 2940*9880d681SAndroid Build Coastguard Worker// CHECK: ldr b5, [sp, #-256]! // encoding: [0xe5,0x0f,0x50,0x3c] 2941*9880d681SAndroid Build Coastguard Worker// CHECK: ldr h10, [x10, #255]! // encoding: [0x4a,0xfd,0x4f,0x7c] 2942*9880d681SAndroid Build Coastguard Worker// CHECK: ldr h13, [x23, #1]! // encoding: [0xed,0x1e,0x40,0x7c] 2943*9880d681SAndroid Build Coastguard Worker// CHECK: ldr h15, [sp, #-256]! // encoding: [0xef,0x0f,0x50,0x7c] 2944*9880d681SAndroid Build Coastguard Worker// CHECK: ldr s20, [x20, #255]! // encoding: [0x94,0xfe,0x4f,0xbc] 2945*9880d681SAndroid Build Coastguard Worker// CHECK: ldr s23, [x23, #1]! // encoding: [0xf7,0x1e,0x40,0xbc] 2946*9880d681SAndroid Build Coastguard Worker// CHECK: ldr s25, [x0, #-256]! // encoding: [0x19,0x0c,0x50,0xbc] 2947*9880d681SAndroid Build Coastguard Worker// CHECK: ldr d20, [x20, #255]! // encoding: [0x94,0xfe,0x4f,0xfc] 2948*9880d681SAndroid Build Coastguard Worker// CHECK: ldr d23, [x23, #1]! // encoding: [0xf7,0x1e,0x40,0xfc] 2949*9880d681SAndroid Build Coastguard Worker// CHECK: ldr d25, [x0, #-256]! // encoding: [0x19,0x0c,0x50,0xfc] 2950*9880d681SAndroid Build Coastguard Worker 2951*9880d681SAndroid Build Coastguard Worker ldr q20, [x1, #255]! 2952*9880d681SAndroid Build Coastguard Worker ldr q23, [x9, #1]! 2953*9880d681SAndroid Build Coastguard Worker ldr q25, [x20, #-256]! 2954*9880d681SAndroid Build Coastguard Worker str q10, [x1, #255]! 2955*9880d681SAndroid Build Coastguard Worker str q22, [sp, #1]! 2956*9880d681SAndroid Build Coastguard Worker str q21, [x20, #-256]! 2957*9880d681SAndroid Build Coastguard Worker// CHECK: ldr q20, [x1, #255]! // encoding: [0x34,0xfc,0xcf,0x3c] 2958*9880d681SAndroid Build Coastguard Worker// CHECK: ldr q23, [x9, #1]! // encoding: [0x37,0x1d,0xc0,0x3c] 2959*9880d681SAndroid Build Coastguard Worker// CHECK: ldr q25, [x20, #-256]! // encoding: [0x99,0x0e,0xd0,0x3c] 2960*9880d681SAndroid Build Coastguard Worker// CHECK: str q10, [x1, #255]! // encoding: [0x2a,0xfc,0x8f,0x3c] 2961*9880d681SAndroid Build Coastguard Worker// CHECK: str q22, [sp, #1]! // encoding: [0xf6,0x1f,0x80,0x3c] 2962*9880d681SAndroid Build Coastguard Worker// CHECK: str q21, [x20, #-256]! // encoding: [0x95,0x0e,0x90,0x3c] 2963*9880d681SAndroid Build Coastguard Worker 2964*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 2965*9880d681SAndroid Build Coastguard Worker// Load/store (unprivileged) 2966*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 2967*9880d681SAndroid Build Coastguard Worker 2968*9880d681SAndroid Build Coastguard Worker sttrb w9, [sp, #0] 2969*9880d681SAndroid Build Coastguard Worker sttrh wzr, [x12, #255] 2970*9880d681SAndroid Build Coastguard Worker sttr w16, [x0, #-256] 2971*9880d681SAndroid Build Coastguard Worker sttr x28, [x14, #1] 2972*9880d681SAndroid Build Coastguard Worker// CHECK: sttrb w9, [sp] // encoding: [0xe9,0x0b,0x00,0x38] 2973*9880d681SAndroid Build Coastguard Worker// CHECK: sttrh wzr, [x12, #255] // encoding: [0x9f,0xf9,0x0f,0x78] 2974*9880d681SAndroid Build Coastguard Worker// CHECK: sttr w16, [x0, #-256] // encoding: [0x10,0x08,0x10,0xb8] 2975*9880d681SAndroid Build Coastguard Worker// CHECK: sttr x28, [x14, #1] // encoding: [0xdc,0x19,0x00,0xf8] 2976*9880d681SAndroid Build Coastguard Worker 2977*9880d681SAndroid Build Coastguard Worker ldtrb w1, [x20, #255] 2978*9880d681SAndroid Build Coastguard Worker ldtrh w20, [x1, #255] 2979*9880d681SAndroid Build Coastguard Worker ldtr w12, [sp, #255] 2980*9880d681SAndroid Build Coastguard Worker ldtr xzr, [x12, #255] 2981*9880d681SAndroid Build Coastguard Worker// CHECK: ldtrb w1, [x20, #255] // encoding: [0x81,0xfa,0x4f,0x38] 2982*9880d681SAndroid Build Coastguard Worker// CHECK: ldtrh w20, [x1, #255] // encoding: [0x34,0xf8,0x4f,0x78] 2983*9880d681SAndroid Build Coastguard Worker// CHECK: ldtr w12, [sp, #255] // encoding: [0xec,0xfb,0x4f,0xb8] 2984*9880d681SAndroid Build Coastguard Worker// CHECK: ldtr xzr, [x12, #255] // encoding: [0x9f,0xf9,0x4f,0xf8] 2985*9880d681SAndroid Build Coastguard Worker 2986*9880d681SAndroid Build Coastguard Worker ldtrsb x9, [x7, #-256] 2987*9880d681SAndroid Build Coastguard Worker ldtrsh x17, [x19, #-256] 2988*9880d681SAndroid Build Coastguard Worker ldtrsw x20, [x15, #-256] 2989*9880d681SAndroid Build Coastguard Worker ldtrsb w19, [x1, #-256] 2990*9880d681SAndroid Build Coastguard Worker ldtrsh w15, [x21, #-256] 2991*9880d681SAndroid Build Coastguard Worker// CHECK: ldtrsb x9, [x7, #-256] // encoding: [0xe9,0x08,0x90,0x38] 2992*9880d681SAndroid Build Coastguard Worker// CHECK: ldtrsh x17, [x19, #-256] // encoding: [0x71,0x0a,0x90,0x78] 2993*9880d681SAndroid Build Coastguard Worker// CHECK: ldtrsw x20, [x15, #-256] // encoding: [0xf4,0x09,0x90,0xb8] 2994*9880d681SAndroid Build Coastguard Worker// CHECK: ldtrsb w19, [x1, #-256] // encoding: [0x33,0x08,0xd0,0x38] 2995*9880d681SAndroid Build Coastguard Worker// CHECK: ldtrsh w15, [x21, #-256] // encoding: [0xaf,0x0a,0xd0,0x78] 2996*9880d681SAndroid Build Coastguard Worker 2997*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 2998*9880d681SAndroid Build Coastguard Worker// Load/store register pair (offset) 2999*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 3000*9880d681SAndroid Build Coastguard Worker 3001*9880d681SAndroid Build Coastguard Worker ldp w3, w5, [sp] 3002*9880d681SAndroid Build Coastguard Worker stp wzr, w9, [sp, #252] 3003*9880d681SAndroid Build Coastguard Worker ldp w2, wzr, [sp, #-256] 3004*9880d681SAndroid Build Coastguard Worker ldp w9, w10, [sp, #4] 3005*9880d681SAndroid Build Coastguard Worker// CHECK: ldp w3, w5, [sp] // encoding: [0xe3,0x17,0x40,0x29] 3006*9880d681SAndroid Build Coastguard Worker// CHECK: stp wzr, w9, [sp, #252] // encoding: [0xff,0xa7,0x1f,0x29] 3007*9880d681SAndroid Build Coastguard Worker// CHECK: ldp w2, wzr, [sp, #-256] // encoding: [0xe2,0x7f,0x60,0x29] 3008*9880d681SAndroid Build Coastguard Worker// CHECK: ldp w9, w10, [sp, #4] // encoding: [0xe9,0xab,0x40,0x29] 3009*9880d681SAndroid Build Coastguard Worker 3010*9880d681SAndroid Build Coastguard Worker ldpsw x9, x10, [sp, #4] 3011*9880d681SAndroid Build Coastguard Worker ldpsw x9, x10, [x2, #-256] 3012*9880d681SAndroid Build Coastguard Worker ldpsw x20, x30, [sp, #252] 3013*9880d681SAndroid Build Coastguard Worker// CHECK: ldpsw x9, x10, [sp, #4] // encoding: [0xe9,0xab,0x40,0x69] 3014*9880d681SAndroid Build Coastguard Worker// CHECK: ldpsw x9, x10, [x2, #-256] // encoding: [0x49,0x28,0x60,0x69] 3015*9880d681SAndroid Build Coastguard Worker// CHECK: ldpsw x20, x30, [sp, #252] // encoding: [0xf4,0xfb,0x5f,0x69] 3016*9880d681SAndroid Build Coastguard Worker 3017*9880d681SAndroid Build Coastguard Worker ldp x21, x29, [x2, #504] 3018*9880d681SAndroid Build Coastguard Worker ldp x22, x23, [x3, #-512] 3019*9880d681SAndroid Build Coastguard Worker ldp x24, x25, [x4, #8] 3020*9880d681SAndroid Build Coastguard Worker// CHECK: ldp x21, x29, [x2, #504] // encoding: [0x55,0xf4,0x5f,0xa9] 3021*9880d681SAndroid Build Coastguard Worker// CHECK: ldp x22, x23, [x3, #-512] // encoding: [0x76,0x5c,0x60,0xa9] 3022*9880d681SAndroid Build Coastguard Worker// CHECK: ldp x24, x25, [x4, #8] // encoding: [0x98,0xe4,0x40,0xa9] 3023*9880d681SAndroid Build Coastguard Worker 3024*9880d681SAndroid Build Coastguard Worker ldp s29, s28, [sp, #252] 3025*9880d681SAndroid Build Coastguard Worker stp s27, s26, [sp, #-256] 3026*9880d681SAndroid Build Coastguard Worker ldp s1, s2, [x3, #44] 3027*9880d681SAndroid Build Coastguard Worker// CHECK: ldp s29, s28, [sp, #252] // encoding: [0xfd,0xf3,0x5f,0x2d] 3028*9880d681SAndroid Build Coastguard Worker// CHECK: stp s27, s26, [sp, #-256] // encoding: [0xfb,0x6b,0x20,0x2d] 3029*9880d681SAndroid Build Coastguard Worker// CHECK: ldp s1, s2, [x3, #44] // encoding: [0x61,0x88,0x45,0x2d] 3030*9880d681SAndroid Build Coastguard Worker 3031*9880d681SAndroid Build Coastguard Worker stp d3, d5, [x9, #504] 3032*9880d681SAndroid Build Coastguard Worker stp d7, d11, [x10, #-512] 3033*9880d681SAndroid Build Coastguard Worker ldp d2, d3, [x30, #-8] 3034*9880d681SAndroid Build Coastguard Worker// CHECK: stp d3, d5, [x9, #504] // encoding: [0x23,0x95,0x1f,0x6d] 3035*9880d681SAndroid Build Coastguard Worker// CHECK: stp d7, d11, [x10, #-512] // encoding: [0x47,0x2d,0x20,0x6d] 3036*9880d681SAndroid Build Coastguard Worker// CHECK: ldp d2, d3, [x30, #-8] // encoding: [0xc2,0x8f,0x7f,0x6d] 3037*9880d681SAndroid Build Coastguard Worker 3038*9880d681SAndroid Build Coastguard Worker stp q3, q5, [sp] 3039*9880d681SAndroid Build Coastguard Worker stp q17, q19, [sp, #1008] 3040*9880d681SAndroid Build Coastguard Worker ldp q23, q29, [x1, #-1024] 3041*9880d681SAndroid Build Coastguard Worker// CHECK: stp q3, q5, [sp] // encoding: [0xe3,0x17,0x00,0xad] 3042*9880d681SAndroid Build Coastguard Worker// CHECK: stp q17, q19, [sp, #1008] // encoding: [0xf1,0xcf,0x1f,0xad] 3043*9880d681SAndroid Build Coastguard Worker// CHECK: ldp q23, q29, [x1, #-1024] // encoding: [0x37,0x74,0x60,0xad] 3044*9880d681SAndroid Build Coastguard Worker 3045*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 3046*9880d681SAndroid Build Coastguard Worker// Load/store register pair (post-indexed) 3047*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 3048*9880d681SAndroid Build Coastguard Worker 3049*9880d681SAndroid Build Coastguard Worker ldp w3, w5, [sp], #0 3050*9880d681SAndroid Build Coastguard Worker stp wzr, w9, [sp], #252 3051*9880d681SAndroid Build Coastguard Worker ldp w2, wzr, [sp], #-256 3052*9880d681SAndroid Build Coastguard Worker ldp w9, w10, [sp], #4 3053*9880d681SAndroid Build Coastguard Worker// CHECK: ldp w3, w5, [sp], #0 // encoding: [0xe3,0x17,0xc0,0x28] 3054*9880d681SAndroid Build Coastguard Worker// CHECK: stp wzr, w9, [sp], #252 // encoding: [0xff,0xa7,0x9f,0x28] 3055*9880d681SAndroid Build Coastguard Worker// CHECK: ldp w2, wzr, [sp], #-256 // encoding: [0xe2,0x7f,0xe0,0x28] 3056*9880d681SAndroid Build Coastguard Worker// CHECK: ldp w9, w10, [sp], #4 // encoding: [0xe9,0xab,0xc0,0x28] 3057*9880d681SAndroid Build Coastguard Worker 3058*9880d681SAndroid Build Coastguard Worker ldpsw x9, x10, [sp], #4 3059*9880d681SAndroid Build Coastguard Worker ldpsw x9, x10, [x2], #-256 3060*9880d681SAndroid Build Coastguard Worker ldpsw x20, x30, [sp], #252 3061*9880d681SAndroid Build Coastguard Worker// CHECK: ldpsw x9, x10, [sp], #4 // encoding: [0xe9,0xab,0xc0,0x68] 3062*9880d681SAndroid Build Coastguard Worker// CHECK: ldpsw x9, x10, [x2], #-256 // encoding: [0x49,0x28,0xe0,0x68] 3063*9880d681SAndroid Build Coastguard Worker// CHECK: ldpsw x20, x30, [sp], #252 // encoding: [0xf4,0xfb,0xdf,0x68] 3064*9880d681SAndroid Build Coastguard Worker 3065*9880d681SAndroid Build Coastguard Worker ldp x21, x29, [x2], #504 3066*9880d681SAndroid Build Coastguard Worker ldp x22, x23, [x3], #-512 3067*9880d681SAndroid Build Coastguard Worker ldp x24, x25, [x4], #8 3068*9880d681SAndroid Build Coastguard Worker// CHECK: ldp x21, x29, [x2], #504 // encoding: [0x55,0xf4,0xdf,0xa8] 3069*9880d681SAndroid Build Coastguard Worker// CHECK: ldp x22, x23, [x3], #-512 // encoding: [0x76,0x5c,0xe0,0xa8] 3070*9880d681SAndroid Build Coastguard Worker// CHECK: ldp x24, x25, [x4], #8 // encoding: [0x98,0xe4,0xc0,0xa8] 3071*9880d681SAndroid Build Coastguard Worker 3072*9880d681SAndroid Build Coastguard Worker ldp s29, s28, [sp], #252 3073*9880d681SAndroid Build Coastguard Worker stp s27, s26, [sp], #-256 3074*9880d681SAndroid Build Coastguard Worker ldp s1, s2, [x3], #44 3075*9880d681SAndroid Build Coastguard Worker// CHECK: ldp s29, s28, [sp], #252 // encoding: [0xfd,0xf3,0xdf,0x2c] 3076*9880d681SAndroid Build Coastguard Worker// CHECK: stp s27, s26, [sp], #-256 // encoding: [0xfb,0x6b,0xa0,0x2c] 3077*9880d681SAndroid Build Coastguard Worker// CHECK: ldp s1, s2, [x3], #44 // encoding: [0x61,0x88,0xc5,0x2c] 3078*9880d681SAndroid Build Coastguard Worker 3079*9880d681SAndroid Build Coastguard Worker stp d3, d5, [x9], #504 3080*9880d681SAndroid Build Coastguard Worker stp d7, d11, [x10], #-512 3081*9880d681SAndroid Build Coastguard Worker ldp d2, d3, [x30], #-8 3082*9880d681SAndroid Build Coastguard Worker// CHECK: stp d3, d5, [x9], #504 // encoding: [0x23,0x95,0x9f,0x6c] 3083*9880d681SAndroid Build Coastguard Worker// CHECK: stp d7, d11, [x10], #-512 // encoding: [0x47,0x2d,0xa0,0x6c] 3084*9880d681SAndroid Build Coastguard Worker// CHECK: ldp d2, d3, [x30], #-8 // encoding: [0xc2,0x8f,0xff,0x6c] 3085*9880d681SAndroid Build Coastguard Worker 3086*9880d681SAndroid Build Coastguard Worker stp q3, q5, [sp], #0 3087*9880d681SAndroid Build Coastguard Worker stp q17, q19, [sp], #1008 3088*9880d681SAndroid Build Coastguard Worker ldp q23, q29, [x1], #-1024 3089*9880d681SAndroid Build Coastguard Worker// CHECK: stp q3, q5, [sp], #0 // encoding: [0xe3,0x17,0x80,0xac] 3090*9880d681SAndroid Build Coastguard Worker// CHECK: stp q17, q19, [sp], #1008 // encoding: [0xf1,0xcf,0x9f,0xac] 3091*9880d681SAndroid Build Coastguard Worker// CHECK: ldp q23, q29, [x1], #-1024 // encoding: [0x37,0x74,0xe0,0xac] 3092*9880d681SAndroid Build Coastguard Worker 3093*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 3094*9880d681SAndroid Build Coastguard Worker// Load/store register pair (pre-indexed) 3095*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 3096*9880d681SAndroid Build Coastguard Worker ldp w3, w5, [sp, #0]! 3097*9880d681SAndroid Build Coastguard Worker stp wzr, w9, [sp, #252]! 3098*9880d681SAndroid Build Coastguard Worker ldp w2, wzr, [sp, #-256]! 3099*9880d681SAndroid Build Coastguard Worker ldp w9, w10, [sp, #4]! 3100*9880d681SAndroid Build Coastguard Worker// CHECK: ldp w3, w5, [sp, #0]! // encoding: [0xe3,0x17,0xc0,0x29] 3101*9880d681SAndroid Build Coastguard Worker// CHECK: stp wzr, w9, [sp, #252]! // encoding: [0xff,0xa7,0x9f,0x29] 3102*9880d681SAndroid Build Coastguard Worker// CHECK: ldp w2, wzr, [sp, #-256]! // encoding: [0xe2,0x7f,0xe0,0x29] 3103*9880d681SAndroid Build Coastguard Worker// CHECK: ldp w9, w10, [sp, #4]! // encoding: [0xe9,0xab,0xc0,0x29] 3104*9880d681SAndroid Build Coastguard Worker 3105*9880d681SAndroid Build Coastguard Worker ldpsw x9, x10, [sp, #4]! 3106*9880d681SAndroid Build Coastguard Worker ldpsw x9, x10, [x2, #-256]! 3107*9880d681SAndroid Build Coastguard Worker ldpsw x20, x30, [sp, #252]! 3108*9880d681SAndroid Build Coastguard Worker// CHECK: ldpsw x9, x10, [sp, #4]! // encoding: [0xe9,0xab,0xc0,0x69] 3109*9880d681SAndroid Build Coastguard Worker// CHECK: ldpsw x9, x10, [x2, #-256]! // encoding: [0x49,0x28,0xe0,0x69] 3110*9880d681SAndroid Build Coastguard Worker// CHECK: ldpsw x20, x30, [sp, #252]! // encoding: [0xf4,0xfb,0xdf,0x69] 3111*9880d681SAndroid Build Coastguard Worker 3112*9880d681SAndroid Build Coastguard Worker ldp x21, x29, [x2, #504]! 3113*9880d681SAndroid Build Coastguard Worker ldp x22, x23, [x3, #-512]! 3114*9880d681SAndroid Build Coastguard Worker ldp x24, x25, [x4, #8]! 3115*9880d681SAndroid Build Coastguard Worker// CHECK: ldp x21, x29, [x2, #504]! // encoding: [0x55,0xf4,0xdf,0xa9] 3116*9880d681SAndroid Build Coastguard Worker// CHECK: ldp x22, x23, [x3, #-512]! // encoding: [0x76,0x5c,0xe0,0xa9] 3117*9880d681SAndroid Build Coastguard Worker// CHECK: ldp x24, x25, [x4, #8]! // encoding: [0x98,0xe4,0xc0,0xa9] 3118*9880d681SAndroid Build Coastguard Worker 3119*9880d681SAndroid Build Coastguard Worker ldp s29, s28, [sp, #252]! 3120*9880d681SAndroid Build Coastguard Worker stp s27, s26, [sp, #-256]! 3121*9880d681SAndroid Build Coastguard Worker ldp s1, s2, [x3, #44]! 3122*9880d681SAndroid Build Coastguard Worker// CHECK: ldp s29, s28, [sp, #252]! // encoding: [0xfd,0xf3,0xdf,0x2d] 3123*9880d681SAndroid Build Coastguard Worker// CHECK: stp s27, s26, [sp, #-256]! // encoding: [0xfb,0x6b,0xa0,0x2d] 3124*9880d681SAndroid Build Coastguard Worker// CHECK: ldp s1, s2, [x3, #44]! // encoding: [0x61,0x88,0xc5,0x2d] 3125*9880d681SAndroid Build Coastguard Worker 3126*9880d681SAndroid Build Coastguard Worker stp d3, d5, [x9, #504]! 3127*9880d681SAndroid Build Coastguard Worker stp d7, d11, [x10, #-512]! 3128*9880d681SAndroid Build Coastguard Worker ldp d2, d3, [x30, #-8]! 3129*9880d681SAndroid Build Coastguard Worker// CHECK: stp d3, d5, [x9, #504]! // encoding: [0x23,0x95,0x9f,0x6d] 3130*9880d681SAndroid Build Coastguard Worker// CHECK: stp d7, d11, [x10, #-512]! // encoding: [0x47,0x2d,0xa0,0x6d] 3131*9880d681SAndroid Build Coastguard Worker// CHECK: ldp d2, d3, [x30, #-8]! // encoding: [0xc2,0x8f,0xff,0x6d] 3132*9880d681SAndroid Build Coastguard Worker 3133*9880d681SAndroid Build Coastguard Worker stp q3, q5, [sp, #0]! 3134*9880d681SAndroid Build Coastguard Worker stp q17, q19, [sp, #1008]! 3135*9880d681SAndroid Build Coastguard Worker ldp q23, q29, [x1, #-1024]! 3136*9880d681SAndroid Build Coastguard Worker// CHECK: stp q3, q5, [sp, #0]! // encoding: [0xe3,0x17,0x80,0xad] 3137*9880d681SAndroid Build Coastguard Worker// CHECK: stp q17, q19, [sp, #1008]! // encoding: [0xf1,0xcf,0x9f,0xad] 3138*9880d681SAndroid Build Coastguard Worker// CHECK: ldp q23, q29, [x1, #-1024]! // encoding: [0x37,0x74,0xe0,0xad] 3139*9880d681SAndroid Build Coastguard Worker 3140*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 3141*9880d681SAndroid Build Coastguard Worker// Load/store non-temporal register pair (offset) 3142*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 3143*9880d681SAndroid Build Coastguard Worker 3144*9880d681SAndroid Build Coastguard Worker ldnp w3, w5, [sp] 3145*9880d681SAndroid Build Coastguard Worker stnp wzr, w9, [sp, #252] 3146*9880d681SAndroid Build Coastguard Worker ldnp w2, wzr, [sp, #-256] 3147*9880d681SAndroid Build Coastguard Worker ldnp w9, w10, [sp, #4] 3148*9880d681SAndroid Build Coastguard Worker// CHECK: ldnp w3, w5, [sp] // encoding: [0xe3,0x17,0x40,0x28] 3149*9880d681SAndroid Build Coastguard Worker// CHECK: stnp wzr, w9, [sp, #252] // encoding: [0xff,0xa7,0x1f,0x28] 3150*9880d681SAndroid Build Coastguard Worker// CHECK: ldnp w2, wzr, [sp, #-256] // encoding: [0xe2,0x7f,0x60,0x28] 3151*9880d681SAndroid Build Coastguard Worker// CHECK: ldnp w9, w10, [sp, #4] // encoding: [0xe9,0xab,0x40,0x28] 3152*9880d681SAndroid Build Coastguard Worker 3153*9880d681SAndroid Build Coastguard Worker ldnp x21, x29, [x2, #504] 3154*9880d681SAndroid Build Coastguard Worker ldnp x22, x23, [x3, #-512] 3155*9880d681SAndroid Build Coastguard Worker ldnp x24, x25, [x4, #8] 3156*9880d681SAndroid Build Coastguard Worker// CHECK: ldnp x21, x29, [x2, #504] // encoding: [0x55,0xf4,0x5f,0xa8] 3157*9880d681SAndroid Build Coastguard Worker// CHECK: ldnp x22, x23, [x3, #-512] // encoding: [0x76,0x5c,0x60,0xa8] 3158*9880d681SAndroid Build Coastguard Worker// CHECK: ldnp x24, x25, [x4, #8] // encoding: [0x98,0xe4,0x40,0xa8] 3159*9880d681SAndroid Build Coastguard Worker 3160*9880d681SAndroid Build Coastguard Worker ldnp s29, s28, [sp, #252] 3161*9880d681SAndroid Build Coastguard Worker stnp s27, s26, [sp, #-256] 3162*9880d681SAndroid Build Coastguard Worker ldnp s1, s2, [x3, #44] 3163*9880d681SAndroid Build Coastguard Worker// CHECK: ldnp s29, s28, [sp, #252] // encoding: [0xfd,0xf3,0x5f,0x2c] 3164*9880d681SAndroid Build Coastguard Worker// CHECK: stnp s27, s26, [sp, #-256] // encoding: [0xfb,0x6b,0x20,0x2c] 3165*9880d681SAndroid Build Coastguard Worker// CHECK: ldnp s1, s2, [x3, #44] // encoding: [0x61,0x88,0x45,0x2c] 3166*9880d681SAndroid Build Coastguard Worker 3167*9880d681SAndroid Build Coastguard Worker stnp d3, d5, [x9, #504] 3168*9880d681SAndroid Build Coastguard Worker stnp d7, d11, [x10, #-512] 3169*9880d681SAndroid Build Coastguard Worker ldnp d2, d3, [x30, #-8] 3170*9880d681SAndroid Build Coastguard Worker// CHECK: stnp d3, d5, [x9, #504] // encoding: [0x23,0x95,0x1f,0x6c] 3171*9880d681SAndroid Build Coastguard Worker// CHECK: stnp d7, d11, [x10, #-512] // encoding: [0x47,0x2d,0x20,0x6c] 3172*9880d681SAndroid Build Coastguard Worker// CHECK: ldnp d2, d3, [x30, #-8] // encoding: [0xc2,0x8f,0x7f,0x6c] 3173*9880d681SAndroid Build Coastguard Worker 3174*9880d681SAndroid Build Coastguard Worker stnp q3, q5, [sp] 3175*9880d681SAndroid Build Coastguard Worker stnp q17, q19, [sp, #1008] 3176*9880d681SAndroid Build Coastguard Worker ldnp q23, q29, [x1, #-1024] 3177*9880d681SAndroid Build Coastguard Worker// CHECK: stnp q3, q5, [sp] // encoding: [0xe3,0x17,0x00,0xac] 3178*9880d681SAndroid Build Coastguard Worker// CHECK: stnp q17, q19, [sp, #1008] // encoding: [0xf1,0xcf,0x1f,0xac] 3179*9880d681SAndroid Build Coastguard Worker// CHECK: ldnp q23, q29, [x1, #-1024] // encoding: [0x37,0x74,0x60,0xac] 3180*9880d681SAndroid Build Coastguard Worker 3181*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 3182*9880d681SAndroid Build Coastguard Worker// Logical (immediate) 3183*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 3184*9880d681SAndroid Build Coastguard Worker // 32 bit replication-width 3185*9880d681SAndroid Build Coastguard Worker orr w3, w9, #0xffff0000 3186*9880d681SAndroid Build Coastguard Worker orr wsp, w10, #0xe00000ff 3187*9880d681SAndroid Build Coastguard Worker orr w9, w10, #0x000003ff 3188*9880d681SAndroid Build Coastguard Worker// CHECK: orr w3, w9, #0xffff0000 // encoding: [0x23,0x3d,0x10,0x32] 3189*9880d681SAndroid Build Coastguard Worker// CHECK: orr wsp, w10, #0xe00000ff // encoding: [0x5f,0x29,0x03,0x32] 3190*9880d681SAndroid Build Coastguard Worker// CHECK: orr w9, w10, #0x3ff // encoding: [0x49,0x25,0x00,0x32] 3191*9880d681SAndroid Build Coastguard Worker 3192*9880d681SAndroid Build Coastguard Worker // 16 bit replication width 3193*9880d681SAndroid Build Coastguard Worker and w14, w15, #0x80008000 3194*9880d681SAndroid Build Coastguard Worker and w12, w13, #0xffc3ffc3 3195*9880d681SAndroid Build Coastguard Worker and w11, wzr, #0x00030003 3196*9880d681SAndroid Build Coastguard Worker// CHECK: and w14, w15, #0x80008000 // encoding: [0xee,0x81,0x01,0x12] 3197*9880d681SAndroid Build Coastguard Worker// CHECK: and w12, w13, #0xffc3ffc3 // encoding: [0xac,0xad,0x0a,0x12] 3198*9880d681SAndroid Build Coastguard Worker// CHECK: and w11, wzr, #0x30003 // encoding: [0xeb,0x87,0x00,0x12] 3199*9880d681SAndroid Build Coastguard Worker 3200*9880d681SAndroid Build Coastguard Worker // 8 bit replication width 3201*9880d681SAndroid Build Coastguard Worker eor w3, w6, #0xe0e0e0e0 3202*9880d681SAndroid Build Coastguard Worker eor wsp, wzr, #0x03030303 3203*9880d681SAndroid Build Coastguard Worker eor w16, w17, #0x81818181 3204*9880d681SAndroid Build Coastguard Worker// CHECK: eor w3, w6, #0xe0e0e0e0 // encoding: [0xc3,0xc8,0x03,0x52] 3205*9880d681SAndroid Build Coastguard Worker// CHECK: eor wsp, wzr, #0x3030303 // encoding: [0xff,0xc7,0x00,0x52] 3206*9880d681SAndroid Build Coastguard Worker// CHECK: eor w16, w17, #0x81818181 // encoding: [0x30,0xc6,0x01,0x52] 3207*9880d681SAndroid Build Coastguard Worker 3208*9880d681SAndroid Build Coastguard Worker // 4 bit replication width 3209*9880d681SAndroid Build Coastguard Worker ands wzr, w18, #0xcccccccc 3210*9880d681SAndroid Build Coastguard Worker ands w19, w20, #0x33333333 3211*9880d681SAndroid Build Coastguard Worker ands w21, w22, #0x99999999 3212*9880d681SAndroid Build Coastguard Worker// CHECK: {{ands wzr,|tst}} w18, #0xcccccccc // encoding: [0x5f,0xe6,0x02,0x72] 3213*9880d681SAndroid Build Coastguard Worker// CHECK: ands w19, w20, #0x33333333 // encoding: [0x93,0xe6,0x00,0x72] 3214*9880d681SAndroid Build Coastguard Worker// CHECK: ands w21, w22, #0x99999999 // encoding: [0xd5,0xe6,0x01,0x72] 3215*9880d681SAndroid Build Coastguard Worker 3216*9880d681SAndroid Build Coastguard Worker // 2 bit replication width 3217*9880d681SAndroid Build Coastguard Worker tst w3, #0xaaaaaaaa 3218*9880d681SAndroid Build Coastguard Worker tst wzr, #0x55555555 3219*9880d681SAndroid Build Coastguard Worker// CHECK: {{ands wzr,|tst}} w3, #0xaaaaaaaa // encoding: [0x7f,0xf0,0x01,0x72] 3220*9880d681SAndroid Build Coastguard Worker// CHECK: {{ands wzr,|tst}} wzr, #0x55555555 // encoding: [0xff,0xf3,0x00,0x72] 3221*9880d681SAndroid Build Coastguard Worker 3222*9880d681SAndroid Build Coastguard Worker // 64 bit replication-width 3223*9880d681SAndroid Build Coastguard Worker eor x3, x5, #0xffffffffc000000 3224*9880d681SAndroid Build Coastguard Worker and x9, x10, #0x00007fffffffffff 3225*9880d681SAndroid Build Coastguard Worker orr x11, x12, #0x8000000000000fff 3226*9880d681SAndroid Build Coastguard Worker// CHECK: eor x3, x5, #0xffffffffc000000 // encoding: [0xa3,0x84,0x66,0xd2] 3227*9880d681SAndroid Build Coastguard Worker// CHECK: and x9, x10, #0x7fffffffffff // encoding: [0x49,0xb9,0x40,0x92] 3228*9880d681SAndroid Build Coastguard Worker// CHECK: orr x11, x12, #0x8000000000000fff // encoding: [0x8b,0x31,0x41,0xb2] 3229*9880d681SAndroid Build Coastguard Worker 3230*9880d681SAndroid Build Coastguard Worker // 32 bit replication-width 3231*9880d681SAndroid Build Coastguard Worker orr x3, x9, #0xffff0000ffff0000 3232*9880d681SAndroid Build Coastguard Worker orr sp, x10, #0xe00000ffe00000ff 3233*9880d681SAndroid Build Coastguard Worker orr x9, x10, #0x000003ff000003ff 3234*9880d681SAndroid Build Coastguard Worker// CHECK: orr x3, x9, #0xffff0000ffff0000 // encoding: [0x23,0x3d,0x10,0xb2] 3235*9880d681SAndroid Build Coastguard Worker// CHECK: orr sp, x10, #0xe00000ffe00000ff // encoding: [0x5f,0x29,0x03,0xb2] 3236*9880d681SAndroid Build Coastguard Worker// CHECK: orr x9, x10, #0x3ff000003ff // encoding: [0x49,0x25,0x00,0xb2] 3237*9880d681SAndroid Build Coastguard Worker 3238*9880d681SAndroid Build Coastguard Worker // 16 bit replication-width 3239*9880d681SAndroid Build Coastguard Worker and x14, x15, #0x8000800080008000 3240*9880d681SAndroid Build Coastguard Worker and x12, x13, #0xffc3ffc3ffc3ffc3 3241*9880d681SAndroid Build Coastguard Worker and x11, xzr, #0x0003000300030003 3242*9880d681SAndroid Build Coastguard Worker// CHECK: and x14, x15, #0x8000800080008000 // encoding: [0xee,0x81,0x01,0x92] 3243*9880d681SAndroid Build Coastguard Worker// CHECK: and x12, x13, #0xffc3ffc3ffc3ffc3 // encoding: [0xac,0xad,0x0a,0x92] 3244*9880d681SAndroid Build Coastguard Worker// CHECK: and x11, xzr, #0x3000300030003 // encoding: [0xeb,0x87,0x00,0x92] 3245*9880d681SAndroid Build Coastguard Worker 3246*9880d681SAndroid Build Coastguard Worker // 8 bit replication-width 3247*9880d681SAndroid Build Coastguard Worker eor x3, x6, #0xe0e0e0e0e0e0e0e0 3248*9880d681SAndroid Build Coastguard Worker eor sp, xzr, #0x0303030303030303 3249*9880d681SAndroid Build Coastguard Worker eor x16, x17, #0x8181818181818181 3250*9880d681SAndroid Build Coastguard Worker// CHECK: eor x3, x6, #0xe0e0e0e0e0e0e0e0 // encoding: [0xc3,0xc8,0x03,0xd2] 3251*9880d681SAndroid Build Coastguard Worker// CHECK: eor sp, xzr, #0x303030303030303 // encoding: [0xff,0xc7,0x00,0xd2] 3252*9880d681SAndroid Build Coastguard Worker// CHECK: eor x16, x17, #0x8181818181818181 // encoding: [0x30,0xc6,0x01,0xd2] 3253*9880d681SAndroid Build Coastguard Worker 3254*9880d681SAndroid Build Coastguard Worker // 4 bit replication-width 3255*9880d681SAndroid Build Coastguard Worker ands xzr, x18, #0xcccccccccccccccc 3256*9880d681SAndroid Build Coastguard Worker ands x19, x20, #0x3333333333333333 3257*9880d681SAndroid Build Coastguard Worker ands x21, x22, #0x9999999999999999 3258*9880d681SAndroid Build Coastguard Worker// CHECK: {{ands xzr,|tst}} x18, #0xcccccccccccccccc // encoding: [0x5f,0xe6,0x02,0xf2] 3259*9880d681SAndroid Build Coastguard Worker// CHECK: ands x19, x20, #0x3333333333333333 // encoding: [0x93,0xe6,0x00,0xf2] 3260*9880d681SAndroid Build Coastguard Worker// CHECK: ands x21, x22, #0x9999999999999999 // encoding: [0xd5,0xe6,0x01,0xf2] 3261*9880d681SAndroid Build Coastguard Worker 3262*9880d681SAndroid Build Coastguard Worker // 2 bit replication-width 3263*9880d681SAndroid Build Coastguard Worker tst x3, #0xaaaaaaaaaaaaaaaa 3264*9880d681SAndroid Build Coastguard Worker tst xzr, #0x5555555555555555 3265*9880d681SAndroid Build Coastguard Worker// CHECK: {{ands xzr,|tst}} x3, #0xaaaaaaaaaaaaaaaa // encoding: [0x7f,0xf0,0x01,0xf2] 3266*9880d681SAndroid Build Coastguard Worker// CHECK: {{ands xzr,|tst}} xzr, #0x5555555555555555 // encoding: [0xff,0xf3,0x00,0xf2] 3267*9880d681SAndroid Build Coastguard Worker 3268*9880d681SAndroid Build Coastguard Worker mov w3, #0xf000f 3269*9880d681SAndroid Build Coastguard Worker mov x10, #0xaaaaaaaaaaaaaaaa 3270*9880d681SAndroid Build Coastguard Worker// CHECK: mov w3, #983055 // encoding: [0xe3,0x8f,0x00,0x32] 3271*9880d681SAndroid Build Coastguard Worker// CHECK: mov x10, #-6148914691236517206 // encoding: [0xea,0xf3,0x01,0xb2] 3272*9880d681SAndroid Build Coastguard Worker 3273*9880d681SAndroid Build Coastguard Worker // The Imm field of logicalImm operations has to be truncated to the 3274*9880d681SAndroid Build Coastguard Worker // register width, i.e. 32 bits 3275*9880d681SAndroid Build Coastguard Worker and w2, w3, #-3 3276*9880d681SAndroid Build Coastguard Worker orr w0, w1, #~2 3277*9880d681SAndroid Build Coastguard Worker eor w16, w17, #-7 3278*9880d681SAndroid Build Coastguard Worker ands w19, w20, #~15 3279*9880d681SAndroid Build Coastguard Worker// CHECK: and w2, w3, #0xfffffffd // encoding: [0x62,0x78,0x1e,0x12] 3280*9880d681SAndroid Build Coastguard Worker// CHECK: orr w0, w1, #0xfffffffd // encoding: [0x20,0x78,0x1e,0x32] 3281*9880d681SAndroid Build Coastguard Worker// CHECK: eor w16, w17, #0xfffffff9 // encoding: [0x30,0x76,0x1d,0x52] 3282*9880d681SAndroid Build Coastguard Worker// CHECK: ands w19, w20, #0xfffffff0 // encoding: [0x93,0x6e,0x1c,0x72] 3283*9880d681SAndroid Build Coastguard Worker 3284*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 3285*9880d681SAndroid Build Coastguard Worker// Logical (shifted register) 3286*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 3287*9880d681SAndroid Build Coastguard Worker 3288*9880d681SAndroid Build Coastguard Worker and w12, w23, w21 3289*9880d681SAndroid Build Coastguard Worker and w16, w15, w1, lsl #1 3290*9880d681SAndroid Build Coastguard Worker and w9, w4, w10, lsl #31 3291*9880d681SAndroid Build Coastguard Worker and w3, w30, w11, lsl #0 3292*9880d681SAndroid Build Coastguard Worker and x3, x5, x7, lsl #63 3293*9880d681SAndroid Build Coastguard Worker// CHECK: and w12, w23, w21 // encoding: [0xec,0x02,0x15,0x0a] 3294*9880d681SAndroid Build Coastguard Worker// CHECK: and w16, w15, w1, lsl #1 // encoding: [0xf0,0x05,0x01,0x0a] 3295*9880d681SAndroid Build Coastguard Worker// CHECK: and w9, w4, w10, lsl #31 // encoding: [0x89,0x7c,0x0a,0x0a] 3296*9880d681SAndroid Build Coastguard Worker// CHECK: and w3, w30, w11 // encoding: [0xc3,0x03,0x0b,0x0a] 3297*9880d681SAndroid Build Coastguard Worker// CHECK: and x3, x5, x7, lsl #63 // encoding: [0xa3,0xfc,0x07,0x8a] 3298*9880d681SAndroid Build Coastguard Worker 3299*9880d681SAndroid Build Coastguard Worker and x5, x14, x19, asr #4 3300*9880d681SAndroid Build Coastguard Worker and w3, w17, w19, ror #31 3301*9880d681SAndroid Build Coastguard Worker and w0, w2, wzr, lsr #17 3302*9880d681SAndroid Build Coastguard Worker and w3, w30, w11, asr #0 3303*9880d681SAndroid Build Coastguard Worker// CHECK: and x5, x14, x19, asr #4 // encoding: [0xc5,0x11,0x93,0x8a] 3304*9880d681SAndroid Build Coastguard Worker// CHECK: and w3, w17, w19, ror #31 // encoding: [0x23,0x7e,0xd3,0x0a] 3305*9880d681SAndroid Build Coastguard Worker// CHECK: and w0, w2, wzr, lsr #17 // encoding: [0x40,0x44,0x5f,0x0a] 3306*9880d681SAndroid Build Coastguard Worker// CHECK: and w3, w30, w11, asr #0 // encoding: [0xc3,0x03,0x8b,0x0a] 3307*9880d681SAndroid Build Coastguard Worker 3308*9880d681SAndroid Build Coastguard Worker and xzr, x4, x26, lsl #0 3309*9880d681SAndroid Build Coastguard Worker and w3, wzr, w20, ror #0 3310*9880d681SAndroid Build Coastguard Worker and x7, x20, xzr, asr #63 3311*9880d681SAndroid Build Coastguard Worker// CHECK: and xzr, x4, x26 // encoding: [0x9f,0x00,0x1a,0x8a] 3312*9880d681SAndroid Build Coastguard Worker// CHECK: and w3, wzr, w20, ror #0 // encoding: [0xe3,0x03,0xd4,0x0a] 3313*9880d681SAndroid Build Coastguard Worker// CHECK: and x7, x20, xzr, asr #63 // encoding: [0x87,0xfe,0x9f,0x8a] 3314*9880d681SAndroid Build Coastguard Worker 3315*9880d681SAndroid Build Coastguard Worker bic x13, x20, x14, lsl #47 3316*9880d681SAndroid Build Coastguard Worker bic w2, w7, w9 3317*9880d681SAndroid Build Coastguard Worker orr w2, w7, w0, asr #31 3318*9880d681SAndroid Build Coastguard Worker orr x8, x9, x10, lsl #12 3319*9880d681SAndroid Build Coastguard Worker orn x3, x5, x7, asr #0 3320*9880d681SAndroid Build Coastguard Worker orn w2, w5, w29 3321*9880d681SAndroid Build Coastguard Worker// CHECK: bic x13, x20, x14, lsl #47 // encoding: [0x8d,0xbe,0x2e,0x8a] 3322*9880d681SAndroid Build Coastguard Worker// CHECK: bic w2, w7, w9 // encoding: [0xe2,0x00,0x29,0x0a] 3323*9880d681SAndroid Build Coastguard Worker// CHECK: orr w2, w7, w0, asr #31 // encoding: [0xe2,0x7c,0x80,0x2a] 3324*9880d681SAndroid Build Coastguard Worker// CHECK: orr x8, x9, x10, lsl #12 // encoding: [0x28,0x31,0x0a,0xaa] 3325*9880d681SAndroid Build Coastguard Worker// CHECK: orn x3, x5, x7, asr #0 // encoding: [0xa3,0x00,0xa7,0xaa] 3326*9880d681SAndroid Build Coastguard Worker// CHECK: orn w2, w5, w29 // encoding: [0xa2,0x00,0x3d,0x2a] 3327*9880d681SAndroid Build Coastguard Worker 3328*9880d681SAndroid Build Coastguard Worker ands w7, wzr, w9, lsl #1 3329*9880d681SAndroid Build Coastguard Worker ands x3, x5, x20, ror #63 3330*9880d681SAndroid Build Coastguard Worker bics w3, w5, w7, lsl #0 3331*9880d681SAndroid Build Coastguard Worker bics x3, xzr, x3, lsl #1 3332*9880d681SAndroid Build Coastguard Worker// CHECK: ands w7, wzr, w9, lsl #1 // encoding: [0xe7,0x07,0x09,0x6a] 3333*9880d681SAndroid Build Coastguard Worker// CHECK: ands x3, x5, x20, ror #63 // encoding: [0xa3,0xfc,0xd4,0xea] 3334*9880d681SAndroid Build Coastguard Worker// CHECK: bics w3, w5, w7 // encoding: [0xa3,0x00,0x27,0x6a] 3335*9880d681SAndroid Build Coastguard Worker// CHECK: bics x3, xzr, x3, lsl #1 // encoding: [0xe3,0x07,0x23,0xea] 3336*9880d681SAndroid Build Coastguard Worker 3337*9880d681SAndroid Build Coastguard Worker tst w3, w7, lsl #31 3338*9880d681SAndroid Build Coastguard Worker tst x2, x20, asr #0 3339*9880d681SAndroid Build Coastguard Worker// CHECK: tst w3, w7, lsl #31 // encoding: [0x7f,0x7c,0x07,0x6a] 3340*9880d681SAndroid Build Coastguard Worker// CHECK: tst x2, x20, asr #0 // encoding: [0x5f,0x00,0x94,0xea] 3341*9880d681SAndroid Build Coastguard Worker 3342*9880d681SAndroid Build Coastguard Worker mov x3, x6 3343*9880d681SAndroid Build Coastguard Worker mov x3, xzr 3344*9880d681SAndroid Build Coastguard Worker mov wzr, w2 3345*9880d681SAndroid Build Coastguard Worker mov w3, w5 3346*9880d681SAndroid Build Coastguard Worker// CHECK: mov x3, x6 // encoding: [0xe3,0x03,0x06,0xaa] 3347*9880d681SAndroid Build Coastguard Worker// CHECK: mov x3, xzr // encoding: [0xe3,0x03,0x1f,0xaa] 3348*9880d681SAndroid Build Coastguard Worker// CHECK: mov wzr, w2 // encoding: [0xff,0x03,0x02,0x2a] 3349*9880d681SAndroid Build Coastguard Worker// CHECK: mov w3, w5 // encoding: [0xe3,0x03,0x05,0x2a] 3350*9880d681SAndroid Build Coastguard Worker 3351*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 3352*9880d681SAndroid Build Coastguard Worker// Move wide (immediate) 3353*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 3354*9880d681SAndroid Build Coastguard Worker 3355*9880d681SAndroid Build Coastguard Worker movz w1, #65535, lsl #0 3356*9880d681SAndroid Build Coastguard Worker movz w2, #0, lsl #16 3357*9880d681SAndroid Build Coastguard Worker movn w2, #1234, lsl #0 3358*9880d681SAndroid Build Coastguard Worker// CHECK: mov w1, #65535 // encoding: [0xe1,0xff,0x9f,0x52] 3359*9880d681SAndroid Build Coastguard Worker// CHECK: movz w2, #0, lsl #16 // encoding: [0x02,0x00,0xa0,0x52] 3360*9880d681SAndroid Build Coastguard Worker// CHECK: mov w2, #-1235 // encoding: [0x42,0x9a,0x80,0x12] 3361*9880d681SAndroid Build Coastguard Worker 3362*9880d681SAndroid Build Coastguard Worker movz x2, #1234, lsl #32 3363*9880d681SAndroid Build Coastguard Worker movk xzr, #4321, lsl #48 3364*9880d681SAndroid Build Coastguard Worker// CHECK: mov x2, #5299989643264 // encoding: [0x42,0x9a,0xc0,0xd2] 3365*9880d681SAndroid Build Coastguard Worker// CHECK: movk xzr, #{{4321|0x10e1}}, lsl #48 // encoding: [0x3f,0x1c,0xe2,0xf2] 3366*9880d681SAndroid Build Coastguard Worker 3367*9880d681SAndroid Build Coastguard Worker movz x2, #:abs_g0:sym 3368*9880d681SAndroid Build Coastguard Worker movk w3, #:abs_g0_nc:sym 3369*9880d681SAndroid Build Coastguard Worker 3370*9880d681SAndroid Build Coastguard Worker// CHECK: movz x2, #:abs_g0:sym // encoding: [0bAAA00010,A,0b100AAAAA,0xd2] 3371*9880d681SAndroid Build Coastguard Worker// CHECK-NEXT: // fixup A - offset: 0, value: :abs_g0:sym, kind: fixup_aarch64_movw 3372*9880d681SAndroid Build Coastguard Worker// CHECK: movk w3, #:abs_g0_nc:sym // encoding: [0bAAA00011,A,0b100AAAAA,0x72] 3373*9880d681SAndroid Build Coastguard Worker// CHECK-NEXT: // fixup A - offset: 0, value: :abs_g0_nc:sym, kind: fixup_aarch64_movw 3374*9880d681SAndroid Build Coastguard Worker 3375*9880d681SAndroid Build Coastguard Worker movz x4, #:abs_g1:sym 3376*9880d681SAndroid Build Coastguard Worker movk w5, #:abs_g1_nc:sym 3377*9880d681SAndroid Build Coastguard Worker 3378*9880d681SAndroid Build Coastguard Worker// CHECK: movz x4, #:abs_g1:sym // encoding: [0bAAA00100,A,0b101AAAAA,0xd2] 3379*9880d681SAndroid Build Coastguard Worker// CHECK-NEXT: // fixup A - offset: 0, value: :abs_g1:sym, kind: fixup_aarch64_movw 3380*9880d681SAndroid Build Coastguard Worker// CHECK: movk w5, #:abs_g1_nc:sym // encoding: [0bAAA00101,A,0b101AAAAA,0x72] 3381*9880d681SAndroid Build Coastguard Worker// CHECK-NEXT: // fixup A - offset: 0, value: :abs_g1_nc:sym, kind: fixup_aarch64_movw 3382*9880d681SAndroid Build Coastguard Worker 3383*9880d681SAndroid Build Coastguard Worker movz x6, #:abs_g2:sym 3384*9880d681SAndroid Build Coastguard Worker movk x7, #:abs_g2_nc:sym 3385*9880d681SAndroid Build Coastguard Worker 3386*9880d681SAndroid Build Coastguard Worker// CHECK: movz x6, #:abs_g2:sym // encoding: [0bAAA00110,A,0b110AAAAA,0xd2] 3387*9880d681SAndroid Build Coastguard Worker// CHECK-NEXT: // fixup A - offset: 0, value: :abs_g2:sym, kind: fixup_aarch64_movw 3388*9880d681SAndroid Build Coastguard Worker// CHECK: movk x7, #:abs_g2_nc:sym // encoding: [0bAAA00111,A,0b110AAAAA,0xf2] 3389*9880d681SAndroid Build Coastguard Worker// CHECK-NEXT: // fixup A - offset: 0, value: :abs_g2_nc:sym, kind: fixup_aarch64_movw 3390*9880d681SAndroid Build Coastguard Worker 3391*9880d681SAndroid Build Coastguard Worker movz x8, #:abs_g3:sym 3392*9880d681SAndroid Build Coastguard Worker movk x9, #:abs_g3:sym 3393*9880d681SAndroid Build Coastguard Worker 3394*9880d681SAndroid Build Coastguard Worker// CHECK: movz x8, #:abs_g3:sym // encoding: [0bAAA01000,A,0b111AAAAA,0xd2] 3395*9880d681SAndroid Build Coastguard Worker// CHECK-NEXT: // fixup A - offset: 0, value: :abs_g3:sym, kind: fixup_aarch64_movw 3396*9880d681SAndroid Build Coastguard Worker// CHECK: movk x9, #:abs_g3:sym // encoding: [0bAAA01001,A,0b111AAAAA,0xf2] 3397*9880d681SAndroid Build Coastguard Worker// CHECK-NEXT: // fixup A - offset: 0, value: :abs_g3:sym, kind: fixup_aarch64_movw 3398*9880d681SAndroid Build Coastguard Worker 3399*9880d681SAndroid Build Coastguard Worker 3400*9880d681SAndroid Build Coastguard Worker movn x30, #:abs_g0_s:sym 3401*9880d681SAndroid Build Coastguard Worker movz x19, #:abs_g0_s:sym 3402*9880d681SAndroid Build Coastguard Worker movn w10, #:abs_g0_s:sym 3403*9880d681SAndroid Build Coastguard Worker movz w25, #:abs_g0_s:sym 3404*9880d681SAndroid Build Coastguard Worker 3405*9880d681SAndroid Build Coastguard Worker// CHECK: movn x30, #:abs_g0_s:sym // encoding: [0bAAA11110,A,0b100AAAAA,0x92] 3406*9880d681SAndroid Build Coastguard Worker// CHECK-NEXT: // fixup A - offset: 0, value: :abs_g0_s:sym, kind: fixup_aarch64_movw 3407*9880d681SAndroid Build Coastguard Worker// CHECK: movz x19, #:abs_g0_s:sym // encoding: [0bAAA10011,A,0b100AAAAA,0xd2] 3408*9880d681SAndroid Build Coastguard Worker// CHECK-NEXT: // fixup A - offset: 0, value: :abs_g0_s:sym, kind: fixup_aarch64_movw 3409*9880d681SAndroid Build Coastguard Worker// CHECK: movn w10, #:abs_g0_s:sym // encoding: [0bAAA01010,A,0b100AAAAA,0x12] 3410*9880d681SAndroid Build Coastguard Worker// CHECK-NEXT: // fixup A - offset: 0, value: :abs_g0_s:sym, kind: fixup_aarch64_movw 3411*9880d681SAndroid Build Coastguard Worker// CHECK: movz w25, #:abs_g0_s:sym // encoding: [0bAAA11001,A,0b100AAAAA,0x52] 3412*9880d681SAndroid Build Coastguard Worker// CHECK-NEXT: // fixup A - offset: 0, value: :abs_g0_s:sym, kind: fixup_aarch64_movw 3413*9880d681SAndroid Build Coastguard Worker 3414*9880d681SAndroid Build Coastguard Worker movn x30, #:abs_g1_s:sym 3415*9880d681SAndroid Build Coastguard Worker movz x19, #:abs_g1_s:sym 3416*9880d681SAndroid Build Coastguard Worker movn w10, #:abs_g1_s:sym 3417*9880d681SAndroid Build Coastguard Worker movz w25, #:abs_g1_s:sym 3418*9880d681SAndroid Build Coastguard Worker 3419*9880d681SAndroid Build Coastguard Worker// CHECK: movn x30, #:abs_g1_s:sym // encoding: [0bAAA11110,A,0b101AAAAA,0x92] 3420*9880d681SAndroid Build Coastguard Worker// CHECK-NEXT: // fixup A - offset: 0, value: :abs_g1_s:sym, kind: fixup_aarch64_movw 3421*9880d681SAndroid Build Coastguard Worker// CHECK: movz x19, #:abs_g1_s:sym // encoding: [0bAAA10011,A,0b101AAAAA,0xd2] 3422*9880d681SAndroid Build Coastguard Worker// CHECK-NEXT: // fixup A - offset: 0, value: :abs_g1_s:sym, kind: fixup_aarch64_movw 3423*9880d681SAndroid Build Coastguard Worker// CHECK: movn w10, #:abs_g1_s:sym // encoding: [0bAAA01010,A,0b101AAAAA,0x12] 3424*9880d681SAndroid Build Coastguard Worker// CHECK-NEXT: // fixup A - offset: 0, value: :abs_g1_s:sym, kind: fixup_aarch64_movw 3425*9880d681SAndroid Build Coastguard Worker// CHECK: movz w25, #:abs_g1_s:sym // encoding: [0bAAA11001,A,0b101AAAAA,0x52] 3426*9880d681SAndroid Build Coastguard Worker// CHECK-NEXT: // fixup A - offset: 0, value: :abs_g1_s:sym, kind: fixup_aarch64_movw 3427*9880d681SAndroid Build Coastguard Worker 3428*9880d681SAndroid Build Coastguard Worker movn x30, #:abs_g2_s:sym 3429*9880d681SAndroid Build Coastguard Worker movz x19, #:abs_g2_s:sym 3430*9880d681SAndroid Build Coastguard Worker 3431*9880d681SAndroid Build Coastguard Worker// CHECK: movn x30, #:abs_g2_s:sym // encoding: [0bAAA11110,A,0b110AAAAA,0x92] 3432*9880d681SAndroid Build Coastguard Worker// CHECK-NEXT: // fixup A - offset: 0, value: :abs_g2_s:sym, kind: fixup_aarch64_movw 3433*9880d681SAndroid Build Coastguard Worker// CHECK: movz x19, #:abs_g2_s:sym // encoding: [0bAAA10011,A,0b110AAAAA,0xd2] 3434*9880d681SAndroid Build Coastguard Worker// CHECK-NEXT: // fixup A - offset: 0, value: :abs_g2_s:sym, kind: fixup_aarch64_movw 3435*9880d681SAndroid Build Coastguard Worker 3436*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 3437*9880d681SAndroid Build Coastguard Worker// PC-relative addressing 3438*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 3439*9880d681SAndroid Build Coastguard Worker 3440*9880d681SAndroid Build Coastguard Worker adr x2, loc 3441*9880d681SAndroid Build Coastguard Worker adr xzr, loc 3442*9880d681SAndroid Build Coastguard Worker 3443*9880d681SAndroid Build Coastguard Worker// CHECK: adr x2, loc // encoding: [0x02'A',A,A,0x10'A'] 3444*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: loc, kind: fixup_aarch64_pcrel_adr_imm21 3445*9880d681SAndroid Build Coastguard Worker// CHECK: adr xzr, loc // encoding: [0x1f'A',A,A,0x10'A'] 3446*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: loc, kind: fixup_aarch64_pcrel_adr_imm21 3447*9880d681SAndroid Build Coastguard Worker 3448*9880d681SAndroid Build Coastguard Worker adrp x29, loc 3449*9880d681SAndroid Build Coastguard Worker 3450*9880d681SAndroid Build Coastguard Worker// CHECK: adrp x29, loc // encoding: [0x1d'A',A,A,0x90'A'] 3451*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: loc, kind: fixup_aarch64_pcrel_adrp_imm21 3452*9880d681SAndroid Build Coastguard Worker adrp x30, #4096 3453*9880d681SAndroid Build Coastguard Worker adr x20, #0 3454*9880d681SAndroid Build Coastguard Worker adr x9, #-1 3455*9880d681SAndroid Build Coastguard Worker adr x5, #1048575 3456*9880d681SAndroid Build Coastguard Worker// CHECK: adrp x30, #4096 // encoding: [0x1e,0x00,0x00,0xb0] 3457*9880d681SAndroid Build Coastguard Worker// CHECK: adr x20, #0 // encoding: [0x14,0x00,0x00,0x10] 3458*9880d681SAndroid Build Coastguard Worker// CHECK: adr x9, #-1 // encoding: [0xe9,0xff,0xff,0x70] 3459*9880d681SAndroid Build Coastguard Worker// CHECK: adr x5, #1048575 // encoding: [0xe5,0xff,0x7f,0x70] 3460*9880d681SAndroid Build Coastguard Worker 3461*9880d681SAndroid Build Coastguard Worker adr x9, #1048575 3462*9880d681SAndroid Build Coastguard Worker adr x2, #-1048576 3463*9880d681SAndroid Build Coastguard Worker adrp x9, #4294963200 3464*9880d681SAndroid Build Coastguard Worker adrp x20, #-4294967296 3465*9880d681SAndroid Build Coastguard Worker// CHECK: adr x9, #1048575 // encoding: [0xe9,0xff,0x7f,0x70] 3466*9880d681SAndroid Build Coastguard Worker// CHECK: adr x2, #-1048576 // encoding: [0x02,0x00,0x80,0x10] 3467*9880d681SAndroid Build Coastguard Worker// CHECK: adrp x9, #4294963200 // encoding: [0xe9,0xff,0x7f,0xf0] 3468*9880d681SAndroid Build Coastguard Worker// CHECK: adrp x20, #-4294967296 // encoding: [0x14,0x00,0x80,0x90] 3469*9880d681SAndroid Build Coastguard Worker 3470*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 3471*9880d681SAndroid Build Coastguard Worker// System 3472*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 3473*9880d681SAndroid Build Coastguard Worker 3474*9880d681SAndroid Build Coastguard Worker hint #0 3475*9880d681SAndroid Build Coastguard Worker hint #127 3476*9880d681SAndroid Build Coastguard Worker// CHECK: nop // encoding: [0x1f,0x20,0x03,0xd5] 3477*9880d681SAndroid Build Coastguard Worker// CHECK: hint #{{127|0x7f}} // encoding: [0xff,0x2f,0x03,0xd5] 3478*9880d681SAndroid Build Coastguard Worker 3479*9880d681SAndroid Build Coastguard Worker nop 3480*9880d681SAndroid Build Coastguard Worker yield 3481*9880d681SAndroid Build Coastguard Worker wfe 3482*9880d681SAndroid Build Coastguard Worker wfi 3483*9880d681SAndroid Build Coastguard Worker sev 3484*9880d681SAndroid Build Coastguard Worker sevl 3485*9880d681SAndroid Build Coastguard Worker// CHECK: nop // encoding: [0x1f,0x20,0x03,0xd5] 3486*9880d681SAndroid Build Coastguard Worker// CHECK: yield // encoding: [0x3f,0x20,0x03,0xd5] 3487*9880d681SAndroid Build Coastguard Worker// CHECK: wfe // encoding: [0x5f,0x20,0x03,0xd5] 3488*9880d681SAndroid Build Coastguard Worker// CHECK: wfi // encoding: [0x7f,0x20,0x03,0xd5] 3489*9880d681SAndroid Build Coastguard Worker// CHECK: sev // encoding: [0x9f,0x20,0x03,0xd5] 3490*9880d681SAndroid Build Coastguard Worker// CHECK: sevl // encoding: [0xbf,0x20,0x03,0xd5] 3491*9880d681SAndroid Build Coastguard Worker 3492*9880d681SAndroid Build Coastguard Worker clrex 3493*9880d681SAndroid Build Coastguard Worker clrex #0 3494*9880d681SAndroid Build Coastguard Worker clrex #7 3495*9880d681SAndroid Build Coastguard Worker clrex #15 3496*9880d681SAndroid Build Coastguard Worker// CHECK: clrex // encoding: [0x5f,0x3f,0x03,0xd5] 3497*9880d681SAndroid Build Coastguard Worker// CHECK: clrex #0 // encoding: [0x5f,0x30,0x03,0xd5] 3498*9880d681SAndroid Build Coastguard Worker// CHECK: clrex #7 // encoding: [0x5f,0x37,0x03,0xd5] 3499*9880d681SAndroid Build Coastguard Worker// CHECK: clrex // encoding: [0x5f,0x3f,0x03,0xd5] 3500*9880d681SAndroid Build Coastguard Worker 3501*9880d681SAndroid Build Coastguard Worker dsb #0 3502*9880d681SAndroid Build Coastguard Worker dsb #12 3503*9880d681SAndroid Build Coastguard Worker dsb #15 3504*9880d681SAndroid Build Coastguard Worker dsb oshld 3505*9880d681SAndroid Build Coastguard Worker dsb oshst 3506*9880d681SAndroid Build Coastguard Worker dsb osh 3507*9880d681SAndroid Build Coastguard Worker dsb nshld 3508*9880d681SAndroid Build Coastguard Worker dsb nshst 3509*9880d681SAndroid Build Coastguard Worker dsb nsh 3510*9880d681SAndroid Build Coastguard Worker dsb ishld 3511*9880d681SAndroid Build Coastguard Worker dsb ishst 3512*9880d681SAndroid Build Coastguard Worker dsb ish 3513*9880d681SAndroid Build Coastguard Worker dsb ld 3514*9880d681SAndroid Build Coastguard Worker dsb st 3515*9880d681SAndroid Build Coastguard Worker dsb sy 3516*9880d681SAndroid Build Coastguard Worker// CHECK: dsb #0 // encoding: [0x9f,0x30,0x03,0xd5] 3517*9880d681SAndroid Build Coastguard Worker// CHECK: dsb #12 // encoding: [0x9f,0x3c,0x03,0xd5] 3518*9880d681SAndroid Build Coastguard Worker// CHECK: dsb sy // encoding: [0x9f,0x3f,0x03,0xd5] 3519*9880d681SAndroid Build Coastguard Worker// CHECK: dsb oshld // encoding: [0x9f,0x31,0x03,0xd5] 3520*9880d681SAndroid Build Coastguard Worker// CHECK: dsb oshst // encoding: [0x9f,0x32,0x03,0xd5] 3521*9880d681SAndroid Build Coastguard Worker// CHECK: dsb osh // encoding: [0x9f,0x33,0x03,0xd5] 3522*9880d681SAndroid Build Coastguard Worker// CHECK: dsb nshld // encoding: [0x9f,0x35,0x03,0xd5] 3523*9880d681SAndroid Build Coastguard Worker// CHECK: dsb nshst // encoding: [0x9f,0x36,0x03,0xd5] 3524*9880d681SAndroid Build Coastguard Worker// CHECK: dsb nsh // encoding: [0x9f,0x37,0x03,0xd5] 3525*9880d681SAndroid Build Coastguard Worker// CHECK: dsb ishld // encoding: [0x9f,0x39,0x03,0xd5] 3526*9880d681SAndroid Build Coastguard Worker// CHECK: dsb ishst // encoding: [0x9f,0x3a,0x03,0xd5] 3527*9880d681SAndroid Build Coastguard Worker// CHECK: dsb ish // encoding: [0x9f,0x3b,0x03,0xd5] 3528*9880d681SAndroid Build Coastguard Worker// CHECK: dsb ld // encoding: [0x9f,0x3d,0x03,0xd5] 3529*9880d681SAndroid Build Coastguard Worker// CHECK: dsb st // encoding: [0x9f,0x3e,0x03,0xd5] 3530*9880d681SAndroid Build Coastguard Worker// CHECK: dsb sy // encoding: [0x9f,0x3f,0x03,0xd5] 3531*9880d681SAndroid Build Coastguard Worker 3532*9880d681SAndroid Build Coastguard Worker dmb #0 3533*9880d681SAndroid Build Coastguard Worker dmb #12 3534*9880d681SAndroid Build Coastguard Worker dmb #15 3535*9880d681SAndroid Build Coastguard Worker dmb oshld 3536*9880d681SAndroid Build Coastguard Worker dmb oshst 3537*9880d681SAndroid Build Coastguard Worker dmb osh 3538*9880d681SAndroid Build Coastguard Worker dmb nshld 3539*9880d681SAndroid Build Coastguard Worker dmb nshst 3540*9880d681SAndroid Build Coastguard Worker dmb nsh 3541*9880d681SAndroid Build Coastguard Worker dmb ishld 3542*9880d681SAndroid Build Coastguard Worker dmb ishst 3543*9880d681SAndroid Build Coastguard Worker dmb ish 3544*9880d681SAndroid Build Coastguard Worker dmb ld 3545*9880d681SAndroid Build Coastguard Worker dmb st 3546*9880d681SAndroid Build Coastguard Worker dmb sy 3547*9880d681SAndroid Build Coastguard Worker// CHECK: dmb #0 // encoding: [0xbf,0x30,0x03,0xd5] 3548*9880d681SAndroid Build Coastguard Worker// CHECK: dmb #12 // encoding: [0xbf,0x3c,0x03,0xd5] 3549*9880d681SAndroid Build Coastguard Worker// CHECK: dmb sy // encoding: [0xbf,0x3f,0x03,0xd5] 3550*9880d681SAndroid Build Coastguard Worker// CHECK: dmb oshld // encoding: [0xbf,0x31,0x03,0xd5] 3551*9880d681SAndroid Build Coastguard Worker// CHECK: dmb oshst // encoding: [0xbf,0x32,0x03,0xd5] 3552*9880d681SAndroid Build Coastguard Worker// CHECK: dmb osh // encoding: [0xbf,0x33,0x03,0xd5] 3553*9880d681SAndroid Build Coastguard Worker// CHECK: dmb nshld // encoding: [0xbf,0x35,0x03,0xd5] 3554*9880d681SAndroid Build Coastguard Worker// CHECK: dmb nshst // encoding: [0xbf,0x36,0x03,0xd5] 3555*9880d681SAndroid Build Coastguard Worker// CHECK: dmb nsh // encoding: [0xbf,0x37,0x03,0xd5] 3556*9880d681SAndroid Build Coastguard Worker// CHECK: dmb ishld // encoding: [0xbf,0x39,0x03,0xd5] 3557*9880d681SAndroid Build Coastguard Worker// CHECK: dmb ishst // encoding: [0xbf,0x3a,0x03,0xd5] 3558*9880d681SAndroid Build Coastguard Worker// CHECK: dmb ish // encoding: [0xbf,0x3b,0x03,0xd5] 3559*9880d681SAndroid Build Coastguard Worker// CHECK: dmb ld // encoding: [0xbf,0x3d,0x03,0xd5] 3560*9880d681SAndroid Build Coastguard Worker// CHECK: dmb st // encoding: [0xbf,0x3e,0x03,0xd5] 3561*9880d681SAndroid Build Coastguard Worker// CHECK: dmb sy // encoding: [0xbf,0x3f,0x03,0xd5] 3562*9880d681SAndroid Build Coastguard Worker 3563*9880d681SAndroid Build Coastguard Worker isb sy 3564*9880d681SAndroid Build Coastguard Worker isb 3565*9880d681SAndroid Build Coastguard Worker isb #12 3566*9880d681SAndroid Build Coastguard Worker// CHECK: isb // encoding: [0xdf,0x3f,0x03,0xd5] 3567*9880d681SAndroid Build Coastguard Worker// CHECK: isb // encoding: [0xdf,0x3f,0x03,0xd5] 3568*9880d681SAndroid Build Coastguard Worker// CHECK: isb #12 // encoding: [0xdf,0x3c,0x03,0xd5] 3569*9880d681SAndroid Build Coastguard Worker 3570*9880d681SAndroid Build Coastguard Worker 3571*9880d681SAndroid Build Coastguard Worker msr spsel, #0 3572*9880d681SAndroid Build Coastguard Worker msr daifset, #15 3573*9880d681SAndroid Build Coastguard Worker msr daifclr, #12 3574*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{SPSel|SPSEL}}, #0 // encoding: [0xbf,0x40,0x00,0xd5] 3575*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{DAIFSet|DAIFSET}}, #15 // encoding: [0xdf,0x4f,0x03,0xd5] 3576*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{DAIFClr|DAIFCLR}}, #12 // encoding: [0xff,0x4c,0x03,0xd5] 3577*9880d681SAndroid Build Coastguard Worker 3578*9880d681SAndroid Build Coastguard Worker sys #7, c5, c9, #7, x5 3579*9880d681SAndroid Build Coastguard Worker sys #0, c15, c15, #2 3580*9880d681SAndroid Build Coastguard Worker// CHECK: sys #7, c5, c9, #7, x5 // encoding: [0xe5,0x59,0x0f,0xd5] 3581*9880d681SAndroid Build Coastguard Worker// CHECK: sys #0, c15, c15, #2 // encoding: [0x5f,0xff,0x08,0xd5] 3582*9880d681SAndroid Build Coastguard Worker 3583*9880d681SAndroid Build Coastguard Worker sysl x9, #7, c5, c9, #7 3584*9880d681SAndroid Build Coastguard Worker sysl x1, #0, c15, c15, #2 3585*9880d681SAndroid Build Coastguard Worker// CHECK: sysl x9, #7, c5, c9, #7 // encoding: [0xe9,0x59,0x2f,0xd5] 3586*9880d681SAndroid Build Coastguard Worker// CHECK: sysl x1, #0, c15, c15, #2 // encoding: [0x41,0xff,0x28,0xd5] 3587*9880d681SAndroid Build Coastguard Worker 3588*9880d681SAndroid Build Coastguard Worker ic ialluis 3589*9880d681SAndroid Build Coastguard Worker ic iallu 3590*9880d681SAndroid Build Coastguard Worker ic ivau, x9 3591*9880d681SAndroid Build Coastguard Worker// CHECK: ic ialluis // encoding: [0x1f,0x71,0x08,0xd5] 3592*9880d681SAndroid Build Coastguard Worker// CHECK: ic iallu // encoding: [0x1f,0x75,0x08,0xd5] 3593*9880d681SAndroid Build Coastguard Worker// CHECK: ic ivau, x9 // encoding: [0x29,0x75,0x0b,0xd5] 3594*9880d681SAndroid Build Coastguard Worker 3595*9880d681SAndroid Build Coastguard Worker dc zva, x12 3596*9880d681SAndroid Build Coastguard Worker dc ivac, xzr 3597*9880d681SAndroid Build Coastguard Worker dc isw, x2 3598*9880d681SAndroid Build Coastguard Worker dc cvac, x9 3599*9880d681SAndroid Build Coastguard Worker dc csw, x10 3600*9880d681SAndroid Build Coastguard Worker dc cvau, x0 3601*9880d681SAndroid Build Coastguard Worker dc civac, x3 3602*9880d681SAndroid Build Coastguard Worker dc cisw, x30 3603*9880d681SAndroid Build Coastguard Worker// CHECK: dc zva, x12 // encoding: [0x2c,0x74,0x0b,0xd5] 3604*9880d681SAndroid Build Coastguard Worker// CHECK: dc ivac, xzr // encoding: [0x3f,0x76,0x08,0xd5] 3605*9880d681SAndroid Build Coastguard Worker// CHECK: dc isw, x2 // encoding: [0x42,0x76,0x08,0xd5] 3606*9880d681SAndroid Build Coastguard Worker// CHECK: dc cvac, x9 // encoding: [0x29,0x7a,0x0b,0xd5] 3607*9880d681SAndroid Build Coastguard Worker// CHECK: dc csw, x10 // encoding: [0x4a,0x7a,0x08,0xd5] 3608*9880d681SAndroid Build Coastguard Worker// CHECK: dc cvau, x0 // encoding: [0x20,0x7b,0x0b,0xd5] 3609*9880d681SAndroid Build Coastguard Worker// CHECK: dc civac, x3 // encoding: [0x23,0x7e,0x0b,0xd5] 3610*9880d681SAndroid Build Coastguard Worker// CHECK: dc cisw, x30 // encoding: [0x5e,0x7e,0x08,0xd5] 3611*9880d681SAndroid Build Coastguard Worker 3612*9880d681SAndroid Build Coastguard Worker at S1E1R, x19 3613*9880d681SAndroid Build Coastguard Worker at S1E2R, x19 3614*9880d681SAndroid Build Coastguard Worker at S1E3R, x19 3615*9880d681SAndroid Build Coastguard Worker at S1E1W, x19 3616*9880d681SAndroid Build Coastguard Worker at S1E2W, x19 3617*9880d681SAndroid Build Coastguard Worker at S1E3W, x19 3618*9880d681SAndroid Build Coastguard Worker at S1E0R, x19 3619*9880d681SAndroid Build Coastguard Worker at S1E0W, x19 3620*9880d681SAndroid Build Coastguard Worker at S12E1R, x20 3621*9880d681SAndroid Build Coastguard Worker at S12E1W, x20 3622*9880d681SAndroid Build Coastguard Worker at S12E0R, x20 3623*9880d681SAndroid Build Coastguard Worker at S12E0W, x20 3624*9880d681SAndroid Build Coastguard Worker// CHECK: at s1e1r, x19 // encoding: [0x13,0x78,0x08,0xd5] 3625*9880d681SAndroid Build Coastguard Worker// CHECK: at s1e2r, x19 // encoding: [0x13,0x78,0x0c,0xd5] 3626*9880d681SAndroid Build Coastguard Worker// CHECK: at s1e3r, x19 // encoding: [0x13,0x78,0x0e,0xd5] 3627*9880d681SAndroid Build Coastguard Worker// CHECK: at s1e1w, x19 // encoding: [0x33,0x78,0x08,0xd5] 3628*9880d681SAndroid Build Coastguard Worker// CHECK: at s1e2w, x19 // encoding: [0x33,0x78,0x0c,0xd5] 3629*9880d681SAndroid Build Coastguard Worker// CHECK: at s1e3w, x19 // encoding: [0x33,0x78,0x0e,0xd5] 3630*9880d681SAndroid Build Coastguard Worker// CHECK: at s1e0r, x19 // encoding: [0x53,0x78,0x08,0xd5] 3631*9880d681SAndroid Build Coastguard Worker// CHECK: at s1e0w, x19 // encoding: [0x73,0x78,0x08,0xd5] 3632*9880d681SAndroid Build Coastguard Worker// CHECK: at s12e1r, x20 // encoding: [0x94,0x78,0x0c,0xd5] 3633*9880d681SAndroid Build Coastguard Worker// CHECK: at s12e1w, x20 // encoding: [0xb4,0x78,0x0c,0xd5] 3634*9880d681SAndroid Build Coastguard Worker// CHECK: at s12e0r, x20 // encoding: [0xd4,0x78,0x0c,0xd5] 3635*9880d681SAndroid Build Coastguard Worker// CHECK: at s12e0w, x20 // encoding: [0xf4,0x78,0x0c,0xd5] 3636*9880d681SAndroid Build Coastguard Worker 3637*9880d681SAndroid Build Coastguard Worker tlbi IPAS2E1IS, x4 3638*9880d681SAndroid Build Coastguard Worker tlbi IPAS2LE1IS, x9 3639*9880d681SAndroid Build Coastguard Worker tlbi VMALLE1IS 3640*9880d681SAndroid Build Coastguard Worker tlbi ALLE2IS 3641*9880d681SAndroid Build Coastguard Worker tlbi ALLE3IS 3642*9880d681SAndroid Build Coastguard Worker tlbi VAE1IS, x1 3643*9880d681SAndroid Build Coastguard Worker tlbi VAE2IS, x2 3644*9880d681SAndroid Build Coastguard Worker tlbi VAE3IS, x3 3645*9880d681SAndroid Build Coastguard Worker tlbi ASIDE1IS, x5 3646*9880d681SAndroid Build Coastguard Worker tlbi VAAE1IS, x9 3647*9880d681SAndroid Build Coastguard Worker tlbi ALLE1IS 3648*9880d681SAndroid Build Coastguard Worker tlbi VALE1IS, x10 3649*9880d681SAndroid Build Coastguard Worker tlbi VALE2IS, x11 3650*9880d681SAndroid Build Coastguard Worker tlbi VALE3IS, x13 3651*9880d681SAndroid Build Coastguard Worker tlbi VMALLS12E1IS 3652*9880d681SAndroid Build Coastguard Worker tlbi VAALE1IS, x14 3653*9880d681SAndroid Build Coastguard Worker tlbi IPAS2E1, x15 3654*9880d681SAndroid Build Coastguard Worker tlbi IPAS2LE1, x16 3655*9880d681SAndroid Build Coastguard Worker tlbi VMALLE1 3656*9880d681SAndroid Build Coastguard Worker tlbi ALLE2 3657*9880d681SAndroid Build Coastguard Worker tlbi ALLE3 3658*9880d681SAndroid Build Coastguard Worker tlbi VAE1, x17 3659*9880d681SAndroid Build Coastguard Worker tlbi VAE2, x18 3660*9880d681SAndroid Build Coastguard Worker tlbi VAE3, x19 3661*9880d681SAndroid Build Coastguard Worker tlbi ASIDE1, x20 3662*9880d681SAndroid Build Coastguard Worker tlbi VAAE1, x21 3663*9880d681SAndroid Build Coastguard Worker tlbi ALLE1 3664*9880d681SAndroid Build Coastguard Worker tlbi VALE1, x22 3665*9880d681SAndroid Build Coastguard Worker tlbi VALE2, x23 3666*9880d681SAndroid Build Coastguard Worker tlbi VALE3, x24 3667*9880d681SAndroid Build Coastguard Worker tlbi VMALLS12E1 3668*9880d681SAndroid Build Coastguard Worker tlbi VAALE1, x25 3669*9880d681SAndroid Build Coastguard Worker// CHECK: tlbi ipas2e1is, x4 // encoding: [0x24,0x80,0x0c,0xd5] 3670*9880d681SAndroid Build Coastguard Worker// CHECK: tlbi ipas2le1is, x9 // encoding: [0xa9,0x80,0x0c,0xd5] 3671*9880d681SAndroid Build Coastguard Worker// CHECK: tlbi vmalle1is // encoding: [0x1f,0x83,0x08,0xd5] 3672*9880d681SAndroid Build Coastguard Worker// CHECK: tlbi alle2is // encoding: [0x1f,0x83,0x0c,0xd5] 3673*9880d681SAndroid Build Coastguard Worker// CHECK: tlbi alle3is // encoding: [0x1f,0x83,0x0e,0xd5] 3674*9880d681SAndroid Build Coastguard Worker// CHECK: tlbi vae1is, x1 // encoding: [0x21,0x83,0x08,0xd5] 3675*9880d681SAndroid Build Coastguard Worker// CHECK: tlbi vae2is, x2 // encoding: [0x22,0x83,0x0c,0xd5] 3676*9880d681SAndroid Build Coastguard Worker// CHECK: tlbi vae3is, x3 // encoding: [0x23,0x83,0x0e,0xd5] 3677*9880d681SAndroid Build Coastguard Worker// CHECK: tlbi aside1is, x5 // encoding: [0x45,0x83,0x08,0xd5] 3678*9880d681SAndroid Build Coastguard Worker// CHECK: tlbi vaae1is, x9 // encoding: [0x69,0x83,0x08,0xd5] 3679*9880d681SAndroid Build Coastguard Worker// CHECK: tlbi alle1is // encoding: [0x9f,0x83,0x0c,0xd5] 3680*9880d681SAndroid Build Coastguard Worker// CHECK: tlbi vale1is, x10 // encoding: [0xaa,0x83,0x08,0xd5] 3681*9880d681SAndroid Build Coastguard Worker// CHECK: tlbi vale2is, x11 // encoding: [0xab,0x83,0x0c,0xd5] 3682*9880d681SAndroid Build Coastguard Worker// CHECK: tlbi vale3is, x13 // encoding: [0xad,0x83,0x0e,0xd5] 3683*9880d681SAndroid Build Coastguard Worker// CHECK: tlbi vmalls12e1is // encoding: [0xdf,0x83,0x0c,0xd5] 3684*9880d681SAndroid Build Coastguard Worker// CHECK: tlbi vaale1is, x14 // encoding: [0xee,0x83,0x08,0xd5] 3685*9880d681SAndroid Build Coastguard Worker// CHECK: tlbi ipas2e1, x15 // encoding: [0x2f,0x84,0x0c,0xd5] 3686*9880d681SAndroid Build Coastguard Worker// CHECK: tlbi ipas2le1, x16 // encoding: [0xb0,0x84,0x0c,0xd5] 3687*9880d681SAndroid Build Coastguard Worker// CHECK: tlbi vmalle1 // encoding: [0x1f,0x87,0x08,0xd5] 3688*9880d681SAndroid Build Coastguard Worker// CHECK: tlbi alle2 // encoding: [0x1f,0x87,0x0c,0xd5] 3689*9880d681SAndroid Build Coastguard Worker// CHECK: tlbi alle3 // encoding: [0x1f,0x87,0x0e,0xd5] 3690*9880d681SAndroid Build Coastguard Worker// CHECK: tlbi vae1, x17 // encoding: [0x31,0x87,0x08,0xd5] 3691*9880d681SAndroid Build Coastguard Worker// CHECK: tlbi vae2, x18 // encoding: [0x32,0x87,0x0c,0xd5] 3692*9880d681SAndroid Build Coastguard Worker// CHECK: tlbi vae3, x19 // encoding: [0x33,0x87,0x0e,0xd5] 3693*9880d681SAndroid Build Coastguard Worker// CHECK: tlbi aside1, x20 // encoding: [0x54,0x87,0x08,0xd5] 3694*9880d681SAndroid Build Coastguard Worker// CHECK: tlbi vaae1, x21 // encoding: [0x75,0x87,0x08,0xd5] 3695*9880d681SAndroid Build Coastguard Worker// CHECK: tlbi alle1 // encoding: [0x9f,0x87,0x0c,0xd5] 3696*9880d681SAndroid Build Coastguard Worker// CHECK: tlbi vale1, x22 // encoding: [0xb6,0x87,0x08,0xd5] 3697*9880d681SAndroid Build Coastguard Worker// CHECK: tlbi vale2, x23 // encoding: [0xb7,0x87,0x0c,0xd5] 3698*9880d681SAndroid Build Coastguard Worker// CHECK: tlbi vale3, x24 // encoding: [0xb8,0x87,0x0e,0xd5] 3699*9880d681SAndroid Build Coastguard Worker// CHECK: tlbi vmalls12e1 // encoding: [0xdf,0x87,0x0c,0xd5] 3700*9880d681SAndroid Build Coastguard Worker// CHECK: tlbi vaale1, x25 // encoding: [0xf9,0x87,0x08,0xd5] 3701*9880d681SAndroid Build Coastguard Worker 3702*9880d681SAndroid Build Coastguard Worker msr TEECR32_EL1, x12 3703*9880d681SAndroid Build Coastguard Worker msr OSDTRRX_EL1, x12 3704*9880d681SAndroid Build Coastguard Worker msr MDCCINT_EL1, x12 3705*9880d681SAndroid Build Coastguard Worker msr MDSCR_EL1, x12 3706*9880d681SAndroid Build Coastguard Worker msr OSDTRTX_EL1, x12 3707*9880d681SAndroid Build Coastguard Worker msr DBGDTR_EL0, x12 3708*9880d681SAndroid Build Coastguard Worker msr DBGDTRTX_EL0, x12 3709*9880d681SAndroid Build Coastguard Worker msr OSECCR_EL1, x12 3710*9880d681SAndroid Build Coastguard Worker msr DBGVCR32_EL2, x12 3711*9880d681SAndroid Build Coastguard Worker msr DBGBVR0_EL1, x12 3712*9880d681SAndroid Build Coastguard Worker msr DBGBVR1_EL1, x12 3713*9880d681SAndroid Build Coastguard Worker msr DBGBVR2_EL1, x12 3714*9880d681SAndroid Build Coastguard Worker msr DBGBVR3_EL1, x12 3715*9880d681SAndroid Build Coastguard Worker msr DBGBVR4_EL1, x12 3716*9880d681SAndroid Build Coastguard Worker msr DBGBVR5_EL1, x12 3717*9880d681SAndroid Build Coastguard Worker msr DBGBVR6_EL1, x12 3718*9880d681SAndroid Build Coastguard Worker msr DBGBVR7_EL1, x12 3719*9880d681SAndroid Build Coastguard Worker msr DBGBVR8_EL1, x12 3720*9880d681SAndroid Build Coastguard Worker msr DBGBVR9_EL1, x12 3721*9880d681SAndroid Build Coastguard Worker msr DBGBVR10_EL1, x12 3722*9880d681SAndroid Build Coastguard Worker msr DBGBVR11_EL1, x12 3723*9880d681SAndroid Build Coastguard Worker msr DBGBVR12_EL1, x12 3724*9880d681SAndroid Build Coastguard Worker msr DBGBVR13_EL1, x12 3725*9880d681SAndroid Build Coastguard Worker msr DBGBVR14_EL1, x12 3726*9880d681SAndroid Build Coastguard Worker msr DBGBVR15_EL1, x12 3727*9880d681SAndroid Build Coastguard Worker msr DBGBCR0_EL1, x12 3728*9880d681SAndroid Build Coastguard Worker msr DBGBCR1_EL1, x12 3729*9880d681SAndroid Build Coastguard Worker msr DBGBCR2_EL1, x12 3730*9880d681SAndroid Build Coastguard Worker msr DBGBCR3_EL1, x12 3731*9880d681SAndroid Build Coastguard Worker msr DBGBCR4_EL1, x12 3732*9880d681SAndroid Build Coastguard Worker msr DBGBCR5_EL1, x12 3733*9880d681SAndroid Build Coastguard Worker msr DBGBCR6_EL1, x12 3734*9880d681SAndroid Build Coastguard Worker msr DBGBCR7_EL1, x12 3735*9880d681SAndroid Build Coastguard Worker msr DBGBCR8_EL1, x12 3736*9880d681SAndroid Build Coastguard Worker msr DBGBCR9_EL1, x12 3737*9880d681SAndroid Build Coastguard Worker msr DBGBCR10_EL1, x12 3738*9880d681SAndroid Build Coastguard Worker msr DBGBCR11_EL1, x12 3739*9880d681SAndroid Build Coastguard Worker msr DBGBCR12_EL1, x12 3740*9880d681SAndroid Build Coastguard Worker msr DBGBCR13_EL1, x12 3741*9880d681SAndroid Build Coastguard Worker msr DBGBCR14_EL1, x12 3742*9880d681SAndroid Build Coastguard Worker msr DBGBCR15_EL1, x12 3743*9880d681SAndroid Build Coastguard Worker msr DBGWVR0_EL1, x12 3744*9880d681SAndroid Build Coastguard Worker msr DBGWVR1_EL1, x12 3745*9880d681SAndroid Build Coastguard Worker msr DBGWVR2_EL1, x12 3746*9880d681SAndroid Build Coastguard Worker msr DBGWVR3_EL1, x12 3747*9880d681SAndroid Build Coastguard Worker msr DBGWVR4_EL1, x12 3748*9880d681SAndroid Build Coastguard Worker msr DBGWVR5_EL1, x12 3749*9880d681SAndroid Build Coastguard Worker msr DBGWVR6_EL1, x12 3750*9880d681SAndroid Build Coastguard Worker msr DBGWVR7_EL1, x12 3751*9880d681SAndroid Build Coastguard Worker msr DBGWVR8_EL1, x12 3752*9880d681SAndroid Build Coastguard Worker msr DBGWVR9_EL1, x12 3753*9880d681SAndroid Build Coastguard Worker msr DBGWVR10_EL1, x12 3754*9880d681SAndroid Build Coastguard Worker msr DBGWVR11_EL1, x12 3755*9880d681SAndroid Build Coastguard Worker msr DBGWVR12_EL1, x12 3756*9880d681SAndroid Build Coastguard Worker msr DBGWVR13_EL1, x12 3757*9880d681SAndroid Build Coastguard Worker msr DBGWVR14_EL1, x12 3758*9880d681SAndroid Build Coastguard Worker msr DBGWVR15_EL1, x12 3759*9880d681SAndroid Build Coastguard Worker msr DBGWCR0_EL1, x12 3760*9880d681SAndroid Build Coastguard Worker msr DBGWCR1_EL1, x12 3761*9880d681SAndroid Build Coastguard Worker msr DBGWCR2_EL1, x12 3762*9880d681SAndroid Build Coastguard Worker msr DBGWCR3_EL1, x12 3763*9880d681SAndroid Build Coastguard Worker msr DBGWCR4_EL1, x12 3764*9880d681SAndroid Build Coastguard Worker msr DBGWCR5_EL1, x12 3765*9880d681SAndroid Build Coastguard Worker msr DBGWCR6_EL1, x12 3766*9880d681SAndroid Build Coastguard Worker msr DBGWCR7_EL1, x12 3767*9880d681SAndroid Build Coastguard Worker msr DBGWCR8_EL1, x12 3768*9880d681SAndroid Build Coastguard Worker msr DBGWCR9_EL1, x12 3769*9880d681SAndroid Build Coastguard Worker msr DBGWCR10_EL1, x12 3770*9880d681SAndroid Build Coastguard Worker msr DBGWCR11_EL1, x12 3771*9880d681SAndroid Build Coastguard Worker msr DBGWCR12_EL1, x12 3772*9880d681SAndroid Build Coastguard Worker msr DBGWCR13_EL1, x12 3773*9880d681SAndroid Build Coastguard Worker msr DBGWCR14_EL1, x12 3774*9880d681SAndroid Build Coastguard Worker msr DBGWCR15_EL1, x12 3775*9880d681SAndroid Build Coastguard Worker msr TEEHBR32_EL1, x12 3776*9880d681SAndroid Build Coastguard Worker msr OSLAR_EL1, x12 3777*9880d681SAndroid Build Coastguard Worker msr OSDLR_EL1, x12 3778*9880d681SAndroid Build Coastguard Worker msr DBGPRCR_EL1, x12 3779*9880d681SAndroid Build Coastguard Worker msr DBGCLAIMSET_EL1, x12 3780*9880d681SAndroid Build Coastguard Worker msr DBGCLAIMCLR_EL1, x12 3781*9880d681SAndroid Build Coastguard Worker msr CSSELR_EL1, x12 3782*9880d681SAndroid Build Coastguard Worker msr VPIDR_EL2, x12 3783*9880d681SAndroid Build Coastguard Worker msr VMPIDR_EL2, x12 3784*9880d681SAndroid Build Coastguard Worker msr SCTLR_EL1, x12 3785*9880d681SAndroid Build Coastguard Worker msr SCTLR_EL2, x12 3786*9880d681SAndroid Build Coastguard Worker msr SCTLR_EL3, x12 3787*9880d681SAndroid Build Coastguard Worker msr ACTLR_EL1, x12 3788*9880d681SAndroid Build Coastguard Worker msr ACTLR_EL2, x12 3789*9880d681SAndroid Build Coastguard Worker msr ACTLR_EL3, x12 3790*9880d681SAndroid Build Coastguard Worker msr CPACR_EL1, x12 3791*9880d681SAndroid Build Coastguard Worker msr HCR_EL2, x12 3792*9880d681SAndroid Build Coastguard Worker msr SCR_EL3, x12 3793*9880d681SAndroid Build Coastguard Worker msr MDCR_EL2, x12 3794*9880d681SAndroid Build Coastguard Worker msr SDER32_EL3, x12 3795*9880d681SAndroid Build Coastguard Worker msr CPTR_EL2, x12 3796*9880d681SAndroid Build Coastguard Worker msr CPTR_EL3, x12 3797*9880d681SAndroid Build Coastguard Worker msr HSTR_EL2, x12 3798*9880d681SAndroid Build Coastguard Worker msr HACR_EL2, x12 3799*9880d681SAndroid Build Coastguard Worker msr MDCR_EL3, x12 3800*9880d681SAndroid Build Coastguard Worker msr TTBR0_EL1, x12 3801*9880d681SAndroid Build Coastguard Worker msr TTBR0_EL2, x12 3802*9880d681SAndroid Build Coastguard Worker msr TTBR0_EL3, x12 3803*9880d681SAndroid Build Coastguard Worker msr TTBR1_EL1, x12 3804*9880d681SAndroid Build Coastguard Worker msr TCR_EL1, x12 3805*9880d681SAndroid Build Coastguard Worker msr TCR_EL2, x12 3806*9880d681SAndroid Build Coastguard Worker msr TCR_EL3, x12 3807*9880d681SAndroid Build Coastguard Worker msr VTTBR_EL2, x12 3808*9880d681SAndroid Build Coastguard Worker msr VTCR_EL2, x12 3809*9880d681SAndroid Build Coastguard Worker msr DACR32_EL2, x12 3810*9880d681SAndroid Build Coastguard Worker msr SPSR_EL1, x12 3811*9880d681SAndroid Build Coastguard Worker msr SPSR_EL2, x12 3812*9880d681SAndroid Build Coastguard Worker msr SPSR_EL3, x12 3813*9880d681SAndroid Build Coastguard Worker msr ELR_EL1, x12 3814*9880d681SAndroid Build Coastguard Worker msr ELR_EL2, x12 3815*9880d681SAndroid Build Coastguard Worker msr ELR_EL3, x12 3816*9880d681SAndroid Build Coastguard Worker msr SP_EL0, x12 3817*9880d681SAndroid Build Coastguard Worker msr SP_EL1, x12 3818*9880d681SAndroid Build Coastguard Worker msr SP_EL2, x12 3819*9880d681SAndroid Build Coastguard Worker msr SPSel, x12 3820*9880d681SAndroid Build Coastguard Worker msr NZCV, x12 3821*9880d681SAndroid Build Coastguard Worker msr DAIF, x12 3822*9880d681SAndroid Build Coastguard Worker msr CurrentEL, x12 3823*9880d681SAndroid Build Coastguard Worker msr SPSR_irq, x12 3824*9880d681SAndroid Build Coastguard Worker msr SPSR_abt, x12 3825*9880d681SAndroid Build Coastguard Worker msr SPSR_und, x12 3826*9880d681SAndroid Build Coastguard Worker msr SPSR_fiq, x12 3827*9880d681SAndroid Build Coastguard Worker msr FPCR, x12 3828*9880d681SAndroid Build Coastguard Worker msr FPSR, x12 3829*9880d681SAndroid Build Coastguard Worker msr DSPSR_EL0, x12 3830*9880d681SAndroid Build Coastguard Worker msr DLR_EL0, x12 3831*9880d681SAndroid Build Coastguard Worker msr IFSR32_EL2, x12 3832*9880d681SAndroid Build Coastguard Worker msr AFSR0_EL1, x12 3833*9880d681SAndroid Build Coastguard Worker msr AFSR0_EL2, x12 3834*9880d681SAndroid Build Coastguard Worker msr AFSR0_EL3, x12 3835*9880d681SAndroid Build Coastguard Worker msr AFSR1_EL1, x12 3836*9880d681SAndroid Build Coastguard Worker msr AFSR1_EL2, x12 3837*9880d681SAndroid Build Coastguard Worker msr AFSR1_EL3, x12 3838*9880d681SAndroid Build Coastguard Worker msr ESR_EL1, x12 3839*9880d681SAndroid Build Coastguard Worker msr ESR_EL2, x12 3840*9880d681SAndroid Build Coastguard Worker msr ESR_EL3, x12 3841*9880d681SAndroid Build Coastguard Worker msr FPEXC32_EL2, x12 3842*9880d681SAndroid Build Coastguard Worker msr FAR_EL1, x12 3843*9880d681SAndroid Build Coastguard Worker msr FAR_EL2, x12 3844*9880d681SAndroid Build Coastguard Worker msr FAR_EL3, x12 3845*9880d681SAndroid Build Coastguard Worker msr HPFAR_EL2, x12 3846*9880d681SAndroid Build Coastguard Worker msr PAR_EL1, x12 3847*9880d681SAndroid Build Coastguard Worker msr PMCR_EL0, x12 3848*9880d681SAndroid Build Coastguard Worker msr PMCNTENSET_EL0, x12 3849*9880d681SAndroid Build Coastguard Worker msr PMCNTENCLR_EL0, x12 3850*9880d681SAndroid Build Coastguard Worker msr PMOVSCLR_EL0, x12 3851*9880d681SAndroid Build Coastguard Worker msr PMSELR_EL0, x12 3852*9880d681SAndroid Build Coastguard Worker msr PMCCNTR_EL0, x12 3853*9880d681SAndroid Build Coastguard Worker msr PMXEVTYPER_EL0, x12 3854*9880d681SAndroid Build Coastguard Worker msr PMXEVCNTR_EL0, x12 3855*9880d681SAndroid Build Coastguard Worker msr PMUSERENR_EL0, x12 3856*9880d681SAndroid Build Coastguard Worker msr PMINTENSET_EL1, x12 3857*9880d681SAndroid Build Coastguard Worker msr PMINTENCLR_EL1, x12 3858*9880d681SAndroid Build Coastguard Worker msr PMOVSSET_EL0, x12 3859*9880d681SAndroid Build Coastguard Worker msr MAIR_EL1, x12 3860*9880d681SAndroid Build Coastguard Worker msr MAIR_EL2, x12 3861*9880d681SAndroid Build Coastguard Worker msr MAIR_EL3, x12 3862*9880d681SAndroid Build Coastguard Worker msr AMAIR_EL1, x12 3863*9880d681SAndroid Build Coastguard Worker msr AMAIR_EL2, x12 3864*9880d681SAndroid Build Coastguard Worker msr AMAIR_EL3, x12 3865*9880d681SAndroid Build Coastguard Worker msr VBAR_EL1, x12 3866*9880d681SAndroid Build Coastguard Worker msr VBAR_EL2, x12 3867*9880d681SAndroid Build Coastguard Worker msr VBAR_EL3, x12 3868*9880d681SAndroid Build Coastguard Worker msr RMR_EL1, x12 3869*9880d681SAndroid Build Coastguard Worker msr RMR_EL2, x12 3870*9880d681SAndroid Build Coastguard Worker msr RMR_EL3, x12 3871*9880d681SAndroid Build Coastguard Worker msr CONTEXTIDR_EL1, x12 3872*9880d681SAndroid Build Coastguard Worker msr TPIDR_EL0, x12 3873*9880d681SAndroid Build Coastguard Worker msr TPIDR_EL2, x12 3874*9880d681SAndroid Build Coastguard Worker msr TPIDR_EL3, x12 3875*9880d681SAndroid Build Coastguard Worker msr TPIDRRO_EL0, x12 3876*9880d681SAndroid Build Coastguard Worker msr TPIDR_EL1, x12 3877*9880d681SAndroid Build Coastguard Worker msr CNTFRQ_EL0, x12 3878*9880d681SAndroid Build Coastguard Worker msr CNTVOFF_EL2, x12 3879*9880d681SAndroid Build Coastguard Worker msr CNTKCTL_EL1, x12 3880*9880d681SAndroid Build Coastguard Worker msr CNTHCTL_EL2, x12 3881*9880d681SAndroid Build Coastguard Worker msr CNTP_TVAL_EL0, x12 3882*9880d681SAndroid Build Coastguard Worker msr CNTHP_TVAL_EL2, x12 3883*9880d681SAndroid Build Coastguard Worker msr CNTPS_TVAL_EL1, x12 3884*9880d681SAndroid Build Coastguard Worker msr CNTP_CTL_EL0, x12 3885*9880d681SAndroid Build Coastguard Worker msr CNTHP_CTL_EL2, x12 3886*9880d681SAndroid Build Coastguard Worker msr CNTPS_CTL_EL1, x12 3887*9880d681SAndroid Build Coastguard Worker msr CNTP_CVAL_EL0, x12 3888*9880d681SAndroid Build Coastguard Worker msr CNTHP_CVAL_EL2, x12 3889*9880d681SAndroid Build Coastguard Worker msr CNTPS_CVAL_EL1, x12 3890*9880d681SAndroid Build Coastguard Worker msr CNTV_TVAL_EL0, x12 3891*9880d681SAndroid Build Coastguard Worker msr CNTV_CTL_EL0, x12 3892*9880d681SAndroid Build Coastguard Worker msr CNTV_CVAL_EL0, x12 3893*9880d681SAndroid Build Coastguard Worker msr PMEVCNTR0_EL0, x12 3894*9880d681SAndroid Build Coastguard Worker msr PMEVCNTR1_EL0, x12 3895*9880d681SAndroid Build Coastguard Worker msr PMEVCNTR2_EL0, x12 3896*9880d681SAndroid Build Coastguard Worker msr PMEVCNTR3_EL0, x12 3897*9880d681SAndroid Build Coastguard Worker msr PMEVCNTR4_EL0, x12 3898*9880d681SAndroid Build Coastguard Worker msr PMEVCNTR5_EL0, x12 3899*9880d681SAndroid Build Coastguard Worker msr PMEVCNTR6_EL0, x12 3900*9880d681SAndroid Build Coastguard Worker msr PMEVCNTR7_EL0, x12 3901*9880d681SAndroid Build Coastguard Worker msr PMEVCNTR8_EL0, x12 3902*9880d681SAndroid Build Coastguard Worker msr PMEVCNTR9_EL0, x12 3903*9880d681SAndroid Build Coastguard Worker msr PMEVCNTR10_EL0, x12 3904*9880d681SAndroid Build Coastguard Worker msr PMEVCNTR11_EL0, x12 3905*9880d681SAndroid Build Coastguard Worker msr PMEVCNTR12_EL0, x12 3906*9880d681SAndroid Build Coastguard Worker msr PMEVCNTR13_EL0, x12 3907*9880d681SAndroid Build Coastguard Worker msr PMEVCNTR14_EL0, x12 3908*9880d681SAndroid Build Coastguard Worker msr PMEVCNTR15_EL0, x12 3909*9880d681SAndroid Build Coastguard Worker msr PMEVCNTR16_EL0, x12 3910*9880d681SAndroid Build Coastguard Worker msr PMEVCNTR17_EL0, x12 3911*9880d681SAndroid Build Coastguard Worker msr PMEVCNTR18_EL0, x12 3912*9880d681SAndroid Build Coastguard Worker msr PMEVCNTR19_EL0, x12 3913*9880d681SAndroid Build Coastguard Worker msr PMEVCNTR20_EL0, x12 3914*9880d681SAndroid Build Coastguard Worker msr PMEVCNTR21_EL0, x12 3915*9880d681SAndroid Build Coastguard Worker msr PMEVCNTR22_EL0, x12 3916*9880d681SAndroid Build Coastguard Worker msr PMEVCNTR23_EL0, x12 3917*9880d681SAndroid Build Coastguard Worker msr PMEVCNTR24_EL0, x12 3918*9880d681SAndroid Build Coastguard Worker msr PMEVCNTR25_EL0, x12 3919*9880d681SAndroid Build Coastguard Worker msr PMEVCNTR26_EL0, x12 3920*9880d681SAndroid Build Coastguard Worker msr PMEVCNTR27_EL0, x12 3921*9880d681SAndroid Build Coastguard Worker msr PMEVCNTR28_EL0, x12 3922*9880d681SAndroid Build Coastguard Worker msr PMEVCNTR29_EL0, x12 3923*9880d681SAndroid Build Coastguard Worker msr PMEVCNTR30_EL0, x12 3924*9880d681SAndroid Build Coastguard Worker msr PMCCFILTR_EL0, x12 3925*9880d681SAndroid Build Coastguard Worker msr PMEVTYPER0_EL0, x12 3926*9880d681SAndroid Build Coastguard Worker msr PMEVTYPER1_EL0, x12 3927*9880d681SAndroid Build Coastguard Worker msr PMEVTYPER2_EL0, x12 3928*9880d681SAndroid Build Coastguard Worker msr PMEVTYPER3_EL0, x12 3929*9880d681SAndroid Build Coastguard Worker msr PMEVTYPER4_EL0, x12 3930*9880d681SAndroid Build Coastguard Worker msr PMEVTYPER5_EL0, x12 3931*9880d681SAndroid Build Coastguard Worker msr PMEVTYPER6_EL0, x12 3932*9880d681SAndroid Build Coastguard Worker msr PMEVTYPER7_EL0, x12 3933*9880d681SAndroid Build Coastguard Worker msr PMEVTYPER8_EL0, x12 3934*9880d681SAndroid Build Coastguard Worker msr PMEVTYPER9_EL0, x12 3935*9880d681SAndroid Build Coastguard Worker msr PMEVTYPER10_EL0, x12 3936*9880d681SAndroid Build Coastguard Worker msr PMEVTYPER11_EL0, x12 3937*9880d681SAndroid Build Coastguard Worker msr PMEVTYPER12_EL0, x12 3938*9880d681SAndroid Build Coastguard Worker msr PMEVTYPER13_EL0, x12 3939*9880d681SAndroid Build Coastguard Worker msr PMEVTYPER14_EL0, x12 3940*9880d681SAndroid Build Coastguard Worker msr PMEVTYPER15_EL0, x12 3941*9880d681SAndroid Build Coastguard Worker msr PMEVTYPER16_EL0, x12 3942*9880d681SAndroid Build Coastguard Worker msr PMEVTYPER17_EL0, x12 3943*9880d681SAndroid Build Coastguard Worker msr PMEVTYPER18_EL0, x12 3944*9880d681SAndroid Build Coastguard Worker msr PMEVTYPER19_EL0, x12 3945*9880d681SAndroid Build Coastguard Worker msr PMEVTYPER20_EL0, x12 3946*9880d681SAndroid Build Coastguard Worker msr PMEVTYPER21_EL0, x12 3947*9880d681SAndroid Build Coastguard Worker msr PMEVTYPER22_EL0, x12 3948*9880d681SAndroid Build Coastguard Worker msr PMEVTYPER23_EL0, x12 3949*9880d681SAndroid Build Coastguard Worker msr PMEVTYPER24_EL0, x12 3950*9880d681SAndroid Build Coastguard Worker msr PMEVTYPER25_EL0, x12 3951*9880d681SAndroid Build Coastguard Worker msr PMEVTYPER26_EL0, x12 3952*9880d681SAndroid Build Coastguard Worker msr PMEVTYPER27_EL0, x12 3953*9880d681SAndroid Build Coastguard Worker msr PMEVTYPER28_EL0, x12 3954*9880d681SAndroid Build Coastguard Worker msr PMEVTYPER29_EL0, x12 3955*9880d681SAndroid Build Coastguard Worker msr PMEVTYPER30_EL0, x12 3956*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{teecr32_el1|TEECR32_EL1}}, x12 // encoding: [0x0c,0x00,0x12,0xd5] 3957*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{osdtrrx_el1|OSDTRRX_EL1}}, x12 // encoding: [0x4c,0x00,0x10,0xd5] 3958*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{mdccint_el1|MDCCINT_EL1}}, x12 // encoding: [0x0c,0x02,0x10,0xd5] 3959*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{mdscr_el1|MDSCR_EL1}}, x12 // encoding: [0x4c,0x02,0x10,0xd5] 3960*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{osdtrtx_el1|OSDTRTX_EL1}}, x12 // encoding: [0x4c,0x03,0x10,0xd5] 3961*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgdtr_el0|DBGDTR_EL0}}, x12 // encoding: [0x0c,0x04,0x13,0xd5] 3962*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgdtrtx_el0|DBGDTRTX_EL0}}, x12 // encoding: [0x0c,0x05,0x13,0xd5] 3963*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{oseccr_el1|OSECCR_EL1}}, x12 // encoding: [0x4c,0x06,0x10,0xd5] 3964*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgvcr32_el2|DBGVCR32_EL2}}, x12 // encoding: [0x0c,0x07,0x14,0xd5] 3965*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgbvr0_el1|DBGBVR0_EL1}}, x12 // encoding: [0x8c,0x00,0x10,0xd5] 3966*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgbvr1_el1|DBGBVR1_EL1}}, x12 // encoding: [0x8c,0x01,0x10,0xd5] 3967*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgbvr2_el1|DBGBVR2_EL1}}, x12 // encoding: [0x8c,0x02,0x10,0xd5] 3968*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgbvr3_el1|DBGBVR3_EL1}}, x12 // encoding: [0x8c,0x03,0x10,0xd5] 3969*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgbvr4_el1|DBGBVR4_EL1}}, x12 // encoding: [0x8c,0x04,0x10,0xd5] 3970*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgbvr5_el1|DBGBVR5_EL1}}, x12 // encoding: [0x8c,0x05,0x10,0xd5] 3971*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgbvr6_el1|DBGBVR6_EL1}}, x12 // encoding: [0x8c,0x06,0x10,0xd5] 3972*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgbvr7_el1|DBGBVR7_EL1}}, x12 // encoding: [0x8c,0x07,0x10,0xd5] 3973*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgbvr8_el1|DBGBVR8_EL1}}, x12 // encoding: [0x8c,0x08,0x10,0xd5] 3974*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgbvr9_el1|DBGBVR9_EL1}}, x12 // encoding: [0x8c,0x09,0x10,0xd5] 3975*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgbvr10_el1|DBGBVR10_EL1}}, x12 // encoding: [0x8c,0x0a,0x10,0xd5] 3976*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgbvr11_el1|DBGBVR11_EL1}}, x12 // encoding: [0x8c,0x0b,0x10,0xd5] 3977*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgbvr12_el1|DBGBVR12_EL1}}, x12 // encoding: [0x8c,0x0c,0x10,0xd5] 3978*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgbvr13_el1|DBGBVR13_EL1}}, x12 // encoding: [0x8c,0x0d,0x10,0xd5] 3979*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgbvr14_el1|DBGBVR14_EL1}}, x12 // encoding: [0x8c,0x0e,0x10,0xd5] 3980*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgbvr15_el1|DBGBVR15_EL1}}, x12 // encoding: [0x8c,0x0f,0x10,0xd5] 3981*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgbcr0_el1|DBGBCR0_EL1}}, x12 // encoding: [0xac,0x00,0x10,0xd5] 3982*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgbcr1_el1|DBGBCR1_EL1}}, x12 // encoding: [0xac,0x01,0x10,0xd5] 3983*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgbcr2_el1|DBGBCR2_EL1}}, x12 // encoding: [0xac,0x02,0x10,0xd5] 3984*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgbcr3_el1|DBGBCR3_EL1}}, x12 // encoding: [0xac,0x03,0x10,0xd5] 3985*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgbcr4_el1|DBGBCR4_EL1}}, x12 // encoding: [0xac,0x04,0x10,0xd5] 3986*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgbcr5_el1|DBGBCR5_EL1}}, x12 // encoding: [0xac,0x05,0x10,0xd5] 3987*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgbcr6_el1|DBGBCR6_EL1}}, x12 // encoding: [0xac,0x06,0x10,0xd5] 3988*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgbcr7_el1|DBGBCR7_EL1}}, x12 // encoding: [0xac,0x07,0x10,0xd5] 3989*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgbcr8_el1|DBGBCR8_EL1}}, x12 // encoding: [0xac,0x08,0x10,0xd5] 3990*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgbcr9_el1|DBGBCR9_EL1}}, x12 // encoding: [0xac,0x09,0x10,0xd5] 3991*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgbcr10_el1|DBGBCR10_EL1}}, x12 // encoding: [0xac,0x0a,0x10,0xd5] 3992*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgbcr11_el1|DBGBCR11_EL1}}, x12 // encoding: [0xac,0x0b,0x10,0xd5] 3993*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgbcr12_el1|DBGBCR12_EL1}}, x12 // encoding: [0xac,0x0c,0x10,0xd5] 3994*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgbcr13_el1|DBGBCR13_EL1}}, x12 // encoding: [0xac,0x0d,0x10,0xd5] 3995*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgbcr14_el1|DBGBCR14_EL1}}, x12 // encoding: [0xac,0x0e,0x10,0xd5] 3996*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgbcr15_el1|DBGBCR15_EL1}}, x12 // encoding: [0xac,0x0f,0x10,0xd5] 3997*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgwvr0_el1|DBGWVR0_EL1}}, x12 // encoding: [0xcc,0x00,0x10,0xd5] 3998*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgwvr1_el1|DBGWVR1_EL1}}, x12 // encoding: [0xcc,0x01,0x10,0xd5] 3999*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgwvr2_el1|DBGWVR2_EL1}}, x12 // encoding: [0xcc,0x02,0x10,0xd5] 4000*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgwvr3_el1|DBGWVR3_EL1}}, x12 // encoding: [0xcc,0x03,0x10,0xd5] 4001*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgwvr4_el1|DBGWVR4_EL1}}, x12 // encoding: [0xcc,0x04,0x10,0xd5] 4002*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgwvr5_el1|DBGWVR5_EL1}}, x12 // encoding: [0xcc,0x05,0x10,0xd5] 4003*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgwvr6_el1|DBGWVR6_EL1}}, x12 // encoding: [0xcc,0x06,0x10,0xd5] 4004*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgwvr7_el1|DBGWVR7_EL1}}, x12 // encoding: [0xcc,0x07,0x10,0xd5] 4005*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgwvr8_el1|DBGWVR8_EL1}}, x12 // encoding: [0xcc,0x08,0x10,0xd5] 4006*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgwvr9_el1|DBGWVR9_EL1}}, x12 // encoding: [0xcc,0x09,0x10,0xd5] 4007*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgwvr10_el1|DBGWVR10_EL1}}, x12 // encoding: [0xcc,0x0a,0x10,0xd5] 4008*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgwvr11_el1|DBGWVR11_EL1}}, x12 // encoding: [0xcc,0x0b,0x10,0xd5] 4009*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgwvr12_el1|DBGWVR12_EL1}}, x12 // encoding: [0xcc,0x0c,0x10,0xd5] 4010*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgwvr13_el1|DBGWVR13_EL1}}, x12 // encoding: [0xcc,0x0d,0x10,0xd5] 4011*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgwvr14_el1|DBGWVR14_EL1}}, x12 // encoding: [0xcc,0x0e,0x10,0xd5] 4012*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgwvr15_el1|DBGWVR15_EL1}}, x12 // encoding: [0xcc,0x0f,0x10,0xd5] 4013*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgwcr0_el1|DBGWCR0_EL1}}, x12 // encoding: [0xec,0x00,0x10,0xd5] 4014*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgwcr1_el1|DBGWCR1_EL1}}, x12 // encoding: [0xec,0x01,0x10,0xd5] 4015*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgwcr2_el1|DBGWCR2_EL1}}, x12 // encoding: [0xec,0x02,0x10,0xd5] 4016*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgwcr3_el1|DBGWCR3_EL1}}, x12 // encoding: [0xec,0x03,0x10,0xd5] 4017*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgwcr4_el1|DBGWCR4_EL1}}, x12 // encoding: [0xec,0x04,0x10,0xd5] 4018*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgwcr5_el1|DBGWCR5_EL1}}, x12 // encoding: [0xec,0x05,0x10,0xd5] 4019*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgwcr6_el1|DBGWCR6_EL1}}, x12 // encoding: [0xec,0x06,0x10,0xd5] 4020*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgwcr7_el1|DBGWCR7_EL1}}, x12 // encoding: [0xec,0x07,0x10,0xd5] 4021*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgwcr8_el1|DBGWCR8_EL1}}, x12 // encoding: [0xec,0x08,0x10,0xd5] 4022*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgwcr9_el1|DBGWCR9_EL1}}, x12 // encoding: [0xec,0x09,0x10,0xd5] 4023*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgwcr10_el1|DBGWCR10_EL1}}, x12 // encoding: [0xec,0x0a,0x10,0xd5] 4024*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgwcr11_el1|DBGWCR11_EL1}}, x12 // encoding: [0xec,0x0b,0x10,0xd5] 4025*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgwcr12_el1|DBGWCR12_EL1}}, x12 // encoding: [0xec,0x0c,0x10,0xd5] 4026*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgwcr13_el1|DBGWCR13_EL1}}, x12 // encoding: [0xec,0x0d,0x10,0xd5] 4027*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgwcr14_el1|DBGWCR14_EL1}}, x12 // encoding: [0xec,0x0e,0x10,0xd5] 4028*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgwcr15_el1|DBGWCR15_EL1}}, x12 // encoding: [0xec,0x0f,0x10,0xd5] 4029*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{teehbr32_el1|TEEHBR32_EL1}}, x12 // encoding: [0x0c,0x10,0x12,0xd5] 4030*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{oslar_el1|OSLAR_EL1}}, x12 // encoding: [0x8c,0x10,0x10,0xd5] 4031*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{osdlr_el1|OSDLR_EL1}}, x12 // encoding: [0x8c,0x13,0x10,0xd5] 4032*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgprcr_el1|DBGPRCR_EL1}}, x12 // encoding: [0x8c,0x14,0x10,0xd5] 4033*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgclaimset_el1|DBGCLAIMSET_EL1}}, x12 // encoding: [0xcc,0x78,0x10,0xd5] 4034*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dbgclaimclr_el1|DBGCLAIMCLR_EL1}}, x12 // encoding: [0xcc,0x79,0x10,0xd5] 4035*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{csselr_el1|CSSELR_EL1}}, x12 // encoding: [0x0c,0x00,0x1a,0xd5] 4036*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{vpidr_el2|VPIDR_EL2}}, x12 // encoding: [0x0c,0x00,0x1c,0xd5] 4037*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{vmpidr_el2|VMPIDR_EL2}}, x12 // encoding: [0xac,0x00,0x1c,0xd5] 4038*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{sctlr_el1|SCTLR_EL1}}, x12 // encoding: [0x0c,0x10,0x18,0xd5] 4039*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{sctlr_el2|SCTLR_EL2}}, x12 // encoding: [0x0c,0x10,0x1c,0xd5] 4040*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{sctlr_el3|SCTLR_EL3}}, x12 // encoding: [0x0c,0x10,0x1e,0xd5] 4041*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{actlr_el1|ACTLR_EL1}}, x12 // encoding: [0x2c,0x10,0x18,0xd5] 4042*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{actlr_el2|ACTLR_EL2}}, x12 // encoding: [0x2c,0x10,0x1c,0xd5] 4043*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{actlr_el3|ACTLR_EL3}}, x12 // encoding: [0x2c,0x10,0x1e,0xd5] 4044*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{cpacr_el1|CPACR_EL1}}, x12 // encoding: [0x4c,0x10,0x18,0xd5] 4045*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{hcr_el2|HCR_EL2}}, x12 // encoding: [0x0c,0x11,0x1c,0xd5] 4046*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{scr_el3|SCR_EL3}}, x12 // encoding: [0x0c,0x11,0x1e,0xd5] 4047*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{mdcr_el2|MDCR_EL2}}, x12 // encoding: [0x2c,0x11,0x1c,0xd5] 4048*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{sder32_el3|SDER32_EL3}}, x12 // encoding: [0x2c,0x11,0x1e,0xd5] 4049*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{cptr_el2|CPTR_EL2}}, x12 // encoding: [0x4c,0x11,0x1c,0xd5] 4050*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{cptr_el3|CPTR_EL3}}, x12 // encoding: [0x4c,0x11,0x1e,0xd5] 4051*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{hstr_el2|HSTR_EL2}}, x12 // encoding: [0x6c,0x11,0x1c,0xd5] 4052*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{hacr_el2|HACR_EL2}}, x12 // encoding: [0xec,0x11,0x1c,0xd5] 4053*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{mdcr_el3|MDCR_EL3}}, x12 // encoding: [0x2c,0x13,0x1e,0xd5] 4054*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{ttbr0_el1|TTBR0_EL1}}, x12 // encoding: [0x0c,0x20,0x18,0xd5] 4055*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{ttbr0_el2|TTBR0_EL2}}, x12 // encoding: [0x0c,0x20,0x1c,0xd5] 4056*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{ttbr0_el3|TTBR0_EL3}}, x12 // encoding: [0x0c,0x20,0x1e,0xd5] 4057*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{ttbr1_el1|TTBR1_EL1}}, x12 // encoding: [0x2c,0x20,0x18,0xd5] 4058*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{tcr_el1|TCR_EL1}}, x12 // encoding: [0x4c,0x20,0x18,0xd5] 4059*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{tcr_el2|TCR_EL2}}, x12 // encoding: [0x4c,0x20,0x1c,0xd5] 4060*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{tcr_el3|TCR_EL3}}, x12 // encoding: [0x4c,0x20,0x1e,0xd5] 4061*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{vttbr_el2|VTTBR_EL2}}, x12 // encoding: [0x0c,0x21,0x1c,0xd5] 4062*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{vtcr_el2|VTCR_EL2}}, x12 // encoding: [0x4c,0x21,0x1c,0xd5] 4063*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dacr32_el2|DACR32_EL2}}, x12 // encoding: [0x0c,0x30,0x1c,0xd5] 4064*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{spsr_el1|SPSR_EL1}}, x12 // encoding: [0x0c,0x40,0x18,0xd5] 4065*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{spsr_el2|SPSR_EL2}}, x12 // encoding: [0x0c,0x40,0x1c,0xd5] 4066*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{spsr_el3|SPSR_EL3}}, x12 // encoding: [0x0c,0x40,0x1e,0xd5] 4067*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{elr_el1|ELR_EL1}}, x12 // encoding: [0x2c,0x40,0x18,0xd5] 4068*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{elr_el2|ELR_EL2}}, x12 // encoding: [0x2c,0x40,0x1c,0xd5] 4069*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{elr_el3|ELR_EL3}}, x12 // encoding: [0x2c,0x40,0x1e,0xd5] 4070*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{sp_el0|SP_EL0}}, x12 // encoding: [0x0c,0x41,0x18,0xd5] 4071*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{sp_el1|SP_EL1}}, x12 // encoding: [0x0c,0x41,0x1c,0xd5] 4072*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{sp_el2|SP_EL2}}, x12 // encoding: [0x0c,0x41,0x1e,0xd5] 4073*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{SPSel|SPSEL}}, x12 // encoding: [0x0c,0x42,0x18,0xd5] 4074*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{nzcv|NZCV}}, x12 // encoding: [0x0c,0x42,0x1b,0xd5] 4075*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{daif|DAIF}}, x12 // encoding: [0x2c,0x42,0x1b,0xd5] 4076*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{CurrentEL|CURRENTEL}}, x12 // encoding: [0x4c,0x42,0x18,0xd5] 4077*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{SPSR_irq|SPSR_IRQ}}, x12 // encoding: [0x0c,0x43,0x1c,0xd5] 4078*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{SPSR_abt|SPSR_ABT}}, x12 // encoding: [0x2c,0x43,0x1c,0xd5] 4079*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{SPSR_und|SPSR_UND}}, x12 // encoding: [0x4c,0x43,0x1c,0xd5] 4080*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{SPSR_fiq|SPSR_FIQ}}, x12 // encoding: [0x6c,0x43,0x1c,0xd5] 4081*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{fpcr|FPCR}}, x12 // encoding: [0x0c,0x44,0x1b,0xd5] 4082*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{fpsr|FPSR}}, x12 // encoding: [0x2c,0x44,0x1b,0xd5] 4083*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dspsr_el0|DSPSR_EL0}}, x12 // encoding: [0x0c,0x45,0x1b,0xd5] 4084*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{dlr_el0|DLR_EL0}}, x12 // encoding: [0x2c,0x45,0x1b,0xd5] 4085*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{ifsr32_el2|IFSR32_EL2}}, x12 // encoding: [0x2c,0x50,0x1c,0xd5] 4086*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{afsr0_el1|AFSR0_EL1}}, x12 // encoding: [0x0c,0x51,0x18,0xd5] 4087*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{afsr0_el2|AFSR0_EL2}}, x12 // encoding: [0x0c,0x51,0x1c,0xd5] 4088*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{afsr0_el3|AFSR0_EL3}}, x12 // encoding: [0x0c,0x51,0x1e,0xd5] 4089*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{afsr1_el1|AFSR1_EL1}}, x12 // encoding: [0x2c,0x51,0x18,0xd5] 4090*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{afsr1_el2|AFSR1_EL2}}, x12 // encoding: [0x2c,0x51,0x1c,0xd5] 4091*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{afsr1_el3|AFSR1_EL3}}, x12 // encoding: [0x2c,0x51,0x1e,0xd5] 4092*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{esr_el1|ESR_EL1}}, x12 // encoding: [0x0c,0x52,0x18,0xd5] 4093*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{esr_el2|ESR_EL2}}, x12 // encoding: [0x0c,0x52,0x1c,0xd5] 4094*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{esr_el3|ESR_EL3}}, x12 // encoding: [0x0c,0x52,0x1e,0xd5] 4095*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{fpexc32_el2|FPEXC32_EL2}}, x12 // encoding: [0x0c,0x53,0x1c,0xd5] 4096*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{far_el1|FAR_EL1}}, x12 // encoding: [0x0c,0x60,0x18,0xd5] 4097*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{far_el2|FAR_EL2}}, x12 // encoding: [0x0c,0x60,0x1c,0xd5] 4098*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{far_el3|FAR_EL3}}, x12 // encoding: [0x0c,0x60,0x1e,0xd5] 4099*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{hpfar_el2|HPFAR_EL2}}, x12 // encoding: [0x8c,0x60,0x1c,0xd5] 4100*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{par_el1|PAR_EL1}}, x12 // encoding: [0x0c,0x74,0x18,0xd5] 4101*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmcr_el0|PMCR_EL0}}, x12 // encoding: [0x0c,0x9c,0x1b,0xd5] 4102*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmcntenset_el0|PMCNTENSET_EL0}}, x12 // encoding: [0x2c,0x9c,0x1b,0xd5] 4103*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmcntenclr_el0|PMCNTENCLR_EL0}}, x12 // encoding: [0x4c,0x9c,0x1b,0xd5] 4104*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmovsclr_el0|PMOVSCLR_EL0}}, x12 // encoding: [0x6c,0x9c,0x1b,0xd5] 4105*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmselr_el0|PMSELR_EL0}}, x12 // encoding: [0xac,0x9c,0x1b,0xd5] 4106*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmccntr_el0|PMCCNTR_EL0}}, x12 // encoding: [0x0c,0x9d,0x1b,0xd5] 4107*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmxevtyper_el0|PMXEVTYPER_EL0}}, x12 // encoding: [0x2c,0x9d,0x1b,0xd5] 4108*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmxevcntr_el0|PMXEVCNTR_EL0}}, x12 // encoding: [0x4c,0x9d,0x1b,0xd5] 4109*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmuserenr_el0|PMUSERENR_EL0}}, x12 // encoding: [0x0c,0x9e,0x1b,0xd5] 4110*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmintenset_el1|PMINTENSET_EL1}}, x12 // encoding: [0x2c,0x9e,0x18,0xd5] 4111*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmintenclr_el1|PMINTENCLR_EL1}}, x12 // encoding: [0x4c,0x9e,0x18,0xd5] 4112*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmovsset_el0|PMOVSSET_EL0}}, x12 // encoding: [0x6c,0x9e,0x1b,0xd5] 4113*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{mair_el1|MAIR_EL1}}, x12 // encoding: [0x0c,0xa2,0x18,0xd5] 4114*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{mair_el2|MAIR_EL2}}, x12 // encoding: [0x0c,0xa2,0x1c,0xd5] 4115*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{mair_el3|MAIR_EL3}}, x12 // encoding: [0x0c,0xa2,0x1e,0xd5] 4116*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{amair_el1|AMAIR_EL1}}, x12 // encoding: [0x0c,0xa3,0x18,0xd5] 4117*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{amair_el2|AMAIR_EL2}}, x12 // encoding: [0x0c,0xa3,0x1c,0xd5] 4118*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{amair_el3|AMAIR_EL3}}, x12 // encoding: [0x0c,0xa3,0x1e,0xd5] 4119*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{vbar_el1|VBAR_EL1}}, x12 // encoding: [0x0c,0xc0,0x18,0xd5] 4120*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{vbar_el2|VBAR_EL2}}, x12 // encoding: [0x0c,0xc0,0x1c,0xd5] 4121*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{vbar_el3|VBAR_EL3}}, x12 // encoding: [0x0c,0xc0,0x1e,0xd5] 4122*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{rmr_el1|RMR_EL1}}, x12 // encoding: [0x4c,0xc0,0x18,0xd5] 4123*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{rmr_el2|RMR_EL2}}, x12 // encoding: [0x4c,0xc0,0x1c,0xd5] 4124*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{rmr_el3|RMR_EL3}}, x12 // encoding: [0x4c,0xc0,0x1e,0xd5] 4125*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{contextidr_el1|CONTEXTIDR_EL1}}, x12 // encoding: [0x2c,0xd0,0x18,0xd5] 4126*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{tpidr_el0|TPIDR_EL0}}, x12 // encoding: [0x4c,0xd0,0x1b,0xd5] 4127*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{tpidr_el2|TPIDR_EL2}}, x12 // encoding: [0x4c,0xd0,0x1c,0xd5] 4128*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{tpidr_el3|TPIDR_EL3}}, x12 // encoding: [0x4c,0xd0,0x1e,0xd5] 4129*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{tpidrro_el0|TPIDRRO_EL0}}, x12 // encoding: [0x6c,0xd0,0x1b,0xd5] 4130*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{tpidr_el1|TPIDR_EL1}}, x12 // encoding: [0x8c,0xd0,0x18,0xd5] 4131*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{cntfrq_el0|CNTFRQ_EL0}}, x12 // encoding: [0x0c,0xe0,0x1b,0xd5] 4132*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{cntvoff_el2|CNTVOFF_EL2}}, x12 // encoding: [0x6c,0xe0,0x1c,0xd5] 4133*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{cntkctl_el1|CNTKCTL_EL1}}, x12 // encoding: [0x0c,0xe1,0x18,0xd5] 4134*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{cnthctl_el2|CNTHCTL_EL2}}, x12 // encoding: [0x0c,0xe1,0x1c,0xd5] 4135*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{cntp_tval_el0|CNTP_TVAL_EL0}}, x12 // encoding: [0x0c,0xe2,0x1b,0xd5] 4136*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{cnthp_tval_el2|CNTHP_TVAL_EL2}}, x12 // encoding: [0x0c,0xe2,0x1c,0xd5] 4137*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{cntps_tval_el1|CNTPS_TVAL_EL1}}, x12 // encoding: [0x0c,0xe2,0x1f,0xd5] 4138*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{cntp_ctl_el0|CNTP_CTL_EL0}}, x12 // encoding: [0x2c,0xe2,0x1b,0xd5] 4139*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{cnthp_ctl_el2|CNTHP_CTL_EL2}}, x12 // encoding: [0x2c,0xe2,0x1c,0xd5] 4140*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{cntps_ctl_el1|CNTPS_CTL_EL1}}, x12 // encoding: [0x2c,0xe2,0x1f,0xd5] 4141*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{cntp_cval_el0|CNTP_CVAL_EL0}}, x12 // encoding: [0x4c,0xe2,0x1b,0xd5] 4142*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{cnthp_cval_el2|CNTHP_CVAL_EL2}}, x12 // encoding: [0x4c,0xe2,0x1c,0xd5] 4143*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{cntps_cval_el1|CNTPS_CVAL_EL1}}, x12 // encoding: [0x4c,0xe2,0x1f,0xd5] 4144*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{cntv_tval_el0|CNTV_TVAL_EL0}}, x12 // encoding: [0x0c,0xe3,0x1b,0xd5] 4145*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{cntv_ctl_el0|CNTV_CTL_EL0}}, x12 // encoding: [0x2c,0xe3,0x1b,0xd5] 4146*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{cntv_cval_el0|CNTV_CVAL_EL0}}, x12 // encoding: [0x4c,0xe3,0x1b,0xd5] 4147*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevcntr0_el0|PMEVCNTR0_EL0}}, x12 // encoding: [0x0c,0xe8,0x1b,0xd5] 4148*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevcntr1_el0|PMEVCNTR1_EL0}}, x12 // encoding: [0x2c,0xe8,0x1b,0xd5] 4149*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevcntr2_el0|PMEVCNTR2_EL0}}, x12 // encoding: [0x4c,0xe8,0x1b,0xd5] 4150*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevcntr3_el0|PMEVCNTR3_EL0}}, x12 // encoding: [0x6c,0xe8,0x1b,0xd5] 4151*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevcntr4_el0|PMEVCNTR4_EL0}}, x12 // encoding: [0x8c,0xe8,0x1b,0xd5] 4152*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevcntr5_el0|PMEVCNTR5_EL0}}, x12 // encoding: [0xac,0xe8,0x1b,0xd5] 4153*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevcntr6_el0|PMEVCNTR6_EL0}}, x12 // encoding: [0xcc,0xe8,0x1b,0xd5] 4154*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevcntr7_el0|PMEVCNTR7_EL0}}, x12 // encoding: [0xec,0xe8,0x1b,0xd5] 4155*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevcntr8_el0|PMEVCNTR8_EL0}}, x12 // encoding: [0x0c,0xe9,0x1b,0xd5] 4156*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevcntr9_el0|PMEVCNTR9_EL0}}, x12 // encoding: [0x2c,0xe9,0x1b,0xd5] 4157*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevcntr10_el0|PMEVCNTR10_EL0}}, x12 // encoding: [0x4c,0xe9,0x1b,0xd5] 4158*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevcntr11_el0|PMEVCNTR11_EL0}}, x12 // encoding: [0x6c,0xe9,0x1b,0xd5] 4159*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevcntr12_el0|PMEVCNTR12_EL0}}, x12 // encoding: [0x8c,0xe9,0x1b,0xd5] 4160*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevcntr13_el0|PMEVCNTR13_EL0}}, x12 // encoding: [0xac,0xe9,0x1b,0xd5] 4161*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevcntr14_el0|PMEVCNTR14_EL0}}, x12 // encoding: [0xcc,0xe9,0x1b,0xd5] 4162*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevcntr15_el0|PMEVCNTR15_EL0}}, x12 // encoding: [0xec,0xe9,0x1b,0xd5] 4163*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevcntr16_el0|PMEVCNTR16_EL0}}, x12 // encoding: [0x0c,0xea,0x1b,0xd5] 4164*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevcntr17_el0|PMEVCNTR17_EL0}}, x12 // encoding: [0x2c,0xea,0x1b,0xd5] 4165*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevcntr18_el0|PMEVCNTR18_EL0}}, x12 // encoding: [0x4c,0xea,0x1b,0xd5] 4166*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevcntr19_el0|PMEVCNTR19_EL0}}, x12 // encoding: [0x6c,0xea,0x1b,0xd5] 4167*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevcntr20_el0|PMEVCNTR20_EL0}}, x12 // encoding: [0x8c,0xea,0x1b,0xd5] 4168*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevcntr21_el0|PMEVCNTR21_EL0}}, x12 // encoding: [0xac,0xea,0x1b,0xd5] 4169*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevcntr22_el0|PMEVCNTR22_EL0}}, x12 // encoding: [0xcc,0xea,0x1b,0xd5] 4170*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevcntr23_el0|PMEVCNTR23_EL0}}, x12 // encoding: [0xec,0xea,0x1b,0xd5] 4171*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevcntr24_el0|PMEVCNTR24_EL0}}, x12 // encoding: [0x0c,0xeb,0x1b,0xd5] 4172*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevcntr25_el0|PMEVCNTR25_EL0}}, x12 // encoding: [0x2c,0xeb,0x1b,0xd5] 4173*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevcntr26_el0|PMEVCNTR26_EL0}}, x12 // encoding: [0x4c,0xeb,0x1b,0xd5] 4174*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevcntr27_el0|PMEVCNTR27_EL0}}, x12 // encoding: [0x6c,0xeb,0x1b,0xd5] 4175*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevcntr28_el0|PMEVCNTR28_EL0}}, x12 // encoding: [0x8c,0xeb,0x1b,0xd5] 4176*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevcntr29_el0|PMEVCNTR29_EL0}}, x12 // encoding: [0xac,0xeb,0x1b,0xd5] 4177*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevcntr30_el0|PMEVCNTR30_EL0}}, x12 // encoding: [0xcc,0xeb,0x1b,0xd5] 4178*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmccfiltr_el0|PMCCFILTR_EL0}}, x12 // encoding: [0xec,0xef,0x1b,0xd5] 4179*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevtyper0_el0|PMEVTYPER0_EL0}}, x12 // encoding: [0x0c,0xec,0x1b,0xd5] 4180*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevtyper1_el0|PMEVTYPER1_EL0}}, x12 // encoding: [0x2c,0xec,0x1b,0xd5] 4181*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevtyper2_el0|PMEVTYPER2_EL0}}, x12 // encoding: [0x4c,0xec,0x1b,0xd5] 4182*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevtyper3_el0|PMEVTYPER3_EL0}}, x12 // encoding: [0x6c,0xec,0x1b,0xd5] 4183*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevtyper4_el0|PMEVTYPER4_EL0}}, x12 // encoding: [0x8c,0xec,0x1b,0xd5] 4184*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevtyper5_el0|PMEVTYPER5_EL0}}, x12 // encoding: [0xac,0xec,0x1b,0xd5] 4185*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevtyper6_el0|PMEVTYPER6_EL0}}, x12 // encoding: [0xcc,0xec,0x1b,0xd5] 4186*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevtyper7_el0|PMEVTYPER7_EL0}}, x12 // encoding: [0xec,0xec,0x1b,0xd5] 4187*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevtyper8_el0|PMEVTYPER8_EL0}}, x12 // encoding: [0x0c,0xed,0x1b,0xd5] 4188*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevtyper9_el0|PMEVTYPER9_EL0}}, x12 // encoding: [0x2c,0xed,0x1b,0xd5] 4189*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevtyper10_el0|PMEVTYPER10_EL0}}, x12 // encoding: [0x4c,0xed,0x1b,0xd5] 4190*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevtyper11_el0|PMEVTYPER11_EL0}}, x12 // encoding: [0x6c,0xed,0x1b,0xd5] 4191*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevtyper12_el0|PMEVTYPER12_EL0}}, x12 // encoding: [0x8c,0xed,0x1b,0xd5] 4192*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevtyper13_el0|PMEVTYPER13_EL0}}, x12 // encoding: [0xac,0xed,0x1b,0xd5] 4193*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevtyper14_el0|PMEVTYPER14_EL0}}, x12 // encoding: [0xcc,0xed,0x1b,0xd5] 4194*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevtyper15_el0|PMEVTYPER15_EL0}}, x12 // encoding: [0xec,0xed,0x1b,0xd5] 4195*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevtyper16_el0|PMEVTYPER16_EL0}}, x12 // encoding: [0x0c,0xee,0x1b,0xd5] 4196*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevtyper17_el0|PMEVTYPER17_EL0}}, x12 // encoding: [0x2c,0xee,0x1b,0xd5] 4197*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevtyper18_el0|PMEVTYPER18_EL0}}, x12 // encoding: [0x4c,0xee,0x1b,0xd5] 4198*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevtyper19_el0|PMEVTYPER19_EL0}}, x12 // encoding: [0x6c,0xee,0x1b,0xd5] 4199*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevtyper20_el0|PMEVTYPER20_EL0}}, x12 // encoding: [0x8c,0xee,0x1b,0xd5] 4200*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevtyper21_el0|PMEVTYPER21_EL0}}, x12 // encoding: [0xac,0xee,0x1b,0xd5] 4201*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevtyper22_el0|PMEVTYPER22_EL0}}, x12 // encoding: [0xcc,0xee,0x1b,0xd5] 4202*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevtyper23_el0|PMEVTYPER23_EL0}}, x12 // encoding: [0xec,0xee,0x1b,0xd5] 4203*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevtyper24_el0|PMEVTYPER24_EL0}}, x12 // encoding: [0x0c,0xef,0x1b,0xd5] 4204*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevtyper25_el0|PMEVTYPER25_EL0}}, x12 // encoding: [0x2c,0xef,0x1b,0xd5] 4205*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevtyper26_el0|PMEVTYPER26_EL0}}, x12 // encoding: [0x4c,0xef,0x1b,0xd5] 4206*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevtyper27_el0|PMEVTYPER27_EL0}}, x12 // encoding: [0x6c,0xef,0x1b,0xd5] 4207*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevtyper28_el0|PMEVTYPER28_EL0}}, x12 // encoding: [0x8c,0xef,0x1b,0xd5] 4208*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevtyper29_el0|PMEVTYPER29_EL0}}, x12 // encoding: [0xac,0xef,0x1b,0xd5] 4209*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{pmevtyper30_el0|PMEVTYPER30_EL0}}, x12 // encoding: [0xcc,0xef,0x1b,0xd5] 4210*9880d681SAndroid Build Coastguard Worker 4211*9880d681SAndroid Build Coastguard Worker mrs x9, TEECR32_EL1 4212*9880d681SAndroid Build Coastguard Worker mrs x9, OSDTRRX_EL1 4213*9880d681SAndroid Build Coastguard Worker mrs x9, MDCCSR_EL0 4214*9880d681SAndroid Build Coastguard Worker mrs x9, MDCCINT_EL1 4215*9880d681SAndroid Build Coastguard Worker mrs x9, MDSCR_EL1 4216*9880d681SAndroid Build Coastguard Worker mrs x9, OSDTRTX_EL1 4217*9880d681SAndroid Build Coastguard Worker mrs x9, DBGDTR_EL0 4218*9880d681SAndroid Build Coastguard Worker mrs x9, DBGDTRRX_EL0 4219*9880d681SAndroid Build Coastguard Worker mrs x9, OSECCR_EL1 4220*9880d681SAndroid Build Coastguard Worker mrs x9, DBGVCR32_EL2 4221*9880d681SAndroid Build Coastguard Worker mrs x9, DBGBVR0_EL1 4222*9880d681SAndroid Build Coastguard Worker mrs x9, DBGBVR1_EL1 4223*9880d681SAndroid Build Coastguard Worker mrs x9, DBGBVR2_EL1 4224*9880d681SAndroid Build Coastguard Worker mrs x9, DBGBVR3_EL1 4225*9880d681SAndroid Build Coastguard Worker mrs x9, DBGBVR4_EL1 4226*9880d681SAndroid Build Coastguard Worker mrs x9, DBGBVR5_EL1 4227*9880d681SAndroid Build Coastguard Worker mrs x9, DBGBVR6_EL1 4228*9880d681SAndroid Build Coastguard Worker mrs x9, DBGBVR7_EL1 4229*9880d681SAndroid Build Coastguard Worker mrs x9, DBGBVR8_EL1 4230*9880d681SAndroid Build Coastguard Worker mrs x9, DBGBVR9_EL1 4231*9880d681SAndroid Build Coastguard Worker mrs x9, DBGBVR10_EL1 4232*9880d681SAndroid Build Coastguard Worker mrs x9, DBGBVR11_EL1 4233*9880d681SAndroid Build Coastguard Worker mrs x9, DBGBVR12_EL1 4234*9880d681SAndroid Build Coastguard Worker mrs x9, DBGBVR13_EL1 4235*9880d681SAndroid Build Coastguard Worker mrs x9, DBGBVR14_EL1 4236*9880d681SAndroid Build Coastguard Worker mrs x9, DBGBVR15_EL1 4237*9880d681SAndroid Build Coastguard Worker mrs x9, DBGBCR0_EL1 4238*9880d681SAndroid Build Coastguard Worker mrs x9, DBGBCR1_EL1 4239*9880d681SAndroid Build Coastguard Worker mrs x9, DBGBCR2_EL1 4240*9880d681SAndroid Build Coastguard Worker mrs x9, DBGBCR3_EL1 4241*9880d681SAndroid Build Coastguard Worker mrs x9, DBGBCR4_EL1 4242*9880d681SAndroid Build Coastguard Worker mrs x9, DBGBCR5_EL1 4243*9880d681SAndroid Build Coastguard Worker mrs x9, DBGBCR6_EL1 4244*9880d681SAndroid Build Coastguard Worker mrs x9, DBGBCR7_EL1 4245*9880d681SAndroid Build Coastguard Worker mrs x9, DBGBCR8_EL1 4246*9880d681SAndroid Build Coastguard Worker mrs x9, DBGBCR9_EL1 4247*9880d681SAndroid Build Coastguard Worker mrs x9, DBGBCR10_EL1 4248*9880d681SAndroid Build Coastguard Worker mrs x9, DBGBCR11_EL1 4249*9880d681SAndroid Build Coastguard Worker mrs x9, DBGBCR12_EL1 4250*9880d681SAndroid Build Coastguard Worker mrs x9, DBGBCR13_EL1 4251*9880d681SAndroid Build Coastguard Worker mrs x9, DBGBCR14_EL1 4252*9880d681SAndroid Build Coastguard Worker mrs x9, DBGBCR15_EL1 4253*9880d681SAndroid Build Coastguard Worker mrs x9, DBGWVR0_EL1 4254*9880d681SAndroid Build Coastguard Worker mrs x9, DBGWVR1_EL1 4255*9880d681SAndroid Build Coastguard Worker mrs x9, DBGWVR2_EL1 4256*9880d681SAndroid Build Coastguard Worker mrs x9, DBGWVR3_EL1 4257*9880d681SAndroid Build Coastguard Worker mrs x9, DBGWVR4_EL1 4258*9880d681SAndroid Build Coastguard Worker mrs x9, DBGWVR5_EL1 4259*9880d681SAndroid Build Coastguard Worker mrs x9, DBGWVR6_EL1 4260*9880d681SAndroid Build Coastguard Worker mrs x9, DBGWVR7_EL1 4261*9880d681SAndroid Build Coastguard Worker mrs x9, DBGWVR8_EL1 4262*9880d681SAndroid Build Coastguard Worker mrs x9, DBGWVR9_EL1 4263*9880d681SAndroid Build Coastguard Worker mrs x9, DBGWVR10_EL1 4264*9880d681SAndroid Build Coastguard Worker mrs x9, DBGWVR11_EL1 4265*9880d681SAndroid Build Coastguard Worker mrs x9, DBGWVR12_EL1 4266*9880d681SAndroid Build Coastguard Worker mrs x9, DBGWVR13_EL1 4267*9880d681SAndroid Build Coastguard Worker mrs x9, DBGWVR14_EL1 4268*9880d681SAndroid Build Coastguard Worker mrs x9, DBGWVR15_EL1 4269*9880d681SAndroid Build Coastguard Worker mrs x9, DBGWCR0_EL1 4270*9880d681SAndroid Build Coastguard Worker mrs x9, DBGWCR1_EL1 4271*9880d681SAndroid Build Coastguard Worker mrs x9, DBGWCR2_EL1 4272*9880d681SAndroid Build Coastguard Worker mrs x9, DBGWCR3_EL1 4273*9880d681SAndroid Build Coastguard Worker mrs x9, DBGWCR4_EL1 4274*9880d681SAndroid Build Coastguard Worker mrs x9, DBGWCR5_EL1 4275*9880d681SAndroid Build Coastguard Worker mrs x9, DBGWCR6_EL1 4276*9880d681SAndroid Build Coastguard Worker mrs x9, DBGWCR7_EL1 4277*9880d681SAndroid Build Coastguard Worker mrs x9, DBGWCR8_EL1 4278*9880d681SAndroid Build Coastguard Worker mrs x9, DBGWCR9_EL1 4279*9880d681SAndroid Build Coastguard Worker mrs x9, DBGWCR10_EL1 4280*9880d681SAndroid Build Coastguard Worker mrs x9, DBGWCR11_EL1 4281*9880d681SAndroid Build Coastguard Worker mrs x9, DBGWCR12_EL1 4282*9880d681SAndroid Build Coastguard Worker mrs x9, DBGWCR13_EL1 4283*9880d681SAndroid Build Coastguard Worker mrs x9, DBGWCR14_EL1 4284*9880d681SAndroid Build Coastguard Worker mrs x9, DBGWCR15_EL1 4285*9880d681SAndroid Build Coastguard Worker mrs x9, MDRAR_EL1 4286*9880d681SAndroid Build Coastguard Worker mrs x9, TEEHBR32_EL1 4287*9880d681SAndroid Build Coastguard Worker mrs x9, OSLSR_EL1 4288*9880d681SAndroid Build Coastguard Worker mrs x9, OSDLR_EL1 4289*9880d681SAndroid Build Coastguard Worker mrs x9, DBGPRCR_EL1 4290*9880d681SAndroid Build Coastguard Worker mrs x9, DBGCLAIMSET_EL1 4291*9880d681SAndroid Build Coastguard Worker mrs x9, DBGCLAIMCLR_EL1 4292*9880d681SAndroid Build Coastguard Worker mrs x9, DBGAUTHSTATUS_EL1 4293*9880d681SAndroid Build Coastguard Worker mrs x9, MIDR_EL1 4294*9880d681SAndroid Build Coastguard Worker mrs x9, CCSIDR_EL1 4295*9880d681SAndroid Build Coastguard Worker mrs x9, CSSELR_EL1 4296*9880d681SAndroid Build Coastguard Worker mrs x9, VPIDR_EL2 4297*9880d681SAndroid Build Coastguard Worker mrs x9, CLIDR_EL1 4298*9880d681SAndroid Build Coastguard Worker mrs x9, CTR_EL0 4299*9880d681SAndroid Build Coastguard Worker mrs x9, MPIDR_EL1 4300*9880d681SAndroid Build Coastguard Worker mrs x9, VMPIDR_EL2 4301*9880d681SAndroid Build Coastguard Worker mrs x9, REVIDR_EL1 4302*9880d681SAndroid Build Coastguard Worker mrs x9, AIDR_EL1 4303*9880d681SAndroid Build Coastguard Worker mrs x9, DCZID_EL0 4304*9880d681SAndroid Build Coastguard Worker mrs x9, ID_PFR0_EL1 4305*9880d681SAndroid Build Coastguard Worker mrs x9, ID_PFR1_EL1 4306*9880d681SAndroid Build Coastguard Worker mrs x9, ID_DFR0_EL1 4307*9880d681SAndroid Build Coastguard Worker mrs x9, ID_AFR0_EL1 4308*9880d681SAndroid Build Coastguard Worker mrs x9, ID_MMFR0_EL1 4309*9880d681SAndroid Build Coastguard Worker mrs x9, ID_MMFR1_EL1 4310*9880d681SAndroid Build Coastguard Worker mrs x9, ID_MMFR2_EL1 4311*9880d681SAndroid Build Coastguard Worker mrs x9, ID_MMFR3_EL1 4312*9880d681SAndroid Build Coastguard Worker mrs x9, ID_MMFR4_EL1 4313*9880d681SAndroid Build Coastguard Worker mrs x9, ID_ISAR0_EL1 4314*9880d681SAndroid Build Coastguard Worker mrs x9, ID_ISAR1_EL1 4315*9880d681SAndroid Build Coastguard Worker mrs x9, ID_ISAR2_EL1 4316*9880d681SAndroid Build Coastguard Worker mrs x9, ID_ISAR3_EL1 4317*9880d681SAndroid Build Coastguard Worker mrs x9, ID_ISAR4_EL1 4318*9880d681SAndroid Build Coastguard Worker mrs x9, ID_ISAR5_EL1 4319*9880d681SAndroid Build Coastguard Worker mrs x9, MVFR0_EL1 4320*9880d681SAndroid Build Coastguard Worker mrs x9, MVFR1_EL1 4321*9880d681SAndroid Build Coastguard Worker mrs x9, MVFR2_EL1 4322*9880d681SAndroid Build Coastguard Worker mrs x9, ID_AA64PFR0_EL1 4323*9880d681SAndroid Build Coastguard Worker mrs x9, ID_AA64PFR1_EL1 4324*9880d681SAndroid Build Coastguard Worker mrs x9, ID_AA64DFR0_EL1 4325*9880d681SAndroid Build Coastguard Worker mrs x9, ID_AA64DFR1_EL1 4326*9880d681SAndroid Build Coastguard Worker mrs x9, ID_AA64AFR0_EL1 4327*9880d681SAndroid Build Coastguard Worker mrs x9, ID_AA64AFR1_EL1 4328*9880d681SAndroid Build Coastguard Worker mrs x9, ID_AA64ISAR0_EL1 4329*9880d681SAndroid Build Coastguard Worker mrs x9, ID_AA64ISAR1_EL1 4330*9880d681SAndroid Build Coastguard Worker mrs x9, ID_AA64MMFR0_EL1 4331*9880d681SAndroid Build Coastguard Worker mrs x9, ID_AA64MMFR1_EL1 4332*9880d681SAndroid Build Coastguard Worker mrs x9, SCTLR_EL1 4333*9880d681SAndroid Build Coastguard Worker mrs x9, SCTLR_EL2 4334*9880d681SAndroid Build Coastguard Worker mrs x9, SCTLR_EL3 4335*9880d681SAndroid Build Coastguard Worker mrs x9, ACTLR_EL1 4336*9880d681SAndroid Build Coastguard Worker mrs x9, ACTLR_EL2 4337*9880d681SAndroid Build Coastguard Worker mrs x9, ACTLR_EL3 4338*9880d681SAndroid Build Coastguard Worker mrs x9, CPACR_EL1 4339*9880d681SAndroid Build Coastguard Worker mrs x9, HCR_EL2 4340*9880d681SAndroid Build Coastguard Worker mrs x9, SCR_EL3 4341*9880d681SAndroid Build Coastguard Worker mrs x9, MDCR_EL2 4342*9880d681SAndroid Build Coastguard Worker mrs x9, SDER32_EL3 4343*9880d681SAndroid Build Coastguard Worker mrs x9, CPTR_EL2 4344*9880d681SAndroid Build Coastguard Worker mrs x9, CPTR_EL3 4345*9880d681SAndroid Build Coastguard Worker mrs x9, HSTR_EL2 4346*9880d681SAndroid Build Coastguard Worker mrs x9, HACR_EL2 4347*9880d681SAndroid Build Coastguard Worker mrs x9, MDCR_EL3 4348*9880d681SAndroid Build Coastguard Worker mrs x9, TTBR0_EL1 4349*9880d681SAndroid Build Coastguard Worker mrs x9, TTBR0_EL2 4350*9880d681SAndroid Build Coastguard Worker mrs x9, TTBR0_EL3 4351*9880d681SAndroid Build Coastguard Worker mrs x9, TTBR1_EL1 4352*9880d681SAndroid Build Coastguard Worker mrs x9, TCR_EL1 4353*9880d681SAndroid Build Coastguard Worker mrs x9, TCR_EL2 4354*9880d681SAndroid Build Coastguard Worker mrs x9, TCR_EL3 4355*9880d681SAndroid Build Coastguard Worker mrs x9, VTTBR_EL2 4356*9880d681SAndroid Build Coastguard Worker mrs x9, VTCR_EL2 4357*9880d681SAndroid Build Coastguard Worker mrs x9, DACR32_EL2 4358*9880d681SAndroid Build Coastguard Worker mrs x9, SPSR_EL1 4359*9880d681SAndroid Build Coastguard Worker mrs x9, SPSR_EL2 4360*9880d681SAndroid Build Coastguard Worker mrs x9, SPSR_EL3 4361*9880d681SAndroid Build Coastguard Worker mrs x9, ELR_EL1 4362*9880d681SAndroid Build Coastguard Worker mrs x9, ELR_EL2 4363*9880d681SAndroid Build Coastguard Worker mrs x9, ELR_EL3 4364*9880d681SAndroid Build Coastguard Worker mrs x9, SP_EL0 4365*9880d681SAndroid Build Coastguard Worker mrs x9, SP_EL1 4366*9880d681SAndroid Build Coastguard Worker mrs x9, SP_EL2 4367*9880d681SAndroid Build Coastguard Worker mrs x9, SPSel 4368*9880d681SAndroid Build Coastguard Worker mrs x9, NZCV 4369*9880d681SAndroid Build Coastguard Worker mrs x9, DAIF 4370*9880d681SAndroid Build Coastguard Worker mrs x9, CurrentEL 4371*9880d681SAndroid Build Coastguard Worker mrs x9, SPSR_irq 4372*9880d681SAndroid Build Coastguard Worker mrs x9, SPSR_abt 4373*9880d681SAndroid Build Coastguard Worker mrs x9, SPSR_und 4374*9880d681SAndroid Build Coastguard Worker mrs x9, SPSR_fiq 4375*9880d681SAndroid Build Coastguard Worker mrs x9, FPCR 4376*9880d681SAndroid Build Coastguard Worker mrs x9, FPSR 4377*9880d681SAndroid Build Coastguard Worker mrs x9, DSPSR_EL0 4378*9880d681SAndroid Build Coastguard Worker mrs x9, DLR_EL0 4379*9880d681SAndroid Build Coastguard Worker mrs x9, IFSR32_EL2 4380*9880d681SAndroid Build Coastguard Worker mrs x9, AFSR0_EL1 4381*9880d681SAndroid Build Coastguard Worker mrs x9, AFSR0_EL2 4382*9880d681SAndroid Build Coastguard Worker mrs x9, AFSR0_EL3 4383*9880d681SAndroid Build Coastguard Worker mrs x9, AFSR1_EL1 4384*9880d681SAndroid Build Coastguard Worker mrs x9, AFSR1_EL2 4385*9880d681SAndroid Build Coastguard Worker mrs x9, AFSR1_EL3 4386*9880d681SAndroid Build Coastguard Worker mrs x9, ESR_EL1 4387*9880d681SAndroid Build Coastguard Worker mrs x9, ESR_EL2 4388*9880d681SAndroid Build Coastguard Worker mrs x9, ESR_EL3 4389*9880d681SAndroid Build Coastguard Worker mrs x9, FPEXC32_EL2 4390*9880d681SAndroid Build Coastguard Worker mrs x9, FAR_EL1 4391*9880d681SAndroid Build Coastguard Worker mrs x9, FAR_EL2 4392*9880d681SAndroid Build Coastguard Worker mrs x9, FAR_EL3 4393*9880d681SAndroid Build Coastguard Worker mrs x9, HPFAR_EL2 4394*9880d681SAndroid Build Coastguard Worker mrs x9, PAR_EL1 4395*9880d681SAndroid Build Coastguard Worker mrs x9, PMCR_EL0 4396*9880d681SAndroid Build Coastguard Worker mrs x9, PMCNTENSET_EL0 4397*9880d681SAndroid Build Coastguard Worker mrs x9, PMCNTENCLR_EL0 4398*9880d681SAndroid Build Coastguard Worker mrs x9, PMOVSCLR_EL0 4399*9880d681SAndroid Build Coastguard Worker mrs x9, PMSELR_EL0 4400*9880d681SAndroid Build Coastguard Worker mrs x9, PMCEID0_EL0 4401*9880d681SAndroid Build Coastguard Worker mrs x9, PMCEID1_EL0 4402*9880d681SAndroid Build Coastguard Worker mrs x9, PMCCNTR_EL0 4403*9880d681SAndroid Build Coastguard Worker mrs x9, PMXEVTYPER_EL0 4404*9880d681SAndroid Build Coastguard Worker mrs x9, PMXEVCNTR_EL0 4405*9880d681SAndroid Build Coastguard Worker mrs x9, PMUSERENR_EL0 4406*9880d681SAndroid Build Coastguard Worker mrs x9, PMINTENSET_EL1 4407*9880d681SAndroid Build Coastguard Worker mrs x9, PMINTENCLR_EL1 4408*9880d681SAndroid Build Coastguard Worker mrs x9, PMOVSSET_EL0 4409*9880d681SAndroid Build Coastguard Worker mrs x9, MAIR_EL1 4410*9880d681SAndroid Build Coastguard Worker mrs x9, MAIR_EL2 4411*9880d681SAndroid Build Coastguard Worker mrs x9, MAIR_EL3 4412*9880d681SAndroid Build Coastguard Worker mrs x9, AMAIR_EL1 4413*9880d681SAndroid Build Coastguard Worker mrs x9, AMAIR_EL2 4414*9880d681SAndroid Build Coastguard Worker mrs x9, AMAIR_EL3 4415*9880d681SAndroid Build Coastguard Worker mrs x9, VBAR_EL1 4416*9880d681SAndroid Build Coastguard Worker mrs x9, VBAR_EL2 4417*9880d681SAndroid Build Coastguard Worker mrs x9, VBAR_EL3 4418*9880d681SAndroid Build Coastguard Worker mrs x9, RVBAR_EL1 4419*9880d681SAndroid Build Coastguard Worker mrs x9, RVBAR_EL2 4420*9880d681SAndroid Build Coastguard Worker mrs x9, RVBAR_EL3 4421*9880d681SAndroid Build Coastguard Worker mrs x9, RMR_EL1 4422*9880d681SAndroid Build Coastguard Worker mrs x9, RMR_EL2 4423*9880d681SAndroid Build Coastguard Worker mrs x9, RMR_EL3 4424*9880d681SAndroid Build Coastguard Worker mrs x9, ISR_EL1 4425*9880d681SAndroid Build Coastguard Worker mrs x9, CONTEXTIDR_EL1 4426*9880d681SAndroid Build Coastguard Worker mrs x9, TPIDR_EL0 4427*9880d681SAndroid Build Coastguard Worker mrs x9, TPIDR_EL2 4428*9880d681SAndroid Build Coastguard Worker mrs x9, TPIDR_EL3 4429*9880d681SAndroid Build Coastguard Worker mrs x9, TPIDRRO_EL0 4430*9880d681SAndroid Build Coastguard Worker mrs x9, TPIDR_EL1 4431*9880d681SAndroid Build Coastguard Worker mrs x9, CNTFRQ_EL0 4432*9880d681SAndroid Build Coastguard Worker mrs x9, CNTPCT_EL0 4433*9880d681SAndroid Build Coastguard Worker mrs x9, CNTVCT_EL0 4434*9880d681SAndroid Build Coastguard Worker mrs x9, CNTVOFF_EL2 4435*9880d681SAndroid Build Coastguard Worker mrs x9, CNTKCTL_EL1 4436*9880d681SAndroid Build Coastguard Worker mrs x9, CNTHCTL_EL2 4437*9880d681SAndroid Build Coastguard Worker mrs x9, CNTP_TVAL_EL0 4438*9880d681SAndroid Build Coastguard Worker mrs x9, CNTHP_TVAL_EL2 4439*9880d681SAndroid Build Coastguard Worker mrs x9, CNTPS_TVAL_EL1 4440*9880d681SAndroid Build Coastguard Worker mrs x9, CNTP_CTL_EL0 4441*9880d681SAndroid Build Coastguard Worker mrs x9, CNTHP_CTL_EL2 4442*9880d681SAndroid Build Coastguard Worker mrs x9, CNTPS_CTL_EL1 4443*9880d681SAndroid Build Coastguard Worker mrs x9, CNTP_CVAL_EL0 4444*9880d681SAndroid Build Coastguard Worker mrs x9, CNTHP_CVAL_EL2 4445*9880d681SAndroid Build Coastguard Worker mrs x9, CNTPS_CVAL_EL1 4446*9880d681SAndroid Build Coastguard Worker mrs x9, CNTV_TVAL_EL0 4447*9880d681SAndroid Build Coastguard Worker mrs x9, CNTV_CTL_EL0 4448*9880d681SAndroid Build Coastguard Worker mrs x9, CNTV_CVAL_EL0 4449*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVCNTR0_EL0 4450*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVCNTR1_EL0 4451*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVCNTR2_EL0 4452*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVCNTR3_EL0 4453*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVCNTR4_EL0 4454*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVCNTR5_EL0 4455*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVCNTR6_EL0 4456*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVCNTR7_EL0 4457*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVCNTR8_EL0 4458*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVCNTR9_EL0 4459*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVCNTR10_EL0 4460*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVCNTR11_EL0 4461*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVCNTR12_EL0 4462*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVCNTR13_EL0 4463*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVCNTR14_EL0 4464*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVCNTR15_EL0 4465*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVCNTR16_EL0 4466*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVCNTR17_EL0 4467*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVCNTR18_EL0 4468*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVCNTR19_EL0 4469*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVCNTR20_EL0 4470*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVCNTR21_EL0 4471*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVCNTR22_EL0 4472*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVCNTR23_EL0 4473*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVCNTR24_EL0 4474*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVCNTR25_EL0 4475*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVCNTR26_EL0 4476*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVCNTR27_EL0 4477*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVCNTR28_EL0 4478*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVCNTR29_EL0 4479*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVCNTR30_EL0 4480*9880d681SAndroid Build Coastguard Worker mrs x9, PMCCFILTR_EL0 4481*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVTYPER0_EL0 4482*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVTYPER1_EL0 4483*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVTYPER2_EL0 4484*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVTYPER3_EL0 4485*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVTYPER4_EL0 4486*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVTYPER5_EL0 4487*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVTYPER6_EL0 4488*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVTYPER7_EL0 4489*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVTYPER8_EL0 4490*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVTYPER9_EL0 4491*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVTYPER10_EL0 4492*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVTYPER11_EL0 4493*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVTYPER12_EL0 4494*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVTYPER13_EL0 4495*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVTYPER14_EL0 4496*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVTYPER15_EL0 4497*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVTYPER16_EL0 4498*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVTYPER17_EL0 4499*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVTYPER18_EL0 4500*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVTYPER19_EL0 4501*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVTYPER20_EL0 4502*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVTYPER21_EL0 4503*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVTYPER22_EL0 4504*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVTYPER23_EL0 4505*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVTYPER24_EL0 4506*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVTYPER25_EL0 4507*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVTYPER26_EL0 4508*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVTYPER27_EL0 4509*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVTYPER28_EL0 4510*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVTYPER29_EL0 4511*9880d681SAndroid Build Coastguard Worker mrs x9, PMEVTYPER30_EL0 4512*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{teecr32_el1|TEECR32_EL1}} // encoding: [0x09,0x00,0x32,0xd5] 4513*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{osdtrrx_el1|OSDTRRX_EL1}} // encoding: [0x49,0x00,0x30,0xd5] 4514*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{mdccsr_el0|MDCCSR_EL0}} // encoding: [0x09,0x01,0x33,0xd5] 4515*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{mdccint_el1|MDCCINT_EL1}} // encoding: [0x09,0x02,0x30,0xd5] 4516*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{mdscr_el1|MDSCR_EL1}} // encoding: [0x49,0x02,0x30,0xd5] 4517*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{osdtrtx_el1|OSDTRTX_EL1}} // encoding: [0x49,0x03,0x30,0xd5] 4518*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgdtr_el0|DBGDTR_EL0}} // encoding: [0x09,0x04,0x33,0xd5] 4519*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgdtrrx_el0|DBGDTRRX_EL0}} // encoding: [0x09,0x05,0x33,0xd5] 4520*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{oseccr_el1|OSECCR_EL1}} // encoding: [0x49,0x06,0x30,0xd5] 4521*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgvcr32_el2|DBGVCR32_EL2}} // encoding: [0x09,0x07,0x34,0xd5] 4522*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgbvr0_el1|DBGBVR0_EL1}} // encoding: [0x89,0x00,0x30,0xd5] 4523*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgbvr1_el1|DBGBVR1_EL1}} // encoding: [0x89,0x01,0x30,0xd5] 4524*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgbvr2_el1|DBGBVR2_EL1}} // encoding: [0x89,0x02,0x30,0xd5] 4525*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgbvr3_el1|DBGBVR3_EL1}} // encoding: [0x89,0x03,0x30,0xd5] 4526*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgbvr4_el1|DBGBVR4_EL1}} // encoding: [0x89,0x04,0x30,0xd5] 4527*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgbvr5_el1|DBGBVR5_EL1}} // encoding: [0x89,0x05,0x30,0xd5] 4528*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgbvr6_el1|DBGBVR6_EL1}} // encoding: [0x89,0x06,0x30,0xd5] 4529*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgbvr7_el1|DBGBVR7_EL1}} // encoding: [0x89,0x07,0x30,0xd5] 4530*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgbvr8_el1|DBGBVR8_EL1}} // encoding: [0x89,0x08,0x30,0xd5] 4531*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgbvr9_el1|DBGBVR9_EL1}} // encoding: [0x89,0x09,0x30,0xd5] 4532*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgbvr10_el1|DBGBVR10_EL1}} // encoding: [0x89,0x0a,0x30,0xd5] 4533*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgbvr11_el1|DBGBVR11_EL1}} // encoding: [0x89,0x0b,0x30,0xd5] 4534*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgbvr12_el1|DBGBVR12_EL1}} // encoding: [0x89,0x0c,0x30,0xd5] 4535*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgbvr13_el1|DBGBVR13_EL1}} // encoding: [0x89,0x0d,0x30,0xd5] 4536*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgbvr14_el1|DBGBVR14_EL1}} // encoding: [0x89,0x0e,0x30,0xd5] 4537*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgbvr15_el1|DBGBVR15_EL1}} // encoding: [0x89,0x0f,0x30,0xd5] 4538*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgbcr0_el1|DBGBCR0_EL1}} // encoding: [0xa9,0x00,0x30,0xd5] 4539*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgbcr1_el1|DBGBCR1_EL1}} // encoding: [0xa9,0x01,0x30,0xd5] 4540*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgbcr2_el1|DBGBCR2_EL1}} // encoding: [0xa9,0x02,0x30,0xd5] 4541*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgbcr3_el1|DBGBCR3_EL1}} // encoding: [0xa9,0x03,0x30,0xd5] 4542*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgbcr4_el1|DBGBCR4_EL1}} // encoding: [0xa9,0x04,0x30,0xd5] 4543*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgbcr5_el1|DBGBCR5_EL1}} // encoding: [0xa9,0x05,0x30,0xd5] 4544*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgbcr6_el1|DBGBCR6_EL1}} // encoding: [0xa9,0x06,0x30,0xd5] 4545*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgbcr7_el1|DBGBCR7_EL1}} // encoding: [0xa9,0x07,0x30,0xd5] 4546*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgbcr8_el1|DBGBCR8_EL1}} // encoding: [0xa9,0x08,0x30,0xd5] 4547*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgbcr9_el1|DBGBCR9_EL1}} // encoding: [0xa9,0x09,0x30,0xd5] 4548*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgbcr10_el1|DBGBCR10_EL1}} // encoding: [0xa9,0x0a,0x30,0xd5] 4549*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgbcr11_el1|DBGBCR11_EL1}} // encoding: [0xa9,0x0b,0x30,0xd5] 4550*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgbcr12_el1|DBGBCR12_EL1}} // encoding: [0xa9,0x0c,0x30,0xd5] 4551*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgbcr13_el1|DBGBCR13_EL1}} // encoding: [0xa9,0x0d,0x30,0xd5] 4552*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgbcr14_el1|DBGBCR14_EL1}} // encoding: [0xa9,0x0e,0x30,0xd5] 4553*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgbcr15_el1|DBGBCR15_EL1}} // encoding: [0xa9,0x0f,0x30,0xd5] 4554*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgwvr0_el1|DBGWVR0_EL1}} // encoding: [0xc9,0x00,0x30,0xd5] 4555*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgwvr1_el1|DBGWVR1_EL1}} // encoding: [0xc9,0x01,0x30,0xd5] 4556*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgwvr2_el1|DBGWVR2_EL1}} // encoding: [0xc9,0x02,0x30,0xd5] 4557*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgwvr3_el1|DBGWVR3_EL1}} // encoding: [0xc9,0x03,0x30,0xd5] 4558*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgwvr4_el1|DBGWVR4_EL1}} // encoding: [0xc9,0x04,0x30,0xd5] 4559*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgwvr5_el1|DBGWVR5_EL1}} // encoding: [0xc9,0x05,0x30,0xd5] 4560*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgwvr6_el1|DBGWVR6_EL1}} // encoding: [0xc9,0x06,0x30,0xd5] 4561*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgwvr7_el1|DBGWVR7_EL1}} // encoding: [0xc9,0x07,0x30,0xd5] 4562*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgwvr8_el1|DBGWVR8_EL1}} // encoding: [0xc9,0x08,0x30,0xd5] 4563*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgwvr9_el1|DBGWVR9_EL1}} // encoding: [0xc9,0x09,0x30,0xd5] 4564*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgwvr10_el1|DBGWVR10_EL1}} // encoding: [0xc9,0x0a,0x30,0xd5] 4565*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgwvr11_el1|DBGWVR11_EL1}} // encoding: [0xc9,0x0b,0x30,0xd5] 4566*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgwvr12_el1|DBGWVR12_EL1}} // encoding: [0xc9,0x0c,0x30,0xd5] 4567*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgwvr13_el1|DBGWVR13_EL1}} // encoding: [0xc9,0x0d,0x30,0xd5] 4568*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgwvr14_el1|DBGWVR14_EL1}} // encoding: [0xc9,0x0e,0x30,0xd5] 4569*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgwvr15_el1|DBGWVR15_EL1}} // encoding: [0xc9,0x0f,0x30,0xd5] 4570*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgwcr0_el1|DBGWCR0_EL1}} // encoding: [0xe9,0x00,0x30,0xd5] 4571*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgwcr1_el1|DBGWCR1_EL1}} // encoding: [0xe9,0x01,0x30,0xd5] 4572*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgwcr2_el1|DBGWCR2_EL1}} // encoding: [0xe9,0x02,0x30,0xd5] 4573*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgwcr3_el1|DBGWCR3_EL1}} // encoding: [0xe9,0x03,0x30,0xd5] 4574*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgwcr4_el1|DBGWCR4_EL1}} // encoding: [0xe9,0x04,0x30,0xd5] 4575*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgwcr5_el1|DBGWCR5_EL1}} // encoding: [0xe9,0x05,0x30,0xd5] 4576*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgwcr6_el1|DBGWCR6_EL1}} // encoding: [0xe9,0x06,0x30,0xd5] 4577*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgwcr7_el1|DBGWCR7_EL1}} // encoding: [0xe9,0x07,0x30,0xd5] 4578*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgwcr8_el1|DBGWCR8_EL1}} // encoding: [0xe9,0x08,0x30,0xd5] 4579*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgwcr9_el1|DBGWCR9_EL1}} // encoding: [0xe9,0x09,0x30,0xd5] 4580*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgwcr10_el1|DBGWCR10_EL1}} // encoding: [0xe9,0x0a,0x30,0xd5] 4581*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgwcr11_el1|DBGWCR11_EL1}} // encoding: [0xe9,0x0b,0x30,0xd5] 4582*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgwcr12_el1|DBGWCR12_EL1}} // encoding: [0xe9,0x0c,0x30,0xd5] 4583*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgwcr13_el1|DBGWCR13_EL1}} // encoding: [0xe9,0x0d,0x30,0xd5] 4584*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgwcr14_el1|DBGWCR14_EL1}} // encoding: [0xe9,0x0e,0x30,0xd5] 4585*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgwcr15_el1|DBGWCR15_EL1}} // encoding: [0xe9,0x0f,0x30,0xd5] 4586*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{mdrar_el1|MDRAR_EL1}} // encoding: [0x09,0x10,0x30,0xd5] 4587*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{teehbr32_el1|TEEHBR32_EL1}} // encoding: [0x09,0x10,0x32,0xd5] 4588*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{oslsr_el1|OSLSR_EL1}} // encoding: [0x89,0x11,0x30,0xd5] 4589*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{osdlr_el1|OSDLR_EL1}} // encoding: [0x89,0x13,0x30,0xd5] 4590*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgprcr_el1|DBGPRCR_EL1}} // encoding: [0x89,0x14,0x30,0xd5] 4591*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgclaimset_el1|DBGCLAIMSET_EL1}} // encoding: [0xc9,0x78,0x30,0xd5] 4592*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgclaimclr_el1|DBGCLAIMCLR_EL1}} // encoding: [0xc9,0x79,0x30,0xd5] 4593*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dbgauthstatus_el1|DBGAUTHSTATUS_EL1}} // encoding: [0xc9,0x7e,0x30,0xd5] 4594*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{midr_el1|MIDR_EL1}} // encoding: [0x09,0x00,0x38,0xd5] 4595*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{ccsidr_el1|CCSIDR_EL1}} // encoding: [0x09,0x00,0x39,0xd5] 4596*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{csselr_el1|CSSELR_EL1}} // encoding: [0x09,0x00,0x3a,0xd5] 4597*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{vpidr_el2|VPIDR_EL2}} // encoding: [0x09,0x00,0x3c,0xd5] 4598*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{clidr_el1|CLIDR_EL1}} // encoding: [0x29,0x00,0x39,0xd5] 4599*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{ctr_el0|CTR_EL0}} // encoding: [0x29,0x00,0x3b,0xd5] 4600*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{mpidr_el1|MPIDR_EL1}} // encoding: [0xa9,0x00,0x38,0xd5] 4601*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{vmpidr_el2|VMPIDR_EL2}} // encoding: [0xa9,0x00,0x3c,0xd5] 4602*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{revidr_el1|REVIDR_EL1}} // encoding: [0xc9,0x00,0x38,0xd5] 4603*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{aidr_el1|AIDR_EL1}} // encoding: [0xe9,0x00,0x39,0xd5] 4604*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dczid_el0|DCZID_EL0}} // encoding: [0xe9,0x00,0x3b,0xd5] 4605*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{id_pfr0_el1|ID_PFR0_EL1}} // encoding: [0x09,0x01,0x38,0xd5] 4606*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{id_pfr1_el1|ID_PFR1_EL1}} // encoding: [0x29,0x01,0x38,0xd5] 4607*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{id_dfr0_el1|ID_DFR0_EL1}} // encoding: [0x49,0x01,0x38,0xd5] 4608*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{id_afr0_el1|ID_AFR0_EL1}} // encoding: [0x69,0x01,0x38,0xd5] 4609*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{id_mmfr0_el1|ID_MMFR0_EL1}} // encoding: [0x89,0x01,0x38,0xd5] 4610*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{id_mmfr1_el1|ID_MMFR1_EL1}} // encoding: [0xa9,0x01,0x38,0xd5] 4611*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{id_mmfr2_el1|ID_MMFR2_EL1}} // encoding: [0xc9,0x01,0x38,0xd5] 4612*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{id_mmfr3_el1|ID_MMFR3_EL1}} // encoding: [0xe9,0x01,0x38,0xd5] 4613*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{id_mmfr4_el1|ID_MMFR4_EL1}} // encoding: [0xc9,0x02,0x38,0xd5] 4614*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{id_isar0_el1|ID_ISAR0_EL1}} // encoding: [0x09,0x02,0x38,0xd5] 4615*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{id_isar1_el1|ID_ISAR1_EL1}} // encoding: [0x29,0x02,0x38,0xd5] 4616*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{id_isar2_el1|ID_ISAR2_EL1}} // encoding: [0x49,0x02,0x38,0xd5] 4617*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{id_isar3_el1|ID_ISAR3_EL1}} // encoding: [0x69,0x02,0x38,0xd5] 4618*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{id_isar4_el1|ID_ISAR4_EL1}} // encoding: [0x89,0x02,0x38,0xd5] 4619*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{id_isar5_el1|ID_ISAR5_EL1}} // encoding: [0xa9,0x02,0x38,0xd5] 4620*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{mvfr0_el1|MVFR0_EL1}} // encoding: [0x09,0x03,0x38,0xd5] 4621*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{mvfr1_el1|MVFR1_EL1}} // encoding: [0x29,0x03,0x38,0xd5] 4622*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{mvfr2_el1|MVFR2_EL1}} // encoding: [0x49,0x03,0x38,0xd5] 4623*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{id_aa64pfr0_el1|ID_AA64PFR0_EL1}} // encoding: [0x09,0x04,0x38,0xd5] 4624*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{id_aa64pfr1_el1|ID_AA64PFR1_EL1}} // encoding: [0x29,0x04,0x38,0xd5] 4625*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{id_aa64dfr0_el1|ID_AA64DFR0_EL1}} // encoding: [0x09,0x05,0x38,0xd5] 4626*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{id_aa64dfr1_el1|ID_AA64DFR1_EL1}} // encoding: [0x29,0x05,0x38,0xd5] 4627*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{id_aa64afr0_el1|ID_AA64AFR0_EL1}} // encoding: [0x89,0x05,0x38,0xd5] 4628*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{id_aa64afr1_el1|ID_AA64AFR1_EL1}} // encoding: [0xa9,0x05,0x38,0xd5] 4629*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{id_aa64isar0_el1|ID_AA64ISAR0_EL1}} // encoding: [0x09,0x06,0x38,0xd5] 4630*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{id_aa64isar1_el1|ID_AA64ISAR1_EL1}} // encoding: [0x29,0x06,0x38,0xd5] 4631*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{id_aa64mmfr0_el1|ID_AA64MMFR0_EL1}} // encoding: [0x09,0x07,0x38,0xd5] 4632*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{id_aa64mmfr1_el1|ID_AA64MMFR1_EL1}} // encoding: [0x29,0x07,0x38,0xd5] 4633*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{sctlr_el1|SCTLR_EL1}} // encoding: [0x09,0x10,0x38,0xd5] 4634*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{sctlr_el2|SCTLR_EL2}} // encoding: [0x09,0x10,0x3c,0xd5] 4635*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{sctlr_el3|SCTLR_EL3}} // encoding: [0x09,0x10,0x3e,0xd5] 4636*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{actlr_el1|ACTLR_EL1}} // encoding: [0x29,0x10,0x38,0xd5] 4637*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{actlr_el2|ACTLR_EL2}} // encoding: [0x29,0x10,0x3c,0xd5] 4638*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{actlr_el3|ACTLR_EL3}} // encoding: [0x29,0x10,0x3e,0xd5] 4639*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{cpacr_el1|CPACR_EL1}} // encoding: [0x49,0x10,0x38,0xd5] 4640*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{hcr_el2|HCR_EL2}} // encoding: [0x09,0x11,0x3c,0xd5] 4641*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{scr_el3|SCR_EL3}} // encoding: [0x09,0x11,0x3e,0xd5] 4642*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{mdcr_el2|MDCR_EL2}} // encoding: [0x29,0x11,0x3c,0xd5] 4643*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{sder32_el3|SDER32_EL3}} // encoding: [0x29,0x11,0x3e,0xd5] 4644*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{cptr_el2|CPTR_EL2}} // encoding: [0x49,0x11,0x3c,0xd5] 4645*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{cptr_el3|CPTR_EL3}} // encoding: [0x49,0x11,0x3e,0xd5] 4646*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{hstr_el2|HSTR_EL2}} // encoding: [0x69,0x11,0x3c,0xd5] 4647*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{hacr_el2|HACR_EL2}} // encoding: [0xe9,0x11,0x3c,0xd5] 4648*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{mdcr_el3|MDCR_EL3}} // encoding: [0x29,0x13,0x3e,0xd5] 4649*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{ttbr0_el1|TTBR0_EL1}} // encoding: [0x09,0x20,0x38,0xd5] 4650*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{ttbr0_el2|TTBR0_EL2}} // encoding: [0x09,0x20,0x3c,0xd5] 4651*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{ttbr0_el3|TTBR0_EL3}} // encoding: [0x09,0x20,0x3e,0xd5] 4652*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{ttbr1_el1|TTBR1_EL1}} // encoding: [0x29,0x20,0x38,0xd5] 4653*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{tcr_el1|TCR_EL1}} // encoding: [0x49,0x20,0x38,0xd5] 4654*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{tcr_el2|TCR_EL2}} // encoding: [0x49,0x20,0x3c,0xd5] 4655*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{tcr_el3|TCR_EL3}} // encoding: [0x49,0x20,0x3e,0xd5] 4656*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{vttbr_el2|VTTBR_EL2}} // encoding: [0x09,0x21,0x3c,0xd5] 4657*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{vtcr_el2|VTCR_EL2}} // encoding: [0x49,0x21,0x3c,0xd5] 4658*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dacr32_el2|DACR32_EL2}} // encoding: [0x09,0x30,0x3c,0xd5] 4659*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{spsr_el1|SPSR_EL1}} // encoding: [0x09,0x40,0x38,0xd5] 4660*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{spsr_el2|SPSR_EL2}} // encoding: [0x09,0x40,0x3c,0xd5] 4661*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{spsr_el3|SPSR_EL3}} // encoding: [0x09,0x40,0x3e,0xd5] 4662*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{elr_el1|ELR_EL1}} // encoding: [0x29,0x40,0x38,0xd5] 4663*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{elr_el2|ELR_EL2}} // encoding: [0x29,0x40,0x3c,0xd5] 4664*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{elr_el3|ELR_EL3}} // encoding: [0x29,0x40,0x3e,0xd5] 4665*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{sp_el0|SP_EL0}} // encoding: [0x09,0x41,0x38,0xd5] 4666*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{sp_el1|SP_EL1}} // encoding: [0x09,0x41,0x3c,0xd5] 4667*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{sp_el2|SP_EL2}} // encoding: [0x09,0x41,0x3e,0xd5] 4668*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{SPSel|SPSEL}} // encoding: [0x09,0x42,0x38,0xd5] 4669*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{nzcv|NZCV}} // encoding: [0x09,0x42,0x3b,0xd5] 4670*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{daif|DAIF}} // encoding: [0x29,0x42,0x3b,0xd5] 4671*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{CurrentEL|CURRENTEL}} // encoding: [0x49,0x42,0x38,0xd5] 4672*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{SPSR_irq|SPSR_IRQ}} // encoding: [0x09,0x43,0x3c,0xd5] 4673*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{SPSR_abt|SPSR_ABT}} // encoding: [0x29,0x43,0x3c,0xd5] 4674*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{SPSR_und|SPSR_UND}} // encoding: [0x49,0x43,0x3c,0xd5] 4675*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{SPSR_fiq|SPSR_FIQ}} // encoding: [0x69,0x43,0x3c,0xd5] 4676*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{fpcr|FPCR}} // encoding: [0x09,0x44,0x3b,0xd5] 4677*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{fpsr|FPSR}} // encoding: [0x29,0x44,0x3b,0xd5] 4678*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dspsr_el0|DSPSR_EL0}} // encoding: [0x09,0x45,0x3b,0xd5] 4679*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{dlr_el0|DLR_EL0}} // encoding: [0x29,0x45,0x3b,0xd5] 4680*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{ifsr32_el2|IFSR32_EL2}} // encoding: [0x29,0x50,0x3c,0xd5] 4681*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{afsr0_el1|AFSR0_EL1}} // encoding: [0x09,0x51,0x38,0xd5] 4682*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{afsr0_el2|AFSR0_EL2}} // encoding: [0x09,0x51,0x3c,0xd5] 4683*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{afsr0_el3|AFSR0_EL3}} // encoding: [0x09,0x51,0x3e,0xd5] 4684*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{afsr1_el1|AFSR1_EL1}} // encoding: [0x29,0x51,0x38,0xd5] 4685*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{afsr1_el2|AFSR1_EL2}} // encoding: [0x29,0x51,0x3c,0xd5] 4686*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{afsr1_el3|AFSR1_EL3}} // encoding: [0x29,0x51,0x3e,0xd5] 4687*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{esr_el1|ESR_EL1}} // encoding: [0x09,0x52,0x38,0xd5] 4688*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{esr_el2|ESR_EL2}} // encoding: [0x09,0x52,0x3c,0xd5] 4689*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{esr_el3|ESR_EL3}} // encoding: [0x09,0x52,0x3e,0xd5] 4690*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{fpexc32_el2|FPEXC32_EL2}} // encoding: [0x09,0x53,0x3c,0xd5] 4691*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{far_el1|FAR_EL1}} // encoding: [0x09,0x60,0x38,0xd5] 4692*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{far_el2|FAR_EL2}} // encoding: [0x09,0x60,0x3c,0xd5] 4693*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{far_el3|FAR_EL3}} // encoding: [0x09,0x60,0x3e,0xd5] 4694*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{hpfar_el2|HPFAR_EL2}} // encoding: [0x89,0x60,0x3c,0xd5] 4695*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{par_el1|PAR_EL1}} // encoding: [0x09,0x74,0x38,0xd5] 4696*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmcr_el0|PMCR_EL0}} // encoding: [0x09,0x9c,0x3b,0xd5] 4697*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmcntenset_el0|PMCNTENSET_EL0}} // encoding: [0x29,0x9c,0x3b,0xd5] 4698*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmcntenclr_el0|PMCNTENCLR_EL0}} // encoding: [0x49,0x9c,0x3b,0xd5] 4699*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmovsclr_el0|PMOVSCLR_EL0}} // encoding: [0x69,0x9c,0x3b,0xd5] 4700*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmselr_el0|PMSELR_EL0}} // encoding: [0xa9,0x9c,0x3b,0xd5] 4701*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmceid0_el0|PMCEID0_EL0}} // encoding: [0xc9,0x9c,0x3b,0xd5] 4702*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmceid1_el0|PMCEID1_EL0}} // encoding: [0xe9,0x9c,0x3b,0xd5] 4703*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmccntr_el0|PMCCNTR_EL0}} // encoding: [0x09,0x9d,0x3b,0xd5] 4704*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmxevtyper_el0|PMXEVTYPER_EL0}} // encoding: [0x29,0x9d,0x3b,0xd5] 4705*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmxevcntr_el0|PMXEVCNTR_EL0}} // encoding: [0x49,0x9d,0x3b,0xd5] 4706*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmuserenr_el0|PMUSERENR_EL0}} // encoding: [0x09,0x9e,0x3b,0xd5] 4707*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmintenset_el1|PMINTENSET_EL1}} // encoding: [0x29,0x9e,0x38,0xd5] 4708*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmintenclr_el1|PMINTENCLR_EL1}} // encoding: [0x49,0x9e,0x38,0xd5] 4709*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmovsset_el0|PMOVSSET_EL0}} // encoding: [0x69,0x9e,0x3b,0xd5] 4710*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{mair_el1|MAIR_EL1}} // encoding: [0x09,0xa2,0x38,0xd5] 4711*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{mair_el2|MAIR_EL2}} // encoding: [0x09,0xa2,0x3c,0xd5] 4712*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{mair_el3|MAIR_EL3}} // encoding: [0x09,0xa2,0x3e,0xd5] 4713*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{amair_el1|AMAIR_EL1}} // encoding: [0x09,0xa3,0x38,0xd5] 4714*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{amair_el2|AMAIR_EL2}} // encoding: [0x09,0xa3,0x3c,0xd5] 4715*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{amair_el3|AMAIR_EL3}} // encoding: [0x09,0xa3,0x3e,0xd5] 4716*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{vbar_el1|VBAR_EL1}} // encoding: [0x09,0xc0,0x38,0xd5] 4717*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{vbar_el2|VBAR_EL2}} // encoding: [0x09,0xc0,0x3c,0xd5] 4718*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{vbar_el3|VBAR_EL3}} // encoding: [0x09,0xc0,0x3e,0xd5] 4719*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{rvbar_el1|RVBAR_EL1}} // encoding: [0x29,0xc0,0x38,0xd5] 4720*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{rvbar_el2|RVBAR_EL2}} // encoding: [0x29,0xc0,0x3c,0xd5] 4721*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{rvbar_el3|RVBAR_EL3}} // encoding: [0x29,0xc0,0x3e,0xd5] 4722*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{rmr_el1|RMR_EL1}} // encoding: [0x49,0xc0,0x38,0xd5] 4723*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{rmr_el2|RMR_EL2}} // encoding: [0x49,0xc0,0x3c,0xd5] 4724*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{rmr_el3|RMR_EL3}} // encoding: [0x49,0xc0,0x3e,0xd5] 4725*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{isr_el1|ISR_EL1}} // encoding: [0x09,0xc1,0x38,0xd5] 4726*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{contextidr_el1|CONTEXTIDR_EL1}} // encoding: [0x29,0xd0,0x38,0xd5] 4727*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{tpidr_el0|TPIDR_EL0}} // encoding: [0x49,0xd0,0x3b,0xd5] 4728*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{tpidr_el2|TPIDR_EL2}} // encoding: [0x49,0xd0,0x3c,0xd5] 4729*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{tpidr_el3|TPIDR_EL3}} // encoding: [0x49,0xd0,0x3e,0xd5] 4730*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{tpidrro_el0|TPIDRRO_EL0}} // encoding: [0x69,0xd0,0x3b,0xd5] 4731*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{tpidr_el1|TPIDR_EL1}} // encoding: [0x89,0xd0,0x38,0xd5] 4732*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{cntfrq_el0|CNTFRQ_EL0}} // encoding: [0x09,0xe0,0x3b,0xd5] 4733*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{cntpct_el0|CNTPCT_EL0}} // encoding: [0x29,0xe0,0x3b,0xd5] 4734*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{cntvct_el0|CNTVCT_EL0}} // encoding: [0x49,0xe0,0x3b,0xd5] 4735*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{cntvoff_el2|CNTVOFF_EL2}} // encoding: [0x69,0xe0,0x3c,0xd5] 4736*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{cntkctl_el1|CNTKCTL_EL1}} // encoding: [0x09,0xe1,0x38,0xd5] 4737*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{cnthctl_el2|CNTHCTL_EL2}} // encoding: [0x09,0xe1,0x3c,0xd5] 4738*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{cntp_tval_el0|CNTP_TVAL_EL0}} // encoding: [0x09,0xe2,0x3b,0xd5] 4739*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{cnthp_tval_el2|CNTHP_TVAL_EL2}} // encoding: [0x09,0xe2,0x3c,0xd5] 4740*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{cntps_tval_el1|CNTPS_TVAL_EL1}} // encoding: [0x09,0xe2,0x3f,0xd5] 4741*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{cntp_ctl_el0|CNTP_CTL_EL0}} // encoding: [0x29,0xe2,0x3b,0xd5] 4742*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{cnthp_ctl_el2|CNTHP_CTL_EL2}} // encoding: [0x29,0xe2,0x3c,0xd5] 4743*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{cntps_ctl_el1|CNTPS_CTL_EL1}} // encoding: [0x29,0xe2,0x3f,0xd5] 4744*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{cntp_cval_el0|CNTP_CVAL_EL0}} // encoding: [0x49,0xe2,0x3b,0xd5] 4745*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{cnthp_cval_el2|CNTHP_CVAL_EL2}} // encoding: [0x49,0xe2,0x3c,0xd5] 4746*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{cntps_cval_el1|CNTPS_CVAL_EL1}} // encoding: [0x49,0xe2,0x3f,0xd5] 4747*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{cntv_tval_el0|CNTV_TVAL_EL0}} // encoding: [0x09,0xe3,0x3b,0xd5] 4748*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{cntv_ctl_el0|CNTV_CTL_EL0}} // encoding: [0x29,0xe3,0x3b,0xd5] 4749*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{cntv_cval_el0|CNTV_CVAL_EL0}} // encoding: [0x49,0xe3,0x3b,0xd5] 4750*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevcntr0_el0|PMEVCNTR0_EL0}} // encoding: [0x09,0xe8,0x3b,0xd5] 4751*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevcntr1_el0|PMEVCNTR1_EL0}} // encoding: [0x29,0xe8,0x3b,0xd5] 4752*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevcntr2_el0|PMEVCNTR2_EL0}} // encoding: [0x49,0xe8,0x3b,0xd5] 4753*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevcntr3_el0|PMEVCNTR3_EL0}} // encoding: [0x69,0xe8,0x3b,0xd5] 4754*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevcntr4_el0|PMEVCNTR4_EL0}} // encoding: [0x89,0xe8,0x3b,0xd5] 4755*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevcntr5_el0|PMEVCNTR5_EL0}} // encoding: [0xa9,0xe8,0x3b,0xd5] 4756*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevcntr6_el0|PMEVCNTR6_EL0}} // encoding: [0xc9,0xe8,0x3b,0xd5] 4757*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevcntr7_el0|PMEVCNTR7_EL0}} // encoding: [0xe9,0xe8,0x3b,0xd5] 4758*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevcntr8_el0|PMEVCNTR8_EL0}} // encoding: [0x09,0xe9,0x3b,0xd5] 4759*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevcntr9_el0|PMEVCNTR9_EL0}} // encoding: [0x29,0xe9,0x3b,0xd5] 4760*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevcntr10_el0|PMEVCNTR10_EL0}} // encoding: [0x49,0xe9,0x3b,0xd5] 4761*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevcntr11_el0|PMEVCNTR11_EL0}} // encoding: [0x69,0xe9,0x3b,0xd5] 4762*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevcntr12_el0|PMEVCNTR12_EL0}} // encoding: [0x89,0xe9,0x3b,0xd5] 4763*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevcntr13_el0|PMEVCNTR13_EL0}} // encoding: [0xa9,0xe9,0x3b,0xd5] 4764*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevcntr14_el0|PMEVCNTR14_EL0}} // encoding: [0xc9,0xe9,0x3b,0xd5] 4765*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevcntr15_el0|PMEVCNTR15_EL0}} // encoding: [0xe9,0xe9,0x3b,0xd5] 4766*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevcntr16_el0|PMEVCNTR16_EL0}} // encoding: [0x09,0xea,0x3b,0xd5] 4767*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevcntr17_el0|PMEVCNTR17_EL0}} // encoding: [0x29,0xea,0x3b,0xd5] 4768*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevcntr18_el0|PMEVCNTR18_EL0}} // encoding: [0x49,0xea,0x3b,0xd5] 4769*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevcntr19_el0|PMEVCNTR19_EL0}} // encoding: [0x69,0xea,0x3b,0xd5] 4770*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevcntr20_el0|PMEVCNTR20_EL0}} // encoding: [0x89,0xea,0x3b,0xd5] 4771*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevcntr21_el0|PMEVCNTR21_EL0}} // encoding: [0xa9,0xea,0x3b,0xd5] 4772*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevcntr22_el0|PMEVCNTR22_EL0}} // encoding: [0xc9,0xea,0x3b,0xd5] 4773*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevcntr23_el0|PMEVCNTR23_EL0}} // encoding: [0xe9,0xea,0x3b,0xd5] 4774*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevcntr24_el0|PMEVCNTR24_EL0}} // encoding: [0x09,0xeb,0x3b,0xd5] 4775*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevcntr25_el0|PMEVCNTR25_EL0}} // encoding: [0x29,0xeb,0x3b,0xd5] 4776*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevcntr26_el0|PMEVCNTR26_EL0}} // encoding: [0x49,0xeb,0x3b,0xd5] 4777*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevcntr27_el0|PMEVCNTR27_EL0}} // encoding: [0x69,0xeb,0x3b,0xd5] 4778*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevcntr28_el0|PMEVCNTR28_EL0}} // encoding: [0x89,0xeb,0x3b,0xd5] 4779*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevcntr29_el0|PMEVCNTR29_EL0}} // encoding: [0xa9,0xeb,0x3b,0xd5] 4780*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevcntr30_el0|PMEVCNTR30_EL0}} // encoding: [0xc9,0xeb,0x3b,0xd5] 4781*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmccfiltr_el0|PMCCFILTR_EL0}} // encoding: [0xe9,0xef,0x3b,0xd5] 4782*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevtyper0_el0|PMEVTYPER0_EL0}} // encoding: [0x09,0xec,0x3b,0xd5] 4783*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevtyper1_el0|PMEVTYPER1_EL0}} // encoding: [0x29,0xec,0x3b,0xd5] 4784*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevtyper2_el0|PMEVTYPER2_EL0}} // encoding: [0x49,0xec,0x3b,0xd5] 4785*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevtyper3_el0|PMEVTYPER3_EL0}} // encoding: [0x69,0xec,0x3b,0xd5] 4786*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevtyper4_el0|PMEVTYPER4_EL0}} // encoding: [0x89,0xec,0x3b,0xd5] 4787*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevtyper5_el0|PMEVTYPER5_EL0}} // encoding: [0xa9,0xec,0x3b,0xd5] 4788*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevtyper6_el0|PMEVTYPER6_EL0}} // encoding: [0xc9,0xec,0x3b,0xd5] 4789*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevtyper7_el0|PMEVTYPER7_EL0}} // encoding: [0xe9,0xec,0x3b,0xd5] 4790*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevtyper8_el0|PMEVTYPER8_EL0}} // encoding: [0x09,0xed,0x3b,0xd5] 4791*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevtyper9_el0|PMEVTYPER9_EL0}} // encoding: [0x29,0xed,0x3b,0xd5] 4792*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevtyper10_el0|PMEVTYPER10_EL0}} // encoding: [0x49,0xed,0x3b,0xd5] 4793*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevtyper11_el0|PMEVTYPER11_EL0}} // encoding: [0x69,0xed,0x3b,0xd5] 4794*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevtyper12_el0|PMEVTYPER12_EL0}} // encoding: [0x89,0xed,0x3b,0xd5] 4795*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevtyper13_el0|PMEVTYPER13_EL0}} // encoding: [0xa9,0xed,0x3b,0xd5] 4796*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevtyper14_el0|PMEVTYPER14_EL0}} // encoding: [0xc9,0xed,0x3b,0xd5] 4797*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevtyper15_el0|PMEVTYPER15_EL0}} // encoding: [0xe9,0xed,0x3b,0xd5] 4798*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevtyper16_el0|PMEVTYPER16_EL0}} // encoding: [0x09,0xee,0x3b,0xd5] 4799*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevtyper17_el0|PMEVTYPER17_EL0}} // encoding: [0x29,0xee,0x3b,0xd5] 4800*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevtyper18_el0|PMEVTYPER18_EL0}} // encoding: [0x49,0xee,0x3b,0xd5] 4801*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevtyper19_el0|PMEVTYPER19_EL0}} // encoding: [0x69,0xee,0x3b,0xd5] 4802*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevtyper20_el0|PMEVTYPER20_EL0}} // encoding: [0x89,0xee,0x3b,0xd5] 4803*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevtyper21_el0|PMEVTYPER21_EL0}} // encoding: [0xa9,0xee,0x3b,0xd5] 4804*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevtyper22_el0|PMEVTYPER22_EL0}} // encoding: [0xc9,0xee,0x3b,0xd5] 4805*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevtyper23_el0|PMEVTYPER23_EL0}} // encoding: [0xe9,0xee,0x3b,0xd5] 4806*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevtyper24_el0|PMEVTYPER24_EL0}} // encoding: [0x09,0xef,0x3b,0xd5] 4807*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevtyper25_el0|PMEVTYPER25_EL0}} // encoding: [0x29,0xef,0x3b,0xd5] 4808*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevtyper26_el0|PMEVTYPER26_EL0}} // encoding: [0x49,0xef,0x3b,0xd5] 4809*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevtyper27_el0|PMEVTYPER27_EL0}} // encoding: [0x69,0xef,0x3b,0xd5] 4810*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevtyper28_el0|PMEVTYPER28_EL0}} // encoding: [0x89,0xef,0x3b,0xd5] 4811*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevtyper29_el0|PMEVTYPER29_EL0}} // encoding: [0xa9,0xef,0x3b,0xd5] 4812*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x9, {{pmevtyper30_el0|PMEVTYPER30_EL0}} // encoding: [0xc9,0xef,0x3b,0xd5] 4813*9880d681SAndroid Build Coastguard Worker 4814*9880d681SAndroid Build Coastguard Worker mrs x12, s3_7_c15_c1_5 4815*9880d681SAndroid Build Coastguard Worker mrs x13, s3_2_c11_c15_7 4816*9880d681SAndroid Build Coastguard Worker mrs x14, s1_3_c9_c2_1 4817*9880d681SAndroid Build Coastguard Worker msr s3_0_c15_c0_0, x12 4818*9880d681SAndroid Build Coastguard Worker msr s3_7_c11_c13_7, x5 4819*9880d681SAndroid Build Coastguard Worker msr s1_3_c9_c2_1, x4 4820*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x12, {{s3_7_c15_c1_5|S3_7_C15_C1_5}} // encoding: [0xac,0xf1,0x3f,0xd5] 4821*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x13, {{s3_2_c11_c15_7|S3_2_C11_C15_7}} // encoding: [0xed,0xbf,0x3a,0xd5] 4822*9880d681SAndroid Build Coastguard Worker// CHECK: mrs x14, {{s1_3_c9_c2_1|S1_3_C9_C2_1}} // encoding: [0x2e,0x92,0x2b,0xd5] 4823*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{s3_0_c15_c0_0|S3_0_C15_C0_0}}, x12 // encoding: [0x0c,0xf0,0x18,0xd5] 4824*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{s3_7_c11_c13_7|S3_7_C11_C13_7}}, x5 // encoding: [0xe5,0xbd,0x1f,0xd5] 4825*9880d681SAndroid Build Coastguard Worker// CHECK: msr {{s1_3_c9_c2_1|S1_3_C9_C2_1}}, x4 // encoding: [0x24,0x92,0x0b,0xd5] 4826*9880d681SAndroid Build Coastguard Worker 4827*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 4828*9880d681SAndroid Build Coastguard Worker// Unconditional branch (immediate) 4829*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 4830*9880d681SAndroid Build Coastguard Worker 4831*9880d681SAndroid Build Coastguard Worker tbz x5, #0, somewhere 4832*9880d681SAndroid Build Coastguard Worker tbz xzr, #63, elsewhere 4833*9880d681SAndroid Build Coastguard Worker tbnz x5, #45, nowhere 4834*9880d681SAndroid Build Coastguard Worker 4835*9880d681SAndroid Build Coastguard Worker// CHECK: tbz w5, #0, somewhere // encoding: [0bAAA00101,A,0b00000AAA,0x36] 4836*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: somewhere, kind: fixup_aarch64_pcrel_branch14 4837*9880d681SAndroid Build Coastguard Worker// CHECK: tbz xzr, #63, elsewhere // encoding: [0bAAA11111,A,0b11111AAA,0xb6] 4838*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: elsewhere, kind: fixup_aarch64_pcrel_branch14 4839*9880d681SAndroid Build Coastguard Worker// CHECK: tbnz x5, #45, nowhere // encoding: [0bAAA00101,A,0b01101AAA,0xb7] 4840*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: nowhere, kind: fixup_aarch64_pcrel_branch14 4841*9880d681SAndroid Build Coastguard Worker 4842*9880d681SAndroid Build Coastguard Worker 4843*9880d681SAndroid Build Coastguard Worker tbnz w3, #2, there 4844*9880d681SAndroid Build Coastguard Worker tbnz wzr, #31, nowhere 4845*9880d681SAndroid Build Coastguard Worker tbz w5, #12, anywhere 4846*9880d681SAndroid Build Coastguard Worker 4847*9880d681SAndroid Build Coastguard Worker// CHECK: tbnz w3, #2, there // encoding: [0bAAA00011,A,0b00010AAA,0x37] 4848*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: there, kind: fixup_aarch64_pcrel_branch14 4849*9880d681SAndroid Build Coastguard Worker// CHECK: tbnz wzr, #31, nowhere // encoding: [0bAAA11111,A,0b11111AAA,0x37] 4850*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: nowhere, kind: fixup_aarch64_pcrel_branch14 4851*9880d681SAndroid Build Coastguard Worker// CHECK: tbz w5, #12, anywhere // encoding: [0bAAA00101,A,0b01100AAA,0x36] 4852*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: anywhere, kind: fixup_aarch64_pcrel_branch14 4853*9880d681SAndroid Build Coastguard Worker 4854*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 4855*9880d681SAndroid Build Coastguard Worker// Unconditional branch (immediate) 4856*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 4857*9880d681SAndroid Build Coastguard Worker 4858*9880d681SAndroid Build Coastguard Worker b somewhere 4859*9880d681SAndroid Build Coastguard Worker bl elsewhere 4860*9880d681SAndroid Build Coastguard Worker 4861*9880d681SAndroid Build Coastguard Worker// CHECK: b somewhere // encoding: [A,A,A,0b000101AA] 4862*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: somewhere, kind: fixup_aarch64_pcrel_branch26 4863*9880d681SAndroid Build Coastguard Worker// CHECK: bl elsewhere // encoding: [A,A,A,0b100101AA] 4864*9880d681SAndroid Build Coastguard Worker// CHECK: // fixup A - offset: 0, value: elsewhere, kind: fixup_aarch64_pcrel_call26 4865*9880d681SAndroid Build Coastguard Worker 4866*9880d681SAndroid Build Coastguard Worker b #4 4867*9880d681SAndroid Build Coastguard Worker bl #0 4868*9880d681SAndroid Build Coastguard Worker b #134217724 4869*9880d681SAndroid Build Coastguard Worker bl #-134217728 4870*9880d681SAndroid Build Coastguard Worker// CHECK: b #4 // encoding: [0x01,0x00,0x00,0x14] 4871*9880d681SAndroid Build Coastguard Worker// CHECK: bl #0 // encoding: [0x00,0x00,0x00,0x94] 4872*9880d681SAndroid Build Coastguard Worker// CHECK: b #134217724 // encoding: [0xff,0xff,0xff,0x15] 4873*9880d681SAndroid Build Coastguard Worker// CHECK: bl #-134217728 // encoding: [0x00,0x00,0x00,0x96] 4874*9880d681SAndroid Build Coastguard Worker 4875*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 4876*9880d681SAndroid Build Coastguard Worker// Unconditional branch (register) 4877*9880d681SAndroid Build Coastguard Worker//------------------------------------------------------------------------------ 4878*9880d681SAndroid Build Coastguard Worker 4879*9880d681SAndroid Build Coastguard Worker br x20 4880*9880d681SAndroid Build Coastguard Worker blr xzr 4881*9880d681SAndroid Build Coastguard Worker ret x10 4882*9880d681SAndroid Build Coastguard Worker// CHECK: br x20 // encoding: [0x80,0x02,0x1f,0xd6] 4883*9880d681SAndroid Build Coastguard Worker// CHECK: blr xzr // encoding: [0xe0,0x03,0x3f,0xd6] 4884*9880d681SAndroid Build Coastguard Worker// CHECK: ret x10 // encoding: [0x40,0x01,0x5f,0xd6] 4885*9880d681SAndroid Build Coastguard Worker 4886*9880d681SAndroid Build Coastguard Worker ret 4887*9880d681SAndroid Build Coastguard Worker eret 4888*9880d681SAndroid Build Coastguard Worker drps 4889*9880d681SAndroid Build Coastguard Worker// CHECK: ret // encoding: [0xc0,0x03,0x5f,0xd6] 4890*9880d681SAndroid Build Coastguard Worker// CHECK: eret // encoding: [0xe0,0x03,0x9f,0xd6] 4891*9880d681SAndroid Build Coastguard Worker// CHECK: drps // encoding: [0xe0,0x03,0xbf,0xd6] 4892*9880d681SAndroid Build Coastguard Worker 4893