mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 13:41:24 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			131 lines
		
	
	
	
		
			4.1 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			131 lines
		
	
	
	
		
			4.1 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /* Auto-generated by Tools/scripts/generate_opcode_h.py */
 | |
| #ifndef Py_OPCODE_H
 | |
| #define Py_OPCODE_H
 | |
| #ifdef __cplusplus
 | |
| extern "C" {
 | |
| #endif
 | |
| 
 | |
| 
 | |
|     /* Instruction opcodes for compiled code */
 | |
| #define POP_TOP             	1  
 | |
| #define ROT_TWO             	2  
 | |
| #define ROT_THREE           	3  
 | |
| #define DUP_TOP             	4  
 | |
| #define DUP_TOP_TWO         	5  
 | |
| #define NOP                 	9  
 | |
| #define UNARY_POSITIVE      	10 
 | |
| #define UNARY_NEGATIVE      	11 
 | |
| #define UNARY_NOT           	12 
 | |
| #define UNARY_INVERT        	15 
 | |
| #define BINARY_MATRIX_MULTIPLY	16 
 | |
| #define INPLACE_MATRIX_MULTIPLY	17 
 | |
| #define BINARY_POWER        	19 
 | |
| #define BINARY_MULTIPLY     	20 
 | |
| #define BINARY_MODULO       	22 
 | |
| #define BINARY_ADD          	23 
 | |
| #define BINARY_SUBTRACT     	24 
 | |
| #define BINARY_SUBSCR       	25 
 | |
| #define BINARY_FLOOR_DIVIDE 	26 
 | |
| #define BINARY_TRUE_DIVIDE  	27 
 | |
| #define INPLACE_FLOOR_DIVIDE	28 
 | |
| #define INPLACE_TRUE_DIVIDE 	29 
 | |
| #define STORE_MAP           	54 
 | |
| #define INPLACE_ADD         	55 
 | |
| #define INPLACE_SUBTRACT    	56 
 | |
| #define INPLACE_MULTIPLY    	57 
 | |
| #define INPLACE_MODULO      	59 
 | |
| #define STORE_SUBSCR        	60 
 | |
| #define DELETE_SUBSCR       	61 
 | |
| #define BINARY_LSHIFT       	62 
 | |
| #define BINARY_RSHIFT       	63 
 | |
| #define BINARY_AND          	64 
 | |
| #define BINARY_XOR          	65 
 | |
| #define BINARY_OR           	66 
 | |
| #define INPLACE_POWER       	67 
 | |
| #define GET_ITER            	68 
 | |
| #define PRINT_EXPR          	70 
 | |
| #define LOAD_BUILD_CLASS    	71 
 | |
| #define YIELD_FROM          	72 
 | |
| #define INPLACE_LSHIFT      	75 
 | |
| #define INPLACE_RSHIFT      	76 
 | |
| #define INPLACE_AND         	77 
 | |
| #define INPLACE_XOR         	78 
 | |
| #define INPLACE_OR          	79 
 | |
| #define BREAK_LOOP          	80 
 | |
| #define WITH_CLEANUP        	81 
 | |
| #define RETURN_VALUE        	83 
 | |
| #define IMPORT_STAR         	84 
 | |
| #define YIELD_VALUE         	86 
 | |
| #define POP_BLOCK           	87 
 | |
| #define END_FINALLY         	88 
 | |
| #define POP_EXCEPT          	89 
 | |
| #define HAVE_ARGUMENT       	90 
 | |
| #define STORE_NAME          	90 
 | |
| #define DELETE_NAME         	91 
 | |
| #define UNPACK_SEQUENCE     	92 
 | |
| #define FOR_ITER            	93 
 | |
| #define UNPACK_EX           	94 
 | |
| #define STORE_ATTR          	95 
 | |
| #define DELETE_ATTR         	96 
 | |
| #define STORE_GLOBAL        	97 
 | |
| #define DELETE_GLOBAL       	98 
 | |
| #define LOAD_CONST          	100
 | |
| #define LOAD_NAME           	101
 | |
| #define BUILD_TUPLE         	102
 | |
| #define BUILD_LIST          	103
 | |
| #define BUILD_SET           	104
 | |
| #define BUILD_MAP           	105
 | |
| #define LOAD_ATTR           	106
 | |
| #define COMPARE_OP          	107
 | |
| #define IMPORT_NAME         	108
 | |
| #define IMPORT_FROM         	109
 | |
| #define JUMP_FORWARD        	110
 | |
| #define JUMP_IF_FALSE_OR_POP	111
 | |
| #define JUMP_IF_TRUE_OR_POP 	112
 | |
| #define JUMP_ABSOLUTE       	113
 | |
| #define POP_JUMP_IF_FALSE   	114
 | |
| #define POP_JUMP_IF_TRUE    	115
 | |
| #define LOAD_GLOBAL         	116
 | |
| #define CONTINUE_LOOP       	119
 | |
| #define SETUP_LOOP          	120
 | |
| #define SETUP_EXCEPT        	121
 | |
| #define SETUP_FINALLY       	122
 | |
| #define LOAD_FAST           	124
 | |
| #define STORE_FAST          	125
 | |
| #define DELETE_FAST         	126
 | |
| #define RAISE_VARARGS       	130
 | |
| #define CALL_FUNCTION       	131
 | |
| #define MAKE_FUNCTION       	132
 | |
| #define BUILD_SLICE         	133
 | |
| #define MAKE_CLOSURE        	134
 | |
| #define LOAD_CLOSURE        	135
 | |
| #define LOAD_DEREF          	136
 | |
| #define STORE_DEREF         	137
 | |
| #define DELETE_DEREF        	138
 | |
| #define CALL_FUNCTION_VAR   	140
 | |
| #define CALL_FUNCTION_KW    	141
 | |
| #define CALL_FUNCTION_VAR_KW	142
 | |
| #define SETUP_WITH          	143
 | |
| #define EXTENDED_ARG        	144
 | |
| #define LIST_APPEND         	145
 | |
| #define SET_ADD             	146
 | |
| #define MAP_ADD             	147
 | |
| #define LOAD_CLASSDEREF     	148
 | |
| 
 | |
| /* EXCEPT_HANDLER is a special, implicit block type which is created when
 | |
|    entering an except handler. It is not an opcode but we define it here
 | |
|    as we want it to be available to both frameobject.c and ceval.c, while
 | |
|    remaining private.*/
 | |
| #define EXCEPT_HANDLER 257
 | |
| 
 | |
| 
 | |
| enum cmp_op {PyCmp_LT=Py_LT, PyCmp_LE=Py_LE, PyCmp_EQ=Py_EQ, PyCmp_NE=Py_NE,
 | |
|                 PyCmp_GT=Py_GT, PyCmp_GE=Py_GE, PyCmp_IN, PyCmp_NOT_IN,
 | |
|                 PyCmp_IS, PyCmp_IS_NOT, PyCmp_EXC_MATCH, PyCmp_BAD};
 | |
| 
 | |
| #define HAS_ARG(op) ((op) >= HAVE_ARGUMENT)
 | |
| 
 | |
| #ifdef __cplusplus
 | |
| }
 | |
| #endif
 | |
| #endif /* !Py_OPCODE_H */
 | 
