summaryrefslogtreecommitdiff
path: root/gcc/web.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/web.c')
-rw-r--r--gcc/web.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/gcc/web.c b/gcc/web.c
index af006bfaf50..11f2caa6cd2 100644
--- a/gcc/web.c
+++ b/gcc/web.c
@@ -262,6 +262,7 @@ web_main (void)
int max = max_reg_num ();
char *used;
char *use_addressof;
+ basic_block bb;
rtx insn;
df = df_init ();
@@ -280,9 +281,12 @@ web_main (void)
union_defs (df, df->uses[i], def_entry, use_entry);
/* We can not safely rename registers whose address is taken. */
- for (insn = get_insns (); insn; insn = NEXT_INSN (insn))
- if (INSN_P (insn))
- for_each_rtx (&PATTERN (insn), mark_addressof, use_addressof);
+ FOR_EACH_BB (bb)
+ FOR_BB_INSNS (bb, insn)
+ {
+ if (INSN_P (insn))
+ for_each_rtx (&PATTERN (insn), mark_addressof, use_addressof);
+ }
/* Update the instruction stream, allocating new registers for split pseudos
in progress. */