aboutsummaryrefslogtreecommitdiff
path: root/libjava/classpath/lib/java/util/concurrent
diff options
context:
space:
mode:
authorJan Hubicka <hubicka@ucw.cz>2025-06-22 11:06:12 +0200
committerJan Hubicka <hubicka@ucw.cz>2025-06-22 11:06:12 +0200
commitacd5f587ca6a5deaebab19f6b0935321853c9f6f (patch)
tree90e27b77cf31986a8819fffbc44349e738ee8e41 /libjava/classpath/lib/java/util/concurrent
parented02d762d51d9544aeca52a8b306c2da2f36bd7f (diff)
downloadgcc-acd5f587ca6a5deaebab19f6b0935321853c9f6f.zip
gcc-acd5f587ca6a5deaebab19f6b0935321853c9f6f.tar.gz
gcc-acd5f587ca6a5deaebab19f6b0935321853c9f6f.tar.bz2
Fix some problems with afdo propagation
This patch fixes problems I noticed by exploring profiles of some hot functions in GCC. In particular the propagation sometimes changed precise 0 to afdo 0 for paths calling abort and sometimes we could propagate more when we accept that some paths has 0 count. Finally there was important bug in computing all_known which resulted in BB probabilities to be quite broken after afdo. Bootstrapped/regtested x86_64-linux, comitted. gcc/ChangeLog: * auto-profile.cc (update_count_by_afdo_count): Make static; add variant accepting profile_count. (afdo_find_equiv_class): Use update_count_by_afdo_count. (afdo_propagate_edge): Likewise. (afdo_propagate): Likewise. (afdo_calculate_branch_prob): Fix handling of all_known. (afdo_annotate_cfg): Annotate by 0 where both afdo and static profile agrees.
Diffstat (limited to 'libjava/classpath/lib/java/util/concurrent')
0 files changed, 0 insertions, 0 deletions