C-Breeze
C Compiler Infrastructure

[ Project home page]
Main Page   Modules   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

orderedUses Class Reference

#include <memoryaccess.h>

List of all members.

Public Member Functions

 orderedUses ()
memoryUsefind_use (Location *where) const
void find_uses_at (Location *where, memoryuse_set &uses)
memoryUsemake_use_at (Location *where, memoryBlock *owner)
const pred_use_mapmake_merge_uses_at (basicblockLocation *where, memoryBlock *owner)
void update_def_use_chains ()
void def_uses (memoryDef *def, memoryuse_list &uses)
 Def uses.

void prune (Location *where)
void print (ostream &o) const
void clear ()
void stats (int &total_uses, int &merge_uses)

Private Attributes

memoryuse_map _uses
merge_use_map _merge_uses


Constructor & Destructor Documentation

orderedUses::orderedUses   [inline]
 

Definition at line 476 of file memoryaccess.h.


Member Function Documentation

void orderedUses::clear  
 

Definition at line 717 of file memoryaccess.cc.

References _merge_uses, _uses, memoryuse_map_cp, merge_use_map_cp, pred_use_map, and pred_use_map_cp.

Referenced by memoryBlock::clear().

void orderedUses::def_uses memoryDef   def,
memoryuse_list   uses
 

Def uses.

Go through the uses and collect the ones that are reached by the given definition.

Definition at line 620 of file memoryaccess.cc.

References _merge_uses, _uses, def, memoryuse_map_p, merge_use_map_cp, pred_use_map, pred_use_map_cp, and use.

Referenced by memoryBlock::def_uses().

memoryUse * orderedUses::find_use Location   where const
 

Definition at line 487 of file memoryaccess.cc.

References _uses, and memoryuse_map_cp.

Referenced by memoryBlock::find_use_at(), find_uses_at(), make_use_at(), and memoryBlock::set_current_def_use().

void orderedUses::find_uses_at Location   where,
memoryuse_set   uses
 

Definition at line 500 of file memoryaccess.cc.

References _merge_uses, Location::BasicBlock, find_use(), Location::kind(), merge_use_map_p, pred_use_map, pred_use_map_p, and use.

Referenced by memoryBlock::find_uses_at().

const pred_use_map & orderedUses::make_merge_uses_at basicblockLocation   where,
memoryBlock   owner
 

Definition at line 552 of file memoryaccess.cc.

References _merge_uses, basicblock_list, basicblock_list_p, basicblockLocation::block(), merge_use_map_p, pred_use_map, basicblockNode::preds(), and use.

Referenced by memoryBlock::merge_uses_at(), and memoryBlock::setup_merge_uses_at().

memoryUse * orderedUses::make_use_at Location   where,
memoryBlock   owner
 

Definition at line 536 of file memoryaccess.cc.

References _uses, find_use(), and memoryuse_map_pair.

Referenced by memoryBlock::use_at().

void orderedUses::print ostream &    o const
 

Definition at line 695 of file memoryaccess.cc.

References _merge_uses, _uses, memoryuse_map_cp, merge_use_map_cp, pred_use_map, and pred_use_map_cp.

Referenced by memoryBlock::print_def_use().

void orderedUses::prune Location   where
 

Definition at line 653 of file memoryaccess.cc.

References _uses, def, memoryuse_map_p, and use.

void orderedUses::stats int &    total_uses,
int &    merge_uses
 

Definition at line 742 of file memoryaccess.cc.

References _merge_uses, and _uses.

Referenced by memoryBlock::stats().

void orderedUses::update_def_use_chains  
 

Definition at line 583 of file memoryaccess.cc.

References _merge_uses, _uses, def, memoryuse_map_p, merge_use_map_cp, pred_use_map, pred_use_map_cp, and use.

Referenced by memoryBlock::update_def_use_chains().


Member Data Documentation

merge_use_map orderedUses::_merge_uses [private]
 

Definition at line 472 of file memoryaccess.h.

Referenced by clear(), def_uses(), find_uses_at(), make_merge_uses_at(), print(), stats(), and update_def_use_chains().

memoryuse_map orderedUses::_uses [private]
 

Definition at line 471 of file memoryaccess.h.

Referenced by clear(), def_uses(), find_use(), make_use_at(), print(), prune(), stats(), and update_def_use_chains().


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

Generated on August 27, 2003
Back to the C-Breeze home page