diff options
author | Bartosz Nitka <niteria@gmail.com> | 2018-01-13 02:02:22 +0000 |
---|---|---|
committer | Bartosz Nitka <niteria@gmail.com> | 2018-01-15 20:35:58 +0000 |
commit | cf2c029ccdb967441c85ffb66073974fbdb20c20 (patch) | |
tree | 482348d44a33f174a8d152bb5830e404e1f9c87f /mk/warnings.mk | |
parent | 8de8930520dce26ffa4fa1e67a977213de667e16 (diff) | |
download | haskell-cf2c029ccdb967441c85ffb66073974fbdb20c20.tar.gz |
Fix quadratic behavior of prepareAlts
Summary:
This code is quadratic and a simple test case I used
managed to tickle it.
The example (same one as #14667) looks like this:
```
module A10000 where
data A = A
| A00001
| A00002
...
| A10000
f :: A -> Int
f A00001 = 19900001
f A00002 = 19900002
...
f A10000 = 19910000
```
Applied on top of a fix for #14667, it gives a 30% compile time
improvement.
Test Plan: ./validate
Reviewers: simonpj, bgamari
Subscribers: rwbarton, thomie, simonmar, carter
Differential Revision: https://phabricator.haskell.org/D4307
Diffstat (limited to 'mk/warnings.mk')
0 files changed, 0 insertions, 0 deletions