On Wed, Nov 24, 2021 at 11:14:00PM +0000, Simon Peyton Jones via ghc-devs wrote:
> | For two join points to be duplicates they need to not only be alpha > | equivalent but to also have the same continuation. > > Yes exactly. And it would not be hard to adapt the existing CSE pass > to support this. Just needs doing. > > A ticket and a repo case would be really helpful. I'll do my best to construct a standalone reproducer that is not mired in ByteString code. The ByteString example should not be too difficult to mimmic in code that relies only on base. Though I might still have to use Foreign.Storable and Foreign.Ptr and some sort of unsafePerformIO variant in there, so that I get essentially the same basic structure of inlining and join points. I guess I'll try removing excess baggage while the basic structure persists, and ideally end up with something small enough. -- Viktor. _______________________________________________ ghc-devs mailing list ghc-devs@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs