[all-commits] [llvm/llvm-project] 105adf: [SHT_LLVM_BB_ADDR_MAP] Implements PGOAnalysisMap i...
Micah Weston via All-commits
all-commits at lists.llvm.org
Tue Dec 12 07:23:30 PST 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 105adf2cd9588b4839fbdc7287bb76a962fdb8ca
https://github.com/llvm/llvm-project/commit/105adf2cd9588b4839fbdc7287bb76a962fdb8ca
Author: Micah Weston <micahsweston at gmail.com>
Date: 2023-12-12 (Tue, 12 Dec 2023)
Changed paths:
M llvm/include/llvm/Object/ELF.h
M llvm/include/llvm/Object/ELFObjectFile.h
M llvm/include/llvm/Object/ELFTypes.h
M llvm/include/llvm/ObjectYAML/ELFYAML.h
M llvm/lib/Object/ELF.cpp
M llvm/lib/Object/ELFObjectFile.cpp
M llvm/lib/ObjectYAML/ELFEmitter.cpp
M llvm/lib/ObjectYAML/ELFYAML.cpp
M llvm/unittests/Object/ELFObjectFileTest.cpp
M llvm/unittests/Object/ELFTypesTest.cpp
Log Message:
-----------
[SHT_LLVM_BB_ADDR_MAP] Implements PGOAnalysisMap in Object and ObjectYAML with tests.
Reviewed in PR (#71750). A part of [RFC - PGO Accuracy Metrics: Emitting and Evaluating Branch
and Block
Analysis](https://discourse.llvm.org/t/rfc-pgo-accuracy-metrics-emitting-and-evaluating-branch-and-block-analysis/73902).
This PR adds the PGOAnalysisMap data structure and implements encoding and
decoding through Object and ObjectYAML along with associated tests. When
emitted into the bb-addr-map section, each function is followed by the associated
pgo-analysis-map for that function. The emitting of each analysis in the map is
controlled by a bit in the bb-addr-map feature byte. All existing bb-addr-map
code can ignore the pgo-analysis-map if the caller does not request the data.
More information about the All-commits
mailing list