name_op(l, "LOAD_NAME", 101, 0, 1) # Operand is in name list varargs_op(l, "BUILD_TUPLE", 102, -1, 1) # TOS is number of tuple items varargs_op(l, "BUILD_LIST", 103, -1, 1) # TOS is number of list items varargs_op(l, "BUILD_MAP", 104, 0, 1) # TOS is number of kwarg items. Always zero for now name_op(l, "LOAD_ATTR", 105, 1, 1) # Operand is in name list compare_op(l, "COMPARE_OP", 106, 2, 1) # Comparison operator name_op(l, "IMPORT_NAME", 107, 2, 2) # Imports TOS and TOS1; module pushed name_op(l, "IMPORT_FROM", 108, 0, 1) # Operand is in name list jrel_op(l, "JUMP_FORWARD", 110, 0, 0, fallthrough=False) # Number of bytes to skip jrel_op(l, "JUMP_IF_FALSE", 111, 1, 1, True) # "" jrel_op(l, "JUMP_IF_TRUE", 112, 1, 1, True) # "" jabs_op(l, "JUMP_ABSOLUTE", 113, 0, 0, fallthrough=False) # Target byte offset from beginning of code name_op(l, "LOAD_GLOBAL", 116, 0, 1) # Operand is in name list jabs_op(l, "CONTINUE_LOOP", 119, 0, 0, fallthrough=False) # Target address jrel_op(l, "SETUP_LOOP", 120, 0, 0, conditional=True) # Distance to target address jrel_op(l, "SETUP_EXCEPT", 121, 0, 3, conditional=True) # "" jrel_op(l, "SETUP_FINALLY", 122, 0, 3, conditional=True) # "" local_op(l, "LOAD_FAST", 124, 0, 1) # Local variable number store_op(l, "STORE_FAST", 125, 1, 0, is_type="local") # Local variable number local_op(l, "DELETE_FAST", 126, 0, 0) # Local variable number is in operand nargs_op(l, "RAISE_VARARGS", 130, -1, 2, fallthrough=False) # Number of raise arguments (1, 2, or 3)
rm_op(l, "IMPORT_FROM", 108) rm_op(l, "JUMP_IF_FALSE", 111) rm_op(l, "EXTENDED_ARG", 143) rm_op(l, "JUMP_IF_TRUE", 112) def_op(l, "LIST_APPEND", 94, 2, 1) # Calls list.append(TOS[-i], TOS). # Used to implement list comprehensions. def_op(l, "BUILD_SET", 104) # Number of set items def_op(l, "BUILD_MAP", 105) name_op(l, "LOAD_ATTR", 106) compare_op(l, "COMPARE_OP", 107) name_op(l, "IMPORT_NAME", 108, 2, 1) # Index in name list name_op(l, "IMPORT_FROM", 109, 0, 1) jabs_op(l, "JUMP_IF_FALSE_OR_POP", 111) # Target byte offset from beginning of code jabs_op(l, "JUMP_IF_TRUE_OR_POP", 112) # "" jabs_op(l, "POP_JUMP_IF_FALSE", 114) # "" jabs_op(l, "POP_JUMP_IF_TRUE", 115) # "" jrel_op(l, "SETUP_WITH", 143, 0, 2) def_op(l, "EXTENDED_ARG", 145) def_op(l, "SET_ADD", 146, 1, 0) # Calls set.add(TOS1[-i], TOS). # Used to implement set comprehensions. def_op(l, "MAP_ADD", 147, 2, 1) # Calls dict.setitem(TOS1[-i], TOS, TOS1) # Used to implement dict comprehensions. update_pj3(globals(), l) opcode_arg_fmt = { "EXTENDED_ARG": format_extended_arg,
def_op(l, 'DUP_TOPX', 99, 1, -1) # number of items to duplicate const_op(l, 'LOAD_CONST', 100, 0, 1) # Operand is in const list name_op(l, 'LOAD_NAME', 101, 0, 1) # Operand is in name list varargs_op(l, 'BUILD_TUPLE', 102, -1, 1) # Number of tuple items varargs_op(l, 'BUILD_LIST', 103, -1, 1) # Number of list items varargs_op(l, 'BUILD_MAP', 104, -1, 1) # Always zero for now name_op(l, 'LOAD_ATTR', 105, 1, 1) # Operand is in name list compare_op(l, 'COMPARE_OP', 106, 2, 1) # Comparison operator name_op(l, 'IMPORT_NAME', 107, 2, 1) # Operand is in name list name_op(l, 'IMPORT_FROM', 108, 0, 1) # Operand is in name list jrel_op(l, 'JUMP_FORWARD', 110, 0, 0) # Number of bytes to skip jrel_op(l, 'JUMP_IF_FALSE', 111, 1, 1) # "" jrel_op(l, 'JUMP_IF_TRUE', 112, 1, 1) # "" jabs_op(l, 'JUMP_ABSOLUTE', 113, 0, 0) # Target byte offset from beginning of code name_op(l, 'LOAD_GLOBAL', 116, 0, 1) # Operand is in name list jabs_op(l, 'CONTINUE_LOOP', 119, 0, 0) # Target address jrel_op(l, 'SETUP_LOOP', 120, 0, 0) # Distance to target address jrel_op(l, 'SETUP_EXCEPT', 121, 0, 0) # "" jrel_op(l, 'SETUP_FINALLY', 122, 0, 0) # "" local_op(l, 'LOAD_FAST', 124, 0, 1) # Local variable number local_op(l, 'STORE_FAST', 125, 1, 0) # Local variable number local_op(l, 'DELETE_FAST', 126) # Local variable number def_op(l, 'RAISE_VARARGS', 130, -1, 0) # Number of raise arguments (1, 2, or 3) nargs_op(l, 'CALL_FUNCTION', 131, -1, 1) # #args + (#kwargs << 8)
const_op(l, "LOAD_CONST", 100, 0, 1) # Operand is in const list name_op(l, "LOAD_NAME", 101, 0, 1) # Operand is in name list varargs_op(l, "BUILD_TUPLE", 102, -1, 1) # Number of tuple items varargs_op(l, "BUILD_LIST", 103, -1, 1) # Number of list items varargs_op(l, "BUILD_MAP", 104, -1, 1) # Always zero for now name_op(l, "LOAD_ATTR", 105, 1, 1) # Operand is in name list compare_op(l, "COMPARE_OP", 106, 2, 1) # Comparison operator name_op(l, "IMPORT_NAME", 107, 2, 1) # Operand is in name list name_op(l, "IMPORT_FROM", 108, 0, 1) # Operand is in name list jrel_op(l, "JUMP_FORWARD", 110, 0, 0, fallthrough=False) # Number of bytes to skip jrel_op(l, "JUMP_IF_FALSE", 111, 1, 1, True) # "" jrel_op(l, "JUMP_IF_TRUE", 112, 1, 1, True) # "" jabs_op(l, "JUMP_ABSOLUTE", 113, 0, 0, fallthrough=False) # Target byte offset from beginning of code def_op(l, "FOR_LOOP", 114) # Number of bytes to skip name_op(l, "LOAD_GLOBAL", 116, 0, 1) # Operand is in name list jrel_op(l, "SETUP_LOOP", 120, 0, 0, conditional=True) # Distance to target address jrel_op(l, "SETUP_EXCEPT", 121, 0, 0) # "" jrel_op(l, "SETUP_FINALLY", 122, 0, 0) # "" local_op(l, "LOAD_FAST", 124, 0, 1) # Local variable number store_op(l, "STORE_FAST", 125, 1, 0, is_type="local") # Local variable number local_op(l, "DELETE_FAST", 126) # Local variable number def_op(l, "SET_LINENO", 127) # Current line number
# Python 2's DUP_TOPX is gone starting in Python 3.2 const_op(l, 'LOAD_CONST', 100, 0, 1) # Operand is in const list name_op(l, 'LOAD_NAME', 101, 0, 1) # Operand is in name list varargs_op(l, 'BUILD_TUPLE', 102, -1, 1) # TOS is count of tuple items varargs_op(l, 'BUILD_LIST', 103, -1, 1) # TOS is count of list items varargs_op(l, 'BUILD_SET', 104, -1, 1) # TOS is count of set items def_op(l, 'BUILD_MAP', 105, 0, 1) # argument is dictionary count to be pushed name_op(l, 'LOAD_ATTR', 106, 1, 1) # Operand is in name list compare_op(l, 'COMPARE_OP', 107, 2, 1) # Comparison operator name_op(l, 'IMPORT_NAME', 108, 2, 1) # Imports TOS and TOS1; module pushed name_op(l, 'IMPORT_FROM', 109, 0, 1) # Operand is in name list jrel_op(l, 'JUMP_FORWARD', 110, 0, 0, fallthrough=False) # Number of bytes to skip jabs_op(l, 'JUMP_IF_FALSE_OR_POP', 111, conditional=True) # Target byte offset from beginning of code jabs_op(l, 'JUMP_IF_TRUE_OR_POP', 112, conditional=True) # "" jabs_op(l, 'JUMP_ABSOLUTE', 113, 0, 0, fallthrough=False) # Target byte offset from beginning of code jabs_op(l, 'POP_JUMP_IF_FALSE', 114, 2, 1, conditional=True) # "" jabs_op(l, 'POP_JUMP_IF_TRUE', 115, 2, 1, conditional=True) # "" name_op(l, 'LOAD_GLOBAL', 116, 0, 1) # Operand is in name list jabs_op(l, 'CONTINUE_LOOP', 119, 0, 0, fallthrough=False) # Target address jrel_op(l, 'SETUP_LOOP', 120, 0, 0, conditional=True) # Distance to target address jrel_op(l, 'SETUP_EXCEPT', 121, 0, 6, conditional=True) # "" jrel_op(l, 'SETUP_FINALLY', 122, 0, 6, conditional=True) # "" local_op(l, 'LOAD_FAST', 124, 0, 1) # Local variable number
name_op(l, 'LOAD_NAME', 101, 0, 1) # Operand is in name list varargs_op(l, 'BUILD_TUPLE', 102, 9, 1) # TOS is number of tuple items varargs_op(l, 'BUILD_LIST', 103, 9, 1) # TOS is number of list items varargs_op(l, 'BUILD_MAP', 104, 0, 1) # TOS is number of kwark items. Always zero for now name_op(l, 'LOAD_ATTR', 105, 1, 1) # Operand is in name list compare_op(l, 'COMPARE_OP', 106, 2, 1) # Comparison operator name_op(l, 'IMPORT_NAME', 107, 2, 1) # Operand is in name list name_op(l, 'IMPORT_FROM', 108, 0, 1) # Operand is in name list jrel_op(l, 'JUMP_FORWARD', 110, 0, 0, fallthrough=False) # Number of bytes to skip jrel_op(l, 'JUMP_IF_FALSE', 111, 1, 1, True) # "" jrel_op(l, 'JUMP_IF_TRUE', 112, 1, 1, True) # "" jabs_op(l, 'JUMP_ABSOLUTE', 113, 0, 0, fallthrough=False) # Target byte offset from beginning of code name_op(l, 'LOAD_GLOBAL', 116, 0, 1) # Operand is in name list jabs_op(l, 'CONTINUE_LOOP', 119, 0, 0, fallthrough=False) # Target address jrel_op(l, 'SETUP_LOOP', 120, 0, 0, conditional=True) # Distance to target address jrel_op(l, 'SETUP_EXCEPT', 121, 0, 6, conditional=True) # "" jrel_op(l, 'SETUP_FINALLY', 122, 0, 7, conditional=True) # "" local_op(l, 'LOAD_FAST', 124, 0, 1) # Local variable number local_op(l, 'STORE_FAST', 125, 1, 0) # Local variable number local_op(l, 'DELETE_FAST', 126) # Local variable number def_op(l, 'RAISE_VARARGS', 130, -1, 0, fallthrough=False) # Number of raise arguments (1, 2, or 3)
const_op(l, "LOAD_CONST", 100, 0, 1) # Operand is in const list name_op(l, "LOAD_NAME", 101, 0, 1) # Operand is in name list varargs_op(l, "BUILD_TUPLE", 102, -1, 1) # Number of tuple items varargs_op(l, "BUILD_LIST", 103, -1, 1) # Number of list items varargs_op(l, "BUILD_MAP", 104, -1, 1) # Always zero for now name_op(l, "LOAD_ATTR", 105, 1, 1) # Operand is in name list compare_op(l, "COMPARE_OP", 106, 2, 1) # Comparison operator name_op(l, "IMPORT_NAME", 107, 2, 1) # Operand is in name list name_op(l, "IMPORT_FROM", 108, 0, 1) # Operand is in name list jrel_op(l, "JUMP_FORWARD", 110, 0, 0) # Number of bytes to skip jrel_op(l, "JUMP_IF_FALSE", 111, 1, 1, True) # "" jrel_op(l, "JUMP_IF_TRUE", 112, 1, 1, True) # "" jabs_op(l, "JUMP_ABSOLUTE", 113, 0, 0) # Target byte offset from beginning of code def_op(l, "FOR_LOOP", 114) # Number of bytes to skip name_op(l, "LOAD_GLOBAL", 116, 0, 1) # Operand is in name list jrel_op(l, "SETUP_LOOP", 120, 0, 0, conditional=True) # Distance to target address jrel_op(l, "SETUP_EXCEPT", 121, 0, 0) # "" jrel_op(l, "SETUP_FINALLY", 122, 0, 0) # "" local_op(l, "LOAD_FAST", 124, 0, 1) # Local variable number local_op(l, "STORE_FAST", 125, 1, 0) # Local variable number local_op(l, "DELETE_FAST", 126) # Local variable number def_op(l, "SET_LINENO", 127) # Current line number
rm_op(l, "BUILD_TUPLE_UNPACK_WITH_CALL", 158) rm_op(l, "CALL_FINALLY", 162) rm_op(l, "POP_FINALLY", 163) # These are new since Python 3.9 # OP NAME OPCODE POP PUSH #------------------------------------------------ def_op(l, 'RERAISE', 48, 3, 0) def_op(l, 'WITH_EXCEPT_START', 49, 0, 1) def_op(l, 'LOAD_ASSERTION_ERROR', 74, 0, 1) def_op(l, 'LIST_TO_TUPLE', 82, 1, 1) def_op(l, 'IS_OP', 117, 2, 1) jabs_op(l, 'JUMP_IF_NOT_EXC_MATCH', 121, 2, 0) def_op(l, 'CONTAINS_OP', 118, 2, 1) def_op(l, 'LIST_EXTEND', 162, 2, 1) def_op(l, 'SET_UPDATE', 163, 2, 1) def_op(l, 'DICT_MERGE', 164, 2, 1) def_op(l, 'DICT_UPDATE', 165, 2, 1) format_value_flags = opcode_38.format_value_flags opcode_arg_fmt = { "BUILD_MAP_UNPACK_WITH_CALL": format_BUILD_MAP_UNPACK_WITH_CALL, "CALL_FUNCTION_EX": format_CALL_FUNCTION_EX, "CALL_FUNCTION_KW": format_CALL_FUNCTION_KW, 'EXTENDED_ARG': format_extended_arg36, 'FORMAT_VALUE': format_value_flags, 'MAKE_FUNCTION': format_MAKE_FUNCTION_flags,
const_op(l, 'LOAD_CONST', 100, 0, 1) # Operand is in const list name_op(l, 'LOAD_NAME', 101, 0, 1) # Operand is in name list varargs_op(l, 'BUILD_TUPLE', 102, -1, 1) # Number of tuple items varargs_op(l, 'BUILD_LIST', 103, -1, 1) # Number of list items varargs_op(l, 'BUILD_MAP', 104, -1, 1) # Always zero for now name_op(l, 'LOAD_ATTR', 105, 1, 1) # Operand is in name list compare_op(l, 'COMPARE_OP', 106, 2, 1) # Comparison operator name_op(l, 'IMPORT_NAME', 107, 2, 1) # Operand is in name list name_op(l, 'IMPORT_FROM', 108, 0, 1) # Operand is in name list jrel_op(l, 'JUMP_FORWARD', 110, 0, 0) # Number of bytes to skip jrel_op(l, 'JUMP_IF_FALSE', 111, 1, 1) # "" jrel_op(l, 'JUMP_IF_TRUE', 112, 1, 1) # "" jabs_op(l, 'JUMP_ABSOLUTE', 113, 0, 0) # Target byte offset from beginning of code def_op(l, 'FOR_LOOP', 114) # Number of bytes to skip name_op(l, 'LOAD_GLOBAL', 116, 0, 1) # Operand is in name list jrel_op(l, 'SETUP_LOOP', 120, 0, 0) # Distance to target address jrel_op(l, 'SETUP_EXCEPT', 121, 0, 0) # "" jrel_op(l, 'SETUP_FINALLY', 122, 0, 0) # "" local_op(l, 'LOAD_FAST', 124, 0, 1) # Local variable number local_op(l, 'STORE_FAST', 125, 1, 0) # Local variable number local_op(l, 'DELETE_FAST', 126) # Local variable number def_op(l, 'SET_LINENO', 127) # Current line number def_op(l, 'RAISE_VARARGS', 130, -1, 0) # Number of raise arguments (1, 2, or 3)
rm_op(l, 'IMPORT_FROM', 108) rm_op(l, 'JUMP_IF_FALSE', 111) rm_op(l, 'EXTENDED_ARG', 143) rm_op(l, 'JUMP_IF_TRUE', 112) def_op(l, 'LIST_APPEND', 94, 2, 1) # Calls list.append(TOS[-i], TOS). # Used to implement list comprehensions. def_op(l, 'BUILD_SET', 104) # Number of set items def_op(l, 'BUILD_MAP', 105) name_op(l, 'LOAD_ATTR', 106) compare_op(l, 'COMPARE_OP', 107) name_op(l, 'IMPORT_NAME', 108, 2, 1) # Index in name list name_op(l, 'IMPORT_FROM', 109, 0, 1) jabs_op(l, 'JUMP_IF_FALSE_OR_POP', 111) # Target byte offset from beginning of code jabs_op(l, 'JUMP_IF_TRUE_OR_POP', 112) # "" jabs_op(l, 'POP_JUMP_IF_FALSE', 114) # "" jabs_op(l, 'POP_JUMP_IF_TRUE', 115) # "" jrel_op(l, 'SETUP_WITH', 143, 0, 2) def_op(l, 'EXTENDED_ARG', 145) def_op(l, 'SET_ADD', 146, 1, 0) # Calls set.add(TOS1[-i], TOS). # Used to implement set comprehensions. def_op(l, 'MAP_ADD', 147, 2, 1) # Calls dict.setitem(TOS1[-i], TOS, TOS1) # Used to implement dict comprehensions. update_pj3(globals(), l) opcode_arg_fmt = { 'EXTENDED_ARG': format_extended_arg,
def_op(l, "END_FINALLY", 88, 3, 0) jrel_op(l, "SETUP_EXCEPT", 121, 0, 0, conditional=True) # "" jrel_op(l, "SETUP_FINALLY", 122, 0, 0, conditional=True) # "" def_op(l, "LIST_APPEND", 94, 2, 1) # Calls list.append(TOS[-i], TOS). # Used to implement list comprehensions. varargs_op(l, 'BUILD_SET', 104, -1, 1) # TOS is count of set items def_op(l, "BUILD_MAP", 105, 0, 1) # count is in argument name_op(l, "LOAD_ATTR", 106, 1, 1) # Operand is in name list compare_op(l, "COMPARE_OP", 107) name_op(l, "IMPORT_NAME", 108, 2, 1) # Index in name list name_op(l, "IMPORT_FROM", 109, 0, 1) jabs_op(l, "JUMP_IF_FALSE_OR_POP", 111) # Target byte offset from beginning of code jabs_op(l, "JUMP_IF_TRUE_OR_POP", 112) # "" jabs_op(l, "POP_JUMP_IF_FALSE", 114, 2, 1, conditional=True) # "" jabs_op(l, "POP_JUMP_IF_TRUE", 115, 2, 1, conditional=True) # "" jrel_op(l, "SETUP_WITH", 143, 0, 4) def_op(l, "EXTENDED_ARG", 145) def_op(l, "SET_ADD", 146, 1, 0) # Calls set.add(TOS1[-i], TOS). # Used to implement set comprehensions. def_op(l, "MAP_ADD", 147, 3, 1) # Calls dict.setitem(TOS1[-i], TOS, TOS1) # Used to implement dict comprehensions. update_pj3(globals(), l) opcode_arg_fmt = { "MAKE_FUNCTION": format_MAKE_FUNCTION_default_argc,
# Python 2's DUP_TOPX is gone starting in Python 3.2 const_op(l, 'LOAD_CONST', 100, 0, 1) # Operand is in const list name_op(l, 'LOAD_NAME', 101, 0, 1) # Operand is in name list varargs_op(l, 'BUILD_TUPLE', 102, 9, 1) # TOS is count of tuple items varargs_op(l, 'BUILD_LIST', 103, 9, 1) # TOS is count of list items varargs_op(l, 'BUILD_SET', 104, 9, 1) # TOS is count of set items varargs_op(l, 'BUILD_MAP', 105, 0, 1) # TOS is count of kwarg items name_op(l, 'LOAD_ATTR', 106, 1, 1) # Operand is in name list compare_op(l, 'COMPARE_OP', 107, 2, 1) # Comparison operator name_op(l, 'IMPORT_NAME', 108, 1, 1) # Operand is in name list name_op(l, 'IMPORT_FROM', 109, 0, 1) # Operand is in name list jrel_op(l, 'JUMP_FORWARD', 110, 0, 0) # Number of bytes to skip jabs_op(l, 'JUMP_IF_FALSE_OR_POP', 111, conditional=True) # Target byte offset from beginning of code jabs_op(l, 'JUMP_IF_TRUE_OR_POP', 112, conditional=True) # "" jabs_op(l, 'JUMP_ABSOLUTE', 113, 0, 0) # Target byte offset from beginning of code jabs_op(l, 'POP_JUMP_IF_FALSE', 114, 9, 1, conditional=True) # "" jabs_op(l, 'POP_JUMP_IF_TRUE', 115, 9, 1, conditional=True) # "" name_op(l, 'LOAD_GLOBAL', 116, 0, 1) # Operand is in name list jabs_op(l, 'CONTINUE_LOOP', 119, 0, 0) # Target address jrel_op(l, 'SETUP_LOOP', 120, 0, 0, conditional=True) # Distance to target address jrel_op(l, 'SETUP_EXCEPT', 121, 0, 6, conditional=True) # "" jrel_op(l, 'SETUP_FINALLY', 122, 0, 6, conditional=True) # "" local_op(l, 'LOAD_FAST', 124, 0, 1) # Local variable number local_op(l, 'STORE_FAST', 125, 1, 0) # Local variable number local_op(l, 'DELETE_FAST', 126, 0, 0) # Local variable number
# Python 2's DUP_TOPX is gone starting in Python 3.2 const_op(l, 'LOAD_CONST', 100, 0, 1) # Operand is in const list name_op(l, 'LOAD_NAME', 101, 0, 1) # Operand is in name list varargs_op(l, 'BUILD_TUPLE', 102, -1, 1) # TOS is count of tuple items varargs_op(l, 'BUILD_LIST', 103, -1, 1) # TOS is count of list items varargs_op(l, 'BUILD_SET', 104, -1, 1) # TOS is count of set items varargs_op(l, 'BUILD_MAP', 105, -1, 1) # TOS is count of kwarg items name_op(l, 'LOAD_ATTR', 106, 1, 1) # Operand is in name list compare_op(l, 'COMPARE_OP', 107, 2, 1) # Comparison operator name_op(l, 'IMPORT_NAME', 108, 1, 1) # Operand is in name list name_op(l, 'IMPORT_FROM', 109, 0, 1) # Operand is in name list jrel_op(l, 'JUMP_FORWARD', 110, 0, 0) # Number of bytes to skip jabs_op(l, 'JUMP_IF_FALSE_OR_POP', 111) # Target byte offset from beginning of code jabs_op(l, 'JUMP_IF_TRUE_OR_POP', 112) # "" jabs_op(l, 'JUMP_ABSOLUTE', 113, 0, 0) # Target byte offset from beginning of code jabs_op(l, 'POP_JUMP_IF_FALSE', 114) # "" jabs_op(l, 'POP_JUMP_IF_TRUE', 115) # "" name_op(l, 'LOAD_GLOBAL', 116, 0, 1) # Operand is in name list jabs_op(l, 'CONTINUE_LOOP', 119, 0, 0) # Target address jrel_op(l, 'SETUP_LOOP', 120, 0, 0) # Distance to target address jrel_op(l, 'SETUP_EXCEPT', 121, 0, 0) # "" jrel_op(l, 'SETUP_FINALLY', 122, 0, 0) # "" local_op(l, 'LOAD_FAST', 124, 0, 1) # Local variable number local_op(l, 'STORE_FAST', 125, 1, 0) # Local variable number
# Python 2's DUP_TOPX is gone starting in Python 3.2 const_op(l, 'LOAD_CONST', 100, 0, 1) # Operand is in const list name_op(l, 'LOAD_NAME', 101, 0, 1) # Operand is in name list varargs_op(l, 'BUILD_TUPLE', 102, -1, 1) # TOS is count of tuple items varargs_op(l, 'BUILD_LIST', 103, -1, 1) # TOS is count of list items varargs_op(l, 'BUILD_SET', 104, -1, 1) # TOS is count of set items varargs_op(l, 'BUILD_MAP', 105, -1, 1) # TOS is count of kwarg items name_op(l, 'LOAD_ATTR', 106, 1, 1) # Operand is in name list compare_op(l, 'COMPARE_OP', 107, 2, 1) # Comparison operator name_op(l, 'IMPORT_NAME', 108, 1, 1) # Operand is in name list name_op(l, 'IMPORT_FROM', 109, 0, 1) # Operand is in name list jrel_op(l, 'JUMP_FORWARD', 110, 0, 0) # Number of bytes to skip jabs_op(l, 'JUMP_IF_FALSE_OR_POP', 111) # Target byte offset from beginning of code jabs_op(l, 'JUMP_IF_TRUE_OR_POP', 112) # "" jabs_op(l, 'JUMP_ABSOLUTE', 113, 0, 0) # Target byte offset from beginning of code jabs_op(l, 'POP_JUMP_IF_FALSE', 114) # "" jabs_op(l, 'POP_JUMP_IF_TRUE', 115) # "" name_op(l, 'LOAD_GLOBAL', 116, 0, 1) # Operand is in name list jabs_op(l, 'CONTINUE_LOOP', 119, 0, 0) # Target address jrel_op(l, 'SETUP_LOOP', 120, 0, 0) # Distance to target address jrel_op(l, 'SETUP_EXCEPT', 121, 0, 0) # "" jrel_op(l, 'SETUP_FINALLY', 122, 0, 0) # "" local_op(l, 'LOAD_FAST', 124, 0, 1) # Local variable number local_op(l, 'STORE_FAST', 125, 1, 0) # Local variable number local_op(l, 'DELETE_FAST', 126, 0, 0) # Local variable number