OpenASIP
2.0
|
#include <AbsoluteToRelativeJumps.hh>
Public Member Functions | |
AbsoluteToRelativeJumps (InterPassData &ipd) | |
virtual void | handleProcedure (TTAProgram::Procedure &procedure, const TTAMachine::Machine &targetMachine) override |
virtual std::string | shortDescription () const override |
![]() | |
ProcedurePass (InterPassData &data) | |
virtual | ~ProcedurePass () |
![]() | |
SchedulerPass (InterPassData &data) | |
virtual | ~SchedulerPass () |
InterPassData & | interPassData () |
virtual std::string | longDescription () const |
![]() | |
ProgramPass (InterPassData &data) | |
virtual | ~ProgramPass () |
virtual void | handleProgram (TTAProgram::Program &program, const TTAMachine::Machine &targetMachine) |
Additional Inherited Members | |
![]() | |
static void | copyCfgToProcedure (TTAProgram::Procedure &procedure, ControlFlowGraph &cfg) |
static void | executeControlFlowGraphPass (TTAProgram::Procedure &procedure, const TTAMachine::Machine &targetmachine, ControlFlowGraphPass &cfgp) |
![]() | |
static void | executeProcedurePass (TTAProgram::Program &program, const TTAMachine::Machine &targetMachine, ProcedurePass &procedurePass) |
Definition at line 39 of file AbsoluteToRelativeJumps.hh.
|
inline |
Definition at line 43 of file AbsoluteToRelativeJumps.hh.
|
overridevirtual |
Handles a single procedure.
proecude | The procedure to handle. |
machine | The target machine if any. (NullMachine::instance() if target machine is irrelevant). |
In | case handling is unsuccesful for any reason (procedure might still get modified). |
Reimplemented from ProcedurePass.
Definition at line 52 of file AbsoluteToRelativeJumps.cc.
References TTAProgram::Procedure::address(), TTAMachine::Machine::controlUnit(), TTAProgram::Instruction::immediatePtr(), TTAProgram::CodeSnippet::instructionAtIndex(), TTAProgram::CodeSnippet::instructionCount(), TTAProgram::Program::instructionReferenceManager(), TTAProgram::Address::location(), and TTAProgram::CodeSnippet::parent().
Referenced by llvm::LLVMTCEIRBuilder::writeMachineFunction().
|
inlineoverridevirtual |
A short description of the pass, usually the optimization name, such as "basic block scheduler".
Implements SchedulerPass.
Definition at line 50 of file AbsoluteToRelativeJumps.hh.