mirror of
https://github.com/bytecodealliance/wasm-micro-runtime.git
synced 2025-06-18 02:59:21 +00:00
aot_compile_op_call: Remove a wrong optimization (#2233)
Unlike a tail-call, the caller of an ordinary recursive call doesn't necessarily return immediately.
This commit is contained in:
parent
7c766c2283
commit
94204b90ad
|
@ -868,10 +868,6 @@ aot_compile_op_call(AOTCompContext *comp_ctx, AOTFuncContext *func_ctx,
|
|||
#if LLVM_VERSION_MAJOR >= 14
|
||||
LLVMTypeRef llvm_func_type;
|
||||
#endif
|
||||
bool recursive_call =
|
||||
(func_ctx == func_ctxes[func_idx - import_func_count]) ? true
|
||||
: false;
|
||||
|
||||
if (comp_ctx->is_indirect_mode) {
|
||||
LLVMTypeRef func_ptr_type;
|
||||
|
||||
|
@ -971,7 +967,7 @@ aot_compile_op_call(AOTCompContext *comp_ctx, AOTFuncContext *func_ctx,
|
|||
|
||||
/* Check whether there was exception thrown when executing
|
||||
the function */
|
||||
if (!tail_call && !recursive_call && comp_ctx->enable_bound_check
|
||||
if (!tail_call && comp_ctx->enable_bound_check
|
||||
&& !check_exception_thrown(comp_ctx, func_ctx))
|
||||
goto fail;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user