CMSIS-DSP: Correction for issue #1130

Better control of the f16 build.
pull/19/head
Christophe Favergeon 5 years ago
parent 7e71a9741a
commit ebcecdfa93

@ -161,7 +161,9 @@
* - DISABLEFLOAT16: * - DISABLEFLOAT16:
* *
* Disable float16 algorithms when __fp16 is not supported for a * Disable float16 algorithms when __fp16 is not supported for a
* specific compiler / core configuration * specific compiler / core configuration.
* This is only valid for scalar. When vector architecture is
* supporting f16 then it can't be disabled.
* *
* <hr> * <hr>
* \section pack CMSIS-DSP in ARM::CMSIS Pack * \section pack CMSIS-DSP in ARM::CMSIS Pack

@ -49,15 +49,15 @@ won't be built.
*/ */
#if !(__ARM_FEATURE_MVE & 2) #if !(__ARM_FEATURE_MVE & 2)
#if defined(__ARM_FP16_FORMAT_IEEE) || defined(__ARM_FP16_FORMAT_ALTERNATIVE)
typedef __fp16 float16_t;
#define ARM_FLOAT16_SUPPORTED
#endif
#else
/* HW Float16 not yet well supported on some configs */
#if !defined(DISABLEFLOAT16) #if !defined(DISABLEFLOAT16)
#define ARM_FLOAT16_SUPPORTED #if defined(__ARM_FP16_FORMAT_IEEE) || defined(__ARM_FP16_FORMAT_ALTERNATIVE)
typedef __fp16 float16_t;
#define ARM_FLOAT16_SUPPORTED
#endif
#endif #endif
#else
/* When Vector float16, this flag is always defined and can't be disabled */
#define ARM_FLOAT16_SUPPORTED
#endif #endif
#if defined(ARM_MATH_NEON) || (defined(ARM_MATH_MVEF) && !defined(ARM_MATH_AUTOVECTORIZE)) /* floating point vector*/ #if defined(ARM_MATH_NEON) || (defined(ARM_MATH_MVEF) && !defined(ARM_MATH_AUTOVECTORIZE)) /* floating point vector*/

@ -63,6 +63,8 @@
This Function also initializes Twiddle factor table pointer and Bit reversal table pointer. This Function also initializes Twiddle factor table pointer and Bit reversal table pointer.
*/ */
#if defined(ARM_FLOAT16_SUPPORTED)
arm_status arm_cfft_radix2_init_f16( arm_status arm_cfft_radix2_init_f16(
arm_cfft_radix2_instance_f16 * S, arm_cfft_radix2_instance_f16 * S,
uint16_t fftLen, uint16_t fftLen,
@ -203,6 +205,7 @@ arm_status arm_cfft_radix2_init_f16(
return (status); return (status);
} }
#endif /* #if defined(ARM_FLOAT16_SUPPORTED) */
/** /**
@} end of ComplexFFT group @} end of ComplexFFT group
*/ */

@ -66,6 +66,8 @@
This Function also initializes Twiddle factor table pointer and Bit reversal table pointer. This Function also initializes Twiddle factor table pointer and Bit reversal table pointer.
*/ */
#if defined(ARM_FLOAT16_SUPPORTED)
arm_status arm_cfft_radix4_init_f16( arm_status arm_cfft_radix4_init_f16(
arm_cfft_radix4_instance_f16 * S, arm_cfft_radix4_instance_f16 * S,
uint16_t fftLen, uint16_t fftLen,
@ -163,7 +165,7 @@ arm_status arm_cfft_radix4_init_f16(
#endif #endif
return (status); return (status);
} }
#endif /* #if defined(ARM_FLOAT16_SUPPORTED) */
/** /**
@} end of ComplexFFT group @} end of ComplexFFT group
*/ */

Loading…
Cancel
Save