xref: /llvm-project/llvm/test/MC/ARM/neont2-absdiff-encoding.s (revision 8a8e9d1b630c15290f699755a5bb2fc833586b73)
1*8a8e9d1bSEvan Cheng@RUN: llvm-mc -triple thumbv7-unknown-unknown -mcpu=cortex-a8 -show-encoding < %s | FileCheck %s
2ce2250fbSOwen Anderson
3ce2250fbSOwen Anderson.code 16
4ce2250fbSOwen Anderson
5ce2250fbSOwen Anderson	vabd.s8	d16, d16, d17
6ce2250fbSOwen Anderson	vabd.s16	d16, d16, d17
7ce2250fbSOwen Anderson	vabd.s32	d16, d16, d17
8ce2250fbSOwen Anderson	vabd.u8	d16, d16, d17
9ce2250fbSOwen Anderson	vabd.u16	d16, d16, d17
10ce2250fbSOwen Anderson	vabd.u32	d16, d16, d17
11ce2250fbSOwen Anderson	vabd.f32	d16, d16, d17
12ce2250fbSOwen Anderson	vabd.s8	q8, q8, q9
13ce2250fbSOwen Anderson	vabd.s16	q8, q8, q9
14ce2250fbSOwen Anderson	vabd.s32	q8, q8, q9
15ce2250fbSOwen Anderson	vabd.u8	q8, q8, q9
16ce2250fbSOwen Anderson	vabd.u16	q8, q8, q9
17ce2250fbSOwen Anderson	vabd.u32	q8, q8, q9
18ce2250fbSOwen Anderson	vabd.f32	q8, q8, q9
19ce2250fbSOwen Anderson
2048874691SJim Grosbach@ CHECK: vabd.s8	d16, d16, d17   @ encoding: [0x40,0xef,0xa1,0x07]
2148874691SJim Grosbach@ CHECK: vabd.s16	d16, d16, d17   @ encoding: [0x50,0xef,0xa1,0x07]
2248874691SJim Grosbach@ CHECK: vabd.s32	d16, d16, d17   @ encoding: [0x60,0xef,0xa1,0x07]
2348874691SJim Grosbach@ CHECK: vabd.u8	d16, d16, d17   @ encoding: [0x40,0xff,0xa1,0x07]
2448874691SJim Grosbach@ CHECK: vabd.u16	d16, d16, d17   @ encoding: [0x50,0xff,0xa1,0x07]
2548874691SJim Grosbach@ CHECK: vabd.u32	d16, d16, d17   @ encoding: [0x60,0xff,0xa1,0x07]
2648874691SJim Grosbach@ CHECK: vabd.f32	d16, d16, d17   @ encoding: [0x60,0xff,0xa1,0x0d]
2748874691SJim Grosbach@ CHECK: vabd.s8	q8, q8, q9      @ encoding: [0x40,0xef,0xe2,0x07]
2848874691SJim Grosbach@ CHECK: vabd.s16	q8, q8, q9      @ encoding: [0x50,0xef,0xe2,0x07]
2948874691SJim Grosbach@ CHECK: vabd.s32	q8, q8, q9      @ encoding: [0x60,0xef,0xe2,0x07]
3048874691SJim Grosbach@ CHECK: vabd.u8	q8, q8, q9      @ encoding: [0x40,0xff,0xe2,0x07]
3148874691SJim Grosbach@ CHECK: vabd.u16	q8, q8, q9      @ encoding: [0x50,0xff,0xe2,0x07]
3248874691SJim Grosbach@ CHECK: vabd.u32	q8, q8, q9      @ encoding: [0x60,0xff,0xe2,0x07]
3348874691SJim Grosbach@ CHECK: vabd.f32	q8, q8, q9      @ encoding: [0x60,0xff,0xe2,0x0d]
3448874691SJim Grosbach
3548874691SJim Grosbach
36ce2250fbSOwen Anderson	vabdl.s8	q8, d16, d17
37ce2250fbSOwen Anderson	vabdl.s16	q8, d16, d17
38ce2250fbSOwen Anderson	vabdl.s32	q8, d16, d17
39ce2250fbSOwen Anderson	vabdl.u8	q8, d16, d17
40ce2250fbSOwen Anderson	vabdl.u16	q8, d16, d17
41ce2250fbSOwen Anderson	vabdl.u32	q8, d16, d17
42ce2250fbSOwen Anderson
4348874691SJim Grosbach@ CHECK: vabdl.s8	q8, d16, d17    @ encoding: [0xc0,0xef,0xa1,0x07]
4448874691SJim Grosbach@ CHECK: vabdl.s16	q8, d16, d17    @ encoding: [0xd0,0xef,0xa1,0x07]
4548874691SJim Grosbach@ CHECK: vabdl.s32	q8, d16, d17    @ encoding: [0xe0,0xef,0xa1,0x07]
4648874691SJim Grosbach@ CHECK: vabdl.u8	q8, d16, d17    @ encoding: [0xc0,0xff,0xa1,0x07]
4748874691SJim Grosbach@ CHECK: vabdl.u16	q8, d16, d17    @ encoding: [0xd0,0xff,0xa1,0x07]
4848874691SJim Grosbach@ CHECK: vabdl.u32	q8, d16, d17    @ encoding: [0xe0,0xff,0xa1,0x07]
4948874691SJim Grosbach
5048874691SJim Grosbach
51ce2250fbSOwen Anderson	vaba.s8	d16, d18, d17
52ce2250fbSOwen Anderson	vaba.s16	d16, d18, d17
53ce2250fbSOwen Anderson	vaba.s32	d16, d18, d17
54ce2250fbSOwen Anderson	vaba.u8	d16, d18, d17
55ce2250fbSOwen Anderson	vaba.u16	d16, d18, d17
56ce2250fbSOwen Anderson	vaba.u32	d16, d18, d17
57ce2250fbSOwen Anderson	vaba.s8	q9, q8, q10
58ce2250fbSOwen Anderson	vaba.s16	q9, q8, q10
59ce2250fbSOwen Anderson	vaba.s32	q9, q8, q10
60ce2250fbSOwen Anderson	vaba.u8	q9, q8, q10
61ce2250fbSOwen Anderson	vaba.u16	q9, q8, q10
62ce2250fbSOwen Anderson	vaba.u32	q9, q8, q10
63ce2250fbSOwen Anderson
6448874691SJim Grosbach@ CHECK: vaba.s8	d16, d18, d17   @ encoding: [0x42,0xef,0xb1,0x07]
6548874691SJim Grosbach@ CHECK: vaba.s16	d16, d18, d17   @ encoding: [0x52,0xef,0xb1,0x07]
6648874691SJim Grosbach@ CHECK: vaba.s32	d16, d18, d17   @ encoding: [0x62,0xef,0xb1,0x07]
6748874691SJim Grosbach@ CHECK: vaba.u8	d16, d18, d17   @ encoding: [0x42,0xff,0xb1,0x07]
6848874691SJim Grosbach@ CHECK: vaba.u16	d16, d18, d17   @ encoding: [0x52,0xff,0xb1,0x07]
6948874691SJim Grosbach@ CHECK: vaba.u32	d16, d18, d17   @ encoding: [0x62,0xff,0xb1,0x07]
7048874691SJim Grosbach@ CHECK: vaba.s8	q9, q8, q10     @ encoding: [0x40,0xef,0xf4,0x27]
7148874691SJim Grosbach@ CHECK: vaba.s16	q9, q8, q10     @ encoding: [0x50,0xef,0xf4,0x27]
7248874691SJim Grosbach@ CHECK: vaba.s32	q9, q8, q10     @ encoding: [0x60,0xef,0xf4,0x27]
7348874691SJim Grosbach@ CHECK: vaba.u8	q9, q8, q10     @ encoding: [0x40,0xff,0xf4,0x27]
7448874691SJim Grosbach@ CHECK: vaba.u16	q9, q8, q10     @ encoding: [0x50,0xff,0xf4,0x27]
7548874691SJim Grosbach@ CHECK: vaba.u32	q9, q8, q10     @ encoding: [0x60,0xff,0xf4,0x27]
7648874691SJim Grosbach
7748874691SJim Grosbach
78ce2250fbSOwen Anderson	vabal.s8	q8, d19, d18
79ce2250fbSOwen Anderson	vabal.s16	q8, d19, d18
80ce2250fbSOwen Anderson	vabal.s32	q8, d19, d18
81ce2250fbSOwen Anderson	vabal.u8	q8, d19, d18
82ce2250fbSOwen Anderson	vabal.u16	q8, d19, d18
83ce2250fbSOwen Anderson	vabal.u32	q8, d19, d18
84ce2250fbSOwen Anderson
8548874691SJim Grosbach@ CHECK: vabal.s8	q8, d19, d18    @ encoding: [0xc3,0xef,0xa2,0x05]
8648874691SJim Grosbach@ CHECK: vabal.s16	q8, d19, d18    @ encoding: [0xd3,0xef,0xa2,0x05]
8748874691SJim Grosbach@ CHECK: vabal.s32	q8, d19, d18    @ encoding: [0xe3,0xef,0xa2,0x05]
8848874691SJim Grosbach@ CHECK: vabal.u8	q8, d19, d18    @ encoding: [0xc3,0xff,0xa2,0x05]
8948874691SJim Grosbach@ CHECK: vabal.u16	q8, d19, d18    @ encoding: [0xd3,0xff,0xa2,0x05]
9048874691SJim Grosbach@ CHECK: vabal.u32	q8, d19, d18    @ encoding: [0xe3,0xff,0xa2,0x05]
9148874691SJim Grosbach
92