[GHC] #9718: Avoid TidyPgm predicting what CorePrep will do
GHC
ghc-devs at haskell.org
Mon Oct 15 15:29:11 UTC 2018
#9718: Avoid TidyPgm predicting what CorePrep will do
-------------------------------------+-------------------------------------
Reporter: simonpj | Owner: (none)
Type: task | Status: new
Priority: normal | Milestone:
Component: Compiler | Version: 7.8.3
Resolution: | Keywords: CodeGen, CAFs
Operating System: Unknown/Multiple | Architecture:
| Unknown/Multiple
Type of failure: None/Unknown | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s):
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by simonpj):
> I don't understand how the CAFFYness info in Ids used in the code gen,
but I wonder if even after this work there will still be room for bugs
because idCafInfo of an id (not in binder position) may disagree with the
final CAFFYness information of the id.
I think we should
* Tag each binder with its CAFFYness, immediately before code generation,
after any STG-to-STG passes (step 1 of comment:14).
* Propagate that info into the .hi file for the module.
* In SRT generation (setp 2 of comment:14, presumably in
`CmmBuildInfoTables`) use a finite map of Id to CAFFYness, so that we
specifically do not rely on the CAFFYness of ''occurrences'' of ''local''
Ids. (For imported Ids we should be fine.)
Sound OK?
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/9718#comment:16>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list