diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/predict.c | 8 |
2 files changed, 8 insertions, 5 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 627d1bc..76da731 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,10 @@ 2019-12-10 Jan Hubicka <hubicka@ucw.cz> + * predict.c (compute_function_frequency): Check for presence of IPA + profile. + +2019-12-10 Jan Hubicka <hubicka@ucw.cz> + * varasm.c (default_function_section): Fix confused tests for tp_first_run reordering. diff --git a/gcc/predict.c b/gcc/predict.c index 8db2481..4b5b77e 100644 --- a/gcc/predict.c +++ b/gcc/predict.c @@ -3932,13 +3932,11 @@ compute_function_frequency (void) if (DECL_STATIC_DESTRUCTOR (current_function_decl)) node->only_called_at_exit = true; - if (profile_status_for_fn (cfun) != PROFILE_READ) + if (!ENTRY_BLOCK_PTR_FOR_FN (cfun)->count.ipa_p ()) { int flags = flags_from_decl_or_type (current_function_decl); - if ((ENTRY_BLOCK_PTR_FOR_FN (cfun)->count.ipa_p () - && ENTRY_BLOCK_PTR_FOR_FN (cfun)->count.ipa() == profile_count::zero ()) - || lookup_attribute ("cold", DECL_ATTRIBUTES (current_function_decl)) - != NULL) + if (lookup_attribute ("cold", DECL_ATTRIBUTES (current_function_decl)) + != NULL) { node->frequency = NODE_FREQUENCY_UNLIKELY_EXECUTED; warn_function_cold (current_function_decl); |