Changes between Initial Version and Version 1 of Ticket #15519, comment 10


Ignore:
Timestamp:
Aug 27, 2018 7:38:54 PM (13 months ago)
Author:
sgraf
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #15519, comment 10

    initial v1  
    1919So, the fix to apply in your situation seems to be to eta-expand `test1` and omit the `INLINE` pragma.
    2020
    21 As to /why/ that fixes performance, I'm really at a loss. It's probably related to the fact that the unfolding attached to `testGrammar1` isn't `CONLIKE`, whereas the RHS at the time when SpecConstr runs is. I can't find any relevant code in SpecConstr that looks at unfoldings of /local/ ids, though. Perhaps I'll find time to look into this some more tomorrow.
     21As to ''why'' that fixes performance, I'm really at a loss. It's probably related to the fact that the unfolding attached to `testGrammar1` isn't `CONLIKE`, whereas the RHS at the time when SpecConstr runs is. I can't find any relevant code in SpecConstr that looks at unfoldings of ''local'' ids, though. Perhaps I'll find time to look into this some more tomorrow.
    2222
    2323P.S.: `test2` fails to specialise completely in a similar way.