This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] Random cleanups


from my local tree.

Bootstrapped and tested on x86_64-unknown-linux-gnu, applied.

Richard.

2013-04-09  Richard Biener  <rguenther@suse.de>

	java/
	* expr.c (build_java_binop): Pass a type to build_int_cst.

	* tree-ssa-loop-manip.c (rewrite_into_loop_closed_ssa): Avoid
	work that is not necessary.

Index: gcc/java/expr.c
===================================================================
--- gcc/java/expr.c	(revision 197621)
+++ gcc/java/expr.c	(working copy)
@@ -1531,7 +1531,7 @@ build_java_binop (enum tree_code op, tre
       }
     case LSHIFT_EXPR:
     case RSHIFT_EXPR:
-      mask = build_int_cst (NULL_TREE,
+      mask = build_int_cst (int_type_node,
 			    TYPE_PRECISION (TREE_TYPE (arg1)) - 1);
       arg2 = fold_build2 (BIT_AND_EXPR, int_type_node, arg2, mask);
       break;
Index: gcc/tree-ssa-loop-manip.c
===================================================================
--- gcc/tree-ssa-loop-manip.c	(revision 197621)
+++ gcc/tree-ssa-loop-manip.c	(working copy)
@@ -489,7 +489,6 @@ find_uses_to_rename (bitmap changed_bbs,
 void
 rewrite_into_loop_closed_ssa (bitmap changed_bbs, unsigned update_flag)
 {
-  bitmap *loop_exits;
   bitmap *use_blocks;
   bitmap names_to_rename;
 
@@ -505,11 +504,6 @@ rewrite_into_loop_closed_ssa (bitmap cha
 
   names_to_rename = BITMAP_ALLOC (&loop_renamer_obstack);
 
-  /* An array of bitmaps where LOOP_EXITS[I] is the set of basic blocks
-     that are the destination of an edge exiting loop number I.  */
-  loop_exits = XNEWVEC (bitmap, number_of_loops ());
-  get_loops_exits (loop_exits);
-
   /* Uses of names to rename.  We don't have to initialize this array,
      because we know that we will only have entries for the SSA names
      in NAMES_TO_RENAME.  */
@@ -518,17 +512,26 @@ rewrite_into_loop_closed_ssa (bitmap cha
   /* Find the uses outside loops.  */
   find_uses_to_rename (changed_bbs, use_blocks, names_to_rename);
 
-  /* Add the PHI nodes on exits of the loops for the names we need to
-     rewrite.  */
-  add_exit_phis (names_to_rename, use_blocks, loop_exits);
+  if (!bitmap_empty_p (names_to_rename))
+    {
+      /* An array of bitmaps where LOOP_EXITS[I] is the set of basic blocks
+	 that are the destination of an edge exiting loop number I.  */
+      bitmap *loop_exits = XNEWVEC (bitmap, number_of_loops ());
+      get_loops_exits (loop_exits);
+
+      /* Add the PHI nodes on exits of the loops for the names we need to
+	 rewrite.  */
+      add_exit_phis (names_to_rename, use_blocks, loop_exits);
+
+      free (loop_exits);
+
+      /* Fix up all the names found to be used outside their original
+	 loops.  */
+      update_ssa (TODO_update_ssa);
+    }
 
   bitmap_obstack_release (&loop_renamer_obstack);
   free (use_blocks);
-  free (loop_exits);
-
-  /* Fix up all the names found to be used outside their original
-     loops.  */
-  update_ssa (TODO_update_ssa);
 }
 
 /* Check invariants of the loop closed ssa form for the USE in BB.  */


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]