1*9880d681SAndroid Build Coastguard Worker// RUN: llvm-mc -triple aarch64-none-linux-gnu -mattr=+neon,+fullfp16 -show-encoding < %s | FileCheck %s 2*9880d681SAndroid Build Coastguard Worker 3*9880d681SAndroid Build Coastguard Worker// Check that the assembler can handle the documented syntax for AArch64 4*9880d681SAndroid Build Coastguard Worker 5*9880d681SAndroid Build Coastguard Worker//---------------------------------------------------------------------- 6*9880d681SAndroid Build Coastguard Worker// Scalar Absolute Value 7*9880d681SAndroid Build Coastguard Worker//---------------------------------------------------------------------- 8*9880d681SAndroid Build Coastguard Worker 9*9880d681SAndroid Build Coastguard Worker abs d29, d24 10*9880d681SAndroid Build Coastguard Worker 11*9880d681SAndroid Build Coastguard Worker// CHECK: abs d29, d24 // encoding: [0x1d,0xbb,0xe0,0x5e] 12*9880d681SAndroid Build Coastguard Worker 13*9880d681SAndroid Build Coastguard Worker//---------------------------------------------------------------------- 14*9880d681SAndroid Build Coastguard Worker// Scalar Floating-point Absolute Difference 15*9880d681SAndroid Build Coastguard Worker//---------------------------------------------------------------------- 16*9880d681SAndroid Build Coastguard Worker 17*9880d681SAndroid Build Coastguard Worker fabd h29, h24, h20 18*9880d681SAndroid Build Coastguard Worker fabd s29, s24, s20 19*9880d681SAndroid Build Coastguard Worker fabd d29, d24, d20 20*9880d681SAndroid Build Coastguard Worker 21*9880d681SAndroid Build Coastguard Worker// CHECK: fabd h29, h24, h20 // encoding: [0x1d,0x17,0xd4,0x7e] 22*9880d681SAndroid Build Coastguard Worker// CHECK: fabd s29, s24, s20 // encoding: [0x1d,0xd7,0xb4,0x7e] 23*9880d681SAndroid Build Coastguard Worker// CHECK: fabd d29, d24, d20 // encoding: [0x1d,0xd7,0xf4,0x7e] 24*9880d681SAndroid Build Coastguard Worker 25*9880d681SAndroid Build Coastguard Worker//---------------------------------------------------------------------- 26*9880d681SAndroid Build Coastguard Worker// Scalar Signed Saturating Absolute Value 27*9880d681SAndroid Build Coastguard Worker//---------------------------------------------------------------------- 28*9880d681SAndroid Build Coastguard Worker 29*9880d681SAndroid Build Coastguard Worker sqabs b19, b14 30*9880d681SAndroid Build Coastguard Worker sqabs h21, h15 31*9880d681SAndroid Build Coastguard Worker sqabs s20, s12 32*9880d681SAndroid Build Coastguard Worker sqabs d18, d12 33*9880d681SAndroid Build Coastguard Worker 34*9880d681SAndroid Build Coastguard Worker// CHECK: sqabs b19, b14 // encoding: [0xd3,0x79,0x20,0x5e] 35*9880d681SAndroid Build Coastguard Worker// CHECK: sqabs h21, h15 // encoding: [0xf5,0x79,0x60,0x5e] 36*9880d681SAndroid Build Coastguard Worker// CHECK: sqabs s20, s12 // encoding: [0x94,0x79,0xa0,0x5e] 37*9880d681SAndroid Build Coastguard Worker// CHECK: sqabs d18, d12 // encoding: [0x92,0x79,0xe0,0x5e] 38