LLVM  4.0.0
Public Member Functions | Static Public Member Functions | List of all members
llvm::GVNExpression::LoadExpression Class Referencefinal

#include <GVNExpression.h>

Inheritance diagram for llvm::GVNExpression::LoadExpression:
[legend]
Collaboration diagram for llvm::GVNExpression::LoadExpression:
[legend]

Public Member Functions

 LoadExpression (unsigned NumOperands, LoadInst *L, MemoryAccess *DA)
 
 LoadExpression (enum ExpressionType EType, unsigned NumOperands, LoadInst *L, MemoryAccess *DA)
 
void operator= (const LoadExpression &)=delete
 
 LoadExpression (const LoadExpression &)=delete
 
 LoadExpression ()=delete
 
virtual ~LoadExpression () override
 
LoadInstgetLoadInst () const
 
void setLoadInst (LoadInst *L)
 
MemoryAccessgetDefiningAccess () const
 
void setDefiningAccess (MemoryAccess *MA)
 
unsigned getAlignment () const
 
void setAlignment (unsigned Align)
 
virtual bool equals (const Expression &Other) const override
 
virtual hash_code getHashValue () const override
 
virtual 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)
 
virtual ~BasicExpression () override
 
void operator= (const BasicExpression &)=delete
 
 BasicExpression (const BasicExpression &)=delete
 
 BasicExpression ()=delete
 
void swapOperands (unsigned First, unsigned Second)
 Swap two operands. More...
 
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
 
- Public Member Functions inherited from llvm::GVNExpression::Expression
 Expression (const Expression &)=delete
 
 Expression (ExpressionType ET=ET_Base, unsigned O=~2U)
 
void operator= (const Expression &)=delete
 
virtual ~Expression ()
 
bool operator== (const Expression &Other) const
 
unsigned getOpcode () const
 
void setOpcode (unsigned opcode)
 
ExpressionType getExpressionType () const
 
void print (raw_ostream &OS) const
 
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 ()
 

Additional Inherited Members

- Public Types inherited from llvm::GVNExpression::BasicExpression
typedef Value ** op_iterator
 
typedef Value *constconst_op_iterator
 

Detailed Description

Definition at line 277 of file GVNExpression.h.

Constructor & Destructor Documentation

llvm::GVNExpression::LoadExpression::LoadExpression ( unsigned  NumOperands,
LoadInst L,
MemoryAccess DA 
)
inline

Definition at line 288 of file GVNExpression.h.

llvm::GVNExpression::LoadExpression::LoadExpression ( enum ExpressionType  EType,
unsigned  NumOperands,
LoadInst L,
MemoryAccess DA 
)
inline

Definition at line 290 of file GVNExpression.h.

References llvm::LoadInst::getAlignment().

llvm::GVNExpression::LoadExpression::LoadExpression ( const LoadExpression )
delete
llvm::GVNExpression::LoadExpression::LoadExpression ( )
delete
llvm::GVNExpression::LoadExpression::~LoadExpression ( )
overridevirtualdefault

Member Function Documentation

static bool llvm::GVNExpression::LoadExpression::classof ( const Expression EB)
inlinestatic
bool LoadExpression::equals ( const Expression Other) const
overridevirtual

Reimplemented from llvm::GVNExpression::BasicExpression.

Definition at line 389 of file NewGVN.cpp.

References equalsLoadStoreHelper().

unsigned llvm::GVNExpression::LoadExpression::getAlignment ( ) const
inline

Definition at line 305 of file GVNExpression.h.

MemoryAccess* llvm::GVNExpression::LoadExpression::getDefiningAccess ( ) const
inline

Definition at line 303 of file GVNExpression.h.

virtual hash_code llvm::GVNExpression::LoadExpression::getHashValue ( ) const
inlineoverridevirtual
LoadInst* llvm::GVNExpression::LoadExpression::getLoadInst ( ) const
inline

Definition at line 300 of file GVNExpression.h.

void llvm::GVNExpression::LoadExpression::operator= ( const LoadExpression )
delete
virtual void llvm::GVNExpression::LoadExpression::printInternal ( raw_ostream OS,
bool  PrintEType 
) const
inlineoverridevirtual
void llvm::GVNExpression::LoadExpression::setAlignment ( unsigned  Align)
inline

Definition at line 306 of file GVNExpression.h.

void llvm::GVNExpression::LoadExpression::setDefiningAccess ( MemoryAccess MA)
inline

Definition at line 304 of file GVNExpression.h.

void llvm::GVNExpression::LoadExpression::setLoadInst ( LoadInst L)
inline

Definition at line 301 of file GVNExpression.h.

References L.


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