Accepting request 205176 from devel:languages:haskell
Fix threaded runtime on 64 bit big endian. Haskell trac #8134. (forwarded request 205174 from ptrommler) OBS-URL: https://build.opensuse.org/request/show/205176 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/ghc?expand=0&rev=13
This commit is contained in:
commit
6ecd2c1f94
25
ghc-fix-infinite-loop-big-endian.patch
Normal file
25
ghc-fix-infinite-loop-big-endian.patch
Normal file
@ -0,0 +1,25 @@
|
||||
From 0a2e25ea54ab549ce0966ffe0ad40c80a2849032 Mon Sep 17 00:00:00 2001
|
||||
From: Gustavo Luiz Duarte <gustavold@linux.vnet.ibm.com>
|
||||
Date: Mon, 28 Oct 2013 13:04:12 +0000
|
||||
Subject: Fix infinite loop on 64 bits big endian platforms (Trac #8134)
|
||||
|
||||
---
|
||||
rts/STM.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/rts/STM.c b/rts/STM.c
|
||||
index 6bcb7ba..c4dcb9f 100644
|
||||
--- a/rts/STM.c
|
||||
+++ b/rts/STM.c
|
||||
@@ -927,7 +927,7 @@ void stmPreGCHook (Capability *cap) {
|
||||
static volatile StgInt64 max_commits = 0;
|
||||
|
||||
#if defined(THREADED_RTS)
|
||||
-static volatile StgBool token_locked = FALSE;
|
||||
+static volatile StgWord token_locked = FALSE;
|
||||
|
||||
static void getTokenBatch(Capability *cap) {
|
||||
while (cas((void *)&token_locked, FALSE, TRUE) == TRUE) { /* nothing */ }
|
||||
--
|
||||
1.8.3.1
|
||||
|
@ -1,3 +1,10 @@
|
||||
-------------------------------------------------------------------
|
||||
Mon Oct 28 18:24:46 UTC 2013 - peter.trommler@ohm-hochschule.de
|
||||
|
||||
- Add ghc-fix-infinite-loop-big-endian.patch: Fix Haskell trac
|
||||
#8134 on ppc64.
|
||||
- Enable threaded runtime on ppc64
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Sep 24 20:56:45 UTC 2013 - peter.trommler@ohm-hochschule.de
|
||||
|
||||
|
21
ghc.spec
21
ghc.spec
@ -100,6 +100,8 @@ Patch4: ghc-avoid-empty-llvm-used-definitions.patch
|
||||
Patch5: 0001-Fix-detection-of-library-for-shm-on-openSUSE.patch
|
||||
# PATCH-FIX-UPSTREAM 0001-Delete-spurious-comma-in-configure.ac.patch peter.trommler@ohm-hochschule.de - Fix test for setitimer. Backported patch sent upstream 2013-09-24, Haskell trac #8352
|
||||
Patch6: 0001-Delete-spurious-comma-in-configure.ac.patch
|
||||
# PATCH-FIX-UPSTREAM peter.trommler@ohm-hochschule.de - Fix Haskell trac #8134.
|
||||
Patch7: ghc-fix-infinite-loop-big-endian.patch
|
||||
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
|
||||
@ -200,6 +202,7 @@ rm -r ghc-tarballs/libffi
|
||||
%patch4 -p1 -b .llvm-empty
|
||||
%patch5 -p1 -b .shm
|
||||
%patch6 -p1 -b .comma
|
||||
%patch7 -p1
|
||||
|
||||
%build
|
||||
# required for patch and patch1
|
||||
@ -217,13 +220,6 @@ GhcLibWays = v
|
||||
%ifarch %{unregisterised_archs}
|
||||
GhcUnregisterised=YES
|
||||
%endif
|
||||
%ifarch ppc64
|
||||
GhcWithNativeCodeGen=NO
|
||||
SplitObjs=NO
|
||||
GhcRTSWays := debug
|
||||
GhcNotThreaded=YES
|
||||
GhcWithInterpreter=NO
|
||||
%endif
|
||||
HADDOCK_DOCS = NO
|
||||
BUILD_DOCBOOK_HTML = NO
|
||||
HSCOLOUR_SRCS = NO
|
||||
@ -245,13 +241,6 @@ GhcLibWays = v %{!?ghc_without_shared:dyn} %{!?without_prof:p}
|
||||
%ifarch %{unregisterised_archs}
|
||||
GhcUnregisterised=YES
|
||||
%endif
|
||||
%ifarch ppc64
|
||||
GhcWithNativeCodeGen=NO
|
||||
SplitObjs=NO
|
||||
GhcRTSWays := debug
|
||||
GhcNotThreaded=YES
|
||||
GhcWithInterpreter=NO
|
||||
%endif
|
||||
%if %{defined without_haddock}
|
||||
HADDOCK_DOCS = NO
|
||||
%endif
|
||||
@ -432,6 +421,10 @@ fi
|
||||
%ghost %{ghcdocbasedir}/libraries/minus.gif
|
||||
%ghost %{ghcdocbasedir}/libraries/plus.gif
|
||||
%endif
|
||||
%if %{suse_version} >= 1230
|
||||
%ghost %{_sysconfdir}/alternatives/hsc2hs
|
||||
%ghost %{_sysconfdir}/alternatives/runhaskell
|
||||
%endif
|
||||
|
||||
%files libraries
|
||||
%defattr(-,root,root,-)
|
||||
|
Loading…
x
Reference in New Issue
Block a user