http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56809
Steven Bosscher <steven at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |wrong-code Status|UNCONFIRMED |NEW Last reconfirmed|2013-04-02 00:00:00 |2013-04-03 CC|steven at gcc dot gnu.org, | |stevenb.gcc at gmail dot | |com | Component|middle-end |target Ever Confirmed|0 |1 --- Comment #6 from Steven Bosscher <steven at gcc dot gnu.org> 2013-04-03 12:47:20 UTC --- Target bug, this is wrong: rtx diff_vec = PATTERN (next_real_insn (operands[2])); A jump_table_data is not a real insn. Before my patch this worked by accident because the jump table would hide in a JUMP_INSN and next_real_insn returned any JUMP_P insn. Use next_active_insn instead.