INNER CODE UNIT · C++
art_method
tiann/epic · library/src/main/cpp/epic.cpp:142
jlong art_method = (jlong) env->FromReflectedMethod(method);
if (art_method % 2 == 1) {
art_method = reinterpret_cast<jlong>(JniIdManager_DecodeMethodId_(ArtHelper::getJniIdManager(), art_method));
}
bool ret;
if (api_level >= 30) {
void* current_region = JitCodeCache_GetCurrentRegion(ArtHelper::getJitCodeCache());
if (api_level >= 31) {
ret = ((JIT_COMPILE_METHOD4)jit_compile_method_)(jit_compiler_handle_, reinterpret_cast<void*>(self),
reinterpret_cast<void*>(current_region),
reinterpret_cast<void*>(art_method), 1);
} else {
ret = ((JIT_COMPILE_METHOD3)jit_compile_method_)(jit_compiler_handle_, reinterpret_cast<void*>(self),
reinterpret_cast<void*>(current_region),
reinterpret_cast<void*>(art_method), false, false);
}
} else if (api_level >= 29) {
ret = ((JIT_COMPILE_METHOD2) jit_compile_method_)(jit_compiler_handle_,