- Nov 29, 2008
-
-
Chris Lattner authored
a smallvector instead of a DenseMap. This speeds up GVN by 5% on 403.gcc. llvm-svn: 60255
-
Chris Lattner authored
no functionality/code change. llvm-svn: 60254
-
Chris Lattner authored
formulation that is faster and doesn't require nonLazyHelper. Much less code. llvm-svn: 60253
-
Chris Lattner authored
llvm-svn: 60242
-
Chris Lattner authored
llvm-svn: 60241
-
Chris Lattner authored
Put a some code back to handle buggy behavior that GVN expects: it wants loads to depend on each other, and accesses to depend on their allocations. llvm-svn: 60240
-
Chris Lattner authored
Use getTypeStoreSize instead of ABITypeSize for in-memory size in a couple places. llvm-svn: 60238
-
Chris Lattner authored
former does caching, the later doesn't. This dramatically simplifies the logic in getDependency and getDependencyFrom. llvm-svn: 60234
-
Chris Lattner authored
Document the Dirty value more precisely, use it for the uninitialized DepResultTy value. Change reverse mappings to be from an instruction* instead of DepResultTy, and stop tracking other forms. This makes it more clear that we only care about the instruction cases. Eliminate a DepResultTy,bool pair by using Dirty in the local case as well, shrinking the map and simplifying the code. This speeds up GVN by ~3% on 403.gcc. llvm-svn: 60232
-
Chris Lattner authored
query. This makes it crystal clear what cases can escape from MemDep that the clients have to handle. This also gives the clients a nice simplified interface to it that is easy to poke at. This patch also makes DepResultTy and MemoryDependenceAnalysis::DepType private, yay. llvm-svn: 60231
-
Chris Lattner authored
of a pointer/int pair instead of a manually bitmangled pointer. This forces clients to think a little more about checking the appropriate pieces and will be useful for internal implementation improvements later. I'm not particularly happy with this. After going through this I don't think that the clients of memdep should be exposed to the internal type at all. I'll fix this in a subsequent commit. This has no functionality change. llvm-svn: 60230
-
- Nov 28, 2008
-
-
Chris Lattner authored
properly updates the reverse dependency map when it installs updated dependencies for instructions that depend on the removed instruction. llvm-svn: 60222
-
Chris Lattner authored
no functionality change. llvm-svn: 60219
-
Chris Lattner authored
llvm-svn: 60218
-
Chris Lattner authored
This shows the root problem behind PR3141. llvm-svn: 60216
-
Chris Lattner authored
but it doesn't make any sense at all. Also make the method const, private, and fit in 80 cols while we're at it. llvm-svn: 60215
-
Chris Lattner authored
llvm-svn: 60211
-
- Sep 11, 2008
-
-
Duncan Sands authored
llvm-svn: 56116
-
- Jul 28, 2008
-
-
Owen Anderson authored
circumstances we could end up remapping a dependee to the same instruction that we're trying to remove. Handle this properly by just falling back to a conservative solution. llvm-svn: 54132
-
- Jul 02, 2008
-
-
Owen Anderson authored
llvm-svn: 53032
-
- Jul 01, 2008
-
-
Owen Anderson authored
This fixes PR2503, though we should also fix other passes not to emit this kind of code. llvm-svn: 52946
-
- Jun 01, 2008
-
-
Owen Anderson authored
llvm-svn: 51846
-
Owen Anderson authored
llvm-svn: 51845
-
- May 13, 2008
-
-
Owen Anderson authored
instruction. This fixes some Ada miscompiles reported in PR2324. llvm-svn: 51069
-
Dan Gohman authored
several things that were neither in an anonymous namespace nor static but not intended to be global. llvm-svn: 51017
-
- May 06, 2008
-
-
Dan Gohman authored
llvm-svn: 50696
-
- Apr 17, 2008
-
-
Owen Anderson authored
llvm-svn: 49842
-
- Apr 11, 2008
-
-
Dan Gohman authored
llvm-svn: 49504
-
Owen Anderson authored
wrong order. llvm-svn: 49499
-
- Apr 01, 2008
-
-
Dan Gohman authored
not the end. llvm-svn: 48999
-
- Mar 20, 2008
-
-
Devang Patel authored
llvm-svn: 48579
-
- Mar 19, 2008
-
-
Devang Patel authored
llvm-svn: 48554
-
- Feb 12, 2008
-
-
Owen Anderson authored
bugs fixed. This now passes PPC bootstrap. llvm-svn: 47026
-
- Feb 06, 2008
-
-
Tanya Lattner authored
Throttle the non-local dependence analysis for basic blocks with more than 50 predecessors. Added command line option to play with this threshold. llvm-svn: 46790
-
- Feb 05, 2008
-
-
Owen Anderson authored
llvm-svn: 46738
-
- Jan 30, 2008
-
-
Owen Anderson authored
of one of its internal maps. llvm-svn: 46541
-
- Dec 29, 2007
-
-
Chris Lattner authored
llvm-svn: 45418
-
- Dec 08, 2007
-
-
Owen Anderson authored
Fix several cache coherence bugs in MemDep/GVN that were found. Also add some (disabled) debugging code to make such problems easier to diagnose in the future, written by Duncan Sands. llvm-svn: 44695
-
- Dec 01, 2007
-
-
Duncan Sands authored
into alias analysis. This meant updating the API which now has versions of the getModRefBehavior, doesNotAccessMemory and onlyReadsMemory methods which take a callsite parameter. These should be used unless the callsite is not known, since in general they can do a better job than the versions that take a function. Also, users should no longer call the version of getModRefBehavior that takes both a function and a callsite. To reduce the chance of misuse it is now protected. llvm-svn: 44487
-
- Nov 26, 2007
-
-
Owen Anderson authored
llvm-svn: 44324
-