slyfox      15/01/17 14:44:56

  Added:                ghc-7.8.4-ia64-CLOSUREs.patch
  Log:
  Fix threaded runtime on ia64 (sm_mutex import).
  
  (Portage version: 2.2.15/cvs/Linux x86_64, signed Manifest commit with key 
611FF3AA)

Revision  Changes    Path
1.1                  dev-lang/ghc/files/ghc-7.8.4-ia64-CLOSUREs.patch

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/ghc/files/ghc-7.8.4-ia64-CLOSUREs.patch?rev=1.1&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/ghc/files/ghc-7.8.4-ia64-CLOSUREs.patch?rev=1.1&content-type=text/plain

Index: ghc-7.8.4-ia64-CLOSUREs.patch
===================================================================
>From b677ba51cf8131a6f6ddcdfee8dd2a8c4c2b4ac7 Mon Sep 17 00:00:00 2001
From: Sergei Trofimovich <siarh...@google.com>
Date: Sat, 17 Jan 2015 14:27:13 +0000
Subject: [PATCH 1/3] CMM: add a mechanism to import C data labels

Fixes threaded runtime on ia64.
sm_mutex there was not referenced correctly.

Signed-off-by: Sergei Trofimovich <siarh...@google.com>
---
 compiler/cmm/CmmParse.y | 4 ++++
 rts/Exception.cmm       | 2 +-
 rts/PrimOps.cmm         | 6 +++---
 3 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/compiler/cmm/CmmParse.y.source b/compiler/cmm/CmmParse.y.source
index 6b51e51..fd9489b 100644
--- a/compiler/cmm/CmmParse.y.source
+++ b/compiler/cmm/CmmParse.y.source
@@ -575,6 +575,10 @@ importName
         : NAME  
         { ($1, mkForeignLabel $1 Nothing ForeignLabelInExternalPackage 
IsFunction) }
 
+        -- as previous 'NAME', but 'IsData'
+        | 'CLOSURE' NAME
+        { ($2, mkForeignLabel $2 Nothing ForeignLabelInExternalPackage IsData) 
}
+
         -- A label imported with an explicit packageId.
         | STRING NAME
         { ($2, mkCmmCodeLabel (fsToPackageKey (mkFastString $1)) $2) }
diff --git a/rts/Exception.cmm b/rts/Exception.cmm
index 5007ef3..8d19c14 100644
--- a/rts/Exception.cmm
+++ b/rts/Exception.cmm
@@ -13,7 +13,7 @@
 #include "Cmm.h"
 #include "RaiseAsync.h"
 
-import ghczmprim_GHCziTypes_True_closure;
+import CLOSURE ghczmprim_GHCziTypes_True_closure;
 
 /* 
-----------------------------------------------------------------------------
    Exception Primitives
diff --git a/rts/PrimOps.cmm b/rts/PrimOps.cmm
index 3e8612c..2e6ca46 100644
--- a/rts/PrimOps.cmm
+++ b/rts/PrimOps.cmm
@@ -28,12 +28,12 @@
 import pthread_mutex_lock;
 import pthread_mutex_unlock;
 #endif
-import base_ControlziExceptionziBase_nestedAtomically_closure;
+import CLOSURE base_ControlziExceptionziBase_nestedAtomically_closure;
 import EnterCriticalSection;
 import LeaveCriticalSection;
-import ghczmprim_GHCziTypes_False_closure;
+import CLOSURE ghczmprim_GHCziTypes_False_closure;
 #if defined(USE_MINIINTERPRETER) || !defined(mingw32_HOST_OS)
-import sm_mutex;
+import CLOSURE sm_mutex;
 #endif
 
 /*-----------------------------------------------------------------------------
-- 
2.2.1





Reply via email to