|
CGRAOmp
0.1
|
A base class of CGRA model for DFG extraction. More...
#include <CGRAModel.hpp>
Public Types | |
| 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... | |
Public Member Functions | |
| 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... | |
| InstMapEntry * | isSupported (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 Attributes | |
| static StringMap< CGRACategory > | CategoryMap |
| Map category string to CGRACategory. More... | |
| static StringMap< ConditionalStyle > | CondStyleMap |
| Map category string to ConditionalStyle. More... | |
| static StringMap< InterLoopDep > | InterLoopDepMap |
| Map category string to InterLoopDep. More... | |
Protected Attributes | |
| StringRef | filename |
| ConditionalStyle | cond |
| InterLoopDep | inter_loop_dep |
| CGRACategory | category |
| InstMap | inst_map |
A base class of CGRA model for DFG extraction.
|
strong |
|
strong |
|
strong |
|
inlineexplicit |
Construct a new CGRAModel object.
| filename | filename of the configration file |
| category | category of the CGRA |
| cond | conditional style of the CGRA |
| inter_loop_dep | ability to handle inter loop dependency |
|
delete |
|
default |
Copy constructor.
|
default |
Move constructor.
| Error CGRAModel::add_map_entry | ( | StringRef | opcode, |
| MapCondition * | map_cond | ||
| ) |
add a instruction mapping entry to the CGRA model
| opcode | opcode of the instruction to be replaced |
| map_cond | a mapping condition |
| void CGRAModel::addCustomInst | ( | StringRef | opcode, |
| ModuleAnalysisManager & | MAM | ||
| ) |
add a custom insturction for the CGRA
| opcode | opcode of the instruction
|
| MAM | ModuleAnalysisManager |
| Error CGRAModel::addSupportedInst | ( | StringRef | opcode | ) |
add a supported generic insturction for the CGRA
| opcode | opcode of the instruction
|
|
inline |
an interface to down cast to derived classes
| DerivedT | derived class named |
|
inline |
Get the Inter Loop Dependency avility.
|
inline |
Get the category of the CGRA.
| InstMapEntry * CGRAModel::isSupported | ( | Instruction * | I | ) |
checking whether the instruction is supported by the CGRA or not.
| I | an instruction |
|
protected |
|
static |
Map category string to CGRACategory.
|
protected |
|
static |
Map category string to ConditionalStyle.
|
protected |
|
protected |
|
protected |
|
static |
Map category string to InterLoopDep.
1.8.17