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] expemd.c: Remove insns_safe_to_move_p.


Hi,

Attached is a patch to remove insns_safe_to_move_p as the recent
removal of loop.c made this function unused.

Tested on x86_64-pc-linux-gnu.  OK to apply?

Kazu Hirata

2006-03-04  Kazu Hirata  <kazu@codesourcery.com>

	* rtlanal.c (insns_safe_to_move_p): Remove.
	* rtl.h: Remove the prototype for insns_safe_to_move_p.

Index: rtl.h
===================================================================
--- rtl.h	(revision 111687)
+++ rtl.h	(working copy)
@@ -1734,7 +1734,6 @@ extern rtx regno_use_in (unsigned int, r
 extern int auto_inc_p (rtx);
 extern int in_expr_list_p (rtx, rtx);
 extern void remove_node_from_expr_list (rtx, rtx *);
-extern int insns_safe_to_move_p (rtx, rtx, rtx *);
 extern int loc_mentioned_in_p (rtx *, rtx);
 extern rtx find_first_parameter_load (rtx, rtx);
 extern bool keep_with_call_p (rtx);
Index: rtlanal.c
===================================================================
--- rtlanal.c	(revision 111687)
+++ rtlanal.c	(working copy)
@@ -2927,82 +2927,6 @@ auto_inc_p (rtx x)
   return 0;
 }
 
-/* Return 1 if the sequence of instructions beginning with FROM and up
-   to and including TO is safe to move.  If NEW_TO is non-NULL, and
-   the sequence is not already safe to move, but can be easily
-   extended to a sequence which is safe, then NEW_TO will point to the
-   end of the extended sequence.
-
-   For now, this function only checks that the region contains whole
-   exception regions, but it could be extended to check additional
-   conditions as well.  */
-
-int
-insns_safe_to_move_p (rtx from, rtx to, rtx *new_to)
-{
-  int eh_region_count = 0;
-  int past_to_p = 0;
-  rtx r = from;
-
-  /* By default, assume the end of the region will be what was
-     suggested.  */
-  if (new_to)
-    *new_to = to;
-
-  while (r)
-    {
-      if (NOTE_P (r))
-	{
-	  switch (NOTE_LINE_NUMBER (r))
-	    {
-	    case NOTE_INSN_EH_REGION_BEG:
-	      ++eh_region_count;
-	      break;
-
-	    case NOTE_INSN_EH_REGION_END:
-	      if (eh_region_count == 0)
-		/* This sequence of instructions contains the end of
-		   an exception region, but not he beginning.  Moving
-		   it will cause chaos.  */
-		return 0;
-
-	      --eh_region_count;
-	      break;
-
-	    default:
-	      break;
-	    }
-	}
-      else if (past_to_p)
-	/* If we've passed TO, and we see a non-note instruction, we
-	   can't extend the sequence to a movable sequence.  */
-	return 0;
-
-      if (r == to)
-	{
-	  if (!new_to)
-	    /* It's OK to move the sequence if there were matched sets of
-	       exception region notes.  */
-	    return eh_region_count == 0;
-
-	  past_to_p = 1;
-	}
-
-      /* It's OK to move the sequence if there were matched sets of
-	 exception region notes.  */
-      if (past_to_p && eh_region_count == 0)
-	{
-	  *new_to = r;
-	  return 1;
-	}
-
-      /* Go to the next instruction.  */
-      r = NEXT_INSN (r);
-    }
-
-  return 0;
-}
-
 /* Return nonzero if IN contains a piece of rtl that has the address LOC.  */
 int
 loc_mentioned_in_p (rtx *loc, rtx in)


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