1cac31de146e7131f411715dc6cb1958ea59bd754Evan Cheng@RUN: llvm-mc -triple thumbv7-unknown-unknown -mcpu=cortex-a8 -show-encoding < %s | FileCheck %s
28f143913141991baaa535ca0da7c8a81606d6392Owen Anderson
38f143913141991baaa535ca0da7c8a81606d6392Owen Anderson.code 16
48f143913141991baaa535ca0da7c8a81606d6392Owen Anderson
58f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vabd.s8	d16, d16, d17
68f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vabd.s16	d16, d16, d17
78f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vabd.s32	d16, d16, d17
88f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vabd.u8	d16, d16, d17
98f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vabd.u16	d16, d16, d17
108f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vabd.u32	d16, d16, d17
118f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vabd.f32	d16, d16, d17
128f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vabd.s8	q8, q8, q9
138f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vabd.s16	q8, q8, q9
148f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vabd.s32	q8, q8, q9
158f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vabd.u8	q8, q8, q9
168f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vabd.u16	q8, q8, q9
178f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vabd.u32	q8, q8, q9
188f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vabd.f32	q8, q8, q9
198f143913141991baaa535ca0da7c8a81606d6392Owen Anderson
207abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vabd.s8	d16, d16, d17   @ encoding: [0x40,0xef,0xa1,0x07]
217abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vabd.s16	d16, d16, d17   @ encoding: [0x50,0xef,0xa1,0x07]
227abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vabd.s32	d16, d16, d17   @ encoding: [0x60,0xef,0xa1,0x07]
237abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vabd.u8	d16, d16, d17   @ encoding: [0x40,0xff,0xa1,0x07]
247abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vabd.u16	d16, d16, d17   @ encoding: [0x50,0xff,0xa1,0x07]
257abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vabd.u32	d16, d16, d17   @ encoding: [0x60,0xff,0xa1,0x07]
267abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vabd.f32	d16, d16, d17   @ encoding: [0x60,0xff,0xa1,0x0d]
277abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vabd.s8	q8, q8, q9      @ encoding: [0x40,0xef,0xe2,0x07]
287abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vabd.s16	q8, q8, q9      @ encoding: [0x50,0xef,0xe2,0x07]
297abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vabd.s32	q8, q8, q9      @ encoding: [0x60,0xef,0xe2,0x07]
307abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vabd.u8	q8, q8, q9      @ encoding: [0x40,0xff,0xe2,0x07]
317abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vabd.u16	q8, q8, q9      @ encoding: [0x50,0xff,0xe2,0x07]
327abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vabd.u32	q8, q8, q9      @ encoding: [0x60,0xff,0xe2,0x07]
337abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vabd.f32	q8, q8, q9      @ encoding: [0x60,0xff,0xe2,0x0d]
347abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach
357abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach
368f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vabdl.s8	q8, d16, d17
378f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vabdl.s16	q8, d16, d17
388f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vabdl.s32	q8, d16, d17
398f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vabdl.u8	q8, d16, d17
408f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vabdl.u16	q8, d16, d17
418f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vabdl.u32	q8, d16, d17
428f143913141991baaa535ca0da7c8a81606d6392Owen Anderson
437abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vabdl.s8	q8, d16, d17    @ encoding: [0xc0,0xef,0xa1,0x07]
447abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vabdl.s16	q8, d16, d17    @ encoding: [0xd0,0xef,0xa1,0x07]
457abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vabdl.s32	q8, d16, d17    @ encoding: [0xe0,0xef,0xa1,0x07]
467abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vabdl.u8	q8, d16, d17    @ encoding: [0xc0,0xff,0xa1,0x07]
477abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vabdl.u16	q8, d16, d17    @ encoding: [0xd0,0xff,0xa1,0x07]
487abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vabdl.u32	q8, d16, d17    @ encoding: [0xe0,0xff,0xa1,0x07]
497abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach
507abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach
518f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vaba.s8	d16, d18, d17
528f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vaba.s16	d16, d18, d17
538f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vaba.s32	d16, d18, d17
548f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vaba.u8	d16, d18, d17
558f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vaba.u16	d16, d18, d17
568f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vaba.u32	d16, d18, d17
578f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vaba.s8	q9, q8, q10
588f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vaba.s16	q9, q8, q10
598f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vaba.s32	q9, q8, q10
608f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vaba.u8	q9, q8, q10
618f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vaba.u16	q9, q8, q10
628f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vaba.u32	q9, q8, q10
638f143913141991baaa535ca0da7c8a81606d6392Owen Anderson
647abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vaba.s8	d16, d18, d17   @ encoding: [0x42,0xef,0xb1,0x07]
657abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vaba.s16	d16, d18, d17   @ encoding: [0x52,0xef,0xb1,0x07]
667abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vaba.s32	d16, d18, d17   @ encoding: [0x62,0xef,0xb1,0x07]
677abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vaba.u8	d16, d18, d17   @ encoding: [0x42,0xff,0xb1,0x07]
687abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vaba.u16	d16, d18, d17   @ encoding: [0x52,0xff,0xb1,0x07]
697abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vaba.u32	d16, d18, d17   @ encoding: [0x62,0xff,0xb1,0x07]
707abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vaba.s8	q9, q8, q10     @ encoding: [0x40,0xef,0xf4,0x27]
717abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vaba.s16	q9, q8, q10     @ encoding: [0x50,0xef,0xf4,0x27]
727abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vaba.s32	q9, q8, q10     @ encoding: [0x60,0xef,0xf4,0x27]
737abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vaba.u8	q9, q8, q10     @ encoding: [0x40,0xff,0xf4,0x27]
747abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vaba.u16	q9, q8, q10     @ encoding: [0x50,0xff,0xf4,0x27]
757abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vaba.u32	q9, q8, q10     @ encoding: [0x60,0xff,0xf4,0x27]
767abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach
777abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach
788f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vabal.s8	q8, d19, d18
798f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vabal.s16	q8, d19, d18
808f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vabal.s32	q8, d19, d18
818f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vabal.u8	q8, d19, d18
828f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vabal.u16	q8, d19, d18
838f143913141991baaa535ca0da7c8a81606d6392Owen Anderson	vabal.u32	q8, d19, d18
848f143913141991baaa535ca0da7c8a81606d6392Owen Anderson
857abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vabal.s8	q8, d19, d18    @ encoding: [0xc3,0xef,0xa2,0x05]
867abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vabal.s16	q8, d19, d18    @ encoding: [0xd3,0xef,0xa2,0x05]
877abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vabal.s32	q8, d19, d18    @ encoding: [0xe3,0xef,0xa2,0x05]
887abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vabal.u8	q8, d19, d18    @ encoding: [0xc3,0xff,0xa2,0x05]
897abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vabal.u16	q8, d19, d18    @ encoding: [0xd3,0xff,0xa2,0x05]
907abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach@ CHECK: vabal.u32	q8, d19, d18    @ encoding: [0xe3,0xff,0xa2,0x05]
917abb7956350238f2edbc2d8e5d0dec61f44df2c9Jim Grosbach
92