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

#include <BottomUpTraversalLiveness.h>

Inheritance diagram for BottomUpTraversalLivenessOUT:
Collaboration diagram for BottomUpTraversalLivenessOUT:

Public Member Functions

 BottomUpTraversalLivenessOUT (LivenessAnalysis *liveness)
 
virtual ~BottomUpTraversalLivenessOUT ()
 
- Public Member Functions inherited from AstBottomUpProcessing< std::vector< SgInitializedName * > * >
std::vector< SgInitializedName * > * traverse (SgNode *node)
 evaluates attributes on the entire AST More...
 
std::vector< SgInitializedName * > * traverseWithinFile (SgNode *node)
 evaluates attributes only at nodes which represent the same file as where the evaluation was started More...
 
void traverseInputFiles (SgProject *projectNode)
 evaluates attributes only at nodes which represent files which were specified on the command line (=input files). More...
 
- Public Member Functions inherited from SgTreeTraversal< DummyAttribute, std::vector< SgInitializedName * > * >
std::vector< SgInitializedName * > * traverse (SgNode *basenode, DummyAttributeinheritedValue, t_traverseOrder travOrder=preandpostorder)
 
std::vector< SgInitializedName * > * traverseWithinFile (SgNode *basenode, DummyAttributeinheritedValue, t_traverseOrder travOrder=preandpostorder)
 
void traverseInputFiles (SgProject *projectNode, DummyAttributeinheritedValue, t_traverseOrder travOrder=preandpostorder)
 
virtual ~SgTreeTraversal ()
 
 SgTreeTraversal ()
 
 SgTreeTraversal (const SgTreeTraversal &)
 
const SgTreeTraversaloperator= (const SgTreeTraversal &)
 

Protected Member Functions

virtual std::vector
< SgInitializedName * > * 
evaluateSynthesizedAttribute (SgNode *node, SynthesizedAttributesList synAttributes)
 pure virtual function which must be implemented to compute the synthesized attribute at a node. More...
 
virtual std::vector
< SgInitializedName * > * 
defaultSynthesizedAttribute ()
 Allows to provide a default value for a synthesized attribute of primitive type (e.g. More...
 
- Protected Member Functions inherited from AstBottomUpProcessing< std::vector< SgInitializedName * > * >
virtual void atTraversalStart ()
 Function called at the start of the traversal, before any node is visited; override if necessary, the default implementation is a no-op. More...
 
virtual void atTraversalEnd ()
 
- Protected Member Functions inherited from SgTreeTraversal< DummyAttribute, std::vector< SgInitializedName * > * >
virtual void setNodeSuccessors (SgNode *node, SuccessorsContainer &succContainer)
 
void set_useDefaultIndexBasedTraversal (bool)
 

Private Attributes

LivenessAnalysislive
 

Additional Inherited Members

- Public Types inherited from AstBottomUpProcessing< std::vector< SgInitializedName * > * >
typedef SgTreeTraversal
< DummyAttribute, std::vector
< SgInitializedName * >
* >::SynthesizedAttributesList 
SynthesizedAttributesList
 
typedef SynthesizedAttributesList SubTreeSynthesizedAttributes
 
- Protected Types inherited from SgTreeTraversal< DummyAttribute, std::vector< SgInitializedName * > * >
typedef
AstSuccessorsSelectors::SuccessorsContainer 
SuccessorsContainer
 
typedef SuccessorsContainerSuccessorsContainerRef
 

Detailed Description

Definition at line 55 of file BottomUpTraversalLiveness.h.

Constructor & Destructor Documentation

BottomUpTraversalLivenessOUT::BottomUpTraversalLivenessOUT ( LivenessAnalysis liveness)
inline

Definition at line 58 of file BottomUpTraversalLiveness.h.

References live.

virtual BottomUpTraversalLivenessOUT::~BottomUpTraversalLivenessOUT ( )
inlinevirtual

Definition at line 59 of file BottomUpTraversalLiveness.h.

Member Function Documentation

virtual std::vector<SgInitializedName*>* BottomUpTraversalLivenessOUT::evaluateSynthesizedAttribute ( SgNode ,
SynthesizedAttributesList   
)
inlineprotectedvirtual

pure virtual function which must be implemented to compute the synthesized attribute at a node.

The list of synthesized attributes consists of the synthesized attributes computed at the children node of the current node. The inherited attribute value is computed by the function evaluateInheritedAttribute at the same node and simply passed to this function. Use the typedef SynthesizedAttributeList as type for the synthesized attributes list.

Implements AstBottomUpProcessing< std::vector< SgInitializedName * > * >.

Definition at line 62 of file BottomUpTraversalLiveness.h.

References StackFrameVector< T >::begin(), defaultSynthesizedAttribute(), StackFrameVector< T >::end(), LivenessAnalysis::getOut(), isSgStatement(), live, LivenessAnalysis::merge_no_dups(), and LivenessAnalysis::setOut().

virtual std::vector<SgInitializedName*>* BottomUpTraversalLivenessOUT::defaultSynthesizedAttribute ( )
inlineprotectedvirtual

Allows to provide a default value for a synthesized attribute of primitive type (e.g.

int, bool, etc.). If a class is used as type for a synthesized attribute the default constructor of this class is sufficient and this function does not have be implemented.

Reimplemented from AstBottomUpProcessing< std::vector< SgInitializedName * > * >.

Definition at line 89 of file BottomUpTraversalLiveness.h.

Referenced by evaluateSynthesizedAttribute().

Member Data Documentation

LivenessAnalysis* BottomUpTraversalLivenessOUT::live
private

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