[GHC] #11158: Combine exprIsTrivial and cpe_ExprIsTrivial
GHC
ghc-devs at haskell.org
Wed Oct 26 21:53:07 UTC 2016
#11158: Combine exprIsTrivial and cpe_ExprIsTrivial
-------------------------------------+-------------------------------------
Reporter: simonpj | Owner:
Type: task | Status: infoneeded
Priority: highest | Milestone: 8.2.1
Component: Compiler | Version: 7.10.2
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture:
| Unknown/Multiple
Type of failure: None/Unknown | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s): Phab:D1656
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by simonpj):
> Why is this limited to import-bound Ids? I would have thought that any
non-thunk Id which has NoCafRefs would be safe to omit from the SRT.
Non-top-level Ids must be collected in FV info, becuase they become part
of the dynamically allocated closure. They never go in an SRT.
For SRTs we are talking about top level Ids. For top level imported Ids
that defintely don't have CAF-refs, we can neglect them entirely in this
free var into.
I ''think'' it'd be OK to neglect ''local'' top-level Ids that have no
CAF-refs too. I think that's what you are suggesting. I don't see any
reason why not... feel free to try. Should not change the resulting STG
or Cmm at all.
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/11158#comment:30>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list