Mercurial > hg > CbC > CbC_gcc
comparison gcc/testsuite/gcc.dg/pr80693.c @ 131:84e7813d76e9
gcc-8.2
author | mir3636 |
---|---|
date | Thu, 25 Oct 2018 07:37:49 +0900 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
111:04ced10e8804 | 131:84e7813d76e9 |
---|---|
1 /* { dg-do run } */ | |
2 /* { dg-options "-O -fno-tree-coalesce-vars" } */ | |
3 typedef unsigned char u8; | |
4 typedef unsigned short u16; | |
5 typedef unsigned u32; | |
6 typedef unsigned long long u64; | |
7 | |
8 static u64 __attribute__((noinline, noclone)) | |
9 foo(u8 u8_0, u16 u16_0, u32 u32_0, u64 u64_0, u16 u16_1) | |
10 { | |
11 u16_1 += 0x1051; | |
12 u16_1 &= 1; | |
13 u8_0 <<= u32_0 & 7; | |
14 u16_0 -= !u16_1; | |
15 u16_1 >>= ((u16)-u8_0 != 0xff); | |
16 return u8_0 + u16_0 + u64_0 + u16_1; | |
17 } | |
18 | |
19 int | |
20 main (void) | |
21 { | |
22 u64 x = foo(1, 1, 0xffff, 0, 1); | |
23 if (x != 0x80) | |
24 __builtin_abort(); | |
25 return 0; | |
26 } |