summaryrefslogtreecommitdiff
path: root/include/llvm/Support/PointerLikeTypeTraits.h
Commit message (Collapse)AuthorAge
* Merge System into Support.Michael J. Spencer2010-11-29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120298 91177308-0d34-0410-b5e6-96231b3b80d8
* lang points out that the comment is out of date with the code.Chris Lattner2009-10-27
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85203 91177308-0d34-0410-b5e6-96231b3b80d8
* Move DataTypes.h to include/llvm/System, update all users. This breaks the lastChandler Carruth2009-10-26
| | | | | | | direct inclusion edge from System to Support. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85086 91177308-0d34-0410-b5e6-96231b3b80d8
* Make the type traits for a const pointer defer to those for a unqualifiedJohn McCall2009-09-23
| | | | | | | | | pointer, instead of providing independent values modelled on the default implementation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82620 91177308-0d34-0410-b5e6-96231b3b80d8
* Drop the default assumption about alignment down to 2 bits from 3. This ↵Chris Lattner2009-05-01
| | | | | | | | | apparently helps some problems on win32 platforms (PR4119) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70603 91177308-0d34-0410-b5e6-96231b3b80d8
* Work around an apparent GCC miscompilation by specializing different,Chris Lattner2009-04-03
| | | | | | | this fixes a regression on some compilers from r68147. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68356 91177308-0d34-0410-b5e6-96231b3b80d8
* teach PointerLikeTypeTraits that all pointers to pointers may only be 4-byte ↵Chris Lattner2009-03-31
| | | | | | aligned. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68147 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a PointerLikeTypeTraits specialization for uintptr_tChris Lattner2009-03-29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67985 91177308-0d34-0410-b5e6-96231b3b80d8
* Replace the PointerLikeTypeTraits::getNumLowBitsAvailableChris Lattner2009-03-29
| | | | | | | | | | | | | | | | | 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
* rename PointerLikeTypeInto to PointerLikeTypeTraits, add trait for Chris Lattner2009-03-29
# 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