Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | gh-114058: More robust method handling in redundancy eliminator (GH-115779) | Ken Jin | 2024-02-23 | 1 | -0/+1 |
| | |||||
* | GH-115651: Convert `LOAD_MODULE_ATTR` into `LOAD_INLINE_CONST` when the ↵ | Mark Shannon | 2024-02-22 | 1 | -24/+44 |
| | | | | module is itself a constant. (GH-115711) | ||||
* | Delete unused sym_clear_flag function. (#115744) | Benjamin Peterson | 2024-02-21 | 1 | -6/+0 |
| | |||||
* | Tier 2 cleanups and tweaks (#115534) | Guido van Rossum | 2024-02-20 | 1 | -1/+2 |
| | | | | | | | | | * Rename `_testinternalcapi.get_{uop,counter}_optimizer` to `new_*_optimizer` * Use `_PyUOpName()` instead of` _PyOpcode_uop_name[]` * Add `target` to executor iterator items -- `list(ex)` now returns `(opcode, oparg, target, operand)` quadruples * Add executor methods `get_opcode()` and `get_oparg()` to get `vmdata.opcode`, `vmdata.oparg` * Define a helper for printing uops, and unify various places where they are printed * Add a hack to summarize_stats.py to fix legacy uop names (e.g. `POP_TOP` -> `_POP_TOP`) * Define helpers in `test_opt.py` for accessing the set or list of opnames of an executor | ||||
* | gh-115480: Minor fixups in int constant propagation (GH-115507) | Ken Jin | 2024-02-16 | 1 | -8/+9 |
| | |||||
* | gh-115480: Type and constant propagation for int BINARY_OPs (GH-115478) | Ken Jin | 2024-02-15 | 1 | -0/+12 |
| | |||||
* | GH-113710: Improve `_SET_IP` and `_CHECK_VALIDITY` (GH-115248) | Mark Shannon | 2024-02-13 | 1 | -24/+51 |
| | |||||
* | gh-114058: Foundations of the Tier2 redundancy eliminator (GH-115085) | Ken Jin | 2024-02-13 | 1 | -44/+511 |
| | | | | | | | --------- Co-authored-by: Mark Shannon <9448417+markshannon@users.noreply.github.com> Co-authored-by: Jules <57632293+JuliaPoo@users.noreply.github.com> Co-authored-by: Guido van Rossum <gvanrossum@users.noreply.github.com> | ||||
* | GH-113710: Fix updating of dict version tag and add watched dict stats ↵ | Mark Shannon | 2024-02-12 | 1 | -19/+12 |
| | | | | (GH-115221) | ||||
* | GH-113710: Add a "globals to constants" pass (GH-114592) | Mark Shannon | 2024-02-02 | 1 | -7/+223 |
| | | | Converts specializations of `LOAD_GLOBAL` into constants during tier 2 optimization. | ||||
* | GH-113710: Add a tier 2 peephole optimization pass. (GH-114487) | Mark Shannon | 2024-01-24 | 1 | -0/+34 |
| | | | | | * Convert _LOAD_CONST to inline versions * Remove PEP 523 checks | ||||
* | GH-113860: Get rid of `_PyUOpExecutorObject` (GH-113954) | Brandt Bucher | 2024-01-12 | 1 | -1/+0 |
| | |||||
* | GH-113657: Add back missing _SET_IP uops in tier two (GH-113662) | Brandt Bucher | 2024-01-02 | 1 | -2/+3 |
| | |||||
* | A smattering of cleanups in uop debug output and lltrace (#112980) | Guido van Rossum | 2023-12-12 | 1 | -1/+0 |
| | | | | | | * Include destination T1 opcode in Error debug message * Include destination T1 opcode in DEOPT debug message * Remove obsolete comment from remove_unneeded_uops * Change lltrace_instruction() to print caller's opcode/oparg | ||||
* | GH-111848: Set the IP when de-optimizing (GH-112065) | Mark Shannon | 2023-11-15 | 1 | -12/+10 |
| | | | | | | | | | | | | * Replace jumps with deopts in tier 2 * Fewer special cases of uop names * Add target field to uop IR * Remove more redundant SET_IP and _CHECK_VALIDITY micro-ops * Extend whitelist of non-escaping API functions. | ||||
* | GH-109369: Exit tier 2 if executor is invalid (GH-111657) | Mark Shannon | 2023-11-09 | 1 | -1/+14 |
| | |||||
* | GH-111646: Simplify optimizer, by compacting uops when making executor. ↵ | Mark Shannon | 2023-11-06 | 1 | -3/+32 |
| | | | | (GH-111647) | ||||
* | gh-105481: remove regen-opcode. Generated _PyOpcode_Caches in regen-cases. ↵ | Irit Katriel | 2023-08-23 | 1 | -1/+0 |
| | | | | (#108367) | ||||
* | gh-107557: Setup abstract interpretation (#107847) | Ken Jin | 2023-08-15 | 1 | -0/+26 |
Co-authored-by: Guido van Rossum <gvanrossum@users.noreply.github.com> Co-authored-by: Jules <57632293+juliapoo@users.noreply.github.com> |