class BasicExpression
Declaration
class BasicExpression : public Expression { /* full declaration omitted */ };
Declared at: llvm/include/llvm/Transforms/Scalar/GVNExpression.h:136
Inherits from: Expression
Member Variables
- private llvm::Value** Operands = nullptr
- private unsigned int MaxOperands
- private unsigned int NumOperands = 0
- private llvm::Type* ValueType = nullptr
Method Overview
- public BasicExpression(unsigned int NumOperands, llvm::GVNExpression::ExpressionType ET)
- public BasicExpression()
- public BasicExpression(const llvm::GVNExpression::BasicExpression &)
- public BasicExpression(unsigned int NumOperands)
- public void allocateOperands(llvm::GVNExpression::BasicExpression::RecyclerType & Recycler, llvm::BumpPtrAllocator & Allocator)
- public static bool classof(const llvm::GVNExpression::Expression * EB)
- public void deallocateOperands(llvm::GVNExpression::BasicExpression::RecyclerType & Recycler)
- public bool equals(const llvm::GVNExpression::Expression & Other) const
- public llvm::hash_code getHashValue() const
- public unsigned int getNumOperands() const
- public llvm::Value * getOperand(unsigned int N) const
- public llvm::Type * getType() const
- public llvm::GVNExpression::BasicExpression::const_op_iterator op_begin() const
- public llvm::GVNExpression::BasicExpression::op_iterator op_begin()
- public bool op_empty() const
- public llvm::GVNExpression::BasicExpression::const_op_iterator op_end() const
- public llvm::GVNExpression::BasicExpression::op_iterator op_end()
- public void op_push_back(llvm::Value * Arg)
- public iterator_range<llvm::GVNExpression::BasicExpression::op_iterator> operands()
- public iterator_range<llvm::GVNExpression::BasicExpression::const_op_iterator> operands() const
- public void printInternal(llvm::raw_ostream & OS, bool PrintEType) const
- public void setOperand(unsigned int N, llvm::Value * V)
- public void setType(llvm::Type * T)
- public void swapOperands(unsigned int First, unsigned int Second)
- public ~BasicExpression()
Inherited from Expression:
- public dump
- public equals
- public exactlyEquals
- public getComputedHash
- public getEmptyKey
- public getExpressionType
- public getHashValue
- public getOpcode
- public getTombstoneKey
- public print
- public printInternal
- public setOpcode
Methods
¶BasicExpression(
unsigned int NumOperands,
llvm::GVNExpression::ExpressionType ET)
BasicExpression(
unsigned int NumOperands,
llvm::GVNExpression::ExpressionType ET)
Declared at: llvm/include/llvm/Transforms/Scalar/GVNExpression.h:149
Parameters
- unsigned int NumOperands
- llvm::GVNExpression::ExpressionType ET
¶BasicExpression()
BasicExpression()
Declared at: llvm/include/llvm/Transforms/Scalar/GVNExpression.h:151
¶BasicExpression(
const llvm::GVNExpression::BasicExpression&)
BasicExpression(
const llvm::GVNExpression::BasicExpression&)
Declared at: llvm/include/llvm/Transforms/Scalar/GVNExpression.h:152
Parameters
¶BasicExpression(unsigned int NumOperands)
BasicExpression(unsigned int NumOperands)
Declared at: llvm/include/llvm/Transforms/Scalar/GVNExpression.h:147
Parameters
- unsigned int NumOperands
¶void allocateOperands(
llvm::GVNExpression::BasicExpression::
RecyclerType& Recycler,
llvm::BumpPtrAllocator& Allocator)
void allocateOperands(
llvm::GVNExpression::BasicExpression::
RecyclerType& Recycler,
llvm::BumpPtrAllocator& Allocator)
Declared at: llvm/include/llvm/Transforms/Scalar/GVNExpression.h:202
Parameters
- llvm::GVNExpression::BasicExpression:: RecyclerType& Recycler
- llvm::BumpPtrAllocator& Allocator
¶static bool classof(
const llvm::GVNExpression::Expression* EB)
static bool classof(
const llvm::GVNExpression::Expression* EB)
Declared at: llvm/include/llvm/Transforms/Scalar/GVNExpression.h:156
Parameters
- const llvm::GVNExpression::Expression* EB
¶void deallocateOperands(
llvm::GVNExpression::BasicExpression::
RecyclerType& Recycler)
void deallocateOperands(
llvm::GVNExpression::BasicExpression::
RecyclerType& Recycler)
Declared at: llvm/include/llvm/Transforms/Scalar/GVNExpression.h:206
Parameters
- llvm::GVNExpression::BasicExpression:: RecyclerType& Recycler
¶bool equals(const llvm::GVNExpression::Expression&
Other) const
bool equals(const llvm::GVNExpression::Expression&
Other) const
Declared at: llvm/include/llvm/Transforms/Scalar/GVNExpression.h:213
Parameters
- const llvm::GVNExpression::Expression& Other
¶llvm::hash_code getHashValue() const
llvm::hash_code getHashValue() const
Declared at: llvm/include/llvm/Transforms/Scalar/GVNExpression.h:222
¶unsigned int getNumOperands() const
unsigned int getNumOperands() const
Declared at: llvm/include/llvm/Transforms/Scalar/GVNExpression.h:179
¶llvm::Value* getOperand(unsigned int N) const
llvm::Value* getOperand(unsigned int N) const
Declared at: llvm/include/llvm/Transforms/Scalar/GVNExpression.h:167
Parameters
- unsigned int N
¶llvm::Type* getType() const
llvm::Type* getType() const
Declared at: llvm/include/llvm/Transforms/Scalar/GVNExpression.h:211
¶llvm::GVNExpression::BasicExpression::
const_op_iterator
op_begin() const
llvm::GVNExpression::BasicExpression::
const_op_iterator
op_begin() const
Declared at: llvm/include/llvm/Transforms/Scalar/GVNExpression.h:186
¶llvm::GVNExpression::BasicExpression::op_iterator
op_begin()
llvm::GVNExpression::BasicExpression::op_iterator
op_begin()
Declared at: llvm/include/llvm/Transforms/Scalar/GVNExpression.h:184
¶bool op_empty() const
bool op_empty() const
Declared at: llvm/include/llvm/Transforms/Scalar/GVNExpression.h:200
¶llvm::GVNExpression::BasicExpression::
const_op_iterator
op_end() const
llvm::GVNExpression::BasicExpression::
const_op_iterator
op_end() const
Declared at: llvm/include/llvm/Transforms/Scalar/GVNExpression.h:187
¶llvm::GVNExpression::BasicExpression::op_iterator
op_end()
llvm::GVNExpression::BasicExpression::op_iterator
op_end()
Declared at: llvm/include/llvm/Transforms/Scalar/GVNExpression.h:185
¶void op_push_back(llvm::Value* Arg)
void op_push_back(llvm::Value* Arg)
Declared at: llvm/include/llvm/Transforms/Scalar/GVNExpression.h:195
Parameters
- llvm::Value* Arg
¶iterator_range<llvm::GVNExpression::
BasicExpression::op_iterator>
operands()
iterator_range<llvm::GVNExpression::
BasicExpression::op_iterator>
operands()
Declared at: llvm/include/llvm/Transforms/Scalar/GVNExpression.h:188
¶iterator_range<
llvm::GVNExpression::BasicExpression::
const_op_iterator>
operands() const
iterator_range<
llvm::GVNExpression::BasicExpression::
const_op_iterator>
operands() const
Declared at: llvm/include/llvm/Transforms/Scalar/GVNExpression.h:191
¶void printInternal(llvm::raw_ostream& OS,
bool PrintEType) const
void printInternal(llvm::raw_ostream& OS,
bool PrintEType) const
Declared at: llvm/include/llvm/Transforms/Scalar/GVNExpression.h:228
Parameters
- llvm::raw_ostream& OS
- bool PrintEType
¶void setOperand(unsigned int N, llvm::Value* V)
void setOperand(unsigned int N, llvm::Value* V)
Declared at: llvm/include/llvm/Transforms/Scalar/GVNExpression.h:173
Parameters
- unsigned int N
- llvm::Value* V
¶void setType(llvm::Type* T)
void setType(llvm::Type* T)
Declared at: llvm/include/llvm/Transforms/Scalar/GVNExpression.h:210
Parameters
- llvm::Type* T
¶void swapOperands(unsigned int First,
unsigned int Second)
void swapOperands(unsigned int First,
unsigned int Second)
Description
Swap two operands. Used during GVN to put commutative operands in order.
Declared at: llvm/include/llvm/Transforms/Scalar/GVNExpression.h:163
Parameters
- unsigned int First
- unsigned int Second
¶~BasicExpression()
~BasicExpression()
Declared at: llvm/include/llvm/Transforms/Scalar/GVNExpression.h:154