[commit: ghc] ghc-7.8: Mark HPC ticks labels as dynamic (8732b20)

git at git.haskell.org git at git.haskell.org
Wed Jul 2 19:17:07 UTC 2014


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

On branch  : ghc-7.8
Link       : http://ghc.haskell.org/trac/ghc/changeset/8732b205858318d0e2bd6d2ad4ae93664297380d/ghc

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

commit 8732b205858318d0e2bd6d2ad4ae93664297380d
Author: Reid Barton <rwbarton at gmail.com>
Date:   Tue Jul 1 01:04:18 2014 -0400

    Mark HPC ticks labels as dynamic
    
    This enables GHC's PIC machinery for accessing tickboxes of other
    packages correctly when building dynamic libraries. Previously
    GHC was doing strange and wrong things in that situation. See #9012.
    
    (cherry picked from commit 3285a3d5bc7419464f5d2e6cef7c3adb9bca65c3)


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

8732b205858318d0e2bd6d2ad4ae93664297380d
 compiler/cmm/CLabel.hs | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/compiler/cmm/CLabel.hs b/compiler/cmm/CLabel.hs
index 1b86f3d..65c597c 100644
--- a/compiler/cmm/CLabel.hs
+++ b/compiler/cmm/CLabel.hs
@@ -876,6 +876,8 @@ labelDynamic dflags this_pkg this_mod lbl =
 
    PlainModuleInitLabel m -> not (gopt Opt_Static dflags) && this_pkg /= (modulePackageId m)
 
+   HpcTicksLabel m        -> not (gopt Opt_Static dflags) && this_pkg /= (modulePackageId m)
+
    -- Note that DynamicLinkerLabels do NOT require dynamic linking themselves.
    _                 -> False
   where os = platformOS (targetPlatform dflags)



More information about the ghc-commits mailing list