[commit: ghc] master: user-guide: Fix :since: annotation of -pie and add documentation for -fPIE (d5e60de)

git at git.haskell.org git at git.haskell.org
Mon Oct 2 22:05:50 UTC 2017


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

On branch  : master
Link       : http://ghc.haskell.org/trac/ghc/changeset/d5e60de307874432f42aa7fea2460e6901c057e1/ghc

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

commit d5e60de307874432f42aa7fea2460e6901c057e1
Author: Ben Gamari <ben at smart-cactus.org>
Date:   Mon Oct 2 18:02:40 2017 -0400

    user-guide: Fix :since: annotation of -pie and add documentation for -fPIE
    
    [skip ci]


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

d5e60de307874432f42aa7fea2460e6901c057e1
 docs/users_guide/phases.rst | 14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)

diff --git a/docs/users_guide/phases.rst b/docs/users_guide/phases.rst
index 0b75462..d14a7fa 100644
--- a/docs/users_guide/phases.rst
+++ b/docs/users_guide/phases.rst
@@ -578,6 +578,16 @@ Options affecting code generation
     Windows, position-independent code is never used so the flag is a
     no-op on that platform.
 
+.. ghc-flag:: -fPIE
+    :shortdesc: Generate code for a position-independent executable (where available)
+    :type: dynamic
+    :category: codegen
+
+    Generate code in such a way to be linkable into a position-independent
+    executable This currently works on Linux x86 and x86-64. On Windows,
+    position-independent code is never used so the flag is a no-op on that
+    platform. To link the final executable use :ghc-flag:`-pie`.
+
 .. ghc-flag:: -dynamic
     :shortdesc: Build dynamically-linked object files and executables
     :type: dynamic
@@ -1119,7 +1129,7 @@ for example).
     :type: dynamic
     :category: linking
 
-    :since: 8.2.1
+    :since: 8.2.2
 
     This instructs the linker to produce a position-independent executable.
     This flag is only valid while producing executables and all object code
@@ -1136,4 +1146,4 @@ for example).
     loaded into the address space of another Haskell process.
 
     Also, you may need to use the :ghc-flags:`-rdynamic` flag to ensure that
-    that symbols are not dropped from your PIE object.
+    that symbols are not dropped from your PIE objects.



More information about the ghc-commits mailing list