[all-commits] [llvm/llvm-project] 74f0f9: [LICM] Create LoopNest Invariant Code Motion (LNIC...
uint256_t via All-commits
all-commits at lists.llvm.org
Mon Jul 19 08:32:37 PDT 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 74f0f9a455c55101c0cb2ab36df5abae134fd78d
https://github.com/llvm/llvm-project/commit/74f0f9a455c55101c0cb2ab36df5abae134fd78d
Author: maekawatoshiki <konndennsa at gmail.com>
Date: 2021-07-20 (Tue, 20 Jul 2021)
Changed paths:
M llvm/include/llvm/Transforms/Scalar/LICM.h
M llvm/include/llvm/Transforms/Utils/LoopUtils.h
M llvm/lib/Passes/PassRegistry.def
M llvm/lib/Transforms/Scalar/LICM.cpp
A llvm/test/Transforms/LICM/lnicm.ll
Log Message:
-----------
[LICM] Create LoopNest Invariant Code Motion (LNICM) pass
This patch adds a new pass called LNICM which is a LoopNest version of LICM and a test case to show how LNICM works.
Basically, LNICM only hoists invariants out of loop nest (not a loop) to keep/make perfect loop nest. This enables later optimizations that require perfect loop nest.
Reviewed By: Whitney
Differential Revision: https://reviews.llvm.org/D104180
More information about the All-commits
mailing list