systemc-clang 2.0.0
Parsing SystemC constructs
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Private Attributes | List of all members
systemc_clang::GlobalSuspensionAutomata Class Reference

#include <GlobalSuspensionAutomata.h>

Inheritance diagram for systemc_clang::GlobalSuspensionAutomata:
Inheritance graph
[legend]
Collaboration diagram for systemc_clang::GlobalSuspensionAutomata:
Collaboration graph
[legend]

Public Types

typedef pair< float, int > timePairType
 
typedef vector< Transition * > transitionVectorType
 
typedef pair< EntryFunctionContainer *, int > entryFunctionInstanceIdPairType
 
typedef map< EntryFunctionContainer *, int > entryFunctionInstanceIdMapType
 
typedef pair< entryFunctionInstanceIdPairType, transitionVectorTypeinstanceFunctionSautoPairType
 
typedef map< entryFunctionInstanceIdPairType, transitionVectorTypeinstanceFunctionSautoMapType
 
typedef pair< Transition *, timePairTypetransitionTimePairType
 
typedef map< Transition *, timePairTypetransitionTimeMapType
 
typedef pair< string, timePairTypeeventNotificationTimePairType
 
typedef map< string, timePairTypeeventNotificationTimeMapType
 
typedef pair< State *, vector< Transition * > > stateTransitionsPairType
 
typedef map< State *, vector< Transition * > > stateTransitionsMapType
 
typedef pair< Transition *, bool > visitTransitionPairType
 
typedef map< Transition *, bool > visitTransitionMapType
 
typedef pair< EntryFunctionContainer *, FindGPUMacro::forStmtGPUMacroMapTypeentryFunctionMacroPairType
 
typedef map< EntryFunctionContainer *, FindGPUMacro::forStmtGPUMacroMapTypeentryFunctionMacroMapType
 
typedef pair< SusCFG *, GPUMacro * > susCFGBlockGPUMacroPairType
 
typedef map< SusCFG *, GPUMacro * > susCFGBlockGPUMacroMapType
 
typedef pair< timePairType, vector< SusCFG * > > commonTimeDPPairType
 
typedef map< timePairType, vector< SusCFG * > > commonTimeDPMapType
 

Public Member Functions

 GlobalSuspensionAutomata (Model *, raw_ostream &, ASTContext *)
 
 ~GlobalSuspensionAutomata ()
 
bool updateTransitionTime (Transition *)
 
void updateEventNotificationTime (Transition *)
 
void getTransportType ()
 
void annotateTransitionsDPSeg (Transition *, int)
 
void initializeGpuMap ()
 
bool GPUMap (float, vector< SusCFG * >, float &)
 
vector< SusCFG * > arrangeGPUSusCFGBlocks (vector< SusCFG * >)
 
float maxTime (vector< SusCFG * >, unsigned int)
 
float max (float, float)
 
vector< SusCFG * > merge_sort (vector< SusCFG * >, vector< SusCFG * >)
 
void initialise ()
 
string getArgumentName (Expr *)
 
bool isNotifyCall (const CFGStmt *)
 
void genGSauto ()
 
string getNotifyEventName (const CFGStmt *)
 
void dump ()
 
transitionVectorType getGlobalSauto ()
 
transitionVectorType getTransitionsAtTime (timePairType)
 
transitionVectorType getOutgoingTransitions (State *)
 
transitionVectorType getIncomingTransitions (State *)
 
timePairType getTimeForTransition (Transition *)
 
instanceFunctionSautoMapType getInstanceFunctionSautoMap ()
 
transitionTimeMapType getTransitionTimeMap ()
 
susCFGBlockGPUMacroMapType getSusCFGBlockGPUMacroMap ()
 
entryFunctionMacroMapType getEntryFunctionMacroMap ()
 
- Public Member Functions inherited from systemc_clang::Utility
 Utility ()
 
void tabit (raw_ostream &os, int tabn)
 
string strip (string s, string sub)
 
template<typename vec >
vec removeDuplicate (vec vecInput)
 
template<typename vec , typename element >
bool isElementPresent (vec vecInput, element elemInput)
 
template<typename expressionArg >
string getArgumentName (expressionArg *exp)
 

Private Attributes

raw_ostream & _os
 
ASTContext * _a
 
transitionVectorType _globalSauto
 
Model_systemcModel
 
Model::moduleInstanceMapType _moduleInstanceMap
 
stateTransitionsMapType _incomingTransitionsMap
 
stateTransitionsMapType _outgoingTransitionsMap
 
instanceFunctionSautoMapType _instanceFunctionSautoMap
 
eventNotificationTimeMapType _eventNotificationTimeMap
 
transitionTimeMapType _transitionTimeMap
 
FindNotify::NotifyCallListType _notifyCalls
 
visitTransitionMapType _visitTransitionMap
 
entryFunctionMacroMapType _entryFunctionGPUMacroMap
 
susCFGBlockGPUMacroMapType _susCFGBlockGPUMacroMap
 
commonTimeDPMapType _commonTimeDPMap
 

Detailed Description

Definition at line 11 of file GlobalSuspensionAutomata.h.

Member Typedef Documentation

◆ commonTimeDPMapType

Definition at line 48 of file GlobalSuspensionAutomata.h.

◆ commonTimeDPPairType

Definition at line 47 of file GlobalSuspensionAutomata.h.

◆ entryFunctionInstanceIdMapType

Definition at line 20 of file GlobalSuspensionAutomata.h.

◆ entryFunctionInstanceIdPairType

Definition at line 19 of file GlobalSuspensionAutomata.h.

◆ entryFunctionMacroMapType

Definition at line 42 of file GlobalSuspensionAutomata.h.

◆ entryFunctionMacroPairType

Definition at line 40 of file GlobalSuspensionAutomata.h.

◆ eventNotificationTimeMapType

Definition at line 31 of file GlobalSuspensionAutomata.h.

◆ eventNotificationTimePairType

Definition at line 30 of file GlobalSuspensionAutomata.h.

◆ instanceFunctionSautoMapType

Definition at line 25 of file GlobalSuspensionAutomata.h.

◆ instanceFunctionSautoPairType

Definition at line 23 of file GlobalSuspensionAutomata.h.

◆ stateTransitionsMapType

Definition at line 34 of file GlobalSuspensionAutomata.h.

◆ stateTransitionsPairType

Definition at line 33 of file GlobalSuspensionAutomata.h.

◆ susCFGBlockGPUMacroMapType

Definition at line 45 of file GlobalSuspensionAutomata.h.

◆ susCFGBlockGPUMacroPairType

Definition at line 44 of file GlobalSuspensionAutomata.h.

◆ timePairType

Definition at line 16 of file GlobalSuspensionAutomata.h.

◆ transitionTimeMapType

Definition at line 28 of file GlobalSuspensionAutomata.h.

◆ transitionTimePairType

Definition at line 27 of file GlobalSuspensionAutomata.h.

◆ transitionVectorType

Definition at line 17 of file GlobalSuspensionAutomata.h.

◆ visitTransitionMapType

Definition at line 37 of file GlobalSuspensionAutomata.h.

◆ visitTransitionPairType

Definition at line 36 of file GlobalSuspensionAutomata.h.

Constructor & Destructor Documentation

◆ GlobalSuspensionAutomata()

GlobalSuspensionAutomata::GlobalSuspensionAutomata ( Model * systemCmodel,
raw_ostream & os,
ASTContext * a )

Definition at line 4 of file GlobalSuspensionAutomata.cpp.

◆ ~GlobalSuspensionAutomata()

GlobalSuspensionAutomata::~GlobalSuspensionAutomata ( )

Definition at line 9 of file GlobalSuspensionAutomata.cpp.

Member Function Documentation

◆ annotateTransitionsDPSeg()

void GlobalSuspensionAutomata::annotateTransitionsDPSeg ( Transition * t,
int instanceId )

Definition at line 302 of file GlobalSuspensionAutomata.cpp.

◆ arrangeGPUSusCFGBlocks()

vector< SusCFG * > GlobalSuspensionAutomata::arrangeGPUSusCFGBlocks ( vector< SusCFG * > gpuFitSusCFGVector)

Definition at line 237 of file GlobalSuspensionAutomata.cpp.

◆ dump()

void GlobalSuspensionAutomata::dump ( )

Definition at line 687 of file GlobalSuspensionAutomata.cpp.

◆ genGSauto()

void GlobalSuspensionAutomata::genGSauto ( )

Definition at line 635 of file GlobalSuspensionAutomata.cpp.

◆ getArgumentName()

string GlobalSuspensionAutomata::getArgumentName ( Expr * arg)

Definition at line 513 of file GlobalSuspensionAutomata.cpp.

◆ getEntryFunctionMacroMap()

GlobalSuspensionAutomata::entryFunctionMacroMapType GlobalSuspensionAutomata::getEntryFunctionMacroMap ( )

Definition at line 450 of file GlobalSuspensionAutomata.cpp.

◆ getGlobalSauto()

vector< Transition * > GlobalSuspensionAutomata::getGlobalSauto ( )

Definition at line 445 of file GlobalSuspensionAutomata.cpp.

◆ getIncomingTransitions()

vector< Transition * > GlobalSuspensionAutomata::getIncomingTransitions ( State * state)

Definition at line 483 of file GlobalSuspensionAutomata.cpp.

◆ getInstanceFunctionSautoMap()

instanceFunctionSautoMapType systemc_clang::GlobalSuspensionAutomata::getInstanceFunctionSautoMap ( )

◆ getNotifyEventName()

string GlobalSuspensionAutomata::getNotifyEventName ( const CFGStmt * cs)

Definition at line 526 of file GlobalSuspensionAutomata.cpp.

◆ getOutgoingTransitions()

vector< Transition * > GlobalSuspensionAutomata::getOutgoingTransitions ( State * state)

Definition at line 429 of file GlobalSuspensionAutomata.cpp.

◆ getSusCFGBlockGPUMacroMap()

GlobalSuspensionAutomata::susCFGBlockGPUMacroMapType GlobalSuspensionAutomata::getSusCFGBlockGPUMacroMap ( )

Definition at line 441 of file GlobalSuspensionAutomata.cpp.

◆ getTimeForTransition()

GlobalSuspensionAutomata::timePairType GlobalSuspensionAutomata::getTimeForTransition ( Transition * t)

Definition at line 474 of file GlobalSuspensionAutomata.cpp.

◆ getTransitionsAtTime()

vector< Transition * > GlobalSuspensionAutomata::getTransitionsAtTime ( timePairType tp)

Definition at line 455 of file GlobalSuspensionAutomata.cpp.

◆ getTransitionTimeMap()

GlobalSuspensionAutomata::transitionTimeMapType GlobalSuspensionAutomata::getTransitionTimeMap ( )

Definition at line 469 of file GlobalSuspensionAutomata.cpp.

◆ getTransportType()

void systemc_clang::GlobalSuspensionAutomata::getTransportType ( )

◆ GPUMap()

bool GlobalSuspensionAutomata::GPUMap ( float c_ideal,
vector< SusCFG * > susCFGBlockList,
float & c_actual )

_os <<"\n done arranging block list ==>";

Definition at line 139 of file GlobalSuspensionAutomata.cpp.

◆ initialise()

void GlobalSuspensionAutomata::initialise ( )

Definition at line 340 of file GlobalSuspensionAutomata.cpp.

◆ initializeGpuMap()

void GlobalSuspensionAutomata::initializeGpuMap ( )

Definition at line 11 of file GlobalSuspensionAutomata.cpp.

◆ isNotifyCall()

bool GlobalSuspensionAutomata::isNotifyCall ( const CFGStmt * cs)

Definition at line 496 of file GlobalSuspensionAutomata.cpp.

◆ max()

float GlobalSuspensionAutomata::max ( float a,
float b )

Definition at line 293 of file GlobalSuspensionAutomata.cpp.

◆ maxTime()

float systemc_clang::GlobalSuspensionAutomata::maxTime ( vector< SusCFG * > ,
unsigned int  )

◆ merge_sort()

vector< SusCFG * > GlobalSuspensionAutomata::merge_sort ( vector< SusCFG * > leftList,
vector< SusCFG * > rightList )

Definition at line 261 of file GlobalSuspensionAutomata.cpp.

◆ updateEventNotificationTime()

void GlobalSuspensionAutomata::updateEventNotificationTime ( Transition * tr)

Definition at line 537 of file GlobalSuspensionAutomata.cpp.

◆ updateTransitionTime()

bool GlobalSuspensionAutomata::updateTransitionTime ( Transition * tr)

Definition at line 569 of file GlobalSuspensionAutomata.cpp.

Member Data Documentation

◆ _a

ASTContext* systemc_clang::GlobalSuspensionAutomata::_a
private

Definition at line 79 of file GlobalSuspensionAutomata.h.

◆ _commonTimeDPMap

commonTimeDPMapType systemc_clang::GlobalSuspensionAutomata::_commonTimeDPMap
private

Definition at line 92 of file GlobalSuspensionAutomata.h.

◆ _entryFunctionGPUMacroMap

entryFunctionMacroMapType systemc_clang::GlobalSuspensionAutomata::_entryFunctionGPUMacroMap
private

Definition at line 90 of file GlobalSuspensionAutomata.h.

◆ _eventNotificationTimeMap

eventNotificationTimeMapType systemc_clang::GlobalSuspensionAutomata::_eventNotificationTimeMap
private

Definition at line 86 of file GlobalSuspensionAutomata.h.

◆ _globalSauto

transitionVectorType systemc_clang::GlobalSuspensionAutomata::_globalSauto
private

Definition at line 80 of file GlobalSuspensionAutomata.h.

◆ _incomingTransitionsMap

stateTransitionsMapType systemc_clang::GlobalSuspensionAutomata::_incomingTransitionsMap
private

Definition at line 83 of file GlobalSuspensionAutomata.h.

◆ _instanceFunctionSautoMap

instanceFunctionSautoMapType systemc_clang::GlobalSuspensionAutomata::_instanceFunctionSautoMap
private

Definition at line 85 of file GlobalSuspensionAutomata.h.

◆ _moduleInstanceMap

Model::moduleInstanceMapType systemc_clang::GlobalSuspensionAutomata::_moduleInstanceMap
private

Definition at line 82 of file GlobalSuspensionAutomata.h.

◆ _notifyCalls

FindNotify::NotifyCallListType systemc_clang::GlobalSuspensionAutomata::_notifyCalls
private

Definition at line 88 of file GlobalSuspensionAutomata.h.

◆ _os

raw_ostream& systemc_clang::GlobalSuspensionAutomata::_os
private

Definition at line 78 of file GlobalSuspensionAutomata.h.

◆ _outgoingTransitionsMap

stateTransitionsMapType systemc_clang::GlobalSuspensionAutomata::_outgoingTransitionsMap
private

Definition at line 84 of file GlobalSuspensionAutomata.h.

◆ _susCFGBlockGPUMacroMap

susCFGBlockGPUMacroMapType systemc_clang::GlobalSuspensionAutomata::_susCFGBlockGPUMacroMap
private

Definition at line 91 of file GlobalSuspensionAutomata.h.

◆ _systemcModel

Model* systemc_clang::GlobalSuspensionAutomata::_systemcModel
private

Definition at line 81 of file GlobalSuspensionAutomata.h.

◆ _transitionTimeMap

transitionTimeMapType systemc_clang::GlobalSuspensionAutomata::_transitionTimeMap
private

Definition at line 87 of file GlobalSuspensionAutomata.h.

◆ _visitTransitionMap

visitTransitionMapType systemc_clang::GlobalSuspensionAutomata::_visitTransitionMap
private

Definition at line 89 of file GlobalSuspensionAutomata.h.


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