diff --git a/cm_backtrace/cm_backtrace.c b/cm_backtrace/cm_backtrace.c index 9038b06..5cec284 100644 --- a/cm_backtrace/cm_backtrace.c +++ b/cm_backtrace/cm_backtrace.c @@ -35,7 +35,11 @@ #error "must be C99 or higher. try to add '-std=c99' to compile parameters" #endif +<<<<<<< HEAD #if defined(__CC_ARM) || defined(__CLANG_ARM) +======= +#if defined(__CC_ARM) +>>>>>>> parent of 735020f... 添加AC6预定义支持 #define SECTION_START(_name_) _name_##$$Base #define SECTION_END(_name_) _name_##$$Limit #define IMAGE_SECTION_START(_name_) Image$$##_name_##$$Base @@ -213,7 +217,7 @@ void cm_backtrace_init(const char *firmware_name, const char *hardware_ver, cons strncpy(hw_ver, hardware_ver, CMB_NAME_MAX); strncpy(sw_ver, software_ver, CMB_NAME_MAX); -#if defined(__CC_ARM) || (defined(__ARMCC_VERSION) && (__ARMCC_VERSION >= 6120001)) +#if defined(__CC_ARM) main_stack_start_addr = (uint32_t)&CSTACK_BLOCK_START(CMB_CSTACK_BLOCK_NAME); main_stack_size = (uint32_t)&CSTACK_BLOCK_END(CMB_CSTACK_BLOCK_NAME) - main_stack_start_addr; code_start_addr = (uint32_t)&CODE_SECTION_START(CMB_CODE_SECTION_NAME); @@ -434,7 +438,7 @@ static void print_call_stack(uint32_t sp) { cur_depth = cm_backtrace_call_stack(call_stack_buf, CMB_CALL_STACK_MAX_DEPTH, sp); for (i = 0; i < cur_depth; i++) { - sprintf(call_stack_info + i * (8 + 1), "%08x", call_stack_buf[i]); + sprintf(call_stack_info + i * (8 + 1), "%08lx", call_stack_buf[i]); call_stack_info[i * (8 + 1) + 8] = ' '; } diff --git a/cm_backtrace/cmb_def.h b/cm_backtrace/cmb_def.h index c381f22..2b5268a 100644 --- a/cm_backtrace/cmb_def.h +++ b/cm_backtrace/cmb_def.h @@ -60,7 +60,11 @@ #endif +<<<<<<< HEAD #if defined(__CC_ARM) || defined(__CLANG_ARM) +======= +#if defined(__CC_ARM) +>>>>>>> parent of 735020f... 添加AC6预定义支持 /* C stack block name, default is STACK */ #ifndef CMB_CSTACK_BLOCK_NAME #define CMB_CSTACK_BLOCK_NAME STACK