summaryrefslogtreecommitdiffstats
path: root/Tools
Commit message (Collapse)AuthorAgeFilesLines
...
* gh-109413: Add more type hints to `libregrtest` (#126352)sobolevn2024-11-041-1/+1
|
* gh-99108: Cleanup references to inexisting `Modules/_blake2`. (GH-126270)Bénédikt Tran2024-11-012-4/+0
| | | | | | | | | * Remove references to `Modules/_blake2`. * Remove `Modules/_blake2` entry from CODEOWNERS The folder does not exist anymore. * Remove `Modules/_blake2` entry from `Tools/c-analyzer/TODO`
* gh-126211: Exclude preprocessor directives from statements containing ↵mpage2024-11-011-1/+1
| | | | | | | | | escaping calls (#126213) The cases generator inserts code to save and restore the stack pointer around statements that contain escaping calls. To find the beginning of such statements, we would walk backwards from the escaping call until we encountered a token that was treated as a statement terminator. This set of terminators should include preprocessor directives.
* gh-90370: Argument Clinic: avoid temporary tuple creation for varargs (#126064)Sergey B Kirpichev2024-10-312-26/+24
| | | | | | | Avoid temporary tuple creation when all arguments either positional-only or vararg. Objects/setobject.c and Modules/gcmodule.c adapted. This fixes slight performance regression for set methods, introduced by gh-115112.
* GH-125498: Update JIT builds to use LLVM 19 and preserve_none (GH-125499)Savannah Ostrowski2024-10-308-75/+52
|
* gh-125588: Teach the python PEG generator the new f-string tokens (#125589)Pablo Galindo Salgado2024-10-294-2/+51
| | | Signed-off-by: Pablo Galindo <pablogsal@gmail.com>
* gh-118423: Add `INSTRUCTION_SIZE` macro to code generator (GH-125467)Tomas R.2024-10-294-6/+54
|
* gh-124928: Emscripten node support: Clean up old node <= 16 flags (#124929)Hood Chatham2024-10-291-0/+9
| | | | | | Clean up configure flags for old node versions These flags are only needed for node <= 16. Node 16 has been end of life since October of 2023.
* gh-125985: Add free threading scaling micro benchmarks (#125986)Sam Gross2024-10-281-0/+324
| | | | | | | | These consist of a number of short snippets that help identify scaling bottlenecks in the free threaded interpreter. The current bottlenecks are in calling functions in benchmarks that call functions (due to `LOAD_ATTR` not yet using deferred reference counting) and when accessing thread-local data.
* GH-125515: Reduce number of compiler warnings in generated code (GH-125697)Mark Shannon2024-10-281-0/+1
|
* gh-89640: properly detect float word ordering on Linux (#125571)Erlend E. Aasland2024-10-261-1/+1
| | | autoconf-archive patch by Dan Amelang.
* GH-125521: Remove `if (true)` from generated output to reduce C compiler ↵Mark Shannon2024-10-222-6/+14
| | | | warnings (GH-125700)
* gh-124889: Rework Python generator cache (#125816)Mikhail Efimov2024-10-221-27/+48
|
* gh-125741: Update `build.yml` for the new check_autoconf_regen job (#125772)Adam Turner2024-10-211-1/+1
|
* gh-125207: Fix MSVC 1935 build with JIT (#125209)Michael Droettboom2024-10-182-3/+6
| | | | | | | * gh-125207: Use {0} array initializers * Simplify, as suggested in PR * Revert change to explicitly specify length
* gh-124102: Clean up unsupported VS and WiX detections (GH-124784)Wulian2024-10-182-11/+11
|
* CI: Bump Python to 3.13 and mypy to 1.12 in mypy workflow (#125592)Kirill Podoprigora2024-10-162-4/+2
| | | | | * Bump mypy to 1.12 & Python to 3.13 * Remove unnecessary `type: ignore`
* gh-124872: Replace enter/exit events with "switched" (#125532)Kirill Podoprigora2024-10-161-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | Users want to know when the current context switches to a different context object. Right now this happens when and only when a context is entered or exited, so the enter and exit events are synonymous with "switched". However, if the changes proposed for gh-99633 are implemented, the current context will also switch for reasons other than context enter or exit. Since users actually care about context switches and not enter or exit, replace the enter and exit events with a single switched event. The former exit event was emitted just before exiting the context. The new switched event is emitted after the context is exited to match the semantics users expect of an event with a past-tense name. If users need the ability to clean up before the switch takes effect, another event type can be added in the future. It is not added here because YAGNI. I skipped 0 in the enum as a matter of practice. Skipping 0 makes it easier to troubleshoot when code forgets to set zeroed memory, and it aligns with best practices for other tools (e.g., https://protobuf.dev/programming-guides/dos-donts/#unspecified-enum). Co-authored-by: Richard Hansen <rhansen@rhansen.org> Co-authored-by: Victor Stinner <vstinner@python.org>
* gh-125512: Revert "gh-124872: Replace enter/exit events with "switched" ↵Kirill Podoprigora2024-10-151-2/+2
| | | | (#124776)" (#125513)
* gh-124872: Replace enter/exit events with "switched" (#124776)Richard Hansen2024-10-141-2/+2
| | | | | | | | | | | | | | | | | | | | | | Users want to know when the current context switches to a different context object. Right now this happens when and only when a context is entered or exited, so the enter and exit events are synonymous with "switched". However, if the changes proposed for gh-99633 are implemented, the current context will also switch for reasons other than context enter or exit. Since users actually care about context switches and not enter or exit, replace the enter and exit events with a single switched event. The former exit event was emitted just before exiting the context. The new switched event is emitted after the context is exited to match the semantics users expect of an event with a past-tense name. If users need the ability to clean up before the switch takes effect, another event type can be added in the future. It is not added here because YAGNI. I skipped 0 in the enum as a matter of practice. Skipping 0 makes it easier to troubleshoot when code forgets to set zeroed memory, and it aligns with best practices for other tools (e.g., https://protobuf.dev/programming-guides/dos-donts/#unspecified-enum).
* gh-119786: [doc] broken link and typo fix in interpreter_definition.md ↵Mikhail Efimov2024-10-141-2/+3
| | | | (#125455)
* GH-125323: Convert DECREF_INPUTS_AND_REUSE_FLOAT into a function that takes ↵Mark Shannon2024-10-141-0/+1
| | | | PyStackRefs. (GH-125439)
* gh-125323: Remove some unsafe Py_DECREFs in bytecodes.c, replacing them with ↵Ken Jin2024-10-142-0/+2
| | | | PyStackRef_CLOSEs (GH-125324)
* gh-124612: Update autoconf container image (#125320)Donghee Na2024-10-111-1/+1
|
* GH-125174: Make immortal objects more robust, following design from PEP 683 ↵Mark Shannon2024-10-101-1/+0
| | | | (GH-125251)
* gh-125039: Make `this_instr`/`prev_instr` const in cases generator (GH-125071)Tomas R.2024-10-091-3/+3
|
* gh-124612: Use ghcr.io/python/autoconf instead of public image (#124657)Donghee Na2024-10-091-4/+2
| | | | | * gh-124612: Use ghcr.io/python/autoconf instead of public image * Update
* gh-125084: Resolve paths in generator common code (GH-125085)Cody Maloney2024-10-081-3/+3
| | | | In out of tree builds, the paths can contain `../ which needs to be resolved for the relative path calculation to work.
* gh-123961: Convert _curses to a multi-phase init module (PEP-489) (#124965)Bénédikt Tran2024-10-081-3/+1
|
* GH-119866: Spill the stack around escaping calls. (GH-124392)Mark Shannon2024-10-078-381/+1040
| | | | | | | * Spill the evaluation around escaping calls in the generated interpreter and JIT. * The code generator tracks live, cached values so they can be saved to memory when needed. * Spills the stack pointer around escaping calls, so that the exact stack is visible to the cycle GC.
* gh-124889: Remove redundant artificial rules in PEG parser (#124893)efimov-mikhail2024-10-032-47/+50
| | | | | | | | | | | | Cache in C PEG-generator reworked: we save artificial rules in cache by Node string representation as a key instead of Node object itself. As a result total count of artificial rules in parsers.c is lowered from 283 to 170. More natural number ordering is used for the names of artificial rules. Auxiliary method CCallMakerVisitor._generate_artificial_rule_call is added. Its purpose is abstracting work with artificial rules cache. Explicit using of "is_repeat1" kwarg is added to visit_Repeat0 and visit_Repeat1 methods. Its slightly improve code readabitily.
* GH-119726: Deduplicate AArch64 trampolines within a trace (GH-123872)Diego Russo2024-10-023-51/+61
|
* GH-124820: Move `-mno-outline-atomics` flag to aarch64 Linux JIT builds only ↵Savannah Ostrowski2024-10-021-4/+6
| | | | (#124821)
* gh-124487: Updated installer messages and internal docs regarding minimum ↵Wulian2024-10-012-10/+2
| | | | Windows version (GH-124822)
* gh-124487: Require at least Windows 10 SDK and update install check (GH-124672)Steve Dower2024-09-302-6/+7
|
* gh-123961: Add a global state to _curses (#124729)Bénédikt Tran2024-09-291-0/+1
|
* gh-124665: Add `_PyCodec_UnregisterError` and `_codecs._unregister_error` ↵Bénédikt Tran2024-09-291-0/+1
| | | | (#124677)
* generate_global_objects.py: Fix name of macro in error message (#124464)Jelle Zijlstra2024-09-271-2/+2
| | | _PyID does not exist but _Py_ID does.
* GH-123516: Improve JIT memory consumption by invalidating cold executors ↵Savannah Ostrowski2024-09-272-0/+4
| | | | | (GH-124443) Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
* Remove some unused files related to WASM/WASI (GH-124635)Brett Cannon2024-09-263-57/+2
|
* gh-124285: Fix bug where bool() is called multiple times for the same part ↵Irit Katriel2024-09-253-9/+22
| | | | of a boolean expression (#124394)
* GH-124408: Temporarily skip test_strftime_y2k for emulated Linux JIT CI ↵Savannah Ostrowski2024-09-251-0/+1
| | | | (GH-124466)
* gh-123923: Defer refcounting for `f_funcobj` in `_PyInterpreterFrame` (#124026)Sam Gross2024-09-242-4/+17
| | | | | | Use a `_PyStackRef` and defer the reference to `f_funcobj` when possible. This avoids some reference count contention in the common case of executing the same code object from multiple threads concurrently in the free-threaded build.
* gh-119333: Add C api to have contextvar enter/exit callbacks (#119335)Jason Fried2024-09-241-0/+3
| | | Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
* Lint and format Tools/build/check-warnings.py (#124382)Hugo van Kemenade2024-09-232-7/+33
|
* gh-124102: Update internal PCbuild docs to accurately list build ↵Wulian2024-09-232-18/+9
| | | | dependencies (GH-124103)
* GH-124284: Add stats for refcount operations on immortal objects (GH-124288)Mark Shannon2024-09-231-6/+12
|
* gh-124254: Detect freethreaded MSI component when doing an upgrade on ↵Steve Dower2024-09-231-0/+1
| | | | Windows (GH-124279)
* gh-123880: Allow recursive import of single-phase-init modules (GH-123950)Petr Viktorin2024-09-201-0/+1
| | | | Co-authored-by: Shantanu <12621235+hauntsaninja@users.noreply.github.com> Co-authored-by: Brett Cannon <brett@python.org>
* gh-124190: Ignore files directories check warning tooling (#124193)Nate Ohlson2024-09-183-47/+104
| | | | Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>