LLVM  8.0.0svn
Classes | Namespaces | Macros | Functions
TypeBuilder.h File Reference
#include "llvm/IR/DerivedTypes.h"
#include "llvm/IR/LLVMContext.h"
#include <climits>
Include dependency graph for TypeBuilder.h:

Go to the source code of this file.


class  llvm::TypeBuilder< T, cross_compilable >
 TypeBuilder - This provides a uniform API for looking up types known at compile time. More...
class  llvm::types::i< num_bits >
 i<N> corresponds to the LLVM IntegerType with N bits. More...
class  llvm::types::ieee_float
class  llvm::types::ieee_double
class  llvm::types::x86_fp80
class  llvm::types::fp128
class  llvm::types::ppc_fp128
class  llvm::types::x86_mmx
class  llvm::TypeBuilder< const T, cross >
class  llvm::TypeBuilder< volatile T, cross >
class  llvm::TypeBuilder< const volatile T, cross >
class  llvm::TypeBuilder< T *, cross >
class  llvm::TypeBuilder< T &, cross >
 There is no support for references. More...
class  llvm::TypeBuilder< T[N], cross >
class  llvm::TypeBuilder< T[], cross >
 LLVM uses an array of length 0 to represent an unknown-length array. More...
class  llvm::TypeBuilder< types::i< num_bits >, cross >
class  llvm::TypeBuilder< float, false >
class  llvm::TypeBuilder< float, true >
class  llvm::TypeBuilder< double, false >
class  llvm::TypeBuilder< double, true >
class  llvm::TypeBuilder< types::ieee_float, cross >
class  llvm::TypeBuilder< types::ieee_double, cross >
class  llvm::TypeBuilder< types::x86_fp80, cross >
class  llvm::TypeBuilder< types::fp128, cross >
class  llvm::TypeBuilder< types::ppc_fp128, cross >
class  llvm::TypeBuilder< types::x86_mmx, cross >
class  llvm::TypeBuilder< void, cross >
class  llvm::TypeBuilder< void *, false >
 void* is disallowed in LLVM types, but it occurs often enough in C code that we special case it. More...
class  llvm::TypeBuilder< const void *, false >
class  llvm::TypeBuilder< volatile void *, false >
class  llvm::TypeBuilder< const volatile void *, false >
class  llvm::TypeBuilder< R(A1), cross >
class  llvm::TypeBuilder< R(A1, A2), cross >
class  llvm::TypeBuilder< R(A1, A2, A3), cross >
class  llvm::TypeBuilder< R(A1, A2, A3, A4), cross >
class  llvm::TypeBuilder< R(A1, A2, A3, A4, A5), cross >
class  llvm::TypeBuilder< R(...), cross >
class  llvm::TypeBuilder< R(A1,...), cross >
class  llvm::TypeBuilder< R(A1, A2,...), cross >
class  llvm::TypeBuilder< R(A1, A2, A3,...), cross >
class  llvm::TypeBuilder< R(A1, A2, A3, A4,...), cross >
class  llvm::TypeBuilder< R(A1, A2, A3, A4, A5,...), cross >


 This class represents lattice values for constants.




 llvm::DEFINE_INTEGRAL_TYPEBUILDER (unsigned char)
 llvm::DEFINE_INTEGRAL_TYPEBUILDER (unsigned long long)

Macro Definition Documentation


template<> class TypeBuilder<T, false> { \
public: \
static IntegerType *get(LLVMContext &Context) { \
return IntegerType::get(Context, sizeof(T) * CHAR_BIT); \
} \
}; \
template<> class TypeBuilder<T, true> { \
/* We provide a definition here so users don't accidentally */ \
/* define these types to work. */ \
LLVMContext & Context
block Block Frequency true

Definition at line 159 of file TypeBuilder.h.