diff options
author | Richard Henderson <rth@cygnus.com> | 2000-04-27 00:18:08 -0700 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2000-04-27 00:18:08 -0700 |
commit | 0a2287bf899285f8b60b4af922e2fb8d9b4cce2a (patch) | |
tree | 95290d1b3a766f3853be710b660f7a5f14bbd6dc | |
parent | f77046bbf90d5635de3c42233c79b07df680eb4c (diff) | |
download | gcc-0a2287bf899285f8b60b4af922e2fb8d9b4cce2a.zip gcc-0a2287bf899285f8b60b4af922e2fb8d9b4cce2a.tar.gz gcc-0a2287bf899285f8b60b4af922e2fb8d9b4cce2a.tar.bz2 |
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
-rw-r--r-- | gcc/ChangeLog | 8 | ||||
-rw-r--r-- | gcc/genconfig.c | 12 | ||||
-rw-r--r-- | gcc/graph.c | 31 | ||||
-rw-r--r-- | gcc/rtlanal.c | 19 |
4 files changed, 21 insertions, 49 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e39e20a..9e4c0d5 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +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> * invoke.texi: Document -fssa flag. diff --git a/gcc/genconfig.c b/gcc/genconfig.c index 65c8701..d78af03 100644 --- a/gcc/genconfig.c +++ b/gcc/genconfig.c @@ -342,22 +342,22 @@ from the machine description file `md'. */\n\n"); printf ("#endif\n"); if (have_cc0_flag) - printf ("#define HAVE_cc0\n"); + printf ("#define HAVE_cc0 1\n"); if (have_cmove_flag) - printf ("#define HAVE_conditional_move\n"); + printf ("#define HAVE_conditional_move 1\n"); if (have_cond_exec_flag) - printf ("#define HAVE_conditional_execution\n"); + printf ("#define HAVE_conditional_execution 1\n"); if (have_lo_sum_flag) - printf ("#define HAVE_lo_sum\n"); + printf ("#define HAVE_lo_sum 1\n"); if (have_peephole_flag) - printf ("#define HAVE_peephole\n"); + printf ("#define HAVE_peephole 1\n"); if (have_peephole2_flag) - printf ("#define HAVE_peephole2\n"); + printf ("#define HAVE_peephole2 1\n"); fflush (stdout); return (ferror (stdout) != 0 ? FATAL_EXIT_CODE : SUCCESS_EXIT_CODE); diff --git a/gcc/graph.c b/gcc/graph.c index f4dde01..9dd5c8d 100644 --- a/gcc/graph.c +++ b/gcc/graph.c @@ -147,33 +147,10 @@ darkgrey\n shape: ellipse" : "white", /* Print the RTL. */ if (GET_CODE (tmp_rtx) == NOTE) { - static const char *note_names[] = - { - NULL, - "deleted", - "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)] : ""); + const char *name = ""; + if (NOTE_LINE_NUMBER (tmp_rtx) < 0) + name = GET_NOTE_INSN_NAME (NOTE_LINE_NUMBER (tmp_rtx)); + fprintf (fp, " %s", name); } else if (GET_RTX_CLASS (GET_CODE (tmp_rtx)) == 'i') print_rtl_single (fp, PATTERN (tmp_rtx)); diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c index d9087cd..f45a3d4 100644 --- a/gcc/rtlanal.c +++ b/gcc/rtlanal.c @@ -1233,22 +1233,9 @@ dead_or_set_regno_p (insn, test_regno) unsigned int regno, endregno; rtx link, pattern; - /* See if there is a death note for something that includes - TEST_REGNO. */ - for (link = REG_NOTES (insn); link; link = XEXP (link, 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; - } + /* See if there is a death note for something that includes TEST_REGNO. */ + if (find_regno_note (insn, REG_DEAD, test_regno)) + return 1; if (GET_CODE (insn) == CALL_INSN && find_regno_fusage (insn, CLOBBER, test_regno)) |