LLVM: llvm::PointerIntPairInfo< PointerT, IntBits, PtrTraits (original) (raw)
#include "[llvm/ADT/PointerIntPair.h](PointerIntPair%5F8h%5Fsource.html)"
| Public Types | |
|---|---|
| enum | MaskAndShiftConstants : uintptr_t { PointerBitMask = (~(uintptr_t)0) << PtrTraits::NumLowBitsAvailable , IntShift = (uintptr_t)PtrTraits::NumLowBitsAvailable - IntBits , IntMask = ((uintptr_t)1 << IntBits) - 1 , ShiftedIntMask = (uintptr_t)(IntMask << IntShift) } |
| Static Public Member Functions | |
|---|---|
| static PointerT | getPointer (intptr_t Value) |
| static intptr_t | getInt (intptr_t Value) |
| static intptr_t | updatePointer (intptr_t OrigValue, PointerT Ptr) |
| static intptr_t | updateInt (intptr_t OrigValue, intptr_t Int) |
template<typename PointerT, unsigned IntBits, typename PtrTraits>
struct llvm::PointerIntPairInfo< PointerT, IntBits, PtrTraits >
Definition at line 168 of file PointerIntPair.h.
◆ MaskAndShiftConstants
template<typename PointerT, unsigned IntBits, typename PtrTraits>
| Enumerator | |
|---|---|
| PointerBitMask | PointerBitMask - The bits that come from the pointer. |
| IntShift | IntShift - The number of low bits that we reserve for other uses, and keep zero. |
| IntMask | IntMask - This is the unshifted mask for valid bits of the int type. |
| ShiftedIntMask |
Definition at line 174 of file PointerIntPair.h.
◆ getInt()
template<typename PointerT, unsigned IntBits, typename PtrTraits>
◆ getPointer()
template<typename PointerT, unsigned IntBits, typename PtrTraits>
◆ updateInt()
template<typename PointerT, unsigned IntBits, typename PtrTraits>
◆ updatePointer()
template<typename PointerT, unsigned IntBits, typename PtrTraits>
The documentation for this struct was generated from the following file:
- include/llvm/ADT/PointerIntPair.h