Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | gh-98831: add variable stack effect support to cases generator (#101309) | Irit Katriel | 2023-01-25 | 1 | -5/+7 | |
| | ||||||
* | GH-100762: Don't call `gen.throw()` in `gen.close()`, unless necessary. ↵ | Mark Shannon | 2023-01-24 | 1 | -3/+3 | |
| | | | | | | (GH-101013) * Store exception stack depth in YIELD_VALUE's oparg and use it avoid expensive gen.throw() in gen.close() where possible. | |||||
* | Fix typo in comment in compile.c (#101194) | Ikko Eltociear Ashimine | 2023-01-20 | 1 | -1/+1 | |
| | ||||||
* | gh-101169: reduce the implementation of except* by one bytecode instruction ↵ | Irit Katriel | 2023-01-19 | 1 | -16/+11 | |
| | | | | (#101170) | |||||
* | GH-100982: Add `COMPARE_AND_BRANCH` instruction (GH-100983) | Mark Shannon | 2023-01-16 | 1 | -0/+3 | |
| | ||||||
* | GH-100923: Embed jump mask in `COMPARE_OP` oparg (GH-100924) | Mark Shannon | 2023-01-11 | 1 | -1/+3 | |
| | ||||||
* | gh-88696: clean up dead argument to compiler_make_closure (GH-100806) | Carl Meyer | 2023-01-07 | 1 | -23/+7 | |
| | ||||||
* | GH-99005: More intrinsics (GH-100774) | Mark Shannon | 2023-01-06 | 1 | -10/+9 | |
| | | | * Remove UNARY_POSITIVE, LIST_TO_TUPLE and ASYNC_GEN_WRAP, replacing them with intrinsics. | |||||
* | GH-98831: Update generate_cases.py: register inst, opcode_metadata.h (#100735) | Guido van Rossum | 2023-01-05 | 1 | -0/+28 | |
| | | | | | | | | (These aren't used yet, but may be coming soon, and it's easier to keep this tool the same between branches.) Added a sanity check for all this to compile.c. Co-authored-by: Irit Katriel <iritkatriel@yahoo.com> | |||||
* | GH-99005: Add `CALL_INTRINSIC_1` instruction (GH-100771) | Mark Shannon | 2023-01-05 | 1 | -12/+8 | |
| | | | | | | | | * Remove PRINT_EXPR instruction * Remove STOPITERATION_ERROR instruction * Remove IMPORT_STAR instruction | |||||
* | gh-100747: some compiler macros use c instead of C to access the compiler ↵ | Irit Katriel | 2023-01-04 | 1 | -7/+7 | |
| | | | | (#100748) | |||||
* | GH-100719: Remove the `co_nplaincellvars` field from code objects. (GH-100721) | Mark Shannon | 2023-01-04 | 1 | -1/+1 | |
| | ||||||
* | GH-99554: Trim trailing whitespace (GH-100435) | Brandt Bucher | 2022-12-22 | 1 | -1/+1 | |
| | | | Automerge-Triggered-By: GH:brandtbucher | |||||
* | GH-99554: Pack location tables more effectively (GH-99556) | Brandt Bucher | 2022-12-22 | 1 | -23/+44 | |
| | ||||||
* | GH-100222: Redefine _Py_CODEUNIT as a union to clarify structure of code ↵ | Mark Shannon | 2022-12-14 | 1 | -5/+15 | |
| | | | | unit. (GH-100223) | |||||
* | gh-99955: undef ERROR and SUCCESS before redefining (fixes sanitizer ↵ | Irit Katriel | 2022-12-13 | 1 | -0/+2 | |
| | | | | warning) (#100215) | |||||
* | gh-99955: standardize return values of functions in compiler's code-gen ↵ | Irit Katriel | 2022-12-12 | 1 | -760/+694 | |
| | | | | (#100010) | |||||
* | gh-99955: standardize return values of functions in assembler and optimizer. ↵ | Irit Katriel | 2022-12-02 | 1 | -42/+54 | |
| | | | | (#99956) | |||||
* | 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-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() function in C code (#99657) | Victor Stinner | 2022-11-22 | 1 | -3/+1 | |
| | | | | | | | | | | | | | | | Fix potential race condition in code patterns: * Replace "Py_DECREF(var); var = new;" with "Py_SETREF(var, new);" * Replace "Py_XDECREF(var); var = new;" with "Py_XSETREF(var, new);" * Replace "Py_CLEAR(var); var = new;" with "Py_XSETREF(var, new);" Other changes: * Replace "old = var; var = new; Py_DECREF(var)" with "Py_SETREF(var, new);" * Replace "old = var; var = new; Py_XDECREF(var)" with "Py_XSETREF(var, new);" * And remove the "old" variable. | |||||
* | gh-99300: Replace Py_INCREF() with Py_NewRef() (#99530) | Victor Stinner | 2022-11-16 | 1 | -4/+2 | |
| | | | | Replace Py_INCREF() and Py_XINCREF() using a cast with Py_NewRef() and Py_XNewRef(). | |||||
* | gh-87092: expose the compiler's codegen to python for unit tests (GH-99111) | Irit Katriel | 2022-11-14 | 1 | -53/+120 | |
| | ||||||
* | gh-98762: Fix locations of match sub-patterns (GH-98775) | Irit Katriel | 2022-11-12 | 1 | -129/+116 | |
| | ||||||
* | gh-99254: remove all unused consts from code objects (GH-99255) | Irit Katriel | 2022-11-11 | 1 | -19/+92 | |
| | ||||||
* | GH-96421: Insert shim frame on entry to interpreter (GH-96319) | Mark Shannon | 2022-11-10 | 1 | -0/+2 | |
| | | | | | | * Adds EXIT_INTERPRETER instruction to exit PyEval_EvalDefault() * Simplifies RETURN_VALUE, YIELD_VALUE and RETURN_GENERATOR instructions as they no longer need to check for entry frames. | |||||
* | gh-99300: Use Py_NewRef() in Python/ directory (#99317) | Victor Stinner | 2022-11-10 | 1 | -50/+25 | |
| | | | | | | Replace Py_INCREF() and Py_XINCREF() with Py_NewRef() and Py_XNewRef() in C files of the Python/ directory. Update Parser/asdl_c.py to regenerate Python/Python-ast.c. | |||||
* | GH-98686: Get rid of "adaptive" and "quick" instructions (GH-99182) | Brandt Bucher | 2022-11-09 | 1 | -3/+0 | |
| | ||||||
* | GH-96793: Implement PEP 479 in bytecode. (GH-99006) | Mark Shannon | 2022-11-03 | 1 | -12/+50 | |
| | | | | | * Handle converting StopIteration to RuntimeError in bytecode. * Add custom instruction for converting StopIteration into RuntimeError. | |||||
* | gh-87092: remove unused SET_LOC/UNSET_LOC macros (GH-98914) | Irit Katriel | 2022-11-02 | 1 | -73/+6 | |
| | ||||||
* | gh-87092: do not allocate PyFutureFeatures dynamically (GH-98913) | Irit Katriel | 2022-11-02 | 1 | -12/+10 | |
| | ||||||
* | gh-98811: use full source location to simplify __future__ imports error ↵ | Irit Katriel | 2022-10-31 | 1 | -30/+32 | |
| | | | | checking. This also fixes an incorrect error offset. (GH-98812) | |||||
* | GH-96793: Change `FOR_ITER` to not pop the iterator on exhaustion. (GH-96801) | Mark Shannon | 2022-10-27 | 1 | -2/+5 | |
| | | | | Change FOR_ITER to have the same stack effect regardless of whether it branches or not. Performance is unchanged as FOR_ITER (and specialized forms jump over the cleanup code). | |||||
* | gh-98461: Fix location of RETURN_VALUE in async generator bytecode. ↵ | Irit Katriel | 2022-10-25 | 1 | -56/+43 | |
| | | | | compiler_jump_if no longer needs a pointer to the loc. (GH-98494) | |||||
* | gh-97912: Avoid quadratic behavior when adding LOAD_FAST_CHECK (GH-97952) | Dennis Sweeney | 2022-10-20 | 1 | -64/+135 | |
| | | | | | * The compiler analyzes the usage of the first 64 local variables all at once using bit masks. * Local variables beyond the first 64 are only partially analyzed, achieving linear time. | |||||
* | gh-98461: Fix source location in comprehensions bytecode (GH-98464) | Irit Katriel | 2022-10-20 | 1 | -60/+74 | |
| | ||||||
* | gh-98398: Fix source locations for 'assert' bytecode (GH-98405) | Irit Katriel | 2022-10-19 | 1 | -8/+10 | |
| | ||||||
* | gh-98390: Fix source locations of boolean sub-expressions (GH-98396) | Irit Katriel | 2022-10-18 | 1 | -1/+1 | |
| | ||||||
* | gh-93691: Compiler's code-gen passes location around instead of holding it ↵ | Irit Katriel | 2022-10-17 | 1 | -848/+975 | |
| | | | | on the global compiler state (GH-98001) | |||||
* | gh-87092: bring compiler code closer to a preprocessing-opt-assembler ↵ | Irit Katriel | 2022-10-05 | 1 | -39/+49 | |
| | | | | organisation (GH-97644) | |||||
* | GH-95921: Fix positions for some chained comparisons (GH-96968) | Brandt Bucher | 2022-09-20 | 1 | -0/+1 | |
| | ||||||
* | gh-87092: in compiler, move the detection of exception handlers before the ↵ | Irit Katriel | 2022-09-20 | 1 | -16/+32 | |
| | | | | CFG optimization stage (GH-96935) | |||||
* | gh-87092: reduce redundancy and repetition in compiler's optimization stage ↵ | Irit Katriel | 2022-09-13 | 1 | -90/+63 | |
| | | | | (GH-96713) | |||||
* | gh-88057: in compile.c, assertion that stackdepth is alway >=0 is missing in ↵ | Irit Katriel | 2022-09-07 | 1 | -0/+1 | |
| | | | | one place (GH-96513) | |||||
* | gh-93554: Conditional jump opcodes only jump forward (GH-96318) | Irit Katriel | 2022-09-01 | 1 | -72/+82 | |
| | ||||||
* | gh-93678: apply remove_redundant_jumps in optimize_cfg (GH-96274) | Irit Katriel | 2022-09-01 | 1 | -11/+33 | |
| | ||||||
* | gh-87092: use basicblock_last_instr consistently in the compiler (GH-96243) | Irit Katriel | 2022-08-24 | 1 | -29/+32 | |
| | ||||||
* | gh-93678: add _testinternalcapi.optimize_cfg() and test utils for compiler ↵ | Irit Katriel | 2022-08-24 | 1 | -48/+210 | |
| | | | | optimization unit tests (GH-96007) | |||||
* | GH-90997: Wrap yield from/await in a virtual try/except StopIteration (GH-96010) | Brandt Bucher | 2022-08-19 | 1 | -6/+13 | |
| |