cddc3e03e4ec99c0268c03a126195173e519ed58 |
|
04-Mar-2016 |
Pirama Arumuga Nainar <pirama@google.com> |
Update aosp/master LLVM for rebase to r256229 http://b/26987366 (cherry picked from commit f3ef5332fa3f4d5ec72c178a2b19dac363a19383) Change-Id: Ic75dcb63191d65df1b69724576392c0aaeb47728
/external/llvm/lib/IR/Attributes.cpp
|
6948897e478cbd66626159776a8017b3c18579b9 |
|
01-Jul-2015 |
Pirama Arumuga Nainar <pirama@google.com> |
Update aosp/master LLVM for rebase to r239765 Bug: 20140355: This rebase pulls the upstream fix for the spurious warnings mentioned in the bug. Change-Id: I7fd24253c50f4d48d900875dcf43ce3f1721a3da
/external/llvm/lib/IR/Attributes.cpp
|
0c7f116bb6950ef819323d855415b2f2b0aad987 |
|
06-May-2015 |
Pirama Arumuga Nainar <pirama@google.com> |
Update aosp/master LLVM for rebase to r235153 Change-Id: I9bf53792f9fc30570e81a8d80d296c681d005ea7
/external/llvm/lib/IR/Attributes.cpp
|
ebe69fe11e48d322045d5949c83283927a0d790b |
|
23-Mar-2015 |
Stephen Hines <srhines@google.com> |
Update aosp/master LLVM for rebase to r230699. Change-Id: I2b5be30509658cb8266be782de0ab24f9099f9b9
/external/llvm/lib/IR/Attributes.cpp
|
37ed9c199ca639565f6ce88105f9e39e898d82d0 |
|
01-Dec-2014 |
Stephen Hines <srhines@google.com> |
Update aosp/master LLVM for rebase to r222494. Change-Id: Ic787f5e0124df789bd26f3f24680f45e678eef2d
/external/llvm/lib/IR/Attributes.cpp
|
c6a4f5e819217e1e12c458aed8e7b122e23a3a58 |
|
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
/external/llvm/lib/IR/Attributes.cpp
|
dce4a407a24b04eebc6a376f8e62b41aaa7b071f |
|
29-May-2014 |
Stephen Hines <srhines@google.com> |
Update LLVM for 3.5 rebase (r209712). Change-Id: I149556c940fb7dc92d075273c87ff584f400941f
/external/llvm/lib/IR/Attributes.cpp
|
36b56886974eae4f9c5ebc96befd3e7bfe5de338 |
|
24-Apr-2014 |
Stephen Hines <srhines@google.com> |
Update to LLVM 3.5a. Change-Id: Ifadecab779f128e62e430c2b4f6ddd84953ed617
/external/llvm/lib/IR/Attributes.cpp
|
354362524a72b3fa43a6c09380b7ae3b2380cbba |
|
19-Nov-2013 |
Juergen Ributzka <juergen@apple.com> |
[weak vtables] Remove a bunch of weak vtables This patch removes most of the trivial cases of weak vtables by pinning them to a single object file. The memory leaks in this version have been fixed. Thanks Alexey for pointing them out. Differential Revision: http://llvm-reviews.chandlerc.com/D2068 Reviewed by Andy git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@195064 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
b21ab43cfc3fa0dacf5c95f04e58b6d804b59a16 |
|
18-Nov-2013 |
Alexey Samsonov <samsonov@google.com> |
Revert r194865 and r194874. This change is incorrect. If you delete virtual destructor of both a base class and a subclass, then the following code: Base *foo = new Child(); delete foo; will not cause the destructor for members of Child class. As a result, I observe plently of memory leaks. Notable examples I investigated are: ObjectBuffer and ObjectBufferStream, AttributeImpl and StringSAttributeImpl. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194997 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
5a364c5561ec04e33a6f5d52c14f1bac6f247ea0 |
|
15-Nov-2013 |
Juergen Ributzka <juergen@apple.com> |
[weak vtables] Remove a bunch of weak vtables This patch removes most of the trivial cases of weak vtables by pinning them to a single object file. Differential Revision: http://llvm-reviews.chandlerc.com/D2068 Reviewed by Andy git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194865 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
5768bb8d77892926dff0d078b1fb08c14ea791f3 |
|
23-Aug-2013 |
Andrea Di Biagio <Andrea_DiBiagio@sn.scee.net> |
Add function attribute 'optnone'. This function attribute indicates that the function is not optimized by any optimization or code generator passes with the exception of interprocedural optimization passes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@189101 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
40bacacad3dac9eb5202193f685719d0f37d7f4a |
|
03-Aug-2013 |
Peter Collingbourne <peter@pcc.me.uk> |
Add a AttributeSetImpl::dump function. This is for the benefit of those of us with inferior debuggers which do not permit member function calls on value types. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187685 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
7bba9c5c0a5235f585ee4bd3efec29e0982de3f8 |
|
03-Aug-2013 |
Peter Collingbourne <peter@pcc.me.uk> |
Make one of the AttributeSet ctors maintain the invariant that the attribute list is ordered by index. Differential Revision: http://llvm-reviews.chandlerc.com/D1265 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187682 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
9e2ef7780b91d8e01a9ab172f80272fc94f6956b |
|
25-Jul-2013 |
Bill Wendling <isanbard@gmail.com> |
Add a way to add a kind-value string pair to an attribute. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187138 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
f245ae5a4a78d5a02b3b9e2dae819077a56d81e7 |
|
25-Jul-2013 |
Bill Wendling <isanbard@gmail.com> |
Replace the "NoFramePointerElimNonLeaf" target option with a function attribute. There's no need to specify a flag to omit frame pointer elimination on non-leaf nodes...(Honestly, I can't parse that option out.) Use the function attribute stuff instead. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187093 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
e22cde01a63c907cb23f425ba4f4f16ede754dbe |
|
11-Jul-2013 |
Benjamin Kramer <benny.kra@googlemail.com> |
Reduce the number of indirections in the attributes implementation. - Coallocate entires for AttributeSetImpls and Nodes after the class itself. - Remove mutable iterators from immutable classes. - Remove unused context field from AttributeImpl. - Derive Enum/Align/String attribute implementations from AttributeImpl instead of having a whole new inheritance tree for them. - Derive AlignAttributeImpl from EnumAttributeImpl. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186075 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
dc89737bcdbb8f69d8ae7578bdfa904cabcfc5ed |
|
06-Jul-2013 |
Nick Lewycky <nicholas@mxc.ca> |
Extend 'readonly' and 'readnone' to work on function arguments as well as functions. Make the function attributes pass add it to known library functions and when it can deduce it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185735 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
2253a2f52f3c46ae75cd05f5885acb987bd1d6b6 |
|
27-Jun-2013 |
Michael Gottesman <mgottesman@apple.com> |
Added support for the Builtin attribute. The Builtin attribute is an attribute that can be placed on function call site that signal that even though a function is declared as being a builtin, rdar://problem/13727199 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185049 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
77226a03dca98e6237c1068f2652fe41bea7b687 |
|
24-May-2013 |
Diego Novillo <dnovillo@google.com> |
Add a new function attribute 'cold' to functions. Other than recognizing the attribute, the patch does little else. It changes the branch probability analyzer so that edges into blocks postdominated by a cold function are given low weight. Added analysis and code generation tests. Added documentation for the new attribute. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182638 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
aae0298921d946a64385052ce6e678d36f936fb3 |
|
01-May-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Now that the underlying issue is fixed, revert r180750 and r180722. The cause of the windows failures was fixed by r180791. Revert to the state after Sabre's original revert. Original message: revert r179735, it has no testcases, and doesn't really make sense. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180844 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
76f103e02164d27b41bd92a9767c7012482ba31a |
|
30-Apr-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Change getSlotIndex to return unsigned. The actual storage was already using unsigned, but the interface was using uint64_t. This is wasteful on 32 bits and looks to be the root causes of a miscompilation on Windows where a value was being sign extended to 64bits to compare with the result of getSlotIndex. Patch by Pasi Parviainen! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180791 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
725dae57916800c7371c5008bd451fb3edb273b2 |
|
30-Apr-2013 |
Bill Wendling <isanbard@gmail.com> |
Revert the command line option patch. However, keep the part that makes this pass on Windows. I.e., we don't emit the target dependent attributes in a comment before the function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180750 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
f2e83499fcc41484cb5dac073c4fe87525926d2b |
|
29-Apr-2013 |
Reid Kleckner <reid@kleckner.net> |
Revert "revert r179735, it has no testcases, and doesn't really make sense." This un-reverts r179735 and reverts commit r180574. This fixes assertion failures for me locally and should fix the failures on Windows reported widely on llvm-dev. We should check if the bots caught this and if so why not. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180722 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
29fce9ad39636d38f43add5d7c23e83d9d1cc249 |
|
25-Apr-2013 |
Chris Lattner <sabre@nondot.org> |
revert r179735, it has no testcases, and doesn't really make sense. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180574 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
456ca048af35163b9f52187e92a23ee0a9f059e8 |
|
20-Apr-2013 |
Stephen Lin <stephenwlin@gmail.com> |
Add CodeGen support for functions that always return arguments via a new parameter attribute 'returned', which is taken advantage of in target-independent tail call opportunity detection and in ARM call lowering (when placed on an integral first parameter). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179925 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
e94e4ca5fd94de185a840e9237b3b483f62342a8 |
|
19-Apr-2013 |
Benjamin Kramer <benny.kra@googlemail.com> |
Attributes: Don't print trailing whitespace on the function attribute comment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179849 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
a88a016f2d99488f2eff0eb6be256f2f43602afa |
|
18-Apr-2013 |
Bill Wendling <isanbard@gmail.com> |
Make the TargetIndependent flag have the right boolean value. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179798 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
8a6a7bb6a601061031cddd77129532a3b467300b |
|
18-Apr-2013 |
Bill Wendling <isanbard@gmail.com> |
Cleanup patch: Semantics of parameters named Index and Idx were inconsistent between "include/llvm/IR/Attributes.h", "lib/IR/AttributeImpl.h" and "lib/IR/Attributes.cpp": sometimes these were fixed 1-based indexes of IR parameters (or AttributeSet::ReturnIndex for IR return values or AttributeSet::FunctionIndex for IR functions), other times they were the internal slot for storage in the underlying AttributeSetImpl. I renamed usage of the former to "Index" and usage of the latter to "Slot" ("Slot" was already being used consistently for the latter in a subset of cases) Patch by Stephen Lin! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179791 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
bb1b63c48397a3bac5d00f2ac9d33cc14efd714c |
|
18-Apr-2013 |
Bill Wendling <isanbard@gmail.com> |
This patch addresses two cleanup issues: 1. Verify::VerifyParameterAttrs in "lib/IR/Verifier.cpp" and AttrBuilder::removeFunctionOnlyAttrs in "lib/IR/Attributes.cpp" (only called by Verify::VerifyFunctionAttrs) separately maintained a list of function-only attribute types. I've consolidated the logic into a new function used for both cases in "lib/IR/Verifier.cpp", so this logic is in one place (other than the AsmParser front-end) 2. Various functions in "lib/IR/Verifier.cpp" passed AttributeSet around by reference needlessly, as it's just a handle to an immutable pimpl body. Patch by Stephen Lin! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179790 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
b1ac6e617291e2a628bc460933bde97c73466cb0 |
|
18-Apr-2013 |
Bill Wendling <isanbard@gmail.com> |
Add an option `-enable-old-style-attr-syntax' to print out function attributes in the "old" style. It's sometimes beneficial to emit a testcase with the old style attribute syntax. Allow someone to do this. <rdar://problem/13563209> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179735 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
9106f73246168fb30d26fb14085c0b3d81fcd350 |
|
13-Mar-2013 |
Reed Kotler <rkotler@mips.com> |
Add some additonal attribute helper functions. Test will be on follow up putback to clang for mips16. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176968 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
1abc00b6d18b1a81548e52783fbccd1c59ebf968 |
|
28-Feb-2013 |
Bill Wendling <isanbard@gmail.com> |
Don't add an attribute that already exists and don't remove an attribute that doesn't exist. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176289 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
8eec41fc778e99d42172a7f6de76faa43a6d8847 |
|
26-Feb-2013 |
Kostya Serebryany <kcc@google.com> |
Unify clang/llvm attributes for asan/tsan/msan (LLVM part) These are two related changes (one in llvm, one in clang). LLVM: - rename address_safety => sanitize_address (the enum value is the same, so we preserve binary compatibility with old bitcode) - rename thread_safety => sanitize_thread - rename no_uninitialized_checks -> sanitize_memory CLANG: - add __attribute__((no_sanitize_address)) as a synonym for __attribute__((no_address_safety_analysis)) - add __attribute__((no_sanitize_thread)) - add __attribute__((no_sanitize_memory)) for S in address thread memory If -fsanitize=S is present and __attribute__((no_sanitize_S)) is not set llvm attribute sanitize_S git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176075 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
bd2acfab4a4692ce39541f380997945e9bbb14ae |
|
22-Feb-2013 |
Bill Wendling <isanbard@gmail.com> |
Remove warning about default covering no cases. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175846 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
d18e0b94bfaad5b8a24fcb45b55d7e031cc94202 |
|
22-Feb-2013 |
Bill Wendling <isanbard@gmail.com> |
Add a bitmask for NoBuiltin. This should *not* be used. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175843 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
143d46476cdcf5b88b9ee18ebd799e5820a2db0e |
|
22-Feb-2013 |
Bill Wendling <isanbard@gmail.com> |
Implement the NoBuiltin attribute. The 'nobuiltin' attribute is applied to call sites to indicate that LLVM should not treat the callee function as a built-in function. I.e., it shouldn't try to replace that function with different code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175835 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
3f213e7b3a6829a154d4e8ceb7d8689b389bd5dc |
|
18-Feb-2013 |
Benjamin Kramer <benny.kra@googlemail.com> |
Futureproof AttrBuild if we ever have more than 64 attr enum values. Currently we're at 34. Bitset should compile into virtually the same code as uint64_t here. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175437 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
7c1461252b7ee8b3b5a556993cb7b96d793223b6 |
|
16-Feb-2013 |
Benjamin Kramer <benny.kra@googlemail.com> |
GCC doesn't like ++ on enums. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175373 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
c835b8c30127d15599de2d614434d39a6cc3ae17 |
|
16-Feb-2013 |
Benjamin Kramer <benny.kra@googlemail.com> |
Turn the enum attributes DenseSet in AttrBuilder into a set of bits. Avoids malloc and is a lot denser. We lose iteration over target independent attributes, but that's a strange interface anyways and didn't have any users outside of AttrBuilder. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175370 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
94328f4ff3d450104f15c9dae437cea80417233d |
|
15-Feb-2013 |
Bill Wendling <isanbard@gmail.com> |
Simplify the 'operator<' for the attribute object. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175252 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
a7e4409bb238ec3c5169c25afbb0308ae76d1111 |
|
15-Feb-2013 |
Anna Zaks <ganna@apple.com> |
Revert "Simplify the attributes '<' comparison function." This reverts commit 82c101153fe7b35bce48781fab038e1b8f31a7bd. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175250 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
0ec707a4e586f41f8a2cf91557fbbbe142377dd0 |
|
15-Feb-2013 |
Bill Wendling <isanbard@gmail.com> |
Simplify the attributes '<' comparison function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175235 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
f107e6ca9bbfc82c980c3e8e5c6bf04261b49c90 |
|
13-Feb-2013 |
Bill Wendling <isanbard@gmail.com> |
Use array_pod_sort. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175048 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
0e9d5d059c4aa959e9ef4dff011dbd38d45a1016 |
|
13-Feb-2013 |
Bill Wendling <isanbard@gmail.com> |
Add some accessor and query methods for retrieving Attribute objects and such. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175046 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
74fe825ca597f56985ab4387baca35948647ec4b |
|
12-Feb-2013 |
Bill Wendling <isanbard@gmail.com> |
Support string attributes in the AttrBuilder. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174948 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
b29ce26ea60f7516c853318ffbfc107fde9ad897 |
|
11-Feb-2013 |
Bill Wendling <isanbard@gmail.com> |
Add support for printing out the attribute groups. This emits the attribute groups that are used by the functions. (It currently doesn't print out return type or parameter attributes within attribute groups.) Note: The functions still retrieve their attributes from the "old" bitcode format (using the deprecated 'Raw()' method). This means that string attributes within an attribute group will not show up during a disassembly. This will be addressed in a future commit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174867 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
ab39afa9d9b99c61842c8e3d0eb706bd16efdcf3 |
|
11-Feb-2013 |
Kostya Serebryany <kcc@google.com> |
[tsan/msan] adding thread_safety and uninitialized_checks attributes git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174864 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
2153691a8ba35cb2bcf9237557b6cae7e9d8e68d |
|
11-Feb-2013 |
Bill Wendling <isanbard@gmail.com> |
The 'Raw' method cannot handle 'string' attributes. Don't even try. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174848 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
09ed9101c8c7e93c1d814e75ff906bf904778dbb |
|
10-Feb-2013 |
Bill Wendling <isanbard@gmail.com> |
Handle string attributes in the AttrBuilder. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174834 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
85b3fbecdfe934ac7519a8831c4bd262cba99d12 |
|
10-Feb-2013 |
Bill Wendling <isanbard@gmail.com> |
Add accessor for the LLVMContext. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174824 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
c342d9d345acdbd95577c7c6e9ce7d3a1bdb57bf |
|
06-Feb-2013 |
Bill Wendling <isanbard@gmail.com> |
Add a 'StringRef' version of hasAttribute. Fix the 'operator==' and 'hasAttributes' queries to take into account target-dependent attributes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174481 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
85df6b43403d3ebf5d80023a85699c6fb254941a |
|
06-Feb-2013 |
Bill Wendling <isanbard@gmail.com> |
Add methods to merge an AttrBuilder into another builder. This is useful when parsing an object that references multiple attribute groups. N.B. If both builders have alignments specified, then they should match! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174480 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
64754f499058b5dc748ea6d06a084af0ed539ec4 |
|
06-Feb-2013 |
Bill Wendling <isanbard@gmail.com> |
Add the target-dependent (string) attributes from the AttrBuilder to the AttributeSet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174467 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
8c74ecfbddabe89e150abff4fdff0a27108874b9 |
|
05-Feb-2013 |
Bill Wendling <isanbard@gmail.com> |
Convert to storing the attribute's internals as enums, integers, and strings. The stuff we're handing are all enums (Attribute::AttrKind), integers and strings. Don't convert them to Constants, which is an unnecessary step here. The rest of the changes are mostly mechanical. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174456 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
ea59f896a672c2e1ef9f02277bce60257aa60989 |
|
05-Feb-2013 |
Bill Wendling <isanbard@gmail.com> |
Add target-dependent versions of addAttribute/removeAttribute to AttrBuilder. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174356 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
f9271ea159b97e2febedcf095c3c4122cb24d077 |
|
05-Feb-2013 |
Bill Wendling <isanbard@gmail.com> |
Initial cleanups of the param-attribute code in the bitcode reader/writer. Rename the PARAMATTR_CODE_ENTRY to PARAMATTR_CODE_ENTRY_OLD. It will be replaced by another encoding. Keep around the current LLVM attribute encoder/decoder code, but move it to the bitcode directories so that no one's tempted to use them. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174335 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
fca0ed28c81a505b0b71605e8b59e4bb6daeda0e |
|
02-Feb-2013 |
Bill Wendling <isanbard@gmail.com> |
Remove AttrBuilder::Raw(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174251 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
bdcbccc710a0528b4abce947782fd502bafb848d |
|
02-Feb-2013 |
Bill Wendling <isanbard@gmail.com> |
Use the AttributeSet's iterators. Use the AttributeSet's iterators in AttrBuilder::hasAttributes() when determining of the intersection of the AttrBuilder and AttributeSet is non-null. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174250 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
5a4041e7282ca1dba93fe1a97c8260c0ef621f5d |
|
01-Feb-2013 |
Bill Wendling <isanbard@gmail.com> |
Change the AttributeImpl to hold a single Constant* for the values. This Constant could be an aggregate to represent multiple values. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174228 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
7beee2876795098d2e2f31ecc2ca29fa7640a8eb |
|
01-Feb-2013 |
Bill Wendling <isanbard@gmail.com> |
Remove some dead code, improve some asserts, and other assorted changes. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174132 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
f715dbd263149efeb9c684dfdb0637cf84f94399 |
|
01-Feb-2013 |
Bill Wendling <isanbard@gmail.com> |
Remove one of the odious 'Raw' methods. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174130 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
30d2c76800bc821aff6e224e0bd11d88a793303e |
|
01-Feb-2013 |
Bill Wendling <isanbard@gmail.com> |
Use iterators instead of relying upon a bitmask of attributes to remove attributes from an AttrBuilder. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174123 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
16c4b3cf2943ae2327752cf3de39769d14cfcece |
|
01-Feb-2013 |
Bill Wendling <isanbard@gmail.com> |
Add iterators to the AttributeSet class so that we can access the Attributes in a nice way. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174120 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
39da078977ae98b6bf1c3c76a472ed24f5f2a2d2 |
|
01-Feb-2013 |
Bill Wendling <isanbard@gmail.com> |
s/AttrBuilder::addAttributes/AttrBuilder::addAttribute/g because that's more descriptive of what it actually is. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174116 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
169d5270751597aed4095ead00401a3374906147 |
|
01-Feb-2013 |
Bill Wendling <isanbard@gmail.com> |
Remove the AttrBuilder form of the Attribute::get creators. The AttrBuilder is for building a collection of attributes. The Attribute object holds only one attribute. So it's not really useful for the Attribute object to have a creator which takes an AttrBuilder. This has two fallouts: 1. The AttrBuilder no longer holds its internal attributes in a bit-mask form. 2. The attributes are now ordered alphabetically (hence why the tests have changed). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174110 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
14292a6be51ab57ff425ff263d4134fe46d082c4 |
|
31-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Add support for emitting a string attribute. Attributes that are strings are typically target-dependent attributes. They are of this form in the IR: "attr" "attr" = "val" git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174090 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
82aea644c6d2a21464958fe2e3a1cd0f6bfc82db |
|
31-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Remove the Attribute::hasAttributes() function. That function doesn't make sense anymore because there's only one attribute per Attribute object now. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174044 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
eddab1550ee10cce3bb26a26e88529cb19451aa3 |
|
31-Jan-2013 |
NAKAMURA Takumi <geek4civic@gmail.com> |
Revert r174026, "Remove Attribute::hasAttributes() and make Attribute::hasAttribute() private." It broke many hosts to crash. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174035 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
85238aae1a4b6ac67e16560a9855944191f3db5b |
|
31-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Remove Attribute::hasAttributes() and make Attribute::hasAttribute() private. The Attribute::hasAttributes() is kind of meaningless since an Attribute can have only one attribute. And we would rather people use the 'operator==' instead of Attribute::hasAttribute(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174026 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
b96129dd4856a5473c52daceaabdfd2262bd96f2 |
|
31-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Revert for now: --- Reverse-merging r174010 into '.': U include/llvm/IR/Attributes.h U lib/IR/Verifier.cpp U lib/IR/Attributes.cpp git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174012 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
c6077eff8b9963b59de21e5d1dfae7a6ea75da36 |
|
31-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Remove the AttrBuilder version of the Attribute::get function. The AttrBuilder is there to build up multiple attributes. The Attribute class represents only one attribute at a time. So remove this unnecessary builder creator method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174010 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
73dee180c836270644dfa7d90f9c5ba877567999 |
|
31-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Make sure that the Attribute object represents one attribute only. Several places were still treating the Attribute object as respresenting multiple attributes. Those places now use the AttributeSet to represent multiple attributes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174003 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
e74365462a39529ae48ef4d34ec76b4543b8ea29 |
|
31-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Convert typeIncompatible to return an AttributeSet. There are still places which treat the Attribute object as a collection of attributes. I'm systematically removing them. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173990 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
383da6ba555a3c2be360d9bdc75a74f315f2354e |
|
30-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Remove redundant code. It was creating a new AttrBuilder when we could just fill in the AttrBuilder we're building. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173975 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
6dc3781d44e56f0addf28b06232a50f3f9e6b1af |
|
29-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Add a couple of accessor methods to get the kind and values of an attribute. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173828 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
9f175f88190fae22df9c6e68af618d0493477ff9 |
|
29-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
s/Data/Kind/g. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173827 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
3ba51cefb75364a17e3a23c54c216035c33e67a6 |
|
29-Jan-2013 |
NAKAMURA Takumi <geek4civic@gmail.com> |
AttributeSet::get(): Fix a valgrind error. It doesn't affect actual behavior, though. Don't touch I->first on the end iterator, I == E! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173804 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
606c8e36dfdd28fc589356addd3e2cbb89a32e4d |
|
29-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Convert getAttributes() to return an AttributeSetNode. The AttributeSetNode contains all of the attributes. This removes one (hopefully last) use of the Attribute class as a container of multiple attributes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173761 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
8232ece5c1e57efe54342fb35610497d50bf894f |
|
29-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Use an AttrBuilder to generate the correct AttributeSet. We no longer accept an encoded integer as representing all of the attributes. Convert this via the AttrBuilder class into an AttributeSet with the correct representation (an AttributeSetImpl that holds a list of Attribute objects). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173750 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
8fbc0c296ef067150f3228e389ae04cf7b3b1992 |
|
29-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Convert the AttrBuilder into a list of Attributes instead of one Attribute object that holds all of its attributes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173742 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
817abdd8b055059e5930a15704b9f52da4236456 |
|
29-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
S'more small non-functional changes in comments and #includes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173738 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
c22f4aa886443507f8406d30d118fdeeac6a8c6c |
|
29-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Reorder some functions and add comments. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173733 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
6bdbf061c353295669b6bfc271b948158602d1bc |
|
28-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Try to appease some broken compilers by using 'unsigned' instead of 'uint64_t'. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173725 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
87e10dfefa94f77937c37b0eb51095540d675cbc |
|
28-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Remove the AttributeWithIndex class. The AttributeWithIndex class exposed the interior structure of the AttributeSet class. That was gross. Remove it and all of the code that relied upon it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173722 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
19d815c04fde6b7b53c2b542813157edfa213842 |
|
28-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Mid-air collision. reapply r173656. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173661 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
98b92f3bf5770e02498549e24b3db75d5862c173 |
|
28-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Rewrite the removeAttr() method. This now uses the AttributeSet object instead of the Attribute / AttributeWithIndex objects. It's fairly simple now. It goes through all of the subsets before the one we're modifying, adds them to the new set. It then adds the modified subset (with the requested attributes removed). And then adds the rest of the subsets. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173660 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
49f6060f16aec4024d644a6ec4ddd3de9b3e8821 |
|
28-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Rewrite the addAttr() method. This now uses the AttributeSet object instead of the Attribute / AttributeWithIndex objects. It's fairly simple now. It goes through all of the subsets before the one we're modifying, adds them to the new set. It then adds the modified subset. And then adds the rest of the subsets. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173659 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
53ff78b2019e96e142986d19dd99f8dd563dc494 |
|
28-Jan-2013 |
NAKAMURA Takumi <geek4civic@gmail.com> |
Revert r173646, "Use proper type for the index." Unfortunately, msvc miscompiles it. Investigating. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173656 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
a9b9f0ad802ef6973534a9a247716e4a8e079635 |
|
28-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Use proper type for the index. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173646 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
e2501f56a620be88665d04dc481f40ef3275eea0 |
|
28-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Remove another use of AttributeWithIndex, using the AttributeSetImpl accessors instead. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173644 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
70cdaaae925862b9d52d41729e93cf6417c3370b |
|
28-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Remove another use of AttributeWithIndex, using the AttributeSetImpl accessors instead. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173642 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
73bc452bcd63620daefb0a3bc613746af7418076 |
|
28-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Remove a use of AttributeWithIndex. We want to remove AttributeWithIndex because it provides a non-encapsulated view of the AttributeSetImpl object. Instead, use accessor methods and iterators. Eventually, this code can be simplified because the Attribute object will hold only one attribute instead of multiple attributes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173641 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
49716e5d84142d7bd3eeff7304f9bc708bff99d0 |
|
28-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Improve the debug output a bit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173640 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
3e3e789aede6ec38d39c95d88ad4e8634d5a259b |
|
28-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Use proper return type for attribute index. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173639 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
d05204aea4977eaec25e96bc7605a7bb9d806fc0 |
|
28-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Push the calculation of the 'Raw' attribute mask down into the implementation. It in turn uses the correct list for calculating the 'Raw' value. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173637 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
c08a5ef6581f2c7550e92d31f63cd65ec29c39e0 |
|
27-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Add special 'get' methods to create an Attribute with an alignment. Also do some random cleanup. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173635 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
ec2589863b32da169240c4fa120ef1e3798615d4 |
|
27-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
s/AttrList/pImpl/g in AttributeSet. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173628 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
a5372d270864316fb0752dd366f03fc1b45c6143 |
|
27-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Start using more of the AttrNode in the AttributeSetImpl class. Also add some asserts. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173627 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
6a325cc46db9cb0c631ac832474e5df039d04b19 |
|
27-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
In the AttributeSetImpl c'tor, fill in the AttrNodes data structure with the attributes being passed in. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173618 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
16f95669ec814d98ce28ad514df603c01d662ee8 |
|
27-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Fix miscompile. Add back the use of the ArrayRef version of the ::get method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173613 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
09dda440ba6622b64713ef5f7d9531411e3589ea |
|
27-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Remove dead methods. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173611 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
32a57958226e369f964a034da2ce7083a1a34297 |
|
26-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Convert BuildLibCalls.cpp to using the AttributeSet methods instead of AttributeWithIndex. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173536 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
483bbd36b8b3f87073feea2e1096f188d0e735b8 |
|
26-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Remove dead method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173524 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
8e47daf2858e980210f3e1f007036b24da342c29 |
|
26-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Remove some introspection functions. The 'getSlot' function and its ilk allow introspection into the AttributeSet class. However, that class should be opaque. Allow access through accessor methods instead. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173522 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
85875647d6f85cbcbe506809640b9857eaaa26a4 |
|
25-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Use the new 'getSlotIndex' method to retrieve the attribute's slot index. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173499 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
e1f95db4803a48a30fc2a1d5868281a87a36fb85 |
|
25-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Add an accessor method to get the slot's index. This will limit the use of AttributeWithIndex. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173495 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
f86c9321fc8088a021598df0265c5fd00ab4170d |
|
25-Jan-2013 |
Reid Kleckner <reid@kleckner.net> |
Fix MSVC 2012 warning about a 32-bit shift that should be 64-bit git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173454 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
bb08593980b16fbd9758da6ca4fa9c7964f2f926 |
|
24-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Add a profile for uniquifying the AttributeSet with the AttributeSetNodes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173313 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
3467e30edf63b6d8a8d446186674ba9e4b7885a9 |
|
24-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Create a new class: AttributeSetNode. This is a helper class for the AttributeSetImpl class. It holds a set of attributes that apply to a single element: function, return type, or parameter. These are uniqued. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173310 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
a8ab5fc772e1eaaa1066d1c9c4135ac875d79365 |
|
24-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Push down the conversion of the alignment from the bit mask to a real number into the attribute implementation class. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173304 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
2915a691b9eecde508948d4300428860d1655175 |
|
23-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Remove dead methods. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173302 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
114baee1fa017daefad2339c77b45b9ca3d79a41 |
|
23-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Add the IR attribute 'sspstrong'. SSPStrong applies a heuristic to insert stack protectors in these situations: * A Protector is required for functions which contain an array, regardless of type or length. * A Protector is required for functions which contain a structure/union which contains an array, regardless of type or length. Note, there is no limit to the depth of nesting. * A protector is required when the address of a local variable (i.e., stack based variable) is exposed. (E.g., such as through a local whose address is taken as part of the RHS of an assignment or a local whose address is taken as part of a function argument.) This patch implements the SSPString attribute to be equivalent to SSPRequired. This will change in a subsequent patch. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173230 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
28d65722d6f283b327b5815914382077fe9c0ab4 |
|
23-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Remove the last of uses that use the Attribute object as a collection of attributes. Collections of attributes are handled via the AttributeSet class now. This finally frees us up to make significant changes to how attributes are structured. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173228 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
8246df61f6de716acf1f8c64fac3c19970a2c174 |
|
23-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Use the AttributeSet when removing multiple attributes. Use Attribute::AttrKind when removing one attribute. This further encapsulates the use of the attributes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173214 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
defaca00b8087d452df2b783250a48a32658a910 |
|
22-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
More encapsulation work. Use the AttributeSet when we're talking about more than one attribute. Add a function that adds a single attribute. No functionality change intended. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173196 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
e4e85f17564c28cd571dda30146c3f310521acf0 |
|
22-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Add a new method that adds the AttributeSet at the given index. No functional change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173109 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
da6d5623aefeb3c77a610954c77605107e1532b8 |
|
22-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Add the attributes that are passed in instead of the ones we're merging into. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173108 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
3fc4b96b503fa202411317684a2ba02e41e43072 |
|
21-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Have AttributeSet::getRetAttributes() return an AttributeSet instead of Attribute. This further restricts the use of the Attribute class to the Attribute family of classes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173098 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
c5f1bc88a2eb7ad9ff924ca90cf88494e5f947b9 |
|
21-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Make AttributeSet::getFnAttributes() return an AttributeSet instead of an Attribute. This is more code to isolate the use of the Attribute class to that of just holding one attribute instead of a collection of attributes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173094 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
aec710675febb13d3cf4a7141d2658a3b1797cfd |
|
18-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
If the attributes don't exist, just bail for now. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172854 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
1b0c54f1c5dd61e56cb7cbc435fcb3319cff628f |
|
18-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Use AttributeSet accessor methods instead of Attribute accessor methods. Further encapsulation of the Attribute object. Don't allow direct access to the Attribute object as an aggregate. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172853 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
956f13440a4aa0297606a4412f4aa091d931592a |
|
18-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Push some more methods down to hide the use of the Attribute class. Because the Attribute class is going to stop representing a collection of attributes, limit the use of it as an aggregate in favor of using AttributeSet. This replaces some of the uses for querying the function attributes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172844 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
1db9b6957c2565a2322206bd5907530895f1c7ac |
|
10-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Revert s/Raw/getBitMask/g name change. This is possibly causing LTO test hangings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172020 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
53208a91a0ff20a956357147472d75058c2d5cce |
|
09-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Alter the hasing computation when inserting into the folding set. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171960 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
8456efb38e479e4878a6a782c3026c20b09c1f8e |
|
09-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Forgot the namespace identifier. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171924 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
ff887165bc221c0398c0d4404dc0b22de216dedf |
|
09-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Add the integer value of the ConstantInt instead of the Constant* value. This is causing some problems. The root cause is unknown at this time. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171923 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
a90a99a82b9c5c39fc6dbee9c266dcd7b107fe2f |
|
07-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Rough out a new c'tor for the AttrBuilder class. This c'tor takes the AttributeSet class as the parameter. It will eventually grab the attributes from the specified index and create a new attribute builder with those attributes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171712 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
f06eb2616516da9d1e7a6599225cd894618ecb10 |
|
05-Jan-2013 |
Benjamin Kramer <benny.kra@googlemail.com> |
Attribute: Make hashes match when looking up AttributeImpls. This isn't optimal either but fixes a massive compile time regression from the attribute uniquing work. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171624 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
6f78fbbc630d2b86fb752574f5ad74473f57dfb1 |
|
05-Jan-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Switch the empty and tombstone key enumerators to not have explicit values -- that's not required to fix the bug that was cropping up, and the values selected made the enumeration's underlying type signed and introduced some warnings. This fixes the -Werror build. The underlying issue here was that the DenseMapInfo was casting values completely outside the range of the underlying storage of the enumeration to the enumeration's type. GCC went and "optimized" that into infloops and other misbehavior. By providing designated special values for these keys in the dense map, we ensure they are indeed representable and that they won't be used for anything else. It might be better to reuse None for the empty key and have the tombstone share the value of the sentinel enumerator, but honestly having 2 extra enumerators seemed not to matter and this seems a bit simpler. I'll let Bill shuffle this around (or ask me to shuffle it around) if he prefers it to look a different way. I also made the switch a bit more clear (and produce a better assert) that the enumerators are *never* going to show up and are errors if they do. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171614 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
3a4779a9211281a1d0c27c97037342329035a185 |
|
05-Jan-2013 |
NAKAMURA Takumi <geek4civic@gmail.com> |
IR/Attributes: Provide EmptyKey and TombstoneKey in part of enum, as workaround for gcc-4.4 take #2. I will investigate, later, what was wrong. I am too tired for now. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171611 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
1bbd644301ed4d8a7efd4ceb15f71c56fa914f28 |
|
05-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Add a method to create an AttributeSet from an AttrBuilder. The Attribute class is eventually going to represent one attribute. So we need this class to create the set of attributes. Add some iterator methods to the builder to access its internal bits in a nice way. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171586 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
0319888773b36dd61d7d2283cb9a26cac1e5abe8 |
|
05-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Get rid of the 'Bits' mask in the attribute builder. The bit mask thing will be a thing of the past. It's not extensible enough. Get rid of its use here. Opt instead for using a vector to hold the attributes. Note: Some of this code will become obsolete once the rewrite is further along. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171553 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
60507d53e7e8e6b0c537675f68204a93c3033de7 |
|
04-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
General cleanups. * Remove dead methods. * Use the 'operator==' method instead of 'contains', which isn't needed. * Fix some comments. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171523 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
e5ab1bee8c1b4ae58bc108c28194af56379e55ac |
|
03-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Revert everything to r171366 to try to fix the build. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171450 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
22bd64173981bf1251c4b3bfc684207340534ba3 |
|
03-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Try again to revert the bad patch. The tree was reverted for some unknown reason before the last time. --- Reverse-merging r171442 into '.': U include/llvm/IR/Attributes.h U lib/IR/Attributes.cpp U lib/IR/AttributeImpl.h git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171448 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
ded28aca6195d2d8d3bcbb9cd6b1c2c34c0d9702 |
|
03-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Revert patch. Something snuck in there that shouldn't be. --- Reverse-merging r171441 into '.': U include/llvm/IR/Attributes.h U lib/IR/Attributes.cpp git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171444 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
8351a60d6da4f5cdab80753ad2266085a6fbf62a |
|
03-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Remove the 'contains' methods in favor of the 'operator==' method. The 'operator==' method is a bit clearer and much less verbose for somethings that should have only one value. Remove from the AttrBuilder for consistency. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171442 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
3ac03815e195a598fce50abdda440c9d2fae815e |
|
03-Jan-2013 |
NAKAMURA Takumi <geek4civic@gmail.com> |
Revert r171427, "An intermediate step in the Attributes rewrite." git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171441 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
47990e974355dd58d1f320f252e1a7ed3a79e034 |
|
03-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
Make the type signature more strict. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171434 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
278bac3fba5ae8ae620c961621493e6e2ad6f953 |
|
03-Jan-2013 |
Bill Wendling <isanbard@gmail.com> |
An intermediate step in the Attributes rewrite. Modify the AttrBuilder class to store the attributes as a set instead of as a bit mask. The Attribute class will represent only one attribute instead of a collection of attributes. This is the wave of the future! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171427 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
0b8c9a80f20772c3793201ab5b251d3520b9cea3 |
|
02-Jan-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Move all of the header files which are involved in modelling the LLVM IR into their new header subdirectory: include/llvm/IR. This matches the directory structure of lib, and begins to correct a long standing point of file layout clutter in LLVM. There are still more header files to move here, but I wanted to handle them in separate commits to make tracking what files make sense at each layer easier. The only really questionable files here are the target intrinsic tablegen files. But that's a battle I'd rather not fight today. I've updated both CMake and Makefile build systems (I think, and my tests think, but I may have missed something). I've also re-sorted the includes throughout the project. I'll be committing updates to Clang, DragonEgg, and Polly momentarily. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171366 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|
c2c50cdcdc19a1bca993c06d13d8cdca87083ce4 |
|
02-Jan-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Rename VMCore directory to IR. Aside from moving the actual files, this patch only updates the build system and the source file comments under lib/... that are relevant. I'll be updating other docs and other files in smaller subsequnet commits. While I've tried to test this, but it is entirely possible that there will still be some build system fallout. Also, note that I've not changed the library name itself: libLLVMCore.a is still the library name. I'd be interested in others' opinions about whether we should rename this as well (I think we should, just not sure what it might break) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171359 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/IR/Attributes.cpp
|