llvm-6502/lib/Analysis
Dan Gohman 667d787c0a Incorporate the insertion point into the key of SCEVExpander's CSE map.
This helps it avoid reusing an instruction that doesn't dominate all
of the users, in cases where the original instruction was inserted
before all of the users were known.  This may result in redundant
expansions of sub-expressions that depend on loop-unpredictable values
in some cases, however this isn't very common, and it primarily impacts
IndVarSimplify, so GVN can be expected to clean these up.

This eliminates the need for IndVarSimplify's FixUsesBeforeDefs,
which fixes several bugs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74352 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-26 22:53:46 +00:00
..
IPA Use a more correct atomic increment style. This isn't really necessary in 2009-06-25 16:32:45 +00:00
AliasAnalysis.cpp Generalize some alias analysis logic from atomic 2009-02-14 10:56:35 +00:00
AliasAnalysisCounter.cpp Tidy up several unbeseeming casts from pointer to intptr_t. 2008-09-04 17:05:41 +00:00
AliasAnalysisEvaluator.cpp simplify logic and get rid of the assumption that operand 0 is the callee 2009-03-24 19:28:39 +00:00
AliasDebugger.cpp Refactor my previous change to maintain the distinction between AliasAnalysis and BasicAliasAnalysis. This involves some wider changes because it 2009-02-05 23:36:27 +00:00
AliasSetTracker.cpp getEntryFor() may invalidate DenseMap iterator. 2009-03-30 18:34:47 +00:00
Analysis.cpp Expose Function::viewCFG and Function::viewCFGOnly to bindings. 2008-03-31 16:22:09 +00:00
BasicAliasAnalysis.cpp Remove unneeded #include. 2009-06-22 22:09:07 +00:00
CaptureTracking.cpp Revert r70876 and add a testcase (@c7) showing the problem: 2009-05-07 18:08:34 +00:00
CFGPrinter.cpp Get rid of the global CFGOnly flag by threading a ShortNames parameters through the GraphViz rendering code. 2009-06-24 17:37:09 +00:00
CMakeLists.txt Fix linking of llvm-ld and lli with CMake, from Xerxes Rånby 2009-06-26 15:37:00 +00:00
ConstantFolding.cpp Support vector casts in more places, fixing a variety of assertion 2009-06-15 22:12:54 +00:00
DbgInfoPrinter.cpp Use getReturnTypeName() to print return type. 2009-06-23 22:23:13 +00:00
DebugInfo.cpp Remove debug info anchors - llvm.dbg.compile_units, llvm.dbg.subprograms 2009-06-26 01:49:18 +00:00
InstCount.cpp Remove some unnecessary #includes. 2009-06-05 16:32:58 +00:00
Interval.cpp Remove attribution from file headers, per discussion on llvmdev. 2007-12-29 20:36:04 +00:00
IntervalPartition.cpp Tidy up several unbeseeming casts from pointer to intptr_t. 2008-09-04 17:05:41 +00:00
IVUsers.cpp SCEVHandle is no more! 2009-06-22 21:39:50 +00:00
LibCallAliasAnalysis.cpp Expose a public interface to this pass. 2008-06-05 23:45:18 +00:00
LibCallSemantics.cpp Add a new interface for describing the behavior of library calls. This 2008-05-07 18:21:13 +00:00
LiveValues.cpp Delete an obsolete sentance from a comment. 2009-05-31 16:18:57 +00:00
LoopDependenceAnalysis.cpp Scaffolding for LDA pass. 2009-06-24 21:29:13 +00:00
LoopInfo.cpp Remove some unnecessary #includes. 2009-06-05 16:32:58 +00:00
LoopPass.cpp Before deleting a basic block, give other loop passes a chance cleanup analysis values, related to the instructions in the basic block. 2009-03-25 23:57:48 +00:00
LoopVR.cpp SCEVHandle is no more! 2009-06-22 21:39:50 +00:00
Makefile Removed trailing whitespace from Makefiles. 2009-01-09 16:44:42 +00:00
MemoryDependenceAnalysis.cpp make memdep use the getModRefInfo method for stores instead of the 2009-05-25 21:28:56 +00:00
PostDominators.cpp Add newline at end of file. 2008-05-29 21:05:16 +00:00
ProfileInfo.cpp Tidy up several unbeseeming casts from pointer to intptr_t. 2008-09-04 17:05:41 +00:00
ProfileInfoLoader.cpp Get rid of a static boolean. 2009-06-24 22:08:59 +00:00
ProfileInfoLoaderPass.cpp Tidy up several unbeseeming casts from pointer to intptr_t. 2008-09-04 17:05:41 +00:00
ScalarEvolution.cpp Fix ScalarEvolution::getAddRecExpr's code which canonicalized the 2009-06-26 22:36:20 +00:00
ScalarEvolutionExpander.cpp Incorporate the insertion point into the key of SCEVExpander's CSE map. 2009-06-26 22:53:46 +00:00
SparsePropagation.cpp Make Print callable from a pass's print method: add const qualifier. No 2009-03-11 20:50:17 +00:00
Trace.cpp Remove attribution from file headers, per discussion on llvmdev. 2007-12-29 20:36:04 +00:00
ValueTracking.cpp Fix llvm::ComputeNumSignBits to handle pointer types 2009-06-22 22:02:32 +00:00