Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members  

CollectWalkerPass Class Reference

Abstract pass that uses a CollectWalkerT to collect all objects of a certain type T After the object are collected process_suif_object() is called for every one of them. More...

#include <pass_utils.h>

Inheritance diagram for CollectWalkerPass:

Pass Module CIAnnoteStatsPass CiCheckElimPass ClinitElimPass DefinitionBlockPass HasClinitPass InstanceFieldsLayoutOffsetAnnotePass InstanceFieldsLayoutPass InstanceMethodCallExpressionLoweringPass InstanceMethodCallStatementLoweringPass JavaInstanceMethodCallExpressionLoweringPass LocalConstPropPass LocalCopyPropPass StaticMethodCallExpressionLoweringPass StaticMethodCallStatementLoweringPass VtblAnnotePass VtblPass VtblSlotAnnotePass VtblSlotCountAnnotePass List of all members.

Public Methods

 CollectWalkerPass ( SuifEnv* env, const LString &name)
virtual void initialize_flags ()
 Set the default settings of the flags.

virtual void initialize ()
 Initialize the pass.

virtual bool parse_command_line (TokenStream *command_line_stream)
 parses the input for this Module.

OptionListget_command_line ()
Moduleclone () const
 May return "this" if the pass has no state.

virtual void do_file_set_block ( FileSetBlock* fsb )
 your analysis or optimization goes here.

virtual void process_walker ( CollectWalkerT<T>* walker )
virtual void preprocess ()
virtual void postprocess ()
virtual void process_suif_object (T* t) = 0

Protected Attributes

FileSetBlock* _fsb
CollectWalkerT<T>* _walker


Detailed Description

template<class T> class CollectWalkerPass

Abstract pass that uses a CollectWalkerT to collect all objects of a certain type T After the object are collected process_suif_object() is called for every one of them.


Constructor & Destructor Documentation

template<class T>
CollectWalkerPass<T>::CollectWalkerPass<T> (
SuifEnv * env,
const LString & name)


Member Function Documentation

template<class T>
Module * CollectWalkerPass<T>::clone (
void) const [inline, virtual]

May return "this" if the pass has no state.

Reimplemented from Pass.

Reimplemented in CIAnnoteStatsPass, and CiCheckElimPass.

template<class T>
void CollectWalkerPass<T>::do_file_set_block (
FileSetBlock * fsb) [inline, virtual]

your analysis or optimization goes here.

Reimplemented from Pass.

template<class T>
OptionList * CollectWalkerPass<T>::get_command_line () [inline]

template<class T>
void CollectWalkerPass<T>::initialize (
void) [inline, virtual]

Initialize the pass.

Reimplemented from Pass.

Reimplemented in CIAnnoteStatsPass, CiCheckElimPass, ClinitElimPass, DefinitionBlockPass, HasClinitPass, InstanceFieldsLayoutOffsetAnnotePass, InstanceFieldsLayoutPass, InstanceMethodCallExpressionLoweringPass, InstanceMethodCallStatementLoweringPass, JavaInstanceMethodCallExpressionLoweringPass, LocalConstPropPass, LocalCopyPropPass, StaticMethodCallExpressionLoweringPass, StaticMethodCallStatementLoweringPass, VtblAnnotePass, VtblPass, VtblSlotAnnotePass, and VtblSlotCountAnnotePass.

template<class T>
void CollectWalkerPass<T>::initialize_flags () [inline, virtual]

Set the default settings of the flags.

Reimplemented in CIAnnoteStatsPass, CiCheckElimPass, ClinitElimPass, DefinitionBlockPass, HasClinitPass, InstanceFieldsLayoutOffsetAnnotePass, InstanceFieldsLayoutPass, InstanceMethodCallExpressionLoweringPass, InstanceMethodCallStatementLoweringPass, JavaInstanceMethodCallExpressionLoweringPass, LocalConstPropPass, LocalCopyPropPass, StaticMethodCallExpressionLoweringPass, StaticMethodCallStatementLoweringPass, VtblAnnotePass, VtblPass, VtblSlotAnnotePass, and VtblSlotCountAnnotePass.

template<class T>
bool CollectWalkerPass<T>::parse_command_line (
TokenStream * ts) [inline, virtual]

parses the input for this Module.

Reimplemented from Module.

Reimplemented in CIAnnoteStatsPass, CiCheckElimPass, ClinitElimPass, DefinitionBlockPass, HasClinitPass, InstanceFieldsLayoutOffsetAnnotePass, InstanceFieldsLayoutPass, InstanceMethodCallExpressionLoweringPass, InstanceMethodCallStatementLoweringPass, JavaInstanceMethodCallExpressionLoweringPass, LocalConstPropPass, LocalCopyPropPass, StaticMethodCallExpressionLoweringPass, StaticMethodCallStatementLoweringPass, VtblAnnotePass, VtblPass, VtblSlotAnnotePass, and VtblSlotCountAnnotePass.

template<class T>
void CollectWalkerPass<T>::postprocess () [inline, virtual]

Reimplemented in CIAnnoteStatsPass, CiCheckElimPass, ClinitElimPass, and HasClinitPass.

template<class T>
void CollectWalkerPass<T>::preprocess () [inline, virtual]

template<class T>
virtual void CollectWalkerPass<T>::process_suif_object (
T * t) [pure virtual]

template<class T>
void CollectWalkerPass<T>::process_walker (
CollectWalkerT<T>* walker) [inline, virtual]


Member Data Documentation

template<class T>
FileSetBlock * CollectWalkerPass<T>::_fsb [protected]

template<class T>
CollectWalkerT<T>* CollectWalkerPass<T>::_walker [protected]


The documentation for this class was generated from the following file:
Generated at Mon Jul 31 13:42:57 2000 for NCI SUIF by doxygen 1.1.2 written by Dimitri van Heesch, © 1997-2000