Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | GH-91409: Don't overwrite valid locations with NOP locations (GH-95067) | Brandt Bucher | 2022-07-20 | 1 | -1/+4 | |
| | ||||||
* | GH-94851: fix immortal objects refcounting in compiler (gh-95040) | Kumar Aditya | 2022-07-20 | 1 | -1/+1 | |
| | ||||||
* | gh-93678: move normalize_basic_block and extend_block call into optimize_cfg ↵ | Irit Katriel | 2022-07-19 | 1 | -31/+26 | |
| | | | | (GH-95002) | |||||
* | GH-94694: Fix column offsets for multi-line method lookups (GH-94697) | Brandt Bucher | 2022-07-10 | 1 | -2/+9 | |
| | ||||||
* | gh-92228: disable the compiler's 'small exit block inlining' optimization ↵ | Irit Katriel | 2022-07-07 | 1 | -0/+14 | |
| | | | | | | | for blocks that have a line number (GH-94592) Inlining of code that corresponds to source code lines, can make it hard to distinguish later between code which is only reachable from except handlers, and that which is reachable in normal control flow. This caused problems with the debugger's jump feature. This PR turns off the inlining optimisation for code which has line numbers. We still inline things like the implicit "return None". | |||||
* | gh-94485: Set line number of module's RESUME instruction to 0, as specified ↵ | Irit Katriel | 2022-07-05 | 1 | -1/+4 | |
| | | | | | by PEP 626 (GH-94552) Co-authored-by: Mark Shannon <mark@hotpy.org> | |||||
* | gh-94216: add pseudo instructions to the dis/opcodes modules (GH-94241) | Irit Katriel | 2022-07-01 | 1 | -38/+10 | |
| | ||||||
* | GH-94329: Don't raise on excessive stack consumption (GH-94421) | Mark Shannon | 2022-06-30 | 1 | -6/+1 | |
| | ||||||
* | gh-94332: make it safe to call assemble_free when assemble_init has not been ↵ | Irit Katriel | 2022-06-30 | 1 | -1/+2 | |
| | | | | called (GH-94389) | |||||
* | GH-94163: Add BINARY_SLICE and STORE_SLICE instructions. (GH-94168) | Mark Shannon | 2022-06-27 | 1 | -18/+70 | |
| | ||||||
* | GH-93678: refactor compiler so that optimizer does not need the assembler ↵ | Irit Katriel | 2022-06-21 | 1 | -160/+169 | |
| | | | | and compiler structs (GH-93842) | |||||
* | GH-93678: reduce boilerplate and code repetition in the compiler (GH-93682) | Irit Katriel | 2022-06-14 | 1 | -261/+150 | |
| | ||||||
* | GH-93429: Merge `LOAD_METHOD` back into `LOAD_ATTR` (GH-93430) | Ken Jin | 2022-06-14 | 1 | -2/+11 | |
| | ||||||
* | GH-93662: Make sure that column offsets are correct in multi-line method ↵ | Mark Shannon | 2022-06-14 | 1 | -4/+16 | |
| | | | | calls. (GH-93673) | |||||
* | GH-93621: reorder code in with/async-with exception exit path to reduce the ↵ | Irit Katriel | 2022-06-10 | 1 | -7/+13 | |
| | | | | size of the exception table (GH-93622) | |||||
* | GH-93444: remove redundant fields from basicblock: b_nofallthrough, b_exit, ↵ | Irit Katriel | 2022-06-03 | 1 | -78/+74 | |
| | | | | b_return (GH-93445) | |||||
* | gh-93356: Lay out exception handling code at end of code unit (GH-92769) | Irit Katriel | 2022-06-02 | 1 | -42/+220 | |
| | ||||||
* | gh-93143: Avoid NULL check in LOAD_FAST based on analysis in the compiler ↵ | Dennis Sweeney | 2022-05-31 | 1 | -0/+108 | |
| | | | | (GH-93144) | |||||
* | gh-93008: refactor compiler functions that add instructions to take only a ↵ | Irit Katriel | 2022-05-29 | 1 | -60/+61 | |
| | | | | basicblock* (not the whole compiler) (GH-93009) | |||||
* | GH-93207: Remove HAVE_STDARG_PROTOTYPES configure check for stdarg.h (#93215) | Kumar Aditya | 2022-05-27 | 1 | -8/+0 | |
| | ||||||
* | gh-93223: More aggressive Jump-To-Jump elimination (GH-93229) | Dennis Sweeney | 2022-05-27 | 1 | -1/+1 | |
| | ||||||
* | gh-93061: Mark as artificial: backwards jump after async for (GH-93062) | Dennis Sweeney | 2022-05-23 | 1 | -0/+2 | |
| | ||||||
* | GH-89914: Make the oparg of the YIELD_VALUE instruction equal the stack ↵ | Mark Shannon | 2022-05-19 | 1 | -2/+5 | |
| | | | | depth. (GH-92960) | |||||
* | GH-90690: Remove `PRECALL` instruction (GH-92925) | Mark Shannon | 2022-05-19 | 1 | -10/+1 | |
| | ||||||
* | gh-92782: unify the style of CFG traversal algorithms in the compiler (GH-92784) | Irit Katriel | 2022-05-17 | 1 | -38/+45 | |
| | ||||||
* | gh-92632: Make function starunpack_helper run faster when encounters starred ↵ | zikcheng | 2022-05-11 | 1 | -0/+1 | |
| | | | | argument. (GH-92655) | |||||
* | gh-92619: Fix bug where the compiler duplicates exit blocks unnecessarily ↵ | Irit Katriel | 2022-05-10 | 1 | -1/+9 | |
| | | | | (GH-92620) | |||||
* | gh-91869: Fix tracing of specialized instructions with extended args (GH-91945) | Dennis Sweeney | 2022-04-28 | 1 | -3/+4 | |
| | ||||||
* | gh-91719: Add pycore_opcode.h internal header file (#91906) | Victor Stinner | 2022-04-25 | 1 | -5/+6 | |
| | | | | | | | | | | | Move the following API from Include/opcode.h (public C API) to a new Include/internal/pycore_opcode.h header file (internal C API): * EXTRA_CASES * _PyOpcode_Caches * _PyOpcode_Deopt * _PyOpcode_Jump * _PyOpcode_OpName * _PyOpcode_RelativeJump | |||||
* | GH-88116: Use a compact format to represent end line and column offsets. ↵ | Mark Shannon | 2022-04-21 | 1 | -163/+144 | |
| | | | | | | | | | | | | (GH-91666) * Stores all location info in linetable to conform to PEP 626. * Remove column table from code objects. * Remove end-line table from code objects. * Document new location table format | |||||
* | bpo-46712: share more global strings in deepfreeze (gh-32152) | Kumar Aditya | 2022-04-19 | 1 | -0/+3 | |
| | | | (for gh-90868) | |||||
* | Fix an out of date comment in compile.c (GH-91615) | Irit Katriel | 2022-04-16 | 1 | -1/+2 | |
| | ||||||
* | gh-91276: Make JUMP_IF_TRUE_OR_POP/JUMP_IF_FALSE_OR_POP relative (GH-32215) | Irit Katriel | 2022-04-15 | 1 | -0/+15 | |
| | ||||||
* | Fill holes in internal compiler structs (#91458) | L. A. F. Pereira | 2022-04-13 | 1 | -18/+18 | |
| | ||||||
* | bpo-47120: make POP_JUMP_IF_TRUE/FALSE/NONE/NOT_NONE relative (GH-32400) | Irit Katriel | 2022-04-11 | 1 | -17/+74 | |
| | ||||||
* | bpo-47120: make JUMP_NO_INTERRUPT relative (GH-32221) | Irit Katriel | 2022-04-05 | 1 | -20/+29 | |
| | ||||||
* | bpo-47186: Replace JUMP_IF_NOT_EG_MATCH by CHECK_EG_MATCH + jump (GH-32309) | Irit Katriel | 2022-04-05 | 1 | -7/+21 | |
| | ||||||
* | bpo-47172: Compiler enhancements (GH-32200) | Irit Katriel | 2022-04-01 | 1 | -36/+41 | |
| | | | | | | | | * Make virtual opcodes negative. * Make is_jump detect only actual jumps. * Use is_block_push for the exception block setup opcodes. | |||||
* | bpo-47186: Replace JUMP_IF_NOT_EXC_MATCH by CHECK_EXC_MATCH + jump (GH-32231) | Irit Katriel | 2022-04-01 | 1 | -4/+6 | |
| | ||||||
* | bpo-47120: Replace the JUMP_ABSOLUTE opcode by the relative JUMP_BACKWARD ↵ | Irit Katriel | 2022-03-31 | 1 | -68/+88 | |
| | | | | (GH-32115) | |||||
* | bpo-43224: Implement PEP 646 grammar changes (GH-31018) | Matthew Rahtz | 2022-03-26 | 1 | -2/+12 | |
| | | | Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com> | |||||
* | bpo-46841: Quicken code in-place (GH-31888) | Brandt Bucher | 2022-03-21 | 1 | -4/+4 | |
| | | | | | | | | | | | | | | | | | | | * 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. | |||||
* | Use low bit of LOAD_GLOBAL's oparg to indicate whether it should push an ↵ | Mark Shannon | 2022-03-17 | 1 | -2/+13 | |
| | | | | additional NULL. (GH-31933) | |||||
* | bpo-46841: Fix error message hacks in `GET_AWAITABLE` (GH-31664) | Brandt Bucher | 2022-03-04 | 1 | -6/+6 | |
| | ||||||
* | bpo-46831: Update __build_class__ comment (#31522) | Shantanu | 2022-03-03 | 1 | -3/+2 | |
| | | | Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com> | |||||
* | compiler: Merge except_table and cnotab (GH-31614) | Inada Naoki | 2022-03-01 | 1 | -0/+6 | |
| | ||||||
* | bpo-46841: Move the cache for `LOAD_GLOBAL` inline. (GH-31575) | Mark Shannon | 2022-02-28 | 1 | -2/+2 | |
| | ||||||
* | bpo-46808: remove NEXT_BLOCK() from compile.c (GH-31448) | Irit Katriel | 2022-02-25 | 1 | -63/+72 | |
| | ||||||
* | bpo-46841: Use *inline* caching for `BINARY_OP` (GH-31543) | Brandt Bucher | 2022-02-25 | 1 | -11/+47 | |
| | ||||||
* | bpo-46765: Replace Locally Cached Strings with Statically Initialized ↵ | Eric Snow | 2022-02-23 | 1 | -31/+7 | |
| | | | | | Objects (gh-31366) https://bugs.python.org/issue46765 |