LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Namespaces
Constants.h File Reference
#include "llvm/ADT/APFloat.h"
#include "llvm/ADT/APInt.h"
#include "llvm/ADT/ArrayRef.h"
#include "llvm/IR/Constant.h"
#include "llvm/IR/OperandTraits.h"
#include "llvm/IR/DerivedTypes.h"
Include dependency graph for Constants.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  llvm::ConstantCreator< ConstantClass, TypeClass, ValType >
 
struct  llvm::ConstantArrayCreator< ConstantClass, TypeClass >
 
struct  llvm::ConvertConstantType< ConstantClass, TypeClass >
 
class  llvm::ConstantInt
 Class for constant integers. More...
 
class  llvm::ConstantFP
 
class  llvm::ConstantAggregateZero
 
class  llvm::ConstantArray
 
struct  llvm::OperandTraits< ConstantArray >
 
class  llvm::ConstantStruct
 
struct  llvm::OperandTraits< ConstantStruct >
 
class  llvm::ConstantVector
 
struct  llvm::OperandTraits< ConstantVector >
 
class  llvm::ConstantPointerNull
 
class  llvm::ConstantDataSequential
 
class  llvm::ConstantDataArray
 
class  llvm::ConstantDataVector
 
class  llvm::BlockAddress
 
struct  llvm::OperandTraits< BlockAddress >
 
class  llvm::ConstantExpr
 
struct  llvm::OperandTraits< ConstantExpr >
 
class  llvm::UndefValue
 

Namespaces

 llvm
 List of target independent CodeGen pass IDs.
 

Detailed Description

This file contains the declarations for the subclasses of Constant, which represent the different flavors of constant values that live in LLVM. Note that Constants are immutable (once created they never change) and are fully shared by structural equivalence. This means that two structurally equivalent constants will always have the same address. Constant's are created on demand as needed and never deleted: thus clients don't have to worry about the lifetime of the objects.

Definition in file Constants.h.