[Python-Dev] Improving the bytecode
Serhiy Storchaka
storchaka at gmail.com
Sat Jun 4 04:08:39 EDT 2016
Following the converting 8-bit bytecode to 16-bit bytecode (wordcode),
there are other issues for improving the bytecode.
1. http://bugs.python.org/issue27129
Make the bytecode more 16-bit oriented.
2. http://bugs.python.org/issue27140
Add new opcode BUILD_CONST_KEY_MAP for building a dict with constant
keys. This optimize the common case and especially helpful for two
following issues (creating and calling functions).
3. http://bugs.python.org/issue27095
Simplify MAKE_FUNCTION/MAKE_CLOSURE. Instead packing three numbers in
oparg the new MAKE_FUNCTION takes built tuples and dicts from the stack.
MAKE_FUNCTION and MAKE_CLOSURE are merged in the single opcode.
4. http://bugs.python.org/issue27213
Rework CALL_FUNCTION* opcodes. Replace four existing opcodes with three
simpler and more efficient opcodes.
5. http://bugs.python.org/issue27127
Rework the for loop implementation.
6. http://bugs.python.org/issue17611
Move unwinding of stack for "pseudo exceptions" from interpreter to
compiler.
More information about the Python-Dev
mailing list