[all-commits] [llvm/llvm-project] 760103: [PGO] Load branch uniformity profiles and mark ava...
Yaxun (Sam) Liu via All-commits
all-commits at lists.llvm.org
Mon Sep 21 21:36:08 PDT 2026
Branch: refs/heads/users/yxsamliu/load-uniformity-profile
Home: https://github.com/llvm/llvm-project
Commit: 760103188c6081b3bfd202d30210962375244129
https://github.com/llvm/llvm-project/commit/760103188c6081b3bfd202d30210962375244129
Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
Date: 2026-09-21 (Mon, 21 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