PM check time regression in 8.10-rc1
This module takes a looong time to compile, it didn't in GHC 8.8.2. The culprit seems to be the new pattern match checker.
A somewhat simplified example: PM.hs. The real module is a bit larger and takes almost 5 minutes to compile.
$ ghc --version
The Glorious Glasgow Haskell Compilation System, version 8.10.0.20200123
$ time ghc -fforce-recomp -Wall -Wcompat -ddump-timings -c PM.hs
*** initializing package database:
initializing package database: alloc=10342256 time=48.697
*** Parser [PM]:
Parser [PM]: alloc=9577712 time=12.130
*** Renamer/typechecker [PM]:
Renamer/typechecker [PM]: alloc=462941960 time=805.690
*** Desugar [PM]:
Desugar [PM]: alloc=319563794088 time=169358.862
*** Simplifier [PM]:
Simplifier [PM]: alloc=63971400 time=45.391
*** CoreTidy [PM]:
CoreTidy [PM]: alloc=15690360 time=8.492
*** CorePrep [PM]:
CorePrep [PM]: alloc=14808 time=0.014
*** CodeGen [PM]:
CodeGen [PM]: alloc=231252880 time=142.590
*** systool:as:
systool:as: alloc=85432 time=0.390
real 2m50.227s
user 2m50.344s
sys 0m0.215s