summaryrefslogtreecommitdiffstats
path: root/Python
Commit message (Collapse)AuthorAgeFilesLines
...
* gh-122188: Move magic number to its own file (#122243)Michael Droettboom2024-07-301-15/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gh-122188: Move magic number to its own file * Add versionadded directive * Do work in C * Integrate launcher.c * Make _pyc_magic_number private * Remove metadata * Move sys.implementation -> _imp * Modernize comment * Move _RAW_MAGIC_NUMBER to the C side as well * _pyc_magic_number -> pyc_magic_number * Remove unused import * Update docs * Apply suggestions from code review Co-authored-by: Eric Snow <ericsnowcurrently@gmail.com> * Fix typo in tests --------- Co-authored-by: Eric Snow <ericsnowcurrently@gmail.com>
* gh-117657: Avoid race in `PAUSE_ADAPTIVE_COUNTER` in free-threaded build ↵Sam Gross2024-07-301-1/+2
| | | | | | | (#122190) The adaptive counter doesn't do anything currently in the free-threaded build and TSan reports a data race due to concurrent modifications to the counter.
* GH-118093: Improve handling of short and mid-loop traces (GH-122252)Brandt Bucher2024-07-291-33/+31
|
* GH-116090: Fire RAISE events from _FOR_ITER_TIER_TWO (GH-122413)Brandt Bucher2024-07-294-12/+11
|
* gh-122234: Add DECREFs to error paths (#122406)Petr Viktorin2024-07-291-0/+4
| | | Co-Authored-By: Kirill Podoprigora <kirill.bast9@mail.ru>
* gh-122234: fix accuracy issues for sum() (#122236)Sergey B Kirpichev2024-07-291-11/+13
| | | | | | | | * Use compensated summation for complex sums with floating-point items. This amends #121176. * sum() specializations for floats and complexes now use PyLong_AsDouble() instead of PyLong_AsLongAndOverflow() and compensated summation as well.
* gh-119180: Add evaluate functions for type params and type aliases (#122212)Jelle Zijlstra2024-07-272-25/+19
|
* Manually override bytecode definition in optimizer, to avoid build error ↵Mark Shannon2024-07-262-4/+17
| | | | (GH-122316)
* gh-122201: Lock mutex when setting handling_thread to NULL (#122204)Sam Gross2024-07-261-3/+15
| | | | | In the free-threaded build, we need to lock pending->mutex when clearing the handling_thread in order not to race with a concurrent make_pending_calls in the same interpreter.
* GH-122294: Burn in the addresses of side exits (GH-122295)Brandt Bucher2024-07-265-17/+22
|
* gh-122245: move checks for writes and shadowing of __debug__ to symtable ↵Irit Katriel2024-07-262-83/+85
| | | | (#122246)
* 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
|