diff --git a/Include/dsp/fast_math_functions.h b/Include/dsp/fast_math_functions.h index 596c0bfe..3bbe29eb 100755 --- a/Include/dsp/fast_math_functions.h +++ b/Include/dsp/fast_math_functions.h @@ -35,6 +35,7 @@ #include "dsp/basic_math_functions.h" +#include #ifdef __cplusplus extern "C" @@ -251,6 +252,16 @@ __STATIC_FORCEINLINE arm_status arm_sqrt_f32( *pOut = sqrtf(in); #endif +#elif defined ( __ARMCC_VERSION ) && ( __ARMCC_VERSION >= 6010050 ) + *pOut = _sqrtf(in); +#elif defined(__GNUC_PYTHON__) + *pOut = sqrtf(in); +#elif defined ( __GNUC__ ) + #if defined (__VFP_FP__) && !defined(__SOFTFP__) + __ASM("VSQRT.F32 %0,%1" : "=t"(*pOut) : "t"(in)); + #else + *pOut = sqrtf(in); + #endif #else *pOut = sqrtf(in); #endif diff --git a/Testing/cmsis_build/RTE/Device/SSE-310-MPS3/region_limits.h b/Testing/cmsis_build/RTE/Device/SSE-310-MPS3/region_limits.h index a4fceb83..549176e1 100644 --- a/Testing/cmsis_build/RTE/Device/SSE-310-MPS3/region_limits.h +++ b/Testing/cmsis_build/RTE/Device/SSE-310-MPS3/region_limits.h @@ -47,7 +47,7 @@ #define TOTAL_S_DDR4_SIZE (0x10000000) /* 256 MB */ /* Heap and Stack sizes for secure and nonsecure applications */ -#define HEAP_SIZE (0x00100000) /* 1 KiB */ +#define HEAP_SIZE (0x00020000) /* 1 KiB */ #define STACK_SIZE (0x00002000) /* 1 KiB */ #endif /* __REGION_LIMITS_H__ */ diff --git a/Testing/cmsis_build/boot.clayer.yml b/Testing/cmsis_build/boot.clayer.yml index 7696bbc0..74f5c4d9 100644 --- a/Testing/cmsis_build/boot.clayer.yml +++ b/Testing/cmsis_build/boot.clayer.yml @@ -5,6 +5,9 @@ layer: components: + - component: DMA350 + for-type: + - +VHT-Corstone-310 - component: Device:Startup&C Startup not-for-type: - +VHT-Corstone-300 @@ -35,6 +38,9 @@ layer: for-type: - +VHT-Corstone-300 - +VHT-Corstone-310 + - component: ARM::Native Driver:DMA350 Remap + for-type: + - +VHT-Corstone-310 - component: ARM::Native Driver:Timeout for-type: - +VHT-Corstone-300 diff --git a/Testing/cmsis_build/runall.py b/Testing/cmsis_build/runall.py index dd36de66..426d411b 100644 --- a/Testing/cmsis_build/runall.py +++ b/Testing/cmsis_build/runall.py @@ -7,9 +7,14 @@ 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") +parser.add_argument('-avh', nargs='?',type = str, default="C:/Keil_v5/ARM/VHT", help="AVH folder") +parser.add_argument('-d', action='store_true', help="Debug log") + args = parser.parse_args() +DEBUG=False +if args.d: + DEBUG=True init() @@ -66,7 +71,10 @@ class Result: # disable the dump of stderr def run(*args,mustPrint=False,dumpStdErr=True): global ERROR_OCCURED + global DEBUG try: + if DEBUG: + print(" ".join(args)) result=subprocess.run(args,text=True,capture_output=True,timeout=600) if result.returncode !=0 : ERROR_OCCURED = True @@ -79,6 +87,7 @@ def run(*args,mustPrint=False,dumpStdErr=True): print(result.stdout) return(Result(result.stdout)) except Exception as e: + printError("Exception occured") ERROR_OCCURED = True return(Result(str(e),error=True)) @@ -148,6 +157,13 @@ for t in tests: # Test suite and output pickle needed to decode the result #print(allSuites) +allSuites=[("ComplexTestsF32","../Output.pickle"), +("DistanceTestsF32","../Output.pickle"), +("UnaryTestsF32","../Output.pickle"), +("QuaternionTestsF32","../Output.pickle"), +("StatsTestsF32","../Output.pickle") +] + #allSuites=[("BasicTestsF32","../Output.pickle"), #("BasicTestsQ31","../Output.pickle")] @@ -160,24 +176,25 @@ for t in tests: # and the configuration file solutions={ 'testac6.csolution.yml':[ - ("VHT-Corstone-310","CS310"), + # ("VHT-Corstone-310","CS310"), ("VHT-Corstone-300","CS300"), - #("VHT_M33","M33_DSP_FP"), + # #("VHT_M33","M33_DSP_FP"), ("VHT_M7","M7DP"), ("VHT_M7_UNROLLED","M7DP"), - #("VHT_M4","M4FP"), - #("VHT_M3","M3"), - #("VHT_M23","M23"), + # #("VHT_M4","M4FP"), + # #("VHT_M3","M3"), + # #("VHT_M23","M23"), ("VHT_M0P","M0plus") ], 'testgcc.csolution.yml':[ + #("VHT-Corstone-310","CS310"), ("VHT_M55","M55"), - #("VHT_M33","M33_DSP_FP"), + ##("VHT_M33","M33_DSP_FP"), ("VHT_M7","M7DP"), ("VHT_M7_UNROLLED","M7DP"), - #("VHT_M4","M4FP"), - #("VHT_M3","M3"), - #("VHT_M23","M23"), + ##("VHT_M4","M4FP"), + ##("VHT_M3","M3"), + ##("VHT_M23","M23"), ("VHT_M0P","M0plus") ] } @@ -199,7 +216,13 @@ 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) + res=run("csolution","convert","-s",s) + if res.error: + printError("Error csolution") + print("

Error converting csolution %s

" % s,file=f)
+            print(res.msg,file=f)
+            print("
",file=f) + continue print("

Solution %s

" % s,file=f) maxNbBuilds=len(solutions[s]) buildNb=0 diff --git a/Testing/cmsis_build/test.Release+VHT-Corstone-300.cprj b/Testing/cmsis_build/test.Release+VHT-Corstone-300.cprj index 55a828ba..f61e6c32 100644 --- a/Testing/cmsis_build/test.Release+VHT-Corstone-300.cprj +++ b/Testing/cmsis_build/test.Release+VHT-Corstone-300.cprj @@ -1,6 +1,6 @@ - + Automatically generated project diff --git a/Testing/cmsis_build/test.Release+VHT-Corstone-310.cprj b/Testing/cmsis_build/test.Release+VHT-Corstone-310.cprj index 064ebe12..99f8a45e 100644 --- a/Testing/cmsis_build/test.Release+VHT-Corstone-310.cprj +++ b/Testing/cmsis_build/test.Release+VHT-Corstone-310.cprj @@ -1,6 +1,6 @@ - + Automatically generated project @@ -8,39 +8,42 @@ - + + - + - - - - + + + + EMBEDDED;NORMALFVP;CORTEXM ../../Include;../../PrivateInclude;../FrameworkInclude;../GeneratedInclude;../Include/Tests - + - + - + + + diff --git a/Testing/cmsis_build/test.Release+VHT_M0P.cprj b/Testing/cmsis_build/test.Release+VHT_M0P.cprj index 5eb829e5..8735dd26 100644 --- a/Testing/cmsis_build/test.Release+VHT_M0P.cprj +++ b/Testing/cmsis_build/test.Release+VHT_M0P.cprj @@ -1,6 +1,6 @@ - + Automatically generated project @@ -11,7 +11,7 @@ - + diff --git a/Testing/cmsis_build/test.Release+VHT_M23.cprj b/Testing/cmsis_build/test.Release+VHT_M23.cprj index 20ad1e70..22222edc 100644 --- a/Testing/cmsis_build/test.Release+VHT_M23.cprj +++ b/Testing/cmsis_build/test.Release+VHT_M23.cprj @@ -1,6 +1,6 @@ - + Automatically generated project @@ -11,7 +11,7 @@ - + diff --git a/Testing/cmsis_build/test.Release+VHT_M3.cprj b/Testing/cmsis_build/test.Release+VHT_M3.cprj index d054ed97..aef737bb 100644 --- a/Testing/cmsis_build/test.Release+VHT_M3.cprj +++ b/Testing/cmsis_build/test.Release+VHT_M3.cprj @@ -1,6 +1,6 @@ - + Automatically generated project @@ -11,7 +11,7 @@ - + diff --git a/Testing/cmsis_build/test.Release+VHT_M33.cprj b/Testing/cmsis_build/test.Release+VHT_M33.cprj index 668caa96..377d303f 100644 --- a/Testing/cmsis_build/test.Release+VHT_M33.cprj +++ b/Testing/cmsis_build/test.Release+VHT_M33.cprj @@ -1,6 +1,6 @@ - + Automatically generated project @@ -11,7 +11,7 @@ - + diff --git a/Testing/cmsis_build/test.Release+VHT_M4.cprj b/Testing/cmsis_build/test.Release+VHT_M4.cprj index 73981678..803b9a41 100644 --- a/Testing/cmsis_build/test.Release+VHT_M4.cprj +++ b/Testing/cmsis_build/test.Release+VHT_M4.cprj @@ -1,6 +1,6 @@ - + Automatically generated project @@ -11,7 +11,7 @@ - + diff --git a/Testing/cmsis_build/test.Release+VHT_M55.cprj b/Testing/cmsis_build/test.Release+VHT_M55.cprj index c450081f..26dd76a0 100644 --- a/Testing/cmsis_build/test.Release+VHT_M55.cprj +++ b/Testing/cmsis_build/test.Release+VHT_M55.cprj @@ -1,6 +1,6 @@ - + Automatically generated project @@ -11,7 +11,7 @@ - + diff --git a/Testing/cmsis_build/test.Release+VHT_M7.cprj b/Testing/cmsis_build/test.Release+VHT_M7.cprj index 0f6509ee..3ff6c858 100644 --- a/Testing/cmsis_build/test.Release+VHT_M7.cprj +++ b/Testing/cmsis_build/test.Release+VHT_M7.cprj @@ -1,6 +1,6 @@ - + Automatically generated project @@ -11,7 +11,7 @@ - + diff --git a/Testing/cmsis_build/test.Release+VHT_M7_UNROLLED.cprj b/Testing/cmsis_build/test.Release+VHT_M7_UNROLLED.cprj index aad06424..aba861c3 100644 --- a/Testing/cmsis_build/test.Release+VHT_M7_UNROLLED.cprj +++ b/Testing/cmsis_build/test.Release+VHT_M7_UNROLLED.cprj @@ -1,6 +1,6 @@ - + Automatically generated project diff --git a/Testing/cmsis_build/test_packlist.txt b/Testing/cmsis_build/test_packlist.txt index b23a6b8d..859367c9 100644 --- a/Testing/cmsis_build/test_packlist.txt +++ b/Testing/cmsis_build/test_packlist.txt @@ -1,5 +1,6 @@ https://github.com/ARM-software/CMSIS-DSP/releases/download/v1.11.0/ARM.CMSIS-DSP.1.11.0.pack ARM::CMSIS@5.9.0 ARM::V2M_MPS3_SSE_300_BSP@1.3.0 -ARM::V2M_MPS3_SSE_310_BSP@1.0.0 -Keil::ARM_Compiler@1.7.2 \ No newline at end of file +ARM::V2M_MPS3_SSE_310_BSP@1.1.0 +Keil::ARM_Compiler@1.7.2 +ARM.DMA350 \ No newline at end of file diff --git a/Testing/cmsis_build/testac6.csolution.yml b/Testing/cmsis_build/testac6.csolution.yml index 3a185f4b..83c1dcb7 100644 --- a/Testing/cmsis_build/testac6.csolution.yml +++ b/Testing/cmsis_build/testac6.csolution.yml @@ -1,5 +1,5 @@ solution: - compiler: AC6 + compiler: AC6@6.18.0 misc: - C: - -Wsign-compare @@ -39,8 +39,9 @@ solution: packs: - pack: ARM::CMSIS@5.9.0 - pack: ARM::V2M_MPS3_SSE_300_BSP@1.3.0 - - pack: ARM::V2M_MPS3_SSE_310_BSP@1.0.0 + - pack: ARM::V2M_MPS3_SSE_310_BSP@1.1.0 - pack: Keil::ARM_Compiler@1.7.2 + - pack: ARM::DMA350@1.0.0 target-types: - type: VHT-Corstone-310 @@ -53,11 +54,6 @@ solution: defines: - CORTEXM - - type: VHT_M55 - device: ARMCM55 - defines: - - CORTEXM - - type: VHT_M33 device: ARMCM33_DSP_FP defines: diff --git a/Testing/cmsis_build/testgcc.csolution.yml b/Testing/cmsis_build/testgcc.csolution.yml index a7e767b9..99bef5fa 100644 --- a/Testing/cmsis_build/testgcc.csolution.yml +++ b/Testing/cmsis_build/testgcc.csolution.yml @@ -1,5 +1,5 @@ solution: - compiler: GCC + compiler: GCC@12.2.0 misc: - C: - -ffunction-sections @@ -37,16 +37,18 @@ solution: packs: - pack: ARM::CMSIS@5.9.0 - pack: ARM::V2M_MPS3_SSE_300_BSP@1.3.0 - - pack: ARM::V2M_MPS3_SSE_310_BSP@1.0.0 + - pack: ARM::V2M_MPS3_SSE_310_BSP@1.1.0 - pack: Keil::ARM_Compiler@1.7.2 + - pack: ARM::DMA350@1.0.0 target-types: -# There is not yet any gcc support in the pack -# for Corstone. -# V2M_MPS3_SSE_300_BSP@1.3.0 -# ARM::V2M_MPS3_SSE_310_BSP@1.0.0 - #- type: VHT-Corstone-310 - # device: ARM::SSE-310-MPS3 +# There is no gcc support in the pack +# for Corstone CS300. + + - type: VHT-Corstone-310 + device: ARM::SSE-310-MPS3 + defines: + - CORTEXM - type: VHT_M55 device: ARMCM55