[vmkit-commits] [vmkit] r78386 - /vmkit/trunk/lib/JnJVM/Compiler/JavaJITOpcodes.cpp

Nicolas Geoffray nicolas.geoffray at lip6.fr
Fri Aug 7 10:09:03 PDT 2009


Author: geoffray
Date: Fri Aug  7 12:09:02 2009
New Revision: 78386

URL: http://llvm.org/viewvc/llvm-project?rev=78386&view=rev
Log:
Workaround for a javac bug that may generated an unreachable return.


Modified:
    vmkit/trunk/lib/JnJVM/Compiler/JavaJITOpcodes.cpp

Modified: vmkit/trunk/lib/JnJVM/Compiler/JavaJITOpcodes.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/Compiler/JavaJITOpcodes.cpp?rev=78386&r1=78385&r2=78386&view=diff

==============================================================================
--- vmkit/trunk/lib/JnJVM/Compiler/JavaJITOpcodes.cpp (original)
+++ vmkit/trunk/lib/JnJVM/Compiler/JavaJITOpcodes.cpp Fri Aug  7 12:09:02 2009
@@ -1856,9 +1856,15 @@
         BranchInst::Create(endBlock, currentBlock);
         break;
       
-      case RETURN :
+      case RETURN : {
+        // Prevent a javac bug.
+        if (endNode != 0) {
+          endNode->addIncoming(Constant::getNullValue(endNode->getType()),
+                               currentBlock);
+        }
         BranchInst::Create(endBlock, currentBlock);
         break;
+      }
 
       case GETSTATIC : {
         uint16 index = readU2(bytecodes, i);





More information about the vmkit-commits mailing list