diff --git a/Platforms/FVP/ARMCM7/LinkScripts/AC5/lnk.sct b/Platforms/FVP/ARMCM7/LinkScripts/AC5/lnk.sct new file mode 100755 index 00000000..bc03375e --- /dev/null +++ b/Platforms/FVP/ARMCM7/LinkScripts/AC5/lnk.sct @@ -0,0 +1,75 @@ +#! armcc -E +; command above MUST be in first line (no comment above!) + +/* +;-------- <<< Use Configuration Wizard in Context Menu >>> ------------------- +*/ + +#include "mem_ARMCM7.h" + +/*--------------------- Flash Configuration ---------------------------------- +; Flash Configuration +; Flash Base Address <0x0-0xFFFFFFFF:8> +; Flash Size (in Bytes) <0x0-0xFFFFFFFF:8> +; + *----------------------------------------------------------------------------*/ +#define __ROM_BASE 0x00000000 +#define __ROM_SIZE 0x00200000 + +/*--------------------- Embedded RAM Configuration --------------------------- +; RAM Configuration +; RAM Base Address <0x0-0xFFFFFFFF:8> +; RAM Size (in Bytes) <0x0-0xFFFFFFFF:8> +; + *----------------------------------------------------------------------------*/ +#define __RAM_BASE 0x20000000 +#define __RAM_SIZE 0x00200000 + +/*--------------------- Stack / Heap Configuration --------------------------- +; Stack / Heap Configuration +; Stack Size (in Bytes) <0x0-0xFFFFFFFF:8> +; Heap Size (in Bytes) <0x0-0xFFFFFFFF:8> +; + *----------------------------------------------------------------------------*/ +#define __STACK_SIZE STACK_SIZE +#define __HEAP_SIZE HEAP_SIZE + + +/*---------------------------------------------------------------------------- + User Stack & Heap boundery definition + *----------------------------------------------------------------------------*/ +#define __STACK_TOP (__RAM_BASE + __RAM_SIZE) /* starts at end of RAM */ +#define __HEAP_BASE (AlignExpr(+0, 8)) /* starts after RW_RAM section, 8 byte aligned */ + + +/*---------------------------------------------------------------------------- + Scatter File Definitions definition + *----------------------------------------------------------------------------*/ +#define __RO_BASE __ROM_BASE +#define __RO_SIZE __ROM_SIZE + +#define __RW_BASE (__RAM_BASE ) +#define __RW_SIZE (__RAM_SIZE - __STACK_SIZE - __HEAP_SIZE) + + + +LR_ROM __RO_BASE __RO_SIZE { ; load region size_region + ER_ROM __RO_BASE __RO_SIZE { ; load address = execution address + *.o (RESET, +First) + *(InRoot$$Sections) + .ANY (+RO) + .ANY (+XO) + } + + RW_RAM __RW_BASE __RW_SIZE { ; RW data + .ANY (+RW +ZI) + } + +#if __HEAP_SIZE > 0 + ARM_LIB_HEAP __HEAP_BASE EMPTY __HEAP_SIZE { ; Reserve empty region for heap + } +#endif + + ARM_LIB_STACK __STACK_TOP EMPTY -__STACK_SIZE { ; Reserve empty region for stack + } +} diff --git a/Platforms/FVP/ARMCM7/LinkScripts/AC5/mem_ARMCM7.h b/Platforms/FVP/ARMCM7/LinkScripts/AC5/mem_ARMCM7.h new file mode 100755 index 00000000..84a1ff1d --- /dev/null +++ b/Platforms/FVP/ARMCM7/LinkScripts/AC5/mem_ARMCM7.h @@ -0,0 +1,38 @@ +/**************************************************************************//** + * @file mem_ARMCM7.h + * @brief Memory base and size definitions (used in scatter file) + * @version V1.1.0 + * @date 15. May 2019 + * + * @note + * + ******************************************************************************/ +/* + * Copyright (c) 2009-2019 Arm Limited. All rights reserved. + * + * SPDX-License-Identifier: Apache-2.0 + * + * Licensed under the Apache License, Version 2.0 (the License); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef __MEM_ARMCM7_H +#define __MEM_ARMCM7_H + + + +#define STACK_SIZE 0x00003000 +#define HEAP_SIZE 0x00100000 + + + +#endif /* __MEM_ARMCM7_H */ diff --git a/Platforms/FVP/ARMCM7/LinkScripts/GCC/lnk.ld b/Platforms/FVP/ARMCM7/LinkScripts/GCC/lnk.ld index cc860721..dd8398d9 100644 --- a/Platforms/FVP/ARMCM7/LinkScripts/GCC/lnk.ld +++ b/Platforms/FVP/ARMCM7/LinkScripts/GCC/lnk.ld @@ -33,7 +33,7 @@ -----------------------------------------------------------------------------*/ __ROM_BASE = 0x00000000; -__ROM_SIZE = 0x00100000; +__ROM_SIZE = 0x00300000; /*--------------------- Embedded RAM Configuration ---------------------------- RAM Configuration diff --git a/Platforms/FVP/ARMCM7/Startup/AC5/startup_ARMCM7.s b/Platforms/FVP/ARMCM7/Startup/AC5/startup_ARMCM7.s new file mode 100755 index 00000000..333d3581 --- /dev/null +++ b/Platforms/FVP/ARMCM7/Startup/AC5/startup_ARMCM7.s @@ -0,0 +1,168 @@ +;/**************************************************************************//** +; * @file startup_ARMCM7.s +; * @brief CMSIS Core Device Startup File for +; * ARMCM7 Device +; * @version V5.4.0 +; * @date 12. December 2018 +; ******************************************************************************/ +;/* +; * Copyright (c) 2009-2018 Arm Limited. All rights reserved. +; * +; * SPDX-License-Identifier: Apache-2.0 +; * +; * Licensed under the Apache License, Version 2.0 (the License); you may +; * not use this file except in compliance with the License. +; * You may obtain a copy of the License at +; * +; * www.apache.org/licenses/LICENSE-2.0 +; * +; * Unless required by applicable law or agreed to in writing, software +; * distributed under the License is distributed on an AS IS BASIS, WITHOUT +; * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +; * See the License for the specific language governing permissions and +; * limitations under the License. +; */ + +;//-------- <<< Use Configuration Wizard in Context Menu >>> ------------------ + +#include "mem_ARMCM7.h" + +; Stack Configuration +; Stack Size (in Bytes) <0x0-0xFFFFFFFF:8> +; + +Stack_Size EQU STACK_SIZE + + AREA STACK, NOINIT, READWRITE, ALIGN=3 +__stack_limit +Stack_Mem SPACE Stack_Size +__initial_sp + + +; Heap Configuration +; Heap Size (in Bytes) <0x0-0xFFFFFFFF:8> +; + +Heap_Size EQU HEAP_SIZE + + IF Heap_Size != 0 ; Heap is provided + AREA HEAP, NOINIT, READWRITE, ALIGN=3 +__heap_base +Heap_Mem SPACE Heap_Size +__heap_limit + ENDIF + + + PRESERVE8 + THUMB + + +; Vector Table Mapped to Address 0 at Reset + + AREA RESET, DATA, READONLY + EXPORT __Vectors + EXPORT __Vectors_End + EXPORT __Vectors_Size + +__Vectors DCD __initial_sp ; Top of Stack + DCD Reset_Handler ; Reset Handler + DCD NMI_Handler ; -14 NMI Handler + DCD HardFault_Handler ; -13 Hard Fault Handler + DCD MemManage_Handler ; -12 MPU Fault Handler + DCD BusFault_Handler ; -11 Bus Fault Handler + DCD UsageFault_Handler ; -10 Usage Fault Handler + DCD 0 ; Reserved + DCD 0 ; Reserved + DCD 0 ; Reserved + DCD 0 ; Reserved + DCD SVC_Handler ; -5 SVCall Handler + DCD DebugMon_Handler ; -4 Debug Monitor Handler + DCD 0 ; Reserved + DCD PendSV_Handler ; -2 PendSV Handler + DCD SysTick_Handler ; -1 SysTick Handler + + ; Interrupts + DCD Interrupt0_Handler ; 0 Interrupt 0 + DCD Interrupt1_Handler ; 1 Interrupt 1 + DCD Interrupt2_Handler ; 2 Interrupt 2 + DCD Interrupt3_Handler ; 3 Interrupt 3 + DCD Interrupt4_Handler ; 4 Interrupt 4 + DCD Interrupt5_Handler ; 5 Interrupt 5 + DCD Interrupt6_Handler ; 6 Interrupt 6 + DCD Interrupt7_Handler ; 7 Interrupt 7 + DCD Interrupt8_Handler ; 8 Interrupt 8 + DCD Interrupt9_Handler ; 9 Interrupt 9 + + SPACE (214 * 4) ; Interrupts 10 .. 224 are left out +__Vectors_End +__Vectors_Size EQU __Vectors_End - __Vectors + + + AREA |.text|, CODE, READONLY + +; Reset Handler + +Reset_Handler PROC + EXPORT Reset_Handler [WEAK] + IMPORT SystemInit + IMPORT __main + + LDR R0, =SystemInit + BLX R0 + LDR R0, =__main + BX R0 + ENDP + + +; Macro to define default exception/interrupt handlers. +; Default handler are weak symbols with an endless loop. +; They can be overwritten by real handlers. + MACRO + Set_Default_Handler $Handler_Name +$Handler_Name PROC + EXPORT $Handler_Name [WEAK] + B . + ENDP + MEND + + +; Default exception/interrupt handler + + Set_Default_Handler NMI_Handler + Set_Default_Handler HardFault_Handler + Set_Default_Handler MemManage_Handler + Set_Default_Handler BusFault_Handler + Set_Default_Handler UsageFault_Handler + Set_Default_Handler SVC_Handler + Set_Default_Handler DebugMon_Handler + Set_Default_Handler PendSV_Handler + Set_Default_Handler SysTick_Handler + + Set_Default_Handler Interrupt0_Handler + Set_Default_Handler Interrupt1_Handler + Set_Default_Handler Interrupt2_Handler + Set_Default_Handler Interrupt3_Handler + Set_Default_Handler Interrupt4_Handler + Set_Default_Handler Interrupt5_Handler + Set_Default_Handler Interrupt6_Handler + Set_Default_Handler Interrupt7_Handler + Set_Default_Handler Interrupt8_Handler + Set_Default_Handler Interrupt9_Handler + + ALIGN + + +; User setup Stack & Heap + + IF :LNOT::DEF:__MICROLIB + IMPORT __use_two_region_memory + ENDIF + + EXPORT __stack_limit + EXPORT __initial_sp + IF Heap_Size != 0 ; Heap is provided + EXPORT __heap_base + EXPORT __heap_limit + ENDIF + + END diff --git a/Source/BayesFunctions/arm_gaussian_naive_bayes_predict_f32.c b/Source/BayesFunctions/arm_gaussian_naive_bayes_predict_f32.c index e75e0171..b7db22bf 100755 --- a/Source/BayesFunctions/arm_gaussian_naive_bayes_predict_f32.c +++ b/Source/BayesFunctions/arm_gaussian_naive_bayes_predict_f32.c @@ -276,7 +276,7 @@ uint32_t arm_gaussian_naive_bayes_predict_f32(const arm_gaussian_naive_bayes_ins for(nbDim = 0; nbDim < S->vectorDimension; nbDim++) { sigma = *pSigma + S->epsilon; - acc1 += log(2.0 * PI_F * sigma); + acc1 += log(2.0f * PI_F * sigma); acc2 += (*pIn - *pTheta) * (*pIn - *pTheta) / sigma; pIn++; @@ -284,8 +284,8 @@ uint32_t arm_gaussian_naive_bayes_predict_f32(const arm_gaussian_naive_bayes_ins pSigma++; } - tmp = -0.5 * acc1; - tmp -= 0.5 * acc2; + tmp = -0.5f * acc1; + tmp -= 0.5f * acc2; *buffer = tmp + log(*pPrior++); diff --git a/Source/DistanceFunctions/arm_boolean_distance_template.h b/Source/DistanceFunctions/arm_boolean_distance_template.h index cac9e3de..992cd113 100755 --- a/Source/DistanceFunctions/arm_boolean_distance_template.h +++ b/Source/DistanceFunctions/arm_boolean_distance_template.h @@ -96,7 +96,7 @@ void FUNC(EXT)(const uint32_t *pA uint32_t _cft=0; #endif uint32_t nbBoolBlock; - uint32_t a,b,ba,bb,cc=1; + uint32_t a,b,ba,bb; int shift; uint32x4_t aV, bV; #ifdef TT @@ -315,7 +315,7 @@ void FUNC(EXT)(const uint32_t *pA #ifdef FT uint32_t _cft=0; #endif - uint32_t a,b,ba,bb,cc=1; + uint32_t a,b,ba,bb; int shift; while(numberOfBools >= 32) diff --git a/Source/DistanceFunctions/arm_braycurtis_distance_f32.c b/Source/DistanceFunctions/arm_braycurtis_distance_f32.c index 41d73e08..c5d067bc 100755 --- a/Source/DistanceFunctions/arm_braycurtis_distance_f32.c +++ b/Source/DistanceFunctions/arm_braycurtis_distance_f32.c @@ -114,7 +114,6 @@ float32_t arm_braycurtis_distance_f32(const float32_t *pA,const float32_t *pB, u float32_t arm_braycurtis_distance_f32(const float32_t *pA,const float32_t *pB, uint32_t blockSize) { float32_t accumDiff=0.0, accumSum=0.0, tmpA, tmpB; - uint32_t i; while(blockSize > 0) { @@ -141,4 +140,4 @@ float32_t arm_braycurtis_distance_f32(const float32_t *pA,const float32_t *pB, u /** * @} end of groupDistance group - */ \ No newline at end of file + */ diff --git a/Source/DistanceFunctions/arm_canberra_distance_f32.c b/Source/DistanceFunctions/arm_canberra_distance_f32.c index 05a49ad3..bdae6ab0 100755 --- a/Source/DistanceFunctions/arm_canberra_distance_f32.c +++ b/Source/DistanceFunctions/arm_canberra_distance_f32.c @@ -128,7 +128,7 @@ float32_t arm_canberra_distance_f32(const float32_t *pA,const float32_t *pB, uin diff = fabs(tmpA - tmpB); sum = fabs(tmpA) + fabs(tmpB); - if ((tmpA != 0.0) || (tmpB != 0.0)) + if ((tmpA != 0.0f) || (tmpB != 0.0f)) { accum += (diff / sum); } diff --git a/Source/DistanceFunctions/arm_chebyshev_distance_f32.c b/Source/DistanceFunctions/arm_chebyshev_distance_f32.c index c7267bc6..cbd3fd22 100755 --- a/Source/DistanceFunctions/arm_chebyshev_distance_f32.c +++ b/Source/DistanceFunctions/arm_chebyshev_distance_f32.c @@ -129,7 +129,6 @@ float32_t arm_chebyshev_distance_f32(const float32_t *pA,const float32_t *pB, ui float32_t arm_chebyshev_distance_f32(const float32_t *pA,const float32_t *pB, uint32_t blockSize) { float32_t diff=0.0, maxVal,tmpA, tmpB; - uint32_t i; tmpA = *pA++; tmpB = *pB++; diff --git a/Source/DistanceFunctions/arm_cityblock_distance_f32.c b/Source/DistanceFunctions/arm_cityblock_distance_f32.c index 6d96d470..8788f842 100755 --- a/Source/DistanceFunctions/arm_cityblock_distance_f32.c +++ b/Source/DistanceFunctions/arm_cityblock_distance_f32.c @@ -90,8 +90,7 @@ float32_t arm_cityblock_distance_f32(const float32_t *pA,const float32_t *pB, ui #else float32_t arm_cityblock_distance_f32(const float32_t *pA,const float32_t *pB, uint32_t blockSize) { - float32_t diff=0.0, accum,tmpA, tmpB; - uint32_t i; + float32_t accum,tmpA, tmpB; accum = 0.0; while(blockSize > 0) diff --git a/Source/DistanceFunctions/arm_correlation_distance_f32.c b/Source/DistanceFunctions/arm_correlation_distance_f32.c index 807e6c04..cee07fde 100755 --- a/Source/DistanceFunctions/arm_correlation_distance_f32.c +++ b/Source/DistanceFunctions/arm_correlation_distance_f32.c @@ -52,7 +52,6 @@ float32_t arm_correlation_distance_f32(float32_t *pA,float32_t *pB, uint32_t blockSize) { float32_t ma,mb,pwra,pwrb,dot,tmp; - uint32_t i; arm_mean_f32(pA, blockSize, &ma); arm_mean_f32(pB, blockSize, &mb); @@ -71,7 +70,7 @@ float32_t arm_correlation_distance_f32(float32_t *pA,float32_t *pB, uint32_t blo arm_sqrt_f32(pwra * pwrb,&tmp); - return(1.0 - dot / tmp); + return(1.0f - dot / tmp); } diff --git a/Source/DistanceFunctions/arm_cosine_distance_f32.c b/Source/DistanceFunctions/arm_cosine_distance_f32.c index 8adbbd92..b35b5ee1 100755 --- a/Source/DistanceFunctions/arm_cosine_distance_f32.c +++ b/Source/DistanceFunctions/arm_cosine_distance_f32.c @@ -50,7 +50,6 @@ float32_t arm_cosine_distance_f32(const float32_t *pA,const float32_t *pB, uint32_t blockSize) { float32_t pwra,pwrb,dot,tmp; - uint32_t i; arm_power_f32(pA, blockSize, &pwra); arm_power_f32(pB, blockSize, &pwrb); @@ -58,7 +57,7 @@ float32_t arm_cosine_distance_f32(const float32_t *pA,const float32_t *pB, uint3 arm_dot_prod_f32(pA,pB,blockSize,&dot); arm_sqrt_f32(pwra * pwrb, &tmp); - return(1.0 - dot / tmp); + return(1.0f - dot / tmp); } diff --git a/Source/DistanceFunctions/arm_dice_distance.c b/Source/DistanceFunctions/arm_dice_distance.c index dfd3a7e1..81533a64 100755 --- a/Source/DistanceFunctions/arm_dice_distance.c +++ b/Source/DistanceFunctions/arm_dice_distance.c @@ -87,4 +87,4 @@ float32_t arm_dice_distance(const uint32_t *pA, const uint32_t *pB, uint32_t num /** * @} end of groupDistance group - */ \ No newline at end of file + */ diff --git a/Source/DistanceFunctions/arm_euclidean_distance_f32.c b/Source/DistanceFunctions/arm_euclidean_distance_f32.c index 07b99a74..e26291db 100755 --- a/Source/DistanceFunctions/arm_euclidean_distance_f32.c +++ b/Source/DistanceFunctions/arm_euclidean_distance_f32.c @@ -88,7 +88,6 @@ float32_t arm_euclidean_distance_f32(const float32_t *pA,const float32_t *pB, ui float32_t arm_euclidean_distance_f32(const float32_t *pA,const float32_t *pB, uint32_t blockSize) { float32_t accum=0.0,tmp; - uint32_t i; while(blockSize > 0) { diff --git a/Source/DistanceFunctions/arm_jensenshannon_distance_f32.c b/Source/DistanceFunctions/arm_jensenshannon_distance_f32.c index 80fe391e..143dac36 100755 --- a/Source/DistanceFunctions/arm_jensenshannon_distance_f32.c +++ b/Source/DistanceFunctions/arm_jensenshannon_distance_f32.c @@ -30,7 +30,7 @@ #include -static inline float32_t rel_entr(float32_t x, float32_t y) +__STATIC_INLINE float32_t rel_entr(float32_t x, float32_t y) { return (x * log(x / y)); } @@ -160,14 +160,14 @@ float32_t arm_jensenshannon_distance_f32(const float32_t *pA,const float32_t *pB right = 0.0; for(i=0; i < blockSize; i++) { - tmp = (pA[i] + pB[i]) / 2.0; + tmp = (pA[i] + pB[i]) / 2.0f; left += rel_entr(pA[i], tmp); right += rel_entr(pB[i], tmp); } sum = left + right; - arm_sqrt_f32(sum/2.0, &result); + arm_sqrt_f32(sum/2.0f, &result); return(result); } diff --git a/Source/DistanceFunctions/arm_minkowski_distance_f32.c b/Source/DistanceFunctions/arm_minkowski_distance_f32.c index c2cbf66d..78f727d8 100755 --- a/Source/DistanceFunctions/arm_minkowski_distance_f32.c +++ b/Source/DistanceFunctions/arm_minkowski_distance_f32.c @@ -98,7 +98,7 @@ float32_t arm_minkowski_distance_f32(const float32_t *pA,const float32_t *pB, in float32_t arm_minkowski_distance_f32(const float32_t *pA,const float32_t *pB, int32_t order, uint32_t blockSize) { - float32_t sum,diff; + float32_t sum; uint32_t i; sum = 0.0; @@ -108,7 +108,7 @@ float32_t arm_minkowski_distance_f32(const float32_t *pA,const float32_t *pB, in } - return(pow(sum,(1.0/order))); + return(pow(sum,(1.0f/order))); } #endif diff --git a/Source/TransformFunctions/arm_rfft_f32.c b/Source/TransformFunctions/arm_rfft_f32.c index b5d0a662..a1fc70ff 100644 --- a/Source/TransformFunctions/arm_rfft_f32.c +++ b/Source/TransformFunctions/arm_rfft_f32.c @@ -78,6 +78,8 @@ void arm_split_rifft_f32( /** @brief Processing function for the floating-point RFFT/RIFFT. + Source buffer is modified by this function. + @deprecated Do not use this function. It has been superceded by \ref arm_rfft_fast_f32 and will be removed in the future. @param[in] S points to an instance of the floating-point RFFT/RIFFT structure @param[in] pSrc points to the input buffer diff --git a/Source/TransformFunctions/arm_rfft_fast_f32.c b/Source/TransformFunctions/arm_rfft_fast_f32.c index 7a1af146..e2be2a5d 100644 --- a/Source/TransformFunctions/arm_rfft_fast_f32.c +++ b/Source/TransformFunctions/arm_rfft_fast_f32.c @@ -238,6 +238,8 @@ void merge_rfft_f32( @par The complex transforms used internally include scaling to prevent fixed-point overflows. The overall scaling equals 1/(fftLen/2). + Due to the use of complex transform internally, the source buffer is + modified by the rfft. @par A separate instance structure must be defined for each transform used but twiddle factor and bit reversal tables can be reused. @@ -279,7 +281,7 @@ void merge_rfft_f32( /** @brief Processing function for the floating-point real FFT. @param[in] S points to an arm_rfft_fast_instance_f32 structure - @param[in] p points to input buffer + @param[in] p points to input buffer (Source buffer is modified by this function.) @param[in] pOut points to output buffer @param[in] ifftFlag - value = 0: RFFT diff --git a/Source/TransformFunctions/arm_rfft_q15.c b/Source/TransformFunctions/arm_rfft_q15.c index fdc9bab1..be34ca01 100644 --- a/Source/TransformFunctions/arm_rfft_q15.c +++ b/Source/TransformFunctions/arm_rfft_q15.c @@ -56,7 +56,7 @@ void arm_split_rifft_q15( /** @brief Processing function for the Q15 RFFT/RIFFT. @param[in] S points to an instance of the Q15 RFFT/RIFFT structure - @param[in] pSrc points to input buffer + @param[in] pSrc points to input buffer (Source buffer is modified by this function.) @param[out] pDst points to output buffer @return none diff --git a/Source/TransformFunctions/arm_rfft_q31.c b/Source/TransformFunctions/arm_rfft_q31.c index d16600dd..62ab7af2 100644 --- a/Source/TransformFunctions/arm_rfft_q31.c +++ b/Source/TransformFunctions/arm_rfft_q31.c @@ -56,7 +56,7 @@ void arm_split_rifft_q31( /** @brief Processing function for the Q31 RFFT/RIFFT. @param[in] S points to an instance of the Q31 RFFT/RIFFT structure - @param[in] pSrc points to input buffer + @param[in] pSrc points to input buffer (Source buffer is modified by this function) @param[out] pDst points to output buffer @return none diff --git a/Testing/FrameworkInclude/ArrayMemory.h b/Testing/FrameworkInclude/ArrayMemory.h index 5720af5f..21e00253 100644 --- a/Testing/FrameworkInclude/ArrayMemory.h +++ b/Testing/FrameworkInclude/ArrayMemory.h @@ -41,9 +41,9 @@ class ArrayMemory:public Client::Memory public: ArrayMemory(char* ptr, size_t bufferLength,int aligned, bool tail); ArrayMemory(char* ptr, size_t bufferLength); - char *NewBuffer(size_t length); - void FreeMemory(); - bool HasMemError(); + virtual char *NewBuffer(size_t length); + virtual void FreeMemory(); + virtual bool HasMemError(); private: // Pointer to C array used for memory diff --git a/Testing/FrameworkInclude/Calibrate.h b/Testing/FrameworkInclude/Calibrate.h index 8747446f..30f4d755 100755 --- a/Testing/FrameworkInclude/Calibrate.h +++ b/Testing/FrameworkInclude/Calibrate.h @@ -5,6 +5,6 @@ class Calibrate:public Client::Suite public: Calibrate(Testing::testID_t id); void empty(); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); }; diff --git a/Testing/FrameworkInclude/Error.h b/Testing/FrameworkInclude/Error.h index 9872161a..c939ae35 100644 --- a/Testing/FrameworkInclude/Error.h +++ b/Testing/FrameworkInclude/Error.h @@ -159,4 +159,4 @@ Macros to use to implement tests. #define ASSERT_SNR(A,B,SNR) Client::assert_snr_error(__LINE__,A,B,SNR) #define ASSERT_TRUE(A) Client::assert_true(__LINE__,A) #define ASSERT_FALSE(A) Client::assert_false(__LINE__,A) -#endif \ No newline at end of file +#endif diff --git a/Testing/FrameworkInclude/FPGA.h b/Testing/FrameworkInclude/FPGA.h index 89a25174..395cc59f 100644 --- a/Testing/FrameworkInclude/FPGA.h +++ b/Testing/FrameworkInclude/FPGA.h @@ -28,6 +28,7 @@ #ifndef _FPGA_H_ #define _FPGA_H_ #include +#include "stdlib.h" namespace Client { @@ -46,41 +47,40 @@ FPGA driver. Used to read a C array describing how to drive the test. public: FPGA(const char *testDesc,const char *patterns); ~FPGA(); - void ReadIdentification(); - void ReadTestIdentification(); - Testing::nbParameters_t ReadNbParameters(); - void DispStatus(Testing::TestStatus,Testing::errorID_t,unsigned long,Testing::cycles_t); - void EndGroup(); - void ImportPattern(Testing::PatternID_t); - void ReadPatternList(); - void ReadOutputList(); - void ReadParameterList(Testing::nbParameters_t); - Testing::nbSamples_t GetPatternSize(Testing::PatternID_t); - - void ImportPattern_f64(Testing::PatternID_t,char*,Testing::nbSamples_t nb); - void ImportPattern_f32(Testing::PatternID_t,char*,Testing::nbSamples_t nb); - void ImportPattern_q31(Testing::PatternID_t,char*,Testing::nbSamples_t nb); - void ImportPattern_q15(Testing::PatternID_t,char*,Testing::nbSamples_t nb); - void ImportPattern_q7(Testing::PatternID_t,char*,Testing::nbSamples_t nb); - void ImportPattern_u32(Testing::PatternID_t,char*,Testing::nbSamples_t nb); - void ImportPattern_u16(Testing::PatternID_t,char*,Testing::nbSamples_t nb); - void ImportPattern_u8(Testing::PatternID_t,char*,Testing::nbSamples_t nb); - - void DumpParams(std::vector&); - Testing::param_t* ImportParams(Testing::PatternID_t,Testing::nbParameterEntries_t &,Testing::ParameterKind &); - bool hasParam(); - Testing::PatternID_t getParamID(); - - void DumpPattern_f64(Testing::outputID_t,Testing::nbSamples_t nb, float64_t* data); - void DumpPattern_f32(Testing::outputID_t,Testing::nbSamples_t nb, float32_t* data); - void DumpPattern_q31(Testing::outputID_t,Testing::nbSamples_t nb, q31_t* data); - void DumpPattern_q15(Testing::outputID_t,Testing::nbSamples_t nb, q15_t* data); - void DumpPattern_q7(Testing::outputID_t,Testing::nbSamples_t nb, q7_t* data); - void DumpPattern_u32(Testing::outputID_t,Testing::nbSamples_t nb, uint32_t* data); - void DumpPattern_u16(Testing::outputID_t,Testing::nbSamples_t nb, uint16_t* data); - void DumpPattern_u8(Testing::outputID_t,Testing::nbSamples_t nb, uint8_t* data); + virtual void ReadIdentification(); + virtual void ReadTestIdentification(); + virtual Testing::nbParameters_t ReadNbParameters(); + virtual void DispStatus(Testing::TestStatus,Testing::errorID_t,unsigned long,Testing::cycles_t); + virtual void EndGroup(); + virtual void ReadPatternList(); + virtual void ReadOutputList(); + virtual void ReadParameterList(Testing::nbParameters_t); + virtual Testing::nbSamples_t GetPatternSize(Testing::PatternID_t); + + virtual void ImportPattern_f64(Testing::PatternID_t,char*,Testing::nbSamples_t nb); + virtual void ImportPattern_f32(Testing::PatternID_t,char*,Testing::nbSamples_t nb); + virtual void ImportPattern_q31(Testing::PatternID_t,char*,Testing::nbSamples_t nb); + virtual void ImportPattern_q15(Testing::PatternID_t,char*,Testing::nbSamples_t nb); + virtual void ImportPattern_q7(Testing::PatternID_t,char*,Testing::nbSamples_t nb); + virtual void ImportPattern_u32(Testing::PatternID_t,char*,Testing::nbSamples_t nb); + virtual void ImportPattern_u16(Testing::PatternID_t,char*,Testing::nbSamples_t nb); + virtual void ImportPattern_u8(Testing::PatternID_t,char*,Testing::nbSamples_t nb); + + virtual void DumpParams(std::vector&); + virtual Testing::param_t* ImportParams(Testing::PatternID_t,Testing::nbParameterEntries_t &,Testing::ParameterKind &); + virtual bool hasParam(); + virtual Testing::PatternID_t getParamID(); + + virtual void DumpPattern_f64(Testing::outputID_t,Testing::nbSamples_t nb, float64_t* data); + virtual void DumpPattern_f32(Testing::outputID_t,Testing::nbSamples_t nb, float32_t* data); + virtual void DumpPattern_q31(Testing::outputID_t,Testing::nbSamples_t nb, q31_t* data); + virtual void DumpPattern_q15(Testing::outputID_t,Testing::nbSamples_t nb, q15_t* data); + virtual void DumpPattern_q7(Testing::outputID_t,Testing::nbSamples_t nb, q7_t* data); + virtual void DumpPattern_u32(Testing::outputID_t,Testing::nbSamples_t nb, uint32_t* data); + virtual void DumpPattern_u16(Testing::outputID_t,Testing::nbSamples_t nb, uint16_t* data); + virtual void DumpPattern_u8(Testing::outputID_t,Testing::nbSamples_t nb, uint8_t* data); - Testing::testID_t CurrentTestID(); + virtual Testing::testID_t CurrentTestID(); private: void recomputeTestDir(); void DeleteParams(); @@ -137,4 +137,4 @@ FPGA driver. Used to read a C array describing how to drive the test. }; } -#endif \ No newline at end of file +#endif diff --git a/Testing/FrameworkInclude/Generators.h b/Testing/FrameworkInclude/Generators.h index 01e1145d..2d09bee9 100644 --- a/Testing/FrameworkInclude/Generators.h +++ b/Testing/FrameworkInclude/Generators.h @@ -8,4 +8,4 @@ extern void generate2(Testing::param_t *,Testing::param_t *,Testing::nbParameter extern void generate3(Testing::param_t *,Testing::param_t *,Testing::nbParameterEntries_t &); extern void generate4(Testing::param_t *,Testing::param_t *,Testing::nbParameterEntries_t &); -#endif \ No newline at end of file +#endif diff --git a/Testing/FrameworkInclude/IORunner.h b/Testing/FrameworkInclude/IORunner.h index ced71890..80c8e4f5 100644 --- a/Testing/FrameworkInclude/IORunner.h +++ b/Testing/FrameworkInclude/IORunner.h @@ -38,8 +38,8 @@ namespace Client IORunner(IO*,PatternMgr*); IORunner(IO*,PatternMgr*, Testing::RunningMode); ~IORunner(); - Testing::TestStatus run(Suite *s); - Testing::TestStatus run(Group *g); + virtual Testing::TestStatus run(Suite *s); + virtual Testing::TestStatus run(Group *g); private: IO *m_io; PatternMgr *m_mgr; @@ -50,4 +50,4 @@ namespace Client } -#endif \ No newline at end of file +#endif diff --git a/Testing/FrameworkInclude/Pattern.h b/Testing/FrameworkInclude/Pattern.h index 117227c6..bebebeda 100644 --- a/Testing/FrameworkInclude/Pattern.h +++ b/Testing/FrameworkInclude/Pattern.h @@ -283,4 +283,4 @@ class LocalPattern : public AnyPattern{ } -#endif \ No newline at end of file +#endif diff --git a/Testing/FrameworkInclude/Semihosting.h b/Testing/FrameworkInclude/Semihosting.h index c2c599e3..423897ea 100644 --- a/Testing/FrameworkInclude/Semihosting.h +++ b/Testing/FrameworkInclude/Semihosting.h @@ -29,7 +29,7 @@ #define _SEMIHOSTING_H_ #include #include - +#include namespace Client { @@ -49,43 +49,43 @@ Semihosting driver. Used to read a text file describing how to drive the test. ,std::string outputRootPath ,std::string parameterRootPath); ~Semihosting(); - void ReadIdentification(); - void ReadTestIdentification(); - Testing::nbParameters_t ReadNbParameters(); - void DispStatus(Testing::TestStatus,Testing::errorID_t,unsigned long,Testing::cycles_t); - void EndGroup(); - void ImportPattern(Testing::PatternID_t); - void ReadPatternList(); - void ReadOutputList(); - void ReadParameterList(Testing::nbParameters_t); - Testing::nbSamples_t GetPatternSize(Testing::PatternID_t); + virtual void ReadIdentification(); + virtual void ReadTestIdentification(); + virtual Testing::nbParameters_t ReadNbParameters(); + virtual void DispStatus(Testing::TestStatus,Testing::errorID_t,unsigned long,Testing::cycles_t); + virtual void EndGroup(); + virtual void ImportPattern(Testing::PatternID_t); + virtual void ReadPatternList(); + virtual void ReadOutputList(); + virtual void ReadParameterList(Testing::nbParameters_t); + virtual Testing::nbSamples_t GetPatternSize(Testing::PatternID_t); //Testing::nbSamples_t GetParameterSize(Testing::PatternID_t); - void ImportPattern_f64(Testing::PatternID_t,char*,Testing::nbSamples_t nb=0); - void ImportPattern_f32(Testing::PatternID_t,char*,Testing::nbSamples_t nb=0); - void ImportPattern_q31(Testing::PatternID_t,char*,Testing::nbSamples_t nb=0); - void ImportPattern_q15(Testing::PatternID_t,char*,Testing::nbSamples_t nb=0); - void ImportPattern_q7(Testing::PatternID_t,char*,Testing::nbSamples_t nb=0); - void ImportPattern_u32(Testing::PatternID_t,char*,Testing::nbSamples_t nb=0); - void ImportPattern_u16(Testing::PatternID_t,char*,Testing::nbSamples_t nb=0); - void ImportPattern_u8(Testing::PatternID_t,char*,Testing::nbSamples_t nb=0); + virtual void ImportPattern_f64(Testing::PatternID_t,char*,Testing::nbSamples_t nb=0); + virtual void ImportPattern_f32(Testing::PatternID_t,char*,Testing::nbSamples_t nb=0); + virtual void ImportPattern_q31(Testing::PatternID_t,char*,Testing::nbSamples_t nb=0); + virtual void ImportPattern_q15(Testing::PatternID_t,char*,Testing::nbSamples_t nb=0); + virtual void ImportPattern_q7(Testing::PatternID_t,char*,Testing::nbSamples_t nb=0); + virtual void ImportPattern_u32(Testing::PatternID_t,char*,Testing::nbSamples_t nb=0); + virtual void ImportPattern_u16(Testing::PatternID_t,char*,Testing::nbSamples_t nb=0); + virtual void ImportPattern_u8(Testing::PatternID_t,char*,Testing::nbSamples_t nb=0); - void DumpParams(std::vector&); - Testing::param_t* ImportParams(Testing::PatternID_t,Testing::nbParameterEntries_t &,Testing::ParameterKind &); + virtual void DumpParams(std::vector&); + virtual Testing::param_t* ImportParams(Testing::PatternID_t,Testing::nbParameterEntries_t &,Testing::ParameterKind &); - bool hasParam(); - Testing::PatternID_t getParamID(); + virtual bool hasParam(); + virtual Testing::PatternID_t getParamID(); - void DumpPattern_f64(Testing::outputID_t,Testing::nbSamples_t nb, float64_t*); - void DumpPattern_f32(Testing::outputID_t,Testing::nbSamples_t nb, float32_t*); - void DumpPattern_q31(Testing::outputID_t,Testing::nbSamples_t nb, q31_t*); - void DumpPattern_q15(Testing::outputID_t,Testing::nbSamples_t nb, q15_t*); - void DumpPattern_q7(Testing::outputID_t,Testing::nbSamples_t nb, q7_t*); - void DumpPattern_u32(Testing::outputID_t,Testing::nbSamples_t nb, uint32_t*); - void DumpPattern_u16(Testing::outputID_t,Testing::nbSamples_t nb, uint16_t*); - void DumpPattern_u8(Testing::outputID_t,Testing::nbSamples_t nb, uint8_t*); + virtual void DumpPattern_f64(Testing::outputID_t,Testing::nbSamples_t nb, float64_t*); + virtual void DumpPattern_f32(Testing::outputID_t,Testing::nbSamples_t nb, float32_t*); + virtual void DumpPattern_q31(Testing::outputID_t,Testing::nbSamples_t nb, q31_t*); + virtual void DumpPattern_q15(Testing::outputID_t,Testing::nbSamples_t nb, q15_t*); + virtual void DumpPattern_q7(Testing::outputID_t,Testing::nbSamples_t nb, q7_t*); + virtual void DumpPattern_u32(Testing::outputID_t,Testing::nbSamples_t nb, uint32_t*); + virtual void DumpPattern_u16(Testing::outputID_t,Testing::nbSamples_t nb, uint16_t*); + virtual void DumpPattern_u8(Testing::outputID_t,Testing::nbSamples_t nb, uint8_t*); - Testing::testID_t CurrentTestID(); + virtual Testing::testID_t CurrentTestID(); private: void DeleteParams(); void recomputeTestDir(); @@ -137,4 +137,4 @@ Semihosting driver. Used to read a text file describing how to drive the test. }; } -#endif \ No newline at end of file +#endif diff --git a/Testing/FrameworkInclude/Test.h b/Testing/FrameworkInclude/Test.h index e7ba412b..8740f6c9 100644 --- a/Testing/FrameworkInclude/Test.h +++ b/Testing/FrameworkInclude/Test.h @@ -567,4 +567,4 @@ private: } -#endif \ No newline at end of file +#endif diff --git a/Testing/FrameworkInclude/Timing.h b/Testing/FrameworkInclude/Timing.h index ac82bc6c..f70de6e1 100644 --- a/Testing/FrameworkInclude/Timing.h +++ b/Testing/FrameworkInclude/Timing.h @@ -90,4 +90,4 @@ static inline void stopSection() { #endif -#endif \ No newline at end of file +#endif diff --git a/Testing/FrameworkSource/ArrayMemory.cpp b/Testing/FrameworkSource/ArrayMemory.cpp index af1df833..5d824a79 100644 --- a/Testing/FrameworkSource/ArrayMemory.cpp +++ b/Testing/FrameworkSource/ArrayMemory.cpp @@ -123,4 +123,4 @@ namespace Client { this->memError=false; } -} \ No newline at end of file +} diff --git a/Testing/FrameworkSource/Error.cpp b/Testing/FrameworkSource/Error.cpp index 8514cde0..196fc252 100644 --- a/Testing/FrameworkSource/Error.cpp +++ b/Testing/FrameworkSource/Error.cpp @@ -65,7 +65,7 @@ void assert_relative_error(unsigned long nb,float32_t &a, float32_t &b, float32_ float32_t rel,delta,average; delta=abs(a-b); - average = (abs(a) + abs(b)) / 2.0; + average = (abs(a) + abs(b)) / 2.0f; if (average !=0) { rel = delta / average; @@ -377,4 +377,4 @@ void assert_false(unsigned long nb,bool cond) } } -} \ No newline at end of file +} diff --git a/Testing/FrameworkSource/FPGA.cpp b/Testing/FrameworkSource/FPGA.cpp index 48accea2..c2c6098b 100644 --- a/Testing/FrameworkSource/FPGA.cpp +++ b/Testing/FrameworkSource/FPGA.cpp @@ -340,9 +340,8 @@ namespace Client } else { - unsigned long kind,nbInputSamples,nbOutputSamples,dimensions,len,sample; + unsigned long kind,nbInputSamples,nbOutputSamples,dimensions,sample; Testing::param_t *p,*current; - size_t length; // Generator kind this->read32(&kind); @@ -432,10 +431,8 @@ namespace Client Testing::param_t* FPGA::ImportParams(Testing::PatternID_t id,Testing::nbParameterEntries_t &nbEntries,Testing::ParameterKind ¶mKind) { nbEntries=0; - unsigned long offset,i; + unsigned long offset; - Testing::param_t *p; - uint32_t val; Testing::nbSamples_t len; struct offsetOrGen gen = this->getParameterDesc(id); diff --git a/Testing/FrameworkSource/Generators.cpp b/Testing/FrameworkSource/Generators.cpp index 6f86b26a..39c835a0 100644 --- a/Testing/FrameworkSource/Generators.cpp +++ b/Testing/FrameworkSource/Generators.cpp @@ -2,11 +2,10 @@ void generate1(Testing::param_t *result,Testing::param_t *data,Testing::nbParameterEntries_t &nbEntries) { - Testing::param_t *pa,*paStart,va; + Testing::param_t *pa,va; pa = data; int nba = *pa++; - paStart = pa; nbEntries = 0; for(int ia=0; ia < nba ; ia ++) { @@ -170,4 +169,4 @@ void generate4(Testing::param_t *result,Testing::param_t *data,Testing::nbParame } } -} \ No newline at end of file +} diff --git a/Testing/FrameworkSource/IORunner.cpp b/Testing/FrameworkSource/IORunner.cpp index bf05ab43..0ef94bf0 100644 --- a/Testing/FrameworkSource/IORunner.cpp +++ b/Testing/FrameworkSource/IORunner.cpp @@ -32,6 +32,7 @@ #include #include +#include #include "IORunner.h" #include "Error.h" #include "Timing.h" @@ -325,4 +326,4 @@ This overhead is removed from benchmarks in the Runner.. } -} \ No newline at end of file +} diff --git a/Testing/FrameworkSource/Pattern.cpp b/Testing/FrameworkSource/Pattern.cpp index 997b8649..758701f8 100644 --- a/Testing/FrameworkSource/Pattern.cpp +++ b/Testing/FrameworkSource/Pattern.cpp @@ -171,4 +171,4 @@ void dumpPattern(Testing::outputID_t id,Testing::nbSamples_t nbSamples,uint8_t* } -} \ No newline at end of file +} diff --git a/Testing/FrameworkSource/PatternMgr.cpp b/Testing/FrameworkSource/PatternMgr.cpp index 900dddeb..d9ea1c23 100644 --- a/Testing/FrameworkSource/PatternMgr.cpp +++ b/Testing/FrameworkSource/PatternMgr.cpp @@ -238,4 +238,4 @@ void PatternMgr::freeAll() m_mem->FreeMemory(); } -} \ No newline at end of file +} diff --git a/Testing/FrameworkSource/Semihosting.cpp b/Testing/FrameworkSource/Semihosting.cpp index 862353f7..5c5760ce 100644 --- a/Testing/FrameworkSource/Semihosting.cpp +++ b/Testing/FrameworkSource/Semihosting.cpp @@ -32,10 +32,12 @@ #include #include -#include "Semihosting.h" #include #include +#include #include "Generators.h" +#include "Semihosting.h" + namespace Client { @@ -175,9 +177,9 @@ namespace Client // Samples else { - int kind,nbInputSamples,nbOutputSamples,dimensions,len,sample; + int kind,nbInputSamples,nbOutputSamples,dimensions,sample; Testing::param_t *p,*current; - size_t length; + // Generator kind. Not yet used since there is only one kind of generator fscanf(this->infile,"%d\n",&kind); // Input data in config file @@ -1026,4 +1028,4 @@ namespace Client -} \ No newline at end of file +} diff --git a/Testing/FrameworkSource/Test.cpp b/Testing/FrameworkSource/Test.cpp index 4a4f5a23..41c80f85 100644 --- a/Testing/FrameworkSource/Test.cpp +++ b/Testing/FrameworkSource/Test.cpp @@ -47,9 +47,9 @@ namespace Client /* Client */ Suite::Suite(Testing::testID_t id): + TestContainer(id), m_tests(std::vector()), - m_testIds(std::vector()), - TestContainer(id) + m_testIds(std::vector()) { } @@ -74,8 +74,8 @@ namespace Client Group::Group(Testing::testID_t id): - m_groups(std::vector()), - TestContainer(id) + TestContainer(id), + m_groups(std::vector()) { } diff --git a/Testing/FrameworkSource/Timing.cpp b/Testing/FrameworkSource/Timing.cpp index abc73ec4..a2fbc437 100644 --- a/Testing/FrameworkSource/Timing.cpp +++ b/Testing/FrameworkSource/Timing.cpp @@ -153,5 +153,4 @@ Testing::cycles_t getCycles() return(value - startCycles); #endif - return(0); -} \ No newline at end of file +} diff --git a/Testing/Include/Benchmarks/BIQUADF32.h b/Testing/Include/Benchmarks/BIQUADF32.h index ae2a9262..8489f748 100755 --- a/Testing/Include/Benchmarks/BIQUADF32.h +++ b/Testing/Include/Benchmarks/BIQUADF32.h @@ -4,8 +4,8 @@ class BIQUADF32:public Client::Suite { public: BIQUADF32(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "BIQUADF32_decl.h" Client::Pattern samples; @@ -25,4 +25,4 @@ class BIQUADF32:public Client::Suite const float32_t *pSrc; float32_t *pDst; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/BIQUADF64.h b/Testing/Include/Benchmarks/BIQUADF64.h index 5f52b572..4b044d8c 100755 --- a/Testing/Include/Benchmarks/BIQUADF64.h +++ b/Testing/Include/Benchmarks/BIQUADF64.h @@ -4,8 +4,8 @@ class BIQUADF64:public Client::Suite { public: BIQUADF64(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "BIQUADF64_decl.h" Client::Pattern samples; @@ -22,4 +22,4 @@ class BIQUADF64:public Client::Suite const float64_t *pSrc; float64_t *pDst; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/BasicMathsBenchmarksF32.h b/Testing/Include/Benchmarks/BasicMathsBenchmarksF32.h index db406d40..b67565fc 100644 --- a/Testing/Include/Benchmarks/BasicMathsBenchmarksF32.h +++ b/Testing/Include/Benchmarks/BasicMathsBenchmarksF32.h @@ -4,8 +4,8 @@ class BasicMathsBenchmarksF32:public Client::Suite { public: BasicMathsBenchmarksF32(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "BasicMathsBenchmarksF32_decl.h" Client::Pattern input1; @@ -18,4 +18,4 @@ class BasicMathsBenchmarksF32:public Client::Suite float32_t *inp2; float32_t *outp; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/BasicMathsBenchmarksQ15.h b/Testing/Include/Benchmarks/BasicMathsBenchmarksQ15.h index 791a6085..b054ed8f 100755 --- a/Testing/Include/Benchmarks/BasicMathsBenchmarksQ15.h +++ b/Testing/Include/Benchmarks/BasicMathsBenchmarksQ15.h @@ -4,8 +4,8 @@ class BasicMathsBenchmarksQ15:public Client::Suite { public: BasicMathsBenchmarksQ15(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "BasicMathsBenchmarksQ15_decl.h" Client::Pattern input1; @@ -18,4 +18,4 @@ class BasicMathsBenchmarksQ15:public Client::Suite q15_t *inp2; q15_t *outp; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/BasicMathsBenchmarksQ31.h b/Testing/Include/Benchmarks/BasicMathsBenchmarksQ31.h index 738f800b..be3eec87 100755 --- a/Testing/Include/Benchmarks/BasicMathsBenchmarksQ31.h +++ b/Testing/Include/Benchmarks/BasicMathsBenchmarksQ31.h @@ -4,8 +4,8 @@ class BasicMathsBenchmarksQ31:public Client::Suite { public: BasicMathsBenchmarksQ31(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "BasicMathsBenchmarksQ31_decl.h" Client::Pattern input1; @@ -17,4 +17,4 @@ class BasicMathsBenchmarksQ31:public Client::Suite q31_t *inp1; q31_t *inp2; q31_t *outp; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/BasicMathsBenchmarksQ7.h b/Testing/Include/Benchmarks/BasicMathsBenchmarksQ7.h index 59c02923..72207f7d 100755 --- a/Testing/Include/Benchmarks/BasicMathsBenchmarksQ7.h +++ b/Testing/Include/Benchmarks/BasicMathsBenchmarksQ7.h @@ -4,8 +4,8 @@ class BasicMathsBenchmarksQ7:public Client::Suite { public: BasicMathsBenchmarksQ7(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "BasicMathsBenchmarksQ7_decl.h" Client::Pattern input1; @@ -17,4 +17,4 @@ class BasicMathsBenchmarksQ7:public Client::Suite q7_t *inp1; q7_t *inp2; q7_t *outp; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/BinaryF32.h b/Testing/Include/Benchmarks/BinaryF32.h index 83a767f9..be0b18df 100755 --- a/Testing/Include/Benchmarks/BinaryF32.h +++ b/Testing/Include/Benchmarks/BinaryF32.h @@ -4,8 +4,8 @@ class BinaryF32:public Client::Suite { public: BinaryF32(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "BinaryF32_decl.h" Client::Pattern input1; @@ -20,4 +20,4 @@ class BinaryF32:public Client::Suite arm_matrix_instance_f32 in2; arm_matrix_instance_f32 out; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/BinaryQ15.h b/Testing/Include/Benchmarks/BinaryQ15.h index e39e7673..a803253d 100755 --- a/Testing/Include/Benchmarks/BinaryQ15.h +++ b/Testing/Include/Benchmarks/BinaryQ15.h @@ -4,8 +4,8 @@ class BinaryQ15:public Client::Suite { public: BinaryQ15(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "BinaryQ15_decl.h" Client::Pattern input1; @@ -23,4 +23,4 @@ class BinaryQ15:public Client::Suite q15_t *pState; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/BinaryQ31.h b/Testing/Include/Benchmarks/BinaryQ31.h index a7c15013..e8fe7c89 100755 --- a/Testing/Include/Benchmarks/BinaryQ31.h +++ b/Testing/Include/Benchmarks/BinaryQ31.h @@ -4,8 +4,8 @@ class BinaryQ31:public Client::Suite { public: BinaryQ31(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "BinaryQ31_decl.h" Client::Pattern input1; @@ -20,4 +20,4 @@ class BinaryQ31:public Client::Suite arm_matrix_instance_q31 in2; arm_matrix_instance_q31 out; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/ComplexMathsBenchmarksF32.h b/Testing/Include/Benchmarks/ComplexMathsBenchmarksF32.h index a408b0cc..433b42ab 100755 --- a/Testing/Include/Benchmarks/ComplexMathsBenchmarksF32.h +++ b/Testing/Include/Benchmarks/ComplexMathsBenchmarksF32.h @@ -4,8 +4,8 @@ class ComplexMathsBenchmarksF32:public Client::Suite { public: ComplexMathsBenchmarksF32(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "ComplexMathsBenchmarksF32_decl.h" Client::Pattern input1; @@ -21,4 +21,4 @@ class ComplexMathsBenchmarksF32:public Client::Suite const float32_t *inp3; float32_t *outp; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/ComplexMathsBenchmarksQ15.h b/Testing/Include/Benchmarks/ComplexMathsBenchmarksQ15.h index 235cae06..00700d07 100755 --- a/Testing/Include/Benchmarks/ComplexMathsBenchmarksQ15.h +++ b/Testing/Include/Benchmarks/ComplexMathsBenchmarksQ15.h @@ -4,8 +4,8 @@ class ComplexMathsBenchmarksQ15:public Client::Suite { public: ComplexMathsBenchmarksQ15(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "ComplexMathsBenchmarksQ15_decl.h" Client::Pattern input1; @@ -21,4 +21,4 @@ class ComplexMathsBenchmarksQ15:public Client::Suite const q15_t *inp3; q15_t *outp; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/ComplexMathsBenchmarksQ31.h b/Testing/Include/Benchmarks/ComplexMathsBenchmarksQ31.h index ae972262..b44f3899 100755 --- a/Testing/Include/Benchmarks/ComplexMathsBenchmarksQ31.h +++ b/Testing/Include/Benchmarks/ComplexMathsBenchmarksQ31.h @@ -4,8 +4,8 @@ class ComplexMathsBenchmarksQ31:public Client::Suite { public: ComplexMathsBenchmarksQ31(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "ComplexMathsBenchmarksQ31_decl.h" Client::Pattern input1; @@ -21,4 +21,4 @@ class ComplexMathsBenchmarksQ31:public Client::Suite const q31_t *inp3; q31_t *outp; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/ControllerF32.h b/Testing/Include/Benchmarks/ControllerF32.h index 8d8f5fae..8adcbd2e 100755 --- a/Testing/Include/Benchmarks/ControllerF32.h +++ b/Testing/Include/Benchmarks/ControllerF32.h @@ -4,8 +4,8 @@ class ControllerF32:public Client::Suite { public: ControllerF32(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "ControllerF32_decl.h" Client::Pattern samples; @@ -19,4 +19,4 @@ class ControllerF32:public Client::Suite float32_t *pDst; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/ControllerQ15.h b/Testing/Include/Benchmarks/ControllerQ15.h index 8b17ff33..6f7537ec 100755 --- a/Testing/Include/Benchmarks/ControllerQ15.h +++ b/Testing/Include/Benchmarks/ControllerQ15.h @@ -4,8 +4,8 @@ class ControllerQ15:public Client::Suite { public: ControllerQ15(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "ControllerQ15_decl.h" Client::Pattern samples; @@ -19,4 +19,4 @@ class ControllerQ15:public Client::Suite q15_t *pDst; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/ControllerQ31.h b/Testing/Include/Benchmarks/ControllerQ31.h index fd47522d..f4a55cb0 100755 --- a/Testing/Include/Benchmarks/ControllerQ31.h +++ b/Testing/Include/Benchmarks/ControllerQ31.h @@ -4,8 +4,8 @@ class ControllerQ31:public Client::Suite { public: ControllerQ31(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "ControllerQ31_decl.h" Client::Pattern samples; @@ -19,4 +19,4 @@ class ControllerQ31:public Client::Suite q31_t *pDst; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/DECIMF32.h b/Testing/Include/Benchmarks/DECIMF32.h index 0fae16f3..acd0d0b5 100755 --- a/Testing/Include/Benchmarks/DECIMF32.h +++ b/Testing/Include/Benchmarks/DECIMF32.h @@ -4,8 +4,8 @@ class DECIMF32:public Client::Suite { public: DECIMF32(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "DECIMF32_decl.h" Client::Pattern coefs; @@ -25,4 +25,4 @@ class DECIMF32:public Client::Suite const float32_t *pSrc; float32_t *pDst; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/DECIMQ15.h b/Testing/Include/Benchmarks/DECIMQ15.h index 8d05f0b0..c4697acc 100755 --- a/Testing/Include/Benchmarks/DECIMQ15.h +++ b/Testing/Include/Benchmarks/DECIMQ15.h @@ -4,8 +4,8 @@ class DECIMQ15:public Client::Suite { public: DECIMQ15(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "DECIMQ15_decl.h" Client::Pattern coefs; @@ -25,4 +25,4 @@ class DECIMQ15:public Client::Suite const q15_t *pSrc; q15_t *pDst; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/DECIMQ31.h b/Testing/Include/Benchmarks/DECIMQ31.h index c4f807ef..f122a30c 100755 --- a/Testing/Include/Benchmarks/DECIMQ31.h +++ b/Testing/Include/Benchmarks/DECIMQ31.h @@ -4,8 +4,8 @@ class DECIMQ31:public Client::Suite { public: DECIMQ31(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "DECIMQ31_decl.h" Client::Pattern coefs; @@ -25,4 +25,4 @@ class DECIMQ31:public Client::Suite const q31_t *pSrc; q31_t *pDst; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/FIRF32.h b/Testing/Include/Benchmarks/FIRF32.h index 2e10f5de..9be0955f 100755 --- a/Testing/Include/Benchmarks/FIRF32.h +++ b/Testing/Include/Benchmarks/FIRF32.h @@ -4,8 +4,8 @@ class FIRF32:public Client::Suite { public: FIRF32(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "FIRF32_decl.h" Client::Pattern coefs; @@ -29,4 +29,4 @@ class FIRF32:public Client::Suite const float32_t *pRef; float32_t *pErr; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/FIRQ15.h b/Testing/Include/Benchmarks/FIRQ15.h index 4e6f8d1a..f5b0ad54 100755 --- a/Testing/Include/Benchmarks/FIRQ15.h +++ b/Testing/Include/Benchmarks/FIRQ15.h @@ -4,8 +4,8 @@ class FIRQ15:public Client::Suite { public: FIRQ15(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "FIRQ15_decl.h" Client::Pattern coefs; @@ -29,4 +29,4 @@ class FIRQ15:public Client::Suite const q15_t *pRef; q15_t *pErr; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/FIRQ31.h b/Testing/Include/Benchmarks/FIRQ31.h index 7da188e8..943c7f56 100755 --- a/Testing/Include/Benchmarks/FIRQ31.h +++ b/Testing/Include/Benchmarks/FIRQ31.h @@ -4,8 +4,8 @@ class FIRQ31:public Client::Suite { public: FIRQ31(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "FIRQ31_decl.h" Client::Pattern coefs; @@ -28,4 +28,4 @@ class FIRQ31:public Client::Suite q31_t *pDst; const q31_t *pRef; q31_t *pErr; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/FastMathF32.h b/Testing/Include/Benchmarks/FastMathF32.h index 8a237c91..d1064fd2 100755 --- a/Testing/Include/Benchmarks/FastMathF32.h +++ b/Testing/Include/Benchmarks/FastMathF32.h @@ -4,8 +4,8 @@ class FastMathF32:public Client::Suite { public: FastMathF32(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "FastMathF32_decl.h" Client::Pattern samples; @@ -18,4 +18,4 @@ class FastMathF32:public Client::Suite float32_t *pDst; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/FastMathQ15.h b/Testing/Include/Benchmarks/FastMathQ15.h index 649f160b..631fba44 100755 --- a/Testing/Include/Benchmarks/FastMathQ15.h +++ b/Testing/Include/Benchmarks/FastMathQ15.h @@ -4,8 +4,8 @@ class FastMathQ15:public Client::Suite { public: FastMathQ15(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "FastMathQ15_decl.h" Client::Pattern samples; @@ -18,4 +18,4 @@ class FastMathQ15:public Client::Suite q15_t *pDst; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/FastMathQ31.h b/Testing/Include/Benchmarks/FastMathQ31.h index 02370381..854ae74d 100755 --- a/Testing/Include/Benchmarks/FastMathQ31.h +++ b/Testing/Include/Benchmarks/FastMathQ31.h @@ -4,8 +4,8 @@ class FastMathQ31:public Client::Suite { public: FastMathQ31(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "FastMathQ31_decl.h" Client::Pattern samples; @@ -18,4 +18,4 @@ class FastMathQ31:public Client::Suite q31_t *pDst; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/FullyConnectedBench.h b/Testing/Include/Benchmarks/FullyConnectedBench.h index 25f3621b..91847004 100644 --- a/Testing/Include/Benchmarks/FullyConnectedBench.h +++ b/Testing/Include/Benchmarks/FullyConnectedBench.h @@ -4,8 +4,8 @@ class FullyConnectedBench:public Client::Suite { public: FullyConnectedBench(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "FullyConnectedBench_decl.h" @@ -24,4 +24,4 @@ class FullyConnectedBench:public Client::Suite q7_t *outp; q7_t *refp; q15_t *tempp; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/MISCF32.h b/Testing/Include/Benchmarks/MISCF32.h index 558cb5a8..b2a5b399 100755 --- a/Testing/Include/Benchmarks/MISCF32.h +++ b/Testing/Include/Benchmarks/MISCF32.h @@ -4,8 +4,8 @@ class MISCF32:public Client::Suite { public: MISCF32(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "MISCF32_decl.h" Client::Pattern input1; @@ -19,4 +19,4 @@ class MISCF32:public Client::Suite const float32_t *inp2; float32_t *outp; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/MISCQ15.h b/Testing/Include/Benchmarks/MISCQ15.h index 3e9d57a3..0cb92c73 100755 --- a/Testing/Include/Benchmarks/MISCQ15.h +++ b/Testing/Include/Benchmarks/MISCQ15.h @@ -4,8 +4,8 @@ class MISCQ15:public Client::Suite { public: MISCQ15(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "MISCQ15_decl.h" Client::Pattern input1; @@ -18,4 +18,4 @@ class MISCQ15:public Client::Suite const q15_t *inp1; const q15_t *inp2; q15_t *outp; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/MISCQ31.h b/Testing/Include/Benchmarks/MISCQ31.h index 1fc7fb05..ed595cbc 100755 --- a/Testing/Include/Benchmarks/MISCQ31.h +++ b/Testing/Include/Benchmarks/MISCQ31.h @@ -4,8 +4,8 @@ class MISCQ31:public Client::Suite { public: MISCQ31(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "MISCQ31_decl.h" Client::Pattern input1; @@ -18,4 +18,4 @@ class MISCQ31:public Client::Suite const q31_t *inp1; const q31_t *inp2; q31_t *outp; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/MISCQ7.h b/Testing/Include/Benchmarks/MISCQ7.h index b0cad562..3c9060d2 100755 --- a/Testing/Include/Benchmarks/MISCQ7.h +++ b/Testing/Include/Benchmarks/MISCQ7.h @@ -4,8 +4,8 @@ class MISCQ7:public Client::Suite { public: MISCQ7(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "MISCQ7_decl.h" Client::Pattern input1; @@ -18,4 +18,4 @@ class MISCQ7:public Client::Suite const q7_t *inp1; const q7_t *inp2; q7_t *outp; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/PoolingBench.h b/Testing/Include/Benchmarks/PoolingBench.h index 48fb3925..ab15da0f 100755 --- a/Testing/Include/Benchmarks/PoolingBench.h +++ b/Testing/Include/Benchmarks/PoolingBench.h @@ -4,8 +4,8 @@ class PoolingBench:public Client::Suite { public: PoolingBench(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& paramsArgs,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& paramsArgs,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "PoolingBench_decl.h" @@ -38,4 +38,4 @@ class PoolingBench:public Client::Suite q7_t *outp; q15_t *tempp; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/SupportBarF32.h b/Testing/Include/Benchmarks/SupportBarF32.h index db54d7aa..370a0df2 100755 --- a/Testing/Include/Benchmarks/SupportBarF32.h +++ b/Testing/Include/Benchmarks/SupportBarF32.h @@ -4,8 +4,8 @@ class SupportBarF32:public Client::Suite { public: SupportBarF32(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "SupportBarF32_decl.h" Client::Pattern input; @@ -22,4 +22,4 @@ class SupportBarF32:public Client::Suite float32_t *outp; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/SupportF32.h b/Testing/Include/Benchmarks/SupportF32.h index d8fec243..14517db5 100755 --- a/Testing/Include/Benchmarks/SupportF32.h +++ b/Testing/Include/Benchmarks/SupportF32.h @@ -4,8 +4,8 @@ class SupportF32:public Client::Suite { public: SupportF32(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "SupportF32_decl.h" Client::Pattern samples; @@ -27,4 +27,4 @@ class SupportF32:public Client::Suite float32_t *pDst; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/SupportQ15.h b/Testing/Include/Benchmarks/SupportQ15.h index 32248fb5..be82fd2e 100755 --- a/Testing/Include/Benchmarks/SupportQ15.h +++ b/Testing/Include/Benchmarks/SupportQ15.h @@ -4,8 +4,8 @@ class SupportQ15:public Client::Suite { public: SupportQ15(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "SupportQ15_decl.h" Client::Pattern samples; @@ -24,4 +24,4 @@ class SupportQ15:public Client::Suite q15_t *pDst; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/SupportQ31.h b/Testing/Include/Benchmarks/SupportQ31.h index 42c94f10..b72513a1 100755 --- a/Testing/Include/Benchmarks/SupportQ31.h +++ b/Testing/Include/Benchmarks/SupportQ31.h @@ -4,8 +4,8 @@ class SupportQ31:public Client::Suite { public: SupportQ31(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "SupportQ31_decl.h" Client::Pattern samples; @@ -22,4 +22,4 @@ class SupportQ31:public Client::Suite q7_t *pSrcQ7; q31_t *pDst; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/SupportQ7.h b/Testing/Include/Benchmarks/SupportQ7.h index 880c2e0d..c0f1156c 100755 --- a/Testing/Include/Benchmarks/SupportQ7.h +++ b/Testing/Include/Benchmarks/SupportQ7.h @@ -4,8 +4,8 @@ class SupportQ7:public Client::Suite { public: SupportQ7(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "SupportQ7_decl.h" Client::Pattern samples; @@ -25,4 +25,4 @@ class SupportQ7:public Client::Suite q7_t *pDst; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/TransformF32.h b/Testing/Include/Benchmarks/TransformF32.h index ce2906aa..d3478c9b 100755 --- a/Testing/Include/Benchmarks/TransformF32.h +++ b/Testing/Include/Benchmarks/TransformF32.h @@ -4,8 +4,8 @@ class TransformF32:public Client::Suite { public: TransformF32(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "TransformF32_decl.h" Client::Pattern samples; @@ -29,4 +29,4 @@ class TransformF32:public Client::Suite arm_cfft_radix4_instance_f32 cfftRadix4Instance; arm_cfft_radix2_instance_f32 cfftRadix2Instance; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/TransformQ15.h b/Testing/Include/Benchmarks/TransformQ15.h index cff7ff99..9736a708 100755 --- a/Testing/Include/Benchmarks/TransformQ15.h +++ b/Testing/Include/Benchmarks/TransformQ15.h @@ -4,8 +4,8 @@ class TransformQ15:public Client::Suite { public: TransformQ15(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "TransformQ15_decl.h" Client::Pattern samples; @@ -28,4 +28,4 @@ class TransformQ15:public Client::Suite arm_cfft_radix4_instance_q15 cfftRadix4Instance; arm_cfft_radix2_instance_q15 cfftRadix2Instance; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/TransformQ31.h b/Testing/Include/Benchmarks/TransformQ31.h index 71094851..2abfc1de 100755 --- a/Testing/Include/Benchmarks/TransformQ31.h +++ b/Testing/Include/Benchmarks/TransformQ31.h @@ -4,8 +4,8 @@ class TransformQ31:public Client::Suite { public: TransformQ31(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "TransformQ31_decl.h" Client::Pattern samples; @@ -28,4 +28,4 @@ class TransformQ31:public Client::Suite arm_cfft_radix4_instance_q31 cfftRadix4Instance; arm_cfft_radix2_instance_q31 cfftRadix2Instance; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/UnaryF32.h b/Testing/Include/Benchmarks/UnaryF32.h index 3bfec3ff..976a666c 100755 --- a/Testing/Include/Benchmarks/UnaryF32.h +++ b/Testing/Include/Benchmarks/UnaryF32.h @@ -4,8 +4,8 @@ class UnaryF32:public Client::Suite { public: UnaryF32(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "UnaryF32_decl.h" Client::Pattern input1; @@ -16,4 +16,4 @@ class UnaryF32:public Client::Suite arm_matrix_instance_f32 in1; arm_matrix_instance_f32 out; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/UnaryF64.h b/Testing/Include/Benchmarks/UnaryF64.h index 432a1993..a047a660 100755 --- a/Testing/Include/Benchmarks/UnaryF64.h +++ b/Testing/Include/Benchmarks/UnaryF64.h @@ -4,8 +4,8 @@ class UnaryF64:public Client::Suite { public: UnaryF64(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "UnaryF64_decl.h" Client::Pattern input1; @@ -16,4 +16,4 @@ class UnaryF64:public Client::Suite arm_matrix_instance_f64 in1; arm_matrix_instance_f64 out; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/UnaryQ15.h b/Testing/Include/Benchmarks/UnaryQ15.h index 072925ed..9e7a8bad 100755 --- a/Testing/Include/Benchmarks/UnaryQ15.h +++ b/Testing/Include/Benchmarks/UnaryQ15.h @@ -4,8 +4,8 @@ class UnaryQ15:public Client::Suite { public: UnaryQ15(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "UnaryQ15_decl.h" Client::Pattern input1; @@ -16,4 +16,4 @@ class UnaryQ15:public Client::Suite arm_matrix_instance_q15 in1; arm_matrix_instance_q15 out; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Benchmarks/UnaryQ31.h b/Testing/Include/Benchmarks/UnaryQ31.h index 5de71781..89683b4f 100755 --- a/Testing/Include/Benchmarks/UnaryQ31.h +++ b/Testing/Include/Benchmarks/UnaryQ31.h @@ -4,8 +4,8 @@ class UnaryQ31:public Client::Suite { public: UnaryQ31(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "UnaryQ31_decl.h" Client::Pattern input1; @@ -16,4 +16,4 @@ class UnaryQ31:public Client::Suite arm_matrix_instance_q31 in1; arm_matrix_instance_q31 out; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Tests/BasicTestsF32.h b/Testing/Include/Tests/BasicTestsF32.h index a277c99a..944a5c39 100644 --- a/Testing/Include/Tests/BasicTestsF32.h +++ b/Testing/Include/Tests/BasicTestsF32.h @@ -4,8 +4,8 @@ class BasicTestsF32:public Client::Suite { public: BasicTestsF32(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "BasicTestsF32_decl.h" @@ -14,4 +14,4 @@ class BasicTestsF32:public Client::Suite Client::LocalPattern output; // Reference patterns are not loaded when we are in dump mode Client::RefPattern ref; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Tests/BayesF32.h b/Testing/Include/Tests/BayesF32.h index 0aa75c49..892538fd 100755 --- a/Testing/Include/Tests/BayesF32.h +++ b/Testing/Include/Tests/BayesF32.h @@ -4,8 +4,8 @@ class BayesF32:public Client::Suite { public: BayesF32(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& paramsArgs,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& paramsArgs,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "BayesF32_decl.h" @@ -28,4 +28,4 @@ class BayesF32:public Client::Suite arm_gaussian_naive_bayes_instance_f32 bayes; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Tests/DistanceTestsF32.h b/Testing/Include/Tests/DistanceTestsF32.h index b9cf4e1a..fdddaed7 100755 --- a/Testing/Include/Tests/DistanceTestsF32.h +++ b/Testing/Include/Tests/DistanceTestsF32.h @@ -4,8 +4,8 @@ class DistanceTestsF32:public Client::Suite { public: DistanceTestsF32(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& paramsArgs,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& paramsArgs,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "DistanceTestsF32_decl.h" @@ -24,4 +24,4 @@ class DistanceTestsF32:public Client::Suite int nbPatterns; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Tests/DistanceTestsU32.h b/Testing/Include/Tests/DistanceTestsU32.h index c0e92aba..e14f16e9 100755 --- a/Testing/Include/Tests/DistanceTestsU32.h +++ b/Testing/Include/Tests/DistanceTestsU32.h @@ -4,8 +4,8 @@ class DistanceTestsU32:public Client::Suite { public: DistanceTestsU32(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& paramsArgs,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& paramsArgs,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "DistanceTestsU32_decl.h" @@ -22,4 +22,4 @@ class DistanceTestsU32:public Client::Suite int bitVecDim; int nbPatterns; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Tests/FullyConnected.h b/Testing/Include/Tests/FullyConnected.h index 8e4ddff3..8496cb8c 100644 --- a/Testing/Include/Tests/FullyConnected.h +++ b/Testing/Include/Tests/FullyConnected.h @@ -4,8 +4,8 @@ class FullyConnected:public Client::Suite { public: FullyConnected(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "FullyConnected_decl.h" @@ -33,4 +33,4 @@ class FullyConnected:public Client::Suite - }; \ No newline at end of file + }; diff --git a/Testing/Include/Tests/NNSupport.h b/Testing/Include/Tests/NNSupport.h index 6f90b6b2..648a34e1 100755 --- a/Testing/Include/Tests/NNSupport.h +++ b/Testing/Include/Tests/NNSupport.h @@ -4,11 +4,11 @@ class NNSupport:public Client::Suite { public: NNSupport(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& paramsArgs,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& paramsArgs,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "NNSupport_decl.h" - }; \ No newline at end of file + }; diff --git a/Testing/Include/Tests/Pooling.h b/Testing/Include/Tests/Pooling.h index c189b8ad..b9d3a268 100755 --- a/Testing/Include/Tests/Pooling.h +++ b/Testing/Include/Tests/Pooling.h @@ -4,8 +4,8 @@ class Pooling:public Client::Suite { public: Pooling(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& paramsArgs,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& paramsArgs,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "Pooling_decl.h" @@ -32,4 +32,4 @@ class Pooling:public Client::Suite int ACT_MIN; int ACT_MAX; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Tests/SVMF32.h b/Testing/Include/Tests/SVMF32.h index 2912495d..6bb96e17 100755 --- a/Testing/Include/Tests/SVMF32.h +++ b/Testing/Include/Tests/SVMF32.h @@ -4,8 +4,8 @@ class SVMF32:public Client::Suite { public: SVMF32(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "SVMF32_decl.h" Client::Pattern samples; @@ -21,7 +21,7 @@ class SVMF32:public Client::Suite arm_svm_sigmoid_instance_f32 sigmoid; int vecDim,nbSupportVectors,nbTestSamples,degree; - int classes[2]={0,0}; + int32_t classes[2]={0,0}; float32_t intercept; const float32_t *supportVectors; const float32_t *dualCoefs; @@ -35,4 +35,4 @@ class SVMF32:public Client::Suite } kind; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Tests/Softmax.h b/Testing/Include/Tests/Softmax.h index 401e9403..2e153570 100755 --- a/Testing/Include/Tests/Softmax.h +++ b/Testing/Include/Tests/Softmax.h @@ -4,8 +4,8 @@ class Softmax:public Client::Suite { public: Softmax(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& paramsArgs,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& paramsArgs,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "Softmax_decl.h" @@ -22,4 +22,4 @@ class Softmax:public Client::Suite int vecDim; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Tests/StatsTestsF32.h b/Testing/Include/Tests/StatsTestsF32.h index ad731929..c35bb24c 100755 --- a/Testing/Include/Tests/StatsTestsF32.h +++ b/Testing/Include/Tests/StatsTestsF32.h @@ -4,8 +4,8 @@ class StatsTestsF32:public Client::Suite { public: StatsTestsF32(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& paramsArgs,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& paramsArgs,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "StatsTestsF32_decl.h" @@ -24,4 +24,4 @@ class StatsTestsF32:public Client::Suite - }; \ No newline at end of file + }; diff --git a/Testing/Include/Tests/SupportBarTestsF32.h b/Testing/Include/Tests/SupportBarTestsF32.h index d137f154..8532276a 100755 --- a/Testing/Include/Tests/SupportBarTestsF32.h +++ b/Testing/Include/Tests/SupportBarTestsF32.h @@ -4,8 +4,8 @@ class SupportBarTestsF32:public Client::Suite { public: SupportBarTestsF32(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& params,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "SupportBarTestsF32_decl.h" Client::Pattern input; @@ -19,4 +19,4 @@ class SupportBarTestsF32:public Client::Suite int nbVecs; int vecDim; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Tests/SupportTestsF32.h b/Testing/Include/Tests/SupportTestsF32.h index f82ea91c..a3ecc28d 100755 --- a/Testing/Include/Tests/SupportTestsF32.h +++ b/Testing/Include/Tests/SupportTestsF32.h @@ -4,8 +4,8 @@ class SupportTestsF32:public Client::Suite { public: SupportTestsF32(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& paramsArgs,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& paramsArgs,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "SupportTestsF32_decl.h" @@ -19,4 +19,4 @@ class SupportTestsF32:public Client::Suite int nbSamples; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Tests/TransformF32.h b/Testing/Include/Tests/TransformF32.h index e3fa47f7..78271898 100755 --- a/Testing/Include/Tests/TransformF32.h +++ b/Testing/Include/Tests/TransformF32.h @@ -4,8 +4,8 @@ class TransformF32:public Client::Suite { public: TransformF32(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& paramsArgs,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& paramsArgs,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "TransformF32_decl.h" @@ -18,4 +18,4 @@ class TransformF32:public Client::Suite int ifft; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Tests/TransformQ15.h b/Testing/Include/Tests/TransformQ15.h index 99c79839..ac65c7c8 100755 --- a/Testing/Include/Tests/TransformQ15.h +++ b/Testing/Include/Tests/TransformQ15.h @@ -4,8 +4,8 @@ class TransformQ15:public Client::Suite { public: TransformQ15(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& paramsArgs,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& paramsArgs,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "TransformQ15_decl.h" @@ -28,4 +28,4 @@ class TransformQ15:public Client::Suite */ int scaling; - }; \ No newline at end of file + }; diff --git a/Testing/Include/Tests/TransformQ31.h b/Testing/Include/Tests/TransformQ31.h index 7305058a..9a44f20e 100755 --- a/Testing/Include/Tests/TransformQ31.h +++ b/Testing/Include/Tests/TransformQ31.h @@ -4,8 +4,8 @@ class TransformQ31:public Client::Suite { public: TransformQ31(Testing::testID_t id); - void setUp(Testing::testID_t,std::vector& paramsArgs,Client::PatternMgr *mgr); - void tearDown(Testing::testID_t,Client::PatternMgr *mgr); + virtual void setUp(Testing::testID_t,std::vector& paramsArgs,Client::PatternMgr *mgr); + virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); private: #include "TransformQ31_decl.h" @@ -28,4 +28,4 @@ class TransformQ31:public Client::Suite */ int scaling; - }; \ No newline at end of file + }; diff --git a/Testing/Source/Benchmarks/TransformF32.cpp b/Testing/Source/Benchmarks/TransformF32.cpp index 1547a401..6f817b0b 100755 --- a/Testing/Source/Benchmarks/TransformF32.cpp +++ b/Testing/Source/Benchmarks/TransformF32.cpp @@ -7,31 +7,22 @@ const arm_cfft_instance_f32 *arm_cfft_get_instance_f32(uint16_t fftLen) switch (fftLen) { case 16: return(&arm_cfft_sR_f32_len16); - break; case 32: return(&arm_cfft_sR_f32_len32); - break; case 64: return(&arm_cfft_sR_f32_len64); - break; case 128: return(&arm_cfft_sR_f32_len128); - break; case 256: return(&arm_cfft_sR_f32_len256); - break; case 512: return(&arm_cfft_sR_f32_len512); - break; case 1024: return(&arm_cfft_sR_f32_len1024); - break; case 2048: return(&arm_cfft_sR_f32_len2048); - break; case 4096: return(&arm_cfft_sR_f32_len4096); - break; } return(NULL); } diff --git a/Testing/Source/Tests/FullyConnected.cpp b/Testing/Source/Tests/FullyConnected.cpp index 380d2045..70593c46 100644 --- a/Testing/Source/Tests/FullyConnected.cpp +++ b/Testing/Source/Tests/FullyConnected.cpp @@ -2,6 +2,7 @@ #include "Error.h" #include "arm_nnfunctions.h" #include "Test.h" +#include "stdio.h" #include diff --git a/Testing/Source/Tests/StatsTestsF32.cpp b/Testing/Source/Tests/StatsTestsF32.cpp index 0b1c7d25..d848be77 100755 --- a/Testing/Source/Tests/StatsTestsF32.cpp +++ b/Testing/Source/Tests/StatsTestsF32.cpp @@ -12,7 +12,6 @@ float32_t *refp = ref.ptr(); float32_t *outp = output.ptr(); - float32_t *result; for(int i=0;i < this->nbPatterns; i++) { @@ -30,7 +29,6 @@ float32_t *refp = ref.ptr(); float32_t *outp = output.ptr(); - float32_t *result; for(int i=0;i < this->nbPatterns; i++) { @@ -50,7 +48,6 @@ float32_t *refp = ref.ptr(); float32_t *outp = output.ptr(); - float32_t *result; for(int i=0;i < this->nbPatterns; i++) { @@ -71,7 +68,6 @@ float32_t *refp = ref.ptr(); float32_t *outp = output.ptr(); float32_t *tmpp = tmp.ptr(); - float32_t *result; for(int i=0;i < this->nbPatterns; i++) { diff --git a/Testing/TestScripts/CodeGen.py b/Testing/TestScripts/CodeGen.py index 57c98145..487dc12e 100644 --- a/Testing/TestScripts/CodeGen.py +++ b/Testing/TestScripts/CodeGen.py @@ -12,7 +12,7 @@ groupCode="""class %s : public Client::Group %s } private: - %s; + %s }; """ diff --git a/Testing/main.cpp b/Testing/main.cpp index ece73211..d9de3636 100644 --- a/Testing/main.cpp +++ b/Testing/main.cpp @@ -3,4 +3,4 @@ extern int testmain(); int main() { return(testmain()); -} \ No newline at end of file +} diff --git a/Toolchain/AC5.cmake b/Toolchain/AC5.cmake new file mode 100755 index 00000000..af7211bf --- /dev/null +++ b/Toolchain/AC5.cmake @@ -0,0 +1,95 @@ +#include(CMakePrintHelpers) +include(AddFileDependencies) + +function(compilerVersion) + execute_process(COMMAND "${CMAKE_C_COMPILER}" --version_number + OUTPUT_VARIABLE CVERSION + ERROR_VARIABLE CVERSION + ) + SET(COMPILERVERSION ${CVERSION} PARENT_SCOPE) + #cmake_print_variables(CVERSION) + #cmake_print_variables(CMAKE_C_COMPILER) + #MESSAGE( STATUS "CMD_OUTPUT:" ${CVERSION}) +endfunction() + +function(compilerSpecificCompileOptions PROJECTNAME ROOT) + #cmake_print_properties(TARGETS ${PROJECTNAME} PROPERTIES DISABLEOPTIMIZATION) + get_target_property(DISABLEOPTIM ${PROJECTNAME} DISABLEOPTIMIZATION) + if ((OPTIMIZED) AND (NOT DISABLEOPTIM)) + #cmake_print_variables(DISABLEOPTIM) + target_compile_options(${PROJECTNAME} PRIVATE "-O2") + endif() + + if (FASTMATHCOMPUTATIONS) + target_compile_options(${PROJECTNAME} PUBLIC "-ffast-math") + endif() + + #if (HARDFP) + # target_compile_options(${PROJECTNAME} PUBLIC "-mfloat-abi=hard") + #endif() + + #if (LITTLEENDIAN) + # target_compile_options(${PROJECTNAME} PUBLIC "-mlittle-endian") + #endif() + + if (ARM_CPU STREQUAL "Cortex-M7.fp.dp" ) + target_compile_options(${PROJECTNAME} PUBLIC "--fpu=FPv5_D16") + target_compile_options(${PROJECTNAME} PUBLIC "--thumb") + endif() + + + if(EXPERIMENTAL) + experimentalCompilerSpecificCompileOptions(${PROJECTNAME} ${ROOT}) + endif() +endfunction() + + +function(toolchainSpecificLinkForCortexM PROJECTNAME ROOT CORE PLATFORMFOLDER HASCSTARTUP) + # A specific library is created for ASM file + # since we do not want standard compile flags (for C) to be applied to + # ASM files. + if (HASCSTARTUP) + target_sources(${PROJECTNAME} PRIVATE ${PLATFORMFOLDER}/${CORE}/Startup/AC5/startup_${CORE}.c) + else() + target_sources(${PROJECTNAME} PRIVATE ${PLATFORMFOLDER}/${CORE}/Startup/AC5/startup_${CORE}.s) + endif() + target_include_directories(${PROJECTNAME} PRIVATE ${PLATFORMFOLDER}/${CORE}/LinkScripts/AC5) + + set(SCATTERFILE "${PLATFORMFOLDER}/${CORE}/LinkScripts/AC5/lnk.sct") + + set_target_properties(${PROJECTNAME} PROPERTIES LINK_DEPENDS "${SCATTERFILE};${PLATFORMFOLDER}/${CORE}/LinkScripts/AC5/mem_${CORE}.h") + + #target_link_options(${PROJECTNAME} PRIVATE "--info=sizes") + target_link_options(${PROJECTNAME} PRIVATE "--entry=Reset_Handler;--scatter=${SCATTERFILE}") + +endfunction() + +function(toolchainSpecificLinkForCortexA PROJECTNAME ROOT CORE PLATFORMFOLDER) + target_sources(${PROJECTNAME} PRIVATE ${PLATFORMFOLDER}/${CORE}/Startup/AC5/startup_${CORE}.c) + + + # RTE Components.h + target_include_directories(${PROJECTNAME} PRIVATE ${ROOT}/CMSIS/DSP/Testing) + + set(SCATTERFILE "${PLATFORMFOLDER}/${CORE}/LinkScripts/AC5/lnk.sct") + + set_target_properties(${PROJECTNAME} PROPERTIES LINK_DEPENDS "${SCATTERFILE};${PLATFORMFOLDER}/${CORE}/LinkScripts/AC5/mem_${CORE}.h") + + target_include_directories(${PROJECTNAME} PRIVATE ${PLATFORMFOLDER}/${CORE}/LinkScripts/AC5) + + #target_link_options(${PROJECTNAME} PRIVATE "--info=sizes") + target_link_options(${PROJECTNAME} PRIVATE "--entry=Vectors;--scatter=${SCATTERFILE}") + +endfunction() + +function(compilerSpecificPlatformConfigLibForM PROJECTNAME ROOT) +endfunction() + +function(compilerSpecificPlatformConfigLibForA PROJECTNAME ROOT) +endfunction() + +function(compilerSpecificPlatformConfigAppForM PROJECTNAME ROOT) +endfunction() + +function(compilerSpecificPlatformConfigAppForA PROJECTNAME ROOT) +endfunction() \ No newline at end of file diff --git a/Toolchain/GCC.cmake b/Toolchain/GCC.cmake index 6efee1a9..b495c9d7 100644 --- a/Toolchain/GCC.cmake +++ b/Toolchain/GCC.cmake @@ -98,6 +98,7 @@ function(toolchainSpecificLinkForCortexM PROJECTNAME ROOT CORE PLATFORMFOLDER H target_include_directories(${PROJECTNAME} PRIVATE ${PLATFORMFOLDER}/${CORE}/LinkScripts/GCC) + file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/tempLink) set(SCATTERFILE ${CMAKE_CURRENT_BINARY_DIR}/tempLink/lnk.ld) preprocessScatter(${CORE} ${PLATFORMFOLDER} ${SCATTERFILE}) diff --git a/Toolchain/Tools.cmake b/Toolchain/Tools.cmake index 2b3163e3..fb31858b 100644 --- a/Toolchain/Tools.cmake +++ b/Toolchain/Tools.cmake @@ -1,8 +1,13 @@ SET(COMPILERVERSION "") + if (ARMAC6) include(Toolchain/AC6) endif() +if (ARMAC5) + include(Toolchain/AC5) +endif() + if (GCC) include(Toolchain/GCC) endif() diff --git a/armac5.cmake b/armac5.cmake new file mode 100755 index 00000000..3fd40b92 --- /dev/null +++ b/armac5.cmake @@ -0,0 +1,68 @@ +# Setting Linux is forcing th extension to be .o instead of .obj when building on WIndows. +# It is important because armlink is failing when files have .obj extensions (error with +# scatter file section not found) +SET(CMAKE_SYSTEM_NAME Linux) +SET(CMAKE_SYSTEM_PROCESSOR arm) + + + +#SET(tools "C:/PROGRA~1/ARM/DEVELO~1.0/sw/ARMCOM~1.12") + +find_program(CMAKE_C_COMPILER NAMES armcc armcc.exe) +find_program(CMAKE_CXX_COMPILER NAMES armcc armcc.exe) +find_program(CMAKE_ASM_COMPILER NAMES armasm armasm.exe) + +#SET(CMAKE_C_COMPILER "${tools}/bin/armclang.exe") +#SET(CMAKE_CXX_COMPILER "${tools}/bin/armclang.exe") +#SET(CMAKE_ASM_COMPILER "${tools}/bin/armclang.exe") + +find_program(CMAKE_AR NAMES armar armar.exe) + +#SET(CMAKE_AR "${tools}/bin/armar.exe") +find_program(CMAKE_CXX_COMPILER_AR NAMES armar armar.exe) +find_program(CMAKE_C_COMPILER_AR NAMES armar armar.exe) + +find_program(CMAKE_LINKER NAMES armlink armlink.exe) +#SET(CMAKE_LINKER "${tools}/bin/armlink.exe") + +SET(CMAKE_C_LINK_EXECUTABLE " -o ") +SET(CMAKE_CXX_LINK_EXECUTABLE " -o ") + +SET(CMAKE_C_RESPONSE_FILE_LINK_FLAG "--via ") +SET(CMAKE_C_OUTPUT_EXTENSION .o) +SET(CMAKE_CXX_OUTPUT_EXTENSION .o) +SET(CMAKE_ASM_OUTPUT_EXTENSION .o) +# When library defined as STATIC, this line is needed to describe how the .a file must be +# create. Some changes to the line may be needed. +SET(CMAKE_C_CREATE_STATIC_LIBRARY " -r -s --create " ) +SET(CMAKE_CXX_CREATE_STATIC_LIBRARY " -r -s --create " ) + +#SET(CMAKE_ASM_CREATE_STATIC_LIBRARY "${tools}/bin/armar.exe -r -s --create " ) + + +set(ARMAC5 ON) + +if(NOT ARM_CPU) + set( + ARM_CPU "Cortex-A5.neon" + CACHE STRING "Set ARM CPU. Default : cortex-a5" + ) +endif(NOT ARM_CPU) + + +SET(CMAKE_C_FLAGS "--c99 --cpu ${ARM_CPU}" CACHE INTERNAL "C compiler common flags") +SET(CMAKE_CXX_FLAGS "--exceptions --cpp11 --cpp_compat --cpu ${ARM_CPU}" CACHE INTERNAL "C compiler common flags") +SET(CMAKE_ASM_FLAGS " --cpreproc --cpu ${ARM_CPU}" CACHE INTERNAL "ASM compiler common flags") +#SET(CMAKE_ASM_FLAGS "--cpu=${ARM_CPU}" CACHE INTERNAL "ASM compiler common flags") +#SET(CMAKE_EXE_LINKER_FLAGS "-flto" CACHE INTERNAL "linker flags") + +# Where is the target environment +#SET(CMAKE_FIND_ROOT_PATH "${tools}") +# Search for programs in the build host directories +SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) +# For libraries and headers in the target directories +SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) +SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) + +#include(CMakePrintHelpers) +#cmake_print_variables(${ASM_DIALECT}) diff --git a/armcc.cmake b/armac6.cmake similarity index 100% rename from armcc.cmake rename to armac6.cmake diff --git a/configBoot.cmake b/configBoot.cmake index fd3c663d..fc8bc9cc 100755 --- a/configBoot.cmake +++ b/configBoot.cmake @@ -60,98 +60,19 @@ function(configboot PROJECT_NAME ROOT PLATFORMFOLDER) endif() ################### # - # Cortex cortex-m7 + # Cortex M # - if (ARM_CPU STREQUAL "cortex-m7") + if (ARM_CPU MATCHES "^[cC]ortex-[Mm].*$") cortexm(${CORE} ${PROJECT_NAME} ${ROOT} ${PLATFORMFOLDER} OFF) endif() - ################### - # - # Cortex cortex-m4 - # - if (ARM_CPU STREQUAL "cortex-m4") - cortexm(${CORE} ${PROJECT_NAME} ${ROOT} ${PLATFORMFOLDER} OFF) - endif() - - ################### - # - # Cortex cortex-m35p - # - if (ARM_CPU STREQUAL "cortex-m35") - cortexm(${CORE} ${PROJECT_NAME} ${ROOT} ${PLATFORMFOLDER} OFF) - - endif() - - ################### - # - # Cortex cortex-m33 - # - if (ARM_CPU STREQUAL "cortex-m33") - cortexm(${CORE} ${PROJECT_NAME} ${ROOT} ${PLATFORMFOLDER} OFF) - - endif() - - ################### - # - # Cortex cortex-m23 - # - if (ARM_CPU STREQUAL "cortex-m23") - cortexm(${CORE} ${PROJECT_NAME} ${ROOT} ${PLATFORMFOLDER} OFF) - - endif() - - ################### - # - # Cortex cortex-m0+ - # - if (ARM_CPU STREQUAL "cortex-m0p") - cortexm(${CORE} ${PROJECT_NAME} ${ROOT} ${PLATFORMFOLDER} OFF) - - endif() - - ################### - # - # Cortex cortex-m0 - # - if (ARM_CPU STREQUAL "cortex-m0") - cortexm(${CORE} ${PROJECT_NAME} ${ROOT} ${PLATFORMFOLDER} OFF) - - endif() ################### # # Cortex cortex-a5 # - if (ARM_CPU STREQUAL "cortex-a5") - cortexa(${CORE} ${PROJECT_NAME} ${ROOT} ${PLATFORMFOLDER}) - - endif() - - ################### - # - # Cortex cortex-a7 - # - if (ARM_CPU STREQUAL "cortex-a7") - cortexa(${CORE} ${PROJECT_NAME} ${ROOT} ${PLATFORMFOLDER}) - - endif() - - ################### - # - # Cortex cortex-a9 - # - if (ARM_CPU STREQUAL "cortex-a9") - cortexa(${CORE} ${PROJECT_NAME} ${ROOT} ${PLATFORMFOLDER}) - - endif() - - ################### - # - # Cortex cortex-a15 - # - if (ARM_CPU STREQUAL "cortex-a15") + if (ARM_CPU MATCHES "^[cC]ortex-[Aa].*") cortexa(${CORE} ${PROJECT_NAME} ${ROOT} ${PLATFORMFOLDER}) endif() diff --git a/configCore.cmake b/configCore.cmake index f7a24f65..5ff20554 100644 --- a/configCore.cmake +++ b/configCore.cmake @@ -29,7 +29,7 @@ function(configcore PROJECTNAME ROOT) # # CORTEX-A15 - if (ARM_CPU STREQUAL "cortex-a15" ) + if (ARM_CPU MATCHES "^[cC]ortex-[aA]15([^0-9].*)?$" ) target_include_directories(${PROJECTNAME} PUBLIC "${ROOT}/CMSIS/Core_A/Include") SET(CORTEXM OFF) target_compile_definitions(${PROJECTNAME} PRIVATE ARMv7A) @@ -41,7 +41,7 @@ function(configcore PROJECTNAME ROOT) endif() # CORTEX-A9 - if (ARM_CPU STREQUAL "cortex-a9" ) + if (ARM_CPU MATCHES "^[cC]ortex-[aA]9([^0-9].*)?$" ) target_include_directories(${PROJECTNAME} PUBLIC "${ROOT}/CMSIS/Core_A/Include") SET(CORTEXM OFF) target_compile_definitions(${PROJECTNAME} PRIVATE ARMv7A) @@ -54,7 +54,7 @@ function(configcore PROJECTNAME ROOT) endif() # CORTEX-A7 - if (ARM_CPU STREQUAL "cortex-a7" ) + if (ARM_CPU MATCHES "^[cC]ortex-[aA]7([^0-9].*)?$" ) target_include_directories(${PROJECTNAME} PUBLIC "${ROOT}/CMSIS/Core_A/Include") SET(CORTEXM OFF) @@ -68,7 +68,7 @@ function(configcore PROJECTNAME ROOT) endif() # CORTEX-A5 - if (ARM_CPU STREQUAL "cortex-a5" ) + if (ARM_CPU MATCHES "^[cC]ortex-[aA]5([^0-9].*)?$" ) target_include_directories(${PROJECTNAME} PUBLIC "${ROOT}/CMSIS/Core_A/Include") SET(CORTEXM OFF) @@ -87,7 +87,7 @@ function(configcore PROJECTNAME ROOT) # # CORTEX-M35 - if (ARM_CPU STREQUAL "cortex-m35") + if (ARM_CPU MATCHES "^[cC]ortex-[mM]35([^0-9].*)?$") target_include_directories(${PROJECTNAME} PUBLIC "${ROOT}/CMSIS/Core/Include") target_compile_definitions(${PROJECTNAME} PUBLIC CORTEXM) target_compile_definitions(${PROJECTNAME} PRIVATE ARMCM35P_DSP_FP) @@ -98,7 +98,7 @@ function(configcore PROJECTNAME ROOT) endif() # CORTEX-M33 - if (ARM_CPU STREQUAL "cortex-m33") + if (ARM_CPU MATCHES "^[cC]ortex-[mM]33([^0-9].*)?$") target_include_directories(${PROJECTNAME} PUBLIC "${ROOT}/CMSIS/Core/Include") target_compile_definitions(${PROJECTNAME} PUBLIC CORTEXM) target_compile_definitions(${PROJECTNAME} PRIVATE ARMCM33_DSP_FP) @@ -109,7 +109,7 @@ function(configcore PROJECTNAME ROOT) endif() # CORTEX-M23 - if (ARM_CPU STREQUAL "cortex-m23") + if (ARM_CPU MATCHES "^[cC]ortex-[mM]23([^0-9].*)?$") target_include_directories(${PROJECTNAME} PUBLIC "${ROOT}/CMSIS/Core/Include") target_compile_definitions(${PROJECTNAME} PUBLIC CORTEXM) target_compile_definitions(${PROJECTNAME} PRIVATE ARMCM23) @@ -120,7 +120,7 @@ function(configcore PROJECTNAME ROOT) endif() # CORTEX-M7 - if (ARM_CPU STREQUAL "cortex-m7") + if (ARM_CPU MATCHES "^[cC]ortex-[mM]7([^0-9].*)?$") target_include_directories(${PROJECTNAME} PUBLIC "${ROOT}/CMSIS/Core/Include") target_compile_definitions(${PROJECTNAME} PUBLIC CORTEXM) target_compile_definitions(${PROJECTNAME} PRIVATE ARMCM7_DP) @@ -131,7 +131,7 @@ function(configcore PROJECTNAME ROOT) endif() # CORTEX-M4 - if (ARM_CPU STREQUAL "cortex-m4") + if (ARM_CPU MATCHES "^[cC]ortex-[mM]4([^0-9].*)?$") target_include_directories(${PROJECTNAME} PUBLIC "${ROOT}/CMSIS/Core/Include") target_compile_definitions(${PROJECTNAME} PUBLIC CORTEXM) target_compile_definitions(${PROJECTNAME} PRIVATE ARMCM4_FP) @@ -142,7 +142,7 @@ function(configcore PROJECTNAME ROOT) endif() # CORTEX-M3 - if (ARM_CPU STREQUAL "cortex-m3") + if (ARM_CPU MATCHES "^[cC]ortex-[mM]3([^0-9].*)?$") target_include_directories(${PROJECTNAME} PUBLIC "${ROOT}/CMSIS/Core/Include") target_compile_definitions(${PROJECTNAME} PUBLIC CORTEXM) target_compile_definitions(${PROJECTNAME} PRIVATE ARMCM3) @@ -153,7 +153,7 @@ function(configcore PROJECTNAME ROOT) endif() # CORTEX-M0plus - if (ARM_CPU STREQUAL "cortex-m0p") + if (ARM_CPU MATCHES "^[cC]ortex-[mM]0p([^0-9].*)?$") target_include_directories(${PROJECTNAME} PUBLIC "${ROOT}/CMSIS/Core/Include") target_compile_definitions(${PROJECTNAME} PUBLIC CORTEXM) target_compile_definitions(${PROJECTNAME} PRIVATE ARMCM0P) @@ -164,7 +164,7 @@ function(configcore PROJECTNAME ROOT) endif() # CORTEX-M0 - if (ARM_CPU STREQUAL "cortex-m0") + if (ARM_CPU MATCHES "^[cC]ortex-[mM]0([^0-9].*)?$") target_include_directories(${PROJECTNAME} PUBLIC "${ROOT}/CMSIS/Core/Include") target_compile_definitions(${PROJECTNAME} PUBLIC CORTEXM) target_compile_definitions(${PROJECTNAME} PRIVATE ARMCM0) diff --git a/configPlatform.cmake b/configPlatform.cmake index bd306add..95b24439 100644 --- a/configPlatform.cmake +++ b/configPlatform.cmake @@ -26,7 +26,7 @@ function(set_platform_core) # # Cortex cortex-m7 # - if (ARM_CPU STREQUAL "cortex-m7") + if (ARM_CPU MATCHES "^[cC]ortex-[mM]7([^0-9].*)?$") SET(CORE ARMCM7 PARENT_SCOPE) endif() @@ -34,7 +34,7 @@ function(set_platform_core) # # Cortex cortex-m4 # - if (ARM_CPU STREQUAL "cortex-m4") + if (ARM_CPU MATCHES "^[cC]ortex-[mM]4([^0-9].*)?$") SET(CORE ARMCM4 PARENT_SCOPE) endif() @@ -42,7 +42,7 @@ function(set_platform_core) # # Cortex cortex-m35p # - if (ARM_CPU STREQUAL "cortex-m35") + if (ARM_CPU MATCHES "^[cC]ortex-[mM]35([^0-9].*)?$") SET(CORE ARMCM35P PARENT_SCOPE) endif() @@ -51,7 +51,7 @@ function(set_platform_core) # # Cortex cortex-m33 # - if (ARM_CPU STREQUAL "cortex-m33") + if (ARM_CPU MATCHES "^[cC]ortex-[mM]33([^0-9].*)?$") SET(CORE ARMCM33 PARENT_SCOPE) endif() @@ -60,7 +60,7 @@ function(set_platform_core) # # Cortex cortex-m23 # - if (ARM_CPU STREQUAL "cortex-m23") + if (ARM_CPU MATCHES "^[cC]ortex-[mM]23([^0-9].*)?$") SET(CORE ARMCM23 PARENT_SCOPE) endif() @@ -69,7 +69,7 @@ function(set_platform_core) # # Cortex cortex-m0+ # - if (ARM_CPU STREQUAL "cortex-m0p") + if (ARM_CPU MATCHES "^[cC]ortex-[mM]0p([^0-9].*)?$") SET(CORE ARMCM0plus PARENT_SCOPE) endif() @@ -78,7 +78,7 @@ function(set_platform_core) # # Cortex cortex-m0 # - if (ARM_CPU STREQUAL "cortex-m0") + if (ARM_CPU MATCHES "^[cC]ortex-[mM]0([^0-9].*)?$") SET(CORE ARMCM0 PARENT_SCOPE) endif() @@ -87,7 +87,7 @@ function(set_platform_core) # # Cortex cortex-a5 # - if (ARM_CPU STREQUAL "cortex-a5") + if (ARM_CPU MATCHES "^[cC]ortex-[aA]5([^0-9].*)?$") SET(CORE ARMCA5 PARENT_SCOPE) endif() @@ -96,7 +96,7 @@ function(set_platform_core) # # Cortex cortex-a7 # - if (ARM_CPU STREQUAL "cortex-a7") + if (ARM_CPU MATCHES "^[cC]ortex-[aA]7([^0-9].*)?$") SET(CORE ARMCA7 PARENT_SCOPE) endif() @@ -105,7 +105,7 @@ function(set_platform_core) # # Cortex cortex-a9 # - if (ARM_CPU STREQUAL "cortex-a9") + if (ARM_CPU MATCHES "^[cC]ortex-[aA]9([^0-9].*)?$") SET(CORE ARMCA9 PARENT_SCOPE) endif() @@ -114,7 +114,7 @@ function(set_platform_core) # # Cortex cortex-a15 # - if (ARM_CPU STREQUAL "cortex-a15") + if (ARM_CPU MATCHES "^[cC]ortex-[aA]15([^0-9].*)?$") SET(CORE ARMCA15 PARENT_SCOPE) endif() endfunction() diff --git a/gcc.cmake b/gcc.cmake index 2e1abeaa..77378d13 100644 --- a/gcc.cmake +++ b/gcc.cmake @@ -58,6 +58,8 @@ if(IS_IN_TRY_COMPILE) add_link_options("--specs=nosys.specs") endif() +add_link_options("-Wl,--start-group") + # Where is the target environment #SET(CMAKE_FIND_ROOT_PATH "${tools}") # Search for programs in the build host directories