brintos

brintos / llvm-project-archived public Read only

0
0
Text · 153.6 KiB · 4c62e8f Raw
3599 lines · plain
1@ RUN: llvm-mc -triple=armv7-apple-darwin -mcpu=cortex-a8 -show-encoding < %s | FileCheck %s2@ RUN: llvm-mc -triple=armebv7-unknown-unknown -mcpu=cortex-a8 -show-encoding < %s | FileCheck --check-prefix=CHECK-BE %s3  .syntax unified4  .globl _func5 6@ Check that the assembler can handle the documented syntax from the ARM ARM.7@ For complex constructs like shifter operands, check more thoroughly for them8@ once then spot check that following instructions accept the form generally.9@ This gives us good coverage while keeping the overall size of the test10@ more reasonable.11 12_func:13@ CHECK: _func14 15@------------------------------------------------------------------------------16@ ADC (immediate)17@------------------------------------------------------------------------------18        adc r1, r2, #0xf19        adc r1, r2, $0xf20        adc r1, r2, 0xf21        adc r7, r8, #(0xff << 16)22        adc r7, r8, #-214748363823        adc r7, r8, #42, #224        adc r7, r8, #40, #225        adc r7, r8, $40, $226        adc r7, r8, 40, 227        adc r7, r8, (2 * 20), (1 << 1)28        adc r1, r2, #0xf029        adc r1, r2, #0xf0030        adc r1, r2, #0xf00031        adc r1, r2, #0xf000032        adc r1, r2, #0xf0000033        adc r1, r2, #0xf00000034        adc r1, r2, #0xf000000035        adc r1, r2, #0xf000000f36        adcs r1, r2, #0xf0037        adcs r7, r8, #40, #238        adcseq r1, r2, #0xf0039        adceq r1, r2, #0xf0040 41@ CHECK: adc	r1, r2, #15             @ encoding: [0x0f,0x10,0xa2,0xe2]42@ CHECK: adc	r1, r2, #15             @ encoding: [0x0f,0x10,0xa2,0xe2]43@ CHECK: adc	r1, r2, #15             @ encoding: [0x0f,0x10,0xa2,0xe2]44@ CHECK: adc	r7, r8, #16711680       @ encoding: [0xff,0x78,0xa8,0xe2]45@ CHECK: adc    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0xa8,0xe2]46@ CHECK: adc    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0xa8,0xe2]47@ CHECK: adc    r7, r8, #40, #2         @ encoding: [0x28,0x71,0xa8,0xe2]48@ CHECK: adc    r7, r8, #40, #2         @ encoding: [0x28,0x71,0xa8,0xe2]49@ CHECK: adc    r7, r8, #40, #2         @ encoding: [0x28,0x71,0xa8,0xe2]50@ CHECK: adc	r7, r8, #40, #2         @ encoding: [0x28,0x71,0xa8,0xe2]51@ CHECK: adc	r1, r2, #240            @ encoding: [0xf0,0x10,0xa2,0xe2]52@ CHECK: adc	r1, r2, #3840           @ encoding: [0x0f,0x1c,0xa2,0xe2]53@ CHECK: adc	r1, r2, #61440          @ encoding: [0x0f,0x1a,0xa2,0xe2]54@ CHECK: adc	r1, r2, #983040         @ encoding: [0x0f,0x18,0xa2,0xe2]55@ CHECK: adc	r1, r2, #15728640       @ encoding: [0x0f,0x16,0xa2,0xe2]56@ CHECK: adc	r1, r2, #251658240      @ encoding: [0x0f,0x14,0xa2,0xe2]57@ CHECK: adc	r1, r2, #-268435456     @ encoding: [0x0f,0x12,0xa2,0xe2]58@ CHECK: adc	r1, r2, #-268435441     @ encoding: [0xff,0x12,0xa2,0xe2]59@ CHECK: adcs	r1, r2, #3840           @ encoding: [0x0f,0x1c,0xb2,0xe2]60@ CHECK: adcs   r7, r8, #40, #2         @ encoding: [0x28,0x71,0xb8,0xe2]61@ CHECK: adcseq	r1, r2, #3840           @ encoding: [0x0f,0x1c,0xb2,0x02]62@ CHECK: adceq	r1, r2, #3840           @ encoding: [0x0f,0x1c,0xa2,0x02]63 64@------------------------------------------------------------------------------65@ ADC (register)66@ ADC (shifted register)67@------------------------------------------------------------------------------68        adc r4, r5, r669        @ Constant shifts70        adc r4, r5, r6, lsl #171        adc r4, r5, r6, lsl #3172        adc r4, r5, r6, lsr #173        adc r4, r5, r6, lsr #3174        adc r4, r5, r6, lsr #3275        adc r4, r5, r6, asr #176        adc r4, r5, r6, asr #3177        adc r4, r5, r6, asr #3278        adc r4, r5, r6, ror #179        adc r4, r5, r6, ror #3180 81        @ Register shifts82        adc r6, r7, r8, lsl r983        adc r6, r7, r8, lsr r984        adc r6, r7, r8, asr r985        adc r6, r7, r8, ror r986        adc r4, r5, r6, rrx87 88        @ Destination register is optional89        adc r5, r690        adc r4, r5, lsl #191        adc r4, r5, lsl #3192        adc r4, r5, lsr #193        adc r4, r5, lsr #3194        adc r4, r5, lsr #3295        adc r4, r5, asr #196        adc r4, r5, asr #3197        adc r4, r5, asr #3298        adc r4, r5, ror #199        adc r4, r5, ror #31100        adc r4, r5, rrx101        adc r6, r7, lsl r9102        adc r6, r7, lsr r9103        adc r6, r7, asr r9104        adc r6, r7, ror r9105        adc r4, r5, rrx106 107@ CHECK: adc	r4, r5, r6              @ encoding: [0x06,0x40,0xa5,0xe0]108 109@ CHECK: adc	r4, r5, r6, lsl #1      @ encoding: [0x86,0x40,0xa5,0xe0]110@ CHECK: adc	r4, r5, r6, lsl #31     @ encoding: [0x86,0x4f,0xa5,0xe0]111@ CHECK: adc	r4, r5, r6, lsr #1      @ encoding: [0xa6,0x40,0xa5,0xe0]112@ CHECK: adc	r4, r5, r6, lsr #31     @ encoding: [0xa6,0x4f,0xa5,0xe0]113@ CHECK: adc	r4, r5, r6, lsr #32     @ encoding: [0x26,0x40,0xa5,0xe0]114@ CHECK: adc	r4, r5, r6, asr #1      @ encoding: [0xc6,0x40,0xa5,0xe0]115@ CHECK: adc	r4, r5, r6, asr #31     @ encoding: [0xc6,0x4f,0xa5,0xe0]116@ CHECK: adc	r4, r5, r6, asr #32     @ encoding: [0x46,0x40,0xa5,0xe0]117@ CHECK: adc	r4, r5, r6, ror #1      @ encoding: [0xe6,0x40,0xa5,0xe0]118@ CHECK: adc	r4, r5, r6, ror #31     @ encoding: [0xe6,0x4f,0xa5,0xe0]119 120@ CHECK: adc	r6, r7, r8, lsl r9      @ encoding: [0x18,0x69,0xa7,0xe0]121@ CHECK: adc	r6, r7, r8, lsr r9      @ encoding: [0x38,0x69,0xa7,0xe0]122@ CHECK: adc	r6, r7, r8, asr r9      @ encoding: [0x58,0x69,0xa7,0xe0]123@ CHECK: adc	r6, r7, r8, ror r9      @ encoding: [0x78,0x69,0xa7,0xe0]124@ CHECK: adc	r4, r5, r6, rrx         @ encoding: [0x66,0x40,0xa5,0xe0]125 126@ CHECK: adc	r5, r5, r6              @ encoding: [0x06,0x50,0xa5,0xe0]127@ CHECK: adc	r4, r4, r5, lsl #1      @ encoding: [0x85,0x40,0xa4,0xe0]128@ CHECK: adc	r4, r4, r5, lsl #31     @ encoding: [0x85,0x4f,0xa4,0xe0]129@ CHECK: adc	r4, r4, r5, lsr #1      @ encoding: [0xa5,0x40,0xa4,0xe0]130@ CHECK: adc	r4, r4, r5, lsr #31     @ encoding: [0xa5,0x4f,0xa4,0xe0]131@ CHECK: adc	r4, r4, r5, lsr #32     @ encoding: [0x25,0x40,0xa4,0xe0]132@ CHECK: adc	r4, r4, r5, asr #1      @ encoding: [0xc5,0x40,0xa4,0xe0]133@ CHECK: adc	r4, r4, r5, asr #31     @ encoding: [0xc5,0x4f,0xa4,0xe0]134@ CHECK: adc	r4, r4, r5, asr #32     @ encoding: [0x45,0x40,0xa4,0xe0]135@ CHECK: adc	r4, r4, r5, ror #1      @ encoding: [0xe5,0x40,0xa4,0xe0]136@ CHECK: adc	r4, r4, r5, ror #31     @ encoding: [0xe5,0x4f,0xa4,0xe0]137@ CHECK: adc	r4, r4, r5, rrx         @ encoding: [0x65,0x40,0xa4,0xe0]138@ CHECK: adc	r6, r6, r7, lsl r9      @ encoding: [0x17,0x69,0xa6,0xe0]139@ CHECK: adc	r6, r6, r7, lsr r9      @ encoding: [0x37,0x69,0xa6,0xe0]140@ CHECK: adc	r6, r6, r7, asr r9      @ encoding: [0x57,0x69,0xa6,0xe0]141@ CHECK: adc	r6, r6, r7, ror r9      @ encoding: [0x77,0x69,0xa6,0xe0]142@ CHECK: adc	r4, r4, r5, rrx         @ encoding: [0x65,0x40,0xa4,0xe0]143 144 145@------------------------------------------------------------------------------146@ ADR147@------------------------------------------------------------------------------148Lback:149        adr r2, Lback150        adr r3, Lforward151Lforward:152        adr	r2, #3153        adr	r2, #-3154 155@ CHECK: Lback:156@ CHECK: adr	r2, Lback    @ encoding: [A,0x20'A',0x0f'A',0xe2'A']157@ CHECK:  @   fixup A - offset: 0, value: Lback, kind: fixup_arm_adr_pcrel_12158@ CHECK-BE: adr	r2, Lback    @ encoding: [0xe2'A',0x0f'A',0x20'A',A]159@ CHECK-BE:  @   fixup A - offset: 0, value: Lback, kind: fixup_arm_adr_pcrel_12160@ CHECK: adr	r3, Lforward @ encoding: [A,0x30'A',0x0f'A',0xe2'A']161@ CHECK:  @   fixup A - offset: 0, value: Lforward, kind: fixup_arm_adr_pcrel_12162@ CHECK-BE: adr	r3, Lforward @ encoding: [0xe2'A',0x0f'A',0x30'A',A]163@ CHECK-BE:  @   fixup A - offset: 0, value: Lforward, kind: fixup_arm_adr_pcrel_12164@ CHECK: Lforward:165@ CHECK: adr	r2, #3                  @ encoding: [0x03,0x20,0x8f,0xe2]166@ CHECK: adr	r2, #-3                 @ encoding: [0x03,0x20,0x4f,0xe2]167 168        adr r1, #-0x0169        adr r1, #-0x12000000170        adr r1, #-0x80000001171        adr r1, #0x12000000172        adr r1, #0x80000001173 174@ CHECK: adr	r1, #-0                 @ encoding: [0x00,0x10,0x4f,0xe2]175@ CHECK: adr	r1, #-301989888         @ encoding: [0x12,0x14,0x4f,0xe2]176@ CHECK: adr	r1, #2147483647         @ encoding: [0x06,0x11,0x4f,0xe2]177@ CHECK: adr	r1, #301989888          @ encoding: [0x12,0x14,0x8f,0xe2]178@ CHECK: adr	r1, #-2147483647        @ encoding: [0x06,0x11,0x8f,0xe2]179 180@------------------------------------------------------------------------------181@ ADD182@------------------------------------------------------------------------------183        add r4, r5, #0xf000184        add r4, r5, $0xf000185        add r4, r5, 0xf000186        add r4, r5, -0xf000187	add r7, r8, #(0xff << 16)188        add r7, r8, #-2147483638189        add r7, r8, #42, #2190        add r7, r8, #40, #2191        add r7, r8, $40, $2192        add r7, r8, 40, 2193        add r7, r8, (2 * 20), (1 << 1)194        add r4, r5, r6195        add r4, r5, r6, lsl #5196        add r4, r5, r6, lsr #5197        add r4, r5, r6, lsr #5198        add r4, r5, r6, asr #5199        add r4, r5, r6, ror #5200        add r6, r7, r8, lsl r9201        add r4, r4, r3, asl r9202        add r6, r7, r8, lsr r9203        add r6, r7, r8, asr r9204        add r6, r7, r8, ror r9205        add r4, r5, r6, rrx206 207        @ destination register is optional208        add r5, #0xf000209        add r5, $0xf000210        add r5, 0xf000211        add r5, -0xf000212	add r7, #(0xff << 16)213        add r7, #-2147483638214        add r7, #42, #2215        add r7, #40, #2216        add r7, $40, $2217        add r7, 40, 2218        add r7, (2 * 20), (1 << 1)219        add r4, r5220        add r4, r5, lsl #5221        add r4, r5, lsr #5222        add r4, r5, lsr #5223        add r4, r5, asr #5224        add r4, r5, ror #5225        add r6, r7, lsl r9226        add r6, r7, lsr r9227        add r6, r7, asr r9228        add r6, r7, ror r9229        add r4, r5, rrx230 231        add r0, #-4232        add r4, r5, #-21233        add r0, pc, #0xc0000000234        addseq r0,pc,#0xc0000000235 236 237        add r0, pc, #(Lback - .)238 239@ CHECK: add	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x85,0xe2]240@ CHECK: add	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x85,0xe2]241@ CHECK: add	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x85,0xe2]242@ CHECK: sub	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x45,0xe2]243@ CHECK: add	r7, r8, #16711680       @ encoding: [0xff,0x78,0x88,0xe2]244@ CHECK: add    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0x88,0xe2]245@ CHECK: add    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0x88,0xe2]246@ CHECK: add    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x88,0xe2]247@ CHECK: add    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x88,0xe2]248@ CHECK: add    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x88,0xe2]249@ CHECK: add    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x88,0xe2]250@ CHECK: add	r4, r5, r6              @ encoding: [0x06,0x40,0x85,0xe0]251@ CHECK: add	r4, r5, r6, lsl #5      @ encoding: [0x86,0x42,0x85,0xe0]252@ CHECK: add	r4, r5, r6, lsr #5      @ encoding: [0xa6,0x42,0x85,0xe0]253@ CHECK: add	r4, r5, r6, lsr #5      @ encoding: [0xa6,0x42,0x85,0xe0]254@ CHECK: add	r4, r5, r6, asr #5      @ encoding: [0xc6,0x42,0x85,0xe0]255@ CHECK: add	r4, r5, r6, ror #5      @ encoding: [0xe6,0x42,0x85,0xe0]256@ CHECK: add	r6, r7, r8, lsl r9      @ encoding: [0x18,0x69,0x87,0xe0]257@ CHECK: add	r4, r4, r3, lsl r9      @ encoding: [0x13,0x49,0x84,0xe0]258@ CHECK: add	r6, r7, r8, lsr r9      @ encoding: [0x38,0x69,0x87,0xe0]259@ CHECK: add	r6, r7, r8, asr r9      @ encoding: [0x58,0x69,0x87,0xe0]260@ CHECK: add	r6, r7, r8, ror r9      @ encoding: [0x78,0x69,0x87,0xe0]261@ CHECK: add	r4, r5, r6, rrx         @ encoding: [0x66,0x40,0x85,0xe0]262 263@ CHECK: add	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x85,0xe2]264@ CHECK: add	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x85,0xe2]265@ CHECK: add	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x85,0xe2]266@ CHECK: sub	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x45,0xe2]267@ CHECK: add	r7, r7, #16711680       @ encoding: [0xff,0x78,0x87,0xe2]268@ CHECK: add	r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0x87,0xe2]269@ CHECK: add	r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0x87,0xe2]270@ CHECK: add	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x87,0xe2]271@ CHECK: add	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x87,0xe2]272@ CHECK: add	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x87,0xe2]273@ CHECK: add	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x87,0xe2]274@ CHECK: add	r4, r4, r5              @ encoding: [0x05,0x40,0x84,0xe0]275@ CHECK: add	r4, r4, r5, lsl #5      @ encoding: [0x85,0x42,0x84,0xe0]276@ CHECK: add	r4, r4, r5, lsr #5      @ encoding: [0xa5,0x42,0x84,0xe0]277@ CHECK: add	r4, r4, r5, lsr #5      @ encoding: [0xa5,0x42,0x84,0xe0]278@ CHECK: add	r4, r4, r5, asr #5      @ encoding: [0xc5,0x42,0x84,0xe0]279@ CHECK: add	r4, r4, r5, ror #5      @ encoding: [0xe5,0x42,0x84,0xe0]280@ CHECK: add	r6, r6, r7, lsl r9      @ encoding: [0x17,0x69,0x86,0xe0]281@ CHECK: add	r6, r6, r7, lsr r9      @ encoding: [0x37,0x69,0x86,0xe0]282@ CHECK: add	r6, r6, r7, asr r9      @ encoding: [0x57,0x69,0x86,0xe0]283@ CHECK: add	r6, r6, r7, ror r9      @ encoding: [0x77,0x69,0x86,0xe0]284@ CHECK: add	r4, r4, r5, rrx         @ encoding: [0x65,0x40,0x84,0xe0]285 286@ CHECK: sub	r0, r0, #4              @ encoding: [0x04,0x00,0x40,0xe2]287@ CHECK: sub	r4, r5, #21             @ encoding: [0x15,0x40,0x45,0xe2]288@ CHECK: adr	r0, #-1073741824        @ encoding: [0x03,0x01,0x8f,0xe2]289@ CHECK: addseq r0, pc, #-1073741824    @ encoding: [0x03,0x01,0x9f,0x02]290@ CHECK:        Ltmp0:291@ CHECK-NEXT:   Ltmp1:292@ CHECK-NEXT:   adr	r0, Ltmp1+8+(Lback-Ltmp0) @ encoding: [A,A,0x0f'A',0xe2'A']293@ CHECK-NEXT:                           @   fixup A - offset: 0, value: Ltmp1+8+(Lback-Ltmp0), kind: fixup_arm_adr_pcrel_12294 295    @ Test right shift by 32, which is encoded as 0296    add r3, r1, r2, lsr #32297    add r3, r1, r2, asr #32298@ CHECK: add	r3, r1, r2, lsr #32     @ encoding: [0x22,0x30,0x81,0xe0]299@ CHECK: add	r3, r1, r2, asr #32     @ encoding: [0x42,0x30,0x81,0xe0]300 301@------------------------------------------------------------------------------302@ ADDS303@------------------------------------------------------------------------------304    adds r7, r8, #16711680305    adds r7, r8, $16711680306    adds r7, r8, 16711680307    adds r7, r8, #(0xff << 16)308    adds r7, r8, #-2147483638309    adds r7, r8, #42, #2310    adds r7, r8, #40, #2311    adds r7, r8, $40, $2312    adds r7, r8, 40, 2313    adds r7, r8, (2 * 20), (1 << 1)314 315@ CHECK: adds	r7, r8, #16711680         @ encoding: [0xff,0x78,0x98,0xe2]316@ CHECK: adds	r7, r8, #16711680         @ encoding: [0xff,0x78,0x98,0xe2]317@ CHECK: adds	r7, r8, #16711680         @ encoding: [0xff,0x78,0x98,0xe2]318@ CHECK: adds	r7, r8, #16711680         @ encoding: [0xff,0x78,0x98,0xe2]319@ CHECK: adds   r7, r8, #-2147483638      @ encoding: [0x2a,0x71,0x98,0xe2]320@ CHECK: adds   r7, r8, #-2147483638      @ encoding: [0x2a,0x71,0x98,0xe2]321@ CHECK: adds   r7, r8, #40, #2           @ encoding: [0x28,0x71,0x98,0xe2]322@ CHECK: adds   r7, r8, #40, #2           @ encoding: [0x28,0x71,0x98,0xe2]323@ CHECK: adds   r7, r8, #40, #2           @ encoding: [0x28,0x71,0x98,0xe2]324@ CHECK: adds   r7, r8, #40, #2           @ encoding: [0x28,0x71,0x98,0xe2]325 326@------------------------------------------------------------------------------327@ AND328@------------------------------------------------------------------------------329    and r10, r1, #0xf330    and r10, r1, $0xf331    and r10, r1, 0xf332    and r10, r1, -0xf333    and r7, r8, #(0xff << 16)334    and r7, r8, #-2147483638335    and r7, r8, #42, #2336    and r7, r8, #40, #2337    and r7, r8, $40, $2338    and r7, r8, 40, 2339    and r7, r8, (2 * 20), (1 << 1)340    and r10, r1, r6341    and r10, r1, r6, lsl #10342    and r10, r1, r6, lsr #10343    and r10, r1, r6, lsr #10344    and r10, r1, r6, asr #10345    and r10, r1, r6, ror #10346    and r6, r7, r8, lsl r2347    and r6, r7, r8, lsr r2348    and r6, r7, r8, asr r2349    and r6, r7, r8, ror r2350    and r10, r1, r6, rrx351    and r2, r3, #0x7fffffff352    and sp, sp, #0x7fffffff353    and pc, pc, #0x7fffffff354 355    @ destination register is optional356    and r1, #0xf357    and r1, $0xf358    and r1, 0xf359    and r1, -0xf360    and r7, #(0xff << 16)361    and r7, #-2147483638362    and r7, #42, #2363    and r7, #40, #2364    and r7, $40, $2365    and r7, 40, 2366    and r7, (2 * 20), (1 << 1)367    and r10, r1368    and r10, r1, lsl #10369    and r10, r1, lsr #10370    and r10, r1, lsr #10371    and r10, r1, asr #10372    and r10, r1, ror #10373    and r6, r7, lsl r2374    and r6, r7, lsr r2375    and r6, r7, asr r2376    and r6, r7, ror r2377    and r10, r1, rrx378 379@ CHECK: and	r10, r1, #15            @ encoding: [0x0f,0xa0,0x01,0xe2]380@ CHECK: and	r10, r1, #15            @ encoding: [0x0f,0xa0,0x01,0xe2]381@ CHECK: and	r10, r1, #15            @ encoding: [0x0f,0xa0,0x01,0xe2]382@ CHECK: bic	r10, r1, #14            @ encoding: [0x0e,0xa0,0xc1,0xe3]383@ CHECK: and	r7, r8, #16711680       @ encoding: [0xff,0x78,0x08,0xe2]384@ CHECK: and    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0x08,0xe2]385@ CHECK: and    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0x08,0xe2]386@ CHECK: and    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x08,0xe2]387@ CHECK: and    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x08,0xe2]388@ CHECK: and    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x08,0xe2]389@ CHECK: and    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x08,0xe2]390@ CHECK: and	r10, r1, r6             @ encoding: [0x06,0xa0,0x01,0xe0]391@ CHECK: and	r10, r1, r6, lsl #10    @ encoding: [0x06,0xa5,0x01,0xe0]392@ CHECK: and	r10, r1, r6, lsr #10    @ encoding: [0x26,0xa5,0x01,0xe0]393@ CHECK: and	r10, r1, r6, lsr #10    @ encoding: [0x26,0xa5,0x01,0xe0]394@ CHECK: and	r10, r1, r6, asr #10    @ encoding: [0x46,0xa5,0x01,0xe0]395@ CHECK: and	r10, r1, r6, ror #10    @ encoding: [0x66,0xa5,0x01,0xe0]396@ CHECK: and	r6, r7, r8, lsl r2      @ encoding: [0x18,0x62,0x07,0xe0]397@ CHECK: and	r6, r7, r8, lsr r2      @ encoding: [0x38,0x62,0x07,0xe0]398@ CHECK: and	r6, r7, r8, asr r2      @ encoding: [0x58,0x62,0x07,0xe0]399@ CHECK: and	r6, r7, r8, ror r2      @ encoding: [0x78,0x62,0x07,0xe0]400@ CHECK: and	r10, r1, r6, rrx        @ encoding: [0x66,0xa0,0x01,0xe0]401@ CHECK: bic	r2, r3, #-2147483648    @ encoding: [0x02,0x21,0xc3,0xe3]402@ CHECK: bic	sp, sp, #-2147483648    @ encoding: [0x02,0xd1,0xcd,0xe3]403@ CHECK: bic	pc, pc, #-2147483648    @ encoding: [0x02,0xf1,0xcf,0xe3]404 405@ CHECK: and	r1, r1, #15             @ encoding: [0x0f,0x10,0x01,0xe2]406@ CHECK: and	r1, r1, #15             @ encoding: [0x0f,0x10,0x01,0xe2]407@ CHECK: and	r1, r1, #15             @ encoding: [0x0f,0x10,0x01,0xe2]408@ CHECK: bic	r1, r1, #14             @ encoding: [0x0e,0x10,0xc1,0xe3]409@ CHECK: and	r7, r7, #16711680       @ encoding: [0xff,0x78,0x07,0xe2]410@ CHECK: and	r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0x07,0xe2]411@ CHECK: and	r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0x07,0xe2]412@ CHECK: and	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x07,0xe2]413@ CHECK: and	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x07,0xe2]414@ CHECK: and	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x07,0xe2]415@ CHECK: and	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x07,0xe2]416@ CHECK: and	r10, r10, r1            @ encoding: [0x01,0xa0,0x0a,0xe0]417@ CHECK: and	r10, r10, r1, lsl #10   @ encoding: [0x01,0xa5,0x0a,0xe0]418@ CHECK: and	r10, r10, r1, lsr #10   @ encoding: [0x21,0xa5,0x0a,0xe0]419@ CHECK: and	r10, r10, r1, lsr #10   @ encoding: [0x21,0xa5,0x0a,0xe0]420@ CHECK: and	r10, r10, r1, asr #10   @ encoding: [0x41,0xa5,0x0a,0xe0]421@ CHECK: and	r10, r10, r1, ror #10   @ encoding: [0x61,0xa5,0x0a,0xe0]422@ CHECK: and	r6, r6, r7, lsl r2      @ encoding: [0x17,0x62,0x06,0xe0]423@ CHECK: and	r6, r6, r7, lsr r2      @ encoding: [0x37,0x62,0x06,0xe0]424@ CHECK: and	r6, r6, r7, asr r2      @ encoding: [0x57,0x62,0x06,0xe0]425@ CHECK: and	r6, r6, r7, ror r2      @ encoding: [0x77,0x62,0x06,0xe0]426@ CHECK: and	r10, r10, r1, rrx       @ encoding: [0x61,0xa0,0x0a,0xe0]427 428    @ Test right shift by 32, which is encoded as 0429    and r3, r1, r2, lsr #32430    and r3, r1, r2, asr #32431@ CHECK: and	r3, r1, r2, lsr #32     @ encoding: [0x22,0x30,0x01,0xe0]432@ CHECK: and	r3, r1, r2, asr #32     @ encoding: [0x42,0x30,0x01,0xe0]433 434@------------------------------------------------------------------------------435@ ASR436@------------------------------------------------------------------------------437	asr r2, r4, #32438	asr r2, r4, #2439	asr r2, r4, #0440	asr r4, #2441 442@ CHECK: asr	r2, r4, #32             @ encoding: [0x44,0x20,0xa0,0xe1]443@ CHECK: asr	r2, r4, #2              @ encoding: [0x44,0x21,0xa0,0xe1]444@ CHECK: mov	r2, r4                  @ encoding: [0x04,0x20,0xa0,0xe1]445@ CHECK: asr	r4, r4, #2              @ encoding: [0x44,0x41,0xa0,0xe1]446 447 448@------------------------------------------------------------------------------449@ B450@------------------------------------------------------------------------------451        b _bar452        beq _baz453 454@ CHECK: b	_bar                    @ encoding: [A,A,A,0xea]455@ CHECK: @   fixup A - offset: 0, value: _bar, kind: fixup_arm_uncondbranch456@ CHECK-BE: b	_bar                    @ encoding: [0xea,A,A,A]457@ CHECK-BE: @   fixup A - offset: 0, value: _bar, kind: fixup_arm_uncondbranch458@ CHECK: beq	_baz                    @ encoding: [A,A,A,0x0a]459@ CHECK: @   fixup A - offset: 0, value: _baz, kind: fixup_arm_condbranch460@ CHECK-BE: beq	_baz                    @ encoding: [0x0a,A,A,A]461@ CHECK-BE: @   fixup A - offset: 0, value: _baz, kind: fixup_arm_condbranch462 463 464@------------------------------------------------------------------------------465@ BFC466@------------------------------------------------------------------------------467        bfc r5, #3, #17468        bfccc r5, #3, #17469 470@ CHECK: bfc	r5, #3, #17             @ encoding: [0x9f,0x51,0xd3,0xe7]471@ CHECK: bfclo	r5, #3, #17             @ encoding: [0x9f,0x51,0xd3,0x37]472 473 474@------------------------------------------------------------------------------475@ BFI476@------------------------------------------------------------------------------477        bfi r5, r2, #3, #17478        bfine r5, r2, #3, #17479 480@ CHECK: bfi	r5, r2, #3, #17         @ encoding: [0x92,0x51,0xd3,0xe7]481@ CHECK: bfine	r5, r2, #3, #17         @ encoding: [0x92,0x51,0xd3,0x17]482 483 484@------------------------------------------------------------------------------485@ BIC486@------------------------------------------------------------------------------487        bic r10, r1, #0xf488        bic r10, r1, $0xf489        bic r10, r1, 0xf490        bic r10, r1, -0xf491        bic r7, r8, #(0xff << 16)492        bic r7, r8, #-2147483638493        bic r7, r8, #42, #2494        bic r7, r8, #40, #2495        bic r7, r8, $40, $2496        bic r7, r8, 40, 2497        bic r7, r8, (2 * 20), (1 << 1)498        bic r10, r1, r6499        bic r10, r1, r6, lsl #10500        bic r10, r1, r6, lsr #10501        bic r10, r1, r6, lsr #10502        bic r10, r1, r6, asr #10503        bic r10, r1, r6, ror #10504        bic r6, r7, r8, lsl r2505        bic r6, r7, r8, lsr r2506        bic r6, r7, r8, asr r2507        bic r6, r7, r8, ror r2508        bic r10, r1, r6, rrx509        bic r2, r3, #0x7fffffff510        bic sp, sp, #0x7fffffff511        bic pc, pc, #0x7fffffff512 513 514        @ destination register is optional515        bic r1, #0xf516        bic r1, $0xf517        bic r1, 0xf518        bic r1, -0xf519        bic r7, #(0xff << 16)520        bic r7, #-2147483638521        bic r7, #42, #2522        bic r7, #40, #2523        bic r7, $40, $2524        bic r7, 40, 2525        bic r7, (2 * 20), (1 << 1)526        bic r10, r1527        bic r10, r1, lsl #10528        bic r10, r1, lsr #10529        bic r10, r1, lsr #10530        bic r10, r1, asr #10531        bic r10, r1, ror #10532        bic r6, r7, lsl r2533        bic r6, r7, lsr r2534        bic r6, r7, asr r2535        bic r6, r7, ror r2536        bic r10, r1, rrx537 538@ CHECK: bic	r10, r1, #15            @ encoding: [0x0f,0xa0,0xc1,0xe3]539@ CHECK: bic	r10, r1, #15            @ encoding: [0x0f,0xa0,0xc1,0xe3]540@ CHECK: bic	r10, r1, #15            @ encoding: [0x0f,0xa0,0xc1,0xe3]541@ CHECK: and	r10, r1, #14            @ encoding: [0x0e,0xa0,0x01,0xe2]542@ CHECK: bic	r7, r8, #16711680       @ encoding: [0xff,0x78,0xc8,0xe3]543@ CHECK: bic    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0xc8,0xe3]544@ CHECK: bic    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0xc8,0xe3]545@ CHECK: bic    r7, r8, #40, #2         @ encoding: [0x28,0x71,0xc8,0xe3]546@ CHECK: bic    r7, r8, #40, #2         @ encoding: [0x28,0x71,0xc8,0xe3]547@ CHECK: bic    r7, r8, #40, #2         @ encoding: [0x28,0x71,0xc8,0xe3]548@ CHECK: bic	r10, r1, r6             @ encoding: [0x06,0xa0,0xc1,0xe1]549@ CHECK: bic	r10, r1, r6, lsl #10    @ encoding: [0x06,0xa5,0xc1,0xe1]550@ CHECK: bic	r10, r1, r6, lsr #10    @ encoding: [0x26,0xa5,0xc1,0xe1]551@ CHECK: bic	r10, r1, r6, lsr #10    @ encoding: [0x26,0xa5,0xc1,0xe1]552@ CHECK: bic	r10, r1, r6, asr #10    @ encoding: [0x46,0xa5,0xc1,0xe1]553@ CHECK: bic	r10, r1, r6, ror #10    @ encoding: [0x66,0xa5,0xc1,0xe1]554@ CHECK: bic	r6, r7, r8, lsl r2      @ encoding: [0x18,0x62,0xc7,0xe1]555@ CHECK: bic	r6, r7, r8, lsr r2      @ encoding: [0x38,0x62,0xc7,0xe1]556@ CHECK: bic	r6, r7, r8, asr r2      @ encoding: [0x58,0x62,0xc7,0xe1]557@ CHECK: bic	r6, r7, r8, ror r2      @ encoding: [0x78,0x62,0xc7,0xe1]558@ CHECK: bic	r10, r1, r6, rrx        @ encoding: [0x66,0xa0,0xc1,0xe1]559@ CHECK: and  r2, r3, #-2147483648    @ encoding: [0x02,0x21,0x03,0xe2]560@ CHECK: and  sp, sp, #-2147483648    @ encoding: [0x02,0xd1,0x0d,0xe2]561@ CHECK: and  pc, pc, #-2147483648    @ encoding: [0x02,0xf1,0x0f,0xe2]562 563 564@ CHECK: bic	r1, r1, #15             @ encoding: [0x0f,0x10,0xc1,0xe3]565@ CHECK: bic	r1, r1, #15             @ encoding: [0x0f,0x10,0xc1,0xe3]566@ CHECK: bic	r1, r1, #15             @ encoding: [0x0f,0x10,0xc1,0xe3]567@ CHECK: and	r1, r1, #14             @ encoding: [0x0e,0x10,0x01,0xe2]568@ CHECK: bic	r7, r7, #16711680       @ encoding: [0xff,0x78,0xc7,0xe3]569@ CHECK: bic    r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0xc7,0xe3]570@ CHECK: bic    r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0xc7,0xe3]571@ CHECK: bic    r7, r7, #40, #2         @ encoding: [0x28,0x71,0xc7,0xe3]572@ CHECK: bic    r7, r7, #40, #2         @ encoding: [0x28,0x71,0xc7,0xe3]573@ CHECK: bic    r7, r7, #40, #2         @ encoding: [0x28,0x71,0xc7,0xe3]574@ CHECK: bic    r7, r7, #40, #2         @ encoding: [0x28,0x71,0xc7,0xe3]575@ CHECK: bic	r10, r10, r1            @ encoding: [0x01,0xa0,0xca,0xe1]576@ CHECK: bic	r10, r10, r1, lsl #10   @ encoding: [0x01,0xa5,0xca,0xe1]577@ CHECK: bic	r10, r10, r1, lsr #10   @ encoding: [0x21,0xa5,0xca,0xe1]578@ CHECK: bic	r10, r10, r1, lsr #10   @ encoding: [0x21,0xa5,0xca,0xe1]579@ CHECK: bic	r10, r10, r1, asr #10   @ encoding: [0x41,0xa5,0xca,0xe1]580@ CHECK: bic	r10, r10, r1, ror #10   @ encoding: [0x61,0xa5,0xca,0xe1]581@ CHECK: bic	r6, r6, r7, lsl r2      @ encoding: [0x17,0x62,0xc6,0xe1]582@ CHECK: bic	r6, r6, r7, lsr r2      @ encoding: [0x37,0x62,0xc6,0xe1]583@ CHECK: bic	r6, r6, r7, asr r2      @ encoding: [0x57,0x62,0xc6,0xe1]584@ CHECK: bic	r6, r6, r7, ror r2      @ encoding: [0x77,0x62,0xc6,0xe1]585@ CHECK: bic	r10, r10, r1, rrx       @ encoding: [0x61,0xa0,0xca,0xe1]586 587    @ Test right shift by 32, which is encoded as 0588    bic r3, r1, r2, lsr #32589    bic r3, r1, r2, asr #32590@ CHECK: bic	r3, r1, r2, lsr #32     @ encoding: [0x22,0x30,0xc1,0xe1]591@ CHECK: bic	r3, r1, r2, asr #32     @ encoding: [0x42,0x30,0xc1,0xe1]592 593@------------------------------------------------------------------------------594@ BKPT595@------------------------------------------------------------------------------596        bkpt #10597        bkpt #65535598 599@ CHECK: bkpt  #10                      @ encoding: [0x7a,0x00,0x20,0xe1]600@ CHECK: bkpt  #65535                   @ encoding: [0x7f,0xff,0x2f,0xe1]601 602@------------------------------------------------------------------------------603@ BL/BLX (immediate)604@------------------------------------------------------------------------------605 606        bl _bar607        bleq _bar608        blx _bar609        blls #28634268610        blx	#32424576611        blx	#16212288612 613@ CHECK: bl  _bar @ encoding: [A,A,A,0xeb]614@ CHECK:   @   fixup A - offset: 0, value: _bar, kind: fixup_arm_uncondbl615@ CHECK-BE: bl  _bar @ encoding: [0xeb,A,A,A]616@ CHECK-BE:   @   fixup A - offset: 0, value: _bar, kind: fixup_arm_uncondbl617@ CHECK: bleq  _bar @ encoding: [A,A,A,0x0b]618@ CHECK:   @   fixup A - offset: 0, value: _bar, kind: fixup_arm_condbl619@ CHECK-BE: bleq  _bar @ encoding: [0x0b,A,A,A]620@ CHECK-BE:   @   fixup A - offset: 0, value: _bar, kind: fixup_arm_condbl621@ CHECK: blx	_bar @ encoding: [A,A,A,0xfa]622@ CHECK:   @   fixup A - offset: 0, value: _bar, kind: fixup_arm_blx623@ CHECK-BE: blx	_bar @ encoding: [0xfa,A,A,A]624@ CHECK-BE:   @   fixup A - offset: 0, value: _bar, kind: fixup_arm_blx625@ CHECK: blls	#28634268               @ encoding: [0x27,0x3b,0x6d,0x9b]626@ CHECK: blx	#32424576               @ encoding: [0xa0,0xb0,0x7b,0xfa]627@ CHECK: blx	#16212288               @ encoding: [0x50,0xd8,0x3d,0xfa]628@------------------------------------------------------------------------------629@ BLX (register)630@------------------------------------------------------------------------------631        blx r2632        blxne r2633 634@ CHECK: blx r2                         @ encoding: [0x32,0xff,0x2f,0xe1]635@ CHECK: blxne r2                       @ encoding: [0x32,0xff,0x2f,0x11]636 637@------------------------------------------------------------------------------638@ BX639@------------------------------------------------------------------------------640        bx r2641        bxne r2642 643@ CHECK: bx	r2                      @ encoding: [0x12,0xff,0x2f,0xe1]644@ CHECK: bxne	r2                      @ encoding: [0x12,0xff,0x2f,0x11]645 646@------------------------------------------------------------------------------647@ BXJ648@------------------------------------------------------------------------------649        bxj r2650        bxjne r2651 652@ CHECK: bxj	r2                      @ encoding: [0x22,0xff,0x2f,0xe1]653@ CHECK: bxjne	r2                      @ encoding: [0x22,0xff,0x2f,0x11]654 655 656@------------------------------------------------------------------------------657@ CDP/CDP2658@------------------------------------------------------------------------------659        cdp  p7, #1, c1, c1, c1, #4660        cdp2  p7, #1, c1, c1, c1, #4661        cdp2   p12, #0, c6, c12, c0, #7662 663@ CHECK: cdp  p7, #1, c1, c1, c1, #4     @ encoding: [0x81,0x17,0x11,0xee]664@ CHECK: cdp2  p7, #1, c1, c1, c1, #4    @ encoding: [0x81,0x17,0x11,0xfe]665@ CHECK: cdp2  p12, #0, c6, c12, c0, #7   @ encoding: [0xe0,0x6c,0x0c,0xfe]666 667        cdpne  p7, #1, c1, c1, c1, #4668@ CHECK: cdpne  p7, #1, c1, c1, c1, #4     @ encoding: [0x81,0x17,0x11,0x1e]669 670@------------------------------------------------------------------------------671@ CLREX672@------------------------------------------------------------------------------673        clrex674 675@ CHECK: clrex                           @ encoding: [0x1f,0xf0,0x7f,0xf5]676 677 678@------------------------------------------------------------------------------679@ CLZ680@------------------------------------------------------------------------------681    clz r1, r2682    clzeq r1, r2683 684@ CHECK: clz r1, r2                      @ encoding: [0x12,0x1f,0x6f,0xe1]685@ CHECK: clzeq r1, r2                    @ encoding: [0x12,0x1f,0x6f,0x01]686 687@------------------------------------------------------------------------------688@ CMN689@------------------------------------------------------------------------------690        cmn r1, #0xf691        cmn r1, $0xf692        cmn r1, 0xf693        cmn r1, -0xf694        cmn r7, #(0xff << 16)695        cmn r7, #-2147483638696        cmn r7, #42, #2697        cmn r7, #40, #2698        cmn r7, $40, $2699        cmn r7, 40, 2700        cmn r7, (20 * 2), (1 << 1)701        cmn r1, r6702        cmn r1, r6, lsl #10703        cmn r1, r6, lsr #10704        cmn sp, r6, lsr #10705        cmn r1, r6, asr #10706        cmn r1, r6, ror #10707        cmn r7, r8, lsl r2708        cmn sp, r8, lsr r2709        cmn r7, r8, asr r2710        cmn r7, r8, ror r2711        cmn r1, r6, rrx712 713@ CHECK: cmn	r1, #15                 @ encoding: [0x0f,0x00,0x71,0xe3]714@ CHECK: cmn	r1, #15                 @ encoding: [0x0f,0x00,0x71,0xe3]715@ CHECK: cmn	r1, #15                 @ encoding: [0x0f,0x00,0x71,0xe3]716@ CHECK: cmp	r1, #15                 @ encoding: [0x0f,0x00,0x51,0xe3]717@ CHECK: cmn	r7, #16711680           @ encoding: [0xff,0x08,0x77,0xe3]718@ CHECK: cmn	r7, #-2147483638        @ encoding: [0x2a,0x01,0x77,0xe3]719@ CHECK: cmn	r7, #-2147483638        @ encoding: [0x2a,0x01,0x77,0xe3]720@ CHECK: cmn	r7, #40, #2             @ encoding: [0x28,0x01,0x77,0xe3]721@ CHECK: cmn	r7, #40, #2             @ encoding: [0x28,0x01,0x77,0xe3]722@ CHECK: cmn	r7, #40, #2             @ encoding: [0x28,0x01,0x77,0xe3]723@ CHECK: cmn	r7, #40, #2             @ encoding: [0x28,0x01,0x77,0xe3]724@ CHECK: cmn	r1, r6                  @ encoding: [0x06,0x00,0x71,0xe1]725@ CHECK: cmn	r1, r6, lsl #10         @ encoding: [0x06,0x05,0x71,0xe1]726@ CHECK: cmn	r1, r6, lsr #10         @ encoding: [0x26,0x05,0x71,0xe1]727@ CHECK: cmn	sp, r6, lsr #10         @ encoding: [0x26,0x05,0x7d,0xe1]728@ CHECK: cmn	r1, r6, asr #10         @ encoding: [0x46,0x05,0x71,0xe1]729@ CHECK: cmn	r1, r6, ror #10         @ encoding: [0x66,0x05,0x71,0xe1]730@ CHECK: cmn	r7, r8, lsl r2          @ encoding: [0x18,0x02,0x77,0xe1]731@ CHECK: cmn	sp, r8, lsr r2          @ encoding: [0x38,0x02,0x7d,0xe1]732@ CHECK: cmn	r7, r8, asr r2          @ encoding: [0x58,0x02,0x77,0xe1]733@ CHECK: cmn	r7, r8, ror r2          @ encoding: [0x78,0x02,0x77,0xe1]734@ CHECK: cmn	r1, r6, rrx             @ encoding: [0x66,0x00,0x71,0xe1]735 736@------------------------------------------------------------------------------737@ CMP738@------------------------------------------------------------------------------739        cmp r1, #0xf740        cmp r1, $0xf741        cmp r1, 0xf742        cmp r1, -0xf743        cmp r7, #(0xff << 16)744        cmp r7, #-2147483638745        cmp r7, #42, #2746        cmp r7, #40, #2747        cmp r7, $40, $2748        cmp r7, 40, 2749        cmp r7, (2 * 20), (1 << 1)750        cmp r1, r6751        cmp r1, r6, lsl #10752        cmp r1, r6, lsr #10753        cmp sp, r6, lsr #10754        cmp r1, r6, asr #10755        cmp r1, r6, ror #10756        cmp r7, r8, lsl r2757        cmp sp, r8, lsr r2758        cmp r7, r8, asr r2759        cmp r7, r8, ror r2760        cmp r1, r6, rrx761        cmp r0, #-2762        cmp lr, #0763 764@ CHECK: cmp	r1, #15                 @ encoding: [0x0f,0x00,0x51,0xe3]765@ CHECK: cmp	r1, #15                 @ encoding: [0x0f,0x00,0x51,0xe3]766@ CHECK: cmp	r1, #15                 @ encoding: [0x0f,0x00,0x51,0xe3]767@ CHECK: cmn	r1, #15                 @ encoding: [0x0f,0x00,0x71,0xe3]768@ CHECK: cmp	r7, #16711680           @ encoding: [0xff,0x08,0x57,0xe3]769@ CHECK: cmp	r7, #-2147483638        @ encoding: [0x2a,0x01,0x57,0xe3]770@ CHECK: cmp	r7, #-2147483638        @ encoding: [0x2a,0x01,0x57,0xe3]771@ CHECK: cmp    r7, #40, #2             @ encoding: [0x28,0x01,0x57,0xe3]772@ CHECK: cmp    r7, #40, #2             @ encoding: [0x28,0x01,0x57,0xe3]773@ CHECK: cmp    r7, #40, #2             @ encoding: [0x28,0x01,0x57,0xe3]774@ CHECK: cmp    r7, #40, #2             @ encoding: [0x28,0x01,0x57,0xe3]775@ CHECK: cmp	r1, r6                  @ encoding: [0x06,0x00,0x51,0xe1]776@ CHECK: cmp	r1, r6, lsl #10         @ encoding: [0x06,0x05,0x51,0xe1]777@ CHECK: cmp	r1, r6, lsr #10         @ encoding: [0x26,0x05,0x51,0xe1]778@ CHECK: cmp	sp, r6, lsr #10         @ encoding: [0x26,0x05,0x5d,0xe1]779@ CHECK: cmp	r1, r6, asr #10         @ encoding: [0x46,0x05,0x51,0xe1]780@ CHECK: cmp	r1, r6, ror #10         @ encoding: [0x66,0x05,0x51,0xe1]781@ CHECK: cmp	r7, r8, lsl r2          @ encoding: [0x18,0x02,0x57,0xe1]782@ CHECK: cmp	sp, r8, lsr r2          @ encoding: [0x38,0x02,0x5d,0xe1]783@ CHECK: cmp	r7, r8, asr r2          @ encoding: [0x58,0x02,0x57,0xe1]784@ CHECK: cmp	r7, r8, ror r2          @ encoding: [0x78,0x02,0x57,0xe1]785@ CHECK: cmp	r1, r6, rrx             @ encoding: [0x66,0x00,0x51,0xe1]786@ CHECK: cmn	r0, #2                  @ encoding: [0x02,0x00,0x70,0xe3]787@ CHECK: cmp  lr, #0                    @ encoding: [0x00,0x00,0x5e,0xe3]788 789 790@------------------------------------------------------------------------------791@ CPS792@------------------------------------------------------------------------------793        cpsie  aif794        cpsie  AIF795        cps  #15796        cpsid  if, #10797 798@ CHECK: cpsie  aif @ encoding: [0xc0,0x01,0x08,0xf1]799@ CHECK: cpsie  aif @ encoding: [0xc0,0x01,0x08,0xf1]800@ CHECK: cps  #15 @ encoding: [0x0f,0x00,0x02,0xf1]801@ CHECK: cpsid  if, #10 @ encoding: [0xca,0x00,0x0e,0xf1]802 803 804@------------------------------------------------------------------------------805@ DBG806@------------------------------------------------------------------------------807        dbg #0808        dbg #5809        dbg #15810 811@ CHECK: dbg #0                         @ encoding: [0xf0,0xf0,0x20,0xe3]812@ CHECK: dbg #5                         @ encoding: [0xf5,0xf0,0x20,0xe3]813@ CHECK: dbg #15                        @ encoding: [0xff,0xf0,0x20,0xe3]814 815 816@------------------------------------------------------------------------------817@ DMB818@------------------------------------------------------------------------------819        dmb #0xf820        dmb #0xe821        dmb #0xd822        dmb #0xc823        dmb #0xb824        dmb #0xa825        dmb #0x9826        dmb #0x8827        dmb #0x7828        dmb #0x6829        dmb #0x5830        dmb #0x4831        dmb #0x3832        dmb #0x2833        dmb #0x1834        dmb #0x0835 836        dmb sy837        dmb st838        dmb sh839        dmb ish840        dmb shst841        dmb ishst842        dmb un843        dmb nsh844        dmb unst845        dmb nshst846        dmb osh847        dmb oshst848        dmb849 850@ CHECK: dmb	sy                      @ encoding: [0x5f,0xf0,0x7f,0xf5]851@ CHECK: dmb	st                      @ encoding: [0x5e,0xf0,0x7f,0xf5]852@ CHECK: dmb	#0xd                    @ encoding: [0x5d,0xf0,0x7f,0xf5]853@ CHECK: dmb	#0xc                    @ encoding: [0x5c,0xf0,0x7f,0xf5]854@ CHECK: dmb	ish                     @ encoding: [0x5b,0xf0,0x7f,0xf5]855@ CHECK: dmb	ishst                   @ encoding: [0x5a,0xf0,0x7f,0xf5]856@ CHECK: dmb	#0x9                    @ encoding: [0x59,0xf0,0x7f,0xf5]857@ CHECK: dmb	#0x8                    @ encoding: [0x58,0xf0,0x7f,0xf5]858@ CHECK: dmb	nsh                     @ encoding: [0x57,0xf0,0x7f,0xf5]859@ CHECK: dmb	nshst                   @ encoding: [0x56,0xf0,0x7f,0xf5]860@ CHECK: dmb	#0x5                    @ encoding: [0x55,0xf0,0x7f,0xf5]861@ CHECK: dmb	#0x4                    @ encoding: [0x54,0xf0,0x7f,0xf5]862@ CHECK: dmb	osh                     @ encoding: [0x53,0xf0,0x7f,0xf5]863@ CHECK: dmb	oshst                   @ encoding: [0x52,0xf0,0x7f,0xf5]864@ CHECK: dmb	#0x1                    @ encoding: [0x51,0xf0,0x7f,0xf5]865@ CHECK: dmb	#0x0                    @ encoding: [0x50,0xf0,0x7f,0xf5]866 867@ CHECK: dmb	sy                      @ encoding: [0x5f,0xf0,0x7f,0xf5]868@ CHECK: dmb	st                      @ encoding: [0x5e,0xf0,0x7f,0xf5]869@ CHECK: dmb	ish                     @ encoding: [0x5b,0xf0,0x7f,0xf5]870@ CHECK: dmb	ish                     @ encoding: [0x5b,0xf0,0x7f,0xf5]871@ CHECK: dmb	ishst                   @ encoding: [0x5a,0xf0,0x7f,0xf5]872@ CHECK: dmb	ishst                   @ encoding: [0x5a,0xf0,0x7f,0xf5]873@ CHECK: dmb	nsh                     @ encoding: [0x57,0xf0,0x7f,0xf5]874@ CHECK: dmb	nsh                     @ encoding: [0x57,0xf0,0x7f,0xf5]875@ CHECK: dmb	nshst                   @ encoding: [0x56,0xf0,0x7f,0xf5]876@ CHECK: dmb	nshst                   @ encoding: [0x56,0xf0,0x7f,0xf5]877@ CHECK: dmb	osh                     @ encoding: [0x53,0xf0,0x7f,0xf5]878@ CHECK: dmb	oshst                   @ encoding: [0x52,0xf0,0x7f,0xf5]879@ CHECK: dmb	sy                      @ encoding: [0x5f,0xf0,0x7f,0xf5]880 881@------------------------------------------------------------------------------882@ DSB883@------------------------------------------------------------------------------884        dsb #0xf885        dsb #0xe886        dsb #0xd887        dsb #0xc888        dsb #0xb889        dsb #0xa890        dsb #0x9891        dsb #0x8892        dsb #0x7893        dsb #0x6894        dsb #0x5895        dsb #0x4896        dsb #0x3897        dsb #0x2898        dsb #0x1899        dsb #0x0900 901        dsb 8902        dsb 7903 904        dsb sy905        dsb st906        dsb sh907        dsb ish908        dsb shst909        dsb ishst910        dsb un911        dsb nsh912        dsb unst913        dsb nshst914        dsb osh915        dsb oshst916        dsb917 918@ CHECK: dsb	sy                      @ encoding: [0x4f,0xf0,0x7f,0xf5]919@ CHECK: dsb	st                      @ encoding: [0x4e,0xf0,0x7f,0xf5]920@ CHECK: dsb	#0xd                    @ encoding: [0x4d,0xf0,0x7f,0xf5]921@ CHECK: dsb	#0xc                    @ encoding: [0x4c,0xf0,0x7f,0xf5]922@ CHECK: dsb	ish                     @ encoding: [0x4b,0xf0,0x7f,0xf5]923@ CHECK: dsb	ishst                   @ encoding: [0x4a,0xf0,0x7f,0xf5]924@ CHECK: dsb	#0x9                    @ encoding: [0x49,0xf0,0x7f,0xf5]925@ CHECK: dsb	#0x8                    @ encoding: [0x48,0xf0,0x7f,0xf5]926@ CHECK: dsb	nsh                     @ encoding: [0x47,0xf0,0x7f,0xf5]927@ CHECK: dsb	nshst                   @ encoding: [0x46,0xf0,0x7f,0xf5]928@ CHECK: dsb	#0x5                    @ encoding: [0x45,0xf0,0x7f,0xf5]929@ CHECK: pssbb                          @ encoding: [0x44,0xf0,0x7f,0xf5]930@ CHECK: dsb	osh                     @ encoding: [0x43,0xf0,0x7f,0xf5]931@ CHECK: dsb	oshst                   @ encoding: [0x42,0xf0,0x7f,0xf5]932@ CHECK: dsb	#0x1                    @ encoding: [0x41,0xf0,0x7f,0xf5]933@ CHECK: ssbb                           @ encoding: [0x40,0xf0,0x7f,0xf5]934 935@ CHECK: dsb	#0x8                    @ encoding: [0x48,0xf0,0x7f,0xf5]936@ CHECK: dsb	nsh                     @ encoding: [0x47,0xf0,0x7f,0xf5]937 938@ CHECK: dsb	sy                      @ encoding: [0x4f,0xf0,0x7f,0xf5]939@ CHECK: dsb	st                      @ encoding: [0x4e,0xf0,0x7f,0xf5]940@ CHECK: dsb	ish                     @ encoding: [0x4b,0xf0,0x7f,0xf5]941@ CHECK: dsb	ish                     @ encoding: [0x4b,0xf0,0x7f,0xf5]942@ CHECK: dsb	ishst                   @ encoding: [0x4a,0xf0,0x7f,0xf5]943@ CHECK: dsb	ishst                   @ encoding: [0x4a,0xf0,0x7f,0xf5]944@ CHECK: dsb	nsh                     @ encoding: [0x47,0xf0,0x7f,0xf5]945@ CHECK: dsb	nsh                     @ encoding: [0x47,0xf0,0x7f,0xf5]946@ CHECK: dsb	nshst                   @ encoding: [0x46,0xf0,0x7f,0xf5]947@ CHECK: dsb	nshst                   @ encoding: [0x46,0xf0,0x7f,0xf5]948@ CHECK: dsb	osh                     @ encoding: [0x43,0xf0,0x7f,0xf5]949@ CHECK: dsb	oshst                   @ encoding: [0x42,0xf0,0x7f,0xf5]950@ CHECK: dsb	sy                      @ encoding: [0x4f,0xf0,0x7f,0xf5]951 952@ With capitals953        dsb SY954        dsb OSHST955 956@ CHECK: dsb	sy                      @ encoding: [0x4f,0xf0,0x7f,0xf5]957@ CHECK: dsb	oshst                   @ encoding: [0x42,0xf0,0x7f,0xf5]958@------------------------------------------------------------------------------959@ EOR960@------------------------------------------------------------------------------961        eor r4, r5, #0xf000962        eor r4, r5, $0xf000963        eor r4, r5, 0xf000964        eor r7, r8, #(0xff << 16)965        eor r7, r8, #-2147483638966        eor r7, r8, #42, #2967        eor r7, r8, #40, #2968        eor r7, r8, $40, $2969        eor r7, r8, 40, 2970        eor r7, r8, (20 * 2), (1 << 1)971        eor r4, r5, r6972        eor r4, r5, r6, lsl #5973        eor r4, r5, r6, lsr #5974        eor r4, r5, r6, lsr #5975        eor r4, r5, r6, asr #5976        eor r4, r5, r6, ror #5977        eor r6, r7, r8, lsl r9978        eor r6, r7, r8, lsr r9979        eor r6, r7, r8, asr r9980        eor r6, r7, r8, ror r9981        eor r4, r5, r6, rrx982 983        @ destination register is optional984        eor r5, #0xf000985        eor r5, $0xf000986        eor r5, 0xf000987        eor r7, #(0xff << 16)988        eor r7, #-2147483638989        eor r7, #42, #2990        eor r7, #40, #2991        eor r7, $40, $2992        eor r7, 40, 2993        eor r7, (20 * 2), (1 << 1)994        eor r4, r5995        eor r4, r5, lsl #5996        eor r4, r5, lsr #5997        eor r4, r5, lsr #5998        eor r4, r5, asr #5999        eor r4, r5, ror #51000        eor r6, r7, lsl r91001        eor r6, r7, lsr r91002        eor r6, r7, asr r91003        eor r6, r7, ror r91004        eor r4, r5, rrx1005 1006@ CHECK: eor	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x25,0xe2]1007@ CHECK: eor	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x25,0xe2]1008@ CHECK: eor	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x25,0xe2]1009@ CHECK: eor	r7, r8, #16711680       @ encoding: [0xff,0x78,0x28,0xe2]1010@ CHECK: eor    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0x28,0xe2]1011@ CHECK: eor    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0x28,0xe2]1012@ CHECK: eor    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x28,0xe2]1013@ CHECK: eor    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x28,0xe2]1014@ CHECK: eor    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x28,0xe2]1015@ CHECK: eor    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x28,0xe2]1016@ CHECK: eor	r4, r5, r6              @ encoding: [0x06,0x40,0x25,0xe0]1017@ CHECK: eor	r4, r5, r6, lsl #5      @ encoding: [0x86,0x42,0x25,0xe0]1018@ CHECK: eor	r4, r5, r6, lsr #5      @ encoding: [0xa6,0x42,0x25,0xe0]1019@ CHECK: eor	r4, r5, r6, lsr #5      @ encoding: [0xa6,0x42,0x25,0xe0]1020@ CHECK: eor	r4, r5, r6, asr #5      @ encoding: [0xc6,0x42,0x25,0xe0]1021@ CHECK: eor	r4, r5, r6, ror #5      @ encoding: [0xe6,0x42,0x25,0xe0]1022@ CHECK: eor	r6, r7, r8, lsl r9      @ encoding: [0x18,0x69,0x27,0xe0]1023@ CHECK: eor	r6, r7, r8, lsr r9      @ encoding: [0x38,0x69,0x27,0xe0]1024@ CHECK: eor	r6, r7, r8, asr r9      @ encoding: [0x58,0x69,0x27,0xe0]1025@ CHECK: eor	r6, r7, r8, ror r9      @ encoding: [0x78,0x69,0x27,0xe0]1026@ CHECK: eor	r4, r5, r6, rrx         @ encoding: [0x66,0x40,0x25,0xe0]1027 1028 1029@ CHECK: eor	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x25,0xe2]1030@ CHECK: eor	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x25,0xe2]1031@ CHECK: eor	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x25,0xe2]1032@ CHECK: eor	r7, r7, #16711680       @ encoding: [0xff,0x78,0x27,0xe2]1033@ CHECK: eor	r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0x27,0xe2]1034@ CHECK: eor	r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0x27,0xe2]1035@ CHECK: eor	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x27,0xe2]1036@ CHECK: eor	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x27,0xe2]1037@ CHECK: eor	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x27,0xe2]1038@ CHECK: eor	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x27,0xe2]1039@ CHECK: eor	r4, r4, r5              @ encoding: [0x05,0x40,0x24,0xe0]1040@ CHECK: eor	r4, r4, r5, lsl #5      @ encoding: [0x85,0x42,0x24,0xe0]1041@ CHECK: eor	r4, r4, r5, lsr #5      @ encoding: [0xa5,0x42,0x24,0xe0]1042@ CHECK: eor	r4, r4, r5, lsr #5      @ encoding: [0xa5,0x42,0x24,0xe0]1043@ CHECK: eor	r4, r4, r5, asr #5      @ encoding: [0xc5,0x42,0x24,0xe0]1044@ CHECK: eor	r4, r4, r5, ror #5      @ encoding: [0xe5,0x42,0x24,0xe0]1045@ CHECK: eor	r6, r6, r7, lsl r9      @ encoding: [0x17,0x69,0x26,0xe0]1046@ CHECK: eor	r6, r6, r7, lsr r9      @ encoding: [0x37,0x69,0x26,0xe0]1047@ CHECK: eor	r6, r6, r7, asr r9      @ encoding: [0x57,0x69,0x26,0xe0]1048@ CHECK: eor	r6, r6, r7, ror r9      @ encoding: [0x77,0x69,0x26,0xe0]1049@ CHECK: eor	r4, r4, r5, rrx         @ encoding: [0x65,0x40,0x24,0xe0]1050 1051    @ Test right shift by 32, which is encoded as 01052    eor r3, r1, r2, lsr #321053    eor r3, r1, r2, asr #321054@ CHECK: eor	r3, r1, r2, lsr #32     @ encoding: [0x22,0x30,0x21,0xe0]1055@ CHECK: eor	r3, r1, r2, asr #32     @ encoding: [0x42,0x30,0x21,0xe0]1056 1057@------------------------------------------------------------------------------1058@ ISB1059@------------------------------------------------------------------------------1060        isb sy1061        isb1062        isb #151063        isb #11064 1065@ CHECK: isb sy                         @ encoding: [0x6f,0xf0,0x7f,0xf5]1066@ CHECK: isb sy                         @ encoding: [0x6f,0xf0,0x7f,0xf5]1067@ CHECK: isb sy                         @ encoding: [0x6f,0xf0,0x7f,0xf5]1068@ CHECK: isb #0x1                       @ encoding: [0x61,0xf0,0x7f,0xf5]1069 1070 1071@------------------------------------------------------------------------------1072@ LDC{L}/LDC2{L}1073@------------------------------------------------------------------------------1074        ldc2 p0, c8, [r1, #4]1075        ldc2 p1, c7, [r2]1076        ldc2 p2, c6, [r3, #-224]1077        ldc2 p3, c5, [r4, #-120]!1078        ldc2 p4, c4, [r5], #161079        ldc2 p5, c3, [r6], #-721080        ldc2l p6, c2, [r7, #4]1081        ldc2l p7, c1, [r8]1082        ldc2l p8, c0, [r9, #-224]1083        ldc2l p9, c1, [r10, #-120]!1084        ldc2l p0, c2, [r11], #161085        ldc2l p1, c3, [r12], #-721086 1087        ldc p12, c4, [r0, #4]1088        ldc p13, c5, [r1]1089        ldc p14, c6, [r2, #-224]1090        ldc p15, c7, [r3, #-120]!1091        ldc p5, c8, [r4], #161092        ldc p4, c9, [r5], #-721093        ldcl p3, c10, [r6, #4]1094        ldcl p2, c11, [r7]1095        ldcl p1, c12, [r8, #-224]1096        ldcl p0, c13, [r9, #-120]!1097        ldcl p6, c14, [r10], #161098        ldcl p7, c15, [r11], #-721099 1100        ldclo p12, c4, [r0, #4]1101        ldchi p13, c5, [r1]1102        ldccs p14, c6, [r2, #-224]1103        ldccc p15, c7, [r3, #-120]!1104        ldceq p5, c8, [r4], #161105        ldcgt p4, c9, [r5], #-721106        ldcllt p3, c10, [r6, #4]1107        ldclge p2, c11, [r7]1108        ldclle p1, c12, [r8, #-224]1109        ldclne p0, c13, [r9, #-120]!1110        ldcleq p6, c14, [r10], #161111        ldclhi p7, c15, [r11], #-721112 1113        ldc2 p2, c8, [r1], { 25 }1114 1115@ CHECK: ldc2	p0, c8, [r1, #4]        @ encoding: [0x01,0x80,0x91,0xfd]1116@ CHECK: ldc2	p1, c7, [r2]            @ encoding: [0x00,0x71,0x92,0xfd]1117@ CHECK: ldc2	p2, c6, [r3, #-224]     @ encoding: [0x38,0x62,0x13,0xfd]1118@ CHECK: ldc2	p3, c5, [r4, #-120]!    @ encoding: [0x1e,0x53,0x34,0xfd]1119@ CHECK: ldc2	p4, c4, [r5], #16       @ encoding: [0x04,0x44,0xb5,0xfc]1120@ CHECK: ldc2	p5, c3, [r6], #-72      @ encoding: [0x12,0x35,0x36,0xfc]1121@ CHECK: ldc2l	p6, c2, [r7, #4]        @ encoding: [0x01,0x26,0xd7,0xfd]1122@ CHECK: ldc2l	p7, c1, [r8]            @ encoding: [0x00,0x17,0xd8,0xfd]1123@ CHECK: ldc2l	p8, c0, [r9, #-224]     @ encoding: [0x38,0x08,0x59,0xfd]1124@ CHECK: ldc2l	p9, c1, [r10, #-120]!   @ encoding: [0x1e,0x19,0x7a,0xfd]1125@ CHECK: ldc2l	p0, c2, [r11], #16      @ encoding: [0x04,0x20,0xfb,0xfc]1126@ CHECK: ldc2l	p1, c3, [r12], #-72     @ encoding: [0x12,0x31,0x7c,0xfc]1127 1128@ CHECK: ldc	p12, c4, [r0, #4]       @ encoding: [0x01,0x4c,0x90,0xed]1129@ CHECK: ldc	p13, c5, [r1]           @ encoding: [0x00,0x5d,0x91,0xed]1130@ CHECK: ldc	p14, c6, [r2, #-224]    @ encoding: [0x38,0x6e,0x12,0xed]1131@ CHECK: ldc	p15, c7, [r3, #-120]!   @ encoding: [0x1e,0x7f,0x33,0xed]1132@ CHECK: ldc	p5, c8, [r4], #16       @ encoding: [0x04,0x85,0xb4,0xec]1133@ CHECK: ldc	p4, c9, [r5], #-72      @ encoding: [0x12,0x94,0x35,0xec]1134@ CHECK: ldcl	p3, c10, [r6, #4]       @ encoding: [0x01,0xa3,0xd6,0xed]1135@ CHECK: ldcl	p2, c11, [r7]           @ encoding: [0x00,0xb2,0xd7,0xed]1136@ CHECK: ldcl	p1, c12, [r8, #-224]    @ encoding: [0x38,0xc1,0x58,0xed]1137@ CHECK: ldcl	p0, c13, [r9, #-120]!   @ encoding: [0x1e,0xd0,0x79,0xed]1138@ CHECK: ldcl	p6, c14, [r10], #16     @ encoding: [0x04,0xe6,0xfa,0xec]1139@ CHECK: ldcl	p7, c15, [r11], #-72    @ encoding: [0x12,0xf7,0x7b,0xec]1140 1141@ CHECK: ldclo	p12, c4, [r0, #4]       @ encoding: [0x01,0x4c,0x90,0x3d]1142@ CHECK: ldchi	p13, c5, [r1]           @ encoding: [0x00,0x5d,0x91,0x8d]1143@ CHECK: ldchs	p14, c6, [r2, #-224]    @ encoding: [0x38,0x6e,0x12,0x2d]1144@ CHECK: ldclo	p15, c7, [r3, #-120]!   @ encoding: [0x1e,0x7f,0x33,0x3d]1145@ CHECK: ldceq	p5, c8, [r4], #16       @ encoding: [0x04,0x85,0xb4,0x0c]1146@ CHECK: ldcgt	p4, c9, [r5], #-72      @ encoding: [0x12,0x94,0x35,0xcc]1147@ CHECK: ldcllt	p3, c10, [r6, #4]       @ encoding: [0x01,0xa3,0xd6,0xbd]1148@ CHECK: ldclge	p2, c11, [r7]           @ encoding: [0x00,0xb2,0xd7,0xad]1149@ CHECK: ldclle	p1, c12, [r8, #-224]    @ encoding: [0x38,0xc1,0x58,0xdd]1150@ CHECK: ldclne	p0, c13, [r9, #-120]!   @ encoding: [0x1e,0xd0,0x79,0x1d]1151@ CHECK: ldcleq	p6, c14, [r10], #16     @ encoding: [0x04,0xe6,0xfa,0x0c]1152@ CHECK: ldclhi	p7, c15, [r11], #-72    @ encoding: [0x12,0xf7,0x7b,0x8c]1153 1154@ CHECK: ldc2	p2, c8, [r1], {25}      @ encoding: [0x19,0x82,0x91,0xfc]1155 1156 1157@------------------------------------------------------------------------------1158@ LDM*1159@------------------------------------------------------------------------------1160        ldm       r2, {r1,r3-r6,sp}1161        ldmia     r2, {r1,r3-r6,sp}1162        ldmib     r2, {r1,r3-r6,sp}1163        ldmda     r2, {r1,r3-r6,sp}1164        ldmdb     r2, {r1,r3-r6,sp}1165        ldmfd     r2, {r1,r3-r6,sp}1166 1167        @ with update1168        ldm       r2!, {r1,r3-r6,sp}1169        ldmib     r2!, {r1,r3-r6,sp}1170        ldmda     r2!, {r1,r3-r6,sp}1171        ldmdb     r2!, {r1,r3-r6,sp}1172 1173        @ system version1174        ldm r0, {r0, r2, lr}^1175        ldm sp!, {r0-r3, pc}^1176 1177@ CHECK: ldm   r2, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x92,0xe8]1178@ CHECK: ldm   r2, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x92,0xe8]1179@ CHECK: ldmib r2, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x92,0xe9]1180@ CHECK: ldmda r2, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x12,0xe8]1181@ CHECK: ldmdb r2, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x12,0xe9]1182@ CHECK: ldm   r2, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x92,0xe8]1183 1184@ CHECK: ldm   r2!, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0xb2,0xe8]1185@ CHECK: ldmib r2!, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0xb2,0xe9]1186@ CHECK: ldmda r2!, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x32,0xe8]1187@ CHECK: ldmdb r2!, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x32,0xe9]1188@ CHECK: ldm	r0, {r0, r2, lr} ^          @ encoding: [0x05,0x40,0xd0,0xe8]1189@ CHECK: ldm	sp!, {r0, r1, r2, r3, pc} ^ @ encoding: [0x0f,0x80,0xfd,0xe8]1190 1191 1192@------------------------------------------------------------------------------1193@ LDREX/LDREXB/LDREXH/LDREXD1194@------------------------------------------------------------------------------1195        ldrexb  r3, [r4]1196        ldrexh  r2, [r5]1197        ldrex  r1, [r7]1198        ldrexd  r6, r7, [r8]1199 1200@ CHECK: ldrexb	r3, [r4]                @ encoding: [0x9f,0x3f,0xd4,0xe1]1201@ CHECK: ldrexh	r2, [r5]                @ encoding: [0x9f,0x2f,0xf5,0xe1]1202@ CHECK: ldrex	r1, [r7]                @ encoding: [0x9f,0x1f,0x97,0xe1]1203@ CHECK: ldrexd	r6, r7, [r8]            @ encoding: [0x9f,0x6f,0xb8,0xe1]1204 1205@ GNU alias1206        ldrexd  r6, [r8]1207@ CHECK: ldrexd	r6, r7, [r8]            @ encoding: [0x9f,0x6f,0xb8,0xe1]1208 1209@------------------------------------------------------------------------------1210@ LDRHT1211@------------------------------------------------------------------------------1212        ldrhthi	r8, [r11], #-01213        ldrhthi	r8, [r11], #01214 1215@ CHECK: ldrhthi r8, [r11], #-0         @ encoding: [0xb0,0x80,0x7b,0x80]1216@ CHECK: ldrhthi r8, [r11], #0          @ encoding: [0xb0,0x80,0xfb,0x80]1217 1218@------------------------------------------------------------------------------1219@ LSL1220@------------------------------------------------------------------------------1221	lsl r2, r4, #311222	lsl r2, r4, #11223	lsl r2, r4, #01224	lsl r4, #11225 1226@ CHECK: lsl	r2, r4, #31             @ encoding: [0x84,0x2f,0xa0,0xe1]1227@ CHECK: lsl	r2, r4, #1              @ encoding: [0x84,0x20,0xa0,0xe1]1228@ CHECK: mov	r2, r4                  @ encoding: [0x04,0x20,0xa0,0xe1]1229@ CHECK: lsl	r4, r4, #1              @ encoding: [0x84,0x40,0xa0,0xe1]1230 1231 1232@------------------------------------------------------------------------------1233@ LSR1234@------------------------------------------------------------------------------1235	lsr r2, r4, #321236	lsr r2, r4, #21237	lsr r2, r4, #01238	lsr r4, #21239 1240@ CHECK: lsr	r2, r4, #32             @ encoding: [0x24,0x20,0xa0,0xe1]1241@ CHECK: lsr	r2, r4, #2              @ encoding: [0x24,0x21,0xa0,0xe1]1242@ CHECK: mov	r2, r4                  @ encoding: [0x04,0x20,0xa0,0xe1]1243@ CHECK: lsr	r4, r4, #2              @ encoding: [0x24,0x41,0xa0,0xe1]1244 1245 1246@------------------------------------------------------------------------------1247@ MCR/MCR21248@------------------------------------------------------------------------------1249        mcr  p7, #1, r5, c1, c1, #41250        mcr2  p7, #1, r5, c1, c1, #41251        MCR  P7, #1, R5, C1, C1, #41252        MCR2  P7, #1, R5, C1, C1, #41253 1254@ CHECK: mcr  p7, #1, r5, c1, c1, #4    @ encoding: [0x91,0x57,0x21,0xee]1255@ CHECK: mcr2  p7, #1, r5, c1, c1, #4   @ encoding: [0x91,0x57,0x21,0xfe]1256@ CHECK: mcr  p7, #1, r5, c1, c1, #4    @ encoding: [0x91,0x57,0x21,0xee]1257@ CHECK: mcr2  p7, #1, r5, c1, c1, #4   @ encoding: [0x91,0x57,0x21,0xfe]1258 1259        mcrls  p7, #1, r5, c1, c1, #41260        MCRLS  P7, #1, R5, C1, C1, #41261@ CHECK: mcrls  p7, #1, r5, c1, c1, #4   @ encoding: [0x91,0x57,0x21,0x9e]1262@ CHECK: mcrls  p7, #1, r5, c1, c1, #4   @ encoding: [0x91,0x57,0x21,0x9e]1263 1264@------------------------------------------------------------------------------1265@ MCRR/MCRR21266@------------------------------------------------------------------------------1267        mcrr  p7, #15, r5, r4, c11268        mcrr2  p7, #15, r5, r4, c11269        MCRR  P7, #15, R5, R4, C11270        MCRR2  P7, #15, R5, R4, C11271 1272@ CHECK: mcrr  p7, #15, r5, r4, c1      @ encoding: [0xf1,0x57,0x44,0xec]1273@ CHECK: mcrr2  p7, #15, r5, r4, c1     @ encoding: [0xf1,0x57,0x44,0xfc]1274@ CHECK: mcrr  p7, #15, r5, r4, c1      @ encoding: [0xf1,0x57,0x44,0xec]1275@ CHECK: mcrr2  p7, #15, r5, r4, c1     @ encoding: [0xf1,0x57,0x44,0xfc]1276 1277        mcrrgt  p7, #15, r5, r4, c11278        MCRRGT  P7, #15, R5, R4, C11279@ CHECK: mcrrgt  p7, #15, r5, r4, c1     @ encoding: [0xf1,0x57,0x44,0xcc]1280@ CHECK: mcrrgt  p7, #15, r5, r4, c1     @ encoding: [0xf1,0x57,0x44,0xcc]1281 1282@------------------------------------------------------------------------------1283@ MLA1284@------------------------------------------------------------------------------1285        mla  r1,r2,r3,r41286        mlas r1,r2,r3,r41287        mlane  r1,r2,r3,r41288        mlasne r1,r2,r3,r41289 1290@ CHECK: mla 	r1, r2, r3, r4          @ encoding: [0x92,0x43,0x21,0xe0]1291@ CHECK: mlas	r1, r2, r3, r4          @ encoding: [0x92,0x43,0x31,0xe0]1292@ CHECK: mlane 	r1, r2, r3, r4          @ encoding: [0x92,0x43,0x21,0x10]1293@ CHECK: mlasne	r1, r2, r3, r4          @ encoding: [0x92,0x43,0x31,0x10]1294 1295@------------------------------------------------------------------------------1296@ MLS1297@------------------------------------------------------------------------------1298        mls  r2,r5,r6,r31299        mlsne  r2,r5,r6,r31300 1301@ CHECK: mls	r2, r5, r6, r3          @ encoding: [0x95,0x36,0x62,0xe0]1302@ CHECK: mlsne	r2, r5, r6, r3          @ encoding: [0x95,0x36,0x62,0x10]1303 1304@------------------------------------------------------------------------------1305@ MOV (immediate)1306@------------------------------------------------------------------------------1307        mov r3, #71308        mov r3, $71309        mov r3, 71310        mov r3, -71311        mov r4, #0xff01312        mov r5, #0xff00001313        mov r7, #42, #01314        mov r7, #42, #101315	mov r7, #(0xff << 16)1316        mov r7, #-21474836381317        mov r7, #42, #21318        mov pc, #42, #21319        mov r7, #0, #21320        mov r7, #40, #21321        mov r7, $40, $21322        mov r7, 40, 21323        mov r7, (2 * 20), (1 << 1)1324        mov r7, #42, #301325        mov r6, #0xffff1326        movw r9, #0xffff1327        movs r3, #71328        moveq r4, #0xff01329        movseq r5, #0xff00001330 1331@ CHECK: mov	r3, #7                  @ encoding: [0x07,0x30,0xa0,0xe3]1332@ CHECK: mov	r3, #7                  @ encoding: [0x07,0x30,0xa0,0xe3]1333@ CHECK: mov	r3, #7                  @ encoding: [0x07,0x30,0xa0,0xe3]1334@ CHECK: mvn	r3, #6                  @ encoding: [0x06,0x30,0xe0,0xe3]1335@ CHECK: mov	r4, #4080               @ encoding: [0xff,0x4e,0xa0,0xe3]1336@ CHECK: mov	r5, #16711680           @ encoding: [0xff,0x58,0xa0,0xe3]1337@ CHECK: mov    r7, #42                 @ encoding: [0x2a,0x70,0xa0,0xe3]1338@ CHECK: mov    r7, #176160768          @ encoding: [0x2a,0x75,0xa0,0xe3]1339@ CHECK: mov	r7, #16711680           @ encoding: [0xff,0x78,0xa0,0xe3]1340@ CHECK: mov    r7, #-2147483638        @ encoding: [0x2a,0x71,0xa0,0xe3]1341@ CHECK: mov    r7, #-2147483638        @ encoding: [0x2a,0x71,0xa0,0xe3]1342@ CHECK: mov    pc, #2147483658         @ encoding: [0x2a,0xf1,0xa0,0xe3]1343@ CHECK: mov    r7, #0, #2              @ encoding: [0x00,0x71,0xa0,0xe3]1344@ CHECK: mov    r7, #40, #2             @ encoding: [0x28,0x71,0xa0,0xe3]1345@ CHECK: mov    r7, #40, #2             @ encoding: [0x28,0x71,0xa0,0xe3]1346@ CHECK: mov    r7, #40, #2             @ encoding: [0x28,0x71,0xa0,0xe3]1347@ CHECK: mov    r7, #40, #2             @ encoding: [0x28,0x71,0xa0,0xe3]1348@ CHECK: mov    r7, #42, #30            @ encoding: [0x2a,0x7f,0xa0,0xe3]1349@ CHECK: movw	r6, #65535              @ encoding: [0xff,0x6f,0x0f,0xe3]1350@ CHECK: movw	r9, #65535              @ encoding: [0xff,0x9f,0x0f,0xe3]1351@ CHECK: movs	r3, #7                  @ encoding: [0x07,0x30,0xb0,0xe3]1352@ CHECK: moveq	r4, #4080               @ encoding: [0xff,0x4e,0xa0,0x03]1353@ CHECK: movseq	r5, #16711680           @ encoding: [0xff,0x58,0xb0,0x03]1354 1355@------------------------------------------------------------------------------1356@ MOV (register)1357@------------------------------------------------------------------------------1358        mov r2, r31359        movs r2, r31360        moveq r2, r31361        movseq r2, r31362        mov r12, r8, lsl #(2 - 2)1363        lsl r2, r3, #(2 - 2)1364        mov r12, r8, lsr #(2 - 2)1365        lsr r2, r3, #(2 - 2)1366        mov r12, r8, asr #(2 - 2)1367        asr r2, r3, #(2 - 2)1368        mov r12, r8, ror #(2 - 2)1369        ror r2, r3, #(2 - 2)1370 1371@ CHECK: mov	r2, r3                  @ encoding: [0x03,0x20,0xa0,0xe1]1372@ CHECK: movs	r2, r3                  @ encoding: [0x03,0x20,0xb0,0xe1]1373@ CHECK: moveq	r2, r3                  @ encoding: [0x03,0x20,0xa0,0x01]1374@ CHECK: movseq	r2, r3                  @ encoding: [0x03,0x20,0xb0,0x01]1375@ CHECK: mov	r12, r8                 @ encoding: [0x08,0xc0,0xa0,0xe1]1376@ CHECK: mov	r2, r3                  @ encoding: [0x03,0x20,0xa0,0xe1]1377@ CHECK: mov	r12, r8                 @ encoding: [0x08,0xc0,0xa0,0xe1]1378@ CHECK: mov	r2, r3                  @ encoding: [0x03,0x20,0xa0,0xe1]1379@ CHECK: mov	r12, r8                 @ encoding: [0x08,0xc0,0xa0,0xe1]1380@ CHECK: mov	r2, r3                  @ encoding: [0x03,0x20,0xa0,0xe1]1381@ CHECK: mov	r12, r8                 @ encoding: [0x08,0xc0,0xa0,0xe1]1382@ CHECK: mov	r2, r3                  @ encoding: [0x03,0x20,0xa0,0xe1]1383 1384 1385@------------------------------------------------------------------------------1386@ MOVT1387@------------------------------------------------------------------------------1388        movt r3, #71389        movt r6, #0xffff1390        movteq r4, #0xff01391 1392@ CHECK: movt	r3, #7                  @ encoding: [0x07,0x30,0x40,0xe3]1393@ CHECK: movt	r6, #65535              @ encoding: [0xff,0x6f,0x4f,0xe3]1394@ CHECK: movteq	r4, #4080               @ encoding: [0xf0,0x4f,0x40,0x03]1395 1396 1397@------------------------------------------------------------------------------1398@ MRC/MRC21399@------------------------------------------------------------------------------1400        mrc  p14, #0, r1, c1, c2, #41401        mrc  p15, #7, apsr_nzcv, c15, c6, #61402        mrc2  p14, #0, r1, c1, c2, #41403        mrc2  p9, #7, apsr_nzcv, c15, c0, #11404        MRC  P14, #0, R1, C1, C2, #41405        MRC  P15, #7, APSR_NZCV, C15, C6, #61406        MRC2  P14, #0, R1, C1, C2, #41407        MRC2  P9, #7, APSR_NZCV, C15, C0, #11408 1409@ CHECK: mrc  p14, #0, r1, c1, c2, #4             @ encoding: [0x92,0x1e,0x11,0xee]1410@ CHECK: mrc  p15, #7, apsr_nzcv, c15, c6, #6     @ encoding: [0xd6,0xff,0xff,0xee]1411@ CHECK: mrc2  p14, #0, r1, c1, c2, #4            @ encoding: [0x92,0x1e,0x11,0xfe]1412@ CHECK: mrc2  p9, #7, apsr_nzcv, c15, c0, #1     @ encoding: [0x30,0xf9,0xff,0xfe]1413@ CHECK: mrc  p14, #0, r1, c1, c2, #4             @ encoding: [0x92,0x1e,0x11,0xee]1414@ CHECK: mrc  p15, #7, apsr_nzcv, c15, c6, #6     @ encoding: [0xd6,0xff,0xff,0xee]1415@ CHECK: mrc2  p14, #0, r1, c1, c2, #4            @ encoding: [0x92,0x1e,0x11,0xfe]1416@ CHECK: mrc2  p9, #7, apsr_nzcv, c15, c0, #1     @ encoding: [0x30,0xf9,0xff,0xfe]1417 1418         mrceq  p15, #7, apsr_nzcv, c15, c6, #61419         MRCEQ  P15, #7, APSR_NZCV, C15, C6, #61420@ CHECK: mrceq  p15, #7, apsr_nzcv, c15, c6, #6   @ encoding: [0xd6,0xff,0xff,0x0e]1421@ CHECK: mrceq  p15, #7, apsr_nzcv, c15, c6, #6   @ encoding: [0xd6,0xff,0xff,0x0e]1422 1423@------------------------------------------------------------------------------1424@ MRRC/MRRC21425@------------------------------------------------------------------------------1426        mrrc  p7, #1, r5, r4, c11427        mrrc2  p7, #1, r5, r4, c11428        MRRC  P7, #1, R5, R4, C11429        MRRC2  P7, #1, R5, R4, C11430 1431@ CHECK: mrrc  p7, #1, r5, r4, c1       @ encoding: [0x11,0x57,0x54,0xec]1432@ CHECK: mrrc2  p7, #1, r5, r4, c1      @ encoding: [0x11,0x57,0x54,0xfc]1433@ CHECK: mrrc  p7, #1, r5, r4, c1       @ encoding: [0x11,0x57,0x54,0xec]1434@ CHECK: mrrc2  p7, #1, r5, r4, c1      @ encoding: [0x11,0x57,0x54,0xfc]1435 1436        mrrclo  p7, #1, r5, r4, c11437        MRRCLO  P7, #1, R5, R4, C11438@ CHECK: mrrclo  p7, #1, r5, r4, c1      @ encoding: [0x11,0x57,0x54,0x3c]1439@ CHECK: mrrclo  p7, #1, r5, r4, c1      @ encoding: [0x11,0x57,0x54,0x3c]1440 1441@------------------------------------------------------------------------------1442@ MRS1443@------------------------------------------------------------------------------1444        mrs  r8, apsr1445        mrs  r8, cpsr1446        mrs  r8, spsr1447@ CHECK: mrs  r8, apsr                  @ encoding: [0x00,0x80,0x0f,0xe1]1448@ CHECK: mrs  r8, apsr                  @ encoding: [0x00,0x80,0x0f,0xe1]1449@ CHECK: mrs  r8, spsr                  @ encoding: [0x00,0x80,0x4f,0xe1]1450 1451 1452 1453@------------------------------------------------------------------------------1454@ MSR1455@------------------------------------------------------------------------------1456 1457        msr  apsr, #51458        msr  apsr, $51459        msr  apsr, 51460        msr  apsr_g, #51461        msr  apsr_nzcvq, #51462        msr  APSR_nzcvq, #51463        msr  apsr_nzcvqg, #51464        msr  cpsr_fc, #51465        msr  cpsr_c, #51466        msr  cpsr_x, #51467        msr  cpsr_fc, #51468        msr  cpsr_all, #51469        msr  cpsr_fsx, #51470        msr  spsr_fc, #51471        msr  SPSR_fsxc, #51472        msr  cpsr_fsxc, #51473	msr  apsr_nzcvqg, #(0xff << 16)1474        msr  APSR_nzcvq, #42, #21475        msr  apsr_nzcvqg, #21474836581476        msr  SPSR_fsxc, #40, #21477        msr  SPSR_fsxc, $40, $21478        msr  SPSR_fsxc, 40, 21479        msr  SPSR_fsxc, (2 * 20), (1 << 1)1480 1481@ CHECK: msr	APSR_nzcvq, #5          @ encoding: [0x05,0xf0,0x28,0xe3]1482@ CHECK: msr	APSR_nzcvq, #5          @ encoding: [0x05,0xf0,0x28,0xe3]1483@ CHECK: msr	APSR_nzcvq, #5          @ encoding: [0x05,0xf0,0x28,0xe3]1484@ CHECK: msr	APSR_g, #5              @ encoding: [0x05,0xf0,0x24,0xe3]1485@ CHECK: msr	APSR_nzcvq, #5          @ encoding: [0x05,0xf0,0x28,0xe3]1486@ CHECK: msr	APSR_nzcvq, #5          @ encoding: [0x05,0xf0,0x28,0xe3]1487@ CHECK: msr	APSR_nzcvqg, #5         @ encoding: [0x05,0xf0,0x2c,0xe3]1488@ CHECK: msr	CPSR_fc, #5             @ encoding: [0x05,0xf0,0x29,0xe3]1489@ CHECK: msr	CPSR_c, #5              @ encoding: [0x05,0xf0,0x21,0xe3]1490@ CHECK: msr	CPSR_x, #5              @ encoding: [0x05,0xf0,0x22,0xe3]1491@ CHECK: msr	CPSR_fc, #5             @ encoding: [0x05,0xf0,0x29,0xe3]1492@ CHECK: msr	CPSR_fc, #5             @ encoding: [0x05,0xf0,0x29,0xe3]1493@ CHECK: msr	CPSR_fsx, #5            @ encoding: [0x05,0xf0,0x2e,0xe3]1494@ CHECK: msr	SPSR_fc, #5             @ encoding: [0x05,0xf0,0x69,0xe3]1495@ CHECK: msr	SPSR_fsxc, #5           @ encoding: [0x05,0xf0,0x6f,0xe3]1496@ CHECK: msr	CPSR_fsxc, #5           @ encoding: [0x05,0xf0,0x2f,0xe3]1497@ CHECK: msr	APSR_nzcvqg, #16711680  @ encoding: [0xff,0xf8,0x2c,0xe3]1498@ CHECK: msr    APSR_nzcvq, #2147483658 @ encoding: [0x2a,0xf1,0x28,0xe3]1499@ CHECK: msr    APSR_nzcvqg, #2147483658 @ encoding: [0x2a,0xf1,0x2c,0xe3]1500@ CHECK: msr    SPSR_fsxc, #40, #2      @ encoding: [0x28,0xf1,0x6f,0xe3]1501@ CHECK: msr    SPSR_fsxc, #40, #2      @ encoding: [0x28,0xf1,0x6f,0xe3]1502@ CHECK: msr    SPSR_fsxc, #40, #2      @ encoding: [0x28,0xf1,0x6f,0xe3]1503@ CHECK: msr    SPSR_fsxc, #40, #2      @ encoding: [0x28,0xf1,0x6f,0xe3]1504 1505        msr  apsr, r01506        msr  apsr_g, r01507        msr  apsr_nzcvq, r01508        msr  APSR_nzcvq, r01509        msr  apsr_nzcvqg, r01510        msr  cpsr_fc, r01511        msr  cpsr_c, r01512        msr  cpsr_x, r01513        msr  cpsr_fc, r01514        msr  cpsr_all, r01515        msr  cpsr_fsx, r01516        msr  spsr_fc, r01517        msr  SPSR_fsxc, r01518        msr  cpsr_fsxc, r01519 1520@ CHECK: msr  APSR_nzcvq, r0            @ encoding: [0x00,0xf0,0x28,0xe1]1521@ CHECK: msr  APSR_g, r0                @ encoding: [0x00,0xf0,0x24,0xe1]1522@ CHECK: msr  APSR_nzcvq, r0            @ encoding: [0x00,0xf0,0x28,0xe1]1523@ CHECK: msr  APSR_nzcvq, r0            @ encoding: [0x00,0xf0,0x28,0xe1]1524@ CHECK: msr  APSR_nzcvqg, r0           @ encoding: [0x00,0xf0,0x2c,0xe1]1525@ CHECK: msr  CPSR_fc, r0               @ encoding: [0x00,0xf0,0x29,0xe1]1526@ CHECK: msr  CPSR_c, r0                @ encoding: [0x00,0xf0,0x21,0xe1]1527@ CHECK: msr  CPSR_x, r0                @ encoding: [0x00,0xf0,0x22,0xe1]1528@ CHECK: msr  CPSR_fc, r0               @ encoding: [0x00,0xf0,0x29,0xe1]1529@ CHECK: msr  CPSR_fc, r0               @ encoding: [0x00,0xf0,0x29,0xe1]1530@ CHECK: msr  CPSR_fsx, r0              @ encoding: [0x00,0xf0,0x2e,0xe1]1531@ CHECK: msr  SPSR_fc, r0               @ encoding: [0x00,0xf0,0x69,0xe1]1532@ CHECK: msr  SPSR_fsxc, r0             @ encoding: [0x00,0xf0,0x6f,0xe1]1533@ CHECK: msr  CPSR_fsxc, r0             @ encoding: [0x00,0xf0,0x2f,0xe1]1534 1535@------------------------------------------------------------------------------1536@ MUL1537@------------------------------------------------------------------------------1538        mul r5, r6, r71539        muls r5, r6, r71540        mulgt r5, r6, r71541        mulsle r5, r6, r71542        mul r11, r51543 1544@ CHECK: mul	r5, r6, r7              @ encoding: [0x96,0x07,0x05,0xe0]1545@ CHECK: muls	r5, r6, r7              @ encoding: [0x96,0x07,0x15,0xe0]1546@ CHECK: mulgt	r5, r6, r7              @ encoding: [0x96,0x07,0x05,0xc0]1547@ CHECK: mulsle	r5, r6, r7              @ encoding: [0x96,0x07,0x15,0xd0]1548 1549 1550@------------------------------------------------------------------------------1551@ MVN (immediate)1552@------------------------------------------------------------------------------1553        mvn r3, #71554        mvn r3, $71555        mvn r3, 71556        mvn r3, -71557        mvn r7, #~0xffffff001558        mvn r4, #0xff01559        mvn r5, #0xff00001560	mvn r7, #(0xff << 16)1561        mvn r7, #-21474836381562        mvn r7, #42, #21563        mvn r7, #40, #21564        mvn r7, $40, $21565        mvn r7, 40, 21566        mvn r7, (2 * 20), (1 << 1)1567        mvns r3, #71568        mvneq r4, #0xff01569        mvnseq r5, #0xff00001570 1571@ CHECK: mvn	r3, #7                  @ encoding: [0x07,0x30,0xe0,0xe3]1572@ CHECK: mvn	r3, #7                  @ encoding: [0x07,0x30,0xe0,0xe3]1573@ CHECK: mvn	r3, #7                  @ encoding: [0x07,0x30,0xe0,0xe3]1574@ CHECK: mov	r3, #6                  @ encoding: [0x06,0x30,0xa0,0xe3]1575@ CHECK: mvn    r7, #255                @ encoding: [0xff,0x70,0xe0,0xe3]1576@ CHECK: mvn	r4, #4080               @ encoding: [0xff,0x4e,0xe0,0xe3]1577@ CHECK: mvn	r5, #16711680           @ encoding: [0xff,0x58,0xe0,0xe3]1578@ CHECK: mvn	r7, #16711680           @ encoding: [0xff,0x78,0xe0,0xe3]1579@ CHECK: mvn    r7, #-2147483638        @ encoding: [0x2a,0x71,0xe0,0xe3]1580@ CHECK: mvn    r7, #-2147483638        @ encoding: [0x2a,0x71,0xe0,0xe3]1581@ CHECK: mvn    r7, #40, #2             @ encoding: [0x28,0x71,0xe0,0xe3]1582@ CHECK: mvn    r7, #40, #2             @ encoding: [0x28,0x71,0xe0,0xe3]1583@ CHECK: mvn    r7, #40, #2             @ encoding: [0x28,0x71,0xe0,0xe3]1584@ CHECK: mvn    r7, #40, #2             @ encoding: [0x28,0x71,0xe0,0xe3]1585@ CHECK: mvns	r3, #7                  @ encoding: [0x07,0x30,0xf0,0xe3]1586@ CHECK: mvneq	r4, #4080               @ encoding: [0xff,0x4e,0xe0,0x03]1587@ CHECK: mvnseq	r5, #16711680           @ encoding: [0xff,0x58,0xf0,0x03]1588 1589 1590@------------------------------------------------------------------------------1591@ MVN (register)1592@------------------------------------------------------------------------------1593        mvn r2, r31594        mvns r2, r31595        mvn r5, r6, lsl #191596        mvn r5, r6, lsr #91597        mvn r5, r6, asr #41598        mvn r5, r6, ror #61599        mvn r5, r6, rrx1600        mvneq r2, r31601        mvnseq r2, r3, lsl #101602 1603@ CHECK: mvn	r2, r3                  @ encoding: [0x03,0x20,0xe0,0xe1]1604@ CHECK: mvns	r2, r3                  @ encoding: [0x03,0x20,0xf0,0xe1]1605@ CHECK: mvn	r5, r6, lsl #19         @ encoding: [0x86,0x59,0xe0,0xe1]1606@ CHECK: mvn	r5, r6, lsr #9          @ encoding: [0xa6,0x54,0xe0,0xe1]1607@ CHECK: mvn	r5, r6, asr #4          @ encoding: [0x46,0x52,0xe0,0xe1]1608@ CHECK: mvn	r5, r6, ror #6          @ encoding: [0x66,0x53,0xe0,0xe1]1609@ CHECK: mvn	r5, r6, rrx             @ encoding: [0x66,0x50,0xe0,0xe1]1610@ CHECK: mvneq	r2, r3                  @ encoding: [0x03,0x20,0xe0,0x01]1611@ CHECK: mvnseq	r2, r3, lsl #10         @ encoding: [0x03,0x25,0xf0,0x01]1612 1613 1614@------------------------------------------------------------------------------1615@ MVN (shifted register)1616@------------------------------------------------------------------------------1617        mvn r5, r6, lsl r71618        mvns r5, r6, lsr r71619        mvngt r5, r6, asr r71620        mvnslt r5, r6, ror r71621 1622@ CHECK: mvn	r5, r6, lsl r7          @ encoding: [0x16,0x57,0xe0,0xe1]1623@ CHECK: mvns	r5, r6, lsr r7          @ encoding: [0x36,0x57,0xf0,0xe1]1624@ CHECK: mvngt	r5, r6, asr r7          @ encoding: [0x56,0x57,0xe0,0xc1]1625@ CHECK: mvnslt	r5, r6, ror r7          @ encoding: [0x76,0x57,0xf0,0xb1]1626 1627@------------------------------------------------------------------------------1628@ NEG1629@------------------------------------------------------------------------------1630        neg r5, r81631 1632@ CHECK: rsb	r5, r8, #0              @ encoding: [0x00,0x50,0x68,0xe2]1633 1634 1635@------------------------------------------------------------------------------1636@ NOP1637@------------------------------------------------------------------------------1638        nop1639        nop.w1640        nopgt1641 1642@ CHECK: nop @ encoding: [0x00,0xf0,0x20,0xe3]1643@ CHECK: nop @ encoding: [0x00,0xf0,0x20,0xe3]1644@ CHECK: nopgt @ encoding: [0x00,0xf0,0x20,0xc3]1645 1646 1647@------------------------------------------------------------------------------1648@ ORR1649@------------------------------------------------------------------------------1650        orr r4, r5, #0xf0001651        orr r4, r5, $0xf0001652        orr r4, r5, 0xf0001653	orr r7, r8, #(0xff << 16)1654        orr r7, r8, #-21474836381655        orr r7, r8, #42, #21656        orr r7, r8, #40, #21657        orr r7, r8, $40, $21658        orr r7, r8, 40, 21659        orr r7, r8, (2 * 20), (1 << 1)1660        orr r4, r5, r61661        orr r4, r5, r6, lsl #51662        orr r4, r5, r6, lsr #51663        orr r4, r5, r6, lsr #51664        orr r4, r5, r6, asr #51665        orr r4, r5, r6, ror #51666        orr r6, r7, r8, lsl r91667        orr r6, r7, r8, lsr r91668        orr r6, r7, r8, asr r91669        orr r6, r7, r8, ror r91670        orr r4, r5, r6, rrx1671 1672        @ destination register is optional1673        orr r5, #0xf0001674        orr r5, $0xf0001675        orr r5, 0xf0001676 1677        orr r7, #(0xff << 16)1678        orr r7, #-21474836381679        orr r7, #42, #21680        orr r7, #40, #21681        orr r7, $40, $21682        orr r7, 40, 21683        orr r7, (2 * 20), (1 << 1)1684 1685        orr r4, r51686        orr r4, r5, lsl #51687        orr r4, r5, lsr #51688        orr r4, r5, lsr #51689        orr r4, r5, asr #51690        orr r4, r5, ror #51691        orr r6, r7, lsl r91692        orr r6, r7, lsr r91693        orr r6, r7, asr r91694        orr r6, r7, ror r91695        orr r4, r5, rrx1696 1697@ CHECK: orr	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x85,0xe3]1698@ CHECK: orr	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x85,0xe3]1699@ CHECK: orr	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x85,0xe3]1700@ CHECK: orr	r7, r8, #16711680       @ encoding: [0xff,0x78,0x88,0xe3]1701@ CHECK: orr    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0x88,0xe3]1702@ CHECK: orr    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0x88,0xe3]1703@ CHECK: orr    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x88,0xe3]1704@ CHECK: orr    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x88,0xe3]1705@ CHECK: orr    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x88,0xe3]1706@ CHECK: orr    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x88,0xe3]1707@ CHECK: orr	r4, r5, r6              @ encoding: [0x06,0x40,0x85,0xe1]1708@ CHECK: orr	r4, r5, r6, lsl #5      @ encoding: [0x86,0x42,0x85,0xe1]1709@ CHECK: orr	r4, r5, r6, lsr #5      @ encoding: [0xa6,0x42,0x85,0xe1]1710@ CHECK: orr	r4, r5, r6, lsr #5      @ encoding: [0xa6,0x42,0x85,0xe1]1711@ CHECK: orr	r4, r5, r6, asr #5      @ encoding: [0xc6,0x42,0x85,0xe1]1712@ CHECK: orr	r4, r5, r6, ror #5      @ encoding: [0xe6,0x42,0x85,0xe1]1713@ CHECK: orr	r6, r7, r8, lsl r9      @ encoding: [0x18,0x69,0x87,0xe1]1714@ CHECK: orr	r6, r7, r8, lsr r9      @ encoding: [0x38,0x69,0x87,0xe1]1715@ CHECK: orr	r6, r7, r8, asr r9      @ encoding: [0x58,0x69,0x87,0xe1]1716@ CHECK: orr	r6, r7, r8, ror r9      @ encoding: [0x78,0x69,0x87,0xe1]1717@ CHECK: orr	r4, r5, r6, rrx         @ encoding: [0x66,0x40,0x85,0xe1]1718 1719@ CHECK: orr	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x85,0xe3]1720@ CHECK: orr	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x85,0xe3]1721@ CHECK: orr	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x85,0xe3]1722@ CHECK: orr	r7, r7, #16711680       @ encoding: [0xff,0x78,0x87,0xe3]1723@ CHECK: orr	r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0x87,0xe3]1724@ CHECK: orr	r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0x87,0xe3]1725@ CHECK: orr	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x87,0xe3]1726@ CHECK: orr 	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x87,0xe3]1727@ CHECK: orr 	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x87,0xe3]1728@ CHECK: orr 	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x87,0xe3]1729@ CHECK: orr	r4, r4, r5              @ encoding: [0x05,0x40,0x84,0xe1]1730@ CHECK: orr	r4, r4, r5, lsl #5      @ encoding: [0x85,0x42,0x84,0xe1]1731@ CHECK: orr	r4, r4, r5, lsr #5      @ encoding: [0xa5,0x42,0x84,0xe1]1732@ CHECK: orr	r4, r4, r5, lsr #5      @ encoding: [0xa5,0x42,0x84,0xe1]1733@ CHECK: orr	r4, r4, r5, asr #5      @ encoding: [0xc5,0x42,0x84,0xe1]1734@ CHECK: orr	r4, r4, r5, ror #5      @ encoding: [0xe5,0x42,0x84,0xe1]1735@ CHECK: orr	r6, r6, r7, lsl r9      @ encoding: [0x17,0x69,0x86,0xe1]1736@ CHECK: orr	r6, r6, r7, lsr r9      @ encoding: [0x37,0x69,0x86,0xe1]1737@ CHECK: orr	r6, r6, r7, asr r9      @ encoding: [0x57,0x69,0x86,0xe1]1738@ CHECK: orr	r6, r6, r7, ror r9      @ encoding: [0x77,0x69,0x86,0xe1]1739@ CHECK: orr	r4, r4, r5, rrx         @ encoding: [0x65,0x40,0x84,0xe1]1740 1741        orrseq r4, r5, #0xf0001742        orrne r4, r5, r61743        orrseq r4, r5, r6, lsl #51744        orrlo r6, r7, r8, ror r91745        orrshi r4, r5, r6, rrx1746        orrcs r5, #0xf0001747        orrseq r4, r51748        orrne r6, r7, asr r91749        orrslt r6, r7, ror r91750        orrsgt r4, r5, rrx1751 1752@ CHECK: orrseq	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x95,0x03]1753@ CHECK: orrne	r4, r5, r6              @ encoding: [0x06,0x40,0x85,0x11]1754@ CHECK: orrseq	r4, r5, r6, lsl #5      @ encoding: [0x86,0x42,0x95,0x01]1755@ CHECK: orrlo	r6, r7, r8, ror r9      @ encoding: [0x78,0x69,0x87,0x31]1756@ CHECK: orrshi	r4, r5, r6, rrx         @ encoding: [0x66,0x40,0x95,0x81]1757@ CHECK: orrhs	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x85,0x23]1758@ CHECK: orrseq	r4, r4, r5              @ encoding: [0x05,0x40,0x94,0x01]1759@ CHECK: orrne	r6, r6, r7, asr r9      @ encoding: [0x57,0x69,0x86,0x11]1760@ CHECK: orrslt	r6, r6, r7, ror r9      @ encoding: [0x77,0x69,0x96,0xb1]1761@ CHECK: orrsgt	r4, r4, r5, rrx         @ encoding: [0x65,0x40,0x94,0xc1]1762 1763    @ Test right shift by 32, which is encoded as 01764    orr r3, r1, r2, lsr #321765    orr r3, r1, r2, asr #321766@ CHECK: orr	r3, r1, r2, lsr #32     @ encoding: [0x22,0x30,0x81,0xe1]1767@ CHECK: orr	r3, r1, r2, asr #32     @ encoding: [0x42,0x30,0x81,0xe1]1768 1769@------------------------------------------------------------------------------1770@ PKH1771@------------------------------------------------------------------------------1772        pkhbt r2, r2, r31773        pkhbt r2, r2, r3, lsl #311774        pkhbt r2, r2, r3, lsl #01775        pkhbt r2, r2, r3, lsl #151776 1777        pkhtb r2, r2, r31778        pkhtb r2, r2, r3, asr #311779        pkhtb r2, r2, r3, asr #151780 1781        it ne1782        pkhtbne r2, r2, r3, asr #151783 1784@ CHECK: pkhbt	r2, r2, r3              @ encoding: [0x13,0x20,0x82,0xe6]1785@ CHECK: pkhbt	r2, r2, r3, lsl #31     @ encoding: [0x93,0x2f,0x82,0xe6]1786@ CHECK: pkhbt	r2, r2, r3              @ encoding: [0x13,0x20,0x82,0xe6]1787@ CHECK: pkhbt	r2, r2, r3, lsl #15     @ encoding: [0x93,0x27,0x82,0xe6]1788 1789@ CHECK: pkhbt	r2, r3, r2              @ encoding: [0x12,0x20,0x83,0xe6]1790@ CHECK: pkhtb	r2, r2, r3, asr #31     @ encoding: [0xd3,0x2f,0x82,0xe6]1791@ CHECK: pkhtb	r2, r2, r3, asr #15     @ encoding: [0xd3,0x27,0x82,0xe6]1792@ CHECK: pkhtbne r2, r2, r3, asr #15    @ encoding: [0xd3,0x27,0x82,0x16]1793 1794@------------------------------------------------------------------------------1795@ FIXME: PLD1796@------------------------------------------------------------------------------1797@------------------------------------------------------------------------------1798@ FIXME: PLI1799@------------------------------------------------------------------------------1800 1801 1802@------------------------------------------------------------------------------1803@ POP1804@------------------------------------------------------------------------------1805        pop {r7}1806        pop {r7, r8, r9, r10}1807 1808@ CHECK: pop	{r7}                    @ encoding: [0x04,0x70,0x9d,0xe4]1809@ CHECK: pop	{r7, r8, r9, r10}       @ encoding: [0x80,0x07,0xbd,0xe8]1810 1811 1812@------------------------------------------------------------------------------1813@ PUSH1814@------------------------------------------------------------------------------1815        push {r7}1816        push {r7, r8, r9, r10}1817 1818@ CHECK: push	{r7}                    @ encoding: [0x04,0x70,0x2d,0xe5]1819@ CHECK: push	{r7, r8, r9, r10}       @ encoding: [0x80,0x07,0x2d,0xe9]1820 1821 1822@------------------------------------------------------------------------------1823@ QADD/QADD16/QADD81824@------------------------------------------------------------------------------1825        qadd r1, r2, r31826        qaddne r1, r2, r31827        qadd16 r1, r2, r31828        qadd16gt r1, r2, r31829        qadd8 r1, r2, r31830        qadd8le r1, r2, r31831 1832@ CHECK: qadd	r1, r2, r3              @ encoding: [0x52,0x10,0x03,0xe1]1833@ CHECK: qaddne	r1, r2, r3              @ encoding: [0x52,0x10,0x03,0x11]1834@ CHECK: qadd16	r1, r2, r3              @ encoding: [0x13,0x1f,0x22,0xe6]1835@ CHECK: qadd16gt	r1, r2, r3      @ encoding: [0x13,0x1f,0x22,0xc6]1836@ CHECK: qadd8	r1, r2, r3              @ encoding: [0x93,0x1f,0x22,0xe6]1837@ CHECK: qadd8le r1, r2, r3             @ encoding: [0x93,0x1f,0x22,0xd6]1838 1839 1840@------------------------------------------------------------------------------1841@ QDADD/QDSUB1842@------------------------------------------------------------------------------1843        qdadd r6, r7, r81844        qdaddhi r6, r7, r81845        qdsub r6, r7, r81846        qdsubhi r6, r7, r81847 1848@ CHECK: qdadd	r6, r7, r8              @ encoding: [0x57,0x60,0x48,0xe1]1849@ CHECK: qdaddhi r6, r7, r8             @ encoding: [0x57,0x60,0x48,0x81]1850@ CHECK: qdsub	r6, r7, r8              @ encoding: [0x57,0x60,0x68,0xe1]1851@ CHECK: qdsubhi r6, r7, r8             @ encoding: [0x57,0x60,0x68,0x81]1852 1853 1854@------------------------------------------------------------------------------1855@ QSAX1856@------------------------------------------------------------------------------1857        qsax r9, r12, r01858        qsaxeq r9, r12, r01859 1860@ CHECK: qsax	r9, r12, r0             @ encoding: [0x50,0x9f,0x2c,0xe6]1861@ CHECK: qsaxeq	r9, r12, r0             @ encoding: [0x50,0x9f,0x2c,0x06]1862 1863 1864@------------------------------------------------------------------------------1865@ QSUB/QSUB16/QSUB81866@------------------------------------------------------------------------------1867        qsub r1, r2, r31868        qsubne r1, r2, r31869        qsub16 r1, r2, r31870        qsub16gt r1, r2, r31871        qsub8 r1, r2, r31872        qsub8le r1, r2, r31873 1874@ CHECK: qsub	r1, r2, r3              @ encoding: [0x52,0x10,0x23,0xe1]1875@ CHECK: qsubne	r1, r2, r3              @ encoding: [0x52,0x10,0x23,0x11]1876@ CHECK: qsub16	r1, r2, r3              @ encoding: [0x73,0x1f,0x22,0xe6]1877@ CHECK: qsub16gt	r1, r2, r3      @ encoding: [0x73,0x1f,0x22,0xc6]1878@ CHECK: qsub8	r1, r2, r3              @ encoding: [0xf3,0x1f,0x22,0xe6]1879@ CHECK: qsub8le r1, r2, r3             @ encoding: [0xf3,0x1f,0x22,0xd6]1880 1881 1882@------------------------------------------------------------------------------1883@ RBIT1884@------------------------------------------------------------------------------1885        rbit r1, r21886        rbitne r1, r21887 1888@ CHECK: rbit	r1, r2                  @ encoding: [0x32,0x1f,0xff,0xe6]1889@ CHECK: rbitne	r1, r2                  @ encoding: [0x32,0x1f,0xff,0x16]1890 1891 1892@------------------------------------------------------------------------------1893@ REV/REV16/REVSH1894@------------------------------------------------------------------------------1895        rev r1, r91896        revne r1, r51897        rev16 r8, r31898        rev16ne r12, r41899        revsh r4, r91900        revshne r9, r11901 1902@ CHECK: rev	r1, r9                  @ encoding: [0x39,0x1f,0xbf,0xe6]1903@ CHECK: revne	r1, r5                  @ encoding: [0x35,0x1f,0xbf,0x16]1904@ CHECK: rev16	r8, r3                  @ encoding: [0xb3,0x8f,0xbf,0xe6]1905@ CHECK: rev16ne r12, r4                @ encoding: [0xb4,0xcf,0xbf,0x16]1906@ CHECK: revsh	r4, r9                  @ encoding: [0xb9,0x4f,0xff,0xe6]1907@ CHECK: revshne r9, r1                 @ encoding: [0xb1,0x9f,0xff,0x16]1908 1909 1910@------------------------------------------------------------------------------1911@ RFE1912@------------------------------------------------------------------------------1913        rfeda r21914        rfedb r31915        rfeia r51916        rfeib r61917 1918        rfeda r4!1919        rfedb r7!1920        rfeia r9!1921        rfeib r8!1922 1923        rfefa r21924        rfeea r31925        rfefd r51926        rfeed r61927 1928        rfefa r4!1929        rfeea r7!1930        rfefd r9!1931        rfeed r8!1932 1933        rfe r11934        rfe r1!1935 1936@ CHECK: rfeda	r2                      @ encoding: [0x00,0x0a,0x12,0xf8]1937@ CHECK: rfedb	r3                      @ encoding: [0x00,0x0a,0x13,0xf9]1938@ CHECK: rfeia	r5                      @ encoding: [0x00,0x0a,0x95,0xf8]1939@ CHECK: rfeib	r6                      @ encoding: [0x00,0x0a,0x96,0xf9]1940 1941@ CHECK: rfeda	r4!                     @ encoding: [0x00,0x0a,0x34,0xf8]1942@ CHECK: rfedb	r7!                     @ encoding: [0x00,0x0a,0x37,0xf9]1943@ CHECK: rfeia	r9!                     @ encoding: [0x00,0x0a,0xb9,0xf8]1944@ CHECK: rfeib	r8!                     @ encoding: [0x00,0x0a,0xb8,0xf9]1945 1946@ CHECK: rfeda	r2                      @ encoding: [0x00,0x0a,0x12,0xf8]1947@ CHECK: rfedb	r3                      @ encoding: [0x00,0x0a,0x13,0xf9]1948@ CHECK: rfeia	r5                      @ encoding: [0x00,0x0a,0x95,0xf8]1949@ CHECK: rfeib	r6                      @ encoding: [0x00,0x0a,0x96,0xf9]1950 1951@ CHECK: rfeda	r4!                     @ encoding: [0x00,0x0a,0x34,0xf8]1952@ CHECK: rfedb	r7!                     @ encoding: [0x00,0x0a,0x37,0xf9]1953@ CHECK: rfeia	r9!                     @ encoding: [0x00,0x0a,0xb9,0xf8]1954@ CHECK: rfeib	r8!                     @ encoding: [0x00,0x0a,0xb8,0xf9]1955 1956@ CHECK: rfeia	r1                      @ encoding: [0x00,0x0a,0x91,0xf8]1957@ CHECK: rfeia	r1!                     @ encoding: [0x00,0x0a,0xb1,0xf8]1958 1959 1960@------------------------------------------------------------------------------1961@ ROR1962@------------------------------------------------------------------------------1963	ror r2, r4, #311964	ror r2, r4, #11965	ror r2, r4, #01966	ror r4, #11967 1968@ CHECK: ror	r2, r4, #31             @ encoding: [0xe4,0x2f,0xa0,0xe1]1969@ CHECK: ror	r2, r4, #1              @ encoding: [0xe4,0x20,0xa0,0xe1]1970@ CHECK: mov	r2, r4                  @ encoding: [0x04,0x20,0xa0,0xe1]1971@ CHECK: ror	r4, r4, #1              @ encoding: [0xe4,0x40,0xa0,0xe1]1972 1973 1974@------------------------------------------------------------------------------1975@ RSB1976@------------------------------------------------------------------------------1977        rsb r4, r5, #0xf0001978        rsb r4, r5, $0xf0001979        rsb r4, r5, 0xf0001980        rsb r7, r8, #(0xff << 16)1981        rsb r7, r8, #-21474836381982        rsb r7, r8, #42, #21983        rsb r7, r8, #40, #21984        rsb r7, r8, $40, $21985        rsb r7, r8, 40, 21986        rsb r7, r8, (2 * 20), (1 << 1)1987        rsb r4, r5, r61988        rsb r4, r5, r6, lsl #51989        rsblo r4, r5, r6, lsr #51990        rsb r4, r5, r6, lsr #51991        rsb r4, r5, r6, asr #51992        rsb r4, r5, r6, ror #51993        rsb r6, r7, r8, lsl r91994        rsb r6, r7, r8, lsr r91995        rsb r6, r7, r8, asr r91996        rsble r6, r7, r8, ror r91997        rsb r4, r5, r6, rrx1998 1999        @ destination register is optional2000        rsb r5, #0xf0002001        rsb r5, $0xf0002002        rsb r5, 0xf0002003        rsb r7, #(0xff << 16)2004        rsb r7, #-21474836382005        rsb r7, #42, #22006        rsb r7, #40, #22007        rsb r7, $40, $22008        rsb r7, 40, 22009        rsb r7, (2 * 20), (1 << 1)2010        rsb r4, r52011        rsb r4, r5, lsl #52012        rsb r4, r5, lsr #52013        rsbne r4, r5, lsr #52014        rsb r4, r5, asr #52015        rsb r4, r5, ror #52016        rsbgt r6, r7, lsl r92017        rsb r6, r7, lsr r92018        rsb r6, r7, asr r92019        rsb r6, r7, ror r92020        rsb r4, r5, rrx2021 2022@ CHECK: rsb	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x65,0xe2]2023@ CHECK: rsb	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x65,0xe2]2024@ CHECK: rsb	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x65,0xe2]2025@ CHECK: rsb	r7, r8, #16711680       @ encoding: [0xff,0x78,0x68,0xe2]2026@ CHECK: rsb    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0x68,0xe2]2027@ CHECK: rsb    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0x68,0xe2]2028@ CHECK: rsb    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x68,0xe2]2029@ CHECK: rsb    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x68,0xe2]2030@ CHECK: rsb    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x68,0xe2]2031@ CHECK: rsb    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x68,0xe2]2032@ CHECK: rsb	r4, r5, r6              @ encoding: [0x06,0x40,0x65,0xe0]2033@ CHECK: rsb	r4, r5, r6, lsl #5      @ encoding: [0x86,0x42,0x65,0xe0]2034@ CHECK: rsblo	r4, r5, r6, lsr #5      @ encoding: [0xa6,0x42,0x65,0x30]2035@ CHECK: rsb	r4, r5, r6, lsr #5      @ encoding: [0xa6,0x42,0x65,0xe0]2036@ CHECK: rsb	r4, r5, r6, asr #5      @ encoding: [0xc6,0x42,0x65,0xe0]2037@ CHECK: rsb	r4, r5, r6, ror #5      @ encoding: [0xe6,0x42,0x65,0xe0]2038@ CHECK: rsb	r6, r7, r8, lsl r9      @ encoding: [0x18,0x69,0x67,0xe0]2039@ CHECK: rsb	r6, r7, r8, lsr r9      @ encoding: [0x38,0x69,0x67,0xe0]2040@ CHECK: rsb	r6, r7, r8, asr r9      @ encoding: [0x58,0x69,0x67,0xe0]2041@ CHECK: rsble	r6, r7, r8, ror r9      @ encoding: [0x78,0x69,0x67,0xd0]2042@ CHECK: rsb	r4, r5, r6, rrx         @ encoding: [0x66,0x40,0x65,0xe0]2043 2044@ CHECK: rsb	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x65,0xe2]2045@ CHECK: rsb	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x65,0xe2]2046@ CHECK: rsb	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x65,0xe2]2047@ CHECK: rsb	r7, r7, #16711680       @ encoding: [0xff,0x78,0x67,0xe2]2048@ CHECK: rsb	r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0x67,0xe2]2049@ CHECK: rsb	r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0x67,0xe2]2050@ CHECK: rsb	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x67,0xe2]2051@ CHECK: rsb	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x67,0xe2]2052@ CHECK: rsb	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x67,0xe2]2053@ CHECK: rsb	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x67,0xe2]2054@ CHECK: rsb	r4, r4, r5              @ encoding: [0x05,0x40,0x64,0xe0]2055@ CHECK: rsb	r4, r4, r5, lsl #5      @ encoding: [0x85,0x42,0x64,0xe0]2056@ CHECK: rsb	r4, r4, r5, lsr #5      @ encoding: [0xa5,0x42,0x64,0xe0]2057@ CHECK: rsbne	r4, r4, r5, lsr #5      @ encoding: [0xa5,0x42,0x64,0x10]2058@ CHECK: rsb	r4, r4, r5, asr #5      @ encoding: [0xc5,0x42,0x64,0xe0]2059@ CHECK: rsb	r4, r4, r5, ror #5      @ encoding: [0xe5,0x42,0x64,0xe0]2060@ CHECK: rsbgt	r6, r6, r7, lsl r9      @ encoding: [0x17,0x69,0x66,0xc0]2061@ CHECK: rsb	r6, r6, r7, lsr r9      @ encoding: [0x37,0x69,0x66,0xe0]2062@ CHECK: rsb	r6, r6, r7, asr r9      @ encoding: [0x57,0x69,0x66,0xe0]2063@ CHECK: rsb	r6, r6, r7, ror r9      @ encoding: [0x77,0x69,0x66,0xe0]2064@ CHECK: rsb	r4, r4, r5, rrx         @ encoding: [0x65,0x40,0x64,0xe0]2065 2066@------------------------------------------------------------------------------2067@ RSBS2068@------------------------------------------------------------------------------2069    rsbs r7, #167116802070    rsbs r7, $167116802071    rsbs r7, 167116802072    rsbs r7, #(0xff << 16)2073    rsbs r7, r8, #-21474836382074    rsbs r7, r8, #42, #22075    rsbs r7, r8, #40, #22076    rsbs r7, r8, $40, $22077    rsbs r7, r8, 40, 22078    rsbs r7, r8, (2 * 20), (1 << 1)2079 2080@ CHECK: rsbs	r7, r7, #16711680       @ encoding: [0xff,0x78,0x77,0xe2]2081@ CHECK: rsbs	r7, r7, #16711680       @ encoding: [0xff,0x78,0x77,0xe2]2082@ CHECK: rsbs	r7, r7, #16711680       @ encoding: [0xff,0x78,0x77,0xe2]2083@ CHECK: rsbs	r7, r7, #16711680       @ encoding: [0xff,0x78,0x77,0xe2]2084@ CHECK: rsbs   r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0x78,0xe2]2085@ CHECK: rsbs   r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0x78,0xe2]2086@ CHECK: rsbs   r7, r8, #40, #2         @ encoding: [0x28,0x71,0x78,0xe2]2087@ CHECK: rsbs   r7, r8, #40, #2         @ encoding: [0x28,0x71,0x78,0xe2]2088@ CHECK: rsbs   r7, r8, #40, #2         @ encoding: [0x28,0x71,0x78,0xe2]2089@ CHECK: rsbs   r7, r8, #40, #2         @ encoding: [0x28,0x71,0x78,0xe2]2090 2091@------------------------------------------------------------------------------2092@ RSC2093@------------------------------------------------------------------------------2094        rsc r4, r5, #0xf0002095        rsc r4, r5, $0xf0002096        rsc r4, r5, 0xf0002097        rsc r7, r8, #(0xff << 16)2098        rsc r7, r8, #-21474836382099        rsc r7, r8, #42, #22100        rsc r7, r8, #40, #22101        rsc r7, r8, $40, $22102        rsc r7, r8, 40, 22103        rsc r7, r8, (2 * 20), (1 << 1)2104        rsc r4, r5, r62105        rsc r4, r5, r6, lsl #52106        rsclo r4, r5, r6, lsr #52107        rsc r4, r5, r6, lsr #52108        rsc r4, r5, r6, asr #52109        rsc r4, r5, r6, ror #52110        rsc r6, r7, r8, lsl r92111        rsc r6, r7, r8, lsr r92112        rsc r6, r7, r8, asr r92113        rscle r6, r7, r8, ror r92114        rscs r1, r8, #40642115 2116        @ destination register is optional2117        rsc r5, #0xf0002118        rsc r5, $0xf0002119        rsc r5, 0xf0002120        rsc r7, #(0xff << 16)2121        rsc r7, #-21474836382122        rsc r7, #42, #22123        rsc r7, #40, #22124        rsc r7, $40, $22125        rsc r7, 40, 22126        rsc r7, (2 * 20), (1 << 1)2127        rsc r4, r52128        rsc r4, r5, lsl #52129        rsc r4, r5, lsr #52130        rscne r4, r5, lsr #52131        rsc r4, r5, asr #52132        rsc r4, r5, ror #52133        rscgt r6, r7, lsl r92134        rsc r6, r7, lsr r92135        rsc r6, r7, asr r92136        rsc r6, r7, ror r92137 2138@ CHECK: rsc	r4, r5, #61440          @ encoding: [0x0f,0x4a,0xe5,0xe2]2139@ CHECK: rsc	r4, r5, #61440          @ encoding: [0x0f,0x4a,0xe5,0xe2]2140@ CHECK: rsc	r4, r5, #61440          @ encoding: [0x0f,0x4a,0xe5,0xe2]2141@ CHECK: rsc    r7, r8, #16711680       @ encoding: [0xff,0x78,0xe8,0xe2]2142@ CHECK: rsc    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0xe8,0xe2]2143@ CHECK: rsc    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0xe8,0xe2]2144@ CHECK: rsc    r7, r8, #40, #2         @ encoding: [0x28,0x71,0xe8,0xe2]2145@ CHECK: rsc    r7, r8, #40, #2         @ encoding: [0x28,0x71,0xe8,0xe2]2146@ CHECK: rsc    r7, r8, #40, #2         @ encoding: [0x28,0x71,0xe8,0xe2]2147@ CHECK: rsc    r7, r8, #40, #2         @ encoding: [0x28,0x71,0xe8,0xe2]2148@ CHECK: rsc	r4, r5, r6              @ encoding: [0x06,0x40,0xe5,0xe0]2149@ CHECK: rsc	r4, r5, r6, lsl #5      @ encoding: [0x86,0x42,0xe5,0xe0]2150@ CHECK: rsclo	r4, r5, r6, lsr #5      @ encoding: [0xa6,0x42,0xe5,0x30]2151@ CHECK: rsc	r4, r5, r6, lsr #5      @ encoding: [0xa6,0x42,0xe5,0xe0]2152@ CHECK: rsc	r4, r5, r6, asr #5      @ encoding: [0xc6,0x42,0xe5,0xe0]2153@ CHECK: rsc	r4, r5, r6, ror #5      @ encoding: [0xe6,0x42,0xe5,0xe0]2154@ CHECK: rsc	r6, r7, r8, lsl r9      @ encoding: [0x18,0x69,0xe7,0xe0]2155@ CHECK: rsc	r6, r7, r8, lsr r9      @ encoding: [0x38,0x69,0xe7,0xe0]2156@ CHECK: rsc	r6, r7, r8, asr r9      @ encoding: [0x58,0x69,0xe7,0xe0]2157@ CHECK: rscle	r6, r7, r8, ror r9      @ encoding: [0x78,0x69,0xe7,0xd0]2158@ CHECK: rscs	r1, r8, #4064           @ encoding: [0xfe,0x1e,0xf8,0xe2]2159 2160@ CHECK: rsc	r5, r5, #61440          @ encoding: [0x0f,0x5a,0xe5,0xe2]2161@ CHECK: rsc	r5, r5, #61440          @ encoding: [0x0f,0x5a,0xe5,0xe2]2162@ CHECK: rsc	r5, r5, #61440          @ encoding: [0x0f,0x5a,0xe5,0xe2]2163@ CHECK: rsc	r7, r7, #16711680       @ encoding: [0xff,0x78,0xe7,0xe2]2164@ CHECK: rsc	r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0xe7,0xe2]2165@ CHECK: rsc	r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0xe7,0xe2]2166@ CHECK: rsc	r7, r7, #40, #2         @ encoding: [0x28,0x71,0xe7,0xe2]2167@ CHECK: rsc	r7, r7, #40, #2         @ encoding: [0x28,0x71,0xe7,0xe2]2168@ CHECK: rsc	r7, r7, #40, #2         @ encoding: [0x28,0x71,0xe7,0xe2]2169@ CHECK: rsc	r7, r7, #40, #2         @ encoding: [0x28,0x71,0xe7,0xe2]2170@ CHECK: rsc	r4, r4, r5              @ encoding: [0x05,0x40,0xe4,0xe0]2171@ CHECK: rsc	r4, r4, r5, lsl #5      @ encoding: [0x85,0x42,0xe4,0xe0]2172@ CHECK: rsc	r4, r4, r5, lsr #5      @ encoding: [0xa5,0x42,0xe4,0xe0]2173@ CHECK: rscne	r4, r4, r5, lsr #5      @ encoding: [0xa5,0x42,0xe4,0x10]2174@ CHECK: rsc	r4, r4, r5, asr #5      @ encoding: [0xc5,0x42,0xe4,0xe0]2175@ CHECK: rsc	r4, r4, r5, ror #5      @ encoding: [0xe5,0x42,0xe4,0xe0]2176@ CHECK: rscgt	r6, r6, r7, lsl r9      @ encoding: [0x17,0x69,0xe6,0xc0]2177@ CHECK: rsc	r6, r6, r7, lsr r9      @ encoding: [0x37,0x69,0xe6,0xe0]2178@ CHECK: rsc	r6, r6, r7, asr r9      @ encoding: [0x57,0x69,0xe6,0xe0]2179@ CHECK: rsc	r6, r6, r7, ror r9      @ encoding: [0x77,0x69,0xe6,0xe0]2180 2181@------------------------------------------------------------------------------2182@ RRX/RRXS2183@------------------------------------------------------------------------------2184 2185         rrx r0, r12186	 rrx sp, pc2187	 rrx pc, lr2188	 rrx lr, sp2189 2190@ CHECK: rrx	r0, r1                  @ encoding: [0x61,0x00,0xa0,0xe1]2191@ CHECK: rrx	sp, pc                  @ encoding: [0x6f,0xd0,0xa0,0xe1]2192@ CHECK: rrx	pc, lr                  @ encoding: [0x6e,0xf0,0xa0,0xe1]2193@ CHECK: rrx	lr, sp                  @ encoding: [0x6d,0xe0,0xa0,0xe1]2194 2195         rrxs r0, r12196	 rrxs sp, pc2197	 rrxs pc, lr2198	 rrxs lr, sp2199 2200@CHECK: rrxs	r0, r1                  @ encoding: [0x61,0x00,0xb0,0xe1]2201@CHECK: rrxs	sp, pc                  @ encoding: [0x6f,0xd0,0xb0,0xe1]2202@CHECK: rrxs	pc, lr                  @ encoding: [0x6e,0xf0,0xb0,0xe1]2203@CHECK: rrxs	lr, sp                  @ encoding: [0x6d,0xe0,0xb0,0xe1]2204 2205@ ------------------------------------------------------------------------------2206@ SADD16/SADD82207@------------------------------------------------------------------------------2208        sadd16 r1, r2, r32209        sadd16gt r1, r2, r32210        sadd8 r1, r2, r32211        sadd8le r1, r2, r32212 2213@ CHECK: sadd16	r1, r2, r3              @ encoding: [0x13,0x1f,0x12,0xe6]2214@ CHECK: sadd16gt	r1, r2, r3      @ encoding: [0x13,0x1f,0x12,0xc6]2215@ CHECK: sadd8	r1, r2, r3              @ encoding: [0x93,0x1f,0x12,0xe6]2216@ CHECK: sadd8le r1, r2, r3             @ encoding: [0x93,0x1f,0x12,0xd6]2217 2218 2219@------------------------------------------------------------------------------2220@ SASX2221@------------------------------------------------------------------------------2222        sasx r9, r12, r02223        sasxeq r9, r12, r02224 2225@ CHECK: sasx	r9, r12, r0             @ encoding: [0x30,0x9f,0x1c,0xe6]2226@ CHECK: sasxeq	r9, r12, r0             @ encoding: [0x30,0x9f,0x1c,0x06]2227 2228 2229@------------------------------------------------------------------------------2230@ SBC2231@------------------------------------------------------------------------------2232        sbc r4, r5, #0xf0002233        sbc r4, r5, $0xf0002234        sbc r4, r5, 0xf0002235        sbc r7, r8, #(0xff << 16)2236        sbc r7, r8, #-21474836382237        sbc r7, r8, #42, #22238        sbc r7, r8, #40, #22239        sbc r7, r8, $40, $22240        sbc r7, r8, 40, 22241        sbc r7, r8, (20 * 2), (1 << 1)2242        sbc r4, r5, r62243        sbc r4, r5, r6, lsl #52244        sbc r4, r5, r6, lsr #52245        sbc r4, r5, r6, lsr #52246        sbc r4, r5, r6, asr #52247        sbc r4, r5, r6, ror #52248        sbc r6, r7, r8, lsl r92249        sbc r6, r7, r8, lsr r92250        sbc r6, r7, r8, asr r92251        sbc r6, r7, r8, ror r92252 2253        @ destination register is optional2254        sbc r5, #0xf0002255        sbc r5, $0xf0002256        sbc r5, 0xf0002257        sbc r7, #(0xff << 16)2258        sbc r7, #-21474836382259        sbc r7, #42, #22260        sbc r7, #40, #22261        sbc r7, $40, $22262        sbc r7, 40, 22263        sbc r7, (20 * 2), (1 << 1)2264        sbc r4, r52265        sbc r4, r5, lsl #52266        sbc r4, r5, lsr #52267        sbc r4, r5, lsr #52268        sbc r4, r5, asr #52269        sbc r4, r5, ror #52270        sbc r6, r7, lsl r92271        sbc r6, r7, lsr r92272        sbc r6, r7, asr r92273        sbc r6, r7, ror r92274 2275@ CHECK: sbc	r4, r5, #61440          @ encoding: [0x0f,0x4a,0xc5,0xe2]2276@ CHECK: sbc	r4, r5, #61440          @ encoding: [0x0f,0x4a,0xc5,0xe2]2277@ CHECK: sbc	r4, r5, #61440          @ encoding: [0x0f,0x4a,0xc5,0xe2]2278@ CHECK: sbc	r7, r8, #16711680       @ encoding: [0xff,0x78,0xc8,0xe2]2279@ CHECK: sbc    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0xc8,0xe2]2280@ CHECK: sbc    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0xc8,0xe2]2281@ CHECK: sbc    r7, r8, #40, #2         @ encoding: [0x28,0x71,0xc8,0xe2]2282@ CHECK: sbc    r7, r8, #40, #2         @ encoding: [0x28,0x71,0xc8,0xe2]2283@ CHECK: sbc    r7, r8, #40, #2         @ encoding: [0x28,0x71,0xc8,0xe2]2284@ CHECK: sbc    r7, r8, #40, #2         @ encoding: [0x28,0x71,0xc8,0xe2]2285@ CHECK: sbc	r4, r5, r6              @ encoding: [0x06,0x40,0xc5,0xe0]2286@ CHECK: sbc	r4, r5, r6, lsl #5      @ encoding: [0x86,0x42,0xc5,0xe0]2287@ CHECK: sbc	r4, r5, r6, lsr #5      @ encoding: [0xa6,0x42,0xc5,0xe0]2288@ CHECK: sbc	r4, r5, r6, lsr #5      @ encoding: [0xa6,0x42,0xc5,0xe0]2289@ CHECK: sbc	r4, r5, r6, asr #5      @ encoding: [0xc6,0x42,0xc5,0xe0]2290@ CHECK: sbc	r4, r5, r6, ror #5      @ encoding: [0xe6,0x42,0xc5,0xe0]2291@ CHECK: sbc	r6, r7, r8, lsl r9      @ encoding: [0x18,0x69,0xc7,0xe0]2292@ CHECK: sbc	r6, r7, r8, lsr r9      @ encoding: [0x38,0x69,0xc7,0xe0]2293@ CHECK: sbc	r6, r7, r8, asr r9      @ encoding: [0x58,0x69,0xc7,0xe0]2294@ CHECK: sbc	r6, r7, r8, ror r9      @ encoding: [0x78,0x69,0xc7,0xe0]2295 2296@ CHECK: sbc	r5, r5, #61440          @ encoding: [0x0f,0x5a,0xc5,0xe2]2297@ CHECK: sbc	r5, r5, #61440          @ encoding: [0x0f,0x5a,0xc5,0xe2]2298@ CHECK: sbc	r5, r5, #61440          @ encoding: [0x0f,0x5a,0xc5,0xe2]2299@ CHECK: sbc	r7, r7, #16711680       @ encoding: [0xff,0x78,0xc7,0xe2]2300@ CHECK: sbc	r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0xc7,0xe2]2301@ CHECK: sbc	r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0xc7,0xe2]2302@ CHECK: sbc	r7, r7, #40, #2         @ encoding: [0x28,0x71,0xc7,0xe2]2303@ CHECK: sbc	r7, r7, #40, #2         @ encoding: [0x28,0x71,0xc7,0xe2]2304@ CHECK: sbc	r7, r7, #40, #2         @ encoding: [0x28,0x71,0xc7,0xe2]2305@ CHECK: sbc	r7, r7, #40, #2         @ encoding: [0x28,0x71,0xc7,0xe2]2306@ CHECK: sbc	r4, r4, r5              @ encoding: [0x05,0x40,0xc4,0xe0]2307@ CHECK: sbc	r4, r4, r5, lsl #5      @ encoding: [0x85,0x42,0xc4,0xe0]2308@ CHECK: sbc	r4, r4, r5, lsr #5      @ encoding: [0xa5,0x42,0xc4,0xe0]2309@ CHECK: sbc	r4, r4, r5, lsr #5      @ encoding: [0xa5,0x42,0xc4,0xe0]2310@ CHECK: sbc	r4, r4, r5, asr #5      @ encoding: [0xc5,0x42,0xc4,0xe0]2311@ CHECK: sbc	r4, r4, r5, ror #5      @ encoding: [0xe5,0x42,0xc4,0xe0]2312@ CHECK: sbc	r6, r6, r7, lsl r9      @ encoding: [0x17,0x69,0xc6,0xe0]2313@ CHECK: sbc	r6, r6, r7, lsr r9      @ encoding: [0x37,0x69,0xc6,0xe0]2314@ CHECK: sbc	r6, r6, r7, asr r9      @ encoding: [0x57,0x69,0xc6,0xe0]2315@ CHECK: sbc	r6, r6, r7, ror r9      @ encoding: [0x77,0x69,0xc6,0xe0]2316 2317 2318@------------------------------------------------------------------------------2319@ SBFX2320@------------------------------------------------------------------------------2321        sbfx r4, r5, #16, #12322        sbfxgt r4, r5, #16, #162323 2324@ CHECK: sbfx	r4, r5, #16, #1         @ encoding: [0x55,0x48,0xa0,0xe7]2325@ CHECK: sbfxgt	r4, r5, #16, #16        @ encoding: [0x55,0x48,0xaf,0xc7]2326 2327 2328@------------------------------------------------------------------------------2329@ SEL2330@------------------------------------------------------------------------------2331        sel r9, r2, r12332        selne r9, r2, r12333 2334@ CHECK: sel	r9, r2, r1              @ encoding: [0xb1,0x9f,0x82,0xe6]2335@ CHECK: selne	r9, r2, r1              @ encoding: [0xb1,0x9f,0x82,0x16]2336 2337 2338@------------------------------------------------------------------------------2339@ SETEND2340@------------------------------------------------------------------------------2341        setend be2342        setend BE2343        setend le2344        setend LE2345 2346@ CHECK: setend	be                      @ encoding: [0x00,0x02,0x01,0xf1]2347@ CHECK: setend	be                      @ encoding: [0x00,0x02,0x01,0xf1]2348@ CHECK: setend	le                      @ encoding: [0x00,0x00,0x01,0xf1]2349@ CHECK: setend	le                      @ encoding: [0x00,0x00,0x01,0xf1]2350 2351 2352@------------------------------------------------------------------------------2353@ SEV2354@------------------------------------------------------------------------------2355        sev2356        seveq2357 2358@ CHECK: sev                            @ encoding: [0x04,0xf0,0x20,0xe3]2359@ CHECK: seveq                          @ encoding: [0x04,0xf0,0x20,0x03]2360 2361 2362@------------------------------------------------------------------------------2363@ SHADD16/SHADD82364@------------------------------------------------------------------------------2365        shadd16 r4, r8, r22366        shadd16gt r4, r8, r22367        shadd8 r4, r8, r22368        shadd8gt r4, r8, r22369 2370@ CHECK: shadd16	r4, r8, r2      @ encoding: [0x12,0x4f,0x38,0xe6]2371@ CHECK: shadd16gt	r4, r8, r2      @ encoding: [0x12,0x4f,0x38,0xc6]2372@ CHECK: shadd8	r4, r8, r2              @ encoding: [0x92,0x4f,0x38,0xe6]2373@ CHECK: shadd8gt	r4, r8, r2      @ encoding: [0x92,0x4f,0x38,0xc6]2374 2375 2376@------------------------------------------------------------------------------2377@ SHASX2378@------------------------------------------------------------------------------2379        shasx r4, r8, r22380        shasxgt r4, r8, r22381 2382@ CHECK: shasx	r4, r8, r2              @ encoding: [0x32,0x4f,0x38,0xe6]2383@ CHECK: shasxgt r4, r8, r2             @ encoding: [0x32,0x4f,0x38,0xc6]2384 2385 2386@------------------------------------------------------------------------------2387@ SHSUB16/SHSUB82388@------------------------------------------------------------------------------2389        shsub16 r4, r8, r22390        shsub16gt r4, r8, r22391        shsub8 r4, r8, r22392        shsub8gt r4, r8, r22393 2394@ CHECK: shsub16	r4, r8, r2      @ encoding: [0x72,0x4f,0x38,0xe6]2395@ CHECK: shsub16gt	r4, r8, r2      @ encoding: [0x72,0x4f,0x38,0xc6]2396@ CHECK: shsub8	r4, r8, r2              @ encoding: [0xf2,0x4f,0x38,0xe6]2397@ CHECK: shsub8gt	r4, r8, r2      @ encoding: [0xf2,0x4f,0x38,0xc6]2398 2399@------------------------------------------------------------------------------2400@ SMLABB/SMLABT/SMLATB/SMLATT2401@------------------------------------------------------------------------------2402        smlabb r3, r1, r9, r02403        smlabt r5, r6, r4, r12404        smlatb r4, r2, r3, r22405        smlatt r8, r3, r8, r42406        smlabbge r3, r1, r9, r02407        smlabtle r5, r6, r4, r12408        smlatbne r4, r2, r3, r22409        smlatteq r8, r3, r8, r42410 2411@ CHECK: smlabb	r3, r1, r9, r0          @ encoding: [0x81,0x09,0x03,0xe1]2412@ CHECK: smlabt	r5, r6, r4, r1          @ encoding: [0xc6,0x14,0x05,0xe1]2413@ CHECK: smlatb	r4, r2, r3, r2          @ encoding: [0xa2,0x23,0x04,0xe1]2414@ CHECK: smlatt	r8, r3, r8, r4          @ encoding: [0xe3,0x48,0x08,0xe1]2415@ CHECK: smlabbge	r3, r1, r9, r0  @ encoding: [0x81,0x09,0x03,0xa1]2416@ CHECK: smlabtle	r5, r6, r4, r1  @ encoding: [0xc6,0x14,0x05,0xd1]2417@ CHECK: smlatbne	r4, r2, r3, r2  @ encoding: [0xa2,0x23,0x04,0x11]2418@ CHECK: smlatteq	r8, r3, r8, r4  @ encoding: [0xe3,0x48,0x08,0x01]2419 2420@------------------------------------------------------------------------------2421@ SMLAD/SMLADX2422@------------------------------------------------------------------------------2423        smlad r2, r3, r5, r82424        smladx r2, r3, r5, r82425        smladeq r2, r3, r5, r82426        smladxhi r2, r3, r5, r82427 2428@ CHECK: smlad	r2, r3, r5, r8          @ encoding: [0x13,0x85,0x02,0xe7]2429@ CHECK: smladx	r2, r3, r5, r8          @ encoding: [0x33,0x85,0x02,0xe7]2430@ CHECK: smladeq	r2, r3, r5, r8  @ encoding: [0x13,0x85,0x02,0x07]2431@ CHECK: smladxhi	r2, r3, r5, r8  @ encoding: [0x33,0x85,0x02,0x87]2432 2433 2434@------------------------------------------------------------------------------2435@ SMLAL2436@------------------------------------------------------------------------------2437        smlal r2, r3, r5, r82438        smlals r2, r3, r5, r82439        smlaleq r2, r3, r5, r82440        smlalshi r2, r3, r5, r82441 2442@ CHECK: smlal	r2, r3, r5, r8          @ encoding: [0x95,0x28,0xe3,0xe0]2443@ CHECK: smlals	r2, r3, r5, r8          @ encoding: [0x95,0x28,0xf3,0xe0]2444@ CHECK: smlaleq	r2, r3, r5, r8  @ encoding: [0x95,0x28,0xe3,0x00]2445@ CHECK: smlalshi	r2, r3, r5, r8  @ encoding: [0x95,0x28,0xf3,0x80]2446 2447 2448@------------------------------------------------------------------------------2449@ SMLALBB/SMLALBT/SMLALTB/SMLALTT2450@------------------------------------------------------------------------------2451        smlalbb r3, r1, r9, r02452        smlalbt r5, r6, r4, r12453        smlaltb r4, r2, r3, r22454        smlaltt r8, r3, r8, r42455        smlalbbge r3, r1, r9, r02456        smlalbtle r5, r6, r4, r12457        smlaltbne r4, r2, r3, r22458        smlaltteq r8, r3, r8, r42459 2460@ CHECK: smlalbb	r3, r1, r9, r0  @ encoding: [0x89,0x30,0x41,0xe1]2461@ CHECK: smlalbt	r5, r6, r4, r1  @ encoding: [0xc4,0x51,0x46,0xe1]2462@ CHECK: smlaltb	r4, r2, r3, r2  @ encoding: [0xa3,0x42,0x42,0xe1]2463@ CHECK: smlaltt	r8, r3, r8, r4  @ encoding: [0xe8,0x84,0x43,0xe1]2464@ CHECK: smlalbbge	r3, r1, r9, r0  @ encoding: [0x89,0x30,0x41,0xa1]2465@ CHECK: smlalbtle	r5, r6, r4, r1  @ encoding: [0xc4,0x51,0x46,0xd1]2466@ CHECK: smlaltbne	r4, r2, r3, r2  @ encoding: [0xa3,0x42,0x42,0x11]2467@ CHECK: smlaltteq	r8, r3, r8, r4  @ encoding: [0xe8,0x84,0x43,0x01]2468 2469 2470@------------------------------------------------------------------------------2471@ SMLALD/SMLALDX2472@------------------------------------------------------------------------------2473        smlald r2, r3, r5, r82474        smlaldx r2, r3, r5, r82475        smlaldeq r2, r3, r5, r82476        smlaldxhi r2, r3, r5, r82477 2478@ CHECK: smlald	r2, r3, r5, r8          @ encoding: [0x15,0x28,0x43,0xe7]2479@ CHECK: smlaldx	r2, r3, r5, r8  @ encoding: [0x35,0x28,0x43,0xe7]2480@ CHECK: smlaldeq	r2, r3, r5, r8  @ encoding: [0x15,0x28,0x43,0x07]2481@ CHECK: smlaldxhi	r2, r3, r5, r8  @ encoding: [0x35,0x28,0x43,0x87]2482 2483 2484@------------------------------------------------------------------------------2485@ SMLAWB/SMLAWT2486@------------------------------------------------------------------------------2487        smlawb r2, r3, r10, r82488        smlawt r8, r3, r5, r92489        smlawbeq r2, r7, r5, r82490        smlawthi r1, r3, r0, r82491 2492@ CHECK: smlawb	r2, r3, r10, r8         @ encoding: [0x83,0x8a,0x22,0xe1]2493@ CHECK: smlawt	r8, r3, r5, r9          @ encoding: [0xc3,0x95,0x28,0xe1]2494@ CHECK: smlawbeq	r2, r7, r5, r8  @ encoding: [0x87,0x85,0x22,0x01]2495@ CHECK: smlawthi	r1, r3, r0, r8  @ encoding: [0xc3,0x80,0x21,0x81]2496 2497 2498@------------------------------------------------------------------------------2499@ SMLSD/SMLSDX2500@------------------------------------------------------------------------------2501        smlsd r2, r3, r5, r82502        smlsdx r2, r3, r5, r82503        smlsdeq r2, r3, r5, r82504        smlsdxhi r2, r3, r5, r82505 2506@ CHECK: smlsd	r2, r3, r5, r8          @ encoding: [0x53,0x85,0x02,0xe7]2507@ CHECK: smlsdx	r2, r3, r5, r8          @ encoding: [0x73,0x85,0x02,0xe7]2508@ CHECK: smlsdeq	r2, r3, r5, r8  @ encoding: [0x53,0x85,0x02,0x07]2509@ CHECK: smlsdxhi	r2, r3, r5, r8  @ encoding: [0x73,0x85,0x02,0x87]2510 2511 2512@------------------------------------------------------------------------------2513@ SMLSLD/SMLSLDX2514@------------------------------------------------------------------------------2515        smlsld r2, r9, r5, r12516        smlsldx r4, r11, r2, r82517        smlsldeq r8, r2, r5, r62518        smlsldxhi r1, r0, r3, r82519 2520@ CHECK: smlsld	r2, r9, r5, r1          @ encoding: [0x55,0x21,0x49,0xe7]2521@ CHECK: smlsldx	r4, r11, r2, r8 @ encoding: [0x72,0x48,0x4b,0xe7]2522@ CHECK: smlsldeq	r8, r2, r5, r6  @ encoding: [0x55,0x86,0x42,0x07]2523@ CHECK: smlsldxhi	r1, r0, r3, r8  @ encoding: [0x73,0x18,0x40,0x87]2524 2525 2526@------------------------------------------------------------------------------2527@ SMMLA/SMMLAR2528@------------------------------------------------------------------------------2529        smmla r1, r2, r3, r42530        smmlar r4, r3, r2, r12531        smmlalo r1, r2, r3, r42532        smmlarcs r4, r3, r2, r12533 2534@ CHECK: smmla	r1, r2, r3, r4          @ encoding: [0x12,0x43,0x51,0xe7]2535@ CHECK: smmlar	r4, r3, r2, r1          @ encoding: [0x33,0x12,0x54,0xe7]2536@ CHECK: smmlalo	r1, r2, r3, r4  @ encoding: [0x12,0x43,0x51,0x37]2537@ CHECK: smmlarhs	r4, r3, r2, r1  @ encoding: [0x33,0x12,0x54,0x27]2538 2539 2540@------------------------------------------------------------------------------2541@ SMMLS/SMMLSR2542@------------------------------------------------------------------------------2543        smmls r1, r2, r3, r42544        smmlsr r4, r3, r2, r12545        smmlslo r1, r2, r3, r42546        smmlsrcs r4, r3, r2, r12547 2548@ CHECK: smmls	r1, r2, r3, r4          @ encoding: [0xd2,0x43,0x51,0xe7]2549@ CHECK: smmlsr	r4, r3, r2, r1          @ encoding: [0xf3,0x12,0x54,0xe7]2550@ CHECK: smmlslo	r1, r2, r3, r4  @ encoding: [0xd2,0x43,0x51,0x37]2551@ CHECK: smmlsrhs	r4, r3, r2, r1  @ encoding: [0xf3,0x12,0x54,0x27]2552 2553 2554@------------------------------------------------------------------------------2555@ SMMUL/SMMULR2556@------------------------------------------------------------------------------2557        smmul r2, r3, r42558        smmulr r3, r2, r12559        smmulcc r2, r3, r42560        smmulrhs r3, r2, r12561 2562@ CHECK: smmul	r2, r3, r4              @ encoding: [0x13,0xf4,0x52,0xe7]2563@ CHECK: smmulr	r3, r2, r1              @ encoding: [0x32,0xf1,0x53,0xe7]2564@ CHECK: smmullo	r2, r3, r4      @ encoding: [0x13,0xf4,0x52,0x37]2565@ CHECK: smmulrhs	r3, r2, r1      @ encoding: [0x32,0xf1,0x53,0x27]2566 2567 2568@------------------------------------------------------------------------------2569@ SMUAD/SMUADX2570@------------------------------------------------------------------------------2571        smuad r2, r3, r42572        smuadx r3, r2, r12573        smuadlt r2, r3, r42574        smuadxge r3, r2, r12575 2576@ CHECK: smuad	r2, r3, r4              @ encoding: [0x13,0xf4,0x02,0xe7]2577@ CHECK: smuadx	r3, r2, r1              @ encoding: [0x32,0xf1,0x03,0xe7]2578@ CHECK: smuadlt	r2, r3, r4      @ encoding: [0x13,0xf4,0x02,0xb7]2579@ CHECK: smuadxge	r3, r2, r1      @ encoding: [0x32,0xf1,0x03,0xa7]2580 2581 2582@------------------------------------------------------------------------------2583@ SMULBB/SMULBT/SMULTB/SMULTT2584@------------------------------------------------------------------------------2585        smulbb r3, r9, r02586        smulbt r5, r4, r12587        smultb r4, r2, r22588        smultt r8, r3, r42589        smulbbge r1, r9, r02590        smulbtle r5, r6, r42591        smultbne r2, r3, r22592        smultteq r8, r3, r42593 2594@ CHECK: smulbb	r3, r9, r0              @ encoding: [0x89,0x00,0x63,0xe1]2595@ CHECK: smulbt	r5, r4, r1              @ encoding: [0xc4,0x01,0x65,0xe1]2596@ CHECK: smultb	r4, r2, r2              @ encoding: [0xa2,0x02,0x64,0xe1]2597@ CHECK: smultt	r8, r3, r4              @ encoding: [0xe3,0x04,0x68,0xe1]2598@ CHECK: smulbbge	r1, r9, r0      @ encoding: [0x89,0x00,0x61,0xa1]2599@ CHECK: smulbtle	r5, r6, r4      @ encoding: [0xc6,0x04,0x65,0xd1]2600@ CHECK: smultbne	r2, r3, r2      @ encoding: [0xa3,0x02,0x62,0x11]2601@ CHECK: smultteq	r8, r3, r4      @ encoding: [0xe3,0x04,0x68,0x01]2602 2603 2604@------------------------------------------------------------------------------2605@ SMULL2606@------------------------------------------------------------------------------2607        smull r3, r9, r0, r12608        smulls r3, r9, r0, r22609        smulleq r8, r3, r4, r52610        smullseq r8, r3, r4, r32611 2612@ CHECK: smull	r3, r9, r0, r1          @ encoding: [0x90,0x31,0xc9,0xe0]2613@ CHECK: smulls	r3, r9, r0, r2          @ encoding: [0x90,0x32,0xd9,0xe0]2614@ CHECK: smulleq	r8, r3, r4, r5  @ encoding: [0x94,0x85,0xc3,0x00]2615@ CHECK: smullseq	r8, r3, r4, r3  @ encoding: [0x94,0x83,0xd3,0x00]2616 2617 2618@------------------------------------------------------------------------------2619@ SMULWB/SMULWT2620@------------------------------------------------------------------------------2621        smulwb r3, r9, r02622        smulwt r3, r9, r22623 2624@ CHECK: smulwb	r3, r9, r0              @ encoding: [0xa9,0x00,0x23,0xe1]2625@ CHECK: smulwt	r3, r9, r2              @ encoding: [0xe9,0x02,0x23,0xe1]2626 2627 2628@------------------------------------------------------------------------------2629@ SMUSD/SMUSDX2630@------------------------------------------------------------------------------2631        smusd r3, r0, r12632        smusdx r3, r9, r22633        smusdeq r8, r3, r22634        smusdxne r7, r4, r32635 2636@ CHECK: smusd	r3, r0, r1              @ encoding: [0x50,0xf1,0x03,0xe7]2637@ CHECK: smusdx	r3, r9, r2              @ encoding: [0x79,0xf2,0x03,0xe7]2638@ CHECK: smusdeq	r8, r3, r2      @ encoding: [0x53,0xf2,0x08,0x07]2639@ CHECK: smusdxne	r7, r4, r3      @ encoding: [0x74,0xf3,0x07,0x17]2640 2641 2642@------------------------------------------------------------------------------2643@ SRS2644@------------------------------------------------------------------------------2645        srsda sp, #52646        srsdb sp, #12647        srsia sp, #02648        srsib sp, #152649 2650        srsda sp!, #312651        srsdb sp!, #192652        srsia sp!, #22653        srsib sp!, #142654 2655        srsfa sp, #112656        srsea sp, #102657        srsfd sp, #92658        srsed sp, #52659 2660        srsfa sp!, #52661        srsea sp!, #52662        srsfd sp!, #52663        srsed sp!, #52664 2665        srs sp, #52666        srs sp!, #52667 2668@ CHECK: srsda	sp, #5                  @ encoding: [0x05,0x05,0x4d,0xf8]2669@ CHECK: srsdb	sp, #1                  @ encoding: [0x01,0x05,0x4d,0xf9]2670@ CHECK: srsia	sp, #0                  @ encoding: [0x00,0x05,0xcd,0xf8]2671@ CHECK: srsib	sp, #15                 @ encoding: [0x0f,0x05,0xcd,0xf9]2672 2673@ CHECK: srsda	sp!, #31                @ encoding: [0x1f,0x05,0x6d,0xf8]2674@ CHECK: srsdb	sp!, #19                @ encoding: [0x13,0x05,0x6d,0xf9]2675@ CHECK: srsia	sp!, #2                 @ encoding: [0x02,0x05,0xed,0xf8]2676@ CHECK: srsib	sp!, #14                @ encoding: [0x0e,0x05,0xed,0xf9]2677 2678@ CHECK: srsib	sp, #11                 @ encoding: [0x0b,0x05,0xcd,0xf9]2679@ CHECK: srsia	sp, #10                 @ encoding: [0x0a,0x05,0xcd,0xf8]2680@ CHECK: srsdb	sp, #9                  @ encoding: [0x09,0x05,0x4d,0xf9]2681@ CHECK: srsda	sp, #5                  @ encoding: [0x05,0x05,0x4d,0xf8]2682 2683@ CHECK: srsib	sp!, #5                 @ encoding: [0x05,0x05,0xed,0xf9]2684@ CHECK: srsia	sp!, #5                 @ encoding: [0x05,0x05,0xed,0xf8]2685@ CHECK: srsdb	sp!, #5                 @ encoding: [0x05,0x05,0x6d,0xf9]2686@ CHECK: srsda	sp!, #5                 @ encoding: [0x05,0x05,0x6d,0xf8]2687 2688@ CHECK: srsia	sp, #5                  @ encoding: [0x05,0x05,0xcd,0xf8]2689@ CHECK: srsia	sp!, #5                 @ encoding: [0x05,0x05,0xed,0xf8]2690 2691@ Compatibility aliases.2692        srsda #52693        srsdb #12694        srsia #02695        srsib #152696 2697        srsda #31!2698        srsdb #19!2699        srsia #2!2700        srsib #14!2701 2702        srsfa #112703        srsea #102704        srsfd #92705        srsed #52706 2707        srsfa #5!2708        srsea #5!2709        srsfd #5!2710        srsed #5!2711 2712        srs #52713        srs #5!2714 2715@ CHECK: srsda	sp, #5                  @ encoding: [0x05,0x05,0x4d,0xf8]2716@ CHECK: srsdb	sp, #1                  @ encoding: [0x01,0x05,0x4d,0xf9]2717@ CHECK: srsia	sp, #0                  @ encoding: [0x00,0x05,0xcd,0xf8]2718@ CHECK: srsib	sp, #15                 @ encoding: [0x0f,0x05,0xcd,0xf9]2719@ CHECK: srsda	sp!, #31                @ encoding: [0x1f,0x05,0x6d,0xf8]2720@ CHECK: srsdb	sp!, #19                @ encoding: [0x13,0x05,0x6d,0xf9]2721@ CHECK: srsia	sp!, #2                 @ encoding: [0x02,0x05,0xed,0xf8]2722@ CHECK: srsib	sp!, #14                @ encoding: [0x0e,0x05,0xed,0xf9]2723@ CHECK: srsib	sp, #11                 @ encoding: [0x0b,0x05,0xcd,0xf9]2724@ CHECK: srsia	sp, #10                 @ encoding: [0x0a,0x05,0xcd,0xf8]2725@ CHECK: srsdb	sp, #9                  @ encoding: [0x09,0x05,0x4d,0xf9]2726@ CHECK: srsda	sp, #5                  @ encoding: [0x05,0x05,0x4d,0xf8]2727@ CHECK: srsib	sp!, #5                 @ encoding: [0x05,0x05,0xed,0xf9]2728@ CHECK: srsia	sp!, #5                 @ encoding: [0x05,0x05,0xed,0xf8]2729@ CHECK: srsdb	sp!, #5                 @ encoding: [0x05,0x05,0x6d,0xf9]2730@ CHECK: srsda	sp!, #5                 @ encoding: [0x05,0x05,0x6d,0xf8]2731@ CHECK: srsia	sp, #5                  @ encoding: [0x05,0x05,0xcd,0xf8]2732@ CHECK: srsia	sp!, #5                 @ encoding: [0x05,0x05,0xed,0xf8]2733 2734 2735@------------------------------------------------------------------------------2736@ SSAT2737@------------------------------------------------------------------------------2738        ssat	r8, #1, r102739        ssat	r8, #1, r10, lsl #02740        ssat	r8, #1, r10, lsl #312741        ssat	r8, #1, r10, asr #322742        ssat	r8, #1, r10, asr #12743 2744@ CHECK: ssat	r8, #1, r10             @ encoding: [0x1a,0x80,0xa0,0xe6]2745@ CHECK: ssat	r8, #1, r10             @ encoding: [0x1a,0x80,0xa0,0xe6]2746@ CHECK: ssat	r8, #1, r10, lsl #31    @ encoding: [0x9a,0x8f,0xa0,0xe6]2747@ CHECK: ssat	r8, #1, r10, asr #32    @ encoding: [0x5a,0x80,0xa0,0xe6]2748@ CHECK: ssat	r8, #1, r10, asr #1     @ encoding: [0xda,0x80,0xa0,0xe6]2749 2750 2751@------------------------------------------------------------------------------2752@ SSAT162753@------------------------------------------------------------------------------2754        ssat16	r2, #1, r72755        ssat16	r3, #16, r52756 2757@ CHECK: ssat16	r2, #1, r7              @ encoding: [0x37,0x2f,0xa0,0xe6]2758@ CHECK: ssat16	r3, #16, r5             @ encoding: [0x35,0x3f,0xaf,0xe6]2759 2760 2761@------------------------------------------------------------------------------2762@ SSAX2763@------------------------------------------------------------------------------2764        ssax r2, r3, r42765        ssaxlt r2, r3, r42766 2767@ CHECK: ssax	r2, r3, r4              @ encoding: [0x54,0x2f,0x13,0xe6]2768@ CHECK: ssaxlt	r2, r3, r4              @ encoding: [0x54,0x2f,0x13,0xb6]2769 2770@------------------------------------------------------------------------------2771@ SSUB16/SSUB82772@------------------------------------------------------------------------------2773        ssub16 r1, r0, r62774        ssub16ne r5, r3, r22775        ssub8 r9, r2, r42776        ssub8eq r5, r1, r22777 2778@ CHECK: ssub16	r1, r0, r6              @ encoding: [0x76,0x1f,0x10,0xe6]2779@ CHECK: ssub16ne	r5, r3, r2      @ encoding: [0x72,0x5f,0x13,0x16]2780@ CHECK: ssub8	r9, r2, r4              @ encoding: [0xf4,0x9f,0x12,0xe6]2781@ CHECK: ssub8eq	r5, r1, r2      @ encoding: [0xf2,0x5f,0x11,0x06]2782 2783@------------------------------------------------------------------------------2784@ STC{L}/STC2{L}2785@------------------------------------------------------------------------------2786        stc2 p0, c8, [r1, #4]2787        stc2 p1, c7, [r2]2788        stc2 p2, c6, [r3, #-224]2789        stc2 p3, c5, [r4, #-120]!2790        stc2 p4, c4, [r5], #162791        stc2 p5, c3, [r6], #-722792        stc2l p6, c2, [r7, #4]2793        stc2l p7, c1, [r8]2794        stc2l p8, c0, [r9, #-224]2795        stc2l p9, c1, [r10, #-120]!2796        stc2l p0, c2, [r11], #162797        stc2l p1, c3, [r12], #-722798 2799        stc p12, c4, [r0, #4]2800        stc p13, c5, [r1]2801        stc p14, c6, [r2, #-224]2802        stc p15, c7, [r3, #-120]!2803        stc p5, c8, [r4], #162804        stc p4, c9, [r5], #-722805        stcl p3, c10, [r6, #4]2806        stcl p2, c11, [r7]2807        stcl p1, c12, [r8, #-224]2808        stcl p0, c13, [r9, #-120]!2809        stcl p6, c14, [r10], #162810        stcl p7, c15, [r11], #-722811 2812        stclo p12, c4, [r0, #4]2813        stchi p13, c5, [r1]2814        stccs p14, c6, [r2, #-224]2815        stccc p15, c7, [r3, #-120]!2816        stceq p5, c8, [r4], #162817        stcgt p4, c9, [r5], #-722818        stcllt p3, c10, [r6, #4]2819        stclge p2, c11, [r7]2820        stclle p1, c12, [r8, #-224]2821        stclne p0, c13, [r9, #-120]!2822        stcleq p6, c14, [r10], #162823        stclhi p7, c15, [r11], #-722824 2825        stc2 p2, c8, [r1], { 25 }2826 2827@ CHECK: stc2	p0, c8, [r1, #4]        @ encoding: [0x01,0x80,0x81,0xfd]2828@ CHECK: stc2	p1, c7, [r2]            @ encoding: [0x00,0x71,0x82,0xfd]2829@ CHECK: stc2	p2, c6, [r3, #-224]     @ encoding: [0x38,0x62,0x03,0xfd]2830@ CHECK: stc2	p3, c5, [r4, #-120]!    @ encoding: [0x1e,0x53,0x24,0xfd]2831@ CHECK: stc2	p4, c4, [r5], #16       @ encoding: [0x04,0x44,0xa5,0xfc]2832@ CHECK: stc2	p5, c3, [r6], #-72      @ encoding: [0x12,0x35,0x26,0xfc]2833@ CHECK: stc2l	p6, c2, [r7, #4]        @ encoding: [0x01,0x26,0xc7,0xfd]2834@ CHECK: stc2l	p7, c1, [r8]            @ encoding: [0x00,0x17,0xc8,0xfd]2835@ CHECK: stc2l	p8, c0, [r9, #-224]     @ encoding: [0x38,0x08,0x49,0xfd]2836@ CHECK: stc2l	p9, c1, [r10, #-120]!   @ encoding: [0x1e,0x19,0x6a,0xfd]2837@ CHECK: stc2l	p0, c2, [r11], #16      @ encoding: [0x04,0x20,0xeb,0xfc]2838@ CHECK: stc2l	p1, c3, [r12], #-72     @ encoding: [0x12,0x31,0x6c,0xfc]2839 2840@ CHECK: stc	p12, c4, [r0, #4]       @ encoding: [0x01,0x4c,0x80,0xed]2841@ CHECK: stc	p13, c5, [r1]           @ encoding: [0x00,0x5d,0x81,0xed]2842@ CHECK: stc	p14, c6, [r2, #-224]    @ encoding: [0x38,0x6e,0x02,0xed]2843@ CHECK: stc	p15, c7, [r3, #-120]!   @ encoding: [0x1e,0x7f,0x23,0xed]2844@ CHECK: stc	p5, c8, [r4], #16       @ encoding: [0x04,0x85,0xa4,0xec]2845@ CHECK: stc	p4, c9, [r5], #-72      @ encoding: [0x12,0x94,0x25,0xec]2846@ CHECK: stcl	p3, c10, [r6, #4]       @ encoding: [0x01,0xa3,0xc6,0xed]2847@ CHECK: stcl	p2, c11, [r7]           @ encoding: [0x00,0xb2,0xc7,0xed]2848@ CHECK: stcl	p1, c12, [r8, #-224]    @ encoding: [0x38,0xc1,0x48,0xed]2849@ CHECK: stcl	p0, c13, [r9, #-120]!   @ encoding: [0x1e,0xd0,0x69,0xed]2850@ CHECK: stcl	p6, c14, [r10], #16     @ encoding: [0x04,0xe6,0xea,0xec]2851@ CHECK: stcl	p7, c15, [r11], #-72    @ encoding: [0x12,0xf7,0x6b,0xec]2852 2853@ CHECK: stclo	p12, c4, [r0, #4]       @ encoding: [0x01,0x4c,0x80,0x3d]2854@ CHECK: stchi	p13, c5, [r1]           @ encoding: [0x00,0x5d,0x81,0x8d]2855@ CHECK: stchs	p14, c6, [r2, #-224]    @ encoding: [0x38,0x6e,0x02,0x2d]2856@ CHECK: stclo	p15, c7, [r3, #-120]!   @ encoding: [0x1e,0x7f,0x23,0x3d]2857@ CHECK: stceq	p5, c8, [r4], #16       @ encoding: [0x04,0x85,0xa4,0x0c]2858@ CHECK: stcgt	p4, c9, [r5], #-72      @ encoding: [0x12,0x94,0x25,0xcc]2859@ CHECK: stcllt	p3, c10, [r6, #4]       @ encoding: [0x01,0xa3,0xc6,0xbd]2860@ CHECK: stclge	p2, c11, [r7]           @ encoding: [0x00,0xb2,0xc7,0xad]2861@ CHECK: stclle	p1, c12, [r8, #-224]    @ encoding: [0x38,0xc1,0x48,0xdd]2862@ CHECK: stclne	p0, c13, [r9, #-120]!   @ encoding: [0x1e,0xd0,0x69,0x1d]2863@ CHECK: stcleq	p6, c14, [r10], #16     @ encoding: [0x04,0xe6,0xea,0x0c]2864@ CHECK: stclhi	p7, c15, [r11], #-72    @ encoding: [0x12,0xf7,0x6b,0x8c]2865 2866@ CHECK: stc2	p2, c8, [r1], {25}      @ encoding: [0x19,0x82,0x81,0xfc]2867 2868 2869@------------------------------------------------------------------------------2870@ STM*2871@------------------------------------------------------------------------------2872        stm       r2, {r1,r3-r6,sp}2873        stmia     r3, {r1,r3-r6,lr}2874        stmib     r4, {r1,r3-r6,sp}2875        stmda     r5, {r1,r3-r6,sp}2876        stmdb     r6, {r1,r3-r6,r8}2877        stmfd     sp, {r1,r3-r6,sp}2878 2879        @ with update2880        stm       r8!, {r1,r3-r6,sp}2881        stmib     r9!, {r1,r3-r6,sp}2882        stmda     sp!, {r1,r3-r6}2883        stmdb     r0!, {r1,r5,r7,sp}2884 2885@ CHECK: stm	r2, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x82,0xe8]2886@ CHECK: stm	r3, {r1, r3, r4, r5, r6, lr} @ encoding: [0x7a,0x40,0x83,0xe8]2887@ CHECK: stmib	r4, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x84,0xe9]2888@ CHECK: stmda	r5, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x05,0xe8]2889@ CHECK: stmdb	r6, {r1, r3, r4, r5, r6, r8} @ encoding: [0x7a,0x01,0x06,0xe9]2890@ CHECK: stmdb	sp, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x0d,0xe9]2891 2892@ CHECK: stm	r8!, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0xa8,0xe8]2893@ CHECK: stmib	r9!, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0xa9,0xe9]2894@ CHECK: stmda	sp!, {r1, r3, r4, r5, r6}     @ encoding: [0x7a,0x00,0x2d,0xe8]2895@ CHECK: stmdb	r0!, {r1, r5, r7, sp}         @ encoding: [0xa2,0x20,0x20,0xe9]2896 2897 2898@------------------------------------------------------------------------------2899@ STREX/STREXB/STREXH/STREXD2900@------------------------------------------------------------------------------2901        strexb  r1, r3, [r4]2902        strexh  r4, r2, [r5]2903        strex  r2, r1, [r7]2904        strexd  r6, r2, r3, [r8]2905 2906@ CHECK: strexb	r1, r3, [r4]            @ encoding: [0x93,0x1f,0xc4,0xe1]2907@ CHECK: strexh	r4, r2, [r5]            @ encoding: [0x92,0x4f,0xe5,0xe1]2908@ CHECK: strex	r2, r1, [r7]            @ encoding: [0x91,0x2f,0x87,0xe1]2909@ CHECK: strexd	r6, r2, r3, [r8]        @ encoding: [0x92,0x6f,0xa8,0xe1]2910 2911@ GNU alias2912        strexd  r6, r2, [r8]2913@ CHECK: strexd	r6, r2, r3, [r8]        @ encoding: [0x92,0x6f,0xa8,0xe1]2914 2915@------------------------------------------------------------------------------2916@ STR2917@------------------------------------------------------------------------------2918        strpl	r3, [r10, #-0]!2919        strpl	r3, [r10, #0]!2920 2921@ CHECK: strpl	r3, [r10, #-0]!         @ encoding: [0x00,0x30,0x2a,0x55]2922@ CHECK: strpl	r3, [r10, #0]!          @ encoding: [0x00,0x30,0xaa,0x55]2923 2924@------------------------------------------------------------------------------2925@ SUB2926@------------------------------------------------------------------------------2927        sub r4, r5, #0xf0002928        sub r4, r5, $0xf0002929        sub r4, r5, 0xf0002930        sub r7, r8, #(0xff << 16)2931        sub r7, r8, #-21474836382932        sub r7, r8, #42, #22933        sub r7, r8, #40, #22934        sub r7, r8, $40, $22935        sub r7, r8, 40, 22936        sub r7, r8, (20 * 2), (1 << 1)2937        sub r4, r5, r62938        sub r4, r5, r6, lsl #52939        sub r4, r5, r6, lsr #52940        sub r4, r5, r6, lsr #52941        sub r4, r5, r6, asr #52942        sub r4, r5, r6, ror #52943        sub r6, r7, r8, lsl r92944        sub r6, r7, r8, lsr r92945        sub r6, r7, r8, asr r92946        sub r6, r7, r8, ror r92947 2948        @ destination register is optional2949        sub r5, #0xf0002950        sub r5, $0xf0002951        sub r5, 0xf0002952        sub r7, #(0xff << 16)2953        sub r7, #-21474836382954        sub r7, #42, #22955        sub r7, #40, #22956        sub r7, $40, $22957        sub r7, 40, 22958        sub r7, (20 * 2), (1 << 1)2959        sub r4, r52960        sub r4, r5, lsl #52961        sub r4, r5, lsr #52962        sub r4, r5, lsr #52963        sub r4, r5, asr #52964        sub r4, r5, ror #52965        sub r6, r7, lsl r92966        sub r6, r7, lsr r92967        sub r6, r7, asr r92968        sub r6, r7, ror r92969 2970@ CHECK: sub	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x45,0xe2]2971@ CHECK: sub	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x45,0xe2]2972@ CHECK: sub	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x45,0xe2]2973@ CHECK: sub	r7, r8, #16711680       @ encoding: [0xff,0x78,0x48,0xe2]2974@ CHECK: sub    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0x48,0xe2]2975@ CHECK: sub    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0x48,0xe2]2976@ CHECK: sub    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x48,0xe2]2977@ CHECK: sub    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x48,0xe2]2978@ CHECK: sub    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x48,0xe2]2979@ CHECK: sub    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x48,0xe2]2980@ CHECK: sub	r4, r5, r6              @ encoding: [0x06,0x40,0x45,0xe0]2981@ CHECK: sub	r4, r5, r6, lsl #5      @ encoding: [0x86,0x42,0x45,0xe0]2982@ CHECK: sub	r4, r5, r6, lsr #5      @ encoding: [0xa6,0x42,0x45,0xe0]2983@ CHECK: sub	r4, r5, r6, lsr #5      @ encoding: [0xa6,0x42,0x45,0xe0]2984@ CHECK: sub	r4, r5, r6, asr #5      @ encoding: [0xc6,0x42,0x45,0xe0]2985@ CHECK: sub	r4, r5, r6, ror #5      @ encoding: [0xe6,0x42,0x45,0xe0]2986@ CHECK: sub	r6, r7, r8, lsl r9      @ encoding: [0x18,0x69,0x47,0xe0]2987@ CHECK: sub	r6, r7, r8, lsr r9      @ encoding: [0x38,0x69,0x47,0xe0]2988@ CHECK: sub	r6, r7, r8, asr r9      @ encoding: [0x58,0x69,0x47,0xe0]2989@ CHECK: sub	r6, r7, r8, ror r9      @ encoding: [0x78,0x69,0x47,0xe0]2990 2991 2992@ CHECK: sub	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x45,0xe2]2993@ CHECK: sub	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x45,0xe2]2994@ CHECK: sub	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x45,0xe2]2995@ CHECK: sub	r7, r7, #16711680       @ encoding: [0xff,0x78,0x47,0xe2]2996@ CHECK: sub	r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0x47,0xe2]2997@ CHECK: sub	r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0x47,0xe2]2998@ CHECK: sub	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x47,0xe2]2999@ CHECK: sub	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x47,0xe23000@ CHECK: sub	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x47,0xe2]3001@ CHECK: sub	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x47,0xe2]3002@ CHECK: sub	r4, r4, r5              @ encoding: [0x05,0x40,0x44,0xe0]3003@ CHECK: sub	r4, r4, r5, lsl #5      @ encoding: [0x85,0x42,0x44,0xe0]3004@ CHECK: sub	r4, r4, r5, lsr #5      @ encoding: [0xa5,0x42,0x44,0xe0]3005@ CHECK: sub	r4, r4, r5, lsr #5      @ encoding: [0xa5,0x42,0x44,0xe0]3006@ CHECK: sub	r4, r4, r5, asr #5      @ encoding: [0xc5,0x42,0x44,0xe0]3007@ CHECK: sub	r4, r4, r5, ror #5      @ encoding: [0xe5,0x42,0x44,0xe0]3008@ CHECK: sub	r6, r6, r7, lsl r9      @ encoding: [0x17,0x69,0x46,0xe0]3009@ CHECK: sub	r6, r6, r7, lsr r9      @ encoding: [0x37,0x69,0x46,0xe0]3010@ CHECK: sub	r6, r6, r7, asr r9      @ encoding: [0x57,0x69,0x46,0xe0]3011@ CHECK: sub	r6, r6, r7, ror r9      @ encoding: [0x77,0x69,0x46,0xe0]3012 3013    @ Test right shift by 32, which is encoded as 03014    sub r3, r1, r2, lsr #323015    sub r3, r1, r2, asr #323016@ CHECK: sub	r3, r1, r2, lsr #32     @ encoding: [0x22,0x30,0x41,0xe0]3017@ CHECK: sub	r3, r1, r2, asr #32     @ encoding: [0x42,0x30,0x41,0xe0]3018 3019@------------------------------------------------------------------------------3020@ SUBS3021@------------------------------------------------------------------------------3022    subs r7, r8, #167116803023    subs r7, r8, $167116803024    subs r7, r8, 167116803025    subs r7, r8, #(0xff << 16)3026    subs r7, r8, #-21474836383027    subs r7, r8, #42, #23028    subs r7, r8, #40, #23029    subs r7, r8, $40, $23030    subs r7, r8, 40, 23031    subs r7, r8, (20 * 2), (1 << 1)3032 3033@ CHECK: subs	r7, r8, #16711680       @ encoding: [0xff,0x78,0x58,0xe2]3034@ CHECK: subs	r7, r8, #16711680       @ encoding: [0xff,0x78,0x58,0xe2]3035@ CHECK: subs	r7, r8, #16711680       @ encoding: [0xff,0x78,0x58,0xe2]3036@ CHECK: subs	r7, r8, #16711680       @ encoding: [0xff,0x78,0x58,0xe2]3037@ CHECK: subs   r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0x58,0xe2]3038@ CHECK: subs   r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0x58,0xe2]3039@ CHECK: subs   r7, r8, #40, #2         @ encoding: [0x28,0x71,0x58,0xe2]3040@ CHECK: subs   r7, r8, #40, #2         @ encoding: [0x28,0x71,0x58,0xe2]3041@ CHECK: subs   r7, r8, #40, #2         @ encoding: [0x28,0x71,0x58,0xe2]3042@ CHECK: subs   r7, r8, #40, #2         @ encoding: [0x28,0x71,0x58,0xe2]3043 3044@------------------------------------------------------------------------------3045@ SVC3046@------------------------------------------------------------------------------3047        svc #163048        svc #03049        svc #0xffffff3050 3051@ CHECK: svc	#16                     @ encoding: [0x10,0x00,0x00,0xef]3052@ CHECK: svc	#0                      @ encoding: [0x00,0x00,0x00,0xef]3053@ CHECK: svc	#16777215               @ encoding: [0xff,0xff,0xff,0xef]3054 3055 3056@------------------------------------------------------------------------------3057@ SWP/SWPB3058@------------------------------------------------------------------------------3059        swp r1, r2, [r3]3060        swp r4, r4, [r6]3061        swpb r5, r1, [r9]3062 3063@ CHECK: swp	r1, r2, [r3]            @ encoding: [0x92,0x10,0x03,0xe1]3064@ CHECK: swp	r4, r4, [r6]            @ encoding: [0x94,0x40,0x06,0xe1]3065@ CHECK: swpb	r5, r1, [r9]            @ encoding: [0x91,0x50,0x49,0xe1]3066 3067 3068@------------------------------------------------------------------------------3069@ SXTAB3070@------------------------------------------------------------------------------3071        sxtab r2, r3, r43072        sxtab r4, r5, r6, ror #03073        sxtablt r6, r2, r9, ror #83074        sxtab r5, r1, r4, ror #163075        sxtab r7, r8, r3, ror #243076 3077@ CHECK: sxtab	r2, r3, r4              @ encoding: [0x74,0x20,0xa3,0xe6]3078@ CHECK: sxtab	r4, r5, r6              @ encoding: [0x76,0x40,0xa5,0xe6]3079@ CHECK: sxtablt r6, r2, r9, ror #8     @ encoding: [0x79,0x64,0xa2,0xb6]3080@ CHECK: sxtab	r5, r1, r4, ror #16     @ encoding: [0x74,0x58,0xa1,0xe6]3081@ CHECK: sxtab	r7, r8, r3, ror #24     @ encoding: [0x73,0x7c,0xa8,0xe6]3082 3083 3084@------------------------------------------------------------------------------3085@ SXTAB163086@------------------------------------------------------------------------------3087        sxtab16ge r0, r1, r43088        sxtab16 r6, r2, r7, ror #03089        sxtab16 r3, r5, r8, ror #83090        sxtab16 r3, r2, r1, ror #163091        sxtab16eq r1, r2, r3, ror #243092 3093@ CHECK: sxtab16ge	r0, r1, r4      @ encoding: [0x74,0x00,0x81,0xa6]3094@ CHECK: sxtab16	r6, r2, r7      @ encoding: [0x77,0x60,0x82,0xe6]3095@ CHECK: sxtab16 r3, r5, r8, ror #8     @ encoding: [0x78,0x34,0x85,0xe6]3096@ CHECK: sxtab16 r3, r2, r1, ror #16    @ encoding: [0x71,0x38,0x82,0xe6]3097@ CHECK: sxtab16eq r1, r2, r3, ror #24  @ encoding: [0x73,0x1c,0x82,0x06]3098 3099@------------------------------------------------------------------------------3100@ SXTAH3101@------------------------------------------------------------------------------3102        sxtah r1, r3, r93103        sxtahhi r6, r1, r6, ror #03104        sxtah r3, r8, r3, ror #83105        sxtahlo r2, r2, r4, ror #163106        sxtah r9, r3, r3, ror #243107 3108@ CHECK: sxtah	r1, r3, r9              @ encoding: [0x79,0x10,0xb3,0xe6]3109@ CHECK: sxtahhi	r6, r1, r6      @ encoding: [0x76,0x60,0xb1,0x86]3110@ CHECK: sxtah	r3, r8, r3, ror #8      @ encoding: [0x73,0x34,0xb8,0xe6]3111@ CHECK: sxtahlo r2, r2, r4, ror #16    @ encoding: [0x74,0x28,0xb2,0x36]3112@ CHECK: sxtah	r9, r3, r3, ror #24     @ encoding: [0x73,0x9c,0xb3,0xe6]3113 3114@------------------------------------------------------------------------------3115@ SXTB3116@------------------------------------------------------------------------------3117        sxtbge r2, r43118        sxtb r5, r6, ror #03119        sxtb r6, r9, ror #83120        sxtbcc r5, r1, ror #163121        sxtb r8, r3, ror #243122 3123@ CHECK: sxtbge	r2, r4                  @ encoding: [0x74,0x20,0xaf,0xa6]3124@ CHECK: sxtb	r5, r6                  @ encoding: [0x76,0x50,0xaf,0xe6]3125@ CHECK: sxtb	r6, r9, ror #8          @ encoding: [0x79,0x64,0xaf,0xe6]3126@ CHECK: sxtblo	r5, r1, ror #16         @ encoding: [0x71,0x58,0xaf,0x36]3127@ CHECK: sxtb	r8, r3, ror #24         @ encoding: [0x73,0x8c,0xaf,0xe6]3128 3129 3130@------------------------------------------------------------------------------3131@ SXTB163132@------------------------------------------------------------------------------3133        sxtb16 r1, r43134        sxtb16 r6, r7, ror #03135        sxtb16cs r3, r5, ror #83136        sxtb16 r3, r1, ror #163137        sxtb16ge r2, r3, ror #243138 3139@ CHECK: sxtb16	r1, r4                  @ encoding: [0x74,0x10,0x8f,0xe6]3140@ CHECK: sxtb16	r6, r7                  @ encoding: [0x77,0x60,0x8f,0xe6]3141@ CHECK: sxtb16hs	r3, r5, ror #8  @ encoding: [0x75,0x34,0x8f,0x26]3142@ CHECK: sxtb16	r3, r1, ror #16         @ encoding: [0x71,0x38,0x8f,0xe6]3143@ CHECK: sxtb16ge	r2, r3, ror #24 @ encoding: [0x73,0x2c,0x8f,0xa6]3144 3145 3146@------------------------------------------------------------------------------3147@ SXTH3148@------------------------------------------------------------------------------3149        sxthne r3, r93150        sxth r1, r6, ror #03151        sxth r3, r8, ror #83152        sxthle r2, r2, ror #163153        sxth r9, r3, ror #243154 3155@ CHECK: sxthne	r3, r9                  @ encoding: [0x79,0x30,0xbf,0x16]3156@ CHECK: sxth	r1, r6                  @ encoding: [0x76,0x10,0xbf,0xe6]3157@ CHECK: sxth	r3, r8, ror #8          @ encoding: [0x78,0x34,0xbf,0xe6]3158@ CHECK: sxthle	r2, r2, ror #16         @ encoding: [0x72,0x28,0xbf,0xd6]3159@ CHECK: sxth	r9, r3, ror #24         @ encoding: [0x73,0x9c,0xbf,0xe6]3160 3161 3162@------------------------------------------------------------------------------3163@ TEQ3164@------------------------------------------------------------------------------3165        teq r5, #0xf0003166        teq r5, $0xf0003167        teq r5, 0xf0003168        teq r7, #(0xff << 16)3169        teq r7, #-21474836383170        teq r7, #42, #23171        teq r7, #40, #23172        teq r7, $40, $23173        teq r7, 40, 23174        teq r7, (20 * 2), (1 << 1)3175        teq r4, r53176        teq r4, r5, lsl #53177        teq r4, r5, lsr #53178        teq r4, r5, lsr #53179        teq r4, r5, asr #53180        teq r4, r5, ror #53181        teq r6, r7, lsl r93182        teq r6, r7, lsr r93183        teq r6, r7, asr r93184        teq r6, r7, ror r93185 3186@ CHECK: teq	r5, #61440              @ encoding: [0x0f,0x0a,0x35,0xe3]3187@ CHECK: teq	r5, #61440              @ encoding: [0x0f,0x0a,0x35,0xe3]3188@ CHECK: teq	r5, #61440              @ encoding: [0x0f,0x0a,0x35,0xe3]3189@ CHECK: teq	r7, #16711680           @ encoding: [0xff,0x08,0x37,0xe3]3190@ CHECK: teq    r7, #-2147483638        @ encoding: [0x2a,0x01,0x37,0xe3]3191@ CHECK: teq    r7, #-2147483638        @ encoding: [0x2a,0x01,0x37,0xe3]3192@ CHECK: teq    r7, #40, #2             @ encoding: [0x28,0x01,0x37,0xe3]3193@ CHECK: teq    r7, #40, #2             @ encoding: [0x28,0x01,0x37,0xe3]3194@ CHECK: teq    r7, #40, #2             @ encoding: [0x28,0x01,0x37,0xe3]3195@ CHECK: teq    r7, #40, #2             @ encoding: [0x28,0x01,0x37,0xe3]3196@ CHECK: teq	r4, r5                  @ encoding: [0x05,0x00,0x34,0xe1]3197@ CHECK: teq	r4, r5, lsl #5          @ encoding: [0x85,0x02,0x34,0xe1]3198@ CHECK: teq	r4, r5, lsr #5          @ encoding: [0xa5,0x02,0x34,0xe1]3199@ CHECK: teq	r4, r5, lsr #5          @ encoding: [0xa5,0x02,0x34,0xe1]3200@ CHECK: teq	r4, r5, asr #5          @ encoding: [0xc5,0x02,0x34,0xe1]3201@ CHECK: teq	r4, r5, ror #5          @ encoding: [0xe5,0x02,0x34,0xe1]3202@ CHECK: teq	r6, r7, lsl r9          @ encoding: [0x17,0x09,0x36,0xe1]3203@ CHECK: teq	r6, r7, lsr r9          @ encoding: [0x37,0x09,0x36,0xe1]3204@ CHECK: teq	r6, r7, asr r9          @ encoding: [0x57,0x09,0x36,0xe1]3205@ CHECK: teq	r6, r7, ror r9          @ encoding: [0x77,0x09,0x36,0xe1]3206 3207 3208@------------------------------------------------------------------------------3209@ TST3210@------------------------------------------------------------------------------3211        tst r5, #0xf0003212        tst r5, $0xf0003213        tst r5, 0xf0003214        tst r7, #(0xff << 16)3215        tst r7, #-21474836383216        tst r7, #42, #23217        tst r7, #40, #23218        tst r7, $40, $23219        tst r7, 40, 23220        tst r7, (20 * 2), (1 << 1)3221        tst r4, r53222        tst r4, r5, lsl #53223        tst r4, r5, lsr #53224        tst r4, r5, lsr #53225        tst r4, r5, asr #53226        tst r4, r5, ror #53227        tst r6, r7, lsl r93228        tst r6, r7, lsr r93229        tst r6, r7, asr r93230        tst r6, r7, ror r93231 3232@ CHECK: tst	r5, #61440              @ encoding: [0x0f,0x0a,0x15,0xe3]3233@ CHECK: tst	r5, #61440              @ encoding: [0x0f,0x0a,0x15,0xe3]3234@ CHECK: tst	r5, #61440              @ encoding: [0x0f,0x0a,0x15,0xe3]3235@ CHECK: tst    r7, #16711680           @ encoding: [0xff,0x08,0x17,0xe3]3236@ CHECK: tst    r7, #-2147483638        @ encoding: [0x2a,0x01,0x17,0xe3]3237@ CHECK: tst    r7, #-2147483638        @ encoding: [0x2a,0x01,0x17,0xe3]3238@ CHECK: tst    r7, #40, #2             @ encoding: [0x28,0x01,0x17,0xe3]3239@ CHECK: tst    r7, #40, #2             @ encoding: [0x28,0x01,0x17,0xe3]3240@ CHECK: tst    r7, #40, #2             @ encoding: [0x28,0x01,0x17,0xe3]3241@ CHECK: tst    r7, #40, #2             @ encoding: [0x28,0x01,0x17,0xe3]3242@ CHECK: tst	r4, r5                  @ encoding: [0x05,0x00,0x14,0xe1]3243@ CHECK: tst	r4, r5, lsl #5          @ encoding: [0x85,0x02,0x14,0xe1]3244@ CHECK: tst	r4, r5, lsr #5          @ encoding: [0xa5,0x02,0x14,0xe1]3245@ CHECK: tst	r4, r5, lsr #5          @ encoding: [0xa5,0x02,0x14,0xe1]3246@ CHECK: tst	r4, r5, asr #5          @ encoding: [0xc5,0x02,0x14,0xe1]3247@ CHECK: tst	r4, r5, ror #5          @ encoding: [0xe5,0x02,0x14,0xe1]3248@ CHECK: tst	r6, r7, lsl r9          @ encoding: [0x17,0x09,0x16,0xe1]3249@ CHECK: tst	r6, r7, lsr r9          @ encoding: [0x37,0x09,0x16,0xe1]3250@ CHECK: tst	r6, r7, asr r9          @ encoding: [0x57,0x09,0x16,0xe1]3251@ CHECK: tst	r6, r7, ror r9          @ encoding: [0x77,0x09,0x16,0xe1]3252 3253 3254@------------------------------------------------------------------------------3255@ UADD16/UADD83256@------------------------------------------------------------------------------3257        uadd16 r1, r2, r33258        uadd16gt r1, r2, r33259        uadd8 r1, r2, r33260        uadd8le r1, r2, r33261 3262@ CHECK: uadd16	r1, r2, r3              @ encoding: [0x13,0x1f,0x52,0xe6]3263@ CHECK: uadd16gt	r1, r2, r3      @ encoding: [0x13,0x1f,0x52,0xc6]3264@ CHECK: uadd8	r1, r2, r3              @ encoding: [0x93,0x1f,0x52,0xe6]3265@ CHECK: uadd8le r1, r2, r3             @ encoding: [0x93,0x1f,0x52,0xd6]3266 3267 3268@------------------------------------------------------------------------------3269@ UASX3270@------------------------------------------------------------------------------3271        uasx r9, r12, r03272        uasxeq r9, r12, r03273 3274@ CHECK: uasx	r9, r12, r0             @ encoding: [0x30,0x9f,0x5c,0xe6]3275@ CHECK: uasxeq	r9, r12, r0             @ encoding: [0x30,0x9f,0x5c,0x06]3276 3277 3278@------------------------------------------------------------------------------3279@ UBFX3280@------------------------------------------------------------------------------3281        ubfx r4, r5, #16, #13282        ubfxgt r4, r5, #16, #163283 3284@ CHECK: ubfx	r4, r5, #16, #1         @ encoding: [0x55,0x48,0xe0,0xe7]3285@ CHECK: ubfxgt	r4, r5, #16, #16        @ encoding: [0x55,0x48,0xef,0xc7]3286 3287 3288@------------------------------------------------------------------------------3289@ UHADD16/UHADD83290@------------------------------------------------------------------------------3291        uhadd16 r4, r8, r23292        uhadd16gt r4, r8, r23293        uhadd8 r4, r8, r23294        uhadd8gt r4, r8, r23295 3296@ CHECK: uhadd16	r4, r8, r2      @ encoding: [0x12,0x4f,0x78,0xe6]3297@ CHECK: uhadd16gt	r4, r8, r2      @ encoding: [0x12,0x4f,0x78,0xc6]3298@ CHECK: uhadd8	r4, r8, r2              @ encoding: [0x92,0x4f,0x78,0xe6]3299@ CHECK: uhadd8gt	r4, r8, r2      @ encoding: [0x92,0x4f,0x78,0xc6]3300 3301 3302@------------------------------------------------------------------------------3303@ UHASX3304@------------------------------------------------------------------------------3305        uhasx r4, r8, r23306        uhasxgt r4, r8, r23307 3308@ CHECK: uhasx	r4, r8, r2              @ encoding: [0x32,0x4f,0x78,0xe6]3309@ CHECK: uhasxgt r4, r8, r2             @ encoding: [0x32,0x4f,0x78,0xc6]3310 3311 3312@------------------------------------------------------------------------------3313@ UHSUB16/UHSUB83314@------------------------------------------------------------------------------3315        uhsub16 r4, r8, r23316        uhsub16gt r4, r8, r23317        uhsub8 r4, r8, r23318        uhsub8gt r4, r8, r23319 3320@ CHECK: uhsub16	r4, r8, r2      @ encoding: [0x72,0x4f,0x78,0xe6]3321@ CHECK: uhsub16gt	r4, r8, r2      @ encoding: [0x72,0x4f,0x78,0xc6]3322@ CHECK: uhsub8	r4, r8, r2              @ encoding: [0xf2,0x4f,0x78,0xe6]3323@ CHECK: uhsub8gt	r4, r8, r2      @ encoding: [0xf2,0x4f,0x78,0xc6]3324 3325 3326@------------------------------------------------------------------------------3327@ UMAAL3328@------------------------------------------------------------------------------3329        umaal r3, r4, r5, r63330        umaallt r3, r4, r5, r63331 3332@ CHECK: umaal	r3, r4, r5, r6          @ encoding: [0x95,0x36,0x44,0xe0]3333@ CHECK: umaallt	r3, r4, r5, r6  @ encoding: [0x95,0x36,0x44,0xb0]3334 3335 3336@------------------------------------------------------------------------------3337@ UMLAL3338@------------------------------------------------------------------------------3339        umlal r2, r4, r6, r83340        umlalgt r6, r1, r2, r63341        umlals r2, r9, r2, r33342        umlalseq r3, r5, r1, r23343 3344@ CHECK: umlal	r2, r4, r6, r8          @ encoding: [0x96,0x28,0xa4,0xe0]3345@ CHECK: umlalgt	r6, r1, r2, r6  @ encoding: [0x92,0x66,0xa1,0xc0]3346@ CHECK: umlals	r2, r9, r2, r3          @ encoding: [0x92,0x23,0xb9,0xe0]3347@ CHECK: umlalseq	r3, r5, r1, r2  @ encoding: [0x91,0x32,0xb5,0x00]3348 3349 3350@------------------------------------------------------------------------------3351@ UMULL3352@------------------------------------------------------------------------------3353        umull r2, r4, r6, r83354        umullgt r6, r1, r2, r63355        umulls r2, r9, r2, r33356        umullseq r3, r5, r1, r23357 3358@ CHECK: umull	r2, r4, r6, r8          @ encoding: [0x96,0x28,0x84,0xe0]3359@ CHECK: umullgt	r6, r1, r2, r6  @ encoding: [0x92,0x66,0x81,0xc0]3360@ CHECK: umulls	r2, r9, r2, r3          @ encoding: [0x92,0x23,0x99,0xe0]3361@ CHECK: umullseq	r3, r5, r1, r2  @ encoding: [0x91,0x32,0x95,0x00]3362 3363 3364@------------------------------------------------------------------------------3365@ UQADD16/UQADD83366@------------------------------------------------------------------------------3367        uqadd16 r1, r2, r33368        uqadd16gt r4, r7, r93369        uqadd8 r3, r4, r83370        uqadd8le r8, r1, r23371 3372 3373@ CHECK: uqadd16	r1, r2, r3      @ encoding: [0x13,0x1f,0x62,0xe6]3374@ CHECK: uqadd16gt	r4, r7, r9      @ encoding: [0x19,0x4f,0x67,0xc6]3375@ CHECK: uqadd8	r3, r4, r8              @ encoding: [0x98,0x3f,0x64,0xe6]3376@ CHECK: uqadd8le	r8, r1, r2      @ encoding: [0x92,0x8f,0x61,0xd6]3377 3378 3379@------------------------------------------------------------------------------3380@ UQASX3381@------------------------------------------------------------------------------3382        uqasx r2, r4, r13383        uqasxhi r5, r2, r93384 3385@ CHECK: uqasx	r2, r4, r1              @ encoding: [0x31,0x2f,0x64,0xe6]3386@ CHECK: uqasxhi	r5, r2, r9      @ encoding: [0x39,0x5f,0x62,0x86]3387 3388 3389@------------------------------------------------------------------------------3390@ UQSAX3391@------------------------------------------------------------------------------3392        uqsax r1, r3, r73393        uqsaxal r3, r6, r23394 3395@ CHECK: uqsax	r1, r3, r7              @ encoding: [0x57,0x1f,0x63,0xe6]3396@ CHECK: uqsax	r3, r6, r2              @ encoding: [0x52,0x3f,0x66,0xe6]3397 3398 3399@------------------------------------------------------------------------------3400@ UQSUB16/UQSUB83401@------------------------------------------------------------------------------3402        uqsub16 r1, r5, r33403        uqsub16gt r3, r2, r53404        uqsub8 r2, r1, r43405        uqsub8le r4, r6, r93406 3407@ CHECK: uqsub16	r1, r5, r3      @ encoding: [0x73,0x1f,0x65,0xe6]3408@ CHECK: uqsub16gt	r3, r2, r5      @ encoding: [0x75,0x3f,0x62,0xc6]3409@ CHECK: uqsub8	r2, r1, r4              @ encoding: [0xf4,0x2f,0x61,0xe6]3410@ CHECK: uqsub8le	r4, r6, r9      @ encoding: [0xf9,0x4f,0x66,0xd6]3411 3412 3413@------------------------------------------------------------------------------3414@ USADA8/USAD83415@------------------------------------------------------------------------------3416        usad8 r2, r1, r43417        usad8le r4, r6, r93418        usada8 r1, r5, r3, r73419        usada8gt r3, r2, r5, r13420 3421@ CHECK: usad8	r2, r1, r4              @ encoding: [0x11,0xf4,0x82,0xe7]3422@ CHECK: usad8le	r4, r6, r9      @ encoding: [0x16,0xf9,0x84,0xd7]3423@ CHECK: usada8	r1, r5, r3, r7          @ encoding: [0x15,0x73,0x81,0xe7]3424@ CHECK: usada8gt	r3, r2, r5, r1  @ encoding: [0x12,0x15,0x83,0xc7]3425 3426 3427@------------------------------------------------------------------------------3428@ USAT3429@------------------------------------------------------------------------------3430        usat	r8, #1, r103431        usat	r8, #4, r10, lsl #03432        usat	r8, #5, r10, lsl #313433        usat	r8, #31, r10, asr #323434        usat	r8, #16, r10, asr #13435 3436@ CHECK: usat	r8, #1, r10             @ encoding: [0x1a,0x80,0xe1,0xe6]3437@ CHECK: usat	r8, #4, r10             @ encoding: [0x1a,0x80,0xe4,0xe6]3438@ CHECK: usat	r8, #5, r10, lsl #31    @ encoding: [0x9a,0x8f,0xe5,0xe6]3439@ CHECK: usat	r8, #31, r10, asr #32   @ encoding: [0x5a,0x80,0xff,0xe6]3440@ CHECK: usat	r8, #16, r10, asr #1    @ encoding: [0xda,0x80,0xf0,0xe6]3441 3442 3443@------------------------------------------------------------------------------3444@ USAT163445@------------------------------------------------------------------------------3446        usat16	r2, #2, r73447        usat16	r3, #15, r53448 3449@ CHECK: usat16	r2, #2, r7              @ encoding: [0x37,0x2f,0xe2,0xe6]3450@ CHECK: usat16	r3, #15, r5             @ encoding: [0x35,0x3f,0xef,0xe6]3451 3452 3453@------------------------------------------------------------------------------3454@ USAX3455@------------------------------------------------------------------------------3456        usax r2, r3, r43457        usaxne r2, r3, r43458 3459@ CHECK: usax	r2, r3, r4              @ encoding: [0x54,0x2f,0x53,0xe6]3460@ CHECK: usaxne	r2, r3, r4              @ encoding: [0x54,0x2f,0x53,0x16]3461 3462@------------------------------------------------------------------------------3463@ USUB16/USUB83464@------------------------------------------------------------------------------3465        usub16 r4, r2, r73466        usub16hi r1, r1, r33467        usub8 r1, r8, r53468        usub8le r9, r2, r33469 3470@ CHECK: usub16	r4, r2, r7              @ encoding: [0x77,0x4f,0x52,0xe6]3471@ CHECK: usub16hi	r1, r1, r3      @ encoding: [0x73,0x1f,0x51,0x86]3472@ CHECK: usub8	r1, r8, r5              @ encoding: [0xf5,0x1f,0x58,0xe6]3473@ CHECK: usub8le	r9, r2, r3      @ encoding: [0xf3,0x9f,0x52,0xd6]3474 3475 3476@------------------------------------------------------------------------------3477@ UXTAB3478@------------------------------------------------------------------------------3479        uxtab r2, r3, r43480        uxtab r4, r5, r6, ror #03481        uxtablt r6, r2, r9, ror #83482        uxtab r5, r1, r4, ror #163483        uxtab r7, r8, r3, ror #243484 3485@ CHECK: uxtab	r2, r3, r4              @ encoding: [0x74,0x20,0xe3,0xe6]3486@ CHECK: uxtab	r4, r5, r6              @ encoding: [0x76,0x40,0xe5,0xe6]3487@ CHECK: uxtablt r6, r2, r9, ror #8     @ encoding: [0x79,0x64,0xe2,0xb6]3488@ CHECK: uxtab	r5, r1, r4, ror #16     @ encoding: [0x74,0x58,0xe1,0xe6]3489@ CHECK: uxtab	r7, r8, r3, ror #24     @ encoding: [0x73,0x7c,0xe8,0xe6]3490 3491 3492@------------------------------------------------------------------------------3493@ UXTAB163494@------------------------------------------------------------------------------3495        uxtab16ge r0, r1, r43496        uxtab16 r6, r2, r7, ror #03497        uxtab16 r3, r5, r8, ror #83498        uxtab16 r3, r2, r1, ror #163499        uxtab16eq r1, r2, r3, ror #243500 3501@ CHECK: uxtab16ge	r0, r1, r4      @ encoding: [0x74,0x00,0xc1,0xa6]3502@ CHECK: uxtab16	r6, r2, r7      @ encoding: [0x77,0x60,0xc2,0xe6]3503@ CHECK: uxtab16	r3, r5, r8, ror #8 @ encoding: [0x78,0x34,0xc5,0xe6]3504@ CHECK: uxtab16	r3, r2, r1, ror #16 @ encoding: [0x71,0x38,0xc2,0xe6]3505@ CHECK: uxtab16eq	r1, r2, r3, ror #24 @ encoding: [0x73,0x1c,0xc2,0x06]3506 3507 3508@------------------------------------------------------------------------------3509@ UXTAH3510@------------------------------------------------------------------------------3511        uxtah r1, r3, r93512        uxtahhi r6, r1, r6, ror #03513        uxtah r3, r8, r3, ror #83514        uxtahlo r2, r2, r4, ror #163515        uxtah r9, r3, r3, ror #243516 3517@ CHECK: uxtah	r1, r3, r9              @ encoding: [0x79,0x10,0xf3,0xe6]3518@ CHECK: uxtahhi	r6, r1, r6      @ encoding: [0x76,0x60,0xf1,0x86]3519@ CHECK: uxtah	r3, r8, r3, ror #8      @ encoding: [0x73,0x34,0xf8,0xe6]3520@ CHECK: uxtahlo	r2, r2, r4, ror #16 @ encoding: [0x74,0x28,0xf2,0x36]3521@ CHECK: uxtah	r9, r3, r3, ror #24     @ encoding: [0x73,0x9c,0xf3,0xe6]3522 3523@------------------------------------------------------------------------------3524@ UXTB3525@------------------------------------------------------------------------------3526        uxtbge r2, r43527        uxtb r5, r6, ror #03528        uxtb r6, r9, ror #83529        uxtbcc r5, r1, ror #163530        uxtb r8, r3, ror #243531 3532@ CHECK: uxtbge	r2, r4                  @ encoding: [0x74,0x20,0xef,0xa6]3533@ CHECK: uxtb	r5, r6                  @ encoding: [0x76,0x50,0xef,0xe6]3534@ CHECK: uxtb	r6, r9, ror #8          @ encoding: [0x79,0x64,0xef,0xe6]3535@ CHECK: uxtblo	r5, r1, ror #16         @ encoding: [0x71,0x58,0xef,0x36]3536@ CHECK: uxtb	r8, r3, ror #24         @ encoding: [0x73,0x8c,0xef,0xe6]3537 3538 3539@------------------------------------------------------------------------------3540@ UXTB163541@------------------------------------------------------------------------------3542        uxtb16 r1, r43543        uxtb16 r6, r7, ror #03544        uxtb16cs r3, r5, ror #83545        uxtb16 r3, r1, ror #163546        uxtb16ge r2, r3, ror #243547 3548@ CHECK: uxtb16	r1, r4                  @ encoding: [0x74,0x10,0xcf,0xe6]3549@ CHECK: uxtb16	r6, r7                  @ encoding: [0x77,0x60,0xcf,0xe6]3550@ CHECK: uxtb16hs	r3, r5, ror #8  @ encoding: [0x75,0x34,0xcf,0x26]3551@ CHECK: uxtb16	r3, r1, ror #16         @ encoding: [0x71,0x38,0xcf,0xe6]3552@ CHECK: uxtb16ge	r2, r3, ror #24 @ encoding: [0x73,0x2c,0xcf,0xa6]3553 3554 3555@------------------------------------------------------------------------------3556@ UXTH3557@------------------------------------------------------------------------------3558        uxthne r3, r93559        uxth r1, r6, ror #03560        uxth r3, r8, ror #83561        uxthle r2, r2, ror #163562        uxth r9, r3, ror #243563 3564@ CHECK: uxthne	r3, r9                  @ encoding: [0x79,0x30,0xff,0x16]3565@ CHECK: uxth	r1, r6                  @ encoding: [0x76,0x10,0xff,0xe6]3566@ CHECK: uxth	r3, r8, ror #8          @ encoding: [0x78,0x34,0xff,0xe6]3567@ CHECK: uxthle	r2, r2, ror #16         @ encoding: [0x72,0x28,0xff,0xd6]3568@ CHECK: uxth	r9, r3, ror #24         @ encoding: [0x73,0x9c,0xff,0xe6]3569 3570 3571@------------------------------------------------------------------------------3572@ WFE/WFI/YIELD3573@------------------------------------------------------------------------------3574        wfe3575        wfehi3576        wfi3577        wfilt3578        yield3579        yieldne3580        hint #43581        hint #33582        hint #23583        hint #13584        hint #03585        hintgt #2393586 3587@ CHECK: wfe                            @ encoding: [0x02,0xf0,0x20,0xe3]3588@ CHECK: wfehi                          @ encoding: [0x02,0xf0,0x20,0x83]3589@ CHECK: wfi                            @ encoding: [0x03,0xf0,0x20,0xe3]3590@ CHECK: wfilt                          @ encoding: [0x03,0xf0,0x20,0xb3]3591@ CHECK: yield                          @ encoding: [0x01,0xf0,0x20,0xe3]3592@ CHECK: yieldne                        @ encoding: [0x01,0xf0,0x20,0x13]3593@ CHECK: sev                            @ encoding: [0x04,0xf0,0x20,0xe3]3594@ CHECK: wfi                            @ encoding: [0x03,0xf0,0x20,0xe3]3595@ CHECK: wfe                            @ encoding: [0x02,0xf0,0x20,0xe3]3596@ CHECK: yield                          @ encoding: [0x01,0xf0,0x20,0xe3]3597@ CHECK: nop                            @ encoding: [0x00,0xf0,0x20,0xe3]3598@ CHECK: hintgt #239                    @ encoding: [0xef,0xf0,0x20,0xc3]3599