1 /* PR rtl-optimization/51933 */
4 static unsigned char v2
[256], v3
[256];
6 __attribute__((noclone
, noinline
)) void
9 #if defined(__s390__) && !defined(__zarch__)
10 /* S/390 31 bit cannot deal with more than one literal pool
11 reference per insn. */
12 asm volatile ("" : : "g" (&v1
) : "memory");
13 asm volatile ("" : : "g" (&v2
[0]));
14 asm volatile ("" : : "g" (&v3
[0]));
16 asm volatile ("" : : "g" (&v1
), "g" (&v2
[0]), "g" (&v3
[0]) : "memory");
20 __attribute__((noclone
, noinline
)) int
21 bar (const int x
, const unsigned short *y
, char *z
)
27 for (i
= 0; i
< x
; i
++)
30 z
[i
] = u
< 0x0100 ? v2
[u
] : v3
[u
& 0xff];
41 unsigned char c
[18] = "abcdefghijklmnopq";
43 for (i
= 0; i
< 256; i
++)
48 for (i
= 0; i
< 18; i
++)
55 if (bar (17, s
, buf
) != 17
56 || __builtin_memcmp (buf
, "abcdeghhijkmmnoqq", 18) != 0)