Support dump call stack on exception and dump call stack on nuttx (#2042)

This commit is contained in:
Huang Qi 2023-03-22 18:11:53 +08:00 committed by GitHub
parent 0ee6e18a06
commit ea50bd2aca
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 17 additions and 2 deletions

View File

@ -195,6 +195,7 @@ execute_main(WASMModuleInstanceCommon *module_inst, int32 argc, char *argv[])
if (argv_buf_offset)
wasm_runtime_module_free(module_inst, argv_buf_offset);
return ret;
}
@ -203,7 +204,7 @@ wasm_application_execute_main(WASMModuleInstanceCommon *module_inst, int32 argc,
char *argv[])
{
bool ret;
#if WASM_ENABLE_MEMORY_PROFILING != 0
#if (WASM_ENABLE_MEMORY_PROFILING != 0) || (WASM_ENABLE_DUMP_CALL_STACK != 0)
WASMExecEnv *exec_env;
#endif
@ -220,7 +221,15 @@ wasm_application_execute_main(WASMModuleInstanceCommon *module_inst, int32 argc,
wasm_runtime_dump_perf_profiling(module_inst);
#endif
return (ret && !wasm_runtime_get_exception(module_inst)) ? true : false;
if (ret)
ret = wasm_runtime_get_exception(module_inst) == NULL;
#if WASM_ENABLE_DUMP_CALL_STACK != 0
if (!ret)
wasm_runtime_dump_call_stack(exec_env);
#endif
return ret;
}
/**

View File

@ -216,6 +216,12 @@ else
CFLAGS += -DWASM_ENABLE_MEMORY_TRACING=0
endif
ifeq ($(CONFIG_INTERPRETERS_WAMR_DUMP_CALL_STACK),y)
CFLAGS += -DWASM_ENABLE_DUMP_CALL_STACK=1
else
CFLAGS += -DWASM_ENABLE_DUMP_CALL_STACK=0
endif
ifeq ($(CONFIG_INTERPRETERS_WAMR_LIBC_BUILTIN),y)
CFLAGS += -DWASM_ENABLE_LIBC_BUILTIN=1
CSRCS += libc_builtin_wrapper.c