Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | GH-100982: Add `COMPARE_AND_BRANCH` instruction (GH-100983) | Mark Shannon | 2023-01-16 | 3 | -21/+23 |
| | |||||
* | GH-100892: consolidate `HEAD_LOCK/HEAD_UNLOCK` macros (#100953) | Kumar Aditya | 2023-01-15 | 1 | -0/+6 |
| | |||||
* | GH-100923: Embed jump mask in `COMPARE_OP` oparg (GH-100924) | Mark Shannon | 2023-01-11 | 2 | -2/+22 |
| | |||||
* | Post 3.12.0a4 | Thomas Wouters | 2023-01-10 | 1 | -1/+1 |
| | |||||
* | Python 3.12.0a4v3.12.0a4 | Thomas Wouters | 2023-01-10 | 1 | -2/+2 |
| | |||||
* | GH-100126: Skip incomplete frames in more places (GH-100613) | Brandt Bucher | 2023-01-09 | 1 | -0/+15 |
| | |||||
* | gh-100758: Refactor initialisation of frame headers into a single function ↵ | Irit Katriel | 2023-01-06 | 1 | -4/+8 |
| | | | | (_PyFrame_Initialize) (GH-100759) | ||||
* | GH-99005: More intrinsics (GH-100774) | Mark Shannon | 2023-01-06 | 4 | -90/+90 |
| | | | * Remove UNARY_POSITIVE, LIST_TO_TUPLE and ASYNC_GEN_WRAP, replacing them with intrinsics. | ||||
* | GH-99005: Add `CALL_INTRINSIC_1` instruction (GH-100771) | Mark Shannon | 2023-01-05 | 3 | -55/+63 |
| | | | | | | | | * Remove PRINT_EXPR instruction * Remove STOPITERATION_ERROR instruction * Remove IMPORT_STAR instruction | ||||
* | GH-100288: Remove LOAD_ATTR_METHOD_WITH_DICT instruction. (GH-100753) | Mark Shannon | 2023-01-05 | 2 | -27/+26 |
| | |||||
* | GH-100719: Remove the `co_nplaincellvars` field from code objects. (GH-100721) | Mark Shannon | 2023-01-04 | 1 | -1/+5 |
| | |||||
* | gh-100720: refactor calculation of number of frame slots for a code object ↵ | Irit Katriel | 2023-01-04 | 1 | -1/+10 |
| | | | | into the new function _PyFrame_NumSlotsForCodeObject (#100722) | ||||
* | gh-100146: Steal references from stack when building a list (#100147) | L. A. F. Pereira | 2023-01-03 | 1 | -0/+2 |
| | | | | | | | | | | When executing the BUILD_LIST opcode, steal the references from the stack, in a manner similar to the BUILD_TUPLE opcode. Implement this by offloading the logic to a new private API, _PyList_FromArraySteal(), that works similarly to _PyTuple_FromArraySteal(). This way, instead of performing multiple stack pointer adjustments while the list is being initialized, the stack is adjusted only once and a fast memory copy operation is performed in one fell swoop. | ||||
* | Fix `pydtrace.d` path comment in `Include/pydtrace.h` (#28539) | Mark Hansen | 2022-12-31 | 1 | -1/+1 |
| | |||||
* | gh-100228: Warn from os.fork() if other threads exist. (#100229) | Gregory P. Smith | 2022-12-29 | 4 | -0/+10 |
| | | | | | Not comprehensive, best effort warning. There are cases when threads exist on some platforms that this code cannot detect. macOS when API permissions allow and Linux with a readable /proc procfs present are the currently supported cases where a warning should show up reliably. Starting with a DeprecationWarning for now, it is less disruptive than something like RuntimeWarning and most likely to only be seen in people's CI tests - a good place to start with this messaging. | ||||
* | Revert "gh-100288: Specialise LOAD_ATTR_METHOD for managed dictionaries ↵ | Ken Jin | 2022-12-23 | 2 | -29/+28 |
| | | | | | (GH-100289)" (#100468) This reverts commit c3c7848a48b74a321632202e4bdcf2f465fb1cc6. | ||||
* | gh-100288: Specialise LOAD_ATTR_METHOD for managed dictionaries (GH-100289) | Ken Jin | 2022-12-23 | 2 | -28/+29 |
| | |||||
* | gh-92216: improve performance of `hasattr` for type objects (GH-99979) | Pieter Eendebak | 2022-12-23 | 1 | -0/+4 |
| | |||||
* | gh-99110: Initialize `frame->previous` in init_frame to fix segmentation ↵ | Bill Fisher | 2022-12-23 | 1 | -1/+4 |
| | | | | fault when accessing `frame.f_back` (#100182) | ||||
* | gh-99761: Add `_PyLong_IsPositiveSingleDigit` function to check for single ↵ | Pieter Eendebak | 2022-12-22 | 1 | -0/+19 |
| | | | | digit integers (#100064) | ||||
* | Better stats for `LOAD_ATTR` and `STORE_ATTR` (GH-100295) | Mark Shannon | 2022-12-16 | 1 | -1/+1 |
| | | | | | * Don't attempt to specialize for LOAD_ATTR on instance if class has attribute * Improvement to LOAD_ATTR and STORE_ATTR specialization stats. | ||||
* | gh-81057: Move the Cached Parser Dummy Name to _PyRuntimeState (#100277) | Eric Snow | 2022-12-16 | 2 | -1/+18 |
| | |||||
* | Move stats for the method cache into the `Py_STAT` machinery (GH-100255) | Mark Shannon | 2022-12-15 | 2 | -6/+7 |
| | |||||
* | GH-100222: fix typo _py_set_opocde -> _py_set_opcode (GH-100259) | Carl Meyer | 2022-12-15 | 1 | -1/+1 |
| | | | | | Typo introduced in #100223. Automerge-Triggered-By: GH:brandtbucher | ||||
* | GH-100000: Cleanup and polish various watchers code (GH-99998) | Itamar Ostricher | 2022-12-14 | 1 | -1/+0 |
| | | | | | | * Initialize `type_watchers` array to `NULL`s * Optimize code watchers notification * Optimize func watchers notification | ||||
* | gh-90111: Minor Cleanup for Runtime-Global Objects (gh-100254) | Eric Snow | 2022-12-14 | 3 | -6/+6 |
| | | | | | | | | * move _PyRuntime.global_objects.interned to _PyRuntime.cached_objects.interned_strings (and use _Py_CACHED_OBJECT()) * rename _PyRuntime.global_objects to _PyRuntime.static_objects (This also relates to gh-96075.) https://github.com/python/cpython/issues/90111 | ||||
* | GH-100222: Redefine _Py_CODEUNIT as a union to clarify structure of code ↵ | Mark Shannon | 2022-12-14 | 2 | -38/+41 |
| | | | | unit. (GH-100223) | ||||
* | gh-81057: Move Signal-Related Globals to _PyRuntimeState (gh-100085) | Eric Snow | 2022-12-12 | 3 | -5/+66 |
| | | | https://github.com/python/cpython/issues/81057 | ||||
* | gh-81057: Move faulthandler Globals to _PyRuntimeState (gh-100152) | Eric Snow | 2022-12-12 | 3 | -0/+102 |
| | | | https://github.com/python/cpython/issues/81057 | ||||
* | gh-81057: Move tracemalloc Globals to _PyRuntimeState (gh-100151) | Eric Snow | 2022-12-12 | 4 | -28/+124 |
| | | | https://github.com/python/cpython/issues/81057 | ||||
* | gh-81057: Fix the wasm32-wasi Buildbot (gh-100139) | Eric Snow | 2022-12-09 | 1 | -1/+1 |
| | | | | | The build was broken by gh-100084. https://github.com/python/cpython/issues/81057 | ||||
* | GH-98522: Add version number to code objects. (GH-98525) | Mark Shannon | 2022-12-09 | 2 | -0/+3 |
| | | | | | | * Add version number to code object for better versioning of functions. * Improves specialization for closures and list comprehensions. | ||||
* | gh-88267: Avoid DLL exporting functions from static builds on Windows(GH-99888) | Christian Rendina | 2022-12-09 | 1 | -3/+9 |
| | |||||
* | GH-100110: Specialize FOR_ITER for tuples (GH-100109) | Ken Jin | 2022-12-09 | 3 | -41/+49 |
| | | | * Specialize FOR_ITER for tuples | ||||
* | gh-81057: Move Threading-Related Globals to _PyRuntimeState (#100084) | Eric Snow | 2022-12-09 | 2 | -0/+83 |
| | | | https://github.com/python/cpython/issues/81057 | ||||
* | gh-81057: Move Ceval Trampoline Globals to _PyRuntimeState (gh-100083) | Eric Snow | 2022-12-09 | 4 | -41/+105 |
| | | | https://github.com/python/cpython/issues/81057 | ||||
* | gh-81057: Move time Globals to _PyRuntimeState (gh-100122) | Eric Snow | 2022-12-08 | 5 | -41/+28 |
| | | | https://github.com/python/cpython/issues/81057 | ||||
* | gh-81057: Move OS-Related Globals to _PyRuntimeState (gh-100082) | Eric Snow | 2022-12-08 | 7 | -0/+51 |
| | | | https://github.com/python/cpython/issues/81057 | ||||
* | gh-81057: Move More Globals to _PyRuntimeState (gh-100092) | Eric Snow | 2022-12-07 | 6 | -4/+37 |
| | | | https://github.com/python/cpython/issues/81057 | ||||
* | gh-98724: Fix Py_CLEAR() macro side effects (#99100) (#100070) | Victor Stinner | 2022-12-07 | 3 | -27/+96 |
| | | | | | | | | | | | | | | The Py_CLEAR(), Py_SETREF() and Py_XSETREF() macros now only evaluate their arguments once. If an argument has side effects, these side effects are no longer duplicated. Use temporary variables to avoid duplicating side effects of macro arguments. If available, use _Py_TYPEOF() to avoid type punning. Otherwise, use memcpy() for the assignment to prevent a miscompilation with strict aliasing caused by type punning. Add _Py_TYPEOF() macro: __typeof__() on GCC and clang. Add test_py_clear() and test_py_setref() unit tests to _testcapi. | ||||
* | PyUnicode_KIND() uses _Py_RVALUE() (#100060) | Victor Stinner | 2022-12-06 | 1 | -1/+1 |
| | | | | The PyUnicode_KIND() macro is modified to use _Py_RVALUE(), so it can no longer be used as a l-value. | ||||
* | Post 3.12.0a3 | Thomas Wouters | 2022-12-06 | 1 | -1/+1 |
| | |||||
* | Python 3.12.0a3v3.12.0a3 | Thomas Wouters | 2022-12-06 | 1 | -2/+2 |
| | |||||
* | gh-99741: Implement Multi-Phase Init for the _xxsubinterpreters Module ↵ | Eric Snow | 2022-12-05 | 1 | -3/+18 |
| | | | | | | | (gh-99742) _xxsubinterpreters is an internal module used for testing. https://github.com/python/cpython/issues/99741 | ||||
* | no-issue: Fix typo in pycore_object.h (gh-99994) | Ikko Ashimine | 2022-12-05 | 1 | -1/+1 |
| | |||||
* | gh-99741: Clean Up the _xxsubinterpreters Module (gh-99940) | Eric Snow | 2022-12-02 | 1 | -1/+1 |
| | | | | | This cleanup up resolves a few subtle bugs and makes the implementation for multi-phase init much cleaner. https://github.com/python/cpython/issues/99741 | ||||
* | gh-99741: Fix the Cross-Interpreter Data API (gh-99939) | Eric Snow | 2022-12-02 | 2 | -2/+4 |
| | | | | | There were some minor issues that showed up while I was working on porting _xxsubinterpreters to multi-phase init. This fixes them. https://github.com/python/cpython/issues/99741 | ||||
* | GH-91054: Add code object watchers API (GH-99859) | Itamar Ostricher | 2022-12-02 | 3 | -0/+40 |
| | | | | | | * Add API to allow extensions to set callback function on creation and destruction of PyCodeObject Co-authored-by: Ye11ow-Flash <janshah@cs.stonybrook.edu> | ||||
* | gh-89189: More compact range iterator (GH-27986) | Serhiy Storchaka | 2022-11-30 | 1 | -1/+0 |
| | |||||
* | gh-99845: PEP 670: Convert PyObject macros to functions (#99850) | Victor Stinner | 2022-11-30 | 1 | -5/+8 |
| | | | | | | | | | Convert macros to static inline functions to avoid macro pitfalls, like duplication of side effects: * _PyObject_SIZE() * _PyObject_VAR_SIZE() The result type is size_t (unsigned). |