[GHC] #8657: -fregs-graph still has a limit on spill slots
#8657: -fregs-graph still has a limit on spill slots -----------------------------------+--------------------------------------- Reporter: simonmar | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.8.1 Component: Compiler (NCG) | Version: 7.7 Keywords: | Operating System: Unknown/Multiple Architecture: | Type of failure: Compile-time crash Unknown/Multiple | Test Case: Difficulty: Unknown | Blocking: Blocked By: | Related Tickets: | -----------------------------------+--------------------------------------- The limit on spill slots was removed for the linear register allocator in 7.8, but not for `-fregs-graph`. SHA-1 fails to compile with `-fregs-graph` in 7.8. Related: #7679 (`-fregs-graph` generates poor code with the new codegen). -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8657> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#8657: -fregs-graph still has a limit on spill slots ---------------------------------------+----------------------------------- Reporter: simonmar | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.8.1 Component: Compiler (NCG) | Version: 7.7 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time crash | Unknown/Multiple Test Case: | Difficulty: Unknown Blocking: | Blocked By: | Related Tickets: 7679 ---------------------------------------+----------------------------------- Changes (by simonmar): * related: => 7679 -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8657#comment:1> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#8657: -fregs-graph still has a limit on spill slots ---------------------------------------+----------------------------------- Reporter: simonmar | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.8.1 Component: Compiler (NCG) | Version: 7.7 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time crash | Unknown/Multiple Test Case: | Difficulty: Unknown Blocking: | Blocked By: | Related Tickets: #7679 ---------------------------------------+----------------------------------- Changes (by simonmar): * related: 7679 => #7679 -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8657#comment:2> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#8657: -fregs-graph still has a limit on spill slots ---------------------------------------+----------------------------------- Reporter: simonmar | Owner: Type: bug | Status: new Priority: highest | Milestone: 7.8.1 Component: Compiler (NCG) | Version: 7.7 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time crash | Unknown/Multiple Test Case: | Difficulty: Unknown Blocking: | Blocked By: | Related Tickets: #7679 ---------------------------------------+----------------------------------- Changes (by simonmar): * priority: normal => highest Comment: For 7.8.1 we should probably disable `-fregs-graph` -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8657#comment:3> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#8657: -fregs-graph still has a limit on spill slots ---------------------------------------+----------------------------------- Reporter: simonmar | Owner: Type: bug | Status: new Priority: highest | Milestone: 7.8.1 Component: Compiler (NCG) | Version: 7.7 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time crash | Unknown/Multiple Test Case: | Difficulty: Unknown Blocking: | Blocked By: | Related Tickets: #7679 ---------------------------------------+----------------------------------- Comment (by schyler): Could it be ninja-fixed before 7.8.1? :/ -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8657#comment:4> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#8657: -fregs-graph still has a limit on spill slots ---------------------------------------+----------------------------------- Reporter: simonmar | Owner: Type: bug | Status: new Priority: highest | Milestone: 7.8.1 Component: Compiler (NCG) | Version: 7.7 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time crash | Unknown/Multiple Test Case: | Difficulty: Unknown Blocking: | Blocked By: | Related Tickets: #7679 ---------------------------------------+----------------------------------- Comment (by Simon Marlow <marlowsd@…>): In [changeset:"f0a7261a39bd1a8c5217fecba56c593c353f198c/ghc"]: {{{ #!CommitTicketReference repository="ghc" revision="f0a7261a39bd1a8c5217fecba56c593c353f198c" Disable -fregs-graph (#7679, #8657) }}} -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8657#comment:5> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#8657: -fregs-graph still has a limit on spill slots ---------------------------------------+----------------------------------- Reporter: simonmar | Owner: Type: bug | Status: new Priority: normal | Milestone: 7.10.1 Component: Compiler (NCG) | Version: 7.7 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time crash | Unknown/Multiple Test Case: | Difficulty: Unknown Blocking: | Blocked By: | Related Tickets: #7679 ---------------------------------------+----------------------------------- Changes (by simonmar): * priority: highest => normal * milestone: 7.8.1 => 7.10.1 -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8657#comment:6> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#8657: -fregs-graph still has a limit on spill slots ---------------------------------------+----------------------------------- Reporter: simonmar | Owner: archblob Type: bug | Status: new Priority: normal | Milestone: 7.10.1 Component: Compiler (NCG) | Version: 7.7 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time crash | Unknown/Multiple Test Case: | Difficulty: Unknown Blocking: | Blocked By: | Related Tickets: #7679 ---------------------------------------+----------------------------------- Changes (by archblob): * owner: => archblob Comment: I'll be working on this, should be easy once I understand the code. -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8657#comment:7> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#8657: -fregs-graph still has a limit on spill slots -------------------------------------+------------------------------------- Reporter: simonmar | Owner: archblob Type: bug | Status: new Priority: normal | Milestone: Component: Compiler (NCG) | Version: 7.7 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time | Unknown/Multiple crash | Test Case: Blocked By: | Blocking: Related Tickets: #7679 | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by bgamari): For the record, I believe the spill slot limit was fixed in the linear allocator in 0b0a41f96cbdaf52aac171c9c58459e3187b0f46. -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8657#comment:11> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#8657: -fregs-graph still has a limit on spill slots -------------------------------------+------------------------------------- Reporter: simonmar | Owner: archblob Type: bug | Status: new Priority: normal | Milestone: Component: Compiler (NCG) | Version: 7.7 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time | Unknown/Multiple crash | Test Case: Blocked By: | Blocking: Related Tickets: #7679 | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by Ben Gamari <ben@…>): In [changeset:"6a5d13c4ade5bbb84873970065a1acd1546f6c31/ghc" 6a5d13c4/ghc]: {{{ #!CommitTicketReference repository="ghc" revision="6a5d13c4ade5bbb84873970065a1acd1546f6c31" nativeGen: Allow -fregs-graph to be used Previously the flag was silently ignored due the #7679 and #8657. This, however, seems unnecessarily brutal and makes experimentation unduly difficult for users. Test Plan: Validate Reviewers: austin, simonmar Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2335 GHC Trac Issues: #7679, #8657 }}} -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8657#comment:12> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#8657: -fregs-graph still has a limit on spill slots -------------------------------------+------------------------------------- Reporter: simonmar | Owner: archblob Type: bug | Status: new Priority: normal | Milestone: Component: Compiler (NCG) | Version: 7.7 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time | Unknown/Multiple crash | Test Case: Blocked By: | Blocking: Related Tickets: #7679 | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Changes (by tjakway): * cc: tjakway (added) -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8657#comment:13> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#8657: -fregs-graph still has a limit on spill slots -------------------------------------+------------------------------------- Reporter: simonmar | Owner: archblob Type: bug | Status: new Priority: normal | Milestone: Component: Compiler (NCG) | Version: 7.7 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time | Unknown/Multiple crash | Test Case: Blocked By: | Blocking: Related Tickets: #7679 | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by dfeuer): bgamari, can we close this ticket? The performance issue remains open as #7679. -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8657#comment:14> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#8657: -fregs-graph still has a limit on spill slots -------------------------------------+------------------------------------- Reporter: simonmar | Owner: archblob Type: bug | Status: new Priority: normal | Milestone: Component: Compiler (NCG) | Version: 7.7 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time | Unknown/Multiple crash | Test Case: Blocked By: | Blocking: Related Tickets: #7679 | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by bgamari): I don't believe so, the limit is still present in the graph coloring allocator. -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8657#comment:15> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#8657: -fregs-graph still has a limit on spill slots -------------------------------------+------------------------------------- Reporter: simonmar | Owner: archblob Type: bug | Status: new Priority: normal | Milestone: Component: Compiler (NCG) | Version: 7.7 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time | Unknown/Multiple crash | Test Case: Blocked By: | Blocking: Related Tickets: #7679 | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by carter): https://gitlab.haskell.org/ghc/ghc/merge_requests/219 might address this -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8657#comment:16> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#8657: -fregs-graph still has a limit on spill slots -------------------------------------+------------------------------------- Reporter: simonmar | Owner: archblob Type: bug | Status: patch Priority: normal | Milestone: Component: Compiler (NCG) | Version: 7.7 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time | Unknown/Multiple crash | Test Case: Blocked By: | Blocking: Related Tickets: #7679 | Differential Rev(s): Wiki Page: | https://gitlab.haskell.org/ghc/ghc/merge_requests/219 -------------------------------------+------------------------------------- Changes (by AndreasK): * status: new => patch * differential: => https://gitlab.haskell.org/ghc/ghc/merge_requests/219 -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8657#comment:17> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#8657: -fregs-graph still has a limit on spill slots -------------------------------------+------------------------------------- Reporter: simonmar | Owner: archblob Type: bug | Status: closed Priority: normal | Milestone: Component: Compiler (NCG) | Version: 7.7 Resolution: fixed | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time | Unknown/Multiple crash | Test Case: Blocked By: | Blocking: Related Tickets: #7679 | Differential Rev(s): Wiki Page: | https://gitlab.haskell.org/ghc/ghc/merge_requests/219 -------------------------------------+------------------------------------- Changes (by AndreasK): * status: patch => closed * resolution: => fixed Comment: Fixed in HEAD but likely too late to make it into 8.8. -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8657#comment:18> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#8657: -fregs-graph still has a limit on spill slots -------------------------------------+------------------------------------- Reporter: simonmar | Owner: archblob Type: bug | Status: merge Priority: normal | Milestone: Component: Compiler (NCG) | Version: 7.7 Resolution: fixed | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time | Unknown/Multiple crash | Test Case: Blocked By: | Blocking: Related Tickets: #7679 | Differential Rev(s): Wiki Page: | https://gitlab.haskell.org/ghc/ghc/merge_requests/219 -------------------------------------+------------------------------------- Changes (by AndreasK): * status: closed => merge -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8657#comment:19> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#8657: -fregs-graph still has a limit on spill slots -------------------------------------+------------------------------------- Reporter: simonmar | Owner: archblob Type: bug | Status: merge Priority: normal | Milestone: 8.8.1 Component: Compiler (NCG) | Version: 7.7 Resolution: fixed | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time | Unknown/Multiple crash | Test Case: Blocked By: | Blocking: Related Tickets: #7679 | Differential Rev(s): Wiki Page: | https://gitlab.haskell.org/ghc/ghc/merge_requests/219 -------------------------------------+------------------------------------- Changes (by bgamari): * milestone: => 8.8.1 Comment: I'm happy to merge this for 8.8 but let's hold off on 8.6. -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8657#comment:20> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#8657: -fregs-graph still has a limit on spill slots -------------------------------------+------------------------------------- Reporter: simonmar | Owner: archblob Type: bug | Status: merge Priority: normal | Milestone: 8.8.1 Component: Compiler (NCG) | Version: 7.7 Resolution: fixed | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time | Unknown/Multiple crash | Test Case: Blocked By: | Blocking: Related Tickets: #7679 | Differential Rev(s): Wiki Page: | https://gitlab.haskell.org/ghc/ghc/merge_requests/219 -------------------------------------+------------------------------------- Comment (by Marge Bot <ben+marge-bot@…>): In [changeset:"03b7abc19c8b0ec5c606cc2da208d2d004807fe9/ghc" 03b7abc1/ghc]: {{{ #!CommitTicketReference repository="ghc" revision="03b7abc19c8b0ec5c606cc2da208d2d004807fe9" Allow resizing the stack for the graph allocator. The graph allocator now dynamically resizes the number of stack slots when running into the limit. This fixes #8657. Also loop membership of basic blocks is now available in the register allocator for cost heuristics. }}} -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8657#comment:21> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
participants (1)
-
GHC