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