ROSE 0.11.145.134
Public Member Functions | Protected Attributes | List of all members
Rose::BinaryAnalysis::Partitioner2::Experimental::ParallelPartitioner::NextUnusedRegion Class Reference

Description

Find unused executable addresses.

Given a region of an address space, find all the unused executable regions of maximum size within that region, schedule an instruction search at each one, and schedule additional unused region searches to occur after instructions are found.

Definition at line 588 of file ParallelPartitioner.h.

#include <Rose/BinaryAnalysis/Partitioner2/ParallelPartitioner.h>

Inheritance diagram for Rose::BinaryAnalysis::Partitioner2::Experimental::ParallelPartitioner::NextUnusedRegion:
Inheritance graph
[legend]
Collaboration diagram for Rose::BinaryAnalysis::Partitioner2::Experimental::ParallelPartitioner::NextUnusedRegion:
Collaboration graph
[legend]

Public Member Functions

 NextUnusedRegion (Partitioner &partitioner, const AddressInterval &where)
 
std::string title () const override
 A one-line title.
 
void run () override
 Performs the work.
 
- Public Member Functions inherited from Rose::BinaryAnalysis::Partitioner2::Experimental::ParallelPartitioner::WorkItem
bool operator< (const WorkItem &) const
 Sort work.
 

Protected Attributes

AddressInterval where
 

Additional Inherited Members

- Public Types inherited from Rose::BinaryAnalysis::Partitioner2::Experimental::ParallelPartitioner::WorkItem
enum class  Priority {
  DiscoverInstruction = 0 ,
  NextUnusedVa = -100
}
 Coarse priority for work items. More...
 
- Protected Member Functions inherited from Rose::BinaryAnalysis::Partitioner2::Experimental::ParallelPartitioner::WorkItem
 WorkItem (Partitioner &partitioner, Priority priority, uint64_t sort)
 Construct new item with given priority for a specific partitioner.
 
Partitionerpartitioner () const
 Partitioner set at construction time.
 
Priority priority () const
 Priority set at construction time.
 

Constructor & Destructor Documentation

◆ NextUnusedRegion()

Rose::BinaryAnalysis::Partitioner2::Experimental::ParallelPartitioner::NextUnusedRegion::NextUnusedRegion ( Partitioner partitioner,
const AddressInterval where 
)
inline

Definition at line 593 of file ParallelPartitioner.h.

Member Function Documentation

◆ title()

std::string Rose::BinaryAnalysis::Partitioner2::Experimental::ParallelPartitioner::NextUnusedRegion::title ( ) const
inlineoverridevirtual

◆ run()

void Rose::BinaryAnalysis::Partitioner2::Experimental::ParallelPartitioner::NextUnusedRegion::run ( )
overridevirtual

Performs the work.

This function runs in its own thread.

Implements Rose::BinaryAnalysis::Partitioner2::Experimental::ParallelPartitioner::WorkItem.

Member Data Documentation

◆ where

AddressInterval Rose::BinaryAnalysis::Partitioner2::Experimental::ParallelPartitioner::NextUnusedRegion::where
protected

Definition at line 590 of file ParallelPartitioner.h.


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