1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
/* { dg-options "" } */
typedef long long ll;
typedef unsigned long long ull;
int global;
#define A(BASE, OP, AMT) \
ll BASE ## AMT (ll x) { return x OP AMT; } \
ull BASE ## AMT ## u (ull x) { return x OP AMT; }
#define B(BASE, OP) \
A (BASE, OP, 1) \
A (BASE, OP, 10) \
A (BASE, OP, 31) \
A (BASE, OP, 33) \
A (BASE, OP, 61) \
A (BASE, OP, global)
B (left, <<)
B (right, >>)
/* { dg-final { scan-assembler-not "__\[a-z\]*si3" } } */
|