Module openj9.dtfj
Interface Emulator.BranchTraceListener
-
- All Known Subinterfaces:
Emulator.TraceListener
- Enclosing interface:
- Emulator
public static interface Emulator.BranchTraceListenerThis interface is implemented by users who want to receive branch trace events. It is basically a subset ofEmulator.TraceListenerthat only deals with instructions that involve branching. It is provided as a separate interface for performance reasons so that if a user only wants to trace function entry/exit for instance, they won't get a trace callback for every single instruction.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidtraceBranchAndSave(Emulator em, Emulator.Instruction inst, long returnAddress, long targetAddress)Trace a branch and save instruction (either BASR, BAS, BAL, BALR or BRAS).voidtraceBranchOnCondition(Emulator em, Emulator.Instruction inst, boolean branched, long targetAddress)Trace a branch on condition instruction.
-
-
-
Method Detail
-
traceBranchAndSave
void traceBranchAndSave(Emulator em, Emulator.Instruction inst, long returnAddress, long targetAddress) throws IOException
Trace a branch and save instruction (either BASR, BAS, BAL, BALR or BRAS).- Parameters:
returnAddress- the address to return totargetAddress- the entry point we are branching to- Throws:
IOException
-
traceBranchOnCondition
void traceBranchOnCondition(Emulator em, Emulator.Instruction inst, boolean branched, long targetAddress) throws IOException
Trace a branch on condition instruction.- Parameters:
branched- true if the branch was takentargetAddress- the address we are branching to- Throws:
IOException
-
-