summaryrefslogtreecommitdiff
path: root/rts
diff options
context:
space:
mode:
authorMoritz Angermann <moritz.angermann@gmail.com>2020-07-07 10:54:21 +0800
committerMarge Bot <ben+marge-bot@smart-cactus.org>2020-07-07 13:56:01 -0400
commitcdfeb3f24f76e8fd30452016676e56fbc827789a (patch)
treee8a55e972552f04f3be15845cabc2384382d62d6 /rts
parent7abffced01f5680efafe44f6be2733eab321b039 (diff)
downloadhaskell-cdfeb3f24f76e8fd30452016676e56fbc827789a.tar.gz
AArch32 symbols only on aarch32.
Diffstat (limited to 'rts')
-rw-r--r--rts/RtsSymbols.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/rts/RtsSymbols.c b/rts/RtsSymbols.c
index 84c09748e9..ff32932ea9 100644
--- a/rts/RtsSymbols.c
+++ b/rts/RtsSymbols.c
@@ -1071,7 +1071,8 @@
/* SymI_NeedsProto(__popcountti2) */ \
/* These functions return the number of bits set in a. */\
SymI_NeedsProto(__bswapsi2) \
- SymI_NeedsProto(__bswapdi2) \
+ SymI_NeedsProto(__bswapdi2)
+#define RTS_LIBGCC_SYMBOLS_aarch32 \
/* armv6l */\
/* TODO: should check for __ARM_EABI__ */\
SymI_NeedsProto(__aeabi_d2f) \
@@ -1142,12 +1143,12 @@
SymI_NeedsProto(__floatsitf) \
SymI_NeedsProto(__floatunsitf)
-#if defined(__GNUC__) && SIZEOF_VOID_P <= 4 && !defined(_ABIN32)
+#if defined(__GNUC__) && SIZEOF_VOID_P <= 4 && defined(arm_HOST_OS)
+#define RTS_LIBGCC_SYMBOLS RTS_LIBGCC_SYMBOLS_32 RTS_LIBGCC_SYMBOLS_aarch32
+#elif defined(__GNUC__) && SIZEOF_VOID_P <= 4 && !defined(_ABIN32)
#define RTS_LIBGCC_SYMBOLS RTS_LIBGCC_SYMBOLS_32
#elif defined(__GNUC__) && SIZEOF_VOID_P == 8 && defined(aarch64_HOST_OS)
-#define RTS_LIBGCC_SYMBOLS \
- RTS_LIBGCC_SYMBOLS_64 \
- RTS_LIBGCC_SYMBOLS_aarch64
+#define RTS_LIBGCC_SYMBOLS RTS_LIBGCC_SYMBOLS_64 RTS_LIBGCC_SYMBOLS_aarch64
#elif defined(__GNUC__) && SIZEOF_VOID_P == 8
#define RTS_LIBGCC_SYMBOLS RTS_LIBGCC_SYMBOLS_64
#else