Improve checking of joins in Core Lint
authorSimon Peyton Jones <simonpj@microsoft.com>
Thu, 16 Feb 2017 09:42:32 +0000 (09:42 +0000)
committerSimon Peyton Jones <simonpj@microsoft.com>
Thu, 16 Feb 2017 14:24:57 +0000 (14:24 +0000)
commit6bab649bde653f13c15eba30d5007bef4a9a9d3a
tree9732155c1110fa3e2b3d5e68f249eee4c47a35ed
parentfc9d152b058f21ab03986ea722d0c94688b9969f
Improve checking of joins in Core Lint

This patch addresses the rather expensive treatment of join points,
identified in Trac #13220 comment:17

Before we were tracking the "bad joins".  Now we track the good ones.
That is easier to think about, and much more efficient; see CoreLint
Note [Join points].

On the way I did some other modest refactoring, among other things
removing a duplicated call of lintIdBndr for let-bindings.

On teh
compiler/coreSyn/CoreLint.hs