CGRAOmp  0.1
Public Member Functions | Static Public Member Functions | Static Public Attributes | Private Attributes | List of all members
CGRAOmp::MemoryOpMapEntry Class Reference

A derived class from InstMapEntry for memory operation. More...

#include <CGRAInstMap.hpp>

Inheritance diagram for CGRAOmp::MemoryOpMapEntry:
CGRAOmp::InstMapEntry

Public Member Functions

 MemoryOpMapEntry (StringRef opcode, Instruction::MemoryOps kind)
 Construct a new MemoryOpMapEntry object. More...
 
 MemoryOpMapEntry (StringRef opcode, Instruction::MemoryOps kind, MapCondition *cond)
 Construct a new MemoryOpMapEntry object. More...
 
bool match (Instruction *I)
 Derived function from InstMapEntry::match specilized for memory operation. More...
 
- Public Member Functions inherited from CGRAOmp::InstMapEntry
 InstMapEntry (StringRef opcode, InstMapKind Kind)
 Construct a new InstMapEntry object. More...
 
 InstMapEntry (StringRef opcode, InstMapKind Kind, MapCondition *cond)
 Construct a new InstMapEntry object with an initial MapCondition instance. More...
 
 ~InstMapEntry ()
 
void addMapping (MapCondition *cond)
 set a mapping condition More...
 
virtual bool match (StringRef opcode)
 check this entry is for the specified instruction This will not check the mapping condition. More...
 
virtual std::string getMapName ()
 get the map name of this entry More...
 
void print (raw_ostream &OS)
 
void dump ()
 
InstMapKind getKind () const
 

Static Public Member Functions

static bool classof (const InstMapEntry *imap)
 

Static Public Attributes

static constexpr InstMapEntry::InstMapKind MemOp
 

Private Attributes

Instruction::MemoryOps mem_kind
 

Additional Inherited Members

- Public Types inherited from CGRAOmp::InstMapEntry
enum  InstMapKind {
  InstMapKind::BinaryOp, InstMapKind::CompOp, InstMapKind::MemOp, InstMapKind::CustomOp,
  InstMapKind::OtherOp
}
 
- Protected Attributes inherited from CGRAOmp::InstMapEntry
MapConditionmap_cond
 
std::string opcode_str
 

Detailed Description

A derived class from InstMapEntry for memory operation.

Constructor & Destructor Documentation

◆ MemoryOpMapEntry() [1/2]

CGRAOmp::MemoryOpMapEntry::MemoryOpMapEntry ( StringRef  opcode,
Instruction::MemoryOps  kind 
)
inline

Construct a new MemoryOpMapEntry object.

Parameters
opcodestring of the instruction opcode
kinda type of memory instruction

◆ MemoryOpMapEntry() [2/2]

CGRAOmp::MemoryOpMapEntry::MemoryOpMapEntry ( StringRef  opcode,
Instruction::MemoryOps  kind,
MapCondition cond 
)
inline

Construct a new MemoryOpMapEntry object.

Parameters
opcodestring of the instruction opcode
kinda type of memory instruction
condmapping condition

Member Function Documentation

◆ classof()

static bool CGRAOmp::MemoryOpMapEntry::classof ( const InstMapEntry imap)
inlinestatic

◆ match()

bool MemoryOpMapEntry::match ( Instruction *  I)
virtual

Derived function from InstMapEntry::match specilized for memory operation.

Currently, only load and store instructions are considered

Implements CGRAOmp::InstMapEntry.

Member Data Documentation

◆ mem_kind

Instruction::MemoryOps CGRAOmp::MemoryOpMapEntry::mem_kind
private

◆ MemOp

constexpr InstMapEntry::InstMapKind CGRAOmp::MemoryOpMapEntry::MemOp
staticconstexpr

The documentation for this class was generated from the following files:
CGRAOmp::InstMapEntry::InstMapKind::MemOp
@ MemOp