class Evaluator::MutableValue
Declaration
class Evaluator::MutableValue { /* full declaration omitted */ };
Description
The evaluator represents values either as a Constant*, or as a MutableAggregate, which allows changing individual aggregate elements without creating a new interned Constant.
Declared at: llvm/include/llvm/Transforms/Utils/Evaluator.h:43
Member Variables
- private PointerUnion<llvm::Constant*, llvm::Evaluator::MutableAggregate*> Val
Method Overview
- public MutableValue(llvm::Constant * C)
- public MutableValue(const llvm::Evaluator::MutableValue &)
- public MutableValue(llvm::Evaluator::MutableValue && Other)
- private void clear()
- public llvm::Type * getType() const
- private bool makeMutable()
- public llvm::Constant * read(llvm::Type * Ty, llvm::APInt Offset, const llvm::DataLayout & DL) const
- public llvm::Constant * toConstant() const
- public bool write(llvm::Constant * V, llvm::APInt Offset, const llvm::DataLayout & DL)
- public ~MutableValue()
Methods
¶MutableValue(llvm::Constant* C)
MutableValue(llvm::Constant* C)
Declared at: llvm/include/llvm/Transforms/Utils/Evaluator.h:49
Parameters
¶MutableValue(const llvm::Evaluator::MutableValue&)
MutableValue(const llvm::Evaluator::MutableValue&)
Declared at: llvm/include/llvm/Transforms/Utils/Evaluator.h:50
Parameters
¶MutableValue(
llvm::Evaluator::MutableValue&& Other)
MutableValue(
llvm::Evaluator::MutableValue&& Other)
Declared at: llvm/include/llvm/Transforms/Utils/Evaluator.h:51
Parameters
- llvm::Evaluator::MutableValue&& Other
¶void clear()
void clear()
Declared at: llvm/include/llvm/Transforms/Utils/Evaluator.h:45
¶llvm::Type* getType() const
llvm::Type* getType() const
Declared at: llvm/include/llvm/Transforms/Utils/Evaluator.h:57
¶bool makeMutable()
bool makeMutable()
Declared at: llvm/include/llvm/Transforms/Utils/Evaluator.h:46
¶llvm::Constant* read(
llvm::Type* Ty,
llvm::APInt Offset,
const llvm::DataLayout& DL) const
llvm::Constant* read(
llvm::Type* Ty,
llvm::APInt Offset,
const llvm::DataLayout& DL) const
Declared at: llvm/include/llvm/Transforms/Utils/Evaluator.h:69
Parameters
- llvm::Type* Ty
- llvm::APInt Offset
- const llvm::DataLayout& DL
¶llvm::Constant* toConstant() const
llvm::Constant* toConstant() const
Declared at: llvm/include/llvm/Transforms/Utils/Evaluator.h:63
¶bool write(llvm::Constant* V,
llvm::APInt Offset,
const llvm::DataLayout& DL)
bool write(llvm::Constant* V,
llvm::APInt Offset,
const llvm::DataLayout& DL)
Declared at: llvm/include/llvm/Transforms/Utils/Evaluator.h:70
Parameters
- llvm::Constant* V
- llvm::APInt Offset
- const llvm::DataLayout& DL
¶~MutableValue()
~MutableValue()
Declared at: llvm/include/llvm/Transforms/Utils/Evaluator.h:55