Commit 0a2287bf by Richard Henderson Committed by Richard Henderson

rtlanal.c (dead_or_set_regno_p): Use find_regno_note.

        * rtlanal.c (dead_or_set_regno_p): Use find_regno_note.
        * genconfig.c (main): Set all HAVE_foo to 1.
        * graph.c (node_data): Use GET_NOTE_INSN_NAME instead of local array.

From-SVN: r33473
parent f77046bb
2000-04-26 Richard Henderson <rth@cygnus.com>
* rtlanal.c (dead_or_set_regno_p): Use find_regno_note.
* genconfig.c (main): Set all HAVE_foo to 1.
* graph.c (node_data): Use GET_NOTE_INSN_NAME instead of local array.
2000-04-26 Alex Samuel <samuel@codesourcery.com> 2000-04-26 Alex Samuel <samuel@codesourcery.com>
* invoke.texi: Document -fssa flag. * invoke.texi: Document -fssa flag.
......
...@@ -342,22 +342,22 @@ from the machine description file `md'. */\n\n"); ...@@ -342,22 +342,22 @@ from the machine description file `md'. */\n\n");
printf ("#endif\n"); printf ("#endif\n");
if (have_cc0_flag) if (have_cc0_flag)
printf ("#define HAVE_cc0\n"); printf ("#define HAVE_cc0 1\n");
if (have_cmove_flag) if (have_cmove_flag)
printf ("#define HAVE_conditional_move\n"); printf ("#define HAVE_conditional_move 1\n");
if (have_cond_exec_flag) if (have_cond_exec_flag)
printf ("#define HAVE_conditional_execution\n"); printf ("#define HAVE_conditional_execution 1\n");
if (have_lo_sum_flag) if (have_lo_sum_flag)
printf ("#define HAVE_lo_sum\n"); printf ("#define HAVE_lo_sum 1\n");
if (have_peephole_flag) if (have_peephole_flag)
printf ("#define HAVE_peephole\n"); printf ("#define HAVE_peephole 1\n");
if (have_peephole2_flag) if (have_peephole2_flag)
printf ("#define HAVE_peephole2\n"); printf ("#define HAVE_peephole2 1\n");
fflush (stdout); fflush (stdout);
return (ferror (stdout) != 0 ? FATAL_EXIT_CODE : SUCCESS_EXIT_CODE); return (ferror (stdout) != 0 ? FATAL_EXIT_CODE : SUCCESS_EXIT_CODE);
......
...@@ -147,33 +147,10 @@ darkgrey\n shape: ellipse" : "white", ...@@ -147,33 +147,10 @@ darkgrey\n shape: ellipse" : "white",
/* Print the RTL. */ /* Print the RTL. */
if (GET_CODE (tmp_rtx) == NOTE) if (GET_CODE (tmp_rtx) == NOTE)
{ {
static const char *note_names[] = const char *name = "";
{ if (NOTE_LINE_NUMBER (tmp_rtx) < 0)
NULL, name = GET_NOTE_INSN_NAME (NOTE_LINE_NUMBER (tmp_rtx));
"deleted", fprintf (fp, " %s", name);
"block_beg",
"block_end",
"loop_beg",
"loop_end",
"function_end",
"setjmp",
"loop_cont",
"loop_vtop",
"prologue_end",
"epilogue_beg",
"deleted_label",
"function_beg",
"eh_region_beg",
"eh_region_end",
"repeated_line_number",
"range_start",
"range_end",
"live",
"basic_block"
};
fprintf (fp, " %s",
XINT (tmp_rtx, 4) < 0 ? note_names[-XINT (tmp_rtx, 4)] : "");
} }
else if (GET_RTX_CLASS (GET_CODE (tmp_rtx)) == 'i') else if (GET_RTX_CLASS (GET_CODE (tmp_rtx)) == 'i')
print_rtl_single (fp, PATTERN (tmp_rtx)); print_rtl_single (fp, PATTERN (tmp_rtx));
......
...@@ -1233,22 +1233,9 @@ dead_or_set_regno_p (insn, test_regno) ...@@ -1233,22 +1233,9 @@ dead_or_set_regno_p (insn, test_regno)
unsigned int regno, endregno; unsigned int regno, endregno;
rtx link, pattern; rtx link, pattern;
/* See if there is a death note for something that includes /* See if there is a death note for something that includes TEST_REGNO. */
TEST_REGNO. */ if (find_regno_note (insn, REG_DEAD, test_regno))
for (link = REG_NOTES (insn); link; link = XEXP (link, 1)) return 1;
{
if (REG_NOTE_KIND (link) != REG_DEAD
|| GET_CODE (XEXP (link, 0)) != REG)
continue;
regno = REGNO (XEXP (link, 0));
endregno = (regno >= FIRST_PSEUDO_REGISTER ? regno + 1
: regno + HARD_REGNO_NREGS (regno,
GET_MODE (XEXP (link, 0))));
if (test_regno >= regno && test_regno < endregno)
return 1;
}
if (GET_CODE (insn) == CALL_INSN if (GET_CODE (insn) == CALL_INSN
&& find_regno_fusage (insn, CLOBBER, test_regno)) && find_regno_fusage (insn, CLOBBER, test_regno))
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment