1cac31de146e7131f411715dc6cb1958ea59bd754Evan Cheng@ RUN: llvm-mc -triple=armv7-apple-darwin -mcpu=cortex-a8 -show-encoding < %s | FileCheck %s
236b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ RUN: llvm-mc -triple=armebv7-unknown-unknown -mcpu=cortex-a8 -show-encoding < %s | FileCheck --check-prefix=CHECK-BE %s
33f00e317064560ad11168d22030416d853829f6eJim Grosbach  .syntax unified
43f00e317064560ad11168d22030416d853829f6eJim Grosbach  .globl _func
5e8606dc7c878d4562da5e3e5609b9d7d734d498cJim Grosbach
6e8606dc7c878d4562da5e3e5609b9d7d734d498cJim Grosbach@ Check that the assembler can handle the documented syntax from the ARM ARM.
7e8606dc7c878d4562da5e3e5609b9d7d734d498cJim Grosbach@ For complex constructs like shifter operands, check more thoroughly for them
8e8606dc7c878d4562da5e3e5609b9d7d734d498cJim Grosbach@ once then spot check that following instructions accept the form generally.
9e8606dc7c878d4562da5e3e5609b9d7d734d498cJim Grosbach@ This gives us good coverage while keeping the overall size of the test
10e8606dc7c878d4562da5e3e5609b9d7d734d498cJim Grosbach@ more reasonable.
11e8606dc7c878d4562da5e3e5609b9d7d734d498cJim Grosbach
123f00e317064560ad11168d22030416d853829f6eJim Grosbach_func:
133f00e317064560ad11168d22030416d853829f6eJim Grosbach@ CHECK: _func
143f00e317064560ad11168d22030416d853829f6eJim Grosbach
15da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach@------------------------------------------------------------------------------
163f00e317064560ad11168d22030416d853829f6eJim Grosbach@ ADC (immediate)
17da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach@------------------------------------------------------------------------------
181e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r1, r2, #0xf
19ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        adc r1, r2, $0xf
20ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        adc r1, r2, 0xf
21ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        adc r7, r8, #(0xff << 16)
22ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        adc r7, r8, #-2147483638
23ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        adc r7, r8, #42, #2
24ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        adc r7, r8, #40, #2
25ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        adc r7, r8, $40, $2
26ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        adc r7, r8, 40, 2
27ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        adc r7, r8, (2 * 20), (1 << 1)
281e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r1, r2, #0xf0
291e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r1, r2, #0xf00
301e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r1, r2, #0xf000
311e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r1, r2, #0xf0000
321e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r1, r2, #0xf00000
331e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r1, r2, #0xf000000
341e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r1, r2, #0xf0000000
351e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r1, r2, #0xf000000f
361e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adcs r1, r2, #0xf00
37ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        adcs r7, r8, #40, #2
381e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adcseq r1, r2, #0xf00
391e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adceq r1, r2, #0xf00
403f00e317064560ad11168d22030416d853829f6eJim Grosbach
413f00e317064560ad11168d22030416d853829f6eJim Grosbach@ CHECK: adc	r1, r2, #15             @ encoding: [0x0f,0x10,0xa2,0xe2]
42ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: adc	r1, r2, #15             @ encoding: [0x0f,0x10,0xa2,0xe2]
43ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: adc	r1, r2, #15             @ encoding: [0x0f,0x10,0xa2,0xe2]
44ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: adc	r7, r8, #16711680       @ encoding: [0xff,0x78,0xa8,0xe2]
45ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: adc    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0xa8,0xe2]
46ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: adc    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0xa8,0xe2]
47ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: adc    r7, r8, #40, #2         @ encoding: [0x28,0x71,0xa8,0xe2]
48ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: adc    r7, r8, #40, #2         @ encoding: [0x28,0x71,0xa8,0xe2]
49ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: adc    r7, r8, #40, #2         @ encoding: [0x28,0x71,0xa8,0xe2]
50ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: adc	r7, r8, #40, #2         @ encoding: [0x28,0x71,0xa8,0xe2]
513f00e317064560ad11168d22030416d853829f6eJim Grosbach@ CHECK: adc	r1, r2, #240            @ encoding: [0xf0,0x10,0xa2,0xe2]
523f00e317064560ad11168d22030416d853829f6eJim Grosbach@ CHECK: adc	r1, r2, #3840           @ encoding: [0x0f,0x1c,0xa2,0xe2]
533f00e317064560ad11168d22030416d853829f6eJim Grosbach@ CHECK: adc	r1, r2, #61440          @ encoding: [0x0f,0x1a,0xa2,0xe2]
543f00e317064560ad11168d22030416d853829f6eJim Grosbach@ CHECK: adc	r1, r2, #983040         @ encoding: [0x0f,0x18,0xa2,0xe2]
553f00e317064560ad11168d22030416d853829f6eJim Grosbach@ CHECK: adc	r1, r2, #15728640       @ encoding: [0x0f,0x16,0xa2,0xe2]
563f00e317064560ad11168d22030416d853829f6eJim Grosbach@ CHECK: adc	r1, r2, #251658240      @ encoding: [0x0f,0x14,0xa2,0xe2]
57ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: adc	r1, r2, #-268435456     @ encoding: [0x0f,0x12,0xa2,0xe2]
58ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: adc	r1, r2, #-268435441     @ encoding: [0xff,0x12,0xa2,0xe2]
593f00e317064560ad11168d22030416d853829f6eJim Grosbach@ CHECK: adcs	r1, r2, #3840           @ encoding: [0x0f,0x1c,0xb2,0xe2]
60ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: adcs   r7, r8, #40, #2         @ encoding: [0x28,0x71,0xb8,0xe2]
613f00e317064560ad11168d22030416d853829f6eJim Grosbach@ CHECK: adcseq	r1, r2, #3840           @ encoding: [0x0f,0x1c,0xb2,0x02]
62dc89561fecf100d6c32d73c7b009fd73e51be688Jim Grosbach@ CHECK: adceq	r1, r2, #3840           @ encoding: [0x0f,0x1c,0xa2,0x02]
63e8606dc7c878d4562da5e3e5609b9d7d734d498cJim Grosbach
64da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach@------------------------------------------------------------------------------
65e8606dc7c878d4562da5e3e5609b9d7d734d498cJim Grosbach@ ADC (register)
66da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach@ ADC (shifted register)
67da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach@------------------------------------------------------------------------------
681e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r4, r5, r6
691e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        @ Constant shifts
701e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r4, r5, r6, lsl #1
711e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r4, r5, r6, lsl #31
721e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r4, r5, r6, lsr #1
731e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r4, r5, r6, lsr #31
741e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r4, r5, r6, lsr #32
751e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r4, r5, r6, asr #1
761e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r4, r5, r6, asr #31
771e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r4, r5, r6, asr #32
781e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r4, r5, r6, ror #1
791e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r4, r5, r6, ror #31
801e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach
811e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        @ Register shifts
821e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r6, r7, r8, lsl r9
831e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r6, r7, r8, lsr r9
841e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r6, r7, r8, asr r9
851e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r6, r7, r8, ror r9
861e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r4, r5, r6, rrx
871e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach
881e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        @ Destination register is optional
891e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r5, r6
901e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r4, r5, lsl #1
911e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r4, r5, lsl #31
921e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r4, r5, lsr #1
931e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r4, r5, lsr #31
941e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r4, r5, lsr #32
951e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r4, r5, asr #1
961e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r4, r5, asr #31
971e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r4, r5, asr #32
981e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r4, r5, ror #1
991e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r4, r5, ror #31
1001e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r4, r5, rrx
1011e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r6, r7, lsl r9
1021e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r6, r7, lsr r9
1031e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r6, r7, asr r9
1041e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r6, r7, ror r9
1051e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adc r4, r5, rrx
10637ee464ea98544d3ed84cec6dde5f769ce003d5fJim Grosbach
107e8606dc7c878d4562da5e3e5609b9d7d734d498cJim Grosbach@ CHECK: adc	r4, r5, r6              @ encoding: [0x06,0x40,0xa5,0xe0]
108e8606dc7c878d4562da5e3e5609b9d7d734d498cJim Grosbach
109e8606dc7c878d4562da5e3e5609b9d7d734d498cJim Grosbach@ CHECK: adc	r4, r5, r6, lsl #1      @ encoding: [0x86,0x40,0xa5,0xe0]
110e8606dc7c878d4562da5e3e5609b9d7d734d498cJim Grosbach@ CHECK: adc	r4, r5, r6, lsl #31     @ encoding: [0x86,0x4f,0xa5,0xe0]
111e8606dc7c878d4562da5e3e5609b9d7d734d498cJim Grosbach@ CHECK: adc	r4, r5, r6, lsr #1      @ encoding: [0xa6,0x40,0xa5,0xe0]
112e8606dc7c878d4562da5e3e5609b9d7d734d498cJim Grosbach@ CHECK: adc	r4, r5, r6, lsr #31     @ encoding: [0xa6,0x4f,0xa5,0xe0]
113e8606dc7c878d4562da5e3e5609b9d7d734d498cJim Grosbach@ CHECK: adc	r4, r5, r6, lsr #32     @ encoding: [0x26,0x40,0xa5,0xe0]
114e8606dc7c878d4562da5e3e5609b9d7d734d498cJim Grosbach@ CHECK: adc	r4, r5, r6, asr #1      @ encoding: [0xc6,0x40,0xa5,0xe0]
115e8606dc7c878d4562da5e3e5609b9d7d734d498cJim Grosbach@ CHECK: adc	r4, r5, r6, asr #31     @ encoding: [0xc6,0x4f,0xa5,0xe0]
116e8606dc7c878d4562da5e3e5609b9d7d734d498cJim Grosbach@ CHECK: adc	r4, r5, r6, asr #32     @ encoding: [0x46,0x40,0xa5,0xe0]
117e8606dc7c878d4562da5e3e5609b9d7d734d498cJim Grosbach@ CHECK: adc	r4, r5, r6, ror #1      @ encoding: [0xe6,0x40,0xa5,0xe0]
118e8606dc7c878d4562da5e3e5609b9d7d734d498cJim Grosbach@ CHECK: adc	r4, r5, r6, ror #31     @ encoding: [0xe6,0x4f,0xa5,0xe0]
119e8606dc7c878d4562da5e3e5609b9d7d734d498cJim Grosbach
120e8606dc7c878d4562da5e3e5609b9d7d734d498cJim Grosbach@ CHECK: adc	r6, r7, r8, lsl r9      @ encoding: [0x18,0x69,0xa7,0xe0]
121e8606dc7c878d4562da5e3e5609b9d7d734d498cJim Grosbach@ CHECK: adc	r6, r7, r8, lsr r9      @ encoding: [0x38,0x69,0xa7,0xe0]
122e8606dc7c878d4562da5e3e5609b9d7d734d498cJim Grosbach@ CHECK: adc	r6, r7, r8, asr r9      @ encoding: [0x58,0x69,0xa7,0xe0]
123e8606dc7c878d4562da5e3e5609b9d7d734d498cJim Grosbach@ CHECK: adc	r6, r7, r8, ror r9      @ encoding: [0x78,0x69,0xa7,0xe0]
124e8606dc7c878d4562da5e3e5609b9d7d734d498cJim Grosbach@ CHECK: adc	r4, r5, r6, rrx         @ encoding: [0x66,0x40,0xa5,0xe0]
125e8606dc7c878d4562da5e3e5609b9d7d734d498cJim Grosbach
12637ee464ea98544d3ed84cec6dde5f769ce003d5fJim Grosbach@ CHECK: adc	r5, r5, r6              @ encoding: [0x06,0x50,0xa5,0xe0]
12737ee464ea98544d3ed84cec6dde5f769ce003d5fJim Grosbach@ CHECK: adc	r4, r4, r5, lsl #1      @ encoding: [0x85,0x40,0xa4,0xe0]
12837ee464ea98544d3ed84cec6dde5f769ce003d5fJim Grosbach@ CHECK: adc	r4, r4, r5, lsl #31     @ encoding: [0x85,0x4f,0xa4,0xe0]
12937ee464ea98544d3ed84cec6dde5f769ce003d5fJim Grosbach@ CHECK: adc	r4, r4, r5, lsr #1      @ encoding: [0xa5,0x40,0xa4,0xe0]
13037ee464ea98544d3ed84cec6dde5f769ce003d5fJim Grosbach@ CHECK: adc	r4, r4, r5, lsr #31     @ encoding: [0xa5,0x4f,0xa4,0xe0]
13137ee464ea98544d3ed84cec6dde5f769ce003d5fJim Grosbach@ CHECK: adc	r4, r4, r5, lsr #32     @ encoding: [0x25,0x40,0xa4,0xe0]
13237ee464ea98544d3ed84cec6dde5f769ce003d5fJim Grosbach@ CHECK: adc	r4, r4, r5, asr #1      @ encoding: [0xc5,0x40,0xa4,0xe0]
13337ee464ea98544d3ed84cec6dde5f769ce003d5fJim Grosbach@ CHECK: adc	r4, r4, r5, asr #31     @ encoding: [0xc5,0x4f,0xa4,0xe0]
13437ee464ea98544d3ed84cec6dde5f769ce003d5fJim Grosbach@ CHECK: adc	r4, r4, r5, asr #32     @ encoding: [0x45,0x40,0xa4,0xe0]
13537ee464ea98544d3ed84cec6dde5f769ce003d5fJim Grosbach@ CHECK: adc	r4, r4, r5, ror #1      @ encoding: [0xe5,0x40,0xa4,0xe0]
13637ee464ea98544d3ed84cec6dde5f769ce003d5fJim Grosbach@ CHECK: adc	r4, r4, r5, ror #31     @ encoding: [0xe5,0x4f,0xa4,0xe0]
13737ee464ea98544d3ed84cec6dde5f769ce003d5fJim Grosbach@ CHECK: adc	r4, r4, r5, rrx         @ encoding: [0x65,0x40,0xa4,0xe0]
13837ee464ea98544d3ed84cec6dde5f769ce003d5fJim Grosbach@ CHECK: adc	r6, r6, r7, lsl r9      @ encoding: [0x17,0x69,0xa6,0xe0]
13937ee464ea98544d3ed84cec6dde5f769ce003d5fJim Grosbach@ CHECK: adc	r6, r6, r7, lsr r9      @ encoding: [0x37,0x69,0xa6,0xe0]
14037ee464ea98544d3ed84cec6dde5f769ce003d5fJim Grosbach@ CHECK: adc	r6, r6, r7, asr r9      @ encoding: [0x57,0x69,0xa6,0xe0]
14137ee464ea98544d3ed84cec6dde5f769ce003d5fJim Grosbach@ CHECK: adc	r6, r6, r7, ror r9      @ encoding: [0x77,0x69,0xa6,0xe0]
14237ee464ea98544d3ed84cec6dde5f769ce003d5fJim Grosbach@ CHECK: adc	r4, r4, r5, rrx         @ encoding: [0x65,0x40,0xa4,0xe0]
143da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach
144da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach
145da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach@------------------------------------------------------------------------------
14670a0915cd135b48c557a5bc81b37e33f54fe150eJim Grosbach@ ADR
1477ed6d22e9637c52b3511ac6907830251d1124e60Jim Grosbach@------------------------------------------------------------------------------
14870a0915cd135b48c557a5bc81b37e33f54fe150eJim GrosbachLback:
1491e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adr r2, Lback
1501e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adr r3, Lforward
15170a0915cd135b48c557a5bc81b37e33f54fe150eJim GrosbachLforward:
1521e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adr	r2, #3
1531e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        adr	r2, #-3
15470a0915cd135b48c557a5bc81b37e33f54fe150eJim Grosbach
15570a0915cd135b48c557a5bc81b37e33f54fe150eJim Grosbach@ CHECK: Lback:
1562abba8496cb394af53b531e95067d5cae78bb9eeJim Grosbach@ CHECK: adr	r2, Lback    @ encoding: [A,0x20'A',0x0f'A',0xe2'A']
15770a0915cd135b48c557a5bc81b37e33f54fe150eJim Grosbach@ CHECK:  @   fixup A - offset: 0, value: Lback, kind: fixup_arm_adr_pcrel_12
15836b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-BE: adr	r2, Lback    @ encoding: [0xe2'A',0x0f'A',0x20'A',A]
15936b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-BE:  @   fixup A - offset: 0, value: Lback, kind: fixup_arm_adr_pcrel_12
1602abba8496cb394af53b531e95067d5cae78bb9eeJim Grosbach@ CHECK: adr	r3, Lforward @ encoding: [A,0x30'A',0x0f'A',0xe2'A']
16170a0915cd135b48c557a5bc81b37e33f54fe150eJim Grosbach@ CHECK:  @   fixup A - offset: 0, value: Lforward, kind: fixup_arm_adr_pcrel_12
16236b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-BE: adr	r3, Lforward @ encoding: [0xe2'A',0x0f'A',0x30'A',A]
16336b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-BE:  @   fixup A - offset: 0, value: Lforward, kind: fixup_arm_adr_pcrel_12
16470a0915cd135b48c557a5bc81b37e33f54fe150eJim Grosbach@ CHECK: Lforward:
16596425c846494c1c20a4c931f4783571295ab170cOwen Anderson@ CHECK: adr	r2, #3                  @ encoding: [0x03,0x20,0x8f,0xe2]
16696425c846494c1c20a4c931f4783571295ab170cOwen Anderson@ CHECK: adr	r2, #-3                 @ encoding: [0x03,0x20,0x4f,0xe2]
16770a0915cd135b48c557a5bc81b37e33f54fe150eJim Grosbach
1681fb27eccf5b7eabde9678d84411eb1df8a693683Jiangning Liu        adr r1, #-0x0
1691fb27eccf5b7eabde9678d84411eb1df8a693683Jiangning Liu        adr r1, #-0x12000000
170d65dfd83421f4d26e6dc20476718d7d9b6ba3f3bTim Northover        adr r1, #-0x80000001
1711fb27eccf5b7eabde9678d84411eb1df8a693683Jiangning Liu        adr r1, #0x12000000
172d65dfd83421f4d26e6dc20476718d7d9b6ba3f3bTim Northover        adr r1, #0x80000001
1731fb27eccf5b7eabde9678d84411eb1df8a693683Jiangning Liu
1741fb27eccf5b7eabde9678d84411eb1df8a693683Jiangning Liu@ CHECK: adr	r1, #-0                 @ encoding: [0x00,0x10,0x4f,0xe2]
1751fb27eccf5b7eabde9678d84411eb1df8a693683Jiangning Liu@ CHECK: adr	r1, #-301989888         @ encoding: [0x12,0x14,0x4f,0xe2]
176d65dfd83421f4d26e6dc20476718d7d9b6ba3f3bTim Northover@ CHECK: adr	r1, #2147483647         @ encoding: [0x06,0x11,0x4f,0xe2]
1771fb27eccf5b7eabde9678d84411eb1df8a693683Jiangning Liu@ CHECK: adr	r1, #301989888          @ encoding: [0x12,0x14,0x8f,0xe2]
178d65dfd83421f4d26e6dc20476718d7d9b6ba3f3bTim Northover@ CHECK: adr	r1, #-2147483647        @ encoding: [0x06,0x11,0x8f,0xe2]
1791fb27eccf5b7eabde9678d84411eb1df8a693683Jiangning Liu
1807ed6d22e9637c52b3511ac6907830251d1124e60Jim Grosbach@------------------------------------------------------------------------------
181da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach@ ADD
182da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach@------------------------------------------------------------------------------
1831e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        add r4, r5, #0xf000
184ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        add r4, r5, $0xf000
185ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        add r4, r5, 0xf000
186ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        add r4, r5, -0xf000
187ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines	add r7, r8, #(0xff << 16)
188ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        add r7, r8, #-2147483638
189ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        add r7, r8, #42, #2
190ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        add r7, r8, #40, #2
191ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        add r7, r8, $40, $2
192ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        add r7, r8, 40, 2
193ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        add r7, r8, (2 * 20), (1 << 1)
1941e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        add r4, r5, r6
1951e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        add r4, r5, r6, lsl #5
1961e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        add r4, r5, r6, lsr #5
1971e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        add r4, r5, r6, lsr #5
1981e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        add r4, r5, r6, asr #5
1991e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        add r4, r5, r6, ror #5
2001e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        add r6, r7, r8, lsl r9
201af4edea67b007592f9474e07d27182956e37f7f5Jim Grosbach        add r4, r4, r3, asl r9
2021e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        add r6, r7, r8, lsr r9
2031e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        add r6, r7, r8, asr r9
2041e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        add r6, r7, r8, ror r9
2051e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        add r4, r5, r6, rrx
2061e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach
2071e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        @ destination register is optional
2081e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        add r5, #0xf000
209ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        add r5, $0xf000
210ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        add r5, 0xf000
211ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        add r5, -0xf000
212ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines	add r7, #(0xff << 16)
213ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        add r7, #-2147483638
214ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        add r7, #42, #2
215ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        add r7, #40, #2
216ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        add r7, $40, $2
217ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        add r7, 40, 2
218ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        add r7, (2 * 20), (1 << 1)
2191e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        add r4, r5
2201e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        add r4, r5, lsl #5
2211e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        add r4, r5, lsr #5
2221e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        add r4, r5, lsr #5
2231e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        add r4, r5, asr #5
2241e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        add r4, r5, ror #5
2251e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        add r6, r7, lsl r9
2261e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        add r6, r7, lsr r9
2271e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        add r6, r7, asr r9
2281e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        add r6, r7, ror r9
2291e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        add r4, r5, rrx
230da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach
231ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        add r0, #-4
232ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        add r4, r5, #-21
233ea8ddd86b1e364a799e57fc0ac468a9c4a8f8bcfMihai Popa        add r0, pc, #0xc0000000
234ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        addseq r0,pc,#0xc0000000
235ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines
236ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines
237ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        add r0, pc, #(Lback - .)
2383bc8a3d3afe3ddda884a681002e24850099b719eJim Grosbach
239da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach@ CHECK: add	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x85,0xe2]
240ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: add	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x85,0xe2]
241ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: add	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x85,0xe2]
242ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sub	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x45,0xe2]
243ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: add	r7, r8, #16711680       @ encoding: [0xff,0x78,0x88,0xe2]
244ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: add    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0x88,0xe2]
245ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: add    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0x88,0xe2]
246ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: add    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x88,0xe2]
247ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: add    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x88,0xe2]
248ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: add    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x88,0xe2]
249ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: add    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x88,0xe2]
250da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach@ CHECK: add	r4, r5, r6              @ encoding: [0x06,0x40,0x85,0xe0]
251da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach@ CHECK: add	r4, r5, r6, lsl #5      @ encoding: [0x86,0x42,0x85,0xe0]
252da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach@ CHECK: add	r4, r5, r6, lsr #5      @ encoding: [0xa6,0x42,0x85,0xe0]
253da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach@ CHECK: add	r4, r5, r6, lsr #5      @ encoding: [0xa6,0x42,0x85,0xe0]
254da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach@ CHECK: add	r4, r5, r6, asr #5      @ encoding: [0xc6,0x42,0x85,0xe0]
255da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach@ CHECK: add	r4, r5, r6, ror #5      @ encoding: [0xe6,0x42,0x85,0xe0]
256da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach@ CHECK: add	r6, r7, r8, lsl r9      @ encoding: [0x18,0x69,0x87,0xe0]
257af4edea67b007592f9474e07d27182956e37f7f5Jim Grosbach@ CHECK: add	r4, r4, r3, lsl r9      @ encoding: [0x13,0x49,0x84,0xe0]
258da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach@ CHECK: add	r6, r7, r8, lsr r9      @ encoding: [0x38,0x69,0x87,0xe0]
259da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach@ CHECK: add	r6, r7, r8, asr r9      @ encoding: [0x58,0x69,0x87,0xe0]
260da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach@ CHECK: add	r6, r7, r8, ror r9      @ encoding: [0x78,0x69,0x87,0xe0]
261da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach@ CHECK: add	r4, r5, r6, rrx         @ encoding: [0x66,0x40,0x85,0xe0]
262da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach
263da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach@ CHECK: add	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x85,0xe2]
264ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: add	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x85,0xe2]
265ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: add	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x85,0xe2]
266ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sub	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x45,0xe2]
267ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: add	r7, r7, #16711680       @ encoding: [0xff,0x78,0x87,0xe2]
268ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: add	r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0x87,0xe2]
269ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: add	r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0x87,0xe2]
270ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: add	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x87,0xe2]
271ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: add	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x87,0xe2]
272ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: add	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x87,0xe2]
273ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: add	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x87,0xe2]
274da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach@ CHECK: add	r4, r4, r5              @ encoding: [0x05,0x40,0x84,0xe0]
275da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach@ CHECK: add	r4, r4, r5, lsl #5      @ encoding: [0x85,0x42,0x84,0xe0]
276da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach@ CHECK: add	r4, r4, r5, lsr #5      @ encoding: [0xa5,0x42,0x84,0xe0]
277da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach@ CHECK: add	r4, r4, r5, lsr #5      @ encoding: [0xa5,0x42,0x84,0xe0]
278da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach@ CHECK: add	r4, r4, r5, asr #5      @ encoding: [0xc5,0x42,0x84,0xe0]
279da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach@ CHECK: add	r4, r4, r5, ror #5      @ encoding: [0xe5,0x42,0x84,0xe0]
280da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach@ CHECK: add	r6, r6, r7, lsl r9      @ encoding: [0x17,0x69,0x86,0xe0]
281da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach@ CHECK: add	r6, r6, r7, lsr r9      @ encoding: [0x37,0x69,0x86,0xe0]
282da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach@ CHECK: add	r6, r6, r7, asr r9      @ encoding: [0x57,0x69,0x86,0xe0]
283da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach@ CHECK: add	r6, r6, r7, ror r9      @ encoding: [0x77,0x69,0x86,0xe0]
284da9f278c741e8ced7c1652720270918eb04ed348Jim Grosbach@ CHECK: add	r4, r4, r5, rrx         @ encoding: [0x65,0x40,0x84,0xe0]
28559642c260064a0c9140e048d702a21830020487fJim Grosbach
2863bc8a3d3afe3ddda884a681002e24850099b719eJim Grosbach@ CHECK: sub	r0, r0, #4              @ encoding: [0x04,0x00,0x40,0xe2]
2873bc8a3d3afe3ddda884a681002e24850099b719eJim Grosbach@ CHECK: sub	r4, r5, #21             @ encoding: [0x15,0x40,0x45,0xe2]
288ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: adr	r0, #-1073741824        @ encoding: [0x03,0x01,0x8f,0xe2]
289ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: addseq r0, pc, #-1073741824    @ encoding: [0x03,0x01,0x9f,0x02]
290ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK:        Ltmp0:
291ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK-NEXT:   Ltmp1:
292ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK-NEXT:   adr	r0, (Ltmp1+8)+(Lback-Ltmp0) @ encoding: [A,A,0x0f'A',0xe2'A']
293ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK-NEXT:                           @   fixup A - offset: 0, value: (Ltmp1+8)+(Lback-Ltmp0), kind: fixup_arm_adr_pcrel_12
2943bc8a3d3afe3ddda884a681002e24850099b719eJim Grosbach
2958ed97ef5f6980c689a5770ec30488601201e17c3Richard Barton    @ Test right shift by 32, which is encoded as 0
2968ed97ef5f6980c689a5770ec30488601201e17c3Richard Barton    add r3, r1, r2, lsr #32
2978ed97ef5f6980c689a5770ec30488601201e17c3Richard Barton    add r3, r1, r2, asr #32
2988ed97ef5f6980c689a5770ec30488601201e17c3Richard Barton@ CHECK: add	r3, r1, r2, lsr #32     @ encoding: [0x22,0x30,0x81,0xe0]
2998ed97ef5f6980c689a5770ec30488601201e17c3Richard Barton@ CHECK: add	r3, r1, r2, asr #32     @ encoding: [0x42,0x30,0x81,0xe0]
30059642c260064a0c9140e048d702a21830020487fJim Grosbach
30159642c260064a0c9140e048d702a21830020487fJim Grosbach@------------------------------------------------------------------------------
302ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ ADDS
303ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@------------------------------------------------------------------------------
304ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    adds r7, r8, #16711680
305ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    adds r7, r8, $16711680
306ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    adds r7, r8, 16711680
307ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    adds r7, r8, #(0xff << 16)
308ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    adds r7, r8, #-2147483638
309ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    adds r7, r8, #42, #2
310ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    adds r7, r8, #40, #2
311ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    adds r7, r8, $40, $2
312ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    adds r7, r8, 40, 2
313ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    adds r7, r8, (2 * 20), (1 << 1)
314ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines
315ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: adds	r7, r8, #16711680         @ encoding: [0xff,0x78,0x98,0xe2]
316ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: adds	r7, r8, #16711680         @ encoding: [0xff,0x78,0x98,0xe2]
317ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: adds	r7, r8, #16711680         @ encoding: [0xff,0x78,0x98,0xe2]
318ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: adds	r7, r8, #16711680         @ encoding: [0xff,0x78,0x98,0xe2]
319ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: adds   r7, r8, #-2147483638      @ encoding: [0x2a,0x71,0x98,0xe2]
320ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: adds   r7, r8, #-2147483638      @ encoding: [0x2a,0x71,0x98,0xe2]
321ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: adds   r7, r8, #40, #2           @ encoding: [0x28,0x71,0x98,0xe2]
322ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: adds   r7, r8, #40, #2           @ encoding: [0x28,0x71,0x98,0xe2]
323ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: adds   r7, r8, #40, #2           @ encoding: [0x28,0x71,0x98,0xe2]
324ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: adds   r7, r8, #40, #2           @ encoding: [0x28,0x71,0x98,0xe2]
325ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines
326ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@------------------------------------------------------------------------------
32759642c260064a0c9140e048d702a21830020487fJim Grosbach@ AND
32859642c260064a0c9140e048d702a21830020487fJim Grosbach@------------------------------------------------------------------------------
3291e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach    and r10, r1, #0xf
330ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    and r10, r1, $0xf
331ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    and r10, r1, 0xf
332ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    and r10, r1, -0xf
333ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    and r7, r8, #(0xff << 16)
334ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    and r7, r8, #-2147483638
335ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    and r7, r8, #42, #2
336ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    and r7, r8, #40, #2
337ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    and r7, r8, $40, $2
338ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    and r7, r8, 40, 2
339ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    and r7, r8, (2 * 20), (1 << 1)
3401e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach    and r10, r1, r6
3411e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach    and r10, r1, r6, lsl #10
3421e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach    and r10, r1, r6, lsr #10
3431e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach    and r10, r1, r6, lsr #10
3441e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach    and r10, r1, r6, asr #10
3451e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach    and r10, r1, r6, ror #10
3461e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach    and r6, r7, r8, lsl r2
3471e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach    and r6, r7, r8, lsr r2
3481e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach    and r6, r7, r8, asr r2
3491e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach    and r6, r7, r8, ror r2
3501e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach    and r10, r1, r6, rrx
351840bf7eda7c81059a0aae9abd51262147c60d814Jim Grosbach    and r2, r3, #0x7fffffff
3521e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach
3531e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach    @ destination register is optional
3541e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach    and r1, #0xf
355ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    and r1, $0xf
356ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    and r1, 0xf
357ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    and r1, -0xf
358ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    and r7, #(0xff << 16)
359ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    and r7, #-2147483638
360ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    and r7, #42, #2
361ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    and r7, #40, #2
362ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    and r7, $40, $2
363ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    and r7, 40, 2
364ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    and r7, (2 * 20), (1 << 1)
3651e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach    and r10, r1
3661e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach    and r10, r1, lsl #10
3671e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach    and r10, r1, lsr #10
3681e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach    and r10, r1, lsr #10
3691e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach    and r10, r1, asr #10
3701e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach    and r10, r1, ror #10
3711e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach    and r6, r7, lsl r2
3721e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach    and r6, r7, lsr r2
3731e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach    and r6, r7, asr r2
3741e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach    and r6, r7, ror r2
3751e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach    and r10, r1, rrx
37659642c260064a0c9140e048d702a21830020487fJim Grosbach
37759642c260064a0c9140e048d702a21830020487fJim Grosbach@ CHECK: and	r10, r1, #15            @ encoding: [0x0f,0xa0,0x01,0xe2]
378ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: and	r10, r1, #15            @ encoding: [0x0f,0xa0,0x01,0xe2]
379ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: and	r10, r1, #15            @ encoding: [0x0f,0xa0,0x01,0xe2]
380ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: bic	r10, r1, #14            @ encoding: [0x0e,0xa0,0xc1,0xe3]
381ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: and	r7, r8, #16711680       @ encoding: [0xff,0x78,0x08,0xe2]
382ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: and    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0x08,0xe2]
383ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: and    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0x08,0xe2]
384ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: and    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x08,0xe2]
385ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: and    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x08,0xe2]
386ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: and    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x08,0xe2]
387ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: and    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x08,0xe2]
38859642c260064a0c9140e048d702a21830020487fJim Grosbach@ CHECK: and	r10, r1, r6             @ encoding: [0x06,0xa0,0x01,0xe0]
38959642c260064a0c9140e048d702a21830020487fJim Grosbach@ CHECK: and	r10, r1, r6, lsl #10    @ encoding: [0x06,0xa5,0x01,0xe0]
39059642c260064a0c9140e048d702a21830020487fJim Grosbach@ CHECK: and	r10, r1, r6, lsr #10    @ encoding: [0x26,0xa5,0x01,0xe0]
39159642c260064a0c9140e048d702a21830020487fJim Grosbach@ CHECK: and	r10, r1, r6, lsr #10    @ encoding: [0x26,0xa5,0x01,0xe0]
39259642c260064a0c9140e048d702a21830020487fJim Grosbach@ CHECK: and	r10, r1, r6, asr #10    @ encoding: [0x46,0xa5,0x01,0xe0]
39359642c260064a0c9140e048d702a21830020487fJim Grosbach@ CHECK: and	r10, r1, r6, ror #10    @ encoding: [0x66,0xa5,0x01,0xe0]
39459642c260064a0c9140e048d702a21830020487fJim Grosbach@ CHECK: and	r6, r7, r8, lsl r2      @ encoding: [0x18,0x62,0x07,0xe0]
39559642c260064a0c9140e048d702a21830020487fJim Grosbach@ CHECK: and	r6, r7, r8, lsr r2      @ encoding: [0x38,0x62,0x07,0xe0]
39659642c260064a0c9140e048d702a21830020487fJim Grosbach@ CHECK: and	r6, r7, r8, asr r2      @ encoding: [0x58,0x62,0x07,0xe0]
39759642c260064a0c9140e048d702a21830020487fJim Grosbach@ CHECK: and	r6, r7, r8, ror r2      @ encoding: [0x78,0x62,0x07,0xe0]
39859642c260064a0c9140e048d702a21830020487fJim Grosbach@ CHECK: and	r10, r1, r6, rrx        @ encoding: [0x66,0xa0,0x01,0xe0]
399840bf7eda7c81059a0aae9abd51262147c60d814Jim Grosbach@ CHECK: bic	r2, r3, #-2147483648    @ encoding: [0x02,0x21,0xc3,0xe3]
40059642c260064a0c9140e048d702a21830020487fJim Grosbach
40159642c260064a0c9140e048d702a21830020487fJim Grosbach@ CHECK: and	r1, r1, #15             @ encoding: [0x0f,0x10,0x01,0xe2]
402ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: and	r1, r1, #15             @ encoding: [0x0f,0x10,0x01,0xe2]
403ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: and	r1, r1, #15             @ encoding: [0x0f,0x10,0x01,0xe2]
404ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: bic	r1, r1, #14             @ encoding: [0x0e,0x10,0xc1,0xe3]
405ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: and	r7, r7, #16711680       @ encoding: [0xff,0x78,0x07,0xe2]
406ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: and	r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0x07,0xe2]
407ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: and	r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0x07,0xe2]
408ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: and	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x07,0xe2]
409ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: and	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x07,0xe2]
410ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: and	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x07,0xe2]
411ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: and	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x07,0xe2]
41259642c260064a0c9140e048d702a21830020487fJim Grosbach@ CHECK: and	r10, r10, r1            @ encoding: [0x01,0xa0,0x0a,0xe0]
41359642c260064a0c9140e048d702a21830020487fJim Grosbach@ CHECK: and	r10, r10, r1, lsl #10   @ encoding: [0x01,0xa5,0x0a,0xe0]
41459642c260064a0c9140e048d702a21830020487fJim Grosbach@ CHECK: and	r10, r10, r1, lsr #10   @ encoding: [0x21,0xa5,0x0a,0xe0]
41559642c260064a0c9140e048d702a21830020487fJim Grosbach@ CHECK: and	r10, r10, r1, lsr #10   @ encoding: [0x21,0xa5,0x0a,0xe0]
41659642c260064a0c9140e048d702a21830020487fJim Grosbach@ CHECK: and	r10, r10, r1, asr #10   @ encoding: [0x41,0xa5,0x0a,0xe0]
41759642c260064a0c9140e048d702a21830020487fJim Grosbach@ CHECK: and	r10, r10, r1, ror #10   @ encoding: [0x61,0xa5,0x0a,0xe0]
41859642c260064a0c9140e048d702a21830020487fJim Grosbach@ CHECK: and	r6, r6, r7, lsl r2      @ encoding: [0x17,0x62,0x06,0xe0]
41959642c260064a0c9140e048d702a21830020487fJim Grosbach@ CHECK: and	r6, r6, r7, lsr r2      @ encoding: [0x37,0x62,0x06,0xe0]
42059642c260064a0c9140e048d702a21830020487fJim Grosbach@ CHECK: and	r6, r6, r7, asr r2      @ encoding: [0x57,0x62,0x06,0xe0]
42159642c260064a0c9140e048d702a21830020487fJim Grosbach@ CHECK: and	r6, r6, r7, ror r2      @ encoding: [0x77,0x62,0x06,0xe0]
42259642c260064a0c9140e048d702a21830020487fJim Grosbach@ CHECK: and	r10, r10, r1, rrx       @ encoding: [0x61,0xa0,0x0a,0xe0]
42359642c260064a0c9140e048d702a21830020487fJim Grosbach
4248ed97ef5f6980c689a5770ec30488601201e17c3Richard Barton    @ Test right shift by 32, which is encoded as 0
4258ed97ef5f6980c689a5770ec30488601201e17c3Richard Barton    and r3, r1, r2, lsr #32
4268ed97ef5f6980c689a5770ec30488601201e17c3Richard Barton    and r3, r1, r2, asr #32
4278ed97ef5f6980c689a5770ec30488601201e17c3Richard Barton@ CHECK: and	r3, r1, r2, lsr #32     @ encoding: [0x22,0x30,0x01,0xe0]
4288ed97ef5f6980c689a5770ec30488601201e17c3Richard Barton@ CHECK: and	r3, r1, r2, asr #32     @ encoding: [0x42,0x30,0x01,0xe0]
4298ed97ef5f6980c689a5770ec30488601201e17c3Richard Barton
4307ed6d22e9637c52b3511ac6907830251d1124e60Jim Grosbach@------------------------------------------------------------------------------
43171810ab7c0ecd6927dde1eee0c73169642f3764dJim Grosbach@ ASR
4327ed6d22e9637c52b3511ac6907830251d1124e60Jim Grosbach@------------------------------------------------------------------------------
43371810ab7c0ecd6927dde1eee0c73169642f3764dJim Grosbach	asr r2, r4, #32
43471810ab7c0ecd6927dde1eee0c73169642f3764dJim Grosbach	asr r2, r4, #2
435ee10ff89a2934636570cb17b756bf31b2a38aab5Jim Grosbach	asr r2, r4, #0
4369f302c4fb3feeb36561a6eee0168ee5242d8ac20Jim Grosbach	asr r4, #2
43771810ab7c0ecd6927dde1eee0c73169642f3764dJim Grosbach
43871810ab7c0ecd6927dde1eee0c73169642f3764dJim Grosbach@ CHECK: asr	r2, r4, #32             @ encoding: [0x44,0x20,0xa0,0xe1]
43971810ab7c0ecd6927dde1eee0c73169642f3764dJim Grosbach@ CHECK: asr	r2, r4, #2              @ encoding: [0x44,0x21,0xa0,0xe1]
440ee10ff89a2934636570cb17b756bf31b2a38aab5Jim Grosbach@ CHECK: mov	r2, r4                  @ encoding: [0x04,0x20,0xa0,0xe1]
4419f302c4fb3feeb36561a6eee0168ee5242d8ac20Jim Grosbach@ CHECK: asr	r4, r4, #2              @ encoding: [0x44,0x41,0xa0,0xe1]
44271810ab7c0ecd6927dde1eee0c73169642f3764dJim Grosbach
44371810ab7c0ecd6927dde1eee0c73169642f3764dJim Grosbach
4447ed6d22e9637c52b3511ac6907830251d1124e60Jim Grosbach@------------------------------------------------------------------------------
44543afb6ff1cf7b040e2d70abb47679e1357a329d5Jim Grosbach@ B
4467ed6d22e9637c52b3511ac6907830251d1124e60Jim Grosbach@------------------------------------------------------------------------------
447293a2ee3063953bb6f5bc828831f985f054782a3Jim Grosbach        b _bar
448293a2ee3063953bb6f5bc828831f985f054782a3Jim Grosbach        beq _baz
449293a2ee3063953bb6f5bc828831f985f054782a3Jim Grosbach
450293a2ee3063953bb6f5bc828831f985f054782a3Jim Grosbach@ CHECK: b	_bar                    @ encoding: [A,A,A,0xea]
45136b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK: @   fixup A - offset: 0, value: _bar, kind: fixup_arm_uncondbranch
45236b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-BE: b	_bar                    @ encoding: [0xea,A,A,A]
45336b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-BE: @   fixup A - offset: 0, value: _bar, kind: fixup_arm_uncondbranch
454293a2ee3063953bb6f5bc828831f985f054782a3Jim Grosbach@ CHECK: beq	_baz                    @ encoding: [A,A,A,0x0a]
45536b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK: @   fixup A - offset: 0, value: _baz, kind: fixup_arm_condbranch
45636b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-BE: beq	_baz                    @ encoding: [0x0a,A,A,A]
45736b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-BE: @   fixup A - offset: 0, value: _baz, kind: fixup_arm_condbranch
458293a2ee3063953bb6f5bc828831f985f054782a3Jim Grosbach
459293a2ee3063953bb6f5bc828831f985f054782a3Jim Grosbach
4607ed6d22e9637c52b3511ac6907830251d1124e60Jim Grosbach@------------------------------------------------------------------------------
461293a2ee3063953bb6f5bc828831f985f054782a3Jim Grosbach@ BFC
4627ed6d22e9637c52b3511ac6907830251d1124e60Jim Grosbach@------------------------------------------------------------------------------
4631e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bfc r5, #3, #17
4641e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bfccc r5, #3, #17
465293a2ee3063953bb6f5bc828831f985f054782a3Jim Grosbach
466293a2ee3063953bb6f5bc828831f985f054782a3Jim Grosbach@ CHECK: bfc	r5, #3, #17             @ encoding: [0x9f,0x51,0xd3,0xe7]
467293a2ee3063953bb6f5bc828831f985f054782a3Jim Grosbach@ CHECK: bfclo	r5, #3, #17             @ encoding: [0x9f,0x51,0xd3,0x37]
468293a2ee3063953bb6f5bc828831f985f054782a3Jim Grosbach
469293a2ee3063953bb6f5bc828831f985f054782a3Jim Grosbach
4707ed6d22e9637c52b3511ac6907830251d1124e60Jim Grosbach@------------------------------------------------------------------------------
471293a2ee3063953bb6f5bc828831f985f054782a3Jim Grosbach@ BFI
4727ed6d22e9637c52b3511ac6907830251d1124e60Jim Grosbach@------------------------------------------------------------------------------
4731e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bfi r5, r2, #3, #17
4741e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bfine r5, r2, #3, #17
475293a2ee3063953bb6f5bc828831f985f054782a3Jim Grosbach
476293a2ee3063953bb6f5bc828831f985f054782a3Jim Grosbach@ CHECK: bfi	r5, r2, #3, #17         @ encoding: [0x92,0x51,0xd3,0xe7]
477293a2ee3063953bb6f5bc828831f985f054782a3Jim Grosbach@ CHECK: bfine	r5, r2, #3, #17         @ encoding: [0x92,0x51,0xd3,0x17]
478293a2ee3063953bb6f5bc828831f985f054782a3Jim Grosbach
479e52240c3705f3133eb8c4ebb4220054c68de2651Jim Grosbach
480e52240c3705f3133eb8c4ebb4220054c68de2651Jim Grosbach@------------------------------------------------------------------------------
48176cbe02cdd57a297d9c6f1e5106e4718abd7ff9fJim Grosbach@ BIC
482e52240c3705f3133eb8c4ebb4220054c68de2651Jim Grosbach@------------------------------------------------------------------------------
4831e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bic r10, r1, #0xf
484ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        bic r10, r1, $0xf
485ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        bic r10, r1, 0xf
486ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        bic r10, r1, -0xf
487ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        bic r7, r8, #(0xff << 16)
488ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        bic r7, r8, #-2147483638
489ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        bic r7, r8, #42, #2
490ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        bic r7, r8, #40, #2
491ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        bic r7, r8, $40, $2
492ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        bic r7, r8, 40, 2
493ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        bic r7, r8, (2 * 20), (1 << 1)
4941e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bic r10, r1, r6
4951e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bic r10, r1, r6, lsl #10
4961e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bic r10, r1, r6, lsr #10
4971e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bic r10, r1, r6, lsr #10
4981e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bic r10, r1, r6, asr #10
4991e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bic r10, r1, r6, ror #10
5001e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bic r6, r7, r8, lsl r2
5011e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bic r6, r7, r8, lsr r2
5021e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bic r6, r7, r8, asr r2
5031e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bic r6, r7, r8, ror r2
5041e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bic r10, r1, r6, rrx
5051e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach
5061e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        @ destination register is optional
5071e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bic r1, #0xf
508ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        bic r1, $0xf
509ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        bic r1, 0xf
510ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        bic r1, -0xf
511ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        bic r7, #(0xff << 16)
512ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        bic r7, #-2147483638
513ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        bic r7, #42, #2
514ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        bic r7, #40, #2
515ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        bic r7, $40, $2
516ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        bic r7, 40, 2
517ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        bic r7, (2 * 20), (1 << 1)
5181e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bic r10, r1
5191e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bic r10, r1, lsl #10
5201e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bic r10, r1, lsr #10
5211e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bic r10, r1, lsr #10
5221e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bic r10, r1, asr #10
5231e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bic r10, r1, ror #10
5241e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bic r6, r7, lsl r2
5251e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bic r6, r7, lsr r2
5261e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bic r6, r7, asr r2
5271e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bic r6, r7, ror r2
5281e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bic r10, r1, rrx
529e52240c3705f3133eb8c4ebb4220054c68de2651Jim Grosbach
530e52240c3705f3133eb8c4ebb4220054c68de2651Jim Grosbach@ CHECK: bic	r10, r1, #15            @ encoding: [0x0f,0xa0,0xc1,0xe3]
531ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: bic	r10, r1, #15            @ encoding: [0x0f,0xa0,0xc1,0xe3]
532ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: bic	r10, r1, #15            @ encoding: [0x0f,0xa0,0xc1,0xe3]
533ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: and	r10, r1, #14            @ encoding: [0x0e,0xa0,0x01,0xe2]
534ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: bic	r7, r8, #16711680       @ encoding: [0xff,0x78,0xc8,0xe3]
535ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: bic    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0xc8,0xe3]
536ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: bic    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0xc8,0xe3]
537ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: bic    r7, r8, #40, #2         @ encoding: [0x28,0x71,0xc8,0xe3]
538ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: bic    r7, r8, #40, #2         @ encoding: [0x28,0x71,0xc8,0xe3]
539ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: bic    r7, r8, #40, #2         @ encoding: [0x28,0x71,0xc8,0xe3]
540e52240c3705f3133eb8c4ebb4220054c68de2651Jim Grosbach@ CHECK: bic	r10, r1, r6             @ encoding: [0x06,0xa0,0xc1,0xe1]
541e52240c3705f3133eb8c4ebb4220054c68de2651Jim Grosbach@ CHECK: bic	r10, r1, r6, lsl #10    @ encoding: [0x06,0xa5,0xc1,0xe1]
542e52240c3705f3133eb8c4ebb4220054c68de2651Jim Grosbach@ CHECK: bic	r10, r1, r6, lsr #10    @ encoding: [0x26,0xa5,0xc1,0xe1]
543e52240c3705f3133eb8c4ebb4220054c68de2651Jim Grosbach@ CHECK: bic	r10, r1, r6, lsr #10    @ encoding: [0x26,0xa5,0xc1,0xe1]
544e52240c3705f3133eb8c4ebb4220054c68de2651Jim Grosbach@ CHECK: bic	r10, r1, r6, asr #10    @ encoding: [0x46,0xa5,0xc1,0xe1]
545e52240c3705f3133eb8c4ebb4220054c68de2651Jim Grosbach@ CHECK: bic	r10, r1, r6, ror #10    @ encoding: [0x66,0xa5,0xc1,0xe1]
546e52240c3705f3133eb8c4ebb4220054c68de2651Jim Grosbach@ CHECK: bic	r6, r7, r8, lsl r2      @ encoding: [0x18,0x62,0xc7,0xe1]
547e52240c3705f3133eb8c4ebb4220054c68de2651Jim Grosbach@ CHECK: bic	r6, r7, r8, lsr r2      @ encoding: [0x38,0x62,0xc7,0xe1]
548e52240c3705f3133eb8c4ebb4220054c68de2651Jim Grosbach@ CHECK: bic	r6, r7, r8, asr r2      @ encoding: [0x58,0x62,0xc7,0xe1]
549e52240c3705f3133eb8c4ebb4220054c68de2651Jim Grosbach@ CHECK: bic	r6, r7, r8, ror r2      @ encoding: [0x78,0x62,0xc7,0xe1]
550e52240c3705f3133eb8c4ebb4220054c68de2651Jim Grosbach@ CHECK: bic	r10, r1, r6, rrx        @ encoding: [0x66,0xa0,0xc1,0xe1]
551e52240c3705f3133eb8c4ebb4220054c68de2651Jim Grosbach
552e52240c3705f3133eb8c4ebb4220054c68de2651Jim Grosbach
553e52240c3705f3133eb8c4ebb4220054c68de2651Jim Grosbach@ CHECK: bic	r1, r1, #15             @ encoding: [0x0f,0x10,0xc1,0xe3]
554ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: bic	r1, r1, #15             @ encoding: [0x0f,0x10,0xc1,0xe3]
555ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: bic	r1, r1, #15             @ encoding: [0x0f,0x10,0xc1,0xe3]
556ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: and	r1, r1, #14             @ encoding: [0x0e,0x10,0x01,0xe2]
557ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: bic	r7, r7, #16711680       @ encoding: [0xff,0x78,0xc7,0xe3]
558ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: bic    r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0xc7,0xe3]
559ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: bic    r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0xc7,0xe3]
560ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: bic    r7, r7, #40, #2         @ encoding: [0x28,0x71,0xc7,0xe3]
561ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: bic    r7, r7, #40, #2         @ encoding: [0x28,0x71,0xc7,0xe3]
562ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: bic    r7, r7, #40, #2         @ encoding: [0x28,0x71,0xc7,0xe3]
563ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: bic    r7, r7, #40, #2         @ encoding: [0x28,0x71,0xc7,0xe3]
564e52240c3705f3133eb8c4ebb4220054c68de2651Jim Grosbach@ CHECK: bic	r10, r10, r1            @ encoding: [0x01,0xa0,0xca,0xe1]
565e52240c3705f3133eb8c4ebb4220054c68de2651Jim Grosbach@ CHECK: bic	r10, r10, r1, lsl #10   @ encoding: [0x01,0xa5,0xca,0xe1]
566e52240c3705f3133eb8c4ebb4220054c68de2651Jim Grosbach@ CHECK: bic	r10, r10, r1, lsr #10   @ encoding: [0x21,0xa5,0xca,0xe1]
567e52240c3705f3133eb8c4ebb4220054c68de2651Jim Grosbach@ CHECK: bic	r10, r10, r1, lsr #10   @ encoding: [0x21,0xa5,0xca,0xe1]
568e52240c3705f3133eb8c4ebb4220054c68de2651Jim Grosbach@ CHECK: bic	r10, r10, r1, asr #10   @ encoding: [0x41,0xa5,0xca,0xe1]
569e52240c3705f3133eb8c4ebb4220054c68de2651Jim Grosbach@ CHECK: bic	r10, r10, r1, ror #10   @ encoding: [0x61,0xa5,0xca,0xe1]
570e52240c3705f3133eb8c4ebb4220054c68de2651Jim Grosbach@ CHECK: bic	r6, r6, r7, lsl r2      @ encoding: [0x17,0x62,0xc6,0xe1]
571e52240c3705f3133eb8c4ebb4220054c68de2651Jim Grosbach@ CHECK: bic	r6, r6, r7, lsr r2      @ encoding: [0x37,0x62,0xc6,0xe1]
572e52240c3705f3133eb8c4ebb4220054c68de2651Jim Grosbach@ CHECK: bic	r6, r6, r7, asr r2      @ encoding: [0x57,0x62,0xc6,0xe1]
573e52240c3705f3133eb8c4ebb4220054c68de2651Jim Grosbach@ CHECK: bic	r6, r6, r7, ror r2      @ encoding: [0x77,0x62,0xc6,0xe1]
574e52240c3705f3133eb8c4ebb4220054c68de2651Jim Grosbach@ CHECK: bic	r10, r10, r1, rrx       @ encoding: [0x61,0xa0,0xca,0xe1]
575e52240c3705f3133eb8c4ebb4220054c68de2651Jim Grosbach
5768ed97ef5f6980c689a5770ec30488601201e17c3Richard Barton    @ Test right shift by 32, which is encoded as 0
5778ed97ef5f6980c689a5770ec30488601201e17c3Richard Barton    bic r3, r1, r2, lsr #32
5788ed97ef5f6980c689a5770ec30488601201e17c3Richard Barton    bic r3, r1, r2, asr #32
5798ed97ef5f6980c689a5770ec30488601201e17c3Richard Barton@ CHECK: bic	r3, r1, r2, lsr #32     @ encoding: [0x22,0x30,0xc1,0xe1]
5808ed97ef5f6980c689a5770ec30488601201e17c3Richard Barton@ CHECK: bic	r3, r1, r2, asr #32     @ encoding: [0x42,0x30,0xc1,0xe1]
5818ed97ef5f6980c689a5770ec30488601201e17c3Richard Barton
58221101d60ce94f51651f71eeb61ceb8264eccac83Jim Grosbach@------------------------------------------------------------------------------
58321101d60ce94f51651f71eeb61ceb8264eccac83Jim Grosbach@ BKPT
58421101d60ce94f51651f71eeb61ceb8264eccac83Jim Grosbach@------------------------------------------------------------------------------
5851e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bkpt #10
5861e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bkpt #65535
58721101d60ce94f51651f71eeb61ceb8264eccac83Jim Grosbach
588fff76ee7ef007b2bb74804f165fee475e30ead0dJim Grosbach@ CHECK: bkpt  #10                      @ encoding: [0x7a,0x00,0x20,0xe1]
589fff76ee7ef007b2bb74804f165fee475e30ead0dJim Grosbach@ CHECK: bkpt  #65535                   @ encoding: [0x7f,0xff,0x2f,0xe1]
59037023b05c84000373fcfc0871edad3c2b995be33Jim Grosbach
59137023b05c84000373fcfc0871edad3c2b995be33Jim Grosbach@------------------------------------------------------------------------------
59237023b05c84000373fcfc0871edad3c2b995be33Jim Grosbach@ BL/BLX (immediate)
59337023b05c84000373fcfc0871edad3c2b995be33Jim Grosbach@------------------------------------------------------------------------------
59437023b05c84000373fcfc0871edad3c2b995be33Jim Grosbach
5951e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bl _bar
596cb0809b82b126e79b99755ae4fc3d9733faea038James Molloy        bleq _bar
5971e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        blx _bar
5981e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        blls #28634268
5991e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        blx	#32424576
6001e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        blx	#16212288
60137023b05c84000373fcfc0871edad3c2b995be33Jim Grosbach
602f333d471d2cdd47d830dfe3a3e40efbb106c100dJim Grosbach@ CHECK: bl  _bar @ encoding: [A,A,A,0xeb]
603cb0809b82b126e79b99755ae4fc3d9733faea038James Molloy@ CHECK:   @   fixup A - offset: 0, value: _bar, kind: fixup_arm_uncondbl
60436b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-BE: bl  _bar @ encoding: [0xeb,A,A,A]
60536b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-BE:   @   fixup A - offset: 0, value: _bar, kind: fixup_arm_uncondbl
606cb0809b82b126e79b99755ae4fc3d9733faea038James Molloy@ CHECK: bleq  _bar @ encoding: [A,A,A,0x0b]
607cb0809b82b126e79b99755ae4fc3d9733faea038James Molloy@ CHECK:   @   fixup A - offset: 0, value: _bar, kind: fixup_arm_condbl
60836b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-BE: bleq  _bar @ encoding: [0x0b,A,A,A]
60936b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-BE:   @   fixup A - offset: 0, value: _bar, kind: fixup_arm_condbl
610cf121c35c484ee17210fde1cecbd896348cd654aJim Grosbach@ CHECK: blx	_bar @ encoding: [A,A,A,0xfa]
61136b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK:   @   fixup A - offset: 0, value: _bar, kind: fixup_arm_blx
61236b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-BE: blx	_bar @ encoding: [0xfa,A,A,A]
61336b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines@ CHECK-BE:   @   fixup A - offset: 0, value: _bar, kind: fixup_arm_blx
614d7568e1c355f5e364eddafc15c6d5553559f32a5Owen Anderson@ CHECK: blls	#28634268               @ encoding: [0x27,0x3b,0x6d,0x9b]
615f1eab597b2316c6cfcabfcee98895fedb2071722Owen Anderson@ CHECK: blx	#32424576               @ encoding: [0xa0,0xb0,0x7b,0xfa]
616f1eab597b2316c6cfcabfcee98895fedb2071722Owen Anderson@ CHECK: blx	#16212288               @ encoding: [0x50,0xd8,0x3d,0xfa]
617f333d471d2cdd47d830dfe3a3e40efbb106c100dJim Grosbach@------------------------------------------------------------------------------
618f333d471d2cdd47d830dfe3a3e40efbb106c100dJim Grosbach@ BLX (register)
619f333d471d2cdd47d830dfe3a3e40efbb106c100dJim Grosbach@------------------------------------------------------------------------------
6201e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        blx r2
6211e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        blxne r2
62237023b05c84000373fcfc0871edad3c2b995be33Jim Grosbach
62337023b05c84000373fcfc0871edad3c2b995be33Jim Grosbach@ CHECK: blx r2                         @ encoding: [0x32,0xff,0x2f,0xe1]
62437023b05c84000373fcfc0871edad3c2b995be33Jim Grosbach@ CHECK: blxne r2                       @ encoding: [0x32,0xff,0x2f,0x11]
62537023b05c84000373fcfc0871edad3c2b995be33Jim Grosbach
626f333d471d2cdd47d830dfe3a3e40efbb106c100dJim Grosbach@------------------------------------------------------------------------------
627f333d471d2cdd47d830dfe3a3e40efbb106c100dJim Grosbach@ BX
628f333d471d2cdd47d830dfe3a3e40efbb106c100dJim Grosbach@------------------------------------------------------------------------------
6291e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bx r2
6301e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bxne r2
631f333d471d2cdd47d830dfe3a3e40efbb106c100dJim Grosbach
632f333d471d2cdd47d830dfe3a3e40efbb106c100dJim Grosbach@ CHECK: bx	r2                      @ encoding: [0x12,0xff,0x2f,0xe1]
633f333d471d2cdd47d830dfe3a3e40efbb106c100dJim Grosbach@ CHECK: bxne	r2                      @ encoding: [0x12,0xff,0x2f,0x11]
634f333d471d2cdd47d830dfe3a3e40efbb106c100dJim Grosbach
635f333d471d2cdd47d830dfe3a3e40efbb106c100dJim Grosbach@------------------------------------------------------------------------------
636f333d471d2cdd47d830dfe3a3e40efbb106c100dJim Grosbach@ BXJ
637f333d471d2cdd47d830dfe3a3e40efbb106c100dJim Grosbach@------------------------------------------------------------------------------
6381e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bxj r2
6391e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        bxjne r2
64037023b05c84000373fcfc0871edad3c2b995be33Jim Grosbach
641f333d471d2cdd47d830dfe3a3e40efbb106c100dJim Grosbach@ CHECK: bxj	r2                      @ encoding: [0x22,0xff,0x2f,0xe1]
642f333d471d2cdd47d830dfe3a3e40efbb106c100dJim Grosbach@ CHECK: bxjne	r2                      @ encoding: [0x22,0xff,0x2f,0x11]
64383ab070fc1fbb02ca77b0a37e6ae0eacf58001e1Jim Grosbach
64483ab070fc1fbb02ca77b0a37e6ae0eacf58001e1Jim Grosbach
64583ab070fc1fbb02ca77b0a37e6ae0eacf58001e1Jim Grosbach@------------------------------------------------------------------------------
64683ab070fc1fbb02ca77b0a37e6ae0eacf58001e1Jim Grosbach@ CDP/CDP2
64783ab070fc1fbb02ca77b0a37e6ae0eacf58001e1Jim Grosbach@------------------------------------------------------------------------------
6481e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        cdp  p7, #1, c1, c1, c1, #4
6491e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        cdp2  p7, #1, c1, c1, c1, #4
6501b91231347c00bf1be46bdd5b27ae8c45fdc0d0cArtyom Skrobov        cdp2   p12, #0, c6, c12, c0, #7
65183ab070fc1fbb02ca77b0a37e6ae0eacf58001e1Jim Grosbach
652d986bc66bc56251c2b7d5b9a89df14c4760568fcJim Grosbach@ CHECK: cdp  p7, #1, c1, c1, c1, #4     @ encoding: [0x81,0x17,0x11,0xee]
653d986bc66bc56251c2b7d5b9a89df14c4760568fcJim Grosbach@ CHECK: cdp2  p7, #1, c1, c1, c1, #4    @ encoding: [0x81,0x17,0x11,0xfe]
6541b91231347c00bf1be46bdd5b27ae8c45fdc0d0cArtyom Skrobov@ CHECK: cdp2  p12, #0, c6, c12, c0, #7   @ encoding: [0xe0,0x6c,0x0c,0xfe]
655d986bc66bc56251c2b7d5b9a89df14c4760568fcJim Grosbach
656c19bd321362166805194cbaf170e06a4790d2da9Tim Northover        cdpne  p7, #1, c1, c1, c1, #4
657c19bd321362166805194cbaf170e06a4790d2da9Tim Northover@ CHECK: cdpne  p7, #1, c1, c1, c1, #4     @ encoding: [0x81,0x17,0x11,0x1e]
658d986bc66bc56251c2b7d5b9a89df14c4760568fcJim Grosbach
659d986bc66bc56251c2b7d5b9a89df14c4760568fcJim Grosbach@------------------------------------------------------------------------------
660d986bc66bc56251c2b7d5b9a89df14c4760568fcJim Grosbach@ CLREX
661d986bc66bc56251c2b7d5b9a89df14c4760568fcJim Grosbach@------------------------------------------------------------------------------
6621e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        clrex
663d986bc66bc56251c2b7d5b9a89df14c4760568fcJim Grosbach
664d986bc66bc56251c2b7d5b9a89df14c4760568fcJim Grosbach@ CHECK: clrex                           @ encoding: [0x1f,0xf0,0x7f,0xf5]
665d986bc66bc56251c2b7d5b9a89df14c4760568fcJim Grosbach
666d986bc66bc56251c2b7d5b9a89df14c4760568fcJim Grosbach
667d986bc66bc56251c2b7d5b9a89df14c4760568fcJim Grosbach@------------------------------------------------------------------------------
668d986bc66bc56251c2b7d5b9a89df14c4760568fcJim Grosbach@ CLZ
669d986bc66bc56251c2b7d5b9a89df14c4760568fcJim Grosbach@------------------------------------------------------------------------------
6701e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach    clz r1, r2
6711e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach    clzeq r1, r2
672d986bc66bc56251c2b7d5b9a89df14c4760568fcJim Grosbach
673d986bc66bc56251c2b7d5b9a89df14c4760568fcJim Grosbach@ CHECK: clz r1, r2                      @ encoding: [0x12,0x1f,0x6f,0xe1]
674d986bc66bc56251c2b7d5b9a89df14c4760568fcJim Grosbach@ CHECK: clzeq r1, r2                    @ encoding: [0x12,0x1f,0x6f,0x01]
67514ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach
67614ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach@------------------------------------------------------------------------------
67714ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach@ CMN
67814ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach@------------------------------------------------------------------------------
6791e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        cmn r1, #0xf
680ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        cmn r1, $0xf
681ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        cmn r1, 0xf
682ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        cmn r1, -0xf
683ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        cmn r7, #(0xff << 16)
684ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        cmn r7, #-2147483638
685ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        cmn r7, #42, #2
686ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        cmn r7, #40, #2
687ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        cmn r7, $40, $2
688ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        cmn r7, 40, 2
689ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        cmn r7, (20 * 2), (1 << 1)
6901e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        cmn r1, r6
6911e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        cmn r1, r6, lsl #10
6921e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        cmn r1, r6, lsr #10
6931e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        cmn sp, r6, lsr #10
6941e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        cmn r1, r6, asr #10
6951e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        cmn r1, r6, ror #10
6961e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        cmn r7, r8, lsl r2
6971e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        cmn sp, r8, lsr r2
6981e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        cmn r7, r8, asr r2
6991e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        cmn r7, r8, ror r2
7001e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        cmn r1, r6, rrx
70114ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach
70214ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach@ CHECK: cmn	r1, #15                 @ encoding: [0x0f,0x00,0x71,0xe3]
703ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: cmn	r1, #15                 @ encoding: [0x0f,0x00,0x71,0xe3]
704ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: cmn	r1, #15                 @ encoding: [0x0f,0x00,0x71,0xe3]
705ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: cmp	r1, #15                 @ encoding: [0x0f,0x00,0x51,0xe3]
706ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: cmn	r7, #16711680           @ encoding: [0xff,0x08,0x77,0xe3]
707ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: cmn	r7, #-2147483638        @ encoding: [0x2a,0x01,0x77,0xe3]
708ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: cmn	r7, #-2147483638        @ encoding: [0x2a,0x01,0x77,0xe3]
709ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: cmn	r7, #40, #2             @ encoding: [0x28,0x01,0x77,0xe3]
710ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: cmn	r7, #40, #2             @ encoding: [0x28,0x01,0x77,0xe3]
711ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: cmn	r7, #40, #2             @ encoding: [0x28,0x01,0x77,0xe3]
712ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: cmn	r7, #40, #2             @ encoding: [0x28,0x01,0x77,0xe3]
71314ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach@ CHECK: cmn	r1, r6                  @ encoding: [0x06,0x00,0x71,0xe1]
71414ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach@ CHECK: cmn	r1, r6, lsl #10         @ encoding: [0x06,0x05,0x71,0xe1]
71514ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach@ CHECK: cmn	r1, r6, lsr #10         @ encoding: [0x26,0x05,0x71,0xe1]
71614ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach@ CHECK: cmn	sp, r6, lsr #10         @ encoding: [0x26,0x05,0x7d,0xe1]
71714ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach@ CHECK: cmn	r1, r6, asr #10         @ encoding: [0x46,0x05,0x71,0xe1]
71814ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach@ CHECK: cmn	r1, r6, ror #10         @ encoding: [0x66,0x05,0x71,0xe1]
71914ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach@ CHECK: cmn	r7, r8, lsl r2          @ encoding: [0x18,0x02,0x77,0xe1]
72014ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach@ CHECK: cmn	sp, r8, lsr r2          @ encoding: [0x38,0x02,0x7d,0xe1]
72114ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach@ CHECK: cmn	r7, r8, asr r2          @ encoding: [0x58,0x02,0x77,0xe1]
72214ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach@ CHECK: cmn	r7, r8, ror r2          @ encoding: [0x78,0x02,0x77,0xe1]
72314ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach@ CHECK: cmn	r1, r6, rrx             @ encoding: [0x66,0x00,0x71,0xe1]
72414ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach
72514ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach@------------------------------------------------------------------------------
72614ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach@ CMP
72714ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach@------------------------------------------------------------------------------
7281e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        cmp r1, #0xf
729ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        cmp r1, $0xf
730ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        cmp r1, 0xf
731ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        cmp r1, -0xf
732ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        cmp r7, #(0xff << 16)
733ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        cmp r7, #-2147483638
734ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        cmp r7, #42, #2
735ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        cmp r7, #40, #2
736ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        cmp r7, $40, $2
737ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        cmp r7, 40, 2
738ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        cmp r7, (2 * 20), (1 << 1)
7391e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        cmp r1, r6
7401e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        cmp r1, r6, lsl #10
7411e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        cmp r1, r6, lsr #10
7421e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        cmp sp, r6, lsr #10
7431e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        cmp r1, r6, asr #10
7441e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        cmp r1, r6, ror #10
7451e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        cmp r7, r8, lsl r2
7461e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        cmp sp, r8, lsr r2
7471e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        cmp r7, r8, asr r2
7481e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        cmp r7, r8, ror r2
7491e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        cmp r1, r6, rrx
7508d11c6349f9bf276534907245946518042c1bb60Jim Grosbach        cmp r0, #-2
751b22e70d835a88753d3ec6d5ee5e85b23fa6834b1Jim Grosbach        cmp lr, #0
75214ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach
75314ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach@ CHECK: cmp	r1, #15                 @ encoding: [0x0f,0x00,0x51,0xe3]
754ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: cmp	r1, #15                 @ encoding: [0x0f,0x00,0x51,0xe3]
755ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: cmp	r1, #15                 @ encoding: [0x0f,0x00,0x51,0xe3]
756ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: cmn	r1, #15                 @ encoding: [0x0f,0x00,0x71,0xe3]
757ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: cmp	r7, #16711680           @ encoding: [0xff,0x08,0x57,0xe3]
758ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: cmp	r7, #-2147483638        @ encoding: [0x2a,0x01,0x57,0xe3]
759ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: cmp	r7, #-2147483638        @ encoding: [0x2a,0x01,0x57,0xe3]
760ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: cmp    r7, #40, #2             @ encoding: [0x28,0x01,0x57,0xe3]
761ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: cmp    r7, #40, #2             @ encoding: [0x28,0x01,0x57,0xe3]
762ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: cmp    r7, #40, #2             @ encoding: [0x28,0x01,0x57,0xe3]
763ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: cmp    r7, #40, #2             @ encoding: [0x28,0x01,0x57,0xe3]
76414ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach@ CHECK: cmp	r1, r6                  @ encoding: [0x06,0x00,0x51,0xe1]
76514ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach@ CHECK: cmp	r1, r6, lsl #10         @ encoding: [0x06,0x05,0x51,0xe1]
76614ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach@ CHECK: cmp	r1, r6, lsr #10         @ encoding: [0x26,0x05,0x51,0xe1]
76714ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach@ CHECK: cmp	sp, r6, lsr #10         @ encoding: [0x26,0x05,0x5d,0xe1]
76814ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach@ CHECK: cmp	r1, r6, asr #10         @ encoding: [0x46,0x05,0x51,0xe1]
76914ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach@ CHECK: cmp	r1, r6, ror #10         @ encoding: [0x66,0x05,0x51,0xe1]
77014ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach@ CHECK: cmp	r7, r8, lsl r2          @ encoding: [0x18,0x02,0x57,0xe1]
77114ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach@ CHECK: cmp	sp, r8, lsr r2          @ encoding: [0x38,0x02,0x5d,0xe1]
77214ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach@ CHECK: cmp	r7, r8, asr r2          @ encoding: [0x58,0x02,0x57,0xe1]
77314ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach@ CHECK: cmp	r7, r8, ror r2          @ encoding: [0x78,0x02,0x57,0xe1]
77414ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach@ CHECK: cmp	r1, r6, rrx             @ encoding: [0x66,0x00,0x51,0xe1]
7758d11c6349f9bf276534907245946518042c1bb60Jim Grosbach@ CHECK: cmn	r0, #2                  @ encoding: [0x02,0x00,0x70,0xe3]
776b22e70d835a88753d3ec6d5ee5e85b23fa6834b1Jim Grosbach@ CHECK: cmp  lr, #0                    @ encoding: [0x00,0x00,0x5e,0xe3]
77714ab1c3387a240a914cf8b1907bb3609bae72269Jim Grosbach
77871d3d67508176091575714dddf008b77db4089c9Jim Grosbach
77971d3d67508176091575714dddf008b77db4089c9Jim Grosbach@------------------------------------------------------------------------------
78071d3d67508176091575714dddf008b77db4089c9Jim Grosbach@ CPS
78171d3d67508176091575714dddf008b77db4089c9Jim Grosbach@------------------------------------------------------------------------------
78271d3d67508176091575714dddf008b77db4089c9Jim Grosbach        cpsie  aif
78371d3d67508176091575714dddf008b77db4089c9Jim Grosbach        cps  #15
78471d3d67508176091575714dddf008b77db4089c9Jim Grosbach        cpsid  if, #10
78571d3d67508176091575714dddf008b77db4089c9Jim Grosbach
78671d3d67508176091575714dddf008b77db4089c9Jim Grosbach@ CHECK: cpsie  aif @ encoding: [0xc0,0x01,0x08,0xf1]
78771d3d67508176091575714dddf008b77db4089c9Jim Grosbach@ CHECK: cps  #15 @ encoding: [0x0f,0x00,0x02,0xf1]
78871d3d67508176091575714dddf008b77db4089c9Jim Grosbach@ CHECK: cpsid  if, #10 @ encoding: [0xca,0x00,0x0e,0xf1]
78971d3d67508176091575714dddf008b77db4089c9Jim Grosbach
79071d3d67508176091575714dddf008b77db4089c9Jim Grosbach
7916f9f8845028d4d3b96c33417398034a71137d867Jim Grosbach@------------------------------------------------------------------------------
7926f9f8845028d4d3b96c33417398034a71137d867Jim Grosbach@ DBG
7936f9f8845028d4d3b96c33417398034a71137d867Jim Grosbach@------------------------------------------------------------------------------
7941e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        dbg #0
7951e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        dbg #5
7961e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        dbg #15
7976f9f8845028d4d3b96c33417398034a71137d867Jim Grosbach
7986f9f8845028d4d3b96c33417398034a71137d867Jim Grosbach@ CHECK: dbg #0                         @ encoding: [0xf0,0xf0,0x20,0xe3]
7996f9f8845028d4d3b96c33417398034a71137d867Jim Grosbach@ CHECK: dbg #5                         @ encoding: [0xf5,0xf0,0x20,0xe3]
8006f9f8845028d4d3b96c33417398034a71137d867Jim Grosbach@ CHECK: dbg #15                        @ encoding: [0xff,0xf0,0x20,0xe3]
801032434d622b6cd030a60bb9045a520c93b0d7d68Jim Grosbach
802032434d622b6cd030a60bb9045a520c93b0d7d68Jim Grosbach
803032434d622b6cd030a60bb9045a520c93b0d7d68Jim Grosbach@------------------------------------------------------------------------------
804032434d622b6cd030a60bb9045a520c93b0d7d68Jim Grosbach@ DMB
805032434d622b6cd030a60bb9045a520c93b0d7d68Jim Grosbach@------------------------------------------------------------------------------
806c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dmb #0xf
807c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dmb #0xe
808c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dmb #0xd
809c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dmb #0xc
810c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dmb #0xb
811c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dmb #0xa
812c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dmb #0x9
813c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dmb #0x8
814c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dmb #0x7
815c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dmb #0x6
816c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dmb #0x5
817c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dmb #0x4
818c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dmb #0x3
819c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dmb #0x2
820c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dmb #0x1
821c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dmb #0x0
822c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu
8231e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        dmb sy
8241e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        dmb st
8251e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        dmb sh
8261e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        dmb ish
8271e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        dmb shst
8281e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        dmb ishst
8291e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        dmb un
8301e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        dmb nsh
8311e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        dmb unst
8321e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        dmb nshst
8331e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        dmb osh
8341e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        dmb oshst
8351e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        dmb
836032434d622b6cd030a60bb9045a520c93b0d7d68Jim Grosbach
837032434d622b6cd030a60bb9045a520c93b0d7d68Jim Grosbach@ CHECK: dmb	sy                      @ encoding: [0x5f,0xf0,0x7f,0xf5]
838032434d622b6cd030a60bb9045a520c93b0d7d68Jim Grosbach@ CHECK: dmb	st                      @ encoding: [0x5e,0xf0,0x7f,0xf5]
839c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dmb	#0xd                    @ encoding: [0x5d,0xf0,0x7f,0xf5]
840c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dmb	#0xc                    @ encoding: [0x5c,0xf0,0x7f,0xf5]
841c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dmb	ish                     @ encoding: [0x5b,0xf0,0x7f,0xf5]
842c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dmb	ishst                   @ encoding: [0x5a,0xf0,0x7f,0xf5]
843c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dmb	#0x9                    @ encoding: [0x59,0xf0,0x7f,0xf5]
844c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dmb	#0x8                    @ encoding: [0x58,0xf0,0x7f,0xf5]
845c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dmb	nsh                     @ encoding: [0x57,0xf0,0x7f,0xf5]
846c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dmb	nshst                   @ encoding: [0x56,0xf0,0x7f,0xf5]
847c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dmb	#0x5                    @ encoding: [0x55,0xf0,0x7f,0xf5]
848c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dmb	#0x4                    @ encoding: [0x54,0xf0,0x7f,0xf5]
849c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dmb	osh                     @ encoding: [0x53,0xf0,0x7f,0xf5]
850c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dmb	oshst                   @ encoding: [0x52,0xf0,0x7f,0xf5]
851c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dmb	#0x1                    @ encoding: [0x51,0xf0,0x7f,0xf5]
852c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dmb	#0x0                    @ encoding: [0x50,0xf0,0x7f,0xf5]
853c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu
854c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dmb	sy                      @ encoding: [0x5f,0xf0,0x7f,0xf5]
855c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dmb	st                      @ encoding: [0x5e,0xf0,0x7f,0xf5]
856032434d622b6cd030a60bb9045a520c93b0d7d68Jim Grosbach@ CHECK: dmb	ish                     @ encoding: [0x5b,0xf0,0x7f,0xf5]
857032434d622b6cd030a60bb9045a520c93b0d7d68Jim Grosbach@ CHECK: dmb	ish                     @ encoding: [0x5b,0xf0,0x7f,0xf5]
858032434d622b6cd030a60bb9045a520c93b0d7d68Jim Grosbach@ CHECK: dmb	ishst                   @ encoding: [0x5a,0xf0,0x7f,0xf5]
859032434d622b6cd030a60bb9045a520c93b0d7d68Jim Grosbach@ CHECK: dmb	ishst                   @ encoding: [0x5a,0xf0,0x7f,0xf5]
860032434d622b6cd030a60bb9045a520c93b0d7d68Jim Grosbach@ CHECK: dmb	nsh                     @ encoding: [0x57,0xf0,0x7f,0xf5]
861032434d622b6cd030a60bb9045a520c93b0d7d68Jim Grosbach@ CHECK: dmb	nsh                     @ encoding: [0x57,0xf0,0x7f,0xf5]
862032434d622b6cd030a60bb9045a520c93b0d7d68Jim Grosbach@ CHECK: dmb	nshst                   @ encoding: [0x56,0xf0,0x7f,0xf5]
863032434d622b6cd030a60bb9045a520c93b0d7d68Jim Grosbach@ CHECK: dmb	nshst                   @ encoding: [0x56,0xf0,0x7f,0xf5]
864032434d622b6cd030a60bb9045a520c93b0d7d68Jim Grosbach@ CHECK: dmb	osh                     @ encoding: [0x53,0xf0,0x7f,0xf5]
865032434d622b6cd030a60bb9045a520c93b0d7d68Jim Grosbach@ CHECK: dmb	oshst                   @ encoding: [0x52,0xf0,0x7f,0xf5]
866032434d622b6cd030a60bb9045a520c93b0d7d68Jim Grosbach@ CHECK: dmb	sy                      @ encoding: [0x5f,0xf0,0x7f,0xf5]
867e77494e3e3da59afaa51d1bbcf732fa2851d865dJim Grosbach
868e77494e3e3da59afaa51d1bbcf732fa2851d865dJim Grosbach@------------------------------------------------------------------------------
869e77494e3e3da59afaa51d1bbcf732fa2851d865dJim Grosbach@ DSB
870e77494e3e3da59afaa51d1bbcf732fa2851d865dJim Grosbach@------------------------------------------------------------------------------
871c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb #0xf
872c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb #0xe
873c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb #0xd
874c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb #0xc
875c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb #0xb
876c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb #0xa
877c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb #0x9
878c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb #0x8
879c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb #0x7
880c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb #0x6
881c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb #0x5
882c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb #0x4
883c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb #0x3
884c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb #0x2
885c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb #0x1
886c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb #0x0
887c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu
888c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb 8
889c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb 7
890c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu
8911e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        dsb sy
8921e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        dsb st
8931e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        dsb sh
8941e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        dsb ish
8951e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        dsb shst
8961e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        dsb ishst
8971e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        dsb un
8981e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        dsb nsh
8991e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        dsb unst
9001e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        dsb nshst
9011e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        dsb osh
9021e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        dsb oshst
9031e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        dsb
904e77494e3e3da59afaa51d1bbcf732fa2851d865dJim Grosbach
905e77494e3e3da59afaa51d1bbcf732fa2851d865dJim Grosbach@ CHECK: dsb	sy                      @ encoding: [0x4f,0xf0,0x7f,0xf5]
906e77494e3e3da59afaa51d1bbcf732fa2851d865dJim Grosbach@ CHECK: dsb	st                      @ encoding: [0x4e,0xf0,0x7f,0xf5]
907c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	#0xd                    @ encoding: [0x4d,0xf0,0x7f,0xf5]
908c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	#0xc                    @ encoding: [0x4c,0xf0,0x7f,0xf5]
909c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	ish                     @ encoding: [0x4b,0xf0,0x7f,0xf5]
910c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	ishst                   @ encoding: [0x4a,0xf0,0x7f,0xf5]
911c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	#0x9                    @ encoding: [0x49,0xf0,0x7f,0xf5]
912c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	#0x8                    @ encoding: [0x48,0xf0,0x7f,0xf5]
913c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	nsh                     @ encoding: [0x47,0xf0,0x7f,0xf5]
914c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	nshst                   @ encoding: [0x46,0xf0,0x7f,0xf5]
915c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	#0x5                    @ encoding: [0x45,0xf0,0x7f,0xf5]
916c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	#0x4                    @ encoding: [0x44,0xf0,0x7f,0xf5]
917c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	osh                     @ encoding: [0x43,0xf0,0x7f,0xf5]
918c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	oshst                   @ encoding: [0x42,0xf0,0x7f,0xf5]
919c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	#0x1                    @ encoding: [0x41,0xf0,0x7f,0xf5]
920c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	#0x0                    @ encoding: [0x40,0xf0,0x7f,0xf5]
921c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu
922c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	#0x8                    @ encoding: [0x48,0xf0,0x7f,0xf5]
923c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	nsh                     @ encoding: [0x47,0xf0,0x7f,0xf5]
924c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu
925c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	sy                      @ encoding: [0x4f,0xf0,0x7f,0xf5]
926c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	st                      @ encoding: [0x4e,0xf0,0x7f,0xf5]
927e77494e3e3da59afaa51d1bbcf732fa2851d865dJim Grosbach@ CHECK: dsb	ish                     @ encoding: [0x4b,0xf0,0x7f,0xf5]
928e77494e3e3da59afaa51d1bbcf732fa2851d865dJim Grosbach@ CHECK: dsb	ish                     @ encoding: [0x4b,0xf0,0x7f,0xf5]
929e77494e3e3da59afaa51d1bbcf732fa2851d865dJim Grosbach@ CHECK: dsb	ishst                   @ encoding: [0x4a,0xf0,0x7f,0xf5]
930e77494e3e3da59afaa51d1bbcf732fa2851d865dJim Grosbach@ CHECK: dsb	ishst                   @ encoding: [0x4a,0xf0,0x7f,0xf5]
931e77494e3e3da59afaa51d1bbcf732fa2851d865dJim Grosbach@ CHECK: dsb	nsh                     @ encoding: [0x47,0xf0,0x7f,0xf5]
932e77494e3e3da59afaa51d1bbcf732fa2851d865dJim Grosbach@ CHECK: dsb	nsh                     @ encoding: [0x47,0xf0,0x7f,0xf5]
933e77494e3e3da59afaa51d1bbcf732fa2851d865dJim Grosbach@ CHECK: dsb	nshst                   @ encoding: [0x46,0xf0,0x7f,0xf5]
934e77494e3e3da59afaa51d1bbcf732fa2851d865dJim Grosbach@ CHECK: dsb	nshst                   @ encoding: [0x46,0xf0,0x7f,0xf5]
935e77494e3e3da59afaa51d1bbcf732fa2851d865dJim Grosbach@ CHECK: dsb	osh                     @ encoding: [0x43,0xf0,0x7f,0xf5]
936e77494e3e3da59afaa51d1bbcf732fa2851d865dJim Grosbach@ CHECK: dsb	oshst                   @ encoding: [0x42,0xf0,0x7f,0xf5]
937e77494e3e3da59afaa51d1bbcf732fa2851d865dJim Grosbach@ CHECK: dsb	sy                      @ encoding: [0x4f,0xf0,0x7f,0xf5]
93800a66653cbe56dfbdb831172b54097bf8256a191Jim Grosbach
9394acefe192f02849bcb2fd620a9f507c00d39a686Richard Barton@ With capitals
9404acefe192f02849bcb2fd620a9f507c00d39a686Richard Barton        dsb SY
9414acefe192f02849bcb2fd620a9f507c00d39a686Richard Barton        dsb OSHST
9424acefe192f02849bcb2fd620a9f507c00d39a686Richard Barton
9434acefe192f02849bcb2fd620a9f507c00d39a686Richard Barton@ CHECK: dsb	sy                      @ encoding: [0x4f,0xf0,0x7f,0xf5]
9444acefe192f02849bcb2fd620a9f507c00d39a686Richard Barton@ CHECK: dsb	oshst                   @ encoding: [0x42,0xf0,0x7f,0xf5]
94500a66653cbe56dfbdb831172b54097bf8256a191Jim Grosbach@------------------------------------------------------------------------------
94600a66653cbe56dfbdb831172b54097bf8256a191Jim Grosbach@ EOR
94700a66653cbe56dfbdb831172b54097bf8256a191Jim Grosbach@------------------------------------------------------------------------------
9481e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        eor r4, r5, #0xf000
949ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        eor r4, r5, $0xf000
950ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        eor r4, r5, 0xf000
951ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        eor r7, r8, #(0xff << 16)
952ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        eor r7, r8, #-2147483638
953ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        eor r7, r8, #42, #2
954ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        eor r7, r8, #40, #2
955ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        eor r7, r8, $40, $2
956ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        eor r7, r8, 40, 2
957ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        eor r7, r8, (20 * 2), (1 << 1)
9581e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        eor r4, r5, r6
9591e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        eor r4, r5, r6, lsl #5
9601e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        eor r4, r5, r6, lsr #5
9611e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        eor r4, r5, r6, lsr #5
9621e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        eor r4, r5, r6, asr #5
9631e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        eor r4, r5, r6, ror #5
9641e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        eor r6, r7, r8, lsl r9
9651e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        eor r6, r7, r8, lsr r9
9661e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        eor r6, r7, r8, asr r9
9671e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        eor r6, r7, r8, ror r9
9681e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        eor r4, r5, r6, rrx
9691e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach
9701e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        @ destination register is optional
9711e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        eor r5, #0xf000
972ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        eor r5, $0xf000
973ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        eor r5, 0xf000
974ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        eor r7, #(0xff << 16)
975ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        eor r7, #-2147483638
976ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        eor r7, #42, #2
977ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        eor r7, #40, #2
978ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        eor r7, $40, $2
979ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        eor r7, 40, 2
980ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        eor r7, (20 * 2), (1 << 1)
9811e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        eor r4, r5
9821e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        eor r4, r5, lsl #5
9831e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        eor r4, r5, lsr #5
9841e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        eor r4, r5, lsr #5
9851e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        eor r4, r5, asr #5
9861e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        eor r4, r5, ror #5
9871e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        eor r6, r7, lsl r9
9881e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        eor r6, r7, lsr r9
9891e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        eor r6, r7, asr r9
9901e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        eor r6, r7, ror r9
9911e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        eor r4, r5, rrx
99200a66653cbe56dfbdb831172b54097bf8256a191Jim Grosbach
99300a66653cbe56dfbdb831172b54097bf8256a191Jim Grosbach@ CHECK: eor	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x25,0xe2]
994ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: eor	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x25,0xe2]
995ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: eor	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x25,0xe2]
996ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: eor	r7, r8, #16711680       @ encoding: [0xff,0x78,0x28,0xe2]
997ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: eor    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0x28,0xe2]
998ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: eor    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0x28,0xe2]
999ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: eor    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x28,0xe2]
1000ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: eor    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x28,0xe2]
1001ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: eor    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x28,0xe2]
1002ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: eor    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x28,0xe2]
100300a66653cbe56dfbdb831172b54097bf8256a191Jim Grosbach@ CHECK: eor	r4, r5, r6              @ encoding: [0x06,0x40,0x25,0xe0]
100400a66653cbe56dfbdb831172b54097bf8256a191Jim Grosbach@ CHECK: eor	r4, r5, r6, lsl #5      @ encoding: [0x86,0x42,0x25,0xe0]
100500a66653cbe56dfbdb831172b54097bf8256a191Jim Grosbach@ CHECK: eor	r4, r5, r6, lsr #5      @ encoding: [0xa6,0x42,0x25,0xe0]
100600a66653cbe56dfbdb831172b54097bf8256a191Jim Grosbach@ CHECK: eor	r4, r5, r6, lsr #5      @ encoding: [0xa6,0x42,0x25,0xe0]
100700a66653cbe56dfbdb831172b54097bf8256a191Jim Grosbach@ CHECK: eor	r4, r5, r6, asr #5      @ encoding: [0xc6,0x42,0x25,0xe0]
100800a66653cbe56dfbdb831172b54097bf8256a191Jim Grosbach@ CHECK: eor	r4, r5, r6, ror #5      @ encoding: [0xe6,0x42,0x25,0xe0]
100900a66653cbe56dfbdb831172b54097bf8256a191Jim Grosbach@ CHECK: eor	r6, r7, r8, lsl r9      @ encoding: [0x18,0x69,0x27,0xe0]
101000a66653cbe56dfbdb831172b54097bf8256a191Jim Grosbach@ CHECK: eor	r6, r7, r8, lsr r9      @ encoding: [0x38,0x69,0x27,0xe0]
101100a66653cbe56dfbdb831172b54097bf8256a191Jim Grosbach@ CHECK: eor	r6, r7, r8, asr r9      @ encoding: [0x58,0x69,0x27,0xe0]
101200a66653cbe56dfbdb831172b54097bf8256a191Jim Grosbach@ CHECK: eor	r6, r7, r8, ror r9      @ encoding: [0x78,0x69,0x27,0xe0]
101300a66653cbe56dfbdb831172b54097bf8256a191Jim Grosbach@ CHECK: eor	r4, r5, r6, rrx         @ encoding: [0x66,0x40,0x25,0xe0]
101400a66653cbe56dfbdb831172b54097bf8256a191Jim Grosbach
101500a66653cbe56dfbdb831172b54097bf8256a191Jim Grosbach
101600a66653cbe56dfbdb831172b54097bf8256a191Jim Grosbach@ CHECK: eor	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x25,0xe2]
1017ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: eor	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x25,0xe2]
1018ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: eor	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x25,0xe2]
1019ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: eor	r7, r7, #16711680       @ encoding: [0xff,0x78,0x27,0xe2]
1020ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: eor	r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0x27,0xe2]
1021ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: eor	r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0x27,0xe2]
1022ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: eor	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x27,0xe2]
1023ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: eor	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x27,0xe2]
1024ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: eor	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x27,0xe2]
1025ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: eor	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x27,0xe2]
102600a66653cbe56dfbdb831172b54097bf8256a191Jim Grosbach@ CHECK: eor	r4, r4, r5              @ encoding: [0x05,0x40,0x24,0xe0]
102700a66653cbe56dfbdb831172b54097bf8256a191Jim Grosbach@ CHECK: eor	r4, r4, r5, lsl #5      @ encoding: [0x85,0x42,0x24,0xe0]
102800a66653cbe56dfbdb831172b54097bf8256a191Jim Grosbach@ CHECK: eor	r4, r4, r5, lsr #5      @ encoding: [0xa5,0x42,0x24,0xe0]
102900a66653cbe56dfbdb831172b54097bf8256a191Jim Grosbach@ CHECK: eor	r4, r4, r5, lsr #5      @ encoding: [0xa5,0x42,0x24,0xe0]
103000a66653cbe56dfbdb831172b54097bf8256a191Jim Grosbach@ CHECK: eor	r4, r4, r5, asr #5      @ encoding: [0xc5,0x42,0x24,0xe0]
103100a66653cbe56dfbdb831172b54097bf8256a191Jim Grosbach@ CHECK: eor	r4, r4, r5, ror #5      @ encoding: [0xe5,0x42,0x24,0xe0]
103200a66653cbe56dfbdb831172b54097bf8256a191Jim Grosbach@ CHECK: eor	r6, r6, r7, lsl r9      @ encoding: [0x17,0x69,0x26,0xe0]
103300a66653cbe56dfbdb831172b54097bf8256a191Jim Grosbach@ CHECK: eor	r6, r6, r7, lsr r9      @ encoding: [0x37,0x69,0x26,0xe0]
103400a66653cbe56dfbdb831172b54097bf8256a191Jim Grosbach@ CHECK: eor	r6, r6, r7, asr r9      @ encoding: [0x57,0x69,0x26,0xe0]
103500a66653cbe56dfbdb831172b54097bf8256a191Jim Grosbach@ CHECK: eor	r6, r6, r7, ror r9      @ encoding: [0x77,0x69,0x26,0xe0]
103600a66653cbe56dfbdb831172b54097bf8256a191Jim Grosbach@ CHECK: eor	r4, r4, r5, rrx         @ encoding: [0x65,0x40,0x24,0xe0]
1037791feea10071223886e2fe2bfa0e1f4cb2c0ce74Jim Grosbach
10388ed97ef5f6980c689a5770ec30488601201e17c3Richard Barton    @ Test right shift by 32, which is encoded as 0
10398ed97ef5f6980c689a5770ec30488601201e17c3Richard Barton    eor r3, r1, r2, lsr #32
10408ed97ef5f6980c689a5770ec30488601201e17c3Richard Barton    eor r3, r1, r2, asr #32
10418ed97ef5f6980c689a5770ec30488601201e17c3Richard Barton@ CHECK: eor	r3, r1, r2, lsr #32     @ encoding: [0x22,0x30,0x21,0xe0]
10428ed97ef5f6980c689a5770ec30488601201e17c3Richard Barton@ CHECK: eor	r3, r1, r2, asr #32     @ encoding: [0x42,0x30,0x21,0xe0]
1043791feea10071223886e2fe2bfa0e1f4cb2c0ce74Jim Grosbach
1044791feea10071223886e2fe2bfa0e1f4cb2c0ce74Jim Grosbach@------------------------------------------------------------------------------
1045791feea10071223886e2fe2bfa0e1f4cb2c0ce74Jim Grosbach@ ISB
1046791feea10071223886e2fe2bfa0e1f4cb2c0ce74Jim Grosbach@------------------------------------------------------------------------------
1047791feea10071223886e2fe2bfa0e1f4cb2c0ce74Jim Grosbach        isb sy
1048791feea10071223886e2fe2bfa0e1f4cb2c0ce74Jim Grosbach        isb
10494e9a96d810eb0cc126ebe6f18e536b474c84940cAmaury de la Vieuville        isb #15
10504e9a96d810eb0cc126ebe6f18e536b474c84940cAmaury de la Vieuville        isb #1
1051791feea10071223886e2fe2bfa0e1f4cb2c0ce74Jim Grosbach
1052791feea10071223886e2fe2bfa0e1f4cb2c0ce74Jim Grosbach@ CHECK: isb sy                         @ encoding: [0x6f,0xf0,0x7f,0xf5]
1053791feea10071223886e2fe2bfa0e1f4cb2c0ce74Jim Grosbach@ CHECK: isb sy                         @ encoding: [0x6f,0xf0,0x7f,0xf5]
10544e9a96d810eb0cc126ebe6f18e536b474c84940cAmaury de la Vieuville@ CHECK: isb sy                         @ encoding: [0x6f,0xf0,0x7f,0xf5]
10554e9a96d810eb0cc126ebe6f18e536b474c84940cAmaury de la Vieuville@ CHECK: isb #0x1                       @ encoding: [0x61,0xf0,0x7f,0xf5]
10563b14a5c5469176effb921d91d4494f0aa2919fd0Jim Grosbach
10573b14a5c5469176effb921d91d4494f0aa2919fd0Jim Grosbach
10582bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@------------------------------------------------------------------------------
10592bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ LDC{L}/LDC2{L}
10602bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@------------------------------------------------------------------------------
10612bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldc2 p0, c8, [r1, #4]
10622bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldc2 p1, c7, [r2]
10632bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldc2 p2, c6, [r3, #-224]
10642bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldc2 p3, c5, [r4, #-120]!
10652bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldc2 p4, c4, [r5], #16
10662bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldc2 p5, c3, [r6], #-72
10672bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldc2l p6, c2, [r7, #4]
10682bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldc2l p7, c1, [r8]
10692bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldc2l p8, c0, [r9, #-224]
10702bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldc2l p9, c1, [r10, #-120]!
10711b91231347c00bf1be46bdd5b27ae8c45fdc0d0cArtyom Skrobov        ldc2l p0, c2, [r11], #16
10721b91231347c00bf1be46bdd5b27ae8c45fdc0d0cArtyom Skrobov        ldc2l p1, c3, [r12], #-72
10732bd0118472de352745a2e038245fab4974f7c87eJim Grosbach
10742bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldc p12, c4, [r0, #4]
10752bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldc p13, c5, [r1]
10762bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldc p14, c6, [r2, #-224]
10772bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldc p15, c7, [r3, #-120]!
10782bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldc p5, c8, [r4], #16
10792bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldc p4, c9, [r5], #-72
10802bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldcl p3, c10, [r6, #4]
10812bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldcl p2, c11, [r7]
10822bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldcl p1, c12, [r8, #-224]
10832bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldcl p0, c13, [r9, #-120]!
10842bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldcl p6, c14, [r10], #16
10852bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldcl p7, c15, [r11], #-72
10862bd0118472de352745a2e038245fab4974f7c87eJim Grosbach
10872bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldclo p12, c4, [r0, #4]
10882bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldchi p13, c5, [r1]
10892bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldccs p14, c6, [r2, #-224]
10902bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldccc p15, c7, [r3, #-120]!
10912bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldceq p5, c8, [r4], #16
10922bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldcgt p4, c9, [r5], #-72
10932bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldcllt p3, c10, [r6, #4]
10942bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldclge p2, c11, [r7]
10952bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldclle p1, c12, [r8, #-224]
10962bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldclne p0, c13, [r9, #-120]!
10972bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldcleq p6, c14, [r10], #16
10982bd0118472de352745a2e038245fab4974f7c87eJim Grosbach        ldclhi p7, c15, [r11], #-72
10992bd0118472de352745a2e038245fab4974f7c87eJim Grosbach
11009b8f2a0b365ea62a5fef80bbaab3cf0252db2fcfJim Grosbach        ldc2 p2, c8, [r1], { 25 }
11019b8f2a0b365ea62a5fef80bbaab3cf0252db2fcfJim Grosbach
11022bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldc2	p0, c8, [r1, #4]        @ encoding: [0x01,0x80,0x91,0xfd]
11032bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldc2	p1, c7, [r2]            @ encoding: [0x00,0x71,0x92,0xfd]
11042bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldc2	p2, c6, [r3, #-224]     @ encoding: [0x38,0x62,0x13,0xfd]
11052bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldc2	p3, c5, [r4, #-120]!    @ encoding: [0x1e,0x53,0x34,0xfd]
11062bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldc2	p4, c4, [r5], #16       @ encoding: [0x04,0x44,0xb5,0xfc]
11072bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldc2	p5, c3, [r6], #-72      @ encoding: [0x12,0x35,0x36,0xfc]
11082bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldc2l	p6, c2, [r7, #4]        @ encoding: [0x01,0x26,0xd7,0xfd]
11092bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldc2l	p7, c1, [r8]            @ encoding: [0x00,0x17,0xd8,0xfd]
11102bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldc2l	p8, c0, [r9, #-224]     @ encoding: [0x38,0x08,0x59,0xfd]
11112bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldc2l	p9, c1, [r10, #-120]!   @ encoding: [0x1e,0x19,0x7a,0xfd]
11121b91231347c00bf1be46bdd5b27ae8c45fdc0d0cArtyom Skrobov@ CHECK: ldc2l	p0, c2, [r11], #16      @ encoding: [0x04,0x20,0xfb,0xfc]
11131b91231347c00bf1be46bdd5b27ae8c45fdc0d0cArtyom Skrobov@ CHECK: ldc2l	p1, c3, [r12], #-72     @ encoding: [0x12,0x31,0x7c,0xfc]
11142bd0118472de352745a2e038245fab4974f7c87eJim Grosbach
11152bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldc	p12, c4, [r0, #4]       @ encoding: [0x01,0x4c,0x90,0xed]
11162bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldc	p13, c5, [r1]           @ encoding: [0x00,0x5d,0x91,0xed]
11172bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldc	p14, c6, [r2, #-224]    @ encoding: [0x38,0x6e,0x12,0xed]
11182bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldc	p15, c7, [r3, #-120]!   @ encoding: [0x1e,0x7f,0x33,0xed]
11192bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldc	p5, c8, [r4], #16       @ encoding: [0x04,0x85,0xb4,0xec]
11202bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldc	p4, c9, [r5], #-72      @ encoding: [0x12,0x94,0x35,0xec]
11212bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldcl	p3, c10, [r6, #4]       @ encoding: [0x01,0xa3,0xd6,0xed]
11222bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldcl	p2, c11, [r7]           @ encoding: [0x00,0xb2,0xd7,0xed]
11232bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldcl	p1, c12, [r8, #-224]    @ encoding: [0x38,0xc1,0x58,0xed]
11242bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldcl	p0, c13, [r9, #-120]!   @ encoding: [0x1e,0xd0,0x79,0xed]
11252bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldcl	p6, c14, [r10], #16     @ encoding: [0x04,0xe6,0xfa,0xec]
11262bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldcl	p7, c15, [r11], #-72    @ encoding: [0x12,0xf7,0x7b,0xec]
11272bd0118472de352745a2e038245fab4974f7c87eJim Grosbach
11282bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldclo	p12, c4, [r0, #4]       @ encoding: [0x01,0x4c,0x90,0x3d]
11292bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldchi	p13, c5, [r1]           @ encoding: [0x00,0x5d,0x91,0x8d]
11302bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldchs	p14, c6, [r2, #-224]    @ encoding: [0x38,0x6e,0x12,0x2d]
11312bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldclo	p15, c7, [r3, #-120]!   @ encoding: [0x1e,0x7f,0x33,0x3d]
11322bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldceq	p5, c8, [r4], #16       @ encoding: [0x04,0x85,0xb4,0x0c]
11332bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldcgt	p4, c9, [r5], #-72      @ encoding: [0x12,0x94,0x35,0xcc]
11342bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldcllt	p3, c10, [r6, #4]       @ encoding: [0x01,0xa3,0xd6,0xbd]
11352bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldclge	p2, c11, [r7]           @ encoding: [0x00,0xb2,0xd7,0xad]
11362bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldclle	p1, c12, [r8, #-224]    @ encoding: [0x38,0xc1,0x58,0xdd]
11372bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldclne	p0, c13, [r9, #-120]!   @ encoding: [0x1e,0xd0,0x79,0x1d]
11382bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldcleq	p6, c14, [r10], #16     @ encoding: [0x04,0xe6,0xfa,0x0c]
11392bd0118472de352745a2e038245fab4974f7c87eJim Grosbach@ CHECK: ldclhi	p7, c15, [r11], #-72    @ encoding: [0x12,0xf7,0x7b,0x8c]
11402bd0118472de352745a2e038245fab4974f7c87eJim Grosbach
11419b8f2a0b365ea62a5fef80bbaab3cf0252db2fcfJim Grosbach@ CHECK: ldc2	p2, c8, [r1], {25}      @ encoding: [0x19,0x82,0x91,0xfc]
11429b8f2a0b365ea62a5fef80bbaab3cf0252db2fcfJim Grosbach
11433b14a5c5469176effb921d91d4494f0aa2919fd0Jim Grosbach
11443b14a5c5469176effb921d91d4494f0aa2919fd0Jim Grosbach@------------------------------------------------------------------------------
11453b14a5c5469176effb921d91d4494f0aa2919fd0Jim Grosbach@ LDM*
11463b14a5c5469176effb921d91d4494f0aa2919fd0Jim Grosbach@------------------------------------------------------------------------------
11473b14a5c5469176effb921d91d4494f0aa2919fd0Jim Grosbach        ldm       r2, {r1,r3-r6,sp}
11483b14a5c5469176effb921d91d4494f0aa2919fd0Jim Grosbach        ldmia     r2, {r1,r3-r6,sp}
11493b14a5c5469176effb921d91d4494f0aa2919fd0Jim Grosbach        ldmib     r2, {r1,r3-r6,sp}
11503b14a5c5469176effb921d91d4494f0aa2919fd0Jim Grosbach        ldmda     r2, {r1,r3-r6,sp}
11513b14a5c5469176effb921d91d4494f0aa2919fd0Jim Grosbach        ldmdb     r2, {r1,r3-r6,sp}
11523b14a5c5469176effb921d91d4494f0aa2919fd0Jim Grosbach        ldmfd     r2, {r1,r3-r6,sp}
11533b14a5c5469176effb921d91d4494f0aa2919fd0Jim Grosbach
11543b14a5c5469176effb921d91d4494f0aa2919fd0Jim Grosbach        @ with update
11553b14a5c5469176effb921d91d4494f0aa2919fd0Jim Grosbach        ldm       r2!, {r1,r3-r6,sp}
11563b14a5c5469176effb921d91d4494f0aa2919fd0Jim Grosbach        ldmib     r2!, {r1,r3-r6,sp}
11573b14a5c5469176effb921d91d4494f0aa2919fd0Jim Grosbach        ldmda     r2!, {r1,r3-r6,sp}
11583b14a5c5469176effb921d91d4494f0aa2919fd0Jim Grosbach        ldmdb     r2!, {r1,r3-r6,sp}
11593b14a5c5469176effb921d91d4494f0aa2919fd0Jim Grosbach
116027debd60a152d39e421c57bce511f16d8439a670Jim Grosbach        @ system version
116127debd60a152d39e421c57bce511f16d8439a670Jim Grosbach        ldm r0, {r0, r2, lr}^
116227debd60a152d39e421c57bce511f16d8439a670Jim Grosbach        ldm sp!, {r0-r3, pc}^
116327debd60a152d39e421c57bce511f16d8439a670Jim Grosbach
1164e29e2afc738348c74966ed81b3568779247c9fbdChad Rosier@ CHECK: ldm   r2, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x92,0xe8]
1165e29e2afc738348c74966ed81b3568779247c9fbdChad Rosier@ CHECK: ldm   r2, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x92,0xe8]
1166e29e2afc738348c74966ed81b3568779247c9fbdChad Rosier@ CHECK: ldmib r2, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x92,0xe9]
1167e29e2afc738348c74966ed81b3568779247c9fbdChad Rosier@ CHECK: ldmda r2, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x12,0xe8]
1168e29e2afc738348c74966ed81b3568779247c9fbdChad Rosier@ CHECK: ldmdb r2, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x12,0xe9]
1169e29e2afc738348c74966ed81b3568779247c9fbdChad Rosier@ CHECK: ldm   r2, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x92,0xe8]
1170b7110cf5b5e4832e8ded6db7ab7577e3cfa2c462Chad Rosier
1171e29e2afc738348c74966ed81b3568779247c9fbdChad Rosier@ CHECK: ldm   r2!, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0xb2,0xe8]
1172e29e2afc738348c74966ed81b3568779247c9fbdChad Rosier@ CHECK: ldmib r2!, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0xb2,0xe9]
1173e29e2afc738348c74966ed81b3568779247c9fbdChad Rosier@ CHECK: ldmda r2!, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x32,0xe8]
1174e29e2afc738348c74966ed81b3568779247c9fbdChad Rosier@ CHECK: ldmdb r2!, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x32,0xe9]
1175e29e2afc738348c74966ed81b3568779247c9fbdChad Rosier@ CHECK: ldm	r0, {r0, r2, lr} ^          @ encoding: [0x05,0x40,0xd0,0xe8]
1176e29e2afc738348c74966ed81b3568779247c9fbdChad Rosier@ CHECK: ldm	sp!, {r0, r1, r2, r3, pc} ^ @ encoding: [0x0f,0x80,0xfd,0xe8]
11773b14a5c5469176effb921d91d4494f0aa2919fd0Jim Grosbach
117836711e4a3c0b53000ea594233bd619dbf252558cJim Grosbach
117936711e4a3c0b53000ea594233bd619dbf252558cJim Grosbach@------------------------------------------------------------------------------
118036711e4a3c0b53000ea594233bd619dbf252558cJim Grosbach@ LDREX/LDREXB/LDREXH/LDREXD
118136711e4a3c0b53000ea594233bd619dbf252558cJim Grosbach@------------------------------------------------------------------------------
118236711e4a3c0b53000ea594233bd619dbf252558cJim Grosbach        ldrexb  r3, [r4]
118336711e4a3c0b53000ea594233bd619dbf252558cJim Grosbach        ldrexh  r2, [r5]
118436711e4a3c0b53000ea594233bd619dbf252558cJim Grosbach        ldrex  r1, [r7]
118536711e4a3c0b53000ea594233bd619dbf252558cJim Grosbach        ldrexd  r6, r7, [r8]
118636711e4a3c0b53000ea594233bd619dbf252558cJim Grosbach
118736711e4a3c0b53000ea594233bd619dbf252558cJim Grosbach@ CHECK: ldrexb	r3, [r4]                @ encoding: [0x9f,0x3f,0xd4,0xe1]
118836711e4a3c0b53000ea594233bd619dbf252558cJim Grosbach@ CHECK: ldrexh	r2, [r5]                @ encoding: [0x9f,0x2f,0xf5,0xe1]
118936711e4a3c0b53000ea594233bd619dbf252558cJim Grosbach@ CHECK: ldrex	r1, [r7]                @ encoding: [0x9f,0x1f,0x97,0xe1]
119036711e4a3c0b53000ea594233bd619dbf252558cJim Grosbach@ CHECK: ldrexd	r6, r7, [r8]            @ encoding: [0x9f,0x6f,0xb8,0xe1]
119136711e4a3c0b53000ea594233bd619dbf252558cJim Grosbach
119263553c77cd1cf3b204d955fb65350db087aaff1dOwen Anderson@------------------------------------------------------------------------------
119363553c77cd1cf3b204d955fb65350db087aaff1dOwen Anderson@ LDRHT
119463553c77cd1cf3b204d955fb65350db087aaff1dOwen Anderson@------------------------------------------------------------------------------
119563553c77cd1cf3b204d955fb65350db087aaff1dOwen Anderson        ldrhthi	r8, [r11], #-0
119663553c77cd1cf3b204d955fb65350db087aaff1dOwen Anderson        ldrhthi	r8, [r11], #0
119763553c77cd1cf3b204d955fb65350db087aaff1dOwen Anderson
11981e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach@ CHECK: ldrhthi r8, [r11], #-0         @ encoding: [0xb0,0x80,0x7b,0x80]
11991e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach@ CHECK: ldrhthi r8, [r11], #0          @ encoding: [0xb0,0x80,0xfb,0x80]
120036711e4a3c0b53000ea594233bd619dbf252558cJim Grosbach
1201e540c7422ca13c950f0e8f6f93af7225bb7742a9Jim Grosbach@------------------------------------------------------------------------------
1202ee10ff89a2934636570cb17b756bf31b2a38aab5Jim Grosbach@ LSL
1203e540c7422ca13c950f0e8f6f93af7225bb7742a9Jim Grosbach@------------------------------------------------------------------------------
1204ee10ff89a2934636570cb17b756bf31b2a38aab5Jim Grosbach	lsl r2, r4, #31
1205ee10ff89a2934636570cb17b756bf31b2a38aab5Jim Grosbach	lsl r2, r4, #1
1206ee10ff89a2934636570cb17b756bf31b2a38aab5Jim Grosbach	lsl r2, r4, #0
12079f302c4fb3feeb36561a6eee0168ee5242d8ac20Jim Grosbach	lsl r4, #1
1208ee10ff89a2934636570cb17b756bf31b2a38aab5Jim Grosbach
1209ee10ff89a2934636570cb17b756bf31b2a38aab5Jim Grosbach@ CHECK: lsl	r2, r4, #31             @ encoding: [0x84,0x2f,0xa0,0xe1]
1210ee10ff89a2934636570cb17b756bf31b2a38aab5Jim Grosbach@ CHECK: lsl	r2, r4, #1              @ encoding: [0x84,0x20,0xa0,0xe1]
1211ee10ff89a2934636570cb17b756bf31b2a38aab5Jim Grosbach@ CHECK: mov	r2, r4                  @ encoding: [0x04,0x20,0xa0,0xe1]
12129f302c4fb3feeb36561a6eee0168ee5242d8ac20Jim Grosbach@ CHECK: lsl	r4, r4, #1              @ encoding: [0x84,0x40,0xa0,0xe1]
1213ee10ff89a2934636570cb17b756bf31b2a38aab5Jim Grosbach
1214ee10ff89a2934636570cb17b756bf31b2a38aab5Jim Grosbach
1215e540c7422ca13c950f0e8f6f93af7225bb7742a9Jim Grosbach@------------------------------------------------------------------------------
1216ee10ff89a2934636570cb17b756bf31b2a38aab5Jim Grosbach@ LSR
1217e540c7422ca13c950f0e8f6f93af7225bb7742a9Jim Grosbach@------------------------------------------------------------------------------
1218ee10ff89a2934636570cb17b756bf31b2a38aab5Jim Grosbach	lsr r2, r4, #32
1219ee10ff89a2934636570cb17b756bf31b2a38aab5Jim Grosbach	lsr r2, r4, #2
1220ee10ff89a2934636570cb17b756bf31b2a38aab5Jim Grosbach	lsr r2, r4, #0
12219f302c4fb3feeb36561a6eee0168ee5242d8ac20Jim Grosbach	lsr r4, #2
1222ee10ff89a2934636570cb17b756bf31b2a38aab5Jim Grosbach
1223ee10ff89a2934636570cb17b756bf31b2a38aab5Jim Grosbach@ CHECK: lsr	r2, r4, #32             @ encoding: [0x24,0x20,0xa0,0xe1]
1224ee10ff89a2934636570cb17b756bf31b2a38aab5Jim Grosbach@ CHECK: lsr	r2, r4, #2              @ encoding: [0x24,0x21,0xa0,0xe1]
1225ee10ff89a2934636570cb17b756bf31b2a38aab5Jim Grosbach@ CHECK: mov	r2, r4                  @ encoding: [0x04,0x20,0xa0,0xe1]
12269f302c4fb3feeb36561a6eee0168ee5242d8ac20Jim Grosbach@ CHECK: lsr	r4, r4, #2              @ encoding: [0x24,0x41,0xa0,0xe1]
1227ee10ff89a2934636570cb17b756bf31b2a38aab5Jim Grosbach
1228e540c7422ca13c950f0e8f6f93af7225bb7742a9Jim Grosbach
1229e540c7422ca13c950f0e8f6f93af7225bb7742a9Jim Grosbach@------------------------------------------------------------------------------
1230e540c7422ca13c950f0e8f6f93af7225bb7742a9Jim Grosbach@ MCR/MCR2
1231e540c7422ca13c950f0e8f6f93af7225bb7742a9Jim Grosbach@------------------------------------------------------------------------------
1232e540c7422ca13c950f0e8f6f93af7225bb7742a9Jim Grosbach        mcr  p7, #1, r5, c1, c1, #4
1233e540c7422ca13c950f0e8f6f93af7225bb7742a9Jim Grosbach        mcr2  p7, #1, r5, c1, c1, #4
1234e540c7422ca13c950f0e8f6f93af7225bb7742a9Jim Grosbach
12359c6712721c114f8e67b9a6b3cb1dd5d18b4cb435Jim Grosbach@ CHECK: mcr  p7, #1, r5, c1, c1, #4    @ encoding: [0x91,0x57,0x21,0xee]
12369c6712721c114f8e67b9a6b3cb1dd5d18b4cb435Jim Grosbach@ CHECK: mcr2  p7, #1, r5, c1, c1, #4   @ encoding: [0x91,0x57,0x21,0xfe]
12373b14a5c5469176effb921d91d4494f0aa2919fd0Jim Grosbach
1238c19bd321362166805194cbaf170e06a4790d2da9Tim Northover        mcrls  p7, #1, r5, c1, c1, #4
1239c19bd321362166805194cbaf170e06a4790d2da9Tim Northover@ CHECK: mcrls  p7, #1, r5, c1, c1, #4   @ encoding: [0x91,0x57,0x21,0x9e]
1240c19bd321362166805194cbaf170e06a4790d2da9Tim Northover
12413b14a5c5469176effb921d91d4494f0aa2919fd0Jim Grosbach@------------------------------------------------------------------------------
1242c8ae39e746a20dc326def0ccfc052df3e21f16d3Jim Grosbach@ MCRR/MCRR2
1243c8ae39e746a20dc326def0ccfc052df3e21f16d3Jim Grosbach@------------------------------------------------------------------------------
1244c8ae39e746a20dc326def0ccfc052df3e21f16d3Jim Grosbach        mcrr  p7, #15, r5, r4, c1
1245c8ae39e746a20dc326def0ccfc052df3e21f16d3Jim Grosbach        mcrr2  p7, #15, r5, r4, c1
1246c8ae39e746a20dc326def0ccfc052df3e21f16d3Jim Grosbach
12479c6712721c114f8e67b9a6b3cb1dd5d18b4cb435Jim Grosbach@ CHECK: mcrr  p7, #15, r5, r4, c1      @ encoding: [0xf1,0x57,0x44,0xec]
12489c6712721c114f8e67b9a6b3cb1dd5d18b4cb435Jim Grosbach@ CHECK: mcrr2  p7, #15, r5, r4, c1     @ encoding: [0xf1,0x57,0x44,0xfc]
1249c8ae39e746a20dc326def0ccfc052df3e21f16d3Jim Grosbach
1250c19bd321362166805194cbaf170e06a4790d2da9Tim Northover        mcrrgt  p7, #15, r5, r4, c1
1251c19bd321362166805194cbaf170e06a4790d2da9Tim Northover@ CHECK: mcrrgt  p7, #15, r5, r4, c1     @ encoding: [0xf1,0x57,0x44,0xcc]
125270d8fcfaa04eb20541b006a8fb97cbc1d3033cc4Jim Grosbach
125370d8fcfaa04eb20541b006a8fb97cbc1d3033cc4Jim Grosbach@------------------------------------------------------------------------------
125470d8fcfaa04eb20541b006a8fb97cbc1d3033cc4Jim Grosbach@ MLA
125570d8fcfaa04eb20541b006a8fb97cbc1d3033cc4Jim Grosbach@------------------------------------------------------------------------------
125670d8fcfaa04eb20541b006a8fb97cbc1d3033cc4Jim Grosbach        mla  r1,r2,r3,r4
125770d8fcfaa04eb20541b006a8fb97cbc1d3033cc4Jim Grosbach        mlas r1,r2,r3,r4
125870d8fcfaa04eb20541b006a8fb97cbc1d3033cc4Jim Grosbach        mlane  r1,r2,r3,r4
125970d8fcfaa04eb20541b006a8fb97cbc1d3033cc4Jim Grosbach        mlasne r1,r2,r3,r4
126070d8fcfaa04eb20541b006a8fb97cbc1d3033cc4Jim Grosbach
12619c6712721c114f8e67b9a6b3cb1dd5d18b4cb435Jim Grosbach@ CHECK: mla 	r1, r2, r3, r4          @ encoding: [0x92,0x43,0x21,0xe0]
12629c6712721c114f8e67b9a6b3cb1dd5d18b4cb435Jim Grosbach@ CHECK: mlas	r1, r2, r3, r4          @ encoding: [0x92,0x43,0x31,0xe0]
12639c6712721c114f8e67b9a6b3cb1dd5d18b4cb435Jim Grosbach@ CHECK: mlane 	r1, r2, r3, r4          @ encoding: [0x92,0x43,0x21,0x10]
12649c6712721c114f8e67b9a6b3cb1dd5d18b4cb435Jim Grosbach@ CHECK: mlasne	r1, r2, r3, r4          @ encoding: [0x92,0x43,0x31,0x10]
126570d8fcfaa04eb20541b006a8fb97cbc1d3033cc4Jim Grosbach
126670d8fcfaa04eb20541b006a8fb97cbc1d3033cc4Jim Grosbach@------------------------------------------------------------------------------
126770d8fcfaa04eb20541b006a8fb97cbc1d3033cc4Jim Grosbach@ MLS
126870d8fcfaa04eb20541b006a8fb97cbc1d3033cc4Jim Grosbach@------------------------------------------------------------------------------
126970d8fcfaa04eb20541b006a8fb97cbc1d3033cc4Jim Grosbach        mls  r2,r5,r6,r3
127070d8fcfaa04eb20541b006a8fb97cbc1d3033cc4Jim Grosbach        mlsne  r2,r5,r6,r3
127170d8fcfaa04eb20541b006a8fb97cbc1d3033cc4Jim Grosbach
127270d8fcfaa04eb20541b006a8fb97cbc1d3033cc4Jim Grosbach@ CHECK: mls	r2, r5, r6, r3          @ encoding: [0x95,0x36,0x62,0xe0]
127370d8fcfaa04eb20541b006a8fb97cbc1d3033cc4Jim Grosbach@ CHECK: mlsne	r2, r5, r6, r3          @ encoding: [0x95,0x36,0x62,0x10]
127470d8fcfaa04eb20541b006a8fb97cbc1d3033cc4Jim Grosbach
1275c8ae39e746a20dc326def0ccfc052df3e21f16d3Jim Grosbach@------------------------------------------------------------------------------
1276ffa3225e26cc1977d20f0d9649fcd6f38a3c4815Jim Grosbach@ MOV (immediate)
1277ffa3225e26cc1977d20f0d9649fcd6f38a3c4815Jim Grosbach@------------------------------------------------------------------------------
12781e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        mov r3, #7
1279ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        mov r3, $7
1280ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        mov r3, 7
1281ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        mov r3, -7
12821e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        mov r4, #0xff0
12831e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        mov r5, #0xff0000
1284ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        mov r7, #42, #0
1285ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        mov r7, #42, #10
1286ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines	mov r7, #(0xff << 16)
1287ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        mov r7, #-2147483638
1288ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        mov r7, #42, #2
1289ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        mov pc, #42, #2
1290ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        mov r7, #0, #2
1291ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        mov r7, #40, #2
1292ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        mov r7, $40, $2
1293ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        mov r7, 40, 2
1294ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        mov r7, (2 * 20), (1 << 1)
1295ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        mov r7, #42, #30
12961e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        mov r6, #0xffff
12971e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        movw r9, #0xffff
12981e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        movs r3, #7
12991e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        moveq r4, #0xff0
13001e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        movseq r5, #0xff0000
1301ffa3225e26cc1977d20f0d9649fcd6f38a3c4815Jim Grosbach
1302ffa3225e26cc1977d20f0d9649fcd6f38a3c4815Jim Grosbach@ CHECK: mov	r3, #7                  @ encoding: [0x07,0x30,0xa0,0xe3]
1303ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: mov	r3, #7                  @ encoding: [0x07,0x30,0xa0,0xe3]
1304ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: mov	r3, #7                  @ encoding: [0x07,0x30,0xa0,0xe3]
1305ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: mvn	r3, #6                  @ encoding: [0x06,0x30,0xe0,0xe3]
1306ffa3225e26cc1977d20f0d9649fcd6f38a3c4815Jim Grosbach@ CHECK: mov	r4, #4080               @ encoding: [0xff,0x4e,0xa0,0xe3]
1307ffa3225e26cc1977d20f0d9649fcd6f38a3c4815Jim Grosbach@ CHECK: mov	r5, #16711680           @ encoding: [0xff,0x58,0xa0,0xe3]
1308ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: mov    r7, #42                 @ encoding: [0x2a,0x70,0xa0,0xe3]
1309ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: mov    r7, #176160768          @ encoding: [0x2a,0x75,0xa0,0xe3]
1310ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: mov	r7, #16711680           @ encoding: [0xff,0x78,0xa0,0xe3]
1311ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: mov    r7, #-2147483638        @ encoding: [0x2a,0x71,0xa0,0xe3]
1312ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: mov    r7, #-2147483638        @ encoding: [0x2a,0x71,0xa0,0xe3]
1313ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: mov    pc, #2147483658         @ encoding: [0x2a,0xf1,0xa0,0xe3]
1314ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: mov    r7, #0, #2              @ encoding: [0x00,0x71,0xa0,0xe3]
1315ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: mov    r7, #40, #2             @ encoding: [0x28,0x71,0xa0,0xe3]
1316ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: mov    r7, #40, #2             @ encoding: [0x28,0x71,0xa0,0xe3]
1317ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: mov    r7, #40, #2             @ encoding: [0x28,0x71,0xa0,0xe3]
1318ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: mov    r7, #40, #2             @ encoding: [0x28,0x71,0xa0,0xe3]
1319ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: mov    r7, #42, #30            @ encoding: [0x2a,0x7f,0xa0,0xe3]
1320ffa3225e26cc1977d20f0d9649fcd6f38a3c4815Jim Grosbach@ CHECK: movw	r6, #65535              @ encoding: [0xff,0x6f,0x0f,0xe3]
1321ffa3225e26cc1977d20f0d9649fcd6f38a3c4815Jim Grosbach@ CHECK: movw	r9, #65535              @ encoding: [0xff,0x9f,0x0f,0xe3]
13225f16057d1e4b711d492091bc555693a03d4a1b6eJim Grosbach@ CHECK: movs	r3, #7                  @ encoding: [0x07,0x30,0xb0,0xe3]
13235f16057d1e4b711d492091bc555693a03d4a1b6eJim Grosbach@ CHECK: moveq	r4, #4080               @ encoding: [0xff,0x4e,0xa0,0x03]
13245f16057d1e4b711d492091bc555693a03d4a1b6eJim Grosbach@ CHECK: movseq	r5, #16711680           @ encoding: [0xff,0x58,0xb0,0x03]
13255f16057d1e4b711d492091bc555693a03d4a1b6eJim Grosbach
13265f16057d1e4b711d492091bc555693a03d4a1b6eJim Grosbach@------------------------------------------------------------------------------
13275f16057d1e4b711d492091bc555693a03d4a1b6eJim Grosbach@ MOV (register)
13285f16057d1e4b711d492091bc555693a03d4a1b6eJim Grosbach@------------------------------------------------------------------------------
13295f16057d1e4b711d492091bc555693a03d4a1b6eJim Grosbach        mov r2, r3
13305f16057d1e4b711d492091bc555693a03d4a1b6eJim Grosbach        movs r2, r3
13315f16057d1e4b711d492091bc555693a03d4a1b6eJim Grosbach        moveq r2, r3
13325f16057d1e4b711d492091bc555693a03d4a1b6eJim Grosbach        movseq r2, r3
133304b5d93250bef585631a583a85f6733b1bdc8c52Jim Grosbach        mov r12, r8, lsl #(2 - 2)
133404b5d93250bef585631a583a85f6733b1bdc8c52Jim Grosbach        lsl r2, r3, #(2 - 2)
133504b5d93250bef585631a583a85f6733b1bdc8c52Jim Grosbach        mov r12, r8, lsr #(2 - 2)
133604b5d93250bef585631a583a85f6733b1bdc8c52Jim Grosbach        lsr r2, r3, #(2 - 2)
133704b5d93250bef585631a583a85f6733b1bdc8c52Jim Grosbach        mov r12, r8, asr #(2 - 2)
133804b5d93250bef585631a583a85f6733b1bdc8c52Jim Grosbach        asr r2, r3, #(2 - 2)
133904b5d93250bef585631a583a85f6733b1bdc8c52Jim Grosbach        mov r12, r8, ror #(2 - 2)
134004b5d93250bef585631a583a85f6733b1bdc8c52Jim Grosbach        ror r2, r3, #(2 - 2)
13415f16057d1e4b711d492091bc555693a03d4a1b6eJim Grosbach
13425f16057d1e4b711d492091bc555693a03d4a1b6eJim Grosbach@ CHECK: mov	r2, r3                  @ encoding: [0x03,0x20,0xa0,0xe1]
13435f16057d1e4b711d492091bc555693a03d4a1b6eJim Grosbach@ CHECK: movs	r2, r3                  @ encoding: [0x03,0x20,0xb0,0xe1]
13445f16057d1e4b711d492091bc555693a03d4a1b6eJim Grosbach@ CHECK: moveq	r2, r3                  @ encoding: [0x03,0x20,0xa0,0x01]
13455f16057d1e4b711d492091bc555693a03d4a1b6eJim Grosbach@ CHECK: movseq	r2, r3                  @ encoding: [0x03,0x20,0xb0,0x01]
134604b5d93250bef585631a583a85f6733b1bdc8c52Jim Grosbach@ CHECK: mov	r12, r8                 @ encoding: [0x08,0xc0,0xa0,0xe1]
134704b5d93250bef585631a583a85f6733b1bdc8c52Jim Grosbach@ CHECK: mov	r2, r3                  @ encoding: [0x03,0x20,0xa0,0xe1]
134804b5d93250bef585631a583a85f6733b1bdc8c52Jim Grosbach@ CHECK: mov	r12, r8                 @ encoding: [0x08,0xc0,0xa0,0xe1]
134904b5d93250bef585631a583a85f6733b1bdc8c52Jim Grosbach@ CHECK: mov	r2, r3                  @ encoding: [0x03,0x20,0xa0,0xe1]
135004b5d93250bef585631a583a85f6733b1bdc8c52Jim Grosbach@ CHECK: mov	r12, r8                 @ encoding: [0x08,0xc0,0xa0,0xe1]
135104b5d93250bef585631a583a85f6733b1bdc8c52Jim Grosbach@ CHECK: mov	r2, r3                  @ encoding: [0x03,0x20,0xa0,0xe1]
135204b5d93250bef585631a583a85f6733b1bdc8c52Jim Grosbach@ CHECK: mov	r12, r8                 @ encoding: [0x08,0xc0,0xa0,0xe1]
135304b5d93250bef585631a583a85f6733b1bdc8c52Jim Grosbach@ CHECK: mov	r2, r3                  @ encoding: [0x03,0x20,0xa0,0xe1]
135404b5d93250bef585631a583a85f6733b1bdc8c52Jim Grosbach
1355ffa3225e26cc1977d20f0d9649fcd6f38a3c4815Jim Grosbach
1356ffa3225e26cc1977d20f0d9649fcd6f38a3c4815Jim Grosbach@------------------------------------------------------------------------------
13571a2be4db5b12cb7bfa351bcebd5e94b0decb021fJim Grosbach@ MOVT
13581a2be4db5b12cb7bfa351bcebd5e94b0decb021fJim Grosbach@------------------------------------------------------------------------------
13591e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        movt r3, #7
13601e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        movt r6, #0xffff
13611e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        movteq r4, #0xff0
13621a2be4db5b12cb7bfa351bcebd5e94b0decb021fJim Grosbach
13631a2be4db5b12cb7bfa351bcebd5e94b0decb021fJim Grosbach@ CHECK: movt	r3, #7                  @ encoding: [0x07,0x30,0x40,0xe3]
13641a2be4db5b12cb7bfa351bcebd5e94b0decb021fJim Grosbach@ CHECK: movt	r6, #65535              @ encoding: [0xff,0x6f,0x4f,0xe3]
13651a2be4db5b12cb7bfa351bcebd5e94b0decb021fJim Grosbach@ CHECK: movteq	r4, #4080               @ encoding: [0xf0,0x4f,0x40,0x03]
13661a2be4db5b12cb7bfa351bcebd5e94b0decb021fJim Grosbach
13672317fe1584e02582c616c1c4d15954999ff5525aJim Grosbach
13682317fe1584e02582c616c1c4d15954999ff5525aJim Grosbach@------------------------------------------------------------------------------
13692317fe1584e02582c616c1c4d15954999ff5525aJim Grosbach@ MRC/MRC2
13702317fe1584e02582c616c1c4d15954999ff5525aJim Grosbach@------------------------------------------------------------------------------
13712317fe1584e02582c616c1c4d15954999ff5525aJim Grosbach        mrc  p14, #0, r1, c1, c2, #4
1372f86e436fb95670ed110818fefa403f21ae104639Mihai Popa        mrc  p15, #7, apsr_nzcv, c15, c6, #6
13732317fe1584e02582c616c1c4d15954999ff5525aJim Grosbach        mrc2  p14, #0, r1, c1, c2, #4
13741b91231347c00bf1be46bdd5b27ae8c45fdc0d0cArtyom Skrobov        mrc2  p9, #7, apsr_nzcv, c15, c0, #1
1375f86e436fb95670ed110818fefa403f21ae104639Mihai Popa
1376f86e436fb95670ed110818fefa403f21ae104639Mihai Popa@ CHECK: mrc  p14, #0, r1, c1, c2, #4             @ encoding: [0x92,0x1e,0x11,0xee]
1377f86e436fb95670ed110818fefa403f21ae104639Mihai Popa@ CHECK: mrc  p15, #7, apsr_nzcv, c15, c6, #6     @ encoding: [0xd6,0xff,0xff,0xee]
1378f86e436fb95670ed110818fefa403f21ae104639Mihai Popa@ CHECK: mrc2  p14, #0, r1, c1, c2, #4            @ encoding: [0x92,0x1e,0x11,0xfe]
13791b91231347c00bf1be46bdd5b27ae8c45fdc0d0cArtyom Skrobov@ CHECK: mrc2  p9, #7, apsr_nzcv, c15, c0, #1     @ encoding: [0x30,0xf9,0xff,0xfe]
13802317fe1584e02582c616c1c4d15954999ff5525aJim Grosbach
13814a378b95aa0f24ba461e512608b8aaeaa803996fMihai Popa         mrceq  p15, #7, apsr_nzcv, c15, c6, #6
13824a378b95aa0f24ba461e512608b8aaeaa803996fMihai Popa@ CHECK: mrceq  p15, #7, apsr_nzcv, c15, c6, #6   @ encoding: [0xd6,0xff,0xff,0x0e]
1383c19bd321362166805194cbaf170e06a4790d2da9Tim Northover
13842317fe1584e02582c616c1c4d15954999ff5525aJim Grosbach@------------------------------------------------------------------------------
13852317fe1584e02582c616c1c4d15954999ff5525aJim Grosbach@ MRRC/MRRC2
13862317fe1584e02582c616c1c4d15954999ff5525aJim Grosbach@------------------------------------------------------------------------------
13872317fe1584e02582c616c1c4d15954999ff5525aJim Grosbach        mrrc  p7, #1, r5, r4, c1
13882317fe1584e02582c616c1c4d15954999ff5525aJim Grosbach        mrrc2  p7, #1, r5, r4, c1
13892317fe1584e02582c616c1c4d15954999ff5525aJim Grosbach
13902317fe1584e02582c616c1c4d15954999ff5525aJim Grosbach@ CHECK: mrrc  p7, #1, r5, r4, c1       @ encoding: [0x11,0x57,0x54,0xec]
13912317fe1584e02582c616c1c4d15954999ff5525aJim Grosbach@ CHECK: mrrc2  p7, #1, r5, r4, c1      @ encoding: [0x11,0x57,0x54,0xfc]
13922317fe1584e02582c616c1c4d15954999ff5525aJim Grosbach
1393c19bd321362166805194cbaf170e06a4790d2da9Tim Northover        mrrclo  p7, #1, r5, r4, c1
1394c19bd321362166805194cbaf170e06a4790d2da9Tim Northover@ CHECK: mrrclo  p7, #1, r5, r4, c1      @ encoding: [0x11,0x57,0x54,0x3c]
139580d01dd3d19a84621324ac444c6749602df7a513Jim Grosbach
139680d01dd3d19a84621324ac444c6749602df7a513Jim Grosbach@------------------------------------------------------------------------------
139780d01dd3d19a84621324ac444c6749602df7a513Jim Grosbach@ MRS
139880d01dd3d19a84621324ac444c6749602df7a513Jim Grosbach@------------------------------------------------------------------------------
139980d01dd3d19a84621324ac444c6749602df7a513Jim Grosbach        mrs  r8, apsr
140080d01dd3d19a84621324ac444c6749602df7a513Jim Grosbach        mrs  r8, cpsr
140180d01dd3d19a84621324ac444c6749602df7a513Jim Grosbach        mrs  r8, spsr
14029c6712721c114f8e67b9a6b3cb1dd5d18b4cb435Jim Grosbach@ CHECK: mrs  r8, apsr                  @ encoding: [0x00,0x80,0x0f,0xe1]
14039c6712721c114f8e67b9a6b3cb1dd5d18b4cb435Jim Grosbach@ CHECK: mrs  r8, apsr                  @ encoding: [0x00,0x80,0x0f,0xe1]
14049c6712721c114f8e67b9a6b3cb1dd5d18b4cb435Jim Grosbach@ CHECK: mrs  r8, spsr                  @ encoding: [0x00,0x80,0x4f,0xe1]
140580d01dd3d19a84621324ac444c6749602df7a513Jim Grosbach
140680d01dd3d19a84621324ac444c6749602df7a513Jim Grosbach
140780d01dd3d19a84621324ac444c6749602df7a513Jim Grosbach
14081a2be4db5b12cb7bfa351bcebd5e94b0decb021fJim Grosbach@------------------------------------------------------------------------------
1409b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach@ MSR
1410b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach@------------------------------------------------------------------------------
1411b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach
1412b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach        msr  apsr, #5
1413ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        msr  apsr, $5
1414ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        msr  apsr, 5
1415b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach        msr  apsr_g, #5
1416b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach        msr  apsr_nzcvq, #5
1417b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach        msr  APSR_nzcvq, #5
1418b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach        msr  apsr_nzcvqg, #5
1419b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach        msr  cpsr_fc, #5
1420b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach        msr  cpsr_c, #5
1421b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach        msr  cpsr_x, #5
1422b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach        msr  cpsr_fc, #5
1423b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach        msr  cpsr_all, #5
1424b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach        msr  cpsr_fsx, #5
1425b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach        msr  spsr_fc, #5
1426b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach        msr  SPSR_fsxc, #5
1427b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach        msr  cpsr_fsxc, #5
1428ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines	msr  apsr_nzcvqg, #(0xff << 16)
1429ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        msr  APSR_nzcvq, #42, #2
1430ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        msr  apsr_nzcvqg, #2147483658
1431ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        msr  SPSR_fsxc, #40, #2
1432ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        msr  SPSR_fsxc, $40, $2
1433ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        msr  SPSR_fsxc, 40, 2
1434ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        msr  SPSR_fsxc, (2 * 20), (1 << 1)
1435b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach
1436bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach@ CHECK: msr	APSR_nzcvq, #5          @ encoding: [0x05,0xf0,0x28,0xe3]
1437ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: msr	APSR_nzcvq, #5          @ encoding: [0x05,0xf0,0x28,0xe3]
1438ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: msr	APSR_nzcvq, #5          @ encoding: [0x05,0xf0,0x28,0xe3]
1439b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach@ CHECK: msr	APSR_g, #5              @ encoding: [0x05,0xf0,0x24,0xe3]
1440b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach@ CHECK: msr	APSR_nzcvq, #5          @ encoding: [0x05,0xf0,0x28,0xe3]
1441b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach@ CHECK: msr	APSR_nzcvq, #5          @ encoding: [0x05,0xf0,0x28,0xe3]
1442b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach@ CHECK: msr	APSR_nzcvqg, #5         @ encoding: [0x05,0xf0,0x2c,0xe3]
1443cd20c58e980552daef182247005cf905fe8b06baOwen Anderson@ CHECK: msr	CPSR_fc, #5             @ encoding: [0x05,0xf0,0x29,0xe3]
1444cd20c58e980552daef182247005cf905fe8b06baOwen Anderson@ CHECK: msr	CPSR_c, #5              @ encoding: [0x05,0xf0,0x21,0xe3]
1445cd20c58e980552daef182247005cf905fe8b06baOwen Anderson@ CHECK: msr	CPSR_x, #5              @ encoding: [0x05,0xf0,0x22,0xe3]
1446cd20c58e980552daef182247005cf905fe8b06baOwen Anderson@ CHECK: msr	CPSR_fc, #5             @ encoding: [0x05,0xf0,0x29,0xe3]
1447cd20c58e980552daef182247005cf905fe8b06baOwen Anderson@ CHECK: msr	CPSR_fc, #5             @ encoding: [0x05,0xf0,0x29,0xe3]
1448cd20c58e980552daef182247005cf905fe8b06baOwen Anderson@ CHECK: msr	CPSR_fsx, #5            @ encoding: [0x05,0xf0,0x2e,0xe3]
1449cd20c58e980552daef182247005cf905fe8b06baOwen Anderson@ CHECK: msr	SPSR_fc, #5             @ encoding: [0x05,0xf0,0x69,0xe3]
1450cd20c58e980552daef182247005cf905fe8b06baOwen Anderson@ CHECK: msr	SPSR_fsxc, #5           @ encoding: [0x05,0xf0,0x6f,0xe3]
1451cd20c58e980552daef182247005cf905fe8b06baOwen Anderson@ CHECK: msr	CPSR_fsxc, #5           @ encoding: [0x05,0xf0,0x2f,0xe3]
1452ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: msr	APSR_nzcvqg, #16711680  @ encoding: [0xff,0xf8,0x2c,0xe3]
1453ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: msr    APSR_nzcvq, #2147483658 @ encoding: [0x2a,0xf1,0x28,0xe3]
1454ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: msr    APSR_nzcvqg, #2147483658 @ encoding: [0x2a,0xf1,0x2c,0xe3]
1455ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: msr    SPSR_fsxc, #40, #2      @ encoding: [0x28,0xf1,0x6f,0xe3]
1456ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: msr    SPSR_fsxc, #40, #2      @ encoding: [0x28,0xf1,0x6f,0xe3]
1457ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: msr    SPSR_fsxc, #40, #2      @ encoding: [0x28,0xf1,0x6f,0xe3]
1458ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: msr    SPSR_fsxc, #40, #2      @ encoding: [0x28,0xf1,0x6f,0xe3]
1459b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach
1460b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach        msr  apsr, r0
1461b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach        msr  apsr_g, r0
1462b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach        msr  apsr_nzcvq, r0
1463b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach        msr  APSR_nzcvq, r0
1464b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach        msr  apsr_nzcvqg, r0
1465b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach        msr  cpsr_fc, r0
1466b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach        msr  cpsr_c, r0
1467b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach        msr  cpsr_x, r0
1468b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach        msr  cpsr_fc, r0
1469b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach        msr  cpsr_all, r0
1470b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach        msr  cpsr_fsx, r0
1471b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach        msr  spsr_fc, r0
1472b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach        msr  SPSR_fsxc, r0
1473b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach        msr  cpsr_fsxc, r0
1474b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach
14759c6712721c114f8e67b9a6b3cb1dd5d18b4cb435Jim Grosbach@ CHECK: msr  APSR_nzcvq, r0            @ encoding: [0x00,0xf0,0x28,0xe1]
14769c6712721c114f8e67b9a6b3cb1dd5d18b4cb435Jim Grosbach@ CHECK: msr  APSR_g, r0                @ encoding: [0x00,0xf0,0x24,0xe1]
14779c6712721c114f8e67b9a6b3cb1dd5d18b4cb435Jim Grosbach@ CHECK: msr  APSR_nzcvq, r0            @ encoding: [0x00,0xf0,0x28,0xe1]
14789c6712721c114f8e67b9a6b3cb1dd5d18b4cb435Jim Grosbach@ CHECK: msr  APSR_nzcvq, r0            @ encoding: [0x00,0xf0,0x28,0xe1]
14799c6712721c114f8e67b9a6b3cb1dd5d18b4cb435Jim Grosbach@ CHECK: msr  APSR_nzcvqg, r0           @ encoding: [0x00,0xf0,0x2c,0xe1]
1480cd20c58e980552daef182247005cf905fe8b06baOwen Anderson@ CHECK: msr  CPSR_fc, r0               @ encoding: [0x00,0xf0,0x29,0xe1]
1481cd20c58e980552daef182247005cf905fe8b06baOwen Anderson@ CHECK: msr  CPSR_c, r0                @ encoding: [0x00,0xf0,0x21,0xe1]
1482cd20c58e980552daef182247005cf905fe8b06baOwen Anderson@ CHECK: msr  CPSR_x, r0                @ encoding: [0x00,0xf0,0x22,0xe1]
1483cd20c58e980552daef182247005cf905fe8b06baOwen Anderson@ CHECK: msr  CPSR_fc, r0               @ encoding: [0x00,0xf0,0x29,0xe1]
1484cd20c58e980552daef182247005cf905fe8b06baOwen Anderson@ CHECK: msr  CPSR_fc, r0               @ encoding: [0x00,0xf0,0x29,0xe1]
1485cd20c58e980552daef182247005cf905fe8b06baOwen Anderson@ CHECK: msr  CPSR_fsx, r0              @ encoding: [0x00,0xf0,0x2e,0xe1]
1486cd20c58e980552daef182247005cf905fe8b06baOwen Anderson@ CHECK: msr  SPSR_fc, r0               @ encoding: [0x00,0xf0,0x69,0xe1]
1487cd20c58e980552daef182247005cf905fe8b06baOwen Anderson@ CHECK: msr  SPSR_fsxc, r0             @ encoding: [0x00,0xf0,0x6f,0xe1]
1488cd20c58e980552daef182247005cf905fe8b06baOwen Anderson@ CHECK: msr  CPSR_fsxc, r0             @ encoding: [0x00,0xf0,0x2f,0xe1]
1489b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach
1490b29b4dd988c50d5c4a15cd196e7910bf46f30b83Jim Grosbach@------------------------------------------------------------------------------
1491ab40f4b737b0a87c4048a9ad2f0c02be735e3770Jim Grosbach@ MUL
1492ab40f4b737b0a87c4048a9ad2f0c02be735e3770Jim Grosbach@------------------------------------------------------------------------------
14931e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        mul r5, r6, r7
14941e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        muls r5, r6, r7
14951e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        mulgt r5, r6, r7
14961e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        mulsle r5, r6, r7
1497d2586daf069f480e924cd7dd2079dd39de331541Jim Grosbach        mul r11, r5
1498ab40f4b737b0a87c4048a9ad2f0c02be735e3770Jim Grosbach
1499ab40f4b737b0a87c4048a9ad2f0c02be735e3770Jim Grosbach@ CHECK: mul	r5, r6, r7              @ encoding: [0x96,0x07,0x05,0xe0]
1500ab40f4b737b0a87c4048a9ad2f0c02be735e3770Jim Grosbach@ CHECK: muls	r5, r6, r7              @ encoding: [0x96,0x07,0x15,0xe0]
1501ab40f4b737b0a87c4048a9ad2f0c02be735e3770Jim Grosbach@ CHECK: mulgt	r5, r6, r7              @ encoding: [0x96,0x07,0x05,0xc0]
1502ab40f4b737b0a87c4048a9ad2f0c02be735e3770Jim Grosbach@ CHECK: mulsle	r5, r6, r7              @ encoding: [0x96,0x07,0x15,0xd0]
1503ab40f4b737b0a87c4048a9ad2f0c02be735e3770Jim Grosbach
1504c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach
1505c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach@------------------------------------------------------------------------------
1506c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach@ MVN (immediate)
1507c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach@------------------------------------------------------------------------------
15081e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        mvn r3, #7
1509ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        mvn r3, $7
1510ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        mvn r3, 7
1511ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        mvn r3, -7
1512ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        mvn r7, #~0xffffff00
15131e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        mvn r4, #0xff0
15141e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        mvn r5, #0xff0000
1515ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines	mvn r7, #(0xff << 16)
1516ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        mvn r7, #-2147483638
1517ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        mvn r7, #42, #2
1518ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        mvn r7, #40, #2
1519ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        mvn r7, $40, $2
1520ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        mvn r7, 40, 2
1521ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        mvn r7, (2 * 20), (1 << 1)
15221e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        mvns r3, #7
15231e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        mvneq r4, #0xff0
15241e0fff17f3182a2bef5e06cca996a8d16e53cb46Jim Grosbach        mvnseq r5, #0xff0000
1525c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach
1526c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach@ CHECK: mvn	r3, #7                  @ encoding: [0x07,0x30,0xe0,0xe3]
1527ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: mvn	r3, #7                  @ encoding: [0x07,0x30,0xe0,0xe3]
1528ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: mvn	r3, #7                  @ encoding: [0x07,0x30,0xe0,0xe3]
1529ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: mov	r3, #6                  @ encoding: [0x06,0x30,0xa0,0xe3]
1530ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: mvn    r7, #255                @ encoding: [0xff,0x70,0xe0,0xe3]
1531c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach@ CHECK: mvn	r4, #4080               @ encoding: [0xff,0x4e,0xe0,0xe3]
1532c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach@ CHECK: mvn	r5, #16711680           @ encoding: [0xff,0x58,0xe0,0xe3]
1533ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: mvn	r7, #16711680           @ encoding: [0xff,0x78,0xe0,0xe3]
1534ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: mvn    r7, #-2147483638        @ encoding: [0x2a,0x71,0xe0,0xe3]
1535ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: mvn    r7, #-2147483638        @ encoding: [0x2a,0x71,0xe0,0xe3]
1536ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: mvn    r7, #40, #2             @ encoding: [0x28,0x71,0xe0,0xe3]
1537ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: mvn    r7, #40, #2             @ encoding: [0x28,0x71,0xe0,0xe3]
1538ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: mvn    r7, #40, #2             @ encoding: [0x28,0x71,0xe0,0xe3]
1539ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: mvn    r7, #40, #2             @ encoding: [0x28,0x71,0xe0,0xe3]
1540c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach@ CHECK: mvns	r3, #7                  @ encoding: [0x07,0x30,0xf0,0xe3]
1541c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach@ CHECK: mvneq	r4, #4080               @ encoding: [0xff,0x4e,0xe0,0x03]
1542c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach@ CHECK: mvnseq	r5, #16711680           @ encoding: [0xff,0x58,0xf0,0x03]
1543c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach
1544c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach
1545c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach@------------------------------------------------------------------------------
1546c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach@ MVN (register)
1547c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach@------------------------------------------------------------------------------
1548c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach        mvn r2, r3
1549c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach        mvns r2, r3
1550c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach        mvn r5, r6, lsl #19
1551c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach        mvn r5, r6, lsr #9
1552c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach        mvn r5, r6, asr #4
1553c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach        mvn r5, r6, ror #6
1554c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach        mvn r5, r6, rrx
1555c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach        mvneq r2, r3
1556c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach        mvnseq r2, r3, lsl #10
1557c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach
1558c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach@ CHECK: mvn	r2, r3                  @ encoding: [0x03,0x20,0xe0,0xe1]
1559c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach@ CHECK: mvns	r2, r3                  @ encoding: [0x03,0x20,0xf0,0xe1]
1560c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach@ CHECK: mvn	r5, r6, lsl #19         @ encoding: [0x86,0x59,0xe0,0xe1]
1561c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach@ CHECK: mvn	r5, r6, lsr #9          @ encoding: [0xa6,0x54,0xe0,0xe1]
1562c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach@ CHECK: mvn	r5, r6, asr #4          @ encoding: [0x46,0x52,0xe0,0xe1]
1563c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach@ CHECK: mvn	r5, r6, ror #6          @ encoding: [0x66,0x53,0xe0,0xe1]
1564c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach@ CHECK: mvn	r5, r6, rrx             @ encoding: [0x66,0x50,0xe0,0xe1]
1565c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach@ CHECK: mvneq	r2, r3                  @ encoding: [0x03,0x20,0xe0,0x01]
1566c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach@ CHECK: mvnseq	r2, r3, lsl #10         @ encoding: [0x03,0x25,0xf0,0x01]
1567c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach
1568c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach
1569c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach@------------------------------------------------------------------------------
1570c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach@ MVN (shifted register)
1571c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach@------------------------------------------------------------------------------
1572c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach        mvn r5, r6, lsl r7
1573c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach        mvns r5, r6, lsr r7
1574c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach        mvngt r5, r6, asr r7
1575c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach        mvnslt r5, r6, ror r7
1576c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach
1577c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach@ CHECK: mvn	r5, r6, lsl r7          @ encoding: [0x16,0x57,0xe0,0xe1]
1578c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach@ CHECK: mvns	r5, r6, lsr r7          @ encoding: [0x36,0x57,0xf0,0xe1]
1579c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach@ CHECK: mvngt	r5, r6, asr r7          @ encoding: [0x56,0x57,0xe0,0xc1]
1580c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach@ CHECK: mvnslt	r5, r6, ror r7          @ encoding: [0x76,0x57,0xf0,0xb1]
1581c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach
1582a67851445902d1fc01fa2a37a3dfc347af949f84Jim Grosbach@------------------------------------------------------------------------------
1583e91e7bcadc445381adef5c5154e8e2cba074505fJim Grosbach@ NEG
1584e91e7bcadc445381adef5c5154e8e2cba074505fJim Grosbach@------------------------------------------------------------------------------
1585e91e7bcadc445381adef5c5154e8e2cba074505fJim Grosbach        neg r5, r8
1586e91e7bcadc445381adef5c5154e8e2cba074505fJim Grosbach
1587e91e7bcadc445381adef5c5154e8e2cba074505fJim Grosbach@ CHECK: rsb	r5, r8, #0              @ encoding: [0x00,0x50,0x68,0xe2]
1588e91e7bcadc445381adef5c5154e8e2cba074505fJim Grosbach
1589e91e7bcadc445381adef5c5154e8e2cba074505fJim Grosbach
1590e91e7bcadc445381adef5c5154e8e2cba074505fJim Grosbach@------------------------------------------------------------------------------
1591a67851445902d1fc01fa2a37a3dfc347af949f84Jim Grosbach@ NOP
1592a67851445902d1fc01fa2a37a3dfc347af949f84Jim Grosbach@------------------------------------------------------------------------------
1593a67851445902d1fc01fa2a37a3dfc347af949f84Jim Grosbach        nop
1594bf811d602d1d81b93846c6cbbd1cec85f2f153cbKevin Enderby        nop.w
1595a67851445902d1fc01fa2a37a3dfc347af949f84Jim Grosbach        nopgt
1596a67851445902d1fc01fa2a37a3dfc347af949f84Jim Grosbach
1597a67851445902d1fc01fa2a37a3dfc347af949f84Jim Grosbach@ CHECK: nop @ encoding: [0x00,0xf0,0x20,0xe3]
1598bf811d602d1d81b93846c6cbbd1cec85f2f153cbKevin Enderby@ CHECK: nop @ encoding: [0x00,0xf0,0x20,0xe3]
1599a67851445902d1fc01fa2a37a3dfc347af949f84Jim Grosbach@ CHECK: nopgt @ encoding: [0x00,0xf0,0x20,0xc3]
1600a67851445902d1fc01fa2a37a3dfc347af949f84Jim Grosbach
1601c3635c2e928a7ecde11398ff272411f6dea2dcd2Jim Grosbach
1602ab40f4b737b0a87c4048a9ad2f0c02be735e3770Jim Grosbach@------------------------------------------------------------------------------
160388d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ ORR
160488d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@------------------------------------------------------------------------------
160588d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orr r4, r5, #0xf000
1606ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        orr r4, r5, $0xf000
1607ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        orr r4, r5, 0xf000
1608ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines	orr r7, r8, #(0xff << 16)
1609ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        orr r7, r8, #-2147483638
1610ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        orr r7, r8, #42, #2
1611ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        orr r7, r8, #40, #2
1612ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        orr r7, r8, $40, $2
1613ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        orr r7, r8, 40, 2
1614ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        orr r7, r8, (2 * 20), (1 << 1)
161588d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orr r4, r5, r6
161688d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orr r4, r5, r6, lsl #5
161788d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orr r4, r5, r6, lsr #5
161888d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orr r4, r5, r6, lsr #5
161988d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orr r4, r5, r6, asr #5
162088d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orr r4, r5, r6, ror #5
162188d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orr r6, r7, r8, lsl r9
162288d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orr r6, r7, r8, lsr r9
162388d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orr r6, r7, r8, asr r9
162488d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orr r6, r7, r8, ror r9
162588d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orr r4, r5, r6, rrx
162688d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach
162788d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        @ destination register is optional
162888d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orr r5, #0xf000
1629ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        orr r5, $0xf000
1630ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        orr r5, 0xf000
1631ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines
1632ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        orr r7, #(0xff << 16)
1633ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        orr r7, #-2147483638
1634ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        orr r7, #42, #2
1635ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        orr r7, #40, #2
1636ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        orr r7, $40, $2
1637ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        orr r7, 40, 2
1638ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        orr r7, (2 * 20), (1 << 1)
1639ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines
164088d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orr r4, r5
164188d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orr r4, r5, lsl #5
164288d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orr r4, r5, lsr #5
164388d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orr r4, r5, lsr #5
164488d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orr r4, r5, asr #5
164588d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orr r4, r5, ror #5
164688d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orr r6, r7, lsl r9
164788d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orr r6, r7, lsr r9
164888d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orr r6, r7, asr r9
164988d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orr r6, r7, ror r9
165088d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orr r4, r5, rrx
165188d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach
165288d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orr	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x85,0xe3]
1653ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: orr	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x85,0xe3]
1654ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: orr	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x85,0xe3]
1655ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: orr	r7, r8, #16711680       @ encoding: [0xff,0x78,0x88,0xe3]
1656ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: orr    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0x88,0xe3]
1657ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: orr    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0x88,0xe3]
1658ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: orr    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x88,0xe3]
1659ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: orr    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x88,0xe3]
1660ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: orr    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x88,0xe3]
1661ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: orr    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x88,0xe3]
166288d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orr	r4, r5, r6              @ encoding: [0x06,0x40,0x85,0xe1]
166388d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orr	r4, r5, r6, lsl #5      @ encoding: [0x86,0x42,0x85,0xe1]
166488d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orr	r4, r5, r6, lsr #5      @ encoding: [0xa6,0x42,0x85,0xe1]
166588d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orr	r4, r5, r6, lsr #5      @ encoding: [0xa6,0x42,0x85,0xe1]
166688d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orr	r4, r5, r6, asr #5      @ encoding: [0xc6,0x42,0x85,0xe1]
166788d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orr	r4, r5, r6, ror #5      @ encoding: [0xe6,0x42,0x85,0xe1]
166888d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orr	r6, r7, r8, lsl r9      @ encoding: [0x18,0x69,0x87,0xe1]
166988d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orr	r6, r7, r8, lsr r9      @ encoding: [0x38,0x69,0x87,0xe1]
167088d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orr	r6, r7, r8, asr r9      @ encoding: [0x58,0x69,0x87,0xe1]
167188d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orr	r6, r7, r8, ror r9      @ encoding: [0x78,0x69,0x87,0xe1]
167288d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orr	r4, r5, r6, rrx         @ encoding: [0x66,0x40,0x85,0xe1]
167388d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach
167488d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orr	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x85,0xe3]
1675ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: orr	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x85,0xe3]
1676ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: orr	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x85,0xe3]
1677ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: orr	r7, r7, #16711680       @ encoding: [0xff,0x78,0x87,0xe3]
1678ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: orr	r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0x87,0xe3]
1679ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: orr	r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0x87,0xe3]
1680ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: orr	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x87,0xe3]
1681ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: orr 	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x87,0xe3]
1682ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: orr 	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x87,0xe3]
1683ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: orr 	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x87,0xe3]
168488d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orr	r4, r4, r5              @ encoding: [0x05,0x40,0x84,0xe1]
168588d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orr	r4, r4, r5, lsl #5      @ encoding: [0x85,0x42,0x84,0xe1]
168688d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orr	r4, r4, r5, lsr #5      @ encoding: [0xa5,0x42,0x84,0xe1]
168788d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orr	r4, r4, r5, lsr #5      @ encoding: [0xa5,0x42,0x84,0xe1]
168888d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orr	r4, r4, r5, asr #5      @ encoding: [0xc5,0x42,0x84,0xe1]
168988d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orr	r4, r4, r5, ror #5      @ encoding: [0xe5,0x42,0x84,0xe1]
169088d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orr	r6, r6, r7, lsl r9      @ encoding: [0x17,0x69,0x86,0xe1]
169188d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orr	r6, r6, r7, lsr r9      @ encoding: [0x37,0x69,0x86,0xe1]
169288d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orr	r6, r6, r7, asr r9      @ encoding: [0x57,0x69,0x86,0xe1]
169388d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orr	r6, r6, r7, ror r9      @ encoding: [0x77,0x69,0x86,0xe1]
169488d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orr	r4, r4, r5, rrx         @ encoding: [0x65,0x40,0x84,0xe1]
169588d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach
169688d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orrseq r4, r5, #0xf000
169788d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orrne r4, r5, r6
169888d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orrseq r4, r5, r6, lsl #5
169988d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orrlo r6, r7, r8, ror r9
170088d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orrshi r4, r5, r6, rrx
170188d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orrcs r5, #0xf000
170288d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orrseq r4, r5
170388d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orrne r6, r7, asr r9
170488d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orrslt r6, r7, ror r9
170588d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach        orrsgt r4, r5, rrx
170688d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach
170788d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orrseq	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x95,0x03]
170888d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orrne	r4, r5, r6              @ encoding: [0x06,0x40,0x85,0x11]
170988d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orrseq	r4, r5, r6, lsl #5      @ encoding: [0x86,0x42,0x95,0x01]
171088d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orrlo	r6, r7, r8, ror r9      @ encoding: [0x78,0x69,0x87,0x31]
171188d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orrshi	r4, r5, r6, rrx         @ encoding: [0x66,0x40,0x95,0x81]
171288d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orrhs	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x85,0x23]
171388d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orrseq	r4, r4, r5              @ encoding: [0x05,0x40,0x94,0x01]
171488d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orrne	r6, r6, r7, asr r9      @ encoding: [0x57,0x69,0x86,0x11]
171588d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orrslt	r6, r6, r7, ror r9      @ encoding: [0x77,0x69,0x96,0xb1]
171688d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@ CHECK: orrsgt	r4, r4, r5, rrx         @ encoding: [0x65,0x40,0x94,0xc1]
171788d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach
17188ed97ef5f6980c689a5770ec30488601201e17c3Richard Barton    @ Test right shift by 32, which is encoded as 0
17198ed97ef5f6980c689a5770ec30488601201e17c3Richard Barton    orr r3, r1, r2, lsr #32
17208ed97ef5f6980c689a5770ec30488601201e17c3Richard Barton    orr r3, r1, r2, asr #32
17218ed97ef5f6980c689a5770ec30488601201e17c3Richard Barton@ CHECK: orr	r3, r1, r2, lsr #32     @ encoding: [0x22,0x30,0x81,0xe1]
17228ed97ef5f6980c689a5770ec30488601201e17c3Richard Barton@ CHECK: orr	r3, r1, r2, asr #32     @ encoding: [0x42,0x30,0x81,0xe1]
17238ed97ef5f6980c689a5770ec30488601201e17c3Richard Barton
172461b1b21e9ad2b8af163a352766eeb159979f4ff2Jim Grosbach@------------------------------------------------------------------------------
172561b1b21e9ad2b8af163a352766eeb159979f4ff2Jim Grosbach@ PKH
172661b1b21e9ad2b8af163a352766eeb159979f4ff2Jim Grosbach@------------------------------------------------------------------------------
172761b1b21e9ad2b8af163a352766eeb159979f4ff2Jim Grosbach        pkhbt r2, r2, r3
172861b1b21e9ad2b8af163a352766eeb159979f4ff2Jim Grosbach        pkhbt r2, r2, r3, lsl #31
172961b1b21e9ad2b8af163a352766eeb159979f4ff2Jim Grosbach        pkhbt r2, r2, r3, lsl #0
173061b1b21e9ad2b8af163a352766eeb159979f4ff2Jim Grosbach        pkhbt r2, r2, r3, lsl #15
173161b1b21e9ad2b8af163a352766eeb159979f4ff2Jim Grosbach
173261b1b21e9ad2b8af163a352766eeb159979f4ff2Jim Grosbach        pkhtb r2, r2, r3
173361b1b21e9ad2b8af163a352766eeb159979f4ff2Jim Grosbach        pkhtb r2, r2, r3, asr #31
173461b1b21e9ad2b8af163a352766eeb159979f4ff2Jim Grosbach        pkhtb r2, r2, r3, asr #15
173561b1b21e9ad2b8af163a352766eeb159979f4ff2Jim Grosbach
173661b1b21e9ad2b8af163a352766eeb159979f4ff2Jim Grosbach@ CHECK: pkhbt	r2, r2, r3              @ encoding: [0x13,0x20,0x82,0xe6]
173761b1b21e9ad2b8af163a352766eeb159979f4ff2Jim Grosbach@ CHECK: pkhbt	r2, r2, r3, lsl #31     @ encoding: [0x93,0x2f,0x82,0xe6]
173861b1b21e9ad2b8af163a352766eeb159979f4ff2Jim Grosbach@ CHECK: pkhbt	r2, r2, r3              @ encoding: [0x13,0x20,0x82,0xe6]
173961b1b21e9ad2b8af163a352766eeb159979f4ff2Jim Grosbach@ CHECK: pkhbt	r2, r2, r3, lsl #15     @ encoding: [0x93,0x27,0x82,0xe6]
174061b1b21e9ad2b8af163a352766eeb159979f4ff2Jim Grosbach
174161b1b21e9ad2b8af163a352766eeb159979f4ff2Jim Grosbach@ CHECK: pkhbt	r2, r2, r3              @ encoding: [0x13,0x20,0x82,0xe6]
174261b1b21e9ad2b8af163a352766eeb159979f4ff2Jim Grosbach@ CHECK: pkhtb	r2, r2, r3, asr #31     @ encoding: [0xd3,0x2f,0x82,0xe6]
174361b1b21e9ad2b8af163a352766eeb159979f4ff2Jim Grosbach@ CHECK: pkhtb	r2, r2, r3, asr #15     @ encoding: [0xd3,0x27,0x82,0xe6]
174461b1b21e9ad2b8af163a352766eeb159979f4ff2Jim Grosbach
174510c7d70a4e843b3006db9f5f583d6f6f56cc245eJim Grosbach@------------------------------------------------------------------------------
174610c7d70a4e843b3006db9f5f583d6f6f56cc245eJim Grosbach@ FIXME: PLD
174710c7d70a4e843b3006db9f5f583d6f6f56cc245eJim Grosbach@------------------------------------------------------------------------------
174810c7d70a4e843b3006db9f5f583d6f6f56cc245eJim Grosbach@------------------------------------------------------------------------------
174910c7d70a4e843b3006db9f5f583d6f6f56cc245eJim Grosbach@ FIXME: PLI
175010c7d70a4e843b3006db9f5f583d6f6f56cc245eJim Grosbach@------------------------------------------------------------------------------
175110c7d70a4e843b3006db9f5f583d6f6f56cc245eJim Grosbach
175210c7d70a4e843b3006db9f5f583d6f6f56cc245eJim Grosbach
175310c7d70a4e843b3006db9f5f583d6f6f56cc245eJim Grosbach@------------------------------------------------------------------------------
175410c7d70a4e843b3006db9f5f583d6f6f56cc245eJim Grosbach@ POP
175510c7d70a4e843b3006db9f5f583d6f6f56cc245eJim Grosbach@------------------------------------------------------------------------------
175610c7d70a4e843b3006db9f5f583d6f6f56cc245eJim Grosbach        pop {r7}
175710c7d70a4e843b3006db9f5f583d6f6f56cc245eJim Grosbach        pop {r7, r8, r9, r10}
175810c7d70a4e843b3006db9f5f583d6f6f56cc245eJim Grosbach
1759f8fce711e8b756adca63044f7d122648c960ab96Jim Grosbach@ CHECK: pop	{r7}                    @ encoding: [0x04,0x70,0x9d,0xe4]
176010c7d70a4e843b3006db9f5f583d6f6f56cc245eJim Grosbach@ CHECK: pop	{r7, r8, r9, r10}       @ encoding: [0x80,0x07,0xbd,0xe8]
176110c7d70a4e843b3006db9f5f583d6f6f56cc245eJim Grosbach
176210c7d70a4e843b3006db9f5f583d6f6f56cc245eJim Grosbach
176310c7d70a4e843b3006db9f5f583d6f6f56cc245eJim Grosbach@------------------------------------------------------------------------------
176410c7d70a4e843b3006db9f5f583d6f6f56cc245eJim Grosbach@ PUSH
176510c7d70a4e843b3006db9f5f583d6f6f56cc245eJim Grosbach@------------------------------------------------------------------------------
176610c7d70a4e843b3006db9f5f583d6f6f56cc245eJim Grosbach        push {r7}
176710c7d70a4e843b3006db9f5f583d6f6f56cc245eJim Grosbach        push {r7, r8, r9, r10}
176810c7d70a4e843b3006db9f5f583d6f6f56cc245eJim Grosbach
1769f6713916fb4504aab617f0e317689acd878cc37fJim Grosbach@ CHECK: push	{r7}                    @ encoding: [0x04,0x70,0x2d,0xe5]
177010c7d70a4e843b3006db9f5f583d6f6f56cc245eJim Grosbach@ CHECK: push	{r7, r8, r9, r10}       @ encoding: [0x80,0x07,0x2d,0xe9]
177110c7d70a4e843b3006db9f5f583d6f6f56cc245eJim Grosbach
177288d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach
177388d1bc832ca5b458c8460929227be8eae6c6bdc3Jim Grosbach@------------------------------------------------------------------------------
1774a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach@ QADD/QADD16/QADD8
1775a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach@------------------------------------------------------------------------------
1776a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach        qadd r1, r2, r3
1777a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach        qaddne r1, r2, r3
1778a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach        qadd16 r1, r2, r3
1779a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach        qadd16gt r1, r2, r3
1780a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach        qadd8 r1, r2, r3
1781a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach        qadd8le r1, r2, r3
1782a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach
1783a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach@ CHECK: qadd	r1, r2, r3              @ encoding: [0x52,0x10,0x03,0xe1]
1784a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach@ CHECK: qaddne	r1, r2, r3              @ encoding: [0x52,0x10,0x03,0x11]
1785a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach@ CHECK: qadd16	r1, r2, r3              @ encoding: [0x13,0x1f,0x22,0xe6]
1786a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach@ CHECK: qadd16gt	r1, r2, r3      @ encoding: [0x13,0x1f,0x22,0xc6]
1787a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach@ CHECK: qadd8	r1, r2, r3              @ encoding: [0x93,0x1f,0x22,0xe6]
1788a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach@ CHECK: qadd8le r1, r2, r3             @ encoding: [0x93,0x1f,0x22,0xd6]
1789a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach
1790a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach
1791a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach@------------------------------------------------------------------------------
1792a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach@ QDADD/QDSUB
1793a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach@------------------------------------------------------------------------------
1794a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach        qdadd r6, r7, r8
1795a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach        qdaddhi r6, r7, r8
1796a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach        qdsub r6, r7, r8
1797a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach        qdsubhi r6, r7, r8
1798a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach
1799a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach@ CHECK: qdadd	r6, r7, r8              @ encoding: [0x57,0x60,0x48,0xe1]
1800a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach@ CHECK: qdaddhi r6, r7, r8             @ encoding: [0x57,0x60,0x48,0x81]
1801a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach@ CHECK: qdsub	r6, r7, r8              @ encoding: [0x57,0x60,0x68,0xe1]
1802a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach@ CHECK: qdsubhi r6, r7, r8             @ encoding: [0x57,0x60,0x68,0x81]
1803a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach
1804a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach
1805a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach@------------------------------------------------------------------------------
1806a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach@ QSAX
1807a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach@------------------------------------------------------------------------------
1808a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach        qsax r9, r12, r0
1809a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach        qsaxeq r9, r12, r0
1810a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach
1811a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach@ CHECK: qsax	r9, r12, r0             @ encoding: [0x50,0x9f,0x2c,0xe6]
1812a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach@ CHECK: qsaxeq	r9, r12, r0             @ encoding: [0x50,0x9f,0x2c,0x06]
1813a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach
1814a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach
1815a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach@------------------------------------------------------------------------------
181641438398c13be01ec53c3ad6b08a6cab47e96735Jim Grosbach@ QSUB/QSUB16/QSUB8
1817a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach@------------------------------------------------------------------------------
1818a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach        qsub r1, r2, r3
1819a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach        qsubne r1, r2, r3
1820a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach        qsub16 r1, r2, r3
1821a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach        qsub16gt r1, r2, r3
1822a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach        qsub8 r1, r2, r3
1823a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach        qsub8le r1, r2, r3
1824a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach
1825a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach@ CHECK: qsub	r1, r2, r3              @ encoding: [0x52,0x10,0x23,0xe1]
1826a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach@ CHECK: qsubne	r1, r2, r3              @ encoding: [0x52,0x10,0x23,0x11]
1827a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach@ CHECK: qsub16	r1, r2, r3              @ encoding: [0x73,0x1f,0x22,0xe6]
1828a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach@ CHECK: qsub16gt	r1, r2, r3      @ encoding: [0x73,0x1f,0x22,0xc6]
1829a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach@ CHECK: qsub8	r1, r2, r3              @ encoding: [0xf3,0x1f,0x22,0xe6]
1830a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach@ CHECK: qsub8le r1, r2, r3             @ encoding: [0xf3,0x1f,0x22,0xd6]
1831a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach
1832a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach
1833a4c34ab54485f64d3b962a499526825a7a0d4bbcJim Grosbach@------------------------------------------------------------------------------
1834616fbdf987170addd0d8f75f4fd677589d54cd75Jim Grosbach@ RBIT
1835616fbdf987170addd0d8f75f4fd677589d54cd75Jim Grosbach@------------------------------------------------------------------------------
1836616fbdf987170addd0d8f75f4fd677589d54cd75Jim Grosbach        rbit r1, r2
1837616fbdf987170addd0d8f75f4fd677589d54cd75Jim Grosbach        rbitne r1, r2
1838616fbdf987170addd0d8f75f4fd677589d54cd75Jim Grosbach
1839616fbdf987170addd0d8f75f4fd677589d54cd75Jim Grosbach@ CHECK: rbit	r1, r2                  @ encoding: [0x32,0x1f,0xff,0xe6]
1840616fbdf987170addd0d8f75f4fd677589d54cd75Jim Grosbach@ CHECK: rbitne	r1, r2                  @ encoding: [0x32,0x1f,0xff,0x16]
1841616fbdf987170addd0d8f75f4fd677589d54cd75Jim Grosbach
1842616fbdf987170addd0d8f75f4fd677589d54cd75Jim Grosbach
1843616fbdf987170addd0d8f75f4fd677589d54cd75Jim Grosbach@------------------------------------------------------------------------------
1844616fbdf987170addd0d8f75f4fd677589d54cd75Jim Grosbach@ REV/REV16/REVSH
1845616fbdf987170addd0d8f75f4fd677589d54cd75Jim Grosbach@------------------------------------------------------------------------------
1846616fbdf987170addd0d8f75f4fd677589d54cd75Jim Grosbach        rev r1, r9
1847616fbdf987170addd0d8f75f4fd677589d54cd75Jim Grosbach        revne r1, r5
1848616fbdf987170addd0d8f75f4fd677589d54cd75Jim Grosbach        rev16 r8, r3
1849616fbdf987170addd0d8f75f4fd677589d54cd75Jim Grosbach        rev16ne r12, r4
1850616fbdf987170addd0d8f75f4fd677589d54cd75Jim Grosbach        revsh r4, r9
1851616fbdf987170addd0d8f75f4fd677589d54cd75Jim Grosbach        revshne r9, r1
1852616fbdf987170addd0d8f75f4fd677589d54cd75Jim Grosbach
1853616fbdf987170addd0d8f75f4fd677589d54cd75Jim Grosbach@ CHECK: rev	r1, r9                  @ encoding: [0x39,0x1f,0xbf,0xe6]
1854616fbdf987170addd0d8f75f4fd677589d54cd75Jim Grosbach@ CHECK: revne	r1, r5                  @ encoding: [0x35,0x1f,0xbf,0x16]
1855616fbdf987170addd0d8f75f4fd677589d54cd75Jim Grosbach@ CHECK: rev16	r8, r3                  @ encoding: [0xb3,0x8f,0xbf,0xe6]
1856616fbdf987170addd0d8f75f4fd677589d54cd75Jim Grosbach@ CHECK: rev16ne r12, r4                @ encoding: [0xb4,0xcf,0xbf,0x16]
1857616fbdf987170addd0d8f75f4fd677589d54cd75Jim Grosbach@ CHECK: revsh	r4, r9                  @ encoding: [0xb9,0x4f,0xff,0xe6]
1858616fbdf987170addd0d8f75f4fd677589d54cd75Jim Grosbach@ CHECK: revshne r9, r1                 @ encoding: [0xb1,0x9f,0xff,0x16]
1859616fbdf987170addd0d8f75f4fd677589d54cd75Jim Grosbach
1860616fbdf987170addd0d8f75f4fd677589d54cd75Jim Grosbach
1861616fbdf987170addd0d8f75f4fd677589d54cd75Jim Grosbach@------------------------------------------------------------------------------
18622c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach@ RFE
18632c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach@------------------------------------------------------------------------------
18642c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach        rfeda r2
18652c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach        rfedb r3
18662c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach        rfeia r5
18672c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach        rfeib r6
18682c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach
18692c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach        rfeda r4!
18702c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach        rfedb r7!
18712c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach        rfeia r9!
18722c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach        rfeib r8!
18732c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach
18742c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach        rfefa r2
18752c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach        rfeea r3
18762c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach        rfefd r5
18772c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach        rfeed r6
18782c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach
18792c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach        rfefa r4!
18802c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach        rfeea r7!
18812c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach        rfefd r9!
18822c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach        rfeed r8!
18832c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach
18842c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach        rfe r1
18852c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach        rfe r1!
18862c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach
18872c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach@ CHECK: rfeda	r2                      @ encoding: [0x00,0x0a,0x12,0xf8]
18882c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach@ CHECK: rfedb	r3                      @ encoding: [0x00,0x0a,0x13,0xf9]
18892c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach@ CHECK: rfeia	r5                      @ encoding: [0x00,0x0a,0x95,0xf8]
18902c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach@ CHECK: rfeib	r6                      @ encoding: [0x00,0x0a,0x96,0xf9]
18912c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach
18922c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach@ CHECK: rfeda	r4!                     @ encoding: [0x00,0x0a,0x34,0xf8]
18932c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach@ CHECK: rfedb	r7!                     @ encoding: [0x00,0x0a,0x37,0xf9]
18942c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach@ CHECK: rfeia	r9!                     @ encoding: [0x00,0x0a,0xb9,0xf8]
18952c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach@ CHECK: rfeib	r8!                     @ encoding: [0x00,0x0a,0xb8,0xf9]
18962c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach
18972c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach@ CHECK: rfeda	r2                      @ encoding: [0x00,0x0a,0x12,0xf8]
18982c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach@ CHECK: rfedb	r3                      @ encoding: [0x00,0x0a,0x13,0xf9]
18992c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach@ CHECK: rfeia	r5                      @ encoding: [0x00,0x0a,0x95,0xf8]
19002c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach@ CHECK: rfeib	r6                      @ encoding: [0x00,0x0a,0x96,0xf9]
19012c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach
19022c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach@ CHECK: rfeda	r4!                     @ encoding: [0x00,0x0a,0x34,0xf8]
19032c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach@ CHECK: rfedb	r7!                     @ encoding: [0x00,0x0a,0x37,0xf9]
19042c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach@ CHECK: rfeia	r9!                     @ encoding: [0x00,0x0a,0xb9,0xf8]
19052c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach@ CHECK: rfeib	r8!                     @ encoding: [0x00,0x0a,0xb8,0xf9]
19062c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach
19072c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach@ CHECK: rfeia	r1                      @ encoding: [0x00,0x0a,0x91,0xf8]
19082c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach@ CHECK: rfeia	r1!                     @ encoding: [0x00,0x0a,0xb1,0xf8]
19092c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach
19102c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach
19112c6363a62df95b74468d9a561bbcb9edddeb3507Jim Grosbach@------------------------------------------------------------------------------
1912ee10ff89a2934636570cb17b756bf31b2a38aab5Jim Grosbach@ ROR
1913ee10ff89a2934636570cb17b756bf31b2a38aab5Jim Grosbach@------------------------------------------------------------------------------
1914ee10ff89a2934636570cb17b756bf31b2a38aab5Jim Grosbach	ror r2, r4, #31
1915ee10ff89a2934636570cb17b756bf31b2a38aab5Jim Grosbach	ror r2, r4, #1
1916ee10ff89a2934636570cb17b756bf31b2a38aab5Jim Grosbach	ror r2, r4, #0
19179f302c4fb3feeb36561a6eee0168ee5242d8ac20Jim Grosbach	ror r4, #1
1918ee10ff89a2934636570cb17b756bf31b2a38aab5Jim Grosbach
1919ee10ff89a2934636570cb17b756bf31b2a38aab5Jim Grosbach@ CHECK: ror	r2, r4, #31             @ encoding: [0xe4,0x2f,0xa0,0xe1]
1920ee10ff89a2934636570cb17b756bf31b2a38aab5Jim Grosbach@ CHECK: ror	r2, r4, #1              @ encoding: [0xe4,0x20,0xa0,0xe1]
1921ee10ff89a2934636570cb17b756bf31b2a38aab5Jim Grosbach@ CHECK: mov	r2, r4                  @ encoding: [0x04,0x20,0xa0,0xe1]
19229f302c4fb3feeb36561a6eee0168ee5242d8ac20Jim Grosbach@ CHECK: ror	r4, r4, #1              @ encoding: [0xe4,0x40,0xa0,0xe1]
1923ee10ff89a2934636570cb17b756bf31b2a38aab5Jim Grosbach
1924ee10ff89a2934636570cb17b756bf31b2a38aab5Jim Grosbach
1925ee10ff89a2934636570cb17b756bf31b2a38aab5Jim Grosbach@------------------------------------------------------------------------------
192686fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach@ RSB
192786fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach@------------------------------------------------------------------------------
192886fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach        rsb r4, r5, #0xf000
1929ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsb r4, r5, $0xf000
1930ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsb r4, r5, 0xf000
1931ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsb r7, r8, #(0xff << 16)
1932ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsb r7, r8, #-2147483638
1933ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsb r7, r8, #42, #2
1934ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsb r7, r8, #40, #2
1935ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsb r7, r8, $40, $2
1936ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsb r7, r8, 40, 2
1937ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsb r7, r8, (2 * 20), (1 << 1)
193886fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach        rsb r4, r5, r6
193986fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach        rsb r4, r5, r6, lsl #5
194086fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach        rsblo r4, r5, r6, lsr #5
194186fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach        rsb r4, r5, r6, lsr #5
194286fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach        rsb r4, r5, r6, asr #5
194386fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach        rsb r4, r5, r6, ror #5
194486fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach        rsb r6, r7, r8, lsl r9
194586fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach        rsb r6, r7, r8, lsr r9
194686fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach        rsb r6, r7, r8, asr r9
194786fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach        rsble r6, r7, r8, ror r9
194886fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach        rsb r4, r5, r6, rrx
194986fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach
195086fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach        @ destination register is optional
195186fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach        rsb r5, #0xf000
1952ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsb r5, $0xf000
1953ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsb r5, 0xf000
1954ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsb r7, #(0xff << 16)
1955ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsb r7, #-2147483638
1956ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsb r7, #42, #2
1957ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsb r7, #40, #2
1958ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsb r7, $40, $2
1959ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsb r7, 40, 2
1960ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsb r7, (2 * 20), (1 << 1)
196186fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach        rsb r4, r5
196286fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach        rsb r4, r5, lsl #5
196386fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach        rsb r4, r5, lsr #5
196486fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach        rsbne r4, r5, lsr #5
196586fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach        rsb r4, r5, asr #5
196686fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach        rsb r4, r5, ror #5
196786fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach        rsbgt r6, r7, lsl r9
196886fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach        rsb r6, r7, lsr r9
196986fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach        rsb r6, r7, asr r9
197086fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach        rsb r6, r7, ror r9
197186fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach        rsb r4, r5, rrx
197286fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach
197386fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach@ CHECK: rsb	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x65,0xe2]
1974ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsb	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x65,0xe2]
1975ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsb	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x65,0xe2]
1976ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsb	r7, r8, #16711680       @ encoding: [0xff,0x78,0x68,0xe2]
1977ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsb    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0x68,0xe2]
1978ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsb    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0x68,0xe2]
1979ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsb    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x68,0xe2]
1980ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsb    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x68,0xe2]
1981ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsb    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x68,0xe2]
1982ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsb    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x68,0xe2]
198386fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach@ CHECK: rsb	r4, r5, r6              @ encoding: [0x06,0x40,0x65,0xe0]
198486fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach@ CHECK: rsb	r4, r5, r6, lsl #5      @ encoding: [0x86,0x42,0x65,0xe0]
198586fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach@ CHECK: rsblo	r4, r5, r6, lsr #5      @ encoding: [0xa6,0x42,0x65,0x30]
198686fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach@ CHECK: rsb	r4, r5, r6, lsr #5      @ encoding: [0xa6,0x42,0x65,0xe0]
198786fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach@ CHECK: rsb	r4, r5, r6, asr #5      @ encoding: [0xc6,0x42,0x65,0xe0]
198886fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach@ CHECK: rsb	r4, r5, r6, ror #5      @ encoding: [0xe6,0x42,0x65,0xe0]
198986fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach@ CHECK: rsb	r6, r7, r8, lsl r9      @ encoding: [0x18,0x69,0x67,0xe0]
199086fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach@ CHECK: rsb	r6, r7, r8, lsr r9      @ encoding: [0x38,0x69,0x67,0xe0]
199186fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach@ CHECK: rsb	r6, r7, r8, asr r9      @ encoding: [0x58,0x69,0x67,0xe0]
199286fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach@ CHECK: rsble	r6, r7, r8, ror r9      @ encoding: [0x78,0x69,0x67,0xd0]
199386fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach@ CHECK: rsb	r4, r5, r6, rrx         @ encoding: [0x66,0x40,0x65,0xe0]
199486fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach
199586fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach@ CHECK: rsb	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x65,0xe2]
1996ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsb	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x65,0xe2]
1997ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsb	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x65,0xe2]
1998ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsb	r7, r7, #16711680       @ encoding: [0xff,0x78,0x67,0xe2]
1999ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsb	r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0x67,0xe2]
2000ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsb	r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0x67,0xe2]
2001ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsb	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x67,0xe2]
2002ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsb	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x67,0xe2]
2003ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsb	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x67,0xe2]
2004ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsb	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x67,0xe2]
200586fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach@ CHECK: rsb	r4, r4, r5              @ encoding: [0x05,0x40,0x64,0xe0]
200686fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach@ CHECK: rsb	r4, r4, r5, lsl #5      @ encoding: [0x85,0x42,0x64,0xe0]
200786fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach@ CHECK: rsb	r4, r4, r5, lsr #5      @ encoding: [0xa5,0x42,0x64,0xe0]
200886fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach@ CHECK: rsbne	r4, r4, r5, lsr #5      @ encoding: [0xa5,0x42,0x64,0x10]
200986fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach@ CHECK: rsb	r4, r4, r5, asr #5      @ encoding: [0xc5,0x42,0x64,0xe0]
201086fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach@ CHECK: rsb	r4, r4, r5, ror #5      @ encoding: [0xe5,0x42,0x64,0xe0]
201186fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach@ CHECK: rsbgt	r6, r6, r7, lsl r9      @ encoding: [0x17,0x69,0x66,0xc0]
201286fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach@ CHECK: rsb	r6, r6, r7, lsr r9      @ encoding: [0x37,0x69,0x66,0xe0]
201386fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach@ CHECK: rsb	r6, r6, r7, asr r9      @ encoding: [0x57,0x69,0x66,0xe0]
201486fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach@ CHECK: rsb	r6, r6, r7, ror r9      @ encoding: [0x77,0x69,0x66,0xe0]
201586fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach@ CHECK: rsb	r4, r4, r5, rrx         @ encoding: [0x65,0x40,0x64,0xe0]
201686fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach
2017f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach@------------------------------------------------------------------------------
2018ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ RSBS
2019ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@------------------------------------------------------------------------------
2020ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    rsbs r7, #16711680
2021ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    rsbs r7, $16711680
2022ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    rsbs r7, 16711680
2023ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    rsbs r7, #(0xff << 16)
2024ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    rsbs r7, r8, #-2147483638
2025ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    rsbs r7, r8, #42, #2
2026ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    rsbs r7, r8, #40, #2
2027ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    rsbs r7, r8, $40, $2
2028ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    rsbs r7, r8, 40, 2
2029ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    rsbs r7, r8, (2 * 20), (1 << 1)
2030ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines
2031ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsbs	r7, r7, #16711680       @ encoding: [0xff,0x78,0x77,0xe2]
2032ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsbs	r7, r7, #16711680       @ encoding: [0xff,0x78,0x77,0xe2]
2033ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsbs	r7, r7, #16711680       @ encoding: [0xff,0x78,0x77,0xe2]
2034ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsbs	r7, r7, #16711680       @ encoding: [0xff,0x78,0x77,0xe2]
2035ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsbs   r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0x78,0xe2]
2036ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsbs   r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0x78,0xe2]
2037ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsbs   r7, r8, #40, #2         @ encoding: [0x28,0x71,0x78,0xe2]
2038ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsbs   r7, r8, #40, #2         @ encoding: [0x28,0x71,0x78,0xe2]
2039ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsbs   r7, r8, #40, #2         @ encoding: [0x28,0x71,0x78,0xe2]
2040ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsbs   r7, r8, #40, #2         @ encoding: [0x28,0x71,0x78,0xe2]
2041ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines
2042ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@------------------------------------------------------------------------------
2043f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach@ RSC
2044f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach@------------------------------------------------------------------------------
2045f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach        rsc r4, r5, #0xf000
2046ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsc r4, r5, $0xf000
2047ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsc r4, r5, 0xf000
2048ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsc r7, r8, #(0xff << 16)
2049ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsc r7, r8, #-2147483638
2050ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsc r7, r8, #42, #2
2051ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsc r7, r8, #40, #2
2052ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsc r7, r8, $40, $2
2053ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsc r7, r8, 40, 2
2054ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsc r7, r8, (2 * 20), (1 << 1)
2055f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach        rsc r4, r5, r6
2056f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach        rsc r4, r5, r6, lsl #5
2057f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach        rsclo r4, r5, r6, lsr #5
2058f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach        rsc r4, r5, r6, lsr #5
2059f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach        rsc r4, r5, r6, asr #5
2060f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach        rsc r4, r5, r6, ror #5
2061f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach        rsc r6, r7, r8, lsl r9
2062f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach        rsc r6, r7, r8, lsr r9
2063f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach        rsc r6, r7, r8, asr r9
2064f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach        rscle r6, r7, r8, ror r9
20652f25d9b9334662e846460e98a8fe2dae4f233068Jim Grosbach        rscs r1, r8, #4064
2066f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach
2067f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach        @ destination register is optional
2068f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach        rsc r5, #0xf000
2069ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsc r5, $0xf000
2070ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsc r5, 0xf000
2071ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsc r7, #(0xff << 16)
2072ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsc r7, #-2147483638
2073ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsc r7, #42, #2
2074ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsc r7, #40, #2
2075ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsc r7, $40, $2
2076ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsc r7, 40, 2
2077ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        rsc r7, (2 * 20), (1 << 1)
2078f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach        rsc r4, r5
2079f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach        rsc r4, r5, lsl #5
2080f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach        rsc r4, r5, lsr #5
2081f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach        rscne r4, r5, lsr #5
2082f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach        rsc r4, r5, asr #5
2083f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach        rsc r4, r5, ror #5
2084f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach        rscgt r6, r7, lsl r9
2085f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach        rsc r6, r7, lsr r9
2086f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach        rsc r6, r7, asr r9
2087f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach        rsc r6, r7, ror r9
2088f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach
2089f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach@ CHECK: rsc	r4, r5, #61440          @ encoding: [0x0f,0x4a,0xe5,0xe2]
2090ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsc	r4, r5, #61440          @ encoding: [0x0f,0x4a,0xe5,0xe2]
2091ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsc	r4, r5, #61440          @ encoding: [0x0f,0x4a,0xe5,0xe2]
2092ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsc    r7, r8, #16711680       @ encoding: [0xff,0x78,0xe8,0xe2]
2093ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsc    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0xe8,0xe2]
2094ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsc    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0xe8,0xe2]
2095ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsc    r7, r8, #40, #2         @ encoding: [0x28,0x71,0xe8,0xe2]
2096ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsc    r7, r8, #40, #2         @ encoding: [0x28,0x71,0xe8,0xe2]
2097ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsc    r7, r8, #40, #2         @ encoding: [0x28,0x71,0xe8,0xe2]
2098ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsc    r7, r8, #40, #2         @ encoding: [0x28,0x71,0xe8,0xe2]
2099f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach@ CHECK: rsc	r4, r5, r6              @ encoding: [0x06,0x40,0xe5,0xe0]
2100f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach@ CHECK: rsc	r4, r5, r6, lsl #5      @ encoding: [0x86,0x42,0xe5,0xe0]
2101f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach@ CHECK: rsclo	r4, r5, r6, lsr #5      @ encoding: [0xa6,0x42,0xe5,0x30]
2102f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach@ CHECK: rsc	r4, r5, r6, lsr #5      @ encoding: [0xa6,0x42,0xe5,0xe0]
2103f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach@ CHECK: rsc	r4, r5, r6, asr #5      @ encoding: [0xc6,0x42,0xe5,0xe0]
2104f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach@ CHECK: rsc	r4, r5, r6, ror #5      @ encoding: [0xe6,0x42,0xe5,0xe0]
2105f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach@ CHECK: rsc	r6, r7, r8, lsl r9      @ encoding: [0x18,0x69,0xe7,0xe0]
2106f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach@ CHECK: rsc	r6, r7, r8, lsr r9      @ encoding: [0x38,0x69,0xe7,0xe0]
2107f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach@ CHECK: rsc	r6, r7, r8, asr r9      @ encoding: [0x58,0x69,0xe7,0xe0]
2108f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach@ CHECK: rscle	r6, r7, r8, ror r9      @ encoding: [0x78,0x69,0xe7,0xd0]
21092f25d9b9334662e846460e98a8fe2dae4f233068Jim Grosbach@ CHECK: rscs	r1, r8, #4064           @ encoding: [0xfe,0x1e,0xf8,0xe2]
2110f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach
2111f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach@ CHECK: rsc	r5, r5, #61440          @ encoding: [0x0f,0x5a,0xe5,0xe2]
2112ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsc	r5, r5, #61440          @ encoding: [0x0f,0x5a,0xe5,0xe2]
2113ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsc	r5, r5, #61440          @ encoding: [0x0f,0x5a,0xe5,0xe2]
2114ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsc	r7, r7, #16711680       @ encoding: [0xff,0x78,0xe7,0xe2]
2115ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsc	r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0xe7,0xe2]
2116ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsc	r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0xe7,0xe2]
2117ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsc	r7, r7, #40, #2         @ encoding: [0x28,0x71,0xe7,0xe2]
2118ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsc	r7, r7, #40, #2         @ encoding: [0x28,0x71,0xe7,0xe2]
2119ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsc	r7, r7, #40, #2         @ encoding: [0x28,0x71,0xe7,0xe2]
2120ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: rsc	r7, r7, #40, #2         @ encoding: [0x28,0x71,0xe7,0xe2]
2121f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach@ CHECK: rsc	r4, r4, r5              @ encoding: [0x05,0x40,0xe4,0xe0]
2122f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach@ CHECK: rsc	r4, r4, r5, lsl #5      @ encoding: [0x85,0x42,0xe4,0xe0]
2123f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach@ CHECK: rsc	r4, r4, r5, lsr #5      @ encoding: [0xa5,0x42,0xe4,0xe0]
2124f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach@ CHECK: rscne	r4, r4, r5, lsr #5      @ encoding: [0xa5,0x42,0xe4,0x10]
2125f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach@ CHECK: rsc	r4, r4, r5, asr #5      @ encoding: [0xc5,0x42,0xe4,0xe0]
2126f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach@ CHECK: rsc	r4, r4, r5, ror #5      @ encoding: [0xe5,0x42,0xe4,0xe0]
2127f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach@ CHECK: rscgt	r6, r6, r7, lsl r9      @ encoding: [0x17,0x69,0xe6,0xc0]
2128f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach@ CHECK: rsc	r6, r6, r7, lsr r9      @ encoding: [0x37,0x69,0xe6,0xe0]
2129f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach@ CHECK: rsc	r6, r6, r7, asr r9      @ encoding: [0x57,0x69,0xe6,0xe0]
2130f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach@ CHECK: rsc	r6, r6, r7, ror r9      @ encoding: [0x77,0x69,0xe6,0xe0]
2131f790193aec11747bb35206d2c79e0c5ffbc6dc7fJim Grosbach
21328ae45af7941dc3e78859ba3624676081590c435dJim Grosbach@------------------------------------------------------------------------------
21332248cf590617cbe91eeb6a845ad06d675d9f2e91Mihai Popa@ RRX/RRXS
21342248cf590617cbe91eeb6a845ad06d675d9f2e91Mihai Popa@------------------------------------------------------------------------------
21352248cf590617cbe91eeb6a845ad06d675d9f2e91Mihai Popa
21362248cf590617cbe91eeb6a845ad06d675d9f2e91Mihai Popa         rrx r0, r1
21372248cf590617cbe91eeb6a845ad06d675d9f2e91Mihai Popa	 rrx sp, pc
21382248cf590617cbe91eeb6a845ad06d675d9f2e91Mihai Popa	 rrx pc, lr
21392248cf590617cbe91eeb6a845ad06d675d9f2e91Mihai Popa	 rrx lr, sp
21402248cf590617cbe91eeb6a845ad06d675d9f2e91Mihai Popa
21412248cf590617cbe91eeb6a845ad06d675d9f2e91Mihai Popa@ CHECK: rrx	r0, r1                  @ encoding: [0x61,0x00,0xa0,0xe1]
21422248cf590617cbe91eeb6a845ad06d675d9f2e91Mihai Popa@ CHECK: rrx	sp, pc                  @ encoding: [0x6f,0xd0,0xa0,0xe1]
21432248cf590617cbe91eeb6a845ad06d675d9f2e91Mihai Popa@ CHECK: rrx	pc, lr                  @ encoding: [0x6e,0xf0,0xa0,0xe1]
21442248cf590617cbe91eeb6a845ad06d675d9f2e91Mihai Popa@ CHECK: rrx	lr, sp                  @ encoding: [0x6d,0xe0,0xa0,0xe1]
21452248cf590617cbe91eeb6a845ad06d675d9f2e91Mihai Popa
21462248cf590617cbe91eeb6a845ad06d675d9f2e91Mihai Popa         rrxs r0, r1
21472248cf590617cbe91eeb6a845ad06d675d9f2e91Mihai Popa	 rrxs sp, pc
21482248cf590617cbe91eeb6a845ad06d675d9f2e91Mihai Popa	 rrxs pc, lr
21492248cf590617cbe91eeb6a845ad06d675d9f2e91Mihai Popa	 rrxs lr, sp
21502248cf590617cbe91eeb6a845ad06d675d9f2e91Mihai Popa
21512248cf590617cbe91eeb6a845ad06d675d9f2e91Mihai Popa@CHECK: rrxs	r0, r1                  @ encoding: [0x61,0x00,0xb0,0xe1]
21522248cf590617cbe91eeb6a845ad06d675d9f2e91Mihai Popa@CHECK: rrxs	sp, pc                  @ encoding: [0x6f,0xd0,0xb0,0xe1]
21532248cf590617cbe91eeb6a845ad06d675d9f2e91Mihai Popa@CHECK: rrxs	pc, lr                  @ encoding: [0x6e,0xf0,0xb0,0xe1]
21542248cf590617cbe91eeb6a845ad06d675d9f2e91Mihai Popa@CHECK: rrxs	lr, sp                  @ encoding: [0x6d,0xe0,0xb0,0xe1]
21552248cf590617cbe91eeb6a845ad06d675d9f2e91Mihai Popa
21562248cf590617cbe91eeb6a845ad06d675d9f2e91Mihai Popa@ ------------------------------------------------------------------------------
21578ae45af7941dc3e78859ba3624676081590c435dJim Grosbach@ SADD16/SADD8
21588ae45af7941dc3e78859ba3624676081590c435dJim Grosbach@------------------------------------------------------------------------------
21598ae45af7941dc3e78859ba3624676081590c435dJim Grosbach        sadd16 r1, r2, r3
21608ae45af7941dc3e78859ba3624676081590c435dJim Grosbach        sadd16gt r1, r2, r3
21618ae45af7941dc3e78859ba3624676081590c435dJim Grosbach        sadd8 r1, r2, r3
21628ae45af7941dc3e78859ba3624676081590c435dJim Grosbach        sadd8le r1, r2, r3
21638ae45af7941dc3e78859ba3624676081590c435dJim Grosbach
21648ae45af7941dc3e78859ba3624676081590c435dJim Grosbach@ CHECK: sadd16	r1, r2, r3              @ encoding: [0x13,0x1f,0x12,0xe6]
21658ae45af7941dc3e78859ba3624676081590c435dJim Grosbach@ CHECK: sadd16gt	r1, r2, r3      @ encoding: [0x13,0x1f,0x12,0xc6]
21668ae45af7941dc3e78859ba3624676081590c435dJim Grosbach@ CHECK: sadd8	r1, r2, r3              @ encoding: [0x93,0x1f,0x12,0xe6]
21678ae45af7941dc3e78859ba3624676081590c435dJim Grosbach@ CHECK: sadd8le r1, r2, r3             @ encoding: [0x93,0x1f,0x12,0xd6]
21688ae45af7941dc3e78859ba3624676081590c435dJim Grosbach
21698ae45af7941dc3e78859ba3624676081590c435dJim Grosbach
21708ae45af7941dc3e78859ba3624676081590c435dJim Grosbach@------------------------------------------------------------------------------
21718ae45af7941dc3e78859ba3624676081590c435dJim Grosbach@ SASX
21728ae45af7941dc3e78859ba3624676081590c435dJim Grosbach@------------------------------------------------------------------------------
21738ae45af7941dc3e78859ba3624676081590c435dJim Grosbach        sasx r9, r12, r0
21748ae45af7941dc3e78859ba3624676081590c435dJim Grosbach        sasxeq r9, r12, r0
21758ae45af7941dc3e78859ba3624676081590c435dJim Grosbach
21768ae45af7941dc3e78859ba3624676081590c435dJim Grosbach@ CHECK: sasx	r9, r12, r0             @ encoding: [0x30,0x9f,0x1c,0xe6]
21778ae45af7941dc3e78859ba3624676081590c435dJim Grosbach@ CHECK: sasxeq	r9, r12, r0             @ encoding: [0x30,0x9f,0x1c,0x06]
21788ae45af7941dc3e78859ba3624676081590c435dJim Grosbach
217986fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach
218086fdff0fa79b2c00cb68a2961cca0466eb50d666Jim Grosbach@------------------------------------------------------------------------------
21818409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach@ SBC
21828409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach@------------------------------------------------------------------------------
21838409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach        sbc r4, r5, #0xf000
2184ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sbc r4, r5, $0xf000
2185ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sbc r4, r5, 0xf000
2186ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sbc r7, r8, #(0xff << 16)
2187ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sbc r7, r8, #-2147483638
2188ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sbc r7, r8, #42, #2
2189ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sbc r7, r8, #40, #2
2190ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sbc r7, r8, $40, $2
2191ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sbc r7, r8, 40, 2
2192ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sbc r7, r8, (20 * 2), (1 << 1)
21938409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach        sbc r4, r5, r6
21948409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach        sbc r4, r5, r6, lsl #5
21958409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach        sbc r4, r5, r6, lsr #5
21968409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach        sbc r4, r5, r6, lsr #5
21978409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach        sbc r4, r5, r6, asr #5
21988409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach        sbc r4, r5, r6, ror #5
21998409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach        sbc r6, r7, r8, lsl r9
22008409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach        sbc r6, r7, r8, lsr r9
22018409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach        sbc r6, r7, r8, asr r9
22028409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach        sbc r6, r7, r8, ror r9
22038409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach
22048409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach        @ destination register is optional
22058409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach        sbc r5, #0xf000
2206ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sbc r5, $0xf000
2207ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sbc r5, 0xf000
2208ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sbc r7, #(0xff << 16)
2209ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sbc r7, #-2147483638
2210ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sbc r7, #42, #2
2211ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sbc r7, #40, #2
2212ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sbc r7, $40, $2
2213ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sbc r7, 40, 2
2214ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sbc r7, (20 * 2), (1 << 1)
22158409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach        sbc r4, r5
22168409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach        sbc r4, r5, lsl #5
22178409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach        sbc r4, r5, lsr #5
22188409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach        sbc r4, r5, lsr #5
22198409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach        sbc r4, r5, asr #5
22208409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach        sbc r4, r5, ror #5
22218409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach        sbc r6, r7, lsl r9
22228409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach        sbc r6, r7, lsr r9
22238409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach        sbc r6, r7, asr r9
22248409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach        sbc r6, r7, ror r9
22258409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach
22268409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach@ CHECK: sbc	r4, r5, #61440          @ encoding: [0x0f,0x4a,0xc5,0xe2]
2227ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sbc	r4, r5, #61440          @ encoding: [0x0f,0x4a,0xc5,0xe2]
2228ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sbc	r4, r5, #61440          @ encoding: [0x0f,0x4a,0xc5,0xe2]
2229ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sbc	r7, r8, #16711680       @ encoding: [0xff,0x78,0xc8,0xe2]
2230ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sbc    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0xc8,0xe2]
2231ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sbc    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0xc8,0xe2]
2232ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sbc    r7, r8, #40, #2         @ encoding: [0x28,0x71,0xc8,0xe2]
2233ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sbc    r7, r8, #40, #2         @ encoding: [0x28,0x71,0xc8,0xe2]
2234ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sbc    r7, r8, #40, #2         @ encoding: [0x28,0x71,0xc8,0xe2]
2235ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sbc    r7, r8, #40, #2         @ encoding: [0x28,0x71,0xc8,0xe2]
22368409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach@ CHECK: sbc	r4, r5, r6              @ encoding: [0x06,0x40,0xc5,0xe0]
22378409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach@ CHECK: sbc	r4, r5, r6, lsl #5      @ encoding: [0x86,0x42,0xc5,0xe0]
22388409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach@ CHECK: sbc	r4, r5, r6, lsr #5      @ encoding: [0xa6,0x42,0xc5,0xe0]
22398409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach@ CHECK: sbc	r4, r5, r6, lsr #5      @ encoding: [0xa6,0x42,0xc5,0xe0]
22408409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach@ CHECK: sbc	r4, r5, r6, asr #5      @ encoding: [0xc6,0x42,0xc5,0xe0]
22418409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach@ CHECK: sbc	r4, r5, r6, ror #5      @ encoding: [0xe6,0x42,0xc5,0xe0]
22428409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach@ CHECK: sbc	r6, r7, r8, lsl r9      @ encoding: [0x18,0x69,0xc7,0xe0]
22438409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach@ CHECK: sbc	r6, r7, r8, lsr r9      @ encoding: [0x38,0x69,0xc7,0xe0]
22448409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach@ CHECK: sbc	r6, r7, r8, asr r9      @ encoding: [0x58,0x69,0xc7,0xe0]
22458409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach@ CHECK: sbc	r6, r7, r8, ror r9      @ encoding: [0x78,0x69,0xc7,0xe0]
22468409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach
22478409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach@ CHECK: sbc	r5, r5, #61440          @ encoding: [0x0f,0x5a,0xc5,0xe2]
2248ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sbc	r5, r5, #61440          @ encoding: [0x0f,0x5a,0xc5,0xe2]
2249ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sbc	r5, r5, #61440          @ encoding: [0x0f,0x5a,0xc5,0xe2]
2250ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sbc	r7, r7, #16711680       @ encoding: [0xff,0x78,0xc7,0xe2]
2251ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sbc	r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0xc7,0xe2]
2252ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sbc	r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0xc7,0xe2]
2253ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sbc	r7, r7, #40, #2         @ encoding: [0x28,0x71,0xc7,0xe2]
2254ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sbc	r7, r7, #40, #2         @ encoding: [0x28,0x71,0xc7,0xe2]
2255ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sbc	r7, r7, #40, #2         @ encoding: [0x28,0x71,0xc7,0xe2]
2256ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sbc	r7, r7, #40, #2         @ encoding: [0x28,0x71,0xc7,0xe2]
22578409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach@ CHECK: sbc	r4, r4, r5              @ encoding: [0x05,0x40,0xc4,0xe0]
22588409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach@ CHECK: sbc	r4, r4, r5, lsl #5      @ encoding: [0x85,0x42,0xc4,0xe0]
22598409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach@ CHECK: sbc	r4, r4, r5, lsr #5      @ encoding: [0xa5,0x42,0xc4,0xe0]
22608409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach@ CHECK: sbc	r4, r4, r5, lsr #5      @ encoding: [0xa5,0x42,0xc4,0xe0]
22618409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach@ CHECK: sbc	r4, r4, r5, asr #5      @ encoding: [0xc5,0x42,0xc4,0xe0]
22628409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach@ CHECK: sbc	r4, r4, r5, ror #5      @ encoding: [0xe5,0x42,0xc4,0xe0]
22638409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach@ CHECK: sbc	r6, r6, r7, lsl r9      @ encoding: [0x17,0x69,0xc6,0xe0]
22648409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach@ CHECK: sbc	r6, r6, r7, lsr r9      @ encoding: [0x37,0x69,0xc6,0xe0]
22658409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach@ CHECK: sbc	r6, r6, r7, asr r9      @ encoding: [0x57,0x69,0xc6,0xe0]
22668409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach@ CHECK: sbc	r6, r6, r7, ror r9      @ encoding: [0x77,0x69,0xc6,0xe0]
22678409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach
22688409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach
22698409f047312da0318af2a2fce162810ca3a95da3Jim Grosbach@------------------------------------------------------------------------------
2270fb8989e64024547e4ad5ab6fe4d94fe146a7899fJim Grosbach@ SBFX
2271fb8989e64024547e4ad5ab6fe4d94fe146a7899fJim Grosbach@------------------------------------------------------------------------------
2272fb8989e64024547e4ad5ab6fe4d94fe146a7899fJim Grosbach        sbfx r4, r5, #16, #1
2273fb8989e64024547e4ad5ab6fe4d94fe146a7899fJim Grosbach        sbfxgt r4, r5, #16, #16
2274fb8989e64024547e4ad5ab6fe4d94fe146a7899fJim Grosbach
2275fb8989e64024547e4ad5ab6fe4d94fe146a7899fJim Grosbach@ CHECK: sbfx	r4, r5, #16, #1         @ encoding: [0x55,0x48,0xa0,0xe7]
2276fb8989e64024547e4ad5ab6fe4d94fe146a7899fJim Grosbach@ CHECK: sbfxgt	r4, r5, #16, #16        @ encoding: [0x55,0x48,0xaf,0xc7]
2277fb8989e64024547e4ad5ab6fe4d94fe146a7899fJim Grosbach
2278fb8989e64024547e4ad5ab6fe4d94fe146a7899fJim Grosbach
2279fb8989e64024547e4ad5ab6fe4d94fe146a7899fJim Grosbach@------------------------------------------------------------------------------
22809076b6e8f43c7eade7e0b667081f94df097e85c3Jim Grosbach@ SEL
22819076b6e8f43c7eade7e0b667081f94df097e85c3Jim Grosbach@------------------------------------------------------------------------------
22829076b6e8f43c7eade7e0b667081f94df097e85c3Jim Grosbach        sel r9, r2, r1
22839076b6e8f43c7eade7e0b667081f94df097e85c3Jim Grosbach        selne r9, r2, r1
22849076b6e8f43c7eade7e0b667081f94df097e85c3Jim Grosbach
22859076b6e8f43c7eade7e0b667081f94df097e85c3Jim Grosbach@ CHECK: sel	r9, r2, r1              @ encoding: [0xb1,0x9f,0x82,0xe6]
22869076b6e8f43c7eade7e0b667081f94df097e85c3Jim Grosbach@ CHECK: selne	r9, r2, r1              @ encoding: [0xb1,0x9f,0x82,0x16]
22879076b6e8f43c7eade7e0b667081f94df097e85c3Jim Grosbach
22889076b6e8f43c7eade7e0b667081f94df097e85c3Jim Grosbach
22899076b6e8f43c7eade7e0b667081f94df097e85c3Jim Grosbach@------------------------------------------------------------------------------
2290c27d4f9ea0cb9064d3e2cadb384d73e95e9de449Jim Grosbach@ SETEND
2291c27d4f9ea0cb9064d3e2cadb384d73e95e9de449Jim Grosbach@------------------------------------------------------------------------------
2292c27d4f9ea0cb9064d3e2cadb384d73e95e9de449Jim Grosbach        setend be
2293ee5e24cb3e987c74d4dce146b4f78e83fb2b56a8Tim Northover        setend BE
2294c27d4f9ea0cb9064d3e2cadb384d73e95e9de449Jim Grosbach        setend le
2295ee5e24cb3e987c74d4dce146b4f78e83fb2b56a8Tim Northover        setend LE
2296c27d4f9ea0cb9064d3e2cadb384d73e95e9de449Jim Grosbach
2297356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: setend	be                      @ encoding: [0x00,0x02,0x01,0xf1]
2298ee5e24cb3e987c74d4dce146b4f78e83fb2b56a8Tim Northover@ CHECK: setend	be                      @ encoding: [0x00,0x02,0x01,0xf1]
2299ee5e24cb3e987c74d4dce146b4f78e83fb2b56a8Tim Northover@ CHECK: setend	le                      @ encoding: [0x00,0x00,0x01,0xf1]
2300356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: setend	le                      @ encoding: [0x00,0x00,0x01,0xf1]
2301c27d4f9ea0cb9064d3e2cadb384d73e95e9de449Jim Grosbach
2302c27d4f9ea0cb9064d3e2cadb384d73e95e9de449Jim Grosbach
2303c27d4f9ea0cb9064d3e2cadb384d73e95e9de449Jim Grosbach@------------------------------------------------------------------------------
2304248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach@ SEV
2305248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach@------------------------------------------------------------------------------
2306248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach        sev
2307248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach        seveq
2308248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach
23099c6712721c114f8e67b9a6b3cb1dd5d18b4cb435Jim Grosbach@ CHECK: sev                            @ encoding: [0x04,0xf0,0x20,0xe3]
23109c6712721c114f8e67b9a6b3cb1dd5d18b4cb435Jim Grosbach@ CHECK: seveq                          @ encoding: [0x04,0xf0,0x20,0x03]
23119c6712721c114f8e67b9a6b3cb1dd5d18b4cb435Jim Grosbach
2312248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach
2313248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach@------------------------------------------------------------------------------
2314248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach@ SHADD16/SHADD8
2315248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach@------------------------------------------------------------------------------
2316248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach        shadd16 r4, r8, r2
2317248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach        shadd16gt r4, r8, r2
2318248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach        shadd8 r4, r8, r2
2319248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach        shadd8gt r4, r8, r2
2320248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach
2321248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach@ CHECK: shadd16	r4, r8, r2      @ encoding: [0x12,0x4f,0x38,0xe6]
2322248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach@ CHECK: shadd16gt	r4, r8, r2      @ encoding: [0x12,0x4f,0x38,0xc6]
2323248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach@ CHECK: shadd8	r4, r8, r2              @ encoding: [0x92,0x4f,0x38,0xe6]
2324248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach@ CHECK: shadd8gt	r4, r8, r2      @ encoding: [0x92,0x4f,0x38,0xc6]
2325248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach
2326248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach
2327248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach@------------------------------------------------------------------------------
2328248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach@ SHASX
2329248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach@------------------------------------------------------------------------------
2330248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach        shasx r4, r8, r2
2331248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach        shasxgt r4, r8, r2
2332248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach
2333248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach@ CHECK: shasx	r4, r8, r2              @ encoding: [0x32,0x4f,0x38,0xe6]
2334248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach@ CHECK: shasxgt r4, r8, r2             @ encoding: [0x32,0x4f,0x38,0xc6]
2335248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach
2336248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach
2337248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach@------------------------------------------------------------------------------
2338248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach@ SHSUB16/SHSUB8
2339248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach@------------------------------------------------------------------------------
2340248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach        shsub16 r4, r8, r2
2341248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach        shsub16gt r4, r8, r2
2342248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach        shsub8 r4, r8, r2
2343248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach        shsub8gt r4, r8, r2
2344248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach
2345248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach@ CHECK: shsub16	r4, r8, r2      @ encoding: [0x72,0x4f,0x38,0xe6]
2346248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach@ CHECK: shsub16gt	r4, r8, r2      @ encoding: [0x72,0x4f,0x38,0xc6]
2347248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach@ CHECK: shsub8	r4, r8, r2              @ encoding: [0xf2,0x4f,0x38,0xe6]
2348248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach@ CHECK: shsub8gt	r4, r8, r2      @ encoding: [0xf2,0x4f,0x38,0xc6]
2349248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach
23507c9fbc0340aff9e20fd9009be23ffd279c1c0a7dJim Grosbach@------------------------------------------------------------------------------
23510ffd4a09dfb1ee56ec335fed0d15954f92cfa5b3Jim Grosbach@ SMLABB/SMLABT/SMLATB/SMLATT
23520ffd4a09dfb1ee56ec335fed0d15954f92cfa5b3Jim Grosbach@------------------------------------------------------------------------------
23530ffd4a09dfb1ee56ec335fed0d15954f92cfa5b3Jim Grosbach        smlabb r3, r1, r9, r0
23540ffd4a09dfb1ee56ec335fed0d15954f92cfa5b3Jim Grosbach        smlabt r5, r6, r4, r1
23550ffd4a09dfb1ee56ec335fed0d15954f92cfa5b3Jim Grosbach        smlatb r4, r2, r3, r2
23560ffd4a09dfb1ee56ec335fed0d15954f92cfa5b3Jim Grosbach        smlatt r8, r3, r8, r4
23570ffd4a09dfb1ee56ec335fed0d15954f92cfa5b3Jim Grosbach        smlabbge r3, r1, r9, r0
23580ffd4a09dfb1ee56ec335fed0d15954f92cfa5b3Jim Grosbach        smlabtle r5, r6, r4, r1
23590ffd4a09dfb1ee56ec335fed0d15954f92cfa5b3Jim Grosbach        smlatbne r4, r2, r3, r2
23600ffd4a09dfb1ee56ec335fed0d15954f92cfa5b3Jim Grosbach        smlatteq r8, r3, r8, r4
23610ffd4a09dfb1ee56ec335fed0d15954f92cfa5b3Jim Grosbach
23620ffd4a09dfb1ee56ec335fed0d15954f92cfa5b3Jim Grosbach@ CHECK: smlabb	r3, r1, r9, r0          @ encoding: [0x81,0x09,0x03,0xe1]
23630ffd4a09dfb1ee56ec335fed0d15954f92cfa5b3Jim Grosbach@ CHECK: smlabt	r5, r6, r4, r1          @ encoding: [0xc6,0x14,0x05,0xe1]
23640ffd4a09dfb1ee56ec335fed0d15954f92cfa5b3Jim Grosbach@ CHECK: smlatb	r4, r2, r3, r2          @ encoding: [0xa2,0x23,0x04,0xe1]
23650ffd4a09dfb1ee56ec335fed0d15954f92cfa5b3Jim Grosbach@ CHECK: smlatt	r8, r3, r8, r4          @ encoding: [0xe3,0x48,0x08,0xe1]
23660ffd4a09dfb1ee56ec335fed0d15954f92cfa5b3Jim Grosbach@ CHECK: smlabbge	r3, r1, r9, r0  @ encoding: [0x81,0x09,0x03,0xa1]
23670ffd4a09dfb1ee56ec335fed0d15954f92cfa5b3Jim Grosbach@ CHECK: smlabtle	r5, r6, r4, r1  @ encoding: [0xc6,0x14,0x05,0xd1]
23680ffd4a09dfb1ee56ec335fed0d15954f92cfa5b3Jim Grosbach@ CHECK: smlatbne	r4, r2, r3, r2  @ encoding: [0xa2,0x23,0x04,0x11]
23690ffd4a09dfb1ee56ec335fed0d15954f92cfa5b3Jim Grosbach@ CHECK: smlatteq	r8, r3, r8, r4  @ encoding: [0xe3,0x48,0x08,0x01]
23700ffd4a09dfb1ee56ec335fed0d15954f92cfa5b3Jim Grosbach
2371b206daaec1a2ec25e99fbdc413cd0866cec160b2Jim Grosbach@------------------------------------------------------------------------------
2372b206daaec1a2ec25e99fbdc413cd0866cec160b2Jim Grosbach@ SMLAD/SMLADX
2373b206daaec1a2ec25e99fbdc413cd0866cec160b2Jim Grosbach@------------------------------------------------------------------------------
2374b206daaec1a2ec25e99fbdc413cd0866cec160b2Jim Grosbach        smlad r2, r3, r5, r8
2375b206daaec1a2ec25e99fbdc413cd0866cec160b2Jim Grosbach        smladx r2, r3, r5, r8
2376b206daaec1a2ec25e99fbdc413cd0866cec160b2Jim Grosbach        smladeq r2, r3, r5, r8
2377b206daaec1a2ec25e99fbdc413cd0866cec160b2Jim Grosbach        smladxhi r2, r3, r5, r8
2378b206daaec1a2ec25e99fbdc413cd0866cec160b2Jim Grosbach
2379b206daaec1a2ec25e99fbdc413cd0866cec160b2Jim Grosbach@ CHECK: smlad	r2, r3, r5, r8          @ encoding: [0x13,0x85,0x02,0xe7]
2380b206daaec1a2ec25e99fbdc413cd0866cec160b2Jim Grosbach@ CHECK: smladx	r2, r3, r5, r8          @ encoding: [0x33,0x85,0x02,0xe7]
2381b206daaec1a2ec25e99fbdc413cd0866cec160b2Jim Grosbach@ CHECK: smladeq	r2, r3, r5, r8  @ encoding: [0x13,0x85,0x02,0x07]
2382b206daaec1a2ec25e99fbdc413cd0866cec160b2Jim Grosbach@ CHECK: smladxhi	r2, r3, r5, r8  @ encoding: [0x33,0x85,0x02,0x87]
2383b206daaec1a2ec25e99fbdc413cd0866cec160b2Jim Grosbach
2384248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach
2385248e6c328c06afc2a6af6b95a1a8a41c1b53055cJim Grosbach@------------------------------------------------------------------------------
2386ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach@ SMLAL
2387b544f68b70475f06a8ec39c874297549edc0f695Jim Grosbach@------------------------------------------------------------------------------
2388b544f68b70475f06a8ec39c874297549edc0f695Jim Grosbach        smlal r2, r3, r5, r8
2389b544f68b70475f06a8ec39c874297549edc0f695Jim Grosbach        smlals r2, r3, r5, r8
2390b544f68b70475f06a8ec39c874297549edc0f695Jim Grosbach        smlaleq r2, r3, r5, r8
2391b544f68b70475f06a8ec39c874297549edc0f695Jim Grosbach        smlalshi r2, r3, r5, r8
2392b544f68b70475f06a8ec39c874297549edc0f695Jim Grosbach
2393b544f68b70475f06a8ec39c874297549edc0f695Jim Grosbach@ CHECK: smlal	r2, r3, r5, r8          @ encoding: [0x95,0x28,0xe3,0xe0]
2394b544f68b70475f06a8ec39c874297549edc0f695Jim Grosbach@ CHECK: smlals	r2, r3, r5, r8          @ encoding: [0x95,0x28,0xf3,0xe0]
2395b544f68b70475f06a8ec39c874297549edc0f695Jim Grosbach@ CHECK: smlaleq	r2, r3, r5, r8  @ encoding: [0x95,0x28,0xe3,0x00]
2396b544f68b70475f06a8ec39c874297549edc0f695Jim Grosbach@ CHECK: smlalshi	r2, r3, r5, r8  @ encoding: [0x95,0x28,0xf3,0x80]
2397b544f68b70475f06a8ec39c874297549edc0f695Jim Grosbach
2398b544f68b70475f06a8ec39c874297549edc0f695Jim Grosbach
2399b544f68b70475f06a8ec39c874297549edc0f695Jim Grosbach@------------------------------------------------------------------------------
2400ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach@ SMLALBB/SMLALBT/SMLALTB/SMLALTT
2401ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach@------------------------------------------------------------------------------
2402ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach        smlalbb r3, r1, r9, r0
2403ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach        smlalbt r5, r6, r4, r1
2404ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach        smlaltb r4, r2, r3, r2
2405ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach        smlaltt r8, r3, r8, r4
2406ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach        smlalbbge r3, r1, r9, r0
2407ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach        smlalbtle r5, r6, r4, r1
2408ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach        smlaltbne r4, r2, r3, r2
2409ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach        smlaltteq r8, r3, r8, r4
2410ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach
2411ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach@ CHECK: smlalbb	r3, r1, r9, r0  @ encoding: [0x89,0x30,0x41,0xe1]
2412ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach@ CHECK: smlalbt	r5, r6, r4, r1  @ encoding: [0xc4,0x51,0x46,0xe1]
2413ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach@ CHECK: smlaltb	r4, r2, r3, r2  @ encoding: [0xa3,0x42,0x42,0xe1]
2414ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach@ CHECK: smlaltt	r8, r3, r8, r4  @ encoding: [0xe8,0x84,0x43,0xe1]
2415ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach@ CHECK: smlalbbge	r3, r1, r9, r0  @ encoding: [0x89,0x30,0x41,0xa1]
2416ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach@ CHECK: smlalbtle	r5, r6, r4, r1  @ encoding: [0xc4,0x51,0x46,0xd1]
2417ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach@ CHECK: smlaltbne	r4, r2, r3, r2  @ encoding: [0xa3,0x42,0x42,0x11]
2418ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach@ CHECK: smlaltteq	r8, r3, r8, r4  @ encoding: [0xe8,0x84,0x43,0x01]
2419ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach
2420ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach
2421ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach@------------------------------------------------------------------------------
2422ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach@ SMLALD/SMLALDX
2423ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach@------------------------------------------------------------------------------
2424ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach        smlald r2, r3, r5, r8
2425ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach        smlaldx r2, r3, r5, r8
2426ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach        smlaldeq r2, r3, r5, r8
2427ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach        smlaldxhi r2, r3, r5, r8
2428ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach
2429ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach@ CHECK: smlald	r2, r3, r5, r8          @ encoding: [0x15,0x28,0x43,0xe7]
2430ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach@ CHECK: smlaldx	r2, r3, r5, r8  @ encoding: [0x35,0x28,0x43,0xe7]
2431ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach@ CHECK: smlaldeq	r2, r3, r5, r8  @ encoding: [0x15,0x28,0x43,0x07]
2432ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach@ CHECK: smlaldxhi	r2, r3, r5, r8  @ encoding: [0x35,0x28,0x43,0x87]
2433ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach
2434ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach
2435ce501030d9b0213d951fbf05f928ac75b06b5a3aJim Grosbach@------------------------------------------------------------------------------
243644a456332f1f41d1e0b2815d93e47a88d501ee6eJim Grosbach@ SMLAWB/SMLAWT
243744a456332f1f41d1e0b2815d93e47a88d501ee6eJim Grosbach@------------------------------------------------------------------------------
243844a456332f1f41d1e0b2815d93e47a88d501ee6eJim Grosbach        smlawb r2, r3, r10, r8
243944a456332f1f41d1e0b2815d93e47a88d501ee6eJim Grosbach        smlawt r8, r3, r5, r9
244044a456332f1f41d1e0b2815d93e47a88d501ee6eJim Grosbach        smlawbeq r2, r7, r5, r8
244144a456332f1f41d1e0b2815d93e47a88d501ee6eJim Grosbach        smlawthi r1, r3, r0, r8
244244a456332f1f41d1e0b2815d93e47a88d501ee6eJim Grosbach
244344a456332f1f41d1e0b2815d93e47a88d501ee6eJim Grosbach@ CHECK: smlawb	r2, r3, r10, r8         @ encoding: [0x83,0x8a,0x22,0xe1]
244444a456332f1f41d1e0b2815d93e47a88d501ee6eJim Grosbach@ CHECK: smlawt	r8, r3, r5, r9          @ encoding: [0xc3,0x95,0x28,0xe1]
244544a456332f1f41d1e0b2815d93e47a88d501ee6eJim Grosbach@ CHECK: smlawbeq	r2, r7, r5, r8  @ encoding: [0x87,0x85,0x22,0x01]
244644a456332f1f41d1e0b2815d93e47a88d501ee6eJim Grosbach@ CHECK: smlawthi	r1, r3, r0, r8  @ encoding: [0xc3,0x80,0x21,0x81]
244744a456332f1f41d1e0b2815d93e47a88d501ee6eJim Grosbach
244844a456332f1f41d1e0b2815d93e47a88d501ee6eJim Grosbach
244944a456332f1f41d1e0b2815d93e47a88d501ee6eJim Grosbach@------------------------------------------------------------------------------
24506808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@ SMLSD/SMLSDX
24516808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@------------------------------------------------------------------------------
24526808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach        smlsd r2, r3, r5, r8
24536808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach        smlsdx r2, r3, r5, r8
24546808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach        smlsdeq r2, r3, r5, r8
24556808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach        smlsdxhi r2, r3, r5, r8
24566808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach
24576808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@ CHECK: smlsd	r2, r3, r5, r8          @ encoding: [0x53,0x85,0x02,0xe7]
24586808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@ CHECK: smlsdx	r2, r3, r5, r8          @ encoding: [0x73,0x85,0x02,0xe7]
24596808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@ CHECK: smlsdeq	r2, r3, r5, r8  @ encoding: [0x53,0x85,0x02,0x07]
24606808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@ CHECK: smlsdxhi	r2, r3, r5, r8  @ encoding: [0x73,0x85,0x02,0x87]
24616808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach
24626808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach
24636808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@------------------------------------------------------------------------------
24646808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@ SMLSLD/SMLSLDX
24656808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@------------------------------------------------------------------------------
24666808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach        smlsld r2, r9, r5, r1
24676808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach        smlsldx r4, r11, r2, r8
24686808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach        smlsldeq r8, r2, r5, r6
24696808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach        smlsldxhi r1, r0, r3, r8
24706808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach
24716808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@ CHECK: smlsld	r2, r9, r5, r1          @ encoding: [0x55,0x21,0x49,0xe7]
24726808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@ CHECK: smlsldx	r4, r11, r2, r8 @ encoding: [0x72,0x48,0x4b,0xe7]
24736808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@ CHECK: smlsldeq	r8, r2, r5, r6  @ encoding: [0x55,0x86,0x42,0x07]
24746808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@ CHECK: smlsldxhi	r1, r0, r3, r8  @ encoding: [0x73,0x18,0x40,0x87]
24756808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach
24766808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach
24776808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@------------------------------------------------------------------------------
24786808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@ SMMLA/SMMLAR
24796808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@------------------------------------------------------------------------------
24806808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach        smmla r1, r2, r3, r4
24816808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach        smmlar r4, r3, r2, r1
24826808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach        smmlalo r1, r2, r3, r4
24836808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach        smmlarcs r4, r3, r2, r1
24846808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach
24856808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@ CHECK: smmla	r1, r2, r3, r4          @ encoding: [0x12,0x43,0x51,0xe7]
24866808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@ CHECK: smmlar	r4, r3, r2, r1          @ encoding: [0x33,0x12,0x54,0xe7]
24876808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@ CHECK: smmlalo	r1, r2, r3, r4  @ encoding: [0x12,0x43,0x51,0x37]
24886808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@ CHECK: smmlarhs	r4, r3, r2, r1  @ encoding: [0x33,0x12,0x54,0x27]
24896808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach
24906808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach
24916808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@------------------------------------------------------------------------------
24926808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@ SMMLS/SMMLSR
24936808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@------------------------------------------------------------------------------
24946808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach        smmls r1, r2, r3, r4
24956808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach        smmlsr r4, r3, r2, r1
24966808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach        smmlslo r1, r2, r3, r4
24976808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach        smmlsrcs r4, r3, r2, r1
24986808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach
24996808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@ CHECK: smmls	r1, r2, r3, r4          @ encoding: [0xd2,0x43,0x51,0xe7]
25006808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@ CHECK: smmlsr	r4, r3, r2, r1          @ encoding: [0xf3,0x12,0x54,0xe7]
25016808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@ CHECK: smmlslo	r1, r2, r3, r4  @ encoding: [0xd2,0x43,0x51,0x37]
25026808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@ CHECK: smmlsrhs	r4, r3, r2, r1  @ encoding: [0xf3,0x12,0x54,0x27]
25036808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach
25046808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach
25056808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@------------------------------------------------------------------------------
25066808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@ SMMUL/SMMULR
25076808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@------------------------------------------------------------------------------
25086808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach        smmul r2, r3, r4
25096808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach        smmulr r3, r2, r1
25106808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach        smmulcc r2, r3, r4
25116808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach        smmulrhs r3, r2, r1
25126808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach
25136808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@ CHECK: smmul	r2, r3, r4              @ encoding: [0x13,0xf4,0x52,0xe7]
25146808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@ CHECK: smmulr	r3, r2, r1              @ encoding: [0x32,0xf1,0x53,0xe7]
25156808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@ CHECK: smmullo	r2, r3, r4      @ encoding: [0x13,0xf4,0x52,0x37]
25166808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@ CHECK: smmulrhs	r3, r2, r1      @ encoding: [0x32,0xf1,0x53,0x27]
25176808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach
25186808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach
25196808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@------------------------------------------------------------------------------
25206808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@ SMUAD/SMUADX
25216808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@------------------------------------------------------------------------------
25226808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach        smuad r2, r3, r4
25236808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach        smuadx r3, r2, r1
25246808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach        smuadlt r2, r3, r4
25256808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach        smuadxge r3, r2, r1
25266808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach
25276808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@ CHECK: smuad	r2, r3, r4              @ encoding: [0x13,0xf4,0x02,0xe7]
25286808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@ CHECK: smuadx	r3, r2, r1              @ encoding: [0x32,0xf1,0x03,0xe7]
25296808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@ CHECK: smuadlt	r2, r3, r4      @ encoding: [0x13,0xf4,0x02,0xb7]
25306808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@ CHECK: smuadxge	r3, r2, r1      @ encoding: [0x32,0xf1,0x03,0xa7]
25316808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach
2532bf2845c0d8a77d24e9971871badeba8cee7b2648Jim Grosbach
2533bf2845c0d8a77d24e9971871badeba8cee7b2648Jim Grosbach@------------------------------------------------------------------------------
25343c4c879695eb282f01d89da87d5da0a141e7f6f8Jim Grosbach@ SMULBB/SMULBT/SMULTB/SMULTT
2535bf2845c0d8a77d24e9971871badeba8cee7b2648Jim Grosbach@------------------------------------------------------------------------------
2536bf2845c0d8a77d24e9971871badeba8cee7b2648Jim Grosbach        smulbb r3, r9, r0
2537bf2845c0d8a77d24e9971871badeba8cee7b2648Jim Grosbach        smulbt r5, r4, r1
2538bf2845c0d8a77d24e9971871badeba8cee7b2648Jim Grosbach        smultb r4, r2, r2
2539bf2845c0d8a77d24e9971871badeba8cee7b2648Jim Grosbach        smultt r8, r3, r4
2540bf2845c0d8a77d24e9971871badeba8cee7b2648Jim Grosbach        smulbbge r1, r9, r0
2541bf2845c0d8a77d24e9971871badeba8cee7b2648Jim Grosbach        smulbtle r5, r6, r4
2542bf2845c0d8a77d24e9971871badeba8cee7b2648Jim Grosbach        smultbne r2, r3, r2
2543bf2845c0d8a77d24e9971871badeba8cee7b2648Jim Grosbach        smultteq r8, r3, r4
2544bf2845c0d8a77d24e9971871badeba8cee7b2648Jim Grosbach
2545bf2845c0d8a77d24e9971871badeba8cee7b2648Jim Grosbach@ CHECK: smulbb	r3, r9, r0              @ encoding: [0x89,0x00,0x63,0xe1]
2546bf2845c0d8a77d24e9971871badeba8cee7b2648Jim Grosbach@ CHECK: smulbt	r5, r4, r1              @ encoding: [0xc4,0x01,0x65,0xe1]
2547bf2845c0d8a77d24e9971871badeba8cee7b2648Jim Grosbach@ CHECK: smultb	r4, r2, r2              @ encoding: [0xa2,0x02,0x64,0xe1]
2548bf2845c0d8a77d24e9971871badeba8cee7b2648Jim Grosbach@ CHECK: smultt	r8, r3, r4              @ encoding: [0xe3,0x04,0x68,0xe1]
2549bf2845c0d8a77d24e9971871badeba8cee7b2648Jim Grosbach@ CHECK: smulbbge	r1, r9, r0      @ encoding: [0x89,0x00,0x61,0xa1]
2550bf2845c0d8a77d24e9971871badeba8cee7b2648Jim Grosbach@ CHECK: smulbtle	r5, r6, r4      @ encoding: [0xc6,0x04,0x65,0xd1]
2551bf2845c0d8a77d24e9971871badeba8cee7b2648Jim Grosbach@ CHECK: smultbne	r2, r3, r2      @ encoding: [0xa3,0x02,0x62,0x11]
2552bf2845c0d8a77d24e9971871badeba8cee7b2648Jim Grosbach@ CHECK: smultteq	r8, r3, r4      @ encoding: [0xe3,0x04,0x68,0x01]
2553bf2845c0d8a77d24e9971871badeba8cee7b2648Jim Grosbach
25540e76edf8c05c5107acb687b898fea686ae756c38Jim Grosbach
2555bf2845c0d8a77d24e9971871badeba8cee7b2648Jim Grosbach@------------------------------------------------------------------------------
2556bf2845c0d8a77d24e9971871badeba8cee7b2648Jim Grosbach@ SMULL
2557bf2845c0d8a77d24e9971871badeba8cee7b2648Jim Grosbach@------------------------------------------------------------------------------
2558bf2845c0d8a77d24e9971871badeba8cee7b2648Jim Grosbach        smull r3, r9, r0, r1
2559bf2845c0d8a77d24e9971871badeba8cee7b2648Jim Grosbach        smulls r3, r9, r0, r2
2560bf2845c0d8a77d24e9971871badeba8cee7b2648Jim Grosbach        smulleq r8, r3, r4, r5
2561bf2845c0d8a77d24e9971871badeba8cee7b2648Jim Grosbach        smullseq r8, r3, r4, r3
2562bf2845c0d8a77d24e9971871badeba8cee7b2648Jim Grosbach
25630e76edf8c05c5107acb687b898fea686ae756c38Jim Grosbach@ CHECK: smull	r3, r9, r0, r1          @ encoding: [0x90,0x31,0xc9,0xe0]
25640e76edf8c05c5107acb687b898fea686ae756c38Jim Grosbach@ CHECK: smulls	r3, r9, r0, r2          @ encoding: [0x90,0x32,0xd9,0xe0]
25650e76edf8c05c5107acb687b898fea686ae756c38Jim Grosbach@ CHECK: smulleq	r8, r3, r4, r5  @ encoding: [0x94,0x85,0xc3,0x00]
25660e76edf8c05c5107acb687b898fea686ae756c38Jim Grosbach@ CHECK: smullseq	r8, r3, r4, r3  @ encoding: [0x94,0x83,0xd3,0x00]
25670e76edf8c05c5107acb687b898fea686ae756c38Jim Grosbach
25680e76edf8c05c5107acb687b898fea686ae756c38Jim Grosbach
25690e76edf8c05c5107acb687b898fea686ae756c38Jim Grosbach@------------------------------------------------------------------------------
25700e76edf8c05c5107acb687b898fea686ae756c38Jim Grosbach@ SMULWB/SMULWT
25710e76edf8c05c5107acb687b898fea686ae756c38Jim Grosbach@------------------------------------------------------------------------------
25720e76edf8c05c5107acb687b898fea686ae756c38Jim Grosbach        smulwb r3, r9, r0
25730e76edf8c05c5107acb687b898fea686ae756c38Jim Grosbach        smulwt r3, r9, r2
25740e76edf8c05c5107acb687b898fea686ae756c38Jim Grosbach
25750e76edf8c05c5107acb687b898fea686ae756c38Jim Grosbach@ CHECK: smulwb	r3, r9, r0              @ encoding: [0xa9,0x00,0x23,0xe1]
25760e76edf8c05c5107acb687b898fea686ae756c38Jim Grosbach@ CHECK: smulwt	r3, r9, r2              @ encoding: [0xe9,0x02,0x23,0xe1]
25770e76edf8c05c5107acb687b898fea686ae756c38Jim Grosbach
25780e76edf8c05c5107acb687b898fea686ae756c38Jim Grosbach
25790e76edf8c05c5107acb687b898fea686ae756c38Jim Grosbach@------------------------------------------------------------------------------
25800e76edf8c05c5107acb687b898fea686ae756c38Jim Grosbach@ SMUSD/SMUSDX
25810e76edf8c05c5107acb687b898fea686ae756c38Jim Grosbach@------------------------------------------------------------------------------
25820e76edf8c05c5107acb687b898fea686ae756c38Jim Grosbach        smusd r3, r0, r1
25830e76edf8c05c5107acb687b898fea686ae756c38Jim Grosbach        smusdx r3, r9, r2
25840e76edf8c05c5107acb687b898fea686ae756c38Jim Grosbach        smusdeq r8, r3, r2
25850e76edf8c05c5107acb687b898fea686ae756c38Jim Grosbach        smusdxne r7, r4, r3
25860e76edf8c05c5107acb687b898fea686ae756c38Jim Grosbach
25870e76edf8c05c5107acb687b898fea686ae756c38Jim Grosbach@ CHECK: smusd	r3, r0, r1              @ encoding: [0x50,0xf1,0x03,0xe7]
25880e76edf8c05c5107acb687b898fea686ae756c38Jim Grosbach@ CHECK: smusdx	r3, r9, r2              @ encoding: [0x79,0xf2,0x03,0xe7]
25890e76edf8c05c5107acb687b898fea686ae756c38Jim Grosbach@ CHECK: smusdeq	r8, r3, r2      @ encoding: [0x53,0xf2,0x08,0x07]
25900e76edf8c05c5107acb687b898fea686ae756c38Jim Grosbach@ CHECK: smusdxne	r7, r4, r3      @ encoding: [0x74,0xf3,0x07,0x17]
25910e76edf8c05c5107acb687b898fea686ae756c38Jim Grosbach
25920e76edf8c05c5107acb687b898fea686ae756c38Jim Grosbach
25936808f21757f4f2be05a3b12a67d9360b4f9f62e2Jim Grosbach@------------------------------------------------------------------------------
2594e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach@ SRS
2595e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach@------------------------------------------------------------------------------
2596e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach        srsda sp, #5
2597e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach        srsdb sp, #1
2598e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach        srsia sp, #0
2599e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach        srsib sp, #15
2600e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach
2601e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach        srsda sp!, #31
2602e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach        srsdb sp!, #19
2603e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach        srsia sp!, #2
2604e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach        srsib sp!, #14
2605e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach
2606e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach        srsfa sp, #11
2607e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach        srsea sp, #10
2608e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach        srsfd sp, #9
2609e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach        srsed sp, #5
2610e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach
2611e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach        srsfa sp!, #5
2612e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach        srsea sp!, #5
2613e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach        srsfd sp!, #5
2614e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach        srsed sp!, #5
2615e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach
2616e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach        srs sp, #5
2617e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach        srs sp!, #5
2618e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach
2619e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach@ CHECK: srsda	sp, #5                  @ encoding: [0x05,0x05,0x4d,0xf8]
2620e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach@ CHECK: srsdb	sp, #1                  @ encoding: [0x01,0x05,0x4d,0xf9]
2621e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach@ CHECK: srsia	sp, #0                  @ encoding: [0x00,0x05,0xcd,0xf8]
2622e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach@ CHECK: srsib	sp, #15                 @ encoding: [0x0f,0x05,0xcd,0xf9]
2623e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach
2624e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach@ CHECK: srsda	sp!, #31                @ encoding: [0x1f,0x05,0x6d,0xf8]
2625e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach@ CHECK: srsdb	sp!, #19                @ encoding: [0x13,0x05,0x6d,0xf9]
2626e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach@ CHECK: srsia	sp!, #2                 @ encoding: [0x02,0x05,0xed,0xf8]
2627e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach@ CHECK: srsib	sp!, #14                @ encoding: [0x0e,0x05,0xed,0xf9]
2628e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach
2629a744d41a3f8af25938e12617abe2a8d32f6eabf6Tilmann Scheller@ CHECK: srsib	sp, #11                 @ encoding: [0x0b,0x05,0xcd,0xf9]
2630a744d41a3f8af25938e12617abe2a8d32f6eabf6Tilmann Scheller@ CHECK: srsia	sp, #10                 @ encoding: [0x0a,0x05,0xcd,0xf8]
2631a744d41a3f8af25938e12617abe2a8d32f6eabf6Tilmann Scheller@ CHECK: srsdb	sp, #9                  @ encoding: [0x09,0x05,0x4d,0xf9]
2632a744d41a3f8af25938e12617abe2a8d32f6eabf6Tilmann Scheller@ CHECK: srsda	sp, #5                  @ encoding: [0x05,0x05,0x4d,0xf8]
2633e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach
2634e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach@ CHECK: srsib	sp!, #5                 @ encoding: [0x05,0x05,0xed,0xf9]
2635a744d41a3f8af25938e12617abe2a8d32f6eabf6Tilmann Scheller@ CHECK: srsia	sp!, #5                 @ encoding: [0x05,0x05,0xed,0xf8]
2636a744d41a3f8af25938e12617abe2a8d32f6eabf6Tilmann Scheller@ CHECK: srsdb	sp!, #5                 @ encoding: [0x05,0x05,0x6d,0xf9]
2637a744d41a3f8af25938e12617abe2a8d32f6eabf6Tilmann Scheller@ CHECK: srsda	sp!, #5                 @ encoding: [0x05,0x05,0x6d,0xf8]
2638e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach
2639e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach@ CHECK: srsia	sp, #5                  @ encoding: [0x05,0x05,0xcd,0xf8]
26401e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach@ CHECK: srsia	sp!, #5                 @ encoding: [0x05,0x05,0xed,0xf8]
26411e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach
26421e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach@ Compatibility aliases.
26431e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach        srsda #5
26441e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach        srsdb #1
26451e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach        srsia #0
26461e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach        srsib #15
26471e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach
26481e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach        srsda #31!
26491e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach        srsdb #19!
26501e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach        srsia #2!
26511e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach        srsib #14!
26521e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach
26531e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach        srsfa #11
26541e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach        srsea #10
26551e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach        srsfd #9
26561e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach        srsed #5
26571e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach
26581e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach        srsfa #5!
26591e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach        srsea #5!
26601e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach        srsfd #5!
26611e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach        srsed #5!
26621e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach
26631e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach        srs #5
26641e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach        srs #5!
26651e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach
26661e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach@ CHECK: srsda	sp, #5                  @ encoding: [0x05,0x05,0x4d,0xf8]
26671e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach@ CHECK: srsdb	sp, #1                  @ encoding: [0x01,0x05,0x4d,0xf9]
26681e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach@ CHECK: srsia	sp, #0                  @ encoding: [0x00,0x05,0xcd,0xf8]
26691e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach@ CHECK: srsib	sp, #15                 @ encoding: [0x0f,0x05,0xcd,0xf9]
26701e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach@ CHECK: srsda	sp!, #31                @ encoding: [0x1f,0x05,0x6d,0xf8]
26711e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach@ CHECK: srsdb	sp!, #19                @ encoding: [0x13,0x05,0x6d,0xf9]
26721e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach@ CHECK: srsia	sp!, #2                 @ encoding: [0x02,0x05,0xed,0xf8]
26731e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach@ CHECK: srsib	sp!, #14                @ encoding: [0x0e,0x05,0xed,0xf9]
2674a744d41a3f8af25938e12617abe2a8d32f6eabf6Tilmann Scheller@ CHECK: srsib	sp, #11                 @ encoding: [0x0b,0x05,0xcd,0xf9]
2675a744d41a3f8af25938e12617abe2a8d32f6eabf6Tilmann Scheller@ CHECK: srsia	sp, #10                 @ encoding: [0x0a,0x05,0xcd,0xf8]
2676a744d41a3f8af25938e12617abe2a8d32f6eabf6Tilmann Scheller@ CHECK: srsdb	sp, #9                  @ encoding: [0x09,0x05,0x4d,0xf9]
2677a744d41a3f8af25938e12617abe2a8d32f6eabf6Tilmann Scheller@ CHECK: srsda	sp, #5                  @ encoding: [0x05,0x05,0x4d,0xf8]
26781e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach@ CHECK: srsib	sp!, #5                 @ encoding: [0x05,0x05,0xed,0xf9]
2679a744d41a3f8af25938e12617abe2a8d32f6eabf6Tilmann Scheller@ CHECK: srsia	sp!, #5                 @ encoding: [0x05,0x05,0xed,0xf8]
2680a744d41a3f8af25938e12617abe2a8d32f6eabf6Tilmann Scheller@ CHECK: srsdb	sp!, #5                 @ encoding: [0x05,0x05,0x6d,0xf9]
2681a744d41a3f8af25938e12617abe2a8d32f6eabf6Tilmann Scheller@ CHECK: srsda	sp!, #5                 @ encoding: [0x05,0x05,0x6d,0xf8]
26821e8ed2537b3e4b2175cd9e62626f07606c62cfa0Jim Grosbach@ CHECK: srsia	sp, #5                  @ encoding: [0x05,0x05,0xcd,0xf8]
2683e1cf5902ec832cecdd5a94b9701930253d410741Jim Grosbach@ CHECK: srsia	sp!, #5                 @ encoding: [0x05,0x05,0xed,0xf8]
2684580f4a9c1c2fcbb8877463f873c6e9ca2a5ccf9fJim Grosbach
2685580f4a9c1c2fcbb8877463f873c6e9ca2a5ccf9fJim Grosbach
2686580f4a9c1c2fcbb8877463f873c6e9ca2a5ccf9fJim Grosbach@------------------------------------------------------------------------------
2687580f4a9c1c2fcbb8877463f873c6e9ca2a5ccf9fJim Grosbach@ SSAT
2688580f4a9c1c2fcbb8877463f873c6e9ca2a5ccf9fJim Grosbach@------------------------------------------------------------------------------
2689fc2eb31a3c054f9611a2e88238fbb5a8842064a6Jim Grosbach        ssat	r8, #1, r10
2690fc2eb31a3c054f9611a2e88238fbb5a8842064a6Jim Grosbach        ssat	r8, #1, r10, lsl #0
2691fc2eb31a3c054f9611a2e88238fbb5a8842064a6Jim Grosbach        ssat	r8, #1, r10, lsl #31
2692fc2eb31a3c054f9611a2e88238fbb5a8842064a6Jim Grosbach        ssat	r8, #1, r10, asr #32
2693fc2eb31a3c054f9611a2e88238fbb5a8842064a6Jim Grosbach        ssat	r8, #1, r10, asr #1
2694580f4a9c1c2fcbb8877463f873c6e9ca2a5ccf9fJim Grosbach
2695580f4a9c1c2fcbb8877463f873c6e9ca2a5ccf9fJim Grosbach@ CHECK: ssat	r8, #1, r10             @ encoding: [0x1a,0x80,0xa0,0xe6]
2696580f4a9c1c2fcbb8877463f873c6e9ca2a5ccf9fJim Grosbach@ CHECK: ssat	r8, #1, r10             @ encoding: [0x1a,0x80,0xa0,0xe6]
2697580f4a9c1c2fcbb8877463f873c6e9ca2a5ccf9fJim Grosbach@ CHECK: ssat	r8, #1, r10, lsl #31    @ encoding: [0x9a,0x8f,0xa0,0xe6]
2698580f4a9c1c2fcbb8877463f873c6e9ca2a5ccf9fJim Grosbach@ CHECK: ssat	r8, #1, r10, asr #32    @ encoding: [0x5a,0x80,0xa0,0xe6]
2699580f4a9c1c2fcbb8877463f873c6e9ca2a5ccf9fJim Grosbach@ CHECK: ssat	r8, #1, r10, asr #1     @ encoding: [0xda,0x80,0xa0,0xe6]
2700580f4a9c1c2fcbb8877463f873c6e9ca2a5ccf9fJim Grosbach
2701f49433523e8a39db6d83503e312ae55160eed90aJim Grosbach
2702f49433523e8a39db6d83503e312ae55160eed90aJim Grosbach@------------------------------------------------------------------------------
2703f49433523e8a39db6d83503e312ae55160eed90aJim Grosbach@ SSAT16
2704f49433523e8a39db6d83503e312ae55160eed90aJim Grosbach@------------------------------------------------------------------------------
2705fc2eb31a3c054f9611a2e88238fbb5a8842064a6Jim Grosbach        ssat16	r2, #1, r7
2706fc2eb31a3c054f9611a2e88238fbb5a8842064a6Jim Grosbach        ssat16	r3, #16, r5
2707f49433523e8a39db6d83503e312ae55160eed90aJim Grosbach
2708f49433523e8a39db6d83503e312ae55160eed90aJim Grosbach@ CHECK: ssat16	r2, #1, r7              @ encoding: [0x37,0x2f,0xa0,0xe6]
2709f49433523e8a39db6d83503e312ae55160eed90aJim Grosbach@ CHECK: ssat16	r3, #16, r5             @ encoding: [0x35,0x3f,0xaf,0xe6]
2710f49433523e8a39db6d83503e312ae55160eed90aJim Grosbach
2711f49433523e8a39db6d83503e312ae55160eed90aJim Grosbach
27126ab4e3dd2375c3dcee06dde37437dc0c5a99aa24Jim Grosbach@------------------------------------------------------------------------------
2713185f92e7d019bc52413a2b082d61e35c80f8b597Jim Grosbach@ SSAX
2714185f92e7d019bc52413a2b082d61e35c80f8b597Jim Grosbach@------------------------------------------------------------------------------
2715185f92e7d019bc52413a2b082d61e35c80f8b597Jim Grosbach        ssax r2, r3, r4
2716185f92e7d019bc52413a2b082d61e35c80f8b597Jim Grosbach        ssaxlt r2, r3, r4
2717185f92e7d019bc52413a2b082d61e35c80f8b597Jim Grosbach
2718185f92e7d019bc52413a2b082d61e35c80f8b597Jim Grosbach@ CHECK: ssax	r2, r3, r4              @ encoding: [0x54,0x2f,0x13,0xe6]
2719185f92e7d019bc52413a2b082d61e35c80f8b597Jim Grosbach@ CHECK: ssaxlt	r2, r3, r4              @ encoding: [0x54,0x2f,0x13,0xb6]
2720185f92e7d019bc52413a2b082d61e35c80f8b597Jim Grosbach
2721185f92e7d019bc52413a2b082d61e35c80f8b597Jim Grosbach@------------------------------------------------------------------------------
2722185f92e7d019bc52413a2b082d61e35c80f8b597Jim Grosbach@ SSUB16/SSUB8
2723185f92e7d019bc52413a2b082d61e35c80f8b597Jim Grosbach@------------------------------------------------------------------------------
2724185f92e7d019bc52413a2b082d61e35c80f8b597Jim Grosbach        ssub16 r1, r0, r6
2725185f92e7d019bc52413a2b082d61e35c80f8b597Jim Grosbach        ssub16ne r5, r3, r2
2726185f92e7d019bc52413a2b082d61e35c80f8b597Jim Grosbach        ssub8 r9, r2, r4
2727185f92e7d019bc52413a2b082d61e35c80f8b597Jim Grosbach        ssub8eq r5, r1, r2
2728185f92e7d019bc52413a2b082d61e35c80f8b597Jim Grosbach
2729185f92e7d019bc52413a2b082d61e35c80f8b597Jim Grosbach@ CHECK: ssub16	r1, r0, r6              @ encoding: [0x76,0x1f,0x10,0xe6]
2730185f92e7d019bc52413a2b082d61e35c80f8b597Jim Grosbach@ CHECK: ssub16ne	r5, r3, r2      @ encoding: [0x72,0x5f,0x13,0x16]
2731185f92e7d019bc52413a2b082d61e35c80f8b597Jim Grosbach@ CHECK: ssub8	r9, r2, r4              @ encoding: [0xf4,0x9f,0x12,0xe6]
2732185f92e7d019bc52413a2b082d61e35c80f8b597Jim Grosbach@ CHECK: ssub8eq	r5, r1, r2      @ encoding: [0xf2,0x5f,0x11,0x06]
2733185f92e7d019bc52413a2b082d61e35c80f8b597Jim Grosbach
27349f45754750b03516db23b21021db72b20336ea85Jim Grosbach@------------------------------------------------------------------------------
27359f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ STC{L}/STC2{L}
27369f45754750b03516db23b21021db72b20336ea85Jim Grosbach@------------------------------------------------------------------------------
27379f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stc2 p0, c8, [r1, #4]
27389f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stc2 p1, c7, [r2]
27399f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stc2 p2, c6, [r3, #-224]
27409f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stc2 p3, c5, [r4, #-120]!
27419f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stc2 p4, c4, [r5], #16
27429f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stc2 p5, c3, [r6], #-72
27439f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stc2l p6, c2, [r7, #4]
27449f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stc2l p7, c1, [r8]
27459f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stc2l p8, c0, [r9, #-224]
27469f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stc2l p9, c1, [r10, #-120]!
27471b91231347c00bf1be46bdd5b27ae8c45fdc0d0cArtyom Skrobov        stc2l p0, c2, [r11], #16
27481b91231347c00bf1be46bdd5b27ae8c45fdc0d0cArtyom Skrobov        stc2l p1, c3, [r12], #-72
27499f45754750b03516db23b21021db72b20336ea85Jim Grosbach
27509f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stc p12, c4, [r0, #4]
27519f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stc p13, c5, [r1]
27529f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stc p14, c6, [r2, #-224]
27539f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stc p15, c7, [r3, #-120]!
27549f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stc p5, c8, [r4], #16
27559f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stc p4, c9, [r5], #-72
27569f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stcl p3, c10, [r6, #4]
27579f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stcl p2, c11, [r7]
27589f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stcl p1, c12, [r8, #-224]
27599f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stcl p0, c13, [r9, #-120]!
27609f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stcl p6, c14, [r10], #16
27619f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stcl p7, c15, [r11], #-72
27629f45754750b03516db23b21021db72b20336ea85Jim Grosbach
27639f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stclo p12, c4, [r0, #4]
27649f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stchi p13, c5, [r1]
27659f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stccs p14, c6, [r2, #-224]
27669f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stccc p15, c7, [r3, #-120]!
27679f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stceq p5, c8, [r4], #16
27689f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stcgt p4, c9, [r5], #-72
27699f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stcllt p3, c10, [r6, #4]
27709f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stclge p2, c11, [r7]
27719f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stclle p1, c12, [r8, #-224]
27729f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stclne p0, c13, [r9, #-120]!
27739f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stcleq p6, c14, [r10], #16
27749f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stclhi p7, c15, [r11], #-72
27759f45754750b03516db23b21021db72b20336ea85Jim Grosbach
27769f45754750b03516db23b21021db72b20336ea85Jim Grosbach        stc2 p2, c8, [r1], { 25 }
27779f45754750b03516db23b21021db72b20336ea85Jim Grosbach
27789f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stc2	p0, c8, [r1, #4]        @ encoding: [0x01,0x80,0x81,0xfd]
27799f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stc2	p1, c7, [r2]            @ encoding: [0x00,0x71,0x82,0xfd]
27809f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stc2	p2, c6, [r3, #-224]     @ encoding: [0x38,0x62,0x03,0xfd]
27819f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stc2	p3, c5, [r4, #-120]!    @ encoding: [0x1e,0x53,0x24,0xfd]
27829f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stc2	p4, c4, [r5], #16       @ encoding: [0x04,0x44,0xa5,0xfc]
27839f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stc2	p5, c3, [r6], #-72      @ encoding: [0x12,0x35,0x26,0xfc]
27849f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stc2l	p6, c2, [r7, #4]        @ encoding: [0x01,0x26,0xc7,0xfd]
27859f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stc2l	p7, c1, [r8]            @ encoding: [0x00,0x17,0xc8,0xfd]
27869f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stc2l	p8, c0, [r9, #-224]     @ encoding: [0x38,0x08,0x49,0xfd]
27879f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stc2l	p9, c1, [r10, #-120]!   @ encoding: [0x1e,0x19,0x6a,0xfd]
27881b91231347c00bf1be46bdd5b27ae8c45fdc0d0cArtyom Skrobov@ CHECK: stc2l	p0, c2, [r11], #16      @ encoding: [0x04,0x20,0xeb,0xfc]
27891b91231347c00bf1be46bdd5b27ae8c45fdc0d0cArtyom Skrobov@ CHECK: stc2l	p1, c3, [r12], #-72     @ encoding: [0x12,0x31,0x6c,0xfc]
27909f45754750b03516db23b21021db72b20336ea85Jim Grosbach
27919f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stc	p12, c4, [r0, #4]       @ encoding: [0x01,0x4c,0x80,0xed]
27929f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stc	p13, c5, [r1]           @ encoding: [0x00,0x5d,0x81,0xed]
27939f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stc	p14, c6, [r2, #-224]    @ encoding: [0x38,0x6e,0x02,0xed]
27949f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stc	p15, c7, [r3, #-120]!   @ encoding: [0x1e,0x7f,0x23,0xed]
27959f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stc	p5, c8, [r4], #16       @ encoding: [0x04,0x85,0xa4,0xec]
27969f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stc	p4, c9, [r5], #-72      @ encoding: [0x12,0x94,0x25,0xec]
27979f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stcl	p3, c10, [r6, #4]       @ encoding: [0x01,0xa3,0xc6,0xed]
27989f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stcl	p2, c11, [r7]           @ encoding: [0x00,0xb2,0xc7,0xed]
27999f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stcl	p1, c12, [r8, #-224]    @ encoding: [0x38,0xc1,0x48,0xed]
28009f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stcl	p0, c13, [r9, #-120]!   @ encoding: [0x1e,0xd0,0x69,0xed]
28019f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stcl	p6, c14, [r10], #16     @ encoding: [0x04,0xe6,0xea,0xec]
28029f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stcl	p7, c15, [r11], #-72    @ encoding: [0x12,0xf7,0x6b,0xec]
28039f45754750b03516db23b21021db72b20336ea85Jim Grosbach
28049f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stclo	p12, c4, [r0, #4]       @ encoding: [0x01,0x4c,0x80,0x3d]
28059f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stchi	p13, c5, [r1]           @ encoding: [0x00,0x5d,0x81,0x8d]
28069f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stchs	p14, c6, [r2, #-224]    @ encoding: [0x38,0x6e,0x02,0x2d]
28079f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stclo	p15, c7, [r3, #-120]!   @ encoding: [0x1e,0x7f,0x23,0x3d]
28089f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stceq	p5, c8, [r4], #16       @ encoding: [0x04,0x85,0xa4,0x0c]
28099f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stcgt	p4, c9, [r5], #-72      @ encoding: [0x12,0x94,0x25,0xcc]
28109f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stcllt	p3, c10, [r6, #4]       @ encoding: [0x01,0xa3,0xc6,0xbd]
28119f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stclge	p2, c11, [r7]           @ encoding: [0x00,0xb2,0xc7,0xad]
28129f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stclle	p1, c12, [r8, #-224]    @ encoding: [0x38,0xc1,0x48,0xdd]
28139f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stclne	p0, c13, [r9, #-120]!   @ encoding: [0x1e,0xd0,0x69,0x1d]
28149f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stcleq	p6, c14, [r10], #16     @ encoding: [0x04,0xe6,0xea,0x0c]
28159f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stclhi	p7, c15, [r11], #-72    @ encoding: [0x12,0xf7,0x6b,0x8c]
28169f45754750b03516db23b21021db72b20336ea85Jim Grosbach
28179f45754750b03516db23b21021db72b20336ea85Jim Grosbach@ CHECK: stc2	p2, c8, [r1], {25}      @ encoding: [0x19,0x82,0x81,0xfc]
28189f45754750b03516db23b21021db72b20336ea85Jim Grosbach
2819185f92e7d019bc52413a2b082d61e35c80f8b597Jim Grosbach
2820185f92e7d019bc52413a2b082d61e35c80f8b597Jim Grosbach@------------------------------------------------------------------------------
28213b14a5c5469176effb921d91d4494f0aa2919fd0Jim Grosbach@ STM*
28223b14a5c5469176effb921d91d4494f0aa2919fd0Jim Grosbach@------------------------------------------------------------------------------
28233b14a5c5469176effb921d91d4494f0aa2919fd0Jim Grosbach        stm       r2, {r1,r3-r6,sp}
2824a46c658c6619e979a54ec1e4dc919b3a0319129aJim Grosbach        stmia     r3, {r1,r3-r6,lr}
2825a46c658c6619e979a54ec1e4dc919b3a0319129aJim Grosbach        stmib     r4, {r1,r3-r6,sp}
2826a46c658c6619e979a54ec1e4dc919b3a0319129aJim Grosbach        stmda     r5, {r1,r3-r6,sp}
2827a46c658c6619e979a54ec1e4dc919b3a0319129aJim Grosbach        stmdb     r6, {r1,r3-r6,r8}
2828a46c658c6619e979a54ec1e4dc919b3a0319129aJim Grosbach        stmfd     sp, {r1,r3-r6,sp}
28293b14a5c5469176effb921d91d4494f0aa2919fd0Jim Grosbach
28303b14a5c5469176effb921d91d4494f0aa2919fd0Jim Grosbach        @ with update
2831a46c658c6619e979a54ec1e4dc919b3a0319129aJim Grosbach        stm       r8!, {r1,r3-r6,sp}
2832a46c658c6619e979a54ec1e4dc919b3a0319129aJim Grosbach        stmib     r9!, {r1,r3-r6,sp}
2833a46c658c6619e979a54ec1e4dc919b3a0319129aJim Grosbach        stmda     sp!, {r1,r3-r6}
2834a46c658c6619e979a54ec1e4dc919b3a0319129aJim Grosbach        stmdb     r0!, {r1,r5,r7,sp}
2835a46c658c6619e979a54ec1e4dc919b3a0319129aJim Grosbach
2836e29e2afc738348c74966ed81b3568779247c9fbdChad Rosier@ CHECK: stm	r2, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x82,0xe8]
2837e29e2afc738348c74966ed81b3568779247c9fbdChad Rosier@ CHECK: stm	r3, {r1, r3, r4, r5, r6, lr} @ encoding: [0x7a,0x40,0x83,0xe8]
2838e29e2afc738348c74966ed81b3568779247c9fbdChad Rosier@ CHECK: stmib	r4, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x84,0xe9]
2839e29e2afc738348c74966ed81b3568779247c9fbdChad Rosier@ CHECK: stmda	r5, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x05,0xe8]
2840a46c658c6619e979a54ec1e4dc919b3a0319129aJim Grosbach@ CHECK: stmdb	r6, {r1, r3, r4, r5, r6, r8} @ encoding: [0x7a,0x01,0x06,0xe9]
2841e29e2afc738348c74966ed81b3568779247c9fbdChad Rosier@ CHECK: stmdb	sp, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x0d,0xe9]
2842a46c658c6619e979a54ec1e4dc919b3a0319129aJim Grosbach
2843e29e2afc738348c74966ed81b3568779247c9fbdChad Rosier@ CHECK: stm	r8!, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0xa8,0xe8]
2844e29e2afc738348c74966ed81b3568779247c9fbdChad Rosier@ CHECK: stmib	r9!, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0xa9,0xe9]
28459c6712721c114f8e67b9a6b3cb1dd5d18b4cb435Jim Grosbach@ CHECK: stmda	sp!, {r1, r3, r4, r5, r6}     @ encoding: [0x7a,0x00,0x2d,0xe8]
2846e29e2afc738348c74966ed81b3568779247c9fbdChad Rosier@ CHECK: stmdb	r0!, {r1, r5, r7, sp}         @ encoding: [0xa2,0x20,0x20,0xe9]
2847873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach
2848873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach
2849873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach@------------------------------------------------------------------------------
285036711e4a3c0b53000ea594233bd619dbf252558cJim Grosbach@ STREX/STREXB/STREXH/STREXD
285136711e4a3c0b53000ea594233bd619dbf252558cJim Grosbach@------------------------------------------------------------------------------
285236711e4a3c0b53000ea594233bd619dbf252558cJim Grosbach        strexb  r1, r3, [r4]
285336711e4a3c0b53000ea594233bd619dbf252558cJim Grosbach        strexh  r4, r2, [r5]
285436711e4a3c0b53000ea594233bd619dbf252558cJim Grosbach        strex  r2, r1, [r7]
285536711e4a3c0b53000ea594233bd619dbf252558cJim Grosbach        strexd  r6, r2, r3, [r8]
285636711e4a3c0b53000ea594233bd619dbf252558cJim Grosbach
285736711e4a3c0b53000ea594233bd619dbf252558cJim Grosbach@ CHECK: strexb	r1, r3, [r4]            @ encoding: [0x93,0x1f,0xc4,0xe1]
285836711e4a3c0b53000ea594233bd619dbf252558cJim Grosbach@ CHECK: strexh	r4, r2, [r5]            @ encoding: [0x92,0x4f,0xe5,0xe1]
285936711e4a3c0b53000ea594233bd619dbf252558cJim Grosbach@ CHECK: strex	r2, r1, [r7]            @ encoding: [0x91,0x2f,0x87,0xe1]
286036711e4a3c0b53000ea594233bd619dbf252558cJim Grosbach@ CHECK: strexd	r6, r2, r3, [r8]        @ encoding: [0x92,0x6f,0xa8,0xe1]
2861873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach
28620da10cf44d0f22111dae728bb535ade2283d976bOwen Anderson@------------------------------------------------------------------------------
28630da10cf44d0f22111dae728bb535ade2283d976bOwen Anderson@ STR
28640da10cf44d0f22111dae728bb535ade2283d976bOwen Anderson@------------------------------------------------------------------------------
28650da10cf44d0f22111dae728bb535ade2283d976bOwen Anderson        strpl	r3, [r10, #-0]!
28660da10cf44d0f22111dae728bb535ade2283d976bOwen Anderson        strpl	r3, [r10, #0]!
28670da10cf44d0f22111dae728bb535ade2283d976bOwen Anderson
28680da10cf44d0f22111dae728bb535ade2283d976bOwen Anderson@ CHECK: strpl	r3, [r10, #-0]!         @ encoding: [0x00,0x30,0x2a,0x55]
2869d64ee4455a9d2fcec7e001c7f4c02d490bed5158Quentin Colombet@ CHECK: strpl	r3, [r10, #0]!          @ encoding: [0x00,0x30,0xaa,0x55]
2870873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach
2871873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach@------------------------------------------------------------------------------
2872873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach@ SUB
2873873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach@------------------------------------------------------------------------------
2874873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach        sub r4, r5, #0xf000
2875ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sub r4, r5, $0xf000
2876ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sub r4, r5, 0xf000
2877ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sub r7, r8, #(0xff << 16)
2878ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sub r7, r8, #-2147483638
2879ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sub r7, r8, #42, #2
2880ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sub r7, r8, #40, #2
2881ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sub r7, r8, $40, $2
2882ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sub r7, r8, 40, 2
2883ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sub r7, r8, (20 * 2), (1 << 1)
2884873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach        sub r4, r5, r6
2885873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach        sub r4, r5, r6, lsl #5
2886873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach        sub r4, r5, r6, lsr #5
2887873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach        sub r4, r5, r6, lsr #5
2888873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach        sub r4, r5, r6, asr #5
2889873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach        sub r4, r5, r6, ror #5
2890873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach        sub r6, r7, r8, lsl r9
2891873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach        sub r6, r7, r8, lsr r9
2892873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach        sub r6, r7, r8, asr r9
2893873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach        sub r6, r7, r8, ror r9
2894873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach
2895873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach        @ destination register is optional
2896873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach        sub r5, #0xf000
2897ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sub r5, $0xf000
2898ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sub r5, 0xf000
2899ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sub r7, #(0xff << 16)
2900ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sub r7, #-2147483638
2901ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sub r7, #42, #2
2902ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sub r7, #40, #2
2903ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sub r7, $40, $2
2904ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sub r7, 40, 2
2905ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        sub r7, (20 * 2), (1 << 1)
2906873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach        sub r4, r5
2907873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach        sub r4, r5, lsl #5
2908873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach        sub r4, r5, lsr #5
2909873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach        sub r4, r5, lsr #5
2910873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach        sub r4, r5, asr #5
2911873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach        sub r4, r5, ror #5
2912873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach        sub r6, r7, lsl r9
2913873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach        sub r6, r7, lsr r9
2914873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach        sub r6, r7, asr r9
2915873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach        sub r6, r7, ror r9
2916873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach
2917873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach@ CHECK: sub	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x45,0xe2]
2918ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sub	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x45,0xe2]
2919ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sub	r4, r5, #61440          @ encoding: [0x0f,0x4a,0x45,0xe2]
2920ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sub	r7, r8, #16711680       @ encoding: [0xff,0x78,0x48,0xe2]
2921ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sub    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0x48,0xe2]
2922ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sub    r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0x48,0xe2]
2923ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sub    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x48,0xe2]
2924ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sub    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x48,0xe2]
2925ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sub    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x48,0xe2]
2926ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sub    r7, r8, #40, #2         @ encoding: [0x28,0x71,0x48,0xe2]
2927873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach@ CHECK: sub	r4, r5, r6              @ encoding: [0x06,0x40,0x45,0xe0]
2928873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach@ CHECK: sub	r4, r5, r6, lsl #5      @ encoding: [0x86,0x42,0x45,0xe0]
2929873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach@ CHECK: sub	r4, r5, r6, lsr #5      @ encoding: [0xa6,0x42,0x45,0xe0]
2930873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach@ CHECK: sub	r4, r5, r6, lsr #5      @ encoding: [0xa6,0x42,0x45,0xe0]
2931873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach@ CHECK: sub	r4, r5, r6, asr #5      @ encoding: [0xc6,0x42,0x45,0xe0]
2932873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach@ CHECK: sub	r4, r5, r6, ror #5      @ encoding: [0xe6,0x42,0x45,0xe0]
2933873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach@ CHECK: sub	r6, r7, r8, lsl r9      @ encoding: [0x18,0x69,0x47,0xe0]
2934873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach@ CHECK: sub	r6, r7, r8, lsr r9      @ encoding: [0x38,0x69,0x47,0xe0]
2935873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach@ CHECK: sub	r6, r7, r8, asr r9      @ encoding: [0x58,0x69,0x47,0xe0]
2936873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach@ CHECK: sub	r6, r7, r8, ror r9      @ encoding: [0x78,0x69,0x47,0xe0]
2937873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach
2938873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach
2939873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach@ CHECK: sub	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x45,0xe2]
2940ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sub	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x45,0xe2]
2941ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sub	r5, r5, #61440          @ encoding: [0x0f,0x5a,0x45,0xe2]
2942ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sub	r7, r7, #16711680       @ encoding: [0xff,0x78,0x47,0xe2]
2943ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sub	r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0x47,0xe2]
2944ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sub	r7, r7, #-2147483638    @ encoding: [0x2a,0x71,0x47,0xe2]
2945ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sub	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x47,0xe2]
2946ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sub	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x47,0xe2
2947ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sub	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x47,0xe2]
2948ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: sub	r7, r7, #40, #2         @ encoding: [0x28,0x71,0x47,0xe2]
2949873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach@ CHECK: sub	r4, r4, r5              @ encoding: [0x05,0x40,0x44,0xe0]
2950873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach@ CHECK: sub	r4, r4, r5, lsl #5      @ encoding: [0x85,0x42,0x44,0xe0]
2951873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach@ CHECK: sub	r4, r4, r5, lsr #5      @ encoding: [0xa5,0x42,0x44,0xe0]
2952873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach@ CHECK: sub	r4, r4, r5, lsr #5      @ encoding: [0xa5,0x42,0x44,0xe0]
2953873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach@ CHECK: sub	r4, r4, r5, asr #5      @ encoding: [0xc5,0x42,0x44,0xe0]
2954873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach@ CHECK: sub	r4, r4, r5, ror #5      @ encoding: [0xe5,0x42,0x44,0xe0]
2955873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach@ CHECK: sub	r6, r6, r7, lsl r9      @ encoding: [0x17,0x69,0x46,0xe0]
2956873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach@ CHECK: sub	r6, r6, r7, lsr r9      @ encoding: [0x37,0x69,0x46,0xe0]
2957873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach@ CHECK: sub	r6, r6, r7, asr r9      @ encoding: [0x57,0x69,0x46,0xe0]
2958873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach@ CHECK: sub	r6, r6, r7, ror r9      @ encoding: [0x77,0x69,0x46,0xe0]
2959873db3eebae3cf1e0931149896f262d17a4dc79dJim Grosbach
29608ed97ef5f6980c689a5770ec30488601201e17c3Richard Barton    @ Test right shift by 32, which is encoded as 0
29618ed97ef5f6980c689a5770ec30488601201e17c3Richard Barton    sub r3, r1, r2, lsr #32
29628ed97ef5f6980c689a5770ec30488601201e17c3Richard Barton    sub r3, r1, r2, asr #32
29638ed97ef5f6980c689a5770ec30488601201e17c3Richard Barton@ CHECK: sub	r3, r1, r2, lsr #32     @ encoding: [0x22,0x30,0x41,0xe0]
29648ed97ef5f6980c689a5770ec30488601201e17c3Richard Barton@ CHECK: sub	r3, r1, r2, asr #32     @ encoding: [0x42,0x30,0x41,0xe0]
2965ed8384806e56952c44f8a717c1ef54a8468d2c8dJim Grosbach
2966ed8384806e56952c44f8a717c1ef54a8468d2c8dJim Grosbach@------------------------------------------------------------------------------
2967ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ SUBS
2968ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@------------------------------------------------------------------------------
2969ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    subs r7, r8, #16711680
2970ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    subs r7, r8, $16711680
2971ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    subs r7, r8, 16711680
2972ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    subs r7, r8, #(0xff << 16)
2973ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    subs r7, r8, #-2147483638
2974ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    subs r7, r8, #42, #2
2975ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    subs r7, r8, #40, #2
2976ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    subs r7, r8, $40, $2
2977ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    subs r7, r8, 40, 2
2978ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines    subs r7, r8, (20 * 2), (1 << 1)
2979ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines
2980ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: subs	r7, r8, #16711680       @ encoding: [0xff,0x78,0x58,0xe2]
2981ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: subs	r7, r8, #16711680       @ encoding: [0xff,0x78,0x58,0xe2]
2982ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: subs	r7, r8, #16711680       @ encoding: [0xff,0x78,0x58,0xe2]
2983ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: subs	r7, r8, #16711680       @ encoding: [0xff,0x78,0x58,0xe2]
2984ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: subs   r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0x58,0xe2]
2985ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: subs   r7, r8, #-2147483638    @ encoding: [0x2a,0x71,0x58,0xe2]
2986ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: subs   r7, r8, #40, #2         @ encoding: [0x28,0x71,0x58,0xe2]
2987ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: subs   r7, r8, #40, #2         @ encoding: [0x28,0x71,0x58,0xe2]
2988ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: subs   r7, r8, #40, #2         @ encoding: [0x28,0x71,0x58,0xe2]
2989ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: subs   r7, r8, #40, #2         @ encoding: [0x28,0x71,0x58,0xe2]
2990ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines
2991ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@------------------------------------------------------------------------------
2992ed8384806e56952c44f8a717c1ef54a8468d2c8dJim Grosbach@ SVC
2993ed8384806e56952c44f8a717c1ef54a8468d2c8dJim Grosbach@------------------------------------------------------------------------------
2994ed8384806e56952c44f8a717c1ef54a8468d2c8dJim Grosbach        svc #16
2995ed8384806e56952c44f8a717c1ef54a8468d2c8dJim Grosbach        svc #0
2996ed8384806e56952c44f8a717c1ef54a8468d2c8dJim Grosbach        svc #0xffffff
2997ed8384806e56952c44f8a717c1ef54a8468d2c8dJim Grosbach
2998ed8384806e56952c44f8a717c1ef54a8468d2c8dJim Grosbach@ CHECK: svc	#16                     @ encoding: [0x10,0x00,0x00,0xef]
2999ed8384806e56952c44f8a717c1ef54a8468d2c8dJim Grosbach@ CHECK: svc	#0                      @ encoding: [0x00,0x00,0x00,0xef]
3000ed8384806e56952c44f8a717c1ef54a8468d2c8dJim Grosbach@ CHECK: svc	#16777215               @ encoding: [0xff,0xff,0xff,0xef]
30014f6f13db1a8a491ecab6af64549fbdc23cb5ba56Jim Grosbach
30024f6f13db1a8a491ecab6af64549fbdc23cb5ba56Jim Grosbach
30034f6f13db1a8a491ecab6af64549fbdc23cb5ba56Jim Grosbach@------------------------------------------------------------------------------
30044f6f13db1a8a491ecab6af64549fbdc23cb5ba56Jim Grosbach@ SWP/SWPB
30054f6f13db1a8a491ecab6af64549fbdc23cb5ba56Jim Grosbach@------------------------------------------------------------------------------
30064f6f13db1a8a491ecab6af64549fbdc23cb5ba56Jim Grosbach        swp r1, r2, [r3]
30074f6f13db1a8a491ecab6af64549fbdc23cb5ba56Jim Grosbach        swp r4, r4, [r6]
30084f6f13db1a8a491ecab6af64549fbdc23cb5ba56Jim Grosbach        swpb r5, r1, [r9]
30094f6f13db1a8a491ecab6af64549fbdc23cb5ba56Jim Grosbach
30104f6f13db1a8a491ecab6af64549fbdc23cb5ba56Jim Grosbach@ CHECK: swp	r1, r2, [r3]            @ encoding: [0x92,0x10,0x03,0xe1]
30114f6f13db1a8a491ecab6af64549fbdc23cb5ba56Jim Grosbach@ CHECK: swp	r4, r4, [r6]            @ encoding: [0x94,0x40,0x06,0xe1]
30124f6f13db1a8a491ecab6af64549fbdc23cb5ba56Jim Grosbach@ CHECK: swpb	r5, r1, [r9]            @ encoding: [0x91,0x50,0x49,0xe1]
30137e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach
30147e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach
30157e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach@------------------------------------------------------------------------------
30167e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach@ SXTAB
30177e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach@------------------------------------------------------------------------------
30187e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach        sxtab r2, r3, r4
30197e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach        sxtab r4, r5, r6, ror #0
30207e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach        sxtablt r6, r2, r9, ror #8
30217e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach        sxtab r5, r1, r4, ror #16
30227e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach        sxtab r7, r8, r3, ror #24
30237e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach
30247e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach@ CHECK: sxtab	r2, r3, r4              @ encoding: [0x74,0x20,0xa3,0xe6]
30257e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach@ CHECK: sxtab	r4, r5, r6              @ encoding: [0x76,0x40,0xa5,0xe6]
3026356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: sxtablt r6, r2, r9, ror #8     @ encoding: [0x79,0x64,0xa2,0xb6]
3027356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: sxtab	r5, r1, r4, ror #16     @ encoding: [0x74,0x58,0xa1,0xe6]
3028356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: sxtab	r7, r8, r3, ror #24     @ encoding: [0x73,0x7c,0xa8,0xe6]
30297e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach
30307e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach
30317e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach@------------------------------------------------------------------------------
30327e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach@ SXTAB16
30337e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach@------------------------------------------------------------------------------
30347e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach        sxtab16ge r0, r1, r4
30357e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach        sxtab16 r6, r2, r7, ror #0
30367e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach        sxtab16 r3, r5, r8, ror #8
30377e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach        sxtab16 r3, r2, r1, ror #16
30387e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach        sxtab16eq r1, r2, r3, ror #24
30397e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach
30407e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach@ CHECK: sxtab16ge	r0, r1, r4      @ encoding: [0x74,0x00,0x81,0xa6]
30417e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach@ CHECK: sxtab16	r6, r2, r7      @ encoding: [0x77,0x60,0x82,0xe6]
3042356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: sxtab16 r3, r5, r8, ror #8     @ encoding: [0x78,0x34,0x85,0xe6]
3043356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: sxtab16 r3, r2, r1, ror #16    @ encoding: [0x71,0x38,0x82,0xe6]
3044356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: sxtab16eq r1, r2, r3, ror #24  @ encoding: [0x73,0x1c,0x82,0x06]
30457e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach
30467e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach@------------------------------------------------------------------------------
30477e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach@ SXTAH
30487e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach@------------------------------------------------------------------------------
30497e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach        sxtah r1, r3, r9
30507e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach        sxtahhi r6, r1, r6, ror #0
30517e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach        sxtah r3, r8, r3, ror #8
30527e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach        sxtahlo r2, r2, r4, ror #16
30537e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach        sxtah r9, r3, r3, ror #24
30547e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach
30557e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach@ CHECK: sxtah	r1, r3, r9              @ encoding: [0x79,0x10,0xb3,0xe6]
30567e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach@ CHECK: sxtahhi	r6, r1, r6      @ encoding: [0x76,0x60,0xb1,0x86]
3057356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: sxtah	r3, r8, r3, ror #8      @ encoding: [0x73,0x34,0xb8,0xe6]
3058356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: sxtahlo r2, r2, r4, ror #16    @ encoding: [0x74,0x28,0xb2,0x36]
3059356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: sxtah	r9, r3, r3, ror #24     @ encoding: [0x73,0x9c,0xb3,0xe6]
30607e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach
30617e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach@------------------------------------------------------------------------------
30627e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach@ SXTB
30637e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach@------------------------------------------------------------------------------
30647e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach        sxtbge r2, r4
30657e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach        sxtb r5, r6, ror #0
30667e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach        sxtb r6, r9, ror #8
30677e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach        sxtbcc r5, r1, ror #16
30687e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach        sxtb r8, r3, ror #24
30697e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach
30707e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach@ CHECK: sxtbge	r2, r4                  @ encoding: [0x74,0x20,0xaf,0xa6]
30717e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach@ CHECK: sxtb	r5, r6                  @ encoding: [0x76,0x50,0xaf,0xe6]
3072356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: sxtb	r6, r9, ror #8          @ encoding: [0x79,0x64,0xaf,0xe6]
3073356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: sxtblo	r5, r1, ror #16         @ encoding: [0x71,0x58,0xaf,0x36]
3074356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: sxtb	r8, r3, ror #24         @ encoding: [0x73,0x8c,0xaf,0xe6]
30757e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach
30767e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach
30777e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach@------------------------------------------------------------------------------
30787e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach@ SXTB16
30797e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach@------------------------------------------------------------------------------
30807e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach        sxtb16 r1, r4
30817e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach        sxtb16 r6, r7, ror #0
30827e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach        sxtb16cs r3, r5, ror #8
30837e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach        sxtb16 r3, r1, ror #16
30847e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach        sxtb16ge r2, r3, ror #24
30857e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach
30867e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach@ CHECK: sxtb16	r1, r4                  @ encoding: [0x74,0x10,0x8f,0xe6]
30877e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach@ CHECK: sxtb16	r6, r7                  @ encoding: [0x77,0x60,0x8f,0xe6]
3088356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: sxtb16hs	r3, r5, ror #8  @ encoding: [0x75,0x34,0x8f,0x26]
3089356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: sxtb16	r3, r1, ror #16         @ encoding: [0x71,0x38,0x8f,0xe6]
3090356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: sxtb16ge	r2, r3, ror #24 @ encoding: [0x73,0x2c,0x8f,0xa6]
30917e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach
30927e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach
30937e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach@------------------------------------------------------------------------------
30947e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach@ SXTH
30957e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach@------------------------------------------------------------------------------
30967e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach        sxthne r3, r9
30977e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach        sxth r1, r6, ror #0
30987e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach        sxth r3, r8, ror #8
30997e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach        sxthle r2, r2, ror #16
31007e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach        sxth r9, r3, ror #24
31017e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach
31027e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach@ CHECK: sxthne	r3, r9                  @ encoding: [0x79,0x30,0xbf,0x16]
31037e1547ebf726a40e7ed3dbe89a77e1b946a8e2d0Jim Grosbach@ CHECK: sxth	r1, r6                  @ encoding: [0x76,0x10,0xbf,0xe6]
3104356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: sxth	r3, r8, ror #8          @ encoding: [0x78,0x34,0xbf,0xe6]
3105356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: sxthle	r2, r2, ror #16         @ encoding: [0x72,0x28,0xbf,0xd6]
3106356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: sxth	r9, r3, ror #24         @ encoding: [0x73,0x9c,0xbf,0xe6]
3107f1ae78af1796ec122e3cf75ab4826495eb5a4e8dJim Grosbach
3108f1ae78af1796ec122e3cf75ab4826495eb5a4e8dJim Grosbach
3109f1ae78af1796ec122e3cf75ab4826495eb5a4e8dJim Grosbach@------------------------------------------------------------------------------
3110f1ae78af1796ec122e3cf75ab4826495eb5a4e8dJim Grosbach@ TEQ
3111f1ae78af1796ec122e3cf75ab4826495eb5a4e8dJim Grosbach@------------------------------------------------------------------------------
3112f1ae78af1796ec122e3cf75ab4826495eb5a4e8dJim Grosbach        teq r5, #0xf000
3113ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        teq r5, $0xf000
3114ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        teq r5, 0xf000
3115ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        teq r7, #(0xff << 16)
3116ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        teq r7, #-2147483638
3117ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        teq r7, #42, #2
3118ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        teq r7, #40, #2
3119ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        teq r7, $40, $2
3120ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        teq r7, 40, 2
3121ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        teq r7, (20 * 2), (1 << 1)
3122f1ae78af1796ec122e3cf75ab4826495eb5a4e8dJim Grosbach        teq r4, r5
3123f1ae78af1796ec122e3cf75ab4826495eb5a4e8dJim Grosbach        teq r4, r5, lsl #5
3124f1ae78af1796ec122e3cf75ab4826495eb5a4e8dJim Grosbach        teq r4, r5, lsr #5
3125f1ae78af1796ec122e3cf75ab4826495eb5a4e8dJim Grosbach        teq r4, r5, lsr #5
3126f1ae78af1796ec122e3cf75ab4826495eb5a4e8dJim Grosbach        teq r4, r5, asr #5
3127f1ae78af1796ec122e3cf75ab4826495eb5a4e8dJim Grosbach        teq r4, r5, ror #5
3128f1ae78af1796ec122e3cf75ab4826495eb5a4e8dJim Grosbach        teq r6, r7, lsl r9
3129f1ae78af1796ec122e3cf75ab4826495eb5a4e8dJim Grosbach        teq r6, r7, lsr r9
3130f1ae78af1796ec122e3cf75ab4826495eb5a4e8dJim Grosbach        teq r6, r7, asr r9
3131f1ae78af1796ec122e3cf75ab4826495eb5a4e8dJim Grosbach        teq r6, r7, ror r9
3132f1ae78af1796ec122e3cf75ab4826495eb5a4e8dJim Grosbach
3133f1ae78af1796ec122e3cf75ab4826495eb5a4e8dJim Grosbach@ CHECK: teq	r5, #61440              @ encoding: [0x0f,0x0a,0x35,0xe3]
3134ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: teq	r5, #61440              @ encoding: [0x0f,0x0a,0x35,0xe3]
3135ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: teq	r5, #61440              @ encoding: [0x0f,0x0a,0x35,0xe3]
3136ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: teq	r7, #16711680           @ encoding: [0xff,0x08,0x37,0xe3]
3137ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: teq    r7, #-2147483638        @ encoding: [0x2a,0x01,0x37,0xe3]
3138ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: teq    r7, #-2147483638        @ encoding: [0x2a,0x01,0x37,0xe3]
3139ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: teq    r7, #40, #2             @ encoding: [0x28,0x01,0x37,0xe3]
3140ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: teq    r7, #40, #2             @ encoding: [0x28,0x01,0x37,0xe3]
3141ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: teq    r7, #40, #2             @ encoding: [0x28,0x01,0x37,0xe3]
3142ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: teq    r7, #40, #2             @ encoding: [0x28,0x01,0x37,0xe3]
3143f1ae78af1796ec122e3cf75ab4826495eb5a4e8dJim Grosbach@ CHECK: teq	r4, r5                  @ encoding: [0x05,0x00,0x34,0xe1]
3144f1ae78af1796ec122e3cf75ab4826495eb5a4e8dJim Grosbach@ CHECK: teq	r4, r5, lsl #5          @ encoding: [0x85,0x02,0x34,0xe1]
3145f1ae78af1796ec122e3cf75ab4826495eb5a4e8dJim Grosbach@ CHECK: teq	r4, r5, lsr #5          @ encoding: [0xa5,0x02,0x34,0xe1]
3146f1ae78af1796ec122e3cf75ab4826495eb5a4e8dJim Grosbach@ CHECK: teq	r4, r5, lsr #5          @ encoding: [0xa5,0x02,0x34,0xe1]
3147f1ae78af1796ec122e3cf75ab4826495eb5a4e8dJim Grosbach@ CHECK: teq	r4, r5, asr #5          @ encoding: [0xc5,0x02,0x34,0xe1]
3148f1ae78af1796ec122e3cf75ab4826495eb5a4e8dJim Grosbach@ CHECK: teq	r4, r5, ror #5          @ encoding: [0xe5,0x02,0x34,0xe1]
3149f1ae78af1796ec122e3cf75ab4826495eb5a4e8dJim Grosbach@ CHECK: teq	r6, r7, lsl r9          @ encoding: [0x17,0x09,0x36,0xe1]
3150f1ae78af1796ec122e3cf75ab4826495eb5a4e8dJim Grosbach@ CHECK: teq	r6, r7, lsr r9          @ encoding: [0x37,0x09,0x36,0xe1]
3151f1ae78af1796ec122e3cf75ab4826495eb5a4e8dJim Grosbach@ CHECK: teq	r6, r7, asr r9          @ encoding: [0x57,0x09,0x36,0xe1]
3152f1ae78af1796ec122e3cf75ab4826495eb5a4e8dJim Grosbach@ CHECK: teq	r6, r7, ror r9          @ encoding: [0x77,0x09,0x36,0xe1]
3153f1ae78af1796ec122e3cf75ab4826495eb5a4e8dJim Grosbach
31548b3fd56e0f61038ea45b0d1eaff57196d80579aaJim Grosbach
31558b3fd56e0f61038ea45b0d1eaff57196d80579aaJim Grosbach@------------------------------------------------------------------------------
31568b3fd56e0f61038ea45b0d1eaff57196d80579aaJim Grosbach@ TST
31578b3fd56e0f61038ea45b0d1eaff57196d80579aaJim Grosbach@------------------------------------------------------------------------------
31588b3fd56e0f61038ea45b0d1eaff57196d80579aaJim Grosbach        tst r5, #0xf000
3159ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        tst r5, $0xf000
3160ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        tst r5, 0xf000
3161ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        tst r7, #(0xff << 16)
3162ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        tst r7, #-2147483638
3163ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        tst r7, #42, #2
3164ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        tst r7, #40, #2
3165ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        tst r7, $40, $2
3166ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        tst r7, 40, 2
3167ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines        tst r7, (20 * 2), (1 << 1)
31688b3fd56e0f61038ea45b0d1eaff57196d80579aaJim Grosbach        tst r4, r5
31698b3fd56e0f61038ea45b0d1eaff57196d80579aaJim Grosbach        tst r4, r5, lsl #5
31708b3fd56e0f61038ea45b0d1eaff57196d80579aaJim Grosbach        tst r4, r5, lsr #5
31718b3fd56e0f61038ea45b0d1eaff57196d80579aaJim Grosbach        tst r4, r5, lsr #5
31728b3fd56e0f61038ea45b0d1eaff57196d80579aaJim Grosbach        tst r4, r5, asr #5
31738b3fd56e0f61038ea45b0d1eaff57196d80579aaJim Grosbach        tst r4, r5, ror #5
31748b3fd56e0f61038ea45b0d1eaff57196d80579aaJim Grosbach        tst r6, r7, lsl r9
31758b3fd56e0f61038ea45b0d1eaff57196d80579aaJim Grosbach        tst r6, r7, lsr r9
31768b3fd56e0f61038ea45b0d1eaff57196d80579aaJim Grosbach        tst r6, r7, asr r9
31778b3fd56e0f61038ea45b0d1eaff57196d80579aaJim Grosbach        tst r6, r7, ror r9
31788b3fd56e0f61038ea45b0d1eaff57196d80579aaJim Grosbach
31798b3fd56e0f61038ea45b0d1eaff57196d80579aaJim Grosbach@ CHECK: tst	r5, #61440              @ encoding: [0x0f,0x0a,0x15,0xe3]
3180ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: tst	r5, #61440              @ encoding: [0x0f,0x0a,0x15,0xe3]
3181ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: tst	r5, #61440              @ encoding: [0x0f,0x0a,0x15,0xe3]
3182ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: tst    r7, #16711680           @ encoding: [0xff,0x08,0x17,0xe3]
3183ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: tst    r7, #-2147483638        @ encoding: [0x2a,0x01,0x17,0xe3]
3184ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: tst    r7, #-2147483638        @ encoding: [0x2a,0x01,0x17,0xe3]
3185ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: tst    r7, #40, #2             @ encoding: [0x28,0x01,0x17,0xe3]
3186ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: tst    r7, #40, #2             @ encoding: [0x28,0x01,0x17,0xe3]
3187ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: tst    r7, #40, #2             @ encoding: [0x28,0x01,0x17,0xe3]
3188ebe69fe11e48d322045d5949c83283927a0d790bStephen Hines@ CHECK: tst    r7, #40, #2             @ encoding: [0x28,0x01,0x17,0xe3]
31898b3fd56e0f61038ea45b0d1eaff57196d80579aaJim Grosbach@ CHECK: tst	r4, r5                  @ encoding: [0x05,0x00,0x14,0xe1]
31908b3fd56e0f61038ea45b0d1eaff57196d80579aaJim Grosbach@ CHECK: tst	r4, r5, lsl #5          @ encoding: [0x85,0x02,0x14,0xe1]
31918b3fd56e0f61038ea45b0d1eaff57196d80579aaJim Grosbach@ CHECK: tst	r4, r5, lsr #5          @ encoding: [0xa5,0x02,0x14,0xe1]
31928b3fd56e0f61038ea45b0d1eaff57196d80579aaJim Grosbach@ CHECK: tst	r4, r5, lsr #5          @ encoding: [0xa5,0x02,0x14,0xe1]
31938b3fd56e0f61038ea45b0d1eaff57196d80579aaJim Grosbach@ CHECK: tst	r4, r5, asr #5          @ encoding: [0xc5,0x02,0x14,0xe1]
31948b3fd56e0f61038ea45b0d1eaff57196d80579aaJim Grosbach@ CHECK: tst	r4, r5, ror #5          @ encoding: [0xe5,0x02,0x14,0xe1]
31958b3fd56e0f61038ea45b0d1eaff57196d80579aaJim Grosbach@ CHECK: tst	r6, r7, lsl r9          @ encoding: [0x17,0x09,0x16,0xe1]
31968b3fd56e0f61038ea45b0d1eaff57196d80579aaJim Grosbach@ CHECK: tst	r6, r7, lsr r9          @ encoding: [0x37,0x09,0x16,0xe1]
31978b3fd56e0f61038ea45b0d1eaff57196d80579aaJim Grosbach@ CHECK: tst	r6, r7, asr r9          @ encoding: [0x57,0x09,0x16,0xe1]
31988b3fd56e0f61038ea45b0d1eaff57196d80579aaJim Grosbach@ CHECK: tst	r6, r7, ror r9          @ encoding: [0x77,0x09,0x16,0xe1]
31998b3fd56e0f61038ea45b0d1eaff57196d80579aaJim Grosbach
3200b6854ad2b1aad78660e7a3421d9c0dbdeaa3c975Jim Grosbach
3201b6854ad2b1aad78660e7a3421d9c0dbdeaa3c975Jim Grosbach@------------------------------------------------------------------------------
3202b6854ad2b1aad78660e7a3421d9c0dbdeaa3c975Jim Grosbach@ UADD16/UADD8
3203b6854ad2b1aad78660e7a3421d9c0dbdeaa3c975Jim Grosbach@------------------------------------------------------------------------------
3204b6854ad2b1aad78660e7a3421d9c0dbdeaa3c975Jim Grosbach        uadd16 r1, r2, r3
3205b6854ad2b1aad78660e7a3421d9c0dbdeaa3c975Jim Grosbach        uadd16gt r1, r2, r3
3206b6854ad2b1aad78660e7a3421d9c0dbdeaa3c975Jim Grosbach        uadd8 r1, r2, r3
3207b6854ad2b1aad78660e7a3421d9c0dbdeaa3c975Jim Grosbach        uadd8le r1, r2, r3
3208b6854ad2b1aad78660e7a3421d9c0dbdeaa3c975Jim Grosbach
3209b6854ad2b1aad78660e7a3421d9c0dbdeaa3c975Jim Grosbach@ CHECK: uadd16	r1, r2, r3              @ encoding: [0x13,0x1f,0x52,0xe6]
3210b6854ad2b1aad78660e7a3421d9c0dbdeaa3c975Jim Grosbach@ CHECK: uadd16gt	r1, r2, r3      @ encoding: [0x13,0x1f,0x52,0xc6]
3211b6854ad2b1aad78660e7a3421d9c0dbdeaa3c975Jim Grosbach@ CHECK: uadd8	r1, r2, r3              @ encoding: [0x93,0x1f,0x52,0xe6]
3212b6854ad2b1aad78660e7a3421d9c0dbdeaa3c975Jim Grosbach@ CHECK: uadd8le r1, r2, r3             @ encoding: [0x93,0x1f,0x52,0xd6]
3213b6854ad2b1aad78660e7a3421d9c0dbdeaa3c975Jim Grosbach
3214b6854ad2b1aad78660e7a3421d9c0dbdeaa3c975Jim Grosbach
3215b6854ad2b1aad78660e7a3421d9c0dbdeaa3c975Jim Grosbach@------------------------------------------------------------------------------
3216b6854ad2b1aad78660e7a3421d9c0dbdeaa3c975Jim Grosbach@ UASX
3217b6854ad2b1aad78660e7a3421d9c0dbdeaa3c975Jim Grosbach@------------------------------------------------------------------------------
3218b6854ad2b1aad78660e7a3421d9c0dbdeaa3c975Jim Grosbach        uasx r9, r12, r0
3219b6854ad2b1aad78660e7a3421d9c0dbdeaa3c975Jim Grosbach        uasxeq r9, r12, r0
3220b6854ad2b1aad78660e7a3421d9c0dbdeaa3c975Jim Grosbach
3221b6854ad2b1aad78660e7a3421d9c0dbdeaa3c975Jim Grosbach@ CHECK: uasx	r9, r12, r0             @ encoding: [0x30,0x9f,0x5c,0xe6]
3222b6854ad2b1aad78660e7a3421d9c0dbdeaa3c975Jim Grosbach@ CHECK: uasxeq	r9, r12, r0             @ encoding: [0x30,0x9f,0x5c,0x06]
3223b6854ad2b1aad78660e7a3421d9c0dbdeaa3c975Jim Grosbach
3224b6854ad2b1aad78660e7a3421d9c0dbdeaa3c975Jim Grosbach
3225fb8989e64024547e4ad5ab6fe4d94fe146a7899fJim Grosbach@------------------------------------------------------------------------------
3226fb8989e64024547e4ad5ab6fe4d94fe146a7899fJim Grosbach@ UBFX
3227fb8989e64024547e4ad5ab6fe4d94fe146a7899fJim Grosbach@------------------------------------------------------------------------------
3228fb8989e64024547e4ad5ab6fe4d94fe146a7899fJim Grosbach        ubfx r4, r5, #16, #1
3229fb8989e64024547e4ad5ab6fe4d94fe146a7899fJim Grosbach        ubfxgt r4, r5, #16, #16
3230fb8989e64024547e4ad5ab6fe4d94fe146a7899fJim Grosbach
3231fb8989e64024547e4ad5ab6fe4d94fe146a7899fJim Grosbach@ CHECK: ubfx	r4, r5, #16, #1         @ encoding: [0x55,0x48,0xe0,0xe7]
3232fb8989e64024547e4ad5ab6fe4d94fe146a7899fJim Grosbach@ CHECK: ubfxgt	r4, r5, #16, #16        @ encoding: [0x55,0x48,0xef,0xc7]
323366c898224456990e511b71e498046736c0478079Jim Grosbach
323466c898224456990e511b71e498046736c0478079Jim Grosbach
323566c898224456990e511b71e498046736c0478079Jim Grosbach@------------------------------------------------------------------------------
323666c898224456990e511b71e498046736c0478079Jim Grosbach@ UHADD16/UHADD8
323766c898224456990e511b71e498046736c0478079Jim Grosbach@------------------------------------------------------------------------------
323866c898224456990e511b71e498046736c0478079Jim Grosbach        uhadd16 r4, r8, r2
323966c898224456990e511b71e498046736c0478079Jim Grosbach        uhadd16gt r4, r8, r2
324066c898224456990e511b71e498046736c0478079Jim Grosbach        uhadd8 r4, r8, r2
324166c898224456990e511b71e498046736c0478079Jim Grosbach        uhadd8gt r4, r8, r2
324266c898224456990e511b71e498046736c0478079Jim Grosbach
324366c898224456990e511b71e498046736c0478079Jim Grosbach@ CHECK: uhadd16	r4, r8, r2      @ encoding: [0x12,0x4f,0x78,0xe6]
324466c898224456990e511b71e498046736c0478079Jim Grosbach@ CHECK: uhadd16gt	r4, r8, r2      @ encoding: [0x12,0x4f,0x78,0xc6]
324566c898224456990e511b71e498046736c0478079Jim Grosbach@ CHECK: uhadd8	r4, r8, r2              @ encoding: [0x92,0x4f,0x78,0xe6]
324666c898224456990e511b71e498046736c0478079Jim Grosbach@ CHECK: uhadd8gt	r4, r8, r2      @ encoding: [0x92,0x4f,0x78,0xc6]
324766c898224456990e511b71e498046736c0478079Jim Grosbach
324866c898224456990e511b71e498046736c0478079Jim Grosbach
324966c898224456990e511b71e498046736c0478079Jim Grosbach@------------------------------------------------------------------------------
325066c898224456990e511b71e498046736c0478079Jim Grosbach@ UHASX
325166c898224456990e511b71e498046736c0478079Jim Grosbach@------------------------------------------------------------------------------
325266c898224456990e511b71e498046736c0478079Jim Grosbach        uhasx r4, r8, r2
325366c898224456990e511b71e498046736c0478079Jim Grosbach        uhasxgt r4, r8, r2
325466c898224456990e511b71e498046736c0478079Jim Grosbach
325566c898224456990e511b71e498046736c0478079Jim Grosbach@ CHECK: uhasx	r4, r8, r2              @ encoding: [0x32,0x4f,0x78,0xe6]
325666c898224456990e511b71e498046736c0478079Jim Grosbach@ CHECK: uhasxgt r4, r8, r2             @ encoding: [0x32,0x4f,0x78,0xc6]
325766c898224456990e511b71e498046736c0478079Jim Grosbach
325866c898224456990e511b71e498046736c0478079Jim Grosbach
3259f36b0a2ee4fe1e67778b60daf6020574e62ca672Jim Grosbach@------------------------------------------------------------------------------
3260f36b0a2ee4fe1e67778b60daf6020574e62ca672Jim Grosbach@ UHSUB16/UHSUB8
3261f36b0a2ee4fe1e67778b60daf6020574e62ca672Jim Grosbach@------------------------------------------------------------------------------
3262f36b0a2ee4fe1e67778b60daf6020574e62ca672Jim Grosbach        uhsub16 r4, r8, r2
3263f36b0a2ee4fe1e67778b60daf6020574e62ca672Jim Grosbach        uhsub16gt r4, r8, r2
3264f36b0a2ee4fe1e67778b60daf6020574e62ca672Jim Grosbach        uhsub8 r4, r8, r2
3265f36b0a2ee4fe1e67778b60daf6020574e62ca672Jim Grosbach        uhsub8gt r4, r8, r2
3266f36b0a2ee4fe1e67778b60daf6020574e62ca672Jim Grosbach
3267f36b0a2ee4fe1e67778b60daf6020574e62ca672Jim Grosbach@ CHECK: uhsub16	r4, r8, r2      @ encoding: [0x72,0x4f,0x78,0xe6]
3268f36b0a2ee4fe1e67778b60daf6020574e62ca672Jim Grosbach@ CHECK: uhsub16gt	r4, r8, r2      @ encoding: [0x72,0x4f,0x78,0xc6]
3269f36b0a2ee4fe1e67778b60daf6020574e62ca672Jim Grosbach@ CHECK: uhsub8	r4, r8, r2              @ encoding: [0xf2,0x4f,0x78,0xe6]
3270f36b0a2ee4fe1e67778b60daf6020574e62ca672Jim Grosbach@ CHECK: uhsub8gt	r4, r8, r2      @ encoding: [0xf2,0x4f,0x78,0xc6]
32712adba4156b83bd005bb704908bb36697e1ecabdaJim Grosbach
32722adba4156b83bd005bb704908bb36697e1ecabdaJim Grosbach
32732adba4156b83bd005bb704908bb36697e1ecabdaJim Grosbach@------------------------------------------------------------------------------
32742adba4156b83bd005bb704908bb36697e1ecabdaJim Grosbach@ UMAAL
32752adba4156b83bd005bb704908bb36697e1ecabdaJim Grosbach@------------------------------------------------------------------------------
32762adba4156b83bd005bb704908bb36697e1ecabdaJim Grosbach        umaal r3, r4, r5, r6
32772adba4156b83bd005bb704908bb36697e1ecabdaJim Grosbach        umaallt r3, r4, r5, r6
32782adba4156b83bd005bb704908bb36697e1ecabdaJim Grosbach
32795df7ef6cdbdaaa6bf3bf12b959557a44fbf250a6Owen Anderson@ CHECK: umaal	r3, r4, r5, r6          @ encoding: [0x95,0x36,0x44,0xe0]
32809c6712721c114f8e67b9a6b3cb1dd5d18b4cb435Jim Grosbach@ CHECK: umaallt	r3, r4, r5, r6  @ encoding: [0x95,0x36,0x44,0xb0]
32812adba4156b83bd005bb704908bb36697e1ecabdaJim Grosbach
328271725a099e6d0cba24a63f9c9063f6efee3bf76eJim Grosbach
328371725a099e6d0cba24a63f9c9063f6efee3bf76eJim Grosbach@------------------------------------------------------------------------------
328471725a099e6d0cba24a63f9c9063f6efee3bf76eJim Grosbach@ UMLAL
328571725a099e6d0cba24a63f9c9063f6efee3bf76eJim Grosbach@------------------------------------------------------------------------------
328671725a099e6d0cba24a63f9c9063f6efee3bf76eJim Grosbach        umlal r2, r4, r6, r8
328771725a099e6d0cba24a63f9c9063f6efee3bf76eJim Grosbach        umlalgt r6, r1, r2, r6
328871725a099e6d0cba24a63f9c9063f6efee3bf76eJim Grosbach        umlals r2, r9, r2, r3
328971725a099e6d0cba24a63f9c9063f6efee3bf76eJim Grosbach        umlalseq r3, r5, r1, r2
329071725a099e6d0cba24a63f9c9063f6efee3bf76eJim Grosbach
329171725a099e6d0cba24a63f9c9063f6efee3bf76eJim Grosbach@ CHECK: umlal	r2, r4, r6, r8          @ encoding: [0x96,0x28,0xa4,0xe0]
329271725a099e6d0cba24a63f9c9063f6efee3bf76eJim Grosbach@ CHECK: umlalgt	r6, r1, r2, r6  @ encoding: [0x92,0x66,0xa1,0xc0]
329371725a099e6d0cba24a63f9c9063f6efee3bf76eJim Grosbach@ CHECK: umlals	r2, r9, r2, r3          @ encoding: [0x92,0x23,0xb9,0xe0]
329471725a099e6d0cba24a63f9c9063f6efee3bf76eJim Grosbach@ CHECK: umlalseq	r3, r5, r1, r2  @ encoding: [0x91,0x32,0xb5,0x00]
329549f2ceddd25c75373f8a39fa25e8b9db33bcdaccJim Grosbach
329649f2ceddd25c75373f8a39fa25e8b9db33bcdaccJim Grosbach
329749f2ceddd25c75373f8a39fa25e8b9db33bcdaccJim Grosbach@------------------------------------------------------------------------------
329849f2ceddd25c75373f8a39fa25e8b9db33bcdaccJim Grosbach@ UMULL
329949f2ceddd25c75373f8a39fa25e8b9db33bcdaccJim Grosbach@------------------------------------------------------------------------------
330049f2ceddd25c75373f8a39fa25e8b9db33bcdaccJim Grosbach        umull r2, r4, r6, r8
330149f2ceddd25c75373f8a39fa25e8b9db33bcdaccJim Grosbach        umullgt r6, r1, r2, r6
330249f2ceddd25c75373f8a39fa25e8b9db33bcdaccJim Grosbach        umulls r2, r9, r2, r3
330349f2ceddd25c75373f8a39fa25e8b9db33bcdaccJim Grosbach        umullseq r3, r5, r1, r2
330449f2ceddd25c75373f8a39fa25e8b9db33bcdaccJim Grosbach
330549f2ceddd25c75373f8a39fa25e8b9db33bcdaccJim Grosbach@ CHECK: umull	r2, r4, r6, r8          @ encoding: [0x96,0x28,0x84,0xe0]
330649f2ceddd25c75373f8a39fa25e8b9db33bcdaccJim Grosbach@ CHECK: umullgt	r6, r1, r2, r6  @ encoding: [0x92,0x66,0x81,0xc0]
330749f2ceddd25c75373f8a39fa25e8b9db33bcdaccJim Grosbach@ CHECK: umulls	r2, r9, r2, r3          @ encoding: [0x92,0x23,0x99,0xe0]
330849f2ceddd25c75373f8a39fa25e8b9db33bcdaccJim Grosbach@ CHECK: umullseq	r3, r5, r1, r2  @ encoding: [0x91,0x32,0x95,0x00]
330924a541b79fb9694b6edf19ee288b7c9063653512Jim Grosbach
331024a541b79fb9694b6edf19ee288b7c9063653512Jim Grosbach
331124a541b79fb9694b6edf19ee288b7c9063653512Jim Grosbach@------------------------------------------------------------------------------
331224a541b79fb9694b6edf19ee288b7c9063653512Jim Grosbach@ UQADD16/UQADD8
331324a541b79fb9694b6edf19ee288b7c9063653512Jim Grosbach@------------------------------------------------------------------------------
331424a541b79fb9694b6edf19ee288b7c9063653512Jim Grosbach        uqadd16 r1, r2, r3
331524a541b79fb9694b6edf19ee288b7c9063653512Jim Grosbach        uqadd16gt r4, r7, r9
331624a541b79fb9694b6edf19ee288b7c9063653512Jim Grosbach        uqadd8 r3, r4, r8
331724a541b79fb9694b6edf19ee288b7c9063653512Jim Grosbach        uqadd8le r8, r1, r2
331824a541b79fb9694b6edf19ee288b7c9063653512Jim Grosbach
331924a541b79fb9694b6edf19ee288b7c9063653512Jim Grosbach
332024a541b79fb9694b6edf19ee288b7c9063653512Jim Grosbach@ CHECK: uqadd16	r1, r2, r3      @ encoding: [0x13,0x1f,0x62,0xe6]
332124a541b79fb9694b6edf19ee288b7c9063653512Jim Grosbach@ CHECK: uqadd16gt	r4, r7, r9      @ encoding: [0x19,0x4f,0x67,0xc6]
332224a541b79fb9694b6edf19ee288b7c9063653512Jim Grosbach@ CHECK: uqadd8	r3, r4, r8              @ encoding: [0x98,0x3f,0x64,0xe6]
332324a541b79fb9694b6edf19ee288b7c9063653512Jim Grosbach@ CHECK: uqadd8le	r8, r1, r2      @ encoding: [0x92,0x8f,0x61,0xd6]
332429e85bc7285337973924501cad7e7effafd91e65Jim Grosbach
332529e85bc7285337973924501cad7e7effafd91e65Jim Grosbach
332629e85bc7285337973924501cad7e7effafd91e65Jim Grosbach@------------------------------------------------------------------------------
332729e85bc7285337973924501cad7e7effafd91e65Jim Grosbach@ UQASX
332829e85bc7285337973924501cad7e7effafd91e65Jim Grosbach@------------------------------------------------------------------------------
332929e85bc7285337973924501cad7e7effafd91e65Jim Grosbach        uqasx r2, r4, r1
333029e85bc7285337973924501cad7e7effafd91e65Jim Grosbach        uqasxhi r5, r2, r9
333129e85bc7285337973924501cad7e7effafd91e65Jim Grosbach
333229e85bc7285337973924501cad7e7effafd91e65Jim Grosbach@ CHECK: uqasx	r2, r4, r1              @ encoding: [0x31,0x2f,0x64,0xe6]
333329e85bc7285337973924501cad7e7effafd91e65Jim Grosbach@ CHECK: uqasxhi	r5, r2, r9      @ encoding: [0x39,0x5f,0x62,0x86]
333429e85bc7285337973924501cad7e7effafd91e65Jim Grosbach
333529e85bc7285337973924501cad7e7effafd91e65Jim Grosbach
333629e85bc7285337973924501cad7e7effafd91e65Jim Grosbach@------------------------------------------------------------------------------
333729e85bc7285337973924501cad7e7effafd91e65Jim Grosbach@ UQSAX
333829e85bc7285337973924501cad7e7effafd91e65Jim Grosbach@------------------------------------------------------------------------------
333929e85bc7285337973924501cad7e7effafd91e65Jim Grosbach        uqsax r1, r3, r7
334029e85bc7285337973924501cad7e7effafd91e65Jim Grosbach        uqsaxal r3, r6, r2
334129e85bc7285337973924501cad7e7effafd91e65Jim Grosbach
334229e85bc7285337973924501cad7e7effafd91e65Jim Grosbach@ CHECK: uqsax	r1, r3, r7              @ encoding: [0x57,0x1f,0x63,0xe6]
334329e85bc7285337973924501cad7e7effafd91e65Jim Grosbach@ CHECK: uqsax	r3, r6, r2              @ encoding: [0x52,0x3f,0x66,0xe6]
334429e85bc7285337973924501cad7e7effafd91e65Jim Grosbach
3345144da2c8f03834e76ddb617498be7ed864a5c192Jim Grosbach
3346144da2c8f03834e76ddb617498be7ed864a5c192Jim Grosbach@------------------------------------------------------------------------------
3347144da2c8f03834e76ddb617498be7ed864a5c192Jim Grosbach@ UQSUB16/UQSUB8
3348144da2c8f03834e76ddb617498be7ed864a5c192Jim Grosbach@------------------------------------------------------------------------------
3349144da2c8f03834e76ddb617498be7ed864a5c192Jim Grosbach        uqsub16 r1, r5, r3
3350144da2c8f03834e76ddb617498be7ed864a5c192Jim Grosbach        uqsub16gt r3, r2, r5
3351144da2c8f03834e76ddb617498be7ed864a5c192Jim Grosbach        uqsub8 r2, r1, r4
3352144da2c8f03834e76ddb617498be7ed864a5c192Jim Grosbach        uqsub8le r4, r6, r9
3353144da2c8f03834e76ddb617498be7ed864a5c192Jim Grosbach
3354144da2c8f03834e76ddb617498be7ed864a5c192Jim Grosbach@ CHECK: uqsub16	r1, r5, r3      @ encoding: [0x73,0x1f,0x65,0xe6]
3355144da2c8f03834e76ddb617498be7ed864a5c192Jim Grosbach@ CHECK: uqsub16gt	r3, r2, r5      @ encoding: [0x75,0x3f,0x62,0xc6]
3356144da2c8f03834e76ddb617498be7ed864a5c192Jim Grosbach@ CHECK: uqsub8	r2, r1, r4              @ encoding: [0xf4,0x2f,0x61,0xe6]
3357144da2c8f03834e76ddb617498be7ed864a5c192Jim Grosbach@ CHECK: uqsub8le	r4, r6, r9      @ encoding: [0xf9,0x4f,0x66,0xd6]
33585f33d13da41f55e7421eee3bbfa410d07bd7af19Jim Grosbach
33595f33d13da41f55e7421eee3bbfa410d07bd7af19Jim Grosbach
33605f33d13da41f55e7421eee3bbfa410d07bd7af19Jim Grosbach@------------------------------------------------------------------------------
33615f33d13da41f55e7421eee3bbfa410d07bd7af19Jim Grosbach@ USADA8/USAD8
33625f33d13da41f55e7421eee3bbfa410d07bd7af19Jim Grosbach@------------------------------------------------------------------------------
33635f33d13da41f55e7421eee3bbfa410d07bd7af19Jim Grosbach        usad8 r2, r1, r4
33645f33d13da41f55e7421eee3bbfa410d07bd7af19Jim Grosbach        usad8le r4, r6, r9
33655f33d13da41f55e7421eee3bbfa410d07bd7af19Jim Grosbach        usada8 r1, r5, r3, r7
33665f33d13da41f55e7421eee3bbfa410d07bd7af19Jim Grosbach        usada8gt r3, r2, r5, r1
33675f33d13da41f55e7421eee3bbfa410d07bd7af19Jim Grosbach
33685f33d13da41f55e7421eee3bbfa410d07bd7af19Jim Grosbach@ CHECK: usad8	r2, r1, r4              @ encoding: [0x11,0xf4,0x82,0xe7]
33695f33d13da41f55e7421eee3bbfa410d07bd7af19Jim Grosbach@ CHECK: usad8le	r4, r6, r9      @ encoding: [0x16,0xf9,0x84,0xd7]
33705f33d13da41f55e7421eee3bbfa410d07bd7af19Jim Grosbach@ CHECK: usada8	r1, r5, r3, r7          @ encoding: [0x15,0x73,0x81,0xe7]
33715f33d13da41f55e7421eee3bbfa410d07bd7af19Jim Grosbach@ CHECK: usada8gt	r3, r2, r5, r1  @ encoding: [0x12,0x15,0x83,0xc7]
3372addec77b54fd77e99fd01f462a3fb8c3c89066faJim Grosbach
3373addec77b54fd77e99fd01f462a3fb8c3c89066faJim Grosbach
3374addec77b54fd77e99fd01f462a3fb8c3c89066faJim Grosbach@------------------------------------------------------------------------------
3375addec77b54fd77e99fd01f462a3fb8c3c89066faJim Grosbach@ USAT
3376addec77b54fd77e99fd01f462a3fb8c3c89066faJim Grosbach@------------------------------------------------------------------------------
3377fc2eb31a3c054f9611a2e88238fbb5a8842064a6Jim Grosbach        usat	r8, #1, r10
3378fc2eb31a3c054f9611a2e88238fbb5a8842064a6Jim Grosbach        usat	r8, #4, r10, lsl #0
3379fc2eb31a3c054f9611a2e88238fbb5a8842064a6Jim Grosbach        usat	r8, #5, r10, lsl #31
3380fc2eb31a3c054f9611a2e88238fbb5a8842064a6Jim Grosbach        usat	r8, #31, r10, asr #32
3381fc2eb31a3c054f9611a2e88238fbb5a8842064a6Jim Grosbach        usat	r8, #16, r10, asr #1
3382addec77b54fd77e99fd01f462a3fb8c3c89066faJim Grosbach
3383addec77b54fd77e99fd01f462a3fb8c3c89066faJim Grosbach@ CHECK: usat	r8, #1, r10             @ encoding: [0x1a,0x80,0xe1,0xe6]
3384addec77b54fd77e99fd01f462a3fb8c3c89066faJim Grosbach@ CHECK: usat	r8, #4, r10             @ encoding: [0x1a,0x80,0xe4,0xe6]
3385addec77b54fd77e99fd01f462a3fb8c3c89066faJim Grosbach@ CHECK: usat	r8, #5, r10, lsl #31    @ encoding: [0x9a,0x8f,0xe5,0xe6]
3386addec77b54fd77e99fd01f462a3fb8c3c89066faJim Grosbach@ CHECK: usat	r8, #31, r10, asr #32   @ encoding: [0x5a,0x80,0xff,0xe6]
3387addec77b54fd77e99fd01f462a3fb8c3c89066faJim Grosbach@ CHECK: usat	r8, #16, r10, asr #1    @ encoding: [0xda,0x80,0xf0,0xe6]
3388addec77b54fd77e99fd01f462a3fb8c3c89066faJim Grosbach
3389ae13ba774083ef328a08290af649b4cd1156b40aJim Grosbach
3390addec77b54fd77e99fd01f462a3fb8c3c89066faJim Grosbach@------------------------------------------------------------------------------
3391addec77b54fd77e99fd01f462a3fb8c3c89066faJim Grosbach@ USAT16
3392addec77b54fd77e99fd01f462a3fb8c3c89066faJim Grosbach@------------------------------------------------------------------------------
3393fc2eb31a3c054f9611a2e88238fbb5a8842064a6Jim Grosbach        usat16	r2, #2, r7
3394fc2eb31a3c054f9611a2e88238fbb5a8842064a6Jim Grosbach        usat16	r3, #15, r5
3395addec77b54fd77e99fd01f462a3fb8c3c89066faJim Grosbach
3396c69c26d95e4dcffb3ab98c49f3672386b401d0f9Jim Grosbach@ CHECK: usat16	r2, #2, r7              @ encoding: [0x37,0x2f,0xe2,0xe6]
3397c69c26d95e4dcffb3ab98c49f3672386b401d0f9Jim Grosbach@ CHECK: usat16	r3, #15, r5             @ encoding: [0x35,0x3f,0xef,0xe6]
3398953e2e81dec27fe40315100714eb15c967a9fc1eJim Grosbach
3399953e2e81dec27fe40315100714eb15c967a9fc1eJim Grosbach
3400953e2e81dec27fe40315100714eb15c967a9fc1eJim Grosbach@------------------------------------------------------------------------------
3401953e2e81dec27fe40315100714eb15c967a9fc1eJim Grosbach@ USAX
3402953e2e81dec27fe40315100714eb15c967a9fc1eJim Grosbach@------------------------------------------------------------------------------
3403953e2e81dec27fe40315100714eb15c967a9fc1eJim Grosbach        usax r2, r3, r4
3404953e2e81dec27fe40315100714eb15c967a9fc1eJim Grosbach        usaxne r2, r3, r4
3405953e2e81dec27fe40315100714eb15c967a9fc1eJim Grosbach
3406953e2e81dec27fe40315100714eb15c967a9fc1eJim Grosbach@ CHECK: usax	r2, r3, r4              @ encoding: [0x54,0x2f,0x53,0xe6]
3407953e2e81dec27fe40315100714eb15c967a9fc1eJim Grosbach@ CHECK: usaxne	r2, r3, r4              @ encoding: [0x54,0x2f,0x53,0x16]
3408953e2e81dec27fe40315100714eb15c967a9fc1eJim Grosbach
3409ed398468b51c6eb5b2c9a5bccc8669854cf589a8Jim Grosbach@------------------------------------------------------------------------------
3410ed398468b51c6eb5b2c9a5bccc8669854cf589a8Jim Grosbach@ USUB16/USUB8
3411ed398468b51c6eb5b2c9a5bccc8669854cf589a8Jim Grosbach@------------------------------------------------------------------------------
3412ed398468b51c6eb5b2c9a5bccc8669854cf589a8Jim Grosbach        usub16 r4, r2, r7
3413ed398468b51c6eb5b2c9a5bccc8669854cf589a8Jim Grosbach        usub16hi r1, r1, r3
3414ed398468b51c6eb5b2c9a5bccc8669854cf589a8Jim Grosbach        usub8 r1, r8, r5
3415ed398468b51c6eb5b2c9a5bccc8669854cf589a8Jim Grosbach        usub8le r9, r2, r3
3416ed398468b51c6eb5b2c9a5bccc8669854cf589a8Jim Grosbach
3417ed398468b51c6eb5b2c9a5bccc8669854cf589a8Jim Grosbach@ CHECK: usub16	r4, r2, r7              @ encoding: [0x77,0x4f,0x52,0xe6]
3418ed398468b51c6eb5b2c9a5bccc8669854cf589a8Jim Grosbach@ CHECK: usub16hi	r1, r1, r3      @ encoding: [0x73,0x1f,0x51,0x86]
3419ed398468b51c6eb5b2c9a5bccc8669854cf589a8Jim Grosbach@ CHECK: usub8	r1, r8, r5              @ encoding: [0xf5,0x1f,0x58,0xe6]
3420ed398468b51c6eb5b2c9a5bccc8669854cf589a8Jim Grosbach@ CHECK: usub8le	r9, r2, r3      @ encoding: [0xf3,0x9f,0x52,0xd6]
3421ed398468b51c6eb5b2c9a5bccc8669854cf589a8Jim Grosbach
34228050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach
34238050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach@------------------------------------------------------------------------------
34248050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach@ UXTAB
34258050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach@------------------------------------------------------------------------------
34268050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach        uxtab r2, r3, r4
34278050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach        uxtab r4, r5, r6, ror #0
34288050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach        uxtablt r6, r2, r9, ror #8
34298050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach        uxtab r5, r1, r4, ror #16
34308050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach        uxtab r7, r8, r3, ror #24
34318050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach
34328050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach@ CHECK: uxtab	r2, r3, r4              @ encoding: [0x74,0x20,0xe3,0xe6]
34338050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach@ CHECK: uxtab	r4, r5, r6              @ encoding: [0x76,0x40,0xe5,0xe6]
3434356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: uxtablt r6, r2, r9, ror #8     @ encoding: [0x79,0x64,0xe2,0xb6]
3435356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: uxtab	r5, r1, r4, ror #16     @ encoding: [0x74,0x58,0xe1,0xe6]
3436356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: uxtab	r7, r8, r3, ror #24     @ encoding: [0x73,0x7c,0xe8,0xe6]
34378050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach
34388050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach
34398050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach@------------------------------------------------------------------------------
34408050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach@ UXTAB16
34418050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach@------------------------------------------------------------------------------
34428050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach        uxtab16ge r0, r1, r4
34438050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach        uxtab16 r6, r2, r7, ror #0
34448050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach        uxtab16 r3, r5, r8, ror #8
34458050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach        uxtab16 r3, r2, r1, ror #16
34468050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach        uxtab16eq r1, r2, r3, ror #24
34478050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach
34488050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach@ CHECK: uxtab16ge	r0, r1, r4      @ encoding: [0x74,0x00,0xc1,0xa6]
34498050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach@ CHECK: uxtab16	r6, r2, r7      @ encoding: [0x77,0x60,0xc2,0xe6]
3450356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: uxtab16	r3, r5, r8, ror #8 @ encoding: [0x78,0x34,0xc5,0xe6]
3451356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: uxtab16	r3, r2, r1, ror #16 @ encoding: [0x71,0x38,0xc2,0xe6]
3452356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: uxtab16eq	r1, r2, r3, ror #24 @ encoding: [0x73,0x1c,0xc2,0x06]
34538050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach
3454ae13ba774083ef328a08290af649b4cd1156b40aJim Grosbach
34558050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach@------------------------------------------------------------------------------
34568050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach@ UXTAH
34578050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach@------------------------------------------------------------------------------
34588050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach        uxtah r1, r3, r9
34598050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach        uxtahhi r6, r1, r6, ror #0
34608050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach        uxtah r3, r8, r3, ror #8
34618050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach        uxtahlo r2, r2, r4, ror #16
34628050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach        uxtah r9, r3, r3, ror #24
34638050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach
34648050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach@ CHECK: uxtah	r1, r3, r9              @ encoding: [0x79,0x10,0xf3,0xe6]
34658050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach@ CHECK: uxtahhi	r6, r1, r6      @ encoding: [0x76,0x60,0xf1,0x86]
3466356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: uxtah	r3, r8, r3, ror #8      @ encoding: [0x73,0x34,0xf8,0xe6]
3467356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: uxtahlo	r2, r2, r4, ror #16 @ encoding: [0x74,0x28,0xf2,0x36]
3468356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: uxtah	r9, r3, r3, ror #24     @ encoding: [0x73,0x9c,0xf3,0xe6]
34698050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach
34708050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach@------------------------------------------------------------------------------
34718050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach@ UXTB
34728050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach@------------------------------------------------------------------------------
34738050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach        uxtbge r2, r4
34748050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach        uxtb r5, r6, ror #0
34758050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach        uxtb r6, r9, ror #8
34768050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach        uxtbcc r5, r1, ror #16
34778050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach        uxtb r8, r3, ror #24
34788050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach
34798050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach@ CHECK: uxtbge	r2, r4                  @ encoding: [0x74,0x20,0xef,0xa6]
34808050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach@ CHECK: uxtb	r5, r6                  @ encoding: [0x76,0x50,0xef,0xe6]
3481356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: uxtb	r6, r9, ror #8          @ encoding: [0x79,0x64,0xef,0xe6]
3482356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: uxtblo	r5, r1, ror #16         @ encoding: [0x71,0x58,0xef,0x36]
3483356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: uxtb	r8, r3, ror #24         @ encoding: [0x73,0x8c,0xef,0xe6]
34848050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach
34858050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach
34868050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach@------------------------------------------------------------------------------
34878050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach@ UXTB16
34888050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach@------------------------------------------------------------------------------
34898050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach        uxtb16 r1, r4
34908050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach        uxtb16 r6, r7, ror #0
34918050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach        uxtb16cs r3, r5, ror #8
34928050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach        uxtb16 r3, r1, ror #16
34938050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach        uxtb16ge r2, r3, ror #24
34948050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach
34958050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach@ CHECK: uxtb16	r1, r4                  @ encoding: [0x74,0x10,0xcf,0xe6]
34968050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach@ CHECK: uxtb16	r6, r7                  @ encoding: [0x77,0x60,0xcf,0xe6]
3497356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: uxtb16hs	r3, r5, ror #8  @ encoding: [0x75,0x34,0xcf,0x26]
3498356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: uxtb16	r3, r1, ror #16         @ encoding: [0x71,0x38,0xcf,0xe6]
3499356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: uxtb16ge	r2, r3, ror #24 @ encoding: [0x73,0x2c,0xcf,0xa6]
35008050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach
35018050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach
35028050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach@------------------------------------------------------------------------------
35038050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach@ UXTH
35048050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach@------------------------------------------------------------------------------
35058050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach        uxthne r3, r9
35068050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach        uxth r1, r6, ror #0
35078050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach        uxth r3, r8, ror #8
35088050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach        uxthle r2, r2, ror #16
35098050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach        uxth r9, r3, ror #24
35108050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach
35118050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach@ CHECK: uxthne	r3, r9                  @ encoding: [0x79,0x30,0xff,0x16]
35128050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach@ CHECK: uxth	r1, r6                  @ encoding: [0x76,0x10,0xff,0xe6]
3513356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: uxth	r3, r8, ror #8          @ encoding: [0x78,0x34,0xff,0xe6]
3514356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: uxthle	r2, r2, ror #16         @ encoding: [0x72,0x28,0xff,0xd6]
3515356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: uxth	r9, r3, ror #24         @ encoding: [0x73,0x9c,0xff,0xe6]
35168050a619145f30cdfee9c6ae1c5bdb1a32a4a71eJim Grosbach
3517ae13ba774083ef328a08290af649b4cd1156b40aJim Grosbach
351819b9d6912ab4d61666d5eed0a9c7d407d564ce1dJim Grosbach@------------------------------------------------------------------------------
351919b9d6912ab4d61666d5eed0a9c7d407d564ce1dJim Grosbach@ WFE/WFI/YIELD
352019b9d6912ab4d61666d5eed0a9c7d407d564ce1dJim Grosbach@------------------------------------------------------------------------------
352119b9d6912ab4d61666d5eed0a9c7d407d564ce1dJim Grosbach        wfe
352219b9d6912ab4d61666d5eed0a9c7d407d564ce1dJim Grosbach        wfehi
352319b9d6912ab4d61666d5eed0a9c7d407d564ce1dJim Grosbach        wfi
352419b9d6912ab4d61666d5eed0a9c7d407d564ce1dJim Grosbach        wfilt
352519b9d6912ab4d61666d5eed0a9c7d407d564ce1dJim Grosbach        yield
352619b9d6912ab4d61666d5eed0a9c7d407d564ce1dJim Grosbach        yieldne
35277e99a60857532ca2973cf9dabc790d84a2e15a8aJim Grosbach        hint #4
35287e99a60857532ca2973cf9dabc790d84a2e15a8aJim Grosbach        hint #3
35297e99a60857532ca2973cf9dabc790d84a2e15a8aJim Grosbach        hint #2
35307e99a60857532ca2973cf9dabc790d84a2e15a8aJim Grosbach        hint #1
35317e99a60857532ca2973cf9dabc790d84a2e15a8aJim Grosbach        hint #0
3532b161955ffbda5ccb5293e0c76ef982acb6ec6661Artyom Skrobov        hintgt #239
35337e99a60857532ca2973cf9dabc790d84a2e15a8aJim Grosbach
35347e99a60857532ca2973cf9dabc790d84a2e15a8aJim Grosbach@ CHECK: wfe                            @ encoding: [0x02,0xf0,0x20,0xe3]
35357e99a60857532ca2973cf9dabc790d84a2e15a8aJim Grosbach@ CHECK: wfehi                          @ encoding: [0x02,0xf0,0x20,0x83]
35367e99a60857532ca2973cf9dabc790d84a2e15a8aJim Grosbach@ CHECK: wfi                            @ encoding: [0x03,0xf0,0x20,0xe3]
35377e99a60857532ca2973cf9dabc790d84a2e15a8aJim Grosbach@ CHECK: wfilt                          @ encoding: [0x03,0xf0,0x20,0xb3]
35387e99a60857532ca2973cf9dabc790d84a2e15a8aJim Grosbach@ CHECK: yield                          @ encoding: [0x01,0xf0,0x20,0xe3]
35397e99a60857532ca2973cf9dabc790d84a2e15a8aJim Grosbach@ CHECK: yieldne                        @ encoding: [0x01,0xf0,0x20,0x13]
35407e99a60857532ca2973cf9dabc790d84a2e15a8aJim Grosbach@ CHECK: sev                            @ encoding: [0x04,0xf0,0x20,0xe3]
35417e99a60857532ca2973cf9dabc790d84a2e15a8aJim Grosbach@ CHECK: wfi                            @ encoding: [0x03,0xf0,0x20,0xe3]
35427e99a60857532ca2973cf9dabc790d84a2e15a8aJim Grosbach@ CHECK: wfe                            @ encoding: [0x02,0xf0,0x20,0xe3]
35437e99a60857532ca2973cf9dabc790d84a2e15a8aJim Grosbach@ CHECK: yield                          @ encoding: [0x01,0xf0,0x20,0xe3]
35447e99a60857532ca2973cf9dabc790d84a2e15a8aJim Grosbach@ CHECK: nop                            @ encoding: [0x00,0xf0,0x20,0xe3]
3545b161955ffbda5ccb5293e0c76ef982acb6ec6661Artyom Skrobov@ CHECK: hintgt #239                    @ encoding: [0xef,0xf0,0x20,0xc3]
3546