[all-commits] [llvm/llvm-project] 4609f6: [BOLT] Avoid pointless loop rotation
spupyrev via All-commits
all-commits at lists.llvm.org
Tue Mar 22 12:43:00 PDT 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 4609f60ebc57d0bd63f97cae11978b96c53204d6
https://github.com/llvm/llvm-project/commit/4609f60ebc57d0bd63f97cae11978b96c53204d6
Author: spupyrev <spupyrev at fb.com>
Date: 2022-03-22 (Tue, 22 Mar 2022)
Changed paths:
M bolt/lib/Passes/LoopInversionPass.cpp
M bolt/test/X86/loop-inversion-pass.s
Log Message:
-----------
[BOLT] Avoid pointless loop rotation
It seems the earlier implementation does not follow the description
in LoopRotationPass.h: It rotates loops even if they are already laid out
correctly. The diff adjusts the behaviour.
Given that the impact of LoopInversionPass is minor, this change won't
yield significant perf differences. Tested on clang-10: there seems to be a
0.1%-0.3% cpu win and a small reduction of branch misses.
**Before:**
BOLT-INFO: 120 Functions were reordered by LoopInversionPass
**After:**
BOLT-INFO: 79 Functions were reordered by LoopInversionPass
Reviewed By: yota9
Differential Revision: https://reviews.llvm.org/D121921
More information about the All-commits
mailing list