1 /* PR target/55147 */ 2 /* { dg-do run } */ 3 /* { dg-options "-O1" } */ 4 /* { dg-additional-options "-march=i486" { target ia32 } } */ 5 6 extern void abort (void); 7 8 __attribute__((noclone, noinline)) unsigned int foo(unsigned long long * p,int i)9foo (unsigned long long *p, int i) 10 { 11 return __builtin_bswap64 (p[i]); 12 } 13 14 int main()15main () 16 { 17 unsigned long long p[64]; 18 int i; 19 for (i = 0; i < 64; i++) 20 p[i] = 0x123456789abcdef0ULL ^ (1ULL << i) ^ (1ULL << (63 - i)); 21 for (i = 0; i < 64; i++) 22 if (foo (p, i) != __builtin_bswap32 (p[i] >> 32)) 23 abort (); 24 return 0; 25 } 26