diff options
author | Matthew Pickering <matthewtpickering@gmail.com> | 2016-09-23 23:25:43 +0100 |
---|---|---|
committer | Matthew Pickering <matthewtpickering@gmail.com> | 2016-09-23 23:33:16 +0100 |
commit | d122935340ddf97a5a8496070de1f9bb34328440 (patch) | |
tree | b1b813b691d71c5e831abed5c3e253a36b442166 /compiler/utils/FV.hs | |
parent | 9766b0c81476c208b2b29ff66d97251209a79707 (diff) | |
download | haskell-d122935340ddf97a5a8496070de1f9bb34328440.tar.gz |
Mark mapUnionFV as INLINABLE rather than INLINE
It is a self-recursive function so will always be the loop-breaker
and hence never able to be inlined. It is dubious whether the INLINABLE
pragma will ever help as it is not a very polymorphic function
but some specialisation could occur.
Diffstat (limited to 'compiler/utils/FV.hs')
-rw-r--r-- | compiler/utils/FV.hs | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/compiler/utils/FV.hs b/compiler/utils/FV.hs index 8e012209cf..b5cf096aac 100644 --- a/compiler/utils/FV.hs +++ b/compiler/utils/FV.hs @@ -184,7 +184,7 @@ mapUnionFV :: (a -> FV) -> [a] -> FV mapUnionFV _f [] _fv_cand _in_scope acc = acc mapUnionFV f (a:as) fv_cand in_scope acc = mapUnionFV f as fv_cand in_scope $! f a fv_cand in_scope $! acc -{-# INLINE mapUnionFV #-} +{-# INLINABLE mapUnionFV #-} -- | Union many free variable computations. unionsFV :: [FV] -> FV |