[Attributor][FIX] Undo 16188f9 until SCC iterator bug is fixed
authorJohannes Doerfert <johannes@jdoerfert.de>
Fri, 21 Feb 2020 22:18:30 +0000 (14:18 -0800)
committerJohannes Doerfert <johannes@jdoerfert.de>
Fri, 21 Feb 2020 22:20:42 +0000 (14:20 -0800)
The buildbot
  http://lab.llvm.org:8011/builders/llvm-clang-x86_64-expensive-checks-win
shows some strange SCC iterator bug since 16188f9 which we need to
investigate. This patch should remove the part of 16188f9 that could
have exposed the problem.

llvm/lib/Transforms/IPO/Attributor.cpp

index 13a5191..429123a 100644 (file)
@@ -4627,9 +4627,7 @@ struct AAValueSimplifyArgument final : AAValueSimplifyImpl {
     Value &V = getAssociatedValue();
     if (V.getType()->isPointerTy() &&
         V.getType()->getPointerElementType()->isFunctionTy() &&
-        !A.isModulePass() &&
-        A.getInfoCache().getAnalysisResultForFunction<LoopAnalysis>(
-            *getAnchorScope()))
+        !A.isModulePass())
       indicatePessimisticFixpoint();
   }
 
@@ -4756,7 +4754,9 @@ struct AAValueSimplifyFloating : AAValueSimplifyImpl {
 
   /// See AbstractAttribute::initialize(...).
   void initialize(Attributor &A) override {
-    AAValueSimplifyImpl::initialize(A);
+    // FIXME: This might have exposed a SCC iterator update bug in the old PM.
+    //        Needs investigation.
+    // AAValueSimplifyImpl::initialize(A);
     Value &V = getAnchorValue();
 
     // TODO: add other stuffs