From ab61d3f4303d14a413bc9ae6557c730ffdf7579e Mon Sep 17 00:00:00 2001 From: Mark Shannon Date: Mon, 20 Jan 2025 17:09:23 +0000 Subject: GH-128914: Remove conditional stack effects from `bytecodes.c` and the code generators (GH-128918) --- Lib/dis.py | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'Lib/dis.py') 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) -- cgit v1.2.3