mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-13 20:32:21 +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
92 lines
3.4 KiB
ArmAsm
92 lines
3.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 Compare Bitwise Equal
|
|
//----------------------------------------------------------------------
|
|
|
|
cmeq d20, d21, d22
|
|
|
|
// CHECK: cmeq d20, d21, d22 // encoding: [0xb4,0x8e,0xf6,0x7e]
|
|
|
|
//----------------------------------------------------------------------
|
|
// Scalar Compare Bitwise Equal To Zero
|
|
//----------------------------------------------------------------------
|
|
|
|
cmeq d20, d21, #0x0
|
|
|
|
// CHECK: cmeq d20, d21, #{{0x0|0}} // encoding: [0xb4,0x9a,0xe0,0x5e]
|
|
|
|
//----------------------------------------------------------------------
|
|
// Scalar Compare Unsigned Higher Or Same
|
|
//----------------------------------------------------------------------
|
|
|
|
cmhs d20, d21, d22
|
|
|
|
// CHECK: cmhs d20, d21, d22 // encoding: [0xb4,0x3e,0xf6,0x7e]
|
|
|
|
//----------------------------------------------------------------------
|
|
// Scalar Compare Signed Greather Than Or Equal
|
|
//----------------------------------------------------------------------
|
|
|
|
cmge d20, d21, d22
|
|
|
|
// CHECK: cmge d20, d21, d22 // encoding: [0xb4,0x3e,0xf6,0x5e]
|
|
|
|
//----------------------------------------------------------------------
|
|
// Scalar Compare Signed Greather Than Or Equal To Zero
|
|
//----------------------------------------------------------------------
|
|
|
|
cmge d20, d21, #0x0
|
|
|
|
// CHECK: cmge d20, d21, #{{0x0|0}} // encoding: [0xb4,0x8a,0xe0,0x7e]
|
|
|
|
//----------------------------------------------------------------------
|
|
// Scalar Compare Unsigned Higher
|
|
//----------------------------------------------------------------------
|
|
|
|
cmhi d20, d21, d22
|
|
|
|
// CHECK: cmhi d20, d21, d22 // encoding: [0xb4,0x36,0xf6,0x7e]
|
|
//----------------------------------------------------------------------
|
|
// Scalar Compare Signed Greater Than
|
|
//----------------------------------------------------------------------
|
|
|
|
cmgt d20, d21, d22
|
|
|
|
// CHECK: cmgt d20, d21, d22 // encoding: [0xb4,0x36,0xf6,0x5e]
|
|
|
|
//----------------------------------------------------------------------
|
|
// Scalar Compare Signed Greater Than Zero
|
|
//----------------------------------------------------------------------
|
|
|
|
cmgt d20, d21, #0x0
|
|
|
|
// CHECK: cmgt d20, d21, #{{0x0|0}} // encoding: [0xb4,0x8a,0xe0,0x5e]
|
|
|
|
//----------------------------------------------------------------------
|
|
// Scalar Compare Signed Less Than Or Equal To Zero
|
|
//----------------------------------------------------------------------
|
|
|
|
cmle d20, d21, #0x0
|
|
|
|
// CHECK: cmle d20, d21, #{{0x0|0}} // encoding: [0xb4,0x9a,0xe0,0x7e]
|
|
|
|
//----------------------------------------------------------------------
|
|
// Scalar Compare Less Than Zero
|
|
//----------------------------------------------------------------------
|
|
|
|
cmlt d20, d21, #0x0
|
|
|
|
// CHECK: cmlt d20, d21, #{{0x0|0}} // encoding: [0xb4,0xaa,0xe0,0x5e]
|
|
|
|
//----------------------------------------------------------------------
|
|
// Scalar Compare Bitwise Test Bits
|
|
//----------------------------------------------------------------------
|
|
|
|
cmtst d20, d21, d22
|
|
|
|
// CHECK: cmtst d20, d21, d22 // encoding: [0xb4,0x8e,0xf6,0x5e]
|