[docs] [issue28810] Document bytecode changes in 3.6

Serhiy Storchaka report at bugs.python.org
Sat Nov 26 13:24:04 EST 2016


New submission from Serhiy Storchaka:

There are many bytecode changes in 3.6, but seems most of them are not documented (besides short line in _bootstrap_external.py).

* The bytecode now uses 16 bit units (wordcode) (issue26647).

* Added FORMAT_VALUE opcode (issue25483).

* Added BUILD_CONST_KEY_MAP opcode (issue27140).

* Added BUILD_STRING opcode (issue27078).

* Added BUILD_TUPLE_UNPACK_WITH_CALL opcode (issue28257).

* Added SETUP_ANNOTATIONS and STORE_ANNOTATION opcodes (issue27985).

* Changed CALL_FUNCTION, CALL_FUNCTION_KW and BUILD_MAP_UNPACK_WITH_CALL opcodes, removed CALL_FUNCTION_VAR, CALL_FUNCTION_VAR_KW opcodes, added CALL_FUNCTION_EX opcode (issue27213).

* Changed MAKE_FUNCTION opcode, removed MAKE_CLOSURE opcode (issue27095).

* Not related to the bytecode itself: lineno delta of code.co_lnotab now is signed (issue26107).

There are third-party projects that need correct information about bytecode changes.

----------
assignee: docs at python
components: Documentation
messages: 281788
nosy: docs at python, serhiy.storchaka
priority: high
severity: normal
stage: needs patch
status: open
title: Document bytecode changes in 3.6
type: enhancement
versions: Python 3.6, Python 3.7

_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue28810>
_______________________________________


More information about the docs mailing list