#include <suifpasses/passes.h>
Class diagram for Pass:

Public Members | |
| virtual void | initialize () |
| Initialize the pass. | |
| virtual void | execute () |
| the default implementation invokes the method do_file_set_block. | |
| virtual Module* | clone () const = 0 |
| May return "this" if the pass has no state. | |
| virtual void | do_file_set_block ( FileSetBlock* file_set_block ) = 0 |
| your analysis or optimization goes here. | |
Protected Members | |
| Pass ( SuifEnv* suif_env, const LString &name ) | |
| virtual | ~Pass () |
[virtual]Initialize the pass.
Reimplemented from Module.
Reimplemented in walker_based_module, VtblSlotCountAnnotePass, VtblSlotAnnotePass, VtblPass, VtblAnnotePass, UnconvertFromFortranForm, SuifCFGraphPass, StripAnnotesPass, StaticMethodCallStatementLoweringPass, StaticMethodCallExpressionLoweringPass, SetAddrTakenPass, S2CPass, RequireProcedureReturns, RepeatValueBlockBuilderPass, RemoveIfAndLoopPass, RemoveExplicitLoopLabels, PrintDotSuifCFGraphPass, PrintCallGraphPass, PipelinablePass, PaddingPass, One2MultiArrayExpressionPass, NormalizeProcedureReturns, NonConstBoundDismantlerPass, MultiDimArrayDismantlerPass, MarkGuardedFors, LoweringPass, LocalCopyPropPass, LocalConstPropPass, LoadExpressionDismantlerPass, JavaInstanceMethodCallExpressionLoweringPass, InstanceMethodCallStatementLoweringPass, InstanceMethodCallExpressionLoweringPass, InstanceFieldsLayoutPass, InstanceFieldsLayoutOffsetAnnotePass, IfConditionsToBinaryExprs, HasClinitPass, GuardAllFors, FoldStatementsPass, FlattenStatementListsPass, FixupExplicitLoopLabels, FieldBuilderPass, EcrAliasPass, DismantleStructuredReturns, DismantleStmtsWithJumpsInside, DismantleMultiEntryScopeStatements, DismantleEmptyScopeStatements, DismantleCallArguments, DefinitionBlockPass, DeadcodePass, CopyPropPass, ConvertToFortranForm, convertsuif2bto1_pass, CollectWalkerPass, ClinitElimPass, CiCheckElimPass, CIAnnoteStatsPass, CFor2ForPass, CallExpressionDismantlerPass, ArrayReferenceDismantlerPass, AddStatementListsToProcs, AddProcedureEndLabelsPass, and AddExplicitLoopLabels.
[virtual]the default implementation invokes the method do_file_set_block.
Reimplemented from Module.
Reimplemented in PipelinerDispatchPass, and PipelinablePass.
[pure virtual]May return "this" if the pass has no state.
Reimplemented from Module.
Reimplemented in walker_based_module, UnownedPass, UnconvertFromFortranForm, TypeCheckerPass, SuifCFGraphPass, StructPaddingPass, StripAnnotesPass, SetAddrTakenPass, S2CPass, RequireProcedureReturns, RepeatValueBlockBuilderPass, RemoveTrashPass, RemoveIfAndLoopPass, RemoveExplicitLoopLabels, PrintSuifCFGraphPass, PrintDotSuifCFGraphPass, PrintCallGraphPass, print_pass, PipelinerDispatchPass, PipelinablePass, PaddingPass, One2MultiArrayExpressionPass, NormalizeProcedureReturns, NonConstBoundDismantlerPass, NameAllSymbolsPass, MultiDimArrayDismantlerPass, MarkGuardedFors, MarkEntryPointsPass, LoweringPass, LoadExpressionDismantlerPass, InlinePass, IfConditionsToBinaryExprs, GuardAllFors, globalize_class_variable_symbols_pass, globalize_class_method_symbols_pass, globalize_class_method_symbols_pass, FoldStatementsPass, FlattenStatementListsPass, FixupExplicitLoopLabels, FieldBuilderPass, EcrAliasPass, DismantleStructuredReturns, DismantleStmtsWithJumpsInside, DismantleMultiEntryScopeStatements, DismantleEmptyScopeStatements, DismantleCppVTablesPass, DismantleCallArguments, dismantle_if_statements_pass, dismantle_if_statements_pass, DeadcodePass, CountSuifObjectsPass, CopyPropPass, ConvertToFortranForm, convertsuif2bto1_pass, ConstantFolderPass, CombinedPassForCpp, CombinedPass, CollectWalkerPass, CiCheckElimPass, CIAnnoteStatsPass, CFor2ForPass, CallExpressionDismantlerPass, BuildCppVTablesPass, build_single_vtable_pass, AvoidLabelCollisions, AvoidFileScopeCollisions, AvoidExternCollisions, ArrayReferenceDismantlerPass, AddStatementListsToProcs, AddProcedureEndLabelsPass, and AddExplicitLoopLabels.
[pure virtual]your analysis or optimization goes here.
Reimplemented in UnownedPass, TypeCheckerPass, StructPaddingPass, StripAnnotesPass, SetAddrTakenPass, S2CPass, RepeatValueBlockBuilderPass, RemoveTrashPass, PrintCallGraphPass, print_pass, PipelinerDispatchPass, PipelinablePass, PaddingPass, NonConstBoundDismantlerPass, NameAllSymbolsPass, MultiDimArrayDismantlerPass, LoweringPass, globalize_class_method_symbols_pass, EcrAliasPass, DismantleStructuredReturns, DismantleCppVTablesPass, CountSuifObjectsPass, convertsuif2bto1_pass, CombinedPassForCpp, CombinedPass, CollectWalkerPass, BuildCppVTablesPass, AvoidFileScopeCollisions, and AvoidExternCollisions.
[protected]
[protected, virtual]
written by Dimitri van Heesch, © 1997-1999