Makes it easy to use the linearscan register allocator with Hoopl http://github.com/jwiegley/linearscan-hoopl
|Latest on Hackage:||1.0.0|
This package is not currently in any snapshots. If you're interested in using it, we recommend adding it to Stackage Nightly. Doing so will make builds more reliable, and allow stackage.org to host generated Haddocks.
This module provides two convenience features for Hoopl users that wish to
linearscan for register allocation in their compilers.
First, it defines a type class called
NodeAlloc. After defining an
instance of this class for your particular graph node type, simply call
LinearScan.Hoopl.allocateHoopl. This is a simpler interface than using
linearscan directly, which requires two records of functions that are more
general in nature than the methods of
Second, it provides a DSL for constructing assembly language DSLs that compile into Hoople program graphs. See the tests for a concrete example. This is mainly useful for constructing tests of intermediate representations.
Please see the tests for an example of the simple assembly language that is
used to test the