[llvm] r293017 - Rewind instantiations of OuterAnalysisManagerProxy in r289317, r291651, and r291662.

NAKAMURA Takumi via llvm-commits llvm-commits at lists.llvm.org
Sun Jan 29 14:02:49 PST 2017


Hans, could you pull this into 4.0, please?

2017年1月25日(水) 13:37 NAKAMURA Takumi via llvm-commits <
llvm-commits at lists.llvm.org>:

Author: chapuni
Date: Tue Jan 24 22:26:29 2017
New Revision: 293017

URL: http://llvm.org/viewvc/llvm-project?rev=293017&view=rev
Log:
Rewind instantiations of OuterAnalysisManagerProxy in r289317, r291651, and
r291662.

I found root class should be instantiated for variadic tempate to
instantiate static member explicitly.

This will fix failures in mingw DLL build.

Modified:
    llvm/trunk/include/llvm/Analysis/CGSCCPassManager.h
    llvm/trunk/include/llvm/Analysis/LoopAnalysisManager.h
    llvm/trunk/lib/Analysis/CGSCCPassManager.cpp
    llvm/trunk/lib/Analysis/LoopAnalysisManager.cpp

Modified: llvm/trunk/include/llvm/Analysis/CGSCCPassManager.h
URL:
http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Analysis/CGSCCPassManager.h?rev=293017&r1=293016&r2=293017&view=diff
==============================================================================
--- llvm/trunk/include/llvm/Analysis/CGSCCPassManager.h (original)
+++ llvm/trunk/include/llvm/Analysis/CGSCCPassManager.h Tue Jan 24 22:26:29
2017
@@ -191,8 +191,8 @@ CGSCCAnalysisManagerModuleProxy::run(Mod
 // template.
 extern template class InnerAnalysisManagerProxy<CGSCCAnalysisManager,
Module>;

-extern template class OuterAnalysisManagerProxy<
-    ModuleAnalysisManager, LazyCallGraph::SCC, LazyCallGraph &>;
+extern template class OuterAnalysisManagerProxy<ModuleAnalysisManager,
+                                                LazyCallGraph::SCC>;
 /// A proxy from a \c ModuleAnalysisManager to an \c SCC.
 typedef OuterAnalysisManagerProxy<ModuleAnalysisManager,
LazyCallGraph::SCC,
                                   LazyCallGraph &>

Modified: llvm/trunk/include/llvm/Analysis/LoopAnalysisManager.h
URL:
http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Analysis/LoopAnalysisManager.h?rev=293017&r1=293016&r2=293017&view=diff
==============================================================================
--- llvm/trunk/include/llvm/Analysis/LoopAnalysisManager.h (original)
+++ llvm/trunk/include/llvm/Analysis/LoopAnalysisManager.h Tue Jan 24
22:26:29 2017
@@ -141,8 +141,7 @@ LoopAnalysisManagerFunctionProxy::run(Fu
 // template.
 extern template class InnerAnalysisManagerProxy<LoopAnalysisManager,
Function>;

-extern template class OuterAnalysisManagerProxy<FunctionAnalysisManager,
Loop,
-
LoopStandardAnalysisResults &>;
+extern template class OuterAnalysisManagerProxy<FunctionAnalysisManager,
Loop>;
 /// A proxy from a \c FunctionAnalysisManager to a \c Loop.
 typedef OuterAnalysisManagerProxy<FunctionAnalysisManager, Loop,
                                   LoopStandardAnalysisResults &>

Modified: llvm/trunk/lib/Analysis/CGSCCPassManager.cpp
URL:
http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Analysis/CGSCCPassManager.cpp?rev=293017&r1=293016&r2=293017&view=diff
==============================================================================
--- llvm/trunk/lib/Analysis/CGSCCPassManager.cpp (original)
+++ llvm/trunk/lib/Analysis/CGSCCPassManager.cpp Tue Jan 24 22:26:29 2017
@@ -24,7 +24,7 @@ template class PassManager<LazyCallGraph
                            LazyCallGraph &, CGSCCUpdateResult &>;
 template class InnerAnalysisManagerProxy<CGSCCAnalysisManager, Module>;
 template class OuterAnalysisManagerProxy<ModuleAnalysisManager,
-                                         LazyCallGraph::SCC, LazyCallGraph
&>;
+                                         LazyCallGraph::SCC>;
 template class OuterAnalysisManagerProxy<CGSCCAnalysisManager, Function>;

 /// Explicitly specialize the pass manager run method to handle call graph

Modified: llvm/trunk/lib/Analysis/LoopAnalysisManager.cpp
URL:
http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Analysis/LoopAnalysisManager.cpp?rev=293017&r1=293016&r2=293017&view=diff
==============================================================================
--- llvm/trunk/lib/Analysis/LoopAnalysisManager.cpp (original)
+++ llvm/trunk/lib/Analysis/LoopAnalysisManager.cpp Tue Jan 24 22:26:29 2017
@@ -23,8 +23,7 @@ namespace llvm {
 template class AllAnalysesOn<Loop>;
 template class AnalysisManager<Loop, LoopStandardAnalysisResults &>;
 template class InnerAnalysisManagerProxy<LoopAnalysisManager, Function>;
-template class OuterAnalysisManagerProxy<FunctionAnalysisManager, Loop,
-                                         LoopStandardAnalysisResults &>;
+template class OuterAnalysisManagerProxy<FunctionAnalysisManager, Loop>;

 bool LoopAnalysisManagerFunctionProxy::Result::invalidate(
     Function &F, const PreservedAnalyses &PA,


_______________________________________________
llvm-commits mailing list
llvm-commits at lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170129/1d243e65/attachment.html>


More information about the llvm-commits mailing list