Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/gcc.dg/pr18628.c @ 131:84e7813d76e9
gcc-8.2
author | mir3636 |
---|---|
date | Thu, 25 Oct 2018 07:37:49 +0900 |
parents | 04ced10e8804 |
children |
line wrap: on
line source
/* { dg-do link } */ /* { dg-options "-O2" } */ /* PR middle-end/18628 exposed a problem in which cse folded a load from a jump table into the label that was the target of the branch. Unfortunately, the indirect jump was moved to a different basic block, and the LABEL_REF copied to the register wasn't enough to keep the cfg from optimizing the otherwise-unused label away. So we ended up with a dangling reference to the label. */ int i; int main() { for (;;) { switch (i) { case 0: case 1: return 1; case 2: case 3: return 0; case 5: --i; } } }