mirror of
https://github.com/NationalSecurityAgency/ghidra.git
synced 2026-09-28 17:11:11 -09:00
Merge remote-tracking branch 'origin/GP-7021_ghidra_red_tenetplusplus_pin_tracer--SQUASHED'
This commit is contained in:
@@ -287,15 +287,17 @@ public class BreakpointTimelineProvider extends ComponentProvider {
|
||||
for (final TraceReference reference : currentTrace.getReferenceManager()
|
||||
.getReferencesToRange(Lifespan.ALL, range)) {
|
||||
|
||||
if ((reference.getReferenceType() == RefType.READ) &&
|
||||
(kind == TraceBreakpointKind.READ)) {
|
||||
if ((reference.getReferenceType() == RefType.READ &&
|
||||
kind == TraceBreakpointKind.READ) ||
|
||||
(reference.getReferenceType() == RefType.READ_WRITE)) {
|
||||
breakpointHits.add(
|
||||
new BreakpointHitEvent(reference.getStartSnap(), TraceBreakpointKind.READ,
|
||||
breakpointLocation.getName(reference.getStartSnap())));
|
||||
}
|
||||
|
||||
if ((reference.getReferenceType() == RefType.WRITE) &&
|
||||
(kind == TraceBreakpointKind.WRITE)) {
|
||||
if ((reference.getReferenceType() == RefType.WRITE &&
|
||||
kind == TraceBreakpointKind.WRITE) ||
|
||||
(reference.getReferenceType() == RefType.READ_WRITE)) {
|
||||
breakpointHits.add(
|
||||
new BreakpointHitEvent(reference.getStartSnap(), TraceBreakpointKind.WRITE,
|
||||
breakpointLocation.getName(reference.getStartSnap())));
|
||||
|
||||
@@ -31,8 +31,8 @@ import ghidra.program.model.lang.*;
|
||||
import ghidra.program.model.listing.*;
|
||||
import ghidra.program.model.mem.MemoryAccessException;
|
||||
import ghidra.program.model.pcode.*;
|
||||
import ghidra.util.exception.InvalidInputException;
|
||||
import ghidra.util.exception.NotFoundException;
|
||||
import ghidra.util.Msg;
|
||||
import ghidra.util.exception.*;
|
||||
import ghidra.util.task.TaskMonitor;
|
||||
|
||||
/**
|
||||
@@ -99,6 +99,18 @@ public class SymPcodeExecutor extends PcodeExecutor<Sym> {
|
||||
// TODO: Is there a way to know if a userop affects the stack?
|
||||
}
|
||||
|
||||
@Override
|
||||
public void stepOp(PcodeOp op, PcodeFrame frame, PcodeUseropLibrary<Sym> library) {
|
||||
// TODO: This function can probably be removed after GP-6707 is complete
|
||||
try {
|
||||
monitor.checkCancelled();
|
||||
}
|
||||
catch (CancelledException e) {
|
||||
throw new PcodeExecutionException("Monitor was cancelled", frame, e);
|
||||
}
|
||||
super.stepOp(op, frame, library);
|
||||
}
|
||||
|
||||
/**
|
||||
* Attempt to figure the stack depth change for a given function
|
||||
*
|
||||
|
||||
Reference in New Issue
Block a user