diff options
Diffstat (limited to 'gcc/testsuite/gcc.dg/tree-ssa/pr32540-1.c')
-rw-r--r-- | gcc/testsuite/gcc.dg/tree-ssa/pr32540-1.c | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/pr32540-1.c b/gcc/testsuite/gcc.dg/tree-ssa/pr32540-1.c new file mode 100644 index 000000000..f5a444806 --- /dev/null +++ b/gcc/testsuite/gcc.dg/tree-ssa/pr32540-1.c @@ -0,0 +1,36 @@ +/* { dg-do compile } */ +/* { dg-options "-O3 -ftree-pre" } */ + +int f(void); +void acceptloop_th(int *t) { + int options = 0; + if (f()) options |= 0x1 << 1; + if (f()) options |= 0x1 << 2; + if (f()) options |= 0x1 << 3; + if (f()) options |= 0x1 << 4; + if (f()) options |= 0x1 << 5; + if (f()) options |= 0x1 << 6; + if (f()) options |= 0x1 << 7; + if (f()) options |= 0x1 << 8; + if (f()) options |= 0x1 << 9; + if (f()) options |= 0x1 << 10; + if (f()) options |= 0x1 << 11; + if (f()) options |= 0x1 << 12; + if (f()) options |= 0x1 << 13; + if (f()) options |= 0x1 << 14; + if (f()) options |= 0x1 << 15; +#if(__SIZEOF_INT__ >= 4) + if (f()) options |= 0x1 << 16; + if (f()) options |= 0x1 << 17; + if (f()) options |= 0x1 << 18; + if (f()) options |= 0x1 << 19; + if (f()) options |= 0x1 << 20; + if (f()) options |= 0x1 << 21; + if (f()) options |= 0x1 << 22; + if (f()) options |= 0x1 << 23; + if (f()) options |= 0x1 << 24; + if (f()) options |= 0x1 << 25; + if (f()) options |= 0x1 << 26; +#endif + if (f()) *t = options; +} |