mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 21:51:50 +00:00 
			
		
		
		
	bpo-45829: Specialize BINARY_SUBSCR for __getitem__ implemented in Python. (GH-29592)
This commit is contained in:
		
							parent
							
								
									5275e59c0c
								
							
						
					
					
						commit
						21fa7a3e8f
					
				
					 7 changed files with 145 additions and 89 deletions
				
			
		
							
								
								
									
										16
									
								
								Python/opcode_targets.h
									
										
									
										generated
									
									
									
								
							
							
						
						
									
										16
									
								
								Python/opcode_targets.h
									
										
									
										generated
									
									
									
								
							|  | @ -21,22 +21,23 @@ static void *opcode_targets[256] = { | |||
|     &&TARGET_BINARY_OP_SUBTRACT_INT, | ||||
|     &&TARGET_BINARY_OP_SUBTRACT_FLOAT, | ||||
|     &&TARGET_BINARY_SUBSCR_ADAPTIVE, | ||||
|     &&TARGET_BINARY_SUBSCR_GETITEM, | ||||
|     &&TARGET_BINARY_SUBSCR_LIST_INT, | ||||
|     &&TARGET_BINARY_SUBSCR_TUPLE_INT, | ||||
|     &&TARGET_BINARY_SUBSCR_DICT, | ||||
|     &&TARGET_BINARY_SUBSCR, | ||||
|     &&TARGET_BINARY_SUBSCR_DICT, | ||||
|     &&TARGET_CALL_FUNCTION_ADAPTIVE, | ||||
|     &&TARGET_CALL_FUNCTION_BUILTIN_O, | ||||
|     &&TARGET_CALL_FUNCTION_BUILTIN_FAST, | ||||
|     &&TARGET_CALL_FUNCTION_LEN, | ||||
|     &&TARGET_GET_LEN, | ||||
|     &&TARGET_MATCH_MAPPING, | ||||
|     &&TARGET_MATCH_SEQUENCE, | ||||
|     &&TARGET_MATCH_KEYS, | ||||
|     &&TARGET_CALL_FUNCTION_ISINSTANCE, | ||||
|     &&TARGET_CALL_FUNCTION_LEN, | ||||
|     &&TARGET_PUSH_EXC_INFO, | ||||
|     &&TARGET_CALL_FUNCTION_PY_SIMPLE, | ||||
|     &&TARGET_CALL_FUNCTION_ISINSTANCE, | ||||
|     &&TARGET_POP_EXCEPT_AND_RERAISE, | ||||
|     &&TARGET_CALL_FUNCTION_PY_SIMPLE, | ||||
|     &&TARGET_JUMP_ABSOLUTE_QUICK, | ||||
|     &&TARGET_LOAD_ATTR_ADAPTIVE, | ||||
|     &&TARGET_LOAD_ATTR_INSTANCE_VALUE, | ||||
|  | @ -47,26 +48,25 @@ static void *opcode_targets[256] = { | |||
|     &&TARGET_LOAD_GLOBAL_MODULE, | ||||
|     &&TARGET_LOAD_GLOBAL_BUILTIN, | ||||
|     &&TARGET_LOAD_METHOD_ADAPTIVE, | ||||
|     &&TARGET_LOAD_METHOD_CACHED, | ||||
|     &&TARGET_WITH_EXCEPT_START, | ||||
|     &&TARGET_GET_AITER, | ||||
|     &&TARGET_GET_ANEXT, | ||||
|     &&TARGET_BEFORE_ASYNC_WITH, | ||||
|     &&TARGET_BEFORE_WITH, | ||||
|     &&TARGET_END_ASYNC_FOR, | ||||
|     &&TARGET_LOAD_METHOD_CACHED, | ||||
|     &&TARGET_LOAD_METHOD_CLASS, | ||||
|     &&TARGET_LOAD_METHOD_MODULE, | ||||
|     &&TARGET_LOAD_METHOD_NO_DICT, | ||||
|     &&TARGET_STORE_ATTR_ADAPTIVE, | ||||
|     &&TARGET_STORE_ATTR_INSTANCE_VALUE, | ||||
|     &&TARGET_STORE_SUBSCR, | ||||
|     &&TARGET_DELETE_SUBSCR, | ||||
|     &&TARGET_STORE_ATTR_INSTANCE_VALUE, | ||||
|     &&TARGET_STORE_ATTR_SLOT, | ||||
|     &&TARGET_STORE_ATTR_WITH_HINT, | ||||
|     &&TARGET_LOAD_FAST__LOAD_FAST, | ||||
|     &&TARGET_STORE_FAST__LOAD_FAST, | ||||
|     &&TARGET_LOAD_FAST__LOAD_CONST, | ||||
|     &&TARGET_LOAD_CONST__LOAD_FAST, | ||||
|     &&TARGET_GET_ITER, | ||||
|     &&TARGET_GET_YIELD_FROM_ITER, | ||||
|     &&TARGET_PRINT_EXPR, | ||||
|  | @ -74,13 +74,13 @@ static void *opcode_targets[256] = { | |||
|     &&TARGET_YIELD_FROM, | ||||
|     &&TARGET_GET_AWAITABLE, | ||||
|     &&TARGET_LOAD_ASSERTION_ERROR, | ||||
|     &&TARGET_LOAD_CONST__LOAD_FAST, | ||||
|     &&TARGET_STORE_FAST__STORE_FAST, | ||||
|     &&_unknown_opcode, | ||||
|     &&_unknown_opcode, | ||||
|     &&_unknown_opcode, | ||||
|     &&_unknown_opcode, | ||||
|     &&_unknown_opcode, | ||||
|     &&_unknown_opcode, | ||||
|     &&TARGET_LIST_TO_TUPLE, | ||||
|     &&TARGET_RETURN_VALUE, | ||||
|     &&TARGET_IMPORT_STAR, | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Mark Shannon
						Mark Shannon