Lines Matching refs:s2
6 #define XOR_REG_MEM(insn, s1, s2) \
14 : "d" (tmp), "Q" (s2) \
16 printf(#insn " %16.16lX ^ %16.16lX = %16.16lX (cc=%d)\n", s1, s2, tmp, cc); \
19 #define XOR_REG_REG(insn, s1, s2) \
27 : "d" (tmp), "d" (s2) \
29 printf(#insn " %16.16lX ^ %16.16lX = %16.16lX (cc=%d)\n", s1, s2, tmp, cc); \
32 #define XOR_REG_IMM(insn, s1, s2) \
36 asm volatile( insn(2,s2) \
43 printf(#insn " %16.16lX ^ %16.16lX = %16.16lX (cc=%d)\n", s1, (unsigned long) 0x##s2, v, cc); \
46 #define XOR_MEM_IMM(insn, s1, s2) \
50 asm volatile( #insn " %0," #s2 "\n" \
56 printf(#insn " %16.16lX ^ %16.16lX = %16.16lX (cc=%d)\n", s1, (unsigned long) s2, tmp, cc); \
60 #define memsweep(i, s2) \
62 XOR_REG_MEM(i, 0ul, s2); \
63 XOR_REG_MEM(i, 1ul, s2); \
64 XOR_REG_MEM(i, 0xfffful, s2); \
65 XOR_REG_MEM(i, 0x7ffful, s2); \
66 XOR_REG_MEM(i, 0x8000ul, s2); \
67 XOR_REG_MEM(i, 0xfffffffful, s2); \
68 XOR_REG_MEM(i, 0x80000000ul, s2); \
69 XOR_REG_MEM(i, 0x7ffffffful, s2); \
70 XOR_REG_MEM(i, 0xaaaaaaaaaaaaaaaaul, s2); \
71 XOR_REG_MEM(i, 0x8000000000000000ul, s2); \
72 XOR_REG_MEM(i, 0xfffffffffffffffful, s2); \
73 XOR_REG_MEM(i, 0x5555555555555555ul, s2); \
76 #define regsweep(i, s2) \
78 XOR_REG_REG(i, 0ul, s2); \
79 XOR_REG_REG(i, 1ul, s2); \
80 XOR_REG_REG(i, 0xfffful, s2); \
81 XOR_REG_REG(i, 0x7ffful, s2); \
82 XOR_REG_REG(i, 0x8000ul, s2); \
83 XOR_REG_REG(i, 0xfffffffful, s2); \
84 XOR_REG_REG(i, 0x80000000ul, s2); \
85 XOR_REG_REG(i, 0x7ffffffful, s2); \
86 XOR_REG_REG(i, 0xaaaaaaaaaaaaaaaaul, s2); \
87 XOR_REG_REG(i, 0x8000000000000000ul, s2); \
88 XOR_REG_REG(i, 0xfffffffffffffffful, s2); \
89 XOR_REG_REG(i, 0x5555555555555555ul, s2); \
92 #define immsweep(i, s2) \
94 XOR_REG_IMM(i, 0ul, s2); \
95 XOR_REG_IMM(i, 1ul, s2); \
96 XOR_REG_IMM(i, 0xfffful, s2); \
97 XOR_REG_IMM(i, 0x7ffful, s2); \
98 XOR_REG_IMM(i, 0x8000ul, s2); \
99 XOR_REG_IMM(i, 0xfffffffful, s2); \
100 XOR_REG_IMM(i, 0x80000000ul, s2); \
101 XOR_REG_IMM(i, 0x7ffffffful, s2); \
102 XOR_REG_IMM(i, 0xaaaaaaaaaaaaaaaaul, s2); \
103 XOR_REG_IMM(i, 0x8000000000000000ul, s2); \
104 XOR_REG_IMM(i, 0xfffffffffffffffful, s2); \
105 XOR_REG_IMM(i, 0x5555555555555555ul, s2); \
108 #define memimmsweep(i, s2) \
110 XOR_MEM_IMM(i, 0ul, s2); \
111 XOR_MEM_IMM(i, 1ul, s2); \
112 XOR_MEM_IMM(i, 0xfffful, s2); \
113 XOR_MEM_IMM(i, 0x7ffful, s2); \
114 XOR_MEM_IMM(i, 0x8000ul, s2); \
115 XOR_MEM_IMM(i, 0xfffffffful, s2); \
116 XOR_MEM_IMM(i, 0x80000000ul, s2); \
117 XOR_MEM_IMM(i, 0x7ffffffful, s2); \
118 XOR_MEM_IMM(i, 0xaaaaaaaaaaaaaaaaul, s2); \
119 XOR_MEM_IMM(i, 0x8000000000000000ul, s2); \
120 XOR_MEM_IMM(i, 0xfffffffffffffffful, s2); \
121 XOR_MEM_IMM(i, 0x5555555555555555ul, s2); \
124 #define XOR_XY(s1, s2) \
127 register unsigned long *addr asm("2") = &s2; \
135 printf("xy %16.16lX ^ %16.16lX = %16.16lX (cc=%d)\n", s1, s2, tmp, cc); \
152 #define xysweep(s2) \
154 XOR_XY(0ul, s2); \
155 XOR_XY(1ul, s2); \
156 XOR_XY(0xfffful, s2); \
157 XOR_XY(0x7ffful, s2); \
158 XOR_XY(0x8000ul, s2); \
159 XOR_XY(0xfffffffful, s2); \
160 XOR_XY(0x80000000ul, s2); \
161 XOR_XY(0x7ffffffful, s2); \
162 XOR_XY(0xaaaaaaaaaaaaaaaaul, s2); \
163 XOR_XY(0x8000000000000000ul, s2); \
164 XOR_XY(0xfffffffffffffffful, s2); \
165 XOR_XY(0x5555555555555555ul, s2); \
168 #define xiysweep(s2) \
170 XOR_XIY(0ul, s2); \
171 XOR_XIY(1ul, s2); \
172 XOR_XIY(0xfffful, s2); \
173 XOR_XIY(0x7ffful, s2); \
174 XOR_XIY(0x8000ul, s2); \
175 XOR_XIY(0xfffffffful, s2); \
176 XOR_XIY(0x80000000ul, s2); \
177 XOR_XIY(0x7ffffffful, s2); \
178 XOR_XIY(0xaaaaaaaaaaaaaaaaul, s2); \
179 XOR_XIY(0x8000000000000000ul, s2); \
180 XOR_XIY(0xfffffffffffffffful, s2); \
181 XOR_XIY(0x5555555555555555ul, s2); \