]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
GH-109190: Copyedit 3.12 What's New: Bytecode (#109821)
authorAdam Turner <9087854+AA-Turner@users.noreply.github.com>
Thu, 28 Sep 2023 04:40:59 +0000 (05:40 +0100)
committerGitHub <noreply@github.com>
Thu, 28 Sep 2023 04:40:59 +0000 (04:40 +0000)
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
Doc/whatsnew/3.12.rst
Misc/NEWS.d/3.12.0a4.rst

index 75a784f620f5fde913c966b51c09c2587c4353bc..ec39616d7c9d2b65cdf7f0836e794d4f84306430 100644 (file)
@@ -701,6 +701,9 @@ dis
   :data:`dis.hasarg` collection instead.
   (Contributed by Irit Katriel in :gh:`94216`.)
 
+* Add the :data:`dis.hasexc` collection to signify instructions that set
+  an exception handler. (Contributed by Irit Katriel in :gh:`94216`.)
+
 fractions
 ---------
 
@@ -884,6 +887,10 @@ statistics
 sys
 ---
 
+* Add the :mod:`sys.monitoring` namespace to expose the new :ref:`PEP 669
+  <whatsnew312-pep669>` monitoring API.
+  (Contributed by Mark Shannon in :gh:`103082`.)
+
 * Add :func:`sys.activate_stack_trampoline` and
   :func:`sys.deactivate_stack_trampoline` for activating and deactivating
   stack profiler trampolines,
@@ -1083,9 +1090,27 @@ CPython bytecode changes
 * Remove the :opcode:`!PRECALL` instruction. (Contributed by Mark Shannon in
   :gh:`92925`.)
 
+* Add the :opcode:`BINARY_SLICE` and :opcode:`STORE_SLICE` instructions.
+  (Contributed by Mark Shannon in :gh:`94163`.)
+
+* Add the :opcode:`CALL_INTRINSIC_1` instructions.
+  (Contributed by Mark Shannon in :gh:`99005`.)
+
+* Add the :opcode:`CALL_INTRINSIC_2` instruction.
+  (Contributed by Irit Katriel in :gh:`101799`.)
+
+* Add the :opcode:`CLEANUP_THROW` instruction.
+  (Contributed by Brandt Bucher in :gh:`90997`.)
+
+* Add the :opcode:`!END_SEND` instruction.
+  (Contributed by Mark Shannon in :gh:`103082`.)
+
 * Add the :opcode:`LOAD_FAST_AND_CLEAR` instruction as part of the
   implementation of :pep:`709`. (Contributed by Carl Meyer in :gh:`101441`.)
 
+* Add the :opcode:`LOAD_FAST_CHECK` instruction.
+  (Contributed by Dennis Sweeney in :gh:`93143`.)
+
 * Add the :opcode:`LOAD_FROM_DICT_OR_DEREF`, :opcode:`LOAD_FROM_DICT_OR_GLOBALS`,
   and :opcode:`LOAD_LOCALS` opcodes as part of the implementation of :pep:`695`.
   Remove the :opcode:`!LOAD_CLASSDEREF` opcode, which can be replaced with
@@ -1095,12 +1120,7 @@ CPython bytecode changes
 * Add the :opcode:`LOAD_SUPER_ATTR` instruction. (Contributed by Carl Meyer and
   Vladimir Matveev in :gh:`103497`.)
 
-FOR_ITER new behavior is not mentioned
-The fact that POP_JUMP_IF_* family of instructions are now real instructions is not mentioned
-YIELD_VALUE need for an argument is not mentioned
-
-
-
+* Add the :opcode:`RETURN_CONST` instruction. (Contributed by Wenyang Wang in :gh:`101632`.)
 
 Demos and Tools
 ===============
index b3b39024056ccc20a5e30b0a0a39fb29fd33a2af..75246f3f13503eb765a2e59d49f9c3535c986309 100644 (file)
@@ -23,10 +23,10 @@ Remove :opcode:`UNARY_POSITIVE`, :opcode:`ASYNC_GEN_WRAP` and
 .. nonce: D7H6j4
 .. section: Core and Builtins
 
-Add new :opcode:`CALL_INSTRINSIC_1` instruction. Remove
+Add new :opcode:`CALL_INTRINSIC_1` instruction. Remove
 :opcode:`IMPORT_STAR`, :opcode:`PRINT_EXPR` and
 :opcode:`STOPITERATION_ERROR`, replacing them with the
-:opcode:`CALL_INSTRINSIC_1` instruction.
+:opcode:`CALL_INTRINSIC_1` instruction.
 
 ..