]> git.sur5r.net Git - freertos/commitdiff
First pass at adding R4F floating point support.
authorrichardbarry <richardbarry@1d2547de-c912-0410-9cb9-b8ca96c0e9e2>
Sat, 13 Oct 2012 16:21:40 +0000 (16:21 +0000)
committerrichardbarry <richardbarry@1d2547de-c912-0410-9cb9-b8ca96c0e9e2>
Sat, 13 Oct 2012 16:21:40 +0000 (16:21 +0000)
git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@1792 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

FreeRTOS/Demo/CORTEX_R4_RM48_CCS5/.cproject
FreeRTOS/Demo/CORTEX_R4_RM48_CCS5/.settings/org.eclipse.core.resources.prefs
FreeRTOS/Demo/CORTEX_R4_RM48_CCS5/FreeRTOSConfig.h
FreeRTOS/Demo/CORTEX_R4_RM48_CCS5/main.c
FreeRTOS/Demo/CORTEX_R4_RM48_CCS5/os/port.c
FreeRTOS/Demo/CORTEX_R4_RM48_CCS5/os/portASM.asm
FreeRTOS/Demo/CORTEX_R4_RM48_CCS5/reg_test.asm

index d62cf321edd408c76ec483cb6cdfa6dd7cd834c5..857eea33025c3476e1a815b66450220cb0c68f3c 100644 (file)
                                                                <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=libc.a"/>\r
                                                                <listOptionValue builtIn="false" value="OUTPUT_TYPE=executable"/>\r
                                                        </option>\r
-                                                       <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1381424494" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="4.9.7" valueType="string"/>\r
+                                                       <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1381424494" name="Compiler version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="4.9.7" valueType="string"/>\r
                                                        <targetPlatform id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.targetPlatformDebug.1179903155" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.targetPlatformDebug"/>\r
-                                                       <builder buildPath="${BuildDirectory}" id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.builderDebug.1089496991" name="GNU Make.Debug" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.builderDebug"/>\r
+                                                       <builder buildPath="${BuildDirectory}" id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.builderDebug.1089496991" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.builderDebug"/>\r
                                                        <tool id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.compilerDebug.696952532" name="ARM Compiler" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.compilerDebug">\r
-                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.CODE_STATE.623387114" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.CODE_STATE" value="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.CODE_STATE.32" valueType="enumerated"/>\r
-                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.SILICON_VERSION.1841890606" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.SILICON_VERSION" value="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.SILICON_VERSION.7R4" valueType="enumerated"/>\r
-                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.FLOAT_SUPPORT.167466935" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.FLOAT_SUPPORT" value="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.FLOAT_SUPPORT._none" valueType="enumerated"/>\r
-                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.ABI.1404444528" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.ABI" value="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.ABI.eabi" valueType="enumerated"/>\r
-                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.ENUM_TYPE.443601845" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.ENUM_TYPE" value="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.ENUM_TYPE.packed" valueType="enumerated"/>\r
-                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.LITTLE_ENDIAN.514210421" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.LITTLE_ENDIAN" value="true" valueType="boolean"/>\r
-                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.OPT_LEVEL.267212406" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.OPT_LEVEL" value="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.OPT_LEVEL.3" valueType="enumerated"/>\r
-                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.DEBUGGING_MODEL.1669626848" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.DEBUGGING_MODEL" value="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.DEBUGGING_MODEL.SYMDEBUG__DWARF" valueType="enumerated"/>\r
-                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.INCLUDE_PATH.1953076587" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.INCLUDE_PATH" valueType="includePath">\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.CODE_STATE.623387114" name="Designate code state, 16-bit (thumb) or 32-bit (--code_state)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.CODE_STATE" value="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.CODE_STATE.32" valueType="enumerated"/>\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.SILICON_VERSION.1841890606" name="Target processor version (--silicon_version, -mv)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.SILICON_VERSION" value="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.SILICON_VERSION.7R4" valueType="enumerated"/>\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.FLOAT_SUPPORT.167466935" name="Specify floating point support (--float_support)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.FLOAT_SUPPORT" value="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.FLOAT_SUPPORT._none" valueType="enumerated"/>\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.ABI.1404444528" name="Application binary interface (tiabi, ti_arm9_abi, eabi) (--abi)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.ABI" value="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.ABI.eabi" valueType="enumerated"/>\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.ENUM_TYPE.443601845" name="Designate enum type (Default is packed for EABI) (--enum_type)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.ENUM_TYPE" value="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.ENUM_TYPE.packed" valueType="enumerated"/>\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.LITTLE_ENDIAN.514210421" name="Little endian code (--little_endian, -me)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.LITTLE_ENDIAN" value="true" valueType="boolean"/>\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.OPT_LEVEL.267212406" name="Optimization level (--opt_level, -O)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.OPT_LEVEL" value="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.OPT_LEVEL.3" valueType="enumerated"/>\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.DEBUGGING_MODEL.1669626848" name="Debugging model" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.DEBUGGING_MODEL" value="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.DEBUGGING_MODEL.SYMDEBUG__DWARF" valueType="enumerated"/>\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.INCLUDE_PATH.1953076587" name="Add dir to #include search path (--include_path, -I)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.INCLUDE_PATH" valueType="includePath">\r
                                                                        <listOptionValue builtIn="false" value="&quot;${CG_TOOL_ROOT}/include&quot;"/>\r
                                                                        <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}}&quot;"/>\r
                                                                        <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/demo}&quot;"/>\r
                                                                        <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/os}&quot;"/>\r
                                                                        <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/startup}&quot;"/>\r
                                                                </option>\r
-                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.DIAG_WARNING.588172833" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.DIAG_WARNING" valueType="stringList">\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.DIAG_WARNING.588172833" name="Treat diagnostic &lt;id&gt; as warning (--diag_warning, -pdsw)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.DIAG_WARNING" valueType="stringList">\r
                                                                        <listOptionValue builtIn="false" value="225"/>\r
                                                                </option>\r
-                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.DISPLAY_ERROR_NUMBER.1829685666" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.DISPLAY_ERROR_NUMBER" value="true" valueType="boolean"/>\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.DISPLAY_ERROR_NUMBER.1829685666" name="Emit diagnostic identifier numbers (--display_error_number, -pden)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.DISPLAY_ERROR_NUMBER" value="true" valueType="boolean"/>\r
                                                                <inputType id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compiler.inputType__C_SRCS.1529542724" name="C Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compiler.inputType__C_SRCS"/>\r
                                                                <inputType id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compiler.inputType__CPP_SRCS.1515585759" name="C++ Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compiler.inputType__CPP_SRCS"/>\r
                                                                <inputType id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compiler.inputType__ASM_SRCS.254481684" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compiler.inputType__ASM_SRCS"/>\r
                                                                <inputType id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compiler.inputType__ASM2_SRCS.892140900" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compiler.inputType__ASM2_SRCS"/>\r
                                                        </tool>\r
                                                        <tool id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.linkerDebug.1033617493" name="ARM Linker" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.linkerDebug">\r
-                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.OUTPUT_FILE.1902415178" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.OUTPUT_FILE" value="&quot;${ProjName}.out&quot;" valueType="string"/>\r
-                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.STACK_SIZE.1479532073" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.STACK_SIZE" value="0" valueType="string"/>\r
-                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.MAP_FILE.749910416" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.MAP_FILE" value="&quot;${ProjName}.map&quot;" valueType="string"/>\r
-                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.HEAP_SIZE.153308438" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.HEAP_SIZE" value="4096" valueType="string"/>\r
-                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.SEARCH_PATH.1359859481" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.SEARCH_PATH" valueType="stringList">\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.OUTPUT_FILE.1902415178" name="Specify output file name (--output_file, -o)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.OUTPUT_FILE" value="&quot;${ProjName}.out&quot;" valueType="string"/>\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.STACK_SIZE.1479532073" name="Set C system stack size (--stack_size, -stack)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.STACK_SIZE" value="0" valueType="string"/>\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.MAP_FILE.749910416" name="Input and output sections listed into &lt;file&gt; (--map_file, -m)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.MAP_FILE" value="&quot;${ProjName}.map&quot;" valueType="string"/>\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.HEAP_SIZE.153308438" name="Heap size for C/C++ dynamic memory allocation (--heap_size, -heap)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.HEAP_SIZE" value="4096" valueType="string"/>\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.SEARCH_PATH.1359859481" name="Add &lt;dir&gt; to library search path (--search_path, -i)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.SEARCH_PATH" valueType="stringList">\r
                                                                        <listOptionValue builtIn="false" value="&quot;${CG_TOOL_ROOT}/lib&quot;"/>\r
                                                                        <listOptionValue builtIn="false" value="&quot;${CG_TOOL_ROOT}/include&quot;"/>\r
                                                                </option>\r
-                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.DISPLAY_ERROR_NUMBER.1618522691" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.DISPLAY_ERROR_NUMBER" value="true" valueType="boolean"/>\r
-                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.LIBRARY.498176643" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.LIBRARY" valueType="libs">\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.DISPLAY_ERROR_NUMBER.1618522691" name="Emit diagnostic identifier numbers (--display_error_number)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.DISPLAY_ERROR_NUMBER" value="true" valueType="boolean"/>\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.LIBRARY.498176643" name="Include library file or command file as input (--library, -l)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.LIBRARY" valueType="libs">\r
                                                                        <listOptionValue builtIn="false" value="&quot;libc.a&quot;"/>\r
                                                                </option>\r
                                                        </tool>\r
@@ -80,8 +80,8 @@
                        </storageModule>\r
                        <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>\r
                </cconfiguration>\r
-               <cconfiguration id="com.ti.ccstudio.buildDefinitions.TMS470.Release.1557389116">\r
-                       <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.ti.ccstudio.buildDefinitions.TMS470.Release.1557389116" moduleId="org.eclipse.cdt.core.settings" name="Release">\r
+               <cconfiguration id="com.ti.ccstudio.buildDefinitions.TMS470.Debug.580416121.1629342573">\r
+                       <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.ti.ccstudio.buildDefinitions.TMS470.Debug.580416121.1629342573" moduleId="org.eclipse.cdt.core.settings" name="Debug_with_FPU">\r
                                <externalSettings/>\r
                                <extensions>\r
                                        <extension id="com.ti.ccstudio.binaryparser.CoffParser" point="org.eclipse.cdt.core.BinaryParser"/>\r
                                </extensions>\r
                        </storageModule>\r
                        <storageModule moduleId="cdtBuildSystem" version="4.0.0">\r
-                               <configuration artifactExtension="out" artifactName="${ProjName}" buildProperties="" cleanCommand="${CG_CLEAN_CMD}" description="" id="com.ti.ccstudio.buildDefinitions.TMS470.Release.1557389116" name="Release" parent="com.ti.ccstudio.buildDefinitions.TMS470.Release">\r
-                                       <folderInfo id="com.ti.ccstudio.buildDefinitions.TMS470.Release.1557389116." name="/" resourcePath="">\r
-                                               <toolChain id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.ReleaseToolchain.1510001903" name="TI Build Tools" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.ReleaseToolchain" targetTool="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.linkerRelease.1567342118">\r
-                                                       <option id="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS.266621205" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS" valueType="stringList">\r
-                                                               <listOptionValue builtIn="false" value="DEVICE_CONFIGURATION_ID=Cortex R.RM48L952"/>\r
+                               <configuration artifactExtension="out" artifactName="${ProjName}" buildProperties="" cleanCommand="${CG_CLEAN_CMD}" description="" id="com.ti.ccstudio.buildDefinitions.TMS470.Debug.580416121.1629342573" name="Debug_with_FPU" parent="com.ti.ccstudio.buildDefinitions.TMS470.Debug">\r
+                                       <folderInfo id="com.ti.ccstudio.buildDefinitions.TMS470.Debug.580416121.1629342573." name="/" resourcePath="">\r
+                                               <toolChain id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.DebugToolchain.1409377084" name="TI Build Tools" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.DebugToolchain" targetTool="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.linkerDebug.1033617493">\r
+                                                       <option id="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS.1069870709" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS" valueType="stringList">\r
+                                                               <listOptionValue builtIn="false" value="DEVICE_CONFIGURATION_ID=Cortex R.RM48L950"/>\r
                                                                <listOptionValue builtIn="false" value="DEVICE_ENDIANNESS=little"/>\r
                                                                <listOptionValue builtIn="false" value="OUTPUT_FORMAT=ELF"/>\r
                                                                <listOptionValue builtIn="false" value="CCS_MBS_VERSION=5.1.0.01"/>\r
-                                                               <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=rtsv7R4_T_le_v3D16_eabi.lib"/>\r
+                                                               <listOptionValue builtIn="false" value="LINKER_COMMAND_FILE=sys_link.cmd"/>\r
+                                                               <listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY=libc.a"/>\r
                                                                <listOptionValue builtIn="false" value="OUTPUT_TYPE=executable"/>\r
                                                        </option>\r
-                                                       <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1859769006" name="Compiler version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="4.9.5" valueType="string"/>\r
-                                                       <targetPlatform id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.targetPlatformRelease.1886854345" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.targetPlatformRelease"/>\r
-                                                       <builder buildPath="${BuildDirectory}" id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.builderRelease.2092310904" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.builderRelease"/>\r
-                                                       <tool id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.compilerRelease.709121230" name="ARM Compiler" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.compilerRelease">\r
-                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.CODE_STATE.856988966" name="Designate code state, 16-bit (thumb) or 32-bit (--code_state)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.CODE_STATE" value="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.CODE_STATE.32" valueType="enumerated"/>\r
-                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.SILICON_VERSION.1200799451" name="Target processor version (--silicon_version, -mv)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.SILICON_VERSION" value="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.SILICON_VERSION.7R4" valueType="enumerated"/>\r
-                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.FLOAT_SUPPORT.563519534" name="Specify floating point support (--float_support)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.FLOAT_SUPPORT" value="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.FLOAT_SUPPORT.VFPv3D16" valueType="enumerated"/>\r
-                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.ABI.984902156" name="Application binary interface (tiabi, ti_arm9_abi, eabi) (--abi)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.ABI" value="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.ABI.eabi" valueType="enumerated"/>\r
-                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.ENUM_TYPE.1806392852" name="Designate enum type (Default is packed for EABI) (--enum_type)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.ENUM_TYPE" value="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.ENUM_TYPE.packed" valueType="enumerated"/>\r
-                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.DIAG_WARNING.292806785" name="Treat diagnostic &lt;id&gt; as warning (--diag_warning, -pdsw)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.DIAG_WARNING" valueType="stringList">\r
-                                                                       <listOptionValue builtIn="false" value="225"/>\r
-                                                               </option>\r
-                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.DISPLAY_ERROR_NUMBER.560946167" name="Emit diagnostic identifier numbers (--display_error_number, -pden)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.DISPLAY_ERROR_NUMBER" value="true" valueType="boolean"/>\r
-                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.INCLUDE_PATH.1735407543" name="Add dir to #include search path (--include_path, -I)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.INCLUDE_PATH" valueType="includePath">\r
+                                                       <option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.917449487" name="Compiler version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="4.9.7" valueType="string"/>\r
+                                                       <targetPlatform id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.targetPlatformDebug.377149914" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.targetPlatformDebug"/>\r
+                                                       <builder buildPath="${BuildDirectory}" id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.builderDebug.10592361" keepEnvironmentInBuildfile="false" name="GNU Make" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.builderDebug"/>\r
+                                                       <tool id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.compilerDebug.1091814429" name="ARM Compiler" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.compilerDebug">\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.CODE_STATE.90735372" name="Designate code state, 16-bit (thumb) or 32-bit (--code_state)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.CODE_STATE" value="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.CODE_STATE.32" valueType="enumerated"/>\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.SILICON_VERSION.1017275641" name="Target processor version (--silicon_version, -mv)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.SILICON_VERSION" value="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.SILICON_VERSION.7R4" valueType="enumerated"/>\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.FLOAT_SUPPORT.311679819" name="Specify floating point support (--float_support)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.FLOAT_SUPPORT" value="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.FLOAT_SUPPORT.VFPv3D16" valueType="enumerated"/>\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.ABI.987144696" name="Application binary interface (tiabi, ti_arm9_abi, eabi) (--abi)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.ABI" value="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.ABI.eabi" valueType="enumerated"/>\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.ENUM_TYPE.533021714" name="Designate enum type (Default is packed for EABI) (--enum_type)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.ENUM_TYPE" value="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.ENUM_TYPE.packed" valueType="enumerated"/>\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.LITTLE_ENDIAN.547652161" name="Little endian code (--little_endian, -me)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.LITTLE_ENDIAN" value="true" valueType="boolean"/>\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.OPT_LEVEL.1159973282" name="Optimization level (--opt_level, -O)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.OPT_LEVEL" value="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.OPT_LEVEL.3" valueType="enumerated"/>\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.DEBUGGING_MODEL.1521598567" name="Debugging model" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.DEBUGGING_MODEL" value="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.DEBUGGING_MODEL.SYMDEBUG__DWARF" valueType="enumerated"/>\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.INCLUDE_PATH.207319174" name="Add dir to #include search path (--include_path, -I)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.INCLUDE_PATH" valueType="includePath">\r
                                                                        <listOptionValue builtIn="false" value="&quot;${CG_TOOL_ROOT}/include&quot;"/>\r
+                                                                       <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}}&quot;"/>\r
+                                                                       <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/demo}&quot;"/>\r
+                                                                       <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/os}&quot;"/>\r
+                                                                       <listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/startup}&quot;"/>\r
+                                                               </option>\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.DIAG_WARNING.1653100908" name="Treat diagnostic &lt;id&gt; as warning (--diag_warning, -pdsw)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.DIAG_WARNING" valueType="stringList">\r
+                                                                       <listOptionValue builtIn="false" value="225"/>\r
                                                                </option>\r
-                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.LITTLE_ENDIAN.411357638" name="Little endian code (--little_endian, -me)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.LITTLE_ENDIAN" value="true" valueType="boolean"/>\r
-                                                               <inputType id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compiler.inputType__C_SRCS.1274560082" name="C Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compiler.inputType__C_SRCS"/>\r
-                                                               <inputType id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compiler.inputType__CPP_SRCS.1267997378" name="C++ Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compiler.inputType__CPP_SRCS"/>\r
-                                                               <inputType id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compiler.inputType__ASM_SRCS.305910033" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compiler.inputType__ASM_SRCS"/>\r
-                                                               <inputType id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compiler.inputType__ASM2_SRCS.1606352786" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compiler.inputType__ASM2_SRCS"/>\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.DISPLAY_ERROR_NUMBER.1187428873" name="Emit diagnostic identifier numbers (--display_error_number, -pden)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compilerID.DISPLAY_ERROR_NUMBER" value="true" valueType="boolean"/>\r
+                                                               <inputType id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compiler.inputType__C_SRCS.2129245761" name="C Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compiler.inputType__C_SRCS"/>\r
+                                                               <inputType id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compiler.inputType__CPP_SRCS.1546995708" name="C++ Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compiler.inputType__CPP_SRCS"/>\r
+                                                               <inputType id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compiler.inputType__ASM_SRCS.935376908" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compiler.inputType__ASM_SRCS"/>\r
+                                                               <inputType id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compiler.inputType__ASM2_SRCS.2079096160" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.compiler.inputType__ASM2_SRCS"/>\r
                                                        </tool>\r
-                                                       <tool id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.linkerRelease.1567342118" name="ARM Linker" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.linkerRelease">\r
-                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.OUTPUT_FILE.1993234820" name="Specify output file name (--output_file, -o)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.OUTPUT_FILE" value="&quot;${ProjName}.out&quot;" valueType="string"/>\r
-                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.MAP_FILE.2106964463" name="Input and output sections listed into &lt;file&gt; (--map_file, -m)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.MAP_FILE" value="&quot;${ProjName}.map&quot;" valueType="string"/>\r
-                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.DISPLAY_ERROR_NUMBER.1672298509" name="Emit diagnostic identifier numbers (--display_error_number)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.DISPLAY_ERROR_NUMBER" value="true" valueType="boolean"/>\r
-                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.SEARCH_PATH.815216306" name="Add &lt;dir&gt; to library search path (--search_path, -i)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.SEARCH_PATH" valueType="stringList">\r
+                                                       <tool id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.linkerDebug.2071872550" name="ARM Linker" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.linkerDebug">\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.OUTPUT_FILE.427459274" name="Specify output file name (--output_file, -o)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.OUTPUT_FILE" value="&quot;${ProjName}.out&quot;" valueType="string"/>\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.STACK_SIZE.1308392207" name="Set C system stack size (--stack_size, -stack)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.STACK_SIZE" value="0" valueType="string"/>\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.MAP_FILE.906805746" name="Input and output sections listed into &lt;file&gt; (--map_file, -m)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.MAP_FILE" value="&quot;${ProjName}.map&quot;" valueType="string"/>\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.HEAP_SIZE.885342969" name="Heap size for C/C++ dynamic memory allocation (--heap_size, -heap)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.HEAP_SIZE" value="4096" valueType="string"/>\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.SEARCH_PATH.46804117" name="Add &lt;dir&gt; to library search path (--search_path, -i)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.SEARCH_PATH" valueType="stringList">\r
                                                                        <listOptionValue builtIn="false" value="&quot;${CG_TOOL_ROOT}/lib&quot;"/>\r
                                                                        <listOptionValue builtIn="false" value="&quot;${CG_TOOL_ROOT}/include&quot;"/>\r
                                                                </option>\r
-                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.LIBRARY.255790447" name="Include library file or command file as input (--library, -l)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.LIBRARY" valueType="libs">\r
-                                                                       <listOptionValue builtIn="false" value="&quot;rtsv7R4_T_le_v3D16_eabi.lib&quot;"/>\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.DISPLAY_ERROR_NUMBER.1957385137" name="Emit diagnostic identifier numbers (--display_error_number)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.DISPLAY_ERROR_NUMBER" value="true" valueType="boolean"/>\r
+                                                               <option id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.LIBRARY.1354746240" name="Include library file or command file as input (--library, -l)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.linkerID.LIBRARY" valueType="libs">\r
+                                                                       <listOptionValue builtIn="false" value="&quot;libc.a&quot;"/>\r
                                                                </option>\r
                                                        </tool>\r
                                                </toolChain>\r
                                        </folderInfo>\r
-                                       <fileInfo id="com.ti.ccstudio.buildDefinitions.TMS470.Release.1557389116.sys_link.cmd" name="sys_link.cmd" rcbsApplicability="disable" resourcePath="sys_link.cmd" toolsToInvoke="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.linkerRelease.1567342118.725136841">\r
-                                               <tool id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.linkerRelease.1567342118.725136841" name="ARM Linker" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.linkerRelease.1567342118"/>\r
-                                               <tool customBuildStep="true" id="org.eclipse.cdt.managedbuilder.ui.rcbs.1742732949" name="Resource Custom Build Step">\r
-                                                       <inputType id="org.eclipse.cdt.managedbuilder.ui.rcbs.inputtype.113483468" name="Resource Custom Build Step Input Type">\r
-                                                               <additionalInput kind="additionalinputdependency" paths=""/>\r
-                                                       </inputType>\r
-                                                       <outputType id="org.eclipse.cdt.managedbuilder.ui.rcbs.outputtype.223114845" name="Resource Custom Build Step Output Type"/>\r
-                                               </tool>\r
+                                       <fileInfo id="com.ti.ccstudio.buildDefinitions.TMS470.Debug.580416121.1629342573.sys_link.cmd" name="sys_link.cmd" rcbsApplicability="disable" resourcePath="sys_link.cmd" toolsToInvoke="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.linkerDebug.1153043732">\r
+                                               <tool id="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.linkerDebug.1153043732" name="ARM Linker" superClass="com.ti.ccstudio.buildDefinitions.TMS470_4.9.exe.linkerDebug.2071872550"/>\r
                                        </fileInfo>\r
                                        <sourceEntries>\r
-                                               <entry excluding="sys_link.cmd" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>\r
+                                               <entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>\r
                                        </sourceEntries>\r
                                </configuration>\r
                        </storageModule>\r
index 7a91b467590db75585e235e17d57337c1c7dcfd8..e164ebf77ef4845af5149b6f9a7bd093904d4447 100644 (file)
@@ -10,3 +10,14 @@ encoding//Debug/startup/subdir_rules.mk=UTF-8
 encoding//Debug/startup/subdir_vars.mk=UTF-8\r
 encoding//Debug/subdir_rules.mk=UTF-8\r
 encoding//Debug/subdir_vars.mk=UTF-8\r
+encoding//Debug_with_FPU/demo/subdir_rules.mk=UTF-8\r
+encoding//Debug_with_FPU/demo/subdir_vars.mk=UTF-8\r
+encoding//Debug_with_FPU/makefile=UTF-8\r
+encoding//Debug_with_FPU/objects.mk=UTF-8\r
+encoding//Debug_with_FPU/os/subdir_rules.mk=UTF-8\r
+encoding//Debug_with_FPU/os/subdir_vars.mk=UTF-8\r
+encoding//Debug_with_FPU/sources.mk=UTF-8\r
+encoding//Debug_with_FPU/startup/subdir_rules.mk=UTF-8\r
+encoding//Debug_with_FPU/startup/subdir_vars.mk=UTF-8\r
+encoding//Debug_with_FPU/subdir_rules.mk=UTF-8\r
+encoding//Debug_with_FPU/subdir_vars.mk=UTF-8\r
index e3d22ae9cbc7ac690d554b3a4c49b3c979706fc3..514b62ed1b0e05ee5be34b5167c47c1a243bf5f9 100644 (file)
  * See http://www.freertos.org/a00110.html.\r
  *----------------------------------------------------------*/\r
 \r
-#define configUSE_PREEMPTION             1\r
-#define configUSE_IDLE_HOOK                      1\r
-#define configUSE_TICK_HOOK                      1\r
-#define configUSE_TRACE_FACILITY         0\r
-#define configUSE_16_BIT_TICKS           0\r
-#define configCPU_CLOCK_HZ                       ( ( unsigned portLONG ) 90000000 ) /* Timer clock. */\r
-#define configTICK_RATE_HZ                       ( ( portTickType ) 1000 )\r
-#define configMAX_PRIORITIES             ( ( unsigned portBASE_TYPE ) 8 )\r
-#define configMINIMAL_STACK_SIZE         ( ( unsigned portSHORT ) 128 )\r
-#define configTOTAL_HEAP_SIZE            ( ( size_t ) 32768 )\r
-#define configMAX_TASK_NAME_LEN                  ( 16 )\r
-#define configIDLE_SHOULD_YIELD                  1\r
-#define configGENERATE_RUN_TIME_STATS 0\r
-#define configUSE_MALLOC_FAILED_HOOK  1\r
-\r
-#define configCHECK_FOR_STACK_OVERFLOW 2\r
+#define configUSE_PREEMPTION                   1\r
+#define configUSE_FPU                                  1\r
+#define configUSE_IDLE_HOOK                            1\r
+#define configUSE_TICK_HOOK                            1\r
+#define configUSE_TRACE_FACILITY               0\r
+#define configUSE_16_BIT_TICKS                 0\r
+#define configCPU_CLOCK_HZ                             ( ( unsigned portLONG ) 90000000 ) /* Timer clock. */\r
+#define configTICK_RATE_HZ                             ( ( portTickType ) 1000 )\r
+#define configMAX_PRIORITIES                   ( ( unsigned portBASE_TYPE ) 8 )\r
+#define configMINIMAL_STACK_SIZE               ( ( unsigned portSHORT ) 128 )\r
+#define configTOTAL_HEAP_SIZE                  ( ( size_t ) 32768 )\r
+#define configMAX_TASK_NAME_LEN                        ( 16 )\r
+#define configIDLE_SHOULD_YIELD                        1\r
+#define configGENERATE_RUN_TIME_STATS  0\r
+#define configUSE_MALLOC_FAILED_HOOK   1\r
+\r
+#define configCHECK_FOR_STACK_OVERFLOW         2\r
 \r
 /* Co-routine definitions. */\r
-#define configUSE_CO_ROUTINES              0\r
+#define configUSE_CO_ROUTINES                  0\r
 #define configMAX_CO_ROUTINE_PRIORITIES ( 2 )\r
 \r
 /* Mutexes */\r
-#define configUSE_MUTEXES               1\r
-#define configUSE_RECURSIVE_MUTEXES     1\r
+#define configUSE_MUTEXES                              1\r
+#define configUSE_RECURSIVE_MUTEXES            1\r
 \r
 /* Semaphores */\r
 #define configUSE_COUNTING_SEMAPHORES   1\r
 \r
 /* Timers */\r
-#define configUSE_TIMERS                1\r
+#define configUSE_TIMERS                               1\r
 #define configTIMER_TASK_PRIORITY              ( 2 )\r
 #define configTIMER_QUEUE_LENGTH               10\r
 #define configTIMER_TASK_STACK_DEPTH   ( 128 )\r
 \r
 /* Set the following definitions to 1 to include the API function, or zero to exclude the API function. */\r
-#define INCLUDE_vTaskPrioritySet                   1\r
-#define INCLUDE_uxTaskPriorityGet                  1\r
-#define INCLUDE_vTaskDelete                                1\r
-#define INCLUDE_vTaskCleanUpResources      0\r
-#define INCLUDE_vTaskSuspend                   1\r
-#define INCLUDE_xTaskResumeFromISR          0\r
-#define INCLUDE_vTaskDelayUntil                            1\r
-#define INCLUDE_vTaskDelay                                 1\r
-#define INCLUDE_xTaskGetSchedulerState      1\r
+#define INCLUDE_vTaskPrioritySet                       1\r
+#define INCLUDE_uxTaskPriorityGet                      1\r
+#define INCLUDE_vTaskDelete                                    1\r
+#define INCLUDE_vTaskCleanUpResources          0\r
+#define INCLUDE_vTaskSuspend                           1\r
+#define INCLUDE_xTaskResumeFromISR                     0\r
+#define INCLUDE_vTaskDelayUntil                                1\r
+#define INCLUDE_vTaskDelay                                     1\r
+#define INCLUDE_xTaskGetSchedulerState         1\r
 #define INCLUDE_uxTaskGetStackHighWaterMark 1\r
 \r
+#define configASSERT( x ) if( ( x ) == pdFALSE ) { taskDISABLE_INTERRUPTS(); for( ;; ); }\r
+\r
 #endif /* FREERTOS_CONFIG_H */\r
index fdba8b7d23d5c6545e0f9f526eeef3339d9b57dc..6bc7e50a14f7204e90f9d057a6a227a8b427f2b2 100644 (file)
@@ -113,7 +113,6 @@ extern void main_full( void );
 \r
 /* See the documentation page for this demo on the FreeRTOS.org web site for\r
 full information - including hardware setup requirements. */\r
-\r
 int main( void )\r
 {\r
        /* Prepare the hardware to run this demo. */\r
index 1f72ac4daaec28a3493f861f12e4f169b338c4a2..ded485033ffb28d55d67a25f1e81fce529b7ac89 100644 (file)
@@ -90,9 +90,9 @@ unsigned portLONG ulCriticalNesting = 9999;
 \r
 \r
 /* Constants required to set up the initial stack of each task. */\r
-#define portINITIAL_SPSR          ( ( portSTACK_TYPE ) 0x1F )\r
-#define portINITIAL_FPSCR        ( ( portSTACK_TYPE ) 0x00 )\r
-#define portINSTRUCTION_SIZE   ( ( portSTACK_TYPE ) 0x04 )\r
+#define portINITIAL_SPSR               ( ( portSTACK_TYPE ) 0x1F )\r
+#define portINITIAL_FPSCR              ( ( portSTACK_TYPE ) 0x00 )\r
+#define portINSTRUCTION_SIZE           ( ( portSTACK_TYPE ) 0x04 )\r
 #define portTHUMB_MODE_BIT             ( ( portSTACK_TYPE ) 0x20 )\r
 \r
 /* The number of words on the stack frame between the saved Top Of Stack and\r
@@ -106,6 +106,12 @@ extern void vPortStartFirstTask( void );
 \r
 /*-----------------------------------------------------------*/\r
 \r
+/* Saved as part of the task context.  Set to pdFALSE if the task does not\r
+require an FPU context. */\r
+unsigned long ulTaskHasFPUContext = 0;\r
+\r
+/*-----------------------------------------------------------*/\r
+\r
 \r
 /*\r
  * See header file for description.\r
@@ -116,6 +122,13 @@ portSTACK_TYPE *pxOriginalTOS;
 \r
        pxOriginalTOS = pxTopOfStack;\r
 \r
+       #if __TI_VFP_SUPPORT__\r
+       {\r
+               /* Ensure the stack is correctly aligned on exit. */\r
+               pxTopOfStack--;\r
+       }\r
+       #endif\r
+\r
        /* Setup the initial stack of the task.  The stack is set exactly as\r
        expected by the portRESTORE_CONTEXT() macro. */\r
 \r
@@ -167,8 +180,7 @@ portSTACK_TYPE *pxOriginalTOS;
        *pxTopOfStack = ( portSTACK_TYPE ) pvParameters; /* R0 */\r
        pxTopOfStack--;\r
 \r
-       /* The last thing onto the stack is the status register, which is set for\r
-       system mode, with interrupts enabled. */\r
+       /* Set the status register for system mode, with interrupts enabled. */\r
        *pxTopOfStack = ( portSTACK_TYPE ) ( ( _get_CPSR() & ~0xFF ) | portINITIAL_SPSR );\r
 \r
        if( ( ( unsigned long ) pxCode & 0x01UL ) != 0x00 )\r
@@ -177,6 +189,17 @@ portSTACK_TYPE *pxOriginalTOS;
                *pxTopOfStack |= portTHUMB_MODE_BIT;\r
        }\r
 \r
+       #ifdef __TI_VFP_SUPPORT__\r
+       {\r
+               pxTopOfStack--;\r
+\r
+               /* The last thing on the stack is the tasks ulUsingFPU value, which by\r
+               default is set to indicate that the stack frame does not include FPU\r
+               registers. */\r
+               *pxTopOfStack = pdFALSE;\r
+       }\r
+       #endif\r
+\r
        return pxTopOfStack;\r
 }\r
 /*-----------------------------------------------------------*/\r
@@ -307,3 +330,21 @@ void vPortExitCritical( void )
 }\r
 /*-----------------------------------------------------------*/\r
 \r
+#if __TI_VFP_SUPPORT__\r
+\r
+       void vPortTaskUsesFPU( void )\r
+       {\r
+       extern void vPortInitialiseFPSCR( void );\r
+\r
+               /* A task is registering the fact that it needs an FPU context.  Set the\r
+               FPU flag (saved as part of the task context. */\r
+               ulTaskHasFPUContext = pdTRUE;\r
+\r
+               /* Initialise the floating point status register. */\r
+               vPortInitialiseFPSCR();\r
+       }\r
+\r
+#endif /* __TI_VFP_SUPPORT__ */\r
+\r
+/*-----------------------------------------------------------*/\r
+\r
index 2805d0279f6ecb5758e457b3f273c69d39f5351e..522c40cc820a65f04832abdae1fdb23231d31a80 100644 (file)
 ;    licensing and training services.\r
 ;*/\r
 \r
-; TCJ:  Using SSI interrupt todo portYIELD_WITHIN_API, means that we do not need\r
-;       to save ulCriticalNesting in the task context\r
-\r
         .text\r
         .arm\r
+        .ref vTaskSwitchContext\r
+        .ref vTaskIncrementTick\r
+        .ref ulTaskHasFPUContext\r
+               .ref pxCurrentTCB\r
 \r
-;-------------------------------------------------------------------------------\r
+;/*-----------------------------------------------------------*/\r
 ;\r
 ; Save Task Context \r
 ;\r
 portSAVE_CONTEXT .macro\r
-        stmfd   sp!, {r0}\r
-        stmfd   sp,  {sp}^\r
-        sub     sp,  sp, #4\r
-        ldmfd   sp!, {r0}\r
-        stmfd   r0!, {lr}\r
-        mov        lr,  r0\r
-        ldmfd   sp!, {r0}\r
-        stmfd   lr,  {r0-lr}^\r
-        sub     lr,  lr, #0x3C\r
-    .if (__TI_VFPV3D16_SUPPORT__)\r
-        fstmdbd lr!, {d0-d15}\r
-        mrs        r0,  spsr\r
-        fmrx    r1,  fpscr\r
-        stmfd   lr!, {r0,r1}\r
-    .else\r
-        mrs        r0,  spsr\r
-        stmfd   lr!, {r0}\r
-    .endif\r
-        ldr            r0,  curTCB\r
-        ldr        r0,  [r0]\r
-        str        lr,  [r0]\r
-        .endm\r
+               DSB\r
 \r
-;-------------------------------------------------------------------------------\r
+               ; Push R0 as we are going to use it\r
+               STMDB   SP!, {R0}\r
+\r
+               ; Set R0 to point to the task stack pointer.\r
+               STMDB   SP,{SP}^\r
+               SUB     SP, SP, #4\r
+               LDMIA   SP!,{R0}\r
+\r
+               ; Push the return address onto the stack.\r
+               STMDB   R0!, {LR}\r
+\r
+               ; Now LR has been saved, it can be used instead of R0.\r
+               MOV     LR, R0\r
+\r
+               ; Pop R0 so it can be saved onto the task stack.\r
+               LDMIA   SP!, {R0}\r
+\r
+               ; Push all the system mode registers onto the task stack.\r
+               STMDB   LR,{R0-LR}^\r
+               SUB     LR, LR, #60\r
 \r
+               ; Push the SPSR onto the task stack.\r
+               MRS     R0, SPSR\r
+               STMDB   LR!, {R0}\r
+\r
+    .if (__TI_VFP_SUPPORT__)\r
+               ;Determine if the task maintains an FPU context.\r
+               LDR     R0, ulFPUContextConst\r
+               LDR     R0, [R0]\r
+\r
+               ; Test the flag\r
+               CMP             R0, #0\r
+\r
+               ; If the task is not using a floating point context then skip the\r
+               ; saving of the FPU registers.\r
+               BEQ             PC+3\r
+               FSTMDBD LR!, {D0-D15}\r
+               FMRX    R1,  FPSCR\r
+               STMFD   LR!, {R1}\r
+\r
+               ; Save the flag\r
+               STMDB   LR!, {R0}\r
+       .endif\r
+\r
+               ; Store the new top of stack for the task.\r
+               LDR     R0, pxCurrentTCBConst\r
+               LDR     R0, [R0]\r
+               STR     LR, [R0]\r
+\r
+        .endm\r
+\r
+;/*-----------------------------------------------------------*/\r
+;\r
 ; Restore Task Context\r
 ;\r
 portRESTORE_CONTEXT .macro\r
-        ldr            r0,  curTCB\r
-        ldr            r0,  [r0]\r
-        ldr            lr,  [r0]\r
-    .if (__TI_VFPV3D16_SUPPORT__)\r
-        ldmfd   lr!, {r0,r1}\r
-        fldmiad lr!, {d0-d15}\r
-        fmxr    fpscr, r1\r
-    .else\r
-        ldmfd   lr!, {r0}\r
-    .endif\r
-        msr            spsr_csxf, r0\r
-        ldmfd  lr, {r0-r14}^\r
-        ldr            lr, [lr, #0x3C]\r
-        subs   pc, lr, #4\r
+               LDR             R0, pxCurrentTCBConst\r
+               LDR             R0, [R0]\r
+               LDR             LR, [R0]\r
+\r
+       .if (__TI_VFP_SUPPORT__)\r
+               ; The floating point context flag is the first thing on the stack.\r
+               LDR             R0, ulFPUContextConst\r
+               LDMFD   LR!, {R1}\r
+               STR             R1, [R0]\r
+\r
+               ; Test the flag\r
+               CMP             R1, #0\r
+\r
+               ; If the task is not using a floating point context then skip the\r
+               ; VFP register loads.\r
+               BEQ             PC+3\r
+\r
+               ; Restore the floating point context.\r
+               LDMFD   LR!, {R0}\r
+               FLDMIAD LR!, {D0-D15}\r
+               FMXR    FPSCR, R0\r
+       .endif\r
+\r
+               ; Get the SPSR from the stack.\r
+               LDMFD   LR!, {R0}\r
+               MSR             SPSR_CF, R0\r
+\r
+               ; Restore all system mode registers for the task.\r
+               LDMFD   LR, {R0-R14}^\r
+\r
+               ; Restore the return address.\r
+               LDR             LR, [LR, #+60]\r
+\r
+               ; And return - correcting the offset in the LR to obtain the\r
+               ; correct address.\r
+               SUBS    PC, LR, #4\r
         .endm\r
 \r
-;-------------------------------------------------------------------------------\r
-; Start First Task\r
+;/*-----------------------------------------------------------*/\r
+; Start the first task by restoring its context.\r
 \r
         .def vPortStartFirstTask\r
 \r
-vPortStartFirstTask\r
+vPortStartFirstTask:\r
         portRESTORE_CONTEXT\r
 \r
-;-------------------------------------------------------------------------------\r
-; Yield Processor\r
+;/*-----------------------------------------------------------*/\r
+; Yield to another task.\r
 \r
         .def vPortYieldProcessor\r
-        .ref vTaskSwitchContext\r
 \r
-vPortYieldProcessor\r
-        add     lr, lr, #4\r
+vPortYieldProcessor:\r
+               ; Within an IRQ ISR the link register has an offset from the true return\r
+               ; address.  SWI doesn't do this. Add the offset manually so the ISR\r
+               ; return code can be used.\r
+        ADD     LR, LR, #4\r
+\r
+        ; First save the context of the current task.\r
         portSAVE_CONTEXT\r
-        bl      vTaskSwitchContext\r
+\r
+        ; Select the next task to execute. */\r
+        BL      vTaskSwitchContext\r
+\r
+        ; Restore the context of the task selected to execute.\r
         portRESTORE_CONTEXT\r
 \r
-;-------------------------------------------------------------------------------\r
-; Yield Processor From Within FreeRTOS API\r
+;/*-----------------------------------------------------------*/\r
+; Yield to another task from within the FreeRTOS API\r
 \r
                .def vPortYeildWithinAPI\r
 \r
-vPortYeildWithinAPI\r
+vPortYeildWithinAPI:\r
+               ; Save the context of the current task.\r
+\r
         portSAVE_CONTEXT\r
-               ; clear SSI flag\r
-               movw    r0, #0xFFF4\r
-               movt    r0, #0xFFFF\r
-               ldr     r0, [r0];\r
-               ; switch task\r
-        bl      vTaskSwitchContext\r
+               ; Clear SSI flag.\r
+               MOVW    R0, #0xFFF4\r
+               MOVT    R0, #0xFFFF\r
+               LDR     R0, [R0]\r
+\r
+               ; Select the next task to execute. */\r
+        BL      vTaskSwitchContext\r
+\r
+        ; Restore the context of the task selected to execute.\r
         portRESTORE_CONTEXT\r
 \r
-;-------------------------------------------------------------------------------\r
+;/*-----------------------------------------------------------*/\r
 ; Preemptive Tick\r
 \r
         .def vPortPreemptiveTick\r
-        .ref vTaskIncrementTick\r
 \r
-vPortPreemptiveTick\r
+vPortPreemptiveTick:\r
+\r
+               ; Save the context of the current task.\r
         portSAVE_CONTEXT\r
-        ; clear interrupt flag\r
-        movw    r0, #0xFC88\r
-        movt    r0, #0xFFFF\r
-        mov     r1, #1\r
-        str     r1, [r0]\r
-        bl      vTaskIncrementTick\r
-        bl      vTaskSwitchContext\r
+\r
+        ; Clear interrupt flag\r
+        MOVW    R0, #0xFC88\r
+        MOVT    R0, #0xFFFF\r
+        MOV     R1, #1\r
+        STR     R1, [R0]\r
+\r
+        ; Increment the tick count, making any adjustments to the blocked lists\r
+        ; that may be necessary.\r
+        BL      vTaskIncrementTick\r
+\r
+        ; Select the next task to execute.\r
+        BL      vTaskSwitchContext\r
+\r
+        ; Restore the context of the task selected to execute.\r
         portRESTORE_CONTEXT\r
 \r
 ;-------------------------------------------------------------------------------\r
 \r
-               .ref    pxCurrentTCB\r
-curTCB .word   pxCurrentTCB\r
+       .if (__TI_VFP_SUPPORT__)\r
+\r
+               .def vPortInitialiseFPSCR\r
+\r
+vPortInitialiseFPSCR:\r
+\r
+               MOV             R0, #0\r
+               FMXR    FPSCR, R0\r
+               BX              LR\r
+\r
+       .endif ;__TI_VFP_SUPPORT__\r
 \r
+pxCurrentTCBConst      .word   pxCurrentTCB\r
+ulFPUContextConst      .word   ulTaskHasFPUContext\r
 ;-------------------------------------------------------------------------------\r
 \r
index 5e0e58380253fdb7bcc2434f92a33ecff955366c..d39c09dee598482c99465f965c7ccc521e4a0fa6 100644 (file)
 ;\r
                .def    vRegTestTask1\r
                .ref    ulRegTest1Counter\r
+\r
+               .if (__TI_VFP_SUPPORT__)\r
+                       .ref vPortTaskUsesFPU\r
+               .endif ;__TI_VFP_SUPPORT__\r
+\r
                .text\r
                .arm\r
 \r
 vRegTestTask1:\r
+       .if (__TI_VFP_SUPPORT__)\r
+               ; Let the port layer know that this task needs its FPU context saving.\r
+               BL              vPortTaskUsesFPU\r
+       .endif\r
+\r
                ; Fill each general purpose register with a known value.\r
                mov             r0,  #0xFF\r
                mov             r1,  #0x11\r
@@ -87,12 +97,134 @@ vRegTestTask1:
                mov     r11, #0xBB\r
                mov     r12, #0xCC\r
                mov             r14, #0xEE\r
+\r
+       .if (__TI_VFP_SUPPORT__)\r
+               ; Fill each FPU register with a known value.\r
+               vmov    d0, r0, r1\r
+               vmov    d1, r2, r3\r
+               vmov    d2, r4, r5\r
+               vmov    d3, r6, r7\r
+               vmov    d4, r8, r9\r
+               vmov    d5, r10, r11\r
+               vmov    d6, r0, r1\r
+               vmov    d7, r2, r3\r
+               vmov    d8, r4, r5\r
+               vmov    d9, r6, r7\r
+               vmov    d10, r8, r9\r
+               vmov    d11, r10, r11\r
+               vmov    d12, r0, r1\r
+               vmov    d13, r2, r3\r
+               vmov    d14, r4, r5\r
+               vmov    d15, r6, r7\r
+       .endif\r
+\r
        \r
 vRegTestLoop1:\r
 \r
                ; Force yeild\r
                swi             #0\r
 \r
+       .if (__TI_VFP_SUPPORT__)\r
+               ; Check all the VFP registers still contain the values set above.\r
+               ; First save registers that are clobbered by the test.\r
+               push { r0-r1 }\r
+\r
+               vmov    r0, r1, d0\r
+               cmp     r0, #0xFF\r
+               bne     reg1_error_loopf\r
+               cmp     r1, #0x11\r
+               bne     reg1_error_loopf\r
+               vmov    r0, r1, d1\r
+               cmp     r0, #0x22\r
+               bne     reg1_error_loopf\r
+               cmp     r1, #0x33\r
+               bne     reg1_error_loopf\r
+               vmov    r0, r1, d2\r
+               cmp     r0, #0x44\r
+               bne     reg1_error_loopf\r
+               cmp     r1, #0x55\r
+               bne     reg1_error_loopf\r
+               vmov    r0, r1, d3\r
+               cmp     r0, #0x66\r
+               bne     reg1_error_loopf\r
+               cmp     r1, #0x77\r
+               bne     reg1_error_loopf\r
+               vmov    r0, r1, d4\r
+               cmp     r0, #0x88\r
+               bne     reg1_error_loopf\r
+               cmp     r1, #0x99\r
+               bne     reg1_error_loopf\r
+               vmov    r0, r1, d5\r
+               cmp     r0, #0xAA\r
+               bne     reg1_error_loopf\r
+               cmp     r1, #0xBB\r
+               bne     reg1_error_loopf\r
+               vmov    r0, r1, d6\r
+               cmp     r0, #0xFF\r
+               bne     reg1_error_loopf\r
+               cmp     r1, #0x11\r
+               bne     reg1_error_loopf\r
+               vmov    r0, r1, d7\r
+               cmp     r0, #0x22\r
+               bne     reg1_error_loopf\r
+               cmp     r1, #0x33\r
+               bne     reg1_error_loopf\r
+               vmov    r0, r1, d8\r
+               cmp     r0, #0x44\r
+               bne     reg1_error_loopf\r
+               cmp     r1, #0x55\r
+               bne     reg1_error_loopf\r
+               vmov    r0, r1, d9\r
+               cmp     r0, #0x66\r
+               bne     reg1_error_loopf\r
+               cmp     r1, #0x77\r
+               bne     reg1_error_loopf\r
+               vmov    r0, r1, d10\r
+               cmp     r0, #0x88\r
+               bne     reg1_error_loopf\r
+               cmp     r1, #0x99\r
+               bne     reg1_error_loopf\r
+               vmov    r0, r1, d11\r
+               cmp     r0, #0xAA\r
+               bne     reg1_error_loopf\r
+               cmp     r1, #0xBB\r
+               bne     reg1_error_loopf\r
+               vmov    r0, r1, d12\r
+               cmp     r0, #0xFF\r
+               bne     reg1_error_loopf\r
+               cmp     r1, #0x11\r
+               bne     reg1_error_loopf\r
+               vmov    r0, r1, d13\r
+               cmp     r0, #0x22\r
+               bne     reg1_error_loopf\r
+               cmp     r1, #0x33\r
+               bne     reg1_error_loopf\r
+               vmov    r0, r1, d14\r
+               cmp     r0, #0x44\r
+               bne     reg1_error_loopf\r
+               cmp     r1, #0x55\r
+               bne     reg1_error_loopf\r
+               vmov    r0, r1, d15\r
+               cmp     r0, #0x66\r
+               bne     reg1_error_loopf\r
+               cmp     r1, #0x77\r
+               bne     reg1_error_loopf\r
+\r
+               ; Restore the registers that were clobbered by the test.\r
+               pop     {r0-r1}\r
+\r
+               ; VFP register test passed.  Jump to the core register test.\r
+               b               reg1_loopf_pass\r
+\r
+reg1_error_loopf:\r
+               ; If this line is hit then a VFP register value was found to be\r
+               ; incorrect.\r
+               b reg1_error_loopf\r
+\r
+reg1_loopf_pass:\r
+\r
+       .endif ;__TI_VFP_SUPPORT__\r
+\r
                ; Test each general purpose register to check that it still contains the\r
                ; expected known value, jumping to vRegTestError1 if any register contains\r
                ; an unexpected value.\r
@@ -151,6 +283,11 @@ vRegTestError1:
                .arm\r
 ;\r
 vRegTestTask2:\r
+       .if (__TI_VFP_SUPPORT__)\r
+               ; Let the port layer know that this task needs its FPU context saving.\r
+               BL              vPortTaskUsesFPU\r
+       .endif\r
+\r
                ; Fill each general purpose register with a known value.\r
                mov             r0,  #0xFF000000\r
                mov             r1,  #0x11000000\r
@@ -167,8 +304,130 @@ vRegTestTask2:
                mov     r12, #0xCC000000\r
                mov     r14, #0xEE000000\r
        \r
+       .if (__TI_VFP_SUPPORT__)\r
+\r
+               ; Fill each FPU register with a known value.\r
+               vmov    d0, r0, r1\r
+               vmov    d1, r2, r3\r
+               vmov    d2, r4, r5\r
+               vmov    d3, r6, r7\r
+               vmov    d4, r8, r9\r
+               vmov    d5, r10, r11\r
+               vmov    d6, r0, r1\r
+               vmov    d7, r2, r3\r
+               vmov    d8, r4, r5\r
+               vmov    d9, r6, r7\r
+               vmov    d10, r8, r9\r
+               vmov    d11, r10, r11\r
+               vmov    d12, r0, r1\r
+               vmov    d13, r2, r3\r
+               vmov    d14, r4, r5\r
+               vmov    d15, r6, r7\r
+       .endif\r
+\r
 vRegTestLoop2:\r
 \r
+       .if (__TI_VFP_SUPPORT__)\r
+               ; Check all the VFP registers still contain the values set above.\r
+               ; First save registers that are clobbered by the test.\r
+               push { r0-r1 }\r
+\r
+               vmov r0, r1, d0\r
+               cmp r0, #0xFF000000\r
+               bne reg2_error_loopf\r
+               cmp r1, #0x11000000\r
+               bne reg2_error_loopf\r
+               vmov r0, r1, d1\r
+               cmp r0, #0x22000000\r
+               bne reg2_error_loopf\r
+               cmp r1, #0x33000000\r
+               bne reg2_error_loopf\r
+               vmov r0, r1, d2\r
+               cmp r0, #0x44000000\r
+               bne reg2_error_loopf\r
+               cmp r1, #0x55000000\r
+               bne reg2_error_loopf\r
+               vmov r0, r1, d3\r
+               cmp r0, #0x66000000\r
+               bne reg2_error_loopf\r
+               cmp r1, #0x77000000\r
+               bne reg2_error_loopf\r
+               vmov r0, r1, d4\r
+               cmp r0, #0x88000000\r
+               bne reg2_error_loopf\r
+               cmp r1, #0x99000000\r
+               bne reg2_error_loopf\r
+               vmov r0, r1, d5\r
+               cmp r0, #0xAA000000\r
+               bne reg2_error_loopf\r
+               cmp r1, #0xBB000000\r
+               bne reg2_error_loopf\r
+               vmov r0, r1, d6\r
+               cmp r0, #0xFF000000\r
+               bne reg2_error_loopf\r
+               cmp r1, #0x11000000\r
+               bne reg2_error_loopf\r
+               vmov r0, r1, d7\r
+               cmp r0, #0x22000000\r
+               bne reg2_error_loopf\r
+               cmp r1, #0x33000000\r
+               bne reg2_error_loopf\r
+               vmov r0, r1, d8\r
+               cmp r0, #0x44000000\r
+               bne reg2_error_loopf\r
+               cmp r1, #0x55000000\r
+               bne reg2_error_loopf\r
+               vmov r0, r1, d9\r
+               cmp r0, #0x66000000\r
+               bne reg2_error_loopf\r
+               cmp r1, #0x77000000\r
+               bne reg2_error_loopf\r
+               vmov r0, r1, d10\r
+               cmp r0, #0x88000000\r
+               bne reg2_error_loopf\r
+               cmp r1, #0x99000000\r
+               bne reg2_error_loopf\r
+               vmov r0, r1, d11\r
+               cmp r0, #0xAA000000\r
+               bne reg2_error_loopf\r
+               cmp r1, #0xBB000000\r
+               bne reg2_error_loopf\r
+               vmov r0, r1, d12\r
+               cmp r0, #0xFF000000\r
+               bne reg2_error_loopf\r
+               cmp r1, #0x11000000\r
+               bne reg2_error_loopf\r
+               vmov r0, r1, d13\r
+               cmp r0, #0x22000000\r
+               bne reg2_error_loopf\r
+               cmp r1, #0x33000000\r
+               bne reg2_error_loopf\r
+               vmov r0, r1, d14\r
+               cmp r0, #0x44000000\r
+               bne reg2_error_loopf\r
+               cmp r1, #0x55000000\r
+               bne reg2_error_loopf\r
+               vmov r0, r1, d15\r
+               cmp r0, #0x66000000\r
+               bne reg2_error_loopf\r
+               cmp r1, #0x77000000\r
+               bne reg2_error_loopf\r
+\r
+               ; Restore the registers that were clobbered by the test.\r
+               pop {r0-r1}\r
+\r
+               ; VFP register test passed.  Jump to the core register test.\r
+               b reg2_loopf_pass\r
+\r
+reg2_error_loopf:\r
+               ; If this line is hit then a VFP register value was found to be\r
+               ; incorrect.\r
+               b       reg2_error_loopf\r
+\r
+reg2_loopf_pass:\r
+\r
+       .endif ;__TI_VFP_SUPPORT__\r
+\r
                ; Test each general purpose register to check that it still contains the\r
                ; expected known value, jumping to vRegTestError2 if any register contains\r
                ; an unexpected value.\r