Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | gh-99947: Ensure unreported errors are chained for SystemError during import ↵ | Sebastian Berg | 2022-12-23 | 1 | -2/+1 | |
| | | | | (GH-99946) | |||||
* | GH-100425: Improve accuracy of builtin sum() for float inputs (GH-100426) | Raymond Hettinger | 2022-12-23 | 1 | -1/+20 | |
| | ||||||
* | Revert "gh-100288: Specialise LOAD_ATTR_METHOD for managed dictionaries ↵ | Ken Jin | 2022-12-23 | 4 | -70/+15 | |
| | | | | | (GH-100289)" (#100468) This reverts commit c3c7848a48b74a321632202e4bdcf2f465fb1cc6. | |||||
* | gh-100288: Specialise LOAD_ATTR_METHOD for managed dictionaries (GH-100289) | Ken Jin | 2022-12-23 | 4 | -15/+70 | |
| | ||||||
* | GH-100459: fix copy-paste errors in specialization stats (GH-100460) | Irit Katriel | 2022-12-23 | 1 | -5/+5 | |
| | ||||||
* | GH-99554: Trim trailing whitespace (GH-100435) | Brandt Bucher | 2022-12-22 | 1 | -1/+1 | |
| | | | Automerge-Triggered-By: GH:brandtbucher | |||||
* | GH-99770: Make the correct call specialization fail kind show up in the ↵ | penguin_wwy | 2022-12-22 | 1 | -63/+84 | |
| | | | | stats (GH-99771) | |||||
* | gh-99761: Add `_PyLong_IsPositiveSingleDigit` function to check for single ↵ | Pieter Eendebak | 2022-12-22 | 2 | -10/+6 | |
| | | | | digit integers (#100064) | |||||
* | GH-99554: Pack location tables more effectively (GH-99556) | Brandt Bucher | 2022-12-22 | 1 | -23/+44 | |
| | ||||||
* | gh-100188: Reduce misses in BINARY_SUBSCR_(LIST/TUPLE)_INT (#100189) | Dennis Sweeney | 2022-12-20 | 1 | -4/+12 | |
| | | | Don't specialize if the index is negative. | |||||
* | Correct CVE-2020-10735 documentation (#100306) | Jeremy Paige | 2022-12-18 | 2 | -4/+4 | |
| | ||||||
* | gh-99240: Reset pointer to NULL when the pointed memory is freed in argument ↵ | colorfulappl | 2022-12-17 | 1 | -5/+5 | |
| | | | | | | parsing (#99890) Co-authored-by: Kumar Aditya <59607654+kumaraditya303@users.noreply.github.com> Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com> | |||||
* | GH-98831: Add DECREF_INPUTS(), expanding to DECREF() each stack input (#100205) | Guido van Rossum | 2022-12-17 | 1 | -18/+13 | |
| | | | | | | | | | | | | | | | | | | | The presence of this macro indicates that a particular instruction may be considered for conversion to a register-based format (see https://github.com/faster-cpython/ideas/issues/485). An invariant (currently unchecked) is that `DEOPT_IF()` may only occur *before* `DECREF_INPUTS()`, and `ERROR_IF()` may only occur *after* it. One reason not to check this is that there are a few places where we insert *two* `DECREF_INPUTS()` calls, in different branches of the code. The invariant checking would have to be able to do some flow control analysis to understand this. Note that many instructions, especially specialized ones, can't be converted to use this macro straightforwardly. This is because the generator currently only generates plain `Py_DECREF(variable)` statements, and cannot generate things like `_Py_DECREF_SPECIALIZED()` let alone deal with `_PyList_AppendTakeRef()`. | |||||
* | GH-90043: Handle NaNs in COMPARE_OP_FLOAT_JUMP (GH-100278) | Brandt Bucher | 2022-12-16 | 3 | -24/+21 | |
| | ||||||
* | Improve stats presentation for calls. (GH-100274) | Mark Shannon | 2022-12-16 | 1 | -37/+22 | |
| | ||||||
* | Better stats for `LOAD_ATTR` and `STORE_ATTR` (GH-100295) | Mark Shannon | 2022-12-16 | 1 | -12/+35 | |
| | | | | | * Don't attempt to specialize for LOAD_ATTR on instance if class has attribute * Improvement to LOAD_ATTR and STORE_ATTR specialization stats. | |||||
* | Move stats for the method cache into the `Py_STAT` machinery (GH-100255) | Mark Shannon | 2022-12-15 | 1 | -0/+5 | |
| | ||||||
* | GH-100222: fix typo _py_set_opocde -> _py_set_opcode (GH-100259) | Carl Meyer | 2022-12-15 | 1 | -65/+65 | |
| | | | | | Typo introduced in #100223. Automerge-Triggered-By: GH:brandtbucher | |||||
* | GH-100000: Cleanup and polish various watchers code (GH-99998) | Itamar Ostricher | 2022-12-14 | 1 | -0/+4 | |
| | | | | | | * Initialize `type_watchers` array to `NULL`s * Optimize code watchers notification * Optimize func watchers notification | |||||
* | Assorted minor fixes for specialization stats. (GH-100219) | Mark Shannon | 2022-12-14 | 1 | -17/+34 | |
| | ||||||
* | GH-100222: Redefine _Py_CODEUNIT as a union to clarify structure of code ↵ | Mark Shannon | 2022-12-14 | 4 | -91/+101 | |
| | | | | unit. (GH-100223) | |||||
* | gh-99955: undef ERROR and SUCCESS before redefining (fixes sanitizer ↵ | Irit Katriel | 2022-12-13 | 1 | -0/+2 | |
| | | | | warning) (#100215) | |||||
* | gh-81057: Move Signal-Related Globals to _PyRuntimeState (gh-100085) | Eric Snow | 2022-12-12 | 1 | -1/+0 | |
| | | | https://github.com/python/cpython/issues/81057 | |||||
* | GH-100143: Improve collecting pystats for parts of runs (GH-100144) | Michael Droettboom | 2022-12-12 | 2 | -6/+16 | |
| | | | | | | | | * pystats off by default * Add -Xpystats flag * Always dump pystats, even if turned off | |||||
* | gh-99955: standardize return values of functions in compiler's code-gen ↵ | Irit Katriel | 2022-12-12 | 1 | -760/+694 | |
| | | | | (#100010) | |||||
* | gh-96715 Remove redundant NULL check in `profile_trampoline` function (#96716) | chgnrdv | 2022-12-12 | 1 | -4/+0 | |
| | | | Closes #96715 | |||||
* | gh-81057: Fix the wasm32-wasi Buildbot (gh-100139) | Eric Snow | 2022-12-09 | 1 | -1/+2 | |
| | | | | | The build was broken by gh-100084. https://github.com/python/cpython/issues/81057 | |||||
* | GH-98522: Add version number to code objects. (GH-98525) | Mark Shannon | 2022-12-09 | 2 | -0/+2 | |
| | | | | | | * Add version number to code object for better versioning of functions. * Improves specialization for closures and list comprehensions. | |||||
* | GH-100110: Specialize FOR_ITER for tuples (GH-100109) | Ken Jin | 2022-12-09 | 4 | -12/+62 | |
| | | | * Specialize FOR_ITER for tuples | |||||
* | gh-81057: Move Threading-Related Globals to _PyRuntimeState (#100084) | Eric Snow | 2022-12-09 | 4 | -48/+24 | |
| | | | https://github.com/python/cpython/issues/81057 | |||||
* | gh-81057: Move Ceval Trampoline Globals to _PyRuntimeState (gh-100083) | Eric Snow | 2022-12-09 | 1 | -30/+14 | |
| | | | https://github.com/python/cpython/issues/81057 | |||||
* | GH-98831: Generate things in the input order (#100123) | Guido van Rossum | 2022-12-08 | 1 | -237/+237 | |
| | | | | This makes it easier to see what changed in the generated code when converting an instruction to super or macro. | |||||
* | gh-81057: Move time Globals to _PyRuntimeState (gh-100122) | Eric Snow | 2022-12-08 | 1 | -0/+5 | |
| | | | https://github.com/python/cpython/issues/81057 | |||||
* | GH-98831: Typed stack effects, and more instructions converted (#99764) | Guido van Rossum | 2022-12-08 | 2 | -469/+366 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Stack effects can now have a type, e.g. `inst(X, (left, right -- jump/uint64_t)) { ... }`. Instructions converted to the non-legacy format: * COMPARE_OP * COMPARE_OP_FLOAT_JUMP * COMPARE_OP_INT_JUMP * COMPARE_OP_STR_JUMP * STORE_ATTR * DELETE_ATTR * STORE_GLOBAL * STORE_ATTR_INSTANCE_VALUE * STORE_ATTR_WITH_HINT * STORE_ATTR_SLOT, and complete the store_attr family * Complete the store_subscr family: STORE_SUBSCR{,DICT,LIST_INT} (STORE_SUBSCR was alread half converted, but wasn't using cache effects yet.) * DELETE_SUBSCR * PRINT_EXPR * INTERPRETER_EXIT (a bit weird, ends in return) * RETURN_VALUE * GET_AITER (had to restructure it some) The original had mysterious `SET_TOP(NULL)` before `goto error`. I assume those just account for `obj` having been decref'ed, so I got rid of them in favor of the cleanup implied by `ERROR_IF()`. * LIST_APPEND (a bit unhappy with it) * SET_ADD (also a bit unhappy with it) Various other improvements/refactorings as well. | |||||
* | gh-81057: Move More Globals to _PyRuntimeState (gh-100092) | Eric Snow | 2022-12-07 | 2 | -14/+8 | |
| | | | https://github.com/python/cpython/issues/81057 | |||||
* | GH-99729: Unlink frames before clearing them (GH-100030) | Brandt Bucher | 2022-12-06 | 4 | -11/+15 | |
| | ||||||
* | gh-99741: Implement Multi-Phase Init for the _xxsubinterpreters Module ↵ | Eric Snow | 2022-12-05 | 1 | -56/+128 | |
| | | | | | | | (gh-99742) _xxsubinterpreters is an internal module used for testing. https://github.com/python/cpython/issues/99741 | |||||
* | bpo-15999: Accept arbitrary values for boolean parameters. (#15609) | Serhiy Storchaka | 2022-12-03 | 2 | -5/+5 | |
| | | | builtins and extension module functions and methods that expect boolean values for parameters now accept any Python object rather than just a bool or int type. This is more consistent with how native Python code itself behaves. | |||||
* | GH-98831: Support cache effects in super- and macro instructions (#99601) | Guido van Rossum | 2022-12-03 | 1 | -2/+2 | |
| | ||||||
* | gh-99741: Clean Up the _xxsubinterpreters Module (gh-99940) | Eric Snow | 2022-12-02 | 1 | -9/+11 | |
| | | | | | This cleanup up resolves a few subtle bugs and makes the implementation for multi-phase init much cleaner. https://github.com/python/cpython/issues/99741 | |||||
* | gh-99955: standardize return values of functions in assembler and optimizer. ↵ | Irit Katriel | 2022-12-02 | 1 | -42/+54 | |
| | | | | (#99956) | |||||
* | gh-99741: Fix the Cross-Interpreter Data API (gh-99939) | Eric Snow | 2022-12-02 | 1 | -23/+84 | |
| | | | | | There were some minor issues that showed up while I was working on porting _xxsubinterpreters to multi-phase init. This fixes them. https://github.com/python/cpython/issues/99741 | |||||
* | GH-91054: Add code object watchers API (GH-99859) | Itamar Ostricher | 2022-12-02 | 1 | -0/+5 | |
| | | | | | | * Add API to allow extensions to set callback function on creation and destruction of PyCodeObject Co-authored-by: Ye11ow-Flash <janshah@cs.stonybrook.edu> | |||||
* | gh-89189: More compact range iterator (GH-27986) | Serhiy Storchaka | 2022-11-30 | 2 | -6/+8 | |
| | ||||||
* | GH-99877) | Irit Katriel | 2022-11-30 | 1 | -23/+41 | |
| | ||||||
* | gh-87092: move all localsplus preparation into separate function called from ↵ | Irit Katriel | 2022-11-30 | 1 | -30/+41 | |
| | | | | assembler stage (GH-99869) | |||||
* | GH-81057: remove static state from suggestions.c (#99411) | Kumar Aditya | 2022-11-30 | 1 | -8/+19 | |
| | ||||||
* | gh-64490: Fix bugs in argument clinic varargs processing (#32092) | colorfulappl | 2022-11-24 | 1 | -1/+19 | |
| | ||||||
* | gh-99708: fix bug where compiler crashes on if expression with an empty body ↵ | Irit Katriel | 2022-11-24 | 1 | -3/+17 | |
| | | | | block (GH-99732) | |||||
* | gh-99537: Use Py_SETREF(var, NULL) in C code (#99687) | Victor Stinner | 2022-11-23 | 3 | -18/+9 | |
| | | | Replace "Py_DECREF(var); var = NULL;" with "Py_SETREF(var, NULL);". |