mirror of
https://github.com/python/cpython
synced 2026-09-29 12:10:30 +03:00
GH-118095: Use broader specializations of CALL in tier 1, for better tier 2 support of calls. (GH-118322)
* Add CALL_PY_GENERAL, CALL_BOUND_METHOD_GENERAL and call CALL_NON_PY_GENERAL specializations. * Remove CALL_PY_WITH_DEFAULTS specialization * Use CALL_NON_PY_GENERAL in more cases when otherwise failing to specialize
This commit is contained in:
parent
00da0afa0d
commit
1ab6356ebe
19 changed files with 862 additions and 447 deletions
116
Include/opcode_ids.h
generated
116
Include/opcode_ids.h
generated
|
|
@ -144,63 +144,65 @@ extern "C" {
|
|||
#define BINARY_SUBSCR_TUPLE_INT 161
|
||||
#define CALL_ALLOC_AND_ENTER_INIT 162
|
||||
#define CALL_BOUND_METHOD_EXACT_ARGS 163
|
||||
#define CALL_BUILTIN_CLASS 164
|
||||
#define CALL_BUILTIN_FAST 165
|
||||
#define CALL_BUILTIN_FAST_WITH_KEYWORDS 166
|
||||
#define CALL_BUILTIN_O 167
|
||||
#define CALL_ISINSTANCE 168
|
||||
#define CALL_LEN 169
|
||||
#define CALL_LIST_APPEND 170
|
||||
#define CALL_METHOD_DESCRIPTOR_FAST 171
|
||||
#define CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS 172
|
||||
#define CALL_METHOD_DESCRIPTOR_NOARGS 173
|
||||
#define CALL_METHOD_DESCRIPTOR_O 174
|
||||
#define CALL_PY_EXACT_ARGS 175
|
||||
#define CALL_PY_WITH_DEFAULTS 176
|
||||
#define CALL_STR_1 177
|
||||
#define CALL_TUPLE_1 178
|
||||
#define CALL_TYPE_1 179
|
||||
#define COMPARE_OP_FLOAT 180
|
||||
#define COMPARE_OP_INT 181
|
||||
#define COMPARE_OP_STR 182
|
||||
#define CONTAINS_OP_DICT 183
|
||||
#define CONTAINS_OP_SET 184
|
||||
#define FOR_ITER_GEN 185
|
||||
#define FOR_ITER_LIST 186
|
||||
#define FOR_ITER_RANGE 187
|
||||
#define FOR_ITER_TUPLE 188
|
||||
#define LOAD_ATTR_CLASS 189
|
||||
#define LOAD_ATTR_GETATTRIBUTE_OVERRIDDEN 190
|
||||
#define LOAD_ATTR_INSTANCE_VALUE 191
|
||||
#define LOAD_ATTR_METHOD_LAZY_DICT 192
|
||||
#define LOAD_ATTR_METHOD_NO_DICT 193
|
||||
#define LOAD_ATTR_METHOD_WITH_VALUES 194
|
||||
#define LOAD_ATTR_MODULE 195
|
||||
#define LOAD_ATTR_NONDESCRIPTOR_NO_DICT 196
|
||||
#define LOAD_ATTR_NONDESCRIPTOR_WITH_VALUES 197
|
||||
#define LOAD_ATTR_PROPERTY 198
|
||||
#define LOAD_ATTR_SLOT 199
|
||||
#define LOAD_ATTR_WITH_HINT 200
|
||||
#define LOAD_GLOBAL_BUILTIN 201
|
||||
#define LOAD_GLOBAL_MODULE 202
|
||||
#define LOAD_SUPER_ATTR_ATTR 203
|
||||
#define LOAD_SUPER_ATTR_METHOD 204
|
||||
#define RESUME_CHECK 205
|
||||
#define SEND_GEN 206
|
||||
#define STORE_ATTR_INSTANCE_VALUE 207
|
||||
#define STORE_ATTR_SLOT 208
|
||||
#define STORE_ATTR_WITH_HINT 209
|
||||
#define STORE_SUBSCR_DICT 210
|
||||
#define STORE_SUBSCR_LIST_INT 211
|
||||
#define TO_BOOL_ALWAYS_TRUE 212
|
||||
#define TO_BOOL_BOOL 213
|
||||
#define TO_BOOL_INT 214
|
||||
#define TO_BOOL_LIST 215
|
||||
#define TO_BOOL_NONE 216
|
||||
#define TO_BOOL_STR 217
|
||||
#define UNPACK_SEQUENCE_LIST 218
|
||||
#define UNPACK_SEQUENCE_TUPLE 219
|
||||
#define UNPACK_SEQUENCE_TWO_TUPLE 220
|
||||
#define CALL_BOUND_METHOD_GENERAL 164
|
||||
#define CALL_BUILTIN_CLASS 165
|
||||
#define CALL_BUILTIN_FAST 166
|
||||
#define CALL_BUILTIN_FAST_WITH_KEYWORDS 167
|
||||
#define CALL_BUILTIN_O 168
|
||||
#define CALL_ISINSTANCE 169
|
||||
#define CALL_LEN 170
|
||||
#define CALL_LIST_APPEND 171
|
||||
#define CALL_METHOD_DESCRIPTOR_FAST 172
|
||||
#define CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS 173
|
||||
#define CALL_METHOD_DESCRIPTOR_NOARGS 174
|
||||
#define CALL_METHOD_DESCRIPTOR_O 175
|
||||
#define CALL_NON_PY_GENERAL 176
|
||||
#define CALL_PY_EXACT_ARGS 177
|
||||
#define CALL_PY_GENERAL 178
|
||||
#define CALL_STR_1 179
|
||||
#define CALL_TUPLE_1 180
|
||||
#define CALL_TYPE_1 181
|
||||
#define COMPARE_OP_FLOAT 182
|
||||
#define COMPARE_OP_INT 183
|
||||
#define COMPARE_OP_STR 184
|
||||
#define CONTAINS_OP_DICT 185
|
||||
#define CONTAINS_OP_SET 186
|
||||
#define FOR_ITER_GEN 187
|
||||
#define FOR_ITER_LIST 188
|
||||
#define FOR_ITER_RANGE 189
|
||||
#define FOR_ITER_TUPLE 190
|
||||
#define LOAD_ATTR_CLASS 191
|
||||
#define LOAD_ATTR_GETATTRIBUTE_OVERRIDDEN 192
|
||||
#define LOAD_ATTR_INSTANCE_VALUE 193
|
||||
#define LOAD_ATTR_METHOD_LAZY_DICT 194
|
||||
#define LOAD_ATTR_METHOD_NO_DICT 195
|
||||
#define LOAD_ATTR_METHOD_WITH_VALUES 196
|
||||
#define LOAD_ATTR_MODULE 197
|
||||
#define LOAD_ATTR_NONDESCRIPTOR_NO_DICT 198
|
||||
#define LOAD_ATTR_NONDESCRIPTOR_WITH_VALUES 199
|
||||
#define LOAD_ATTR_PROPERTY 200
|
||||
#define LOAD_ATTR_SLOT 201
|
||||
#define LOAD_ATTR_WITH_HINT 202
|
||||
#define LOAD_GLOBAL_BUILTIN 203
|
||||
#define LOAD_GLOBAL_MODULE 204
|
||||
#define LOAD_SUPER_ATTR_ATTR 205
|
||||
#define LOAD_SUPER_ATTR_METHOD 206
|
||||
#define RESUME_CHECK 207
|
||||
#define SEND_GEN 208
|
||||
#define STORE_ATTR_INSTANCE_VALUE 209
|
||||
#define STORE_ATTR_SLOT 210
|
||||
#define STORE_ATTR_WITH_HINT 211
|
||||
#define STORE_SUBSCR_DICT 212
|
||||
#define STORE_SUBSCR_LIST_INT 213
|
||||
#define TO_BOOL_ALWAYS_TRUE 214
|
||||
#define TO_BOOL_BOOL 215
|
||||
#define TO_BOOL_INT 216
|
||||
#define TO_BOOL_LIST 217
|
||||
#define TO_BOOL_NONE 218
|
||||
#define TO_BOOL_STR 219
|
||||
#define UNPACK_SEQUENCE_LIST 220
|
||||
#define UNPACK_SEQUENCE_TUPLE 221
|
||||
#define UNPACK_SEQUENCE_TWO_TUPLE 222
|
||||
#define INSTRUMENTED_RESUME 236
|
||||
#define INSTRUMENTED_END_FOR 237
|
||||
#define INSTRUMENTED_END_SEND 238
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue