1/* PR target/49504 */ 2/* { dg-do run { target { x32 } } } */ 3/* { dg-options "-O" } */ 4 5unsigned long long 6foo (const void* p, unsigned long long q) 7{ 8 unsigned long long a = (((unsigned long long) ((unsigned long) p)) + q) >> 32; 9 return a; 10} 11 12int 13main () 14{ 15 if (foo (foo, 0x100000000ULL) != 0x1) 16 __builtin_abort (); 17 return 0; 18} 19