1 // RUN
: llvm-mc
-triple aarch64-none-linux-gnu
-mattr
=+neon
,+fullfp16
-show-encoding
< %s | FileCheck
%s
3 // Check that the assembler can handle the documented syntax for AArch64
5 //----------------------------------------------------------------------
6 // Vector Absolute Compare Mask Less Than
Or Equal
(Floating Point
)
7 // FACLE is alias for FACGE with operands reversed
8 //----------------------------------------------------------------------
9 facge v0.4h
, v31.4h
, v16.4h
10 facge v4.8h
, v7.8h
, v15.8h
11 facge v0.2s
, v31.2s
, v16.2s
12 facge v4.4s
, v7.4s
, v15.4s
13 facge v29.2d
, v2.2d
, v5.2d
14 facle v0.4h
, v16.4h
, v31.4h
15 facle v4.8h
, v15.8h
, v7.8h
16 facle v0.2s
, v16.2s
, v31.2s
17 facle v4.4s
, v15.4s
, v7.4s
18 facle v29.2d
, v5.2d
, v2.2d
20 // CHECK
: facge v0.4h
, v31.4h
, v16.4h
// encoding
: [0xe0,0x2f,0x50,0x2e]
21 // CHECK
: facge v4.8h
, v7.8h
, v15.8h
// encoding
: [0xe4,0x2c,0x4f,0x6e]
22 // CHECK
: facge v0.2s
, v31.2s
, v16.2s
// encoding
: [0xe0,0xef,0x30,0x2e]
23 // CHECK
: facge v4.4s
, v7.4s
, v15.4s
// encoding
: [0xe4,0xec,0x2f,0x6e]
24 // CHECK
: facge v29.2d
, v2.2d
, v5.2d
// encoding
: [0x5d,0xec,0x65,0x6e]
25 // CHECK
: facge v0.4h
, v31.4h
, v16.4h
// encoding
: [0xe0,0x2f,0x50,0x2e]
26 // CHECK
: facge v4.8h
, v7.8h
, v15.8h
// encoding
: [0xe4,0x2c,0x4f,0x6e]
27 // CHECK
: facge v0.2s
, v31.2s
, v16.2s
// encoding
: [0xe0,0xef,0x30,0x2e]
28 // CHECK
: facge v4.4s
, v7.4s
, v15.4s
// encoding
: [0xe4,0xec,0x2f,0x6e]
29 // CHECK
: facge v29.2d
, v2.2d
, v5.2d
// encoding
: [0x5d,0xec,0x65,0x6e]
31 //----------------------------------------------------------------------
32 // Vector Absolute Compare Mask Less Than
(Floating Point
)
33 // FACLT is alias for FACGT with operands reversed
34 //----------------------------------------------------------------------
35 facgt v3.4h
, v8.4h
, v12.4h
36 facgt v31.8h
, v29.8h
, v28.8h
37 facgt v31.4s
, v29.4s
, v28.4s
38 facgt v3.2s
, v8.2s
, v12.2s
39 facgt v17.2d
, v15.2d
, v13.2d
40 faclt v3.4h
, v12.4h
, v8.4h
41 faclt v31.8h
, v28.8h
, v29.8h
42 faclt v31.4s
, v28.4s
, v29.4s
43 faclt v3.2s
, v12.2s
, v8.2s
44 faclt v17.2d
, v13.2d
, v15.2d
46 // CHECK
: facgt v3.4h
, v8.4h
, v12.4h
// encoding
: [0x03,0x2d,0xcc,0x2e]
47 // CHECK
: facgt v31.8h
, v29.8h
, v28.8h
// encoding
: [0xbf,0x2f,0xdc,0x6e]
48 // CHECK
: facgt v31.4s
, v29.4s
, v28.4s
// encoding
: [0xbf,0xef,0xbc,0x6e]
49 // CHECK
: facgt v3.2s
, v8.2s
, v12.2s
// encoding
: [0x03,0xed,0xac,0x2e]
50 // CHECK
: facgt v17.2d
, v15.2d
, v13.2d
// encoding
: [0xf1,0xed,0xed,0x6e]
51 // CHECK
: facgt v3.4h
, v8.4h
, v12.4h
// encoding
: [0x03,0x2d,0xcc,0x2e]
52 // CHECK
: facgt v31.8h
, v29.8h
, v28.8h
// encoding
: [0xbf,0x2f,0xdc,0x6e]
53 // CHECK
: facgt v31.4s
, v29.4s
, v28.4s
// encoding
: [0xbf,0xef,0xbc,0x6e]
54 // CHECK
: facgt v3.2s
, v8.2s
, v12.2s
// encoding
: [0x03,0xed,0xac,0x2e]
55 // CHECK
: facgt v17.2d
, v15.2d
, v13.2d
// encoding
: [0xf1,0xed,0xed,0x6e]