+Fri Sep 28 14:59:34 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * gcse.c (replace_store_insn): Use delete_insn.
+ * loop.c (move_movables): Likewise; avoid delete_insn
+ from clobbering notes moved elsewhere.
+ (check_dbra_loop): Use delete_insn.
+ * ssa.c (convert_from_ssa): Likewise.
+ * cse.c (cse_insn): Use delete_insn.
+
2001-09-28 Neil Booth <neil@daikokuya.demon.co.uk>
* cpphash.h (struct cpp_buff): Make unsigned.
else if (n_sets == 1 && dest == pc_rtx && src == pc_rtx)
{
/* One less use of the label this insn used to jump to. */
- if (JUMP_LABEL (insn) != 0)
- --LABEL_NUSES (JUMP_LABEL (insn));
- PUT_CODE (insn, NOTE);
- NOTE_LINE_NUMBER (insn) = NOTE_INSN_DELETED;
- NOTE_SOURCE_FILE (insn) = 0;
+ delete_insn (insn);
cse_jumps_altered = 1;
/* No more processing for this set. */
sets[i].rtl = 0;
&& (tem = single_set (prev_insn)) != 0
&& SET_DEST (tem) == cc0_rtx
&& ! reg_mentioned_p (cc0_rtx, x))
- {
- PUT_CODE (prev_insn, NOTE);
- NOTE_LINE_NUMBER (prev_insn) = NOTE_INSN_DELETED;
- NOTE_SOURCE_FILE (prev_insn) = 0;
- }
+ delete-insn (prev_insn);
prev_insn_cc0 = this_insn_cc0;
prev_insn_cc0_mode = this_insn_cc0_mode;
= gen_rtx_EXPR_LIST (VOIDmode, r1,
gen_rtx_EXPR_LIST (VOIDmode, r2,
regs_may_share));
- delete_related_insns (m->insn);
+ delete_insn (m->insn);
if (new_start == 0)
new_start = i1;
{
temp = XEXP (temp, 0);
while (temp != p)
- temp = delete_related_insns (temp);
+ temp = delete_insn (temp);
}
temp = p;
- p = delete_related_insns (p);
+ p = delete_insn (p);
/* simplify_giv_expr expects that it can walk the insns
at m->insn forwards and see this old sequence we are
if (temp == fn_address_insn)
fn_address_insn = i1;
REG_NOTES (i1) = REG_NOTES (temp);
- delete_related_insns (temp);
+ REG_NOTES (temp) = NULL;
+ delete_insn (temp);
}
if (new_start == 0)
new_start = first;
if (REG_NOTES (i1) == 0)
{
REG_NOTES (i1) = REG_NOTES (p);
+ REG_NOTES (p) = NULL;
/* If there is a REG_EQUAL note present whose value
is not loop invariant, then delete it, since it
}
temp = p;
- delete_related_insns (p);
+ delete_insn (p);
p = NEXT_INSN (p);
/* simplify_giv_expr expects that it can walk the insns
and prevent further processing of it. */
m1->done = 1;
- /* if library call, delete all insn except last, which
- is deleted below */
+ /* if library call, delete all insns. */
if ((temp = find_reg_note (m1->insn, REG_RETVAL,
NULL_RTX)))
- {
- for (temp = XEXP (temp, 0); temp != m1->insn;
- temp = NEXT_INSN (temp))
- delete_related_insns (temp);
- }
- delete_related_insns (m1->insn);
+ delete_insn_chain (XEXP (temp, 0), m1->insn);
+ else
+ delete_insn (m1->insn);
/* Any other movable that loads the same register
MUST be moved. */
end_sequence ();
p = loop_insn_emit_before (loop, 0, bl->biv->insn, tem);
- delete_related_insns (bl->biv->insn);
+ delete_insn (bl->biv->insn);
/* Update biv info to reflect its new status. */
bl->biv->insn = p;
{
if (insn == BLOCK_END (bb))
BLOCK_END (bb) = PREV_INSN (insn);
- insn = delete_related_insns (insn);
+ insn = delete_insn (insn);
}
/* Since all the phi nodes come at the beginning of the
block, if we find an ordinary insn, we can stop looking