Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/gcc.dg/pr20017.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
/* PR rtl-optimization/20017 After CSE/GCSE folds a switch statement to an unconditional jump, cfg_cleanup did not remove a dead jump table, confusing the CFG layout code later on. */ /* { dg-do compile } */ /* { dg-options "-O1" } */ /* { dg-options "-O1 -march=i386" { target { { i?86-*-* x86_64-*-* } && ia32 } } } */ int foo (int *buf, int *p) { int result; const int *tmp; if (*buf) return 1; result = 2; *buf = 2; tmp = buf; switch (*tmp) { case 3: case 4: case 6: case 14: return 1; case 0: result = *p; /* Fall through. */ default: if (result) return 1; } return 0; }