fixbug: jit_load of Android10 is with empty param
This commit is contained in:
parent
2d036e98d8
commit
e10bde00db
|
|
@ -13,7 +13,6 @@ extern int SDK_INT;
|
||||||
extern "C" {
|
extern "C" {
|
||||||
|
|
||||||
|
|
||||||
void* (*jitLoad)(bool*) = nullptr;
|
|
||||||
void* jitCompilerHandle = nullptr;
|
void* jitCompilerHandle = nullptr;
|
||||||
bool (*jitCompileMethod)(void*, void*, void*, bool) = nullptr;
|
bool (*jitCompileMethod)(void*, void*, void*, bool) = nullptr;
|
||||||
bool (*jitCompileMethodQ)(void*, void*, void*, bool, bool) = nullptr;
|
bool (*jitCompileMethodQ)(void*, void*, void*, bool, bool) = nullptr;
|
||||||
|
|
@ -77,11 +76,17 @@ extern "C" {
|
||||||
bool)>(getSymCompat(jit_lib_path,
|
bool)>(getSymCompat(jit_lib_path,
|
||||||
"jit_compile_method"));
|
"jit_compile_method"));
|
||||||
}
|
}
|
||||||
jitLoad = reinterpret_cast<void* (*)(bool*)>(getSymCompat(jit_lib_path, "jit_load"));
|
auto jit_load = getSymCompat(jit_lib_path, "jit_load");
|
||||||
bool generate_debug_info = false;
|
if (jit_load) {
|
||||||
|
if (SDK_INT >= ANDROID_Q) {
|
||||||
if (jitLoad != nullptr) {
|
// Android 10:void* jit_load()
|
||||||
jitCompilerHandle = (jitLoad)(&generate_debug_info);
|
// Android 11: JitCompilerInterface* jit_load()
|
||||||
|
jitCompilerHandle = reinterpret_cast<void*(*)()>(jit_load)();
|
||||||
|
} else {
|
||||||
|
// void* jit_load(bool* generate_debug_info)
|
||||||
|
bool generate_debug_info = false;
|
||||||
|
jitCompilerHandle = reinterpret_cast<void*(*)(void*)>(jit_load)(&generate_debug_info);
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
jitCompilerHandle = getGlobalJitCompiler();
|
jitCompilerHandle = getGlobalJitCompiler();
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue