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// Scalar Absolute Value 7//---------------------------------------------------------------------- 8 9 abs d29, d24 10 11// CHECK: abs d29, d24 // encoding: [0x1d,0xbb,0xe0,0x5e] 12 13//---------------------------------------------------------------------- 14// Scalar Floating-point Absolute Difference 15//---------------------------------------------------------------------- 16 17 fabd s29, s24, s20 18 fabd d29, d24, d20 19 20// CHECK: fabd s29, s24, s20 // encoding: [0x1d,0xd7,0xb4,0x7e] 21// CHECK: fabd d29, d24, d20 // encoding: [0x1d,0xd7,0xf4,0x7e] 22 23//---------------------------------------------------------------------- 24// Scalar Signed Saturating Absolute Value 25//---------------------------------------------------------------------- 26 27 sqabs b19, b14 28 sqabs h21, h15 29 sqabs s20, s12 30 sqabs d18, d12 31 32// CHECK: sqabs b19, b14 // encoding: [0xd3,0x79,0x20,0x5e] 33// CHECK: sqabs h21, h15 // encoding: [0xf5,0x79,0x60,0x5e] 34// CHECK: sqabs s20, s12 // encoding: [0x94,0x79,0xa0,0x5e] 35// CHECK: sqabs d18, d12 // encoding: [0x92,0x79,0xe0,0x5e] 36