[llvm] r225346 - [PM] Give slightly less horrible names to the utility pass templates for

Sean Silva chisophugis at gmail.com
Thu Jan 8 17:07:16 PST 2015


On Thu, Jan 8, 2015 at 11:12 AM, Duncan P. N. Exon Smith <
dexonsmith at apple.com> wrote:

> > On 2015-Jan-07, at 03:14, Chandler Carruth <chandlerc at gmail.com> wrote:
> >
> > Author: chandlerc
> > Date: Wed Jan  7 05:14:51 2015
> > New Revision: 225346
> >
> > URL: http://llvm.org/viewvc/llvm-project?rev=225346&view=rev
> > Log:
> > [PM] Give slightly less horrible names to the utility pass templates for
> > requiring and invalidating specific analyses. Also make their printed
> > names match their class names. Writing these out as prose really doesn't
> > make sense to me any more.
>
> This looks better to me too.  I think the prose gets in the way, and
> makes the output unnecessarily awkward to deal with in scripts.
>

+1

-- Sean Silva


>
> > Modified:
> >    llvm/trunk/include/llvm/IR/PassManager.h
> >    llvm/trunk/test/Other/new-pass-manager.ll
> >    llvm/trunk/tools/opt/Passes.cpp
> >
> > Modified: llvm/trunk/include/llvm/IR/PassManager.h
> > URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/IR/PassManager.h?rev=225346&r1=225345&r2=225346&view=diff
> >
> ==============================================================================
> > --- llvm/trunk/include/llvm/IR/PassManager.h (original)
> > +++ llvm/trunk/include/llvm/IR/PassManager.h Wed Jan  7 05:14:51 2015
> > @@ -781,7 +781,7 @@ createModuleToFunctionPassAdaptor(Functi
> > ///
> > /// This is a no-op pass which simply forces a specific analysis pass's
> result
> > /// to be available when it is run.
> > -template <typename AnalysisT> struct NoopAnalysisRequirementPass {
> > +template <typename AnalysisT> struct RequireAnalysisPass {
> >   /// \brief Run this pass over some unit of IR.
> >   ///
> >   /// This pass can be run over any unit of IR and use any analysis
> manager
> > @@ -796,7 +796,7 @@ template <typename AnalysisT> struct Noo
> >     return PreservedAnalyses::all();
> >   }
> >
> > -  static StringRef name() { return "No-op Analysis Requirement Pass"; }
> > +  static StringRef name() { return "RequireAnalysisPass"; }
> > };
> >
> > /// \brief A template utility pass to force an analysis result to be
> > @@ -804,7 +804,7 @@ template <typename AnalysisT> struct Noo
> > ///
> > /// This is a no-op pass which simply forces a specific analysis result
> to be
> > /// invalidated when it is run.
> > -template <typename AnalysisT> struct NoopAnalysisInvalidationPass {
> > +template <typename AnalysisT> struct InvalidateAnalysisPass {
> >   /// \brief Run this pass over some unit of IR.
> >   ///
> >   /// This pass can be run over any unit of IR and use any analysis
> manager
> > @@ -821,7 +821,7 @@ template <typename AnalysisT> struct Noo
> >     return PreservedAnalyses::all();
> >   }
> >
> > -  static StringRef name() { return "No-op Analysis Invalidation Pass"; }
> > +  static StringRef name() { return "InvalidateAnalysisPass"; }
> > };
> >
> > /// \brief A utility pass that does nothing but preserves no analyses.
> >
> > Modified: llvm/trunk/test/Other/new-pass-manager.ll
> > URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Other/new-pass-manager.ll?rev=225346&r1=225345&r2=225346&view=diff
> >
> ==============================================================================
> > --- llvm/trunk/test/Other/new-pass-manager.ll (original)
> > +++ llvm/trunk/test/Other/new-pass-manager.ll Wed Jan  7 05:14:51 2015
> > @@ -126,13 +126,13 @@
> > ; RUN:
>  -passes='require<no-op-module>,cgscc(require<no-op-cgscc>,function(require<no-op-function>))'
> %s 2>&1 \
> > ; RUN:     | FileCheck %s --check-prefix=CHECK-ANALYSES
> > ; CHECK-ANALYSES: Starting module pass manager
> > -; CHECK-ANALYSES: Running module pass: No-op Analysis Requirement Pass
> > +; CHECK-ANALYSES: Running module pass: RequireAnalysisPass
> > ; CHECK-ANALYSES: Running module analysis: NoOpModuleAnalysis
> > ; CHECK-ANALYSES: Starting CGSCC pass manager
> > -; CHECK-ANALYSES: Running CGSCC pass: No-op Analysis Requirement Pass
> > +; CHECK-ANALYSES: Running CGSCC pass: RequireAnalysisPass
> > ; CHECK-ANALYSES: Running CGSCC analysis: NoOpCGSCCAnalysis
> > ; CHECK-ANALYSES: Starting function pass manager
> > -; CHECK-ANALYSES: Running function pass: No-op Analysis Requirement Pass
> > +; CHECK-ANALYSES: Running function pass: RequireAnalysisPass
> > ; CHECK-ANALYSES: Running function analysis: NoOpFunctionAnalysis
> >
> > ; Make sure no-op passes that preserve all analyses don't even try to do
> any
> > @@ -147,7 +147,7 @@
> > ; RUN:
>  -passes='require<no-op-module>,require<no-op-module>,require<no-op-module>'
> %s 2>&1 \
> > ; RUN:     | FileCheck %s
> --check-prefix=CHECK-DO-CACHE-MODULE-ANALYSIS-RESULTS
> > ; CHECK-DO-CACHE-MODULE-ANALYSIS-RESULTS: Starting module pass manager
> > -; CHECK-DO-CACHE-MODULE-ANALYSIS-RESULTS: Running module pass: No-op
> Analysis Requirement Pass
> > +; CHECK-DO-CACHE-MODULE-ANALYSIS-RESULTS: Running module pass:
> RequireAnalysisPass
> > ; CHECK-DO-CACHE-MODULE-ANALYSIS-RESULTS: Running module analysis:
> NoOpModuleAnalysis
> > ; CHECK-DO-CACHE-MODULE-ANALYSIS-RESULTS-NOT: Running module analysis:
> NoOpModuleAnalysis
> >
> > @@ -155,7 +155,7 @@
> > ; RUN:
>  -passes='require<no-op-module>,invalidate<no-op-module>,require<no-op-module>'
> %s 2>&1 \
> > ; RUN:     | FileCheck %s
> --check-prefix=CHECK-DO-INVALIDATE-MODULE-ANALYSIS-RESULTS
> > ; CHECK-DO-INVALIDATE-MODULE-ANALYSIS-RESULTS: Starting module pass
> manager
> > -; CHECK-DO-INVALIDATE-MODULE-ANALYSIS-RESULTS: Running module pass:
> No-op Analysis Requirement Pass
> > +; CHECK-DO-INVALIDATE-MODULE-ANALYSIS-RESULTS: Running module pass:
> RequireAnalysisPass
> > ; CHECK-DO-INVALIDATE-MODULE-ANALYSIS-RESULTS: Running module analysis:
> NoOpModuleAnalysis
> > ; CHECK-DO-INVALIDATE-MODULE-ANALYSIS-RESULTS: Invalidating module
> analysis: NoOpModuleAnalysis
> > ; CHECK-DO-INVALIDATE-MODULE-ANALYSIS-RESULTS: Running module analysis:
> NoOpModuleAnalysis
> > @@ -164,7 +164,7 @@
> > ; RUN:
>  -passes='cgscc(require<no-op-cgscc>,require<no-op-cgscc>,require<no-op-cgscc>)'
> %s 2>&1 \
> > ; RUN:     | FileCheck %s
> --check-prefix=CHECK-DO-CACHE-CGSCC-ANALYSIS-RESULTS
> > ; CHECK-DO-CACHE-CGSCC-ANALYSIS-RESULTS: Starting CGSCC pass manager
> > -; CHECK-DO-CACHE-CGSCC-ANALYSIS-RESULTS: Running CGSCC pass: No-op
> Analysis Requirement Pass
> > +; CHECK-DO-CACHE-CGSCC-ANALYSIS-RESULTS: Running CGSCC pass:
> RequireAnalysisPass
> > ; CHECK-DO-CACHE-CGSCC-ANALYSIS-RESULTS: Running CGSCC analysis:
> NoOpCGSCCAnalysis
> > ; CHECK-DO-CACHE-CGSCC-ANALYSIS-RESULTS-NOT: Running CGSCC analysis:
> NoOpCGSCCAnalysis
> >
> > @@ -172,7 +172,7 @@
> > ; RUN:
>  -passes='cgscc(require<no-op-cgscc>,invalidate<no-op-cgscc>,require<no-op-cgscc>)'
> %s 2>&1 \
> > ; RUN:     | FileCheck %s
> --check-prefix=CHECK-DO-INVALIDATE-CGSCC-ANALYSIS-RESULTS
> > ; CHECK-DO-INVALIDATE-CGSCC-ANALYSIS-RESULTS: Starting CGSCC pass manager
> > -; CHECK-DO-INVALIDATE-CGSCC-ANALYSIS-RESULTS: Running CGSCC pass: No-op
> Analysis Requirement Pass
> > +; CHECK-DO-INVALIDATE-CGSCC-ANALYSIS-RESULTS: Running CGSCC pass:
> RequireAnalysisPass
> > ; CHECK-DO-INVALIDATE-CGSCC-ANALYSIS-RESULTS: Running CGSCC analysis:
> NoOpCGSCCAnalysis
> > ; CHECK-DO-INVALIDATE-CGSCC-ANALYSIS-RESULTS: Invalidating CGSCC
> analysis: NoOpCGSCCAnalysis
> > ; CHECK-DO-INVALIDATE-CGSCC-ANALYSIS-RESULTS: Running CGSCC analysis:
> NoOpCGSCCAnalysis
> > @@ -181,7 +181,7 @@
> > ; RUN:
>  -passes='function(require<no-op-function>,require<no-op-function>,require<no-op-function>)'
> %s 2>&1 \
> > ; RUN:     | FileCheck %s
> --check-prefix=CHECK-DO-CACHE-FUNCTION-ANALYSIS-RESULTS
> > ; CHECK-DO-CACHE-FUNCTION-ANALYSIS-RESULTS: Starting function pass
> manager
> > -; CHECK-DO-CACHE-FUNCTION-ANALYSIS-RESULTS: Running function pass:
> No-op Analysis Requirement Pass
> > +; CHECK-DO-CACHE-FUNCTION-ANALYSIS-RESULTS: Running function pass:
> RequireAnalysisPass
> > ; CHECK-DO-CACHE-FUNCTION-ANALYSIS-RESULTS: Running function analysis:
> NoOpFunctionAnalysis
> > ; CHECK-DO-CACHE-FUNCTION-ANALYSIS-RESULTS-NOT: Running function
> analysis: NoOpFunctionAnalysis
> >
> > @@ -189,7 +189,7 @@
> > ; RUN:
>  -passes='function(require<no-op-function>,invalidate<no-op-function>,require<no-op-function>)'
> %s 2>&1 \
> > ; RUN:     | FileCheck %s
> --check-prefix=CHECK-DO-INVALIDATE-FUNCTION-ANALYSIS-RESULTS
> > ; CHECK-DO-INVALIDATE-FUNCTION-ANALYSIS-RESULTS: Starting function pass
> manager
> > -; CHECK-DO-INVALIDATE-FUNCTION-ANALYSIS-RESULTS: Running function pass:
> No-op Analysis Requirement Pass
> > +; CHECK-DO-INVALIDATE-FUNCTION-ANALYSIS-RESULTS: Running function pass:
> RequireAnalysisPass
> > ; CHECK-DO-INVALIDATE-FUNCTION-ANALYSIS-RESULTS: Running function
> analysis: NoOpFunctionAnalysis
> > ; CHECK-DO-INVALIDATE-FUNCTION-ANALYSIS-RESULTS: Invalidating function
> analysis: NoOpFunctionAnalysis
> > ; CHECK-DO-INVALIDATE-FUNCTION-ANALYSIS-RESULTS: Running function
> analysis: NoOpFunctionAnalysis
> > @@ -198,30 +198,30 @@
> > ; RUN:
>  -passes='require<no-op-module>,module(require<no-op-module>,function(require<no-op-function>,invalidate<all>,require<no-op-function>),require<no-op-module>),require<no-op-module>'
> %s 2>&1 \
> > ; RUN:     | FileCheck %s --check-prefix=CHECK-INVALIDATE-ALL
> > ; CHECK-INVALIDATE-ALL: Starting module pass manager run.
> > -; CHECK-INVALIDATE-ALL: Running module pass: No-op Analysis Requirement
> Pass
> > +; CHECK-INVALIDATE-ALL: Running module pass: RequireAnalysisPass
> > ; CHECK-INVALIDATE-ALL: Running module analysis: NoOpModuleAnalysis
> > ; CHECK-INVALIDATE-ALL: Starting module pass manager run.
> > -; CHECK-INVALIDATE-ALL: Running module pass: No-op Analysis Requirement
> Pass
> > +; CHECK-INVALIDATE-ALL: Running module pass: RequireAnalysisPass
> > ; CHECK-INVALIDATE-ALL-NOT: Running module analysis: NoOpModuleAnalysis
> > ; CHECK-INVALIDATE-ALL: Starting function pass manager run.
> > -; CHECK-INVALIDATE-ALL: Running function pass: No-op Analysis
> Requirement Pass
> > +; CHECK-INVALIDATE-ALL: Running function pass: RequireAnalysisPass
> > ; CHECK-INVALIDATE-ALL: Running function analysis: NoOpFunctionAnalysis
> > ; CHECK-INVALIDATE-ALL: Running function pass: InvalidateAllAnalysesPass
> > ; CHECK-INVALIDATE-ALL: Invalidating all non-preserved analyses for
> function
> > ; CHECK-INVALIDATE-ALL: Invalidating function analysis:
> NoOpFunctionAnalysis
> > -; CHECK-INVALIDATE-ALL: Running function pass: No-op Analysis
> Requirement Pass
> > +; CHECK-INVALIDATE-ALL: Running function pass: RequireAnalysisPass
> > ; CHECK-INVALIDATE-ALL: Running function analysis: NoOpFunctionAnalysis
> > ; CHECK-INVALIDATE-ALL: Finished function pass manager run.
> > ; CHECK-INVALIDATE-ALL: Invalidating all non-preserved analyses for
> function
> > ; CHECK-INVALIDATE-ALL-NOT: Running function analysis:
> NoOpFunctionAnalysis
> > ; CHECK-INVALIDATE-ALL: Invalidating all non-preserved analyses for
> module
> > ; CHECK-INVALIDATE-ALL: Invalidating module analysis: NoOpModuleAnalysis
> > -; CHECK-INVALIDATE-ALL: Running module pass: No-op Analysis Requirement
> Pass
> > +; CHECK-INVALIDATE-ALL: Running module pass: RequireAnalysisPass
> > ; CHECK-INVALIDATE-ALL: Running module analysis: NoOpModuleAnalysis
> > ; CHECK-INVALIDATE-ALL: Finished module pass manager run.
> > ; CHECK-INVALIDATE-ALL: Invalidating all non-preserved analyses for
> module
> > ; CHECK-INVALIDATE-ALL-NOT: Invalidating module analysis:
> NoOpModuleAnalysis
> > -; CHECK-INVALIDATE-ALL: Running module pass: No-op Analysis Requirement
> Pass
> > +; CHECK-INVALIDATE-ALL: Running module pass: RequireAnalysisPass
> > ; CHECK-INVALIDATE-ALL-NOT: Running module analysis: NoOpModuleAnalysis
> > ; CHECK-INVALIDATE-ALL: Finished module pass manager run.
> >
> > @@ -229,40 +229,40 @@
> > ; RUN:
>  -passes='require<no-op-module>,module(require<no-op-module>,cgscc(require<no-op-cgscc>,function(require<no-op-function>,invalidate<all>,require<no-op-function>),require<no-op-cgscc>),require<no-op-module>),require<no-op-module>'
> %s 2>&1 \
> > ; RUN:     | FileCheck %s --check-prefix=CHECK-INVALIDATE-ALL-CG
> > ; CHECK-INVALIDATE-ALL-CG: Starting module pass manager run.
> > -; CHECK-INVALIDATE-ALL-CG: Running module pass: No-op Analysis
> Requirement Pass
> > +; CHECK-INVALIDATE-ALL-CG: Running module pass: RequireAnalysisPass
> > ; CHECK-INVALIDATE-ALL-CG: Running module analysis: NoOpModuleAnalysis
> > ; CHECK-INVALIDATE-ALL-CG: Starting module pass manager run.
> > -; CHECK-INVALIDATE-ALL-CG: Running module pass: No-op Analysis
> Requirement Pass
> > +; CHECK-INVALIDATE-ALL-CG: Running module pass: RequireAnalysisPass
> > ; CHECK-INVALIDATE-ALL-CG-NOT: Running module analysis:
> NoOpModuleAnalysis
> > ; CHECK-INVALIDATE-ALL-CG: Starting CGSCC pass manager run.
> > -; CHECK-INVALIDATE-ALL-CG: Running CGSCC pass: No-op Analysis
> Requirement Pass
> > +; CHECK-INVALIDATE-ALL-CG: Running CGSCC pass: RequireAnalysisPass
> > ; CHECK-INVALIDATE-ALL-CG: Running CGSCC analysis: NoOpCGSCCAnalysis
> > ; CHECK-INVALIDATE-ALL-CG: Starting function pass manager run.
> > -; CHECK-INVALIDATE-ALL-CG: Running function pass: No-op Analysis
> Requirement Pass
> > +; CHECK-INVALIDATE-ALL-CG: Running function pass: RequireAnalysisPass
> > ; CHECK-INVALIDATE-ALL-CG: Running function analysis:
> NoOpFunctionAnalysis
> > ; CHECK-INVALIDATE-ALL-CG: Running function pass:
> InvalidateAllAnalysesPass
> > ; CHECK-INVALIDATE-ALL-CG: Invalidating all non-preserved analyses for
> function
> > ; CHECK-INVALIDATE-ALL-CG: Invalidating function analysis:
> NoOpFunctionAnalysis
> > -; CHECK-INVALIDATE-ALL-CG: Running function pass: No-op Analysis
> Requirement Pass
> > +; CHECK-INVALIDATE-ALL-CG: Running function pass: RequireAnalysisPass
> > ; CHECK-INVALIDATE-ALL-CG: Running function analysis:
> NoOpFunctionAnalysis
> > ; CHECK-INVALIDATE-ALL-CG: Finished function pass manager run.
> > ; CHECK-INVALIDATE-ALL-CG: Invalidating all non-preserved analyses for
> function
> > ; CHECK-INVALIDATE-ALL-CG-NOT: Running function analysis:
> NoOpFunctionAnalysis
> > ; CHECK-INVALIDATE-ALL-CG: Invalidating all non-preserved analyses for
> SCC
> > ; CHECK-INVALIDATE-ALL-CG: Invalidating CGSCC analysis: NoOpCGSCCAnalysis
> > -; CHECK-INVALIDATE-ALL-CG: Running CGSCC pass: No-op Analysis
> Requirement Pass
> > +; CHECK-INVALIDATE-ALL-CG: Running CGSCC pass: RequireAnalysisPass
> > ; CHECK-INVALIDATE-ALL-CG: Running CGSCC analysis: NoOpCGSCCAnalysis
> > ; CHECK-INVALIDATE-ALL-CG: Finished CGSCC pass manager run.
> > ; CHECK-INVALIDATE-ALL-CG: Invalidating all non-preserved analyses for
> SCC
> > ; CHECK-INVALIDATE-ALL-CG-NOT: Invalidating CGSCC analysis:
> NoOpCGSCCAnalysis
> > ; CHECK-INVALIDATE-ALL-CG: Invalidating all non-preserved analyses for
> module
> > ; CHECK-INVALIDATE-ALL-CG: Invalidating module analysis:
> NoOpModuleAnalysis
> > -; CHECK-INVALIDATE-ALL-CG: Running module pass: No-op Analysis
> Requirement Pass
> > +; CHECK-INVALIDATE-ALL-CG: Running module pass: RequireAnalysisPass
> > ; CHECK-INVALIDATE-ALL-CG: Running module analysis: NoOpModuleAnalysis
> > ; CHECK-INVALIDATE-ALL-CG: Finished module pass manager run.
> > ; CHECK-INVALIDATE-ALL-CG: Invalidating all non-preserved analyses for
> module
> > ; CHECK-INVALIDATE-ALL-CG-NOT: Invalidating module analysis:
> NoOpModuleAnalysis
> > -; CHECK-INVALIDATE-ALL-CG: Running module pass: No-op Analysis
> Requirement Pass
> > +; CHECK-INVALIDATE-ALL-CG: Running module pass: RequireAnalysisPass
> > ; CHECK-INVALIDATE-ALL-CG-NOT: Running module analysis:
> NoOpModuleAnalysis
> > ; CHECK-INVALIDATE-ALL-CG: Finished module pass manager run.
> >
> >
> > Modified: llvm/trunk/tools/opt/Passes.cpp
> > URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/opt/Passes.cpp?rev=225346&r1=225345&r2=225346&view=diff
> >
> ==============================================================================
> > --- llvm/trunk/tools/opt/Passes.cpp (original)
> > +++ llvm/trunk/tools/opt/Passes.cpp Wed Jan  7 05:14:51 2015
> > @@ -142,11 +142,11 @@ static bool parseModulePassName(ModulePa
> >   }
> > #define MODULE_ANALYSIS(NAME, CREATE_PASS)
>        \
> >   if (Name == "require<" NAME ">") {
>        \
> > -    MPM.addPass(NoopAnalysisRequirementPass<decltype(CREATE_PASS)>());
>        \
> > +    MPM.addPass(RequireAnalysisPass<decltype(CREATE_PASS)>());
>        \
> >     return true;
>        \
> >   }
>       \
> >   if (Name == "invalidate<" NAME ">") {
>       \
> > -
> MPM.addPass(NoopAnalysisInvalidationPass<decltype(CREATE_PASS)>());        \
> > +    MPM.addPass(InvalidateAnalysisPass<decltype(CREATE_PASS)>());
>         \
> >     return true;
>        \
> >   }
> > #include "PassRegistry.def"
> > @@ -162,11 +162,11 @@ static bool parseCGSCCPassName(CGSCCPass
> >   }
> > #define CGSCC_ANALYSIS(NAME, CREATE_PASS)
>       \
> >   if (Name == "require<" NAME ">") {
>        \
> > -
> CGPM.addPass(NoopAnalysisRequirementPass<decltype(CREATE_PASS)>());        \
> > +    CGPM.addPass(RequireAnalysisPass<decltype(CREATE_PASS)>());
>         \
> >     return true;
>        \
> >   }
>       \
> >   if (Name == "invalidate<" NAME ">") {
>       \
> > -
> CGPM.addPass(NoopAnalysisInvalidationPass<decltype(CREATE_PASS)>());       \
> > +    CGPM.addPass(InvalidateAnalysisPass<decltype(CREATE_PASS)>());
>        \
> >     return true;
>        \
> >   }
> > #include "PassRegistry.def"
> > @@ -182,11 +182,11 @@ static bool parseFunctionPassName(Functi
> >   }
> > #define FUNCTION_ANALYSIS(NAME, CREATE_PASS)
>        \
> >   if (Name == "require<" NAME ">") {
>        \
> > -    FPM.addPass(NoopAnalysisRequirementPass<decltype(CREATE_PASS)>());
>        \
> > +    FPM.addPass(RequireAnalysisPass<decltype(CREATE_PASS)>());
>        \
> >     return true;
>        \
> >   }
>       \
> >   if (Name == "invalidate<" NAME ">") {
>       \
> > -
> FPM.addPass(NoopAnalysisInvalidationPass<decltype(CREATE_PASS)>());        \
> > +    FPM.addPass(InvalidateAnalysisPass<decltype(CREATE_PASS)>());
>         \
> >     return true;
>        \
> >   }
> > #include "PassRegistry.def"
> >
> >
> > _______________________________________________
> > llvm-commits mailing list
> > llvm-commits at cs.uiuc.edu
> > http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150108/8bae6f81/attachment.html>


More information about the llvm-commits mailing list