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