Move JNI compiler tests to use pure JNI.
Implement JNI upcalls for x86.
Fix off by 1 bug in JNI calling convention for x86.
Fix bugs in ARM JNI upcalls.
Straw man JNI invoke nonvirtual implementations.
Match va_start with va_end in JNI internals.
Change-Id: I64d62eca41ac726ae0d007c1f41d2193db5be82e
diff --git a/src/calling_convention_arm.cc b/src/calling_convention_arm.cc
index 0300ad1..743445d 100644
--- a/src/calling_convention_arm.cc
+++ b/src/calling_convention_arm.cc
@@ -31,10 +31,7 @@
// Managed runtime calling convention
bool ManagedRuntimeCallingConvention::IsCurrentParamInRegister() {
- if (itr_slots_ < 3) {
- return true;
- }
- return false; // everything else on the stack
+ return itr_slots_ < 3;
}
bool ManagedRuntimeCallingConvention::IsCurrentParamOnStack() {
@@ -67,8 +64,7 @@
FrameOffset ManagedRuntimeCallingConvention::CurrentParamStackOffset() {
CHECK_GE(itr_slots_, 3u);
- return FrameOffset(displacement_.Int32Value() +
- ((itr_slots_ - 3) * kPointerSize));
+ return FrameOffset(displacement_.Int32Value() + (itr_slots_ * kPointerSize));
}
// JNI calling convention