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 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 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 Get rid of static constructors for pass registration. Instead, every pass exposes an initializeMyPassFunction(), which 2010-10-19 17:21:58 +00:00
CorrelatedValuePropagation.cpp Don't include Operator.h from InstrTypes.h. 2011-04-11 09:35:34 +00:00
DCE.cpp Remove unused STL header includes. 2011-04-23 19:53:52 +00:00
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 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 LoopInstSimplify preserves ScalarEvolution. 2011-02-11 06:08:25 +00:00
LoopRotation.cpp Make better use of the PHINode API. 2011-06-20 14:18:48 +00:00
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 make -fno-rtti the default unless a directory builds with REQUIRES_RTTI. 2010-01-24 20:43:08 +00:00
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 Silence a bunch (but not all) "variable written but not read" warnings 2011-08-12 14:54:45 +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 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 Convert CallInst and InvokeInst APIs to use ArrayRef. 2011-07-15 08:37:34 +00:00
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 Don't do tail calls in a function that call setjmp. The stack might be 2011-05-16 03:05:33 +00:00