LLVM API Documentation

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/DerivedTypes.h"
#include "llvm/IR/OperandTraits.h"
Include dependency graph for Constants.h:

Go to the source code of this file.

Classes

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

namespace  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.