From fe6f72d16eee74a12826cf58f5fc8bbbeb57d268 Mon Sep 17 00:00:00 2001 From: Ilya Mizus Date: Tue, 23 Jun 2015 16:04:42 +0300 Subject: [PATCH 1/2] fixed abs() compilation for Android classpath on OSX --- src/classpath-android.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/classpath-android.cpp b/src/classpath-android.cpp index f7b62c1c9..b263e8354 100644 --- a/src/classpath-android.cpp +++ b/src/classpath-android.cpp @@ -8,6 +8,9 @@ There is NO WARRANTY for this software. See license.txt for details. */ +#include +using namespace std; + struct JavaVM; struct _JavaVM; struct _JNIEnv; @@ -1206,7 +1209,7 @@ extern "C" AVIAN_EXPORT int64_t JNICALL extern "C" AVIAN_EXPORT int64_t JNICALL Avian_java_lang_Math_abs__J(Thread*, object, uintptr_t* arguments) { - return llabs(arguments[0]); + return llabs(static_cast(arguments[0])); } extern "C" AVIAN_EXPORT int64_t JNICALL From 2c7e3960d6278b388c63f3f27a0f265af3a00f4c Mon Sep 17 00:00:00 2001 From: Ilya Mizus Date: Wed, 24 Jun 2015 17:49:56 +0300 Subject: [PATCH 2/2] llabs call fixed --- src/classpath-android.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/classpath-android.cpp b/src/classpath-android.cpp index b263e8354..c5db8be5e 100644 --- a/src/classpath-android.cpp +++ b/src/classpath-android.cpp @@ -1209,7 +1209,8 @@ extern "C" AVIAN_EXPORT int64_t JNICALL extern "C" AVIAN_EXPORT int64_t JNICALL Avian_java_lang_Math_abs__J(Thread*, object, uintptr_t* arguments) { - return llabs(static_cast(arguments[0])); + int64_t v; memcpy(&v, arguments, 8); + return llabs(v); } extern "C" AVIAN_EXPORT int64_t JNICALL