Transaction-Level Modeling Framework for Space Applications
Base class for all the tools (profilers, debugger, etc...) More...
#include <ToolsIf.hpp>
Public Member Functions | |
virtual bool | newIssue (const issueWidth &curPC, const InstructionBase *curInstr)=0 throw () |
virtual bool | emptyPipeline (const issueWidth &curPC) const =0 throw () |
virtual | ~ToolsIf () |
Base class for all the tools (profilers, debugger, etc...)
|
inlinevirtual |
|
pure virtual |
Returns true if the pipeline has to be empty before being able to call the current tool, false otherwise
Implemented in trap::GDBStub< issueWidth >, trap::GDBStub< unsigned int >, trap::OSEmulator< issueWidth >, trap::Profiler< issueWidth >, IntrinsicManager< issueWidth >, and IntrinsicManager< unsigned int >.
|
pure virtual |
The only method which is called to activate the tool it signals to the tool that a new instruction issue has been started; the tool can then take the appropriate actions. the return value specifies whether the processor should skip the issue of the current instruction
Implemented in trap::GDBStub< issueWidth >, trap::GDBStub< unsigned int >, trap::OSEmulator< issueWidth >, trap::Profiler< issueWidth >, IntrinsicManager< issueWidth >, and IntrinsicManager< unsigned int >.