Package ghidra.program.model.listing
Class InstructionPcodeOverride
java.lang.Object
ghidra.program.model.listing.InstructionPcodeOverride
- All Implemented Interfaces:
PcodeOverride
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionThis constructor caches the primary and overriding "from" references ofinstr. -
Method Summary
Modifier and TypeMethodDescriptiongetCallFixup(Address callDestAddr) Returns the call-fixup for a specified call destination.Get the fall-through override address which may have been applied to the current instruction.Get the flow override which may have been applied to the current instruction.Get the primary overriding reference address ofRefTypetypefrom the current instructionGet the primary call reference address from the current instructionbooleanhasCallFixup(Address callDestAddr) Returns the call-fixup for a specified call destination.booleanReturns a boolean indicating whether there are any primary overriding references at the current instructionbooleanReturns a boolean indicating whether a callother call override has been applied at the current instructionbooleanReturns a boolean indicating whether a callother jump override has been applied at the current instructionbooleanReturns a boolean indicating whether a call override has been applied at the current instructionbooleanReturns a boolean indicating whether a jump override has been applied at the current instructionvoidRegister that a callother call override has been applied at the current instructionvoidRegister that a callother jump override has been applied at the current instructionvoidRegister that a call override has been applied at the current instruction.voidRegister that a jump override has been applied at the current instruction
-
Field Details
-
instr
-
-
Constructor Details
-
InstructionPcodeOverride
This constructor caches the primary and overriding "from" references ofinstr. This cache is never updated; the assumption is that this object is short-lived (duration ofPcodeEmit)- Parameters:
instr- the instruction
-
-
Method Details
-
getFallThroughOverride
Description copied from interface:PcodeOverrideGet the fall-through override address which may have been applied to the current instruction.- Specified by:
getFallThroughOverridein interfacePcodeOverride- Returns:
- fall-through override address or null
-
getFlowOverride
Description copied from interface:PcodeOverrideGet the flow override which may have been applied to the current instruction.- Specified by:
getFlowOverridein interfacePcodeOverride- Returns:
- flow override or null
-
getInstructionStart
- Specified by:
getInstructionStartin interfacePcodeOverride- Returns:
- current instruction address
-
getOverridingReference
Description copied from interface:PcodeOverrideGet the primary overriding reference address ofRefTypetypefrom the current instruction- Specified by:
getOverridingReferencein interfacePcodeOverride- Parameters:
type- type of reference- Returns:
- call reference address or null
-
getPrimaryCallReference
Description copied from interface:PcodeOverrideGet the primary call reference address from the current instruction- Specified by:
getPrimaryCallReferencein interfacePcodeOverride- Returns:
- call reference address or null
-
hasCallFixup
Description copied from interface:PcodeOverrideReturns the call-fixup for a specified call destination.- Specified by:
hasCallFixupin interfacePcodeOverride- Parameters:
callDestAddr- call destination address. This address is used to identify a function which may have been tagged with a CallFixup.- Returns:
- true if call destination function has been tagged with a call-fixup
-
getCallFixup
Description copied from interface:PcodeOverrideReturns the call-fixup for a specified call destination. If the destination function has not be tagged or was tagged with an unknown CallFixup name this method will return null.- Specified by:
getCallFixupin interfacePcodeOverride- Parameters:
callDestAddr- call destination address. This address is used to identify a function which may have been tagged with a CallFixup.- Returns:
- call fixup object or null
-
setCallOverrideRefApplied
public void setCallOverrideRefApplied()Description copied from interface:PcodeOverrideRegister that a call override has been applied at the current instruction.- Specified by:
setCallOverrideRefAppliedin interfacePcodeOverride
-
isCallOverrideRefApplied
public boolean isCallOverrideRefApplied()Description copied from interface:PcodeOverrideReturns a boolean indicating whether a call override has been applied at the current instruction- Specified by:
isCallOverrideRefAppliedin interfacePcodeOverride- Returns:
- has call override been applied
-
setJumpOverrideRefApplied
public void setJumpOverrideRefApplied()Description copied from interface:PcodeOverrideRegister that a jump override has been applied at the current instruction- Specified by:
setJumpOverrideRefAppliedin interfacePcodeOverride
-
isJumpOverrideRefApplied
public boolean isJumpOverrideRefApplied()Description copied from interface:PcodeOverrideReturns a boolean indicating whether a jump override has been applied at the current instruction- Specified by:
isJumpOverrideRefAppliedin interfacePcodeOverride- Returns:
- has jump override been applied
-
setCallOtherCallOverrideRefApplied
public void setCallOtherCallOverrideRefApplied()Description copied from interface:PcodeOverrideRegister that a callother call override has been applied at the current instruction- Specified by:
setCallOtherCallOverrideRefAppliedin interfacePcodeOverride
-
isCallOtherCallOverrideRefApplied
public boolean isCallOtherCallOverrideRefApplied()Description copied from interface:PcodeOverrideReturns a boolean indicating whether a callother call override has been applied at the current instruction- Specified by:
isCallOtherCallOverrideRefAppliedin interfacePcodeOverride- Returns:
- has callother call override been applied
-
setCallOtherJumpOverrideRefApplied
public void setCallOtherJumpOverrideRefApplied()Description copied from interface:PcodeOverrideRegister that a callother jump override has been applied at the current instruction- Specified by:
setCallOtherJumpOverrideRefAppliedin interfacePcodeOverride
-
isCallOtherJumpOverrideApplied
public boolean isCallOtherJumpOverrideApplied()Description copied from interface:PcodeOverrideReturns a boolean indicating whether a callother jump override has been applied at the current instruction- Specified by:
isCallOtherJumpOverrideAppliedin interfacePcodeOverride- Returns:
- has callother jump override been applied
-
hasPotentialOverride
public boolean hasPotentialOverride()Description copied from interface:PcodeOverrideReturns a boolean indicating whether there are any primary overriding references at the current instruction- Specified by:
hasPotentialOverridein interfacePcodeOverride- Returns:
- are there primary overriding references
-