[commit: packages/binary] ghc-head: Remove INLINEs from GBinary/GSum methods (03adb0a)
git at git.haskell.org
git at git.haskell.org
Thu Sep 25 20:18:03 UTC 2014
Repository : ssh://git@git.haskell.org/binary
On branch : ghc-head
Link : http://git.haskell.org/packages/binary.git/commitdiff/03adb0aa2c17ce044586e3a30edc13e5cc83f69e
>---------------------------------------------------------------
commit 03adb0aa2c17ce044586e3a30edc13e5cc83f69e
Author: Herbert Valerio Riedel <hvr at gnu.org>
Date: Thu Sep 25 22:07:13 2014 +0200
Remove INLINEs from GBinary/GSum methods
These interact very badly with GHC 7.9.x's simplifier
See also
- https://ghc.haskell.org/trac/ghc/ticket/9630 and
- https://ghc.haskell.org/trac/ghc/ticket/9583
Submitted upstream as https://github.com/kolmodin/binary/pull/62
>---------------------------------------------------------------
03adb0aa2c17ce044586e3a30edc13e5cc83f69e
src/Data/Binary/Generic.hs | 6 ------
1 file changed, 6 deletions(-)
diff --git a/src/Data/Binary/Generic.hs b/src/Data/Binary/Generic.hs
index 03ce711..a2eb6ea 100644
--- a/src/Data/Binary/Generic.hs
+++ b/src/Data/Binary/Generic.hs
@@ -72,13 +72,11 @@ instance ( GSum a, GSum b
| otherwise = sizeError "encode" size
where
size = unTagged (sumSize :: Tagged (a :+: b) Word64)
- {-# INLINE gput #-}
gget | GETSUM(Word8) | GETSUM(Word16) | GETSUM(Word32) | GETSUM(Word64)
| otherwise = sizeError "decode" size
where
size = unTagged (sumSize :: Tagged (a :+: b) Word64)
- {-# INLINE gget #-}
sizeError :: Show size => String -> size -> error
sizeError s size =
@@ -102,7 +100,6 @@ instance (GSum a, GSum b, GBinary a, GBinary b) => GSum (a :+: b) where
where
sizeL = size `shiftR` 1
sizeR = size - sizeL
- {-# INLINE getSum #-}
putSum !code !size s = case s of
L1 x -> putSum code sizeL x
@@ -110,14 +107,11 @@ instance (GSum a, GSum b, GBinary a, GBinary b) => GSum (a :+: b) where
where
sizeL = size `shiftR` 1
sizeR = size - sizeL
- {-# INLINE putSum #-}
instance GBinary a => GSum (C1 c a) where
getSum _ _ = gget
- {-# INLINE getSum #-}
putSum !code _ x = put code *> gput x
- {-# INLINE putSum #-}
------------------------------------------------------------------------
More information about the ghc-commits
mailing list