[vmkit-commits] [vmkit] r71659 - /vmkit/trunk/lib/JnJVM/Compiler/JavaAOTCompiler.cpp
Nicolas Geoffray
nicolas.geoffray at lip6.fr
Wed May 13 07:12:30 PDT 2009
Author: geoffray
Date: Wed May 13 09:11:40 2009
New Revision: 71659
URL: http://llvm.org/viewvc/llvm-project?rev=71659&view=rev
Log:
Bugfix for generating strings during AOT.
Modified:
vmkit/trunk/lib/JnJVM/Compiler/JavaAOTCompiler.cpp
Modified: vmkit/trunk/lib/JnJVM/Compiler/JavaAOTCompiler.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/JnJVM/Compiler/JavaAOTCompiler.cpp?rev=71659&r1=71658&r2=71659&view=diff
==============================================================================
--- vmkit/trunk/lib/JnJVM/Compiler/JavaAOTCompiler.cpp (original)
+++ vmkit/trunk/lib/JnJVM/Compiler/JavaAOTCompiler.cpp Wed May 13 09:11:40 2009
@@ -513,15 +513,19 @@
Constant* Array =
CreateConstantFromArray<ArrayUInt16>(str->value, Type::Int16Ty);
- Constant* ObjGEPs[2] = { JnjvmModule::constantZero,
- JnjvmModule::constantZero };
- Array = ConstantExpr::getGetElementPtr(Array, ObjGEPs, 2);
- Elmts.push_back(Array);
+
+ GlobalVariable* varGV = new GlobalVariable(Array->getType(), false,
+ GlobalValue::InternalLinkage,
+ Array, "", getLLVMModule());
+
+ Array = ConstantExpr::getBitCast(varGV, JnjvmModule::JavaObjectType);
+
+ Elmts.push_back(Array);
Elmts.push_back(ConstantInt::get(Type::Int32Ty, str->count));
Elmts.push_back(ConstantInt::get(Type::Int32Ty, str->cachedHashCode));
Elmts.push_back(ConstantInt::get(Type::Int32Ty, str->offset));
-
+
return ConstantStruct::get(STy, Elmts);
}
More information about the vmkit-commits
mailing list