#include <suifpasses/passes.h>
Inheritance diagram for Pass:
Public Methods | |
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 Methods | |
Pass ( SuifEnv* suif_env, const LString &name ) | |
virtual | ~Pass () |
|
|
|
May return "this" if the pass has no state.
Reimplemented from Module.
Reimplemented in AddExplicitLoopLabels, AddProcedureEndLabelsPass, AddStatementListsToProcs, ArrayReferenceDismantlerPass, AvoidExternCollisions, AvoidFileScopeCollisions, AvoidLabelCollisions, BuildCppVTablesPass, CFor2ForPass, CIAnnoteStatsPass, CallExpressionDismantlerPass, CiCheckElimPass, CollectWalkerPass, CombinedPass, CombinedPassForCpp, ConstantFolderPass, ConvertToFortranForm, CopyPropPass, CountCallsWithIteratorPass, CountCallsWithWalkerPass, DeadcodePass, DismantleCallArguments, DismantleCppVTablesPass, DismantleEmptyScopeStatements, DismantleMultiEntryScopeStatements, DismantleStmtsWithJumpsInside, DismantleStructuredReturns, FieldBuilderPass, FixupExplicitLoopLabels, FlattenStatementListsPass, FoldStatementsPass, GuardAllFors, IfConditionsToBinaryExprs, InlinePass, LoadExpressionDismantlerPass, LoweringPass, MarkGuardedFors, MultiDimArrayDismantlerPass, NameAllSymbolsPass, NonConstBoundDismantlerPass, NormalizeProcedureReturns, One2MultiArrayExpressionPass, PaddingPass, PipelinablePass, PipelinerDispatchPass, PrintDotSuifCFGraphPass, PrintSuifCFGraphPass, RemoveExplicitLoopLabels, RemoveIfAndLoopPass, RemoveTrashPass, RepeatValueBlockBuilderPass, RequireProcedureReturns, S2CPass, SetAddrTakenPass, StripAnnotesPass, StructPaddingPass, SuifCFGraphPass, TypeCheckerPass, UnconvertFromFortranForm, UnownedPass, build_single_vtable_pass, convertsuif2bto1_pass, dismantle_if_statements_pass, dismantle_if_statements_pass, globalize_class_method_symbols_pass, globalize_class_method_symbols_pass, globalize_class_variable_symbols_pass, iterator_pass, print_pass, walker_based_module, and walker_pass.
|
your analysis or optimization goes here.
Reimplemented in AvoidExternCollisions, AvoidFileScopeCollisions, BuildCppVTablesPass, CollectWalkerPass, CombinedPass, CombinedPassForCpp, DismantleCppVTablesPass, DismantleStructuredReturns, LoweringPass, MultiDimArrayDismantlerPass, NameAllSymbolsPass, NonConstBoundDismantlerPass, PaddingPass, PipelinablePass, PipelinerDispatchPass, RemoveTrashPass, RepeatValueBlockBuilderPass, S2CPass, SetAddrTakenPass, StripAnnotesPass, StructPaddingPass, TypeCheckerPass, UnownedPass, convertsuif2bto1_pass, globalize_class_method_symbols_pass, and print_pass.
|
the default implementation invokes the method do_file_set_block.
Reimplemented from Module.
Reimplemented in PipelinablePass, and PipelinerDispatchPass.
|
Initialize the pass.
Reimplemented from Module.
Reimplemented in AddExplicitLoopLabels, AddProcedureEndLabelsPass, AddStatementListsToProcs, ArrayReferenceDismantlerPass, CFor2ForPass, CIAnnoteStatsPass, CallExpressionDismantlerPass, CiCheckElimPass, ClinitElimPass, CollectWalkerPass, ConvertToFortranForm, CopyPropPass, DeadcodePass, DefinitionBlockPass, DismantleCallArguments, DismantleEmptyScopeStatements, DismantleMultiEntryScopeStatements, DismantleStmtsWithJumpsInside, DismantleStructuredReturns, FieldBuilderPass, FixupExplicitLoopLabels, FlattenStatementListsPass, FoldStatementsPass, GuardAllFors, HasClinitPass, IfConditionsToBinaryExprs, InstanceFieldsLayoutOffsetAnnotePass, InstanceFieldsLayoutPass, InstanceMethodCallExpressionLoweringPass, InstanceMethodCallStatementLoweringPass, JavaInstanceMethodCallExpressionLoweringPass, LoadExpressionDismantlerPass, LocalConstPropPass, LocalCopyPropPass, LoweringPass, MarkGuardedFors, MultiDimArrayDismantlerPass, NonConstBoundDismantlerPass, NormalizeProcedureReturns, One2MultiArrayExpressionPass, PaddingPass, PipelinablePass, PrintDotSuifCFGraphPass, RemoveExplicitLoopLabels, RemoveIfAndLoopPass, RepeatValueBlockBuilderPass, RequireProcedureReturns, S2CPass, SetAddrTakenPass, StaticMethodCallExpressionLoweringPass, StaticMethodCallStatementLoweringPass, StripAnnotesPass, SuifCFGraphPass, UnconvertFromFortranForm, VtblAnnotePass, VtblPass, VtblSlotAnnotePass, VtblSlotCountAnnotePass, convertsuif2bto1_pass, and walker_based_module.