diff options
author | Kazu Hirata <kazu@cs.umass.edu> | 2004-11-23 22:38:07 +0000 |
---|---|---|
committer | Kazu Hirata <kazu@gcc.gnu.org> | 2004-11-23 22:38:07 +0000 |
commit | 91d9ede4ef0bd904b21dd49621f3df13be8c9254 (patch) | |
tree | 038e4ef05b151e206ff2a9f886f4e37da5257eca | |
parent | 31589ec6098edcb255d5876f22202e8b8429e745 (diff) | |
download | gcc-91d9ede4ef0bd904b21dd49621f3df13be8c9254.zip gcc-91d9ede4ef0bd904b21dd49621f3df13be8c9254.tar.gz gcc-91d9ede4ef0bd904b21dd49621f3df13be8c9254.tar.bz2 |
tree-cfg.c (tree_forwarder_block_p): Speed up by reordering two checks.
* tree-cfg.c (tree_forwarder_block_p): Speed up by reordering
two checks.
From-SVN: r91108
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/tree-cfg.c | 6 |
2 files changed, 8 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index dbc9d4c..a16e9b6 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 bcd025f..aa4ba46 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; } |