OSDN Git Service

* ggc.h (struct rtx_def): Forward declare.
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 7 Apr 2000 09:24:06 +0000 (09:24 +0000)
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 7 Apr 2000 09:24:06 +0000 (09:24 +0000)
        * print-rtl.c (debug_rtx_range): New.
        * rtl.h (debug_rtx_range): Declare.

        * varray.h (VARRAY_ACTIVE_SIZE, VARRAY_POP_ALL): New.

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

gcc/ChangeLog
gcc/ggc.h
gcc/print-rtl.c
gcc/rtl.h
gcc/varray.h

index 3c39485..c28a597 100644 (file)
@@ -1,5 +1,12 @@
 2000-04-07  Richard Henderson  <rth@cygnus.com>
 
+       * ggc.h (struct rtx_def): Forward declare.
+
+       * print-rtl.c (debug_rtx_range): New.
+       * rtl.h (debug_rtx_range): Declare.
+
+       * varray.h (VARRAY_ACTIVE_SIZE, VARRAY_POP_ALL): New.
+
        * gcse.c (gcse_main): Don't rebuild the CFG here.
        (delete_null_pointer_checks): Likewise.
        * ssa.c (convert_to_ssa): Likewise.
index a79ffd5..9ee6c3d 100644 (file)
--- a/gcc/ggc.h
+++ b/gcc/ggc.h
@@ -37,6 +37,7 @@ struct emit_status;
 struct expr_status;
 struct hash_table;
 struct label_node;
+struct rtx_def;
 struct rtvec_def;
 struct stmt_status;
 union  tree_node;
index 2c7194a..4c59163 100644 (file)
@@ -450,6 +450,21 @@ debug_rtx_list (x, n)
     debug_rtx (insn);
 }
 
+/* Call this function to print an rtx list from START to END inclusive.  */
+
+void
+debug_rtx_range (start, end)
+     rtx start, end;
+{
+  while (1)
+    {
+      debug_rtx (start);
+      if (!start || start == end)
+       break;
+      start = NEXT_INSN (start);
+    }
+}
+
 /* Call this function to search an rtx list to find one with insn uid UID,
    and then call debug_rtx_list to print it, using DEBUG_RTX_COUNT.
    The found insn is returned to enable further debugging analysis.  */
index f07407c..517a0db 100644 (file)
--- a/gcc/rtl.h
+++ b/gcc/rtl.h
@@ -1564,6 +1564,7 @@ extern void fix_sched_param               PARAMS ((const char *, const char *));
 /* In print-rtl.c */
 extern void debug_rtx                  PARAMS ((rtx));
 extern void debug_rtx_list             PARAMS ((rtx, int));
+extern void debug_rtx_range            PARAMS ((rtx, rtx));
 extern rtx debug_rtx_find              PARAMS ((rtx, int));
 #ifdef BUFSIZ
 extern void print_rtl                  PARAMS ((FILE *, rtx));
index 69482a9..4e9b62f 100644 (file)
@@ -168,6 +168,9 @@ extern varray_type varray_grow      PARAMS ((varray_type, size_t));
 
 #define VARRAY_SIZE(VA)        ((VA)->num_elements)
 
+#define VARRAY_ACTIVE_SIZE(VA) ((VA)->elements_used)
+#define VARRAY_POP_ALL(VA)     ((VA)->elements_used = 0)
+
 /* Check for VARRAY_xxx macros being in bound.  */
 #if defined ENABLE_CHECKING && (GCC_VERSION >= 2007)
 extern void varray_check_failed PARAMS ((varray_type, size_t,