[vmkit-commits] [vmkit] r147398 - /vmkit/trunk/lib/j3/ClassLib/OpenJDK/OpenJDK.inc
Will Dietz
wdietz2 at illinois.edu
Sun Jan 1 05:14:34 PST 2012
Author: wdietz2
Date: Sun Jan 1 07:14:34 2012
New Revision: 147398
URL: http://llvm.org/viewvc/llvm-project?rev=147398&view=rev
Log:
Impl JVM_ConstantPoolGetIntAt
Modified:
vmkit/trunk/lib/j3/ClassLib/OpenJDK/OpenJDK.inc
Modified: vmkit/trunk/lib/j3/ClassLib/OpenJDK/OpenJDK.inc
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/j3/ClassLib/OpenJDK/OpenJDK.inc?rev=147398&r1=147397&r2=147398&view=diff
==============================================================================
--- vmkit/trunk/lib/j3/ClassLib/OpenJDK/OpenJDK.inc (original)
+++ vmkit/trunk/lib/j3/ClassLib/OpenJDK/OpenJDK.inc Sun Jan 1 07:14:34 2012
@@ -1922,7 +1922,23 @@
JNIEXPORT jint JNICALL JVM_ConstantPoolGetIntAt
(JNIEnv *env, jobject unused, jobject jcpool, jint index) {
- NYI();
+ JavaObjectClass* Cl = 0;
+ llvm_gcroot(Cl, 0);
+
+ BEGIN_JNI_EXCEPTION
+
+ Cl = jcpool ? *(JavaObjectClass**)jcpool : 0;
+ verifyNull(Cl);
+
+ Class* cl = JavaObjectClass::getClass(Cl)->asClass();
+ assert(cl);
+
+ sint32 ret = cl->getConstantPool()->IntegerAt(index);
+ RETURN_FROM_JNI(ret);
+
+ END_JNI_EXCEPTION
+
+ return 0;
}
JNIEXPORT jlong JNICALL JVM_ConstantPoolGetLongAt
More information about the vmkit-commits
mailing list