- Feb 23, 2012
-
-
Jay Foad authored
llvm-svn: 151249
-
- Feb 18, 2012
-
-
Talin authored
llvm-svn: 150890
-
- Feb 06, 2012
-
-
Derek Schuff authored
This CL delays reading of function bodies from initial parse until materialization, allowing overlap of compilation with bitcode download. llvm-svn: 149918
-
- Jan 29, 2012
-
-
Douglas Gregor authored
library, since it doesn't really have anything to do with Clang. llvm-svn: 149203
-
- Dec 20, 2011
-
-
Chandler Carruth authored
likely to stay either way that discussion ends up resolving itself. llvm-svn: 146966
-
- Dec 16, 2011
-
-
Manuel Klimek authored
llvm-svn: 146735
-
- Sep 13, 2011
-
-
Benjamin Kramer authored
It is an endian-aware helper that can read data from a StringRef. It will come in handy for DWARF parsing. This class is inspired by LLDB's DataExtractor, but is stripped down to the bare minimum needed for DWARF. Comes with unit tests! llvm-svn: 139626
-
- Aug 24, 2011
-
-
Evan Cheng authored
These are strictly utilities for registering targets and components. llvm-svn: 138450
-
- 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
-