From 54be9aeaeea299837f1169045519143331a3ffe8 Mon Sep 17 00:00:00 2001 From: Christophe Favergeon Date: Thu, 27 Oct 2022 08:08:18 +0200 Subject: [PATCH] Corrected issue #61 Table configuration issue with RFFT Fast F32 and F16 The define use to include or exclude the bit reverse table is different for scalar and MVE versions. The test was not covering both cases. --- .../arm_rfft_fast_init_f16.c | 32 +++++++++---------- .../arm_rfft_fast_init_f32.c | 32 +++++++++---------- Testing/cmsis_build/quicktest.bat | 10 ++++++ .../cmsis_build/test.Release+FVP_A5Neon.cprj | 16 +++++----- .../cmsis_build/test.Release+FVP_A7Neon.cprj | 16 +++++----- .../cmsis_build/test.Release+FVP_A9Neon.cprj | 16 +++++----- Testing/cmsis_build/test.Release+FVP_M55.cprj | 14 ++++---- .../test.Release+VHT-Corstone-300.cprj | 2 +- .../test.Release+VHT-Corstone-310.cprj | 2 +- Testing/cmsis_build/test.Release+VHT_M0P.cprj | 14 ++++---- Testing/cmsis_build/test.Release+VHT_M23.cprj | 14 ++++---- Testing/cmsis_build/test.Release+VHT_M3.cprj | 14 ++++---- Testing/cmsis_build/test.Release+VHT_M33.cprj | 14 ++++---- Testing/cmsis_build/test.Release+VHT_M4.cprj | 14 ++++---- Testing/cmsis_build/test.Release+VHT_M7.cprj | 14 ++++---- .../test.Release+VHT_M7_UNROLLED.cprj | 2 +- 16 files changed, 118 insertions(+), 108 deletions(-) create mode 100644 Testing/cmsis_build/quicktest.bat diff --git a/Source/TransformFunctions/arm_rfft_fast_init_f16.c b/Source/TransformFunctions/arm_rfft_fast_init_f16.c index 158180b4..981dde50 100755 --- a/Source/TransformFunctions/arm_rfft_fast_init_f16.c +++ b/Source/TransformFunctions/arm_rfft_fast_init_f16.c @@ -41,7 +41,7 @@ @{ */ -#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F16_16) && defined(ARM_TABLE_BITREVIDX_FLT_16) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F16_32)) +#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F16_16) && (defined(ARM_TABLE_BITREVIDX_FLT_16) || defined(ARM_TABLE_BITREVIDX_FXT_16)) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F16_32)) /** @private @@ -71,7 +71,7 @@ static arm_status arm_rfft_32_fast_init_f16( arm_rfft_fast_instance_f16 * S ) { } #endif -#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F16_32) && defined(ARM_TABLE_BITREVIDX_FLT_32) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F16_64)) +#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F16_32) && (defined(ARM_TABLE_BITREVIDX_FLT_32) || defined(ARM_TABLE_BITREVIDX_FXT_32)) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F16_64)) /** @private @@ -101,7 +101,7 @@ static arm_status arm_rfft_64_fast_init_f16( arm_rfft_fast_instance_f16 * S ) { } #endif -#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F16_64) && defined(ARM_TABLE_BITREVIDX_FLT_64) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F16_128)) +#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F16_64) && (defined(ARM_TABLE_BITREVIDX_FLT_64) || defined(ARM_TABLE_BITREVIDX_FXT_64)) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F16_128)) /** @private @@ -131,7 +131,7 @@ static arm_status arm_rfft_128_fast_init_f16( arm_rfft_fast_instance_f16 * S ) { } #endif -#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F16_128) && defined(ARM_TABLE_BITREVIDX_FLT_128) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F16_256)) +#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F16_128) && (defined(ARM_TABLE_BITREVIDX_FLT_128) || defined(ARM_TABLE_BITREVIDX_FXT_128)) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F16_256)) /** @private @@ -161,7 +161,7 @@ static arm_status arm_rfft_256_fast_init_f16( arm_rfft_fast_instance_f16 * S ) { } #endif -#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F16_256) && defined(ARM_TABLE_BITREVIDX_FLT_256) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F16_512)) +#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F16_256) && (defined(ARM_TABLE_BITREVIDX_FLT_256) || defined(ARM_TABLE_BITREVIDX_FXT_256)) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F16_512)) /** @private @@ -191,7 +191,7 @@ static arm_status arm_rfft_512_fast_init_f16( arm_rfft_fast_instance_f16 * S ) { } #endif -#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F16_512) && defined(ARM_TABLE_BITREVIDX_FLT_512) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F16_1024)) +#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F16_512) && (defined(ARM_TABLE_BITREVIDX_FLT_512) || defined(ARM_TABLE_BITREVIDX_FXT_512)) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F16_1024)) /** @private @brief Initialization function for the 1024pt floating-point real FFT. @@ -220,7 +220,7 @@ static arm_status arm_rfft_1024_fast_init_f16( arm_rfft_fast_instance_f16 * S ) } #endif -#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F16_1024) && defined(ARM_TABLE_BITREVIDX_FLT_1024) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F16_2048)) +#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F16_1024) && (defined(ARM_TABLE_BITREVIDX_FLT_1024) || defined(ARM_TABLE_BITREVIDX_FXT_1024)) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F16_2048)) /** @private @brief Initialization function for the 2048pt floating-point real FFT. @@ -248,7 +248,7 @@ static arm_status arm_rfft_2048_fast_init_f16( arm_rfft_fast_instance_f16 * S ) } #endif -#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F16_2048) && defined(ARM_TABLE_BITREVIDX_FLT_2048) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F16_4096)) +#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F16_2048) && (defined(ARM_TABLE_BITREVIDX_FLT_2048) || defined(ARM_TABLE_BITREVIDX_FXT_2048)) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F16_4096)) /** @private * @brief Initialization function for the 4096pt floating-point real FFT. @@ -301,42 +301,42 @@ arm_status arm_rfft_fast_init_f16( switch (fftLen) { -#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F16_2048) && defined(ARM_TABLE_BITREVIDX_FLT_2048) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F16_4096)) +#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F16_2048) && (defined(ARM_TABLE_BITREVIDX_FLT_2048) || defined(ARM_TABLE_BITREVIDX_FXT_2048)) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F16_4096)) case 4096U: fptr = arm_rfft_4096_fast_init_f16; break; #endif -#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F16_1024) && defined(ARM_TABLE_BITREVIDX_FLT_1024) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F16_2048)) +#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F16_1024) && (defined(ARM_TABLE_BITREVIDX_FLT_1024) || defined(ARM_TABLE_BITREVIDX_FXT_1024)) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F16_2048)) case 2048U: fptr = arm_rfft_2048_fast_init_f16; break; #endif -#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F16_512) && defined(ARM_TABLE_BITREVIDX_FLT_512) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F16_1024)) +#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F16_512) && (defined(ARM_TABLE_BITREVIDX_FLT_512) || defined(ARM_TABLE_BITREVIDX_FXT_512)) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F16_1024)) case 1024U: fptr = arm_rfft_1024_fast_init_f16; break; #endif -#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F16_256) && defined(ARM_TABLE_BITREVIDX_FLT_256) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F16_512)) +#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F16_256) && (defined(ARM_TABLE_BITREVIDX_FLT_256) || defined(ARM_TABLE_BITREVIDX_FXT_256)) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F16_512)) case 512U: fptr = arm_rfft_512_fast_init_f16; break; #endif -#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F16_128) && defined(ARM_TABLE_BITREVIDX_FLT_128) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F16_256)) +#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F16_128) && (defined(ARM_TABLE_BITREVIDX_FLT_128) || defined(ARM_TABLE_BITREVIDX_FXT_128)) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F16_256)) case 256U: fptr = arm_rfft_256_fast_init_f16; break; #endif -#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F16_64) && defined(ARM_TABLE_BITREVIDX_FLT_64) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F16_128)) +#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F16_64) && (defined(ARM_TABLE_BITREVIDX_FLT_64) || defined(ARM_TABLE_BITREVIDX_FXT_64)) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F16_128)) case 128U: fptr = arm_rfft_128_fast_init_f16; break; #endif -#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F16_32) && defined(ARM_TABLE_BITREVIDX_FLT_32) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F16_64)) +#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F16_32) && (defined(ARM_TABLE_BITREVIDX_FLT_32) || defined(ARM_TABLE_BITREVIDX_FXT_32)) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F16_64)) case 64U: fptr = arm_rfft_64_fast_init_f16; break; #endif -#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F16_16) && defined(ARM_TABLE_BITREVIDX_FLT_16) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F16_32)) +#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F16_16) && (defined(ARM_TABLE_BITREVIDX_FLT_16) || defined(ARM_TABLE_BITREVIDX_FXT_16)) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F16_32)) case 32U: fptr = arm_rfft_32_fast_init_f16; break; diff --git a/Source/TransformFunctions/arm_rfft_fast_init_f32.c b/Source/TransformFunctions/arm_rfft_fast_init_f32.c index e8273b47..7d7646cc 100644 --- a/Source/TransformFunctions/arm_rfft_fast_init_f32.c +++ b/Source/TransformFunctions/arm_rfft_fast_init_f32.c @@ -38,7 +38,7 @@ @{ */ -#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_16) && defined(ARM_TABLE_BITREVIDX_FLT_16) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_32)) +#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_16) && (defined(ARM_TABLE_BITREVIDX_FLT_16) || defined(ARM_TABLE_BITREVIDX_FXT_16)) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_32)) /** @private @@ -68,7 +68,7 @@ static arm_status arm_rfft_32_fast_init_f32( arm_rfft_fast_instance_f32 * S ) { } #endif -#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_32) && defined(ARM_TABLE_BITREVIDX_FLT_32) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_64)) +#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_32) && (defined(ARM_TABLE_BITREVIDX_FLT_32) || defined(ARM_TABLE_BITREVIDX_FXT_32)) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_64)) /** @private @@ -98,7 +98,7 @@ static arm_status arm_rfft_64_fast_init_f32( arm_rfft_fast_instance_f32 * S ) { } #endif -#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_64) && defined(ARM_TABLE_BITREVIDX_FLT_64) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_128)) +#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_64) && (defined(ARM_TABLE_BITREVIDX_FLT_64) || defined(ARM_TABLE_BITREVIDX_FXT_64)) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_128)) /** @private @@ -128,7 +128,7 @@ static arm_status arm_rfft_128_fast_init_f32( arm_rfft_fast_instance_f32 * S ) { } #endif -#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_128) && defined(ARM_TABLE_BITREVIDX_FLT_128) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_256)) +#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_128) && (defined(ARM_TABLE_BITREVIDX_FLT_128) || defined(ARM_TABLE_BITREVIDX_FXT_128)) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_256)) /** @private @@ -158,7 +158,7 @@ static arm_status arm_rfft_256_fast_init_f32( arm_rfft_fast_instance_f32 * S ) { } #endif -#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_256) && defined(ARM_TABLE_BITREVIDX_FLT_256) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_512)) +#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_256) && (defined(ARM_TABLE_BITREVIDX_FLT_256) || defined(ARM_TABLE_BITREVIDX_FXT_256)) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_512)) /** @private @@ -188,7 +188,7 @@ static arm_status arm_rfft_512_fast_init_f32( arm_rfft_fast_instance_f32 * S ) { } #endif -#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_512) && defined(ARM_TABLE_BITREVIDX_FLT_512) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_1024)) +#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_512) && (defined(ARM_TABLE_BITREVIDX_FLT_512) || defined(ARM_TABLE_BITREVIDX_FXT_512)) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_1024)) /** @private @brief Initialization function for the 1024pt floating-point real FFT. @@ -217,7 +217,7 @@ static arm_status arm_rfft_1024_fast_init_f32( arm_rfft_fast_instance_f32 * S ) } #endif -#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_1024) && defined(ARM_TABLE_BITREVIDX_FLT_1024) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_2048)) +#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_1024) && (defined(ARM_TABLE_BITREVIDX_FLT_1024) || defined(ARM_TABLE_BITREVIDX_FXT_1024)) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_2048)) /** @private @brief Initialization function for the 2048pt floating-point real FFT. @@ -245,7 +245,7 @@ static arm_status arm_rfft_2048_fast_init_f32( arm_rfft_fast_instance_f32 * S ) } #endif -#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_2048) && defined(ARM_TABLE_BITREVIDX_FLT_2048) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_4096)) +#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_2048) && (defined(ARM_TABLE_BITREVIDX_FLT_2048) || defined(ARM_TABLE_BITREVIDX_FXT_2048)) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_4096)) /** @private * @brief Initialization function for the 4096pt floating-point real FFT. @@ -298,42 +298,42 @@ arm_status arm_rfft_fast_init_f32( switch (fftLen) { -#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_2048) && defined(ARM_TABLE_BITREVIDX_FLT_2048) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_4096)) +#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_2048) && (defined(ARM_TABLE_BITREVIDX_FLT_2048) || defined(ARM_TABLE_BITREVIDX_FXT_2048)) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_4096)) case 4096U: fptr = arm_rfft_4096_fast_init_f32; break; #endif -#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_1024) && defined(ARM_TABLE_BITREVIDX_FLT_1024) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_2048)) +#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_1024) && (defined(ARM_TABLE_BITREVIDX_FLT_1024) || defined(ARM_TABLE_BITREVIDX_FXT_1024)) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_2048)) case 2048U: fptr = arm_rfft_2048_fast_init_f32; break; #endif -#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_512) && defined(ARM_TABLE_BITREVIDX_FLT_512) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_1024)) +#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_512) && (defined(ARM_TABLE_BITREVIDX_FLT_512) || defined(ARM_TABLE_BITREVIDX_FXT_512)) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_1024)) case 1024U: fptr = arm_rfft_1024_fast_init_f32; break; #endif -#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_256) && defined(ARM_TABLE_BITREVIDX_FLT_256) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_512)) +#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_256) && (defined(ARM_TABLE_BITREVIDX_FLT_256) || defined(ARM_TABLE_BITREVIDX_FXT_256)) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_512)) case 512U: fptr = arm_rfft_512_fast_init_f32; break; #endif -#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_128) && defined(ARM_TABLE_BITREVIDX_FLT_128) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_256)) +#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_128) && (defined(ARM_TABLE_BITREVIDX_FLT_128) || defined(ARM_TABLE_BITREVIDX_FXT_128)) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_256)) case 256U: fptr = arm_rfft_256_fast_init_f32; break; #endif -#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_64) && defined(ARM_TABLE_BITREVIDX_FLT_64) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_128)) +#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_64) && (defined(ARM_TABLE_BITREVIDX_FLT_64) || defined(ARM_TABLE_BITREVIDX_FXT_64)) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_128)) case 128U: fptr = arm_rfft_128_fast_init_f32; break; #endif -#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_32) && defined(ARM_TABLE_BITREVIDX_FLT_32) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_64)) +#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_32) && (defined(ARM_TABLE_BITREVIDX_FLT_32) || defined(ARM_TABLE_BITREVIDX_FXT_32)) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_64)) case 64U: fptr = arm_rfft_64_fast_init_f32; break; #endif -#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_16) && defined(ARM_TABLE_BITREVIDX_FLT_16) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_32)) +#if !defined(ARM_DSP_CONFIG_TABLES) || defined(ARM_ALL_FFT_TABLES) || (defined(ARM_TABLE_TWIDDLECOEF_F32_16) && (defined(ARM_TABLE_BITREVIDX_FLT_16) || defined(ARM_TABLE_BITREVIDX_FXT_16)) && defined(ARM_TABLE_TWIDDLECOEF_RFFT_F32_32)) case 32U: fptr = arm_rfft_32_fast_init_f32; break; diff --git a/Testing/cmsis_build/quicktest.bat b/Testing/cmsis_build/quicktest.bat new file mode 100644 index 00000000..01c70bca --- /dev/null +++ b/Testing/cmsis_build/quicktest.bat @@ -0,0 +1,10 @@ +ECHO OFF +ECHO "Gen Test" +cd .. +python processTests.py -f Output.pickle -e TransformRF32 +cd cmsis_build +ECHO "Build" +cbuild "test.Release+VHT-Corstone-300.cprj" +ECHO "Run" +C:\Keil_v5\ARM\VHT\VHT_Corstone_SSE-300_Ethos-U55.exe -f configs/ARM_VHT_Corstone_300_config.txt -a cpu0="out\test\VHT-Corstone-300\Release\test.Release+VHT-Corstone-300.axf" > results_cs300_u55.txt +python ..\processResult.py -f ..\Output.pickle -e -r results_cs300_u55.txt diff --git a/Testing/cmsis_build/test.Release+FVP_A5Neon.cprj b/Testing/cmsis_build/test.Release+FVP_A5Neon.cprj index 85fb3d63..9340a309 100644 --- a/Testing/cmsis_build/test.Release+FVP_A5Neon.cprj +++ b/Testing/cmsis_build/test.Release+FVP_A5Neon.cprj @@ -1,6 +1,6 @@ - + Automatically generated project @@ -11,15 +11,15 @@ - + - - - - + + + + EMBEDDED;NORMALFVP;CORTEXA ../../Include;../../PrivateInclude;../FrameworkInclude;../GeneratedInclude;../Include/Tests @@ -31,8 +31,8 @@ - - + + diff --git a/Testing/cmsis_build/test.Release+FVP_A7Neon.cprj b/Testing/cmsis_build/test.Release+FVP_A7Neon.cprj index 2a3f791f..4e0cbbae 100644 --- a/Testing/cmsis_build/test.Release+FVP_A7Neon.cprj +++ b/Testing/cmsis_build/test.Release+FVP_A7Neon.cprj @@ -1,6 +1,6 @@ - + Automatically generated project @@ -11,15 +11,15 @@ - + - - - - + + + + EMBEDDED;NORMALFVP;CORTEXA ../../Include;../../PrivateInclude;../FrameworkInclude;../GeneratedInclude;../Include/Tests @@ -31,8 +31,8 @@ - - + + diff --git a/Testing/cmsis_build/test.Release+FVP_A9Neon.cprj b/Testing/cmsis_build/test.Release+FVP_A9Neon.cprj index 2673034c..4b2bdc15 100644 --- a/Testing/cmsis_build/test.Release+FVP_A9Neon.cprj +++ b/Testing/cmsis_build/test.Release+FVP_A9Neon.cprj @@ -1,6 +1,6 @@ - + Automatically generated project @@ -11,15 +11,15 @@ - + - - - - + + + + EMBEDDED;NORMALFVP;CORTEXA ../../Include;../../PrivateInclude;../FrameworkInclude;../GeneratedInclude;../Include/Tests @@ -31,8 +31,8 @@ - - + + diff --git a/Testing/cmsis_build/test.Release+FVP_M55.cprj b/Testing/cmsis_build/test.Release+FVP_M55.cprj index cf3f3e3d..3a6f7c19 100644 --- a/Testing/cmsis_build/test.Release+FVP_M55.cprj +++ b/Testing/cmsis_build/test.Release+FVP_M55.cprj @@ -1,6 +1,6 @@ - + Automatically generated project @@ -11,15 +11,15 @@ - + - - - - + + + + EMBEDDED;NORMALFVP;CORTEXM ../../Include;../../PrivateInclude;../FrameworkInclude;../GeneratedInclude;../Include/Tests @@ -27,7 +27,7 @@ - + diff --git a/Testing/cmsis_build/test.Release+VHT-Corstone-300.cprj b/Testing/cmsis_build/test.Release+VHT-Corstone-300.cprj index efefa0a1..0da60fc8 100644 --- a/Testing/cmsis_build/test.Release+VHT-Corstone-300.cprj +++ b/Testing/cmsis_build/test.Release+VHT-Corstone-300.cprj @@ -1,6 +1,6 @@ - + Automatically generated project diff --git a/Testing/cmsis_build/test.Release+VHT-Corstone-310.cprj b/Testing/cmsis_build/test.Release+VHT-Corstone-310.cprj index 8f8b84dd..a76f1917 100644 --- a/Testing/cmsis_build/test.Release+VHT-Corstone-310.cprj +++ b/Testing/cmsis_build/test.Release+VHT-Corstone-310.cprj @@ -1,6 +1,6 @@ - + Automatically generated project diff --git a/Testing/cmsis_build/test.Release+VHT_M0P.cprj b/Testing/cmsis_build/test.Release+VHT_M0P.cprj index 26c37abc..f607bb63 100644 --- a/Testing/cmsis_build/test.Release+VHT_M0P.cprj +++ b/Testing/cmsis_build/test.Release+VHT_M0P.cprj @@ -1,6 +1,6 @@ - + Automatically generated project @@ -11,15 +11,15 @@ - + - - - - + + + + EMBEDDED;NORMALFVP;CORTEXM ../../Include;../../PrivateInclude;../FrameworkInclude;../GeneratedInclude;../Include/Tests @@ -27,7 +27,7 @@ - + diff --git a/Testing/cmsis_build/test.Release+VHT_M23.cprj b/Testing/cmsis_build/test.Release+VHT_M23.cprj index ba7b7d79..b5a75a75 100644 --- a/Testing/cmsis_build/test.Release+VHT_M23.cprj +++ b/Testing/cmsis_build/test.Release+VHT_M23.cprj @@ -1,6 +1,6 @@ - + Automatically generated project @@ -11,15 +11,15 @@ - + - - - - + + + + EMBEDDED;NORMALFVP;CORTEXM ../../Include;../../PrivateInclude;../FrameworkInclude;../GeneratedInclude;../Include/Tests @@ -27,7 +27,7 @@ - + diff --git a/Testing/cmsis_build/test.Release+VHT_M3.cprj b/Testing/cmsis_build/test.Release+VHT_M3.cprj index f0f42afc..2a28974c 100644 --- a/Testing/cmsis_build/test.Release+VHT_M3.cprj +++ b/Testing/cmsis_build/test.Release+VHT_M3.cprj @@ -1,6 +1,6 @@ - + Automatically generated project @@ -11,15 +11,15 @@ - + - - - - + + + + EMBEDDED;NORMALFVP;CORTEXM ../../Include;../../PrivateInclude;../FrameworkInclude;../GeneratedInclude;../Include/Tests @@ -27,7 +27,7 @@ - + diff --git a/Testing/cmsis_build/test.Release+VHT_M33.cprj b/Testing/cmsis_build/test.Release+VHT_M33.cprj index 92eb138b..e963612d 100644 --- a/Testing/cmsis_build/test.Release+VHT_M33.cprj +++ b/Testing/cmsis_build/test.Release+VHT_M33.cprj @@ -1,6 +1,6 @@ - + Automatically generated project @@ -11,15 +11,15 @@ - + - - - - + + + + EMBEDDED;NORMALFVP;CORTEXM ../../Include;../../PrivateInclude;../FrameworkInclude;../GeneratedInclude;../Include/Tests @@ -27,7 +27,7 @@ - + diff --git a/Testing/cmsis_build/test.Release+VHT_M4.cprj b/Testing/cmsis_build/test.Release+VHT_M4.cprj index e85dc263..34d91748 100644 --- a/Testing/cmsis_build/test.Release+VHT_M4.cprj +++ b/Testing/cmsis_build/test.Release+VHT_M4.cprj @@ -1,6 +1,6 @@ - + Automatically generated project @@ -11,15 +11,15 @@ - + - - - - + + + + EMBEDDED;NORMALFVP;CORTEXM ../../Include;../../PrivateInclude;../FrameworkInclude;../GeneratedInclude;../Include/Tests @@ -27,7 +27,7 @@ - + diff --git a/Testing/cmsis_build/test.Release+VHT_M7.cprj b/Testing/cmsis_build/test.Release+VHT_M7.cprj index b9b3fd44..0f7e503d 100644 --- a/Testing/cmsis_build/test.Release+VHT_M7.cprj +++ b/Testing/cmsis_build/test.Release+VHT_M7.cprj @@ -1,6 +1,6 @@ - + Automatically generated project @@ -11,15 +11,15 @@ - + - - - - + + + + EMBEDDED;NORMALFVP;CORTEXM ../../Include;../../PrivateInclude;../FrameworkInclude;../GeneratedInclude;../Include/Tests @@ -27,7 +27,7 @@ - + diff --git a/Testing/cmsis_build/test.Release+VHT_M7_UNROLLED.cprj b/Testing/cmsis_build/test.Release+VHT_M7_UNROLLED.cprj index 81e54948..84992a3f 100644 --- a/Testing/cmsis_build/test.Release+VHT_M7_UNROLLED.cprj +++ b/Testing/cmsis_build/test.Release+VHT_M7_UNROLLED.cprj @@ -1,6 +1,6 @@ - + Automatically generated project