[GHC] #12953: Use computed gotos in the interpreter when the compiler supports it

#12953: Use computed gotos in the interpreter when the compiler supports it -------------------------------------+------------------------------------- Reporter: dobenour | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Runtime | Version: 8.0.1 System | Keywords: interpreter | Operating System: Unknown/Multiple Architecture: | Type of failure: Runtime Unknown/Multiple | performance bug Test Case: | Blocked By: Blocking: | Related Tickets: Differential Rev(s): | Wiki Page: -------------------------------------+------------------------------------- We can use computed gotos to speed up the interpreter on systems that support them. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/12953 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#12953: Use computed gotos in the interpreter when the compiler supports it -------------------------------------+------------------------------------- Reporter: dobenour | Owner: Type: feature request | Status: new Priority: normal | Milestone: Component: Runtime System | Version: 8.0.1 Resolution: | Keywords: interpreter Operating System: Unknown/Multiple | Architecture: Type of failure: Runtime | Unknown/Multiple performance bug | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Changes (by dobenour): * type: bug => feature request -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/12953#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#12953: Use computed gotos in the interpreter when the compiler supports it -------------------------------------+------------------------------------- Reporter: dobenour | Owner: Type: feature request | Status: new Priority: normal | Milestone: Component: Runtime System | Version: 8.0.1 Resolution: | Keywords: interpreter Operating System: Unknown/Multiple | Architecture: Type of failure: Runtime | Unknown/Multiple performance bug | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by bgamari): The [[https://gcc.gnu.org/onlinedocs/gcc/Labels-as-Values.html|gcc documentation]] has a nice description of this feature. It seems that the only major compiler that does not support this is Visual C++. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/12953#comment:2 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#12953: Use computed gotos in the interpreter when the compiler supports it -------------------------------------+------------------------------------- Reporter: dobenour | Owner: Type: feature request | Status: new Priority: normal | Milestone: Component: Runtime System | Version: 8.0.1 Resolution: | Keywords: interpreter Operating System: Unknown/Multiple | Architecture: Type of failure: Runtime | Unknown/Multiple performance bug | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by bgamari): This was discussed in `#ghc` and the fact that OCaml's [https://github.com/ocaml/ocaml/blob/trunk/byterun/interp.c|interpreter] does this came up. The implementation really doesn't seem too invasive. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/12953#comment:3 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#12953: Use computed gotos in the interpreter when the compiler supports it -------------------------------------+------------------------------------- Reporter: dobenour | Owner: (none) Type: feature request | Status: new Priority: normal | Milestone: Component: Runtime System | Version: 8.0.1 Resolution: | Keywords: interpreter Operating System: Unknown/Multiple | Architecture: Type of failure: Runtime | Unknown/Multiple performance bug | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Changes (by adamse): * cc: adamse, bgamari (added) Comment: I'm interested in trying to work on this one if it is still something we want. Is there anything I should think about? -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/12953#comment:4 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#12953: Use computed gotos in the interpreter when the compiler supports it -------------------------------------+------------------------------------- Reporter: dobenour | Owner: (none) Type: feature request | Status: patch Priority: normal | Milestone: 8.10.1 Component: Runtime System | Version: 8.0.1 Resolution: | Keywords: interpreter Operating System: Unknown/Multiple | Architecture: Type of failure: Runtime | Unknown/Multiple performance bug | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Phab:D2996 Wiki Page: | -------------------------------------+------------------------------------- Changes (by bgamari): * status: new => patch * differential: => Phab:D2996 * milestone: => 8.10.1 Comment: DemiMarie had a stab at this previously in Phab:D2996 but there was never a characterisation of whether the improve was worth the complexity. It would be great if you could pick it up again! -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/12953#comment:5 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler
participants (1)
-
GHC