On Mon, Mar 17, 2014 at 12:51 PM, Paulo Matos wrote: > Why is jump_table_data an active_insn? > int > active_insn_p (const_rtx insn) > { > return (CALL_P (insn) || JUMP_P (insn) > || JUMP_TABLE_DATA_P (insn) /* FIXME */ > || (NONJUMP_INSN_P (insn) > && (! reload_completed > || (GET_CODE (PATTERN (insn)) != USE > && GET_CODE (PATTERN (insn)) != CLOBBER)))); > } > > It is clear that someone [Steven Bosscher] thought it needs fixing but what's > the problem with just removing it from the OR-expression?
Places using active_insn_p, next_active_insn, prev_active_insn, etc., need to be audited to make sure it's safe to remove JUMP_TABLE_DATA from the OR-expression. I've done most of that work, but it needs finishing and for that I need to find some time. See http://gcc.gnu.org/ml/gcc-patches/2013-11/msg03122.html Ciao! Steven