URL
https://opencores.org/ocsvn/scarts/scarts/trunk
Subversion Repositories scarts
[/] [scarts/] [trunk/] [toolchain/] [scarts-gcc/] [gcc-4.1.1/] [gcc/] [testsuite/] [gcc.dg/] [pr20017.c] - Rev 12
Compare with Previous | Blame | View Log
/* 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-*-* } && ilp32 } } } */ 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; }