]> git.ipfire.org Git - thirdparty/Python/cpython.git/commit
gh-106290: Fix edge cases around uops (#106319)
authorGuido van Rossum <guido@python.org>
Mon, 3 Jul 2023 20:05:11 +0000 (13:05 -0700)
committerGitHub <noreply@github.com>
Mon, 3 Jul 2023 20:05:11 +0000 (20:05 +0000)
commit2028a4f6d996d2a46cbc33d0b65fdae284ee71fc
tree39508420ebb64059d1e04b6ffd015b8f7c81a52e
parent58906213cc5d8f2be311664766b4923ef29dae1f
gh-106290: Fix edge cases around uops (#106319)

- Tweak uops debugging output
- Fix the bug from gh-106290
- Rename `SET_IP` to `SAVE_IP` (per https://github.com/faster-cpython/ideas/issues/558)
- Add a `SAVE_IP` uop at the start of the trace (ditto)
- Allow `unbound_local_error`; this gives us uops for `LOAD_FAST_CHECK`, `LOAD_CLOSURE`, and `DELETE_FAST`
- Longer traces
- Support `STORE_FAST_LOAD_FAST`, `STORE_FAST_STORE_FAST`
- Add deps on pycore_uops.h to Makefile(.pre.in)
Include/internal/pycore_uops.h
Makefile.pre.in
Python/ceval.c
Python/executor_cases.c.h
Python/opcode_metadata.h
Python/optimizer.c
Tools/cases_generator/generate_cases.py