I am checking on these questions.
1. While the STM32F4Discovery board (and ST-Link) were added to the Spring release of CodeBench, the addition of the peripheral register files is yet to come. We hope to have these in an upcoming release. In the meantime, if you register in the Mentor Embedded Portal, you can view this knowledgebase entry https://sourcery.mentor.com/GNUToolchain/kbentry259 which explains how to add new peripheral registers so they are visible in Eclipse's register view.
2. CodeBench itself does not ship with built-in Doxygen support. However, there are third party Eclipse plug-ins available which can perform this task.
3. No, newlib-nano is not supported in CodeBench. Our free Lite edition supports newlib and our commercial bare-metal versions include the high-performance, small footprint CSLIBC as described here: http://www.mentor.com/embedded-software/sourcery-tools/sourcery-codebench/overview/
Does this help?
Thank you for your prompt replies.
We will give a try at your recommendation for questions 1 and 2.
For question 3, we may have some misunderstanding at what newlib-nano is expected to provide versus what is effectively provided by the small footprint CSLIBC.
If you compile the attached example and compile it with the "p_Class = new Any_Class;" statement commented out first and then uncommented, you will notice a huge size difference (text size 840 in first case and 56600 in second case (not using compiler optimisation).
My understanding of the purpose of newlib-nano is to avoid such size increase by not handling exception.
Let me know if I am missing some points in the use ofCSLIBC that would bring me the expected newlib-nano benavior.
Test.zip 5.0 KB
Optimizing out exception handling is not present. The available optimizations for CSLIBC is to eliminate floating-point support and automatic buffering in standard i/o. This is covered in the installed *The CodeSourcery C Library* pdf chapter 14.
Thanks for the clarification