From 33e19124c931d684f1beab6e8b20f2b42dbd705f Mon Sep 17 00:00:00 2001 From: Jens Petersen Date: Sun, 11 Jul 2021 23:24:28 +0800 Subject: [PATCH] remove the debian x32 patch --- ghc.spec | 2 -- x32-use-native-x86_64-insn.patch | 27 --------------------------- 2 files changed, 29 deletions(-) delete mode 100644 x32-use-native-x86_64-insn.patch diff --git a/ghc.spec b/ghc.spec index bbdc06d..e50d960 100644 --- a/ghc.spec +++ b/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} diff --git a/x32-use-native-x86_64-insn.patch b/x32-use-native-x86_64-insn.patch deleted file mode 100644 index 6105b5b..0000000 --- a/x32-use-native-x86_64-insn.patch +++ /dev/null @@ -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) \