aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/Lib/dis.py
diff options
context:
space:
mode:
authorMark Shannon <mark@hotpy.org>2025-01-20 17:09:23 +0000
committerGitHub <noreply@github.com>2025-01-20 17:09:23 +0000
commitab61d3f4303d14a413bc9ae6557c730ffdf7579e (patch)
treeec35e41ce467f4cb281208970cf453a680d82aed /Lib/dis.py
parent0a6412f9cc9e694e76299cfbd73ec969b7d47af6 (diff)
downloadcpython-ab61d3f4303d14a413bc9ae6557c730ffdf7579e.tar.gz
cpython-ab61d3f4303d14a413bc9ae6557c730ffdf7579e.zip
GH-128914: Remove conditional stack effects from `bytecodes.c` and the code generators (GH-128918)
Diffstat (limited to 'Lib/dis.py')
-rw-r--r--Lib/dis.py16
1 files changed, 8 insertions, 8 deletions
diff --git a/Lib/dis.py b/Lib/dis.py
index 109c986bbe3..5a34e228079 100644
--- a/Lib/dis.py
+++ b/Lib/dis.py
@@ -42,7 +42,9 @@ JUMP_BACKWARD = opmap['JUMP_BACKWARD']
FOR_ITER = opmap['FOR_ITER']
SEND = opmap['SEND']
LOAD_ATTR = opmap['LOAD_ATTR']
+LOAD_METHOD = opmap['LOAD_METHOD']
LOAD_SUPER_ATTR = opmap['LOAD_SUPER_ATTR']
+LOAD_SUPER_METHOD = opmap['LOAD_SUPER_METHOD']
CALL_INTRINSIC_1 = opmap['CALL_INTRINSIC_1']
CALL_INTRINSIC_2 = opmap['CALL_INTRINSIC_2']
LOAD_COMMON_CONSTANT = opmap['LOAD_COMMON_CONSTANT']
@@ -580,16 +582,14 @@ class ArgResolver:
argval, argrepr = _get_const_info(deop, arg, self.co_consts)
elif deop in hasname:
if deop == LOAD_GLOBAL:
- argval, argrepr = _get_name_info(arg//2, get_name)
- if (arg & 1) and argrepr:
- argrepr = f"{argrepr} + NULL"
- elif deop == LOAD_ATTR:
- argval, argrepr = _get_name_info(arg//2, get_name)
- if (arg & 1) and argrepr:
+ argval, argrepr = _get_name_info(arg, get_name)
+ elif deop == LOAD_ATTR or deop == LOAD_METHOD:
+ argval, argrepr = _get_name_info(arg, get_name)
+ if deop == LOAD_METHOD and argrepr:
argrepr = f"{argrepr} + NULL|self"
- elif deop == LOAD_SUPER_ATTR:
+ elif deop == LOAD_SUPER_ATTR or deop == LOAD_SUPER_METHOD:
argval, argrepr = _get_name_info(arg//4, get_name)
- if (arg & 1) and argrepr:
+ if deop == LOAD_SUPER_METHOD and argrepr:
argrepr = f"{argrepr} + NULL|self"
else:
argval, argrepr = _get_name_info(arg, get_name)