[PATCH] D130052: [BOLT] Support passing fragments to code emission
Fabian Parzefall via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Jul 25 14:41:10 PDT 2022
FPar created this revision.
Herald added a reviewer: rafauler.
Herald added a subscriber: ayermolo.
Herald added a reviewer: Amir.
Herald added a reviewer: maksfb.
Herald added a project: All.
FPar added a reviewer: yota9.
FPar retitled this revision from "[BOLT] Make code emission multi fragment aware" to "[BOLT] Support passing fragments to code emission".
FPar edited the summary of this revision.
FPar updated this revision to Diff 447479.
FPar added a comment.
FPar published this revision for review.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.
Clean diff up
This changes code emission such that it can emit specific function
fragments instead of scanning all basic blocks of a function and just
emitting those that are hot or cold.
To implement this, `FunctionLayout` explicitly distinguishes the "main"
fragment (i.e. the one that contains the entry block and is associated
with the original symbol) from "split" fragments. Additionally,
`BinaryFunction` receives support for multiple cold symbols - one for
each split fragment.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D130052
Files:
bolt/include/bolt/Core/BinaryEmitter.h
bolt/include/bolt/Core/BinaryFunction.h
bolt/include/bolt/Core/FunctionLayout.h
bolt/lib/Core/BinaryContext.cpp
bolt/lib/Core/BinaryEmitter.cpp
bolt/lib/Core/BinaryFunction.cpp
bolt/lib/Rewrite/RewriteInstance.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D130052.447479.patch
Type: text/x-patch
Size: 22848 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20220725/58520cbd/attachment.bin>
More information about the llvm-commits
mailing list