aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/tree-ssa-loop-prefetch.c7
2 files changed, 12 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 43eff0c..cc2aada 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2007-04-11 Zdenek Dvorak <dvorakz@suse.cz>
+
+ * tree-ssa-loop-prefetch.c (loop_prefetch_arrays): Ignore
+ cold loops.
+
2007-04-14 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR c/31520
diff --git a/gcc/tree-ssa-loop-prefetch.c b/gcc/tree-ssa-loop-prefetch.c
index a0d70cc..35e8021 100644
--- a/gcc/tree-ssa-loop-prefetch.c
+++ b/gcc/tree-ssa-loop-prefetch.c
@@ -947,6 +947,13 @@ loop_prefetch_arrays (struct loop *loop)
struct tree_niter_desc desc;
bool unrolled = false;
+ if (!maybe_hot_bb_p (loop->header))
+ {
+ if (dump_file && (dump_flags & TDF_DETAILS))
+ fprintf (dump_file, " ignored (cold area)\n");
+ return false;
+ }
+
/* Step 1: gather the memory references. */
refs = gather_memory_references (loop);