(reg_scan): Don't call reg_scan_mark_refs on notes if there aren't any.

(reg_scan_mark_refs, case INSN_LIST, EXPR_LIST): New cases.

From-SVN: r5733
This commit is contained in:
Richard Kenner 1993-10-11 10:10:43 -04:00
parent d969caf829
commit 01565a557f
1 changed files with 14 additions and 1 deletions

View File

@ -1539,7 +1539,9 @@ reg_scan (f, nregs, repeat)
&& XVECLEN (PATTERN (insn), 0) > max_parallel)
max_parallel = XVECLEN (PATTERN (insn), 0);
reg_scan_mark_refs (PATTERN (insn), insn, 0);
reg_scan_mark_refs (REG_NOTES (insn), insn, 1);
if (REG_NOTES (insn))
reg_scan_mark_refs (REG_NOTES (insn), insn, 1);
}
}
@ -1581,6 +1583,17 @@ reg_scan_mark_refs (x, insn, note_flag)
}
break;
case EXPR_LIST:
reg_scan_mark_refs (XEXP (x, 0), insn, note_flag);
if (XEXP (x, 1))
reg_scan_mark_refs (XEXP (x, 1), insn, note_flag);
break;
case INSN_LIST:
if (XEXP (x, 1))
reg_scan_mark_refs (XEXP (x, 1), insn, note_flag);
break;
case SET:
/* Count a set of the destination if it is a register. */
for (dest = SET_DEST (x);