Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | gh-90699: Use _Py_STR(empty) instead of PyUnicode_New(0, 0) for BUILD_STRING ↵ | Dennis Sweeney | 2022-04-15 | 1 | -6/+2 | |
| | | | | (GH-91476) | |||||
* | bpo-47120: make POP_JUMP_IF_TRUE/FALSE/NONE/NOT_NONE relative (GH-32400) | Irit Katriel | 2022-04-11 | 1 | -47/+132 | |
| | ||||||
* | Fix some typos in comments (GH-32422) | jonasdlindner | 2022-04-09 | 1 | -1/+1 | |
| | ||||||
* | bpo-47177: Replace `f_lasti` with `prev_instr` (GH-32208) | Brandt Bucher | 2022-04-07 | 1 | -34/+37 | |
| | ||||||
* | bpo-35134: Remove the Include/code.h header file (GH-32385) | Victor Stinner | 2022-04-07 | 1 | -1/+0 | |
| | | | | | | Remove the Include/code.h header file. C extensions should only include the main <Python.h> header file. Python.h includes directly Include/cpython/code.h instead. | |||||
* | bpo-47009: Fix assert on big endian (GH-32332) | Christian Heimes | 2022-04-05 | 1 | -1/+1 | |
| | ||||||
* | bpo-47120: make JUMP_NO_INTERRUPT relative (GH-32221) | Irit Katriel | 2022-04-05 | 1 | -2/+2 | |
| | ||||||
* | bpo-47186: Replace JUMP_IF_NOT_EG_MATCH by CHECK_EG_MATCH + jump (GH-32309) | Irit Katriel | 2022-04-05 | 1 | -13/+3 | |
| | ||||||
* | bpo-47009: Let PRECALL_NO_KW_LIST_APPEND do its own POP_TOP (GH-32239) | Dennis Sweeney | 2022-04-05 | 1 | -4/+4 | |
| | ||||||
* | bpo-47176: Interrupt handling for wasm32-emscripten builds without pthreads ↵ | Hood Chatham | 2022-04-03 | 1 | -0/+2 | |
| | | | | | | (GH-32209) Co-authored-by: Christian Heimes <christian@python.org> Co-authored-by: Brett Cannon <brett@python.org> | |||||
* | bpo-47186: Replace JUMP_IF_NOT_EXC_MATCH by CHECK_EXC_MATCH + jump (GH-32231) | Irit Katriel | 2022-04-01 | 1 | -4/+2 | |
| | ||||||
* | bpo-47009: Streamline list.append for the common case (GH-31864) | Dennis Sweeney | 2022-04-01 | 1 | -9/+4 | |
| | ||||||
* | bpo-47120: Replace the JUMP_ABSOLUTE opcode by the relative JUMP_BACKWARD ↵ | Irit Katriel | 2022-03-31 | 1 | -12/+11 | |
| | | | | (GH-32115) | |||||
* | Merge deoptimization blocks in interpreter (GH-32155) | Mark Shannon | 2022-03-30 | 1 | -33/+23 | |
| | ||||||
* | bpo-47053: Refactor BINARY_OP_INPLACE_ADD_UNICODE (GH-32122) | Dennis Sweeney | 2022-03-29 | 1 | -14/+18 | |
| | ||||||
* | bpo-47127: Specialize calls for fastcall c methods with keywords (GH-32125) | Kumar Aditya | 2022-03-27 | 1 | -0/+32 | |
| | | | | * add PRECALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS | |||||
* | bpo-47053: Reduce deoptimization in BINARY_OP_INPLACE_ADD_UNICODE (GH-31318) | Dennis Sweeney | 2022-03-25 | 1 | -4/+5 | |
| | | | | | * Don't deopt if refcounts are too big * Detect more at specialization time | |||||
* | bpo-46841: remove no-longer-used macro UPDATE_PREV_INSTR_OPARG (GH-32100) | Irit Katriel | 2022-03-24 | 1 | -2/+0 | |
| | ||||||
* | bpo-43166: Disable ceval.c optimizations for Windows debug builds (GH-32023) | neonene | 2022-03-23 | 1 | -4/+0 | |
| | | | Also increases the stack allocation when run with `python_d.exe` to account for the extra stack checks that are added. | |||||
* | bpo-47045: Remove `f_state` field (GH-31963) | Mark Shannon | 2022-03-22 | 1 | -92/+97 | |
| | | | | | * Remove the f_state field from _PyInterpreterFrame * Make ownership of the frame explicit, replacing the is_generator field with an owner field. | |||||
* | bpo-46841: Quicken code in-place (GH-31888) | Brandt Bucher | 2022-03-21 | 1 | -27/+12 | |
| | | | | | | | | | | | | | | | | | | | * Moves the bytecode to the end of the corresponding PyCodeObject, and quickens it in-place. * Removes the almost-always-unused co_varnames, co_freevars, and co_cellvars member caches * _PyOpcode_Deopt is a new mapping from all opcodes to their un-quickened forms. * _PyOpcode_InlineCacheEntries is renamed to _PyOpcode_Caches * _Py_IncrementCountAndMaybeQuicken is renamed to _PyCode_Warmup * _Py_Quicken is renamed to _PyCode_Quicken * _co_quickened is renamed to _co_code_adaptive (and is now a read-only memoryview). * Do not emit unused nonzero opargs anymore in the compiler. | |||||
* | bpo-46850: Remove _PyEval_CallTracing() function (GH-32019) | Victor Stinner | 2022-03-21 | 1 | -4/+7 | |
| | | | | Remove the private undocumented function _PyEval_CallTracing() from the C API. Call the public sys.call_tracing() function instead. | |||||
* | bpo-46850: Remove _PyEval_GetCoroutineOriginTrackingDepth() (GH-32018) | Victor Stinner | 2022-03-21 | 1 | -4/+10 | |
| | | | | | | | | | | | | | | | Remove the private undocumented function _PyEval_GetCoroutineOriginTrackingDepth() from the C API. Call the public sys.get_coroutine_origin_tracking_depth() function instead. Change the internal function _PyEval_SetCoroutineOriginTrackingDepth(): * Remove the 'tstate' parameter; * Add return value and raises an exception if depth is negative; * No longer export the function: call the public sys.set_coroutine_origin_tracking_depth() function instead. Uniformize also function declarations in pycore_ceval.h. | |||||
* | Use low bit of LOAD_GLOBAL's oparg to indicate whether it should push an ↵ | Mark Shannon | 2022-03-17 | 1 | -5/+13 | |
| | | | | additional NULL. (GH-31933) | |||||
* | bpo-46841: Don't scan backwards in bytecode (GH-31901) | Mark Shannon | 2022-03-16 | 1 | -13/+7 | |
| | ||||||
* | bpo-45923: Decouple suspension of tracing from tracing flag. (GH-31908) | Mark Shannon | 2022-03-15 | 1 | -16/+28 | |
| | ||||||
* | bpo-46920: Remove code that has explainers why it was disabled (GH-31813) | Oleg Iarygin | 2022-03-14 | 1 | -6/+0 | |
| | ||||||
* | bpo-46841: Add a _Py_SET_OPCODE macro (GH-31780) | Brandt Bucher | 2022-03-12 | 1 | -1/+1 | |
| | ||||||
* | bpo-46841: Don't use an oparg counter for `STORE_SUBSCR` (GH-31742) | Brandt Bucher | 2022-03-08 | 1 | -20/+9 | |
| | ||||||
* | bpo-46841: Use inline caching for calls (GH-31709) | Brandt Bucher | 2022-03-07 | 1 | -142/+93 | |
| | ||||||
* | bpo-46940: Don't override existing AttributeError suggestion information ↵ | Pablo Galindo Salgado | 2022-03-07 | 1 | -3/+6 | |
| | | | | | | | | | | | | (GH-31710) When an exception is created in a nested call to PyObject_GetAttr, any external calls will override the context information of the AttributeError that we have already placed in the most internal call. This will cause the suggestions we create to nor work properly as the attribute name and object that we will be using are the incorrect ones. To avoid this, we need to check first if these attributes are already set and bail out if that's the case. | |||||
* | bpo-46841: Fix BINARY_OP's handling of inline caches (GH-31671) | Brandt Bucher | 2022-03-04 | 1 | -2/+3 | |
| | ||||||
* | bpo-46841: Fix error message hacks in `GET_AWAITABLE` (GH-31664) | Brandt Bucher | 2022-03-04 | 1 | -11/+5 | |
| | ||||||
* | bpo-46841: Use inline caching for attribute accesses (GH-31640) | Brandt Bucher | 2022-03-03 | 1 | -166/+102 | |
| | ||||||
* | Move check for str-only keys in LOAD_GLOBAL specializations to ↵ | Mark Shannon | 2022-03-03 | 1 | -15/+6 | |
| | | | | specialization time. (GH-31659) | |||||
* | bpo-46845: Reduce dict size when all keys are Unicode (GH-31564) | Inada Naoki | 2022-03-01 | 1 | -40/+53 | |
| | ||||||
* | bpo-46841: Use inline cache for `BINARY_SUBSCR`. (GH-31618) | Mark Shannon | 2022-03-01 | 1 | -13/+19 | |
| | ||||||
* | bpo-46841: Use inline caching for `COMPARE_OP` (GH-31622) | Brandt Bucher | 2022-03-01 | 1 | -15/+18 | |
| | ||||||
* | bpo-45431: Rename CFrame to _PyCFrame in the C API (GH-31584) | Victor Stinner | 2022-02-28 | 1 | -3/+3 | |
| | | | | | | Rename also struct _cframe to struct _PyCFrame. Add a comment suggesting using public functions rather than using directly the private _PyCFrame structure. | |||||
* | bpo-46841: Move the cache for `LOAD_GLOBAL` inline. (GH-31575) | Mark Shannon | 2022-02-28 | 1 | -18/+20 | |
| | ||||||
* | bpo-46841: Use inline caching for `UNPACK_SEQUENCE` (GH-31591) | Brandt Bucher | 2022-02-28 | 1 | -14/+15 | |
| | ||||||
* | bpo-46836: Rename InterpreterFrame to _PyInterpreterFrame (GH-31583) | Victor Stinner | 2022-02-25 | 1 | -41/+41 | |
| | | | | | Rename also struct _interpreter_frame to struct _PyInterpreterFrame. Reduce risk of name conflicts if a project includes pycore_frame.h. | |||||
* | bpo-46841: Use *inline* caching for `BINARY_OP` (GH-31543) | Brandt Bucher | 2022-02-25 | 1 | -6/+34 | |
| | ||||||
* | bpo-45107: Specialize `LOAD_METHOD` for instances with dict. (GH-31531) | Mark Shannon | 2022-02-24 | 1 | -2/+34 | |
| | ||||||
* | bpo-46823: Implement LOAD_FAST__LOAD_ATTR_INSTANCE_VALUE superinstruction ↵ | Dennis Sweeney | 2022-02-24 | 1 | -3/+77 | |
| | | | | (GH-31484) | |||||
* | bpo-44337: Shrink the LOAD_ATTR/STORE_ATTR caches (GH-31517) | Brandt Bucher | 2022-02-23 | 1 | -23/+16 | |
| | ||||||
* | Fix reporting of specialization stats. (GH-31503) | Mark Shannon | 2022-02-22 | 1 | -0/+2 | |
| | ||||||
* | Move call specializations from CALL to PRECALL. (GH-31496) | Mark Shannon | 2022-02-22 | 1 | -75/+132 | |
| | ||||||
* | bpo-46329: Streamline calling sequence a bit. (GH-31465) | Mark Shannon | 2022-02-21 | 1 | -118/+151 | |
| | | | | | | | | | | | | | | * Move handling of bound-methods to PRECALL. * Remove call_shape.postcall_shrink * Remove call_shape.callable * Remove call_shape.callable. Change CALL oparg to match PRECALL oparg. * Move KW_NAMES before PRECALL. * Update opcode docs in dis.rst | |||||
* | bpo-46329: Change calling sequence (again) (GH-31373) | Mark Shannon | 2022-02-18 | 1 | -21/+11 | |
| | | | | * Change calling sequence: Add PUSH_NULL. Merge PRECALL_FUNCTION and PRECALL_METHOD into PRECALL. |