mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-03-15 12:21:20 +08:00
jump.c (jump_optimize): Call mark_jump_label also for deleted insns.
* jump.c (jump_optimize): Call mark_jump_label also for deleted insns. (mark_jump_label): Don't increment ref counts for deleted insns. From-SVN: r18420
This commit is contained in:
parent
6e92f4b6a2
commit
ac9b3c970e
@ -1,3 +1,9 @@
|
||||
Thu Mar 5 23:06:26 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
|
||||
|
||||
* jump.c (jump_optimize): Call mark_jump_label also for deleted
|
||||
insns.
|
||||
(mark_jump_label): Don't increment ref counts for deleted insns.
|
||||
|
||||
Thu Mar 5 09:55:15 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||||
|
||||
* mips/iris6.h (TARGET_DEFAULT): Parenthesize macro definition.
|
||||
|
19
gcc/jump.c
19
gcc/jump.c
@ -212,11 +212,10 @@ jump_optimize (f, cross_jump, noop_moves, after_regscan)
|
||||
also make a chain of all returns. */
|
||||
|
||||
for (insn = f; insn; insn = NEXT_INSN (insn))
|
||||
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i'
|
||||
&& ! INSN_DELETED_P (insn))
|
||||
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i')
|
||||
{
|
||||
mark_jump_label (PATTERN (insn), insn, cross_jump);
|
||||
if (GET_CODE (insn) == JUMP_INSN)
|
||||
if (! INSN_DELETED_P (insn) && GET_CODE (insn) == JUMP_INSN)
|
||||
{
|
||||
if (JUMP_LABEL (insn) != 0 && simplejump_p (insn))
|
||||
{
|
||||
@ -3380,7 +3379,8 @@ mark_jump_label (x, insn, cross_jump)
|
||||
}
|
||||
|
||||
XEXP (x, 0) = label;
|
||||
++LABEL_NUSES (label);
|
||||
if (! insn || ! INSN_DELETED_P (insn))
|
||||
++LABEL_NUSES (label);
|
||||
|
||||
if (insn)
|
||||
{
|
||||
@ -3417,12 +3417,13 @@ mark_jump_label (x, insn, cross_jump)
|
||||
ADDR_DIFF_VEC. Don't set the JUMP_LABEL of a vector. */
|
||||
case ADDR_VEC:
|
||||
case ADDR_DIFF_VEC:
|
||||
{
|
||||
int eltnum = code == ADDR_DIFF_VEC ? 1 : 0;
|
||||
if (! INSN_DELETED_P (insn))
|
||||
{
|
||||
int eltnum = code == ADDR_DIFF_VEC ? 1 : 0;
|
||||
|
||||
for (i = 0; i < XVECLEN (x, eltnum); i++)
|
||||
mark_jump_label (XVECEXP (x, eltnum, i), NULL_RTX, cross_jump);
|
||||
}
|
||||
for (i = 0; i < XVECLEN (x, eltnum); i++)
|
||||
mark_jump_label (XVECEXP (x, eltnum, i), NULL_RTX, cross_jump);
|
||||
}
|
||||
return;
|
||||
|
||||
default:
|
||||
|
Loading…
x
Reference in New Issue
Block a user