Detect more platforms

extensions
Volodymyr Shymanskyy 4 years ago
parent 5acfae321c
commit 2e92a9ed12

@ -46,38 +46,71 @@
# if defined(M3_COMPILER_CLANG) || defined(M3_COMPILER_GCC) # if defined(M3_COMPILER_CLANG) || defined(M3_COMPILER_GCC)
# if defined(__wasm__) # if defined(__wasm__)
# define M3_ARCH "wasm" # define M3_ARCH "wasm"
# elif defined(__x86_64__) # elif defined(__x86_64__)
# define M3_ARCH "x86_64" # define M3_ARCH "x86_64"
# elif defined(__i386__) # elif defined(__i386__)
# define M3_ARCH "x86" # define M3_ARCH "x86"
# elif defined(__aarch64__) # elif defined(__aarch64__)
# define M3_ARCH "arm64-v8a" # define M3_ARCH "arm64-v8a"
# elif defined(__arm__) # elif defined(__arm__)
# if defined(__ARM_ARCH_7A__) # if defined(__ARM_ARCH_7A__)
# if defined(__ARM_NEON__) # if defined(__ARM_NEON__)
# if defined(__ARM_PCS_VFP) # if defined(__ARM_PCS_VFP)
# define M3_ARCH "armeabi-v7a/NEON (hard-float)" # define M3_ARCH "arm-v7a/NEON hard-float"
# else # else
# define M3_ARCH "armeabi-v7a/NEON" # define M3_ARCH "arm-v7a/NEON"
# endif # endif
# else # else
# if defined(__ARM_PCS_VFP) # if defined(__ARM_PCS_VFP)
# define M3_ARCH "armeabi-v7a (hard-float)" # define M3_ARCH "arm-v7a hard-float"
# else # else
# define M3_ARCH "armeabi-v7a" # define M3_ARCH "arm-v7a"
# endif # endif
# endif # endif
# else # else
# define M3_ARCH "armeabi" # define M3_ARCH "arm"
# endif # endif
# elif defined(__mips64)
# define M3_ARCH "mips64"
# elif defined(__mips__) # elif defined(__mips__)
# define M3_ARCH "mips" # if defined(__MIPSEB__) && defined(__mips64)
# define M3_ARCH "mips64 " _MIPS_ARCH
# elif defined(__MIPSEL__) && defined(__mips64)
# define M3_ARCH "mips64el " _MIPS_ARCH
# elif defined(__MIPSEB__)
# define M3_ARCH "mips " _MIPS_ARCH
# elif defined(__MIPSEL__)
# define M3_ARCH "mipsel " _MIPS_ARCH
# endif
# elif defined(__PPC__)
# if defined(__PPC64__) && defined(__LITTLE_ENDIAN__)
# define M3_ARCH "ppc64le"
# elif defined(__PPC64__)
# define M3_ARCH "ppc64"
# else
# define M3_ARCH "ppc"
# endif
# elif defined(__sparc__)
# if defined(__arch64__)
# define M3_ARCH "sparc64"
# else
# define M3_ARCH "sparc"
# endif
# elif defined(__s390x__)
# define M3_ARCH "s390x"
# elif defined(__xtensa__) # elif defined(__xtensa__)
# define M3_ARCH "xtensa" # define M3_ARCH "xtensa"
# elif defined(__arc__) # elif defined(__arc__)
# define M3_ARCH "arc32" # define M3_ARCH "arc32"
# elif defined(__riscv) # elif defined(__riscv)
# if defined(__riscv_32e) # if defined(__riscv_32e)
# define _M3_ARCH_RV "rv32e" # define _M3_ARCH_RV "rv32e"
@ -114,6 +147,7 @@
# define _M3_ARCH_RV_C _M3_ARCH_RV_D # define _M3_ARCH_RV_C _M3_ARCH_RV_D
# endif # endif
# define M3_ARCH _M3_ARCH_RV_C # define M3_ARCH _M3_ARCH_RV_C
# elif defined(__AVR__) # elif defined(__AVR__)
# define M3_ARCH "avr" # define M3_ARCH "avr"
# endif # endif

Loading…
Cancel
Save