SW4STM32 and SW4Linux fully supports the STM32MP1 asymmetric multicore Cortex/A7+M4 MPUs

   With System Workbench for Linux, Embedded Linux on the STM32MP1 family of MPUs from ST was never as simple to build and maintain, even for newcomers in the Linux world. And, if you install System Workbench for Linux in System Workbench for STM32 you can seamlessly develop and debug asymmetric applications running partly on Linux, partly on the Cortex-M4.
You can get more information from the ac6-tools website and download (registration required) various documents highlighting:

System Workbench for STM32

You are viewing a reply to Brilliant For-loop Bug  

Brilliant For-loop Bug


Hi Ben,

Even if I’m just “guessing”, I think even the first loop is ignored by the compiler, and it’s not a bug: your loops have no result at all, and can safely, according to the C standard, be ignored (or replaced by a simple “i = 10000;” assignment, if ever you used i later on (which is not the case in your code).

To obtain a delay in your code by a for loop, this loop must have some visible effect; the simplest way to obtain this effect, and avoids the compiler optimizing your code out (which is definitely not a bug in this case) you should declare i as volatile (volatile int i;) then the compiler will no more be allowed to simply suppress i and all its references...