More on FreeBSD/amd64

Ian Lynagh igloo at earth.li
Fri Mar 30 19:05:35 EDT 2007


Hi Gregory,

On Fri, Mar 30, 2007 at 06:17:10PM -0400, Gregory Wright wrote:
> 
> On Mar 30, 2007, at 8:22 AM, Ian Lynagh wrote:
> 
> >On Fri, Mar 30, 2007 at 09:31:07AM +0100, Simon Marlow wrote:
> >>Ian Lynagh wrote:
> >>>
> >>>OK, so we know that the wrong value is being passed to
> >>>newPinnedByteArray#, right? There aren't many calls to that:
> >>>
> >>>   libraries/base/Foreign/Marshal/Alloc.hs
> >>>   libraries/base/GHC/ForeignPtr.hs (4 calls)
> >>>   libraries/base/GHC/Handle.hs
> >
> >Oh, I've just realised, it's the 6.4.2 libraries you need to look at,
> >not the 6.6 ones.
> 
> Let me make sure I understand this:  the problem show up
> when running the 6.6 compiler in compiler/stage1/ghc-6.6-20070314.
> This compiler is linked with the ghc-6.4.2 RTS  _and_ the ghc-6.4.2
> libraries, correct?

Right, the process is roughly this:

1: compile stage 1 GHC (with the libraries and RTS of the compiler we
   already have)
2: compile the RTS with the stage 1 GHC
3: compile the libraries with the stage 1 GHC
4: compile a stage 2 GHC with the stage 1 GHC, and the RTS and libraries
   that we built with it

except older GHCs don't have all the libraries we'd like to use to write
GHC, so there's actually a step 0:

0: compile the libraries in compat/ with the compiler we already have

and these compat libraries are also used in step 1.

> So when I look for symbols mentioned in the RTS stack, (e.g.,  
> "s311_info") I have
> to refer to the -ddump-stg output from the ghc-6.4.2 build. Is this  
> true?

That and the compat/ of the new GHC tree.

If your 6.4.2 is still the hc-build then s311_info should be in the .hc
files if it's from there.


Thanks
Ian



More information about the Glasgow-haskell-users mailing list