[all-commits] [llvm/llvm-project] 7b30e9: [PGO] Load branch uniformity profiles and mark ava...
Yaxun (Sam) Liu via All-commits
all-commits at lists.llvm.org
Fri Sep 11 07:16:12 PDT 2026
Branch: refs/heads/users/yxsamliu/load-uniformity-profile
Home: https://github.com/llvm/llvm-project
Commit: 7b30e9690b5ff2524836150f227f3d0e2f8379d1
https://github.com/llvm/llvm-project/commit/7b30e9690b5ff2524836150f227f3d0e2f8379d1
Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
Date: 2026-09-11 (Fri, 11 Sep 2026)
Changed paths:
M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
M llvm/unittests/Transforms/Instrumentation/PGOInstrumentationTest.cpp
Log Message:
-----------
[PGO] Load branch uniformity profiles and mark availability
Uniformity profiles record block observations, but optimizations also
need information about branch decisions. A missing branch annotation
alone cannot tell them whether profile data is absent or no branches
are known to be uniform.
Mark functions when uniformity data is loaded and derive branch
annotations from blocks with a single conditional predecessor. Each
such block measures the lanes taking one outgoing edge. Mark a branch
as uniform only when all its instrumented outgoing edges are classified
as uniform, so one uniform edge cannot hide a divergent edge.
Replace existing branch annotations when loading the profile. This
clears an old uniform classification if the new data no longer supports
it. The function marker lets consumers use these results while keeping
their existing behavior when no uniformity profile is available.
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list