+2007-05-22 Richard Sandiford <rsandifo@nildram.co.uk>
+
+ * mode-switching.c (reg_dies): Change type of second argument to
+ "HARD_REG_SET *".
+ (optimize_mode_switching): Update accordingly.
+
2007-05-22 Richard Sandiford <richard@codesourcery.com>
* hard-reg-set.h (GO_IF_HARD_REG_SUBSET, GO_IF_HARD_REG_EQUAL): Delete
static struct seginfo * new_seginfo (int, rtx, int, HARD_REG_SET);
static void add_seginfo (struct bb_info *, struct seginfo *);
-static void reg_dies (rtx, HARD_REG_SET);
+static void reg_dies (rtx, HARD_REG_SET *);
static void reg_becomes_live (rtx, rtx, void *);
static void make_preds_opaque (basic_block, int);
\f
/* Record in LIVE that register REG died. */
static void
-reg_dies (rtx reg, HARD_REG_SET live)
+reg_dies (rtx reg, HARD_REG_SET *live)
{
int regno, nregs;
if (regno < FIRST_PSEUDO_REGISTER)
for (nregs = hard_regno_nregs[regno][GET_MODE (reg)] - 1; nregs >= 0;
nregs--)
- CLEAR_HARD_REG_BIT (live, regno + nregs);
+ CLEAR_HARD_REG_BIT (*live, regno + nregs);
}
/* Record in LIVE that register REG became live.
/* Update LIVE_NOW. */
for (link = REG_NOTES (insn); link; link = XEXP (link, 1))
if (REG_NOTE_KIND (link) == REG_DEAD)
- reg_dies (XEXP (link, 0), live_now);
+ reg_dies (XEXP (link, 0), &live_now);
note_stores (PATTERN (insn), reg_becomes_live, &live_now);
for (link = REG_NOTES (insn); link; link = XEXP (link, 1))
if (REG_NOTE_KIND (link) == REG_UNUSED)
- reg_dies (XEXP (link, 0), live_now);
+ reg_dies (XEXP (link, 0), &live_now);
}
}