comparison CSP2/CSP2_env/env-d9b9114564458d9d-741b3de822f2aaca6c6caa4325c4afce/include/python3.8/opcode.h @ 69:33d812a61356

planemo upload commit 2e9511a184a1ca667c7be0c6321a36dc4e3d116d
author jpayne
date Tue, 18 Mar 2025 17:55:14 -0400
parents
children
comparison
equal deleted inserted replaced
67:0e9998148a16 69:33d812a61356
1 /* Auto-generated by Tools/scripts/generate_opcode_h.py from Lib/opcode.py */
2 #ifndef Py_OPCODE_H
3 #define Py_OPCODE_H
4 #ifdef __cplusplus
5 extern "C" {
6 #endif
7
8
9 /* Instruction opcodes for compiled code */
10 #define POP_TOP 1
11 #define ROT_TWO 2
12 #define ROT_THREE 3
13 #define DUP_TOP 4
14 #define DUP_TOP_TWO 5
15 #define ROT_FOUR 6
16 #define NOP 9
17 #define UNARY_POSITIVE 10
18 #define UNARY_NEGATIVE 11
19 #define UNARY_NOT 12
20 #define UNARY_INVERT 15
21 #define BINARY_MATRIX_MULTIPLY 16
22 #define INPLACE_MATRIX_MULTIPLY 17
23 #define BINARY_POWER 19
24 #define BINARY_MULTIPLY 20
25 #define BINARY_MODULO 22
26 #define BINARY_ADD 23
27 #define BINARY_SUBTRACT 24
28 #define BINARY_SUBSCR 25
29 #define BINARY_FLOOR_DIVIDE 26
30 #define BINARY_TRUE_DIVIDE 27
31 #define INPLACE_FLOOR_DIVIDE 28
32 #define INPLACE_TRUE_DIVIDE 29
33 #define GET_AITER 50
34 #define GET_ANEXT 51
35 #define BEFORE_ASYNC_WITH 52
36 #define BEGIN_FINALLY 53
37 #define END_ASYNC_FOR 54
38 #define INPLACE_ADD 55
39 #define INPLACE_SUBTRACT 56
40 #define INPLACE_MULTIPLY 57
41 #define INPLACE_MODULO 59
42 #define STORE_SUBSCR 60
43 #define DELETE_SUBSCR 61
44 #define BINARY_LSHIFT 62
45 #define BINARY_RSHIFT 63
46 #define BINARY_AND 64
47 #define BINARY_XOR 65
48 #define BINARY_OR 66
49 #define INPLACE_POWER 67
50 #define GET_ITER 68
51 #define GET_YIELD_FROM_ITER 69
52 #define PRINT_EXPR 70
53 #define LOAD_BUILD_CLASS 71
54 #define YIELD_FROM 72
55 #define GET_AWAITABLE 73
56 #define INPLACE_LSHIFT 75
57 #define INPLACE_RSHIFT 76
58 #define INPLACE_AND 77
59 #define INPLACE_XOR 78
60 #define INPLACE_OR 79
61 #define WITH_CLEANUP_START 81
62 #define WITH_CLEANUP_FINISH 82
63 #define RETURN_VALUE 83
64 #define IMPORT_STAR 84
65 #define SETUP_ANNOTATIONS 85
66 #define YIELD_VALUE 86
67 #define POP_BLOCK 87
68 #define END_FINALLY 88
69 #define POP_EXCEPT 89
70 #define HAVE_ARGUMENT 90
71 #define STORE_NAME 90
72 #define DELETE_NAME 91
73 #define UNPACK_SEQUENCE 92
74 #define FOR_ITER 93
75 #define UNPACK_EX 94
76 #define STORE_ATTR 95
77 #define DELETE_ATTR 96
78 #define STORE_GLOBAL 97
79 #define DELETE_GLOBAL 98
80 #define LOAD_CONST 100
81 #define LOAD_NAME 101
82 #define BUILD_TUPLE 102
83 #define BUILD_LIST 103
84 #define BUILD_SET 104
85 #define BUILD_MAP 105
86 #define LOAD_ATTR 106
87 #define COMPARE_OP 107
88 #define IMPORT_NAME 108
89 #define IMPORT_FROM 109
90 #define JUMP_FORWARD 110
91 #define JUMP_IF_FALSE_OR_POP 111
92 #define JUMP_IF_TRUE_OR_POP 112
93 #define JUMP_ABSOLUTE 113
94 #define POP_JUMP_IF_FALSE 114
95 #define POP_JUMP_IF_TRUE 115
96 #define LOAD_GLOBAL 116
97 #define SETUP_FINALLY 122
98 #define LOAD_FAST 124
99 #define STORE_FAST 125
100 #define DELETE_FAST 126
101 #define RAISE_VARARGS 130
102 #define CALL_FUNCTION 131
103 #define MAKE_FUNCTION 132
104 #define BUILD_SLICE 133
105 #define LOAD_CLOSURE 135
106 #define LOAD_DEREF 136
107 #define STORE_DEREF 137
108 #define DELETE_DEREF 138
109 #define CALL_FUNCTION_KW 141
110 #define CALL_FUNCTION_EX 142
111 #define SETUP_WITH 143
112 #define EXTENDED_ARG 144
113 #define LIST_APPEND 145
114 #define SET_ADD 146
115 #define MAP_ADD 147
116 #define LOAD_CLASSDEREF 148
117 #define BUILD_LIST_UNPACK 149
118 #define BUILD_MAP_UNPACK 150
119 #define BUILD_MAP_UNPACK_WITH_CALL 151
120 #define BUILD_TUPLE_UNPACK 152
121 #define BUILD_SET_UNPACK 153
122 #define SETUP_ASYNC_WITH 154
123 #define FORMAT_VALUE 155
124 #define BUILD_CONST_KEY_MAP 156
125 #define BUILD_STRING 157
126 #define BUILD_TUPLE_UNPACK_WITH_CALL 158
127 #define LOAD_METHOD 160
128 #define CALL_METHOD 161
129 #define CALL_FINALLY 162
130 #define POP_FINALLY 163
131
132 /* EXCEPT_HANDLER is a special, implicit block type which is created when
133 entering an except handler. It is not an opcode but we define it here
134 as we want it to be available to both frameobject.c and ceval.c, while
135 remaining private.*/
136 #define EXCEPT_HANDLER 257
137
138
139 enum cmp_op {PyCmp_LT=Py_LT, PyCmp_LE=Py_LE, PyCmp_EQ=Py_EQ, PyCmp_NE=Py_NE,
140 PyCmp_GT=Py_GT, PyCmp_GE=Py_GE, PyCmp_IN, PyCmp_NOT_IN,
141 PyCmp_IS, PyCmp_IS_NOT, PyCmp_EXC_MATCH, PyCmp_BAD};
142
143 #define HAS_ARG(op) ((op) >= HAVE_ARGUMENT)
144
145 #ifdef __cplusplus
146 }
147 #endif
148 #endif /* !Py_OPCODE_H */