[PATCH] D12528: Add AliasAnalysis as preserved for a bunch of transforms
James Molloy via llvm-commits
llvm-commits at lists.llvm.org
Tue Sep 1 06:41:21 PDT 2015
jmolloy created this revision.
jmolloy added a reviewer: chandlerc.
jmolloy added a subscriber: llvm-commits.
jmolloy set the repository for this revision to rL LLVM.
AliasAnalysis must be preserved by definition. But most passes don't inform the pass manager of this, so it invalidates non-Immutable alias passes.
Drive-by add addPreserved<AliasAnalysis>() to all passes in Scalar/ and InstCombine/.
Chandler, I think you said you were going to look at some PassManager trick for this... but I assume that didn't come to anything and this patch isn't invasive anyway.
This allows us to turn on GlobalsModRef by default and it actually be useful.
Repository:
rL LLVM
http://reviews.llvm.org/D12528
Files:
lib/Transforms/InstCombine/InstructionCombining.cpp
lib/Transforms/Scalar/ADCE.cpp
lib/Transforms/Scalar/BDCE.cpp
lib/Transforms/Scalar/CorrelatedValuePropagation.cpp
lib/Transforms/Scalar/EarlyCSE.cpp
lib/Transforms/Scalar/IndVarSimplify.cpp
lib/Transforms/Scalar/JumpThreading.cpp
lib/Transforms/Scalar/LoopDeletion.cpp
lib/Transforms/Scalar/LoopUnrollPass.cpp
lib/Transforms/Scalar/LoopUnswitch.cpp
lib/Transforms/Scalar/Reassociate.cpp
lib/Transforms/Scalar/SCCP.cpp
lib/Transforms/Scalar/SROA.cpp
lib/Transforms/Scalar/SimplifyCFGPass.cpp
lib/Transforms/Scalar/TailRecursionElimination.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D12528.33685.patch
Type: text/x-patch
Size: 10620 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150901/b7c82e04/attachment.bin>
More information about the llvm-commits
mailing list