[GHC] #12995: interpetBCO doesn't get stripped from executables
GHC
ghc-devs at haskell.org
Mon Dec 19 20:43:43 UTC 2016
#12995: interpetBCO doesn't get stripped from executables
-------------------------------------+-------------------------------------
Reporter: olsner | Owner:
Type: task | Status: new
Priority: normal | Milestone:
Component: Runtime System | Version: 8.0.1
Resolution: | Keywords: footprint
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 olsner):
Since the RTS is built with `-ffunction-sections` now, the code doesn't
need to be moved to separate files. It should be enough to remove the
function(s) from the call graph. But that in itself might be hard enough
:)
BCO-related code pops up in quite a few places - e.g. `stg_AP_*` checks
the function type and invokes `stg_yield_to_interpreter` for the `ARG_BCO`
case, so that would still keep the interpreter alive. The generated apply
code from genapply also has calls directly to `stg_BCO` which just yields
to the interpreter.
`interpretBCO` is quite little code itself though, commenting out the call
in `schedule` saved about 15kB. Not enough to motivate much effort at all
really...
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/12995#comment:5>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list