CGRAOmp  0.1
Public Member Functions | Static Public Member Functions | List of all members
CGRAOmp::TMCGRA Class Reference

CGRA model for category "time-multiplexed". More...

#include <CGRAModel.hpp>

Inheritance diagram for CGRAOmp::TMCGRA:
CGRAOmp::CGRAModel

Public Member Functions

 TMCGRA (StringRef filename)
 Construct a new time-multiplexed CGRA object. More...
 
 TMCGRA (const TMCGRA &)
 
- Public Member Functions inherited from CGRAOmp::CGRAModel
 CGRAModel (StringRef filename, CGRACategory category, ConditionalStyle cond, InterLoopDep inter_loop_dep)
 Construct a new CGRAModel object. More...
 
 CGRAModel ()=delete
 
 CGRAModel (const CGRAModel &)=default
 Copy constructor. More...
 
 CGRAModel (CGRAModel &&)=default
 Move constructor. More...
 
Error addSupportedInst (StringRef opcode)
 add a supported generic insturction for the CGRA More...
 
void addCustomInst (StringRef opcode, ModuleAnalysisManager &MAM)
 add a custom insturction for the CGRA More...
 
Error add_map_entry (StringRef opcode, MapCondition *map_cond)
 add a instruction mapping entry to the CGRA model More...
 
InstMapEntryisSupported (Instruction *I)
 checking whether the instruction is supported by the CGRA or not. More...
 
template<typename DerivedT >
DerivedT * asDerived ()
 an interface to down cast to derived classes More...
 
CGRACategory getKind () const
 Get the category of the CGRA. More...
 
InterLoopDep getInterLoopDepType () const
 Get the Inter Loop Dependency avility. More...
 

Static Public Member Functions

static bool classof (const CGRAModel *M)
 for downcasting from CGRAModel by llvm::dyn_cast More...
 

Additional Inherited Members

- Public Types inherited from CGRAOmp::CGRAModel
enum  CGRACategory { CGRACategory::TimeMultiplexed, CGRACategory::Decoupled }
 a category of the CGRA model More...
 
enum  ConditionalStyle { ConditionalStyle::No, ConditionalStyle::MuxInst, ConditionalStyle::TriState }
 Ability to handle conditional execution (i.e., if-else part) More...
 
enum  InterLoopDep { InterLoopDep::No, InterLoopDep::Generic, InterLoopDep::BackwardInst }
 How to describe the inter-loop dependecy. More...
 
- Static Public Attributes inherited from CGRAOmp::CGRAModel
static StringMap< CGRACategoryCategoryMap
 Map category string to CGRACategory. More...
 
static StringMap< ConditionalStyleCondStyleMap
 Map category string to ConditionalStyle. More...
 
static StringMap< InterLoopDepInterLoopDepMap
 Map category string to InterLoopDep. More...
 
- Protected Attributes inherited from CGRAOmp::CGRAModel
StringRef filename
 
ConditionalStyle cond
 
InterLoopDep inter_loop_dep
 
CGRACategory category
 
InstMap inst_map
 

Detailed Description

CGRA model for category "time-multiplexed".

Constructor & Destructor Documentation

◆ TMCGRA() [1/2]

CGRAOmp::TMCGRA::TMCGRA ( StringRef  filename)
inlineexplicit

Construct a new time-multiplexed CGRA object.

Parameters
filenamefilename of the config file

◆ TMCGRA() [2/2]

TMCGRA::TMCGRA ( const TMCGRA rhs)

Member Function Documentation

◆ classof()

static bool CGRAOmp::TMCGRA::classof ( const CGRAModel M)
inlinestatic

for downcasting from CGRAModel by llvm::dyn_cast


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