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

A derived class from InstMapEntry for other type of operations. More...

#include <CGRAInstMap.hpp>

Inheritance diagram for CGRAOmp::OtherOpMapEntry:
CGRAOmp::InstMapEntry

Public Member Functions

 OtherOpMapEntry (StringRef opcode, Instruction::TermOps ops)
 Construct a new OtherOpMapEntry object for terminator instructions. More...
 
 OtherOpMapEntry (StringRef opcode, Instruction::CastOps ops)
 Construct a new OtherOpMapEntry object for cast instructions. More...
 
 OtherOpMapEntry (StringRef opcode, Instruction::OtherOps ops)
 Construct a new OtherOpMapEntry object for other instructions. More...
 
template<typename OpEnumTy >
 OtherOpMapEntry (StringRef opcode, OpEnumTy ops, MapCondition *cond)
 Construct a new OtherOpMapEntry object with an initial MapCondition instance. More...
 
bool match (Instruction *I)
 Derived function from InstMapEntry::match specilized for other operators. 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 OtherOp
 

Private Types

enum  OptCategory { OptCategory::Terminator, OptCategory::Cast, OptCategory::Other }
 

Private Attributes

OptCategory cat
 
Instruction::OtherOps other_ops
 
Instruction::TermOps term_ops
 
Instruction::CastOps cast_ops
 

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 other type of operations.

Member Enumeration Documentation

◆ OptCategory

Enumerator
Terminator 
Cast 
Other 

Constructor & Destructor Documentation

◆ OtherOpMapEntry() [1/4]

CGRAOmp::OtherOpMapEntry::OtherOpMapEntry ( StringRef  opcode,
Instruction::TermOps  ops 
)
inline

Construct a new OtherOpMapEntry object for terminator instructions.

Parameters
opcodestring of the instruction opcode
opsa type of terminator operations

◆ OtherOpMapEntry() [2/4]

CGRAOmp::OtherOpMapEntry::OtherOpMapEntry ( StringRef  opcode,
Instruction::CastOps  ops 
)
inline

Construct a new OtherOpMapEntry object for cast instructions.

Parameters
opcodestring of the instruction opcode
opsa type of cast operations

◆ OtherOpMapEntry() [3/4]

CGRAOmp::OtherOpMapEntry::OtherOpMapEntry ( StringRef  opcode,
Instruction::OtherOps  ops 
)
inline

Construct a new OtherOpMapEntry object for other instructions.

Parameters
opcodestring of the instruction opcode
opsa type of other operations

◆ OtherOpMapEntry() [4/4]

template<typename OpEnumTy >
CGRAOmp::OtherOpMapEntry::OtherOpMapEntry ( StringRef  opcode,
OpEnumTy  ops,
MapCondition cond 
)
inline

Construct a new OtherOpMapEntry object with an initial MapCondition instance.

Template Parameters
OpEnumTyenumeration type of opcode
Parameters
opcodestring of the instruction opcode
opsa type of binary operations
condmapping condition

Member Function Documentation

◆ classof()

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

◆ match()

bool OtherOpMapEntry::match ( Instruction *  I)
virtual

Derived function from InstMapEntry::match specilized for other operators.

Implements CGRAOmp::InstMapEntry.

Member Data Documentation

◆ cast_ops

Instruction::CastOps CGRAOmp::OtherOpMapEntry::cast_ops
private

◆ cat

OptCategory CGRAOmp::OtherOpMapEntry::cat
private

◆ other_ops

Instruction::OtherOps CGRAOmp::OtherOpMapEntry::other_ops
private

◆ OtherOp

constexpr InstMapEntry::InstMapKind CGRAOmp::OtherOpMapEntry::OtherOp
staticconstexpr

◆ term_ops

Instruction::TermOps CGRAOmp::OtherOpMapEntry::term_ops
private

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