llvm-project/llvm/lib/Transforms/Scalar
Bill Wendling 90dd90afcb Don't eliminate a partially redundant load if it's in a landing pad.
A landing pad can be jumped to only by the unwind edge of an invoke
instruction. If we eliminate a partially redundant load in a landing pad, it
will create a basic block that violates this constraint. It then leads to other
problems down the line if it tries to merge that basic block with the landing
pad. Avoid this by not eliminating the load in a landing pad.

PR17621

llvm-svn: 193064
2013-10-21 04:09:17 +00:00
..
ADCE.cpp Use SmallVectorImpl::iterator/const_iterator instead of SmallVector to avoid specifying the vector size. 2013-07-04 01:31:24 +00:00
CMakeLists.txt Remove the long, long defunct IR block placement pass. 2013-09-14 09:28:14 +00:00
CodeGenPrepare.cpp Remove the very substantial, largely unmaintained legacy PGO 2013-10-02 15:42:23 +00:00
ConstantProp.cpp Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
CorrelatedValuePropagation.cpp CVP: If we have a PHI with an incoming select, try to skip the select. 2013-02-24 15:34:43 +00:00
DCE.cpp Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
DeadStoreElimination.cpp Change GetPointerBaseWithConstantOffset's DataLayout argument from a 2013-01-31 02:00:45 +00:00
EarlyCSE.cpp Get rid of unused isPodLike definitions. 2013-09-11 00:36:54 +00:00
FlattenCFGPass.cpp Factor FlattenCFG out from SimplifyCFG 2013-08-06 02:43:45 +00:00
GVN.cpp Resurrect r191017 " GVN proceeds in the presence of dead code" plus a fix to PR17307 & 17308. 2013-09-20 23:12:57 +00:00
GlobalMerge.cpp Change tabs to spaces. 2013-07-22 21:11:30 +00:00
IndVarSimplify.cpp Teach ScalarEvolution about pointer address spaces 2013-09-10 19:55:24 +00:00
JumpThreading.cpp Don't eliminate a partially redundant load if it's in a landing pad. 2013-10-21 04:09:17 +00:00
LICM.cpp LICM: Hoist insertvalue/extractvalue out of loops. 2013-01-09 18:12:03 +00:00
LLVMBuild.txt LLVMBuild: Remove trailing newline, which irked me. 2011-12-12 19:48:00 +00:00
LoopDeletion.cpp Use SmallVectorImpl& instead of SmallVector to avoid repeating small vector size. 2013-07-14 04:42:23 +00:00
LoopIdiomRecognize.cpp Even more spelling fixes for "instruction". 2013-09-28 13:42:22 +00:00
LoopInstSimplify.cpp Remove #includes from the commonly used LoopInfo.h. 2013-02-09 01:04:28 +00:00
LoopRotation.cpp Rotate multi-exit loops even if the latch was simplified. 2013-05-06 17:58:18 +00:00
LoopStrengthReduce.cpp LSR: Fix the parameters used to compute the scaling factor cost. 2013-06-19 19:59:41 +00:00
LoopUnrollPass.cpp Add getUnrollingPreferences to TTI 2013-09-11 19:25:43 +00:00
LoopUnswitch.cpp Adjust file to the coding standard. 2013-08-06 17:03:42 +00:00
LowerAtomic.cpp Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
Makefile
MemCpyOptimizer.cpp MemCpyOptimizer: Use max legal int size instead of pointer size 2013-09-16 22:43:16 +00:00
PartiallyInlineLibCalls.cpp Turn MipsOptimizeMathLibCalls into a target-independent scalar transform 2013-08-23 10:27:02 +00:00
Reassociate.cpp Use switch instead of if. No functionality change. 2013-07-22 23:38:16 +00:00
Reg2Mem.cpp Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
SCCP.cpp Use SmallVectorImpl& instead of SmallVector to avoid repeating small vector size. 2013-07-14 04:42:23 +00:00
SROA.cpp Drop spurious handle in comment. 2013-09-22 11:24:58 +00:00
Scalar.cpp Remove the long, long defunct IR block placement pass. 2013-09-14 09:28:14 +00:00
ScalarReplAggregates.cpp Revert r187191, which broke opt -mem2reg on the testcases included in PR16867. 2013-08-13 22:51:58 +00:00
SimplifyCFGPass.cpp Reapply r188119 now that the bug it exposed is fixed. 2013-08-12 22:38:43 +00:00
Sink.cpp Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
StructurizeCFG.cpp StructurizeCFG: Add dependency on LowerSwitch pass 2013-10-02 17:04:59 +00:00
TailRecursionElimination.cpp TRE: Move class into anonymous namespace. 2013-07-24 16:12:08 +00:00