aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.4.3/gcc/profile.h
diff options
context:
space:
mode:
Diffstat (limited to 'gcc-4.4.3/gcc/profile.h')
-rw-r--r--gcc-4.4.3/gcc/profile.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc-4.4.3/gcc/profile.h b/gcc-4.4.3/gcc/profile.h
index a12d9af12..ec6570992 100644
--- a/gcc-4.4.3/gcc/profile.h
+++ b/gcc-4.4.3/gcc/profile.h
@@ -45,4 +45,10 @@ extern void mcf_smooth_cfg (void);
/* Return sum of edge counts in input edges */
extern gcov_type sum_edge_counts (VEC (edge, gc) *edges);
+/* Implement sampling to avoid writing to edge counters very often.
+ Many concurrent writes to the same counters, or to counters that share
+ the same cache line leads to up to 30x slowdown on an application running
+ on 8 CPUs. With sampling, the slowdown reduced to 2x. */
+extern void add_sampling_to_edge_counters (void);
+
#endif /* PROFILE_H */