boschresearch / blech

Blech is a language for developing reactive, real-time critical embedded software.
Apache License 2.0
72 stars 5 forks source link

show required memory as build output #6

Open mterber opened 4 years ago

mterber commented 4 years ago

Is your feature request related to a problem? Please describe. In my application, Blech is running within an FreeRTOS task. After refactoring my working Blech code (I restructured it using a deeper nesting of activities) the generated code completely failed to run on the target. Root cause: The stack size of the FreeRTOS task has been exhausted due to the deeper nesting of activities. Finding this root cause took quite a long time.

Describe the solution you'd like As a user of Blech I would like to see the amount of stack space, or something like that, that is required by the generated C code, e.g. as an output of blechc. This way, I can take this value into consideration when configuring the stack sizes of the operating system. If the exact stack size cannot be determined, an estimation would be also of great help.