basic-arm-instructions.s revision af4edea67b007592f9474e07d27182956e37f7f5
1a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ RUN: llvm-mc -triple=armv7-apple-darwin -show-encoding < %s | FileCheck %s 2a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM .syntax unified 3a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM .globl _func 4a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM 5a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ Check that the assembler can handle the documented syntax from the ARM ARM. 6a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ For complex constructs like shifter operands, check more thoroughly for them 7a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ once then spot check that following instructions accept the form generally. 8a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ This gives us good coverage while keeping the overall size of the test 9a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ more reasonable. 10a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM 11a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM_func: 12a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ CHECK: _func 13a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM 14a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@------------------------------------------------------------------------------ 15a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ ADC (immediate) 16a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@------------------------------------------------------------------------------ 17a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adc r1, r2, #0xf 18a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adc r1, r2, #0xf0 19a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adc r1, r2, #0xf00 20a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adc r1, r2, #0xf000 21a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adc r1, r2, #0xf0000 22a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adc r1, r2, #0xf00000 23a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adc r1, r2, #0xf000000 24a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adc r1, r2, #0xf0000000 25a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adc r1, r2, #0xf000000f 26a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adcs r1, r2, #0xf00 27a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adcseq r1, r2, #0xf00 28a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adceq r1, r2, #0xf00 29a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM 30a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ CHECK: adc r1, r2, #15 @ encoding: [0x0f,0x10,0xa2,0xe2] 31a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ CHECK: adc r1, r2, #240 @ encoding: [0xf0,0x10,0xa2,0xe2] 32a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ CHECK: adc r1, r2, #3840 @ encoding: [0x0f,0x1c,0xa2,0xe2] 33a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ CHECK: adc r1, r2, #61440 @ encoding: [0x0f,0x1a,0xa2,0xe2] 34a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ CHECK: adc r1, r2, #983040 @ encoding: [0x0f,0x18,0xa2,0xe2] 35a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ CHECK: adc r1, r2, #15728640 @ encoding: [0x0f,0x16,0xa2,0xe2] 36a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ CHECK: adc r1, r2, #251658240 @ encoding: [0x0f,0x14,0xa2,0xe2] 37a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ CHECK: adc r1, r2, #4026531840 @ encoding: [0x0f,0x12,0xa2,0xe2] 38a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ CHECK: adc r1, r2, #4026531855 @ encoding: [0xff,0x12,0xa2,0xe2] 39a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM 40a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ CHECK: adcs r1, r2, #3840 @ encoding: [0x0f,0x1c,0xb2,0xe2] 41a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ CHECK: adcseq r1, r2, #3840 @ encoding: [0x0f,0x1c,0xb2,0x02] 42a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ CHECK: adceq r1, r2, #3840 @ encoding: [0x0f,0x1c,0xa2,0x02] 43a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM 44a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@------------------------------------------------------------------------------ 45a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ ADC (register) 46a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ ADC (shifted register) 47a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@------------------------------------------------------------------------------ 48a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adc r4, r5, r6 49a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM @ Constant shifts 50a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adc r4, r5, r6, lsl #1 51a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adc r4, r5, r6, lsl #31 52a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adc r4, r5, r6, lsr #1 53a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adc r4, r5, r6, lsr #31 54a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adc r4, r5, r6, lsr #32 55a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adc r4, r5, r6, asr #1 56a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adc r4, r5, r6, asr #31 57a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adc r4, r5, r6, asr #32 58a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adc r4, r5, r6, ror #1 59a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adc r4, r5, r6, ror #31 60a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM 61a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM @ Register shifts 62a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adc r6, r7, r8, lsl r9 63a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adc r6, r7, r8, lsr r9 64a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adc r6, r7, r8, asr r9 65a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adc r6, r7, r8, ror r9 66a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adc r4, r5, r6, rrx 67a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM 68a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM @ Destination register is optional 69a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adc r5, r6 70a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adc r4, r5, lsl #1 71a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adc r4, r5, lsl #31 72a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adc r4, r5, lsr #1 73a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adc r4, r5, lsr #31 74a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM adc r4, r5, lsr #32 7527c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner adc r4, r5, asr #1 7627c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner adc r4, r5, asr #31 7727c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner adc r4, r5, asr #32 7827c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner adc r4, r5, ror #1 7927c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner adc r4, r5, ror #31 8027c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner adc r4, r5, rrx 8127c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner adc r6, r7, lsl r9 8227c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner adc r6, r7, lsr r9 8327c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner adc r6, r7, asr r9 8427c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner adc r6, r7, ror r9 8527c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner adc r4, r5, rrx 8627c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner 8727c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner@ CHECK: adc r4, r5, r6 @ encoding: [0x06,0x40,0xa5,0xe0] 8827c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner 8927c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner@ CHECK: adc r4, r5, r6, lsl #1 @ encoding: [0x86,0x40,0xa5,0xe0] 9027c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner@ CHECK: adc r4, r5, r6, lsl #31 @ encoding: [0x86,0x4f,0xa5,0xe0] 9127c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner@ CHECK: adc r4, r5, r6, lsr #1 @ encoding: [0xa6,0x40,0xa5,0xe0] 9227c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner@ CHECK: adc r4, r5, r6, lsr #31 @ encoding: [0xa6,0x4f,0xa5,0xe0] 9327c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner@ CHECK: adc r4, r5, r6, lsr #32 @ encoding: [0x26,0x40,0xa5,0xe0] 94b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: adc r4, r5, r6, asr #1 @ encoding: [0xc6,0x40,0xa5,0xe0] 95b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: adc r4, r5, r6, asr #31 @ encoding: [0xc6,0x4f,0xa5,0xe0] 96b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: adc r4, r5, r6, asr #32 @ encoding: [0x46,0x40,0xa5,0xe0] 97b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: adc r4, r5, r6, ror #1 @ encoding: [0xe6,0x40,0xa5,0xe0] 98b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: adc r4, r5, r6, ror #31 @ encoding: [0xe6,0x4f,0xa5,0xe0] 99b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball 100b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: adc r6, r7, r8, lsl r9 @ encoding: [0x18,0x69,0xa7,0xe0] 101b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: adc r6, r7, r8, lsr r9 @ encoding: [0x38,0x69,0xa7,0xe0] 102b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: adc r6, r7, r8, asr r9 @ encoding: [0x58,0x69,0xa7,0xe0] 103b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: adc r6, r7, r8, ror r9 @ encoding: [0x78,0x69,0xa7,0xe0] 104b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: adc r4, r5, r6, rrx @ encoding: [0x66,0x40,0xa5,0xe0] 105b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball 106b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: adc r5, r5, r6 @ encoding: [0x06,0x50,0xa5,0xe0] 107b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: adc r4, r4, r5, lsl #1 @ encoding: [0x85,0x40,0xa4,0xe0] 108b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: adc r4, r4, r5, lsl #31 @ encoding: [0x85,0x4f,0xa4,0xe0] 109b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: adc r4, r4, r5, lsr #1 @ encoding: [0xa5,0x40,0xa4,0xe0] 110b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: adc r4, r4, r5, lsr #31 @ encoding: [0xa5,0x4f,0xa4,0xe0] 111b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: adc r4, r4, r5, lsr #32 @ encoding: [0x25,0x40,0xa4,0xe0] 112b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: adc r4, r4, r5, asr #1 @ encoding: [0xc5,0x40,0xa4,0xe0] 113b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: adc r4, r4, r5, asr #31 @ encoding: [0xc5,0x4f,0xa4,0xe0] 114b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: adc r4, r4, r5, asr #32 @ encoding: [0x45,0x40,0xa4,0xe0] 115b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: adc r4, r4, r5, ror #1 @ encoding: [0xe5,0x40,0xa4,0xe0] 116b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: adc r4, r4, r5, ror #31 @ encoding: [0xe5,0x4f,0xa4,0xe0] 117b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: adc r4, r4, r5, rrx @ encoding: [0x65,0x40,0xa4,0xe0] 118b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: adc r6, r6, r7, lsl r9 @ encoding: [0x17,0x69,0xa6,0xe0] 119b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: adc r6, r6, r7, lsr r9 @ encoding: [0x37,0x69,0xa6,0xe0] 120b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: adc r6, r6, r7, asr r9 @ encoding: [0x57,0x69,0xa6,0xe0] 121b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: adc r6, r6, r7, ror r9 @ encoding: [0x77,0x69,0xa6,0xe0] 122b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: adc r4, r4, r5, rrx @ encoding: [0x65,0x40,0xa4,0xe0] 123b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball 124b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball 125b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@------------------------------------------------------------------------------ 126b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ ADR 127b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@------------------------------------------------------------------------------ 128b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris BallLback: 129b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball adr r2, Lback 130b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball adr r3, Lforward 131b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris BallLforward: 132b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball adr r2, #3 133b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball adr r2, #-3 1348ba4466a4ad458618282f8bdcc2706025856a9f2Chris Ball 1358ba4466a4ad458618282f8bdcc2706025856a9f2Chris Ball@ CHECK: Lback: 136b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: adr r2, Lback @ encoding: [A,0x20'A',0x0f'A',0xe2'A'] 137b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: @ fixup A - offset: 0, value: Lback, kind: fixup_arm_adr_pcrel_12 138b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: adr r3, Lforward @ encoding: [A,0x30'A',0x0f'A',0xe2'A'] 139b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: @ fixup A - offset: 0, value: Lforward, kind: fixup_arm_adr_pcrel_12 140b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: Lforward: 141b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: adr r2, #3 @ encoding: [0x03,0x20,0x8f,0xe2] 142b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: adr r2, #-3 @ encoding: [0x03,0x20,0x4f,0xe2] 143b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball 144b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball 145b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@------------------------------------------------------------------------------ 146b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ ADD 147b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@------------------------------------------------------------------------------ 148b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball add r4, r5, #0xf000 149b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball add r4, r5, r6 150b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball add r4, r5, r6, lsl #5 151b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball add r4, r5, r6, lsr #5 152b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball add r4, r5, r6, lsr #5 153b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball add r4, r5, r6, asr #5 154b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball add r4, r5, r6, ror #5 155b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball add r6, r7, r8, lsl r9 156b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball add r4, r4, r3, asl r9 157b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball add r6, r7, r8, lsr r9 158b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball add r6, r7, r8, asr r9 159b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball add r6, r7, r8, ror r9 160b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball add r4, r5, r6, rrx 161b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball 1628ba4466a4ad458618282f8bdcc2706025856a9f2Chris Ball @ destination register is optional 1638ba4466a4ad458618282f8bdcc2706025856a9f2Chris Ball add r5, #0xf000 164b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball add r4, r5 165b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball add r4, r5, lsl #5 166b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball add r4, r5, lsr #5 167b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball add r4, r5, lsr #5 168b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball add r4, r5, asr #5 169b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball add r4, r5, ror #5 170b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball add r6, r7, lsl r9 171b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball add r6, r7, lsr r9 172b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball add r6, r7, asr r9 173b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball add r6, r7, ror r9 174b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball add r4, r5, rrx 175b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball 176b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: add r4, r5, #61440 @ encoding: [0x0f,0x4a,0x85,0xe2] 177b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: add r4, r5, r6 @ encoding: [0x06,0x40,0x85,0xe0] 178b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: add r4, r5, r6, lsl #5 @ encoding: [0x86,0x42,0x85,0xe0] 179b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: add r4, r5, r6, lsr #5 @ encoding: [0xa6,0x42,0x85,0xe0] 180b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: add r4, r5, r6, lsr #5 @ encoding: [0xa6,0x42,0x85,0xe0] 181b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: add r4, r5, r6, asr #5 @ encoding: [0xc6,0x42,0x85,0xe0] 182b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: add r4, r5, r6, ror #5 @ encoding: [0xe6,0x42,0x85,0xe0] 183b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: add r6, r7, r8, lsl r9 @ encoding: [0x18,0x69,0x87,0xe0] 184b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: add r4, r4, r3, lsl r9 @ encoding: [0x13,0x49,0x84,0xe0] 185b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: add r6, r7, r8, lsr r9 @ encoding: [0x38,0x69,0x87,0xe0] 186b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: add r6, r7, r8, asr r9 @ encoding: [0x58,0x69,0x87,0xe0] 187b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: add r6, r7, r8, ror r9 @ encoding: [0x78,0x69,0x87,0xe0] 188b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: add r4, r5, r6, rrx @ encoding: [0x66,0x40,0x85,0xe0] 189b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball 190b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball 191b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: add r5, r5, #61440 @ encoding: [0x0f,0x5a,0x85,0xe2] 192b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das@ CHECK: add r4, r4, r5 @ encoding: [0x05,0x40,0x84,0xe0] 193b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das@ CHECK: add r4, r4, r5, lsl #5 @ encoding: [0x85,0x42,0x84,0xe0] 194b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das@ CHECK: add r4, r4, r5, lsr #5 @ encoding: [0xa5,0x42,0x84,0xe0] 195b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das@ CHECK: add r4, r4, r5, lsr #5 @ encoding: [0xa5,0x42,0x84,0xe0] 196b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das@ CHECK: add r4, r4, r5, asr #5 @ encoding: [0xc5,0x42,0x84,0xe0] 197b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das@ CHECK: add r4, r4, r5, ror #5 @ encoding: [0xe5,0x42,0x84,0xe0] 198b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das@ CHECK: add r6, r6, r7, lsl r9 @ encoding: [0x17,0x69,0x86,0xe0] 199b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das@ CHECK: add r6, r6, r7, lsr r9 @ encoding: [0x37,0x69,0x86,0xe0] 200b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das@ CHECK: add r6, r6, r7, asr r9 @ encoding: [0x57,0x69,0x86,0xe0] 201b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das@ CHECK: add r6, r6, r7, ror r9 @ encoding: [0x77,0x69,0x86,0xe0] 202b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das@ CHECK: add r4, r4, r5, rrx @ encoding: [0x65,0x40,0x84,0xe0] 203b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das 204b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das 205b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das@------------------------------------------------------------------------------ 206b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das@ AND 207b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das@------------------------------------------------------------------------------ 208b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das and r10, r1, #0xf 209b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das and r10, r1, r6 210b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das and r10, r1, r6, lsl #10 211b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das and r10, r1, r6, lsr #10 212b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das and r10, r1, r6, lsr #10 213b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das and r10, r1, r6, asr #10 214b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das and r10, r1, r6, ror #10 215b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das and r6, r7, r8, lsl r2 216b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das and r6, r7, r8, lsr r2 217b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das and r6, r7, r8, asr r2 218b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das and r6, r7, r8, ror r2 219b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das and r10, r1, r6, rrx 220b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das 221b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das @ destination register is optional 222b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das and r1, #0xf 223b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das and r10, r1 224b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das and r10, r1, lsl #10 225b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das and r10, r1, lsr #10 226b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das and r10, r1, lsr #10 227b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das and r10, r1, asr #10 228b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das and r10, r1, ror #10 229b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das and r6, r7, lsl r2 230b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das and r6, r7, lsr r2 231b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das and r6, r7, asr r2 232b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das and r6, r7, ror r2 233b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das and r10, r1, rrx 234b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das 235b7e2599c67408c38e57e91d2426c077a4541dc8cSaugata Das@ CHECK: and r10, r1, #15 @ encoding: [0x0f,0xa0,0x01,0xe2] 2367bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ CHECK: and r10, r1, r6 @ encoding: [0x06,0xa0,0x01,0xe0] 2377bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ CHECK: and r10, r1, r6, lsl #10 @ encoding: [0x06,0xa5,0x01,0xe0] 2387bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ CHECK: and r10, r1, r6, lsr #10 @ encoding: [0x26,0xa5,0x01,0xe0] 2397bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ CHECK: and r10, r1, r6, lsr #10 @ encoding: [0x26,0xa5,0x01,0xe0] 2407bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ CHECK: and r10, r1, r6, asr #10 @ encoding: [0x46,0xa5,0x01,0xe0] 2417bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ CHECK: and r10, r1, r6, ror #10 @ encoding: [0x66,0xa5,0x01,0xe0] 2427bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ CHECK: and r6, r7, r8, lsl r2 @ encoding: [0x18,0x62,0x07,0xe0] 2437bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ CHECK: and r6, r7, r8, lsr r2 @ encoding: [0x38,0x62,0x07,0xe0] 2447bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ CHECK: and r6, r7, r8, asr r2 @ encoding: [0x58,0x62,0x07,0xe0] 2457bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ CHECK: and r6, r7, r8, ror r2 @ encoding: [0x78,0x62,0x07,0xe0] 2467bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ CHECK: and r10, r1, r6, rrx @ encoding: [0x66,0xa0,0x01,0xe0] 2477bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO 2487bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ CHECK: and r1, r1, #15 @ encoding: [0x0f,0x10,0x01,0xe2] 2497bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ CHECK: and r10, r10, r1 @ encoding: [0x01,0xa0,0x0a,0xe0] 2507bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ CHECK: and r10, r10, r1, lsl #10 @ encoding: [0x01,0xa5,0x0a,0xe0] 2517bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ CHECK: and r10, r10, r1, lsr #10 @ encoding: [0x21,0xa5,0x0a,0xe0] 2527bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ CHECK: and r10, r10, r1, lsr #10 @ encoding: [0x21,0xa5,0x0a,0xe0] 2537bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ CHECK: and r10, r10, r1, asr #10 @ encoding: [0x41,0xa5,0x0a,0xe0] 2547bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ CHECK: and r10, r10, r1, ror #10 @ encoding: [0x61,0xa5,0x0a,0xe0] 2557bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ CHECK: and r6, r6, r7, lsl r2 @ encoding: [0x17,0x62,0x06,0xe0] 2567bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ CHECK: and r6, r6, r7, lsr r2 @ encoding: [0x37,0x62,0x06,0xe0] 2577bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ CHECK: and r6, r6, r7, asr r2 @ encoding: [0x57,0x62,0x06,0xe0] 2587bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ CHECK: and r6, r6, r7, ror r2 @ encoding: [0x77,0x62,0x06,0xe0] 2597bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ CHECK: and r10, r10, r1, rrx @ encoding: [0x61,0xa0,0x0a,0xe0] 2607bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO 2617bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@------------------------------------------------------------------------------ 2627bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ ASR 2637bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@------------------------------------------------------------------------------ 2647bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO asr r2, r4, #32 2657bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO asr r2, r4, #2 2667bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO asr r2, r4, #0 2677bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO asr r4, #2 2687bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO 2697bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ CHECK: asr r2, r4, #32 @ encoding: [0x44,0x20,0xa0,0xe1] 2707bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ CHECK: asr r2, r4, #2 @ encoding: [0x44,0x21,0xa0,0xe1] 2717bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ CHECK: mov r2, r4 @ encoding: [0x04,0x20,0xa0,0xe1] 2727bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ CHECK: asr r4, r4, #2 @ encoding: [0x44,0x41,0xa0,0xe1] 2737bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO 2747bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO 2757bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@------------------------------------------------------------------------------ 2767bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ B 2777bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@------------------------------------------------------------------------------ 2787bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO b _bar 2797bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO beq _baz 2807bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO 2817bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ CHECK: b _bar @ encoding: [A,A,A,0xea] 2827bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO @ fixup A - offset: 0, value: _bar, kind: fixup_arm_uncondbranch 2837bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ CHECK: beq _baz @ encoding: [A,A,A,0x0a] 2847bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO @ fixup A - offset: 0, value: _baz, kind: fixup_arm_condbranch 2857bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO 2867bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO 2877bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@------------------------------------------------------------------------------ 2887bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ BFC 2897bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@------------------------------------------------------------------------------ 2907bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO bfc r5, #3, #17 2917bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO bfccc r5, #3, #17 2927bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO 2937bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ CHECK: bfc r5, #3, #17 @ encoding: [0x9f,0x51,0xd3,0xe7] 2947bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ CHECK: bfclo r5, #3, #17 @ encoding: [0x9f,0x51,0xd3,0x37] 2957bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO 2967bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO 2977bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@------------------------------------------------------------------------------ 2987bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@ BFI 2997bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO@------------------------------------------------------------------------------ 3007bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO bfi r5, r2, #3, #17 3017bd1320b2cb38f040ab5cf017d17e283496690bfGiuseppe CAVALLARO bfine r5, r2, #3, #17 302f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball 303f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball@ CHECK: bfi r5, r2, #3, #17 @ encoding: [0x92,0x51,0xd3,0xe7] 304f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball@ CHECK: bfine r5, r2, #3, #17 @ encoding: [0x92,0x51,0xd3,0x17] 305f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball 306f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball 307f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball@------------------------------------------------------------------------------ 308f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball@ BIC 309f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball@------------------------------------------------------------------------------ 310f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball bic r10, r1, #0xf 311f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball bic r10, r1, r6 312f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball bic r10, r1, r6, lsl #10 313f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball bic r10, r1, r6, lsr #10 314f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball bic r10, r1, r6, lsr #10 315f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball bic r10, r1, r6, asr #10 316f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball bic r10, r1, r6, ror #10 317f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball bic r6, r7, r8, lsl r2 318f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball bic r6, r7, r8, lsr r2 319f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball bic r6, r7, r8, asr r2 320f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball bic r6, r7, r8, ror r2 321f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball bic r10, r1, r6, rrx 322f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball 323f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball @ destination register is optional 324f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball bic r1, #0xf 325f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball bic r10, r1 326f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball bic r10, r1, lsl #10 327f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball bic r10, r1, lsr #10 328f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball bic r10, r1, lsr #10 329f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball bic r10, r1, asr #10 330f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball bic r10, r1, ror #10 331f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball bic r6, r7, lsl r2 332f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball bic r6, r7, lsr r2 333f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball bic r6, r7, asr r2 334f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball bic r6, r7, ror r2 335f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball bic r10, r1, rrx 336f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball 337f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball@ CHECK: bic r10, r1, #15 @ encoding: [0x0f,0xa0,0xc1,0xe3] 338f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball@ CHECK: bic r10, r1, r6 @ encoding: [0x06,0xa0,0xc1,0xe1] 339f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball@ CHECK: bic r10, r1, r6, lsl #10 @ encoding: [0x06,0xa5,0xc1,0xe1] 340f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball@ CHECK: bic r10, r1, r6, lsr #10 @ encoding: [0x26,0xa5,0xc1,0xe1] 341f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball@ CHECK: bic r10, r1, r6, lsr #10 @ encoding: [0x26,0xa5,0xc1,0xe1] 342f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball@ CHECK: bic r10, r1, r6, asr #10 @ encoding: [0x46,0xa5,0xc1,0xe1] 343f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball@ CHECK: bic r10, r1, r6, ror #10 @ encoding: [0x66,0xa5,0xc1,0xe1] 344f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball@ CHECK: bic r6, r7, r8, lsl r2 @ encoding: [0x18,0x62,0xc7,0xe1] 345f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball@ CHECK: bic r6, r7, r8, lsr r2 @ encoding: [0x38,0x62,0xc7,0xe1] 346f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball@ CHECK: bic r6, r7, r8, asr r2 @ encoding: [0x58,0x62,0xc7,0xe1] 347f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball@ CHECK: bic r6, r7, r8, ror r2 @ encoding: [0x78,0x62,0xc7,0xe1] 348f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball@ CHECK: bic r10, r1, r6, rrx @ encoding: [0x66,0xa0,0xc1,0xe1] 349f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball 350f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball 351f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball@ CHECK: bic r1, r1, #15 @ encoding: [0x0f,0x10,0xc1,0xe3] 352f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball@ CHECK: bic r10, r10, r1 @ encoding: [0x01,0xa0,0xca,0xe1] 353f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball@ CHECK: bic r10, r10, r1, lsl #10 @ encoding: [0x01,0xa5,0xca,0xe1] 354f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball@ CHECK: bic r10, r10, r1, lsr #10 @ encoding: [0x21,0xa5,0xca,0xe1] 355f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball@ CHECK: bic r10, r10, r1, lsr #10 @ encoding: [0x21,0xa5,0xca,0xe1] 356f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball@ CHECK: bic r10, r10, r1, asr #10 @ encoding: [0x41,0xa5,0xca,0xe1] 357f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball@ CHECK: bic r10, r10, r1, ror #10 @ encoding: [0x61,0xa5,0xca,0xe1] 358f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball@ CHECK: bic r6, r6, r7, lsl r2 @ encoding: [0x17,0x62,0xc6,0xe1] 359f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball@ CHECK: bic r6, r6, r7, lsr r2 @ encoding: [0x37,0x62,0xc6,0xe1] 360f74dfe23cd00894aa9f235374468e05acb793e17Chris Ball@ CHECK: bic r6, r6, r7, asr r2 @ encoding: [0x57,0x62,0xc6,0xe1] 3618649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung@ CHECK: bic r6, r6, r7, ror r2 @ encoding: [0x77,0x62,0xc6,0xe1] 3628649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung@ CHECK: bic r10, r10, r1, rrx @ encoding: [0x61,0xa0,0xca,0xe1] 3638649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung 3648649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung@------------------------------------------------------------------------------ 3658649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung@ BKPT 3668649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung@------------------------------------------------------------------------------ 3678649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung bkpt #10 3688649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung bkpt #65535 3698649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung 3708649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung@ CHECK: bkpt #10 @ encoding: [0x7a,0x00,0x20,0xe1] 3718649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung@ CHECK: bkpt #65535 @ encoding: [0x7f,0xff,0x2f,0xe1] 3728649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung 3738649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung@------------------------------------------------------------------------------ 3748649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung@ BL/BLX (immediate) 3758649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung@------------------------------------------------------------------------------ 3768649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung 3778649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung bl _bar 3788649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung blx _bar 3798649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung blls #28634268 3808649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung blx #32424576 3818649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung blx #16212288 3828649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung 3838649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung@ CHECK: bl _bar @ encoding: [A,A,A,0xeb] 3848649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung@ CHECK: @ fixup A - offset: 0, value: _bar, kind: fixup_arm_uncondbranch 3858649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung@ CHECK: blx _bar @ encoding: [A,A,A,0xfa] 3868649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung @ fixup A - offset: 0, value: _bar, kind: fixup_arm_uncondbranch 3878649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung@ CHECK: blls #28634268 @ encoding: [0x27,0x3b,0x6d,0x9b] 3888649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung@ CHECK: blx #32424576 @ encoding: [0xa0,0xb0,0x7b,0xfa] 3898649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung@ CHECK: blx #16212288 @ encoding: [0x50,0xd8,0x3d,0xfa] 3908649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung@------------------------------------------------------------------------------ 3918649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung@ BLX (register) 3928649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung@------------------------------------------------------------------------------ 3938649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung blx r2 3948649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung blxne r2 3958649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung 3968649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung@ CHECK: blx r2 @ encoding: [0x32,0xff,0x2f,0xe1] 3978649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung@ CHECK: blxne r2 @ encoding: [0x32,0xff,0x2f,0x11] 3988649651b743a5d7c290ea0f8058794f8d127736eJaehoon Chung 39927c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner@------------------------------------------------------------------------------ 40027c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner@ BX 40127c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner@------------------------------------------------------------------------------ 40227c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner bx r2 40327c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner bxne r2 40427c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner 40527c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner@ CHECK: bx r2 @ encoding: [0x12,0xff,0x2f,0xe1] 40627c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner@ CHECK: bxne r2 @ encoding: [0x12,0xff,0x2f,0x11] 40727c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner 40827c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner@------------------------------------------------------------------------------ 40927c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner@ BXJ 41027c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner@------------------------------------------------------------------------------ 41127c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner bxj r2 41227c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner bxjne r2 41327c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner 41427c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner@ CHECK: bxj r2 @ encoding: [0x22,0xff,0x2f,0xe1] 41527c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner@ CHECK: bxjne r2 @ encoding: [0x22,0xff,0x2f,0x11] 41627c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner 41727c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner 41827c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner@------------------------------------------------------------------------------ 41927c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner@ CDP/CDP2 42027c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner@------------------------------------------------------------------------------ 42127c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner cdp p7, #1, c1, c1, c1, #4 42227c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner cdp2 p7, #1, c1, c1, c1, #4 42327c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner 42427c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner@ CHECK: cdp p7, #1, c1, c1, c1, #4 @ encoding: [0x81,0x17,0x11,0xee] 42527c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner@ CHECK: cdp2 p7, #1, c1, c1, c1, #4 @ encoding: [0x81,0x17,0x11,0xfe] 42627c357db04350b75b0fceaae8bfb9ce99c50866bBen Gardiner 4274e85023654b356511612547207a4cb643fb3db16Ben Gardiner 4284e85023654b356511612547207a4cb643fb3db16Ben Gardiner@------------------------------------------------------------------------------ 4294e85023654b356511612547207a4cb643fb3db16Ben Gardiner@ CLREX 4304e85023654b356511612547207a4cb643fb3db16Ben Gardiner@------------------------------------------------------------------------------ 4314e85023654b356511612547207a4cb643fb3db16Ben Gardiner clrex 4324e85023654b356511612547207a4cb643fb3db16Ben Gardiner 4334e85023654b356511612547207a4cb643fb3db16Ben Gardiner@ CHECK: clrex @ encoding: [0x1f,0xf0,0x7f,0xf5] 4344e85023654b356511612547207a4cb643fb3db16Ben Gardiner 4354e85023654b356511612547207a4cb643fb3db16Ben Gardiner 4364e85023654b356511612547207a4cb643fb3db16Ben Gardiner@------------------------------------------------------------------------------ 4374e85023654b356511612547207a4cb643fb3db16Ben Gardiner@ CLZ 4384e85023654b356511612547207a4cb643fb3db16Ben Gardiner@------------------------------------------------------------------------------ 4394e85023654b356511612547207a4cb643fb3db16Ben Gardiner clz r1, r2 4404e85023654b356511612547207a4cb643fb3db16Ben Gardiner clzeq r1, r2 4414e85023654b356511612547207a4cb643fb3db16Ben Gardiner 442f82e27a1b11e6fb52565b61827563316dcbb2cc4Ben Gardiner@ CHECK: clz r1, r2 @ encoding: [0x12,0x1f,0x6f,0xe1] 443f82e27a1b11e6fb52565b61827563316dcbb2cc4Ben Gardiner@ CHECK: clzeq r1, r2 @ encoding: [0x12,0x1f,0x6f,0x01] 444f82e27a1b11e6fb52565b61827563316dcbb2cc4Ben Gardiner 445f82e27a1b11e6fb52565b61827563316dcbb2cc4Ben Gardiner@------------------------------------------------------------------------------ 446f82e27a1b11e6fb52565b61827563316dcbb2cc4Ben Gardiner@ CMN 447f82e27a1b11e6fb52565b61827563316dcbb2cc4Ben Gardiner@------------------------------------------------------------------------------ 448f82e27a1b11e6fb52565b61827563316dcbb2cc4Ben Gardiner cmn r1, #0xf 449f82e27a1b11e6fb52565b61827563316dcbb2cc4Ben Gardiner cmn r1, r6 450f82e27a1b11e6fb52565b61827563316dcbb2cc4Ben Gardiner cmn r1, r6, lsl #10 451f82e27a1b11e6fb52565b61827563316dcbb2cc4Ben Gardiner cmn r1, r6, lsr #10 452e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner cmn sp, r6, lsr #10 453e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner cmn r1, r6, asr #10 454e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner cmn r1, r6, ror #10 455e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner cmn r7, r8, lsl r2 456e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner cmn sp, r8, lsr r2 457e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner cmn r7, r8, asr r2 458e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner cmn r7, r8, ror r2 459e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner cmn r1, r6, rrx 460e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner 461e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner@ CHECK: cmn r1, #15 @ encoding: [0x0f,0x00,0x71,0xe3] 462e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner@ CHECK: cmn r1, r6 @ encoding: [0x06,0x00,0x71,0xe1] 463e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner@ CHECK: cmn r1, r6, lsl #10 @ encoding: [0x06,0x05,0x71,0xe1] 464e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner@ CHECK: cmn r1, r6, lsr #10 @ encoding: [0x26,0x05,0x71,0xe1] 465e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner@ CHECK: cmn sp, r6, lsr #10 @ encoding: [0x26,0x05,0x7d,0xe1] 466e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner@ CHECK: cmn r1, r6, asr #10 @ encoding: [0x46,0x05,0x71,0xe1] 467e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner@ CHECK: cmn r1, r6, ror #10 @ encoding: [0x66,0x05,0x71,0xe1] 468e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner@ CHECK: cmn r7, r8, lsl r2 @ encoding: [0x18,0x02,0x77,0xe1] 469e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner@ CHECK: cmn sp, r8, lsr r2 @ encoding: [0x38,0x02,0x7d,0xe1] 470e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner@ CHECK: cmn r7, r8, asr r2 @ encoding: [0x58,0x02,0x77,0xe1] 471e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner@ CHECK: cmn r7, r8, ror r2 @ encoding: [0x78,0x02,0x77,0xe1] 472e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner@ CHECK: cmn r1, r6, rrx @ encoding: [0x66,0x00,0x71,0xe1] 473e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner 474e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner@------------------------------------------------------------------------------ 475e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner@ CMP 476e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner@------------------------------------------------------------------------------ 477e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner cmp r1, #0xf 478e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner cmp r1, r6 479e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner cmp r1, r6, lsl #10 480e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner cmp r1, r6, lsr #10 481e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner cmp sp, r6, lsr #10 482e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner cmp r1, r6, asr #10 483e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner cmp r1, r6, ror #10 484e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner cmp r7, r8, lsl r2 485e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner cmp sp, r8, lsr r2 486e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner cmp r7, r8, asr r2 487e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner cmp r7, r8, ror r2 488e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner cmp r1, r6, rrx 489e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner 490e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner@ CHECK: cmp r1, #15 @ encoding: [0x0f,0x00,0x51,0xe3] 491e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner@ CHECK: cmp r1, r6 @ encoding: [0x06,0x00,0x51,0xe1] 492e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner@ CHECK: cmp r1, r6, lsl #10 @ encoding: [0x06,0x05,0x51,0xe1] 493e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner@ CHECK: cmp r1, r6, lsr #10 @ encoding: [0x26,0x05,0x51,0xe1] 494e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner@ CHECK: cmp sp, r6, lsr #10 @ encoding: [0x26,0x05,0x5d,0xe1] 495e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner@ CHECK: cmp r1, r6, asr #10 @ encoding: [0x46,0x05,0x51,0xe1] 496e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner@ CHECK: cmp r1, r6, ror #10 @ encoding: [0x66,0x05,0x51,0xe1] 497d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: cmp r7, r8, lsl r2 @ encoding: [0x18,0x02,0x57,0xe1] 498d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: cmp sp, r8, lsr r2 @ encoding: [0x38,0x02,0x5d,0xe1] 499d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: cmp r7, r8, asr r2 @ encoding: [0x58,0x02,0x57,0xe1] 500d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: cmp r7, r8, ror r2 @ encoding: [0x78,0x02,0x57,0xe1] 501d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: cmp r1, r6, rrx @ encoding: [0x66,0x00,0x51,0xe1] 502d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner 503d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner 504d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@------------------------------------------------------------------------------ 505d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CPS 506d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@------------------------------------------------------------------------------ 507d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner cpsie aif 508d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner cps #15 509d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner cpsid if, #10 510d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner 511d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: cpsie aif @ encoding: [0xc0,0x01,0x08,0xf1] 512d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: cps #15 @ encoding: [0x0f,0x00,0x02,0xf1] 513d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: cpsid if, #10 @ encoding: [0xca,0x00,0x0e,0xf1] 514d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner 515d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner 516d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@------------------------------------------------------------------------------ 517d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ DBG 518d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@------------------------------------------------------------------------------ 519d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner dbg #0 520d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner dbg #5 521d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner dbg #15 522d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner 523d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: dbg #0 @ encoding: [0xf0,0xf0,0x20,0xe3] 524d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: dbg #5 @ encoding: [0xf5,0xf0,0x20,0xe3] 525d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: dbg #15 @ encoding: [0xff,0xf0,0x20,0xe3] 526d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner 527d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner 528d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@------------------------------------------------------------------------------ 529d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ DMB 530d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@------------------------------------------------------------------------------ 531d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner dmb sy 532d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner dmb st 533d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner dmb sh 534d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner dmb ish 535d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner dmb shst 536d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner dmb ishst 537d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner dmb un 538d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner dmb nsh 539d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner dmb unst 540d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner dmb nshst 541d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner dmb osh 542d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner dmb oshst 543d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner dmb 544d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner 545d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: dmb sy @ encoding: [0x5f,0xf0,0x7f,0xf5] 546d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: dmb st @ encoding: [0x5e,0xf0,0x7f,0xf5] 547d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: dmb ish @ encoding: [0x5b,0xf0,0x7f,0xf5] 548d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: dmb ish @ encoding: [0x5b,0xf0,0x7f,0xf5] 549d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: dmb ishst @ encoding: [0x5a,0xf0,0x7f,0xf5] 550d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: dmb ishst @ encoding: [0x5a,0xf0,0x7f,0xf5] 551d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: dmb nsh @ encoding: [0x57,0xf0,0x7f,0xf5] 552d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: dmb nsh @ encoding: [0x57,0xf0,0x7f,0xf5] 553d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: dmb nshst @ encoding: [0x56,0xf0,0x7f,0xf5] 554d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: dmb nshst @ encoding: [0x56,0xf0,0x7f,0xf5] 555d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: dmb osh @ encoding: [0x53,0xf0,0x7f,0xf5] 556d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: dmb oshst @ encoding: [0x52,0xf0,0x7f,0xf5] 557d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: dmb sy @ encoding: [0x5f,0xf0,0x7f,0xf5] 558d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner 559d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@------------------------------------------------------------------------------ 560d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ DSB 561d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@------------------------------------------------------------------------------ 562d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner dsb sy 563d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner dsb st 564d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner dsb sh 565d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner dsb ish 566d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner dsb shst 567d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner dsb ishst 568d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner dsb un 569d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner dsb nsh 570d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner dsb unst 571d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner dsb nshst 572d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner dsb osh 573d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner dsb oshst 574d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner dsb 575d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner 576d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: dsb sy @ encoding: [0x4f,0xf0,0x7f,0xf5] 577d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: dsb st @ encoding: [0x4e,0xf0,0x7f,0xf5] 578d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: dsb ish @ encoding: [0x4b,0xf0,0x7f,0xf5] 579d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: dsb ish @ encoding: [0x4b,0xf0,0x7f,0xf5] 580d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: dsb ishst @ encoding: [0x4a,0xf0,0x7f,0xf5] 581d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: dsb ishst @ encoding: [0x4a,0xf0,0x7f,0xf5] 582d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: dsb nsh @ encoding: [0x47,0xf0,0x7f,0xf5] 583d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: dsb nsh @ encoding: [0x47,0xf0,0x7f,0xf5] 584d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: dsb nshst @ encoding: [0x46,0xf0,0x7f,0xf5] 585d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: dsb nshst @ encoding: [0x46,0xf0,0x7f,0xf5] 586d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: dsb osh @ encoding: [0x43,0xf0,0x7f,0xf5] 587d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: dsb oshst @ encoding: [0x42,0xf0,0x7f,0xf5] 588d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: dsb sy @ encoding: [0x4f,0xf0,0x7f,0xf5] 589d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner 590d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@------------------------------------------------------------------------------ 591d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ EOR 592d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@------------------------------------------------------------------------------ 593d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner eor r4, r5, #0xf000 594d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner eor r4, r5, r6 595d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner eor r4, r5, r6, lsl #5 596d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner eor r4, r5, r6, lsr #5 597d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner eor r4, r5, r6, lsr #5 598d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner eor r4, r5, r6, asr #5 599d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner eor r4, r5, r6, ror #5 600d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner eor r6, r7, r8, lsl r9 601d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner eor r6, r7, r8, lsr r9 602d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner eor r6, r7, r8, asr r9 603d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner eor r6, r7, r8, ror r9 604d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner eor r4, r5, r6, rrx 605d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner 606d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner @ destination register is optional 607d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner eor r5, #0xf000 608d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner eor r4, r5 609d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner eor r4, r5, lsl #5 610d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner eor r4, r5, lsr #5 611d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner eor r4, r5, lsr #5 612d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner eor r4, r5, asr #5 613d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner eor r4, r5, ror #5 614d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner eor r6, r7, lsl r9 615d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner eor r6, r7, lsr r9 616d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner eor r6, r7, asr r9 617d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner eor r6, r7, ror r9 618d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner eor r4, r5, rrx 619d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner 620d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: eor r4, r5, #61440 @ encoding: [0x0f,0x4a,0x25,0xe2] 621d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: eor r4, r5, r6 @ encoding: [0x06,0x40,0x25,0xe0] 622d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: eor r4, r5, r6, lsl #5 @ encoding: [0x86,0x42,0x25,0xe0] 623d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: eor r4, r5, r6, lsr #5 @ encoding: [0xa6,0x42,0x25,0xe0] 624d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: eor r4, r5, r6, lsr #5 @ encoding: [0xa6,0x42,0x25,0xe0] 625d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: eor r4, r5, r6, asr #5 @ encoding: [0xc6,0x42,0x25,0xe0] 626d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: eor r4, r5, r6, ror #5 @ encoding: [0xe6,0x42,0x25,0xe0] 627e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner@ CHECK: eor r6, r7, r8, lsl r9 @ encoding: [0x18,0x69,0x27,0xe0] 628d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: eor r6, r7, r8, lsr r9 @ encoding: [0x38,0x69,0x27,0xe0] 629e6e84e96ac031e261bda8d441aa9c4cade144437Ben Gardiner@ CHECK: eor r6, r7, r8, asr r9 @ encoding: [0x58,0x69,0x27,0xe0] 630d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: eor r6, r7, r8, ror r9 @ encoding: [0x78,0x69,0x27,0xe0] 631d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: eor r4, r5, r6, rrx @ encoding: [0x66,0x40,0x25,0xe0] 632d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner 633d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner 634d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: eor r5, r5, #61440 @ encoding: [0x0f,0x5a,0x25,0xe2] 635196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner@ CHECK: eor r4, r4, r5 @ encoding: [0x05,0x40,0x24,0xe0] 636196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner@ CHECK: eor r4, r4, r5, lsl #5 @ encoding: [0x85,0x42,0x24,0xe0] 637196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner@ CHECK: eor r4, r4, r5, lsr #5 @ encoding: [0xa5,0x42,0x24,0xe0] 638196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner@ CHECK: eor r4, r4, r5, lsr #5 @ encoding: [0xa5,0x42,0x24,0xe0] 639196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner@ CHECK: eor r4, r4, r5, asr #5 @ encoding: [0xc5,0x42,0x24,0xe0] 640196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner@ CHECK: eor r4, r4, r5, ror #5 @ encoding: [0xe5,0x42,0x24,0xe0] 641196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner@ CHECK: eor r6, r6, r7, lsl r9 @ encoding: [0x17,0x69,0x26,0xe0] 642196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner@ CHECK: eor r6, r6, r7, lsr r9 @ encoding: [0x37,0x69,0x26,0xe0] 643196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner@ CHECK: eor r6, r6, r7, asr r9 @ encoding: [0x57,0x69,0x26,0xe0] 644196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner@ CHECK: eor r6, r6, r7, ror r9 @ encoding: [0x77,0x69,0x26,0xe0] 645196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner@ CHECK: eor r4, r4, r5, rrx @ encoding: [0x65,0x40,0x24,0xe0] 646196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner 647196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner 648196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner@------------------------------------------------------------------------------ 649196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner@ ISB 650196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner@------------------------------------------------------------------------------ 651196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner isb sy 652196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner isb 653196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner 654196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner@ CHECK: isb sy @ encoding: [0x6f,0xf0,0x7f,0xf5] 655196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner@ CHECK: isb sy @ encoding: [0x6f,0xf0,0x7f,0xf5] 656196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner 657196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner 658196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner@------------------------------------------------------------------------------ 659196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner@ LDC{L}/LDC2{L} 660196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner@------------------------------------------------------------------------------ 661196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldc2 p0, c8, [r1, #4] 662196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldc2 p1, c7, [r2] 663196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldc2 p2, c6, [r3, #-224] 664196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldc2 p3, c5, [r4, #-120]! 665196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldc2 p4, c4, [r5], #16 666196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldc2 p5, c3, [r6], #-72 667196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldc2l p6, c2, [r7, #4] 668196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldc2l p7, c1, [r8] 669196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldc2l p8, c0, [r9, #-224] 670196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldc2l p9, c1, [r10, #-120]! 671196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldc2l p10, c2, [r11], #16 672196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldc2l p11, c3, [r12], #-72 673196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner 674196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldc p12, c4, [r0, #4] 675196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldc p13, c5, [r1] 676196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldc p14, c6, [r2, #-224] 677196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldc p15, c7, [r3, #-120]! 678196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldc p5, c8, [r4], #16 679196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldc p4, c9, [r5], #-72 680196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldcl p3, c10, [r6, #4] 681196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldcl p2, c11, [r7] 682196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldcl p1, c12, [r8, #-224] 683196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldcl p0, c13, [r9, #-120]! 684196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldcl p6, c14, [r10], #16 685196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldcl p7, c15, [r11], #-72 686196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner 687196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldclo p12, c4, [r0, #4] 688196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldchi p13, c5, [r1] 689196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldccs p14, c6, [r2, #-224] 690196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldccc p15, c7, [r3, #-120]! 691196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldceq p5, c8, [r4], #16 692196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldcgt p4, c9, [r5], #-72 693196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldcllt p3, c10, [r6, #4] 694196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldclge p2, c11, [r7] 695196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldclle p1, c12, [r8, #-224] 696196d0d29588867bed50cd28b8f03cbbb5e0e6608Ben Gardiner ldclne p0, c13, [r9, #-120]! 697a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM ldcleq p6, c14, [r10], #16 698a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM ldclhi p7, c15, [r11], #-72 699a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 700a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM ldc2 p2, c8, [r1], { 25 } 701a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM 702a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldc2 p0, c8, [r1, #4] @ encoding: [0x01,0x80,0x91,0xfd] 703a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ CHECK: ldc2 p1, c7, [r2] @ encoding: [0x00,0x71,0x92,0xfd] 7048ba4466a4ad458618282f8bdcc2706025856a9f2Chris Ball@ CHECK: ldc2 p2, c6, [r3, #-224] @ encoding: [0x38,0x62,0x13,0xfd] 7058ba4466a4ad458618282f8bdcc2706025856a9f2Chris Ball@ CHECK: ldc2 p3, c5, [r4, #-120]! @ encoding: [0x1e,0x53,0x34,0xfd] 706a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ CHECK: ldc2 p4, c4, [r5], #16 @ encoding: [0x04,0x44,0xb5,0xfc] 707a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ CHECK: ldc2 p5, c3, [r6], #-72 @ encoding: [0x12,0x35,0x36,0xfc] 708a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ CHECK: ldc2l p6, c2, [r7, #4] @ encoding: [0x01,0x26,0xd7,0xfd] 709a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ CHECK: ldc2l p7, c1, [r8] @ encoding: [0x00,0x17,0xd8,0xfd] 710a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ CHECK: ldc2l p8, c0, [r9, #-224] @ encoding: [0x38,0x08,0x59,0xfd] 711a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ CHECK: ldc2l p9, c1, [r10, #-120]! @ encoding: [0x1e,0x19,0x7a,0xfd] 712a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ CHECK: ldc2l p10, c2, [r11], #16 @ encoding: [0x04,0x2a,0xfb,0xfc] 713a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ CHECK: ldc2l p11, c3, [r12], #-72 @ encoding: [0x12,0x3b,0x7c,0xfc] 714a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM 715a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ CHECK: ldc p12, c4, [r0, #4] @ encoding: [0x01,0x4c,0x90,0xed] 716a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ CHECK: ldc p13, c5, [r1] @ encoding: [0x00,0x5d,0x91,0xed] 717a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ CHECK: ldc p14, c6, [r2, #-224] @ encoding: [0x38,0x6e,0x12,0xed] 718a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ CHECK: ldc p15, c7, [r3, #-120]! @ encoding: [0x1e,0x7f,0x33,0xed] 719a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ CHECK: ldc p5, c8, [r4], #16 @ encoding: [0x04,0x85,0xb4,0xec] 720a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ CHECK: ldc p4, c9, [r5], #-72 @ encoding: [0x12,0x94,0x35,0xec] 721a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldcl p3, c10, [r6, #4] @ encoding: [0x01,0xa3,0xd6,0xed] 722a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldcl p2, c11, [r7] @ encoding: [0x00,0xb2,0xd7,0xed] 723a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldcl p1, c12, [r8, #-224] @ encoding: [0x38,0xc1,0x58,0xed] 724a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldcl p0, c13, [r9, #-120]! @ encoding: [0x1e,0xd0,0x79,0xed] 725a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldcl p6, c14, [r10], #16 @ encoding: [0x04,0xe6,0xfa,0xec] 726a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldcl p7, c15, [r11], #-72 @ encoding: [0x12,0xf7,0x7b,0xec] 727a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 728a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldclo p12, c4, [r0, #4] @ encoding: [0x01,0x4c,0x90,0x3d] 729a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldchi p13, c5, [r1] @ encoding: [0x00,0x5d,0x91,0x8d] 730a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldchs p14, c6, [r2, #-224] @ encoding: [0x38,0x6e,0x12,0x2d] 731a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldclo p15, c7, [r3, #-120]! @ encoding: [0x1e,0x7f,0x33,0x3d] 732a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldceq p5, c8, [r4], #16 @ encoding: [0x04,0x85,0xb4,0x0c] 733a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldcgt p4, c9, [r5], #-72 @ encoding: [0x12,0x94,0x35,0xcc] 734a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldcllt p3, c10, [r6, #4] @ encoding: [0x01,0xa3,0xd6,0xbd] 735a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldclge p2, c11, [r7] @ encoding: [0x00,0xb2,0xd7,0xad] 736a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldclle p1, c12, [r8, #-224] @ encoding: [0x38,0xc1,0x58,0xdd] 737a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldclne p0, c13, [r9, #-120]! @ encoding: [0x1e,0xd0,0x79,0x1d] 738a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldcleq p6, c14, [r10], #16 @ encoding: [0x04,0xe6,0xfa,0x0c] 739a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldclhi p7, c15, [r11], #-72 @ encoding: [0x12,0xf7,0x7b,0x8c] 740a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 741a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldc2 p2, c8, [r1], {25} @ encoding: [0x19,0x82,0x91,0xfc] 742a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 743a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 744a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@------------------------------------------------------------------------------ 745a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ LDM* 746a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@------------------------------------------------------------------------------ 747a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO ldm r2, {r1,r3-r6,sp} 748a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO ldmia r2, {r1,r3-r6,sp} 749a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO ldmib r2, {r1,r3-r6,sp} 750a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO ldmda r2, {r1,r3-r6,sp} 751a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO ldmdb r2, {r1,r3-r6,sp} 752a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO ldmfd r2, {r1,r3-r6,sp} 753a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 754a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO @ with update 755a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO ldm r2!, {r1,r3-r6,sp} 756a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO ldmib r2!, {r1,r3-r6,sp} 757a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO ldmda r2!, {r1,r3-r6,sp} 758a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO ldmdb r2!, {r1,r3-r6,sp} 759b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball 760a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldm r2, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x92,0xe8] 761a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldm r2, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x92,0xe8] 762a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldmib r2, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x92,0xe9] 763a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldmda r2, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x12,0xe8] 764a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldmdb r2, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x12,0xe9] 765b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: ldm r2, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x92,0xe8] 766a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 767a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldm r2!, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0xb2,0xe8] 768a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldmib r2!, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0xb2,0xe9] 769a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldmda r2!, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x32,0xe8] 770a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldmdb r2!, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x32,0xe9] 771a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 772a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 773a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@------------------------------------------------------------------------------ 774a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ LDREX/LDREXB/LDREXH/LDREXD 775a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@------------------------------------------------------------------------------ 776a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO ldrexb r3, [r4] 777a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO ldrexh r2, [r5] 778a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO ldrex r1, [r7] 779a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO ldrexd r6, r7, [r8] 780a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 781a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldrexb r3, [r4] @ encoding: [0x9f,0x3f,0xd4,0xe1] 782a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldrexh r2, [r5] @ encoding: [0x9f,0x2f,0xf5,0xe1] 783a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldrex r1, [r7] @ encoding: [0x9f,0x1f,0x97,0xe1] 784a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldrexd r6, r7, [r8] @ encoding: [0x9f,0x6f,0xb8,0xe1] 785a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 786a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@------------------------------------------------------------------------------ 787a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ LDRHT 788a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@------------------------------------------------------------------------------ 789a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO ldrhthi r8, [r11], #-0 790a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO ldrhthi r8, [r11], #0 791a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 792a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldrhthi r8, [r11], #-0 @ encoding: [0xb0,0x80,0x7b,0x80] 793a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: ldrhthi r8, [r11], #0 @ encoding: [0xb0,0x80,0xfb,0x80] 794a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 795a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@------------------------------------------------------------------------------ 796a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ LSL 797a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@------------------------------------------------------------------------------ 798a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO lsl r2, r4, #31 799a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO lsl r2, r4, #1 800a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO lsl r2, r4, #0 801a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO lsl r4, #1 802a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 803a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: lsl r2, r4, #31 @ encoding: [0x84,0x2f,0xa0,0xe1] 804b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: lsl r2, r4, #1 @ encoding: [0x84,0x20,0xa0,0xe1] 805a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: mov r2, r4 @ encoding: [0x04,0x20,0xa0,0xe1] 806a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: lsl r4, r4, #1 @ encoding: [0x84,0x40,0xa0,0xe1] 807a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 808a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 809a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@------------------------------------------------------------------------------ 810a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ LSR 811a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@------------------------------------------------------------------------------ 812a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO lsr r2, r4, #32 813a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO lsr r2, r4, #2 814a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO lsr r2, r4, #0 815a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO lsr r4, #2 816a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 817a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: lsr r2, r4, #32 @ encoding: [0x24,0x20,0xa0,0xe1] 818a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: lsr r2, r4, #2 @ encoding: [0x24,0x21,0xa0,0xe1] 819a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: mov r2, r4 @ encoding: [0x04,0x20,0xa0,0xe1] 820a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: lsr r4, r4, #2 @ encoding: [0x24,0x41,0xa0,0xe1] 821a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 822a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 823a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@------------------------------------------------------------------------------ 824a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ MCR/MCR2 825b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@------------------------------------------------------------------------------ 826a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO mcr p7, #1, r5, c1, c1, #4 827a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO mcr2 p7, #1, r5, c1, c1, #4 828a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 829a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: mcr p7, #1, r5, c1, c1, #4 @ encoding: [0x91,0x57,0x21,0xee] 830a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: mcr2 p7, #1, r5, c1, c1, #4 @ encoding: [0x91,0x57,0x21,0xfe] 831a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 832a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@------------------------------------------------------------------------------ 833a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ MCRR/MCRR2 834a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@------------------------------------------------------------------------------ 835a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO mcrr p7, #15, r5, r4, c1 836a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO mcrr2 p7, #15, r5, r4, c1 837a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 838a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: mcrr p7, #15, r5, r4, c1 @ encoding: [0xf1,0x57,0x44,0xec] 839a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: mcrr2 p7, #15, r5, r4, c1 @ encoding: [0xf1,0x57,0x44,0xfc] 840a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 841a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 842a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@------------------------------------------------------------------------------ 843a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ MLA 844a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@------------------------------------------------------------------------------ 845a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO mla r1,r2,r3,r4 846a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO mlas r1,r2,r3,r4 847a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO mlane r1,r2,r3,r4 848a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO mlasne r1,r2,r3,r4 849a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 850a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: mla r1, r2, r3, r4 @ encoding: [0x92,0x43,0x21,0xe0] 851f82e27a1b11e6fb52565b61827563316dcbb2cc4Ben Gardiner@ CHECK: mlas r1, r2, r3, r4 @ encoding: [0x92,0x43,0x31,0xe0] 852f82e27a1b11e6fb52565b61827563316dcbb2cc4Ben Gardiner@ CHECK: mlane r1, r2, r3, r4 @ encoding: [0x92,0x43,0x21,0x10] 853a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: mlasne r1, r2, r3, r4 @ encoding: [0x92,0x43,0x31,0x10] 854f82e27a1b11e6fb52565b61827563316dcbb2cc4Ben Gardiner 855f82e27a1b11e6fb52565b61827563316dcbb2cc4Ben Gardiner@------------------------------------------------------------------------------ 856f82e27a1b11e6fb52565b61827563316dcbb2cc4Ben Gardiner@ MLS 857a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@------------------------------------------------------------------------------ 858a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO mls r2,r5,r6,r3 859a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO mlsne r2,r5,r6,r3 860a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 861f82e27a1b11e6fb52565b61827563316dcbb2cc4Ben Gardiner@ CHECK: mls r2, r5, r6, r3 @ encoding: [0x95,0x36,0x62,0xe0] 862f82e27a1b11e6fb52565b61827563316dcbb2cc4Ben Gardiner@ CHECK: mlsne r2, r5, r6, r3 @ encoding: [0x95,0x36,0x62,0x10] 863a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 864f82e27a1b11e6fb52565b61827563316dcbb2cc4Ben Gardiner@------------------------------------------------------------------------------ 865f82e27a1b11e6fb52565b61827563316dcbb2cc4Ben Gardiner@ MOV (immediate) 866f82e27a1b11e6fb52565b61827563316dcbb2cc4Ben Gardiner@------------------------------------------------------------------------------ 867a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO mov r3, #7 868a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO mov r4, #0xff0 869a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO mov r5, #0xff0000 870a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO mov r6, #0xffff 871a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO movw r9, #0xffff 8724e85023654b356511612547207a4cb643fb3db16Ben Gardiner movs r3, #7 8734e85023654b356511612547207a4cb643fb3db16Ben Gardiner moveq r4, #0xff0 8744e85023654b356511612547207a4cb643fb3db16Ben Gardiner movseq r5, #0xff0000 8754e85023654b356511612547207a4cb643fb3db16Ben Gardiner 8764e85023654b356511612547207a4cb643fb3db16Ben Gardiner@ CHECK: mov r3, #7 @ encoding: [0x07,0x30,0xa0,0xe3] 8774e85023654b356511612547207a4cb643fb3db16Ben Gardiner@ CHECK: mov r4, #4080 @ encoding: [0xff,0x4e,0xa0,0xe3] 8784e85023654b356511612547207a4cb643fb3db16Ben Gardiner@ CHECK: mov r5, #16711680 @ encoding: [0xff,0x58,0xa0,0xe3] 8794e85023654b356511612547207a4cb643fb3db16Ben Gardiner@ CHECK: movw r6, #65535 @ encoding: [0xff,0x6f,0x0f,0xe3] 880a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: movw r9, #65535 @ encoding: [0xff,0x9f,0x0f,0xe3] 881a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: movs r3, #7 @ encoding: [0x07,0x30,0xb0,0xe3] 882a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: moveq r4, #4080 @ encoding: [0xff,0x4e,0xa0,0x03] 883a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: movseq r5, #16711680 @ encoding: [0xff,0x58,0xb0,0x03] 884a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 885a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@------------------------------------------------------------------------------ 886a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ MOV (register) 887a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@------------------------------------------------------------------------------ 888a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO mov r2, r3 889a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO movs r2, r3 890a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO moveq r2, r3 891a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO movseq r2, r3 892a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 893a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: mov r2, r3 @ encoding: [0x03,0x20,0xa0,0xe1] 894a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: movs r2, r3 @ encoding: [0x03,0x20,0xb0,0xe1] 895a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: moveq r2, r3 @ encoding: [0x03,0x20,0xa0,0x01] 896a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: movseq r2, r3 @ encoding: [0x03,0x20,0xb0,0x01] 897a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 898a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@------------------------------------------------------------------------------ 899a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ MOVT 900a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@------------------------------------------------------------------------------ 901a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO movt r3, #7 902a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO movt r6, #0xffff 903a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO movteq r4, #0xff0 904a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 905a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: movt r3, #7 @ encoding: [0x07,0x30,0x40,0xe3] 906a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: movt r6, #65535 @ encoding: [0xff,0x6f,0x4f,0xe3] 907a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: movteq r4, #4080 @ encoding: [0xf0,0x4f,0x40,0x03] 908a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 909a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 910a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@------------------------------------------------------------------------------ 91164f63a3d2693e95b45c6ba743570b3374a45043bOleg Matcovschi@ MRC/MRC2 91264f63a3d2693e95b45c6ba743570b3374a45043bOleg Matcovschi@------------------------------------------------------------------------------ 91364f63a3d2693e95b45c6ba743570b3374a45043bOleg Matcovschi mrc p14, #0, r1, c1, c2, #4 91464f63a3d2693e95b45c6ba743570b3374a45043bOleg Matcovschi mrc2 p14, #0, r1, c1, c2, #4 91564f63a3d2693e95b45c6ba743570b3374a45043bOleg Matcovschi 91664f63a3d2693e95b45c6ba743570b3374a45043bOleg Matcovschi@ CHECK: mrc p14, #0, r1, c1, c2, #4 @ encoding: [0x92,0x1e,0x11,0xee] 91764f63a3d2693e95b45c6ba743570b3374a45043bOleg Matcovschi@ CHECK: mrc2 p14, #0, r1, c1, c2, #4 @ encoding: [0x92,0x1e,0x11,0xfe] 91864f63a3d2693e95b45c6ba743570b3374a45043bOleg Matcovschi 91964f63a3d2693e95b45c6ba743570b3374a45043bOleg Matcovschi@------------------------------------------------------------------------------ 920a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ MRRC/MRRC2 921a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@------------------------------------------------------------------------------ 922a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO mrrc p7, #1, r5, r4, c1 923a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO mrrc2 p7, #1, r5, r4, c1 924a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 925a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: mrrc p7, #1, r5, r4, c1 @ encoding: [0x11,0x57,0x54,0xec] 926a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: mrrc2 p7, #1, r5, r4, c1 @ encoding: [0x11,0x57,0x54,0xfc] 927a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 928a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 929a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@------------------------------------------------------------------------------ 930a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ MRS 931a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@------------------------------------------------------------------------------ 932a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO mrs r8, apsr 9338c0c40d477db2863e2746e6a995980113f725c0dMario Schuknecht mrs r8, cpsr 934a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO mrs r8, spsr 935a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: mrs r8, apsr @ encoding: [0x00,0x80,0x0f,0xe1] 936a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: mrs r8, apsr @ encoding: [0x00,0x80,0x0f,0xe1] 937a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: mrs r8, spsr @ encoding: [0x00,0x80,0x4f,0xe1] 938a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 939a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 940a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 941a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@------------------------------------------------------------------------------ 942a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ MSR 943a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@------------------------------------------------------------------------------ 944a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 945a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO msr apsr, #5 946a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO msr apsr_g, #5 947a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO msr apsr_nzcvq, #5 948a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO msr APSR_nzcvq, #5 949a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO msr apsr_nzcvqg, #5 950a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO msr cpsr_fc, #5 951a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO msr cpsr_c, #5 952a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO msr cpsr_x, #5 953a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO msr cpsr_fc, #5 954a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO msr cpsr_all, #5 955a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO msr cpsr_fsx, #5 956a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO msr spsr_fc, #5 9578c0c40d477db2863e2746e6a995980113f725c0dMario Schuknecht msr SPSR_fsxc, #5 9588c0c40d477db2863e2746e6a995980113f725c0dMario Schuknecht msr cpsr_fsxc, #5 9598c0c40d477db2863e2746e6a995980113f725c0dMario Schuknecht 960a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: msr APSR_nzcvq, #5 @ encoding: [0x05,0xf0,0x28,0xe3] 9618c0c40d477db2863e2746e6a995980113f725c0dMario Schuknecht@ CHECK: msr APSR_g, #5 @ encoding: [0x05,0xf0,0x24,0xe3] 962a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: msr APSR_nzcvq, #5 @ encoding: [0x05,0xf0,0x28,0xe3] 963a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: msr APSR_nzcvq, #5 @ encoding: [0x05,0xf0,0x28,0xe3] 964a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: msr APSR_nzcvqg, #5 @ encoding: [0x05,0xf0,0x2c,0xe3] 965a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: msr CPSR_fc, #5 @ encoding: [0x05,0xf0,0x29,0xe3] 966a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: msr CPSR_c, #5 @ encoding: [0x05,0xf0,0x21,0xe3] 967a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: msr CPSR_x, #5 @ encoding: [0x05,0xf0,0x22,0xe3] 968a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: msr CPSR_fc, #5 @ encoding: [0x05,0xf0,0x29,0xe3] 969a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: msr CPSR_fc, #5 @ encoding: [0x05,0xf0,0x29,0xe3] 970a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: msr CPSR_fsx, #5 @ encoding: [0x05,0xf0,0x2e,0xe3] 971d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@ CHECK: msr SPSR_fc, #5 @ encoding: [0x05,0xf0,0x69,0xe3] 972a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: msr SPSR_fsxc, #5 @ encoding: [0x05,0xf0,0x6f,0xe3] 973b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball@ CHECK: msr CPSR_fsxc, #5 @ encoding: [0x05,0xf0,0x2f,0xe3] 974a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 975b9c7a17fce190f085bb4eb6e6535a22e2c69de68Chris Ball msr apsr, r0 976a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO msr apsr_g, r0 977a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO msr apsr_nzcvq, r0 978a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO msr APSR_nzcvq, r0 979a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO msr apsr_nzcvqg, r0 980a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO msr cpsr_fc, r0 981a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO msr cpsr_c, r0 9824da1c0dc8bb295993d05beebc0a6132af9713322Ben Gardiner msr cpsr_x, r0 9834da1c0dc8bb295993d05beebc0a6132af9713322Ben Gardiner msr cpsr_fc, r0 9844da1c0dc8bb295993d05beebc0a6132af9713322Ben Gardiner msr cpsr_all, r0 9854da1c0dc8bb295993d05beebc0a6132af9713322Ben Gardiner msr cpsr_fsx, r0 9864da1c0dc8bb295993d05beebc0a6132af9713322Ben Gardiner msr spsr_fc, r0 9874da1c0dc8bb295993d05beebc0a6132af9713322Ben Gardiner msr SPSR_fsxc, r0 9884da1c0dc8bb295993d05beebc0a6132af9713322Ben Gardiner msr cpsr_fsxc, r0 989a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 9904da1c0dc8bb295993d05beebc0a6132af9713322Ben Gardiner@ CHECK: msr APSR_nzcvq, r0 @ encoding: [0x00,0xf0,0x28,0xe1] 9914da1c0dc8bb295993d05beebc0a6132af9713322Ben Gardiner@ CHECK: msr APSR_g, r0 @ encoding: [0x00,0xf0,0x24,0xe1] 9924da1c0dc8bb295993d05beebc0a6132af9713322Ben Gardiner@ CHECK: msr APSR_nzcvq, r0 @ encoding: [0x00,0xf0,0x28,0xe1] 9934da1c0dc8bb295993d05beebc0a6132af9713322Ben Gardiner@ CHECK: msr APSR_nzcvq, r0 @ encoding: [0x00,0xf0,0x28,0xe1] 9944da1c0dc8bb295993d05beebc0a6132af9713322Ben Gardiner@ CHECK: msr APSR_nzcvqg, r0 @ encoding: [0x00,0xf0,0x2c,0xe1] 9954da1c0dc8bb295993d05beebc0a6132af9713322Ben Gardiner@ CHECK: msr CPSR_fc, r0 @ encoding: [0x00,0xf0,0x29,0xe1] 9964da1c0dc8bb295993d05beebc0a6132af9713322Ben Gardiner@ CHECK: msr CPSR_c, r0 @ encoding: [0x00,0xf0,0x21,0xe1] 9974da1c0dc8bb295993d05beebc0a6132af9713322Ben Gardiner@ CHECK: msr CPSR_x, r0 @ encoding: [0x00,0xf0,0x22,0xe1] 9984da1c0dc8bb295993d05beebc0a6132af9713322Ben Gardiner@ CHECK: msr CPSR_fc, r0 @ encoding: [0x00,0xf0,0x29,0xe1] 9994da1c0dc8bb295993d05beebc0a6132af9713322Ben Gardiner@ CHECK: msr CPSR_fc, r0 @ encoding: [0x00,0xf0,0x29,0xe1] 1000a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: msr CPSR_fsx, r0 @ encoding: [0x00,0xf0,0x2e,0xe1] 10014da1c0dc8bb295993d05beebc0a6132af9713322Ben Gardiner@ CHECK: msr SPSR_fc, r0 @ encoding: [0x00,0xf0,0x69,0xe1] 10024da1c0dc8bb295993d05beebc0a6132af9713322Ben Gardiner@ CHECK: msr SPSR_fsxc, r0 @ encoding: [0x00,0xf0,0x6f,0xe1] 10034da1c0dc8bb295993d05beebc0a6132af9713322Ben Gardiner@ CHECK: msr CPSR_fsxc, r0 @ encoding: [0x00,0xf0,0x2f,0xe1] 10044da1c0dc8bb295993d05beebc0a6132af9713322Ben Gardiner 10054da1c0dc8bb295993d05beebc0a6132af9713322Ben Gardiner@------------------------------------------------------------------------------ 10064da1c0dc8bb295993d05beebc0a6132af9713322Ben Gardiner@ MUL 10074da1c0dc8bb295993d05beebc0a6132af9713322Ben Gardiner@------------------------------------------------------------------------------ 1008a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO mul r5, r6, r7 1009a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO muls r5, r6, r7 1010a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO mulgt r5, r6, r7 1011a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO mulsle r5, r6, r7 1012a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO mul r11, r5 1013a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 1014a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: mul r5, r6, r7 @ encoding: [0x96,0x07,0x05,0xe0] 101582bd9504b12160992309d6508dc5654b3db93c2bBen Gardiner@ CHECK: muls r5, r6, r7 @ encoding: [0x96,0x07,0x15,0xe0] 1016a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: mulgt r5, r6, r7 @ encoding: [0x96,0x07,0x05,0xc0] 1017a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: mulsle r5, r6, r7 @ encoding: [0x96,0x07,0x15,0xd0] 101882bd9504b12160992309d6508dc5654b3db93c2bBen Gardiner 1019a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 1020a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@------------------------------------------------------------------------------ 1021a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ MVN (immediate) 102282bd9504b12160992309d6508dc5654b3db93c2bBen Gardiner@------------------------------------------------------------------------------ 1023a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO mvn r3, #7 1024a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO mvn r4, #0xff0 1025a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO mvn r5, #0xff0000 1026a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO mvns r3, #7 102722f2641fe6155fe9fb8b38a8ebe2093ec3e2ec11Oliver Metz mvneq r4, #0xff0 102822f2641fe6155fe9fb8b38a8ebe2093ec3e2ec11Oliver Metz mvnseq r5, #0xff0000 102922f2641fe6155fe9fb8b38a8ebe2093ec3e2ec11Oliver Metz 103022f2641fe6155fe9fb8b38a8ebe2093ec3e2ec11Oliver Metz@ CHECK: mvn r3, #7 @ encoding: [0x07,0x30,0xe0,0xe3] 1031a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: mvn r4, #4080 @ encoding: [0xff,0x4e,0xe0,0xe3] 1032f82e27a1b11e6fb52565b61827563316dcbb2cc4Ben Gardiner@ CHECK: mvn r5, #16711680 @ encoding: [0xff,0x58,0xe0,0xe3] 1033f82e27a1b11e6fb52565b61827563316dcbb2cc4Ben Gardiner@ CHECK: mvns r3, #7 @ encoding: [0x07,0x30,0xf0,0xe3] 1034f82e27a1b11e6fb52565b61827563316dcbb2cc4Ben Gardiner@ CHECK: mvneq r4, #4080 @ encoding: [0xff,0x4e,0xe0,0x03] 1035f82e27a1b11e6fb52565b61827563316dcbb2cc4Ben Gardiner@ CHECK: mvnseq r5, #16711680 @ encoding: [0xff,0x58,0xf0,0x03] 1036f82e27a1b11e6fb52565b61827563316dcbb2cc4Ben Gardiner 1037a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 1038d91d3698c6464a83b7c301eb84da109f9f94b54cBen Gardiner@------------------------------------------------------------------------------ 1039a6cd98de8b158029ca6b9c1e961729dc83a7144cBen Gardiner@ MVN (register) 1040a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@------------------------------------------------------------------------------ 1041a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO mvn r2, r3 1042a6cd98de8b158029ca6b9c1e961729dc83a7144cBen Gardiner mvns r2, r3 1043a6cd98de8b158029ca6b9c1e961729dc83a7144cBen Gardiner mvn r5, r6, lsl #19 1044a6cd98de8b158029ca6b9c1e961729dc83a7144cBen Gardiner mvn r5, r6, lsr #9 1045a6cd98de8b158029ca6b9c1e961729dc83a7144cBen Gardiner mvn r5, r6, asr #4 1046a6cd98de8b158029ca6b9c1e961729dc83a7144cBen Gardiner mvn r5, r6, ror #6 1047a6cd98de8b158029ca6b9c1e961729dc83a7144cBen Gardiner mvn r5, r6, rrx 1048a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO mvneq r2, r3 1049a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO mvnseq r2, r3, lsl #10 1050a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 1051a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: mvn r2, r3 @ encoding: [0x03,0x20,0xe0,0xe1] 1052a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: mvns r2, r3 @ encoding: [0x03,0x20,0xf0,0xe1] 1053a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: mvn r5, r6, lsl #19 @ encoding: [0x86,0x59,0xe0,0xe1] 1054a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: mvn r5, r6, lsr #9 @ encoding: [0xa6,0x54,0xe0,0xe1] 1055a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: mvn r5, r6, asr #4 @ encoding: [0x46,0x52,0xe0,0xe1] 1056a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: mvn r5, r6, ror #6 @ encoding: [0x66,0x53,0xe0,0xe1] 1057a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: mvn r5, r6, rrx @ encoding: [0x66,0x50,0xe0,0xe1] 1058f82e27a1b11e6fb52565b61827563316dcbb2cc4Ben Gardiner@ CHECK: mvneq r2, r3 @ encoding: [0x03,0x20,0xe0,0x01] 1059f82e27a1b11e6fb52565b61827563316dcbb2cc4Ben Gardiner@ CHECK: mvnseq r2, r3, lsl #10 @ encoding: [0x03,0x25,0xf0,0x01] 1060f82e27a1b11e6fb52565b61827563316dcbb2cc4Ben Gardiner 1061a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 1062f82e27a1b11e6fb52565b61827563316dcbb2cc4Ben Gardiner@------------------------------------------------------------------------------ 1063f82e27a1b11e6fb52565b61827563316dcbb2cc4Ben Gardiner@ MVN (shifted register) 1064f82e27a1b11e6fb52565b61827563316dcbb2cc4Ben Gardiner@------------------------------------------------------------------------------ 1065f82e27a1b11e6fb52565b61827563316dcbb2cc4Ben Gardiner mvn r5, r6, lsl r7 106668f490b54b53c715db06e55f9595a672d1c0690eBen Gardiner mvns r5, r6, lsr r7 106768f490b54b53c715db06e55f9595a672d1c0690eBen Gardiner mvngt r5, r6, asr r7 106868f490b54b53c715db06e55f9595a672d1c0690eBen Gardiner mvnslt r5, r6, ror r7 106968f490b54b53c715db06e55f9595a672d1c0690eBen Gardiner 107068f490b54b53c715db06e55f9595a672d1c0690eBen Gardiner@ CHECK: mvn r5, r6, lsl r7 @ encoding: [0x16,0x57,0xe0,0xe1] 1071a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: mvns r5, r6, lsr r7 @ encoding: [0x36,0x57,0xf0,0xe1] 107268f490b54b53c715db06e55f9595a672d1c0690eBen Gardiner@ CHECK: mvngt r5, r6, asr r7 @ encoding: [0x56,0x57,0xe0,0xc1] 10734e85023654b356511612547207a4cb643fb3db16Ben Gardiner@ CHECK: mvnslt r5, r6, ror r7 @ encoding: [0x76,0x57,0xf0,0xb1] 10744e85023654b356511612547207a4cb643fb3db16Ben Gardiner 1075a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@------------------------------------------------------------------------------ 1076a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ NOP 1077a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@------------------------------------------------------------------------------ 1078a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO nop 1079a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO nopgt 1080a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 1081a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: nop @ encoding: [0x00,0xf0,0x20,0xe3] 1082a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: nopgt @ encoding: [0x00,0xf0,0x20,0xc3] 1083a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 1084a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 1085a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@------------------------------------------------------------------------------ 1086a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ ORR 1087a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@------------------------------------------------------------------------------ 1088a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO orr r4, r5, #0xf000 1089a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO orr r4, r5, r6 1090a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO orr r4, r5, r6, lsl #5 1091a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO orr r4, r5, r6, lsr #5 1092a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO orr r4, r5, r6, lsr #5 1093a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO orr r4, r5, r6, asr #5 1094a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO orr r4, r5, r6, ror #5 1095a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO orr r6, r7, r8, lsl r9 1096a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO orr r6, r7, r8, lsr r9 1097a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO orr r6, r7, r8, asr r9 1098a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO orr r6, r7, r8, ror r9 1099a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO orr r4, r5, r6, rrx 1100a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 1101a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO @ destination register is optional 1102a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO orr r5, #0xf000 1103a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO orr r4, r5 1104a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO orr r4, r5, lsl #5 1105a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO orr r4, r5, lsr #5 1106a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO orr r4, r5, lsr #5 1107a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO orr r4, r5, asr #5 1108a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO orr r4, r5, ror #5 1109a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO orr r6, r7, lsl r9 1110a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO orr r6, r7, lsr r9 1111a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO orr r6, r7, asr r9 1112a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO orr r6, r7, ror r9 1113a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO orr r4, r5, rrx 1114a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 1115a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: orr r4, r5, #61440 @ encoding: [0x0f,0x4a,0x85,0xe3] 1116a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: orr r4, r5, r6 @ encoding: [0x06,0x40,0x85,0xe1] 1117a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: orr r4, r5, r6, lsl #5 @ encoding: [0x86,0x42,0x85,0xe1] 1118a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: orr r4, r5, r6, lsr #5 @ encoding: [0xa6,0x42,0x85,0xe1] 1119a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: orr r4, r5, r6, lsr #5 @ encoding: [0xa6,0x42,0x85,0xe1] 1120a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: orr r4, r5, r6, asr #5 @ encoding: [0xc6,0x42,0x85,0xe1] 1121a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: orr r4, r5, r6, ror #5 @ encoding: [0xe6,0x42,0x85,0xe1] 1122a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: orr r6, r7, r8, lsl r9 @ encoding: [0x18,0x69,0x87,0xe1] 1123a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: orr r6, r7, r8, lsr r9 @ encoding: [0x38,0x69,0x87,0xe1] 1124a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: orr r6, r7, r8, asr r9 @ encoding: [0x58,0x69,0x87,0xe1] 1125a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: orr r6, r7, r8, ror r9 @ encoding: [0x78,0x69,0x87,0xe1] 1126a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: orr r4, r5, r6, rrx @ encoding: [0x66,0x40,0x85,0xe1] 1127a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO 112864f63a3d2693e95b45c6ba743570b3374a45043bOleg Matcovschi@ CHECK: orr r5, r5, #61440 @ encoding: [0x0f,0x5a,0x85,0xe3] 112964f63a3d2693e95b45c6ba743570b3374a45043bOleg Matcovschi@ CHECK: orr r4, r4, r5 @ encoding: [0x05,0x40,0x84,0xe1] 1130a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: orr r4, r4, r5, lsl #5 @ encoding: [0x85,0x42,0x84,0xe1] 1131a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: orr r4, r4, r5, lsr #5 @ encoding: [0xa5,0x42,0x84,0xe1] 1132a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: orr r4, r4, r5, lsr #5 @ encoding: [0xa5,0x42,0x84,0xe1] 1133a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: orr r4, r4, r5, asr #5 @ encoding: [0xc5,0x42,0x84,0xe1] 1134a5bf4a2030a9dcfbcebf1b647e65c1e936a56e14Giuseppe CAVALLARO@ CHECK: orr r4, r4, r5, ror #5 @ encoding: [0xe5,0x42,0x84,0xe1] 1135a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ CHECK: orr r6, r6, r7, lsl r9 @ encoding: [0x17,0x69,0x86,0xe1] 1136a8bfde77e0e275070791138d60b75d1cc293daf0Johan RUDHOLM@ CHECK: orr r6, r6, r7, lsr r9 @ encoding: [0x37,0x69,0x86,0xe1] 113721bb473fc58366b872efe31e1da7831cad4b92faYaniv Gardi@ CHECK: orr r6, r6, r7, asr r9 @ encoding: [0x57,0x69,0x86,0xe1] 113821bb473fc58366b872efe31e1da7831cad4b92faYaniv Gardi@ CHECK: orr r6, r6, r7, ror r9 @ encoding: [0x77,0x69,0x86,0xe1] 113921bb473fc58366b872efe31e1da7831cad4b92faYaniv Gardi@ CHECK: orr r4, r4, r5, rrx @ encoding: [0x65,0x40,0x84,0xe1] 114021bb473fc58366b872efe31e1da7831cad4b92faYaniv Gardi 114121bb473fc58366b872efe31e1da7831cad4b92faYaniv Gardi orrseq r4, r5, #0xf000 114221bb473fc58366b872efe31e1da7831cad4b92faYaniv Gardi orrne r4, r5, r6 114321bb473fc58366b872efe31e1da7831cad4b92faYaniv Gardi orrseq r4, r5, r6, lsl #5 114421bb473fc58366b872efe31e1da7831cad4b92faYaniv Gardi orrlo r6, r7, r8, ror r9 114521bb473fc58366b872efe31e1da7831cad4b92faYaniv Gardi orrshi r4, r5, r6, rrx 114621bb473fc58366b872efe31e1da7831cad4b92faYaniv Gardi orrcs r5, #0xf000 114721bb473fc58366b872efe31e1da7831cad4b92faYaniv Gardi orrseq r4, r5 114821bb473fc58366b872efe31e1da7831cad4b92faYaniv Gardi orrne r6, r7, asr r9 114921bb473fc58366b872efe31e1da7831cad4b92faYaniv Gardi orrslt r6, r7, ror r9 115021bb473fc58366b872efe31e1da7831cad4b92faYaniv Gardi orrsgt r4, r5, rrx 115121bb473fc58366b872efe31e1da7831cad4b92faYaniv Gardi 115221bb473fc58366b872efe31e1da7831cad4b92faYaniv Gardi@ CHECK: orrseq r4, r5, #61440 @ encoding: [0x0f,0x4a,0x95,0x03] 115321bb473fc58366b872efe31e1da7831cad4b92faYaniv Gardi@ CHECK: orrne r4, r5, r6 @ encoding: [0x06,0x40,0x85,0x11] 115421bb473fc58366b872efe31e1da7831cad4b92faYaniv Gardi@ CHECK: orrseq r4, r5, r6, lsl #5 @ encoding: [0x86,0x42,0x95,0x01] 115521bb473fc58366b872efe31e1da7831cad4b92faYaniv Gardi@ CHECK: orrlo r6, r7, r8, ror r9 @ encoding: [0x78,0x69,0x87,0x31] 115621bb473fc58366b872efe31e1da7831cad4b92faYaniv Gardi@ CHECK: orrshi r4, r5, r6, rrx @ encoding: [0x66,0x40,0x95,0x81] 115721bb473fc58366b872efe31e1da7831cad4b92faYaniv Gardi@ CHECK: orrhs r5, r5, #61440 @ encoding: [0x0f,0x5a,0x85,0x23] 115821bb473fc58366b872efe31e1da7831cad4b92faYaniv Gardi@ CHECK: orrseq r4, r4, r5 @ encoding: [0x05,0x40,0x94,0x01] 115921bb473fc58366b872efe31e1da7831cad4b92faYaniv Gardi@ CHECK: orrne r6, r6, r7, asr r9 @ encoding: [0x57,0x69,0x86,0x11] 116021bb473fc58366b872efe31e1da7831cad4b92faYaniv Gardi@ CHECK: orrslt r6, r6, r7, ror r9 @ encoding: [0x77,0x69,0x96,0xb1] 116121bb473fc58366b872efe31e1da7831cad4b92faYaniv Gardi@ CHECK: orrsgt r4, r4, r5, rrx @ encoding: [0x65,0x40,0x94,0xc1] 116221bb473fc58366b872efe31e1da7831cad4b92faYaniv Gardi 116321bb473fc58366b872efe31e1da7831cad4b92faYaniv Gardi@------------------------------------------------------------------------------ 116421bb473fc58366b872efe31e1da7831cad4b92faYaniv Gardi@ PKH 1165@------------------------------------------------------------------------------ 1166 pkhbt r2, r2, r3 1167 pkhbt r2, r2, r3, lsl #31 1168 pkhbt r2, r2, r3, lsl #0 1169 pkhbt r2, r2, r3, lsl #15 1170 1171 pkhtb r2, r2, r3 1172 pkhtb r2, r2, r3, asr #31 1173 pkhtb r2, r2, r3, asr #15 1174 1175@ CHECK: pkhbt r2, r2, r3 @ encoding: [0x13,0x20,0x82,0xe6] 1176@ CHECK: pkhbt r2, r2, r3, lsl #31 @ encoding: [0x93,0x2f,0x82,0xe6] 1177@ CHECK: pkhbt r2, r2, r3 @ encoding: [0x13,0x20,0x82,0xe6] 1178@ CHECK: pkhbt r2, r2, r3, lsl #15 @ encoding: [0x93,0x27,0x82,0xe6] 1179 1180@ CHECK: pkhbt r2, r2, r3 @ encoding: [0x13,0x20,0x82,0xe6] 1181@ CHECK: pkhtb r2, r2, r3, asr #31 @ encoding: [0xd3,0x2f,0x82,0xe6] 1182@ CHECK: pkhtb r2, r2, r3, asr #15 @ encoding: [0xd3,0x27,0x82,0xe6] 1183 1184@------------------------------------------------------------------------------ 1185@ FIXME: PLD 1186@------------------------------------------------------------------------------ 1187@------------------------------------------------------------------------------ 1188@ FIXME: PLI 1189@------------------------------------------------------------------------------ 1190 1191 1192@------------------------------------------------------------------------------ 1193@ POP 1194@------------------------------------------------------------------------------ 1195 pop {r7} 1196 pop {r7, r8, r9, r10} 1197 1198@ CHECK: pop {r7} @ encoding: [0x04,0x70,0x9d,0xe4] 1199@ CHECK: pop {r7, r8, r9, r10} @ encoding: [0x80,0x07,0xbd,0xe8] 1200 1201 1202@------------------------------------------------------------------------------ 1203@ PUSH 1204@------------------------------------------------------------------------------ 1205 push {r7} 1206 push {r7, r8, r9, r10} 1207 1208@ CHECK: push {r7} @ encoding: [0x04,0x70,0x2d,0xe5] 1209@ CHECK: push {r7, r8, r9, r10} @ encoding: [0x80,0x07,0x2d,0xe9] 1210 1211 1212@------------------------------------------------------------------------------ 1213@ QADD/QADD16/QADD8 1214@------------------------------------------------------------------------------ 1215 qadd r1, r2, r3 1216 qaddne r1, r2, r3 1217 qadd16 r1, r2, r3 1218 qadd16gt r1, r2, r3 1219 qadd8 r1, r2, r3 1220 qadd8le r1, r2, r3 1221 1222@ CHECK: qadd r1, r2, r3 @ encoding: [0x52,0x10,0x03,0xe1] 1223@ CHECK: qaddne r1, r2, r3 @ encoding: [0x52,0x10,0x03,0x11] 1224@ CHECK: qadd16 r1, r2, r3 @ encoding: [0x13,0x1f,0x22,0xe6] 1225@ CHECK: qadd16gt r1, r2, r3 @ encoding: [0x13,0x1f,0x22,0xc6] 1226@ CHECK: qadd8 r1, r2, r3 @ encoding: [0x93,0x1f,0x22,0xe6] 1227@ CHECK: qadd8le r1, r2, r3 @ encoding: [0x93,0x1f,0x22,0xd6] 1228 1229 1230@------------------------------------------------------------------------------ 1231@ QDADD/QDSUB 1232@------------------------------------------------------------------------------ 1233 qdadd r6, r7, r8 1234 qdaddhi r6, r7, r8 1235 qdsub r6, r7, r8 1236 qdsubhi r6, r7, r8 1237 1238@ CHECK: qdadd r6, r7, r8 @ encoding: [0x57,0x60,0x48,0xe1] 1239@ CHECK: qdaddhi r6, r7, r8 @ encoding: [0x57,0x60,0x48,0x81] 1240@ CHECK: qdsub r6, r7, r8 @ encoding: [0x57,0x60,0x68,0xe1] 1241@ CHECK: qdsubhi r6, r7, r8 @ encoding: [0x57,0x60,0x68,0x81] 1242 1243 1244@------------------------------------------------------------------------------ 1245@ QSAX 1246@------------------------------------------------------------------------------ 1247 qsax r9, r12, r0 1248 qsaxeq r9, r12, r0 1249 1250@ CHECK: qsax r9, r12, r0 @ encoding: [0x50,0x9f,0x2c,0xe6] 1251@ CHECK: qsaxeq r9, r12, r0 @ encoding: [0x50,0x9f,0x2c,0x06] 1252 1253 1254@------------------------------------------------------------------------------ 1255@ QSUB/QSUB16/QSUB8 1256@------------------------------------------------------------------------------ 1257 qsub r1, r2, r3 1258 qsubne r1, r2, r3 1259 qsub16 r1, r2, r3 1260 qsub16gt r1, r2, r3 1261 qsub8 r1, r2, r3 1262 qsub8le r1, r2, r3 1263 1264@ CHECK: qsub r1, r2, r3 @ encoding: [0x52,0x10,0x23,0xe1] 1265@ CHECK: qsubne r1, r2, r3 @ encoding: [0x52,0x10,0x23,0x11] 1266@ CHECK: qsub16 r1, r2, r3 @ encoding: [0x73,0x1f,0x22,0xe6] 1267@ CHECK: qsub16gt r1, r2, r3 @ encoding: [0x73,0x1f,0x22,0xc6] 1268@ CHECK: qsub8 r1, r2, r3 @ encoding: [0xf3,0x1f,0x22,0xe6] 1269@ CHECK: qsub8le r1, r2, r3 @ encoding: [0xf3,0x1f,0x22,0xd6] 1270 1271 1272@------------------------------------------------------------------------------ 1273@ RBIT 1274@------------------------------------------------------------------------------ 1275 rbit r1, r2 1276 rbitne r1, r2 1277 1278@ CHECK: rbit r1, r2 @ encoding: [0x32,0x1f,0xff,0xe6] 1279@ CHECK: rbitne r1, r2 @ encoding: [0x32,0x1f,0xff,0x16] 1280 1281 1282@------------------------------------------------------------------------------ 1283@ REV/REV16/REVSH 1284@------------------------------------------------------------------------------ 1285 rev r1, r9 1286 revne r1, r5 1287 rev16 r8, r3 1288 rev16ne r12, r4 1289 revsh r4, r9 1290 revshne r9, r1 1291 1292@ CHECK: rev r1, r9 @ encoding: [0x39,0x1f,0xbf,0xe6] 1293@ CHECK: revne r1, r5 @ encoding: [0x35,0x1f,0xbf,0x16] 1294@ CHECK: rev16 r8, r3 @ encoding: [0xb3,0x8f,0xbf,0xe6] 1295@ CHECK: rev16ne r12, r4 @ encoding: [0xb4,0xcf,0xbf,0x16] 1296@ CHECK: revsh r4, r9 @ encoding: [0xb9,0x4f,0xff,0xe6] 1297@ CHECK: revshne r9, r1 @ encoding: [0xb1,0x9f,0xff,0x16] 1298 1299 1300@------------------------------------------------------------------------------ 1301@ RFE 1302@------------------------------------------------------------------------------ 1303 rfeda r2 1304 rfedb r3 1305 rfeia r5 1306 rfeib r6 1307 1308 rfeda r4! 1309 rfedb r7! 1310 rfeia r9! 1311 rfeib r8! 1312 1313 rfefa r2 1314 rfeea r3 1315 rfefd r5 1316 rfeed r6 1317 1318 rfefa r4! 1319 rfeea r7! 1320 rfefd r9! 1321 rfeed r8! 1322 1323 rfe r1 1324 rfe r1! 1325 1326@ CHECK: rfeda r2 @ encoding: [0x00,0x0a,0x12,0xf8] 1327@ CHECK: rfedb r3 @ encoding: [0x00,0x0a,0x13,0xf9] 1328@ CHECK: rfeia r5 @ encoding: [0x00,0x0a,0x95,0xf8] 1329@ CHECK: rfeib r6 @ encoding: [0x00,0x0a,0x96,0xf9] 1330 1331@ CHECK: rfeda r4! @ encoding: [0x00,0x0a,0x34,0xf8] 1332@ CHECK: rfedb r7! @ encoding: [0x00,0x0a,0x37,0xf9] 1333@ CHECK: rfeia r9! @ encoding: [0x00,0x0a,0xb9,0xf8] 1334@ CHECK: rfeib r8! @ encoding: [0x00,0x0a,0xb8,0xf9] 1335 1336@ CHECK: rfeda r2 @ encoding: [0x00,0x0a,0x12,0xf8] 1337@ CHECK: rfedb r3 @ encoding: [0x00,0x0a,0x13,0xf9] 1338@ CHECK: rfeia r5 @ encoding: [0x00,0x0a,0x95,0xf8] 1339@ CHECK: rfeib r6 @ encoding: [0x00,0x0a,0x96,0xf9] 1340 1341@ CHECK: rfeda r4! @ encoding: [0x00,0x0a,0x34,0xf8] 1342@ CHECK: rfedb r7! @ encoding: [0x00,0x0a,0x37,0xf9] 1343@ CHECK: rfeia r9! @ encoding: [0x00,0x0a,0xb9,0xf8] 1344@ CHECK: rfeib r8! @ encoding: [0x00,0x0a,0xb8,0xf9] 1345 1346@ CHECK: rfeia r1 @ encoding: [0x00,0x0a,0x91,0xf8] 1347@ CHECK: rfeia r1! @ encoding: [0x00,0x0a,0xb1,0xf8] 1348 1349 1350@------------------------------------------------------------------------------ 1351@ ROR 1352@------------------------------------------------------------------------------ 1353 ror r2, r4, #31 1354 ror r2, r4, #1 1355 ror r2, r4, #0 1356 ror r4, #1 1357 1358@ CHECK: ror r2, r4, #31 @ encoding: [0xe4,0x2f,0xa0,0xe1] 1359@ CHECK: ror r2, r4, #1 @ encoding: [0xe4,0x20,0xa0,0xe1] 1360@ CHECK: mov r2, r4 @ encoding: [0x04,0x20,0xa0,0xe1] 1361@ CHECK: ror r4, r4, #1 @ encoding: [0xe4,0x40,0xa0,0xe1] 1362 1363 1364@------------------------------------------------------------------------------ 1365@ RSB 1366@------------------------------------------------------------------------------ 1367 rsb r4, r5, #0xf000 1368 rsb r4, r5, r6 1369 rsb r4, r5, r6, lsl #5 1370 rsblo r4, r5, r6, lsr #5 1371 rsb r4, r5, r6, lsr #5 1372 rsb r4, r5, r6, asr #5 1373 rsb r4, r5, r6, ror #5 1374 rsb r6, r7, r8, lsl r9 1375 rsb r6, r7, r8, lsr r9 1376 rsb r6, r7, r8, asr r9 1377 rsble r6, r7, r8, ror r9 1378 rsb r4, r5, r6, rrx 1379 1380 @ destination register is optional 1381 rsb r5, #0xf000 1382 rsb r4, r5 1383 rsb r4, r5, lsl #5 1384 rsb r4, r5, lsr #5 1385 rsbne r4, r5, lsr #5 1386 rsb r4, r5, asr #5 1387 rsb r4, r5, ror #5 1388 rsbgt r6, r7, lsl r9 1389 rsb r6, r7, lsr r9 1390 rsb r6, r7, asr r9 1391 rsb r6, r7, ror r9 1392 rsb r4, r5, rrx 1393 1394@ CHECK: rsb r4, r5, #61440 @ encoding: [0x0f,0x4a,0x65,0xe2] 1395@ CHECK: rsb r4, r5, r6 @ encoding: [0x06,0x40,0x65,0xe0] 1396@ CHECK: rsb r4, r5, r6, lsl #5 @ encoding: [0x86,0x42,0x65,0xe0] 1397@ CHECK: rsblo r4, r5, r6, lsr #5 @ encoding: [0xa6,0x42,0x65,0x30] 1398@ CHECK: rsb r4, r5, r6, lsr #5 @ encoding: [0xa6,0x42,0x65,0xe0] 1399@ CHECK: rsb r4, r5, r6, asr #5 @ encoding: [0xc6,0x42,0x65,0xe0] 1400@ CHECK: rsb r4, r5, r6, ror #5 @ encoding: [0xe6,0x42,0x65,0xe0] 1401@ CHECK: rsb r6, r7, r8, lsl r9 @ encoding: [0x18,0x69,0x67,0xe0] 1402@ CHECK: rsb r6, r7, r8, lsr r9 @ encoding: [0x38,0x69,0x67,0xe0] 1403@ CHECK: rsb r6, r7, r8, asr r9 @ encoding: [0x58,0x69,0x67,0xe0] 1404@ CHECK: rsble r6, r7, r8, ror r9 @ encoding: [0x78,0x69,0x67,0xd0] 1405@ CHECK: rsb r4, r5, r6, rrx @ encoding: [0x66,0x40,0x65,0xe0] 1406 1407@ CHECK: rsb r5, r5, #61440 @ encoding: [0x0f,0x5a,0x65,0xe2] 1408@ CHECK: rsb r4, r4, r5 @ encoding: [0x05,0x40,0x64,0xe0] 1409@ CHECK: rsb r4, r4, r5, lsl #5 @ encoding: [0x85,0x42,0x64,0xe0] 1410@ CHECK: rsb r4, r4, r5, lsr #5 @ encoding: [0xa5,0x42,0x64,0xe0] 1411@ CHECK: rsbne r4, r4, r5, lsr #5 @ encoding: [0xa5,0x42,0x64,0x10] 1412@ CHECK: rsb r4, r4, r5, asr #5 @ encoding: [0xc5,0x42,0x64,0xe0] 1413@ CHECK: rsb r4, r4, r5, ror #5 @ encoding: [0xe5,0x42,0x64,0xe0] 1414@ CHECK: rsbgt r6, r6, r7, lsl r9 @ encoding: [0x17,0x69,0x66,0xc0] 1415@ CHECK: rsb r6, r6, r7, lsr r9 @ encoding: [0x37,0x69,0x66,0xe0] 1416@ CHECK: rsb r6, r6, r7, asr r9 @ encoding: [0x57,0x69,0x66,0xe0] 1417@ CHECK: rsb r6, r6, r7, ror r9 @ encoding: [0x77,0x69,0x66,0xe0] 1418@ CHECK: rsb r4, r4, r5, rrx @ encoding: [0x65,0x40,0x64,0xe0] 1419 1420@------------------------------------------------------------------------------ 1421@ RSC 1422@------------------------------------------------------------------------------ 1423 rsc r4, r5, #0xf000 1424 rsc r4, r5, r6 1425 rsc r4, r5, r6, lsl #5 1426 rsclo r4, r5, r6, lsr #5 1427 rsc r4, r5, r6, lsr #5 1428 rsc r4, r5, r6, asr #5 1429 rsc r4, r5, r6, ror #5 1430 rsc r6, r7, r8, lsl r9 1431 rsc r6, r7, r8, lsr r9 1432 rsc r6, r7, r8, asr r9 1433 rscle r6, r7, r8, ror r9 1434 rscs r1, r8, #4064 1435 1436 @ destination register is optional 1437 rsc r5, #0xf000 1438 rsc r4, r5 1439 rsc r4, r5, lsl #5 1440 rsc r4, r5, lsr #5 1441 rscne r4, r5, lsr #5 1442 rsc r4, r5, asr #5 1443 rsc r4, r5, ror #5 1444 rscgt r6, r7, lsl r9 1445 rsc r6, r7, lsr r9 1446 rsc r6, r7, asr r9 1447 rsc r6, r7, ror r9 1448 1449@ CHECK: rsc r4, r5, #61440 @ encoding: [0x0f,0x4a,0xe5,0xe2] 1450@ CHECK: rsc r4, r5, r6 @ encoding: [0x06,0x40,0xe5,0xe0] 1451@ CHECK: rsc r4, r5, r6, lsl #5 @ encoding: [0x86,0x42,0xe5,0xe0] 1452@ CHECK: rsclo r4, r5, r6, lsr #5 @ encoding: [0xa6,0x42,0xe5,0x30] 1453@ CHECK: rsc r4, r5, r6, lsr #5 @ encoding: [0xa6,0x42,0xe5,0xe0] 1454@ CHECK: rsc r4, r5, r6, asr #5 @ encoding: [0xc6,0x42,0xe5,0xe0] 1455@ CHECK: rsc r4, r5, r6, ror #5 @ encoding: [0xe6,0x42,0xe5,0xe0] 1456@ CHECK: rsc r6, r7, r8, lsl r9 @ encoding: [0x18,0x69,0xe7,0xe0] 1457@ CHECK: rsc r6, r7, r8, lsr r9 @ encoding: [0x38,0x69,0xe7,0xe0] 1458@ CHECK: rsc r6, r7, r8, asr r9 @ encoding: [0x58,0x69,0xe7,0xe0] 1459@ CHECK: rscle r6, r7, r8, ror r9 @ encoding: [0x78,0x69,0xe7,0xd0] 1460@ CHECK: rscs r1, r8, #4064 @ encoding: [0xfe,0x1e,0xf8,0xe2] 1461 1462@ CHECK: rsc r5, r5, #61440 @ encoding: [0x0f,0x5a,0xe5,0xe2] 1463@ CHECK: rsc r4, r4, r5 @ encoding: [0x05,0x40,0xe4,0xe0] 1464@ CHECK: rsc r4, r4, r5, lsl #5 @ encoding: [0x85,0x42,0xe4,0xe0] 1465@ CHECK: rsc r4, r4, r5, lsr #5 @ encoding: [0xa5,0x42,0xe4,0xe0] 1466@ CHECK: rscne r4, r4, r5, lsr #5 @ encoding: [0xa5,0x42,0xe4,0x10] 1467@ CHECK: rsc r4, r4, r5, asr #5 @ encoding: [0xc5,0x42,0xe4,0xe0] 1468@ CHECK: rsc r4, r4, r5, ror #5 @ encoding: [0xe5,0x42,0xe4,0xe0] 1469@ CHECK: rscgt r6, r6, r7, lsl r9 @ encoding: [0x17,0x69,0xe6,0xc0] 1470@ CHECK: rsc r6, r6, r7, lsr r9 @ encoding: [0x37,0x69,0xe6,0xe0] 1471@ CHECK: rsc r6, r6, r7, asr r9 @ encoding: [0x57,0x69,0xe6,0xe0] 1472@ CHECK: rsc r6, r6, r7, ror r9 @ encoding: [0x77,0x69,0xe6,0xe0] 1473 1474@------------------------------------------------------------------------------ 1475@ SADD16/SADD8 1476@------------------------------------------------------------------------------ 1477 sadd16 r1, r2, r3 1478 sadd16gt r1, r2, r3 1479 sadd8 r1, r2, r3 1480 sadd8le r1, r2, r3 1481 1482@ CHECK: sadd16 r1, r2, r3 @ encoding: [0x13,0x1f,0x12,0xe6] 1483@ CHECK: sadd16gt r1, r2, r3 @ encoding: [0x13,0x1f,0x12,0xc6] 1484@ CHECK: sadd8 r1, r2, r3 @ encoding: [0x93,0x1f,0x12,0xe6] 1485@ CHECK: sadd8le r1, r2, r3 @ encoding: [0x93,0x1f,0x12,0xd6] 1486 1487 1488@------------------------------------------------------------------------------ 1489@ SASX 1490@------------------------------------------------------------------------------ 1491 sasx r9, r12, r0 1492 sasxeq r9, r12, r0 1493 1494@ CHECK: sasx r9, r12, r0 @ encoding: [0x30,0x9f,0x1c,0xe6] 1495@ CHECK: sasxeq r9, r12, r0 @ encoding: [0x30,0x9f,0x1c,0x06] 1496 1497 1498@------------------------------------------------------------------------------ 1499@ SBC 1500@------------------------------------------------------------------------------ 1501 sbc r4, r5, #0xf000 1502 sbc r4, r5, r6 1503 sbc r4, r5, r6, lsl #5 1504 sbc r4, r5, r6, lsr #5 1505 sbc r4, r5, r6, lsr #5 1506 sbc r4, r5, r6, asr #5 1507 sbc r4, r5, r6, ror #5 1508 sbc r6, r7, r8, lsl r9 1509 sbc r6, r7, r8, lsr r9 1510 sbc r6, r7, r8, asr r9 1511 sbc r6, r7, r8, ror r9 1512 1513 @ destination register is optional 1514 sbc r5, #0xf000 1515 sbc r4, r5 1516 sbc r4, r5, lsl #5 1517 sbc r4, r5, lsr #5 1518 sbc r4, r5, lsr #5 1519 sbc r4, r5, asr #5 1520 sbc r4, r5, ror #5 1521 sbc r6, r7, lsl r9 1522 sbc r6, r7, lsr r9 1523 sbc r6, r7, asr r9 1524 sbc r6, r7, ror r9 1525 1526@ CHECK: sbc r4, r5, #61440 @ encoding: [0x0f,0x4a,0xc5,0xe2] 1527@ CHECK: sbc r4, r5, r6 @ encoding: [0x06,0x40,0xc5,0xe0] 1528@ CHECK: sbc r4, r5, r6, lsl #5 @ encoding: [0x86,0x42,0xc5,0xe0] 1529@ CHECK: sbc r4, r5, r6, lsr #5 @ encoding: [0xa6,0x42,0xc5,0xe0] 1530@ CHECK: sbc r4, r5, r6, lsr #5 @ encoding: [0xa6,0x42,0xc5,0xe0] 1531@ CHECK: sbc r4, r5, r6, asr #5 @ encoding: [0xc6,0x42,0xc5,0xe0] 1532@ CHECK: sbc r4, r5, r6, ror #5 @ encoding: [0xe6,0x42,0xc5,0xe0] 1533@ CHECK: sbc r6, r7, r8, lsl r9 @ encoding: [0x18,0x69,0xc7,0xe0] 1534@ CHECK: sbc r6, r7, r8, lsr r9 @ encoding: [0x38,0x69,0xc7,0xe0] 1535@ CHECK: sbc r6, r7, r8, asr r9 @ encoding: [0x58,0x69,0xc7,0xe0] 1536@ CHECK: sbc r6, r7, r8, ror r9 @ encoding: [0x78,0x69,0xc7,0xe0] 1537 1538@ CHECK: sbc r5, r5, #61440 @ encoding: [0x0f,0x5a,0xc5,0xe2] 1539@ CHECK: sbc r4, r4, r5 @ encoding: [0x05,0x40,0xc4,0xe0] 1540@ CHECK: sbc r4, r4, r5, lsl #5 @ encoding: [0x85,0x42,0xc4,0xe0] 1541@ CHECK: sbc r4, r4, r5, lsr #5 @ encoding: [0xa5,0x42,0xc4,0xe0] 1542@ CHECK: sbc r4, r4, r5, lsr #5 @ encoding: [0xa5,0x42,0xc4,0xe0] 1543@ CHECK: sbc r4, r4, r5, asr #5 @ encoding: [0xc5,0x42,0xc4,0xe0] 1544@ CHECK: sbc r4, r4, r5, ror #5 @ encoding: [0xe5,0x42,0xc4,0xe0] 1545@ CHECK: sbc r6, r6, r7, lsl r9 @ encoding: [0x17,0x69,0xc6,0xe0] 1546@ CHECK: sbc r6, r6, r7, lsr r9 @ encoding: [0x37,0x69,0xc6,0xe0] 1547@ CHECK: sbc r6, r6, r7, asr r9 @ encoding: [0x57,0x69,0xc6,0xe0] 1548@ CHECK: sbc r6, r6, r7, ror r9 @ encoding: [0x77,0x69,0xc6,0xe0] 1549 1550 1551@------------------------------------------------------------------------------ 1552@ SBFX 1553@------------------------------------------------------------------------------ 1554 sbfx r4, r5, #16, #1 1555 sbfxgt r4, r5, #16, #16 1556 1557@ CHECK: sbfx r4, r5, #16, #1 @ encoding: [0x55,0x48,0xa0,0xe7] 1558@ CHECK: sbfxgt r4, r5, #16, #16 @ encoding: [0x55,0x48,0xaf,0xc7] 1559 1560 1561@------------------------------------------------------------------------------ 1562@ SEL 1563@------------------------------------------------------------------------------ 1564 sel r9, r2, r1 1565 selne r9, r2, r1 1566 1567@ CHECK: sel r9, r2, r1 @ encoding: [0xb1,0x9f,0x82,0xe6] 1568@ CHECK: selne r9, r2, r1 @ encoding: [0xb1,0x9f,0x82,0x16] 1569 1570 1571@------------------------------------------------------------------------------ 1572@ SETEND 1573@------------------------------------------------------------------------------ 1574 setend be 1575 setend le 1576 1577@ CHECK: setend be @ encoding: [0x00,0x02,0x01,0xf1] 1578@ CHECK: setend le @ encoding: [0x00,0x00,0x01,0xf1] 1579 1580 1581@------------------------------------------------------------------------------ 1582@ SEV 1583@------------------------------------------------------------------------------ 1584 sev 1585 seveq 1586 1587@ CHECK: sev @ encoding: [0x04,0xf0,0x20,0xe3] 1588@ CHECK: seveq @ encoding: [0x04,0xf0,0x20,0x03] 1589 1590 1591@------------------------------------------------------------------------------ 1592@ SHADD16/SHADD8 1593@------------------------------------------------------------------------------ 1594 shadd16 r4, r8, r2 1595 shadd16gt r4, r8, r2 1596 shadd8 r4, r8, r2 1597 shadd8gt r4, r8, r2 1598 1599@ CHECK: shadd16 r4, r8, r2 @ encoding: [0x12,0x4f,0x38,0xe6] 1600@ CHECK: shadd16gt r4, r8, r2 @ encoding: [0x12,0x4f,0x38,0xc6] 1601@ CHECK: shadd8 r4, r8, r2 @ encoding: [0x92,0x4f,0x38,0xe6] 1602@ CHECK: shadd8gt r4, r8, r2 @ encoding: [0x92,0x4f,0x38,0xc6] 1603 1604 1605@------------------------------------------------------------------------------ 1606@ SHASX 1607@------------------------------------------------------------------------------ 1608 shasx r4, r8, r2 1609 shasxgt r4, r8, r2 1610 1611@ CHECK: shasx r4, r8, r2 @ encoding: [0x32,0x4f,0x38,0xe6] 1612@ CHECK: shasxgt r4, r8, r2 @ encoding: [0x32,0x4f,0x38,0xc6] 1613 1614 1615@------------------------------------------------------------------------------ 1616@ SHSUB16/SHSUB8 1617@------------------------------------------------------------------------------ 1618 shsub16 r4, r8, r2 1619 shsub16gt r4, r8, r2 1620 shsub8 r4, r8, r2 1621 shsub8gt r4, r8, r2 1622 1623@ CHECK: shsub16 r4, r8, r2 @ encoding: [0x72,0x4f,0x38,0xe6] 1624@ CHECK: shsub16gt r4, r8, r2 @ encoding: [0x72,0x4f,0x38,0xc6] 1625@ CHECK: shsub8 r4, r8, r2 @ encoding: [0xf2,0x4f,0x38,0xe6] 1626@ CHECK: shsub8gt r4, r8, r2 @ encoding: [0xf2,0x4f,0x38,0xc6] 1627 1628@------------------------------------------------------------------------------ 1629@ SMC 1630@------------------------------------------------------------------------------ 1631 smc #0xf 1632 smceq #0 1633 1634@ CHECK: smc #15 @ encoding: [0x7f,0x00,0x60,0xe1] 1635@ CHECK: smceq #0 @ encoding: [0x70,0x00,0x60,0x01] 1636 1637@------------------------------------------------------------------------------ 1638@ SMLABB/SMLABT/SMLATB/SMLATT 1639@------------------------------------------------------------------------------ 1640 smlabb r3, r1, r9, r0 1641 smlabt r5, r6, r4, r1 1642 smlatb r4, r2, r3, r2 1643 smlatt r8, r3, r8, r4 1644 smlabbge r3, r1, r9, r0 1645 smlabtle r5, r6, r4, r1 1646 smlatbne r4, r2, r3, r2 1647 smlatteq r8, r3, r8, r4 1648 1649@ CHECK: smlabb r3, r1, r9, r0 @ encoding: [0x81,0x09,0x03,0xe1] 1650@ CHECK: smlabt r5, r6, r4, r1 @ encoding: [0xc6,0x14,0x05,0xe1] 1651@ CHECK: smlatb r4, r2, r3, r2 @ encoding: [0xa2,0x23,0x04,0xe1] 1652@ CHECK: smlatt r8, r3, r8, r4 @ encoding: [0xe3,0x48,0x08,0xe1] 1653@ CHECK: smlabbge r3, r1, r9, r0 @ encoding: [0x81,0x09,0x03,0xa1] 1654@ CHECK: smlabtle r5, r6, r4, r1 @ encoding: [0xc6,0x14,0x05,0xd1] 1655@ CHECK: smlatbne r4, r2, r3, r2 @ encoding: [0xa2,0x23,0x04,0x11] 1656@ CHECK: smlatteq r8, r3, r8, r4 @ encoding: [0xe3,0x48,0x08,0x01] 1657 1658@------------------------------------------------------------------------------ 1659@ SMLAD/SMLADX 1660@------------------------------------------------------------------------------ 1661 smlad r2, r3, r5, r8 1662 smladx r2, r3, r5, r8 1663 smladeq r2, r3, r5, r8 1664 smladxhi r2, r3, r5, r8 1665 1666@ CHECK: smlad r2, r3, r5, r8 @ encoding: [0x13,0x85,0x02,0xe7] 1667@ CHECK: smladx r2, r3, r5, r8 @ encoding: [0x33,0x85,0x02,0xe7] 1668@ CHECK: smladeq r2, r3, r5, r8 @ encoding: [0x13,0x85,0x02,0x07] 1669@ CHECK: smladxhi r2, r3, r5, r8 @ encoding: [0x33,0x85,0x02,0x87] 1670 1671 1672@------------------------------------------------------------------------------ 1673@ SMLAL 1674@------------------------------------------------------------------------------ 1675 smlal r2, r3, r5, r8 1676 smlals r2, r3, r5, r8 1677 smlaleq r2, r3, r5, r8 1678 smlalshi r2, r3, r5, r8 1679 1680@ CHECK: smlal r2, r3, r5, r8 @ encoding: [0x95,0x28,0xe3,0xe0] 1681@ CHECK: smlals r2, r3, r5, r8 @ encoding: [0x95,0x28,0xf3,0xe0] 1682@ CHECK: smlaleq r2, r3, r5, r8 @ encoding: [0x95,0x28,0xe3,0x00] 1683@ CHECK: smlalshi r2, r3, r5, r8 @ encoding: [0x95,0x28,0xf3,0x80] 1684 1685 1686@------------------------------------------------------------------------------ 1687@ SMLALBB/SMLALBT/SMLALTB/SMLALTT 1688@------------------------------------------------------------------------------ 1689 smlalbb r3, r1, r9, r0 1690 smlalbt r5, r6, r4, r1 1691 smlaltb r4, r2, r3, r2 1692 smlaltt r8, r3, r8, r4 1693 smlalbbge r3, r1, r9, r0 1694 smlalbtle r5, r6, r4, r1 1695 smlaltbne r4, r2, r3, r2 1696 smlaltteq r8, r3, r8, r4 1697 1698@ CHECK: smlalbb r3, r1, r9, r0 @ encoding: [0x89,0x30,0x41,0xe1] 1699@ CHECK: smlalbt r5, r6, r4, r1 @ encoding: [0xc4,0x51,0x46,0xe1] 1700@ CHECK: smlaltb r4, r2, r3, r2 @ encoding: [0xa3,0x42,0x42,0xe1] 1701@ CHECK: smlaltt r8, r3, r8, r4 @ encoding: [0xe8,0x84,0x43,0xe1] 1702@ CHECK: smlalbbge r3, r1, r9, r0 @ encoding: [0x89,0x30,0x41,0xa1] 1703@ CHECK: smlalbtle r5, r6, r4, r1 @ encoding: [0xc4,0x51,0x46,0xd1] 1704@ CHECK: smlaltbne r4, r2, r3, r2 @ encoding: [0xa3,0x42,0x42,0x11] 1705@ CHECK: smlaltteq r8, r3, r8, r4 @ encoding: [0xe8,0x84,0x43,0x01] 1706 1707 1708@------------------------------------------------------------------------------ 1709@ SMLALD/SMLALDX 1710@------------------------------------------------------------------------------ 1711 smlald r2, r3, r5, r8 1712 smlaldx r2, r3, r5, r8 1713 smlaldeq r2, r3, r5, r8 1714 smlaldxhi r2, r3, r5, r8 1715 1716@ CHECK: smlald r2, r3, r5, r8 @ encoding: [0x15,0x28,0x43,0xe7] 1717@ CHECK: smlaldx r2, r3, r5, r8 @ encoding: [0x35,0x28,0x43,0xe7] 1718@ CHECK: smlaldeq r2, r3, r5, r8 @ encoding: [0x15,0x28,0x43,0x07] 1719@ CHECK: smlaldxhi r2, r3, r5, r8 @ encoding: [0x35,0x28,0x43,0x87] 1720 1721 1722@------------------------------------------------------------------------------ 1723@ SMLAWB/SMLAWT 1724@------------------------------------------------------------------------------ 1725 smlawb r2, r3, r10, r8 1726 smlawt r8, r3, r5, r9 1727 smlawbeq r2, r7, r5, r8 1728 smlawthi r1, r3, r0, r8 1729 1730@ CHECK: smlawb r2, r3, r10, r8 @ encoding: [0x83,0x8a,0x22,0xe1] 1731@ CHECK: smlawt r8, r3, r5, r9 @ encoding: [0xc3,0x95,0x28,0xe1] 1732@ CHECK: smlawbeq r2, r7, r5, r8 @ encoding: [0x87,0x85,0x22,0x01] 1733@ CHECK: smlawthi r1, r3, r0, r8 @ encoding: [0xc3,0x80,0x21,0x81] 1734 1735 1736@------------------------------------------------------------------------------ 1737@ SMLSD/SMLSDX 1738@------------------------------------------------------------------------------ 1739 smlsd r2, r3, r5, r8 1740 smlsdx r2, r3, r5, r8 1741 smlsdeq r2, r3, r5, r8 1742 smlsdxhi r2, r3, r5, r8 1743 1744@ CHECK: smlsd r2, r3, r5, r8 @ encoding: [0x53,0x85,0x02,0xe7] 1745@ CHECK: smlsdx r2, r3, r5, r8 @ encoding: [0x73,0x85,0x02,0xe7] 1746@ CHECK: smlsdeq r2, r3, r5, r8 @ encoding: [0x53,0x85,0x02,0x07] 1747@ CHECK: smlsdxhi r2, r3, r5, r8 @ encoding: [0x73,0x85,0x02,0x87] 1748 1749 1750@------------------------------------------------------------------------------ 1751@ SMLSLD/SMLSLDX 1752@------------------------------------------------------------------------------ 1753 smlsld r2, r9, r5, r1 1754 smlsldx r4, r11, r2, r8 1755 smlsldeq r8, r2, r5, r6 1756 smlsldxhi r1, r0, r3, r8 1757 1758@ CHECK: smlsld r2, r9, r5, r1 @ encoding: [0x55,0x21,0x49,0xe7] 1759@ CHECK: smlsldx r4, r11, r2, r8 @ encoding: [0x72,0x48,0x4b,0xe7] 1760@ CHECK: smlsldeq r8, r2, r5, r6 @ encoding: [0x55,0x86,0x42,0x07] 1761@ CHECK: smlsldxhi r1, r0, r3, r8 @ encoding: [0x73,0x18,0x40,0x87] 1762 1763 1764@------------------------------------------------------------------------------ 1765@ SMMLA/SMMLAR 1766@------------------------------------------------------------------------------ 1767 smmla r1, r2, r3, r4 1768 smmlar r4, r3, r2, r1 1769 smmlalo r1, r2, r3, r4 1770 smmlarcs r4, r3, r2, r1 1771 1772@ CHECK: smmla r1, r2, r3, r4 @ encoding: [0x12,0x43,0x51,0xe7] 1773@ CHECK: smmlar r4, r3, r2, r1 @ encoding: [0x33,0x12,0x54,0xe7] 1774@ CHECK: smmlalo r1, r2, r3, r4 @ encoding: [0x12,0x43,0x51,0x37] 1775@ CHECK: smmlarhs r4, r3, r2, r1 @ encoding: [0x33,0x12,0x54,0x27] 1776 1777 1778@------------------------------------------------------------------------------ 1779@ SMMLS/SMMLSR 1780@------------------------------------------------------------------------------ 1781 smmls r1, r2, r3, r4 1782 smmlsr r4, r3, r2, r1 1783 smmlslo r1, r2, r3, r4 1784 smmlsrcs r4, r3, r2, r1 1785 1786@ CHECK: smmls r1, r2, r3, r4 @ encoding: [0xd2,0x43,0x51,0xe7] 1787@ CHECK: smmlsr r4, r3, r2, r1 @ encoding: [0xf3,0x12,0x54,0xe7] 1788@ CHECK: smmlslo r1, r2, r3, r4 @ encoding: [0xd2,0x43,0x51,0x37] 1789@ CHECK: smmlsrhs r4, r3, r2, r1 @ encoding: [0xf3,0x12,0x54,0x27] 1790 1791 1792@------------------------------------------------------------------------------ 1793@ SMMUL/SMMULR 1794@------------------------------------------------------------------------------ 1795 smmul r2, r3, r4 1796 smmulr r3, r2, r1 1797 smmulcc r2, r3, r4 1798 smmulrhs r3, r2, r1 1799 1800@ CHECK: smmul r2, r3, r4 @ encoding: [0x13,0xf4,0x52,0xe7] 1801@ CHECK: smmulr r3, r2, r1 @ encoding: [0x32,0xf1,0x53,0xe7] 1802@ CHECK: smmullo r2, r3, r4 @ encoding: [0x13,0xf4,0x52,0x37] 1803@ CHECK: smmulrhs r3, r2, r1 @ encoding: [0x32,0xf1,0x53,0x27] 1804 1805 1806@------------------------------------------------------------------------------ 1807@ SMUAD/SMUADX 1808@------------------------------------------------------------------------------ 1809 smuad r2, r3, r4 1810 smuadx r3, r2, r1 1811 smuadlt r2, r3, r4 1812 smuadxge r3, r2, r1 1813 1814@ CHECK: smuad r2, r3, r4 @ encoding: [0x13,0xf4,0x02,0xe7] 1815@ CHECK: smuadx r3, r2, r1 @ encoding: [0x32,0xf1,0x03,0xe7] 1816@ CHECK: smuadlt r2, r3, r4 @ encoding: [0x13,0xf4,0x02,0xb7] 1817@ CHECK: smuadxge r3, r2, r1 @ encoding: [0x32,0xf1,0x03,0xa7] 1818 1819 1820@------------------------------------------------------------------------------ 1821@ SMULBB/SMULBT/SMULTB/SMULTT 1822@------------------------------------------------------------------------------ 1823 smulbb r3, r9, r0 1824 smulbt r5, r4, r1 1825 smultb r4, r2, r2 1826 smultt r8, r3, r4 1827 smulbbge r1, r9, r0 1828 smulbtle r5, r6, r4 1829 smultbne r2, r3, r2 1830 smultteq r8, r3, r4 1831 1832@ CHECK: smulbb r3, r9, r0 @ encoding: [0x89,0x00,0x63,0xe1] 1833@ CHECK: smulbt r5, r4, r1 @ encoding: [0xc4,0x01,0x65,0xe1] 1834@ CHECK: smultb r4, r2, r2 @ encoding: [0xa2,0x02,0x64,0xe1] 1835@ CHECK: smultt r8, r3, r4 @ encoding: [0xe3,0x04,0x68,0xe1] 1836@ CHECK: smulbbge r1, r9, r0 @ encoding: [0x89,0x00,0x61,0xa1] 1837@ CHECK: smulbtle r5, r6, r4 @ encoding: [0xc6,0x04,0x65,0xd1] 1838@ CHECK: smultbne r2, r3, r2 @ encoding: [0xa3,0x02,0x62,0x11] 1839@ CHECK: smultteq r8, r3, r4 @ encoding: [0xe3,0x04,0x68,0x01] 1840 1841 1842@------------------------------------------------------------------------------ 1843@ SMULL 1844@------------------------------------------------------------------------------ 1845 smull r3, r9, r0, r1 1846 smulls r3, r9, r0, r2 1847 smulleq r8, r3, r4, r5 1848 smullseq r8, r3, r4, r3 1849 1850@ CHECK: smull r3, r9, r0, r1 @ encoding: [0x90,0x31,0xc9,0xe0] 1851@ CHECK: smulls r3, r9, r0, r2 @ encoding: [0x90,0x32,0xd9,0xe0] 1852@ CHECK: smulleq r8, r3, r4, r5 @ encoding: [0x94,0x85,0xc3,0x00] 1853@ CHECK: smullseq r8, r3, r4, r3 @ encoding: [0x94,0x83,0xd3,0x00] 1854 1855 1856@------------------------------------------------------------------------------ 1857@ SMULWB/SMULWT 1858@------------------------------------------------------------------------------ 1859 smulwb r3, r9, r0 1860 smulwt r3, r9, r2 1861 1862@ CHECK: smulwb r3, r9, r0 @ encoding: [0xa9,0x00,0x23,0xe1] 1863@ CHECK: smulwt r3, r9, r2 @ encoding: [0xe9,0x02,0x23,0xe1] 1864 1865 1866@------------------------------------------------------------------------------ 1867@ SMUSD/SMUSDX 1868@------------------------------------------------------------------------------ 1869 smusd r3, r0, r1 1870 smusdx r3, r9, r2 1871 smusdeq r8, r3, r2 1872 smusdxne r7, r4, r3 1873 1874@ CHECK: smusd r3, r0, r1 @ encoding: [0x50,0xf1,0x03,0xe7] 1875@ CHECK: smusdx r3, r9, r2 @ encoding: [0x79,0xf2,0x03,0xe7] 1876@ CHECK: smusdeq r8, r3, r2 @ encoding: [0x53,0xf2,0x08,0x07] 1877@ CHECK: smusdxne r7, r4, r3 @ encoding: [0x74,0xf3,0x07,0x17] 1878 1879 1880@------------------------------------------------------------------------------ 1881@ SRS 1882@------------------------------------------------------------------------------ 1883 srsda sp, #5 1884 srsdb sp, #1 1885 srsia sp, #0 1886 srsib sp, #15 1887 1888 srsda sp!, #31 1889 srsdb sp!, #19 1890 srsia sp!, #2 1891 srsib sp!, #14 1892 1893 srsfa sp, #11 1894 srsea sp, #10 1895 srsfd sp, #9 1896 srsed sp, #5 1897 1898 srsfa sp!, #5 1899 srsea sp!, #5 1900 srsfd sp!, #5 1901 srsed sp!, #5 1902 1903 srs sp, #5 1904 srs sp!, #5 1905 1906@ CHECK: srsda sp, #5 @ encoding: [0x05,0x05,0x4d,0xf8] 1907@ CHECK: srsdb sp, #1 @ encoding: [0x01,0x05,0x4d,0xf9] 1908@ CHECK: srsia sp, #0 @ encoding: [0x00,0x05,0xcd,0xf8] 1909@ CHECK: srsib sp, #15 @ encoding: [0x0f,0x05,0xcd,0xf9] 1910 1911@ CHECK: srsda sp!, #31 @ encoding: [0x1f,0x05,0x6d,0xf8] 1912@ CHECK: srsdb sp!, #19 @ encoding: [0x13,0x05,0x6d,0xf9] 1913@ CHECK: srsia sp!, #2 @ encoding: [0x02,0x05,0xed,0xf8] 1914@ CHECK: srsib sp!, #14 @ encoding: [0x0e,0x05,0xed,0xf9] 1915 1916@ CHECK: srsda sp, #11 @ encoding: [0x0b,0x05,0x4d,0xf8] 1917@ CHECK: srsdb sp, #10 @ encoding: [0x0a,0x05,0x4d,0xf9] 1918@ CHECK: srsia sp, #9 @ encoding: [0x09,0x05,0xcd,0xf8] 1919@ CHECK: srsib sp, #5 @ encoding: [0x05,0x05,0xcd,0xf9] 1920 1921@ CHECK: srsda sp!, #5 @ encoding: [0x05,0x05,0x6d,0xf8] 1922@ CHECK: srsdb sp!, #5 @ encoding: [0x05,0x05,0x6d,0xf9] 1923@ CHECK: srsia sp!, #5 @ encoding: [0x05,0x05,0xed,0xf8] 1924@ CHECK: srsib sp!, #5 @ encoding: [0x05,0x05,0xed,0xf9] 1925 1926@ CHECK: srsia sp, #5 @ encoding: [0x05,0x05,0xcd,0xf8] 1927@ CHECK: srsia sp!, #5 @ encoding: [0x05,0x05,0xed,0xf8] 1928 1929 1930@------------------------------------------------------------------------------ 1931@ SSAT 1932@------------------------------------------------------------------------------ 1933 ssat r8, #1, r10 1934 ssat r8, #1, r10, lsl #0 1935 ssat r8, #1, r10, lsl #31 1936 ssat r8, #1, r10, asr #32 1937 ssat r8, #1, r10, asr #1 1938 1939@ CHECK: ssat r8, #1, r10 @ encoding: [0x1a,0x80,0xa0,0xe6] 1940@ CHECK: ssat r8, #1, r10 @ encoding: [0x1a,0x80,0xa0,0xe6] 1941@ CHECK: ssat r8, #1, r10, lsl #31 @ encoding: [0x9a,0x8f,0xa0,0xe6] 1942@ CHECK: ssat r8, #1, r10, asr #32 @ encoding: [0x5a,0x80,0xa0,0xe6] 1943@ CHECK: ssat r8, #1, r10, asr #1 @ encoding: [0xda,0x80,0xa0,0xe6] 1944 1945 1946@------------------------------------------------------------------------------ 1947@ SSAT16 1948@------------------------------------------------------------------------------ 1949 ssat16 r2, #1, r7 1950 ssat16 r3, #16, r5 1951 1952@ CHECK: ssat16 r2, #1, r7 @ encoding: [0x37,0x2f,0xa0,0xe6] 1953@ CHECK: ssat16 r3, #16, r5 @ encoding: [0x35,0x3f,0xaf,0xe6] 1954 1955 1956@------------------------------------------------------------------------------ 1957@ SSAX 1958@------------------------------------------------------------------------------ 1959 ssax r2, r3, r4 1960 ssaxlt r2, r3, r4 1961 1962@ CHECK: ssax r2, r3, r4 @ encoding: [0x54,0x2f,0x13,0xe6] 1963@ CHECK: ssaxlt r2, r3, r4 @ encoding: [0x54,0x2f,0x13,0xb6] 1964 1965@------------------------------------------------------------------------------ 1966@ SSUB16/SSUB8 1967@------------------------------------------------------------------------------ 1968 ssub16 r1, r0, r6 1969 ssub16ne r5, r3, r2 1970 ssub8 r9, r2, r4 1971 ssub8eq r5, r1, r2 1972 1973@ CHECK: ssub16 r1, r0, r6 @ encoding: [0x76,0x1f,0x10,0xe6] 1974@ CHECK: ssub16ne r5, r3, r2 @ encoding: [0x72,0x5f,0x13,0x16] 1975@ CHECK: ssub8 r9, r2, r4 @ encoding: [0xf4,0x9f,0x12,0xe6] 1976@ CHECK: ssub8eq r5, r1, r2 @ encoding: [0xf2,0x5f,0x11,0x06] 1977 1978@------------------------------------------------------------------------------ 1979@ STC{L}/STC2{L} 1980@------------------------------------------------------------------------------ 1981 stc2 p0, c8, [r1, #4] 1982 stc2 p1, c7, [r2] 1983 stc2 p2, c6, [r3, #-224] 1984 stc2 p3, c5, [r4, #-120]! 1985 stc2 p4, c4, [r5], #16 1986 stc2 p5, c3, [r6], #-72 1987 stc2l p6, c2, [r7, #4] 1988 stc2l p7, c1, [r8] 1989 stc2l p8, c0, [r9, #-224] 1990 stc2l p9, c1, [r10, #-120]! 1991 stc2l p10, c2, [r11], #16 1992 stc2l p11, c3, [r12], #-72 1993 1994 stc p12, c4, [r0, #4] 1995 stc p13, c5, [r1] 1996 stc p14, c6, [r2, #-224] 1997 stc p15, c7, [r3, #-120]! 1998 stc p5, c8, [r4], #16 1999 stc p4, c9, [r5], #-72 2000 stcl p3, c10, [r6, #4] 2001 stcl p2, c11, [r7] 2002 stcl p1, c12, [r8, #-224] 2003 stcl p0, c13, [r9, #-120]! 2004 stcl p6, c14, [r10], #16 2005 stcl p7, c15, [r11], #-72 2006 2007 stclo p12, c4, [r0, #4] 2008 stchi p13, c5, [r1] 2009 stccs p14, c6, [r2, #-224] 2010 stccc p15, c7, [r3, #-120]! 2011 stceq p5, c8, [r4], #16 2012 stcgt p4, c9, [r5], #-72 2013 stcllt p3, c10, [r6, #4] 2014 stclge p2, c11, [r7] 2015 stclle p1, c12, [r8, #-224] 2016 stclne p0, c13, [r9, #-120]! 2017 stcleq p6, c14, [r10], #16 2018 stclhi p7, c15, [r11], #-72 2019 2020 stc2 p2, c8, [r1], { 25 } 2021 2022@ CHECK: stc2 p0, c8, [r1, #4] @ encoding: [0x01,0x80,0x81,0xfd] 2023@ CHECK: stc2 p1, c7, [r2] @ encoding: [0x00,0x71,0x82,0xfd] 2024@ CHECK: stc2 p2, c6, [r3, #-224] @ encoding: [0x38,0x62,0x03,0xfd] 2025@ CHECK: stc2 p3, c5, [r4, #-120]! @ encoding: [0x1e,0x53,0x24,0xfd] 2026@ CHECK: stc2 p4, c4, [r5], #16 @ encoding: [0x04,0x44,0xa5,0xfc] 2027@ CHECK: stc2 p5, c3, [r6], #-72 @ encoding: [0x12,0x35,0x26,0xfc] 2028@ CHECK: stc2l p6, c2, [r7, #4] @ encoding: [0x01,0x26,0xc7,0xfd] 2029@ CHECK: stc2l p7, c1, [r8] @ encoding: [0x00,0x17,0xc8,0xfd] 2030@ CHECK: stc2l p8, c0, [r9, #-224] @ encoding: [0x38,0x08,0x49,0xfd] 2031@ CHECK: stc2l p9, c1, [r10, #-120]! @ encoding: [0x1e,0x19,0x6a,0xfd] 2032@ CHECK: stc2l p10, c2, [r11], #16 @ encoding: [0x04,0x2a,0xeb,0xfc] 2033@ CHECK: stc2l p11, c3, [r12], #-72 @ encoding: [0x12,0x3b,0x6c,0xfc] 2034 2035@ CHECK: stc p12, c4, [r0, #4] @ encoding: [0x01,0x4c,0x80,0xed] 2036@ CHECK: stc p13, c5, [r1] @ encoding: [0x00,0x5d,0x81,0xed] 2037@ CHECK: stc p14, c6, [r2, #-224] @ encoding: [0x38,0x6e,0x02,0xed] 2038@ CHECK: stc p15, c7, [r3, #-120]! @ encoding: [0x1e,0x7f,0x23,0xed] 2039@ CHECK: stc p5, c8, [r4], #16 @ encoding: [0x04,0x85,0xa4,0xec] 2040@ CHECK: stc p4, c9, [r5], #-72 @ encoding: [0x12,0x94,0x25,0xec] 2041@ CHECK: stcl p3, c10, [r6, #4] @ encoding: [0x01,0xa3,0xc6,0xed] 2042@ CHECK: stcl p2, c11, [r7] @ encoding: [0x00,0xb2,0xc7,0xed] 2043@ CHECK: stcl p1, c12, [r8, #-224] @ encoding: [0x38,0xc1,0x48,0xed] 2044@ CHECK: stcl p0, c13, [r9, #-120]! @ encoding: [0x1e,0xd0,0x69,0xed] 2045@ CHECK: stcl p6, c14, [r10], #16 @ encoding: [0x04,0xe6,0xea,0xec] 2046@ CHECK: stcl p7, c15, [r11], #-72 @ encoding: [0x12,0xf7,0x6b,0xec] 2047 2048@ CHECK: stclo p12, c4, [r0, #4] @ encoding: [0x01,0x4c,0x80,0x3d] 2049@ CHECK: stchi p13, c5, [r1] @ encoding: [0x00,0x5d,0x81,0x8d] 2050@ CHECK: stchs p14, c6, [r2, #-224] @ encoding: [0x38,0x6e,0x02,0x2d] 2051@ CHECK: stclo p15, c7, [r3, #-120]! @ encoding: [0x1e,0x7f,0x23,0x3d] 2052@ CHECK: stceq p5, c8, [r4], #16 @ encoding: [0x04,0x85,0xa4,0x0c] 2053@ CHECK: stcgt p4, c9, [r5], #-72 @ encoding: [0x12,0x94,0x25,0xcc] 2054@ CHECK: stcllt p3, c10, [r6, #4] @ encoding: [0x01,0xa3,0xc6,0xbd] 2055@ CHECK: stclge p2, c11, [r7] @ encoding: [0x00,0xb2,0xc7,0xad] 2056@ CHECK: stclle p1, c12, [r8, #-224] @ encoding: [0x38,0xc1,0x48,0xdd] 2057@ CHECK: stclne p0, c13, [r9, #-120]! @ encoding: [0x1e,0xd0,0x69,0x1d] 2058@ CHECK: stcleq p6, c14, [r10], #16 @ encoding: [0x04,0xe6,0xea,0x0c] 2059@ CHECK: stclhi p7, c15, [r11], #-72 @ encoding: [0x12,0xf7,0x6b,0x8c] 2060 2061@ CHECK: stc2 p2, c8, [r1], {25} @ encoding: [0x19,0x82,0x81,0xfc] 2062 2063 2064@------------------------------------------------------------------------------ 2065@ STM* 2066@------------------------------------------------------------------------------ 2067 stm r2, {r1,r3-r6,sp} 2068 stmia r3, {r1,r3-r6,lr} 2069 stmib r4, {r1,r3-r6,sp} 2070 stmda r5, {r1,r3-r6,sp} 2071 stmdb r6, {r1,r3-r6,r8} 2072 stmfd sp, {r1,r3-r6,sp} 2073 2074 @ with update 2075 stm r8!, {r1,r3-r6,sp} 2076 stmib r9!, {r1,r3-r6,sp} 2077 stmda sp!, {r1,r3-r6} 2078 stmdb r0!, {r1,r5,r7,sp} 2079 2080@ CHECK: stm r2, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x82,0xe8] 2081@ CHECK: stm r3, {lr, r1, r3, r4, r5, r6} @ encoding: [0x7a,0x40,0x83,0xe8] 2082@ CHECK: stmib r4, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x84,0xe9] 2083@ CHECK: stmda r5, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x05,0xe8] 2084@ CHECK: stmdb r6, {r1, r3, r4, r5, r6, r8} @ encoding: [0x7a,0x01,0x06,0xe9] 2085@ CHECK: stmdb sp, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0x0d,0xe9] 2086 2087@ CHECK: stm r8!, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0xa8,0xe8] 2088@ CHECK: stmib r9!, {r1, r3, r4, r5, r6, sp} @ encoding: [0x7a,0x20,0xa9,0xe9] 2089@ CHECK: stmda sp!, {r1, r3, r4, r5, r6} @ encoding: [0x7a,0x00,0x2d,0xe8] 2090@ CHECK: stmdb r0!, {r1, r5, r7, sp} @ encoding: [0xa2,0x20,0x20,0xe9] 2091 2092 2093@------------------------------------------------------------------------------ 2094@ STREX/STREXB/STREXH/STREXD 2095@------------------------------------------------------------------------------ 2096 strexb r1, r3, [r4] 2097 strexh r4, r2, [r5] 2098 strex r2, r1, [r7] 2099 strexd r6, r2, r3, [r8] 2100 2101@ CHECK: strexb r1, r3, [r4] @ encoding: [0x93,0x1f,0xc4,0xe1] 2102@ CHECK: strexh r4, r2, [r5] @ encoding: [0x92,0x4f,0xe5,0xe1] 2103@ CHECK: strex r2, r1, [r7] @ encoding: [0x91,0x2f,0x87,0xe1] 2104@ CHECK: strexd r6, r2, r3, [r8] @ encoding: [0x92,0x6f,0xa8,0xe1] 2105 2106@------------------------------------------------------------------------------ 2107@ STR 2108@------------------------------------------------------------------------------ 2109 strpl r3, [r10, #-0]! 2110 strpl r3, [r10, #0]! 2111 2112@ CHECK: strpl r3, [r10, #-0]! @ encoding: [0x00,0x30,0x2a,0x55] 2113@ CHECK: strpl r3, [r10]! @ encoding: [0x00,0x30,0xaa,0x55] 2114 2115@------------------------------------------------------------------------------ 2116@ SUB 2117@------------------------------------------------------------------------------ 2118 sub r4, r5, #0xf000 2119 sub r4, r5, r6 2120 sub r4, r5, r6, lsl #5 2121 sub r4, r5, r6, lsr #5 2122 sub r4, r5, r6, lsr #5 2123 sub r4, r5, r6, asr #5 2124 sub r4, r5, r6, ror #5 2125 sub r6, r7, r8, lsl r9 2126 sub r6, r7, r8, lsr r9 2127 sub r6, r7, r8, asr r9 2128 sub r6, r7, r8, ror r9 2129 2130 @ destination register is optional 2131 sub r5, #0xf000 2132 sub r4, r5 2133 sub r4, r5, lsl #5 2134 sub r4, r5, lsr #5 2135 sub r4, r5, lsr #5 2136 sub r4, r5, asr #5 2137 sub r4, r5, ror #5 2138 sub r6, r7, lsl r9 2139 sub r6, r7, lsr r9 2140 sub r6, r7, asr r9 2141 sub r6, r7, ror r9 2142 2143@ CHECK: sub r4, r5, #61440 @ encoding: [0x0f,0x4a,0x45,0xe2] 2144@ CHECK: sub r4, r5, r6 @ encoding: [0x06,0x40,0x45,0xe0] 2145@ CHECK: sub r4, r5, r6, lsl #5 @ encoding: [0x86,0x42,0x45,0xe0] 2146@ CHECK: sub r4, r5, r6, lsr #5 @ encoding: [0xa6,0x42,0x45,0xe0] 2147@ CHECK: sub r4, r5, r6, lsr #5 @ encoding: [0xa6,0x42,0x45,0xe0] 2148@ CHECK: sub r4, r5, r6, asr #5 @ encoding: [0xc6,0x42,0x45,0xe0] 2149@ CHECK: sub r4, r5, r6, ror #5 @ encoding: [0xe6,0x42,0x45,0xe0] 2150@ CHECK: sub r6, r7, r8, lsl r9 @ encoding: [0x18,0x69,0x47,0xe0] 2151@ CHECK: sub r6, r7, r8, lsr r9 @ encoding: [0x38,0x69,0x47,0xe0] 2152@ CHECK: sub r6, r7, r8, asr r9 @ encoding: [0x58,0x69,0x47,0xe0] 2153@ CHECK: sub r6, r7, r8, ror r9 @ encoding: [0x78,0x69,0x47,0xe0] 2154 2155 2156@ CHECK: sub r5, r5, #61440 @ encoding: [0x0f,0x5a,0x45,0xe2] 2157@ CHECK: sub r4, r4, r5 @ encoding: [0x05,0x40,0x44,0xe0] 2158@ CHECK: sub r4, r4, r5, lsl #5 @ encoding: [0x85,0x42,0x44,0xe0] 2159@ CHECK: sub r4, r4, r5, lsr #5 @ encoding: [0xa5,0x42,0x44,0xe0] 2160@ CHECK: sub r4, r4, r5, lsr #5 @ encoding: [0xa5,0x42,0x44,0xe0] 2161@ CHECK: sub r4, r4, r5, asr #5 @ encoding: [0xc5,0x42,0x44,0xe0] 2162@ CHECK: sub r4, r4, r5, ror #5 @ encoding: [0xe5,0x42,0x44,0xe0] 2163@ CHECK: sub r6, r6, r7, lsl r9 @ encoding: [0x17,0x69,0x46,0xe0] 2164@ CHECK: sub r6, r6, r7, lsr r9 @ encoding: [0x37,0x69,0x46,0xe0] 2165@ CHECK: sub r6, r6, r7, asr r9 @ encoding: [0x57,0x69,0x46,0xe0] 2166@ CHECK: sub r6, r6, r7, ror r9 @ encoding: [0x77,0x69,0x46,0xe0] 2167 2168 2169@------------------------------------------------------------------------------ 2170@ SVC 2171@------------------------------------------------------------------------------ 2172 svc #16 2173 svc #0 2174 svc #0xffffff 2175 2176@ CHECK: svc #16 @ encoding: [0x10,0x00,0x00,0xef] 2177@ CHECK: svc #0 @ encoding: [0x00,0x00,0x00,0xef] 2178@ CHECK: svc #16777215 @ encoding: [0xff,0xff,0xff,0xef] 2179 2180 2181@------------------------------------------------------------------------------ 2182@ SWP/SWPB 2183@------------------------------------------------------------------------------ 2184 swp r1, r2, [r3] 2185 swp r4, r4, [r6] 2186 swpb r5, r1, [r9] 2187 2188@ CHECK: swp r1, r2, [r3] @ encoding: [0x92,0x10,0x03,0xe1] 2189@ CHECK: swp r4, r4, [r6] @ encoding: [0x94,0x40,0x06,0xe1] 2190@ CHECK: swpb r5, r1, [r9] @ encoding: [0x91,0x50,0x49,0xe1] 2191 2192 2193@------------------------------------------------------------------------------ 2194@ SXTAB 2195@------------------------------------------------------------------------------ 2196 sxtab r2, r3, r4 2197 sxtab r4, r5, r6, ror #0 2198 sxtablt r6, r2, r9, ror #8 2199 sxtab r5, r1, r4, ror #16 2200 sxtab r7, r8, r3, ror #24 2201 2202@ CHECK: sxtab r2, r3, r4 @ encoding: [0x74,0x20,0xa3,0xe6] 2203@ CHECK: sxtab r4, r5, r6 @ encoding: [0x76,0x40,0xa5,0xe6] 2204@ CHECK: sxtablt r6, r2, r9, ror #8 @ encoding: [0x79,0x64,0xa2,0xb6] 2205@ CHECK: sxtab r5, r1, r4, ror #16 @ encoding: [0x74,0x58,0xa1,0xe6] 2206@ CHECK: sxtab r7, r8, r3, ror #24 @ encoding: [0x73,0x7c,0xa8,0xe6] 2207 2208 2209@------------------------------------------------------------------------------ 2210@ SXTAB16 2211@------------------------------------------------------------------------------ 2212 sxtab16ge r0, r1, r4 2213 sxtab16 r6, r2, r7, ror #0 2214 sxtab16 r3, r5, r8, ror #8 2215 sxtab16 r3, r2, r1, ror #16 2216 sxtab16eq r1, r2, r3, ror #24 2217 2218@ CHECK: sxtab16ge r0, r1, r4 @ encoding: [0x74,0x00,0x81,0xa6] 2219@ CHECK: sxtab16 r6, r2, r7 @ encoding: [0x77,0x60,0x82,0xe6] 2220@ CHECK: sxtab16 r3, r5, r8, ror #8 @ encoding: [0x78,0x34,0x85,0xe6] 2221@ CHECK: sxtab16 r3, r2, r1, ror #16 @ encoding: [0x71,0x38,0x82,0xe6] 2222@ CHECK: sxtab16eq r1, r2, r3, ror #24 @ encoding: [0x73,0x1c,0x82,0x06] 2223 2224@------------------------------------------------------------------------------ 2225@ SXTAH 2226@------------------------------------------------------------------------------ 2227 sxtah r1, r3, r9 2228 sxtahhi r6, r1, r6, ror #0 2229 sxtah r3, r8, r3, ror #8 2230 sxtahlo r2, r2, r4, ror #16 2231 sxtah r9, r3, r3, ror #24 2232 2233@ CHECK: sxtah r1, r3, r9 @ encoding: [0x79,0x10,0xb3,0xe6] 2234@ CHECK: sxtahhi r6, r1, r6 @ encoding: [0x76,0x60,0xb1,0x86] 2235@ CHECK: sxtah r3, r8, r3, ror #8 @ encoding: [0x73,0x34,0xb8,0xe6] 2236@ CHECK: sxtahlo r2, r2, r4, ror #16 @ encoding: [0x74,0x28,0xb2,0x36] 2237@ CHECK: sxtah r9, r3, r3, ror #24 @ encoding: [0x73,0x9c,0xb3,0xe6] 2238 2239@------------------------------------------------------------------------------ 2240@ SXTB 2241@------------------------------------------------------------------------------ 2242 sxtbge r2, r4 2243 sxtb r5, r6, ror #0 2244 sxtb r6, r9, ror #8 2245 sxtbcc r5, r1, ror #16 2246 sxtb r8, r3, ror #24 2247 2248@ CHECK: sxtbge r2, r4 @ encoding: [0x74,0x20,0xaf,0xa6] 2249@ CHECK: sxtb r5, r6 @ encoding: [0x76,0x50,0xaf,0xe6] 2250@ CHECK: sxtb r6, r9, ror #8 @ encoding: [0x79,0x64,0xaf,0xe6] 2251@ CHECK: sxtblo r5, r1, ror #16 @ encoding: [0x71,0x58,0xaf,0x36] 2252@ CHECK: sxtb r8, r3, ror #24 @ encoding: [0x73,0x8c,0xaf,0xe6] 2253 2254 2255@------------------------------------------------------------------------------ 2256@ SXTB16 2257@------------------------------------------------------------------------------ 2258 sxtb16 r1, r4 2259 sxtb16 r6, r7, ror #0 2260 sxtb16cs r3, r5, ror #8 2261 sxtb16 r3, r1, ror #16 2262 sxtb16ge r2, r3, ror #24 2263 2264@ CHECK: sxtb16 r1, r4 @ encoding: [0x74,0x10,0x8f,0xe6] 2265@ CHECK: sxtb16 r6, r7 @ encoding: [0x77,0x60,0x8f,0xe6] 2266@ CHECK: sxtb16hs r3, r5, ror #8 @ encoding: [0x75,0x34,0x8f,0x26] 2267@ CHECK: sxtb16 r3, r1, ror #16 @ encoding: [0x71,0x38,0x8f,0xe6] 2268@ CHECK: sxtb16ge r2, r3, ror #24 @ encoding: [0x73,0x2c,0x8f,0xa6] 2269 2270 2271@------------------------------------------------------------------------------ 2272@ SXTH 2273@------------------------------------------------------------------------------ 2274 sxthne r3, r9 2275 sxth r1, r6, ror #0 2276 sxth r3, r8, ror #8 2277 sxthle r2, r2, ror #16 2278 sxth r9, r3, ror #24 2279 2280@ CHECK: sxthne r3, r9 @ encoding: [0x79,0x30,0xbf,0x16] 2281@ CHECK: sxth r1, r6 @ encoding: [0x76,0x10,0xbf,0xe6] 2282@ CHECK: sxth r3, r8, ror #8 @ encoding: [0x78,0x34,0xbf,0xe6] 2283@ CHECK: sxthle r2, r2, ror #16 @ encoding: [0x72,0x28,0xbf,0xd6] 2284@ CHECK: sxth r9, r3, ror #24 @ encoding: [0x73,0x9c,0xbf,0xe6] 2285 2286 2287@------------------------------------------------------------------------------ 2288@ TEQ 2289@------------------------------------------------------------------------------ 2290 teq r5, #0xf000 2291 teq r4, r5 2292 teq r4, r5, lsl #5 2293 teq r4, r5, lsr #5 2294 teq r4, r5, lsr #5 2295 teq r4, r5, asr #5 2296 teq r4, r5, ror #5 2297 teq r6, r7, lsl r9 2298 teq r6, r7, lsr r9 2299 teq r6, r7, asr r9 2300 teq r6, r7, ror r9 2301 2302@ CHECK: teq r5, #61440 @ encoding: [0x0f,0x0a,0x35,0xe3] 2303@ CHECK: teq r4, r5 @ encoding: [0x05,0x00,0x34,0xe1] 2304@ CHECK: teq r4, r5, lsl #5 @ encoding: [0x85,0x02,0x34,0xe1] 2305@ CHECK: teq r4, r5, lsr #5 @ encoding: [0xa5,0x02,0x34,0xe1] 2306@ CHECK: teq r4, r5, lsr #5 @ encoding: [0xa5,0x02,0x34,0xe1] 2307@ CHECK: teq r4, r5, asr #5 @ encoding: [0xc5,0x02,0x34,0xe1] 2308@ CHECK: teq r4, r5, ror #5 @ encoding: [0xe5,0x02,0x34,0xe1] 2309@ CHECK: teq r6, r7, lsl r9 @ encoding: [0x17,0x09,0x36,0xe1] 2310@ CHECK: teq r6, r7, lsr r9 @ encoding: [0x37,0x09,0x36,0xe1] 2311@ CHECK: teq r6, r7, asr r9 @ encoding: [0x57,0x09,0x36,0xe1] 2312@ CHECK: teq r6, r7, ror r9 @ encoding: [0x77,0x09,0x36,0xe1] 2313 2314 2315@------------------------------------------------------------------------------ 2316@ TST 2317@------------------------------------------------------------------------------ 2318 tst r5, #0xf000 2319 tst r4, r5 2320 tst r4, r5, lsl #5 2321 tst r4, r5, lsr #5 2322 tst r4, r5, lsr #5 2323 tst r4, r5, asr #5 2324 tst r4, r5, ror #5 2325 tst r6, r7, lsl r9 2326 tst r6, r7, lsr r9 2327 tst r6, r7, asr r9 2328 tst r6, r7, ror r9 2329 2330@ CHECK: tst r5, #61440 @ encoding: [0x0f,0x0a,0x15,0xe3] 2331@ CHECK: tst r4, r5 @ encoding: [0x05,0x00,0x14,0xe1] 2332@ CHECK: tst r4, r5, lsl #5 @ encoding: [0x85,0x02,0x14,0xe1] 2333@ CHECK: tst r4, r5, lsr #5 @ encoding: [0xa5,0x02,0x14,0xe1] 2334@ CHECK: tst r4, r5, lsr #5 @ encoding: [0xa5,0x02,0x14,0xe1] 2335@ CHECK: tst r4, r5, asr #5 @ encoding: [0xc5,0x02,0x14,0xe1] 2336@ CHECK: tst r4, r5, ror #5 @ encoding: [0xe5,0x02,0x14,0xe1] 2337@ CHECK: tst r6, r7, lsl r9 @ encoding: [0x17,0x09,0x16,0xe1] 2338@ CHECK: tst r6, r7, lsr r9 @ encoding: [0x37,0x09,0x16,0xe1] 2339@ CHECK: tst r6, r7, asr r9 @ encoding: [0x57,0x09,0x16,0xe1] 2340@ CHECK: tst r6, r7, ror r9 @ encoding: [0x77,0x09,0x16,0xe1] 2341 2342 2343@------------------------------------------------------------------------------ 2344@ UADD16/UADD8 2345@------------------------------------------------------------------------------ 2346 uadd16 r1, r2, r3 2347 uadd16gt r1, r2, r3 2348 uadd8 r1, r2, r3 2349 uadd8le r1, r2, r3 2350 2351@ CHECK: uadd16 r1, r2, r3 @ encoding: [0x13,0x1f,0x52,0xe6] 2352@ CHECK: uadd16gt r1, r2, r3 @ encoding: [0x13,0x1f,0x52,0xc6] 2353@ CHECK: uadd8 r1, r2, r3 @ encoding: [0x93,0x1f,0x52,0xe6] 2354@ CHECK: uadd8le r1, r2, r3 @ encoding: [0x93,0x1f,0x52,0xd6] 2355 2356 2357@------------------------------------------------------------------------------ 2358@ UASX 2359@------------------------------------------------------------------------------ 2360 uasx r9, r12, r0 2361 uasxeq r9, r12, r0 2362 2363@ CHECK: uasx r9, r12, r0 @ encoding: [0x30,0x9f,0x5c,0xe6] 2364@ CHECK: uasxeq r9, r12, r0 @ encoding: [0x30,0x9f,0x5c,0x06] 2365 2366 2367@------------------------------------------------------------------------------ 2368@ UBFX 2369@------------------------------------------------------------------------------ 2370 ubfx r4, r5, #16, #1 2371 ubfxgt r4, r5, #16, #16 2372 2373@ CHECK: ubfx r4, r5, #16, #1 @ encoding: [0x55,0x48,0xe0,0xe7] 2374@ CHECK: ubfxgt r4, r5, #16, #16 @ encoding: [0x55,0x48,0xef,0xc7] 2375 2376 2377@------------------------------------------------------------------------------ 2378@ UHADD16/UHADD8 2379@------------------------------------------------------------------------------ 2380 uhadd16 r4, r8, r2 2381 uhadd16gt r4, r8, r2 2382 uhadd8 r4, r8, r2 2383 uhadd8gt r4, r8, r2 2384 2385@ CHECK: uhadd16 r4, r8, r2 @ encoding: [0x12,0x4f,0x78,0xe6] 2386@ CHECK: uhadd16gt r4, r8, r2 @ encoding: [0x12,0x4f,0x78,0xc6] 2387@ CHECK: uhadd8 r4, r8, r2 @ encoding: [0x92,0x4f,0x78,0xe6] 2388@ CHECK: uhadd8gt r4, r8, r2 @ encoding: [0x92,0x4f,0x78,0xc6] 2389 2390 2391@------------------------------------------------------------------------------ 2392@ UHASX 2393@------------------------------------------------------------------------------ 2394 uhasx r4, r8, r2 2395 uhasxgt r4, r8, r2 2396 2397@ CHECK: uhasx r4, r8, r2 @ encoding: [0x32,0x4f,0x78,0xe6] 2398@ CHECK: uhasxgt r4, r8, r2 @ encoding: [0x32,0x4f,0x78,0xc6] 2399 2400 2401@------------------------------------------------------------------------------ 2402@ UHSUB16/UHSUB8 2403@------------------------------------------------------------------------------ 2404 uhsub16 r4, r8, r2 2405 uhsub16gt r4, r8, r2 2406 uhsub8 r4, r8, r2 2407 uhsub8gt r4, r8, r2 2408 2409@ CHECK: uhsub16 r4, r8, r2 @ encoding: [0x72,0x4f,0x78,0xe6] 2410@ CHECK: uhsub16gt r4, r8, r2 @ encoding: [0x72,0x4f,0x78,0xc6] 2411@ CHECK: uhsub8 r4, r8, r2 @ encoding: [0xf2,0x4f,0x78,0xe6] 2412@ CHECK: uhsub8gt r4, r8, r2 @ encoding: [0xf2,0x4f,0x78,0xc6] 2413 2414 2415@------------------------------------------------------------------------------ 2416@ UMAAL 2417@------------------------------------------------------------------------------ 2418 umaal r3, r4, r5, r6 2419 umaallt r3, r4, r5, r6 2420 2421@ CHECK: umaal r3, r4, r5, r6 @ encoding: [0x95,0x36,0x44,0xe0] 2422@ CHECK: umaallt r3, r4, r5, r6 @ encoding: [0x95,0x36,0x44,0xb0] 2423 2424 2425@------------------------------------------------------------------------------ 2426@ UMLAL 2427@------------------------------------------------------------------------------ 2428 umlal r2, r4, r6, r8 2429 umlalgt r6, r1, r2, r6 2430 umlals r2, r9, r2, r3 2431 umlalseq r3, r5, r1, r2 2432 2433@ CHECK: umlal r2, r4, r6, r8 @ encoding: [0x96,0x28,0xa4,0xe0] 2434@ CHECK: umlalgt r6, r1, r2, r6 @ encoding: [0x92,0x66,0xa1,0xc0] 2435@ CHECK: umlals r2, r9, r2, r3 @ encoding: [0x92,0x23,0xb9,0xe0] 2436@ CHECK: umlalseq r3, r5, r1, r2 @ encoding: [0x91,0x32,0xb5,0x00] 2437 2438 2439@------------------------------------------------------------------------------ 2440@ UMULL 2441@------------------------------------------------------------------------------ 2442 umull r2, r4, r6, r8 2443 umullgt r6, r1, r2, r6 2444 umulls r2, r9, r2, r3 2445 umullseq r3, r5, r1, r2 2446 2447@ CHECK: umull r2, r4, r6, r8 @ encoding: [0x96,0x28,0x84,0xe0] 2448@ CHECK: umullgt r6, r1, r2, r6 @ encoding: [0x92,0x66,0x81,0xc0] 2449@ CHECK: umulls r2, r9, r2, r3 @ encoding: [0x92,0x23,0x99,0xe0] 2450@ CHECK: umullseq r3, r5, r1, r2 @ encoding: [0x91,0x32,0x95,0x00] 2451 2452 2453@------------------------------------------------------------------------------ 2454@ UQADD16/UQADD8 2455@------------------------------------------------------------------------------ 2456 uqadd16 r1, r2, r3 2457 uqadd16gt r4, r7, r9 2458 uqadd8 r3, r4, r8 2459 uqadd8le r8, r1, r2 2460 2461 2462@ CHECK: uqadd16 r1, r2, r3 @ encoding: [0x13,0x1f,0x62,0xe6] 2463@ CHECK: uqadd16gt r4, r7, r9 @ encoding: [0x19,0x4f,0x67,0xc6] 2464@ CHECK: uqadd8 r3, r4, r8 @ encoding: [0x98,0x3f,0x64,0xe6] 2465@ CHECK: uqadd8le r8, r1, r2 @ encoding: [0x92,0x8f,0x61,0xd6] 2466 2467 2468@------------------------------------------------------------------------------ 2469@ UQASX 2470@------------------------------------------------------------------------------ 2471 uqasx r2, r4, r1 2472 uqasxhi r5, r2, r9 2473 2474@ CHECK: uqasx r2, r4, r1 @ encoding: [0x31,0x2f,0x64,0xe6] 2475@ CHECK: uqasxhi r5, r2, r9 @ encoding: [0x39,0x5f,0x62,0x86] 2476 2477 2478@------------------------------------------------------------------------------ 2479@ UQSAX 2480@------------------------------------------------------------------------------ 2481 uqsax r1, r3, r7 2482 uqsaxal r3, r6, r2 2483 2484@ CHECK: uqsax r1, r3, r7 @ encoding: [0x57,0x1f,0x63,0xe6] 2485@ CHECK: uqsax r3, r6, r2 @ encoding: [0x52,0x3f,0x66,0xe6] 2486 2487 2488@------------------------------------------------------------------------------ 2489@ UQSUB16/UQSUB8 2490@------------------------------------------------------------------------------ 2491 uqsub16 r1, r5, r3 2492 uqsub16gt r3, r2, r5 2493 uqsub8 r2, r1, r4 2494 uqsub8le r4, r6, r9 2495 2496@ CHECK: uqsub16 r1, r5, r3 @ encoding: [0x73,0x1f,0x65,0xe6] 2497@ CHECK: uqsub16gt r3, r2, r5 @ encoding: [0x75,0x3f,0x62,0xc6] 2498@ CHECK: uqsub8 r2, r1, r4 @ encoding: [0xf4,0x2f,0x61,0xe6] 2499@ CHECK: uqsub8le r4, r6, r9 @ encoding: [0xf9,0x4f,0x66,0xd6] 2500 2501 2502@------------------------------------------------------------------------------ 2503@ USADA8/USAD8 2504@------------------------------------------------------------------------------ 2505 usad8 r2, r1, r4 2506 usad8le r4, r6, r9 2507 usada8 r1, r5, r3, r7 2508 usada8gt r3, r2, r5, r1 2509 2510@ CHECK: usad8 r2, r1, r4 @ encoding: [0x11,0xf4,0x82,0xe7] 2511@ CHECK: usad8le r4, r6, r9 @ encoding: [0x16,0xf9,0x84,0xd7] 2512@ CHECK: usada8 r1, r5, r3, r7 @ encoding: [0x15,0x73,0x81,0xe7] 2513@ CHECK: usada8gt r3, r2, r5, r1 @ encoding: [0x12,0x15,0x83,0xc7] 2514 2515 2516@------------------------------------------------------------------------------ 2517@ USAT 2518@------------------------------------------------------------------------------ 2519 usat r8, #1, r10 2520 usat r8, #4, r10, lsl #0 2521 usat r8, #5, r10, lsl #31 2522 usat r8, #31, r10, asr #32 2523 usat r8, #16, r10, asr #1 2524 2525@ CHECK: usat r8, #1, r10 @ encoding: [0x1a,0x80,0xe1,0xe6] 2526@ CHECK: usat r8, #4, r10 @ encoding: [0x1a,0x80,0xe4,0xe6] 2527@ CHECK: usat r8, #5, r10, lsl #31 @ encoding: [0x9a,0x8f,0xe5,0xe6] 2528@ CHECK: usat r8, #31, r10, asr #32 @ encoding: [0x5a,0x80,0xff,0xe6] 2529@ CHECK: usat r8, #16, r10, asr #1 @ encoding: [0xda,0x80,0xf0,0xe6] 2530 2531 2532@------------------------------------------------------------------------------ 2533@ USAT16 2534@------------------------------------------------------------------------------ 2535 usat16 r2, #2, r7 2536 usat16 r3, #15, r5 2537 2538@ CHECK: usat16 r2, #2, r7 @ encoding: [0x37,0x2f,0xe2,0xe6] 2539@ CHECK: usat16 r3, #15, r5 @ encoding: [0x35,0x3f,0xef,0xe6] 2540 2541 2542@------------------------------------------------------------------------------ 2543@ USAX 2544@------------------------------------------------------------------------------ 2545 usax r2, r3, r4 2546 usaxne r2, r3, r4 2547 2548@ CHECK: usax r2, r3, r4 @ encoding: [0x54,0x2f,0x53,0xe6] 2549@ CHECK: usaxne r2, r3, r4 @ encoding: [0x54,0x2f,0x53,0x16] 2550 2551@------------------------------------------------------------------------------ 2552@ USUB16/USUB8 2553@------------------------------------------------------------------------------ 2554 usub16 r4, r2, r7 2555 usub16hi r1, r1, r3 2556 usub8 r1, r8, r5 2557 usub8le r9, r2, r3 2558 2559@ CHECK: usub16 r4, r2, r7 @ encoding: [0x77,0x4f,0x52,0xe6] 2560@ CHECK: usub16hi r1, r1, r3 @ encoding: [0x73,0x1f,0x51,0x86] 2561@ CHECK: usub8 r1, r8, r5 @ encoding: [0xf5,0x1f,0x58,0xe6] 2562@ CHECK: usub8le r9, r2, r3 @ encoding: [0xf3,0x9f,0x52,0xd6] 2563 2564 2565@------------------------------------------------------------------------------ 2566@ UXTAB 2567@------------------------------------------------------------------------------ 2568 uxtab r2, r3, r4 2569 uxtab r4, r5, r6, ror #0 2570 uxtablt r6, r2, r9, ror #8 2571 uxtab r5, r1, r4, ror #16 2572 uxtab r7, r8, r3, ror #24 2573 2574@ CHECK: uxtab r2, r3, r4 @ encoding: [0x74,0x20,0xe3,0xe6] 2575@ CHECK: uxtab r4, r5, r6 @ encoding: [0x76,0x40,0xe5,0xe6] 2576@ CHECK: uxtablt r6, r2, r9, ror #8 @ encoding: [0x79,0x64,0xe2,0xb6] 2577@ CHECK: uxtab r5, r1, r4, ror #16 @ encoding: [0x74,0x58,0xe1,0xe6] 2578@ CHECK: uxtab r7, r8, r3, ror #24 @ encoding: [0x73,0x7c,0xe8,0xe6] 2579 2580 2581@------------------------------------------------------------------------------ 2582@ UXTAB16 2583@------------------------------------------------------------------------------ 2584 uxtab16ge r0, r1, r4 2585 uxtab16 r6, r2, r7, ror #0 2586 uxtab16 r3, r5, r8, ror #8 2587 uxtab16 r3, r2, r1, ror #16 2588 uxtab16eq r1, r2, r3, ror #24 2589 2590@ CHECK: uxtab16ge r0, r1, r4 @ encoding: [0x74,0x00,0xc1,0xa6] 2591@ CHECK: uxtab16 r6, r2, r7 @ encoding: [0x77,0x60,0xc2,0xe6] 2592@ CHECK: uxtab16 r3, r5, r8, ror #8 @ encoding: [0x78,0x34,0xc5,0xe6] 2593@ CHECK: uxtab16 r3, r2, r1, ror #16 @ encoding: [0x71,0x38,0xc2,0xe6] 2594@ CHECK: uxtab16eq r1, r2, r3, ror #24 @ encoding: [0x73,0x1c,0xc2,0x06] 2595 2596 2597@------------------------------------------------------------------------------ 2598@ UXTAH 2599@------------------------------------------------------------------------------ 2600 uxtah r1, r3, r9 2601 uxtahhi r6, r1, r6, ror #0 2602 uxtah r3, r8, r3, ror #8 2603 uxtahlo r2, r2, r4, ror #16 2604 uxtah r9, r3, r3, ror #24 2605 2606@ CHECK: uxtah r1, r3, r9 @ encoding: [0x79,0x10,0xf3,0xe6] 2607@ CHECK: uxtahhi r6, r1, r6 @ encoding: [0x76,0x60,0xf1,0x86] 2608@ CHECK: uxtah r3, r8, r3, ror #8 @ encoding: [0x73,0x34,0xf8,0xe6] 2609@ CHECK: uxtahlo r2, r2, r4, ror #16 @ encoding: [0x74,0x28,0xf2,0x36] 2610@ CHECK: uxtah r9, r3, r3, ror #24 @ encoding: [0x73,0x9c,0xf3,0xe6] 2611 2612@------------------------------------------------------------------------------ 2613@ UXTB 2614@------------------------------------------------------------------------------ 2615 uxtbge r2, r4 2616 uxtb r5, r6, ror #0 2617 uxtb r6, r9, ror #8 2618 uxtbcc r5, r1, ror #16 2619 uxtb r8, r3, ror #24 2620 2621@ CHECK: uxtbge r2, r4 @ encoding: [0x74,0x20,0xef,0xa6] 2622@ CHECK: uxtb r5, r6 @ encoding: [0x76,0x50,0xef,0xe6] 2623@ CHECK: uxtb r6, r9, ror #8 @ encoding: [0x79,0x64,0xef,0xe6] 2624@ CHECK: uxtblo r5, r1, ror #16 @ encoding: [0x71,0x58,0xef,0x36] 2625@ CHECK: uxtb r8, r3, ror #24 @ encoding: [0x73,0x8c,0xef,0xe6] 2626 2627 2628@------------------------------------------------------------------------------ 2629@ UXTB16 2630@------------------------------------------------------------------------------ 2631 uxtb16 r1, r4 2632 uxtb16 r6, r7, ror #0 2633 uxtb16cs r3, r5, ror #8 2634 uxtb16 r3, r1, ror #16 2635 uxtb16ge r2, r3, ror #24 2636 2637@ CHECK: uxtb16 r1, r4 @ encoding: [0x74,0x10,0xcf,0xe6] 2638@ CHECK: uxtb16 r6, r7 @ encoding: [0x77,0x60,0xcf,0xe6] 2639@ CHECK: uxtb16hs r3, r5, ror #8 @ encoding: [0x75,0x34,0xcf,0x26] 2640@ CHECK: uxtb16 r3, r1, ror #16 @ encoding: [0x71,0x38,0xcf,0xe6] 2641@ CHECK: uxtb16ge r2, r3, ror #24 @ encoding: [0x73,0x2c,0xcf,0xa6] 2642 2643 2644@------------------------------------------------------------------------------ 2645@ UXTH 2646@------------------------------------------------------------------------------ 2647 uxthne r3, r9 2648 uxth r1, r6, ror #0 2649 uxth r3, r8, ror #8 2650 uxthle r2, r2, ror #16 2651 uxth r9, r3, ror #24 2652 2653@ CHECK: uxthne r3, r9 @ encoding: [0x79,0x30,0xff,0x16] 2654@ CHECK: uxth r1, r6 @ encoding: [0x76,0x10,0xff,0xe6] 2655@ CHECK: uxth r3, r8, ror #8 @ encoding: [0x78,0x34,0xff,0xe6] 2656@ CHECK: uxthle r2, r2, ror #16 @ encoding: [0x72,0x28,0xff,0xd6] 2657@ CHECK: uxth r9, r3, ror #24 @ encoding: [0x73,0x9c,0xff,0xe6] 2658 2659 2660@------------------------------------------------------------------------------ 2661@ WFE/WFI/YIELD 2662@------------------------------------------------------------------------------ 2663 wfe 2664 wfehi 2665 wfi 2666 wfilt 2667 yield 2668 yieldne 2669 2670@ CHECK: wfe @ encoding: [0x02,0xf0,0x20,0xe3] 2671@ CHECK: wfehi @ encoding: [0x02,0xf0,0x20,0x83] 2672@ CHECK: wfi @ encoding: [0x03,0xf0,0x20,0xe3] 2673@ CHECK: wfilt @ encoding: [0x03,0xf0,0x20,0xb3] 2674@ CHECK: yield @ encoding: [0x01,0xf0,0x20,0xe3] 2675@ CHECK: yieldne @ encoding: [0x01,0xf0,0x20,0x13] 2676