Cross Compilation

Gabor Greif ggreif at gmail.com
Fri Apr 5 11:35:01 CEST 2013


On 4/5/13, Simon Peyton-Jones <simonpj at microsoft.com> wrote:
> I'm delighted to see all this activity around porting GHC to other
> platforms, making the build system work etc.  Thank you all.
>
> I have not been following any of it in detail (it's beyond both my expertise
> and bandwidth). I am of course willing to help with anything you need my
> specific input for, but you'll have to ask me specifically.  On this TH
> question it sounds as if you know what you are doing, which is great.  In
> general, TH is built only in stage2 because the compiler compiles and runs
> interpreted code at compile time.  So the representations (layout of
> objects, say) that are used by the interpreted code had better be identical
> to those used by the interpreter itself.

Right, so the current train of thought is to be very conservative and
not enable TH for stage 1, unless both conditions are met:
 - the bootstrap compiler has identical version to the to-be-built
stage1 compiler
 - we are building a stage1 cross-compiler.

I have no idea whether this will work out, but shall give it a try. Of
course the possibility exists that the necessary build system changes
are too complex, in which case I'll need some counseling.

Cheers,

    Gabor

>
> Simon
>
> | -----Original Message-----
> | From: ghc-devs-bounces at haskell.org [mailto:ghc-devs-bounces at haskell.org]
> | On Behalf Of Gabor Greif
> | Sent: 03 April 2013 21:43
> | To: Trevor Elliott
> | Cc: ghc-devs at haskell.org
> | Subject: Re: Cross Compilation
> |
> | Hi Trevor,
> |
> | I have Cross+TH on my agenda, but not sure I can start that task before
> | 2013-05-31.
> |
> | Here is a suggestion how to proceed, Stephen basically agreed that is it
> | a workable, albeit little elegant, plan:
> | http://www.haskell.org/pipermail/ghc-devs/2013-March/000660.html
> |
> | Cheers,
> |
> |     Gabor
> |
> | On 4/3/13, Trevor Elliott <trevor at galois.com> wrote:
> | > Hi Everyone,
> | >
> | > We're starting to update the HaLVM, which produces Xen binaries from
> | > haskell programs, to a more current version of GHC.  Currently, we
> | > build a stage1 compiler manually, with some patches to the RTS, and
> | > trick it into thinking that it's actually stage2 so that we can use
> | > template haskell.  Ideally, we would like to look at Xen as a cross
> | > compilation target, as that provides a bit of a better path for
> | > keeping up to date with changes in GHC.
> | >
> | > After reading some of the documentation on the developers wiki about
> | > cross compilation, it wasn't clear if template haskell is usable by a
> | > stage1 compiler built where target is not host, is this still the
> | case?
> | >   If so, what sort of changes would need to be made to enable this,
> | > and is it something that we could contribute to?
> | >
> | > Galois has a little time allocated for updating the HaLVM, and would
> | > like to position ourselves so that staying up to date with GHC
> | > releases is easier in the future :)
> | >
> | > Thanks!
> | >
> | > --trevor
> | >
> | >
> |
> | _______________________________________________
> | ghc-devs mailing list
> | ghc-devs at haskell.org
> | http://www.haskell.org/mailman/listinfo/ghc-devs
>



More information about the ghc-devs mailing list