LLVM  10.0.0svn
Classes | Functions
llvm::pointer_union_detail Namespace Reference

Classes

struct  AssignableFrom
 Implement assigment in terms of construction. More...
 
struct  GetFirstType
 Find the first type in a list of types. More...
 
class  PointerUnionMembers
 
class  PointerUnionMembers< Derived, ValTy, I >
 
class  PointerUnionMembers< Derived, ValTy, I, Type, Types... >
 
class  PointerUnionUIntTraits
 Provide PointerLikeTypeTraits for void* that is used by PointerUnion for the template arguments. More...
 
struct  TypeIndex
 Find the index of a type in a list of types. More...
 
struct  TypeIndex< T >
 
struct  TypeIndex< T, T, Us... >
 
struct  TypeIndex< T, U, Us... >
 

Functions

constexpr int constexprMin (int a, int b)
 
constexpr int bitsRequired (unsigned n)
 Determine the number of bits required to store integers with values < n. More...
 
template<typename T >
constexpr int lowBitsAvailable ()
 
template<typename T1 , typename T2 , typename... Ts>
constexpr int lowBitsAvailable ()
 

Function Documentation

◆ bitsRequired()

constexpr int llvm::pointer_union_detail::bitsRequired ( unsigned  n)

Determine the number of bits required to store integers with values < n.

This is ceil(log2(n)).

Definition at line 60 of file PointerUnion.h.

Referenced by llvm::detail::IEEEFloat::IEEEFloat().

◆ constexprMin()

constexpr int llvm::pointer_union_detail::constexprMin ( int  a,
int  b 
)

Definition at line 57 of file PointerUnion.h.

Referenced by lowBitsAvailable().

◆ lowBitsAvailable() [1/2]

template<typename T >
constexpr int llvm::pointer_union_detail::lowBitsAvailable ( )

Definition at line 66 of file PointerUnion.h.

References T1.

◆ lowBitsAvailable() [2/2]

template<typename T1 , typename T2 , typename... Ts>
constexpr int llvm::pointer_union_detail::lowBitsAvailable ( )

Definition at line 70 of file PointerUnion.h.

References constexprMin().