ROSE  0.9.6a
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Adaptor_Statistics Class Reference

#include <adaptor_statistics.h>

Collaboration diagram for Adaptor_Statistics:

Public Member Functions

 Adaptor_Statistics (Annotations *ann, Analyzer *analyzer)
 
void make_CS (memoryBlock *block, procedureInfo *proc, Location *site, memoryBlock::DestructiveKind reason)
 
void make_CS (memoryBlock *block, procedureInfo *proc, Location *site, memoryBlock *complicit)
 
void print_statistics (ostream &out)
 

Private Types

enum  ReasonKind {
  Complicit = 0x1,
  Control_flow = 0x2,
  Parameter_pass = 0x4,
  Weak_update = 0x8,
  Additive = 0x10
}
 
typedef pair< procedureInfo
*, memoryBlock * > 
CS_Block
 
typedef map< procedureInfo
*, ReasonKind
CS_Reasons
 
typedef map< CS_Block, ReasonKindCS_Block_Reasons
 
typedef map< memoryBlock
*, ReasonKind
FS_Reasons
 
typedef set< Location * > Locations
 
typedef map< memoryBlock
*, Locations
Destructions
 
typedef pair< Location
*, memoryBlock * > 
Complicit_assign
 
typedef set< Complicit_assignComplicit_assigns
 
typedef map< memoryBlock
*, Complicit_assigns
Complicits
 
typedef map< procedureInfo
*, memoryblock_set > 
CS_blocks
 
typedef map< memoryBlock
*, basicblockNode * > 
CF_Sites
 
typedef pair< int, int > int_pair
 
typedef set< unsigned long > enumvalue_sets
 
typedef map< int_pair,
enumvalue_sets
Arg_Property
 
typedef map< stmtLocation
*, Arg_Property
Site_Property
 
typedef map< procedureInfo
*, Site_Property
Proc_Site_Property
 
typedef set< stmtLocation * > stmtLocations
 
typedef pair< int_pair,
enumvalue_sets
Arg_Property_Pair
 
typedef map< Arg_Property_Pair,
stmtLocations
Site_Partition
 

Private Member Functions

void print_cs_statistics (ostream &out)
 
void print_fs_statistics (ostream &out)
 
void print_cf_statistics (ostream &out)
 
void print_unify_statistics (ostream &out)
 
void print_block_chain (memoryBlock *block, Destructions &destructions, Complicits &complicits, memoryblock_set &printed, string indent, string block_indent, ostream &out)
 
void print_call_args (stmtLocation *site, procedureInfo *caller, procedureInfo *callee, int arg, declNode *formal, ostream &out)
 
void print_call_arg (declNode *formal, int arg, operandNode *parameter, int dereference, pointerValue &parameter_value, stmtLocation *site, procedureInfo *caller, procedureInfo *callee, const enum_property_map &props, ostream &out)
 
string reason_str (ReasonKind)
 

Private Attributes

memoryblock_set fs_blocks
 
FS_Reasons fs_reasons
 
Destructions fs_destructions
 
Complicits fs_complicits
 
procedureinfo_set cs_procs
 
CS_Reasons cs_reasons
 
CS_Block_Reasons cs_block_reasons
 
CS_blocks cs_blocks
 
Destructions cs_destructions
 
Complicits cs_complicits
 
Proc_Site_Property proc_site_property
 
memoryblock_set cf_blocks
 
CF_Sites cf_sites
 
Annotations_ann
 
Analyzer * _analyzer
 

Detailed Description

Definition at line 6 of file adaptor_statistics.h.

Member Typedef Documentation

typedef pair<procedureInfo*,memoryBlock*> Adaptor_Statistics::CS_Block
private

Definition at line 14 of file adaptor_statistics.h.

typedef map<procedureInfo*,ReasonKind> Adaptor_Statistics::CS_Reasons
private

Definition at line 15 of file adaptor_statistics.h.

Definition at line 16 of file adaptor_statistics.h.

typedef map<memoryBlock*,ReasonKind> Adaptor_Statistics::FS_Reasons
private

Definition at line 17 of file adaptor_statistics.h.

typedef set<Location*> Adaptor_Statistics::Locations
private

Definition at line 19 of file adaptor_statistics.h.

typedef map<memoryBlock*,Locations> Adaptor_Statistics::Destructions
private

Definition at line 20 of file adaptor_statistics.h.

typedef pair<Location*,memoryBlock*> Adaptor_Statistics::Complicit_assign
private

Definition at line 22 of file adaptor_statistics.h.

Definition at line 23 of file adaptor_statistics.h.

typedef map<memoryBlock*,Complicit_assigns> Adaptor_Statistics::Complicits
private

Definition at line 24 of file adaptor_statistics.h.

typedef map<procedureInfo*,memoryblock_set> Adaptor_Statistics::CS_blocks
private

Definition at line 26 of file adaptor_statistics.h.

typedef map<memoryBlock*,basicblockNode*> Adaptor_Statistics::CF_Sites
private

Definition at line 28 of file adaptor_statistics.h.

typedef pair<int,int> Adaptor_Statistics::int_pair
private

Definition at line 44 of file adaptor_statistics.h.

typedef set<unsigned long> Adaptor_Statistics::enumvalue_sets
private

Definition at line 45 of file adaptor_statistics.h.

Definition at line 46 of file adaptor_statistics.h.

typedef map<stmtLocation*,Arg_Property> Adaptor_Statistics::Site_Property
private

Definition at line 47 of file adaptor_statistics.h.

typedef map<procedureInfo*,Site_Property> Adaptor_Statistics::Proc_Site_Property
private

Definition at line 48 of file adaptor_statistics.h.

typedef set<stmtLocation*> Adaptor_Statistics::stmtLocations
private

Definition at line 49 of file adaptor_statistics.h.

Definition at line 50 of file adaptor_statistics.h.

Member Enumeration Documentation

Enumerator
Complicit 
Control_flow 
Parameter_pass 
Weak_update 
Additive 

Definition at line 8 of file adaptor_statistics.h.

Constructor & Destructor Documentation

Adaptor_Statistics::Adaptor_Statistics ( Annotations ann,
Analyzer *  analyzer 
)
inline

Definition at line 64 of file adaptor_statistics.h.

Member Function Documentation

void Adaptor_Statistics::make_CS ( memoryBlock *  block,
procedureInfo *  proc,
Location *  site,
memoryBlock::DestructiveKind  reason 
)
void Adaptor_Statistics::make_CS ( memoryBlock *  block,
procedureInfo *  proc,
Location *  site,
memoryBlock *  complicit 
)
void Adaptor_Statistics::print_statistics ( ostream &  out)
void Adaptor_Statistics::print_cs_statistics ( ostream &  out)
private
void Adaptor_Statistics::print_fs_statistics ( ostream &  out)
private
void Adaptor_Statistics::print_cf_statistics ( ostream &  out)
private
void Adaptor_Statistics::print_unify_statistics ( ostream &  out)
private
void Adaptor_Statistics::print_block_chain ( memoryBlock *  block,
Destructions destructions,
Complicits complicits,
memoryblock_set &  printed,
string  indent,
string  block_indent,
ostream &  out 
)
private
void Adaptor_Statistics::print_call_args ( stmtLocation *  site,
procedureInfo *  caller,
procedureInfo *  callee,
int  arg,
declNode *  formal,
ostream &  out 
)
private
void Adaptor_Statistics::print_call_arg ( declNode *  formal,
int  arg,
operandNode *  parameter,
int  dereference,
pointerValue &  parameter_value,
stmtLocation *  site,
procedureInfo *  caller,
procedureInfo *  callee,
const enum_property_map props,
ostream &  out 
)
private
string Adaptor_Statistics::reason_str ( ReasonKind  )
private

Member Data Documentation

memoryblock_set Adaptor_Statistics::fs_blocks
private

Definition at line 31 of file adaptor_statistics.h.

FS_Reasons Adaptor_Statistics::fs_reasons
private

Definition at line 32 of file adaptor_statistics.h.

Destructions Adaptor_Statistics::fs_destructions
private

Definition at line 33 of file adaptor_statistics.h.

Complicits Adaptor_Statistics::fs_complicits
private

Definition at line 34 of file adaptor_statistics.h.

procedureinfo_set Adaptor_Statistics::cs_procs
private

Definition at line 37 of file adaptor_statistics.h.

CS_Reasons Adaptor_Statistics::cs_reasons
private

Definition at line 38 of file adaptor_statistics.h.

CS_Block_Reasons Adaptor_Statistics::cs_block_reasons
private

Definition at line 39 of file adaptor_statistics.h.

CS_blocks Adaptor_Statistics::cs_blocks
private

Definition at line 40 of file adaptor_statistics.h.

Destructions Adaptor_Statistics::cs_destructions
private

Definition at line 41 of file adaptor_statistics.h.

Complicits Adaptor_Statistics::cs_complicits
private

Definition at line 42 of file adaptor_statistics.h.

Proc_Site_Property Adaptor_Statistics::proc_site_property
private

Definition at line 53 of file adaptor_statistics.h.

memoryblock_set Adaptor_Statistics::cf_blocks
private

Definition at line 56 of file adaptor_statistics.h.

CF_Sites Adaptor_Statistics::cf_sites
private

Definition at line 57 of file adaptor_statistics.h.

Annotations* Adaptor_Statistics::_ann
private

Definition at line 60 of file adaptor_statistics.h.

Analyzer* Adaptor_Statistics::_analyzer
private

Definition at line 61 of file adaptor_statistics.h.


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