mirror of https://github.com/python/cpython
106 lines
2.8 KiB
Python
106 lines
2.8 KiB
Python
# This file is generated by Tools/cases_generator/generate_cases.py
|
|
# from:
|
|
# Python/bytecodes.c
|
|
# Do not edit!
|
|
|
|
_specializations = {
|
|
"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_SUBSCR": [
|
|
"BINARY_SUBSCR_DICT",
|
|
"BINARY_SUBSCR_GETITEM",
|
|
"BINARY_SUBSCR_LIST_INT",
|
|
"BINARY_SUBSCR_TUPLE_INT",
|
|
],
|
|
"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_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",
|
|
],
|
|
"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_PY_WITH_DEFAULTS",
|
|
"CALL_NO_KW_TYPE_1",
|
|
"CALL_NO_KW_STR_1",
|
|
"CALL_NO_KW_TUPLE_1",
|
|
"CALL_BUILTIN_CLASS",
|
|
"CALL_NO_KW_BUILTIN_O",
|
|
"CALL_NO_KW_BUILTIN_FAST",
|
|
"CALL_BUILTIN_FAST_WITH_KEYWORDS",
|
|
"CALL_NO_KW_LEN",
|
|
"CALL_NO_KW_ISINSTANCE",
|
|
"CALL_NO_KW_LIST_APPEND",
|
|
"CALL_NO_KW_METHOD_DESCRIPTOR_O",
|
|
"CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS",
|
|
"CALL_NO_KW_METHOD_DESCRIPTOR_NOARGS",
|
|
"CALL_NO_KW_METHOD_DESCRIPTOR_FAST",
|
|
"CALL_NO_KW_ALLOC_AND_ENTER_INIT",
|
|
],
|
|
}
|
|
|
|
# An irregular case:
|
|
_specializations["BINARY_OP"].append("BINARY_OP_INPLACE_ADD_UNICODE")
|
|
|
|
_specialized_instructions = [opcode for family in _specializations.values() for opcode in family]
|