mirror of
https://github.com/python/cpython.git
synced 2024-11-22 05:26:10 +01:00
9cefcc0ee7
* Remove BEFORE_WITH and BEFORE_ASYNC_WITH instructions. * Add LOAD_SPECIAL instruction * Reimplement `with` and `async with` statements using LOAD_SPECIAL
240 lines
11 KiB
C
Generated
240 lines
11 KiB
C
Generated
// This file is generated by Tools/cases_generator/opcode_id_generator.py
|
|
// from:
|
|
// Python/bytecodes.c
|
|
// Do not edit!
|
|
|
|
#ifndef Py_OPCODE_IDS_H
|
|
#define Py_OPCODE_IDS_H
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
/* Instruction opcodes for compiled code */
|
|
#define CACHE 0
|
|
#define BINARY_SLICE 1
|
|
#define BINARY_SUBSCR 2
|
|
#define BINARY_OP_INPLACE_ADD_UNICODE 3
|
|
#define CHECK_EG_MATCH 4
|
|
#define CHECK_EXC_MATCH 5
|
|
#define CLEANUP_THROW 6
|
|
#define DELETE_SUBSCR 7
|
|
#define END_ASYNC_FOR 8
|
|
#define END_FOR 9
|
|
#define END_SEND 10
|
|
#define EXIT_INIT_CHECK 11
|
|
#define FORMAT_SIMPLE 12
|
|
#define FORMAT_WITH_SPEC 13
|
|
#define GET_AITER 14
|
|
#define GET_ANEXT 15
|
|
#define GET_ITER 16
|
|
#define RESERVED 17
|
|
#define GET_LEN 18
|
|
#define GET_YIELD_FROM_ITER 19
|
|
#define INTERPRETER_EXIT 20
|
|
#define LOAD_BUILD_CLASS 21
|
|
#define LOAD_LOCALS 22
|
|
#define MAKE_FUNCTION 23
|
|
#define MATCH_KEYS 24
|
|
#define MATCH_MAPPING 25
|
|
#define MATCH_SEQUENCE 26
|
|
#define NOP 27
|
|
#define POP_EXCEPT 28
|
|
#define POP_TOP 29
|
|
#define PUSH_EXC_INFO 30
|
|
#define PUSH_NULL 31
|
|
#define RETURN_GENERATOR 32
|
|
#define RETURN_VALUE 33
|
|
#define SETUP_ANNOTATIONS 34
|
|
#define STORE_SLICE 35
|
|
#define STORE_SUBSCR 36
|
|
#define TO_BOOL 37
|
|
#define UNARY_INVERT 38
|
|
#define UNARY_NEGATIVE 39
|
|
#define UNARY_NOT 40
|
|
#define WITH_EXCEPT_START 41
|
|
#define BINARY_OP 42
|
|
#define BUILD_CONST_KEY_MAP 43
|
|
#define BUILD_LIST 44
|
|
#define BUILD_MAP 45
|
|
#define BUILD_SET 46
|
|
#define BUILD_SLICE 47
|
|
#define BUILD_STRING 48
|
|
#define BUILD_TUPLE 49
|
|
#define CALL 50
|
|
#define CALL_FUNCTION_EX 51
|
|
#define CALL_INTRINSIC_1 52
|
|
#define CALL_INTRINSIC_2 53
|
|
#define CALL_KW 54
|
|
#define COMPARE_OP 55
|
|
#define CONTAINS_OP 56
|
|
#define CONVERT_VALUE 57
|
|
#define COPY 58
|
|
#define COPY_FREE_VARS 59
|
|
#define DELETE_ATTR 60
|
|
#define DELETE_DEREF 61
|
|
#define DELETE_FAST 62
|
|
#define DELETE_GLOBAL 63
|
|
#define DELETE_NAME 64
|
|
#define DICT_MERGE 65
|
|
#define DICT_UPDATE 66
|
|
#define ENTER_EXECUTOR 67
|
|
#define EXTENDED_ARG 68
|
|
#define FOR_ITER 69
|
|
#define GET_AWAITABLE 70
|
|
#define IMPORT_FROM 71
|
|
#define IMPORT_NAME 72
|
|
#define IS_OP 73
|
|
#define JUMP_BACKWARD 74
|
|
#define JUMP_BACKWARD_NO_INTERRUPT 75
|
|
#define JUMP_FORWARD 76
|
|
#define LIST_APPEND 77
|
|
#define LIST_EXTEND 78
|
|
#define LOAD_ATTR 79
|
|
#define LOAD_COMMON_CONSTANT 80
|
|
#define LOAD_CONST 81
|
|
#define LOAD_DEREF 82
|
|
#define LOAD_FAST 83
|
|
#define LOAD_FAST_AND_CLEAR 84
|
|
#define LOAD_FAST_CHECK 85
|
|
#define LOAD_FAST_LOAD_FAST 86
|
|
#define LOAD_FROM_DICT_OR_DEREF 87
|
|
#define LOAD_FROM_DICT_OR_GLOBALS 88
|
|
#define LOAD_GLOBAL 89
|
|
#define LOAD_NAME 90
|
|
#define LOAD_SPECIAL 91
|
|
#define LOAD_SUPER_ATTR 92
|
|
#define MAKE_CELL 93
|
|
#define MAP_ADD 94
|
|
#define MATCH_CLASS 95
|
|
#define POP_JUMP_IF_FALSE 96
|
|
#define POP_JUMP_IF_NONE 97
|
|
#define POP_JUMP_IF_NOT_NONE 98
|
|
#define POP_JUMP_IF_TRUE 99
|
|
#define RAISE_VARARGS 100
|
|
#define RERAISE 101
|
|
#define RETURN_CONST 102
|
|
#define SEND 103
|
|
#define SET_ADD 104
|
|
#define SET_FUNCTION_ATTRIBUTE 105
|
|
#define SET_UPDATE 106
|
|
#define STORE_ATTR 107
|
|
#define STORE_DEREF 108
|
|
#define STORE_FAST 109
|
|
#define STORE_FAST_LOAD_FAST 110
|
|
#define STORE_FAST_STORE_FAST 111
|
|
#define STORE_GLOBAL 112
|
|
#define STORE_NAME 113
|
|
#define SWAP 114
|
|
#define UNPACK_EX 115
|
|
#define UNPACK_SEQUENCE 116
|
|
#define YIELD_VALUE 117
|
|
#define RESUME 149
|
|
#define BINARY_OP_ADD_FLOAT 150
|
|
#define BINARY_OP_ADD_INT 151
|
|
#define BINARY_OP_ADD_UNICODE 152
|
|
#define BINARY_OP_MULTIPLY_FLOAT 153
|
|
#define BINARY_OP_MULTIPLY_INT 154
|
|
#define BINARY_OP_SUBTRACT_FLOAT 155
|
|
#define BINARY_OP_SUBTRACT_INT 156
|
|
#define BINARY_SUBSCR_DICT 157
|
|
#define BINARY_SUBSCR_GETITEM 158
|
|
#define BINARY_SUBSCR_LIST_INT 159
|
|
#define BINARY_SUBSCR_STR_INT 160
|
|
#define BINARY_SUBSCR_TUPLE_INT 161
|
|
#define CALL_ALLOC_AND_ENTER_INIT 162
|
|
#define CALL_BOUND_METHOD_EXACT_ARGS 163
|
|
#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
|
|
#define INSTRUMENTED_RETURN_VALUE 239
|
|
#define INSTRUMENTED_RETURN_CONST 240
|
|
#define INSTRUMENTED_YIELD_VALUE 241
|
|
#define INSTRUMENTED_LOAD_SUPER_ATTR 242
|
|
#define INSTRUMENTED_FOR_ITER 243
|
|
#define INSTRUMENTED_CALL 244
|
|
#define INSTRUMENTED_CALL_KW 245
|
|
#define INSTRUMENTED_CALL_FUNCTION_EX 246
|
|
#define INSTRUMENTED_INSTRUCTION 247
|
|
#define INSTRUMENTED_JUMP_FORWARD 248
|
|
#define INSTRUMENTED_JUMP_BACKWARD 249
|
|
#define INSTRUMENTED_POP_JUMP_IF_TRUE 250
|
|
#define INSTRUMENTED_POP_JUMP_IF_FALSE 251
|
|
#define INSTRUMENTED_POP_JUMP_IF_NONE 252
|
|
#define INSTRUMENTED_POP_JUMP_IF_NOT_NONE 253
|
|
#define INSTRUMENTED_LINE 254
|
|
#define JUMP 256
|
|
#define JUMP_NO_INTERRUPT 257
|
|
#define LOAD_CLOSURE 258
|
|
#define POP_BLOCK 259
|
|
#define SETUP_CLEANUP 260
|
|
#define SETUP_FINALLY 261
|
|
#define SETUP_WITH 262
|
|
#define STORE_FAST_MAYBE_NULL 263
|
|
|
|
#define HAVE_ARGUMENT 41
|
|
#define MIN_INSTRUMENTED_OPCODE 236
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
#endif /* !Py_OPCODE_IDS_H */
|