1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
| // RUN: llvm-mc -triple x86_64-unknown-unknown -x86-asm-syntax=att %s | FileCheck %s
.intel_syntax
// CHECK: andl $3, %ecx
and ecx, 1+2
// CHECK: andl $3, %ecx
and ecx, 1|2
// CHECK: andl $3, %ecx
and ecx, 1 or 2
// CHECK: andl $3, %ecx
and ecx, 1 OR 2
// CHECK: andl $3, %ecx
and ecx, 1*3
// CHECK: andl $1, %ecx
and ecx, 1&3
// CHECK: andl $1, %ecx
and ecx, 1 and 3
// CHECK: andl $1, %ecx
and ecx, 1 AND 3
// CHECK: andl $0, %ecx
and ecx, (1&2)
// CHECK: andl $0, %ecx
and ecx, (1 and 2)
// CHECK: andl $0, %ecx
and ecx, (1 AND 2)
// CHECK: andl $3, %ecx
and ecx, ((1)|2)
// CHECK: andl $3, %ecx
and ecx, ((1) or 2)
// CHECK: andl $3, %ecx
and ecx, ((1) OR 2)
// CHECK: andl $1, %ecx
and ecx, 1&2+3
// CHECK: andl $1, %ecx
and ecx, 1 and 2+3
// CHECK: andl $1, %ecx
and ecx, 1 AND 2+3
// CHECK: addl $4938, %eax
add eax, 9876 >> 1
// CHECK: addl $4938, %eax
add eax, 9876 shr 1
// CHECK: addl $4938, %eax
add eax, 9876 SHR 1
// CHECK: addl $19752, %eax
add eax, 9876 << 1
// CHECK: addl $19752, %eax
add eax, 9876 shl 1
// CHECK: addl $19752, %eax
add eax, 9876 SHL 1
// CHECK: addl $5, %eax
add eax, 6 ^ 3
// CHECK: addl $5, %eax
add eax, 6 xor 3
// CHECK: addl $5, %eax
add eax, 6 XOR 3
// CHECK: addl $5, %eax
add eax, 6 XOR 3 shl 1 SHR 1
// CHECK: movl $-9, %eax
mov eax, not(1 shl 3)
// CHECK: movl $-2, %eax
mov eax, ~(0x8 shr 3)
// CHECK: movl $-4, %eax
mov eax, not(1 or 3)
// CHECK: movl $-2, %eax
mov eax, -(1 xor 3)
// CHECK: movl $-2, %eax
mov eax, not(1 and 3)
// CHECK: movl $3, %eax
mov eax, not(not 3)
// CHECK: movl $-3, %eax
mov eax, ~(5 mod 3)
// CHECK: movl $-2, %eax
mov eax, (-5 mod 3)
// CHECK: movl $-3, %eax
mov eax, ~(5 % 3)
// CHECK: movl $-2, %eax
mov eax, (-5 % 3)
// CHECK: movl $-2, %eax
mov eax, -5 % 3
|