xref: /llvm-project/llvm/test/MC/AArch64/LSFE/stfmax.s (revision 67ff5ba9af9754261abe11d762af11532a816126)
1// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+lsfe < %s \
2// RUN:        | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST
3// RUN: not llvm-mc -triple=aarch64 -show-encoding < %s 2>&1 \
4// RUN:        | FileCheck %s --check-prefix=CHECK-ERROR
5// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+lsfe < %s \
6// RUN:        | llvm-objdump -d --mattr=+lsfe - | FileCheck %s --check-prefix=CHECK-INST
7// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+lsfe < %s \
8// RUN:        | llvm-objdump -d --mattr=-lsfe - | FileCheck %s --check-prefix=CHECK-UNKNOWN
9// Disassemble encoding and check the re-encoding (-show-encoding) matches.
10// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+lsfe < %s \
11// RUN:        | sed '/.text/d' | sed 's/.*encoding: //g' \
12// RUN:        | llvm-mc -triple=aarch64 -mattr=+lsfe -disassemble -show-encoding \
13// RUN:        | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST
14
15//------------------------------------------------------------------------------
16// STFMAX
17//------------------------------------------------------------------------------
18
19stfmax h0, [x2]
20// CHECK-INST: stfmax h0, [x2]
21// CHECK-ENCODING: [0x5f,0xc0,0x20,0x7c]
22// CHECK-ERROR: instruction requires: lsfe
23// CHECK-UNKNOWN: 7c20c05f <unknown>
24
25stfmax h2, [sp]
26// CHECK-INST: stfmax h2, [sp]
27// CHECK-ENCODING: [0xff,0xc3,0x22,0x7c]
28// CHECK-ERROR: instruction requires: lsfe
29// CHECK-UNKNOWN: 7c22c3ff <unknown>
30
31stfmax s0, [x2]
32// CHECK-INST: stfmax s0, [x2]
33// CHECK-ENCODING: [0x5f,0xc0,0x20,0xbc]
34// CHECK-ERROR: instruction requires: lsfe
35// CHECK-UNKNOWN: bc20c05f <unknown>
36
37stfmax s2, [sp]
38// CHECK-INST: stfmax s2, [sp]
39// CHECK-ENCODING: [0xff,0xc3,0x22,0xbc]
40// CHECK-ERROR: instruction requires: lsfe
41// CHECK-UNKNOWN: bc22c3ff <unknown>
42
43stfmax d0, [x2]
44// CHECK-INST: stfmax d0, [x2]
45// CHECK-ENCODING: [0x5f,0xc0,0x20,0xfc]
46// CHECK-ERROR: instruction requires: lsfe
47// CHECK-UNKNOWN: fc20c05f <unknown>
48
49stfmax d2, [sp]
50// CHECK-INST: stfmax d2, [sp]
51// CHECK-ENCODING: [0xff,0xc3,0x22,0xfc]
52// CHECK-ERROR: instruction requires: lsfe
53// CHECK-UNKNOWN: fc22c3ff <unknown>
54
55// -- stfmaxl
56
57stfmaxl h0, [x2]
58// CHECK-INST: stfmaxl h0, [x2]
59// CHECK-ENCODING: [0x5f,0xc0,0x60,0x7c]
60// CHECK-ERROR: instruction requires: lsfe
61// CHECK-UNKNOWN: 7c60c05f <unknown>
62
63stfmaxl h2, [sp]
64// CHECK-INST: stfmaxl h2, [sp]
65// CHECK-ENCODING: [0xff,0xc3,0x62,0x7c]
66// CHECK-ERROR: instruction requires: lsfe
67// CHECK-UNKNOWN: 7c62c3ff <unknown>
68
69stfmaxl s0, [x2]
70// CHECK-INST: stfmaxl s0, [x2]
71// CHECK-ENCODING: [0x5f,0xc0,0x60,0xbc]
72// CHECK-ERROR: instruction requires: lsfe
73// CHECK-UNKNOWN: bc60c05f <unknown>
74
75stfmaxl s2, [sp]
76// CHECK-INST: stfmaxl s2, [sp]
77// CHECK-ENCODING: [0xff,0xc3,0x62,0xbc]
78// CHECK-ERROR: instruction requires: lsfe
79// CHECK-UNKNOWN: bc62c3ff <unknown>
80
81stfmaxl d0, [x2]
82// CHECK-INST: stfmaxl d0, [x2]
83// CHECK-ENCODING: [0x5f,0xc0,0x60,0xfc]
84// CHECK-ERROR: instruction requires: lsfe
85// CHECK-UNKNOWN: fc60c05f <unknown>
86
87stfmaxl d2, [sp]
88// CHECK-INST: stfmaxl d2, [sp]
89// CHECK-ENCODING: [0xff,0xc3,0x62,0xfc]
90// CHECK-ERROR: instruction requires: lsfe
91// CHECK-UNKNOWN: fc62c3ff <unknown>
92
93//------------------------------------------------------------------------------
94// STBFMAX
95//------------------------------------------------------------------------------
96
97stbfmax h0, [x2]
98// CHECK-INST: stbfmax h0, [x2]
99// CHECK-ENCODING: [0x5f,0xc0,0x20,0x3c]
100// CHECK-ERROR: instruction requires: lsfe
101// CHECK-UNKNOWN: 3c20c05f <unknown>
102
103stbfmax h2, [sp]
104// CHECK-INST: stbfmax h2, [sp]
105// CHECK-ENCODING: [0xff,0xc3,0x22,0x3c]
106// CHECK-ERROR: instruction requires: lsfe
107// CHECK-UNKNOWN: 3c22c3ff <unknown>
108
109// -- stbfmaxl
110
111stbfmaxl h0, [x2]
112// CHECK-INST: stbfmaxl h0, [x2]
113// CHECK-ENCODING: [0x5f,0xc0,0x60,0x3c]
114// CHECK-ERROR: instruction requires: lsfe
115// CHECK-UNKNOWN: 3c60c05f <unknown>
116
117stbfmaxl h2, [sp]
118// CHECK-INST: stbfmaxl h2, [sp]
119// CHECK-ENCODING: [0xff,0xc3,0x62,0x3c]
120// CHECK-ERROR: instruction requires: lsfe
121// CHECK-UNKNOWN: 3c62c3ff <unknown>