summaryrefslogtreecommitdiffstats
path: root/Python
Commit message (Collapse)AuthorAgeFilesLines
* GH-122029: Break INSTRUMENTED_CALL into micro-ops, so that its behavior is ↵Mark Shannon2024-07-265-59/+242
| | | | consistent with CALL (GH-122177)
* GH-121131: Clean up and fix some instrumented instructions. (GH-121132)Mark Shannon2024-07-267-171/+233
| | | | * Add support for 'prev_instr' to code generator and refactor some INSTRUMENTED instructions
* GH-118093: Add tier two support for BINARY_OP_INPLACE_ADD_UNICODE (GH-122253)Brandt Bucher2024-07-255-5/+87
|
* GH-118093: Add tier two support for LOAD_ATTR_PROPERTY (GH-122283)Brandt Bucher2024-07-256-48/+112
|
* GH-122034: Add StackRef variants of type checks to reduce the number of ↵Mark Shannon2024-07-253-27/+27
| | | | PyStackRef_AsPyObjectBorrow calls (GH-122037)
* GH-122160: Remove BUILD_CONST_KEY_MAP opcode. (GH-122164)Mark Shannon2024-07-256-157/+6
|
* gh-121404: extract compiler_lookup_arg out of compiler_make_closure (#122181)Irit Katriel2024-07-241-41/+49
|
* GH-118093: Remove invalidated executors from side exits (GH-121885)Brandt Bucher2024-07-243-27/+26
|
* gh-122029: Log call events in sys.setprofile when it's a method with c ↵Tian Gao2024-07-231-0/+13
| | | | | function (GH-122072) Log call events in sys.setprofile when it is a method with a C function.
* gh-119180: Add `annotationlib` module to support PEP 649 (#119891)Jelle Zijlstra2024-07-231-0/+1
| | | Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
* gh-121637: Syntax error for optimized-away incorrect await (#121656)Jelle Zijlstra2024-07-222-30/+53
| | | Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
* gh-121404: move calculation of module start location from compiler_body up ↵Irit Katriel2024-07-221-20/+28
| | | | to compiler_codegen (#122127)
* gh-100240: Use a consistent implementation for freelists (#121934)Sam Gross2024-07-226-104/+13
| | | | | | | | This combines and updates our freelist handling to use a consistent implementation. Objects in the freelist are linked together using the first word of memory block. If configured with freelists disabled, these operations are essentially no-ops.
* gh-120973: Fix thread-safety issues with `threading.local` (#121655)mpage2024-07-191-0/+3
| | | | | | This is a small refactoring to the current design that allows us to avoid manually iterating over threads. This should also fix gh-118490.
* gh-121905: Consistently use "floating-point" instead of "floating point" ↵Serhiy Storchaka2024-07-191-2/+2
| | | | (GH-121907)
* GH-118093: Add tier two support to several instructions (GH-121884)Brandt Bucher2024-07-187-82/+311
|
* GH-121784: Generate an error during code gen if a variable is marked ↵Mark Shannon2024-07-183-146/+137
| | | | | | | | | | | | `unused`, but is used and thus cached in a prior uop. (#121788) * Reject uop definitions that declare values as 'unused' that are already cached by prior uops * Track which variables are defined and only load from memory when needed * Support explicit `flush` in macro definitions. * Make sure stack is flushed in where needed.
* GH-120024: Use pointer for stack pointer (GH-121923)Mark Shannon2024-07-182-10/+14
|
* gh-121621: Move asyncio_running_loop to private struct (#121939)Sam Gross2024-07-171-2/+2
| | | | This avoids changing the ABI and keeps the field in the private struct.
* GH-121583: Remove dependency from pystats.h to internal header file (GH-121587)Michael Droettboom2024-07-161-0/+4
| | | Co-authored-by: Peter Bierma <zintensitydev@gmail.com>
* gh-118934: Make PyEval_GetLocals return borrowed reference (#119769)Tian Gao2024-07-161-1/+32
| | | Co-authored-by: Alyssa Coghlan <ncoghlan@gmail.com>
* gh-121621: Move asyncio running loop to thread state (GH-121695)Ken Jin2024-07-161-0/+4
|
* gh-120317: Lock around global state in the tokenize module (#120318)Lysandros Nikolaou2024-07-161-43/+72
| | | Co-authored-by: Pablo Galindo <pablogsal@gmail.com>
* gh-121814: Only check f_trace_opcodes if Python frame exists (#121818)Tian Gao2024-07-151-1/+1
| | | Co-authored-by: Matt Wozniski <godlygeek@gmail.com>
* gh-121794: Don't set `ob_tid` to zero in fast-path dealloc (#121799)Sam Gross2024-07-151-11/+54
| | | | | | | | | | | | We should maintain the invariant that a zero `ob_tid` implies the refcount fields are merged. * Move the assignment in `_Py_MergeZeroLocalRefcount` to immediately before the refcount merge. * Update `_PyTrash_thread_destroy_chain` to set `ob_ref_shared` to `_Py_REF_MERGED` when setting `ob_tid` to zero. Also check this invariant with assertions in the GC in debug builds. That uncovered a bug when running out of memory during GC.
* gh-121546: Disable contextvar caching on free-threading build (GH-121740)Ken Jin2024-07-151-0/+14
|
* gh-118297: Make Sure All Pending Calls Run in _Py_FinishPendingCalls() ↵Eric Snow2024-07-151-6/+28
| | | | (gh-118298)
* gh-121698 Emscripten: Use updated WebAssembly type reflection proposal ↵Hood Chatham2024-07-141-2/+12
| | | | (GH-121699)
* gh-121657: Display correct error message for yield from outside of a ↵Gregor2024-07-131-1/+1
| | | | | | function (GH-121680) Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com> Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
* gh-121153: Fix some errors with use of _PyLong_CompactValue() (GH-121154)Serhiy Storchaka2024-07-131-2/+2
| | | | | | * The result has type Py_ssize_t, not intptr_t. * Type cast between unsigned and signdet integer types should be explicit. * Downcasting should be explicit. * Fix integer overflow check in sum().
* gh-121332: Make AST node constructor check _attributes instead of hardcoding ↵Jelle Zijlstra2024-07-111-14/+25
| | | | attributes (#121334)
* gh-121554: remove unnecessary internal functions in compile.c (#121555)Irit Katriel2024-07-101-48/+0
| | | Co-authored-by: Erlend E. Aasland <erlend@python.org>
* gh-121404: remove some accesses to compiler internals from codegen functions ↵Irit Katriel2024-07-101-101/+120
| | | | (#121538)
* gh-121547: deduplicate the code of const_cache update functions (#121548)Irit Katriel2024-07-101-25/+22
|
* gh-121110: Fix Extension Module Tests Under Py_TRACE_REFS Builds (gh-121503)Eric Snow2024-07-081-19/+43
| | | The change in gh-118157 (b2cd54a) should have also updated clear_singlephase_extension() but didn't. We fix that here. Note that clear_singlephase_extension() (AKA _PyImport_ClearExtension()) is only used in tests.
* gh-121404: remove direct accesses to u_private from codegen functions (#121500)Irit Katriel2024-07-081-27/+42
|
* gh-121368: Fix seq lock memory ordering in _PyType_Lookup (#121388)Sam Gross2024-07-081-11/+15
| | | | | | | | | The `_PySeqLock_EndRead` function needs an acquire fence to ensure that the load of the sequence happens after any loads within the read side critical section. The missing fence can trigger bugs on macOS arm64. Additionally, we need a release fence in `_PySeqLock_LockWrite` to ensure that the sequence update is visible before any modifications to the cache entry.
* GH-121012: Set index to -1 when list iterators become exhausted in tier 2 ↵Mark Shannon2024-07-082-3/+9
| | | | (GH-121483)
* gh-121338: Remove #pragma optimize (#121340)Michael Droettboom2024-07-081-10/+0
|
* gh-121149: improve accuracy of builtin sum() for complex inputs (gh-121176)Sergey B Kirpichev2024-07-051-26/+105
|
* gh-121390: tracemalloc: Fix tracebacks memory leak (#121391)Josh Brobst2024-07-051-1/+1
| | | | | | The tracemalloc_tracebacks hash table has traceback keys and NULL values, but its destructors do not reflect this -- key_destroy_func is NULL while value_destroy_func is raw_free. Swap these to free the traceback keys instead.
* gh-121272: move async for/with validation from compiler to symtable (#121361)Irit Katriel2024-07-042-13/+22
|
* gh-121352: use _Py_SourceLocation in symtable (#121353)Irit Katriel2024-07-041-127/+68
|
* gh-121141: add support for `copy.replace` to AST nodes (#121162)Bénédikt Tran2024-07-041-0/+279
|
* gh-121272: set ste_coroutine during symtable construction (#121297)Irit Katriel2024-07-032-3/+15
| | | compiler no longer modifies the symtable after this.
* gh-117139: Add _PyTuple_FromStackRefSteal and use it (#121244)Sam Gross2024-07-024-32/+4
| | | Avoids the extra conversion from stack refs to PyObjects.
* gh-121272: move __future__ import validation from compiler to symtable (#121273)Irit Katriel2024-07-022-16/+24
|
* GH-116017: Get rid of _COLD_EXITs (GH-120960)Brandt Bucher2024-07-017-183/+121
|
* gh-121199: Use _Py__has_attribute() in timemodule.c (#121203)Victor Stinner2024-07-011-1/+1
| | | | | Use the _Py__has_attribute() macro in timemodule.c and bootstrap_hash.c to fix a build error on old GCC versions (GCC 4.8.5 on s390x).
* gh-121163: Add "all" as an valid alias for "always" in ↵Kirill Podoprigora2024-06-301-2/+2
| | | | | | warnings.simplefilter() (#121164) Add support for ``all`` as an valid alias for ``always`` in ``warnings.simplefilter()`` and ``warnings.filterswarnings()``.