<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/cpython-git.git/Python/opcode_targets.h, branch enum-lost-fixes</title>
<subtitle>github.com: python/cpython.git
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/'/>
<entry>
<title>bpo-43754: Eliminate bindings for partial pattern matches (GH-25229)</title>
<updated>2021-05-02T20:02:10+00:00</updated>
<author>
<name>Brandt Bucher</name>
<email>brandt@python.org</email>
</author>
<published>2021-05-02T20:02:10+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=0ad1e0384c8afc5259a6d03363491d89500a5d03'/>
<id>0ad1e0384c8afc5259a6d03363491d89500a5d03</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-43683: Handle generator entry in bytecode (GH-25138)</title>
<updated>2021-04-06T10:48:59+00:00</updated>
<author>
<name>Mark Shannon</name>
<email>mark@hotpy.org</email>
</author>
<published>2021-04-06T10:48:59+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=b37181e69209746adc2119c471599a1ea5faa6c8'/>
<id>b37181e69209746adc2119c471599a1ea5faa6c8</id>
<content type='text'>
* Handle check for sending None to starting generator and coroutine into bytecode.

* Document new bytecode and make it fail gracefully if mis-compiled.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Handle check for sending None to starting generator and coroutine into bytecode.

* Document new bytecode and make it fail gracefully if mis-compiled.
</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-42128: Structural Pattern Matching (PEP 634) (GH-22917)</title>
<updated>2021-02-26T22:51:55+00:00</updated>
<author>
<name>Brandt Bucher</name>
<email>brandtbucher@gmail.com</email>
</author>
<published>2021-02-26T22:51:55+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=145bf269df3530176f6ebeab1324890ef7070bf8'/>
<id>145bf269df3530176f6ebeab1324890ef7070bf8</id>
<content type='text'>
Co-authored-by: Guido van Rossum &lt;guido@python.org&gt;
Co-authored-by: Talin &lt;viridia@gmail.com&gt;
Co-authored-by: Pablo Galindo &lt;pablogsal@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Co-authored-by: Guido van Rossum &lt;guido@python.org&gt;
Co-authored-by: Talin &lt;viridia@gmail.com&gt;
Co-authored-by: Pablo Galindo &lt;pablogsal@gmail.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-42246: Make sure that `f_lasti`, and thus `f_lineno`, is set correctly after raising or reraising an exception (GH-23803)</title>
<updated>2020-12-17T13:55:28+00:00</updated>
<author>
<name>Mark Shannon</name>
<email>mark@hotpy.org</email>
</author>
<published>2020-12-17T13:55:28+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=bf353f3c2d937772a8cf30b15fd8eb7b82665ccb'/>
<id>bf353f3c2d937772a8cf30b15fd8eb7b82665ccb</id>
<content type='text'>
* Ensure that f_lasti is set correctly after an exception is raised to conform to PEP 626.

* Update importlib

* Add NEWS.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Ensure that f_lasti is set correctly after an exception is raised to conform to PEP 626.

* Update importlib

* Add NEWS.</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-39320: Handle unpacking of **values in compiler (GH-18141)</title>
<updated>2020-01-27T09:57:45+00:00</updated>
<author>
<name>Mark Shannon</name>
<email>mark@hotpy.org</email>
</author>
<published>2020-01-27T09:57:45+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=8a4cd700a7426341c2074a2b580306d2d60ec839'/>
<id>8a4cd700a7426341c2074a2b580306d2d60ec839</id>
<content type='text'>
* Add DICT_UPDATE and DICT_MERGE bytecodes. Use them for ** unpacking.

* Remove BUILD_MAP_UNPACK and BUILD_MAP_UNPACK_WITH_CALL, as they are now unused.

* Update magic number for ** unpacking opcodes.

* Update dis.rst to incorporate new bytecodes.

* Add blurb entry.

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Add DICT_UPDATE and DICT_MERGE bytecodes. Use them for ** unpacking.

* Remove BUILD_MAP_UNPACK and BUILD_MAP_UNPACK_WITH_CALL, as they are now unused.

* Update magic number for ** unpacking opcodes.

* Update dis.rst to incorporate new bytecodes.

* Add blurb entry.

</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-39320: Handle unpacking of *values in compiler (GH-17984)</title>
<updated>2020-01-23T09:25:17+00:00</updated>
<author>
<name>Mark Shannon</name>
<email>mark@hotpy.org</email>
</author>
<published>2020-01-23T09:25:17+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=13bc13960cc83dbd1cb5701d9a59ac9b9144b205'/>
<id>13bc13960cc83dbd1cb5701d9a59ac9b9144b205</id>
<content type='text'>
* Add three new bytecodes: LIST_TO_TUPLE, LIST_EXTEND, SET_UPDATE. Use them to implement star unpacking expressions.

* Remove four bytecodes BUILD_LIST_UNPACK, BUILD_TUPLE_UNPACK, BUILD_SET_UNPACK and  BUILD_TUPLE_UNPACK_WITH_CALL opcodes as they are now unused.

* Update magic number and dis.rst for new bytecodes.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Add three new bytecodes: LIST_TO_TUPLE, LIST_EXTEND, SET_UPDATE. Use them to implement star unpacking expressions.

* Remove four bytecodes BUILD_LIST_UNPACK, BUILD_TUPLE_UNPACK, BUILD_SET_UNPACK and  BUILD_TUPLE_UNPACK_WITH_CALL opcodes as they are now unused.

* Update magic number and dis.rst for new bytecodes.
</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-39156: Break up COMPARE_OP into four logically distinct opcodes. (GH-17754)</title>
<updated>2020-01-14T10:12:45+00:00</updated>
<author>
<name>Mark Shannon</name>
<email>mark@hotpy.org</email>
</author>
<published>2020-01-14T10:12:45+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=9af0e47b1705457bb6b327c197f2ec5737a1d8f6'/>
<id>9af0e47b1705457bb6b327c197f2ec5737a1d8f6</id>
<content type='text'>
Break up COMPARE_OP into four logically distinct opcodes:
* COMPARE_OP for rich comparisons
* IS_OP for 'is' and 'is not' tests
* CONTAINS_OP for 'in' and 'is not' tests
* JUMP_IF_NOT_EXC_MATCH for checking exceptions in 'try-except' statements.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Break up COMPARE_OP into four logically distinct opcodes:
* COMPARE_OP for rich comparisons
* IS_OP for 'is' and 'is not' tests
* CONTAINS_OP for 'in' and 'is not' tests
* JUMP_IF_NOT_EXC_MATCH for checking exceptions in 'try-except' statements.
</pre>
</div>
</content>
</entry>
<entry>
<title>Produce cleaner bytecode for 'with' and 'async with' by generating separate code for normal and exceptional paths. (#6641)</title>
<updated>2019-11-21T09:11:43+00:00</updated>
<author>
<name>Mark Shannon</name>
<email>mark@hotpy.org</email>
</author>
<published>2019-11-21T09:11:43+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=fee552669f21ca294f57fe0df826945edc779090'/>
<id>fee552669f21ca294f57fe0df826945edc779090</id>
<content type='text'>
Remove BEGIN_FINALLY, END_FINALLY, CALL_FINALLY and POP_FINALLY bytecodes. Implement finally blocks by code duplication.
Reimplement frame.lineno setter using line numbers rather than bytecode offsets.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Remove BEGIN_FINALLY, END_FINALLY, CALL_FINALLY and POP_FINALLY bytecodes. Implement finally blocks by code duplication.
Reimplement frame.lineno setter using line numbers rather than bytecode offsets.</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-34880: Add the LOAD_ASSERTION_ERROR opcode. (GH-15073)</title>
<updated>2019-08-25T09:44:09+00:00</updated>
<author>
<name>Zackery Spytz</name>
<email>zspytz@gmail.com</email>
</author>
<published>2019-08-25T09:44:09+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=ce6a070414ed1e1374d1e6212bfbff61b6d5d755'/>
<id>ce6a070414ed1e1374d1e6212bfbff61b6d5d755</id>
<content type='text'>
Fix assert statement misbehavior if AssertionError is shadowed.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fix assert statement misbehavior if AssertionError is shadowed.
</pre>
</div>
</content>
</entry>
<entry>
<title>bpo-33041: Rework compiling an "async for" loop. (#6142)</title>
<updated>2018-03-23T12:34:35+00:00</updated>
<author>
<name>Serhiy Storchaka</name>
<email>storchaka@gmail.com</email>
</author>
<published>2018-03-23T12:34:35+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/cpython-git.git/commit/?id=702f8f3611bc49b73772cce2b9b041bd11ff9b35'/>
<id>702f8f3611bc49b73772cce2b9b041bd11ff9b35</id>
<content type='text'>
* Added new opcode END_ASYNC_FOR.
* Setting global StopAsyncIteration no longer breaks "async for" loops.
* Jumping into an "async for" loop is now disabled.
* Jumping out of an "async for" loop no longer corrupts the stack.
* Simplify the compiler.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Added new opcode END_ASYNC_FOR.
* Setting global StopAsyncIteration no longer breaks "async for" loops.
* Jumping into an "async for" loop is now disabled.
* Jumping out of an "async for" loop no longer corrupts the stack.
* Simplify the compiler.
</pre>
</div>
</content>
</entry>
</feed>
