Forum Discussion
Runtime Stack Checking not working
Hi - I'm running C++ code on a Max10 and booting from the UFM. Everything works well enough, however, I'm trying to search for a hard to find bug. In the process of doing this, I thought I'd enable runtime stack checking. I did this by following the embedded developers guide.
I have enabled "runtime stack checking" and also enabled "instruction related exceptions" in the BSP. However, when I do this, the device stops booting properly - it never leaves alt_main(). It appears to continuously trigger a 'trap' exception while trying to configure the system clock timer (sys_clk_timer). However - this works fine if "runtime stack checking" is left turned off.
Has anyone experienced something similar?
5 Replies
- Ahmed_H_Intel1
Frequent Contributor
Hi,
Can you share the BSP settings?
- Broddo
Occasional Contributor
Sure thing. Here is "settings.bsp" renamed as "settings.xml" to allow it to be uploaded to the forum.
- Ahmed_H_Intel1
Frequent Contributor
Thanks for the shared file, I will check it and let you know my comments
- Broddo
Occasional Contributor
Thanks! Some more info that might be useful: if I remove the system clock from the BSP but leave runtime stack checking enabled, it works fine also.
- Broddo
Occasional Contributor
I think I've found the answer. I'm using the vectored interrupt controller. Seciont 37.5.6 the Embedded Peripherals IP User Guide version 19.2 (page 452) states:
"The VIC does not support runtime stack checking feature (hal.enable_runtime_stack_checking) in the BSP setting."
That is most likely the reason then.