cd81d94322a39503e4a3e87b6ee03d4fcb3465fb |
21-Jul-2014 |
Stephen Hines <srhines@google.com> |
Update LLVM for rebase to r212749. Includes a cherry-pick of: r212948 - fixes a small issue with atomic calls Change-Id: Ib97bd980b59f18142a69506400911a6009d9df18
PSInt.h
rrayRef.h
itVector.h
enseMap.h
enseSet.h
oldingSet.h
ashing.h
ntrusiveRefCntPtr.h
apVector.h
wningPtr.h
copedHashTable.h
mallBitVector.h
mallPtrSet.h
mallSet.h
mallVector.h
parseBitVector.h
parseMultiSet.h
parseSet.h
tringMap.h
riple.h
wine.h
niqueVector.h
|
dce4a407a24b04eebc6a376f8e62b41aaa7b071f |
29-May-2014 |
Stephen Hines <srhines@google.com> |
Update LLVM for 3.5 rebase (r209712). Change-Id: I149556c940fb7dc92d075273c87ff584f400941f
PFloat.h
rrayRef.h
itVector.h
enseMap.h
epthFirstIterator.h
quivalenceClasses.h
oldingSet.h
ashing.h
mmutableIntervalMap.h
mmutableMap.h
mmutableSet.h
ntervalMap.h
ntrusiveRefCntPtr.h
wningPtr.h
ointerUnion.h
ostOrderIterator.h
CCIterator.h
TLExtras.h
copedHashTable.h
mallVector.h
parseMultiSet.h
parseSet.h
tatistic.h
tringExtras.h
tringMap.h
tringRef.h
tringSwitch.h
inyPtrVector.h
riple.h
wine.h
dit_distance.h
list.h
list_node.h
terator.h
terator_range.h
|
36b56886974eae4f9c5ebc96befd3e7bfe5de338 |
24-Apr-2014 |
Stephen Hines <srhines@google.com> |
Update to LLVM 3.5a. Change-Id: Ifadecab779f128e62e430c2b4f6ddd84953ed617
PFloat.h
PInt.h
PSInt.h
rrayRef.h
itVector.h
enseMap.h
enseSet.h
quivalenceClasses.h
oldingSet.h
ashing.h
ntrusiveRefCntPtr.h
apVector.h
ptional.h
wningPtr.h
ointerIntPair.h
ointerUnion.h
CCIterator.h
TLExtras.h
etVector.h
mallBitVector.h
mallPtrSet.h
mallSet.h
mallString.h
mallVector.h
parseBitVector.h
parseMultiSet.h
parseSet.h
tringExtras.h
tringMap.h
tringRef.h
inyPtrVector.h
riple.h
alueMap.h
terator_range.h
olymorphic_ptr.h
|
90b81731c1a9bc126d0b29321b3513c9b85f8414 |
10-Dec-2013 |
Bill Wendling <isanbard@gmail.com> |
Merging r196768: ------------------------------------------------------------------------ r196768 | majnemer | 2013-12-09 01:04:00 -0800 (Mon, 09 Dec 2013) | 5 lines ADT: Implement MutableArrayRef::reverse_iterator This adds rbegin/rend methods to MutableArrayRef, they will be used by a follow-on commit in clang. ------------------------------------------------------------------------ git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_34@196945 91177308-0d34-0410-b5e6-96231b3b80d8
rrayRef.h
|
b69143c6a9bfc969e7c95bbd48b83bb962086070 |
16-Nov-2013 |
Benjamin Kramer <benny.kra@googlemail.com> |
Annotate APInt methods where it's not clear whether they are in place with warn_unused_result. Fix ScalarEvolution bugs uncovered by this. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194928 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
PSInt.h
|
3c3f6be0c8b8d6b38e219652580e2edef0f0a757 |
13-Nov-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Fix a null pointer dereference when copying a null polymorphic pointer. This bug only bit the C++98 build bots because all of the actual uses really do move. ;] But not *quite* ready to do the whole C++11 switch yet, so clean it up. Also add a unit test that catches this immediately. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194548 91177308-0d34-0410-b5e6-96231b3b80d8
olymorphic_ptr.h
|
43ed63bc8310758d2a80deecb2e470f383ca5691 |
11-Nov-2013 |
Pete Cooper <peter_cooper@apple.com> |
Add LLVM_HAS_INITIALIZER_LISTS for upcoming C++11 support. Use it in ArrayRef git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194362 91177308-0d34-0410-b5e6-96231b3b80d8
rrayRef.h
|
3481cdc57382b315c96ad82a6e166f9914dadddb |
09-Nov-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Switch to allow implicit construction. In many cases, we're wrapping a derived type and this makes it *much* easier to write this code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194321 91177308-0d34-0410-b5e6-96231b3b80d8
olymorphic_ptr.h
|
aec427786be4f4dd0c8ecc0aa17899e6c836e45d |
09-Nov-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Add a polymorphic_ptr<T> smart pointer data type. It's a somewhat silly unique ownership smart pointer which is *deep* copyable by assuming it can call a T::clone() method to allocate a copy of the owned data. This is mostly useful with containers or other collections of uniquely owned data in C++98 where they *might* copy. With C++11 we can likely remove this in favor of move-only types and containers wrapped around those types. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194315 91177308-0d34-0410-b5e6-96231b3b80d8
olymorphic_ptr.h
|
fffdcacff2de0c1eaf4dbd2884384d71d024776d |
08-Nov-2013 |
Jordan Rose <jordan_rose@apple.com> |
Add ImmutableSet profiling info for 'bool'. Useful for tri-state maps: true, false, and "no data yet". git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194266 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
f34c3ca3046378bdb7e49b7366bafca0e0bafb9a |
30-Oct-2013 |
Rui Ueyama <ruiu@google.com> |
Add {start,end}with_lower methods to StringRef. startswith_lower is ocassionally useful and I think worth adding. endwith_lower is added for completeness. Differential Revision: http://llvm-reviews.chandlerc.com/D2041 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193706 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
2aaa47f396f185d28aa7855d345f7385681098e2 |
30-Oct-2013 |
Howard Hinnant <hhinnant@apple.com> |
Rehash but don't grow when full of tombstones. This problem was found and fixed by José Fonseca in March 2011 for SmallPtrSet, committed r128566. But as far as I can tell, all other llvm hash tables retain the same problem: the bucket count can grow without bound while size() remains near constant by repeated insert/erase cycles that tend to fill the container with tombstones. Here is a demo that has been reduced to a trivial case: int main() { llvm::DenseSet<unsigned> d; for (unsigned i = 0; i < 0xFFFFFFF; ++i) { d.insert(i); d.erase(i); } } While the container size() never grows above 1, the bucket count grows like this: nb = 64 nb = 128 nb = 256 nb = 512 nb = 1024 nb = 2048 nb = 4096 nb = 8192 nb = 16384 nb = 32768 nb = 65536 nb = 131072 nb = 262144 nb = 524288 nb = 1048576 nb = 2097152 nb = 4194304 nb = 8388608 nb = 16777216 nb = 33554432 nb = 67108864 nb = 134217728 nb = 268435456 The above program currently consumes a few GB ram. This patch brings the memory consumption down by several orders of magnitude, and keeps the bucket count at 64 for the above test. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193689 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
2558c2bfbaa4bfd49ee8e06be78a0ccb0f3ff0e7 |
25-Sep-2013 |
Joerg Sonnenberger <joerg@bec.de> |
Undefine NetBSD, it may have been defined by an earlier include of sys/param.h. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191384 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
118a0659ab8a4d0e0af343b88e5fa71a5c1eb6a6 |
24-Sep-2013 |
Reid Kleckner <reid@kleckner.net> |
Explicitly request unsigned enum types when desired The underlying type of all plain enums in MSVC is 'int', even if the enumerator contains large 32-bit unsigned values or values greater than UINT_MAX. The only way to get a large or unsigned enum type is to request it explicitly with the C++11 strong enum types feature. However, since LLVM isn't C++11 yet, I had to add a conditional LLVM_ENUM_INT_TYPE to Compiler.h to control its usage. The motivating true positive for this change is compiling PointerIntPair with MSVC for win64. The PointerIntMask value is supposed to be pointer sized value of all ones with some low zeros. Instead, it's truncated to 32-bits! We are only saved later because it is sign extended back in the AND with int64_t, and we happen to want all ones. This silences lots of -Wmicrosoft warnings during a clang self-host targeting Windows. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191241 91177308-0d34-0410-b5e6-96231b3b80d8
ointerIntPair.h
|
0d293e45b66c742fdbc3998209bb20ed6c5806bf |
22-Sep-2013 |
Benjamin Kramer <benny.kra@googlemail.com> |
Provide basic type safety for array_pod_sort comparators. This makes using array_pod_sort significantly safer. The implementation relies on function pointer casting but that should be safe as we're dealing with void* here. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191175 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
cbe40cfe96a6bb3f2da56445269c2c71e55e0e56 |
13-Sep-2013 |
Benjamin Kramer <benny.kra@googlemail.com> |
Add warn_unused_result to empty() on various containers. empty() doesn't actually empty out the container, making this a common typo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190708 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
mallPtrSet.h
mallVector.h
list.h
|
f57a80f4942dafdb56e854d42af83abaf949ff9d |
03-Sep-2013 |
Joerg Sonnenberger <joerg@bec.de> |
Add a Python-like join function to merge a list of strings with a separator between each two elements. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@189846 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
441c557708b5dbe91f1799baf790ad418c23ea70 |
29-Aug-2013 |
Cameron Esfahani <dirty@apple.com> |
Clean up some usage of Triple. The base class has methods for determining if the target is iOS and Linux. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@189604 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
2f02ded68a114410f11bc2f4e901d0d8e5850de1 |
29-Aug-2013 |
Alexander Kornienko <alexfh@google.com> |
isCharInSet refactoring. Summary: Made UnicodeCharSet a class, perform validity checking inside its constructor instead of each isCharInSet call, use std::binary_search instead of own implementation. This patch comes with a necessary change in clang (sent separately). Reviewers: jordan_rose, klimek Reviewed By: klimek CC: cfe-commits, rsmith Differential Revision: http://llvm-reviews.chandlerc.com/D1534 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@189582 91177308-0d34-0410-b5e6-96231b3b80d8
rrayRef.h
|
0b6962f4be35aca7054ff68ef9bbbb2e03617d31 |
24-Aug-2013 |
Benjamin Kramer <benny.kra@googlemail.com> |
Add a function object to compare the first or second component of a std::pair. Replace instances of this scattered around the code base. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@189169 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
4a48389b27cafe30a38592b50e0f4b9e97b9d65e |
24-Aug-2013 |
Dmitri Gribenko <gribozavr@gmail.com> |
Added const qualifier to StringRef::edit_distance member function Patch by Ismail Pazarbasi. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@189162 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
79ef34d1802eeea48aa4e9346abecbf8ceb2e8eb |
21-Aug-2013 |
David Majnemer <david.majnemer@gmail.com> |
ADT/Triple: Helper to determine if we are targeting the Windows CRT Summary: This support will be utilized in things like clang to help check printf format specifiers that are only valid when using the VSCRT. Reviewers: rnk, asl, chandlerc Reviewed By: chandlerc CC: llvm-commits Differential Revision: http://llvm-reviews.chandlerc.com/D1455 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@188935 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
296ca41b2d305f4aaf1d0562c7da90dc20cd9e14 |
21-Aug-2013 |
David Blaikie <dblaikie@gmail.com> |
Basic unit tests for PointerUnion git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@188933 91177308-0d34-0410-b5e6-96231b3b80d8
ointerUnion.h
|
b937c55e93e9d52fa618b3488da04ff73182f3f9 |
20-Aug-2013 |
Jakub Staszak <kubastaszak@gmail.com> |
Make sure that pop_back_val() result is used. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@188717 91177308-0d34-0410-b5e6-96231b3b80d8
etVector.h
mallVector.h
|
586ea17be9fbf2fa1f2341900ebf1675a0924edc |
17-Aug-2013 |
Chris Lattner <sabre@nondot.org> |
I'm told that != is not == git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@188583 91177308-0d34-0410-b5e6-96231b3b80d8
ointerUnion.h
|
b2820859240b8b8ad03384207ce896da60702f98 |
17-Aug-2013 |
Chris Lattner <sabre@nondot.org> |
allow != to compare PointerUnion, we already support ==. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@188582 91177308-0d34-0410-b5e6-96231b3b80d8
ointerUnion.h
|
d861b90fe264ec42b941162ca920fadd0a80a1c1 |
16-Aug-2013 |
Benjamin Kramer <benny.kra@googlemail.com> |
Add difference_type to ImmutableMap/Set iterators so they have a complete set of typedefs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@188579 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
mmutableSet.h
|
4e31acb558a7f157244a11ae382c0138ee12d60b |
16-Aug-2013 |
Aaron Ballman <aaron@aaronballman.com> |
Calling the base class constructor from the derived class' initializer list. This matches DenseMap's behavior, and silences some warnings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@188528 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
e4a4aecffb25df25736fec328d9147ee43335c2b |
07-Aug-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Commit a no-op change to StringRef to (hopefully) trigger build bots. r187874 seems to have been missed by the build bot infrastructure, and the subsequent commits to compiler-rt don't seem to be queuing up new build requsets. Hopefully this will. As it happens, having the space here is the more common formatting. =] git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187879 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
6e52c6164d499fac983f720540e9a8345f36f691 |
07-Aug-2013 |
Dmitri Gribenko <gribozavr@gmail.com> |
Remove the assertion for now. This breaks lld. lld has a hashtable with StringRef keys; it needs to iterate over the keys in *insertion* order. This is currently implemented as std::vector<StringRef> + DenseMap<StringRef, T>. This will probably need a proper DenseMapInfo<StringRef> if we don't want to lose memory/performance by migrating to a different data structure. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187868 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
9e8eafa0f0ad36c3e4397e97b67b8245b04ba618 |
07-Aug-2013 |
Dmitri Gribenko <gribozavr@gmail.com> |
YAMLTraits.h: replace DenseMap that used a bad implementation of DenseMapInfo for StringRef with a StringMap The bug is that the empty key compares equal to the tombstone key. Also added an assertion to DenseMap to catch similar bugs in future. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187866 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
15658b290817d6f198ab08910a2d754ba11164d1 |
29-Jul-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Fix -Wdocumentation warnings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187336 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
7ffc854002282b0a6fd018d967a6def971dc341e |
27-Jul-2013 |
Michael Gottesman <mgottesman@apple.com> |
[APFloat] Removed nextafter from missing operations since it is implemented in APFloat::next. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187312 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
e130dc6cc9ec1423086c37f557ef8854064fef4a |
26-Jul-2013 |
Bill Wendling <isanbard@gmail.com> |
Use a non-c'tor for converting a boolean into a StringRef. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187250 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
f38cc38fa647d4e72c053c39bbe0cdec1342535f |
26-Jul-2013 |
Bill Schmidt <wschmidt@linux.vnet.ibm.com> |
[PowerPC] Support powerpc64le as a syntax-checking target. This patch provides basic support for powerpc64le as an LLVM target. However, use of this target will not actually generate little-endian code. Instead, use of the target will cause the correct little-endian built-in defines to be generated, so that code that tests for __LITTLE_ENDIAN__, for example, will be correctly parsed for syntax-only testing. Code generation will otherwise be the same as powerpc64 (big-endian), for now. The patch leaves open the possibility of creating a little-endian PowerPC64 back end, but there is no immediate intent to create such a thing. The LLVM portions of this patch simply add ppc64le coverage everywhere that ppc64 coverage currently exists. There is nothing of any import worth testing until such time as little-endian code generation is implemented. In the corresponding Clang patch, there is a new test case variant to ensure that correct built-in defines for little-endian code are generated. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187179 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
fb5b3eaacbc65603b436279300c32512176150fe |
26-Jul-2013 |
Bill Wendling <isanbard@gmail.com> |
Add a bool->StringRef c'tor to StringRef. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187166 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
6fccaafd8be0eb7619b5a210387b0d1254ef4174 |
25-Jul-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove the mblaze backend from llvm. Approval in here http://lists.cs.uiuc.edu/pipermail/llvmdev/2013-July/064169.html git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187145 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
459d7bf8f6f1577c67d50c060bff7115d30f9fb9 |
11-Jul-2013 |
Benjamin Kramer <benny.kra@googlemail.com> |
Sync SmallBitVector with BitVector. Add unit tests for the missing methods. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186123 91177308-0d34-0410-b5e6-96231b3b80d8
mallBitVector.h
|
10b2997913457fe3b00f88a350fa4143dcdc6b1c |
10-Jul-2013 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Remove llvm/ADT/NullablePtr.h, there are no uses of it in-tree. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186006 91177308-0d34-0410-b5e6-96231b3b80d8
ullablePtr.h
|
6afede522e4dfe34c1d42ccc251036596c300203 |
08-Jul-2013 |
Manman Ren <mren@apple.com> |
Revert r185852. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185861 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
f856249d496663b72b9eac37cdabb52932abd0e0 |
08-Jul-2013 |
Manman Ren <mren@apple.com> |
StringRef: add DenseMapInfo for StringRef. Remove the implementation in include/llvm/Support/YAMLTraits.h. Added a DenseMap type DITypeHashMap in DebugInfo.h: DenseMap<std::pair<StringRef, unsigned>, MDNode*> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185852 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
7426a3b5880b68989e49f963229b7731cb36dba7 |
08-Jul-2013 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[ADT/NullablePtr] Allow implicit conversion of NullablePtr<OtherT> -> NullablePtr<T> if OtherT is derived from T. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185851 91177308-0d34-0410-b5e6-96231b3b80d8
ullablePtr.h
|
4dfc257a1ad58be07753bfb96377869cb5dcf8e7 |
27-Jun-2013 |
Michael Gottesman <mgottesman@apple.com> |
Revert "Revert "[APFloat] Removed APFloat constructor which initialized to either zero/NaN but allowed you to arbitrarily set the category of the float."" This reverts commit r185099. Looks like both the ppc-64 and mips bots are still failing after I reverted this change. Since: 1. The mips bot always performs a clean build, 2. The ppc64-bot failed again after a clean build (I asked the ppc-64 maintainers to clean the bot which they did... Thanks Will!), I think it is safe to assume that this change was not the cause of the failures that said builders were seeing. Thus I am recomitting. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185111 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
d6bd98d01c3db23f9a66b1f1b2d3e65eef65382e |
27-Jun-2013 |
Michael Gottesman <mgottesman@apple.com> |
Revert "[APFloat] Removed APFloat constructor which initialized to either zero/NaN but allowed you to arbitrarily set the category of the float." This reverts commit r185095. This is causing a FileCheck failure on the 3dnow intrinsics on at least the mips/ppc bots but not on the x86 bots. Reverting while I figure out what is going on. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185099 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
4da2ebeefb10390ad16238ae7a1038a987466225 |
27-Jun-2013 |
Michael Gottesman <mgottesman@apple.com> |
[APFloat] Removed APFloat constructor which initialized to either zero/NaN but allowed you to arbitrarily set the category of the float. The category which an APFloat belongs to should be dependent on the actual value that the APFloat has, not be arbitrarily passed in by the user. This will prevent inconsistency bugs where the category and the actual value in APFloat differ. I also fixed up all of the references to this constructor (which were only in LLVM). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185095 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
575694b6a7d49004acc93294bc88d0bc337e4d27 |
24-Jun-2013 |
Michael Gottesman <mgottesman@apple.com> |
[APFloat] Added support for parsing float strings which contain {inf,-inf,NaN,-NaN}. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184713 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
fdec0c7a7302702d08f1221609221018af8085ec |
24-Jun-2013 |
Michael Gottesman <mgottesman@apple.com> |
[APFloat] Added make{Zero,Inf} methods and implemented get{Zero,Inf} on top of them. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184712 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
daee0b0def120605f6c702fc47ab3450037ae184 |
24-Jun-2013 |
Michael Gottesman <mgottesman@apple.com> |
[APFloat] Removed out of date comment from isNormal(). I already finished the isIEEENormal => isNormal transition. So isNormal is now IEEE-754R compliant. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184687 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
db045ab1532469551a56e5811e684920a6f7a10c |
24-Jun-2013 |
Michael Gottesman <mgottesman@apple.com> |
[APFloat] Rename llvm::exponent_t => llvm::APFloat::ExponentType. exponent_t is only used internally in APFloat and no exponent_t values are exposed via the APFloat API. In light of such conditions it does not make any sense to gum up the llvm namespace with said type. Plus it makes it clearer that exponent_t is associated with APFloat. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184686 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
0ff4287fe2245f417ed78fa535fce360b8b8df23 |
21-Jun-2013 |
Justin Holewinski <jholewinski@nvidia.com> |
[NVPTX] Add support for selecting CUDA vs OCL mode based on triple IR for CUDA should use "nvptx[64]-nvidia-cuda", and IR for NV OpenCL should use "nvptx[64]-nvidia-nvcl" git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184579 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
d3d03fe758d4ee93ea225c6740742eb56b6dca3b |
21-Jun-2013 |
Michael Gottesman <mgottesman@apple.com> |
[APFloat] Added missing doxygen module closing statement. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184526 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
a1694e578492c90c246e59ec861c1a34f8ad7b4d |
20-Jun-2013 |
Michael Gottesman <mgottesman@apple.com> |
[APFloat] Rename isIEEENormal => isNormal and remove old isNormal method. The old isNormal is already functionally replaced by the method isFiniteNonZero in r184350 and all references to said method were replaced in LLVM/clang in r184356/134366. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184449 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
07969dc8aed62fcd5c5760b2ec331275479f4a80 |
19-Jun-2013 |
Michael Gottesman <mgottesman@apple.com> |
[APFloat] Converted all references to APFloat::isNormal => APFloat::isFiniteNonZero. Turns out all the references were in llvm and not in clang. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184356 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
7032c883cdf8da579fbf9bf499d36a711eef676f |
19-Jun-2013 |
Michael Gottesman <mgottesman@apple.com> |
[APFloat] Added isFiniteNonZero predicate. This is the first patch in a series of patches to rename isNormal => isFiniteNonZero and isIEEENormal => isNormal. In order to prevent careless errors on my part the overall plan is: 1. Add the isFiniteNonZero predicate with tests. I can do this in a method independent of isNormal. (This step is this patch). 2. Convert all references to isNormal with isFiniteNonZero. My plan is to comment out isNormal locally and continually convert isNormal references => isFiniteNonZero until llvm/clang compiles. 3. Remove old isNormal and rename isIEEENormal to isNormal. 4. Look through all of said references from patch 2 and see if we can simplify them by using the new isNormal. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184350 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
c896020dd8d6c2f25f5bf7eb9191fd4e72407015 |
19-Jun-2013 |
Michael Gottesman <mgottesman@apple.com> |
[APFloat] Expose isSmallest/isLargest as public methods. I have had several requests to expose these two methods as public for various potential optimizations. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184345 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
8dcff889825c7f38dab27a349b7a21f186a5ff9e |
15-Jun-2013 |
Benjamin Kramer <benny.kra@googlemail.com> |
APInt: Add a fast case for isAllOnesValue. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184042 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
48d5e750a8189c55087333d2bbc5dd0e1e07ddfa |
10-Jun-2013 |
Duncan Sands <baldrick@free.fr> |
Avoid warnings about unused parameters that tend to come up a lot when building outside projects with a different compiler than that used to build LLVM itself (eg switching between gcc and clang). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183650 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
a77376dae1e26572f94aa52b63f89749b785bc33 |
07-Jun-2013 |
Benjamin Kramer <benny.kra@googlemail.com> |
BitVector: Do the right thing in all() when Size is a multiple of BITWORD_SIZE. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183525 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
597253da97ec4fa5fa4a03c2230ed026b1b6aad6 |
07-Jun-2013 |
Benjamin Kramer <benny.kra@googlemail.com> |
Optimize BitVector::all(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183521 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
b30718af1ada4b68c7c44e3dcbf4891efd5e3ba1 |
04-Jun-2013 |
Michael Gottesman <mgottesman@apple.com> |
IEEE-754R 5.7.2 General Operations is* operations (except for isCanonical). Specifically the following work was done: 1. If the operation was not implemented, I implemented it. 2. If the operation was already implemented, I just moved its location in the APFloat header into the IEEE-754R 5.7.2 section. If the name was incorrect, I put in a comment giving the true IEEE-754R name. Also unittests have been added for all of the functions which did not already have a unittest. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183179 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
abff3aa8217049cffe6da77c91e510c66b8c2313 |
03-Jun-2013 |
Manuel Klimek <klimek@google.com> |
Introduce needsCleanup() for APFloat and APInt. This is needed in clang so one can check if the object needs the destructor called after its memory was freed. This is useful when creating many APInt/APFloat objects with placement new, where the overhead of tracking the pointers for cleanup is significant. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183100 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
PInt.h
|
da8b91a0731e34b97aadb0241ba6cefa4481cffa |
01-Jun-2013 |
Benjamin Kramer <benny.kra@googlemail.com> |
DenseMap: Move the key into place when we use the move version of operator[]. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183074 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
2e2922cd90922eaf3736421bd0ad4331f89f3e75 |
01-Jun-2013 |
Michael Gottesman <mgottesman@apple.com> |
Removed a comment above an include which is unnecessary and added a missing closing @} for a doxygen comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183065 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
8a70f5815dda98d23f0bbf519532703886159cda |
01-Jun-2013 |
Michael Gottesman <mgottesman@apple.com> |
Added method comments for getZero,getInf. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183064 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
7f88a3b20dbaee2a9b265f60a7bc19d2dc6a8f3e |
01-Jun-2013 |
Michael Gottesman <mgottesman@apple.com> |
Updated APFloat's comments to fit the LLVM style guide. Also added a few more method comments and performed some copy editing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183063 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
964722ca40f48c65605e459e3a732bb8783b92f6 |
30-May-2013 |
Michael Gottesman <mgottesman@apple.com> |
Implement IEEE-754R 2008 nextUp/nextDown functions in the guise of the function APFloat::next(bool nextDown). rdar://13852078 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182945 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
a32edcfbc5b99b808b67360311d513af650eab44 |
28-May-2013 |
Michael Gottesman <mgottesman@apple.com> |
[APInt] Implement tcDecrement as a counterpart to tcIncrement. This is for use in APFloat IEEE-754R 2008 nextUp/nextDown function. rdar://13852078 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182801 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
03abfc7114ce60ef69c4335c16eb264957340fad |
26-May-2013 |
Chris Lattner <sabre@nondot.org> |
Disable the StringMapEntry copy constructor, to make sure we reject things like: "for (auto Entry : SomeStringMap)". Previously this would copy the value but not the tail allocated string data (the key). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182713 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
fce7b6b5d9905bf35641ee7f001b6b66dbc26c2d |
25-May-2013 |
Michael Gottesman <mgottesman@apple.com> |
clang formatted APFloat.h git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182686 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
612ca08e662da624c29140d075c87c7fe2a70efa |
25-May-2013 |
Michael Gottesman <mgottesman@apple.com> |
clang-formatted APInt.h git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182685 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
c6af2432c802d241c8fffbe0371c023e6c58844e |
25-May-2013 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Replace Count{Leading,Trailing}Zeros_{32,64} with count{Leading,Trailing}Zeros. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182680 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
itVector.h
mallBitVector.h
parseBitVector.h
|
a5196664236bfadccfc3b805079072340e0f542d |
23-May-2013 |
Michael Gottesman <mgottesman@apple.com> |
Fixed trailing whitespace. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182556 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
cbc8777c588173b1d7d98b29f5a0b43ad35dc6e1 |
23-May-2013 |
Michael Gottesman <mgottesman@apple.com> |
Updated the comments of APInt.h to match the llvm style guide and be consistent. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182555 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
9e8dbe0d2de41d9f993d07f438f5f967fdfd9974 |
22-May-2013 |
Reid Kleckner <reid@kleckner.net> |
Remove unneeded call to a base default ctor git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182503 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
039c56fb57d30b8d0b418a970f7f075694c34169 |
22-May-2013 |
Reid Kleckner <reid@kleckner.net> |
Fix StringMapIterator compile errors for non-MSVC compilers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182493 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
284ffa3863bc58f18a3eb879e49e05fdbe792413 |
22-May-2013 |
Reid Kleckner <reid@kleckner.net> |
[Support] Add StringMap::swap() and a default ctor for iterators This makes StringMap<> more compatible with std::map<std::string, ...>. Differential Revision: http://llvm-reviews.chandlerc.com/D842 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182487 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
6f43379e23e96442a6d3a747ce921cacebcfe9ac |
21-May-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Comment update: these things are called "configuration names" these days, not "triples". Also remove the implication that they're only used for specifying a target. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182335 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
df6e5fb77ca864c55735b903eb022fb1e38fa3d2 |
15-May-2013 |
Douglas Gregor <dgregor@apple.com> |
Add missing #include git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181900 91177308-0d34-0410-b5e6-96231b3b80d8
ointerUnion.h
|
453f4f01302f00651aae2fc7658f6e23a2beadb0 |
15-May-2013 |
David Blaikie <dblaikie@gmail.com> |
Use only explicit bool conversion operators BitVector/SmallBitVector::reference::operator bool remain implicit since they model more exactly a bool, rather than something else that can be boolean tested. The most common (non-buggy) case are where such objects are used as return expressions in bool-returning functions or as boolean function arguments. In those cases I've used (& added if necessary) a named function to provide the equivalent (or sometimes negative, depending on convenient wording) test. One behavior change (YAMLParser) was made, though no test case is included as I'm not sure how to reach that code path. Essentially any comparison of llvm::yaml::document_iterators would be invalid if neither iterator was at the end. This helped uncover a couple of bugs in Clang - test cases provided for those in a separate commit along with similar changes to `operator bool` instances in Clang. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181868 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
wningPtr.h
ointerUnion.h
|
5c332dbd30d9398ed25b30c3080506f7b8e92290 |
05-May-2013 |
Dmitri Gribenko <gribozavr@gmail.com> |
Add ArrayRef constructor from None, and do the cleanups that this constructor enables Patch by Robert Wilhelm. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181138 91177308-0d34-0410-b5e6-96231b3b80d8
rrayRef.h
|
0512910867e77125b63054da2860a7812604c22e |
03-May-2013 |
Richard Sandiford <rsandifo@linux.vnet.ibm.com> |
[SystemZ] Add llvm::Triple::systemz First step towards reinstating the SystemZ backend. Tests will be included in the main backend patch. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181007 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
a7a05ee70cb07f32996a0587a636b406c746b71b |
02-May-2013 |
Aaron Ballman <aaron@aaronballman.com> |
Replaced usages of size_type with size_t to be more consistent. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180947 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
a45391000ebfcf6193a97f2bb558f5beb845ee65 |
01-May-2013 |
Peng Cheng <gm4cheng@gmail.com> |
fix windows warning. warning C4244: 'argument' : conversion from 'uint64_t' to 'const unsigned int', possible loss of data git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180847 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
711d324d50e5b335e98e576ce6725b056427e3f3 |
01-May-2013 |
Peng Cheng <gm4cheng@gmail.com> |
use static_cast to get rid of windows warning. warning C4244: 'argument' : conversion from 'uint64_t' to 'const unsigned int', possible loss of data git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180846 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
2173e1839c2d00f7f980450dd537047b7b376e6b |
26-Apr-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Use llvm/Object/MachO.h in macho-dumper. Drop the old macho parser. For Mach-O there were 2 implementations for parsing object files. A standalone llvm/Object/MachOObject.h and llvm/Object/MachO.h which implements the generic interface in llvm/Object/ObjectFile.h. This patch adds the missing features to MachO.h, moves macho-dump to use MachO.h and removes ObjectFile.h. In addition to making sure that check-all is clean, I checked that the new version produces exactly the same output in all Mach-O files in a llvm+clang build directory (including executables and shared libraries). To test the performance, I ran macho-dump over all the files in a llvm+clang build directory again, but this time redirecting the output to /dev/null. Both the old and new versions take about 4.6 seconds (2.5 user) to finish. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180624 91177308-0d34-0410-b5e6-96231b3b80d8
nMemoryStruct.h
|
bbc65149945b1a2eac179f6d7b920f00102942fd |
22-Apr-2013 |
Jia Liu <proljc@gmail.com> |
typo git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180023 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
8bb3b098b98cd62f074bb488d8294498ae8121e3 |
18-Apr-2013 |
Eli Bendersky <eliben@google.com> |
Fix typo git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179793 91177308-0d34-0410-b5e6-96231b3b80d8
wine.h
|
21a01d1ea89dba97c4f9e1f9f41485729a4046bc |
15-Apr-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Make the host endianness check an integer constant expression. I will remove the isBigEndianHost function once I update clang. The ifdef logic is designed to * not use configure/cmake to avoid breaking -arch i686 -arch ppc. * default to little endian * be as small as possible It looks like sys/endian.h is the preferred header on most modern BSD systems, but it is better to change this in a followup patch as machine/endian.h is available on FreeBSD, OpenBSD, NetBSD and OS X. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179527 91177308-0d34-0410-b5e6-96231b3b80d8
ashing.h
|
b3d25a940cfd44ffbac71adc6d8f3759ad8a8cb4 |
09-Apr-2013 |
Joe Groff <arcata@gmail.com> |
Fix PointerIntPair to be enum class compatible. Some parts of PointerIntPair assumed that the IntType of the pair was implicitly convertible to intptr_t, which is not the case for enum class values. Add a static_cast<intptr_t> to make these conversions explicit and allow PointerIntPair to be used with an enum class IntType. While we're here, rename some of the argument values so we don't have variables named "Int" floating around. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179073 91177308-0d34-0410-b5e6-96231b3b80d8
ointerIntPair.h
|
5cb04ae563edc3c46464a7aa00e24c05c524547b |
04-Apr-2013 |
Nadav Rotem <nrotem@apple.com> |
Document the return value of SmallSet insert. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178742 91177308-0d34-0410-b5e6-96231b3b80d8
mallSet.h
|
e1e9366281a98cd06b61d5d7e136ce2b1a433ba6 |
29-Mar-2013 |
Jean-Luc Duprat <jduprat@apple.com> |
SmallVector and SmallPtrSet allocations now power-of-two aligned. This time tested on both OSX and Linux. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178377 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
mallVector.h
|
ef484a376cce3729b45ad86eab5724aa83a61823 |
29-Mar-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Revert "Fix allocations of SmallVector and SmallPtrSet so they are more prone to" This reverts commit 617330909f0c26a3f2ab8601a029b9bdca48aa61. It broke the bots: /home/clangbuild2/clang-ppc64-2/llvm.src/unittests/ADT/SmallVectorTest.cpp:150: PushPopTest /home/clangbuild2/clang-ppc64-2/llvm.src/unittests/ADT/SmallVectorTest.cpp:118: Failure Value of: v[i].getValue() Actual: 0 Expected: value Which is: 2 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178334 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
mallVector.h
|
617330909f0c26a3f2ab8601a029b9bdca48aa61 |
29-Mar-2013 |
Jean-Luc Duprat <jduprat@apple.com> |
Fix allocations of SmallVector and SmallPtrSet so they are more prone to being power-of-two sized. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178332 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
mallVector.h
|
7fe65d691dcce550d53ec9310913aab67ab6d654 |
27-Mar-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Cleanup the simplify_type implementation. As far as simplify_type is concerned, there are 3 kinds of smart pointers: * const correct: A 'const MyPtr<int> &' produces a 'const int*'. A 'MyPtr<int> &' produces a 'int *'. * always const: Even a 'MyPtr<int> &' produces a 'const int*'. * no const: Even a 'const MyPtr<int> &' produces a 'int*'. This patch then does the following: * Removes the unused specializations. Since they are unused, it is hard to know which kind should be implemented. * Make sure we don't drop const. * Fix the default forwarding so that const correct pointer only need one specialization. * Simplifies the existing specializations. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178147 91177308-0d34-0410-b5e6-96231b3b80d8
ntrusiveRefCntPtr.h
ptional.h
list.h
|
2adf8ccbf0611df6393c30737d87faaf38cdcd0c |
21-Mar-2013 |
Jakub Staszak <kubastaszak@gmail.com> |
Use pre-inc, pre-dec when possible. They are generally faster (at least not slower) than post-inc, post-dec. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177608 91177308-0d34-0410-b5e6-96231b3b80d8
PSInt.h
|
80c6a66bbfb748c230d52345ededd3fd35ebddd7 |
20-Mar-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Add std prefixes to fix the build with xlc. Patch by Kai <kai@redstar.de>. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177574 91177308-0d34-0410-b5e6-96231b3b80d8
ostOrderIterator.h
|
dfe91cefd25614bc9ac1626d67df4d5ad5d3553f |
15-Mar-2013 |
Daniel Dunbar <daniel@zuster.org> |
[ADT] Fix StringSet::insert() to not allocate on every lookup. - The previous implementation always constructed the StringMap entry, even if the key was present in the set. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177178 91177308-0d34-0410-b5e6-96231b3b80d8
tringSet.h
|
d455d4f4576059606823920150e0fc89a73412e1 |
15-Mar-2013 |
Craig Topper <craig.topper@gmail.com> |
Use NumBaseBits in a few more places in SmallBitVector instead of recalculating it. No functional change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177142 91177308-0d34-0410-b5e6-96231b3b80d8
mallBitVector.h
|
fa785cb22d50c657eb08c762d627cd6aa96982f3 |
08-Mar-2013 |
Jan Wen Voung <jvoung@google.com> |
Disable statistics on Release builds and move tests that depend on -stats. Summary: Statistics are still available in Release+Asserts (any +Asserts builds), and stats can also be turned on with LLVM_ENABLE_STATS. Move some of the FastISel stats that were moved under DEBUG() back out of DEBUG(), since stats are disabled across the board now. Many tests depend on grepping "-stats" output. Move those into a orig_dir/Stats/. so that they can be marked as unsupported when building without statistics. Differential Revision: http://llvm-reviews.chandlerc.com/D486 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176733 91177308-0d34-0410-b5e6-96231b3b80d8
tatistic.h
|
8660057d189eb567777ce5bca2b479da8108b5ad |
27-Feb-2013 |
Aaron Ballman <aaron@aaronballman.com> |
Switching -1ULL to UINT64_MAX to fix MSVC warnings. Patch thanks to Peng Cheng! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176197 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
54932806ac65c9818b9845ca337e57a471b31789 |
26-Feb-2013 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
Another test commit. Remove trailing whitespace. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176113 91177308-0d34-0410-b5e6-96231b3b80d8
mallString.h
|
d433902628e8c48059f66ba316a7182460ac4a84 |
26-Feb-2013 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
Test commit. Remove trailing whitespace. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176111 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
70c808f5b7e1d9eaa3de872e162a25e956d4777e |
22-Feb-2013 |
Benjamin Kramer <benny.kra@googlemail.com> |
An Optional<T> is pod-like if the inner type is. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175908 91177308-0d34-0410-b5e6-96231b3b80d8
ptional.h
|
633e24dc043c32ddfcfcf6181fe976e218dcb57a |
21-Feb-2013 |
Pedro Artigas <partigas@apple.com> |
Clear the whole table including the tombstones, since the tombstone count will be set to zero that is what it was intended. Should improve performance of the data structure when clear is invoked frequently (both compile time and memory usage). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175799 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
ea72255f5b0e8d92d5ae9feb5e92605d123888ca |
21-Feb-2013 |
David Blaikie <dblaikie@gmail.com> |
Add move ctor/assignment to Optional<T> Code review feedback for r175580 by Jordan Rose. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175729 91177308-0d34-0410-b5e6-96231b3b80d8
ptional.h
|
7f838bbe450a28aba8769550a78219d3109c4a4e |
21-Feb-2013 |
David Blaikie <dblaikie@gmail.com> |
Correct spelling of 'enumerator'. Post commit code review feedback to r175705 from Jordan Rose. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175724 91177308-0d34-0410-b5e6-96231b3b80d8
one.h
|
2bbc19c1c6cd60b9c56750d7b03311c47a88b748 |
21-Feb-2013 |
David Blaikie <dblaikie@gmail.com> |
Make Optional<T>'s operator bool 'explicit' in C++11 Provides a general way to add 'explicit' for conversion operators (a no-op when compiling as C++98). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175723 91177308-0d34-0410-b5e6-96231b3b80d8
ptional.h
|
b8ebc9e2444c73126bdc812165f808f22af10cfa |
21-Feb-2013 |
NAKAMURA Takumi <geek4civic@gmail.com> |
ADT/Optional.h: Appease msvc. It reapplies r175626. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175710 91177308-0d34-0410-b5e6-96231b3b80d8
ptional.h
|
5c43245bf459c77077b607e1b55e6928cfbe464e |
21-Feb-2013 |
David Blaikie <dblaikie@gmail.com> |
Provide a "None" value for convenience when using Optional<T>() This implementation of NoneType/None does have some holes but I haven't found one that doesn't - open to improvement. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175696 91177308-0d34-0410-b5e6-96231b3b80d8
one.h
ptional.h
|
6139b55222851e9fabde5c91de9e50ed8739c6c6 |
20-Feb-2013 |
NAKAMURA Takumi <geek4civic@gmail.com> |
Revert r175626, "ADT/Optional.h: Appease msvc." Sorry, I didn't cover +Asserts, by accident. :( git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175633 91177308-0d34-0410-b5e6-96231b3b80d8
ptional.h
|
94e9d0d491f76aaab13f8bc7764ad73de11fa2bf |
20-Feb-2013 |
NAKAMURA Takumi <geek4civic@gmail.com> |
Whitespace. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175627 91177308-0d34-0410-b5e6-96231b3b80d8
ptional.h
|
767ad1c808c798191cf9470e7a0e546d3b472472 |
20-Feb-2013 |
NAKAMURA Takumi <geek4civic@gmail.com> |
ADT/Optional.h: Appease msvc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175626 91177308-0d34-0410-b5e6-96231b3b80d8
ptional.h
|
ad4da0fc321230261b4d0387f0ec216eb8aa50ca |
20-Feb-2013 |
Benjamin Kramer <benny.kra@googlemail.com> |
Move the SplatByte helper to APInt and generalize it a bit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175621 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
4318fc5e1e44f355ae117dcac385f1718d971e90 |
20-Feb-2013 |
David Blaikie <dblaikie@gmail.com> |
Rename llvm::Optional<T>::Reset to 'reset' as per LLVM naming conventions. Code review feedback on r175580 from Jordan Rose. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175595 91177308-0d34-0410-b5e6-96231b3b80d8
ptional.h
|
a28eda7e401f37a2fe42ca9bba96b6e662b60cf0 |
20-Feb-2013 |
David Blaikie <dblaikie@gmail.com> |
Allow llvm::Optional to work with types without default constructors. This generalizes Optional to require less from the T type by using aligned storage for backing & placement new/deleting the T into it when necessary. Also includes unit tests. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175580 91177308-0d34-0410-b5e6-96231b3b80d8
ptional.h
|
9bc2c994827f2ff881d0563f0c14134b794b4928 |
20-Feb-2013 |
Jakub Staszak <kubastaszak@gmail.com> |
Move part of APInt implementation from header to cpp file. These methods require call cpp file anyway, so we wouldn't gain anything by keeping them inline. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175579 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
1f1713ff7a53c9c491c59886984f6a0534ce3630 |
19-Feb-2013 |
Douglas Gregor <dgregor@apple.com> |
Remove my bogus MapVector::erase() with a narrower ::pop_back(), and add a unit test. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175538 91177308-0d34-0410-b5e6-96231b3b80d8
apVector.h
|
a39058aaed4540fc37681cad728b99546595b2e8 |
19-Feb-2013 |
David Blaikie <dblaikie@gmail.com> |
Use LLVM_DELETED_FUNCTION rather than '// do not implement' comments. Also removes some redundant DNI comments on function declarations already using the macro. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175466 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
list.h
|
888fae7b49f5d39f2371edb78566476396e30c75 |
18-Feb-2013 |
Douglas Gregor <dgregor@apple.com> |
Add front/back/erase to MapVector. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175449 91177308-0d34-0410-b5e6-96231b3b80d8
apVector.h
|
a94d32284a00c544332464dd6b1efa65b1224ea3 |
14-Feb-2013 |
Francois Pichet <pichet2000@gmail.com> |
Add missing typename to unbreak the MSVC 2012 build. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175129 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
mmutableSet.h
|
779a96362e18d008e224c1683e54181ba1fbe943 |
13-Feb-2013 |
Ryan Govostes <rzg@apple.com> |
Fix iterator definitions for ImmutableSet and ImmutableMap. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175097 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
mmutableSet.h
|
3df02ac9d46f7ce8f0f10bc693dfc3c6c5aa2863 |
13-Feb-2013 |
Ryan Govostes <rzg@apple.com> |
Add iterator_traits to ImmutableMap and ImmutableSet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175085 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
mmutableSet.h
|
cef6cfe4a67af030754b4151cd63076c4aab7467 |
13-Feb-2013 |
Craig Topper <craig.topper@gmail.com> |
Remove unnecessary condtional assignment. The next line ignores the result of the assignment with the same condition. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175042 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
35b1423ee67a6ec7052016dda486e6ee4a118db4 |
07-Feb-2013 |
Meador Inge <meadori@codesourcery.com> |
ADT: Correct APInt::getActiveWords for zero values PR15138 was opened because of a segfault in the Bitcode writer. The actual issue ended up being a bug in APInt where calls to APInt::getActiveWords returns a bogus value when the APInt value is 0. This patch fixes the problem by ensuring that getActiveWords returns 1 for 0 valued APInts. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174641 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
72062f5744557e270a38192554c3126ea5f97434 |
31-Jan-2013 |
Tim Northover <Tim.Northover@arm.com> |
Add AArch64 as an experimental target. This patch adds support for AArch64 (ARM's 64-bit architecture) to LLVM in the "experimental" category. Currently, it won't be built unless requested explicitly. This initial commit should have support for: + Assembly of all scalar (i.e. non-NEON, non-Crypto) instructions (except the late addition CRC instructions). + CodeGen features required for C++03 and C99. + Compilation for the "small" memory model: code+static data < 4GB. + Absolute and position-independent code. + GNU-style (i.e. "__thread") TLS. + Debugging information. The principal omission, currently, is performance tuning. This patch excludes the NEON support also reviewed due to an outbreak of batshit insanity in our legal department. That will be committed soon bringing the changes to precisely what has been approved. Further reviews would be gratefully received. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174054 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
e502bba8c6dde1d95cc350c7935a1aea0b41465f |
30-Jan-2013 |
Michael Gottesman <mgottesman@apple.com> |
Encapsulate testing that we have an iOS Triple in Triple.h in the method isiOS so we follow the convention that all other platforms follow by having an is* test method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173983 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
6bbf4ff9c545c881422da37494b1ccb9c18d9c6a |
25-Jan-2013 |
Nick Lewycky <nicholas@mxc.ca> |
Add an insert() method to MapVector. Adds the first MapVector unit test. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173505 91177308-0d34-0410-b5e6-96231b3b80d8
apVector.h
|
827de0520ee986fcda5f0d3290a3746249fa5847 |
25-Jan-2013 |
Andrew Trick <atrick@apple.com> |
ArrayRef reverse iterators. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173424 91177308-0d34-0410-b5e6-96231b3b80d8
rrayRef.h
|
2f0a4e1aadfa227ed2565e532f0d1a3cf8e8efa5 |
25-Jan-2013 |
Andrew Trick <atrick@apple.com> |
whitespace git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173423 91177308-0d34-0410-b5e6-96231b3b80d8
rrayRef.h
|
0ac7e6f293bc502b39005496d2160b0089d3fa46 |
24-Jan-2013 |
Richard Trieu <rtrieu@google.com> |
Add asserts to SmallVector so that calls to front() and back() only succeed if the vector is not empty. This will ensure that calls to these functions will reference elements in the vector. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173321 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
9dd2a3b1f2c253e20262535bb89b1ab6cc680ece |
22-Jan-2013 |
Eli Bendersky <eliben@google.com> |
Initial patch for x32 ABI support. Add the x32 environment kind to the triple, and separate the concept of pointer size and callee save stack slot size, since they're not equal on x32. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173175 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
0a29cb045444c13160e90fe7942a9d7c720185ed |
22-Jan-2013 |
Tim Northover <Tim.Northover@arm.com> |
Make APFloat constructor require explicit semantics. Previously we tried to infer it from the bit width size, with an added IsIEEE argument for the PPC/IEEE 128-bit case, which had a default value. This default value allowed bugs to creep in, where it was inappropriate. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173138 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
dc89ed7da30e882cfdb74968b2a7613e37570409 |
22-Jan-2013 |
NAKAMURA Takumi <geek4civic@gmail.com> |
SparseMultiSet.h: Add suggested parentheses. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173128 91177308-0d34-0410-b5e6-96231b3b80d8
parseMultiSet.h
|
afe77f33b2a361ed0d001596dcdde0e16d57abee |
21-Jan-2013 |
Michael Ilseman <milseman@apple.com> |
Introduce a new data structure, the SparseMultiSet, and changes to the MI scheduler to use it. A SparseMultiSet adds multiset behavior to SparseSet, while retaining SparseSet's desirable properties. Essentially, SparseMultiSet provides multiset behavior by storing its dense data in doubly linked lists that are inlined into the dense vector. This allows it to provide good data locality as well as vector-like constant-time clear() and fast constant time find(), insert(), and erase(). It also allows SparseMultiSet to have a builtin recycler rather than keeping SparseSet's behavior of always swapping upon removal, which allows it to preserve more iterators. It's often a better alternative to a SparseSet of a growable container or vector-of-vector. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173064 91177308-0d34-0410-b5e6-96231b3b80d8
parseMultiSet.h
|
8a53a8329f47f86757af17dbea2864aa95414615 |
18-Jan-2013 |
Jordan Rose <jordan_rose@apple.com> |
Add llvm::hexDigitValue to convert single characters to hex. This is duplicated in a couple places in the codebase. Adopt this in APFloat. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172851 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
47f39340211f537cf79610832194c1884d420d62 |
15-Jan-2013 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[ADT/StringMap] Follow-up to r172455, use the correct constructor for setting the InitialSize, previously it was calling the "StringMapImpl(unsigned itemSize)" constructor. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172500 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
3735573343614644ead7a8bae674c312db8b1eb1 |
14-Jan-2013 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[ADT/StringMap] Add a constructor in StringMap that accepts both an initial size and an allocator. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172455 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
289148afcb68b28e155ee87aa5a9efcf75adb444 |
14-Jan-2013 |
Joe Groff <arcata@gmail.com> |
Fix DenseMap when LLVM_HAS_RVALUE_REFERENCES is defined but equals 0. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172454 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
a662a9862501fc86904e90054f7c1519101d9126 |
14-Jan-2013 |
Joe Groff <arcata@gmail.com> |
Add DenseMap::insert(value_type&&) method. Use the existing move implementation of the internal DenseMap::InsertIntoBucket method to provide a user-facing move insert method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172453 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
96f498bd9f140a98321c478f517877c4767b94fa |
13-Jan-2013 |
Dmitri Gribenko <gribozavr@gmail.com> |
Remove redundant 'llvm::' qualifications git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172358 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
674be02d525d4e24bc6943ed9274958c580bcfbc |
10-Jan-2013 |
Jakub Staszak <kubastaszak@gmail.com> |
Fix include guards so they exactly match file names. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172025 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
PInt.h
PSInt.h
mmutableIntervalMap.h
mmutableList.h
mmutableMap.h
mmutableSet.h
ntrusiveRefCntPtr.h
ullablePtr.h
ptional.h
wningPtr.h
riorityQueue.h
ariadicFunction.h
list_node.h
|
7aa1c321f00d29fdc84e9a03080853aa25dd06fc |
07-Jan-2013 |
Shuxin Yang <shuxin.llvm@gmail.com> |
Implement APFloat::isDenormal() git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171764 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
255cd6f317f3a0bad6e7939ca5ce49b33c6676f9 |
05-Jan-2013 |
NAKAMURA Takumi <geek4civic@gmail.com> |
Whitespace. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171601 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
5d295b41a3f4194778b6bc01a828b2115bd3a3f1 |
05-Jan-2013 |
NAKAMURA Takumi <geek4civic@gmail.com> |
DenseMap: Appease -fstrict-aliasing on g++-4.4. With DenseMapInfo<Enum>, it is miscompiled on g++-4.4. static inline Enum getEmptyKey() { return Enum(<arbitrary int/unsigned value>); } isEauql(getEmptyKey(), ...) The compiler mis-assumes the return value is not aliased to Enum. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171600 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
319120f6229dcf37f288be2719bc095a2f454d55 |
05-Jan-2013 |
Alex Rosenberg <alexr@leftfield.org> |
Fix warnings from llvm-gcc as seen on darwin10 (10.6). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171567 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
7c5c12bd4d60070c90161df9f6ae078c1f7b1ce5 |
04-Jan-2013 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Add an iplist::clearAndLeakNodesUnsafely() function. The iplist::clear() function can be quite expensive because it traverses the entire list, calling deleteNode() and removeNodeFromList() on each element. If node destruction and deallocation can be handled some other way, clearAndLeakNodesUnsafely() can be used to jettison all nodes without bringing them into cache. The function name is meant to be ominous. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171540 91177308-0d34-0410-b5e6-96231b3b80d8
list.h
|
138f084ca547c03d64b9a7acdbb84a01b8cd9111 |
04-Jan-2013 |
Eric Christopher <echristo@gmail.com> |
Make comment a bit more clear. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171473 91177308-0d34-0410-b5e6-96231b3b80d8
enseSet.h
|
23203faf0b36c263248f5b265530c56974d93c98 |
02-Jan-2013 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Use a bool instead of a bitfield in llvm/ADT/Optional. Fixes Valgrind failures and removes bitwise operations that don't provide any benefit. Valgrind failures reported by NAKAMURA Takumi. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171413 91177308-0d34-0410-b5e6-96231b3b80d8
ptional.h
|
edf315cd71334d5a7af31f4b882235d03b06f24d |
27-Dec-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Provide a common half-open interval map info implementation, and just re-use that for SlotIndexes. This way other users who want half-open semantics can share the implementation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171158 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
e8ce626308eb047d226847660e7dceed1169038f |
20-Dec-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Don't leave IsUnsigned uninitialized in a default-constructed APSInt. Copying such a structure has undefined behavior. Caught by -fsanitize=bool. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@170652 91177308-0d34-0410-b5e6-96231b3b80d8
PSInt.h
|
fc8657be3470e5b3b63705c9252251acba3c1606 |
19-Dec-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
MapVector: Add lookup(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@170527 91177308-0d34-0410-b5e6-96231b3b80d8
apVector.h
|
7f1d6d688f6ae288a16a4151e8a27b518d97f6f7 |
18-Dec-2012 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Add an assertion for a likely ilist::splice() contract violation. The single-element ilist::splice() function supports a noop move: List.splice(I, List, I); The corresponding std::list function doesn't allow that, so add a unit test to document that behavior. This also means that List.splice(I, List, F); is somewhat surprisingly not equivalent to List.splice(I, List, F, next(F)); This patch adds an assertion to catch the illegal case I == F above. Alternatively, we could make I == F a legal noop, but that would make ilist differ even more from std::list. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@170443 91177308-0d34-0410-b5e6-96231b3b80d8
list.h
|
745bf82ebac69b390911d5af0b1664fa7ff6410e |
18-Dec-2012 |
Eli Bendersky <eliben@google.com> |
Cleanup comment and formatting git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@170398 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
6cd738f33934a93b114d7dd9e4291f87f445c5c4 |
07-Dec-2012 |
Ted Kremenek <kremenek@apple.com> |
Mark ImmutableMap::remove/add() const. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169629 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
|
b02ed5b8eafd11500bbefb7206ecbf5bc3fc324a |
07-Dec-2012 |
Ted Kremenek <kremenek@apple.com> |
Add manualRetain() and manualRelease() to ImmutableMapRef, and add a new constructor. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169572 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
|
105fdbb1312bac8c46ba2e28e9d6a70c0af151c8 |
07-Dec-2012 |
Eli Bendersky <eliben@google.com> |
Add convenience accessor to Triple for OS == NaCl git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169565 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
091508d3d0b0ebe0216b73b30161fbc599f9d4f1 |
06-Dec-2012 |
Ted Kremenek <kremenek@apple.com> |
Revert "Allow modifying an ImmutableMap without canonicalizing it immediately." Jordan and I discussed this, and we don't want this in the API. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169541 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
|
972f087dbbc233bff9270716f2af453b90a996d9 |
06-Dec-2012 |
Jordan Rose <jordan_rose@apple.com> |
Allow modifying an ImmutableMap without canonicalizing it immediately. This is an alternative to the ImmutableMapRef interface where a factory should still be canonicalizing by default, but in certain cases an improvement can be made by delaying the canonicalization. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169532 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
|
8181827d1b04f7bc6939ab099acc09ef2b247061 |
04-Dec-2012 |
Eli Bendersky <eliben@google.com> |
Remove a URL from code git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169293 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
f659c0de6c7a4684a2a30c344ce6827ea87032d8 |
04-Dec-2012 |
Eli Bendersky <eliben@google.com> |
Make NaCl naming consistent. The triple OSType is called NaCl and is represented textually as NativeClient. Also added a link to the native client project for readers unfamiliar with it. A Clang patch will follow shortly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169291 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
f7e78487de159940e00e3fadaf6b2e023e2ad8fe |
03-Dec-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Add a getMemorySize() function for DenseSet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169163 91177308-0d34-0410-b5e6-96231b3b80d8
enseSet.h
|
acb8d9fbe3853394a2537985349993580309b8cd |
03-Dec-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Eliminate redundant bitwise operations when using a llvm/ADT/PointerUnion. For comparison, with this code sample: PointerUnion<int *, char *> Data; PointerUnion<int *, char *> foo1() { Data = new int; return new int; } PointerUnion<int *, char *> foo2() { Data = new char; return new char; } Before this patch we would get: define i64 @_Z4foo1v() uwtable ssp { %1 = tail call noalias i8* @_Znwm(i64 4) %2 = ptrtoint i8* %1 to i64 %3 = load i64* getelementptr inbounds (%"class.llvm::PointerUnion"* @Data, i64 0, i32 0, i32 0), align 8 %4 = and i64 %3, 1 %.masked.i = and i64 %2, -3 %5 = or i64 %4, %.masked.i store i64 %5, i64* getelementptr inbounds (%"class.llvm::PointerUnion"* @Data, i64 0, i32 0, i32 0), align 8 %6 = tail call noalias i8* @_Znwm(i64 4) %7 = ptrtoint i8* %6 to i64 %8 = and i64 %7, -3 ret i64 %8 } define i64 @_Z4foo2v() uwtable ssp { %1 = tail call noalias i8* @_Znwm(i64 1) %2 = ptrtoint i8* %1 to i64 %3 = load i64* getelementptr inbounds (%"class.llvm::PointerUnion"* @Data, i64 0, i32 0, i32 0), align 8 %4 = and i64 %3, 1 %5 = or i64 %2, %4 %6 = or i64 %5, 2 store i64 %6, i64* getelementptr inbounds (%"class.llvm::PointerUnion"* @Data, i64 0, i32 0, i32 0), align 8 %7 = tail call noalias i8* @_Znwm(i64 1) %8 = ptrtoint i8* %7 to i64 %9 = or i64 %8, 2 ret i64 %9 } After the patch: define i64 @_Z4foo1v() uwtable ssp { %1 = tail call noalias i8* @_Znwm(i64 4) %2 = ptrtoint i8* %1 to i64 store i64 %2, i64* getelementptr inbounds (%"class.llvm::PointerUnion"* @Data, i64 0, i32 0, i32 0), align 8 %3 = tail call noalias i8* @_Znwm(i64 4) %4 = ptrtoint i8* %3 to i64 ret i64 %4 } declare noalias i8* @_Znwm(i64) define i64 @_Z4foo2v() uwtable ssp { %1 = tail call noalias i8* @_Znwm(i64 1) %2 = ptrtoint i8* %1 to i64 %3 = or i64 %2, 2 store i64 %3, i64* getelementptr inbounds (%"class.llvm::PointerUnion"* @Data, i64 0, i32 0, i32 0), align 8 %4 = tail call noalias i8* @_Znwm(i64 1) %5 = ptrtoint i8* %4 to i64 %6 = or i64 %5, 2 ret i64 %6 } git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169147 91177308-0d34-0410-b5e6-96231b3b80d8
ointerIntPair.h
ointerUnion.h
|
255f89faee13dc491cb64fbeae3c763e7e2ea4e6 |
03-Dec-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Sort the #include lines for the include/... tree with the script. AKA: Recompile *ALL* the source code! This one went much better. No manual edits here. I spot-checked for silliness and grep-checked for really broken edits and everything seemed good. It all still compiles. Yell if you see something that looks goofy. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169133 91177308-0d34-0410-b5e6-96231b3b80d8
AGDeltaAlgorithm.h
eltaAlgorithm.h
enseMap.h
epthFirstIterator.h
oldingSet.h
mmutableList.h
mmutableSet.h
ntervalMap.h
CCIterator.h
mallSet.h
parseSet.h
tringExtras.h
tringRef.h
alueMap.h
|
4334dd96a9e622fdcf2825a8f73a2d941d67be72 |
30-Nov-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Switch LLVM_USE_RVALUE_REFERENCES to LLVM_HAS_RVALUE_REFERENCES. Rationale: 1) This was the name in the comment block. ;] 2) It matches Clang's __has_feature naming convention. 3) It matches other compiler-feature-test conventions. Sorry for the noise. =] I've also switch the comment block to use a \brief tag and not duplicate the name. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168996 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
itVector.h
enseMap.h
ntrusiveRefCntPtr.h
ptional.h
wningPtr.h
mallBitVector.h
mallVector.h
inyPtrVector.h
|
a5bf44b0b396e8b9ae0db5c62c05ac6618aab5d3 |
30-Nov-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Separate out the tests for whether the compiler suports R-value references from whether it supports an R-value reference *this. No version of GCC today supports the latter, which breaks GCC C++11 compiles of LLVM and Clang now. Also add doxygen comments clarifying what's going on here, and update the usage in Optional. I'll update the usages in Clang next. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168993 91177308-0d34-0410-b5e6-96231b3b80d8
ptional.h
|
adf0c3d82dbff1480c63f1ebe68c7c1e6bb5828c |
30-Nov-2012 |
Jordan Rose <jordan_rose@apple.com> |
Add a new C++11 compatibility macro, LLVM_LVALUE_FUNCTION. This expands to '&', and is intended to be used when an /optional/ rvalue override is available. Before: void foo() const { ... } After: void foo() const LLVM_LVALUE_FUNCTION { ... } void foo() && { ... } This is used to allow moving the contents of an Optional. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168963 91177308-0d34-0410-b5e6-96231b3b80d8
ptional.h
|
d5227545359a4816e52fd100b225ae140ec9b03a |
16-Nov-2012 |
Andrew Trick <atrick@apple.com> |
typo git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168202 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
009cf9e9a3a386f89db2686a105736481aed10ca |
15-Nov-2012 |
Sergei Larin <slarin@codeaurora.org> |
Fix indeterminism in MI scheduler DAG construction. Similarly to several recent fixes throughout the code replace std::map use with the MapVector. Add find() method to the MapVector. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168051 91177308-0d34-0410-b5e6-96231b3b80d8
apVector.h
|
ac39a035351a20928e087617e412aa6ce510181f |
15-Nov-2012 |
Guy Benyei <guy.benyei@intel.com> |
Add support for SPIR64 target - the 64bit counterpart of SPIR. The new OpenCL SPIR extension spec will define separate SPIR for 32 and 64 bit architectures. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168036 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
b61a11f7c0a6dd453f2b53e0583fe14603516420 |
15-Nov-2012 |
Jakub Staszak <kubastaszak@gmail.com> |
Use LLVM_DELETED_FUNCTION. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168009 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
06b423452c85f5a78a1b0555b767cf27b36c0752 |
14-Nov-2012 |
Eric Christopher <echristo@gmail.com> |
Remove the CellSPU port. Approved by Chris Lattner. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167984 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
6d42bbfe5e18f7256049435f2e23d11aeee670f1 |
31-Oct-2012 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove Triple::getArchTypeForDarwinArchName. I lives on the clang driver now. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167157 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
3a9b71434cda6f66d65a031effec1bbe58e1dda3 |
31-Oct-2012 |
Rafael Espindola <rafael.espindola@gmail.com> |
Add extra declarations of hash_value needed to build llvm with xlc 12.1. Patch by Kai! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167085 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
PInt.h
|
fce241d76fa39347f852fa74363b61c5e42cc602 |
29-Oct-2012 |
Ulrich Weigand <ulrich.weigand@de.ibm.com> |
APFloat cleanup: Remove now unused fields "sign2" and "exponent2". git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166952 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
b61054ff8f5568489109a0ccf2799307c3671309 |
26-Oct-2012 |
Derek Schuff <dschuff@google.com> |
Stop APInt::shl from generating llvm.trap APInt::shl generated llvm.trap to guard against shifts greater than bit-width. This was already checked with an assert, and there was a special case for shifts equal to bit-width. Modify this check to catch shifts greater than or equal to bit-width, so llvm.trap isn't generated. Patch contributed by JF Bastien git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166803 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
99112c6b193c54409e2a3a5ea76c3759d5c1244c |
24-Oct-2012 |
Pete Cooper <peter_cooper@apple.com> |
Improve DenseMap checks for power of 2 growth. Thanks for the tip Jakob git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166609 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
ce892ca9bc7f9924a69ce6c844e1dff5aa4049e6 |
24-Oct-2012 |
Michael J. Spencer <bigcheesegs@gmail.com> |
[Support/StringSet] Fix memory leak when inserted key already exists. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166517 91177308-0d34-0410-b5e6-96231b3b80d8
tringSet.h
|
2430973fb657eb84dfbacb1e8886d3a29190e0b5 |
23-Oct-2012 |
Pete Cooper <peter_cooper@apple.com> |
Change DenseMap to use a power of 2 growth if one is given instead of the next power of 2. This was causing DenseMaps to grow 4x instead of 2x. I'll keep an eye on the buildbots as this could impact performance git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166493 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
fbaf206f470b5a6a54811547641ee41368a2cccd |
23-Oct-2012 |
Pete Cooper <peter_cooper@apple.com> |
Fixed bug in SmallDenseMap where it wouldn't leave enough space for an empty bucket if the number of values was exactly equal to the small capacity. This led to an infinite loop when finding a non-existent element git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166492 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
5ce10521a0986e9626530c19e3247431dbb5f2ca |
19-Oct-2012 |
Jordan Rose <jordan_rose@apple.com> |
Fix case for include of Compiler.h. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166243 91177308-0d34-0410-b5e6-96231b3b80d8
ptional.h
|
e19f11215d8fa29635b28317dd1cfd1915d048d4 |
19-Oct-2012 |
Jordan Rose <jordan_rose@apple.com> |
Add move constructors for OwningPtr and OwningArrayPtr. While LLVM itself is still C++03, there's no reason why tools built on top of it can't use C++11 features. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166242 91177308-0d34-0410-b5e6-96231b3b80d8
wningPtr.h
|
9d9a6128feb6e2251eb3bacdf2d1083a8b2f5b83 |
19-Oct-2012 |
Jordan Rose <jordan_rose@apple.com> |
Add a T&& constructor to llvm::Optional. This allows llvm::Optional to be used with movable-but-not-copyable types. While LLVM itself is still C++03, there's no reason why tools built on top of it can't use C++11 features. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166241 91177308-0d34-0410-b5e6-96231b3b80d8
ptional.h
|
82e9bc2f57c00c200d7227b94891f272462d9292 |
16-Oct-2012 |
Owen Anderson <resistor@mac.com> |
Speculative fix the mask constants to be of type uintptr_t. I don't know of any case where the old form was incorrect, but I'm more confident that such cases don't exist in this version. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166031 91177308-0d34-0410-b5e6-96231b3b80d8
mallBitVector.h
|
e3f7be36c75ddcafb24b52c36c55c3dc17215db3 |
16-Oct-2012 |
Owen Anderson <resistor@mac.com> |
Fix a bug in the set(I,E)/reset(I,E) methods that I recently added. The boundary condition for checking if I and E were in the same word were incorrect, and, beyond that, the mask computation was not using a wide enough constant. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166015 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
3a1c35afbd02b012690c35ec827424c27792ec3f |
16-Oct-2012 |
Owen Anderson <resistor@mac.com> |
Add range-based set()/reset() to BitVector. These allow fast setting/resetting of ranges of bits, particularly useful when dealing with very large BitVector's. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165984 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
mallBitVector.h
|
658c62862e470b59aaf25825de64d93fbaf8cb93 |
14-Oct-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Fix a typo that made ImmutableMap::getMaxElement() useless. Add a basic unit test for ImmutableMap. Found by inspection. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165907 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
2e522d05278a69cf75b41dcd4b358e46b5350425 |
12-Oct-2012 |
Duncan Sands <baldrick@free.fr> |
Add powerpc-ibm-aix to Triple. Patch by Kai. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165792 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
8161d81239f1d125cb1aeaf0be6916c36d4cdf2f |
10-Oct-2012 |
Douglas Gregor <dgregor@apple.com> |
Add count() method to MapVector git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165559 91177308-0d34-0410-b5e6-96231b3b80d8
apVector.h
|
62430fd1a1d901956dfbac7b0ab49e2e653d6fc5 |
09-Oct-2012 |
Douglas Gregor <dgregor@apple.com> |
Not everyone uses C++11, apparently git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165517 91177308-0d34-0410-b5e6-96231b3b80d8
apVector.h
|
289c39965b1b799a22534d759fdf0a26302430d7 |
09-Oct-2012 |
Douglas Gregor <dgregor@apple.com> |
Allow MapVector clients to specify the map and vector types, and add a clear() method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165514 91177308-0d34-0410-b5e6-96231b3b80d8
apVector.h
|
de2fae4c7bfaedb95705b272015592895e05fd9c |
03-Oct-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Third try at fixing this. ;] Go back to using std::remove_if, which has most of the behavior we want, but wrap the predicate in one which erases elements from the set if they pass the predicate. Oh what I wouldn't give for a lambda here. Let me know if the predicate wrapping is too much magic. ;] git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165076 91177308-0d34-0410-b5e6-96231b3b80d8
etVector.h
|
75eac5f0ebff4d0ffe10ce6bc8f2867c5f15315b |
03-Oct-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Switch the SetVector::remove_if implementation to use partition which preserves the values of the relocated entries, unlikely remove_if. This allows walking them and erasing them. Also flesh out the predicate we are using for this to support the various constraints actually imposed on a UnaryPredicate -- without this we can't compose it with std::not1. Thanks to Sean Silva for the review here and noticing the issue with std::remove_if. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165073 91177308-0d34-0410-b5e6-96231b3b80d8
etVector.h
|
5c5b3cf5b8af06b8e9347f3f45e8c67438ffd446 |
03-Oct-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Teach the new SROA to handle cases where an alloca that has already been scheduled for processing on the worklist eventually gets deleted while we are processing another alloca, fixing the original test case in PR13990. To facilitate this, add a remove_if helper to the SetVector abstraction. It's not easy to use the standard abstractions for this because of the specifics of SetVectors types and implementation. Finally, a nice small test case is included. Thanks to Benjamin for the fantastic reduced test case here! All I had to do was delete some empty basic blocks! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165065 91177308-0d34-0410-b5e6-96231b3b80d8
etVector.h
|
5d37976090df34f003e5128e39593b763be0ca71 |
03-Oct-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Clean up these doxygen comments to follow the proposed new style. This also makes it more consistent with Clang and several passes' doxygen style. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165064 91177308-0d34-0410-b5e6-96231b3b80d8
etVector.h
|
7bbd6e366b39157445cc921024a987e61ea68c00 |
02-Oct-2012 |
Andrew Kaylor <andrew.kaylor@intel.com> |
Support for generating ELF objects on Windows. This adds 'elf' as a recognized target triple environment value and overrides the default generated object format on Windows platforms if that value is present. This patch also enables MCJIT tests on Windows using the new environment value. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165030 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
e53d6051b7e173722351a5647bfd71eebee3d837 |
01-Oct-2012 |
Micah Villmow <villmow@gmail.com> |
Add in support for SPIR to LLVM core. This adds a new target and two new calling conventions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164948 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
07b4d5592ac761e48bf712f0dd07281bb7f8ab52 |
28-Sep-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
PackedVector: Make the BitVector implementation configurable. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164826 91177308-0d34-0410-b5e6-96231b3b80d8
ackedVector.h
|
deda7b6e75b1796ef1a6d22b395098ffcbf32435 |
28-Sep-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Provide malloc-free sentinels for the SparseBitVector internals. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164823 91177308-0d34-0410-b5e6-96231b3b80d8
parseBitVector.h
|
94c22716d60ff5edf6a98a3c67e0faa001be1142 |
27-Sep-2012 |
Sylvestre Ledru <sylvestre@debian.org> |
Revert 'Fix a typo 'iff' => 'if''. iff is an abreviation of if and only if. See: http://en.wikipedia.org/wiki/If_and_only_if Commit 164767 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164768 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
etVector.h
parseBitVector.h
|
7e2c793a2b5c746344652b6579e958ee42fafdcc |
27-Sep-2012 |
Sylvestre Ledru <sylvestre@debian.org> |
Fix a typo 'iff' => 'if' git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164767 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
etVector.h
parseBitVector.h
|
a2df2ba16a94bf20b9202594d01cfbf370c2091a |
22-Sep-2012 |
Jordan Rose <jordan_rose@apple.com> |
Add llvm::getOrdinalSuffix to get the appropriate -st, -nd, -rd, -th suffix. Used by clang to print parameter indexes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164440 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
3bbdddf527c762085802544665d6e77471ea035b |
22-Sep-2012 |
Jordan Rose <jordan_rose@apple.com> |
DenseMap: assert that we have found a bucket before we try to insert into it. This silences literally dozens of analyzer warnings on LLVM (since DenseMap is such a commonly-used class). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164438 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
c312f098999d4640cf91934632ccecfc9ef30b85 |
19-Sep-2012 |
Rafael Espindola <rafael.espindola@gmail.com> |
Make MapVector a bit more expensive but harder to misuse. We now only provide insertion order iteration, instead of the old option of DenseMap order iteration over keys and insertion order iteration over values. This is implemented by keeping two copies of each key. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164221 91177308-0d34-0410-b5e6-96231b3b80d8
apVector.h
|
3b62b01f9a6fbecbc8aa22750d797459f8ae6417 |
18-Sep-2012 |
Rafael Espindola <rafael.espindola@gmail.com> |
Add a MapVector class. It provides a regular set iteration, but also provides a insertion order iteration over the values. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164157 91177308-0d34-0410-b5e6-96231b3b80d8
apVector.h
|
fc601db2ed899d800ea0a50f7ecf7de2a820cbc1 |
17-Sep-2012 |
Craig Topper <craig.topper@gmail.com> |
Mark unimplemented copy constructors and copy assignment operators as LLVM_DELETED_FUNCTION. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164014 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableList.h
mmutableMap.h
mmutableSet.h
wningPtr.h
copedHashTable.h
parseSet.h
alueMap.h
list.h
|
f630e49efc7bf3f1716b6daab3c2cc11a908754a |
16-Sep-2012 |
Craig Topper <craig.topper@gmail.com> |
Use LLVM_DELETED_FUNCTION for copy constructors and copy assignment operators that aren't implemented. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164006 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
910cf7f712a1895b993df4677c1059c595353dcc |
16-Sep-2012 |
Craig Topper <craig.topper@gmail.com> |
Tidy up formatting of some elses on a separate line from preceding bracing. No functional change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163992 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
644b3840b975cdd7465d16700740dd1dd7034df0 |
16-Sep-2012 |
Craig Topper <craig.topper@gmail.com> |
Tidy up trailing whitespace. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163988 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
0c08f5d2b93e551cfe25ec8d387be987f1c89710 |
16-Sep-2012 |
Craig Topper <craig.topper@gmail.com> |
Remove unneeded header. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163987 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
4e0ae44b3a1b5f7157351764fd125c7c85959797 |
15-Sep-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Fix Doxygen issues: wrap code examples in \code and use \p to refer to parameters. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163984 91177308-0d34-0410-b5e6-96231b3b80d8
quivalenceClasses.h
|
c5252da873d547a19069eaf9030fec203f128f66 |
14-Sep-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Fix Doxygen issues: * wrap code blocks in \code ... \endcode; * refer to parameter names in paragraphs correctly (\arg is not what most people want -- it starts a new paragraph); * use \param instead of \arg to document parameters in order to be consistent with the rest of the codebase. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163902 91177308-0d34-0410-b5e6-96231b3b80d8
AGDeltaAlgorithm.h
eltaAlgorithm.h
|
2d9eb72178af8e79dc6432cd1b7d29bde16da1b9 |
13-Sep-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Fix Doxygen issues: * wrap code blocks in \code ... \endcode; * refer to parameter names in paragraphs correctly (\arg is not what most people want -- it starts a new paragraph). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163790 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
AGDeltaAlgorithm.h
mallString.h
mallVector.h
tringExtras.h
tringRef.h
riple.h
wine.h
|
b2eb7406719a0cd70489a1229af643b04882b046 |
13-Sep-2012 |
Nick Lewycky <nicholas@mxc.ca> |
Fix typo in comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163782 91177308-0d34-0410-b5e6-96231b3b80d8
ashing.h
|
0d651e0c9d47a459b91755ccf711119f5b085dc5 |
08-Sep-2012 |
Ted Kremenek <kremenek@apple.com> |
Add operator< for FoldingSetNodeID. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163454 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
c05d30601ced172b55be81bb529df6be91d6ae15 |
06-Sep-2012 |
Nadav Rotem <nrotem@apple.com> |
Add a new optimization pass: Stack Coloring, that merges disjoint static allocations (allocas). Allocas are known to be disjoint if they are marked by disjoint lifetime markers (@llvm.lifetime.XXX intrinsics). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163299 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
15d0c81b2496a025af30a78e3a36fd7f05b165ef |
05-Sep-2012 |
Roman Divacky <rdivacky@freebsd.org> |
Remove unused typedefs gcc4.8 warns about. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163225 91177308-0d34-0410-b5e6-96231b3b80d8
ashing.h
|
f7e0ea6627517036c71dfd8e16e85cc7fbc44d4d |
05-Sep-2012 |
Marshall Clow <mclow@qualcomm.com> |
Removed Trie.h; unused in a long time git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163191 91177308-0d34-0410-b5e6-96231b3b80d8
rie.h
|
43bf70986bb13c812e87ca959dd8f2dd9edf802c |
02-Sep-2012 |
Logan Chien <tzuhsiang.chien@gmail.com> |
Rename ANDROIDEABI to Android. Most of the code guarded with ANDROIDEABI are not ARM-specific, and having no relation with arm-eabi. Thus, it will be more natural to call this environment "Android" instead of "ANDROIDEABI". Note: We are not using ANDROID because several projects are using "-DANDROID" as the conditional compilation flag. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163087 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
55a4b514faad3c7e91b1cb0ffd3313724c7efc03 |
30-Aug-2012 |
Will Dietz <wdietz2@illinois.edu> |
Fix HashString's Bernstein hash to use unsigned chars, as is usually done. Changes the hash result for strings containing characters with values >= 128, such as UTF8 strings (not normal ASCII). Changed mostly so we match other implementations. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162882 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
d939cd68f40e6fa0ccd6bee6391374b66abd71a1 |
28-Aug-2012 |
Hal Finkel <hfinkel@anl.gov> |
Add the Freescale vendor to Triple. Adds the vendor 'fsl' (used by Freescale SDK) to Triple. This will allow clang support for Freescale cross-compile configurations. Patch by Tobias von Koch. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162726 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
1144af3c9b4da48cd581156e05b24261c8de366a |
25-Aug-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Fix integer undefined behavior due to signed left shift overflow in LLVM. Reviewed offline by chandlerc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162623 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
enseMapInfo.h
ointerIntPair.h
parseBitVector.h
|
a00b80b04c5edb08639c1c6b32e9231fd8b066f7 |
23-Aug-2012 |
Dmitri Gribenko <gribozavr@gmail.com> |
Fix a bunch of -Wdocumentation warnings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162446 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
parseSet.h
|
bc363931085587bac42a40653962a3e5acd1ffce |
22-Aug-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Reduce alignment of SmallVector<T> to the required amount, rather than forcing 16-byte alignment. This fixes misaligned SmallVector accesses via ExtractValueInst's SmallVector data member. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162331 91177308-0d34-0410-b5e6-96231b3b80d8
rrayRef.h
mallVector.h
|
cbeb8d9869aafec3c2c1ee0922f0a4d5bb4a916a |
17-Aug-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Flatten the aligned-char-array utility template to be a directly templated union at the request of Richard Smith. This makes it substantially easier to type. =] git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162072 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
58aae3841cb054e909d6b5251399bfd7478653bc |
15-Aug-2012 |
Chad Rosier <mcrosier@apple.com> |
Fix a typo in VariadicFunction.h that leads to invalid code in macro expansion. Patch by Andy Gibbs <andyg1001@hotmail.co.uk> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161973 91177308-0d34-0410-b5e6-96231b3b80d8
ariadicFunction.h
|
b8ea08ca8c43016f5bc35e1a3b6557d414448fae |
14-Aug-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Avoid undefined behavior in DenseMap::shrink_and_clear(). Log2_32_Ceil(0) returns 32. This change mirrors the corresponding code in SmallDenseMap::shrink_and_clear(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161829 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
7c626d30974c632ab500171ff185a24bcf2603bf |
14-Aug-2012 |
Owen Anderson <resistor@mac.com> |
Add a roundToIntegral method to APFloat, which can be parameterized over various rounding modes. Use this to implement SelectionDAG constant folding of FFLOOR, FCEIL, and FTRUNC. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161807 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
78cab947cf8f81fc3cadbedd90c20fbe6e5eb1ee |
10-Aug-2012 |
Joerg Sonnenberger <joerg@bec.de> |
Add some missing includes for the build against stdcxx. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161657 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
b0f6759ab93b42570d71665b13d24ca2c4a5f276 |
06-Aug-2012 |
Eric Christopher <echristo@apple.com> |
Add support for the OpenBSD for Bitrig. Patch by David Hill. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161344 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
46588d4fb9c38ed7ce0cb561884fc20230dc9fd7 |
01-Aug-2012 |
Axel Naumann <Axel.Naumann@cern.ch> |
Reference IntrusiveRefCntPtr in doxygen doc of RefCountedBase to get a link to the pointer class documentation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161112 91177308-0d34-0410-b5e6-96231b3b80d8
ntrusiveRefCntPtr.h
|
147d9e05116518461653695a6022f6109f0eb936 |
01-Aug-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Add range erase, element insert, and range insert methods to TinyPtrVector. With these, it is sufficiently functional for my more normal / pedestrian uses. I've not included some r-value reference stuff here because the value type for a TinyPtrVector is, necessarily, just a pointer. I've added tests that cover the basic behavior of these routines, but they aren't as comprehensive as I'd like. In particular, they don't really test the iterator semantics as thoroughly as they should. Maybe some brave soul will feel enterprising and flesh them out. ;] git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161104 91177308-0d34-0410-b5e6-96231b3b80d8
inyPtrVector.h
|
0b1bcbf6b87f19402d8aef1ef9f6e527a07de9d4 |
01-Aug-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Add basic in-bounds asserts to TinyPtrVector::erase. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161103 91177308-0d34-0410-b5e6-96231b3b80d8
inyPtrVector.h
|
12648bed2873fdf2120b54c5539026ff468283fb |
01-Aug-2012 |
Nick Kledzik <kledzik@apple.com> |
Fix shadowed variable warning git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161097 91177308-0d34-0410-b5e6-96231b3b80d8
tringSwitch.h
|
06bd8ca8c276d9bc20b192188224e1e5215666a0 |
31-Jul-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Implement copy and move assignment for TinyPtrVector. These try to re-use allocated vectors as much as possible. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161041 91177308-0d34-0410-b5e6-96231b3b80d8
inyPtrVector.h
|
b4c28fc93f5149a0bd7967af44c429412e751c56 |
31-Jul-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Clean up trailing whitespace and unnecessary blank lines. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161025 91177308-0d34-0410-b5e6-96231b3b80d8
inyPtrVector.h
|
40dab1059e72d3af59f2523fa8a7d05f40dafca5 |
31-Jul-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Bring TinyPtrVector under test. Somehow we never picked up unit tests for this class. These tests exercise most of the basic properties, but the API for TinyPtrVector is very strange currently. My plan is to start fleshing out the API to match that of SmallVector, but I wanted a test for what is there first. Sadly, it doesn't look reasonable to just re-use the SmallVector tests, as this container can only ever store pointers, and much of the SmallVector testing is to get construction and destruction right. Just to get this basic test working, I had to add value_type to the interface. While here I found a subtle bug in the combination of 'erase', 'begin', and 'end'. Both 'begin' and 'end' wanted to use a null pointer to indicate the "end" iterator of an empty vector, regardless of whether there is actually a vector allocated or the pointer union is null. Everything else was fine with this except for erase. If you erase the last element of a vector after it has held more than one element, we return the end iterator of the underlying SmallVector which need not be a null pointer. Instead, simply use the pointer, and poniter + size() begin/end definitions in the tiny case, and delegate to the inner vector whenever it is present. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161024 91177308-0d34-0410-b5e6-96231b3b80d8
inyPtrVector.h
|
ba1f580f338e12c47a600050f7a77fae579acf93 |
31-Jul-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Move the SmallVector unit tests to be type-parameterized so that we can test more than a single instantiation of SmallVector. Add testing for 0, 1, 2, and 4 element sized "small" buffers. These appear to be essentially untested in the unit tests until now. Fix several tests to be robust in the face of a '0' small buffer. As a consequence of this size buffer, the growth patterns are actually observable in the test -- yes this means that many tests never caused a grow to occur before. For some tests I've merely added a reserve call to normalize behavior. For others, the growth is actually interesting, and so I captured the fact that growth would occur and adjusted the assertions to not assume how rapidly growth occured. Also update the specialization for a '0' small buffer length to have all the same interface points as the normal small vector. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161001 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
a77b95a316e0eb04929c5d7fe96935124c3ed478 |
29-Jul-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
APInt: Simplify code. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160929 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
e82fafe9e22c7f0bb35ec4cb7d5428bf9e930807 |
27-Jul-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
SmallVector: Crank up verbosity of asserts per Chandler's request. Also add assertions to validate the iterator in the insert method overloads. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160882 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
df7c5d4137fd5cf63d9a9b0f09c9d7255895908c |
27-Jul-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
SmallVector::erase: Assert that iterators are actually inside the vector. The rationale here is that it's hard to write loops containing vector erases and it only shows up if the vector contains non-trivial objects leading to crashes when forming them out of garbage memory. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160854 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
5e31044e119c75899b91ca97eb4d8ba786afc01c |
23-Jul-2012 |
Richard Trieu <rtrieu@google.com> |
Add operator== to APSInt. This will compare the signed bit before doing the comparison. This prevents large unsigned integers from being equal to signed negative integers of the same bit width. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160642 91177308-0d34-0410-b5e6-96231b3b80d8
PSInt.h
|
c8e41c591741b3da1077f7000274ad040bef8002 |
23-Jul-2012 |
Sylvestre Ledru <sylvestre@debian.org> |
Fix a typo (the the => the) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160621 91177308-0d34-0410-b5e6-96231b3b80d8
epthFirstIterator.h
|
aa7507d68dcc04f3118a05b5dff4123ded03253e |
19-Jul-2012 |
Bill Wendling <isanbard@gmail.com> |
Remove tabs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160471 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
mmutableSet.h
riple.h
|
6ef4996b095ef6c0d902798d2455716a79bd0a3d |
18-Jul-2012 |
Jordan Rose <jordan_rose@apple.com> |
Allow PointerIntPairs to be created from const void *. For a measure of safety, this conversion is only permitted if the stored pointer type can also be created from a const void *. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160456 91177308-0d34-0410-b5e6-96231b3b80d8
ointerIntPair.h
|
1cacae0f297b7330c4cd2b4f0a1f95ab2615bd65 |
17-Jul-2012 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Fix broken ipo_ext_iterator constructors. These functions have obviously never been used before. They should be identical to the idf_ext_iterator counterparts. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160381 91177308-0d34-0410-b5e6-96231b3b80d8
ostOrderIterator.h
|
31f18eeb2bff53ce48c9c980f0b0676401d593c8 |
17-Jul-2012 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Allow for customized graph edge pruning in PostOrderIterator.h Make it possible to prune individual graph edges from a post-order traversal by specializing the po_iterator_storage template. Previously, it was only possible to prune full graph nodes. Edge pruning makes it possible to remove loop back-edges, for example. Also replace the existing DFSetTraits customization hook with a po_iterator_storage method for observing the post-order. DFSetTraits was only used by LoopIterator.h which now provides a po_iterator_storage specialization. Thanks to Sean and Chandler for reviewing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160366 91177308-0d34-0410-b5e6-96231b3b80d8
ostOrderIterator.h
|
5449a1db40b75586c1daf70a14396295e7b3fe24 |
15-Jul-2012 |
Eric Christopher <echristo@apple.com> |
Move IsSameValue from clang's ASTImporter to be methods on the APInt/APSInt classes. Part of rdar://11875995 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160223 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
PSInt.h
|
b76fb96cd66aec709e2a0cfda8c29c53ba5ad98c |
13-Jul-2012 |
Galina Kistanova <gkistanova@gmail.com> |
Fixed few warnings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160192 91177308-0d34-0410-b5e6-96231b3b80d8
ointerUnion.h
|
d9cff9a25a9d4f2d8d9c1cb4960fb52cb049ef49 |
08-Jul-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
SmallVector: Make use of move semantics to speed up moving objects in erase() and insert() git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159914 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
ce9a04132d1bf85967d6ad062d45dd75f148eef1 |
03-Jul-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Micro-optimize this function a bit. This shrinks the generated code some, and allows the routine to be inlined into common callers. The various bits that hit this code in their hotpath seem slightly lower on the profile, but I can't really measure a performance improvement as everything seems to still be bottlenecked on likely cache misses. =/ git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159648 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
ac24e251014de60a16558fc0a1f2340c334d2aa8 |
30-Jun-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Avoid sign compare warning. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159481 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
305b515c2787f47adecbe120e4b4bef55c5e5525 |
20-Jun-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Remove 'static' from inline functions defined in header files. There is a pretty staggering amount of this in LLVM's header files, this is not all of the instances I'm afraid. These include all of the functions that (in my build) are used by a non-static inline (or external) function. Specifically, these issues were caught by the new '-Winternal-linkage-in-inline' warning. I'll try to just clean up the remainder of the clearly redundant "static inline" cases on functions (not methods!) defined within headers if I can do so in a reliable way. There were even several cases of a missing 'inline' altogether, or my personal favorite "static bool inline". Go figure. ;] git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158800 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
90420105964371571ccacdf47771c6ca05db2e67 |
19-Jun-2012 |
David Blaikie <dblaikie@gmail.com> |
Don't copy a potentially-uninitialized variable. Based on review discussion of r158638 with Chandler Carruth, Tobias von Koch, and Duncan Sands and a -Wmaybe-uninitialized warning from GCC. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158685 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
d45f7b6b5dd36b4732dff82ab7c8a856a7b36ae0 |
17-Jun-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Bring the return value of SmallVector::insert in line with std::vector::insert. It always returns the iterator for the first inserted element, or the passed in iterator if the inserted range was empty. Flesh out the unit test more and fix all the cases it uncovered so far. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158645 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
b4bec53f367614132290425cb4805a2d5696153a |
17-Jun-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Remove SmallMap, and the several files that were used to implement it. We have SmallDenseMap now that has more correct and predictable semantics, even though it is a more narrow abstraction. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158644 91177308-0d34-0410-b5e6-96231b3b80d8
latArrayMap.h
ultiImplMap.h
mallMap.h
|
5f6c7cfa931a9f9a154c67927f5dec7e928c23d6 |
17-Jun-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
SmallVector: return a valid iterator for the rare case of inserting an empty range into a SmallVector. Patch by Johannes Schaub! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158643 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
8dffa4a106b52d893388c94c24e365e14c468b7c |
17-Jun-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Add a unit test for 'swap', and fix a pile of bugs in SmallDenseMap::swap. First, make it parse cleanly. Yay for uninstantiated methods. Second, make the inline-buckets case work correctly. This is way trickier than it should be due to the uninitialized values in empty and tombstone buckets. Finally fix a few typos that caused construction/destruction mismatches in the counting unittest. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158641 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
6446d7e6d641135bdf9dc315ed69d0b10067fbd6 |
17-Jun-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Add tests for *DenesMap for both key and value types' construction and destruction and fix a bug in SmallDenseMap they caught. This is kind of a poor-man's version of the testing that just adds the addresses to a set on construction and removes them on destruction. We check that double construction and double destruction don't occur. Amusingly enough, this is enough to catch a lot of SmallDenseMap issues because we spend a lot of time with fixed stable addresses in the inline buffer. The SmallDenseMap bug fix included makes grow() not double-destroy in some cases. It also fixes a FIXME there, the code was pretty crappy. We now don't have any wasted initialization, but we do move the entries in inline bucket array an extra time. It's probably a better tradeoff, and is much easier to get correct. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158639 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
dd9d38d57bbd2161e04af90a9e03011afb039b16 |
17-Jun-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Introduce a SmallDenseMap container that re-uses the existing DenseMap implementation. This type includes an inline bucket array which is used initially. Once it is exceeded, an array of 64 buckets is allocated on the heap. The bucket count grows from there as needed. Some highlights of this implementation: - The inline buffer is very carefully aligned, and so supports types with alignment constraints. - It works hard to avoid aliasing issues. - Supports types with non-trivial constructors, destructors, copy constructions, etc. It works reasonably hard to minimize copies and unnecessary initialization. The most common initialization is to set keys to the empty key, and so that should be fast if at all possible. This class has a performance / space trade-off. It tries to optimize for relatively small maps, and so packs the inline bucket array densely into the object. It will be marginally slower than a normal DenseMap in a few use patterns, so it isn't appropriate everywhere. The unit tests for DenseMap have been generalized a bit to support running over different map implementations in addition to different key/value types. They've then been automatically extended to cover the new container through the magic of GoogleTest's typed tests. All of this is still a bit rough though. I'm going to be cleaning up some aspects of the implementation, documenting things better, and adding tests which include non-trivial types. As soon as I'm comfortable with the correctness, I plan to switch existing users of SmallMap over to this class as it is already more correct w.r.t. construction and destruction of objects iin the map. Thanks to Benjamin Kramer for all the reviews of this and the lead-up patches. That said, more review on this would really be appreciated. As I've noted a few times, I'm quite surprised how hard it is to get the semantics for a hashtable-based map container with a small buffer optimization correct. =] git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158638 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
904cf82f270b9d7bd26df2261f8776efdc9e2fa2 |
16-Jun-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Merge the SmallBitVector and BitVector unit tests with gtest's typed test magic and bring SmallBitVector up to date. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158600 91177308-0d34-0410-b5e6-96231b3b80d8
mallBitVector.h
|
48f4dcf0f7fd64df00839018d633944bc2464501 |
16-Jun-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Lift the NumElements and NumTombstones members into the super class rather than the base class. Add a pile of boilerplate to indirect around this. This is pretty ugly, but it allows the super class to change the representation of these values, which will be key for doing a SmallDenseMap. Suggestions on better method structuring / naming are welcome, but keep in mind that SmallDenseMap won't have an 'unsigned' member to expose a reference to... =/ git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158586 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
7f6c82a7e0fbf8ed012bc76471576c8cc42370a3 |
16-Jun-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Factor DenseMap into a base class that implements the hashtable logic, and a derived class that provides the allocation and growth strategy. This is the first (and biggest) step toward building a SmallDenseMap that actually behaves exactly the same as DenseMap, and supports all the same types and interface points with the same semantics. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158585 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
cba91230c0beef79e5042d8e983198b26aac5616 |
14-Jun-2012 |
Stepan Dyatkovskiy <stpworld@narod.ru> |
SmallMap, FlatArrayMap::copyFrom Replaced memcpy with std::copy, since the first one may work improperly with non POD data. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158457 91177308-0d34-0410-b5e6-96231b3b80d8
latArrayMap.h
|
14d81c416c72dc779dd31a81f68ebd6a6456f6f0 |
13-Jun-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Group the 'unsigned' members after the pointer to avoid 4 bytes of padding on x86-64. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158421 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
82ce516591f01e31a65cb582732a3de582fc220b |
09-Jun-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Hashing: Remove outdated comment. Support for reserved hash values was removed in r151865. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158276 91177308-0d34-0410-b5e6-96231b3b80d8
ashing.h
|
0fa2b7b90df9a20baf2d14b7bc4fe7db5144efde |
02-Jun-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Add move semantics to APInt. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157883 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
693e3ee0c2d2a2cb6f691222694a788dd595c108 |
01-Jun-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Provide move semantics for (Small)BitVector. CodeGen makes a lot of BitVector copies. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157826 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
mallBitVector.h
|
91a8ad71aa5d08e37a8a4ed364d0dae720d8ea7c |
01-Jun-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
IntrusiveRefCntPtr: Simplify operator= as suggested by Richard Smith. This way the constructors do all the hard work. No intended functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157773 91177308-0d34-0410-b5e6-96231b3b80d8
ntrusiveRefCntPtr.h
|
aad82963837af31c1e5b8b9c3ac282b0e826b18b |
29-May-2012 |
Douglas Gregor <dgregor@apple.com> |
DenseMap's move assignment operator needs to return *this git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157644 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
2edc74aa1fb541253f4286a70194960dab69506b |
28-May-2012 |
Chris Lattner <sabre@nondot.org> |
add some helper methods to make the type more uniform. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157554 91177308-0d34-0410-b5e6-96231b3b80d8
inyPtrVector.h
|
8e337120133c746640246feb9383556d383a94be |
28-May-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
DenseMap: Use an early exit when there is nothing to do in DestroyAll(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157550 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
5acc40a0373ed183d944b4f165dbb0b6798d5a92 |
27-May-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
IntrusiveRefCntPtr: Use the same pattern as the other operator= overloads when using rvalue refs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157546 91177308-0d34-0410-b5e6-96231b3b80d8
ntrusiveRefCntPtr.h
|
aee60d4d42b913bd3e4958f32ec9e7f2cf28b0ff |
27-May-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
DenseMap: Provide a move ctor and move semantics for operator[] and FindAndConstruct. The only missing part is insert(), which uses a pair of parameters and I haven't figured out how to convert it to rvalue references. It's now possible to use a DenseMap with std::unique_ptr values :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157539 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
295d8ff007ef2c36a91141d7f7aa218f43c4c4b5 |
27-May-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
DenseMap: Factor destruction into a common helper method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157538 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
e3f75f8797b9752bfe7923bff9a87a15a6fe3552 |
27-May-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Move-enable IntrusiveRefCntPtr. These tend to be copied around a lot, moving it instead saves a ton of memory accesses. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157535 91177308-0d34-0410-b5e6-96231b3b80d8
ntrusiveRefCntPtr.h
|
42a0b48dd3773574f648c19b4d9abafb6b4a4f16 |
24-May-2012 |
Justin Holewinski <jholewinski@nvidia.com> |
Remove the PTX back-end and all of its artifacts (triple, etc.) This back-end was deprecated in favor of the NVPTX back-end. NV_CONTRIB git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157417 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
a7a2a3635f2fbe46d7d9074798e79e853f69d40b |
22-May-2012 |
Nuno Lopes <nunoplopes@sapo.pt> |
fix the quotient returned by sdivrem() for the case when LHS is negative and RHS is positive based on a patch by Preston Briggs, with some modifications git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157231 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
9e7e04823cb472ae8c36ce354365ba76ba1bcb36 |
19-May-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Disambiguate call to operator==. clang++ and msvc happily had no problem with it but g++ refuses to compile. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157126 91177308-0d34-0410-b5e6-96231b3b80d8
alueMap.h
|
96edb648e2ea10e1662758b791fc7b494fe74f49 |
19-May-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
ValueMap: Use DenseMap's find_as mechanism to reduce use list churn. Otherwise just looking up a value in the map requires creating a VH, adding it to the use lists and destroying it again. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157124 91177308-0d34-0410-b5e6-96231b3b80d8
alueMap.h
|
ac5802bca0285eee49c1c372846552823d819181 |
19-May-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Provide move semantics for TinyPtrVector and for DenseMap's rehash function. This makes DenseMap<..., TinyPtrVector<...>> as cheap as it always should've been! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157113 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
inyPtrVector.h
|
661f760320e8b8e9bd44016585648bb1941b1584 |
15-May-2012 |
Stepan Dyatkovskiy <stpworld@narod.ru> |
Fixed one small stupid, but critical bug. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156810 91177308-0d34-0410-b5e6-96231b3b80d8
latArrayMap.h
|
00570224891da83c5066b8d135232f96786dbd56 |
14-May-2012 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Remove the expensive BitVector::operator~(). Returning a temporary BitVector is very expensive. If you must, create the temporary explicitly: Use BitVector(A).flip() instead of ~A. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156768 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
9e10d773e155fcd9fba9c3e1a7d2e49f31c42731 |
14-May-2012 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Remove BitVector binops. These operators were crazy slow, calling malloc to return a temporary result. At the same time, they look very innocent when used in code. If you need temporary BitVectors to compute your thing, create them explicitly, and use the inplace logical operators. This makes the high cost explicit in the code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156767 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
03a3811ab48139f45cf47f1168788e630af0d40b |
14-May-2012 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Add BitVector::anyCommon(). The existing operation (A & B).any() is very slow. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156760 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
b08174c0b1ed7a8c3cacc5df506eb98c79305a4e |
12-May-2012 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Add doxygen comments. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156665 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
b0940b46edbbe9d3f62d7f6f70330fd87f3507e1 |
12-May-2012 |
Michael J. Spencer <bigcheesegs@gmail.com> |
[Support/StringRef] Add find_last_not_of and {r,l,}trim. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156652 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
ecee47eab409f6a6fada7ace3d9bee0a0146ac3f |
09-May-2012 |
Chad Rosier <mcrosier@apple.com> |
Add Triple::getiOSVersion. This new function provides a way to get the iOS version number from ios triples. Part of rdar://11409204 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156483 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
e74ba3a46d1c86bb218e0d3ba5f28f986eb6e062 |
07-May-2012 |
Jordy Rose <jediknil@belkadan.com> |
Constify (trivially) ImmutableSet::iterator::getVisitState(). This was probably intended all along. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156318 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
49683f3c961379fbc088871a5d6304950f1f1cbc |
04-May-2012 |
Justin Holewinski <jholewinski@nvidia.com> |
This patch adds a new NVPTX back-end to LLVM which supports code generation for NVIDIA PTX 3.0. This back-end will (eventually) replace the current PTX back-end, while maintaining compatibility with it. The new target machines are: nvptx (old ptx32) => 32-bit PTX nvptx64 (old ptx64) => 64-bit PTX The sources are based on the internal NVIDIA NVPTX back-end, and contain more functionality than the current PTX back-end currently provides. NV_CONTRIB git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156196 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
a83a6d3725a9a488e2d10c1f2af46d9c6d82958d |
04-May-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Add a FoldingSetVector datastructure which is analogous to a SetVector, but using a FoldingSet underneath and with a largely compatible interface to that of FoldingSet. This can be used anywhere a FoldingSet would be natural, but iteration order is significant. The initial intended use case is in Clang's template specialization lists to preserve instantiation order iteration. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156131 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
38dbb606755232e229f11994fc2bbf10e8c5788b |
02-May-2012 |
John McCall <rjmccall@apple.com> |
Update SmallVector to support move semantics if the host does. Note that support for rvalue references does not imply support for the full set of move-related STL operations. I've preserved support for an odd little thing in insert() where we're trying to support inserting a new element from an existing one. If we actually want to support that, there's a lot more we need to do: insert can call either grow or push_back, neither of which is safe against this particular use pattern. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155979 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
3703baacf5c17425a07d57583148086a746c5f98 |
29-Apr-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
SmallVector: Don't rely on having an assignment operator around in push_back for POD-like types. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155791 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
1dd346ad05d2adbbd787c3bef8c335567f969b82 |
28-Apr-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Use the most basic superclass of SmallVector in ArrayRef. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155760 91177308-0d34-0410-b5e6-96231b3b80d8
rrayRef.h
|
b856d555b0336234cb4d5e2d77c3d506efa17550 |
25-Apr-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Reapply the SmallMap patch with a fix. Comparing ~0UL with an unsigned will always return false when long is 64 bits long. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155568 91177308-0d34-0410-b5e6-96231b3b80d8
latArrayMap.h
ultiImplMap.h
mallMap.h
|
bdbf0154769dd2f2565068a51fd49e4be0005f55 |
25-Apr-2012 |
Eric Christopher <echristo@apple.com> |
Revert "First implementation of:" This reverts commit 76271a3366731d4c372fdebcd8d3437e6e09a61b. as it's breaking the bots. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155562 91177308-0d34-0410-b5e6-96231b3b80d8
latArrayMap.h
ultiImplMap.h
mallMap.h
|
76271a3366731d4c372fdebcd8d3437e6e09a61b |
25-Apr-2012 |
Stepan Dyatkovskiy <stpworld@narod.ru> |
First implementation of: - FlatArrayMap. Very simple map container that uses flat array inside. - MultiImplMap. Map container interface, that has two modes, one for small amount of elements and one for big amount. - SmallMap. SmallMap is DenseMap compatible MultiImplMap. It uses FlatArrayMap for small mode, and DenseMap for big mode. Also added unittests for new classes and update for ProgrammersManual. For more details about new classes see ProgrammersManual and comments in sourcecode. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155557 91177308-0d34-0410-b5e6-96231b3b80d8
latArrayMap.h
ultiImplMap.h
mallMap.h
|
55738761b393cc844e230a74e29edf4cdc37e9b8 |
21-Apr-2012 |
Chris Lattner <sabre@nondot.org> |
stop hiding SmallVector's append that takes a count + element. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155297 91177308-0d34-0410-b5e6-96231b3b80d8
mallString.h
|
c0ccb8bb17028fe0dda139c0972c0125d10e6053 |
20-Apr-2012 |
Andrew Trick <atrick@apple.com> |
SparseSet: Add support for key-derived indexes and arbitrary key types. This nicely handles the most common case of virtual register sets, but also handles anticipated cases where we will map pointers to IDs. The goal is not to develop a completely generic SparseSet template. Instead we want to handle the expected uses within llvm without any template antics in the client code. I'm adding a bit of template nastiness here, and some assumption about expected usage in order to make the client code very clean. The expected common uses cases I'm designing for: - integer keys that need to be reindexed, and may map to additional data - densely numbered objects where we want pointer keys because no number->object map exists. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155227 91177308-0d34-0410-b5e6-96231b3b80d8
ndexedMap.h
TLExtras.h
parseSet.h
|
4bb87cbac50098acc6816390c00fad419d3434fc |
18-Apr-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
SmallPtrSet: Reuse DenseMapInfo's pointer hash function instead of inventing a bad one ourselves. DenseMap's hash function uses slightly more entropy and reduces hash collisions significantly. I also experimented with Hashing.h, but it didn't gave a lot of improvement while being much more expensive to compute. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154996 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
164dfb094df947db2117c182ae033ea85c6c42a1 |
14-Apr-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Make StringMap's copy ctor non-explicit. Without this gcc doesn't allow us to put a StringMap into a std::map. Works with clang though. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154737 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
f7c3e5f05199e1202c86198e0827cac19c0f48b5 |
11-Apr-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
FoldingSet: Push the hash through FoldingSetTraits::Equals, so clients can use it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154496 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
1fd63df6930a83d9d1378d2c68e19850c652078e |
10-Apr-2012 |
Duncan Sands <baldrick@free.fr> |
Express the number of ULPs in fpaccuracy metadata as a real rather than a rational number, eg as 2.5 rather than 5, 2. OK'd by Peter Collingbourne. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154387 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
5cd79bc14ca51019af4db735d13eac95dab088ed |
07-Apr-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Perform partial SROA on the helper hashing structure. I really wish the optimizers could do this for us, but expecting partial SROA of classes with template methods through cloning is probably expecting too much heroics. With this change, the begin/end pointer pairs which indicate the status of each loop iteration are actually passed directly into each layer of the combine_data calls, and the inliner has a chance to see when most of the combine_data function could be deleted by inlining. Similarly for 'length'. We have to be careful to limit the places where in/out reference parameters are used as those will also defeat the inliner / optimizers from properly propagating constants. With this change, LLVM is able to fully inline and unroll the hash computation of small sets of values, such as two or three pointers. These now decompose into essentially straight-line code with no loops or function calls. There is still one code quality problem to be solved with the hashing -- LLVM is failing to nuke the alloca. It removes all loads from the alloca, leaving only lifetime intrinsics and dead(!!) stores to the alloca. =/ Very unfortunate. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154264 91177308-0d34-0410-b5e6-96231b3b80d8
ashing.h
|
4e58263459d7f9ae862b52adafe585b66411272f |
06-Apr-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
DenseMap: Perform the pod-like object optimization when the value type is POD-like, not the DenseMapInfo for it. Purge now unused template arguments. This has been broken since r91421. Patch by Lubos Lunak! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154170 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
alueMap.h
|
a47406c442a81aaf368b6e1a9b31d1730975a717 |
02-Apr-2012 |
Hal Finkel <hfinkel@anl.gov> |
Add triple support for the IBM BG/P and BG/Q supercomputers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153882 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
e68e77569ff424d7c28f7386434103ecf2ebb9cb |
23-Mar-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Move ftostr into its last user (cppbackend) and simplify it a bit. New code should use raw_ostream. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153326 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
4211c196d48a16748158452db918403f30088266 |
20-Mar-2012 |
Anna Zaks <ganna@apple.com> |
Make sure ImmutableSet never inserts Tombstone/Entry into DenseMap. ImmutAVLTree uses random unsigned values as keys into a DenseMap, which could possibly happen to be the same value as the Tombstone or Entry keys in the DenseMap. Test case is hard to come up with. We randomly get failures on the internal static analyzer bot, which most likely hits this issue (hard to be 100% sure without the full stack). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153148 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
4ec692317bc38588d01edb7584953c9aca4a9467 |
14-Mar-2012 |
Francois Pichet <pichet2000@gmail.com> |
Fixes the MSVC build. Commit r152704 exposed a latent MSVC limitation (aka bug). Both ilist and and iplist contains the same function: template<class InIt> void insert(iterator where, InIt first, InIt last) { for (; first != last; ++first) insert(where, *first); } Also ilist inherits from iplist and ilist contains a "using iplist<NodeTy>::insert". MSVC doesn't know which one to pick and complain with an error. I think it is safe to delete ilist::insert since it is redundant anyway. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152746 91177308-0d34-0410-b5e6-96231b3b80d8
list.h
|
69ccf9fc0b131f2c71c3d60791425cbf52392ee4 |
14-Mar-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Move APInt::operator[] inline. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152692 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
a18988518869a84cb4d6510e265b1fb1a52268d1 |
14-Mar-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Move APInt::operator! inline, it's small and fuses well with surrounding code when inlined. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152688 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
e4c972d8643a340e822c419eea2461c1357fb015 |
13-Mar-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Remove an old hack for pre-2005 MSVC. We don't support ancient microsoft compilers anymore. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152659 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
87d8e60505b26960956996550c8b805c81e5b02b |
11-Mar-2012 |
Douglas Gregor <dgregor@apple.com> |
Add a few missing 'template' keywords git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152525 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
ointerUnion.h
|
9130b42a85998238b7bbe25ed2989e0605f636f0 |
11-Mar-2012 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Make StringRef::getAsInteger work with all integer types. Before this change it would fail with {,u}int64_t on x86-64 Linux. This also removes code duplication. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152517 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
7415659bf8b8523ab8b706caa461984a199dc3c8 |
09-Mar-2012 |
Anton Korobeynikov <asl@math.spbu.ru> |
Add support for r600 (AMD GPUs HD2XXX - HD6XXX) target triplet. Patch by Tom Stellard! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152400 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
005874056e536324cba9fa253d7e14a6f9dcf4fa |
09-Mar-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Fix a silly restriction on the fast-path for hash_combine_range. This caused several clients to select the slow variation. =[ This is extra annoying because we don't have any realistic way of testing this -- by design, these two functions *must* compute the same value. Found while inspecting the output of some benchmarks I'm working on. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152369 91177308-0d34-0410-b5e6-96231b3b80d8
ashing.h
|
ed5edea96d72440679311d7d31d39804967f3220 |
08-Mar-2012 |
Duncan Sands <baldrick@free.fr> |
Revert commit 152300 (ddunbar) since it still seems to be breaking buildbots. Original commit message: [ADT] Change the trivial FoldingSetNodeID::Add* methods to be inline, reapplied with a fix for the longstanding over-read of 32-bit pointer values. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152304 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
9eddc1cf310c49c0f1f90cbde3687b2610a46689 |
08-Mar-2012 |
Daniel Dunbar <daniel@zuster.org> |
[ADT] Change the trivial FoldingSetNodeID::Add* methods to be inline, reapplied with a fix for the longstanding over-read of 32-bit pointer values. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152300 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
8c0152f8a557742efddc57c3993c2c0a3a79ca4d |
08-Mar-2012 |
Daniel Dunbar <daniel@zuster.org> |
Revert r152288, "[ADT] Change the trivial FoldingSetNodeID::Add* methods to be inline.", which is breaking the bots in a way I don't understand. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152295 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
3f778c2241dcf44d66245bf4a7d13d1228b5b96e |
08-Mar-2012 |
Daniel Dunbar <daniel@zuster.org> |
[ADT] Change the trivial FoldingSetNodeID::Add* methods to be inline. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152288 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
4e5b0f994305643638eb206a9d95f182abf99772 |
07-Mar-2012 |
Chandler Carruth <chandlerc@gmail.com> |
What's better than fixing and simplifying broken hash functions? Deleting them because they aren't used. =D Yell if you need these, I'm happy to instead replace them with nice uses of the new infrastructure. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152219 91177308-0d34-0410-b5e6-96231b3b80d8
parseBitVector.h
|
d4d8b2a7f6d29b44cbc084b49042f44ef109da0c |
07-Mar-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Add support to the hashing infrastructure for automatically hashing both integral and enumeration types. This is accomplished with a bit of template type trait magic. Thanks to Richard Smith for the core idea here to detect viable types by detecting the set of types which can be default constructed in a template parameter. This is used (in conjunction with a system for detecting nullptr_t should it exist) to provide an is_integral_or_enum type trait that doesn't need a whitelist or direct compiler support. With this, the hashing is extended to the more general facility. This will be used in a subsequent commit to hashing more things, but I wanted to make sure the type trait magic went through the build bots separately in case other compilers don't like this formulation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152217 91177308-0d34-0410-b5e6-96231b3b80d8
ashing.h
|
bb9dbb7d6b4f39b74b755795e31b219a5518dd77 |
07-Mar-2012 |
Eli Friedman <eli.friedman@gmail.com> |
Missing change in r152106 for TinyPtrVector. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152201 91177308-0d34-0410-b5e6-96231b3b80d8
inyPtrVector.h
|
344224b3a34bda62bea86c06807584ec7558e157 |
07-Mar-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Remove an accidental cut/paste of a comment into the middle of a function. Dunno how I missed this when going through code... git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152196 91177308-0d34-0410-b5e6-96231b3b80d8
ashing.h
|
2945a32ffd0bf079de1b23db12bc8a0de596a167 |
06-Mar-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
SmallPtrSet: Provide a more efficient implementation of swap than the default triple-copy std::swap. This currently assumes that both sets have the same SmallSize to keep the implementation simple, a limitation that can be lifted if someone cares. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152143 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
e6f1355c38fb66b0bee35cb4d6ec93f07196d961 |
06-Mar-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Remove excess const, a const_iterator shouldn't be const itself. Fixes 1242 warnings from gcc during clang build. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152120 91177308-0d34-0410-b5e6-96231b3b80d8
inyPtrVector.h
|
bb07f21c76f011d8dde491104ff242af30bfb4ab |
06-Mar-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[TinyPtrVector] Add erase method and const-goodness. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152107 91177308-0d34-0410-b5e6-96231b3b80d8
inyPtrVector.h
|
0db235a2b0ed6ae5c3c870012061906054b6dbc4 |
06-Mar-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
PointerUnion::getAddrOf() does not need to be template since we can only use the first pointer type for it. Rename it to getAddrOfPtr1(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152106 91177308-0d34-0410-b5e6-96231b3b80d8
ointerIntPair.h
ointerUnion.h
inyPtrVector.h
|
e196633cfd2e314cee6766c039d862fdc705a010 |
06-Mar-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Remove UsuallyTinyPtrVector. It is just a worse version of TinyPtrVector. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152097 91177308-0d34-0410-b5e6-96231b3b80d8
suallyTinyPtrVector.h
|
bae75596aec8f9a296d92f1998a187fb9f1ae6b3 |
06-Mar-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Add include/llvm/ADT/UsuallyTinyPtrVector.h which is a vector that optimizes the case where there is only one element. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152090 91177308-0d34-0410-b5e6-96231b3b80d8
suallyTinyPtrVector.h
|
179bc7cb597c98045fae055fae754da5690ba187 |
05-Mar-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Switch to a C-style cast here to silence a brain-dead MSVC warning. It complains about the truncation of a 64-bit constant to a 32-bit value when size_t is 32-bits wide, but *only with static_cast*!!! The exact signal that should *silence* such a warning, and in fact does silence it with both GCC and Clang. Anyways, this was causing grief for all the MSVC builds, so pointless change made. Thanks to Nikola on IRC for confirming that this works. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152021 91177308-0d34-0410-b5e6-96231b3b80d8
ashing.h
|
ed7692a136a9bcf513b91b7b5eb33a1e2d83e7ee |
04-Mar-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Replace the hashing functions on APInt and APFloat with overloads of the new hash_value infrastructure, and replace their implementations using hash_combine. This removes a complete copy of Jenkin's lookup3 hash function (which is both significantly slower and lower quality than the one implemented in hash_combine) along with a somewhat scary xor-only hash function. Now that APInt and APFloat can be passed directly to hash_combine, simplify the rest of the LLVMContextImpl hashing to use the new infrastructure. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152004 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
PInt.h
|
528f0bbe19553dfadedca040df13a389daa7593d |
04-Mar-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Add generic support for hashing StringRef objects using the new hashing library. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152003 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
9406da6e664a24c8e408cbba63daf162ca166ed9 |
04-Mar-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Teach the hashing facilities how to hash std::string objects. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152000 91177308-0d34-0410-b5e6-96231b3b80d8
ashing.h
|
a2a9b9e7752f1eeb8c158112fc940ff67b04d7a1 |
03-Mar-2012 |
Daniel Dunbar <daniel@zuster.org> |
hash_state: Don't use initialization target during initialization. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151959 91177308-0d34-0410-b5e6-96231b3b80d8
ashing.h
|
171cda96c8fa7ea48f792b700847e750a2036f2f |
02-Mar-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Fix indentation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151932 91177308-0d34-0410-b5e6-96231b3b80d8
ashing.h
|
0c7374d87e6bf002028cd19f8ae9547927c9c645 |
02-Mar-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Hashing: microoptimize a truncate on 64 bit away. This currently blocks dead code eliminating the conditional. The optimizer should handle this eventually, but currently LVI isn't really designed for this kind of stuff. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151918 91177308-0d34-0410-b5e6-96231b3b80d8
ashing.h
|
dc62a9069648e86846f9f5a8eed7ad29de6f4163 |
02-Mar-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Make the hashing algorithm Endian neutral. This is a bit annoying, but folks who know something about PPC tell me that the byte swap is crazy fast and without this the bit mixture would actually be different. It might not be worse, but I've not measured it and so I'd rather not trust it. This way, the algorithm is identical on both endianness hosts. I'll look into any performance issues etc stemming from this. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151892 91177308-0d34-0410-b5e6-96231b3b80d8
ashing.h
|
1c1448984d43f1f02c0235d35ebe8460c9b57afd |
02-Mar-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Simplify the pair optimization. Rather than using complex type traits, just ensure that the number of bytes in the pair is the sum of the bytes in each side of the pair. As long as thats true, there are no extra bytes that might be padding. Also add a few tests that previously would have slipped through the checking. The more accurate checking mechanism catches these and ensures they are handled conservatively correctly. Thanks to Duncan for prodding me to do this right and more simply. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151891 91177308-0d34-0410-b5e6-96231b3b80d8
ashing.h
|
4d628e200f7133e353c38806b57a229ef6ad2ab4 |
02-Mar-2012 |
Chandler Carruth <chandlerc@gmail.com> |
We really want to hash pairs of directly-hashable data as directly hashable data. This matters when we have pair<T*, U*> as a key, which is quite common in DenseMap, etc. To that end, we need to detect when this is safe. The requirements on a generic std::pair<T, U> are: 1) Both T and U must satisfy the existing is_hashable_data trait. Note that this includes the requirement that T and U have no internal padding bits or other bits not contributing directly to equality. 2) The alignment constraints of std::pair<T, U> do not require padding between consecutive objects. 3) The alignment constraints of U and the size of T do not conspire to require padding between the first and second elements. Grow two somewhat magical traits to detect this by forming a pod structure and inspecting offset artifacts on it. Hopefully this won't cause any compilers to panic. Added and adjusted tests now that pairs, even nested pairs, are treated as just sequences of data. Thanks to Jeffrey Yasskin for helping me sort through this and reviewing the somewhat subtle traits. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151883 91177308-0d34-0410-b5e6-96231b3b80d8
ashing.h
|
c7384cfc7addb5d2818ac0bb4492778f28183c49 |
02-Mar-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Add support for hashing pairs by delegating to each sub-object. There is an open question of whether we can do better than this by treating pairs as boring data containers and directly hashing the two subobjects. This at least makes the API reasonable. In order to make this change, I reorganized the header a bit. I lifted the declarations of the hash_value functions up to the top of the header with their doxygen comments as these are intended for users to interact with. They shouldn't have to wade through implementation details. I then defined them at the very end so that they could be defined in terms of hash_combine or any other hashing infrastructure. Added various pair-hashing unittests. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151882 91177308-0d34-0410-b5e6-96231b3b80d8
ashing.h
|
4166989f10eaecfb357551788a3d91275e75f119 |
02-Mar-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Remove the misguided extension here that reserved two special values in the hash_code. I'm not sure what I was thinking here, the use cases for special values are in the *keys*, not in the hashes of those keys. We can always resurrect this if needed, or clients can accomplish the same goal themselves. This makes the general case somewhat faster (~5 cycles faster on my machine) and smaller with less branching. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151865 91177308-0d34-0410-b5e6-96231b3b80d8
ashing.h
|
b4d023503b40b45fd11835f1697a17e23f958af3 |
01-Mar-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Fix two warnings in this code that I missed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151839 91177308-0d34-0410-b5e6-96231b3b80d8
ashing.h
|
925c3f08713c15114c782123789bf7d8604d4460 |
01-Mar-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Move include/llvm/ADT/SaveAndRestore.h -> include/llvm/Support/SaveAndRestore.h git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151828 91177308-0d34-0410-b5e6-96231b3b80d8
aveAndRestore.h
|
0b66c6fca22e85f732cf58f459a06c06833d1882 |
01-Mar-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Rewrite LLVM's generalized support library for hashing to follow the API of the proposed standard hashing interfaces (N3333), and to use a modified and tuned version of the CityHash algorithm. Some of the highlights of this change: -- Significantly higher quality hashing algorithm with very well distributed results, and extremely few collisions. Should be close to a checksum for up to 64-bit keys. Very little clustering or clumping of hash codes, to better distribute load on probed hash tables. -- Built-in support for reserved values. -- Simplified API that composes cleanly with other C++ idioms and APIs. -- Better scaling performance as keys grow. This is the fastest algorithm I've found and measured for moderately sized keys (such as show up in some of the uniquing and folding use cases) -- Support for enabling per-execution seeds to prevent table ordering or other artifacts of hashing algorithms to impact the output of LLVM. The seeding would make each run different and highlight these problems during bootstrap. This implementation was tested extensively using the SMHasher test suite, and pased with flying colors, doing better than the original CityHash algorithm even. I've included a unittest, although it is somewhat minimal at the moment. I've also added (or refactored into the proper location) type traits necessary to implement this, and converted users of GeneralHash over. My only immediate concerns with this implementation is the performance of hashing small keys. I've already started working to improve this, and will continue to do so. Currently, the only algorithms faster produce lower quality results, but it is likely there is a better compromise than the current one. Many thanks to Jeffrey Yasskin who did most of the work on the N3333 paper, pair-programmed some of this code, and reviewed much of it. Many thanks also go to Geoff Pike Pike and Jyrki Alakuijala, the original authors of CityHash on which this is heavily based, and Austin Appleby who created MurmurHash and the SMHasher test suite. Also thanks to Nadav, Tobias, Howard, Jay, Nick, Ahmed, and Duncan for all of the review comments! If there are further comments or concerns, please let me know and I'll jump on 'em. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151822 91177308-0d34-0410-b5e6-96231b3b80d8
ashing.h
|
945c2b3965a5d327055f624dd5dab659551da108 |
27-Feb-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Move "clang/Analysis/Support/SaveAndRestore.h" to "llvm/ADT/SaveAndRestore.h" to make it more widely available. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151564 91177308-0d34-0410-b5e6-96231b3b80d8
aveAndRestore.h
|
b4b2688db0f377605b236d81a61560657660548c |
27-Feb-2012 |
Jay Foad <jay.foad@gmail.com> |
Help the compiler to eliminate some dead code when hashing an array of T where sizeof (T) is a multiple of 4. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151523 91177308-0d34-0410-b5e6-96231b3b80d8
ashing.h
|
6592eacf9006d046e8bc4999600e2973a3b56eac |
23-Feb-2012 |
Jay Foad <jay.foad@gmail.com> |
The implementation of GeneralHash::addBits broke C++ aliasing rules; fix it with memcpy. This also fixes a problem on big-endian hosts, where addUnaligned would return different results depending on the alignment of the data. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151247 91177308-0d34-0410-b5e6-96231b3b80d8
ashing.h
|
6212d312e7c6b978b767f648fd2d301131554242 |
23-Feb-2012 |
Duncan Sands <baldrick@free.fr> |
GCC warns about a comparison between signed and unsigned values. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151243 91177308-0d34-0410-b5e6-96231b3b80d8
parseSet.h
|
81a682a4c004b0f44452ef824637a1b6face178f |
23-Feb-2012 |
Andrew Trick <atrick@apple.com> |
PostRASched: Convert physreg def/use tracking to Jakob's SparseSet. Added array subscript to SparseSet for convenience. Slight reorg to make it easier to manage the def/use sets. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151228 91177308-0d34-0410-b5e6-96231b3b80d8
parseSet.h
|
a3bf915888ba81c4f695ebc38e5d6ce0881ef354 |
22-Feb-2012 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Fix typos. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151163 91177308-0d34-0410-b5e6-96231b3b80d8
parseSet.h
|
fdf0dc9e0bb5c0b848286e6c96bfc9a390d26775 |
22-Feb-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Support was removed from LLVM's MIPS backend for the PSP variant of that chip in r139383, and the PSP components of the triple are really annoying to parse. Let's leave this chapter behind. There is no reason to expect LLVM to see a PSP-related triple these days, and so no reasonable motivation to support them. It might be reasonable to prune a few of the older MIPS triple forms in general, but as those at least cause no burden on parsing (they aren't both a chip and an OS!), I'm happy to leave them in for now. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151156 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
f3b06a93825402b2121ec8231f56cd75539fe3aa |
22-Feb-2012 |
NAKAMURA Takumi <geek4civic@gmail.com> |
ADT/SparseSet.h: Fix up header dependencies. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151114 91177308-0d34-0410-b5e6-96231b3b80d8
parseSet.h
|
62588622d40f6c6f5508496db69e06593b615049 |
22-Feb-2012 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Add a Briggs and Torczon sparse set implementation. For objects that can be identified by small unsigned keys, SparseSet provides constant time clear() and fast deterministic iteration. Insert, erase, and find operations are typically faster than hash tables. SparseSet is useful for keeping information about physical registers, virtual registers, or numbered basic blocks. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151110 91177308-0d34-0410-b5e6-96231b3b80d8
parseSet.h
|
4fbf6581514a494c15b82ce2f9b6f79b24216c6f |
21-Feb-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Pull the parsing helper functions out of the Triple interface entirely. They're private static methods but we can just make them static functions in the implementation. It makes the implementations a touch more wordy, but takes another chunk out of the header file. Also, take the opportunity to switch the names to the new coding conventions. No functionality changed here. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151047 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
0523f41841d0860b2e175a4b20d1ecefd7295c4a |
21-Feb-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Clean up comments that I missed when changing the triple representation. Somehow, I even missed the ones I wrote just the other day... Thanks to Matt for the code review. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151045 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
124e51c0d2b521b0fb3aaaf2443403cd451b7857 |
21-Feb-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Switch the llvm::Triple class to immediately parse the triple string on construction. Simplify its interface, implementation, and users accordingly as there is no longer an 'uninitialized' state to check for. Also, fixes a bug lurking in the interface as there was one method that didn't correctly check for initialization. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151024 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
cceb8f44a0ca3a9c57ab3a7f4947b2abda531cef |
20-Feb-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Move constructors out-of-line and flesh out their documentation. No functionality changed. This is in preparation for some refactoring of how this class behaves. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@150941 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
1a4b19ef9b870d8c914bcd5ceb520a64a9a2cc52 |
18-Feb-2012 |
Talin <viridia@gmail.com> |
Hashing.h - utilities for hashing various data types. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@150890 91177308-0d34-0410-b5e6-96231b3b80d8
ashing.h
|
d8d110e08ab3fee8d0a2b758c893b7966fd2d3d8 |
16-Feb-2012 |
Pete Cooper <peter_cooper@apple.com> |
Template specialize SmallVector::push_back based on POD-ness of the type. Reduces clang binary by 188KB git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@150662 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
01d53ec176a6be4585df1f43af11151988ca4b35 |
15-Feb-2012 |
Kaelyn Uhrain <rikka@google.com> |
Add function for computing the edit distance of two arrays. Accomplished by moving the body of StringRef::edit_distance into a separate function that accepts two ArrayRefs, and making StringRef::edit_distance a wrapper around the new function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@150621 91177308-0d34-0410-b5e6-96231b3b80d8
dit_distance.h
|
b83a67e1e3fe210bd99a82eccd3dc5b1b44f1503 |
13-Feb-2012 |
Ahmed Charles <ace2001ac@gmail.com> |
Fix various issues (or do cleanups) found by enabling certain MSVC warnings. - Use unsigned literals when the desired result is unsigned. This mostly allows unsigned/signed mismatch warnings to be less noisy even if they aren't on by default. - Remove misplaced llvm_unreachable. - Add static to a declaration of a function on MSVC x86 only. - Change some instances of calling a static function through a variable to simply calling that function while removing the unused variable. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@150364 91177308-0d34-0410-b5e6-96231b3b80d8
enseMapInfo.h
|
7d5a289f2d7d75c29df4c17856ab54dd28dec508 |
06-Feb-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Introduce helpers to compute the 32-bit varaints and 64-bit variants of some architectures. These are useful for interacting with multiarch or bi-arch GCC (or GCC-based) toolchains. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149895 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
c05277ea8744adc1ac75541a078d8ebbb04233a6 |
05-Feb-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
SmallVector's construct_range is the same thing as std::uninitialized_fill, no need to reinvent it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149851 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
b25e44ec1506cd42ab676ac7ddf8dc8f228bcada |
05-Feb-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Simplify code. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149850 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
50bee42b54cd9aec5f49566307df2b0cf23afcf6 |
05-Feb-2012 |
Craig Topper <craig.topper@gmail.com> |
Convert assert(0) to llvm_unreachable git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149849 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
mmutableSet.h
mallBitVector.h
parseBitVector.h
rie.h
wine.h
|
69f44692bf5fea1d908fc06487e173837d06ea58 |
05-Feb-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Begin fleshing out more convenience predicates in llvm::Triple and convert at least one client over to use them. Subsequent patches both to LLVM and Clang will try to convert more people over to a common set of predicates. This round of predicates is focused on OS-categorization predicates. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149815 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
bda59fdd71033a8ddfa30ec4b514753017f3da5c |
31-Jan-2012 |
Bob Wilson <bob.wilson@apple.com> |
Add Triple::getMacOSXVersion to replace crufty code in the clang driver. This new function provides a way to get the Mac OS X version number from either generic "darwin" triples of macosx triples. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149438 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
41aa108f743ed3b97cdf060ae25cfef38af5bc9e |
31-Jan-2012 |
Manuel Klimek <klimek@google.com> |
RefCountedBaseVPTR needs the IntrusiveRefCntPtrInfo as friend, now that this handles the release / retain calls. Adds a regression test for that bug (which is a compile-time regression) and for the last two changes to the IntrusiveRefCntPtr, especially tests for the memory leak due to copy construction of the ref-counted object and ensuring that the traits are used for release / retain calls. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149411 91177308-0d34-0410-b5e6-96231b3b80d8
ntrusiveRefCntPtr.h
|
6f72ac4799a1a20c07cd96cc994dd6394ebff9a2 |
31-Jan-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Add various coarse bit-width architecture predicates to llvm::Triple. These are very useful for frontends and other utilities reasoning about or selecting between triples. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149353 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
97cf71a5179bc4167a750deb09836ae4a75389cb |
31-Jan-2012 |
Ted Kremenek <kremenek@apple.com> |
Relax constructor for IntrusiveRefCntPtr to not be explicit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149309 91177308-0d34-0410-b5e6-96231b3b80d8
ntrusiveRefCntPtr.h
|
0004d86704f5c116e43bb6f867d3eba7423640e5 |
31-Jan-2012 |
Ted Kremenek <kremenek@apple.com> |
Use traits for IntrusiveRefCntPtr to determine how to increment/decrement a reference count. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149308 91177308-0d34-0410-b5e6-96231b3b80d8
ntrusiveRefCntPtr.h
|
babd5980d8a8b4aad9814212a269f6197ebf1f2e |
30-Jan-2012 |
Talin <viridia@gmail.com> |
DenseMap::find_as() and unit tests. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149229 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
f95b2dafc9a6ae88c6085aceeaf7a34af09df93b |
30-Jan-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Cleanup the organization of some methods in llvm::Triple and provide a better doxyment group for convenience predicates. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149211 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
19de016955f744cf2466fadcd28e9bf8847dd260 |
29-Jan-2012 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Add a BitVector::reset(BitVector&) method. The alternative LHS &= ~RHS is way too slow because it creates a temporary that calls malloc/free. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149187 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
04594aeffa3360882eb09a888a0970321b987b16 |
28-Jan-2012 |
Rafael Espindola <rafael.espindola@gmail.com> |
Add r149110 back with a fix for when the vector and the int have the same width. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149151 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
2527188a42b3250671b69dc979102565be1f910f |
25-Jan-2012 |
Talin <viridia@gmail.com> |
Additional methods for SmallString. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148881 91177308-0d34-0410-b5e6-96231b3b80d8
mallString.h
|
a97a5eabe2a412d7cc078f94b7df7ee8ac840853 |
24-Jan-2012 |
Chris Lattner <sabre@nondot.org> |
add ::drop_back() and ::drop_front() methods, which are like pop_front/pop_back on a vector, but a) aren't destructive to "this", and b) can take a # elements to drop. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148791 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
e55bbfe145cf8dcb9594865f0242321d2be681d6 |
23-Jan-2012 |
Chris Lattner <sabre@nondot.org> |
Various public StringMap methods take or return "MapEntryTy", make it public. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148732 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
0adabe5a08d510d9d208198a4fd9c5fc752af457 |
23-Jan-2012 |
Chris Lattner <sabre@nondot.org> |
revert r148688 too, this isn't safe for DenseMap use. When DenseMap resizes, it will need to copy around arbitrary pointers git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148699 91177308-0d34-0410-b5e6-96231b3b80d8
wningPtr.h
|
cef39256986150d6e7d6d87ea36077452f045c50 |
23-Jan-2012 |
Chris Lattner <sabre@nondot.org> |
allow OwningPtr to be copy constructed if null, which is required to make them be a valuetype in a DenseMap. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148688 91177308-0d34-0410-b5e6-96231b3b80d8
wningPtr.h
|
3feccbaaee2fe639fd089cdb78ad623f662a5796 |
20-Jan-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Protect SmallVectorImpl's constructor and a few other methods that aren't meant to be public. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148550 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
46ada15d425c0f075853adff14927bbfc7fc39dc |
19-Jan-2012 |
Chris Lattner <sabre@nondot.org> |
Introduce a new MutableArrayRef class, which refers to a series of mutable T's that are consequtively in memory. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148463 91177308-0d34-0410-b5e6-96231b3b80d8
rrayRef.h
|
8887a0f34152b63a84e759b76694d6928d01b4ee |
19-Jan-2012 |
Rafael Espindola <rafael.espindola@gmail.com> |
Add support for the gnueabihf environment. Patch by Sylvestre Ledru. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148434 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
fced2945995b4fd8f28f7dec9fcb5a6ab2e2798d |
17-Jan-2012 |
Jakub Staszak <kubastaszak@gmail.com> |
Trailing spaces. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148332 91177308-0d34-0410-b5e6-96231b3b80d8
rrayRef.h
|
1752e45de9914cb52d748c1052ecd2f1414bced4 |
17-Jan-2012 |
Chris Lattner <sabre@nondot.org> |
add some missing const qualifiers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148274 91177308-0d34-0410-b5e6-96231b3b80d8
rrayRef.h
|
ff5bad078782b6472d6cd0974bf08fe3473050e6 |
17-Jan-2012 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Add portable bit mask operations to BitVector. BitVector uses the native word size for its internal representation. That doesn't work well for literal bit masks in source code. This patch adds BitVector operations to efficiently apply literal bit masks specified as arrays of uint32_t. Since each array entry always holds exactly 32 bits, these portable bit masks can be source code literals, probably produced by TableGen. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148272 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
fd553c2cb54ee01d56f5d80d70a5d52220286fcc |
10-Jan-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Teach the triple library about the androideabi environment. Patch by Evgeniy Stepanov. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147871 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
f321e1075eabae96f62b1f2570d9dee5d10b8200 |
07-Jan-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Remove VectorExtras. This unused helper was written for a type of API that is discouraged now. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147738 91177308-0d34-0410-b5e6-96231b3b80d8
ectorExtras.h
|
f0be7ca7e42915779175a9332c6baba18a2a840c |
07-Jan-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
Port the trick to skip the check for empty buckets from StringMap to DenseMap. This should fix the odd behavior that find() is slower than lookup(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147731 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
0fcccd4d45b593bc11e56ff5be36a04836749376 |
05-Jan-2012 |
Chris Lattner <sabre@nondot.org> |
allow clients of SmallSet to specify their own comparison function for the set. Patch by Stepan Dyatkovskiy! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147607 91177308-0d34-0410-b5e6-96231b3b80d8
mallSet.h
|
85c07ce0481daa8f462943f621efdb7f21f6d3ef |
04-Jan-2012 |
Benjamin Kramer <benny.kra@googlemail.com> |
StringMap.find never points to an empty bucket or tombstone, skip the check. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147546 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
c894b02ae037b5fdb38e42535539d5a0e49d6c41 |
27-Dec-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Switch StringMap from an array of structures to a structure of arrays. - -25% memory usage of the main table on x86_64 (was wasted in struct padding). - no significant performance change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147294 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
ab26da9e679afb26b6af589c2d414d50bf4a6441 |
22-Dec-2011 |
Lang Hames <lhames@gmail.com> |
Fixed typo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147113 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
2d24e2a396a1d211baaeedf32148a3b657240170 |
20-Dec-2011 |
David Blaikie <dblaikie@gmail.com> |
Unweaken vtables as per http://llvm.org/docs/CodingStandards.html#ll_virtual_anch git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146960 91177308-0d34-0410-b5e6-96231b3b80d8
ntrusiveRefCntPtr.h
|
f5c9bd07bca0a14afc37b7c28409736e001de96d |
20-Dec-2011 |
Chris Lattner <sabre@nondot.org> |
add a method to improve compatibility with SmallVector. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146928 91177308-0d34-0410-b5e6-96231b3b80d8
etVector.h
|
1243cdda6330139c55e8ecc033fcb559581e6870 |
17-Dec-2011 |
Chandler Carruth <chandlerc@gmail.com> |
As Doug pointed out (and I really should know), it is perfectly easy to make VariadicFunction actually be trivial. Do so, and also make it look more like your standard trivial functor by making it a struct with no access specifiers. The unit test is updated to initialize its functors properly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146827 91177308-0d34-0410-b5e6-96231b3b80d8
ariadicFunction.h
|
a602aec8696708d46d57a74546fa5996c51abd5b |
16-Dec-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Make GCC happy by using makeAraryRef instead of the implicit conversion. I have no idea why GCC can't cope with the implicit conversion and Clang can, or whose bug it is. Grr. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146732 91177308-0d34-0410-b5e6-96231b3b80d8
ariadicFunction.h
|
d916ce3c8e1c88352703db12b47862b1794c7dad |
16-Dec-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Add a generic collection of class templates to ADT for building variadic-like functions in C++98. See the comments in the header file for a more detailed description of how these work. We plan to use these extensively in the AST matching library. This code and idea were originally authored by Zhanyong Wan. I've condensed it using macros to reduce repeatition and adjusted it to fit better with LLVM's ADT. Thanks to both David Blaikie and Doug Gregor for the review! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146729 91177308-0d34-0410-b5e6-96231b3b80d8
ariadicFunction.h
|
b4b54153ad760c69a00a08531abef4ed434a5092 |
12-Dec-2011 |
Tony Linthicum <tlinth@codeaurora.org> |
Hexagon backend support git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146412 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
a81ac8f2b5d4f61f7bc353f95cc1d0a05266f51c |
08-Dec-2011 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Support/FileSystem: Implement recursive_directory_iterator and make directory_iterator preserve InputIterator semantics on copy. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146200 91177308-0d34-0410-b5e6-96231b3b80d8
ntrusiveRefCntPtr.h
|
5729c5848c74a2413cc1d32a5f3c746aff5d9ccc |
07-Dec-2011 |
David Blaikie <dblaikie@gmail.com> |
Adding missing anchor to DATDeltaAlgorithm. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146025 91177308-0d34-0410-b5e6-96231b3b80d8
AGDeltaAlgorithm.h
|
266451dd95b12323fad9418df9b217918ec7e9e0 |
06-Dec-2011 |
Chris Lattner <sabre@nondot.org> |
allow TinyPtrVector to implicitly convert to ArrayRef. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145898 91177308-0d34-0410-b5e6-96231b3b80d8
inyPtrVector.h
|
aa21e417f24fe9be4fd8db366766fb262c96703e |
06-Dec-2011 |
Nick Lewycky <nicholas@mxc.ca> |
Silence tsan false-positives (tsan can't track things which are only safe due to memory fences) in statistics registration, which works the same way that ManagedStatic registration does. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145869 91177308-0d34-0410-b5e6-96231b3b80d8
tatistic.h
|
e15402f92b6949d2474cc82648239fe22e5a2209 |
05-Dec-2011 |
Anna Zaks <ganna@apple.com> |
Change the Dominators recalculate() function to only rely on GraphTraits This is a patch by Guoping Long! As part of utilizing LLVM Dominator computation in Clang, made two changes to LLVM dominators tree implementation: - (1) Change the recalculate() template function to only rely on GraphTraits. - (2) Add a size() method to GraphTraits template class to query the number of nodes in the graph. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145837 91177308-0d34-0410-b5e6-96231b3b80d8
raphTraits.h
|
39a2eb7dea034820eb4b93b2361ae307b0cee5f2 |
28-Nov-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Handle more cases in APInt::getLowBitsSet's fast path. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145249 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
f24944953986ad1e0a78279e6c3288e15a7e2619 |
18-Nov-2011 |
Ted Kremenek <kremenek@apple.com> |
Fix bug in RefCountedBase/RefCountedBaseVPTR where the reference count was accidentally copied as part of the copy constructor. This could result in objects getting leaked because there reference count was too high. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144931 91177308-0d34-0410-b5e6-96231b3b80d8
ntrusiveRefCntPtr.h
|
590853667345d6fb191764b9d0bd2ff13589e3a3 |
06-Nov-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Replace (Lower|Upper)caseString in favor of StringRef's newest methods. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143891 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
589fbb1770df5f7bee1c5e24e9e8f4ca5091d528 |
06-Nov-2011 |
Daniel Dunbar <daniel@zuster.org> |
ADT/StringRef: Add ::lower() and ::upper() methods. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143880 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
33ba8b0e96acde0d8ab1ffc565a5ef4c8b6b6ac2 |
28-Oct-2011 |
Dan Gohman <gohman@apple.com> |
Remove the Alpha backend. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143164 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
3e6157de576e349d33a9b08d103405b3a8fb9159 |
25-Oct-2011 |
Dan Gohman <gohman@apple.com> |
Remove the Blackfin backend. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142880 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
29074ccf6cb00a3cbe32a3b7809d970ecaf8c9bf |
25-Oct-2011 |
Dan Gohman <gohman@apple.com> |
Remove the SystemZ backend. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142878 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
f6eede5258af1b144e0777c25d89c57514a71371 |
20-Oct-2011 |
Duncan Sands <baldrick@free.fr> |
Avoid warnings about the parameter G being unused. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142573 91177308-0d34-0410-b5e6-96231b3b80d8
CCIterator.h
|
a046d2ff9a6ef1a5ecf1068d9fce714db7557c2a |
13-Oct-2011 |
Eli Friedman <eli.friedman@gmail.com> |
Use unsigned multiply to hash integers, so we don't end up with undefined behavior for large signed integers. Based on patch by Ahmed Charles. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141827 91177308-0d34-0410-b5e6-96231b3b80d8
enseMapInfo.h
|
8cc4769108272d309038a657e42b7fcbc5bd94f3 |
10-Oct-2011 |
Andrew Trick <atrick@apple.com> |
Allow stat += 0 without activating the stat. For me, this is a nice convenience. We generally want grep to match stats output only when the event has occurred. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141574 91177308-0d34-0410-b5e6-96231b3b80d8
tatistic.h
|
b35e4e84727ff5ba3621b39caa622baef431ca45 |
10-Oct-2011 |
Andrew Trick <atrick@apple.com> |
whitespace git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141572 91177308-0d34-0410-b5e6-96231b3b80d8
tatistic.h
|
4f101db8852ba60d8d9545f7e0b5ad8a7b18c8b1 |
02-Oct-2011 |
Ted Kremenek <kremenek@apple.com> |
Make canonicalization of ImmutableSetRef::asImmutableSet() semi-explicit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140959 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
b3e3b006bd5c82516d6fdb487d5c1263a5249474 |
23-Sep-2011 |
Anna Zaks <ganna@apple.com> |
Add getTreeFactory() to ImmutableSet to allow construction of ImmutableSetRef from an ImmutableSet object. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140402 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
|
70303688bc489a316cb0892499ac4024088fa58a |
20-Sep-2011 |
Akira Hatanaka <ahatanak@gmail.com> |
Add mips64 & mips64el to Triple. Patch by Liu with modifications. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140157 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
166e0539c987a5bea2432354b2437eba29bb1ce0 |
17-Sep-2011 |
Ted Kremenek <kremenek@apple.com> |
Add ImmutableMapRef and ImmutableSetRef, which consolidate Immutable[Map,Set] and its Factory. This may eventually replace Immtuable[Map,Set]. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139967 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
mmutableSet.h
|
dcd999624159842886d4be21efcc3ba0e61bab99 |
14-Sep-2011 |
Douglas Gregor <dgregor@apple.com> |
Add APInt support for converting to/from hexatridecimal strings git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139695 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
05d71380181a874cbe70bd2c30fa5eb71eb0d661 |
29-Aug-2011 |
Tobias Grosser <grosser@fim.uni-passau.de> |
Add AMDIL as valid target triple to LLVM. Submitted by: Villmow, Micah <Micah.Villmow@amd.com> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138734 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
38fb2db6c9f64a59875d034e2a2cab27603c1884 |
23-Aug-2011 |
Ivan Krasin <krasin@chromium.org> |
This patch adds support of le32 pseudo-cpu that stands for generic 32-bit little-endian CPU. Used by PNaCl and Emscripten. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138335 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
cafe614035c8db70eb5da96dba00696db381674f |
20-Aug-2011 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Add IntervalMap::const_iterator::atBegin(). It returns true when operator--() can be called. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138107 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
fb23462889ff2dcd016a4b4169ebce94a878218e |
19-Aug-2011 |
Ivan Krasin <krasin@chromium.org> |
Add NativeClient operating system support. This patch adds support of NativeClient (*-*-nacl) OS support to LLVM. It's already supported in autoconf/config.sub. The motivation for this change is to start upstreaming PNaCl work. The whole set of patches include llvm backends (i686, x86_64, ARM), llvm-gcc (probably, would not be upstreamed because it's deprecated) and clang (the work has been just started, the amount of changes is going to be low and the most of the work is expected to be done close to the mainline). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138005 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
823eb1ca11d684530048f1fe85a727aa1ef622d1 |
12-Aug-2011 |
Chris Lattner <sabre@nondot.org> |
Fix an obscure bug in PointerUnion that would bite PointerUnion3/4. Basically, when checking isNull(), we'd pick off the sentinel bit for the outer PointerUnion, but would not recursively convert the inner pointerunion to bool, so if *its* sentinel bit is set, isNull() would incorrectly return false. No testcase, because someone hit this when they were trying to refactor code to use PointerUnion3, but they since found a better solution. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137428 91177308-0d34-0410-b5e6-96231b3b80d8
ointerUnion.h
|
5207936a24ab9e0bfaa10e798625df65143e3716 |
04-Aug-2011 |
Andrew Trick <atrick@apple.com> |
An interface for iterating over a loop's blocks in DFS order. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136838 91177308-0d34-0410-b5e6-96231b3b80d8
ostOrderIterator.h
|
cd0bc905d2c100edbf2f65ac7f1d58353fb1728c |
29-Jul-2011 |
David Greene <greened@obbligato.org> |
Add a std::string Wrapper for TableGen Create a std::string wrapper for use as a DenseMap key. DenseMap is not safe in generate with strings, so this wrapper indicates that only strings guaranteed not to have certain values should be used in the DenseMap. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136481 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
4ed960061a1aa85bef288f06cb33c5c5b8706860 |
28-Jul-2011 |
Duncan Sands <baldrick@free.fr> |
This file was moved from Support to ADT. Correct a comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136344 91177308-0d34-0410-b5e6-96231b3b80d8
CCIterator.h
|
297738fa95d4bb7849c197926f4d4abdcd812e40 |
28-Jul-2011 |
Nick Lewycky <nicholas@mxc.ca> |
In DenseMapInfo<pair<T, U>> tombstone key, use the tombstone for T and U instead of the empty key for U. This shouldn't really matter because the tombstone key for the pair was still distinct from every other key, but it is odd. Patch by Michael Ilseman! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136336 91177308-0d34-0410-b5e6-96231b3b80d8
enseMapInfo.h
|
18dceba0bb5e38250535401ecc9d9737943d0657 |
27-Jul-2011 |
Ted Kremenek <kremenek@apple.com> |
Add a generic 'capacity_in_bytes' function to allow inspection of memory usage of various data structures. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136233 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
mallVector.h
|
b08904093ab97b0c0ef84f5834b4834c188cb44d |
26-Jul-2011 |
Duncan Sands <baldrick@free.fr> |
Strip trailing whitespace. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136099 91177308-0d34-0410-b5e6-96231b3b80d8
CCIterator.h
|
652b48bf231521642c53221a7d10a0acf2030f48 |
26-Jul-2011 |
Duncan Sands <baldrick@free.fr> |
Teach the Triple class about kfreebsd (FreeBSD kernel with a GNU userspace). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136085 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
b7fbcc9696e38ca26c7eb67077c04b51c846c9cb |
24-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
switch Triple to take twines instead of stringrefs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135889 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
3f25ee080ca7c92ff735df29c78e7cfbd62c8cb6 |
24-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
Add Twine support for characters, and switch twine to use a union internally to eliminate some casting. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135888 91177308-0d34-0410-b5e6-96231b3b80d8
wine.h
|
f6275309994dea2ec852c1f539875ae643646ec5 |
24-Jul-2011 |
Frits van Bommel <fvbommel@gmail.com> |
Omit explicit length here, now that I've had a chance to test this with gcc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135867 91177308-0d34-0410-b5e6-96231b3b80d8
rrayRef.h
|
5333658df7acba70664417c3916c003d0c5fa59f |
22-Jul-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Initialize DenseSets lazily. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135717 91177308-0d34-0410-b5e6-96231b3b80d8
enseSet.h
|
c30a38f34bdfecb99ce49e3ffa479039c9bf0209 |
21-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
move tier out of an anonymous namespace, it doesn't make sense to for it to be an an anon namespace and be in a header. Eliminate some extraenous uses of tie. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135669 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
3ba292dbc2acee2d1052fb7ffe332e2164147b47 |
18-Jul-2011 |
Jeffrey Yasskin <jyasskin@google.com> |
Add APInt(numBits, ArrayRef<uint64_t> bigVal) constructor to prevent future ambiguity errors like the one corrected by r135261. Migrate all LLVM callers of the old constructor to the new one. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135431 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
22e522e08640be459f237796009cf7666d6d75e7 |
18-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
various cleanups noticed by Frits git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135396 91177308-0d34-0410-b5e6-96231b3b80d8
inyPtrVector.h
|
1419f9206e6d321e5ccd8ae99a63d5cb98493bb5 |
18-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
remove pasto git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135394 91177308-0d34-0410-b5e6-96231b3b80d8
inyPtrVector.h
|
b80e3477d144a42b764e32f61ede4f842ca47151 |
18-Jul-2011 |
Frits van Bommel <fvbommel@gmail.com> |
Hopefully fix some GCC-based buildbots. GCC apparently decays the array to a pointer here before overload resolution, so construct with an explicit length instead. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135391 91177308-0d34-0410-b5e6-96231b3b80d8
rrayRef.h
|
c48e1ef0e22b4113dd4dd48c5b170a19fe4d0188 |
18-Jul-2011 |
Frits van Bommel <fvbommel@gmail.com> |
Introduce the 'makeArrayRef(...)' family of functions, which fills a similar role for ArrayRef<> as std::make_pair() fills for std::pair<>: they return the right instantiation of ArrayRef<T> based on the types of the parameters. They mostly mirror the ArrayRef constructors, with two exceptions: * There's no function mirroring the default constructor because it wouldn't have any parameters to deduce the right ArrayRef<T> from. * There's an explicit SmallVector<T> overload in addition to the SmallVectorImpl<T> overload. Without it, the single-element overload would try to create an ArrayRef<Smallvector<T> > because it's a better match according to the overloading rules. (And both overloads are used in the current tree, so neither is redundant) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135389 91177308-0d34-0410-b5e6-96231b3b80d8
rrayRef.h
|
79976a40728c8baa8cd16de90173fe2c48937e22 |
18-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
add iteration support to TinyPtrVector for clang's use. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135367 91177308-0d34-0410-b5e6-96231b3b80d8
inyPtrVector.h
|
840635741f132a9a10f052cbf3b21e14bc74835a |
18-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
fix a warning in TinyPtrVector, adopt it in SSAUpdater, saving some mallocs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135366 91177308-0d34-0410-b5e6-96231b3b80d8
inyPtrVector.h
|
9d69d4aadd4a58aba5634d5c3d2c2a6d8d284134 |
18-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
introduce a new TinyPtrVector class. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135365 91177308-0d34-0410-b5e6-96231b3b80d8
inyPtrVector.h
|
3d42bfbbdd26ac56ccd706d4ebee984490c72ecc |
15-Jul-2011 |
Jeffrey Yasskin <jyasskin@google.com> |
Add an APFloat::convertToInt(APSInt) function that automatically manages the memory for the result. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135259 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
d7c027322ebccd9666c3f46d9a5236ba76fda434 |
14-Jul-2011 |
Chris Lattner <sabre@nondot.org> |
The key of a StringMap can contain nul's in it, so having first() return const char* doesn't make sense. Have it return StringRef instead. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135167 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
5d4f9909c49d28db9572acc4513c1a695b0c53da |
13-Jul-2011 |
Jay Foad <jay.foad@gmail.com> |
Add some bits that I found useful when converting InsertValueInst and ExtractValueInst APIs to use ArrayRef: a new constructor taking a (begin, end) range, and operators == and != for element-wise comparison. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135039 91177308-0d34-0410-b5e6-96231b3b80d8
rrayRef.h
|
9cbd7afb76f20ce874464c238764c54f86b3ce3b |
07-Jul-2011 |
Owen Anderson <resistor@mac.com> |
Fix a subtle issue in SmallVector. The following code did not work as expected: vec.insert(vec.begin(), vec[3]); The issue was that vec[3] returns a reference into the vector, which is invalidated when insert() memmove's the elements down to make space. The method needs to specifically detect and handle this case to correctly match std::vector's semantics. Thanks to Howard Hinnant for clarifying the correct behavior, and explaining how std::vector solves this problem. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134554 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
298bc9a1a5161a5f6e5a0f35e8372d008ef6e812 |
06-Jul-2011 |
Nick Lewycky <nicholas@mxc.ca> |
Add ImmutableList::contains(). Patch by Rui Paulo! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134545 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableList.h
|
4d59ff95d8f28089dce9997a38a334c18f50a641 |
02-Jul-2011 |
Eric Christopher <echristo@apple.com> |
Remove the confusing getDarwinNumber() api and friends. Part of rdar://9714064 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134291 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
6ced1d12dd7ee18d65a6df6e66c9662753a5876d |
02-Jul-2011 |
Douglas Gregor <dgregor@apple.com> |
Add initial *-*-rtems* target, from Joel Sherrill git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134282 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
2a4a6fecf0b8c92223f8fdf19545b564b7d3fcde |
22-Jun-2011 |
Jay Foad <jay.foad@gmail.com> |
Extend ConstantUniqueMap with a new template parameter ValRefType, representing a constant reference to ValType. Normally this is just "const ValType &", but when ValType is a std::vector we want to use ArrayRef as the reference type. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133611 91177308-0d34-0410-b5e6-96231b3b80d8
rrayRef.h
|
e275c1c9b5a4c930360f0bdb8cb41a8c66febb2b |
21-Jun-2011 |
Jay Foad <jay.foad@gmail.com> |
Remove deprecated forms of StringMap::GetOrCreateValue(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133517 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
39ff10a293012fe6f2db682c5518e1be2c50ca67 |
21-Jun-2011 |
Chris Lattner <sabre@nondot.org> |
use the MapEntryTy typedef instead of writing it out long form, add some fixme's about methods that should be removed. Merged from type-system-rewrite. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133504 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
9fa7cb1ba65f70f6126b01ce67021962fd0e0721 |
15-Jun-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Constify PackedVector::reference::operator T(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133074 91177308-0d34-0410-b5e6-96231b3b80d8
ackedVector.h
|
cf886188fb04d9521db39fe5213df1295673f51e |
15-Jun-2011 |
Ted Kremenek <kremenek@apple.com> |
add option for literal formatting to APInt::toString() toString() now takes an optional bool argument that, depending on the radix, adds the appropriate prefix to the integer's string representation that makes it into a meaningful C literal, e.g.: hexademical: '-f' becomes '-0xf' octal: '77' becomes '077' binary: '110' becomes '0b110' Patch by nobled@dreamwidth.org! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133032 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
74ee8ace0c6fd6715d16fd4f1a0e36a8a158868e |
31-May-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Introduce PackedVector, useful for storing a vector of values using a specific number of bits for each value. Both signed and unsigned types can be used, e.g PackedVector<signed, 2> vec; will create a vector accepting values -2, -1, 0, 1. Any other value will hit an assertion. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132325 91177308-0d34-0410-b5e6-96231b3b80d8
ackedVector.h
|
fe754ab90adf114430f77f402dc6b8b5245c00f2 |
29-May-2011 |
John McCall <rjmccall@apple.com> |
...this is not a good commit day for me. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132294 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
832a9d1a76d30ffd295453e93e8eb52948e5813e |
29-May-2011 |
John McCall <rjmccall@apple.com> |
On Darwin ARM, set the UNWIND_RESUME libcall to _Unwind_SjLj_Resume. This is important for the correct lowering of unwind instructions (which doesn't matter at all) and llvm.eh.resume calls (which does). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132291 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
6d5502eb4966fb2f81fe951d0acf11cfa5cd4acf |
20-May-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Add asserts in StringRef to make sure we avoid undefined behavior: -strlen should not be called with NULL. Also guarantee that StringRef's Length is 0 if Data is NULL. -memcmp should not be called with NULL (even if size is 0) Patch by Matthieu Monrocq! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131747 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
aea7689e622ae46e854d01d61bf8db80890e6074 |
16-May-2011 |
Zhongxing Xu <xuzhongxing@gmail.com> |
Remove redundant template partial specilization. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131402 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
6765f78efbd9d43f429344af7d997ec2df495b02 |
14-May-2011 |
John McCall <rjmccall@apple.com> |
Add an operator+= for appending StringRefs onto std::strings. Previously this pattern would be compiled using an implicit conversion to std::string. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131325 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
6e97eced2f036ef0016c124d45e2fb4c3b95dd8d |
03-May-2011 |
Bob Wilson <bob.wilson@apple.com> |
Fix a comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130761 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
6cf081cbe5963d6e1b12b0ac1268538a38acd0f1 |
28-Apr-2011 |
Lenny Maiorani <lenny@colorado.edu> |
Remove bounded StringRef::compare() since nothing but Clang SA was using it and it is just as easy to use StringRef::substr() preceding StringRef::compare() to achieve the same thing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130430 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
776157ac926102de7a8e40e936dd9efcd7f9dd1b |
28-Apr-2011 |
Chandler Carruth <chandlerc@gmail.com> |
Fix more -Wnon-pod-memset warnings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130392 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
e6b693db8cc07be91229bef0d8577ce8b5caf34b |
28-Apr-2011 |
Ted Kremenek <kremenek@apple.com> |
Add utility method to DenseMap to return the amount of memory used for its buckets. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130382 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
450ed1a05bd5e12c141629b0d0ba275958634980 |
28-Apr-2011 |
Chris Lattner <sabre@nondot.org> |
silence some -Wnon-pod-memset warnings, since std::pair is not POD. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130364 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
6311a55b9dae82977c892ef9bda7c39f781ea564 |
25-Apr-2011 |
Chris Lattner <sabre@nondot.org> |
Improve adherence to general style, use "foo_t &x" instead of "foo_t& x" git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130153 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
e27c3ea2bcdabf1b8be87675c66a38c3ad0ac1f9 |
25-Apr-2011 |
Chris Lattner <sabre@nondot.org> |
allow adding a FoldingSetNodeID to a FastFoldingSetNode, resolving PR9499, patch by Johannes Schaub! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130151 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
f462ab431f76292d939aa3adac2101a18407077d |
24-Apr-2011 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Give ImmutableIntervalMap.h an include guard. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130094 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableIntervalMap.h
|
ddcdcc88631c6bd4ad43d9198b98bc9a829be036 |
23-Apr-2011 |
Jay Foad <jay.foad@gmail.com> |
Remove unused STL header includes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130068 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
tringMap.h
|
e1fee48cd0d1e515f247fe3bceceb0f854623f73 |
20-Apr-2011 |
Justin Holewinski <justin.holewinski@gmail.com> |
PTX: Add intrinsics to list of built-in intrinsics, which allows them to be used by Clang. To help Clang integration, the PTX target has been split into two targets: ptx32 and ptx64, depending on the desired pointer size. - Add GCCBuiltin class to all intrinsics - Split PTX target into ptx32 and ptx64 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129851 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
558692fd0a31d4d3ae4fd09a3a02f80da2e44e5c |
20-Apr-2011 |
Daniel Dunbar <daniel@zuster.org> |
ADT/Triple: Renambe isOSX... methods to isMacOSX for consistency with the OS triple component. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129838 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
398a5ca9cdf6256775904d957d6c40b63d45636c |
20-Apr-2011 |
Daniel Dunbar <daniel@zuster.org> |
ADT/Triple: Drop support for -osx style triples, we are going with -macosx instead. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129836 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
1af394766fe4e725d5af2fe82c2ad9cfcbc7dd34 |
20-Apr-2011 |
Daniel Dunbar <daniel@zuster.org> |
ADT/Triple: Add support for Triple::MacOSX per feedback from Chris, will remove Triple::OSX once Clang has moved. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129833 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
e1fe09f6826f158def69cff89f3ce4e67e199bb5 |
19-Apr-2011 |
Daniel Dunbar <daniel@zuster.org> |
ADT/Triple: Add isOSDarwin() and isOSWindows() helper functions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129815 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
4860fe0ad0447f8545bdbc1b327e82cb1ba41a51 |
19-Apr-2011 |
Daniel Dunbar <daniel@zuster.org> |
ADT/Triple: Add helper function for OS X version checks. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129801 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
8974153870928527826ea5bad3359377b66666cc |
19-Apr-2011 |
Daniel Dunbar <daniel@zuster.org> |
ADT/Triple: Add isOSVersionLT helper function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129800 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
087d6a59adef985e307ae4dcce670aa87d7b52be |
19-Apr-2011 |
Daniel Dunbar <daniel@zuster.org> |
ADT/Triple: Generalize and simplify getDarwinNumber to just be getOSVersion. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129799 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
0dde4c00ee3b3514fcbabb7bca6b1f1189c4c5b9 |
19-Apr-2011 |
Daniel Dunbar <daniel@zuster.org> |
ADT/Triple: Add support for more explicit "osx" and "ios" OS names. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129798 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
437ef0cfb74102208d6e96ff7e7f1204835e66f3 |
15-Apr-2011 |
Lenny Maiorani <lenny@colorado.edu> |
Implements StringRef::compare with bounds. It is behaves similarly to strncmp(). Unit tests also included. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129582 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
7a2bdde0a0eebcd2125055e0eacaca040f0b766c |
15-Apr-2011 |
Chris Lattner <sabre@nondot.org> |
Fix a ton of comment typos found by codespell. Patch by Luis Felipe Strano Moraes! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129558 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
list.h
|
715c80a00b965f19ca2c7dacbc2f809221cc2730 |
13-Apr-2011 |
Jay Foad <jay.foad@gmail.com> |
Fix typo in comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129436 91177308-0d34-0410-b5e6-96231b3b80d8
rrayRef.h
|
b1145c8cee6ab749f00d07d3d7dab0d1d1fd0c06 |
09-Apr-2011 |
Chris Lattner <sabre@nondot.org> |
drive by bug fix: DenseMapInfo::isEqual should be determined according to isEqual of its members, not operator==. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129233 91177308-0d34-0410-b5e6-96231b3b80d8
enseMapInfo.h
|
10fdd5a0f622bdea4003ffa818eeb9486bfb0730 |
04-Apr-2011 |
Peter Collingbourne <peter@pcc.me.uk> |
IntrusiveRefCntPtr: in RefCountedBase and RefCountedBaseVPTR, make ref_cnt mutable and Retain/Release const to enable reference counted pointers to const objects git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128804 91177308-0d34-0410-b5e6-96231b3b80d8
ntrusiveRefCntPtr.h
|
5907d863659eb972ebb2afe07bc863a4c616f0ef |
02-Apr-2011 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Add an InterferenceCache class for caching per-block interference ranges. When the greedy register allocator is splitting multiple global live ranges, it tends to look at the same interference data many times. The InterferenceCache class caches queries for unaltered LiveIntervalUnions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128764 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
03ef44991768b803ed5b210877ce0d83bf16fd93 |
30-Mar-2011 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Reset StringMap's NumTombstones on clears and rehashes. StringMap was not properly updating NumTombstones after a clear or rehash. This was not fatal until now because the table was growing faster than NumTombstones could, but with the previous change of preventing infinite growth of the table the invariant (NumItems + NumTombstones <= NumBuckets) stopped being observed, causing infinite loops in certain situations. Patch by José Fonseca! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128567 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
e10fff6f8802d6ab4045d9d0bb22e6f37e6d3d0b |
30-Mar-2011 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Prevent infinite growth of SmallPtrSet instances. Rehash but don't grow when full of tombstones. Patch by José Fonseca! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128566 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
aea4fe2862ce17acc6ce943df589ee8d5eb05adf |
30-Mar-2011 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Prevent infinite growth of SmallMap instances. Rehash but don't grow when full of tombstones. Patch by José Fonseca! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128565 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
414fdbdb0104fdc8c570287f94df8bb697e7b7c1 |
30-Mar-2011 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Prevent infinite growth of the DenseMap. When the hash function uses object pointers all free entries eventually become tombstones as they are used at least once, regardless of the size. DenseMap cannot function with zero empty keys, so it double size to get get ridof the tombstones. However DenseMap never shrinks automatically unless it is cleared, so the net result is that certain tables grow infinitely. The solution is to make a fresh copy of the table without tombstones instead of doubling size, by simply calling grow with the current size. Patch by José Fonseca! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128564 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
2746000f4fa54e6ad00cf96910ea5772803624ed |
30-Mar-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Add APFloat::getExactInverse. The idea is, that if an ieee 754 float is divided by a power of two, we can turn the division into a cheaper multiplication. This function sees if we can get an exact multiplicative inverse for a divisor and returns it if possible. This is the hard part of PR9587. I tested many inputs against llvm-gcc's frotend implementation of this optimization and didn't find any difference. However, floating point is the land of weird edge cases, so any review would be appreciated. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128545 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
d01f2633b9aab6281c936da04226b46a0dde7ba9 |
30-Mar-2011 |
Jay Foad <jay.foad@gmail.com> |
Fix more zero length memset warnings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128543 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
6208610fd602ebdb18bb793152899573d0b2b7ab |
27-Mar-2011 |
Frits van Bommel <fvbommel@gmail.com> |
Constant folding support for calls to umul.with.overflow(), basically identical to the smul.with.overflow() code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128379 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
116e2348edee6c216a9e37484b62fc2fda595208 |
22-Mar-2011 |
Ted Kremenek <kremenek@apple.com> |
Relax access control on 'Release' method of RefCountedBase. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128054 91177308-0d34-0410-b5e6-96231b3b80d8
ntrusiveRefCntPtr.h
|
47f0f1856f189e9e0d9540bd3f82b26f77088a7d |
21-Mar-2011 |
Ted Kremenek <kremenek@apple.com> |
Allow a client to clear an IntrustiveRefCntPtr (deliberately leaking the referenced object). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128007 91177308-0d34-0410-b5e6-96231b3b80d8
ntrusiveRefCntPtr.h
|
b518c25b3e3ec03da389ca48910ded42ca1305e3 |
20-Mar-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
If a class inherits from RefCountedBaseVPTR allow all its subclasses to be used with IntrusiveRefCntPtr. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127966 91177308-0d34-0410-b5e6-96231b3b80d8
ntrusiveRefCntPtr.h
|
d9103df51b858cf051a1650ac7eb33d416e9ac41 |
17-Mar-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Add an argument to APInt's magic udiv calculation to specify the number of bits that are known zero in the divided number. This will come in handy soon. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127828 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
6046cffbaf584b5d6bd7baf827794a5f91a07a9b |
15-Mar-2011 |
John Thompson <John.Thompson.JTSoftware@gmail.com> |
Add scei vendor git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127705 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
e54f64899fbaaa95fc3241236aabfaa37003a658 |
07-Mar-2011 |
Duncan Sands <baldrick@free.fr> |
Often GCC can see that NumBuckets is zero here, resulting in a warning about possibly swapped memset parameters. Avoid the warning. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127170 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
a36be826643ed1f6a4639f79270276df621853ba |
07-Mar-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Try fixing mingw build. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127153 91177308-0d34-0410-b5e6-96231b3b80d8
ointerUnion.h
|
128ccbb8e5e142d4ec6c9afb4160b74f76cb3064 |
07-Mar-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Do a compiler check that we use one of the types from PointerUnion[N], instead of a runtime check. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127145 91177308-0d34-0410-b5e6-96231b3b80d8
ointerUnion.h
|
88b0c6a59a54a2d7b3763dfabb595ce0e09e658a |
05-Mar-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Avoid zero-sized allocations when copying a fresh DenseMap. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127110 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
49d443053bf6565f2420692b54f96abffa76f236 |
05-Mar-2011 |
Benjamin Kramer <benny.kra@googlemail.com> |
Lazily allocate DenseMaps. This makes lookup slightly more expensive but it's worth it, unused DenseMaps are common in LLVM code apparently. 1% speedup on clang -O3 bzip2.c 4% speedup on clang -O3 oggenc.c (Release build of clang on i386/linux) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127088 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
fa09685a9aa17dbdd4c72ad032684debb25feb0b |
02-Mar-2011 |
Chris Lattner <sabre@nondot.org> |
add some slice helper methods. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126878 91177308-0d34-0410-b5e6-96231b3b80d8
rrayRef.h
|
181436f11b740300b7032a7ac1ad848498a1a13e |
01-Mar-2011 |
Dan Gohman <gohman@apple.com> |
Simplify this code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126785 91177308-0d34-0410-b5e6-96231b3b80d8
epthFirstIterator.h
|
cdac46d18e8bf1850b435960ccc29fb8743d9b05 |
27-Feb-2011 |
Chris Lattner <sabre@nondot.org> |
add the ability to walk the scope tree and insert at not-the-current scope. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126591 91177308-0d34-0410-b5e6-96231b3b80d8
copedHashTable.h
|
878ad7afa512ef300d5df4e7ca0189775342dfc2 |
27-Feb-2011 |
Chris Lattner <sabre@nondot.org> |
add a data() method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126590 91177308-0d34-0410-b5e6-96231b3b80d8
rrayRef.h
|
0aa00f91100fb031cd9cde2562cdc029f4fb26d5 |
27-Feb-2011 |
Daniel Dunbar <daniel@zuster.org> |
Support: Add llvm::AreStatisticsEnabled(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126558 91177308-0d34-0410-b5e6-96231b3b80d8
tatistic.h
|
9b6af8de58140566a0e6567508bf906027422e7c |
24-Feb-2011 |
Cameron Zwarich <zwarich@apple.com> |
Add a getNumSignBits() method to APInt. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126379 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
438208e8cb29c67b2177619a339b84291729b6b7 |
23-Feb-2011 |
Frits van Bommel <fvbommel@gmail.com> |
Implement TODO for implicit C-array-to-ArrayRef conversion. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126311 91177308-0d34-0410-b5e6-96231b3b80d8
rrayRef.h
|
2d76ad6df91d3192f986efd19d70a6d892a05b6c |
22-Feb-2011 |
Nick Lewycky <nicholas@mxc.ca> |
Fix C++0x incompatibility. The signature of std::make_pair<> changes from: template <class T1, class T2> pair<T1,T2> make_pair(const T1&, const T2&); to template <class T1, class T2> pair<V1, V2> make_pair(T1&&, T2&&); so explicitly specifying the template arguments to make_pair<> is going to break when C++0x rolls through. Replace them with equivalent std::pair<>. Patch by James Dennett! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126256 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableIntervalMap.h
mmutableMap.h
|
38297f5f760de604258aaa9000e5aadb43c78921 |
19-Feb-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Allow getting the address of the value in a PointerUnion or PointerIntPair if one is confident enough that he knows what he is doing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126019 91177308-0d34-0410-b5e6-96231b3b80d8
ointerIntPair.h
ointerUnion.h
|
3f912adeae348cf230795c2c9d83165e7d854d43 |
19-Feb-2011 |
Ted Kremenek <kremenek@apple.com> |
Add ImmutableMap methods 'manualRetain()', 'manualRelease()', and 'getRootWithoutRetain()' to help more aggressively reclaim memory in the static analyzer. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126011 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
|
093399cbf3bcdb31d04b3bf5c5691fc88c25da48 |
17-Feb-2011 |
Nadav Rotem <nadav.rotem@intel.com> |
Enhance constant folding of bitcast operations on vectors of floats. Add getAllOnesValue of FP numbers to Constants and APFloat. Add more tests. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125776 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
6904f05e607b6bbdfa96a2ebb628ebf3a1f21455 |
17-Feb-2011 |
NAKAMURA Takumi <geek4civic@gmail.com> |
Triple::MinGW64 is deprecated and removed. We can use Triple::MinGW32 generally. No one uses *-mingw64. mingw-w64 is represented as {i686|x86_64}-w64-mingw32. In llvm side, i686 and x64 can be treated as similar way. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125747 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
ab4c366274a582dd8146b2820c6b999cad5fce36 |
15-Feb-2011 |
Duncan Sands <baldrick@free.fr> |
Spelling fix: consequtive -> consecutive. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125563 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
04b2f0d99feb9cdf87eb8f35483816d757d170dd |
15-Feb-2011 |
Chris Lattner <sabre@nondot.org> |
fix comments git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125543 91177308-0d34-0410-b5e6-96231b3b80d8
rrayRef.h
|
04df049014396fe97a31bf3fa8951201b2ed8ffe |
15-Feb-2011 |
Chris Lattner <sabre@nondot.org> |
fix some typos. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125536 91177308-0d34-0410-b5e6-96231b3b80d8
rrayRef.h
|
75831904220042260c4faece8507a2807acba47f |
14-Feb-2011 |
Chris Lattner <sabre@nondot.org> |
revert my ConstantVector patch, it seems to have made the llvm-gcc builders unhappy. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125504 91177308-0d34-0410-b5e6-96231b3b80d8
rrayRef.h
|
283c8caccd093f8e1d4f0bdd01ac240b4edbd20a |
14-Feb-2011 |
Chris Lattner <sabre@nondot.org> |
Switch ConstantVector::get to use ArrayRef instead of a pointer+size idiom. Change various clients to simplify their code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125487 91177308-0d34-0410-b5e6-96231b3b80d8
rrayRef.h
|
2b9bc422a5e6840f5b925316bc06d5943deb610a |
14-Feb-2011 |
Chris Lattner <sabre@nondot.org> |
add a new ArrayRef class. This is intended to replace the idiom we use in many places where we pass a pointer and size to abstract APIs that can take C arrays, std::vector, SmallVector, etc. It is to arrays what StringRef is to strings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125486 91177308-0d34-0410-b5e6-96231b3b80d8
rrayRef.h
|
551b6751a0a1bace73d4490b02b720e5e5edf787 |
14-Feb-2011 |
Nick Lewycky <nicholas@mxc.ca> |
Fix typo in comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125480 91177308-0d34-0410-b5e6-96231b3b80d8
CCIterator.h
|
16e036fa8f1d1da02deeaf9a77951f4dc711faa1 |
13-Feb-2011 |
Chris Lattner <sabre@nondot.org> |
add a helper method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125453 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
78b9649d46c91f377cfc799aecb74cb017f72c36 |
11-Feb-2011 |
Douglas Gregor <dgregor@apple.com> |
Poison the relational operators ==, !=, <, <=, >=, > on llvm::Optional objects, since they'll end up using the implicit conversion to "bool" and causing some very "fun" surprises. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125380 91177308-0d34-0410-b5e6-96231b3b80d8
ptional.h
|
697ffd61a47af38ac932628e942d75952f901fcd |
09-Feb-2011 |
Dan Gohman <gohman@apple.com> |
Optimize po_iterator: don't do redundant lookups. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125211 91177308-0d34-0410-b5e6-96231b3b80d8
ostOrderIterator.h
|
ae200c60c31666da81a8550172de03a9f417ba1b |
02-Feb-2011 |
Duncan Sands <baldrick@free.fr> |
Remove NoVendor and NoOS, added in commit 123990, from Triple. While it may be useful to understand "none", this is not the place for it. Tweak the fix to Normalize while there: the fix added in 123990 works correctly, but I like this way better. Finally, now that Triple understands some non-trivial environment values, teach the unittests about them. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124720 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
2bffee2ee725047137d2523e31db9ecc7b246cbb |
01-Feb-2011 |
Evan Cheng <evan.cheng@apple.com> |
Patches to build EFI with Clang/LLVM. By Carl Norum. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124639 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
989e7c4d0f042e8ed4f1cc4b0c1fa59b8a1e7d59 |
27-Jan-2011 |
Nick Lewycky <nicholas@mxc.ca> |
Add DenseSet::resize for API parity with DenseMap::resize. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124370 91177308-0d34-0410-b5e6-96231b3b80d8
enseSet.h
|
859f8183639346378ed29d1e04a4b070ebc7e97f |
21-Jan-2011 |
Renato Golin <renato.golin@arm.com> |
Clang was not parsing target triples involving EABI and was generating wrong IR (wrong PCS) and passing the wrong information down llc via the target-triple printed in IR. I've fixed this by adding the parsing of EABI into LLVM's Triple class and using it to choose the correct PCS in Clang's Tools. A Clang patch is on its way to use this infrastructure. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123990 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
42e9c963921776cb498c33b6c6c03f29971316f3 |
09-Jan-2011 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Remove MachineRegisterInfo::getLastVirtReg(), it was giving wrong results when no virtual registers have been allocated. It was only used to resize IndexedMaps, so provide an IndexedMap::resize() method such that Map.grow(MRI.getLastVirtReg()); can be replaced with the simpler Map.resize(MRI.getNumVirtRegs()); This works correctly when no virtuals are allocated, and it bypasses the to/from index conversions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123130 91177308-0d34-0410-b5e6-96231b3b80d8
ndexedMap.h
|
994c727b5790e5c976e32c75364d78eb9b22a568 |
09-Jan-2011 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Use IndexedMap for MachineRegisterInfo as well. No functional change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123106 91177308-0d34-0410-b5e6-96231b3b80d8
ndexedMap.h
|
358de24dc121cd21911f3248b599178c86e9b467 |
09-Jan-2011 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Use an IndexedMap for LiveOutRegInfo to hide its dependence on TargetRegisterInfo::FirstVirtualRegister. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123096 91177308-0d34-0410-b5e6-96231b3b80d8
ndexedMap.h
|
152096275ad45bb13d5652f7019f48be5ccd67f8 |
03-Jan-2011 |
Chris Lattner <sabre@nondot.org> |
add a handy typedef. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122726 91177308-0d34-0410-b5e6-96231b3b80d8
copedHashTable.h
|
4f20c6d354d4c6eba00148c2dfc9ad2dae8fd140 |
03-Jan-2011 |
Chris Lattner <sabre@nondot.org> |
really get this working with a custom allocator. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122722 91177308-0d34-0410-b5e6-96231b3b80d8
copedHashTable.h
|
61a10a0dc91863b70002cc412a1277357d6a4b45 |
03-Jan-2011 |
Chris Lattner <sabre@nondot.org> |
Enhance ScopedHashTable to allow it to take an allocator argument. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122721 91177308-0d34-0410-b5e6-96231b3b80d8
copedHashTable.h
tringMap.h
|
b907e8a2d40dc546f21ff7e122a80b121653851a |
21-Dec-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Use IntEqClasses to compute connected components of live intervals. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122296 91177308-0d34-0410-b5e6-96231b3b80d8
ntEqClasses.h
|
2a6899c5391a9aada02686dee29f9b56218ed1d3 |
21-Dec-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Add ADT/IntEqClasses.h as a light-weight implementation of EquivalenceClasses.h. 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122293 91177308-0d34-0410-b5e6-96231b3b80d8
ntEqClasses.h
|
9d38acb254108db0ee9e746bb3f7aa64168f7e36 |
19-Dec-2010 |
Nick Lewycky <nicholas@mxc.ca> |
Use the new way of silencing this warning. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122195 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
476b242fe7a61e5f9ac6214b0bc5c680d24f152e |
19-Dec-2010 |
Nick Lewycky <nicholas@mxc.ca> |
Add missing standard headers. Patch by Joerg Sonnenberger! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122193 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
mallPtrSet.h
mallVector.h
list.h
|
d715e07efe29451afe2849abd4bd362d0f75a004 |
17-Dec-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Add more checks to IntervalMapOverlaps::advance() to ensure that advanceTo sees monotonic keys. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122093 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
5049ee5b11fe55e5a553b5388406aab874717672 |
17-Dec-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
It is allowed to call IntervalMap::const_iterator::advanceTo() with a key that moves the iterator to end(), and it is valid to call it on end(). That means it is valid to call advanceTo() with any monotonic key sequence. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122092 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
965841cfe4de695fc56cab4821fd7e032ff85b83 |
17-Dec-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Support/Path: Deprecate PathV1::isAbsolute. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122086 91177308-0d34-0410-b5e6-96231b3b80d8
mallString.h
|
4aec85ae01188f87e45e5e91baab4f303cbcd336 |
17-Dec-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Fix crash when IntervalMapOverlaps::advanceTo moves past the last overlap. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122081 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
ff2e9b4225ab55ee049b33158a9cce1ef138c2f7 |
17-Dec-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Provide LiveIntervalUnion::Query::checkLoopInterference. This is a three-way interval list intersection between a virtual register, a live interval union, and a loop. It will be used to identify interference-free loops for live range splitting. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122034 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
460ee0fd19b13ba4c1410e43d8d253bf34673817 |
16-Dec-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Add basic test exposing many bugs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121995 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
cb9e08f328892eaf46825d7426216995ca673a67 |
16-Dec-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Add IntervalMapOverlaps - An iterator for overlapping intervals in two IntervalMaps. The IntervalMaps can have different template parameters, but the KeyT and Traits types must be the same. Tests are forthcoming. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121935 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
2ece4dead7087ebf8d5fa8df77fcd76593c6a6a5 |
14-Dec-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Remove debugging code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121738 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
58fe86dc0ecb7efff01abe2b0024a6a53ebb2c81 |
09-Dec-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Support: Move c_str from SmallVector back to SmallString and add a free standing templated c_str in Windows.h to replace it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121381 91177308-0d34-0410-b5e6-96231b3b80d8
mallString.h
mallVector.h
|
da2fdcbb639de168738c27089bafa9ca10b731bd |
08-Dec-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Fix begin() and end() on const IntervalMap. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121200 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
40f8f6264d5af2c38e797e0dc59827cd231e8ff7 |
07-Dec-2010 |
Jay Foad <jay.foad@gmail.com> |
PR5207: Change APInt methods trunc(), sext(), zext(), sextOrTrunc() and zextOrTrunc(), and APSInt methods extend(), extOrTrunc() and new method trunc(), to be const and to return a new value instead of modifying the object in place. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121120 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
PSInt.h
|
e99bbd9ac3cc7ba2615c9b800a002e47c8e13991 |
06-Dec-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Support/ADT: Move c_str() from SmallString to SmallVectorImpl. The Windows PathV2 implementation needs it for wchar_t and SmallVectorImpl in general. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120984 91177308-0d34-0410-b5e6-96231b3b80d8
mallString.h
mallVector.h
|
fd6d53fbad9d3f48da4910ebba12d9d2a3c24bd8 |
04-Dec-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
APInt: microoptimize a few methods. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120912 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
bd7d2622a2ee828a02017dca19170b6f79ff6684 |
04-Dec-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Simplify APInt::getAllOnesValue. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120911 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
7a26aca73ff2c8c4cb3205a776cc6743949b1fb7 |
03-Dec-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Add IntervalMap::iterator::set{Start,Stop,Value} methods that allow limited editing of the current interval. These methods may cause coalescing, there are corresponding set*Unchecked methods for editing without coalescing. The non-coalescing methods are useful for applying monotonic transforms to all keys or values in a map without accidentally coalescing transformed and untransformed intervals. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120829 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
7dc7ac3cb20b7ef8e6febe0ac3bc430230f29893 |
01-Dec-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Support/ADT/Twine: Add toNullTerminatedStringRef. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120600 91177308-0d34-0410-b5e6-96231b3b80d8
wine.h
|
7a874ddda037349184fbeb22838cc11a1a9bb78f |
01-Dec-2010 |
Jay Foad <jay.foad@gmail.com> |
PR5207: Rename overloaded APInt methods set(), clear(), flip() to setAllBits(), setBit(unsigned), etc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120564 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
63c133b67d61b0c457ff46c957aed2b8d90b599c |
01-Dec-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Support/ADT/StringRef: Add find_last_of. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120495 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
75627d3d2e700b8fa0e040a5ec4ef1a0e299b9b5 |
30-Nov-2010 |
Ted Kremenek <kremenek@apple.com> |
Performance optimization on ImmutableMap/ImmutableSet: - Use a DenseSet instead of a FoldingSet to cache canonicalized nodes. This reduces the overhead of double-hashing. - Use reference counts in ImutAVLTree to much more aggressively recover tree nodes that are no longer usable. We can generate many transient nodes while using add() and remove() on ImmutableSet/ImmutableMaps to generate a final set/map. For the clang static analyzer (the main client of these data structures), this results in a slight speedup (0.5%) when analyzing sqlite3, but much more importantly results in a 30-60% reduction in peak memory usage when the analyzer is analyzing a given function in a file. On average that's about a ** 44% reduction ** in the memory footprint of the static analyzer. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120459 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
mmutableSet.h
|
a99793c5ea24dd3839f4925b89b1f6acfcb24604 |
30-Nov-2010 |
Jay Foad <jay.foad@gmail.com> |
PR5207: Make APInt::set(), APInt::clear() and APInt::flip() return void. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120413 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
1f6efa3996dd1929fbc129203ce5009b620e6969 |
29-Nov-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Merge System into Support. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120298 91177308-0d34-0410-b5e6-96231b3b80d8
quivalenceClasses.h
oldingSet.h
mmutableList.h
mmutableSet.h
mallPtrSet.h
parseBitVector.h
tatistic.h
tringExtras.h
wine.h
alueMap.h
|
08d55342e337fd4e80a68b81b8b0cbb100ea0a23 |
28-Nov-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Don't use std::copy and std::copy_backward, run 10% faster. Sometimes std::copy can become a memmove call, and that is not a good idea when copying relatively few bytes as we are doing. We also get a small win by changing two loops into one. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120265 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
5f456cda98c57b6dea8bc716978b69776d0d0e8f |
28-Nov-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Disallow overlapping inserts, even when inserting the same value. We always disallowed overlapping inserts with different values, and this makes the insertion code smaller and faster. If an overwriting insert is needed, it can be added as a separate method that trims any existing intervals before inserting. The immediate use cases for IntervalMap don't need this - they only use disjoint insertions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120264 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
695ab519e4129ba1053383364a9241ec4c68904b |
28-Nov-2010 |
Jay Foad <jay.foad@gmail.com> |
PR5207: remove unused methods APInt::Emit() and APInt::Read(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120262 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
e4d19c9eb22899c9a555395d446a9ceef3bea7eb |
28-Nov-2010 |
Jay Foad <jay.foad@gmail.com> |
PR5207: change APInt::doubleToBits() and APInt::floatToBits() to be static methods that return a new APInt. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120261 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
bf953eaba3442f8e25926b8f41423d4d126960f6 |
28-Nov-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Tweak comments to make it clear that we are working in a namespace. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120256 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
9a08ca318e63912e4c19977abc1173f30866b704 |
28-Nov-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Add default constructors for iterators. These iterators don't point anywhere, and they can't be compared to anything. They are only good for assigning to. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120239 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
180e1247ca330b047eabafbc72926ce9bfd8bf8e |
28-Nov-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Implement const_iterator::advanceTo(). This is a version of find() that always searches forwards and is faster for local searches. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120237 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
79283768a36746bcb5885746637752312af9e4ac |
28-Nov-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Speed up simple insertions into an unbranched tree by not creating an iterator. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120232 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
055942529bbc8487f86b47940dbd6a790516573e |
27-Nov-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Add more tests for erase(). Fix a few exposed bugs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120227 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
b0b7214fc90febbbe71e1e989130194ce2b70a36 |
27-Nov-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Add test case with randomly ordered insertions, massive coalescing. Implement iterator::erase() in a simple version that erases nodes when they become empty, but doesn't try to redistribute elements among siblings for better packing. Handle coalescing across leaf nodes which may require erasing entries. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120226 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
b837f587ed0b97ab57df13d28952b417622036f8 |
27-Nov-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Remove PIC16 remnants. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120223 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
4aeb48904344d2dd8e3b8f39a4752567828ad96f |
27-Nov-2010 |
Daniel Dunbar <daniel@zuster.org> |
Add an optional LowerCase argument to hexdigit(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120213 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
4581dae9ea6d21da0a584aad9f1143343bb7c32e |
27-Nov-2010 |
Daniel Dunbar <daniel@zuster.org> |
ADT/InMemoryStruct: Add an experimental helper class intended for use in situations where on the common path an API can return a pointer to some direct memory, but which on an exceptional path may need to return a pointer to a temporary struct. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120201 91177308-0d34-0410-b5e6-96231b3b80d8
nMemoryStruct.h
|
28116c9f498ec3b40dae90b3a94ba4ceb1a2081c |
26-Nov-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
BitVector tweaks. - Double the vector's capacity when growing to avoid unneeccesary reallocation. - Do the reallocation with realloc(3) which can expand the memory in place. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120183 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
847d2f93ca692fa627a97ba9743bc1e9b8c5cbae |
26-Nov-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
StringRefs are POD-like. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120181 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
53bb5c009b04f4a5dd2388b25efe88b5579b282c |
26-Nov-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Add B+-tree test case that creates a height 3 tree with a smaller root node. Change temporary debugging code to write a dot file directly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120171 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
bf77baf19cfbc7a8795d9683e9b9ec894b9ff8c9 |
26-Nov-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Extract template function adjustSiblingSizes(), allowing instances to be shared between B+-trees using the same KeyT. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120170 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
052f1eebdb6dbfb3f1197cc91f28ebc688ffb02d |
26-Nov-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Fix spelling! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120167 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
326990f1eb7ff005adabe46a1f982eff8835813e |
26-Nov-2010 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Fix Whitespace. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120166 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
tringRef.h
wine.h
|
706da9d8ca207c93d38855ffd96cf9722996d706 |
26-Nov-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Move tree navigation to a new Path class that doesn't have to be a template. The path also holds a reference to the root node, and that allows important iterator accessors like start() and stop() to have no conditional code. (When the compiler is clever enough to remove it.) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120165 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
9c336fabd59fbdbe9129d76fbbee32261ac7c8f0 |
24-Nov-2010 |
Ted Kremenek <kremenek@apple.com> |
Tweak ImmutableMap/ImmutableSet/ImmutableList APIs to use lowercase letters for the start of most method names and to replace some method names with more descriptive names (e.g., "getLeft()" instead of "Left()"). No real functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120070 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableIntervalMap.h
mmutableList.h
mmutableMap.h
mmutableSet.h
|
6c76f5fa2fb839c736c572f45c138e5b3f549530 |
24-Nov-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Generalize overflowLeaf to also handle overflows in branch nodes. This doesn't quite work yet because the calls to treeDecrement and treeIncrement operate at the leaf level, not on pathNode(Level) as required. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120068 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
1c3f050309592e034972dc77a2eb4025680ff293 |
20-Nov-2010 |
Frits van Bommel <fvbommel@gmail.com> |
Test commit: Fix two -Asserts mode warnings in StringMap.h. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119907 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
487a5b786f7f70c9ed71dadbfcd03a918e5b0ea1 |
20-Nov-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Fix old GCC build error. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119884 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
ddd0e65dba1de71eaa8901cd6f787754e34c3fe0 |
20-Nov-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Detemplatize NodeRef. It is now possible to navigate the B+-tree using NodeRef::subtree() and NodeRef::size() without knowing the key and value template types used in the tree. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119880 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
a3b1082bb1ec2340d61b91dd91dbdd3ce5fa0867 |
20-Nov-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Rename NodeBase::{key,val} as {first,second} and swap the BranchNode arrays such that the noderefs are the first member in the object. This is in preparation of detemplatization of tree navigation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119879 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
785ab18a054373f1a2f8d0f6f04db2d458878bd9 |
20-Nov-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Implement IntervalMap destructor. Key and value objects may not be destructed instantly when they are erased from the container, but they will be destructed eventually by the IntervalMap destructor. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119873 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
655fbb4f9b46ea93eddf0815eaed0020e9347416 |
20-Nov-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Implement IntervalMap::clear(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119872 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
db52566d684a36cf1f320f91ca5c15d5cd075b95 |
20-Nov-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Support backwards iteration starting from end(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119871 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
33fa490c5011b610ccf7b1206bbabb85d9a8cbaa |
19-Nov-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Rename methods for clarity instead of brevity. No functional changes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119820 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
805f105da0e15c3c63c5d5e9df0140d3421b4a55 |
19-Nov-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Include raw_ostream.h unconditionally even if it is only used for debug code. We don't want any clients acidentally depending on this and then failing in a -Asserts build. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119818 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
528900d9a46cf4acde3a90494f286116159d5e59 |
19-Nov-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Work around GCC 4.0 build error: llvm/include/llvm/ADT/IntervalMap.h:334: error: '((llvm::IntervalMapImpl::DesiredNodeBytes / static_cast<unsigned int>(((2 * sizeof (KeyT)) + sizeof (ValT)))) >? 3u)' is not a valid template argument for type 'unsigned int' because it is a non-constant expression git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119790 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
8dc926755f287e33765a8da0c4b3922a289a9d2d |
19-Nov-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Add ADT/IntervalMap. 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119787 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
737d2816c42c1f9a63524e39ccfa7560777b6b42 |
19-Nov-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Revert "Add ADT/IntervalMap.", GCC doesn't like it. This reverts r119772. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119773 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
8408edffcbd7f436c05018fafbfb9911146b208a |
19-Nov-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Add ADT/IntervalMap. 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119772 91177308-0d34-0410-b5e6-96231b3b80d8
ntervalMap.h
|
32df92dde60a027612880e4701ce1b0246d65eae |
17-Nov-2010 |
Dan Gohman <gohman@apple.com> |
Fix warnings about missing parents between || and &&. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119454 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
ce8ca9ab0cc42be4f2ff5ed5d349eac5c90f9b04 |
13-Nov-2010 |
Jim Grosbach <grosbach@apple.com> |
Trailing whitespace. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118978 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
5005e27f9714f0eaa5b8b7a5a1f6751afa163f07 |
03-Nov-2010 |
Dan Gohman <gohman@apple.com> |
Factor code out of APInt to form a isUIntN helper function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118133 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
25592eb52c39097bc610785f648aca4a09989201 |
31-Oct-2010 |
Chandler Carruth <chandlerc@gmail.com> |
Add a specialization for 'long', a hole in the set of fundamental specializations provided here. This is a little annoying because its size changes from platform to platform. If possible, I may follow up with a patch that uses standard constants to simplify much of this, but assuming for now that was avoided for a reason. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117880 91177308-0d34-0410-b5e6-96231b3b80d8
enseMapInfo.h
|
16c3b647eb100fe404ee65f106d563ddef6c74b7 |
30-Oct-2010 |
Chris Lattner <sabre@nondot.org> |
Rename alignof -> alignOf to avoid irritating C++'0x compilers, PR8423, patch by nobled. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117774 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
5ee568ac2704d7302017d42ad162d4b53d076cbc |
20-Oct-2010 |
Douglas Gregor <dgregor@apple.com> |
Extend StringRef's edit-distance algorithm to permit an upper bound on the allowed edit distance git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116867 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
eafc5cb80d58cb9447623a557be4d4f55f42fbc3 |
14-Oct-2010 |
Chris Lattner <sabre@nondot.org> |
add uadd_ov/usub_ov to apint, consolidate constant folding logic to use the new APInt methods. Among other things this implements rdar://8501501 - llvm.smul.with.overflow.i32 should constant fold which comes from "clang -ftrapv", originally brought to my attention from PR8221. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116457 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
08e90f5646e61c3be0eebfa172ec73a8b56abee8 |
14-Oct-2010 |
Chris Lattner <sabre@nondot.org> |
missed a line :( git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116456 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
0a0a585e6bfc112cb8346b17edecb76969fb5532 |
14-Oct-2010 |
Chris Lattner <sabre@nondot.org> |
constify these methods. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116455 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
f2ddc64c8701e432cc220f26c48d596cc0f30a97 |
14-Oct-2010 |
Chris Lattner <sabre@nondot.org> |
add a few operations for signed operations that also return an overflow flag. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116452 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
5dd76fa50a63c6460957d11d2542469f0a7d65d7 |
03-Oct-2010 |
Duncan Sands <baldrick@free.fr> |
GCC extensions are no longer used here - update the comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115463 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
75e2016f02428289e9cfd693a27bcd9a2a5cc00f |
03-Oct-2010 |
Duncan Sands <baldrick@free.fr> |
Remove two uses of the gcc specific 'aligned' attribute. This is partly because this attribute caused trouble in the past (the SmallVector one had to be changed from aligned to aligned(8) due to causing crashes on i386 for example; in theory the same might be needed in the Allocator case...). But it's mostly because there seems to be no point in special casing gcc here. Using the same implementation for all compilers results in better testing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115462 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
fab4c9e9df1aeb33b55cfcfa174fac8d61df96fd |
27-Sep-2010 |
Dan Gohman <gohman@apple.com> |
Add an all() method to BitVector, for testing whether all bits are set. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114830 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
mallBitVector.h
|
df046f078e95417f0ece761c92b8cc549f7ab105 |
23-Sep-2010 |
Dan Gohman <gohman@apple.com> |
Make SetVector's remove indicate whether it actually removed something. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114612 91177308-0d34-0410-b5e6-96231b3b80d8
etVector.h
|
6d31c0b79a06483d7a80209bba34226ccf9088bb |
21-Sep-2010 |
Mikhail Glushenkov <foldr@codedgers.com> |
Trailing whitespace. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114432 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
5754a4525625a67a6c9b4f63512ea9db6997bf05 |
16-Sep-2010 |
Duncan Sands <baldrick@free.fr> |
Add better support for environment portion of triple. Original patch by Cameron Esfahani, tweaked to use array_lengthof. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114073 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
f7a3c50183726c5bbb02bb08d97e65f1066a249f |
07-Sep-2010 |
Nick Lewycky <nicholas@mxc.ca> |
Create PTX backend. Patch by Che-Liang Chiou! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113235 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
061d21eaf8fcdb19b85db0755c208acbba7c8ef4 |
04-Sep-2010 |
Chris Lattner <sabre@nondot.org> |
fix this to work with allocators that have reference type with compilers that diagnose invalid references to references. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113078 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
2a9a2dba4c02e7eea3aeba2be5dc1fc377d5aa5c |
02-Sep-2010 |
John McCall <rjmccall@apple.com> |
After some discussion with djg, teach SmallVector to grow from a zero capacity and remove the workaround in SmallVector<T,0>. There are some theoretical benefits to a N->2N+1 growth policy anyway. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112870 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
e3955df639ff9aff990f628ef6a219ff5efdbc81 |
01-Sep-2010 |
Dan Gohman <gohman@apple.com> |
Make the iterator form of erase return void, since it always succeeds, and since this is what std::map and std::set do. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112701 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
enseSet.h
alueMap.h
|
2027362e8d99df1780ba604cff624b116a4e6ecf |
30-Aug-2010 |
Eric Christopher <echristo@apple.com> |
Kill a couple of unused variables. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112498 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
c9fa2cd596b3c20c5f78aa8e1d227b81d52991fb |
29-Aug-2010 |
Dan Gohman <gohman@apple.com> |
Delete an unused declaration. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112424 91177308-0d34-0410-b5e6-96231b3b80d8
list.h
|
4672f0f61c0cc1a90d575fcbfd7d905396f81cc6 |
26-Aug-2010 |
John McCall <rjmccall@apple.com> |
SmallVector's growth policies don't like starting from zero capacity. I think there are good reasons to change this, but in the interests of short-term stability, make SmallVector<...,0> reserve non-zero capacity in its constructors. This means that SmallVector<...,0> uses more memory than SmallVector<...,1> and should really only be used (unless/until this workaround is removed) by clients that care about using SmallVector with an incomplete type. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112147 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
5b5f7260a0f0da9a2057245fd42a6b196ccec33d |
26-Aug-2010 |
John McCall <rjmccall@apple.com> |
Provide an explicit specialization of SmallVector at N=0 which does not require its type argument to be complete if no members are actually used. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112106 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
250eb005d91e80b05a61345394bae9e9528151ac |
23-Aug-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Avoid O(n*m) complexity in StringRef::find_first(_not)_of(StringRef). - Cache used characters in a bitset to reduce memory overhead to just 32 bytes. - On my core2 this code is faster except when the checked string was very short (smaller than the list of delimiters). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111817 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
79ed2c597a134cb4dd5da90199053f322b7d8a2d |
23-Aug-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
StringRef tweaks: - Respect find_first_of(char's From parameter instead of silently dropping it. - Prefer std::string() to std::string("") git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111814 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
726a3d284ec1949c4ccf77e79ca0506e8a38b05c |
19-Aug-2010 |
Sean Hunt <rideau3@gmail.com> |
Finish full attribute class emission for clang. For more information, see the accompanying clang patch. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111454 91177308-0d34-0410-b5e6-96231b3b80d8
tringSwitch.h
|
cf16bea74e3a6f84af914520562e9f9c5dfa0fad |
18-Aug-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Revert r111394. It was too aggressive. We must complete the DFS, otherwise we might miss needed phi-defs, and prematurely color live ranges with a non-dominating value. This is not a big deal since we get to color more of the CFG and the next mapValue call will be faster. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111397 91177308-0d34-0410-b5e6-96231b3b80d8
epthFirstIterator.h
|
4d440bd786ae4dad7035c30fd09044a9efc8dccd |
18-Aug-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Aggressively prune the DFS when inserting phi-defs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111394 91177308-0d34-0410-b5e6-96231b3b80d8
epthFirstIterator.h
|
6709c7bcdacfc3cc07bc0c47d3a3f9b47c699d3a |
18-Aug-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Add df_iterator::getPathLength and getPath as a way of getting a path from the entry node to the current node. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111392 91177308-0d34-0410-b5e6-96231b3b80d8
epthFirstIterator.h
|
7f7274ce7f3243bd71588c7a75a142c39e5c7e34 |
18-Aug-2010 |
Chris Lattner <sabre@nondot.org> |
Don't pass in a null pointer to std::string's ctor, an empty string ref should produce an empty std::string. This fixes PR7879. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111332 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
3063410e52a760584501b825dc6ffb4c52f4d93b |
16-Aug-2010 |
Dan Gohman <gohman@apple.com> |
Add hooks to FoldingSetTrait to allow specializations to provide implementations of equality comparison and hash computation. This can be used to optimize node lookup by avoiding creating lots of temporary ID values just for hashing and comparison purposes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111130 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
0ba422ba6ebfb3fbcbac4f786ebc44136d5df3b2 |
16-Aug-2010 |
Dan Gohman <gohman@apple.com> |
Tidy up whitespace in comments. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111129 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
1878aba8e4753f82a8e7c7390e0adbeb0a393bb5 |
16-Aug-2010 |
Dan Gohman <gohman@apple.com> |
Constify FoldingSetNodeIDRef's Data. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111128 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
6616f7e2f147c2320973993cbfb241a82262b764 |
16-Aug-2010 |
Dan Gohman <gohman@apple.com> |
Reverse the order of GetNodeProfile's arguments, for consistency with FoldingSetTrait::Profile. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111127 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
83fb63d5b3669aec8925af23907ca2b404a51f74 |
16-Aug-2010 |
Dan Gohman <gohman@apple.com> |
Fix indentation in example code in a comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111125 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
452b93e7dc2802dea3a31ea12c397d11c3c5e23b |
13-Aug-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Use getAllOnesValue, saves a copy and looks better. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110991 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
335db223926931db204bf54d4accac6677b8e6b1 |
12-Aug-2010 |
Duncan Sands <baldrick@free.fr> |
Add a 'normalize' method to the Triple class, which takes a mucked up target triple and straightens it out. This does less than gcc's script config.sub, for example it turns i386-mingw32 into i386--mingw32 not i386-pc-mingw32, but it does a decent job of turning funky triples into something that the rest of the Triple class can understand. The plan is to use this to canonicalize triple's when they are first provided by users, and have the rest of LLVM only deal with canonical triples. Once this is done the special case workarounds in the Triple constructor can be removed, making the class more regular and easier to use. The comments and unittests for the Triple class are already adjusted in this patch appropriately for this brave new world of increased uniformity. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110909 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
fffe6cf084d91a8c99b710e30f2b9fb23d62b58d |
09-Aug-2010 |
Duncan Sands <baldrick@free.fr> |
Remove the ValueMap operator=, which was wrong (it did't correct the Map pointers of any contained ValueMapCallbackVH's) and unused. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110577 91177308-0d34-0410-b5e6-96231b3b80d8
alueMap.h
|
ba575092218a93f38273c8c72560cef3300177af |
09-Aug-2010 |
Zhongxing Xu <xuzhongxing@gmail.com> |
Change the Interval type to signed in ImmutableIntervalMap.h. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110562 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableIntervalMap.h
|
3850f5cedad95e6062671d66b08e1a29e7d5e20f |
08-Aug-2010 |
Duncan Sands <baldrick@free.fr> |
Remove the ValueMap copy constructor. It's not used anywhere, and removing it catches the mistake of passing a ValueMap by copy rather than by reference. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110549 91177308-0d34-0410-b5e6-96231b3b80d8
alueMap.h
|
dbac071050010effb95febae0ddf72102551323d |
07-Aug-2010 |
Nick Lewycky <nicholas@mxc.ca> |
Fix typo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110502 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
bcc23933695e1cec4e7dcd2e2b8bde0ef3c298c9 |
30-Jul-2010 |
Duncan Sands <baldrick@free.fr> |
Fix the ValueMap copy constructor. The issue is that the map keys are value handles with a pointer to the containing map. When a map is copied, these pointers need to be corrected to point to the new map. If not, then consider the case of a map M1 which maps a value V to something. Create a copy M2 of M1. At this point there are two value handles on V, one representing V as a key in M1, the other representing V as a key in M2. But both value handles point to M1 as the containing map. Now delete V. The value handles remove themselves from their containing map (which destroys them), but only the first value handle is successful: the second one cannot remove itself from M1 as (once the first one has removed itself) there is nothing there to remove; it is therefore not destroyed. This causes an assertion failure "All references to V were not removed?". git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109851 91177308-0d34-0410-b5e6-96231b3b80d8
alueMap.h
|
cf85c9612959e7326ddba9d4fb0a997c155b74c1 |
28-Jul-2010 |
Owen Anderson <resistor@mac.com> |
Fill out the interface of DenseSet a bit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109562 91177308-0d34-0410-b5e6-96231b3b80d8
enseSet.h
|
90f8795e1c0d43e5b3d6254ff2a3cad533069218 |
27-Jul-2010 |
Chris Lattner <sabre@nondot.org> |
make lookup failures not fatal. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109530 91177308-0d34-0410-b5e6-96231b3b80d8
copedHashTable.h
|
978bb87f8871b953d159c2846b379bc93be27972 |
27-Jul-2010 |
Duncan Sands <baldrick@free.fr> |
In commit 91421, isPod was changed from false to true for these value handles. Change it back again: destructors and constructors need to be run. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109498 91177308-0d34-0410-b5e6-96231b3b80d8
alueMap.h
|
1ec9e6a5dccbc6042d25f03f224d351f15812aec |
24-Jul-2010 |
Chris Lattner <sabre@nondot.org> |
add a new NullablePtr class which makes it more obvious in API that a pointer can be null, forcing clients to think about it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109348 91177308-0d34-0410-b5e6-96231b3b80d8
ullablePtr.h
|
a23650bc0161716aadba97e2e5f92eac7c11d80b |
23-Jul-2010 |
Chris Lattner <sabre@nondot.org> |
give StringMap a new ctor which allows you to initialize it with an existing allocator. The interesting use case of this is that it allows "StringMap<whatever, BumpPtrAllocator&>" for when you want to allocate out of a preexisting bump pointer allocator owned by someone else. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109213 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
d69121b3c5c9c89ab9ad7c9c71b13b3a1fcde40d |
23-Jul-2010 |
Chris Lattner <sabre@nondot.org> |
modernize stringset interface git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109212 91177308-0d34-0410-b5e6-96231b3b80d8
tringSet.h
|
38e59891ee4417a9be2f8146ce0ba3269e38ac21 |
15-Jul-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Don't pass StringRef by reference. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108366 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
PInt.h
|
0764e39a921ae424e2ac8c7ba114b67040eba8f6 |
13-Jul-2010 |
Eric Christopher <echristo@apple.com> |
80-columns git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108228 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableIntervalMap.h
riple.h
|
d6afb09a0021aea5789053cbe59fe7550915f6ac |
12-Jul-2010 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Add convenience method FoldingSetImpl::InsertNode(Node *N) that asserts if the node is already inserted. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108192 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
18f82a9a5d81c1214714be1b25f3e548030b7e1c |
12-Jul-2010 |
Bill Wendling <isanbard@gmail.com> |
getOrInsertLeaderValue cannot be const because it calls insert. Patch by Xi Wang! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108188 91177308-0d34-0410-b5e6-96231b3b80d8
quivalenceClasses.h
|
2dac4c1b519feaf1ef63514f07fa16aa5dc7d89a |
08-Jul-2010 |
Duncan Sands <baldrick@free.fr> |
Use std::vector rather than SmallVector here because SmallVector causes some versions of gcc to crash when building LLVM. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107869 91177308-0d34-0410-b5e6-96231b3b80d8
ostOrderIterator.h
|
a0994b1a13ef3437f5442b9fec1750b150da175a |
08-Jul-2010 |
Duncan Sands <baldrick@free.fr> |
Do not use std::stack because it causes obscure failures when compiled with MSVC 2010 (PR7367). Instead use a SmallVector. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107867 91177308-0d34-0410-b5e6-96231b3b80d8
ostOrderIterator.h
|
29269d03af6dc3feb69d0230831a059f39c03700 |
07-Jul-2010 |
Chris Lattner <sabre@nondot.org> |
add some triple for minix, patch by Kees van Reeuwijk from PR7582 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107785 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
a71f0e1f2a7d6d2f030f147d6d426e5bb3b56328 |
30-Jun-2010 |
Duncan Sands <baldrick@free.fr> |
Rename NextPowerOfTwo to RoundUpToPowerOfTwo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107297 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
2e502577ab3645ab5c54434671d299e35c2245cc |
30-Jun-2010 |
Duncan Sands <baldrick@free.fr> |
Clarify that the NextPowerOfTwo template is idempotent. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107286 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
2a8bf425bd0aff1a6406805c095d99089a1dfaae |
30-Jun-2010 |
Duncan Sands <baldrick@free.fr> |
Rather than giving SmallPtrSetImpl a member field SmallArray which is magically replaced by a bigger array in SmallPtrSet (by overridding it), instead just use a pointer to the start of the storage, and have SmallPtrSet pass in the value to use. This has the disadvantage that SmallPtrSet becomes bigger by one pointer. It has the advantage that it no longer uses tricky C++ rules, and is clearly correct while I'm not sure the previous version was. This was inspired by g++-4.6 pointing out that SmallPtrSetImpl was writing off the end of SmallArray, which it was. Since SmallArray is replaced with a bigger array in SmallPtrSet, the write was still to valid memory. But it was writing off the end of the declared array type - sounds kind of dubious to me, like it sounded dubious to g++-4.6. Maybe g++-4.6 is wrong and this construct is perfectly valid and correctly compiled by all compilers, but I think it is better to avoid the whole can of worms by avoiding this construct. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107285 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
871dc240d06b40ea2194677d5a85957cbdbbbe60 |
29-Jun-2010 |
Duncan Sands <baldrick@free.fr> |
Fix a buffer overflow noticed by gcc-4.6: zero is written into SmallArray[SmallSize] in the SmallPtrSetIteratorImpl, and this is one off the end of the array. For those who care, right now gcc warns about writing off the end because it is confused about the declaration of SmallArray as having length 1 in the parent class SmallPtrSetIteratorImpl. However if you tweak code to unconfuse it, then it still warns about writing off the end of the array, because of this buffer overflow. In short, even with this fix gcc-4.6 will warn about writing off the end of the array, but now that is only because it is confused. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107200 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
05b0b44f8a7953687e73c9758d3e7851ef339be1 |
29-Jun-2010 |
Duncan Sands <baldrick@free.fr> |
NextPowerOfTwo was already used to ensure that SmallSizePowTwo is a power of two, no need to do it a second time (NextPowerOfTwo is idempotent). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107199 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
dd6f86a28f1ae77ec2a35598f6a7a934dd5d802f |
24-Jun-2010 |
Eric Christopher <echristo@apple.com> |
Silence some unused variable warnings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106778 91177308-0d34-0410-b5e6-96231b3b80d8
alueMap.h
|
27da66db3e3d61e9320c8562d9504f939d884598 |
24-Jun-2010 |
Dan Gohman <gohman@apple.com> |
Add a comment about a thread safety issue in Statistic.h. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106756 91177308-0d34-0410-b5e6-96231b3b80d8
tatistic.h
|
59d52a3dfe90fa119645ee5a4f4c8301ba331f91 |
15-Jun-2010 |
Chris Lattner <sabre@nondot.org> |
disable SmallVectorImpl's copy constructor. This prevents a class of base class slicing bugs reported on irc git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106028 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
edce58fbd94fd8f274b34729c182fc156a2bda37 |
11-Jun-2010 |
John McCall <rjmccall@apple.com> |
Define ContextualFoldingSet, which stores a context parameter to pass down to the Profile method. Currently this only works with the default FoldingSetTraits implementation. The point of this is to allow nodes to not store context values which are only used during profiling. A better solution would thread this value through the folding algorithms, but then those would need to be (1) templated and (2) non-opaque. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@105819 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
345b378309eabd74a7a43f095dca9a4894bc371e |
10-Jun-2010 |
Duncan Sands <baldrick@free.fr> |
Add includes to get ptrdiff_t. This is needed by gcc-4.6 which has done some more header trimming, resulting in cstdef being included by less header files. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@105786 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
mallVector.h
list.h
|
98dc202be01fb34f26d03d4069793974677a4a66 |
09-Jun-2010 |
Rafael Espindola <rafael.espindola@gmail.com> |
Fix a gcc warning: 'class llvm::DAGDeltaAlgorithm' has virtual functions and accessible non-virtual destructor Not sure if this is the best solution, but this class has state and some of the classes that inherit from it also do, so it looks appropriate. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@105675 91177308-0d34-0410-b5e6-96231b3b80d8
AGDeltaAlgorithm.h
|
73c6031a2546ad18ab0b454fe5d711715620d140 |
08-Jun-2010 |
Daniel Dunbar <daniel@zuster.org> |
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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@105612 91177308-0d34-0410-b5e6-96231b3b80d8
AGDeltaAlgorithm.h
|
d164d3d9e74aa099ce7ef86ac0724fe504f7c3f9 |
08-Jun-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Use realloc instead of malloc+memcpy when growing a POD SmallVector. A smart realloc implementation can try to expand the allocated memory block in-place, avoiding the copy. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@105605 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
f2aac4db4ec4eb0f8b070a4f525801798157dfcf |
05-Jun-2010 |
Dan Gohman <gohman@apple.com> |
Implement operator== and operator!= for SetVector. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@105508 91177308-0d34-0410-b5e6-96231b3b80d8
etVector.h
|
63ef367954c0981ec221f183fc0808ba21cb678d |
02-Jun-2010 |
Jim Grosbach <grosbach@apple.com> |
remove trailing whitespace git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@105333 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
160a3bf74d1a2b048f65e2162d038ed96eddde01 |
26-May-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Add StringRef::compare_numeric and use it to sort TableGen register records. This means that our Registers are now ordered R7, R8, R9, R10, R12, ... Not R1, R10, R11, R12, R2, R3, ... git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104745 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
3422cf05a8a4817c6c525ef4d66026761ec590c1 |
22-May-2010 |
John Mosby <ojomojo@gmail.com> |
Trivial change to dump() function for SparseBitVector git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104433 91177308-0d34-0410-b5e6-96231b3b80d8
parseBitVector.h
|
b843d9f833aa474ae700363a445b7409665c4a6e |
17-May-2010 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Optimize empty DenseMap iteration. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103962 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
f1fd2288f36b58b8979761ba09e2a398c6afd110 |
13-May-2010 |
Daniel Dunbar <daniel@zuster.org> |
Fix const ilist_node::get{Prev,Next}Node() to actually compile. Picky, picky. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103723 91177308-0d34-0410-b5e6-96231b3b80d8
list_node.h
|
aa81380353a27d9d216cafdd88df08a5eef43b74 |
12-May-2010 |
Daniel Dunbar <daniel@zuster.org> |
ADT: Add ilist_node::get{Prev,Next}Node, which return the adjacent node or null. - This provides a convenient alternative to using something llvm::prior or manual iterator access, for example:: if (T *Prev = foo->getPrevNode()) ... instead of:: iterator it(foo); if (it != begin()) { --it; ... } - Chris, please review. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103647 91177308-0d34-0410-b5e6-96231b3b80d8
list_node.h
|
7d9663c70b3300070298d716dba6e6f6ce2d1e3e |
11-May-2010 |
Douglas Gregor <dgregor@apple.com> |
Fixes for Microsoft Visual Studio 2010, from Steven Watanabe! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103457 91177308-0d34-0410-b5e6-96231b3b80d8
quivalenceClasses.h
|
ea03e10facd07f0b239dcc3a5e31346686acae3c |
05-May-2010 |
Chris Lattner <sabre@nondot.org> |
Implement rdar://7415680 - Twine integer support lacks greatness Microoptimize Twine's with unsigned and int to not pin their value to the stack. This saves stack space in common cases and allows mem2reg in the caller. A simple example is: void foo(const Twine &); void bar(int x) { foo("xyz: " + Twine(x)); } Before: __Z3bari: subq $40, %rsp movl %edi, 36(%rsp) leaq L_.str3(%rip), %rax leaq 36(%rsp), %rcx leaq 8(%rsp), %rdi movq %rax, 8(%rsp) movq %rcx, 16(%rsp) movb $3, 24(%rsp) movb $7, 25(%rsp) callq __Z3fooRKN4llvm5TwineE addq $40, %rsp ret After: __Z3bari: subq $24, %rsp leaq L_.str3(%rip), %rax movq %rax, (%rsp) movslq %edi, %rax movq %rax, 8(%rsp) movb $3, 16(%rsp) movb $7, 17(%rsp) leaq (%rsp), %rdi callq __Z3fooRKN4llvm5TwineE addq $24, %rsp ret It saves 16 bytes of stack and one instruction in this case. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103107 91177308-0d34-0410-b5e6-96231b3b80d8
wine.h
|
3f5e91565273e3f4639d37ee5a5b856699e8c9e5 |
30-Apr-2010 |
Dan Gohman <gohman@apple.com> |
Update BitVectorTest.cpp to stay in sync with SmallBitVectorTest.cpp, and fix a bug in BitVector's reference proxy class which this exposed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102768 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
6340722d1751841a00e791a44d8f2f5e481b8c61 |
30-Apr-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
SmallBitVector: Rework find_first/find_next and tweak test to test them (at least on 64 bit platforms). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102712 91177308-0d34-0410-b5e6-96231b3b80d8
mallBitVector.h
|
b252fbd179c494b3c6220f6f7e42f3ff5d15bda6 |
30-Apr-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Implement a read/write operator[] for SmallBitVector with a proxy class. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102709 91177308-0d34-0410-b5e6-96231b3b80d8
mallBitVector.h
|
1e44aa0412473297994afb8b707d0326472fd2a4 |
30-Apr-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Make sure SmallBitVector actually uses the small case and fix latent bugs. - We can't use PointerIntPair here since we require the discrimination bit to be in the LSB. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102707 91177308-0d34-0410-b5e6-96231b3b80d8
mallBitVector.h
|
3e6fe5ec17217169cd95ee86515955f7726db008 |
29-Apr-2010 |
Evan Cheng <evan.cheng@apple.com> |
Add DenseMapInfo for int. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102652 91177308-0d34-0410-b5e6-96231b3b80d8
enseMapInfo.h
|
e8ab3bd3a5c53827dff622723f0834a8f641b1e9 |
29-Apr-2010 |
Torok Edwin <edwintorok@gmail.com> |
Fix PR6910. Limit alignment in SmallVector 8, otherwise GCC assumes 16 byte alignment. opetaror new, and malloc only return 8-byte aligned memory on 32-bit Linux, which cause a crash if code is compiled with -O3 (or -ftree-vectorize) and some SmallVector code is vectorized. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102604 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
fd813bc85027b8e4f8dc42b485b254cff210012d |
19-Apr-2010 |
Dan Gohman <gohman@apple.com> |
These functions don't need to access this. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101776 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
ca5e4f8e19f32c9ee6e93bc05c37095fb4cedb26 |
17-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
reenable r101565, removing a problematic assertion. CGSCC can delete nodes in regions of the callgraph that have already been visited. If new CG nodes are allocated to the same pointer, we shouldn't abort, just handle it correctly by assigning a new number. This should restore stability by removing invalidated pointers that *will* be reused from the densemap in the iterator. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101628 91177308-0d34-0410-b5e6-96231b3b80d8
CCIterator.h
|
bde0bb5f882ae708ca70a42bdd3a9805e63f6fb7 |
17-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
building on the new CallGraphSCC abstraction, teach CallGraphSCCPassManager to keep the node entries in scc_iterator up to date instead of dangling as the SCC mutates. This is a really terrible problem which was causing -g to affect codegen because it would permute the memory image of the compiler process. Thanks to Dale for expertly hunting it down. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101565 91177308-0d34-0410-b5e6-96231b3b80d8
CCIterator.h
|
a3dfc646b4d772979f8994c07eeee6af57480d34 |
17-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
move ReplaceNode out of line, rename scc_iterator::fini -> isAtEnd(). No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101562 91177308-0d34-0410-b5e6-96231b3b80d8
CCIterator.h
|
8b146240a2883fdbf0a7ad856df84a56c6f0d3d1 |
16-Apr-2010 |
Chris Lattner <sabre@nondot.org> |
tidy up git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101548 91177308-0d34-0410-b5e6-96231b3b80d8
CCIterator.h
|
07b3a041b45f376ea182d8b4ade7b01bfaa9ab2c |
14-Apr-2010 |
Daniel Dunbar <daniel@zuster.org> |
Fix -Asserts warnings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@101191 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
b61e94fcf898a8b3b6bf7a8a18b390b82ff037f5 |
11-Apr-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
utostr isn't going away too soon, try to make it slightly smaller. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100977 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
76e94e541c867a1d61d9be6555d3c17cd09b3914 |
09-Apr-2010 |
Ted Kremenek <kremenek@apple.com> |
Move 'Optional' class from Clang to LLVM/ADT. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100889 91177308-0d34-0410-b5e6-96231b3b80d8
ptional.h
|
e05678132345eb8a632362dbd320ee7d36226e67 |
09-Apr-2010 |
Dan Gohman <gohman@apple.com> |
Add variants of ult, ule, etc. which take a uint64_t RHS, for convenience. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100824 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
a03948633ae848af9cecce0a8042c7db4dac44d9 |
06-Apr-2010 |
Douglas Gregor <dgregor@apple.com> |
Remove MaybeOwningPtr. We're going to use reference-counting instead. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100499 91177308-0d34-0410-b5e6-96231b3b80d8
wningPtr.h
|
2ee35226e5940eed3d360fcfb37be7f3a4866f27 |
05-Apr-2010 |
Douglas Gregor <dgregor@apple.com> |
Introduce MaybeOwningPtr, a smart pointer that may (or may not) have ownership over the pointer it contains. Useful when we want to communicate ownership while still having several clients holding on to the same pointer *without* introducing reference counting. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100463 91177308-0d34-0410-b5e6-96231b3b80d8
wningPtr.h
|
6ce57922bb8d550d91c8133d1fd27dd3eaf24c22 |
30-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Introduce namespace-scope functions to enable LLVM statistics without passing the command-line parameter "-stats" and to print the resulting statistics without calling llvm_shutdown(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99893 91177308-0d34-0410-b5e6-96231b3b80d8
tatistic.h
|
8260ea5c6c15345e00ced1398b03e6886145e45c |
30-Mar-2010 |
Ted Kremenek <kremenek@apple.com> |
Change PointerUnionX::getFromOpaqueValue() to be declared 'static inline' instead of 'static'. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99892 91177308-0d34-0410-b5e6-96231b3b80d8
ointerUnion.h
|
a7a33fd95f15428b7030ef1b764fcf924d5199c8 |
26-Mar-2010 |
Dan Gohman <gohman@apple.com> |
Fix SmallVector's insert to handle non-random-access iterators. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99633 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
8ee076961219c9066b651ff686c450d92e81c27a |
24-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
Add a method to get a StringMapEntry from a pointer to the string data it contains (similar to GetStringMapEntryFromValue). Patch by Greg Clayton! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99371 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
d720712f670d98a9128991f2261e58808ec96c12 |
18-Mar-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Fix a name clash that was breaking MSVC builds. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98852 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
74cdc75313974456d1f040ca2dca33f16a18f9b3 |
18-Mar-2010 |
Dan Gohman <gohman@apple.com> |
Fix a bug found by inspection; in the __GNUC__ code, the alignment doesn't apply to the type, only to the variable, so subsequent uses of U which expect it to be aligned weren't actually aligned. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98843 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
8bba4dd9bcaf8ba63be24dbcbbed6ff35504e9e5 |
18-Mar-2010 |
Andrew Lenharth <andrewl@lenharth.org> |
Nick wants these alphabetized git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98840 91177308-0d34-0410-b5e6-96231b3b80d8
quivalenceClasses.h
|
c93b4cff89d85a13d4eaf1551af9fab276b88450 |
18-Mar-2010 |
Dan Gohman <gohman@apple.com> |
Add the ability to "intern" FoldingSetNodeID data into a BumpPtrAllocator-allocated region to allow it to be stored in a more compact form and to avoid the need for a non-trivial destructor call. Use this new mechanism in ScalarEvolution instead of FastFoldingSetNode to avoid leaking memory in the case where a FoldingSetNodeID uses heap storage, and to reduce overall memory usage. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98829 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
7e1b037edd0d5ad2b54f530f1ba0d2f64c9ca686 |
17-Mar-2010 |
Andrew Lenharth <andrewl@lenharth.org> |
missing include git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98752 91177308-0d34-0410-b5e6-96231b3b80d8
quivalenceClasses.h
|
730f743c013c85d15d902a137aef8f38916af616 |
16-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
work around an MSVC2010 bug, PR6504 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98653 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
5c213dc78cc717c30908212049e35cfdb950fa24 |
12-Mar-2010 |
Jeffrey Yasskin <jyasskin@google.com> |
Free DbgScopes in DwarfDebug::endFunction(). Also increased the const-ness of several fields to make it easier to figure out where bugs might be creeping in. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98358 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
ccb4f2d813380d8cf139062b8c829e4b8b322c0d |
08-Mar-2010 |
Andrew Lenharth <andrewl@lenharth.org> |
Iterator traits and swap. closes PR6548 and PR6549 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97974 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
enseSet.h
|
1ddcf35b68a4c326c548272134611ce54b1afd25 |
08-Mar-2010 |
Douglas Gregor <dgregor@apple.com> |
Revert r97917, which was causing Clang Debug self-host failures. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97932 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
9467f0e3bd2b0fece0d50a6d92f996b4f3952096 |
07-Mar-2010 |
Jeffrey Yasskin <jyasskin@google.com> |
Roll r97906 forward again, without double-deleting CompileUnit::IndexTyDie. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97917 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
8c42ca937453bd216b68baff1f32b47430d5b374 |
07-Mar-2010 |
Jeffrey Yasskin <jyasskin@google.com> |
_2_ gcc crashes, ah, ah, ah... (Rolling back r97906.) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97909 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
f7399bf929f401d4e1aa40f4f7a2265e2cdedc39 |
07-Mar-2010 |
Jeffrey Yasskin <jyasskin@google.com> |
Avoid leaking CompileUnits and DbgScopes from DwarfDebug. Leaks found by Valgrind! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97906 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
0ddda3b8c6acc85761636ad46981395fdbe8daba |
06-Mar-2010 |
Chris Lattner <sabre@nondot.org> |
make APFloat::toString be const. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97883 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
a84f3d9a978d0cfdf0e4b5fbd1095a965a30110b |
03-Mar-2010 |
Evan Cheng <evan.cheng@apple.com> |
TopLevelMap[] reference is a pointer. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97661 91177308-0d34-0410-b5e6-96231b3b80d8
copedHashTable.h
|
d5e9e5f22176fbd0d18a558901e2786106fd03f5 |
02-Mar-2010 |
Evan Cheng <evan.cheng@apple.com> |
Allow specialization of ScopedHashTable of non-default DenseMapInfo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97594 91177308-0d34-0410-b5e6-96231b3b80d8
copedHashTable.h
|
7f05aa72f970bdb92c831a83b02197b8699f7635 |
02-Mar-2010 |
Evan Cheng <evan.cheng@apple.com> |
Add count() and lookup() to ScopedHashTable. It might be useful to get information out of the hash table. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97542 91177308-0d34-0410-b5e6-96231b3b80d8
copedHashTable.h
|
1e7ad3993d8700488895fa372ecad55443f53485 |
28-Feb-2010 |
John McCall <rjmccall@apple.com> |
Add an override to StringRef::getAsInteger which parses into an APInt. It gets its own implementation totally divorced from the (presumably performance-sensitive) routines which parse into a uint64_t. Add APInt::operator|=(uint64_t), which is situationally much better than using a full APInt. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97381 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
tringRef.h
|
e12b73816b50bbe2cc54b8005d86c95413b4f465 |
28-Feb-2010 |
John McCall <rjmccall@apple.com> |
Teach APFloat how to create both QNaNs and SNaNs and with arbitrary-width payloads. APFloat's internal folding routines always make QNaNs now, instead of sometimes making QNaNs and sometimes SNaNs depending on the type. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97364 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
PInt.h
|
a70f28ce7dc85d0075a7d86da5d7987b6e306bc6 |
23-Feb-2010 |
Wesley Peck <peckw@wesleypeck.com> |
Adding the MicroBlaze backend. The MicroBlaze is a highly configurable 32-bit soft-microprocessor for use on Xilinx FPGAs. For more information see: http://www.xilinx.com/tools/microblaze.htm http://en.wikipedia.org/wiki/MicroBlaze The current LLVM MicroBlaze backend generates assembly which can be compiled using the an appropriate binutils assembler. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96969 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
fb76fe09297ee292129e44d723127f2408602a3d |
22-Feb-2010 |
Dan Gohman <gohman@apple.com> |
Fix various doxygen warnings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96779 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
ebc14f7783fc6908a0e445a3d45de3be830f79b3 |
17-Feb-2010 |
Daniel Dunbar <daniel@zuster.org> |
Fix comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96498 91177308-0d34-0410-b5e6-96231b3b80d8
eltaAlgorithm.h
|
252968a76f4b34aa26aa33d447d0256a148ad554 |
12-Feb-2010 |
Bob Wilson <bob.wilson@apple.com> |
Fix a comment typo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96027 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
e7962c9897cf3ac5fc731702d5e5d8963fc5c723 |
10-Feb-2010 |
Dan Gohman <gohman@apple.com> |
Implement operators |=, &=, and ^= for SmallBitVector, and remove the restriction in BitVector for |= and ^= that the operand must be the same length. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95768 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
mallBitVector.h
|
56a04c0c3438904d7b428be11063de6340d0d1f8 |
08-Feb-2010 |
Daniel Dunbar <daniel@zuster.org> |
ImmutableIntervalMap: Fix for unqualified lookup into dependent base class, done by clang's -fixit! :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95551 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableIntervalMap.h
|
87c06d617917f4a388fbe9db81198e13cde3e431 |
04-Feb-2010 |
Chris Lattner <sabre@nondot.org> |
add support for the sparcv9-*-* target triple to turn on 64-bit sparc codegen. Patch by Nathan Keynes! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95293 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
1d037b0272233aad4fba386eaba2d827e3984401 |
03-Feb-2010 |
Zhongxing Xu <xuzhongxing@gmail.com> |
Remove redundant declaration. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95213 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableIntervalMap.h
|
1c8bd7dc0a9d6de3a4ff850fc5ba15265f2a6d33 |
03-Feb-2010 |
Zhongxing Xu <xuzhongxing@gmail.com> |
Add constructors. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95212 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableIntervalMap.h
|
00f488012c6c44bc6ee35a3078a0063e10f152e3 |
02-Feb-2010 |
Dan Gohman <gohman@apple.com> |
Make DenseSet's erase pass on the return value rather than swallowing it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95127 91177308-0d34-0410-b5e6-96231b3b80d8
enseSet.h
|
769e2ad872538a203072ecdbb1ad9249a711a0d4 |
02-Feb-2010 |
Zhongxing Xu <xuzhongxing@gmail.com> |
Return value on every path. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95075 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableIntervalMap.h
|
fcad6bdc17124ae1e4b93bd405a95c79c365f55d |
02-Feb-2010 |
Zhongxing Xu <xuzhongxing@gmail.com> |
simplify code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95074 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableIntervalMap.h
|
bd4672547687d21c948f6f0d84d0a5012b4cc864 |
02-Feb-2010 |
Zhongxing Xu <xuzhongxing@gmail.com> |
More logic correction: RemoveOverlap should always create new tree. Add a parameter to record whether changes actually happened. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95073 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableIntervalMap.h
|
b413bc1403cc755ae199e1df890301bb70a86d19 |
02-Feb-2010 |
Zhongxing Xu <xuzhongxing@gmail.com> |
Add a lookup method to the IntervalMap. The difference from the original lookup is that if the lookup key is contained in the key, we return the data. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95070 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableIntervalMap.h
|
3a819568ca4ce1fdf04764ff466678e687479921 |
02-Feb-2010 |
Zhongxing Xu <xuzhongxing@gmail.com> |
Fix a bunch of errors in the old logic. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95056 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableIntervalMap.h
|
44eedb980536b91adb6c2add0ba4a02d16041d20 |
02-Feb-2010 |
Zhongxing Xu <xuzhongxing@gmail.com> |
11.8p1: A nested class is a member and as such has the same access rights as any other member. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95047 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
|
746f5b6eb1518986bdac750074cbf1899e459983 |
01-Feb-2010 |
Zhongxing Xu <xuzhongxing@gmail.com> |
Add an immutable interval map, prepared to be used by flat memory model in the analyzer. WIP. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94976 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableIntervalMap.h
mmutableMap.h
mmutableSet.h
|
ddba25ab702063e61430bf9d294ba70fb5fdb046 |
01-Feb-2010 |
Zhongxing Xu <xuzhongxing@gmail.com> |
Simplify code. We can compare TNew with T in one batch. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94973 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
fcb0ee8ffeae12aa866f4e7da12a4dd2a1d0dc35 |
29-Jan-2010 |
Junjie Gu <jgu222@gmail.com> |
Make sure the size is doubled (not 4x). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94845 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
cf220d5b8955a71d364a0a054e8518197bf6df32 |
22-Jan-2010 |
Evan Cheng <evan.cheng@apple.com> |
Add DenseMapInfo for signed long long. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94146 91177308-0d34-0410-b5e6-96231b3b80d8
enseMapInfo.h
|
3ec68f97ead4a2bc339b1b9012ca4cb2c4dd706a |
22-Jan-2010 |
Ted Kremenek <kremenek@apple.com> |
Store flags in bitfields instead of masking them into the pointer for the left child. This leads to some nice conceptually cleanups. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94121 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
mmutableSet.h
|
8767d32e758db3ffef796342a2650f337cf3404a |
22-Jan-2010 |
Ted Kremenek <kremenek@apple.com> |
Tidy up assertion syntax. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94117 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
b357e06f672996400343d38b08014a5b6a7d5b2d |
13-Jan-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Introduce Twine::toStringRef, a variant of toVector which avoids the copy if the twine can be represented as a single StringRef. Use the new methode to simplify some twine users. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93317 91177308-0d34-0410-b5e6-96231b3b80d8
wine.h
|
bf86e5df180139310bf2f0d71bef58e208dce31d |
13-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
add new isSingleStringRef()/getSingleStringRef() methods to twine, and use them to avoid a copy of a string in getNameWithPrefix in the common case. It seems like Value::setName and other places should use this as well? git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93301 91177308-0d34-0410-b5e6-96231b3b80d8
wine.h
|
af2a8361e4e5b45441b6e73c332fb60c36892468 |
13-Jan-2010 |
Chris Lattner <sabre@nondot.org> |
give StringRef a const_iterator member. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93294 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
7dd6107fcc952758ee63d5784a9e7afa9b6dea93 |
11-Jan-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Remove unused string functions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93183 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
7462b5dd99163785480a11a7c999569b349a137c |
11-Jan-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Add StrInStrNoCase, a StringRef version of CStrInCStrNoCase. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93174 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
c30837d6c1ee814ba62e32848e1d2cbfb7385953 |
11-Jan-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Turns out llvm-gcc still uses SplitString with a vector. Add it back until I have a fix. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93163 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
d4f195999a7774611e5f9e457a86f14d5e257324 |
11-Jan-2010 |
Benjamin Kramer <benny.kra@googlemail.com> |
Reimplement getToken and SplitString as "StringRef helper functions" - getToken is modeled after StringRef::split but it can split on multiple separator chars and skips leading seperators. - SplitString is a StringRef::split variant for more than 2 elements with the same behaviour as getToken. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@93161 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
3c37bb8dbe886993dcd8f37dec0d94762393f3d4 |
07-Jan-2010 |
Kovarththanan Rajaratnam <kovarththanan.rajaratnam@gmail.com> |
Fix occurrence typo git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92926 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
ad2cee44e02b4fa8d5888a80e39c01a9604b409e |
05-Jan-2010 |
Dan Gohman <gohman@apple.com> |
Some versions of GCC don't like non-static data members in sizeof in this context. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92731 91177308-0d34-0410-b5e6-96231b3b80d8
mallBitVector.h
|
cb89afc965c66029ae38712d1c52f5bbe4dee942 |
05-Jan-2010 |
Dan Gohman <gohman@apple.com> |
Add a SmallBitVector class, which mimics BitVector but uses only a single pointer (PointerIntPair) member. In "small" mode, the pointer field is reinterpreted as a set of bits. In "large" mode, the pointer points to a heap-allocated object. Also, give BitVector empty and swap functions. And, add some simple unittests for BitVector and SmallBitVector. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92730 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
mallBitVector.h
|
441c8b4ad17c0d029b2247c367111395e7ad068c |
30-Dec-2009 |
Douglas Gregor <dgregor@apple.com> |
Implement edit distance for StringRef git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92309 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
6a09affdf62fccbd190ca6e9cac0cb065b5f2677 |
25-Dec-2009 |
John McCall <rjmccall@apple.com> |
Implement support for converting to string at "natural precision", and fix some major bugs in long-precision conversion. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92150 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
00e65de9d83f846af732e3ace3f48d43d67b13d1 |
24-Dec-2009 |
John McCall <rjmccall@apple.com> |
Add accessors for the largest-magnitude, smallest-magnitude, and smallest-normalized-magnitude values in a given FP semantics. Provide an APFloat-to-string conversion which I am quite ready to admit could be much more efficient. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92126 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
64d3973169781e7dff6bfc073908d5cb9fb21343 |
23-Dec-2009 |
David Greene <greened@obbligato.org> |
Convert debug messages to use dbgs(). Generally this means s/errs/dbgs/g except for certain special cases. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92005 91177308-0d34-0410-b5e6-96231b3b80d8
CCIterator.h
|
6a363782fe4ecba4f0a72c2edf03596004470c4a |
21-Dec-2009 |
Chris Lattner <sabre@nondot.org> |
add a helper ctor. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91819 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
d5b1f8a8426e82990dafc6e3336fefc6635c8fa4 |
21-Dec-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Change StringRef::startswith and StringRef::endswith to versions which are a bit more verbose, but optimize to much shorter code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91817 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
b63bb1615b44bc9e18dec68660d33c04401987b6 |
17-Dec-2009 |
Chris Lattner <sabre@nondot.org> |
tabs -> spaces. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91622 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
b2273d50bc37caabf5aa6703d10c3fe34b6f06cb |
17-Dec-2009 |
Steve Naroff <snaroff@apple.com> |
Fix Windows build breakage... git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91617 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
af15ffb9127dff185b74ff8b37a9d570ca547c61 |
17-Dec-2009 |
Eric Christopher <echristo@apple.com> |
Fix unused variable warning. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91609 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
4eeeb4767ca4e020e7d9aff1be671d2fc6f74b81 |
16-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
Fix one more missing this-> to placate that picky clang++. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91536 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
acf8723b8e531e64abd3be61b4f34e7700c6028d |
16-Dec-2009 |
Chris Lattner <sabre@nondot.org> |
fix more missing this->'s to placate clang++ git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91531 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
2e376a87dee2d10c48908c43037f61b965cec496 |
16-Dec-2009 |
Chris Lattner <sabre@nondot.org> |
Fix a missing this-> that clang++ notices. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91530 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
b3649db1022ef464687df135934c6e743e5c5cb8 |
16-Dec-2009 |
Chris Lattner <sabre@nondot.org> |
now that libsystem no longer uses SmallVector, we can move SmallVectorBase::grow_pod out of line, finally satisfying PR3758. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91529 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
99ea87a48a3a891dbf5f4cb89179610a5f3f84cf |
16-Dec-2009 |
Chris Lattner <sabre@nondot.org> |
factor out the grow() method for all pod implementations into one common function. It is still an inline method, which will be fixed next. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91526 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
2676f183123e1472c8d9d7f6a64f1d50a74e484a |
16-Dec-2009 |
Chris Lattner <sabre@nondot.org> |
pull destroy_range and uninitialized_copy up to the SmallVectorTemplateBase class, which allows us to statically dispatch on isPodLike instead of dynamically. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91523 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
e6e55d79592fa0926175d6b17e3db89b298ada4e |
16-Dec-2009 |
Chris Lattner <sabre@nondot.org> |
sink most of the meat in smallvector back from SmallVectorTemplateCommon down into SmallVectorImpl. This requires sprinking a ton of this->'s in, but gives us a place to factor. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91522 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
de576fa579b4b3077a3c315d6507f13ab71d61ab |
16-Dec-2009 |
Chris Lattner <sabre@nondot.org> |
substantial refactoring of SmallVector, now most code is in SmallVectorTemplateCommon, and there is a new SmallVectorTemplateBase class in between it and SmallVectorImpl. SmallVectorTemplateBase can be specialized based on isPodLike. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91518 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
4a5129c700a76bf5c4b7f2aa9c362496fb6d8bd6 |
15-Dec-2009 |
Chris Lattner <sabre@nondot.org> |
a few improvements: 1. Use std::equal instead of reinventing it. 2. don't run dtors in destroy_range if element is pod-like. 3. Use isPodLike to decide between memcpy/uninitialized_copy instead of is_class. isPodLike is more generous in some cases. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91427 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
10aaf05c304e259dbb853a37d491fdc4ea54c9b1 |
15-Dec-2009 |
Chris Lattner <sabre@nondot.org> |
hoist the begin/end/capacity members and a few trivial methods up into the non-templated SmallVectorBase class. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91426 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
dc2e570411bb1b1345a6b9840050aca823835a81 |
15-Dec-2009 |
Chris Lattner <sabre@nondot.org> |
improve isPodLike to know that all non-class types are pod. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91425 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
4bbf4ee1491637c247e195e19e3e4a8ee5ad72fa |
15-Dec-2009 |
Chris Lattner <sabre@nondot.org> |
Remove isPod() from DenseMapInfo, splitting it out to its own isPodLike type trait. This is a generally useful type trait for more than just DenseMap, and we really care about whether something acts like a pod, not whether it really is a pod. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91421 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
enseMapInfo.h
mmutableList.h
ointerIntPair.h
alueMap.h
|
eb751d8c2da1a9b0d84139e19e20288d9b978451 |
15-Dec-2009 |
John McCall <rjmccall@apple.com> |
Names from dependent base classes are not found by unqualified lookup. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91407 91177308-0d34-0410-b5e6-96231b3b80d8
list.h
|
d01518630ad165e0bc7d7194abb183abfa93e0d5 |
11-Dec-2009 |
Gabor Greif <ggreif@gmail.com> |
Simplify this class by removing the result cache. This change removes the DefaultConstructible and CopyAssignable constraints on the template parameter T (the first one). The second template parameter (R) is defaulted to be identical to the first and controls the result type. By specifying it to be (const T&) additionally the CopyConstructible constraint on T can be removed. This allows to use StringSwitch e.g. for llvm::Constant instances. Regarding the other review feedback regarding performance because of taking pointers, this class should be completely optimizable like before, since all methods are inline and the pointer dereferencing and result value caching should be possible behind the scenes by the "as-if" rule. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91123 91177308-0d34-0410-b5e6-96231b3b80d8
tringSwitch.h
|
022840e9608207305a2e0488763f06fb1b5ad5e5 |
09-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
DeltaAlgorithm: Add a virtual destructor and home. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90957 91177308-0d34-0410-b5e6-96231b3b80d8
eltaAlgorithm.h
|
e854273892a5fed9a797ed58e472cca2e95fcc33 |
09-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
Remove unneeded ';' and a class/struct mismatch (noticed by clang). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90934 91177308-0d34-0410-b5e6-96231b3b80d8
enseSet.h
|
9000242cca4431a8dd09c83459d56f164294582c |
06-Dec-2009 |
Chris Lattner <sabre@nondot.org> |
remove extraneous comma clang warns about git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90707 91177308-0d34-0410-b5e6-96231b3b80d8
enseSet.h
|
a6d5e40e25e6b4fc856fa5cd10a59b8fdf51d9a7 |
03-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add an implementation of the delta debugging algorithm. - This is a pretty slow / memory intensive implementation, and I will likely change it to an iterative model, but it works. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90447 91177308-0d34-0410-b5e6-96231b3b80d8
eltaAlgorithm.h
|
074fe8324dd9533f1cd210091b15719ff67f49c2 |
01-Dec-2009 |
Gabor Greif <ggreif@gmail.com> |
typo git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90236 91177308-0d34-0410-b5e6-96231b3b80d8
tringSwitch.h
|
6c2a7a04da2a6c8829b82cecb355b718f350c4f1 |
01-Dec-2009 |
Gabor Greif <ggreif@gmail.com> |
demonstrate usage of Cases() mapping several strings to the same value; remove trailing spaces git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90230 91177308-0d34-0410-b5e6-96231b3b80d8
tringSwitch.h
|
b5eedf2c1c4d3b7ccd6e0db6c0d1cafb502d5adc |
30-Nov-2009 |
Tobias Grosser <grosser@fim.uni-passau.de> |
Remove forgotten ShortNames in Trie and CompilationGraph git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90135 91177308-0d34-0410-b5e6-96231b3b80d8
rie.h
|
983c7fe847dd3f46945f0117ab19345b9c68e88f |
21-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Allow SmallString to implicitly convert to StringRef. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89529 91177308-0d34-0410-b5e6-96231b3b80d8
mallString.h
|
90c583fff0535d441717425ad4428d85eb2a00a9 |
19-Nov-2009 |
Benjamin Kramer <benny.kra@googlemail.com> |
cstdlib is not automatically included with StringRef anymore. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89359 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
1acdcd5b0d0893e6c9a3b7618a7facf9e2d5dec6 |
19-Nov-2009 |
Benjamin Kramer <benny.kra@googlemail.com> |
Remove the now obsolete algorithm include from StringRef.h. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89354 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
2fe05d80d396b6ca0bdc66ec17732b8c514d575e |
19-Nov-2009 |
Torok Edwin <edwintorok@gmail.com> |
Workaround PR5482, because all the gcc versions that I had were miscompiling StringRef: 4.2.4, 4.3.4, 4.4.2. The workaround is to use a local min/max implementation that takes an integer param, and not a reference to integer param (like std::min does). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89352 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
cc9fa81fe1675b29fa813945c52abee692229143 |
19-Nov-2009 |
Edward O'Callaghan <eocallaghan@auroraux.org> |
Add PS3 Triple class, Credit to John Thompson. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89339 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
b80077aae9fe51af78e6e25e26d09bf8efcd8244 |
19-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Twine: Stores kinds as uchar instead of bitfield to be friendlier to the optimizer. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89278 91177308-0d34-0410-b5e6-96231b3b80d8
wine.h
|
51cdac02c4125b8545728eb30ab5f54e437d6377 |
17-Nov-2009 |
Viktor Kutuzov <vkutuzov@accesssoftek.com> |
Added getArchNameForAssembler method to the Triple class for which returns OS and Vendor independent target assembler arch. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89122 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
2cd8abbf8631921c744d021214dd21998a25a946 |
17-Nov-2009 |
Nuno Lopes <nunoplopes@sapo.pt> |
add Case() with 5 args git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89099 91177308-0d34-0410-b5e6-96231b3b80d8
tringSwitch.h
|
4a20c7a0a9ffa2b60668b1b8c39e550531dbcbb1 |
17-Nov-2009 |
Duncan Sands <baldrick@free.fr> |
1. Allow SCCIterator to work with GraphT types that are constant. 2. Allow SCCIterator to work with inverse graphs. 3. Fix an incorrect comment in GraphTraits.h (the type in the comment was given as GraphType* when it is actually const GraphType &). Patch by Patrick Alexander Simmons. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89091 91177308-0d34-0410-b5e6-96231b3b80d8
raphTraits.h
CCIterator.h
|
4c269e2feb230d4380c0b3cd72da517bd2222023 |
16-Nov-2009 |
Eric Christopher <echristo@apple.com> |
Fix unused variables warnings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@88977 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
9806f833a6697b835f1c795a1bd2f26a84d49d3c |
15-Nov-2009 |
Chris Lattner <sabre@nondot.org> |
add a version of array_pod_sort that takes a custom comparator function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@88861 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
e0fb75d5864c0eef0464b216ac46bc1642469508 |
15-Nov-2009 |
Edward O'Callaghan <eocallaghan@auroraux.org> |
Add PSP OS Target to Triple, Credit to Bruno Cardoso Lopes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@88849 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
24f8e29b4efe70496474c6d43aa6abfa27c21511 |
13-Nov-2009 |
Dan Gohman <gohman@apple.com> |
Use .data() instead of .c_str() when nul-termination is not needed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@88703 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
c78c0c99a0fe1703ae72fc51e440aaa8e4e19e91 |
13-Nov-2009 |
Rafael Espindola <rafael.espindola@gmail.com> |
Switch to smallvector. Also fix issue with using unsigend for MaxSplit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@87068 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
5ccac247263ab62975f3b72421fc783f10ccf5f6 |
13-Nov-2009 |
Rafael Espindola <rafael.espindola@gmail.com> |
Add a new split method to StringRef that puts the substrings in a vector. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@87058 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
89fccca4b01f148a7244f47e5a484cd793a1c30b |
12-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
StringRef(const char*) should not be used to turn null pointers into empty strings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@87031 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
05872ea804cdc9534960b30d28a391928c61481a |
12-Nov-2009 |
Benjamin Kramer <benny.kra@googlemail.com> |
Add compare_lower and equals_lower methods to StringRef. Switch all users of StringsEqualNoCase (from StringExtras.h) to it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@87020 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
a8333d3d107df1e0b6bde986ed0532915e154b65 |
11-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add StringRef::split(StringRef), to complement StringRef::split(char). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86803 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
3691393b86c6849525dcdfb096d9da816ac1545e |
11-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add Triple::str() which returns the contents of the Triple as a string, as a more readable alternative to getTriple(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86773 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
64066bd8b593082f622bbc25716938a453363d2f |
11-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add From arguments to StringRef search functions, and tweak doxyments. Also, add unittests for find_first_of and find_first_not_of. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86770 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
81cf4325698b48b02eddab921ac333c7f25005c3 |
10-Nov-2009 |
Jeffrey Yasskin <jyasskin@google.com> |
Fix DenseMap iterator constness. This patch forbids implicit conversion of DenseMap::const_iterator to DenseMap::iterator which was possible because DenseMapIterator inherited (publicly) from DenseMapConstIterator. Conversion the other way around is now allowed as one may expect. The template DenseMapConstIterator is removed and the template parameter IsConst which specifies whether the iterator is constant is added to DenseMapIterator. Actually IsConst parameter is not necessary since the constness can be determined from KeyT but this is not relevant to the fix and can be addressed later. Patch by Victor Zverovich! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86636 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
38424c9b5d464d262aa05adfc899285f86b43275 |
10-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add StringSwitch::Cases overloads, for matching multiple strings to a single value. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86618 91177308-0d34-0410-b5e6-96231b3b80d8
tringSwitch.h
|
2928c83b010f7cfdb0f819199d806f6942a7d995 |
06-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Pass StringRef by value. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86251 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
tringRef.h
riple.h
|
6a66b388469f045c9fcff839595900c9f1512177 |
06-Nov-2009 |
Douglas Gregor <dgregor@apple.com> |
Add a bunch of missing "template" keywords to disambiguate dependent template names. GCC eats this ill-formed code, Clang does not. I already filed PR5404 to improve recovery in this case git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86204 91177308-0d34-0410-b5e6-96231b3b80d8
ointerUnion.h
|
0c8ae782cb966068f8317f8225633e2f4720ccb7 |
06-Nov-2009 |
Douglas Gregor <dgregor@apple.com> |
Make a few more LLVM headers parsable as standalone headers. Fix some problems with the hidden copy constructors for ImmutableMap/ImmutableSet found by Clang++. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86186 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
mmutableSet.h
riorityQueue.h
rie.h
|
7a8b33a9a4da1724a652585ad805ea84a59b90e7 |
29-Oct-2009 |
Zhongxing Xu <xuzhongxing@gmail.com> |
add newline to make cl.exe happy. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85483 91177308-0d34-0410-b5e6-96231b3b80d8
tringSwitch.h
|
f25cf3d56f54a1f736db066924e6db886b3f5f3d |
29-Oct-2009 |
Douglas Gregor <dgregor@apple.com> |
A switch-on-string-literal construct that is a nice alternative to cascading "ifs" of strcmps/memcmps. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85459 91177308-0d34-0410-b5e6-96231b3b80d8
tringSwitch.h
|
c5a75523eff46fe3880b94ae0fd22a1e01c27f28 |
28-Oct-2009 |
Evan Cheng <evan.cheng@apple.com> |
Remove getIEEEFloatParts and getIEEEDoubleParts. They are not needed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85358 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
99ebfa5f6c6f24fdce4cdd3de1adbc4a282db337 |
27-Oct-2009 |
Evan Cheng <evan.cheng@apple.com> |
Add new APFloat methods that return sign, exp, and mantissa of ieee float and double values. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85318 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
fe134fe9e5673d63b4b80392adcc5a3df928475f |
27-Oct-2009 |
Mike Stump <mrs@apple.com> |
Fix VS build, patch by Marius Wachtler. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85198 91177308-0d34-0410-b5e6-96231b3b80d8
alueMap.h
|
8b67f774e9c38b7718b2b300b628388f966df4e0 |
26-Oct-2009 |
Chandler Carruth <chandlerc@gmail.com> |
Move DataTypes.h to include/llvm/System, update all users. This breaks the last direct inclusion edge from System to Support. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85086 91177308-0d34-0410-b5e6-96231b3b80d8
quivalenceClasses.h
oldingSet.h
mmutableList.h
mmutableSet.h
mallPtrSet.h
parseBitVector.h
tringExtras.h
wine.h
|
4ab74cdc124af6b4f57c2d2d09548e01d64a1f34 |
23-Oct-2009 |
Jeffrey Yasskin <jyasskin@google.com> |
Fix stylistic and documentation problems in ValueMap found by Nick Lewycky and Evan Cheng. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84967 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
alueMap.h
|
71a5c22c2b635ea903c3ae7d2695ca649b38726f |
23-Oct-2009 |
Jeffrey Yasskin <jyasskin@google.com> |
Try r84890 again (adding ValueMap<>), now that I've tested the compile on gcc-4.4. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84902 91177308-0d34-0410-b5e6-96231b3b80d8
alueMap.h
|
abc5ac728961cb23b1041a3466fe2eb4521603c3 |
23-Oct-2009 |
Eric Christopher <echristo@apple.com> |
size_t, not unsigned here to silence a warning. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84900 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
a0b0562a35fe46786eb3974fc67da8cd4f3a272a |
22-Oct-2009 |
Benjamin Kramer <benny.kra@googlemail.com> |
Random include cleanup. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84898 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
a84c9db467ce55e68464e6a099dcfe934b513a2a |
22-Oct-2009 |
Jeffrey Yasskin <jyasskin@google.com> |
Revert r84890, which broke the linux build. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84892 91177308-0d34-0410-b5e6-96231b3b80d8
alueMap.h
|
e0a234029b1b65f21169536f4c45e83743ed3cfa |
22-Oct-2009 |
Jeffrey Yasskin <jyasskin@google.com> |
Add a ValueMap<ValueOrSubclass*, T> type. ValueMap<Value*, T> is safe to use even when keys get RAUWed and deleted during its lifetime. By default the keys act like WeakVHs, but users can pass a third template parameter to configure how updates work and whether to do anything beyond updating the map on each action. It's also possible to automatically acquire a lock around ValueMap updates triggered by RAUWs and deletes, to support the ExecutionEngine. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84890 91177308-0d34-0410-b5e6-96231b3b80d8
alueMap.h
|
3a8ff4c8b67d12689cb5fc9c0e9606f4530e6f41 |
18-Oct-2009 |
Eric Christopher <echristo@apple.com> |
More warnings patrol: Another unused argument and more implicit conversions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84382 91177308-0d34-0410-b5e6-96231b3b80d8
enseMapInfo.h
|
9bd34602fbe945cc2ed81f8f8ac7de59f4679038 |
17-Oct-2009 |
Daniel Dunbar <daniel@zuster.org> |
Move UnescapeString to a static function for its sole client; its inefficient and broken. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84358 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
ca107c5c1871e38f475224db03da5b90f9fccef2 |
17-Oct-2009 |
Daniel Dunbar <daniel@zuster.org> |
Remove llvm::EscapeString, raw_ostream::write_escaped is much faster. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84357 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
4dee7fd2c2cb3fabddf99a184abe41dbc0bd4085 |
17-Oct-2009 |
Daniel Dunbar <daniel@zuster.org> |
Move StringMap's string has function into StringExtras.h git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84344 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
cc4287a374a33fb03ef41b92f74783e31ef47650 |
16-Oct-2009 |
Chris Lattner <sabre@nondot.org> |
Add half precision floating point support (float16) to APFloat, patch by Peter Johnson! (PR5195) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84239 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
a43fc3452b4c5a853054b6b671eacbdd05039130 |
16-Oct-2009 |
Chris Lattner <sabre@nondot.org> |
add haiku support, patch by Paul Davey! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84238 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
d10e68c2cb61f2c9569ca80e1c54b2e40ee066d2 |
14-Oct-2009 |
Dan Gohman <gohman@apple.com> |
Delete bogus semicolons. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84132 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
41b5adf20208f46e4b1104d6d473710fbfa61eb9 |
14-Oct-2009 |
Eric Christopher <echristo@apple.com> |
Remove a bunch of unused arguments from functions, silencing a warning. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84130 91177308-0d34-0410-b5e6-96231b3b80d8
enseMapInfo.h
|
9688079e07dce7748d14a761d52732add634ba4c |
13-Oct-2009 |
Ted Kremenek <kremenek@apple.com> |
Provide a mode for ImmutableMap/ImmutableSet to not automatically canonicalize the internal functional AVL trees. This should speedup clients that use ImmutableMap/ImmutableSet but don't require fast comparisons of maps. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84010 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
mmutableSet.h
|
c411c4be1e64f9d6bcec230222bb19f8e037c491 |
13-Oct-2009 |
Chris Lattner <sabre@nondot.org> |
remove dead header. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83943 91177308-0d34-0410-b5e6-96231b3b80d8
ashExtras.h
|
cbc7cc63b6c7ee1008f92064388c37327c183328 |
13-Oct-2009 |
Dan Gohman <gohman@apple.com> |
Add a ceilLogBase2 function to APInt. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83932 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
127445818efd810b138dd5362129ab3c7f8b9963 |
07-Oct-2009 |
Torok Edwin <edwintorok@gmail.com> |
Add a comment explaining how DenseMap::insert works, because it is not intuitive. It does NOT update the value if the key is already in the map, it also returns false if the key is already in the map, regardless if the value matched. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83458 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
835b142edd2a3da6d0b7a4e47d50408953a49db4 |
01-Oct-2009 |
Dan Gohman <gohman@apple.com> |
Don't use identifiers that start with an underscore followed by a capital letter, which invokes undefined behavior. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83206 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
1e9a727f1058c9e8f90eae9ac656214265244f7f |
29-Sep-2009 |
Devang Patel <dpatel@apple.com> |
Create empty StringRef is incoming cstring is NULL. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83082 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
27dba671c3f158a33c8cbdf5196a6fd16489be03 |
22-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Switch FoldingSet::AddString to StringRef based API. - This also fixes a dereference of std::string::end, which makes MSVC unhappy and was causing all the static analyzer clang tests to fail. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82517 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
c936fe8cb356931f23e6f17ce1bd5789eeae1ecb |
21-Sep-2009 |
Chris Lattner <sabre@nondot.org> |
write rfind in terms of npos as daniel requested git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82414 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
05a32c8ab118d9c92dc9b4ecaa7a6fed67241215 |
20-Sep-2009 |
Chris Lattner <sabre@nondot.org> |
move a couple non-trivial methods out of line, add new find_first_of/find_first_of methods. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82347 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
db513bc0963fbf372f898f8b94fc13994663c0c6 |
20-Sep-2009 |
Chris Lattner <sabre@nondot.org> |
add size_t and a version of rfind that allows specification of where to scan from. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82343 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
63c6b7dc67f0061340c0701f3d5b1de142f58cec |
20-Sep-2009 |
Chris Lattner <sabre@nondot.org> |
add some more overloads of StringRef::getAsInteger for common and useful integer types. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82338 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
3670a01d0be3bab1aa5856fea02a854aee2b65d6 |
20-Sep-2009 |
Chris Lattner <sabre@nondot.org> |
add a simple c_str() method to SmallString. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82337 91177308-0d34-0410-b5e6-96231b3b80d8
mallString.h
|
cea1438cf59c7cd3a632d61d78e68589315510d3 |
19-Sep-2009 |
Chris Lattner <sabre@nondot.org> |
provide a "strtoull" operation that works on StringRef's. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82322 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
2fed70daaf6cf77ec62166041fef11ba7cf68173 |
17-Sep-2009 |
John McCall <rjmccall@apple.com> |
Fix a few places where PointerIntPair was using PointerLikeTypeTraits<PointerTy> instead of the PtrTraits provided. Allows PointerIntPair to contain a PointerUnion safely, as long as the bits add up. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82163 91177308-0d34-0410-b5e6-96231b3b80d8
ointerIntPair.h
|
d7bd78e36e1d3adfc90a4f95b2cc849d38af1b24 |
17-Sep-2009 |
Chris Lattner <sabre@nondot.org> |
add a version of the APFloat constructor that initializes to 0.0 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82110 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
e65512809a4144c17538aac4cc59fac6d325a7e4 |
17-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add StringRef::{rfind, rsplit} git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82087 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
75144f93eb7e4dbf22d308d21581ae255dd520c6 |
15-Sep-2009 |
Dan Gohman <gohman@apple.com> |
Fix apostrophos. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81856 91177308-0d34-0410-b5e6-96231b3b80d8
mallSet.h
|
270fc1077b07d7de1adbc3016d566d1757273b63 |
15-Sep-2009 |
Chris Lattner <sabre@nondot.org> |
switch scciterator to use DenseMap instead of std::map git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81834 91177308-0d34-0410-b5e6-96231b3b80d8
CCIterator.h
|
724f6751442e2006856a9365ef3d3bc6f1b31c98 |
11-Sep-2009 |
Chris Lattner <sabre@nondot.org> |
give densemap iterators real iterator traits. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81538 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
baf9b562309ae0f82774a6a3b4ffb9417a43a032 |
09-Sep-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add Triple::getArchTypeForDarwinArchName, which converts a "Darwin" architecture name (e.g. "ppc") to the appropriate constant. Also, StringRefize additional Triple constructor. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81274 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
8ecbe8d974e1c1f778207b87dcdf887060f5c699 |
06-Sep-2009 |
Duncan Sands <baldrick@free.fr> |
Mark constants as unsigned, as pointed out by icc warnings (#174). Patch by Erick Tryzelaar. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81111 91177308-0d34-0410-b5e6-96231b3b80d8
enseMapInfo.h
|
59bf4fcc0680e75b408579064d1205a132361196 |
06-Sep-2009 |
Duncan Sands <baldrick@free.fr> |
Public and private corrections, warned about by icc (#304). Patch by Erick Tryzelaar. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81107 91177308-0d34-0410-b5e6-96231b3b80d8
ndexedMap.h
parseBitVector.h
list.h
list_node.h
|
ee3d6fd219da0e528ddfc170c6058bd78473eccc |
05-Sep-2009 |
Benjamin Kramer <benny.kra@googlemail.com> |
Delete unused #include. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81076 91177308-0d34-0410-b5e6-96231b3b80d8
parseBitVector.h
|
be5cded586e3a76f3175111019c51c99e38cf8e8 |
05-Sep-2009 |
Benjamin Kramer <benny.kra@googlemail.com> |
Prune #includes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81052 91177308-0d34-0410-b5e6-96231b3b80d8
mallString.h
|
8b8a7fcf68c3bb6f8b90f5f1813ebb391b56e550 |
04-Sep-2009 |
Ted Kremenek <kremenek@apple.com> |
Make ImmutableMap/ImmutableSet quicker by only canonicalizing the tree after an Add or Remove operation complete, and not while building the intermediate tree. This trades a little bit more memory usage for less accesses to the FoldingSet. On a benchmark for the clang static analyzer, this shaves off another 13% of execution time when using field/array sensitivity. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80955 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
mmutableSet.h
|
9bd2acb3b253c77dd1f7680a2e6505039e9c49a5 |
03-Sep-2009 |
Ted Kremenek <kremenek@apple.com> |
Set the 'cached digest' flag after computing the digest for an ImutAVLTree. This was accidentally left out, and essentially caused digest caching to be ignored in ImmutableMap and ImmutableSet (this bug was detected from shark traces that showed ComputeDigest was in the hot path in the clang static analyzer). This reduces the running time of the clang static analyzer on an example benchmark by ~32% for both RegionStore (field-sensitivty) and BasicStore (without field-sensitivity). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80877 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
b97cb9cbe120c50cd78c4d2c0b86d4dd8047b055 |
31-Aug-2009 |
Gabor Greif <ggreif@gmail.com> |
restore semantics of operator* (removing a FIXME I had to introduce in r80224) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80622 91177308-0d34-0410-b5e6-96231b3b80d8
quivalenceClasses.h
|
32859c71d6ba9cd5e38662611a73d82335f4ba41 |
30-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
make DenseMap::clear() early exit if there is nothing to do. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80480 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
7362ce08cb2c1f0b544b18dbc21630fb4baebcfc |
28-Aug-2009 |
Gabor Greif <ggreif@gmail.com> |
eliminate all 80-col violations that I have introduced in my recent checkins (and some others more) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80304 91177308-0d34-0410-b5e6-96231b3b80d8
quivalenceClasses.h
ostOrderIterator.h
CCIterator.h
list.h
|
4c75054b0149750219fe6edb8e25ddd8f7af6920 |
27-Aug-2009 |
Gabor Greif <ggreif@gmail.com> |
re-apply r80197, now that iterator.h is not mentioned any more git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80254 91177308-0d34-0410-b5e6-96231b3b80d8
terator.cmake
terator.h.in
|
f0891be8bdbeeadb39da5575273b6645755fa383 |
27-Aug-2009 |
Gabor Greif <ggreif@gmail.com> |
Clean up the minor mess I caused with removing iterator.h. I shall take care of 80-col violations and the FIXME later. (Thanks goodness that I live in another continent, so the monkeypox did not strike me :-) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80224 91177308-0d34-0410-b5e6-96231b3b80d8
epthFirstIterator.h
quivalenceClasses.h
ostOrderIterator.h
CCIterator.h
TLExtras.h
mallVector.h
list.h
|
fffb7266fe9c5c95d859ff5b3aeb5386cbd0cd1e |
27-Aug-2009 |
Bill Wendling <isanbard@gmail.com> |
--- Reverse-merging r80147 into '.': A include/llvm/ADT/iterator.cmake U autoconf/configure.ac --- Reverse-merging r80161 into '.': U cmake/config-ix.cmake --- Reverse-merging r80171 into '.': U Makefile --- Reverse-merging r80173 into '.': U configure U include/llvm/Config/config.h.in --- Reverse-merging r80180 into '.': A include/llvm/ADT/iterator.h.in Despite common miscomceptions, iterator.h is alive and well. It broke the build bots for several hours. And yet no one bothered to look at them. Gabor and Doug, please review your changes and make sure that they actually build before resubmitting them. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80197 91177308-0d34-0410-b5e6-96231b3b80d8
terator.cmake
terator.h.in
|
c42afd7946893f90aa701272316c22ae5143db89 |
27-Aug-2009 |
Gabor Greif <ggreif@gmail.com> |
now that include/llvm/ADT/iterator.h.in is not attempted to be built, its prerequisite can go away too git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80180 91177308-0d34-0410-b5e6-96231b3b80d8
terator.h.in
|
a626e16b383e559503df32169f76f6ab9e5a7b37 |
26-Aug-2009 |
Gabor Greif <ggreif@gmail.com> |
nobody includes llvm/ADT/iterator.h any more, so get rid of this monstrosity. iterator.h.in is scheduled for deletion in my working copy, but I wait till I see that configure gets regenerated, as it depends on it. I'll commit then. There are still some AC_* tests in the configure.ac dealing with iterators, those can be zapped probably too. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80147 91177308-0d34-0410-b5e6-96231b3b80d8
terator.cmake
|
7309be6735666143bd9835b275dc8501617a2591 |
26-Aug-2009 |
Gabor Greif <ggreif@gmail.com> |
Remove all the LLVM_COMPACTIFY_SENTINELS-related macro magic as discussed with Chris on IRC. Anybody wanting to debug sentinel dereferencing problems must revert this patch and perform the indicated modifications. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80128 91177308-0d34-0410-b5e6-96231b3b80d8
list.h
list_node.h
|
e1182b5599f11778286f027eb536d7ddf7657eda |
26-Aug-2009 |
Mike Stump <mrs@apple.com> |
Allow unsigned long long DenseMapInfo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80118 91177308-0d34-0410-b5e6-96231b3b80d8
enseMapInfo.h
|
be1f788676ff6a71bc0324ac38af7626fdcf92b2 |
26-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
some mips and some sparc compilers apparently predefine mips and sparc respectively. Just overrule them :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80072 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
2600ca8b3f3602d0904289eeed3d26f3d7aad2ae |
25-Aug-2009 |
Gabor Greif <ggreif@gmail.com> |
re-committing yesterday's r79938. This time there is no additional include of llvm/Config/config.h at all. Instead I use a hard-coded preprecessor symbol: LLVM_COMPACTIFY_SENTINELS (should this work on the self-hosting buildbot, then cleanups come next) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80035 91177308-0d34-0410-b5e6-96231b3b80d8
list.h
list_node.h
|
f63097f223459a2f1125ab68afd61b364eda9312 |
25-Aug-2009 |
Bill Wendling <isanbard@gmail.com> |
--- Reverse-merging r79938 into '.': U include/llvm/BasicBlock.h U include/llvm/ADT/ilist_node.h U include/llvm/ADT/ilist.h U include/llvm/CodeGen/SelectionDAG.h U include/llvm/CodeGen/MachineFunction.h U include/llvm/CodeGen/MachineBasicBlock.h U include/llvm/Function.h Revert r79938. It was causing self-hosting build failures. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79960 91177308-0d34-0410-b5e6-96231b3b80d8
list.h
list_node.h
|
fd7a918e5890a6c0611ab6b3fca7001d16593844 |
24-Aug-2009 |
Gabor Greif <ggreif@gmail.com> |
Resubmit an earlier patch of mine: reduce the size of relevant "ghostly" sentinels by a pointer. This attempt now makes the compactification dependent on the configure variable LLVM_COMPACT_SENTINELS and should not cause any bootstrap failures for llvm-gcc any more. Please note that this is not yet the final version, and (as settled with Chris) I shall take out the autofoo/cmake portions in the next days. This will also lose the assertability on sentinel dereferencing and operator++, but that seems an acceptable price to pay for the simplified build logic. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79938 91177308-0d34-0410-b5e6-96231b3b80d8
list.h
list_node.h
|
688b55b436b4a3a036f0827dc484b5f219ace1a3 |
24-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add llvm::Triple::getArchTypePrefix for getting the intrinsic prefix for an identifier architecture. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79906 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
91021d339004ff5a64c3c9614cff8966899c0c99 |
24-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
remove the dead std::ostream APInt inserter git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79875 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
bbbfa99d3d18fe9f20265305e833666645ada528 |
23-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
remove a few DOUTs here and there. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79832 91177308-0d34-0410-b5e6-96231b3b80d8
CCIterator.h
|
39db3439bfcdca4073dd513879f8ce12ee8c593b |
22-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
Change SmallString::operator{=,+=} to take a StringRef. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79729 91177308-0d34-0410-b5e6-96231b3b80d8
mallString.h
|
7e844f128e0be77154aa08dbf2e828fcd4051604 |
22-Aug-2009 |
Anton Korobeynikov <asl@math.spbu.ru> |
Implement APInt <-> APFloat conversion for IEEE 128-bit floats. This fixes PR2555 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79677 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
5149932068f535e1ff13b91c9669f55718c60a07 |
20-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add a fast path for setName("") on an unnamed value. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79492 91177308-0d34-0410-b5e6-96231b3b80d8
wine.h
|
74db89e30fbd97808786026e56bcf1edb37469c7 |
19-Aug-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Add triple parsing support for TCE. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79461 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
dddfd34e32ff081409e5a1c95b991a898d63dff2 |
19-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
Switch to SmallString::str from SmallString::c_str, and remove SmallString::c_str. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79456 91177308-0d34-0410-b5e6-96231b3b80d8
mallString.h
|
04087d069a17265b964b30e8210262bbdbc4fbec |
19-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add SmallString::str (which returns a StringRef); this is more efficient than c_str(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79453 91177308-0d34-0410-b5e6-96231b3b80d8
mallString.h
|
921be7a6f245f42accaa4f001271cb3f0c513d76 |
19-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
Remove SmallString::append_*int* methods; how many copies of int -> str conversion code do we really need? - S.append_uint(N) can be replaced with 'raw_svector_ostream(S) << N' which is somewhat slower due to the extra set up cost, but still plenty fast (especially if the svector set up cost can be amortized). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79450 91177308-0d34-0410-b5e6-96231b3b80d8
mallString.h
|
c2da6fb3e50902daf670fe83b8b017a2bcba05df |
19-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add SmallVector::{capacity,set_size}. - These allow clients to make use of the extra elements in the vector which have already been allocated, without requiring them to be value initialized. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79433 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
651aa689cc37d5932fac0e096aa8b536f282aa21 |
18-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
Improve Triple to recognize the OS in i386-mingw32. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79359 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
323a3e653340781bad4c4c3245d9b25d5ab02685 |
18-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
Fix pasto in StringRef::count(char) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79356 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
5caba3bcb14fae4b36924463ed2bcf3846f029a9 |
18-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add StringRef::count({char,StringRef}) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79354 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
b2bacd926309a6cd89507b182f5c4ace010884fc |
18-Aug-2009 |
Misha Brukman <brukman+llvm@gmail.com> |
Fixed spelling of MSP430. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79333 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
2447389bac8b4fc1b1edb3240a408a92616f2ca2 |
18-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
Recognize xscale as an ARM arch. - Patch by Yonggang Luo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79315 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
fdb0b7b555aaea054f85f654275fce56e5d7d1d3 |
18-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add Triple matching for pic16 arch and solaris OS. - Patch by Yonggang Luo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79314 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
f70bc559a12c410aefab470f1349922ae7b19307 |
17-Aug-2009 |
Oscar Fuentes <ofv@wanadoo.es> |
Make a declaration consistent with its definition. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79220 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
a15d890c34b5e3a6373c410ebc58453f2d52f43b |
17-Aug-2009 |
Erick Tryzelaar <idadesub@users.sourceforge.net> |
Modify APFloat to take a StringRef instead of a c string. This also adds unit tests to APFloat that mainly tests the string handling of APFloat, but not much else of it's api. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79210 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
689ad6ef3fd2e89394f1e8860dfebfe56b73c3da |
13-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
Convert APint::{fromString,APInt,getBitsNeeded} to use StringRef. - Patch by Erick Tryzelaar, with some edits (and a bug fix) from me. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78885 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
ac55b85438da378bab227fd34167bb0c4a9249aa |
13-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add StringRef::front (with some small tweaks while I was in the area). - Patch by Erick Tryzelaar git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78883 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
a9ad04191cb56c42944b17980b8b2bb2afe11ab2 |
13-Aug-2009 |
Dan Gohman <gohman@apple.com> |
This void is implicit in C++. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78848 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
e2b16504be5b55e6a42819eaf93e0698b529165b |
12-Aug-2009 |
Gabor Greif <ggreif@gmail.com> |
catch a typo and simplify call syntax git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78804 91177308-0d34-0410-b5e6-96231b3b80d8
list.h
|
8e6208304bb1a885bc5970c090c97eaebf8a15f8 |
12-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
add support for mingw64 target triples. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78797 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
dfc17f75e81250f3dcf06938f164481a77a50d60 |
12-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
add a couple of helpers to the Triple class for decoding the darwin version string. This should help consolidate the variety of weird functions we have scattered around the codebase that do stuff like this. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78792 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
0ad7f9bb2f806387e53ffeaf6a564b9a80b962af |
11-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
StringRef: Add find(char) and find(StringRef). Also, regroup functions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78712 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
e36df3fd31a08a41d9ad04fcba182b616b030c9c |
10-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
add a simple back() method to StringRef. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78544 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
094da67bd781708e76ab37c76e7a87d86404be05 |
09-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
STLExtras: Add less_ptr. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78521 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
1eaf39145848ab4b6e3464c32e18f44816d83d1a |
07-Aug-2009 |
Dan Gohman <gohman@apple.com> |
Use std::string() instead of std::string(""). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78364 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
c9af366fc39d657b7d416d16988265d86a641184 |
05-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add StringRef::endswith git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78197 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
3c2d4bf97fa96fe171883cd80e4ea93fc43563e6 |
03-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
Pass target triple string in to TargetMachine constructor. This is not just a matter of passing in the target triple from the module; currently backends are making decisions based on the build and host architecture. The goal is to migrate to making these decisions based off of the triple (in conjunction with the feature string). Thus most clients pass in the target triple, or the host triple if that is empty. This has one important change in the way behavior of the JIT and llc. For the JIT, it was previously selecting the Target based on the host (naturally), but it was setting the target machine features based on the triple from the module. Now it is setting the target machine features based on the triple of the host. For LLC, -march was previously only used to select the target, the target machine features were initialized from the module's triple (which may have been empty). Now the target triple is taken from the module, or the host's triple is used if that is empty. Then the triple is adjusted to match -march. The take away is that -march for llc is now used in conjunction with the host triple to initialize the subtarget. If users want more deterministic behavior from llc, they should use -mtriple, or set the triple in the input module. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77946 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
275872e79950dafc6699f6502cee52f74b84a22a |
03-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
Fix some comments referring to std::cerr. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77931 91177308-0d34-0410-b5e6-96231b3b80d8
rie.h
|
bf4fc28303e00064fb24db1394010782299f5220 |
02-Aug-2009 |
Daniel Dunbar <daniel@zuster.org> |
Adjust comment to distinguish between target name and triple target name they match. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77908 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
d950941e138455ebcd7a5f55805dcb977892e3e3 |
02-Aug-2009 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Analog Devices Blackfin back-end. Generate code for the Blackfin family of DSPs from Analog Devices: http://www.analog.com/en/embedded-processing-dsp/blackfin/processors/index.html We aim to be compatible with the exsisting GNU toolchain found at: http://blackfin.uclinux.org/gf/project/toolchain The back-end is experimental. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77897 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
458ba32680488486b7166e40fd3e25b4dccf73fd |
01-Aug-2009 |
Ted Kremenek <kremenek@apple.com> |
Make default ctor for ImmutableSet::iterator public. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77762 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
fb3af88ba75898896714d49c608b8daa4f106636 |
31-Jul-2009 |
Dan Gohman <gohman@apple.com> |
Split DenseMapInfo into a separate header file, so that it can be included separately. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77693 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
enseMapInfo.h
|
2d8bc0fe70c55664b89605dbfa5c2f591446469c |
30-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Twine: Directly support int, long, and long long types. - This should resolve Cygwin gcc ambiguities. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77624 91177308-0d34-0410-b5e6-96231b3b80d8
wine.h
|
0fffbafa9609e0e289ff3120ab9e23d244c1dbc0 |
30-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Twine: Use raw_ostream::write_hex, remove unused itohexstr method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77617 91177308-0d34-0410-b5e6-96231b3b80d8
wine.h
|
bd17a295c1fe7ac5669af033086209254a0887a3 |
30-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Remove itohexstr, which only had one user. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77613 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
fe09b2098ac483f6d6ce6ea4ab237a9539bdb6b9 |
30-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Twines: Don't allow implicit conversion from integers, this is too tricky. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77605 91177308-0d34-0410-b5e6-96231b3b80d8
wine.h
|
0165a2ca897598bb95baec031362921565e24f2b |
30-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Twine: Provide [u]int{32,64} conversions via implicit constructors instead of explicitly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77576 91177308-0d34-0410-b5e6-96231b3b80d8
wine.h
|
26ef510d5d20b89c637d13e2d9169c0458de775c |
29-Jul-2009 |
Douglas Gregor <dgregor@apple.com> |
Fix a typo, and all of its copies git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77489 91177308-0d34-0410-b5e6-96231b3b80d8
ointerUnion.h
|
e657ec6701ee78e70ed7de43a9d98dbd00f330e5 |
29-Jul-2009 |
Douglas Gregor <dgregor@apple.com> |
Implement PointerUnion4. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77487 91177308-0d34-0410-b5e6-96231b3b80d8
ointerUnion.h
|
37e3fe9ad7d7cb350cbbce0695c68d652d624bb4 |
29-Jul-2009 |
Benjamin Kramer <benny.kra@googlemail.com> |
MSVC build fix. Patch by Olaf Krzikalla! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77450 91177308-0d34-0410-b5e6-96231b3b80d8
wine.h
|
763457e70bc9c5c2def89d24a133808b8a971f9f |
29-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Twines: Support numeric conversion directly (uitostr, etc). - Provides static constructors for doing number to string conversions without using temporaries. - There are several ways to do this, I think given the Twine constraints this is the simplest one. - One FIXME for fast number -> hex conversion. - Added another comment on one last major bit of perf work Twines need, which is to make raw_svector_ostream more efficient. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77445 91177308-0d34-0410-b5e6-96231b3b80d8
wine.h
|
7e763ebd982e199224a2d2e0cc802d09d2822b34 |
26-Jul-2009 |
Chris Lattner <sabre@nondot.org> |
Use the RHS length instead of the LHS length. They are both the same, but this ends up compiling code like this: int foo(const StringRef &R) { return R == "food"; } to use a constant sized memcmp instead of a variable memcmp. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77160 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
8c2f1d7e44d214bc2242a8c6faa4b624b3876540 |
26-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Oops, forgot XCore. Sorry XCore! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77125 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
6337f15b5a73c3eeb644d59cf34d37d4a278f5f7 |
26-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Update for API change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77124 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
a14d225ef4d3d8bd8ec9ec913246d1fb47d2edc1 |
26-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Update Triple to use StringRef/Twine based APIs. - This is now shorter, simpler, safer, and more efficient, what a deal. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77119 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
d61918fc6898a89df8b0a03e068f234ded010cdf |
26-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add StringRef::{slice, split}, two convenient string operations which are simple and efficient on a StringRef. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77117 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
f595d6dd9a61c7387768d4e041539fcc6525a99b |
25-Jul-2009 |
Jeffrey Yasskin <jyasskin@google.com> |
Add a missing ilist_node.h #include to SparseBitVector, and add a very short test for it. The test is by no means complete, but it tests the problem I was fixing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77025 91177308-0d34-0410-b5e6-96231b3b80d8
parseBitVector.h
|
3f0e83067d7938f742d21e14fc87c006d2fc3161 |
24-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Move to raw_ostream. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76963 91177308-0d34-0410-b5e6-96231b3b80d8
parseBitVector.h
|
050578fb4a006d7a183662f83fc22f7c78475605 |
24-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Fix constructor types git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76958 91177308-0d34-0410-b5e6-96231b3b80d8
wine.h
|
2538f7ab2ef39ab1a5e48744548d66b560d1fee6 |
24-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add Twine ADT. - Not currently used. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76956 91177308-0d34-0410-b5e6-96231b3b80d8
wine.h
|
6316fbcb04af00fe76b6526fab09f51484014b3e |
23-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Convert StringMap to using StringRef for its APIs. - Yay for '-'s and simplifications! - I kept StringMap::GetOrCreateValue for compatibility purposes, this can eventually go away. Likewise the StringMapEntry Create functions still follow the old style. - NIFC. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76888 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
f0395160f934eb278aa960de22dada5b297ddd8a |
23-Jul-2009 |
Chris Lattner <sabre@nondot.org> |
enhance DepthFirstIterator to support more robust operations in the face of code mutating the graph while it is being traversed. Patch by Olaf Krzikalla! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76869 91177308-0d34-0410-b5e6-96231b3b80d8
epthFirstIterator.h
|
903cb3908e1e6547b98d9199f38f3821dc4e4c9a |
23-Jul-2009 |
Chris Lattner <sabre@nondot.org> |
remove a really old and dead header git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76855 91177308-0d34-0410-b5e6-96231b3b80d8
ree.h
|
b834a7b73ce0dcf8fbf8d8b0d62f69e4b78059ad |
22-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Define npos in a way that should make MSVC happier. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76785 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
85f49835c288b0107cb4020d4e59e491c146973d |
21-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add missing include git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76655 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
d06c59821a1ca0191ea8a326a18509808a02ed03 |
21-Jul-2009 |
Torok Edwin <edwintorok@gmail.com> |
Add freed memory poisoning in !NDEBUG mode for DenseMap. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76597 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
7cb6860185187c74a1205deebff9e0f09a0ddae4 |
21-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Move StringRef comparison operators out of class. Also, tweak the return type of size(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76588 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
f5fdf73238dfd923f33bcbbd397cff6752d9c41e |
21-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add StringRef::{substr, startswith}. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76559 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
4cf95d75c65f37677d306952b0d2306bc6d20b1f |
21-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add StringRef class, with fixes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76543 91177308-0d34-0410-b5e6-96231b3b80d8
tringRef.h
|
aafa94260d5b1b6422258ed3db7244fe4449f217 |
19-Jul-2009 |
Daniel Dunbar <daniel@zuster.org> |
Remove redundant qualifiers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76357 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
cd2b4c1846413c7e4f46e8a08b1aa94212089053 |
15-Jul-2009 |
Chris Lattner <sabre@nondot.org> |
Fix a fixme, patch by Ryan Flynn! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75716 91177308-0d34-0410-b5e6-96231b3b80d8
mallString.h
|
b8ac841c9a275cc8d4e1a92dd06cc99323e35fa2 |
13-Jul-2009 |
Chris Lattner <sabre@nondot.org> |
Add NetBSD to the Triple class, patch by Krister Walfridsson! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75489 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
d6a2aab53e3c4fcd53399cfa6f66d62913e53663 |
13-Jul-2009 |
Dan Gohman <gohman@apple.com> |
Add an optional optimization to FoldingSet to allow ID values to be stored rather than recomputed on each bucket traversal. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75480 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
8f3cfb4c657f0094e8bf1e67de4ee776d57a751e |
10-Jul-2009 |
Ted Kremenek <kremenek@apple.com> |
ImmutableMap/ImmutableSet: Allow caching of ImutAVLTree digests while the tree is still mutable. My experiments show this reduces the amount of times we compute a full tree digest by over 50% on very small cases, and potentially much larger on others. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75207 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
633eb95f3ee4f6a831ce6fef47b5f2e5b52f297b |
09-Jul-2009 |
Ted Kremenek <kremenek@apple.com> |
ImmutableSet/ImmutableMap: Allow caching of null digests by properly using a flag to record if the digest of an ImutAVLTree has been cached. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75157 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
7c718222cdb624f4c420b3d7b6eeb12fffc05603 |
09-Jul-2009 |
Douglas Gregor <dgregor@apple.com> |
Make SmallPtrSet iterators real iterators git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75073 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
151f369c539d77c50f1c4eeb79659666a620d679 |
07-Jul-2009 |
Chris Lattner <sabre@nondot.org> |
fix a bug in post-order iterators with external storage, patch by Olaf Krzikalla! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74933 91177308-0d34-0410-b5e6-96231b3b80d8
ostOrderIterator.h
|
38a253ddf786b83dba14d980d269f7bb5c2252ea |
30-Jun-2009 |
Dan Gohman <gohman@apple.com> |
Reapply 74494, this time removing the conflicting definition of operator<< in APIntTest.cpp. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74550 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
527b6e62926673eb66e03f1250904a74a77667ae |
30-Jun-2009 |
Bill Wendling <isanbard@gmail.com> |
Temporarily revert r74494. It was causing failures in the unit tests. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74515 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
5ec56cc43895b8b78ef2480d54982e3866d9d07a |
30-Jun-2009 |
Owen Anderson <resistor@mac.com> |
Fix the build on Cygwin. Patch by Aaron Gray. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74510 91177308-0d34-0410-b5e6-96231b3b80d8
tatistic.h
|
670031666cf4dea0d122a0df2ec1d18822c225e4 |
30-Jun-2009 |
Dan Gohman <gohman@apple.com> |
Define an operator<< for APInt to be used with std::ostream. This will allow it to be used in unittests that use gtest's EXPECT_EQ. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74494 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
37c286c18128cce7f52654876a5a104150be4b79 |
29-Jun-2009 |
Sebastian Redl <sebastian.redl@getdesigned.at> |
Fix three MSVC 2008 warnings that completely clutter the build output. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74430 91177308-0d34-0410-b5e6-96231b3b80d8
ointerUnion.h
|
cd1267d2d68f03026aed21e22f7e28efd510ec5f |
29-Jun-2009 |
Duncan Sands <baldrick@free.fr> |
Add triple for OpenBSD. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74422 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
1d3b26ac023b519077811e55f3f9e56de9c2e6f7 |
27-Jun-2009 |
Dan Gohman <gohman@apple.com> |
Add a 'const' in a comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74389 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
1c47c7db1e0ef69f2c12385c254ec83f6fec6b1b |
24-Jun-2009 |
Owen Anderson <resistor@mac.com> |
Update for DOTGraphTraits changes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74113 91177308-0d34-0410-b5e6-96231b3b80d8
rie.h
|
92915e31e988c1b89a07c035029dc2f289afb789 |
23-Jun-2009 |
Owen Anderson <resistor@mac.com> |
Use atomic operations when accessing statistics, and make the lazy initialization of statistics actually threadsafe. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74005 91177308-0d34-0410-b5e6-96231b3b80d8
tatistic.h
|
852cd112edef55ff6fe334eeaeff153209f85666 |
19-Jun-2009 |
Duncan Sands <baldrick@free.fr> |
Add support for AuroraUX. Patch by evocallaghan. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73766 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
be24f1b7fb093380f9bac489f4b70a7e133be7b5 |
16-Jun-2009 |
Owen Anderson <resistor@mac.com> |
Owen Anderson 2009-06-15: Use a SmallPtrSet here, for speed and to match df_iterator. Owen Anderson 2009-06-15: Remember to clear out our maps to prevent crashing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73438 91177308-0d34-0410-b5e6-96231b3b80d8
ostOrderIterator.h
|
23e1e727bd8c890ebe060e8f756085efb42697dc |
02-Jun-2009 |
Torok Edwin <edwintorok@gmail.com> |
fix build on VC++2k8. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72736 91177308-0d34-0410-b5e6-96231b3b80d8
list.h
|
6330084a6623afcacd86156ef505aa11d482e307 |
01-Jun-2009 |
Mike Stump <mrs@apple.com> |
Dcoument that the opauque value used to construct QNaNs is truncated as necessary. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72702 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
7d36d39e63451a09283225e6507dea730c1efa14 |
30-May-2009 |
Mike Stump <mrs@apple.com> |
Add some documentation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72622 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
c5ca713b8073d9fe95b258d0c01328d020df3357 |
30-May-2009 |
Mike Stump <mrs@apple.com> |
Add support for letting the client choose different flavors of NaNs. Testcase to be added in clang. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72606 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
7eaf057e54e9b5f0469057c71d81dcfee90d9e12 |
22-May-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add llvm::triple constructor from arch, vendor, os strings, and recognize DragonFly OS type. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72242 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
c5d73afa4801d3cb7abea0244c2e9e687564fd6c |
21-May-2009 |
Jay Foad <jay.foad@gmail.com> |
Tighten up the asserts in SmallVector::operator[](). If this causes any new assertion failures that I didn't catch in testing, the fix is usually to change "&v[0]" to "v.data()" for some SmallVector v. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72221 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
e3e51c0038bd6ba2add82e2246e97edec0ab2204 |
21-May-2009 |
Jay Foad <jay.foad@gmail.com> |
Use v.data() instead of &v[0] when SmallVector v might be empty. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72210 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
82fe2935bf623f09533412126ad31e62dc3167ab |
21-May-2009 |
Jay Foad <jay.foad@gmail.com> |
Implement new SmallVector::data() methods. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72209 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
13bb81addfc15d9852711191696f5bd6e52f9552 |
12-May-2009 |
Bill Wendling <isanbard@gmail.com> |
Use struct instead of class to make MCVS compile. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71600 91177308-0d34-0410-b5e6-96231b3b80d8
parseBitVector.h
|
01746745f1287effa1772ef51b973988afcea699 |
11-May-2009 |
Douglas Gregor <dgregor@apple.com> |
Add terminal width detection to llvm::sys::Process. This is needed to fix Clang PRs 4148 and 4183. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71448 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
b9cfbd94abb23ec8646b9b10aa4ac3d1cbf4461e |
11-May-2009 |
John Mosby <ojomojo@gmail.com> |
Shrink wrapping in PEI: - reduces _static_ callee saved register spills and restores similar to Chow's original algorithm. - iterative implementation with simple heuristic limits to mitigate compile time impact. - handles placing spills/restores for multi-entry, multi-exit regions in the Machine CFG without splitting edges. - passes test-suite in LLCBETA mode. Added contains() method to ADT/SparseBitVector. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71438 91177308-0d34-0410-b5e6-96231b3b80d8
parseBitVector.h
|
fe095f39e7009c51d1c86769792ccbcad8cdd2ec |
04-May-2009 |
Mike Stump <mrs@apple.com> |
Restore minor deletion. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70892 91177308-0d34-0410-b5e6-96231b3b80d8
mallSet.h
|
f0e4cac7ebdee07639bd1fc3eadf204f45868556 |
01-May-2009 |
Stuart Hastings <stuart@apple.com> |
Prevent looping when DenseSet is abused. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70572 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
4e5ea553d055512b0b8aa098e363ae17bafda957 |
30-Apr-2009 |
Jay Foad <jay.foad@gmail.com> |
Move helper functions for optimizing division by constant into the APInt class. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70488 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
3485d25a0e3355a13a9fe073fa5cd98838431ef0 |
26-Apr-2009 |
Bill Wendling <isanbard@gmail.com> |
I cast, therefore I think I know what I'm doing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70151 91177308-0d34-0410-b5e6-96231b3b80d8
ointerIntPair.h
|
b14a495c3682a9804e81326691f039ab2e15738f |
26-Apr-2009 |
Bill Wendling <isanbard@gmail.com> |
Use uint64_t instead of unsigned. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70148 91177308-0d34-0410-b5e6-96231b3b80d8
ointerIntPair.h
|
1e8db00e3b244a9a6b4b4a22adaa5618fafc37df |
26-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
revert an incorrect patch. This causes crashes all over the place on a 64-bit build. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70147 91177308-0d34-0410-b5e6-96231b3b80d8
ointerIntPair.h
|
610cb31ac9853540416a87125ff94783de4a4231 |
26-Apr-2009 |
Bill Wendling <isanbard@gmail.com> |
Suppress warnings about conversion shortening 64-bit to 32-bit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70138 91177308-0d34-0410-b5e6-96231b3b80d8
ointerIntPair.h
|
11d8fb960963a1f8a7e2b2972bc560a5b24cf216 |
25-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
DenseMap.h needs <new> because it explicitly calls operator new/delete. Patch by John McCall! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70068 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
747972914ae73379fd837e5a30cea229be792e34 |
22-Apr-2009 |
Owen Anderson <resistor@mac.com> |
Fix for PR3946, in which SmallVector could behave strangely in corner cases. Patch by Peter Johnson. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@69785 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
17893a5fb6b3b4b9e84674dfb7692abb57410dd1 |
13-Apr-2009 |
Douglas Gregor <dgregor@apple.com> |
Add a static APInt::getNumWords git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68977 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
5c5f5a2ec2dd49bd3049fa0a55aca4956fc56ff2 |
10-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
fix a broken assertion in ilist_iterator, which caused it to crash in the bad case instead of actually assert. Bug pointed out by Jakob Stoklund Olesen! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68785 91177308-0d34-0410-b5e6-96231b3b80d8
list.h
|
d0dfbe096dd71ca4d652784705584876f8b18250 |
02-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
fix overflow checks in SmallVector: "The code was doing "if (End+NumInputs > Capacity) ...". If End is close to 0xFFFFFFFF and NumInputs is large, it'll overflow, the condition will come out false, and the vector won't grow to accommodate the new elements, and the program will crash in memmove." Patch by Jeffrey Yasskin! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68277 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
23e97b05da7b31ed97e5ccc6330670da0173ca2e |
01-Apr-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add llvm::Triple class for abstracting access to target triples. - The code is silly, I'm just amusing myself. Rewrite to be efficient if you like. :) Also, if you wish to debate the proper names of the triple components I'm all ears. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68252 91177308-0d34-0410-b5e6-96231b3b80d8
riple.h
|
b035842c34668e76a0637f018a5b0157c44ccc61 |
01-Apr-2009 |
Misha Brukman <brukman+llvm@gmail.com> |
Fixed spelling. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68248 91177308-0d34-0410-b5e6-96231b3b80d8
ashExtras.h
|
dd255a62474a2016702e2985710e6e8910b3c974 |
01-Apr-2009 |
Chris Lattner <sabre@nondot.org> |
Add range insert method for DenseSet and define DenseMapInfo for chars. Patch by Kevin Fan! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68239 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
enseSet.h
|
de551f91d8816632a76a065084caab9fab6aacff |
01-Apr-2009 |
Dan Gohman <gohman@apple.com> |
Use CHAR_BIT instead of hard-coding 8 in several places where it is appropriate. This helps visually differentiate host-oriented calculations from target-oriented calculations. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68227 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
itVector.h
parseBitVector.h
|
41222823db11107834414a378525bb21493d3a1f |
01-Apr-2009 |
Douglas Gregor <dgregor@apple.com> |
Allow the use of pointers to const within PointerUnion. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68159 91177308-0d34-0410-b5e6-96231b3b80d8
ointerUnion.h
|
bdd376ccb25f251e115fff24b526b4e65e03a1d3 |
31-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
add some accessors so I can play games with DenseMaps. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68145 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
da84b25b13f05b94c6c9478b1bc552054756759e |
31-Mar-2009 |
Douglas Gregor <dgregor@apple.com> |
Stop guessing, start thinking, and make PointerUnion3::is actually be correct. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68126 91177308-0d34-0410-b5e6-96231b3b80d8
ointerUnion.h
|
a7425d7fde61c2207a4467464df90b5e3e58a769 |
31-Mar-2009 |
Douglas Gregor <dgregor@apple.com> |
Really, really fix PointerUnion3::is git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68079 91177308-0d34-0410-b5e6-96231b3b80d8
ointerUnion.h
|
2048cdb08ef6ad04bd1baf52886605d455236eb7 |
30-Mar-2009 |
Douglas Gregor <dgregor@apple.com> |
Make PointerUnion3::get work properly git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68067 91177308-0d34-0410-b5e6-96231b3b80d8
ointerUnion.h
|
f54229192c22559389b0ef47e731fd628db963c5 |
30-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
update comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68060 91177308-0d34-0410-b5e6-96231b3b80d8
ointerUnion.h
|
e8bc475668ddd2f31f44dd00b042d15b255e1b9e |
30-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
add a PointerUnion3 class and generalize PointerUnion to work with anything pointer-like, which may or may not actually be a pointer. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68056 91177308-0d34-0410-b5e6-96231b3b80d8
ointerUnion.h
|
c6a4b6b78b9262ad6a343a4edae88611ef970669 |
30-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
fix the PointerLikeTypeTraits specialization for PointerIntPair to allow the traits to be specified as well. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68055 91177308-0d34-0410-b5e6-96231b3b80d8
ointerIntPair.h
|
54e01d06db7c04208a684e34cb82b0847a077261 |
29-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
add missing space. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67995 91177308-0d34-0410-b5e6-96231b3b80d8
ointerIntPair.h
|
3a9fe06bfe30da6fb1e0a540f05877c3640c7335 |
29-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
add some comments, add a dyn_cast method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67992 91177308-0d34-0410-b5e6-96231b3b80d8
ointerUnion.h
|
f341a47d10501bc69b5d4d2217992bb6e08668d8 |
29-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
When forming sentinels for empty/tombstone, make sure to respect the pointer's expected number of zero low-bits. This should fix the breakage I introduced recently. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67990 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
ointerIntPair.h
|
ba315c1ee7bef78c6824441fe6c1761596ec9880 |
29-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
add helper method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67989 91177308-0d34-0410-b5e6-96231b3b80d8
ointerUnion.h
|
2491e4657d95f7ff61fb2a741ba9996e492df515 |
29-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
Add a simple type-safe bit-mangling pointer union class. This allows you to do things like: /// PointerUnion<int*, float*> P; /// P = (int*)0; /// printf("%d %d", P.is<int*>(), P.is<float*>()); // prints "1 0" /// X = P.get<int*>(); // ok. /// Y = P.get<float*>(); // runtime assertion failure. /// Z = P.get<double*>(); // does not compile. /// P = (float*)0; /// Y = P.get<float*>(); // ok. /// X = P.get<int*>(); // runtime assertion failure. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67987 91177308-0d34-0410-b5e6-96231b3b80d8
ointerUnion.h
|
540db8bcb8d7dae55456d8564c1d54071ec6ed50 |
29-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
Allow a specific PointerIntPair instance to use a specific Pointer trait: some pointer instances have properties that not all of a type have. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67986 91177308-0d34-0410-b5e6-96231b3b80d8
ointerIntPair.h
|
e30173ac3396510bd0bb26a66fd615ff9083436d |
29-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
Replace the PointerLikeTypeTraits::getNumLowBitsAvailable function with a new NumLowBitsAvailable enum, which makes the value available as an integer constant expression. Add PointerLikeTypeTraits specializations for Instruction* and Use** since they are only guaranteed 4-byte aligned. Enhance PointerIntPair to know about (and enforce) the alignment specified by PointerLikeTypeTraits. This should allow things like PointerIntPair<PointerIntPair<void*, 1,bool>, 1, bool> because the inner one knows that 2 low bits are free. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67979 91177308-0d34-0410-b5e6-96231b3b80d8
ointerIntPair.h
|
8ee1b5e916249d1a64ad8cf99b08a0e160f9d052 |
29-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
rename PointerLikeTypeInto to PointerLikeTypeTraits, add trait for # low bits free, and move to its own header. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67973 91177308-0d34-0410-b5e6-96231b3b80d8
ointerIntPair.h
mallPtrSet.h
|
4d4177b9b3ab634e852be1c0a7565a4ec1c7df93 |
29-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
teach SmallPtrSet that PointerIntPair is "basically a pointer". git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67970 91177308-0d34-0410-b5e6-96231b3b80d8
ointerIntPair.h
|
1717f3af087e44d2c4b7fe2b35abc29a33d6d315 |
28-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
declare everything as class to avoid angering the VC++ gods. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67931 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
6de603071879bdc5d7d663826354c24a9d176469 |
28-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
add a traits class for SmallPtrSet that allows us to stick things that are "basically pointers" into it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67930 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
9c01f2dd0b20e09f4edef832620a188eda62ff5a |
27-Mar-2009 |
Dan Gohman <gohman@apple.com> |
Revert r67844. This fixes the llvm-gcc-4.2 build on Darwin. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67856 91177308-0d34-0410-b5e6-96231b3b80d8
list_node.h
|
76d38384542e2f596e14eb8e80b8e1c6a2652fd1 |
27-Mar-2009 |
Duncan Sands <baldrick@free.fr> |
Reapply r66415, which was reverted in r66426 for causing a bootstrap failure. Bootstraps here on x86-32-linux and x86-64-linux. Requested by the author Gabor Greif who says that a bug that might have been causing the failure has since been fixed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67844 91177308-0d34-0410-b5e6-96231b3b80d8
list_node.h
|
dae2206390be0b1886cf0c1dba3edf079d28274f |
22-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
Fix PR3860 by correcting a predicate. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67473 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
3ee87b6f9da0f63762ffaf0c4fcbc39514a059fb |
21-Mar-2009 |
Chris Lattner <sabre@nondot.org> |
add some inline methods for infix operators on sparse vectors, tidy some df iteration stuff, patch by John Mosby! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67428 91177308-0d34-0410-b5e6-96231b3b80d8
epthFirstIterator.h
parseBitVector.h
|
e889d837a4d226280525b1eafe5a6317c594ebf3 |
12-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add StringMap::lookup. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66750 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
9aaa0796adff54dd6282e8ead6d3d9f2ab7eea22 |
09-Mar-2009 |
Bill Wendling <isanbard@gmail.com> |
Revert r66415. It's causing failures during bootstrap builds: Please submit a full bug report, with preprocessed source if appropriate. See <URL:http://developer.apple.com/bugreporter> for instructions. /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmgcc42.roots/llvmgcc42~obj/src/gcc/libgcc2.c: In function '__muldi3': /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmgcc42.roots/llvmgcc42~obj/src/gcc/libgcc2.c:567: internal compiler error: Bus error Please submit a full bug report, with preprocessed source if appropriate. See <URL:http://developer.apple.com/bugreporter> for instructions. /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmgcc42.roots/llvmgcc42~obj/src/gcc/libgcc2.c: In function '__lshrdi3': /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmgcc42.roots/llvmgcc42~obj/src/gcc/libgcc2.c:421: internal compiler error: Bus error Please submit a full bug report, with preprocessed source if appropriate. See <URL:http://developer.apple.com/bugreporter> for instructions. make[5]: *** [libgcc/./_lshrdi3.o] Error 1 make[5]: *** Waiting for unfinished jobs.... make[5]: *** [libgcc/./_muldi3.o] Error 1 make[5]: *** [libgcc/./_negdi2.o] Error 1 --- Reverse-merging (from foreign repository) r66415 into '.': U include/llvm/BasicBlock.h U include/llvm/ADT/ilist_node.h U include/llvm/CodeGen/SelectionDAG.h U include/llvm/CodeGen/MachineFunction.h U include/llvm/CodeGen/MachineBasicBlock.h U include/llvm/Function.h git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66426 91177308-0d34-0410-b5e6-96231b3b80d8
list_node.h
|
5c3e7b171898612066afc86b8fa850cc32a0cd40 |
09-Mar-2009 |
Gabor Greif <ggreif@gmail.com> |
in builds without asserts we do not need to allocate the Next pointer in "ghostly" sentinels git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66415 91177308-0d34-0410-b5e6-96231b3b80d8
list_node.h
|
59fad7d9339901f8146f2d77cd7818625f0935b8 |
09-Mar-2009 |
Nick Lewycky <nicholas@mxc.ca> |
Remove configurey-fu to autodetect hash_map and hash_set now that they are no longer used in LLVM. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66406 91177308-0d34-0410-b5e6-96231b3b80d8
ashExtras.h
ash_map.cmake
ash_map.h.in
ash_set.cmake
ash_set.h.in
|
c23b8719ef9d6b1220e854b37d40e9e1c48a82bc |
04-Mar-2009 |
Gabor Greif <ggreif@gmail.com> |
Give sentinel traits the right to determine the policy where the sentinel is kept. This should result in less indirect memory accesses, less dead writes and tighter code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66061 91177308-0d34-0410-b5e6-96231b3b80d8
list.h
|
83b5752747ea14696b0e51904722c38771f22eb7 |
02-Mar-2009 |
Gabor Greif <ggreif@gmail.com> |
drop support for GCC 2.x as it is hopelessly broken anyway git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65864 91177308-0d34-0410-b5e6-96231b3b80d8
list.h
|
b141e397d52d9946e93f84c65c6b2e653b026041 |
28-Feb-2009 |
Gabor Greif <ggreif@gmail.com> |
make traits more flexible by splitting out node-related fragment git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65690 91177308-0d34-0410-b5e6-96231b3b80d8
list.h
|
a05764c4fb1ff4fc6013dcfd71fc83fb25cdcd27 |
27-Feb-2009 |
Gabor Greif <ggreif@gmail.com> |
group friendship git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65633 91177308-0d34-0410-b5e6-96231b3b80d8
list_node.h
|
0a0e68a7eac0513505aff3079e2d5d6864e51895 |
27-Feb-2009 |
Gabor Greif <ggreif@gmail.com> |
Introduce a new technique for merging BasicBlock with Instruction sentinel by superposition. This looks dangerous, but isn't because the sentinel is accessed in special way only, namely the Next and Prev fields of it, and these are guaranteed to exist. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65626 91177308-0d34-0410-b5e6-96231b3b80d8
list_node.h
|
638b8b446e7f08d348fe4f3b290c08f6854fc8ba |
23-Feb-2009 |
Ted Kremenek <kremenek@apple.com> |
Correctly implement ImmutableMap::getMaxElement() by getting the actual <key, value> pair. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65327 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
|
1c7a666fcef22e75dc675b06444f5a894f54d7be |
23-Feb-2009 |
Ted Kremenek <kremenek@apple.com> |
Add ImmutableMap::getMaxElement(), a method that returns the <key,value> pair in a ImmutableMap that has the highest ranked key. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65326 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
mmutableSet.h
|
07bf7efa0ac1f7ca8ca57a675dd8c6e2c52df73a |
21-Feb-2009 |
Ted Kremenek <kremenek@apple.com> |
Add version of StringsEqualNoCase that takes two null-terminated C-strings and compares up to 'len' characters. I tend to screw up string comparison functions, so anyone who is interested please review this\! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65236 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
085a9ebbc705c6e7d3fd8c692ef1c46fdfb885ce |
20-Feb-2009 |
Misha Brukman <brukman+llvm@gmail.com> |
Removed trailing whitespace. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65197 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
list.h
|
a2769a33c94f021a609a462b28ebea069eba6f74 |
20-Feb-2009 |
Misha Brukman <brukman+llvm@gmail.com> |
Fixed lint errors: * Alphabetized #includes * Removed trailing whitespace * Wrapped or shortened lines over 80 chars git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65181 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
epthFirstIterator.h
raphTraits.h
mmutableMap.h
ndexedMap.h
ntrusiveRefCntPtr.h
wningPtr.h
ostOrderIterator.h
CCIterator.h
TLExtras.h
etVector.h
mallVector.h
ree.h
rie.h
list.h
|
38deef9ce58b33dba34515f23fb7dbde02164c77 |
18-Feb-2009 |
Dan Gohman <gohman@apple.com> |
Add explicit keywords. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64915 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
3c172a29598aabf76ddaf02f4fd7ab85df74ecd0 |
16-Feb-2009 |
Ted Kremenek <kremenek@apple.com> |
Fix bug where APSInt::operator-- incremented instead of decremented. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64687 91177308-0d34-0410-b5e6-96231b3b80d8
PSInt.h
|
5b22efa61446797039dd19fc1e9be83676463f99 |
12-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
Add operator->, patch by Ben Laurie! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64378 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
da5eb715509685f4a5cfdf6cd781827e72199af6 |
12-Feb-2009 |
Ted Kremenek <kremenek@apple.com> |
Add method 'isSingleton()' to ImmutableSet. This returns true if the set contains exactly one element. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64359 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
8bb332d45dd266b9678446cea5812371d8d3e8af |
11-Feb-2009 |
Ted Kremenek <kremenek@apple.com> |
Add FoldingSet profile method for bools. Patch by Ben Laurie! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64324 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
af9b6b264f2bf4315c25b286a1c24331038545e0 |
09-Feb-2009 |
Bill Wendling <isanbard@gmail.com> |
These function return 'void'. Don't have 'return' return anything. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64136 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
PSInt.h
|
5471a00977ab8ce3c88414dfbad99c0296d58508 |
07-Feb-2009 |
Dan Gohman <gohman@apple.com> |
Change several SmallPtrSetImpl members from public to protected, to make the encapsulation more clear. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64017 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
f996831427009c5abe37f0af9d9632ef60f181e2 |
07-Feb-2009 |
Nick Lewycky <nicholas@mxc.ca> |
Add an API for strings with possible NULLs in the middle. Refactor the other two AddString methods to use it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64005 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
4715f6395ef152fd92c9b74d5f3e62e2cff29d27 |
04-Feb-2009 |
Chris Lattner <sabre@nondot.org> |
fix a pretty serious bug in StringMap where GetOrCreate(strstart,strend, z) would not set new values to Z. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63707 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
072e99ef9bd7e731c06716d8a21f630e429ddd82 |
30-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
Fix a bug in getMaxValue/getMinValue to pass the right signedness the the constructed APSInt, patch suggested by Ben Laurie! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63362 91177308-0d34-0410-b5e6-96231b3b80d8
PSInt.h
|
8d8a0c36b70dacc73baa47ff6e92e5e774338117 |
26-Jan-2009 |
Roman Levenstein <romix.llvm@googlemail.com> |
Fix a bug in BitVector.h. All assignment operations (except the usual assignment operator) were returning a copy of the bit vector, instead of a reference! This old semantics probably did not meet the expectations. With this patch, chained assignments happen to the right object. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63012 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
d10aacea5e2c8ea62e08956aa0a94fa2da60e148 |
22-Jan-2009 |
Bill Wendling <isanbard@gmail.com> |
Get rid of warning about implicit 64-to-32 bit conversions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62741 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
2b5326e7240ac524812016bc3700e12045bf0eb1 |
22-Jan-2009 |
Steve Naroff <snaroff@apple.com> |
Add explicit this-> (to make the VS compiler happy). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62731 91177308-0d34-0410-b5e6-96231b3b80d8
list.h
|
c03c46a6af3d53172d48d9e4d36748a40c878cff |
21-Jan-2009 |
Douglas Gregor <dgregor@apple.com> |
Fix ilist two-phase name lookup git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62724 91177308-0d34-0410-b5e6-96231b3b80d8
list.h
|
541ed9fd02ea48d2739f4a9dd681ba2d5da26886 |
21-Jan-2009 |
Dale Johannesen <dalej@apple.com> |
Do not use host floating point types when emitting ASCII IR; loading and storing these can change the bits of NaNs on some hosts. Remove or add warnings at a few other places using host floating point; this is a bad thing to do in general. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62712 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
ed6af24e146a5d358115123f0d2be694c1fa3a84 |
21-Jan-2009 |
Dale Johannesen <dalej@apple.com> |
Make special cases (0 inf nan) work for frem. Besides APFloat, this involved removing code from two places that thought they knew the result of frem(0., x) but were wrong. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62645 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
24b66a83ca8c80417ad7523c35ece709a7e6599c |
20-Jan-2009 |
Dale Johannesen <dalej@apple.com> |
Add an IEEE remainder function, which is not fully implemented yet and not used. This is mainly to clarify that APFloat::mod implements C fmod, not remainder. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62593 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
9981b1f15681a2a09c9953cf6773a3b839ead4e7 |
20-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
eliminate use of uint32_t to improve compatibility with cygwin git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62591 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
2f39b29170e0f69491fc5b73952725266ac32fb8 |
19-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
improve compatibility with cygwin, patch by Jay Foad! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62535 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
6ea5776f51358da9c3b59c268479344379bb8448 |
16-Jan-2009 |
Duncan Sands <baldrick@free.fr> |
Get this building with gcc-4.4. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62322 91177308-0d34-0410-b5e6-96231b3b80d8
ointerIntPair.h
|
3ff704fa2b67d6c857142218c5aca3058b6239fc |
13-Jan-2009 |
Chris Lattner <sabre@nondot.org> |
add a new insertAfter method, patch by Tom Jablin! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62158 91177308-0d34-0410-b5e6-96231b3b80d8
list.h
|
3a54b3dc87a581c203b18050b4f787b4ca28a12c |
09-Jan-2009 |
Misha Brukman <brukman+llvm@gmail.com> |
Removed trailing whitespace. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62000 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
PInt.h
PSInt.h
itVector.h
enseMap.h
enseSet.h
oldingSet.h
raphTraits.h
mmutableList.h
mmutableMap.h
mmutableSet.h
wningPtr.h
ointerIntPair.h
ostOrderIterator.h
riorityQueue.h
TLExtras.h
copedHashTable.h
etVector.h
mallPtrSet.h
mallSet.h
mallString.h
mallVector.h
parseBitVector.h
tatistic.h
tringExtras.h
niqueVector.h
ash_map.h.in
ash_set.h.in
list_node.h
terator.h.in
|
38593664b02bca98904c4b1883b0a489b5aaacbe |
08-Jan-2009 |
Bill Wendling <isanbard@gmail.com> |
* Don't explicitly cast "0" to "void*". This doesn't work well with specialized StringMapEntryInitializer classes. Leave it for the compiler to figure out what the type is and what "0" should be transformed into. * Un-disable the unit tests which test the StringMapEntryInitializer class. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61922 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
538fbb508663e8c091f7e129ec36a6c7e6a4f1b1 |
08-Jan-2009 |
Misha Brukman <brukman+llvm@gmail.com> |
Remove extra blank line and space. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61916 91177308-0d34-0410-b5e6-96231b3b80d8
tringSet.h
|
8bb5e9901346f448461289f2d0079ed6d534b571 |
08-Jan-2009 |
Misha Brukman <brukman+llvm@gmail.com> |
* Added unittests for StringMap * Fixed but in StringMap::clear() * Removed trailing whitespace Original patch by Talin. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61914 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
e21a6bae806d13e644a92b3df23e4d5b78bdb75c |
08-Jan-2009 |
Misha Brukman <brukman+llvm@gmail.com> |
* Fixed spelling of "sentinel" * Removed trailing whitespace git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61907 91177308-0d34-0410-b5e6-96231b3b80d8
list.h
|
d68a07650cdb2e18f18f362ba533459aa10e01b6 |
05-Jan-2009 |
Dan Gohman <gohman@apple.com> |
Tidy up #includes, deleting a bunch of unnecessary #includes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61715 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
TLExtras.h
parseBitVector.h
list.h
|
2c8a1522dbe6f14b728e83b9c555bef27233cc91 |
04-Jan-2009 |
Dan Gohman <gohman@apple.com> |
Add several more unimplemented operator overloads to ilist_iterator to help catch errors. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61622 91177308-0d34-0410-b5e6-96231b3b80d8
list.h
|
ccc776fd83b4d200f54cd84af71888e9a740f8fd |
02-Jan-2009 |
Nick Lewycky <nicholas@mxc.ca> |
Fix typo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61554 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
c1edbfc2bac278ef050615f403c1bc74ef44cf14 |
13-Dec-2008 |
Cedric Venet <cedric.venet@laposte.net> |
Add explicit this-> for some member function in templated base class. These call are probably dependent but VS with /Za don't seems to think so. We need to help him. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60978 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
list.h
|
b79a01111d1ed14ec92b969fb995906268733c12 |
08-Dec-2008 |
Dan Gohman <gohman@apple.com> |
Move the conversion to intptr_t to a separate statement. This avoids GCC's warning even on 64-bit hosts. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60706 91177308-0d34-0410-b5e6-96231b3b80d8
ointerIntPair.h
|
4cd314522350f3e6975d939efa088ed209c8f77c |
08-Dec-2008 |
Ted Kremenek <kremenek@apple.com> |
Use 'delete []' instead of 'delete' in OwningArray::reset(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60703 91177308-0d34-0410-b5e6-96231b3b80d8
wningPtr.h
|
994fd5354b13c9b934f7ff82ac6e5742f982af33 |
07-Dec-2008 |
Dan Gohman <gohman@apple.com> |
Use intptr_t instead of unsigned here, which is more appropriate in a really obscure way, but more importantly has the side effect of avoiding a GCC warning in the case that IntType is bool. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60677 91177308-0d34-0410-b5e6-96231b3b80d8
ointerIntPair.h
|
7f50863e527f5464bd6fcbcd7719f8344f54cb7e |
05-Dec-2008 |
Chris Lattner <sabre@nondot.org> |
add a new pop_back_val method which returns the value popped. This is heretical from a STL standpoint, but is oh-so-useful for things that can't throw exceptions when copied, like, well, everything in LLVM. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60587 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
1d93b2e1b638cee7f012e8f636eb2cc137d855ff |
03-Dec-2008 |
Chris Lattner <sabre@nondot.org> |
Fix isIntN to work with APInts > 64 bits. This method is only used by clang apparently. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60446 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
b6bbe6320b4a60b7399eea08426aec834701d514 |
02-Dec-2008 |
Chris Lattner <sabre@nondot.org> |
add densemap range insertion method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60400 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
c65fc3bd27a84281da9819b5fe89a01535a14ecf |
01-Dec-2008 |
Chris Lattner <sabre@nondot.org> |
reenable array_pod_sort, this time hopefully happy on 64-bit and big endian systems. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60371 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
7b6113c6e2f23f3bf8b2505bf13bc15b4995c82a |
01-Dec-2008 |
Chris Lattner <sabre@nondot.org> |
don't #include <algorithm> into the llvm namespace. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60365 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
de5debfb580bb750af8cda1f87cdd4f70fec7a2b |
01-Dec-2008 |
Chris Lattner <sabre@nondot.org> |
switch to std::sort until I have time to sort this out. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60354 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
545fc87454aabbc8ef8720811ab5dbd5588b537b |
01-Dec-2008 |
Chris Lattner <sabre@nondot.org> |
define array_pod_sort in terms of operator< instead of my brain damaged approximation. This should fix it on big endian platforms and on 64-bit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60352 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
4329c428404981fb752b51eaec54b451de83a5b0 |
01-Dec-2008 |
Chris Lattner <sabre@nondot.org> |
don't assume iterators implicitly convert to pointers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60336 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
99d0015735f8e2aee1a4b99e39ffdaadc8a1dba8 |
01-Dec-2008 |
Chris Lattner <sabre@nondot.org> |
Introduce a new array_pod_sort function and switch LSR to use it instead of std::sort. This shrinks the release-asserts LSR.o file by 1100 bytes of code on my system. We should start using array_pod_sort where possible. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60335 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
3864cd4cab956526b99b634e15e7fd5d5441e3a7 |
01-Dec-2008 |
Eli Friedman <eli.friedman@gmail.com> |
Fix bogus assertion using getSExtValue for legitimate values, like -1 in an 128-bit-wide integer. No testcase; the issue I ran into depends on local changes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60311 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
012618f0fc4df0664e6d7ad6b443173d89820213 |
30-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
add the rest of the comparison routines. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60303 91177308-0d34-0410-b5e6-96231b3b80d8
ointerIntPair.h
|
b9118246201592e7e6c1353a09f69e8a4d469d9d |
30-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
fix indentation. std::pair is "isPod" if the first/second are both isPod. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60262 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
10ca770020e12cf86d43f7b15cb6959e380e935d |
29-Nov-2008 |
Torok Edwin <edwintorok@gmail.com> |
protect against negative values that would exceed allowed bit width git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60239 91177308-0d34-0410-b5e6-96231b3b80d8
ointerIntPair.h
|
b9cf75a15f6738be99a98f15cb6c2669f06d0ddf |
29-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
apparently GCC doesn't believe that I understand C precedence rules. Pacify it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60237 91177308-0d34-0410-b5e6-96231b3b80d8
ointerIntPair.h
|
3f7dba7b1738bd433a1dea0142e0844a106b782a |
29-Nov-2008 |
Duncan Sands <baldrick@free.fr> |
Typo fix. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60236 91177308-0d34-0410-b5e6-96231b3b80d8
ointerIntPair.h
|
d63e618212ae716f775c4a03658377d4d8eba5ff |
29-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
Fix sentinels to use correctly 'aligned' pointers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60229 91177308-0d34-0410-b5e6-96231b3b80d8
ointerIntPair.h
|
9ac30537aa3c201b6950bc708e02b1885c288c8d |
29-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
Fix spello, add DenseMapInfo specialization for PointerIntPair. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60228 91177308-0d34-0410-b5e6-96231b3b80d8
ointerIntPair.h
|
d55da4de048684e3791dbae8018666e5b7549506 |
29-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
fix comment typo git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60227 91177308-0d34-0410-b5e6-96231b3b80d8
ointerIntPair.h
|
762ac83271ec442d2aea76d1ea9983bfefb22bba |
29-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
fix a bug. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60225 91177308-0d34-0410-b5e6-96231b3b80d8
ointerIntPair.h
|
34b763694e74ee16e68fd85488bfe0443c51170d |
29-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
add a generic "bitmangled pointer" class, which allows a parameterized pointer and integer type to be used. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60224 91177308-0d34-0410-b5e6-96231b3b80d8
ointerIntPair.h
|
9f1f00ab1b347953da0efb0e20352be5e0709276 |
27-Nov-2008 |
Ted Kremenek <kremenek@apple.com> |
Add typedef to StringMapEntry. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60134 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
0fbdfc3664830e8387c13bf817c44e8b71085142 |
20-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
add an operator= to assign to smallstring. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59715 91177308-0d34-0410-b5e6-96231b3b80d8
mallString.h
|
69e3bd10ecc36f7551b822a09d311fec08254cc0 |
17-Nov-2008 |
Zhongxing Xu <xuzhongxing@gmail.com> |
move partial template specialization to FoldingSet.h. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59434 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
mmutableList.h
|
0cf717d6b84a0b5fbc68b5e35cb19aa9300dac34 |
16-Nov-2008 |
Zhongxing Xu <xuzhongxing@gmail.com> |
Fix 80-col violation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59394 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
f5b55475b3697f49113c9de331fbf9ad40bda1e6 |
16-Nov-2008 |
Zhongxing Xu <xuzhongxing@gmail.com> |
Add partial specialization of FoldingSetTrait for ImmutableList. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59387 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableList.h
|
2c228834fc226619c25a678394bab73dd1b1f85d |
16-Nov-2008 |
Zhongxing Xu <xuzhongxing@gmail.com> |
Fix 80-column violation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59385 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableList.h
|
2ef5d4cd6ab2e8f57bba88cc6ef0e3132e784e63 |
15-Nov-2008 |
Zhongxing Xu <xuzhongxing@gmail.com> |
Add Profile method to ImmutableList. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59362 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableList.h
|
c04b6917c184ca9d6c7bc0c749a734f89cebcd35 |
10-Nov-2008 |
Duncan Sands <baldrick@free.fr> |
Work around PR1000. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58984 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
886645a3c3a5628b2c062cd486e24b86d82d84d9 |
10-Nov-2008 |
Chris Lattner <sabre@nondot.org> |
split out the functionality of utohexstr into a new utohex_buffer helper. This allows us to convert numbers to hex without necessarily needing to make a std::string to hold the result. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58961 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
20cd13f54f2b1a6307016c47330045de13b140e2 |
03-Nov-2008 |
Dan Gohman <gohman@apple.com> |
Overload AddInteger on int/long/long long instead of on int/int64_t, to avoid overload ambiguities. This fixes build errors introduced by r58623. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58632 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
b90c37f64c5b856a4492f0c1f16c065ae9e31232 |
03-Nov-2008 |
Nick Lewycky <nicholas@mxc.ca> |
Typo git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58594 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
9a40d3361ac29fd3c9e0b4a0aa5c7845cc46ec25 |
27-Oct-2008 |
Daniel Dunbar <daniel@zuster.org> |
Return bool (inserted) from StringSet::insert as for StringMap::insert. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58268 91177308-0d34-0410-b5e6-96231b3b80d8
tringSet.h
|
13e781ebe7a39e008dd5e5de78983e095e8a1d02 |
27-Oct-2008 |
David Greene <greened@obbligato.org> |
Add STL-style typedefs and default constructors to make it possible to use DenseMap in more contexts. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58256 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
30f100e14056c2fd88a3448c8bf89b656e7d8584 |
23-Oct-2008 |
Ted Kremenek <kremenek@apple.com> |
Fix incorrect testing for the end of the both strings in CStrInCStrNoCase. This could cause a read-out-of-bounds error if s2 is smaller than s1. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58009 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
e06e91122fefcadd252ddd2f2591e181683fc2f1 |
21-Oct-2008 |
Ted Kremenek <kremenek@apple.com> |
constify some methods and variables in ImmutableList. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57894 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableList.h
|
254a8860570b2624752b079b4a3e37b0942a888a |
16-Oct-2008 |
Dan Gohman <gohman@apple.com> |
Implement a SmallVector insert method that can insert multiple copies of a value, and add several additional utilities to make SmallVector better conform to the Container concept. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57616 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
3d4227bec59358199c7d53fad8f03fd075723fcf |
16-Oct-2008 |
Dan Gohman <gohman@apple.com> |
Fix several places that called mapped_iterator's constructor without passing in a function object. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57615 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
c9debfbf06c3fa717b16548a99b9a3f381d4eae7 |
15-Oct-2008 |
Daniel Dunbar <daniel@zuster.org> |
Add llvm::hexdigit to StringExtras (number -> hexadecimal char) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57536 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
75d53d6bd06dbd0add54d5b0185ce6536d23c19f |
12-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
this was to be removed after 2.4 branched. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57422 91177308-0d34-0410-b5e6-96231b3b80d8
terator
|
71f95b8531183d4a2f7c84d66d5aec17bc41b316 |
12-Oct-2008 |
Chris Lattner <sabre@nondot.org> |
random cleanup git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57383 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
23a98551ab65eeb8fe5019df8b7db4891582a4bd |
10-Oct-2008 |
Dale Johannesen <dalej@apple.com> |
Add a "loses information" return value to APFloat::convert and APFloat::convertToInteger. Restore return value to IEEE754. Adjust all users accordingly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57329 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
7111b02c734c992b8c97d9918118768026dad79e |
09-Oct-2008 |
Dale Johannesen <dalej@apple.com> |
Rename APFloat::convertToAPInt to bitcastToAPInt to make it clearer what the function does. No functional change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57325 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
73c3a94df976593fe6759446a4e30f95b493a76e |
22-Sep-2008 |
Rafael Espindola <rafael.espindola@gmail.com> |
Add bound checks in SmallVector git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56432 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
3d01fc7de86c75926e4e5ac7cc49f0116018893d |
22-Sep-2008 |
Oscar Fuentes <ofv@wanadoo.es> |
Initial support for the CMake build system. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56419 91177308-0d34-0410-b5e6-96231b3b80d8
ash_map.cmake
ash_set.cmake
terator.cmake
|
ed871805f718f6bd0f9f32888b82c66545fc1157 |
19-Sep-2008 |
Ted Kremenek <kremenek@apple.com> |
Added static methods to APSInt: getMinValue and getMaxValue. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56355 91177308-0d34-0410-b5e6-96231b3b80d8
PSInt.h
|
7b75fbf224c0a2d181c35708a27c514ae798c904 |
29-Aug-2008 |
Daniel Dunbar <daniel@zuster.org> |
Add DenseMap::lookup: /// lookup - Return the entry for the specified key, or a default /// constructed value if no such entry exists. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55523 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
944fac71e082cc2664cc71b4d3f6c72bab7143fb |
24-Aug-2008 |
Chris Lattner <sabre@nondot.org> |
Switch the asmprinter (.ll) and all the stuff it requires over to use raw_ostream instead of std::ostream. Among other goodness, this speeds up llvm-dis of kc++ with a release build from 0.85s to 0.49s (88% faster). Other interesting changes: 1) This makes Value::print be non-virtual. 2) AP[S]Int and ConstantRange can no longer print to ostream directly, use raw_ostream instead. 3) This fixes a bug in raw_os_ostream where it didn't flush itself when destroyed. 4) This adds a new SDNode::print method, instead of only allowing "dump". A lot of APIs have both std::ostream and raw_ostream versions, it would be useful to go through and systematically anihilate the std::ostream versions. This passes dejagnu, but there may be minor fallout, plz let me know if so and I'll fix it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55263 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
PSInt.h
|
535de1a8c14fdfeb3912d3192accb58d9aa1e9e7 |
23-Aug-2008 |
Dan Gohman <gohman@apple.com> |
Add a clear() method to FoldingSet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55210 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
55beb6ded8804a82e9e59017e596ae141ba381fe |
22-Aug-2008 |
Dan Gohman <gohman@apple.com> |
Add an empty() member to FoldingSet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55182 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
1501cdbf63cff3afd92df6cd249096770334b268 |
22-Aug-2008 |
Dan Gohman <gohman@apple.com> |
Fix SmallVector's size calculation so that a size of 0 is handled correctly, and change a few SmallVector uses to use size 0 to more clearly reflect their intent. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55181 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
2dba6a1bdb7d78b4d1e5e69b81989816193e6b70 |
22-Aug-2008 |
Chris Lattner <sabre@nondot.org> |
consolidate DenseMapInfo implementations, and add one for std::pair. Patch contributed by m-s. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55167 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
55767f69c5f925373b7901b180202a3d816a0eef |
21-Aug-2008 |
Chris Lattner <sabre@nondot.org> |
remove redundant include git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55116 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
aac0513ed08f7fd5279912b76d5a1e7cd3e96119 |
21-Aug-2008 |
Chris Lattner <sabre@nondot.org> |
Fix the build with gcc 4.3 as the host, patch by Zhongxing Xu! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55115 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
cbd56db62b7fa5a685bdca2eddefe9d04a1295f8 |
21-Aug-2008 |
Nick Lewycky <nicholas@mxc.ca> |
Fix build on GCC 4.3. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55110 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
98f8ccfad06c8928d899f506731987f951b2ebe4 |
20-Aug-2008 |
Chris Lattner <sabre@nondot.org> |
Move the fast-path (<=i64) cases of various APInt methods inline and the slow-path cases out of line. This speeds up instcombine a bit in real world cases. Patch contributed by m-s. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55063 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
fad86b003a839cef40ec8ce8408322f4913368ca |
17-Aug-2008 |
Chris Lattner <sabre@nondot.org> |
Rework the routines that convert AP[S]Int into a string. Now, instead of returning an std::string by value, it fills in a SmallString/SmallVector passed in. This significantly reduces string thrashing in some cases. More specifically, this: - Adds an operator<< and a print method for APInt that allows you to directly send them to an ostream. - Reimplements APInt::toString to be much simpler and more efficient algorithmically in addition to not thrashing strings quite as much. This speeds up llvm-dis on kc++ by 7%, and may also slightly speed up the asmprinter. This also fixes a bug I introduced into the asmwriter in a previous patch w.r.t. alias printing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54873 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
PSInt.h
|
9f17eb0b79717d479e462f0284442adbeae903ef |
17-Aug-2008 |
Chris Lattner <sabre@nondot.org> |
remove a dead APInt ctor. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54869 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
0c5a560b034b377e3966833de30167e9030b5cc8 |
15-Aug-2008 |
Owen Anderson <resistor@mac.com> |
Add a value_type typedef to SmallVector, to make it more compatible with STL adapters. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54819 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
183cc32e49aa6641a39347075c8240cea92a6c63 |
14-Aug-2008 |
Ted Kremenek <kremenek@apple.com> |
Removed redundant ctor. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54789 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
|
7fb842420a87d984196454b3e43fc54267f79edc |
13-Aug-2008 |
Daniel Dunbar <daniel@zuster.org> |
Add default constructor to APSInt - Creates uninitialized APInt. - Prevents need for embedding arbitrary constants when used as an out parameter, for example. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54757 91177308-0d34-0410-b5e6-96231b3b80d8
PSInt.h
|
eb4ab60bed82d15651bf77ae68ad266ec0eeae9d |
01-Aug-2008 |
Bill Wendling <isanbard@gmail.com> |
Removed unused parameters. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54262 91177308-0d34-0410-b5e6-96231b3b80d8
list.h
|
fed90b6d097d50881afb45e4d79f430db66dd741 |
28-Jul-2008 |
Dan Gohman <gohman@apple.com> |
Fold the useful features of alist and alist_node into ilist, and a new ilist_node class, and remove them. Unlike alist_node, ilist_node doesn't attempt to manage storage itself, so it avoids the associated problems, including being opaque in gdb. Adjust the Recycler class so that it doesn't depend on alist_node. Also, change it to use explicit Size and Align parameters, allowing it to work when the largest-sized node doesn't have the greatest alignment requirement. Change MachineInstr's MachineMemOperand list from a pool-backed alist to a std::list for now. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54146 91177308-0d34-0410-b5e6-96231b3b80d8
parseBitVector.h
list.h
list_node.h
list.h
list_node.h
|
4aad12c9cdc4ad3183f70797b3dce420e830f901 |
19-Jul-2008 |
Anton Korobeynikov <asl@math.spbu.ru> |
Remove bogus assertion. This unbreaks mingw, where ConstantSDNode has alignment 8 and LoadSDNode (used as LargestT template) - 4. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53782 91177308-0d34-0410-b5e6-96231b3b80d8
list_node.h
|
a0522465900eac1830b7dc3729d66f21ea16cc0c |
12-Jul-2008 |
Ted Kremenek <kremenek@apple.com> |
Inline typedef for alist_iterator::pointer to work with MSVC++. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53517 91177308-0d34-0410-b5e6-96231b3b80d8
list.h
|
066075030ad46b3494480a5f79f05443f947aca7 |
12-Jul-2008 |
Nick Lewycky <nicholas@mxc.ca> |
operator[] is not defined for list::iterator. Overload it in ilist::iterator to prevent silly things from happening accidentally. PR2171 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53507 91177308-0d34-0410-b5e6-96231b3b80d8
list.h
|
eca64f0980e3f686a36007c53272780119635337 |
12-Jul-2008 |
Ted Kremenek <kremenek@apple.com> |
Minor tweaks to the ImmutableList iterator interface. Added partial specialization of DenseMapInfo<T> for ImmutableList. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53485 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableList.h
|
0ebf14c4bb96397b7dd9ba61c38371f868e7b264 |
11-Jul-2008 |
Ted Kremenek <kremenek@apple.com> |
Make typedef public to make MSVC++ happy. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53433 91177308-0d34-0410-b5e6-96231b3b80d8
list_node.h
|
3000357ab58707faaa8ecb885c1ae09eb211e7c1 |
11-Jul-2008 |
Ted Kremenek <kremenek@apple.com> |
Make some typedefs public to make MSVC++ happy. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53432 91177308-0d34-0410-b5e6-96231b3b80d8
list.h
|
ccaa6540fc2866ab36f6ebecf6df101f613f8aa7 |
11-Jul-2008 |
Ted Kremenek <kremenek@apple.com> |
Make typedefs in ilist public (Visual C++ errors out when they are private). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53431 91177308-0d34-0410-b5e6-96231b3b80d8
list.h
|
98fd7f6b2f109e16abf3e4279c971f8d3703b8a6 |
11-Jul-2008 |
Bill Wendling <isanbard@gmail.com> |
Pull r53428 from Gaz into mainline: Remove warnings about unused/shadowed variables. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53430 91177308-0d34-0410-b5e6-96231b3b80d8
list_node.h
|
07f3cf76c671d0fa2a543f0df34e6be19001fd1d |
11-Jul-2008 |
Ted Kremenek <kremenek@apple.com> |
Added ImmutableMap constructor that accepts a const TreeTy*. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53429 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
|
4f4b348437ff607b53c66ec7da8a011b637ebc99 |
11-Jul-2008 |
Dan Gohman <gohman@apple.com> |
Tidy up #includes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53426 91177308-0d34-0410-b5e6-96231b3b80d8
list.h
list_node.h
|
df99c29e7b25771d202b969ca5dec359a62897b1 |
10-Jul-2008 |
Duncan Sands <baldrick@free.fr> |
Correct a comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53401 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
e14d81deeb6bb3404ffee5e59ecb88304f112f4a |
08-Jul-2008 |
Dan Gohman <gohman@apple.com> |
Add some basic Pool-allocation infrastructure. This adds a Recycler class, for handling bookkeeping for deleted objects, as well as the alist class template, for keeping lists of objects allocated from Recyclers, and some related utilities. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53210 91177308-0d34-0410-b5e6-96231b3b80d8
list.h
list_node.h
list.h
|
9ff0f0ea39ea71d33887584d10c88dda2038285b |
07-Jul-2008 |
Dan Gohman <gohman@apple.com> |
Make ilist noncopyable too. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53190 91177308-0d34-0410-b5e6-96231b3b80d8
list.h
|
f1787008295aa274490a5723d5556b3c92045604 |
07-Jul-2008 |
Dan Gohman <gohman@apple.com> |
Don't use std::advance just to increment or decrement by one. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53189 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
d24c62c67e674a856af25a93846619b4f0d3e234 |
07-Jul-2008 |
Dan Gohman <gohman@apple.com> |
Remove unnecessary static_casts. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53181 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
ccd95b5f9ceb4f022d29cd14173ccdf0333ff77b |
07-Jul-2008 |
Dan Gohman <gohman@apple.com> |
Remove an unnecessary reinterpret_cast. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53180 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
1002c0203450620594a85454c6a095ca94b87cb2 |
07-Jul-2008 |
Dan Gohman <gohman@apple.com> |
Add explicit keywords. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53179 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
6b345ee9b2833cf1b2f79dc16d06d4060bec36ef |
07-Jul-2008 |
Dan Gohman <gohman@apple.com> |
Make DenseMap's insert return a pair, to more closely resemble std::map. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53177 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
enseSet.h
|
aa5044d3ce80a2759a6084911db77dec385a47fc |
07-Jul-2008 |
Ted Kremenek <kremenek@apple.com> |
Removed ImmutableMap::SlimFind and replaced it with ImmutableMap::lookup. The new method does the same thing, except that it returns a pointer to the mapped data type, and not to an internal tree node. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53171 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
|
08c09496c2fa7c1da027a52d8c410c2ae98481e1 |
03-Jul-2008 |
Dan Gohman <gohman@apple.com> |
Use operator new instead of new char[]. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53067 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
93ee2fd7da6100eafcc510cfdeb71f2bfdd15429 |
02-Jul-2008 |
Owen Anderson <resistor@mac.com> |
Have DenseSet::insert return a bool indicating whether the insertion succeeded or not. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53033 91177308-0d34-0410-b5e6-96231b3b80d8
enseSet.h
|
509e4f30e85355540dc3bf52629d2356cfd4c1bf |
02-Jul-2008 |
Chris Lattner <sabre@nondot.org> |
optimize StringMap::clear git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53009 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
fce6e546aab64602c41eeb83381b7617f97d0069 |
02-Jul-2008 |
Chris Lattner <sabre@nondot.org> |
Add a new (simple) StringMap::clear method, patch by Pratik Solanki! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53008 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
445723bfb0d3c4cb7ecebb60710c669cf3dd2c8d |
02-Jul-2008 |
Ted Kremenek <kremenek@apple.com> |
Implemented operator!= for the ImmutableList iterator. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52998 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableList.h
|
72e61b85017286418ca5266c2ff7b88782e2fe00 |
02-Jul-2008 |
Owen Anderson <resistor@mac.com> |
Add a version of AddString that takes a const char* so we can avoid extraneous conversions to std::string. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52995 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
e1bf7fdcb4be19c556f4c789dd43864f5d13c5e4 |
02-Jul-2008 |
Ted Kremenek <kremenek@apple.com> |
Added partial specialization of FoldingSetTrait for pointers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52989 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
ff4d609ec5eca4fc30a931a505d0c18f7569f8c4 |
01-Jul-2008 |
Seo Sanghyeon <sanxiyn@gmail.com> |
Compilation fix git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52950 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
f4d7708972370bdd438830e50594b90a36bb6f76 |
30-Jun-2008 |
Dan Gohman <gohman@apple.com> |
Make SmallVector's grow use memcpy in common cases instead of std::uninitialized_copy, which uses memmove. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52928 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
7c6618926a9036fccc44fc58e0e0f47042904e7c |
30-Jun-2008 |
Dan Gohman <gohman@apple.com> |
Use plain operator new instead of new char[]. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52927 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
30389141c9c7270b4733ec0b9bc5ad58541f39da |
30-Jun-2008 |
Ted Kremenek <kremenek@apple.com> |
Added some comments and some cleanups. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52922 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableList.h
|
3771902e922796f506dfda5955d7d80b61104696 |
30-Jun-2008 |
Ted Kremenek <kremenek@apple.com> |
Added ImmutableList, a companion ADT to ImmutableSet and ImmutableMap that is used to represent a purely functional list. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52911 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableList.h
|
f25381ed35c345c252da8b8a8ae9af41eef6b35c |
30-Jun-2008 |
Chris Lattner <sabre@nondot.org> |
add convenience 'constructors' git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52908 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
8032020cf209721bc104648f28b1c4b45fb88691 |
26-Jun-2008 |
Bill Wendling <isanbard@gmail.com> |
Remove warnings about shadowed and unused variables. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52791 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
2b08676ca8b6a19ba02df7a2237b8d43531a586b |
24-Jun-2008 |
Dan Gohman <gohman@apple.com> |
Pass std::string by reference. Thanks Chris! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52678 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
caf746aa5a836bc3401049235c6d7d41c5921502 |
24-Jun-2008 |
Dan Gohman <gohman@apple.com> |
Add a clear() method to PriorityQueue. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52656 91177308-0d34-0410-b5e6-96231b3b80d8
riorityQueue.h
|
2904538fc30fbdc2788802ca7389482d5e20a717 |
23-Jun-2008 |
Dan Gohman <gohman@apple.com> |
Simplify erase_one slightly. It's not necessary to preserve the value of the element to be erased while the heap is being updated. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52646 91177308-0d34-0410-b5e6-96231b3b80d8
riorityQueue.h
|
84701836bfb1889e2e26e361ebd5d29d972ab396 |
23-Jun-2008 |
Dan Gohman <gohman@apple.com> |
Add methods to StringMap to erase entries by key. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52640 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
300c6c5167d2869d1568d783d0e3e48bf4b03a6c |
23-Jun-2008 |
Wojciech Matyjewicz <wmatyjewicz@fastmail.fm> |
First step to fix PR2088. Implement routine to compute the multiplicative inverse of a given number. Modify udivrem to allow input and output pairs of arguments to overlap. Patch is based on the work by Chandler Carruth. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52638 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
3627e34486db088661bc7fb6c0dde6a18a543217 |
21-Jun-2008 |
Dan Gohman <gohman@apple.com> |
Add a priority queue class, which is a wrapper around std::priority_queue and provides fairly efficient removal of arbitrary elements. Switch ScheduleDAGRRList from std::set to this new priority queue. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52582 91177308-0d34-0410-b5e6-96231b3b80d8
riorityQueue.h
|
2b7470eb54880ce7f74469d6e09eaf7f0864f8ab |
17-Jun-2008 |
Owen Anderson <resistor@mac.com> |
Fix use of placement new to actually use an address. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52423 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
8eab8a2798fe74c98703bdeac64661beea0b4dbc |
09-Jun-2008 |
Duncan Sands <baldrick@free.fr> |
Remove some DAG combiner assumptions about sizes of integer types. Fix the isMask APInt method to actually work (hopefully) rather than crashing because it adds apints of different bitwidths. It looks like isShiftedMask is also broken, but I'm leaving that one to the APInt people (it is not used anywhere). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52142 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
d10e467ad961f7c3b548ee2f2de8a576a245e25a |
09-Jun-2008 |
Chris Lattner <sabre@nondot.org> |
Add a simple, but efficient, generic scoped hash table git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52112 91177308-0d34-0410-b5e6-96231b3b80d8
copedHashTable.h
|
b8d0b807fc85e5ea5fb3a156fea5f8c2214e1f31 |
01-Jun-2008 |
Chris Lattner <sabre@nondot.org> |
add a predicate. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51842 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
11bf2ace556da018c65163557fb97704b1cf88e4 |
31-May-2008 |
Dan Gohman <gohman@apple.com> |
Add an operator< for SmallVector. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51791 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
cdff51cabcebcd0eeb227ecf92eabbf8b1aeb77c |
30-May-2008 |
Dan Gohman <gohman@apple.com> |
Fix an error in the comment for APInt::getMinSignedBits. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51720 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
81fb27cc3a2b0c8f30fd9f47180ba8476ad6dae5 |
29-May-2008 |
Anton Korobeynikov <asl@math.spbu.ru> |
Remove guard, so *each* inclusion will result in a warning git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51708 91177308-0d34-0410-b5e6-96231b3b80d8
terator
|
1baa88e3de8947b02d9ef4caa73e5860f048ec6e |
29-May-2008 |
Dan Gohman <gohman@apple.com> |
Prune and tidy #includes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51697 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
b372d59a113c2dae24483c03884e4e8705028021 |
29-May-2008 |
Anton Korobeynikov <asl@math.spbu.ru> |
Add file with warning for backward comptibility. Should be removed after 2.4 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51693 91177308-0d34-0410-b5e6-96231b3b80d8
terator
|
1ff4ed726bb8526d1e49030245365f8c86a8bb49 |
29-May-2008 |
Anton Korobeynikov <asl@math.spbu.ru> |
Update guards git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51692 91177308-0d34-0410-b5e6-96231b3b80d8
ash_map.h.in
ash_set.h.in
list.h
terator.h.in
|
43d1fd449f1a0ac9d9dafa0b9569bb6b2e976198 |
29-May-2008 |
Anton Korobeynikov <asl@math.spbu.ru> |
For PR1338: rename include/llvm/ADT/ilist and friends to end with ".h" git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51687 91177308-0d34-0410-b5e6-96231b3b80d8
epthFirstIterator.h
quivalenceClasses.h
ashExtras.h
ostOrderIterator.h
CCIterator.h
TLExtras.h
mallVector.h
parseBitVector.h
ash_map.h.in
ash_map.in
ash_set.h.in
ash_set.in
list
list.h
terator.h.in
terator.in
|
8e1cddc11dd8be5855a43e31d8db20b00c54ee03 |
27-May-2008 |
Matthijs Kooijman <matthijs@stdin.nl> |
Use an explicit llvm:: prefix in the STATISTIC macro, so STATISTIC can still be used when "using namespace llvm" is not in effect. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51592 91177308-0d34-0410-b5e6-96231b3b80d8
tatistic.h
|
13d57320bd212483463d4f8992d5787b29eda5df |
19-May-2008 |
Bill Wendling <isanbard@gmail.com> |
Remove warnings about unused parameters and shadowed variables. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51266 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
e269f434b1f4e81974b2c68abf84d4b64419edd4 |
13-May-2008 |
Anton Korobeynikov <asl@math.spbu.ru> |
Add thin layer over StringMap to form StringSet. By Mikhail Glushenkov. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51048 91177308-0d34-0410-b5e6-96231b3b80d8
tringSet.h
|
1fd2e6d84e271c17d7ae8778058c13de517dbc17 |
07-May-2008 |
Ted Kremenek <kremenek@apple.com> |
Make the interface of CStrInCStrNoCase be the same as strcasestr. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50828 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
fdedd5397dcbec32a4591feca9a3f6a0eba60492 |
07-May-2008 |
Ted Kremenek <kremenek@apple.com> |
Fix some serious logical errors in CStrInCStrNoCase pointed out by Bill. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50826 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
fbd15899b3bcc459bea20f5bb2866244eea56d6a |
07-May-2008 |
Ted Kremenek <kremenek@apple.com> |
Guard for empty strings in CStrInCStrNoCase. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50823 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
6925f5074f6c456dc37f052b67229d07f667b2e5 |
07-May-2008 |
Ted Kremenek <kremenek@apple.com> |
Added CStrInCStrNoCase, a portable implementation of strcasestr. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50821 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
094aa6ce47f0f0604469e0a24bde131ce6326938 |
07-May-2008 |
Nick Lewycky <nicholas@mxc.ca> |
Typo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50805 91177308-0d34-0410-b5e6-96231b3b80d8
list
|
34cd4a484e532cc463fd5a4bf59b88d13c5467c1 |
05-May-2008 |
Evan Cheng <evan.cheng@apple.com> |
Fix more -Wshorten-64-to-32 warnings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50659 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
mallPtrSet.h
mallVector.h
tringExtras.h
tringMap.h
niqueVector.h
|
7a07428ad1015306d7235cabebd5f4f78e62d33c |
03-May-2008 |
Ted Kremenek <kremenek@apple.com> |
Implement operator-> for ImmutableMap iterators. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50603 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
|
48e8c80e1791adb7a07b8fd6e27edcdfbb756950 |
02-May-2008 |
Evan Cheng <evan.cheng@apple.com> |
Suppress -Wshorten-64-to-32 warnings for 64-bit hosts. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50590 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
b606dba13ba84721cc297174c2eb1275bc642604 |
28-Apr-2008 |
Chris Lattner <sabre@nondot.org> |
Remove the SmallVector ctor that converts from a SmallVectorImpl. This conversion open the door for many nasty implicit conversion issues, and can be easily solved by initializing with (V.begin(), V.end()) when needed. This patch includes many small cleanups for sdisel also. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50340 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
e49e52d85601e8f732da16ca21e3de6cefd20158 |
28-Apr-2008 |
Chris Lattner <sabre@nondot.org> |
restore the copy ctor in SmallVector. This fixes serious errors I introduced in my last patch. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50338 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
5da0b73aa11eca430ed9e03e157f8432870fa50b |
28-Apr-2008 |
Chris Lattner <sabre@nondot.org> |
generalize SmallVector copy ctor, there is no requirement for the initialization vector to have the same fixed size, just the same element type. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50334 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
13f7a405082ad154394b2f85e297668cf4ec8292 |
25-Apr-2008 |
Ted Kremenek <kremenek@apple.com> |
Implement != for DenseSet iterators. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50236 91177308-0d34-0410-b5e6-96231b3b80d8
enseSet.h
|
ea33c8fed681d103f159e7e80591437c726576ec |
25-Apr-2008 |
Ted Kremenek <kremenek@apple.com> |
Added iterator support for DenseSet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50235 91177308-0d34-0410-b5e6-96231b3b80d8
enseSet.h
|
0861d1fa5c1c8ca2adb8af1df0b3fce8f6d3ba5b |
17-Apr-2008 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Bring in uint32_t, uint64_t, and int64_t types for MSVC. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49854 91177308-0d34-0410-b5e6-96231b3b80d8
mallString.h
|
036a94ed61da276c23b59362fc586248d1d4289d |
16-Apr-2008 |
Chris Lattner <sabre@nondot.org> |
fix off by one error. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49766 91177308-0d34-0410-b5e6-96231b3b80d8
mallString.h
|
c0814dc606c8397207534bcd4adbc5525a01e83a |
16-Apr-2008 |
Chris Lattner <sabre@nondot.org> |
give smallstring some methods to do 'itoa'. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49765 91177308-0d34-0410-b5e6-96231b3b80d8
mallString.h
|
30ac7df857cf2144dadde270075fefa7293365ee |
11-Apr-2008 |
Chris Lattner <sabre@nondot.org> |
improvements for IntrusiveRefCntPtr, patch by Mikhail Glushenkov git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49538 91177308-0d34-0410-b5e6-96231b3b80d8
ntrusiveRefCntPtr.h
|
412821284f16a683e9b734baf2b6c9b4635857f2 |
07-Apr-2008 |
Owen Anderson <resistor@mac.com> |
Add operator= implementations to SparseBitVector, allowing it to be used in GVN. This results in both time and memory savings for GVN. For example, one testcase went from 10.5s to 6s with this patch. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49345 91177308-0d34-0410-b5e6-96231b3b80d8
parseBitVector.h
|
a022e3fc2f2faec2982ac184c98fee28d85a448a |
02-Apr-2008 |
David Greene <greened@obbligato.org> |
Iterators folloring a SmallVector erased element are invalidated so don't access cached iterators from after the erased element. Re-apply 49056 with SmallVector support. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49106 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
d27c991cebe48fdf82b5d9eec6c2a1a244f82622 |
30-Mar-2008 |
Chris Lattner <sabre@nondot.org> |
Fix "Control reaches the end of non-void function" warnings, patch by David Chisnall. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48963 91177308-0d34-0410-b5e6-96231b3b80d8
parseBitVector.h
|
2896652be29de97a6e08b5cccc015096f4ed17b5 |
27-Mar-2008 |
Chris Lattner <sabre@nondot.org> |
when a node is removed from an ilist, set its next/prev pointers to null. This means that uses of invalidated iterators will explode violently with: ilist:143: failed assertion `NodePtr && "++'d off the end of an ilist!"' instead of happening to work "most of the time". git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48859 91177308-0d34-0410-b5e6-96231b3b80d8
list
|
950a4c40b823cd4f09dc71be635229246dfd6cac |
25-Mar-2008 |
Dan Gohman <gohman@apple.com> |
Add explicit keywords. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48801 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
ac67b7ea8fcd530995d7aefd2ad0f04543789855 |
23-Mar-2008 |
Anton Korobeynikov <asl@math.spbu.ru> |
Add first proof-of-concept universal compiler driver framework based on ideas mentioned in PR686. Written by Mikhail Glushenkov and contributed by Codedgers, Inc. Old llvmc will be removed soon after new one will have all its properties. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48699 91177308-0d34-0410-b5e6-96231b3b80d8
ntrusiveRefCntPtr.h
|
c35595fd2ac733ff0c35a1e43992f59f35816411 |
19-Mar-2008 |
Duncan Sands <baldrick@free.fr> |
Fix comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48543 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
acddf9d019316ac1735667dc92d96092e9f5bf2e |
18-Mar-2008 |
Scott Michel <scottm@aero.org> |
Dial down gcc's warnings: don't use 0UL when 0U suffices (and when the variables and methods themselves only use unsigned.) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48492 91177308-0d34-0410-b5e6-96231b3b80d8
parseBitVector.h
|
59746c251654bd3f500ba329fa7fa9425e03ddee |
13-Mar-2008 |
Dan Gohman <gohman@apple.com> |
No need for typedefs with enums in C++. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48312 91177308-0d34-0410-b5e6-96231b3b80d8
rie.h
|
cf609575ef6e47cd5ce775af175c67a3b621120e |
29-Feb-2008 |
Dan Gohman <gohman@apple.com> |
Add support to APInt for shift and rotate operations with APInt instead of uint32_t for the shift/rotate count operand type. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47741 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
93c276e1c92da03ce9805fd3f3814b5e9b8cd57c |
29-Feb-2008 |
Dan Gohman <gohman@apple.com> |
Add a method to APFloat to convert directly from APInt. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47738 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
95e78348f08fab152b2b03c516cc9f22ed60b8de |
26-Feb-2008 |
Anton Korobeynikov <asl@math.spbu.ru> |
Update per review. Patch by Mikhail Glushenkov! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47628 91177308-0d34-0410-b5e6-96231b3b80d8
ntrusiveRefCntPtr.h
|
e85fe660e4e99d30ca9292b706b8ffe6d0367dca |
26-Feb-2008 |
Bill Wendling <isanbard@gmail.com> |
Detabify git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47597 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
PInt.h
|
faa999565f15e70630c09bd75002408d3cc7ff66 |
26-Feb-2008 |
Eli Friedman <eli.friedman@gmail.com> |
Add missing include (for ptrdiff_t). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47576 91177308-0d34-0410-b5e6-96231b3b80d8
wningPtr.h
|
567a273370fd7f1f1e8dd4a372d7b81f26df7a47 |
22-Feb-2008 |
Anton Korobeynikov <asl@math.spbu.ru> |
Add smart refcounting pointer class to ADT back (known before as IntrusiveSPtr.h). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47482 91177308-0d34-0410-b5e6-96231b3b80d8
ntrusiveRefCntPtr.h
|
602d1c51e055efd56b284a2ba41083ff38c337bc |
22-Feb-2008 |
Anton Korobeynikov <asl@math.spbu.ru> |
Unbreak build for VC2008. Patch by Argiris Kirtzidis! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47480 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
c9525263f6c519d987209eb39e33a73165c526d6 |
20-Feb-2008 |
Dan Gohman <gohman@apple.com> |
Remove inline keywords from in-class function definitions, for consistency. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47393 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
bd999178929c10bdeb0a2577fa02981778edaee7 |
20-Feb-2008 |
Dan Gohman <gohman@apple.com> |
Add an intersects method to APInt, to capture a common idiom. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47379 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
ae9f3a3b7c915f725aef5a7250e88eaeddda03c6 |
20-Feb-2008 |
Anton Korobeynikov <asl@math.spbu.ru> |
Unbreak build with gcc 4.3: provide missed includes and silence most annoying warnings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47367 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
enseMap.h
list
|
0123b7dcfa9be97588926407163deb8d603487ce |
16-Feb-2008 |
Scott Michel <scottm@aero.org> |
Make tblgen a little smarter about constants smaller than i32. Currently, tblgen will complain if a sign-extended constant does not fit into a data type smaller than i32, e.g., i16. This causes a problem when certain hex constants are used, such as 0xff for byte masks or immediate xor values. tblgen will try the sign-extended value first and, if the sign extended value would overflow, it tries to see if the unsigned value will fit. Consequently, a software developer can now safely incant: (XORHIr16 R16C:$rA, 0xffff) which is somewhat clearer and more informative than incanting: (XORHIr16 R16C:$rA, (i16 -1)) even if the two are bitwise equivalent. Tblgen also outputs the 64-bit unsigned constant in the generated ISel code when getTargetConstant() is invoked. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47188 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
cd2ad1df5d2e0600200c81bc214e0b65ff699c5f |
13-Feb-2008 |
Dan Gohman <gohman@apple.com> |
Fix a typo in a comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47097 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
7649127ec152e226d761845983ba91e69712d7da |
13-Feb-2008 |
Dan Gohman <gohman@apple.com> |
Rename APInt's isPositive to isNonNegative, to reflect what it actually does. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47090 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
42dd77f20702d5ca1e0f3882ad74e7a02fc9589c |
13-Feb-2008 |
Dan Gohman <gohman@apple.com> |
Add countTrailingOnes member functions to APInt. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47086 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
b5cfaaedbea10d8fcf5ca23be7955ca0f4fd5c9c |
13-Feb-2008 |
Dan Gohman <gohman@apple.com> |
Fix a typo in a comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47085 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
ffe3e2514a2550152267072ed7afeebb3dd3016c |
12-Feb-2008 |
Dan Gohman <gohman@apple.com> |
Change APInt::getBitsSet to accept a "half-open" range, where the hiBit parameter marks the index one past the last desired set bit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47032 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
d3993d13be7b34fe8753eab9eb3d6499b7c4cd9f |
12-Feb-2008 |
Dan Gohman <gohman@apple.com> |
Correct the order of the arguments in the examples in the comments for APInt::getBitsSet. And fix an off-by-one bug in "wrapping" mode. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46978 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
a618f82c9fdbe869b41581f00ae357e1b22302d1 |
12-Feb-2008 |
Ted Kremenek <kremenek@apple.com> |
The factories for ImutAVLTree/ImmutableSet/ImmutableMap now take an (optional) BumpPtrAllocator argument to their constructors. This BumpPtrAllocator will be used to allocate trees. If no BumpPtrAllocator is provided, one is created (as before). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46975 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
mmutableSet.h
|
1f801fa5ada9cb40fb97ae755c282e91af54a1bc |
11-Feb-2008 |
Ted Kremenek <kremenek@apple.com> |
Added "Profile" method to APFloat for use with FoldingSet. Added member template "Add" to FoldingSetNodeID that allows "adding" arbitrary objects to a profile via dispatch to FoldingSetTrait<T>::Profile(). Removed FoldingSetNodeID::AddAPFloat and FoldingSetNodeID::APInt, as their functionality is now replaced using the above mentioned member template. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46957 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
oldingSet.h
|
ec646cfd07f1354364e0899561aabffef5b702fd |
08-Feb-2008 |
Dan Gohman <gohman@apple.com> |
Add an isSignedIntN, like isIntN but for signed integer values instead of unsigned. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46894 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
86383e1f7cc8c31eafc6e3d8a67ce6f23d1bce63 |
08-Feb-2008 |
Ted Kremenek <kremenek@apple.com> |
Constified operator<< in APSInt. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46882 91177308-0d34-0410-b5e6-96231b3b80d8
PSInt.h
|
167b8bc24d4cc2789c682962b123877a73ad0568 |
07-Feb-2008 |
Dan Gohman <gohman@apple.com> |
Add support to FoldingSet for hashing APInt objects. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46833 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
5c4fb22809f2da261e3957dc7fc42e19193f70b7 |
06-Feb-2008 |
Anton Korobeynikov <asl@math.spbu.ru> |
Don't dereference an invalid pointer if string is empty. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46781 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
9dc7ab538ee845e2477519c740a2c736a19bc30d |
05-Feb-2008 |
Ted Kremenek <kremenek@apple.com> |
Added FoldingSet profiling support to ImmutableSet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46757 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
95da16e2881a662401220cd52a4267b7cd7f5860 |
05-Feb-2008 |
Ted Kremenek <kremenek@apple.com> |
Changed profiling method for ImmutableMap to once again just use its unique ImutAVLTree* for profiling. Modified ImutAVLTree: (1) changed ComputeHash() to ComputeDigest() and (2) changed Profile() to use the computed digest and (3) modified insertion of IMutAVLTree into the FoldingSet owned by the ImutAVLTreeFactory object to use profiling instead of computing a direct hash. This fixes a bug where our abuse of the FoldingSet would not work when the FoldingSet was resized. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46753 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
mmutableSet.h
|
c695ea9e8dca7a4f955b6bc17da49be5553c9f37 |
04-Feb-2008 |
Ted Kremenek <kremenek@apple.com> |
Modified 'Profile' method of ImmutableMap to use the 'Profile' method of the contained ImutAVLTree root. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46719 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
|
f357afb4045307a24c52606e267385148367a7a3 |
04-Feb-2008 |
Ted Kremenek <kremenek@apple.com> |
Modified node creation of ImutAVLTree to do a hash lookup for an existing node in the FoldingSet of nodes held by the Factory object. If we we find a node with a matching hash, we do a full structural comparison. Nodes are also now inserted into the FoldingSet only when we mark them Immutable, as their children can change during intermediate-rebalancing. The 'Profile' method for ImutAVLTree is no longer used when looking up existing ImutAVLTrees with a given set of contents; instead the Profile method is used by other clients that wish to insert such a tree into a folding set. This means that we are not using FoldingSet in ImutAVLTreeFactory in the way it was intended, but instead are using it as an opaque hashtable. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46717 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
26e3c445fc844b2f241dfdde9ce7e0602ba13cc4 |
04-Feb-2008 |
Ted Kremenek <kremenek@apple.com> |
Added "bucket_iterators" to FoldingSet. Bucket iterators allow iteration over all the nodes in a particular bucket. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46716 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
d9719495c376873abddbe13a9675bb3e7103dba7 |
04-Feb-2008 |
Ted Kremenek <kremenek@apple.com> |
constified operator~(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46707 91177308-0d34-0410-b5e6-96231b3b80d8
PSInt.h
|
ec3e5c8a39c3dae7457d0eb18f98685decb23fcd |
01-Feb-2008 |
Anton Korobeynikov <asl@math.spbu.ru> |
Add convenient std::string helpers to StringMap. Patch by Mikhail Glushenkov! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46625 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
713a13906aedef33669f5bc961140bd41e6241d2 |
31-Jan-2008 |
Anton Korobeynikov <asl@math.spbu.ru> |
Reapply the patch with fix. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46615 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
a91cfa9cd09635a6d046e144d07e68d924ac0fbb |
31-Jan-2008 |
Chris Lattner <sabre@nondot.org> |
revert anton's recent stringmap patch, which breaks clang. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46614 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
f429a519c82af1e70c7b9990e8b2049eb75e63ac |
31-Jan-2008 |
Anton Korobeynikov <asl@math.spbu.ru> |
Make StringMap to be more STL'ish. Patch by Mikhail Glushenkov! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46612 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
75fb496fc6b1ef5301d7262f40a842a2385f3930 |
31-Jan-2008 |
Anton Korobeynikov <asl@math.spbu.ru> |
Whitespace cleanup git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46611 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
d25c9cd3ff5786655201c550ae76f1b89815e1c7 |
29-Jan-2008 |
Ted Kremenek <kremenek@apple.com> |
Altered ctor for APSInt to accept an optional "isUnsigned" flag. Default behavior is unchanged. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46521 91177308-0d34-0410-b5e6-96231b3b80d8
PSInt.h
|
7afe973add96f7b189b018239b5b9e43fe4a8dcf |
28-Jan-2008 |
Ted Kremenek <kremenek@apple.com> |
Added destructor for template class FoldingSetNodeWrapper. Added getValue() to FoldingSetNodeWrapper. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46465 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
cadf873c83ad7ea7c638e6d98fc5f20752702b03 |
24-Jan-2008 |
Ted Kremenek <kremenek@apple.com> |
Added additional overloaded operators for APSInt to match the operators of APInt. While some operators were already specifically overloaded for APSInt, others resulted in using the overloaded operator methods in APInt, which would result in the signedness bit being lost. Modified the APSInt(APInt&) constructor to be "explicit" and to take an extra (optional) flag to indicate the signedness. Making the ctor explicit will catch any implicit conversations between APSInt -> APInt -> APSInt that results in the signedness flag being lost. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46316 91177308-0d34-0410-b5e6-96231b3b80d8
PSInt.h
|
1eed950d7cb69906264cfb49895165e3b51524be |
23-Jan-2008 |
Ted Kremenek <kremenek@apple.com> |
Added "getRoot()" to ImmutableSet. Made ImmutableSet::ImmutableSet(ImutAVLTree* Root) public. (this allows handy casting between trees and sets). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46277 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
3387060470e25e6917adcdde3baa41e959172e90 |
21-Jan-2008 |
Ted Kremenek <kremenek@apple.com> |
Fixed buggy caching of the hash value of an ImutAVLTree node. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46229 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
8893b0d3ac7b6eb6957e645c59f63651891cef97 |
21-Jan-2008 |
Ted Kremenek <kremenek@apple.com> |
Moved method call within a conditional branch because its effects will be ignored on the false branch. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46228 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
c4125a3c44171f90639621c3c93182a7fe45b24e |
21-Jan-2008 |
Ted Kremenek <kremenek@apple.com> |
Adjusted ImutAVLTree::ComputeHash to compute a hash value that is based on a clearer sequence of hashing compositions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46227 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
c899b33b830c360e53eb35440a1371542925414f |
21-Jan-2008 |
Ted Kremenek <kremenek@apple.com> |
Added "clear" method to FoldingSetNodeID to allow a FoldingSetNodeID object to be reused to compute multiple object profiles. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46226 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
6518f5fcbfc24e53ae453da0b080adf5448327be |
21-Jan-2008 |
Ted Kremenek <kremenek@apple.com> |
Replaced (FoldingSet) profiling of ImutAVLTree with a hashing based scheme. The problem was that we previously hashed based on the pointers of the left and right children, but this is bogus: we can easily have different trees that represent the same set. Now we use a hashing based scheme that compares the *contents* of the trees, but not without having to do a full scan of a tree. The only caveat is that with hashing is that we may have collisions, which result in two different trees being falsely labeled as equivalent. If this becomes a problem, we can add extra data to the profile to hopefully resolve most collisions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46224 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
187784996c1bdf8aafb5f8719bcbde9260465865 |
19-Jan-2008 |
Ted Kremenek <kremenek@apple.com> |
Changed argument name for 'Profile' method to potentially fix a name conflict reported in pr1929 (http://llvm.org/PR1929). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46193 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
3cf8bec783809269a5dbb81d6d1693ee18fcb37c |
19-Jan-2008 |
Ted Kremenek <kremenek@apple.com> |
Modified ImmutableSet/ImmutableMap to use FoldingSet profiling using FoldingSetTrait instead of directly calling a 'Profile' method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46190 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
4048a082847cea72431aa8235f54941ed064913b |
19-Jan-2008 |
Ted Kremenek <kremenek@apple.com> |
Added FoldingSet style 'profiling' support for APSInt. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46189 91177308-0d34-0410-b5e6-96231b3b80d8
PSInt.h
|
e420debd26300cbeb6af2722e3342132b2be1b3c |
19-Jan-2008 |
Ted Kremenek <kremenek@apple.com> |
Added FoldingSet style 'profiling' support for APInt. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46188 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
0a3fecad0a4bf48a83eb7370a4d46880efdc6971 |
19-Jan-2008 |
Ted Kremenek <kremenek@apple.com> |
Made 'FoldingSetNodeID' a proper class instead of a nested class in 'FoldingSetNodeImpl' (previously 'FoldingSetNodeID' was a typedef of 'FoldingSetNodeImpl::NodeID'). Why? Clients can now easily forward declare 'FoldingSetNodeID' without having to include FoldingSet.h. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46187 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
a753f703d1e532dbec5f89c6af834ccd72581ca9 |
19-Jan-2008 |
Ted Kremenek <kremenek@apple.com> |
Made 'profiling' of objects in a FoldingSet trait-based using FoldingSetTrait instead of always assuming that the stored objects had a method called 'Profile'. The default behavior is to dispatch to a 'Profile' method (as before), but via template specialization this behavior can now be overridden by clients. Added templated class 'FoldingSetNodeWrapper', a generic wrapper class that allows one to insert objects into a FoldingSet that do not directly inherit from FoldingSetNode. This is useful for inserting objects that do not always need to pay the overhead of inheriting from FoldingSetNode, or were designed with that behavior in mind. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46186 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
45695534323a1e79a49eca5f8cc7423ec798244b |
18-Jan-2008 |
Chris Lattner <sabre@nondot.org> |
don't form an std::string with a null pointer, it aborts. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46166 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
e8277538e74bb70bcf8367267b527e8501eb1238 |
18-Jan-2008 |
Ted Kremenek <kremenek@apple.com> |
Reverted implementation of ImmutableMap::find() to return a TreeTy* instead of an iterator, since the implementation returned an iterator that pointed to a different node! Renamed this implementation to SlimFind() so that users do not expect it to return an iterator (it is a more efficient implementation than returning an iterator if the user just wants to find the value of a key). Added a FIXME to implement ImmutableMap::find() that returns an iterator. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46150 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
|
e509e7a17819f808dabb815474eb8c04540de7b3 |
17-Jan-2008 |
Ted Kremenek <kremenek@apple.com> |
Implemented "FIXME" in ImutAVLTree: isEqual() now also compares the *data* value and not just the key value when comparing trees. To do this we added data_type and data_type_ref to the ImutContainerInfo trait classes. For values stored in the tree that do not have separate key and data components, data_type is simply a typedef of bool, and isDataEqual() always evaluates to true. This allows us to support both ImmutableSet and ImmutableMap using the same underlying logic. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46130 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
mmutableSet.h
|
316e98447122fc3f1e99930583a305ba481e848c |
16-Jan-2008 |
Ted Kremenek <kremenek@apple.com> |
Changed ImmutableMap::find to return an iterator instead of a pointer to the tree node. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46034 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
|
8874628e30a327afe91648c84bfa1e2dd13f0dba |
11-Jan-2008 |
Chris Lattner <sabre@nondot.org> |
add operator==/!= to smallvector. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45872 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
6632f952393834fde26d53ea724ce2a53781d210 |
08-Jan-2008 |
Ted Kremenek <kremenek@apple.com> |
Added "getRoot()" to ImmutableMap. Made the ctor for ImmutableMap to construct a map from an AVL tree public. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45756 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
|
0a8cabb17892746ba71a94f494a5d293a716edfd |
08-Jan-2008 |
Ted Kremenek <kremenek@apple.com> |
Fixed 80 col. violation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45752 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
|
6f2197699a53c5711ab7b0f8cc1b57f5e449e40a |
02-Jan-2008 |
Ted Kremenek <kremenek@apple.com> |
Inverted argument order for ImmutableMap::Profile. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45507 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
|
3c6255c376127f9e79b8bab47a2fd585131e8fcd |
02-Jan-2008 |
Ted Kremenek <kremenek@apple.com> |
Added iterator and profiling (i.e. FoldingSetNodeID) support to ImmutableMap. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45503 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
|
234d529e582963ad4b5d83b911cd057fe99d1435 |
29-Dec-2007 |
Chris Lattner <sabre@nondot.org> |
remove attribution from a variety of miscellaneous files. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45425 91177308-0d34-0410-b5e6-96231b3b80d8
ash_map.in
ash_set.in
list
terator.in
|
7ed47a13356daed2a34cd2209a31f92552e3bdd8 |
29-Dec-2007 |
Chris Lattner <sabre@nondot.org> |
Don't attribute in file headers anymore. See llvmdev for the discussion of this change. Boy are my fingers tired. ;-) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45411 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
PInt.h
PSInt.h
itVector.h
enseMap.h
enseSet.h
epthFirstIterator.h
quivalenceClasses.h
oldingSet.h
raphTraits.h
ashExtras.h
mmutableMap.h
mmutableSet.h
ndexedMap.h
wningPtr.h
ostOrderIterator.h
CCIterator.h
TLExtras.h
etOperations.h
etVector.h
mallPtrSet.h
mallSet.h
mallString.h
mallVector.h
parseBitVector.h
tatistic.h
tringExtras.h
tringMap.h
ree.h
rie.h
niqueVector.h
ectorExtras.h
|
48da1edde037ae5e78b2059c4f28f93196ea1cec |
21-Dec-2007 |
Ted Kremenek <kremenek@apple.com> |
Removed scoped_ptr, as its functionality is subsumed by OwningPtr. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45274 91177308-0d34-0410-b5e6-96231b3b80d8
coped_ptr.h
|
3a818a39530ee5d59aac5dc4000e3bbac2e9400f |
20-Dec-2007 |
Ted Kremenek <kremenek@apple.com> |
Added OwningArrayPtr smart pointer class to provide an analogous class to OwningPtr except that it works for pointers to arrays. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45266 91177308-0d34-0410-b5e6-96231b3b80d8
wningPtr.h
|
714307207ffb8b435e090e94d0efa4c0e991df36 |
20-Dec-2007 |
Chris Lattner <sabre@nondot.org> |
add new smart pointer for clang. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45261 91177308-0d34-0410-b5e6-96231b3b80d8
wningPtr.h
|
54c005f465105459d60aafe04d0335d1a9d38ef6 |
20-Dec-2007 |
Anton Korobeynikov <asl@math.spbu.ru> |
More eye-candy stuff :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45247 91177308-0d34-0410-b5e6-96231b3b80d8
rie.h
|
08b934edc6b07e8947349b995fe298b664c812ef |
20-Dec-2007 |
Anton Korobeynikov <asl@math.spbu.ru> |
Add iterators for child traversal. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45246 91177308-0d34-0410-b5e6-96231b3b80d8
rie.h
|
d2128a7ca5544b95e5406a5fe8960217bcd4932f |
17-Dec-2007 |
Chris Lattner <sabre@nondot.org> |
cleanup this code, making it more "llvm-like". Add comments to reset indicating that it deletes its pointer. Add a new take() method, which can be used to get the pointer without it being deleted. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45112 91177308-0d34-0410-b5e6-96231b3b80d8
coped_ptr.h
|
cdd0417ba3ec6c4138e87b2d5472f951bb7902c8 |
16-Dec-2007 |
Anton Korobeynikov <asl@math.spbu.ru> |
Define addString() and lookup() out-of-line to dissuade the C++ compiler from inlining it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45068 91177308-0d34-0410-b5e6-96231b3b80d8
rie.h
|
11ffccf2a5aa5fb652945ffc8dda9b8dfdf58ae8 |
16-Dec-2007 |
Anton Korobeynikov <asl@math.spbu.ru> |
Provide GraphTraits and DOTGraphTraits interface for Trie. Retoss private/public stuff. Make copy ctor and operator= private. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45067 91177308-0d34-0410-b5e6-96231b3b80d8
rie.h
|
ffe9e63c4a11352fd6437588fad516efdb46aa40 |
15-Dec-2007 |
Anton Korobeynikov <asl@math.spbu.ru> |
Use references in DF iterators. This eliminates copy-ctor calls on huge objects (graphs) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45063 91177308-0d34-0410-b5e6-96231b3b80d8
epthFirstIterator.h
raphTraits.h
|
ded2b0d0fb0d4fa09198e3d05da529d2c97214c3 |
14-Dec-2007 |
Dan Gohman <gohman@apple.com> |
Add explicit keywords, and fix a minor typo that they uncovered. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45034 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
41ff20bff472c942d07cf5d85b3d7cd41a140a67 |
12-Dec-2007 |
Anton Korobeynikov <asl@math.spbu.ru> |
Use vector for child storage instead of map. This will also make our life during future GraphTraits'ing slightly easier. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44952 91177308-0d34-0410-b5e6-96231b3b80d8
rie.h
|
765d8e5cbde3def7732a8c9610d1ab3828453c0c |
11-Dec-2007 |
Anton Korobeynikov <asl@math.spbu.ru> |
Remove Trie::Edge class. Now edge labels are stored into nodes itself. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44880 91177308-0d34-0410-b5e6-96231b3b80d8
rie.h
|
ac9d6cc3a19a40fdca90b6fbae5d7c2b0bae55ed |
11-Dec-2007 |
Wojciech Matyjewicz <wmatyjewicz@fastmail.fm> |
Use correct member access operator. (my test commit as well) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44868 91177308-0d34-0410-b5e6-96231b3b80d8
raphTraits.h
|
64735ccb2b8dd773c1311725cb39951d6088c165 |
11-Dec-2007 |
Anton Korobeynikov <asl@math.spbu.ru> |
Add first and really dirty version of generic Trie structure git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44851 91177308-0d34-0410-b5e6-96231b3b80d8
rie.h
|
9324665a7845d6ffd23e3bd53443d28cbf2e75fa |
10-Dec-2007 |
Ted Kremenek <kremenek@apple.com> |
Added two bounds checks to the BitVector class to detect out-of-bounds bit accesses. The checks are only performed in a Debug build. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44815 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
921f0d40ececc91649bff9feeef37a3c89250608 |
08-Dec-2007 |
Chris Lattner <sabre@nondot.org> |
remove dead #include. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44711 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
73481e04da1573d10c72982cfba0716c39902502 |
08-Dec-2007 |
Chris Lattner <sabre@nondot.org> |
eliminate dependency on Bitcode headers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44709 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
065d97e7fc0b39264586e4f812955078194c595a |
08-Dec-2007 |
Chris Lattner <sabre@nondot.org> |
remove dead #include, APInt.h already has the needed forward decls. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44708 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
d7205e6ba16480ef0a7ee2b6097d0a13097e8a0f |
29-Nov-2007 |
Chris Lattner <sabre@nondot.org> |
Pass the whole StringMapEntry into StringMapEntryInitializer::Initialize. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44432 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
aec78708c24a85a99b757ada086e5c05a4c123ed |
29-Nov-2007 |
Chris Lattner <sabre@nondot.org> |
provide an optional API to allow datatypes in a stringmap to be *gasp* initialized with a value if they want, by specializing the StringMapEntryInitializer class. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44430 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
9e513acd3145036bd06b5e0f5bcc83a3e5c08854 |
23-Nov-2007 |
Chris Lattner <sabre@nondot.org> |
Fix PR1816, by correcting the broken definition of APInt::countTrailingZeros. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44296 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
adf3eab7735741926c67e6fc12b952500c45a9ba |
19-Nov-2007 |
Dan Gohman <gohman@apple.com> |
Add explicit keywords. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44234 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
07268172ff6ef736cccb1b6c92cc9825f9f8cae4 |
15-Nov-2007 |
Daniel Berlin <dberlin@dberlin.org> |
Fix bugs in iterator invalidation git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44174 91177308-0d34-0410-b5e6-96231b3b80d8
parseBitVector.h
|
ab64806af2a10657dd15a5e8670ba6e900a3c29d |
15-Nov-2007 |
Chris Lattner <sabre@nondot.org> |
Import the boost scoped_ptr class to LLVM. This patch was prepared by Cédric Venet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44161 91177308-0d34-0410-b5e6-96231b3b80d8
coped_ptr.h
|
729bd28f62d83c9681702264a79c4ab03c7c11ec |
14-Nov-2007 |
Hartmut Kaiser <hartmut.kaiser@gmail.com> |
Fixed a strange construct. Please review. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44082 91177308-0d34-0410-b5e6-96231b3b80d8
parseBitVector.h
|
c47dfdde2458f97d2ef8342b73b526579424c381 |
07-Nov-2007 |
Ted Kremenek <kremenek@apple.com> |
Implemented generic serialization of APFloat. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43829 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
586504d5ed35d5765652370c4b4e68eb21b2b34a |
07-Nov-2007 |
Ted Kremenek <kremenek@apple.com> |
Fixed default ctor for APInt to properly initialize BitWidth to a non-random value. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43795 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
373a733be031f52cebbbcdb15ab5997d9b5f9f17 |
06-Nov-2007 |
Chris Lattner <sabre@nondot.org> |
make smallptrset more const and type correct, which caught a few minor bugs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43782 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
ee7ae384f5d6067f1ca6d475b8630fe91ff2f6b6 |
01-Nov-2007 |
Neil Booth <neil@daikokuya.co.uk> |
When converting to integer, do bit manipulations in the destination memory rather than in a copy of the APFloat. This avoids problems when the destination is wider than our significand and is cleaner. Also provide deterministic values in all cases where conversion fails, namely zero for NaNs and the minimal or maximal value respectively for underflow or overflow. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43626 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
aef806e9cb021919be8f3a988af0478f3da75758 |
01-Nov-2007 |
Ted Kremenek <kremenek@apple.com> |
Added typedef "value_type" to DenseMap (similar typedef appears in std::map). Added method FindAndConstruct() to DenseMap, which does the same thing as operator[], except that it refers value_type& (a reference to both the key and mapped data pair). This method is useful for clients that wish to access the stored key value, as opposed to the key used to do the actual lookup (these need not always be the same). Redefined operator[] to use FindAndConstruct() (same logic). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43594 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
8092406e59e44633e45c3ec71a1a1d12ef0b926b |
31-Oct-2007 |
Ted Kremenek <kremenek@apple.com> |
Changed access control within FoldingSet for some ivars from "private" to "protected". This allows iterators to work. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43559 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
20b7907c1cb7074a2e6be5f534bb742752dd25d4 |
31-Oct-2007 |
Ted Kremenek <kremenek@apple.com> |
Added member function "size()" to FoldingSet to return the number of nodes in the FoldingSet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43531 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
1a43e5ffe1ba9bfcb531f7c6a68ac8c49bd28dc1 |
26-Oct-2007 |
Ted Kremenek <kremenek@apple.com> |
Added serialization support for APInt. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43405 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
7f46734b66306bb81720fbe617c15b1184b13807 |
26-Oct-2007 |
Ted Kremenek <kremenek@apple.com> |
Fixed incorrect "path name" in preamble (comment) of header file. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43402 91177308-0d34-0410-b5e6-96231b3b80d8
PSInt.h
|
02760ed19ae02feca0cc536c035cdf08d222a8f3 |
26-Oct-2007 |
Ted Kremenek <kremenek@apple.com> |
Fixed incorrect "path name" in preamble (comment) of header file. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43401 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
10c42185d82c121e8f7d261decde798c05567c59 |
24-Oct-2007 |
Chris Lattner <sabre@nondot.org> |
add a nice predicate to check to see if nan git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43304 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
c5ccbdbe329af09fd34aeb097c62ce2c33296f36 |
18-Oct-2007 |
Christopher Lamb <christopher.lamb@gmail.com> |
Add an uppercase conversion utility function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43146 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
52e2d83e653abd745d93bc05acba59c32a64eabf |
18-Oct-2007 |
Ted Kremenek <kremenek@apple.com> |
Changed the return type of type-specific Allocate() methods to return void*. This is hint that we are returning uninitialized memory rather than a constructed object. Patched ImutAVLTree to conform to this new interface. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43106 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
fa4710427fc5db4e8e27e3eeaa3dd03a65f70101 |
18-Oct-2007 |
Ted Kremenek <kremenek@apple.com> |
ImutAVLTree now allocates tree nodes from the BumpPtrAllocator using the new type-aligned Allocate() method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43100 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
6740463c74a7b98ec3136211c871ddd29df39887 |
18-Oct-2007 |
Ted Kremenek <kremenek@apple.com> |
Minor cosmetic cleanups in the calculation of alignments for StringMapEntry objects. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43097 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
9080aaba0b8d4f313c70913c5a93ddd2bda22170 |
17-Oct-2007 |
Ted Kremenek <kremenek@apple.com> |
Updated StringMap to use llvm::AlignOf to compute the alignment of map entries. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43089 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
efd4a5144b03f61ebfd53d0245176f95e1170fb8 |
17-Oct-2007 |
Hartmut Kaiser <hartmut.kaiser@gmail.com> |
Updated VC++ build system. Silenced some VC warnings. I'm getting linker errors, though: unresolved externals: llvm::Split<class llvm::BasicBlock *,struct llvm::GraphTraits<class llvm::BasicBlock *> >(class llvm::DominatorTreeBase<class llvm::BasicBlock> &,class llvm::BasicBlock *) and llvm::Split<struct llvm::Inverse<class llvm::BasicBlock *>,struct llvm::GraphTraits<struct llvm::Inverse<class llvm::BasicBlock *> > >(class llvm::DominatorTreeBase<class llvm::BasicBlock> &,class llvm::BasicBlock *) Where are these defined? git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43073 91177308-0d34-0410-b5e6-96231b3b80d8
PSInt.h
itVector.h
|
fd9c58adde8d62c0e1bd852e2c8c1d58088f8f03 |
15-Oct-2007 |
Ted Kremenek <kremenek@apple.com> |
Fixed incorrect renaming of method name (forgot two characters). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42999 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
85d03ae1ae767038d9781da44a7a7e3f5191053e |
15-Oct-2007 |
Ted Kremenek <kremenek@apple.com> |
Added more doxygen comments. Renamed internal method of ImutAVLTree::RemoveMutableFlag to MarkImmutable. Added enum for bit manipulation (more self-documentating). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42998 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
e5e0194583c9d95cae685da139531624e050d39e |
14-Oct-2007 |
Neil Booth <neil@daikokuya.co.uk> |
Consolidate logic for creating NaNs. Silence compiler warning. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42966 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
1ff2ddda083a3c71a04789fe9845d41f7aaaa0ec |
12-Oct-2007 |
Chris Lattner <sabre@nondot.org> |
don't use intptr_t without including it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42921 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
b89f67e3e659da1f11c01f2aac1be3463dc60f07 |
12-Oct-2007 |
Chris Lattner <sabre@nondot.org> |
Make this compute the correct offset, handling alignment of the element pointer correctly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42918 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
96c7471b39dc77d4f29658212e5a72e575b23c39 |
12-Oct-2007 |
Neil Booth <neil@daikokuya.co.uk> |
Implement correctly-rounded decimal->binary conversion, i.e. conversion from user input strings. Such conversions are more intricate and subtle than they may appear; it is unlikely I have got it completely right first time. I would appreciate being informed of any bugs and incorrect roundings you might discover. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42912 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
886636445deeeb9283d262411a6fbe83b65056ab |
12-Oct-2007 |
Chris Lattner <sabre@nondot.org> |
make operator== work with non-equal sized bitvectors, as long as the extra bits are all zeros. This allows "010" and "010000" to be treated as equal. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42889 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
0b22da3d7361f94c3811f2e7d603bb3513dc3d1c |
11-Oct-2007 |
Ted Kremenek <kremenek@apple.com> |
Provided accessors to internal allocator for ImutAVLTree and ImmutableSet. Added postfix ++,-- support for ImmutableSet::iterator. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42877 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
a471c2ecda37cd1bae0d94e832f002caa7b63216 |
11-Oct-2007 |
Dale Johannesen <dalej@apple.com> |
Next PPC long double bits. First cut at constants. No compile-time support for constant operations yet, just format transformations. Make readers and writers work. Split constants into 2 doubles in Legalize. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42865 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
343960af3177b056266fc719489e6ec7a5d869de |
11-Oct-2007 |
Chris Lattner <sabre@nondot.org> |
make bitvector &= do the right thing if vectors have mismatched length. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42860 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
bdc2154986f6f302ef59b506013b73f82a7a5ee5 |
11-Oct-2007 |
Ted Kremenek <kremenek@apple.com> |
Added iterators to ImmutableSet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42851 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
37474bce024c4a1e85dd777a8b489af60eb4c699 |
11-Oct-2007 |
Ted Kremenek <kremenek@apple.com> |
Added some doxygen comments to ImmutableSet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42850 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
ac6084dfc22042da72b5170f52e3ceaad978fcff |
11-Oct-2007 |
Ted Kremenek <kremenek@apple.com> |
Removed uninformative assertions that catch problems that will fire anyway at runtime due to a NULL dereference. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42848 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
13a21b02374a5a5fe541dbfbd1491b25a00369f4 |
11-Oct-2007 |
Ted Kremenek <kremenek@apple.com> |
Removed "height" of an AVL tree node from its Profile. This is implicitly captured by using the addresses of its children in the profile. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42847 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
b308cdbc5f49274519a31288909597af449f6683 |
10-Oct-2007 |
Ted Kremenek <kremenek@apple.com> |
Removed spurious forward declaration to a structure that will no longer be used. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42839 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
ea34bc892c5341d1bbe49101ecab1d878ab8b621 |
10-Oct-2007 |
Ted Kremenek <kremenek@apple.com> |
Added some doxygen comments to a few methods of ImutAVLTree. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42837 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
ebdbed384411da83f0cdca014e52f65165919bda |
10-Oct-2007 |
Ted Kremenek <kremenek@apple.com> |
Added preliminary support for iterators in ImutAVLTree. Implemented ImutAVLTree::isEqual. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42833 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
be24d91d824387cea4454bd16f63d5b2409c56e1 |
10-Oct-2007 |
Ted Kremenek <kremenek@apple.com> |
Renamed internal method "Create" of ImutAVLTree to "CreateNode". git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42825 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableSet.h
|
33bbed8f2a48ccf9ee349458db7ec4bd24dddb11 |
09-Oct-2007 |
Ted Kremenek <kremenek@apple.com> |
Added implementation of immutable (functional) maps and sets, as implemented on top of a functional AVL tree. The AVL balancing code is inspired by the OCaml implementation of Map, which also uses a functional AVL tree. Documentation is currently limited and cleanups are planned, but this code compiles and has been tested. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42813 91177308-0d34-0410-b5e6-96231b3b80d8
mmutableMap.h
mmutableSet.h
|
05831c073abbaacbf2fc21ef5ef160872056e075 |
09-Oct-2007 |
Chris Lattner <sabre@nondot.org> |
Fix problems where DenseMap used operator!= instead of correctly calling the traits implementation of isEqual. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42782 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
be2c4596cb562bbb216af2a0dd5c3b5c489e722c |
09-Oct-2007 |
Chris Lattner <sabre@nondot.org> |
Change a #include into a forward declaration git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42781 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
68e53ad6cb0a9d64d256f9dcef70331cd72d795e |
08-Oct-2007 |
Neil Booth <neil@daikokuya.co.uk> |
Add a new function tcExtract for extracting a bignum from an arbitrary range of bits embedded in the middle of another bignum. This kind of operation is desirable in many cases of software floating point, e.g. converting bignum integers to floating point numbers of fixed precision (you want to extract the precision most significant bits). Elsewhere, add an assertion, and exit the shift functions early if the shift count is zero. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42745 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
f8a3ee1d637a747c87f72bc880445e6a82280ff0 |
07-Oct-2007 |
Chris Lattner <sabre@nondot.org> |
Finish off PR1723, by working around some strange compiler bug. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42737 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
f16c595252de363e0e1f6895a5a626bc30017053 |
07-Oct-2007 |
Neil Booth <neil@daikokuya.co.uk> |
Add back convertFromSignExtendedInteger. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42735 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
643ce59495702ef29573b725d7431638be1c136a |
07-Oct-2007 |
Neil Booth <neil@daikokuya.co.uk> |
Reimplement convertFromUnsignedInteger so it is passed a const bignum. It used to modify its argument in-place. This interface is saner and the implementation more efficient. It will be needed for decimal->binary conversion. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42733 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
ccf596a53e16ea221a9bf8b3874a7d6afa71f1f4 |
07-Oct-2007 |
Neil Booth <neil@daikokuya.co.uk> |
convertFromInteger, as originally written, expected sign-extended input. APInt unfortunately zero-extends signed integers, so Dale modified the function to expect zero-extended input. Make this assumption explicit in the function name. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42732 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
33d4c92e78a32a8e07ab3ebc1487b07304875ddd |
07-Oct-2007 |
Neil Booth <neil@daikokuya.co.uk> |
combineLostFractions does not need to be a member function git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42729 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
c27d61d3ae820c6b265900380487cb74fb53510c |
07-Oct-2007 |
Daniel Berlin <dberlin@dberlin.org> |
Some more problems noticed by Curtis git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42717 91177308-0d34-0410-b5e6-96231b3b80d8
parseBitVector.h
|
978661d05301a9bcd1222c048affef679da5ac43 |
06-Oct-2007 |
Neil Booth <neil@daikokuya.co.uk> |
Generalize tcFullMultiply so that the operands can be of differing part widths. Also, return the number of parts actually required to hold the result's value. Remove an over-cautious condition from rounding of float->hex conversion. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42669 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
bca98326b6fd311c917fc2407b4b05d7c90f31b2 |
05-Oct-2007 |
Chris Lattner <sabre@nondot.org> |
Mark count method const. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42639 91177308-0d34-0410-b5e6-96231b3b80d8
enseSet.h
|
ad92c633c7845e3a8103db5a9ae9231c03b9fb58 |
05-Oct-2007 |
Daniel Berlin <dberlin@dberlin.org> |
Fix intersectWithComplement bug noticed by Curtis Dunham Optimize |= case for empty RHS git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42629 91177308-0d34-0410-b5e6-96231b3b80d8
parseBitVector.h
|
08bb6998437528143934de9c76fa312e48e58896 |
04-Oct-2007 |
Daniel Berlin <dberlin@dberlin.org> |
Fix the previous bug a slightly different way (by modifying how find_next works) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42613 91177308-0d34-0410-b5e6-96231b3b80d8
parseBitVector.h
|
9d03724c8c348dd31cc5b692b08b23c67fd4b0a0 |
04-Oct-2007 |
Daniel Berlin <dberlin@dberlin.org> |
Fix off by one error in iterator git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42612 91177308-0d34-0410-b5e6-96231b3b80d8
parseBitVector.h
|
8d69b5a1137debfe11e9073c4edb99d477387072 |
04-Oct-2007 |
Daniel Berlin <dberlin@dberlin.org> |
It helps a lot when you check for the end of your list before randomly dereferencing things. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42605 91177308-0d34-0410-b5e6-96231b3b80d8
parseBitVector.h
|
c3a32d190c458fa14c4a6333c942e0aefd56da7e |
04-Oct-2007 |
Daniel Berlin <dberlin@dberlin.org> |
Make SparseBitVector::set actually work properly when sets are not in ascending or descending order. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42604 91177308-0d34-0410-b5e6-96231b3b80d8
parseBitVector.h
|
a30b0ee959b53e83ed3697ee0b704a493829dc04 |
04-Oct-2007 |
Neil Booth <neil@daikokuya.co.uk> |
Add APFloat -> hexadecimal string conversion, as per %a and %A in C99. Useful for diagnostics and debugging. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42598 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
9c8a9af5afb5459fb7949d4468c5a2abe02baf2c |
03-Oct-2007 |
Owen Anderson <resistor@mac.com> |
Add a GraphTraits partial specialization to make the inverse of an inverse be the same as the underlying graph. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42592 91177308-0d34-0410-b5e6-96231b3b80d8
raphTraits.h
|
116c3219df347f169b1bd24acca2d53ab0ae26ec |
03-Oct-2007 |
Chris Lattner <sabre@nondot.org> |
Add initial iterator support for folding set. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42589 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
b7dea4cb368c7b2e825e6d58b249693736a32e21 |
03-Oct-2007 |
Neil Booth <neil@daikokuya.co.uk> |
Tweak RoundAwayFromZero the bit number below which is truncated, and make it const. Preparation for APFloat -> hexadecimal string conversion. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42576 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
1bcc79666dcdcc948b7b998f7f661c77c268a893 |
30-Sep-2007 |
Chris Lattner <sabre@nondot.org> |
Add a helper useful when mapping from a map element to its hash node. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42480 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
be207738d3b4bbfc9da11025ebbf10f4f12216b9 |
30-Sep-2007 |
Chris Lattner <sabre@nondot.org> |
Add a new DenseSet abstraction. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42474 91177308-0d34-0410-b5e6-96231b3b80d8
enseSet.h
|
117acf9e36a0789d56b52525e031f575f80fe169 |
26-Sep-2007 |
Neil Booth <neil@daikokuya.co.uk> |
Whitespace cleanup. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42374 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
9f711252f5d5ef4e05f5277ab462bf7668b53cfd |
26-Sep-2007 |
Daniel Berlin <dberlin@dberlin.org> |
Fix small bug in operator== for iterators git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42331 91177308-0d34-0410-b5e6-96231b3b80d8
parseBitVector.h
|
e6f0479aee718e976fc077507ff6442a58325824 |
25-Sep-2007 |
Daniel Berlin <dberlin@dberlin.org> |
Comment fixups git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42279 91177308-0d34-0410-b5e6-96231b3b80d8
parseBitVector.h
|
d81ccc2806b2c8a498d16f1a547d0cc9c00d602d |
24-Sep-2007 |
Daniel Berlin <dberlin@dberlin.org> |
Implement offline variable substitution in order to reduce memory and time usage. Fixup operator == to make this work, and add a resize method to DenseMap so we can resize our hashtable once we know how big it should be. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42269 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
parseBitVector.h
|
1dcca6b2d0bb8fb374134c9db58ed15b2164fc1d |
24-Sep-2007 |
Owen Anderson <resistor@mac.com> |
Fix typo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42256 91177308-0d34-0410-b5e6-96231b3b80d8
ostOrderIterator.h
|
910993e8dc49a25d9da3b53de4a82568c14e91cc |
22-Sep-2007 |
Dale Johannesen <dalej@apple.com> |
Change APFloat::convertFromInteger to take the incoming bit width instead of number of words allocated, which makes it actually work for int->APF conversions. Adjust callers. Add const to one of the APInt constructors to prevent surprising match when called with const argument. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42210 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
4938d347723d452786c1a7c1d1b9ec79121b0040 |
21-Sep-2007 |
Owen Anderson <resistor@mac.com> |
Fix CopyFrom for non-POD data types. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42208 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
8feb1f4467425d23ed74cce61e49f18a51a63421 |
18-Sep-2007 |
Devang Patel <dpatel@apple.com> |
Do not hide APInt::dump() inside #ifndef NDEBUG. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42068 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
76c1b97e4020faace8c95a127f1eab66c278fb58 |
17-Sep-2007 |
Chris Lattner <sabre@nondot.org> |
Merge DenseMapKeyInfo & DenseMapValueInfo into DenseMapInfo Add a new DenseMapInfo::isEqual method to allow clients to redefine the equality predicate used when probing the hash table. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42042 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
430817ba181071d20f5c7c3ec4dcd5d8b8e318f4 |
17-Sep-2007 |
Daniel Berlin <dberlin@dberlin.org> |
That's what i get for using carbon emacs in a terminal git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42040 91177308-0d34-0410-b5e6-96231b3b80d8
parseBitVector.h
|
8180cf65a5b9fc41ba402a2d08cf62f70af65aeb |
17-Sep-2007 |
Daniel Berlin <dberlin@dberlin.org> |
Fix iterator so it doesn't sometimes report bits that aren't in the bitmap git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42039 91177308-0d34-0410-b5e6-96231b3b80d8
parseBitVector.h
|
c6d939818b7c50f6e14d04447657e670aedc3f6f |
17-Sep-2007 |
Daniel Berlin <dberlin@dberlin.org> |
Fix bug in andersen's related to test_and_set. Add operator == and != to SparseBitVector. Simplify code for test_and_set git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42018 91177308-0d34-0410-b5e6-96231b3b80d8
parseBitVector.h
|
7f44657c2f4409416a083a9e63d2b4ea7cdca43e |
17-Sep-2007 |
Daniel Berlin <dberlin@dberlin.org> |
Fix a few bugs related to zero'ing of elements git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42017 91177308-0d34-0410-b5e6-96231b3b80d8
parseBitVector.h
|
9e3d3abd937c9bb79d56d25ec0e0724c7cbba67c |
15-Sep-2007 |
Dale Johannesen <dalej@apple.com> |
Remove the assumption that FP's are either float or double from some of the many places in the optimizers it appears, and do something reasonable with x86 long double. Make APInt::dump() public, remove newline, use it to dump ConstantSDNode's. Allow APFloats in FoldingSet. Expand X86 backend handling of long doubles (conversions to/from int, mostly). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41967 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
oldingSet.h
|
f82e1e66cec02ecfa3c83c165bce6a2780c77914 |
14-Sep-2007 |
Dan Gohman <gohman@apple.com> |
And an FoldingSetImpl::NodeID::AddInteger overload for int64_t, to avoid ambiguity. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41960 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
8a901985bc599df9dfd2fca0b8dd0da4585df8a7 |
13-Sep-2007 |
Chris Lattner <sabre@nondot.org> |
Make single-argument ctors explicit to avoid tricky bugs :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41924 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
ec39cb98d38bc0474a9ba207bcee31718db0e178 |
12-Sep-2007 |
Daniel Berlin <dberlin@dberlin.org> |
Move dump out of class, use "\n" instead of endl git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41872 91177308-0d34-0410-b5e6-96231b3b80d8
parseBitVector.h
|
3f6eb7419de437436265831fce92f62498556e08 |
11-Sep-2007 |
Dale Johannesen <dalej@apple.com> |
Add APInt interfaces to APFloat (allows directly access to bits). Use them in place of float and double interfaces where appropriate. First bits of x86 long double constants handling (untested, probably does not work). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41858 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
6320260e060ce4fc5d199d757b15a0f43be66029 |
11-Sep-2007 |
Daniel Berlin <dberlin@dberlin.org> |
Convert to use ilist and non-pointer lists for extra goodness git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41855 91177308-0d34-0410-b5e6-96231b3b80d8
parseBitVector.h
|
29ce95511f905df3a63e3b953a4a0179ead46865 |
11-Sep-2007 |
Owen Anderson <resistor@mac.com> |
Add a ValueInfoT template parameter to DenseMap so that it can properly make decisions based on whether the key AND the value require ctors/dtors. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41837 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
98153ecbc1b29c576ff43a7718c3f657f81b8aac |
11-Sep-2007 |
Owen Anderson <resistor@mac.com> |
Don't bother to initialize values corresponding to empty or tombstone keys. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41834 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
16ebc260bd374daa4323c78ffefc87aec485f29d |
11-Sep-2007 |
Daniel Berlin <dberlin@dberlin.org> |
Fix bugs with &=, intersect with complement. Add three argument version of intersect with complement. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41832 91177308-0d34-0410-b5e6-96231b3b80d8
parseBitVector.h
|
9544dc294f63ce116fbab398a8874ebf834cf41e |
11-Sep-2007 |
Owen Anderson <resistor@mac.com> |
Fix non-deterministic behavior in the DenseMap copy constructor. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41831 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
1b6998e8d6807d3e0b6d4904111f43738ceae5e6 |
11-Sep-2007 |
Daniel Berlin <dberlin@dberlin.org> |
Add remaining functions necessary for andersen's git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41830 91177308-0d34-0410-b5e6-96231b3b80d8
parseBitVector.h
|
2f5d5937eccfaa17c01ab5136bfde20f2f6d767c |
09-Sep-2007 |
Daniel Berlin <dberlin@dberlin.org> |
Add SparseBitVector implementation git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41790 91177308-0d34-0410-b5e6-96231b3b80d8
parseBitVector.h
|
418d360518811121ad9352af57fdd7ba58a4f917 |
08-Sep-2007 |
Chuck Rose III <cfr@adobe.com> |
Fix for VisualStudio. It is treating a 2 bit enum as a signed int for comparison purposes, causing failures. Using an extra bit fixes it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41784 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
718cb665ca6ce2bc4d8e8479f46a45db91b49f86 |
07-Sep-2007 |
Owen Anderson <resistor@mac.com> |
Add lengthof and endof templates that hide a lot of sizeof computations. Patch by Sterling Stein! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41758 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
6d5e7d917ba1a9e45e0e4f4294a0235fc224d822 |
04-Sep-2007 |
Dale Johannesen <dalej@apple.com> |
fix reversal bug in preceding checkin git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41705 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
c4dd3c3b519aa2c2ed26ce03a4b1fbb992efeaca |
01-Sep-2007 |
Dale Johannesen <dalej@apple.com> |
Add mod, copysign, abs operations to APFloat. Implement some constant folding in SelectionDAG and DAGCombiner using APFloat. Remove double versions of constructor and getValue from ConstantFPSDNode. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41664 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
ee8476847da85e1ac44744f7f64de0675b89dc15 |
31-Aug-2007 |
Dale Johannesen <dalej@apple.com> |
Revise per review of previous patch. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41645 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
eaf089430e7681fcddc3465c3b33b9645273ab02 |
31-Aug-2007 |
Dale Johannesen <dalej@apple.com> |
Enhance APFloat to retain bits of NaNs (fixes oggenc). Use APFloat interfaces for more references, mostly of ConstantFPSDNode. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41632 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
tringExtras.h
|
cd3c4cac6ea3ce3bff0ce763d45c3f7a2d673178 |
29-Aug-2007 |
Chris Lattner <sabre@nondot.org> |
getMinSignedBits needs to take into consider the sign bit when the value is positive. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41566 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
81975f6dfd9d306d0ea7ce3ef22561c949de9af9 |
27-Aug-2007 |
Dan Gohman <gohman@apple.com> |
Add explicit keywords and remove spurious trailing semicolons. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41482 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
21dcae17f580678c452eac73e01424c924d2f994 |
25-Aug-2007 |
Dale Johannesen <dalej@apple.com> |
Comment out declaration of operator== (undefined). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41383 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
12595d7b165bf460b18f4ddd395dd29e6e6e68bc |
25-Aug-2007 |
Dale Johannesen <dalej@apple.com> |
Poison APFloat::operator==. Replace existing uses with bitwiseIsEqual. This means backing out the preceding change to Constants.cpp, alas. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41378 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
d3b51fd17024569cc53ae02b9a4f80857930e08b |
24-Aug-2007 |
Dale Johannesen <dalej@apple.com> |
Revised per review feedback from previous patch. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41353 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
343e770983dcf53a1ea2dfca4e04d28ebc41138a |
24-Aug-2007 |
Dale Johannesen <dalej@apple.com> |
Change internal representation of ConstantFP to use APFloat. Interface to rest of the compiler unchanged, as yet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41348 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
|
006f5a3c66cfd4bb648a4fe5f4c9bb0b86ccf940 |
23-Aug-2007 |
Chris Lattner <sabre@nondot.org> |
default this to radix 10 like the toString(Un)Signed methods. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41311 91177308-0d34-0410-b5e6-96231b3b80d8
PSInt.h
|
028760fd88081964ace51e4205e28ff52fc1f47a |
23-Aug-2007 |
Chris Lattner <sabre@nondot.org> |
Avoid hiding issues. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41310 91177308-0d34-0410-b5e6-96231b3b80d8
PSInt.h
|
9132a2b81842b0e2b77703fab3e6fe7467f859bb |
23-Aug-2007 |
Chris Lattner <sabre@nondot.org> |
rename APInt::toString -> toStringUnsigned for symmetry with toStringSigned() Add an APSInt::toString() method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41309 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
PSInt.h
|
b39cdde41d3c91d1fd48a038e63b78122607bb10 |
21-Aug-2007 |
Chris Lattner <sabre@nondot.org> |
initial checkin of Neil's APFloat work. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41203 91177308-0d34-0410-b5e6-96231b3b80d8
PFloat.h
PInt.h
|
8568122b41340e9c3bfac47f3714db4241196fbd |
20-Aug-2007 |
Chris Lattner <sabre@nondot.org> |
add reverse iterators to smallvector git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41198 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
6de84985a434bfd6e55323ad5cd9959d15aa554a |
17-Aug-2007 |
Chris Lattner <sabre@nondot.org> |
improve iplist comments. Switch iplist from allocating its sentinal object (for end()) eagerly to allocating it lazily. This saves a lot of memory for JIT applications that read a module but don't materialize most of the functions (e.g. 62K for 252.eon). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41142 91177308-0d34-0410-b5e6-96231b3b80d8
list
|
fe8e14a6c99261cfe9238c35761083cb4c99cc6a |
16-Aug-2007 |
Chris Lattner <sabre@nondot.org> |
This adds a bunch of static functions that implement unsigned two's complement bignum arithmetic. They could be used to implement much of APInt, but the idea is they are enough to implement APFloat as well, which the current APInt interface is not suited for. Patch by Neil Booth! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41124 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
3d345631db71174ffc4997a88c09f21eb9ed052b |
16-Aug-2007 |
Owen Anderson <resistor@mac.com> |
Forgot a line. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41115 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
67280e1dd22cf9fa452c335d1e2328d13f158da1 |
16-Aug-2007 |
Owen Anderson <resistor@mac.com> |
Add a copy constructor and an assignment operator to DenseMap. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41114 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
ebf03038109c2af39d0db14ea9058c10e02e9eae |
15-Aug-2007 |
Anton Korobeynikov <asl@math.spbu.ru> |
Properly use const qualifiers git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41111 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
276222a5ae189ed5c6a2afb248d4c8f0335585b4 |
12-Aug-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Change casts from old style to new style. This helps document the details better, gives the compiler a chance to validate the cast and reduces warnings if the user turns on -Wold-style-cast option. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41033 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
mallVector.h
|
4f155b4c8597f40a79add430dfedb2c08ba28375 |
10-Aug-2007 |
Chris Lattner <sabre@nondot.org> |
memcpy with zero length is hugely expensive, so avoid it. This speeds up coallescing from 1.17s to 0.88s on siod. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40984 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
02cee38647ea413e5d05f29f67a7f003db9f0081 |
10-Aug-2007 |
Chris Lattner <sabre@nondot.org> |
small speedup in the case where a smallvector is default ctor'd from an empty vector. This speeds up llc slightly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40983 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
b1183c1ff3b17689c036d5e7443b7343074d2f6f |
06-Aug-2007 |
Chandler Carruth <chandlerc@gmail.com> |
This fixes resizing issues with BitVectors. It ensures that the BitWord type and type size is always used, and ensures completely correct clearing of unused high bits, and setting of bits when resizing. It should resolve PR1563. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40871 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
f094f81d36f0941f0e8ed9e4086b21db93186ff4 |
05-Aug-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Document a missing parameter. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40852 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
7b54452c84e478ab4d49ac08759ca4ec1badf2b2 |
05-Aug-2007 |
Chris Lattner <sabre@nondot.org> |
Fix a bug in DenseMap::clear, where we never reset a tombstone to EmptyKey. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40839 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
42e4bdf2577946380ce1529d5716e48b33d4186d |
05-Aug-2007 |
Chris Lattner <sabre@nondot.org> |
When clearing a SmallPtrSet, if the set had a huge capacity, but the contents of the set were small, deallocate and shrink the set. This avoids having us to memset as much data, significantly speeding up some pathological cases. For example, this speeds up the verifier from 0.3899s to 0.0763 (5.1x) on the testcase from PR1432 in a release build. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40837 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
mallPtrSet.h
|
bfbfcdafbeb70d45a7fb9c983dbd724775c1281a |
02-Aug-2007 |
Anders Carlsson <andersca@mac.com> |
Fix bug spotted by Chris. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40725 91177308-0d34-0410-b5e6-96231b3b80d8
PSInt.h
|
7ccd9ec4f40d1cdf740c98dab8e212943a4b4863 |
02-Aug-2007 |
Anders Carlsson <andersca@mac.com> |
Add extend and extOrTrunc methods that do sign or zero extension depending on whether the integer is signed or not git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40724 91177308-0d34-0410-b5e6-96231b3b80d8
PSInt.h
|
e992a56ae93140171f5044079e8d317f784c8cc1 |
27-Jul-2007 |
Owen Anderson <resistor@mac.com> |
Allow SmallPtrSet to hold pointers to const data. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40556 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
c6402013c8767d5718d4c7ae5625969361182771 |
22-Jul-2007 |
Chris Lattner <sabre@nondot.org> |
Disable the string map copy ctor and assignment operators, they don't do the right thing. Implement StringMap::erase. Fix a nasty bug in the default ctor. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40395 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
398b40671b13018f88371b74822fa8ee2638577e |
20-Jul-2007 |
Owen Anderson <resistor@mac.com> |
Make the heuristic for shrinking DenseMap smarter. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40114 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
6ad5fde5d01e0c8c23b928583d2fb9489b1b5a36 |
20-Jul-2007 |
Owen Anderson <resistor@mac.com> |
Have DenseMap auto-shrink itself on clear(). This improves the time to optimize 403.gcc from 15.2s to 14.3s. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40100 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
845b31de0c58e1f667063170191262079d311052 |
17-Jul-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Unbreak the build by putting calls to free into the implementation file and having that implementation file #include <cstdlib>. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39952 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
1629a1fa87f8c32d6d33173d6d6e77dc4ed1ca4f |
16-Jul-2007 |
Owen Anderson <resistor@mac.com> |
Use realloc() to (potentially) resize the contents of SmallPtrSet in place. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39926 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
f7b71c64cfe805d0a48d18d55a739ce8a7e6851a |
16-Jul-2007 |
Chris Lattner <sabre@nondot.org> |
add a helper method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39885 91177308-0d34-0410-b5e6-96231b3b80d8
PSInt.h
|
c5c7f755c8c7f12e1d9190aa3a784fb15cb76241 |
10-Jul-2007 |
Owen Anderson <resistor@mac.com> |
Evidently my earlier fix did not go far enough. When resizing a zero-sized BitVector, make sure to set or clear ALL of the bits. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@38481 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
0c81450a0c1f859738a2f209a89de10f889fcd84 |
10-Jul-2007 |
Owen Anderson <resistor@mac.com> |
When resizing a BitVector with size 0, be sure to clear the low word before using it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@38476 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
4d6f96d6997738419627ebe13dd6cb9c88a98fd7 |
09-Jul-2007 |
Owen Anderson <resistor@mac.com> |
Make the assignment operator for SmallPtrSet return a reference, and fix a long-standing bug in the copy ctor while I'm at it. Thanks to Chris Lattner for help with this patch. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@38470 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
95fd3189f84de5953c75d67403e7db9acdd5005d |
09-Jul-2007 |
Chris Lattner <sabre@nondot.org> |
work around an aparent gcc name resolution bug by detemplatizing this. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@38461 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
91f0158d4d1b16b8615126b05582d421cfb14089 |
09-Jul-2007 |
Chris Lattner <sabre@nondot.org> |
implement operator= for smallptrset git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@38460 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
59310c3dc0061a0fd6842c66ac3215fbbdfe4ae4 |
30-Jun-2007 |
Dan Gohman <gohman@apple.com> |
Add an explicit keyword. Thanks Chris! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37819 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
e644ef7b098460ce831220c780cbe25eaef3fb28 |
29-Jun-2007 |
John Criswell <criswell@uiuc.edu> |
Convert .cvsignore files git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37801 91177308-0d34-0410-b5e6-96231b3b80d8
cvsignore
|
8b42bcdd1ad6f3f908d062b189fbc2a6449fae83 |
28-Jun-2007 |
Dan Gohman <gohman@apple.com> |
Add a default parameter to a SmallVector constructor to allow it to be called with just an initial length value, just like in std::vector. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37779 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
d3fb6714802d8e44b34980af8772cc3ed398e71a |
21-Jun-2007 |
Owen Anderson <resistor@mac.com> |
Have internal df_iterator's use SmallPtrSet instead of std::set. This provides compile time speedups to any pass using df_iterator. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37694 91177308-0d34-0410-b5e6-96231b3b80d8
epthFirstIterator.h
|
26b146ccf10979809a8bfe9c2d798f4b6fbf39de |
17-May-2007 |
Chris Lattner <sabre@nondot.org> |
silence some "comparison between signed and unsigned integer expressions" warnings git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37177 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
df799afbecee669fb8b86c9590ad2d32d9e3216f |
17-May-2007 |
Dan Gohman <gohman@apple.com> |
Fix some sporadic segfaults that are triggered when SmallVector's heap storage lands near the end of the available address space. In the expression Begin+N > Capacity, the Begin+N was overflowing. Fix this by replacing it by with an expression that doesn't involve computation of an address beyond the end of allocated memory. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37171 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
19dc32a2d422ac0aafd047514e3e5e727796696e |
14-May-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Add some things needed by the llvm-gcc version supporting bit accurate integer types: 1. Functions to compute div/rem at the same time. 2. Further assurance that an APInt with 0 bitwidth cannot be constructed. 3. Left and right rotate operations. 4. An exactLogBase2 function which requires an exact power of two or it returns -1. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37025 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
82493289e0234e0172313e845fb87306cf3687ac |
03-May-2007 |
Chris Lattner <sabre@nondot.org> |
This is a patch to fix a compile error in STLExtras.h, and a bug in GraphWriter.cpp. Patch by Florian Brandner git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36684 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
49e1580214cd0b9e8d00b29f11f62fe9070a2a9c |
03-May-2007 |
Chris Lattner <sabre@nondot.org> |
remove useless type qualifiers git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36676 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
2864b77efc986a5c80c262c753a8f9df0cf789ed |
26-Apr-2007 |
Jeff Cohen <jeffc@jolt-lang.org> |
Rename identifier that GCC uses as a macro, breaking llvm-gcc build. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36474 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
703f5291c4f7199a95274df5e3381b36f8faf38c |
23-Apr-2007 |
Chris Lattner <sabre@nondot.org> |
add a missing operator git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36375 91177308-0d34-0410-b5e6-96231b3b80d8
mallString.h
|
3f520a71117535a3c995933186cc5bc373ffc61f |
19-Apr-2007 |
Jeff Cohen <jeffc@jolt-lang.org> |
Fix some VC++ warnings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36259 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
47e756c11edbaa9a4916687eceaa4ec94c0aae3b |
17-Apr-2007 |
Chris Lattner <sabre@nondot.org> |
Commit an patch from Gabor Greif in Mar 2005. This eliminates the tail pointer from ilist, storing it in the prev pointer of the first node in the list instead. This shrinks ilist from 8 to 4 bytes, BasicBlock from 40->36 bytes, Function from 76->68 bytes, Module from 52->44 bytes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36210 91177308-0d34-0410-b5e6-96231b3b80d8
list
|
bed2946a96ecb15b0b636fa74cb26ce61b1c648e |
16-Apr-2007 |
Anton Korobeynikov <asl@math.spbu.ru> |
Removed tabs everywhere except autogenerated & external files. Add make target for tabs checking. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36146 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
ash_set.in
|
ac58a16f8584f38198cc7800bd37a896125268b7 |
14-Apr-2007 |
Jeff Cohen <jeffc@jolt-lang.org> |
Fix PR1329. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36016 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
57ae4f5f01b6f8edf678d77ab935f3662993065d |
13-Apr-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Implement a getBitsNeeded method to determine how many bits are needed to represent a string in binary form by an APInt. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35968 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
2b4c23438838034ee2a812f3cb094a9742b272f6 |
10-Apr-2007 |
Chris Lattner <sabre@nondot.org> |
fix a comment bug Reid noticed git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35864 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
403949ea93d78796fcd803e75c97b68e53e331a9 |
10-Apr-2007 |
Chris Lattner <sabre@nondot.org> |
add missing methods, mark stuff const git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35862 91177308-0d34-0410-b5e6-96231b3b80d8
PSInt.h
|
4bda52d6b5ffa13314fe32baa1784566f70483f9 |
10-Apr-2007 |
Chris Lattner <sabre@nondot.org> |
add a method git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35860 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
db8918a98ff001d0c37abf41bc62364595340035 |
05-Apr-2007 |
Chris Lattner <sabre@nondot.org> |
Add a helper class (APSInt) which can represent an APInt along with sign information. This is useful when a value does have a sign associated with it. This shouldn't be used generally in LLVM for mid-level optimizer stuff. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35681 91177308-0d34-0410-b5e6-96231b3b80d8
PSInt.h
|
ecd276a49898a79404728ab476fc3c74e8ab8581 |
05-Apr-2007 |
Lauro Ramos Venancio <lauro.venancio@gmail.com> |
Fix release build. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35676 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
5502bf67cd49221583c15472150905ce13184d36 |
04-Apr-2007 |
Anton Korobeynikov <asl@math.spbu.ru> |
Properly emit range comparisons for switch cases, where neighbour cases go to the same destination. Now we're producing really good code for switch-lower-feature.ll testcase git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35672 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
6401260af24812454817891ca60b2126a14d5b6f |
04-Apr-2007 |
Chris Lattner <sabre@nondot.org> |
trivial optimization git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35648 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
d2f197da59a3c937c1809997907918c029f9f884 |
04-Apr-2007 |
Chris Lattner <sabre@nondot.org> |
use calloc instead of new/memset, it is more efficient git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35644 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
794a014809d810b7ee9a96be76774185561f0dcc |
04-Apr-2007 |
Chris Lattner <sabre@nondot.org> |
Extend StringMap to support being initialized as completely empty. When initialized this way, they do not do a malloc to allocate their buckets. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35642 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
ef65293dc27c2d7b1ba1fc7c7ffd802e86b780ec |
03-Apr-2007 |
Chris Lattner <sabre@nondot.org> |
add missing operator git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35613 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
febabcc02a1303a8e4d9bed76718a32f0273607a |
02-Apr-2007 |
Chris Lattner <sabre@nondot.org> |
add a helper function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35585 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
086f18626750482318612a10c3027b946b4e36e4 |
02-Apr-2007 |
Chris Lattner <sabre@nondot.org> |
add range version of insert() git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35572 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
770e1798e110732e09540d53ffd2be261790f2c1 |
01-Apr-2007 |
Zhou Sheng <zhousheng00@gmail.com> |
Remove unused methods. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35553 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
48a3e98c272d673f075c51d078140765fc267eb8 |
30-Mar-2007 |
Duncan Sands <baldrick@free.fr> |
Correct typo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35504 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
f6bef488eeab75b6c7746f9faa9731d45bb84aef |
25-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Compute getLowBitsSet correctly. Using the complement of a 64-bit value and shifting down without regard for the bitwidth of the APInt can lead to incorrect initialization values. Instead, check for the word size case (to avoid undef results from shift) and then do (1 << loBitsSet) - 1 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35344 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
5b9f2d6186317df88dbaf603bf8d0eafd6e83897 |
25-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Fix a typo in a comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35316 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
a1689ea60eafb10a617ba588fe29e09683299368 |
25-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Actually, for getHighBitsSet and getLowBitsSet, don't make a 0 bit size illegal. Instead do the 0 valued construction for the user. This is because the caller may not know (or care to check) that the number of bits set is zero. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35315 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
758d1bc919f3f0856df102f6db64ef9b894d4c23 |
25-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Make it illegal to set 0 bits in getHighBitsSet and getLowBitsSet. For that they should have used the uint64_t constructor. This avoids causing undefined results via shifts by the word size when the bit width is an exact multiple of the word size. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35313 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
5b7e659e220ed01c8d3a7335e2b52ff2f0fb2ef3 |
25-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
In the getBitsSet function, don't optimize for a common case that is already covered by getLowBitsSet (i.e. when loBits==0). Consequently, remove the default value for loBits and reorder the arguments to the more natural loBits, hiBits order. This makes it more clear that this function is for bit groups in the middle of the bit width and not towards one end or the other. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35312 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
ca76fc2cd3b97e4821e7d8247bc03bbbd2789ad9 |
25-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Don't invoke undefined behavior in shifts in the functions getHighBitsSet and getLowBitsSet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35311 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
8f969ee62c3fed26f835a37c41f7c009f99ea3bf |
25-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Implement the getBitsSet function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35310 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
8da7d65b8350d0f47f47ab496328d9068ac6764d |
25-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Implement the getHighBitsSet and getLowBitsSet functions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35308 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
013263f7b008e2fca293cf2720205f3f6db37dc2 |
24-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Get the signs in the right place! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35307 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
d3af825d29ab02f78665d5010c8439d34d65db65 |
24-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Undo the last change and make this really implement remainder and not modulus. The previous change was a result of incorrect documentation in the LangRef.html. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35305 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
53c9520b238514a9c1b63ff02221f7467aad1337 |
24-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Correct the implementation of srem to be remainder, not modulus. The sign of the result must follow the sign of the divisor. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35302 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
7ac2f81e49442f76e3427227fb1e300ce60fceb4 |
24-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Clean up this interface: 1. Group similar methods into doxygen groups 2. Reorganize the groups into a consist flow. 3. Significantly improve the quality of the documentation on several methods 4. Rewrite srem and sdiv to eliminate a copy and improve readability. 5. Eliminate unneeded forward references. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35300 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
3a3aacfe10cc6a96de7357e07dcf8b3f0e5f63bb |
21-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Fix a comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35246 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
e51ffcf27fbbb8dd209e68fc8a74b108822cd162 |
20-Mar-2007 |
Zhou Sheng <zhousheng00@gmail.com> |
Correct the name: isStrictPositive --> isStrictlyPositive. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35201 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
b9174dd5dc2a782e617fe45200ec462bcef26cee |
20-Mar-2007 |
Chris Lattner <sabre@nondot.org> |
Add a dtor to fix leaks from all clients of BitVector. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35200 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
95da1213958b63c6a5ef65107bf8c3b6a07d3ffb |
19-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Add an indication of signedness to the uint64_t constructor so sign bits can be extended. This helps fix test/Assembler/2007-03-19-NegValue.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35179 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
fdcd5a7740f5947a8679524f71852d36e79766a0 |
19-Mar-2007 |
Zhou Sheng <zhousheng00@gmail.com> |
Add isStrictPositive() to APInt to determine if this APInt Value > 0. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35156 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
b991dfeae75fba839150a21272a2aa875ec3945f |
13-Mar-2007 |
Zhou Sheng <zhousheng00@gmail.com> |
Add zextOrCopy() into APInt for convenience. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35079 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
8db6a445e679817d9972c44d2bc366732388c7b0 |
11-Mar-2007 |
Zhou Sheng <zhousheng00@gmail.com> |
Add getSignBit() and operator<<= into APInt for convenience. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35059 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
72adee00f6e0cd3239a2b4e1e1c8512e26ec6537 |
05-Mar-2007 |
Jeff Cohen <jeffc@jolt-lang.org> |
The hack won't work on VS 2005, and it might not be needed anyway. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34930 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
3130835bdf4e965309fa3cbed1bfc976a04324f8 |
05-Mar-2007 |
Zhou Sheng <zhousheng00@gmail.com> |
Correct the calculation in APInt::logBase2(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34929 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
f15bd1b9c66ca11776060ae0db2024d741d9de2d |
05-Mar-2007 |
Jeff Cohen <jeffc@jolt-lang.org> |
Elminate tabs and improve comments. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34921 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
ca5183d445954a9b2a570d6bbba1bc2b00ad6442 |
05-Mar-2007 |
Jeff Cohen <jeffc@jolt-lang.org> |
Unbreak VC++ build. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34917 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
ab8fea5283de0931e1da5dc91b4df2f734ba0206 |
04-Mar-2007 |
Chris Lattner <sabre@nondot.org> |
add iterator range version of ctor. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34899 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
52f32d55665ef02e6ebe4518b0a1e2e2a4df0bea |
03-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Regularize the interface for conversion functions to/from float/double. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34881 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
28bb83625accaa7b44d60c71794d35e3e8d61039 |
03-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Make getNumWords public so that those using getRawData stand a chance of not reading beyond the end of the buffer returned. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34873 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
da347141ecb7ce44c532cdc51b000d5ab65db79f |
03-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Add names for some of the operators. This is needed for the macros in the Interpreter. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34872 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
239e4021ce2dc1e57f31190b9e9737d0f2c507c1 |
03-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Add isPositive for symmetry with isNegative. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34862 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
155b6220f79ca2dbd47193c1c061e6e129b977ab |
02-Mar-2007 |
Chris Lattner <sabre@nondot.org> |
Fix PR1234 by working around a compiler bug. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34845 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
0eca22af62c1e1500b1a937ccdec6d5ffe6ecd8a |
02-Mar-2007 |
Evan Cheng <evan.cheng@apple.com> |
Make it 64-bit safe. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34829 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
b45a221348ee8693f1bff2df7b42689497083d41 |
02-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Add an abs() function to get the absolute value. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34819 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
53ee4f9d4083ce5106d95ab23985570a1f7413e5 |
01-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Add doubleToBits and floatToBits methods. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34807 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
ab2ed8ec850b6dd9b152ab936d70b7376903168a |
01-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Add bitsToDouble and bitsToFloat methods for re-interpretation of bits as FP. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34800 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
68e2300ad965bf08af11ae363bb85e3badf964dc |
01-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Add methods for bit width modification: sextOrTrunc, zextOrTrunc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34789 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
af8fb1984674db462bc6923ed54db0275c78b711 |
01-Mar-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Add a square root function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34775 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
f2253449e24712e96f7bdb7b54c20ddca8d6bb51 |
28-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Make APInt a little more friendly to its users: * Add support for + and - of a uint64_t. * Make trunc/sext/zext return *this so it can be chained with other ops * Add smin, smax, umin, umax functions for getting min/max values. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34742 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
84b4eeccc70b39f975a82ad098413d129d38a7d3 |
28-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
getActiveWords should return the number of words, not the index of the highest active words. Increment its result by one. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34713 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
9d3c51923392f69b63512e59e44f72affbe6136e |
28-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Add some syntactic sugar. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34704 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
681dcd14e9d59c2070e3a298328db9aea6069480 |
27-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Implement countLeadingOnes() and getMinSignedBits(). This helps to minimize the bit width of negative numbers by computing the minimum bit width for a negative value. E.g. 0x1800000000000000 could be just 0x8000000000000000 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34695 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
66ed1099ff3591c61e008198bb5a30862e778fc0 |
27-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Improve APInt interface: 1. Add unsigned and signed versions of methods so a "bool" argument doesn't need to be passed in. 2. Make the various getMin/getMax functions all be inline since they are so simple. 3. Simplify sdiv and srem code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34680 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
409f092766e61ab317e46aec37b4a9234ead9b5a |
27-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Allow the RoundDoubleToAPInt function to specify a width to use. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34672 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
946bca5bae2539ca55f8fb4700bff8b5e3f5a7eb |
26-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Fix indentation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34643 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
31a81f0190179b19dc72302dfea05cd1c2f0d22e |
26-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
1. Split getValue() into getSExtValue() and getZExtValue() to match ConstantInt better. 2. Add a getHashValue() method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34641 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
f99705e8985bbd4ff5786f5fc9d843d5de38a3d4 |
26-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Implement inline methods that make transition of ConstantInt to use APInt easier to comprehend and might be useful elsewhere. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34635 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
ebf4ebd69155ea46c7937aec25df1f50dd61c136 |
26-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Make isNegative() a const function since it doesn't modify the APInt. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34630 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
dcffd5c3d90f295c90bc211a9c402e1fc18f8b12 |
26-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Add an isNegative method to determine if the APInt's value is negative. This is much less expensive than a test against zero. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34619 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
c68c2243dcb716bc117f41aa543ca8a41046df41 |
25-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Fix clearUnusedBits to not depend on "undefined behavior" of >> operator when the bit size is equal to the word size. This happens to work out okay on x86, but might not on other platforms. The change just detects when there are no bits to clear (because BitWidth is a multiple of the word size) and returns early. Also, move some comments from .cpp file into header. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34602 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
20b1f5db1e93d28debc6449dcd56da6ca7aa6b67 |
25-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Add a private constructor for efficiency. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34580 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
d03d012ad97fad9f91b107d206dadad4c34bebef |
24-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Improve documentation. Make divide function internal (it was briefly external for testing). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34557 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
f31c784f2774311d1f7194ac4ca86262197a8099 |
21-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Add a dump() method for debugging. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34464 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
e91f7847e6126b266fb01de1f05da5655c359da8 |
20-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Add an internal convenience method for division that urem and udiv use. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34448 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
d81b0659501c66b2fec2009e8a999c3db6a1f95c |
19-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Add some new constants. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34398 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
a932e3f799cbf2f689e4987fea543d3f8661e7a8 |
18-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
1. "unsigned" -> "uint32_t" to gaurantee its bit width on all platforms. Size matters in this case. 2. Remove the unused whichByte private function, which was also broken. 3. Remove the non-const overload of the getWord function, getWord() is never used as an lvalue. 4. Rename some local variables for clarity (e.g. API -> Result). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34390 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
443b570149f5756b298de6b63d13bbbf66b4f6fc |
18-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Implement signed output for toString. Fix bugs in countLeadingZeros and countTrailingZeros. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34386 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
cd6f2bfc268add3dd54cbdf98b2a2c4862fe4ba5 |
17-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Fix bugs introduced by constructor parameter order change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34357 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
e81d2dad2c54014d36c73573307db5852c5caf8e |
16-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Review changes: 1. Function style changes. 2. 80-col violations. 3. Better names for things. 4. Arrange constructors so they all take bit width first. 5. Add named signed and unsigned comparison functions and remove the corresponding operators. 6. Remove operator&& and operator|| but provide a getBoolValue function which converts to bool as comparison against 0. This allows the normal && and || operators to be used as if (X.getBoolValue() && Y.getBoolValue()) Note: this still doesn't function 100% yet. I'm working on the bugs now. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34353 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
b5aabee33073068f1f6bb71c1da9000b03b16181 |
15-Feb-2007 |
Evan Cheng <evan.cheng@apple.com> |
Proper fix for the off-by-one bug in clear_unused_bits(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34328 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
f1f007d2ffeb5534070208938aaa7f3065d70f61 |
15-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Fix an off-by-one bug in computing the index of the word to clear. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34326 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
9d1597b086114d643a8c5db71fffa72ae8bb06f3 |
15-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Make sure Capacity gets initialized too. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34325 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
852b4baf47e987ff2f2cf547aba23ac89d091ede |
15-Feb-2007 |
Evan Cheng <evan.cheng@apple.com> |
Missing a ; git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34322 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
e01ad2d129640a404844b3e55c7be4405ac21a24 |
15-Feb-2007 |
Evan Cheng <evan.cheng@apple.com> |
BitVector::reference operator=(const reference& rhs) is unnecessary thanks to autoconvert to bool. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34320 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
1f46998b3f05bea569db27b3de78a091aa943ca3 |
15-Feb-2007 |
Evan Cheng <evan.cheng@apple.com> |
Remove unnecessary checks. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34319 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
638417f7887303b8dcf75043b39182de4c96db55 |
15-Feb-2007 |
Evan Cheng <evan.cheng@apple.com> |
operator== returns false when two bitvectors have different sizes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34317 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
c761df18ae4979a8f2a0d3c5c35cda41db2a3f0b |
15-Feb-2007 |
Evan Cheng <evan.cheng@apple.com> |
Merges two resize() variants. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34316 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
ccae61c5da270b0684c4c7d2450d9bf3ff35aac7 |
15-Feb-2007 |
Evan Cheng <evan.cheng@apple.com> |
Clear no longer deleting the bits to avoid mallocs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34315 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
7bf26c1d68f75de9c1c8520620228b016bf9a0eb |
15-Feb-2007 |
Evan Cheng <evan.cheng@apple.com> |
BitVector::count() bugs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34314 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
334df9d83f7a9f189d21c25a2d32afcd50bd0a9a |
15-Feb-2007 |
Evan Cheng <evan.cheng@apple.com> |
Eliminate a redundent ctor; eliminate one more potential new [0]. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34313 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
057f8e084515ca8e10eac5c37c8a9485b844343c |
15-Feb-2007 |
Evan Cheng <evan.cheng@apple.com> |
1 -> 1L since BitWord has type unsigned long. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34312 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
5f92ce4696eaeca9d8b99b1a1fa784e78479d516 |
15-Feb-2007 |
Evan Cheng <evan.cheng@apple.com> |
Eliminate new[0], just set Bits to NULL. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34311 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
c48aafe6c6d6f63197b1e21f6f5e7fb963fd313f |
15-Feb-2007 |
Evan Cheng <evan.cheng@apple.com> |
Inverted the condition by accident. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34309 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
506e89949024a055fb9fc7258e96bf4b581135e4 |
15-Feb-2007 |
Evan Cheng <evan.cheng@apple.com> |
Bug fixes: assignment operator forgot to copy over size; copy ctor forgot to clear unused top bits. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34305 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
b04973edfaffb12905f58379d632f0d7e4bb5d9b |
15-Feb-2007 |
Zhou Sheng <zhousheng00@gmail.com> |
Fix some buges: 1. Make getMinValue() returns the right value. 2. Fix the ByteSwap() crash problem. 3. Make Postfix increment work correctly. 4. Fix some bugs in LogBase2, Hi/LoBits and UDiv. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34304 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
ad1d5c3bc55249b3291338288c90773ce80df11a |
15-Feb-2007 |
Evan Cheng <evan.cheng@apple.com> |
Add a BitVector class. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34301 91177308-0d34-0410-b5e6-96231b3b80d8
itVector.h
|
db3faa64ee89d537ca1b1410dd841ef51e957540 |
13-Feb-2007 |
Reid Spencer <rspencer@reidspencer.com> |
Make some minor improvements to APInt: 1. Make all the operators use uppercase 2. Rename APIntRoundToDouble method just RoundToDouble, the APInt is redundant. 3. Turn the class on for compilation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34253 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
8c06509f9590a63ab2d4361945aac18c02b71f0c |
13-Feb-2007 |
Chris Lattner <sabre@nondot.org> |
fix a critical bug in smallvector, where it would destroy elements that are not in its range (!). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34230 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
d93f00c35dbd1ea415bb2b39435253aef9428d71 |
12-Feb-2007 |
Zhou Sheng <zhousheng00@gmail.com> |
1. Make APInt::shl work correctly and more efficiently. 2. Add functions to support the numberical conversion between APInt and double/float. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34201 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
a96b4ee7ff408f2fe23fa9b2788c1ed9cf87caf4 |
11-Feb-2007 |
Chris Lattner <sabre@nondot.org> |
add new ShouldRehash method to factor out common code. Fix the dtor to not delete tombstones. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34189 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
65033ffc297ce5610af9eedd38dc074e02dbff9b |
11-Feb-2007 |
Chris Lattner <sabre@nondot.org> |
do not allow hash table to be filled with tombstones. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34186 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
44dcd01cb3424420d79d5811fa8c1c052411f975 |
11-Feb-2007 |
Chris Lattner <sabre@nondot.org> |
Add support for removing elements out of StringMap. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34185 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
b5bb9f5b5cfe89f4b7626671f4923d50f8d4cd6a |
11-Feb-2007 |
Chris Lattner <sabre@nondot.org> |
Replace the ugly FindValue method with STL-like find methods. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34183 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
360cac8fef34b4671f27ef52674a41e29154ddc7 |
11-Feb-2007 |
Chris Lattner <sabre@nondot.org> |
remove support for stringmap visitors now that iterators exist. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34180 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
6ccadf6f7f196b6c27a0eb966a90b8c39812b780 |
11-Feb-2007 |
Chris Lattner <sabre@nondot.org> |
add iterator support, plus support for size() and empty(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34178 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
9cc2d3dce87c2f4666a5d6a97321d865ade930da |
11-Feb-2007 |
Chris Lattner <sabre@nondot.org> |
Split StringMapEntry construction out of StringMap, into StringMapEntry. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34170 91177308-0d34-0410-b5e6-96231b3b80d8
tringMap.h
|
569b935e6b23c4a0e4ebb2c96603974310ef0587 |
10-Feb-2007 |
Chris Lattner <sabre@nondot.org> |
Make find return the appropriate iterator/const_iterator git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34137 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
a76b1febd4fd258e8054395adedcbd477668d956 |
10-Feb-2007 |
Chris Lattner <sabre@nondot.org> |
Allow DenseMAp to take an explicit DenseMapKeyInfo git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34134 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
ff4304f8243f55e2e5c63bc95517cd38ff9295e1 |
09-Feb-2007 |
Zhou Sheng <zhousheng00@gmail.com> |
Eliminates friend function declaration inside APInt, instead, adds public methods as those global function's internal implementation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34083 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
bb28a81ba3c112853f0eb3d8df0190accc0379c9 |
08-Feb-2007 |
Chris Lattner <sabre@nondot.org> |
Rename CStringMap -> StringMap, since it now supports nul characters in the strings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34064 91177308-0d34-0410-b5e6-96231b3b80d8
StringMap.h
tringMap.h
|
ee182422ff0b638b17c5ee802c19b8680107c2bb |
08-Feb-2007 |
Chris Lattner <sabre@nondot.org> |
Allow cstringmap to contain strings with nul characters in them. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34062 91177308-0d34-0410-b5e6-96231b3b80d8
StringMap.h
tringMap.h
|
0b706b18bd0a7760d971727460a1f26bff8289b0 |
08-Feb-2007 |
Zhou Sheng <zhousheng00@gmail.com> |
As Chris and Reid suggested, remove "isSigned" field from APInt, instead, add some signed/unsigned arithmetic operation functions into APInt.h to handle the signed/unsigned issue. These functions will be defined inside a namespace "APIntOps" which is inside llvm namespace. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34053 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
58a0d64fae7ace05b27dad94fd427991d853619b |
07-Feb-2007 |
Lauro Ramos Venancio <lauro.venancio@gmail.com> |
Fix build error. include/llvm/ADT/APInt.h:326: error: ‘assert’ was not declared in this scope git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34002 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
f29a09d6272265e90362d5dfba201c4ed6dcf6d5 |
07-Feb-2007 |
Zhou Sheng <zhousheng00@gmail.com> |
As Chris suggested, fixed some problems. (This is the first part.) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33986 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
e237cf934fcb8a25746e068f543fbd6db44eaa70 |
07-Feb-2007 |
Chris Lattner <sabre@nondot.org> |
do not let the table fill up with tombstones. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33973 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
04a3115e619740245cbe34c8c7428b4bde7868f7 |
07-Feb-2007 |
Chris Lattner <sabre@nondot.org> |
Fix a really subtle bug where the entire hash table could fill with tombstones, causing subsequent insertions to infinitely loop. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33972 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
53a58106d418db0acfe6a0c0821164158ed1ef2b |
06-Feb-2007 |
Lauro Ramos Venancio <lauro.venancio@gmail.com> |
Fix build error. UniqueVector.h:66: error: ‘assert’ was not declared in this scope git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33961 91177308-0d34-0410-b5e6-96231b3b80d8
niqueVector.h
|
7406dcdc2981ae864a22ba34f96d1db5e3a4cf87 |
06-Feb-2007 |
Zhou Sheng <zhousheng00@gmail.com> |
As Reid suggested, fixed some problems. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33954 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
c04a1ce623c3229aa492281d00f445724868b861 |
06-Feb-2007 |
Chris Lattner <sabre@nondot.org> |
Simplify this a bit, add an assertion git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33936 91177308-0d34-0410-b5e6-96231b3b80d8
niqueVector.h
|
7b13624b3220ff2a1556668a602939d4f8c9e68a |
06-Feb-2007 |
Chris Lattner <sabre@nondot.org> |
Const method must use const_iterator. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33933 91177308-0d34-0410-b5e6-96231b3b80d8
niqueVector.h
|
d0f285e212c47ac71af842bb39ea5364f1e556b4 |
05-Feb-2007 |
Zhou Sheng <zhousheng00@gmail.com> |
Add a class APInt to represent arbitrary precision constant integral values. It is a functional replacement for common case integer type like "unsigned", "uint64_t", but also allows non-byte-width integer type and large integer value types such as 3-bits, 15-bits, or more than 64-bits of precision. For more details, see pr1043. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33913 91177308-0d34-0410-b5e6-96231b3b80d8
PInt.h
|
28f72279f5aaf34ba62ae00ca3b8bb94d8b91f70 |
04-Feb-2007 |
Chris Lattner <sabre@nondot.org> |
add a version of insert that takes the key and value. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33856 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
5fcaf3ed141a3f0246e41f45077dbb7d7d0b11d3 |
04-Feb-2007 |
Chris Lattner <sabre@nondot.org> |
Make SmallSetVector useful git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33854 91177308-0d34-0410-b5e6-96231b3b80d8
etVector.h
|
7235928b45e6a353f6fcca8b9a40e83ab3420fb0 |
04-Feb-2007 |
Chris Lattner <sabre@nondot.org> |
Various bugfixes git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33848 91177308-0d34-0410-b5e6-96231b3b80d8
mallSet.h
|
337cde0d5ac8c28793b305d17c1ccfb5228eab11 |
04-Feb-2007 |
Chris Lattner <sabre@nondot.org> |
Convert SetVector to be a true adapter class and add SmallSetVector. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33846 91177308-0d34-0410-b5e6-96231b3b80d8
etVector.h
|
5a5f6b6e38b7155200903816f22501cce4ca36a7 |
03-Feb-2007 |
Chris Lattner <sabre@nondot.org> |
8 buckets is way too small to start out with. This was only for testing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33835 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
32dc7fd0aa4d87266eea5a32a25c16a99326c8d2 |
03-Feb-2007 |
Chris Lattner <sabre@nondot.org> |
remove a dead header git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33820 91177308-0d34-0410-b5e6-96231b3b80d8
itSetVector.h
|
137d4b253384adce88bfa2a1c37695d90f0a9d6c |
02-Feb-2007 |
Chris Lattner <sabre@nondot.org> |
silence annoying warning in release-asserts build git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33797 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
70a76a633ed5101dbe472404efd989f4f1b3669c |
02-Feb-2007 |
Chris Lattner <sabre@nondot.org> |
add find/erase, add const iterators, fix bugs in iterators. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33791 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
f6390f48e6324b0221d10a9c75ab625357d8a43a |
02-Feb-2007 |
Chris Lattner <sabre@nondot.org> |
add iterators git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33790 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
6e94c00ab29e654125e845f3bce692a3764c1c11 |
01-Feb-2007 |
Chris Lattner <sabre@nondot.org> |
Add a new dense hash table implementation git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33751 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
|
94c002a190cd2e3a52b1510bc997e53d63af0b3b |
01-Feb-2007 |
Chris Lattner <sabre@nondot.org> |
rename DenseMap to IndexedMap. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33749 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
ndexedMap.h
|
e3f71b4198cebee9c9f2534c39bd3e19740eee6a |
01-Feb-2007 |
Chris Lattner <sabre@nondot.org> |
rename DenseMap -> IndexedMap. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33748 91177308-0d34-0410-b5e6-96231b3b80d8
ndexedMap.h
|
af3e4d4bee2519962fb1f5dabece364df522f508 |
31-Jan-2007 |
Chris Lattner <sabre@nondot.org> |
add missing ctor git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33714 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
ea830ef21f1f863886455fabfc64ea00b172aeeb |
28-Jan-2007 |
Chris Lattner <sabre@nondot.org> |
provide a definition for uintptr_t git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33592 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
b358f0254d7b6470b1ed84a97b601ef102b4e88e |
27-Jan-2007 |
Chris Lattner <sabre@nondot.org> |
Make SmallSet<whatever*, N> faster by transparently implementing it with SmallPtrSet. Some clients will need to use SmallPtrSet directly though if they need to iterate over the set. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33584 91177308-0d34-0410-b5e6-96231b3b80d8
mallSet.h
|
894d264f3ee965645656ddd6566acbe4d3a3ed55 |
27-Jan-2007 |
Chris Lattner <sabre@nondot.org> |
add some missing API git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33583 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
a5b4760cbd23d49b6d94bc56d85b5a499fa54802 |
27-Jan-2007 |
Chris Lattner <sabre@nondot.org> |
Give SmallSet a reasonable fallback if it gets large: use an std::set. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33582 91177308-0d34-0410-b5e6-96231b3b80d8
mallSet.h
|
0b930852cf1a9899ae82dd6c31b43e754a77dcb0 |
27-Jan-2007 |
Chris Lattner <sabre@nondot.org> |
implement SmallPtrSet::erase git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33581 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
af3056c97e56106af7c3b9a5c856d1dc1d21e358 |
27-Jan-2007 |
Chris Lattner <sabre@nondot.org> |
Fix a limitation of SmallPtrSet. Before it would assert if the smallsize was not a power of two. Now it rounds up to the next power of two internally. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33580 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
18b69106b7a66ac6abde37d1be6d0d952796ed04 |
27-Jan-2007 |
Chris Lattner <sabre@nondot.org> |
add some comments on the algorithm git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33579 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
c95dc987e9e369c1c63819dbc4f76ab9b913772c |
27-Jan-2007 |
Chris Lattner <sabre@nondot.org> |
Add a new SmallSet ADT specialized for pointers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33577 91177308-0d34-0410-b5e6-96231b3b80d8
mallPtrSet.h
|
bcabbfc310bfd3cd87836f7967d1d71713d91a1d |
27-Jan-2007 |
Chris Lattner <sabre@nondot.org> |
simplify insert interface git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33567 91177308-0d34-0410-b5e6-96231b3b80d8
mallSet.h
|
32f3bd43dbf4082ed05478c6ef69727925ab1646 |
27-Jan-2007 |
Chris Lattner <sabre@nondot.org> |
clean up comment git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33566 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
ea516cce65e7c9f1c49dd2e0634d73f89bb954a4 |
26-Jan-2007 |
Chris Lattner <sabre@nondot.org> |
fit in 80 cols git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33553 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
c9708122836670953b7f7b3a86cc263b63fe3e3e |
23-Jan-2007 |
Chris Lattner <sabre@nondot.org> |
fix typo git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33459 91177308-0d34-0410-b5e6-96231b3b80d8
mallSet.h
|
182907645c9c2da22dba78255f0c8541f5d9f50d |
23-Jan-2007 |
Chris Lattner <sabre@nondot.org> |
make the SmallSet interface more std::set-like git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33458 91177308-0d34-0410-b5e6-96231b3b80d8
mallSet.h
|
89502f086901acf6210b711f01726863f8445469 |
23-Jan-2007 |
Chris Lattner <sabre@nondot.org> |
add a trivial SmallSet class, which operates on a similar principle to SmallVector. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33456 91177308-0d34-0410-b5e6-96231b3b80d8
mallSet.h
|
cf48cab945f1cbdf637d7d970398cbe6d89135ee |
17-Jan-2007 |
Reid Spencer <rspencer@reidspencer.com> |
For PR1094: Make the SetVector::iterator be the vector's const_iterator. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33279 91177308-0d34-0410-b5e6-96231b3b80d8
etVector.h
|
0a3615246fe194f64e5d4afea5943542545819fc |
20-Dec-2006 |
Chris Lattner <sabre@nondot.org> |
eliminate constructor from Statistic class. It is now impossible to get a static constructor for them :). Transition complete. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32710 91177308-0d34-0410-b5e6-96231b3b80d8
tatistic.h
|
3d3a429acb1de79eb15575ed4d90a0a951fda576 |
19-Dec-2006 |
John Criswell <criswell@uiuc.edu> |
Added operator methods to the Statistic class; some LLVM projects depend on these. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32701 91177308-0d34-0410-b5e6-96231b3b80d8
tatistic.h
|
ecb27687587d04475097596c53349b631f7ef42d |
19-Dec-2006 |
Chris Lattner <sabre@nondot.org> |
Refactor statistic a big and introduce a horrible-but-necessary macro (STATISTIC), which allows us to define statistics that don't introduce static ctors into the .o files. I'm migrating code over to use this incrementally. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32687 91177308-0d34-0410-b5e6-96231b3b80d8
tatistic.h
|
fc04e5ead38ee6dbce6996efbec9298a01416a38 |
18-Dec-2006 |
Bill Wendling <isanbard@gmail.com> |
Removed llvm_ostream and used std::ostream instead. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32658 91177308-0d34-0410-b5e6-96231b3b80d8
itSetVector.h
|
5c7e326585f3a543388ba871c3425f7664cd9143 |
17-Dec-2006 |
Bill Wendling <isanbard@gmail.com> |
Added an automatic cast to "std::ostream*" etc. from OStream. We then can rework the hacks that had us passing OStream in. We pass in std::ostream* instead, check for null, and then dispatch to the correct print() method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32636 91177308-0d34-0410-b5e6-96231b3b80d8
itSetVector.h
|
975f05852d15c98540b50de7df704d67e5a794cd |
08-Dec-2006 |
Chris Lattner <sabre@nondot.org> |
Change the implementation of statistic to not need destructors at all. Instead, the stat info is printed when llvm_shutdown() is called. These also don't need static ctors, but getting rid of them is uglier: still investigating. This reduces the number of static dtors in llvm from ~1400 to ~750. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32372 91177308-0d34-0410-b5e6-96231b3b80d8
tatistic.h
|
e81561909d128c6e2d8033cb5465a49b2596b26a |
07-Dec-2006 |
Bill Wendling <isanbard@gmail.com> |
Changed llvm_ostream et all to OStream. llvm_cerr, llvm_cout, llvm_null, are now cerr, cout, and NullStream resp. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32298 91177308-0d34-0410-b5e6-96231b3b80d8
itSetVector.h
quivalenceClasses.h
|
cf84504d7a86808117f67264ad5cfab8f5a139bc |
06-Dec-2006 |
Chris Lattner <sabre@nondot.org> |
merge the Statistic and StatisticBase classes, eliminating virtual methods and eliminating #includes from the Statistic.h file. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32282 91177308-0d34-0410-b5e6-96231b3b80d8
tatistic.h
|
ac0b6ae358944ae8b2b5a11dc08f52c3ed89f2da |
06-Dec-2006 |
Chris Lattner <sabre@nondot.org> |
Detemplatize the Statistic class. The only type it is instantiated with is 'unsigned'. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32279 91177308-0d34-0410-b5e6-96231b3b80d8
tatistic.h
|
d96662360f49f9b94d0faa7ea8dba8582bc1b364 |
29-Nov-2006 |
Bill Wendling <isanbard@gmail.com> |
Support for llvm_ostreams. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31988 91177308-0d34-0410-b5e6-96231b3b80d8
itSetVector.h
quivalenceClasses.h
CCIterator.h
|
d5b58c239e44fe4fa2322900b26c691f5a44bd87 |
28-Nov-2006 |
Chris Lattner <sabre@nondot.org> |
Add a helper function git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31981 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
b5ebf15b2b2ce8989caf1a1114b05d80b0f9bd48 |
28-Nov-2006 |
Bill Wendling <isanbard@gmail.com> |
Added a temporary hack to get the llvm-streams to work for future checkins. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31978 91177308-0d34-0410-b5e6-96231b3b80d8
itSetVector.h
|
d41b30def3181bce4bf87e8bde664d15663165d0 |
05-Nov-2006 |
Jeff Cohen <jeffc@jolt-lang.org> |
Unbreak VC++ build. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31464 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
1f67a99260917d33fefc6a7d863b0cd850a34431 |
02-Nov-2006 |
Jim Laskey <jlaskey@mac.com> |
Allow FoldingSet clients to pump up the initial hash size. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31377 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
09b6ac92d855fc0224562bdc06349f986a31926b |
30-Oct-2006 |
Chris Lattner <sabre@nondot.org> |
add a new form of insert. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31290 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
dd94c8d6b2afb9c33c364ac8f0c8f8ed5d4c04a0 |
30-Oct-2006 |
Chris Lattner <sabre@nondot.org> |
Add SmallString a (currently) minimal class that adapts SmallVector to be more string-like. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31289 91177308-0d34-0410-b5e6-96231b3b80d8
mallString.h
mallVector.h
|
6c1645ce7da8495c79e3d38bbf91ce77bf489c10 |
30-Oct-2006 |
Chris Lattner <sabre@nondot.org> |
add a method git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31288 91177308-0d34-0410-b5e6-96231b3b80d8
StringMap.h
tringMap.h
|
463c4a1ae9af56b6a944b74f0898e17d9a3b52eb |
30-Oct-2006 |
Chris Lattner <sabre@nondot.org> |
add newline at end of file git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31287 91177308-0d34-0410-b5e6-96231b3b80d8
StringMap.h
tringMap.h
|
23d7b3611759c7fb3a853dfce3ee3d43ef5ca67d |
30-Oct-2006 |
Chris Lattner <sabre@nondot.org> |
add a highly efficient hash table that is specialized for mapping C strings to some other type. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31286 91177308-0d34-0410-b5e6-96231b3b80d8
StringMap.h
tringMap.h
|
2f6d4c9766e920602326cfe26f5985077156d890 |
28-Oct-2006 |
Jim Laskey <jlaskey@mac.com> |
Clean up git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31238 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
18529f35151f18345519e38496ac72350ee15f38 |
27-Oct-2006 |
Jim Laskey <jlaskey@mac.com> |
Apply editorials. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31218 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
0e5af195f6c54dbf5a24a1ec12ed2d0bd02f5b7f |
27-Oct-2006 |
Jim Laskey <jlaskey@mac.com> |
Breakout folding hash set from SelectionDAGCSEMap. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31215 91177308-0d34-0410-b5e6-96231b3b80d8
oldingSet.h
|
f2bdcb31877bf5e79903316c49b6a29376f03919 |
09-Oct-2006 |
Andrew Lenharth <andrewl@lenharth.org> |
Fix build error in gcc 3.4 and make more this general git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30839 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
53b06db6c7d45963be4a0e847a77447c93c1e045 |
09-Oct-2006 |
Chris Lattner <sabre@nondot.org> |
Fix PR897 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30820 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
0750bec272350cbbf23aa4d43a46785324ee212e |
01-Sep-2006 |
Chris Lattner <sabre@nondot.org> |
add a simple reserve method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30011 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
52c917190a8094b4e5f6cc0b30e373638268f3a4 |
30-Aug-2006 |
Chris Lattner <sabre@nondot.org> |
Instantiate Statistic<> in one place, not in every .o file that uses it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29971 91177308-0d34-0410-b5e6-96231b3b80d8
tatistic.h
|
181c359c9d29be884ca1fd33c0469b1b567bd33c |
28-Aug-2006 |
Chris Lattner <sabre@nondot.org> |
Add 2nd form of resize git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29945 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
57b79795b37b367d69d58ad10f25e997b4f55ce9 |
22-Aug-2006 |
Chris Lattner <sabre@nondot.org> |
add resize, move swap out of line git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29823 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
d6007d607641b6dae3511b8ebc1d752ff327aed0 |
22-Aug-2006 |
Chris Lattner <sabre@nondot.org> |
add a bunch more operations, including swap, insert, erase, front(), and bugfixes for operator=. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29811 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
67b7ff9ede110999f3a37f22c24bdf00a405a78a |
17-Aug-2006 |
Chris Lattner <sabre@nondot.org> |
silence a warning. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29734 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
2e6baf626d2096eade89e5305bc09e369a761516 |
16-Aug-2006 |
Chris Lattner <sabre@nondot.org> |
Bugfixes for smallvector when the element size is small and N is small. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29720 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
b5677f933f918acd8b8525635510d22dfb26285e |
14-Aug-2006 |
Chris Lattner <sabre@nondot.org> |
avoid a warning git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29674 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
1653366010ce0c69fdb0fac7c08cc7ca5668bd84 |
12-Aug-2006 |
Chris Lattner <sabre@nondot.org> |
move code out of line so that GCC doesn't inline it at -O3 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29636 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
80b65823147ba498efd9a5df72afc7ff7d9dc0d9 |
12-Aug-2006 |
Chris Lattner <sabre@nondot.org> |
Split SmallVector into SmallVector and SmallVectorImpl, which allows us to eliminate code duplication due to the 'N' parameter. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29634 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
8e10f5b8113a5080fc916d1123377292ef2f6012 |
08-Aug-2006 |
Chris Lattner <sabre@nondot.org> |
capacity is a pointer, not a value git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29564 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
1c567b5d92c4babe33d606aa2c2643655fd3a136 |
08-Aug-2006 |
Chris Lattner <sabre@nondot.org> |
add a new assign method git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29562 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
8de353df9da7e5931688075c85d01e3153c73185 |
08-Aug-2006 |
Chris Lattner <sabre@nondot.org> |
Add ctor that initializes from a range. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29560 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
d0337c167852fe313e09e20f5ef0819e3555b04d |
08-Aug-2006 |
Chris Lattner <sabre@nondot.org> |
Remove assertions from the SmallVector class. They slow down clients of smallvector too much in a release build. Removing them speeds up isel 4%. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29556 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
f5e42bfed1726607506b6502166016cb2e41fe32 |
07-Aug-2006 |
Chris Lattner <sabre@nondot.org> |
Add a clear method to SmallVector git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29542 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
cfb3ba060acb3af49dfa0f59070ff43f16df6e6b |
06-Aug-2006 |
Chris Lattner <sabre@nondot.org> |
Silence a warning on x86-64, reported by chandlerc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29535 91177308-0d34-0410-b5e6-96231b3b80d8
CCIterator.h
|
e6ffe61c8455e4b343584c5fab88eb5774916356 |
05-Aug-2006 |
Evan Cheng <evan.cheng@apple.com> |
This causes some random crashes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29534 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
d91e5f911f5fc840725771d3b27211b9748659e3 |
28-Jul-2006 |
Chris Lattner <sabre@nondot.org> |
The smallvector dtor should destroy the elements. Implement pop_back. Chage some code to use 'iterator' instead of T*. This unbreaks operators=. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29380 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
825405c0c1b92c69cea283f97ee829ea3f23e3a4 |
27-Jul-2006 |
Chris Lattner <sabre@nondot.org> |
Use std::copy instead of custom loops to take advantage of STL optimizations. Add a new append method for appending a range. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29323 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
f28265402130eb03762d9a6333fd8f87765a8875 |
26-Jul-2006 |
Chris Lattner <sabre@nondot.org> |
Add a new llvm::SmallVector template, which is similar to the vector class, but contains optimizations to avoid heap allocation if the vector size is smaller than some threshold. This can significantly improve the performance of code that allocates many small vectors by eliminating tons of small malloc/free's. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29281 91177308-0d34-0410-b5e6-96231b3b80d8
mallVector.h
|
1e36126f5e8344d0df2fcf8640919cc85ff88693 |
15-Jul-2006 |
Chris Lattner <sabre@nondot.org> |
Add two helper functions git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29150 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
70aa33ee37fede7fb84de02daa38557ffd366458 |
21-Jun-2006 |
Chris Lattner <sabre@nondot.org> |
Add some out-of-line virtual dtors so that the class has a "home", preventing vtables for (e.g.) Instruction from being emitted into every .o file. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28898 91177308-0d34-0410-b5e6-96231b3b80d8
tatistic.h
|
79818a40d73a1ca6154f0823d599c3208956d5e7 |
01-Jun-2006 |
Reid Spencer <rspencer@reidspencer.com> |
Favor C++ casts over C casts in C++ code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28622 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
6fb568f77e6766871ad07b3b206571e96b56dfb5 |
31-May-2006 |
Chris Lattner <sabre@nondot.org> |
Fix utostr once and for all, by making there only be one function named utostr. To keep the efficiency in the 32-bit case, make it check to see if the value is 32-bits and if so switch over to the faster 32-bit case. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28601 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
37e8bde1415e16cf0950feb82460b5d7728e4676 |
31-May-2006 |
Andrew Lenharth <andrewl@lenharth.org> |
Fix build breakage on alpha, without causing it on x86. as a bonus, all platforms can invent the same number of unique names now git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28596 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
f48ec61fbd9c823c103ff8a5d035dd89c7cecb8a |
31-May-2006 |
Andrew Lenharth <andrewl@lenharth.org> |
revert for now git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28595 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
cffba3a6e934fb80008e1a18d8abef29ef137437 |
31-May-2006 |
Andrew Lenharth <andrewl@lenharth.org> |
make 64-bit safe and fix the build on alpha git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28593 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
19b7e0e0cabfa6dfc559c64e3d6ed053832c4047 |
24-May-2006 |
Reid Spencer <rspencer@reidspencer.com> |
For PR786: Minor tweaks in public headers and a few .cpp files so that LLVM can build successfully with -pedantic and projects using LLVM with -pedantic don't get warnings from LLVM. There's still more -pedantic warnings to fix. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28453 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
410354fe0c052141dadeca939395743f8dd58e38 |
22-Feb-2006 |
Chris Lattner <sabre@nondot.org> |
Make the LLVM headers "-ansi -pedantic -Wno-long-long" clean. Patch by Martin Partel! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26313 91177308-0d34-0410-b5e6-96231b3b80d8
itSetVector.h
ostOrderIterator.h
ectorExtras.h
|
8211e82e40b8f6c0e200933f25aa4d9fe2cf4edc |
26-Jan-2006 |
Chris Lattner <sabre@nondot.org> |
add some methods for case-insensitive string compares git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25659 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
3e0be526bfaafeb68b8ce38aa50b1b0f1598fc03 |
26-Jan-2006 |
Jim Laskey <jlaskey@mac.com> |
Use find instead of lower_bounds. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25657 91177308-0d34-0410-b5e6-96231b3b80d8
niqueVector.h
|
e4a359e43b7af7db24482f1da3303c0bb7c9f425 |
26-Jan-2006 |
Jim Laskey <jlaskey@mac.com> |
Add support to find existing entries. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25654 91177308-0d34-0410-b5e6-96231b3b80d8
niqueVector.h
|
1dc3fd11101903fbcbdc3d69cf92d5db59389ff1 |
23-Jan-2006 |
Chris Lattner <sabre@nondot.org> |
This only needs <iosfwd> not <iostream> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25517 91177308-0d34-0410-b5e6-96231b3b80d8
tatistic.h
|
7715fba9b14ff1b22459e33b19a4db734e72d5f2 |
17-Jan-2006 |
Evan Cheng <evan.cheng@apple.com> |
Suppress "no newline at end of file" warnings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25400 91177308-0d34-0410-b5e6-96231b3b80d8
niqueVector.h
|
e3150024b46c528f1dd11d12a667d207d2da54ab |
17-Jan-2006 |
Jim Laskey <jlaskey@mac.com> |
Reduce memory consumption and force (somewhat) access to entries via ID. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25393 91177308-0d34-0410-b5e6-96231b3b80d8
niqueVector.h
|
67218e9f276a22ee284c9206af85f2f1ae9e9094 |
17-Jan-2006 |
Jim Laskey <jlaskey@mac.com> |
Redundant inline keyword. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25377 91177308-0d34-0410-b5e6-96231b3b80d8
niqueVector.h
|
54c33190224bc0746aa9d625ec27ebb205fffcfd |
17-Jan-2006 |
Jim Laskey <jlaskey@mac.com> |
UniqueVector template provides a means of enumerating objects uniquely. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25376 91177308-0d34-0410-b5e6-96231b3b80d8
niqueVector.h
|
8b6cea1b9595c1ddbb07dbbe8a8af781d78cd51d |
07-Dec-2005 |
Chris Lattner <sabre@nondot.org> |
Remove a now-dead map, patch by Saem Ghani, thanks! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24629 91177308-0d34-0410-b5e6-96231b3b80d8
ostOrderIterator.h
|
767a033a5cc6a8003d72a7a243cb60d9bae674d3 |
06-Dec-2005 |
Chris Lattner <sabre@nondot.org> |
Implement external storage for post-order iteration, implementing PR267 Patch by Saem Ghani, thanks! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24617 91177308-0d34-0410-b5e6-96231b3b80d8
ostOrderIterator.h
|
61b42eb928dd4f042ed4444c0a5497d6ef7d527d |
26-Oct-2005 |
Jeff Cohen <jeffc@jolt-lang.org> |
Fix comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24004 91177308-0d34-0410-b5e6-96231b3b80d8
ash_set.in
|
8030c258827a44c676cef7d31f53a8cd3b285063 |
26-Oct-2005 |
Jeff Cohen <jeffc@jolt-lang.org> |
Eliminate use of sed in Visual Studio builds. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24003 91177308-0d34-0410-b5e6-96231b3b80d8
ash_map.in
ash_set.in
terator.in
|
9e7a601eaf8de846cee7ada9218346acf6bb864d |
24-Aug-2005 |
Misha Brukman <brukman+llvm@gmail.com> |
Wrap long lines git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23009 91177308-0d34-0410-b5e6-96231b3b80d8
ash_map.in
|
ca09bd0732e64461acd2d92c356a3237ab9de7d1 |
24-Aug-2005 |
Reid Spencer <rspencer@reidspencer.com> |
Remove some tabs. Wrap a line. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23008 91177308-0d34-0410-b5e6-96231b3b80d8
ash_set.in
|
ef35ba4f646457728a57f73f93e816b77bd9c8a7 |
23-Aug-2005 |
Chris Lattner <sabre@nondot.org> |
add a method git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22985 91177308-0d34-0410-b5e6-96231b3b80d8
quivalenceClasses.h
|
cb647519d34184fe41aa7e072076ae70634bc3d7 |
15-Jun-2005 |
Nate Begeman <natebegeman@mac.com> |
Add some operators the PowerPC backend needs to efficiently and correctly generate conditional branches. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22214 91177308-0d34-0410-b5e6-96231b3b80d8
list
|
e25bc8c9571ed49c0a2d6b647a56679623f325a5 |
06-May-2005 |
Misha Brukman <brukman+llvm@gmail.com> |
Convert tabs to spaces git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21703 91177308-0d34-0410-b5e6-96231b3b80d8
ash_map.in
|
3b1b6e626e42eb22869a28b02a463de5597f9822 |
22-Apr-2005 |
Misha Brukman <brukman+llvm@gmail.com> |
Convert tabs to spaces git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21436 91177308-0d34-0410-b5e6-96231b3b80d8
ostOrderIterator.h
|
9769ab22265b313171d201b5928688524a01bd87 |
21-Apr-2005 |
Misha Brukman <brukman+llvm@gmail.com> |
Remove trailing whitespace git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21408 91177308-0d34-0410-b5e6-96231b3b80d8
itSetVector.h
epthFirstIterator.h
quivalenceClasses.h
raphTraits.h
ashExtras.h
ostOrderIterator.h
CCIterator.h
TLExtras.h
etOperations.h
etVector.h
tatistic.h
tringExtras.h
ree.h
ectorExtras.h
|
24a751eccda668e15cca2a84772d504b47c40378 |
21-Mar-2005 |
Chris Lattner <sabre@nondot.org> |
Provide a guaranteed definition of intptr_t. Thansk to Evan Jones for pointing this out! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20721 91177308-0d34-0410-b5e6-96231b3b80d8
quivalenceClasses.h
|
37884fc79e9a55e92ec26574c710c8d3609aa839 |
20-Mar-2005 |
Misha Brukman <brukman+llvm@gmail.com> |
Constant-propagate the value of `isL' variable and eliminate it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20698 91177308-0d34-0410-b5e6-96231b3b80d8
quivalenceClasses.h
|
2413a68d2db9f4abc813775ff5c43e25b73dd8cc |
19-Mar-2005 |
Jeff Cohen <jeffc@jolt-lang.org> |
Silence VC++ warning about mixing intptr_t and bool, and about unused variable isL. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20697 91177308-0d34-0410-b5e6-96231b3b80d8
quivalenceClasses.h
|
1f377fefb745002a7aacb1ec87a4beb7bd87856e |
19-Mar-2005 |
Chris Lattner <sabre@nondot.org> |
Two fixes for the copy ctor/operator=: 1. Make sure to clear() 'this' before adding elements to it 2. Make sure that the leaders of the RHS EC are the leaders of the LHS EC. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20692 91177308-0d34-0410-b5e6-96231b3b80d8
quivalenceClasses.h
|
67823970461ba101fbb3704b016182e19bc5e2df |
19-Mar-2005 |
Chris Lattner <sabre@nondot.org> |
add some methods, fix a major bug in getLeader() that was causing things to not be unified correctly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20691 91177308-0d34-0410-b5e6-96231b3b80d8
quivalenceClasses.h
|
4a6d9cf122fa2cd83669f1a284c86949852f0ac3 |
19-Mar-2005 |
Chris Lattner <sabre@nondot.org> |
implement a proper copy ctor, operator= and add a helper method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20690 91177308-0d34-0410-b5e6-96231b3b80d8
quivalenceClasses.h
|
72af57f26c27176f3ed4858e59eb4017f819afe1 |
19-Mar-2005 |
Chris Lattner <sabre@nondot.org> |
Rewrite this class, making the following improvements: 1. It now actually uses tarjan's algorithm, so it is a efficient inverse ackerman's function for union operations, not linear time. 2. It now stores one copy of the data in the set instead of two. 3. It now works for elements other than pointers. 4. It now has a more STL-like interface that exposes iterators instead of internal implementation details. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20677 91177308-0d34-0410-b5e6-96231b3b80d8
quivalenceClasses.h
|
986d99a6f832f9e4dd3ef67766c23aaaab1da2ba |
16-Mar-2005 |
Chris Lattner <sabre@nondot.org> |
remove compat_iterator, which is dead in the tree. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20644 91177308-0d34-0410-b5e6-96231b3b80d8
list
|
4d1b4458fe58298a397631f37532d2fd4f451bd4 |
16-Mar-2005 |
Jeff Cohen <jeffc@jolt-lang.org> |
Don't provide default hash struct instantiation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20639 91177308-0d34-0410-b5e6-96231b3b80d8
ash_map.in
|
1467e7ae92ebb0c2430d593138967715258dc351 |
16-Mar-2005 |
Jeff Cohen <jeffc@jolt-lang.org> |
Add adapter class to let VC++ hash_map use GCC's hash struct. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20637 91177308-0d34-0410-b5e6-96231b3b80d8
ash_map.in
|
6c2997f5b90449b00387d0635ce9acf0874b8383 |
23-Feb-2005 |
Chris Lattner <sabre@nondot.org> |
remove some more dead templates and a dead macro. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20279 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
127a8a7764d417405aa0d16c244c48a517eb70ae |
23-Feb-2005 |
Chris Lattner <sabre@nondot.org> |
Remove a bunch of dead templates. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20275 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
bca81448ac8e19c588c9a4ad16fc70732b76327c |
30-Jan-2005 |
Chris Lattner <sabre@nondot.org> |
Improve conformance with the Misha spelling benchmark suite git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19930 91177308-0d34-0410-b5e6-96231b3b80d8
list
|
ed4d467c690b549f2cc9721abcc0dbb07291678f |
29-Jan-2005 |
Chris Lattner <sabre@nondot.org> |
Rename createNode -> createSentinal. Add a new method, destroySentinal, that is used to delete it (instead of requiring use of delete. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19921 91177308-0d34-0410-b5e6-96231b3b80d8
list
|
be4922a28a270237d684112b3ab1a16705eb90f2 |
28-Jan-2005 |
Reid Spencer <rspencer@reidspencer.com> |
Convert some old C-style casts to C++ style. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19868 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
8085cff7ebbee3efd932b8f27f67187a4ba707e1 |
16-Jan-2005 |
Reid Spencer <rspencer@reidspencer.com> |
Provide support for HP/UX aCC compiler's variant of hash_map and hash_set (RogueWave). These are implemented in rw/stdex/hash_map.h and rw/stdex/hash_set.h on HP/UX. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19600 91177308-0d34-0410-b5e6-96231b3b80d8
ash_map.in
ash_set.in
|
67cb2f6eb5e515c25bf559bb3d5ef6fea05fd8b6 |
04-Jan-2005 |
Chris Lattner <sabre@nondot.org> |
Do not let 'ftostr' return a string that starts with spaces. This allows the AsmWriter to emit FP constants like 1.0 in normal exponential notation instead of hex notation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19279 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
d828e340a80f268a6e51d451a75fb6c2282e17b1 |
08-Dec-2004 |
Chris Lattner <sabre@nondot.org> |
Define the pointer hash struct before the string one, to improve compatibility with ICC. Patch contributed by Bjørn Wennberg. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18663 91177308-0d34-0410-b5e6-96231b3b80d8
ashExtras.h
|
7fc3824835da71426dbba32c315f32bac97ec1dc |
21-Nov-2004 |
Chris Lattner <sabre@nondot.org> |
ignore generated files git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18073 91177308-0d34-0410-b5e6-96231b3b80d8
cvsignore
|
fbb719c7f026525d54a8332ef66c7514a0cf2383 |
13-Oct-2004 |
Chris Lattner <sabre@nondot.org> |
Use explicit std:: qualification to avoid relying on Koenig lookup, which VC++ does not do properly. Thanks to Morten Ofstad for the patch! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16955 91177308-0d34-0410-b5e6-96231b3b80d8
etVector.h
|
c87b1db927226400e6ee4e1eeb050a6b24c34a96 |
13-Oct-2004 |
Chris Lattner <sabre@nondot.org> |
Get rid of template templates that were preventing VC from compiling the set_intersect template. Thanks to Morten Ofstad and Jeff Cohen for the patch! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16954 91177308-0d34-0410-b5e6-96231b3b80d8
etOperations.h
|
c441f1e1c74853721b2f513c3597c391bd11ccc2 |
04-Oct-2004 |
Chris Lattner <sabre@nondot.org> |
Fix #include flavor git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16658 91177308-0d34-0410-b5e6-96231b3b80d8
ash_map.in
ash_set.in
list
|
30eed211c99246392edf49c1bc6e9fb2a8f7a0f6 |
30-Sep-2004 |
Alkis Evlogimenos <alkis@evlogimenos.com> |
Remove whitespace from the end of the line. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16624 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
ndexedMap.h
|
c72c617a4ea3784c9a9f634478dc405ef6b2866b |
28-Sep-2004 |
Alkis Evlogimenos <alkis@evlogimenos.com> |
Add includes and use std:: for standard library calls to make code compile on windows. This patch was contributed by Paolo Invernizzi. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16539 91177308-0d34-0410-b5e6-96231b3b80d8
ostOrderIterator.h
|
4046846d2cb36a6281b853c73776584063cca19d |
24-Sep-2004 |
John Criswell <criswell@uiuc.edu> |
Updated the last two header files so that they are configured with AC_CONFIG_HEADERS. This should prevent LLVM from needlessly re-compiling on a re-configure. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16510 91177308-0d34-0410-b5e6-96231b3b80d8
terator.in
|
9f011866e90928b9b798692a9cf0180e8f327540 |
24-Sep-2004 |
John Criswell <criswell@uiuc.edu> |
Modified hash_map and hash_set configuration so that they are not regenerated on every run of configure. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16509 91177308-0d34-0410-b5e6-96231b3b80d8
ash_map.in
ash_set.in
|
70e2d38361b675ed8c3d874d091636c470795550 |
11-Sep-2004 |
Reid Spencer <rspencer@reidspencer.com> |
Fix the replace method to assert if an item was erased from the set but not found in the vector. Previously, it just ignored this condition. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16296 91177308-0d34-0410-b5e6-96231b3b80d8
etVector.h
|
0bdc620c16963908d74db498f79676e558f09e82 |
11-Sep-2004 |
Reid Spencer <rspencer@reidspencer.com> |
Implement the remove method for deleting entries from the SetVector. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16283 91177308-0d34-0410-b5e6-96231b3b80d8
etVector.h
|
8018a665b2fa8250f12e079b19459c662cdd27f0 |
09-Sep-2004 |
Chris Lattner <sabre@nondot.org> |
Add missing #include git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16256 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
ndexedMap.h
|
df8d5e908fe83dafe98a05086956e7b0943af1e0 |
02-Sep-2004 |
Alkis Evlogimenos <alkis@evlogimenos.com> |
Pull in definition of std::unary_function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16140 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
ndexedMap.h
|
551ccae044b0ff658fe629dd67edd5ffe75d10e8 |
02-Sep-2004 |
Reid Spencer <rspencer@reidspencer.com> |
Changes For Bug 352 Move include/Config and include/Support into include/llvm/Config, include/llvm/ADT and include/llvm/Support. From here on out, all LLVM public header files must be under include/llvm/. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16137 91177308-0d34-0410-b5e6-96231b3b80d8
itSetVector.h
enseMap.h
epthFirstIterator.h
quivalenceClasses.h
raphTraits.h
ashExtras.h
ndexedMap.h
ostOrderIterator.h
CCIterator.h
TLExtras.h
etOperations.h
etVector.h
tatistic.h
tringExtras.h
ree.h
ectorExtras.h
ash_map.in
ash_set.in
list
terator.in
|
fc093bd0810b6e726c02c2430f77618fd7255541 |
27-Aug-2004 |
Alkis Evlogimenos <alkis@evlogimenos.com> |
Add size member function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16067 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
ndexedMap.h
|
5501e568b396f3e58f3d642e77139c790eda9df9 |
26-Aug-2004 |
Alkis Evlogimenos <alkis@evlogimenos.com> |
Add default index functor (an identity functor). You could use a vector directly to get the same functionality but using a DenseMap makes the code more readable IMO. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16052 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
ndexedMap.h
|
8831db745bb0c3ed7939df475f924f53f43254a2 |
19-Aug-2004 |
Misha Brukman <brukman+llvm@gmail.com> |
Instead of int64_t, overload itostr with `long long' parameter. This appeases both SparcV9 and 64-bit PowerPC. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15910 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
b5e1decefbc294008449f3b414290ab63e713ed5 |
17-Aug-2004 |
Misha Brukman <brukman+llvm@gmail.com> |
Add itostr(long) for our furry 64-bit friends. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15885 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
3638e9918c632ab517066d79790601d25de568c9 |
29-Jul-2004 |
Brian Gaeke <gaeke@uiuc.edu> |
Fix typo in comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15318 91177308-0d34-0410-b5e6-96231b3b80d8
etVector.h
|
f90fcaf5729f2987c9f4e91ca4e6ee4397ba0a8d |
25-Jul-2004 |
Chris Lattner <sabre@nondot.org> |
Add back() and pop_back() methods to SetVector Move clear to the end of the class Add assertions git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15203 91177308-0d34-0410-b5e6-96231b3b80d8
etVector.h
|
7b32639362c4cbb438d71492897d9f84c89d9e57 |
21-Jul-2004 |
Alkis Evlogimenos <alkis@evlogimenos.com> |
Add greater_ptr functor. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15070 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
c5f9d8c63097d21147ff13b1395a0590b6b38e25 |
20-Jul-2004 |
Misha Brukman <brukman+llvm@gmail.com> |
Use C++-style <cstdio> instead of C-style <stdio.h> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15042 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
913e1b4bddb9674a3c03e6726579217ede134775 |
20-Jul-2004 |
Misha Brukman <brukman+llvm@gmail.com> |
Dump the old-fashioned C-style <ctype.h> in favor of new `C++'-style <cctype> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15025 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
497b52f38125adb82de547abfc4c89c2b1e1f628 |
20-Jul-2004 |
Misha Brukman <brukman+llvm@gmail.com> |
isupper() and tolower() are declared in <ctype.h> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15016 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
5e8775425063e7067dde18e893977bb9cef0558e |
15-Jul-2004 |
Chris Lattner <sabre@nondot.org> |
Give SetVector range support git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14855 91177308-0d34-0410-b5e6-96231b3b80d8
etVector.h
|
85e4eb6dc039928630c89627ee728764282a129d |
12-Jul-2004 |
Chris Lattner <sabre@nondot.org> |
Fix warning compiling with VC++ git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14772 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
800473c8df8f0c9b566c9216bf124495451cb573 |
08-Jul-2004 |
Reid Spencer <rspencer@reidspencer.com> |
Get rid of some cruft in the insert method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14704 91177308-0d34-0410-b5e6-96231b3b80d8
etVector.h
|
4bb2867bc1faa2eedafc39b37bbf481ff4dcb725 |
08-Jul-2004 |
Reid Spencer <rspencer@reidspencer.com> |
First version of a vector with uniqueness constraints (or a set with deterministic, insertion-order iteration). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14702 91177308-0d34-0410-b5e6-96231b3b80d8
etVector.h
|
3b94a5142c1029a1a50e659c45fdb0627ede7a82 |
04-Jul-2004 |
Alkis Evlogimenos <alkis@evlogimenos.com> |
Add more operators. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14589 91177308-0d34-0410-b5e6-96231b3b80d8
tatistic.h
|
990a6a39c0f2899ace6e913d536db5abc030c5cc |
25-Jun-2004 |
Chris Lattner <sabre@nondot.org> |
Unbreak the build. tsk tsk git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14390 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
64aed54684b205c47fda075918150d14ba4193bc |
25-Jun-2004 |
Misha Brukman <brukman+llvm@gmail.com> |
Add a LowercaseString() utility function, courtesy of brg. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14383 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
63d64a80bcdab8481f5ea8127a637cb7fd1f1b0d |
04-Jun-2004 |
Chris Lattner <sabre@nondot.org> |
GCC doesn't like prefix form of cast with two identifiers I guess. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14021 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
c285da73a4df1ad74dfc842ab871f7e14398d5ac |
04-Jun-2004 |
Chris Lattner <sabre@nondot.org> |
Silence a warning git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14019 91177308-0d34-0410-b5e6-96231b3b80d8
list
|
2908ca78b0ec8f38cde679a7af12068a32fd84d1 |
04-Jun-2004 |
Chris Lattner <sabre@nondot.org> |
Add explicit casts to silence warnings. There is no need to use snprintf here. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14013 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
6bf7ca5f6f1c26bf8fb579ba456dae7c6e6f7e3a |
03-Jun-2004 |
Chris Lattner <sabre@nondot.org> |
Only use the non-standards-compliant std::distance on the compiler that is buggy, not for all compilers that are not GCC 3 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13990 91177308-0d34-0410-b5e6-96231b3b80d8
list
|
1da7e8e0b3cfc1d3c399da4cdd7dc5c087c9f0d3 |
30-May-2004 |
Alkis Evlogimenos <alkis@evlogimenos.com> |
Add comparator useful for natural comparisons on collections with pointers to objects. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13909 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
6ffd14dd54b0b1a63f7cc9726a18bdaa6d8008d0 |
23-May-2004 |
Vikram S. Adve <vadve@cs.uiuc.edu> |
Remember the set of leaders. Also compute on demand and cache the equiv class for each leader. Finally, rename Elem2ECLeaderMap to Elem2LeaderMap (most of the changed lines are only due to the latter). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13651 91177308-0d34-0410-b5e6-96231b3b80d8
quivalenceClasses.h
|
afa9235f07ea5e6067e47f63c6a64fdfbb9e5823 |
21-Apr-2004 |
Alkis Evlogimenos <alkis@evlogimenos.com> |
Declare iterator as public since it is defined as such (gcc-3.4 fix) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13090 91177308-0d34-0410-b5e6-96231b3b80d8
itSetVector.h
|
f9a5f780bf2ee162468749329c21e51685db649e |
16-Apr-2004 |
Brian Gaeke <gaeke@uiuc.edu> |
Switch to including <iostream> for compatibility with gcc-3.0.x (Debian). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12990 91177308-0d34-0410-b5e6-96231b3b80d8
tatistic.h
|
7c78afefe96669cc3eb886308291213415d9d7b0 |
26-Feb-2004 |
Chris Lattner <sabre@nondot.org> |
Fix a bug in the densemap that was killing the local allocator, and probably other clients. The problem is that the nullVal member was left to the default constructor to initialize, which for int's does nothing (ie, leaves it unspecified). To get a zero value, we must use T(). It's C++ wonderful? :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11867 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
ndexedMap.h
|
00fa65be8344944b080cd790678e027e10942ffd |
26-Feb-2004 |
Chris Lattner <sabre@nondot.org> |
Fix typeo. grow() cannot shrink storage. clear() should really nuke storage git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11865 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
ndexedMap.h
|
4d0d864be3d9a698c4edfe36961a22126f041298 |
25-Feb-2004 |
Alkis Evlogimenos <alkis@evlogimenos.com> |
Add DenseMap template and actually use it for for mapping virtual regs to objects. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11840 91177308-0d34-0410-b5e6-96231b3b80d8
enseMap.h
ndexedMap.h
|
c50879dfe600c199fef2038cd13fef86db73a771 |
24-Feb-2004 |
Chris Lattner <sabre@nondot.org> |
Noone cares about similarity to boost git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11783 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
cbc20b451d3a3980351c388652ea39314dd09a23 |
23-Feb-2004 |
Brian Gaeke <gaeke@uiuc.edu> |
Renamed to hash_set.in; move to using autoconf substitution tags. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11765 91177308-0d34-0410-b5e6-96231b3b80d8
ash_set.in
|
6cd52446fae6cde1bac52c9753011e00fd2d5292 |
23-Feb-2004 |
Brian Gaeke <gaeke@uiuc.edu> |
Renamed to hash_map.in; move to using autoconf substitution tags. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11764 91177308-0d34-0410-b5e6-96231b3b80d8
ash_map.in
|
c134395628c82d176d249958a6660c06143558f7 |
23-Feb-2004 |
Brian Gaeke <gaeke@uiuc.edu> |
Renamed from include/Support/iterator. Doxygenify comments; add autoconf substitution tags. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11754 91177308-0d34-0410-b5e6-96231b3b80d8
terator.in
|
bc79471be19e412eed4d270908db7ac945be10ca |
14-Feb-2004 |
Alkis Evlogimenos <alkis@evlogimenos.com> |
Add next() and prior() iterator utility functions. Unlike std::advance they do not modify the passed iterator but return a copy. next(myIt) returns copy of myIt incremented once next(myIt, n) returns copy of myIt incremented n times prior(myIt) returns copy of myIt decremented once prior(myIt, n) returns copy of myIt decremented n times While at it remove obsolete implementation of mapped_iterator. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11429 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
a0031cc08c73717341e53c9d5c6c9daa4fcdf5f7 |
13-Feb-2004 |
Brian Gaeke <gaeke@uiuc.edu> |
Update the example here in the header file. I don't know about you guys, but I rarely read the .html manuals :-) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11366 91177308-0d34-0410-b5e6-96231b3b80d8
tatistic.h
|
71be6db3efd233ae7eafe3e23ad9d9ac70bf0706 |
09-Feb-2004 |
Alkis Evlogimenos <alkis@evlogimenos.com> |
Add global methods that prevent us from using ilist::iterators as random access iterators. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11248 91177308-0d34-0410-b5e6-96231b3b80d8
list
|
2cca3008e86aa5448a629c744064daecb531bf94 |
08-Feb-2004 |
Chris Lattner <sabre@nondot.org> |
One of the 'annoying' things about ilists is that the iterators don't behave quite the same as for non-intrusive lists of pointers to nodes. To support transitioning code bases, add a new 'compatibility' iterator. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11172 91177308-0d34-0410-b5e6-96231b3b80d8
list
|
d924edb845101f89744344aee66bbf9f2e89c3c6 |
15-Jan-2004 |
Chris Lattner <sabre@nondot.org> |
add support for -- for symmetry git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10865 91177308-0d34-0410-b5e6-96231b3b80d8
tatistic.h
|
9fc8a3ec2e7dfe0cdbeca72b8b2742f1e4ac1b42 |
29-Dec-2003 |
Chris Lattner <sabre@nondot.org> |
add new function git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10638 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
d2aa7b8ee7fb751c42a6f89096043e1ac24c49f2 |
29-Nov-2003 |
Chris Lattner <sabre@nondot.org> |
Hrm, how could this compile? git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10263 91177308-0d34-0410-b5e6-96231b3b80d8
ree.h
|
9bb2188b0e196d2724e128152ef4d4b581adf3bc |
23-Nov-2003 |
Brian Gaeke <gaeke@uiuc.edu> |
A better way to get std::pair into the compiler's little, walnut-sized brain. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10174 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
6de98f242a6e7103de3f880c31f7e6b4e3650da8 |
23-Nov-2003 |
Brian Gaeke <gaeke@uiuc.edu> |
This is a hack to make this file compile under g++-3.0.x; otherwise it can't decide what std::pair is. It seemed relatively harmless. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10173 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
825b02d5ee74031ca8f872a761a79b137225f818 |
17-Nov-2003 |
Chris Lattner <sabre@nondot.org> |
Fix copy-and-pasteo git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10049 91177308-0d34-0410-b5e6-96231b3b80d8
list
|
8b70b78ba489b090d9866e6a4084ab1e8613b527 |
16-Nov-2003 |
Chris Lattner <sabre@nondot.org> |
Fixes for PR114: Thanks to Reid Spencer! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10029 91177308-0d34-0410-b5e6-96231b3b80d8
ashExtras.h
tringExtras.h
|
a3f5f80f2bfdd966bbacf0d036f2350bf9051b12 |
13-Nov-2003 |
Chris Lattner <sabre@nondot.org> |
Remove needless dependence on boost git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9961 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
de0579d94640fa4f32aaa618e954f9504db6da4d |
13-Nov-2003 |
Chris Lattner <sabre@nondot.org> |
Add namespace qualifier git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9959 91177308-0d34-0410-b5e6-96231b3b80d8
CCIterator.h
|
2d3e1ee93cd1d3423897ef9cd4faf26864730d0b |
13-Nov-2003 |
Chris Lattner <sabre@nondot.org> |
Minor cleanups git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9958 91177308-0d34-0410-b5e6-96231b3b80d8
CCIterator.h
|
d0fde30ce850b78371fd1386338350591f9ff494 |
11-Nov-2003 |
Brian Gaeke <gaeke@uiuc.edu> |
Put all LLVM code into the llvm namespace, as per bug 109. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9903 91177308-0d34-0410-b5e6-96231b3b80d8
itSetVector.h
epthFirstIterator.h
quivalenceClasses.h
raphTraits.h
ostOrderIterator.h
CCIterator.h
TLExtras.h
etOperations.h
tatistic.h
tringExtras.h
ree.h
ectorExtras.h
list
|
e292da29bfeb2faad71a568e9cbb706affd5f330 |
05-Nov-2003 |
Alkis Evlogimenos <alkis@evlogimenos.com> |
Add std::pair tier. This is a much simplified version of boost::tie that works only for std::pair. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9723 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
0b64ca3cbde361729f357dfc230a1d9dce1717dc |
30-Oct-2003 |
Brian Gaeke <gaeke@uiuc.edu> |
Apparently my Mac OS X fixes were not entirely compatible with SPARC...hmm. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9612 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
78e1dcc32124e123f41ca60c88d796244cf2c174 |
29-Oct-2003 |
Brian Gaeke <gaeke@uiuc.edu> |
Add support for utostr(unsigned long) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9588 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
60f1445cf26f769ff88383e3bfd771e4ac3cb5c0 |
20-Oct-2003 |
Chris Lattner <sabre@nondot.org> |
This #include is no longer necessary git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9306 91177308-0d34-0410-b5e6-96231b3b80d8
list
|
b2109ce97881269a610fa4afbcbca350e975174d |
20-Oct-2003 |
John Criswell <criswell@uiuc.edu> |
Added LLVM notice. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9300 91177308-0d34-0410-b5e6-96231b3b80d8
itSetVector.h
epthFirstIterator.h
quivalenceClasses.h
raphTraits.h
ashExtras.h
ostOrderIterator.h
CCIterator.h
TLExtras.h
etOperations.h
tatistic.h
tringExtras.h
ree.h
ectorExtras.h
list
|
803f03e217ec25cf71b2b6dea65da2e377527b6b |
15-Oct-2003 |
Chris Lattner <sabre@nondot.org> |
This file uses assert and doesn't include anything which already #includes <cassert> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9142 91177308-0d34-0410-b5e6-96231b3b80d8
list
|
1e79609e304a24e0cad68534ddf3371479d33b86 |
13-Oct-2003 |
Chris Lattner <sabre@nondot.org> |
Add missing default argument git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9092 91177308-0d34-0410-b5e6-96231b3b80d8
epthFirstIterator.h
|
9061e992d5ee0c59c89ae7812c551bafd680a59c |
13-Oct-2003 |
Chris Lattner <sabre@nondot.org> |
add support for "external" depth first iterators, which store the 'visited' set outside of the iterator itself. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9090 91177308-0d34-0410-b5e6-96231b3b80d8
epthFirstIterator.h
|
4846f4b87a31797ba0bc6c96862a1128acf16149 |
13-Oct-2003 |
Chris Lattner <sabre@nondot.org> |
Extricate the "reverse" support from the depth-first iterator. This is really a crappy form of post-order traversal which really does not belong here. While we are at it, improve documentation and use a vector instead of a stack. This improves the post dominator analysis pass by ~5%, and probably also helps other passes as well. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9084 91177308-0d34-0410-b5e6-96231b3b80d8
epthFirstIterator.h
|
27db7e0472f22c9605deac34f919d284041e93a4 |
05-Oct-2003 |
Chris Lattner <sabre@nondot.org> |
Output a very high-precision number git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8856 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
48486893f46d2e12e926682a3ecb908716bc66c4 |
30-Sep-2003 |
Chris Lattner <sabre@nondot.org> |
Standardize header file comments git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8782 91177308-0d34-0410-b5e6-96231b3b80d8
itSetVector.h
epthFirstIterator.h
quivalenceClasses.h
raphTraits.h
ashExtras.h
ostOrderIterator.h
TLExtras.h
etOperations.h
tringExtras.h
ree.h
list
|
55b2eb3ef828819a623444ce966e70ad86ad6da4 |
31-Aug-2003 |
Chris Lattner <sabre@nondot.org> |
Rename TarjanSCCIterator -> scc_iterator * Increases consistency with other iterators (e.g. df_iterator, po_iterator...) * It's shorter * We don't name classes by the implementation, we name it for the interface! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8273 91177308-0d34-0410-b5e6-96231b3b80d8
CCIterator.h
|
ff8fc078906da46b00aa102d724590b1b96e5526 |
31-Aug-2003 |
Chris Lattner <sabre@nondot.org> |
ELIMINATE the SCC class completely. One less thing deriving from std::vector git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8272 91177308-0d34-0410-b5e6-96231b3b80d8
CCIterator.h
|
94d1092c6a385ff077fb28773d9ba3ad15cb9a8d |
31-Aug-2003 |
Chris Lattner <sabre@nondot.org> |
Move the HasLoop method from the SCC class to the iterator class git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8268 91177308-0d34-0410-b5e6-96231b3b80d8
CCIterator.h
|
b55cae23cb9bd6661093e8c2822be4fd721587e1 |
31-Aug-2003 |
Chris Lattner <sabre@nondot.org> |
* Cleanups * operator* now returns a reference to the current SCC, instead of a possibly null pointer git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8261 91177308-0d34-0410-b5e6-96231b3b80d8
CCIterator.h
|
22ab2a16e5477d96d579c04a9798a6cddd277434 |
31-Aug-2003 |
Chris Lattner <sabre@nondot.org> |
Remove usage of unsigned long: unsigned should be enough! Remove explicit use of a stack<>, use a vector instead git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8246 91177308-0d34-0410-b5e6-96231b3b80d8
CCIterator.h
|
ca82e6c3d17461e45b90ae5a7ceee852edd140c8 |
31-Aug-2003 |
Chris Lattner <sabre@nondot.org> |
This file uses cerr without including <iostream>. Since it's just for debugging, comment it out git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8245 91177308-0d34-0410-b5e6-96231b3b80d8
CCIterator.h
|
40c6fb6cac80367c2bec32295d4448e540f2d253 |
29-Aug-2003 |
Chris Lattner <sabre@nondot.org> |
Fix compilation problems with G++ 3.4 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8212 91177308-0d34-0410-b5e6-96231b3b80d8
list
|
5560c9d49ccae132cabf1155f18aa0480dce3eda |
18-Aug-2003 |
Misha Brukman <brukman+llvm@gmail.com> |
Spell `necessary' correctly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7944 91177308-0d34-0410-b5e6-96231b3b80d8
ostOrderIterator.h
|
53523e57bf363792e4b1d3b5002a7fe349061364 |
15-Aug-2003 |
Misha Brukman <brukman+llvm@gmail.com> |
Reordered includes to be consistent with the LLVM style. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7887 91177308-0d34-0410-b5e6-96231b3b80d8
ashExtras.h
|
2dd93edfc221fe6d1e102cca694da01ca36b5d11 |
02-Aug-2003 |
Chris Lattner <sabre@nondot.org> |
Move debugging support out of Statistic.h into Debug.h, implement the new DEBUG_TYPE facilities git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7490 91177308-0d34-0410-b5e6-96231b3b80d8
tatistic.h
|
aeac00ed535feacf863f31184b47a9d95820c5fc |
02-Aug-2003 |
Chris Lattner <sabre@nondot.org> |
Including statistics into an anonymous namespace that gets #included into every file is a bad idea. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7489 91177308-0d34-0410-b5e6-96231b3b80d8
CCIterator.h
|
02a31a5af68aaca1b54c7121f04cb56828ccefc2 |
25-Jul-2003 |
Chris Lattner <sabre@nondot.org> |
Fix another accessibility problem illuminated by GCC 3.3 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7314 91177308-0d34-0410-b5e6-96231b3b80d8
epthFirstIterator.h
|
d091d85c15d56adca38f3522ff4ac0997141e326 |
25-Jul-2003 |
Chris Lattner <sabre@nondot.org> |
Fix visibility problem exposed by GCC 3.3 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7313 91177308-0d34-0410-b5e6-96231b3b80d8
ostOrderIterator.h
|
32862da7c7107d792d25a885f9bd2d0402ae7126 |
25-Jul-2003 |
Chris Lattner <sabre@nondot.org> |
Fix accessibility problems GCC 3.3 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7306 91177308-0d34-0410-b5e6-96231b3b80d8
list
|
7a73b80b9052136c8cd2234eb3433a07df7cf38e |
30-Jun-2003 |
John Criswell <criswell@uiuc.edu> |
Merged in autoconf branch. This provides configuration via the autoconf system. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7014 91177308-0d34-0410-b5e6-96231b3b80d8
itSetVector.h
CCIterator.h
ree.h
list
|
680a7c2d1a60880c9ba4b123fb721a6c6fe8b016 |
22-Jun-2003 |
Chris Lattner <sabre@nondot.org> |
Get rid of WORDSIZE macro which can pollute untold numbers of translation units git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6843 91177308-0d34-0410-b5e6-96231b3b80d8
itSetVector.h
|
3889a2cb05c36f30050941679d5fd55d45e6a3ed |
22-Jun-2003 |
Chris Lattner <sabre@nondot.org> |
Remove a ton of extraneous #includes git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6842 91177308-0d34-0410-b5e6-96231b3b80d8
CCIterator.h
ree.h
|
a9f6e4ae0eaea69949755807b7207177f256eace |
17-Jun-2003 |
Brian Gaeke <gaeke@uiuc.edu> |
Regularize the names of #include-guards. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6732 91177308-0d34-0410-b5e6-96231b3b80d8
itSetVector.h
epthFirstIterator.h
quivalenceClasses.h
raphTraits.h
ashExtras.h
ostOrderIterator.h
CCIterator.h
TLExtras.h
etOperations.h
tringExtras.h
ree.h
list
|
be583b914d8156b99d3da264d5adca37fee8dbc9 |
11-Jun-2003 |
John Criswell <criswell@uiuc.edu> |
Included assert.h so that the code compiles under newer versions of GCC. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6682 91177308-0d34-0410-b5e6-96231b3b80d8
itSetVector.h
CCIterator.h
ree.h
|
a3e5764984731543b207a2eb898c5136e103b118 |
04-Jun-2003 |
Sumant Kowshik <kowshik@uiuc.edu> |
Made changes suggested by Chris; Renamed 'union' function to unionSetsWith git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6605 91177308-0d34-0410-b5e6-96231b3b80d8
quivalenceClasses.h
|
87a991eea38197c9e5abc763d83321799649b25b |
30-May-2003 |
Sumant Kowshik <kowshik@uiuc.edu> |
Implementation of Equivalence Classes git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6422 91177308-0d34-0410-b5e6-96231b3b80d8
quivalenceClasses.h
|
011ce8d2e401855877803fb6d972a6f6c22242a5 |
23-Apr-2003 |
Chris Lattner <sabre@nondot.org> |
Allow autoconversion from ilist_iterator<T> to T* in a dyn_cast and friends git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5862 91177308-0d34-0410-b5e6-96231b3b80d8
list
|
6f2ec7f59daa76df2bd98c4dda3d46cd20c66d37 |
21-Mar-2003 |
Chris Lattner <sabre@nondot.org> |
Update comment git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5752 91177308-0d34-0410-b5e6-96231b3b80d8
ostOrderIterator.h
|
8fb1fe16b7b8bf367d8dc76dc3fd7c3373d31329 |
17-Mar-2003 |
Chris Lattner <sabre@nondot.org> |
Fix problems with BitSetVector that makes it not compile under GCC 3.0 and 2.95 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5745 91177308-0d34-0410-b5e6-96231b3b80d8
itSetVector.h
|
fd373cb944edef806f850cc0a4f91d55ae7c8dba |
28-Jan-2003 |
Chris Lattner <sabre@nondot.org> |
Initial checking: defult the make_vector function git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5424 91177308-0d34-0410-b5e6-96231b3b80d8
ectorExtras.h
|
1818275956b339de89ac57d90d37a88c3566048e |
06-Dec-2002 |
Vikram S. Adve <vadve@cs.uiuc.edu> |
Bug fix in operator==() and in method fini(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4945 91177308-0d34-0410-b5e6-96231b3b80d8
CCIterator.h
|
0e2cf7606d3276c07b26ff2329c18bc739fddbde |
27-Nov-2002 |
Vikram S. Adve <vadve@cs.uiuc.edu> |
Several fixes: (1) Applied patch from Casey to implement iterator::operator= correctly: it should use a pointer, not a reference. (2) Added operators == and !=, and method all(). (3) Important bug fix: excess bits need to be ignored in operations like ==, count(), and all(). We do this by ensuring excess bits in the last bitset are always 0. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4837 91177308-0d34-0410-b5e6-96231b3b80d8
itSetVector.h
|
d8a947e233a616b2f7d053e912bdb3f20e2c09a6 |
15-Nov-2002 |
Chris Lattner <sabre@nondot.org> |
Fix warning git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4708 91177308-0d34-0410-b5e6-96231b3b80d8
CCIterator.h
|
169f8b838b3f3be75d605251ba3bdcc0ad09d795 |
11-Nov-2002 |
Chris Lattner <sabre@nondot.org> |
Add tarj_end() method git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4684 91177308-0d34-0410-b5e6-96231b3b80d8
CCIterator.h
|
45a9116e0a91f8a137bf548fad431d56ac99713d |
06-Nov-2002 |
Chris Lattner <sabre@nondot.org> |
Make maxSize a private variable, add a size() accessor git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4573 91177308-0d34-0410-b5e6-96231b3b80d8
itSetVector.h
|
5f76054a79c5386fcdb6695fa49e9eaa4dfabc19 |
06-Nov-2002 |
Vikram S. Adve <vadve@cs.uiuc.edu> |
An implementation of the bit-vector representation of sets. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4568 91177308-0d34-0410-b5e6-96231b3b80d8
itSetVector.h
|
5fe9171b38404bdb2296b849182769083c9d07b3 |
04-Nov-2002 |
Vikram S. Adve <vadve@cs.uiuc.edu> |
Generic graph iterator to enumerate the SCCs of a graph in linear time using Tarjan's DFS algorithm. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4531 91177308-0d34-0410-b5e6-96231b3b80d8
CCIterator.h
|
4932b31dce8fc065a91af2852314ee8c4403ee23 |
31-Oct-2002 |
Chris Lattner <sabre@nondot.org> |
Statistic class should return const reference to *this, not a reference to the data type. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4458 91177308-0d34-0410-b5e6-96231b3b80d8
tatistic.h
|
4a63b72df95b5c0d4af064cef19377f811ba6060 |
28-Oct-2002 |
Chris Lattner <sabre@nondot.org> |
Don't #include <Support/*>, #include "Support/*" git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4325 91177308-0d34-0410-b5e6-96231b3b80d8
epthFirstIterator.h
ashExtras.h
ostOrderIterator.h
|
df6f5835e9390cace8df16796b583f5ce581212e |
27-Oct-2002 |
Chris Lattner <sabre@nondot.org> |
Add neccesary #include git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4294 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
d063725c3c6e36b711106f06e0cab11a1283f349 |
13-Oct-2002 |
Chris Lattner <sabre@nondot.org> |
disable the unused "pointer" member git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4144 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
b38e4fd8b0228feb1fb8376d2266b7f99a9b0913 |
13-Oct-2002 |
Chris Lattner <sabre@nondot.org> |
Add dummy entries to document what members can be added git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4141 91177308-0d34-0410-b5e6-96231b3b80d8
raphTraits.h
|
96ef1b90c8f3a6649993bb7ab10db3510f12e80a |
02-Oct-2002 |
Chris Lattner <sabre@nondot.org> |
- Rework Statistics: * Renamed StatisticReporter.h/cpp to Statistic.h/cpp * Broke constructor to take two const char * arguments instead of one, so that indendation can be taken care of automatically. * Sort the list by pass name when printing * Make sure to print all statistics as a group, instead of randomly when the statistics dtors are called. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3999 91177308-0d34-0410-b5e6-96231b3b80d8
tatistic.h
|
33adbcc87d92c6c3e620870c804f4a2533ecc850 |
16-Sep-2002 |
Vikram S. Adve <vadve@cs.uiuc.edu> |
Add ilist_iterator constructor from a node reference. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3756 91177308-0d34-0410-b5e6-96231b3b80d8
list
|
de32fedb8c6ec95258dd9e3c104f0e7e49f283cd |
25-Jul-2002 |
Chris Lattner <sabre@nondot.org> |
GCC 3.1 changes git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3076 91177308-0d34-0410-b5e6-96231b3b80d8
ostOrderIterator.h
|
8dc67168ccbd09821ff6d963b26461e9b47028e7 |
25-Jul-2002 |
Chris Lattner <sabre@nondot.org> |
GCC 3.1 fixes git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3066 91177308-0d34-0410-b5e6-96231b3b80d8
ashExtras.h
ostOrderIterator.h
|
7f4dd472e35569efefbeffef096c490075e3e824 |
25-Jul-2002 |
Chris Lattner <sabre@nondot.org> |
Changes to build with GCC 3.1 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3064 91177308-0d34-0410-b5e6-96231b3b80d8
epthFirstIterator.h
|
0d219edad2fd5e7b400ecd49ac833a7a3199af60 |
25-Jul-2002 |
Chris Lattner <sabre@nondot.org> |
Use the new include/Support/iterator file git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3062 91177308-0d34-0410-b5e6-96231b3b80d8
list
|
417d31c202bf42c1f9db1afa1d2e6730c6fbd566 |
24-Jul-2002 |
Chris Lattner <sabre@nondot.org> |
Move hash_* extension headers from ext/ to Support/ so that we can support GCC 2.95, GCC 3.0.4 and GCC 3.1 all concurrently, without having to delete headers after a chackou. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3055 91177308-0d34-0410-b5e6-96231b3b80d8
ashExtras.h
|
a1cb4737b04a92f57b1b9dcd8a24c68db5035401 |
24-Jul-2002 |
Chris Lattner <sabre@nondot.org> |
Changes to make it GCC 3.1 compatible git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3052 91177308-0d34-0410-b5e6-96231b3b80d8
list
|
4a9f9337511441af0624e754ad9b2b1262ee584d |
25-Jun-2002 |
Anand Shukla <ashukla@cs.uiuc.edu> |
changes to make it compatible with 64bit gcc git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2786 91177308-0d34-0410-b5e6-96231b3b80d8
tatistic.h
list
|
7e70829632f82de15db187845666aaca6e04b792 |
25-Jun-2002 |
Chris Lattner <sabre@nondot.org> |
MEGAPATCH checkin. For details, See: docs/2002-06-25-MegaPatchInfo.txt git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2779 91177308-0d34-0410-b5e6-96231b3b80d8
list
|
4435ac009708d78c8894cc9b30185aa6511cd8a6 |
22-May-2002 |
Chris Lattner <sabre@nondot.org> |
Implement a new command line option, -debug, which is meant to unify all of the random debugging macros scattered throughout llvm. The new DEBUG(x) macro should be used instead of special purpose debug macros. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2709 91177308-0d34-0410-b5e6-96231b3b80d8
tatistic.h
|
fa10fdf5eb9305d8af2f4c63264400bb17e6aa3f |
10-May-2002 |
Chris Lattner <sabre@nondot.org> |
Initial checkin of Statistic class git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2599 91177308-0d34-0410-b5e6-96231b3b80d8
tatistic.h
|
876509614b608f1af885d978c7d2a1e34f807e33 |
28-Apr-2002 |
Chris Lattner <sabre@nondot.org> |
Remove obsolete namespace from example git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2368 91177308-0d34-0410-b5e6-96231b3b80d8
TLExtras.h
|
35c15b4bfe2de7205bbb35790a3418d7d3288156 |
07-Apr-2002 |
Chris Lattner <sabre@nondot.org> |
Add new function utohexstr. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2140 91177308-0d34-0410-b5e6-96231b3b80d8
tringExtras.h
|
04bb837cc0edf2f1908a0ec9b04989598a13cc6a |
24-Feb-2002 |
Chris Lattner <sabre@nondot.org> |
Genericize the ReversePostOrderIterator. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1785 91177308-0d34-0410-b5e6-96231b3b80d8
ostOrderIterator.h
|
edcea4ba4ae049d5bb5cdb2931a04200ac1f0e38 |
05-Feb-2002 |
Chris Lattner <sabre@nondot.org> |
New Support file for operations on set like objects git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1714 91177308-0d34-0410-b5e6-96231b3b80d8
etOperations.h
|
7612c90351f49fa8cc7f23eb2bd2d6206229feac |
04-Feb-2002 |
Chris Lattner <sabre@nondot.org> |
PostOrderIterator really does depend on Method and BasicBlock. Obviously this is a huge fixme. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1682 91177308-0d34-0410-b5e6-96231b3b80d8
ostOrderIterator.h
|
697954c15da58bd8b186dbafdedd8b06db770201 |
20-Jan-2002 |
Chris Lattner <sabre@nondot.org> |
Changes to build successfully with GCC 3.02 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1503 91177308-0d34-0410-b5e6-96231b3b80d8
epthFirstIterator.h
ashExtras.h
ostOrderIterator.h
TLExtras.h
tringExtras.h
ree.h
|
cee8f9ae67104576b2028125b56e9ba4856a1d66 |
27-Nov-2001 |
Chris Lattner <sabre@nondot.org> |
Create a new #include "Support/..." directory structure to move things from "llvm/Support/..." that are not llvm dependant. Move files and fix #includes git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1400 91177308-0d34-0410-b5e6-96231b3b80d8
epthFirstIterator.h
raphTraits.h
ashExtras.h
ostOrderIterator.h
TLExtras.h
tringExtras.h
ree.h
|