LLVM 20.0.0git
|
This file contains the declarations for the subclasses of Constant, which represent the different flavors of constant values that live in LLVM. More...
#include "llvm/ADT/APFloat.h"
#include "llvm/ADT/APInt.h"
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/IR/Constant.h"
#include "llvm/IR/ConstantRange.h"
#include "llvm/IR/DerivedTypes.h"
#include "llvm/IR/GEPNoWrapFlags.h"
#include "llvm/IR/Intrinsics.h"
#include "llvm/IR/OperandTraits.h"
#include "llvm/IR/User.h"
#include "llvm/IR/Value.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/Compiler.h"
#include "llvm/Support/ErrorHandling.h"
#include <cassert>
#include <cstddef>
#include <cstdint>
#include <optional>
Go to the source code of this file.
Classes | |
class | llvm::ConstantData |
Base class for constants with no operands. More... | |
class | llvm::ConstantInt |
This is the shared class of boolean and integer constants. More... | |
class | llvm::ConstantFP |
ConstantFP - Floating Point Values [float, double]. More... | |
class | llvm::ConstantAggregateZero |
All zero aggregate value. More... | |
class | llvm::ConstantAggregate |
Base class for aggregate constants (with operands). More... | |
struct | llvm::OperandTraits< ConstantAggregate > |
class | llvm::ConstantArray |
ConstantArray - Constant Array Declarations. More... | |
class | llvm::ConstantStruct |
class | llvm::ConstantVector |
Constant Vector Declarations. More... | |
class | llvm::ConstantPointerNull |
A constant pointer value that points to null. More... | |
class | llvm::ConstantDataSequential |
ConstantDataSequential - A vector or array constant whose element type is a simple 1/2/4/8-byte integer or half/bfloat/float/double, and whose elements are just simple data values (i.e. More... | |
class | llvm::ConstantDataArray |
An array constant whose element type is a simple 1/2/4/8-byte integer or float/double, and whose elements are just simple data values (i.e. More... | |
class | llvm::ConstantDataVector |
A vector constant whose element type is a simple 1/2/4/8-byte integer or float/double, and whose elements are just simple data values (i.e. More... | |
class | llvm::ConstantTokenNone |
A constant token which is empty. More... | |
class | llvm::ConstantTargetNone |
A constant target extension type default initializer. More... | |
class | llvm::BlockAddress |
The address of a basic block. More... | |
struct | llvm::OperandTraits< BlockAddress > |
class | llvm::DSOLocalEquivalent |
Wrapper for a function that represents a value that functionally represents the original function. More... | |
struct | llvm::OperandTraits< DSOLocalEquivalent > |
class | llvm::NoCFIValue |
Wrapper for a value that won't be replaced with a CFI jump table pointer in LowerTypeTestsModule. More... | |
struct | llvm::OperandTraits< NoCFIValue > |
class | llvm::ConstantPtrAuth |
A signed pointer, in the ptrauth sense. More... | |
struct | llvm::OperandTraits< ConstantPtrAuth > |
class | llvm::ConstantExpr |
A constant value that is initialized with an expression using other constant values. More... | |
struct | llvm::OperandTraits< ConstantExpr > |
class | llvm::UndefValue |
'undef' values are things that do not have specified contents. More... | |
class | llvm::PoisonValue |
In order to facilitate speculative execution, many instructions do not invoke immediate undefined behavior when provided with illegal operands, and return a poison value instead. More... | |
Namespaces | |
namespace | llvm |
This is an optimization pass for GlobalISel generic memory operations. | |
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. Constants 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.