LLVM 22.0.0git
llvm::GVNExpression::AggregateValueExpression Class Referencefinal

#include "llvm/Transforms/Scalar/GVNExpression.h"

Inheritance diagram for llvm::GVNExpression::AggregateValueExpression:
[legend]

Public Types

using int_arg_iterator = unsigned *
using const_int_arg_iterator = const unsigned *
Public Types inherited from llvm::GVNExpression::BasicExpression
using op_iterator = Value **
using const_op_iterator = Value *const *

Public Member Functions

 AggregateValueExpression (unsigned NumOperands, unsigned NumIntOperands)
 AggregateValueExpression ()=delete
 AggregateValueExpression (const AggregateValueExpression &)=delete
AggregateValueExpressionoperator= (const AggregateValueExpression &)=delete
 ~AggregateValueExpression () override
int_arg_iterator int_op_begin ()
int_arg_iterator int_op_end ()
const_int_arg_iterator int_op_begin () const
const_int_arg_iterator int_op_end () const
unsigned int_op_size () const
bool int_op_empty () const
void int_op_push_back (unsigned IntOperand)
void allocateIntOperands (BumpPtrAllocator &Allocator)
bool equals (const Expression &Other) const override
hash_code getHashValue () const override
void printInternal (raw_ostream &OS, bool PrintEType) const override
Public Member Functions inherited from llvm::GVNExpression::BasicExpression
 BasicExpression (unsigned NumOperands)
 BasicExpression (unsigned NumOperands, ExpressionType ET)
 BasicExpression ()=delete
 BasicExpression (const BasicExpression &)=delete
BasicExpressionoperator= (const BasicExpression &)=delete
 ~BasicExpression () override
void swapOperands (unsigned First, unsigned Second)
 Swap two operands.
ValuegetOperand (unsigned N) const
void setOperand (unsigned N, Value *V)
unsigned getNumOperands () const
op_iterator op_begin ()
op_iterator op_end ()
const_op_iterator op_begin () const
const_op_iterator op_end () const
iterator_range< op_iteratoroperands ()
iterator_range< const_op_iteratoroperands () const
void op_push_back (Value *Arg)
bool op_empty () const
void allocateOperands (RecyclerType &Recycler, BumpPtrAllocator &Allocator)
void deallocateOperands (RecyclerType &Recycler)
void setType (Type *T)
TypegetType () const
bool equals (const Expression &Other) const override
hash_code getHashValue () const override
void printInternal (raw_ostream &OS, bool PrintEType) const override
Public Member Functions inherited from llvm::GVNExpression::Expression
 Expression (ExpressionType ET=ET_Base, unsigned O=~2U)
 Expression (const Expression &)=delete
Expressionoperator= (const Expression &)=delete
virtual ~Expression ()
bool operator!= (const Expression &Other) const
bool operator== (const Expression &Other) const
hash_code getComputedHash () const
virtual bool exactlyEquals (const Expression &Other) const
unsigned getOpcode () const
void setOpcode (unsigned opcode)
ExpressionType getExpressionType () const
void print (raw_ostream &OS) const
LLVM_DUMP_METHOD void dump () const

Static Public Member Functions

static bool classof (const Expression *EB)
Static Public Member Functions inherited from llvm::GVNExpression::BasicExpression
static bool classof (const Expression *EB)
Static Public Member Functions inherited from llvm::GVNExpression::Expression
static unsigned getEmptyKey ()
static unsigned getTombstoneKey ()

Detailed Description

Definition at line 417 of file GVNExpression.h.

Member Typedef Documentation

◆ const_int_arg_iterator

◆ int_arg_iterator

Constructor & Destructor Documentation

◆ AggregateValueExpression() [1/3]

llvm::GVNExpression::AggregateValueExpression::AggregateValueExpression ( unsigned NumOperands,
unsigned NumIntOperands )
inline

◆ AggregateValueExpression() [2/3]

llvm::GVNExpression::AggregateValueExpression::AggregateValueExpression ( )
delete

◆ AggregateValueExpression() [3/3]

llvm::GVNExpression::AggregateValueExpression::AggregateValueExpression ( const AggregateValueExpression & )
delete

◆ ~AggregateValueExpression()

llvm::GVNExpression::AggregateValueExpression::~AggregateValueExpression ( )
overridedefault

Member Function Documentation

◆ allocateIntOperands()

void llvm::GVNExpression::AggregateValueExpression::allocateIntOperands ( BumpPtrAllocator & Allocator)
inline

Definition at line 455 of file GVNExpression.h.

References Allocator, and assert().

◆ classof()

bool llvm::GVNExpression::AggregateValueExpression::classof ( const Expression * EB)
inlinestatic

◆ equals()

bool llvm::GVNExpression::AggregateValueExpression::equals ( const Expression & Other) const
inlineoverridevirtual

◆ getHashValue()

hash_code llvm::GVNExpression::AggregateValueExpression::getHashValue ( ) const
inlineoverridevirtual

◆ int_op_begin() [1/2]

int_arg_iterator llvm::GVNExpression::AggregateValueExpression::int_op_begin ( )
inline

Definition at line 440 of file GVNExpression.h.

Referenced by equals(), and getHashValue().

◆ int_op_begin() [2/2]

const_int_arg_iterator llvm::GVNExpression::AggregateValueExpression::int_op_begin ( ) const
inline

Definition at line 442 of file GVNExpression.h.

◆ int_op_empty()

bool llvm::GVNExpression::AggregateValueExpression::int_op_empty ( ) const
inline

Definition at line 447 of file GVNExpression.h.

◆ int_op_end() [1/2]

int_arg_iterator llvm::GVNExpression::AggregateValueExpression::int_op_end ( )
inline

Definition at line 441 of file GVNExpression.h.

Referenced by equals(), and getHashValue().

◆ int_op_end() [2/2]

const_int_arg_iterator llvm::GVNExpression::AggregateValueExpression::int_op_end ( ) const
inline

Definition at line 443 of file GVNExpression.h.

◆ int_op_push_back()

void llvm::GVNExpression::AggregateValueExpression::int_op_push_back ( unsigned IntOperand)
inline

Definition at line 448 of file GVNExpression.h.

References assert().

◆ int_op_size()

unsigned llvm::GVNExpression::AggregateValueExpression::int_op_size ( ) const
inline

Definition at line 446 of file GVNExpression.h.

Referenced by printInternal().

◆ operator=()

AggregateValueExpression & llvm::GVNExpression::AggregateValueExpression::operator= ( const AggregateValueExpression & )
delete

◆ printInternal()

void llvm::GVNExpression::AggregateValueExpression::printInternal ( raw_ostream & OS,
bool PrintEType ) const
inlineoverridevirtual

The documentation for this class was generated from the following files: