Skip to content

Make ghc-heap multi-platform

Motivation

It's been my long-standing goal that GHC should be as target-agnostic as possible. ghc-heap is very low priority on this list, as it can be construed as "target agnostic but host specific" already (i.e. it tells you about it's own heap). Still, one could imagine it could both do that, and crawl core dumps of foreign code, or do it live with iserv for some remote debugging wizardry.

I got the idea when hunting down TABLES_NEXT_TO_CODE in !152 (merged)

Proposal

Pull out all the CPP / HSC into one module, that fills in some "abi config" struct. Everything else pulls the magic numbers from the struct.

CC @angerman @nomeata

Edited by John Ericson
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information