[commit: ghc] ghc-8.2: Add support for producing position-independent executables (f701e15)

git at git.haskell.org git at git.haskell.org
Tue Oct 3 14:48:41 UTC 2017


Repository : ssh://git@git.haskell.org/ghc

On branch  : ghc-8.2
Link       : http://ghc.haskell.org/trac/ghc/changeset/f701e15bc0d945ea059aa5ebb4bbd506a4f1d7a3/ghc

>---------------------------------------------------------------

commit f701e15bc0d945ea059aa5ebb4bbd506a4f1d7a3
Author: Ben Gamari <bgamari.foss at gmail.com>
Date:   Tue Aug 22 11:41:47 2017 -0400

    Add support for producing position-independent executables
    
    Previously due to #12759 we disabled PIE support entirely. However, this
    breaks the user's ability to produce PIEs. Add an explicit flag, -fPIE,
    allowing the user to build PIEs.
    
    Test Plan: Validate
    
    Reviewers: rwbarton, austin, simonmar
    
    Subscribers: trommler, simonmar, trofi, jrtc27, thomie
    
    GHC Trac Issues: #12759, #13702
    
    Differential Revision: https://phabricator.haskell.org/D3589
    
    (cherry-picked from commit 3625728a0e3a9b56c2b85ae7ea8bcabdd83ece6a)


>---------------------------------------------------------------

f701e15bc0d945ea059aa5ebb4bbd506a4f1d7a3
 compiler/cmm/CmmPipeline.hs           |  2 +-
 compiler/codeGen/StgCmmCon.hs         |  4 +--
 compiler/main/DriverPipeline.hs       | 10 +++-----
 compiler/main/DynFlags.hs             | 48 ++++++++++++++++++++++++++---------
 compiler/main/SysTools.hs             | 15 +----------
 compiler/nativeGen/AsmCodeGen.hs      |  6 ++---
 compiler/nativeGen/PIC.hs             | 33 ++++++++++++------------
 compiler/nativeGen/PPC/CodeGen.hs     |  6 ++---
 compiler/nativeGen/SPARC/CodeGen.hs   |  2 +-
 compiler/nativeGen/X86/CodeGen.hs     |  4 +--
 docs/users_guide/phases.rst           | 24 ++++++++++++++++++
 docs/users_guide/shared_libs.rst      |  4 +++
 testsuite/tests/dynlibs/Makefile      |  6 +++++
 testsuite/tests/dynlibs/T13702.hs     |  9 +++++++
 testsuite/tests/dynlibs/T13702.stdout |  2 ++
 testsuite/tests/dynlibs/T13702a.hs    | 12 +++++++++
 testsuite/tests/dynlibs/all.T         |  4 +++
 17 files changed, 131 insertions(+), 60 deletions(-)

Diff suppressed because of size. To see it, use:

    git diff-tree --root --patch-with-stat --no-color --find-copies-harder --ignore-space-at-eol --cc f701e15bc0d945ea059aa5ebb4bbd506a4f1d7a3


More information about the ghc-commits mailing list