1cac31de146e7131f411715dc6cb1958ea59bd754Evan Cheng@ RUN: llvm-mc -triple=thumbv7-apple-darwin -mcpu=cortex-a8 -show-encoding < %s | FileCheck %s
2f8e1e3e729473b8b2b7ee6134b6417976af84d05Jim Grosbach  .syntax unified
3f8e1e3e729473b8b2b7ee6134b6417976af84d05Jim Grosbach  .globl _func
4f8e1e3e729473b8b2b7ee6134b6417976af84d05Jim Grosbach
5f8e1e3e729473b8b2b7ee6134b6417976af84d05Jim Grosbach@ Check that the assembler can handle the documented syntax from the ARM ARM.
6f8e1e3e729473b8b2b7ee6134b6417976af84d05Jim Grosbach@ For complex constructs like shifter operands, check more thoroughly for them
7f8e1e3e729473b8b2b7ee6134b6417976af84d05Jim Grosbach@ once then spot check that following instructions accept the form generally.
8f8e1e3e729473b8b2b7ee6134b6417976af84d05Jim Grosbach@ This gives us good coverage while keeping the overall size of the test
9f8e1e3e729473b8b2b7ee6134b6417976af84d05Jim Grosbach@ more reasonable.
10f8e1e3e729473b8b2b7ee6134b6417976af84d05Jim Grosbach
11f8e1e3e729473b8b2b7ee6134b6417976af84d05Jim Grosbach
12f8e1e3e729473b8b2b7ee6134b6417976af84d05Jim Grosbach@ FIXME: Some 3-operand instructions have a 2-operand assembly syntax.
13f8e1e3e729473b8b2b7ee6134b6417976af84d05Jim Grosbach
14f8e1e3e729473b8b2b7ee6134b6417976af84d05Jim Grosbach_func:
15f8e1e3e729473b8b2b7ee6134b6417976af84d05Jim Grosbach@ CHECK: _func
16f8e1e3e729473b8b2b7ee6134b6417976af84d05Jim Grosbach
17f8e1e3e729473b8b2b7ee6134b6417976af84d05Jim Grosbach@------------------------------------------------------------------------------
18a01e12499f0e9dd0c5dec0650e817a009cdd1238Jim Grosbach@ ADC (immediate)
19a01e12499f0e9dd0c5dec0650e817a009cdd1238Jim Grosbach@------------------------------------------------------------------------------
20a01e12499f0e9dd0c5dec0650e817a009cdd1238Jim Grosbach        adc r0, r1, #4
21a01e12499f0e9dd0c5dec0650e817a009cdd1238Jim Grosbach        adcs r0, r1, #0
22a01e12499f0e9dd0c5dec0650e817a009cdd1238Jim Grosbach        adc r1, r2, #255
23a01e12499f0e9dd0c5dec0650e817a009cdd1238Jim Grosbach        adc r3, r7, #0x00550055
24a01e12499f0e9dd0c5dec0650e817a009cdd1238Jim Grosbach        adc r8, r12, #0xaa00aa00
25a01e12499f0e9dd0c5dec0650e817a009cdd1238Jim Grosbach        adc r9, r7, #0xa5a5a5a5
26a01e12499f0e9dd0c5dec0650e817a009cdd1238Jim Grosbach        adc r5, r3, #0x87000000
27a01e12499f0e9dd0c5dec0650e817a009cdd1238Jim Grosbach        adc r4, r2, #0x7f800000
28a01e12499f0e9dd0c5dec0650e817a009cdd1238Jim Grosbach        adc r4, r2, #0x00000680
29a01e12499f0e9dd0c5dec0650e817a009cdd1238Jim Grosbach
30a01e12499f0e9dd0c5dec0650e817a009cdd1238Jim Grosbach@ CHECK: adc	r0, r1, #4              @ encoding: [0x41,0xf1,0x04,0x00]
31a01e12499f0e9dd0c5dec0650e817a009cdd1238Jim Grosbach@ CHECK: adcs	r0, r1, #0              @ encoding: [0x51,0xf1,0x00,0x00]
32a01e12499f0e9dd0c5dec0650e817a009cdd1238Jim Grosbach@ CHECK: adc	r1, r2, #255            @ encoding: [0x42,0xf1,0xff,0x01]
33a01e12499f0e9dd0c5dec0650e817a009cdd1238Jim Grosbach@ CHECK: adc	r3, r7, #5570645        @ encoding: [0x47,0xf1,0x55,0x13]
34a01e12499f0e9dd0c5dec0650e817a009cdd1238Jim Grosbach@ CHECK: adc	r8, r12, #2852170240    @ encoding: [0x4c,0xf1,0xaa,0x28]
35a01e12499f0e9dd0c5dec0650e817a009cdd1238Jim Grosbach@ CHECK: adc	r9, r7, #2779096485     @ encoding: [0x47,0xf1,0xa5,0x39]
36a01e12499f0e9dd0c5dec0650e817a009cdd1238Jim Grosbach@ CHECK: adc	r5, r3, #2264924160     @ encoding: [0x43,0xf1,0x07,0x45]
37a01e12499f0e9dd0c5dec0650e817a009cdd1238Jim Grosbach@ CHECK: adc	r4, r2, #2139095040     @ encoding: [0x42,0xf1,0xff,0x44]
38a01e12499f0e9dd0c5dec0650e817a009cdd1238Jim Grosbach@ CHECK: adc	r4, r2, #1664           @ encoding: [0x42,0xf5,0xd0,0x64]
39a01e12499f0e9dd0c5dec0650e817a009cdd1238Jim Grosbach
40a01e12499f0e9dd0c5dec0650e817a009cdd1238Jim Grosbach@------------------------------------------------------------------------------
4172335d55d972dd7279fe68ed05fa3c4e7fce9345Jim Grosbach@ ADC (register)
4272335d55d972dd7279fe68ed05fa3c4e7fce9345Jim Grosbach@------------------------------------------------------------------------------
4372335d55d972dd7279fe68ed05fa3c4e7fce9345Jim Grosbach        adc r4, r5, r6
4472335d55d972dd7279fe68ed05fa3c4e7fce9345Jim Grosbach        adcs r4, r5, r6
4572335d55d972dd7279fe68ed05fa3c4e7fce9345Jim Grosbach        adc.w r9, r1, r3
4672335d55d972dd7279fe68ed05fa3c4e7fce9345Jim Grosbach        adcs.w r9, r1, r3
4772335d55d972dd7279fe68ed05fa3c4e7fce9345Jim Grosbach        adc	r0, r1, r3, ror #4
4872335d55d972dd7279fe68ed05fa3c4e7fce9345Jim Grosbach        adcs	r0, r1, r3, lsl #7
4972335d55d972dd7279fe68ed05fa3c4e7fce9345Jim Grosbach        adc.w	r0, r1, r3, lsr #31
5072335d55d972dd7279fe68ed05fa3c4e7fce9345Jim Grosbach        adcs.w	r0, r1, r3, asr #32
51a9cc08f24f61e2663a131d7ac16c329b75162e7bJim Grosbach        add r2, sp, ip
5272335d55d972dd7279fe68ed05fa3c4e7fce9345Jim Grosbach
5372335d55d972dd7279fe68ed05fa3c4e7fce9345Jim Grosbach@ CHECK: adc.w	r4, r5, r6              @ encoding: [0x45,0xeb,0x06,0x04]
5472335d55d972dd7279fe68ed05fa3c4e7fce9345Jim Grosbach@ CHECK: adcs.w	r4, r5, r6              @ encoding: [0x55,0xeb,0x06,0x04]
5572335d55d972dd7279fe68ed05fa3c4e7fce9345Jim Grosbach@ CHECK: adc.w	r9, r1, r3              @ encoding: [0x41,0xeb,0x03,0x09]
5672335d55d972dd7279fe68ed05fa3c4e7fce9345Jim Grosbach@ CHECK: adcs.w	r9, r1, r3              @ encoding: [0x51,0xeb,0x03,0x09]
5772335d55d972dd7279fe68ed05fa3c4e7fce9345Jim Grosbach@ CHECK: adc.w	r0, r1, r3, ror #4      @ encoding: [0x41,0xeb,0x33,0x10]
5872335d55d972dd7279fe68ed05fa3c4e7fce9345Jim Grosbach@ CHECK: adcs.w	r0, r1, r3, lsl #7      @ encoding: [0x51,0xeb,0xc3,0x10]
5972335d55d972dd7279fe68ed05fa3c4e7fce9345Jim Grosbach@ CHECK: adc.w	r0, r1, r3, lsr #31     @ encoding: [0x41,0xeb,0xd3,0x70]
6072335d55d972dd7279fe68ed05fa3c4e7fce9345Jim Grosbach@ CHECK: adcs.w	r0, r1, r3, asr #32     @ encoding: [0x51,0xeb,0x23,0x00]
61a9cc08f24f61e2663a131d7ac16c329b75162e7bJim Grosbach@ CHECK: add.w	r2, sp, r12             @ encoding: [0x0d,0xeb,0x0c,0x02]
6272335d55d972dd7279fe68ed05fa3c4e7fce9345Jim Grosbach
6372335d55d972dd7279fe68ed05fa3c4e7fce9345Jim Grosbach
6472335d55d972dd7279fe68ed05fa3c4e7fce9345Jim Grosbach@------------------------------------------------------------------------------
6520ed2e7939d6a8e804a51897c3af4588deb48be2Jim Grosbach@ ADD (immediate)
6620ed2e7939d6a8e804a51897c3af4588deb48be2Jim Grosbach@------------------------------------------------------------------------------
6720ed2e7939d6a8e804a51897c3af4588deb48be2Jim Grosbach        itet eq
6820ed2e7939d6a8e804a51897c3af4588deb48be2Jim Grosbach        addeq r1, r2, #4
6920ed2e7939d6a8e804a51897c3af4588deb48be2Jim Grosbach        addwne r5, r3, #1023
7020ed2e7939d6a8e804a51897c3af4588deb48be2Jim Grosbach        addeq r4, r5, #293
7120ed2e7939d6a8e804a51897c3af4588deb48be2Jim Grosbach        add r2, sp, #1024
7220ed2e7939d6a8e804a51897c3af4588deb48be2Jim Grosbach        add r2, r8, #0xff00
7320ed2e7939d6a8e804a51897c3af4588deb48be2Jim Grosbach        add r2, r3, #257
7420ed2e7939d6a8e804a51897c3af4588deb48be2Jim Grosbach        addw r2, r3, #257
7520ed2e7939d6a8e804a51897c3af4588deb48be2Jim Grosbach        add r12, r6, #0x100
7620ed2e7939d6a8e804a51897c3af4588deb48be2Jim Grosbach        addw r12, r6, #0x100
7720ed2e7939d6a8e804a51897c3af4588deb48be2Jim Grosbach        adds r1, r2, #0x1f0
785d0492cfc4521ccb13b4961227b279991a17c393Jim Grosbach	add r2, #1
79da84786bee8304588a4325b15e297be1995a5d41Jim Grosbach        add r0, r0, #32
802d30d947ec2626e8b1a9b577cdfa4121f476c3f5Jim Grosbach        adds r2, r2, #56
812d30d947ec2626e8b1a9b577cdfa4121f476c3f5Jim Grosbach        adds r2, #56
8220ed2e7939d6a8e804a51897c3af4588deb48be2Jim Grosbach
8354319e2a8c22e7ee7044e398fbd8d4287e2b7c4fJim Grosbach        adds.w r2, #-16
8454319e2a8c22e7ee7044e398fbd8d4287e2b7c4fJim Grosbach        adds.w r2, r2, #-16
8554319e2a8c22e7ee7044e398fbd8d4287e2b7c4fJim Grosbach        addw r2, #-16
8654319e2a8c22e7ee7044e398fbd8d4287e2b7c4fJim Grosbach        addw r2, #-16
8754319e2a8c22e7ee7044e398fbd8d4287e2b7c4fJim Grosbach        addw r2, r2, #-16
8854319e2a8c22e7ee7044e398fbd8d4287e2b7c4fJim Grosbach
8920ed2e7939d6a8e804a51897c3af4588deb48be2Jim Grosbach@ CHECK: itet	eq                      @ encoding: [0x0a,0xbf]
9020ed2e7939d6a8e804a51897c3af4588deb48be2Jim Grosbach@ CHECK: addeq	r1, r2, #4              @ encoding: [0x11,0x1d]
9120ed2e7939d6a8e804a51897c3af4588deb48be2Jim Grosbach@ CHECK: addwne	r5, r3, #1023           @ encoding: [0x03,0xf2,0xff,0x35]
9220ed2e7939d6a8e804a51897c3af4588deb48be2Jim Grosbach@ CHECK: addweq	r4, r5, #293            @ encoding: [0x05,0xf2,0x25,0x14]
9320ed2e7939d6a8e804a51897c3af4588deb48be2Jim Grosbach@ CHECK: add.w	r2, sp, #1024           @ encoding: [0x0d,0xf5,0x80,0x62]
9420ed2e7939d6a8e804a51897c3af4588deb48be2Jim Grosbach@ CHECK: add.w	r2, r8, #65280          @ encoding: [0x08,0xf5,0x7f,0x42]
9520ed2e7939d6a8e804a51897c3af4588deb48be2Jim Grosbach@ CHECK: addw	r2, r3, #257            @ encoding: [0x03,0xf2,0x01,0x12]
9620ed2e7939d6a8e804a51897c3af4588deb48be2Jim Grosbach@ CHECK: addw	r2, r3, #257            @ encoding: [0x03,0xf2,0x01,0x12]
9720ed2e7939d6a8e804a51897c3af4588deb48be2Jim Grosbach@ CHECK: add.w	r12, r6, #256           @ encoding: [0x06,0xf5,0x80,0x7c]
9820ed2e7939d6a8e804a51897c3af4588deb48be2Jim Grosbach@ CHECK: addw	r12, r6, #256           @ encoding: [0x06,0xf2,0x00,0x1c]
9920ed2e7939d6a8e804a51897c3af4588deb48be2Jim Grosbach@ CHECK: adds.w	r1, r2, #496            @ encoding: [0x12,0xf5,0xf8,0x71]
1005d0492cfc4521ccb13b4961227b279991a17c393Jim Grosbach@ CHECK: add.w	r2, r2, #1              @ encoding: [0x02,0xf1,0x01,0x02]
101da84786bee8304588a4325b15e297be1995a5d41Jim Grosbach@ CHECK: add.w	r0, r0, #32             @ encoding: [0x00,0xf1,0x20,0x00]
1022d30d947ec2626e8b1a9b577cdfa4121f476c3f5Jim Grosbach@ CHECK: adds	r2, #56                 @ encoding: [0x38,0x32]
1032d30d947ec2626e8b1a9b577cdfa4121f476c3f5Jim Grosbach@ CHECK: adds	r2, #56                 @ encoding: [0x38,0x32]
10420ed2e7939d6a8e804a51897c3af4588deb48be2Jim Grosbach
10554319e2a8c22e7ee7044e398fbd8d4287e2b7c4fJim Grosbach@ CHECK: subs.w	r2, r2, #16             @ encoding: [0xb2,0xf1,0x10,0x02]
10654319e2a8c22e7ee7044e398fbd8d4287e2b7c4fJim Grosbach@ CHECK: subs.w	r2, r2, #16             @ encoding: [0xb2,0xf1,0x10,0x02]
10754319e2a8c22e7ee7044e398fbd8d4287e2b7c4fJim Grosbach@ CHECK: subw	r2, r2, #16             @ encoding: [0xa2,0xf2,0x10,0x02]
10854319e2a8c22e7ee7044e398fbd8d4287e2b7c4fJim Grosbach@ CHECK: subw	r2, r2, #16             @ encoding: [0xa2,0xf2,0x10,0x02]
10954319e2a8c22e7ee7044e398fbd8d4287e2b7c4fJim Grosbach@ CHECK: subw	r2, r2, #16             @ encoding: [0xa2,0xf2,0x10,0x02]
11054319e2a8c22e7ee7044e398fbd8d4287e2b7c4fJim Grosbach
111aca878c5e6d8ed34e436f4a4ec3b4e4dff3616dbJim Grosbach
112aca878c5e6d8ed34e436f4a4ec3b4e4dff3616dbJim Grosbach@------------------------------------------------------------------------------
113f0851e5d95a1d1f746a3b1e9633af76496e316e7Jim Grosbach@ ADD (register)
114f0851e5d95a1d1f746a3b1e9633af76496e316e7Jim Grosbach@------------------------------------------------------------------------------
115f0851e5d95a1d1f746a3b1e9633af76496e316e7Jim Grosbach        add r1, r2, r8
116f0851e5d95a1d1f746a3b1e9633af76496e316e7Jim Grosbach        add r5, r9, r2, asr #32
117f0851e5d95a1d1f746a3b1e9633af76496e316e7Jim Grosbach        adds r7, r3, r1, lsl #31
118f0851e5d95a1d1f746a3b1e9633af76496e316e7Jim Grosbach        adds.w r0, r3, r6, lsr #25
119f0851e5d95a1d1f746a3b1e9633af76496e316e7Jim Grosbach        add.w r4, r8, r1, ror #12
1206e507c645d469f525a46c4280cc29bd3078bb9d0Jim Grosbach        add r10, r8
1216e507c645d469f525a46c4280cc29bd3078bb9d0Jim Grosbach        add r10, r10, r8
122f0851e5d95a1d1f746a3b1e9633af76496e316e7Jim Grosbach
123f0851e5d95a1d1f746a3b1e9633af76496e316e7Jim Grosbach@ CHECK: add.w	r1, r2, r8              @ encoding: [0x02,0xeb,0x08,0x01]
124f0851e5d95a1d1f746a3b1e9633af76496e316e7Jim Grosbach@ CHECK: add.w	r5, r9, r2, asr #32     @ encoding: [0x09,0xeb,0x22,0x05]
125f0851e5d95a1d1f746a3b1e9633af76496e316e7Jim Grosbach@ CHECK: adds.w	r7, r3, r1, lsl #31     @ encoding: [0x13,0xeb,0xc1,0x77]
126f0851e5d95a1d1f746a3b1e9633af76496e316e7Jim Grosbach@ CHECK: adds.w	r0, r3, r6, lsr #25     @ encoding: [0x13,0xeb,0x56,0x60]
127f0851e5d95a1d1f746a3b1e9633af76496e316e7Jim Grosbach@ CHECK: add.w	r4, r8, r1, ror #12     @ encoding: [0x08,0xeb,0x31,0x34]
1286e507c645d469f525a46c4280cc29bd3078bb9d0Jim Grosbach@ CHECK: add	r10, r8                 @ encoding: [0xc2,0x44]
1296e507c645d469f525a46c4280cc29bd3078bb9d0Jim Grosbach@ CHECK: add	r10, r8                 @ encoding: [0xc2,0x44]
130f0851e5d95a1d1f746a3b1e9633af76496e316e7Jim Grosbach
131f0851e5d95a1d1f746a3b1e9633af76496e316e7Jim Grosbach
132f0851e5d95a1d1f746a3b1e9633af76496e316e7Jim Grosbach@------------------------------------------------------------------------------
133aca878c5e6d8ed34e436f4a4ec3b4e4dff3616dbJim Grosbach@ FIXME: ADR
134aca878c5e6d8ed34e436f4a4ec3b4e4dff3616dbJim Grosbach@------------------------------------------------------------------------------
135aca878c5e6d8ed34e436f4a4ec3b4e4dff3616dbJim Grosbach
13608fef885eb39339a47e3be7f0842b1db33683003Owen Anderson        subw r11, pc, #3270
13708fef885eb39339a47e3be7f0842b1db33683003Owen Anderson        adr.w r11, #-826
1381fb27eccf5b7eabde9678d84411eb1df8a693683Jiangning Liu        adr.w r1, #-0x0
13908fef885eb39339a47e3be7f0842b1db33683003Owen Anderson
14008fef885eb39339a47e3be7f0842b1db33683003Owen Anderson@ CHECK: subw	r11, pc, #3270          @ encoding: [0xaf,0xf6,0xc6,0x4b]
14108fef885eb39339a47e3be7f0842b1db33683003Owen Anderson@ CHECK: adr.w	r11, #-826              @ encoding: [0xaf,0xf2,0x3a,0x3b]
1421fb27eccf5b7eabde9678d84411eb1df8a693683Jiangning Liu@ CHECK: adr.w	r1, #-0                 @ encoding: [0xaf,0xf2,0x00,0x01]
14308fef885eb39339a47e3be7f0842b1db33683003Owen Anderson
144ca52a7e38c0bcdd1a8f32212239606fe1f5e3152Jim Grosbach@------------------------------------------------------------------------------
145ca52a7e38c0bcdd1a8f32212239606fe1f5e3152Jim Grosbach@ AND (immediate)
146ca52a7e38c0bcdd1a8f32212239606fe1f5e3152Jim Grosbach@------------------------------------------------------------------------------
147ca52a7e38c0bcdd1a8f32212239606fe1f5e3152Jim Grosbach        and r2, r5, #0xff000
148ca52a7e38c0bcdd1a8f32212239606fe1f5e3152Jim Grosbach        ands r3, r12, #0xf
149ca52a7e38c0bcdd1a8f32212239606fe1f5e3152Jim Grosbach        and r1, #0xff
150ca52a7e38c0bcdd1a8f32212239606fe1f5e3152Jim Grosbach        and r1, r1, #0xff
151ca52a7e38c0bcdd1a8f32212239606fe1f5e3152Jim Grosbach
152ca52a7e38c0bcdd1a8f32212239606fe1f5e3152Jim Grosbach@ CHECK: and	r2, r5, #1044480        @ encoding: [0x05,0xf4,0x7f,0x22]
153ca52a7e38c0bcdd1a8f32212239606fe1f5e3152Jim Grosbach@ CHECK: ands	r3, r12, #15            @ encoding: [0x1c,0xf0,0x0f,0x03]
154ca52a7e38c0bcdd1a8f32212239606fe1f5e3152Jim Grosbach@ CHECK: and	r1, r1, #255            @ encoding: [0x01,0xf0,0xff,0x01]
155ca52a7e38c0bcdd1a8f32212239606fe1f5e3152Jim Grosbach@ CHECK: and	r1, r1, #255            @ encoding: [0x01,0xf0,0xff,0x01]
156aca878c5e6d8ed34e436f4a4ec3b4e4dff3616dbJim Grosbach
1575c1ac5554229d5481b772cb017139bdd24d5114dJim Grosbach
1585c1ac5554229d5481b772cb017139bdd24d5114dJim Grosbach@------------------------------------------------------------------------------
1595c1ac5554229d5481b772cb017139bdd24d5114dJim Grosbach@ AND (register)
1605c1ac5554229d5481b772cb017139bdd24d5114dJim Grosbach@------------------------------------------------------------------------------
1615c1ac5554229d5481b772cb017139bdd24d5114dJim Grosbach        and r4, r9, r8
1625c1ac5554229d5481b772cb017139bdd24d5114dJim Grosbach        and r1, r4, r8, asr #3
1635c1ac5554229d5481b772cb017139bdd24d5114dJim Grosbach        ands r2, r1, r7, lsl #1
1645c1ac5554229d5481b772cb017139bdd24d5114dJim Grosbach        ands.w r4, r5, r2, lsr #20
1655c1ac5554229d5481b772cb017139bdd24d5114dJim Grosbach        and.w r9, r12, r1, ror #17
1665c1ac5554229d5481b772cb017139bdd24d5114dJim Grosbach
1675c1ac5554229d5481b772cb017139bdd24d5114dJim Grosbach@ CHECK: and.w	r4, r9, r8              @ encoding: [0x09,0xea,0x08,0x04]
1685c1ac5554229d5481b772cb017139bdd24d5114dJim Grosbach@ CHECK: and.w	r1, r4, r8, asr #3      @ encoding: [0x04,0xea,0xe8,0x01]
1695c1ac5554229d5481b772cb017139bdd24d5114dJim Grosbach@ CHECK: ands.w	r2, r1, r7, lsl #1      @ encoding: [0x11,0xea,0x47,0x02]
1705c1ac5554229d5481b772cb017139bdd24d5114dJim Grosbach@ CHECK: ands.w	r4, r5, r2, lsr #20     @ encoding: [0x15,0xea,0x12,0x54]
1715c1ac5554229d5481b772cb017139bdd24d5114dJim Grosbach@ CHECK: and.w	r9, r12, r1, ror #17    @ encoding: [0x0c,0xea,0x71,0x49]
1725c1ac5554229d5481b772cb017139bdd24d5114dJim Grosbach
1735f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach@------------------------------------------------------------------------------
1745f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach@ ASR (immediate)
1755f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach@------------------------------------------------------------------------------
1765f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach        asr r2, r3, #12
1775f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach        asrs r8, r3, #32
1785f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach        asrs.w r2, r3, #1
1795f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach        asr r2, r3, #4
1805f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach        asrs r2, r12, #15
1815f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach
1825f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach        asr r3, #19
1835f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach        asrs r8, #2
1845f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach        asrs.w r7, #5
1855f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach        asr.w r12, #21
1865f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach
1875f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach@ CHECK: asr.w	r2, r3, #12             @ encoding: [0x4f,0xea,0x23,0x32]
1885f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach@ CHECK: asrs.w	r8, r3, #32             @ encoding: [0x5f,0xea,0x23,0x08]
1895f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach@ CHECK: asrs.w	r2, r3, #1              @ encoding: [0x5f,0xea,0x63,0x02]
1905f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach@ CHECK: asr.w	r2, r3, #4              @ encoding: [0x4f,0xea,0x23,0x12]
1915f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach@ CHECK: asrs.w	r2, r12, #15            @ encoding: [0x5f,0xea,0xec,0x32]
1925f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach
1935f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach@ CHECK: asr.w	r3, r3, #19             @ encoding: [0x4f,0xea,0xe3,0x43]
1945f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach@ CHECK: asrs.w	r8, r8, #2              @ encoding: [0x5f,0xea,0xa8,0x08]
1955f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach@ CHECK: asrs.w	r7, r7, #5              @ encoding: [0x5f,0xea,0x67,0x17]
1965f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach@ CHECK: asr.w	r12, r12, #21           @ encoding: [0x4f,0xea,0x6c,0x5c]
1975f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach
1985f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach
1995f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach@------------------------------------------------------------------------------
2005f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach@ ASR (register)
2015f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach@------------------------------------------------------------------------------
2025f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach        asr r3, r4, r2
2035f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach        asr.w r1, r2
2045f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach        asrs r3, r4, r8
2055f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach
2065f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach@ CHECK: asr.w	r3, r4, r2              @ encoding: [0x44,0xfa,0x02,0xf3]
2075f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach@ CHECK: asr.w	r1, r1, r2              @ encoding: [0x41,0xfa,0x02,0xf1]
2085f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach@ CHECK: asrs.w	r3, r4, r8              @ encoding: [0x54,0xfa,0x08,0xf3]
2095f25fb01b4061725124e34a942809e9c0c6f681cJim Grosbach
2105c1ac5554229d5481b772cb017139bdd24d5114dJim Grosbach
2117f17b5a483ea358f2b9e3958f16cf34d75d5b4daOwen Anderson@------------------------------------------------------------------------------
2127f17b5a483ea358f2b9e3958f16cf34d75d5b4daOwen Anderson@ B
2137f17b5a483ea358f2b9e3958f16cf34d75d5b4daOwen Anderson@------------------------------------------------------------------------------
214a110988b391652e3f4f85cb709a3eeb81c8cdd84Jim Grosbach        b.w   _bar
215a110988b391652e3f4f85cb709a3eeb81c8cdd84Jim Grosbach        beq.w   _bar
216a110988b391652e3f4f85cb709a3eeb81c8cdd84Jim Grosbach        it eq
217a110988b391652e3f4f85cb709a3eeb81c8cdd84Jim Grosbach        beq.w _bar
2187f17b5a483ea358f2b9e3958f16cf34d75d5b4daOwen Anderson        bmi.w   #-183396
2197f17b5a483ea358f2b9e3958f16cf34d75d5b4daOwen Anderson
220a110988b391652e3f4f85cb709a3eeb81c8cdd84Jim Grosbach@ CHECK: b.w	_bar                    @ encoding: [A,0xf0'A',A,0x90'A']
221a110988b391652e3f4f85cb709a3eeb81c8cdd84Jim Grosbach          @   fixup A - offset: 0, value: _bar, kind: fixup_t2_uncondbranch
222a110988b391652e3f4f85cb709a3eeb81c8cdd84Jim Grosbach@ CHECK: beq.w	_bar                    @ encoding: [A,0xf0'A',A,0x80'A']
223a110988b391652e3f4f85cb709a3eeb81c8cdd84Jim Grosbach          @   fixup A - offset: 0, value: _bar, kind: fixup_t2_condbranch
224a110988b391652e3f4f85cb709a3eeb81c8cdd84Jim Grosbach@ CHECK: it	eq                      @ encoding: [0x08,0xbf]
22551f6a7abf27fc92c3d8904c2334feab8b498e8e9Owen Anderson@ CHECK: beq.w	_bar                    @ encoding: [A,0xf0'A',A,0x90'A']
226a110988b391652e3f4f85cb709a3eeb81c8cdd84Jim Grosbach          @   fixup A - offset: 0, value: _bar, kind: fixup_t2_uncondbranch
2277f17b5a483ea358f2b9e3958f16cf34d75d5b4daOwen Anderson@ CHECK: bmi.w   #-183396                @ encoding: [0x13,0xf5,0xce,0xa9]
22820ed2e7939d6a8e804a51897c3af4588deb48be2Jim Grosbach
2297413f41d3b45d9fe851943d110a5ef5a54a5e076Jim Grosbach
2307413f41d3b45d9fe851943d110a5ef5a54a5e076Jim Grosbach@------------------------------------------------------------------------------
2317413f41d3b45d9fe851943d110a5ef5a54a5e076Jim Grosbach@ BFC
2327413f41d3b45d9fe851943d110a5ef5a54a5e076Jim Grosbach@------------------------------------------------------------------------------
2337413f41d3b45d9fe851943d110a5ef5a54a5e076Jim Grosbach        bfc r5, #3, #17
2347413f41d3b45d9fe851943d110a5ef5a54a5e076Jim Grosbach        it lo
2357413f41d3b45d9fe851943d110a5ef5a54a5e076Jim Grosbach        bfccc r5, #3, #17
2367413f41d3b45d9fe851943d110a5ef5a54a5e076Jim Grosbach
2377413f41d3b45d9fe851943d110a5ef5a54a5e076Jim Grosbach@ CHECK: bfc	r5, #3, #17             @ encoding: [0x6f,0xf3,0xd3,0x05]
2387413f41d3b45d9fe851943d110a5ef5a54a5e076Jim Grosbach@ CHECK: it	lo                      @ encoding: [0x38,0xbf]
2397413f41d3b45d9fe851943d110a5ef5a54a5e076Jim Grosbach@ CHECK: bfclo	r5, #3, #17             @ encoding: [0x6f,0xf3,0xd3,0x05]
2400b9a3d37c5a6c452b40beede7519be97cad97ef0Jim Grosbach
2410b9a3d37c5a6c452b40beede7519be97cad97ef0Jim Grosbach
2420b9a3d37c5a6c452b40beede7519be97cad97ef0Jim Grosbach@------------------------------------------------------------------------------
2430b9a3d37c5a6c452b40beede7519be97cad97ef0Jim Grosbach@ BFI
2440b9a3d37c5a6c452b40beede7519be97cad97ef0Jim Grosbach@------------------------------------------------------------------------------
2450b9a3d37c5a6c452b40beede7519be97cad97ef0Jim Grosbach        bfi r5, r2, #3, #17
2460b9a3d37c5a6c452b40beede7519be97cad97ef0Jim Grosbach        it ne
2470b9a3d37c5a6c452b40beede7519be97cad97ef0Jim Grosbach        bfine r5, r2, #3, #17
2480b9a3d37c5a6c452b40beede7519be97cad97ef0Jim Grosbach
2490b9a3d37c5a6c452b40beede7519be97cad97ef0Jim Grosbach@ CHECK: bfi	r5, r2, #3, #17         @ encoding: [0x62,0xf3,0xd3,0x05]
2500b9a3d37c5a6c452b40beede7519be97cad97ef0Jim Grosbach@ CHECK: it	ne                      @ encoding: [0x18,0xbf]
2510b9a3d37c5a6c452b40beede7519be97cad97ef0Jim Grosbach@ CHECK: bfine	r5, r2, #3, #17         @ encoding: [0x62,0xf3,0xd3,0x05]
2527413f41d3b45d9fe851943d110a5ef5a54a5e076Jim Grosbach
2537413f41d3b45d9fe851943d110a5ef5a54a5e076Jim Grosbach
25420ed2e7939d6a8e804a51897c3af4588deb48be2Jim Grosbach@------------------------------------------------------------------------------
255cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach@ BIC
256cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach@------------------------------------------------------------------------------
257cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach        bic r10, r1, #0xf
258cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach        bic r12, r3, r6
259cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach        bic r11, r2, r6, lsl #12
260cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach        bic r8, r4, r1, lsr #11
261cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach        bic r7, r5, r7, lsr #15
262cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach        bic r6, r7, r9, asr #32
263cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach        bic r5, r6, r8, ror #1
264cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach
265cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach        @ destination register is optional
266cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach        bic r1, #0xf
267cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach        bic r1, r1
268cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach        bic r4, r2, lsl #31
269cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach        bic r6, r3, lsr #12
270cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach        bic r7, r4, lsr #7
271cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach        bic r8, r5, asr #15
272cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach        bic r12, r6, ror #29
273cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach
274cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach@ CHECK: bic	r10, r1, #15            @ encoding: [0x21,0xf0,0x0f,0x0a]
275cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach@ CHECK: bic.w	r12, r3, r6             @ encoding: [0x23,0xea,0x06,0x0c]
276cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach@ CHECK: bic.w	r11, r2, r6, lsl #12    @ encoding: [0x22,0xea,0x06,0x3b]
277cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach@ CHECK: bic.w	r8, r4, r1, lsr #11     @ encoding: [0x24,0xea,0xd1,0x28]
278cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach@ CHECK: bic.w	r7, r5, r7, lsr #15     @ encoding: [0x25,0xea,0xd7,0x37]
279cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach@ CHECK: bic.w	r6, r7, r9, asr #32     @ encoding: [0x27,0xea,0x29,0x06]
280cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach@ CHECK: bic.w	r5, r6, r8, ror #1      @ encoding: [0x26,0xea,0x78,0x05]
281cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach
282cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach@ CHECK: bic	r1, r1, #15             @ encoding: [0x21,0xf0,0x0f,0x01]
283cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach@ CHECK: bic.w	r1, r1, r1              @ encoding: [0x21,0xea,0x01,0x01]
284cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach@ CHECK: bic.w	r4, r4, r2, lsl #31     @ encoding: [0x24,0xea,0xc2,0x74]
285cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach@ CHECK: bic.w	r6, r6, r3, lsr #12     @ encoding: [0x26,0xea,0x13,0x36]
286cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach@ CHECK: bic.w	r7, r7, r4, lsr #7      @ encoding: [0x27,0xea,0xd4,0x17]
287cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach@ CHECK: bic.w	r8, r8, r5, asr #15     @ encoding: [0x28,0xea,0xe5,0x38]
288cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach@ CHECK: bic.w	r12, r12, r6, ror #29   @ encoding: [0x2c,0xea,0x76,0x7c]
289cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach
290b6b7f515e2b90c9f9b6cdd5b9648121f6ad2b3a1Owen Anderson@------------------------------------------------------------------------------
291b6b7f515e2b90c9f9b6cdd5b9648121f6ad2b3a1Owen Anderson@ BKPT
292b6b7f515e2b90c9f9b6cdd5b9648121f6ad2b3a1Owen Anderson@------------------------------------------------------------------------------
293b6b7f515e2b90c9f9b6cdd5b9648121f6ad2b3a1Owen Anderson        it pl
294b6b7f515e2b90c9f9b6cdd5b9648121f6ad2b3a1Owen Anderson        bkpt #234
295b6b7f515e2b90c9f9b6cdd5b9648121f6ad2b3a1Owen Anderson
296b6b7f515e2b90c9f9b6cdd5b9648121f6ad2b3a1Owen Anderson@ CHECK: it pl                      @ encoding: [0x58,0xbf]
297b6b7f515e2b90c9f9b6cdd5b9648121f6ad2b3a1Owen Anderson@ CHECK: bkpt #234                    @ encoding: [0xea,0xbe]
298cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach
299cefd2020a671248b3266bc2e818645db98f3a1d9Jim Grosbach@------------------------------------------------------------------------------
3006c3e11ea55172def6f9829cc24cc5c3b071208baJim Grosbach@ BXJ
3016c3e11ea55172def6f9829cc24cc5c3b071208baJim Grosbach@------------------------------------------------------------------------------
3026c3e11ea55172def6f9829cc24cc5c3b071208baJim Grosbach        bxj r5
3036c3e11ea55172def6f9829cc24cc5c3b071208baJim Grosbach        it ne
3046c3e11ea55172def6f9829cc24cc5c3b071208baJim Grosbach        bxjne r7
3056c3e11ea55172def6f9829cc24cc5c3b071208baJim Grosbach
3066c3e11ea55172def6f9829cc24cc5c3b071208baJim Grosbach@ CHECK: bxj	r5                      @ encoding: [0xc5,0xf3,0x00,0x8f]
3076c3e11ea55172def6f9829cc24cc5c3b071208baJim Grosbach@ CHECK: it	ne                      @ encoding: [0x18,0xbf]
3086c3e11ea55172def6f9829cc24cc5c3b071208baJim Grosbach@ CHECK: bxjne	r7                      @ encoding: [0xc7,0xf3,0x00,0x8f]
3096c3e11ea55172def6f9829cc24cc5c3b071208baJim Grosbach
3106c3e11ea55172def6f9829cc24cc5c3b071208baJim Grosbach
3116c3e11ea55172def6f9829cc24cc5c3b071208baJim Grosbach@------------------------------------------------------------------------------
31221df36c57afc588c8073a070a47e3ba45fa87270Owen Anderson@ CBZ/CBNZ
31321df36c57afc588c8073a070a47e3ba45fa87270Owen Anderson@------------------------------------------------------------------------------
31421df36c57afc588c8073a070a47e3ba45fa87270Owen Anderson        cbnz    r7, #6
31521df36c57afc588c8073a070a47e3ba45fa87270Owen Anderson        cbnz    r7, #12
31683452b206459f56454443b4caffa2e5bf1422defJim Grosbach        cbz   r6, _bar
31783452b206459f56454443b4caffa2e5bf1422defJim Grosbach        cbnz   r6, _bar
31821df36c57afc588c8073a070a47e3ba45fa87270Owen Anderson
31921df36c57afc588c8073a070a47e3ba45fa87270Owen Anderson@ CHECK: cbnz    r7, #6                  @ encoding: [0x1f,0xb9]
32021df36c57afc588c8073a070a47e3ba45fa87270Owen Anderson@ CHECK: cbnz    r7, #12                 @ encoding: [0x37,0xb9]
32183452b206459f56454443b4caffa2e5bf1422defJim Grosbach@ CHECK: cbz	r6, _bar                @ encoding: [0x06'A',0xb1'A']
32283452b206459f56454443b4caffa2e5bf1422defJim Grosbach           @   fixup A - offset: 0, value: _bar, kind: fixup_arm_thumb_cb
32383452b206459f56454443b4caffa2e5bf1422defJim Grosbach@ CHECK: cbnz	r6, _bar                @ encoding: [0x06'A',0xb9'A']
32483452b206459f56454443b4caffa2e5bf1422defJim Grosbach           @   fixup A - offset: 0, value: _bar, kind: fixup_arm_thumb_cb
32521df36c57afc588c8073a070a47e3ba45fa87270Owen Anderson
3266c3e11ea55172def6f9829cc24cc5c3b071208baJim Grosbach
32721df36c57afc588c8073a070a47e3ba45fa87270Owen Anderson@------------------------------------------------------------------------------
32879d56a66c3d763b3a8147581c75c184cd48abcdcJim Grosbach@ CDP/CDP2
32979d56a66c3d763b3a8147581c75c184cd48abcdcJim Grosbach@------------------------------------------------------------------------------
33079d56a66c3d763b3a8147581c75c184cd48abcdcJim Grosbach  cdp  p7, #1, c1, c1, c1, #4
33179d56a66c3d763b3a8147581c75c184cd48abcdcJim Grosbach  cdp2  p7, #1, c1, c1, c1, #4
33279d56a66c3d763b3a8147581c75c184cd48abcdcJim Grosbach
33379d56a66c3d763b3a8147581c75c184cd48abcdcJim Grosbach@ CHECK: cdp	p7, #1, c1, c1, c1, #4  @ encoding: [0x11,0xee,0x81,0x17]
33479d56a66c3d763b3a8147581c75c184cd48abcdcJim Grosbach@ CHECK: cdp2	p7, #1, c1, c1, c1, #4  @ encoding: [0x11,0xfe,0x81,0x17]
33579d56a66c3d763b3a8147581c75c184cd48abcdcJim Grosbach
33679d56a66c3d763b3a8147581c75c184cd48abcdcJim Grosbach
33779d56a66c3d763b3a8147581c75c184cd48abcdcJim Grosbach@------------------------------------------------------------------------------
338ad2dad930d450d721209531175b0cbfdc8402558Jim Grosbach@ CLREX
339ad2dad930d450d721209531175b0cbfdc8402558Jim Grosbach@------------------------------------------------------------------------------
340ad2dad930d450d721209531175b0cbfdc8402558Jim Grosbach        clrex
341ad2dad930d450d721209531175b0cbfdc8402558Jim Grosbach        it ne
342ad2dad930d450d721209531175b0cbfdc8402558Jim Grosbach        clrexne
343ad2dad930d450d721209531175b0cbfdc8402558Jim Grosbach
344ad2dad930d450d721209531175b0cbfdc8402558Jim Grosbach@ CHECK: clrex                           @ encoding: [0xbf,0xf3,0x2f,0x8f]
345ad2dad930d450d721209531175b0cbfdc8402558Jim Grosbach@ CHECK: it	ne                       @ encoding: [0x18,0xbf]
346ad2dad930d450d721209531175b0cbfdc8402558Jim Grosbach@ CHECK: clrexne                         @ encoding: [0xbf,0xf3,0x2f,0x8f]
347ad2dad930d450d721209531175b0cbfdc8402558Jim Grosbach
348ad2dad930d450d721209531175b0cbfdc8402558Jim Grosbach
349ad2dad930d450d721209531175b0cbfdc8402558Jim Grosbach@------------------------------------------------------------------------------
3500b533a3bd39471d6dce5a4495f25323a0bb515e0Jim Grosbach@ CLZ
3510b533a3bd39471d6dce5a4495f25323a0bb515e0Jim Grosbach@------------------------------------------------------------------------------
3520b533a3bd39471d6dce5a4495f25323a0bb515e0Jim Grosbach        clz r1, r2
3530b533a3bd39471d6dce5a4495f25323a0bb515e0Jim Grosbach        it eq
3540b533a3bd39471d6dce5a4495f25323a0bb515e0Jim Grosbach        clzeq r1, r2
3550b533a3bd39471d6dce5a4495f25323a0bb515e0Jim Grosbach
3560b533a3bd39471d6dce5a4495f25323a0bb515e0Jim Grosbach@ CHECK: clz	r1, r2                  @ encoding: [0xb2,0xfa,0x82,0xf1]
3570b533a3bd39471d6dce5a4495f25323a0bb515e0Jim Grosbach@ CHECK: it	eq                      @ encoding: [0x08,0xbf]
3580b533a3bd39471d6dce5a4495f25323a0bb515e0Jim Grosbach@ CHECK: clzeq	r1, r2                  @ encoding: [0xb2,0xfa,0x82,0xf1]
3590b533a3bd39471d6dce5a4495f25323a0bb515e0Jim Grosbach
3600b533a3bd39471d6dce5a4495f25323a0bb515e0Jim Grosbach
3610b533a3bd39471d6dce5a4495f25323a0bb515e0Jim Grosbach@------------------------------------------------------------------------------
362ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach@ CMN
363ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach@------------------------------------------------------------------------------
364ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach        cmn r1, #0xf
365ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach        cmn r8, r6
366ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach        cmn r1, r6, lsl #10
367ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach        cmn r1, r6, lsr #10
368ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach        cmn sp, r6, lsr #10
369ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach        cmn r1, r6, asr #10
370ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach        cmn r1, r6, ror #10
371ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach
372ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach@ CHECK: cmn.w	r1, #15                 @ encoding: [0x11,0xf1,0x0f,0x0f]
373ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach@ CHECK: cmn.w	r8, r6                  @ encoding: [0x18,0xeb,0x06,0x0f]
374ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach@ CHECK: cmn.w	r1, r6, lsl #10         @ encoding: [0x11,0xeb,0x86,0x2f]
375ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach@ CHECK: cmn.w	r1, r6, lsr #10         @ encoding: [0x11,0xeb,0x96,0x2f]
376ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach@ CHECK: cmn.w	sp, r6, lsr #10         @ encoding: [0x1d,0xeb,0x96,0x2f]
377ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach@ CHECK: cmn.w	r1, r6, asr #10         @ encoding: [0x11,0xeb,0xa6,0x2f]
378ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach@ CHECK: cmn.w	r1, r6, ror #10         @ encoding: [0x11,0xeb,0xb6,0x2f]
379ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach
380ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach
381ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach@------------------------------------------------------------------------------
382ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach@ CMP
383ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach@------------------------------------------------------------------------------
384ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach        cmp r5, #0xff00
385ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach        cmp.w r4, r12
386ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach        cmp r9, r6, lsl #12
387ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach        cmp r3, r7, lsr #31
388ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach        cmp sp, r6, lsr #1
389ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach        cmp r2, r5, asr #24
390ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach        cmp r1, r4, ror #15
391ad353c630359d285018a250d72c80b7022d8e67eJim Grosbach        cmp r2, #-2
392ad353c630359d285018a250d72c80b7022d8e67eJim Grosbach        cmp r9, #1
393ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach
394ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach@ CHECK: cmp.w	r5, #65280              @ encoding: [0xb5,0xf5,0x7f,0x4f]
395ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach@ CHECK: cmp.w	r4, r12                 @ encoding: [0xb4,0xeb,0x0c,0x0f]
396ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach@ CHECK: cmp.w	r9, r6, lsl #12         @ encoding: [0xb9,0xeb,0x06,0x3f]
397ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach@ CHECK: cmp.w	r3, r7, lsr #31         @ encoding: [0xb3,0xeb,0xd7,0x7f]
398ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach@ CHECK: cmp.w	sp, r6, lsr #1          @ encoding: [0xbd,0xeb,0x56,0x0f]
399ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach@ CHECK: cmp.w	r2, r5, asr #24         @ encoding: [0xb2,0xeb,0x25,0x6f]
400ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach@ CHECK: cmp.w	r1, r4, ror #15         @ encoding: [0xb1,0xeb,0xf4,0x3f]
401ad353c630359d285018a250d72c80b7022d8e67eJim Grosbach@ CHECK: cmn.w	r2, #2                  @ encoding: [0x12,0xf1,0x02,0x0f]
402ad353c630359d285018a250d72c80b7022d8e67eJim Grosbach@ CHECK: cmp.w	r9, #1                  @ encoding: [0xb9,0xf1,0x01,0x0f]
403ad353c630359d285018a250d72c80b7022d8e67eJim Grosbach
404ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach
405ef88a926778b15aa4527a148a514ed0585af7cb1Jim Grosbach@------------------------------------------------------------------------------
40677951908b76c00315f1a74d09fb45530029638ecJim Grosbach@ DBG
40777951908b76c00315f1a74d09fb45530029638ecJim Grosbach@------------------------------------------------------------------------------
40877951908b76c00315f1a74d09fb45530029638ecJim Grosbach        dbg #5
40977951908b76c00315f1a74d09fb45530029638ecJim Grosbach        dbg #0
41077951908b76c00315f1a74d09fb45530029638ecJim Grosbach        dbg #15
41177951908b76c00315f1a74d09fb45530029638ecJim Grosbach
41277951908b76c00315f1a74d09fb45530029638ecJim Grosbach@ CHECK: dbg	#5                      @ encoding: [0xaf,0xf3,0xf5,0x80]
41377951908b76c00315f1a74d09fb45530029638ecJim Grosbach@ CHECK: dbg	#0                      @ encoding: [0xaf,0xf3,0xf0,0x80]
41477951908b76c00315f1a74d09fb45530029638ecJim Grosbach@ CHECK: dbg	#15                     @ encoding: [0xaf,0xf3,0xff,0x80]
41577951908b76c00315f1a74d09fb45530029638ecJim Grosbach
41677951908b76c00315f1a74d09fb45530029638ecJim Grosbach
41777951908b76c00315f1a74d09fb45530029638ecJim Grosbach@------------------------------------------------------------------------------
41806c1a51241852bd652ae6473afaa71d96d48b0ebJim Grosbach@ DMB
41906c1a51241852bd652ae6473afaa71d96d48b0ebJim Grosbach@------------------------------------------------------------------------------
420c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dmb #0xf
421c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dmb #0xe
422c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dmb #0xd
423c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dmb #0xc
424c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dmb #0xb
425c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dmb #0xa
426c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dmb #0x9
427c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dmb #0x8
428c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dmb #0x7
429c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dmb #0x6
430c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dmb #0x5
431c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dmb #0x4
432c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dmb #0x3
433c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dmb #0x2
434c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dmb #0x1
435c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dmb #0x0
436c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu
43706c1a51241852bd652ae6473afaa71d96d48b0ebJim Grosbach        dmb sy
43806c1a51241852bd652ae6473afaa71d96d48b0ebJim Grosbach        dmb st
43906c1a51241852bd652ae6473afaa71d96d48b0ebJim Grosbach        dmb sh
44006c1a51241852bd652ae6473afaa71d96d48b0ebJim Grosbach        dmb ish
44106c1a51241852bd652ae6473afaa71d96d48b0ebJim Grosbach        dmb shst
44206c1a51241852bd652ae6473afaa71d96d48b0ebJim Grosbach        dmb ishst
44306c1a51241852bd652ae6473afaa71d96d48b0ebJim Grosbach        dmb un
44406c1a51241852bd652ae6473afaa71d96d48b0ebJim Grosbach        dmb nsh
44506c1a51241852bd652ae6473afaa71d96d48b0ebJim Grosbach        dmb unst
44606c1a51241852bd652ae6473afaa71d96d48b0ebJim Grosbach        dmb nshst
44706c1a51241852bd652ae6473afaa71d96d48b0ebJim Grosbach        dmb osh
44806c1a51241852bd652ae6473afaa71d96d48b0ebJim Grosbach        dmb oshst
44906c1a51241852bd652ae6473afaa71d96d48b0ebJim Grosbach        dmb
45006c1a51241852bd652ae6473afaa71d96d48b0ebJim Grosbach
45106c1a51241852bd652ae6473afaa71d96d48b0ebJim Grosbach@ CHECK: dmb	sy                      @ encoding: [0xbf,0xf3,0x5f,0x8f]
45206c1a51241852bd652ae6473afaa71d96d48b0ebJim Grosbach@ CHECK: dmb	st                      @ encoding: [0xbf,0xf3,0x5e,0x8f]
453c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dmb	#0xd                    @ encoding: [0xbf,0xf3,0x5d,0x8f]
454c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dmb	#0xc                    @ encoding: [0xbf,0xf3,0x5c,0x8f]
455c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dmb	ish                     @ encoding: [0xbf,0xf3,0x5b,0x8f]
456c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dmb	ishst                   @ encoding: [0xbf,0xf3,0x5a,0x8f]
457c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dmb	#0x9                    @ encoding: [0xbf,0xf3,0x59,0x8f]
458c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dmb	#0x8                    @ encoding: [0xbf,0xf3,0x58,0x8f]
459c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dmb	nsh                     @ encoding: [0xbf,0xf3,0x57,0x8f]
460c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dmb	nshst                   @ encoding: [0xbf,0xf3,0x56,0x8f]
461c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dmb	#0x5                    @ encoding: [0xbf,0xf3,0x55,0x8f]
462c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dmb	#0x4                    @ encoding: [0xbf,0xf3,0x54,0x8f]
463c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dmb	osh                     @ encoding: [0xbf,0xf3,0x53,0x8f]
464c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dmb	oshst                   @ encoding: [0xbf,0xf3,0x52,0x8f]
465c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dmb	#0x1                    @ encoding: [0xbf,0xf3,0x51,0x8f]
466c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dmb	#0x0                    @ encoding: [0xbf,0xf3,0x50,0x8f]
467c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu
468c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dmb	sy                      @ encoding: [0xbf,0xf3,0x5f,0x8f]
469c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dmb	st                      @ encoding: [0xbf,0xf3,0x5e,0x8f]
47006c1a51241852bd652ae6473afaa71d96d48b0ebJim Grosbach@ CHECK: dmb	ish                     @ encoding: [0xbf,0xf3,0x5b,0x8f]
47106c1a51241852bd652ae6473afaa71d96d48b0ebJim Grosbach@ CHECK: dmb	ish                     @ encoding: [0xbf,0xf3,0x5b,0x8f]
47206c1a51241852bd652ae6473afaa71d96d48b0ebJim Grosbach@ CHECK: dmb	ishst                   @ encoding: [0xbf,0xf3,0x5a,0x8f]
47306c1a51241852bd652ae6473afaa71d96d48b0ebJim Grosbach@ CHECK: dmb	ishst                   @ encoding: [0xbf,0xf3,0x5a,0x8f]
47406c1a51241852bd652ae6473afaa71d96d48b0ebJim Grosbach@ CHECK: dmb	nsh                     @ encoding: [0xbf,0xf3,0x57,0x8f]
47506c1a51241852bd652ae6473afaa71d96d48b0ebJim Grosbach@ CHECK: dmb	nsh                     @ encoding: [0xbf,0xf3,0x57,0x8f]
47606c1a51241852bd652ae6473afaa71d96d48b0ebJim Grosbach@ CHECK: dmb	nshst                   @ encoding: [0xbf,0xf3,0x56,0x8f]
47706c1a51241852bd652ae6473afaa71d96d48b0ebJim Grosbach@ CHECK: dmb	nshst                   @ encoding: [0xbf,0xf3,0x56,0x8f]
47806c1a51241852bd652ae6473afaa71d96d48b0ebJim Grosbach@ CHECK: dmb	osh                     @ encoding: [0xbf,0xf3,0x53,0x8f]
47906c1a51241852bd652ae6473afaa71d96d48b0ebJim Grosbach@ CHECK: dmb	oshst                   @ encoding: [0xbf,0xf3,0x52,0x8f]
48006c1a51241852bd652ae6473afaa71d96d48b0ebJim Grosbach@ CHECK: dmb	sy                      @ encoding: [0xbf,0xf3,0x5f,0x8f]
48106c1a51241852bd652ae6473afaa71d96d48b0ebJim Grosbach
48206c1a51241852bd652ae6473afaa71d96d48b0ebJim Grosbach
48306c1a51241852bd652ae6473afaa71d96d48b0ebJim Grosbach@------------------------------------------------------------------------------
48494d1c489a5f75f6092de413f7891449008ed91fdJim Grosbach@ DSB
48594d1c489a5f75f6092de413f7891449008ed91fdJim Grosbach@------------------------------------------------------------------------------
486c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb #0xf
487c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb #0xe
488c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb #0xd
489c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb #0xc
490c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb #0xb
491c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb #0xa
492c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb #0x9
493c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb #0x8
494c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb #0x7
495c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb #0x6
496c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb #0x5
497c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb #0x4
498c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb #0x3
499c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb #0x2
500c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb #0x1
501c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu        dsb #0x0
502c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu
50394d1c489a5f75f6092de413f7891449008ed91fdJim Grosbach        dsb sy
50494d1c489a5f75f6092de413f7891449008ed91fdJim Grosbach        dsb st
50594d1c489a5f75f6092de413f7891449008ed91fdJim Grosbach        dsb sh
50694d1c489a5f75f6092de413f7891449008ed91fdJim Grosbach        dsb ish
50794d1c489a5f75f6092de413f7891449008ed91fdJim Grosbach        dsb shst
50894d1c489a5f75f6092de413f7891449008ed91fdJim Grosbach        dsb ishst
50994d1c489a5f75f6092de413f7891449008ed91fdJim Grosbach        dsb un
51094d1c489a5f75f6092de413f7891449008ed91fdJim Grosbach        dsb nsh
51194d1c489a5f75f6092de413f7891449008ed91fdJim Grosbach        dsb unst
51294d1c489a5f75f6092de413f7891449008ed91fdJim Grosbach        dsb nshst
51394d1c489a5f75f6092de413f7891449008ed91fdJim Grosbach        dsb osh
51494d1c489a5f75f6092de413f7891449008ed91fdJim Grosbach        dsb oshst
51594d1c489a5f75f6092de413f7891449008ed91fdJim Grosbach        dsb
51694d1c489a5f75f6092de413f7891449008ed91fdJim Grosbach
51794d1c489a5f75f6092de413f7891449008ed91fdJim Grosbach@ CHECK: dsb	sy                      @ encoding: [0xbf,0xf3,0x4f,0x8f]
51894d1c489a5f75f6092de413f7891449008ed91fdJim Grosbach@ CHECK: dsb	st                      @ encoding: [0xbf,0xf3,0x4e,0x8f]
519c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	#0xd                    @ encoding: [0xbf,0xf3,0x4d,0x8f]
520c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	#0xc                    @ encoding: [0xbf,0xf3,0x4c,0x8f]
521c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	ish                     @ encoding: [0xbf,0xf3,0x4b,0x8f]
522c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	ishst                   @ encoding: [0xbf,0xf3,0x4a,0x8f]
523c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	#0x9                    @ encoding: [0xbf,0xf3,0x49,0x8f]
524c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	#0x8                    @ encoding: [0xbf,0xf3,0x48,0x8f]
525c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	nsh                     @ encoding: [0xbf,0xf3,0x47,0x8f]
526c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	nshst                   @ encoding: [0xbf,0xf3,0x46,0x8f]
527c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	#0x5                    @ encoding: [0xbf,0xf3,0x45,0x8f]
528c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	#0x4                    @ encoding: [0xbf,0xf3,0x44,0x8f]
529c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	osh                     @ encoding: [0xbf,0xf3,0x43,0x8f]
530c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	oshst                   @ encoding: [0xbf,0xf3,0x42,0x8f]
531c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	#0x1                    @ encoding: [0xbf,0xf3,0x41,0x8f]
532c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	#0x0                    @ encoding: [0xbf,0xf3,0x40,0x8f]
533c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu
534c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	sy                      @ encoding: [0xbf,0xf3,0x4f,0x8f]
535c1b7ca5ba28ded2d83ae534c8e072c2538d43295Jiangning Liu@ CHECK: dsb	st                      @ encoding: [0xbf,0xf3,0x4e,0x8f]
53694d1c489a5f75f6092de413f7891449008ed91fdJim Grosbach@ CHECK: dsb	ish                     @ encoding: [0xbf,0xf3,0x4b,0x8f]
53794d1c489a5f75f6092de413f7891449008ed91fdJim Grosbach@ CHECK: dsb	ish                     @ encoding: [0xbf,0xf3,0x4b,0x8f]
53894d1c489a5f75f6092de413f7891449008ed91fdJim Grosbach@ CHECK: dsb	ishst                   @ encoding: [0xbf,0xf3,0x4a,0x8f]
53994d1c489a5f75f6092de413f7891449008ed91fdJim Grosbach@ CHECK: dsb	ishst                   @ encoding: [0xbf,0xf3,0x4a,0x8f]
54094d1c489a5f75f6092de413f7891449008ed91fdJim Grosbach@ CHECK: dsb	nsh                     @ encoding: [0xbf,0xf3,0x47,0x8f]
54194d1c489a5f75f6092de413f7891449008ed91fdJim Grosbach@ CHECK: dsb	nsh                     @ encoding: [0xbf,0xf3,0x47,0x8f]
54294d1c489a5f75f6092de413f7891449008ed91fdJim Grosbach@ CHECK: dsb	nshst                   @ encoding: [0xbf,0xf3,0x46,0x8f]
54394d1c489a5f75f6092de413f7891449008ed91fdJim Grosbach@ CHECK: dsb	nshst                   @ encoding: [0xbf,0xf3,0x46,0x8f]
54494d1c489a5f75f6092de413f7891449008ed91fdJim Grosbach@ CHECK: dsb	osh                     @ encoding: [0xbf,0xf3,0x43,0x8f]
54594d1c489a5f75f6092de413f7891449008ed91fdJim Grosbach@ CHECK: dsb	oshst                   @ encoding: [0xbf,0xf3,0x42,0x8f]
54694d1c489a5f75f6092de413f7891449008ed91fdJim Grosbach@ CHECK: dsb	sy                      @ encoding: [0xbf,0xf3,0x4f,0x8f]
54794d1c489a5f75f6092de413f7891449008ed91fdJim Grosbach
54894d1c489a5f75f6092de413f7891449008ed91fdJim Grosbach
54994d1c489a5f75f6092de413f7891449008ed91fdJim Grosbach@------------------------------------------------------------------------------
5508f6d8104fc20550da00c3a4a0bc66de64117826dJim Grosbach@ EOR
5518f6d8104fc20550da00c3a4a0bc66de64117826dJim Grosbach@------------------------------------------------------------------------------
5528f6d8104fc20550da00c3a4a0bc66de64117826dJim Grosbach        eor r4, r5, #0xf000
5538f6d8104fc20550da00c3a4a0bc66de64117826dJim Grosbach        eor r4, r5, r6
5548f6d8104fc20550da00c3a4a0bc66de64117826dJim Grosbach        eor r4, r5, r6, lsl #5
5558f6d8104fc20550da00c3a4a0bc66de64117826dJim Grosbach        eor r4, r5, r6, lsr #5
5568f6d8104fc20550da00c3a4a0bc66de64117826dJim Grosbach        eor r4, r5, r6, lsr #5
5578f6d8104fc20550da00c3a4a0bc66de64117826dJim Grosbach        eor r4, r5, r6, asr #5
5588f6d8104fc20550da00c3a4a0bc66de64117826dJim Grosbach        eor r4, r5, r6, ror #5
5598f6d8104fc20550da00c3a4a0bc66de64117826dJim Grosbach
5608f6d8104fc20550da00c3a4a0bc66de64117826dJim Grosbach@ CHECK: eor	r4, r5, #61440          @ encoding: [0x85,0xf4,0x70,0x44]
5618f6d8104fc20550da00c3a4a0bc66de64117826dJim Grosbach@ CHECK: eor.w	r4, r5, r6              @ encoding: [0x85,0xea,0x06,0x04]
5628f6d8104fc20550da00c3a4a0bc66de64117826dJim Grosbach@ CHECK: eor.w	r4, r5, r6, lsl #5      @ encoding: [0x85,0xea,0x46,0x14]
5638f6d8104fc20550da00c3a4a0bc66de64117826dJim Grosbach@ CHECK: eor.w	r4, r5, r6, lsr #5      @ encoding: [0x85,0xea,0x56,0x14]
5648f6d8104fc20550da00c3a4a0bc66de64117826dJim Grosbach@ CHECK: eor.w	r4, r5, r6, lsr #5      @ encoding: [0x85,0xea,0x56,0x14]
5658f6d8104fc20550da00c3a4a0bc66de64117826dJim Grosbach@ CHECK: eor.w	r4, r5, r6, asr #5      @ encoding: [0x85,0xea,0x66,0x14]
5668f6d8104fc20550da00c3a4a0bc66de64117826dJim Grosbach@ CHECK: eor.w	r4, r5, r6, ror #5      @ encoding: [0x85,0xea,0x76,0x14]
5678f6d8104fc20550da00c3a4a0bc66de64117826dJim Grosbach
5688f6d8104fc20550da00c3a4a0bc66de64117826dJim Grosbach
5698f6d8104fc20550da00c3a4a0bc66de64117826dJim Grosbach@------------------------------------------------------------------------------
570aa833e53dc74db6cb6789ef7f05c620d28980983Jim Grosbach@ ISB
571aa833e53dc74db6cb6789ef7f05c620d28980983Jim Grosbach@------------------------------------------------------------------------------
572aa833e53dc74db6cb6789ef7f05c620d28980983Jim Grosbach        isb sy
573aa833e53dc74db6cb6789ef7f05c620d28980983Jim Grosbach        isb
574aa833e53dc74db6cb6789ef7f05c620d28980983Jim Grosbach
575aa833e53dc74db6cb6789ef7f05c620d28980983Jim Grosbach@ CHECK: isb	sy                      @ encoding: [0xbf,0xf3,0x6f,0x8f]
576aa833e53dc74db6cb6789ef7f05c620d28980983Jim Grosbach@ CHECK: isb	sy                      @ encoding: [0xbf,0xf3,0x6f,0x8f]
577aa833e53dc74db6cb6789ef7f05c620d28980983Jim Grosbach
578aa833e53dc74db6cb6789ef7f05c620d28980983Jim Grosbach
579aa833e53dc74db6cb6789ef7f05c620d28980983Jim Grosbach@------------------------------------------------------------------------------
58007d7f3d387739b52f0fccd7c9d7bb54b0195f56cJim Grosbach@ IT
58107d7f3d387739b52f0fccd7c9d7bb54b0195f56cJim Grosbach@------------------------------------------------------------------------------
58207d7f3d387739b52f0fccd7c9d7bb54b0195f56cJim Grosbach@ Test encodings of a few full IT blocks, not just the IT instruction
58307d7f3d387739b52f0fccd7c9d7bb54b0195f56cJim Grosbach
58407d7f3d387739b52f0fccd7c9d7bb54b0195f56cJim Grosbach        iteet eq
58507d7f3d387739b52f0fccd7c9d7bb54b0195f56cJim Grosbach        addeq r0, r1, r2
58607d7f3d387739b52f0fccd7c9d7bb54b0195f56cJim Grosbach        nopne
58707d7f3d387739b52f0fccd7c9d7bb54b0195f56cJim Grosbach        subne r5, r6, r7
58807d7f3d387739b52f0fccd7c9d7bb54b0195f56cJim Grosbach        addeq r1, r2, #4
58907d7f3d387739b52f0fccd7c9d7bb54b0195f56cJim Grosbach
59007d7f3d387739b52f0fccd7c9d7bb54b0195f56cJim Grosbach@ CHECK: iteet	eq                      @ encoding: [0x0d,0xbf]
59107d7f3d387739b52f0fccd7c9d7bb54b0195f56cJim Grosbach@ CHECK: addeq	r0, r1, r2              @ encoding: [0x88,0x18]
59207d7f3d387739b52f0fccd7c9d7bb54b0195f56cJim Grosbach@ CHECK: nopne                          @ encoding: [0x00,0xbf]
59307d7f3d387739b52f0fccd7c9d7bb54b0195f56cJim Grosbach@ CHECK: subne	r5, r6, r7              @ encoding: [0xf5,0x1b]
59407d7f3d387739b52f0fccd7c9d7bb54b0195f56cJim Grosbach@ CHECK: addeq	r1, r2, #4              @ encoding: [0x11,0x1d]
59507d7f3d387739b52f0fccd7c9d7bb54b0195f56cJim Grosbach
59604a09a461beb4ec629fe53e601b7665547ac35c3Richard Barton@ Should also work for UPPER CASE condition codes.
59704a09a461beb4ec629fe53e601b7665547ac35c3Richard Barton
59804a09a461beb4ec629fe53e601b7665547ac35c3Richard Barton        ITEET EQ
59904a09a461beb4ec629fe53e601b7665547ac35c3Richard Barton        ADDEQ R0, R1, R2
60004a09a461beb4ec629fe53e601b7665547ac35c3Richard Barton        NOPNE
60104a09a461beb4ec629fe53e601b7665547ac35c3Richard Barton        SUBNE R5, R6, R7
60204a09a461beb4ec629fe53e601b7665547ac35c3Richard Barton        ADDEQ R1, R2, #4
60304a09a461beb4ec629fe53e601b7665547ac35c3Richard Barton
60404a09a461beb4ec629fe53e601b7665547ac35c3Richard Barton@ CHECK: iteet	eq                      @ encoding: [0x0d,0xbf]
60504a09a461beb4ec629fe53e601b7665547ac35c3Richard Barton@ CHECK: addeq	r0, r1, r2              @ encoding: [0x88,0x18]
60604a09a461beb4ec629fe53e601b7665547ac35c3Richard Barton@ CHECK: nopne                          @ encoding: [0x00,0xbf]
60704a09a461beb4ec629fe53e601b7665547ac35c3Richard Barton@ CHECK: subne	r5, r6, r7              @ encoding: [0xf5,0x1b]
60804a09a461beb4ec629fe53e601b7665547ac35c3Richard Barton@ CHECK: addeq	r1, r2, #4              @ encoding: [0x11,0x1d]
60907d7f3d387739b52f0fccd7c9d7bb54b0195f56cJim Grosbach
61007d7f3d387739b52f0fccd7c9d7bb54b0195f56cJim Grosbach@------------------------------------------------------------------------------
611c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ LDC{L}/LDC2{L}
612c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@------------------------------------------------------------------------------
613c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        ldc2 p0, c8, [r1, #4]
614c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        ldc2 p1, c7, [r2]
615c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        ldc2 p2, c6, [r3, #-224]
616c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        ldc2 p3, c5, [r4, #-120]!
617c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        ldc2 p4, c4, [r5], #16
618c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        ldc2 p5, c3, [r6], #-72
619c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        ldc2l p6, c2, [r7, #4]
620c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        ldc2l p7, c1, [r8]
621c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        ldc2l p8, c0, [r9, #-224]
622c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        ldc2l p9, c1, [r10, #-120]!
623c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        ldc2l p10, c2, [r11], #16
624c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        ldc2l p11, c3, [r12], #-72
625c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach
626c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        ldc p12, c4, [r0, #4]
627c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        ldc p13, c5, [r1]
628c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        ldc p14, c6, [r2, #-224]
629c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        ldc p15, c7, [r3, #-120]!
630c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        ldc p5, c8, [r4], #16
631c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        ldc p4, c9, [r5], #-72
632c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        ldcl p3, c10, [r6, #4]
633c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        ldcl p2, c11, [r7]
634c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        ldcl p1, c12, [r8, #-224]
635c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        ldcl p0, c13, [r9, #-120]!
636c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        ldcl p6, c14, [r10], #16
637c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        ldcl p7, c15, [r11], #-72
638c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach
639c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        ldc2 p2, c8, [r1], { 25 }
640c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach
641c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: ldc2	p0, c8, [r1, #4]        @ encoding: [0x91,0xfd,0x01,0x80]
642c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: ldc2	p1, c7, [r2]            @ encoding: [0x92,0xfd,0x00,0x71]
643c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: ldc2	p2, c6, [r3, #-224]     @ encoding: [0x13,0xfd,0x38,0x62]
644c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: ldc2	p3, c5, [r4, #-120]!    @ encoding: [0x34,0xfd,0x1e,0x53]
645c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: ldc2	p4, c4, [r5], #16       @ encoding: [0xb5,0xfc,0x04,0x44]
646c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: ldc2	p5, c3, [r6], #-72      @ encoding: [0x36,0xfc,0x12,0x35]
647c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: ldc2l	p6, c2, [r7, #4]        @ encoding: [0xd7,0xfd,0x01,0x26]
648c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: ldc2l	p7, c1, [r8]            @ encoding: [0xd8,0xfd,0x00,0x17]
649c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: ldc2l	p8, c0, [r9, #-224]     @ encoding: [0x59,0xfd,0x38,0x08]
650c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: ldc2l	p9, c1, [r10, #-120]!   @ encoding: [0x7a,0xfd,0x1e,0x19]
651c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: ldc2l	p10, c2, [r11], #16     @ encoding: [0xfb,0xfc,0x04,0x2a]
652c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: ldc2l	p11, c3, [r12], #-72    @ encoding: [0x7c,0xfc,0x12,0x3b]
653c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach
654c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: ldc	p12, c4, [r0, #4]       @ encoding: [0x90,0xed,0x01,0x4c]
655c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: ldc	p13, c5, [r1]           @ encoding: [0x91,0xed,0x00,0x5d]
656c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: ldc	p14, c6, [r2, #-224]    @ encoding: [0x12,0xed,0x38,0x6e]
657c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: ldc	p15, c7, [r3, #-120]!   @ encoding: [0x33,0xed,0x1e,0x7f]
658c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: ldc	p5, c8, [r4], #16       @ encoding: [0xb4,0xec,0x04,0x85]
659c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: ldc	p4, c9, [r5], #-72      @ encoding: [0x35,0xec,0x12,0x94]
660c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: ldcl	p3, c10, [r6, #4]       @ encoding: [0xd6,0xed,0x01,0xa3]
661c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: ldcl	p2, c11, [r7]           @ encoding: [0xd7,0xed,0x00,0xb2]
662c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: ldcl	p1, c12, [r8, #-224]    @ encoding: [0x58,0xed,0x38,0xc1]
663c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: ldcl	p0, c13, [r9, #-120]!   @ encoding: [0x79,0xed,0x1e,0xd0]
664c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: ldcl	p6, c14, [r10], #16     @ encoding: [0xfa,0xec,0x04,0xe6]
665c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: ldcl	p7, c15, [r11], #-72    @ encoding: [0x7b,0xec,0x12,0xf7]
666c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach
667c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: ldc2	p2, c8, [r1], {25}      @ encoding: [0x91,0xfc,0x19,0x82]
668c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach
669c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach
670c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@------------------------------------------------------------------------------
67176ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach@ LDMIA
67276ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach@------------------------------------------------------------------------------
67376ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach        ldmia.w r4, {r4, r5, r8, r9}
67476ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach        ldmia.w r4, {r5, r6}
67576ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach        ldmia.w r5!, {r3, r8}
67676ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach        ldm.w r4, {r4, r5, r8, r9}
67776ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach        ldm.w r4, {r5, r6}
67876ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach        ldm.w r5!, {r3, r8}
67976ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach        ldm.w r5!, {r1, r2}
68076ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach        ldm.w r2, {r1, r2}
68176ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach
68276ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach        ldmia r4, {r4, r5, r8, r9}
68376ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach        ldmia r4, {r5, r6}
68476ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach        ldmia r5!, {r3, r8}
68576ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach        ldm r4, {r4, r5, r8, r9}
68676ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach        ldm r4, {r5, r6}
68776ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach        ldm r5!, {r3, r8}
68876ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach        ldmfd r5!, {r3, r8}
6898524bca75076a5e94ba3263968fa4b9e4fc6234fJim Grosbach        ldmia sp!, {r4-r11, pc}
69076ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach
69176ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach@ CHECK: ldm.w	r4, {r4, r5, r8, r9}    @ encoding: [0x94,0xe8,0x30,0x03]
69276ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach@ CHECK: ldm.w	r4, {r5, r6}            @ encoding: [0x94,0xe8,0x60,0x00]
69376ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach@ CHECK: ldm.w	r5!, {r3, r8}           @ encoding: [0xb5,0xe8,0x08,0x01]
69476ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach@ CHECK: ldm.w	r4, {r4, r5, r8, r9}    @ encoding: [0x94,0xe8,0x30,0x03]
69576ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach@ CHECK: ldm.w	r4, {r5, r6}            @ encoding: [0x94,0xe8,0x60,0x00]
69676ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach@ CHECK: ldm.w	r5!, {r3, r8}           @ encoding: [0xb5,0xe8,0x08,0x01]
69776ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach@ CHECK: ldm.w	r5!, {r1, r2}           @ encoding: [0xb5,0xe8,0x06,0x00]
69876ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach@ CHECK: ldm.w	r2, {r1, r2}            @ encoding: [0x92,0xe8,0x06,0x00]
69976ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach
70076ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach@ CHECK: ldm.w	r4, {r4, r5, r8, r9}    @ encoding: [0x94,0xe8,0x30,0x03]
70176ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach@ CHECK: ldm.w	r4, {r5, r6}            @ encoding: [0x94,0xe8,0x60,0x00]
70276ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach@ CHECK: ldm.w	r5!, {r3, r8}           @ encoding: [0xb5,0xe8,0x08,0x01]
70376ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach@ CHECK: ldm.w	r4, {r4, r5, r8, r9}    @ encoding: [0x94,0xe8,0x30,0x03]
70476ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach@ CHECK: ldm.w	r4, {r5, r6}            @ encoding: [0x94,0xe8,0x60,0x00]
70576ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach@ CHECK: ldm.w	r5!, {r3, r8}           @ encoding: [0xb5,0xe8,0x08,0x01]
70676ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach@ CHECK: ldm.w	r5!, {r3, r8}           @ encoding: [0xb5,0xe8,0x08,0x01]
7078524bca75076a5e94ba3263968fa4b9e4fc6234fJim Grosbach@ CHECK: pop.w	{pc, r4, r5, r6, r7, r8, r9, r10, r11} @ encoding: [0xbd,0xe8,0xf0,0x8f]
70876ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach
70976ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach
71076ecc3d35b4d16afb016bb14e29e12802b968716Jim Grosbach@------------------------------------------------------------------------------
71194f914e3fd4b040edd81abb5f455ed2b99e2572aJim Grosbach@ LDMDB
71294f914e3fd4b040edd81abb5f455ed2b99e2572aJim Grosbach@------------------------------------------------------------------------------
71394f914e3fd4b040edd81abb5f455ed2b99e2572aJim Grosbach        ldmdb r4, {r4, r5, r8, r9}
71494f914e3fd4b040edd81abb5f455ed2b99e2572aJim Grosbach        ldmdb r4, {r5, r6}
71594f914e3fd4b040edd81abb5f455ed2b99e2572aJim Grosbach        ldmdb r5!, {r3, r8}
71694f914e3fd4b040edd81abb5f455ed2b99e2572aJim Grosbach        ldmea r5!, {r3, r8}
71788484c00307274568ab068909cb38ecaedd41cbfJim Grosbach        ldmdb.w r4, {r5, r6}
71888484c00307274568ab068909cb38ecaedd41cbfJim Grosbach        ldmdb.w r5!, {r3, r8}
71994f914e3fd4b040edd81abb5f455ed2b99e2572aJim Grosbach
72094f914e3fd4b040edd81abb5f455ed2b99e2572aJim Grosbach@ CHECK: ldmdb	r4, {r4, r5, r8, r9}    @ encoding: [0x14,0xe9,0x30,0x03]
72194f914e3fd4b040edd81abb5f455ed2b99e2572aJim Grosbach@ CHECK: ldmdb	r4, {r5, r6}            @ encoding: [0x14,0xe9,0x60,0x00]
72294f914e3fd4b040edd81abb5f455ed2b99e2572aJim Grosbach@ CHECK: ldmdb	r5!, {r3, r8}           @ encoding: [0x35,0xe9,0x08,0x01]
72394f914e3fd4b040edd81abb5f455ed2b99e2572aJim Grosbach@ CHECK: ldmdb	r5!, {r3, r8}           @ encoding: [0x35,0xe9,0x08,0x01]
72488484c00307274568ab068909cb38ecaedd41cbfJim Grosbach@ CHECK: ldmdb	r4, {r5, r6}            @ encoding: [0x14,0xe9,0x60,0x00]
72588484c00307274568ab068909cb38ecaedd41cbfJim Grosbach@ CHECK: ldmdb	r5!, {r3, r8}           @ encoding: [0x35,0xe9,0x08,0x01]
72694f914e3fd4b040edd81abb5f455ed2b99e2572aJim Grosbach
72794f914e3fd4b040edd81abb5f455ed2b99e2572aJim Grosbach
72894f914e3fd4b040edd81abb5f455ed2b99e2572aJim Grosbach@------------------------------------------------------------------------------
729ed1cb6defa02d92302288410c35464c764adb060Jim Grosbach@ LDR(immediate)
730ed1cb6defa02d92302288410c35464c764adb060Jim Grosbach@------------------------------------------------------------------------------
731ed1cb6defa02d92302288410c35464c764adb060Jim Grosbach        ldr r5, [r5, #-4]
732ed1cb6defa02d92302288410c35464c764adb060Jim Grosbach        ldr r5, [r6, #32]
733ed1cb6defa02d92302288410c35464c764adb060Jim Grosbach        ldr r5, [r6, #33]
734ed1cb6defa02d92302288410c35464c764adb060Jim Grosbach        ldr r5, [r6, #257]
735ed1cb6defa02d92302288410c35464c764adb060Jim Grosbach        ldr.w pc, [r7, #257]
7360bb7c6e8d627edb8c83599c88ad9315636434418Jim Grosbach        ldr r2, [r4, #255]!
7370bb7c6e8d627edb8c83599c88ad9315636434418Jim Grosbach        ldr r8, [sp, #4]!
7380bb7c6e8d627edb8c83599c88ad9315636434418Jim Grosbach        ldr lr, [sp, #-4]!
7390bb7c6e8d627edb8c83599c88ad9315636434418Jim Grosbach        ldr r2, [r4], #255
7400bb7c6e8d627edb8c83599c88ad9315636434418Jim Grosbach        ldr r8, [sp], #4
7410bb7c6e8d627edb8c83599c88ad9315636434418Jim Grosbach        ldr lr, [sp], #-4
742ed1cb6defa02d92302288410c35464c764adb060Jim Grosbach
743ed1cb6defa02d92302288410c35464c764adb060Jim Grosbach@ CHECK: ldr	r5, [r5, #-4]           @ encoding: [0x55,0xf8,0x04,0x5c]
744ed1cb6defa02d92302288410c35464c764adb060Jim Grosbach@ CHECK: ldr	r5, [r6, #32]           @ encoding: [0x35,0x6a]
745ed1cb6defa02d92302288410c35464c764adb060Jim Grosbach@ CHECK: ldr.w	r5, [r6, #33]           @ encoding: [0xd6,0xf8,0x21,0x50]
746ed1cb6defa02d92302288410c35464c764adb060Jim Grosbach@ CHECK: ldr.w	r5, [r6, #257]          @ encoding: [0xd6,0xf8,0x01,0x51]
747ed1cb6defa02d92302288410c35464c764adb060Jim Grosbach@ CHECK: ldr.w	pc, [r7, #257]          @ encoding: [0xd7,0xf8,0x01,0xf1]
7480bb7c6e8d627edb8c83599c88ad9315636434418Jim Grosbach@ CHECK: ldr	r2, [r4, #255]!         @ encoding: [0x54,0xf8,0xff,0x2f]
7490bb7c6e8d627edb8c83599c88ad9315636434418Jim Grosbach@ CHECK: ldr	r8, [sp, #4]!           @ encoding: [0x5d,0xf8,0x04,0x8f]
7500bb7c6e8d627edb8c83599c88ad9315636434418Jim Grosbach@ CHECK: ldr	lr, [sp, #-4]!          @ encoding: [0x5d,0xf8,0x04,0xed]
7510bb7c6e8d627edb8c83599c88ad9315636434418Jim Grosbach@ CHECK: ldr	r2, [r4], #255          @ encoding: [0x54,0xf8,0xff,0x2b]
7520bb7c6e8d627edb8c83599c88ad9315636434418Jim Grosbach@ CHECK: ldr	r8, [sp], #4            @ encoding: [0x5d,0xf8,0x04,0x8b]
7530bb7c6e8d627edb8c83599c88ad9315636434418Jim Grosbach@ CHECK: ldr	lr, [sp], #-4           @ encoding: [0x5d,0xf8,0x04,0xe9]
754ed1cb6defa02d92302288410c35464c764adb060Jim Grosbach
755ed1cb6defa02d92302288410c35464c764adb060Jim Grosbach
756ed1cb6defa02d92302288410c35464c764adb060Jim Grosbach@------------------------------------------------------------------------------
7571aedfb47f96a396e8364ec41c94ee75db84d769eJim Grosbach@ LDR(literal)
7581aedfb47f96a396e8364ec41c94ee75db84d769eJim Grosbach@------------------------------------------------------------------------------
7591aedfb47f96a396e8364ec41c94ee75db84d769eJim Grosbach        ldr.w r5, _foo
760a581328ceb4c9db165d79a4dabd6b28db799d70fJim Grosbach        ldr   lr, (_strcmp-4)
7611aedfb47f96a396e8364ec41c94ee75db84d769eJim Grosbach
7621aedfb47f96a396e8364ec41c94ee75db84d769eJim Grosbach@ CHECK: ldr.w	r5, _foo                @ encoding: [0x5f'A',0xf8'A',A,0x50'A']
763a581328ceb4c9db165d79a4dabd6b28db799d70fJim Grosbach@ CHECK: @   fixup A - offset: 0, value: _foo, kind: fixup_t2_ldst_pcrel_12
764a581328ceb4c9db165d79a4dabd6b28db799d70fJim Grosbach@ CHECK: ldr.w	lr, _strcmp-4           @ encoding: [0x5f'A',0xf8'A',A,0xe0'A']
765a581328ceb4c9db165d79a4dabd6b28db799d70fJim Grosbach@ CHECK: @   fixup A - offset: 0, value: _strcmp-4, kind: fixup_t2_ldst_pcrel_12
7661aedfb47f96a396e8364ec41c94ee75db84d769eJim Grosbach
7671aedfb47f96a396e8364ec41c94ee75db84d769eJim Grosbach
7681aedfb47f96a396e8364ec41c94ee75db84d769eJim Grosbach@------------------------------------------------------------------------------
769ab899c1bcca7f1cc85342c3a686464ba4af035dfJim Grosbach@ LDR(register)
770ab899c1bcca7f1cc85342c3a686464ba4af035dfJim Grosbach@------------------------------------------------------------------------------
771ab899c1bcca7f1cc85342c3a686464ba4af035dfJim Grosbach        ldr r1, [r8, r1]
772ab899c1bcca7f1cc85342c3a686464ba4af035dfJim Grosbach        ldr.w r4, [r5, r2]
773ab899c1bcca7f1cc85342c3a686464ba4af035dfJim Grosbach        ldr r6, [r0, r2, lsl #3]
774ab899c1bcca7f1cc85342c3a686464ba4af035dfJim Grosbach        ldr r8, [r8, r2, lsl #2]
775ab899c1bcca7f1cc85342c3a686464ba4af035dfJim Grosbach        ldr r7, [sp, r2, lsl #1]
776ab899c1bcca7f1cc85342c3a686464ba4af035dfJim Grosbach        ldr r7, [sp, r2, lsl #0]
777ab899c1bcca7f1cc85342c3a686464ba4af035dfJim Grosbach
778ab899c1bcca7f1cc85342c3a686464ba4af035dfJim Grosbach@ CHECK: ldr.w	r1, [r8, r1]            @ encoding: [0x58,0xf8,0x01,0x10]
779ab899c1bcca7f1cc85342c3a686464ba4af035dfJim Grosbach@ CHECK: ldr.w	r4, [r5, r2]            @ encoding: [0x55,0xf8,0x02,0x40]
780ab899c1bcca7f1cc85342c3a686464ba4af035dfJim Grosbach@ CHECK: ldr.w	r6, [r0, r2, lsl #3]    @ encoding: [0x50,0xf8,0x32,0x60]
781ab899c1bcca7f1cc85342c3a686464ba4af035dfJim Grosbach@ CHECK: ldr.w	r8, [r8, r2, lsl #2]    @ encoding: [0x58,0xf8,0x22,0x80]
782ab899c1bcca7f1cc85342c3a686464ba4af035dfJim Grosbach@ CHECK: ldr.w	r7, [sp, r2, lsl #1]    @ encoding: [0x5d,0xf8,0x12,0x70]
783ab899c1bcca7f1cc85342c3a686464ba4af035dfJim Grosbach@ CHECK: ldr.w	r7, [sp, r2]            @ encoding: [0x5d,0xf8,0x02,0x70]
784ab899c1bcca7f1cc85342c3a686464ba4af035dfJim Grosbach
785ab899c1bcca7f1cc85342c3a686464ba4af035dfJim Grosbach
786ab899c1bcca7f1cc85342c3a686464ba4af035dfJim Grosbach@------------------------------------------------------------------------------
7878bb5a861a0efae6b9c8f07936ad9bb3508ada23eJim Grosbach@ LDRB(immediate)
7888bb5a861a0efae6b9c8f07936ad9bb3508ada23eJim Grosbach@------------------------------------------------------------------------------
7898bb5a861a0efae6b9c8f07936ad9bb3508ada23eJim Grosbach        ldrb r5, [r5, #-4]
7908bb5a861a0efae6b9c8f07936ad9bb3508ada23eJim Grosbach        ldrb r5, [r6, #32]
7918bb5a861a0efae6b9c8f07936ad9bb3508ada23eJim Grosbach        ldrb r5, [r6, #33]
7928bb5a861a0efae6b9c8f07936ad9bb3508ada23eJim Grosbach        ldrb r5, [r6, #257]
7938bb5a861a0efae6b9c8f07936ad9bb3508ada23eJim Grosbach        ldrb.w lr, [r7, #257]
7942e7a94137b742798df9678bff925f17844c1e0caJim Grosbach        ldrb r5, [r8, #255]!
7952e7a94137b742798df9678bff925f17844c1e0caJim Grosbach        ldrb r2, [r5, #4]!
7962e7a94137b742798df9678bff925f17844c1e0caJim Grosbach        ldrb r1, [r4, #-4]!
7972e7a94137b742798df9678bff925f17844c1e0caJim Grosbach        ldrb lr, [r3], #255
7982e7a94137b742798df9678bff925f17844c1e0caJim Grosbach        ldrb r9, [r2], #4
7992e7a94137b742798df9678bff925f17844c1e0caJim Grosbach        ldrb r3, [sp], #-4
8008bb5a861a0efae6b9c8f07936ad9bb3508ada23eJim Grosbach
8018bb5a861a0efae6b9c8f07936ad9bb3508ada23eJim Grosbach@ CHECK: ldrb	r5, [r5, #-4]           @ encoding: [0x15,0xf8,0x04,0x5c]
8028bb5a861a0efae6b9c8f07936ad9bb3508ada23eJim Grosbach@ CHECK: ldrb.w	r5, [r6, #32]           @ encoding: [0x96,0xf8,0x20,0x50]
8038bb5a861a0efae6b9c8f07936ad9bb3508ada23eJim Grosbach@ CHECK: ldrb.w	r5, [r6, #33]           @ encoding: [0x96,0xf8,0x21,0x50]
8048bb5a861a0efae6b9c8f07936ad9bb3508ada23eJim Grosbach@ CHECK: ldrb.w	r5, [r6, #257]          @ encoding: [0x96,0xf8,0x01,0x51]
8058bb5a861a0efae6b9c8f07936ad9bb3508ada23eJim Grosbach@ CHECK: ldrb.w	lr, [r7, #257]          @ encoding: [0x97,0xf8,0x01,0xe1]
8062e7a94137b742798df9678bff925f17844c1e0caJim Grosbach@ CHECK: ldrb	r5, [r8, #255]!         @ encoding: [0x18,0xf8,0xff,0x5f]
8072e7a94137b742798df9678bff925f17844c1e0caJim Grosbach@ CHECK: ldrb	r2, [r5, #4]!           @ encoding: [0x15,0xf8,0x04,0x2f]
8082e7a94137b742798df9678bff925f17844c1e0caJim Grosbach@ CHECK: ldrb	r1, [r4, #-4]!          @ encoding: [0x14,0xf8,0x04,0x1d]
8092e7a94137b742798df9678bff925f17844c1e0caJim Grosbach@ CHECK: ldrb	lr, [r3], #255          @ encoding: [0x13,0xf8,0xff,0xeb]
8102e7a94137b742798df9678bff925f17844c1e0caJim Grosbach@ CHECK: ldrb	r9, [r2], #4            @ encoding: [0x12,0xf8,0x04,0x9b]
8112e7a94137b742798df9678bff925f17844c1e0caJim Grosbach@ CHECK: ldrb	r3, [sp], #-4           @ encoding: [0x1d,0xf8,0x04,0x39]
8128bb5a861a0efae6b9c8f07936ad9bb3508ada23eJim Grosbach
8138bb5a861a0efae6b9c8f07936ad9bb3508ada23eJim Grosbach
8148bb5a861a0efae6b9c8f07936ad9bb3508ada23eJim Grosbach@------------------------------------------------------------------------------
815489c693f65521649dbee0378dbb465029d71c712Jim Grosbach@ LDRB(register)
816489c693f65521649dbee0378dbb465029d71c712Jim Grosbach@------------------------------------------------------------------------------
817489c693f65521649dbee0378dbb465029d71c712Jim Grosbach        ldrb r1, [r8, r1]
818489c693f65521649dbee0378dbb465029d71c712Jim Grosbach        ldrb.w r4, [r5, r2]
819489c693f65521649dbee0378dbb465029d71c712Jim Grosbach        ldrb r6, [r0, r2, lsl #3]
820489c693f65521649dbee0378dbb465029d71c712Jim Grosbach        ldrb r8, [r8, r2, lsl #2]
821489c693f65521649dbee0378dbb465029d71c712Jim Grosbach        ldrb r7, [sp, r2, lsl #1]
822489c693f65521649dbee0378dbb465029d71c712Jim Grosbach        ldrb r7, [sp, r2, lsl #0]
823489c693f65521649dbee0378dbb465029d71c712Jim Grosbach
824489c693f65521649dbee0378dbb465029d71c712Jim Grosbach@ CHECK: ldrb.w	r1, [r8, r1]            @ encoding: [0x18,0xf8,0x01,0x10]
825489c693f65521649dbee0378dbb465029d71c712Jim Grosbach@ CHECK: ldrb.w	r4, [r5, r2]            @ encoding: [0x15,0xf8,0x02,0x40]
826489c693f65521649dbee0378dbb465029d71c712Jim Grosbach@ CHECK: ldrb.w	r6, [r0, r2, lsl #3]    @ encoding: [0x10,0xf8,0x32,0x60]
827489c693f65521649dbee0378dbb465029d71c712Jim Grosbach@ CHECK: ldrb.w	r8, [r8, r2, lsl #2]    @ encoding: [0x18,0xf8,0x22,0x80]
828489c693f65521649dbee0378dbb465029d71c712Jim Grosbach@ CHECK: ldrb.w	r7, [sp, r2, lsl #1]    @ encoding: [0x1d,0xf8,0x12,0x70]
829489c693f65521649dbee0378dbb465029d71c712Jim Grosbach@ CHECK: ldrb.w	r7, [sp, r2]            @ encoding: [0x1d,0xf8,0x02,0x70]
830489c693f65521649dbee0378dbb465029d71c712Jim Grosbach
831489c693f65521649dbee0378dbb465029d71c712Jim Grosbach
832489c693f65521649dbee0378dbb465029d71c712Jim Grosbach@------------------------------------------------------------------------------
833f0eee6eca8c39b11b6a41d9b04eba8985655df77Jim Grosbach@ LDRBT
834f0eee6eca8c39b11b6a41d9b04eba8985655df77Jim Grosbach@------------------------------------------------------------------------------
835f0eee6eca8c39b11b6a41d9b04eba8985655df77Jim Grosbach        ldrbt r1, [r2]
836f0eee6eca8c39b11b6a41d9b04eba8985655df77Jim Grosbach        ldrbt r1, [r8, #0]
837f0eee6eca8c39b11b6a41d9b04eba8985655df77Jim Grosbach        ldrbt r1, [r8, #3]
838f0eee6eca8c39b11b6a41d9b04eba8985655df77Jim Grosbach        ldrbt r1, [r8, #255]
839f0eee6eca8c39b11b6a41d9b04eba8985655df77Jim Grosbach
840f0eee6eca8c39b11b6a41d9b04eba8985655df77Jim Grosbach@ CHECK: ldrbt	r1, [r2]                @ encoding: [0x12,0xf8,0x00,0x1e]
841f0eee6eca8c39b11b6a41d9b04eba8985655df77Jim Grosbach@ CHECK: ldrbt	r1, [r8]                @ encoding: [0x18,0xf8,0x00,0x1e]
842f0eee6eca8c39b11b6a41d9b04eba8985655df77Jim Grosbach@ CHECK: ldrbt	r1, [r8, #3]            @ encoding: [0x18,0xf8,0x03,0x1e]
843f0eee6eca8c39b11b6a41d9b04eba8985655df77Jim Grosbach@ CHECK: ldrbt	r1, [r8, #255]          @ encoding: [0x18,0xf8,0xff,0x1e]
844f0eee6eca8c39b11b6a41d9b04eba8985655df77Jim Grosbach
845f0eee6eca8c39b11b6a41d9b04eba8985655df77Jim Grosbach
846f0eee6eca8c39b11b6a41d9b04eba8985655df77Jim Grosbach@------------------------------------------------------------------------------
84775d74282759293b5f5abeae5b3f9e0cec42ae52fJim Grosbach@ LDRD
848a77295db19527503d6b290e4f34f273d0a789365Jim Grosbach@------------------------------------------------------------------------------
849a77295db19527503d6b290e4f34f273d0a789365Jim Grosbach        ldrd r3, r5, [r6, #24]
850a77295db19527503d6b290e4f34f273d0a789365Jim Grosbach        ldrd r3, r5, [r6, #24]!
851a77295db19527503d6b290e4f34f273d0a789365Jim Grosbach        ldrd r3, r5, [r6], #4
852a77295db19527503d6b290e4f34f273d0a789365Jim Grosbach        ldrd r3, r5, [r6], #-8
853a77295db19527503d6b290e4f34f273d0a789365Jim Grosbach        ldrd r3, r5, [r6]
854a77295db19527503d6b290e4f34f273d0a789365Jim Grosbach        ldrd r8, r1, [r3, #0]
855fd652df8b36a9d3e6b09ae2b9f7bcb07e88fdfaaJiangning Liu        ldrd r0, r1, [r2, #-0]
856fd652df8b36a9d3e6b09ae2b9f7bcb07e88fdfaaJiangning Liu        ldrd r0, r1, [r2, #-0]!
857fd652df8b36a9d3e6b09ae2b9f7bcb07e88fdfaaJiangning Liu        ldrd r0, r1, [r2], #-0
858a77295db19527503d6b290e4f34f273d0a789365Jim Grosbach
859a77295db19527503d6b290e4f34f273d0a789365Jim Grosbach@ CHECK: ldrd	r3, r5, [r6, #24]       @ encoding: [0xd6,0xe9,0x06,0x35]
860a77295db19527503d6b290e4f34f273d0a789365Jim Grosbach@ CHECK: ldrd	r3, r5, [r6, #24]!      @ encoding: [0xf6,0xe9,0x06,0x35]
861a77295db19527503d6b290e4f34f273d0a789365Jim Grosbach@ CHECK: ldrd	r3, r5, [r6], #4        @ encoding: [0xf6,0xe8,0x01,0x35]
862a77295db19527503d6b290e4f34f273d0a789365Jim Grosbach@ CHECK: ldrd	r3, r5, [r6], #-8       @ encoding: [0x76,0xe8,0x02,0x35]
863a77295db19527503d6b290e4f34f273d0a789365Jim Grosbach@ CHECK: ldrd	r3, r5, [r6]            @ encoding: [0xd6,0xe9,0x00,0x35]
864a77295db19527503d6b290e4f34f273d0a789365Jim Grosbach@ CHECK: ldrd	r8, r1, [r3]            @ encoding: [0xd3,0xe9,0x00,0x81]
865fd652df8b36a9d3e6b09ae2b9f7bcb07e88fdfaaJiangning Liu@ CHECK: ldrd	r0, r1, [r2, #-0]       @ encoding: [0x52,0xe9,0x00,0x01]
866fd652df8b36a9d3e6b09ae2b9f7bcb07e88fdfaaJiangning Liu@ CHECK: ldrd	r0, r1, [r2, #-0]!      @ encoding: [0x72,0xe9,0x00,0x01]
867fd652df8b36a9d3e6b09ae2b9f7bcb07e88fdfaaJiangning Liu@ CHECK: ldrd	r0, r1, [r2], #-0       @ encoding: [0x72,0xe8,0x00,0x01]
868a77295db19527503d6b290e4f34f273d0a789365Jim Grosbach
8691efd9a0e8b01abf3b3d7048a80c08599f7d3eefdJim Grosbach
8701efd9a0e8b01abf3b3d7048a80c08599f7d3eefdJim Grosbach@------------------------------------------------------------------------------
8711efd9a0e8b01abf3b3d7048a80c08599f7d3eefdJim Grosbach@ FIXME: LDRD(literal)
8721efd9a0e8b01abf3b3d7048a80c08599f7d3eefdJim Grosbach@------------------------------------------------------------------------------
8731efd9a0e8b01abf3b3d7048a80c08599f7d3eefdJim Grosbach
8741efd9a0e8b01abf3b3d7048a80c08599f7d3eefdJim Grosbach
875b6aed508e310e31dcb080e761ca856127cec0773Jim Grosbach@------------------------------------------------------------------------------
876b6aed508e310e31dcb080e761ca856127cec0773Jim Grosbach@ LDREX/LDREXB/LDREXH/LDREXD
877b6aed508e310e31dcb080e761ca856127cec0773Jim Grosbach@------------------------------------------------------------------------------
878b6aed508e310e31dcb080e761ca856127cec0773Jim Grosbach        ldrex r1, [r4]
879b6aed508e310e31dcb080e761ca856127cec0773Jim Grosbach        ldrex r8, [r4, #0]
880b6aed508e310e31dcb080e761ca856127cec0773Jim Grosbach        ldrex r2, [sp, #128]
881b6aed508e310e31dcb080e761ca856127cec0773Jim Grosbach        ldrexb r5, [r7]
882b6aed508e310e31dcb080e761ca856127cec0773Jim Grosbach        ldrexh r9, [r12]
883b6aed508e310e31dcb080e761ca856127cec0773Jim Grosbach        ldrexd r9, r3, [r4]
884b6aed508e310e31dcb080e761ca856127cec0773Jim Grosbach
885b6aed508e310e31dcb080e761ca856127cec0773Jim Grosbach@ CHECK: ldrex	r1, [r4]                @ encoding: [0x54,0xe8,0x00,0x1f]
886b6aed508e310e31dcb080e761ca856127cec0773Jim Grosbach@ CHECK: ldrex	r8, [r4]                @ encoding: [0x54,0xe8,0x00,0x8f]
887b6aed508e310e31dcb080e761ca856127cec0773Jim Grosbach@ CHECK: ldrex	r2, [sp, #128]          @ encoding: [0x5d,0xe8,0x20,0x2f]
888b6aed508e310e31dcb080e761ca856127cec0773Jim Grosbach@ CHECK: ldrexb	r5, [r7]                @ encoding: [0xd7,0xe8,0x4f,0x5f]
889b6aed508e310e31dcb080e761ca856127cec0773Jim Grosbach@ CHECK: ldrexh	r9, [r12]               @ encoding: [0xdc,0xe8,0x5f,0x9f]
890b6aed508e310e31dcb080e761ca856127cec0773Jim Grosbach@ CHECK: ldrexd	r9, r3, [r4]            @ encoding: [0xd4,0xe8,0x7f,0x93]
891b6aed508e310e31dcb080e761ca856127cec0773Jim Grosbach
892a77295db19527503d6b290e4f34f273d0a789365Jim Grosbach
893a77295db19527503d6b290e4f34f273d0a789365Jim Grosbach@------------------------------------------------------------------------------
89495d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach@ LDRH(immediate)
89595d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach@------------------------------------------------------------------------------
89695d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach        ldrh r5, [r5, #-4]
89795d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach        ldrh r5, [r6, #32]
89895d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach        ldrh r5, [r6, #33]
89995d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach        ldrh r5, [r6, #257]
90095d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach        ldrh.w lr, [r7, #257]
9012e7a94137b742798df9678bff925f17844c1e0caJim Grosbach        ldrh r5, [r8, #255]!
9022e7a94137b742798df9678bff925f17844c1e0caJim Grosbach        ldrh r2, [r5, #4]!
9032e7a94137b742798df9678bff925f17844c1e0caJim Grosbach        ldrh r1, [r4, #-4]!
9042e7a94137b742798df9678bff925f17844c1e0caJim Grosbach        ldrh lr, [r3], #255
9052e7a94137b742798df9678bff925f17844c1e0caJim Grosbach        ldrh r9, [r2], #4
9062e7a94137b742798df9678bff925f17844c1e0caJim Grosbach        ldrh r3, [sp], #-4
90795d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach
90895d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach@ CHECK: ldrh	r5, [r5, #-4]           @ encoding: [0x35,0xf8,0x04,0x5c]
90995d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach@ CHECK: ldrh	r5, [r6, #32]           @ encoding: [0x35,0x8c]
91095d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach@ CHECK: ldrh.w	r5, [r6, #33]           @ encoding: [0xb6,0xf8,0x21,0x50]
91195d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach@ CHECK: ldrh.w	r5, [r6, #257]          @ encoding: [0xb6,0xf8,0x01,0x51]
91295d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach@ CHECK: ldrh.w	lr, [r7, #257]          @ encoding: [0xb7,0xf8,0x01,0xe1]
9132e7a94137b742798df9678bff925f17844c1e0caJim Grosbach@ CHECK: ldrh	r5, [r8, #255]!         @ encoding: [0x38,0xf8,0xff,0x5f]
9142e7a94137b742798df9678bff925f17844c1e0caJim Grosbach@ CHECK: ldrh	r2, [r5, #4]!           @ encoding: [0x35,0xf8,0x04,0x2f]
9152e7a94137b742798df9678bff925f17844c1e0caJim Grosbach@ CHECK: ldrh	r1, [r4, #-4]!          @ encoding: [0x34,0xf8,0x04,0x1d]
9162e7a94137b742798df9678bff925f17844c1e0caJim Grosbach@ CHECK: ldrh	lr, [r3], #255          @ encoding: [0x33,0xf8,0xff,0xeb]
9172e7a94137b742798df9678bff925f17844c1e0caJim Grosbach@ CHECK: ldrh	r9, [r2], #4            @ encoding: [0x32,0xf8,0x04,0x9b]
9182e7a94137b742798df9678bff925f17844c1e0caJim Grosbach@ CHECK: ldrh	r3, [sp], #-4           @ encoding: [0x3d,0xf8,0x04,0x39]
91995d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach
92095d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach
92195d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach@------------------------------------------------------------------------------
92295d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach@ LDRH(register)
92395d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach@------------------------------------------------------------------------------
92495d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach        ldrh r1, [r8, r1]
92595d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach        ldrh.w r4, [r5, r2]
92695d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach        ldrh r6, [r0, r2, lsl #3]
92795d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach        ldrh r8, [r8, r2, lsl #2]
92895d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach        ldrh r7, [sp, r2, lsl #1]
92995d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach        ldrh r7, [sp, r2, lsl #0]
93095d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach
93195d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach@ CHECK: ldrh.w	r1, [r8, r1]            @ encoding: [0x38,0xf8,0x01,0x10]
93295d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach@ CHECK: ldrh.w	r4, [r5, r2]            @ encoding: [0x35,0xf8,0x02,0x40]
93395d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach@ CHECK: ldrh.w	r6, [r0, r2, lsl #3]    @ encoding: [0x30,0xf8,0x32,0x60]
93495d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach@ CHECK: ldrh.w	r8, [r8, r2, lsl #2]    @ encoding: [0x38,0xf8,0x22,0x80]
93595d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach@ CHECK: ldrh.w	r7, [sp, r2, lsl #1]    @ encoding: [0x3d,0xf8,0x12,0x70]
93695d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach@ CHECK: ldrh.w	r7, [sp, r2]            @ encoding: [0x3d,0xf8,0x02,0x70]
93795d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach
93895d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach
93995d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach@------------------------------------------------------------------------------
94095d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach@ LDRH(literal)
94195d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach@------------------------------------------------------------------------------
94295d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach        ldrh r5, _bar
94395d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach
944a581328ceb4c9db165d79a4dabd6b28db799d70fJim Grosbach@ CHECK: ldrh.w	r5, _bar                @ encoding: [0x3f'A',0xf8'A',A,0x50'A']
94595d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach@ CHECK:     @   fixup A - offset: 0, value: _bar, kind: fixup_t2_ldst_pcrel_12
94695d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach
94795d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach
94895d397c3b1e5001e5b25b04c52c13a19ec379c2fJim Grosbach@------------------------------------------------------------------------------
94918ceae2a705cd4da38a6f67bf0bb9d8615a8b254Jim Grosbach@ LDRHT
95018ceae2a705cd4da38a6f67bf0bb9d8615a8b254Jim Grosbach@------------------------------------------------------------------------------
95118ceae2a705cd4da38a6f67bf0bb9d8615a8b254Jim Grosbach        ldrht r1, [r2]
95218ceae2a705cd4da38a6f67bf0bb9d8615a8b254Jim Grosbach        ldrht r1, [r8, #0]
95318ceae2a705cd4da38a6f67bf0bb9d8615a8b254Jim Grosbach        ldrht r1, [r8, #3]
95418ceae2a705cd4da38a6f67bf0bb9d8615a8b254Jim Grosbach        ldrht r1, [r8, #255]
95518ceae2a705cd4da38a6f67bf0bb9d8615a8b254Jim Grosbach
95618ceae2a705cd4da38a6f67bf0bb9d8615a8b254Jim Grosbach@ CHECK: ldrht	r1, [r2]                @ encoding: [0x32,0xf8,0x00,0x1e]
95718ceae2a705cd4da38a6f67bf0bb9d8615a8b254Jim Grosbach@ CHECK: ldrht	r1, [r8]                @ encoding: [0x38,0xf8,0x00,0x1e]
95818ceae2a705cd4da38a6f67bf0bb9d8615a8b254Jim Grosbach@ CHECK: ldrht	r1, [r8, #3]            @ encoding: [0x38,0xf8,0x03,0x1e]
95918ceae2a705cd4da38a6f67bf0bb9d8615a8b254Jim Grosbach@ CHECK: ldrht	r1, [r8, #255]          @ encoding: [0x38,0xf8,0xff,0x1e]
96018ceae2a705cd4da38a6f67bf0bb9d8615a8b254Jim Grosbach
96118ceae2a705cd4da38a6f67bf0bb9d8615a8b254Jim Grosbach
96218ceae2a705cd4da38a6f67bf0bb9d8615a8b254Jim Grosbach@------------------------------------------------------------------------------
9630811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach@ LDRSB(immediate)
9640811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach@------------------------------------------------------------------------------
9650811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach        ldrsb r5, [r5, #-4]
9660811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach        ldrsb r5, [r6, #32]
9670811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach        ldrsb r5, [r6, #33]
9680811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach        ldrsb r5, [r6, #257]
9690811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach        ldrsb.w lr, [r7, #257]
9700811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach
9710811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach@ CHECK: ldrsb	r5, [r5, #-4]            @ encoding: [0x15,0xf9,0x04,0x5c]
9720811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach@ CHECK: ldrsb.w r5, [r6, #32]           @ encoding: [0x96,0xf9,0x20,0x50]
9730811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach@ CHECK: ldrsb.w r5, [r6, #33]           @ encoding: [0x96,0xf9,0x21,0x50]
9740811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach@ CHECK: ldrsb.w r5, [r6, #257]          @ encoding: [0x96,0xf9,0x01,0x51]
9750811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach@ CHECK: ldrsb.w lr, [r7, #257]          @ encoding: [0x97,0xf9,0x01,0xe1]
9760811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach
9770811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach
9780811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach@------------------------------------------------------------------------------
9790811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach@ LDRSB(register)
9800811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach@------------------------------------------------------------------------------
9810811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach        ldrsb r1, [r8, r1]
9820811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach        ldrsb.w r4, [r5, r2]
9830811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach        ldrsb r6, [r0, r2, lsl #3]
9840811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach        ldrsb r8, [r8, r2, lsl #2]
9850811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach        ldrsb r7, [sp, r2, lsl #1]
9860811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach        ldrsb r7, [sp, r2, lsl #0]
9870811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach        ldrsb r5, [r8, #255]!
9880811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach        ldrsb r2, [r5, #4]!
9890811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach        ldrsb r1, [r4, #-4]!
9900811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach        ldrsb lr, [r3], #255
9910811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach        ldrsb r9, [r2], #4
9920811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach        ldrsb r3, [sp], #-4
9930811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach
9940811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach@ CHECK: ldrsb.w r1, [r8, r1]           @ encoding: [0x18,0xf9,0x01,0x10]
9950811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach@ CHECK: ldrsb.w r4, [r5, r2]           @ encoding: [0x15,0xf9,0x02,0x40]
9960811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach@ CHECK: ldrsb.w r6, [r0, r2, lsl #3]   @ encoding: [0x10,0xf9,0x32,0x60]
9970811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach@ CHECK: ldrsb.w r8, [r8, r2, lsl #2]   @ encoding: [0x18,0xf9,0x22,0x80]
9980811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach@ CHECK: ldrsb.w r7, [sp, r2, lsl #1]   @ encoding: [0x1d,0xf9,0x12,0x70]
9990811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach@ CHECK: ldrsb.w r7, [sp, r2]           @ encoding: [0x1d,0xf9,0x02,0x70]
10000811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach@ CHECK: ldrsb	r5, [r8, #255]!         @ encoding: [0x18,0xf9,0xff,0x5f]
10010811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach@ CHECK: ldrsb	r2, [r5, #4]!           @ encoding: [0x15,0xf9,0x04,0x2f]
10020811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach@ CHECK: ldrsb	r1, [r4, #-4]!          @ encoding: [0x14,0xf9,0x04,0x1d]
10030811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach@ CHECK: ldrsb	lr, [r3], #255          @ encoding: [0x13,0xf9,0xff,0xeb]
10040811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach@ CHECK: ldrsb	r9, [r2], #4            @ encoding: [0x12,0xf9,0x04,0x9b]
10050811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach@ CHECK: ldrsb	r3, [sp], #-4           @ encoding: [0x1d,0xf9,0x04,0x39]
10060811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach
10070811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach
10080811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach@------------------------------------------------------------------------------
10090811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach@ LDRSB(literal)
10100811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach@------------------------------------------------------------------------------
10110811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach        ldrsb r5, _bar
10120811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach
1013a581328ceb4c9db165d79a4dabd6b28db799d70fJim Grosbach@ CHECK: ldrsb.w r5, _bar               @ encoding: [0x1f'A',0xf9'A',A,0x50'A']
10140811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach@ CHECK:      @   fixup A - offset: 0, value: _bar, kind: fixup_t2_ldst_pcrel_12
10150811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach
10160811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach
10170811fe13d65c67e4c22d9113795deabbd0daa277Jim Grosbach@------------------------------------------------------------------------------
1018578edfbfa072a82ce22790567d3db434710e7551Jim Grosbach@ LDRSBT
1019578edfbfa072a82ce22790567d3db434710e7551Jim Grosbach@------------------------------------------------------------------------------
1020578edfbfa072a82ce22790567d3db434710e7551Jim Grosbach        ldrsbt r1, [r2]
1021578edfbfa072a82ce22790567d3db434710e7551Jim Grosbach        ldrsbt r1, [r8, #0]
1022578edfbfa072a82ce22790567d3db434710e7551Jim Grosbach        ldrsbt r1, [r8, #3]
1023578edfbfa072a82ce22790567d3db434710e7551Jim Grosbach        ldrsbt r1, [r8, #255]
1024578edfbfa072a82ce22790567d3db434710e7551Jim Grosbach
1025578edfbfa072a82ce22790567d3db434710e7551Jim Grosbach@ CHECK: ldrsbt	r1, [r2]                @ encoding: [0x12,0xf9,0x00,0x1e]
1026578edfbfa072a82ce22790567d3db434710e7551Jim Grosbach@ CHECK: ldrsbt	r1, [r8]                @ encoding: [0x18,0xf9,0x00,0x1e]
1027578edfbfa072a82ce22790567d3db434710e7551Jim Grosbach@ CHECK: ldrsbt	r1, [r8, #3]            @ encoding: [0x18,0xf9,0x03,0x1e]
1028578edfbfa072a82ce22790567d3db434710e7551Jim Grosbach@ CHECK: ldrsbt	r1, [r8, #255]          @ encoding: [0x18,0xf9,0xff,0x1e]
1029578edfbfa072a82ce22790567d3db434710e7551Jim Grosbach
1030578edfbfa072a82ce22790567d3db434710e7551Jim Grosbach
1031578edfbfa072a82ce22790567d3db434710e7551Jim Grosbach@------------------------------------------------------------------------------
1032a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach@ LDRSH(immediate)
1033a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach@------------------------------------------------------------------------------
1034a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach        ldrsh r5, [r5, #-4]
1035a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach        ldrsh r5, [r6, #32]
1036a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach        ldrsh r5, [r6, #33]
1037a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach        ldrsh r5, [r6, #257]
1038a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach        ldrsh.w lr, [r7, #257]
1039a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach
1040a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach@ CHECK: ldrsh	r5, [r5, #-4]           @ encoding: [0x35,0xf9,0x04,0x5c]
1041a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach@ CHECK: ldrsh.w r5, [r6, #32]          @ encoding: [0xb6,0xf9,0x20,0x50]
1042a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach@ CHECK: ldrsh.w r5, [r6, #33]          @ encoding: [0xb6,0xf9,0x21,0x50]
1043a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach@ CHECK: ldrsh.w r5, [r6, #257]         @ encoding: [0xb6,0xf9,0x01,0x51]
1044a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach@ CHECK: ldrsh.w lr, [r7, #257]         @ encoding: [0xb7,0xf9,0x01,0xe1]
1045a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach
1046a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach
1047a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach@------------------------------------------------------------------------------
1048a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach@ LDRSH(register)
1049a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach@------------------------------------------------------------------------------
1050a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach        ldrsh r1, [r8, r1]
1051a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach        ldrsh.w r4, [r5, r2]
1052a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach        ldrsh r6, [r0, r2, lsl #3]
1053a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach        ldrsh r8, [r8, r2, lsl #2]
1054a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach        ldrsh r7, [sp, r2, lsl #1]
1055a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach        ldrsh r7, [sp, r2, lsl #0]
1056a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach        ldrsh r5, [r8, #255]!
1057a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach        ldrsh r2, [r5, #4]!
1058a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach        ldrsh r1, [r4, #-4]!
1059a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach        ldrsh lr, [r3], #255
1060a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach        ldrsh r9, [r2], #4
1061a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach        ldrsh r3, [sp], #-4
1062a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach
1063a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach@ CHECK: ldrsh.w r1, [r8, r1]           @ encoding: [0x38,0xf9,0x01,0x10]
1064a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach@ CHECK: ldrsh.w r4, [r5, r2]           @ encoding: [0x35,0xf9,0x02,0x40]
1065a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach@ CHECK: ldrsh.w r6, [r0, r2, lsl #3]   @ encoding: [0x30,0xf9,0x32,0x60]
1066a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach@ CHECK: ldrsh.w r8, [r8, r2, lsl #2]   @ encoding: [0x38,0xf9,0x22,0x80]
1067a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach@ CHECK: ldrsh.w r7, [sp, r2, lsl #1]   @ encoding: [0x3d,0xf9,0x12,0x70]
1068a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach@ CHECK: ldrsh.w r7, [sp, r2]           @ encoding: [0x3d,0xf9,0x02,0x70]
1069a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach@ CHECK: ldrsh	r5, [r8, #255]!         @ encoding: [0x38,0xf9,0xff,0x5f]
1070a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach@ CHECK: ldrsh	r2, [r5, #4]!           @ encoding: [0x35,0xf9,0x04,0x2f]
1071a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach@ CHECK: ldrsh	r1, [r4, #-4]!          @ encoding: [0x34,0xf9,0x04,0x1d]
1072a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach@ CHECK: ldrsh	lr, [r3], #255          @ encoding: [0x33,0xf9,0xff,0xeb]
1073a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach@ CHECK: ldrsh	r9, [r2], #4            @ encoding: [0x32,0xf9,0x04,0x9b]
1074a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach@ CHECK: ldrsh	r3, [sp], #-4           @ encoding: [0x3d,0xf9,0x04,0x39]
1075a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach
1076a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach
1077a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach@------------------------------------------------------------------------------
1078a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach@ LDRSH(literal)
1079a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach@------------------------------------------------------------------------------
1080a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach        ldrsh r5, _bar
1081a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach
1082a581328ceb4c9db165d79a4dabd6b28db799d70fJim Grosbach@ CHECK: ldrsh.w r5, _bar               @ encoding: [0x3f'A',0xf9'A',A,0x50'A']
1083a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach@ CHECK:      @   fixup A - offset: 0, value: _bar, kind: fixup_t2_ldst_pcrel_12
108461268701931d747fa95e0be8a368101e7f97b83cOwen Anderson
108561268701931d747fa95e0be8a368101e7f97b83cOwen Anderson@ TEMPORARILY DISABLED:
108661268701931d747fa95e0be8a368101e7f97b83cOwen Anderson@        ldrsh.w r4, [pc, #1435]
108761268701931d747fa95e0be8a368101e7f97b83cOwen Anderson@      : ldrsh.w r4, [pc, #1435]               @ encoding: [0x3f,0xf9,0x9b,0x45]
1088a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach
1089a315a9909387cdf8ce36077d7aa91844caa2f19dJim Grosbach@------------------------------------------------------------------------------
109056806c29973a801a8311b5501c05a0a49651b42fJim Grosbach@ LDRSHT
109156806c29973a801a8311b5501c05a0a49651b42fJim Grosbach@------------------------------------------------------------------------------
109256806c29973a801a8311b5501c05a0a49651b42fJim Grosbach        ldrsht r1, [r2]
109356806c29973a801a8311b5501c05a0a49651b42fJim Grosbach        ldrsht r1, [r8, #0]
109456806c29973a801a8311b5501c05a0a49651b42fJim Grosbach        ldrsht r1, [r8, #3]
109556806c29973a801a8311b5501c05a0a49651b42fJim Grosbach        ldrsht r1, [r8, #255]
109656806c29973a801a8311b5501c05a0a49651b42fJim Grosbach
109756806c29973a801a8311b5501c05a0a49651b42fJim Grosbach@ CHECK: ldrsht	r1, [r2]                @ encoding: [0x32,0xf9,0x00,0x1e]
109856806c29973a801a8311b5501c05a0a49651b42fJim Grosbach@ CHECK: ldrsht	r1, [r8]                @ encoding: [0x38,0xf9,0x00,0x1e]
109956806c29973a801a8311b5501c05a0a49651b42fJim Grosbach@ CHECK: ldrsht	r1, [r8, #3]            @ encoding: [0x38,0xf9,0x03,0x1e]
110056806c29973a801a8311b5501c05a0a49651b42fJim Grosbach@ CHECK: ldrsht	r1, [r8, #255]          @ encoding: [0x38,0xf9,0xff,0x1e]
110156806c29973a801a8311b5501c05a0a49651b42fJim Grosbach
110256806c29973a801a8311b5501c05a0a49651b42fJim Grosbach
110356806c29973a801a8311b5501c05a0a49651b42fJim Grosbach@------------------------------------------------------------------------------
1104d4b72de3e2c9bd2397f37272c0904c53036e38d4Jim Grosbach@ LDRT
1105d4b72de3e2c9bd2397f37272c0904c53036e38d4Jim Grosbach@------------------------------------------------------------------------------
1106d4b72de3e2c9bd2397f37272c0904c53036e38d4Jim Grosbach        ldrt r1, [r2]
1107d4b72de3e2c9bd2397f37272c0904c53036e38d4Jim Grosbach        ldrt r2, [r6, #0]
1108d4b72de3e2c9bd2397f37272c0904c53036e38d4Jim Grosbach        ldrt r3, [r7, #3]
1109d4b72de3e2c9bd2397f37272c0904c53036e38d4Jim Grosbach        ldrt r4, [r9, #255]
1110d4b72de3e2c9bd2397f37272c0904c53036e38d4Jim Grosbach
1111d4b72de3e2c9bd2397f37272c0904c53036e38d4Jim Grosbach@ CHECK: ldrt	r1, [r2]                @ encoding: [0x52,0xf8,0x00,0x1e]
1112d4b72de3e2c9bd2397f37272c0904c53036e38d4Jim Grosbach@ CHECK: ldrt	r2, [r6]                @ encoding: [0x56,0xf8,0x00,0x2e]
1113d4b72de3e2c9bd2397f37272c0904c53036e38d4Jim Grosbach@ CHECK: ldrt	r3, [r7, #3]            @ encoding: [0x57,0xf8,0x03,0x3e]
1114d4b72de3e2c9bd2397f37272c0904c53036e38d4Jim Grosbach@ CHECK: ldrt	r4, [r9, #255]          @ encoding: [0x59,0xf8,0xff,0x4e]
1115d4b72de3e2c9bd2397f37272c0904c53036e38d4Jim Grosbach
1116d4b72de3e2c9bd2397f37272c0904c53036e38d4Jim Grosbach
1117d4b72de3e2c9bd2397f37272c0904c53036e38d4Jim Grosbach@------------------------------------------------------------------------------
111895102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach@ LSL (immediate)
111995102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach@------------------------------------------------------------------------------
112095102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach        lsl r2, r3, #12
112195102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach        lsls r8, r3, #31
112295102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach        lsls.w r2, r3, #1
112395102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach        lsl r2, r3, #4
112495102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach        lsls r2, r12, #15
112595102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach
112695102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach        lsl r3, #19
112795102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach        lsls r8, #2
112895102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach        lsls.w r7, #5
112995102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach        lsl.w r12, #21
113095102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach
113195102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach@ CHECK: lsl.w	r2, r3, #12             @ encoding: [0x4f,0xea,0x03,0x32]
113295102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach@ CHECK: lsls.w	r8, r3, #31             @ encoding: [0x5f,0xea,0xc3,0x78]
113395102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach@ CHECK: lsls.w	r2, r3, #1              @ encoding: [0x5f,0xea,0x43,0x02]
113495102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach@ CHECK: lsl.w	r2, r3, #4              @ encoding: [0x4f,0xea,0x03,0x12]
113595102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach@ CHECK: lsls.w	r2, r12, #15            @ encoding: [0x5f,0xea,0xcc,0x32]
113695102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach
113795102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach@ CHECK: lsl.w	r3, r3, #19             @ encoding: [0x4f,0xea,0xc3,0x43]
113895102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach@ CHECK: lsls.w	r8, r8, #2              @ encoding: [0x5f,0xea,0x88,0x08]
113995102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach@ CHECK: lsls.w	r7, r7, #5              @ encoding: [0x5f,0xea,0x47,0x17]
114095102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach@ CHECK: lsl.w	r12, r12, #21           @ encoding: [0x4f,0xea,0x4c,0x5c]
114195102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach
114295102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach
114395102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach@------------------------------------------------------------------------------
114495102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach@ LSL (register)
114595102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach@------------------------------------------------------------------------------
114695102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach        lsl r3, r4, r2
114795102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach        lsl.w r1, r2
114895102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach        lsls r3, r4, r8
114995102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach
115095102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach@ CHECK: lsl.w	r3, r4, r2              @ encoding: [0x04,0xfa,0x02,0xf3]
115195102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach@ CHECK: lsl.w	r1, r1, r2              @ encoding: [0x01,0xfa,0x02,0xf1]
115295102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach@ CHECK: lsls.w	r3, r4, r8              @ encoding: [0x14,0xfa,0x08,0xf3]
115395102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach
115495102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach
115595102265a96104512abbf0d8e316a1ef8473b994Jim Grosbach@------------------------------------------------------------------------------
115684d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach@ LSR (immediate)
115784d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach@------------------------------------------------------------------------------
115884d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach        lsr r2, r3, #12
115984d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach        lsrs r8, r3, #32
116084d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach        lsrs.w r2, r3, #1
116184d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach        lsr r2, r3, #4
116284d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach        lsrs r2, r12, #15
116384d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach
116484d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach        lsr r3, #19
116584d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach        lsrs r8, #2
116684d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach        lsrs.w r7, #5
116784d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach        lsr.w r12, #21
116884d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach
116984d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach@ CHECK: lsr.w	r2, r3, #12             @ encoding: [0x4f,0xea,0x13,0x32]
117084d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach@ CHECK: lsrs.w	r8, r3, #32             @ encoding: [0x5f,0xea,0x13,0x08]
117184d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach@ CHECK: lsrs.w	r2, r3, #1              @ encoding: [0x5f,0xea,0x53,0x02]
117284d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach@ CHECK: lsr.w	r2, r3, #4              @ encoding: [0x4f,0xea,0x13,0x12]
117384d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach@ CHECK: lsrs.w	r2, r12, #15            @ encoding: [0x5f,0xea,0xdc,0x32]
117484d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach
117584d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach@ CHECK: lsr.w	r3, r3, #19             @ encoding: [0x4f,0xea,0xd3,0x43]
117684d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach@ CHECK: lsrs.w	r8, r8, #2              @ encoding: [0x5f,0xea,0x98,0x08]
117784d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach@ CHECK: lsrs.w	r7, r7, #5              @ encoding: [0x5f,0xea,0x57,0x17]
117884d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach@ CHECK: lsr.w	r12, r12, #21           @ encoding: [0x4f,0xea,0x5c,0x5c]
117984d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach
118084d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach
118184d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach@------------------------------------------------------------------------------
118284d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach@ LSR (register)
118384d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach@------------------------------------------------------------------------------
118484d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach        lsr r3, r4, r2
118584d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach        lsr.w r1, r2
118684d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach        lsrs r3, r4, r8
118784d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach
118884d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach@ CHECK: lsr.w	r3, r4, r2              @ encoding: [0x24,0xfa,0x02,0xf3]
118984d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach@ CHECK: lsr.w	r1, r1, r2              @ encoding: [0x21,0xfa,0x02,0xf1]
119084d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach@ CHECK: lsrs.w	r3, r4, r8              @ encoding: [0x34,0xfa,0x08,0xf3]
119184d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach
119284d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach@------------------------------------------------------------------------------
119384d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach@ MCR/MCR2
119484d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach@------------------------------------------------------------------------------
119584d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach        mcr  p7, #1, r5, c1, c1, #4
119684d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach        mcr2  p7, #1, r5, c1, c1, #4
1197213d2e7dc31bef3ceeef0cefa703cb4ce52de51aJim Grosbach        mcr p14, #0, r4, c0, c5
1198213d2e7dc31bef3ceeef0cefa703cb4ce52de51aJim Grosbach        mcr2 p4, #2, r2, c1, c3
119984d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach
120084d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach@ CHECK: mcr	p7, #1, r5, c1, c1, #4  @ encoding: [0x21,0xee,0x91,0x57]
120184d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach@ CHECK: mcr2	p7, #1, r5, c1, c1, #4  @ encoding: [0x21,0xfe,0x91,0x57]
1202213d2e7dc31bef3ceeef0cefa703cb4ce52de51aJim Grosbach@ CHECK: mcr	p14, #0, r4, c0, c5, #0 @ encoding: [0x00,0xee,0x15,0x4e]
1203213d2e7dc31bef3ceeef0cefa703cb4ce52de51aJim Grosbach@ CHECK: mcr2	p4, #2, r2, c1, c3, #0  @ encoding: [0x41,0xfe,0x13,0x24]
120484d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach
120584d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach
120684d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach@------------------------------------------------------------------------------
120784d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach@ MCRR/MCRR2
120884d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach@------------------------------------------------------------------------------
120984d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach        mcrr  p7, #15, r5, r4, c1
121084d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach        mcrr2  p7, #15, r5, r4, c1
121184d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach
121284d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach@ CHECK: mcrr	p7, #15, r5, r4, c1     @ encoding: [0x44,0xec,0xf1,0x57]
121384d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach@ CHECK: mcrr2	p7, #15, r5, r4, c1     @ encoding: [0x44,0xfc,0xf1,0x57]
121484d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach
121584d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach
121684d043a8b38d43a16549ca7e7cc9b275b2fa3aeaJim Grosbach@------------------------------------------------------------------------------
1217468709e43dfff52f48af9ff411d461e22b6e2015Jim Grosbach@ MLA/MLS
1218468709e43dfff52f48af9ff411d461e22b6e2015Jim Grosbach@------------------------------------------------------------------------------
1219468709e43dfff52f48af9ff411d461e22b6e2015Jim Grosbach        mla  r1,r2,r3,r4
1220468709e43dfff52f48af9ff411d461e22b6e2015Jim Grosbach        mls  r1,r2,r3,r4
1221468709e43dfff52f48af9ff411d461e22b6e2015Jim Grosbach
1222468709e43dfff52f48af9ff411d461e22b6e2015Jim Grosbach@ CHECK: mla	r1, r2, r3, r4          @ encoding: [0x02,0xfb,0x03,0x41]
1223468709e43dfff52f48af9ff411d461e22b6e2015Jim Grosbach@ CHECK: mls	r1, r2, r3, r4          @ encoding: [0x02,0xfb,0x13,0x41]
1224468709e43dfff52f48af9ff411d461e22b6e2015Jim Grosbach
1225468709e43dfff52f48af9ff411d461e22b6e2015Jim Grosbach
1226468709e43dfff52f48af9ff411d461e22b6e2015Jim Grosbach@------------------------------------------------------------------------------
12271ad60c2adc9ed765a968747d0c548cda53bfd384Jim Grosbach@ MOV(immediate)
12281ad60c2adc9ed765a968747d0c548cda53bfd384Jim Grosbach@------------------------------------------------------------------------------
12291ad60c2adc9ed765a968747d0c548cda53bfd384Jim Grosbach        movs r1, #21
12301ad60c2adc9ed765a968747d0c548cda53bfd384Jim Grosbach        movs.w r1, #21
12311ad60c2adc9ed765a968747d0c548cda53bfd384Jim Grosbach        movs r8, #21
12321ad60c2adc9ed765a968747d0c548cda53bfd384Jim Grosbach        movw r0, #65535
12331ad60c2adc9ed765a968747d0c548cda53bfd384Jim Grosbach        movw r1, #43777
12341ad60c2adc9ed765a968747d0c548cda53bfd384Jim Grosbach        movw r1, #43792
12351ad60c2adc9ed765a968747d0c548cda53bfd384Jim Grosbach        mov.w r0, #0x3fc0000
12361ad60c2adc9ed765a968747d0c548cda53bfd384Jim Grosbach        mov r0, #0x3fc0000
12371ad60c2adc9ed765a968747d0c548cda53bfd384Jim Grosbach        movs.w r0, #0x3fc0000
1238c2d3164ab467bdfa8508b93177e69b99626cd8e2Jim Grosbach        itte eq
1239c2d3164ab467bdfa8508b93177e69b99626cd8e2Jim Grosbach        movseq r1, #12
1240c2d3164ab467bdfa8508b93177e69b99626cd8e2Jim Grosbach        moveq r1, #12
1241c2d3164ab467bdfa8508b93177e69b99626cd8e2Jim Grosbach        movne.w r1, #12
12428adf62034a874adacff158e8adc9438cb3e67c01Owen Anderson        mov.w r6, #450
1243c0164f86080bc9d7a41fd5eabd0d6556396f5b38Jim Grosbach        it lo
1244c0164f86080bc9d7a41fd5eabd0d6556396f5b38Jim Grosbach        movlo r1, #-1
12451ad60c2adc9ed765a968747d0c548cda53bfd384Jim Grosbach
124689a633708542de5847e807f98f86edfefc9fc019Jim Grosbach        @ alias for mvn
124789a633708542de5847e807f98f86edfefc9fc019Jim Grosbach	mov r3, #-3
124889a633708542de5847e807f98f86edfefc9fc019Jim Grosbach
124989a633708542de5847e807f98f86edfefc9fc019Jim Grosbach
12501ad60c2adc9ed765a968747d0c548cda53bfd384Jim Grosbach@ CHECK: movs	r1, #21                 @ encoding: [0x15,0x21]
12511ad60c2adc9ed765a968747d0c548cda53bfd384Jim Grosbach@ CHECK: movs.w	r1, #21                 @ encoding: [0x5f,0xf0,0x15,0x01]
12521ad60c2adc9ed765a968747d0c548cda53bfd384Jim Grosbach@ CHECK: movs.w	r8, #21                 @ encoding: [0x5f,0xf0,0x15,0x08]
12531ad60c2adc9ed765a968747d0c548cda53bfd384Jim Grosbach@ CHECK: movw	r0, #65535              @ encoding: [0x4f,0xf6,0xff,0x70]
12541ad60c2adc9ed765a968747d0c548cda53bfd384Jim Grosbach@ CHECK: movw	r1, #43777              @ encoding: [0x4a,0xf6,0x01,0x31]
12551ad60c2adc9ed765a968747d0c548cda53bfd384Jim Grosbach@ CHECK: movw	r1, #43792              @ encoding: [0x4a,0xf6,0x10,0x31]
12561ad60c2adc9ed765a968747d0c548cda53bfd384Jim Grosbach@ CHECK: mov.w	r0, #66846720           @ encoding: [0x4f,0xf0,0x7f,0x70]
12571ad60c2adc9ed765a968747d0c548cda53bfd384Jim Grosbach@ CHECK: mov.w	r0, #66846720           @ encoding: [0x4f,0xf0,0x7f,0x70]
12581ad60c2adc9ed765a968747d0c548cda53bfd384Jim Grosbach@ CHECK: movs.w	r0, #66846720           @ encoding: [0x5f,0xf0,0x7f,0x70]
1259c2d3164ab467bdfa8508b93177e69b99626cd8e2Jim Grosbach@ CHECK: itte	eq                      @ encoding: [0x06,0xbf]
1260c2d3164ab467bdfa8508b93177e69b99626cd8e2Jim Grosbach@ CHECK: movseq.w	r1, #12         @ encoding: [0x5f,0xf0,0x0c,0x01]
1261c2d3164ab467bdfa8508b93177e69b99626cd8e2Jim Grosbach@ CHECK: moveq	r1, #12                 @ encoding: [0x0c,0x21]
1262c2d3164ab467bdfa8508b93177e69b99626cd8e2Jim Grosbach@ CHECK: movne.w r1, #12                @ encoding: [0x4f,0xf0,0x0c,0x01]
12638adf62034a874adacff158e8adc9438cb3e67c01Owen Anderson@ CHECK: mov.w	r6, #450                @ encoding: [0x4f,0xf4,0xe1,0x76]
1264c0164f86080bc9d7a41fd5eabd0d6556396f5b38Jim Grosbach@ CHECK: it	lo                      @ encoding: [0x38,0xbf]
1265c0164f86080bc9d7a41fd5eabd0d6556396f5b38Jim Grosbach@ CHECK: movlo.w	r1, #-1         @ encoding: [0x4f,0xf0,0xff,0x31]
126689a633708542de5847e807f98f86edfefc9fc019Jim Grosbach@ CHECK: mvn	r3, #2                  @ encoding: [0x6f,0xf0,0x02,0x03]
126789a633708542de5847e807f98f86edfefc9fc019Jim Grosbach
1268863d2af9477e331955a9bee8be1969ce658b59b5Jim Grosbach@------------------------------------------------------------------------------
1269863d2af9477e331955a9bee8be1969ce658b59b5Jim Grosbach@ MOV(shifted register)
1270863d2af9477e331955a9bee8be1969ce658b59b5Jim Grosbach@------------------------------------------------------------------------------
1271863d2af9477e331955a9bee8be1969ce658b59b5Jim Grosbach        mov r6, r2, lsl #16
1272863d2af9477e331955a9bee8be1969ce658b59b5Jim Grosbach        mov r6, r2, lsr #16
1273863d2af9477e331955a9bee8be1969ce658b59b5Jim Grosbach        movs r6, r2, asr #32
1274863d2af9477e331955a9bee8be1969ce658b59b5Jim Grosbach        movs r6, r2, ror #5
12752cc5cda464e7c936215281934193658cb799c603Jim Grosbach        movs r4, r4, lsl r5
12762cc5cda464e7c936215281934193658cb799c603Jim Grosbach        movs r4, r4, lsr r5
12772cc5cda464e7c936215281934193658cb799c603Jim Grosbach        movs r4, r4, asr r5
12782cc5cda464e7c936215281934193658cb799c603Jim Grosbach        movs r4, r4, ror r5
12792cc5cda464e7c936215281934193658cb799c603Jim Grosbach        mov r4, r4, lsl r5
12802cc5cda464e7c936215281934193658cb799c603Jim Grosbach        movs r4, r4, ror r8
12812cc5cda464e7c936215281934193658cb799c603Jim Grosbach        movs r4, r5, lsr r6
12822cc5cda464e7c936215281934193658cb799c603Jim Grosbach        itttt eq
12832cc5cda464e7c936215281934193658cb799c603Jim Grosbach        moveq r4, r4, lsl r5
12842cc5cda464e7c936215281934193658cb799c603Jim Grosbach        moveq r4, r4, lsr r5
12852cc5cda464e7c936215281934193658cb799c603Jim Grosbach        moveq r4, r4, asr r5
12862cc5cda464e7c936215281934193658cb799c603Jim Grosbach        moveq r4, r4, ror r5
1287520dc78d92a47af5e644b09f401d278cb1d5d196Jim Grosbach        mov r4, r4, rrx
1288863d2af9477e331955a9bee8be1969ce658b59b5Jim Grosbach
1289863d2af9477e331955a9bee8be1969ce658b59b5Jim Grosbach@ CHECK: lsl.w	r6, r2, #16             @ encoding: [0x4f,0xea,0x02,0x46]
1290863d2af9477e331955a9bee8be1969ce658b59b5Jim Grosbach@ CHECK: lsr.w	r6, r2, #16             @ encoding: [0x4f,0xea,0x12,0x46]
1291863d2af9477e331955a9bee8be1969ce658b59b5Jim Grosbach@ CHECK: asrs	r6, r2, #32             @ encoding: [0x16,0x10]
1292863d2af9477e331955a9bee8be1969ce658b59b5Jim Grosbach@ CHECK: rors.w	r6, r2, #5              @ encoding: [0x5f,0xea,0x72,0x16]
12932cc5cda464e7c936215281934193658cb799c603Jim Grosbach@ CHECK: lsls	r4, r5                  @ encoding: [0xac,0x40]
12942cc5cda464e7c936215281934193658cb799c603Jim Grosbach@ CHECK: lsrs	r4, r5                  @ encoding: [0xec,0x40]
12952cc5cda464e7c936215281934193658cb799c603Jim Grosbach@ CHECK: asrs	r4, r5                  @ encoding: [0x2c,0x41]
12962cc5cda464e7c936215281934193658cb799c603Jim Grosbach@ CHECK: rors	r4, r5                  @ encoding: [0xec,0x41]
12972cc5cda464e7c936215281934193658cb799c603Jim Grosbach@ CHECK: lsl.w	r4, r4, r5              @ encoding: [0x04,0xfa,0x05,0xf4]
12982cc5cda464e7c936215281934193658cb799c603Jim Grosbach@ CHECK: rors.w	r4, r4, r8              @ encoding: [0x74,0xfa,0x08,0xf4]
12992cc5cda464e7c936215281934193658cb799c603Jim Grosbach@ CHECK: lsrs.w	r4, r5, r6              @ encoding: [0x35,0xfa,0x06,0xf4]
13002cc5cda464e7c936215281934193658cb799c603Jim Grosbach@ CHECK: itttt	eq                      @ encoding: [0x01,0xbf]
13012cc5cda464e7c936215281934193658cb799c603Jim Grosbach@ CHECK: lsleq	r4, r5                  @ encoding: [0xac,0x40]
13022cc5cda464e7c936215281934193658cb799c603Jim Grosbach@ CHECK: lsreq	r4, r5                  @ encoding: [0xec,0x40]
13032cc5cda464e7c936215281934193658cb799c603Jim Grosbach@ CHECK: asreq	r4, r5                  @ encoding: [0x2c,0x41]
13042cc5cda464e7c936215281934193658cb799c603Jim Grosbach@ CHECK: roreq	r4, r5                  @ encoding: [0xec,0x41]
1305520dc78d92a47af5e644b09f401d278cb1d5d196Jim Grosbach@ CHECK: rrx	r4, r4                  @ encoding: [0x4f,0xea,0x34,0x04]
130689a633708542de5847e807f98f86edfefc9fc019Jim Grosbach
13071ad60c2adc9ed765a968747d0c548cda53bfd384Jim Grosbach
130895be01a56905d15f42ca47b793c1af8a5638c89eJim Grosbach@------------------------------------------------------------------------------
130995be01a56905d15f42ca47b793c1af8a5638c89eJim Grosbach@ MOVT
131095be01a56905d15f42ca47b793c1af8a5638c89eJim Grosbach@------------------------------------------------------------------------------
131195be01a56905d15f42ca47b793c1af8a5638c89eJim Grosbach        movt r3, #7
131295be01a56905d15f42ca47b793c1af8a5638c89eJim Grosbach        movt r6, #0xffff
131395be01a56905d15f42ca47b793c1af8a5638c89eJim Grosbach        it eq
131495be01a56905d15f42ca47b793c1af8a5638c89eJim Grosbach        movteq r4, #0xff0
131595be01a56905d15f42ca47b793c1af8a5638c89eJim Grosbach
131695be01a56905d15f42ca47b793c1af8a5638c89eJim Grosbach@ CHECK: movt	r3, #7                  @ encoding: [0xc0,0xf2,0x07,0x03]
131795be01a56905d15f42ca47b793c1af8a5638c89eJim Grosbach@ CHECK: movt	r6, #65535              @ encoding: [0xcf,0xf6,0xff,0x76]
131895be01a56905d15f42ca47b793c1af8a5638c89eJim Grosbach@ CHECK: it	eq                      @ encoding: [0x08,0xbf]
131995be01a56905d15f42ca47b793c1af8a5638c89eJim Grosbach@ CHECK: movteq	r4, #4080               @ encoding: [0xc0,0xf6,0xf0,0x74]
132095be01a56905d15f42ca47b793c1af8a5638c89eJim Grosbach
132197f50f3870fabfc7358543699fe608c59c61c2e6Jim Grosbach@------------------------------------------------------------------------------
132297f50f3870fabfc7358543699fe608c59c61c2e6Jim Grosbach@ MRC/MRC2
132397f50f3870fabfc7358543699fe608c59c61c2e6Jim Grosbach@------------------------------------------------------------------------------
132497f50f3870fabfc7358543699fe608c59c61c2e6Jim Grosbach        mrc  p14, #0, r1, c1, c2, #4
132597f50f3870fabfc7358543699fe608c59c61c2e6Jim Grosbach        mrc2  p14, #0, r1, c1, c2, #4
1326213d2e7dc31bef3ceeef0cefa703cb4ce52de51aJim Grosbach        mrc p11, #1, r1, c2, c2
1327213d2e7dc31bef3ceeef0cefa703cb4ce52de51aJim Grosbach        mrc2 p12, #3, r3, c3, c4
132897f50f3870fabfc7358543699fe608c59c61c2e6Jim Grosbach
132997f50f3870fabfc7358543699fe608c59c61c2e6Jim Grosbach@ CHECK: mrc	p14, #0, r1, c1, c2, #4 @ encoding: [0x11,0xee,0x92,0x1e]
133097f50f3870fabfc7358543699fe608c59c61c2e6Jim Grosbach@ CHECK: mrc2	p14, #0, r1, c1, c2, #4 @ encoding: [0x11,0xfe,0x92,0x1e]
1331213d2e7dc31bef3ceeef0cefa703cb4ce52de51aJim Grosbach@ CHECK: mrc	p11, #1, r1, c2, c2, #0 @ encoding: [0x32,0xee,0x12,0x1b]
1332213d2e7dc31bef3ceeef0cefa703cb4ce52de51aJim Grosbach@ CHECK: mrc2	p12, #3, r3, c3, c4, #0 @ encoding: [0x73,0xfe,0x14,0x3c]
133397f50f3870fabfc7358543699fe608c59c61c2e6Jim Grosbach
133497f50f3870fabfc7358543699fe608c59c61c2e6Jim Grosbach
133597f50f3870fabfc7358543699fe608c59c61c2e6Jim Grosbach@------------------------------------------------------------------------------
133697f50f3870fabfc7358543699fe608c59c61c2e6Jim Grosbach@ MRRC/MRRC2
133797f50f3870fabfc7358543699fe608c59c61c2e6Jim Grosbach@------------------------------------------------------------------------------
133897f50f3870fabfc7358543699fe608c59c61c2e6Jim Grosbach        mrrc  p7, #1, r5, r4, c1
133997f50f3870fabfc7358543699fe608c59c61c2e6Jim Grosbach        mrrc2  p7, #1, r5, r4, c1
134097f50f3870fabfc7358543699fe608c59c61c2e6Jim Grosbach
134197f50f3870fabfc7358543699fe608c59c61c2e6Jim Grosbach@ CHECK: mrrc	p7, #1, r5, r4, c1      @ encoding: [0x54,0xec,0x11,0x57]
134297f50f3870fabfc7358543699fe608c59c61c2e6Jim Grosbach@ CHECK: mrrc2	p7, #1, r5, r4, c1      @ encoding: [0x54,0xfc,0x11,0x57]
134397f50f3870fabfc7358543699fe608c59c61c2e6Jim Grosbach
13441ad60c2adc9ed765a968747d0c548cda53bfd384Jim Grosbach
13451ad60c2adc9ed765a968747d0c548cda53bfd384Jim Grosbach@------------------------------------------------------------------------------
1346bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach@ MRS
1347bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach@------------------------------------------------------------------------------
1348bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach        mrs  r8, apsr
1349bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach        mrs  r8, cpsr
1350bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach        mrs  r8, spsr
1351bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach
1352bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach@ CHECK: mrs	r8, apsr                @ encoding: [0xef,0xf3,0x00,0x88]
1353bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach@ CHECK: mrs	r8, apsr                @ encoding: [0xef,0xf3,0x00,0x88]
1354bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach@ CHECK: mrs	r8, spsr                @ encoding: [0xff,0xf3,0x00,0x88]
1355bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach
1356bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach
1357bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach@------------------------------------------------------------------------------
1358bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach@ MSR
1359bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach@------------------------------------------------------------------------------
1360bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach        msr  apsr, r1
1361bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach        msr  apsr_g, r2
1362bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach        msr  apsr_nzcvq, r3
1363bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach        msr  APSR_nzcvq, r4
1364bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach        msr  apsr_nzcvqg, r5
1365bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach        msr  cpsr_fc, r6
1366bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach        msr  cpsr_c, r7
1367bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach        msr  cpsr_x, r8
1368bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach        msr  cpsr_fc, r9
1369bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach        msr  cpsr_all, r11
1370bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach        msr  cpsr_fsx, r12
1371bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach        msr  spsr_fc, r0
1372bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach        msr  SPSR_fsxc, r5
1373bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach        msr  cpsr_fsxc, r8
1374b657a90929867716ca1c7c12d442bb5d32281bd4Jim Grosbach        msr  cpsr, r3
1375bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach
1376bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach@ CHECK: msr	APSR_nzcvq, r1          @ encoding: [0x81,0xf3,0x00,0x88]
1377bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach@ CHECK: msr	APSR_g, r2              @ encoding: [0x82,0xf3,0x00,0x84]
1378bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach@ CHECK: msr	APSR_nzcvq, r3          @ encoding: [0x83,0xf3,0x00,0x88]
1379bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach@ CHECK: msr	APSR_nzcvq, r4          @ encoding: [0x84,0xf3,0x00,0x88]
1380bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach@ CHECK: msr	APSR_nzcvqg, r5         @ encoding: [0x85,0xf3,0x00,0x8c]
1381bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach@ CHECK: msr	CPSR_fc, r6             @ encoding: [0x86,0xf3,0x00,0x89]
1382bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach@ CHECK: msr	CPSR_c, r7              @ encoding: [0x87,0xf3,0x00,0x81]
1383bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach@ CHECK: msr	CPSR_x, r8              @ encoding: [0x88,0xf3,0x00,0x82]
1384bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach@ CHECK: msr	CPSR_fc, r9             @ encoding: [0x89,0xf3,0x00,0x89]
1385bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach@ CHECK: msr	CPSR_fc, r11            @ encoding: [0x8b,0xf3,0x00,0x89]
1386bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach@ CHECK: msr	CPSR_fsx, r12           @ encoding: [0x8c,0xf3,0x00,0x8e]
1387bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach@ CHECK: msr	SPSR_fc, r0             @ encoding: [0x90,0xf3,0x00,0x89]
1388bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach@ CHECK: msr	SPSR_fsxc, r5           @ encoding: [0x95,0xf3,0x00,0x8f]
1389bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach@ CHECK: msr	CPSR_fsxc, r8           @ encoding: [0x88,0xf3,0x00,0x8f]
1390b657a90929867716ca1c7c12d442bb5d32281bd4Jim Grosbach@ CHECK: msr	CPSR_fc, r3             @ encoding: [0x83,0xf3,0x00,0x89]
1391bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach
1392bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach
1393bf841cf3360558d2939c9f1a244a7a7296f846dfJim Grosbach@------------------------------------------------------------------------------
139464944f48a1164c02c15ca423a53919682a89074cJim Grosbach@ MUL
139564944f48a1164c02c15ca423a53919682a89074cJim Grosbach@------------------------------------------------------------------------------
139664944f48a1164c02c15ca423a53919682a89074cJim Grosbach        muls r3, r4, r3
139764944f48a1164c02c15ca423a53919682a89074cJim Grosbach        mul r3, r4, r3
139864944f48a1164c02c15ca423a53919682a89074cJim Grosbach        mul r3, r4, r6
139964944f48a1164c02c15ca423a53919682a89074cJim Grosbach        it eq
140064944f48a1164c02c15ca423a53919682a89074cJim Grosbach        muleq r3, r4, r5
14011de0bd194540f8bab399fb39c4ba615a7b2381d3Jim Grosbach        it le
14021de0bd194540f8bab399fb39c4ba615a7b2381d3Jim Grosbach        mulle r4, r4, r8
1403cf9814ddd277dfcbb4ec5727e2cb510b8a451e04Jim Grosbach        mul r5, r6
140464944f48a1164c02c15ca423a53919682a89074cJim Grosbach
140564944f48a1164c02c15ca423a53919682a89074cJim Grosbach@ CHECK: muls	r3, r4, r3              @ encoding: [0x63,0x43]
140664944f48a1164c02c15ca423a53919682a89074cJim Grosbach@ CHECK: mul	r3, r4, r3              @ encoding: [0x04,0xfb,0x03,0xf3]
140764944f48a1164c02c15ca423a53919682a89074cJim Grosbach@ CHECK: mul	r3, r4, r6              @ encoding: [0x04,0xfb,0x06,0xf3]
140864944f48a1164c02c15ca423a53919682a89074cJim Grosbach@ CHECK: it	eq                      @ encoding: [0x08,0xbf]
140964944f48a1164c02c15ca423a53919682a89074cJim Grosbach@ CHECK: muleq	r3, r4, r5              @ encoding: [0x04,0xfb,0x05,0xf3]
14101de0bd194540f8bab399fb39c4ba615a7b2381d3Jim Grosbach@ CHECK: it	le                      @ encoding: [0xd8,0xbf]
14111de0bd194540f8bab399fb39c4ba615a7b2381d3Jim Grosbach@ CHECK: mulle	r4, r4, r8              @ encoding: [0x04,0xfb,0x08,0xf4]
1412cf9814ddd277dfcbb4ec5727e2cb510b8a451e04Jim Grosbach@ CHECK: mul	r5, r6, r5              @ encoding: [0x06,0xfb,0x05,0xf5]
141364944f48a1164c02c15ca423a53919682a89074cJim Grosbach
1414d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach
1415d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach@------------------------------------------------------------------------------
1416d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach@ MVN(immediate)
1417d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach@------------------------------------------------------------------------------
1418d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach        mvns r8, #21
1419d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach        mvn r0, #0x3fc0000
1420d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach        mvns r0, #0x3fc0000
1421d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach        itte eq
1422d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach        mvnseq r1, #12
1423036a67d670413f8116415b87457f22d256f314aeJim Grosbach        mvneq.w r1, #12
1424d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach        mvnne r1, #12
1425d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach
1426d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach@ CHECK: mvns	r8, #21                 @ encoding: [0x7f,0xf0,0x15,0x08]
1427d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach@ CHECK: mvn	r0, #66846720           @ encoding: [0x6f,0xf0,0x7f,0x70]
1428d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach@ CHECK: mvns	r0, #66846720           @ encoding: [0x7f,0xf0,0x7f,0x70]
1429d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach@ CHECK: itte	eq                      @ encoding: [0x06,0xbf]
1430d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach@ CHECK: mvnseq	r1, #12                 @ encoding: [0x7f,0xf0,0x0c,0x01]
1431d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach@ CHECK: mvneq	r1, #12                 @ encoding: [0x6f,0xf0,0x0c,0x01]
1432d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach@ CHECK: mvnne	r1, #12                 @ encoding: [0x6f,0xf0,0x0c,0x01]
1433d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach
1434d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach
1435d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach@------------------------------------------------------------------------------
1436d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach@ MVN(register)
1437d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach@------------------------------------------------------------------------------
1438d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach        mvn r2, r3
1439d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach        mvns r2, r3
1440d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach        mvn r5, r6, lsl #19
1441d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach        mvn r5, r6, lsr #9
1442036a67d670413f8116415b87457f22d256f314aeJim Grosbach        mvn.w r5, r6, asr #4
1443d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach        mvn r5, r6, ror #6
1444d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach        mvn r5, r6, rrx
1445d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach        it eq
1446d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach        mvneq r2, r3
1447d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach
1448d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach@ CHECK: mvn.w	r2, r3                  @ encoding: [0x6f,0xea,0x03,0x02]
1449d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach@ CHECK: mvns	r2, r3                  @ encoding: [0xda,0x43]
1450d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach@ CHECK: mvn.w	r5, r6, lsl #19         @ encoding: [0x6f,0xea,0xc6,0x45]
1451d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach@ CHECK: mvn.w	r5, r6, lsr #9          @ encoding: [0x6f,0xea,0x56,0x25]
1452d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach@ CHECK: mvn.w	r5, r6, asr #4          @ encoding: [0x6f,0xea,0x26,0x15]
1453d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach@ CHECK: mvn.w	r5, r6, ror #6          @ encoding: [0x6f,0xea,0xb6,0x15]
1454d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach@ CHECK: mvn.w	r5, r6, rrx             @ encoding: [0x6f,0xea,0x36,0x05]
1455d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach@ CHECK: it	eq                      @ encoding: [0x08,0xbf]
1456d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach@ CHECK: mvneq	r2, r3                  @ encoding: [0xda,0x43]
1457d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach
14585c5eca3534b616fbdb8d2c7c56ab2182f4a9ef05Jim Grosbach@------------------------------------------------------------------------------
1459e91e7bcadc445381adef5c5154e8e2cba074505fJim Grosbach@ NEG
1460e91e7bcadc445381adef5c5154e8e2cba074505fJim Grosbach@------------------------------------------------------------------------------
1461e91e7bcadc445381adef5c5154e8e2cba074505fJim Grosbach        neg r5, r2
1462e91e7bcadc445381adef5c5154e8e2cba074505fJim Grosbach        neg r5, r8
1463e91e7bcadc445381adef5c5154e8e2cba074505fJim Grosbach
1464e91e7bcadc445381adef5c5154e8e2cba074505fJim Grosbach@ CHECK: rsb.w	r5, r2, #0              @ encoding: [0xc2,0xf1,0x00,0x05]
1465e91e7bcadc445381adef5c5154e8e2cba074505fJim Grosbach@ CHECK: rsb.w	r5, r8, #0              @ encoding: [0xc8,0xf1,0x00,0x05]
1466e91e7bcadc445381adef5c5154e8e2cba074505fJim Grosbach
1467e91e7bcadc445381adef5c5154e8e2cba074505fJim Grosbach
1468e91e7bcadc445381adef5c5154e8e2cba074505fJim Grosbach@------------------------------------------------------------------------------
14695c5eca3534b616fbdb8d2c7c56ab2182f4a9ef05Jim Grosbach@ NOP
14705c5eca3534b616fbdb8d2c7c56ab2182f4a9ef05Jim Grosbach@------------------------------------------------------------------------------
14715c5eca3534b616fbdb8d2c7c56ab2182f4a9ef05Jim Grosbach        nop.w
14725c5eca3534b616fbdb8d2c7c56ab2182f4a9ef05Jim Grosbach
14735c5eca3534b616fbdb8d2c7c56ab2182f4a9ef05Jim Grosbach@ CHECK: nop.w                          @ encoding: [0xaf,0xf3,0x00,0x80]
14745c5eca3534b616fbdb8d2c7c56ab2182f4a9ef05Jim Grosbach
1475d32872f9ca446fc48084082fcb88255a55405cc2Jim Grosbach
147664944f48a1164c02c15ca423a53919682a89074cJim Grosbach@------------------------------------------------------------------------------
1477b72504b4fad51941523b5e6db3edba58a2ebbd90Jim Grosbach@ ORN
1478b72504b4fad51941523b5e6db3edba58a2ebbd90Jim Grosbach@------------------------------------------------------------------------------
1479b72504b4fad51941523b5e6db3edba58a2ebbd90Jim Grosbach        orn r4, r5, #0xf000
1480b72504b4fad51941523b5e6db3edba58a2ebbd90Jim Grosbach        orn r4, r5, r6
1481b72504b4fad51941523b5e6db3edba58a2ebbd90Jim Grosbach        orns r4, r5, r6
1482b72504b4fad51941523b5e6db3edba58a2ebbd90Jim Grosbach        orn r4, r5, r6, lsl #5
1483b72504b4fad51941523b5e6db3edba58a2ebbd90Jim Grosbach        orns r4, r5, r6, lsr #5
1484b72504b4fad51941523b5e6db3edba58a2ebbd90Jim Grosbach        orn r4, r5, r6, lsr #5
1485b72504b4fad51941523b5e6db3edba58a2ebbd90Jim Grosbach        orns r4, r5, r6, asr #5
1486b72504b4fad51941523b5e6db3edba58a2ebbd90Jim Grosbach        orn r4, r5, r6, ror #5
1487b72504b4fad51941523b5e6db3edba58a2ebbd90Jim Grosbach
1488b72504b4fad51941523b5e6db3edba58a2ebbd90Jim Grosbach@ CHECK: orn	r4, r5, #61440          @ encoding: [0x65,0xf4,0x70,0x44]
1489b72504b4fad51941523b5e6db3edba58a2ebbd90Jim Grosbach@ CHECK: orn	r4, r5, r6              @ encoding: [0x65,0xea,0x06,0x04]
1490b72504b4fad51941523b5e6db3edba58a2ebbd90Jim Grosbach@ CHECK: orns	r4, r5, r6              @ encoding: [0x75,0xea,0x06,0x04]
1491b72504b4fad51941523b5e6db3edba58a2ebbd90Jim Grosbach@ CHECK: orn	r4, r5, r6, lsl #5      @ encoding: [0x65,0xea,0x46,0x14]
1492b72504b4fad51941523b5e6db3edba58a2ebbd90Jim Grosbach@ CHECK: orns	r4, r5, r6, lsr #5      @ encoding: [0x75,0xea,0x56,0x14]
1493b72504b4fad51941523b5e6db3edba58a2ebbd90Jim Grosbach@ CHECK: orn	r4, r5, r6, lsr #5      @ encoding: [0x65,0xea,0x56,0x14]
1494b72504b4fad51941523b5e6db3edba58a2ebbd90Jim Grosbach@ CHECK: orns	r4, r5, r6, asr #5      @ encoding: [0x75,0xea,0x66,0x14]
1495b72504b4fad51941523b5e6db3edba58a2ebbd90Jim Grosbach@ CHECK: orn	r4, r5, r6, ror #5      @ encoding: [0x65,0xea,0x76,0x14]
1496b72504b4fad51941523b5e6db3edba58a2ebbd90Jim Grosbach
1497b72504b4fad51941523b5e6db3edba58a2ebbd90Jim Grosbach
1498b72504b4fad51941523b5e6db3edba58a2ebbd90Jim Grosbach@------------------------------------------------------------------------------
14990b3ed6de80734c3ac15e1b1f0b5306a1f61f88ceJim Grosbach@ ORR
15000b3ed6de80734c3ac15e1b1f0b5306a1f61f88ceJim Grosbach@------------------------------------------------------------------------------
15010b3ed6de80734c3ac15e1b1f0b5306a1f61f88ceJim Grosbach        orr r4, r5, #0xf000
15020b3ed6de80734c3ac15e1b1f0b5306a1f61f88ceJim Grosbach        orr r4, r5, r6
15030b3ed6de80734c3ac15e1b1f0b5306a1f61f88ceJim Grosbach        orr r4, r5, r6, lsl #5
15040b3ed6de80734c3ac15e1b1f0b5306a1f61f88ceJim Grosbach        orrs r4, r5, r6, lsr #5
15050b3ed6de80734c3ac15e1b1f0b5306a1f61f88ceJim Grosbach        orr r4, r5, r6, lsr #5
15060b3ed6de80734c3ac15e1b1f0b5306a1f61f88ceJim Grosbach        orrs r4, r5, r6, asr #5
15070b3ed6de80734c3ac15e1b1f0b5306a1f61f88ceJim Grosbach        orr r4, r5, r6, ror #5
15080b3ed6de80734c3ac15e1b1f0b5306a1f61f88ceJim Grosbach
15090b3ed6de80734c3ac15e1b1f0b5306a1f61f88ceJim Grosbach@ CHECK: orr	r4, r5, #61440          @ encoding: [0x45,0xf4,0x70,0x44]
15100b3ed6de80734c3ac15e1b1f0b5306a1f61f88ceJim Grosbach@ CHECK: orr.w	r4, r5, r6              @ encoding: [0x45,0xea,0x06,0x04]
15110b3ed6de80734c3ac15e1b1f0b5306a1f61f88ceJim Grosbach@ CHECK: orr.w	r4, r5, r6, lsl #5      @ encoding: [0x45,0xea,0x46,0x14]
15120b3ed6de80734c3ac15e1b1f0b5306a1f61f88ceJim Grosbach@ CHECK: orrs.w	r4, r5, r6, lsr #5      @ encoding: [0x55,0xea,0x56,0x14]
15130b3ed6de80734c3ac15e1b1f0b5306a1f61f88ceJim Grosbach@ CHECK: orr.w	r4, r5, r6, lsr #5      @ encoding: [0x45,0xea,0x56,0x14]
15140b3ed6de80734c3ac15e1b1f0b5306a1f61f88ceJim Grosbach@ CHECK: orrs.w	r4, r5, r6, asr #5      @ encoding: [0x55,0xea,0x66,0x14]
15150b3ed6de80734c3ac15e1b1f0b5306a1f61f88ceJim Grosbach@ CHECK: orr.w	r4, r5, r6, ror #5      @ encoding: [0x45,0xea,0x76,0x14]
15160b3ed6de80734c3ac15e1b1f0b5306a1f61f88ceJim Grosbach
15170b3ed6de80734c3ac15e1b1f0b5306a1f61f88ceJim Grosbach
15180b3ed6de80734c3ac15e1b1f0b5306a1f61f88ceJim Grosbach@------------------------------------------------------------------------------
15190b69247b10ddbce5f0c476c3471918ffc6091ac5Jim Grosbach@ PKH
15200b69247b10ddbce5f0c476c3471918ffc6091ac5Jim Grosbach@------------------------------------------------------------------------------
15210b69247b10ddbce5f0c476c3471918ffc6091ac5Jim Grosbach        pkhbt r2, r2, r3
15220b69247b10ddbce5f0c476c3471918ffc6091ac5Jim Grosbach        pkhbt r2, r2, r3, lsl #31
15230b69247b10ddbce5f0c476c3471918ffc6091ac5Jim Grosbach        pkhbt r2, r2, r3, lsl #0
15240b69247b10ddbce5f0c476c3471918ffc6091ac5Jim Grosbach        pkhbt r2, r2, r3, lsl #15
15250b69247b10ddbce5f0c476c3471918ffc6091ac5Jim Grosbach
15260b69247b10ddbce5f0c476c3471918ffc6091ac5Jim Grosbach        pkhtb r2, r2, r3
15270b69247b10ddbce5f0c476c3471918ffc6091ac5Jim Grosbach        pkhtb r2, r2, r3, asr #31
15280b69247b10ddbce5f0c476c3471918ffc6091ac5Jim Grosbach        pkhtb r2, r2, r3, asr #15
15290b69247b10ddbce5f0c476c3471918ffc6091ac5Jim Grosbach
15300b69247b10ddbce5f0c476c3471918ffc6091ac5Jim Grosbach@ CHECK: pkhbt	r2, r2, r3              @ encoding: [0xc2,0xea,0x03,0x02]
15310b69247b10ddbce5f0c476c3471918ffc6091ac5Jim Grosbach@ CHECK: pkhbt	r2, r2, r3, lsl #31     @ encoding: [0xc2,0xea,0xc3,0x72]
15320b69247b10ddbce5f0c476c3471918ffc6091ac5Jim Grosbach@ CHECK: pkhbt	r2, r2, r3              @ encoding: [0xc2,0xea,0x03,0x02]
15330b69247b10ddbce5f0c476c3471918ffc6091ac5Jim Grosbach@ CHECK: pkhbt	r2, r2, r3, lsl #15     @ encoding: [0xc2,0xea,0xc3,0x32]
15340b69247b10ddbce5f0c476c3471918ffc6091ac5Jim Grosbach
15350b69247b10ddbce5f0c476c3471918ffc6091ac5Jim Grosbach@ CHECK: pkhbt	r2, r2, r3              @ encoding: [0xc2,0xea,0x03,0x02]
15360b69247b10ddbce5f0c476c3471918ffc6091ac5Jim Grosbach@ CHECK: pkhtb	r2, r2, r3, asr #31     @ encoding: [0xc2,0xea,0xe3,0x72]
15370b69247b10ddbce5f0c476c3471918ffc6091ac5Jim Grosbach@ CHECK: pkhtb	r2, r2, r3, asr #15     @ encoding: [0xc2,0xea,0xe3,0x32]
15380b69247b10ddbce5f0c476c3471918ffc6091ac5Jim Grosbach
15390b69247b10ddbce5f0c476c3471918ffc6091ac5Jim Grosbach
15400b69247b10ddbce5f0c476c3471918ffc6091ac5Jim Grosbach@------------------------------------------------------------------------------
1541f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach@ PLD(immediate)
1542f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach@------------------------------------------------------------------------------
1543f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach        pld [r5, #-4]
1544f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach        pld [r6, #32]
1545f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach        pld [r6, #33]
1546f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach        pld [r6, #257]
1547f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach        pld [r7, #257]
1548df33e0d05e6b7dc3d65cdb96e52fb6fb6b07f876Jim Grosbach        pld [r1, #0]
1549df33e0d05e6b7dc3d65cdb96e52fb6fb6b07f876Jim Grosbach        pld [r1, #-0]
1550f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach
1551f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach@ CHECK: pld	[r5, #-4]               @ encoding: [0x15,0xf8,0x04,0xfc]
1552f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach@ CHECK: pld	[r6, #32]               @ encoding: [0x96,0xf8,0x20,0xf0]
1553f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach@ CHECK: pld	[r6, #33]               @ encoding: [0x96,0xf8,0x21,0xf0]
1554f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach@ CHECK: pld	[r6, #257]              @ encoding: [0x96,0xf8,0x01,0xf1]
1555f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach@ CHECK: pld	[r7, #257]              @ encoding: [0x97,0xf8,0x01,0xf1]
1556df33e0d05e6b7dc3d65cdb96e52fb6fb6b07f876Jim Grosbach@ CHECK: pld	[r1]                    @ encoding: [0x91,0xf8,0x00,0xf0]
1557df33e0d05e6b7dc3d65cdb96e52fb6fb6b07f876Jim Grosbach@ CHECK: pld	[r1, #-0]               @ encoding: [0x11,0xf8,0x00,0xfc]
1558f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach
1559f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach
1560f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach@------------------------------------------------------------------------------
1561f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach@ PLD(literal)
1562f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach@------------------------------------------------------------------------------
1563a581328ceb4c9db165d79a4dabd6b28db799d70fJim Grosbach@        pld  _foo
1564f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach
1565a581328ceb4c9db165d79a4dabd6b28db799d70fJim Grosbach@ FIXME: pld	_foo                    @ encoding: [0x9f'A',0xf8'A',A,0xf0'A']
1566f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach            @   fixup A - offset: 0, value: _foo, kind: fixup_t2_ldst_pcrel_12
1567f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach
1568f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach
1569f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach@------------------------------------------------------------------------------
1570f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach@ PLD(register)
1571f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach@------------------------------------------------------------------------------
1572f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach        pld [r8, r1]
1573f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach        pld [r5, r2]
1574f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach        pld [r0, r2, lsl #3]
1575f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach        pld [r8, r2, lsl #2]
1576f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach        pld [sp, r2, lsl #1]
1577f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach        pld [sp, r2, lsl #0]
1578f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach
1579f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach@ CHECK: pld	[r8, r1]                @ encoding: [0x18,0xf8,0x01,0xf0]
1580f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach@ CHECK: pld	[r5, r2]                @ encoding: [0x15,0xf8,0x02,0xf0]
1581f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach@ CHECK: pld	[r0, r2, lsl #3]        @ encoding: [0x10,0xf8,0x32,0xf0]
1582f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach@ CHECK: pld	[r8, r2, lsl #2]        @ encoding: [0x18,0xf8,0x22,0xf0]
1583f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach@ CHECK: pld	[sp, r2, lsl #1]        @ encoding: [0x1d,0xf8,0x12,0xf0]
1584f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach@ CHECK: pld	[sp, r2]                @ encoding: [0x1d,0xf8,0x02,0xf0]
1585f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach
1586f83e297cd1c36293d8950106b6d87f0558f21e80Jim Grosbach@------------------------------------------------------------------------------
1587f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach@ PLI(immediate)
1588f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach@------------------------------------------------------------------------------
1589f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach        pli [r5, #-4]
1590f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach        pli [r6, #32]
1591f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach        pli [r6, #33]
1592f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach        pli [r6, #257]
1593f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach        pli [r7, #257]
1594f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach
1595f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach@ CHECK: pli	[r5, #-4]               @ encoding: [0x15,0xf9,0x04,0xfc]
1596f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach@ CHECK: pli	[r6, #32]               @ encoding: [0x96,0xf9,0x20,0xf0]
1597f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach@ CHECK: pli	[r6, #33]               @ encoding: [0x96,0xf9,0x21,0xf0]
1598f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach@ CHECK: pli	[r6, #257]              @ encoding: [0x96,0xf9,0x01,0xf1]
1599f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach@ CHECK: pli	[r7, #257]              @ encoding: [0x97,0xf9,0x01,0xf1]
1600f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach
1601f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach
1602f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach@------------------------------------------------------------------------------
1603f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach@ PLI(literal)
1604f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach@------------------------------------------------------------------------------
1605a581328ceb4c9db165d79a4dabd6b28db799d70fJim Grosbach@        pli  _foo
1606f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach
1607f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach
1608a581328ceb4c9db165d79a4dabd6b28db799d70fJim Grosbach@ FIXME: pli	_foo                    @ encoding: [0x9f'A',0xf9'A',A,0xf0'A']
1609f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach           @   fixup A - offset: 0, value: _foo, kind: fixup_t2_ldst_pcrel_12
1610f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach
1611f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach
1612f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach@------------------------------------------------------------------------------
1613f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach@ PLI(register)
1614f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach@------------------------------------------------------------------------------
1615f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach        pli [r8, r1]
1616f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach        pli [r5, r2]
1617f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach        pli [r0, r2, lsl #3]
1618f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach        pli [r8, r2, lsl #2]
1619f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach        pli [sp, r2, lsl #1]
1620f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach        pli [sp, r2, lsl #0]
1621f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach
1622f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach@ CHECK: pli	[r8, r1]                @ encoding: [0x18,0xf9,0x01,0xf0]
1623f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach@ CHECK: pli	[r5, r2]                @ encoding: [0x15,0xf9,0x02,0xf0]
1624f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach@ CHECK: pli	[r0, r2, lsl #3]        @ encoding: [0x10,0xf9,0x32,0xf0]
1625f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach@ CHECK: pli	[r8, r2, lsl #2]        @ encoding: [0x18,0xf9,0x22,0xf0]
1626f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach@ CHECK: pli	[sp, r2, lsl #1]        @ encoding: [0x1d,0xf9,0x12,0xf0]
1627f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach@ CHECK: pli	[sp, r2]                @ encoding: [0x1d,0xf9,0x02,0xf0]
1628f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach
16295402637ff283d7397513d5c1699cdf2274c47313Jim Grosbach@------------------------------------------------------------------------------
16305402637ff283d7397513d5c1699cdf2274c47313Jim Grosbach@ POP (alias)
16315402637ff283d7397513d5c1699cdf2274c47313Jim Grosbach@------------------------------------------------------------------------------
16325402637ff283d7397513d5c1699cdf2274c47313Jim Grosbach        pop {r2, r9}
16335402637ff283d7397513d5c1699cdf2274c47313Jim Grosbach
16345402637ff283d7397513d5c1699cdf2274c47313Jim Grosbach@ CHECK: pop.w	{r2, r9}                @ encoding: [0xbd,0xe8,0x04,0x02]
16355402637ff283d7397513d5c1699cdf2274c47313Jim Grosbach
16365402637ff283d7397513d5c1699cdf2274c47313Jim Grosbach
16375402637ff283d7397513d5c1699cdf2274c47313Jim Grosbach@------------------------------------------------------------------------------
16385402637ff283d7397513d5c1699cdf2274c47313Jim Grosbach@ PUSH (alias)
16395402637ff283d7397513d5c1699cdf2274c47313Jim Grosbach@------------------------------------------------------------------------------
16405402637ff283d7397513d5c1699cdf2274c47313Jim Grosbach        push {r2, r9}
16415402637ff283d7397513d5c1699cdf2274c47313Jim Grosbach
16425402637ff283d7397513d5c1699cdf2274c47313Jim Grosbach@ CHECK: push.w	{r2, r9}                @ encoding: [0x2d,0xe9,0x04,0x02]
16435402637ff283d7397513d5c1699cdf2274c47313Jim Grosbach
1644f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach
1645f18544d1e55f6e8e3929c1bb840d8fb8709064d0Jim Grosbach@------------------------------------------------------------------------------
16463e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@ QADD/QADD16/QADD8
16473e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@------------------------------------------------------------------------------
16483e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach        qadd r1, r2, r3
16493e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach        qadd16 r1, r2, r3
16503e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach        qadd8 r1, r2, r3
16513e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach        itte gt
16523e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach        qaddgt r1, r2, r3
16533e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach        qadd16gt r1, r2, r3
16543e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach        qadd8le r1, r2, r3
16553e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach
16563e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@ CHECK: qadd	r1, r2, r3              @ encoding: [0x83,0xfa,0x82,0xf1]
16573e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@ CHECK: qadd16	r1, r2, r3              @ encoding: [0x92,0xfa,0x13,0xf1]
16583e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@ CHECK: qadd8	r1, r2, r3              @ encoding: [0x82,0xfa,0x13,0xf1]
16593e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@ CHECK: itte	gt                      @ encoding: [0xc6,0xbf]
16603e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@ CHECK: qaddgt	r1, r2, r3              @ encoding: [0x83,0xfa,0x82,0xf1]
16613e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@ CHECK: qadd16gt r1, r2, r3            @ encoding: [0x92,0xfa,0x13,0xf1]
16623e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@ CHECK: qadd8le r1, r2, r3             @ encoding: [0x82,0xfa,0x13,0xf1]
16633e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach
16643e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach
16653e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@------------------------------------------------------------------------------
16663e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@ QDADD/QDSUB
16673e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@------------------------------------------------------------------------------
16683e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach        qdadd r6, r7, r8
16693e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach        qdsub r6, r7, r8
16703e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach        itt hi
16713e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach        qdaddhi r6, r7, r8
16723e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach        qdsubhi r6, r7, r8
16733e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach
16743e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@ CHECK: qdadd	r6, r7, r8              @ encoding: [0x88,0xfa,0x97,0xf6]
16753e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@ CHECK: qdsub	r6, r7, r8              @ encoding: [0x88,0xfa,0xb7,0xf6]
16763e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@ CHECK: itt	hi                      @ encoding: [0x84,0xbf]
16773e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@ CHECK: qdaddhi r6, r7, r8             @ encoding: [0x88,0xfa,0x97,0xf6]
16783e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@ CHECK: qdsubhi r6, r7, r8             @ encoding: [0x88,0xfa,0xb7,0xf6]
16793e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach
16803e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach
16813e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@------------------------------------------------------------------------------
16823e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@ QSAX
16833e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@------------------------------------------------------------------------------
16843e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach        qsax r9, r12, r0
16853e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach        it eq
16863e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach        qsaxeq r9, r12, r0
16873e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach
16883e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@ CHECK: qsax	r9, r12, r0             @ encoding: [0xec,0xfa,0x10,0xf9]
16893e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@ CHECK: it	eq                      @ encoding: [0x08,0xbf]
16903e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@ CHECK: qsaxeq	r9, r12, r0             @ encoding: [0xec,0xfa,0x10,0xf9]
16913e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach
16923e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach
16933e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@------------------------------------------------------------------------------
16943e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@ QSUB/QSUB16/QSUB8
16953e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@------------------------------------------------------------------------------
16963e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach        qsub r1, r2, r3
16973e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach        qsub16 r1, r2, r3
16983e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach        qsub8 r1, r2, r3
16993e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach        itet le
17003e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach        qsuble r1, r2, r3
17013e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach        qsub16gt r1, r2, r3
17023e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach        qsub8le r1, r2, r3
17033e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach
17043e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@ CHECK: qsub	r1, r2, r3              @ encoding: [0x83,0xfa,0xa2,0xf1]
17053e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@ CHECK: qsub16	r1, r2, r3              @ encoding: [0xd2,0xfa,0x13,0xf1]
17063e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@ CHECK: qsub8	r1, r2, r3              @ encoding: [0xc2,0xfa,0x13,0xf1]
17073e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@ CHECK: itet	le                      @ encoding: [0xd6,0xbf]
17083e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@ CHECK: qsuble	r1, r2, r3              @ encoding: [0x83,0xfa,0xa2,0xf1]
17093e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@ CHECK: qsub16gt	r1, r2, r3      @ encoding: [0xd2,0xfa,0x13,0xf1]
17103e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@ CHECK: qsub8le r1, r2, r3             @ encoding: [0xc2,0xfa,0x13,0xf1]
17113e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach
17123e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach
17133e3a9c796453afed58e27d7bab926061f8dd2d16Jim Grosbach@------------------------------------------------------------------------------
17144bab3c77102954380c923505c413a2df7aca48ebJim Grosbach@ RBIT
17154bab3c77102954380c923505c413a2df7aca48ebJim Grosbach@------------------------------------------------------------------------------
17164bab3c77102954380c923505c413a2df7aca48ebJim Grosbach        rbit r1, r2
17174bab3c77102954380c923505c413a2df7aca48ebJim Grosbach        it ne
17184bab3c77102954380c923505c413a2df7aca48ebJim Grosbach        rbitne r1, r2
17194bab3c77102954380c923505c413a2df7aca48ebJim Grosbach
17204bab3c77102954380c923505c413a2df7aca48ebJim Grosbach@ CHECK: rbit	r1, r2                  @ encoding: [0x92,0xfa,0xa2,0xf1]
17214bab3c77102954380c923505c413a2df7aca48ebJim Grosbach@ CHECK: it	ne                      @ encoding: [0x18,0xbf]
17224bab3c77102954380c923505c413a2df7aca48ebJim Grosbach@ CHECK: rbitne	r1, r2                  @ encoding: [0x92,0xfa,0xa2,0xf1]
17234bab3c77102954380c923505c413a2df7aca48ebJim Grosbach
17244bab3c77102954380c923505c413a2df7aca48ebJim Grosbach
17254bab3c77102954380c923505c413a2df7aca48ebJim Grosbach@------------------------------------------------------------------------------
17261b69a128d6b98456c666b4031cc46c3d0fbe6177Jim Grosbach@ REV
17271b69a128d6b98456c666b4031cc46c3d0fbe6177Jim Grosbach@------------------------------------------------------------------------------
17281b69a128d6b98456c666b4031cc46c3d0fbe6177Jim Grosbach        rev.w r1, r2
17291b69a128d6b98456c666b4031cc46c3d0fbe6177Jim Grosbach        rev r2, r8
17301b69a128d6b98456c666b4031cc46c3d0fbe6177Jim Grosbach        itt ne
17311b69a128d6b98456c666b4031cc46c3d0fbe6177Jim Grosbach        revne r1, r2
17321b69a128d6b98456c666b4031cc46c3d0fbe6177Jim Grosbach        revne r1, r8
17331b69a128d6b98456c666b4031cc46c3d0fbe6177Jim Grosbach
17341b69a128d6b98456c666b4031cc46c3d0fbe6177Jim Grosbach@ CHECK: rev.w	r1, r2                  @ encoding: [0x92,0xfa,0x82,0xf1]
17351b69a128d6b98456c666b4031cc46c3d0fbe6177Jim Grosbach@ CHECK: rev.w	r2, r8                  @ encoding: [0x98,0xfa,0x88,0xf2]
17361b69a128d6b98456c666b4031cc46c3d0fbe6177Jim Grosbach@ CHECK: itt	ne                      @ encoding: [0x1c,0xbf]
17371b69a128d6b98456c666b4031cc46c3d0fbe6177Jim Grosbach@ CHECK: revne	r1, r2                  @ encoding: [0x11,0xba]
17381b69a128d6b98456c666b4031cc46c3d0fbe6177Jim Grosbach@ CHECK: revne.w r1, r8                 @ encoding: [0x98,0xfa,0x88,0xf1]
17391b69a128d6b98456c666b4031cc46c3d0fbe6177Jim Grosbach
17401b69a128d6b98456c666b4031cc46c3d0fbe6177Jim Grosbach
17411b69a128d6b98456c666b4031cc46c3d0fbe6177Jim Grosbach@------------------------------------------------------------------------------
1742689b86ed2e1f1daf9201f0ef83ff3bc1d5167232Jim Grosbach@ REV16
1743689b86ed2e1f1daf9201f0ef83ff3bc1d5167232Jim Grosbach@------------------------------------------------------------------------------
1744689b86ed2e1f1daf9201f0ef83ff3bc1d5167232Jim Grosbach        rev16.w r1, r2
1745689b86ed2e1f1daf9201f0ef83ff3bc1d5167232Jim Grosbach        rev16 r2, r8
1746689b86ed2e1f1daf9201f0ef83ff3bc1d5167232Jim Grosbach        itt ne
1747689b86ed2e1f1daf9201f0ef83ff3bc1d5167232Jim Grosbach        rev16ne r1, r2
1748689b86ed2e1f1daf9201f0ef83ff3bc1d5167232Jim Grosbach        rev16ne r1, r8
1749689b86ed2e1f1daf9201f0ef83ff3bc1d5167232Jim Grosbach
1750356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: rev16.w r1, r2                 @ encoding: [0x92,0xfa,0x92,0xf1]
1751356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: rev16.w r2, r8                 @ encoding: [0x98,0xfa,0x98,0xf2]
1752356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: itt	ne                      @ encoding: [0x1c,0xbf]
1753356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: rev16ne r1, r2                 @ encoding: [0x51,0xba]
1754356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: rev16ne.w	r1, r8          @ encoding: [0x98,0xfa,0x98,0xf1]
1755689b86ed2e1f1daf9201f0ef83ff3bc1d5167232Jim Grosbach
1756689b86ed2e1f1daf9201f0ef83ff3bc1d5167232Jim Grosbach
1757689b86ed2e1f1daf9201f0ef83ff3bc1d5167232Jim Grosbach@------------------------------------------------------------------------------
1758689b86ed2e1f1daf9201f0ef83ff3bc1d5167232Jim Grosbach@ REVSH
1759689b86ed2e1f1daf9201f0ef83ff3bc1d5167232Jim Grosbach@------------------------------------------------------------------------------
1760689b86ed2e1f1daf9201f0ef83ff3bc1d5167232Jim Grosbach        revsh.w r1, r2
1761689b86ed2e1f1daf9201f0ef83ff3bc1d5167232Jim Grosbach        revsh r2, r8
1762689b86ed2e1f1daf9201f0ef83ff3bc1d5167232Jim Grosbach        itt ne
1763689b86ed2e1f1daf9201f0ef83ff3bc1d5167232Jim Grosbach        revshne r1, r2
1764689b86ed2e1f1daf9201f0ef83ff3bc1d5167232Jim Grosbach        revshne r1, r8
1765689b86ed2e1f1daf9201f0ef83ff3bc1d5167232Jim Grosbach
1766356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: revsh.w r1, r2                 @ encoding: [0x92,0xfa,0xb2,0xf1]
1767356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: revsh.w r2, r8                 @ encoding: [0x98,0xfa,0xb8,0xf2]
1768356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: itt	ne                      @ encoding: [0x1c,0xbf]
1769356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: revshne r1, r2                 @ encoding: [0xd1,0xba]
1770356c759908e1c6b968293d54bc4aa26bc8415407Jim Grosbach@ CHECK: revshne.w	r1, r8          @ encoding: [0x98,0xfa,0xb8,0xf1]
1771689b86ed2e1f1daf9201f0ef83ff3bc1d5167232Jim Grosbach
1772689b86ed2e1f1daf9201f0ef83ff3bc1d5167232Jim Grosbach
1773689b86ed2e1f1daf9201f0ef83ff3bc1d5167232Jim Grosbach@------------------------------------------------------------------------------
17745260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach@ ROR (immediate)
17755260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach@------------------------------------------------------------------------------
17765260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach        ror r2, r3, #12
17775260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach        rors r8, r3, #31
17785260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach        rors.w r2, r3, #1
17795260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach        ror r2, r3, #4
17805260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach        rors r2, r12, #15
17815260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach
17825260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach        ror r3, #19
17835260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach        rors r8, #2
17845260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach        rors.w r7, #5
17855260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach        ror.w r12, #21
17865260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach
17875260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach@ CHECK: ror.w	r2, r3, #12             @ encoding: [0x4f,0xea,0x33,0x32]
17885260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach@ CHECK: rors.w	r8, r3, #31             @ encoding: [0x5f,0xea,0xf3,0x78]
17895260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach@ CHECK: rors.w	r2, r3, #1              @ encoding: [0x5f,0xea,0x73,0x02]
17905260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach@ CHECK: ror.w	r2, r3, #4              @ encoding: [0x4f,0xea,0x33,0x12]
17915260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach@ CHECK: rors.w	r2, r12, #15            @ encoding: [0x5f,0xea,0xfc,0x32]
17925260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach
17935260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach@ CHECK: ror.w	r3, r3, #19             @ encoding: [0x4f,0xea,0xf3,0x43]
17945260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach@ CHECK: rors.w	r8, r8, #2              @ encoding: [0x5f,0xea,0xb8,0x08]
17955260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach@ CHECK: rors.w	r7, r7, #5              @ encoding: [0x5f,0xea,0x77,0x17]
17965260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach@ CHECK: ror.w	r12, r12, #21           @ encoding: [0x4f,0xea,0x7c,0x5c]
17975260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach
17985260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach
17995260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach@------------------------------------------------------------------------------
18005260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach@ ROR (register)
18015260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach@------------------------------------------------------------------------------
18025260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach        ror r3, r4, r2
18035260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach        ror.w r1, r2
18045260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach        rors r3, r4, r8
18055260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach
18065260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach@ CHECK: ror.w	r3, r4, r2              @ encoding: [0x64,0xfa,0x02,0xf3]
18075260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach@ CHECK: ror.w	r1, r1, r2              @ encoding: [0x61,0xfa,0x02,0xf1]
18085260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach@ CHECK: rors.w	r3, r4, r8              @ encoding: [0x74,0xfa,0x08,0xf3]
18095260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach
18105260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach
18115260be1f2d8a2efe9aea398248736556cab42eebJim Grosbach@------------------------------------------------------------------------------
1812aba8015cc375ac7de757d92e55d1aad986de6202Jim Grosbach@ RRX
1813aba8015cc375ac7de757d92e55d1aad986de6202Jim Grosbach@------------------------------------------------------------------------------
1814aba8015cc375ac7de757d92e55d1aad986de6202Jim Grosbach        rrx r1, r2
1815aba8015cc375ac7de757d92e55d1aad986de6202Jim Grosbach        rrxs r1, r2
1816aba8015cc375ac7de757d92e55d1aad986de6202Jim Grosbach        ite lt
1817aba8015cc375ac7de757d92e55d1aad986de6202Jim Grosbach        rrxlt r9, r12
1818aba8015cc375ac7de757d92e55d1aad986de6202Jim Grosbach        rrxsge r8, r3
1819aba8015cc375ac7de757d92e55d1aad986de6202Jim Grosbach
1820aba8015cc375ac7de757d92e55d1aad986de6202Jim Grosbach@ CHECK: rrx	r1, r2                  @ encoding: [0x4f,0xea,0x32,0x01]
1821aba8015cc375ac7de757d92e55d1aad986de6202Jim Grosbach@ CHECK: rrxs	r1, r2                  @ encoding: [0x5f,0xea,0x32,0x01]
1822aba8015cc375ac7de757d92e55d1aad986de6202Jim Grosbach@ CHECK: ite	lt                      @ encoding: [0xb4,0xbf]
1823aba8015cc375ac7de757d92e55d1aad986de6202Jim Grosbach@ CHECK: rrxlt	r9, r12                 @ encoding: [0x4f,0xea,0x3c,0x09]
1824aba8015cc375ac7de757d92e55d1aad986de6202Jim Grosbach@ CHECK: rrxsge	r8, r3                  @ encoding: [0x5f,0xea,0x33,0x08]
1825aba8015cc375ac7de757d92e55d1aad986de6202Jim Grosbach
1826191d33fd6d0a91e89f2a8f719e5adbdccf9effa9Jim Grosbach@------------------------------------------------------------------------------
1827191d33fd6d0a91e89f2a8f719e5adbdccf9effa9Jim Grosbach@ RSB (immediate)
1828191d33fd6d0a91e89f2a8f719e5adbdccf9effa9Jim Grosbach@------------------------------------------------------------------------------
1829191d33fd6d0a91e89f2a8f719e5adbdccf9effa9Jim Grosbach        rsb r2, r5, #0xff000
1830191d33fd6d0a91e89f2a8f719e5adbdccf9effa9Jim Grosbach        rsbs r3, r12, #0xf
1831191d33fd6d0a91e89f2a8f719e5adbdccf9effa9Jim Grosbach        rsb r1, #0xff
1832191d33fd6d0a91e89f2a8f719e5adbdccf9effa9Jim Grosbach        rsb r1, r1, #0xff
183355b02f28c1a2960ebb88cf5019cc5b36bb2eabf4Jim Grosbach        rsb r11, r11, #0
183455b02f28c1a2960ebb88cf5019cc5b36bb2eabf4Jim Grosbach        rsb r9, #0
18350da6e867cf10a0bcca56df8d854355025e1d6f91Jim Grosbach        rsbs r3, r1, #0
18360da6e867cf10a0bcca56df8d854355025e1d6f91Jim Grosbach        rsb r3, r1, #0
1837191d33fd6d0a91e89f2a8f719e5adbdccf9effa9Jim Grosbach
1838191d33fd6d0a91e89f2a8f719e5adbdccf9effa9Jim Grosbach@ CHECK: rsb.w	r2, r5, #1044480        @ encoding: [0xc5,0xf5,0x7f,0x22]
1839191d33fd6d0a91e89f2a8f719e5adbdccf9effa9Jim Grosbach@ CHECK: rsbs.w	r3, r12, #15            @ encoding: [0xdc,0xf1,0x0f,0x03]
1840191d33fd6d0a91e89f2a8f719e5adbdccf9effa9Jim Grosbach@ CHECK: rsb.w	r1, r1, #255            @ encoding: [0xc1,0xf1,0xff,0x01]
1841191d33fd6d0a91e89f2a8f719e5adbdccf9effa9Jim Grosbach@ CHECK: rsb.w	r1, r1, #255            @ encoding: [0xc1,0xf1,0xff,0x01]
184255b02f28c1a2960ebb88cf5019cc5b36bb2eabf4Jim Grosbach@ CHECK: rsb.w	r11, r11, #0            @ encoding: [0xcb,0xf1,0x00,0x0b]
184355b02f28c1a2960ebb88cf5019cc5b36bb2eabf4Jim Grosbach@ CHECK: rsb.w	r9, r9, #0              @ encoding: [0xc9,0xf1,0x00,0x09]
18440da6e867cf10a0bcca56df8d854355025e1d6f91Jim Grosbach@ CHECK: rsbs	r3, r1, #0              @ encoding: [0x4b,0x42]
18450da6e867cf10a0bcca56df8d854355025e1d6f91Jim Grosbach@ CHECK: rsb.w	r3, r1, #0              @ encoding: [0xc1,0xf1,0x00,0x03]
1846191d33fd6d0a91e89f2a8f719e5adbdccf9effa9Jim Grosbach
1847191d33fd6d0a91e89f2a8f719e5adbdccf9effa9Jim Grosbach
1848191d33fd6d0a91e89f2a8f719e5adbdccf9effa9Jim Grosbach@------------------------------------------------------------------------------
1849191d33fd6d0a91e89f2a8f719e5adbdccf9effa9Jim Grosbach@ RSB (register)
1850191d33fd6d0a91e89f2a8f719e5adbdccf9effa9Jim Grosbach@------------------------------------------------------------------------------
1851191d33fd6d0a91e89f2a8f719e5adbdccf9effa9Jim Grosbach        rsb r4, r8
1852191d33fd6d0a91e89f2a8f719e5adbdccf9effa9Jim Grosbach        rsb r4, r9, r8
1853191d33fd6d0a91e89f2a8f719e5adbdccf9effa9Jim Grosbach        rsb r1, r4, r8, asr #3
1854191d33fd6d0a91e89f2a8f719e5adbdccf9effa9Jim Grosbach        rsbs r2, r1, r7, lsl #1
1855191d33fd6d0a91e89f2a8f719e5adbdccf9effa9Jim Grosbach
1856191d33fd6d0a91e89f2a8f719e5adbdccf9effa9Jim Grosbach@ CHECK: rsb	r4, r4, r8              @ encoding: [0xc4,0xeb,0x08,0x04]
1857191d33fd6d0a91e89f2a8f719e5adbdccf9effa9Jim Grosbach@ CHECK: rsb	r4, r9, r8              @ encoding: [0xc9,0xeb,0x08,0x04]
1858191d33fd6d0a91e89f2a8f719e5adbdccf9effa9Jim Grosbach@ CHECK: rsb	r1, r4, r8, asr #3      @ encoding: [0xc4,0xeb,0xe8,0x01]
1859191d33fd6d0a91e89f2a8f719e5adbdccf9effa9Jim Grosbach@ CHECK: rsbs	r2, r1, r7, lsl #1      @ encoding: [0xd1,0xeb,0x47,0x02]
1860191d33fd6d0a91e89f2a8f719e5adbdccf9effa9Jim Grosbach
1861aba8015cc375ac7de757d92e55d1aad986de6202Jim Grosbach
1862aba8015cc375ac7de757d92e55d1aad986de6202Jim Grosbach@------------------------------------------------------------------------------
1863ed15ab1aadea6216b30ccfc659b194d09f44ca14Jim Grosbach@ SADD16
1864ed15ab1aadea6216b30ccfc659b194d09f44ca14Jim Grosbach@------------------------------------------------------------------------------
1865ed15ab1aadea6216b30ccfc659b194d09f44ca14Jim Grosbach        sadd16 r3, r4, r8
1866ed15ab1aadea6216b30ccfc659b194d09f44ca14Jim Grosbach        it ne
1867ed15ab1aadea6216b30ccfc659b194d09f44ca14Jim Grosbach        sadd16ne r3, r4, r8
1868ed15ab1aadea6216b30ccfc659b194d09f44ca14Jim Grosbach
1869ed15ab1aadea6216b30ccfc659b194d09f44ca14Jim Grosbach@ CHECK: sadd16	r3, r4, r8              @ encoding: [0x94,0xfa,0x08,0xf3]
1870ed15ab1aadea6216b30ccfc659b194d09f44ca14Jim Grosbach@ CHECK: it	ne                      @ encoding: [0x18,0xbf]
1871ed15ab1aadea6216b30ccfc659b194d09f44ca14Jim Grosbach@ CHECK: sadd16ne	r3, r4, r8      @ encoding: [0x94,0xfa,0x08,0xf3]
1872ed15ab1aadea6216b30ccfc659b194d09f44ca14Jim Grosbach
1873ed15ab1aadea6216b30ccfc659b194d09f44ca14Jim Grosbach
1874ed15ab1aadea6216b30ccfc659b194d09f44ca14Jim Grosbach@------------------------------------------------------------------------------
1875ed15ab1aadea6216b30ccfc659b194d09f44ca14Jim Grosbach@ SADD8
1876ed15ab1aadea6216b30ccfc659b194d09f44ca14Jim Grosbach@------------------------------------------------------------------------------
1877ed15ab1aadea6216b30ccfc659b194d09f44ca14Jim Grosbach        sadd8 r3, r4, r8
1878ed15ab1aadea6216b30ccfc659b194d09f44ca14Jim Grosbach        it ne
1879ed15ab1aadea6216b30ccfc659b194d09f44ca14Jim Grosbach        sadd8ne r3, r4, r8
1880ed15ab1aadea6216b30ccfc659b194d09f44ca14Jim Grosbach
1881ed15ab1aadea6216b30ccfc659b194d09f44ca14Jim Grosbach@ CHECK: sadd8	r3, r4, r8              @ encoding: [0x84,0xfa,0x08,0xf3]
1882ed15ab1aadea6216b30ccfc659b194d09f44ca14Jim Grosbach@ CHECK: it	ne                      @ encoding: [0x18,0xbf]
1883ed15ab1aadea6216b30ccfc659b194d09f44ca14Jim Grosbach@ CHECK: sadd8ne r3, r4, r8             @ encoding: [0x84,0xfa,0x08,0xf3]
1884ed15ab1aadea6216b30ccfc659b194d09f44ca14Jim Grosbach
1885ed15ab1aadea6216b30ccfc659b194d09f44ca14Jim Grosbach
1886ed15ab1aadea6216b30ccfc659b194d09f44ca14Jim Grosbach@------------------------------------------------------------------------------
1887e4e4a93e9ec6040b6466bf067d5e02533471f093Jim Grosbach@ SASX
1888e4e4a93e9ec6040b6466bf067d5e02533471f093Jim Grosbach@------------------------------------------------------------------------------
1889e4e4a93e9ec6040b6466bf067d5e02533471f093Jim Grosbach        saddsubx r9, r2, r7
1890e4e4a93e9ec6040b6466bf067d5e02533471f093Jim Grosbach        it ne
1891e4e4a93e9ec6040b6466bf067d5e02533471f093Jim Grosbach        saddsubxne r2, r5, r6
1892e4e4a93e9ec6040b6466bf067d5e02533471f093Jim Grosbach        sasx r9, r2, r7
1893e4e4a93e9ec6040b6466bf067d5e02533471f093Jim Grosbach        it ne
1894e4e4a93e9ec6040b6466bf067d5e02533471f093Jim Grosbach        sasxne r2, r5, r6
1895e4e4a93e9ec6040b6466bf067d5e02533471f093Jim Grosbach
1896e4e4a93e9ec6040b6466bf067d5e02533471f093Jim Grosbach@ CHECK: sasx	r9, r2, r7              @ encoding: [0xa2,0xfa,0x07,0xf9]
1897e4e4a93e9ec6040b6466bf067d5e02533471f093Jim Grosbach@ CHECK: it	ne                      @ encoding: [0x18,0xbf]
1898e4e4a93e9ec6040b6466bf067d5e02533471f093Jim Grosbach@ CHECK: sasxne	r2, r5, r6              @ encoding: [0xa5,0xfa,0x06,0xf2]
1899e4e4a93e9ec6040b6466bf067d5e02533471f093Jim Grosbach@ CHECK: sasx	r9, r2, r7              @ encoding: [0xa2,0xfa,0x07,0xf9]
1900e4e4a93e9ec6040b6466bf067d5e02533471f093Jim Grosbach@ CHECK: it	ne                      @ encoding: [0x18,0xbf]
1901e4e4a93e9ec6040b6466bf067d5e02533471f093Jim Grosbach@ CHECK: sasxne	r2, r5, r6              @ encoding: [0xa5,0xfa,0x06,0xf2]
1902e4e4a93e9ec6040b6466bf067d5e02533471f093Jim Grosbach
1903e4e4a93e9ec6040b6466bf067d5e02533471f093Jim Grosbach
1904e4e4a93e9ec6040b6466bf067d5e02533471f093Jim Grosbach@------------------------------------------------------------------------------
1905fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach@ SBC (immediate)
1906fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach@------------------------------------------------------------------------------
1907fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach        sbc r0, r1, #4
1908fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach        sbcs r0, r1, #0
1909fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach        sbc r1, r2, #255
1910fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach        sbc r3, r7, #0x00550055
1911fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach        sbc r8, r12, #0xaa00aa00
1912fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach        sbc r9, r7, #0xa5a5a5a5
1913fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach        sbc r5, r3, #0x87000000
1914fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach        sbc r4, r2, #0x7f800000
1915fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach        sbc r4, r2, #0x00000680
1916fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach
1917fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach@ CHECK: sbc	r0, r1, #4              @ encoding: [0x61,0xf1,0x04,0x00]
1918fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach@ CHECK: sbcs	r0, r1, #0              @ encoding: [0x71,0xf1,0x00,0x00]
1919fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach@ CHECK: sbc	r1, r2, #255            @ encoding: [0x62,0xf1,0xff,0x01]
1920fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach@ CHECK: sbc	r3, r7, #5570645        @ encoding: [0x67,0xf1,0x55,0x13]
1921fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach@ CHECK: sbc	r8, r12, #2852170240    @ encoding: [0x6c,0xf1,0xaa,0x28]
1922fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach@ CHECK: sbc	r9, r7, #2779096485     @ encoding: [0x67,0xf1,0xa5,0x39]
1923fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach@ CHECK: sbc	r5, r3, #2264924160     @ encoding: [0x63,0xf1,0x07,0x45]
1924fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach@ CHECK: sbc	r4, r2, #2139095040     @ encoding: [0x62,0xf1,0xff,0x44]
1925fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach@ CHECK: sbc	r4, r2, #1664           @ encoding: [0x62,0xf5,0xd0,0x64]
1926fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach
1927fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach
1928fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach@------------------------------------------------------------------------------
1929fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach@ SBC (register)
1930fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach@------------------------------------------------------------------------------
1931fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach        sbc r4, r5, r6
1932fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach        sbcs r4, r5, r6
1933fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach        sbc.w r9, r1, r3
1934fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach        sbcs.w r9, r1, r3
1935fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach        sbc	r0, r1, r3, ror #4
1936fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach        sbcs	r0, r1, r3, lsl #7
1937fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach        sbc.w	r0, r1, r3, lsr #31
1938fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach        sbcs.w	r0, r1, r3, asr #32
1939fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach
1940fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach@ CHECK: sbc.w	r4, r5, r6              @ encoding: [0x65,0xeb,0x06,0x04]
1941fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach@ CHECK: sbcs.w	r4, r5, r6              @ encoding: [0x75,0xeb,0x06,0x04]
1942fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach@ CHECK: sbc.w	r9, r1, r3              @ encoding: [0x61,0xeb,0x03,0x09]
1943fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach@ CHECK: sbcs.w	r9, r1, r3              @ encoding: [0x71,0xeb,0x03,0x09]
1944fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach@ CHECK: sbc.w	r0, r1, r3, ror #4      @ encoding: [0x61,0xeb,0x33,0x10]
1945fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach@ CHECK: sbcs.w	r0, r1, r3, lsl #7      @ encoding: [0x71,0xeb,0xc3,0x10]
1946fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach@ CHECK: sbc.w	r0, r1, r3, lsr #31     @ encoding: [0x61,0xeb,0xd3,0x70]
1947fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach@ CHECK: sbcs.w	r0, r1, r3, asr #32     @ encoding: [0x71,0xeb,0x23,0x00]
1948fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach
1949fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach
1950fd8b8519087d19d3ac4c3a0b23e6f7a6c2ced46bJim Grosbach@------------------------------------------------------------------------------
19517ecedac8b726926cce5758b791c5e78caff8b5adJim Grosbach@ SBFX
19527ecedac8b726926cce5758b791c5e78caff8b5adJim Grosbach@------------------------------------------------------------------------------
19537ecedac8b726926cce5758b791c5e78caff8b5adJim Grosbach        sbfx r4, r5, #16, #1
19547ecedac8b726926cce5758b791c5e78caff8b5adJim Grosbach        it gt
19557ecedac8b726926cce5758b791c5e78caff8b5adJim Grosbach        sbfxgt r4, r5, #16, #16
19567ecedac8b726926cce5758b791c5e78caff8b5adJim Grosbach
19577ecedac8b726926cce5758b791c5e78caff8b5adJim Grosbach@ CHECK: sbfx	r4, r5, #16, #1         @ encoding: [0x45,0xf3,0x00,0x44]
19587ecedac8b726926cce5758b791c5e78caff8b5adJim Grosbach@ CHECK: it	gt                      @ encoding: [0xc8,0xbf]
19597ecedac8b726926cce5758b791c5e78caff8b5adJim Grosbach@ CHECK: sbfxgt	r4, r5, #16, #16        @ encoding: [0x45,0xf3,0x0f,0x44]
19607ecedac8b726926cce5758b791c5e78caff8b5adJim Grosbach
19617ecedac8b726926cce5758b791c5e78caff8b5adJim Grosbach
19627ecedac8b726926cce5758b791c5e78caff8b5adJim Grosbach@------------------------------------------------------------------------------
196356019a32bdfc65b3e97aec3827f4d12b091365bbJim Grosbach@ SEL
196456019a32bdfc65b3e97aec3827f4d12b091365bbJim Grosbach@------------------------------------------------------------------------------
196556019a32bdfc65b3e97aec3827f4d12b091365bbJim Grosbach        sel r5, r9, r2
196656019a32bdfc65b3e97aec3827f4d12b091365bbJim Grosbach        it le
196756019a32bdfc65b3e97aec3827f4d12b091365bbJim Grosbach        selle r5, r9, r2
196856019a32bdfc65b3e97aec3827f4d12b091365bbJim Grosbach
196956019a32bdfc65b3e97aec3827f4d12b091365bbJim Grosbach@ CHECK: sel	r5, r9, r2              @ encoding: [0xa9,0xfa,0x82,0xf5]
197056019a32bdfc65b3e97aec3827f4d12b091365bbJim Grosbach@ CHECK: it	le                      @ encoding: [0xd8,0xbf]
197156019a32bdfc65b3e97aec3827f4d12b091365bbJim Grosbach@ CHECK: selle	r5, r9, r2              @ encoding: [0xa9,0xfa,0x82,0xf5]
197256019a32bdfc65b3e97aec3827f4d12b091365bbJim Grosbach
197356019a32bdfc65b3e97aec3827f4d12b091365bbJim Grosbach
197456019a32bdfc65b3e97aec3827f4d12b091365bbJim Grosbach@------------------------------------------------------------------------------
1975d16160f18af7735924ad37e69f54308ba037f1e9Jim Grosbach@ SEV
1976d16160f18af7735924ad37e69f54308ba037f1e9Jim Grosbach@------------------------------------------------------------------------------
1977d16160f18af7735924ad37e69f54308ba037f1e9Jim Grosbach        sev.w
1978d16160f18af7735924ad37e69f54308ba037f1e9Jim Grosbach        it eq
1979d16160f18af7735924ad37e69f54308ba037f1e9Jim Grosbach        seveq.w
1980d16160f18af7735924ad37e69f54308ba037f1e9Jim Grosbach
1981d16160f18af7735924ad37e69f54308ba037f1e9Jim Grosbach@ CHECK: sev.w                           @ encoding: [0xaf,0xf3,0x04,0x80]
1982d16160f18af7735924ad37e69f54308ba037f1e9Jim Grosbach@ CHECK: it	eq                       @ encoding: [0x08,0xbf]
1983d16160f18af7735924ad37e69f54308ba037f1e9Jim Grosbach@ CHECK: seveq.w                         @ encoding: [0xaf,0xf3,0x04,0x80]
1984d16160f18af7735924ad37e69f54308ba037f1e9Jim Grosbach
1985d16160f18af7735924ad37e69f54308ba037f1e9Jim Grosbach
1986d16160f18af7735924ad37e69f54308ba037f1e9Jim Grosbach@------------------------------------------------------------------------------
19875a6370ff99013ce8a9db12e127770395e81767b4Jim Grosbach@ SADD16/SADD8
19885a6370ff99013ce8a9db12e127770395e81767b4Jim Grosbach@------------------------------------------------------------------------------
19895a6370ff99013ce8a9db12e127770395e81767b4Jim Grosbach        sadd16 r1, r2, r3
19905a6370ff99013ce8a9db12e127770395e81767b4Jim Grosbach        sadd8 r1, r2, r3
19915a6370ff99013ce8a9db12e127770395e81767b4Jim Grosbach        ite gt
19925a6370ff99013ce8a9db12e127770395e81767b4Jim Grosbach        sadd16gt r1, r2, r3
19935a6370ff99013ce8a9db12e127770395e81767b4Jim Grosbach        sadd8le r1, r2, r3
19945a6370ff99013ce8a9db12e127770395e81767b4Jim Grosbach
19955a6370ff99013ce8a9db12e127770395e81767b4Jim Grosbach@ CHECK: sadd16	r1, r2, r3              @ encoding: [0x92,0xfa,0x03,0xf1]
19965a6370ff99013ce8a9db12e127770395e81767b4Jim Grosbach@ CHECK: sadd8	r1, r2, r3              @ encoding: [0x82,0xfa,0x03,0xf1]
19975a6370ff99013ce8a9db12e127770395e81767b4Jim Grosbach@ CHECK: ite	gt                      @ encoding: [0xcc,0xbf]
19985a6370ff99013ce8a9db12e127770395e81767b4Jim Grosbach@ CHECK: sadd16gt	r1, r2, r3      @ encoding: [0x92,0xfa,0x03,0xf1]
19995a6370ff99013ce8a9db12e127770395e81767b4Jim Grosbach@ CHECK: sadd8le r1, r2, r3             @ encoding: [0x82,0xfa,0x03,0xf1]
20005a6370ff99013ce8a9db12e127770395e81767b4Jim Grosbach
20015a6370ff99013ce8a9db12e127770395e81767b4Jim Grosbach
20025a6370ff99013ce8a9db12e127770395e81767b4Jim Grosbach@------------------------------------------------------------------------------
2003c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach@ SHASX
2004c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach@------------------------------------------------------------------------------
2005c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach        shasx r4, r8, r2
2006c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach        it gt
2007c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach        shasxgt r4, r8, r2
2008c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach        shaddsubx r4, r8, r2
2009c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach        it gt
2010c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach        shaddsubxgt r4, r8, r2
2011c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach
2012c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach@ CHECK: shasx	r4, r8, r2              @ encoding: [0xa8,0xfa,0x22,0xf4]
2013c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach@ CHECK: it	gt                      @ encoding: [0xc8,0xbf]
2014c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach@ CHECK: shasxgt r4, r8, r2             @ encoding: [0xa8,0xfa,0x22,0xf4]
2015c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach@ CHECK: shasx	r4, r8, r2              @ encoding: [0xa8,0xfa,0x22,0xf4]
2016c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach@ CHECK: it	gt                      @ encoding: [0xc8,0xbf]
2017c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach@ CHECK: shasxgt r4, r8, r2             @ encoding: [0xa8,0xfa,0x22,0xf4]
2018c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach
2019c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach
2020c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach@------------------------------------------------------------------------------
2021c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach@ SHASX
2022c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach@------------------------------------------------------------------------------
2023c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach        shsax r4, r8, r2
2024c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach        it gt
2025c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach        shsaxgt r4, r8, r2
2026c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach        shsubaddx r4, r8, r2
2027c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach        it gt
2028c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach        shsubaddxgt r4, r8, r2
2029c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach
2030c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach@ CHECK: shsax	r4, r8, r2              @ encoding: [0xe8,0xfa,0x22,0xf4]
2031c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach@ CHECK: it	gt                      @ encoding: [0xc8,0xbf]
2032c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach@ CHECK: shsaxgt r4, r8, r2             @ encoding: [0xe8,0xfa,0x22,0xf4]
2033c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach@ CHECK: shsax	r4, r8, r2              @ encoding: [0xe8,0xfa,0x22,0xf4]
2034c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach@ CHECK: it	gt                      @ encoding: [0xc8,0xbf]
2035c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach@ CHECK: shsaxgt r4, r8, r2             @ encoding: [0xe8,0xfa,0x22,0xf4]
2036c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach
2037c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach
2038c075d45364190dfe06eda8aa93b6856d4f55f107Jim Grosbach@------------------------------------------------------------------------------
2039f08084ba4bbabd1c22ad654347e77218a16b9a80Jim Grosbach@ SHSUB16/SHSUB8
2040f08084ba4bbabd1c22ad654347e77218a16b9a80Jim Grosbach@------------------------------------------------------------------------------
2041f08084ba4bbabd1c22ad654347e77218a16b9a80Jim Grosbach        shsub16 r4, r8, r2
2042f08084ba4bbabd1c22ad654347e77218a16b9a80Jim Grosbach        shsub8 r4, r8, r2
2043f08084ba4bbabd1c22ad654347e77218a16b9a80Jim Grosbach        itt gt
2044f08084ba4bbabd1c22ad654347e77218a16b9a80Jim Grosbach        shsub16gt r4, r8, r2
2045f08084ba4bbabd1c22ad654347e77218a16b9a80Jim Grosbach        shsub8gt r4, r8, r2
2046f08084ba4bbabd1c22ad654347e77218a16b9a80Jim Grosbach
2047f08084ba4bbabd1c22ad654347e77218a16b9a80Jim Grosbach@ CHECK: shsub16 r4, r8, r2             @ encoding: [0xd8,0xfa,0x22,0xf4]
2048f08084ba4bbabd1c22ad654347e77218a16b9a80Jim Grosbach@ CHECK: shsub8	r4, r8, r2              @ encoding: [0xc8,0xfa,0x22,0xf4]
2049f08084ba4bbabd1c22ad654347e77218a16b9a80Jim Grosbach@ CHECK: itt	gt                      @ encoding: [0xc4,0xbf]
2050f08084ba4bbabd1c22ad654347e77218a16b9a80Jim Grosbach@ CHECK: shsub16gt	r4, r8, r2      @ encoding: [0xd8,0xfa,0x22,0xf4]
2051f08084ba4bbabd1c22ad654347e77218a16b9a80Jim Grosbach@ CHECK: shsub8gt	r4, r8, r2      @ encoding: [0xc8,0xfa,0x22,0xf4]
2052f08084ba4bbabd1c22ad654347e77218a16b9a80Jim Grosbach
2053f08084ba4bbabd1c22ad654347e77218a16b9a80Jim Grosbach
2054f08084ba4bbabd1c22ad654347e77218a16b9a80Jim Grosbach@------------------------------------------------------------------------------
2055246ae02bce7afb0411d21803eb0ad1b3832189f9Jim Grosbach@ SMLABB/SMLABT/SMLATB/SMLATT
2056246ae02bce7afb0411d21803eb0ad1b3832189f9Jim Grosbach@------------------------------------------------------------------------------
2057246ae02bce7afb0411d21803eb0ad1b3832189f9Jim Grosbach        smlabb r3, r1, r9, r0
2058246ae02bce7afb0411d21803eb0ad1b3832189f9Jim Grosbach        smlabt r5, r6, r4, r1
2059246ae02bce7afb0411d21803eb0ad1b3832189f9Jim Grosbach        smlatb r4, r2, r3, r2
2060246ae02bce7afb0411d21803eb0ad1b3832189f9Jim Grosbach        smlatt r8, r3, r8, r4
2061246ae02bce7afb0411d21803eb0ad1b3832189f9Jim Grosbach        itete gt
2062246ae02bce7afb0411d21803eb0ad1b3832189f9Jim Grosbach        smlabbgt r3, r1, r9, r0
2063246ae02bce7afb0411d21803eb0ad1b3832189f9Jim Grosbach        smlabtle r5, r6, r4, r1
2064246ae02bce7afb0411d21803eb0ad1b3832189f9Jim Grosbach        smlatbgt r4, r2, r3, r2
2065246ae02bce7afb0411d21803eb0ad1b3832189f9Jim Grosbach        smlattle r8, r3, r8, r4
2066246ae02bce7afb0411d21803eb0ad1b3832189f9Jim Grosbach
2067246ae02bce7afb0411d21803eb0ad1b3832189f9Jim Grosbach@ CHECK: smlabb	r3, r1, r9, r0          @ encoding: [0x11,0xfb,0x09,0x03]
2068246ae02bce7afb0411d21803eb0ad1b3832189f9Jim Grosbach@ CHECK: smlabt	r5, r6, r4, r1          @ encoding: [0x16,0xfb,0x14,0x15]
2069246ae02bce7afb0411d21803eb0ad1b3832189f9Jim Grosbach@ CHECK: smlatb	r4, r2, r3, r2          @ encoding: [0x12,0xfb,0x23,0x24]
2070246ae02bce7afb0411d21803eb0ad1b3832189f9Jim Grosbach@ CHECK: smlatt	r8, r3, r8, r4          @ encoding: [0x13,0xfb,0x38,0x48]
2071246ae02bce7afb0411d21803eb0ad1b3832189f9Jim Grosbach@ CHECK: itete	gt                      @ encoding: [0xcb,0xbf]
2072246ae02bce7afb0411d21803eb0ad1b3832189f9Jim Grosbach@ CHECK: smlabbgt	r3, r1, r9, r0  @ encoding: [0x11,0xfb,0x09,0x03]
2073246ae02bce7afb0411d21803eb0ad1b3832189f9Jim Grosbach@ CHECK: smlabtle	r5, r6, r4, r1  @ encoding: [0x16,0xfb,0x14,0x15]
2074246ae02bce7afb0411d21803eb0ad1b3832189f9Jim Grosbach@ CHECK: smlatbgt	r4, r2, r3, r2  @ encoding: [0x12,0xfb,0x23,0x24]
2075246ae02bce7afb0411d21803eb0ad1b3832189f9Jim Grosbach@ CHECK: smlattle	r8, r3, r8, r4  @ encoding: [0x13,0xfb,0x38,0x48]
2076246ae02bce7afb0411d21803eb0ad1b3832189f9Jim Grosbach
2077246ae02bce7afb0411d21803eb0ad1b3832189f9Jim Grosbach
2078246ae02bce7afb0411d21803eb0ad1b3832189f9Jim Grosbach@------------------------------------------------------------------------------
2079e74711b8b0c7abd0383ebb70941cdcb779918e12Jim Grosbach@ SMLAD/SMLADX
2080e74711b8b0c7abd0383ebb70941cdcb779918e12Jim Grosbach@------------------------------------------------------------------------------
2081e74711b8b0c7abd0383ebb70941cdcb779918e12Jim Grosbach        smlad r2, r3, r5, r8
2082e74711b8b0c7abd0383ebb70941cdcb779918e12Jim Grosbach        smladx r2, r3, r5, r8
2083e74711b8b0c7abd0383ebb70941cdcb779918e12Jim Grosbach        itt hi
2084e74711b8b0c7abd0383ebb70941cdcb779918e12Jim Grosbach        smladhi r2, r3, r5, r8
2085e74711b8b0c7abd0383ebb70941cdcb779918e12Jim Grosbach        smladxhi r2, r3, r5, r8
2086e74711b8b0c7abd0383ebb70941cdcb779918e12Jim Grosbach
2087e74711b8b0c7abd0383ebb70941cdcb779918e12Jim Grosbach@ CHECK: smlad	r2, r3, r5, r8          @ encoding: [0x23,0xfb,0x05,0x82]
2088e74711b8b0c7abd0383ebb70941cdcb779918e12Jim Grosbach@ CHECK: smladx	r2, r3, r5, r8          @ encoding: [0x23,0xfb,0x15,0x82]
2089e74711b8b0c7abd0383ebb70941cdcb779918e12Jim Grosbach@ CHECK: itt	hi                      @ encoding: [0x84,0xbf]
2090e74711b8b0c7abd0383ebb70941cdcb779918e12Jim Grosbach@ CHECK: smladhi r2, r3, r5, r8         @ encoding: [0x23,0xfb,0x05,0x82]
2091e74711b8b0c7abd0383ebb70941cdcb779918e12Jim Grosbach@ CHECK: smladxhi	r2, r3, r5, r8  @ encoding: [0x23,0xfb,0x15,0x82]
2092e74711b8b0c7abd0383ebb70941cdcb779918e12Jim Grosbach
2093e74711b8b0c7abd0383ebb70941cdcb779918e12Jim Grosbach
2094e74711b8b0c7abd0383ebb70941cdcb779918e12Jim Grosbach@------------------------------------------------------------------------------
2095837fc5e9d5138ed48a74a672dc4c1525e5975ce8Jim Grosbach@ SMLAL
2096837fc5e9d5138ed48a74a672dc4c1525e5975ce8Jim Grosbach@------------------------------------------------------------------------------
2097837fc5e9d5138ed48a74a672dc4c1525e5975ce8Jim Grosbach        smlal r2, r3, r5, r8
2098837fc5e9d5138ed48a74a672dc4c1525e5975ce8Jim Grosbach        it eq
2099837fc5e9d5138ed48a74a672dc4c1525e5975ce8Jim Grosbach        smlaleq r2, r3, r5, r8
2100837fc5e9d5138ed48a74a672dc4c1525e5975ce8Jim Grosbach
2101837fc5e9d5138ed48a74a672dc4c1525e5975ce8Jim Grosbach@ CHECK: smlal	r2, r3, r5, r8          @ encoding: [0xc5,0xfb,0x08,0x23]
2102837fc5e9d5138ed48a74a672dc4c1525e5975ce8Jim Grosbach@ CHECK: it	eq                      @ encoding: [0x08,0xbf]
2103837fc5e9d5138ed48a74a672dc4c1525e5975ce8Jim Grosbach@ CHECK: smlaleq r2, r3, r5, r8         @ encoding: [0xc5,0xfb,0x08,0x23]
2104837fc5e9d5138ed48a74a672dc4c1525e5975ce8Jim Grosbach
2105837fc5e9d5138ed48a74a672dc4c1525e5975ce8Jim Grosbach
2106837fc5e9d5138ed48a74a672dc4c1525e5975ce8Jim Grosbach@------------------------------------------------------------------------------
21074f2999b2969416aefe9328b73a61f5d64e424a92Jim Grosbach@ SMLALBB/SMLALBT/SMLALTB/SMLALTT
21084f2999b2969416aefe9328b73a61f5d64e424a92Jim Grosbach@------------------------------------------------------------------------------
21094f2999b2969416aefe9328b73a61f5d64e424a92Jim Grosbach        smlalbb r3, r1, r9, r0
21104f2999b2969416aefe9328b73a61f5d64e424a92Jim Grosbach        smlalbt r5, r6, r4, r1
21114f2999b2969416aefe9328b73a61f5d64e424a92Jim Grosbach        smlaltb r4, r2, r3, r2
21124f2999b2969416aefe9328b73a61f5d64e424a92Jim Grosbach        smlaltt r8, r3, r8, r4
21134f2999b2969416aefe9328b73a61f5d64e424a92Jim Grosbach        iteet ge
21144f2999b2969416aefe9328b73a61f5d64e424a92Jim Grosbach        smlalbbge r3, r1, r9, r0
21154f2999b2969416aefe9328b73a61f5d64e424a92Jim Grosbach        smlalbtlt r5, r6, r4, r1
21164f2999b2969416aefe9328b73a61f5d64e424a92Jim Grosbach        smlaltblt r4, r2, r3, r2
21174f2999b2969416aefe9328b73a61f5d64e424a92Jim Grosbach        smlalttge r8, r3, r8, r4
21184f2999b2969416aefe9328b73a61f5d64e424a92Jim Grosbach
21194f2999b2969416aefe9328b73a61f5d64e424a92Jim Grosbach@ CHECK: smlalbb r3, r1, r9, r0         @ encoding: [0xc9,0xfb,0x80,0x31]
21204f2999b2969416aefe9328b73a61f5d64e424a92Jim Grosbach@ CHECK: smlalbt r5, r6, r4, r1         @ encoding: [0xc4,0xfb,0x91,0x56]
21214f2999b2969416aefe9328b73a61f5d64e424a92Jim Grosbach@ CHECK: smlaltb r4, r2, r3, r2         @ encoding: [0xc3,0xfb,0xa2,0x42]
21224f2999b2969416aefe9328b73a61f5d64e424a92Jim Grosbach@ CHECK: smlaltt r8, r3, r8, r4         @ encoding: [0xc8,0xfb,0xb4,0x83]
21234f2999b2969416aefe9328b73a61f5d64e424a92Jim Grosbach@ CHECK: iteet	ge                      @ encoding: [0xad,0xbf]
21244f2999b2969416aefe9328b73a61f5d64e424a92Jim Grosbach@ CHECK: smlalbbge	r3, r1, r9, r0  @ encoding: [0xc9,0xfb,0x80,0x31]
21254f2999b2969416aefe9328b73a61f5d64e424a92Jim Grosbach@ CHECK: smlalbtlt	r5, r6, r4, r1  @ encoding: [0xc4,0xfb,0x91,0x56]
21264f2999b2969416aefe9328b73a61f5d64e424a92Jim Grosbach@ CHECK: smlaltblt	r4, r2, r3, r2  @ encoding: [0xc3,0xfb,0xa2,0x42]
21274f2999b2969416aefe9328b73a61f5d64e424a92Jim Grosbach@ CHECK: smlalttge	r8, r3, r8, r4  @ encoding: [0xc8,0xfb,0xb4,0x83]
21284f2999b2969416aefe9328b73a61f5d64e424a92Jim Grosbach
21294f2999b2969416aefe9328b73a61f5d64e424a92Jim Grosbach
21304f2999b2969416aefe9328b73a61f5d64e424a92Jim Grosbach@------------------------------------------------------------------------------
2131231948f860df79b7f0926305caa065a64d758265Jim Grosbach@ SMLALD/SMLALDX
2132231948f860df79b7f0926305caa065a64d758265Jim Grosbach@------------------------------------------------------------------------------
2133231948f860df79b7f0926305caa065a64d758265Jim Grosbach        smlald r2, r3, r5, r8
2134231948f860df79b7f0926305caa065a64d758265Jim Grosbach        smlaldx r2, r3, r5, r8
2135231948f860df79b7f0926305caa065a64d758265Jim Grosbach        ite eq
2136231948f860df79b7f0926305caa065a64d758265Jim Grosbach        smlaldeq r2, r3, r5, r8
2137231948f860df79b7f0926305caa065a64d758265Jim Grosbach        smlaldxne r2, r3, r5, r8
2138231948f860df79b7f0926305caa065a64d758265Jim Grosbach
2139231948f860df79b7f0926305caa065a64d758265Jim Grosbach@ CHECK: smlald	r2, r3, r5, r8          @ encoding: [0xc5,0xfb,0xc8,0x23]
2140231948f860df79b7f0926305caa065a64d758265Jim Grosbach@ CHECK: smlaldx r2, r3, r5, r8         @ encoding: [0xc5,0xfb,0xd8,0x23]
2141231948f860df79b7f0926305caa065a64d758265Jim Grosbach@ CHECK: ite	eq                      @ encoding: [0x0c,0xbf]
2142231948f860df79b7f0926305caa065a64d758265Jim Grosbach@ CHECK: smlaldeq	r2, r3, r5, r8  @ encoding: [0xc5,0xfb,0xc8,0x23]
2143231948f860df79b7f0926305caa065a64d758265Jim Grosbach@ CHECK: smlaldxne	r2, r3, r5, r8  @ encoding: [0xc5,0xfb,0xd8,0x23]
2144231948f860df79b7f0926305caa065a64d758265Jim Grosbach
2145231948f860df79b7f0926305caa065a64d758265Jim Grosbach
2146231948f860df79b7f0926305caa065a64d758265Jim Grosbach@------------------------------------------------------------------------------
2147f566ca741885285d565ad5347baf9663ed7b7d62Jim Grosbach@ SMLAWB/SMLAWT
2148f566ca741885285d565ad5347baf9663ed7b7d62Jim Grosbach@------------------------------------------------------------------------------
2149f566ca741885285d565ad5347baf9663ed7b7d62Jim Grosbach        smlawb r2, r3, r10, r8
2150f566ca741885285d565ad5347baf9663ed7b7d62Jim Grosbach        smlawt r8, r3, r5, r9
2151f566ca741885285d565ad5347baf9663ed7b7d62Jim Grosbach        ite eq
2152f566ca741885285d565ad5347baf9663ed7b7d62Jim Grosbach        smlawbeq r2, r7, r5, r8
2153f566ca741885285d565ad5347baf9663ed7b7d62Jim Grosbach        smlawtne r1, r3, r0, r8
2154f566ca741885285d565ad5347baf9663ed7b7d62Jim Grosbach
2155f566ca741885285d565ad5347baf9663ed7b7d62Jim Grosbach@ CHECK: smlawb	r2, r3, r10, r8         @ encoding: [0x33,0xfb,0x0a,0x82]
2156f566ca741885285d565ad5347baf9663ed7b7d62Jim Grosbach@ CHECK: smlawt	r8, r3, r5, r9          @ encoding: [0x33,0xfb,0x15,0x98]
2157f566ca741885285d565ad5347baf9663ed7b7d62Jim Grosbach@ CHECK: ite	eq                      @ encoding: [0x0c,0xbf]
2158f566ca741885285d565ad5347baf9663ed7b7d62Jim Grosbach@ CHECK: smlawbeq	r2, r7, r5, r8  @ encoding: [0x37,0xfb,0x05,0x82]
2159f566ca741885285d565ad5347baf9663ed7b7d62Jim Grosbach@ CHECK: smlawtne	r1, r3, r0, r8  @ encoding: [0x33,0xfb,0x10,0x81]
2160f566ca741885285d565ad5347baf9663ed7b7d62Jim Grosbach
2161f566ca741885285d565ad5347baf9663ed7b7d62Jim Grosbach
2162f566ca741885285d565ad5347baf9663ed7b7d62Jim Grosbach@------------------------------------------------------------------------------
2163920ad2b6810e008ad98ee42b51abf791101aa8dfJim Grosbach@ SMLSD/SMLSDX
2164920ad2b6810e008ad98ee42b51abf791101aa8dfJim Grosbach@------------------------------------------------------------------------------
2165920ad2b6810e008ad98ee42b51abf791101aa8dfJim Grosbach        smlsd r2, r3, r5, r8
2166920ad2b6810e008ad98ee42b51abf791101aa8dfJim Grosbach        smlsdx r2, r3, r5, r8
2167920ad2b6810e008ad98ee42b51abf791101aa8dfJim Grosbach        ite le
2168920ad2b6810e008ad98ee42b51abf791101aa8dfJim Grosbach        smlsdle r2, r3, r5, r8
2169920ad2b6810e008ad98ee42b51abf791101aa8dfJim Grosbach        smlsdxgt r2, r3, r5, r8
2170920ad2b6810e008ad98ee42b51abf791101aa8dfJim Grosbach
2171920ad2b6810e008ad98ee42b51abf791101aa8dfJim Grosbach@ CHECK: smlsd	r2, r3, r5, r8          @ encoding: [0x43,0xfb,0x05,0x82]
2172920ad2b6810e008ad98ee42b51abf791101aa8dfJim Grosbach@ CHECK: smlsdx	r2, r3, r5, r8          @ encoding: [0x43,0xfb,0x15,0x82]
2173920ad2b6810e008ad98ee42b51abf791101aa8dfJim Grosbach@ CHECK: ite	le                      @ encoding: [0xd4,0xbf]
2174920ad2b6810e008ad98ee42b51abf791101aa8dfJim Grosbach@ CHECK: smlsdle	r2, r3, r5, r8  @ encoding: [0x43,0xfb,0x05,0x82]
2175920ad2b6810e008ad98ee42b51abf791101aa8dfJim Grosbach@ CHECK: smlsdxgt	r2, r3, r5, r8  @ encoding: [0x43,0xfb,0x15,0x82]
2176920ad2b6810e008ad98ee42b51abf791101aa8dfJim Grosbach
2177920ad2b6810e008ad98ee42b51abf791101aa8dfJim Grosbach
2178920ad2b6810e008ad98ee42b51abf791101aa8dfJim Grosbach@------------------------------------------------------------------------------
21797ff2472b8235d8702bd04bf297d573d06cf6b40dJim Grosbach@ SMLSLD/SMLSLDX
21807ff2472b8235d8702bd04bf297d573d06cf6b40dJim Grosbach@------------------------------------------------------------------------------
21817ff2472b8235d8702bd04bf297d573d06cf6b40dJim Grosbach        smlsld r2, r9, r5, r1
21827ff2472b8235d8702bd04bf297d573d06cf6b40dJim Grosbach        smlsldx r4, r11, r2, r8
21837ff2472b8235d8702bd04bf297d573d06cf6b40dJim Grosbach        ite ge
21847ff2472b8235d8702bd04bf297d573d06cf6b40dJim Grosbach        smlsldge r8, r2, r5, r6
21857ff2472b8235d8702bd04bf297d573d06cf6b40dJim Grosbach        smlsldxlt r1, r0, r3, r8
21867ff2472b8235d8702bd04bf297d573d06cf6b40dJim Grosbach
21877ff2472b8235d8702bd04bf297d573d06cf6b40dJim Grosbach@ CHECK: smlsld	r2, r9, r5, r1          @ encoding: [0xd5,0xfb,0xc1,0x29]
21887ff2472b8235d8702bd04bf297d573d06cf6b40dJim Grosbach@ CHECK: smlsldx	r4, r11, r2, r8 @ encoding: [0xd2,0xfb,0xd8,0x4b]
21897ff2472b8235d8702bd04bf297d573d06cf6b40dJim Grosbach@ CHECK: ite	ge                      @ encoding: [0xac,0xbf]
21907ff2472b8235d8702bd04bf297d573d06cf6b40dJim Grosbach@ CHECK: smlsldge	r8, r2, r5, r6  @ encoding: [0xd5,0xfb,0xc6,0x82]
21917ff2472b8235d8702bd04bf297d573d06cf6b40dJim Grosbach@ CHECK: smlsldxlt	r1, r0, r3, r8  @ encoding: [0xd3,0xfb,0xd8,0x10]
21927ff2472b8235d8702bd04bf297d573d06cf6b40dJim Grosbach
21937ff2472b8235d8702bd04bf297d573d06cf6b40dJim Grosbach
21947ff2472b8235d8702bd04bf297d573d06cf6b40dJim Grosbach@------------------------------------------------------------------------------
21953b61d23297a8401fb1aadf129fdfa282f175f88dJim Grosbach@ SMMLA/SMMLAR
21963b61d23297a8401fb1aadf129fdfa282f175f88dJim Grosbach@------------------------------------------------------------------------------
21973b61d23297a8401fb1aadf129fdfa282f175f88dJim Grosbach        smmla r1, r2, r3, r4
21983b61d23297a8401fb1aadf129fdfa282f175f88dJim Grosbach        smmlar r4, r3, r2, r1
21993b61d23297a8401fb1aadf129fdfa282f175f88dJim Grosbach        ite lo
22003b61d23297a8401fb1aadf129fdfa282f175f88dJim Grosbach        smmlalo r1, r2, r3, r4
22013b61d23297a8401fb1aadf129fdfa282f175f88dJim Grosbach        smmlarcs r4, r3, r2, r1
22023b61d23297a8401fb1aadf129fdfa282f175f88dJim Grosbach
22033b61d23297a8401fb1aadf129fdfa282f175f88dJim Grosbach@ CHECK: smmla	r1, r2, r3, r4          @ encoding: [0x52,0xfb,0x03,0x41]
22043b61d23297a8401fb1aadf129fdfa282f175f88dJim Grosbach@ CHECK: smmlar	r4, r3, r2, r1          @ encoding: [0x53,0xfb,0x12,0x14]
22053b61d23297a8401fb1aadf129fdfa282f175f88dJim Grosbach@ CHECK: ite	lo                      @ encoding: [0x34,0xbf]
22063b61d23297a8401fb1aadf129fdfa282f175f88dJim Grosbach@ CHECK: smmlalo	r1, r2, r3, r4  @ encoding: [0x52,0xfb,0x03,0x41]
22073b61d23297a8401fb1aadf129fdfa282f175f88dJim Grosbach@ CHECK: smmlarhs	r4, r3, r2, r1  @ encoding: [0x53,0xfb,0x12,0x14]
22083b61d23297a8401fb1aadf129fdfa282f175f88dJim Grosbach
22093b61d23297a8401fb1aadf129fdfa282f175f88dJim Grosbach
22103b61d23297a8401fb1aadf129fdfa282f175f88dJim Grosbach@------------------------------------------------------------------------------
2211cb574bb71edcb816509db434d220e9e1bb51d53dJim Grosbach@ SMMLS/SMMLSR
2212cb574bb71edcb816509db434d220e9e1bb51d53dJim Grosbach@------------------------------------------------------------------------------
2213cb574bb71edcb816509db434d220e9e1bb51d53dJim Grosbach        smmls r1, r2, r3, r4
2214cb574bb71edcb816509db434d220e9e1bb51d53dJim Grosbach        smmlsr r4, r3, r2, r1
2215cb574bb71edcb816509db434d220e9e1bb51d53dJim Grosbach        ite lo
2216cb574bb71edcb816509db434d220e9e1bb51d53dJim Grosbach        smmlslo r1, r2, r3, r4
2217cb574bb71edcb816509db434d220e9e1bb51d53dJim Grosbach        smmlsrcs r4, r3, r2, r1
2218cb574bb71edcb816509db434d220e9e1bb51d53dJim Grosbach
2219cb574bb71edcb816509db434d220e9e1bb51d53dJim Grosbach@ CHECK: smmls	r1, r2, r3, r4          @ encoding: [0x62,0xfb,0x03,0x41]
2220cb574bb71edcb816509db434d220e9e1bb51d53dJim Grosbach@ CHECK: smmlsr	r4, r3, r2, r1          @ encoding: [0x63,0xfb,0x12,0x14]
2221cb574bb71edcb816509db434d220e9e1bb51d53dJim Grosbach@ CHECK: ite	lo                      @ encoding: [0x34,0xbf]
2222cb574bb71edcb816509db434d220e9e1bb51d53dJim Grosbach@ CHECK: smmlslo	r1, r2, r3, r4  @ encoding: [0x62,0xfb,0x03,0x41]
2223cb574bb71edcb816509db434d220e9e1bb51d53dJim Grosbach@ CHECK: smmlsrhs	r4, r3, r2, r1  @ encoding: [0x63,0xfb,0x12,0x14]
2224cb574bb71edcb816509db434d220e9e1bb51d53dJim Grosbach
2225cb574bb71edcb816509db434d220e9e1bb51d53dJim Grosbach
2226cb574bb71edcb816509db434d220e9e1bb51d53dJim Grosbach@------------------------------------------------------------------------------
2227f3578a84974e0291582966e4a3aebf3802ab211bJim Grosbach@ SMMUL/SMMULR
2228f3578a84974e0291582966e4a3aebf3802ab211bJim Grosbach@------------------------------------------------------------------------------
2229f3578a84974e0291582966e4a3aebf3802ab211bJim Grosbach        smmul r2, r3, r4
2230f3578a84974e0291582966e4a3aebf3802ab211bJim Grosbach        smmulr r3, r2, r1
2231f3578a84974e0291582966e4a3aebf3802ab211bJim Grosbach        ite cc
2232f3578a84974e0291582966e4a3aebf3802ab211bJim Grosbach        smmulcc r2, r3, r4
2233f3578a84974e0291582966e4a3aebf3802ab211bJim Grosbach        smmulrhs r3, r2, r1
2234f3578a84974e0291582966e4a3aebf3802ab211bJim Grosbach
2235f3578a84974e0291582966e4a3aebf3802ab211bJim Grosbach@ CHECK: smmul	r2, r3, r4              @ encoding: [0x53,0xfb,0x04,0xf2]
2236f3578a84974e0291582966e4a3aebf3802ab211bJim Grosbach@ CHECK: smmulr	r3, r2, r1              @ encoding: [0x52,0xfb,0x11,0xf3]
2237f3578a84974e0291582966e4a3aebf3802ab211bJim Grosbach@ CHECK: ite	lo                      @ encoding: [0x34,0xbf]
2238f3578a84974e0291582966e4a3aebf3802ab211bJim Grosbach@ CHECK: smmullo	r2, r3, r4      @ encoding: [0x53,0xfb,0x04,0xf2]
2239f3578a84974e0291582966e4a3aebf3802ab211bJim Grosbach@ CHECK: smmulrhs	r3, r2, r1      @ encoding: [0x52,0xfb,0x11,0xf3]
2240f3578a84974e0291582966e4a3aebf3802ab211bJim Grosbach
2241f3578a84974e0291582966e4a3aebf3802ab211bJim Grosbach
2242f3578a84974e0291582966e4a3aebf3802ab211bJim Grosbach@------------------------------------------------------------------------------
2243c9592cbad501956c71cd9e7f515f48e2b05b6052Jim Grosbach@ SMUAD/SMUADX
2244c9592cbad501956c71cd9e7f515f48e2b05b6052Jim Grosbach@------------------------------------------------------------------------------
2245c9592cbad501956c71cd9e7f515f48e2b05b6052Jim Grosbach        smuad r2, r3, r4
2246c9592cbad501956c71cd9e7f515f48e2b05b6052Jim Grosbach        smuadx r3, r2, r1
2247c9592cbad501956c71cd9e7f515f48e2b05b6052Jim Grosbach        ite lt
2248c9592cbad501956c71cd9e7f515f48e2b05b6052Jim Grosbach        smuadlt r2, r3, r4
2249c9592cbad501956c71cd9e7f515f48e2b05b6052Jim Grosbach        smuadxge r3, r2, r1
2250c9592cbad501956c71cd9e7f515f48e2b05b6052Jim Grosbach
2251c9592cbad501956c71cd9e7f515f48e2b05b6052Jim Grosbach@ CHECK: smuad	r2, r3, r4              @ encoding: [0x23,0xfb,0x04,0xf2]
2252c9592cbad501956c71cd9e7f515f48e2b05b6052Jim Grosbach@ CHECK: smuadx	r3, r2, r1              @ encoding: [0x22,0xfb,0x11,0xf3]
2253c9592cbad501956c71cd9e7f515f48e2b05b6052Jim Grosbach@ CHECK: ite	lt                      @ encoding: [0xb4,0xbf]
2254c9592cbad501956c71cd9e7f515f48e2b05b6052Jim Grosbach@ CHECK: smuadlt	r2, r3, r4      @ encoding: [0x23,0xfb,0x04,0xf2]
2255c9592cbad501956c71cd9e7f515f48e2b05b6052Jim Grosbach@ CHECK: smuadxge	r3, r2, r1      @ encoding: [0x22,0xfb,0x11,0xf3]
2256c9592cbad501956c71cd9e7f515f48e2b05b6052Jim Grosbach
2257c9592cbad501956c71cd9e7f515f48e2b05b6052Jim Grosbach
2258c9592cbad501956c71cd9e7f515f48e2b05b6052Jim Grosbach@------------------------------------------------------------------------------
2259d727148c21f7294032a07f7e66b4aa06085c7f0bJim Grosbach@ SMULBB/SMULBT/SMULTB/SMULTT
2260d727148c21f7294032a07f7e66b4aa06085c7f0bJim Grosbach@------------------------------------------------------------------------------
2261d727148c21f7294032a07f7e66b4aa06085c7f0bJim Grosbach        smulbb r3, r9, r0
2262d727148c21f7294032a07f7e66b4aa06085c7f0bJim Grosbach        smulbt r5, r4, r1
2263d727148c21f7294032a07f7e66b4aa06085c7f0bJim Grosbach        smultb r4, r2, r2
2264d727148c21f7294032a07f7e66b4aa06085c7f0bJim Grosbach        smultt r8, r3, r4
2265d727148c21f7294032a07f7e66b4aa06085c7f0bJim Grosbach        itete ge
2266d727148c21f7294032a07f7e66b4aa06085c7f0bJim Grosbach        smulbbge r1, r9, r0
2267d727148c21f7294032a07f7e66b4aa06085c7f0bJim Grosbach        smulbtlt r5, r6, r4
2268d727148c21f7294032a07f7e66b4aa06085c7f0bJim Grosbach        smultbge r2, r3, r2
2269d727148c21f7294032a07f7e66b4aa06085c7f0bJim Grosbach        smulttlt r8, r3, r4
2270d727148c21f7294032a07f7e66b4aa06085c7f0bJim Grosbach
2271d727148c21f7294032a07f7e66b4aa06085c7f0bJim Grosbach@ CHECK: smulbb	r3, r9, r0              @ encoding: [0x19,0xfb,0x00,0xf3]
2272d727148c21f7294032a07f7e66b4aa06085c7f0bJim Grosbach@ CHECK: smulbt	r5, r4, r1              @ encoding: [0x14,0xfb,0x11,0xf5]
2273d727148c21f7294032a07f7e66b4aa06085c7f0bJim Grosbach@ CHECK: smultb	r4, r2, r2              @ encoding: [0x12,0xfb,0x22,0xf4]
2274d727148c21f7294032a07f7e66b4aa06085c7f0bJim Grosbach@ CHECK: smultt	r8, r3, r4              @ encoding: [0x13,0xfb,0x34,0xf8]
2275d727148c21f7294032a07f7e66b4aa06085c7f0bJim Grosbach@ CHECK: itete	ge                      @ encoding: [0xab,0xbf]
2276d727148c21f7294032a07f7e66b4aa06085c7f0bJim Grosbach@ CHECK: smulbbge	r1, r9, r0      @ encoding: [0x19,0xfb,0x00,0xf1]
2277d727148c21f7294032a07f7e66b4aa06085c7f0bJim Grosbach@ CHECK: smulbtlt	r5, r6, r4      @ encoding: [0x16,0xfb,0x14,0xf5]
2278d727148c21f7294032a07f7e66b4aa06085c7f0bJim Grosbach@ CHECK: smultbge	r2, r3, r2      @ encoding: [0x13,0xfb,0x22,0xf2]
2279d727148c21f7294032a07f7e66b4aa06085c7f0bJim Grosbach@ CHECK: smulttlt	r8, r3, r4      @ encoding: [0x13,0xfb,0x34,0xf8]
2280d727148c21f7294032a07f7e66b4aa06085c7f0bJim Grosbach
2281d727148c21f7294032a07f7e66b4aa06085c7f0bJim Grosbach
2282d727148c21f7294032a07f7e66b4aa06085c7f0bJim Grosbach@------------------------------------------------------------------------------
22833443ed525a3bce98bacabb5aa8e67bee6def3b09Jim Grosbach@ SMULL
22843443ed525a3bce98bacabb5aa8e67bee6def3b09Jim Grosbach@------------------------------------------------------------------------------
22853443ed525a3bce98bacabb5aa8e67bee6def3b09Jim Grosbach        smull r3, r9, r0, r1
22863443ed525a3bce98bacabb5aa8e67bee6def3b09Jim Grosbach        it eq
22873443ed525a3bce98bacabb5aa8e67bee6def3b09Jim Grosbach        smulleq r8, r3, r4, r5
22883443ed525a3bce98bacabb5aa8e67bee6def3b09Jim Grosbach
22893443ed525a3bce98bacabb5aa8e67bee6def3b09Jim Grosbach@ CHECK: smull	r3, r9, r0, r1          @ encoding: [0x80,0xfb,0x01,0x39]
22903443ed525a3bce98bacabb5aa8e67bee6def3b09Jim Grosbach@ CHECK: it	eq                      @ encoding: [0x08,0xbf]
22913443ed525a3bce98bacabb5aa8e67bee6def3b09Jim Grosbach@ CHECK: smulleq r8, r3, r4, r5         @ encoding: [0x84,0xfb,0x05,0x83]
22923443ed525a3bce98bacabb5aa8e67bee6def3b09Jim Grosbach
22933443ed525a3bce98bacabb5aa8e67bee6def3b09Jim Grosbach
22943443ed525a3bce98bacabb5aa8e67bee6def3b09Jim Grosbach@------------------------------------------------------------------------------
229541ca75bed0e32d4ba4fafd445e6641b34e490046Jim Grosbach@ SMULWB/SMULWT
229641ca75bed0e32d4ba4fafd445e6641b34e490046Jim Grosbach@------------------------------------------------------------------------------
229741ca75bed0e32d4ba4fafd445e6641b34e490046Jim Grosbach        smulwb r3, r9, r0
229841ca75bed0e32d4ba4fafd445e6641b34e490046Jim Grosbach        smulwt r3, r9, r2
229941ca75bed0e32d4ba4fafd445e6641b34e490046Jim Grosbach        ite gt
230041ca75bed0e32d4ba4fafd445e6641b34e490046Jim Grosbach        smulwbgt r3, r9, r0
230141ca75bed0e32d4ba4fafd445e6641b34e490046Jim Grosbach        smulwtle r3, r9, r2
230241ca75bed0e32d4ba4fafd445e6641b34e490046Jim Grosbach
230341ca75bed0e32d4ba4fafd445e6641b34e490046Jim Grosbach@ CHECK: smulwb	r3, r9, r0              @ encoding: [0x39,0xfb,0x00,0xf3]
230441ca75bed0e32d4ba4fafd445e6641b34e490046Jim Grosbach@ CHECK: smulwt	r3, r9, r2              @ encoding: [0x39,0xfb,0x12,0xf3]
230541ca75bed0e32d4ba4fafd445e6641b34e490046Jim Grosbach@ CHECK: ite	gt                      @ encoding: [0xcc,0xbf]
230641ca75bed0e32d4ba4fafd445e6641b34e490046Jim Grosbach@ CHECK: smulwbgt	r3, r9, r0      @ encoding: [0x39,0xfb,0x00,0xf3]
230741ca75bed0e32d4ba4fafd445e6641b34e490046Jim Grosbach@ CHECK: smulwtle	r3, r9, r2      @ encoding: [0x39,0xfb,0x12,0xf3]
230841ca75bed0e32d4ba4fafd445e6641b34e490046Jim Grosbach
230941ca75bed0e32d4ba4fafd445e6641b34e490046Jim Grosbach
231041ca75bed0e32d4ba4fafd445e6641b34e490046Jim Grosbach@------------------------------------------------------------------------------
2311dea84127840ad38100569d2cc5045c5086ee668dJim Grosbach@ SMUSD/SMUSDX
2312dea84127840ad38100569d2cc5045c5086ee668dJim Grosbach@------------------------------------------------------------------------------
2313dea84127840ad38100569d2cc5045c5086ee668dJim Grosbach        smusd r3, r0, r1
2314dea84127840ad38100569d2cc5045c5086ee668dJim Grosbach        smusdx r3, r9, r2
2315dea84127840ad38100569d2cc5045c5086ee668dJim Grosbach        ite eq
2316dea84127840ad38100569d2cc5045c5086ee668dJim Grosbach        smusdeq r8, r3, r2
2317dea84127840ad38100569d2cc5045c5086ee668dJim Grosbach        smusdxne r7, r4, r3
2318dea84127840ad38100569d2cc5045c5086ee668dJim Grosbach
2319dea84127840ad38100569d2cc5045c5086ee668dJim Grosbach@ CHECK: smusd	r3, r0, r1              @ encoding: [0x40,0xfb,0x01,0xf3]
2320dea84127840ad38100569d2cc5045c5086ee668dJim Grosbach@ CHECK: smusdx	r3, r9, r2              @ encoding: [0x49,0xfb,0x12,0xf3]
2321dea84127840ad38100569d2cc5045c5086ee668dJim Grosbach@ CHECK: ite	eq                      @ encoding: [0x0c,0xbf]
2322dea84127840ad38100569d2cc5045c5086ee668dJim Grosbach@ CHECK: smusdeq	r8, r3, r2      @ encoding: [0x43,0xfb,0x02,0xf8]
2323dea84127840ad38100569d2cc5045c5086ee668dJim Grosbach@ CHECK: smusdxne	r7, r4, r3      @ encoding: [0x44,0xfb,0x13,0xf7]
2324dea84127840ad38100569d2cc5045c5086ee668dJim Grosbach
2325dea84127840ad38100569d2cc5045c5086ee668dJim Grosbach
2326dea84127840ad38100569d2cc5045c5086ee668dJim Grosbach@------------------------------------------------------------------------------
232705ec8f7ac90179cccb476512c872db95bfec418dJim Grosbach@ SRS
232805ec8f7ac90179cccb476512c872db95bfec418dJim Grosbach@------------------------------------------------------------------------------
232905ec8f7ac90179cccb476512c872db95bfec418dJim Grosbach        srsdb sp, #1
233005ec8f7ac90179cccb476512c872db95bfec418dJim Grosbach        srsia sp, #0
233105ec8f7ac90179cccb476512c872db95bfec418dJim Grosbach
233205ec8f7ac90179cccb476512c872db95bfec418dJim Grosbach        srsdb sp!, #19
233305ec8f7ac90179cccb476512c872db95bfec418dJim Grosbach        srsia sp!, #2
233405ec8f7ac90179cccb476512c872db95bfec418dJim Grosbach
233505ec8f7ac90179cccb476512c872db95bfec418dJim Grosbach        srsea sp, #10
233605ec8f7ac90179cccb476512c872db95bfec418dJim Grosbach        srsfd sp, #9
233705ec8f7ac90179cccb476512c872db95bfec418dJim Grosbach
233805ec8f7ac90179cccb476512c872db95bfec418dJim Grosbach        srsea sp!, #5
233905ec8f7ac90179cccb476512c872db95bfec418dJim Grosbach        srsfd sp!, #5
234005ec8f7ac90179cccb476512c872db95bfec418dJim Grosbach
234105ec8f7ac90179cccb476512c872db95bfec418dJim Grosbach        srs sp, #5
234205ec8f7ac90179cccb476512c872db95bfec418dJim Grosbach        srs sp!, #5
234305ec8f7ac90179cccb476512c872db95bfec418dJim Grosbach
234405ec8f7ac90179cccb476512c872db95bfec418dJim Grosbach@ CHECK: srsdb	sp, #1                  @ encoding: [0x0d,0xe8,0x01,0xc0]
234505ec8f7ac90179cccb476512c872db95bfec418dJim Grosbach@ CHECK: srsia	sp, #0                  @ encoding: [0x8d,0xe9,0x00,0xc0]
234605ec8f7ac90179cccb476512c872db95bfec418dJim Grosbach@ CHECK: srsdb	sp!, #19                @ encoding: [0x2d,0xe8,0x13,0xc0]
234705ec8f7ac90179cccb476512c872db95bfec418dJim Grosbach@ CHECK: srsia	sp!, #2                 @ encoding: [0xad,0xe9,0x02,0xc0]
234805ec8f7ac90179cccb476512c872db95bfec418dJim Grosbach@ CHECK: srsdb	sp, #10                 @ encoding: [0x0d,0xe8,0x0a,0xc0]
234905ec8f7ac90179cccb476512c872db95bfec418dJim Grosbach@ CHECK: srsia	sp, #9                  @ encoding: [0x8d,0xe9,0x09,0xc0]
235005ec8f7ac90179cccb476512c872db95bfec418dJim Grosbach@ CHECK: srsdb	sp!, #5                 @ encoding: [0x2d,0xe8,0x05,0xc0]
235105ec8f7ac90179cccb476512c872db95bfec418dJim Grosbach@ CHECK: srsia	sp!, #5                 @ encoding: [0xad,0xe9,0x05,0xc0]
235205ec8f7ac90179cccb476512c872db95bfec418dJim Grosbach@ CHECK: srsia	sp, #5                  @ encoding: [0x8d,0xe9,0x05,0xc0]
235305ec8f7ac90179cccb476512c872db95bfec418dJim Grosbach@ CHECK: srsia	sp!, #5                 @ encoding: [0xad,0xe9,0x05,0xc0]
235405ec8f7ac90179cccb476512c872db95bfec418dJim Grosbach
235505ec8f7ac90179cccb476512c872db95bfec418dJim Grosbach
235605ec8f7ac90179cccb476512c872db95bfec418dJim Grosbach@------------------------------------------------------------------------------
2357b105b997a49c809bfd464ae7691d5ee45d34f446Jim Grosbach@ SSAT
2358b105b997a49c809bfd464ae7691d5ee45d34f446Jim Grosbach@------------------------------------------------------------------------------
2359b105b997a49c809bfd464ae7691d5ee45d34f446Jim Grosbach        ssat	r8, #1, r10
2360b105b997a49c809bfd464ae7691d5ee45d34f446Jim Grosbach        ssat	r8, #1, r10, lsl #0
2361b105b997a49c809bfd464ae7691d5ee45d34f446Jim Grosbach        ssat	r8, #1, r10, lsl #31
2362b105b997a49c809bfd464ae7691d5ee45d34f446Jim Grosbach        ssat	r8, #1, r10, asr #1
2363b105b997a49c809bfd464ae7691d5ee45d34f446Jim Grosbach
2364b105b997a49c809bfd464ae7691d5ee45d34f446Jim Grosbach@ CHECK: ssat	r8, #1, r10             @ encoding: [0x0a,0xf3,0x00,0x08]
2365b105b997a49c809bfd464ae7691d5ee45d34f446Jim Grosbach@ CHECK: ssat	r8, #1, r10             @ encoding: [0x0a,0xf3,0x00,0x08]
2366b105b997a49c809bfd464ae7691d5ee45d34f446Jim Grosbach@ CHECK: ssat	r8, #1, r10, lsl #31    @ encoding: [0x0a,0xf3,0xc0,0x78]
2367b105b997a49c809bfd464ae7691d5ee45d34f446Jim Grosbach@ CHECK: ssat	r8, #1, r10, asr #1     @ encoding: [0x2a,0xf3,0x40,0x08]
2368b105b997a49c809bfd464ae7691d5ee45d34f446Jim Grosbach
2369b105b997a49c809bfd464ae7691d5ee45d34f446Jim Grosbach
2370b105b997a49c809bfd464ae7691d5ee45d34f446Jim Grosbach@------------------------------------------------------------------------------
23719f4ddb3efa0f76d7c2463648eca9d82403c2e8a3Jim Grosbach@ SSAT16
23729f4ddb3efa0f76d7c2463648eca9d82403c2e8a3Jim Grosbach@------------------------------------------------------------------------------
23739f4ddb3efa0f76d7c2463648eca9d82403c2e8a3Jim Grosbach        ssat16	r2, #1, r7
23749f4ddb3efa0f76d7c2463648eca9d82403c2e8a3Jim Grosbach        ssat16	r3, #16, r5
23759f4ddb3efa0f76d7c2463648eca9d82403c2e8a3Jim Grosbach
23769f4ddb3efa0f76d7c2463648eca9d82403c2e8a3Jim Grosbach@ CHECK: ssat16	r2, #1, r7              @ encoding: [0x27,0xf3,0x00,0x02]
23779f4ddb3efa0f76d7c2463648eca9d82403c2e8a3Jim Grosbach@ CHECK: ssat16	r3, #16, r5             @ encoding: [0x25,0xf3,0x0f,0x03]
23789f4ddb3efa0f76d7c2463648eca9d82403c2e8a3Jim Grosbach
23799f4ddb3efa0f76d7c2463648eca9d82403c2e8a3Jim Grosbach
23809f4ddb3efa0f76d7c2463648eca9d82403c2e8a3Jim Grosbach@------------------------------------------------------------------------------
238150bd470d85c63860f887b7c3e5724c9fd43ef3a2Jim Grosbach@ SSAX
238250bd470d85c63860f887b7c3e5724c9fd43ef3a2Jim Grosbach@------------------------------------------------------------------------------
238350bd470d85c63860f887b7c3e5724c9fd43ef3a2Jim Grosbach        ssubaddx r2, r3, r4
238450bd470d85c63860f887b7c3e5724c9fd43ef3a2Jim Grosbach        it lt
238550bd470d85c63860f887b7c3e5724c9fd43ef3a2Jim Grosbach        ssubaddxlt r2, r3, r4
238650bd470d85c63860f887b7c3e5724c9fd43ef3a2Jim Grosbach        ssax r2, r3, r4
238750bd470d85c63860f887b7c3e5724c9fd43ef3a2Jim Grosbach        it lt
238850bd470d85c63860f887b7c3e5724c9fd43ef3a2Jim Grosbach        ssaxlt r2, r3, r4
238950bd470d85c63860f887b7c3e5724c9fd43ef3a2Jim Grosbach
239050bd470d85c63860f887b7c3e5724c9fd43ef3a2Jim Grosbach@ CHECK: ssax	r2, r3, r4              @ encoding: [0xe3,0xfa,0x04,0xf2]
239150bd470d85c63860f887b7c3e5724c9fd43ef3a2Jim Grosbach@ CHECK: it	lt                      @ encoding: [0xb8,0xbf]
239250bd470d85c63860f887b7c3e5724c9fd43ef3a2Jim Grosbach@ CHECK: ssaxlt	r2, r3, r4              @ encoding: [0xe3,0xfa,0x04,0xf2]
239350bd470d85c63860f887b7c3e5724c9fd43ef3a2Jim Grosbach@ CHECK: ssax	r2, r3, r4              @ encoding: [0xe3,0xfa,0x04,0xf2]
239450bd470d85c63860f887b7c3e5724c9fd43ef3a2Jim Grosbach@ CHECK: it	lt                      @ encoding: [0xb8,0xbf]
239550bd470d85c63860f887b7c3e5724c9fd43ef3a2Jim Grosbach@ CHECK: ssaxlt	r2, r3, r4              @ encoding: [0xe3,0xfa,0x04,0xf2]
239650bd470d85c63860f887b7c3e5724c9fd43ef3a2Jim Grosbach
239750bd470d85c63860f887b7c3e5724c9fd43ef3a2Jim Grosbach
239850bd470d85c63860f887b7c3e5724c9fd43ef3a2Jim Grosbach@------------------------------------------------------------------------------
23993335029b1f4cd663411277aa2f93b4eaa7a0289eJim Grosbach@ SSUB16/SSUB8
24003335029b1f4cd663411277aa2f93b4eaa7a0289eJim Grosbach@------------------------------------------------------------------------------
24013335029b1f4cd663411277aa2f93b4eaa7a0289eJim Grosbach        ssub16 r1, r0, r6
24023335029b1f4cd663411277aa2f93b4eaa7a0289eJim Grosbach        ssub8 r9, r2, r4
24033335029b1f4cd663411277aa2f93b4eaa7a0289eJim Grosbach        ite ne
24043335029b1f4cd663411277aa2f93b4eaa7a0289eJim Grosbach        ssub16ne r5, r3, r2
24053335029b1f4cd663411277aa2f93b4eaa7a0289eJim Grosbach        ssub8eq r5, r1, r2
24063335029b1f4cd663411277aa2f93b4eaa7a0289eJim Grosbach
24073335029b1f4cd663411277aa2f93b4eaa7a0289eJim Grosbach@ CHECK: ssub16	r1, r0, r6              @ encoding: [0xd0,0xfa,0x06,0xf1]
24083335029b1f4cd663411277aa2f93b4eaa7a0289eJim Grosbach@ CHECK: ssub8	r9, r2, r4              @ encoding: [0xc2,0xfa,0x04,0xf9]
24093335029b1f4cd663411277aa2f93b4eaa7a0289eJim Grosbach@ CHECK: ite	ne                      @ encoding: [0x14,0xbf]
24103335029b1f4cd663411277aa2f93b4eaa7a0289eJim Grosbach@ CHECK: ssub16ne	r5, r3, r2      @ encoding: [0xd3,0xfa,0x02,0xf5]
24113335029b1f4cd663411277aa2f93b4eaa7a0289eJim Grosbach@ CHECK: ssub8eq	r5, r1, r2      @ encoding: [0xc1,0xfa,0x02,0xf5]
24123335029b1f4cd663411277aa2f93b4eaa7a0289eJim Grosbach
24133335029b1f4cd663411277aa2f93b4eaa7a0289eJim Grosbach
24143335029b1f4cd663411277aa2f93b4eaa7a0289eJim Grosbach@------------------------------------------------------------------------------
2415c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ STC{L}/STC2{L}
2416c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@------------------------------------------------------------------------------
2417c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        stc2 p0, c8, [r1, #4]
2418c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        stc2 p1, c7, [r2]
2419c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        stc2 p2, c6, [r3, #-224]
2420c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        stc2 p3, c5, [r4, #-120]!
2421c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        stc2 p4, c4, [r5], #16
2422c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        stc2 p5, c3, [r6], #-72
2423c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        stc2l p6, c2, [r7, #4]
2424c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        stc2l p7, c1, [r8]
2425c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        stc2l p8, c0, [r9, #-224]
2426c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        stc2l p9, c1, [r10, #-120]!
2427c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        stc2l p10, c2, [r11], #16
2428c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        stc2l p11, c3, [r12], #-72
2429c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach
2430c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        stc p12, c4, [r0, #4]
2431c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        stc p13, c5, [r1]
2432c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        stc p14, c6, [r2, #-224]
2433c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        stc p15, c7, [r3, #-120]!
2434c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        stc p5, c8, [r4], #16
2435c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        stc p4, c9, [r5], #-72
2436c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        stcl p3, c10, [r6, #4]
2437c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        stcl p2, c11, [r7]
2438c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        stcl p1, c12, [r8, #-224]
2439c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        stcl p0, c13, [r9, #-120]!
2440c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        stcl p6, c14, [r10], #16
2441c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        stcl p7, c15, [r11], #-72
2442c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach
2443c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach        stc2 p2, c8, [r1], { 25 }
2444c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach
2445c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: stc2	p0, c8, [r1, #4]        @ encoding: [0x81,0xfd,0x01,0x80]
2446c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: stc2	p1, c7, [r2]            @ encoding: [0x82,0xfd,0x00,0x71]
2447c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: stc2	p2, c6, [r3, #-224]     @ encoding: [0x03,0xfd,0x38,0x62]
2448c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: stc2	p3, c5, [r4, #-120]!    @ encoding: [0x24,0xfd,0x1e,0x53]
2449c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: stc2	p4, c4, [r5], #16       @ encoding: [0xa5,0xfc,0x04,0x44]
2450c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: stc2	p5, c3, [r6], #-72      @ encoding: [0x26,0xfc,0x12,0x35]
2451c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: stc2l	p6, c2, [r7, #4]        @ encoding: [0xc7,0xfd,0x01,0x26]
2452c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: stc2l	p7, c1, [r8]            @ encoding: [0xc8,0xfd,0x00,0x17]
2453c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: stc2l	p8, c0, [r9, #-224]     @ encoding: [0x49,0xfd,0x38,0x08]
2454c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: stc2l	p9, c1, [r10, #-120]!   @ encoding: [0x6a,0xfd,0x1e,0x19]
2455c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: stc2l	p10, c2, [r11], #16     @ encoding: [0xeb,0xfc,0x04,0x2a]
2456c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: stc2l	p11, c3, [r12], #-72    @ encoding: [0x6c,0xfc,0x12,0x3b]
2457c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach
2458c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: stc	p12, c4, [r0, #4]       @ encoding: [0x80,0xed,0x01,0x4c]
2459c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: stc	p13, c5, [r1]           @ encoding: [0x81,0xed,0x00,0x5d]
2460c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: stc	p14, c6, [r2, #-224]    @ encoding: [0x02,0xed,0x38,0x6e]
2461c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: stc	p15, c7, [r3, #-120]!   @ encoding: [0x23,0xed,0x1e,0x7f]
2462c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: stc	p5, c8, [r4], #16       @ encoding: [0xa4,0xec,0x04,0x85]
2463c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: stc	p4, c9, [r5], #-72      @ encoding: [0x25,0xec,0x12,0x94]
2464c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: stcl	p3, c10, [r6, #4]       @ encoding: [0xc6,0xed,0x01,0xa3]
2465c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: stcl	p2, c11, [r7]           @ encoding: [0xc7,0xed,0x00,0xb2]
2466c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: stcl	p1, c12, [r8, #-224]    @ encoding: [0x48,0xed,0x38,0xc1]
2467c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: stcl	p0, c13, [r9, #-120]!   @ encoding: [0x69,0xed,0x1e,0xd0]
2468c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: stcl	p6, c14, [r10], #16     @ encoding: [0xea,0xec,0x04,0xe6]
2469c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: stcl	p7, c15, [r11], #-72    @ encoding: [0x6b,0xec,0x12,0xf7]
2470c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach
2471c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@ CHECK: stc2	p2, c8, [r1], {25}      @ encoding: [0x81,0xfc,0x19,0x82]
2472c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach
2473c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach
2474c66e7afcf2810a2c1ebf08514eaf45c478e5ff67Jim Grosbach@------------------------------------------------------------------------------
24758213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach@ STMIA
24768213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach@------------------------------------------------------------------------------
24778213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach        stmia.w r4, {r4, r5, r8, r9}
24788213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach        stmia.w r4, {r5, r6}
24798213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach        stmia.w r5!, {r3, r8}
24808213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach        stm.w r4, {r4, r5, r8, r9}
24818213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach        stm.w r4, {r5, r6}
24828213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach        stm.w r5!, {r3, r8}
24838213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach        stm.w r5!, {r1, r2}
24848213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach        stm.w r2, {r1, r2}
24858213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach
24868213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach        stmia r4, {r4, r5, r8, r9}
24878213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach        stmia r4, {r5, r6}
24888213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach        stmia r5!, {r3, r8}
24898213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach        stm r4, {r4, r5, r8, r9}
24908213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach        stm r4, {r5, r6}
24918213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach        stm r5!, {r3, r8}
24928213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach        stmea r5!, {r3, r8}
24938213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach
24948213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach@ CHECK: stm.w	r4, {r4, r5, r8, r9}    @ encoding: [0x84,0xe8,0x30,0x03]
24958213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach@ CHECK: stm.w	r4, {r5, r6}            @ encoding: [0x84,0xe8,0x60,0x00]
24968213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach@ CHECK: stm.w	r5!, {r3, r8}           @ encoding: [0xa5,0xe8,0x08,0x01]
24978213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach@ CHECK: stm.w	r4, {r4, r5, r8, r9}    @ encoding: [0x84,0xe8,0x30,0x03]
24988213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach@ CHECK: stm.w	r4, {r5, r6}            @ encoding: [0x84,0xe8,0x60,0x00]
24998213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach@ CHECK: stm.w	r5!, {r3, r8}           @ encoding: [0xa5,0xe8,0x08,0x01]
25008213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach@ CHECK: stm.w	r5!, {r1, r2}           @ encoding: [0xa5,0xe8,0x06,0x00]
25018213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach@ CHECK: stm.w	r2, {r1, r2}            @ encoding: [0x82,0xe8,0x06,0x00]
25028213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach
25038213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach@ CHECK: stm.w	r4, {r4, r5, r8, r9}    @ encoding: [0x84,0xe8,0x30,0x03]
25048213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach@ CHECK: stm.w	r4, {r5, r6}            @ encoding: [0x84,0xe8,0x60,0x00]
25058213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach@ CHECK: stm.w	r5!, {r3, r8}           @ encoding: [0xa5,0xe8,0x08,0x01]
25068213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach@ CHECK: stm.w	r4, {r4, r5, r8, r9}    @ encoding: [0x84,0xe8,0x30,0x03]
25078213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach@ CHECK: stm.w	r4, {r5, r6}            @ encoding: [0x84,0xe8,0x60,0x00]
25088213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach@ CHECK: stm.w	r5!, {r3, r8}           @ encoding: [0xa5,0xe8,0x08,0x01]
25098213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach@ CHECK: stm.w	r5!, {r3, r8}           @ encoding: [0xa5,0xe8,0x08,0x01]
25108213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach
25118213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach
25128213c96655e955a0b63b05580bc2f6a55be26083Jim Grosbach@------------------------------------------------------------------------------
251336343d85cd42c5fbeb7556655b9ab48bce8b8fdcJim Grosbach@ STMDB
251436343d85cd42c5fbeb7556655b9ab48bce8b8fdcJim Grosbach@------------------------------------------------------------------------------
251536343d85cd42c5fbeb7556655b9ab48bce8b8fdcJim Grosbach        stmdb r4, {r4, r5, r8, r9}
251636343d85cd42c5fbeb7556655b9ab48bce8b8fdcJim Grosbach        stmdb r4, {r5, r6}
251736343d85cd42c5fbeb7556655b9ab48bce8b8fdcJim Grosbach        stmdb r5!, {r3, r8}
251836343d85cd42c5fbeb7556655b9ab48bce8b8fdcJim Grosbach        stmea r5!, {r3, r8}
25193c5d6e4df495316c0d2e0a7bca5ec7a88aa400a5Jim Grosbach        stmdb.w r5, {r0, r1}
252036343d85cd42c5fbeb7556655b9ab48bce8b8fdcJim Grosbach
252136343d85cd42c5fbeb7556655b9ab48bce8b8fdcJim Grosbach@ CHECK: stmdb	r4, {r4, r5, r8, r9}    @ encoding: [0x04,0xe9,0x30,0x03]
252236343d85cd42c5fbeb7556655b9ab48bce8b8fdcJim Grosbach@ CHECK: stmdb	r4, {r5, r6}            @ encoding: [0x04,0xe9,0x60,0x00]
252336343d85cd42c5fbeb7556655b9ab48bce8b8fdcJim Grosbach@ CHECK: stmdb	r5!, {r3, r8}           @ encoding: [0x25,0xe9,0x08,0x01]
252436343d85cd42c5fbeb7556655b9ab48bce8b8fdcJim Grosbach@ CHECK: stm.w	r5!, {r3, r8}           @ encoding: [0xa5,0xe8,0x08,0x01]
25253c5d6e4df495316c0d2e0a7bca5ec7a88aa400a5Jim Grosbach@ CHECK: stmdb	r5, {r0, r1}            @ encoding: [0x05,0xe9,0x03,0x00]
252636343d85cd42c5fbeb7556655b9ab48bce8b8fdcJim Grosbach
252736343d85cd42c5fbeb7556655b9ab48bce8b8fdcJim Grosbach
252836343d85cd42c5fbeb7556655b9ab48bce8b8fdcJim Grosbach@------------------------------------------------------------------------------
2529642caea2c624aaeb492a112d60f419ee4d1a10c7Jim Grosbach@ STR(immediate)
2530642caea2c624aaeb492a112d60f419ee4d1a10c7Jim Grosbach@------------------------------------------------------------------------------
2531642caea2c624aaeb492a112d60f419ee4d1a10c7Jim Grosbach        str r5, [r5, #-4]
2532642caea2c624aaeb492a112d60f419ee4d1a10c7Jim Grosbach        str r5, [r6, #32]
2533642caea2c624aaeb492a112d60f419ee4d1a10c7Jim Grosbach        str r5, [r6, #33]
2534642caea2c624aaeb492a112d60f419ee4d1a10c7Jim Grosbach        str r5, [r6, #257]
2535642caea2c624aaeb492a112d60f419ee4d1a10c7Jim Grosbach        str.w pc, [r7, #257]
25365320b40d9e6f9d0cbabcebaa3f224e8ba1fc00cdJim Grosbach        str r2, [r4, #255]!
25375320b40d9e6f9d0cbabcebaa3f224e8ba1fc00cdJim Grosbach        str r8, [sp, #4]!
25385320b40d9e6f9d0cbabcebaa3f224e8ba1fc00cdJim Grosbach        str lr, [sp, #-4]!
25395320b40d9e6f9d0cbabcebaa3f224e8ba1fc00cdJim Grosbach        str r2, [r4], #255
25405320b40d9e6f9d0cbabcebaa3f224e8ba1fc00cdJim Grosbach        str r8, [sp], #4
25415320b40d9e6f9d0cbabcebaa3f224e8ba1fc00cdJim Grosbach        str lr, [sp], #-4
2542642caea2c624aaeb492a112d60f419ee4d1a10c7Jim Grosbach
2543642caea2c624aaeb492a112d60f419ee4d1a10c7Jim Grosbach@ CHECK: str	r5, [r5, #-4]           @ encoding: [0x45,0xf8,0x04,0x5c]
2544642caea2c624aaeb492a112d60f419ee4d1a10c7Jim Grosbach@ CHECK: str	r5, [r6, #32]           @ encoding: [0x35,0x62]
2545642caea2c624aaeb492a112d60f419ee4d1a10c7Jim Grosbach@ CHECK: str.w	r5, [r6, #33]           @ encoding: [0xc6,0xf8,0x21,0x50]
2546642caea2c624aaeb492a112d60f419ee4d1a10c7Jim Grosbach@ CHECK: str.w	r5, [r6, #257]          @ encoding: [0xc6,0xf8,0x01,0x51]
2547642caea2c624aaeb492a112d60f419ee4d1a10c7Jim Grosbach@ CHECK: str.w	pc, [r7, #257]          @ encoding: [0xc7,0xf8,0x01,0xf1]
25485320b40d9e6f9d0cbabcebaa3f224e8ba1fc00cdJim Grosbach@ CHECK: str	r2, [r4, #255]!         @ encoding: [0x44,0xf8,0xff,0x2f]
25495320b40d9e6f9d0cbabcebaa3f224e8ba1fc00cdJim Grosbach@ CHECK: str	r8, [sp, #4]!           @ encoding: [0x4d,0xf8,0x04,0x8f]
25505320b40d9e6f9d0cbabcebaa3f224e8ba1fc00cdJim Grosbach@ CHECK: str	lr, [sp, #-4]!          @ encoding: [0x4d,0xf8,0x04,0xed]
25515320b40d9e6f9d0cbabcebaa3f224e8ba1fc00cdJim Grosbach@ CHECK: str	r2, [r4], #255          @ encoding: [0x44,0xf8,0xff,0x2b]
25525320b40d9e6f9d0cbabcebaa3f224e8ba1fc00cdJim Grosbach@ CHECK: str	r8, [sp], #4            @ encoding: [0x4d,0xf8,0x04,0x8b]
25535320b40d9e6f9d0cbabcebaa3f224e8ba1fc00cdJim Grosbach@ CHECK: str	lr, [sp], #-4           @ encoding: [0x4d,0xf8,0x04,0xe9]
25545320b40d9e6f9d0cbabcebaa3f224e8ba1fc00cdJim Grosbach
25555320b40d9e6f9d0cbabcebaa3f224e8ba1fc00cdJim Grosbach
25565320b40d9e6f9d0cbabcebaa3f224e8ba1fc00cdJim Grosbach@------------------------------------------------------------------------------
25575320b40d9e6f9d0cbabcebaa3f224e8ba1fc00cdJim Grosbach@ STR(register)
25585320b40d9e6f9d0cbabcebaa3f224e8ba1fc00cdJim Grosbach@------------------------------------------------------------------------------
25595320b40d9e6f9d0cbabcebaa3f224e8ba1fc00cdJim Grosbach        str r1, [r8, r1]
25605320b40d9e6f9d0cbabcebaa3f224e8ba1fc00cdJim Grosbach        str.w r4, [r5, r2]
25615320b40d9e6f9d0cbabcebaa3f224e8ba1fc00cdJim Grosbach        str r6, [r0, r2, lsl #3]
25625320b40d9e6f9d0cbabcebaa3f224e8ba1fc00cdJim Grosbach        str r8, [r8, r2, lsl #2]
25635320b40d9e6f9d0cbabcebaa3f224e8ba1fc00cdJim Grosbach        str r7, [sp, r2, lsl #1]
25645320b40d9e6f9d0cbabcebaa3f224e8ba1fc00cdJim Grosbach        str r7, [sp, r2, lsl #0]
25655320b40d9e6f9d0cbabcebaa3f224e8ba1fc00cdJim Grosbach
25665320b40d9e6f9d0cbabcebaa3f224e8ba1fc00cdJim Grosbach@ CHECK: str.w	r1, [r8, r1]            @ encoding: [0x48,0xf8,0x01,0x10]
25675320b40d9e6f9d0cbabcebaa3f224e8ba1fc00cdJim Grosbach@ CHECK: str.w	r4, [r5, r2]            @ encoding: [0x45,0xf8,0x02,0x40]
25685320b40d9e6f9d0cbabcebaa3f224e8ba1fc00cdJim Grosbach@ CHECK: str.w	r6, [r0, r2, lsl #3]    @ encoding: [0x40,0xf8,0x32,0x60]
25695320b40d9e6f9d0cbabcebaa3f224e8ba1fc00cdJim Grosbach@ CHECK: str.w	r8, [r8, r2, lsl #2]    @ encoding: [0x48,0xf8,0x22,0x80]
25705320b40d9e6f9d0cbabcebaa3f224e8ba1fc00cdJim Grosbach@ CHECK: str.w	r7, [sp, r2, lsl #1]    @ encoding: [0x4d,0xf8,0x12,0x70]
25715320b40d9e6f9d0cbabcebaa3f224e8ba1fc00cdJim Grosbach@ CHECK: str.w	r7, [sp, r2]            @ encoding: [0x4d,0xf8,0x02,0x70]
2572642caea2c624aaeb492a112d60f419ee4d1a10c7Jim Grosbach
2573642caea2c624aaeb492a112d60f419ee4d1a10c7Jim Grosbach
2574642caea2c624aaeb492a112d60f419ee4d1a10c7Jim Grosbach@------------------------------------------------------------------------------
257576ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach@ STRB(immediate)
257676ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach@------------------------------------------------------------------------------
257776ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach        strb r5, [r5, #-4]
257876ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach        strb r5, [r6, #32]
257976ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach        strb r5, [r6, #33]
258076ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach        strb r5, [r6, #257]
258176ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach        strb.w lr, [r7, #257]
258276ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach        strb r5, [r8, #255]!
258376ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach        strb r2, [r5, #4]!
258476ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach        strb r1, [r4, #-4]!
258576ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach        strb lr, [r3], #255
258676ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach        strb r9, [r2], #4
258776ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach        strb r3, [sp], #-4
25884d2a00147d19b17d382644de0d6a1f0d3230e0e4Owen Anderson        strb r4, [r8, #-0]!
258976ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach
259076ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach@ CHECK: strb	r5, [r5, #-4]           @ encoding: [0x05,0xf8,0x04,0x5c]
259176ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach@ CHECK: strb.w	r5, [r6, #32]           @ encoding: [0x86,0xf8,0x20,0x50]
259276ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach@ CHECK: strb.w	r5, [r6, #33]           @ encoding: [0x86,0xf8,0x21,0x50]
259376ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach@ CHECK: strb.w	r5, [r6, #257]          @ encoding: [0x86,0xf8,0x01,0x51]
259476ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach@ CHECK: strb.w	lr, [r7, #257]          @ encoding: [0x87,0xf8,0x01,0xe1]
259576ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach@ CHECK: strb	r5, [r8, #255]!         @ encoding: [0x08,0xf8,0xff,0x5f]
259676ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach@ CHECK: strb	r2, [r5, #4]!           @ encoding: [0x05,0xf8,0x04,0x2f]
259776ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach@ CHECK: strb	r1, [r4, #-4]!          @ encoding: [0x04,0xf8,0x04,0x1d]
259876ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach@ CHECK: strb	lr, [r3], #255          @ encoding: [0x03,0xf8,0xff,0xeb]
259976ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach@ CHECK: strb	r9, [r2], #4            @ encoding: [0x02,0xf8,0x04,0x9b]
260076ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach@ CHECK: strb	r3, [sp], #-4           @ encoding: [0x0d,0xf8,0x04,0x39]
26014d2a00147d19b17d382644de0d6a1f0d3230e0e4Owen Anderson@ CHECK: strb	r4, [r8, #-0]!          @ encoding: [0x08,0xf8,0x00,0x4d]
260276ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach
260376ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach
260476ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach@------------------------------------------------------------------------------
260576ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach@ STRB(register)
260676ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach@------------------------------------------------------------------------------
260776ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach        strb r1, [r8, r1]
260876ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach        strb.w r4, [r5, r2]
260976ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach        strb r6, [r0, r2, lsl #3]
261076ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach        strb r8, [r8, r2, lsl #2]
261176ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach        strb r7, [sp, r2, lsl #1]
261276ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach        strb r7, [sp, r2, lsl #0]
261376ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach
261476ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach@ CHECK: strb.w	r1, [r8, r1]            @ encoding: [0x08,0xf8,0x01,0x10]
261576ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach@ CHECK: strb.w	r4, [r5, r2]            @ encoding: [0x05,0xf8,0x02,0x40]
261676ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach@ CHECK: strb.w	r6, [r0, r2, lsl #3]    @ encoding: [0x00,0xf8,0x32,0x60]
261776ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach@ CHECK: strb.w	r8, [r8, r2, lsl #2]    @ encoding: [0x08,0xf8,0x22,0x80]
261876ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach@ CHECK: strb.w	r7, [sp, r2, lsl #1]    @ encoding: [0x0d,0xf8,0x12,0x70]
261976ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach@ CHECK: strb.w	r7, [sp, r2]            @ encoding: [0x0d,0xf8,0x02,0x70]
262076ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach
262176ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach
262276ca6d9bcd093ced4277109e6819d49eead0c956Jim Grosbach@------------------------------------------------------------------------------
2623e041af7e0e0b6b59457c3218e6489412793a869cJim Grosbach@ STRBT
2624e041af7e0e0b6b59457c3218e6489412793a869cJim Grosbach@------------------------------------------------------------------------------
2625e041af7e0e0b6b59457c3218e6489412793a869cJim Grosbach        strbt r1, [r2]
2626e041af7e0e0b6b59457c3218e6489412793a869cJim Grosbach        strbt r1, [r8, #0]
2627e041af7e0e0b6b59457c3218e6489412793a869cJim Grosbach        strbt r1, [r8, #3]
2628e041af7e0e0b6b59457c3218e6489412793a869cJim Grosbach        strbt r1, [r8, #255]
2629e041af7e0e0b6b59457c3218e6489412793a869cJim Grosbach
2630e041af7e0e0b6b59457c3218e6489412793a869cJim Grosbach@ CHECK: strbt	r1, [r2]                @ encoding: [0x02,0xf8,0x00,0x1e]
2631e041af7e0e0b6b59457c3218e6489412793a869cJim Grosbach@ CHECK: strbt	r1, [r8]                @ encoding: [0x08,0xf8,0x00,0x1e]
2632e041af7e0e0b6b59457c3218e6489412793a869cJim Grosbach@ CHECK: strbt	r1, [r8, #3]            @ encoding: [0x08,0xf8,0x03,0x1e]
2633e041af7e0e0b6b59457c3218e6489412793a869cJim Grosbach@ CHECK: strbt	r1, [r8, #255]          @ encoding: [0x08,0xf8,0xff,0x1e]
2634e041af7e0e0b6b59457c3218e6489412793a869cJim Grosbach
2635e041af7e0e0b6b59457c3218e6489412793a869cJim Grosbach
2636e041af7e0e0b6b59457c3218e6489412793a869cJim Grosbach@------------------------------------------------------------------------------
2637e45451eea9cd7fc78227fdb94f215ff22e9d0f75Jim Grosbach@ STRD
2638e45451eea9cd7fc78227fdb94f215ff22e9d0f75Jim Grosbach@------------------------------------------------------------------------------
2639e45451eea9cd7fc78227fdb94f215ff22e9d0f75Jim Grosbach        strd r3, r5, [r6, #24]
2640e45451eea9cd7fc78227fdb94f215ff22e9d0f75Jim Grosbach        strd r3, r5, [r6, #24]!
2641e45451eea9cd7fc78227fdb94f215ff22e9d0f75Jim Grosbach        strd r3, r5, [r6], #4
2642e45451eea9cd7fc78227fdb94f215ff22e9d0f75Jim Grosbach        strd r3, r5, [r6], #-8
2643e45451eea9cd7fc78227fdb94f215ff22e9d0f75Jim Grosbach        strd r3, r5, [r6]
2644e45451eea9cd7fc78227fdb94f215ff22e9d0f75Jim Grosbach        strd r8, r1, [r3, #0]
2645fd652df8b36a9d3e6b09ae2b9f7bcb07e88fdfaaJiangning Liu        strd r0, r1, [r2, #-0]
2646fd652df8b36a9d3e6b09ae2b9f7bcb07e88fdfaaJiangning Liu        strd r0, r1, [r2, #-0]!
2647fd652df8b36a9d3e6b09ae2b9f7bcb07e88fdfaaJiangning Liu        strd r0, r1, [r2], #-0
2648e45451eea9cd7fc78227fdb94f215ff22e9d0f75Jim Grosbach
2649e45451eea9cd7fc78227fdb94f215ff22e9d0f75Jim Grosbach@ CHECK: strd	r3, r5, [r6, #24]       @ encoding: [0xc6,0xe9,0x06,0x35]
2650e45451eea9cd7fc78227fdb94f215ff22e9d0f75Jim Grosbach@ CHECK: strd	r3, r5, [r6, #24]!      @ encoding: [0xe6,0xe9,0x06,0x35]
2651e45451eea9cd7fc78227fdb94f215ff22e9d0f75Jim Grosbach@ CHECK: strd	r3, r5, [r6], #4        @ encoding: [0xe6,0xe8,0x01,0x35]
2652e45451eea9cd7fc78227fdb94f215ff22e9d0f75Jim Grosbach@ CHECK: strd	r3, r5, [r6], #-8       @ encoding: [0x66,0xe8,0x02,0x35]
2653e45451eea9cd7fc78227fdb94f215ff22e9d0f75Jim Grosbach@ CHECK: strd	r3, r5, [r6]            @ encoding: [0xc6,0xe9,0x00,0x35]
2654e45451eea9cd7fc78227fdb94f215ff22e9d0f75Jim Grosbach@ CHECK: strd	r8, r1, [r3]            @ encoding: [0xc3,0xe9,0x00,0x81]
2655fd652df8b36a9d3e6b09ae2b9f7bcb07e88fdfaaJiangning Liu@ CHECK: strd   r0, r1, [r2, #-0]       @ encoding: [0x42,0xe9,0x00,0x01]
2656fd652df8b36a9d3e6b09ae2b9f7bcb07e88fdfaaJiangning Liu@ CHECK: strd   r0, r1, [r2, #-0]!      @ encoding: [0x62,0xe9,0x00,0x01]
2657fd652df8b36a9d3e6b09ae2b9f7bcb07e88fdfaaJiangning Liu@ CHECK: strd   r0, r1, [r2], #-0       @ encoding: [0x62,0xe8,0x00,0x01]
2658e45451eea9cd7fc78227fdb94f215ff22e9d0f75Jim Grosbach
2659e45451eea9cd7fc78227fdb94f215ff22e9d0f75Jim Grosbach
2660e45451eea9cd7fc78227fdb94f215ff22e9d0f75Jim Grosbach@------------------------------------------------------------------------------
26614a1d200c2f850dc7b0eda6b8fa89157d21b731c5Jim Grosbach@ STREX/STREXB/STREXH/STREXD
26624a1d200c2f850dc7b0eda6b8fa89157d21b731c5Jim Grosbach@------------------------------------------------------------------------------
26634a1d200c2f850dc7b0eda6b8fa89157d21b731c5Jim Grosbach        strex r1, r8, [r4]
26644a1d200c2f850dc7b0eda6b8fa89157d21b731c5Jim Grosbach        strex r8, r2, [r4, #0]
26654a1d200c2f850dc7b0eda6b8fa89157d21b731c5Jim Grosbach        strex r2, r12, [sp, #128]
26664a1d200c2f850dc7b0eda6b8fa89157d21b731c5Jim Grosbach        strexb r5, r1, [r7]
26674a1d200c2f850dc7b0eda6b8fa89157d21b731c5Jim Grosbach        strexh r9, r7, [r12]
26684a1d200c2f850dc7b0eda6b8fa89157d21b731c5Jim Grosbach        strexd r9, r3, r6, [r4]
26694a1d200c2f850dc7b0eda6b8fa89157d21b731c5Jim Grosbach
26704a1d200c2f850dc7b0eda6b8fa89157d21b731c5Jim Grosbach@ CHECK: strex	r1, r8, [r4]            @ encoding: [0x44,0xe8,0x00,0x81]
26714a1d200c2f850dc7b0eda6b8fa89157d21b731c5Jim Grosbach@ CHECK: strex	r8, r2, [r4]            @ encoding: [0x44,0xe8,0x00,0x28]
26724a1d200c2f850dc7b0eda6b8fa89157d21b731c5Jim Grosbach@ CHECK: strex	r2, r12, [sp, #128]     @ encoding: [0x4d,0xe8,0x20,0xc2]
26734a1d200c2f850dc7b0eda6b8fa89157d21b731c5Jim Grosbach@ CHECK: strexb	r5, r1, [r7]            @ encoding: [0xc7,0xe8,0x45,0x1f]
26744a1d200c2f850dc7b0eda6b8fa89157d21b731c5Jim Grosbach@ CHECK: strexh	r9, r7, [r12]           @ encoding: [0xcc,0xe8,0x59,0x7f]
26754a1d200c2f850dc7b0eda6b8fa89157d21b731c5Jim Grosbach@ CHECK: strexd	r9, r3, r6, [r4]        @ encoding: [0xc4,0xe8,0x79,0x36]
26764a1d200c2f850dc7b0eda6b8fa89157d21b731c5Jim Grosbach
26774a1d200c2f850dc7b0eda6b8fa89157d21b731c5Jim Grosbach
26784a1d200c2f850dc7b0eda6b8fa89157d21b731c5Jim Grosbach@------------------------------------------------------------------------------
2679c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach@ STRH(immediate)
2680c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach@------------------------------------------------------------------------------
2681c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach        strh r5, [r5, #-4]
2682c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach        strh r5, [r6, #32]
2683c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach        strh r5, [r6, #33]
2684c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach        strh r5, [r6, #257]
2685c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach        strh.w lr, [r7, #257]
2686c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach        strh r5, [r8, #255]!
2687c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach        strh r2, [r5, #4]!
2688c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach        strh r1, [r4, #-4]!
2689c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach        strh lr, [r3], #255
2690c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach        strh r9, [r2], #4
2691c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach        strh r3, [sp], #-4
2692c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach
2693c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach@ CHECK: strh	r5, [r5, #-4]           @ encoding: [0x25,0xf8,0x04,0x5c]
2694c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach@ CHECK: strh	r5, [r6, #32]           @ encoding: [0x35,0x84]
2695c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach@ CHECK: strh.w	r5, [r6, #33]           @ encoding: [0xa6,0xf8,0x21,0x50]
2696c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach@ CHECK: strh.w	r5, [r6, #257]          @ encoding: [0xa6,0xf8,0x01,0x51]
2697c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach@ CHECK: strh.w	lr, [r7, #257]          @ encoding: [0xa7,0xf8,0x01,0xe1]
2698c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach@ CHECK: strh	r5, [r8, #255]!         @ encoding: [0x28,0xf8,0xff,0x5f]
2699c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach@ CHECK: strh	r2, [r5, #4]!           @ encoding: [0x25,0xf8,0x04,0x2f]
2700c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach@ CHECK: strh	r1, [r4, #-4]!          @ encoding: [0x24,0xf8,0x04,0x1d]
2701c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach@ CHECK: strh	lr, [r3], #255          @ encoding: [0x23,0xf8,0xff,0xeb]
2702c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach@ CHECK: strh	r9, [r2], #4            @ encoding: [0x22,0xf8,0x04,0x9b]
2703c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach@ CHECK: strh	r3, [sp], #-4           @ encoding: [0x2d,0xf8,0x04,0x39]
2704c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach
2705c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach
2706c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach@------------------------------------------------------------------------------
2707c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach@ STRH(register)
2708c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach@------------------------------------------------------------------------------
2709c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach        strh r1, [r8, r1]
2710c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach        strh.w r4, [r5, r2]
2711c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach        strh r6, [r0, r2, lsl #3]
2712c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach        strh r8, [r8, r2, lsl #2]
2713c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach        strh r7, [sp, r2, lsl #1]
2714c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach        strh r7, [sp, r2, lsl #0]
2715c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach
2716c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach@ CHECK: strh.w	r1, [r8, r1]            @ encoding: [0x28,0xf8,0x01,0x10]
2717c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach@ CHECK: strh.w	r4, [r5, r2]            @ encoding: [0x25,0xf8,0x02,0x40]
2718c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach@ CHECK: strh.w	r6, [r0, r2, lsl #3]    @ encoding: [0x20,0xf8,0x32,0x60]
2719c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach@ CHECK: strh.w	r8, [r8, r2, lsl #2]    @ encoding: [0x28,0xf8,0x22,0x80]
2720c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach@ CHECK: strh.w	r7, [sp, r2, lsl #1]    @ encoding: [0x2d,0xf8,0x12,0x70]
2721c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach@ CHECK: strh.w	r7, [sp, r2]            @ encoding: [0x2d,0xf8,0x02,0x70]
2722c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach
2723c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach
2724c71ed786c3b7d2e8072483805434e23f77f606c5Jim Grosbach@------------------------------------------------------------------------------
272518ceae2a705cd4da38a6f67bf0bb9d8615a8b254Jim Grosbach@ STRHT
272618ceae2a705cd4da38a6f67bf0bb9d8615a8b254Jim Grosbach@------------------------------------------------------------------------------
272718ceae2a705cd4da38a6f67bf0bb9d8615a8b254Jim Grosbach        strht r1, [r2]
272818ceae2a705cd4da38a6f67bf0bb9d8615a8b254Jim Grosbach        strht r1, [r8, #0]
272918ceae2a705cd4da38a6f67bf0bb9d8615a8b254Jim Grosbach        strht r1, [r8, #3]
273018ceae2a705cd4da38a6f67bf0bb9d8615a8b254Jim Grosbach        strht r1, [r8, #255]
273118ceae2a705cd4da38a6f67bf0bb9d8615a8b254Jim Grosbach
273218ceae2a705cd4da38a6f67bf0bb9d8615a8b254Jim Grosbach@ CHECK: strht	r1, [r2]                @ encoding: [0x22,0xf8,0x00,0x1e]
273318ceae2a705cd4da38a6f67bf0bb9d8615a8b254Jim Grosbach@ CHECK: strht	r1, [r8]                @ encoding: [0x28,0xf8,0x00,0x1e]
273418ceae2a705cd4da38a6f67bf0bb9d8615a8b254Jim Grosbach@ CHECK: strht	r1, [r8, #3]            @ encoding: [0x28,0xf8,0x03,0x1e]
273518ceae2a705cd4da38a6f67bf0bb9d8615a8b254Jim Grosbach@ CHECK: strht	r1, [r8, #255]          @ encoding: [0x28,0xf8,0xff,0x1e]
273618ceae2a705cd4da38a6f67bf0bb9d8615a8b254Jim Grosbach
273718ceae2a705cd4da38a6f67bf0bb9d8615a8b254Jim Grosbach
273818ceae2a705cd4da38a6f67bf0bb9d8615a8b254Jim Grosbach@------------------------------------------------------------------------------
273947313df81c096005dbbe8dbe729375f7d0bb3e15Jim Grosbach@ STRT
274047313df81c096005dbbe8dbe729375f7d0bb3e15Jim Grosbach@------------------------------------------------------------------------------
274147313df81c096005dbbe8dbe729375f7d0bb3e15Jim Grosbach        strt r1, [r2]
274247313df81c096005dbbe8dbe729375f7d0bb3e15Jim Grosbach        strt r1, [r8, #0]
274347313df81c096005dbbe8dbe729375f7d0bb3e15Jim Grosbach        strt r1, [r8, #3]
274447313df81c096005dbbe8dbe729375f7d0bb3e15Jim Grosbach        strt r1, [r8, #255]
274547313df81c096005dbbe8dbe729375f7d0bb3e15Jim Grosbach
274647313df81c096005dbbe8dbe729375f7d0bb3e15Jim Grosbach@ CHECK: strt	r1, [r2]                @ encoding: [0x42,0xf8,0x00,0x1e]
274747313df81c096005dbbe8dbe729375f7d0bb3e15Jim Grosbach@ CHECK: strt	r1, [r8]                @ encoding: [0x48,0xf8,0x00,0x1e]
274847313df81c096005dbbe8dbe729375f7d0bb3e15Jim Grosbach@ CHECK: strt	r1, [r8, #3]            @ encoding: [0x48,0xf8,0x03,0x1e]
274947313df81c096005dbbe8dbe729375f7d0bb3e15Jim Grosbach@ CHECK: strt	r1, [r8, #255]          @ encoding: [0x48,0xf8,0xff,0x1e]
275047313df81c096005dbbe8dbe729375f7d0bb3e15Jim Grosbach
275147313df81c096005dbbe8dbe729375f7d0bb3e15Jim Grosbach
275247313df81c096005dbbe8dbe729375f7d0bb3e15Jim Grosbach@------------------------------------------------------------------------------
2753f67e8554bf4808ad447ffb5d2deebbb10b810391Jim Grosbach@ SUB (immediate)
2754f67e8554bf4808ad447ffb5d2deebbb10b810391Jim Grosbach@------------------------------------------------------------------------------
2755f67e8554bf4808ad447ffb5d2deebbb10b810391Jim Grosbach        itet eq
2756f67e8554bf4808ad447ffb5d2deebbb10b810391Jim Grosbach        subeq r1, r2, #4
2757f67e8554bf4808ad447ffb5d2deebbb10b810391Jim Grosbach        subwne r5, r3, #1023
2758f67e8554bf4808ad447ffb5d2deebbb10b810391Jim Grosbach        subeq r4, r5, #293
2759f67e8554bf4808ad447ffb5d2deebbb10b810391Jim Grosbach        sub r2, sp, #1024
2760f67e8554bf4808ad447ffb5d2deebbb10b810391Jim Grosbach        sub r2, r8, #0xff00
2761f67e8554bf4808ad447ffb5d2deebbb10b810391Jim Grosbach        sub r2, r3, #257
2762f67e8554bf4808ad447ffb5d2deebbb10b810391Jim Grosbach        subw r2, r3, #257
2763f67e8554bf4808ad447ffb5d2deebbb10b810391Jim Grosbach        sub r12, r6, #0x100
2764f67e8554bf4808ad447ffb5d2deebbb10b810391Jim Grosbach        subw r12, r6, #0x100
2765f67e8554bf4808ad447ffb5d2deebbb10b810391Jim Grosbach        subs r1, r2, #0x1f0
27665d0492cfc4521ccb13b4961227b279991a17c393Jim Grosbach	sub r2, #1
2767da84786bee8304588a4325b15e297be1995a5d41Jim Grosbach        sub r0, r0, #32
27682d30d947ec2626e8b1a9b577cdfa4121f476c3f5Jim Grosbach        subs r2, r2, #56
27692d30d947ec2626e8b1a9b577cdfa4121f476c3f5Jim Grosbach        subs r2, #56
2770f67e8554bf4808ad447ffb5d2deebbb10b810391Jim Grosbach
2771f67e8554bf4808ad447ffb5d2deebbb10b810391Jim Grosbach@ CHECK: itet	eq                      @ encoding: [0x0a,0xbf]
2772f67e8554bf4808ad447ffb5d2deebbb10b810391Jim Grosbach@ CHECK: subeq	r1, r2, #4              @ encoding: [0x11,0x1f]
2773f67e8554bf4808ad447ffb5d2deebbb10b810391Jim Grosbach@ CHECK: subwne	r5, r3, #1023           @ encoding: [0xa3,0xf2,0xff,0x35]
2774f67e8554bf4808ad447ffb5d2deebbb10b810391Jim Grosbach@ CHECK: subweq	r4, r5, #293            @ encoding: [0xa5,0xf2,0x25,0x14]
2775f67e8554bf4808ad447ffb5d2deebbb10b810391Jim Grosbach@ CHECK: sub.w	r2, sp, #1024           @ encoding: [0xad,0xf5,0x80,0x62]
2776f67e8554bf4808ad447ffb5d2deebbb10b810391Jim Grosbach@ CHECK: sub.w	r2, r8, #65280          @ encoding: [0xa8,0xf5,0x7f,0x42]
2777f67e8554bf4808ad447ffb5d2deebbb10b810391Jim Grosbach@ CHECK: subw	r2, r3, #257            @ encoding: [0xa3,0xf2,0x01,0x12]
2778f67e8554bf4808ad447ffb5d2deebbb10b810391Jim Grosbach@ CHECK: subw	r2, r3, #257            @ encoding: [0xa3,0xf2,0x01,0x12]
2779f67e8554bf4808ad447ffb5d2deebbb10b810391Jim Grosbach@ CHECK: sub.w	r12, r6, #256           @ encoding: [0xa6,0xf5,0x80,0x7c]
2780f67e8554bf4808ad447ffb5d2deebbb10b810391Jim Grosbach@ CHECK: subw	r12, r6, #256           @ encoding: [0xa6,0xf2,0x00,0x1c]
2781f67e8554bf4808ad447ffb5d2deebbb10b810391Jim Grosbach@ CHECK: subs.w	r1, r2, #496            @ encoding: [0xb2,0xf5,0xf8,0x71]
27825d0492cfc4521ccb13b4961227b279991a17c393Jim Grosbach@ CHECK: sub.w	r2, r2, #1              @ encoding: [0xa2,0xf1,0x01,0x02]
2783da84786bee8304588a4325b15e297be1995a5d41Jim Grosbach@ CHECK: sub.w	r0, r0, #32             @ encoding: [0xa0,0xf1,0x20,0x00]
27842d30d947ec2626e8b1a9b577cdfa4121f476c3f5Jim Grosbach@ CHECK: subs	r2, #56                 @ encoding: [0x38,0x3a]
27852d30d947ec2626e8b1a9b577cdfa4121f476c3f5Jim Grosbach@ CHECK: subs	r2, #56                 @ encoding: [0x38,0x3a]
2786f67e8554bf4808ad447ffb5d2deebbb10b810391Jim Grosbach
2787f67e8554bf4808ad447ffb5d2deebbb10b810391Jim Grosbach
2788f67e8554bf4808ad447ffb5d2deebbb10b810391Jim Grosbach@------------------------------------------------------------------------------
278912c7e90d369b4605aac0ddbd252231beacb2aabbOwen Anderson@ SUB (register)
279012c7e90d369b4605aac0ddbd252231beacb2aabbOwen Anderson@------------------------------------------------------------------------------
27917649b0b8c708f95e318296bd6a4b3968cd6bb38cJim Grosbach        sub r4, r5, r6
27927649b0b8c708f95e318296bd6a4b3968cd6bb38cJim Grosbach        sub r4, r5, r6, lsl #5
27937649b0b8c708f95e318296bd6a4b3968cd6bb38cJim Grosbach        sub r4, r5, r6, lsr #5
27947649b0b8c708f95e318296bd6a4b3968cd6bb38cJim Grosbach        sub.w r4, r5, r6, lsr #5
27957649b0b8c708f95e318296bd6a4b3968cd6bb38cJim Grosbach        sub r4, r5, r6, asr #5
27967649b0b8c708f95e318296bd6a4b3968cd6bb38cJim Grosbach        sub r4, r5, r6, ror #5
279712c7e90d369b4605aac0ddbd252231beacb2aabbOwen Anderson        sub.w r5, r2, r12, rrx
2798a23ecc2ba945c9685a76552276e5f6f41859b4abJim Grosbach        sub r2, sp, ip
2799a23ecc2ba945c9685a76552276e5f6f41859b4abJim Grosbach        sub sp, sp, ip
2800a23ecc2ba945c9685a76552276e5f6f41859b4abJim Grosbach        sub sp, ip
2801a23ecc2ba945c9685a76552276e5f6f41859b4abJim Grosbach        sub.w r2, sp, ip
2802a23ecc2ba945c9685a76552276e5f6f41859b4abJim Grosbach        sub.w sp, sp, ip
2803a23ecc2ba945c9685a76552276e5f6f41859b4abJim Grosbach        sub.w sp, ip
280412c7e90d369b4605aac0ddbd252231beacb2aabbOwen Anderson
28057649b0b8c708f95e318296bd6a4b3968cd6bb38cJim Grosbach@ CHECK: sub.w	r4, r5, r6              @ encoding: [0xa5,0xeb,0x06,0x04]
28067649b0b8c708f95e318296bd6a4b3968cd6bb38cJim Grosbach@ CHECK: sub.w	r4, r5, r6, lsl #5      @ encoding: [0xa5,0xeb,0x46,0x14]
28077649b0b8c708f95e318296bd6a4b3968cd6bb38cJim Grosbach@ CHECK: sub.w	r4, r5, r6, lsr #5      @ encoding: [0xa5,0xeb,0x56,0x14]
28087649b0b8c708f95e318296bd6a4b3968cd6bb38cJim Grosbach@ CHECK: sub.w	r4, r5, r6, lsr #5      @ encoding: [0xa5,0xeb,0x56,0x14]
28097649b0b8c708f95e318296bd6a4b3968cd6bb38cJim Grosbach@ CHECK: sub.w	r4, r5, r6, asr #5      @ encoding: [0xa5,0xeb,0x66,0x14]
28107649b0b8c708f95e318296bd6a4b3968cd6bb38cJim Grosbach@ CHECK: sub.w	r4, r5, r6, ror #5      @ encoding: [0xa5,0xeb,0x76,0x14]
28117649b0b8c708f95e318296bd6a4b3968cd6bb38cJim Grosbach@ CHECK: sub.w r5, r2, r12, rrx         @ encoding: [0xa2,0xeb,0x3c,0x05]
2812a23ecc2ba945c9685a76552276e5f6f41859b4abJim Grosbach@ CHECK: sub.w	r2, sp, r12             @ encoding: [0xad,0xeb,0x0c,0x02]
2813a23ecc2ba945c9685a76552276e5f6f41859b4abJim Grosbach@ CHECK: sub.w	sp, sp, r12             @ encoding: [0xad,0xeb,0x0c,0x0d]
2814a23ecc2ba945c9685a76552276e5f6f41859b4abJim Grosbach@ CHECK: sub.w	sp, sp, r12             @ encoding: [0xad,0xeb,0x0c,0x0d]
2815a23ecc2ba945c9685a76552276e5f6f41859b4abJim Grosbach@ CHECK: sub.w	r2, sp, r12             @ encoding: [0xad,0xeb,0x0c,0x02]
2816a23ecc2ba945c9685a76552276e5f6f41859b4abJim Grosbach@ CHECK: sub.w	sp, sp, r12             @ encoding: [0xad,0xeb,0x0c,0x0d]
2817a23ecc2ba945c9685a76552276e5f6f41859b4abJim Grosbach@ CHECK: sub.w	sp, sp, r12             @ encoding: [0xad,0xeb,0x0c,0x0d]
281812c7e90d369b4605aac0ddbd252231beacb2aabbOwen Anderson
28199883acd2a6c0851b9095409bcc0541b26165015aJim Grosbach
28209883acd2a6c0851b9095409bcc0541b26165015aJim Grosbach@------------------------------------------------------------------------------
28219883acd2a6c0851b9095409bcc0541b26165015aJim Grosbach@ SVC
28229883acd2a6c0851b9095409bcc0541b26165015aJim Grosbach@------------------------------------------------------------------------------
28239883acd2a6c0851b9095409bcc0541b26165015aJim Grosbach        svc #0
28249883acd2a6c0851b9095409bcc0541b26165015aJim Grosbach        ite eq
28259883acd2a6c0851b9095409bcc0541b26165015aJim Grosbach        svceq #255
28269883acd2a6c0851b9095409bcc0541b26165015aJim Grosbach        swine #33
28279883acd2a6c0851b9095409bcc0541b26165015aJim Grosbach
28289883acd2a6c0851b9095409bcc0541b26165015aJim Grosbach@ CHECK: svc	#0                      @ encoding: [0x00,0xdf]
28299883acd2a6c0851b9095409bcc0541b26165015aJim Grosbach@ CHECK: ite	eq                      @ encoding: [0x0c,0xbf]
28309883acd2a6c0851b9095409bcc0541b26165015aJim Grosbach@ CHECK: svceq	#255                    @ encoding: [0xff,0xdf]
28319883acd2a6c0851b9095409bcc0541b26165015aJim Grosbach@ CHECK: svcne	#33                     @ encoding: [0x21,0xdf]
28329883acd2a6c0851b9095409bcc0541b26165015aJim Grosbach
28338a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach
28348a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach@------------------------------------------------------------------------------
28358a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach@ SXTAB
28368a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach@------------------------------------------------------------------------------
28378a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach        sxtab r2, r3, r4
28388a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach        sxtab r4, r5, r6, ror #0
28398a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach        it lt
28408a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach        sxtablt r6, r2, r9, ror #8
28418a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach        sxtab r5, r1, r4, ror #16
28428a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach        sxtab r7, r8, r3, ror #24
28438a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach
28448a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach@ CHECK: sxtab	r2, r3, r4              @ encoding: [0x43,0xfa,0x84,0xf2]
28458a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach@ CHECK: sxtab	r4, r5, r6              @ encoding: [0x45,0xfa,0x86,0xf4]
28468a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach@ CHECK: it	lt                      @ encoding: [0xb8,0xbf]
28478a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach@ CHECK: sxtablt r6, r2, r9, ror #8     @ encoding: [0x42,0xfa,0x99,0xf6]
28488a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach@ CHECK: sxtab	r5, r1, r4, ror #16     @ encoding: [0x41,0xfa,0xa4,0xf5]
28498a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach@ CHECK: sxtab	r7, r8, r3, ror #24     @ encoding: [0x48,0xfa,0xb3,0xf7]
28508a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach
28518a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach
28528a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach@------------------------------------------------------------------------------
28538a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach@ SXTAB16
28548a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach@------------------------------------------------------------------------------
28558a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach        sxtab16 r6, r2, r7, ror #0
28568a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach        sxtab16 r3, r5, r8, ror #8
28578a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach        sxtab16 r3, r2, r1, ror #16
28588a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach        ite ne
28598a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach        sxtab16ne r0, r1, r4
28608a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach        sxtab16eq r1, r2, r3, ror #24
28618a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach
28628a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach@ CHECK: sxtab16 r6, r2, r7             @ encoding: [0x22,0xfa,0x87,0xf6]
28638a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach@ CHECK: sxtab16 r3, r5, r8, ror #8     @ encoding: [0x25,0xfa,0x98,0xf3]
28648a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach@ CHECK: sxtab16 r3, r2, r1, ror #16    @ encoding: [0x22,0xfa,0xa1,0xf3]
28658a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach@ CHECK: ite	ne                      @ encoding: [0x14,0xbf]
28668a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach@ CHECK: sxtab16ne r0, r1, r4           @ encoding: [0x21,0xfa,0x84,0xf0]
28678a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach@ CHECK: sxtab16eq r1, r2, r3, ror #24  @ encoding: [0x22,0xfa,0xb3,0xf1]
28688a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach
28698a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach
28708a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach@------------------------------------------------------------------------------
28718a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach@ SXTAH
28728a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach@------------------------------------------------------------------------------
28738a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach        sxtah r1, r3, r9
28748a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach        sxtah r3, r8, r3, ror #8
28758a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach        sxtah r9, r3, r3, ror #24
28768a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach        ite hi
28778a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach        sxtahhi r6, r1, r6, ror #0
28788a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach        sxtahls r2, r2, r4, ror #16
28798a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach
28808a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach@ CHECK: sxtah	r1, r3, r9              @ encoding: [0x03,0xfa,0x89,0xf1]
28818a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach@ CHECK: sxtah	r3, r8, r3, ror #8      @ encoding: [0x08,0xfa,0x93,0xf3]
28828a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach@ CHECK: sxtah	r9, r3, r3, ror #24     @ encoding: [0x03,0xfa,0xb3,0xf9]
28838a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach@ CHECK: ite	hi                      @ encoding: [0x8c,0xbf]
28848a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach@ CHECK: sxtahhi r6, r1, r6             @ encoding: [0x01,0xfa,0x86,0xf6]
28858a8d28b0392a27ff8e0c60c04561671023a08dc2Jim Grosbach@ CHECK: sxtahls r2, r2, r4, ror #16    @ encoding: [0x02,0xfa,0xa4,0xf2]
2886326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach
2887326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach
2888326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@------------------------------------------------------------------------------
2889326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ SXTB
2890326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@------------------------------------------------------------------------------
2891326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        sxtb r5, r6, ror #0
2892326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        sxtb r6, r9, ror #8
2893326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        sxtb r8, r3, ror #24
2894326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        ite ge
2895326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        sxtbge r2, r4
2896326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        sxtblt r5, r1, ror #16
289725ddc2bf7ed69f500dd4d3e003004bda28c3dd95Jim Grosbach        sxtb.w  r7, r8
2898326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach
2899326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: sxtb	r5, r6                  @ encoding: [0x75,0xb2]
2900326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: sxtb.w	r6, r9, ror #8          @ encoding: [0x4f,0xfa,0x99,0xf6]
2901326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: sxtb.w	r8, r3, ror #24         @ encoding: [0x4f,0xfa,0xb3,0xf8]
2902326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: ite	ge                      @ encoding: [0xac,0xbf]
2903326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: sxtbge	r2, r4                  @ encoding: [0x62,0xb2]
2904326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: sxtblt.w	r5, r1, ror #16 @ encoding: [0x4f,0xfa,0xa1,0xf5]
290525ddc2bf7ed69f500dd4d3e003004bda28c3dd95Jim Grosbach@ CHECK: sxtb.w	r7, r8                  @ encoding: [0x4f,0xfa,0x88,0xf7]
2906326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach
2907326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach
2908326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@------------------------------------------------------------------------------
2909326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ SXTB16
2910326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@------------------------------------------------------------------------------
2911326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        sxtb16 r1, r4
2912326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        sxtb16 r6, r7, ror #0
2913326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        sxtb16 r3, r1, ror #16
2914326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        ite cs
2915326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        sxtb16cs r3, r5, ror #8
2916326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        sxtb16lo r2, r3, ror #24
2917326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach
2918326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: sxtb16	r1, r4                  @ encoding: [0x2f,0xfa,0x84,0xf1]
2919326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: sxtb16	r6, r7                  @ encoding: [0x2f,0xfa,0x87,0xf6]
2920326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: sxtb16	r3, r1, ror #16         @ encoding: [0x2f,0xfa,0xa1,0xf3]
2921326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: ite	hs                      @ encoding: [0x2c,0xbf]
2922326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: sxtb16hs	r3, r5, ror #8  @ encoding: [0x2f,0xfa,0x95,0xf3]
2923326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: sxtb16lo	r2, r3, ror #24 @ encoding: [0x2f,0xfa,0xb3,0xf2]
2924326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach
2925326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach
2926326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@------------------------------------------------------------------------------
2927326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ SXTH
2928326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@------------------------------------------------------------------------------
2929326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        sxth r1, r6, ror #0
2930326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        sxth r3, r8, ror #8
2931326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        sxth r9, r3, ror #24
2932326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        itt ne
2933326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        sxthne r3, r9
2934326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        sxthne r2, r2, ror #16
293525ddc2bf7ed69f500dd4d3e003004bda28c3dd95Jim Grosbach        sxth.w  r7, r8
2936326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach
2937326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: sxth	r1, r6                  @ encoding: [0x31,0xb2]
2938326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: sxth.w	r3, r8, ror #8          @ encoding: [0x0f,0xfa,0x98,0xf3]
2939326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: sxth.w	r9, r3, ror #24         @ encoding: [0x0f,0xfa,0xb3,0xf9]
2940326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: itt	ne                      @ encoding: [0x1c,0xbf]
2941326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: sxthne.w	r3, r9          @ encoding: [0x0f,0xfa,0x89,0xf3]
2942326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: sxthne.w	r2, r2, ror #16 @ encoding: [0x0f,0xfa,0xa2,0xf2]
294325ddc2bf7ed69f500dd4d3e003004bda28c3dd95Jim Grosbach@ CHECK: sxth.w	r7, r8                  @ encoding: [0x0f,0xfa,0x88,0xf7]
2944326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach
2945326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach
2946326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@------------------------------------------------------------------------------
2947326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ SXTB
2948326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@------------------------------------------------------------------------------
2949326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        sxtb r5, r6, ror #0
2950326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        sxtb.w r6, r9, ror #8
2951326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        sxtb r8, r3, ror #24
2952326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        ite ge
2953326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        sxtbge r2, r4
2954326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        sxtblt r5, r1, ror #16
2955326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach
2956326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: sxtb	r5, r6                  @ encoding: [0x75,0xb2]
2957326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: sxtb.w	r6, r9, ror #8          @ encoding: [0x4f,0xfa,0x99,0xf6]
2958326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: sxtb.w	r8, r3, ror #24         @ encoding: [0x4f,0xfa,0xb3,0xf8]
2959326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: ite	ge                      @ encoding: [0xac,0xbf]
2960326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: sxtbge	r2, r4                  @ encoding: [0x62,0xb2]
2961326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: sxtblt.w	r5, r1, ror #16 @ encoding: [0x4f,0xfa,0xa1,0xf5]
2962326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach
2963326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach
2964326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@------------------------------------------------------------------------------
2965326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ SXTB16
2966326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@------------------------------------------------------------------------------
2967326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        sxtb16 r1, r4
2968326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        sxtb16 r6, r7, ror #0
2969326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        sxtb16 r3, r1, ror #16
2970326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        ite cs
2971326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        sxtb16cs r3, r5, ror #8
2972326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        sxtb16lo r2, r3, ror #24
2973326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach
2974326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: sxtb16	r1, r4                  @ encoding: [0x2f,0xfa,0x84,0xf1]
2975326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: sxtb16	r6, r7                  @ encoding: [0x2f,0xfa,0x87,0xf6]
2976326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: sxtb16	r3, r1, ror #16         @ encoding: [0x2f,0xfa,0xa1,0xf3]
2977326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: ite	hs                      @ encoding: [0x2c,0xbf]
2978326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: sxtb16hs	r3, r5, ror #8  @ encoding: [0x2f,0xfa,0x95,0xf3]
2979326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: sxtb16lo	r2, r3, ror #24 @ encoding: [0x2f,0xfa,0xb3,0xf2]
2980326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach
2981326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach
2982326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@------------------------------------------------------------------------------
2983326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ SXTH
2984326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@------------------------------------------------------------------------------
2985326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        sxth r1, r6, ror #0
2986326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        sxth.w r3, r8, ror #8
2987326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        sxth r9, r3, ror #24
2988326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        itt ne
2989326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        sxthne r3, r9
2990326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach        sxthne r2, r2, ror #16
2991326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach
2992326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: sxth	r1, r6                  @ encoding: [0x31,0xb2]
2993326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: sxth.w	r3, r8, ror #8          @ encoding: [0x0f,0xfa,0x98,0xf3]
2994326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: sxth.w	r9, r3, ror #24         @ encoding: [0x0f,0xfa,0xb3,0xf9]
2995326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: itt	ne                      @ encoding: [0x1c,0xbf]
2996326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: sxthne.w	r3, r9          @ encoding: [0x0f,0xfa,0x89,0xf3]
2997326efe58918d3f0a431d07938054870fcd0e240fJim Grosbach@ CHECK: sxthne.w	r2, r2, ror #16 @ encoding: [0x0f,0xfa,0xa2,0xf2]
29981494c496e2827f991f75eae4acf8f7bf9952abddJim Grosbach
29991494c496e2827f991f75eae4acf8f7bf9952abddJim Grosbach
30001494c496e2827f991f75eae4acf8f7bf9952abddJim Grosbach@------------------------------------------------------------------------------
30017f739bee261debdf56bd89ac922b57eca53e91dcJim Grosbach@ TBB/TBH
30027f739bee261debdf56bd89ac922b57eca53e91dcJim Grosbach@------------------------------------------------------------------------------
30037f739bee261debdf56bd89ac922b57eca53e91dcJim Grosbach        tbb [r3, r8]
30047f739bee261debdf56bd89ac922b57eca53e91dcJim Grosbach        tbh [r3, r8, lsl #1]
30057f739bee261debdf56bd89ac922b57eca53e91dcJim Grosbach        it eq
30067f739bee261debdf56bd89ac922b57eca53e91dcJim Grosbach        tbbeq [r3, r8]
30077f739bee261debdf56bd89ac922b57eca53e91dcJim Grosbach        it cs
30087f739bee261debdf56bd89ac922b57eca53e91dcJim Grosbach        tbhcs [r3, r8, lsl #1]
30097f739bee261debdf56bd89ac922b57eca53e91dcJim Grosbach
30107f739bee261debdf56bd89ac922b57eca53e91dcJim Grosbach@ CHECK: tbb	[r3, r8]                @ encoding: [0xd3,0xe8,0x08,0xf0]
30117f739bee261debdf56bd89ac922b57eca53e91dcJim Grosbach@ CHECK: tbh	[r3, r8, lsl #1]        @ encoding: [0xd3,0xe8,0x18,0xf0]
30127f739bee261debdf56bd89ac922b57eca53e91dcJim Grosbach@ CHECK: it	eq                      @ encoding: [0x08,0xbf]
30137f739bee261debdf56bd89ac922b57eca53e91dcJim Grosbach@ CHECK: tbbeq	[r3, r8]                @ encoding: [0xd3,0xe8,0x08,0xf0]
30147f739bee261debdf56bd89ac922b57eca53e91dcJim Grosbach@ CHECK: it	hs                      @ encoding: [0x28,0xbf]
30157f739bee261debdf56bd89ac922b57eca53e91dcJim Grosbach@ CHECK: tbhhs	[r3, r8, lsl #1]        @ encoding: [0xd3,0xe8,0x18,0xf0]
30167f739bee261debdf56bd89ac922b57eca53e91dcJim Grosbach
30177f739bee261debdf56bd89ac922b57eca53e91dcJim Grosbach
30187f739bee261debdf56bd89ac922b57eca53e91dcJim Grosbach@------------------------------------------------------------------------------
30191494c496e2827f991f75eae4acf8f7bf9952abddJim Grosbach@ TEQ
30201494c496e2827f991f75eae4acf8f7bf9952abddJim Grosbach@------------------------------------------------------------------------------
30211494c496e2827f991f75eae4acf8f7bf9952abddJim Grosbach        teq r5, #0xf000
30221494c496e2827f991f75eae4acf8f7bf9952abddJim Grosbach        teq r4, r5
30231494c496e2827f991f75eae4acf8f7bf9952abddJim Grosbach        teq r4, r5, lsl #5
30241494c496e2827f991f75eae4acf8f7bf9952abddJim Grosbach        teq r4, r5, lsr #5
30251494c496e2827f991f75eae4acf8f7bf9952abddJim Grosbach        teq r4, r5, lsr #5
30261494c496e2827f991f75eae4acf8f7bf9952abddJim Grosbach        teq r4, r5, asr #5
30271494c496e2827f991f75eae4acf8f7bf9952abddJim Grosbach        teq r4, r5, ror #5
30281494c496e2827f991f75eae4acf8f7bf9952abddJim Grosbach
30291494c496e2827f991f75eae4acf8f7bf9952abddJim Grosbach@ CHECK: teq.w	r5, #61440              @ encoding: [0x95,0xf4,0x70,0x4f]
30301494c496e2827f991f75eae4acf8f7bf9952abddJim Grosbach@ CHECK: teq.w	r4, r5                  @ encoding: [0x94,0xea,0x05,0x0f]
30311494c496e2827f991f75eae4acf8f7bf9952abddJim Grosbach@ CHECK: teq.w	r4, r5, lsl #5          @ encoding: [0x94,0xea,0x45,0x1f]
30321494c496e2827f991f75eae4acf8f7bf9952abddJim Grosbach@ CHECK: teq.w	r4, r5, lsr #5          @ encoding: [0x94,0xea,0x55,0x1f]
30331494c496e2827f991f75eae4acf8f7bf9952abddJim Grosbach@ CHECK: teq.w	r4, r5, lsr #5          @ encoding: [0x94,0xea,0x55,0x1f]
30341494c496e2827f991f75eae4acf8f7bf9952abddJim Grosbach@ CHECK: teq.w	r4, r5, asr #5          @ encoding: [0x94,0xea,0x65,0x1f]
30351494c496e2827f991f75eae4acf8f7bf9952abddJim Grosbach@ CHECK: teq.w	r4, r5, ror #5          @ encoding: [0x94,0xea,0x75,0x1f]
3036aa70695ef045a54eb8c4f701f9db03179c816b48Jim Grosbach
3037aa70695ef045a54eb8c4f701f9db03179c816b48Jim Grosbach
3038aa70695ef045a54eb8c4f701f9db03179c816b48Jim Grosbach@------------------------------------------------------------------------------
303911f23c1a7260a1cb4b4eee20aea09676e15d55c0Jim Grosbach@ TST
3040aa70695ef045a54eb8c4f701f9db03179c816b48Jim Grosbach@------------------------------------------------------------------------------
3041aa70695ef045a54eb8c4f701f9db03179c816b48Jim Grosbach        tst r5, #0xf000
3042aa70695ef045a54eb8c4f701f9db03179c816b48Jim Grosbach        tst r2, r5
3043aa70695ef045a54eb8c4f701f9db03179c816b48Jim Grosbach        tst r3, r12, lsl #5
3044aa70695ef045a54eb8c4f701f9db03179c816b48Jim Grosbach        tst r4, r11, lsr #4
3045aa70695ef045a54eb8c4f701f9db03179c816b48Jim Grosbach        tst r5, r10, lsr #12
3046aa70695ef045a54eb8c4f701f9db03179c816b48Jim Grosbach        tst r6, r9, asr #30
3047aa70695ef045a54eb8c4f701f9db03179c816b48Jim Grosbach        tst r7, r8, ror #2
3048aa70695ef045a54eb8c4f701f9db03179c816b48Jim Grosbach
3049aa70695ef045a54eb8c4f701f9db03179c816b48Jim Grosbach@ CHECK: tst.w	r5, #61440              @ encoding: [0x15,0xf4,0x70,0x4f]
3050aa70695ef045a54eb8c4f701f9db03179c816b48Jim Grosbach@ CHECK: tst	r2, r5                  @ encoding: [0x2a,0x42]
3051aa70695ef045a54eb8c4f701f9db03179c816b48Jim Grosbach@ CHECK: tst.w	r3, r12, lsl #5         @ encoding: [0x13,0xea,0x4c,0x1f]
3052aa70695ef045a54eb8c4f701f9db03179c816b48Jim Grosbach@ CHECK: tst.w	r4, r11, lsr #4         @ encoding: [0x14,0xea,0x1b,0x1f]
3053aa70695ef045a54eb8c4f701f9db03179c816b48Jim Grosbach@ CHECK: tst.w	r5, r10, lsr #12        @ encoding: [0x15,0xea,0x1a,0x3f]
3054aa70695ef045a54eb8c4f701f9db03179c816b48Jim Grosbach@ CHECK: tst.w	r6, r9, asr #30         @ encoding: [0x16,0xea,0xa9,0x7f]
3055aa70695ef045a54eb8c4f701f9db03179c816b48Jim Grosbach@ CHECK: tst.w	r7, r8, ror #2          @ encoding: [0x17,0xea,0xb8,0x0f]
3056661daa481ef438ea797b01df470d2190c93c9863Jim Grosbach
3057661daa481ef438ea797b01df470d2190c93c9863Jim Grosbach
3058661daa481ef438ea797b01df470d2190c93c9863Jim Grosbach@------------------------------------------------------------------------------
3059661daa481ef438ea797b01df470d2190c93c9863Jim Grosbach@ UADD16/UADD8
3060661daa481ef438ea797b01df470d2190c93c9863Jim Grosbach@------------------------------------------------------------------------------
3061661daa481ef438ea797b01df470d2190c93c9863Jim Grosbach        uadd16 r1, r2, r3
3062661daa481ef438ea797b01df470d2190c93c9863Jim Grosbach        uadd8 r1, r2, r3
3063661daa481ef438ea797b01df470d2190c93c9863Jim Grosbach        ite gt
3064661daa481ef438ea797b01df470d2190c93c9863Jim Grosbach        uadd16gt r1, r2, r3
3065661daa481ef438ea797b01df470d2190c93c9863Jim Grosbach        uadd8le r1, r2, r3
3066661daa481ef438ea797b01df470d2190c93c9863Jim Grosbach
3067661daa481ef438ea797b01df470d2190c93c9863Jim Grosbach@ CHECK: uadd16	r1, r2, r3              @ encoding: [0x92,0xfa,0x43,0xf1]
3068661daa481ef438ea797b01df470d2190c93c9863Jim Grosbach@ CHECK: uadd8	r1, r2, r3              @ encoding: [0x82,0xfa,0x43,0xf1]
3069661daa481ef438ea797b01df470d2190c93c9863Jim Grosbach@ CHECK: ite	gt                      @ encoding: [0xcc,0xbf]
3070661daa481ef438ea797b01df470d2190c93c9863Jim Grosbach@ CHECK: uadd16gt	r1, r2, r3      @ encoding: [0x92,0xfa,0x43,0xf1]
3071661daa481ef438ea797b01df470d2190c93c9863Jim Grosbach@ CHECK: uadd8le	r1, r2, r3      @ encoding: [0x82,0xfa,0x43,0xf1]
30724032eaf98c63b0fb1f2418a1cdc56b72bc76c329Jim Grosbach
30734032eaf98c63b0fb1f2418a1cdc56b72bc76c329Jim Grosbach
30744032eaf98c63b0fb1f2418a1cdc56b72bc76c329Jim Grosbach@------------------------------------------------------------------------------
30754032eaf98c63b0fb1f2418a1cdc56b72bc76c329Jim Grosbach@ UASX
30764032eaf98c63b0fb1f2418a1cdc56b72bc76c329Jim Grosbach@------------------------------------------------------------------------------
30774032eaf98c63b0fb1f2418a1cdc56b72bc76c329Jim Grosbach        uasx r9, r12, r0
30784032eaf98c63b0fb1f2418a1cdc56b72bc76c329Jim Grosbach        it eq
30794032eaf98c63b0fb1f2418a1cdc56b72bc76c329Jim Grosbach        uasxeq r9, r12, r0
30804032eaf98c63b0fb1f2418a1cdc56b72bc76c329Jim Grosbach        uaddsubx r9, r12, r0
30814032eaf98c63b0fb1f2418a1cdc56b72bc76c329Jim Grosbach        it eq
30824032eaf98c63b0fb1f2418a1cdc56b72bc76c329Jim Grosbach        uaddsubxeq r9, r12, r0
30834032eaf98c63b0fb1f2418a1cdc56b72bc76c329Jim Grosbach
30844032eaf98c63b0fb1f2418a1cdc56b72bc76c329Jim Grosbach@ CHECK: uasx	r9, r12, r0             @ encoding: [0xac,0xfa,0x40,0xf9]
30854032eaf98c63b0fb1f2418a1cdc56b72bc76c329Jim Grosbach@ CHECK: it	eq                      @ encoding: [0x08,0xbf]
30864032eaf98c63b0fb1f2418a1cdc56b72bc76c329Jim Grosbach@ CHECK: uasxeq	r9, r12, r0             @ encoding: [0xac,0xfa,0x40,0xf9]
30874032eaf98c63b0fb1f2418a1cdc56b72bc76c329Jim Grosbach@ CHECK: uasx	r9, r12, r0             @ encoding: [0xac,0xfa,0x40,0xf9]
30884032eaf98c63b0fb1f2418a1cdc56b72bc76c329Jim Grosbach@ CHECK: it	eq                      @ encoding: [0x08,0xbf]
30894032eaf98c63b0fb1f2418a1cdc56b72bc76c329Jim Grosbach@ CHECK: uasxeq	r9, r12, r0             @ encoding: [0xac,0xfa,0x40,0xf9]
30906451cbf79f75fde6319cd4dbcb8a48aecac702f4Jim Grosbach
30916451cbf79f75fde6319cd4dbcb8a48aecac702f4Jim Grosbach
30926451cbf79f75fde6319cd4dbcb8a48aecac702f4Jim Grosbach@------------------------------------------------------------------------------
30936451cbf79f75fde6319cd4dbcb8a48aecac702f4Jim Grosbach@ UBFX
30946451cbf79f75fde6319cd4dbcb8a48aecac702f4Jim Grosbach@------------------------------------------------------------------------------
30956451cbf79f75fde6319cd4dbcb8a48aecac702f4Jim Grosbach        ubfx r4, r5, #16, #1
30966451cbf79f75fde6319cd4dbcb8a48aecac702f4Jim Grosbach        it gt
30976451cbf79f75fde6319cd4dbcb8a48aecac702f4Jim Grosbach        ubfxgt r4, r5, #16, #16
30986451cbf79f75fde6319cd4dbcb8a48aecac702f4Jim Grosbach
30996451cbf79f75fde6319cd4dbcb8a48aecac702f4Jim Grosbach@ CHECK: ubfx	r4, r5, #16, #1         @ encoding: [0xc5,0xf3,0x00,0x44]
31006451cbf79f75fde6319cd4dbcb8a48aecac702f4Jim Grosbach@ CHECK: it	gt                      @ encoding: [0xc8,0xbf]
31016451cbf79f75fde6319cd4dbcb8a48aecac702f4Jim Grosbach@ CHECK: ubfxgt	r4, r5, #16, #16        @ encoding: [0xc5,0xf3,0x0f,0x44]
31022c1ef5bac85f3ef002047178490a00c5ea2c7cfcJim Grosbach
31032c1ef5bac85f3ef002047178490a00c5ea2c7cfcJim Grosbach
31042c1ef5bac85f3ef002047178490a00c5ea2c7cfcJim Grosbach@------------------------------------------------------------------------------
31052c1ef5bac85f3ef002047178490a00c5ea2c7cfcJim Grosbach@ UHADD16/UHADD8
31062c1ef5bac85f3ef002047178490a00c5ea2c7cfcJim Grosbach@------------------------------------------------------------------------------
31072c1ef5bac85f3ef002047178490a00c5ea2c7cfcJim Grosbach        uhadd16 r4, r8, r2
31082c1ef5bac85f3ef002047178490a00c5ea2c7cfcJim Grosbach        uhadd8 r4, r8, r2
31092c1ef5bac85f3ef002047178490a00c5ea2c7cfcJim Grosbach        itt gt
31102c1ef5bac85f3ef002047178490a00c5ea2c7cfcJim Grosbach        uhadd16gt r4, r8, r2
31112c1ef5bac85f3ef002047178490a00c5ea2c7cfcJim Grosbach        uhadd8gt r4, r8, r2
31122c1ef5bac85f3ef002047178490a00c5ea2c7cfcJim Grosbach
31132c1ef5bac85f3ef002047178490a00c5ea2c7cfcJim Grosbach@ CHECK: uhadd16	r4, r8, r2      @ encoding: [0x98,0xfa,0x62,0xf4]
31142c1ef5bac85f3ef002047178490a00c5ea2c7cfcJim Grosbach@ CHECK: uhadd8	r4, r8, r2              @ encoding: [0x88,0xfa,0x62,0xf4]
31152c1ef5bac85f3ef002047178490a00c5ea2c7cfcJim Grosbach@ CHECK: itt	gt                      @ encoding: [0xc4,0xbf]
31162c1ef5bac85f3ef002047178490a00c5ea2c7cfcJim Grosbach@ CHECK: uhadd16gt	r4, r8, r2      @ encoding: [0x98,0xfa,0x62,0xf4]
31172c1ef5bac85f3ef002047178490a00c5ea2c7cfcJim Grosbach@ CHECK: uhadd8gt	r4, r8, r2      @ encoding: [0x88,0xfa,0x62,0xf4]
31186729c48b940df5c141eec6375d14544cdbb2ed3fJim Grosbach
31196729c48b940df5c141eec6375d14544cdbb2ed3fJim Grosbach
31206729c48b940df5c141eec6375d14544cdbb2ed3fJim Grosbach@------------------------------------------------------------------------------
31216729c48b940df5c141eec6375d14544cdbb2ed3fJim Grosbach@ UHASX/UHSAX
31226729c48b940df5c141eec6375d14544cdbb2ed3fJim Grosbach@------------------------------------------------------------------------------
31236729c48b940df5c141eec6375d14544cdbb2ed3fJim Grosbach        uhasx r4, r1, r5
31246729c48b940df5c141eec6375d14544cdbb2ed3fJim Grosbach        uhsax r5, r6, r6
31256729c48b940df5c141eec6375d14544cdbb2ed3fJim Grosbach        itt gt
31266729c48b940df5c141eec6375d14544cdbb2ed3fJim Grosbach        uhasxgt r6, r9, r8
31276729c48b940df5c141eec6375d14544cdbb2ed3fJim Grosbach        uhsaxgt r7, r8, r12
31286729c48b940df5c141eec6375d14544cdbb2ed3fJim Grosbach        uhaddsubx r4, r1, r5
31296729c48b940df5c141eec6375d14544cdbb2ed3fJim Grosbach        uhsubaddx r5, r6, r6
31306729c48b940df5c141eec6375d14544cdbb2ed3fJim Grosbach        itt gt
31316729c48b940df5c141eec6375d14544cdbb2ed3fJim Grosbach        uhaddsubxgt r6, r9, r8
31326729c48b940df5c141eec6375d14544cdbb2ed3fJim Grosbach        uhsubaddxgt r7, r8, r12
31336729c48b940df5c141eec6375d14544cdbb2ed3fJim Grosbach
31346729c48b940df5c141eec6375d14544cdbb2ed3fJim Grosbach@ CHECK: uhasx	r4, r1, r5              @ encoding: [0xa1,0xfa,0x65,0xf4]
31356729c48b940df5c141eec6375d14544cdbb2ed3fJim Grosbach@ CHECK: uhsax	r5, r6, r6              @ encoding: [0xe6,0xfa,0x66,0xf5]
31366729c48b940df5c141eec6375d14544cdbb2ed3fJim Grosbach@ CHECK: itt	gt                      @ encoding: [0xc4,0xbf]
31376729c48b940df5c141eec6375d14544cdbb2ed3fJim Grosbach@ CHECK: uhasxgt r6, r9, r8             @ encoding: [0xa9,0xfa,0x68,0xf6]
31386729c48b940df5c141eec6375d14544cdbb2ed3fJim Grosbach@ CHECK: uhsaxgt r7, r8, r12            @ encoding: [0xe8,0xfa,0x6c,0xf7]
31396729c48b940df5c141eec6375d14544cdbb2ed3fJim Grosbach@ CHECK: uhasx	r4, r1, r5              @ encoding: [0xa1,0xfa,0x65,0xf4]
31406729c48b940df5c141eec6375d14544cdbb2ed3fJim Grosbach@ CHECK: uhsax	r5, r6, r6              @ encoding: [0xe6,0xfa,0x66,0xf5]
31416729c48b940df5c141eec6375d14544cdbb2ed3fJim Grosbach@ CHECK: itt	gt                      @ encoding: [0xc4,0xbf]
31426729c48b940df5c141eec6375d14544cdbb2ed3fJim Grosbach@ CHECK: uhasxgt r6, r9, r8             @ encoding: [0xa9,0xfa,0x68,0xf6]
31436729c48b940df5c141eec6375d14544cdbb2ed3fJim Grosbach@ CHECK: uhsaxgt r7, r8, r12            @ encoding: [0xe8,0xfa,0x6c,0xf7]
31449546de68aac116cdf6f0af5a2972101acc476e0cJim Grosbach
31459546de68aac116cdf6f0af5a2972101acc476e0cJim Grosbach
31469546de68aac116cdf6f0af5a2972101acc476e0cJim Grosbach@------------------------------------------------------------------------------
31479546de68aac116cdf6f0af5a2972101acc476e0cJim Grosbach@ UHSUB16/UHSUB8
31489546de68aac116cdf6f0af5a2972101acc476e0cJim Grosbach@------------------------------------------------------------------------------
31499546de68aac116cdf6f0af5a2972101acc476e0cJim Grosbach        uhsub16 r5, r8, r3
31509546de68aac116cdf6f0af5a2972101acc476e0cJim Grosbach        uhsub8 r1, r7, r6
31519546de68aac116cdf6f0af5a2972101acc476e0cJim Grosbach        itt lt
31529546de68aac116cdf6f0af5a2972101acc476e0cJim Grosbach        uhsub16lt r4, r9, r12
31539546de68aac116cdf6f0af5a2972101acc476e0cJim Grosbach        uhsub8lt r3, r1, r5
31549546de68aac116cdf6f0af5a2972101acc476e0cJim Grosbach
31559546de68aac116cdf6f0af5a2972101acc476e0cJim Grosbach@ CHECK: uhsub16	r5, r8, r3      @ encoding: [0xd8,0xfa,0x63,0xf5]
31569546de68aac116cdf6f0af5a2972101acc476e0cJim Grosbach@ CHECK: uhsub8	r1, r7, r6              @ encoding: [0xc7,0xfa,0x66,0xf1]
31579546de68aac116cdf6f0af5a2972101acc476e0cJim Grosbach@ CHECK: itt	lt                      @ encoding: [0xbc,0xbf]
31589546de68aac116cdf6f0af5a2972101acc476e0cJim Grosbach@ CHECK: uhsub16lt	r4, r9, r12     @ encoding: [0xd9,0xfa,0x6c,0xf4]
31599546de68aac116cdf6f0af5a2972101acc476e0cJim Grosbach@ CHECK: uhsub8lt	r3, r1, r5      @ encoding: [0xc1,0xfa,0x65,0xf3]
3160d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach
3161d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach
3162d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach@------------------------------------------------------------------------------
3163d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach@ UMAAL
3164d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach@------------------------------------------------------------------------------
3165d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach        umaal r3, r4, r5, r6
3166d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach        it lt
3167d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach        umaallt r3, r4, r5, r6
3168d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach
3169d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach@ CHECK: umaal	r3, r4, r5, r6          @ encoding: [0xe5,0xfb,0x66,0x34]
3170d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach@ CHECK: it	lt                      @ encoding: [0xb8,0xbf]
3171d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach@ CHECK: umaallt	r3, r4, r5, r6  @ encoding: [0xe5,0xfb,0x66,0x34]
3172d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach
3173d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach
3174d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach@------------------------------------------------------------------------------
3175d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach@ UMLAL
3176d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach@------------------------------------------------------------------------------
3177d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach        umlal r2, r4, r6, r8
3178d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach        it gt
3179d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach        umlalgt r6, r1, r2, r6
3180d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach
3181d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach@ CHECK: umlal	r2, r4, r6, r8          @ encoding: [0xe6,0xfb,0x08,0x24]
3182d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach@ CHECK: it	gt                      @ encoding: [0xc8,0xbf]
3183d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach@ CHECK: umlalgt	r6, r1, r2, r6  @ encoding: [0xe2,0xfb,0x06,0x61]
3184d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach
3185d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach
3186d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach@------------------------------------------------------------------------------
3187d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach@ UMULL
3188d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach@------------------------------------------------------------------------------
3189d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach        umull r2, r4, r6, r8
3190d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach        it gt
3191d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach        umullgt r6, r1, r2, r6
3192d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach
3193d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach@ CHECK: umull	r2, r4, r6, r8          @ encoding: [0xa6,0xfb,0x08,0x24]
3194d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach@ CHECK: it	gt                      @ encoding: [0xc8,0xbf]
3195d5d0e81a4bec76a56a1e7b2326ed12bfcbcab9b9Jim Grosbach@ CHECK: umullgt	r6, r1, r2, r6  @ encoding: [0xa2,0xfb,0x06,0x61]
3196d7e2785ea8af746abee99aaef074a610d5ed73d8Jim Grosbach
3197d7e2785ea8af746abee99aaef074a610d5ed73d8Jim Grosbach
3198d7e2785ea8af746abee99aaef074a610d5ed73d8Jim Grosbach@------------------------------------------------------------------------------
3199d7e2785ea8af746abee99aaef074a610d5ed73d8Jim Grosbach@ UQADD16/UQADD8
3200d7e2785ea8af746abee99aaef074a610d5ed73d8Jim Grosbach@------------------------------------------------------------------------------
3201d7e2785ea8af746abee99aaef074a610d5ed73d8Jim Grosbach        uqadd16 r1, r2, r3
3202d7e2785ea8af746abee99aaef074a610d5ed73d8Jim Grosbach        uqadd8 r3, r4, r8
3203d7e2785ea8af746abee99aaef074a610d5ed73d8Jim Grosbach        ite gt
3204d7e2785ea8af746abee99aaef074a610d5ed73d8Jim Grosbach        uqadd16gt r4, r7, r9
3205d7e2785ea8af746abee99aaef074a610d5ed73d8Jim Grosbach        uqadd8le r8, r1, r2
3206d7e2785ea8af746abee99aaef074a610d5ed73d8Jim Grosbach
3207d7e2785ea8af746abee99aaef074a610d5ed73d8Jim Grosbach@ CHECK: uqadd16	r1, r2, r3      @ encoding: [0x92,0xfa,0x53,0xf1]
3208d7e2785ea8af746abee99aaef074a610d5ed73d8Jim Grosbach@ CHECK: uqadd8	r3, r4, r8              @ encoding: [0x84,0xfa,0x58,0xf3]
3209d7e2785ea8af746abee99aaef074a610d5ed73d8Jim Grosbach@ CHECK: ite	gt                      @ encoding: [0xcc,0xbf]
3210d7e2785ea8af746abee99aaef074a610d5ed73d8Jim Grosbach@ CHECK: uqadd16gt	r4, r7, r9      @ encoding: [0x97,0xfa,0x59,0xf4]
3211d7e2785ea8af746abee99aaef074a610d5ed73d8Jim Grosbach@ CHECK: uqadd8le	r8, r1, r2      @ encoding: [0x81,0xfa,0x52,0xf8]
3212ab3bf97fe029e3ce6834b54c4c5a647c0b665546Jim Grosbach
3213ab3bf97fe029e3ce6834b54c4c5a647c0b665546Jim Grosbach
3214ab3bf97fe029e3ce6834b54c4c5a647c0b665546Jim Grosbach@------------------------------------------------------------------------------
3215ab3bf97fe029e3ce6834b54c4c5a647c0b665546Jim Grosbach@ UQASX/UQSAX
3216ab3bf97fe029e3ce6834b54c4c5a647c0b665546Jim Grosbach@------------------------------------------------------------------------------
3217ab3bf97fe029e3ce6834b54c4c5a647c0b665546Jim Grosbach        uqasx r1, r2, r3
3218ab3bf97fe029e3ce6834b54c4c5a647c0b665546Jim Grosbach        uqsax r3, r4, r8
3219ab3bf97fe029e3ce6834b54c4c5a647c0b665546Jim Grosbach        ite gt
3220ab3bf97fe029e3ce6834b54c4c5a647c0b665546Jim Grosbach        uqasxgt r4, r7, r9
3221ab3bf97fe029e3ce6834b54c4c5a647c0b665546Jim Grosbach        uqsaxle r8, r1, r2
3222ab3bf97fe029e3ce6834b54c4c5a647c0b665546Jim Grosbach
3223ab3bf97fe029e3ce6834b54c4c5a647c0b665546Jim Grosbach        uqaddsubx r1, r2, r3
3224ab3bf97fe029e3ce6834b54c4c5a647c0b665546Jim Grosbach        uqsubaddx r3, r4, r8
3225ab3bf97fe029e3ce6834b54c4c5a647c0b665546Jim Grosbach        ite gt
3226ab3bf97fe029e3ce6834b54c4c5a647c0b665546Jim Grosbach        uqaddsubxgt r4, r7, r9
3227ab3bf97fe029e3ce6834b54c4c5a647c0b665546Jim Grosbach        uqsubaddxle r8, r1, r2
3228ab3bf97fe029e3ce6834b54c4c5a647c0b665546Jim Grosbach
3229ab3bf97fe029e3ce6834b54c4c5a647c0b665546Jim Grosbach@ CHECK: uqasx	r1, r2, r3              @ encoding: [0xa2,0xfa,0x53,0xf1]
3230ab3bf97fe029e3ce6834b54c4c5a647c0b665546Jim Grosbach@ CHECK: uqsax	r3, r4, r8              @ encoding: [0xe4,0xfa,0x58,0xf3]
3231ab3bf97fe029e3ce6834b54c4c5a647c0b665546Jim Grosbach@ CHECK: ite	gt                      @ encoding: [0xcc,0xbf]
3232ab3bf97fe029e3ce6834b54c4c5a647c0b665546Jim Grosbach@ CHECK: uqasxgt r4, r7, r9             @ encoding: [0xa7,0xfa,0x59,0xf4]
3233ab3bf97fe029e3ce6834b54c4c5a647c0b665546Jim Grosbach@ CHECK: uqsaxle r8, r1, r2             @ encoding: [0xe1,0xfa,0x52,0xf8]
3234ab3bf97fe029e3ce6834b54c4c5a647c0b665546Jim Grosbach
3235ab3bf97fe029e3ce6834b54c4c5a647c0b665546Jim Grosbach@ CHECK: uqasx	r1, r2, r3              @ encoding: [0xa2,0xfa,0x53,0xf1]
3236ab3bf97fe029e3ce6834b54c4c5a647c0b665546Jim Grosbach@ CHECK: uqsax	r3, r4, r8              @ encoding: [0xe4,0xfa,0x58,0xf3]
3237ab3bf97fe029e3ce6834b54c4c5a647c0b665546Jim Grosbach@ CHECK: ite	gt                      @ encoding: [0xcc,0xbf]
3238ab3bf97fe029e3ce6834b54c4c5a647c0b665546Jim Grosbach@ CHECK: uqasxgt r4, r7, r9             @ encoding: [0xa7,0xfa,0x59,0xf4]
3239ab3bf97fe029e3ce6834b54c4c5a647c0b665546Jim Grosbach@ CHECK: uqsaxle r8, r1, r2             @ encoding: [0xe1,0xfa,0x52,0xf8]
324073e019eb12bda5a3dd6165b749dfa08b8b30e477Jim Grosbach
324173e019eb12bda5a3dd6165b749dfa08b8b30e477Jim Grosbach
324273e019eb12bda5a3dd6165b749dfa08b8b30e477Jim Grosbach@------------------------------------------------------------------------------
324373e019eb12bda5a3dd6165b749dfa08b8b30e477Jim Grosbach@ UQSUB16/UQSUB8
324473e019eb12bda5a3dd6165b749dfa08b8b30e477Jim Grosbach@------------------------------------------------------------------------------
324573e019eb12bda5a3dd6165b749dfa08b8b30e477Jim Grosbach        uqsub8 r8, r2, r9
324673e019eb12bda5a3dd6165b749dfa08b8b30e477Jim Grosbach        uqsub16 r1, r9, r7
324773e019eb12bda5a3dd6165b749dfa08b8b30e477Jim Grosbach        ite gt
324873e019eb12bda5a3dd6165b749dfa08b8b30e477Jim Grosbach        uqsub8gt r3, r1, r6
324973e019eb12bda5a3dd6165b749dfa08b8b30e477Jim Grosbach        uqsub16le r4, r6, r4
325073e019eb12bda5a3dd6165b749dfa08b8b30e477Jim Grosbach
325173e019eb12bda5a3dd6165b749dfa08b8b30e477Jim Grosbach@ CHECK: uqsub8	r8, r2, r9              @ encoding: [0xc2,0xfa,0x59,0xf8]
325273e019eb12bda5a3dd6165b749dfa08b8b30e477Jim Grosbach@ CHECK: uqsub16 r1, r9, r7             @ encoding: [0xd9,0xfa,0x57,0xf1]
325373e019eb12bda5a3dd6165b749dfa08b8b30e477Jim Grosbach@ CHECK: ite	gt                      @ encoding: [0xcc,0xbf]
325473e019eb12bda5a3dd6165b749dfa08b8b30e477Jim Grosbach@ CHECK: uqsub8gt	r3, r1, r6      @ encoding: [0xc1,0xfa,0x56,0xf3]
325573e019eb12bda5a3dd6165b749dfa08b8b30e477Jim Grosbach@ CHECK: uqsub16le	r4, r6, r4      @ encoding: [0xd6,0xfa,0x54,0xf4]
3256ad7d7444563b628dd723015e9c44692d5b67067eJim Grosbach
3257ad7d7444563b628dd723015e9c44692d5b67067eJim Grosbach
3258ad7d7444563b628dd723015e9c44692d5b67067eJim Grosbach@------------------------------------------------------------------------------
3259ad7d7444563b628dd723015e9c44692d5b67067eJim Grosbach@ UQSUB16/UQSUB8
3260ad7d7444563b628dd723015e9c44692d5b67067eJim Grosbach@------------------------------------------------------------------------------
3261ad7d7444563b628dd723015e9c44692d5b67067eJim Grosbach        usad8 r1, r9, r7
3262ad7d7444563b628dd723015e9c44692d5b67067eJim Grosbach        usada8 r8, r2, r9, r12
3263ad7d7444563b628dd723015e9c44692d5b67067eJim Grosbach        ite gt
3264ad7d7444563b628dd723015e9c44692d5b67067eJim Grosbach        usada8gt r3, r1, r6, r9
3265ad7d7444563b628dd723015e9c44692d5b67067eJim Grosbach        usad8le r4, r6, r4
3266ad7d7444563b628dd723015e9c44692d5b67067eJim Grosbach
3267ad7d7444563b628dd723015e9c44692d5b67067eJim Grosbach@ CHECK: usad8	r1, r9, r7              @ encoding: [0x79,0xfb,0x07,0xf1]
3268ad7d7444563b628dd723015e9c44692d5b67067eJim Grosbach@ CHECK: usada8	r8, r2, r9, r12         @ encoding: [0x72,0xfb,0x09,0xc8]
3269ad7d7444563b628dd723015e9c44692d5b67067eJim Grosbach@ CHECK: ite	gt                      @ encoding: [0xcc,0xbf]
3270ad7d7444563b628dd723015e9c44692d5b67067eJim Grosbach@ CHECK: usada8gt	r3, r1, r6, r9  @ encoding: [0x71,0xfb,0x06,0x93]
3271ad7d7444563b628dd723015e9c44692d5b67067eJim Grosbach@ CHECK: usad8le	r4, r6, r4      @ encoding: [0x76,0xfb,0x04,0xf4]
3272a7e5b01fe1156050ac9174a421ecf90911e1949cJim Grosbach
3273a7e5b01fe1156050ac9174a421ecf90911e1949cJim Grosbach
3274a7e5b01fe1156050ac9174a421ecf90911e1949cJim Grosbach@------------------------------------------------------------------------------
3275a7e5b01fe1156050ac9174a421ecf90911e1949cJim Grosbach@ USAT
3276a7e5b01fe1156050ac9174a421ecf90911e1949cJim Grosbach@------------------------------------------------------------------------------
3277a7e5b01fe1156050ac9174a421ecf90911e1949cJim Grosbach        usat	r8, #1, r10
3278a7e5b01fe1156050ac9174a421ecf90911e1949cJim Grosbach        usat	r8, #4, r10, lsl #0
3279a7e5b01fe1156050ac9174a421ecf90911e1949cJim Grosbach        usat	r8, #5, r10, lsl #31
3280a7e5b01fe1156050ac9174a421ecf90911e1949cJim Grosbach        usat	r8, #16, r10, asr #1
3281a7e5b01fe1156050ac9174a421ecf90911e1949cJim Grosbach
3282a7e5b01fe1156050ac9174a421ecf90911e1949cJim Grosbach@ CHECK: usat	r8, #1, r10             @ encoding: [0x8a,0xf3,0x01,0x08]
3283a7e5b01fe1156050ac9174a421ecf90911e1949cJim Grosbach@ CHECK: usat	r8, #4, r10             @ encoding: [0x8a,0xf3,0x04,0x08]
3284a7e5b01fe1156050ac9174a421ecf90911e1949cJim Grosbach@ CHECK: usat	r8, #5, r10, lsl #31    @ encoding: [0x8a,0xf3,0xc5,0x78]
3285a7e5b01fe1156050ac9174a421ecf90911e1949cJim Grosbach@ CHECK: usat	r8, #16, r10, asr #1    @ encoding: [0xaa,0xf3,0x50,0x08]
3286653419fff0420a6c9cfc953c135f1e9dc3420a45Jim Grosbach
3287653419fff0420a6c9cfc953c135f1e9dc3420a45Jim Grosbach
3288653419fff0420a6c9cfc953c135f1e9dc3420a45Jim Grosbach@------------------------------------------------------------------------------
3289653419fff0420a6c9cfc953c135f1e9dc3420a45Jim Grosbach@ USAT16
3290653419fff0420a6c9cfc953c135f1e9dc3420a45Jim Grosbach@------------------------------------------------------------------------------
3291653419fff0420a6c9cfc953c135f1e9dc3420a45Jim Grosbach        usat16	r2, #2, r7
3292653419fff0420a6c9cfc953c135f1e9dc3420a45Jim Grosbach        usat16	r3, #15, r5
3293653419fff0420a6c9cfc953c135f1e9dc3420a45Jim Grosbach
3294653419fff0420a6c9cfc953c135f1e9dc3420a45Jim Grosbach@ CHECK: usat16	r2, #2, r7              @ encoding: [0xa7,0xf3,0x02,0x02]
3295653419fff0420a6c9cfc953c135f1e9dc3420a45Jim Grosbach@ CHECK: usat16	r3, #15, r5             @ encoding: [0xa5,0xf3,0x0f,0x03]
32966053cd956fa6c781a4ee05cbc99ab15db3cf3d13Jim Grosbach
32976053cd956fa6c781a4ee05cbc99ab15db3cf3d13Jim Grosbach
32986053cd956fa6c781a4ee05cbc99ab15db3cf3d13Jim Grosbach@------------------------------------------------------------------------------
32996053cd956fa6c781a4ee05cbc99ab15db3cf3d13Jim Grosbach@ USAX
33006053cd956fa6c781a4ee05cbc99ab15db3cf3d13Jim Grosbach@------------------------------------------------------------------------------
33016053cd956fa6c781a4ee05cbc99ab15db3cf3d13Jim Grosbach        usax r2, r3, r4
33026053cd956fa6c781a4ee05cbc99ab15db3cf3d13Jim Grosbach        it ne
33036053cd956fa6c781a4ee05cbc99ab15db3cf3d13Jim Grosbach        usaxne r6, r1, r9
33046053cd956fa6c781a4ee05cbc99ab15db3cf3d13Jim Grosbach        usubaddx r2, r3, r4
33056053cd956fa6c781a4ee05cbc99ab15db3cf3d13Jim Grosbach        it ne
33066053cd956fa6c781a4ee05cbc99ab15db3cf3d13Jim Grosbach        usubaddxne r6, r1, r9
33076053cd956fa6c781a4ee05cbc99ab15db3cf3d13Jim Grosbach
33086053cd956fa6c781a4ee05cbc99ab15db3cf3d13Jim Grosbach@ CHECK: usax	r2, r3, r4              @ encoding: [0xe3,0xfa,0x44,0xf2]
33096053cd956fa6c781a4ee05cbc99ab15db3cf3d13Jim Grosbach@ CHECK: it	ne                      @ encoding: [0x18,0xbf]
33106053cd956fa6c781a4ee05cbc99ab15db3cf3d13Jim Grosbach@ CHECK: usaxne	r6, r1, r9              @ encoding: [0xe1,0xfa,0x49,0xf6]
33116053cd956fa6c781a4ee05cbc99ab15db3cf3d13Jim Grosbach@ CHECK: usax	r2, r3, r4              @ encoding: [0xe3,0xfa,0x44,0xf2]
33126053cd956fa6c781a4ee05cbc99ab15db3cf3d13Jim Grosbach@ CHECK: it	ne                      @ encoding: [0x18,0xbf]
33136053cd956fa6c781a4ee05cbc99ab15db3cf3d13Jim Grosbach@ CHECK: usaxne	r6, r1, r9              @ encoding: [0xe1,0xfa,0x49,0xf6]
3314400b624e02216dcbe1ec0c17963caa088b33c57aJim Grosbach
3315400b624e02216dcbe1ec0c17963caa088b33c57aJim Grosbach
3316400b624e02216dcbe1ec0c17963caa088b33c57aJim Grosbach@------------------------------------------------------------------------------
3317400b624e02216dcbe1ec0c17963caa088b33c57aJim Grosbach@ USUB16/USUB8
3318400b624e02216dcbe1ec0c17963caa088b33c57aJim Grosbach@------------------------------------------------------------------------------
3319400b624e02216dcbe1ec0c17963caa088b33c57aJim Grosbach        usub16 r4, r2, r7
3320400b624e02216dcbe1ec0c17963caa088b33c57aJim Grosbach        usub8 r1, r8, r5
3321400b624e02216dcbe1ec0c17963caa088b33c57aJim Grosbach        ite hi
3322400b624e02216dcbe1ec0c17963caa088b33c57aJim Grosbach        usub16hi r1, r1, r3
3323400b624e02216dcbe1ec0c17963caa088b33c57aJim Grosbach        usub8ls r9, r2, r3
3324400b624e02216dcbe1ec0c17963caa088b33c57aJim Grosbach
3325400b624e02216dcbe1ec0c17963caa088b33c57aJim Grosbach@ CHECK: usub16	r4, r2, r7              @ encoding: [0xd2,0xfa,0x47,0xf4]
3326400b624e02216dcbe1ec0c17963caa088b33c57aJim Grosbach@ CHECK: usub8	r1, r8, r5              @ encoding: [0xc8,0xfa,0x45,0xf1]
3327400b624e02216dcbe1ec0c17963caa088b33c57aJim Grosbach@ CHECK: ite	hi                      @ encoding: [0x8c,0xbf]
3328400b624e02216dcbe1ec0c17963caa088b33c57aJim Grosbach@ CHECK: usub16hi	r1, r1, r3      @ encoding: [0xd1,0xfa,0x43,0xf1]
3329400b624e02216dcbe1ec0c17963caa088b33c57aJim Grosbach@ CHECK: usub8ls	r9, r2, r3      @ encoding: [0xc2,0xfa,0x43,0xf9]
333050f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach
333150f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach
333250f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@------------------------------------------------------------------------------
333350f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ UXTAB
333450f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@------------------------------------------------------------------------------
333550f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        uxtab r2, r3, r4
333650f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        uxtab r4, r5, r6, ror #0
333750f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        it lt
333850f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        uxtablt r6, r2, r9, ror #8
333950f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        uxtab r5, r1, r4, ror #16
334050f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        uxtab r7, r8, r3, ror #24
334150f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach
334250f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: uxtab	r2, r3, r4              @ encoding: [0x53,0xfa,0x84,0xf2]
334350f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: uxtab	r4, r5, r6              @ encoding: [0x55,0xfa,0x86,0xf4]
334450f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: it	lt                      @ encoding: [0xb8,0xbf]
334550f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: uxtablt r6, r2, r9, ror #8     @ encoding: [0x52,0xfa,0x99,0xf6]
334650f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: uxtab	r5, r1, r4, ror #16     @ encoding: [0x51,0xfa,0xa4,0xf5]
334750f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: uxtab	r7, r8, r3, ror #24     @ encoding: [0x58,0xfa,0xb3,0xf7]
334850f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach
334950f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach
335050f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@------------------------------------------------------------------------------
335150f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ UXTAB16
335250f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@------------------------------------------------------------------------------
335350f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        it ge
335450f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        uxtab16ge r0, r1, r4
335550f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        uxtab16 r6, r2, r7, ror #0
335650f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        uxtab16 r3, r5, r8, ror #8
335750f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        uxtab16 r3, r2, r1, ror #16
335850f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        it eq
335950f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        uxtab16eq r1, r2, r3, ror #24
336050f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach
336150f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: it	ge                      @ encoding: [0xa8,0xbf]
336250f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: uxtab16ge	r0, r1, r4      @ encoding: [0x31,0xfa,0x84,0xf0]
336350f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: uxtab16 r6, r2, r7             @ encoding: [0x32,0xfa,0x87,0xf6]
336450f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: uxtab16 r3, r5, r8, ror #8     @ encoding: [0x35,0xfa,0x98,0xf3]
336550f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: uxtab16 r3, r2, r1, ror #16    @ encoding: [0x32,0xfa,0xa1,0xf3]
336650f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: it	eq                      @ encoding: [0x08,0xbf]
336750f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: uxtab16eq r1, r2, r3, ror #24  @ encoding: [0x32,0xfa,0xb3,0xf1]
336850f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach
336950f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach
337050f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@------------------------------------------------------------------------------
337150f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ UXTAH
337250f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@------------------------------------------------------------------------------
337350f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        uxtah r1, r3, r9
337450f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        it hi
337550f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        uxtahhi r6, r1, r6, ror #0
337650f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        uxtah r3, r8, r3, ror #8
337750f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        it lo
337850f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        uxtahlo r2, r2, r4, ror #16
337950f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        uxtah r9, r3, r3, ror #24
338050f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach
338150f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: uxtah	r1, r3, r9              @ encoding: [0x13,0xfa,0x89,0xf1]
338250f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: it	hi                      @ encoding: [0x88,0xbf]
338350f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: uxtahhi r6, r1, r6             @ encoding: [0x11,0xfa,0x86,0xf6]
338450f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: uxtah	r3, r8, r3, ror #8      @ encoding: [0x18,0xfa,0x93,0xf3]
338550f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: it	lo                      @ encoding: [0x38,0xbf]
338650f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: uxtahlo r2, r2, r4, ror #16    @ encoding: [0x12,0xfa,0xa4,0xf2]
338750f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: uxtah	r9, r3, r3, ror #24     @ encoding: [0x13,0xfa,0xb3,0xf9]
338850f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach
338950f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach
339050f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@------------------------------------------------------------------------------
339150f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ UXTB
339250f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@------------------------------------------------------------------------------
339350f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        it ge
339450f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        uxtbge r2, r4
339550f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        uxtb r5, r6, ror #0
339650f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        uxtb r6, r9, ror #8
339750f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        it cc
339850f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        uxtbcc r5, r1, ror #16
339950f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        uxtb r8, r3, ror #24
340025ddc2bf7ed69f500dd4d3e003004bda28c3dd95Jim Grosbach        uxtb.w  r7, r8
340150f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach
340250f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: it	ge                      @ encoding: [0xa8,0xbf]
340350f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: uxtbge	r2, r4                  @ encoding: [0xe2,0xb2]
340450f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: uxtb	r5, r6                  @ encoding: [0xf5,0xb2]
340550f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: uxtb.w	r6, r9, ror #8          @ encoding: [0x5f,0xfa,0x99,0xf6]
340650f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: it	lo                      @ encoding: [0x38,0xbf]
340750f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: uxtblo.w	r5, r1, ror #16 @ encoding: [0x5f,0xfa,0xa1,0xf5]
340850f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: uxtb.w	r8, r3, ror #24         @ encoding: [0x5f,0xfa,0xb3,0xf8]
340925ddc2bf7ed69f500dd4d3e003004bda28c3dd95Jim Grosbach@ CHECK: uxtb.w	r7, r8                  @ encoding: [0x5f,0xfa,0x88,0xf7]
341050f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach
341150f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach
341250f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@------------------------------------------------------------------------------
341350f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ UXTB16
341450f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@------------------------------------------------------------------------------
341550f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        uxtb16 r1, r4
341650f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        uxtb16 r6, r7, ror #0
341750f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        it cs
341850f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        uxtb16cs r3, r5, ror #8
341950f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        uxtb16 r3, r1, ror #16
342050f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        it ge
342150f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        uxtb16ge r2, r3, ror #24
342250f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach
342350f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: uxtb16	r1, r4                  @ encoding: [0x3f,0xfa,0x84,0xf1]
342450f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: uxtb16	r6, r7                  @ encoding: [0x3f,0xfa,0x87,0xf6]
342550f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: it	hs                      @ encoding: [0x28,0xbf]
342650f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: uxtb16hs	r3, r5, ror #8  @ encoding: [0x3f,0xfa,0x95,0xf3]
342750f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: uxtb16	r3, r1, ror #16         @ encoding: [0x3f,0xfa,0xa1,0xf3]
342850f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: it	ge                      @ encoding: [0xa8,0xbf]
342950f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: uxtb16ge	r2, r3, ror #24 @ encoding: [0x3f,0xfa,0xb3,0xf2]
343050f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach
343150f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach
343250f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@------------------------------------------------------------------------------
343350f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ UXTH
343450f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@------------------------------------------------------------------------------
343550f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        it ne
343650f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        uxthne r3, r9
343750f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        uxth r1, r6, ror #0
343850f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        uxth r3, r8, ror #8
343950f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        it le
344050f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        uxthle r2, r2, ror #16
344150f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach        uxth r9, r3, ror #24
344225ddc2bf7ed69f500dd4d3e003004bda28c3dd95Jim Grosbach        uxth.w  r7, r8
344350f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach
344450f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: it	ne                      @ encoding: [0x18,0xbf]
344550f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: uxthne.w	r3, r9          @ encoding: [0x1f,0xfa,0x89,0xf3]
344650f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: uxth	r1, r6                  @ encoding: [0xb1,0xb2]
344750f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: uxth.w	r3, r8, ror #8          @ encoding: [0x1f,0xfa,0x98,0xf3]
344850f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: it	le                      @ encoding: [0xd8,0xbf]
344950f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: uxthle.w	r2, r2, ror #16 @ encoding: [0x1f,0xfa,0xa2,0xf2]
345050f1c37123968b7f57068280483ec78f6ff7973eJim Grosbach@ CHECK: uxth.w	r9, r3, ror #24         @ encoding: [0x1f,0xfa,0xb3,0xf9]
345125ddc2bf7ed69f500dd4d3e003004bda28c3dd95Jim Grosbach@ CHECK: uxth.w	r7, r8                  @ encoding: [0x1f,0xfa,0x88,0xf7]
3452ac9c2aa8e1b8ff36934e98287e1733995c5ac20dJim Grosbach
3453ac9c2aa8e1b8ff36934e98287e1733995c5ac20dJim Grosbach@------------------------------------------------------------------------------
34547e99a60857532ca2973cf9dabc790d84a2e15a8aJim Grosbach@ WFE/WFI/YIELD/HINT
3455ac9c2aa8e1b8ff36934e98287e1733995c5ac20dJim Grosbach@------------------------------------------------------------------------------
3456ac9c2aa8e1b8ff36934e98287e1733995c5ac20dJim Grosbach        wfe
3457ac9c2aa8e1b8ff36934e98287e1733995c5ac20dJim Grosbach        wfi
3458ac9c2aa8e1b8ff36934e98287e1733995c5ac20dJim Grosbach        yield
3459ac9c2aa8e1b8ff36934e98287e1733995c5ac20dJim Grosbach        itet lt
3460ac9c2aa8e1b8ff36934e98287e1733995c5ac20dJim Grosbach        wfelt
3461ac9c2aa8e1b8ff36934e98287e1733995c5ac20dJim Grosbach        wfige
3462ac9c2aa8e1b8ff36934e98287e1733995c5ac20dJim Grosbach        yieldlt
34637e99a60857532ca2973cf9dabc790d84a2e15a8aJim Grosbach        hint #5
34647e99a60857532ca2973cf9dabc790d84a2e15a8aJim Grosbach        hint.w #5
34657e99a60857532ca2973cf9dabc790d84a2e15a8aJim Grosbach        hint.w #4
34667e99a60857532ca2973cf9dabc790d84a2e15a8aJim Grosbach        hint #3
34677e99a60857532ca2973cf9dabc790d84a2e15a8aJim Grosbach        hint #2
34687e99a60857532ca2973cf9dabc790d84a2e15a8aJim Grosbach        hint #1
34697e99a60857532ca2973cf9dabc790d84a2e15a8aJim Grosbach        hint #0
3470ac9c2aa8e1b8ff36934e98287e1733995c5ac20dJim Grosbach
3471ac9c2aa8e1b8ff36934e98287e1733995c5ac20dJim Grosbach@ CHECK: wfe                            @ encoding: [0x20,0xbf]
3472ac9c2aa8e1b8ff36934e98287e1733995c5ac20dJim Grosbach@ CHECK: wfi                            @ encoding: [0x30,0xbf]
3473ac9c2aa8e1b8ff36934e98287e1733995c5ac20dJim Grosbach@ CHECK: yield                          @ encoding: [0x10,0xbf]
3474ac9c2aa8e1b8ff36934e98287e1733995c5ac20dJim Grosbach@ CHECK: itet	lt                      @ encoding: [0xb6,0xbf]
3475ac9c2aa8e1b8ff36934e98287e1733995c5ac20dJim Grosbach@ CHECK: wfelt                          @ encoding: [0x20,0xbf]
3476ac9c2aa8e1b8ff36934e98287e1733995c5ac20dJim Grosbach@ CHECK: wfige                          @ encoding: [0x30,0xbf]
3477ac9c2aa8e1b8ff36934e98287e1733995c5ac20dJim Grosbach@ CHECK: yieldlt                        @ encoding: [0x10,0xbf]
34787e99a60857532ca2973cf9dabc790d84a2e15a8aJim Grosbach@ CHECK: hint	#5                      @ encoding: [0xaf,0xf3,0x05,0x80]
34797e99a60857532ca2973cf9dabc790d84a2e15a8aJim Grosbach@ CHECK: hint	#5                      @ encoding: [0xaf,0xf3,0x05,0x80]
34807e99a60857532ca2973cf9dabc790d84a2e15a8aJim Grosbach@ CHECK: sev.w                          @ encoding: [0xaf,0xf3,0x04,0x80]
34817e99a60857532ca2973cf9dabc790d84a2e15a8aJim Grosbach@ CHECK: wfi.w                          @ encoding: [0xaf,0xf3,0x03,0x80]
34827e99a60857532ca2973cf9dabc790d84a2e15a8aJim Grosbach@ CHECK: wfe.w                          @ encoding: [0xaf,0xf3,0x02,0x80]
34837e99a60857532ca2973cf9dabc790d84a2e15a8aJim Grosbach@ CHECK: yield.w                        @ encoding: [0xaf,0xf3,0x01,0x80]
34847e99a60857532ca2973cf9dabc790d84a2e15a8aJim Grosbach@ CHECK: nop.w                          @ encoding: [0xaf,0xf3,0x00,0x80]
34850b4c6738868e11ba06047a406f79489cb1db8c5aJim Grosbach
34860b4c6738868e11ba06047a406f79489cb1db8c5aJim Grosbach
34870b4c6738868e11ba06047a406f79489cb1db8c5aJim Grosbach@------------------------------------------------------------------------------
34880b4c6738868e11ba06047a406f79489cb1db8c5aJim Grosbach@ Alternate syntax for LDR*(literal) encodings
34890b4c6738868e11ba06047a406f79489cb1db8c5aJim Grosbach@------------------------------------------------------------------------------
34900b4c6738868e11ba06047a406f79489cb1db8c5aJim Grosbach        ldr r11, [pc, #-22]
34910b4c6738868e11ba06047a406f79489cb1db8c5aJim Grosbach        ldrb r11, [pc, #-22]
34920b4c6738868e11ba06047a406f79489cb1db8c5aJim Grosbach        ldrh r11, [pc, #-22]
34930b4c6738868e11ba06047a406f79489cb1db8c5aJim Grosbach        ldrsb r11, [pc, #-22]
34940b4c6738868e11ba06047a406f79489cb1db8c5aJim Grosbach        ldrsh r11, [pc, #-22]
34950b4c6738868e11ba06047a406f79489cb1db8c5aJim Grosbach
34960b4c6738868e11ba06047a406f79489cb1db8c5aJim Grosbach        ldr.w r11, [pc, #-22]
34970b4c6738868e11ba06047a406f79489cb1db8c5aJim Grosbach        ldrb.w r11, [pc, #-22]
34980b4c6738868e11ba06047a406f79489cb1db8c5aJim Grosbach        ldrh.w r11, [pc, #-22]
34990b4c6738868e11ba06047a406f79489cb1db8c5aJim Grosbach        ldrsb.w r11, [pc, #-22]
35000b4c6738868e11ba06047a406f79489cb1db8c5aJim Grosbach        ldrsh.w r11, [pc, #-22]
35010b4c6738868e11ba06047a406f79489cb1db8c5aJim Grosbach
35020b4c6738868e11ba06047a406f79489cb1db8c5aJim Grosbach@ CHECK: ldr.w	r11, [pc, #-22]         @ encoding: [0x5f,0xf8,0x16,0xb0]
35030b4c6738868e11ba06047a406f79489cb1db8c5aJim Grosbach@ CHECK: ldrb.w	r11, [pc, #-22]         @ encoding: [0x1f,0xf8,0x16,0xb0]
35040b4c6738868e11ba06047a406f79489cb1db8c5aJim Grosbach@ CHECK: ldrh.w	r11, [pc, #-22]         @ encoding: [0x3f,0xf8,0x16,0xb0]
35050b4c6738868e11ba06047a406f79489cb1db8c5aJim Grosbach@ CHECK: ldrsb.w r11, [pc, #-22]        @ encoding: [0x1f,0xf9,0x16,0xb0]
35060b4c6738868e11ba06047a406f79489cb1db8c5aJim Grosbach@ CHECK: ldrsh.w r11, [pc, #-22]        @ encoding: [0x3f,0xf9,0x16,0xb0]
35070b4c6738868e11ba06047a406f79489cb1db8c5aJim Grosbach@ CHECK: ldr.w	r11, [pc, #-22]         @ encoding: [0x5f,0xf8,0x16,0xb0]
35080b4c6738868e11ba06047a406f79489cb1db8c5aJim Grosbach@ CHECK: ldrb.w	r11, [pc, #-22]         @ encoding: [0x1f,0xf8,0x16,0xb0]
35090b4c6738868e11ba06047a406f79489cb1db8c5aJim Grosbach@ CHECK: ldrh.w	r11, [pc, #-22]         @ encoding: [0x3f,0xf8,0x16,0xb0]
35100b4c6738868e11ba06047a406f79489cb1db8c5aJim Grosbach@ CHECK: ldrsb.w r11, [pc, #-22]        @ encoding: [0x1f,0xf9,0x16,0xb0]
35110b4c6738868e11ba06047a406f79489cb1db8c5aJim Grosbach@ CHECK: ldrsh.w r11, [pc, #-22]        @ encoding: [0x3f,0xf9,0x16,0xb0]
3512