xref: /llvm-project/llvm/test/MC/ARM/neon-mul-accum-encoding.s (revision 611450071c290aedcc119f9c058e338f137c01b2)
1c3ff538dSBob Wilson@ RUN: llvm-mc -mcpu=cortex-a8 -triple arm-unknown-unknown -show-encoding < %s | FileCheck %s
23ad831acSOwen Anderson
33ad831acSOwen Anderson	vmla.i8	d16, d18, d17
43ad831acSOwen Anderson	vmla.i16	d16, d18, d17
53ad831acSOwen Anderson	vmla.i32	d16, d18, d17
63ad831acSOwen Anderson	vmla.f32	d16, d18, d17
73ad831acSOwen Anderson	vmla.i8	q9, q8, q10
83ad831acSOwen Anderson	vmla.i16	q9, q8, q10
93ad831acSOwen Anderson	vmla.i32	q9, q8, q10
103ad831acSOwen Anderson	vmla.f32	q9, q8, q10
11*61145007SJim Grosbach	vmla.i32	q12, q8, d3[0]
1295135982SJim Grosbach
1395135982SJim Grosbach@ CHECK: vmla.i8	d16, d18, d17   @ encoding: [0xa1,0x09,0x42,0xf2]
1495135982SJim Grosbach@ CHECK: vmla.i16	d16, d18, d17   @ encoding: [0xa1,0x09,0x52,0xf2]
1595135982SJim Grosbach@ CHECK: vmla.i32	d16, d18, d17   @ encoding: [0xa1,0x09,0x62,0xf2]
1695135982SJim Grosbach@ CHECK: vmla.f32	d16, d18, d17   @ encoding: [0xb1,0x0d,0x42,0xf2]
1795135982SJim Grosbach@ CHECK: vmla.i8	q9, q8, q10     @ encoding: [0xe4,0x29,0x40,0xf2]
1895135982SJim Grosbach@ CHECK: vmla.i16	q9, q8, q10     @ encoding: [0xe4,0x29,0x50,0xf2]
1995135982SJim Grosbach@ CHECK: vmla.i32	q9, q8, q10     @ encoding: [0xe4,0x29,0x60,0xf2]
2095135982SJim Grosbach@ CHECK: vmla.f32	q9, q8, q10     @ encoding: [0xf4,0x2d,0x40,0xf2]
21*61145007SJim Grosbach@ CHECK: vmla.i32	q12, q8, d3[0]  @ encoding: [0xc3,0x80,0xe0,0xf3]
2295135982SJim Grosbach
2395135982SJim Grosbach
243ad831acSOwen Anderson	vmlal.s8	q8, d19, d18
253ad831acSOwen Anderson	vmlal.s16	q8, d19, d18
263ad831acSOwen Anderson	vmlal.s32	q8, d19, d18
273ad831acSOwen Anderson	vmlal.u8	q8, d19, d18
283ad831acSOwen Anderson	vmlal.u16	q8, d19, d18
293ad831acSOwen Anderson	vmlal.u32	q8, d19, d18
3095135982SJim Grosbach
3195135982SJim Grosbach@ CHECK: vmlal.s8	q8, d19, d18    @ encoding: [0xa2,0x08,0xc3,0xf2]
3295135982SJim Grosbach@ CHECK: vmlal.s16	q8, d19, d18    @ encoding: [0xa2,0x08,0xd3,0xf2]
3395135982SJim Grosbach@ CHECK: vmlal.s32	q8, d19, d18    @ encoding: [0xa2,0x08,0xe3,0xf2]
3495135982SJim Grosbach@ CHECK: vmlal.u8	q8, d19, d18    @ encoding: [0xa2,0x08,0xc3,0xf3]
3595135982SJim Grosbach@ CHECK: vmlal.u16	q8, d19, d18    @ encoding: [0xa2,0x08,0xd3,0xf3]
3695135982SJim Grosbach@ CHECK: vmlal.u32	q8, d19, d18    @ encoding: [0xa2,0x08,0xe3,0xf3]
3795135982SJim Grosbach
3895135982SJim Grosbach
393ad831acSOwen Anderson	vqdmlal.s16	q8, d19, d18
403ad831acSOwen Anderson	vqdmlal.s32	q8, d19, d18
418206790aSJim Grosbach        vqdmlal.s16 q11, d11, d7[0]
428206790aSJim Grosbach        vqdmlal.s16 q11, d11, d7[1]
438206790aSJim Grosbach        vqdmlal.s16 q11, d11, d7[2]
448206790aSJim Grosbach        vqdmlal.s16 q11, d11, d7[3]
4595135982SJim Grosbach
4695135982SJim Grosbach@ CHECK: vqdmlal.s16	q8, d19, d18    @ encoding: [0xa2,0x09,0xd3,0xf2]
4795135982SJim Grosbach@ CHECK: vqdmlal.s32	q8, d19, d18    @ encoding: [0xa2,0x09,0xe3,0xf2]
488206790aSJim Grosbach@ CHECK: vqdmlal.s16	q11, d11, d7[0] @ encoding: [0x47,0x63,0xdb,0xf2]
498206790aSJim Grosbach@ CHECK: vqdmlal.s16	q11, d11, d7[1] @ encoding: [0x4f,0x63,0xdb,0xf2]
508206790aSJim Grosbach@ CHECK: vqdmlal.s16	q11, d11, d7[2] @ encoding: [0x67,0x63,0xdb,0xf2]
518206790aSJim Grosbach@ CHECK: vqdmlal.s16	q11, d11, d7[3] @ encoding: [0x6f,0x63,0xdb,0xf2]
5295135982SJim Grosbach
5395135982SJim Grosbach
543ad831acSOwen Anderson	vmls.i8	d16, d18, d17
553ad831acSOwen Anderson	vmls.i16	d16, d18, d17
563ad831acSOwen Anderson	vmls.i32	d16, d18, d17
573ad831acSOwen Anderson	vmls.f32	d16, d18, d17
583ad831acSOwen Anderson	vmls.i8	q9, q8, q10
593ad831acSOwen Anderson	vmls.i16	q9, q8, q10
603ad831acSOwen Anderson	vmls.i32	q9, q8, q10
613ad831acSOwen Anderson	vmls.f32	q9, q8, q10
62*61145007SJim Grosbach	vmls.i16	q4, q12, d6[2]
6395135982SJim Grosbach
6495135982SJim Grosbach@ CHECK: vmls.i8	d16, d18, d17   @ encoding: [0xa1,0x09,0x42,0xf3]
6595135982SJim Grosbach@ CHECK: vmls.i16	d16, d18, d17   @ encoding: [0xa1,0x09,0x52,0xf3]
6695135982SJim Grosbach@ CHECK: vmls.i32	d16, d18, d17   @ encoding: [0xa1,0x09,0x62,0xf3]
6795135982SJim Grosbach@ CHECK: vmls.f32	d16, d18, d17   @ encoding: [0xb1,0x0d,0x62,0xf2]
6895135982SJim Grosbach@ CHECK: vmls.i8	q9, q8, q10     @ encoding: [0xe4,0x29,0x40,0xf3]
6995135982SJim Grosbach@ CHECK: vmls.i16	q9, q8, q10     @ encoding: [0xe4,0x29,0x50,0xf3]
7095135982SJim Grosbach@ CHECK: vmls.i32	q9, q8, q10     @ encoding: [0xe4,0x29,0x60,0xf3]
7195135982SJim Grosbach@ CHECK: vmls.f32	q9, q8, q10     @ encoding: [0xf4,0x2d,0x60,0xf2]
72*61145007SJim Grosbach@ CHECK: vmls.i16	q4, q12, d6[2]  @ encoding: [0xe6,0x84,0x98,0xf3]
7395135982SJim Grosbach
7495135982SJim Grosbach
753ad831acSOwen Anderson	vmlsl.s8	q8, d19, d18
763ad831acSOwen Anderson	vmlsl.s16	q8, d19, d18
773ad831acSOwen Anderson	vmlsl.s32	q8, d19, d18
783ad831acSOwen Anderson	vmlsl.u8	q8, d19, d18
793ad831acSOwen Anderson	vmlsl.u16	q8, d19, d18
803ad831acSOwen Anderson	vmlsl.u32	q8, d19, d18
8195135982SJim Grosbach
8295135982SJim Grosbach@ CHECK: vmlsl.s8	q8, d19, d18    @ encoding: [0xa2,0x0a,0xc3,0xf2]
8395135982SJim Grosbach@ CHECK: vmlsl.s16	q8, d19, d18    @ encoding: [0xa2,0x0a,0xd3,0xf2]
8495135982SJim Grosbach@ CHECK: vmlsl.s32	q8, d19, d18    @ encoding: [0xa2,0x0a,0xe3,0xf2]
8595135982SJim Grosbach@ CHECK: vmlsl.u8	q8, d19, d18    @ encoding: [0xa2,0x0a,0xc3,0xf3]
8695135982SJim Grosbach@ CHECK: vmlsl.u16	q8, d19, d18    @ encoding: [0xa2,0x0a,0xd3,0xf3]
8795135982SJim Grosbach@ CHECK: vmlsl.u32	q8, d19, d18    @ encoding: [0xa2,0x0a,0xe3,0xf3]
8895135982SJim Grosbach
8995135982SJim Grosbach
903ad831acSOwen Anderson	vqdmlsl.s16	q8, d19, d18
913ad831acSOwen Anderson	vqdmlsl.s32	q8, d19, d18
9295135982SJim Grosbach
9395135982SJim Grosbach@ CHECK: vqdmlsl.s16	q8, d19, d18    @ encoding: [0xa2,0x0b,0xd3,0xf2]
9495135982SJim Grosbach@ CHECK: vqdmlsl.s32	q8, d19, d18    @ encoding: [0xa2,0x0b,0xe3,0xf2]
95