1 // RUN: llvm-mc -triple aarch64-none-linux-gnu -mattr=+neon -show-encoding < %s | FileCheck %s
2 // RUN: llvm-mc -triple arm64-none-linux-gnu -mattr=+neon -show-encoding < %s | FileCheck %s
4 // Check that the assembler can handle the documented syntax for AArch64
6 //------------------------------------------------------------------------------
8 //------------------------------------------------------------------------------
9 and v0.8b, v1.8b, v2.8b
10 and v0.16b, v1.16b, v2.16b
12 // CHECK: and v0.8b, v1.8b, v2.8b // encoding: [0x20,0x1c,0x22,0x0e]
13 // CHECK: and v0.16b, v1.16b, v2.16b // encoding: [0x20,0x1c,0x22,0x4e]
16 //------------------------------------------------------------------------------
18 //------------------------------------------------------------------------------
19 orr v0.8b, v1.8b, v2.8b
20 orr v0.16b, v1.16b, v2.16b
22 // CHECK: orr v0.8b, v1.8b, v2.8b // encoding: [0x20,0x1c,0xa2,0x0e]
23 // CHECK: orr v0.16b, v1.16b, v2.16b // encoding: [0x20,0x1c,0xa2,0x4e]
26 //------------------------------------------------------------------------------
28 //------------------------------------------------------------------------------
29 eor v0.8b, v1.8b, v2.8b
30 eor v0.16b, v1.16b, v2.16b
32 // CHECK: eor v0.8b, v1.8b, v2.8b // encoding: [0x20,0x1c,0x22,0x2e]
33 // CHECK: eor v0.16b, v1.16b, v2.16b // encoding: [0x20,0x1c,0x22,0x6e]
36 //----------------------------------------------------------------------
38 //----------------------------------------------------------------------
40 bit v0.8b, v1.8b, v2.8b
41 bit v0.16b, v1.16b, v2.16b
42 bif v0.8b, v1.8b, v2.8b
43 bif v0.16b, v1.16b, v2.16b
44 bsl v0.8b, v1.8b, v2.8b
45 bsl v0.16b, v1.16b, v2.16b
46 orn v0.8b, v1.8b, v2.8b
47 orn v0.16b, v1.16b, v2.16b
48 bic v0.8b, v1.8b, v2.8b
49 bic v0.16b, v1.16b, v2.16b
51 // CHECK: bit v0.8b, v1.8b, v2.8b // encoding: [0x20,0x1c,0xa2,0x2e]
52 // CHECK: bit v0.16b, v1.16b, v2.16b // encoding: [0x20,0x1c,0xa2,0x6e]
53 // CHECK: bif v0.8b, v1.8b, v2.8b // encoding: [0x20,0x1c,0xe2,0x2e]
54 // CHECK: bif v0.16b, v1.16b, v2.16b // encoding: [0x20,0x1c,0xe2,0x6e]
55 // CHECK: bsl v0.8b, v1.8b, v2.8b // encoding: [0x20,0x1c,0x62,0x2e]
56 // CHECK: bsl v0.16b, v1.16b, v2.16b // encoding: [0x20,0x1c,0x62,0x6e]
57 // CHECK: orn v0.8b, v1.8b, v2.8b // encoding: [0x20,0x1c,0xe2,0x0e]
58 // CHECK: orn v0.16b, v1.16b, v2.16b // encoding: [0x20,0x1c,0xe2,0x4e]
59 // CHECK: bic v0.8b, v1.8b, v2.8b // encoding: [0x20,0x1c,0x62,0x0e]
60 // CHECK: bic v0.16b, v1.16b, v2.16b // encoding: [0x20,0x1c,0x62,0x4e]