llvm-6502/lib/Transforms/Scalar
Andrew Trick b2ab2fa524 Inlining and unrolling heuristics should be aware of free truncs.
We want heuristics to be based on accurate data, but more importantly
we don't want llvm to behave randomly. A benign trunc inserted by an
upstream pass should not cause a wild swings in optimization
level. See PR11034. It's a general problem with threshold-based
heuristics, but we can make it less bad.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140919 91177308-0d34-0410-b5e6-96231b3b80d8
2011-10-01 01:39:05 +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
CMakeLists.txt Remove the old tail duplication pass. It is not used and is unable to update 2011-08-30 23:03:45 +00:00
CodeGenPrepare.cpp Fold two identical set lookups into one. No functionality change. 2011-09-29 23:40:12 +00:00
ConstantProp.cpp
CorrelatedValuePropagation.cpp
DCE.cpp
DeadStoreElimination.cpp Add comment to clarify the behavior of a helper in DSE. 2011-09-13 01:28:59 +00:00
EarlyCSE.cpp Change a bunch of isVolatile() checks to check for atomic load/store as well. 2011-09-12 20:23:13 +00:00
GVN.cpp Stop emitting instructions with the name "tmp" they eat up memory and have to be uniqued, without any benefit. 2011-09-27 20:39:19 +00:00
IndVarSimplify.cpp indvars should hoist [sz]ext because licm is not rerun. 2011-09-28 01:35:36 +00:00
JumpThreading.cpp Change a bunch of isVolatile() checks to check for atomic load/store as well. 2011-09-12 20:23:13 +00:00
LICM.cpp Use 'getFirstInsertionPt' when trying to insert new instructions during LICM. 2011-08-18 23:42:36 +00:00
LoopDeletion.cpp
LoopIdiomRecognize.cpp Correct grammar. 2011-09-13 00:44:16 +00:00
LoopInstSimplify.cpp
LoopRotation.cpp
LoopStrengthReduce.cpp typo + pasto 2011-09-29 01:53:08 +00:00
LoopUnrollPass.cpp Inlining and unrolling heuristics should be aware of free truncs. 2011-10-01 01:39:05 +00:00
LoopUnswitch.cpp Stop emitting instructions with the name "tmp" they eat up memory and have to be uniqued, without any benefit. 2011-09-27 20:39:19 +00:00
LowerAtomic.cpp Make a bunch of symbols private. 2011-08-19 01:42:18 +00:00
Makefile
MemCpyOptimizer.cpp Atomic load/store handling for the passes using memdep (GVN, DSE, memcpyopt). 2011-08-17 22:22:24 +00:00
ObjCARC.cpp When eliminating unnecessary retain+autorelease on return values, 2011-09-29 22:27:34 +00:00
Reassociate.cpp
Reg2Mem.cpp
Scalar.cpp Remove the old tail duplication pass. It is not used and is unable to update 2011-08-30 23:03:45 +00:00
ScalarReplAggregates.cpp Stop emitting instructions with the name "tmp" they eat up memory and have to be uniqued, without any benefit. 2011-09-27 20:39:19 +00:00
SCCP.cpp Make sure IPSCCP never marks a tracked call as overdefined in SCCPSolver::ResolvedUndefsIn. If we do, we can end up in a situation where a function is resolved to return a constant, but the caller is marked overdefined, which confuses the code later. 2011-09-20 23:28:51 +00:00
SimplifyCFGPass.cpp
SimplifyLibCalls.cpp Stop emitting instructions with the name "tmp" they eat up memory and have to be uniqued, without any benefit. 2011-09-27 20:39:19 +00:00
Sink.cpp Fix an issue with the IR sink pass found by inspection. (I'm not sure anyone is actually using this, but might as well fix it since I found the issue.) 2011-09-01 21:21:24 +00:00
TailRecursionElimination.cpp