Looks good!<br><br><div class="gmail_quote">On Mon, Nov 7, 2011 at 9:25 PM, Will Dietz <span dir="ltr"><<a href="mailto:wdietz2@illinois.edu">wdietz2@illinois.edu</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
>From 4dee86c7d7a61ef8b6e2cd911126ee5b72e517c4 Mon Sep 17 00:00:00 2001<br>
From: Will Dietz <<a href="mailto:w@wdtz.org">w@wdtz.org</a>><br>
Date: Sun, 6 Nov 2011 22:04:20 -0600<br>
Subject: [PATCH 1/3] Impl JVM_InvokeMethod, use existing proceedMethod from<br>
Classpath<br>
<br>
---<br>
lib/J3/ClassLib/OpenJDK/OpenJDK.inc | 25 +++++++++++++++++++++++--<br>
1 files changed, 23 insertions(+), 2 deletions(-)<br>
<br>
diff --git a/lib/J3/ClassLib/OpenJDK/OpenJDK.inc<br>
b/lib/J3/ClassLib/OpenJDK/OpenJDK.inc<br>
index 92c646d..e625a9f 100644<br>
--- a/lib/J3/ClassLib/OpenJDK/OpenJDK.inc<br>
+++ b/lib/J3/ClassLib/OpenJDK/OpenJDK.inc<br>
@@ -1515,8 +1515,29 @@ JVM_GetClassAccessFlags(JNIEnv *env, jclass cls) {<br>
* java.lang.reflect.Method<br>
*/<br>
JNIEXPORT jobject JNICALL<br>
-JVM_InvokeMethod(JNIEnv *env, jobject method, jobject _obj,<br>
jobjectArray args0) {<br>
- NYI();<br>
+JVM_InvokeMethod(JNIEnv *env, jobject _m, jobject _obj, jobjectArray args0) {<br>
+ JavaObject * ret = 0;<br>
+ JavaObjectMethod * m = 0;<br>
+ llvm_gcroot(ret, 0);<br>
+ llvm_gcroot(m, 0);<br>
+<br>
+ BEGIN_JNI_EXCEPTION<br>
+<br>
+ Jnjvm* vm = JavaThread::get()->getJVM();<br>
+<br>
+ m = *(JavaObjectMethod**)_m;<br>
+<br>
+ ret = proceedMethod(<br>
+ m,<br>
+ _obj ? *(JavaObject**)_obj : 0,<br>
+ args0? *(ArrayObject**)args0 : 0,<br>
+ JavaObjectMethod::getClass(m)->getDelegatee(),<br>
+ 0 /* unused */ );<br>
+<br>
+ RETURN_FROM_JNI((jobject)th->pushJNIRef(ret));<br>
+ END_JNI_EXCEPTION<br>
+<br>
+ return 0;<br>
}<br>
<br>
/*<br>
<span class="HOEnZb"><font color="#888888">--<br>
1.7.5.1<br>
_______________________________________________<br>
vmkit-commits mailing list<br>
<a href="mailto:vmkit-commits@cs.uiuc.edu">vmkit-commits@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/vmkit-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/vmkit-commits</a><br>
</font></span></blockquote></div><br>