gh-132661: Implement PEP 750 (#132662)

Co-authored-by: Lysandros Nikolaou <lisandrosnik@gmail.com>
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
Co-authored-by: Wingy <git@wingysam.xyz>
Co-authored-by: Koudai Aono <koxudaxi@gmail.com>
Co-authored-by: Dave Peck <davepeck@gmail.com>
Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
Co-authored-by: Paul Everitt <pauleveritt@me.com>
Co-authored-by: sobolevn <mail@sobolevn.me>
This commit is contained in:
Lysandros Nikolaou 2025-04-30 11:46:41 +02:00 committed by GitHub
parent 5ea9010e89
commit 60202609a2
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
81 changed files with 7716 additions and 3761 deletions

234
Include/opcode_ids.h generated
View file

@ -12,123 +12,125 @@ extern "C" {
/* Instruction opcodes for compiled code */
#define CACHE 0
#define BINARY_SLICE 1
#define CALL_FUNCTION_EX 2
#define BUILD_TEMPLATE 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_FOR 8
#define END_SEND 9
#define EXIT_INIT_CHECK 10
#define FORMAT_SIMPLE 11
#define FORMAT_WITH_SPEC 12
#define GET_AITER 13
#define GET_ANEXT 14
#define GET_ITER 15
#define GET_LEN 16
#define CALL_FUNCTION_EX 4
#define CHECK_EG_MATCH 5
#define CHECK_EXC_MATCH 6
#define CLEANUP_THROW 7
#define DELETE_SUBSCR 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_YIELD_FROM_ITER 18
#define INTERPRETER_EXIT 19
#define LOAD_BUILD_CLASS 20
#define LOAD_LOCALS 21
#define MAKE_FUNCTION 22
#define MATCH_KEYS 23
#define MATCH_MAPPING 24
#define MATCH_SEQUENCE 25
#define NOP 26
#define NOT_TAKEN 27
#define POP_EXCEPT 28
#define POP_ITER 29
#define POP_TOP 30
#define PUSH_EXC_INFO 31
#define PUSH_NULL 32
#define RETURN_GENERATOR 33
#define RETURN_VALUE 34
#define SETUP_ANNOTATIONS 35
#define STORE_SLICE 36
#define STORE_SUBSCR 37
#define TO_BOOL 38
#define UNARY_INVERT 39
#define UNARY_NEGATIVE 40
#define UNARY_NOT 41
#define WITH_EXCEPT_START 42
#define BINARY_OP 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_INTRINSIC_1 51
#define CALL_INTRINSIC_2 52
#define CALL_KW 53
#define COMPARE_OP 54
#define CONTAINS_OP 55
#define CONVERT_VALUE 56
#define COPY 57
#define COPY_FREE_VARS 58
#define DELETE_ATTR 59
#define DELETE_DEREF 60
#define DELETE_FAST 61
#define DELETE_GLOBAL 62
#define DELETE_NAME 63
#define DICT_MERGE 64
#define DICT_UPDATE 65
#define END_ASYNC_FOR 66
#define EXTENDED_ARG 67
#define FOR_ITER 68
#define GET_AWAITABLE 69
#define IMPORT_FROM 70
#define IMPORT_NAME 71
#define IS_OP 72
#define JUMP_BACKWARD 73
#define JUMP_BACKWARD_NO_INTERRUPT 74
#define JUMP_FORWARD 75
#define LIST_APPEND 76
#define LIST_EXTEND 77
#define LOAD_ATTR 78
#define LOAD_COMMON_CONSTANT 79
#define LOAD_CONST 80
#define LOAD_DEREF 81
#define LOAD_FAST 82
#define LOAD_FAST_AND_CLEAR 83
#define LOAD_FAST_BORROW 84
#define LOAD_FAST_BORROW_LOAD_FAST_BORROW 85
#define LOAD_FAST_CHECK 86
#define LOAD_FAST_LOAD_FAST 87
#define LOAD_FROM_DICT_OR_DEREF 88
#define LOAD_FROM_DICT_OR_GLOBALS 89
#define LOAD_GLOBAL 90
#define LOAD_NAME 91
#define LOAD_SMALL_INT 92
#define LOAD_SPECIAL 93
#define LOAD_SUPER_ATTR 94
#define MAKE_CELL 95
#define MAP_ADD 96
#define MATCH_CLASS 97
#define POP_JUMP_IF_FALSE 98
#define POP_JUMP_IF_NONE 99
#define POP_JUMP_IF_NOT_NONE 100
#define POP_JUMP_IF_TRUE 101
#define RAISE_VARARGS 102
#define RERAISE 103
#define SEND 104
#define SET_ADD 105
#define SET_FUNCTION_ATTRIBUTE 106
#define SET_UPDATE 107
#define STORE_ATTR 108
#define STORE_DEREF 109
#define STORE_FAST 110
#define STORE_FAST_LOAD_FAST 111
#define STORE_FAST_STORE_FAST 112
#define STORE_GLOBAL 113
#define STORE_NAME 114
#define SWAP 115
#define UNPACK_EX 116
#define UNPACK_SEQUENCE 117
#define YIELD_VALUE 118
#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 NOT_TAKEN 28
#define POP_EXCEPT 29
#define POP_ITER 30
#define POP_TOP 31
#define PUSH_EXC_INFO 32
#define PUSH_NULL 33
#define RETURN_GENERATOR 34
#define RETURN_VALUE 35
#define SETUP_ANNOTATIONS 36
#define STORE_SLICE 37
#define STORE_SUBSCR 38
#define TO_BOOL 39
#define UNARY_INVERT 40
#define UNARY_NEGATIVE 41
#define UNARY_NOT 42
#define WITH_EXCEPT_START 43
#define BINARY_OP 44
#define BUILD_INTERPOLATION 45
#define BUILD_LIST 46
#define BUILD_MAP 47
#define BUILD_SET 48
#define BUILD_SLICE 49
#define BUILD_STRING 50
#define BUILD_TUPLE 51
#define CALL 52
#define CALL_INTRINSIC_1 53
#define CALL_INTRINSIC_2 54
#define CALL_KW 55
#define COMPARE_OP 56
#define CONTAINS_OP 57
#define CONVERT_VALUE 58
#define COPY 59
#define COPY_FREE_VARS 60
#define DELETE_ATTR 61
#define DELETE_DEREF 62
#define DELETE_FAST 63
#define DELETE_GLOBAL 64
#define DELETE_NAME 65
#define DICT_MERGE 66
#define DICT_UPDATE 67
#define END_ASYNC_FOR 68
#define EXTENDED_ARG 69
#define FOR_ITER 70
#define GET_AWAITABLE 71
#define IMPORT_FROM 72
#define IMPORT_NAME 73
#define IS_OP 74
#define JUMP_BACKWARD 75
#define JUMP_BACKWARD_NO_INTERRUPT 76
#define JUMP_FORWARD 77
#define LIST_APPEND 78
#define LIST_EXTEND 79
#define LOAD_ATTR 80
#define LOAD_COMMON_CONSTANT 81
#define LOAD_CONST 82
#define LOAD_DEREF 83
#define LOAD_FAST 84
#define LOAD_FAST_AND_CLEAR 85
#define LOAD_FAST_BORROW 86
#define LOAD_FAST_BORROW_LOAD_FAST_BORROW 87
#define LOAD_FAST_CHECK 88
#define LOAD_FAST_LOAD_FAST 89
#define LOAD_FROM_DICT_OR_DEREF 90
#define LOAD_FROM_DICT_OR_GLOBALS 91
#define LOAD_GLOBAL 92
#define LOAD_NAME 93
#define LOAD_SMALL_INT 94
#define LOAD_SPECIAL 95
#define LOAD_SUPER_ATTR 96
#define MAKE_CELL 97
#define MAP_ADD 98
#define MATCH_CLASS 99
#define POP_JUMP_IF_FALSE 100
#define POP_JUMP_IF_NONE 101
#define POP_JUMP_IF_NOT_NONE 102
#define POP_JUMP_IF_TRUE 103
#define RAISE_VARARGS 104
#define RERAISE 105
#define SEND 106
#define SET_ADD 107
#define SET_FUNCTION_ATTRIBUTE 108
#define SET_UPDATE 109
#define STORE_ATTR 110
#define STORE_DEREF 111
#define STORE_FAST 112
#define STORE_FAST_LOAD_FAST 113
#define STORE_FAST_STORE_FAST 114
#define STORE_GLOBAL 115
#define STORE_NAME 116
#define SWAP 117
#define UNPACK_EX 118
#define UNPACK_SEQUENCE 119
#define YIELD_VALUE 120
#define RESUME 128
#define BINARY_OP_ADD_FLOAT 129
#define BINARY_OP_ADD_INT 130
@ -246,7 +248,7 @@ extern "C" {
#define SETUP_WITH 265
#define STORE_FAST_MAYBE_NULL 266
#define HAVE_ARGUMENT 42
#define HAVE_ARGUMENT 43
#define MIN_SPECIALIZED_OPCODE 129
#define MIN_INSTRUMENTED_OPCODE 234