PR inline-asm/84742
[official-gcc.git] / gcc / testsuite / gcc.c-torture / execute / 20180131-1.c
blob76e264bf9671134cc0ccfb2695cdcd4e5e316533
1 /* PR rtl-optimization/84071 */
2 /* Reported by Wilco <wilco@gcc.gnu.org> */
4 extern void abort (void);
6 typedef union
8 signed short ss;
9 unsigned short us;
10 int x;
11 } U;
13 int f(int x, int y, int z, int a, U u) __attribute__((noclone, noinline));
15 int f(int x, int y, int z, int a, U u)
17 return (u.ss <= 0) + u.us;
20 int main (void)
22 U u = { .ss = -1 };
24 if (f (0, 0, 0, 0, u) != (1 << sizeof (short) * 8))
25 abort ();
27 return 0;