[llvm] r235358 - [WinEH] Fix problem with landing pad return values used in PHI nodes during outlining.

Andrew Kaylor andrew.kaylor at intel.com
Mon Apr 20 15:53:42 PDT 2015


Author: akaylor
Date: Mon Apr 20 17:53:42 2015
New Revision: 235358

URL: http://llvm.org/viewvc/llvm-project?rev=235358&view=rev
Log:
[WinEH] Fix problem with landing pad return values used in PHI nodes during outlining.

Modified:
    llvm/trunk/lib/CodeGen/WinEHPrepare.cpp

Modified: llvm/trunk/lib/CodeGen/WinEHPrepare.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/WinEHPrepare.cpp?rev=235358&r1=235357&r2=235358&view=diff
==============================================================================
--- llvm/trunk/lib/CodeGen/WinEHPrepare.cpp (original)
+++ llvm/trunk/lib/CodeGen/WinEHPrepare.cpp Mon Apr 20 17:53:42 2015
@@ -904,6 +904,10 @@ bool WinEHPrepare::outlineHandler(Action
     ++II;
   }
 
+  // The landing pad value may be used by PHI nodes.  It will ultimately be
+  // eliminated, but we need it in the map for intermediate handling.
+  VMap[LPad] = UndefValue::get(LPad->getType());
+
   // Skip over PHIs and, if applicable, landingpad instructions.
   II = StartBB->getFirstInsertionPt();
 





More information about the llvm-commits mailing list