[PATCH] D141931: [BOLT] Consider Code Fragments during regreassign
Rafael Auler via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Aug 7 15:19:50 PDT 2023
rafauler added a comment.
Thanks! Mostly formatting nits:
================
Comment at: bolt/include/bolt/Core/BinaryFunction.h:376
/// All fragments for a parent function.
- SmallPtrSet<BinaryFunction *, 1> Fragments;
+ using FragmentsSetTy = SmallPtrSet<BinaryFunction *, 1>;
+ FragmentsSetTy Fragments;
----------------
Since you added a new getter for "getParentFraments", move this "using" to line 369 and change ParentFragments to use FrafmentsSetTy, just like Fragments.
================
Comment at: bolt/lib/Passes/RegReAssign.cpp:195-197
+ for (BinaryBasicBlock &BB : Function) {
+ countRegScore(BB);
+ }
----------------
nit: drop braces here:
================
Comment at: bolt/lib/Passes/RegReAssign.cpp:198-202
+ for (BinaryFunction *ChildFrag : Function.getFragments()) {
+ for (BinaryBasicBlock &BB : *ChildFrag) {
+ countRegScore(BB);
+ }
}
----------------
================
Comment at: bolt/lib/Passes/RegReAssign.cpp:230
+ for (BinaryFunction *ChildFrag : Function.getFragments()) {
+ if (ChildFrag->getParentFragments()->size() > 1) return;
+ if (ChildFrag->empty()) {
----------------
clang-format
================
Comment at: bolt/lib/Passes/RegReAssign.cpp:231-233
+ if (ChildFrag->empty()) {
+ return;
+ }
----------------
================
Comment at: bolt/lib/Passes/RegReAssign.cpp:343
+ for (BinaryFunction *ChildFrag : Function.getFragments()) {
+ if (ChildFrag->getParentFragments()->size() > 1) return false;
+ if (ChildFrag->empty()) {
----------------
clang-format
================
Comment at: bolt/lib/Passes/RegReAssign.cpp:344-346
+ if (ChildFrag->empty()) {
+ return false;
+ }
----------------
================
Comment at: bolt/test/X86/reg-reassign-swap-cold.s:12
+# RUN: llvm-bolt %t.exe -o %t.out -data=%t.fdata --reg-reassign | FileCheck %s
+# RUN: %t.out
+
----------------
Because this tests runs the produced output, we need to move this test to the folder test/runtime/X86
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D141931/new/
https://reviews.llvm.org/D141931
More information about the llvm-commits
mailing list