aboutsummaryrefslogtreecommitdiff
path: root/gcc/final.c
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2002-12-22 18:24:38 +0100
committerJan Hubicka <hubicka@gcc.gnu.org>2002-12-22 17:24:38 +0000
commit66b4e47860cc5db8236e034743bf6a5bea20332a (patch)
treec106e3964daf4cc2c7f4d6a70d7064ddf49aafca /gcc/final.c
parentfba1caab665cb23808bd4bbfddffdc7541811d86 (diff)
downloadgcc-66b4e47860cc5db8236e034743bf6a5bea20332a.zip
gcc-66b4e47860cc5db8236e034743bf6a5bea20332a.tar.gz
gcc-66b4e47860cc5db8236e034743bf6a5bea20332a.tar.bz2
params.def (tracer-min-branch-probability-feedback): Fix default.
* params.def (tracer-min-branch-probability-feedback): Fix default. * final.c (compute_alignments): Use profile to avoid code bloat. From-SVN: r60413
Diffstat (limited to 'gcc/final.c')
-rw-r--r--gcc/final.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/final.c b/gcc/final.c
index c0a1322..a3a9e7c 100644
--- a/gcc/final.c
+++ b/gcc/final.c
@@ -677,7 +677,8 @@ compute_alignments ()
int fallthru_frequency = 0, branch_frequency = 0, has_fallthru = 0;
edge e;
- if (GET_CODE (label) != CODE_LABEL)
+ if (GET_CODE (label) != CODE_LABEL
+ || probably_never_executed_bb_p (bb))
continue;
max_log = LABEL_ALIGN (label);
max_skip = LABEL_ALIGN_MAX_SKIP;
@@ -716,6 +717,7 @@ compute_alignments ()
/* In case block is frequent and reached mostly by non-fallthru edge,
align it. It is most likely a first block of loop. */
if (has_fallthru
+ && maybe_hot_bb_p (bb)
&& branch_frequency + fallthru_frequency > BB_FREQ_MAX / 10
&& branch_frequency > fallthru_frequency * 2)
{