Ghidra Decompiler Analysis Engine
Public Member Functions | List of all members
OptionExtraPop Class Reference

Set the extrapop parameter used by the (default) prototype model. More...

Inheritance diagram for OptionExtraPop:
Inheritance graph
[legend]
Collaboration diagram for OptionExtraPop:
Collaboration graph
[legend]

Public Member Functions

virtual string apply (Architecture *glb, const string &p1, const string &p2, const string &p3) const
 Apply a particular configuration option to the Architecture. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from ArchOption
static bool onOrOff (const string &p)
 Parse an "on" or "off" string. More...
 
- Protected Attributes inherited from ArchOption
string name
 Name of the option.
 

Detailed Description

Set the extrapop parameter used by the (default) prototype model.

The extrapop for a function is the number of bytes popped from the stack that a calling function can assume when this function is called.

The first parameter is the integer value to use as the extrapop, or the special value "unknown" which triggers the extrapop recovery analysis.

The second parameter, if present, indicates a specific function to modify. Otherwise, the default prototype model is modified.

Member Function Documentation

◆ apply()

string OptionExtraPop::apply ( Architecture glb,
const string &  p1,
const string &  p2,
const string &  p3 
) const
virtual

Apply a particular configuration option to the Architecture.

This method is overloaded by the different Option classes to provide possible configuration of different parts of the Architecture. The user can provide up to three optional parameters to tailor a specific type of configuration. The method returns a confirmation/failure message as feedback.

Parameters
glbis the Architecture being configured
p1is the first optional configuration string
p2is the second optional configuration string
p3is the third optional configuration string
Returns
a confirmation/failure message

Implements ArchOption.


The documentation for this class was generated from the following files: