| #include <cstdio> |
| #include "arm_math_types.h" |
| extern int testmain(const char *); |
| |
| extern "C" const char *patternData; |
| |
| //! \note for IAR |
| #ifdef __IS_COMPILER_IAR__ |
| # undef __IS_COMPILER_IAR__ |
| #endif |
| #if defined(__IAR_SYSTEMS_ICC__) |
| # define __IS_COMPILER_IAR__ 1 |
| #endif |
| |
| |
| |
| |
| //! \note for arm compiler 5 |
| #ifdef __IS_COMPILER_ARM_COMPILER_5__ |
| # undef __IS_COMPILER_ARM_COMPILER_5__ |
| #endif |
| #if ((__ARMCC_VERSION >= 5000000) && (__ARMCC_VERSION < 6000000)) |
| # define __IS_COMPILER_ARM_COMPILER_5__ 1 |
| #endif |
| //! @} |
| |
| //! \note for arm compiler 6 |
| #ifdef __IS_COMPILER_ARM_COMPILER_6__ |
| # undef __IS_COMPILER_ARM_COMPILER_6__ |
| #endif |
| #if ((__ARMCC_VERSION >= 6000000) && (__ARMCC_VERSION < 7000000)) |
| # define __IS_COMPILER_ARM_COMPILER_6__ 1 |
| #endif |
| |
| #ifdef __IS_COMPILER_LLVM__ |
| # undef __IS_COMPILER_LLVM__ |
| #endif |
| #if defined(__clang__) && !__IS_COMPILER_ARM_COMPILER_6__ |
| # define __IS_COMPILER_LLVM__ 1 |
| #else |
| //! \note for gcc |
| #ifdef __IS_COMPILER_GCC__ |
| # undef __IS_COMPILER_GCC__ |
| #endif |
| #if defined(__GNUC__) && !(__IS_COMPILER_ARM_COMPILER_6__ || __IS_COMPILER_LLVM__) |
| # define __IS_COMPILER_GCC__ 1 |
| #endif |
| //! @} |
| #endif |
| //! @} |
| |
| #if defined(ARMCM33_DSP_FP) && defined(__IS_COMPILER_GCC__) |
| extern "C" void _exit(int return_code); |
| #endif |
| |
| |
| int main() |
| { |
| int r; |
| |
| r=testmain(patternData); |
| |
| /* |
| |
| Temporary solution to solve problems with IPSS support for M33. |
| |
| */ |
| |
| #if defined(ARMCM33_DSP_FP) && defined(__IS_COMPILER_GCC__) |
| _exit(r); |
| #endif |
| |
| return(r); |
| } |