Main Page   Modules   Namespace List   Class Hierarchy   Compound List   File List   Compound Members   File Members   Related Pages  

ipConstantPropagation Class Reference

#include <ipconstants.h>

Inheritance diagram for ipConstantPropagation::

analysisProblem List of all members.

Public Methods

 ipConstantPropagation (bool debug=false)
virtual bool assignment (const Path *where, memoryDef *left_hand_side, analysisVal *right_hand_side, bool is_strong_update)
virtual analysisVallookup (memoryBlock *block, memoryUse *use)
virtual analysisVallookup (constNode *con)
virtual analysisVallookup (const string &field_name)
virtual void free (analysisVal *to_free)
virtual analysisValtop ()
virtual analysisValbottom ()
virtual analysisValbinary_operator (const Operator *op, const analysisVal *left_operand, const analysisVal *right_operand)
virtual analysisValunary_operator (const Operator *op, const analysisVal *operand)
virtual analysisValcast_operator (const typeNode *type, const analysisVal *operand)
void stats ()

Private Methods

void allocate (ipConstant *ic)
ipConstantclone (analysisVal *to_clone)

Private Attributes

const_variables_map _values
constants_map _constants
enums_map _enums
ipConstant_top
ipConstant_bottom
bool _debug
ipconstant_set _deleted
int _count

Constructor & Destructor Documentation

ipConstantPropagation::ipConstantPropagation bool    debug = false [inline]
 


Member Function Documentation

void ipConstantPropagation::allocate ipConstant   ic [inline, private]
 

bool ipConstantPropagation::assignment const Path   where,
memoryDef   left_hand_side,
analysisVal   ipa_rhs,
bool    is_strong_update
[virtual]
 

analysisVal * ipConstantPropagation::binary_operator const Operator   op,
const analysisVal   left_operand,
const analysisVal   right_operand
[virtual]
 

analysisVal * ipConstantPropagation::bottom   [virtual]
 

analysisVal * ipConstantPropagation::cast_operator const typeNode   type,
const analysisVal   operand
[virtual]
 

ipConstant * ipConstantPropagation::clone analysisVal   to_clone [private]
 

void ipConstantPropagation::free analysisVal   to_free [virtual]
 

analysisVal * ipConstantPropagation::lookup const string &    field_name [virtual]
 

analysisVal * ipConstantPropagation::lookup constNode   con [virtual]
 

analysisVal * ipConstantPropagation::lookup memoryBlock   block,
memoryUse   use
[virtual]
 

void ipConstantPropagation::stats  
 

analysisVal * ipConstantPropagation::top   [virtual]
 

analysisVal * ipConstantPropagation::unary_operator const Operator   op,
const analysisVal   operand
[virtual]
 


Member Data Documentation

ipConstant* ipConstantPropagation::_bottom [private]
 

constants_map ipConstantPropagation::_constants [private]
 

int ipConstantPropagation::_count [private]
 

bool ipConstantPropagation::_debug [private]
 

ipconstant_set ipConstantPropagation::_deleted [private]
 

enums_map ipConstantPropagation::_enums [private]
 

ipConstant* ipConstantPropagation::_top [private]
 

const_variables_map ipConstantPropagation::_values [private]
 


The documentation for this class was generated from the following files:
Generated on Thu Jan 10 12:06:29 2002 for C-Breeze by doxygen1.2.13.1 written by Dimitri van Heesch, © 1997-2001