mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-26 21:32:10 +00:00
7b59710b6f
This skips a couple of compare ones due to the different syntaxt for floating-point 0.0. AArch64 does it more canonically, and we'll need to fiddle ARM64 to make it work. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@207119 91177308-0d34-0410-b5e6-96231b3b80d8
37 lines
1.4 KiB
ArmAsm
37 lines
1.4 KiB
ArmAsm
// RUN: llvm-mc -triple aarch64-none-linux-gnu -mattr=+neon -show-encoding < %s | FileCheck %s
|
|
// RUN: llvm-mc -triple arm64-none-linux-gnu -mattr=+neon -show-encoding < %s | FileCheck %s
|
|
|
|
// Check that the assembler can handle the documented syntax for AArch64
|
|
|
|
//----------------------------------------------------------------------
|
|
// Scalar Absolute Value
|
|
//----------------------------------------------------------------------
|
|
|
|
abs d29, d24
|
|
|
|
// CHECK: abs d29, d24 // encoding: [0x1d,0xbb,0xe0,0x5e]
|
|
|
|
//----------------------------------------------------------------------
|
|
// Scalar Floating-point Absolute Difference
|
|
//----------------------------------------------------------------------
|
|
|
|
fabd s29, s24, s20
|
|
fabd d29, d24, d20
|
|
|
|
// CHECK: fabd s29, s24, s20 // encoding: [0x1d,0xd7,0xb4,0x7e]
|
|
// CHECK: fabd d29, d24, d20 // encoding: [0x1d,0xd7,0xf4,0x7e]
|
|
|
|
//----------------------------------------------------------------------
|
|
// Scalar Signed Saturating Absolute Value
|
|
//----------------------------------------------------------------------
|
|
|
|
sqabs b19, b14
|
|
sqabs h21, h15
|
|
sqabs s20, s12
|
|
sqabs d18, d12
|
|
|
|
// CHECK: sqabs b19, b14 // encoding: [0xd3,0x79,0x20,0x5e]
|
|
// CHECK: sqabs h21, h15 // encoding: [0xf5,0x79,0x60,0x5e]
|
|
// CHECK: sqabs s20, s12 // encoding: [0x94,0x79,0xa0,0x5e]
|
|
// CHECK: sqabs d18, d12 // encoding: [0x92,0x79,0xe0,0x5e]
|