gh-105481: generate _specializations and _specialized_instructions from bytecodes.c (#105913)

This commit is contained in:
Irit Katriel 2023-06-19 23:47:04 +01:00 committed by GitHub
parent 28187a9c4f
commit 33f0a8578b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
12 changed files with 345 additions and 277 deletions

108
Include/opcode.h generated
View file

@ -158,65 +158,65 @@ extern "C" {
#define LOAD_ZERO_SUPER_ATTR 265
#define STORE_FAST_MAYBE_NULL 266
#define MAX_PSEUDO_OPCODE 266
#define BINARY_OP_ADD_FLOAT 6
#define BINARY_OP_MULTIPLY_INT 6
#define BINARY_OP_ADD_INT 7
#define BINARY_OP_ADD_UNICODE 8
#define BINARY_OP_INPLACE_ADD_UNICODE 10
#define BINARY_OP_MULTIPLY_FLOAT 13
#define BINARY_OP_MULTIPLY_INT 14
#define BINARY_OP_SUBTRACT_FLOAT 16
#define BINARY_OP_SUBTRACT_INT 18
#define BINARY_OP_SUBTRACT_INT 8
#define BINARY_OP_MULTIPLY_FLOAT 10
#define BINARY_OP_ADD_FLOAT 13
#define BINARY_OP_SUBTRACT_FLOAT 14
#define BINARY_OP_ADD_UNICODE 16
#define BINARY_OP_INPLACE_ADD_UNICODE 18
#define BINARY_SUBSCR_DICT 19
#define BINARY_SUBSCR_GETITEM 20
#define BINARY_SUBSCR_LIST_INT 21
#define BINARY_SUBSCR_TUPLE_INT 22
#define CALL_PY_EXACT_ARGS 23
#define CALL_PY_WITH_DEFAULTS 28
#define CALL_BOUND_METHOD_EXACT_ARGS 29
#define CALL_BUILTIN_CLASS 34
#define CALL_BUILTIN_FAST_WITH_KEYWORDS 38
#define CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS 39
#define CALL_NO_KW_BUILTIN_FAST 42
#define CALL_NO_KW_BUILTIN_O 43
#define CALL_NO_KW_ISINSTANCE 44
#define CALL_NO_KW_LEN 45
#define CALL_NO_KW_LIST_APPEND 46
#define CALL_NO_KW_METHOD_DESCRIPTOR_FAST 47
#define CALL_NO_KW_METHOD_DESCRIPTOR_NOARGS 48
#define CALL_NO_KW_METHOD_DESCRIPTOR_O 56
#define CALL_NO_KW_STR_1 57
#define CALL_NO_KW_TUPLE_1 58
#define CALL_NO_KW_TYPE_1 59
#define COMPARE_OP_FLOAT 62
#define COMPARE_OP_INT 63
#define COMPARE_OP_STR 64
#define FOR_ITER_LIST 65
#define FOR_ITER_TUPLE 66
#define FOR_ITER_RANGE 67
#define FOR_ITER_GEN 70
#define LOAD_SUPER_ATTR_ATTR 72
#define LOAD_SUPER_ATTR_METHOD 73
#define LOAD_ATTR_CLASS 76
#define LOAD_ATTR_GETATTRIBUTE_OVERRIDDEN 77
#define LOAD_ATTR_INSTANCE_VALUE 78
#define LOAD_ATTR_MODULE 79
#define LOAD_ATTR_PROPERTY 80
#define LOAD_ATTR_SLOT 81
#define LOAD_ATTR_WITH_HINT 82
#define LOAD_ATTR_METHOD_LAZY_DICT 84
#define LOAD_ATTR_METHOD_NO_DICT 86
#define LOAD_ATTR_METHOD_WITH_VALUES 88
#define LOAD_GLOBAL_BUILTIN 111
#define LOAD_GLOBAL_MODULE 112
#define STORE_ATTR_INSTANCE_VALUE 113
#define STORE_ATTR_SLOT 132
#define STORE_ATTR_WITH_HINT 148
#define STORE_SUBSCR_DICT 153
#define STORE_SUBSCR_LIST_INT 154
#define UNPACK_SEQUENCE_LIST 155
#define UNPACK_SEQUENCE_TUPLE 159
#define UNPACK_SEQUENCE_TWO_TUPLE 160
#define SEND_GEN 161
#define STORE_SUBSCR_DICT 23
#define STORE_SUBSCR_LIST_INT 28
#define SEND_GEN 29
#define UNPACK_SEQUENCE_TWO_TUPLE 34
#define UNPACK_SEQUENCE_TUPLE 38
#define UNPACK_SEQUENCE_LIST 39
#define STORE_ATTR_INSTANCE_VALUE 42
#define STORE_ATTR_SLOT 43
#define STORE_ATTR_WITH_HINT 44
#define LOAD_GLOBAL_MODULE 45
#define LOAD_GLOBAL_BUILTIN 46
#define LOAD_SUPER_ATTR_ATTR 47
#define LOAD_SUPER_ATTR_METHOD 48
#define LOAD_ATTR_INSTANCE_VALUE 56
#define LOAD_ATTR_MODULE 57
#define LOAD_ATTR_WITH_HINT 58
#define LOAD_ATTR_SLOT 59
#define LOAD_ATTR_CLASS 62
#define LOAD_ATTR_PROPERTY 63
#define LOAD_ATTR_GETATTRIBUTE_OVERRIDDEN 64
#define LOAD_ATTR_METHOD_WITH_VALUES 65
#define LOAD_ATTR_METHOD_NO_DICT 66
#define LOAD_ATTR_METHOD_LAZY_DICT 67
#define COMPARE_OP_FLOAT 70
#define COMPARE_OP_INT 72
#define COMPARE_OP_STR 73
#define FOR_ITER_LIST 76
#define FOR_ITER_TUPLE 77
#define FOR_ITER_RANGE 78
#define FOR_ITER_GEN 79
#define CALL_BOUND_METHOD_EXACT_ARGS 80
#define CALL_PY_EXACT_ARGS 81
#define CALL_PY_WITH_DEFAULTS 82
#define CALL_NO_KW_TYPE_1 84
#define CALL_NO_KW_STR_1 86
#define CALL_NO_KW_TUPLE_1 88
#define CALL_BUILTIN_CLASS 111
#define CALL_NO_KW_BUILTIN_O 112
#define CALL_NO_KW_BUILTIN_FAST 113
#define CALL_BUILTIN_FAST_WITH_KEYWORDS 132
#define CALL_NO_KW_LEN 148
#define CALL_NO_KW_ISINSTANCE 153
#define CALL_NO_KW_LIST_APPEND 154
#define CALL_NO_KW_METHOD_DESCRIPTOR_O 155
#define CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS 159
#define CALL_NO_KW_METHOD_DESCRIPTOR_NOARGS 160
#define CALL_NO_KW_METHOD_DESCRIPTOR_FAST 161
#define NB_ADD 0
#define NB_AND 1