TN0830 Technical note How to use EWARM 6.2x with projects built with EWARM 6.1 and previous versions Introduction Since EWARM version 6.2, the compiler adds new intrinsics for the CMSIS library that improve the compiler performance in terms of optimization. These intrinsics may break CMSIS header files included in STM32 firmware packages built with older EWARM versions. To be in line with this change, this technical note describes the steps required to use EWARM 6.2x with projects built with EWARM 6.1 and previous versions. October 2011 Doc ID 022329 Rev 1 1/6 www.st.com Contents TN0830 Contents 1 Opening previous EWARM projects with EWARM 6.2 . . . . . . . . . . . . . . 3 2 Revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2/6 Doc ID 022329 Rev 1 TN0830 1 Opening previous EWARM projects with EWARM 6.2 Opening previous EWARM projects with EWARM 6.2 When using EWARM 6.2x to open projects built with EWARM 6.1 and previous, the following compilation errors are generated due to double CMSIS definitions: Error[Pe147]: declaration is incompatible with "__interwork __softfp unsigned long __get_PSP(void)" (declared at line 52 of "C:\Program Files\IAR C:\Libraries\CMSIS\CM3\CoreSupport\core_cm3.h To overcome this issue: 1. Check the "Use CMSIS" option from Project options > General Options > Library Configuration: Figure 1. 2. Use CMSIS option Remove all CMSIS header files from your project by removing: "$PROJ_DIR$\..\..\..\Libraries\CMSIS\CM3\CoreSupport" from [Project>Options>C/C++ Compiler>Preprocessor] Doc ID 022329 Rev 1 3/6 Opening previous EWARM projects with EWARM 6.2 Figure 2. 4/6 Remove all CMSIS header files from your project Doc ID 022329 Rev 1 TN0830 TN0830 2 Revision history Revision history Table 1. Document revision history Date Revision 20-Oct-2011 1 Changes Initial release. Doc ID 022329 Rev 1 5/6 TN0830 Please Read Carefully: Information in this document is provided solely in connection with ST products. STMicroelectronics NV and its subsidiaries ("ST") reserve the right to make changes, corrections, modifications or improvements, to this document, and the products and services described herein at any time, without notice. All ST products are sold pursuant to ST's terms and conditions of sale. Purchasers are solely responsible for the choice, selection and use of the ST products and services described herein, and ST assumes no liability whatsoever relating to the choice, selection or use of the ST products and services described herein. No license, express or implied, by estoppel or otherwise, to any intellectual property rights is granted under this document. If any part of this document refers to any third party products or services it shall not be deemed a license grant by ST for the use of such third party products or services, or any intellectual property contained therein or considered as a warranty covering the use in any manner whatsoever of such third party products or services or any intellectual property contained therein. UNLESS OTHERWISE SET FORTH IN ST'S TERMS AND CONDITIONS OF SALE ST DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY WITH RESPECT TO THE USE AND/OR SALE OF ST PRODUCTS INCLUDING WITHOUT LIMITATION IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE (AND THEIR EQUIVALENTS UNDER THE LAWS OF ANY JURISDICTION), OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT. UNLESS EXPRESSLY APPROVED IN WRITING BY TWO AUTHORIZED ST REPRESENTATIVES, ST PRODUCTS ARE NOT RECOMMENDED, AUTHORIZED OR WARRANTED FOR USE IN MILITARY, AIR CRAFT, SPACE, LIFE SAVING, OR LIFE SUSTAINING APPLICATIONS, NOR IN PRODUCTS OR SYSTEMS WHERE FAILURE OR MALFUNCTION MAY RESULT IN PERSONAL INJURY, DEATH, OR SEVERE PROPERTY OR ENVIRONMENTAL DAMAGE. ST PRODUCTS WHICH ARE NOT SPECIFIED AS "AUTOMOTIVE GRADE" MAY ONLY BE USED IN AUTOMOTIVE APPLICATIONS AT USER'S OWN RISK. Resale of ST products with provisions different from the statements and/or technical features set forth in this document shall immediately void any warranty granted by ST for the ST product or service described herein and shall not create or extend in any manner whatsoever, any liability of ST. ST and the ST logo are trademarks or registered trademarks of ST in various countries. Information in this document supersedes and replaces all information previously supplied. The ST logo is a registered trademark of STMicroelectronics. All other names are the property of their respective owners. (c) 2011 STMicroelectronics - All rights reserved STMicroelectronics group of companies Australia - Belgium - Brazil - Canada - China - Czech Republic - Finland - France - Germany - Hong Kong - India - Israel - Italy - Japan Malaysia - Malta - Morocco - Philippines - Singapore - Spain - Sweden - Switzerland - United Kingdom - United States of America www.st.com 6/6 Doc ID 022329 Rev 1