
#14152: Float exit paths out of recursive functions -------------------------------------+------------------------------------- Reporter: nomeata | Owner: (none) Type: task | Status: new Priority: normal | Milestone: Component: Compiler | Version: 8.2.1 Resolution: | Keywords: JoinPoints Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: #14137 #10918 | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by simonpj):
The check of whether loopification can be done is pretty cheap, and falls out of Occurence Analysis anyways
Hmm. I just want to avoid an extra traversal on every single iteration. I suppose you could just do it as ''part'' of occurrence analysis? The occurrence analyser doesn't generally change the structure of the code; but it does do so in one situation; it drops dead code to improve the occurrence info on other things. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/14152#comment:7 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler