As an experiment, I tried the following modification of my code
module Test where
import GHC.Word
import GHC.Base
import GHC.Prim
a `shiftRLT` b | b >=# 32# = int2Word# 0#
| otherwise = a `uncheckedShiftRL#` b
(W32# x#) `shift` (I# i#) =
{- we do an actual case analysis on i# to
Hello Duncan,
Monday, October 9, 2006, 9:52:34 PM, you wrote:
>> >>> A simple script for the pgmF command
>>
>> May it be that import chasing takes longer now? I noticed quite a gap
>> before ghc started to compile my 624 modules.
> Yes, since it has to run the pre-processor before it can look a
On Tue, 10 Oct 2006, Simon Peyton-Jones wrote:
That's precisely what GHC does. My explanation before was too brief,
sorry. The algorithm is described in "Secrets of the GHC inliner"
http://research.microsoft.com/%7Esimonpj/Papers/inlining/index.htm
But it still only makes a specialised copy i
| I would have imagined an optimisation step that only activates when a
| constructor is passed into a function to see if it produces a branch
that
| can be precomputed, and then tries to determine if it is worth making
a
| specialized function with that case eliminated. Or possibly having
each
|