diff options
author | Moritz Angermann <moritz.angermann@gmail.com> | 2017-06-08 14:58:38 -0400 |
---|---|---|
committer | Ben Gamari <ben@smart-cactus.org> | 2017-06-08 15:35:58 -0400 |
commit | 1c83fd814b12754be8af211a387cec906ca198b3 (patch) | |
tree | 1c93c8791e62885462da53100f0ccd4aafd9dd2c /rts/LinkerInternals.h | |
parent | 7bb2aa00bd93e0f3f00def586094e349e39035dd (diff) | |
download | haskell-1c83fd814b12754be8af211a387cec906ca198b3.tar.gz |
[linker] fix armv7 & add aarch64
This adds Global Offset Table logic, as well as PLT like logic for armv7
and aarch64; which replaces the preexisting symbolExtras logic, by
placing the PLT tables next to the separtely loaded sections. This is
needed to ensure that the symbol stubs are in range.
Reviewers: bgamari, austin, erikd, simonmar
Reviewed By: bgamari
Subscribers: Ericson2314, ryantrinkle, rwbarton, thomie
Differential Revision: https://phabricator.haskell.org/D3448
Diffstat (limited to 'rts/LinkerInternals.h')
-rw-r--r-- | rts/LinkerInternals.h | 11 |
1 files changed, 1 insertions, 10 deletions
diff --git a/rts/LinkerInternals.h b/rts/LinkerInternals.h index 48c43ebbbe..05fa7701d5 100644 --- a/rts/LinkerInternals.h +++ b/rts/LinkerInternals.h @@ -111,16 +111,7 @@ typedef struct ForeignExportStablePtr_ { struct ForeignExportStablePtr_ *next; } ForeignExportStablePtr; -#if defined(powerpc_HOST_ARCH) || defined(x86_64_HOST_ARCH) \ - || defined(arm_HOST_ARCH) -/* ios currently uses adjacent got tables, and no symbol extras */ -#if !defined(ios_HOST_OS) -#define NEED_SYMBOL_EXTRAS 1 -#endif /* ios_HOST_OS */ -#endif - -/* iOS Simulator however, needs symbol extras for now (#13678) */ -#if defined(ios_HOST_OS) && defined(x86_64_HOST_ARCH) +#if defined(powerpc_HOST_ARCH) || defined(x86_64_HOST_ARCH) #define NEED_SYMBOL_EXTRAS 1 #endif |