flow.c (init_propagate_block_info): Handle SUBREG in a jump condition expression.

* flow.c (init_propagate_block_info): Handle SUBREG in a jump
condition expression.

From-SVN: r35835
This commit is contained in:
Richard Earnshaw 2000-08-21 09:18:05 +00:00 committed by Richard Earnshaw
parent 46639003c8
commit 056b68414e
2 changed files with 13 additions and 2 deletions

View file

@ -1,3 +1,8 @@
2000-08-21 Richard Earnshaw <rearnsha@arm.com>
* flow.c (init_propagate_block_info): Handle SUBREG in a jump
condition expression.
2000-08-20 Richard Henderson <rth@cygnus.com>
* flow.c (merge_blocks_nomove): Don't seek back past the bb note.

View file

@ -3727,9 +3727,15 @@ init_propagate_block_info (bb, live, local_set, flags)
if (bitmap_operation (diff, bb_true->global_live_at_start,
bb_false->global_live_at_start, BITMAP_XOR))
{
if (GET_CODE (XEXP (cond_true, 0)) != REG)
rtx reg = XEXP (cond_true, 0);
if (GET_CODE (reg) == SUBREG)
reg = SUBREG_REG (reg);
if (GET_CODE (reg) != REG)
abort ();
SET_REGNO_REG_SET (pbi->reg_cond_reg, REGNO (XEXP (cond_true, 0)));
SET_REGNO_REG_SET (pbi->reg_cond_reg, REGNO (reg));
/* For each such register, mark it conditionally dead. */
EXECUTE_IF_SET_IN_REG_SET