1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-24 21:42:54 +02:00
llvm-mirror/lib/Transforms/Scalar
Benjamin Kramer 7d87bba7c4 LoopIdiom: Replace custom dependence analysis with LoopDependenceAnalysis.
Requires a lot less code and complexity on loop-idiom's side and the more
precise analysis can catch more cases, like the one I included as a test case.
This also fixes the edge-case miscompilation from PR9481. I'm not entirely
sure that all cases are handled that the old checks handled but LDA will
certainly become smarter in the future.

llvm-svn: 166390
2012-10-21 15:03:07 +00:00
..
ADCE.cpp Clean whitespaces. 2012-07-24 10:51:42 +00:00
BasicBlockPlacement.cpp
CMakeLists.txt Introduce a new SROA implementation. 2012-09-14 09:22:59 +00:00
CodeGenPrepare.cpp Move the Attributes::Builder outside of the Attributes class and into its own class named AttrBuilder. No functionality change. 2012-10-15 20:35:56 +00:00
ConstantProp.cpp Move TargetData to DataLayout. 2012-10-08 16:38:25 +00:00
CorrelatedValuePropagation.cpp CorrelatedPropagation: BasicBlock::removePredecessor can simplify PHI nodes. If the it's the condition of a SwitchInst, reload it. 2012-09-28 10:42:50 +00:00
DCE.cpp 80-col fixup. 2012-10-16 19:39:40 +00:00
DeadStoreElimination.cpp Unquadratize SetVector removal loops in DSE. 2012-10-14 10:21:31 +00:00
EarlyCSE.cpp Update EarlyCSE's SimpleValues to use Hashing.h for their hashes. Expanded the hashing and equality to allow for equality modulo commutativity for binary ops, and comparisons with swapping of predicates. 2012-10-09 16:57:38 +00:00
GlobalMerge.cpp Move TargetData to DataLayout. 2012-10-08 16:38:25 +00:00
GVN.cpp Move TargetData to DataLayout. 2012-10-08 16:38:25 +00:00
IndVarSimplify.cpp Indvars: Don't recursively delete instruction during BB iteration. 2012-10-19 17:53:54 +00:00
JumpThreading.cpp Move TargetData to DataLayout. 2012-10-08 16:38:25 +00:00
LICM.cpp Move TargetData to DataLayout. 2012-10-08 16:38:25 +00:00
LLVMBuild.txt LLVMBuild: Remove trailing newline, which irked me. 2011-12-12 19:48:00 +00:00
LoopDeletion.cpp Clean whitespaces. 2012-07-24 10:51:42 +00:00
LoopIdiomRecognize.cpp LoopIdiom: Replace custom dependence analysis with LoopDependenceAnalysis. 2012-10-21 15:03:07 +00:00
LoopInstSimplify.cpp Move TargetData to DataLayout. 2012-10-08 16:38:25 +00:00
LoopRotation.cpp LoopRotation: Make the brute force DomTree update more brute force. 2012-09-02 11:57:22 +00:00
LoopStrengthReduce.cpp revert r166264 because the LTO build is still failing 2012-10-19 21:28:43 +00:00
LoopUnrollPass.cpp Create enums for the different attributes. 2012-10-09 07:45:08 +00:00
LoopUnswitch.cpp Simplify code. No functionality change. 2012-10-16 19:52:32 +00:00
LowerAtomic.cpp Clean whitespaces. 2012-07-24 10:51:42 +00:00
Makefile
MemCpyOptimizer.cpp Resubmit the changes to llvm core to update the functions to support different pointer sizes on a per address space basis. 2012-10-15 16:24:29 +00:00
ObjCARC.cpp Use the Attributes::get method which takes an AttrVal value directly to simplify the code a bit. No functionality change. 2012-10-16 05:23:31 +00:00
Reassociate.cpp Stop reassociate from looking through expressions of arbitrary complexity. This 2012-07-26 09:26:40 +00:00
Reg2Mem.cpp Clean whitespaces. 2012-07-24 10:51:42 +00:00
Scalar.cpp Move TargetData to DataLayout. 2012-10-08 16:38:25 +00:00
ScalarReplAggregates.cpp Move TargetData to DataLayout. 2012-10-08 16:38:25 +00:00
SCCP.cpp Move TargetData to DataLayout. 2012-10-08 16:38:25 +00:00
SimplifyCFGPass.cpp Move TargetData to DataLayout. 2012-10-08 16:38:25 +00:00
SimplifyLibCalls.cpp SimplifyLibcalls: The return value of ffsll is always i32, even when the input is zero. 2012-10-19 20:43:44 +00:00
Sink.cpp Clean whitespaces. 2012-07-24 10:51:42 +00:00
SROA.cpp SROA: Simplify code. No functionality change. 2012-10-20 12:04:57 +00:00
TailRecursionElimination.cpp Clean whitespaces. 2012-07-24 10:51:42 +00:00