1*9880d681SAndroid Build Coastguard Worker@ RUN: llvm-mc -triple=armv7-apple-darwin -show-encoding < %s | FileCheck %s 2*9880d681SAndroid Build Coastguard Worker .syntax unified 3*9880d681SAndroid Build Coastguard Worker .globl _func 4*9880d681SAndroid Build Coastguard Worker 5*9880d681SAndroid Build Coastguard Worker@ Check that the assembler can handle the documented syntax from the ARM ARM 6*9880d681SAndroid Build Coastguard Worker@ for loads and stores. 7*9880d681SAndroid Build Coastguard Worker 8*9880d681SAndroid Build Coastguard Worker_func: 9*9880d681SAndroid Build Coastguard Worker@ CHECK: _func 10*9880d681SAndroid Build Coastguard Worker 11*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 12*9880d681SAndroid Build Coastguard Worker@ LDR (immediate) 13*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 14*9880d681SAndroid Build Coastguard Worker ldr r5, [r7] 15*9880d681SAndroid Build Coastguard Worker ldr r6, [r3, #63] 16*9880d681SAndroid Build Coastguard Worker ldr r2, [r4, #4095]! 17*9880d681SAndroid Build Coastguard Worker ldr r1, [r2], #30 18*9880d681SAndroid Build Coastguard Worker ldr r3, [r1], #-30 19*9880d681SAndroid Build Coastguard Worker ldr r9, [r2], #-0 20*9880d681SAndroid Build Coastguard Worker 21*9880d681SAndroid Build Coastguard Worker@ CHECK: ldr r5, [r7] @ encoding: [0x00,0x50,0x97,0xe5] 22*9880d681SAndroid Build Coastguard Worker@ CHECK: ldr r6, [r3, #63] @ encoding: [0x3f,0x60,0x93,0xe5] 23*9880d681SAndroid Build Coastguard Worker@ CHECK: ldr r2, [r4, #4095]! @ encoding: [0xff,0x2f,0xb4,0xe5] 24*9880d681SAndroid Build Coastguard Worker@ CHECK: ldr r1, [r2], #30 @ encoding: [0x1e,0x10,0x92,0xe4] 25*9880d681SAndroid Build Coastguard Worker@ CHECK: ldr r3, [r1], #-30 @ encoding: [0x1e,0x30,0x11,0xe4] 26*9880d681SAndroid Build Coastguard Worker@ CHECK: ldr r9, [r2], #-0 @ encoding: [0x00,0x90,0x12,0xe4] 27*9880d681SAndroid Build Coastguard Worker 28*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 29*9880d681SAndroid Build Coastguard Worker@ FIXME: LDR (literal) 30*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 31*9880d681SAndroid Build Coastguard Worker@ label operands currently assert the show-encoding asm comment helper due 32*9880d681SAndroid Build Coastguard Worker@ to the use of non-contiguous bit ranges for fixups in ARM. Once that's 33*9880d681SAndroid Build Coastguard Worker@ cleaned up, we can write useful assembly testcases for these sorts of 34*9880d681SAndroid Build Coastguard Worker@ instructions. 35*9880d681SAndroid Build Coastguard Worker 36*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 37*9880d681SAndroid Build Coastguard Worker@ LDR (register) 38*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 39*9880d681SAndroid Build Coastguard Worker ldr r3, [r8, r1] 40*9880d681SAndroid Build Coastguard Worker ldr r2, [r5, -r3] 41*9880d681SAndroid Build Coastguard Worker ldr r1, [r5, r9]! 42*9880d681SAndroid Build Coastguard Worker ldr r6, [r7, -r8]! 43*9880d681SAndroid Build Coastguard Worker ldr r1, [r0, r2, lsr #3]! 44*9880d681SAndroid Build Coastguard Worker ldr r5, [r9], r2 45*9880d681SAndroid Build Coastguard Worker ldr r4, [r3], -r6 46*9880d681SAndroid Build Coastguard Worker ldr r3, [r8, -r2, lsl #15] 47*9880d681SAndroid Build Coastguard Worker ldr r1, [r5], r3, asr #15 48*9880d681SAndroid Build Coastguard Worker 49*9880d681SAndroid Build Coastguard Worker@ CHECK: ldr r3, [r8, r1] @ encoding: [0x01,0x30,0x98,0xe7] 50*9880d681SAndroid Build Coastguard Worker@ CHECK: ldr r2, [r5, -r3] @ encoding: [0x03,0x20,0x15,0xe7] 51*9880d681SAndroid Build Coastguard Worker@ CHECK: ldr r1, [r5, r9]! @ encoding: [0x09,0x10,0xb5,0xe7] 52*9880d681SAndroid Build Coastguard Worker@ CHECK: ldr r6, [r7, -r8]! @ encoding: [0x08,0x60,0x37,0xe7] 53*9880d681SAndroid Build Coastguard Worker@ CHECK: ldr r1, [r0, r2, lsr #3]! @ encoding: [0xa2,0x11,0xb0,0xe7] 54*9880d681SAndroid Build Coastguard Worker@ CHECK: ldr r5, [r9], r2 @ encoding: [0x02,0x50,0x99,0xe6] 55*9880d681SAndroid Build Coastguard Worker@ CHECK: ldr r4, [r3], -r6 @ encoding: [0x06,0x40,0x13,0xe6] 56*9880d681SAndroid Build Coastguard Worker@ CHECK: ldr r3, [r8, -r2, lsl #15] @ encoding: [0x82,0x37,0x18,0xe7] 57*9880d681SAndroid Build Coastguard Worker@ CHECK: ldr r1, [r5], r3, asr #15 @ encoding: [0xc3,0x17,0x95,0xe6] 58*9880d681SAndroid Build Coastguard Worker 59*9880d681SAndroid Build Coastguard Worker 60*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 61*9880d681SAndroid Build Coastguard Worker@ LDRB (immediate) 62*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 63*9880d681SAndroid Build Coastguard Worker ldrb r3, [r8] 64*9880d681SAndroid Build Coastguard Worker ldrb r1, [sp, #63] 65*9880d681SAndroid Build Coastguard Worker ldrb r9, [r3, #4095]! 66*9880d681SAndroid Build Coastguard Worker ldrb r8, [r1], #22 67*9880d681SAndroid Build Coastguard Worker ldrb r2, [r7], #-19 68*9880d681SAndroid Build Coastguard Worker 69*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrb r3, [r8] @ encoding: [0x00,0x30,0xd8,0xe5] 70*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrb r1, [sp, #63] @ encoding: [0x3f,0x10,0xdd,0xe5] 71*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrb r9, [r3, #4095]! @ encoding: [0xff,0x9f,0xf3,0xe5] 72*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrb r8, [r1], #22 @ encoding: [0x16,0x80,0xd1,0xe4] 73*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrb r2, [r7], #-19 @ encoding: [0x13,0x20,0x57,0xe4] 74*9880d681SAndroid Build Coastguard Worker 75*9880d681SAndroid Build Coastguard Worker 76*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 77*9880d681SAndroid Build Coastguard Worker@ LDRB (register) 78*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 79*9880d681SAndroid Build Coastguard Worker ldrb r9, [r8, r5] 80*9880d681SAndroid Build Coastguard Worker ldrb r1, [r5, -r1] 81*9880d681SAndroid Build Coastguard Worker ldrb r3, [r5, r2]! 82*9880d681SAndroid Build Coastguard Worker ldrb r6, [r9, -r3]! 83*9880d681SAndroid Build Coastguard Worker ldrb r2, [r1], r4 84*9880d681SAndroid Build Coastguard Worker ldrb r8, [r4], -r5 85*9880d681SAndroid Build Coastguard Worker ldrb r7, [r12, -r1, lsl #15] 86*9880d681SAndroid Build Coastguard Worker ldrb r5, [r2], r9, asr #15 87*9880d681SAndroid Build Coastguard Worker 88*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrb r9, [r8, r5] @ encoding: [0x05,0x90,0xd8,0xe7] 89*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrb r1, [r5, -r1] @ encoding: [0x01,0x10,0x55,0xe7] 90*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrb r3, [r5, r2]! @ encoding: [0x02,0x30,0xf5,0xe7] 91*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrb r6, [r9, -r3]! @ encoding: [0x03,0x60,0x79,0xe7] 92*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrb r2, [r1], r4 @ encoding: [0x04,0x20,0xd1,0xe6] 93*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrb r8, [r4], -r5 @ encoding: [0x05,0x80,0x54,0xe6] 94*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrb r7, [r12, -r1, lsl #15] @ encoding: [0x81,0x77,0x5c,0xe7] 95*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrb r5, [r2], r9, asr #15 @ encoding: [0xc9,0x57,0xd2,0xe6] 96*9880d681SAndroid Build Coastguard Worker 97*9880d681SAndroid Build Coastguard Worker 98*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 99*9880d681SAndroid Build Coastguard Worker@ LDRBT 100*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 101*9880d681SAndroid Build Coastguard Worker@ FIXME: Optional offset operand. 102*9880d681SAndroid Build Coastguard Worker ldrbt r3, [r1], #4 103*9880d681SAndroid Build Coastguard Worker ldrbt r2, [r8], #-8 104*9880d681SAndroid Build Coastguard Worker ldrbt r8, [r7], r6 105*9880d681SAndroid Build Coastguard Worker ldrbt r1, [r2], -r6, lsl #12 106*9880d681SAndroid Build Coastguard Worker 107*9880d681SAndroid Build Coastguard Worker 108*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrbt r3, [r1], #4 @ encoding: [0x04,0x30,0xf1,0xe4] 109*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrbt r2, [r8], #-8 @ encoding: [0x08,0x20,0x78,0xe4] 110*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrbt r8, [r7], r6 @ encoding: [0x06,0x80,0xf7,0xe6] 111*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrbt r1, [r2], -r6, lsl #12 @ encoding: [0x06,0x16,0x72,0xe6] 112*9880d681SAndroid Build Coastguard Worker 113*9880d681SAndroid Build Coastguard Worker 114*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 115*9880d681SAndroid Build Coastguard Worker@ LDRD (immediate) 116*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 117*9880d681SAndroid Build Coastguard Worker ldrd r2, r3, [r5] 118*9880d681SAndroid Build Coastguard Worker ldrd r6, r7, [r2, #15] 119*9880d681SAndroid Build Coastguard Worker ldrd r0, r1, [r9, #32]! 120*9880d681SAndroid Build Coastguard Worker ldrd r6, r7, [r1], #8 121*9880d681SAndroid Build Coastguard Worker ldrd r0, r1, [r8], #0 122*9880d681SAndroid Build Coastguard Worker ldrd r0, r1, [r8], #+0 123*9880d681SAndroid Build Coastguard Worker ldrd r0, r1, [r8], #-0 124*9880d681SAndroid Build Coastguard Worker 125*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrd r2, r3, [r5] @ encoding: [0xd0,0x20,0xc5,0xe1] 126*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrd r6, r7, [r2, #15] @ encoding: [0xdf,0x60,0xc2,0xe1] 127*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrd r0, r1, [r9, #32]! @ encoding: [0xd0,0x02,0xe9,0xe1] 128*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrd r6, r7, [r1], #8 @ encoding: [0xd8,0x60,0xc1,0xe0] 129*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrd r0, r1, [r8], #0 @ encoding: [0xd0,0x00,0xc8,0xe0] 130*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrd r0, r1, [r8], #0 @ encoding: [0xd0,0x00,0xc8,0xe0] 131*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrd r0, r1, [r8], #-0 @ encoding: [0xd0,0x00,0x48,0xe0] 132*9880d681SAndroid Build Coastguard Worker 133*9880d681SAndroid Build Coastguard Worker 134*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 135*9880d681SAndroid Build Coastguard Worker@ LDRD (label) 136*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 137*9880d681SAndroid Build Coastguard Worker ldrd r2, r3, Lbaz 138*9880d681SAndroid Build Coastguard WorkerLbaz: .quad 0 139*9880d681SAndroid Build Coastguard Worker 140*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrd r2, r3, Lbaz @ encoding: [0xd0'A',0x20'A',0x4f'A',0xe1'A'] 141*9880d681SAndroid Build Coastguard Worker 142*9880d681SAndroid Build Coastguard Worker 143*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 144*9880d681SAndroid Build Coastguard Worker@ LDRD (register) 145*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 146*9880d681SAndroid Build Coastguard Worker ldrd r4, r5, [r1, r3] 147*9880d681SAndroid Build Coastguard Worker ldrd r4, r5, [r7, r2]! 148*9880d681SAndroid Build Coastguard Worker ldrd r0, r1, [r8], r12 149*9880d681SAndroid Build Coastguard Worker ldrd r0, r1, [r8], -r12 150*9880d681SAndroid Build Coastguard Worker 151*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrd r4, r5, [r1, r3] @ encoding: [0xd3,0x40,0x81,0xe1] 152*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrd r4, r5, [r7, r2]! @ encoding: [0xd2,0x40,0xa7,0xe1] 153*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrd r0, r1, [r8], r12 @ encoding: [0xdc,0x00,0x88,0xe0] 154*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrd r0, r1, [r8], -r12 @ encoding: [0xdc,0x00,0x08,0xe0] 155*9880d681SAndroid Build Coastguard Worker 156*9880d681SAndroid Build Coastguard Worker 157*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 158*9880d681SAndroid Build Coastguard Worker@ LDRH (immediate) 159*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 160*9880d681SAndroid Build Coastguard Worker ldrh r3, [r4] 161*9880d681SAndroid Build Coastguard Worker ldrh r2, [r7, #4] 162*9880d681SAndroid Build Coastguard Worker ldrh r1, [r8, #64]! 163*9880d681SAndroid Build Coastguard Worker ldrh r12, [sp], #4 164*9880d681SAndroid Build Coastguard Worker 165*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrh r3, [r4] @ encoding: [0xb0,0x30,0xd4,0xe1] 166*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrh r2, [r7, #4] @ encoding: [0xb4,0x20,0xd7,0xe1] 167*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrh r1, [r8, #64]! @ encoding: [0xb0,0x14,0xf8,0xe1] 168*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrh r12, [sp], #4 @ encoding: [0xb4,0xc0,0xdd,0xe0] 169*9880d681SAndroid Build Coastguard Worker 170*9880d681SAndroid Build Coastguard Worker 171*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 172*9880d681SAndroid Build Coastguard Worker@ FIXME: LDRH (label) 173*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 174*9880d681SAndroid Build Coastguard Worker 175*9880d681SAndroid Build Coastguard Worker 176*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 177*9880d681SAndroid Build Coastguard Worker@ LDRH (register) 178*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 179*9880d681SAndroid Build Coastguard Worker ldrh r6, [r5, r4] 180*9880d681SAndroid Build Coastguard Worker ldrh r3, [r8, r11]! 181*9880d681SAndroid Build Coastguard Worker ldrh r1, [r2, -r1]! 182*9880d681SAndroid Build Coastguard Worker ldrh r9, [r7], r2 183*9880d681SAndroid Build Coastguard Worker ldrh r4, [r3], -r2 184*9880d681SAndroid Build Coastguard Worker 185*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrh r6, [r5, r4] @ encoding: [0xb4,0x60,0x95,0xe1] 186*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrh r3, [r8, r11]! @ encoding: [0xbb,0x30,0xb8,0xe1] 187*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrh r1, [r2, -r1]! @ encoding: [0xb1,0x10,0x32,0xe1] 188*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrh r9, [r7], r2 @ encoding: [0xb2,0x90,0x97,0xe0] 189*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrh r4, [r3], -r2 @ encoding: [0xb2,0x40,0x13,0xe0] 190*9880d681SAndroid Build Coastguard Worker 191*9880d681SAndroid Build Coastguard Worker 192*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 193*9880d681SAndroid Build Coastguard Worker@ LDRHT 194*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 195*9880d681SAndroid Build Coastguard Worker ldrht r9, [r7], #128 196*9880d681SAndroid Build Coastguard Worker ldrht r4, [r3], #-75 197*9880d681SAndroid Build Coastguard Worker ldrht r9, [r7], r2 198*9880d681SAndroid Build Coastguard Worker ldrht r4, [r3], -r2 199*9880d681SAndroid Build Coastguard Worker 200*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrht r9, [r7], #128 @ encoding: [0xb0,0x98,0xf7,0xe0] 201*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrht r4, [r3], #-75 @ encoding: [0xbb,0x44,0x73,0xe0] 202*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrht r9, [r7], r2 @ encoding: [0xb2,0x90,0xb7,0xe0] 203*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrht r4, [r3], -r2 @ encoding: [0xb2,0x40,0x33,0xe0] 204*9880d681SAndroid Build Coastguard Worker 205*9880d681SAndroid Build Coastguard Worker 206*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 207*9880d681SAndroid Build Coastguard Worker@ LDRSB (immediate) 208*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 209*9880d681SAndroid Build Coastguard Worker ldrsb r3, [r4] 210*9880d681SAndroid Build Coastguard Worker ldrsb r2, [r7, #17] 211*9880d681SAndroid Build Coastguard Worker ldrsb r1, [r8, #255]! 212*9880d681SAndroid Build Coastguard Worker ldrsb r12, [sp], #9 213*9880d681SAndroid Build Coastguard Worker 214*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrsb r3, [r4] @ encoding: [0xd0,0x30,0xd4,0xe1] 215*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrsb r2, [r7, #17] @ encoding: [0xd1,0x21,0xd7,0xe1] 216*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrsb r1, [r8, #255]! @ encoding: [0xdf,0x1f,0xf8,0xe1] 217*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrsb r12, [sp], #9 @ encoding: [0xd9,0xc0,0xdd,0xe0] 218*9880d681SAndroid Build Coastguard Worker 219*9880d681SAndroid Build Coastguard Worker 220*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 221*9880d681SAndroid Build Coastguard Worker@ FIXME: LDRSB (label) 222*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 223*9880d681SAndroid Build Coastguard Worker 224*9880d681SAndroid Build Coastguard Worker 225*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 226*9880d681SAndroid Build Coastguard Worker@ LDRSB (register) 227*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 228*9880d681SAndroid Build Coastguard Worker ldrsb r6, [r5, r4] 229*9880d681SAndroid Build Coastguard Worker ldrsb r3, [r8, r11]! 230*9880d681SAndroid Build Coastguard Worker ldrsb r1, [r2, -r1]! 231*9880d681SAndroid Build Coastguard Worker ldrsb r9, [r7], r2 232*9880d681SAndroid Build Coastguard Worker ldrsb r4, [r3], -r2 233*9880d681SAndroid Build Coastguard Worker 234*9880d681SAndroid Build Coastguard Worker 235*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrsb r6, [r5, r4] @ encoding: [0xd4,0x60,0x95,0xe1] 236*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrsb r3, [r8, r11]! @ encoding: [0xdb,0x30,0xb8,0xe1] 237*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrsb r1, [r2, -r1]! @ encoding: [0xd1,0x10,0x32,0xe1] 238*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrsb r9, [r7], r2 @ encoding: [0xd2,0x90,0x97,0xe0] 239*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrsb r4, [r3], -r2 @ encoding: [0xd2,0x40,0x13,0xe0] 240*9880d681SAndroid Build Coastguard Worker 241*9880d681SAndroid Build Coastguard Worker 242*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 243*9880d681SAndroid Build Coastguard Worker@ LDRSBT 244*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 245*9880d681SAndroid Build Coastguard Worker ldrsbt r5, [r6], #1 246*9880d681SAndroid Build Coastguard Worker ldrsbt r3, [r8], #-12 247*9880d681SAndroid Build Coastguard Worker ldrsbt r8, [r9], r5 248*9880d681SAndroid Build Coastguard Worker ldrsbt r2, [r1], -r4 249*9880d681SAndroid Build Coastguard Worker 250*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrsbt r5, [r6], #1 @ encoding: [0xd1,0x50,0xf6,0xe0] 251*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrsbt r3, [r8], #-12 @ encoding: [0xdc,0x30,0x78,0xe0] 252*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrsbt r8, [r9], r5 @ encoding: [0xd5,0x80,0xb9,0xe0] 253*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrsbt r2, [r1], -r4 @ encoding: [0xd4,0x20,0x31,0xe0] 254*9880d681SAndroid Build Coastguard Worker 255*9880d681SAndroid Build Coastguard Worker 256*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 257*9880d681SAndroid Build Coastguard Worker@ LDRSH (immediate) 258*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 259*9880d681SAndroid Build Coastguard Worker ldrsh r5, [r9] 260*9880d681SAndroid Build Coastguard Worker ldrsh r4, [r5, #7] 261*9880d681SAndroid Build Coastguard Worker ldrsh r3, [r6, #55]! 262*9880d681SAndroid Build Coastguard Worker ldrsh r2, [r7], #-9 263*9880d681SAndroid Build Coastguard Worker 264*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrsh r5, [r9] @ encoding: [0xf0,0x50,0xd9,0xe1] 265*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrsh r4, [r5, #7] @ encoding: [0xf7,0x40,0xd5,0xe1] 266*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrsh r3, [r6, #55]! @ encoding: [0xf7,0x33,0xf6,0xe1] 267*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrsh r2, [r7], #-9 @ encoding: [0xf9,0x20,0x57,0xe0] 268*9880d681SAndroid Build Coastguard Worker 269*9880d681SAndroid Build Coastguard Worker 270*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 271*9880d681SAndroid Build Coastguard Worker@ FIXME: LDRSH (label) 272*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 273*9880d681SAndroid Build Coastguard Worker 274*9880d681SAndroid Build Coastguard Worker 275*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 276*9880d681SAndroid Build Coastguard Worker@ LDRSH (register) 277*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 278*9880d681SAndroid Build Coastguard Worker ldrsh r3, [r1, r5] 279*9880d681SAndroid Build Coastguard Worker ldrsh r4, [r6, r1]! 280*9880d681SAndroid Build Coastguard Worker ldrsh r5, [r3, -r6]! 281*9880d681SAndroid Build Coastguard Worker ldrsh r6, [r9], r8 282*9880d681SAndroid Build Coastguard Worker ldrsh r7, [r8], -r3 283*9880d681SAndroid Build Coastguard Worker 284*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrsh r3, [r1, r5] @ encoding: [0xf5,0x30,0x91,0xe1] 285*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrsh r4, [r6, r1]! @ encoding: [0xf1,0x40,0xb6,0xe1] 286*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrsh r5, [r3, -r6]! @ encoding: [0xf6,0x50,0x33,0xe1] 287*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrsh r6, [r9], r8 @ encoding: [0xf8,0x60,0x99,0xe0] 288*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrsh r7, [r8], -r3 @ encoding: [0xf3,0x70,0x18,0xe0] 289*9880d681SAndroid Build Coastguard Worker 290*9880d681SAndroid Build Coastguard Worker 291*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 292*9880d681SAndroid Build Coastguard Worker@ LDRSHT 293*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 294*9880d681SAndroid Build Coastguard Worker ldrsht r5, [r6], #1 295*9880d681SAndroid Build Coastguard Worker ldrsht r3, [r8], #-12 296*9880d681SAndroid Build Coastguard Worker ldrsht r8, [r9], r5 297*9880d681SAndroid Build Coastguard Worker ldrsht r2, [r1], -r4 298*9880d681SAndroid Build Coastguard Worker 299*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrsht r5, [r6], #1 @ encoding: [0xf1,0x50,0xf6,0xe0] 300*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrsht r3, [r8], #-12 @ encoding: [0xfc,0x30,0x78,0xe0] 301*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrsht r8, [r9], r5 @ encoding: [0xf5,0x80,0xb9,0xe0] 302*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrsht r2, [r1], -r4 @ encoding: [0xf4,0x20,0x31,0xe0] 303*9880d681SAndroid Build Coastguard Worker 304*9880d681SAndroid Build Coastguard Worker 305*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 306*9880d681SAndroid Build Coastguard Worker@ STR (immediate) 307*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 308*9880d681SAndroid Build Coastguard Worker str r8, [r12] 309*9880d681SAndroid Build Coastguard Worker str r7, [r1, #12] 310*9880d681SAndroid Build Coastguard Worker str r3, [r5, #40]! 311*9880d681SAndroid Build Coastguard Worker str r9, [sp], #4095 312*9880d681SAndroid Build Coastguard Worker str r1, [r7], #-128 313*9880d681SAndroid Build Coastguard Worker str r1, [r0], #-0 314*9880d681SAndroid Build Coastguard Worker 315*9880d681SAndroid Build Coastguard Worker@ CHECK: str r8, [r12] @ encoding: [0x00,0x80,0x8c,0xe5] 316*9880d681SAndroid Build Coastguard Worker@ CHECK: str r7, [r1, #12] @ encoding: [0x0c,0x70,0x81,0xe5] 317*9880d681SAndroid Build Coastguard Worker@ CHECK: str r3, [r5, #40]! @ encoding: [0x28,0x30,0xa5,0xe5] 318*9880d681SAndroid Build Coastguard Worker@ CHECK: str r9, [sp], #4095 @ encoding: [0xff,0x9f,0x8d,0xe4] 319*9880d681SAndroid Build Coastguard Worker@ CHECK: str r1, [r7], #-128 @ encoding: [0x80,0x10,0x07,0xe4] 320*9880d681SAndroid Build Coastguard Worker@ CHECK: str r1, [r0], #-0 @ encoding: [0x00,0x10,0x00,0xe4] 321*9880d681SAndroid Build Coastguard Worker 322*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 323*9880d681SAndroid Build Coastguard Worker@ FIXME: STR (literal) 324*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 325*9880d681SAndroid Build Coastguard Worker 326*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 327*9880d681SAndroid Build Coastguard Worker@ STR (register) 328*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 329*9880d681SAndroid Build Coastguard Worker str r9, [r6, r3] 330*9880d681SAndroid Build Coastguard Worker str r8, [r0, -r2] 331*9880d681SAndroid Build Coastguard Worker str r7, [r1, r6]! 332*9880d681SAndroid Build Coastguard Worker str r6, [sp, -r1]! 333*9880d681SAndroid Build Coastguard Worker str r5, [r3], r9 334*9880d681SAndroid Build Coastguard Worker str r4, [r2], -r5 335*9880d681SAndroid Build Coastguard Worker str r3, [r4, -r2, lsl #2] 336*9880d681SAndroid Build Coastguard Worker str r2, [r7], r3, asr #24 337*9880d681SAndroid Build Coastguard Worker 338*9880d681SAndroid Build Coastguard Worker@ CHECK: str r9, [r6, r3] @ encoding: [0x03,0x90,0x86,0xe7] 339*9880d681SAndroid Build Coastguard Worker@ CHECK: str r8, [r0, -r2] @ encoding: [0x02,0x80,0x00,0xe7] 340*9880d681SAndroid Build Coastguard Worker@ CHECK: str r7, [r1, r6]! @ encoding: [0x06,0x70,0xa1,0xe7] 341*9880d681SAndroid Build Coastguard Worker@ CHECK: str r6, [sp, -r1]! @ encoding: [0x01,0x60,0x2d,0xe7] 342*9880d681SAndroid Build Coastguard Worker@ CHECK: str r5, [r3], r9 @ encoding: [0x09,0x50,0x83,0xe6] 343*9880d681SAndroid Build Coastguard Worker@ CHECK: str r4, [r2], -r5 @ encoding: [0x05,0x40,0x02,0xe6] 344*9880d681SAndroid Build Coastguard Worker@ CHECK: str r3, [r4, -r2, lsl #2] @ encoding: [0x02,0x31,0x04,0xe7] 345*9880d681SAndroid Build Coastguard Worker@ CHECK: str r2, [r7], r3, asr #24 @ encoding: [0x43,0x2c,0x87,0xe6] 346*9880d681SAndroid Build Coastguard Worker 347*9880d681SAndroid Build Coastguard Worker 348*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 349*9880d681SAndroid Build Coastguard Worker@ STRB (immediate) 350*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 351*9880d681SAndroid Build Coastguard Worker strb r9, [r2] 352*9880d681SAndroid Build Coastguard Worker strb r7, [r1, #3] 353*9880d681SAndroid Build Coastguard Worker strb r6, [r4, #405]! 354*9880d681SAndroid Build Coastguard Worker strb r5, [r7], #72 355*9880d681SAndroid Build Coastguard Worker strb r1, [sp], #-1 356*9880d681SAndroid Build Coastguard Worker 357*9880d681SAndroid Build Coastguard Worker@ CHECK: strb r9, [r2] @ encoding: [0x00,0x90,0xc2,0xe5] 358*9880d681SAndroid Build Coastguard Worker@ CHECK: strb r7, [r1, #3] @ encoding: [0x03,0x70,0xc1,0xe5] 359*9880d681SAndroid Build Coastguard Worker@ CHECK: strb r6, [r4, #405]! @ encoding: [0x95,0x61,0xe4,0xe5] 360*9880d681SAndroid Build Coastguard Worker@ CHECK: strb r5, [r7], #72 @ encoding: [0x48,0x50,0xc7,0xe4] 361*9880d681SAndroid Build Coastguard Worker@ CHECK: strb r1, [sp], #-1 @ encoding: [0x01,0x10,0x4d,0xe4] 362*9880d681SAndroid Build Coastguard Worker 363*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 364*9880d681SAndroid Build Coastguard Worker@ FIXME: STRB (literal) 365*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 366*9880d681SAndroid Build Coastguard Worker 367*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 368*9880d681SAndroid Build Coastguard Worker@ STRB (register) 369*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 370*9880d681SAndroid Build Coastguard Worker strb r1, [r2, r9] 371*9880d681SAndroid Build Coastguard Worker strb r2, [r3, -r8] 372*9880d681SAndroid Build Coastguard Worker strb r3, [r4, r7]! 373*9880d681SAndroid Build Coastguard Worker strb r4, [r5, -r6]! 374*9880d681SAndroid Build Coastguard Worker strb r5, [r6], r5 375*9880d681SAndroid Build Coastguard Worker strb r6, [r2], -r4 376*9880d681SAndroid Build Coastguard Worker strb r7, [r12, -r3, lsl #5] 377*9880d681SAndroid Build Coastguard Worker strb sp, [r7], r2, asr #12 378*9880d681SAndroid Build Coastguard Worker 379*9880d681SAndroid Build Coastguard Worker@ CHECK: strb r1, [r2, r9] @ encoding: [0x09,0x10,0xc2,0xe7] 380*9880d681SAndroid Build Coastguard Worker@ CHECK: strb r2, [r3, -r8] @ encoding: [0x08,0x20,0x43,0xe7] 381*9880d681SAndroid Build Coastguard Worker@ CHECK: strb r3, [r4, r7]! @ encoding: [0x07,0x30,0xe4,0xe7] 382*9880d681SAndroid Build Coastguard Worker@ CHECK: strb r4, [r5, -r6]! @ encoding: [0x06,0x40,0x65,0xe7] 383*9880d681SAndroid Build Coastguard Worker@ CHECK: strb r5, [r6], r5 @ encoding: [0x05,0x50,0xc6,0xe6] 384*9880d681SAndroid Build Coastguard Worker@ CHECK: strb r6, [r2], -r4 @ encoding: [0x04,0x60,0x42,0xe6] 385*9880d681SAndroid Build Coastguard Worker@ CHECK: strb r7, [r12, -r3, lsl #5] @ encoding: [0x83,0x72,0x4c,0xe7] 386*9880d681SAndroid Build Coastguard Worker@ CHECK: strb sp, [r7], r2, asr #12 @ encoding: [0x42,0xd6,0xc7,0xe6] 387*9880d681SAndroid Build Coastguard Worker 388*9880d681SAndroid Build Coastguard Worker 389*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 390*9880d681SAndroid Build Coastguard Worker@ STRBT 391*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 392*9880d681SAndroid Build Coastguard Worker@ FIXME: Optional offset operand. 393*9880d681SAndroid Build Coastguard Worker strbt r6, [r2], #12 394*9880d681SAndroid Build Coastguard Worker strbt r5, [r6], #-13 395*9880d681SAndroid Build Coastguard Worker strbt r4, [r9], r5 396*9880d681SAndroid Build Coastguard Worker strbt r3, [r8], -r2, lsl #3 397*9880d681SAndroid Build Coastguard Worker 398*9880d681SAndroid Build Coastguard Worker@ CHECK: strbt r6, [r2], #12 @ encoding: [0x0c,0x60,0xe2,0xe4] 399*9880d681SAndroid Build Coastguard Worker@ CHECK: strbt r5, [r6], #-13 @ encoding: [0x0d,0x50,0x66,0xe4] 400*9880d681SAndroid Build Coastguard Worker@ CHECK: strbt r4, [r9], r5 @ encoding: [0x05,0x40,0xe9,0xe6] 401*9880d681SAndroid Build Coastguard Worker@ CHECK: strbt r3, [r8], -r2, lsl #3 @ encoding: [0x82,0x31,0x68,0xe6] 402*9880d681SAndroid Build Coastguard Worker 403*9880d681SAndroid Build Coastguard Worker 404*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 405*9880d681SAndroid Build Coastguard Worker@ STRD (immediate) 406*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 407*9880d681SAndroid Build Coastguard Worker strd r1, r2, [r4] 408*9880d681SAndroid Build Coastguard Worker strd r2, r3, [r6, #1] 409*9880d681SAndroid Build Coastguard Worker strd r3, r4, [r7, #22]! 410*9880d681SAndroid Build Coastguard Worker strd r4, r5, [r8], #7 411*9880d681SAndroid Build Coastguard Worker strd r5, r6, [sp], #0 412*9880d681SAndroid Build Coastguard Worker strd r6, r7, [lr], #+0 413*9880d681SAndroid Build Coastguard Worker strd r7, r8, [r9], #-0 414*9880d681SAndroid Build Coastguard Worker 415*9880d681SAndroid Build Coastguard Worker@ CHECK: strd r1, r2, [r4] @ encoding: [0xf0,0x10,0xc4,0xe1] 416*9880d681SAndroid Build Coastguard Worker@ CHECK: strd r2, r3, [r6, #1] @ encoding: [0xf1,0x20,0xc6,0xe1] 417*9880d681SAndroid Build Coastguard Worker@ CHECK: strd r3, r4, [r7, #22]! @ encoding: [0xf6,0x31,0xe7,0xe1] 418*9880d681SAndroid Build Coastguard Worker@ CHECK: strd r4, r5, [r8], #7 @ encoding: [0xf7,0x40,0xc8,0xe0] 419*9880d681SAndroid Build Coastguard Worker@ CHECK: strd r5, r6, [sp], #0 @ encoding: [0xf0,0x50,0xcd,0xe0] 420*9880d681SAndroid Build Coastguard Worker@ CHECK: strd r6, r7, [lr], #0 @ encoding: [0xf0,0x60,0xce,0xe0] 421*9880d681SAndroid Build Coastguard Worker@ CHECK: strd r7, r8, [r9], #-0 @ encoding: [0xf0,0x70,0x49,0xe0] 422*9880d681SAndroid Build Coastguard Worker 423*9880d681SAndroid Build Coastguard Worker 424*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 425*9880d681SAndroid Build Coastguard Worker@ FIXME: STRD (label) 426*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 427*9880d681SAndroid Build Coastguard Worker 428*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 429*9880d681SAndroid Build Coastguard Worker@ STRD (register) 430*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 431*9880d681SAndroid Build Coastguard Worker strd r8, r9, [r4, r1] 432*9880d681SAndroid Build Coastguard Worker strd r7, r8, [r3, r9]! 433*9880d681SAndroid Build Coastguard Worker strd r6, r7, [r5], r8 434*9880d681SAndroid Build Coastguard Worker strd r5, r6, [r12], -r10 435*9880d681SAndroid Build Coastguard Worker 436*9880d681SAndroid Build Coastguard Worker@ CHECK: strd r8, r9, [r4, r1] @ encoding: [0xf1,0x80,0x84,0xe1] 437*9880d681SAndroid Build Coastguard Worker@ CHECK: strd r7, r8, [r3, r9]! @ encoding: [0xf9,0x70,0xa3,0xe1] 438*9880d681SAndroid Build Coastguard Worker@ CHECK: strd r6, r7, [r5], r8 @ encoding: [0xf8,0x60,0x85,0xe0] 439*9880d681SAndroid Build Coastguard Worker@ CHECK: strd r5, r6, [r12], -r10 @ encoding: [0xfa,0x50,0x0c,0xe0] 440*9880d681SAndroid Build Coastguard Worker 441*9880d681SAndroid Build Coastguard Worker 442*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 443*9880d681SAndroid Build Coastguard Worker@ STRH (immediate) 444*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 445*9880d681SAndroid Build Coastguard Worker strh r3, [r4] 446*9880d681SAndroid Build Coastguard Worker strh r2, [r7, #4] 447*9880d681SAndroid Build Coastguard Worker strh r1, [r8, #64]! 448*9880d681SAndroid Build Coastguard Worker strh r12, [sp], #4 449*9880d681SAndroid Build Coastguard Worker 450*9880d681SAndroid Build Coastguard Worker@ CHECK: strh r3, [r4] @ encoding: [0xb0,0x30,0xc4,0xe1] 451*9880d681SAndroid Build Coastguard Worker@ CHECK: strh r2, [r7, #4] @ encoding: [0xb4,0x20,0xc7,0xe1] 452*9880d681SAndroid Build Coastguard Worker@ CHECK: strh r1, [r8, #64]! @ encoding: [0xb0,0x14,0xe8,0xe1] 453*9880d681SAndroid Build Coastguard Worker@ CHECK: strh r12, [sp], #4 @ encoding: [0xb4,0xc0,0xcd,0xe0] 454*9880d681SAndroid Build Coastguard Worker 455*9880d681SAndroid Build Coastguard Worker 456*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 457*9880d681SAndroid Build Coastguard Worker@ FIXME: STRH (label) 458*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 459*9880d681SAndroid Build Coastguard Worker 460*9880d681SAndroid Build Coastguard Worker 461*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 462*9880d681SAndroid Build Coastguard Worker@ STRH (register) 463*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 464*9880d681SAndroid Build Coastguard Worker strh r6, [r5, r4] 465*9880d681SAndroid Build Coastguard Worker strh r3, [r8, r11]! 466*9880d681SAndroid Build Coastguard Worker strh r1, [r2, -r1]! 467*9880d681SAndroid Build Coastguard Worker strh r9, [r7], r2 468*9880d681SAndroid Build Coastguard Worker strh r4, [r3], -r2 469*9880d681SAndroid Build Coastguard Worker 470*9880d681SAndroid Build Coastguard Worker@ CHECK: strh r6, [r5, r4] @ encoding: [0xb4,0x60,0x85,0xe1] 471*9880d681SAndroid Build Coastguard Worker@ CHECK: strh r3, [r8, r11]! @ encoding: [0xbb,0x30,0xa8,0xe1] 472*9880d681SAndroid Build Coastguard Worker@ CHECK: strh r1, [r2, -r1]! @ encoding: [0xb1,0x10,0x22,0xe1] 473*9880d681SAndroid Build Coastguard Worker@ CHECK: strh r9, [r7], r2 @ encoding: [0xb2,0x90,0x87,0xe0] 474*9880d681SAndroid Build Coastguard Worker@ CHECK: strh r4, [r3], -r2 @ encoding: [0xb2,0x40,0x03,0xe0] 475*9880d681SAndroid Build Coastguard Worker 476*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 477*9880d681SAndroid Build Coastguard Worker@ STRHT 478*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 479*9880d681SAndroid Build Coastguard Worker strht r2, [r5], #76 480*9880d681SAndroid Build Coastguard Worker strht r8, [r1], #-25 481*9880d681SAndroid Build Coastguard Worker strht r5, [r3], r4 482*9880d681SAndroid Build Coastguard Worker strht r6, [r8], -r0 483*9880d681SAndroid Build Coastguard Worker 484*9880d681SAndroid Build Coastguard Worker@ CHECK: strht r2, [r5], #76 @ encoding: [0xbc,0x24,0xe5,0xe0] 485*9880d681SAndroid Build Coastguard Worker@ CHECK: strht r8, [r1], #-25 @ encoding: [0xb9,0x81,0x61,0xe0] 486*9880d681SAndroid Build Coastguard Worker@ CHECK: strht r5, [r3], r4 @ encoding: [0xb4,0x50,0xa3,0xe0] 487*9880d681SAndroid Build Coastguard Worker@ CHECK: strht r6, [r8], -r0 @ encoding: [0xb0,0x60,0x28,0xe0] 488*9880d681SAndroid Build Coastguard Worker 489*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 490*9880d681SAndroid Build Coastguard Worker@ GNU Assembler Compatibility 491*9880d681SAndroid Build Coastguard Worker@------------------------------------------------------------------------------ 492*9880d681SAndroid Build Coastguard Worker 493*9880d681SAndroid Build Coastguard Worker ldrd r0, [sp] 494*9880d681SAndroid Build Coastguard Worker strd r0, [sp] 495*9880d681SAndroid Build Coastguard Worker 496*9880d681SAndroid Build Coastguard Worker@ CHECK: ldrd r0, r1, [sp] @ encoding: [0xd0,0x00,0xcd,0xe1] 497*9880d681SAndroid Build Coastguard Worker@ CHECK: strd r0, r1, [sp] @ encoding: [0xf0,0x00,0xcd,0xe1] 498*9880d681SAndroid Build Coastguard Worker 499