|
Ghidra 11.4.2
Ghidra internal decompiler documentation.
|
Public Member Functions | |
| void | init (const Translate *t) |
| virtual void | dump (const Address &addr, OpCode opc, VarnodeData *outvar, VarnodeData *vars, int4 isize) |
| The main pcode emit method. | |
| void | disassemble (const Address &addr, DisassemblyResult &res) |
| void | addTarget (const Address &addr) |
Public Member Functions inherited from ghidra::PcodeEmit | |
| virtual | ~PcodeEmit (void) |
| Virtual destructor. | |
| void | decodeOp (const Address &addr, Decoder &decoder) |
| Emit pcode directly from an <op> element. | |
Private Attributes | |
| const Translate * | trans |
| vector< Address > | jumpaddr |
| set< uintb > | targetoffsets |
| OpCode | lastop |
| bool | hascall |
| bool | hitsaddress |
| uintb | targethit |
|
virtual |
The main pcode emit method.
A single pcode instruction is returned to the application via this method. Particular applications override it to tailor how the operations are used.
| addr | is the Address of the machine instruction |
| opc | is the opcode of the particular pcode instruction |
| outvar | if not null is a pointer to data about the output varnode |
| vars | is a pointer to an array of VarnodeData for each input varnode |
| isize | is the number of input varnodes |
Implements ghidra::PcodeEmit.
References ghidra::CPUI_BRANCH, ghidra::CPUI_BRANCHIND, ghidra::CPUI_CALL, ghidra::CPUI_CALLIND, ghidra::CPUI_CBRANCH, ghidra::CPUI_COPY, ghidra::CPUI_LOAD, and ghidra::VarnodeData::offset.