- Jul 26, 2011
-
-
Jakub Staszak authored
llvm-svn: 135992
-
- Jul 22, 2011
-
-
Chandler Carruth authored
The header file was already properly located. The previous need for it in Support had to do with the version string printing which was fixed in r135757. Also update build dependencies where libraries that needed the functionality of the Target library (in the form of the TargetRegistry) were picking it up via Support. This is pretty pervasive, essentially every TargetInfo library (ARMInfo, etc) uses TargetRegistry, making it depend on Target. All of these were previously just sneaking by. llvm-svn: 135760
-
- Jun 11, 2011
-
-
Andrew Trick authored
Patch by: Jakub Staszak! Introduces BranchProbability. Changes unsigned to uint32_t all over and uint64_t only when overflow is expected. llvm-svn: 132867
-
- May 19, 2011
-
-
Rafael Espindola authored
llvm-svn: 131606
-
Rafael Espindola authored
llvm-svn: 131602
-
- Dec 21, 2010
-
-
Jakob Stoklund Olesen authored
This implementation already exists as ConnectedVNInfoEqClasses in LiveInterval.cpp, and it seems to be generally useful to have a light-weight way of forming equivalence classes of small integers. IntEqClasses doesn't allow enumeration of the elements in a class. llvm-svn: 122293
-
- Dec 07, 2010
-
-
Michael J. Spencer authored
llvm-svn: 121160
-
- Nov 29, 2010
-
-
Michael J. Spencer authored
llvm-svn: 120329
-
Michael J. Spencer authored
llvm-svn: 120298
-
- Nov 19, 2010
-
-
Jakob Stoklund Olesen authored
This is a sorted interval map data structure for small keys and values with automatic coalescing and bidirectional iteration over coalesced intervals. Except for coalescing intervals, it provides similar functionality to std::map. It is however much more compact for small keys and values, and hopefully faster too. The container object itself can hold the first few intervals without any allocations, then it switches to a cache conscious B+-tree representation. A recycling allocator can be shared between many containers, even between containers holding different types. The IntervalMap is initially intended to be used with SlotIndex intervals for: - Backing store for LiveIntervalUnion that is smaller and faster than std::set. - Backing store for LiveInterval with less overhead than std::vector for typical intervals and O(N log N) merging of large intervals. 99% of virtual registers need 4 entries or less and would benefit from the small object optimization. - Backing store for LiveDebugVariable which doesn't exist yet, but will track debug variables during register allocation. This is a work in progress. Missing items are: - Performance metrics. - erase(). - insert() shrinkage. - clear(). - More performance metrics. - Simplification and detemplatization. llvm-svn: 119787
-
Jakob Stoklund Olesen authored
This reverts r119772. llvm-svn: 119773
-
Jakob Stoklund Olesen authored
This is a sorted interval map data structure for small keys and values with automatic coalescing and bidirectional iteration over coalesced intervals. Except for coalescing intervals, it provides similar functionality to std::map. It is however much more compact for small keys and values, and hopefully faster too. The container object itself can hold the first few intervals without any allocations, then it switches to a cache conscious B+-tree representation. A recycling allocator can be shared between many containers, even between containers holding different types. The IntervalMap is initially intended to be used with SlotIndex intervals for: - Backing store for LiveIntervalUnion that is smaller and faster than std::set. - Backing store for LiveInterval with less overhead than std::vector for typical intervals and O(N log N) merging of large intervals. 99% of virtual registers need 4 entries or less and would benefit from the small object optimization. - Backing store for LiveDebugVariable which doesn't exist yet, but will track debug variables during register allocation. This is a work in progress. Missing items are: - Performance metrics. - erase(). - insert() shrinkage. - clear(). - More performance metrics. - Simplification and detemplatization. llvm-svn: 119772
-
- Oct 17, 2010
-
-
Oscar Fuentes authored
llvm-svn: 116682
-
- Oct 08, 2010
-
-
John Thompson authored
llvm-svn: 116003
-
- Sep 29, 2010
-
-
Oscar Fuentes authored
llvm-svn: 114999
-
- Aug 20, 2010
-
-
Benjamin Kramer authored
llvm-svn: 111669
-
- Jul 28, 2010
-
-
Douglas Gregor authored
llvm-svn: 109598
-
- Jun 08, 2010
-
-
Daniel Dunbar authored
ADT: Add DAGDeltaAlgorithm, which is a DAG minimization algorithm built on top of the standard 'delta debugging' algorithm. - This can give substantial speedups in the delta process for inputs we can construct dependency information for. llvm-svn: 105612
-
- Dec 23, 2009
-
-
Douglas Gregor authored
llvm-svn: 92003
-
- Dec 16, 2009
-
-
Chris Lattner authored
SmallVectorBase::grow_pod out of line, finally satisfying PR3758. llvm-svn: 91529
-
- Dec 03, 2009
-
-
Daniel Dunbar authored
- This is a pretty slow / memory intensive implementation, and I will likely change it to an iterative model, but it works. llvm-svn: 90447
-
- Sep 17, 2009
-
-
Daniel Dunbar authored
llvm-svn: 82087
-
- Sep 11, 2009
-
-
Ted Kremenek authored
llvm-svn: 81577
-
- Sep 01, 2009
-
-
Ted Kremenek authored
llvm-svn: 80680
-
- Aug 30, 2009
-
-
Torok Edwin authored
implementation. llvm-svn: 80493
-
- Aug 25, 2009
-
-
Oscar Fuentes authored
llvm-svn: 79959
-
- Aug 24, 2009
-
-
Oscar Fuentes authored
llvm-svn: 79876
-
- Jul 31, 2009
-
-
Ted Kremenek authored
llvm-svn: 77709
-
- Jul 24, 2009
-
-
Daniel Dunbar authored
llvm-svn: 76957
-
- Jul 15, 2009
-
-
Ted Kremenek authored
llvm-svn: 75746
-
- Jul 14, 2009
-
-
Ted Kremenek authored
llvm-svn: 75677
-
- Jul 07, 2009
-
-
Mike Stump authored
llvm-svn: 74936
-
- Jun 26, 2009
-
-
Douglas Gregor authored
llvm-svn: 74285
-
- Jun 21, 2009
-
-
Chris Lattner authored
llvm-svn: 73844
-
- Jun 18, 2009
-
-
Ted Kremenek authored
llvm-svn: 73708
-
- Jun 16, 2009
-
-
Douglas Gregor authored
llvm-svn: 73516
-
- May 27, 2009
-
-
Douglas Gregor authored
llvm-svn: 72480
-
- Mar 05, 2009
-
-
Duncan Sands authored
llvm-svn: 66160
-
- Sep 22, 2008
-
-
Oscar Fuentes authored
llvm-svn: 56419
-