mirror of
https://github.com/RustPython/RustPython.git
synced 2026-10-28 18:59:04 +08:00
Import final CPython 3.15 opcode and dis metadata
Copied only opcode.py, its _opcode_metadata.py dependency, and dis.py using scripts/update_lib copy-lib from pinned CPython d220409a13b77de7a6c30abe16ea90db01528edc. Local validation stage; Rust prerequisites retain merge-order precedence. Assisted-by: OpenAI Codex:model identifier unavailable
This commit is contained in:
1 parent
6281493ef1
commit
de15dfe13c
3 files changed
+491
-447
No files matched your search
+383
-367
@@ -1,371 +1,387 @@
|
||||
# This file is generated by tools/opcode_metadata/generate_py_opcode_metadata.py
|
||||
# for RustPython bytecode format (CPython 3.14 compatible opcode numbers).
|
||||
# This file is generated by Tools/cases_generator/py_metadata_generator.py
|
||||
# from:
|
||||
# Python/bytecodes.c
|
||||
# Do not edit!
|
||||
_specializations = frozendict(
|
||||
RESUME=(
|
||||
"RESUME_CHECK",
|
||||
"RESUME_CHECK_JIT",
|
||||
),
|
||||
TO_BOOL=(
|
||||
"TO_BOOL_ALWAYS_TRUE",
|
||||
"TO_BOOL_BOOL",
|
||||
"TO_BOOL_INT",
|
||||
"TO_BOOL_LIST",
|
||||
"TO_BOOL_NONE",
|
||||
"TO_BOOL_STR",
|
||||
),
|
||||
BINARY_OP=(
|
||||
"BINARY_OP_MULTIPLY_INT",
|
||||
"BINARY_OP_ADD_INT",
|
||||
"BINARY_OP_SUBTRACT_INT",
|
||||
"BINARY_OP_MULTIPLY_FLOAT",
|
||||
"BINARY_OP_ADD_FLOAT",
|
||||
"BINARY_OP_SUBTRACT_FLOAT",
|
||||
"BINARY_OP_ADD_UNICODE",
|
||||
"BINARY_OP_SUBSCR_LIST_INT",
|
||||
"BINARY_OP_SUBSCR_LIST_SLICE",
|
||||
"BINARY_OP_SUBSCR_TUPLE_INT",
|
||||
"BINARY_OP_SUBSCR_STR_INT",
|
||||
"BINARY_OP_SUBSCR_USTR_INT",
|
||||
"BINARY_OP_SUBSCR_DICT",
|
||||
"BINARY_OP_SUBSCR_GETITEM",
|
||||
"BINARY_OP_INPLACE_ADD_UNICODE",
|
||||
"BINARY_OP_EXTEND",
|
||||
),
|
||||
STORE_SUBSCR=(
|
||||
"STORE_SUBSCR_DICT",
|
||||
"STORE_SUBSCR_LIST_INT",
|
||||
),
|
||||
SEND=(
|
||||
"SEND_GEN",
|
||||
"SEND_VIRTUAL",
|
||||
"SEND_ASYNC_GEN",
|
||||
),
|
||||
UNPACK_SEQUENCE=(
|
||||
"UNPACK_SEQUENCE_TWO_TUPLE",
|
||||
"UNPACK_SEQUENCE_TUPLE",
|
||||
"UNPACK_SEQUENCE_LIST",
|
||||
),
|
||||
STORE_ATTR=(
|
||||
"STORE_ATTR_INSTANCE_VALUE",
|
||||
"STORE_ATTR_SLOT",
|
||||
"STORE_ATTR_WITH_HINT",
|
||||
),
|
||||
LOAD_GLOBAL=(
|
||||
"LOAD_GLOBAL_MODULE",
|
||||
"LOAD_GLOBAL_BUILTIN",
|
||||
),
|
||||
LOAD_SUPER_ATTR=(
|
||||
"LOAD_SUPER_ATTR_ATTR",
|
||||
"LOAD_SUPER_ATTR_METHOD",
|
||||
),
|
||||
LOAD_ATTR=(
|
||||
"LOAD_ATTR_INSTANCE_VALUE",
|
||||
"LOAD_ATTR_MODULE",
|
||||
"LOAD_ATTR_WITH_HINT",
|
||||
"LOAD_ATTR_SLOT",
|
||||
"LOAD_ATTR_CLASS",
|
||||
"LOAD_ATTR_CLASS_WITH_METACLASS_CHECK",
|
||||
"LOAD_ATTR_PROPERTY",
|
||||
"LOAD_ATTR_GETATTRIBUTE_OVERRIDDEN",
|
||||
"LOAD_ATTR_METHOD_WITH_VALUES",
|
||||
"LOAD_ATTR_METHOD_NO_DICT",
|
||||
"LOAD_ATTR_METHOD_LAZY_DICT",
|
||||
"LOAD_ATTR_NONDESCRIPTOR_WITH_VALUES",
|
||||
"LOAD_ATTR_NONDESCRIPTOR_NO_DICT",
|
||||
),
|
||||
COMPARE_OP=(
|
||||
"COMPARE_OP_FLOAT",
|
||||
"COMPARE_OP_INT",
|
||||
"COMPARE_OP_STR",
|
||||
),
|
||||
CONTAINS_OP=(
|
||||
"CONTAINS_OP_SET",
|
||||
"CONTAINS_OP_DICT",
|
||||
),
|
||||
JUMP_BACKWARD=(
|
||||
"JUMP_BACKWARD_NO_JIT",
|
||||
"JUMP_BACKWARD_JIT",
|
||||
),
|
||||
GET_ITER=(
|
||||
"GET_ITER_SELF",
|
||||
"GET_ITER_VIRTUAL",
|
||||
),
|
||||
FOR_ITER=(
|
||||
"FOR_ITER_LIST",
|
||||
"FOR_ITER_TUPLE",
|
||||
"FOR_ITER_RANGE",
|
||||
"FOR_ITER_GEN",
|
||||
"FOR_ITER_VIRTUAL",
|
||||
),
|
||||
CALL=(
|
||||
"CALL_BOUND_METHOD_EXACT_ARGS",
|
||||
"CALL_PY_EXACT_ARGS",
|
||||
"CALL_TYPE_1",
|
||||
"CALL_STR_1",
|
||||
"CALL_TUPLE_1",
|
||||
"CALL_BUILTIN_CLASS",
|
||||
"CALL_BUILTIN_O",
|
||||
"CALL_BUILTIN_FAST",
|
||||
"CALL_BUILTIN_FAST_WITH_KEYWORDS",
|
||||
"CALL_LEN",
|
||||
"CALL_ISINSTANCE",
|
||||
"CALL_LIST_APPEND",
|
||||
"CALL_METHOD_DESCRIPTOR_O",
|
||||
"CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS",
|
||||
"CALL_METHOD_DESCRIPTOR_NOARGS",
|
||||
"CALL_METHOD_DESCRIPTOR_FAST",
|
||||
"CALL_ALLOC_AND_ENTER_INIT",
|
||||
"CALL_PY_GENERAL",
|
||||
"CALL_BOUND_METHOD_GENERAL",
|
||||
"CALL_NON_PY_GENERAL",
|
||||
),
|
||||
CALL_KW=(
|
||||
"CALL_KW_BOUND_METHOD",
|
||||
"CALL_KW_PY",
|
||||
"CALL_KW_NON_PY",
|
||||
),
|
||||
CALL_FUNCTION_EX=(
|
||||
"CALL_EX_PY",
|
||||
"CALL_EX_NON_PY_GENERAL",
|
||||
),
|
||||
)
|
||||
|
||||
_specializations = {
|
||||
"RESUME": [
|
||||
"RESUME_CHECK",
|
||||
],
|
||||
"LOAD_CONST": [
|
||||
"LOAD_CONST_MORTAL",
|
||||
"LOAD_CONST_IMMORTAL",
|
||||
],
|
||||
"TO_BOOL": [
|
||||
"TO_BOOL_ALWAYS_TRUE",
|
||||
"TO_BOOL_BOOL",
|
||||
"TO_BOOL_INT",
|
||||
"TO_BOOL_LIST",
|
||||
"TO_BOOL_NONE",
|
||||
"TO_BOOL_STR",
|
||||
],
|
||||
"BINARY_OP": [
|
||||
"BINARY_OP_MULTIPLY_INT",
|
||||
"BINARY_OP_ADD_INT",
|
||||
"BINARY_OP_SUBTRACT_INT",
|
||||
"BINARY_OP_MULTIPLY_FLOAT",
|
||||
"BINARY_OP_ADD_FLOAT",
|
||||
"BINARY_OP_SUBTRACT_FLOAT",
|
||||
"BINARY_OP_ADD_UNICODE",
|
||||
"BINARY_OP_SUBSCR_LIST_INT",
|
||||
"BINARY_OP_SUBSCR_LIST_SLICE",
|
||||
"BINARY_OP_SUBSCR_TUPLE_INT",
|
||||
"BINARY_OP_SUBSCR_STR_INT",
|
||||
"BINARY_OP_SUBSCR_DICT",
|
||||
"BINARY_OP_SUBSCR_GETITEM",
|
||||
"BINARY_OP_EXTEND",
|
||||
"BINARY_OP_INPLACE_ADD_UNICODE",
|
||||
],
|
||||
"STORE_SUBSCR": [
|
||||
"STORE_SUBSCR_DICT",
|
||||
"STORE_SUBSCR_LIST_INT",
|
||||
],
|
||||
"SEND": [
|
||||
"SEND_GEN",
|
||||
],
|
||||
"UNPACK_SEQUENCE": [
|
||||
"UNPACK_SEQUENCE_TWO_TUPLE",
|
||||
"UNPACK_SEQUENCE_TUPLE",
|
||||
"UNPACK_SEQUENCE_LIST",
|
||||
],
|
||||
"STORE_ATTR": [
|
||||
"STORE_ATTR_INSTANCE_VALUE",
|
||||
"STORE_ATTR_SLOT",
|
||||
"STORE_ATTR_WITH_HINT",
|
||||
],
|
||||
"LOAD_GLOBAL": [
|
||||
"LOAD_GLOBAL_MODULE",
|
||||
"LOAD_GLOBAL_BUILTIN",
|
||||
],
|
||||
"LOAD_SUPER_ATTR": [
|
||||
"LOAD_SUPER_ATTR_ATTR",
|
||||
"LOAD_SUPER_ATTR_METHOD",
|
||||
],
|
||||
"LOAD_ATTR": [
|
||||
"LOAD_ATTR_INSTANCE_VALUE",
|
||||
"LOAD_ATTR_MODULE",
|
||||
"LOAD_ATTR_WITH_HINT",
|
||||
"LOAD_ATTR_SLOT",
|
||||
"LOAD_ATTR_CLASS",
|
||||
"LOAD_ATTR_CLASS_WITH_METACLASS_CHECK",
|
||||
"LOAD_ATTR_PROPERTY",
|
||||
"LOAD_ATTR_GETATTRIBUTE_OVERRIDDEN",
|
||||
"LOAD_ATTR_METHOD_WITH_VALUES",
|
||||
"LOAD_ATTR_METHOD_NO_DICT",
|
||||
"LOAD_ATTR_METHOD_LAZY_DICT",
|
||||
"LOAD_ATTR_NONDESCRIPTOR_WITH_VALUES",
|
||||
"LOAD_ATTR_NONDESCRIPTOR_NO_DICT",
|
||||
],
|
||||
"COMPARE_OP": [
|
||||
"COMPARE_OP_FLOAT",
|
||||
"COMPARE_OP_INT",
|
||||
"COMPARE_OP_STR",
|
||||
],
|
||||
"CONTAINS_OP": [
|
||||
"CONTAINS_OP_SET",
|
||||
"CONTAINS_OP_DICT",
|
||||
],
|
||||
"JUMP_BACKWARD": [
|
||||
"JUMP_BACKWARD_NO_JIT",
|
||||
"JUMP_BACKWARD_JIT",
|
||||
],
|
||||
"FOR_ITER": [
|
||||
"FOR_ITER_LIST",
|
||||
"FOR_ITER_TUPLE",
|
||||
"FOR_ITER_RANGE",
|
||||
"FOR_ITER_GEN",
|
||||
],
|
||||
"CALL": [
|
||||
"CALL_BOUND_METHOD_EXACT_ARGS",
|
||||
"CALL_PY_EXACT_ARGS",
|
||||
"CALL_TYPE_1",
|
||||
"CALL_STR_1",
|
||||
"CALL_TUPLE_1",
|
||||
"CALL_BUILTIN_CLASS",
|
||||
"CALL_BUILTIN_O",
|
||||
"CALL_BUILTIN_FAST",
|
||||
"CALL_BUILTIN_FAST_WITH_KEYWORDS",
|
||||
"CALL_LEN",
|
||||
"CALL_ISINSTANCE",
|
||||
"CALL_LIST_APPEND",
|
||||
"CALL_METHOD_DESCRIPTOR_O",
|
||||
"CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS",
|
||||
"CALL_METHOD_DESCRIPTOR_NOARGS",
|
||||
"CALL_METHOD_DESCRIPTOR_FAST",
|
||||
"CALL_ALLOC_AND_ENTER_INIT",
|
||||
"CALL_PY_GENERAL",
|
||||
"CALL_BOUND_METHOD_GENERAL",
|
||||
"CALL_NON_PY_GENERAL",
|
||||
],
|
||||
"CALL_KW": [
|
||||
"CALL_KW_BOUND_METHOD",
|
||||
"CALL_KW_PY",
|
||||
"CALL_KW_NON_PY",
|
||||
],
|
||||
}
|
||||
_specialized_opmap = frozendict(
|
||||
BINARY_OP_ADD_FLOAT=129,
|
||||
BINARY_OP_ADD_INT=130,
|
||||
BINARY_OP_ADD_UNICODE=131,
|
||||
BINARY_OP_EXTEND=132,
|
||||
BINARY_OP_INPLACE_ADD_UNICODE=3,
|
||||
BINARY_OP_MULTIPLY_FLOAT=133,
|
||||
BINARY_OP_MULTIPLY_INT=134,
|
||||
BINARY_OP_SUBSCR_DICT=135,
|
||||
BINARY_OP_SUBSCR_GETITEM=136,
|
||||
BINARY_OP_SUBSCR_LIST_INT=137,
|
||||
BINARY_OP_SUBSCR_LIST_SLICE=138,
|
||||
BINARY_OP_SUBSCR_STR_INT=139,
|
||||
BINARY_OP_SUBSCR_TUPLE_INT=140,
|
||||
BINARY_OP_SUBSCR_USTR_INT=141,
|
||||
BINARY_OP_SUBTRACT_FLOAT=142,
|
||||
BINARY_OP_SUBTRACT_INT=143,
|
||||
CALL_ALLOC_AND_ENTER_INIT=144,
|
||||
CALL_BOUND_METHOD_EXACT_ARGS=145,
|
||||
CALL_BOUND_METHOD_GENERAL=146,
|
||||
CALL_BUILTIN_CLASS=147,
|
||||
CALL_BUILTIN_FAST=148,
|
||||
CALL_BUILTIN_FAST_WITH_KEYWORDS=149,
|
||||
CALL_BUILTIN_O=150,
|
||||
CALL_EX_NON_PY_GENERAL=151,
|
||||
CALL_EX_PY=152,
|
||||
CALL_ISINSTANCE=153,
|
||||
CALL_KW_BOUND_METHOD=154,
|
||||
CALL_KW_NON_PY=155,
|
||||
CALL_KW_PY=156,
|
||||
CALL_LEN=157,
|
||||
CALL_LIST_APPEND=158,
|
||||
CALL_METHOD_DESCRIPTOR_FAST=159,
|
||||
CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS=160,
|
||||
CALL_METHOD_DESCRIPTOR_NOARGS=161,
|
||||
CALL_METHOD_DESCRIPTOR_O=162,
|
||||
CALL_NON_PY_GENERAL=163,
|
||||
CALL_PY_EXACT_ARGS=164,
|
||||
CALL_PY_GENERAL=165,
|
||||
CALL_STR_1=166,
|
||||
CALL_TUPLE_1=167,
|
||||
CALL_TYPE_1=168,
|
||||
COMPARE_OP_FLOAT=169,
|
||||
COMPARE_OP_INT=170,
|
||||
COMPARE_OP_STR=171,
|
||||
CONTAINS_OP_DICT=172,
|
||||
CONTAINS_OP_SET=173,
|
||||
FOR_ITER_GEN=174,
|
||||
FOR_ITER_LIST=175,
|
||||
FOR_ITER_RANGE=176,
|
||||
FOR_ITER_TUPLE=177,
|
||||
FOR_ITER_VIRTUAL=178,
|
||||
GET_ITER_SELF=179,
|
||||
GET_ITER_VIRTUAL=180,
|
||||
JUMP_BACKWARD_JIT=181,
|
||||
JUMP_BACKWARD_NO_JIT=182,
|
||||
LOAD_ATTR_CLASS=183,
|
||||
LOAD_ATTR_CLASS_WITH_METACLASS_CHECK=184,
|
||||
LOAD_ATTR_GETATTRIBUTE_OVERRIDDEN=185,
|
||||
LOAD_ATTR_INSTANCE_VALUE=186,
|
||||
LOAD_ATTR_METHOD_LAZY_DICT=187,
|
||||
LOAD_ATTR_METHOD_NO_DICT=188,
|
||||
LOAD_ATTR_METHOD_WITH_VALUES=189,
|
||||
LOAD_ATTR_MODULE=190,
|
||||
LOAD_ATTR_NONDESCRIPTOR_NO_DICT=191,
|
||||
LOAD_ATTR_NONDESCRIPTOR_WITH_VALUES=192,
|
||||
LOAD_ATTR_PROPERTY=193,
|
||||
LOAD_ATTR_SLOT=194,
|
||||
LOAD_ATTR_WITH_HINT=195,
|
||||
LOAD_GLOBAL_BUILTIN=196,
|
||||
LOAD_GLOBAL_MODULE=197,
|
||||
LOAD_SUPER_ATTR_ATTR=198,
|
||||
LOAD_SUPER_ATTR_METHOD=199,
|
||||
RESUME_CHECK=200,
|
||||
RESUME_CHECK_JIT=201,
|
||||
SEND_ASYNC_GEN=202,
|
||||
SEND_GEN=203,
|
||||
SEND_VIRTUAL=204,
|
||||
STORE_ATTR_INSTANCE_VALUE=205,
|
||||
STORE_ATTR_SLOT=206,
|
||||
STORE_ATTR_WITH_HINT=207,
|
||||
STORE_SUBSCR_DICT=208,
|
||||
STORE_SUBSCR_LIST_INT=209,
|
||||
TO_BOOL_ALWAYS_TRUE=210,
|
||||
TO_BOOL_BOOL=211,
|
||||
TO_BOOL_INT=212,
|
||||
TO_BOOL_LIST=213,
|
||||
TO_BOOL_NONE=214,
|
||||
TO_BOOL_STR=215,
|
||||
UNPACK_SEQUENCE_LIST=216,
|
||||
UNPACK_SEQUENCE_TUPLE=217,
|
||||
UNPACK_SEQUENCE_TWO_TUPLE=218,
|
||||
)
|
||||
|
||||
_specialized_opmap = {
|
||||
'BINARY_OP_ADD_FLOAT': 129,
|
||||
'BINARY_OP_ADD_INT': 130,
|
||||
'BINARY_OP_ADD_UNICODE': 131,
|
||||
'BINARY_OP_EXTEND': 132,
|
||||
'BINARY_OP_INPLACE_ADD_UNICODE': 3,
|
||||
'BINARY_OP_MULTIPLY_FLOAT': 133,
|
||||
'BINARY_OP_MULTIPLY_INT': 134,
|
||||
'BINARY_OP_SUBSCR_DICT': 135,
|
||||
'BINARY_OP_SUBSCR_GETITEM': 136,
|
||||
'BINARY_OP_SUBSCR_LIST_INT': 137,
|
||||
'BINARY_OP_SUBSCR_LIST_SLICE': 138,
|
||||
'BINARY_OP_SUBSCR_STR_INT': 139,
|
||||
'BINARY_OP_SUBSCR_TUPLE_INT': 140,
|
||||
'BINARY_OP_SUBTRACT_FLOAT': 141,
|
||||
'BINARY_OP_SUBTRACT_INT': 142,
|
||||
'CALL_ALLOC_AND_ENTER_INIT': 143,
|
||||
'CALL_BOUND_METHOD_EXACT_ARGS': 144,
|
||||
'CALL_BOUND_METHOD_GENERAL': 145,
|
||||
'CALL_BUILTIN_CLASS': 146,
|
||||
'CALL_BUILTIN_FAST': 147,
|
||||
'CALL_BUILTIN_FAST_WITH_KEYWORDS': 148,
|
||||
'CALL_BUILTIN_O': 149,
|
||||
'CALL_ISINSTANCE': 150,
|
||||
'CALL_KW_BOUND_METHOD': 151,
|
||||
'CALL_KW_NON_PY': 152,
|
||||
'CALL_KW_PY': 153,
|
||||
'CALL_LEN': 154,
|
||||
'CALL_LIST_APPEND': 155,
|
||||
'CALL_METHOD_DESCRIPTOR_FAST': 156,
|
||||
'CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS': 157,
|
||||
'CALL_METHOD_DESCRIPTOR_NOARGS': 158,
|
||||
'CALL_METHOD_DESCRIPTOR_O': 159,
|
||||
'CALL_NON_PY_GENERAL': 160,
|
||||
'CALL_PY_EXACT_ARGS': 161,
|
||||
'CALL_PY_GENERAL': 162,
|
||||
'CALL_STR_1': 163,
|
||||
'CALL_TUPLE_1': 164,
|
||||
'CALL_TYPE_1': 165,
|
||||
'COMPARE_OP_FLOAT': 166,
|
||||
'COMPARE_OP_INT': 167,
|
||||
'COMPARE_OP_STR': 168,
|
||||
'CONTAINS_OP_DICT': 169,
|
||||
'CONTAINS_OP_SET': 170,
|
||||
'FOR_ITER_GEN': 171,
|
||||
'FOR_ITER_LIST': 172,
|
||||
'FOR_ITER_RANGE': 173,
|
||||
'FOR_ITER_TUPLE': 174,
|
||||
'JUMP_BACKWARD_JIT': 175,
|
||||
'JUMP_BACKWARD_NO_JIT': 176,
|
||||
'LOAD_ATTR_CLASS': 177,
|
||||
'LOAD_ATTR_CLASS_WITH_METACLASS_CHECK': 178,
|
||||
'LOAD_ATTR_GETATTRIBUTE_OVERRIDDEN': 179,
|
||||
'LOAD_ATTR_INSTANCE_VALUE': 180,
|
||||
'LOAD_ATTR_METHOD_LAZY_DICT': 181,
|
||||
'LOAD_ATTR_METHOD_NO_DICT': 182,
|
||||
'LOAD_ATTR_METHOD_WITH_VALUES': 183,
|
||||
'LOAD_ATTR_MODULE': 184,
|
||||
'LOAD_ATTR_NONDESCRIPTOR_NO_DICT': 185,
|
||||
'LOAD_ATTR_NONDESCRIPTOR_WITH_VALUES': 186,
|
||||
'LOAD_ATTR_PROPERTY': 187,
|
||||
'LOAD_ATTR_SLOT': 188,
|
||||
'LOAD_ATTR_WITH_HINT': 189,
|
||||
'LOAD_CONST_IMMORTAL': 190,
|
||||
'LOAD_CONST_MORTAL': 191,
|
||||
'LOAD_GLOBAL_BUILTIN': 192,
|
||||
'LOAD_GLOBAL_MODULE': 193,
|
||||
'LOAD_SUPER_ATTR_ATTR': 194,
|
||||
'LOAD_SUPER_ATTR_METHOD': 195,
|
||||
'RESUME_CHECK': 196,
|
||||
'SEND_GEN': 197,
|
||||
'STORE_ATTR_INSTANCE_VALUE': 198,
|
||||
'STORE_ATTR_SLOT': 199,
|
||||
'STORE_ATTR_WITH_HINT': 200,
|
||||
'STORE_SUBSCR_DICT': 201,
|
||||
'STORE_SUBSCR_LIST_INT': 202,
|
||||
'TO_BOOL_ALWAYS_TRUE': 203,
|
||||
'TO_BOOL_BOOL': 204,
|
||||
'TO_BOOL_INT': 205,
|
||||
'TO_BOOL_LIST': 206,
|
||||
'TO_BOOL_NONE': 207,
|
||||
'TO_BOOL_STR': 208,
|
||||
'UNPACK_SEQUENCE_LIST': 209,
|
||||
'UNPACK_SEQUENCE_TUPLE': 210,
|
||||
'UNPACK_SEQUENCE_TWO_TUPLE': 211,
|
||||
}
|
||||
opmap = frozendict(
|
||||
CACHE=0,
|
||||
RESERVED=17,
|
||||
RESUME=128,
|
||||
INSTRUMENTED_LINE=253,
|
||||
ENTER_EXECUTOR=254,
|
||||
TRACE_RECORD=255,
|
||||
BINARY_SLICE=1,
|
||||
BUILD_TEMPLATE=2,
|
||||
CALL_FUNCTION_EX=4,
|
||||
CHECK_EG_MATCH=5,
|
||||
CHECK_EXC_MATCH=6,
|
||||
CLEANUP_THROW=7,
|
||||
DELETE_SUBSCR=8,
|
||||
END_FOR=9,
|
||||
END_SEND=10,
|
||||
EXIT_INIT_CHECK=11,
|
||||
FORMAT_SIMPLE=12,
|
||||
FORMAT_WITH_SPEC=13,
|
||||
GET_AITER=14,
|
||||
GET_ANEXT=15,
|
||||
GET_LEN=16,
|
||||
INTERPRETER_EXIT=18,
|
||||
LOAD_BUILD_CLASS=19,
|
||||
LOAD_LOCALS=20,
|
||||
MAKE_FUNCTION=21,
|
||||
MATCH_KEYS=22,
|
||||
MATCH_MAPPING=23,
|
||||
MATCH_SEQUENCE=24,
|
||||
NOP=25,
|
||||
NOT_TAKEN=26,
|
||||
POP_EXCEPT=27,
|
||||
POP_ITER=28,
|
||||
POP_TOP=29,
|
||||
PUSH_EXC_INFO=30,
|
||||
PUSH_NULL=31,
|
||||
RETURN_GENERATOR=32,
|
||||
RETURN_VALUE=33,
|
||||
SETUP_ANNOTATIONS=34,
|
||||
STORE_SLICE=35,
|
||||
STORE_SUBSCR=36,
|
||||
TO_BOOL=37,
|
||||
UNARY_INVERT=38,
|
||||
UNARY_NEGATIVE=39,
|
||||
UNARY_NOT=40,
|
||||
WITH_EXCEPT_START=41,
|
||||
BINARY_OP=42,
|
||||
BUILD_INTERPOLATION=43,
|
||||
BUILD_LIST=44,
|
||||
BUILD_MAP=45,
|
||||
BUILD_SET=46,
|
||||
BUILD_SLICE=47,
|
||||
BUILD_STRING=48,
|
||||
BUILD_TUPLE=49,
|
||||
CALL=50,
|
||||
CALL_INTRINSIC_1=51,
|
||||
CALL_INTRINSIC_2=52,
|
||||
CALL_KW=53,
|
||||
COMPARE_OP=54,
|
||||
CONTAINS_OP=55,
|
||||
CONVERT_VALUE=56,
|
||||
COPY=57,
|
||||
COPY_FREE_VARS=58,
|
||||
DELETE_ATTR=59,
|
||||
DELETE_DEREF=60,
|
||||
DELETE_FAST=61,
|
||||
DELETE_GLOBAL=62,
|
||||
DELETE_NAME=63,
|
||||
DICT_MERGE=64,
|
||||
DICT_UPDATE=65,
|
||||
END_ASYNC_FOR=66,
|
||||
EXTENDED_ARG=67,
|
||||
FOR_ITER=68,
|
||||
GET_AWAITABLE=69,
|
||||
GET_ITER=70,
|
||||
IMPORT_FROM=71,
|
||||
IMPORT_NAME=72,
|
||||
IS_OP=73,
|
||||
JUMP_BACKWARD=74,
|
||||
JUMP_BACKWARD_NO_INTERRUPT=75,
|
||||
JUMP_FORWARD=76,
|
||||
LIST_APPEND=77,
|
||||
LIST_EXTEND=78,
|
||||
LOAD_ATTR=79,
|
||||
LOAD_COMMON_CONSTANT=80,
|
||||
LOAD_CONST=81,
|
||||
LOAD_DEREF=82,
|
||||
LOAD_FAST=83,
|
||||
LOAD_FAST_AND_CLEAR=84,
|
||||
LOAD_FAST_BORROW=85,
|
||||
LOAD_FAST_BORROW_LOAD_FAST_BORROW=86,
|
||||
LOAD_FAST_CHECK=87,
|
||||
LOAD_FAST_LOAD_FAST=88,
|
||||
LOAD_FROM_DICT_OR_DEREF=89,
|
||||
LOAD_FROM_DICT_OR_GLOBALS=90,
|
||||
LOAD_GLOBAL=91,
|
||||
LOAD_NAME=92,
|
||||
LOAD_SMALL_INT=93,
|
||||
LOAD_SPECIAL=94,
|
||||
LOAD_SUPER_ATTR=95,
|
||||
MAKE_CELL=96,
|
||||
MAP_ADD=97,
|
||||
MATCH_CLASS=98,
|
||||
POP_JUMP_IF_FALSE=99,
|
||||
POP_JUMP_IF_NONE=100,
|
||||
POP_JUMP_IF_NOT_NONE=101,
|
||||
POP_JUMP_IF_TRUE=102,
|
||||
RAISE_VARARGS=103,
|
||||
RERAISE=104,
|
||||
SEND=105,
|
||||
SET_ADD=106,
|
||||
SET_FUNCTION_ATTRIBUTE=107,
|
||||
SET_UPDATE=108,
|
||||
STORE_ATTR=109,
|
||||
STORE_DEREF=110,
|
||||
STORE_FAST=111,
|
||||
STORE_FAST_LOAD_FAST=112,
|
||||
STORE_FAST_STORE_FAST=113,
|
||||
STORE_GLOBAL=114,
|
||||
STORE_NAME=115,
|
||||
SWAP=116,
|
||||
UNPACK_EX=117,
|
||||
UNPACK_SEQUENCE=118,
|
||||
YIELD_VALUE=119,
|
||||
INSTRUMENTED_END_FOR=233,
|
||||
INSTRUMENTED_POP_ITER=234,
|
||||
INSTRUMENTED_END_SEND=235,
|
||||
INSTRUMENTED_FOR_ITER=236,
|
||||
INSTRUMENTED_INSTRUCTION=237,
|
||||
INSTRUMENTED_JUMP_FORWARD=238,
|
||||
INSTRUMENTED_NOT_TAKEN=239,
|
||||
INSTRUMENTED_POP_JUMP_IF_TRUE=240,
|
||||
INSTRUMENTED_POP_JUMP_IF_FALSE=241,
|
||||
INSTRUMENTED_POP_JUMP_IF_NONE=242,
|
||||
INSTRUMENTED_POP_JUMP_IF_NOT_NONE=243,
|
||||
INSTRUMENTED_RESUME=244,
|
||||
INSTRUMENTED_RETURN_VALUE=245,
|
||||
INSTRUMENTED_YIELD_VALUE=246,
|
||||
INSTRUMENTED_END_ASYNC_FOR=247,
|
||||
INSTRUMENTED_LOAD_SUPER_ATTR=248,
|
||||
INSTRUMENTED_CALL=249,
|
||||
INSTRUMENTED_CALL_KW=250,
|
||||
INSTRUMENTED_CALL_FUNCTION_EX=251,
|
||||
INSTRUMENTED_JUMP_BACKWARD=252,
|
||||
ANNOTATIONS_PLACEHOLDER=256,
|
||||
JUMP=257,
|
||||
JUMP_IF_FALSE=258,
|
||||
JUMP_IF_TRUE=259,
|
||||
JUMP_NO_INTERRUPT=260,
|
||||
LOAD_CLOSURE=261,
|
||||
POP_BLOCK=262,
|
||||
SETUP_CLEANUP=263,
|
||||
SETUP_FINALLY=264,
|
||||
SETUP_WITH=265,
|
||||
STORE_FAST_MAYBE_NULL=266,
|
||||
)
|
||||
|
||||
opmap = {
|
||||
'CACHE': 0,
|
||||
'RESERVED': 17,
|
||||
'RESUME': 128,
|
||||
'INSTRUMENTED_LINE': 254,
|
||||
'ENTER_EXECUTOR': 255,
|
||||
'BINARY_SLICE': 1,
|
||||
'BUILD_TEMPLATE': 2,
|
||||
'CALL_FUNCTION_EX': 4,
|
||||
'CHECK_EG_MATCH': 5,
|
||||
'CHECK_EXC_MATCH': 6,
|
||||
'CLEANUP_THROW': 7,
|
||||
'DELETE_SUBSCR': 8,
|
||||
'END_FOR': 9,
|
||||
'END_SEND': 10,
|
||||
'EXIT_INIT_CHECK': 11,
|
||||
'FORMAT_SIMPLE': 12,
|
||||
'FORMAT_WITH_SPEC': 13,
|
||||
'GET_AITER': 14,
|
||||
'GET_ANEXT': 15,
|
||||
'GET_ITER': 16,
|
||||
'GET_LEN': 18,
|
||||
'GET_YIELD_FROM_ITER': 19,
|
||||
'INTERPRETER_EXIT': 20,
|
||||
'LOAD_BUILD_CLASS': 21,
|
||||
'LOAD_LOCALS': 22,
|
||||
'MAKE_FUNCTION': 23,
|
||||
'MATCH_KEYS': 24,
|
||||
'MATCH_MAPPING': 25,
|
||||
'MATCH_SEQUENCE': 26,
|
||||
'NOP': 27,
|
||||
'NOT_TAKEN': 28,
|
||||
'POP_EXCEPT': 29,
|
||||
'POP_ITER': 30,
|
||||
'POP_TOP': 31,
|
||||
'PUSH_EXC_INFO': 32,
|
||||
'PUSH_NULL': 33,
|
||||
'RETURN_GENERATOR': 34,
|
||||
'RETURN_VALUE': 35,
|
||||
'SETUP_ANNOTATIONS': 36,
|
||||
'STORE_SLICE': 37,
|
||||
'STORE_SUBSCR': 38,
|
||||
'TO_BOOL': 39,
|
||||
'UNARY_INVERT': 40,
|
||||
'UNARY_NEGATIVE': 41,
|
||||
'UNARY_NOT': 42,
|
||||
'WITH_EXCEPT_START': 43,
|
||||
'BINARY_OP': 44,
|
||||
'BUILD_INTERPOLATION': 45,
|
||||
'BUILD_LIST': 46,
|
||||
'BUILD_MAP': 47,
|
||||
'BUILD_SET': 48,
|
||||
'BUILD_SLICE': 49,
|
||||
'BUILD_STRING': 50,
|
||||
'BUILD_TUPLE': 51,
|
||||
'CALL': 52,
|
||||
'CALL_INTRINSIC_1': 53,
|
||||
'CALL_INTRINSIC_2': 54,
|
||||
'CALL_KW': 55,
|
||||
'COMPARE_OP': 56,
|
||||
'CONTAINS_OP': 57,
|
||||
'CONVERT_VALUE': 58,
|
||||
'COPY': 59,
|
||||
'COPY_FREE_VARS': 60,
|
||||
'DELETE_ATTR': 61,
|
||||
'DELETE_DEREF': 62,
|
||||
'DELETE_FAST': 63,
|
||||
'DELETE_GLOBAL': 64,
|
||||
'DELETE_NAME': 65,
|
||||
'DICT_MERGE': 66,
|
||||
'DICT_UPDATE': 67,
|
||||
'END_ASYNC_FOR': 68,
|
||||
'EXTENDED_ARG': 69,
|
||||
'FOR_ITER': 70,
|
||||
'GET_AWAITABLE': 71,
|
||||
'IMPORT_FROM': 72,
|
||||
'IMPORT_NAME': 73,
|
||||
'IS_OP': 74,
|
||||
'JUMP_BACKWARD': 75,
|
||||
'JUMP_BACKWARD_NO_INTERRUPT': 76,
|
||||
'JUMP_FORWARD': 77,
|
||||
'LIST_APPEND': 78,
|
||||
'LIST_EXTEND': 79,
|
||||
'LOAD_ATTR': 80,
|
||||
'LOAD_COMMON_CONSTANT': 81,
|
||||
'LOAD_CONST': 82,
|
||||
'LOAD_DEREF': 83,
|
||||
'LOAD_FAST': 84,
|
||||
'LOAD_FAST_AND_CLEAR': 85,
|
||||
'LOAD_FAST_BORROW': 86,
|
||||
'LOAD_FAST_BORROW_LOAD_FAST_BORROW': 87,
|
||||
'LOAD_FAST_CHECK': 88,
|
||||
'LOAD_FAST_LOAD_FAST': 89,
|
||||
'LOAD_FROM_DICT_OR_DEREF': 90,
|
||||
'LOAD_FROM_DICT_OR_GLOBALS': 91,
|
||||
'LOAD_GLOBAL': 92,
|
||||
'LOAD_NAME': 93,
|
||||
'LOAD_SMALL_INT': 94,
|
||||
'LOAD_SPECIAL': 95,
|
||||
'LOAD_SUPER_ATTR': 96,
|
||||
'MAKE_CELL': 97,
|
||||
'MAP_ADD': 98,
|
||||
'MATCH_CLASS': 99,
|
||||
'POP_JUMP_IF_FALSE': 100,
|
||||
'POP_JUMP_IF_NONE': 101,
|
||||
'POP_JUMP_IF_NOT_NONE': 102,
|
||||
'POP_JUMP_IF_TRUE': 103,
|
||||
'RAISE_VARARGS': 104,
|
||||
'RERAISE': 105,
|
||||
'SEND': 106,
|
||||
'SET_ADD': 107,
|
||||
'SET_FUNCTION_ATTRIBUTE': 108,
|
||||
'SET_UPDATE': 109,
|
||||
'STORE_ATTR': 110,
|
||||
'STORE_DEREF': 111,
|
||||
'STORE_FAST': 112,
|
||||
'STORE_FAST_LOAD_FAST': 113,
|
||||
'STORE_FAST_STORE_FAST': 114,
|
||||
'STORE_GLOBAL': 115,
|
||||
'STORE_NAME': 116,
|
||||
'SWAP': 117,
|
||||
'UNPACK_EX': 118,
|
||||
'UNPACK_SEQUENCE': 119,
|
||||
'YIELD_VALUE': 120,
|
||||
'INSTRUMENTED_END_FOR': 234,
|
||||
'INSTRUMENTED_POP_ITER': 235,
|
||||
'INSTRUMENTED_END_SEND': 236,
|
||||
'INSTRUMENTED_FOR_ITER': 237,
|
||||
'INSTRUMENTED_INSTRUCTION': 238,
|
||||
'INSTRUMENTED_JUMP_FORWARD': 239,
|
||||
'INSTRUMENTED_NOT_TAKEN': 240,
|
||||
'INSTRUMENTED_POP_JUMP_IF_TRUE': 241,
|
||||
'INSTRUMENTED_POP_JUMP_IF_FALSE': 242,
|
||||
'INSTRUMENTED_POP_JUMP_IF_NONE': 243,
|
||||
'INSTRUMENTED_POP_JUMP_IF_NOT_NONE': 244,
|
||||
'INSTRUMENTED_RESUME': 245,
|
||||
'INSTRUMENTED_RETURN_VALUE': 246,
|
||||
'INSTRUMENTED_YIELD_VALUE': 247,
|
||||
'INSTRUMENTED_END_ASYNC_FOR': 248,
|
||||
'INSTRUMENTED_LOAD_SUPER_ATTR': 249,
|
||||
'INSTRUMENTED_CALL': 250,
|
||||
'INSTRUMENTED_CALL_KW': 251,
|
||||
'INSTRUMENTED_CALL_FUNCTION_EX': 252,
|
||||
'INSTRUMENTED_JUMP_BACKWARD': 253,
|
||||
'ANNOTATIONS_PLACEHOLDER': 256,
|
||||
'JUMP': 257,
|
||||
'JUMP_IF_FALSE': 258,
|
||||
'JUMP_IF_TRUE': 259,
|
||||
'JUMP_NO_INTERRUPT': 260,
|
||||
'LOAD_CLOSURE': 261,
|
||||
'POP_BLOCK': 262,
|
||||
'SETUP_CLEANUP': 263,
|
||||
'SETUP_FINALLY': 264,
|
||||
'SETUP_WITH': 265,
|
||||
'STORE_FAST_MAYBE_NULL': 266,
|
||||
}
|
||||
|
||||
HAVE_ARGUMENT = 43
|
||||
MIN_INSTRUMENTED_OPCODE = 234
|
||||
HAVE_ARGUMENT = 41
|
||||
MIN_INSTRUMENTED_OPCODE = 233
|
||||
Vendored
+21
-6
@@ -35,6 +35,7 @@ SET_FUNCTION_ATTRIBUTE = opmap['SET_FUNCTION_ATTRIBUTE']
|
||||
FUNCTION_ATTR_FLAGS = ('defaults', 'kwdefaults', 'annotations', 'closure', 'annotate')
|
||||
|
||||
ENTER_EXECUTOR = opmap['ENTER_EXECUTOR']
|
||||
IMPORT_NAME = opmap['IMPORT_NAME']
|
||||
LOAD_GLOBAL = opmap['LOAD_GLOBAL']
|
||||
LOAD_SMALL_INT = opmap['LOAD_SMALL_INT']
|
||||
BINARY_OP = opmap['BINARY_OP']
|
||||
@@ -530,7 +531,6 @@ class Formatter:
|
||||
fields.append(instr.opname.ljust(_OPNAME_WIDTH))
|
||||
# Column: Opcode argument
|
||||
if instr.arg is not None:
|
||||
arg = repr(instr.arg)
|
||||
# If opname is longer than _OPNAME_WIDTH, we allow it to overflow into
|
||||
# the space reserved for oparg. This results in fewer misaligned opargs
|
||||
# in the disassembly output.
|
||||
@@ -601,6 +601,12 @@ class ArgResolver:
|
||||
argval, argrepr = _get_name_info(arg//4, get_name)
|
||||
if (arg & 1) and argrepr:
|
||||
argrepr = f"{argrepr} + NULL|self"
|
||||
elif deop == IMPORT_NAME:
|
||||
argval, argrepr = _get_name_info(arg//4, get_name)
|
||||
if (arg & 1) and argrepr:
|
||||
argrepr = f"{argrepr} + lazy"
|
||||
elif (arg & 2) and argrepr:
|
||||
argrepr = f"{argrepr} + eager"
|
||||
else:
|
||||
argval, argrepr = _get_name_info(arg, get_name)
|
||||
elif deop in hasjump or deop in hasexc:
|
||||
@@ -637,6 +643,7 @@ class ArgResolver:
|
||||
argrepr = _intrinsic_2_descs[arg]
|
||||
elif deop == LOAD_COMMON_CONSTANT:
|
||||
obj = _common_constants[arg]
|
||||
argval = obj
|
||||
if isinstance(obj, type):
|
||||
argrepr = obj.__name__
|
||||
else:
|
||||
@@ -686,10 +693,15 @@ def _get_const_value(op, arg, co_consts):
|
||||
Otherwise (if it is a LOAD_CONST and co_consts is not
|
||||
provided) returns the dis.UNKNOWN sentinel.
|
||||
"""
|
||||
assert op in hasconst or op == LOAD_SMALL_INT
|
||||
assert op in hasconst or op == LOAD_SMALL_INT or op == LOAD_COMMON_CONSTANT
|
||||
|
||||
if op == LOAD_SMALL_INT:
|
||||
return arg
|
||||
if op == LOAD_COMMON_CONSTANT:
|
||||
# Opargs 0-6 are callables; 7-11 are literal values.
|
||||
if 7 <= arg <= 11:
|
||||
return _common_constants[arg]
|
||||
return UNKNOWN
|
||||
argval = UNKNOWN
|
||||
if co_consts is not None:
|
||||
argval = co_consts[arg]
|
||||
@@ -1009,11 +1021,14 @@ def _find_imports(co):
|
||||
if op == IMPORT_NAME and i >= 2:
|
||||
from_op = opargs[i-1]
|
||||
level_op = opargs[i-2]
|
||||
if (from_op[0] in hasconst and
|
||||
(level_op[0] in hasconst or level_op[0] == LOAD_SMALL_INT)):
|
||||
if ((from_op[0] in hasconst or from_op[0] == LOAD_COMMON_CONSTANT) and
|
||||
(level_op[0] in hasconst or level_op[0] == LOAD_SMALL_INT or
|
||||
level_op[0] == LOAD_COMMON_CONSTANT)):
|
||||
level = _get_const_value(level_op[0], level_op[1], consts)
|
||||
fromlist = _get_const_value(from_op[0], from_op[1], consts)
|
||||
yield (names[oparg], level, fromlist)
|
||||
# IMPORT_NAME encodes lazy/eager flags in bits 0-1,
|
||||
# name index in bits 2+.
|
||||
yield (names[oparg >> 2], level, fromlist)
|
||||
|
||||
def _find_store_names(co):
|
||||
"""Find names of variables which are written in the code
|
||||
@@ -1131,7 +1146,7 @@ class Bytecode:
|
||||
def main(args=None):
|
||||
import argparse
|
||||
|
||||
parser = argparse.ArgumentParser(color=True)
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument('-C', '--show-caches', action='store_true',
|
||||
help='show inline caches')
|
||||
parser.add_argument('-O', '--show-offsets', action='store_true',
|
||||
|
||||
Vendored
+87
-74
@@ -40,83 +40,96 @@ _intrinsic_1_descs = _opcode.get_intrinsic1_descs()
|
||||
_intrinsic_2_descs = _opcode.get_intrinsic2_descs()
|
||||
_special_method_names = _opcode.get_special_method_names()
|
||||
_common_constants = [builtins.AssertionError, builtins.NotImplementedError,
|
||||
builtins.tuple, builtins.all, builtins.any]
|
||||
builtins.tuple, builtins.all, builtins.any, builtins.list,
|
||||
builtins.set,
|
||||
# Append-only — must match CONSTANT_* in
|
||||
# Include/internal/pycore_opcode_utils.h.
|
||||
None, "", True, False, -1]
|
||||
_nb_ops = _opcode.get_nb_ops()
|
||||
|
||||
hascompare = [opmap["COMPARE_OP"]]
|
||||
|
||||
_cache_format = {
|
||||
"LOAD_GLOBAL": {
|
||||
"counter": 1,
|
||||
"index": 1,
|
||||
"module_keys_version": 1,
|
||||
"builtin_keys_version": 1,
|
||||
},
|
||||
"BINARY_OP": {
|
||||
"counter": 1,
|
||||
"descr": 4,
|
||||
},
|
||||
"UNPACK_SEQUENCE": {
|
||||
"counter": 1,
|
||||
},
|
||||
"COMPARE_OP": {
|
||||
"counter": 1,
|
||||
},
|
||||
"CONTAINS_OP": {
|
||||
"counter": 1,
|
||||
},
|
||||
"FOR_ITER": {
|
||||
"counter": 1,
|
||||
},
|
||||
"LOAD_SUPER_ATTR": {
|
||||
"counter": 1,
|
||||
},
|
||||
"LOAD_ATTR": {
|
||||
"counter": 1,
|
||||
"version": 2,
|
||||
"keys_version": 2,
|
||||
"descr": 4,
|
||||
},
|
||||
"STORE_ATTR": {
|
||||
"counter": 1,
|
||||
"version": 2,
|
||||
"index": 1,
|
||||
},
|
||||
"CALL": {
|
||||
"counter": 1,
|
||||
"func_version": 2,
|
||||
},
|
||||
"CALL_KW": {
|
||||
"counter": 1,
|
||||
"func_version": 2,
|
||||
},
|
||||
"STORE_SUBSCR": {
|
||||
"counter": 1,
|
||||
},
|
||||
"SEND": {
|
||||
"counter": 1,
|
||||
},
|
||||
"JUMP_BACKWARD": {
|
||||
"counter": 1,
|
||||
},
|
||||
"TO_BOOL": {
|
||||
"counter": 1,
|
||||
"version": 2,
|
||||
},
|
||||
"POP_JUMP_IF_TRUE": {
|
||||
"counter": 1,
|
||||
},
|
||||
"POP_JUMP_IF_FALSE": {
|
||||
"counter": 1,
|
||||
},
|
||||
"POP_JUMP_IF_NONE": {
|
||||
"counter": 1,
|
||||
},
|
||||
"POP_JUMP_IF_NOT_NONE": {
|
||||
"counter": 1,
|
||||
},
|
||||
}
|
||||
_cache_format = frozendict(
|
||||
LOAD_GLOBAL=frozendict(
|
||||
counter=1,
|
||||
index=1,
|
||||
module_keys_version=1,
|
||||
builtin_keys_version=1,
|
||||
),
|
||||
BINARY_OP=frozendict(
|
||||
counter=1,
|
||||
descr=4,
|
||||
),
|
||||
UNPACK_SEQUENCE=frozendict(
|
||||
counter=1,
|
||||
),
|
||||
COMPARE_OP=frozendict(
|
||||
counter=1,
|
||||
),
|
||||
CONTAINS_OP=frozendict(
|
||||
counter=1,
|
||||
),
|
||||
FOR_ITER=frozendict(
|
||||
counter=1,
|
||||
),
|
||||
GET_ITER=frozendict(
|
||||
counter=1,
|
||||
),
|
||||
LOAD_SUPER_ATTR=frozendict(
|
||||
counter=1,
|
||||
),
|
||||
LOAD_ATTR=frozendict(
|
||||
counter=1,
|
||||
version=2,
|
||||
keys_version=2,
|
||||
descr=4,
|
||||
),
|
||||
STORE_ATTR=frozendict(
|
||||
counter=1,
|
||||
version=2,
|
||||
index=1,
|
||||
),
|
||||
CALL=frozendict(
|
||||
counter=1,
|
||||
func_version=2,
|
||||
),
|
||||
CALL_KW=frozendict(
|
||||
counter=1,
|
||||
func_version=2,
|
||||
),
|
||||
CALL_FUNCTION_EX=frozendict(
|
||||
counter=1,
|
||||
),
|
||||
STORE_SUBSCR=frozendict(
|
||||
counter=1,
|
||||
),
|
||||
SEND=frozendict(
|
||||
counter=1,
|
||||
),
|
||||
JUMP_BACKWARD=frozendict(
|
||||
counter=1,
|
||||
),
|
||||
TO_BOOL=frozendict(
|
||||
counter=1,
|
||||
version=2,
|
||||
),
|
||||
POP_JUMP_IF_TRUE=frozendict(
|
||||
counter=1,
|
||||
),
|
||||
POP_JUMP_IF_FALSE=frozendict(
|
||||
counter=1,
|
||||
),
|
||||
POP_JUMP_IF_NONE=frozendict(
|
||||
counter=1,
|
||||
),
|
||||
POP_JUMP_IF_NOT_NONE=frozendict(
|
||||
counter=1,
|
||||
),
|
||||
RESUME=frozendict(
|
||||
counter=1,
|
||||
),
|
||||
)
|
||||
|
||||
_inline_cache_entries = {
|
||||
_inline_cache_entries = frozendict({
|
||||
name : sum(value.values()) for (name, value) in _cache_format.items()
|
||||
}
|
||||
})
|
||||
Reference in new issue
Block a user