Hello community,

here is the log from the commit of package ghc for openSUSE:Factory checked in 
at 2016-05-17 17:15:36
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghc (Old)
 and      /work/SRC/openSUSE:Factory/.ghc.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "ghc"

Changes:
--------
--- /work/SRC/openSUSE:Factory/ghc/ghc.changes  2016-04-30 23:30:22.000000000 
+0200
+++ /work/SRC/openSUSE:Factory/.ghc.new/ghc.changes     2016-05-17 
17:15:38.000000000 +0200
@@ -1,0 +2,11 @@
+Sat May 14 09:13:07 UTC 2016 - [email protected]
+
+- add D2214.patch
+* backport of upstream patch slated for ghc 8.0.2
+* fix issue in code PowerPC code generator (32 bit and 64 bit)
+- add 0001-Fix-misspelled-WORDS_BIGENDIAN-macro.patch
+* backport of upstream fix slated for ghc 8.0.2
+* fix bytestring library on big-endian archs
+* fix wrong results in ghc-pureMD5 and others on big-endian 
+
+-------------------------------------------------------------------

New:
----
  0001-Fix-misspelled-WORDS_BIGENDIAN-macro.patch
  D2214.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ ghc.spec ++++++
--- /var/tmp/diff_new_pack.YtjYiq/_old  2016-05-17 17:15:39.000000000 +0200
+++ /var/tmp/diff_new_pack.YtjYiq/_new  2016-05-17 17:15:39.000000000 +0200
@@ -82,6 +82,11 @@
 Patch22:        u_Cabal_update.patch
 # PATCH-FIX-UPSTREAM u_haskeline_update.patch [email protected] -- update 
haskeline to 0.7.2.3
 Patch23:        u_haskeline_update.patch
+# PATCH-FIX-UPSTREAM 0001-Fix-misspelled-WORDS_BIGENDIAN-macro.patch 
[email protected] -- Fix ghc-pureMD5 and other Haskell packages 
on big-endian architectures.
+Patch24:        0001-Fix-misspelled-WORDS_BIGENDIAN-macro.patch
+# PATCH-FIX-UPSTREAM D2214.patch [email protected] -- Fix 
PowerPC code generator. See Haskell Trac #12054 and 
https://phabricator.haskell.org/D2214 for details.
+Patch25:        D2214.patch
+
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 
 %description
@@ -178,6 +183,8 @@
 %patch21 -p2
 %patch22 -p2
 %patch23 -p2
+%patch24 -p1
+%patch25 -p1
 
 %build
 # Patch 19 modifies build system

++++++ 0001-Fix-misspelled-WORDS_BIGENDIAN-macro.patch ++++++
>From 4f52849a99753fab63d634769dd35a31f4d5a1b2 Mon Sep 17 00:00:00 2001
From: Herbert Valerio Riedel <[email protected]>
Date: Thu, 12 May 2016 20:36:34 +0200
Subject: [PATCH] Fix misspelled WORDS_BIGENDIAN macro

This was causing word{16,32,64}{le,be} primitives to break
on big endian archs (such as `powerpc`/`powerpc64`) with
serious consequences such as
https://github.com/TomMD/pureMD5/issues/5
---
 Data/ByteString/Builder/Prim/Binary.hs | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

Index: ghc-8.0.1/libraries/bytestring/Data/ByteString/Builder/Prim/Binary.hs
===================================================================
--- ghc-8.0.1.orig/libraries/bytestring/Data/ByteString/Builder/Prim/Binary.hs
+++ ghc-8.0.1/libraries/bytestring/Data/ByteString/Builder/Prim/Binary.hs
@@ -83,7 +83,7 @@ word8 = storableToF
 -- | Encoding 'Word16's in big endian format.
 {-# INLINE word16BE #-}
 word16BE :: FixedPrim Word16
-#ifdef WORD_BIGENDIAN
+#ifdef WORDS_BIGENDIAN
 word16BE = word16Host
 #else
 word16BE = fixedPrim 2 $ \w p -> do
@@ -94,7 +94,7 @@ word16BE = fixedPrim 2 $ \w p -> do
 -- | Encoding 'Word16's in little endian format.
 {-# INLINE word16LE #-}
 word16LE :: FixedPrim Word16
-#ifdef WORD_BIGENDIAN
+#ifdef WORDS_BIGENDIAN
 word16LE = fixedPrim 2 $ \w p -> do
     poke p               (fromIntegral (w)              :: Word8)
     poke (p `plusPtr` 1) (fromIntegral (shiftr_w16 w 8) :: Word8)
@@ -105,7 +105,7 @@ word16LE = word16Host
 -- | Encoding 'Word32's in big endian format.
 {-# INLINE word32BE #-}
 word32BE :: FixedPrim Word32
-#ifdef WORD_BIGENDIAN
+#ifdef WORDS_BIGENDIAN
 word32BE = word32Host
 #else
 word32BE = fixedPrim 4 $ \w p -> do
@@ -118,7 +118,7 @@ word32BE = fixedPrim 4 $ \w p -> do
 -- | Encoding 'Word32's in little endian format.
 {-# INLINE word32LE #-}
 word32LE :: FixedPrim Word32
-#ifdef WORD_BIGENDIAN
+#ifdef WORDS_BIGENDIAN
 word32LE = fixedPrim 4 $ \w p -> do
     poke p               (fromIntegral (w)               :: Word8)
     poke (p `plusPtr` 1) (fromIntegral (shiftr_w32 w  8) :: Word8)
@@ -134,7 +134,7 @@ word32LE = word32Host
 -- | Encoding 'Word64's in big endian format.
 {-# INLINE word64BE #-}
 word64BE :: FixedPrim Word64
-#ifdef WORD_BIGENDIAN
+#ifdef WORDS_BIGENDIAN
 word64BE = word64Host
 #else
 #if WORD_SIZE_IN_BITS < 64
@@ -170,7 +170,7 @@ word64BE = fixedPrim 8 $ \w p -> do
 -- | Encoding 'Word64's in little endian format.
 {-# INLINE word64LE #-}
 word64LE :: FixedPrim Word64
-#ifdef WORD_BIGENDIAN
+#ifdef WORDS_BIGENDIAN
 #if WORD_SIZE_IN_BITS < 64
 word64LE =
     fixedPrim 8 $ \w p -> do
++++++ D2214.patch ++++++
Index: ghc-7.10.3/compiler/nativeGen/PPC/Ppr.hs
===================================================================
--- ghc-7.10.3.orig/compiler/nativeGen/PPC/Ppr.hs
+++ ghc-7.10.3/compiler/nativeGen/PPC/Ppr.hs
@@ -488,9 +488,10 @@ pprInstr (STU sz reg addr) = hcat [
         char '\t',
         ptext (sLit "st"),
         pprSize sz,
-        ptext (sLit "u\t"),
+        char 'u',
         case addr of AddrRegImm _ _ -> empty
                      AddrRegReg _ _ -> char 'x',
+        char '\t',
         pprReg reg,
         ptext (sLit ", "),
         pprAddr addr

Reply via email to