[PATCH] D17203: [LICM] Hoist and sink entire inner loops.
Chris Diamand via llvm-commits
llvm-commits at lists.llvm.org
Fri Feb 12 09:36:05 PST 2016
chrisdiamand_arm created this revision.
chrisdiamand_arm added reviewers: sanjoy, majnemer, reames.
chrisdiamand_arm added a subscriber: llvm-commits.
Herald added a subscriber: mzolotukhin.
This patch teaches the LICM pass to hoist or sink an entire inner loop
out of its parent loop.
The patch is mostly complete, although I'd like to tidy a few things
up (mostly factoring shared bits out of sinking and hoisting). I'd
appreciate it if anyone could have a look over it and check I'm
not approaching this in completely the wrong way though.
Thanks!
http://reviews.llvm.org/D17203
Files:
include/llvm/Analysis/LoopInfo.h
include/llvm/Transforms/Utils/LoopUtils.h
lib/Analysis/LoopInfo.cpp
lib/Transforms/Scalar/LICM.cpp
test/Analysis/ScalarEvolution/2012-03-26-LoadConstant.ll
test/Transforms/LICM/inner-loop-dont-sink.ll
test/Transforms/LICM/inner-loop-hoist.ll
test/Transforms/LICM/inner-loop-sink-multiple-phi.ll
test/Transforms/LICM/sinking.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D17203.47813.patch
Type: text/x-patch
Size: 30235 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160212/fdc2aaed/attachment.bin>
More information about the llvm-commits
mailing list