xref: /llvm-project/llvm/test/tools/llvm-ml/named_operators.asm (revision 33f2a00023cb2deabbcb9884cb142419c1003855)
1; RUN: llvm-ml -filetype=s %s /Fo - | FileCheck %s
2
3.data
4
5t1 BYTE NOT 1
6; CHECK-LABEL: t1:
7; CHECK-NEXT: .byte -2
8; CHECK-NOT: .byte
9
10t2 BYTE 1 OR 2
11; CHECK-LABEL: t2:
12; CHECK-NEXT: .byte 3
13
14t3 BYTE 6 AND 10
15; CHECK-LABEL: t3:
16; CHECK-NEXT: .byte 2
17
18t4 BYTE 5 EQ 6
19   BYTE 6 EQ 6
20   BYTE 7 EQ 6
21; CHECK-LABEL: t4:
22; CHECK-NEXT: .byte 0
23; CHECK: .byte -1
24; CHECK: .byte 0
25; CHECK-NOT: .byte
26
27t5 BYTE 5 NE 6
28   BYTE 6 NE 6
29   BYTE 7 NE 6
30; CHECK-LABEL: t5:
31; CHECK-NEXT: .byte -1
32; CHECK: .byte 0
33; CHECK: .byte -1
34; CHECK-NOT: .byte
35
36t6 BYTE 5 LT 6
37   BYTE 6 LT 6
38   BYTE 7 LT 6
39; CHECK-LABEL: t6:
40; CHECK-NEXT: .byte -1
41; CHECK: .byte 0
42; CHECK: .byte 0
43; CHECK-NOT: .byte
44
45t7 BYTE 5 LE 6
46   BYTE 6 LE 6
47   BYTE 7 LE 6
48; CHECK-LABEL: t7:
49; CHECK-NEXT: .byte -1
50; CHECK: .byte -1
51; CHECK: .byte 0
52; CHECK-NOT: .byte
53
54t8 BYTE 5 GT 6
55   BYTE 6 GT 6
56   BYTE 7 GT 6
57; CHECK-LABEL: t8:
58; CHECK-NEXT: .byte 0
59; CHECK: .byte 0
60; CHECK: .byte -1
61; CHECK-NOT: .byte
62
63t9 BYTE 5 GE 6
64   BYTE 6 GE 6
65   BYTE 7 GE 6
66; CHECK-LABEL: t9:
67; CHECK-NEXT: .byte 0
68; CHECK: .byte -1
69; CHECK: .byte -1
70; CHECK-NOT: .byte
71
72t10 BYTE 6 XOR 10
73; CHECK-LABEL: t10:
74; CHECK-NEXT: .byte 12
75
76t11 BYTE 1 SHL 2
77    BYTE 2 SHL 3
78    BYTE 3 SHL 1
79; CHECK-LABEL: t11:
80; CHECK-NEXT: .byte 4
81; CHECK: .byte 16
82; CHECK: .byte 6
83; CHECK-NOT: .byte
84
85t12 BYTE 6 SHR 2
86    BYTE 16 SHR 3
87    BYTE 7 SHR 1
88; CHECK-LABEL: t12:
89; CHECK-NEXT: .byte 1
90; CHECK: .byte 2
91; CHECK: .byte 3
92; CHECK-NOT: .byte
93
94.code
95
96t13:
97xor eax, Not 1
98; CHECK-LABEL: t13:
99; CHECK-NEXT: xor eax, -2
100
101t14:
102xor eax, 1 oR 2
103; CHECK-LABEL: t14:
104; CHECK-NEXT: xor eax, 3
105
106t15:
107xor eax, 6 ANd 10
108; CHECK-LABEL: t15:
109; CHECK-NEXT: xor eax, 2
110
111t16:
112xor eax, 5 Eq 6
113xor eax, 6 eQ 6
114xor eax, 7 eq 6
115; CHECK-LABEL: t16:
116; CHECK-NEXT: xor eax, 0
117; CHECK-NEXT: xor eax, -1
118; CHECK-NEXT: xor eax, 0
119
120t17:
121xor eax, 5 Ne 6
122xor eax, 6 nE 6
123xor eax, 7 ne 6
124; CHECK-LABEL: t17:
125; CHECK-NEXT: xor eax, -1
126; CHECK-NEXT: xor eax, 0
127; CHECK-NEXT: xor eax, -1
128
129t18:
130xor eax, 5 Lt 6
131xor eax, 6 lT 6
132xor eax, 7 lt 6
133; CHECK-LABEL: t18:
134; CHECK-NEXT: xor eax, -1
135; CHECK-NEXT: xor eax, 0
136; CHECK-NEXT: xor eax, 0
137
138t19:
139xor eax, 5 Le 6
140xor eax, 6 lE 6
141xor eax, 7 le 6
142; CHECK-LABEL: t19:
143; CHECK-NEXT: xor eax, -1
144; CHECK-NEXT: xor eax, -1
145; CHECK-NEXT: xor eax, 0
146
147t20:
148xor eax, 5 Gt 6
149xor eax, 6 gT 6
150xor eax, 7 gt 6
151; CHECK-LABEL: t20:
152; CHECK-NEXT: xor eax, 0
153; CHECK-NEXT: xor eax, 0
154; CHECK-NEXT: xor eax, -1
155
156t21:
157xor eax, 5 Ge 6
158xor eax, 6 gE 6
159xor eax, 7 ge 6
160; CHECK-LABEL: t21:
161; CHECK-NEXT: xor eax, 0
162; CHECK-NEXT: xor eax, -1
163; CHECK-NEXT: xor eax, -1
164
165t22:
166xor eax, 6 xOR 10
167; CHECK-LABEL: t22:
168; CHECK-NEXT: xor eax, 12
169
170t23:
171xor eax, 1 shl 2
172xor eax, 2 shL 3
173xor eax, 3 SHl 1
174; CHECK-LABEL: t23:
175; CHECK-NEXT: xor eax, 4
176; CHECK-NEXT: xor eax, 16
177; CHECK-NEXT: xor eax, 6
178
179t24:
180xor eax, 6 shr 2
181xor eax, 16 shR 3
182xor eax, 7 SHr 1
183; CHECK-LABEL: t24:
184; CHECK-NEXT: xor eax, 1
185; CHECK-NEXT: xor eax, 2
186; CHECK-NEXT: xor eax, 3
187
188END
189