PCodeMapper

io.joern.ghidra2cpg.utils.PCodeMapper
class PCodeMapper(diffGraphBuilder: DiffGraphBuilder, nativeInstruction: Instruction, functions: List[Function], highFunction: HighFunction, address2Literal: Map[Long, String])

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any

Members list

Value members

Concrete methods

def connectCallToArgument(call: CfgNodeNew, argument: CfgNodeNew): Unit
def createCall(name: String, code: String, index: Int): CfgNodeNew
def getNode: CfgNodeNew
def handleAssignment(pcodeOp: PcodeOp, code: String): CfgNodeNew
def handleAssignment(instruction: Instruction, callNode: CfgNodeNew, to: Varnode, index: Int): Unit
def handlePtrSub(instruction: Instruction, callNode: CfgNodeNew, varNode: Varnode, index: Int): Unit
def handleSingleArgument(pcodeOp: PcodeOp, cpgOperationName: String, operation: String): CfgNodeNew
def handleStore(pcodeOp: PcodeOp): CfgNodeNew
def handleTwoArguments(pcodeOp: PcodeOp, cpgOperationName: String, code: String, callIndex: Int): CfgNodeNew
def handleTwoArguments(instruction: Instruction, callNode: CfgNodeNew, pcodeOp: PcodeOp, operand: String, name: String): Unit
def resolveArgument(instruction: Instruction, callNode: CfgNodeNew, pcodeAst: PcodeOp, index: Int): Unit
def resolveVarNode(instruction: Instruction, input: Varnode, index: Int): CfgNodeNew
def resolveVarNode(input: Varnode, index: Int): CfgNodeNew

Concrete fields

val codeUnitFormat: CodeUnitFormat
val state: State