Commit 1bba6199 by Richard Henderson Committed by Richard Henderson

gcse.c (pre_insert_insn): Tweek to notice that calls do not always end basic…

gcse.c (pre_insert_insn): Tweek to notice that calls do not always end basic blocks for abnormal edge reasons.

        * gcse.c (pre_insert_insn): Tweek to notice that calls do not
        always end basic blocks for abnormal edge reasons.

From-SVN: r22897
parent c678a7f8
Wed Oct 7 17:33:39 1998 Richard Henderson <rth@cygnus.com>
* gcse.c (pre_insert_insn): Tweek to notice that calls do not
always end basic blocks for abnormal edge reasons.
Wed Oct 7 14:40:43 1998 Nick Clifton <nickc@cygnus.com> Wed Oct 7 14:40:43 1998 Nick Clifton <nickc@cygnus.com>
* config/i386/i386.h: Remove definition of * config/i386/i386.h: Remove definition of
......
...@@ -4376,7 +4376,10 @@ pre_insert_insn (expr, bb) ...@@ -4376,7 +4376,10 @@ pre_insert_insn (expr, bb)
} }
/* Likewise if the last insn is a call, as will happen in the presence /* Likewise if the last insn is a call, as will happen in the presence
of exception handling. */ of exception handling. */
else if (GET_CODE (insn) == CALL_INSN) /* ??? The flag_exceptions test is not exact. We don't know if we are
actually in an eh region. Fix flow to tell us this. */
else if (GET_CODE (insn) == CALL_INSN
&& (current_function_has_nonlocal_label || flag_exceptions))
{ {
HARD_REG_SET parm_regs; HARD_REG_SET parm_regs;
int nparm_regs; int nparm_regs;
...@@ -4389,6 +4392,8 @@ pre_insert_insn (expr, bb) ...@@ -4389,6 +4392,8 @@ pre_insert_insn (expr, bb)
/* It should always be the case that we can put these instructions /* It should always be the case that we can put these instructions
anywhere in the basic block. Check this. */ anywhere in the basic block. Check this. */
/* ??? Well, it would be the case if we'd split all critical edges.
Since we didn't, we may very well abort. */
if (!TEST_BIT (pre_antloc[bb], expr->bitmap_index) if (!TEST_BIT (pre_antloc[bb], expr->bitmap_index)
&& !TEST_BIT (pre_transp[bb], expr->bitmap_index)) && !TEST_BIT (pre_transp[bb], expr->bitmap_index))
abort (); abort ();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment