llvm-6502/lib/Transforms/Scalar
Duncan Sands 5cdbb1de7d Fix PR12858, a crash due to GVN's PRE not fully removing an instruction from the
leader table.  That's because it wasn't expecting instructions to turn up as
leader for a value number that is not its own, but equality propagation could
create this situation.  One solution is to have the leader table use a WeakVH
but this slows down GVN by about 5%.  Instead just have equality propagation not
add instructions to the leader table, only constants and arguments.  In theory
this might cause GVN to run more (each time it changes something it runs again)
but it doesn't seem to occur enough to cause a slow down.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157251 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-22 14:17:53 +00:00
..
ADCE.cpp The landingpad instruction isn't dead simply because it's value isn't used. 2011-08-19 21:52:06 +00:00
BasicBlockPlacement.cpp Get rid of static constructors for pass registration. Instead, every pass exposes an initializeMyPassFunction(), which 2010-10-19 17:21:58 +00:00
CMakeLists.txt build/CMake: Finish removal of add_llvm_library_dependencies. 2011-11-29 19:25:30 +00:00
CodeGenPrepare.cpp Switch the select to branch transformation on by default. 2012-05-06 14:25:16 +00:00
ConstantProp.cpp Last bit of TargetLibraryInfo propagation. Also fixed a case for TargetData 2011-12-01 21:29:16 +00:00
CorrelatedValuePropagation.cpp llvm::SwitchInst 2012-03-11 06:09:17 +00:00
DCE.cpp Remove unused STL header includes. 2011-04-23 19:53:52 +00:00
DeadStoreElimination.cpp Teach DeadStoreElimination to eliminate exit-block stores with phi addresses. 2012-05-10 18:57:38 +00:00
EarlyCSE.cpp bz11794 : EarlyCSE stack overflow on long functions. 2012-01-31 23:14:41 +00:00
GlobalMerge.cpp Fix various issues (or do cleanups) found by enabling certain MSVC warnings. 2012-02-13 06:30:56 +00:00
GVN.cpp Fix PR12858, a crash due to GVN's PRE not fully removing an instruction from the 2012-05-22 14:17:53 +00:00
IndVarSimplify.cpp More IndVarSimplify cleanup. 2012-03-24 00:51:17 +00:00
JumpThreading.cpp enhance jump threading to preserve TBAA information when PRE'ing loads, 2012-03-13 18:07:41 +00:00
LICM.cpp An instruction in a loop is not guaranteed to be executed just because the loop 2012-05-01 04:03:01 +00:00
LLVMBuild.txt LLVMBuild: Remove trailing newline, which irked me. 2011-12-12 19:48:00 +00:00
LoopDeletion.cpp Don't use PN->replaceUsesOfWith() to change a PHINode's incoming blocks, 2011-06-21 10:02:43 +00:00
LoopIdiomRecognize.cpp Correct grammar. 2011-09-13 00:44:16 +00:00
LoopInstSimplify.cpp Propagate TargetLibraryInfo throughout ConstantFolding.cpp and 2011-12-01 03:08:23 +00:00
LoopRotation.cpp loop-rotate shouldn't hoist alloca instructions out of a loop. Patch by Patrik Hägglund, with slightly modified test. Issue reported by Patrik Hägglund on llvmdev. 2012-02-16 00:41:10 +00:00
LoopStrengthReduce.cpp Make sure HoistInsertPosition finds a position that is dominated by all 2012-04-30 03:53:06 +00:00
LoopUnrollPass.cpp LoopUnrollPass: Use variable "Threshold" instead of "CurrentThreshold" when 2012-04-04 11:44:08 +00:00
LoopUnswitch.cpp Do not pass an invalid domtree to SimplifyInstruction from 2012-05-20 01:32:09 +00:00
LowerAtomic.cpp Remove the old atomic instrinsics. autoupgrade functionality is included with this patch. 2011-10-06 23:20:49 +00:00
Makefile
MemCpyOptimizer.cpp Move the capture analysis from MemoryDependencyAnalysis to a more general place 2012-05-14 20:35:04 +00:00
ObjCARC.cpp Mark an unreachable region of code with llvm_unreachable. 2012-05-21 17:41:28 +00:00
Reassociate.cpp Calling ReassociateExpression recursively is extremely dangerous since it will 2012-05-08 12:16:05 +00:00
Reg2Mem.cpp Fix a ton of comment typos found by codespell. Patch by 2011-04-15 05:18:47 +00:00
Scalar.cpp Add a new ObjC ARC optimization pass to eliminate unneeded 2012-01-17 20:52:24 +00:00
ScalarReplAggregates.cpp Do not eliminate allocas whose alignment exceeds that of the 2012-05-19 22:52:10 +00:00
SCCP.cpp Fix 80-column violation. 2012-03-28 00:35:33 +00:00
SimplifyCFGPass.cpp Convert CallInst and InvokeInst APIs to use ArrayRef. 2011-07-15 08:37:34 +00:00
SimplifyLibCalls.cpp Teach SimplifyLibCalls about stpcpy. 2012-05-15 11:46:21 +00:00
Sink.cpp Move Instruction::isSafeToSpeculativelyExecute out of VMCore and 2011-12-14 23:49:11 +00:00
TailRecursionElimination.cpp A pile of long over-due refactorings here. There are some very, *very* 2012-05-04 00:58:03 +00:00