diff options
author | Sergei Trofimovich <siarheit@google.com> | 2014-12-14 14:30:12 +0000 |
---|---|---|
committer | Sergei Trofimovich <siarheit@google.com> | 2014-12-14 14:30:12 +0000 |
commit | fa31e8f4a0f853848d96549a429083941877bf8d (patch) | |
tree | c45f86f090dd27aae6dbe522336ab6e74e13fbb4 /mk | |
parent | ef7eb8f30532c8f85f05b318c85c7d819f61d715 (diff) | |
download | haskell-fa31e8f4a0f853848d96549a429083941877bf8d.tar.gz |
powerpc: fix and enable shared libraries by default on linux
Summary:
And fix things all the way down to it. Namely:
- remove 'r30' from free registers, it's an .LCTOC1 register
for gcc. generated .plt stubs expect it to be initialised.
- fix PicBase computation, which originally forgot to use 'tmp'
reg in 'initializePicBase_ppc.fetchPC'
- mark 'ForeighTarget's as implicitly using 'PicBase' register
(see comment for details)
- add 64-bit MO_Sub and test on alloclimit3/4 regtests
- fix dynamic label offsets to match with .LCTOC1 offset
Signed-off-by: Sergei Trofimovich <siarheit@google.com>
Test Plan: validate passes equal amount of vanilla/dyn tests
Reviewers: simonmar, erikd, austin
Reviewed By: erikd, austin
Subscribers: carter, thomie
Differential Revision: https://phabricator.haskell.org/D560
GHC Trac Issues: #8024, #9831
Diffstat (limited to 'mk')
-rw-r--r-- | mk/config.mk.in | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/mk/config.mk.in b/mk/config.mk.in index 0f5820f620..8f134bcdfb 100644 --- a/mk/config.mk.in +++ b/mk/config.mk.in @@ -95,7 +95,7 @@ TargetElf = YES endif # Some platforms don't support shared libraries -NoSharedLibsPlatformList = powerpc-unknown-linux \ +NoSharedLibsPlatformList = \ x86_64-unknown-mingw32 \ i386-unknown-mingw32 |