
#14989: "Each block should be reachable from only one ProcPoint" compiling `integer` with `-fllvm` -------------------------------------+------------------------------------- Reporter: sgraf | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 8.5 Resolution: | Keywords: Operating System: Windows | Architecture: x86_64 Type of failure: Compile-time | (amd64) crash or panic | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by sgraf): This is probably the culprit: https://github.com/ghc/ghc/blob/ca535f95a742d885c4082c9dc296c151fb3c1e12/com... `cbe_fix` doesn't quite cut it because of the change in dominance frontiers outlined above. The most efficient solution would be to only consider the merged blocks and their successors. I just realized that the second CBE pass is new and also that stack layout happens before. Doesn't a change in proc points affect stack layout? I'd do the fix myself (inserting a proper call to `minimalProcPointSet`), but I feel like I don't understand enough of the interactions and where to conjure `new_proc_points` from after that. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/14989#comment:2 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler