patch applied (ghc): Make some more modules use LazyUniqFM instead of UniqFM

Manuel M T Chakravarty chak at cse.unsw.edu.au
Thu Feb 21 22:47:28 EST 2008


Simon Marlow:
> Manuel M T Chakravarty wrote:
>
>> This is a bad patch (maybe in conjunction with "Rewrite  
>> fixTvSubstEnv so it iteratively applies its substition").  The  
>> patch goes through validate, but it breaks builds using the  
>> "devel1" scheme defined in build.mk.sample.  This might be due to  
>> the different optimisation settings, but I'd rather think it is due  
>> to -DDEBUG in devel1.  The way it breaks is that if you compile  
>> with devel1, the stage 1 compiler builds fine, but when the stage 1  
>> compiler attempts to compiler base, the simplifier loops on the  
>> first module (i.e., GHC/Base.lhs).
>> BTW, I was anyway wondering whether validate shouldn't use -DDEBUG  
>> for the stage 1 compiler.  It's going to make the build somewhat  
>> slower (how much?), but would be a good sanity check.
>
> DEBUG is quite a bit slower - roughly a factor of 2, IIRC.

Oh, ok.

> Someday I'd like to split DEBUG into a CHEAP_DEBUG that we'd have on  
> for all the stage1 builds, and full DEBUG that we would use when  
> developing.  I bet the majority of assertions could go into  
> CHEAP_DEBUG, there are probably only a few expensive culprits.

Yes, I am pretty sure you are right about this and CHEAP_DEBUG would  
be great.

Cheers,
Manuel



More information about the Cvs-ghc mailing list