1 #include <cstdio>
2 #include "arm_math_types.h"
3 extern int testmain(const char *);
4 
5 extern "C" const char *patternData;
6 
7 //! \note for IAR
8 #ifdef __IS_COMPILER_IAR__
9 #   undef __IS_COMPILER_IAR__
10 #endif
11 #if defined(__IAR_SYSTEMS_ICC__)
12 #   define __IS_COMPILER_IAR__                 1
13 #endif
14 
15 
16 
17 
18 //! \note for arm compiler 5
19 #ifdef __IS_COMPILER_ARM_COMPILER_5__
20 #   undef __IS_COMPILER_ARM_COMPILER_5__
21 #endif
22 #if ((__ARMCC_VERSION >= 5000000) && (__ARMCC_VERSION < 6000000))
23 #   define __IS_COMPILER_ARM_COMPILER_5__      1
24 #endif
25 //! @}
26 
27 //! \note for arm compiler 6
28 #ifdef __IS_COMPILER_ARM_COMPILER_6__
29 #   undef __IS_COMPILER_ARM_COMPILER_6__
30 #endif
31 #if ((__ARMCC_VERSION >= 6000000) && (__ARMCC_VERSION < 7000000))
32 #   define __IS_COMPILER_ARM_COMPILER_6__      1
33 #endif
34 
35 #ifdef __IS_COMPILER_LLVM__
36 #   undef  __IS_COMPILER_LLVM__
37 #endif
38 #if defined(__clang__) && !__IS_COMPILER_ARM_COMPILER_6__
39 #   define __IS_COMPILER_LLVM__                1
40 #else
41 //! \note for gcc
42 #ifdef __IS_COMPILER_GCC__
43 #   undef __IS_COMPILER_GCC__
44 #endif
45 #if defined(__GNUC__) && !(__IS_COMPILER_ARM_COMPILER_6__ || __IS_COMPILER_LLVM__)
46 #   define __IS_COMPILER_GCC__                 1
47 #endif
48 //! @}
49 #endif
50 //! @}
51 
52 #if defined(ARMCM33_DSP_FP) && defined(__IS_COMPILER_GCC__)
53 extern "C" void _exit(int return_code);
54 #endif
55 
56 
main()57 int main()
58 {
59     int r;
60 
61     r=testmain(patternData);
62 
63     /*
64 
65     Temporary solution to solve problems with IPSS support for M33.
66 
67     */
68 
69     #if defined(ARMCM33_DSP_FP) && defined(__IS_COMPILER_GCC__)
70     _exit(r);
71     #endif
72 
73     return(r);
74 }
75