[vmkit-commits] [vmkit] r55775 - /vmkit/branches/isolate/lib/JnJVM/VMCore/LowerConstantCalls.cpp

Nicolas Geoffray nicolas.geoffray at lip6.fr
Thu Sep 4 09:48:03 PDT 2008


Author: geoffray
Date: Thu Sep  4 11:48:03 2008
New Revision: 55775

URL: http://llvm.org/viewvc/llvm-project?rev=55775&view=rev
Log:
Lower GetJnjvmExceptionClass.


Modified:
    vmkit/branches/isolate/lib/JnJVM/VMCore/LowerConstantCalls.cpp

Modified: vmkit/branches/isolate/lib/JnJVM/VMCore/LowerConstantCalls.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/isolate/lib/JnJVM/VMCore/LowerConstantCalls.cpp?rev=55775&r1=55774&r2=55775&view=diff

==============================================================================
--- vmkit/branches/isolate/lib/JnJVM/VMCore/LowerConstantCalls.cpp (original)
+++ vmkit/branches/isolate/lib/JnJVM/VMCore/LowerConstantCalls.cpp Thu Sep  4 11:48:03 2008
@@ -354,6 +354,17 @@
           Value* VT = new LoadInst(VTPtr, "", CI);
           CI->replaceAllUsesWith(VT);
           CI->eraseFromParent();
+        } else if (V == jnjvm::JnjvmModule::GetJnjvmExceptionClassFunction) {
+          Changed = true;
+          Value* val = Call.getArgument(0);
+          std::vector<Value*> indexes;
+          indexes.push_back(mvm::jit::constantZero);
+          indexes.push_back(mvm::jit::constantOne);
+          Value* VTPtr = GetElementPtrInst::Create(val, indexes.begin(),
+                                                   indexes.end(), "", CI);
+          Value* VT = new LoadInst(VTPtr, "", CI);
+          CI->replaceAllUsesWith(VT);
+          CI->eraseFromParent();
         }
 #endif
       }





More information about the vmkit-commits mailing list