aboutsummaryrefslogtreecommitdiff
path: root/gcc/predict.c
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2008-08-29 10:58:52 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2008-08-29 08:58:52 +0000
commitcc870036bd76fccec8aeb19a3f8c4fda081e5c3d (patch)
tree92d8dcba01165e9199c912b448b73d517d093087 /gcc/predict.c
parent7299cb994088a68a4fec5e479a03fc8a71e50646 (diff)
downloadgcc-cc870036bd76fccec8aeb19a3f8c4fda081e5c3d.zip
gcc-cc870036bd76fccec8aeb19a3f8c4fda081e5c3d.tar.gz
gcc-cc870036bd76fccec8aeb19a3f8c4fda081e5c3d.tar.bz2
tree-ssa-loop-ch.c (should_duplicate_loop_header_p): Check that loop is not cold.
* tree-ssa-loop-ch.c (should_duplicate_loop_header_p): Check that loop is not cold. * predict.c (optimize_bb_for_size_p, optimize_bb_for_speed_p): Constify arguments. (optimize_loop_for_size_p, optimize_loop_for_speed_p): New functions. * basic-block.h (optimize_bb_for_size_p, optimize_bb_for_speed_p): Constify. (optimize_loop_for_size_p, optimize_loop_for_speed_p): Declare. From-SVN: r139756
Diffstat (limited to 'gcc/predict.c')
-rw-r--r--gcc/predict.c20
1 files changed, 18 insertions, 2 deletions
diff --git a/gcc/predict.c b/gcc/predict.c
index 6107723..4de95e2 100644
--- a/gcc/predict.c
+++ b/gcc/predict.c
@@ -200,7 +200,7 @@ optimize_function_for_speed_p (struct function *fun)
/* Return TRUE when BB should be optimized for size. */
bool
-optimize_bb_for_size_p (basic_block bb)
+optimize_bb_for_size_p (const_basic_block bb)
{
return optimize_function_for_size_p (cfun) || !maybe_hot_bb_p (bb);
}
@@ -208,7 +208,7 @@ optimize_bb_for_size_p (basic_block bb)
/* Return TRUE when BB should be optimized for speed. */
bool
-optimize_bb_for_speed_p (basic_block bb)
+optimize_bb_for_speed_p (const_basic_block bb)
{
return !optimize_bb_for_size_p (bb);
}
@@ -245,6 +245,22 @@ optimize_insn_for_speed_p (void)
return !optimize_insn_for_size_p ();
}
+/* Return TRUE when LOOP should be optimized for size. */
+
+bool
+optimize_loop_for_size_p (struct loop *loop)
+{
+ return optimize_bb_for_size_p (loop->header);
+}
+
+/* Return TRUE when LOOP should be optimized for speed. */
+
+bool
+optimize_loop_for_speed_p (struct loop *loop)
+{
+ return optimize_bb_for_speed_p (loop->header);
+}
+
/* Set RTL expansion for BB profile. */
void