OSDN Git Service

* rtlanal.c (dead_or_set_regno_p): Use find_regno_note.
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 27 Apr 2000 07:18:08 +0000 (07:18 +0000)
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 27 Apr 2000 07:18:08 +0000 (07:18 +0000)
        * genconfig.c (main): Set all HAVE_foo to 1.
        * graph.c (node_data): Use GET_NOTE_INSN_NAME instead of local array.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@33473 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/genconfig.c
gcc/graph.c
gcc/rtlanal.c

index e39e20a..9e4c0d5 100644 (file)
@@ -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.
index 65c8701..d78af03 100644 (file)
@@ -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);
index f4dde01..9dd5c8d 100644 (file)
@@ -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));
index d9087cd..f45a3d4 100644 (file)
@@ -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))