ROSE  0.9.6a
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Partitioner::FindThunks Struct Reference

Callback to find thunks. More...

#include <Partitioner.h>

Inheritance diagram for Partitioner::FindThunks:
Collaboration diagram for Partitioner::FindThunks:

Public Member Functions

 FindThunks ()
 
virtual bool operator() (bool enabled, const Args &args)
 The actual callback function. More...
 
- Public Member Functions inherited from Partitioner::InsnRangeCallback
virtual ~InsnRangeCallback ()
 

Public Attributes

size_t validate_targets
 If true, then the successor must point to the entry point of an existing function. More...
 
size_t nfound
 Incremented for each thunk found and added. More...
 

Detailed Description

Callback to find thunks.

Creates functions whose only instruction is a JMP to the entry point of another function. This should be called by scan_unassigned_insns() before the PostFunctionBlocks callback. Since this is an instruction callback, it only scans existing instructions.

A thunk by this definition is a JMP instruction that is not already in the middle of a basic block and which has a single successor that's the entry point of an existing function.

See also, FindThunkTables class.

Definition at line 1345 of file Partitioner.h.

Constructor & Destructor Documentation

Partitioner::FindThunks::FindThunks ( )
inline

Definition at line 1349 of file Partitioner.h.

Member Function Documentation

Member Data Documentation

size_t Partitioner::FindThunks::validate_targets

If true, then the successor must point to the entry point of an existing function.

Definition at line 1346 of file Partitioner.h.

size_t Partitioner::FindThunks::nfound

Incremented for each thunk found and added.

Definition at line 1347 of file Partitioner.h.

Referenced by Partitioner::post_cfg().


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