diff options
author | Ian Rogers <irogers@google.com> | 2011-09-07 12:48:27 -0700 |
---|---|---|
committer | Ian Rogers <irogers@google.com> | 2011-09-07 13:08:48 -0700 |
commit | 7a99c11d220ec68c208b507570e3a78c2c18a7a1 (patch) | |
tree | 39b4bd767b7f1cef1ba45000f5da7e1d834780aa /test/MyClassNatives | |
parent | 69b15fb098162f19a4c20e6dccdcead04d9c77f0 (diff) | |
download | art-7a99c11d220ec68c208b507570e3a78c2c18a7a1.tar.gz art-7a99c11d220ec68c208b507570e3a78c2c18a7a1.tar.bz2 art-7a99c11d220ec68c208b507570e3a78c2c18a7a1.zip |
Fix various JNI compiler bugs/unimplementeds.
For both x86 and arm we were under computing the outgoing argument size.
For ARM the managed double/long passing had been assumed to be following AAPCS,
however, currently we split long/doubles across R1_R2 and R3 and the stack.
Add support for this in the managed register and jni compiler code.
Add test and various other clean ups to jni compiler code.
Change-Id: I4129076d052a8bce42304f5331b71aa3ac50210f
Diffstat (limited to 'test/MyClassNatives')
-rw-r--r-- | test/MyClassNatives/MyClassNatives.java | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/test/MyClassNatives/MyClassNatives.java b/test/MyClassNatives/MyClassNatives.java index 885747a108..c4e3791b73 100644 --- a/test/MyClassNatives/MyClassNatives.java +++ b/test/MyClassNatives/MyClassNatives.java @@ -11,6 +11,7 @@ class MyClass { native Object fooIOO(int x, Object y, Object z); static native Object fooSIOO(int x, Object y, Object z); static native int fooSII(int x, int y); + static native double fooSDD(double x, double y); static synchronized native Object fooSSIOO(int x, Object y, Object z); static native void arraycopy(Object src, int src_pos, Object dst, int dst_pos, int length); } |