neon-cmp-encoding.s revision 8d1b7e57e56015576fd489a57d74c53b98c5a56f
1@ RUN: llvm-mc -mcpu=cortex-a8 -triple arm-unknown-unknown -show-encoding < %s | FileCheck %s 2@ XFAIL: * 3 4@ FIXME: We cannot currently test the following instructions, which are 5@ currently marked as for-disassembly only in the .td files: 6@ - VCEQz 7@ - VCGEz, VCLEz 8@ - VCGTz, VCLTz 9 10@ CHECK: vceq.i8 d16, d16, d17 @ encoding: [0xb1,0x08,0x40,0xf3] 11 vceq.i8 d16, d16, d17 12@ CHECK: vceq.i16 d16, d16, d17 @ encoding: [0xb1,0x08,0x50,0xf3] 13 vceq.i16 d16, d16, d17 14@ CHECK: vceq.i32 d16, d16, d17 @ encoding: [0xb1,0x08,0x60,0xf3] 15 vceq.i32 d16, d16, d17 16@ CHECK: vceq.f32 d16, d16, d17 @ encoding: [0xa1,0x0e,0x40,0xf2] 17 vceq.f32 d16, d16, d17 18@ CHECK: vceq.i8 q8, q8, q9 @ encoding: [0xf2,0x08,0x40,0xf3] 19 vceq.i8 q8, q8, q9 20@ CHECK: vceq.i16 q8, q8, q9 @ encoding: [0xf2,0x08,0x50,0xf3] 21 vceq.i16 q8, q8, q9 22@ CHECK: vceq.i32 q8, q8, q9 @ encoding: [0xf2,0x08,0x60,0xf3] 23 vceq.i32 q8, q8, q9 24@ CHECK: vceq.f32 q8, q8, q9 @ encoding: [0xe2,0x0e,0x40,0xf2] 25 vceq.f32 q8, q8, q9 26 27@ CHECK: vcge.s8 d16, d16, d17 @ encoding: [0xb1,0x03,0x40,0xf2] 28 vcge.s8 d16, d16, d17 29@ CHECK: vcge.s16 d16, d16, d17 @ encoding: [0xb1,0x03,0x50,0xf2] 30 vcge.s16 d16, d16, d17 31@ CHECK: vcge.s32 d16, d16, d17 @ encoding: [0xb1,0x03,0x60,0xf2] 32 vcge.s32 d16, d16, d17 33@ CHECK: vcge.u8 d16, d16, d17 @ encoding: [0xb1,0x03,0x40,0xf3] 34 vcge.u8 d16, d16, d17 35@ CHECK: vcge.u16 d16, d16, d17 @ encoding: [0xb1,0x03,0x50,0xf3] 36 vcge.u16 d16, d16, d17 37@ CHECK: vcge.u32 d16, d16, d17 @ encoding: [0xb1,0x03,0x60,0xf3] 38 vcge.u32 d16, d16, d17 39@ CHECK: vcge.f32 d16, d16, d17 @ encoding: [0xa1,0x0e,0x40,0xf3] 40 vcge.f32 d16, d16, d17 41@ CHECK: vcge.s8 q8, q8, q9 @ encoding: [0xf2,0x03,0x40,0xf2] 42 vcge.s8 q8, q8, q9 43@ CHECK: vcge.s16 q8, q8, q9 @ encoding: [0xf2,0x03,0x50,0xf2] 44 vcge.s16 q8, q8, q9 45@ CHECK: vcge.s32 q8, q8, q9 @ encoding: [0xf2,0x03,0x60,0xf2] 46 vcge.s32 q8, q8, q9 47@ CHECK: vcge.u8 q8, q8, q9 @ encoding: [0xf2,0x03,0x40,0xf3] 48 vcge.u8 q8, q8, q9 49@ CHECK: vcge.u16 q8, q8, q9 @ encoding: [0xf2,0x03,0x50,0xf3] 50 vcge.u16 q8, q8, q9 51@ CHECK: vcge.u32 q8, q8, q9 @ encoding: [0xf2,0x03,0x60,0xf3] 52 vcge.u32 q8, q8, q9 53@ CHECK: vcge.f32 q8, q8, q9 @ encoding: [0xe2,0x0e,0x40,0xf3] 54 vcge.f32 q8, q8, q9 55@ CHECK: vacge.f32 d16, d16, d17 @ encoding: [0xb1,0x0e,0x40,0xf3] 56 vacge.f32 d16, d16, d17 57@ CHECK: vacge.f32 q8, q8, q9 @ encoding: [0xf2,0x0e,0x40,0xf3] 58 vacge.f32 q8, q8, q9 59 60@ CHECK: vcgt.s8 d16, d16, d17 @ encoding: [0xa1,0x03,0x40,0xf2] 61 vcgt.s8 d16, d16, d17 62@ CHECK: vcgt.s16 d16, d16, d17 @ encoding: [0xa1,0x03,0x50,0xf2] 63 vcgt.s16 d16, d16, d17 64@ CHECK: vcgt.s32 d16, d16, d17 @ encoding: [0xa1,0x03,0x60,0xf2] 65 vcgt.s32 d16, d16, d17 66@ CHECK: vcgt.u8 d16, d16, d17 @ encoding: [0xa1,0x03,0x40,0xf3] 67 vcgt.u8 d16, d16, d17 68@ CHECK: vcgt.u16 d16, d16, d17 @ encoding: [0xa1,0x03,0x50,0xf3] 69 vcgt.u16 d16, d16, d17 70@ CHECK: vcgt.u32 d16, d16, d17 @ encoding: [0xa1,0x03,0x60,0xf3] 71 vcgt.u32 d16, d16, d17 72@ CHECK: vcgt.f32 d16, d16, d17 @ encoding: [0xa1,0x0e,0x60,0xf3] 73 vcgt.f32 d16, d16, d17 74@ CHECK: vcgt.s8 q8, q8, q9 @ encoding: [0xe2,0x03,0x40,0xf2] 75 vcgt.s8 q8, q8, q9 76@ CHECK: vcgt.s16 q8, q8, q9 @ encoding: [0xe2,0x03,0x50,0xf2] 77 vcgt.s16 q8, q8, q9 78@ CHECK: vcgt.s32 q8, q8, q9 @ encoding: [0xe2,0x03,0x60,0xf2] 79 vcgt.s32 q8, q8, q9 80@ CHECK: vcgt.u8 q8, q8, q9 @ encoding: [0xe2,0x03,0x40,0xf3] 81 vcgt.u8 q8, q8, q9 82@ CHECK: vcgt.u16 q8, q8, q9 @ encoding: [0xe2,0x03,0x50,0xf3] 83 vcgt.u16 q8, q8, q9 84@ CHECK: vcgt.u32 q8, q8, q9 @ encoding: [0xe2,0x03,0x60,0xf3] 85 vcgt.u32 q8, q8, q9 86@ CHECK: vcgt.f32 q8, q8, q9 @ encoding: [0xe2,0x0e,0x60,0xf3] 87 vcgt.f32 q8, q8, q9 88@ CHECK: vacgt.f32 d16, d16, d17 @ encoding: [0xb1,0x0e,0x60,0xf3] 89 vacgt.f32 d16, d16, d17 90@ CHECK: vacgt.f32 q8, q8, q9 @ encoding: [0xf2,0x0e,0x60,0xf3] 91 vacgt.f32 q8, q8, q9 92 93@ CHECK: vtst.8 d16, d16, d17 @ encoding: [0xb1,0x08,0x40,0xf2] 94 vtst.8 d16, d16, d17 95@ CHECK: vtst.16 d16, d16, d17 @ encoding: [0xb1,0x08,0x50,0xf2] 96 vtst.16 d16, d16, d17 97@ CHECK: vtst.32 d16, d16, d17 @ encoding: [0xb1,0x08,0x60,0xf2] 98 vtst.32 d16, d16, d17 99@ CHECK: vtst.8 q8, q8, q9 @ encoding: [0xf2,0x08,0x40,0xf2] 100 vtst.8 q8, q8, q9 101@ CHECK: vtst.16 q8, q8, q9 @ encoding: [0xf2,0x08,0x50,0xf2] 102 vtst.16 q8, q8, q9 103@ CHECK: vtst.32 q8, q8, q9 @ encoding: [0xf2,0x08,0x60,0xf2] 104 vtst.32 q8, q8, q9 105 106@ CHECK: vceq.i8 d16, d16, #0 @ encoding: [0x20,0x01,0xf1,0xf3] 107 vceq.i8 d16, d16, #0 108@ CHECK: vcge.s8 d16, d16, #0 @ encoding: [0xa0,0x00,0xf1,0xf3] 109 vcge.s8 d16, d16, #0 110@ CHECK: vcle.s8 d16, d16, #0 @ encoding: [0xa0,0x01,0xf1,0xf3] 111 vcle.s8 d16, d16, #0 112@ CHECK: vcgt.s8 d16, d16, #0 @ encoding: [0x20,0x00,0xf1,0xf3] 113 vcgt.s8 d16, d16, #0 114@ CHECK: vclt.s8 d16, d16, #0 @ encoding: [0x20,0x02,0xf1,0xf3] 115 vclt.s8 d16, d16, #0 116