Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | gh-118926: Spill deferred references to stack in cases generator (#122748) | Sam Gross | 2024-08-07 | 3 | -35/+41 | |
| | | | | | | | This automatically spills the results from `_PyStackRef_FromPyObjectNew` to the in-memory stack so that the deferred references are visible to the GC before we make any possibly escaping call. Co-authored-by: Ken Jin <kenjin@python.org> | |||||
* | gh-122759: Remove `assert` from `RERAISE` error handling (#122760) | sobolevn | 2024-08-07 | 2 | -2/+0 | |
| | ||||||
* | gh-117139: Fix an incorrect borrow in bytecodes.c (#122318) | Sam Gross | 2024-08-07 | 3 | -11/+14 | |
| | | | `_PyDict_SetItem_Take2` steals both the key (i.e., `sub`) and the value. | |||||
* | gh-122728: Fix SystemError in PyEval_GetLocals() (#122735) | Victor Stinner | 2024-08-06 | 1 | -1/+1 | |
| | | | | | | | Fix PyEval_GetLocals() to avoid SystemError ("bad argument to internal function"). Don't redefine the 'ret' variable in the if block. Add an unit test on PyEval_GetLocals(). | |||||
* | gh-122417: Implement per-thread heap type refcounts (#122418) | Sam Gross | 2024-08-06 | 3 | -51/+231 | |
| | | | | | | | The free-threaded build partially stores heap type reference counts in distributed manner in per-thread arrays. This avoids reference count contention when creating or destroying instances. Co-authored-by: Ken Jin <kenjin@python.org> | |||||
* | GH-120024: Move three more escaping calls out of conditional statements ↵ | Mark Shannon | 2024-08-06 | 3 | -10/+32 | |
| | | | | (GH-122734) | |||||
* | GH-120024: Refactor code a bit so that escaping calls can be wrapped in ↵ | Mark Shannon | 2024-08-06 | 3 | -42/+78 | |
| | | | | spill code in code generator (GH-122693) | |||||
* | gh-122595: Add more error checks in the compiler (GH-122596) | Serhiy Storchaka | 2024-08-06 | 2 | -52/+145 | |
| | ||||||
* | GH-122616: Simplify LOAD_ATTR_WITH_HINT and STORE_ATTR_WITH_HINT (GH-122620) | Mark Shannon | 2024-08-05 | 3 | -95/+44 | |
| | ||||||
* | gh-122313: Clean up deep recursion guarding code in the compiler (GH-122640) | Serhiy Storchaka | 2024-08-03 | 3 | -162/+164 | |
| | | | | | | | | | Add ENTER_RECURSIVE and LEAVE_RECURSIVE macros in ast.c, ast_opt.c and symtable.c. Remove VISIT_QUIT macro in symtable.c. The current recursion depth counter only needs to be updated during normal execution -- all functions should just return an error code if an error occurs. | |||||
* | GH-117224: Move the body of a few large-ish micro-ops into helper functions ↵ | Mark Shannon | 2024-08-02 | 4 | -335/+159 | |
| | | | | (GH-122601) | |||||
* | gh-122445: populate only modified fields in __static_attributes__ (#122446) | Irit Katriel | 2024-08-02 | 1 | -7/+11 | |
| | ||||||
* | gh-122334: Fix crash when importing ssl after re-initialization (#122481) | neonene | 2024-08-02 | 1 | -0/+13 | |
| | | | | * Fix crash when importing ssl after re-initialization | |||||
* | gh-122188: Remove _imp.pyc_magic_number (GH-122503) | Serhiy Storchaka | 2024-08-02 | 1 | -5/+1 | |
| | | | _imp.pyc_magic_number_token should be enough. | |||||
* | gh-122562: Remove ste_free and ste_child_free from symtable (#122563) | Jelle Zijlstra | 2024-08-01 | 1 | -12/+0 | |
| | ||||||
* | GH-118095: Add tier two support for BINARY_SUBSCR_GETITEM (GH-120793) | Mark Shannon | 2024-08-01 | 6 | -60/+150 | |
| | ||||||
* | Replace PyObject_Del with PyObject_Free (#122453) | Victor Stinner | 2024-08-01 | 1 | -1/+1 | |
| | | | | PyObject_Del() is just a alias to PyObject_Free() kept for backward compatibility. Use directly PyObject_Free() instead. | |||||
* | GH-122155: Track local variables between pops and pushes in cases generator ↵ | Mark Shannon | 2024-08-01 | 4 | -48/+192 | |
| | | | | (GH-122286) | |||||
* | Fix typos in docs, error messages and comments (#122502) | jianghuyiyuan | 2024-08-01 | 1 | -1/+1 | |
| | | | Signed-off-by: jianghuyiyuan <shuangcui@live.com> | |||||
* | 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> |