I have found in my code where register R8 is being used as a loop variable in a FOR loop. In the loop, a call is made to a floating point library routine (fpcmp.s), which inadvertently destroys R8. This makes my FOR loop an infinite loop. Could this somehow be a setup issue? Has anyone else seen similar problems?
Under what version of the Keil CARM compiler did you build the project that shows these symptoms?
IDE-Version: µVision3 V3.21 Copyright (c) Keil Elektronik GmbH / Keil Software, Inc. 1995 - 2005 License Information: Dave Burbick KDI KDI Precision Products LIC=---- Tool Version Numbers: Toolchain Path: C:\Keil\ARM\BIN\ C Compiler: CA.Exe V2.40a Assembler: AA.Exe V2.40a Linker/Locator: LA.Exe V2.40 Librarian: LIBA.Exe V4.26 Hex Converter: OHA.Exe V2.10 CPU DLL: SARM.DLL V1.28 Dialog DLL: DARMP.DLL V1.10 Target DLL: BIN\UL2ARM.DLL V1.14 Dialog DLL: TARMP.DLL V1.10
We have solved this issue. If you want a patch for your version, please send email to: support.intl@keil.com The fix will be part of the next release. Reinhard