armink / CmBacktrace

Advanced fault backtrace library for ARM Cortex-M series MCU | ARM Cortex-M 系列 MCU 错误追踪库
MIT License
1.59k stars 640 forks source link

堆栈溢出问题 #11

Closed ctwfei closed 6 years ago

ctwfei commented 6 years ago

默认栈是向上生长?cm_backtrace_init初始化时判断一下栈的生长方向是否更好

armink commented 6 years ago

cortex-m 好像都是向下生长的吧

ctwfei commented 6 years ago
是我理解错了,看到stack start address时以为这就是栈顶
/* **C stack block start address**, defined on linker script file, default is _sstack */
#ifndef CMB_CSTACK_BLOCK_START
#define CMB_CSTACK_BLOCK_START         _sstack
#endif

if (stack_pointer < stack_start_addr || stack_pointer > stack_start_addr + stack_size) {
    stack_is_overflow = true;
}
armink commented 6 years ago

OK,那 issue 先 close 了。