From d50c928e67d2bd64e040ecd7f477d98ac292aaa2 Mon Sep 17 00:00:00 2001
From: kazu <kazu@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Tue, 23 Nov 2004 22:38:07 +0000
Subject: [PATCH] 	* tree-cfg.c (tree_forwarder_block_p): Speed up by
 reordering 	two checks.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@91108 138bc75d-0d04-0410-961f-82ee72b054a4
---
 gcc/ChangeLog  | 5 +++++
 gcc/tree-cfg.c | 6 +++---
 2 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index dbc9d4cc9e99..a16e9b6f0418 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2004-11-23  Kazu Hirata  <kazu@cs.umass.edu>
+
+	* tree-cfg.c (tree_forwarder_block_p): Speed up by reordering
+	two checks.
+
 2004-11-23  Zack Weinberg  <zack@codesourcery.com>
 
 	* function.h (struct function): Remove calls_longjmp.
diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c
index bcd025f717d7..aa4ba4664df2 100644
--- a/gcc/tree-cfg.c
+++ b/gcc/tree-cfg.c
@@ -3907,9 +3907,6 @@ tree_forwarder_block_p (basic_block bb)
   gcc_assert (bb != ENTRY_BLOCK_PTR);
 #endif
 
-  if (find_edge (ENTRY_BLOCK_PTR, bb))
-    return false;
-
   /* Now walk through the statements.  We can ignore labels, anything else
      means this is not a forwarder block.  */
   for (bsi = bsi_start (bb); !bsi_end_p (bsi); bsi_next (&bsi))
@@ -3928,6 +3925,9 @@ tree_forwarder_block_p (basic_block bb)
 	}
     }
 
+  if (find_edge (ENTRY_BLOCK_PTR, bb))
+    return false;
+
   return true;
 }
 
-- 
GitLab