Opened 7 months ago
Improve specialized Hoopl module
|Reported by:||jstolarek||Owned by:|
|Type of failure:||None/Unknown||Difficulty:||Unknown|
|Test Case:||Blocked By:|
GHC uses Hoopl to perform some of the Cmm-to-Cmm optimization passes, but instead of relying directly on Hoopl library GHC uses its own specialized module (see compiler/cmm/Hoopl/Dataflow.hs). Interface of that module, as well as its internal implementation can be improved. Right now interface places responsibility of maintaining some of the invariants on user. It also ignores differences between forward and backward analysis. This wiki page gives full detail about proposed design changes.