remove the debian x32 patch
This commit is contained in:
parent
a1a8a89e7c
commit
cc98c023ef
2
ghc.spec
2
ghc.spec
@ -96,7 +96,6 @@ Patch18: Disable-unboxed-arrays.patch
|
||||
# Debian patches:
|
||||
Patch24: buildpath-abi-stability.patch
|
||||
Patch26: no-missing-haddock-file-warning.patch
|
||||
#Patch28: x32-use-native-x86_64-insn.patch
|
||||
|
||||
# fedora ghc has been bootstrapped on
|
||||
# %%{ix86} x86_64 ppc ppc64 armv7hl s390 s390x ppc64le aarch64
|
||||
@ -340,7 +339,6 @@ rm -r libffi-tarballs
|
||||
# debian
|
||||
%patch24 -p1 -b .orig
|
||||
%patch26 -p1 -b .orig
|
||||
#%%patch28 -p1 -b .orig
|
||||
|
||||
%global gen_contents_index gen_contents_index.orig
|
||||
%if %{with haddock}
|
||||
|
@ -1,27 +0,0 @@
|
||||
Description: Use native x86_64 instructions on x32
|
||||
This patch enables a few native 64-bit integer instructions
|
||||
on x32 which are available on this architecture despite using
|
||||
32-bit pointers. These instructions are present on x86_64 but
|
||||
not on x86 and ghc checks the size of (void *) to determine
|
||||
that. This method fails on x32 since despite using 32-bit
|
||||
pointers and hence sizeof(void *) == 4, it still uses the
|
||||
full x86_64 instruction set and software-emulated variants
|
||||
of the aforementioned 64-bit integer instructions are
|
||||
therefore not present in the toolchain which will make ghc
|
||||
fail to build on x32.
|
||||
See: https://ghc.haskell.org/trac/ghc/ticket/11571
|
||||
.
|
||||
|
||||
Index: ghc-8.0.2/rts/RtsSymbols.c
|
||||
===================================================================
|
||||
--- ghc-8.0.2.orig/rts/RtsSymbols.c
|
||||
+++ ghc-8.0.2/rts/RtsSymbols.c
|
||||
@@ -857,7 +857,7 @@
|
||||
|
||||
|
||||
// 64-bit support functions in libgcc.a
|
||||
-#if defined(__GNUC__) && SIZEOF_VOID_P <= 4 && !defined(_ABIN32)
|
||||
+#if defined(__GNUC__) && SIZEOF_VOID_P <= 4 && !defined(_ABIN32) && !(defined(__x86_64__) && defined(__ILP32__))
|
||||
#define RTS_LIBGCC_SYMBOLS \
|
||||
SymI_NeedsProto(__divdi3) \
|
||||
SymI_NeedsProto(__udivdi3) \
|
Loading…
Reference in New Issue
Block a user