1 /* { dg-options "" } */
2 /* { dg-options "-mcpu=ultrasparc -mv8plus" { target sparc-*-* } } */
3
foo(unsigned long long x)4 unsigned long long foo (unsigned long long x)
5 {
6 return 0x73500000735LL * x;
7 }
8
9 unsigned long long a, b;
10 unsigned long p;
11
bar(void)12 unsigned long long bar (void)
13 {
14 unsigned long long c = a | b;
15 return 0x73500000735LL * c;
16 }
17
baz(void)18 unsigned long long baz (void)
19 {
20 unsigned long long c = (p + 345) & -2;
21 return c * a;
22 }
23
main()24 main ()
25 {
26 if (foo (0x56789LL) != 0x26f32e5d26f32e5dLL)
27 abort ();
28 a = 0x8000000080000000LL;
29 b = 0x0000000180000001LL;
30 if (bar () != 0x120480000735LL)
31 abort ();
32 p = 0xffffffff;
33 if (baz () != 0xac00000000LL)
34 abort ();
35 exit (0);
36 }
37