[vmkit-commits] [vmkit] r144126 - in /vmkit/trunk: include/j3/JavaAOTCompiler.h lib/J3/Compiler/JavaAOTCompiler.cpp

Will Dietz wdietz2 at illinois.edu
Tue Nov 8 13:44:21 PST 2011


Author: wdietz2
Date: Tue Nov  8 15:44:21 2011
New Revision: 144126

URL: http://llvm.org/viewvc/llvm-project?rev=144126&view=rev
Log:
Emit NULL for j.l.Class in AOT.

Modified:
    vmkit/trunk/include/j3/JavaAOTCompiler.h
    vmkit/trunk/lib/J3/Compiler/JavaAOTCompiler.cpp

Modified: vmkit/trunk/include/j3/JavaAOTCompiler.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/include/j3/JavaAOTCompiler.h?rev=144126&r1=144125&r2=144126&view=diff
==============================================================================
--- vmkit/trunk/include/j3/JavaAOTCompiler.h (original)
+++ vmkit/trunk/include/j3/JavaAOTCompiler.h Tue Nov  8 15:44:21 2011
@@ -94,7 +94,6 @@
   llvm::Constant* CreateConstantFromJavaMethod(JavaMethod& method);
   llvm::Constant* CreateConstantFromStaticInstance(Class* cl);
   llvm::Constant* CreateConstantFromJavaString(JavaString* str);
-  llvm::Constant* CreateConstantFromJavaClass(CommonClass* cl);
   llvm::Constant* CreateConstantForBaseObject(CommonClass* cl);
   llvm::Constant* CreateConstantFromJavaObject(JavaObject* obj);
   llvm::Constant* CreateConstantFromClassBytes(ClassBytes* bytes);

Modified: vmkit/trunk/lib/J3/Compiler/JavaAOTCompiler.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/Compiler/JavaAOTCompiler.cpp?rev=144126&r1=144125&r2=144126&view=diff
==============================================================================
--- vmkit/trunk/lib/J3/Compiler/JavaAOTCompiler.cpp (original)
+++ vmkit/trunk/lib/J3/Compiler/JavaAOTCompiler.cpp Tue Nov  8 15:44:21 2011
@@ -295,39 +295,7 @@
 }
 
 Constant* JavaAOTCompiler::getJavaClass(CommonClass* cl) {
-  Class* javaClass = cl->classLoader->bootstrapLoader->upcalls->newClass;
-  LLVMClassInfo* LCI = getClassInfo(javaClass);
-  llvm::Type* Ty = LCI->getVirtualType();
-
-  if (useCooperativeGC()) {
-    return Constant::getNullValue(JavaIntrinsics.JavaObjectType);
-  } else {
-    java_class_iterator End = javaClasses.end();
-    java_class_iterator I = javaClasses.find(cl);
-    if (I == End) {
-      final_object_iterator End = finalObjects.end();
-      final_object_iterator I = finalObjects.find(cl->delegatee[0]);
-      if (I == End) {
-      
-        Module& Mod = *getLLVMModule();
-      
-        GlobalVariable* varGV = 
-          new GlobalVariable(Mod, Ty->getContainedType(0), false,
-                             GlobalValue::InternalLinkage, 0, "");
-      
-        Constant* res = ConstantExpr::getCast(Instruction::BitCast, varGV,
-                                              JavaIntrinsics.JavaObjectType);
-    
-        javaClasses.insert(std::make_pair(cl, res));
-        varGV->setInitializer(CreateConstantFromJavaClass(cl));
-        return res;
-      } else {
-        return I->second;
-      }
-    } else {
-      return I->second;
-    }
-  }
+  return Constant::getNullValue(JavaIntrinsics.JavaObjectType);
 }
 
 Constant* JavaAOTCompiler::getJavaClassPtr(CommonClass* cl) {
@@ -688,36 +656,6 @@
   return ConstantStruct::get(STy, Elmts);
 }
 
-Constant* JavaAOTCompiler::CreateConstantFromJavaClass(CommonClass* cl) {
-  assert(!useCooperativeGC());
-  Class* javaClass = cl->classLoader->bootstrapLoader->upcalls->newClass;
-  LLVMClassInfo* LCI = getClassInfo(javaClass);
-  StructType* STy = 
-    dyn_cast<StructType>(LCI->getVirtualType()->getContainedType(0));
-
-  std::vector<Constant*> Elmts;
-
-  // JavaObject
-  Elmts.push_back(CreateConstantForBaseObject(javaClass));
-  
-  // signers
-  Elmts.push_back(Constant::getNullValue(JavaIntrinsics.JavaObjectType));
-  
-  // pd
-  Elmts.push_back(Constant::getNullValue(JavaIntrinsics.JavaObjectType));
-  
-  // vmdata
-  Constant* Cl = getNativeClass(cl);
-  Cl = ConstantExpr::getCast(Instruction::BitCast, Cl,
-                             JavaIntrinsics.JavaObjectType);
-  Elmts.push_back(Cl);
-
-  // constructor
-  Elmts.push_back(Constant::getNullValue(JavaIntrinsics.JavaObjectType));
-
-  return ConstantStruct::get(STy, Elmts);
-}
-
 Constant* JavaAOTCompiler::CreateConstantFromJavaObject(JavaObject* obj) {
   assert(!useCooperativeGC());
   CommonClass* cl = JavaObject::getClass(obj);





More information about the vmkit-commits mailing list