1 @RUN: llvm-mc -triple thumbv7-unknown-unknown -mcpu=cortex-a8 -show-encoding < %s | FileCheck %s 2 3 .code 16 4 5 vabd.s8 d16, d16, d17 6 vabd.s16 d16, d16, d17 7 vabd.s32 d16, d16, d17 8 vabd.u8 d16, d16, d17 9 vabd.u16 d16, d16, d17 10 vabd.u32 d16, d16, d17 11 vabd.f32 d16, d16, d17 12 vabd.s8 q8, q8, q9 13 vabd.s16 q8, q8, q9 14 vabd.s32 q8, q8, q9 15 vabd.u8 q8, q8, q9 16 vabd.u16 q8, q8, q9 17 vabd.u32 q8, q8, q9 18 vabd.f32 q8, q8, q9 19 20 @ CHECK: vabd.s8 d16, d16, d17 @ encoding: [0x40,0xef,0xa1,0x07] 21 @ CHECK: vabd.s16 d16, d16, d17 @ encoding: [0x50,0xef,0xa1,0x07] 22 @ CHECK: vabd.s32 d16, d16, d17 @ encoding: [0x60,0xef,0xa1,0x07] 23 @ CHECK: vabd.u8 d16, d16, d17 @ encoding: [0x40,0xff,0xa1,0x07] 24 @ CHECK: vabd.u16 d16, d16, d17 @ encoding: [0x50,0xff,0xa1,0x07] 25 @ CHECK: vabd.u32 d16, d16, d17 @ encoding: [0x60,0xff,0xa1,0x07] 26 @ CHECK: vabd.f32 d16, d16, d17 @ encoding: [0x60,0xff,0xa1,0x0d] 27 @ CHECK: vabd.s8 q8, q8, q9 @ encoding: [0x40,0xef,0xe2,0x07] 28 @ CHECK: vabd.s16 q8, q8, q9 @ encoding: [0x50,0xef,0xe2,0x07] 29 @ CHECK: vabd.s32 q8, q8, q9 @ encoding: [0x60,0xef,0xe2,0x07] 30 @ CHECK: vabd.u8 q8, q8, q9 @ encoding: [0x40,0xff,0xe2,0x07] 31 @ CHECK: vabd.u16 q8, q8, q9 @ encoding: [0x50,0xff,0xe2,0x07] 32 @ CHECK: vabd.u32 q8, q8, q9 @ encoding: [0x60,0xff,0xe2,0x07] 33 @ CHECK: vabd.f32 q8, q8, q9 @ encoding: [0x60,0xff,0xe2,0x0d] 34 35 36 vabdl.s8 q8, d16, d17 37 vabdl.s16 q8, d16, d17 38 vabdl.s32 q8, d16, d17 39 vabdl.u8 q8, d16, d17 40 vabdl.u16 q8, d16, d17 41 vabdl.u32 q8, d16, d17 42 43 @ CHECK: vabdl.s8 q8, d16, d17 @ encoding: [0xc0,0xef,0xa1,0x07] 44 @ CHECK: vabdl.s16 q8, d16, d17 @ encoding: [0xd0,0xef,0xa1,0x07] 45 @ CHECK: vabdl.s32 q8, d16, d17 @ encoding: [0xe0,0xef,0xa1,0x07] 46 @ CHECK: vabdl.u8 q8, d16, d17 @ encoding: [0xc0,0xff,0xa1,0x07] 47 @ CHECK: vabdl.u16 q8, d16, d17 @ encoding: [0xd0,0xff,0xa1,0x07] 48 @ CHECK: vabdl.u32 q8, d16, d17 @ encoding: [0xe0,0xff,0xa1,0x07] 49 50 51 vaba.s8 d16, d18, d17 52 vaba.s16 d16, d18, d17 53 vaba.s32 d16, d18, d17 54 vaba.u8 d16, d18, d17 55 vaba.u16 d16, d18, d17 56 vaba.u32 d16, d18, d17 57 vaba.s8 q9, q8, q10 58 vaba.s16 q9, q8, q10 59 vaba.s32 q9, q8, q10 60 vaba.u8 q9, q8, q10 61 vaba.u16 q9, q8, q10 62 vaba.u32 q9, q8, q10 63 64 @ CHECK: vaba.s8 d16, d18, d17 @ encoding: [0x42,0xef,0xb1,0x07] 65 @ CHECK: vaba.s16 d16, d18, d17 @ encoding: [0x52,0xef,0xb1,0x07] 66 @ CHECK: vaba.s32 d16, d18, d17 @ encoding: [0x62,0xef,0xb1,0x07] 67 @ CHECK: vaba.u8 d16, d18, d17 @ encoding: [0x42,0xff,0xb1,0x07] 68 @ CHECK: vaba.u16 d16, d18, d17 @ encoding: [0x52,0xff,0xb1,0x07] 69 @ CHECK: vaba.u32 d16, d18, d17 @ encoding: [0x62,0xff,0xb1,0x07] 70 @ CHECK: vaba.s8 q9, q8, q10 @ encoding: [0x40,0xef,0xf4,0x27] 71 @ CHECK: vaba.s16 q9, q8, q10 @ encoding: [0x50,0xef,0xf4,0x27] 72 @ CHECK: vaba.s32 q9, q8, q10 @ encoding: [0x60,0xef,0xf4,0x27] 73 @ CHECK: vaba.u8 q9, q8, q10 @ encoding: [0x40,0xff,0xf4,0x27] 74 @ CHECK: vaba.u16 q9, q8, q10 @ encoding: [0x50,0xff,0xf4,0x27] 75 @ CHECK: vaba.u32 q9, q8, q10 @ encoding: [0x60,0xff,0xf4,0x27] 76 77 78 vabal.s8 q8, d19, d18 79 vabal.s16 q8, d19, d18 80 vabal.s32 q8, d19, d18 81 vabal.u8 q8, d19, d18 82 vabal.u16 q8, d19, d18 83 vabal.u32 q8, d19, d18 84 85 @ CHECK: vabal.s8 q8, d19, d18 @ encoding: [0xc3,0xef,0xa2,0x05] 86 @ CHECK: vabal.s16 q8, d19, d18 @ encoding: [0xd3,0xef,0xa2,0x05] 87 @ CHECK: vabal.s32 q8, d19, d18 @ encoding: [0xe3,0xef,0xa2,0x05] 88 @ CHECK: vabal.u8 q8, d19, d18 @ encoding: [0xc3,0xff,0xa2,0x05] 89 @ CHECK: vabal.u16 q8, d19, d18 @ encoding: [0xd3,0xff,0xa2,0x05] 90 @ CHECK: vabal.u32 q8, d19, d18 @ encoding: [0xe3,0xff,0xa2,0x05] 91 92