Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | gh-122188: Move magic number to its own file (#122243) | Michael Droettboom | 2024-07-30 | 1 | -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 Gross | 2024-07-30 | 1 | -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 Bucher | 2024-07-29 | 1 | -33/+31 | |
| | ||||||
* | GH-116090: Fire RAISE events from _FOR_ITER_TIER_TWO (GH-122413) | Brandt Bucher | 2024-07-29 | 4 | -12/+11 | |
| | ||||||
* | gh-122234: Add DECREFs to error paths (#122406) | Petr Viktorin | 2024-07-29 | 1 | -0/+4 | |
| | | | Co-Authored-By: Kirill Podoprigora <kirill.bast9@mail.ru> | |||||
* | gh-122234: fix accuracy issues for sum() (#122236) | Sergey B Kirpichev | 2024-07-29 | 1 | -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 Zijlstra | 2024-07-27 | 2 | -25/+19 | |
| | ||||||
* | Manually override bytecode definition in optimizer, to avoid build error ↵ | Mark Shannon | 2024-07-26 | 2 | -4/+17 | |
| | | | | (GH-122316) | |||||
* | gh-122201: Lock mutex when setting handling_thread to NULL (#122204) | Sam Gross | 2024-07-26 | 1 | -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 Bucher | 2024-07-26 | 5 | -17/+22 | |
| | ||||||
* | gh-122245: move checks for writes and shadowing of __debug__ to symtable ↵ | Irit Katriel | 2024-07-26 | 2 | -83/+85 | |
| | | | | (#122246) | |||||
* | GH-122029: Break INSTRUMENTED_CALL into micro-ops, so that its behavior is ↵ | Mark Shannon | 2024-07-26 | 5 | -59/+242 | |
| | | | | consistent with CALL (GH-122177) | |||||
* | GH-121131: Clean up and fix some instrumented instructions. (GH-121132) | Mark Shannon | 2024-07-26 | 7 | -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 Bucher | 2024-07-25 | 5 | -5/+87 | |
| | ||||||
* | GH-118093: Add tier two support for LOAD_ATTR_PROPERTY (GH-122283) | Brandt Bucher | 2024-07-25 | 6 | -48/+112 | |
| | ||||||
* | GH-122034: Add StackRef variants of type checks to reduce the number of ↵ | Mark Shannon | 2024-07-25 | 3 | -27/+27 | |
| | | | | PyStackRef_AsPyObjectBorrow calls (GH-122037) | |||||
* | GH-122160: Remove BUILD_CONST_KEY_MAP opcode. (GH-122164) | Mark Shannon | 2024-07-25 | 6 | -157/+6 | |
| | ||||||
* | gh-121404: extract compiler_lookup_arg out of compiler_make_closure (#122181) | Irit Katriel | 2024-07-24 | 1 | -41/+49 | |
| | ||||||
* | GH-118093: Remove invalidated executors from side exits (GH-121885) | Brandt Bucher | 2024-07-24 | 3 | -27/+26 | |
| | ||||||
* | gh-122029: Log call events in sys.setprofile when it's a method with c ↵ | Tian Gao | 2024-07-23 | 1 | -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 Zijlstra | 2024-07-23 | 1 | -0/+1 | |
| | | | Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com> | |||||
* | gh-121637: Syntax error for optimized-away incorrect await (#121656) | Jelle Zijlstra | 2024-07-22 | 2 | -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 Katriel | 2024-07-22 | 1 | -20/+28 | |
| | | | | to compiler_codegen (#122127) | |||||
* | gh-100240: Use a consistent implementation for freelists (#121934) | Sam Gross | 2024-07-22 | 6 | -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) | mpage | 2024-07-19 | 1 | -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 Storchaka | 2024-07-19 | 1 | -2/+2 | |
| | | | | (GH-121907) | |||||
* | GH-118093: Add tier two support to several instructions (GH-121884) | Brandt Bucher | 2024-07-18 | 7 | -82/+311 | |
| | ||||||
* | GH-121784: Generate an error during code gen if a variable is marked ↵ | Mark Shannon | 2024-07-18 | 3 | -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 Shannon | 2024-07-18 | 2 | -10/+14 | |
| | ||||||
* | gh-121621: Move asyncio_running_loop to private struct (#121939) | Sam Gross | 2024-07-17 | 1 | -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 Droettboom | 2024-07-16 | 1 | -0/+4 | |
| | | | Co-authored-by: Peter Bierma <zintensitydev@gmail.com> | |||||
* | gh-118934: Make PyEval_GetLocals return borrowed reference (#119769) | Tian Gao | 2024-07-16 | 1 | -1/+32 | |
| | | | Co-authored-by: Alyssa Coghlan <ncoghlan@gmail.com> | |||||
* | gh-121621: Move asyncio running loop to thread state (GH-121695) | Ken Jin | 2024-07-16 | 1 | -0/+4 | |
| | ||||||
* | gh-120317: Lock around global state in the tokenize module (#120318) | Lysandros Nikolaou | 2024-07-16 | 1 | -43/+72 | |
| | | | Co-authored-by: Pablo Galindo <pablogsal@gmail.com> | |||||
* | gh-121814: Only check f_trace_opcodes if Python frame exists (#121818) | Tian Gao | 2024-07-15 | 1 | -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 Gross | 2024-07-15 | 1 | -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 Jin | 2024-07-15 | 1 | -0/+14 | |
| | ||||||
* | gh-118297: Make Sure All Pending Calls Run in _Py_FinishPendingCalls() ↵ | Eric Snow | 2024-07-15 | 1 | -6/+28 | |
| | | | | (gh-118298) | |||||
* | gh-121698 Emscripten: Use updated WebAssembly type reflection proposal ↵ | Hood Chatham | 2024-07-14 | 1 | -2/+12 | |
| | | | | (GH-121699) | |||||
* | gh-121657: Display correct error message for yield from outside of a ↵ | Gregor | 2024-07-13 | 1 | -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 Storchaka | 2024-07-13 | 1 | -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 Zijlstra | 2024-07-11 | 1 | -14/+25 | |
| | | | | attributes (#121334) | |||||
* | gh-121554: remove unnecessary internal functions in compile.c (#121555) | Irit Katriel | 2024-07-10 | 1 | -48/+0 | |
| | | | Co-authored-by: Erlend E. Aasland <erlend@python.org> | |||||
* | gh-121404: remove some accesses to compiler internals from codegen functions ↵ | Irit Katriel | 2024-07-10 | 1 | -101/+120 | |
| | | | | (#121538) | |||||
* | gh-121547: deduplicate the code of const_cache update functions (#121548) | Irit Katriel | 2024-07-10 | 1 | -25/+22 | |
| | ||||||
* | gh-121110: Fix Extension Module Tests Under Py_TRACE_REFS Builds (gh-121503) | Eric Snow | 2024-07-08 | 1 | -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 Katriel | 2024-07-08 | 1 | -27/+42 | |
| | ||||||
* | gh-121368: Fix seq lock memory ordering in _PyType_Lookup (#121388) | Sam Gross | 2024-07-08 | 1 | -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 Shannon | 2024-07-08 | 2 | -3/+9 | |
| | | | | (GH-121483) | |||||
* | gh-121338: Remove #pragma optimize (#121340) | Michael Droettboom | 2024-07-08 | 1 | -10/+0 | |
| |