
#13745: Investigate compile-time regressions in regex-tdfa-1.2.2 -------------------------------------+------------------------------------- Reporter: bgamari | Owner: (none) Type: task | Status: new Priority: high | Milestone: 8.2.2 Component: Compiler | Version: 8.0.1 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time | Unknown/Multiple performance bug | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by dfeuer): Going from 8.0.2 to 8.2.1, things look very different right near the beginning, presumably as a result of the early inline patch. In 8.0.2, the first simplifier pass gives {{{ *** Simplifier [TextRegexTDFANewDFAEngine_FA]: Result size of Simplifier iteration=1 = {terms: 6,220, types: 14,606, coercions: 1,563} }}} whereas in 8.2.1 it gives {{{ *** Simplifier [TextRegexTDFANewDFAEngine_FA]: Result size of Simplifier iteration=1 = {terms: 17,641, types: 38,397, coercions: 10,258, joins: 30/233} }}} Things remain pretty bad until after float out, when they first get surprisingly good and then sort of oscillate. I'll take a look at the differences across the commits Ryan points out. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/13745#comment:8 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler