1 // RUN: llvm-mc -triple aarch64-none-linux-gnu -mattr=+neon,+fullfp16 -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 h29, h24, h20 18 fabd s29, s24, s20 19 fabd d29, d24, d20 20 21 // CHECK: fabd h29, h24, h20 // encoding: [0x1d,0x17,0xd4,0x7e] 22 // CHECK: fabd s29, s24, s20 // encoding: [0x1d,0xd7,0xb4,0x7e] 23 // CHECK: fabd d29, d24, d20 // encoding: [0x1d,0xd7,0xf4,0x7e] 24 25 //---------------------------------------------------------------------- 26 // Scalar Signed Saturating Absolute Value 27 //---------------------------------------------------------------------- 28 29 sqabs b19, b14 30 sqabs h21, h15 31 sqabs s20, s12 32 sqabs d18, d12 33 34 // CHECK: sqabs b19, b14 // encoding: [0xd3,0x79,0x20,0x5e] 35 // CHECK: sqabs h21, h15 // encoding: [0xf5,0x79,0x60,0x5e] 36 // CHECK: sqabs s20, s12 // encoding: [0x94,0x79,0xa0,0x5e] 37 // CHECK: sqabs d18, d12 // encoding: [0x92,0x79,0xe0,0x5e] 38