rpms/gcc/devel gcc4-dv.patch,NONE,1.1 gcc4.spec,1.66,1.67

fedora-cvs-commits at redhat.com fedora-cvs-commits at redhat.com
Wed Aug 17 14:01:37 UTC 2005


Author: jakub

Update of /cvs/dist/rpms/gcc/devel
In directory cvs.devel.redhat.com:/tmp/cvs-serv5504

Modified Files:
	gcc4.spec 
Added Files:
	gcc4-dv.patch 
Log Message:
4.0.1-9


gcc4-dv.patch:
 passes.c                      |    7 +++++--
 testsuite/gcc.dg/20050811-1.c |   18 ++++++++++++++++++
 testsuite/gcc.dg/20050811-2.c |   18 ++++++++++++++++++
 tree-dump.c                   |    3 ++-
 tree-optimize.c               |    7 -------
 tree.h                        |    2 ++
 6 files changed, 45 insertions(+), 10 deletions(-)

--- NEW FILE gcc4-dv.patch ---
2005-08-11  Jakub Jelinek  <jakub at redhat.com>

	* tree-pass.h (TDF_GRAPH): Define.
	* tree-dump.c (dump_options): Don't set TDF_GRAPH in "all".
	* passes.c (finish_optimization_passes): Only call
	finish_graph_dump_file if TDF_GRAPH is set.
	(execute_one_pass): Only call clean_graph_dump_file if dump_file !=
	NULL.  Set TDF_GRAPH bit.
	(execute_todo): Call print_rtl_graph_with_bb if TDF_GRAPH is set.

	* gcc.dg/20050811-1.c: New test.
	* gcc.dg/20050811-2.c: New test.

--- gcc/tree.h.jj	2005-03-21 13:00:38.000000000 +0100
+++ gcc/tree.h	2005-03-21 13:00:38.000000000 +0100
@@ -3893,6 +3893,8 @@ enum tree_dump_index
 #define TDF_RTL		(1 << 10)	/* is a RTL dump */
 #define TDF_IPA		(1 << 11)	/* is an IPA dump */
 
+#define TDF_GRAPH	(1 << 12)	/* a graph dump is being emitted */
+
 typedef struct dump_info *dump_info_p;
 
 extern char *get_dump_file_name (enum tree_dump_index);
--- gcc/tree-dump.c.jj	2005-02-15 16:53:47.000000000 +0100
+++ gcc/tree-dump.c	2005-08-11 12:01:13.000000000 +0200
@@ -745,7 +745,8 @@ static const struct dump_option_value_in
   {"vops", TDF_VOPS},
   {"lineno", TDF_LINENO},
   {"uid", TDF_UID},
-  {"all", ~(TDF_RAW | TDF_SLIM | TDF_LINENO | TDF_TREE | TDF_RTL | TDF_IPA)},
+  {"all", ~(TDF_RAW | TDF_SLIM | TDF_LINENO | TDF_TREE | TDF_RTL | TDF_IPA
+	    | TDF_GRAPH)},
   {NULL, 0}
 };
 
--- gcc/passes.c.jj	2005-04-03 11:12:23.000000000 +0200
+++ gcc/passes.c	2005-08-11 12:04:03.000000000 +0200
@@ -159,7 +159,10 @@ close_dump_file (enum tree_dump_index in
     {
       /* If we've not initialized the files, do so now.  */
       if (initializing_dump)
-	clean_graph_dump_file (dump_file_name);
+	{
+	  clean_graph_dump_file (dump_file_name);
+	  get_dump_file_info (index)->flags |= TDF_GRAPH;
+	}
 
       print_rtl_graph_with_bb (dump_file_name, insns);
     }
@@ -1782,7 +1785,7 @@ finish_optimization_passes (void)
   if (graph_dump_format != no_graph)
     for (i = DFI_MIN; (dfi = get_dump_file_info (i)) != NULL; ++i)
       if (dump_initialized_p (i)
-	  && (dfi->flags & TDF_RTL) != 0
+	  && (dfi->flags & TDF_GRAPH) != 0
 	  && (name = get_dump_file_name (i)) != NULL)
         {
           finish_graph_dump_file (name);
--- gcc/tree-optimize.c.jj	2005-03-03 12:31:04.000000000 +0100
+++ gcc/tree-optimize.c	2005-08-11 11:47:02.000000000 +0200
@@ -502,7 +502,6 @@ execute_one_pass (struct tree_opt_pass *
   /* If a dump file name is present, open it if enabled.  */
   if (pass->static_pass_number != -1)
     {
-      bool initializing_dump = !dump_initialized_p (pass->static_pass_number);
       dump_file_name = get_dump_file_name (pass->static_pass_number);
       dump_file = dump_begin (pass->static_pass_number, &dump_flags);
       if (dump_file)
@@ -518,12 +517,6 @@ execute_one_pass (struct tree_opt_pass *
              ? " (unlikely executed)"
              : "");
 	}
-
-      if (initializing_dump
-          && graph_dump_format != no_graph
-	  && (pass->properties_provided & (PROP_cfg | PROP_rtl))
-	      == (PROP_cfg | PROP_rtl))
-        clean_graph_dump_file (dump_file_name);
     }
 
   /* If a timevar is present, start it.  */
--- gcc/testsuite/gcc.dg/20050811-1.c.jj	2005-08-11 13:32:52.000000000 +0200
+++ gcc/testsuite/gcc.dg/20050811-1.c	2005-08-11 13:33:40.000000000 +0200
@@ -0,0 +1,18 @@
+/* Test whether -dav doesn't crash.  */
+/* { dg-do compile } */
+/* { dg-options "-O2 -dav" } */
+
+int foo (void)
+{
+  return 6;
+}
+
+int bar (int x)
+{
+  if (x < 0)
+    return foo () + 8;
+  else if (x > 0)
+    return 2 * foo ();
+  else
+    return foo ();
+}
--- gcc/testsuite/gcc.dg/20050811-2.c.jj	2005-08-11 13:32:52.000000000 +0200
+++ gcc/testsuite/gcc.dg/20050811-2.c	2005-08-11 13:33:58.000000000 +0200
@@ -0,0 +1,18 @@
+/* Test whether -dov doesn't crash.  */
+/* { dg-do compile } */
+/* { dg-options "-O2 -dov" } */
+
+int foo (void)
+{
+  return 6;
+}
+
+int bar (int x)
+{
+  if (x < 0)
+    return foo () + 8;
+  else if (x > 0)
+    return 2 * foo ();
+  else
+    return foo ();
+}


Index: gcc4.spec
===================================================================
RCS file: /cvs/dist/rpms/gcc/devel/gcc4.spec,v
retrieving revision 1.66
retrieving revision 1.67
diff -u -r1.66 -r1.67
--- gcc4.spec	17 Aug 2005 13:47:03 -0000	1.66
+++ gcc4.spec	17 Aug 2005 14:01:21 -0000	1.67
@@ -108,6 +108,7 @@
 Patch26: gcc4-dwarf2-pr20268.patch
 Patch27: gcc4-dwarf2-inline-details.patch
 Patch28: gcc4-pr21254.patch
+Patch29: gcc4-dv.patch
 
 %define _gnu %{nil}
 %ifarch sparc
@@ -445,6 +446,7 @@
 %patch26 -p0 -b .dwarf2-pr20268~
 %patch27 -p0 -b .dwarf2-inline-details~
 %patch28 -p0 -b .pr21254~
+%patch29 -p0 -b .dv~
 
 perl -pi -e 's/4\.0\.2/4.0.1/' gcc/version.c
 perl -pi -e 's/"%{gcc_version}"/"%{gcc_version} \(release\)"/' gcc/version.c
@@ -1487,6 +1489,7 @@
   - PRs c++/21799, c++/23219, c++/23266, c++/23337, c++/8271, fortran/21432,
 	java/23230, libfortran/23428, libgcj/23353, middle-end/23312,
 	middle-end/23369, target/21841, target/23250, tree-optimization/21105
+- fix -dv option handling (#165627)
 - emit DWARF3 DW_AT_call_file and DW_AT_call_line attributes for inlines
   (Jim Wilson)
 - improve debug info for inlined functions (Jim Wilson, PR debug/20268)




More information about the fedora-cvs-commits mailing list