2018-05-15 Richard Biener <rguenther@suse.de>
[official-gcc.git] / gcc / testsuite / gcc.dg / guality / bswaptest.c
blobc924f6e2fc8c6d54e86cb5c901b803d319f816ca
1 /* { dg-do run { target { { i?86-*-* x86_64-*-* } && lp64 } } } */
2 /* { dg-options "-g" } */
4 volatile int vv;
6 __attribute__((noclone, noinline)) long
7 foo (long x)
9 long f = __builtin_bswap64 (x);
10 long g = f;
11 asm volatile ("" : "+r" (f));
12 vv++; /* { dg-final { gdb-test 12 "g" "f" } } */
13 return f;
16 __attribute__((noclone, noinline)) int
17 bar (int x)
19 int f = __builtin_bswap32 (x);
20 int g = f;
21 asm volatile ("" : "+r" (f));
22 vv++; /* { dg-final { gdb-test 22 "g" "f" } } */
23 return f;
26 int
27 main ()
29 foo (0x123456789abcde0fUL);
30 bar (0x12345678);
31 return 0;