Better test automation with cmsis build tools

Added a python script for automation of tests with cmsis build tools.
Correction to some tests
Float promotion issues in some f16 code.
pull/75/head
Christophe Favergeon 3 years ago
parent 43aa2a9e7f
commit f91c1f3c24

@ -56,7 +56,12 @@
@remark @remark
Refer to \ref arm_correlate_opt_q7() for a faster implementation of this function. Refer to \ref arm_correlate_opt_q7() for a faster implementation of this function.
*/ */
#if defined(ARM_MATH_MVEI) && !defined(ARM_MATH_AUTOVECTORIZE)
#if defined(ARM_MATH_MVE_FLOAT16) && !defined(ARM_MATH_AUTOVECTORIZE) && defined(__CMSIS_GCC_H)
#pragma GCC warning "Scalar version of arm_correlate_q7 built. Helium version has build issues with gcc."
#endif
#if defined(ARM_MATH_MVEI) && !defined(ARM_MATH_AUTOVECTORIZE) && !defined(__CMSIS_GCC_H)
#include "arm_helium_utils.h" #include "arm_helium_utils.h"
#include "arm_vec_filtering.h" #include "arm_vec_filtering.h"

@ -45,6 +45,7 @@
@return none @return none
*/ */
#if defined(ARM_MATH_MVEI) && !defined(ARM_MATH_AUTOVECTORIZE) #if defined(ARM_MATH_MVEI) && !defined(ARM_MATH_AUTOVECTORIZE)
#include <stdint.h> #include <stdint.h>

@ -46,7 +46,12 @@
@return none @return none
*/ */
#if defined(ARM_MATH_MVEI) && !defined(ARM_MATH_AUTOVECTORIZE) #if defined(ARM_MATH_MVE_FLOAT16) && !defined(ARM_MATH_AUTOVECTORIZE) && defined(__CMSIS_GCC_H)
#pragma GCC warning "Scalar version of arm_absmax_q7 built. Helium version has build issues with gcc."
#endif
#if defined(ARM_MATH_MVEI) && !defined(ARM_MATH_AUTOVECTORIZE) && !defined(__CMSIS_GCC_H)
#include <stdint.h> #include <stdint.h>
#include "arm_helium_utils.h" #include "arm_helium_utils.h"

@ -124,8 +124,8 @@ void arm_f16_to_q15(
* convert from float to Q31 and then store the results in the destination buffer * convert from float to Q31 and then store the results in the destination buffer
*/ */
in = *pIn++; in = *pIn++;
in = (in * 32768.0); in = ((_Float16)in * (_Float16)32768.0f16);
in += in > 0.0 ? 0.5 : -0.5; in += (_Float16)in > 0.0f16 ? 0.5f16 : -0.5f16;
*pDst++ = clip_q31_to_q15((q31_t) (in)); *pDst++ = clip_q31_to_q15((q31_t) (in));
#else #else

@ -16,7 +16,7 @@ a double precision computation.
#define REL_ERROR_ACCUMULATE (7.0e-3) #define REL_ERROR_ACCUMULATE (7.0e-3)
#define REL_KULLBACK_ERROR (5.0e-3) #define REL_KULLBACK_ERROR (5.0e-3)
#define ABS_KULLBACK_ERROR (5.0e-3) #define ABS_KULLBACK_ERROR (1.0e-2)
void StatsTestsF16::test_max_f16() void StatsTestsF16::test_max_f16()
{ {
@ -820,7 +820,7 @@ a double precision computation.
case StatsTestsF16::TEST_MAX_NO_IDX_F16_27: case StatsTestsF16::TEST_MAX_NO_IDX_F16_27:
{ {
inputA.reload(StatsTestsF16::INPUT1_F16_ID,mgr,8); inputA.reload(StatsTestsF16::INPUT1_F16_ID,mgr,16);
ref.reload(StatsTestsF16::MAXVALS_F16_ID,mgr); ref.reload(StatsTestsF16::MAXVALS_F16_ID,mgr);
@ -832,7 +832,7 @@ a double precision computation.
case StatsTestsF16::TEST_MAX_NO_IDX_F16_28: case StatsTestsF16::TEST_MAX_NO_IDX_F16_28:
{ {
inputA.reload(StatsTestsF16::INPUT1_F16_ID,mgr,11); inputA.reload(StatsTestsF16::INPUT1_F16_ID,mgr,23);
ref.reload(StatsTestsF16::MAXVALS_F16_ID,mgr); ref.reload(StatsTestsF16::MAXVALS_F16_ID,mgr);

@ -42,7 +42,7 @@ But big matrix needed for checking the vectorized code */
#define SNR_THRESHOLD_INV 99 #define SNR_THRESHOLD_INV 99
#define REL_ERROR_INV (3.0e-5) #define REL_ERROR_INV (3.0e-5)
#define ABS_ERROR_INV (1.0e-5) #define ABS_ERROR_INV (2.0e-5)
/* /*

@ -0,0 +1,21 @@
/*
* Auto generated Run-Time-Environment Configuration File
* *** Do not modify ! ***
*
* Project: 'test.Release+VHT_M55'
* Target: 'test.Release+VHT_M55'
*/
#ifndef RTE_COMPONENTS_H
#define RTE_COMPONENTS_H
/*
* Define the Device Header File:
*/
#define CMSIS_device_header "ARMCM55.h"
#endif /* RTE_COMPONENTS_H */

@ -8,25 +8,24 @@ mps3_board.visualisation.disable-visualisation=1
cpu0.FPU=1 # (bool , init-time) default = '1' : Set whether the model has VFP support cpu0.FPU=1 # (bool , init-time) default = '1' : Set whether the model has VFP support
cpu0.MVE=2 # (int , init-time) default = '0x1' : Set whether the model has MVE support. If FPU = 0: 0=MVE not included, 1=Integer subset of MVE included. If FPU = 1: 0=MVE not included, 1=Integer subset of MVE included, 2=Integer and half and single precision floating point MVE included cpu0.MVE=2 # (int , init-time) default = '0x1' : Set whether the model has MVE support. If FPU = 0: 0=MVE not included, 1=Integer subset of MVE included. If FPU = 1: 0=MVE not included, 1=Integer subset of MVE included, 2=Integer and half and single precision floating point MVE included
cpu0.semihosting-enable=1 # (bool , init-time) default = '1' : Enable semihosting SVC traps. Applications that do not use semihosting must set this parameter to false. cpu0.semihosting-enable=1 # (bool , init-time) default = '1' : Enable semihosting SVC traps. Applications that do not use semihosting must set this parameter to false.
cpu0.semihosting-Thumb_SVC=0xAB # (int , init-time) default = '0xAB' : T32 SVC number for semihosting : [0x0..0xFF] #cpu0.semihosting-Thumb_SVC=0xAB # (int , init-time) default = '0xAB' : T32 SVC number for semihosting : [0x0..0xFF]
cpu0.semihosting-cmd_line="" # (string, init-time) default = '' : Command line available to semihosting SVC calls #cpu0.semihosting-cmd_line="" # (string, init-time) default = '' : Command line available to semihosting SVC calls
cpu0.semihosting-heap_base=0x0 # (int , init-time) default = '0x0' : Virtual address of heap base : [0x0..0xFFFFFFFF] #cpu0.semihosting-heap_base=0x0 # (int , init-time) default = '0x0' : Virtual address of heap base : [0x0..0xFFFFFFFF]
cpu0.semihosting-heap_limit=0x0 # (int , init-time) default = '0x10700000' : Virtual address of top of heap : [0x0..0xFFFFFFFF] #cpu0.semihosting-heap_limit=0x0 # (int , init-time) default = '0x10700000' : Virtual address of top of heap : [0x0..0xFFFFFFFF]
cpu0.semihosting-stack_base=0x0 # (int , init-time) default = '0x10700000' : Virtual address of base of descending stack : [0x0..0xFFFFFFFF] #cpu0.semihosting-stack_base=0x0 # (int , init-time) default = '0x10700000' : Virtual address of base of descending stack : [0x0..0xFFFFFFFF]
cpu0.semihosting-stack_limit=0x0 # (int , init-time) default = '0x10800000' : Virtual address of stack limit : [0x0..0xFFFFFFFF] #cpu0.semihosting-stack_limit=0x0 # (int , init-time) default = '0x10800000' : Virtual address of stack limit : [0x0..0xFFFFFFFF]
cpu0.semihosting-cwd="" # (string, init-time) default = '' : Base directory for semihosting file access. #cpu0.semihosting-cwd="" # (string, init-time) default = '' : Base directory for semihosting file access.
cpu0.MPU_S=0x8 # (int , init-time) default = '0x8' : Number of regions in the Secure MPU. If Security Extentions are absent, this is ignored : [0x0..0x10] #cpu0.MPU_S=0x8 # (int , init-time) default = '0x8' : Number of regions in the Secure MPU. If Security Extentions are absent, this is ignored : [0x0..0x10]
cpu0.MPU_NS=0x8 # (int , init-time) default = '0x8' : Number of regions in the Non-Secure MPU. If Security Extentions are absent, this is the total number of MPU regions : [0x0..0x10] #cpu0.MPU_NS=0x8 # (int , init-time) default = '0x8' : Number of regions in the Non-Secure MPU. If Security Extentions are absent, this is the total number of MPU regions : [0x0..0x10]
cpu0.ITM=0 # (bool , init-time) default = '1' : Level of instrumentation trace supported. false : No ITM trace included, true: ITM trace included #cpu0.ITM=0 # (bool , init-time) default = '1' : Level of instrumentation trace supported. false : No ITM trace included, true: ITM trace included
cpu0.IRQLVL=0x3 # (int , init-time) default = '0x3' : Number of bits of interrupt priority : [0x3..0x8] #cpu0.IRQLVL=0x3 # (int , init-time) default = '0x3' : Number of bits of interrupt priority : [0x3..0x8]
cpu0.INITSVTOR=0x70000000 # (int , init-time) default = '0x10000000' : Secure vector-table offset at reset : [0x0..0xFFFFFF80] #cpu0.SAU=0x0 # (int , init-time) default = '0x4' : Number of SAU regions (0 => no SAU) : [0x0..0x8]
cpu0.INITNSVTOR=0x70000000 # (int , init-time) default = '0x0' : Non-Secure vector-table offset at reset : [0x0..0xFFFFFF80] #idau.NUM_IDAU_REGION=0x0 # (int , init-time) default = '0xA' :
cpu0.SAU=0x0 # (int , init-time) default = '0x4' : Number of SAU regions (0 => no SAU) : [0x0..0x8] #cpu0.LOCK_SAU=0 # (bool , init-time) default = '0' : Lock down of SAU registers write
idau.NUM_IDAU_REGION=0x0 # (int , init-time) default = '0xA' : #cpu0.LOCK_S_MPU=0 # (bool , init-time) default = '0' : Lock down of Secure MPU registers write
cpu0.LOCK_SAU=0 # (bool , init-time) default = '0' : Lock down of SAU registers write #cpu0.LOCK_NS_MPU=0 # (bool , init-time) default = '0' : Lock down of Non-Secure MPU registers write
cpu0.LOCK_S_MPU=0 # (bool , init-time) default = '0' : Lock down of Secure MPU registers write #cpu0.CPIF=1 # (bool , init-time) default = '1' : Specifies whether the external coprocessor interface is included
cpu0.LOCK_NS_MPU=0 # (bool , init-time) default = '0' : Lock down of Non-Secure MPU registers write #cpu0.SECEXT=0 # (bool , init-time) default = '1' : Whether the ARMv8-M Security Extensions are included
cpu0.CPIF=1 # (bool , init-time) default = '1' : Specifies whether the external coprocessor interface is included
cpu0.SECEXT=0 # (bool , init-time) default = '1' : Whether the ARMv8-M Security Extensions are included
mps3_board.DISABLE_GATING=1 # (bool , init-time) default = '0' : Disable Memory gating logic mps3_board.DISABLE_GATING=1 # (bool , init-time) default = '0' : Disable Memory gating logic
mps3_board.sse300.iotss3_systemcontrol.INITSVTOR_RST=0x70000000
#---------------------------------------------------------------------------------------------- #----------------------------------------------------------------------------------------------

@ -1,24 +1,45 @@
ECHO OFF ECHO OFF
ECHO "Gen Test" ECHO "Gen Test"
cd .. cd ..
python processTests.py -f Output.pickle -e StatsTests python processTests.py -f Output.pickle -e UnaryTestsF32
cd cmsis_build cd cmsis_build
ECHO "Build" REM ECHO "Build"
cbuild "test.Release+VHT-Corstone-300.cprj" REM cbuild "test.Release+VHT-Corstone-300.cprj"
ECHO "Run" REM ECHO "Run"
C:\Keil_v5\ARM\VHT\VHT_Corstone_SSE-300_Ethos-U55.exe -f configs/ARM_VHT_Corstone_300_config.txt -a cpu0="out\test\VHT-Corstone-300\Release\test.Release+VHT-Corstone-300.axf" > results_cs300_u55.txt REM C:\Keil_v5\ARM\VHT_11.18.29\VHT_Corstone_SSE-300_Ethos-U55.exe -f configs/ARM_VHT_Corstone_300_config.txt -a cpu0="out\test\VHT-Corstone-300\Release\test.Release+VHT-Corstone-300.axf" > results_cs300_u55.txt
python ..\processResult.py -f ..\Output.pickle -e -r results_cs300_u55.txt REM set MyError=%errorlevel%
REM python ..\processResult.py -f ..\Output.pickle -e -r results_cs300_u55.txt
REM if %MyError% neq 0 goto :error
REM goto :EOF
REM ECHO "Build" REM ECHO "Build"
REM cbuild "test.Release+VHT_M7_UNROLLED.cprj" REM cbuild "test.Release+VHT_M7_UNROLLED.cprj"
REM ECHO "Run" REM ECHO "Run"
REM C:\Keil_v5\ARM\VHT\VHT_MPS2_Cortex-M7.exe -f configs/ARM_VHT_MPS2_M7DP_config.txt out\test\VHT_M7_UNROLLED\Release\test.Release+VHT_M7_UNROLLED.axf > results_m7_unrolled.txt REM C:\Keil_v5\ARM\VHT_11.18.29\VHT_MPS2_Cortex-M7.exe -f configs/ARM_VHT_MPS2_M7DP_config.txt out\test\VHT_M7_UNROLLED\Release\test.Release+VHT_M7_UNROLLED.axf > results_m7_unrolled.txt
REM set MyError=%errorlevel%
REM python ..\processResult.py -f ..\Output.pickle -e -r results_m7_unrolled.txt REM python ..\processResult.py -f ..\Output.pickle -e -r results_m7_unrolled.txt
REM if %MyError% neq 0 goto :error
REM goto :EOF
ECHO "Build"
cbuild "test.Release+VHT_M0P.cprj"
ECHO "Run"
C:\Keil_v5\ARM\VHT_11.18.29\VHT_MPS2_Cortex-M0plus.exe -f configs/ARM_VHT_MPS2_M0plus_config.txt out\test\VHT_M0P\Release\test.Release+VHT_M0P.axf > results_m0p.txt
set MyError=%errorlevel%
python ..\processResult.py -f ..\Output.pickle -e -r results_m0p.txt
if %MyError% neq 0 goto :error
goto :EOF
REM ECHO "Build" REM ECHO "Build"
REM cbuild "test.Release+FVP_M55.cprj" REM cbuild "test.Release+VHT_M55.cprj"
REM ECHO "Run" REM ECHO "Run"
REM C:\Keil_v5\ARM\VHT\VHT_MPS2_Cortex-M55.exe -f configs/REM ARM_VHT_MPS2_M55_config.txt -a cpu0="REM out\test\FVP_M55\Release\test.Release+FVP_M55.elf" REM > results_m55.txt REM C:\Keil_v5\ARM\VHT_11.18.29\VHT_MPS2_Cortex-M55.exe -f configs/ARM_VHT_MPS2_M55_config.txt -a cpu0="out\test\VHT_M55\Release\test.Release+VHT_M55.elf" > results_m55.txt
REM python ..\processResult.py -f ..\Output.pickle -e -r REM results_m55.txt REM set MyError=%errorlevel%
REM REM python ..\processResult.py -f ..\Output.pickle -e -r results_m55.txt
REM if %MyError% neq 0 goto :error
REM goto :EOF
:error
echo Failed running all tests with error %MyError%.
exit /b %errorlevel%

@ -0,0 +1,266 @@
import argparse
import pickle
import sys
import subprocess
import os
import colorama
from colorama import init,Fore, Back, Style
parser = argparse.ArgumentParser(description='Parse test description')
parser.add_argument('-avh', nargs='?',type = str, default="C:/Keil_v5/ARM/VHT_11.18.29", help="AVH folder")
args = parser.parse_args()
init()
sys.path.append("..")
from TestScripts.Parser import TreeElem
ERROR_OCCURED = False
def printTitle(s):
print("\n" + Fore.GREEN + Style.BRIGHT + s + Style.RESET_ALL)
def printSubTitle(s):
print("\n" + Fore.YELLOW + Style.BRIGHT + s + Style.RESET_ALL)
def printError(s):
print("\n" + Fore.RED + Style.BRIGHT + s + Style.RESET_ALL)
# Load Output.pickle files for the test description
def loadRoot(f):
root = None
with open(f,"rb") as inf:
root=pickle.load(inf)
return(root)
# Get test suites from the test descriptions
def getSuites(node,filterList,currentList=[]):
if node.kind==TreeElem.SUITE:
currentList.append(node.data["class"])
if node.kind==TreeElem.GROUP:
if not node.data["class"] in filterList:
for c in node.children:
getSuites(c,filterList,currentList)
class Result:
def __init__(self,msg,error=False):
self._error = error
self._msg = msg
@property
def error(self):
return self._error
@property
def msg(self):
return self._msg
# Run a command and get error or result
# For the test report we don't need the stderr
# in case of error since the test report is giving
# all the details. So, there is an option to
# disable the dump of stderr
def run(*args,mustPrint=False,dumpStdErr=True):
global ERROR_OCCURED
try:
result=subprocess.run(args,text=True,capture_output=True,timeout=600)
if result.returncode !=0 :
ERROR_OCCURED = True
if dumpStdErr:
return(Result(result.stderr + "\n\nSTDOUT:\n\n" + result.stdout,error=True))
else:
return(Result(result.stdout,error=True))
if mustPrint:
print(result.stdout)
return(Result(result.stdout))
except Exception as e:
ERROR_OCCURED = True
return(Result(str(e),error=True))
# Configuration file for AVH core
configFiles={
"CS310":"ARM_VHT_Corstone_310_config.txt",
"CS300":"ARM_VHT_Corstone_300_config.txt",
"M55":"ARM_VHT_MPS2_M55_config.txt",
"M33_DSP_FP":"ARM_VHT_MPS2_M33_DSP_FP_config.txt",
"M7DP":"ARM_VHT_MPS2_M7DP_config.txt",
"M4FP":"ARM_VHT_MPS2_M4FP_config.txt",
"M3":"ARM_VHT_MPS2_M3_config.txt",
"M23":"ARM_VHT_MPS2_M23_config.txt",
"M0plus":"ARM_VHT_MPS2_M0plus_config.txt",
}
# Windows executable
# (At some point this script will also support
# unix)
avhExe={
"CS310":"VHT_Corstone_SSE-310.exe",
"CS300":"VHT_Corstone_SSE-300_Ethos-U55.exe",
"M55":"VHT_MPS2_Cortex-M55.exe",
"M33_DSP_FP":"VHT_MPS2_Cortex-M33.exe",
"M7DP":"VHT_MPS2_Cortex-M7.exe",
"M4FP":"VHT_MPS2_Cortex-M4.exe",
"M3":"VHT_MPS2_Cortex-M3.exe",
"M23":"VHT_MPS2_Cortex-M23.exe",
"M0plus":"VHT_MPS2_Cortex-M0plus.exe",
}
AVHROOT = args.avh
# Run AVH
def runAVH(build,core):
axf="out/test/%s/Release/test.Release+%s.axf" % (build,build)
elf="out/test/%s/Release/test.Release+%s.elf" % (build,build)
app = axf
if os.path.exists(axf):
app = axf
if os.path.exists(elf):
app = elf
config = os.path.join("configs",configFiles[core])
avh = os.path.join(AVHROOT,avhExe[core])
res=run(avh,"-f",config,app)
return(res)
####################
# Test descriptions to use
tests=["../Output.pickle","../Output_f16.pickle"]
# Test group to avoid
filterList=["NNTests","ExampleTests"]
allSuites=[]
# Load all the test suite to run
for t in tests:
root=loadRoot(t)
suites=[]
getSuites(root,filterList,suites)
allSuites += [(x,t) for x in suites ]
# Test suite and output pickle needed to decode the result
#print(allSuites)
#allSuites=[("BasicTestsF32","../Output.pickle"),
#("BasicTestsQ31","../Output.pickle")]
#allSuites=[("StatsTestsQ7","../Output.pickle")]
# Solution and build file for all
# the tests
# It is a pair : csolution target type and AVH identification
# AVH identification is used to find the executable
# and the configuration file
solutions={
'testac6.csolution.yml':[
("VHT-Corstone-310","CS310"),
("VHT-Corstone-300","CS300"),
#("VHT_M33","M33_DSP_FP"),
("VHT_M7","M7DP"),
("VHT_M7_UNROLLED","M7DP"),
#("VHT_M4","M4FP"),
#("VHT_M3","M3"),
#("VHT_M23","M23"),
("VHT_M0P","M0plus")
],
'testgcc.csolution.yml':[
("VHT_M55","M55"),
#("VHT_M33","M33_DSP_FP"),
("VHT_M7","M7DP"),
("VHT_M7_UNROLLED","M7DP"),
#("VHT_M4","M4FP"),
#("VHT_M3","M3"),
#("VHT_M23","M23"),
("VHT_M0P","M0plus")
]
}
HTMLHEADER="""<html>
<header>
<title>CMSIS-DSP Test summary</title>
</header>
<body>
"""
HTMLFOOTER="""
</body></html>
"""
# Run the tests and log the result
# in a summary.html file
with open("summary.html","w") as f:
print(HTMLHEADER,file=f)
for s in solutions:
printTitle("Process solution %s" % s)
run("csolution","convert","-s",s)
print("<h1>Solution %s</h1>" % s,file=f)
maxNbBuilds=len(solutions[s])
buildNb=0
for build,core in solutions[s]:
buildNb = buildNb + 1
print("<h2>Core %s</h2>" % build,file=f)
printTitle("Process core %s (%d/%d)" % (build,buildNb,maxNbBuilds))
buildFile="test.Release+%s.cprj" % build
nb = 0
maxNb = len(allSuites)
for s,pickle in allSuites:
nb = nb + 1
printSubTitle("Process suite %s (%d/%d)" % (s,nb,maxNb))
res=run(sys.executable,"../processTests.py","-gen","..","-p","../Patterns","-d","../Parameters","-f",pickle,"-e",s,mustPrint=True)
if res.error:
printError("Error processTests")
print("<p><font color=\"red\">Error generating %s</font></p><PRE>" % s,file=f)
print(res.msg,file=f)
print("</PRE>",file=f)
continue
if nb==1:
# -r is needed for first
# build when we switch
# between different solutions
# (Like one using AC6 and the other
# using gcc)
res=run("cbuild","-r",buildFile)
else:
res=run("cbuild",buildFile)
if res.error:
printError("Error cbuild")
print("<p><font color=\"red\">Error building %s</font></p><PRE>" % s,file=f)
print(res.msg,file=f)
print("</PRE>",file=f)
continue
printSubTitle("Run AVH")
res=runAVH(build,core)
if res.error:
printError("Error running AVH")
print("<p><font color=\"red\">Error running %s</font></p><PRE>" % s,file=f)
print(res.msg,file=f)
print("</PRE>",file=f)
continue
else:
with open("results.txt","w") as o:
print(res.msg,file=o)
res=run(sys.executable,"../processResult.py","-f",pickle,"-e","-ahtml","-r","results.txt",dumpStdErr=False)
if res.error:
printError("Error processResult")
print("<p><font color=\"red\">Error processing %s result</font></p><PRE>" % s,file=f)
print(res.msg,file=f)
print("</PRE>",file=f)
continue
else:
pass
# When no error the section is not
# included in final file
#print(res.msg,file=f)
print(HTMLFOOTER,file=f)
if ERROR_OCCURED:
sys.exit("Error occurred")
else:
sys.exit(0)

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?> <?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<cprj schemaVersion="1.0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="CPRJ.xsd"> <cprj schemaVersion="1.0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="CPRJ.xsd">
<created timestamp="2022-11-03T14:24:00" tool="csolution 1.1.0"/> <created timestamp="2022-11-08T10:36:33" tool="csolution 1.1.0"/>
<info isLayer="false"> <info isLayer="false">
<description>Automatically generated project</description> <description>Automatically generated project</description>
@ -11,15 +11,15 @@
</packages> </packages>
<compilers> <compilers>
<compiler name="AC6" version="6.18.0"/> <compiler name="GCC" version="11.2.1"/>
</compilers> </compilers>
<target Dfpu="DP_FPU" Dname="ARMCA5" Dsecure="Non-secure" Dvendor="ARM:82"> <target Dfpu="DP_FPU" Dname="ARMCA5" Dsecure="Non-secure" Dvendor="ARM:82">
<output intdir="tmp/test/FVP_A5Neon/Release" name="test.Release+FVP_A5Neon" outdir="out/test/FVP_A5Neon/Release" rtedir="RTE" type="exe"/> <output intdir="tmp/test/FVP_A5Neon/Release" name="test.Release+FVP_A5Neon" outdir="out/test/FVP_A5Neon/Release" rtedir="RTE" type="exe"/>
<asflags add="-masm=auto" compiler="AC6"/> <asflags add="-masm=auto" compiler="GCC"/>
<cflags add="-Wsign-compare -Wdouble-promotion -DNDEBUG -Wall -Wextra -Werror -std=c11 -Ofast -ffast-math" compiler="AC6"/> <cflags add="-ffunction-sections -mfp16-format=ieee -fdata-sections -std=c11 -Ofast -ffast-math -flax-vector-conversions" compiler="GCC"/>
<cxxflags add="-fno-rtti -DNDEBUG -Wall -Wextra -std=c++11 -Ofast -ffast-math" compiler="AC6"/> <cxxflags add="-ffunction-sections -mfp16-format=ieee -fdata-sections -std=c++11 -Ofast -ffast-math -flax-vector-conversions -Wno-unused-parameter" compiler="GCC"/>
<ldflags add="--entry=Reset_Handler --info=summarysizes --info=sizes --info=totals --info=unused --info=veneers" compiler="AC6" file="RTE/Device/ARMCA5/ARMCA5.sct"/> <ldflags add="--specs=nano.specs --specs=rdimon.specs --entry=Reset_Handler -Wl,--gc-sections" compiler="GCC"/>
<defines>EMBEDDED;NORMALFVP;CORTEXA</defines> <defines>EMBEDDED;NORMALFVP;CORTEXA</defines>
<includes>../../Include;../../PrivateInclude;../FrameworkInclude;../GeneratedInclude;../Include/Tests</includes> <includes>../../Include;../../PrivateInclude;../FrameworkInclude;../GeneratedInclude;../Include/Tests</includes>
</target> </target>
@ -31,8 +31,8 @@
<component Cclass="Device" Cgroup="Startup" Cvendor="ARM" Cversion="1.0.1"> <component Cclass="Device" Cgroup="Startup" Cvendor="ARM" Cversion="1.0.1">
<file attr="config" category="header" name="Device/ARM/ARMCA5/Config/mem_ARMCA5.h" version="1.1.0"/> <file attr="config" category="header" name="Device/ARM/ARMCA5/Config/mem_ARMCA5.h" version="1.1.0"/>
<file attr="config" category="header" name="Device/ARM/ARMCA5/Config/system_ARMCA5.h" version="1.0.0"/> <file attr="config" category="header" name="Device/ARM/ARMCA5/Config/system_ARMCA5.h" version="1.0.0"/>
<file attr="config" category="linkerScript" name="Device/ARM/ARMCA5/Source/AC6/ARMCA5.sct" version="1.0.0"/> <file attr="config" category="other" name="Device/ARM/ARMCA5/Source/GCC/ARMCA5.ld" version="1.0.0"/>
<file attr="config" category="sourceC" name="Device/ARM/ARMCA5/Source/AC6/startup_ARMCA5.c" version="1.0.1"/> <file attr="config" category="sourceC" name="Device/ARM/ARMCA5/Source/GCC/startup_ARMCA5.c" version="1.0.1"/>
<file attr="config" category="sourceC" name="Device/ARM/ARMCA5/Source/mmu_ARMCA5.c" version="1.2.0"/> <file attr="config" category="sourceC" name="Device/ARM/ARMCA5/Source/mmu_ARMCA5.c" version="1.2.0"/>
<file attr="config" category="sourceC" name="Device/ARM/ARMCA5/Source/system_ARMCA5.c" version="1.0.1"/> <file attr="config" category="sourceC" name="Device/ARM/ARMCA5/Source/system_ARMCA5.c" version="1.0.1"/>
</component> </component>

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?> <?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<cprj schemaVersion="1.0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="CPRJ.xsd"> <cprj schemaVersion="1.0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="CPRJ.xsd">
<created timestamp="2022-11-03T14:24:00" tool="csolution 1.1.0"/> <created timestamp="2022-11-08T10:36:33" tool="csolution 1.1.0"/>
<info isLayer="false"> <info isLayer="false">
<description>Automatically generated project</description> <description>Automatically generated project</description>
@ -11,15 +11,15 @@
</packages> </packages>
<compilers> <compilers>
<compiler name="AC6" version="6.18.0"/> <compiler name="GCC" version="11.2.1"/>
</compilers> </compilers>
<target Dfpu="DP_FPU" Dname="ARMCA7" Dsecure="Non-secure" Dvendor="ARM:82"> <target Dfpu="DP_FPU" Dname="ARMCA7" Dsecure="Non-secure" Dvendor="ARM:82">
<output intdir="tmp/test/FVP_A7Neon/Release" name="test.Release+FVP_A7Neon" outdir="out/test/FVP_A7Neon/Release" rtedir="RTE" type="exe"/> <output intdir="tmp/test/FVP_A7Neon/Release" name="test.Release+FVP_A7Neon" outdir="out/test/FVP_A7Neon/Release" rtedir="RTE" type="exe"/>
<asflags add="-masm=auto" compiler="AC6"/> <asflags add="-masm=auto" compiler="GCC"/>
<cflags add="-Wsign-compare -Wdouble-promotion -DNDEBUG -Wall -Wextra -Werror -std=c11 -Ofast -ffast-math" compiler="AC6"/> <cflags add="-ffunction-sections -mfp16-format=ieee -fdata-sections -std=c11 -Ofast -ffast-math -flax-vector-conversions" compiler="GCC"/>
<cxxflags add="-fno-rtti -DNDEBUG -Wall -Wextra -std=c++11 -Ofast -ffast-math" compiler="AC6"/> <cxxflags add="-ffunction-sections -mfp16-format=ieee -fdata-sections -std=c++11 -Ofast -ffast-math -flax-vector-conversions -Wno-unused-parameter" compiler="GCC"/>
<ldflags add="--entry=Reset_Handler --info=summarysizes --info=sizes --info=totals --info=unused --info=veneers" compiler="AC6" file="RTE/Device/ARMCA7/ARMCA7.sct"/> <ldflags add="--specs=nano.specs --specs=rdimon.specs --entry=Reset_Handler -Wl,--gc-sections" compiler="GCC"/>
<defines>EMBEDDED;NORMALFVP;CORTEXA</defines> <defines>EMBEDDED;NORMALFVP;CORTEXA</defines>
<includes>../../Include;../../PrivateInclude;../FrameworkInclude;../GeneratedInclude;../Include/Tests</includes> <includes>../../Include;../../PrivateInclude;../FrameworkInclude;../GeneratedInclude;../Include/Tests</includes>
</target> </target>
@ -31,8 +31,8 @@
<component Cclass="Device" Cgroup="Startup" Cvendor="ARM" Cversion="1.0.1"> <component Cclass="Device" Cgroup="Startup" Cvendor="ARM" Cversion="1.0.1">
<file attr="config" category="header" name="Device/ARM/ARMCA7/Config/mem_ARMCA7.h" version="1.1.0"/> <file attr="config" category="header" name="Device/ARM/ARMCA7/Config/mem_ARMCA7.h" version="1.1.0"/>
<file attr="config" category="header" name="Device/ARM/ARMCA7/Config/system_ARMCA7.h" version="1.0.0"/> <file attr="config" category="header" name="Device/ARM/ARMCA7/Config/system_ARMCA7.h" version="1.0.0"/>
<file attr="config" category="linkerScript" name="Device/ARM/ARMCA7/Source/AC6/ARMCA7.sct" version="1.0.0"/> <file attr="config" category="other" name="Device/ARM/ARMCA7/Source/GCC/ARMCA7.ld" version="1.0.0"/>
<file attr="config" category="sourceC" name="Device/ARM/ARMCA7/Source/AC6/startup_ARMCA7.c" version="1.0.1"/> <file attr="config" category="sourceC" name="Device/ARM/ARMCA7/Source/GCC/startup_ARMCA7.c" version="1.0.1"/>
<file attr="config" category="sourceC" name="Device/ARM/ARMCA7/Source/mmu_ARMCA7.c" version="1.2.0"/> <file attr="config" category="sourceC" name="Device/ARM/ARMCA7/Source/mmu_ARMCA7.c" version="1.2.0"/>
<file attr="config" category="sourceC" name="Device/ARM/ARMCA7/Source/system_ARMCA7.c" version="1.0.1"/> <file attr="config" category="sourceC" name="Device/ARM/ARMCA7/Source/system_ARMCA7.c" version="1.0.1"/>
</component> </component>

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?> <?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<cprj schemaVersion="1.0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="CPRJ.xsd"> <cprj schemaVersion="1.0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="CPRJ.xsd">
<created timestamp="2022-11-03T14:24:01" tool="csolution 1.1.0"/> <created timestamp="2022-11-08T10:36:33" tool="csolution 1.1.0"/>
<info isLayer="false"> <info isLayer="false">
<description>Automatically generated project</description> <description>Automatically generated project</description>
@ -11,15 +11,15 @@
</packages> </packages>
<compilers> <compilers>
<compiler name="AC6" version="6.18.0"/> <compiler name="GCC" version="11.2.1"/>
</compilers> </compilers>
<target Dfpu="DP_FPU" Dname="ARMCA9" Dsecure="Non-secure" Dvendor="ARM:82"> <target Dfpu="DP_FPU" Dname="ARMCA9" Dsecure="Non-secure" Dvendor="ARM:82">
<output intdir="tmp/test/FVP_A9Neon/Release" name="test.Release+FVP_A9Neon" outdir="out/test/FVP_A9Neon/Release" rtedir="RTE" type="exe"/> <output intdir="tmp/test/FVP_A9Neon/Release" name="test.Release+FVP_A9Neon" outdir="out/test/FVP_A9Neon/Release" rtedir="RTE" type="exe"/>
<asflags add="-masm=auto" compiler="AC6"/> <asflags add="-masm=auto" compiler="GCC"/>
<cflags add="-Wsign-compare -Wdouble-promotion -DNDEBUG -Wall -Wextra -Werror -std=c11 -Ofast -ffast-math" compiler="AC6"/> <cflags add="-ffunction-sections -mfp16-format=ieee -fdata-sections -std=c11 -Ofast -ffast-math -flax-vector-conversions" compiler="GCC"/>
<cxxflags add="-fno-rtti -DNDEBUG -Wall -Wextra -std=c++11 -Ofast -ffast-math" compiler="AC6"/> <cxxflags add="-ffunction-sections -mfp16-format=ieee -fdata-sections -std=c++11 -Ofast -ffast-math -flax-vector-conversions -Wno-unused-parameter" compiler="GCC"/>
<ldflags add="--entry=Reset_Handler --info=summarysizes --info=sizes --info=totals --info=unused --info=veneers" compiler="AC6" file="RTE/Device/ARMCA9/ARMCA9.sct"/> <ldflags add="--specs=nano.specs --specs=rdimon.specs --entry=Reset_Handler -Wl,--gc-sections" compiler="GCC"/>
<defines>EMBEDDED;NORMALFVP;CORTEXA</defines> <defines>EMBEDDED;NORMALFVP;CORTEXA</defines>
<includes>../../Include;../../PrivateInclude;../FrameworkInclude;../GeneratedInclude;../Include/Tests</includes> <includes>../../Include;../../PrivateInclude;../FrameworkInclude;../GeneratedInclude;../Include/Tests</includes>
</target> </target>
@ -31,8 +31,8 @@
<component Cclass="Device" Cgroup="Startup" Cvendor="ARM" Cversion="1.0.2"> <component Cclass="Device" Cgroup="Startup" Cvendor="ARM" Cversion="1.0.2">
<file attr="config" category="header" name="Device/ARM/ARMCA9/Config/mem_ARMCA9.h" version="1.1.0"/> <file attr="config" category="header" name="Device/ARM/ARMCA9/Config/mem_ARMCA9.h" version="1.1.0"/>
<file attr="config" category="header" name="Device/ARM/ARMCA9/Config/system_ARMCA9.h" version="1.0.0"/> <file attr="config" category="header" name="Device/ARM/ARMCA9/Config/system_ARMCA9.h" version="1.0.0"/>
<file attr="config" category="linkerScript" name="Device/ARM/ARMCA9/Source/AC6/ARMCA9.sct" version="1.0.0"/> <file attr="config" category="other" name="Device/ARM/ARMCA9/Source/GCC/ARMCA9.ld" version="1.0.0"/>
<file attr="config" category="sourceC" name="Device/ARM/ARMCA9/Source/AC6/startup_ARMCA9.c" version="1.0.1"/> <file attr="config" category="sourceC" name="Device/ARM/ARMCA9/Source/GCC/startup_ARMCA9.c" version="1.0.1"/>
<file attr="config" category="sourceC" name="Device/ARM/ARMCA9/Source/mmu_ARMCA9.c" version="1.2.0"/> <file attr="config" category="sourceC" name="Device/ARM/ARMCA9/Source/mmu_ARMCA9.c" version="1.2.0"/>
<file attr="config" category="sourceC" name="Device/ARM/ARMCA9/Source/system_ARMCA9.c" version="1.0.1"/> <file attr="config" category="sourceC" name="Device/ARM/ARMCA9/Source/system_ARMCA9.c" version="1.0.1"/>
</component> </component>

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?> <?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<cprj schemaVersion="1.0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="CPRJ.xsd"> <cprj schemaVersion="1.0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="CPRJ.xsd">
<created timestamp="2022-11-03T14:24:01" tool="csolution 1.1.0"/> <created timestamp="2022-11-09T08:17:12" tool="csolution 1.1.0"/>
<info isLayer="false"> <info isLayer="false">
<description>Automatically generated project</description> <description>Automatically generated project</description>

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?> <?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<cprj schemaVersion="1.0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="CPRJ.xsd"> <cprj schemaVersion="1.0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="CPRJ.xsd">
<created timestamp="2022-11-03T14:24:01" tool="csolution 1.1.0"/> <created timestamp="2022-11-09T08:17:12" tool="csolution 1.1.0"/>
<info isLayer="false"> <info isLayer="false">
<description>Automatically generated project</description> <description>Automatically generated project</description>

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?> <?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<cprj schemaVersion="1.0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="CPRJ.xsd"> <cprj schemaVersion="1.0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="CPRJ.xsd">
<created timestamp="2022-11-03T14:24:01" tool="csolution 1.1.0"/> <created timestamp="2022-11-09T08:17:13" tool="csolution 1.1.0"/>
<info isLayer="false"> <info isLayer="false">
<description>Automatically generated project</description> <description>Automatically generated project</description>
@ -11,15 +11,15 @@
</packages> </packages>
<compilers> <compilers>
<compiler name="AC6" version="6.18.0"/> <compiler name="GCC" version="11.2.1"/>
</compilers> </compilers>
<target Dfpu="NO_FPU" Dname="ARMCM0P" Dsecure="Non-secure" Dvendor="ARM:82"> <target Dfpu="NO_FPU" Dname="ARMCM0P" Dsecure="Non-secure" Dvendor="ARM:82">
<output intdir="tmp/test/VHT_M0P/Release" name="test.Release+VHT_M0P" outdir="out/test/VHT_M0P/Release" rtedir="RTE" type="exe"/> <output intdir="tmp/test/VHT_M0P/Release" name="test.Release+VHT_M0P" outdir="out/test/VHT_M0P/Release" rtedir="RTE" type="exe"/>
<asflags add="-masm=auto" compiler="AC6"/> <asflags add="-masm=auto" compiler="GCC"/>
<cflags add="-Wsign-compare -Wdouble-promotion -DNDEBUG -Wall -Wextra -Werror -std=c11 -Ofast -ffast-math" compiler="AC6"/> <cflags add="-ffunction-sections -mfp16-format=ieee -fdata-sections -std=c11 -Ofast -ffast-math -flax-vector-conversions" compiler="GCC"/>
<cxxflags add="-fno-rtti -DNDEBUG -Wall -Wextra -std=c++11 -Ofast -ffast-math" compiler="AC6"/> <cxxflags add="-ffunction-sections -mfp16-format=ieee -fdata-sections -std=c++11 -Ofast -ffast-math -flax-vector-conversions -Wno-unused-parameter" compiler="GCC"/>
<ldflags add="--entry=Reset_Handler --info=summarysizes --info=sizes --info=totals --info=unused --info=veneers" compiler="AC6" file="RTE/Device/ARMCM0P/ARMCM0plus_ac6.sct"/> <ldflags add="--specs=nano.specs --specs=rdimon.specs --entry=Reset_Handler -Wl,--gc-sections" compiler="GCC" file="RTE/Device/ARMCM0P/gcc_arm.ld"/>
<defines>EMBEDDED;NORMALFVP;CORTEXM</defines> <defines>EMBEDDED;NORMALFVP;CORTEXM</defines>
<includes>../../Include;../../PrivateInclude;../FrameworkInclude;../GeneratedInclude;../Include/Tests</includes> <includes>../../Include;../../PrivateInclude;../FrameworkInclude;../GeneratedInclude;../Include/Tests</includes>
</target> </target>
@ -27,7 +27,7 @@
<components> <components>
<component Cclass="CMSIS" Cgroup="CORE" Cvendor="ARM" Cversion="5.6.0"/> <component Cclass="CMSIS" Cgroup="CORE" Cvendor="ARM" Cversion="5.6.0"/>
<component Cclass="Device" Cgroup="Startup" Cvariant="C Startup" Cvendor="ARM" Cversion="2.0.3"> <component Cclass="Device" Cgroup="Startup" Cvariant="C Startup" Cvendor="ARM" Cversion="2.0.3">
<file attr="config" category="linkerScript" name="Device/ARM/ARMCM0plus/Source/ARM/ARMCM0plus_ac6.sct" version="1.0.0"/> <file attr="config" category="linkerScript" name="Device/ARM/ARMCM0plus/Source/GCC/gcc_arm.ld" version="2.1.0"/>
<file attr="config" category="sourceC" name="Device/ARM/ARMCM0plus/Source/startup_ARMCM0plus.c" version="2.0.3"/> <file attr="config" category="sourceC" name="Device/ARM/ARMCM0plus/Source/startup_ARMCM0plus.c" version="2.0.3"/>
<file attr="config" category="sourceC" name="Device/ARM/ARMCM0plus/Source/system_ARMCM0plus.c" version="1.0.0"/> <file attr="config" category="sourceC" name="Device/ARM/ARMCM0plus/Source/system_ARMCM0plus.c" version="1.0.0"/>
</component> </component>

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?> <?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<cprj schemaVersion="1.0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="CPRJ.xsd"> <cprj schemaVersion="1.0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="CPRJ.xsd">
<created timestamp="2022-11-03T14:24:01" tool="csolution 1.1.0"/> <created timestamp="2022-11-09T08:17:13" tool="csolution 1.1.0"/>
<info isLayer="false"> <info isLayer="false">
<description>Automatically generated project</description> <description>Automatically generated project</description>
@ -11,15 +11,15 @@
</packages> </packages>
<compilers> <compilers>
<compiler name="AC6" version="6.18.0"/> <compiler name="GCC" version="11.2.1"/>
</compilers> </compilers>
<target Dfpu="NO_FPU" Dname="ARMCM23" Dsecure="Non-secure" Dtz="NO_TZ" Dvendor="ARM:82"> <target Dfpu="NO_FPU" Dname="ARMCM23" Dsecure="Non-secure" Dtz="NO_TZ" Dvendor="ARM:82">
<output intdir="tmp/test/VHT_M23/Release" name="test.Release+VHT_M23" outdir="out/test/VHT_M23/Release" rtedir="RTE" type="exe"/> <output intdir="tmp/test/VHT_M23/Release" name="test.Release+VHT_M23" outdir="out/test/VHT_M23/Release" rtedir="RTE" type="exe"/>
<asflags add="-masm=auto" compiler="AC6"/> <asflags add="-masm=auto" compiler="GCC"/>
<cflags add="-Wsign-compare -Wdouble-promotion -DNDEBUG -Wall -Wextra -Werror -std=c11 -Ofast -ffast-math" compiler="AC6"/> <cflags add="-ffunction-sections -mfp16-format=ieee -fdata-sections -std=c11 -Ofast -ffast-math -flax-vector-conversions" compiler="GCC"/>
<cxxflags add="-fno-rtti -DNDEBUG -Wall -Wextra -std=c++11 -Ofast -ffast-math" compiler="AC6"/> <cxxflags add="-ffunction-sections -mfp16-format=ieee -fdata-sections -std=c++11 -Ofast -ffast-math -flax-vector-conversions -Wno-unused-parameter" compiler="GCC"/>
<ldflags add="--entry=Reset_Handler --info=summarysizes --info=sizes --info=totals --info=unused --info=veneers" compiler="AC6" file="RTE/Device/ARMCM23/ARMCM23_ac6.sct"/> <ldflags add="--specs=nano.specs --specs=rdimon.specs --entry=Reset_Handler -Wl,--gc-sections" compiler="GCC" file="RTE/Device/ARMCM23/gcc_arm.ld"/>
<defines>EMBEDDED;NORMALFVP;CORTEXM</defines> <defines>EMBEDDED;NORMALFVP;CORTEXM</defines>
<includes>../../Include;../../PrivateInclude;../FrameworkInclude;../GeneratedInclude;../Include/Tests</includes> <includes>../../Include;../../PrivateInclude;../FrameworkInclude;../GeneratedInclude;../Include/Tests</includes>
</target> </target>
@ -27,7 +27,7 @@
<components> <components>
<component Cclass="CMSIS" Cgroup="CORE" Cvendor="ARM" Cversion="5.6.0"/> <component Cclass="CMSIS" Cgroup="CORE" Cvendor="ARM" Cversion="5.6.0"/>
<component Cclass="Device" Cgroup="Startup" Cvariant="C Startup" Cvendor="ARM" Cversion="2.1.0"> <component Cclass="Device" Cgroup="Startup" Cvariant="C Startup" Cvendor="ARM" Cversion="2.1.0">
<file attr="config" category="linkerScript" name="Device/ARM/ARMCM23/Source/ARM/ARMCM23_ac6.sct" version="1.1.0"/> <file attr="config" category="linkerScript" name="Device/ARM/ARMCM23/Source/GCC/gcc_arm.ld" version="2.2.0"/>
<file attr="config" category="sourceC" name="Device/ARM/ARMCM23/Source/startup_ARMCM23.c" version="2.1.0"/> <file attr="config" category="sourceC" name="Device/ARM/ARMCM23/Source/startup_ARMCM23.c" version="2.1.0"/>
<file attr="config" category="sourceC" name="Device/ARM/ARMCM23/Source/system_ARMCM23.c" version="1.0.1"/> <file attr="config" category="sourceC" name="Device/ARM/ARMCM23/Source/system_ARMCM23.c" version="1.0.1"/>
</component> </component>

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?> <?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<cprj schemaVersion="1.0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="CPRJ.xsd"> <cprj schemaVersion="1.0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="CPRJ.xsd">
<created timestamp="2022-11-03T14:24:01" tool="csolution 1.1.0"/> <created timestamp="2022-11-09T08:17:13" tool="csolution 1.1.0"/>
<info isLayer="false"> <info isLayer="false">
<description>Automatically generated project</description> <description>Automatically generated project</description>
@ -11,15 +11,15 @@
</packages> </packages>
<compilers> <compilers>
<compiler name="AC6" version="6.18.0"/> <compiler name="GCC" version="11.2.1"/>
</compilers> </compilers>
<target Dfpu="NO_FPU" Dname="ARMCM3" Dsecure="Non-secure" Dvendor="ARM:82"> <target Dfpu="NO_FPU" Dname="ARMCM3" Dsecure="Non-secure" Dvendor="ARM:82">
<output intdir="tmp/test/VHT_M3/Release" name="test.Release+VHT_M3" outdir="out/test/VHT_M3/Release" rtedir="RTE" type="exe"/> <output intdir="tmp/test/VHT_M3/Release" name="test.Release+VHT_M3" outdir="out/test/VHT_M3/Release" rtedir="RTE" type="exe"/>
<asflags add="-masm=auto" compiler="AC6"/> <asflags add="-masm=auto" compiler="GCC"/>
<cflags add="-Wsign-compare -Wdouble-promotion -DNDEBUG -Wall -Wextra -Werror -std=c11 -Ofast -ffast-math" compiler="AC6"/> <cflags add="-ffunction-sections -mfp16-format=ieee -fdata-sections -std=c11 -Ofast -ffast-math -flax-vector-conversions" compiler="GCC"/>
<cxxflags add="-fno-rtti -DNDEBUG -Wall -Wextra -std=c++11 -Ofast -ffast-math" compiler="AC6"/> <cxxflags add="-ffunction-sections -mfp16-format=ieee -fdata-sections -std=c++11 -Ofast -ffast-math -flax-vector-conversions -Wno-unused-parameter" compiler="GCC"/>
<ldflags add="--entry=Reset_Handler --info=summarysizes --info=sizes --info=totals --info=unused --info=veneers" compiler="AC6" file="RTE/Device/ARMCM3/ARMCM3_ac6.sct"/> <ldflags add="--specs=nano.specs --specs=rdimon.specs --entry=Reset_Handler -Wl,--gc-sections" compiler="GCC" file="RTE/Device/ARMCM3/gcc_arm.ld"/>
<defines>EMBEDDED;NORMALFVP;CORTEXM</defines> <defines>EMBEDDED;NORMALFVP;CORTEXM</defines>
<includes>../../Include;../../PrivateInclude;../FrameworkInclude;../GeneratedInclude;../Include/Tests</includes> <includes>../../Include;../../PrivateInclude;../FrameworkInclude;../GeneratedInclude;../Include/Tests</includes>
</target> </target>
@ -27,7 +27,7 @@
<components> <components>
<component Cclass="CMSIS" Cgroup="CORE" Cvendor="ARM" Cversion="5.6.0"/> <component Cclass="CMSIS" Cgroup="CORE" Cvendor="ARM" Cversion="5.6.0"/>
<component Cclass="Device" Cgroup="Startup" Cvariant="C Startup" Cvendor="ARM" Cversion="2.0.3"> <component Cclass="Device" Cgroup="Startup" Cvariant="C Startup" Cvendor="ARM" Cversion="2.0.3">
<file attr="config" category="linkerScript" name="Device/ARM/ARMCM3/Source/ARM/ARMCM3_ac6.sct" version="1.0.0"/> <file attr="config" category="linkerScript" name="Device/ARM/ARMCM3/Source/GCC/gcc_arm.ld" version="2.1.0"/>
<file attr="config" category="sourceC" name="Device/ARM/ARMCM3/Source/startup_ARMCM3.c" version="2.0.3"/> <file attr="config" category="sourceC" name="Device/ARM/ARMCM3/Source/startup_ARMCM3.c" version="2.0.3"/>
<file attr="config" category="sourceC" name="Device/ARM/ARMCM3/Source/system_ARMCM3.c" version="1.0.1"/> <file attr="config" category="sourceC" name="Device/ARM/ARMCM3/Source/system_ARMCM3.c" version="1.0.1"/>
</component> </component>

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?> <?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<cprj schemaVersion="1.0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="CPRJ.xsd"> <cprj schemaVersion="1.0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="CPRJ.xsd">
<created timestamp="2022-11-03T14:24:01" tool="csolution 1.1.0"/> <created timestamp="2022-11-09T08:17:13" tool="csolution 1.1.0"/>
<info isLayer="false"> <info isLayer="false">
<description>Automatically generated project</description> <description>Automatically generated project</description>
@ -11,15 +11,15 @@
</packages> </packages>
<compilers> <compilers>
<compiler name="AC6" version="6.18.0"/> <compiler name="GCC" version="11.2.1"/>
</compilers> </compilers>
<target Ddsp="DSP" Dfpu="SP_FPU" Dname="ARMCM33_DSP_FP" Dsecure="Non-secure" Dtz="NO_TZ" Dvendor="ARM:82"> <target Ddsp="DSP" Dfpu="SP_FPU" Dname="ARMCM33_DSP_FP" Dsecure="Non-secure" Dtz="NO_TZ" Dvendor="ARM:82">
<output intdir="tmp/test/VHT_M33/Release" name="test.Release+VHT_M33" outdir="out/test/VHT_M33/Release" rtedir="RTE" type="exe"/> <output intdir="tmp/test/VHT_M33/Release" name="test.Release+VHT_M33" outdir="out/test/VHT_M33/Release" rtedir="RTE" type="exe"/>
<asflags add="-masm=auto" compiler="AC6"/> <asflags add="-masm=auto" compiler="GCC"/>
<cflags add="-Wsign-compare -Wdouble-promotion -DNDEBUG -Wall -Wextra -Werror -std=c11 -Ofast -ffast-math" compiler="AC6"/> <cflags add="-ffunction-sections -mfp16-format=ieee -fdata-sections -std=c11 -Ofast -ffast-math -flax-vector-conversions" compiler="GCC"/>
<cxxflags add="-fno-rtti -DNDEBUG -Wall -Wextra -std=c++11 -Ofast -ffast-math" compiler="AC6"/> <cxxflags add="-ffunction-sections -mfp16-format=ieee -fdata-sections -std=c++11 -Ofast -ffast-math -flax-vector-conversions -Wno-unused-parameter" compiler="GCC"/>
<ldflags add="--entry=Reset_Handler --info=summarysizes --info=sizes --info=totals --info=unused --info=veneers" compiler="AC6" file="RTE/Device/ARMCM33_DSP_FP/ARMCM33_ac6.sct"/> <ldflags add="--specs=nano.specs --specs=rdimon.specs --entry=Reset_Handler -Wl,--gc-sections" compiler="GCC" file="RTE/Device/ARMCM33_DSP_FP/gcc_arm.ld"/>
<defines>EMBEDDED;NORMALFVP;CORTEXM</defines> <defines>EMBEDDED;NORMALFVP;CORTEXM</defines>
<includes>../../Include;../../PrivateInclude;../FrameworkInclude;../GeneratedInclude;../Include/Tests</includes> <includes>../../Include;../../PrivateInclude;../FrameworkInclude;../GeneratedInclude;../Include/Tests</includes>
</target> </target>
@ -27,7 +27,7 @@
<components> <components>
<component Cclass="CMSIS" Cgroup="CORE" Cvendor="ARM" Cversion="5.6.0"/> <component Cclass="CMSIS" Cgroup="CORE" Cvendor="ARM" Cversion="5.6.0"/>
<component Cclass="Device" Cgroup="Startup" Cvariant="C Startup" Cvendor="ARM" Cversion="2.1.0"> <component Cclass="Device" Cgroup="Startup" Cvariant="C Startup" Cvendor="ARM" Cversion="2.1.0">
<file attr="config" category="linkerScript" name="Device/ARM/ARMCM33/Source/ARM/ARMCM33_ac6.sct" version="1.1.0"/> <file attr="config" category="linkerScript" name="Device/ARM/ARMCM33/Source/GCC/gcc_arm.ld" version="2.2.0"/>
<file attr="config" category="sourceC" name="Device/ARM/ARMCM33/Source/startup_ARMCM33.c" version="2.1.0"/> <file attr="config" category="sourceC" name="Device/ARM/ARMCM33/Source/startup_ARMCM33.c" version="2.1.0"/>
<file attr="config" category="sourceC" name="Device/ARM/ARMCM33/Source/system_ARMCM33.c" version="1.0.1"/> <file attr="config" category="sourceC" name="Device/ARM/ARMCM33/Source/system_ARMCM33.c" version="1.0.1"/>
</component> </component>

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?> <?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<cprj schemaVersion="1.0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="CPRJ.xsd"> <cprj schemaVersion="1.0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="CPRJ.xsd">
<created timestamp="2022-11-03T14:24:01" tool="csolution 1.1.0"/> <created timestamp="2022-11-09T08:17:13" tool="csolution 1.1.0"/>
<info isLayer="false"> <info isLayer="false">
<description>Automatically generated project</description> <description>Automatically generated project</description>
@ -11,15 +11,15 @@
</packages> </packages>
<compilers> <compilers>
<compiler name="AC6" version="6.18.0"/> <compiler name="GCC" version="11.2.1"/>
</compilers> </compilers>
<target Dfpu="SP_FPU" Dname="ARMCM4_FP" Dsecure="Non-secure" Dvendor="ARM:82"> <target Dfpu="SP_FPU" Dname="ARMCM4_FP" Dsecure="Non-secure" Dvendor="ARM:82">
<output intdir="tmp/test/VHT_M4/Release" name="test.Release+VHT_M4" outdir="out/test/VHT_M4/Release" rtedir="RTE" type="exe"/> <output intdir="tmp/test/VHT_M4/Release" name="test.Release+VHT_M4" outdir="out/test/VHT_M4/Release" rtedir="RTE" type="exe"/>
<asflags add="-masm=auto" compiler="AC6"/> <asflags add="-masm=auto" compiler="GCC"/>
<cflags add="-Wsign-compare -Wdouble-promotion -DNDEBUG -Wall -Wextra -Werror -std=c11 -Ofast -ffast-math" compiler="AC6"/> <cflags add="-ffunction-sections -mfp16-format=ieee -fdata-sections -std=c11 -Ofast -ffast-math -flax-vector-conversions" compiler="GCC"/>
<cxxflags add="-fno-rtti -DNDEBUG -Wall -Wextra -std=c++11 -Ofast -ffast-math" compiler="AC6"/> <cxxflags add="-ffunction-sections -mfp16-format=ieee -fdata-sections -std=c++11 -Ofast -ffast-math -flax-vector-conversions -Wno-unused-parameter" compiler="GCC"/>
<ldflags add="--entry=Reset_Handler --info=summarysizes --info=sizes --info=totals --info=unused --info=veneers" compiler="AC6" file="RTE/Device/ARMCM4_FP/ARMCM4_ac6.sct"/> <ldflags add="--specs=nano.specs --specs=rdimon.specs --entry=Reset_Handler -Wl,--gc-sections" compiler="GCC" file="RTE/Device/ARMCM4_FP/gcc_arm.ld"/>
<defines>EMBEDDED;NORMALFVP;CORTEXM</defines> <defines>EMBEDDED;NORMALFVP;CORTEXM</defines>
<includes>../../Include;../../PrivateInclude;../FrameworkInclude;../GeneratedInclude;../Include/Tests</includes> <includes>../../Include;../../PrivateInclude;../FrameworkInclude;../GeneratedInclude;../Include/Tests</includes>
</target> </target>
@ -27,7 +27,7 @@
<components> <components>
<component Cclass="CMSIS" Cgroup="CORE" Cvendor="ARM" Cversion="5.6.0"/> <component Cclass="CMSIS" Cgroup="CORE" Cvendor="ARM" Cversion="5.6.0"/>
<component Cclass="Device" Cgroup="Startup" Cvariant="C Startup" Cvendor="ARM" Cversion="2.0.3"> <component Cclass="Device" Cgroup="Startup" Cvariant="C Startup" Cvendor="ARM" Cversion="2.0.3">
<file attr="config" category="linkerScript" name="Device/ARM/ARMCM4/Source/ARM/ARMCM4_ac6.sct" version="1.0.0"/> <file attr="config" category="linkerScript" name="Device/ARM/ARMCM4/Source/GCC/gcc_arm.ld" version="2.1.0"/>
<file attr="config" category="sourceC" name="Device/ARM/ARMCM4/Source/startup_ARMCM4.c" version="2.0.3"/> <file attr="config" category="sourceC" name="Device/ARM/ARMCM4/Source/startup_ARMCM4.c" version="2.0.3"/>
<file attr="config" category="sourceC" name="Device/ARM/ARMCM4/Source/system_ARMCM4.c" version="1.0.1"/> <file attr="config" category="sourceC" name="Device/ARM/ARMCM4/Source/system_ARMCM4.c" version="1.0.1"/>
</component> </component>

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?> <?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<cprj schemaVersion="1.0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="CPRJ.xsd"> <cprj schemaVersion="1.0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="CPRJ.xsd">
<created timestamp="2022-11-03T14:24:01" tool="csolution 1.1.0"/> <created timestamp="2022-11-09T08:17:13" tool="csolution 1.1.0"/>
<info isLayer="false"> <info isLayer="false">
<description>Automatically generated project</description> <description>Automatically generated project</description>
@ -11,15 +11,15 @@
</packages> </packages>
<compilers> <compilers>
<compiler name="AC6" version="6.18.0"/> <compiler name="GCC" version="11.2.1"/>
</compilers> </compilers>
<target Ddsp="DSP" Dfpu="DP_FPU" Dmve="FP_MVE" Dname="ARMCM55" Dsecure="Non-secure" Dtz="TZ" Dvendor="ARM:82"> <target Ddsp="DSP" Dfpu="DP_FPU" Dmve="FP_MVE" Dname="ARMCM55" Dsecure="Non-secure" Dtz="TZ" Dvendor="ARM:82">
<output intdir="tmp/test/FVP_M55/Release" name="test.Release+FVP_M55" outdir="out/test/FVP_M55/Release" rtedir="RTE" type="exe"/> <output intdir="tmp/test/VHT_M55/Release" name="test.Release+VHT_M55" outdir="out/test/VHT_M55/Release" rtedir="RTE" type="exe"/>
<asflags add="-masm=auto" compiler="AC6"/> <asflags add="-masm=auto" compiler="GCC"/>
<cflags add="-Wsign-compare -Wdouble-promotion -DNDEBUG -Wall -Wextra -Werror -std=c11 -Ofast -ffast-math" compiler="AC6"/> <cflags add="-ffunction-sections -mfp16-format=ieee -fdata-sections -std=c11 -Ofast -ffast-math -flax-vector-conversions" compiler="GCC"/>
<cxxflags add="-fno-rtti -DNDEBUG -Wall -Wextra -std=c++11 -Ofast -ffast-math" compiler="AC6"/> <cxxflags add="-ffunction-sections -mfp16-format=ieee -fdata-sections -std=c++11 -Ofast -ffast-math -flax-vector-conversions -Wno-unused-parameter" compiler="GCC"/>
<ldflags add="--entry=Reset_Handler --info=summarysizes --info=sizes --info=totals --info=unused --info=veneers" compiler="AC6" file="RTE/Device/ARMCM55/ARMCM55_ac6.sct"/> <ldflags add="--specs=nano.specs --specs=rdimon.specs --entry=Reset_Handler -Wl,--gc-sections" compiler="GCC" file="RTE/Device/ARMCM55/gcc_arm.ld"/>
<defines>EMBEDDED;NORMALFVP;CORTEXM</defines> <defines>EMBEDDED;NORMALFVP;CORTEXM</defines>
<includes>../../Include;../../PrivateInclude;../FrameworkInclude;../GeneratedInclude;../Include/Tests</includes> <includes>../../Include;../../PrivateInclude;../FrameworkInclude;../GeneratedInclude;../Include/Tests</includes>
</target> </target>
@ -27,7 +27,7 @@
<components> <components>
<component Cclass="CMSIS" Cgroup="CORE" Cvendor="ARM" Cversion="5.6.0"/> <component Cclass="CMSIS" Cgroup="CORE" Cvendor="ARM" Cversion="5.6.0"/>
<component Cclass="Device" Cgroup="Startup" Cvariant="C Startup" Cvendor="ARM" Cversion="1.1.0"> <component Cclass="Device" Cgroup="Startup" Cvariant="C Startup" Cvendor="ARM" Cversion="1.1.0">
<file attr="config" category="linkerScript" name="Device/ARM/ARMCM55/Source/ARM/ARMCM55_ac6.sct" version="1.1.0"/> <file attr="config" category="linkerScript" name="Device/ARM/ARMCM55/Source/GCC/gcc_arm.ld" version="2.2.0"/>
<file attr="config" category="sourceC" name="Device/ARM/ARMCM55/Source/startup_ARMCM55.c" version="1.1.0"/> <file attr="config" category="sourceC" name="Device/ARM/ARMCM55/Source/startup_ARMCM55.c" version="1.1.0"/>
<file attr="config" category="sourceC" name="Device/ARM/ARMCM55/Source/system_ARMCM55.c" version="1.1.0"/> <file attr="config" category="sourceC" name="Device/ARM/ARMCM55/Source/system_ARMCM55.c" version="1.1.0"/>
</component> </component>

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?> <?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<cprj schemaVersion="1.0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="CPRJ.xsd"> <cprj schemaVersion="1.0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="CPRJ.xsd">
<created timestamp="2022-11-03T14:24:01" tool="csolution 1.1.0"/> <created timestamp="2022-11-09T08:17:13" tool="csolution 1.1.0"/>
<info isLayer="false"> <info isLayer="false">
<description>Automatically generated project</description> <description>Automatically generated project</description>
@ -11,15 +11,15 @@
</packages> </packages>
<compilers> <compilers>
<compiler name="AC6" version="6.18.0"/> <compiler name="GCC" version="11.2.1"/>
</compilers> </compilers>
<target Dfpu="DP_FPU" Dname="ARMCM7_DP" Dsecure="Non-secure" Dvendor="ARM:82"> <target Dfpu="DP_FPU" Dname="ARMCM7_DP" Dsecure="Non-secure" Dvendor="ARM:82">
<output intdir="tmp/test/VHT_M7/Release" name="test.Release+VHT_M7" outdir="out/test/VHT_M7/Release" rtedir="RTE" type="exe"/> <output intdir="tmp/test/VHT_M7/Release" name="test.Release+VHT_M7" outdir="out/test/VHT_M7/Release" rtedir="RTE" type="exe"/>
<asflags add="-masm=auto" compiler="AC6"/> <asflags add="-masm=auto" compiler="GCC"/>
<cflags add="-Wsign-compare -Wdouble-promotion -DNDEBUG -Wall -Wextra -Werror -std=c11 -Ofast -ffast-math" compiler="AC6"/> <cflags add="-ffunction-sections -mfp16-format=ieee -fdata-sections -std=c11 -Ofast -ffast-math -flax-vector-conversions" compiler="GCC"/>
<cxxflags add="-fno-rtti -DNDEBUG -Wall -Wextra -std=c++11 -Ofast -ffast-math" compiler="AC6"/> <cxxflags add="-ffunction-sections -mfp16-format=ieee -fdata-sections -std=c++11 -Ofast -ffast-math -flax-vector-conversions -Wno-unused-parameter" compiler="GCC"/>
<ldflags add="--entry=Reset_Handler --info=summarysizes --info=sizes --info=totals --info=unused --info=veneers" compiler="AC6" file="RTE/Device/ARMCM7_DP/ARMCM7_ac6.sct"/> <ldflags add="--specs=nano.specs --specs=rdimon.specs --entry=Reset_Handler -Wl,--gc-sections" compiler="GCC" file="RTE/Device/ARMCM7_DP/gcc_arm.ld"/>
<defines>EMBEDDED;NORMALFVP;CORTEXM</defines> <defines>EMBEDDED;NORMALFVP;CORTEXM</defines>
<includes>../../Include;../../PrivateInclude;../FrameworkInclude;../GeneratedInclude;../Include/Tests</includes> <includes>../../Include;../../PrivateInclude;../FrameworkInclude;../GeneratedInclude;../Include/Tests</includes>
</target> </target>
@ -27,7 +27,7 @@
<components> <components>
<component Cclass="CMSIS" Cgroup="CORE" Cvendor="ARM" Cversion="5.6.0"/> <component Cclass="CMSIS" Cgroup="CORE" Cvendor="ARM" Cversion="5.6.0"/>
<component Cclass="Device" Cgroup="Startup" Cvariant="C Startup" Cvendor="ARM" Cversion="2.0.3"> <component Cclass="Device" Cgroup="Startup" Cvariant="C Startup" Cvendor="ARM" Cversion="2.0.3">
<file attr="config" category="linkerScript" name="Device/ARM/ARMCM7/Source/ARM/ARMCM7_ac6.sct" version="1.0.0"/> <file attr="config" category="linkerScript" name="Device/ARM/ARMCM7/Source/GCC/gcc_arm.ld" version="2.1.0"/>
<file attr="config" category="sourceC" name="Device/ARM/ARMCM7/Source/startup_ARMCM7.c" version="2.0.3"/> <file attr="config" category="sourceC" name="Device/ARM/ARMCM7/Source/startup_ARMCM7.c" version="2.0.3"/>
<file attr="config" category="sourceC" name="Device/ARM/ARMCM7/Source/system_ARMCM7.c" version="1.0.1"/> <file attr="config" category="sourceC" name="Device/ARM/ARMCM7/Source/system_ARMCM7.c" version="1.0.1"/>
</component> </component>

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="no" ?> <?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<cprj schemaVersion="1.0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="CPRJ.xsd"> <cprj schemaVersion="1.0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="CPRJ.xsd">
<created timestamp="2022-11-03T14:24:01" tool="csolution 1.1.0"/> <created timestamp="2022-11-09T08:17:12" tool="csolution 1.1.0"/>
<info isLayer="false"> <info isLayer="false">
<description>Automatically generated project</description> <description>Automatically generated project</description>

@ -53,7 +53,7 @@ solution:
defines: defines:
- CORTEXM - CORTEXM
- type: FVP_M55 - type: VHT_M55
device: ARMCM55 device: ARMCM55
defines: defines:
- CORTEXM - CORTEXM
@ -94,32 +94,6 @@ solution:
defines: defines:
- CORTEXM - CORTEXM
# ARMCA5, ARMCA7 and ARMCA9 are not configured
# with Neon in the pack.
# And the standard .cmake in CMSIS Build tools
# is not supporting Cortex-A yet.
# Since the goal is to run the Neon code of CMSIS-DSP,
# we have added Cortex-A support to the .cmake
# and forced Neon support without taking into account
# the FPU variable from the pack.
# If you want to build those targets, you'll have to add
# Cortex-A support to the .cmake of CMSIS Build tools
# in the same way (forcing Neon)
- type: FVP_A5Neon
device: ARMCA5
defines:
- CORTEXA
- type: FVP_A7Neon
device: ARMCA7
defines:
- CORTEXA
- type: FVP_A9Neon
device: ARMCA9
defines:
- CORTEXA
build-types: build-types:
- type: Release - type: Release
optimize: max optimize: max

@ -2,9 +2,22 @@ solution:
compiler: GCC compiler: GCC
misc: misc:
- C: - C:
- -ffunction-sections -mfp16-format=ieee -fdata-sections -std=c11 -Ofast -ffast-math -flax-vector-conversions - -ffunction-sections
- -mfp16-format=ieee
- -fdata-sections
- -std=c11
- -Ofast
- -ffast-math
- -flax-vector-conversions
- CPP: - CPP:
- -ffunction-sections -mfp16-format=ieee -fdata-sections -std=c++11 -Ofast -ffast-math -flax-vector-conversions -Wno-unused-parameter - -ffunction-sections
- -mfp16-format=ieee
- -fdata-sections
- -std=c++11
- -Ofast
- -ffast-math
- -flax-vector-conversions
- -Wno-unused-parameter
- ASM: - ASM:
- -masm=auto - -masm=auto
- Link: - Link:
@ -35,7 +48,7 @@ solution:
#- type: VHT-Corstone-310 #- type: VHT-Corstone-310
# device: ARM::SSE-310-MPS3 # device: ARM::SSE-310-MPS3
- type: FVP_M55 - type: VHT_M55
device: ARMCM55 device: ARMCM55
defines: defines:
- CORTEXM - CORTEXM
@ -70,38 +83,6 @@ solution:
defines: defines:
- CORTEXM - CORTEXM
# ARMCA5, ARMCA7 and ARMCA9 are not configured
# with Neon in the pack.
# And the standard .cmake in CMSIS Build tools
# is not supporting Cortex-A yet.
# Since the goal is to run the Neon code of CMSIS-DSP,
# we have added Cortex-A support to the .cmake
# and forced Neon support without taking into account
# the FPU variable from the pack.
# If you want to build those targets, you'll have to add
# Cortex-A support to the .cmake of CMSIS Build tools
# in the same way (forcing Neon)
#
# Also, the packs have an issue with the scatter file for gcc
# with is categorized as "Other" instead of "linkerScript"
# in CMSIS 5.9.0
# You'll need a more recent version where the problem
# is solved
- type: FVP_A5Neon
device: ARMCA5
defines:
- CORTEXA
- type: FVP_A7Neon
device: ARMCA7
defines:
- CORTEXA
- type: FVP_A9Neon
device: ARMCA9
defines:
- CORTEXA
build-types: build-types:
- type: Release - type: Release
optimize: max optimize: max

@ -121,12 +121,14 @@ class TextFormatter:
# Return test result as a text tree # Return test result as a text tree
class HTMLFormatter: class HTMLFormatter:
def __init__(self): def __init__(self,append=False):
self.nb=1 self.nb=1
self.suite=False self.suite=False
self.append = append
def start(self): def start(self):
print("<html><head><title>Test Results</title></head><body>") if not self.append:
print("<html><head><title>Test Results</title></head><body>")
def printGroup(self,elem,theId): def printGroup(self,elem,theId):
if elem is None: if elem is None:
@ -138,9 +140,13 @@ class HTMLFormatter:
if elem.kind == TestScripts.Parser.TreeElem.GROUP: if elem.kind == TestScripts.Parser.TreeElem.GROUP:
kind = "Group" kind = "Group"
if kind == "Group": if kind == "Group":
print("<h%d> %s (%d) </h%d>" % (self.nb,message,theId,self.nb)) if not self.append:
print("<h%d> %s (%d) </h%d>" % (self.nb,message,theId,self.nb))
else: else:
print("<h%d> %s (%d) </h%d>" % (self.nb,message,theId,self.nb)) if not self.append:
print("<h%d> %s (%d) </h%d>" % (self.nb,message,theId,self.nb))
else:
print("<h%d> %s (%d) </h%d>" % (3,message,theId,self.nb))
self.suite=True self.suite=True
print("<table style=\"width:100%\">") print("<table style=\"width:100%\">")
print("<tr>") print("<tr>")
@ -160,19 +166,23 @@ class HTMLFormatter:
p="<font color=\"red\">FAILED</font>" p="<font color=\"red\">FAILED</font>"
if passed == 1: if passed == 1:
p= "<font color=\"green\">PASSED</font>" p= "<font color=\"green\">PASSED</font>"
print("<tr>") # Green status is not displayed when
print("<td><pre>%s</pre></td>" % (message,)) # generating the full summary in append mode
print("<td>%d</td>" % theId) # In summary mode, only errors are displayed
print("<td>%s</td>" % p) if passed != 1 or not self.append:
if params: print("<tr>")
print("<td>%s</td>\n" % (params)) print("<td><pre>%s</pre></td>" % (message,))
else: print("<td>%d</td>" % theId)
print("<td></td>\n") print("<td>%s</td>" % p)
if (cycles > 0): if params:
print("<td>%d</td>" % cycles) print("<td>%s</td>\n" % (params))
else: else:
print("<td>NA</td>") print("<td></td>\n")
print("</tr>") if (cycles > 0):
print("<td>%d</td>" % cycles)
else:
print("<td>NA</td>")
print("</tr>")
if passed != 1: if passed != 1:
@ -187,7 +197,8 @@ class HTMLFormatter:
self.suite=False self.suite=False
def end(self): def end(self):
print("</body></html>") if not self.append:
print("</body></html>")
# Return test result as a CSV # Return test result as a CSV
class CSVFormatter: class CSVFormatter:
@ -539,6 +550,8 @@ def analyze(root,results,args,trace):
analyseResult(resultPath,root,results,args.e,args.b,trace,CSVFormatter()) analyseResult(resultPath,root,results,args.e,args.b,trace,CSVFormatter())
elif args.html: elif args.html:
analyseResult(resultPath,root,results,args.e,args.b,trace,HTMLFormatter()) analyseResult(resultPath,root,results,args.e,args.b,trace,HTMLFormatter())
elif args.ahtml:
analyseResult(resultPath,root,results,args.e,args.b,trace,HTMLFormatter(append=True))
elif args.m: elif args.m:
analyseResult(resultPath,root,results,args.e,args.b,trace,MathematicaFormatter()) analyseResult(resultPath,root,results,args.e,args.b,trace,MathematicaFormatter())
else: else:
@ -556,6 +569,8 @@ parser.add_argument('-f', nargs='?',type = str, default="Output.pickle", help="T
parser.add_argument('-r', nargs='?',type = str, default=None, help="Result file path") parser.add_argument('-r', nargs='?',type = str, default=None, help="Result file path")
parser.add_argument('-c', action='store_true', help="CSV output") parser.add_argument('-c', action='store_true', help="CSV output")
parser.add_argument('-html', action='store_true', help="HTML output") parser.add_argument('-html', action='store_true', help="HTML output")
parser.add_argument('-ahtml', action='store_true', help="Partial HTML output")
parser.add_argument('-e', action='store_true', help="Embedded test") parser.add_argument('-e', action='store_true', help="Embedded test")
# -o needed when -e is true to know where to extract the output files # -o needed when -e is true to know where to extract the output files
parser.add_argument('-o', nargs='?',type = str, default="Output", help="Output dir path") parser.add_argument('-o', nargs='?',type = str, default="Output", help="Output dir path")

Loading…
Cancel
Save