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