summaryrefslogtreecommitdiff
path: root/Middlewares/Third_Party/ARM/ARM.CMSIS-DSP.1.17.1/Include/arm_neon_tables.h
diff options
context:
space:
mode:
Diffstat (limited to 'Middlewares/Third_Party/ARM/ARM.CMSIS-DSP.1.17.1/Include/arm_neon_tables.h')
-rwxr-xr-xMiddlewares/Third_Party/ARM/ARM.CMSIS-DSP.1.17.1/Include/arm_neon_tables.h472
1 files changed, 472 insertions, 0 deletions
diff --git a/Middlewares/Third_Party/ARM/ARM.CMSIS-DSP.1.17.1/Include/arm_neon_tables.h b/Middlewares/Third_Party/ARM/ARM.CMSIS-DSP.1.17.1/Include/arm_neon_tables.h
new file mode 100755
index 0000000..8fb50f2
--- /dev/null
+++ b/Middlewares/Third_Party/ARM/ARM.CMSIS-DSP.1.17.1/Include/arm_neon_tables.h
@@ -0,0 +1,472 @@
+/* ----------------------------------------------------------------------
+ * Project: CMSIS DSP Library
+ * Title: arm_neon_tables.h
+ * Description: common tables like fft twiddle factors, Bitreverse, reciprocal etc
+ * used for NEON implementation only
+ *
+ * @date 02 October 2024
+ *
+ * Target Processor: Cortex-A cores
+ * -------------------------------------------------------------------- */
+/*
+ * Copyright (C) 2024 ARM Limited or its affiliates. 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 ARM_NEON_TABLES_H
+ #define ARM_NEON_TABLES_H
+
+#include "arm_math_types.h"
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+
+
+
+
+#if defined(ARM_MATH_NEON)
+
+
+#define ARM_NEON_RFFT_TWIDDLES_16_F32_LEN 24
+extern const float32_t arm_neon_rfft_twiddles_16_f32[ARM_NEON_RFFT_TWIDDLES_16_F32_LEN];
+#define ARM_NEON_RFFT_FACTORS_16_F32_LEN 4
+extern const uint32_t arm_neon_rfft_factors_16_f32[ARM_NEON_RFFT_FACTORS_16_F32_LEN];
+#define ARM_NEON_RFFT_TWIDDLES_NEON_16_F32_LEN 0
+extern const float32_t *arm_neon_rfft_twiddles_neon_16_f32;
+
+#define ARM_NEON_RFFT_FACTORS_NEON_16_F32_LEN 4
+extern const uint32_t arm_neon_rfft_factors_neon_16_f32[ARM_NEON_RFFT_FACTORS_NEON_16_F32_LEN];
+#define ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_16_F32_LEN 24
+extern const float32_t arm_neon_rfft_super_twiddles_neon_16_f32[ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_16_F32_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_RFFT_16_F32 12
+#define ARM_NE10_OFFSET_BACKWARD_TWID_NEON_16_F32 0
+
+#define ARM_NEON_RFFT_TWIDDLES_32_F32_LEN 48
+extern const float32_t arm_neon_rfft_twiddles_32_f32[ARM_NEON_RFFT_TWIDDLES_32_F32_LEN];
+#define ARM_NEON_RFFT_FACTORS_32_F32_LEN 4
+extern const uint32_t arm_neon_rfft_factors_32_f32[ARM_NEON_RFFT_FACTORS_32_F32_LEN];
+#define ARM_NEON_RFFT_TWIDDLES_NEON_32_F32_LEN 0
+extern const float32_t *arm_neon_rfft_twiddles_neon_32_f32;
+
+#define ARM_NEON_RFFT_FACTORS_NEON_32_F32_LEN 4
+extern const uint32_t arm_neon_rfft_factors_neon_32_f32[ARM_NEON_RFFT_FACTORS_NEON_32_F32_LEN];
+#define ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_32_F32_LEN 24
+extern const float32_t arm_neon_rfft_super_twiddles_neon_32_f32[ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_32_F32_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_RFFT_32_F32 24
+#define ARM_NE10_OFFSET_BACKWARD_TWID_NEON_32_F32 0
+
+#define ARM_NEON_RFFT_TWIDDLES_64_F32_LEN 120
+extern const float32_t arm_neon_rfft_twiddles_64_f32[ARM_NEON_RFFT_TWIDDLES_64_F32_LEN];
+#define ARM_NEON_RFFT_FACTORS_64_F32_LEN 4
+extern const uint32_t arm_neon_rfft_factors_64_f32[ARM_NEON_RFFT_FACTORS_64_F32_LEN];
+#define ARM_NEON_RFFT_TWIDDLES_NEON_64_F32_LEN 24
+extern const float32_t arm_neon_rfft_twiddles_neon_64_f32[ARM_NEON_RFFT_TWIDDLES_NEON_64_F32_LEN];
+#define ARM_NEON_RFFT_FACTORS_NEON_64_F32_LEN 4
+extern const uint32_t arm_neon_rfft_factors_neon_64_f32[ARM_NEON_RFFT_FACTORS_NEON_64_F32_LEN];
+#define ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_64_F32_LEN 48
+extern const float32_t arm_neon_rfft_super_twiddles_neon_64_f32[ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_64_F32_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_RFFT_64_F32 60
+#define ARM_NE10_OFFSET_BACKWARD_TWID_NEON_64_F32 12
+
+#define ARM_NEON_RFFT_TWIDDLES_128_F32_LEN 240
+extern const float32_t arm_neon_rfft_twiddles_128_f32[ARM_NEON_RFFT_TWIDDLES_128_F32_LEN];
+#define ARM_NEON_RFFT_FACTORS_128_F32_LEN 4
+extern const uint32_t arm_neon_rfft_factors_128_f32[ARM_NEON_RFFT_FACTORS_128_F32_LEN];
+#define ARM_NEON_RFFT_TWIDDLES_NEON_128_F32_LEN 48
+extern const float32_t arm_neon_rfft_twiddles_neon_128_f32[ARM_NEON_RFFT_TWIDDLES_NEON_128_F32_LEN];
+#define ARM_NEON_RFFT_FACTORS_NEON_128_F32_LEN 4
+extern const uint32_t arm_neon_rfft_factors_neon_128_f32[ARM_NEON_RFFT_FACTORS_NEON_128_F32_LEN];
+#define ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_128_F32_LEN 96
+extern const float32_t arm_neon_rfft_super_twiddles_neon_128_f32[ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_128_F32_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_RFFT_128_F32 120
+#define ARM_NE10_OFFSET_BACKWARD_TWID_NEON_128_F32 24
+
+#define ARM_NEON_RFFT_TWIDDLES_256_F32_LEN 504
+extern const float32_t arm_neon_rfft_twiddles_256_f32[ARM_NEON_RFFT_TWIDDLES_256_F32_LEN];
+#define ARM_NEON_RFFT_FACTORS_256_F32_LEN 4
+extern const uint32_t arm_neon_rfft_factors_256_f32[ARM_NEON_RFFT_FACTORS_256_F32_LEN];
+#define ARM_NEON_RFFT_TWIDDLES_NEON_256_F32_LEN 120
+extern const float32_t arm_neon_rfft_twiddles_neon_256_f32[ARM_NEON_RFFT_TWIDDLES_NEON_256_F32_LEN];
+#define ARM_NEON_RFFT_FACTORS_NEON_256_F32_LEN 4
+extern const uint32_t arm_neon_rfft_factors_neon_256_f32[ARM_NEON_RFFT_FACTORS_NEON_256_F32_LEN];
+#define ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_256_F32_LEN 192
+extern const float32_t arm_neon_rfft_super_twiddles_neon_256_f32[ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_256_F32_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_RFFT_256_F32 252
+#define ARM_NE10_OFFSET_BACKWARD_TWID_NEON_256_F32 60
+
+#define ARM_NEON_RFFT_TWIDDLES_512_F32_LEN 1008
+extern const float32_t arm_neon_rfft_twiddles_512_f32[ARM_NEON_RFFT_TWIDDLES_512_F32_LEN];
+#define ARM_NEON_RFFT_FACTORS_512_F32_LEN 4
+extern const uint32_t arm_neon_rfft_factors_512_f32[ARM_NEON_RFFT_FACTORS_512_F32_LEN];
+#define ARM_NEON_RFFT_TWIDDLES_NEON_512_F32_LEN 240
+extern const float32_t arm_neon_rfft_twiddles_neon_512_f32[ARM_NEON_RFFT_TWIDDLES_NEON_512_F32_LEN];
+#define ARM_NEON_RFFT_FACTORS_NEON_512_F32_LEN 4
+extern const uint32_t arm_neon_rfft_factors_neon_512_f32[ARM_NEON_RFFT_FACTORS_NEON_512_F32_LEN];
+#define ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_512_F32_LEN 384
+extern const float32_t arm_neon_rfft_super_twiddles_neon_512_f32[ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_512_F32_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_RFFT_512_F32 504
+#define ARM_NE10_OFFSET_BACKWARD_TWID_NEON_512_F32 120
+
+#define ARM_NEON_RFFT_TWIDDLES_1024_F32_LEN 2040
+extern const float32_t arm_neon_rfft_twiddles_1024_f32[ARM_NEON_RFFT_TWIDDLES_1024_F32_LEN];
+#define ARM_NEON_RFFT_FACTORS_1024_F32_LEN 4
+extern const uint32_t arm_neon_rfft_factors_1024_f32[ARM_NEON_RFFT_FACTORS_1024_F32_LEN];
+#define ARM_NEON_RFFT_TWIDDLES_NEON_1024_F32_LEN 504
+extern const float32_t arm_neon_rfft_twiddles_neon_1024_f32[ARM_NEON_RFFT_TWIDDLES_NEON_1024_F32_LEN];
+#define ARM_NEON_RFFT_FACTORS_NEON_1024_F32_LEN 4
+extern const uint32_t arm_neon_rfft_factors_neon_1024_f32[ARM_NEON_RFFT_FACTORS_NEON_1024_F32_LEN];
+#define ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_1024_F32_LEN 768
+extern const float32_t arm_neon_rfft_super_twiddles_neon_1024_f32[ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_1024_F32_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_RFFT_1024_F32 1020
+#define ARM_NE10_OFFSET_BACKWARD_TWID_NEON_1024_F32 252
+
+#define ARM_NEON_RFFT_TWIDDLES_2048_F32_LEN 4080
+extern const float32_t arm_neon_rfft_twiddles_2048_f32[ARM_NEON_RFFT_TWIDDLES_2048_F32_LEN];
+#define ARM_NEON_RFFT_FACTORS_2048_F32_LEN 4
+extern const uint32_t arm_neon_rfft_factors_2048_f32[ARM_NEON_RFFT_FACTORS_2048_F32_LEN];
+#define ARM_NEON_RFFT_TWIDDLES_NEON_2048_F32_LEN 1008
+extern const float32_t arm_neon_rfft_twiddles_neon_2048_f32[ARM_NEON_RFFT_TWIDDLES_NEON_2048_F32_LEN];
+#define ARM_NEON_RFFT_FACTORS_NEON_2048_F32_LEN 4
+extern const uint32_t arm_neon_rfft_factors_neon_2048_f32[ARM_NEON_RFFT_FACTORS_NEON_2048_F32_LEN];
+#define ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_2048_F32_LEN 1536
+extern const float32_t arm_neon_rfft_super_twiddles_neon_2048_f32[ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_2048_F32_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_RFFT_2048_F32 2040
+#define ARM_NE10_OFFSET_BACKWARD_TWID_NEON_2048_F32 504
+
+#define ARM_NEON_RFFT_TWIDDLES_4096_F32_LEN 8184
+extern const float32_t arm_neon_rfft_twiddles_4096_f32[ARM_NEON_RFFT_TWIDDLES_4096_F32_LEN];
+#define ARM_NEON_RFFT_FACTORS_4096_F32_LEN 4
+extern const uint32_t arm_neon_rfft_factors_4096_f32[ARM_NEON_RFFT_FACTORS_4096_F32_LEN];
+#define ARM_NEON_RFFT_TWIDDLES_NEON_4096_F32_LEN 2040
+extern const float32_t arm_neon_rfft_twiddles_neon_4096_f32[ARM_NEON_RFFT_TWIDDLES_NEON_4096_F32_LEN];
+#define ARM_NEON_RFFT_FACTORS_NEON_4096_F32_LEN 4
+extern const uint32_t arm_neon_rfft_factors_neon_4096_f32[ARM_NEON_RFFT_FACTORS_NEON_4096_F32_LEN];
+#define ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_4096_F32_LEN 3072
+extern const float32_t arm_neon_rfft_super_twiddles_neon_4096_f32[ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_4096_F32_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_RFFT_4096_F32 4092
+#define ARM_NE10_OFFSET_BACKWARD_TWID_NEON_4096_F32 1020
+
+#define ARM_NEON_RFFT_TWIDDLES_16_Q31_LEN 0
+extern const q31_t *arm_neon_rfft_twiddles_16_q31;
+
+#define ARM_NEON_RFFT_FACTORS_16_Q31_LEN 4
+extern const uint32_t arm_neon_rfft_factors_16_q31[ARM_NEON_RFFT_FACTORS_16_Q31_LEN];
+#define ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_16_Q31_LEN 8
+extern const q31_t arm_neon_rfft_super_twiddles_neon_16_q31[ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_16_Q31_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_RFFT_16_Q31 0
+
+#define ARM_NEON_RFFT_TWIDDLES_32_Q31_LEN 24
+extern const q31_t arm_neon_rfft_twiddles_32_q31[ARM_NEON_RFFT_TWIDDLES_32_Q31_LEN];
+#define ARM_NEON_RFFT_FACTORS_32_Q31_LEN 4
+extern const uint32_t arm_neon_rfft_factors_32_q31[ARM_NEON_RFFT_FACTORS_32_Q31_LEN];
+#define ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_32_Q31_LEN 16
+extern const q31_t arm_neon_rfft_super_twiddles_neon_32_q31[ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_32_Q31_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_RFFT_32_Q31 12
+
+#define ARM_NEON_RFFT_TWIDDLES_64_Q31_LEN 48
+extern const q31_t arm_neon_rfft_twiddles_64_q31[ARM_NEON_RFFT_TWIDDLES_64_Q31_LEN];
+#define ARM_NEON_RFFT_FACTORS_64_Q31_LEN 4
+extern const uint32_t arm_neon_rfft_factors_64_q31[ARM_NEON_RFFT_FACTORS_64_Q31_LEN];
+#define ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_64_Q31_LEN 32
+extern const q31_t arm_neon_rfft_super_twiddles_neon_64_q31[ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_64_Q31_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_RFFT_64_Q31 24
+
+#define ARM_NEON_RFFT_TWIDDLES_128_Q31_LEN 120
+extern const q31_t arm_neon_rfft_twiddles_128_q31[ARM_NEON_RFFT_TWIDDLES_128_Q31_LEN];
+#define ARM_NEON_RFFT_FACTORS_128_Q31_LEN 4
+extern const uint32_t arm_neon_rfft_factors_128_q31[ARM_NEON_RFFT_FACTORS_128_Q31_LEN];
+#define ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_128_Q31_LEN 64
+extern const q31_t arm_neon_rfft_super_twiddles_neon_128_q31[ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_128_Q31_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_RFFT_128_Q31 60
+
+#define ARM_NEON_RFFT_TWIDDLES_256_Q31_LEN 240
+extern const q31_t arm_neon_rfft_twiddles_256_q31[ARM_NEON_RFFT_TWIDDLES_256_Q31_LEN];
+#define ARM_NEON_RFFT_FACTORS_256_Q31_LEN 4
+extern const uint32_t arm_neon_rfft_factors_256_q31[ARM_NEON_RFFT_FACTORS_256_Q31_LEN];
+#define ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_256_Q31_LEN 128
+extern const q31_t arm_neon_rfft_super_twiddles_neon_256_q31[ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_256_Q31_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_RFFT_256_Q31 120
+
+#define ARM_NEON_RFFT_TWIDDLES_512_Q31_LEN 504
+extern const q31_t arm_neon_rfft_twiddles_512_q31[ARM_NEON_RFFT_TWIDDLES_512_Q31_LEN];
+#define ARM_NEON_RFFT_FACTORS_512_Q31_LEN 4
+extern const uint32_t arm_neon_rfft_factors_512_q31[ARM_NEON_RFFT_FACTORS_512_Q31_LEN];
+#define ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_512_Q31_LEN 256
+extern const q31_t arm_neon_rfft_super_twiddles_neon_512_q31[ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_512_Q31_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_RFFT_512_Q31 252
+
+#define ARM_NEON_RFFT_TWIDDLES_1024_Q31_LEN 1008
+extern const q31_t arm_neon_rfft_twiddles_1024_q31[ARM_NEON_RFFT_TWIDDLES_1024_Q31_LEN];
+#define ARM_NEON_RFFT_FACTORS_1024_Q31_LEN 4
+extern const uint32_t arm_neon_rfft_factors_1024_q31[ARM_NEON_RFFT_FACTORS_1024_Q31_LEN];
+#define ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_1024_Q31_LEN 512
+extern const q31_t arm_neon_rfft_super_twiddles_neon_1024_q31[ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_1024_Q31_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_RFFT_1024_Q31 504
+
+#define ARM_NEON_RFFT_TWIDDLES_2048_Q31_LEN 2040
+extern const q31_t arm_neon_rfft_twiddles_2048_q31[ARM_NEON_RFFT_TWIDDLES_2048_Q31_LEN];
+#define ARM_NEON_RFFT_FACTORS_2048_Q31_LEN 4
+extern const uint32_t arm_neon_rfft_factors_2048_q31[ARM_NEON_RFFT_FACTORS_2048_Q31_LEN];
+#define ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_2048_Q31_LEN 1024
+extern const q31_t arm_neon_rfft_super_twiddles_neon_2048_q31[ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_2048_Q31_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_RFFT_2048_Q31 1020
+
+#define ARM_NEON_RFFT_TWIDDLES_4096_Q31_LEN 4080
+extern const q31_t arm_neon_rfft_twiddles_4096_q31[ARM_NEON_RFFT_TWIDDLES_4096_Q31_LEN];
+#define ARM_NEON_RFFT_FACTORS_4096_Q31_LEN 4
+extern const uint32_t arm_neon_rfft_factors_4096_q31[ARM_NEON_RFFT_FACTORS_4096_Q31_LEN];
+#define ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_4096_Q31_LEN 2048
+extern const q31_t arm_neon_rfft_super_twiddles_neon_4096_q31[ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_4096_Q31_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_RFFT_4096_Q31 2040
+
+#define ARM_NEON_RFFT_TWIDDLES_8192_Q31_LEN 8184
+extern const q31_t arm_neon_rfft_twiddles_8192_q31[ARM_NEON_RFFT_TWIDDLES_8192_Q31_LEN];
+#define ARM_NEON_RFFT_FACTORS_8192_Q31_LEN 4
+extern const uint32_t arm_neon_rfft_factors_8192_q31[ARM_NEON_RFFT_FACTORS_8192_Q31_LEN];
+#define ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_8192_Q31_LEN 4096
+extern const q31_t arm_neon_rfft_super_twiddles_neon_8192_q31[ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_8192_Q31_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_RFFT_8192_Q31 4092
+
+#define ARM_NEON_RFFT_TWIDDLES_16_Q15_LEN 0
+extern const q15_t *arm_neon_rfft_twiddles_16_q15;
+
+#define ARM_NEON_RFFT_FACTORS_16_Q15_LEN 4
+extern const uint32_t arm_neon_rfft_factors_16_q15[ARM_NEON_RFFT_FACTORS_16_Q15_LEN];
+#define ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_16_Q15_LEN 8
+extern const q15_t arm_neon_rfft_super_twiddles_neon_16_q15[ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_16_Q15_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_RFFT_16_Q15 0
+
+#define ARM_NEON_RFFT_TWIDDLES_32_Q15_LEN 24
+extern const q15_t arm_neon_rfft_twiddles_32_q15[ARM_NEON_RFFT_TWIDDLES_32_Q15_LEN];
+#define ARM_NEON_RFFT_FACTORS_32_Q15_LEN 4
+extern const uint32_t arm_neon_rfft_factors_32_q15[ARM_NEON_RFFT_FACTORS_32_Q15_LEN];
+#define ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_32_Q15_LEN 16
+extern const q15_t arm_neon_rfft_super_twiddles_neon_32_q15[ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_32_Q15_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_RFFT_32_Q15 12
+
+#define ARM_NEON_RFFT_TWIDDLES_64_Q15_LEN 48
+extern const q15_t arm_neon_rfft_twiddles_64_q15[ARM_NEON_RFFT_TWIDDLES_64_Q15_LEN];
+#define ARM_NEON_RFFT_FACTORS_64_Q15_LEN 4
+extern const uint32_t arm_neon_rfft_factors_64_q15[ARM_NEON_RFFT_FACTORS_64_Q15_LEN];
+#define ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_64_Q15_LEN 32
+extern const q15_t arm_neon_rfft_super_twiddles_neon_64_q15[ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_64_Q15_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_RFFT_64_Q15 24
+
+#define ARM_NEON_RFFT_TWIDDLES_128_Q15_LEN 120
+extern const q15_t arm_neon_rfft_twiddles_128_q15[ARM_NEON_RFFT_TWIDDLES_128_Q15_LEN];
+#define ARM_NEON_RFFT_FACTORS_128_Q15_LEN 4
+extern const uint32_t arm_neon_rfft_factors_128_q15[ARM_NEON_RFFT_FACTORS_128_Q15_LEN];
+#define ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_128_Q15_LEN 64
+extern const q15_t arm_neon_rfft_super_twiddles_neon_128_q15[ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_128_Q15_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_RFFT_128_Q15 60
+
+#define ARM_NEON_RFFT_TWIDDLES_256_Q15_LEN 240
+extern const q15_t arm_neon_rfft_twiddles_256_q15[ARM_NEON_RFFT_TWIDDLES_256_Q15_LEN];
+#define ARM_NEON_RFFT_FACTORS_256_Q15_LEN 4
+extern const uint32_t arm_neon_rfft_factors_256_q15[ARM_NEON_RFFT_FACTORS_256_Q15_LEN];
+#define ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_256_Q15_LEN 128
+extern const q15_t arm_neon_rfft_super_twiddles_neon_256_q15[ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_256_Q15_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_RFFT_256_Q15 120
+
+#define ARM_NEON_RFFT_TWIDDLES_512_Q15_LEN 504
+extern const q15_t arm_neon_rfft_twiddles_512_q15[ARM_NEON_RFFT_TWIDDLES_512_Q15_LEN];
+#define ARM_NEON_RFFT_FACTORS_512_Q15_LEN 4
+extern const uint32_t arm_neon_rfft_factors_512_q15[ARM_NEON_RFFT_FACTORS_512_Q15_LEN];
+#define ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_512_Q15_LEN 256
+extern const q15_t arm_neon_rfft_super_twiddles_neon_512_q15[ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_512_Q15_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_RFFT_512_Q15 252
+
+#define ARM_NEON_RFFT_TWIDDLES_1024_Q15_LEN 1008
+extern const q15_t arm_neon_rfft_twiddles_1024_q15[ARM_NEON_RFFT_TWIDDLES_1024_Q15_LEN];
+#define ARM_NEON_RFFT_FACTORS_1024_Q15_LEN 4
+extern const uint32_t arm_neon_rfft_factors_1024_q15[ARM_NEON_RFFT_FACTORS_1024_Q15_LEN];
+#define ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_1024_Q15_LEN 512
+extern const q15_t arm_neon_rfft_super_twiddles_neon_1024_q15[ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_1024_Q15_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_RFFT_1024_Q15 504
+
+#define ARM_NEON_RFFT_TWIDDLES_2048_Q15_LEN 2040
+extern const q15_t arm_neon_rfft_twiddles_2048_q15[ARM_NEON_RFFT_TWIDDLES_2048_Q15_LEN];
+#define ARM_NEON_RFFT_FACTORS_2048_Q15_LEN 4
+extern const uint32_t arm_neon_rfft_factors_2048_q15[ARM_NEON_RFFT_FACTORS_2048_Q15_LEN];
+#define ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_2048_Q15_LEN 1024
+extern const q15_t arm_neon_rfft_super_twiddles_neon_2048_q15[ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_2048_Q15_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_RFFT_2048_Q15 1020
+
+#define ARM_NEON_RFFT_TWIDDLES_4096_Q15_LEN 4080
+extern const q15_t arm_neon_rfft_twiddles_4096_q15[ARM_NEON_RFFT_TWIDDLES_4096_Q15_LEN];
+#define ARM_NEON_RFFT_FACTORS_4096_Q15_LEN 4
+extern const uint32_t arm_neon_rfft_factors_4096_q15[ARM_NEON_RFFT_FACTORS_4096_Q15_LEN];
+#define ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_4096_Q15_LEN 2048
+extern const q15_t arm_neon_rfft_super_twiddles_neon_4096_q15[ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_4096_Q15_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_RFFT_4096_Q15 2040
+
+#define ARM_NEON_RFFT_TWIDDLES_8192_Q15_LEN 8184
+extern const q15_t arm_neon_rfft_twiddles_8192_q15[ARM_NEON_RFFT_TWIDDLES_8192_Q15_LEN];
+#define ARM_NEON_RFFT_FACTORS_8192_Q15_LEN 4
+extern const uint32_t arm_neon_rfft_factors_8192_q15[ARM_NEON_RFFT_FACTORS_8192_Q15_LEN];
+#define ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_8192_Q15_LEN 4096
+extern const q15_t arm_neon_rfft_super_twiddles_neon_8192_q15[ARM_NEON_RFFT_SUPER_TWIDDLES_NEON_8192_Q15_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_RFFT_8192_Q15 4092
+
+#define ARM_NEON_TWIDDLES_16_F32_LEN 24
+extern const float32_t arm_neon_twiddles_16_f32[ARM_NEON_TWIDDLES_16_F32_LEN];
+#define ARM_NEON_FACTORS_16_F32_LEN 4
+extern const uint32_t arm_neon_factors_16_f32[ARM_NEON_FACTORS_16_F32_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_16_F32 12
+#define ARM_NEON_TWIDDLES_32_F32_LEN 48
+extern const float32_t arm_neon_twiddles_32_f32[ARM_NEON_TWIDDLES_32_F32_LEN];
+#define ARM_NEON_FACTORS_32_F32_LEN 4
+extern const uint32_t arm_neon_factors_32_f32[ARM_NEON_FACTORS_32_F32_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_32_F32 24
+#define ARM_NEON_TWIDDLES_64_F32_LEN 120
+extern const float32_t arm_neon_twiddles_64_f32[ARM_NEON_TWIDDLES_64_F32_LEN];
+#define ARM_NEON_FACTORS_64_F32_LEN 4
+extern const uint32_t arm_neon_factors_64_f32[ARM_NEON_FACTORS_64_F32_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_64_F32 60
+#define ARM_NEON_TWIDDLES_128_F32_LEN 240
+extern const float32_t arm_neon_twiddles_128_f32[ARM_NEON_TWIDDLES_128_F32_LEN];
+#define ARM_NEON_FACTORS_128_F32_LEN 4
+extern const uint32_t arm_neon_factors_128_f32[ARM_NEON_FACTORS_128_F32_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_128_F32 120
+#define ARM_NEON_TWIDDLES_256_F32_LEN 504
+extern const float32_t arm_neon_twiddles_256_f32[ARM_NEON_TWIDDLES_256_F32_LEN];
+#define ARM_NEON_FACTORS_256_F32_LEN 4
+extern const uint32_t arm_neon_factors_256_f32[ARM_NEON_FACTORS_256_F32_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_256_F32 252
+#define ARM_NEON_TWIDDLES_512_F32_LEN 1008
+extern const float32_t arm_neon_twiddles_512_f32[ARM_NEON_TWIDDLES_512_F32_LEN];
+#define ARM_NEON_FACTORS_512_F32_LEN 4
+extern const uint32_t arm_neon_factors_512_f32[ARM_NEON_FACTORS_512_F32_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_512_F32 504
+#define ARM_NEON_TWIDDLES_1024_F32_LEN 2040
+extern const float32_t arm_neon_twiddles_1024_f32[ARM_NEON_TWIDDLES_1024_F32_LEN];
+#define ARM_NEON_FACTORS_1024_F32_LEN 4
+extern const uint32_t arm_neon_factors_1024_f32[ARM_NEON_FACTORS_1024_F32_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_1024_F32 1020
+#define ARM_NEON_TWIDDLES_2048_F32_LEN 4080
+extern const float32_t arm_neon_twiddles_2048_f32[ARM_NEON_TWIDDLES_2048_F32_LEN];
+#define ARM_NEON_FACTORS_2048_F32_LEN 4
+extern const uint32_t arm_neon_factors_2048_f32[ARM_NEON_FACTORS_2048_F32_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_2048_F32 2040
+#define ARM_NEON_TWIDDLES_4096_F32_LEN 8184
+extern const float32_t arm_neon_twiddles_4096_f32[ARM_NEON_TWIDDLES_4096_F32_LEN];
+#define ARM_NEON_FACTORS_4096_F32_LEN 4
+extern const uint32_t arm_neon_factors_4096_f32[ARM_NEON_FACTORS_4096_F32_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_4096_F32 4092
+#define ARM_NEON_TWIDDLES_16_Q31_LEN 24
+extern const q31_t arm_neon_twiddles_16_q31[ARM_NEON_TWIDDLES_16_Q31_LEN];
+#define ARM_NEON_FACTORS_16_Q31_LEN 4
+extern const uint32_t arm_neon_factors_16_q31[ARM_NEON_FACTORS_16_Q31_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_16_Q31 12
+#define ARM_NEON_TWIDDLES_32_Q31_LEN 48
+extern const q31_t arm_neon_twiddles_32_q31[ARM_NEON_TWIDDLES_32_Q31_LEN];
+#define ARM_NEON_FACTORS_32_Q31_LEN 4
+extern const uint32_t arm_neon_factors_32_q31[ARM_NEON_FACTORS_32_Q31_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_32_Q31 24
+#define ARM_NEON_TWIDDLES_64_Q31_LEN 120
+extern const q31_t arm_neon_twiddles_64_q31[ARM_NEON_TWIDDLES_64_Q31_LEN];
+#define ARM_NEON_FACTORS_64_Q31_LEN 4
+extern const uint32_t arm_neon_factors_64_q31[ARM_NEON_FACTORS_64_Q31_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_64_Q31 60
+#define ARM_NEON_TWIDDLES_128_Q31_LEN 240
+extern const q31_t arm_neon_twiddles_128_q31[ARM_NEON_TWIDDLES_128_Q31_LEN];
+#define ARM_NEON_FACTORS_128_Q31_LEN 4
+extern const uint32_t arm_neon_factors_128_q31[ARM_NEON_FACTORS_128_Q31_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_128_Q31 120
+#define ARM_NEON_TWIDDLES_256_Q31_LEN 504
+extern const q31_t arm_neon_twiddles_256_q31[ARM_NEON_TWIDDLES_256_Q31_LEN];
+#define ARM_NEON_FACTORS_256_Q31_LEN 4
+extern const uint32_t arm_neon_factors_256_q31[ARM_NEON_FACTORS_256_Q31_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_256_Q31 252
+#define ARM_NEON_TWIDDLES_512_Q31_LEN 1008
+extern const q31_t arm_neon_twiddles_512_q31[ARM_NEON_TWIDDLES_512_Q31_LEN];
+#define ARM_NEON_FACTORS_512_Q31_LEN 4
+extern const uint32_t arm_neon_factors_512_q31[ARM_NEON_FACTORS_512_Q31_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_512_Q31 504
+#define ARM_NEON_TWIDDLES_1024_Q31_LEN 2040
+extern const q31_t arm_neon_twiddles_1024_q31[ARM_NEON_TWIDDLES_1024_Q31_LEN];
+#define ARM_NEON_FACTORS_1024_Q31_LEN 4
+extern const uint32_t arm_neon_factors_1024_q31[ARM_NEON_FACTORS_1024_Q31_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_1024_Q31 1020
+#define ARM_NEON_TWIDDLES_2048_Q31_LEN 4080
+extern const q31_t arm_neon_twiddles_2048_q31[ARM_NEON_TWIDDLES_2048_Q31_LEN];
+#define ARM_NEON_FACTORS_2048_Q31_LEN 4
+extern const uint32_t arm_neon_factors_2048_q31[ARM_NEON_FACTORS_2048_Q31_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_2048_Q31 2040
+#define ARM_NEON_TWIDDLES_4096_Q31_LEN 8184
+extern const q31_t arm_neon_twiddles_4096_q31[ARM_NEON_TWIDDLES_4096_Q31_LEN];
+#define ARM_NEON_FACTORS_4096_Q31_LEN 4
+extern const uint32_t arm_neon_factors_4096_q31[ARM_NEON_FACTORS_4096_Q31_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_4096_Q31 4092
+#define ARM_NEON_TWIDDLES_16_Q15_LEN 24
+extern const q15_t arm_neon_twiddles_16_q15[ARM_NEON_TWIDDLES_16_Q15_LEN];
+#define ARM_NEON_FACTORS_16_Q15_LEN 4
+extern const uint32_t arm_neon_factors_16_q15[ARM_NEON_FACTORS_16_Q15_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_16_Q15 12
+#define ARM_NEON_TWIDDLES_32_Q15_LEN 48
+extern const q15_t arm_neon_twiddles_32_q15[ARM_NEON_TWIDDLES_32_Q15_LEN];
+#define ARM_NEON_FACTORS_32_Q15_LEN 4
+extern const uint32_t arm_neon_factors_32_q15[ARM_NEON_FACTORS_32_Q15_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_32_Q15 24
+#define ARM_NEON_TWIDDLES_64_Q15_LEN 120
+extern const q15_t arm_neon_twiddles_64_q15[ARM_NEON_TWIDDLES_64_Q15_LEN];
+#define ARM_NEON_FACTORS_64_Q15_LEN 4
+extern const uint32_t arm_neon_factors_64_q15[ARM_NEON_FACTORS_64_Q15_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_64_Q15 60
+#define ARM_NEON_TWIDDLES_128_Q15_LEN 240
+extern const q15_t arm_neon_twiddles_128_q15[ARM_NEON_TWIDDLES_128_Q15_LEN];
+#define ARM_NEON_FACTORS_128_Q15_LEN 4
+extern const uint32_t arm_neon_factors_128_q15[ARM_NEON_FACTORS_128_Q15_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_128_Q15 120
+#define ARM_NEON_TWIDDLES_256_Q15_LEN 504
+extern const q15_t arm_neon_twiddles_256_q15[ARM_NEON_TWIDDLES_256_Q15_LEN];
+#define ARM_NEON_FACTORS_256_Q15_LEN 4
+extern const uint32_t arm_neon_factors_256_q15[ARM_NEON_FACTORS_256_Q15_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_256_Q15 252
+#define ARM_NEON_TWIDDLES_512_Q15_LEN 1008
+extern const q15_t arm_neon_twiddles_512_q15[ARM_NEON_TWIDDLES_512_Q15_LEN];
+#define ARM_NEON_FACTORS_512_Q15_LEN 4
+extern const uint32_t arm_neon_factors_512_q15[ARM_NEON_FACTORS_512_Q15_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_512_Q15 504
+#define ARM_NEON_TWIDDLES_1024_Q15_LEN 2040
+extern const q15_t arm_neon_twiddles_1024_q15[ARM_NEON_TWIDDLES_1024_Q15_LEN];
+#define ARM_NEON_FACTORS_1024_Q15_LEN 4
+extern const uint32_t arm_neon_factors_1024_q15[ARM_NEON_FACTORS_1024_Q15_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_1024_Q15 1020
+#define ARM_NEON_TWIDDLES_2048_Q15_LEN 4080
+extern const q15_t arm_neon_twiddles_2048_q15[ARM_NEON_TWIDDLES_2048_Q15_LEN];
+#define ARM_NEON_FACTORS_2048_Q15_LEN 4
+extern const uint32_t arm_neon_factors_2048_q15[ARM_NEON_FACTORS_2048_Q15_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_2048_Q15 2040
+#define ARM_NEON_TWIDDLES_4096_Q15_LEN 8184
+extern const q15_t arm_neon_twiddles_4096_q15[ARM_NEON_TWIDDLES_4096_Q15_LEN];
+#define ARM_NEON_FACTORS_4096_Q15_LEN 4
+extern const uint32_t arm_neon_factors_4096_q15[ARM_NEON_FACTORS_4096_Q15_LEN];
+#define ARM_NE10_OFFSET_BACKWARD_TWID_4096_Q15 4092
+
+
+#endif /* defined(ARM_MATH_NEON) */
+
+
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /*ARM_NEON_TABLES_H*/
+