Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | gh-98831: Use DECREF_INPUTS() more (#102409) | Guido van Rossum | 2023-03-13 | 1 | -49/+31 |
| | |||||
* | GH-100987: Don't cache references to the names and consts array in ↵ | Mark Shannon | 2023-03-13 | 1 | -23/+21 |
| | | | | | | | `_PyEval_EvalFrameDefault`. (#102640) * Rename local variables, names and consts, from the interpeter loop. Will allow non-code objects in frames for better introspection of C builtins and extensions. * Remove unused dummy variables. | ||||
* | GH-102300: Reuse objects with refcount == 1 in float specialized binary ops. ↵ | Mark Shannon | 2023-03-13 | 1 | -12/+3 |
| | | | | (GH-102301) | ||||
* | GH-90997: Shrink the LOAD_GLOBAL caches (#102569) | Brandt Bucher | 2023-03-11 | 1 | -3/+3 |
| | |||||
* | gh-100227: Move dict_state.global_version to PyInterpreterState (gh-102338) | Eric Snow | 2023-03-09 | 1 | -2/+2 |
| | | | https://github.com/python/cpython/issues/100227 | ||||
* | gh-102192: Replace PyErr_Fetch/Restore etc by more efficient alternatives ↵ | Irit Katriel | 2023-02-28 | 1 | -1/+1 |
| | | | | (in Python/) (#102193) | ||||
* | gh-102250: Fix double-decref in COMPARE_AND_BRANCH error case (GH-102287) | Dennis Sweeney | 2023-02-27 | 1 | -3/+1 |
| | |||||
* | GH-100982: Restrict `FOR_ITER_RANGE` to a single instruction to allow ↵ | Mark Shannon | 2023-02-22 | 1 | -16/+8 |
| | | | | instrumentation. (GH-101985) | ||||
* | gh-101907: Stop using `_Py_OPCODE` and `_Py_OPARG` macros (GH-101912) | Steve Dower | 2023-02-20 | 1 | -17/+17 |
| | | | | | | * gh-101907: Removes use of non-standard C++ extension from Include/cpython/code.h * Make cases_generator correct on Windows | ||||
* | gh-101952: Fix possible segfault in `BUILD_SET` opcode (#101958) | Eclips4 | 2023-02-16 | 1 | -0/+2 |
| | |||||
* | GH-87849: Fix refleak in SEND instruction. (GH-101908) | Mark Shannon | 2023-02-15 | 1 | -0/+1 |
| | | | Fix refleak in SEND instruction. | ||||
* | gh-101799: implement PREP_RERAISE_STAR as an intrinsic function (#101800) | Irit Katriel | 2023-02-14 | 1 | -11/+9 |
| | |||||
* | GH-87849: Simplify stack effect of SEND and specialize it for generators and ↵ | Mark Shannon | 2023-02-13 | 1 | -36/+52 |
| | | | | coroutines. (GH-101788) | ||||
* | gh-98831: Modernize CALL and family (#101508) | Guido van Rossum | 2023-02-08 | 1 | -282/+250 |
| | | | Includes a slight improvement to `DECREF_INPUTS()`. | ||||
* | GH-101578: Normalize the current exception (GH-101607) | Mark Shannon | 2023-02-08 | 1 | -3/+1 |
| | | | | | | | | | | * Make sure that the current exception is always normalized. * Remove redundant type and traceback fields for the current exception. * Add new API functions: PyErr_GetRaisedException, PyErr_SetRaisedException * Add new API functions: PyException_GetArgs, PyException_SetArgs | ||||
* | gh-98831: Modernize CALL_FUNCTION_EX (#101627) | Guido van Rossum | 2023-02-08 | 1 | -16/+7 |
| | | | New generator feature: Move CHECK_EVAL_BREAKER() call to just before DISPATCH(). | ||||
* | gh-98831: Modernize FORMAT_VALUE (#101628) | Guido van Rossum | 2023-02-08 | 1 | -15/+3 |
| | | | Generator update: support balanced parentheses and brackets in conditions and size expressions. | ||||
* | gh-98831: Finish the UNPACK_SEQUENCE family (#101666) | Guido van Rossum | 2023-02-07 | 1 | -20/+17 |
| | | | New generator feature: Generate useful glue for output arrays, so you can just write values to the output array (no bounds checking). Rewrote UNPACK_SEQUENCE_TWO_TUPLE to use this, and also UNPACK_SEQUENCE_{TUPLE,LIST}. | ||||
* | gh-101632: Add the new RETURN_CONST opcode (#101633) | penguin_wwy | 2023-02-07 | 1 | -0/+17 |
| | |||||
* | gh-98831: rewrite UNPACK_EX, UNPACK_SEQUENCE, UNPACK_SEQUENCE_TWO_TUPLE in ↵ | Irit Katriel | 2023-02-07 | 1 | -26/+11 |
| | | | | the instruction definition DSL (#101641) | ||||
* | gh-98831: Modernize the FOR_ITER family of instructions (#101626) | Guido van Rossum | 2023-02-07 | 1 | -36/+47 |
| | | | Co-authored-by: Irit Katriel <1055913+iritkatriel@users.noreply.github.com> | ||||
* | gh-98831: rewrite COPY and SWAP in the instruction definition DSL (#101620) | Irit Katriel | 2023-02-06 | 1 | -11/+6 |
| | |||||
* | gh-98831: rewrite MAKE_FUNCTION and BUILD_SLICE in the instruction ↵ | Irit Katriel | 2023-02-03 | 1 | -27/+20 |
| | | | | definition DSL (#101529) | ||||
* | gh-98831: rewrite SEND, GET_YIELD_FROM_ITER, RETURN_GENERATOR in the ↵ | Irit Katriel | 2023-02-03 | 1 | -21/+14 |
| | | | | instruction definition DSL (#101516) | ||||
* | gh-98831: rewrite RERAISE and CLEANUP_THROW in the instruction definition ↵ | Irit Katriel | 2023-02-02 | 1 | -17/+11 |
| | | | | DSL (#101511) | ||||
* | gh-98831: Modernize the LOAD_GLOBAL family (#101502) | Guido van Rossum | 2023-02-01 | 1 | -38/+19 |
| | |||||
* | gh-98831: rewrite PUSH_EXC_INFO and conditional jumps in the instruction ↵ | Irit Katriel | 2023-02-01 | 1 | -43/+28 |
| | | | | definition DSL (#101481) | ||||
* | gh-98831: Modernize the LOAD_ATTR family (#101488) | Guido van Rossum | 2023-02-01 | 1 | -116/+61 |
| | |||||
* | gh-98831: rewrite BEFORE_ASYNC_WITH and END_ASYNC_FOR in the instruction ↵ | Irit Katriel | 2023-01-31 | 1 | -20/+15 |
| | | | | definition DSL (#101458) | ||||
* | gh-98831: rewrite GET_LEN, GET_ITER, BEFORE_WITH and a few simple opcodes in ↵ | Irit Katriel | 2023-01-31 | 1 | -36/+21 |
| | | | | the instruction definition DSL (#101443) | ||||
* | GH-101291: Refactor the `PyLongObject` struct into object header and ↵ | Mark Shannon | 2023-01-30 | 1 | -7/+7 |
| | | | | PyLongValue struct. (GH-101292) | ||||
* | gh-98831: Support conditional effects; use for LOAD_ATTR (#101333) | Guido van Rossum | 2023-01-30 | 1 | -25/+13 |
| | |||||
* | gh-98831: rewrite RAISE_VARARGS in the instruction definition DSL (#101306) | Irit Katriel | 2023-01-25 | 1 | -8/+5 |
| | |||||
* | gh-98831: rewrite pattern matching opcodes in the instruction definition DSL ↵ | Irit Katriel | 2023-01-24 | 1 | -37/+13 |
| | | | | (#101287) | ||||
* | GH-100762: Don't call `gen.throw()` in `gen.close()`, unless necessary. ↵ | Mark Shannon | 2023-01-24 | 1 | -1/+0 |
| | | | | | | (GH-101013) * Store exception stack depth in YIELD_VALUE's oparg and use it avoid expensive gen.throw() in gen.close() where possible. | ||||
* | gh-98831: rewrite CHECK_EG_MATCH opcode in the instruction definition DSL ↵ | Irit Katriel | 2023-01-24 | 1 | -31/+11 |
| | | | | (#101269) | ||||
* | gh-100712: make it possible to disable specialization (for debugging) (#100713) | Irit Katriel | 2023-01-19 | 1 | -0/+24 |
| | |||||
* | GH-98831: Move assorted macros from ceval.h to a new header (#101116) | Guido van Rossum | 2023-01-18 | 1 | -35/+8 |
| | |||||
* | GH-98831: Implement array support in cases generator (#100912) | Guido van Rossum | 2023-01-17 | 1 | -70/+36 |
| | | | | | | | | You can now write things like this: ``` inst(BUILD_STRING, (pieces[oparg] -- str)) { ... } inst(LIST_APPEND, (list, unused[oparg-1], v -- list, unused[oparg-1])) { ... } ``` Note that array output effects are only partially supported (they must be named `unused` or correspond to an input effect). | ||||
* | GH-100982: Add `COMPARE_AND_BRANCH` instruction (GH-100983) | Mark Shannon | 2023-01-16 | 1 | -49/+58 |
| | |||||
* | GH-100923: Embed jump mask in `COMPARE_OP` oparg (GH-100924) | Mark Shannon | 2023-01-11 | 1 | -16/+18 |
| | |||||
* | gh-100758: Refactor initialisation of frame headers into a single function ↵ | Irit Katriel | 2023-01-06 | 1 | -20/+5 |
| | | | | (_PyFrame_Initialize) (GH-100759) | ||||
* | GH-99005: More intrinsics (GH-100774) | Mark Shannon | 2023-01-06 | 1 | -19/+0 |
| | | | * 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 | -1/+1 |
| | | | | | | | | (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 | -75/+5 |
| | | | | | | | | * Remove PRINT_EXPR instruction * Remove STOPITERATION_ERROR instruction * Remove IMPORT_STAR instruction | ||||
* | GH-100288: Remove LOAD_ATTR_METHOD_WITH_DICT instruction. (GH-100753) | Mark Shannon | 2023-01-05 | 1 | -28/+1 |
| | |||||
* | GH-100719: Remove the `co_nplaincellvars` field from code objects. (GH-100721) | Mark Shannon | 2023-01-04 | 1 | -1/+1 |
| | |||||
* | gh-100146: Steal references from stack when building a list (#100147) | L. A. F. Pereira | 2023-01-03 | 1 | -5/+2 |
| | | | | | | | | | | When executing the BUILD_LIST opcode, steal the references from the stack, in a manner similar to the BUILD_TUPLE opcode. Implement this by offloading the logic to a new private API, _PyList_FromArraySteal(), that works similarly to _PyTuple_FromArraySteal(). This way, instead of performing multiple stack pointer adjustments while the list is being initialized, the stack is adjusted only once and a fast memory copy operation is performed in one fell swoop. | ||||
* | GH-98831: Modernize a ton of simpler instructions (#100545) | Guido van Rossum | 2022-12-28 | 1 | -215/+104 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * load_const and load_fast aren't families for now * Don't decref unmoved names * Modernize GET_ANEXT * Modernize GET_AWAITABLE * Modernize ASYNC_GEN_WRAP * Modernize YIELD_VALUE * Modernize POP_EXCEPT (in more than one way) * Modernize PREP_RERAISE_STAR * Modernize LOAD_ASSERTION_ERROR * Modernize LOAD_BUILD_CLASS * Modernize STORE_NAME * Modernize LOAD_NAME * Modernize LOAD_CLASSDEREF * Modernize LOAD_DEREF * Modernize STORE_DEREF * Modernize COPY_FREE_VARS (mark it as done) * Modernize LIST_TO_TUPLE * Modernize LIST_EXTEND * Modernize SET_UPDATE * Modernize SETUP_ANNOTATIONS * Modernize DICT_UPDATE * Modernize DICT_MERGE * Modernize MAP_ADD * Modernize IS_OP * Modernize CONTAINS_OP * Modernize CHECK_EXC_MATCH * Modernize IMPORT_NAME * Modernize IMPORT_STAR * Modernize IMPORT_FROM * Modernize JUMP_FORWARD (mark it as done) * Modernize JUMP_BACKWARD (mark it as done) | ||||
* | Revert "gh-100288: Specialise LOAD_ATTR_METHOD for managed dictionaries ↵ | Ken Jin | 2022-12-23 | 1 | -25/+0 |
| | | | | | (GH-100289)" (#100468) This reverts commit c3c7848a48b74a321632202e4bdcf2f465fb1cc6. |