[GHC] #9741: Interpreter stack checks are not quite right

Simon Marlow marlowsd at gmail.com
Tue Nov 11 08:38:02 UTC 2014


On 06/11/2014 09:56, Simon Peyton Jones wrote:
> |   Oh, and the reason you have the debug RTS in your compiler is because
> |  `-ticky` implies `-debug
>
> Interesting.  I didn't know that.  Is that a good idea? Wouldn't it be better to make them independent?

See #3439, as you'll note it was your idea too :)

The alternative is worse: if they were separate, then we have to 
multiply the number of variants of the RTS we currently have by two 
(non-ticky and ticky).  We currently build 6-8 versions of the RTS 
depending on whether you have profiling on, and if ticky were a separate 
option it would double that number.  You could choose not to build some 
of the combinations, but then you might be surprised when -ticky doesn't 
work with some other option.

The other part of the rationale is that if you're using -ticky then 
you're already taking a performance hit from the counters, so adding 
more overhead, in the form of the extra checks that -debug does, doesn't 
hurt.

Cheers,
Simon


> Simon
>
> |  -----Original Message-----
> |  From: ghc-tickets [mailto:ghc-tickets-bounces at haskell.org] On Behalf
> |  Of GHC
> |  Sent: 06 November 2014 08:37
> |  Cc: ghc-tickets at haskell.org
> |  Subject: Re: [GHC] #9741: Interpreter stack checks are not quite right
> |
> |  #9741: Interpreter stack checks are not quite right
> |  -------------------------------------+--------------------------------
> |  --
> |  -------------------------------------+---
> |                Reporter:  simonpj     |            Owner:  simonmar
> |                    Type:  bug         |           Status:  closed
> |                Priority:  highest     |        Milestone:  7.10.1
> |               Component:  Compiler    |          Version:  7.8.3
> |              Resolution:  fixed       |         Keywords:
> |        Operating System:              |     Architecture:
> |  Unknown/Multiple
> |    Unknown/Multiple                   |       Difficulty:  Unknown
> |         Type of failure:              |       Blocked By:
> |    None/Unknown                       |  Related Tickets:
> |               Test Case:              |
> |                Blocking:              |
> |  Differential Revisions:              |
> |  -------------------------------------+--------------------------------
> |  --
> |  -------------------------------------+---
> |
> |  Comment (by simonmar):
> |
> |   Oh, and the reason you have the debug RTS in your compiler is because
> |  `-ticky` implies `-debug`.  Incidentally this is probably slowing down
> |  your builds quite a lot, so you might want to turn it off.
> |
> |  --
> |  Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/9741#comment:5>
> |  GHC <http://www.haskell.org/ghc/>
> |  The Glasgow Haskell Compiler
> |  _______________________________________________
> |  ghc-tickets mailing list
> |  ghc-tickets at haskell.org
> |  http://www.haskell.org/mailman/listinfo/ghc-tickets
> _______________________________________________
> ghc-devs mailing list
> ghc-devs at haskell.org
> http://www.haskell.org/mailman/listinfo/ghc-devs
>


More information about the ghc-devs mailing list