Carl Friedrich Bolz-Tereick pushed to branch branch/default at PyPy / pypy
Commits: 48fd242b by Carl Friedrich Bolz-Tereick at 2020-03-08T12:18:16+01:00 a branch to try to help the jit reason about nested scopes better, Cells in particular --HG-- branch : nested-scopes-jit - - - - - fe216fc2 by Carl Friedrich Bolz-Tereick at 2020-03-09T14:35:53+01:00 start implementing Cell families, that Cells are grouped into, according to their outer defining function. Goal is to be able to track immutability of Cells (like mapdict instance fields). Doesn't work so far, since the initializing set is counted as a mutation so far. --HG-- branch : nested-scopes-jit - - - - - e1403f7f by Carl Friedrich Bolz-Tereick at 2020-03-09T17:35:16+01:00 fix the failing test: do the cell initialization differently, first initialize only those cells that aren't arguments. After argument parsing, create the cells with the correct values directly. That way the tracking whether cells are ever mutated works correctly for arguments. --HG-- branch : nested-scopes-jit - - - - - a137d056 by Carl Friedrich Bolz-Tereick at 2020-03-09T17:47:27+01:00 use one family per cell --HG-- branch : nested-scopes-jit - - - - - 1efa3acb by Carl Friedrich Bolz-Tereick at 2020-03-09T18:05:48+01:00 fix bug (also, it helps to add the test file) --HG-- branch : nested-scopes-jit - - - - - b27b0ea0 by Carl Friedrich Bolz-Tereick at 2020-03-16T13:45:08+01:00 merge default --HG-- branch : nested-scopes-jit - - - - - 3b16bb59 by Carl Friedrich Bolz-Tereick at 2020-03-16T13:48:31+01:00 fix test, this test shows the effect of the branch: global immutable cells can have their access completely folded away --HG-- branch : nested-scopes-jit - - - - - 0a92bf79 by Carl Friedrich Bolz-Tereick at 2020-03-16T18:11:07+01:00 make the cells optimization also work for non-arguments, as long as the variable is only written to once --HG-- branch : nested-scopes-jit - - - - - 2576be14 by Carl Friedrich Bolz-Tereick at 2020-03-16T23:27:00+01:00 undo most of d2497f614daa: simplify Cell initialization back to what it was on default, now that Cell change tracking is somewhat more robust --HG-- branch : nested-scopes-jit - - - - - 2eb4875a by Carl Friedrich Bolz-Tereick at 2020-03-17T14:27:40+01:00 strengthen test, add a proper test for non-interference --HG-- branch : nested-scopes-jit - - - - - 8ee78dde by Carl Friedrich Bolz-Tereick at 2020-03-17T15:18:36+01:00 document branch --HG-- branch : nested-scopes-jit - - - - - 8972f09b by Carl Friedrich Bolz-Tereick at 2020-03-17T15:19:37+01:00 close to-be-merged branch --HG-- branch : nested-scopes-jit - - - - - e04f626f by Carl Friedrich Bolz-Tereick at 2020-03-17T15:23:54+01:00 merge nested-scopes-jit teach the JIT to reason better about nested scopes. In particular, track whether the cells of a single local variable are ever mutated, and if they aren't, constant fold the read access from them, if they are constant. - - - - - 75d4e0a1 by Carl Friedrich Bolz-Tereick at 2020-03-17T15:25:31+01:00 merge heads - - - - - 6 changed files: - pypy/doc/whatsnew-head.rst - pypy/interpreter/nestedscope.py - pypy/interpreter/pycode.py - pypy/interpreter/pyframe.py - + pypy/interpreter/test/test_cellfamily.py - pypy/module/pypyjit/test_pypy_c/test_call.py View it on GitLab: https://foss.heptapod.net/pypy/pypy/compare/ed9633e20a9454ef8a8385876d5bc414fc5a37b4...75d4e0a17e12683cc0ad640a45e4e012c1f89601 --- View it on GitLab: https://foss.heptapod.net/pypy/pypy/compare/ed9633e20a9454ef8a8385876d5bc414fc5a37b4...75d4e0a17e12683cc0ad640a45e4e012c1f89601 You're receiving this email because of your account on foss.heptapod.net.
_______________________________________________ pypy-commit mailing list pypy-commit@python.org https://mail.python.org/mailman/listinfo/pypy-commit