Re-compiling wired-in packages

Shao Cheng astrohavoc at gmail.com
Mon Apr 24 13:31:44 UTC 2017


Dear friends,

I'm trying to implement a new codegen for ghc, starting by using the ghc
api to compile modules to STG/Cmm. In order to support importing Prelude, I
also need the STG/Cmm representations of wired-in packages like base,
ghc-prim, etc, and I guess that means I need to re-compile them.

I can roughly think of two approaches:

* Load the `ModIface` of wired-in packages, which are tidied Core modules,
and convert to STG/Cmm
* Get the library sources from ghc repo and launch a regular compilation.

I haven't succeeded in either approach. For the first one, I haven't found
a way to convert `ModIface` of external package to regular compilation
targets; for the second one, regular "cabal installs" won't do the trick,
seems compiling wired-in packages require quite some magic.

What is the preferred way of re-compiling wired-in packages and retrieving
their STG/Cmm representations? Thank a lot.

Cheers,
Shao Cheng
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-devs/attachments/20170424/a0517da3/attachment.html>


More information about the ghc-devs mailing list