| 1. Does the inliner treat join point bindings differently to normal | bindings? I don't think so. Use -dverbose-core2core -ddump-inlinings -ddump-occur-anal to see exactly what is getting inlined and why. | 2. How can I stop the compiler introducing this join point which seems to | get in the way of the inliner? I don't think you can. I don't see why they should get in the way ... quite the reverse actually. Simon | -----Original Message----- | From: ghc-devs [mailto:ghc-devs-bounces@haskell.org] On Behalf Of Matthew | Pickering | Sent: 16 January 2018 11:16 | To: GHC developers <ghc-devs@haskell.org> | Subject: Are join points inlined differently from normal bindings? | | I have quite a complicated program which relies on the optimiser inlining | very aggressively. | | In 8.0.2, it works fine and produces the core I am expecting. | | In 8.2.2, one of the bindings is identified as a join point and then not | inlined when doing so would lead to the same code. Bumping the unfolding- | use-threshold to 10 (from 8) causes it to be inlined and produces the | right core. | | Here is the core for reference - | https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgist.git | hub.com%2Fmpickering%2Fbe30105b97fa7e4149c9fa935d72cd1c&data=02%7C01%7Csi | monpj%40microsoft.com%7C4bdf68e2ca8e480b1ba808d55cd2a9db%7C72f988bf86f141 | af91ab2d7cd011db47%7C1%7C0%7C636516982263961282&sdata=W59V18L00glmNB7XCKB | B90hTEU3QrgiT9rhGgO2ezec%3D&reserved=0 | | I haven't dug into which exact part of my program introduces this join | point but this seems like a regression from 8.0.2. | | However, I make a mailing list post as I unsure how to expect the inliner | to treat join points. | | Questions. | | 1. Does the inliner treat join point bindings differently to normal | bindings? | 2. How can I stop the compiler introducing this join point which seems to | get in the way of the inliner? | | Cheers, | | Matt | _______________________________________________ | ghc-devs mailing list | ghc-devs@haskell.org | https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fmail.hask | ell.org%2Fcgi-bin%2Fmailman%2Flistinfo%2Fghc- | devs&data=02%7C01%7Csimonpj%40microsoft.com%7C4bdf68e2ca8e480b1ba808d55cd | 2a9db%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636516982263961282&sda | ta=iNkZMaLfXCcP2ulWv2AlfVTvVq3LvsSadB6BytF6NUg%3D&reserved=0