mirror of
https://github.com/godotengine/godot.git
synced 2025-10-19 16:03:29 +00:00
Add support for ARMv8 (64-bit) on Android
This commit is contained in:
parent
303370d03d
commit
f78299c81b
4 changed files with 43 additions and 14 deletions
|
@ -190,7 +190,7 @@ bool JavaClass::_call_method(JavaObject *p_instance, const StringName &p_method,
|
|||
argv[i].i = *p_args[i];
|
||||
} break;
|
||||
case ARG_TYPE_LONG: {
|
||||
argv[i].j = *p_args[i];
|
||||
argv[i].j = (int64_t)*p_args[i];
|
||||
} break;
|
||||
case ARG_TYPE_FLOAT: {
|
||||
argv[i].f = *p_args[i];
|
||||
|
@ -350,7 +350,7 @@ bool JavaClass::_call_method(JavaObject *p_instance, const StringName &p_method,
|
|||
Array arr = *p_args[i];
|
||||
jlongArray a = env->NewLongArray(arr.size());
|
||||
for (int j = 0; j < arr.size(); j++) {
|
||||
jlong val = arr[j];
|
||||
jlong val = (int64_t)arr[j];
|
||||
env->SetLongArrayRegion(a, j, 1, &val);
|
||||
}
|
||||
argv[i].l = a;
|
||||
|
@ -460,9 +460,9 @@ bool JavaClass::_call_method(JavaObject *p_instance, const StringName &p_method,
|
|||
case ARG_TYPE_LONG: {
|
||||
|
||||
if (method->_static) {
|
||||
ret = env->CallStaticLongMethodA(_class, method->method, argv);
|
||||
ret = (int64_t)env->CallStaticLongMethodA(_class, method->method, argv);
|
||||
} else {
|
||||
ret = env->CallLongMethodA(p_instance->instance, method->method, argv);
|
||||
ret = (int64_t)env->CallLongMethodA(p_instance->instance, method->method, argv);
|
||||
}
|
||||
|
||||
} break;
|
||||
|
@ -680,7 +680,7 @@ bool JavaClass::_convert_object_to_variant(JNIEnv *env, jobject obj, Variant &va
|
|||
} break;
|
||||
case ARG_TYPE_LONG | ARG_NUMBER_CLASS_BIT: {
|
||||
|
||||
var = env->CallLongMethod(obj, JavaClassWrapper::singleton->Long_longValue);
|
||||
var = (int64_t)env->CallLongMethod(obj, JavaClassWrapper::singleton->Long_longValue);
|
||||
return true;
|
||||
|
||||
} break;
|
||||
|
@ -802,7 +802,7 @@ bool JavaClass::_convert_object_to_variant(JNIEnv *env, jobject obj, Variant &va
|
|||
|
||||
jlong val;
|
||||
env->GetLongArrayRegion((jlongArray)arr, 0, 1, &val);
|
||||
ret.push_back(val);
|
||||
ret.push_back((int64_t)val);
|
||||
}
|
||||
|
||||
var = ret;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue