Radislav Chugunov
0d805b998d
gh-108826: Document `dis` module CLI and rename `_test` function to `main` ( #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>
2023-10-10 16:31:28 -06:00
Guido van Rossum
6678ef41d2
Add --inline-caches flag to dis command line ( #110249 )
2023-10-03 00:49:34 +00:00
Corvin
24aa249a66
gh-107932: Fix dis module for bytecode that does not have an associated source line (GH-107988)
2023-08-25 09:31:26 +01:00
Irit Katriel
665a4391e1
gh-105481: generate op IDs from bytecode.c instead of hard coding them in opcode.py ( #107971 )
2023-08-16 22:25:18 +00:00
Brandt Bucher
a9caf9cf90
GH-105848: Simplify the arrangement of CALL's stack (GH-107788)
2023-08-09 18:19:39 +00:00
Irit Katriel
d77d973335
gh-105481: remove dependency of _inline_cache_entries on opname ( #107339 )
2023-07-27 14:15:25 +01:00
Brandt Bucher
214a25dd81
GH-104584: Miscellaneous fixes for -Xuops (GH-106908)
2023-07-20 16:35:39 +00:00
Brandt Bucher
7b2d94d875
GH-106008: Make implicit boolean conversions explicit (GH-106003)
2023-06-29 13:49:54 -07:00
Mark Shannon
1d857da7f0
GH-77273: Better bytecodes for f-strings (GH-6132)
2023-06-14 16:15:08 +01:00
Mark Shannon
09ffa69e2e
GH-105678: Split MAKE_FUNCTION into MAKE_FUNCTION and SET_FUNCTION_ATTRIBUTE (GH-105680)
2023-06-13 09:51:05 +01:00
Tomas R
18d16e93b6
gh-102676: Add more convenience properties to `dis.Instruction` ( #103969 )
...
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.
2023-06-11 08:50:34 -07:00
Mark Shannon
0689340366
GH-105229: Replace some superinstructions with single instruction equivalent. (GH-105230)
2023-06-05 11:07:04 +01:00
Juhi Chandalia
872cbc6132
GH-103963: Make dis display names of args for intrinsics opcodes ( #104029 )
2023-05-02 19:00:17 -07:00
Juhi Chandalia
d45225bd66
GH-99944: Make dis display the value of oparg of KW_NAMES ( #103856 )
...
Co-authored-by: chilaxan <chilaxan@gmail.com>
2023-04-26 19:00:36 +01:00
Carl Meyer
0dc8b50d33
gh-87729: add LOAD_SUPER_ATTR instruction for faster super() ( #103497 )
...
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.
2023-04-24 22:22:14 +00:00
chgnrdv
2b6f5c3483
gh-102114: Make dis print more concise tracebacks for syntax errors in str inputs ( #102115 )
2023-04-15 06:53:31 +01:00
gaogaotiantian
34eb6f7276
gh-103046: Display current line correctly for `dis.disco()` with CACHE entries ( #103047 )
2023-03-27 23:22:06 +01:00
Irit Katriel
e1e9bab006
gh-102778: Add sys.last_exc, deprecate sys.last_type, sys.last_value,sys.last_traceback ( #102779 )
2023-03-18 11:47:11 +00:00
Mark Shannon
160f2fe2b9
GH-87849: Simplify stack effect of SEND and specialize it for generators and coroutines. (GH-101788)
2023-02-13 11:24:55 +00:00
penguin_wwy
753fc8a5d6
gh-101632: Add the new RETURN_CONST opcode ( #101633 )
2023-02-07 22:32:21 +00:00
Mark Shannon
6e4e14d98f
GH-100923: Embed jump mask in `COMPARE_OP` oparg (GH-100924)
2023-01-11 20:40:43 +00:00
Nikita Sobolev
e0b4d966a8
Remove unused variable from `dis._find_imports` ( #100396 )
2022-12-21 22:25:02 +05:30
Brandt Bucher
c7f5708714
GH-98686: Get rid of "adaptive" and "quick" instructions (GH-99182)
2022-11-09 10:50:09 -08:00
Pablo Galindo Salgado
c26500224f
bpo-40222: Mark exception table function in the dis module as private ( #95961 )
2022-08-14 15:42:31 +01:00
Irit Katriel
c57aad777a
gh-94216: add pseudo instructions to the dis/opcodes modules (GH-94241)
2022-07-01 15:33:35 +01:00
Dennis Sweeney
5fcfdd87c9
GH-91432: Specialize FOR_ITER (GH-91713)
...
* Adds FOR_ITER_LIST and FOR_ITER_RANGE specializations.
* Adds _PyLong_AssignValue() internal function to avoid temporary boxing of ints.
2022-06-21 11:19:26 +01:00
Brandt Bucher
f8e576be0a
GH-91389: Fix dis position information for CACHEs (GH-93663)
2022-06-16 13:49:32 -07:00
Ken Jin
b083450f88
GH-93429: Merge `LOAD_METHOD` back into `LOAD_ATTR` (GH-93430)
2022-06-14 11:36:22 +01:00
Dong-hee Na
b013804134
gh-92932: dis._unpack_opargs should handle EXTENDED_ARG_QUICK (gh-92945)
2022-06-03 11:29:27 +09:00
Brandt Bucher
3f61db4756
gh-90997: Move `CACHE` handling into `_unpack_opargs` ( #92409 )
...
* Move CACHE handling into _unpack_opargs
* Remove auto-added import
* blurb add
2022-05-06 18:57:08 +01:00
Brandt Bucher
93a666b5a5
gh-90997: Show cached inline values in `dis` output ( #92360 )
2022-05-06 15:18:09 +01:00
Irit Katriel
84b986ba10
gh-91276: revert the increase of dis output width (GH-92126)
2022-05-02 16:51:17 +01:00
penguin_wwy
e590379197
gh-90997: bpo-46841: Disassembly of quickened code (GH-32099)
2022-04-19 09:45:08 +01:00
Irit Katriel
e44f988b26
gh-91276: make space for longer opcodes in dis output (GH-91444)
2022-04-12 14:35:56 +01:00
Irit Katriel
dd207a6ac5
bpo-47120: make POP_JUMP_IF_TRUE/FALSE/NONE/NOT_NONE relative (GH-32400)
2022-04-11 10:40:24 +01:00
Irit Katriel
a00518d9ad
bpo-47120: Replace the JUMP_ABSOLUTE opcode by the relative JUMP_BACKWARD (GH-32115)
2022-03-31 14:14:15 +01:00
Mark Shannon
3011a097bd
Use low bit of LOAD_GLOBAL's oparg to indicate whether it should push an additional NULL. (GH-31933)
2022-03-17 16:14:57 +00:00
Brandt Bucher
0f41aac109
bpo-46841: Use *inline* caching for `BINARY_OP` (GH-31543)
2022-02-25 12:11:34 +00:00
Saul Shanabrook
c3ce7781e3
bpo-46724: Fix dis support for overflow args (GH-31285)
2022-02-18 09:56:23 +00:00
Nikita Sobolev
58f3d98098
bpo-46422: use `dis.Positions` in `dis.Instruction` (GH-30716)
...
Co-authored-by: Batuhan Taskaya <isidentical@gmail.com>
2022-01-24 14:09:20 +03:00
Brandt Bucher
9178f533ff
bpo-45636: Merge all numeric operators (GH-29482)
2021-11-10 22:56:22 -08:00
Irit Katriel
cb414cf0e2
bpo-45757: Fix bug where dis produced an incorrect oparg on EXTENDED_ARG before a no-arg opcode (GH-29480)
2021-11-09 20:07:38 +00:00
Irit Katriel
40d2ac92f9
bpo-45152: refactor the dis module to make handling of hasconst opcodes more generic (GH-28258)
2021-09-15 10:14:15 +01:00
Irit Katriel
c99fc4e53a
bpo-45168: change dis output to omit missing values rather than replacing them by their index (GH-28313)
2021-09-14 10:09:05 +01:00
Irit Katriel
04676b6946
bpo-45017: move opcode-related logic from modulefinder to dis (GH-28246)
2021-09-09 14:04:12 +01:00
Batuhan Taskaya
85ea2d6165
bpo-43950: support positions for dis.Instructions created through dis.Bytecode (GH-28142)
2021-09-03 18:29:09 +03:00
Batuhan Taskaya
693cec0e2d
bpo-43950: include position in dis.Instruction (GH-27015)
...
Automerge-Triggered-By: GH:isidentical
2021-07-04 12:05:05 -07:00
Eric Snow
2ab27c4af4
bpo-43693: Un-revert commits 2c1e258
and b2bf2bc
. (gh-26577)
...
These were reverted in gh-26530 (commit 17c4edc
) due to refleaks.
* 2c1e258
- Compute deref offsets in compiler (gh-25152)
* b2bf2bc
- Add new internal code objects fields: co_fastlocalnames and co_fastlocalkinds. (gh-26388)
This change fixes the refleaks.
https://bugs.python.org/issue43693
2021-06-07 12:22:26 -06:00
Pablo Galindo
17c4edc4e0
bpo-43693: Revert commits 2c1e2583fd
and b2bf2bc1ec
(GH-26530)
...
* Revert "bpo-43693: Compute deref offsets in compiler (gh-25152)"
This reverts commit b2bf2bc1ec
.
* Revert "bpo-43693: Add new internal code objects fields: co_fastlocalnames and co_fastlocalkinds. (gh-26388)"
This reverts commit 2c1e2583fd
.
These two commits are breaking the refleak buildbots.
2021-06-04 17:51:05 +01:00
Mark Shannon
b2bf2bc1ec
bpo-43693: Compute deref offsets in compiler (gh-25152)
...
Merges locals and cells into a single array.
Saves a pointer in the interpreter and means that we don't need the LOAD_CLOSURE opcode any more
https://bugs.python.org/issue43693
2021-06-03 18:03:54 -06:00