* flow.c (verify_local_live_at_start): Allow hard regs to die.
From-SVN: r37220
This commit is contained in:
parent
5a0b0c7abf
commit
6c6a14b5fc
@ -1,3 +1,7 @@
|
|||||||
|
Fri Nov 3 05:41:07 2000 J"orn Rennecke <amylaar@redhat.com>
|
||||||
|
|
||||||
|
* flow.c (verify_local_live_at_start): Allow hard regs to die.
|
||||||
|
|
||||||
2000-11-02 Neil Booth <neilb@earthling.net>
|
2000-11-02 Neil Booth <neilb@earthling.net>
|
||||||
|
|
||||||
config:
|
config:
|
||||||
|
15
gcc/flow.c
15
gcc/flow.c
@ -2888,9 +2888,22 @@ verify_local_live_at_start (new_live_at_start, bb)
|
|||||||
|
|
||||||
EXECUTE_IF_SET_IN_REG_SET (new_live_at_start, 0, i,
|
EXECUTE_IF_SET_IN_REG_SET (new_live_at_start, 0, i,
|
||||||
{
|
{
|
||||||
/* No registers should die. */
|
/* No pseudo registers should die. */
|
||||||
if (REGNO_REG_SET_P (bb->global_live_at_start, i))
|
if (REGNO_REG_SET_P (bb->global_live_at_start, i))
|
||||||
|
{
|
||||||
|
/* But hard regs can reasonably die, e.g. when we combine
|
||||||
|
(insn 6 30 7 (set (reg/v:DI 83)
|
||||||
|
(reg:DI 5 r5)) (nil)
|
||||||
|
(expr_list:REG_DEAD (reg:DI 5 r5) (nil)))
|
||||||
|
... and ...
|
||||||
|
(insn 17 15 18 (set (reg:SI 5 r5)
|
||||||
|
(subreg:SI (reg/v:DI 83) 1)) (insn_list 6 (nil))
|
||||||
|
(expr_list:REG_DEAD (reg/v:DI 83) (nil))) . */
|
||||||
|
|
||||||
|
if (i >= FIRST_PSEUDO_REGISTER)
|
||||||
abort ();
|
abort ();
|
||||||
|
}
|
||||||
|
else
|
||||||
/* Verify that the now-live register is wider than word_mode. */
|
/* Verify that the now-live register is wider than word_mode. */
|
||||||
verify_wide_reg (i, bb->head, bb->end);
|
verify_wide_reg (i, bb->head, bb->end);
|
||||||
});
|
});
|
||||||
|
Loading…
Reference in New Issue
Block a user