Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | gh-123881: make compiler add the .generic_base base class without ↵ | Irit Katriel | 2024-09-10 | 2 | -46/+52 |
| | | | | | | constructing AST nodes (#123883) | ||||
* | gh-122239: Add actual count in unbalanced unpacking error message when ↵ | Tushar Sadhwani | 2024-09-10 | 1 | -0/+11 |
| | | | | possible (#122244) | ||||
* | gh-123892: Add "_wmi" to sys.stdlib_module_names (#123893) | Victor Stinner | 2024-09-10 | 1 | -0/+1 |
| | |||||
* | gh-121404: split compile.c into compile.c and codegen.c (#123651) | Irit Katriel | 2024-09-09 | 3 | -6644/+6521 |
| | |||||
* | gh-123275: Support `-Xgil=1` and `PYTHON_GIL=1` on non-free-threaded builds ↵ | Peter Bierma | 2024-09-05 | 1 | -4/+8 |
| | | | | (gh-123276) | ||||
* | GH-123545: Remove duplicate Py_DECREF when handling _PyOptimizer_Optimize ↵ | Savannah Ostrowski | 2024-09-05 | 2 | -8/+0 |
| | | | | errors (GH-123546) | ||||
* | gh-107954, PEP 741: Add PyInitConfig_AddModule() function (#123668) | Victor Stinner | 2024-09-04 | 1 | -0/+35 |
| | |||||
* | gh-107954, PEP 741: Adjust Python initialization config (#123663) | Victor Stinner | 2024-09-04 | 1 | -3/+9 |
| | | | | | | | Setting dev_mode to 1 in an isolated configuration now enables also faulthandler. Moreover, setting "module_search_paths" option with PyInitConfig_SetStrList() now sets "module_search_paths_set" to 1. | ||||
* | gh-121804: always show error location for SyntaxError's in basic repl (#123202) | Sergey B Kirpichev | 2024-09-03 | 1 | -0/+31 |
| | |||||
* | gh-107954, PEP 741: Add PyInitConfig C API (#123502) | Victor Stinner | 2024-09-03 | 1 | -8/+485 |
| | | | Add Doc/c-api/config.rst documentation. | ||||
* | gh-107954, PEP 741: Add PyConfig_Get()/Set() functions (#123472) | Victor Stinner | 2024-09-02 | 2 | -194/+844 |
| | | | | | | | | | | | Add PyConfig_Get(), PyConfig_GetInt(), PyConfig_Set() and PyConfig_Names() functions to get and set the current runtime Python configuration. Add visibility and "sys spec" to config and preconfig specifications. _PyConfig_AsDict() now converts PyConfig.xoptions as a dictionary. Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com> | ||||
* | gh-121404: enforce that codegen doesn't access compiler, and compiler ↵ | Irit Katriel | 2024-09-02 | 1 | -85/+129 |
| | | | | doesn't use codegen macros (#123575) | ||||
* | gh-123091: Use more _Py_IsImmortalLoose() (GH-123602) | Petr Viktorin | 2024-09-02 | 1 | -1/+1 |
| | | | | | | | Switch more _Py_IsImmortal(...) assertions to _Py_IsImmortalLoose(...) The remaining calls to _Py_IsImmortal are in free-threaded-only code, initialization of core objects, tests, and guards that fall back to code that works with mortal objects. | ||||
* | gh-123091: Use _Py_IsImmortalLoose() (#123511) | Victor Stinner | 2024-09-02 | 3 | -6/+6 |
| | | | | Use _Py_IsImmortalLoose() in bytesobject.c, typeobject.c and ceval.c. | ||||
* | gh-123553: Fix compile warning in `compile.c` (#123578) | sobolevn | 2024-09-01 | 1 | -0/+2 |
| | |||||
* | gh-123553: Fix compiler warning in `Python/compile.c` (#123554) | Kirill Podoprigora | 2024-09-01 | 1 | -0/+2 |
| | |||||
* | gh-121404: rearrange code in compile.c so that codegen functions come first ↵ | Irit Katriel | 2024-08-30 | 1 | -1033/+1071 |
| | | | | and compiler functions second (#123510) | ||||
* | gh-122854: Add Py_HashBuffer() function (#122855) | Victor Stinner | 2024-08-30 | 2 | -7/+10 |
| | |||||
* | gh-121485: Always use 64-bit integers for integers bits count (GH-121486) | Serhiy Storchaka | 2024-08-30 | 1 | -7/+7 |
| | | | | | Use 64-bit integers instead of platform specific size_t or Py_ssize_t to represent the number of bits in Python integer. | ||||
* | gh-123142: fix too wide source location of GET_ITER/GET_AITER (#123420) | Irit Katriel | 2024-08-28 | 1 | -8/+7 |
| | |||||
* | gh-123344: Add missing ast optimizations for PEP 696 (#123377) | Bogdan Romanyuk | 2024-08-28 | 1 | -0/+3 |
| | | | | Co-authored-by: Kirill Podoprigora <kirill.bast9@mail.ru> Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com> | ||||
* | gh-123271: Make builtin zip method safe under free-threading (#123272) | Pieter Eendebak | 2024-08-27 | 1 | -1/+2 |
| | | | | | | | | | | | | | | | | The `zip_next` function uses a common optimization technique for methods that generate tuples. The iterator maintains an internal reference to the returned tuple. When the method is called again, it checks if the internal tuple's reference count is 1. If so, the tuple can be reused. However, this approach is not safe under the free-threading build: after checking the reference count, another thread may perform the same check and also reuse the tuple. This can result in a double decref on the items of the replaced tuple and a double incref (memory leak) on the items of the tuple being set. This adds a function, `_PyObject_IsUniquelyReferenced` that encapsulates the stricter logic necessary for the free-threaded build: the internal tuple must be owned by the current thread, have a local refcount of one, and a shared refcount of zero. | ||||
* | gh-121404: split compiler_nameop into a codegen part and a compiler part ↵ | Irit Katriel | 2024-08-27 | 1 | -89/+101 |
| | | | | (#123398) | ||||
* | GH-117759: Document incremental GC (GH-123266) | Mark Shannon | 2024-08-27 | 1 | -11/+16 |
| | | | | | | * Update what's new * Update gc module docs and fix inconsistency in gc.get_objects | ||||
* | gh-121404: compiler_visit_* --> codegen_visit_* (#123382) | Irit Katriel | 2024-08-27 | 1 | -61/+49 |
| | |||||
* | GH-123232: Factor BINARY_SLICE and STORE_SLICE to handle stats properly for ↵ | Mark Shannon | 2024-08-27 | 3 | -34/+66 |
| | | | | tier 2. (GH-123381) | ||||
* | Remove comment from pystate created in 2003 (#123259) | Anthony Shaw | 2024-08-24 | 1 | -5/+0 |
| | |||||
* | gh-117376: Make `Py_DECREF` a macro in ceval.c in free-threaded build (#122975) | Sam Gross | 2024-08-23 | 1 | -15/+44 |
| | | | | | | | | | | | `Py_DECREF` and `PyStackRef_CLOSE` are now implemented as macros in the free-threaded build in ceval.c. There are two motivations; * MSVC has problems inlining functions in ceval.c in the PGO build. * We will want to mark escaping calls in order to spill the stack pointer in ceval.c and we will want to do this around `_Py_Dealloc` (or `_Py_MergeZeroLocalRefcount` or `_Py_DecRefShared`), not around the entire `Py_DECREF` or `PyStackRef_CLOSE` call. | ||||
* | gh-123205: `Python/bytecodes.c`: Fix compiler warning (#123206) | Kirill Podoprigora | 2024-08-23 | 3 | -3/+3 |
| | | | Fix MSVC warning "conversion from '__int64' to 'int'" | ||||
* | gh-121404: more compiler_* -> codegen_*, class_body and comprehensions (#123262) | Irit Katriel | 2024-08-23 | 1 | -59/+82 |
| | |||||
* | GH-122298: Restore printing of GC stats (GH-123261) | Mark Shannon | 2024-08-23 | 1 | -0/+25 |
| | |||||
* | GH-123232: Fix "not specialized" stats (GH-123236) | Mark Shannon | 2024-08-23 | 4 | -2/+18 |
| | |||||
* | gh-121404: compiler_annassign --> codegen_annassign (#123245) | Irit Katriel | 2024-08-23 | 1 | -63/+100 |
| | |||||
* | GH-123040: Specialize shadowed `LOAD_ATTR`. (GH-123219) | Mark Shannon | 2024-08-23 | 4 | -138/+261 |
| | |||||
* | gh-123083: Fix a potential use-after-free in ``STORE_ATTR_WITH_HINT`` ↵ | Donghee Na | 2024-08-22 | 3 | -18/+21 |
| | | | | (gh-123092) | ||||
* | gh-121404: remove redundant c_nestlevel. more compiler abstractions. more ↵ | Irit Katriel | 2024-08-22 | 1 | -118/+111 |
| | | | | macro usage consistency (#123225) | ||||
* | GH-123197: Only count an instruction as deferred if it hasn't deopted first. ↵ | Mark Shannon | 2024-08-22 | 3 | -30/+31 |
| | | | | | (GH-123222) Only count an instruction as deferred if hasn't deopted first. | ||||
* | GH-118093: Specialize calls to non-vectorcall classes as ↵ | Brandt Bucher | 2024-08-22 | 1 | -5/+1 |
| | | | | | `CALL_NON_PY_GENERAL` (GH-123212) Specialize classes without vectorcall as CALL_NON_PY_GENERAL | ||||
* | gh-123142: Fix too wide source locations in tracebacks of exceptions from ↵ | Irit Katriel | 2024-08-21 | 1 | -2/+3 |
| | | | | broken iterables in comprehensions (#123173) | ||||
* | GH-115776: Allow any fixed sized object to have inline values (GH-123192) | Mark Shannon | 2024-08-21 | 8 | -31/+50 |
| | |||||
* | gh-121404: split fblock handling into compiler_* and codegen_* parts (#123199) | Irit Katriel | 2024-08-21 | 1 | -15/+24 |
| | |||||
* | GH-123197: Increment correct stat for CALL_KW (GH-123200) | Mark Shannon | 2024-08-21 | 2 | -2/+2 |
| | |||||
* | GH-123185: Check for `NULL` after calling `_PyEvalFramePushAndInit` (GH-123194) | Mark Shannon | 2024-08-21 | 3 | -3/+15 |
| | |||||
* | GH-118093: Make `CALL_ALLOC_AND_ENTER_INIT` suitable for tier 2. (GH-123140) | Mark Shannon | 2024-08-20 | 8 | -145/+287 |
| | | | | | * Convert CALL_ALLOC_AND_ENTER_INIT to micro-ops such that tier 2 supports it * Allow inexact arguments for CALL_ALLOC_AND_ENTER_INIT. | ||||
* | gh-123048: Fix missing source location in pattern matching code (#123167) | Irit Katriel | 2024-08-20 | 1 | -1/+1 |
| | |||||
* | gh-121404: rename functions to use codegen_* prefix. Use macros more ↵ | Irit Katriel | 2024-08-19 | 1 | -349/+303 |
| | | | | consistently. (#123139) | ||||
* | gh-121404: pass metadata to compiler_enter_scope (optionally) so that ↵ | Irit Katriel | 2024-08-19 | 1 | -58/+82 |
| | | | | codegen functions don't need to set it on the code unit (#123078) | ||||
* | GH-118093: Specialize `CALL_KW` (GH-123006) | Mark Shannon | 2024-08-16 | 8 | -15/+749 |
| | |||||
* | gh-121404: rename compiler_addop* to codegen_addop*, and replace direct ↵ | Irit Katriel | 2024-08-16 | 1 | -96/+102 |
| | | | | usages by the macros (#123043) | ||||
* | Add debug offsets for free threaded builds (#123041) | Pablo Galindo Salgado | 2024-08-15 | 2 | -2/+4 |
| |