Forum Discussion

Broddo's avatar
Broddo
Icon for Occasional Contributor rankOccasional Contributor
6 years ago

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's avatar
    Ahmed_H_Intel1
    Icon for Frequent Contributor rankFrequent Contributor

    Thanks for the shared file, I will check it and let you know my comments

    • Broddo's avatar
      Broddo
      Icon for Occasional Contributor rankOccasional 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's avatar
    Broddo
    Icon for Occasional Contributor rankOccasional 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.