blob: 10dc90d1c27afc264b8cb15e08e7825428a6f834 [file] [log] [blame]
Bob Wilsonc3ff5382010-12-15 22:14:01 +00001@ RUN: llvm-mc -mcpu=cortex-a8 -triple thumb-unknown-unknown -show-encoding < %s | FileCheck %s
Owen Andersonce2250f2010-11-11 23:12:55 +00002
3.code 16
4
Owen Andersonce2250f2010-11-11 23:12:55 +00005 vmla.i8 d16, d18, d17
Owen Andersonce2250f2010-11-11 23:12:55 +00006 vmla.i16 d16, d18, d17
Owen Andersonce2250f2010-11-11 23:12:55 +00007 vmla.i32 d16, d18, d17
Owen Andersonce2250f2010-11-11 23:12:55 +00008 vmla.f32 d16, d18, d17
Owen Andersonce2250f2010-11-11 23:12:55 +00009 vmla.i8 q9, q8, q10
Owen Andersonce2250f2010-11-11 23:12:55 +000010 vmla.i16 q9, q8, q10
Owen Andersonce2250f2010-11-11 23:12:55 +000011 vmla.i32 q9, q8, q10
Owen Andersonce2250f2010-11-11 23:12:55 +000012 vmla.f32 q9, q8, q10
Jim Grosbach8bc8bfd2011-10-04 20:46:49 +000013
14@ CHECK: vmla.i8 d16, d18, d17 @ encoding: [0x42,0xef,0xa1,0x09]
15@ CHECK: vmla.i16 d16, d18, d17 @ encoding: [0x52,0xef,0xa1,0x09]
16@ CHECK: vmla.i32 d16, d18, d17 @ encoding: [0x62,0xef,0xa1,0x09]
17@ CHECK: vmla.f32 d16, d18, d17 @ encoding: [0x42,0xef,0xb1,0x0d]
18@ CHECK: vmla.i8 q9, q8, q10 @ encoding: [0x40,0xef,0xe4,0x29]
19@ CHECK: vmla.i16 q9, q8, q10 @ encoding: [0x50,0xef,0xe4,0x29]
20@ CHECK: vmla.i32 q9, q8, q10 @ encoding: [0x60,0xef,0xe4,0x29]
21@ CHECK: vmla.f32 q9, q8, q10 @ encoding: [0x40,0xef,0xf4,0x2d]
22
23
Owen Andersonce2250f2010-11-11 23:12:55 +000024 vmlal.s8 q8, d19, d18
Owen Andersonce2250f2010-11-11 23:12:55 +000025 vmlal.s16 q8, d19, d18
Owen Andersonce2250f2010-11-11 23:12:55 +000026 vmlal.s32 q8, d19, d18
Owen Andersonce2250f2010-11-11 23:12:55 +000027 vmlal.u8 q8, d19, d18
Owen Andersonce2250f2010-11-11 23:12:55 +000028 vmlal.u16 q8, d19, d18
Owen Andersonce2250f2010-11-11 23:12:55 +000029 vmlal.u32 q8, d19, d18
Jim Grosbach8bc8bfd2011-10-04 20:46:49 +000030
31@ CHECK: vmlal.s8 q8, d19, d18 @ encoding: [0xc3,0xef,0xa2,0x08]
32@ CHECK: vmlal.s16 q8, d19, d18 @ encoding: [0xd3,0xef,0xa2,0x08]
33@ CHECK: vmlal.s32 q8, d19, d18 @ encoding: [0xe3,0xef,0xa2,0x08]
34@ CHECK: vmlal.u8 q8, d19, d18 @ encoding: [0xc3,0xff,0xa2,0x08]
35@ CHECK: vmlal.u16 q8, d19, d18 @ encoding: [0xd3,0xff,0xa2,0x08]
36@ CHECK: vmlal.u32 q8, d19, d18 @ encoding: [0xe3,0xff,0xa2,0x08]
37
38
Owen Andersonce2250f2010-11-11 23:12:55 +000039 vqdmlal.s16 q8, d19, d18
Owen Andersonce2250f2010-11-11 23:12:55 +000040 vqdmlal.s32 q8, d19, d18
Jim Grosbach82067902011-10-18 17:23:34 +000041 vqdmlal.s16 q11, d11, d7[0]
42 vqdmlal.s16 q11, d11, d7[1]
43 vqdmlal.s16 q11, d11, d7[2]
44 vqdmlal.s16 q11, d11, d7[3]
Jim Grosbach8bc8bfd2011-10-04 20:46:49 +000045
46@ CHECK: vqdmlal.s16 q8, d19, d18 @ encoding: [0xd3,0xef,0xa2,0x09]
47@ CHECK: vqdmlal.s32 q8, d19, d18 @ encoding: [0xe3,0xef,0xa2,0x09]
Jim Grosbach82067902011-10-18 17:23:34 +000048@ CHECK: vqdmlal.s16 q11, d11, d7[0] @ encoding: [0xdb,0xef,0x47,0x63]
49@ CHECK: vqdmlal.s16 q11, d11, d7[1] @ encoding: [0xdb,0xef,0x4f,0x63]
50@ CHECK: vqdmlal.s16 q11, d11, d7[2] @ encoding: [0xdb,0xef,0x67,0x63]
51@ CHECK: vqdmlal.s16 q11, d11, d7[3] @ encoding: [0xdb,0xef,0x6f,0x63]
Jim Grosbach8bc8bfd2011-10-04 20:46:49 +000052
53
Owen Andersonce2250f2010-11-11 23:12:55 +000054 vmls.i8 d16, d18, d17
Owen Andersonce2250f2010-11-11 23:12:55 +000055 vmls.i16 d16, d18, d17
Owen Andersonce2250f2010-11-11 23:12:55 +000056 vmls.i32 d16, d18, d17
Owen Andersonce2250f2010-11-11 23:12:55 +000057 vmls.f32 d16, d18, d17
Owen Andersonce2250f2010-11-11 23:12:55 +000058 vmls.i8 q9, q8, q10
Owen Andersonce2250f2010-11-11 23:12:55 +000059 vmls.i16 q9, q8, q10
Owen Andersonce2250f2010-11-11 23:12:55 +000060 vmls.i32 q9, q8, q10
Owen Andersonce2250f2010-11-11 23:12:55 +000061 vmls.f32 q9, q8, q10
Jim Grosbach8bc8bfd2011-10-04 20:46:49 +000062
63@ CHECK: vmls.i8 d16, d18, d17 @ encoding: [0x42,0xff,0xa1,0x09]
64@ CHECK: vmls.i16 d16, d18, d17 @ encoding: [0x52,0xff,0xa1,0x09]
65@ CHECK: vmls.i32 d16, d18, d17 @ encoding: [0x62,0xff,0xa1,0x09]
66@ CHECK: vmls.f32 d16, d18, d17 @ encoding: [0x62,0xef,0xb1,0x0d]
67@ CHECK: vmls.i8 q9, q8, q10 @ encoding: [0x40,0xff,0xe4,0x29]
68@ CHECK: vmls.i16 q9, q8, q10 @ encoding: [0x50,0xff,0xe4,0x29]
69@ CHECK: vmls.i32 q9, q8, q10 @ encoding: [0x60,0xff,0xe4,0x29]
70@ CHECK: vmls.f32 q9, q8, q10 @ encoding: [0x60,0xef,0xf4,0x2d]
71
72
Owen Andersonce2250f2010-11-11 23:12:55 +000073 vmlsl.s8 q8, d19, d18
Owen Andersonce2250f2010-11-11 23:12:55 +000074 vmlsl.s16 q8, d19, d18
Owen Andersonce2250f2010-11-11 23:12:55 +000075 vmlsl.s32 q8, d19, d18
Owen Andersonce2250f2010-11-11 23:12:55 +000076 vmlsl.u8 q8, d19, d18
Owen Andersonce2250f2010-11-11 23:12:55 +000077 vmlsl.u16 q8, d19, d18
Owen Andersonce2250f2010-11-11 23:12:55 +000078 vmlsl.u32 q8, d19, d18
Jim Grosbach8bc8bfd2011-10-04 20:46:49 +000079
80@ CHECK: vmlsl.s8 q8, d19, d18 @ encoding: [0xc3,0xef,0xa2,0x0a]
81@ CHECK: vmlsl.s16 q8, d19, d18 @ encoding: [0xd3,0xef,0xa2,0x0a]
82@ CHECK: vmlsl.s32 q8, d19, d18 @ encoding: [0xe3,0xef,0xa2,0x0a]
83@ CHECK: vmlsl.u8 q8, d19, d18 @ encoding: [0xc3,0xff,0xa2,0x0a]
84@ CHECK: vmlsl.u16 q8, d19, d18 @ encoding: [0xd3,0xff,0xa2,0x0a]
85@ CHECK: vmlsl.u32 q8, d19, d18 @ encoding: [0xe3,0xff,0xa2,0x0a]
86
87
Owen Andersonce2250f2010-11-11 23:12:55 +000088 vqdmlsl.s16 q8, d19, d18
Owen Andersonce2250f2010-11-11 23:12:55 +000089 vqdmlsl.s32 q8, d19, d18
Jim Grosbach8bc8bfd2011-10-04 20:46:49 +000090
91@ CHECK: vqdmlsl.s16 q8, d19, d18 @ encoding: [0xd3,0xef,0xa2,0x0b]
92@ CHECK: vqdmlsl.s32 q8, d19, d18 @ encoding: [0xe3,0xef,0xa2,0x0b]