summaryrefslogtreecommitdiffstats
path: root/Lib/dis.py
Commit message (Collapse)AuthorAgeFilesLines
* gh-127637: add tests for `dis` command-line interface (#127759)Bénédikt Tran2024-12-091-2/+2
|
* gh-127413: allow to show specialized bytecode via `dis` CLI (#127414)Bénédikt Tran2024-12-051-1/+4
|
* gh-126072: do not add `None` to `co_consts` if there is no docstring (GH-126101)Xuanteng Huang2024-10-301-10/+11
|
* GH-125837: Split `LOAD_CONST` into three. (GH-125972)Mark Shannon2024-10-291-4/+6
| | | | | | | | * Add LOAD_CONST_IMMORTAL opcode * Add LOAD_SMALL_INT opcode * Remove RETURN_CONST opcode
* GH-125868: Fix STORE_ATTR_WITH_HINT specialization (GH-125876)Mark Shannon2024-10-241-1/+3
|
* Add "annotate" SET_FUNCTION_ATTRIBUTE bit to dis. (#124566)larryhastings2024-09-261-1/+1
|
* gh-123363: Show string value of CONTAINS_OP oparg in dis (#123387)Alexandr Mitin2024-08-281-0/+3
| | | Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
* gh-123340: Show string value of `IS_OP` oparg in `dis` (#123348)sobolevn2024-08-261-0/+3
|
* gh-123165: make `dis` functions render positions on demand (#123168)Bénédikt Tran2024-08-211-29/+72
|
* gh-120780: Show attribute name for LOAD_SPECIAL in dis output (#120781)Jelle Zijlstra2024-06-201-0/+4
|
* gh-119180: Add LOAD_COMMON_CONSTANT opcode (#119321)Jelle Zijlstra2024-05-221-0/+8
| | | | | | | | | | The PEP 649 implementation will require a way to load NotImplementedError from the bytecode. @markshannon suggested implementing this by converting LOAD_ASSERTION_ERROR into a more general mechanism for loading constants. This PR adds this new opcode. I will work on the rest of the implementation of the PEP separately. Co-authored-by: Irit Katriel <1055913+iritkatriel@users.noreply.github.com>
* gh-118335: Configure Tier 2 interpreter at build time (#118339)Guido van Rossum2024-05-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | The code for Tier 2 is now only compiled when configured with `--enable-experimental-jit[=yes|interpreter]`. We drop support for `PYTHON_UOPS` and -`Xuops`, but you can disable the interpreter or JIT at runtime by setting `PYTHON_JIT=0`. You can also build it without enabling it by default using `--enable-experimental-jit=yes-off`; enable with `PYTHON_JIT=1`. On Windows, the `build.bat` script supports `--experimental-jit`, `--experimental-jit-off`, `--experimental-interpreter`. In the C code, `_Py_JIT` is defined as before when the JIT is enabled; the new variable `_Py_TIER2` is defined when the JIT *or* the interpreter is enabled. It is actually a bitmask: 1: JIT; 2: default-off; 4: interpreter.
* gh-112383: teach dis how to interpret ENTER_EXECUTOR (#117171)Irit Katriel2024-03-231-5/+24
|
* gh-112720: make it easier to subclass and modify dis.ArgResolver's jump arg ↵Irit Katriel2024-02-161-11/+19
| | | | resolution (#115564)
* gh-58032: Do not use argparse.FileType in module CLIs and scripts (GH-113649)Serhiy Storchaka2024-01-101-4/+9
| | | | | Open and close files manually. It prevents from leaking files, preliminary creation of output files, and accidental closing of stdin and stdout.
* gh-112720: Move dis's cache output code to the Formatter, labels lookup to ↵Irit Katriel2023-12-151-77/+91
| | | | the arg_resolver. Reduce the number of parameters passed around. (#113108)
* gh-112962: in dis module, put cache information in the Instruction instead ↵Irit Katriel2023-12-131-30/+43
| | | | of creating fake Instructions to represent it (#113016)
* gh-112720: Move instruction formatting from the dis.Instruction class to a ↵Irit Katriel2023-12-091-201/+221
| | | | new class dis.InstructionFormatter. Add the ArgResolver class. (#112722)
* gh-112620: Fix dis error on show_cache with labels (#112621)Irit Katriel2023-12-031-6/+11
|
* gh-112355: fix calculation of jump target of ENTER_EXECUTOR in dis (#112377)Irit Katriel2023-11-241-1/+6
|
* gh-112137: change dis output to show no-lineno as -- instead of None (#112335)Irit Katriel2023-11-231-1/+2
|
* gh-112137: change dis output to display labels instead of offsets (#112138)Irit Katriel2023-11-221-52/+104
|
* gh-111969: refactor to make it easier to construct a dis.Instruction object ↵Irit Katriel2023-11-121-64/+84
| | | | (#111970)
* gh-108826: Document `dis` module CLI and rename `_test` function to `main` ↵Radislav Chugunov2023-10-101-3/+2
| | | | | | | (#108827) Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com> Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
* Add --inline-caches flag to dis command line (#110249)Guido van Rossum2023-10-031-1/+3
|
* gh-107932: Fix dis module for bytecode that does not have an associated ↵Corvin2023-08-251-16/+37
| | | | source line (GH-107988)
* gh-105481: generate op IDs from bytecode.c instead of hard coding them in ↵Irit Katriel2023-08-161-5/+5
| | | | opcode.py (#107971)
* GH-105848: Simplify the arrangement of CALL's stack (GH-107788)Brandt Bucher2023-08-091-3/+3
|
* gh-105481: remove dependency of _inline_cache_entries on opname (#107339)Irit Katriel2023-07-271-5/+8
|
* GH-104584: Miscellaneous fixes for -Xuops (GH-106908)Brandt Bucher2023-07-201-10/+19
|
* GH-106008: Make implicit boolean conversions explicit (GH-106003)Brandt Bucher2023-06-291-1/+3
|
* GH-77273: Better bytecodes for f-strings (GH-6132)Mark Shannon2023-06-141-14/+5
|
* GH-105678: Split MAKE_FUNCTION into MAKE_FUNCTION and SET_FUNCTION_ATTRIBUTE ↵Mark Shannon2023-06-131-4/+4
| | | | (GH-105680)
* gh-102676: Add more convenience properties to `dis.Instruction` (#103969)Tomas R2023-06-111-20/+90
| | | | | | | | Adds start_offset, cache_offset, end_offset, baseopcode, baseopname, jump_target and oparg to dis.Instruction. Also slightly improves the disassembly output by allowing opnames to overflow into the space reserved for opargs.
* GH-105229: Replace some superinstructions with single instruction ↵Mark Shannon2023-06-051-0/+10
| | | | equivalent. (GH-105230)
* GH-103963: Make dis display names of args for intrinsics opcodes (#104029)Juhi Chandalia2023-05-031-0/+8
|
* GH-99944: Make dis display the value of oparg of KW_NAMES (#103856)Juhi Chandalia2023-04-261-3/+2
| | | | Co-authored-by: chilaxan <chilaxan@gmail.com>
* gh-87729: add LOAD_SUPER_ATTR instruction for faster super() (#103497)Carl Meyer2023-04-241-0/+5
| | | | | This speeds up `super()` (by around 85%, for a simple one-level `super().meth()` microbenchmark) by avoiding allocation of a new single-use `super()` object on each use.
* gh-102114: Make dis print more concise tracebacks for syntax errors in str ↵chgnrdv2023-04-151-3/+3
| | | | inputs (#102115)
* gh-103046: Display current line correctly for `dis.disco()` with CACHE ↵gaogaotiantian2023-03-271-1/+6
| | | | entries (#103047)
* gh-102778: Add sys.last_exc, deprecate sys.last_type, ↵Irit Katriel2023-03-181-1/+4
| | | | sys.last_value,sys.last_traceback (#102779)
* GH-87849: Simplify stack effect of SEND and specialize it for generators and ↵Mark Shannon2023-02-131-4/+5
| | | | coroutines. (GH-101788)
* gh-101632: Add the new RETURN_CONST opcode (#101633)penguin_wwy2023-02-071-1/+2
|
* GH-100923: Embed jump mask in `COMPARE_OP` oparg (GH-100924)Mark Shannon2023-01-111-1/+1
|
* Remove unused variable from `dis._find_imports` (#100396)Nikita Sobolev2022-12-211-1/+0
|
* GH-98686: Get rid of "adaptive" and "quick" instructions (GH-99182)Brandt Bucher2022-11-091-3/+2
|
* bpo-40222: Mark exception table function in the dis module as private (#95961)Pablo Galindo Salgado2022-08-141-8/+8
|
* gh-94216: add pseudo instructions to the dis/opcodes modules (GH-94241)Irit Katriel2022-07-011-1/+1
|
* GH-91432: Specialize FOR_ITER (GH-91713)Dennis Sweeney2022-06-211-3/+9
| | | | | * Adds FOR_ITER_LIST and FOR_ITER_RANGE specializations. * Adds _PyLong_AssignValue() internal function to avoid temporary boxing of ints.
* GH-91389: Fix dis position information for CACHEs (GH-93663)Brandt Bucher2022-06-161-10/+22
|